944141972196985665845582900575014636629183441157498234490917752858250661405196414986355682879311666075864717538077710096443844105437657622433828226298129249771951189919663643227199783270453567087419705394926258895995732892682718663200129041613456611692779149761518832428157094243702408097361608947031817716110865377951179627925715862246705274741517119487395492911329738828128317428163257221452637594249768131211735342169774926854267394542950179352607076812335823631183922389510126883366462751491877534834538161887925947880733365874242136734041571323143303346119369873022931310023696161774216245537776766229111485951018774527955223996643571578288911352997963030247607779657348170144878176324358721217374306547787392840230372924982341676562306888443399012641839578322920337102409412813922126743196455577955147141441147126268622493299918649991226257068094244137700874526749069626928241016697069475402822216688383785445151411479525412317923950559297561714072206654816133327200244197249682248679088764982495499309408468115884979188982686151025762632464729699727051461855244691961473456899224257977965519955377294367587662202170891014533652619782324859878201135719315360697164187881089478721152783990746299989433738694915864657537610588962249163574927435923844958821641789224730705952553966345977116610309987374844555853023402790253981322542435262210564101438967436592222859763942674415003626533545234438826977697259462432676933383581497828309846663287005002354614103236154319431326786690748169715494627852577635617779630290252253530429242594088715655072691356984781412531035107444670818063416855028405709236991645769286755928295785159785245066460828092871362139103134826819039317534969229767211140885275733906116196364623975304486472904591590487168227126624314398779183976777493568588853223281469009960969755007938715927328962729260404378583243423522827692560573448105660775582746170556611649072719340120917282793175874323474917279773852778460199676961402214862915673696322036221964682365965461995246376171199246020265837249657765023713267515843475518551536244186533633098897271078643645929940412885316097494783747210621305100269037774181183421541846486625441020302567182036218245463475607470125032295690564936955969129060706767675168342046633682588567222125720164838569199667537579332589761900507773157725312935803415807164824803181863483840902521802319396595943741915756078030031451211574839740283133721201458621195570112291858980540372089886927238068428663174789567854863577721651423417761942767944845645574176461047172284891483155551186149602300384891521809889889887951775907480347188680839309163700197794784267725508359786525458227439487623439222555501609238447859640728457406361976536842641501786007581435114444711752291861884890487632532684470523628789759591639444452751186544922794181974748669115797176281195144014422032667656225846246859217550445586505398771146235437564644412710569611974906612365067012571481341824167631289171592869872312602638674387076435954449321157911046286445582066586942345655657816878850118846185991328692142734199200480608617646428409592653397925921046982892891275736522099826238763218298213738075880347815029041578270162052199740369736213971226488127666995525279855917488950377919833391788764465169469288934797544277432318758627611382952974855553218090127965379035440688288597499673771157434947516203971224255044097463203280527843659735617397112974249733174713269247067456097693891818165625025101754192842175996866167406558319158260846831630793597511350932611216027760494136883791120029223221356477129514521477269369158365792249461670963177851493597548114104315287654712555553848322830866674285973870664539484529395076372169148635205327699837209300811899835012667388642964784550795175122764127566139446089672731668372691525701202733105843773587904615945197392150331738442312137456527258802093206267889330963664442742612729658298832936567781529249761136754384068406574742824748386394160867238981840970694722349959132481592283926170663771453233432323135942808264717555585043945486597879216672853485892884275181877515245932640879757301236969371204547319995542828766034678569598206184107186525877099319555389921377614528448963731129483506832993137178687595096208743982404339418649133474026725043318376175310178343816209393981346560678289219547908122767399672347991065576111595436817578211146028409802928853174313765825775576559505442859631362319029946343578074944719725161158061199371761721341480170711655082496689469486556837473177155081868381433484043615141492269176541230113567208060605539113668284359220718014388504484539463826543190217603497467839488930354938397833297427856952497735529118076394252148250707984909327055880117028899268926986939821135422610047750359788204831283224698024575275558600901643692624196044553382057596981144343366331644703243779790298422209247046309519552319103472727885732859183563465364675389499434549357780432584634826053868346782667491442799872669369115094651415657748349867946526618413005236930277738658693857198613778279174034185370827977327954311581747553725744664983248339256757519763225149894760339796802088867613465370661790996797749695318919786733975871871018730123065577842313047189531883990417092434875378213485236083793628980338290410440884561401246090509050619659378691244629256620533318901323781764456168876259619523264389234334425358498835267762210937097952647230117881679466109319116139324179611082740595615416186346810424963041221980447632373929416180628452024557952441092306123289476755967011786588018298047594964867993549307629261711941810085809652333165245820575115914797776865819560317388996183058204409789927218106436242737832493332542842533328618140362985096719635448565126359922171393791841412658870480989287129913868723140666924529180852412069291662470093927647256018999695561392169156575914769361344997798175933700952066095833576061507579273