689410729317688257311598986147943986108459152208362350447441979391124892145897753535956918917442932439796326156194973722521891626693235796250182198479221755322316566641226614915393387821348496118294167306045832358267137582862659884423416459622794793391793273727416749314023087467662603763509017575633195444684962462197051316470478607487778157999474455130617694970239167656922240518282511846586975047671912412205328569321346830638412275667939350175316456783336573198133233575744151364498197952178694185657042861314959231880336851177088545299357320231593217872390552211558495465167840256151348028537349991344128460772673247741130057956191421960303045120533915617967066341043896903620951778152686297405408910947992002415259618734436524747761578245313238924243593765449212893126972792863684799994674409290223710339594738733878769427941601527265063476879597785126413653248139707388541429851031260159641501880586035606434394819423665179680774303971210262313244873973957595849168310271307481850010988999897280704804197461289010330425092333162224392784597874864953361290512014997024303424932571665528130225768429229832071042559996954424655284436790916071484349575552539245282137041638744699632526399111153674935990974229805879054316985941643474819667963684816263265559994400547011806396355179780828768709077919135186377369717921528174029205051812031089816989632462883930974622154129793714545549596540628633407680175508078853221526146501440994169922494032597160454089452926176524368523018682383289467780879057192772395919996691186016887313324356979574306844232264686079715040495989093565816858738953101325524512297999346708250784025079466969066121509934967524495086769916699422514375990497411750715636395516688399286671756499975947154858606014255809720479614836820707956191795774857777928890494016576880644909587221138972950764728717813457191067724673598811400935175871109407659409258849425265609948362886595295453528415894914224929587293245157161148571067259647853385965568100725354389795692679396177133420893735748911876704231622827123445335764773247968778948359937661688789973493646493832344912859562812844766463282215429040187305148673191893052696144532746216143084371316246875806816899988961000335360903658130906951202253941129518054309258165424795135530035103978132725874836892815305623562595396927605864229621004911263051858348954357177873488796789445751856332346235525218679952381936724052350327921578294990952288807507563892195565469112262598763833233361238292681438903424716363609688629664899415618536968236136029878596349145348219176874905602924067095607420674069925655929304710802470544628811868495935540022607252143748862988530464579280596558359421639837988957130356336781598178247857130321739534767253977259825383787041327460983795257464103346233148240538433383828328258556411151055212120870826536849981269611749493536952375603361884011282298039544268288232374859318876727590329964564873109745834086789140884089003576271319726563392547499355725488081635363557329866165517952010203302692329488207707471849942656930067801110291879074640954073653596542194167925661673199929738449239155651760976716664111851062557875523057469479664209402496267589981144246687480970709174287951447441374664985720481956243179724259156838144023462171876183336401297370289710583728527734846668086769361545877883418874915054570424478439239951993260696653878139666292382152564784805118576484829444425094965017298227823344549180327294323443200127775793613005761172327027985181823156598748612991486109289914268743625934267876860612981179617112325776163942996435965599765029167207734352526936258372056065544903266995304346019818617134249759831219444151202198302064709274378497151032324825123698411742791436343605193813255489562976947088539169398285530529455632369490619801935060649590856384197264378830560048618986982536869134865767977955564850472753144526736285859957036858728194064581782178182029315493123725751951272157785966297161935411388276506089942291431683542942509698818128729385493218990021768971970656960915585759085617554193917686581295367262280770011079342822607394323894280687673812874750666322855972840071624770656138665434130063341775783156731018313841508232636355665703635134622125820707882601106256018112259815285962733110813322082315496034343880428894358666323166805108746794535331981565624670632891158661604424794025162132073473267333537422475055801828142476256216104214261074874610580791459006407145862879847324957231734586857095437978990740229538206493977843754882912782234221018911616951547737509828581887969879364236076110472952926430847497552356511715731690463850531102585576694154726189534199638949695806502367874453467642730163107017811864458338984615485384170246073050399429361057256341972351873011529845884261033593189081733438644904333412321831345187443524099129936793239752454462141802258446087138242260667699989831595270082767680436776460554831134271384844753924943336553216596863775859153789660751116200708210253509714086908794245975867295215490396205305913503324918522463525970861640239375305485143945340148794505703349057607341952891114555743523924859075738298926620303169152310328499533239416519701171573897692244056346918295422908644786050967241864142258814097391309154398425916778561173756188278534401802558121361222843622818209743626366814788667538785627266321962681241535639547379309570263261125476556119537616377439861817175172986577875640173067302303712246033216302621259796299790281196896219527854213893737741145008749653655636440139062982541952925519532963772663534888570232612597903461134688133200454922992823348570541086612801770428222293520556587191977844896238812079904263476419225961672987734095614609782403333468727142809918171606028611824273472175487507814996512621941702521528680643859999784736694187769199626358760614301198598338593376917845282943962338302400510328339437796765816813835627374120753973837053