689157497897777850781895390896419586762638466322585162736299921514784093302216599064435119118288042911287678633326127609811169566991538047571105861876172940892767508524682099767760464284563001095064793067022541865187479511216498811178467862234759247392417028253635932036735885807887103867169104086130492868224247534433240777673659953974895783995092384738972877998873948416550701423095493888278633776229823246547099459652499246776772748468140442666907434427123245529442195553322609913018076431910219659706774881148395494294861841921620390414579525264993693776518594520199259162171131756209361266826210768223514773893131393966758358868614282264963129664338701543089993205692792897632378258334981447755663895165247188004387865071534836886580181553128785888535610314643929577692461924194912423367405124914734879877716651996993811373507914257127368053227762865828739015010280173264578861864157381249187234180172638976862291581954562327109326708423460570398549323853041900612584575183213726560209415319554905826536813813637129546245140533591364524338475598515587966645974637939619355554220211071831589876266721872135475769619766324433572050203976479186125041141367531466704676362465769445054203404314047315922962833878411547251671643676674045928336044646678262144848309736785907846229464082275609957256389800164962648643325765721011695742196311705232236714420662084194915258981055021993403439509322981537895763974532459853945549984433607922023099174116853105585164397023360338698255561534781127026295745650223641987963666062128807844283893295074568037898671526093955410071538708856670452999365272684798002693922821019311437336361885165224327235559382482082484650571332116583723476893575078414446266530772596903976874527169124670468205736923063624962352014778291501027825418964344152073898228028958108142148015460515239546125569451997742512032709667711403856522404946908749673655945658952316532045524605871254841897873244996177083662902784138235935548954874478819754867882979983301325414806381798462571689955925867609601777163939571916235975754489589251796589788727744759519138732717262666988640878262405991732864446798495167397794436485783170656243584295958673536089225412517199720507436704882576068448486717276716783704150113498793226682375448803387252013513252075243124356650461246451222477358401880795754411878233836434773204984985659078144364327687333440229426536164436859834603335291315446141883911524692148029305419612184406425314049279910129134579965034788315399963546286735966317592729887325731655532768444263958786717580543724127035587590191918496839815457406146769240369010668701588102651793959921361329845367793490790475089097728896464742754206219768023936118251005969408181920699302143140941896401739132115593965616934700323697604209133092886851922287523095325387997201658986925361817606275258685534563159302554811315836752531449251834942522573681143924220778083629510445856821860411481400841254266170897787296615811133285025489670024366752588034391418254739421667100435666361663118399992146715466537331367601031046919808299664733179310996456219430041598690531099560237035021805610631006893952763852227137991871998728568211003745457840928032349888517297174288286056280988329531426305458196182031248666569701442529557466970455422767669081738967519550043549832404951492959741612175161434731717612565577897843298478278666047469900587964998888791743940663520940342915691351997459609125917958481411957669577197018454158097775972498818019316883806662862771695993636460972599735484633455413914172115792529606126243724030280966678117437501067078254126277203415729714033766693569255837483661066290315411649542358060301596431220035727953548095380159868852903842993932898851674783991483827719093795906980747663554228895716552982089248003794989754865147718243339619528112645665951125286730038109101182986904013883647570379428198267933606101441737238956634445451233737699930516391597971199601871170877676298822370149042486574343853589318883362504636715715609758415349245681873459140165782642340741490254070234083962690998942108185431568587653809550945667980515243349196469722097150033859403741480836997161495838377110091297185114433017297666254955210366489421955111048083849623323054577287971464643714627157225425924162560566257653913513881221784416846036570498442836974897215422321809383275752317514747025834372691409425739230035743311363353459162793549273183741389496739102741331431985897496681681760750253717733634096005566651281701481927845994652559551383270279123164139387494682972637417741512027780494328190583594773595420123983048639852168059576387816344407159796381328977860248482358082250982128274656334025739999180046547153209440596376163908593266579669122106229291457044026859798404788567574066009752691529098971010887849216031597595374737298690532881163965903032045107861097182960957144648768707047123622828261355790682382092167898293244766578279726157166859239121799254680611703932938257619169228752046918713559894507904536247999462549543396998611475444531964357016701615385432289153496027224269427760612408234370529971850932329601576390628357065406755449345487170980261634412588087593661561708778291403598365998806271318544984220902597602026545729164457475491189511539694767689839066014575414686309739754726117478188776112680443604293574320908035904143316958289760519220678975492220906168831186562175894281116177522455478132614715722616463632905578442903410414138325896834473457939409069059702422112415182737390403395190439486837912153072785498560749083723147408463035032577895678580248469361815951592199324106529777869121783671543782124890432327964481174337838124423838811844803380549747275685106617459305944032257328372379132266958593984076674860601716968446591304163478308023164312917041237543069229636945755936542572719057961553275037209814547949992889909541351378046969730424741001886331060843910196813313972770209875434207787