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