477864502861214257317724450512978123458963295115994932702202153791448105316115393503722452687149296574953807442522878901614704891245963733313249118245017563951482803859030829339414082859505997948863153842185542236679978167511271175528069903076299168934937848475179068969827003001999714907803301259314425275830313592846977234997475342510461613706153576599235888688233924696145092078394891235315705381525541325355112833627451560567243767555247258181244536511571375487334033061117560646666511862116267972568278846221767596565421699721672619949608782094220614760677827747178895928595894929363334658867376646163223542798309393391104973288281690514039000687727259872121508173662964185490970907745321058229609486290242400190389766565693770877363491900299480822546460498594355679018191737286326563918895323993244350952268036203455467768269926837714636806583679479626699228995988135907698860561354139301294745365112256276621440170123074250987374674962497777998757060502736341945932912852651446582810342234403583814592678596872891238942513102923722020847838115343325526309219671955838871448845632383802655655527885237732135340174976143133579268121981635499362295494667717961147136164509486621252206692480436559591667237890396589613563757289064754714459579610188486514456884946198659729078158511967298866313969747002756128126873224529874598385185240101897558566032155348586260684644841871186409439241545597224609617778223321815666505739660959135439539141158934684640687911166976279549665958320057362405424770536439486477111890981662973732521394169012706029091315159589806321874063068683300184349555902886266663023156967386817634381976588330630171746543306641994215392968325926385469348328832942631517485320366630686145598964184046663921593436270733335965834497723081843854786399196829688356573415966348651202579588465415136623011868578020368618939356658263706182860007317440740079028770811326991574965882652786368425635274468630663863305075302362887694727609154159784342347176578617946218382315833989601240667495270031804642114445141680608141066667365725618137637646973365998463113428402108256577743801813934328255155116545138474953861114379150079790910441236756860034475153396167014411468768348482188882035753203810316738766843944241732504195753919583661445870404000946774367979140548635263476296039884618388641482407600457245004522411826368944707115189294693882643220530261505410487387955825384852789437699399658876250552695535369191427739929062272818066105694097207461113269485428017538813549072247986716381858724847697944549628440870061453705757107546516454274684430989944410124480935308593985539402495489604930993929337265217211629570988249440239426138553579962975135100363147473393050179594920821550640596576003111651952358822773840751189473720777531768520947038976138461193161564590812350783580083418772191134085708238751093453121526432379284226923377682395325731423360973846225232372488239738773164326381132570654273117421552042449363981445740606817222732568568464286212179589575419731688869004109314988918185313495484791470029105344628419568741132663546582836814866383859297964232062413410461470890432834597343927424948625889335604486784398360388098778200163056023436674635491401341564340352466865734238927174711240265278553877878202476460677003219410795067488442660382354769223283748739993445489778170967491761028836509124151029529530859814484626764287458998717755913491616730973520436893218911716611601558385318439994447598306141431999449113323767535026895016632038607328318519307941873886665894705938264123597501750854784105706157473108475872283103724672706827255770406733502260543570401750752765677267098672587479825966943451848745762830414795179393453938931093956573687639424971096565421084713599507131942391111174592083730176317516430659653278377060217140655374154179800837458903422616588388328872141475606591297984356390447075863310974973767836149765168996797636497493337307296583639762561183327824321326746574729855862833779723306806365776989956933170187187151509390548694647389904409210060264870928555930563758872095764284388927727067538148494966155464915322836718858205976754387333770604743718168388626358882837177725659139012178392532125174552140274565498982798541973448826324853711288111712499392115466520689072772299406637533587899735743240592253096032757616172957902917324830533156574893107879321981776283711319277262432477281388812159437837376741897822440779845956288865024455882246929341923616998424844584577764274662748808725145962454231171929737915614263038288626054136538353382666210540566554886480916389110756861357331871932729885207922584831253138810835014656199072128616404354869570597085425021322943656639541677688798102168812850932610181521262115404610004946194667452300922041472500843072833027416776452666497369672429607131764148093149712023779736296945944246835458160120702998577935147658861843561866528571303255995098957523247115651660882015378446749391590437454748358421468197492859973596598676134077734266279514280299874915026914241806720608194855315239499906744219622645353624857981448429617172573898174357174582110644115507538198325123867432842459274879275698361374384423931724672506663771677600358504139430242068610115101252233267572494171279998289436677258692147225904595285672282977353646536405984203532836076446584118795056721473737205376756694034851438369175886836766294191156347757801732551438714875574508258457526942575191978689334686261755760642457038990218513938141922188479050635156672037918359017968337568462196379165654417549321368389082362632009935539579596290682617952717729914485179725573782792784051455320450266781309791258257961892411919508106665107143773752219586467143424718306317296786285178601418434845694902645832867490371935563921209236155862096666789651078755264377627842153603973194681537884655179569122178063236847520234311459104202350418097639323559624996288639035