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