866977504651342714488927264331914964897814057722045221523140956464987358961773937585499320839168412302331285122107367833464938641727322715899212971858603254699831831492662445333993596435652814397787535071424894898105426326664485756914642845760736751841805121955391982409397033625459266665644461526112938911979559945249095872576784495542451488481179298850301842894650829723229413939593304541136346224737478496137675170589596708349502227792488187082272394631828251288013103505144953397742645719905953361368570477533157170468892901861761393298554598084663715341981124094895251808586245565671987832409431941778458125754718141662519763281874445767703439844070063351967744468300291745764982757349974281058606294142794320468254348727561207689190943920876053303789258974562416314707860313150282896659534825494156954669669824668093752720459372974397732661956131938431544549017166837813230417226258519619175787863287318676544326333177994493227964407457878949787634750694769196373427706881321133515868738492414025854333847200729811041916912399538987358346855766220809757732878706225898667122499728448058565617799406418288432786796476875229487526805491267296469330142834626595751812041492526599165088662564865028004493038452269535310616572923268257206728777493031991716986445875891113852703518548509860532667841151949068787304610802768117412613669780546931721300550095781961489614363625941571616255160875642189528623921926964764811775273575626711301511662687388758516825363381519646545308077813820262763493101563194434979894431060226814611297336280942929701307730502996746522217620110596966447182874286143544710967295751740339674795203950430193066742944328743834603123668141136261994374906255113227736489166336760293218726117991866521113557801459559130763022848770424623459582577275235308290190846957321319309800397435282248339877732923685539479856663125566622726174539960739177533550157968189743646016621214543735566488609629658907122274261505903588107033354008115389388021775981481476568011454942918518946417814575392284022667591373187883319751188488039868376677014440916777846707731539179084800725396502995594828193242745977658976657688763102146973329239184301074728976262922017806687669677097683288374393411283663266327184241145158216474186395259666822859444749673362868221917998097270353452723291655862437455863166960918392262538352231550589327484325196603135454660209310635818713947102040031150196196359201427873056348377468273954523832202075538388771026942377067435532831197579131585027841272498921972426820075977782420975529492475635369828267096009053312476428871521816715010266599553481374976824198451984866971146832410523246351195980364352451743856805141401357604368650527177812630731792841498821685516782398972432805965211300415449151432583679557900736997184430329599517180101829607253498881456664205318531913139461211792635279105819518970950098214680228268998275729691571612108063938885956548940448742528919049922089655414299870508136992670592217200353550995291955856375152553961511803611683625972722795821280941912940485947526396620726870191930191820696977183285838409286614946985198982549353243932768114641567953457080046667855051441655664265842869794580514268228761463090262381877255587267157151006339610452154840857440353317823613684939178098176687934819691816939333763041650124343935155856549774925348682432683405752763773919606569989798158109326506411501151691694184637662347354545637772285868387605504999682682883418560284477283436135031850641832202617319738099596691924328389153654374710568700176540797789462435937616133723974187849697918094134461692244475999936012722352556534283295279103344291093829477828568621874268606650098081264791768590957876448517036672749991424744444935695307485496347020638272632881249907847814545737185449440504099677396041500736980926413357799261235473060301930368532456682051719036012127893884536579293796646677133266431989460813374977328021199679371937070153025616745125021167957941241753274143120742821974310440471082688448295972786608730739621537453778265647086567952715437178734164168891199821119631634378594428656904185555330508699002579529288172714489716976234408107658795042995828053743400294854542306553399032931457897227614331019321528987138116217539024218291968973331921432294818659472052958053738712935221396643307794227922834156630676019602792419341173842864604941769264344952823456459486556716952697510672259033347878672601225655685902470468364463539648753945729539020121330613617616055710112918779266934178614375915876888272664275111173462519378655686466221459101826152830016546554223812905323115127266829730866584648321336969955159315190753834126707833276940486817559321148056967218340812379969317971785666821292456708112415058620701765634376783240453171967386651381053242717159882101584725600949187308566158755241073393959242453181654695432933338494405867491650357912910251776896164708405634397449258732241579271555243052604593660388373033642365402732421886802606975464507469858894142222074907605930298554150429328875372965426880503568638271107925306147334766367892676356760482361551916097562531942209848211518394356492237021431251406617775371335308778797061583631881827925140510728504293154139083801693351522840495557038439273895568301330281206855339831232974208645330142515892573696586898735684160358780566976987199608405287891060263558049865941115729854460135349617951977148466515386499182718525076811761404279469114794043648374821898337114762582642348836850967858984884290213298356756347051997592275261310872594266161642865976851253079188201706124589369242074022357909046443778893727347775212242474956606867389157789503545625500888723547058903399169355146965134655989759385633866756324999377584183662213753026135889561234007066782170086629132444938458910970968154398860211603546583104566495791772634201197386404116736572573872157292842538007644687650225562662788305691340824332185437295473200