599406395364634656946573365773658666745768052720217207472076720777207972173721757225972262722747227772278722807228172283722897229172292722937229672297722987229972353723567235872359723737237472417724197242272718727217272672745727667278672790727967280072801728047280672853728557285872859728637286672891729017290572908729317293772945729467295272959730187304573046730477305173053730567305873149731527318673188731927322573227732367323773238732617326373265732917329573297732997330073302733517337073384733857338673387733907339873401734047340973411734747349673498735017350773509735117351373526735447366173664736707367173726738237385173852738537388173883738857388673940739477394973957739617396374012740147401674017740287404574046740557408074087741027411274116741287415674161741777418974192741967421274216742197422274252742597426274310743337433674338743517440374405744067443574439744417444574449744547447374476744807448374485744887449174494746557467574678746807489175105751097540575479755387553975541755597556075562756107561475619756477564975651756527569575698757007570275822758237582575826758277583975842758467586875870758727587675884758877588975890758917589275893758987589975901759087590975912759147591575937759387593975941759467594775948759887599075992760077601076041760437604476045760477605176099761027610676107761087653276566766157661676618766207662276623766257665076670766727668376685767247672576726767277673076731767387673976776768277682976835768417684476867768707694177085771217712377125771277712877130771317715377154771567715777158771597716077161771637716477165771667716777195771967719777198771997720077201772027720377205772067725977260772627726377264772667728977297773057731577385773867743077434774507745477463774887751577516775177751877541775427754677549775607756177562775637760577606776077760877712777397774177747777527776077772777817778277785777897779177794777967779977838778547785577858778627786777871778797788277883778857788777892779027790577907779737797577978779807798278125781327813578147781487816778168781697817078171782027820878216782427824478248782607826178262782637828878290784317843278435784407844578462784657846678467784687850478505785087851478516785187857778580787337873478741787427874378744787477874878749787507875178752787877879178796788197885078855788567885878859788927890678907790177902179023790357904279043790457904779050790527916379165791757917879183791877926679278792807930079301793027931979321793227937579376793777937879379794277943179532795357953679588795957962379624796277962879630796647966679668796727970679708797107971479716798007980279803798347983779843798927990579907799087990979938799437994479945799467994879949799507995179952799577995879959799657996779969799707997279973799747997579976799787997979983799848023080231802478025980376803868038780388803898039080391803958041880430804328043480436804378043880439804408044380458804598046380465804668046880470805688057280582806318063980640806428064580654806558065780658806598066180662806728068480686806898069680704807958080880811808778088080922809338475984769847708477184772859308593185937859388593985942859458595385991859938600686049860508605186149861508615286153861548615586157905699058090582905869060290607906369066290668906739067890679906839068490685906889068990693908349100691027910309103291033910349104191059910609108091082910839108491087911049110591107911089112791130912639126691269913819138291482918959189691897918989190091902919059193891939919409194191972919739197491976919809200792017920189203392034920359203692037920939209492095920979209992120921219212292123921249212592126921279212892130921319213592136921389213992156921579215892159921609216292163921659216692167921689216992176921779217892180922099223092231922349223592236922379226192264922659226792268922699227092279922809228492285922879228892296922989229992390923929239392394923969254692547925489254992550925519257792578925799258092581925829258392584926139261992620926229262392625926269262792628926299263092631926329263392634926359263792638926409264192642926489264992650926519265292653926569265892660926619286192862928639286492865928669286792868928909290692909929129291492916929189292092924929269292892929929309293292934929369293892940929429294492945929479295692958929599296492965929669297092982929859298692987929889299092994929989300193004930079301293086930889309193095931009312893132932799328793289932909329193292932949329793300933179331993320933229332393356933649336593366933689337093381933849339693398934009340193428934299343093431934329343593436934379343893439934419344293443934449344593446934479348893493934969350093501935029356293563935649356693567935689356993570935819358293639936409364193642936779367993681936839369493696937169371793721937329373893739937409374193742937769378193783939159391893920939229393093931939329393393947939489395493955939589396093962939639396493965939829398493985939869398893991939949399693997939989400094002940079400894012940159406794068940719407294073940759407994080940819408694087940889408994092941229412494125941269412794128941309413194169941719417294174941759417794178941799418094183941849418894189941929419394194941959419694198942009420194214942169421794219942219422294223942249422594226942279423294233942349423594241942469424994254942559425694261942649426794275942769428094281942829428394315943319433894340943529435794366944309443294433944359443694437944429444494445944469444894449944539445694457944599446094461944639446694467944709448194484944859448794488944899449194493944949449594496944979449894499945009450194502945039452394524945259452694528945299453194532945339453494535945379453894539945419462694627946289462994630946319463394634946359464594650946549465794659946619466594667946699467494676946789469594696946989469994700947019470294703947059471194716947189473794738947399477294774947759477694777947789477994780947829478794788947899479094791947939481794818948199482294823948249482594828948309483294834948359483694838948409484294844948469484794850948579485894859948609486294863948779487894880948819488294883948869488994891948939489594933949349493694937949389494094942949439496394965949689496994970949729497394978949799500095012950159501895019950209502195023950419504295044950469504795050950549506495065950979509995112951139511595116951559517795178951819518295184951889524995250952529525595258952599529395295952969529795338953989543795453954549545795460954649547095474955029550395549956039560495605956069560895610956119561395615956169561895638956409564195642956439564595646956479564895650956529565395654956589565995660956619566495666956689567095674956799568095681956879568895690956919569395695956979569895699957009570195703957049570595706957079570995710957129571495718957209572295723957249572695728957349573695737957399574195743957469574895751957539575495756957579575895759957619576395764957699577095793957949584595846958479584895849958509585295853958559585695857958589587795879958819588395937959389598595986960049600596007960269602996054960569605796058960679609796100961029610396105961079610996111961149611696117961279612896131961329613496192961939619996201962529625596256962609626196270962729627396274962759648096481964829649296493964959649696497965049650596506965079650896509965109653496535965739657596577965789658196582965849658596586965879659196593965959659796599967829678496785967869678796789967919679396794967969679896800968029680396806968089683896839968409684196842968439684596847968519706597066970679706897070970729707497185971869718797189971909719197192971939719497195971969719897199972009720197202972039720497205972069720797208972159721697217972189721997221972239722597227972299723097231972329727497276972779727897279972809729997300973269732897330973319733397336973379734697347973859738797389973939739597397973999740197407974349743597437974409744197443974489744997450974519745397454974619746297464974669746897470974719747397474974769752997530975329753497536975409754297543975449754697549975529755397578975799758097581975829758497588975899759097592975949759697598976009760197602976279763397634976369763897640976429764597647976509765297654976559765697657976689766997671976739767497675976779767897679976819768297683977089770997710977119771397714977219772297