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