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