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