87503446438612843971772067696155124439799988957233819706304673184470901929701327189151124985693652212533065072551915992131561231097146357827850748933187577618661679200735281954728882424839559371729718511342073521553665911951780085983605663920369122133688257414735745444688670134043823444908398150293257138380988611321637024877479421424174000605916872258185514797641043249268351226810794531151770675893300879641235799704751581676416283023592684351897012585755487025346191984132229321117526045913597367137958119649370430018880546155048581511787190422854846686397645433263486255580758535143249488926001535992919896382470494191713017747417012671844278395120898745593098583393952867201501589930235088433677163601591913121144122795405673908816238338279822559822086309195889036900356094556604025572814626930351603836044861322700293344249664678441655149529533923844745082300378391408318855662154949269581176369277489129105033102055178566989492397031207680673605012349861391370845093872748440540272770110777156486781935669903957467117006236260797877115958563018934047722947357483318686747041886673376885764954397708520261991850730898586979139223588437895514245351111611289410805295405459535513103381860439997574377318692855289391056898153881733254390769941338336232346944983659255165208189119725237168305216682134125694819241499496834273531115058591716396714348510766754728236853588034117148992695514470209532609025479295882222293687366317146304349403895252027141999352859433132759346931512443822390924535352369002872777973636435510972882094774141766256400974637873582027353263101205460145618122447855793648459547071153831687970275630954617651717282180692944749146486488157275945943859626879912458442433436699393370123995814498195558567818959949547559876769050307467483929862832122638365429097902412143953426138363143433012913911585445649537532391169551142567593162165669292120170229628104800979093476785751503738199673146068389961854839997957928153950004781579169476559377820251838547484946533540930385583814173431560244702798448785510449323403922022791477602095232761988330733988771259562902291834247651625511489174017887412996858196663911091979668874610819466180981967218604664896526821017420502426150056441931494682618084581969766298394155843816545110482600785789308674564741353992376167197615235336181486632332549606591401615019293549835513427958624679411415647629845420996418926138860541906962557363605953332414994744119934744198645677044806405154350915768423095465947333212815266345434516129707843832794787381355462398313558861670723683338765231288169321741570681582103082325862911384888843546557036643459276120184802656301462317065664992812308364287114931421103143332613437471617666465482343973574881401698476932080647714496885267058894472478886923737873994568656877488668947773576413321522467169061482278614105960491063879450494440706794574869947384338198944725193504786385315187919760881790464199891403150224154188459575559727837831872147421803258486645391478043953862770114812985352785803900531510451434649816709541936942713067984757394424794953476870567758531179211808938530230538327697265429309230937713667733573471453492711244807564363879208349388828988675058631878359583587468988338346398375935155192489973224547520366877613963668542073986461171572979728304545169510748244179521987859081956324930024456768240882136183472599646418681533971857252530111765777296256988972800100363568544724101638243026225737759623805789773976748609311383237972192746228841128954022353680959600826161699166857190457284536781629687056530249845793433048483675955231187366131918516652823423903054499866987478251521902177951098908546435082851567996511773581936694574316422645228011283525926688846311628274985832288429054658427216188409481467853911752467889909849824944155209119129922379213723142558486763524093381174952398970979898104861636572165145942354806615775886365885716267743425795859727390328608641534545246596113716554869107687666016001705375706730949850374270167019372196250177667669184747167888444481724865833439048080116346749614662696339943516010242135795567038752421455412977497384474871049084700165656463475386915466661489033266237152507419303451896202620380637109840926975743480363560428968890512724542595042839583591264503589151834756449547687169556725700016836686841141052667909730797950999664562508966810058156995284236042687325351792549120850733357275571998996779346868281866490757135656940521672117273963338336983660657861708773221598948926121703742336811580221737358440740146884143330456380437872159979648495579714162934153652738322924155345862296803212950321749720877335222083439229229365336678294958518134849566447532041064820956171939713482925240766164197474897450100013368939993821418214156550976353920889333611118197060374730258334983723493769159934576483160394686253237523957636692130409170975920781965321682619815012148979221625181775864225376762648698112675553883243441947194682492559532854504089676029335657410110731512676642841746398168011712692095187026856511838412793226131484778619572547378394442780273851291767966798857868586600600231723524901693935634218387970646240862283844214431979285066894701190448747852512303525451987584543618094078710506667068468340827298808708088311388267627977970694134607144882996161605531924046084942170724446318443494847093717359342178949525867474647375106178080834811214454750763863417818279495515484917548172262954995198705068221612554170969264411667286994411954740942297634195742788271416169240006064317534207330861277572322725952746410369864219062350036004581132180315533603217826731532885177726450511729403350906303640087932826255634629856388948492313483652551535833081062738412469140424216814730447299085195376614789083089573811796071193946496786425451451846219544493572425071738266469720847055382419691852472929538114610882628977762174034521662114422594183996753232