367931722925350255184868994864557831926588466203487564582227444188583011314954929916422491452278894725550777215856798882232850064061461219823462140251937745561539191236712619421946928227466295181180261596446738905612233995695526136467279771229659393456465661689927001840833542559561855097599245259894936999105631015378425938866966353306726268058935619245229681053182785587663537234097713876072180373048337090899353801677108174383188603084545772287344251952255824846533564933507707896111414962832925945445220895985528726338103227404131303797293435671564732119595054475733608614253029128243913990226912646734227037617322182886587284989266335471591450071916762156769083479921967083431647212032115721638736345783686669596237879104776482610561679465366569386732521376256480219581663713792391761737220522886781980846674783484467651083852780582724901291710608873943623169641136312648253552971563616611049111446582028893942721314967639615285933209021836111793743602833990513336820237863094128576183151342506448914518542563774949399587497222683383578319659839498227029535682979364189182539937586394118097585775831855460854941921783367784858742922418039710648533784279125975981220309223096197307942017836796562466983192835224538216083561048281950729565625614735252738422537029819270718349236078925128329504823972309778427661686452142430196168228735861765343932162745987438828094450455282568683959613614236777222054864764221857680714144818354244928504085814178627335278699956275635891026935353572775552369317567773496968498354241511971632874297829646292468733564787592088031844729794480398954823041006722503673068772518768831197281369420578772356713515984592489357006931213228641607164592201641050667123565346934255283332449185526506793725877427128896036836872858545256355574119228344744664097886407118498447662705341855814092350654208943299696847476382556178588768812467417598218649765406435858822616353273151340377805112840675345802945232434293225344294924941931886605331975604189845997573098528980744369088345836215564909157357195431918519105616300779576597568868528031942658106913649961417732943413214489439524181669648158932368816556588448673829429887953046207408872465906122793930415308269742280102940311318717386457412238934721960863367280547447884882419943340408570113517250327083229127652159641491876449725361429326425063427131222666292995614406358324381303740675653659961403182121788962704828439512975635826828324482612163736921721844652632987011427239816233715799062753999863485289231676399224321026081413853578153502250101836727163937389892537243280046236279199471530399570776509427170230832955382971253345571970725172401821283608178851351096484134348354261043075995536469734547167826597448987594568817394646497599668785413863498684256279422561113765047339672495358422111496688314530795338439655728412370144501924240982625248497422201217972268482525537235797768090088288328681488116642230225373118635829184512436574586218015689272632657932295838544276389029435005056521765946112587159657135946683644841305133564675049334796768740687681414726255229966179837401278252533517711206035771867646404348898704174641399087085269271159327775325409626708387552573410918959894839547301248816773415908852644376941564730765049124588813800825894148224816492529529102031216351594277971566437233802025465443954187754032511535735777617032365083881747757042185299798332393381016644367398056113996849364580386793661663685749635875376770385815988591995793618817868061243994687937055659151132256741301580088516260123415299426167824729613995298745462798760810034074288597815563661247776459157585878649642126597622790371752531448537084385420838228420558578977216752467628499323493687577411843830476685128126399473838028876213191526806081113960779160908087550841427235060135023292565105878913841445841619427888670789761670244314486357161445022288748574514609487665913498647643576117148771410661713766526849663394542733897677215304966153484954845275959751922521631488230268095899965966220762891559956771082467761647399561978715934795778277577365356137878706390931019414074773629775895432991594789236275893902276928223440908734703922981310907028181412885666271169017920277069068642543146597441580157153518043475670898717124841003795146583472265207387249398276882099672445640440725310452319759138969871847873952593850972719663484171936532880974349167258647215915112035574423148775624363774651557884252086433346998200540293505793289892145340886880544068375385853434629326257156438068163524648202542798696897548963975789385518262858381318624866134936410125766329696974531202830675467917687984892719223698252876054841867354236209134448587902477404991930595682371097972581792369829393697162192816257451164773420819645316601879778263873418987768647331771227942210794989092952351163121097474853965088391199189847399383622528165231355661851584596592488732552154125191083833414815185363577562969797984961396512843335690298035783766007390656796429362834525212404360510946520261908001760646221597509526925652801041454675467856104503161642922207573545834967657711294299302280007142185674654663401094779622541662502551595826103239526989968697429620658460810069011228645922932741999220817979840915569445711487111003683647791036763726143181948540628832109803259551834373840535479613497281574957712793185501228204891346017391486192070250576112117924178332391784164566884310829113254583486470365995140377097606694336938361621917427845121777658723468275324491925973059446837399247415594250267017657806107977725955633443507829824249893917401899634211285184337362831069484269418089509557695424649758013434771042579720771692337229476012041170165398891388283997697603659193785542234461713035573914020950253341247794780733640195347561989992396187703149192856593526917165485779578902713162914848342342919109182489651986235718212888839655458114593527725343505642304543317385494519