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