7247283142387645816379188864748546096819990867634012017869414236312322159703296856625468003763793911718569838772881615457217866988841107977042957469654865361642288127279017187207069779146998516379914901178632419115166511399835915723787316078276038551769335646359115719782912350666236025201474575868190323799916765670065287126994111445823094362372419860777380891950788626661649415198178898901468469524104822976447380937944053712322961438424998173425895769363132339503461953416852251619122918645936471417368976899076311490655404873696528663826735205327834271428076105991566792627630557319552982810902687850451715172854046219456380780772872386361279208757116264640706285489160948990590773617011102253862822424899965844797211362626676219341827719062168611824873598352771301810677147357223878976977572872435278228746391533312286066163507545243249673135048845988130014526838358694254321432819559708674526029201525815329683498321811498890833837900378919390283266604537053260223860986717128241625778224230746578155286921039858492663806937123257647648156787146750168331633478305141385758081168287065008904876328075905624712174261868550169217899164351718849135677963768654134485489585945486251887173614600844285047878247678316619751864512473794176852321481473236752890567937899296972179445806531295685919433405183499927834376248154409872366769737341374110568069998545765412199968762527719202568269691727660568835691721716344084105344915514775258650260506698142240599413147417723151597834864213073352421619290128282321422630041465639364116325837296814336505351961321774246757346719856358331058234992925899939985545196411825892298322549568205464766889874505309686869687659621558858860782310376418191374882164465123758816324113460537049454285423887484761643258566669947190764648751154779039351562166908372823987871516698357295156699864655603269099665545344515837697365318528054711798949124898721851378756750550025256838229440073026180486399422133364099076134963527844626473143369919355489330905913851083009054910473141986621421116204810653254431714398891521401678522678890381265176536779365778524137455387335726255961194880549861212575908090934660736802760767161418763574908560760738790352006912311136349031654438653783178904504997643585861861109466104203192765932367894934114599609385566280101645870898507800433377171553310892846585219984393527091493133036346695808504979276224597640312732166954804771220255868696861994411113666425887311998233133372423198873078733955997106682836107526176876481326272852566944354326129473380227593180620834837439307578110325478688085486265826380170027732449395395450937730967728666425389523487697833368257297547381516886146811353398160537093730362041577422943045969545780089217351375234601717185725908271655246559766077144140383289784870946664918799974878985114815795893063963204823550175526971029168427930072668633952061222870537759432355512430438748343547589202728811636143282441359149929598233745352902241547067377124782016103189226213127800468677545858490563771066990829873174866869009734170584582206108323125833539110973766399436187240990769825533701037804221940851321732765171669819616739658149677299165771656045756037554698195782500764085609778357288963126262121575841780193708751977154956640080214813131394070414330350433864829856427158537612850847623284079413438361936228478293418166135115348281530690525873694141776802013261343730897923738131455512288962749613328418275917777378783506405081555054437629984585445992203968202846568487597695288846673460487867840740476176588616340335587594335429026499880208575146388182136627295297899833298448723195376579073566068511667151793731716810395634843374998138783238385941283603150873325782254496970903272884047672306883664187354811121364056897856147104925891824281729551797708238266588154472629546163514186799876622913323629806429690196572375761551647175444011586527874734762441218576198348885297325948245969895045099947224883019718701834743646770495238368838589627548362440178718800519576895833112571373255283199157444684552298496442589592298144744792142122759299422281241575816041050225661035104837790498827700953027381198212083093951640554218206753582501947168437086332144196498973939398578059145813442523403692866638118345525896784912095684450113188817682657086601892692954069491324650183798712101174233718639606962599772043985571111250614792824248208764112964710985966254186418485928329281113331357123439571599064058531968159440854383243135667730449466959711852285327571076144117414268769421663323354922530171687987497327293057694366799217750623932348172343914355571052338935340033031386771127475845845295575890455026749389939799964461861698981194057526480082309090400333634571152668715657308608542615591924712578591229214656295269380061688103659694112469427655043266945185383923851841712444425518736980017102863420563244350482113654022618631098406246216173613901146860974907516660813207069233293933249250978037546747208378502268508244419967985663261157863310055742803751757334876460933038620677057545617943328615581107150430657676823444797233566514515463063049146657974817788765722021918784617037971939450881358582819310674975288285106150648168337343014942058576644297326085995422941380752269903178180164495123580528795281496258934338082687414723259302425149339285545154365222620295913281155071048110913202234677720033608598060878895706085348502959296990011440807314824422205436106276218096912453137336281658465184581090126641629191663754795507093182736162782603823882157774061028964798661122824986847484903316962211088554781857569328638155915270935086903676666956712171413145859595419645087110603647184187426511329791456475779248473074754158252816289050087872122688917627097760103140529443799454397718637944099949634550263068334571812278223124727458999853696295552357178389183875639414578572463410014124219964726358361492537128424478669452457744723839794456