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