48756549284281097985570163995317346857259380647701990454935725825078735614159921605113371261749734406913688439090966780388749954076508999566541970866065132981522358561341709961325532359168644068987884812697727318783258466931772234785899340439664501836197991004810215785875481874481540556998289787361767064035983845767734183351922977702699751808712912449838712861291327328478818887678371961181740468355336417244514563384934548273683615810301308902530277389501754720355009815639311235131584743140312512305348223992663627544498813345563731402296837546338802853285814077989835722819121140854227991245842784563287056988079377328637489268185151142887148388926664543197298688620993949396946915198956681538430772264075254878321257264425694412568519427913371198242965869282329748248411285559967826949376291893441911747960127771396153314761841806387356486146683656668156163917345868917542296317518969157570850484651180862139594833583735877337947897057562233262176692049299142365031869006725410929697953462793727177516182132381383349356973815373254857532238527695886461703969739111631956332883695525714305771774366932421312086957413888374483881300165696401706184587903841090702481494012738640770510789118366673407311158951348784527906627422678411285626184057812279492771330797711433218859861972512881372873739666875913288102297607060295933617518962972318965841008796082439015633665452179464866288925177077702576667868046223757276863969866850799116617719453521468499351931997317658513678329776391353602062715575999818596936324108162651294168548817973766616917184647339304765724741094139448556171719972170203605991545606638468651535717216211737061268368825816404742054716601548179521501576978979954415741154919857210440738668928467097448465501769507506202029964702686757741316160471603623512131639189609398382223330569119158713535295176427679689744302728969073948956454992666076953199442615022389414410630817659539863086068599966325879508269383492722363436992140559568833956850791845651974532624096893106852842604548294552151731833726841200766912181315829792170842999269501741419252322386344274791907272213398410651808330549961963335677377819544910475023073386195593228728446778738311995928019274173359920834848316896358389821532027737157126787873613011884069102324025015816100927372155795813996767788611399412888477619184784539886465553435367267145815651416716231039125031649756454757063236347554146542210193086171689314924565252628309700367688801820157725646332558726348716976089787909282881116816755670539597013138434733979292934436435203695630845439724097806088746949696170629388202002996153553598712544503119704416761507724780453748393745321936466189155706964468104522462432219440154374635332958479885533889375913458763137394666275745332825513732179398067505977702166579078174906985837640640288688679372566751684042939849763866965746969821161225012758216613043313598027392951348132477218420135294648198390472164282374336637571045030928172967414524563727256766217220436957843369240661181304499266663745370488896455667878065446660339639417784205291334588863914739925913416973033118774532651658906206693716242800467785854100266449066778403652913803290063029326204839169526571135514226233474851707599171694696874617969489716672556915625089079978520367507629425174415060708979117925975410416686497081547782308182008281505833861078547956022670326655891218723777122276654462666428241661299909024618188239645696454490533303564214799686006334997646476626944867388118696542322839572667622362843194256285968314280647451954506378070788816866621677354707620496926481509475159818889323702303919029155736614193033434940925226856751834791242672983551312280328839916388195992363779569501573455993291845176082564542415670947331514503257822496955275272832860095586478944451631246531922684178738015739552978042377733926716028289212093336252406833050961994906828558299494326973676896825880135917716219424890955012057824597551757077260838686635140906688692672986658524626887960054697430941189628375862251815070811858132326728166816379714599281472779262527993562490119762567342888976690044071510071696222806885659774137229163726913661729754830315305738684696409023343422141647509926165881107532925187163727769869362440992298854533062659161653321798696758738982205846082986216815555485198947831963716129984581728632203311824515612608555429664113632995552523315565643621155598771597331489445201364561732189977701217683714651285062324163742398248943736769499974461755582140683367238819397069212161784502996592822886375587392116514797923195213712831422665572797428339115670325092838754424194952478899611604731012508846756876103746730137522203140947149042652298861595176810873079694944727599120170352051617185379771816772285405590885148475070420491121143585999778032945523289301867119535959612789218951189703478821680673024723475172629635181164243189843453952487767576727237652434017282732282646112446937732487993383462529521966944218345149084919702941543410125690878327535827583497655310643179873363404467849069964348872311709181794051009490239130265284312683456966922671744097362442612959194677167974929168848448483874699421736284995620646163378519550561856278759928051947364558793018141728043672388861333338754078598845572513749618664885524307565965392613136654086134985574034887735367441372474575755506552249423513450928457754984665868446090612313061941317178529200842367167343077103471854657103712417673315687529814995961231891482589428058674612370622826937301661129782931475373184410450882547164890848848518420369004842245570351561651262281604465995843268557089116893620570648417216606467727425620671149085331560465435247839799998667911768340743859127270471093553559418728592123968372371940769777838993370116412142349261327213637983717061477188920609229752843576694903730259548368417298451086066442995754576197745702842383325675575132264133585638079643056118589741349125