@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%:                  
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*                   
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=                   
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@-                   
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@-                   
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%=.                   
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%+:                      
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#=.                         
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+....                            
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*                                 
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%@@@@@@@@@@@@@@@@@@@@@@@@+                                 
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%#*  *@@@@@@@@@@@@@@@@@@@@@@@*                                 
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*+++.  *@@@@@@@@@@@@@@@@@@@@@@@=:-+=.                           
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%*+=-   %@@@@@@@@@@@@@@@@@@@@@@@@@@@-                           
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%*=-:  :@@@@@@@@@@@@@@@@@@@@@@@@@@@%%%+.                       
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%*=:   -@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%-                      
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%*-    +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*+**:                 
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%+:    *@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*.                
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#=-:..     %@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#:                
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*:            =@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%-                
@@@@@@@@@@@@@@@@@@@@@@@@@@@@#-                #@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=                
@@@@@@@@@@@@@@@@@@@@@@@@@@@#.                 -@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+                
@@@@@@@@@@@@@@@@@@@@@@@@@@@=                  .@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*.         .     
@@@@@@@@@@@@@@@@@@@@@@@@@@@*--.                %@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*.         #+:   
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*               :@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#:         #@%=  
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+              #@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#:         =@%+. 
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=             :#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#:         :@%+. 
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@-              -#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*.          @%=. 
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@-               -%@@@@@@@@@@@@@@@@@@@@@@@@@@@+.          #%=  
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+                =@@@@@@@@@@@@@@@@@@@@@@@%+:            .:   
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%=               .+@@@@@@@@@@@@@@@@@@@%=.                   
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%-               :*@@@@@@@@@@@@@%*=:                      
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#:               -#*+--:-=*+-.                          
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*.                                                    
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@=                                                   
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#:                                                 
