267440477877245314915166472663701294578730903142957049228518974964454575949135628033193717149716157581971103449301391937561911230003558956536974241114082856824985636414559300339559677547014525539746675941667348023143361100218276399117314482629704997616160934394309285912096673313859367322303874875126082334972668199030480743553055194865307801701454223697364623740484395583719363753593778553505614474670071753752271258313774641932281872343548727543096435025614952043762661913228798629784638431663572378394450538051612791866419120355446134080973721131642196845495282424157146164723689337592476798610955596695579542955101520779428452446794303933856780625818488789436108614818279304628731568708841402695738643368640332157532200046045405207761766255351124695808893754398929477844116952746283918089362254816739735860420786265261575395114997578002501448615107106546097795660749018081621599369464494166637557053168299306238061627533795342431433466228777598709540210316333950412747559617833464606975523659563645847483280315971366675631494656976004048460221044884880917265676400982052320166142429927971810112969234759364730559021459808948137297305119517875949390052119364197485993726410315434582214642481688042921146786239956596947063549793579575847820470862585448522930181629120342380286009608560255643741634818159399112426515032831306514977616633665653792832339337450245188630361832948725188727932170271253942764811183342452639567065347654851218240857046598445340398519258203562795804394126828594624509758317565958947238028018654279643558124832366388679850327131594751815304719434017083113791893230339504136919719976958259760832671162448508418137077890546858883278155775437203726954993309946255195489385856943262245827789202782384981167380960843881589153352647812188110418564383232523285827281880798741306839012133102770593177073561461933089262740523449312793842928390295544062986013685322131791272789550845917044380195036377957420816864754573360199107381753633738405105833837273411575717510809392282697663872234767695398255825293378888172787868436314948109299431751717466642725318046967279889532662435946236353657280611746431978422973680046794142139843173944552763152217940325155402399394324325823670053830797645469452459667662532458833753714763226308964749971514082468790822889622754087845256833741112436713477178023523187646713283908127882732329282756677134321550455662377912593194614306344114793801883184876196390686180628376801481058547407874441433680583497029977184621768114527366331336860950343688628531354042656755170432002247326619235203157491569915071999446594355187588157449394651448466774652262212737609230027667973811463975886116889336701842891726717683453046504074797110211285375517669836955510535249493629594450982541130174635540988717393095551631143656112577042278305265661228683819460983493440423048821176062935238917783758828296053214018369882898081283347884506154276728478347872841876045585727137405173954094874142308931933345608195312417995636229942936150570278322612464584666207819455036343166981042089992872651085597159069938843229653857892777774119685650601480077991253972137105358714226113734479645630866405778127955814861855701347697786429653183691486658965564124920538317788369586799782761814922741779733829098227045835617260728134391311753642597625529365580186613461259084361138140922889901729606339445843965830166975966537440897907544270469859363037977607513626674761517685935449076657755709675785045384649720524019665635075226604220163277496187455398574901552229596477876336165466988581713486994545862878917950042675300346795956246919662421306602570679414098669618491043846519078570571310302741367791943921619634817722051774428261205146194132929869924687212428850114192287978292941702034564765010442539949776940574484238557643905349323611953258866039689438176714474095401513673917737332044168259271567214244178150116009362114543960481943584745192511359763967699767951097698433939245388234287362775262739798572340752782435949171202093608189482955973130795829883507408670106734789805557248825553734494763418581480826828591142976891384392860777283249158410613245691656223324940160696807500296871137976939014886886168766787956304210490835406920508659856042714865369606916076331479616877691989121686468305547804433199270421037950086175251151832399142565143108455584234363236131501773493206213379229734985219472951101786439444089447403252589348610075913140627634198468446191345911489522634619464836145889459317569327360502922475958560302868399651308387826542608034145335558696033038277924985426113675664775394218471733626363012481430720818854391275149764243375373779687846485145529299827819127522752516808150915675206522074941810634427283972224813856184465712987188313415678157608309810968205312954778228130423054954296813506811054577239920430791517608590989704900613409694124123606962702838785524379195214002978457884006610513777593815063668547510377464961802993682281030767938849883120516099708599856550944507029618375392102596196421077782985875737175658541966020588980427294737292841530309988546282046579444811324670203253992696817591131098445630039151926719042042644686993728410095072087864916467132998313425221616713619986508405727488923797096971444528811906189631419271532183755505562761522491753798833541002146024322468731436734325518216777405601343294067307511484757059858699779496545068693462314472137865028553270141572507293155886981713907118266338389640515905717647565072787160683038738552897164962671788871768761262659748275399370486982270693935916173341537554332176764125693494907193617454911253631693888958041042518568494353747667668592205103599974558296911986243364592725018373386995365245720645732841673498756640456979088743838878185069220232733912705100858378558149369453943671596116656164644757962664950380942175709456603621336036694282284783880597091204617781619732723012803476925030823421350082929630