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