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