                          ,;?S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#%*;:,                                                        
                      ,;*S#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#%?+:,                                                   
                   :+%#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#S?*;:,                                             
               ,:*S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#%?+:,                                        
            ,;?#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#S%*+;,                                  
         ,;?#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%                                   
      ,+%#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+                                  
   ,+%#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?,                                
,+%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S:                               
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*                              
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%,                            
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#;                           
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*                          
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?,                        
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S,                       
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##SSS%%%??**+++++?%S#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S:                      
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S*:,,,,,,            ,,,:+**%S#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S,                     
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#SS?;,                            ,:;+%#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%,                    
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%??*:,                                  ,;?S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+                    
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%:;:                                        :+%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S,                   
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S,                                             ,;?#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;                   
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#?:                                                ,+S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*                   
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#??S#,                                                 +#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?                   
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*%@@@;                                                 :S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?                   
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@??@@S,                                                  *@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+                   
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#+?S;                                                   ,S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#,                   
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%:;:,                                                     ;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*                    
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%;:                                                         ?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%,                    
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#?+:,                                                      :*S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S,                     
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##SSS%+,                                                        *@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S,                      
@@@@@@@@@@@@@@@@@@@@@@@@@@@@?+;;;:::,                                                       ,?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%,                       
@@@@@@@@@@@@@@@@@@@@@@@@@@S;,                                                               :@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+                         
@@@@@@@@@@@@@@@@@##@@@@@@%:                               ;?:+%?**;:,            ,,:;++;::;?#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%:                          
@@@@@@@@@@@@@@@#SSSSSSSSS?,                             ,?@@#*%#@@@@@S%+:    ,,;?%%%%%%%S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#+                            
@@@@@@@@@@@@##SSSSSSSSSSS?                             :S@@@@@#%%%%%%%SS%?*?S###SSS##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#*,                             
@@@@@@@@@@#SSSSSSSSSSSSSS?,                           ;#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#*,                               
@@@@@@@@@@#SSSSSSSSSSSSSSS?                          +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#*,                                 
@@@@@@@@@@#SSSSSSSSSSSSSSS%,                       ,?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#*,                                   
@@@@@@@@@@#SSSSSSSSSSSSSSSS?:,,                   ;S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S+,                                     
@@@@@@@@@@#SSSSSSSSSSSSSSSSSS%S%+:              ;%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S;,                                       
@@@@@@@@@@@SSSSSSSSSSSSSSSSSSSSSS%:,:+?+:,,:;;*S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%;                                          
@@@@@@@@@@@@#SSSSSSSSSSSSSSSSSSSSSS%SSSSS%%SSS#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#?:                                            
@@@@@@@@@@@@@#SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#*:                                              
@@@@@@@@@@@@@@@#SSSSSSSSSSSSSSSSSSSSSSSSSSSSSSS#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S+,                                                
@@@@@@@@@@@@@@@@@#SSSSSSSSSSSSSSSSSSSSSSSSSSSSSS#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S+,                                                  