50818970811946518892772349573053885194338852638907569731556216347858607111397623712435165496803493600541791891110927860636882969363699444109046961646596095371039402997873213672596468859375932186071688440507862992919755255126400397839008815775376309754283816391377414979303652209323473020707185196446473573747757104791385639581766955873584480114712739751342138491132120101465715266512621099403677751123526155854281498994298713317864690560661232992132878301618798798787394045818438593205752620792497721537205217158751560355133419181936054281323413704415784142076489605559509848288899458341732438360548642621932236583320198249135590667727080201575184376306705959341887780571379275824242773841252743926222575613858692464432844969183819799623315267741854826244611876282315511487511224475693790629122227566464409799068850900945477833758246162022487215257680807813406354497552456117952522568414537841936812422748938692361441363471563979179475396254422872773951179954126316127120409739183940403659826959422758130092038435777874995936985461995208400313629839606168264162662712703698118233545560254649539083611816894552962609785823092015952639877411079140294621579504064823745759331191273303834951007208241629166325014199127580191769700572772208556894457919108182888741961061909163121696117317389031071277889890802698432355256918160137839664953472876333536962387891336993585049242651692077909507661814009272398864115200529629718767663973036715590456673613451945411973531876915592538333949674205610044698839522599112014966692232454176128880692768802063652714230052448928840289383601196477444609519592669636531710310771408947194099963775540159345875240017173314740767296109458918988816801271754411489617417502892840895106417639573414872974914413152239169580447400636044423153296826781597028358039578627231313622744634305180926023759111734664354242412190536128107768450095765147648245881829285678362380797246922957451211787232225845137313500418784647582858432986815831672311898959588235986295058507450692054262614471500685798168696875575953023926267514286219936251635347669414118751962441451797863086679641616685171693519783531133815835809974414480176684340596385907894331495967020118230279210824885117129519192348232248133143595751674684377568594983503478233437141211750961006078711596796162936820099196455703020191334415796683452346927954201593914178702288843015011093564128497514902126274416284312469223035236514535574295522923497774794451255735279308110598414354549684152270904925412851726786488858554956556492680435528799644560158037670548911455820643297799136021743160455483173239793342628462607768331842583491247877593412070779039199556551543074622175532063351402014488255738998524712170599747243020875870862211259641721001815312672269722211553819784364515116579735485008417756241769499694111433292662488944861107634481622599552948047902115981741214529080096181915424268752149492874906043328660549983455137124698904979213033544638572255809431168999638013427799396060648504896799124527227420199528357454029685832932076591924820899353573125153835365366785044795214985354491966272710737439833719853022177165597398878671458993239427076148246660899812046687161707697558095774823962600751524449161511664786832068850151922933076937010448479848144182261235360449532487240132126436233712761142081114833164798637880451291507962427027341173923143114048597321544965759393409836764787301813895300828144577451325165466626255641861735211390279217284291554751842506633889663079873792471608567769750743189250756037734265188883465605996318633308226522540428986613434168173960643086173190445810466226840448852646446350346476233954441681125387114938984314017256153456833223515705750611053259261721452615982174729790995989525100862280162647381152299211581144517261987108376194643788189753710378671265875139479830305727767188329089273354239845763077741009651030396590679087086189696097604828577576956228609165127153271587511027327283067805343757179927303457171206105117723959657631323307076438547395034846582347343934097645558083384331783274044328150397342968441834458668868575063969427337131347974828615709104184940896474592674910015955439502339028008778292086902730214140127668335119718195467409739088458603382692974423892768194873263422262766644242504913918453575589986345587973341352588015477727372596864827380786711881005923328727732077913386341869117825667981789809984051449437618254707841959993152174621623846796339943602484060396623196452503921459505671012490241240235638804541004663100684076095215899464947495640541978041978871971568455781304133142683163393627884186471580578966591255539606579065478687138174778805795783441268803496817763583701254204627211946287039454484919885498930606785791176134515257041139770497736616219927342437505184161142376086634645358757960078258712211494235399823874221121349110409779761964955448786908687681989646892366534642597345990055841587371161157764063068231214745311200444853345418910393818685966372843721284545612231658459536564545523418860860738191451844279217279511580224695483172292054864683638147944717596445274448828477405519715161722873564165126200304827997269976693208279448928083045507349818288947350757887864259134435176034367354142621851721882441539458671047193086542117115863632970879275271313633441704457304523955552139340233791103337434915521849403306155380825952393390085160726525199999626727611726959837493820412872358257562004545863524215552543527737685569221844989751348201573095426847731612131990807574073722678291830683458242612933452270081815568199574276675570844750808351700692212965907373927327704568465548576913299076827409723052534879487056212505276056990496095128911326304938048469118661925751868788012584235374232097822168469191781142416147492795169280733374642872559901934357341330993317133587971926674486224201073048219036158928324829799914113543822453968181671954282734530964021501400235293044968