@@@@@@@@@@@@@@@@@@@@@@##@@@@@@@@@@@?,                                                                         :%@@@@@@@@SSS*,;%S#@@@@@@@@@#@@@#?*%?*?#
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?:                                                                         ?@@@@@@@@#S?::%@@S@@#S%S#####%S#S?;,++?S
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#*;,                                                                   ;, ,%S#@S@@@@%+:*#@%?%SSS##@@@@@#S*??%;::;*?
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S;,                                                                  ,: :%@#*%*#S%*;:?S??%%#@@@@@@@@@@#S?+**:;:;:?
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?,                                                                    ,  %#?++*;;,::++;+?%S#@@@@@@@@@@@#S?+:,,;;*;*
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*                                                                       ,+**;,::,,,,:;;;%SS#@@@@@@@@@@@#%?+,,+?%????
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#+,                                                                     ,+*::,  ,:;;:;;;%S#@@@@@@@@@@@@S?;:::**S#%%SS
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S#@*,                                                                    ,++;:   :;::++*+%@@@@@@@@@@@@#S*;;+*?+:+??***?
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?,                                                                    ,%?;,   ,;+*+**S*+S###@@@S?*+;;;;+***?%%S%*;;*?
@@@@@@@%%@@@@@@@@@@@@@@@@@@@@@@@@?;,                                                               ,,   ;:, ,*%SS#S%%%;,?SSS%*;::+*?%SSSS##@###SSS%*;?
@@@@@@@SS@@@@@@@@@@@@@@@@@@@@@@@@@%;                                                           ,;;::,      ,%@@@@@S%%*,*?+:,,;?#@?+@@@@@@@@@@#####S??*
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#?;,                                                          ,?*;,,      +@@@@@#%%?, ::;*%##@@#S%@@@@@@@@@@@@@##SSS%
#S#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#?*:,                                                          ,*?+,,,     %@@@@S*;, :?S@@@@@@##@@@@@@@@@@@@@@@@?S%?**
#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#?;,                                                            :;*+:,:,    :%S*:  ,;%@@@@@@@@@@@@@@@@@@@#S%%??*+;+?+,;
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#?+,                                                             ,:+*+:,,,       ,*S@@@@@@@@@@@@@@@@@#%?+;;;;::::,,,:;:;
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S;                                                                 ,:::,:,      *@@@@@@#S@@@@@@#%?++:;%%%%?+;:+**;;:,,;
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*,                                                                   ,          :+****?%?S%*;:,,:**:*?****+;+*+;;:,, ;
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*,                                                                                 ,,,::, ,;++;?%?%%%SSS#SSS**+;,:,  :
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S?:                                                                                       ,*?*%#?@@@@@@@@@@#S%?;:,,  ,+S
@@@@@@@@@@@@@@@@@@@@@@@@@@@#%+,                                                                                         ,;?%?*;*###@@@@@S?+:     :*#@@
@@@@@@@@@@@@@@@@@@@@@@@@#S*;,                                                                                           :: ,,,  ,:*SS?+:,,,::  :%@@@@@
@@@@@@@@@@@@@@@@@@@@@@@#?+;,                                                                                            ,,         ,,,:;+++:,:?@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@#?+:,                                                                                                        ;%%?+: ,%@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@#S*;,                                                                                                        ,;?*+:  :S@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@S*+:                                                                                                   ,,,::,++:,  ,*#@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@#?+;,                                                                                                 ,;;;;,  ,:;*%%@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@#S%*;:,                                                                                              ,::, ,+%#@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@S?+;,                                                                                            ,, ,;;:+S#@@#%#SS##@@@@#@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@#%?+;,                                                                       ,,                   ,+%SS%*;;++*;++**+?%?%S###@
@@@@@@@@@@@@@@@@@@@@@@@@@@@S?+;,                                                                      :;,                   ,;*%%%%%?+;*%SS#S#@@@@###@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@#%*;:,                                                               ,:::,                         +##SSSSS?+??S#@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S?*;:,                                                            ;S@#S?;,,                   ;?S#@@##S#S#SSS###@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S%*+:,,,                                                       *@@@@@@S?+,                 :@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##SS%???????*+;:,,           ,,,,            ,::;;+++++***S@@@@@@@#?+,                +S@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S?*+;;;;;+++++?##S%?**+;;;+*?%S@@@@@@@@@@@@@@@@@@@@@S?+                ,#@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S?+               ,*@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S?:               ,#@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#?:                 *@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%:                  ,%#@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S+                  ,;;;#@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#?:                  ,#@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#%+,                   +@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@S?:                     %@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#%*,                     :@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#%;,                      %@@@@@@@@@@@@@@@@@@@@@@@@@@