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