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