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