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