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