$$$$$$$$$$$$$$$$$$$&&&&&$$$$$&&$$$&&&&&&&&&$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
$$$$$$$$$$$$$$$&$&&&&&&&$$$$&&&&&&&&&&&&&&&&$&$&&$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$#
$$$$$$$$$$$$&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&$$$$$$$$$$$$$$$$$$$$$$$$$
$$$$$$$$$$$$&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&$&&$$$$$$$$$$$$$$$$$$$$$$$$$
$$$$$$$$$$&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&$$$$$$$$$$$$$$$$$$$$$$$
$$$$$$$$&$&&&&&&&&&&&&&&&&&&&&&&&&&&&&%%%%%%%&&&&&&&&&&&$$$$$$$$$$$$$$$$$$$$$$$$
$$$$$$$$&&&&&&&&&&&&&&&&&&&&&&&%%%&&&&&%%%%%%%%%&&&&&&&&$$$$$$$$$$$$$$$$$$$$$$$$
$$$$$$&&&&&&&&&&&&&&&&&&&&&&&%%&&%%%%%%=%====%%%%%%&&&&&&$$$$$$$$$$$$$$$$$$$$$$$
$$$$$$$&&&&&&&&&&&&&&&&&&&&&&&&&&%%%%%=====%%%=%%%%%%&&&&$$$$$$$$$$$$$$$$$$$$$$$
$$$$$$$&&&&&&&&&&&&&&&&&&&&&&&%%%%%&&%=%%%%&&&%%&%%%=%&&&$$$$$$$$$$$$$$$$$$$$$$$
$$$$$$&&&&&&&&&&&&&&&&&&&&&&&&&$%%$$&$%&%==&$%%=====%=%%&&&$$$$$$$$$$$$$$$$$$$$$
$$$$$$&&&&&&&&&&&&&&&&&&&&&$$$$$$&$$&$&&&%%&$&%%%%==%==%&&&&&$$$$$$$$$$$$$$$$$$$
$$$$$&&&&&&&&&&&&&&&&&&&&&$$$$$$$$$$&&&&%&&&&%%&%%%%%===%&&&&&$$$$$$$$$$$$$$$$$$
$$$$&&&&&&&&&&&&&&&&&&&&&&&&&$$&&&&&%=====%&&&&&&%%%====%%&&&&&$$$$$$$$$$$$$$$$$
$$$$&&&&&&&&&&&&&&&&&&&&&$&&$$&%%%%%==?????=%&&&&%%%====%%%&&&&$$$$$$$$$$$$$$$$$
$$$$&&&&&&&&&&&&&&&&&&&&&&$$$&&%%%%==??>>>>?=%%&&%==%%%==%%&&&&&&&&$&$$$$$$$$$$$
$$$&&&&&&&&&&&&&&&&&&&&&&&$$$&%====????>>>>>?=%%%%%%%%&=%%%&&&&&&&&&&$$$$$$$$$$$
$$&&&&&&&&&&&&&&&&&&&&&&$&$$&&=?=?%%%%%=?>>>>?%%&&%==%====%%&&&&&&&&&$$$$$$$$$$$
$&&&&&&&&&&&&&&&&&&&%&&&&$$&&&&%%=%&&&&&%=?>>>=%%&&%=====%%%&&&&&&&&&&$$$$$$$$$$
$&&&&&&&&&&&&&&&&%%&&&&$$$&&&$$$&=%%%&&==%=?>>?=%&&%===%%%%%&&&&&&&&&&&&$$$$$$$$
$&&&&&&&&&&&&&&&&%%%%&&&&$&&&&$$&=?=%&$&====?>>?%%%%%%=%%%%%&&&&&&&&&&&&$$$&$$$$
$&&&&&&&&&&&&&&&&&%%%&&&$$&$$$$$%?>?%%%%?????>>?=&&%%%%%%%%%&&&&&&&&&&&&&&&&$$$$
$&&&&&&&&&&&&&&&&&%%%%&&$$$$$$&$=>>>====?>>>>>>>=%%=%%%==%%&&&&&&&&&&&&&$$&&&&$$
$&&&&&&&&&&&&&&&&&%%%%&&$$$&&&&&=>>>>==???>>>>>>?%%%=%%=%%%%&&&&&&&&&&&&$$&&&$$$
$&&&&&&&&&&&&&&&&%%%%%%&$$&&&&&%=>???>??????>>>>?=%%&&&%&%%%&&&&&&&&&&&&$$&&&$$$
$&&&&&&&&&&&&&&&&%%&%%%&&$$&%%&&%=???=??>>????>?==%%&&&%%%%%&&&&&&&&&&&&$&&&&&$$
$&&&&&&&&&&&&&&&&%%%%%%%&&$&&&&$&&&%?==??>>????====%%=%=&%%&&&&&&&&&&&&&&&&&&&&$
$&&&&&&&&&&&&&&%%%%%%%%%&&$&&&&$&%==??==?>>>???=====%==%&&&&&&&&&&&&&&&&&&&&&&&&
$&&&&&&&&&&&&%%%%%%%%%%%%&$&&&&&%&=???????????=?==????=%&&&&&&&&&&&&&&&&&&&&&&&&
$&&&&&&&&&&&&&%%%%%%%%%%%&$$$$&%%&&%=%=?>>>??=====???=%%%&&&&&&&&&&&&&&&&&&&&&&&
$&&&&&&&&&&&%%%%%%%%%%%%%&&$$&%%&&&&&&%=??>?==?=====%%%%&&&&&&&&&&&&&&&&&&&&&&&&
&&&&&&&&&&&&%%%%%%%%%%%%%%&$$&&&%%%%=&&&%=???====%&&&%%&&&&&&&&&%&&&&&&&&&&&&&&&
$&&$&&&&&&&&%%=?++>?%%%%+%&$&&&&&&&&%%&&&%%??==+%%%&&%&&&&%&&&>%%&&&&&&&&&&&&&&&
$$&&&&&&&&&&%?))>!+!))>%-)+++>*$+))+*>)+*))*))%*)?=**++!?=;++%!)>)=&&&&&&&&&&&&&
$$&&&&&&&&&&%&%%>*>):;?%;!;>***$!?:>;+;+;;;*:>=:**?;:*!!?=!!*%*+!!%&&&&&&&&&&&&&
$$&&&&&&&&&&&&%%==%===%%==%%&&%$=%?=?=>???**=?=?=??=%%%%%&%%%&%%&=&&&&&&&&&&&&&&
$$&&&&&&&&&&%%%%%%%%%%%%???=$&&&=%===============>?%&=?=&&&&&&&%&&&&&&&&&&&&&&&&
$$&&&&&&&&&&&%%%%%%%%%%%!))*=>?%)?>+)++*=>+))>+)*!)+==>>&&&&&&&&&&&&&&&&&&&&&&&&
$$$&&&&&&&&&%%%%%%%%%%%%!!*-):?%;+*;:;;>=:)-*:!;!;!:=?&&&&&&&&&&&&&&&&&&&&&&&&&&
$$$$&&&&&&&&&%%%%%%%%%%%?=====%=)%=%?>>==??>=?>>>+)+%=&&&&&&&&&&&&&&&&&&&&&&&&&&
$$$$$&&&&&&&&&%%%%%%%%%%%%%%&&%%&&%%==%=====%%==>>>%&&&&&&&&&&&&&&&&&&&&&&&&&&&&
$$$$$&&&&&&&&%%%%%%%%%%%%%%%&&&%&&%%%%%%&%%%%%=?>>>=&&&&&&&&&&&&&&&&&&&&&&&&&&&&
$$$$$$&&&&&&&&&&&&%%%%%%%%&&&&&%&&&%=%%&%%%%%==?>>>=&&%%&&&&&&&&&&&&&&&&&&&&&&&&
$$$$$$$$$&&&&&&&&&%%%%%%&&&&&&%%&&%%=%%&%%%%%=??>>>=&&%=%%&&&&&&&&&&&&&&&&&&&&&&
$$$$$$$$$&&&&&&%%%%%%&&&$$$&$&&&%%%%%%%&&%%%==??>>>?&&&==%%&&&&&&&&&&&&&&&&&&&&&
$$$$$$$$&&&&&&%%%%&&&&$$$$%%&&$&&$$&&&&&%%%==??>>>>?%&&==%%%&%%%&&&&&&&&&&&&&&&&
$$$$$$$$$&%%&%&$%&&&&$$$$%%%%&&&$$$$$&&%%===???>>>??%$&%==%&%&&%%%&&&&&&&&&&&&&&
$$$$$$$&&&&&&&&$&%%&&$$$&%%%%%%&&&&&&&%%%==????>>>>>=&&%=%%%%%&&%==%&&&&&&&&&&&&
$$$$$$$$$$$$$&&&%&&&&&&&%%=%%%%%%%&%%%%%==????>>>>>?=%&%=&%%%=&$&====&&&&&$$&&&&
$$$$$$$$&$$$$$&=%%%&&&&&======%%%%%%%====????>>>>>?==%%==&%%%==&&%===%&&&&&$&&$$
$$$$&&%%%%%&&&$&%%%&&&&%===============?????>>>>?==%%%%%=%%=%==%$%====%&&&&&$$$$
$$&&%%%%===%%%&%=%%&&&&%%%%%%%========???>>>>>>?=%%%%%%&====&=?=$&%====%%&&$$$$$
$&&&&%%%%%&&%%%&===%%%%%%%%%%%%%%%====???>>>>?==%%%%==&$%==%&%=?%$%====%%=%&$$$$
$$$&%&&$$&&&%=%&%%=%==&%%%%%%%%%%%%%======??=========%$$%==%&%=?=&&=====%==%$$$$
$$&&&$&&%%&&%==%&%=%%=%%%=====%%%====================&$$%==%%&==?=&%====%%==&$$$
$$&&$&%%&&%%%==%%&=%%=%&%%%==============%%%%==%%===%&$$%====%%=?=%&===%=%%=%$$$
$&&$&%&$&%=%%%%%%&==%==%&%%%==============%%%%%%=====%&&=====%%====&%==%%%&%=&$$
$&$$&&$&%%=&&%%%&&==%==%&&%================%%%%%%=====%===%==%%====%&==%&%%%=%$$
&$$&&$&%%=%&&%%&&&===%=%+*%-%====??==?=%?*==%%%%%*>?=====%===%&%===%&&%&$%%%%=&$
$$&&$&&%%%&$&%&&&&===%==>:>~>;):!*!*-:+=+-?-:);:*;*+:;!*%%==?%&%====%&&&$&%&%%%$
$$&&$&&%%&$$&&&&&&%==%==+>>:)!+)?*>*;)+=+)+;!+>)>)+>;*>)$%===&&%====%&&%&&&%%%%$
$&&$&&%&$&&$$&&&&&%==%%=%%%%%&$$$$$$$$&&&$$$$$$$$$$$$$$$&====&&&%=%==%%%%&&&%%%&
$&$&&&&$$&&$$&&$&&&%==%==%%%%%&&$$$$$$$$$$$$$$$$$$$$$$$$%====&&&%====%%=%&&&%%%&
&&$&&&&$&&$$$$$$$&&%%%%%==%%%%%%&$$$$$$$$$$$$$$$#$##$$$&=?===&&&%=======%%&&%%%&
&$$&&&$$&&$$$$$$$&&%==%%%==%%%%%%%&$$$$$$$$$$$$$$$$$$$&=?===%&&&%=======%%&&%%%%
$$&$&&&&&&$$$$$$$&&%====%%==%%=%%%%%&&$$$$$$$$$$$$$$&%%=====%&&$%======%%&&&%%%&