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