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