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