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