689897567347936798274239892871317746451150924330236166325262336842802985477615528937182771128313151099837874525352285976165166429311073591995146697441399234108297469425725049198414633942948480668089989758716287735642948520785076673387284675009299370142389091508429759269943216976059679868652267479869645709734761961929581923894631948564135137763832464425242618977102641816164496915576949853332233131679218152284964497393214555851631285005195880562340400949061113927911462675190591637078326462833776059856736541213208631391656789558288923108838351713222146298555045491506721155563896152341167695732967706748491318309843783157222379877871679055878302325822958990102771965318611454021765002605504338955729155216219036592451946050817372465532270186761891696958357518184321886355118359361327950852051956860716956731810626420752288099791143147746206796336258477027071223260675107354219465121530987266338349489631817534462784436829421852881692946183184112326131291890706235551169891007955070007502106477705308743343746148577482915503682176009651136231653153291991983992285530893025743361158579665847548632046898298666628938054958790984826845767156569144533011163957631427872866051447928315996773759328534788378993161353183503391769194261305586685836799047311891127326054377898280209047510932414086052293160455813577659212783253497932772763888380439547182963965392327542115360956025689657697441725708873433163901786525383676245494821782601781988341574867033903273777997324061397795040006115408044325702749981713097335263754555570401120719902539669695192676442189011867833082283292285101076718825234879589797340029026777857822098959266163874738401243875772671380566046342968186468167703511424754959808771285562591425116567254896083654633455926058051851991126433750638626166214645348747933834334005937910182139861745393535989216157687659175666559044720932397992432375930457013386569851075942004292092682818351324364226124999092785637929817298541312717045394189997029488725423680842471036043380872424886850462995453948862261682201876675813614312126817528979635678216567050888822718287836908962508863493726221929719982300389102061672114178173425521867979222388648073257300468115229511815956071371862144552690906638596219834460308849234331686176971173838997371067101866663356325624933338697764410139024698659531162232693627170902675869443677644213366904021117302133604442314898513412133081278368429303391310335577625130315260094660536379608418102261222306692763673164856941111956259312221096925841922323590680772140317073594872159785108276478131613826820450061210468279207993109587956366695384442508797590835876036705313219798398831503500232366239102364762881835581461821487110779231599721732951771988421378157979212745193389227852326294973812506771724466046035608032569588919626289824157846039904749693896122075605264523931958980853865547429854747222634928024711247848865998813583147252162479742443925558176860927745672773866281443044467494889228515666399843396814185579230792175581159508487667119723308835147518206168515502930488782132238642587715724236999139661981012176602293410588331261927150971939602384064563993724626749088693301266744798383679188090856739969381218610159020384783084764863547628354687058909672857148592072350495879630608943082034767857801805587904622381959396919995083418515386625147935841494321026742765239355504016942943608118385049379577659326755271122387618925858568791361878159795870493141533813695368858701654254267526529645143885345146815449589214670547224144205307448218901137521484844955917735224414584814651071950923245367370679826343611514897536016029758636677974136928866655713228117777422565817891713517280119367164912398286302631294341331045164566271739255498937958370813959108349239018831388787300035945720413475913997458850786982454273792109105374179021226174643529348753653398133048999798489696555548469451550953865650250212423851044801419691824124664396252709052628021177531560909877145415126137049555338766222276162348887560279975336825270082637690458442568721787023712909811474962662497524421733391370659798381150195682883547142785912483832732579047154198889364163457782098541884240403654788444635613771946527899246617543352340364464717977200635968386373134123229667605394595161556538491439438128795817668934732131254416838843255595512125682146538872916933026529168976279762622257362133301798215658627042395982981848881045761580731560708133286051663291294121722040127315434656026808123034599107174686593172676585145465304332655549155711980887176604314744383388731436547138148848142573999177542969975182845955792702887609874676671476987377453869713012783292466369676763019580040144443102260253278401894680513384146904899564709212438770228928628566577674735302948609410576033615249410250522306724866721818487644858579883543501666373596263755976843238643847448875335567858871005507593021332627387854736705855308130443917543577572141333554625811271520052515371017538154383030356985758157784139061485144523745156205668879189854821025889866371045456393113883549327322143379443426339800260524275711657822002906236237431333645006364399541635506575653802952675741784224508140092234864294756129175130929212743481567162272538168901566779448378704132377319067220856446340827966625590535311799735616474359717641437729611211750833529837359261316184823316929288996199036336343066572184834534449002248290082836802274663044188440543296795765925048185117347952085277110093257458129811788141863939084221943830581480728088985519144146149026582196382522822523874323061886703551259755705854291789534984369861860861723967959449385046545958643014078419963503299877302758444266539847395256117135729984685192414062908773860542624957947060531350729929795708475278587654956148798911438538039860482167501526625784692376636068583892282791514193572669547528429438595572198961149280653647275748560919991943303027526749201396221866