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