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