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