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