746272998701997997487738552089419222321413340901713758922043812114853341426823731443458164152565964101516140422327369830698265114356894381095345116437841874372501875828529753086304749614599028342814388726257185281656613243543973260062749261456297849499696368153722339757225619532413148492436745594255774786895411804894862082558142398271545566872738307052813544258001184842847792176976442702201758743366019431041351571235843333517505536743344906731849277251534595013082947554509627646959446758826644056395498291654449584050836062895680142492620415471681916863589656405084433542872686798442126129085867765118635407729363130525491854483466419116644707893591142351455338438601325207625798238583958871357686561795033341399023878850487052192926535547962848797259261524716233825990356022424913406179929222506038580359694149825149324140208422178898238743522293837256060646824725176983861875942954975942417577073706675820488110966858480258271916737559450403575864758898568377972698277202017650987337767585895217795459429250256257191675472074144277384446231416926964369491926947980455824679715662280964157455851494281559869214746679754042765187821795482010634052893011932880592070567599477902138945841414717919441424178919034605102298945176994452933892225807887687169011972636759523565529854104295463214445946107478187086377251827672547133840241031614037769724379291265745356234495197007189189846514296230176686414938177069021981806365669317987312179630885237183548480494838183392773775138716899519726851585652096688630304291349487629278186631353081409718715652642177223554893974211886855853386255020179422865295427848241900210086303622521816566225781931275255301161658321087955845618581545807470142326751889754275010800796513035844047660083701120717255088232431006512347176658574884885092917938262735711457632555656202256884848228723994770822941784830426347749815181556938759986217275608499773891808741380773395023916573939487104786056191324968856413679038791968027399991236366512866142993548375835298382153734726197123284045282850100078466714557624726791041827578788272651836643271412292122274944369627783515232178524541237282595337447120673319799950079217036771690136166716643724361846886050073021164546593697904803559989353703186112133526788617637382686989319739424653560460771346752660166223353372788736290886358689971516185507241898275248744566773377695328179732381534262141822934785332650136143724214151138614835837291804271917563501553727797847401344065643393847271738439030524031775360415832881025232999204184796699512476677696778283892453537198619986890676291779307759484473333878034671168504217002505149943191237788034873781312226954810158848349515927429700284740106120406279346229262239994709135176594729970738607495852946886782531173806935629884895237745498766655634613412051820656228263118690429004829383675503847111412895364065351193118642184838567940328897712894760164289642767124545694532939892677946774216794874855568232594295454855910936770753703515395277478905460172333146392048175147959595797518678066335142226465580547519847925283530629099042279742267424291024940224362853615527620315022160834677312311480739385023417541575172584412647970095015729912515275550075028724438115973079636262689746396450992511627772418827017076826694158534639721454388653959164780996474606920792328885635481869708574404372515868365256801291355942178158204993190056041322788387667839372281589829142374412610459899487424188743459532575423657705276149564332656650148566674518974751144916734195360464066662273718616907532136081147213313066597264524443915580916733588085187368471912039939518649978706575224865483813756451141333632021461443728438636182447751467228744787540964929743248032022610792329429616767230018713845621947702908480442255428629367885956964649513684416433912715704418817105114644499628407546796077111865920179936335557047288030694215667160729967604726511319057442644611598977121592855129599041200093358091570164659041635470184464985895052779371527683153976394480844759989875936627396657905492279875213721357091726240095239586190674199336297943521765659426982985813684846781307905013492484879186545537738490366032544672447713735372099401351159225092352306799818707991285697315377661255248485457852919793158813038259789884679998673258128970858397109188786174697572695178374849965932005122695643505018906061453076844416155313192048607923973156925055463872649558652561865289297278501336175067389313728235555501757454934542484919947864476501350417355604853299322098333183963774236144489884151048222678574627466369386436340498665727579123967157400535694323740111915250301318589821597164010670355111491604412955013439934129053967357241596302374227723013754863434429462025242894019728396578694585792728560057621404243299797183276428344941049824066555378493719881158837842290944614042899779605357560423407906143319373276182986354652538650011874376492498324929328089438083919035475476368817797986154534911896249512260280433837859969279858318739077700803031543723861129549507887689997909767926124197874289368619093264822573326477890807663234777763469775202279753675465631505757964958270284936129752618614652816784487208062878063129509721655888399103415573980895734389495488453568610879151454238210224551869053012298045175158380428615914639331897208886211907981325182799915587379571681254162634211129495347778566137262443125925086574275132264763689240221129250085604099158913824023130554495511200957791471392757925951365295947308432573480976420762074107245122479611065241901220867124855556577239222794549450492217974767695351836283384085356953149165227042422525866592158922293918421890585443689688722821052210808528965866956113688395879757828834550438678801185514805031873996360079559371583388701848467459679483244403721676119134095285431573783377626946198944615413479777384284825381850901129712767467332367020428760868392716031823046745417383489