54644446180883274027179624585355176853872631927220259019506075221045484538821716151256791217773786457131038363926228951607914861882199422315892210656188633291568948348154604461235526852975591821786953762629946597030181682237667466984372889324737290673457377614415697165697349674322267567255467431593583734942131639447023995959602240549803440582057437391554292094297473095341574894796522108177093176303628217913380530385526844146485280420647753472402523723896899267151735685357676005328685723507849629642143322626615267040072572846716771344950938320696632912495775524652673529671721696286553682630750012722855422417972740623611114852324822902679487991485286174086458942809993156482163779698933752937215383069515400199503888605658136747398824556466681372461565161749580114979806851362416287662731146455790572659885692676963395486072102851560989213350965065206168578447404861498015576738643039571457879402721516555312477781894973522220265159736477496142902321053061726499535389982156921048555214239147857107179012996902813668055463381976621477748194428795389454893431750794647486958463114227872267851037635619483321354924869441349996484828917651179098168150347960021242675097643342698945775382115797649396642444263581181545898352631430873972710813656173771961702894299365573785891045846095358978988732287922145449740324443111334793795419206814654043634147057026057139080674139555047966799767534575346731440042946547237353262666219785220695991598872680799877604151590339767351027279395386857089085965338315818287954280263685641162025833420750715413843683822385396881880734282108897819220842403608024673354978643827627479978659415202126735763335678331793140294865160670462276841488246818796959576692532173328763740933394741675889674265681129111967168677708881769240793258090695238343915956280887666520920971606496894994071798355169175546837256843649350738494398690207481111947111553751371179663009418848142566821198346729267336019893683263475931061850316581332872559815923051831647578422580448819946157526513861212416152052391543735791005486828569062082128383490755119181652182558715147838452562734891772954481497925755337229846335147246445230742017564856188462707670415856516753774047142161353690393447274413377231170614990055512294659571301099424916114066238375135969483983642199282119797718318991190422619234619225384706796042378479258299506297225674767720369374658765122809551128771637364959790269857793003106925755839565554069772754218445123198100691565215956299964771136773402266273453964968149300413081776864883275168553957611222333305438625652384635417594447678873649532515139108982583441698941930719713845942453246506641035112045155879568681083685368433223216581749331545824060479745868847774900608530211058596149599741351575603893290336759769993746764888489690118196752998664006666830025225811624463322935294931324576462897067845023696338614708961405285203835600153640078010321622197408936452545496916113292082729683916719409614865509743279185272552535438258939661691176576441141175319258027825010896195620114643498501040426615647885987276289582007736568775418976173962700749278458317428987916228911274981482504757067308467482624783764940339053469463611599309476078881266163743735791347783293542615596448372697247778657042937148340120255546386852628671501694543644604483491864169156951567958760786335686954150283205716043469634162053842742973611475231172369722483401470258897094925898198391202126553421057287386316525955084619231943004630995586363871063258014147516382496845012648542606770170565352890584056676292450369662502994575861798415116994373319663482744485205229933748059948926186764750757234799396709878134837189673709135645456445859323873846790366711598837438296185498809531154117149033454965657628430228235724240797752316642881552916498363855935724278563350667450746693687858391269274551986311045726659269289440639718187561331431823260162099273008371384639870126990648238682816623124856948042408344288132147308995654939218420735714247739477652621535856535249823892783668732206909934972452678780340439911521941135052210493214260203488122528685423246039860659142121575734663933390691451439516399449076984570912941169075094883415375223994574455979143747143572614131158382337823246122887369264525503303981743347120544226924894626923577069613909596455714887731917413247884256358729181200214247862459294117941643707312652083055440596787391473154143336917914787220445222839975876606224764436011608157641440552061235434476060287778487577569171558079767831186828568118343284464627686763459471750196863375112738983380350673434188739600240306715565876778340915752383243907133995207006497744581516734497552918611385355148217878942631793142693736024133545562957666846913685084743978914615330673269283867169507800917739237584418311171841178293869258914130308385113702116433637927763111721804971126090028357611432826472482273164626142329857142705542380690692714497547207698474218558012242686801628883034988375782300689334147964820043298984879636512368872212832010562337387938934928598427472963372982800102762726961125758414548246721229701573495678738774306262596826101277951330754359887954522529346747854351480127714899181300309824347999284588176159251227278279211987824088536214888971267884013846071944553066605570897715660277138902068578645605292866718754638892131172681329216668919664438733581207699471614271677480458068381104258788720991923191636796426878997145674691386699231320271015836205987177123779943339071151927615304288218061649741704853542362371989106535423279757049884694840578974374084543076508590026134455907632648526735496142910763697221783945176287401781955952727530219893664770016711692300734277527824897761759109138149262591428211014925984188794376848599568738442748435363125914189341102238183837592791111038400684267585832734211351403489170635771774622437124221475036110107974472968214957819132201663477237905