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