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