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