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