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