428819791085577229863895697101042818950181961334370949627819344386552109266364293480382440326385231387693183928498768015021609410120628433886718177073547509914981465292620722224985152563962262151886234248524326442291290399953949770640707330945874449847527190383904856979668537777988711135917273665527044420310044560104237128595553532966344917455980072260359970914255739343482806338199012866123564578016518949489126350438322619093444065589867689022876974075989662636542349868342387956332539825582198284775324968357493839548727463302136380508633709960185495206466660122593138656502572163547505903214253057634912735452556702918439863340701394171253937713825891301280596378285868668419933152956048591725920249989132778561898077002283776229767561156887719644302095987741046715498449986172201054767179906956945181239476689327206935886395650153732906155531731843157264992358087211261960873730864575173521372876488151359751039024761949899524128318044786772692299396485717148379068269960806841199627943832689310947110230155803149941729365424892563486541362563369744556911106650557723851472344228640832281174155549181909156287493433897953081255813750542294593352278314026568770355736051732333552365206539536864394782930405484773688746269579810813562190209876049395813393229035168755075826581451731245774351722271610163962749693332138436744517537305986561824445211381676562069425857224575028276192612114896004370880026060682989584552194928426586590085216675764281420252078456512887652811375610216696912540798955472721244963424987868153328267854072272376393259886833593094075177824848559423221294275388332915216478467287626368296780844247592758221325927930337222124791838586687264247757643735414252342272975111665343703304489779588672918841394393901792936788169583324365391479881325815399459104269575172959412816140153715199932079195227208739774106859484892942082399630312426944683924956940842835472003699796404442456132815137349708638382509223142538256845948784565464442351129965507550909033279054318123681968688438941503442132467609275852624866652773690788049562599731049804645282773234065718565954976062791634685747341425882211877143510249572412365600875041951428567906365621792227577816847822785355972814174171653547949049507252659896738625159844444142099329239347376206572438619529553899452276247104263963966105577679952804932303565434783311478806512387892455364093632797784564772426952572356259248001645288378631719276823995447468333805402964653380333394628538166935215016846803958290224169993770102801963823999064930279653185196868641623589627677464269263985987399106472762626038976922589362374589279002214198045637615559528903096670924886319374410951459298638265149404213355338695676428995992537768829571369550916068579571294382179976763415908195653926427523580182516835646425696568809191596623757103555435060977663719429727333453308037477937307981455016512932769276843425721920378670299936743191368961517747948628796522435586878383081442391849572219739477130806763806829521536647129929461710140552525318264821502046876966473624190565570358693846925351300303390018121578190371593328015564121391497228133909161156875929221580938588007352740986927739960594775130474033396261723896199614764255115944111425444521232445187283197521617934074401090612999189256974351351269332693031656515732146187471417041641279039045318386918879895108579427434204801374875488587821223287935437598559444649287876890266675320292736123557638787452291771716636801863782962039987304475004068596237969178426943891146623745219667689111051883821619163279618653340584597256245948956299358390154725232385973833114720246306428345373165916820040798884986455384000451991978133188926237032292041193832705711864434803753863043106119283928236924561770539952270175459291357908640587475535591134949549779936837870077584666169478492816679578765560958976097582231122028609365470180235977192678719899923776075580498749488949679264036051112623767588759122272492952946732751287478386669133451146487602120879324044333443808935121447195846289338897419205366056387477746927150305896051755099724591261210825551128470419247818331512459851231698437493649399581674353652292399380073332763906593955836751981364666991162414096976560869698882975397399029841781400813761832829857374116335500879698449856729785559385342592401428810736867822560759249425146494318449293901476524745606101388161890144186012297283109463824488799203491241552888242046397215702356914608782495704557689059286080889737483630558553146960169991595469733354933101649155621260045447950614587398190216356685251726871274129777070745663423449069066531393480334117586258191381584716487885865151316460195458985675549582345805313595041900796955346871635867089264952629028764314994459525086734345497345553963235126665088071108524925544237169570422228552929634485724806557443324338845017363594152275838147751693747283122206126393225938950489168683965315288096470630172007100497462945362614410883637644357470948078595867880782557260987501235200443756883447343172146622177035302960119277115979094436954528586264979612433692536827422028502958912195201646624888274341993832645344833588243675639584164368707992933084382833287823437367802820412122963571892295512134916990964233619086769144403901526752278712116812855108508675788903412444726127936186225849983453230702186732075538246288837435841579177280660579838309327620706514206184363280669978265951071331526276961947255088714294248494109387618606988414436152217975686356657567024735088108670964479874193605351878749713020852249022612182497379873844694292688568362561673506111425815977720768673063388931075826271721703152373216473298178815605398754013427876593212126884400432946191544770282622829513051623306818850316092393072938068395536896529917437301822302356877525228479453058378262821186647469024858190876470995959864973619965323246997301161253201472537499146634471489251143172493593634