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