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