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