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