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