23901201844383969355368182247639359022335265828553395560342044616088151660663277950680262705336551884892864649939195262356209958994549632592282013309765375423485861035285112776579760130573278957990494541574294066357981413318224173921432669329687740264163553758724281750260077228819689439286276298683157485701099281202821548133116372885044945310467054648777244081585489251726975387683939043504215256893499862733807590765097369833988751194544388340152581866637128068403489448063791425547258675719435486334101782526019613570395347969934465169554133261853206274665099606750865194557978855461900230454963973489809555899150095333407385631902929237678214974407741063041569107458934968447924510979334522755483657936187466196230932192889412813497694481668749879224066727438847902174602689592481334149446785482896433591828982727825377248782756631125676695269598278442911439564330885529674296737497839403623801667483913803422565932626836292084518077994079957052391033924552278448966379792930974156216928628995411818753113990272845538738474652323355495594919118385911084980455189156629302326355083776743639392292873930943728169258317114805502980107044657266807575619494487439799111859988631575948144310399099239465561983125289841016959654919009808184949578988183611964533206488973895238310282394537782331748101747227967967828437229897599264382242899178209984377597488947601909643562415434709846122196375170716014875358846778270376447136290564462428881629633359717130180015483837217999353769778826648414678621334664300780263751757748177763521796014761142463384589338171061587109203179650789392171562189587574253081605661992657807176489650529980279848445602390354601918167932928432843827638386742823958604743284086428685591616257615896437905563123357489624014298573757389808120402470643001664164779751919023657048552708122145608590228758442946727139416095788293645000756965919081145479483021758666436614533460654296727329325640778682488531223073928350769368915338525093575100055084679159139412249692237836956967707727733675771371134595293845710375784799031255741856401416884535525556029826791678765804635114015148975796770117217210273173632584926602657485533119593061826793286063936475620671538443269451238812506334992968224678817366532427325609757493544285351108961257559889068203420289744015388417444428163292477722948114374549497177354388330031853987338236965246942746314171116228325625143471220969829934387995733442266808364424094268065178555843478649596375054765740362692275123381063517732163341721717934944818665296797791532076562031322349752749927535409312186536093863984288923329292465041898969525783046636376012253725673848143801838708441907331286765275622520535480376393117685454549507118393848378218141358803854228539062658981693718784187657065327600964252644517458865782767471103388709272324061535218248087611785248392312636967951775131906562344085395521863963319093018641723826624317798675384582939159765543516523939365539182662945154585731645718903171288469634305947235128495590287616024963617424588652169911331094459228293823159776967579282667383696078046711535717534112649071619724949133312550392181802922864152293559655382561037232795857804276492842314144316076602611620295277479023462814570081075963451161836469404142421197587144260579248620577057146686685644373294970860968811171029884583711299266203075251494144816486520935037999551506424166783575569097859548776955545809464646836018806610667869223033554583543876673951808526880437549515758633891230225842131242890541146471264644212482850867607928908287683578509101483379279141598738926618559385069458163960806971694430749625814256635831315727893408094981616528995624509898248810604782378919032537503968978970238777025571514834976618471582599838936883165952289448796006282592661219378613570041120201614786109787522354215412653247760821330941942132929846176709246087312125984046695609217885068137827686831036114740880987013807091089755489312603587562914265894787406217171831457598029895907544015131871817769824157540835685910869561519892131346847275166824458657429175984435506123871295384906261625962810565388026470147722751941799041714291935027317131797067093691940073689003433721771416678949026038733332550169828356985665418742729231430933214198534876771277825062086417614799736023846612994599359107391637237499182803589598271781209623540657181137024972234475105157680154394812278542844574951422020558818886823288789454544401777642342462450717629340204836323317262654635653509627389443531259669997268946431724337097388596440627886916256659709462013818799931545745910394213627555692954500375181652327459801959106887783194917690366927132167673867733197178975179981583789663983211755789063693066774220544257046746360033916717442866698252748436042412449873786861854226214747251462092755159502819392907465738021108954299940337704719971904196197476449808700474202405149138015264347449943141933076023738684136314849495739719170134860067152167413599316998082204149923724992344637341737191532108149498346733044557264168867924499839929680799675821396974892163192720498483628527489282925395653802483629874220383516613971361666172116027414762284465591194141244184472464493481453787995146140549514786219612594168007118549401103722561531531454893177076187674821263786507004227991469696108896694725932708502199098431093114517661488450314617889880430381109870628831413247394074119678317717396301842488604788274594878667851244948235291718198984150858347016378071081344883681816440475100527648679174275351059422448752702451886474214817245613079272255675921985341372626991612582982642539627095047926792924221929344947483124557777232317184135112213375652221942250406550160069098740552260511338577583185409993018585148185795458373664061158286085811339025404184625147099626208239596864468196765951763413198144157131098584344799653959982934899111818907335642721628939490677409644586791112483275383984