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