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