52627812541934489118515088321452860639109831305917792193406305128985547442644687994841244867112911611894750809716262292945665365582871272566026229883142685688030296881515642969720782574487348958509971441187224872712989637880752177846851251159041570533754705920313377315817286180251010125890714124037414493174589692834493877163855634695828996662574397808547286223234372983882371525424123735243187969410919138586848146562619763731413947259069009429820877363307785875913819642327778330428094659575787931851968486461662731765468849689594675142158733582839877642255584857197750163724101739175770165214468474542539278721302496129988222072576516224765337690427765765546716185467984156318993889286519857269470892731270417435199577678897494955239848181381123899227912299143282697619974775855417921818314183573770812479119067343210669457212538818719698685651347471221125339242652073077878196481948577867574026557438079159509523232884143947326899513248972258961660729596619597615058194956383859608588159337816261816029962521822049230703573927807346211132189666276779365463127739076513358847542913749389311966070179191498852751364234681540401842369727431850496760668292180364561482564720017107897589406089581475678568569663894213098806327715127482656797445012369278121943829792258259913632827197019521123434032924416238625866549656941964102709830523394759654137743210469414996779613128577821513671696649785950823341269079521855598984522577795006031959151486708826146301002987763594953412372316954975771936889788269791958376660628167501266847792229075802433745334258188149004367465902842104775694234287448179278759186874683642587740048374627937886926251461933262631890694559547792162264545356769517626349657770291103733603511286372513645288506135459528014616711469313185937533439179842528106291491544491217665794614583245288940954359783781479566878004259270286693348688029963406113544003726794305444473893279476986518872125681312651552781538712236610192276976998322559765967358927365435227979975336293991143722641717771814250184196538590764153553468483953697734643187672148167696928934991146521649331442938660951714802459378287401667517343346897088197999815363348781917335090839564201376398189413672534447226671714796987270253542424253371919825793304899656124990631061490862819997564162764778313561849750744826778647484548006435942020917610809715133457546991877807106283694216644041227717365399514155280524019694885110231524524748291669464928095286644588962837483705435897223079380793636484427089045184793448299273063200163286512962842714749092508249424496270708394415962232615536794759783055712620053426178344627410126197763777901917652584394071267192397438567975435696856845683186066512674578590480718757371539664616456300122194429202353509074454384197346546765258956311974965440978204315584016870127731915360365931957220773294468252544231266949165629584698151094832144142456317667392503177136963871874844471235976669299338213341647123326428220687347355755124762377453306215215744677793297968536161279596242406468380813610168907335592492065352146474952609130110202772959289974083791946121103847773005449231857313979053330235697833735388957890887714994606350964763293469378711073144403599739452382710442414220414196145936304691724158554731179905934573170633886257619345457969479872202071254577039716972249922899496788312673054719741757128168901229419885268901850225602530829943913817713054357790264557203144691436249481684285129742400830194035964627814725929829669705345637557963089009605918585977009649299422450500957265125533743602184765858547959584580249023878469682566613484315252167603863932925461695923300196579120070132295949371654510156742527984689731636185793569918483537015522663627375278722642221269170811787713168582463722578231825647856869595685260814954216752836759644540120194715888879287978254986951007123487490907972361910257136106459582424277834986022453370732768195506510086738025775796132120326036247026196658206684968286795552791943113397211146824764933540817506586074592451481896703546719631264765110490354053475267118825241289653521976267225685349987773477271375339426732434226975721826491732782194059871266767430906198482595803477498969461015411372164317660564959750747521516528840934691581224597112874896191098948834732720347888142285614964236487060751166582557473399828019968509551150894111994831957136812388270504719658529428718299152068655418553346008439195196562241433434799646966258512563576117401290238643027685832108414546473350239078758205222612554019470888427030231699946475684376535446345119191262737135164471385510572358712234941832958828628758952312802478947963599760232633845132130539821756329507733021342977156393787230341514366380373516674609804762668940824781929278512531220410999301147452121233449117145582927699782867370527362659506545979172486469503211837497829217305093299799374271974968144492484824722344596538171397439637245261731775996445314029741445443455709138276034714325318155378990160719610555505589036022796889614531671688736710259622754550226433436102741199285197275249305956746979583617463449936691674632983821221782961406638546312217718251945673719619831116363861454591656913598734375720176112328262223838885684608305419076062678416529684842115407933284643996892305561655559280815306696638514105192448000207191285368795586675812055600436758927841673115276085490333806587343168069644200980324484185497912466568288271580686884885975654645949620096680993769194387358085254512431343114666199747835416489767591809711946066454804111723873731505258815359461747085268184856523854384602563183680649577466676878405304041281689451458672295723013303373279742363027713546408005616142582039487294364279183508845894095990540312842112486972356248147942437187110991167481251572340464513265948969683143057599292443322915804938898232548849979277597351292439819476921829949702025716348120124972541506147997036