%S@@@####@#%+:                                                                                                                                        
@@@@@####@@%*:                                                                                                                                        
@@@@@@@@@@@S?;,                                                                                                                                       
@@@@@@@@@@@#%*:,                                                                                                                                      
@@@@@@@@@@@@#?+,                                                                                                                                      
@@@@@@@@@@@@@#%+:                                                                                                                                     
@@@@@@@@@@@@@@#%+:,,,                                                                                                                                 
@@@@@@@@@@@@@@@####SS%?+:,                                                                       ,,                                                   
@@@@@@@@@@@@@@S?*+**???*;,,                                                                 :;+?S@#SS#####SSS%?*+:,                                   
@@@@@@@@@@@@@@##S%%??*+;:,,                                                              :?S@@@@@@@@@@@@@@@@@@@@@@@S?+,                               
@@@@@@@@@@@@@@@@@@@@@S*;:,                                             ,,,,            ;S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#?:                             
@@@@@@@@@@@@@@@@#####%?+;,,                                          ,%#@@#%:        ;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+                      ;@@@@@:             ,;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:                      
@@@@@@@@@@@@@@@@@@@@@@@@@#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                     