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