                                                                              ,;%@@@S###S@@@@@@@#%?:                                                  
                                                                            ,+S@@@@@@@@@@@@@@@@@@@@@%?+                                               
                                                                          +%#@@@@@@@@@@@@@@@@@@@@@@@@@@%*+                                            
                                                                         ,+#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+:,                                          
  ,,                                                                   ,,:*#@@@@@@@@@@@@@@@@@@@@@@@@@@@@S%;                                           
,;S*                                                                 +S##S%#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%,                                           
S@@%,                                                               *@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#+,                                            
@@@%,                                                              ,S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+          ,,::;*??;,                         
@@@@S;                                                              :#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:::;;++*******+%@@@S;                        
@@@@@@%:                                                             +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%???****++++;;;;:::,,                        
@@@@@@@@?;:,                                                          :+?%S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+;;:::,,,,                                   
@@@@@@@@@@@@%:                                                     ,+?S##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#;                                             
@@@@@@@@@@@*:                         ,,,                ,,::;;+**?S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%,                                              
@@@@@@@@@@;                      ,:;*%SS#SS%?+,::;;+**?%%SSSSSSS%%??S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*                                                
@@@@@@@@@@*                    ,;*?##@@@@@@@@@###SSSS%%??**++;::,, ,+S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*;:,                                             
@@@@@@@@@@#:                   :;*S##@@@@@@@@@@@@?+::,,,        ,:+?#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;                                             
@@@@@@@@@@@@*:                    ,,:+*?S@@@@@@@@@@?         ,*%#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+                                             
@@@@@@@@@@@@@#?,                       ,+S@@@@@@@@@@?,      ,?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?                                             
@@@@@@@@@@@@@S?;,                       ,+S@@@@@@@@@@S:  ,:*S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+                                             
@@@@@@@@@#@#*;:,                          ,;%@@@@@@@@@@*+%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*,                                             
@@@@@@@@@@@@%:                              ,+S@@@@@@@@@@@@@@@@@@@@#%%%?*S@@@@@@@@@@@@@@@@@@@@@@@@@#?+:                                               
@@@@@@@@@@@?:,                                :?#@@@@@@@@@@@@@@@@%;,   ,%@@@@@@@@@@@@@@@@@@@@@@@@@%,                                                  
@@@@@@@@@S;                                    ,+S@@@@@@@@@@@#%+,      ;@@@@@@@@@@@@@@@@@@@@@@@@@#,                                                   
@@@@@@@S:                                        :*S#@@@#S%*;,         *@@@@@@@@@@@@@@@@@@@@@@@@@%                                                    
@@@@@@#,                                            ,,,,,             ,%@@@@@@@@@@@@@@@@@@@@@@@@@;                                                    
@@@@@@%                                                               ,S@@@@@@@@@@@@@@@@@@@@@@@@?                                                     
@@@@@@@;                                                              ;#@@@@@@@@@@@@@@@@@@@@@@@@+                                                     
@@@@@@@#;                                                             *@@@@@@@@@@@@@@@@@@@@@@@@@;                                                     
@@@@@@@@@;                                                           ,?@@@@@@@@@@@@@@@@@@@@@@@*:,                                                     
@@@@@@@@#S:                                                           ;?#@@@@@@@@@@@@@@@@@@@@@:                                                       
@@@@@@@?:                                                               *@@@@@@@@@@@@@@@@@@@@@S+,                                                     
@@@@@@@@*,                                                             ,%@@@@@@@@@@@@@@@@@@@@@@@#*,                                                   
@@@@@@@@@S:                                                           :S@@@@@@@@@@@@@@@@@@@@@@@@@@S:                                                  
@@@@@@@@@@@;                                                         :S@@@@@@@@@@@@@@@@@@@@@@@@@@@@#;                                                 
@@@@@@@@@@@#,                                                        *@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;                                                
@@@@@@@@@@@@+                                                       ,S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;                                               
@@@@@@@@@@@@S,                                                      ;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+                                              
@@@@@@@@@@@@@;                                                      ?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?,                                            
@@@@@@@@@@@@@S,                                                    ,S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%,                                           
@@@@@@@@@@@@@@*                                                    ;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#;                                          
@@@@@@@@@@@@@@@;                                                   *@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?,                                        
@@@@@@@@@@@@@@@#,                                                 ,S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#+,                                      
@@@@@@@@@@@@@@@@%                                                 ;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#*,                                    
@@@@@@@@@@@@@@@@@;                                                ?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?:                                  
@@@@@@@@@@@@@@@@@%                                               ,#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*,                                