977647818908634053690985118405953620488926976645062228126798509182822621050578542730222984665817052144956553319664061920867886253829140229541890626346146715595475658714285779944433364929506259018616233125923671376204565887269806531066930115429454812385813369572307183267936935823229596593163589037710578457284985175994354804306656756660197926871275403991489193607234383428973176453365621990083541701765558186273189096648954176255462249697392743319838831658820165805110749830967007071984417529459061270168517405809347698310374529955225438484945644048768132477206310486165311174540376388325684565598146594910920734715398935012931718111204189828687745237528764745214632898426593563997259447138502999683315756184823196897465162137185117682362396719242867837096570900926066203128474477717820926714995054630230236743226053427991322699699196790853479169125369138151431127225449648072278356123817650328999241406754638537241839096338521412439722868369857611400142851559467707170669349939697487235954257751173509562043246773594881393456675835566298184458029694681570053472591889292381793405258939279193677956468495860736791223791657221208656271148193950431352428335195428740633415752646688197656664104665731334435549813085103139516384268006328633453960541158871738418575799702250069151568791466682590245116325617718346034650353402852225828359680655026344772821835311297400458651327816960508936805210193522948246288925938545562001396262472777505714462861929957924496378142738467411543277848744241196603600973953021559326229746142633414157141718749623560865675884683688076001936863946009916775844424488916060186303026109584815418247808239408410447979768847006332921339833727826685677877539611082071753531099273260232444195291381427849480837521230183489822494519252601379361095964860894725071268179639782793234435397807677421119173229923981694414560984163161126503470292436602511431124671228953405360575637901839967409332367971986228146587295547326791868376450310832555140888538743463553688117798748866974856305479159066551024589104507216865138288849846653443787918767448255879333583164706357477557085288912474303444536335666829659241593956683530996574514133811769044257106189759945221977257190566380769733534729548295855594132232841660396880392438245187613439543952568044990838646321419596681722988284648014653884289507594925344986805480340452611987738764515618952137006744547163379751402778121665972894411259597781845540477618872065257272593761914513384514545706105236480419309998339346798560892763306169623297888351678914216335516035145729357861971549981545299887509158688463547385263846420626310135720609289354824399849949103883209359694034436669728087209542922451798701221989344191637324493458775876194778427677192691986198741662179128974936472343361539113674520431976058479856939916214172616561024813539833642572734084998138398435181431935690001128785871937146541975436214972698134585368832353501726592706194872395765450869711818663819640765216012104512427707574882913913824958497256061699040423652840715450881834213220431516406371678574747921522872811199906624511868792432362258278382843573732249559324368160898586477514858528387531482717901204357677343888853304263585385196699994893961434575768817966911367585342513191049089963049316941574874108070227291311313226645813722018652486513852036378395323343128832155087362515741425486633683152312547829962495822939541493806300491809143527261026718406620573556725927854279378383106501430952772911078953419199872631112364401355840966296268707522914736342631378103411714736006358488476966473225415589237930122668030755857859967781198296455776831442861704643989951743369869459223434964926096276440975524594078946798889347807435713494477579863473147198537172692545537893948090795672798851617378766685214952662468771885658468953129797852517051449291263696047625810523298714743863392050795773562316600771646624027466355088611563259931147246593224984405695745851553457483738408263296285224472185648277803363838087269816167316659726276483905854391648955541245596058381222659634737021437232783515394741941511463582513198277884892846173321162445506791064664316236995634649310739973533556656174070418274773036897487039887874901939729753405472328831413917934387399683224458226552303436206948992050648122236638725763720325730365901482516931247760406556648882901411847342771159045925996225139316789782774048963940328698670274154552399233956625351295022704961204830759854333414785989707587278886454967743368244496869322016794991545984917163472593616615329782183128270336490789143177139893707435183834273747731271067094538174972977172180563466448144750859706950551893783024742127017617700708374517655228288151113657550452837770576756193019666471904184104149278649633281786814845129488288973444201121152299276152341773195051243532325448145362300263145031341450562887085726845527878304022784493859345810951096921613379478466529960929452581161668163485545389474792124411633538761311388892661353314277477529587577040897345821619138519811987214732971251428919257738013597786468035448751441073461232944379039523781297420399445802703926669349519903646267267211250097913212617232222175288126352451724472276527920939206279358185314580684052813676488057191004301541243778991062305210922571711365150453940848373830272020704438929345447937926290443191422887342430401029046237349457342735013825395427044854565741137245766254346997624546212066217653081006863152051133013828664676288322686759842618085198781721772511612774159403433586722699152375054055884884461868731303125534453780933386775947435618619467508663584576633703991101336602841967896732734803095526244363254454793965924316348115905536840954924321860568522695830407746907014488034275600384045393184697246484916170738195881544882883669315114053271895147797419404980360271648780230776814460142483813354578681754342324103228732888374474939991619086444179388957