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