76791646661555349236774722213120347569624658013371335312141620461186263217512596520616245527645100797182847872472028615457942111511364814889279694179139753906529544991837274295296627546399718829408798193243801998375087846139246749892721657310944049897481873579296817016888927816784554385148116408982112892660963931081808884188734421733683187658283400947511340956478027194782424723608232856478399979555337165808890061022230481772526056649258097243492864876435826347077244989563288098195860137843112659138636906145197709226819333037574784711884598109871875548570155823613465980654385797673469977736625807196599451546677876471596314206721293102599490821607665717073034390858276233181031438344452589266965480674823474779552950917878563304881446211444388470094329522217176552125442094875707822181221473624057869381753477826215426294754688984309350411508834242909068330147318489948720972926311111524133222346173828162975183845783217426901527384482474451870614726144126526626563827209748316861894486962881580287552161704663491456747538398456747653872723605651563355943661851589232426278711395256289754662577487470465428129668447473457630991621178362355163260612534681121866848262532818582578402624276536272585845444827585712321432721219376137577133813732128134800447015097516177606402965011048781717595845286498147765112215658245223956991827851114159879024196290727909361172414651030314513553151635822411537392716673541484512279546542675538156504798359260778119802674171219840767656617991793404251323339839699506187110548548146252014015362165491314161846511822962413438537711747214371828204712341641879910447968350250811527409217645715249474755791604670781914082470377124004122129865629436147146621429223596445987226259484387205919105637284797955993646490774894297532604354854203889472844314834917406875436882265653355259159938510124138514271216880306620396712037350858659723915269821023033481246271005988951162742225328130692708127924465238196384965787083548272288158870221970399886855555341706386350427731044579828941305751161820695812808426242233314141056066829729208148359128587626875676745894916939883356384790439783469026597147220132153713284429040297812316278969177874323288019922265461934069644996679889426454120481378424925772682135513699087860355391920971356737238459657497438338656482951799598831740444579346194278697967329122760180707895729144092398677912397101782575682542378872566428432253620099086519372510449590354548162048997417672763021951833025336748673059354489564738125433638506696275713155434296968999916524152039255585287028226365072952063146761895482171247242558552197257013553157943834300762124164380814264528597866918439975153225170489202549524716505964855061416920741280172369384755841656916840417256775758806862383830625598297876559777032865382859564382309113146804171843914180633328452539476572067177802953120111944979485627350972258735893601572322076576822369296188435545179316103243059861607225882209717932492293302446920172304431099027363865783471256796614833018896271234964563372764972376509054289699275993386295985841193534859774946632021144243097901960652175427247643916102148499523456416025543623797949287616422436034249210461502368579299909275451997271904322240842300130079984794717184953701935124154899185141449457613668895587491451318669478044466531768527064116574321735487598635743597216377838495539998536964457934011327406311613157931550404005810258151125918372914552549157934334233914160580765504615133357427394785017297067421640604199978340389821152462748622810612529985134438622179243482559227795819820731800824089616710926348276752269125868791816381455988562638339710942588742725865382476956424344925621609772516280611246247984042056366460319638261701048973991859830468239567333587179778121169551208210185422291141581773588435186131570326121972717527130932834369885884071654629356113176157321318718770878695218981443751054917082699519903266813971397827477262155010409183764826568723702090205520487147919978235202780916765890450494792387292262269619219241281443481595223744379646411934511737336978198492796699184054142599979221337163710489166556216276644546183949632007984257136602991965559591305452730163714854118521447208170761998823978412649908206459859259725052645712476132395808531815311486039785573944325893382297704136472479552523714487777711230596250784056054575764133973240417430887942392180586142505124442524468626958477714224185196733117721659765949653203548438560340514651856767362811360967528991192071193834225428947767223655964926304489358225019841289446052901379192885210542252638695517045131903916671177064818459347355499266573041119247922841343243464664137599754253947218735958485053952333205648283035730074607052483464064934306683330893711068686780458129614972516630508631333686512076443369565232174793541056898677515259101954571248282893985638683535767336815796873889861101962865845395492319749865767878218780465529362194115349189912492699614045669287141448912940732376831285516172397141464232198285885614336798553716715968078057870564893085167664425939755201319995585309979772758187869990529027498293130687612716667876487428784761774731783412337976979705362364031001906458519458963122143055884412950764961037895345354514660291970311394391425421497781942322624486594117988479119868933455649977065597315980391239153991659242631374761359988401934108645844688602548714598133893290322874114553868058234824587102905582681773152364930498944789827895914423557535585819200968516172840903855031017200158620897987551859299409617626947503430893284592358553685701928131356738042600774632496931537729036354766321248793630715534038996270801143681719295884157116962953172348619658786717541192727065318722338904475575117820462955989965640996836352227444912519581508565746678373377678945244637387961111833847022650407761895459771889658494344677679629272553812046929637915999082239980613330578639073524071461182436666237471