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