677020496982123258556961586496365165087427513705204427170486937752948068834286667451394478938411833773933224490413432624980184889429039685814793381190270518031328379322082821693185010652844038438638358902715925681694514367138836395865126742409678868738401671692631778396148137181538390906143153553463111350423321671165794016177022997464518729302996787026853938288818138559891174194301636380527257225632983264366685482755263860322439880848236811158889767135412725922114631454875357067261562666738955614124916619309111522113651035840934724858537457063040982937479382751727702502556915880310561003375492126678514381161158986682514222518238849981966535884965130186723528547141394365085677513495729118683252355029840731621464385075033911791815869541813614444110561478315877212792908301946858146500141629553256903066121824159148712761641576468159807337369915636741157571745524522724812173264335891626797898666577947355096782926482635001387807192782482684115014019842470148794824210512681367177891753477021177361091514223663168274470491343621968202861172805626048876904514831521188733278589206576285437115201010374048411758846316554876239314424855011225685974919833519646229453566786884932714450514974181625459493821126580957915467321396814307109131758467699261114093256999474949732777734451502377312657776145929879095925344645171921448744274381690768414577019301079252238887204363693529302495371945176122152371075990928908927199217704025774862584527433942330359322641674777518223597863325308331688702426534629379996585425970625444309488080696627769118156702211317837447493269322445231467261331586757817461113995210373714269567738040116918021560911235045763125172324725821291755158320955099008486644479168487879363697474203315689398587913468197566815159235879904983333727889726484932122281284920572027651797084971886240514039225534727959867811928198895544642189075728888358379044495871715468515872255058105257837845892624357461943411907834868743731230258615742708835525645989536624113051196983235734612248691636655266370107196451081521718046338019677021657346191423355520988770534494598985439791750433998013922515375375662590101922390391035951254854925568670823122924663144358149445022143115513696269539388897056965691503377504303719317698791324288588245557063684963612727685554328790365102513663857013142993561140645740317614949936973544162524164227153645445898243148486924141071327803708379652882678312156212055652416233212743402117735722320753157107246318137131362264507159684789721575297267090787961994159863624665714453433754141915589268560507452505942291981718225884262102210379329683794456624171793441799734833285806466297100886367699225656723752864825297788685247574449663015933832166416461659652828102339517983211791683574174931796319118960909854590808879383744309077658215468455697361648613699071075089652598712172957510114278607700459188123991855820798266736882394785885739861755953719205975521764258760683111142267050412917473029328454575394795267818451446076562193323065734953175740743855316417448439368417449207795611048625893883385976624220862849657997403490524262008733621096069963687288394692080627857107485979207467438021068202778862625961399791423969628272004467127512117626458292168765684994721488764722488217749889937271701710527785447771632463722278423755045037779796803445164812888392344020879150152473462463911549845789615644844655951263570992023249101398022946334791340983846814910303876320448408806736991820587753978236849961918104269009085558154933157406756429890590813693762749336642066944369741282554803712393873988757127603944081428431588195488875754529761913688584517694446591731806730860607740621271837576624152939842161586854924424544696454995759045573196620970254498827679938597712722372476225535255945848491369272539922128406125948290868489498236667122668605848648364191863097053611524874900492160105722520174406688366035149137879473246574286059962658737881408442877097574794104066503651287438797791066559958248652920080857205928515893326568859216065622472121098947236558474799499454132380650030251085675429911053295275081466418092703441791453647288989880833365781133186423971175757708276788168576167544705482665191900222624517945158396997248466098199146722923831941425678521334069447196137854395108433473972112886014852285754956375893544039696815629790911081905724063672215677456331408496927087597811210558913830285275627375926754968976467947126310419432306125755186332514077593579788930248479373079475808033764239342698386288938221433286932718382720459473512345146709294305643952156204521356145652916064109322985693126226237923859580264287598592620138471832131755250559673257178468523262369678676260377832596546198354676526484981449741663641614325267127051716647247605932675762637147639507954913321005807952545905842901871338059932618067160215484606043800716406492969168397868294511683307916517758696627271338992100590737885802821116556429887645960965944913944024059577216308387537672384046526045059478669877673970375229994843614665293835328794104428937153386644704254476920932509950385069779137320496797415514328572079842504376039102736664976201512352248971355945955737827769569284486802111801285336711544509785471256762814243049712142998482746992681282318667534096113131664073483703801763595242759772357103774075356913119738004017996843410911103104027261252530920942096289559114096719363257638809546485793234157492193193101552231360291071296624187345359990770369830929447764672547837414885879708352045061447888054521500652740535205512693294912675674024655766650546374318371360796267265101954185915141656466614139907154021996661533947625656754105581203108782470703242013671134956797429735547725172828424108404416488733215423576908212488920569092562574033341896524571632791731253876560532560551857658848423942223530283114888698665385602287230288705406389113685980891597014138740494224355