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