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