!+=??+??%&&$&*;*++?=====%%&$$$##################################################
!*=%???===&&!!*??*=%%%%&$$####$#################################################
!*=*::;;;!?=!;!**?&&&$$#######$$###########################$#$#$&&&&$$$#$&$$####
;*:~::;!?=*?::;+?==&&$###############$$$$#$$$$$$$$$########$$$&?++**%$#&+?%$####
:---;++!=%?!-:;*?+=%$###$$$##########$$$$$$$%?+===&$$$######$$&===+*%$&?***&####
;-;!+++++=+::!!!+=%%$###$$$#########$$$&=&%??==%=??+==%&###$=?==&$$&%$&%&=+=####
;!+??+!!!+;!*+++?+=&$$$$$$$####$$$$$$$%*=****+=%&%*!*;+&####$%?+=&$#$$$$$#$&####
!+?=+;:;***+??==++%&$$$$$$$$$$$$$$$$$&?*+*+*;!!?%&&?!;?&######$?!*=$$%%&##$%###@
+=??*?*!?====&&?=?%&&&$&$$$$$$$$$$$&?*%%?+=+?+!*=&$&???$&=%&$$$$*!?%&&=%$$$$####
+?+?++==%&&$$$$&%%&&&&&&&&&&&&&&$$$%%=%=+?+=%=!*%&$#$%&&;;*?%$##$++?=$=&$$&===%&
!!;!==?%&&$$###$$&$&&&&&&&%&&&&$&&&===+!!!*?=%++=&&$#$$&*!;;=#@@##&=&&%==&+*:!*=
!**:!?+%$$&$####$$&&&&&&&%%%&&&&&&=??!:--:!*?+;?%%%&$$#$%%%=#@@####%+=&;?=***+*%
?+;-:++=&$$&$$$$$$&&&&&&&%%%&&&&&%==;~~,~-:!+;!+?=%%%&$$$$$$###$###$&??;=&%%&%%#
;;:~:+*=&&&$&$$&$&&&&&&&&%%%&&&&&&%!~,,,,~:!+**+?==%%%%$#$$#######$$##=+?#$$$$$#
~---!!+=%%=%&&=++=&$&&&$&%%%%%&&&%?-~,,,,~:;*??==%=%%%=%&$$$$$$$#$##@#%=%$####$#
-;!!*!!!!:!%&%==??+&$&$&&&%=%%%%&%;~,,.,,~-;*?===?=%%==%&%?+=&$#$$###@$=&$#@#%=&
**+?+***+!:*===?=??&&$$&&%%%%%%%%+-~~~-::::!+=%%%+=&&&$&=!:!?&$######@@$&%$@##$=
=?+***;!++:;++?+??%&&$$&%&&&%%%%%:~;=&=;;*==?==&&?*=$##$+!*=&$$#####$###$+&$@##%
%=?;;:-;!;;?+!?=?+**?&&&&&&&%%%%&!:%#$+;;*=$$&&&$?!;+&$%?=%&$#####&?=&###==&#@$%
%%!-~,~-:;+?+;**!!??+*?%%%%%%%%=%+!&##=+%&$###$&&=++=%$&%+*=$#####?*=$#@@$&&$###
%?-~~~:!**+??!!*+???*!!===%%%%===;!&$$$&$#####$%%==?%&$$%??%$####$??$##@@#%%$###
&=-::::;!!+?%=?==??+;;;*?=%%%===!-*=?+?*%#$?+++?=%%?%&$$#$$$#####$$$##@###&$##@#
$%;!*;::!!*?%%%%%?**--:!*+=%===!~!**;-*?=+!~~:*?=?!!==$#############@@@###$&###@
$=??*;::;!*+?+*;:;;;--;**+?%==*-;*!:~,,~,,~~:!+=+:;+%&#########@@@@@@####@#@@@#@
#?=%*!!!!!!!!:-;;:;;:~~~-;+==;:*?+;~,,,,,~-:!?%%!++%$###########@@@@@@####@@@@@#
$+&&++++??!;:;+=?;:;;--::-;?+!==*?;,,,,~-:;*?%$%*??$$#######$$##@@@@@@@@@##@@@##
$+&&%&&=???***++?*;::!+?!--*=$$#&&+,,~~-:!*?%$#&++*?%&$#$##@$$##@@@@@@@@@@##@@@@
&*&$$&&&&&&&&&%=*=!::!!;!--:?=&$$$!,~--:!*?%$###$=+!*=&$$@@@$$#@@@@@@@#@@@#####$
%+&$$$$$&&&&&&=:?&?!:-:;:-~-;?+!!:,~--:!*+=&$####$=??=&$##$$$##@@@@@@@#@@#@@####
&+$$$$$$&&&&%!!=$&%?**+?*;-~-!+?!~,~-:;!+?%&$#####$$$&$$#$$$$#@@@@@@@@@@##@####$
+;?%???=?===*+&$=+!:==???+;-~~-*%+--:;!*?=&$#########$$$#$$##@@@@@@@@####@@#$##$
???$&&$&%%$&&=*;;*?%#$%=%%?*;--:*&+::;*+?%&$########&%$$#####@@@@@@@#####@#$$##&
$$######$$##?,:?$$#######&==?+*;?*::;!+?=&$$#######?!?&$#@###@@@@@@@@####@#%&$#&
$$$$&&&$$?+&;+&$&+*%&===%==???=&$?;;!*?=%&$######$*:+&#####$#@@@@@@####@#$%=%$#$
$$$&&&&$&:%$&#$&=+&#$????=????=%=!;!*+=%$$#######%!!&########@@@@@@@@##$&%==$#$%
$$$&$$&$;~?$$$%===$#$????=????+-~-;*?=&$$#######$%*+$#########@@@@@@###&%%%=%#&%
$$#$$&$?,:=$+;*;;*?%$=???==???+;:!+=%$$######$$$$&??$######@@##@@@@###&&&==%%&$$
##$$$$%~-+&!,+&&&$###&??==????%==&$$######$$$$&&$$&%&$$####@#&#@@@#####$&=====%&
###$$&=:;=;,*%??+?=&$$$%==????=$#######$$$$&&&$$###$&$$$###$=$###@@####$$%==%%%&
###$$&=:;:~*?:*?+=%%=??===????==&&&&&&&&&$$$$#######$&$$$#$%#@#####$&&%&#&%%%%&#
#$$$$$!;--++~!&##$$##$&%============???==&#########$?=$$$#$######$&%&%&$$%%%%&#$
$$$$$$+!-!!-!&##$%&$##$%%%%%%%=%%%%%======$#@@@@##$?*=&$$$$######$$%&&$&%%%%%&$%
$$$$$$&+!:-!&##########%=%%%%===&%%%%==%%%%#@@@##$=+=%&&$$$$######$&&$$%%%%%%%$&
$$$$$$$%+;!=####@@#####&%%%%%%=%%%%%%==%%%%&@@##$&?+%%%&&$$&########&&#$&%%&&&&$
$$$$$$$$?*?&$#####@####&%&&%%%%%&&%&%%%%%%&%###$&=?+?=%%&$$$&&########$$&%&&&&&$
$$$$$$$$&++=$$$########&&&%%%%&&&&&&&&%%%%&&$#$&=????=%%&$$$$$$#$$$&$$&%$&&&&&$$
$$$$$$$#$=+?&$#$#######&%%&&&&&$$$$$&&&&&&&$&#$%=?++??=%&&$$$&&$&%=???==&$$$&$$$
$$$$$$$##$??%$##$$####$&&%%&&&&$$$$$$&&$$&&$&$$%=?++??+=&$$$&%&%?*!!;;*?&%&$$$##
#$$$$$$###&=&###$$####$%&&&&$$$$$$$$$$$$$$$$$$$&%=???!?%&$$$%&%?*;:-:!+?++=%&$##
##########$&&#########&&$$$##$$$$$$$##$$$$$$$&$$&%=???%&&$$$&&=+!:-~-*!!+??==%&$
###########$&#@@####$$&&$$$##$$$$#$$##$$$&$$$&$#$&%===%&&$$&&%?*;-~~~:******+?=&
###########$=&#@@@##$$&$$$$##$$$$$$$##$$$$$$&%=&#$&%==%&&$&&%=+!:-~~--;;;;;!*+?%
@##########=;+%#@@#$$$$$$$$####$$$$$$$$%=?++**!*#$$%=%&&&&%=?*;:-----::----:!*?%
###########!:*=$####$$$#$$$$$##$$$$$&?*;;;;!!!;;&#$&%%&&%=?+!:--~---::-~~~-:;*?%
####@@####&:!+%#@###$$###$$####$$$$?!:---::;;;;;?##$%%&%?+!:--~~~-::::-~~~-:!+=&
@@@@@@####=:!?%#####$##########$$%*:-~~~-::;;;;*?$#$&%%?!:-~~~~--::;::-~~-:!+?%%
#@@@@@####*:!+%$###$$#########$$=;:-~~~~-:;;;;*?%$#$%=?!-~~~~~-:;;;;;:--:;!*+*;;
##@@@@###&;:!+=$###$##########$?;:-~~~--:;;;;*?%&$$$%?!:-----::;;;;;;;;;;!**!+??
@@@@@@###=:;!+%$###$######@@##=;:-----:;;;;;!=%&$$$%=+;::::;;;;;;;!!!!!!**!+=$##
#@@@@####*;;*?&####$#@###@@@#%!:---::;;!!;;;+%&$$$&=?+!!!!!!!;;;;;;!!!!+?*%####@
@@@@@@@#&!;!+=&####$#@##$$$$&+;::::;!!*!!!!*%&$$$&%=?+**!!!!!;;;;!!*?=&=?&#####@
@@@@@@@#?;;!+%$####$#$&$?$#$=+!;;;!*+++***+=&$##$&%??+***!!;::*??!=###=%###@@@@@
@@@@@@@#*;!*?%$####$%%$#+=$%?*****+???+++?=&$###$&=?++*!;;;;;?%?;%###%$####$&%%&
@@@@@@#%!!!+=&$####$??$&+?&+*?==??=%%=??=%&$####$&=+*!;;+??+*+?*&###$###$?+?=%%$
@@@@@@#?!!*+=&##@##&?+&$+?$%+=&%%%&&&%=%&&$####$%?*;:*?====+???$####%=%?+?=%&$#@
@@@@@$%*!!*?%$#@@##&?+&#%+&$?*%$=%$#$&&&$$####&+*+*!=$#$$$&&==#######$&%%$$####@