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