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