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