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