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