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