436357587967602893288627154167921291544475069554091135091844814121898622186096106162407024686823690791132179537282397996321612453052302034395234824617363151820758932478150387722303325542507730697128246102401180669282275076438904874922906009570885132141757441114516928256192464186313123147699976266399115183814740946004618216839487677124255041182893268378952119268491861595853924753552571853808950799624805917838486925980215094697762373891231256853256930858298093371260555796615483196897667998938409747557853657546720363244622395989118249153429475464454919996110169533398474222559302197584092162437838774392232656771305416552554441291027832725305492783165805473687246962780663815338921199707836960176421520343596007522500162143990428083262279074183766211103454937724332979687211495873512297528463826221114374178599922553077752393991277442852223746360606354562126583637636533309600936447786961447427721279339952272032096556796754486156577077906622770971654931122386312680819241889438148406113703228072025447727973260314262158746968756162521845656915046179057662911928971615039622820289038224813898833550621959857428274932487199840222343432424784673739224561998282253276815931962604506785175297911644655354433440481328657400212234423145802783981710835253109532006328278558632465767357293281254990402859952038461306313018983731581298769424337880336817890592557784305662421159794812144027490358679961820984464081977650154539741515893074245082213187915948474492347704676892292197616974051688375541047887790702411325853347015997215725819933989951959273974119994482168414687160470050326781163799659820125940818594140134922564778229884277254979484383420178791724172887593387102869897737636654687143506333703520122329808070050127668307429044472287082387952982682663722378861683078722620622957178650270003156679623108637731858939168583816488669085156853957651165173471062681953641639770766671041327579524999931870524643948482621823581400829598099848140727183855475057581290406228073638405985933165378293303512256956422955920359404313546753241979565213921840391549348718216441278999708978365507574840837441048348924151456530418775379753767612996526670995333513481298204578688315233466704581771422723155512414123620243210633482151936374167343545645891455948059788317271194092868249235001456989832322361666418815493626245181864822627116273884660056853966528641436127970172286700891212833863103841715649597212333277810993849764585208762508193411613171543696275029171046264399448734682444787291763181384100866968205707087611722985698585460116187569314715832942277784650632190384697176851991914596948194945382416538824157012411457718163698104266877434439272816018753084233499776453944756274134939706996010393371307983829711481965889683736656432194420111662474485678977129541625620575390489470757082686419888195837758799369525858610582753162441434615211548182606946197493899872269184219312376820202075194723148002978839424683496970951904818136278478930877158397861677786308551570872423561514179765908338122850173321861866251046914748715259980388434291090116944698688706484461175441405176922215521247256672724970385482166870668452990562697229159223171081101196032131721863704198528287755982074841461385238647775345688401408573080715691316248994873974768776276647510096626953469221831188782932745655112383857698570959999121390623170173968394933996660848857369318289452724195849213511759600351832831907958056593608605862161617073019604994774931555400583931204295300779215085914623939749322353264535591725166753909123022172222472773649735171463194945202146151282629051483527227051508779448276253611641934264759383349645003421056394077976555097241221069893325535048159216633325642704943846954733118101034957392737727838593590071706740946285617088267339399955304738718755101354444915426289851189077009595253171366343716112928073580235320341792705756231561264625282232447811434526191196836069989307738469575056150219877302480803895901098609561794431475984197321822639579558044488447172937383337985133127357013824232561964038490561024394285840977815538188833593211561424595807808265189218593818166970301517279529705815245596227962599397187375281817169130560108607213031916165859919169404822964258910795392968546750084356162840349022689730049879429895413518013172234754774751684561092911807174790794877374792131487328917978451926579219168063319250498286880529412496216952115891648657182823797190631817797372237560295826374191952175229128591927901538585962947069971353422665459390326343447932826400930835782627791749788832354013006067158320905997473581251599072522951783045592412144717900327634589280249032039321666094448962395524892815853771020488638193721291453795627544536371113628471480622866772368865756069975664472570128294316965702713194742021182446277447597655915315551439144694183616303229581833218856681710907572130953942274482670422680262657817925728453351899797334346317239854124266213203078866997305405645107373809914893448271965680618435966257372191590288974349319775982599798915882126094823667087939965486302921245961275887446758982584141621988474290304887369140653050712663357744568484120392912143649560094688244637845446872902951073634969121320418549541817975651893771389562432778094013897911227875094653888823228983554447512042263440319136888552687430515089290288009555718841419827875791668158172068364903094700486575987149255966655181149711049752604229801870721484092763208226198673570234435904156166790505222953337115478138232814418743763983201581327588723523074626739170667473769369968041352735480757022395503738102583847186741233862730736387356369029874524200095649528064365123394426035464601226169681806839394933644200199426316554424497517223758735762553396994117292211049275623503187706893826363229060454254704953889379679472914494903589559195789177411868681786356075542801026868172233472115519407729862787873569962730987053856090537874