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