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