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