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