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