53675905392882028892335410351579242227877448644780585584671366765792988329589849743580705950992084970754955609418745226946013837225738493451675341665561455769622712117967097188542668938820646773422570574157940411350779061521738717143925292342547670972548814502179963576367782318207866342129385887721325161292956082761117997166526634719749932257326856862046072911945958963275550285491514229163838803587053761693426132476028714559701502168516122733682369056604979828017612186982438204784404545121719325243922760756013782638938425077025533468156279832462334552343729733762922064731911854301320231675718658105402189852949545157793419862143959273829777497208910074226821727790457748545216698856309435344777007165492146367379957201793292798187272390099604578223039801756562043173133449795484881879461574149642422982762358623220943347277894244058536066596334442949239969115348852760697205317283383181341108630292185156967486856361589011359077969580125296713451532395194578279613940386414133225156708324971076691973735544805082535098303023949952347629319167651390784440045579818342477673771738288482025778337877985238398258489844128354210168559828233566606784796585264242807950267549235299063849289400733795339922188987979445389426561679223296827565244281415001817438763493184633841648629277707589531519242163162157905639995075941695096391842449205744586956321829975275810428857327514391612867680132738876080926611879084261726837236434980185758404797988259588201713632687764193293432144700792555516434283553685413164268756751740375339383698557971918565025801655239756032177149273512452742763745539760369012767414447381042013628464804001313150031909314439665877642634684879385682608784020573352140484563511265321795297979847115353803475130157467423374354733653251772463732689109264554721298268063217633813119497365162274795379014422299397472682090119950857185263485689346962065243952352438379385554829679481327767904377126778721601252165702168163267358435676934646105293804855597132823250256960554796068017284665051234253613037035604774121430351080046451501156972225768025647491957564694603301815572626787470924215167681550625057424666249858375263987427213557584835761057273860037048522863268321740159841357906508152637194265950278492581607531223844849737972445428774383681304283552477509629393730621405776440463123152589832365957431881943273647232890462755592795906867815613957051264179888465949138797845646094325061727192111856917171442656838839934566153775330028508374613396086185310812871881731457092609850275513627801873690188981425243475784623899933771162166260654403373533549622591874448949670645949265526799668572855503039087223333571030239213692657956293511934674926371792533485771665816957689386355801264229251048559504171189230618420398318484623248050214232586479614397627595312949530657021017218838837407567974756059863178027612541967028511884637840174555222827246352195257647878239829512988027294452997045965442227594406870254554056597765078119704579088318115568339232953355636847852698337545699409376173521919362957278270208617642574203972651957609271678556447534492482409114534953925377317955304189821335155789432975099625135173639361244661121527260110747352782980708401882242211072874185559134958565387153594180403689513083658617122518350928156255968607869863305945455785219790898096112020779548548691289184566888022354518857991990328078608209696829317374294954765164943029679344978227885669512475405393175366607264184811244634382556453170900243653922799023769930109083664076409889888231376696316954192460848915523285680494765857272635503362148584004093286756287251876430593589987770070179881841467304281181345353598159966512731721262331096166431755873510206465149922964182093848546099847531317258758617866839444139362606485483958980330186200789365222286334023993180742431629682834144561788959689289376603158123815850119444805486628452735312199856522946947089572264935455015789759948898842253148072599496541143656378171321791416517644464917391993877034481547810396647313433814742315346915109457817924066576747559824542479673116097101696718528369919488245028799022389496767378908160405739103342818765864327758159298333771780394122454213433203793853391392282130320604130381393432713931712167458725215592282556231393232386506515411743687836148532396706443907872556784562785456166968903759850252129211965345440688811398988254366667371496840736861449542384145191605614481262861533213162885317582163958495649066555194199736275126284541934626645956311516271288094706568075143316641080212896308489088476684072292840674964875088234970565408141537196477652607161628953876388190187198359877050676118955358765139909521929212953228089732859858873111402519082356080297872585157957514787759617652024401692318114498427167557766639183209460041035658336341473625079004013570049853213648364866629899081008591639787072563141972944471917475138026209531127923578126594602398146067856695308527672040138248254768303209236697842667775371366618366571768964506497440866382353470755466856453605154197527549040720398986646276646127541680972356864585095811507527599680473409881170381127324882708872765255184728176874793231674570597821455801845894627189026056056261366463115982877895725972572575838356919288198669137065431236519272413893462691414697367836559548164085519527454822335971526928548178298544843252191626934215634176470614044012196687977764816626822142853047848250995836235958505675148956685945587433858725349773706630007500867174236522369462754653399492089542316418134148805765555883185706633403934543643114887686343542588589189310697171195935827591426376119811832476695555783971282555340143110942086488083206428276440315322225575427750064731855912183798701098767748312285662585101195199814689069798126896854149893875164589838992953254920085190793094983939506142374146306935657626481296431553020652187254736521621591621987466755827788567758019449872777896198091850243593879