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