%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
//////////////// %%%%%%%%%%//////%%%%%%%%%//////%%%%%%%%%
//////***////////, %%%%%%%%%%%//////%%%%%%%//////%%%%%%%%%%
/////, ////// %%%%%%%%%%%%//////%%%%%(/////%%%%%%%%%%%
/////, ////// %%%%%%%%%%%%%/////#%%%%/////%%%%%%%%%%%%
//////////////// %%%%%%%%%%%%%//////%%%/////(%%%%%%%%%%%%
////////////// %%%%%%%%%%%%%%//////%//////%%%%%%%%%%%%%
/////, /////// %%%%%%%%%%%%%%%///////////%%%%%%%%%%%%%%
/////, /////// %%%%%%%%%%%%%%%%/////////%%%%%%%%%%%%%%%
/////, /////// %%%%%%%%%%%%%%%%%///////%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
//////////#%%%%%/////////%%%%%%////////////////// /////// ///////////
///////////%%%%%%////////%%%%%/////////////////// ///// ///////////
////////////%%%%%%//////%%%%%#/////////////////// //// ///////////
/////////////%%%%%%////%%%%%%//////////////////// */ *// ///////////
//////////////%%%%%%//%%%%%%///////////////////// *// / ///////////
///////////////%%%%%/%%%%%%////////////////////// */// ///////////
///////////////(%%%%%%%%%%/////////////////////// *///// ///////////
////////////////%%%%%%%%%//////////////////////// *////// ///////////
/////////////////%%%%%%%///////////////////////// *///////* ///////////
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////