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