@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S                                                                                                   
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S                                                                                                   
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#,                                                                                                  
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#,                                                                                                  
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#,                                                                                                  
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S                                                                                                   
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S                                                                                                   
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S                                                                                                   
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@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@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@;                                                                 