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