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