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