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