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