966177004238112391066714409465012503983795554076595586204182908363623541741914122431566908753706742304463378992499210647757776266199796187631272038012452326460623689581457318948629758348538895532262639968390286675450598014748819416229273584357118408435649165767421249912246533785141909524931873311920461856687341343016525540204052286320272405199173543347682296716791999153886758090519272808928144871342975680485651773821227751627516883253547444333497037596729679641286884554955839362688721440229093842564723799818065121859127591898739920144660245669233273463077347666297288375142606984494432066362106896146745895873158464981469358027054693854541315982892134284152134589754589587534501912751228983569747185028455583345076127301087959983055846888791244500619925476596003443073268667194407113477960300576072328736216241050502208096094581605342558092165386091607480043067804724513127254577673273477612008077243971884338112444188380159718633337037636290034676645569324468211742372075329843370367623412149748612721849036713761927880167888824306952611925402483325154266432463334737695175754563750352299652393337253249418541563129785380328143456398853176267192216191514534482815332087515556443691557706111822052775826748076052228618245676138482131058769919196766197458475275221630779384711883197340698888299632991287059833488449458608349992119883598046270183641599563268234642567127784737394499969495632490164695792332460234702832121775791603584709781666750868151321753930370887453343517959939339848066566416330184963559409856822536315123773573566449514855896573646189427108247604613853133272703520254083362631602113803541594277943304498212805145914521759186158466713837734549824143195849430970289543276325395181175146648185713787271330190014154257945655698294990222914281547326028858063812538668105121786626821732811950485934176818935644915019188319422366952314036223683460952698768761687740225941434785726034277189600735569817891887654418467433363387523812781557650779385600494647501285882446978406352551533207747637025375967270713739149577755922269851844165585612778545329845061252825815793197890217569822194991027755686047204399979035309780013169583778976665368320212185876709647571350954182403235951943201742406673661844813215114381803852526302840558868754744848480949019682724817987653449801711736523242095662798663828665950711693142446930172894379403795460119792819410811591282396784638304117355517036459271824954329658617983840113845826280268144144958832678408798550498027161171815924822513020848545387558367657352880452511822644932172312092968388802667579634541593133274153321898735219881712008679162234068055346793691592914943593617855747723441393424427293037932927176817116419108001343872036176602139815992408345001236724818828726042983365285644221161914332057892754827060136909790461289832405666976537168127419413931811788157177754947248251650457972756584471234757727142190540711364974519731584886014956440782555866302771277300315528023417465681340523327599896452384411678196940229080834411918768936698063898266067347456664581835839984576932802605311414991747055526756549486930887819260244879932162446268882371224518277934204836724109415193651812894893091413483313169033845528032380125478014871373435382139864916535145756725306077733993491460455339685140149798157007814925455604187530667393869727324690006643128796637924991502125357712054736434718014812232650281977254764622977240328421179820829438996738918774977080902137179775747082184555644866576032933284484600908334789282772024279819609483530687073460753295216833502453153535612561868731630238091498127823301977551789101364120934222418368148763621432954916341039745323881979551914794119578328521808962994277441320281851692507136068120853886374831624053475965452877808203632596768343141749922519187239683698751936270155975127770366736892728372529443853229527728598015914276683283993260279067755668905977154113199085191996462908325317430298030630582604015203890076066236668709074184108119119744339249193405040554720396134920241975063279641833817936773663411682431798972815197545068975018234507288226167201254306780436561764959378117128433271519418071153525238786487626215336517914930115484148181967331252634017629317645767108697855571567735447696355920107948695902331695632332187355242899573282365894691655276793303868905358107960438010980289717145454890957416973836391730198512408550745958316285891014356268579023600815126567846210477861685412371338358727729192698085679747934709013684756234889124996361857624984468691090132195756777634349624015555831084272431880910006260719630408526426307195652574802255702708311055801613137990726319819296588483915420086958269124590746594124464679454471656001947552484632970332199639804859302269215700868586014610099583113603539786393664354834568327213431910297341067425897116128589591779959206825959389401222550885918943855982519241376234928849212366236792938231834185819139211453581541013411916446636073805575845921309711078962129588342072632411396388684013884823727712054990188096068453823916872155992173346358827431211956717775817771966459162857663298194186742376391710208877320048306286154795088417369334963214367394326003224786737167584841359771452795409280384341874505341468452863599269679207997961481979464208954187376764925180189205719595762125962443978139343297049765703943549541495507455307063600964615548465776734308152869128082074643458662158066955647228594835972976616007105787468234870295363022678783813466996536117662932016426997677789726054341688698839544680392365165912165665462482852460925945113668542520647337811577189720938492268682665853456829180034138444970412934330701287172152925312334656432144447751975926683844499842033742899523196833971766798143617191144704997780362715952428846366482674415397068629690029581510127202813303967402361402235677873171471697560923746510373674323212260058487329793321653815694712