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