328231097547278311297535310565247788322949341678403528654414382584623610743713756513588137710771128054515930859783945485020396943679219823296487017002915816603720197806243360071234436461055216753178799599282661942153914820647121722685619133458166942493061397557054234301695576203496634323897175415221271759114417388891264770322963537712569285943775492299299334100872135938775434735048485664379464057657938501971988373079052510161794366753905618446449907946616099795598045987007687225279475121201020256874288399181031323477803212340738356755841601426561363029175678548818401530496483281229546483960884235396281724792853058371745871581350700343669051165850642871638951279493445429597944492367660382393006691507325542208177413853788438914965724282788541644934610939142043146820425520586542134376324030603105203414669748277429959386104390745002387499343765905823586757634585323527262874969591195827703157166555846191605684569423222321704848133624120107962705867858584041079995911384968381389013142613827551611644597524984618825969041210767284827582623198439686170411782332892058163953599375797037211353401044552189834679834875852115395541671325883276659964188179813802348156299594745962228157943118914665538437455002137997730893638834526068639994161174092745783788853107195155537797202738752644053076581476563163421291362801098914588972454820231680512962737289302673971631515773892954886585890878657372966191101195863736995436110785218684889999861907813231197464012899789662314174791568855558234907277333548797859793860651537754167028137940276628424213632039349549338526662112939277574357148473948151890946599391195586527569678438387193774559197778020450649916462371215107626445686781194256139111879651346439196629329382861012376322797582944453311982520100983452031801127624391639632433218516126151126927529780332481268431845793517824267698275087492980025894988497639967536298795314763594360162118897336961256172631519768203516336806263614218943411753877757358759132624674432119626514519280774193171159120113344409508794895012197349557270334376182973325483175412173407489452239987432573987619302748245378510458196341451166733157679336351849532818258183942951561267382396901627153801496721548307519987400542618721573467731605000798528567160752896185732147223781524333866659554621912182963467350641491306851651076315022946040719042895775482845189389394221788507793581182373594232225770395438298299643336939253250287348437827315437187294776378241903823371268736509697049062100356583994867672470211948857492324038479452685912216187956098261241496274417782288355962646040067724946814193270778367873019268252966191713226441728160993411311581119799576991399806192282875073271114531014625764453849697221585299576719825401174512131476670776615771414195290261893464428472344086088340317201648931180256345671136003914552640555506497679561710168872805971973549806447448976811148250910931604986390248478233467343383764286550739967274963788338856253964365925896051037976524709222335334762160329756156477662375457005124267475772778479445093224771090694624710316616052123285517841633772049966312553954013965811664745079235434369065054959991802776939295581903331555332837235434041571984801853257161214595091873124174351079539407715593403320299683473362189387460846780446353317126114149328337052991521174769638874525964516182677852190412370696762348598650408024485178340981549606687809154808298881555263664316530676058525243448292770740025312714143545547028282011789179656676649749991883289765448076915474654527409125684481914871408798494150923529142912618256051042520753121526941973819622318334855401969368793789912580859865907438967974675644838789938982473173891788933907489582410411889322658237296232570102620107858181213987473926892382452315699627651674252842610016496936157214401743681711313853397365835496221958262978419116213691208874764028996110500108383465855492127922889216610241816733638184414264445748295985688672515877806672425297536203158552971776011995157246349193348275458764885320483277406231395795351351593815651375265144609989974836394453794562881700211162088188499227840197365807787417791885454996961507275442822067146144149167251842126659861569794782177713597335771892527013700443196124627128803498239175975166528068438586481933073504217913528856747398173192637618275486926486279830755942014500460486337086565188730817694777757951017331337870215125508949129202478315451101745379526889012774157251197883564545073101973678284515687769125841334985282535646413782092723226107436977321293678782509616654716835734165992546882523499438545710203334457216937813052536885212419253359572968555595989361394681775578573978560799554736318427562833226009066821083374621137818584198606642988094137638205305826463692971508773093312742395054823967348996848384242561233286595857759972435716738138414573667252278223968265461773046212132256361225532513012061366954041926686289312397159487805617572840233381443677271510226027756781671061008326859956940500757536262855538769276515161873636440987112857520981610859411285421522896966525756689263407787272329077741222673337364578373796701733951560573352420531234508766925241119868711171461567586445327057428152095394083563152027401639180348293219067794640590263879488963862185591796484089519692637759267771681964199477077017634801778956837803501871247781640795099875490835066444614370092623471198791663354282897224935492272860922235687927566741235679833076193549474471735727551284183993133441685140494202192241487196308937523134313462570705119416874698781066236845424550381278077960318778719376463001830677388374679669363826971428657371585924879248360345744326260216862586924731772663226915928459623933710757855153868834014286099126403423535857633123811316639370574987946710973532794337466913861258813755205343992141076834367355866901761531054188340139754561519618400332233788916279251848378369306825326591376430765741681498133020