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