311794014009340639497725579130883442134570551640999814373885939644952935222354551838986957283949793169573792079659569214846939778715966687793264825553888732485201911296642536147885715101284320805893752367204292425723813065770997223695415454285538685829022184438378376341672418444513718995799473670780820555327852845447593489542750470696186018450258248717683974109966530230535957988546969110604400318475112512956054988849868113433319367470338029838877298036244270640965673164786228442314182418559728563784470495747574689053382118185098629390779731547839186957492853940898770868686033931874987596477950172088336852161525712706756890695871863078117704329362221006310641331297402495485916129108104011911875498578777780386162698554849241396211851696226087240986765456994158837939592401110104153243398955418363844601560135063500382217247115359958979494931539993680069549975449964667891616025333375312635419749340377968048980594870247165171172656766977196889363525368726654662228239303914563551607251354177245586437141345992048408124045184953174769885673346836669622570918326467219904666044415726997423488701437572468306079548419603444536286843243591331586766972961779292298045495332401450711520185403289188371380662236787041933477818578733771193952172058514289148956258620551037485468314832639562445068806804336623366809780170367261809355790714665564794524047343023920949220825679127969623543707465119341499987241033128077528557122917913739349945942249458647002961298697535729507632331222792066217369800828947398319288072939613669885922133528363593189596146396902629651496071749369297519948784651944458015051385073363275639221528687822299187296925754522949638877154519811125196157571437427599193142757203083539849238919782849697403385968666362184377026687966678279326615474324538782286551994978629951815767721809550602996751633151279799886019283354912687571324693776441320777059888715916907880712151031934150258333341235320595187358238696187096468583891017382915553539903660050322887484074453274671727907863534556016372688083557618978484236846411995412111745179866685195822844717191177672893646582881580663359787564511894534528512977587748198488678627453958329171775408224805270830296316035919153322498110918047261775174670914584886959246270143635341820366383762251874230941865622938137517563020547138302119392348795022697546885800227194973458771466843106366343437892616312038297466709614167167884537728275714472408885128697067784265815426726572203192520087886732352743335987220700454786213846140783345228438195129426585581479294437155242813969815093400680058260970679044716625150397501457606419142675957875570799994233123007027734217887154503539913118887303787504631919991455543474954894365053753314768492170837997585621457598649164449950863697127290931919840457002448321029794887161594333777228552687228933347324629284792113801921249520176359455076682350334961468641307066116769509287832246769198134510465628922690453165698821753913744577328664546656540724667573910533168669723722217591269374203359848373497022364633152549868140885612994148307764504096664653829866418967687842838024804580176533598450317488718287295787259815881807575396559496491558348323830828822234932195960461099639315648138961587892394792577353928434678686049689801338314190438432431821745134176685793648538914918702221247099294628686755645179885478740298522971111820592272608986557395214686296433851802993717495811225374134123345752824198352185657443955545338178989129599923577239993988383952842631421006750880326702373814425476537472374254717216141851573448353909520134675127242814696923605817935758758149594579290866689256293967950437768250721450832498702184062531687605974372047954619669832112835165226692376405318940653475700955554578405723441773216750785583363314423106952696346221145831941112899552370209258825685098558035993625704239279992353536177289305366896402150988878842435864665503384122751497594862848411628676426959938801240347385431517060471596932668112568176496837253851548835426064447675632091975387645141654663897146641155426934643859869486892651170313169850773758777698718044739813990455733750901083807532935395331035323558748327599074940991958953072528250438757897254963768352824466264695906412953374142142378910580425592521243424862489759988301578139426455763376371974513217930739805431511271712611232699557257316884227291712599236244600889221896127118241632420761831398241635622658032893767342348377513349786457961488382063789480412092262292681771588963117037148256583107036902571634252789669585997483343375204133767673464704546971994106392854075563874528255963743586786489653621075498753371279152290679109992832779387653248965870283298297850309141753518870812352815186540615643894168316091312846601901540772262949202996346524486821965853238363096591777088324898571089483552189585709845126319198312173031314030824317017587241292817930470489323285158241799626369657364134220335363782215898361282197634596921873623824689950929354778368164118873692399641407690996246360930074320719312912552446815642627795989801705260002828566486591678456052457726827280747466200969358007573958291885534022896997994732676796965281179029176849219558503904026871278161543398891564056066306740912551080397249358448606055002897791240018143483744001410516985671677985682091453668416171606905843531886774651740979189898963429968637825495273300142742932851049089129891641746984758135072196130052151385784699161627960259162323741315230796887643252888482575095711155081691230532740563894197198569037997565669313623889422432472026907300301285403101808114663339314131834672610145819860819651302221852049913955417019022193988437489364928835794484082206797728254998698994025297982404362766345572882330927900127417037588734014920107435909767148663235735722975182650853716973497253373331320315852274895693657007275776189689174416135943875253830839424925295808095639213