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