9410908094578123831446861399855257915943829886409340708620847278879759212658835699821423791427074012506596984035272627789358627189179467734864959146674296358873487469550243212397501853082649492743565953377426931785501238830340525073912986017932240033073262419326097937864095816211755160657375181954587578707495539021450754262430664279572667760438998942053686719822238818723056645633748259582244260165023576642432725561792999388360662416605421725341432059965437333270863896615132815885626908990396992688621548491954153731152874184377808264567387907089133263891670851514266343976141353588563934810613066207163417892024514119629211531842192650094281714891161245336104284911551354191757463822725907433486396534291759382403926368143658223798487889159309849274635898330798819849276853128386384578233065973109159271706772046222020498735460856308661977181042520953517438613289339413665704712550695472413563135023525140199872463351587461021596199489401818115376493250319856767429127050243109928226718399830253372132256810884222771838174881118239480447755767435993584990439983731281253184571908193882012116835459724955865673557623417016386825131024433153213358098757240892724561883192687855199104713380344103352901779876971563349551115399259016849429354131545866829061380751007906563897462607107892079679315230006830821496373842282170809699283064603229699440205695851569206530139797187045561883574809457870339642527645466103939768785497416699687442728966237233341492267742623375523815476936181230617432355846019464441680748292596827619446841918634081987177997243336523455958847412938515551569992087263549962492619391956845852343707748888823171779614049002265854164437792050575666761175462232272047844531363087243425493499517631098302879776882394571314568675574836952517694174668678177322973519895661176058589215721488595863591531676862574535448856301512028672771367524218560853622139814864821651434448196535667417093988683129336148945839409356753796472466607913524057935917125869821909918701840428629571778850767265946832158764897177426614959063167540520045576779512011756419687595654289814628814313862368167558648138219764964977553928669945887482653921170042039030146381314395443961914500219451168799142145458730556188818943868974462902556677724286516413719060904612026867341933651159523763098271059395838730280888279381891532055729865152163436530659187902939609911151419110346976222551967003809626955154372845951148568542056393774021426470629566401525978997118803260934144774193961516289464751338854716138740166016446868715676184865578714824717380663636199302840173124547076214192757315793406400224946993235990602250345658624657589389248562250916845293951260701176836737558224149562124977435333399181531135974982988587972973072547168950513237004284211863684374120466717603048741543633334640734643804909261131175600148111661251173882782477240279099717997672143330580680077737185376494170574150223185545070821346561228211344793727363042763918962317431000153765908272398873668488528916615633298890960831585622851341384545337655453782879735680853823059586967287631796482361821166191477699516271881904930013185494182569387877724017435681027056733032082161198683879062436277853255344644533375211058935022231870657277957517586429439951158081897733203788554529848426081927323864639315959591621233746553864715632505485510158964360339168879248376339549196856754885691545848632018569711417648932595625602510737229351219847683563738647371472117168553244284376667957838326304066376295589863570761670552698284138059854527826813477357719431738371298412278831590174068968196190311359296553432340762801120457601976982889723961732565385833578085822496711598567133116216408122592703832296366150456872826124337347765651539884386704345691866326840268571803614299741496267533951327096056606473638300343851620936291975301850555405269670867699371653836681736976899332307920239001776056716049650881504323930037856726343254334118504658792378730357723076748772421017455278652885574047627766875395428862890164353550783798761231563269542012203292511554539542648676083220750350093368981961387964912837416569588502487519447951303075528547853467949073754625723665512259791762095175001732617374933258052654155511075573257459353556372561288756847899287522673932335595265298820649401133501190699878726923145636514679673400327625948554357263355576791219208690575941892657458568998413321249217565786788265192338122643941981498326409483839512198987438260490433308763991071248224968237523175794478442996439070534656402713023866468438550268074581607339092271604327765426619386594952801691494919303845368537082951921389446915171875327623016273364278545408266844078091774562116853884326727183140913236327759193977975489349504580548038213991651989280784130562173235088677094957712295540560135071588433342318179513847207453686110241223423949899384674371584631214558779633967496817264816643818401976559754571425538780699042791884397541539569293091131880079669917761944951212666488857828218476836983344306201827986215839890604731254037792643102958699964643306388271578557983385697936427521754944935571538432574287667323227213491703463333255826719835690058448483875867296572561801389324936832260691773442310083972485988113863987567571511539793787755835143169205278669174457711601394971435746299371512768389311403945962342311460571282708668973353038455626424995925864747677989769914657316832840947897304081016507770426302971146850428034872620713887672749185226991631318597400127815197176952038277651222858979460537651450731495174476584151051204108579875759142107988539044670049188401435048892924899220468919300259036588099896574059566880158218018945892009429734872179950753838485842433543997919037231323907554383335064310677313909339690791192578581750404503209924038176584559918156005731351841570792243706645752883605592654996615193287273881822441285701451959397803464383668856314480762326417530711520375335