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