3770617241608481274865112346283476549563558246034207127353780443522223215662514755452478187891343286641642677360223217652021889463590144798163092752397482197621852224368877607762293132307059077716172614275212193114263666219763147234524134862446196869203946375715596278443505586375754320820162575129554955841924562047982599177737552682235223222043859982989259354133088227708209431585836699268981065160433568042845835052973987363179564605497577934982445010742186894015773304775661812852980695665998348131752854155663140630371961189994841342768586628372781364459821990525827998382269019197608473150857050855357285844386183111191786993615011251087047611643832469763405731238586116960474943831451193179914926248968427256203236682954777425408685153337393276466294396174983657978236884696928018917638548280872846541782911736123287403855868517826415058449244067982315858497618214367071780201766404098758560553253673212618097270389866544361147888331427388427528922353322118565715987336588191233239159896322431945432125710959477238914385098381434874810549515893856807831743796312226073836835128524555741565872414859183767211358653407545297026310177691603608642397586641474333339595770472879649647911254271045817931571773343524801032267220735905889729298475938519402734378241822424899436466782242248025782174764307533355012634699940468036789867174521308841519062305199486321743543191693452616513689004827285698591786260666601112955212863642838300279666134382224428717342890456110366874190430462777692388627922187980086410581072389612222353779875124254967891505846198083624298898480785468346065923276981619971648330551446698266407144237273123483298282967769981154754495571807698558966012934824033493065920484831402553218199781379653677193151210429158128400708983973155962725324213941322697081417693888230786989509242542898264017425469526190293950611039821061577619232011185371407384015961751886661365933972641479890065129571501703110773285657682130057646295834829385506879312726017935636945386090223794055680646180373270522690077685617775626892823365692991411910048967472813920738711385191611368316168732986571933848234284717238564075338149926136741397938643317996891279824259037836345415192999902149950258427226220707842331638669716787715039538435896341742539481493115885999520223869709253079885124992779701042554048388546193525041522489953386318748269924381486937994896951605325739484323615851974432323287499219618217412841889358003699174758425693631140219145531750035267730792986263670856253704144801648199172936750411517844291091478849574376711382775088746320554642555753904729848893023513068059653905306248152365218199757538196687855417508420446726755698477536784704622689558565133138489688172263880401399510139990871005092625376236515640242554832699116820932694399673193515005130155139425181775113224184319521657805161821954492751662447457110512797746419927942731473052587957546448871627949973505736140184224567596955041652183645348205117729917677714226403854829420233616573368112403728969651269693461592761497552688272761153796761353869170966071049750491717514685977588461919891752834679490717991658327477163669193682018405158723686693599198232321835346452663348860686048843417568323764238322681564015997247541441644378960649019459184868807408874713879809773385230625887334866688676564706771873286593676644627197085920543044783471780715572967339031166170170620101893921465517706181849796855694298996544249596958438462041747760715116747197134613518557725977690238386587350175394731044804717973656701425576573495816287911146330264968107946938352635902712216190574508841715308827877405795821348099529648423803569940786298181803328395998544588700573164799329952038341574442838995949445745116775733775065821082448992466369427377596223271302339108526124336678158684035510622456859787328667763581358098923395998145220780454566963951353622692871209146211694644424681283323192364871460662747783421459937721855149686954209338072743128749308694352625283196262841897513206985551572799959917835036133267766949101688125297494372237176908427788965110825598875447297964984027131573480194706923825092416704941677578665764954490334466079894870451007944445098079903605463595548043257225293834093965211389254508946257734767178036255003114325963949196435520987647742490879384698412147255624654436038953125014891670939317452183268979539077562744287848781735176955509265043313328906546333643534955470867882798471709129737949375500330994694141756493001191394172051720476077501018141347013768934226016753772199337122891619943906663771481352062922388718371882833341242859795374286571952708073689957848456853004410465673355730558582618803764432537031076124350529446119262449933433294858411605132357153895247499681282750130629954404565791665035416495686433131968524541061327529426865535649876496696677088532511716150422455208047671724545558715000809228943840984090855404211447040923660747778137063688535542749443373705579732107615789818900580486753013855274087743479672142268631022080345856570357364435034823765690579296344559267913579656166341793274413581891249160839804502266637902172486526652262265258998171256194785611582135047281016907793732417974605417824124576398094817166849119213932610568320496266371621661370463234531387211895268636136758759268955441447419187656847281883204715486314842132225570111747151456571109751212854735887259692698736554731211129279820245766498353057532169147768513477934422830994413272653608934293869414275812395378798477062124485131104958611986025587603946428062843189197123303166029232817555727254452214058575046957110843973302967557676495599141649570666565928459243512228842457251851061277962851934723383428537925523795139998956973593185057476277491345976323369924309465936610172130048982447634644905723447198492786342381374245853858794288259349332618682238183115219728506761980046514555373151281566590129963420827729396262267