839966851779637262596619823812447870302921987660474580155861523177976620948676763867635188654195548076436303353231719539513515486182093901794142116502281283782556628468881352255453974678377234280383493244794201927701973954160258306739837864625070576336593060951592996663149672371971315660678446606949462861340535786324783417955617923396249380572595337999078814209447698112461143970514179418253949614845320658042111845376264459981729635101544237216131113193065411416579635753943913830560873199220829291902219634317278274952550981407376113789402869314143447051846013988624423559980539598857728964417385543728352945578556985998263965679951185757788122296129207588312543550664394485911317482293096612795294576702538794532722837884946097204858698931436153666589724984721289579376193946039184834295568419981703822578239726876087249104528180366227380129287817174745445494828134312367533488955424236416812802449649823770774638133928090045009135862426900625770018680231259344576915386386014868730458292261760171193236679495465226118971167707305147843256926664718765137793141504147347202371545032621458415438471000174203243564249575493310661842461842094405127762930447377162484293798041267554938068331344142200471998063948355130991255552328253921506732130137749238482981412415075783666284542989037856810428369620607031165202791169599114642672589937866972965584582401188048933846658462666632429617839713493783149479923812596868535509093353887786878877616953329313810063048034682518259963378486998303772179476292275144665240197492583460926291558297958818149472666487973865846611965255425558725214288503646418638028140615689974945172430055668115579786898803173596853803147307419343836233754881858381480764245816447027346712795823590282484924622665553838273992213396692161288734763902422993226980360308599521667375706797861648006405410952264971611739305666779847269214507114159187972183895626385987890248488983225098744859512637654838986794687726728617637154268333748361562669261173998713760646022734645834926912058340278533794391985716796304964237631428680788148805811374416337251268309874502325346434490316575789241651555402715662238308526213870564680528391896427157777178232087199417681945359467860072444226691734532651129648601821311637916876163098846788546074174468214396205945622594287977367949099062149245124959257128979063002564433508360292457710357005191599169973913612419788084584781507185880442852081977386497542450286928928520695705260303981763229741424399132113699782856071356755079841293705257165595819373226192042439997634329627378254680946626275295920148767204641424246968761815834787386256406927431601264489835536511112611549562592326657219083615562438276027021208900369167502312480423058418803384549230739024479294350946599833201471398499220872468931748628615207494850197827797525899382195021481809886786252855769969615798830679144366438611976424382802147318825194140323312397991405577815789908286128543771560305215966673567231525046115266607813333387669440982674593921094358417740217085559091761205467588599514515181868187977767029955805296249617199909760671904568433803240925121119536809707473417727658121086118029725498848375495383934707006535716415744917883814526861160955773369273752887922362466114523583681395099419051707206126228862101417367443822141455738397807728815444753848814675774141946205965759641027717522924427473559335265712367408942782355673055803347418878143179516328444746234380447343618906227479784968708710747996607899314256190996854368070003942276378854323066121839210296715178840555280694123481682614371127531258479841435120566702809618926164878753749652242817258739614430295285127025523889831611408581668630432831321359952861351117325681842037297150120893792307718508298497729636820863154166210438494224347386713069215302336092979216990304609901160983981280723651928548444827666247748710185789096874942881649893653824689045958851207354189181378504437949001199250761804627921842417840065177412106932539783445916562028633577438920463560221544979612117536186069051207779353357889105543238243769496620038831324149402342098034702688509630726191658288482918687699995660114173053372918703366594952065357298011692079904863339643667519361551198759561515851485634044703761760148910478110523486595055226074175597224889369026125175127115307924255745296627980518524611272912895673941622507742571472723265958778222441212367767632057901450814120733520974870737684145183178162486136173187317263316222218705426799671683587109067619045982308418126588553700568176892636772447433097708459211154261730161098331317893759879650624853664585403198806413524142262478433581611954569390472625775588443356854748669345074289937972695966609898948234981873914099800697978261737443858601952120835509513473075227773084306654615184045136090173331643855326199730718479532634340070266653843426942398703830844868921334448433856091892192460265466402436887223978978890145550352156864793717965929186901651658093370652459486409418130694288725247535180160275482943877854017761956271033458447309311088268125824026470659319892570295559812747673645311576921139846677334712481182834284552657706542615402540618474645925157841226464934743859318668484492828917332973201463792415579922636361688037382963771577898391373293612042365863340357212932269032135592486724974560794264134242116220703089768143329223437668044710980755914125206635354691308949779228614650895222137978715112584257055948681237639674846868573085460194174683392206939243285298694907146697297922934681439163243280114293878669128814582379384732541662330144928823548309361312443816376376952381204996711667745396419606208383706963785948831325831778126586623168921021872682655088368623880241701394568190208977620959151108332120187455918290170665995956220965542618622445885769549793369774659709991601151782741807584261539169410144440867143087925615185546403578312837940254124014745073994368161026757176