#############&&$$$$&=%=+;:--~~,,,,......''''''''''````''''.:=&&&&&&%%%%%??=?=???
##########$$&$$$$$$%+*!;:---~~,,,,.......'''''''''````''''',!%&&&&&%=====???==?+
######$$&&$$$$#$$&%?!;;::---~~~,,,,........''''''''''`'''''.:=&&%&&&%==??+???+++
#####$&&$$$$$$$$$&?*!;;;::--~~~~,,,,,,,..........''''''''''',!=%&&&&%%==?++*;!*!
#####$$$##$$$#$$&=?**!!;;::---~~~~~,,,,,,,,,,..........'''''.:?&&&&&&%%==?*:;*!!
####@######$#$$$%?+++**!;;::-----~~~~~~~~~~~~~~-::;;:-,..''''-+%&&&&&%%?**!;;!!*
###@@@@@###$$$$%=??+++**!;;::::-------:::::::::*===?+*;~,.'''.;=%&&&&%?*!;;;;**+
####@@@@##$$##$%==??+++**!;;::::::;;!!!**!!***+%&&$&%=+!:,....-+%%%%%=*;;:;;!+++
###@@@@@##$$##$%%==?+++**!!;;;;;;!!*+?===?+++?=%&$$$$&%?*;~,..:+%%%%=+;:::;;!*++
####@@@###$###$&%%=??++***!!;!!!**+=%%%%=?+*!!+=&$###$&=?*:,.,;?%%%%?!!!;;;;;*++
####@@@#######$&%%%=??+++**!!**++=&&&%=?+*!:--;*?&###$$==?!-,~*=%%%%?*!*;;;;!*+?
####@@@#######$&&%%=??+++++*+++?%$$&%=?+!;-~,~~:*=&###$?==+;~-*=%%%=?!-::---:;*+
####@@#@####@#$$&%%==?????++??=&#$&%=?*!:-~,,,~-;+%$##&?==?*:;+==%=?*:--~~----;!
####@@##$#####$$&&%%===?????%&$##&&%%%?+!;---~--;*=$#$%?==?+**?====+*!:-~~~~-::;
###$##@#$###@#$$$&&%%%=====%$$##$###$$$$$&=+;::;+%$##$%===??++?======+*----::;;;
###$#######@@#$$$&&&%%===%&$$#####$&&&&$$$$%*;;*%###$$%===??????====??!:---;;;::
#$$$#######@@#$$$&&&%%%%&$$##########&%&$$$&?;;?$###$$%=%=????=?=%==?+;;:~~:::--
#$$$#######@##$$$&&&&&&&$###@####@@@@#&%$$&&?::=$###$$&=%=??=?===?===?!;;:----:;
$$$$#@#####@##$$$&&&&$$####@@#$$$$###&?*==?=?--?&$##$$&%%%????=%=====%?+?+;;::;*
$$$$#@#####@@##$$$$$$######@#$&%%%%&$&=?*;!++;~*=&##$$$%%%=????=%%%%%%%%%=+*!;;*
$$$$#@####@@@##$$$$$####$$#@@$&%?+*!;;-~~~:*+!,;?%$#$$$&%%%=????=%%%%%%%%%=++!*?
$$$$#@####@@@###$###@#$$$$#@@#$&=+!:~,,.,~:*?*--+=&$$$$$&=%%?????==%%%%%%==?**?*
$$$$$@####@########@#$&&$$$@@##$%=+!:~,,,~;?%+;-!?%$##$&&%==%=?????=%%%%===?+?*;
$$$$$@##############$$&&$&$@@###$&=+*;-~~-;=%%+-:+=&$$%??=======?????=%%%===+:::
$$$$$@#####$###@#####$&$$$&#@@###$&=?*;:--!%&$&??*?%%=%?==?=%=====??==%%%===*:::
$$$$$######$###@@@##$&&$$$$&#@####$&=?*!:-!&&$%?+!+?****?&%&&&%=====%%%%====+*+;
$$$$$#####$$#######$$&$$$$$&&#####$$%=+*;:;*+*;:;;!!***!+$?%&&&%%%==%&&&%==??++*
$$$$$#####$$###@##$$$&#&&$$&&&#####$&%?+*!!!**!;;;;;;!!!=$%+%&%%%&%%%%&&%=?=+*+?
$$$$$#####$$#@@###$$&$#$&&$&%%&####$$&=?++?%%%%*;::::;;=$$=*+&%%%%%%&&&&&=?+?+?=
$$$$$####$$##@###$$$&$#$$&$&&%%&$$$$$&%==%$$$%?!::--:***&$&*~?&%%%%&&$$$&=+??+?%
&&&&$$###$$#@#@##$#$$##$$%&&%&%%$$$$$&%%%$$&%?*!;;:::+=:~*%=;;%&&&&&&&&$&=+?=?==
=+!!*++=%%$#@@#####$###$&&$&&%%%&$$$$&&%%&&%+!!***!;;+$=;~;?=%%&%%&&&&&&$=?=%%%%
*;:---:;*?%$#@####$$###$%&$$&%%%&##$$$&&%&##$%%%&%?++%#$%!~-%$$$%==?===&&%=%%%%%
!;-~~~-:!+=$######$###$&$#$$&%=%&###$$$&%%&$#$$$&%$####$#%+:+##$##$$%==????=%%%%
!:-~~--:!+=&######$##$$$###$$%=%&#@@##$$&%==?++?=%#@@#$$$$%??%*+$#####$$&%==??+?
!;:----:!+=&######$#$$#$###$$%=%&#@@@@##$&%%=?===+++!;;*+&$&%%;-=&&&$######$$?:!
*!::--:;!+=&########$##$##$$$===$#@@@@@###$$&&$$$?!;;::~,,-!*?*~?$$&&$&&$####%??
?*!;;:;;*+=$#######$#####$$$&===$##@@@@@@@@@@@@@@###$&&%?!:-:;*-!$$$$$&&&&&&$$&%
=?+*!!!!+?%$##########$#$&$$==%%####@@#@@@@@@@@@@@@@@##$$$&=+;:;-&####$&&&&&&&&&
&%?++**+?=%$###########$&$$&%%%$####@@#@@@@@@@@@@@@@@##$@@@$%*::-*####$&&&&&&&&&
$&%=????=%&$##@@@#####$&$$$&&&$##$###@@@@@@@@@@@@@@#%*!*?==&&=+*;~%###$&&&&&&&&&
$$&%%===%&$##@@@@####$$&$$&&&$##$$$###@@@@@@@@@@$&=?+*;-~--~*&%+-,;$##$&&&&&&&&&
$$$$&&&&&$##@@@@@#####&$$$$$$##$$$&$##@@@@@@@@@@@$&&&&&=?*!-,-+*~,-$##&&%&&&&&&&
$$$$$$$###@@@@@@@@####$$$$$$###$$$$&$##@@@@@@@@@@@@@#$&$&$&?;~,--,,?#$&%%&&&&&&&
&&&&$$#@@@@@@@@@@@#######$$##$$$$$$&$###@@@@@@@@@@@@#$&$$$#$=*-,,,,?$$%%%%&&&&&&
&&&&$$&&&$##@@@@@@##########$$&&$&$&&$#@@@@@@@@@@@@@#$$$$$###&*-,,:$&&%%&%&&&&&&
&&&&=????=&$@@@@@@#########$$&%%$&&#&$##@@@@@@@@@@@@#$$$$####$%!--+&&&&%&&&&&&&&
&&&=?+***+=%$#@@@@@@#######$$=&%&&%&$$$#@@@@@@@@@@@@#$$$$#####%+!;%%&%&&&&&&&&&&
$$%?+*!;;!*?%$#@@@@@######$$$=&$&&&%$#$###@@@@@@@@@@##$$$####$%+!!&&&&&&&&&&&&&&
#&%?+*;:-:;*=&$@@@@@######$$&=%$$&&&$####@@@@@@@@@@@@#$$$###$&=*;+&%%&&%%%%&&&&&
#&%=+*;:--:!+%$#@@@@@######$$%=###$$$$####@@@@@@@@@@@#$$$###&%?*;?==&=++**?=%%&&
#$%=?*;:--:;*=&$#@@@@@#####$$%=#@@##$#####@@@@@@@@@@@#$$$$$$%=+!;%%%+-~~~~-;+?%&
@$&=?+!;:-:;!?%$#####@#####$$&%&#@######@#@@@@@@@@@@@##$$$$&%=+!*%=*:-~~,,.,~:*%
#$&%?+*;:::;!+=&$&&$$####$#$$$&%##@######@@#@@@@@@@@@@##$$&%%?+!?%=?++?+-,.'.,:?
%%=?+*!;::::;!+=??=%%&$###$#$$$$&#########@#@@@@@@@@@@##$&%%=?+*$$$$&&&+~.'''.,;
?+*!;:-------::;;;;;**+==%&$$$$#$$#######@@#@@@@@@###@@#$&%=??+*####$$=*,.''''.~
*!;::--~~~~~~~~~~~~~~~--:;*?%&$$$&$$#####@@#@@@@##$$#@@#$%=?+*!:$###$&+-,.''''.~
+*!;:---~~~~~,,,,,,,,,,,,~-;+=&&&$&&$$$$@@@#@@@#$&%%$@@@$%=?*!:~!###$%!,.'''''.~
?+**!;::--~~~~,,,,,,,,..,,,~:!=&%$$&&&&&#@@@@@@#&===%#@@#&%?+!:~~=##&*~..'''''.,
%=??+*!!;::---~~~~~~,,,,,,,,~-;?%%&$&&$&&&##@@#$%?++?&#@@$%=?*;-~;$&!~..'''''..-
$&%==?+**!!;;;::------~~~~~---:;?%%&$$&$$$$#@@#$%?*!!*%#@#&=?+!;--!:,..'''''..,;
$$&&%%%=?++++++*****!*!!!***++***?%%&$#$$####@#&=+!:::;?&&%?*!;:-~,,..'......,:?
@###$$&&&&%&&$$&$$&$&$$$&$$&$$$$$&&$&&######@@#$%+!:-~~----~~,,,,..........,,:+&
@@@@@####$##############$$########$##$$#####@@##&=*;-~,,,,,,,,..........,,~-;?%&
@@@@@@@@#@#@@############$$$###$##$####$###@@@@#$%?!:-~~~,,,,,,,,,,,,,,~~-!?%&&$
@@@@@@@@@@@@@##############$###$##$$$#####@@@@@@#$%?*;::---~~~~----~--:;*=&&&$$$