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