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