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