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