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