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