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