@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@%;*#@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@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;                                         *@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S;                                         ;@@@@@@@@@
@@@@@@@@@@@@%+:                                          :#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?,                                    ,,   ,S@@@@@@@@
@@@@@@@@@@@S,                                            ,S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S:                                     ;+ ,,#@@@@@@@@
@@@@@@@@@@#,                                             :@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#,                                 ,,,,,S%%#@@@@@@@@@
@@@@@@@@@@@%%SS*;::::,,                                  :@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*+;,                           :*S##@@#@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@#S:                             ,::+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#*::,::;;       ,     ,;;;*S@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@S;::::,                      ;S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+   ,*S#?    :@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#:    :;;:    +####S%%%S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#,   %@@@+    ?@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%    :#@@*   :@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?   ;#@@@:   :@@@@@@@@@@@@@@@@@@@@@@@@@