31329648174662064557496207980022350203325829234437335008459519085223448467972275802375816252624429321395636690804261094614134166240744270860361372197701830527317357206371065665252571296024568370464461139577405317998558722910351097343146098897674754610979694618995928609301599959710912138851073566927009367263891631905138998212358164015931841997858409671381302908049014654965170696828604336737049128517974314286566446426759204211321996301013431329151257657693699598755345299211003351496124984547489213687579207372223564174379623860688624502895663121445249703210555848664918480740679506507251840818246717220873162484650365121951933918588693386929857739465397385437584710420474571523241561448456617833194265284268112962337747658116115423042406157338349022592972229933461141994973669311813449902562710965271738371255531127458871072958539877304780912467326893495342858909360052028259540134873340900645847930213640579177184286828145894957755399816877055846613127165482635252890446003666446685218552537059702191865408094352871642502617378152728819733130421115109536148181650813178898955015237170176695115076509126904382774181199605328515746048389800247417715552136273562657774193761563368466165887992992398613147879866916847281800191935393910598219161440872837929632060447813587954062230208976171823605179478375280505547907232994585453432509337788665877354557531264666802656390368298488310646963791413348424893431592460335951775493405233459428719359811371593482635443512425638873879533051205268555718639914446424468930832772680639612975330423898014350122883837175151237348982333380067251111827816442408933514802168622740642235447319985380564895694805824024566355866117381541222675226647518327039955903474463445322826196526859039854475010773718270172527617262494064133571399614377694757411652392744447085804585391641623285879179518273316411746603628584144181082669876667836212220934047547411354376139162338875555906796279232764683592292859803845741163952167899780163426117117034697339422964004987709353796976375248663185797234763673347132955827566302731671652158651272139954540897915869725269665007258675036729253262945556938089438192764961426451861044330273173344352114334133916927518518512743756451137882025710980344113632114249016538281251745839551486836579615139524465539739883481258535562918170409697125908073224845623560754583324486633266687636604973579182275265965283832746767771515929896976485940721853117997569185008478521918376576172526887818703520465752813639537121879405048888138214184219299932446507025967605436582074747471764411238595426492845140588468409260156617767960526985968977845949764919997868802096841865824295823157528109999388658125237197515779292934322310779579163770025606451275829425643995131958755712856146206915370266028639582254262365245772592044107198767297816524280418956793728819150430162407234567429988943620302964462835959099810944732198791038329990678291192341971761128613667612521045742744300772452607943858111254310669178584859609846971814627332727883751533538662465354985077411117489352629727507857564716534265346740507245981767359987749082646602754345772525631824836262118745544068901117360134740715298063476685818308036693852804997406019204910997244079055929267996782513930746595310422792039377619249065332891428162374883388858321671948156151197161635137518052192303320794803326623781573337671009867228058978868416409569853289482963339682133254194107091206394135743791359093333094579370892783064340201630722742545335488948651482338554195478443903810753637500355624268363436517679817825556998616852450379768369210022081251780559615142865391335528206141884441566944221626236804285825577961648905442491372813968460596228570152645493152675162697301287109537309955623731652991344935737988758534877750928456535626672002167682119593045185780247088023461563053309573840195193608538127924628414446698832515914439222866309576683328462285447729921210514632451872165423949543458622387179253818022716277018089793815187742767175114133950728647038215189697747609704304042417298872109997627908649489315221719975020943686986080152253800495694451576495890944862225881741526818835787166833583240831091052083570986117377280038422194331715498513176269187830216815673180946022387798611791761135188294911586159431706183374982169775171402962664699313043877751882717469746825378440375323116171355255328480979776278825405611319340906337944482728033948087521453621647298368911187582115813987660738531043322988127901220472828374492721872411339173778862308149196949044743703679673262005298750221362480759882581517709691544726300141689991059466261832014561651379493481842679567057160583838649798963760635616384126762331924324885554550903139457848365755911351959272412456525446782201229546217105728380416612380826282646533461843784991796129745833727955916153266560448169249020461972578010102656840123693464556335326171103439486682414851059604709330005440139455571384232987275696428755339335081751777232133362881521012913401212576205810191326467521225284006701394238416330911497725373865682584687974558668335726618967865101369121145729666936619926869572511883677650149128732890113163684715852889298991697898162909557405387800623933983885260029050635518714456410838938032071567148569252643938297838757246029336370624116748392763782620241188258113357952336871828694739226377283397269712053686155889884521075306021483820002508570187661508128562692521349976971673211972735693980788656795978575735645664118763285518119214158617180519891495816470362775829318425113487836649048984604833118286303373195446428703061207417652445786484843934821025011494481453616532599315822541295319025194624984055251471885756496146979055489912036912577268262428965610459946236098788078539465333693902713298843395659380805998295349032789937445641169563729172402424149333421927578815313767867653343184371724082756479093615822661915306371671907853096829212