@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#%*+;;;;;;++;::::::;;*?S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?:,                       :?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#;                            :SS*++?S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;                              ,,     :*#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S,                                       ,*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#,                                         %@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*                                         :#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?,                                        ,;S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S*:                                 *;      :#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?::,,::                            ,%@*      :#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@SS;                            ,%#+       ;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#%*;:                        ,;,*#:        %@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#?   ,                 ,?#@S@#:,       +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#,: *?:          :+:,,?@@@@@@;,       :@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*%;#@@?        ;@#;*#@@@@@@@S:,      *@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S#%*;        :+++S#@@@@@@@@%     :;@@@@@@@@@@@@@@@@@@@@@@@@@#%*;,,+S@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@#?:  ,;*?S#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#?+:,                ,:+?#@@@@@*;, :?#@@@@@@@@@@@@@@@@@@@@S%*;,  ,;*+, :*#@@@@@@@@@@@@@@
@@@@@@@@@@@@S+, :?%*;:  ,:;+?S#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#*,                        ,*@@@@@#S?S@@@@@@@@@@@@@@@@@#%*;:,   +%S@@@@#+  ,;?#@@@@@@@@@@@
@@@@@@@@@S*:   *@@@@@@#S;  ,::::+?S@@@@@@@@@@@@@@@@@@@@@@@@?,                            :%@@@@@@@@@@@@@@@@@@@@S?+:,:+%?:   ;S@@@@@%:      :*S@@@@@@@@
@@@@@@S*:   :, ,*S@@@@@+,   ;%#S*;,,;+?%S#####SS%?*+;;*?%?:                                ++;:,,,:;++*****+;:, ,+%#@@#:     ,%@@@?      ::,  ,;*S#@@@
@@S?;,   ;?%:     +#@@%      ,@@@@@S:   :;;;;;;:   ,;;:,                                   ,;+*+;,   +??????:   :#@@@@@;     ,S@@@+      :@#%+:   ,:+?
;,   ,+%#@@S,     ,#@@@?,    +@@@@@?,   :?@@@@@S,  ,;*S?,                                 ,%@@*:,    %@@@@#;     :#@@@@#,    +@@@@@;     ;@@@@;   ,:;:
+?+  :*S@@@@S:    *@@@@@%,  ,S@@@@@:      S@@@@S,     ,*,                                  ;%;      ,#@@@@S      ,S@@@@@%   ,#@@@@@@+    *@@@?     ,;#
@%,     ;@@@@#;  ,#@@@@@@#: ;@@@@@@S;     S@@@@@?:     ,+,                                 *+     :*#@@@@@@:    :S@@@@@@@+  *@@@@@@@@*   %@@@%,      %
@%,     :@@@@@@*,+@@@@@@@@@*S@@@@@@@@?,   S@@@@@@@S+,   ,                                      ,;%@@@@@@@@@;   :#@@@@@@@@#;:#@@@@@@@@@?, S@@@@#+     *
@@#+    *@@@@@@@#@@@@@@@@@@@@@@@@@@@@@#+  #@@@@@@@@@#?:,                                     :*#@@@@@@@@@@@+  ;#@@@@@@@@@@@@@@@@@@@@@@@S?@@@@@@@%:   ;
@@@@%:  S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S*@@@@@@@@@@@@@:                                    :#@@@@@@@@@@@@@? ;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#+, ,
@@@@@#*+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#?,     ;,                              %@@@@@@@@@@@@@@S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%:,
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S*:,      *@?,                      :,     :@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S*:       ,;%@@@,                      :?      *@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S*:       ,;?#@@@@%                        ?;      *@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#SSSSS#@@S*:      ,:*%#@@@@@@@%                       ,%S,     ,S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@++;    ,::     ,:+%#@@@@@@@@@@S:                        ,S?      ;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@##@@@@@#S%?*:        ,:+?#@@@@@@@@@@@@@S,                          ,?*      %@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@#?+;:::,,      ,,;+*%S#@@@@@@@@@@@@@@@@S,                             ?+     ;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@#S%?*++++*?%#@@@@@@@@@@@@@@@@@@@@@@S,                              ,%+     %@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;                                ,S;    ;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?                                  +#:    %@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S,                                   %%    ;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#:                                    ,;     %@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#:                                            ;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@