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