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