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