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