646493217062704020191726173785467317615880516861318903524195397124881181782684706864343452858306567671854147059992756514760361814564807885441876781363997887240068345418314430256836156474852044595707717918588254468865286940287718077191127214828174665536460758722382330953035264154322583787791638917452572122817501424627910028633516673637968158222877507113483929308683119306254547577360397274994926772506968285039354356448986649804543676834907163284804658458501715389135830482096166741589873561026973033542402938794385111465697343505252342651172414072186948731636464865839002464806052958220737123095841170763705367906327511043312260079122554258293978367449894082003570818468124104591841700694014239923370978352446222325415084118298213878788294479838393688481448945291788235291378466212517581548263519325454621270851583177302451822792135777248087794376371914182545130344659809931901917907718483417997124151981190336723296566383218390445678993446370595870448051321250352537766024927244534935074217218709854867295926887365945365277716956766562811566588556594459225478840393172164242618903689912968851568420349654824361020350833742498278372305984045133602464474938473817951165410518823059227732263434283913518917488868957432234654422057953405110594929498675349894964475669681450466057657544717968301401924339368319420544194360415924073728531491457952981420120078471949265583002587224573763895083379878785503775651927682525112752396671243215721338946850176032874050156081504463028632560424317494795922662549780144074305909661136861259631063594254637640252576382898712645463699865057092815312394988285970012904722430633213676812366128905135219452448564691130758555264233268928271628977850734980505788753841356185295878153923496726555176336100994935029273312592888241322542158516670153137475814712123238589317639195787996766062545659471362685696453669620017935556879385047154289914271387958658278638111200941103678709723936605496921590254757612988906615465242718255528978422551209372372449555613185758936374294396472726501104317216809358612078031665058371438179812437437916340208753237130717162553173467540379596992316212179171133155735580819794609998595336256920747856754174583982174849760632033419581924427150483749429958933790296123667213414416238891890880069473081327882052523834244901703298345576244151479965000580874537263310711214588830284390605394368248993018790691386667682398496738770246232541279983634639506427578371502228453925982772090480780018048937387223619678613738504715944446664789221311411577724521050211220811268848891695783502158950734941031061564143616034437841663544677612975262877626358525591215641777538907279838400902688127084797353636945531207883615131993621059766700330992446954081648309434034306556441286288404481040303150243582478040178247298514282691267550678627248325610771416763740148608291866387776696775656489256105740526319299155290634017714163644182389180443513208325443587334033473734738238677289336332644947705769389813998776439683926153119587267313615369755671818292031957249011174660244964778239925391798627392505216645538814705241018041941730878939534709507973894718057279890958529084857459791166357388918900973568296703444641936360524210728990829625602977319982142432485078446750245598319487842190987565807820389456678991786099766882571031360845512679562700228337632597198982812745484821159191033584139177661985235337166897224445722950084533408294498017627150966646066554754224152420179513142555940807282791022875771935910679346594791241491178216553449247183169771196771844372646939812174694419411510326176212399046786616328676747888367599701183973918100359096554814572670352844159939536154742249998310838252441997551223877855450237668142381778535180698369971024382777145096495183829734987219603966862398752816774722153435430263956640744050476625744515549890946413504255108043902092460312854108686131752634044523774565146569867621280491415584631417380401483961641022344278329666695683137011994945241594232861470379671219920198084423522738139063109598572546586010506039153255081189835863768915976693410426179479770217156285013710133668222753268192161662793980911253001148273765331767288473755962089699506489296405130536319485443709112237678994405043591120731498293493013049235713527507561471054517910306068217155104899445218251816669592889418164991991833734522859885299661539816641863061729140473975368797025539729701773059144613623229317198882965804647424415902446355716277982797979491671675176266106185431446330694568114716458916611742117161876759888488893392574922988072119048837927868741994505849471252138008186236858466116318961227268023786007658979746393332526418748977692626497083246327855020542429932943599726198569192392621242280491288610512478419612925475370386528366023624420736235713751635670813717406868971448280081514850702747024083999319839883839990480119259944898175798817967551693225288056071888900631139928597215431996663100497626669123852845891165596392672652427721628903259112036711497842226227899871583440295249539487498838491757649342700076645406433309974928648991487385259125497598681188146098472113471583204985573619095875661873438897774382147944272053726802890555604134925381398136483202013151982663641306808521891964173989612104180607090918073562864261884930052741183013232732284289316334226913763931032214851883255765434768172979699872986356926223215225836198096247717533343011012348872412170902686701161631650284553574741878639065733336997352393667137868894120294882454220781745867590133679244516289644472607281909913193587913699769946582606392515213361787818536689981487261778488439808944407054016277429844652638971623172684449202056635063639636225473206643696308800215180670653691346118937489754045321567924209442052511203480216726101849631075838424661225713760532233389588896197722745520340783918615053336382354541115111911479442242983616564179274275244345348370075743068