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