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