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