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