46941547407974492811105074009216276844778508805681204335227445190744989686129896385453357066971275741575774558549911482220115452868694128403935893629664372476737606159315686995403694316285823758407915748741914668778528537822991740291222115848489943422231563016353024716082267211686453558278964918858494742273896010353183700296796301992556982578918396905563202776979129951025614691827220033849516887244229979185247229070368027351994729486674481944728957538334460847754992693087796846970778892343475486942743979425678083910050825049422953476100460244384771626080515036463429706965842537507927619292987555749377100698083819540857200939707911675891946828610991913896678653194432550714653366622182122976998618617631076666329506781229374406284770752682579223982383127244738434995052938213158026205256607524882753514408878938617216893252484269923916986232206693383323881632597506989537768846448918270874959919436591180504516155255358088945659744730465656564053391186401115848414325644037767409878370777070571540817694750154484185394944732510818396663533391263598838154882483644268534798309811691154652596175852175832329475914566169269676500984667489947929412166822175849082322580793631709193283184583352325615499552194497355965698451061022899121381857273420394821413012385351781422776927612344584070505522848580679944907527834036629924515284120418405438400911315012196829134826274375217057892053627572523069973190175275748416229481623825188065343926301979602390474837773478151657992924341485731144605153885102622952231326733396111015291782178152467744574933158759325788720369996337525564829007038542922682664358693086085340192687085436860383843225871351813279417298872273754902805916795524466498999304672930687235271583822447935273490918487184150444358546110974566516936782619815145731423414553090892217301735047045800219577272474851385667875977519978996706811895433173254952382243279219486792538654366927428791407922249894652943559837639628257347324965106343467095712739136543162297443648687562127967878875483425264225421493786708901869597294892471977176745344625433968629911650437362594977666199707858439334887911487627581872519682376335744942850314379242683432978909096463765951426694221752359796186679731629636572324614979638253589993242139880444761138895293247580922921982121649334611441207797419784242514770767691460217928938441847998656072447884316916164267066919010485392158120532492748274485044153565287833018297585786641335386931953911882737904424467560374302554942994319679622110414087022582436584313134882267071979564243822751288362580991553848095665841552035519205979812537841259625914877032611124977655845556338223568903828413672413549749318374374758158113457548635102496893762866086625314777295424234507171405732014824675737556049578029233527669193773501924910105391108169937901680934555385037565859371465716652583649957849582093963314179339252732665541651099358940419958359889526147284061225560686464827566060641093283676646960399922366252935443562551884967015835002859238219094235896266653344595275741429506260308865878659735869603158256551470524368253512937277420632257573635528861159721629954989674743925076403919213838989491817546432003473491829947308220996754698471455055730474809511331662816437623738927961865785521168328393403772833149477137212759712008974829164783781248754792263744412209749713822573577897792762401257754119959758220798264854330795672453458467927505184659483967886256240512092791032844920945331502982058786364530822251575138765411666710022147474631874135669891604777607987697314196782992542398885449814855902828963347288992615379260247412893093766711411852356846227801923128087522818869285625969691559291424428865884413594283032344184230835723778573989134319818972366844792688042278813881738367151127918716419475458717146315652547852215240157598880367358872014539628187336568518170508336749312905137601898731824119439101536236091599978760132183715364816942238246284035513862651868185668634881446638930565138821439975248078366092939095396019777850741773810819552887547834813068506416185759551987433664477752994986559429404018137496022276331102671787174504098794279556976286927127424805885700434884051773941686982530584523905469648466477587407062075240837336812617218674489187835568034211917247363970913754556412775196576116382344942134161462872949299545346728414384638973899593075294476659929699211559596513363313946889915393486962614835873323466383685824186102326944045614613247927050534826254460398790708690221238324270326675574581467517985831517998788648217720114495270903198487728588454654012254737333518513410562757684267487380162423922754668962668022932578113156172783549342658422875200554047733901461414043921583785201252887726271614438171801347872864681337078753711210516578964739641997870957725247068498573511456923336488627191071427719285804849555324745930292693567405731763614574858344819057933493534363556986901456455947665215147444463328645231995736946122156105376516697558042427557922807965378468939923726915583185902074190933533518711353763453699719256014842671325810389593229119485289995502215156803870253413516255213884574717955667754500443588489266541773839896042352393292849589969613174664381015989541874280862567580538816919648246969007672687468155101181770917175237990321395823147504687730630057357246809408497513173861593834325329010813108350486741797365771152206759580830412672507535807232523987131131317889927044567493771104226452697538624969769275134682365275262333936354931270779756171520567980529871674258516757993509190760081784241563677855058433889473993113633654107739209472077857553364612197332659711582910526076855409789228973287399644927938322195969114387792424662570190818611662257341985873934046616268439535244569904544552816552035566440273851932090233555676652731369510908085152273728799269123446549587288573254013423221157424559366037091005650882762941795386286825625443834187977