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