395337686324104914639835362639879732803545713482907844947561482439733717676930513146109594864444283857127729574311210954825066747824173800709575233473673594171594274587604113270373951587970892329314891322919053273188530026041642939092726459454087116604373026197248912599611159476239912946454932394456229896558577641534459536239354081501866631470520505593539938163720058094944271227296842921670747694463898710247624856330786042229660451337394072304791787687875436751756179587714843842895213894246766436027252144125850223205802248214940382130756453576397744382440269859642151837545906339841764866414090243712647586518083135555621931043246986286951127511616837124141929785576580042539653625313663959769997439967382234853845946163893441798394309578668019118867786837898634011583296396807701994047056558791524897388084794728382517526479756298063301372218896605412014120690846871212855795572296929639264709020200111257522539465184678958753128037920574291618812984762453573224553963721287854047015264643196846907256836367631178263179271899643245998156414829377619450857680198467370321788843508313592007777641450619219451863716294495210446384939522565338789013034015208186247122451529179058413177577755677021552296156445542208982519307691847482331388251150677824777227169665450376729577265037198117839647418323452441246393518727616713128970079951885685007752577652931747119659992925721933981255559153217302494310037682822644307426380438517001369538921348781895357958329941342357850969869412598851990576110611435437797688349235976743929208477793546168995261545303598513340024318567757942141750664342745424690445094427022044405693427513987205911675775876027680233757225312937987788632908480779652172987442929216324967552004053942013866105167670923995476574288315830046065739596632307647730285558646859564485273375802341953586424729341016157478476148751124374761355893387194203682752756979022218359813587156466069735171033300392508582139915932322266512131774961973980102882936742577136827797452913945938518129512419858282737724424490694782352672898109425363151549467568506954467658136709974256903074213727453709535874938706111126673546162812761671676839924446175713587089346546445258181296334189685891965677670202373659645571355862136921186430433103603305353514905577612187847947503926389011364829268298478611657449295632566227859331664132266280882399273553241456818099323891100464417432417432460970338849886256882759140563093661303226789544783401728792098669520822184373456771697878628933714429300912172252091973083867597945189745397793714020462884758306914368381706298585749412280679102350420372899808146388351736895059914870697410162872078229833404726301396958137582811695287383529659282552716277871939775166589586029673240435621064312044032448737397979450214262014334107254039182359597351031168222032873527716436784789941615592531856565194986669037949465272474446695158836400548324674996910835534848945617029160910648558241176641886658951893180816913809355883322882151516675110576252875822972311590221798006830942654754219390832206494374768782609179827283187340374277349359518281679149206935771072548324914287891286700055348011324990581971554634326566621223370483314790481417701254569649631360698340482870782424848771108436642389188500370611721971678970949886893433277119459577794725197160047927865192878183790370377678235130914614569715462255444983397541555803661671984795776073152348018229479533072779707790344537078290959738678913193507696665874480511806915950931183502735256998725487290540245660505335975931891797291529346811905396866231939614874905265963270895260622083610297564169293771254631706623911989405637413524089346791763937829193975439027569220367435853046287224221426913362922656292612740432253452893569463833679394443363293120145289786561293224090742784256677939458338106978494428195793067569989618296515610582344960843824769162300020578807328190725882220070921137503464387893582351357786581445520345871940934153160427750381812764720545552388378451456878342429108425968425600930043695453568618439771513223575507906886573964450552579352130995396799834118476148610352849642209104795419748217520757780170360718339475696066001543908728934177679749845296720092894222988888572284321127387182573250497597749347175142856830212288973700771396361991303342555271831311277686592550019761163524711767838754387942461574299241349981982385989200792774405726746258623115136715894448125155255520217239142234560884253877657447464853884491288129650855533396792897109525138002586396650717360321181422394695121745687722970102831043071979111759690853357135073422917258808589198904342264649829470907564432217843281132588747459781084520901599169336958119446486228745367377783191661973388583653722411439390214476627979712507252211332583888223260797714433495362799500227381710111028211054582262830466686864312638399064228475086193635021212185374025312147565879868051759296986839212789573916790976054356986273732782905216219172864439892215248301329282967707441742498825172827510515133252006735189331761810982394668521740912834883868788279725112646233531032381687086122411502270875187793328318895299643749173699745204505338053271291699037740392537766863429618566450729616155206353030787665972137424798681567288181622027630951459822433864801962276114919970559123487284455553771525620591332248113457955927053045794470661541717567823613299343383009332541283659636610422825735596389458627811343471997197563487329522538812724816526559360198881772748140614269382315507696447662001099816499415320732241096172174846768692121273346559252937815666407277600140294349900789791437714316345256692270888349508471668199175409546652905873137762801469032472262742670133888138902803311498991554307745584228612938163996225580118835283625258148845975388672825383381716398116900488977286864144815845964707782665278336681342819960952180151664739265827969597528596027821953