@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#+:*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@##@@@@@@@@@@#%#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%#@@@@@@@@@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*;
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#SS#@@@@@@@@@@@@@@###@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@#
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@%++*#@@%;;:;:::;;;:,, ,:;*?%#@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+                     ,S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S+                       ,*%*%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?;,                             S@@@@@@@##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+                                ;S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#,                                 ?@@@@@@@@#S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#+,                                ,S@@@@#@%%@@@@@@@@@@S@S###@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@SS%??+,                                ,%#@@S*?#@##@@@@@@@@S*%S@@@#S#@@@@@###@@@@@@@@@@@@@@@#@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#%%%%S%*;,                                       ,;*?%SS@@@@@@@@@@@@%*%@?S#%%#SS##SSSS@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#?:                                                   ,%@#%@@#@@##@@@S**%%?**S#S??SS#@@@@@@@@@@@@@@@@@@@##@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#*;,                                                     +@@SS#%%S#@@@@?:?%%%SS####S@#@@@@##@@#@@@@@@@@@@@@#@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@?;;:,                                                       :%S%?;*%#@@@#???%#####S#%@S??%#S####@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@#;,                                                           ,:+::+?%S%*%**%S?##@@##**+**?+?%%SS#@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@S@@@@@@@@@@S:                                                             ,:;*SS?;:::+?%S#@@@@@@S;?:+S#@@#S###@@@@@#@S@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@#S@@@@@@@@@@%                                                             :+%@@S;,*??*##@@@@@@@@@+:?%SSSSSS@@@@@@@@#?#*@@@@@@@@@@@@#@@@@
@@@@@@@@@@@@@@@@@@@@S@@@@@#,                                                            ;%%*::*#@#??#@@@@#S%?***S###@@@#S@@@@@@@?@%+?@@@@@@@@@@@%%S@#@
@@@#@@@@@@@@@@@@@@@@@@@@@@S,                                                               :?#@@@%;%??*+*?**?%S%%??%%S?*S#####@@%*%:#@@@@##SSS%**%%%S#
@@@#@@@@@@@@@@@@@@@@@@@@@@%,                                                               ,;%@#%,;;;*%#@@@@@@@@@@@@#S?;?%%S#%%@@%:%#%%S#@#+**?+**?#@@
@@@@@@@@@@@@@@@@@@@@@@@@#S*:                                                                 ,;::+S@@@@@@@@@@@@@@#S%?****%%##@*?@+:%S+S##?;,:+?S#@@##@
@@@@@@@@@@@@@@@@@@@@@S?;,                                                                     ,;S@@@@@@@??S%S%%?**???*???S#@@@@%;,SSS;:::;*%*S?#SS##@@
@@@@@@@@@@@@@@@@@@@S:                                                                          ,%@S%%?+?%+;+++?SS??*?S#@@@@@##@S:;*: ,:+*%%%*%S##@@@@@
@@@@@@@@@@@@@@@@@@%:                                                                            :;:;;;+SS?**S??%##%*@@@@@@@%+%?: ,,::;;*;*+%S##@@@@@@@
@@@@@@@@@@@@@@@@@%,                                                                              ;#@#%+#@#%@@@@**?%S?*????;;,::::+??%%S@S?SSS##@@@@@@@
@@@@@@@@@@@@@@@@?,                                                                               :##S#%*SS@@@#%++?*+*%S%;;;+*%#@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@#:                                                                                ,%@@#S:+S%*;;;?%%%+++*?S#@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@*                                                                                 ,+%?*:,;*%#@@#?++?#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@S#@S:                                                                                   ;%++@@@#?;+?#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@#@@@@@@@@?,                                                                               ,:;%#:*%*;:+S@@@@@@@@@@@@@@@@@@@@@@@#%?+;:::;?@@@@@@
@@@@@@@@##@@@@@@@@S:                                                                             ,%#S?+:+*?S@@@@@@@@@@@@@@@@@@@@@@@@@#:     ,;?S@@@@@@
@@@@@@@@@@@@@@@@@S;,                                                                             :;:+?S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*:   ,+#@@@@@@@@
@@@@@@@@@@@@@@@@@;                                                                      ,:,      :?%%SSS##@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S%%#@@@@@@@@@@
@@@@#@@@@@@@@@@@@:     ,,  :;:,,                                               ,,,:;**+:::     ,;;?S#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S*;;S#
@@@@@@@@@@@@@@#%+:     ::  *@@@#SS?;,          ,:;:,,,,,,,           ,,,    ,+S@##@@@@@@#:     ?####@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@###@@
@@@@@@@@@@@@@%:            ?@@@@@@@@@%**??%*++%#@@@####@@#S?*+;;+?%SS####SSS#@@@@@@@@@@@S,     %@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@%:            ,%#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%      ;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@?,,*;        :#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S:      ,S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@*+S@;        ?@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%,        *@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@:       ,S@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#@#,         +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@#,       :@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#,         :@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@%        +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@S          ;@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@