3051482247181395138285755639631853395739802498048553882286047922149873679229736117977772597301183128912679169437889408488835517544584482562957818694856949592139297914334631880152468358734244653837393126920069714427076855128399222594548576863491316444495223702787108295708550257556749228871233734071169184366968393045278604761519512382194124639455703732698410329528171794723668542538152012485854586561876559328061590834575784218100691355446587284161022273871968336979360757977885965132065313680711584892388121952212051635751796690519521529963276523658680661740453886760429553938288743327448712729384952715059371452153203445732255522970353991869732553475304226588884404677043789304840767964501139829946157264392821113475557676134626904739556983062901299013761851187487251091761227815713909942727546913006466140039952176402796621216529766491539173812391415475165285498413579866962246897714413332647844628927255506222956968298689224227822614148852287886654780731969470430578294742497673405527476169437314284059412207463263037762346906286794818811714499771417069628309399916052188567363053664662454856655168574470219366451265301318369099193318852344665732088474985547746050464072453531307237793512482575242889102250219811877840416753817928257739398334127337258254967565827580410115575644678389249503166774892624707335613483175213268397381476583404765094408497447474356110805470133969868989463327853710993152371156376735514956565102167390511084629783319075174331913648518102352638199635033901641733230407421855871593047394749872601095124826604253379387472362020731599806170411659505545123075233192062149855245659289482281383497129614494677307257119147188734502252702026273162417898178687938993346205152256328241991735822881142042619613167926358184210816968531581768396536931272892858043384355267265609839949013177340740768820484406386110733324361134541897197922596508455256935761544742127113841168744797972721147727318932020588833852222413235399278441773349520369522584429976274395749604101777069048547489611043136481956612348620986993461567156892912645963983712987812352316680355599075425317997565716522347013204435980197481035658311031230387824587119774558766999304329911429443843245329622457269833011801439373524407770194296194803943429684383642566949083661275497689809371511939594291563758371372668748642809742744661679359525598316757735644639372717068309483389544547832498504074219638438374788319838808894751645851875638066341618654805818793361523922567622305637333017403796957423834779916998478701640597010189402146993442533223287165455775962836743076973754305713832428464524365245996819793202778191131514796224878908139642689444269941498251062098267851629389592632346343433626439719073101676191815265753371920536275901217283598495244763685132130711003850579441409430280289049267879012237982339944992909876860978872696580933311049966783135895373618516726906114812313785923320044466190298154291210942091898978978150676593579455734864327295819327965826432462969321331715926623404590433911888928608366919043873156309824906086573177603897498854670674019663849238433193543590924215939870463341235587654595198084302650502441138278950921043952485139908799561382506898159752296469197329757965531373544846450224468636819722023546411588998581401466943645288467739079686533354858779616282302099738191788771063514197612567386859038648268907588394248741413683612892035401140266524726552589183537056622332474123324771160621670810022012579656719301850219530673299691417369168721172551417778510285839504125522657502184270794673052246282764488367883865721917224933985632596278824920976686102013124234778881935715250646771275942534495520135293363962605249329481162234883521592952821831278311418255284749276049348055437083603089977376288711073982693689054366122321175682293816830187081883729687633932198458421927558145929715078314435958155048935464070665205798630383381314653957641789611588450180641727631742597325510323637985683026719737119716554141023951567186217260249199816068923836443618804373381301752062536114615461072593568962656763564952604761588929238691102253635828644331056805854763343783031265135137261424828242644548903523262561884938563749342812703427288314186762225434585359161953073544574394064052409617368015210316559241670872935097132176343560810574991924860488431522697649134880984487513373506066092918960222629263189641317165594914819879771607757913392607280127288108917214516171869352092972612806486492124499575332618082783106782981636466113537723515924140730449426822959378811435197282848844614860509945181137447809330660589144172244423776445485225876281862294511337610666563373308064505184501449392538273125347118246187137462187737618856771287082844763241649085399749080869930230396471898217937203272640994223297532682239096117284337546489472730591566315326841683916363835515302000761344168858767833566535546537690617384103557033832280231122616227186316043091252938322329326948126253838383762718222170892473790426604108759112433125389976012129335532712322268178954626149888025970635424173287788174001555163761624196771111271530356875007487468854761482530365746132015876520155113765858692118926517437034655772493351033164222991354227840381962202541234677128745156152182294709691897267497120330271722041030204585581729693982923443774341776292879323295890593077044029059955078492133965999397423346586277818836295262541252378552950966039045211480715324371408435967125959688496784120555375585265939566091722241461221254127779116919789788717405886815263027352910887279492434827330112156377911489044879749317785822289091391110769326978603380895189047389626937521147648942045459350963316156391449646158030585207578321033169307987644718063929975591095993757644583617917141544289710849069399682679254749425196812275511540383158616216533042205166276657209433323727967860169940874220045022826111917599165319270285044912490984069876281416395538409515738930