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