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