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