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