657738937921566120293745945025732622327720350213998417805213913143558893067919748544582390911718019753370632584765332766507925719230316505113866557358350176542683833328487016540898277279982981681347174444325836143921443473974970714199434445274541893470374855978099537744804370295407904093192479614388332891138513851886593779289919837363418862540761599362419693755953335452302453722288528031572598065536185716076309559972668319138861534963054986463582712432346522762277973491184423255514605165856261492075236792594492827416348815114590415695426146325431135215670196123825928875055517399773951236837450138411168851362907942765307505382174835877866124511743170979662888653246632380476326734905728636873776326187946608269291499536974857745055045283747160247277566462546423204745796388697320042459032404170148282447282835229279776180881699449677029738364452170556351657226163628368584402265954279558212565566388053928789495301665426386311873475072530388397936661524107110342793754774073987963053359713438461780294237579416747824011932715384942993176716239274777549308134354949951835544369448499358803675748573785147950987235522903252411673921872442843780250379323694674669866425263053221770364883056328960929452977132679931244652247048285718379092741558189310936075474451272658957385889131692814071195666817783471606791282380962717511991547728425358555403073498373115280295923513053173405196457172502617494063573156512556797972964164088471520496490263034134640930519194548947675799914887978388846561651088127658947081468112170252239322821783969555661719968483476623273232665163501895676126369341693889458627008800129954062705842179112053416472325591389235503133508561841929980550889289045811315191212550402135134424855798247644486871031290842010598389970354422414753623834906275888859986205702444012746654563935755389526695525803612380564865259828752911396530712043487117789895767224512566437425483636420921505211858669817907358542730252955527942234342143440557219947670707777171299744081136015224674509066921102175028996551446371083800560054731137582988114308498550404796703289779607900815504444617294154444315853238433852917786720281148327951542819152439071629548373144408398829726958484479451563361551605556728239814525420386468016441132428365440976266573272846095569142763398393881861517578799888272484560149652232264863310157890466216464977374752625619874555638445498120357136492578205434642076519139347389599213348326347156078335794345889425713214426723893051284272984355345624303791085796496541637130528843826670306788554725558546705894813426638057129549418404981283449061281881593553481334421396783101126344625860818532703137594464252089973170114738635503047585752769309561537408926759736412981692762589804108548907496976865779529841195340988347618479986675600655871121178964381631123493852836152129003769023032963313840524084440614128141850319920758347961985321838112695345331491393857663205593660467867494817762407686787259041838380772865248399261484337665597144967092207927463077589385939058664644008280820164548344798387737506229046146018352737389974677957991801501030645293796924929283995983649030743310539358956979393511339627177623312913954922636730365811645491856934947501225725706283291997649213214743851703916839019671137552041762745286438184117379981175506366385364626882325295603910923843752251979836493387551856643338234287652397507775321486410665035315249132283348582668433533828885550710016563312817861769692529969268118309598238405874987617251301174261755097156876483279700114264856737006487877499870706204697176043771815382478375804720634306508306335011943718897698414708939664213493582028923665648343152728517959495815122386892010023857879939749895421409916803658198680111871713799183780477041355087134987418413025972765904674642938433999702675921579143021840666309776500719421624172538528631246453657077909742098204962671226617426532139078955498432184546264287290412443454352266022827103390617367713791811597921096858183684815940038957252094442630539337187766665926768219277563242239172698472553372394587216541324102881828660356292844344037007328784622206428658915839965712150302678708909098175969350923182308492230518181910515434646648854940241555849423522994785440646552921063249503233120963901429872892503700859463311537992915596991367419227331720488584491842957462671767044814494851827708325471211817888136471229315753987756032715478148977648954414877082094963795122712100822125237550307189101164869523732940662176519183141170439928374906120677828555670908821869285663969198636144558740054949747952455990759880669545261564136612361830128997952559535048514502529816660263557794154333561397282566225216453117133123643536335370775802269340041021465240796167004684959797657798582568759145943877401708416138934945547062483495633035148078550431534243957261456926460643453266101516386333781883174406283507179951724906155999491162860412356359984997755113974793409229614895376711714824871770453427312754855577727760796562142215321387614339475051113275073375058257785695523979625480933688302828648681295563061316095419478605909929662950267595057328521273598597996399413280187119068002978299266872992438444374608588927883815090713886179054547799922061828273154118689531924039242940217856253205115960624087447282968847818653723994179369788431904257175343723682598388314558603022044225363271667389800832084578559428763314613213908452658380099675429258139722314195995587279161322213416076484938416472951474770057359451480922922459649883575138577838077606404342778019547476017956744260918664853556810041461675350971403518258610861345879959707035879791782882307042936257024075322462312323932283082731571284712915947791325310217536223552469291859425486224225590815549478482873805780949140549840565496062448768600980458526370609069211774872757514270774716249433852422785081514991922485999161069611884598558076923211993650226440733385747