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