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