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