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