487929314671264723846542282935967426056046274295753812914621341362897302451077722167656447380592263678373072132164568644574763146322962968424946714116620150496562836572772202411824708276917418249780606913906278695517499887955080501490770211028347815311455938688428895771268262077552831584867648882802982933248259711857927427052484642663358755954218973517825601467479785059845532621684686395025150939199784536155348104240732014658573219799691009419839068395120210622848612989737323597638272648396171061212678148718414291998354816921954792691355781583049456191686243885258389607234967195613263326835969610373928387473822675638113941827688441420962102961484001667793363753485142530873367286094629216542051499117784854419976869267111298713382916427434739272643385845191956363453456552232712644441943347215792679418239763068389235967440788321779566039224452612411713997778067025912507816661539828400705453864317627269380195116283143198652740656433358071936873168842821252446672529434837245324185656372491271557478767280241321990762158694585372477268829202165320373628926733659677259936722456127513071992784968820075872603200530569053441473655607216367925133853652518774766219418995931702004768308658496775771533696089008065366318861251816210241505581199834578672559383626722879778131137778037246705796928188793856185141190374693574894775165719416275652183746049181181143931182678682361959535839662762504382853752469151184683040891275316381015803367215893822157185172425870467681913801236013020690864293203163935057417187482626435137722469307174636914807728130678666586410345647034268169552272361028816359959195033265551216283039546208374774919104830352413571280272300486044583767006643188447412890789221989846875178867138453396238300444628194073481667729597829362590265715712483896528198730214097956693214912508647214775576703784573308671325263523646117329106202658769793656218859788419456018481474722241346031067588582598170669557224861681383955743293241965761675716116459946538959472278029731586145045505854622151872968278662522346305883426825162098672037867116774094561026868764143329292887325692583159341437069453412437968245825948591108953584914523403701347112900175378058234597744074197195845011366667186016762927498567974002728928823422579392962424980804849735881640029816206629375621909219758419875388034790333870702144210058138164711338979036101685449911719362511669138256632715940408238348466179632628157417444984963705540065442188483195988155850094305927502555622879478877659556414139919769844499554417147854153233014016503626457379924769235274152710557108081004880682816420452445378455867513572054737657790277013424614282482963182533276289298663176750817824536785602622450965659713211803140164061221241111011933749453675709232764891471666656738897841221084968067921037472138580525816067410493867697220876232252982568819661039401537046851932083601411998896831805156551469135655802167066232209583580195263509071840867874361011292569736432627427949851443875965048568038925727714886701886464227825510193579346214644957802636440448567128766121022709349707703573376376585995637798362747392599710654121662856945410058287664184870747638084908024992049751333884598405058136710952365893430446742204396087398344187280999822637662941656217447254878909697437460355593311187871959745327584744683218284823745815827129458647856778283565394805839650430047126620827922100223457525425697952253562959918579666763572754178966934412900376513914200908111133871215407689796346839258892198469424695494843433947081414360306953914592141568933546277985798090492853751039460599247330562316982554343266414988407684271363642804725272558832942012790107043383335395481968464381661428055247997076658178896585748063537623883050812103877963759531766923980796167795455548830401043876545045214698584645351525127659111700826728250512411318213331473817389941651483851636309297345031411405827149146423136813636442185292707476765206788121856885426142455002245427165497281144067399010103280117144972020748350325961401251451296281448749361934781383766749879215198770151917876241164616525353771356492128158127170777626242980430824870795569542586169777512652147991436165555997389609199682540851936527222862480042500768182982222364431057982542172401800782892303212472848690894786093536414454840865188852895266696545966162259932143353256937568322317282553498266113577062240111379496480282713407671173756561029519395799888932432113835580798969944358003751282562527810430235754977706385174703439228589761562702801468411790787135351270296051393529265195347467416437007277903055565914672776181454580711038879841874232963239682983922372777098923849546497303220861310888147849247373162994949457721125780131878857878344202064166325930948940183316309445117975688383116446592470996708662102155312671229603889611311255275895488263621386773056923293463560599327106244137639315613304837781850439032456583232029906086591795648345899923810311154346968331477992468338593164233504569998503279747420493996652123671818005053886384210879267206055903194255600284519371172305968873072397171314333199560574828460689526179722668469052281339239792254571651743632880531682662370154783323862311623152366362790183803807897444938871045442175432282794181736064349323757949437563237571842021676046607733979187310165863390184391492963485575297712447849966815136724084370689444954175568939644870772377767334523273142871332392452593927904690723938234670859317697667224444473032433960978562742917330702723937818231495972421656357301042862632291722881880855869678833478360116982644301095768282800245387902761053153296931733974765995968172733298776095072644716235202262657544801446576692818980213513159961713417504677689511507811303888056126379945936559290607663913055701842245154832621519147471735089224134518648962735655094459174694090491471675785038154486685686005850267165436362653584812027491972