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