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