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