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