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