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