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