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