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