663932598682425890566270914772590638766068327687409135199248303078222527783298298486048017483132309944123936656852755242948510203454241893463459741987577978933565797549918130438385709818621232487019174649350870792206690947385013934538459888949046747107781199955635090321527036851247673873868666328197974319743218892812439671663455399068704172411041604823075771224533601511305965294132192454421989887192519248739831744913854881302771272012476412246596209510389254145562963306808610721942338130238659773186723521428503720905521552923566776462583777235119199395479583735871081517245187947457018021697847063047183814550082142616206768196125839157313687272334682812930832543789232190881376244672897932595289401935429000531912283673712493321309490854895663291051683639106513788103152815562652166304689343781465785017541213538775742424330812628387077247382789694484497441418402468612399038698172695663362262716248235864948764384981465698718334230589126200400945748065584493188718283753097678177681278258420815208422332122926165286203322231513589157863659979839471694647845980719128983470616748128932199320554607855717871841464677240822202111228472058974971654981632877479242804819304123259297984424814384671387359675427310642050659316077033495567376726710168299612094770877699087296367233101494595801920592155312593446588790539485910413045421899885641735067834460338682582984210587977339898323991967070720459287523144460966313935426694441932701151778532207184055294324563593948566120271141971983207256315062878773867359776233412725825194892665345965274714682369511899938963365853838597992826585710645895244556916741816557854693196034897423383984097357284635050024407554971979291629067307252353487165450379151873579378367847562084256172544211618539686359342038251023938439445476515576683079505840097909561658472997679499897949235286471576710823186698977527727497171674881243472930474545023272177356234439486280090662883301198555243861948833267427839932152343383332003162938083967508271731165806372498153917555895558968231834421256747267735124420423952585134323143348932961088041725939063293691680537561104333387659455260360376457597460113598807853526251594241774526272527097464424158203884031555355331158812146733224317439486241929194237520724408998417771761373514824545121866575113931642331023994736536097034699361017222725344752866792204497885192145883819103313947098324140892062832323180510491334897180868117799349057040841525882726714722692385775830005400784627494474726493874882457665959004481746584503249187301977826675496122922619993193332469097124524618079067772494563278058514173035728473626171036362487119301314288417741053775553312622428992830627425640549321077539040860831807452818373835748267309754790191534809282892977988377459118156891445772686069331151369128248457975165551972812445125471438397034109594973092929495410492413128314782435526876914230300039028603316223867161653659482322132415307291730271453940600292736834514422867121427320821103777619181963834611255258513811333165489032925620988222053525819122122376872453810738508766597026987520368252467378395821201294801655244845650521505599411524566895697731229336384401128104604941340426649256070153625219694113040565534555420716883705098088632822513444368923628575374518191697426892121034481069370882991581786915835020197049467967833251275434233469825946814717384517469492006449623881683445857528064446153933385332160753252042689158033140393267529768880952085823701562798886534439248191847478807091144118124969099398658411669693814198265527540249831578495456968375842830974753781868890039310493613878500524163260331030226489343354968555019934846029052515969640794059265464496473474372597333307297094028991940525237862446169230731938185638827675345930985231423904212699058135116839734756217446094136748053347724485666256347711695252273238129493072871908573990861709878194752279114824736841676982455178955496686675096755246436068617349497737116889479455348874214547419118332910425560942751723060588773178506679252010244388312811912924324891554183704031144404553224102313756255546445574258356372191726833887607728422631884143760263862579278316481208928227740195474397827963641427866287660974668146777325665342329349941925519417558099536114679377548457902581249797106426336981724432605715169911403084159614793197639441982916384118112414935999002878264861045398522545581670997133945262395385931814377576108568882742965263303959716252949112270368950237706582379056727725621887229926622095426359623073756229283253874621071903217453682479851541687661679080508133833512432135677085158477962063104869614221897345974933297212848619472422360462923845076364185289056314866062569987675247434108419740259903259310522215207732012544892396256122354012904804955805523745137232557616244250462682987797187997692990852363181611964256437870167380759998345551391496252561232221791428698513238967674548532451405694933747866563817815278244544874797940242079752284235611167496234013812788920377232917405367071395197829861188401217383479499283669804618424681135214113494848148770789691150418292411269849841163471768078318722678945440550705118976787611132959447155942545614139097327192444225826170689619017817038367851326026617612068291356673669417544625778484462465364625819395431556585844474865211203980431053436485198519997419257052765479885267737284811073046622475788992039381127458578304261961455158610864601254932151351384395430591620956283776349320319505718963415128588056375733377627826567772778644691962124945648348217660950275572139960517530103862529928182790617024237188465046673844383456817194431585277554525690477398774429755835386367218882427256742029749232802386851189484418395863532225510078592512775231737529617145412008965634590412142888963699377109120811844486119384108875346606577422614694020416095226680278562482805944744175392461019743286684733243351676412393869