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