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