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