42966602969651528269664451871887967976822398780930968055288252140850255494924348588410676621972838504144871602353537484103290812884255261155918079689621287506913552999895868857668651359519442592791407171387177961225073974310439143754222207488942292162550259049263961842655387447676827006494287925375405151460982823740263065337319000769828859582632282272779148672133196383539523234653950661921293943905160616673630844863722315933611952122327623072715120175489422349612432903069921654023863192017328021273715637180822481772962991293490810006318530973413748887729264359899297387771949798816192333047787874959891099227469350082058567180572179251975297221286718098337787448476793772187099945896742478052903692616999106157826789331242410114321941975326307477517225233555158548693818858275026235754603776786080324876471697430960014496219638137319644116995359518190311261482046872676322589173106661634539541325794098049448600272698992980090171702907937367445747181497873998126488891001884564277137320174381365861432512538478616426558357672874274527384917572950446729523459619195133903770613533608153496758367928474296650724675149293020941980230870763992037902963162517988417254265676550071927576986595926553553572568273202610891482998899162478614677423498361687015737449566962469136266459882107202342438976290331138223123290485466315356332182557433880726499512832740136828902806402764883421723084011748785632864145421333302738556259545165469173717191778721710059501169711505863719558866238263121298910740743945928518359712716209929234337959393459395858358975526970703879625811761593275253281672345723906276877321673998651332212895814877986443151446328271353602922463714382420830611946279867971473667330377162423402845763940614298267587563926464106726934828274222884742438057641763193354414480768665953506713445247404263893178982799295283493842689082463369083423557550832057076928354701512934861349571855079003481397641599681835750378581488143305948324812046155477146898129143013252057614468575973270996998700158547824864927088356070114141691367482813789541141812277672109421871142897551636964092212428732746188984087496212851621532813897301586325642701762642305705274745656267120198713235414203897389503030753119922877132287818468414933357669357564222152197596762256357154335245699125952483922521611727341519057948223266931820822725259912924753487816859506295173202811898310361384337997902263381764354625344843478753515630756610759327561129586296608080666562036979681247753547386568607777504692244347981326981527656097416643074090133372365859011408035921857875889510012099186836415248434758537099462191088633241679552442560749713653106772481019312779408917428142912236392621045250671103022357434769073419649200531404733650255925785874652551905387847372747005795858349598610597919934768339325248555292951950705418690022274038812544295442207465871734394929735190127581675135376809319251921727375261114296975807894681647297419513712235936510897058799878131048166808430037319697138872376333383110525466867682414441215341228936111549897123772721237197959251586719176537522332104256032072415189776156002913448776724470511482031730964067730590349329254828566334633676244065153860846536533035991231649477639946317748404777459098064213496779930626120463084088849495332556567531263839433571364813122363054556837891227558457848375390246411385827367486883481437196323674682677331091093058398838452600957493392752913391863162083462964620913887991247755449872221466226440315474903173488150291239493948904269191769725008444241219742422059383759008421827718366068468823671681390764431343021942537055628647494384163287891613120418922277619234182316419734722092049765714454994311589264929905950671732511993685885455568885337475239136832766688082436888047028016946585851907324415299472848452862743106466669025151084257437858224558459593998694816852816773773861933372422251577721113426841808462836614205136325273694276872427253742144276953698356142627176475114757629809189411961750282648484822323598438927942356654689981048315828597885088598396619813495104658438122904086574629799737066315561693329508658313047692160570865674183913892526776457345708869901949473226143822127415426493879315506922142242782209172851121932607926802028861554117622238661450916815996819168227531994505109987982317707098272064313960673798496165877632499393566421361587965973133385876154351886152751834187324748541563385449451959839819378918262709160244907939081474530374179381213180766611697844639708238312718493579796678688795721740548016795381364252796027329219034087964553878155454459262974240950536892390237729712978160732277795254732716644129492158798623842531150338497363112512817439792600784289095268458771432695304735806646207848655159209096093774137481199526918111864350122689213003529011835409600615822964263759530835327682244699652694665701458084817793329211558167933373571100872153533637766544369990487073775721578735922509537211194301662096547218213540529631265573785589653560014739757716284531607670271986817223838620750999411314661288133761441780163891168766109584554737728261757348870567972770079856852263785976703490136278911888169055974663387616132375761161766253774629676069562592741853935668889491605258067492596984452821092805912048559915613628153546669618427125326711413828226147350666065170623236158983117162267914786539522542213867242858119814647819948155273550519345239042988662842958977925668216428361633344399330253317794721454044788182565975224445455334042934608692772885919232961235517355646942636207992473938882002085630346519988622594265297241339202478403888616206999966162191828216413772063579985391499779644911615918197483621649020831750986099401551273985511244881774471388743241586367722581154795354249143932313679838815467304098271223540112898411884716090198520865082455417152933211327560102848626816762432524396778810692074533193552067613591973753283