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