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