295412467514508738999445251871345264248778868614792641737204306017635705219692845124667519953338400264744111676156127509196442458235455281749418846693361599956824195558435502845533751867788355491716820475475382277028263334705863695828650516782299016192791667068850120307427607796182453621214980212202830683234364736874949735535137737757211479278879847549336388869321287963925414736063592761844793225889136114456399914520251714140195064121764694152625443877624546210487089465103238697270757432525215562651562269593585525167965126076769233467882511465832716642565287121792048041641219529731348981263404233616897714429683374539039423123825950434813429138616927211793479953483728948638476435872492419010540216457918591793054767817047148604872462965829177409341459551829915221840829355397763258765533167206678295863766740653925789775642284462335218145217484776206169119055298724877366235105545723289883216775498973334849751208095743376666136496095590566405987728371063672042562734207295623695761894083605728752747752945235243568071117432099427341382387793763555210060778988164368479353812555049607595774952539884142481514200542726142619671257907143554634401361915996718548616627626072284109617647107465067582998281385258751706872468346643714923939617092766581657252188479453405125758113791774175397488722769241614126513695887030907634308069962063386240883596083808941629359914930864582568887491583217547458179911377824625197006653694323194748662144174676676346064184638859437449546131842164998084415550654912622958232089473955015675455987135870974154728991092156362452250827647991144956051370424839808654456488411485468413314599824437273723199652429389425572707421120721506928560522422321532908693172167162958846801905817219042870360154955408722656574619871197152995484228611464976559551495594263774801464943372111734429919339277995746588715223295713341743712503587489664803819192874722163816768961091200368137523356451989882330236284075472348196356131151999684572740299272481676578297509797115880547245436932022653327852578746220748033311801746486843031778585885885504424322599065656023047652746414316218448523954063760882864322582297404836864628817649823873841892277263209642745926161556318322833942714858457316836725199507912514617111337504958266892320471924668672556901516762127265553166218306170818653923657484073975143827875405017585240172842327871809656521364819585621202737359644078584663188063256203189736531240130257571309501940386922565180376921790662287536636952593275542507185246672056630876377845888057376044099878658805850383752109817732702422854658968296482849930135413863787573618338188989972166168440242325698563622953715860525091843441660629508696176175953242124772651522971655948157959269991528458699329790690817352875915857372855262758234231763753521166453774163354931803340323996190503287606048812837113342462102048088459139816207384787298693001427390776835327759920486667251699019354493185166513206387994665199632622635174434280521360889882924394783238993112307160012647256103514255606605799174361102856986348193597795609216798114114249488751708756540829042877471413939272470472839359238429811883987759349777335967034277922521135898313728859992099746073201475539891797887853524667237372965159214740452011102147123890417522999293424150259361471981964277453564299998596315213663181154227601525752102711645431460209296369416678037825695816615483548879086137438665105529382361635822685225084939400604588659287545634526295543116563685043540316048796951533980544899358864848587336627446462954199514903771821419209165550726592870945875724035287670259854153093074401237399943107156071496762293851313246130768282904901184512131231178535451329227183423149628279717177929848071989451458504777104245333779379520326128201012015725634305523702863955973908960834790823033462019278626217542041270183495318996781458823640581694977232061188467309359141125447433018161429480362334615251449108866253489218251978755621142904663446551804735051752059413460383991219125545466688741696319890682111752838325934553480428386893374357301342271014165609391054134337439338993892950607226584294114583842977722163434357886363431403357110843746540375175779518681283996732518469548256846585093616072206165661244124177881512556097401956820234369410726722344260812527643895441883477466215993216941526712517128285833927907285827186609572421046052083277935291653934102160477273748664741422853581179619578261183876833195965368138982429900741307394247610282881548480506010755986753369426769279631697228333944462254928765724943314262096461772295531303441381529311582415445647555094639135562102224013599915527895579910829333993209752033376886354971298477729323457994791105178351193389411961102829969269486858672035385688430547684392286436055203248848342169155017933216352563320131827312409264346975901101649518711960354979810350693567959607598024726476026564220487669358381328553535812267521733444358961039352647329086261730926978348391606856745816353321455654084708351727627463745216736647034352292207781694496684383945483211254651295222290565236668469238969189339657515414831068071253882099415629907287033370968627853246276550714014293874467297203569469266942898201179385829451258504388357592345670761322650407849083604461988564653819580219177170078957629734986276539326127794483847852753973925794894527831802579894190164262147407345634531363149383337322485321542552886628995328375444581189379884679075542759738595463555856857072404691574078234947552361592185713556131615221444219583436000753592746076840481881528253726707712347891412354869983478710883070272397673796924642527882116631445129691244893719823283581338344858639575693505457965824503521797499993526578177474747065804057921188279455890196241747180107569352334372139931220378933534861553536562578262178041021031514447292453924952498577837388873450436166395182181730629977922722044457399813902