4542785101430935552917238522375107264107336824058873466634037449083689442804066046245214841359127009331446215868749068214667147843739454100926964527539783844243043876346124177301888377084196752757785814146515719780493515663731174215429867888245913899144837687344888985326872431411046654326396647318137599242957056239487845461190222609064670338539919616390021991582491415843211493075287490543927626309663280734307522885640774375685444737369918667852622519471872936305672811814139678821024146482553848197736484815297567245913989878569311204993527458394192068222336815983837082350042993761837129178029938242703867223579967825986244386242304479780701492693467124042126195742626401985188032939176792678565379496093877533795015912911198133485626233894876181431277432895333053727048328327695308347330624931870758862254715949504360834825107633735130189166257777957194463171364134340419791096248497785724266354270834129509957994326210437036113811186386030951124573037598918325231657288225507805658041245246675263502381482044927093880473104112445228645066165168336766524603626558557643790706969458151424913176723766684548633214887821042331109221367020195380899018643774911187071569426104317632185606855773710125711284470103509195572904213174064762250950532569788150130872218914968616037502751522749358725478638524700599834857611777646105351404278101763868567848547763394635583954338645095767288076955007989710028759339547897594803992465161606782564945510670037892792317977541768166383061313301289149253493278888930219320281021672380484919859714871830516360863970333879485172488948355996121148794731154711809331791485003117993678441744631565076570510091465871726806881286132379931816459681807266241790135105818917081115467457797147485525052571128738856775855173892122720622258285699869686153673772669528857115924387055446984230856250193617331415989031358939790633968919630567607306820693926170993448057556627005985585399772971602227447872108970657657203557412027207287493718616694840487630618383473354850176012659464153453248660452354108931888147514756289580032939459766920413307436296085338931548573973012806299280199053502252557389044621070425931622328316683602765273244626887435082507289118188909541581034376386313140364926205994389411386223620865961113557182258575787434984425925624909601302860814507678951494973709623912972245481184091018696726756749658543702397515214878730539534527420637503212971691672276952176660641443959998544957326724656439751082307092893959219784877252562911212921253602982434898729363574727424772623986463463204368064507833634064539979980080038224976245224875724662539546128865375996661227283524224440616690083211887781477527032386542301979922676596711827963506608097337947420432080815668638182445695450124951528589991147547427369896668619191435648599357452429695503045447880452355322109063172213260861715235993516899828212354874992989380674482126595333551039307180723496116148528552514064521549929186668423015980505187453061046395274237141952087858756141690937286245859521338594288761449984209782297578537479882201966132917521951752117583953464218835857087321486126364049058274875895208948581124853557432838863372650284626732921313735637769527663625545045266198207663438085327720885391960473706719855039529089741394012769589687359455525848360217596595985743548953963552614958668629229638236920277236317543388657359822933467827592914633723354505757699560458624386258097320628033997756933344428873735509976592334781779639418002477242352760774471896911928518386627104246950952779272579973607385483327531513422431984502042242967715339277013922232895176132993724614543449979070207575005689883221492233145541679204781623141215212740193344537565454626731399363363017017630151829473310534869313327920270988387653677579912389258484562298281657834199601877228183993972113068177938420852186292118774479673447186221023485181572825709339753925051489668649116214321593183761414596552575411529526531940059495733681579470280784842029856235382478855995313572264079357009182504420771881393185399715401873504520144370293478294586329298646614357194138511165621895527795573291102967095321557437511803678804966895928100678833845005541636975889534764418613227583524794201537317893173665992707999900293066177817544384567162933648896021392904894872783363735842341695413576619596697443277195718018066110385648761383813858685061416426022155571633999768367799124612299396781766134097339625510173819950515573678268463328471665739748796005996635436463206918815371978708747086817617186635824774828665517794849837671596968694925718151634951854514718299994377356167349298195732094517582594859431069435375996958384508353133248919148354237382143246591587276728058001647271924142572177326884088428883313918613284518978680149773314264188762533867056120926177986247793851934484729898459566151839878393548583929475333967536105622107005752381574949042873391708389696594713457939134433761423290473859219864395513816662317645700889683393636849296186739820807727142429650355811484200574181749183602872648158650433545045132263607511956350014432148749481946637951457117133474359310472719237296898619311701170697324475833832327255738282652584067747212299654268846516973473918557887835957962647491366891918406662186526510467329753671867557636155450350289177271311289644745334649804873051834235125836678917410727032087365880419533253446846642305351055237936571011644709489127580299911854286719073992436018255670166929774872104375536215389377049974352733214079931868221937306550598267312778939274529145923418166637210197315077290661036878381695476605755451633272278712653987156580059216376759557281181458089292121331912777405338791010333445300766188998794585882365977210564336541688239973886052528124335188178519259793574336440984387750438596045709467451388815411662058381014929767845424732130365882859814250978022302632005984517095485663622368087914937286774986631