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