22815595972935196231777292682984882901091936354997560696964429988831675917159296030361173674976638102633995717118835696031201930475418758583111965234907554489174191673099892475258068624152946883543999787291317255317099023298394721163056959222816614776218626737540339741459961817017995304916791085329962941718618533919579742133040286028636376572327025489237598708058769800032782095261337634337583304176540032728990572464529977112254303966432870171183475746907535668840958914705366881068443392411054918112898016279864331387032463512156129855119365764744956190645453160143245350389871618531115794788299917982514572412111880684702608192773014251239285864772037685123588512337562663153280888164459627258594805692509957917176736988282768546558203721119606952450464356523244720892250139979234782998356971038482131922085223061381453428683964058946733855828575046813730642254342832052761246463652598385176301797799424545723877138522276596124611999571552503764569548352082752291269258698934909482335452511053750177054343768114739814957358105815464339186910409093028411603440834445522392131924166114378548168145181784744168393238693214358878478605583473587053023892356743904930732216351276346609578444590153552447349223872399681196514944813423661780189464662052873037496297365216556035388356465502138683473259891068107465628071425805484662634641988214991328682218842682546041504831874569725066572449304544627563785841383475120091442707628752913358311304022251886753987876942875022613818716127925549899025661534946118219785806738722585342768588940984344193484772713489223488056397342259919991210406315276967858274086276904608839589835461268085544645482679521234668926408422213468748418315928493537777329574493043107983536425188451299264764161189374782924610484692471592431107314310982354892765793507115270259001007716732014014284569436385632231826293139429413941953710743980532082466169128536484486982246286866483524426012408409154869039643546792061299991395266273915504882056176407954708091357135239896990624762281258753777599591167669485430652706700118989683866650597986405945264666958661261995904687159846445562118964372186569952240493092106973594811963995127860210354681829837824893924126244129380866922479016314281225663816454513332533137309365744364337507969752568490882227235430379532434774482864334138631914821433623707160956926291748283875933253063793226277024924385411105140839985245308468290311806596225736140287801536328615693482705711581714789546420187973526399232361795669641334889545771646042253464774048941418549252725135823513133867539483066519998120618586860319213187995958458433314382837430173786256848453454241345223839372320582349717046273444924567771854373500438274496676281575017866234427198918096331856569624129188111535829964899964484031104816218580275913638047528416302636539378622820493734714608693384293758996054843080594636247475644672173864611906586570467912423749589497308495276750923396231312514984535791004197749342214901398816975917436362848874852505479478396777713985204715306145534135138282128282651092363275528850822678123185993738559174586602582475862823508180948841175736580809116664573744626390228146991275298874346667212116229753513401996899746977237238373893363004483426013726806751010769496176564216599574422088646994795250981377873271272066174336394566985147759550759803178086888911776045343556462052395677025053505177111744570279775836639565094544443788690298348242547066022581638727786736611810136244549687814836373637192551063267716231064792323945174319617368817941280578906256805055266192522999782329437784488948133593866890512734577349340454744215388268858357281153259941952071053476638355078295609147085279299871963867116777843308830577688322688272311649586006569540799643611421827626258567812598145858010818785916252195729827190698420273264373146971145448948295691884183994178358463961167771416441871167588809550281017352415317690086435792763660519125879501148474846617299946052851963340123427699878156474947991222394590984881521419405594024689399865627350708415178330657148566026242249527468190508603933135063282858779086679598906638029568991061959265122551796934790237558938998680557086770587091091708140537872965127074286759349102708289649395648069562103852389625149516455868456289968444266119449908681828371009216494461018536704171968022441210148708953950648414801755123955768395250652022436770015708812550354068349332040984296780152285537541955025446432251698400769776315207849431782390195160818396705121994771163622297989410784172112758587951225652314008229847505095433541077274235121425117746713247748245504144224622717514852999560716268318161430533413371350398496276794394871893459227526868431234444545441988765491889737188131914810701668448369567174961519594985835442551708148450840062325978974373739051407244878885969543133877761080211652567658916621798075315036098106609312563154261453260398544931820693618548594679268582722168961912442326449098936894838358745668936458492924075094967724685678445220299865033652638844846431456573954952919086352972622676525851217872837883168433240241551934034698534049267435621968381798500507438444907196334121761144374989958668890551764819991736016738551484391308573282084787856113469178092791308181167776691569543484112291155556770162796287172741831906778812750846356553803935739589496617868905657728231134823253488566901664899746085238660684999719048666161441522674592356598585304313777558157036004522447590091328283884542369182745069797297596858566026963747043028414591480987380928526578713304750458192836554912049701184870622410785099998587150747437599136711137421653145698543825773416458441213530904552527786105668475655816136732662366357497763394927121316302649326693180963285806024333781319522523409068255336125477957564665721235188836994353220292546642236253799399975630905863578516474763837353571263035809233189288658379435798459655081314746429