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