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