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