1 122 663 5724 51485 497646 4973547 51188288 537451209 57330873610 619171152611 6754621551612 74300812014013 823024656762014 9170845919406615 102713477162238816 1155526615406592017 13050653569061394018 147907407087347107219 1681473680898015404420 19168799961927788686821 219071999568426979202822 2509370176871333678284223 28803205508474943526609224 331236863347424698345968025 3815848665762760518404198426 44029023066492979084654623027 508779822101701402434915532828 5887309370033968785830639718029 68211584425221208715215600986030 791254379332565969739555989151831 9188760534184637664346462894119632 106819341209896412270264322097152033 1242988697715158258595228365409479634 14477162479270666770054418048181091035 168762351186926629852701025478365760436 1968894097180810681540891568923851264037 22988168918435411201557112659769810634038 268598605257508488775247632131598253389839 3140537538395483868766571698475749500514040 36744289199227161264559304475394945554729641 430177044283635058707147967321475886643170042 5039216804465439259140766652620162081312450643 59064308591873985735046548815488224063750601244 692663255304704014529180999605637099392126110045 8127248862241860437142405117011145393334895251246 95406834469795752957758654363311093606722251339447 1120522821858026715588995428898562638510533959226848 13166143156831813908170696123939678943592310274048049 154769356292553567573598389036438202804883547601305650 1820087630000429954665517053160588932104050137614489651 21412795647063881819594318294923685466066611798367578052 252012133384674916799840822987471940541659069099383154053 2967086249661078265718880633168293322542286735552336042054 34945682496008255129577927457061064776620112826249157017655 411723677407515442253936308951643902502595133921111414741256 4852457626588574855135677926927145196238425663114821369776057 57207921492412671976336413454333679084570552853788853799620458 674658936220866683307139772461418247549970864016173784379759059 7958688467961410365792699688697810812307791497218472016228060460 93912523921944642316353856326633771958042266994567419371580061261 1108475692193444958488111091068468863301098304268330135243829530062 13087164623961317896988666430034176178787538693558872004163443520263 154553182225828897069199489268975087225981706350674601857846229638464 1825659465042603846629918966989768164447238302181733308732771663872065 21570868756195688526335042563817569097140092933473749457518148871399666 254928448936858137129414139390571270526524931264455998476648004028400267 3013482560567039471738746244736305175361660744139019327222545904437938868 35629999686704407871734587952470431772037525205773071598282582100822058069 421363474555808649613556866220519888867960911006559362250962724091537993270 4984127956174422312571786931865578113953785028884238136909611576320368738271 58967147650514292148736634123480079095662811433257312951298728106851854295672 697777913864419123760050170461180935964358821578287687503939744140889161728073 8258631747655590725050456812033703132521323069775654350877783509102100798882074 97764343391166182096543245504615188433619303336128258123709199200067956984151075 1157529825751407596023072026774643831054188641459755712547080581360954246403788876 13707590041792984689746905580226045367746836454826057330454653047554664018134862077 162354832702794831649989323235924069810197887373576126094097733450209152776437100478 1923280325863877236469104290640946673136188787848978757511931656563694735222160859079 22787220063399861940950400203037039063993343989850785900396907196150874641581912468480 270028557751288364000262242405988912908321107907587213306122717989943195709389922713681 3200338462237491721484589539626535264098620755907932597566684928496488938083575031398482 37935719332863926259549036981914539959803162891527459380560307172779043157208764420955083 449743949681181969149352438436191654463208584300121997807467363155799739624813980947705284 5332678260505443348485178912886272474349473211324695286055819999697587854678829689616862085 63239290430464551709094827578698384166403164700647742562292352052213158679693124583681225286 750047398128765613293915396863631998252688697582801536559158345426167677405620078705841823487 8897113964010185205969203328313427841342238344091130677729406748746587516551457380460593602088 105552124754848106307180094031354757572287463990916627776319246508974826455317161528169892720089 1252393749900220227644743587607984539284669235671614439669595595878076685023375569181468161666090 14861739165482613368050957239614749866178074929965761059648080140604187333274666259743164544489691 176381080205727719093352019986636591818377153015026490756104803920587151596259135105703259733962092 2093566734615811622281960932884860415931172294482658034687835166050490354829910755419081723850694093 24852663172213505709669729783923504292344238850633410052344057533065475085385161103861091159973727694 295059277661598642255227855732538625428257133588370563338758945528179316291738279198681964081183094695 3503440686339823878567337065961090205084989965133501341273595984030040641794765028352561847238581234096 41603358150285408557987127658287946185384255835960321844552373894449742929517619971153913923929899008097 494093490609575161430939907859254783562501677556972147923946320221968618347962738066634619187224381554098 5868620643566790692914429109675230286395428088533832373467092432686190414803138411470313869043301032755299 697120997660055136855289760906875840080911457789473430525422444531359355562193585930760588602478715779648100 8281797452201455025840842359573684980161228118538944345541580491030399419973626955035098170441503735021568101 9839759349150243595058426565830120768508398843806467579905171972663950811499551252012310886755408243830500102 1169194934428440709530471862528049644258055734381968614665926888733981653437471750432115828460945779717942230103 13894122327576809985099976308100318102639419600810966839632435156994412627208247314653078150844375315517192172104 165126299970047472515226641507807626681368486794253413592833111006587144716283427432175688840045162427806968480105 1962644022501135673323836653349942077127122585897412001575507411890867886539939593790657435874954228613736097428106 23329542154258782531962586634159688841322400549346595490411007389341256278869827201090889303197527209312916919430107 277338108600160480193050562604216114076281247652045509007679178203644134995256002622565995693445079942842459614428108 3297241957801907931184045577627902689573565944307652162646677723564178008112389134117340768824136657240721079664640109 39203904379025016405002116385849714283242336130524514017460621830044800006334393035318221692295221797538814120260110 466170062979411564961584334756992205711346341507932785758942026228349198641723765417563990323529936475902093665965774111 5543643992187596988732354251164231635486280817932173668484740468447674160441389529956766200501986607542431611167582580112 65929766049945349901709784487060326236318982584693351128764924880321706179517964999912888357786744455643128061993512960113 784155801514394250158388941155832552757634624724140388646549483607678086553054614793261866575774006671868932614496909620114 9327326902223847396620836879011481943327653957245038307058956729504352935883500272331929404462274114973031278563448960178115 110954636541236723813715694352067019986715048813140977426579593019688154994706997321008322547139083738607947865685710451908116 1319977572645747231576962570740107651566092822087366800419653775654029921418904999869400147305254919830253448087318250823220117 15704348556605813216710529046754101290427360755090722958838957781248169630020067313116863348210675119286246325931050889319360118 186855130283682726747979515098667442472542495763960805374660141696413592919075782981466788476574325023068817066088537687069018119 2223419029257939000631420112434563853286724151275365549668224879819068587618303311693859548561426426754660577845962522126118740120 26458686448169474107513899337971309854112017400176850041051876069377353573048086197575036865283806216582756840177979109135526944121 314880235416231757973719132617179224710093430216980694703427285459335200970473103712280803505360357428660030266842097337073926144122 3747590998560397644080657217706100280975866071107016136962101790871135587187614304635688351837962893277054868703697081638104140950123 44605473348718879275886846883916510661371283968298143288719650584093142615524580155144557267518786272736571523892602457748420900900124 530949021473460208154911177424683626904709799493613383017340356952527132729414712031429319920501332435196002974566421554097150822300125 6320417151620070317876062656063433894673665453171973711438419609163661936049370909663363389759563495748192159577916791607089990467584126 75243061328810360927095984000755165412781731585380639421885947728138059806105191208649932435274878820967074551589303443291678211314528127 895807155347726501746213604796392205544299040607051392172374432794849723219595876960161740280883015145413063069079167058165342448846348128 10665703943358868661415855732107044697261810452227705638052333090463670388785988197037692570624428450233984997621688183087617375595397120129 126996288813947459410346933368344346162745277942804308992623128891102416575503638743003394621948766885928746384040696055574169351605343052130 1512232731415312824363208098878438829691766848118931310158312334795588667983191855745936251979259973002552738675507564476786905569539421634131 18008267641281587832111485757636370796329437275309411021732574368558156414553859490763595866419675997412375801730183604816800005415635801596132 214462096455262546000600421295487688574468753005957531258815203843738043298680991069348501489379499229718801006520688682098010289812508959900133 2554195193873202051616173438586860892495928607228847590330550999161511748903338386720033627249178706881105692660437470084690194151587842876316134 30421608428519630405816513492422611824055985501024184732593726825834124994258916041979531515109919643350150880550339579716615181991200665390186135 362355158170811597722614471820855998615422405078865844814894168414379800111086939129348770585750125458703320125892604263771688748303015235289088136 4316289384093491090519378267277843512919002178145313739706827594347759383498032658842544198500997995018848096324151681925490263612236528142870560137 51417403465989616494362228702171099365575266822869722797091552072814184774887080997624380293335642084400867273867945791948413831427746297770048340138 612537763029615431280663072364994835920331439542013219408829794258742896881330582338050530681235081921563211730535967339128106862707830620156148794139 72975721983959939151135111355138953139617887684585333886484841185484693451244685883052296801954000222718609233513351300767198977670967724124140 86945360192317984645780975528836981281491616904134904972087611939355277477601279410602022839316473668860127216189823561842263279665360725358213992244141 1035944717185065348971007368003164032290112882262032910305724738000828838031290894217328110053030345910539282645982635629117507162980304471537099327868142 12343791982233313876471439906065870018555429554840561156600607441531002774288044551696389415931702410399468620395239222283599603144754551761157174480722143 147089661102975991926624710489064632948380782947191022453478566995586214876834477735584824800816280723380605450541137635836818713741306443107513754545460144 1752818461477130570458944466661353542634870996787359684237286256697402393948940704126149840114108545036056021903745957397685052960654484341197968695623680145 20888760699534356039676248540626337390848669534127982995600211390159388529267417693318363533092474845902437430603745559980356904634493096291964895419693388146 248948243953354654171484057949930322329292362940977331591399779581351616718666443545019018897258061267375125648268702286301235035703120866683997277034094030147 296705662181141057216625897638284302531238244811287268672198920970427232987145536152142002079657882638261416171021879179669506391433561465788395147038007132116148 35364107303211677360143789421211723626020558368048023103902628148096867499278676384406993631004565850995358440519155720418163303869430160029616863721606575380149 421521171614120395916881677933369269528943031286263684782087701953154608582006242462108657733018832004508568264059690269155296124086532405940953199881941319460150 5024532365640315119329229600965761692785000932932263122602485407281602934297514404360686071420546497378381993767413586069288073613693544556370573344193850510848151 59895087802334882217169624382373318192139083968728964375393865782164803190301496279913929538540742115819442653467978241158914130055633372860060210971304191724076152 714012494064676359062574732768818766869447500995637391106668978929490943294909942426225472974165502300376196362580145351922727832388198995073407056304270810739040153 8512148948849475025687165441636113926600472168732304584173622337041774382809906765427767868536143114812927849974426098665077445202199932869660585865669641933206720154 101482503052517117838711920460025358241808226635016306600927081888368167317136291046755640165267576223545738660989812290618576447074692776760870025391033871074292298155 1209933326716462153328642767807270077618461953687162158700085466643254020658502360360674720513472936164893073498123300116834566151779824568050270267755932737126833892156 14426128126234741058918433000778989386989354063193087276808711333054182554005220450444582189108242545014456508715886881428884830809248379780126547427670198426149321860157 172010903517907230970033799856422090015567329976416938740037628124060062045208743205415667272998190670066327391580331583488837684762586589459568652092597166361621412740158 2051066722960362171819896702085438086008410440984617168267284122694488334766919444297374147078977881844757025250486996471091237065447664643547555594034771332015474878178159 24458003186999035709248579541848997553911611296269397176319312557413521274956473373509669218288950280936223457036770842036498880538564318287838672270745215881343988434740160 291661688004963500832789311036549295830395964708012561327607802247156241203855944979101455285306975658344463413951580288399131572652043161809407407317042991419722894934016161 3478201496705154792540096131615991602449442560493069054341658262823229708766480834533399915664247239952271877467789637560809021753442287555827811456215740079974907307092108162 41480773405150364562885590902975899851434092758472897611037554097373332082326178841472382992525748489009227560186681872859571372224570642965274541779942550350193987365634048163 494715481592713550369629378621994781050232370076511122428570583836158021889828783238173887391165079822413933786584263541164394848661386470517251415962329326261220497806039932164 5900387085337486003188994296247693852038137291888144850428561353558079822051860365938220077011152702342817814977734721442651154179194661653822533047538808248079003520782104900165 70375525963298014874399641060699766671582146608702236761475204507892733877564007273735863544517737900555756689931550506737955474628161030280700273489656979196064800210708624804166 839418924140542587056092104217985168733329218585725474624824728467636223358895990373475960511190619323610625615071964482044909073435155359822367003781338000230460974086965330314167 10012709562203358283926559710192972791118513792950689493728448258128930281023477921101581543818811092917393885944752335764684654657726521592702115173097978013320269003164581898988168 119437321206282916672552533685873318294056557387340367532332204221966525495065772344568865531746712448701696039915079726459772578628790760260023577413298866175821707407549665990240169 1424767097940037633206307147400713666750402483389811721569122625511742694663033118619235698022217569008742533545558604558988973817804777463084618140134083877303703130106478534328320170 1699663338013174305966112291134498421276362491949728336083635696786949520456841865077058556090022547551970523986248509433741249182737639409323672972477574210815872741652665793611578171 202766854359466408431044975082712092362794121846634257638047767335986960335202186986653333023793489821033674247746866669868555896578049059173103832179146754625641601401637483102573632172 2419055727590843430816885400405379148421241500170311027170197782403751410510667951724492089326623257850990471679905832356208979555022398210191396689327062743745237290302016392798989740173 28860872958078039544543650095009841400817586452898970867510336548447068851410512441383535678484918458688631183101264999299699514586901602688984545990726250833994568727729943833239050820174 344340070465344885600417342512876038782168445265622204143399187784920200778897838093748391198430748454533962499936970871554845510104925124829289170379626926537921006166392618210322330670175 4108468955037943549335265206667915251298101221226395212865242880542362167007649633941409376128093077959149600190964078071737796042222244149645617198405218822591750387786248426997738107904176 49021504577157280986386687125014897884806889571451306517142102551925912219977637677709998237891491919570624398110649121976714656261381248556497072229410075696723759467442801835332940083200177 58493456390147895515955970802713642052695601738695206743740357960264139326888571059504811456389596755362983754670851860144388920658044279308363000204525632145949888169068208386868364178 6979780966311652411904405609530211078609807917409336586350839590314664715186029490471248288433338382833760830908679401051126620319820467838388128673856934265962996239827242939102796773815790179 83289453318668656714121845709254362368215361517242139376789907066548177830376307215902717006109632186023251783089220371545933599318525584191251484299296552363468926409313075804482860272833084180 993920809602779303455187358797102057594036647439089529896359557660808255442490599443105756272908203111181643865131189512328609544472032667901135722460338937172139655046062376620716155827162112181 11861154412939244726316048038683648864105630709770350191028379251642794650584418203298941621820341874181963193154186432579933615779195113028252476570710872561993232304566043325615194510456052900182 141551798818154063437134375494620249081524340118797805576448569970154670225655804052556600014251551594595830045706970091281745195786336432825028216689436412908119411160428823963878938028958839910183 1689339500649445216102193858362025267727044583712865614092697687512665572529138120496085324760248036112998298723337241414007594326056094293967948349258636255137922627210905373077763652120370638100184 20161899692533596166089226700885910260481466879529635263845457183575073898228191916355453115073395029228602544292945052422590320032368013342075867760754451808723046025124004389762270658058712685280185 240634997411428001809324392192195080298070696594602349527409564655858172826370148719612998815246283656742225294996749049690878746123008291592241678279558235813436511969328455392333773360595736172186 2872095130394463247401613713261683216460843798064608687907791578150565365631474048471796159876261693272493533684570083435001552737177761710489993430922788481884127793460207359940423783815403961751562187 34280835994868673626740116620321267054227825440001104766899416055786427251815241049139299619485647591773055017036701336614105080737792349780107877984458147975418688547159556945243158997145598696306020188 409181893470666508608536285617026187604719363230651484558097285261620972090815962309939299713435070189688190091640718487458178812696913430872342407574761850386594973567984902356596191728813401511826780189 4884202918887955785295544234666725286964269224594443117264907278043475730353866724715465926738145599742141933855895733292828685788927366653493334053403618280880403204992632787913556544428774230595469312190 58301959052830966952896285916969120793868224217790510473456893192645278718118788061340403799169022211641313880700782581176297311350653858124811572597416009631447247660415484134209689040457302591468173566191 695960558326987458914154617228741337225233252442734889421370243346760395169166684711288589853954820118231072627340619252867149279745796988809106131542567629582296963918845063438204822798035693614375815436192 8308029165028412790787720743168099713126221951035147742467607279951952217331927298741007541381585665161175412698127215288311658888674011816896251615967586613900820355263535400196211557967372537105251041280193 99179788581479083264118697369219179995040494171942903619924182243571491755092023296887468266026805039025012546851691149900819035182012437203138109025630984891354899977325982511939820964959449311760582527220194 1184022630694358540410819088180987736435638064444431777235795907608822551055634669874182353114010724074131184473312502140534581823561429522795939349876964422808720208334390030607500523190316747553741760221310195 14135408637212649651673778652745330514985463661675062448230424989299173840294961597267161631022651105869657172831293335579710577568094818742233811596660559664402141551293012699583160026372185205882788490999612196 168759470464681633596513479833796292882989719226120643514587726913061565236174541518393664370372467284362204250903039335722671915147012214955687267311006494027574437892197656923185745491735290544851030565191680197 2014833880877823361517764997812633912998943246801196718509189511165080210332398587062243140097035751537157225447221913010549609228995444214639311994669078334124249211900799460202760084330832660909811247623837540198 24055895426238254679939376034490235203684352704232469911897595981789139480938334645531024157522184427443634403748756737431720846180095456276257562082763038876917160135249916880324073179132324090000650935501732576199 287220138355487905123296268632908536904291567966112304073712000264979876415625543305435745719963367837216463173300458433584277962854988751160241219420966905439380410267346126065486924986417391581354399359763936364200 3429408451964525587172157447476927930637241321515380910640121283163859724402568987066902803896362611976364566148308747596268765956067385902010790079272285581474024777582792155458738835277385937511346093275591213056201 40948160620471947309518297880321527529996911301676189977792492933299817604806793875425705121150598351956591884050238491904433180614788844046009305296984637126141487421199435896557839950736707462747972283321588990188202 488945363448407608468109576669977843576002723067539456566512341361976039914821716967954459169382392202570790170252565840751221785316137922527487586194321730002561360737774642689762811423141806062475744823487681675750203 5838441187186896763185702531271065481912466013377909570035595642667142466766147004582865069096467579798185199467734497092029132904997282276195535089934585125551760814154848102210312504567153073767875300734785809578660204 69717856529349414289805741991060370166366505924453861336307406791848818867854578937077741707446054041119505616588937998061186349923849262975251273237894924862373986684591283031547643493151220620822228043218370817039220205 832533233091938371616802226312759932523244909771039280737953813787541017504917118233982008291843611183709998784589340580459490795506734417062184789019355084829897912777436681578709670952944277044283889571480005271884860206 9941901715563924243579288721987327349549429505032799177744496999598790791563573353667940487368617881125857267032323704991213281206219752942906028235027928591252520781312395220948144470872179284507332460233455421518705554207 118726478458328602561004839230689242551141013219522123513934283009701501626788180339454825530315088899242121565802305961039440426489656038607128961215268701964903760468389258949452890898099168326660859185750330739652934976208 1417868136973501195968923176197269608158818638640831513502945956712012163658374230592335512583185965508256874853056513807812909049320778986458155511958432801074714815425449424176450921459017580700234426150217132353096929280209 16933008946822291794920728458317631301265125942811078744992120133747284021489483634251049949318814210089039041308302086539060479582792666022972727636108115516754624112283971488004605875829955050711576951215064476765879804492210 202228506850620513436481842730764853826537789831286597583048749025896134885217261689055396537578981137634809121909597882940957445466404778747685033301225318833009747227733199822927154225447376275102935328096624153681397981102211 2415240934898406132037603050623352756601304409359441828953947144764257155975106632494879617415635224961325682403860945954879451154140891358423636070788198315603067143522741260203728049473830934626614312435140216174228822288316212 28846179467748888331694391151784571602426899832538239202412236653505184523249858459797335808001832026424889753993270953897577447600643155119553894359521405474758185227724508167438004376088202329172340686906486519136747009917140213 344529016741564187398265404179060798857155085323836997797825023692568964446702534843776630495571176878990232554736671276493226497030126023635416705985110684293937841425575327920280964245806202803281369278577957305825411603716636214 4115028816782420855093300808792894401303216813494053113884302619430870435167157378788285362367663215433173057990219168726818068734755240467298721726045501165242543627084466466020061152991168490747943816200057968763081020064110266215 491506697744058453761841696603728038257984222188498995183948331474347687326012099940851944677216704057320391298552706111283732237995722111485837265394200938355738260830918951071781637137174538138111745851758546192152352920443567828216 587077444527625375326644248721119601252592265391818244247493840372137515417181119373795378364453285401799356273271286206523479049985369152251961253047284151861370203336214694307180694575408552371904288082300676314946288230680494080217 7012464222191727985468487984724156711736032958044206862163613061034932903047619637865795487191995003509050375393175936039329193589100256484608996191983623110575744541720057637105177856557116411910251330848275603728574619463395391724218 83763563461409448046605241799182128795232246893335388390247928490527363667596337325699685544256674262098932006990046482445814875205249491153205309532859949048613646623494620627069290718926142796833972895478152360891140647407826867190219 1000572977237658064337531107518997483690993414945047379127345118407395357782794604767261997186189314473291352193086582873776066855124222897858730196379471483804758284309953332488473809081790732203794375139712139886629877094857325893540220 11952299019002569968541053411636024486999684974889020510666649868975613637514473733310747857296843265617316698015597907913658167125141752862720300603709583778468876451833699541124099267269886340080782786303043196185852450876836020381380221 142778594616139297361757380120900925998548273003199159041447763140704162909675161339096716485355955752170661007969133382386434589788223951614809572276122229475724002820417393621600968612146314045563352468329315967552182824984232422676860222 1705625373522528903618831405768600251117792882903081845846484089410574054218281657077858072608846822769173842311415052835466126346781741684383710197283992977615182608446694539224901507928138638740535523111338121432946784043843055593180030223 20375721950959717485383707914652695376582063856743542768318536386501207535594180871997371773255576617524267227668502720132011993000162285649453413190058670601195406709258357978587950422861820664255637450006191329783827887943793292224 243417106878429482102173224908975950123810727145739823428662515045880497166294767917254316362319710849486381209871948255024136601908265130559307598548361649248024830087490635218501233916888524984482886568997451147792450604863829589738127360225 2908023036840970879513962793579232684145792153634438423894421513081452339480001494051464899475179478948530634187270208487082172406669080983161407889993800851734678167651703901460863960498861768676687190842729856804886086252270172879152218112226 34741868139250537056140263463114726757493977056694618338561672943893457153079663866986527560101701739650587222591281251836430335807236248248973023684215279739920481229354886870334676147555310280906756085653146931912050128452646833037057219230227 415065843143821394256618478026286955798782668624474911604313907594004651097586116331574725740069670123050187434658831519742125048352767505966650289144489636987681487423508315239437721638511070340022310845599108239745504411500583629170735629948228 4958944547034076657697494447998270471911771883039779207062066159149423989429055179329866460157674479891178555140397618683230198756342478805482195667655186237775899161283957388519979247525806592759036636834020184588536988238351839437202877923580229 59247477208232461726901069038092873411138025641907580395291759875252506703396921269198753864591254921319932431721082466014544033102861415873527793238231778401106255287771352875749957401395850948797595183060889301924895407000572391573506577605860230 707878553774881760110974511811648765799162149843313177940268504944321254004064085425035546173464210972987714445084933115686757579058525776509633906581784518864963118696444202131116636025384931606397201613980659732827526151391309381171451423455798231 8457769733414171679248007154113206032925054257868157450714896422711370827061544916766658473760871092144788276486729070992621662491774710172491136406164204002402077377681969312768738419471592216432415432912396157325591115058656156698747055376533804232 101055765952690016788256361341387099669259700012114364023196952085154827295752597022746453833039373566488590958712124934446323686680177024532183479268228308802461107007186273511292751997339602590503022799237446706716332583445567786202919817726638240233 1207464602627849814328350686585500796048150235337881499744979891008888580220494549834017714468590626648516039609676205225315738116422291670290751765728094772257093141241265798583799166174480084325352479918251877808238843500172214706317704798501464020234 14427653969860974704538754357662650537395846401729558432850272543849796881608986159555186024163159795338678832259207990640952145026102334988259810178819891081200775397042182344322831026586923112782644799566283705980735993044372191328793216964975861280235 172395116371785604129126903133262649825563985940666383316781128949490338908757587812897712152553841299195787919080238458382100618222130766474873630824293769356468038616710425847164381376536833145890325130598047991271306896982767218059775282124979403044236 2059975543086590693407363842524579120796993391324911868446282981515096422553798295052421814704245052812424245473755391748464083564989421135527889333317481559078312106521647884498425937592954002538053204773015832287671608296333075382199417031550494919020237 24615403957895463475652550219534211266232427359629326630547989044939886365706146715563116368111485188037069464901583415323418923715767532225779424755671312890391892096158070923055664894055160687091848958794997358085317685164973585359968589580318108373244238 294143734690145790440150642119139902693970686599940356879321348083231247159950761592695390550038083507468174614202114425125224448668302509111016566932732018825888414203166368597680720919602170190815047493131113662715886547594708456669473577101216815752270239 3514956093201072709192762484904868460644268957863722423629045063287483020455311192923590106321794002080874923423268781582249544052601315229294561540006487725202069010283201827348109388588321867977396312800500375395598357258218609511831138697474153811400524240 42003725313752818874853511694613178104699014046471482962367088506285422094440968755436901770545438324866455334908061939907882051415356373765985273349320578647179069745828252236626289668809961619865619821674005421375596033043364449341510489971098675726454784241 501953231965178914355095907387908518429598176157003613824137821153950272331908672264142228627264989110437308566536175879397096714167331389756853236352129798964956045883430182946110094264131474723278304984821663566866859184227600269540167922872491608187387700242 5998548540674782728574121339528229071480983163000225004873580904038116477619338347883881509049794828542911968489349672079406626848486867234262212879403055221322207431838672661255767473358485633715459911978004154901623882382800069134885543052057491903535382528243 71686357868804810879749993292139823965352983972644664255773164384060453707845920009278979021730881407772083771576425710776118701104786290329719484421252314992921130108389140190821113403004322651827706868706820775739360777135840476234443724120343413762044198912244 856710735841946018546520411638851338864628283869802626925551423540656897590486486668268454210521517151899165073429743330422795624676637772539498557622106189913106029351572447405190985931965770356855937879138873780755483798620624746160038881954707622557679474100245 10238567487939665070629435776647170286512782102737886088318426808681809780183446665162000138483293886615350021775519544781542635057382374984561404893340657168295086468378582832369387258911462418884561806742155696788970827344029718149826286373704786951857955127296246 122363367538791119136790817818466181472957639764428394714049491128148448533874778765367508702780596134670099195133114495014368727113291049349747822238203222035904415535304305718660893179831605552593678867909874079254768700541227378968985023356973099452444782150247 1462415631475754589845370421862802298413647581314140166784915375750179145930655863752693784962310155140848375579920362509687547226009919795365693783955701963147573484228325515489846082973264753596143079116855275277876180440080796315552524432297687166905706585590100248 17478225531024744372184185203231233921363110608931901025606811184369076566687354758721711204146319757409171714592274009994814072491505388853972797042656812136223415913237986467325671701101865239736717600902655329206919376837726417310014672374685141596856825216389600249 208896382250319836351888093031390169277014526795908985751830803552941252459685011092192018247146375895781907721391997806203079035079200109564526090392515692470814834084470208574066153380380905119972783435760668241005202902682026755395148558620662125998991536639992492250 2496729560655822684077766487911175303198877624264704197705881764064753849398155252573879002089893484706385361086077157779739200627266596549306640022336188618379850865260640596044529997014412157073761035994390780006549527465899219999218259942192354806640825028885610496251 29841389171185131682204380333599704819110091126669771287321295984837695411133329712038394447289563562227713479116460053144293234588843821229265527876948377168261102354313799994548883462166548322114330093530184916637545808639690445906878068594210527389242224321778648476252 356675651522260383439680926844453614742696803466386313957983109152107692771165036081982714584270497815197908726582451111391314375323799920880643025933583473082176413476358426877313701391410069698438634002657643136456527885000656630879063617270150831874804437658554885120253 4263190360605351759746842797534692924186368920251075628811894153200540037154271506399831819301970511129832406792621407449539395643941136170187051219139187497877187151904342688922863184406214448419109446859685228042447261164938406554153799482728585113395005483996156254 50956874182833798402595045170596585715681029937748923468138941200439700611338727674578695853677196160306699653032377897362866204928149814095903032070282677207348124381063014724054015626704904979379729125436004703286193285626514338780139714440042259253649744423771333239106255 609084519644225166788665481097954483378022663726504779336813697172314539072001733145552411615718015280842433499775246396713788990670590724429500182353556034467555360090908980895797558672899902674326200003722812079948263017697616145546745197181001367409845294041140682914124256 7280463398872378946770767078748987184127927152355877440510351224012822224845020716505431170094129401403819712927000992085719509029109404747613517395515415143787069797533124063639174969917844308216710796346906515940238620996979697359161156613529589705096287559092426160209920257 87025616970178786476575083524968438247630319891195546681898050428666886672077446074337293986494807475146047307827809524075215298589198799225880337338609251306025808648008473846278935261515072275837039662762290098087091212257430103284558965354385202262161877592450256298314740258 1040259700527253401138595184461250633936790335443593278941758091170576273242972262376962072303682117261048100377290560357550247987787167041845862167035936855673832711108301211964845331361417388667605845990596603422317427838206062993610782739274161586444508607622308294699510434259 12434919045684851466892242050548385956248273662290983751365571622641328733437228279224226161591505154595385786749388319949712616873316869350391426734468151244530514001720067954065987784394400752062460092044427922586899890282714182480134973673086737704621562244653542088699483140260 148645109207648147535004185742709167507767825163078374997093063858343268090472713430111134270101530848009457789296534224629641589393341653618538323214011628464744694094199131359142924398624371027267482163656367086696943177786059146014684632113589863026829684971017818924173544732261 1776907052597173257889705208872462161822277811511609160652717387091940391857723762248041848489564160601130586306712137197106580一个一个262 21241499575321933754620445474072638288132928908800207480500627140673175409569841186348705599513745476906389693249092524313487714148422563021007727995433901289259977091082326291617640490832890505890118976612162927936281160696638422667360267925091641537568701829449377169170499361002263 253928801006890341157896123842145911703003530377444305394273656769112028470294983611712282908255573305679426599145045233618271381302815734365310288267590419427777365893436647284173732237929255302831550073673055769259873142014112447027347578039621200587208544405174340031883762247532264 3035603393855098169296667298658380671722269476784902378122453260467111976713071849540015018403237080881531327071597586201891153331029115369912465760514330564613610937515435812325607837376923675968713727876027425255370202185190889761924186435578292020287812195413563186464337335736800265 36289779440501701888044686800565094218928866801715361259969554449659663178215138186199122936986622914085627336463476049387136504727170707516539740518000695715353903400438613984702745612508893421995609299585456483371358172205126283099109415679792653877856703451008685502926535853208236266 433840220378930120315722195585703006075916527930281386491365350187660634987684734707192522329388950627038702744187420440041707086587980638731564041876997846762979503241832557965624169508547066335400464696988207278414717457168676070125610334354071880372448525894008092326490103934346202267 5186584207676198292313802428125707847918822311436172980076547557299673209290972558746661165825503859181676176627139498294431194832916982018094219094258076960666310688242462582982235103270933977036412035434400811991120729888544491483724412467181758822861053916128794548369826569311179620268 62006775378337833315572473804905850540044427932244396373750964080552809561821925665016053639197441659768994290721473703490140105390544814873036842916072198359493974125806127355392152415589609472236847921293946160793511509283978451867355838912225330951650353234826114228523795744432277580269 741315203036187628040450095749357677831906617955754567799193682093151805021633133601084120831445993969580244011004681897488069066676550649188425783405332873545346889745524912232345632901713270295921014593286493659423598552394264547544406892982568220359603601121293105544743636557010533060270 8862835094077087641905825589181209570523683565782132388354804465913681580036413908386294600162620994569648250620455974685524025730488538872519401407090622824980792842761484151372044036758169447610994147583265605778149998573106031917815475069481876359004927348567219236812807550874301104128271 105961570866456693578505073464749516636519316432229184274057440847086082359106941192515108872792959492271809343211355564505896100984438619730490262531324628006097996757131560886465462863766661395508473879282456156425950234411602330308782824378497278907194114734444316370410293378864797079756272 1266864075212195468813597422453549368021914768520622453158951461892367425852263870434040934023245236282602661706335765793283728383828655850601302695459015933967337857145427910488966792191120906729525325203301450696330566111565034516982181602807448605746178496779528647397731734374070448885760273 15146682569569985385375758193730348487998277671982826692713617478449403948651242758596005892497701286543645010291135309704315345951709643576419970714367810561574975184799641142979590559690953092667260724842972003018283265968829780364158306700742870716062501656370866136913664863693069485972340274 181096832474128730374054685557155553455045100924874964399013908245986304145187851376498231035848428520864894356619559396318748442838689023198364321362134171988609639582759120628480649855707119623528175886057956914616248427783249399201091938232024701394063142630857250100489053139418231023314510275 2165259582454310056254152022225190762764321061239959574341664473864738065561373292094277031439525938096740991434782222891258345018376761848277170504448099522896856088963067245864776960300257265378030787606462087065326344001693400671518804613464255384746226078342514897776363661803118944199017472276 25888973268475446324777904613562063467834273558303864475824249144034911653451202405475051462863897085939294462807178751960697603480591717751140082118094921066164993348048515968722444498673345061922832785295328004207166362433389880378025072684976789953324370753327061269686841631569797855171780460277 309546135253395950280376967798258318431289220307228877775920264133731506845597048256077149620957498731519650761073559662432600948475522632461285025184638054536879065425767014210271363277581905086534365304028514973960011633455085438960811174374367378740698841928228371560572020811933488187584591140278 3701191919360748700474723168925937591602897008277801401896255244534257297679009310802879299784398294185508342193555799704769660261628191475903997927024181765269816440003772579809732302469058214545894447407373243288311512346639322536635261040264286402492887197807785152819363629900936459615552760058279 44255111982033898440084861976834866686692704012956076977512213246474130269022132834546255713551084979938551360421871497545202819472371493776400491342526317990562839289258045386449118775685258172371622724495027437715973598718307343872436717717930591090099092210966550290565417893725228351484540282688280 529164696128033899919300421065868334525168475126346234716824606961412100502450359750217371889175116117265249838187234906361925141405356289869245875052735501007062362223519737918777187441481555481191479543817787848943905677057891813800615814948202532868305782976707078871158556004438273617376147407008281 6327378572918839515049286173598995032044719133183357112628223058328628675047093269611140105151702456064096937566936331976427289947053370583489915089599065308145383029484808652832668312925021111506058070845483538649500498010949923524749866198491267987409591952256145740257530015391750991683266479290900282 75659292722986974626759549565162451234236854315937163772277901250652964156946093989818313597771420857617499551332302522781960360643489239743007069794779794861209604543292800940825776968278788234333435702032842780624662548605838814612714885302246002842918091631187793671914189720941274290157239893218986283 904703344786529760201251999040670441613630795071135555496072147816995161509207003751043014893492891103101125377061878929661321061546175220107194078394122185967472716979057587732230002170311145780852062822231964338916565906413702139595330692069790345733362999138136682804878779303221950980465352713876252284 10818213235545968540998069678669425421548909084723860374875566950656744959455165439220218586543316402063843034438387819877217768750038067068605743275445201375799562921585595454204881781749415550002735274593716597213746339492207688457298335602488726361849344341049858777870450513230292235778920062087080700285 129363055111370739606040075315457550303995376002592688272196253220484866041484925673201771729612709818363428285494826982952835634737297307262485519588481639728233151446773876544785393152436911624074678119748311375745631793450990243439038177783850256469943621022611941758176183979869459522408309589053928260286 1546928840842265487596702998527499377761063587163870608010178972077126719796777782525699508095368767758052184392980098887058384163641806960970980688785339814114460979798600742223190365891929112363228803221199137347689700548913730376864163663387379850712477845678142397864654250017102441438430059710112192670287 18498466138573711335999598226293999527790837042321964901362140181772470043005370556195821295412214672284442846120932750454300956270448367561158208097251869318629576778312194750515653431972163251052351184790766444412864169720615509760841825631724201562309913893680619030282537720381085945451520773315309699700288 221210824240443964726328528789432411019832092964433496945455593007029120930939222901175029657637733789401462368196154140849348935400778395418850238496303603058869458235418043662110788959990347559732201191109601267933538062845970205992442697165836191299496875763008092532059940628824687336395905233754500628480289 2645344666349392187177132856388506617593563021747689153783718094921427826772754167288792050161923903031735134756006604535554844016418997005424036070045762128720841346346319670066819809815036549617617888460321092092369724588974386807598861486878539107844789347398036846647645029113229709424347539657094688931840290 31634673458274800362518264641225313620049919170417193052834256390301764493958315352267347689522593433496749818392520360445876548444624419361415714106616217446120715474815706862202327800164578732416695705971848320738991563108454609327507883121834694231743360751430557483837192054432024466702316953583860540908322291 3783115588824615301084658451904034678342865012759628288054512756832474709412285008336393023915940292606765255560157975444507389565150725015043734313027575384016654754190888107867700251564476154807171086069294577626272757962910142588911764935260471573489770509736134646590310041293367915971556337694296692646980292 4524191656224505695680694285676606495798919947111719116049173105681512620779791949009193286008436649941179015123533048808971933777559985453879178839357168633389766979511614702619769198638564744953988861522582124691261416722807400464709259757812653611520269896936846875584052986346208080851068435069762247814943940293 54105008748841870162679702310617164372967288377745610179646083830402799396629320782690147693425126352880174979497815027394667767769864126383592637041322590074518432831450427549788775909753613621295894848627030886915742041034966429076603848559259279268730035840647116051374501558180778609508959878151364778533429220294 647051737282068079904700113347380782093037367129774031944338880094204907069893509768498500986676000873220051795626930735781128814553885266546638475637041587420308341877460632350166313024372202611413081863605606488763157727064486575122771845633137805001239470986791294176441631573637008782942309934913612867786432512295 7738300098749614189504345762337489488895714682148619609151279894821542075059607804960212581291501461290577432999904446223172279517783414306361154379821975323471463450930699793832840790455337172575309815095836227731352502357109503646101930774278872918326281276482667875279583566271007048759399232481284826567433460500296 92545886316127142671774945941468624292874425590561193974309225769149523465239904153916055870851064773542716597363722093344695505043761103528778670623546596773931576785181763317293767288437683296689005752705368711991926585737328738234147266093612705959538653948897576765753517396636765786829110286397911342112797792160297 1106811408063581181044257939340392435987508281810348016824061851622959957402465116345824344960481421130046226780592393520405247252240536834121959050689688591720766893587663728087606319119672468319862494765222636208615620610645340930430088663170322604048790809676761278522843655334523079415698048626501993422615869128704298 13237167309861084997455487569829391415635837303262014536781733017396742577793240518981603910869650284924445477335675471499074836265051252606747188109590772284875001349301553768339722503263424849230973553126147054225844699778419867590463762756273637814912058562326174011571381737803325621628126924364972467586652539697990299 1583147501674355851200069643978962888636500850155401217336225676488991687564837060062816574758189612671900235015129614919086676069308626494073393578249503982320262558385290496680050355488345192342434507063224650628766227163452069211920750092962334803184478563553376539917725152461344790675747830984412144294990511112740300 1893444412002529598036032941988396148092550167858598559341259090808430058327545123835128623410794776755592681078095019443227664579352931172869117787195864067628547827932105272756470217629605602123308774544295202083636378926894492857936626006460005768319277161820680149724825718939715672338323635424602904496897028357619712301 22645846788070121438304712927435967219711563469405165493782500753854977441791237361483265927836748160532005487977216179387440506596912133628999415395033590177617213371142316061430257727840072777458334223791169453736616567333873498072706306179487628542478109332333402592367766027039794048547605264936042509835751735050489788302 270850326485130061705816632761254018535093269044673701203782757360676087813741554138005154077305742900137761001899684900488195727907439161152138703333977906362759488915257574375228066623659142827180318554079552280870987936212642278653421994683347838715465600186519077575469196110126135561769475439412330689810588861717886962303 3239477172218189252877490023520741132578145237682830010437322484076205089891087102957526991340448885379865497923711082770195449894180064422492906471558864464219935631547170123322221422295379915729881315498364517500857751011097261579925251241032608195126056031111936485908788383687461571515591677707674770975499312679301648500304 38745851967714921458758400412899390651493868698074901045888501816121979298828923376163053093795632063293391284377018082080363999392232612632184894508513260499683177130840827205818389848535006555044065457223793533869195571449171570799135542086227901495071480970339454469516359619011408430219313213136681854469104551214731735040305 463425796649914863873936540020514679005408632821564718083282802049878624531566926151615795692349068088178004607892990044030058589452014986499050803826414341976538463854643038756705459336367267157790759205982428287204678108887853959563039434250145885581982454458013836434703275070320708082306054967895282637006292787207505121740306 5542935999146040528688260576715959886143122863159891726094166848047567862044231861813443830830057481054678094329700469154085014501288806701263156673217897031484087504593577557763308177258064984402577607594847861814138955492507988931072847671018525663138915630603781967497781339353622215453821185949445267954378486795510344428960307 66298569996300523848023755171664510429698850662941766834585604775344199314092571324361451943999905766882012906770879878611726948692939733573414694801485726057360160692169127889884377114179968643551042815396574105452864698835031094149865446098587645911272538761550700536537361932552570340889646216595808410072844655808577990125628308 792999778786919252779608811858480702672112226760641133177316129845350747639990366100479184940570301445432907625142602184433772983716850579494999141716472125958814389527021953494306523186614833545448495333384779554207280305082740065063008235676000214973202033003876694740480872322828059486858695456860017622702290739242718871196300309 9485201237528975916742505400093672094097497702612717243441295844363807000897748845007673357735753508551197497030831901856528236077079222465415912064026152030886012892813633675585788166549087552731729775996931223475275866034524142428598188390488883788709396857601207606588071559327324299222087311782582604476483064747621224236902812310 113455245770185299029939387172733342338430714455767598511872016099680633417189847475124041324142496805509162319323628038980666772173579860973426457849706360421049470343114238720745325444509925859739119830212127012338105731208630348362653698359511244998199532397610630058575664182923483036510525223135951906123136515424132984349278694311 1357085254871669814763262123095074062697627838506287673518211896755022367562528079123670204906141762432456861182906418987164245635002305732543879174279445854554032249770531974369341576394753053846787936053888912282173231303145542970628695293640502320463528105061643746565823447811115434941244775279197812667910114412649288338894604716312 16232827471734204322745173857021847442267779145209825633237073072723536781228701254133132066377311081403618608764765242500310784326373733954659477815419525414088616526094150167816314562500086927590035432720330389112860184641473827766772286603525502240327627931923501532981889857406791094354897901439622604310677903804221466494989829920313 194171584837612974390919907094855580906870815078803792878081794198967800986965678899279381650212947887460536968738917149907870851495026389540719121217031000480344345922439309712960361524800705314615178684464412292795035113993833854302349808403821903896609081971503685451130470564769947726545386632918833362682704676856503926418709193620314 2322638447930173031249347678497699241675817775273844095700876493666633950659372897916220883688534497660196741575106282850490327765016939869792805793920918591733036188804633890350403842203468642850691569651961428346916733849613547927210663855489354453351635197844290212163202656180884750325785747378138254827041676713039780230923239393110315 27783179910479022164277911278029621405188829768989982706669532152812307066934974855074032665836184086297210546841271345335389063551059775966283467401568321440158985267987887515500156871891483777588366138622793621780501024310888486995216342682956704284378929519687351627878526896921725026817294832541598226846078883120125210102434478708672316 332343101460793366395476280477696104150676507996145995668388707397564938965234825798037479357154353943681822364113942042303071709566474535292884515120026123556332165547449021329266978602932471948117387673343577726204488298679033933170887334226682142268786618336370382077904512249170872349578958941863668274492014414565739514547795678976220317 3975536406117755348175539607480831630723549900067462509698832739594846209956373689041508270417442618783727035977034915534426649598347228510506681644590344039512970257905143778243177021164030612465010372390946115722282417863539215915711777669622387264194406606111118081810986656083674435602659078706385308058322462423090831785180898269959940318 47556416631672771523458341719676363280730766729108891153755848243455330134195111676458797046125634345450621524706417668845782940478342318408702569106986379642475908368148311457907354263085832324819975794291031296419390599744503585219306619980911618508474690161364679433773163992055052582796516822589770563190442860047436716151593856329660190319 568888043468536978474975021950736684261030112345703851544615413470299497780841837483908368426380629035233767204638526095032939501145311244663351108815862146444163217344369915953744654113152568645149822817874320659845604422052784100690944285463707629579768880112101310967109463563973575662665146159213406088546406723849187479673313843484635380320 6805323219992373605006888700085687585472572718935482324102461883638457742203320480901253857300578274833983940185488368411831538782450785764285337639209750926838302487482024973765826422346837186022949237184173645695420688892525766000614297436739000590875495676938297884577996872000352386974307635833163294633789518459067037382528402810340376576321 81409474033553628172045023701959627190699935329321657708889263654740429065609815098631821844343366278387845265770328145487330557397542110077432076431668048470589039102588711711062973306360674122378823242871884092930428924396936730279327224538453901220311068779371843035585815637089784136506274411774780615548521686918038948488746002755650263628322 973879794960399303347427773696361751362037735677871747048025293042875817627555592472027881287084051833649062100542640998887835624078640000567340323440537972320154615626450836988327087160602332933159936067324519615147825384872128459164294590830663747363378864738118257863852531165341917563682812339724683755813986669093511229693136707209900848663231165037624683276442298640611640675482124741117852187091620958923584124332238002505609646233106169586022352866738380076841178442007784515943101925789776292220589630880333764894777763120158890340753200843832356027960252676966354180626843605945627481674557951056304472432868192014189336032419872076214125786743040047945695447058682744672471615530010032413937301954544381143054108057775488175047828928379867799761841937691561456032400344885767899751584306859999109499880178507430991426459209245256371485101569898164843494363187442859942359791429181606974994030871564137984793933110687687659969304505798244585596821434845970423305481544497196067537256923319210380738878157183952586848224836556228132864032516673301538236478118213652962655722469103371961089515693992012754998397212631991551051035567456664549252823550072472041242120521435714894014017468410484585773558434309564330087970251767640094624342423891794013406919160772633558661327923015305546285429858282932564191322327799065837844748751980704343755943146347867095037700756118289940668388802140163261994658772979210572424332716391328761641200940130340834557326679278949359793397762242301801014754347916748829609896961989088037840468959713333378122726683574137358705745425992094404774809823495332299303400085913922480007670127780663200297792597942867976269532477819316241697430866090950176790136151771126020634187273530802217593587159306729302247607432723862706788668720976525962038296263350276385558990499525346366878713302432757712678568454573607703391591197007443170994805236709577720398772355275890234820006193722498092068749755589685796832673370808505686844875957697986521423405203264660062501316372800596208358351567770156662586944874700935563301859640696291877059284481808236296650540436512171682032828547945560590262534112157023864188227586749065084975651664373058558231325043068460580065776474581740428005200367988714516996600116760623409366494693073607836678099720278438345714685237459523365809375935931925949416030929122896300753227819438291289601351709435333440881853972542830363872046932191060382834235515371138276867648555223777480830318336648003293415340842750251469126160942388843297458302262371350954908665569478678414879542606263090084991001633140566214852535062632185368330078109840099286416776222505932066884468569402092678441108818410102384896400553652033726695408269864146539172788666794126714314296022389001806428676732441055889476700376771233713140786335177551372374487667159216528434154412330408598959005393721215510727439743435868296161164270778781639899485400721801343699857611414168014377201180467158721467564868722247489344777233696447679773528891509092723694303013961614827855171692084484148844977941790057213721388992241585095981987282720033095250062657688878027744568203005510983379052915192732073664135954542681924936866763414780480579718331488837425275335086408888966967185500313731963205592835037853172798243763846924788953516978883787593267877537748802722524737202447147373207808289405683354433356609065615054211460854180743115954673747996531337250207703431787499072760744531268990568092287665722321319339424717114770018511975286550323413637389659988978098176691613061850022372935542006048239633258483802807037077205304427011857253230305522826885986167781710914295910542168230774800284341156756640361734335489289574345065304821366457271521852993201319557001542428403473732605387697515537317987406960648841544313164391413186565144533316564396798230688270350002431181119333366331430413892522014578105870501931932082011467132666274564869315028416987363340333699698109258966112870669180826544435043655264091032339016343352199864587387382076296707081536592145801836324101781671597319524再也包括复了一652899203348371238456882720320452676786176262162977384536849596487153616872427122428742451427789377226892282100186867650033149568773320006266167328111487774694308289477189011198853632551522205893384097531938651272649363595932757628546464891386316850172936721481254445981538861782044755226213360113161240127286676081340007800686055682653447575568885453733644828349754386335100154996224435650878729338982073011191681663354308008120930437088620616998208194992775593807117213903131240421889144691473034582432234779315949256641157087237533005626881669452241854585532613622507806834639726923032734258853350321964487663592357224098958180727646703259251318937592100868345267703075493270485433997358237691481589428446144625176990173408858164336119828299054235510872765459139265924104333418656047081144684630088171095337141947580642228304943809491246305504760226684440952089695709468110153574909955800802048417446447711666075070050110459555640292406674417560676820928300246196760563980899875778780932986989998322520900515682506640769029498796442826764898884730173748892579217544161364745447970021679314944033714336727055984497918070929710668255370583749080747235346450101736365158943601078120034108739630072399664839875228285875123617769307213666926413626529286106493586326977569055591620614436813333178485983981314600672899403859486900948164886898788413390179625349075079160134202622034271344053083876720456395558861871484481464525105017112928298365884950852208022332340338171531728444974288700233253698054511001895506753082306926166305981836398721664970169875549535692345515516604897701739878697959346385716180622534632202464540414387888453518523113946048939903786455417039078610465119776862505760377933433791933487041533733400927831429221691959875005396901991665764077282524174262819746259323308355690893555774792209807603706552647680339205230882174871892320987043362628052101382942593068388463873314767648505373177911212098887586067301891131371523621904704424461094082732987789085683838700936849780907247041631194738990380435820792202899895349540252053767107132840475677177411328624303549052452320110202077355230973645478317244997529908821117640481349597644632101661317186253875194977512261200469914034024555271431981731116522802717622673998483112072605947184442254249258650584061404200318184550003581885091835863473350245223491403844957582186058840054583394444262021490616628108829359193490298574130640140001260007426176263965728571282380605149025927781847419124570980106179477987918257237549395233124840386990442757351145949635458977343453864995224326535412625665964341293799142060074671423498636621409119981850725091590218511801751721335174143608589845449246228781859504911115316631287391530337031341427962812668819421408355814044128098873438956081482534057332193318966606785429822412219797706649286236278372768897360128175036210626315398628203106725070164105070987109521319603054291624567473016606878849601673273160222818130699710428342351528096289422677036536965220703543557231920197306191272015429252544892571826418025607694610577593302367334466565856142146824307675182229189894973412983330991540518181459097136925563302540781064208320325513826928119016262625091825586079837796537637390483969981200495063760951092131780222867990695956419874617797612571922526001619994901046913942449579914386091242646434342060387964192147713059699861975724278684542288330746617502953984036275192850601153851136404717505624283251914017092524996226441944575739609193264457343544909308521475705776520406487225517059008806806228162075061223701577103753080324624528327824886214967658828240800557825770511232151152589549287903865699352152705352352548718437647030116512023391857397153440341164032344503257432734345581357423618115965352125190628077817886853610926157829385737712425433869992563422247527761235110739397770012988473964749256486742664262866368740447309284898186505793899476198073532276713270391269369555321156484285292403665877686201200835353607933733277323832069940137479742143852653010874453380210852529152215815588271667603311508895666243419337524022880345602158458645616973867665129154407238716749829769632532443972725559281073717471562953917486754146967476695182184676009853511193165369995632109354700891916629032048258761756438810410787548619877844343702383009046789553932839509731056056189769034181671643449102203549676108645103363209017755499247801925968048784006142145837386401224406540151279594382369723380903975719675634672050173953550701497460509673388611800212262868389557350232574676746348126888215914139259975785215183627689429033487884206252592619415662339096198314813145785915600903863342678471117354068988473219889531258290420870219991310293130821892296179005298081719214875259008096723161308414595443327465394396687776271590465461727844161209744640689170450856416219376021440190247030347862110438775626837514282524968038951569110419105341331752638760973633537241613465347280136655504937874415465444804154741280578572206956282512759122199147496550782636751702013835769680847707075830172770443455027219165400099909032820313299934455854340950646383566581053158232812164472884728914220903899924454253083011180120277059581490561640151133511714183333153940847767068348103155973191428452626708997798755550055843039018722598076269536724337416807684133638145083429666253249373160865292083343180814056743384079321354281173484200449352267225117447862417958363499780131740759945875064963304812804174514809031849501826242126922149368615195564950171383768903672165831305891222949742644493745668086845373788915049282989993965331284836756170704781498034912343247680441410262725979715645550238396936797093322540119155761699289567016888721052405119886037460088479076603430946737050988566199768345156890492277077967807881602638695194081873757191469101742714324790418567360245476272852307153414031840942730575536360600015736981149162509522745302044236616081968889722096863009354799428112655564579952742647367717568134967368561955546035014769577510196750337227543728321018399544677516064809942291149808570464201904779989647849326309349966528728677947191087124219868604355608522719159251901829294051259471957387277947110655747943057111935550917188455132454676032516498739179000981040861114267653387126649316702490835942575913170565094327983854257408376755107751604636397460856934386257615479103370894034550001515523511767299873014995766847740275183711603364320386537669565744240148034072639544161708162990517678041876336770952916757907861017762055222038626650155807919877009544595150490627537532132898978388806772597866400761468721528480500195058542170870610251902757276272357368315070398851276036262293203524658851797342060556365075092681525321922593988433968365879702309168136366074172145664035221147349616872619801030346701914185435711697352547341508280509953180437380000025894268511535397478361166134424387238382405720956236439475711523474313982852846121516666259057060635711639127248146879702590516617569771604030721529545241325962020657001406296510687194963765958498339559105239522086659035823645343399515040890052188372048112996686307248845335662402155315200353253049305330509762151705905011007136771802293533031077991435903802363080717054134213569951063793055517183430720183035962966803867759611105794349787975927092267484468233422884580804887382333382009955202717733959419436077955812631838400805904035615220860618608264227440204949158060381905545419440154123007668979639638598672552998665906514754490438997167507169981565129520532182642035430280137214125405437136333718266277722185155802427108654568431878723446607837325212674641601870830033073135947194783625399078564514963634015391686493390597820482039758101111273567500083377519656520578305556590615137370209538866530967534924264941515682302803756047153389121793080052874147458167102667304082452474342943105447854538038949208438739931447551363710137517335131408133698355362338092635506259991422945451253937362936737602001007224244221467090707577726640854765852182386721071816004235728002368155734484674832443091222209081473970539176633499756396310182367194894942938874446888671904935458442666193456383368725794758827969205266622402456598323886636690854451343232703715898048614799616186649611506238531953160307454709944912872202684038773354707195109252356433584346805409176281871277422006116057896208478798958082943927935338880416043676977893969184541413417397802821404856766388603624919883766170956913114348065869913611996899507944206989957936083055394419028727018456760889680226559606911506344609745724259828296467456687007446002365405792580568691849125446447194257348202304386987851514146157087954823893399471011637694448779128248282035751884378979067451010536529331843420946760016880152077000849760788228787034659344203068992615024115353476846320813488742465325341334950796893062407081918625697374536427192008345592500310932855694776643487251842521850519857411231065315992332291516206682838177794472596147401523228284274994265986758645754183266343893889512669353049438150475206721700120403686595709995846364828350102180358620873406553980335556252769993344176915977408699920385116313897253553418034862096552926157437886341268979915190963647409836463023125500597457763552902065342144001435905280904336643216011274731233280247361299451988211778455846879943863579441202548829563925675794522748710743091522489973570861755500889468629509987879680688209838903555268319985709699788778270724422888104047162520699978359742972745001643320765922534788692641791375751469319770044480362841578129213862831975312192856033348772016076785621122360071711740208119935007953265534059250654771634721194084966634890246361071185815512087087108736292903852311021338653073487031271630404274396144500197245030702211602522446772155211633979751537678554811589940295511007309440371447873194797410852179725382455652940103780436088909071818529984051655396663046886134367964925828599148656150086708849462592252226379025745105324069717923855345994309088581504911571685555951740775575756995021005621636225501007308532814541518072295874953367693715457148261334524728466136895197406823531723899401500399686882940597590603685825912349458137776042574261930034957461453750526186577201019075147867675130384503315362085863424361106395343561232557092285682433341426066612079911240872111411237776892584398448346154558834132646814399219232979250608148272208338287531767756706792285453537456645635536140857109238662842592470736902821919263310729172847527836760551587283343450328582286369443720460061486922734574878127424953831955181801155776985680248033112336611459927614485989942528194589893114357571577505358599841382436212732172052686724787949767301139089992280760502085509889133521603577311481051884959711294736536629833630323681384354544152353771311093580605581597353054826637077041247032104778928781420831784067183655736446808335614100967433388747652922638894474587845495546014980618872535119245819370294197563870363370961622517335280046436382286444712570611253551498308477511388363304316671110277900713350363152365166382565103247531099603714068667954886008428250574093713074214433821952999522034673370665322313303503359053337184513079409790372290651417160059697429508161617567789154709825417333590275448681991588181375893810504294409536102306125434138259234593561752716414816938747942112667375910229237393713118671152990963113576627451364793700933026110902111088886958717066952901991055647980912643641823358969127619752050124917235655173400031547947014998628440148767247507923825986757775747324674285624949211162647345268060157667320566400570762381373741766311956060783762521747251422816261647951738991567948267455749995192604171363496601783541221214214400713596591621921081361976072659133137960143563917852468148078785809296517465468263071283909880879447038743526627204731699697346868524820365218203615812313508957669743520146350614009254833768808602987029310009236016747175620766149707237733687939127516669687784407856676461814631169673700872342576308236275986396566986082033283874818582287809980751147417020895355544527976431430294502123525234725095720677534365044264798966273685607452068925092653313742081667698728577223270193320739736577669825225260392589383335846872158868104009563662611289172835882976050801848683718622102077967682807053773451334365684299872548167264906381742353206429435460445391345616684186456018437389407570518636230831229712810984745801636719414708665861722452230121321959567776105580667295165381760104729799170640181099695122542240839654026881596166239848943886143109955553570910516148801408391489377709932560018113536367853083933401537724491327127435036731250087321785280737915862995691804327717510719517407575403265015079251893842592781001277462159169707460709924458198337734269610122160700311384331656267917740492911896035432045745154412535314617670428590158801929805499345742289892210452251441503031297921392455255616365740399340146232547453753898481479209422807312864130024161183684064125281420611310787248649856083558151975034401739062416581883683739820232748434140483191865027899626610541228498768015273803780608940905991379853465478965851874548686330611611790909765807700080923796852481972734081627981769858260601631595909284240021889281962514413401193734702349823762823778674455229061122853676825009150318694465726847250567334622425396660924983505316795622826961332055284039990415530833436182927313814102537436004861668243800095791044608036944756222622810528900741938417244457320087127547562492020187310285011065151376513368302317379950888907855924067419156253457471012350567715177670437923318344627359604549639038286003791880587162789014818702783532910199485892243591767575555029381586780434486443048112432488669821284656547109133179371534989153737052570827298059395664414657329966864034572484480050775220203563466203888782246310216160037053562311830758114046617649543664447841444811021785598558213354038386215267647351674281800367141225968644873451495141591975589633159003741299114783547149629732418467282649097710925619039794582926961516963291359895931159475230640213842046528592913314492010733172998844396562461117456929847592570302056524491360104531386660485040661962485540015118134638663883931482089694821643621748930793473910710583716410152682710674565147772613850947396658085200450891040389953960389078053594453947002997132886982299212486202820442821249908840194770259066524788111842165930240916300133746464595950095328516123873561742833169284949757095337615881837991083669056590741689680964432620732407477140249027656716128894552040073029084070224125883192164794832900500636836809337858940227635301658739921250447793532796523642037276715053073730976247413665798022628521295148689267115354344287719495095415598142398003610848421626871220399395044654409152134829427734390763893431919143340649012256366116772205325725334415467159906174262559946858223930609604975374396313113771358327903980818733146972832200321550270061750458961129064807128574406500154353742588028021482952085100982760904825140579095151112899159690638140304126673070037391811259228186347980818928719134856224949475535895014193510160959738902395504050312248825422883148083948488712997141362588506669856677297686332514768647687039461317002237338103102959220598028257860901487699527045350086611613080662550358084165061475545316224086822608581269988938515832046220501357251525163942570339853539191329279356341253712076411395260908678832481193782536720515165054708272767748203741098789294934123244818570922317774375569181423793224822273132300683934029738706227801138349178676392576880843527741189141567261642455849156267444748942425259862643997064209426068151993239028808775896778061063956536317026715444200442712923511542196769354998676231844844088624357204000273658803945553200080262550970541585406288805757805646410498535522925805054899522027248555910277795143864844124467787903751315031028177158699398865679829912372681196327995731467296484737458532246791283613432402376297039906636010993534000655164627698733691160270220877875534294551003612335686445841118364305508469678342993264188617865775958360555456476945841288911113008526530673340840377587229139499846943275458466797488163900596624335007399554639119667888856342664750254673163971729958496186617121141118779574457001614245888376157384032627585482640821690405175682900675092446297649011547375493707316770233411182069433333422329251650251885718163517043208625042825032340264639359157592540325944430558677793421259967768977461262491722655696809024662736200779908518214809317055800053871035554771529610528341009714732201365062142421263499683099667093036092860694206642438041305738628659059263087785605231677899299122491648160388553809603771883598820200704768369728029464595971479697658137121995597086891850417541823058756640576348011675197834074102144191919864453467682210149989175793243470872831676261700983238074811450198871548080385189290880248401907208261803571611540462323639260012213067807968312477180649530517253689605848248705362599269027104511102298978181521666847329985122437512138367547697275419370781050339626322830560109309625081403782254338905446557770398055451136992638882050847992682515365402407071769565927914765884118359366354125661733131772572551710790340686327703320378647786630219230291906861176764299060053095157376591445131310035188525585056068773849045504108846918425880004612504168522479367660373577626880784680020740895625121179246679433164037503726515445002824018456127725050346905375413762915441002397989706061226226422513664379269806893802258207032337190669060649339550993311208651443204889669592262560660194671513479632870245752021675084970688510821767423566819584729222859106983494158419248609440708721277067008808976749211493992894261854191351231641941021922476585034690087131992503914901744546442513774850399267255212972888625638373218202431680547542079814796438607722658730785481344036116007390400235680188574664443608826324898843803229162507928079804165972482007599561042836625208886702009725890045541079278638329910640277290247046526827837595912345650572100637847093345653962008469897187980238796515095640169389738831745332251089143893611392607004964642886960064371532050603739184901315626066855360871564534430510311976131424690200861055709519275809389208262947963992138089088316943489738825498978400607194968176855915465885534223098473963813864824418937544332545100923347678214791426512061029753586443584936395622443724615326120646835571268284077411925816350699897317298840615657790568703050585610810994465120429427604308978759254255922563384817899536733424457957504087457333617350355182728429297347417238217944001442021298713595029733731520089612009374109220426931073094240630127033050743833224328195985540813099540311782644073581236358351862898748382462564849303205567759062864438366094189172827569189215533958640584534051984625888514948261710267849177874396003267862706804464258908358502288441887705426110278216405615984380706986928033699226651255492025845647996821365632907227338299440024356384185423093851008170979475412165514507110777796033591307282428409580446787215151777231205611651123592242099437002235112247694845489018530410179578784933426341974716823835536285298187713636051029166019504375360752588974316877304612032479122961612337005097970839895216241857379193939895254955591812435602912204935294029351627387768522201941703397286757384090018942478734139546977550478919045989047108466296385961093648700066448294221915341756650430746156386994777421571815214435873036430003240859066691665837029810784184063587921399019764176461466291899226939236765307895543357158523846626241466268419758148575533079594299259900754928635512523957526373450294679765852976633848999586939473050722746812133274973950508862235545281930041380229029735450010448976253627587744082741421779234923270284601714873718961745364085226902897327397676916512728275621121025015004635405314248714168867790297909673283008478872172794683106174182174448569686888083046818540388889443450316157917300200006468759118151680385793083653936750084299964572894305728077652537109380582901568734585165167737256131182242305875067444599787473517332735328079999063502264451757380094303379100494050744107763183810803229213851233027499078608558197049385307076332275652293969554613602371704064302137472921892370868977953291053340167154620136900174726506980620103530509551958731574838569131870340227537394688277264049127071506577991075160400956202429323869492348396859547641103202919097648869737706532241809049236392626382028691570267684098340552183449725520772351425070562735050765993213631521033927553579304259799260201497061940947955748621742737272139231014348909199917503725451849130860665153620343339686593849925229133344620004401701754045255387151791711774823622248795443301532760529308355268105258490024852394259109044988282974154574937769353863718881836486536303871136138443779158260299484132332307740687985960138089393179921722103399403084069248391305256788468711333649031829481313865342510286319523028564060786257864013731012228768330514482452998129610138476603331215981045075398486416327166980960663361958090839464427000271356557873721989043253365463234797013250461129212471085195456588979687109564012422232223892041355450267284181222256222125215159274625258036037292366934073638813598523022964976703172176058121745226172697935261049334864836282082955742068086570951602094138269833591407484062142323687243860231102744702710047142735877525172218531959089972310597225035849183209654304554164820515751380017700204870337654489101255172923579297122941959600405427781023647956355425022181533405761294620450563332725404482435015172960426787994761990520856668323374855740016369323731913150953405290522378038916276278456278902706933072423294304825979455420713482185894775765907003068141133952275233766145959985913005975782348241410747407001546112939798966451562531042982480587352576583824714827703576811574331733163031280195837236763259733037268855484627374370610176830622662791050585862631961916872991662867630375638506181508403093341185935122488434060223450407798513074935300437339755864446301644915609666563590308494506906603901948145329074613277845220053126610639171079433433090637019405468596253598002123417672327980009470287544664407562871835664240228099569673210332860907587022946375441522609277628033173559377443501446896936677052050984362086631954605462925708834585796906162927312281405534853728350599360096159927448836647331507239703563362546712617870615716126789396167064016348466781998587808325088188454763158728021225384519190031305172239123317954322427596266791892195991145246344377873316788187342244483453879382736413285694360476839695513322325901264041408973514750654695832798869025696949532964289172188776008437839519841141778994300454382733001539423274134386975887616768598691224731527982088627727853680396153904889820428019373426782434350940321285508304544158564484445557854790728306855325869780193754201995492698281944576511324578413776978645137119298039227910163694089357572394785250915932014246893107551625044645359978664694404030421208285188611564247792986824777737469972169319186242814501911299354227063063435827754058606385609781384462917659959504523460148786535629162402407125215868932158244086505056809556890136346066964108833096009902868848560700857223293782831149282264966669396777112832587732048486135660653059632287763121261387458883389135124768918061836947528089603933340697455903214707901910173544746671628941098674881532061368278362308459963335912564211888773491644229262690953614726439808586567078865572283770032674418585296024302587390277567726018156861894389549067596434907571725259192173766861003916490358059246695937705077834792928816919747878405778363105935769931386464184790845158113678137859893905240236484675148186047187532146267949422718830802322877744919039306660645815670167639439986622340201930361587330909738642902035751830839444937059423352174230195906325288458942303187275619759398097810271700228774858503410989946421978360641010274761549774117087687841106349309037294266785286255804629615644910906087219021813451044720099800352437195846430276196109704515018398482694040437838437645994646266795957719223579895545613356435908735514636980374381870106957299906218079280075554780363328043592452941431039547862468461892335885970860896517545225525325229419973585422013571918926674998761003502247901131503577271502330746066987008012033165601812776375471820028024450398128438487491288129810334059019829694521729979099820075715409671771598531122441018314756680763672558421475088969014461359992078634228710051741380285953000236298578182215018086092982249002937679406953379214830285800537152362383866470024057583476040038072752104093803965728992437105294749987421228522554655782576807763905929164150109366053344431669877691935733620286034249164672922635290869140834272852338195960094354215475653911291131273502745094325782410094797796768510103558917856344958810612263453819202168649527297058706807387310643842320416739996616095413489054223878532043836988331048805874222078150169550782348778848620737542702309189056364026391640567755655957152002519945642575434240039768574740708121815244181928659796422479291700227944788351103378639061676304129207200987603541973801598871613414932904035793846963386887433519401431665571638053870164876099962329189511632273981055743687556705571732138707619701016839406807164864527540554202460834332833830240744145142477315685514585081688909588539210414122496901873809288084857839950343559908071844708181804314110640433262397457657649543318476035278851467628154039882082930837560886387759474405846773038026547710032404950918717546856740179113453041584156601498289150006122188125717293095951490848023048564429251370548563740863684791392015210115284777927951193357519477423453198970624979774464827543235109967038774702468623420159795355829154849795392560616794766721355433530786376495545718113529574025153048062489738837013380402440335853645415308217053807232434983717252042051034146013185475383999825265104766686551076171673241207720040470974012901404651323183052325591364557687383607316510171152391710264924521949669831185972184413031170779562549873193643232044202713399586731832064759270663546692335198307726580544368590803697264040102695013630081820253075537454654643762630338704634432836394577454378101510896614799580677873316384867673177826946828868147378137320179775212056866267087664394055775365128950542625925706855640011760842330405723801638177492869725640888443755589344298136763385011363373286337555179817795786267486941287718711465277375478792960870474239831142313637219821279094875691064793930531800298151684698426539072523237434869976456694336939768919521568854667555475263632384142866840797745269613092734846451546073059101568298184188572129284196587240645950003222991817855753950430642364425257392483293168038394657192767487379640319318425640114077816255847250435876122684731841166150755618027063917846544259487641375996060510880612019386742985830875435947714043397252384569023133045360306996156247237255998512012745663008859454940469043771689245755889126402454158534707062773815528382554730751371098864356809974928608778695479815919395702822763062044974957098689673466723949073089722245166496225713884034300048293865840077338892250430218195543873067627676166554139569784500402168513561749096938053323140196342337541088149338174705404670574568792363933564784025764937903703998128900926860150248698576065857079948547796700988222646422153422549352749582413926944520332181688132757837257060886190550199723198187080077386564625422260109946159485902201917734208962824902640521046976999147653454752443201004399895629218153511493209074342836291918998533365211179960431341309136211805077017216341283550755336630043026403201714496743832166046955540522867353920151174294628977387625521518574283775562411449203488944781163020798528827137667424796759725695700197164090711460557404582657662054010914532204362373717728154727648587327062460293626037327078072657866965489389670597313333206803879700317018689079847764379549742877823884547154819530207569395163204783248863852331056589980774113305704387342200850088584146114769102601130992885095613852650352588986040424145824412207236509977153316054121870243838586357072639766262922371911790559896578424457241013903573479744688317766328374186386966940746373404521797605336845587436972603880759350007337606409241491656152681031536088613010886569502513360237358743557263766510993393504899349268782947886927537951068264217911524624237201128511773083572792265944463037344123761463518937770142178617778440209100146158026440485019019387443658441047196308500405289034461112051068149059850064766377350474393744837254710090969500392662618850317560992021492433097590690869750529706567797668158063527749180901534999483143277550356649836083756367495241273758031485306242463310831994066819707777647221761376327907688002550305003882536957254252557152635196604176268741989375591882301027343805213797602407726750078357396185895178143334012915462806952594486323941539713507806905233260676782150415560998912406345987064286839455961682480619400146286528461477810112781044855116233581361480922006507690752025826179989563297432111802831691440440577551975167847314652235548988850570986050999001484451376961584487337029155588828446099398664098119841802305974388550656675284258194190614929298079272498922555697082167579989792076856039049667108699847757357164072767830215583656726004812738908431935530198099319903160826681653767729783540525190943356583040741416436786375474924946364756209275496510237452577171240030725654208599714819043047068930450709332313241011115112757953400393137538734492216781762951277289719770852088005996080273592929904387145936665995234546161478854980160583765076101040460549327676434235350924888342376088474528603647827917946381591304574885266391269995480790565071187609868778882706346094761706224956484003301264301301820536815727390085909114626660280638480702155220408495779110942788773366269719287563974325872548329379667490956039448908825997980897651678079218785242690855633054438014324528235499360733480359711103563819321057256964700542364843275068307973104952830090001778243756526293404122177393736267074727822426949483557635171436459747802703153712448118876521515275811200105420158073332750778086818992996699705162832994781148464627143080646307045363091064221226598724115507262509379959202796826145440409593480324492883578093216759323206165843391686215316100742230016905099660656751705355162805832560525235801755362965407856452381663782433036635976910280796918312061148942262938452976707686023550574341349791859726511479885740159289316278760337240067236298400407199756932999994570492707188897774722494262176816265250780601357431574125534888059520584203608228247413641583968765186910875427425598312474742634642492649297982426574724375677415426041071043937380757868323939215969714533218521131608409059083972315194395832548861887070320464659175781898958902812717907847791909492825467837653887187211174421343307222414844548827492919056658624054118715726303598480935201931600850260631985832122678155032706599556338692118479709679272041474772865345147264390673138557277986170929532513198758883600188048812026147009580758581694514598321307332252726690208781959359270548652901081288392206210890411850452973025130686505549738615560835608574130202852970056310926414665440730901421863690233876264834410894894984360356718092931154991001852207116693622817890533020764674051533409404286517665280647844480227283952618494388091299793274247052769393941604599284437528877964135466672110425367331468127866609409690673977226314720536988944919571435475693723926765367305992223795825825757553896925531384792120445942877280187452061461177778725489276580412101806652013590887035081827933299661194696301217487156512566152647503154215650626520187384307712091342585767525797700954699862535349893716871007270217178102818176175033311217543086940318085562236775946031091370250349862186025304579494667375351300643620249548832166107793188470782360474023336162710207565753322700116480107334050295308015589334829828236123270303273960993930575735137591067318740076330274828322998309719878202161430997896018141404131218721761634850715499865756179742191153943131281492740431300384235485700828515006091540987935420289582915338129646086004930073546658291855230653617321376610975939489987144454075113396931271234137095102125219696168837091157275713441720038041254504598707119858370680712576112821360373243102799265875829875029295201509999720777181238847554108984867584702728901644801985723271864541312322383568497030164672265600471028797623534812805717996979385564141458933587116502450728824803774589927381386994838424642893121909244219114325149847871902689905300230718098651152300966724742377897883694307855825924503560986472646403955625100095715457775695709271363122254248505848491938109954751692453084136511121926083323499034838578300194286712117349513862573263844450538534942159574653891404670341472785846155586922972624018271695434087104068134332756501690634651472495003004810741718291851890492539264031072415174650170139633353619778352413305126728451339526681774117904328798199531565478179378978615986735699908614797564448944643096870684257498634251270920311655204356532706863892662584952154077823042979762216659255580170007420446519280071821624343107199752998336945101255718887533931836009921720023320337752661030704202949886032274844632859618645709754325295037815023823587741158105985689898697534740489994141968111889515380094673178085252020687602668684162090764055998495435159846622640046949778095362603065469007604705324600161529041666604119008687364869098321374689797462313996192325967171150411848997961641629075800192745638124214090690643170081825038074430511512612108062076113138442179770062947690888762566504373276772335447237969334813884026802840381811378064598135238975770358407070207515275250769877630566844800392441866513876343021518272773156263400309213109897524359017357002914583207005388804172502900279986688060507902719477005844914209124727698518293995848676355876823255635416729518313507296532091199628649623949992564050654225031859940095401562353080670158797655999059170438295133105148822558167173494234926485823499323043659537348701740345127246004616556777150845987175048662347384561962611242103004172147157621334349375390006577200546681988620243678618380644648612352229057373109853199282113517212599652338996290132748056245644385947084418299629497632856149635922134168969790620830202395631659941223809253025952335492133962328098316765323249918286194779012398223990203575926843526965077449507608009944341498169153571581073522221197563748997154749669022764883613894427595971350216122449049157151928759791523960305880487230625676515769514364294874504816567053098428797839771993753253631950045873659999193279549870635820153546769949649788653856358880828816608701999107942038969042763497299544193586972697199060731679678818595590619938148675934339871754602928909733119128469078651641387009295611984701965520313904986853305157844508465707056869896730696367257319701232635596779629564347319760775584076907732262980086413591583535218804265270694612033433605852386667168353218088002913523526209468520905346212831105172452456417654881805915361690360541599558463048559375084064117965037718472981913824970529025335101380240611605079184458449660365556444204294118743218304133067958357118721342154526557761395446471938934894794791185224411300107831876842461204543210151461503398547242460390997277517876652819229033651088048442332783757287613678461505656471342080640970909110446306556680317908514653024484737484373705722086769800912923497989106386508428410586674787549245052118969285026951255902460984282158899397067283200664473127820578017285499106124310792307816993491864369409484143245352718564949988707396421514070272347274414029988363892597519345815055846019787416118105270065694716710950901485593174804893217836051761600141974552924038013554068377437014969332881938277524089058366511561272516376389275739087032931840697907758892756441292591358133371431425443347387274844660214417481630778488813195908252951727660259138664042007343017614311041904297536697372061641233792156480890907583424081985229895099174687462801122609683796193685995386397826647762033761004226154225156157417866539102403756878359561748014535762952668788312380028174665459061503092930614014977574662875591478476908628844170721505102945051657879312131640232349995077885346937319319273740808137127228368860677322269967311697426571489701790362469188043092981513731400316039754582541838365582728229906788233659561012971816588433891454569584264052909984540938002863193338283763886294471350135564091142256410158849145180825463150364777166106329335384424237367611392619660538097875785490504021943425991869764442627599057657792594918648862281716926862735661096475839715188417745932970893743191924660459006028566580289866813327440759195482407809173102471018064369848678598099284897036996908288060396574387408056144682305007725966630119712604043926994974450814547568526707124808631469025877330530288559055692079054027098426433549967309624912857074738658467516185580550451843002888568722416238618526947531598928704424882028194078712190834547582244099019230774300347427460159851245676201773863374094927877243414038825842587532131940953030149900006052840618150388913080212357583758583595520973907459167500928364814690747517484714447263018163616976183751890269109605286888727977100260365625090801640435547537246602528613578213223267684138393570927599479115505678884965377968575554343441364820517131351031141984117575265533784386483189613788350486705237740641129234982622836804251055943400346467676933218376107759014081454032980637862892546620706003441274552328233656332821324599032255379644074251533506515583716906603564512656412263641267332629019767227115565233939934945924034476086814641672393937980348982483947393729120327260704743258561323836715480879651609735349837924432348272335359812522616259307173265505631772819594475946747423786980672816496566177329772502575312162815170583725236956559514005821613290956685855044871923756032426126415759196408102168061354886140163657638863103315800487135863042268017617375982957550406041989564672875644041896213211757822288191460649722512078584566773954539821784056639865947950542104887892313986573773583862188006659619244380158380926116443594219804214284572803067486368832064063834447027419901097693918833419705246392945165126458712527661642592454630463895476589627513829256872001133259482329192870469581944266466959573072730404342885984095763981634824271513436442651143368344565916107607767254917724084661292951378294782374955644089051238870434863350479175035813447712978778702546925608306420097146945490176460083390091241446236521606377450211210551543558232155879867693419306729689180739590075460515886537009073160492243723359012521745100782437493565801270888150363615553046126440371169664273924102621263253918870332955131383583108698904129995690850604226919291110923254758342601888012204692819823011857397873004281811880451435621172756438260312005186779018322011636557262351023940394689887923434240180399121450433479645679464037687678054170665144150022564902090815809388193292249420834232695493242536187439921988129061113721598612401992449282091893340625875070741288778214966721550946169999832744914181495820432033406722702259943729703945112425431394718571970213440594909118573841338572016085045268842884086203032963305842106206883543953173034826143393888277183745979051180429216918834465579262081050510605185516067530025684190334687632514194822077558610134225118100929784835113087650576393882608729282529980894044659518348215151445635448694476116657788439470714821880919331725661022845550826883371403718247891179288018452682590647118625856286904573191053466346752705166909962677259604613565915497539753171256746660868578335178823642145307515782675314848252690778186510847776626073553984721956296217458107672173139170849608183577743196204302596972464718144281844762857198825666780568772609794983655656239709172221562151095327692985084958909679477267830873738766833363870561959399784187108399068935189046230611740823941596267999774518541208659774292113710829757199968236139623527987683771726553152097479317759905293441331901090972970483687216534319429007461940326272253942180092833421753097443938328211207703924293627159461576772309591709132002421860721236794943537742989866742919991619980947118663376784313109136407876014963879112840637109150948430363495717428228117447076410362705498759139418979823291873305360255686150462189526718694222670650321671804951089490852779245929601543280426158440565316861400622838827681380018920452862203824066239372767501837521999164786751271419237459517154764964063663812031171784075381983993062838062514644353974479469133312722460033378356217416700969611522800210024538137317032110793205996875249299420720420017162584526756281046302796432372232719942934013731082676198498345571881524074070614323977394358314685090574990330302661195510777054058408389091902556579448821447214180635733485537199880710429959721016184764962131746634347657573241234315202965218931865328780513378328271017026676448917234318363790321984634520789159806404597215635266600396446792375320985299427546430715180969389349427449606375820182465158957741073227406835062466198832164557530018276112952872476349673279170907090489319410892804334456476720979607222129174580630520608417168177367164121606232822987305606257599884231614308631704083714177342007049475411796449631368033054077696048556222128413092173657616401435481965299197363179814509373418041966962916373820781019326722411811598938659707994534063069500313018186436335628860213183138629228795716107495276027286649165985798431726842723344266963316265595329102285865347599820668889952758528427812229491687424307603870488405200430625140919788862280204345335450009725815466862486433400042645469033605898567920706448329088027633666932948955637775956298253220936744025029740608224505134697764919121591859054868704892725100074878991211696841404292511309289444862737360843396155179348566400093648065532468210955616617666391771672617338934969417289553600773535141261108112046169741481699262651808195699688820969882826449608978911695487086548327572930471471552746462722978236939888844321796832661064291009577139059043393419538435638782152888552803480915617129825795347189126885511304161820296503228687727296248233585322693802328799416978457065629634198464890609332406868626446022017384254742811981378615775414187357093227560891481122876693684423153475265455949694390335221326016145540489368248047148237970827495812411794694281367953585457173472289292957536921589119508321624926162656071055657748158114146189867290343029083676741697288399126900913236382326804042104222109030641659825156373411923164367647804674491389069198118168389198742459466152161396806708031990245077408111207375640631615737725129204028962261198593326871529194909897164803279927144336572958159354455954987035922151385382219880398007939028305120846011791022201966524162718548109935052705860264065571268414223443350159731370558863833412989199738241845229577417537237796289848635657955176781358163507656240052776326776580234910016348959648792433850384870605627904714328714178207365378062760519382520204379156364772754907919918662301375809569919434075082020158511767362233923340786690386579355746805441161555029640858258819287458087127635831113558526448242372757372331748858937412396326017402361504442618393029060890707612433338816512743445448649488297860722346968884910222738129632181770638323757356930180460547605801067682962224916775612550731475827144631116359188174872793042166303174317187720513023842598070044040396153377568966039171786681444449423920985663097073809244438109625517964216294822039874674599402889842988522285701169765023916773835595557177790498524257473390693022068655079530463518013087282730479660432553196972525230064420702718279300537118684313463677670167016229925105032619949607913874739553301802157805880947943437159585010584550964885702161898651486658970408389728264641301407176506193133373135670886177248322078332315345235287160244808470932859287333219695501812515822458994318528266315739478500157241195460569990439131250961826861240452082364761042584194963587124547007866703529970536748972443018826119749074025695082992005749414239403216665719081518811005469465224372672636885214645146973459516173946035490831791592309005180804202422597982926085175292754582004466464586753999542057060698182572650219300327426641663415950191284248197529258972565570785100781391993293245305296353865238068464109595934722548719007645641688235018536229872378965807497267014189051552232917530152157667419332444015714319702361477606853861308208462125887913113002582669131686270108808945155223253999973593681076402209133779270777572185122613820941843099473025972772619078434347971605324004198436462448067402315411551905438465375871869231228514015987317458805025256338720731054829559164075268173906993538037474590585403684265002297328438632150338553274257622856007401415660746404376079520258456086361883707253359026591766938299479033845489194201446425052055042667139178152223508400105760441188144235892219051619474802057461859466413109380166976174637876431234719343355053925441860713460506584272622119160330115957930614454813903776003576272651765837037091360716804404008490978970058694388600893561712238513840066986137310667603328200816198458623951039343552815172251916386763339897927496131394619212975624353999861743062979304763877313456241118438267399516681660798501379454798580288218122068848535104259599753759610703550083410080704897068264619324457725217210368442225262284240186249133543134047078769297795967158335664686919376034862926417428720672723603370052715123070297795157571713495332310338207054023215141546351390228416354633690798395025550737717092898349428943151262707288516206898334535758587507077975093229921545690458161714657672276549868300390426278183639418383498634813562266029597590738436762412006109030983901881146842436839355518795850102661941254348772014377335742782672796371720723594429092067201697996657513344404052689044326970454979908529693099611354079137524955074713494635790054635902684265501535935314856117207105182867105301568973267728405851976840493232833840476540899498279266824943049570986167393253111771122637593027414769692990029118767240776019493186803757634011098093423933347580078326604284932323108076721702772198416480370313858270597521389112328082697349429248634573915576886323295438147160084798468040482507255863181719576259507278852327124183881092820346223036126370814241887008412444322916528543229152811976427833974538474462110758868206891735235267273773437308630931925943858043135408855367433923178477940335830819959517443008948854553452370681174318134052618166357057527421819687938139047107405258997286861828750719877884392177363695937045131191674898799838919433964471077401069037092697375156784076435723702816914479486782841626651838970751810233613668579396213653393639617246376764919941147983574693298698012948892524502827150094369477420102409613903552420445386629048107488747456676496067284571009423991288201811953180524728167786233663787877081862641918708895230992796111220329462484559318515106698274911601326480078685018956915200225308319764683376419157251523380155251318501382460161058208185900105504216828446462914600200446168479518495291322782329668374741681562238340448476421882925734632898287379966543630168174367090926285631515545104917150935139825563990240572438831200923861407807064668269732583889317668449733539440866350908807127421659778306423316095761605782716459785672034265917236156794051908642047652797911213205364067872647334260562234546189969990357333186313988215305101166977890890705183072436901204630764482688141897642996132840476448052157716676405072081210578530516177944475542547964816080299110476480535032507893479064021207429753015839476084826439668356312380442015529102147805844900754990380025050115249646095902340980930128733093119882202474842468478981162435769520420943049158619882587718263838357853966741602959378219068895277421388806963833376882290693441214808797411793013854869636708659420562988610930294581441863932405815897886477937428330659279105405430896367322699907232185828417304824342509855247455088161096941667454901368308686247440552204486636211447159253286702811571783463029540317343618249252945352000658419421656781487334734082806093326768042533939207537588940707325490870905897356478060091634890958716101356039062705637266809256184718289847251526127276901956970748109079821865564475546356667908075772664454887523508765904199156033461855541076684198008661825119207310428104157773627023587489770438043874939399508231196086682536136585020161751117278897805638222120581582750180522585725219452441226610656829631532892160449794571775944947565018136191757414192579259377267075901644414529076607189550709516167294664346671664247327319876551886905972054400486390244768467448241671550761108999059262584988888764052257607154767160940285617025840548439213245920588265531178817944777342207610378518322155961699686608809407828090583078602930535075224193942147841943060207905444059498852579126603950121730786179779988391549284531686162428282304990200636240135049178394688938228761301392554855478766619338629360734604509513672730647505511817150669308772599148998943811122129022456628143910082887161940243074781110815393254665776655247925887505398021823712530694450246946947367779678415402904017600294801585697749666412140325019787856064166645513264489176832626633173410283172511390695645409384551330185368709804202885109286907014344936617674646977728482063941528676787225439324057485882152382390712308302610797553224162277782606403417777403673111792576177657264062133878642672314188453069263058879119364511139109373514335471481432674373999379942452201698005753807566869001709854713762183532430239866926898527166190552956514407816610849619690635604213555066818531840582337986157022063006472917134542088661320571066670829772649664872985105134254904299282772450639418520102737929873965846007480691376331109195998451243385273252671475022413939478953488567430398177657561190798205557111113965741229357218196911319688758774089720894384527089571580643192646453765438450620734719021595129964131610045213639070640397308786852906269274523549222458662808865353111840475746136579006373755038744376459753041657131467417258088440494464420667623274092928672614207730799184984913897795143785467760026862353617404713745182590109690235160609267669441464749852208590516528525060282571264403393524605354529658381675331437161966741557207122627010437172119072590331955103804789542229429038240479905172462723377335075428742069563208716414025155993904025916850906132653452853295843003811631958434536554045316330754780025386944788115585992277203307420703548628184388216940496036380691075330536456842807439403520591849728743459536698007730176862834145705324560587799526441359420084247430439818351078521281682296504934629220475708572960517586719437197530379773517511345776943093182722922274417180137029679372102632101004506222101875556942877496623818684336410254100652439133310925777752058128620535555075066674435601086782372362428190458814912288283672037430244750878241870288483080454311551889564541955374074542246771627052782498987199937866496574677154412650821333402065317988667330312321530864330342245314870604613348931505947604436704106080487760162010533606502859197752621847375606970547173727422110150322564812906427370338625581648912021458199325490202666927315651897844363305474770200788084083879196714143287783133811554055207823687847635429863648085366458599642515010313661470788173873486889306894341923744835350756978956976738992906525983498337592025930134325522539899823353130645523412918589244308597415788041877983000574717963382068433494772911262361432642642328825365994945382135614401044868250403351601855829777958602131706587510687106345248851817383200623790114959946243961465924518898807325496075200689241389382029170753884250243830771598275864933964432215489703180191649336285690048631339557805484535022447752780321696833715974092242070708634301725159302629270702219801461256616887009971935152180133671224867360253621192542827374134272778890397331701222150844119645628033889363437264241642588313301269119109201771944318782210846512169406452243163841093530336053023346590927566881720877697312748427760450431499806571887796403650232177833971990220590795544146160532807883305523571929212405832404223242549534928139494504911325358767278666593427947221450480474761644388201502753749672613741000680509427803723504036384390177971130393663760949680058072399642839934609071334542715390711384974225268379483163963784184580167919961248587722181407947012889240054673604573356705527280715753397554556901193536537539433174602021362314050647505297739050164955444157524773386270143449583736906843757010052444314765014593907250985162380176596873249337647419536831894262372768593817239058765791034676475184017138535123124276796665154906247525239979153937852864081733842794014252600463865044568550142990666675660311086821830514377729811160772056278881909053628599160633356024155817405454976718765953936865140917538953025522250922057332963693127754358056950305964851874045840192517710933286444611766790493767149283550767531697565831725444871002298692032979510165414554273472282678335190421827797300094165075594260567757614332756835137311042036898182660368427917266669983106918108600432907419288571593688100409883439330857196822011871917150371203491752965732552767700180547096525682390308147435537928644071331184499980744197862483838412413722489803561560202651295036810657123967830091367326961813395402638209210986167028590315432421307451982062415887660359411835159045948125942775444301115459395866678730811600487908896605878470831438889129164130967600949844643102184902040644883011036129968931619118328005796428766794082196766141931622811215520956457186924472714994055678037578823077541969716546381477120974278487198419061884838133706775439135996106306985394084748042076819844291223263832893081952459108587767003479642728008356305888046702591278716156223394632894331099840103696870809385782639513864068224406963836825285584491825994716394100879723822972928046057625585392858089295544244421014020239772798700440228649168129490002877034855151284014226726536596609651895686140841312758424691529892730275499233699575521278064694300965598020496013446913034161276649292676052516328480802605951019947787665925885845063871292000473156725177482096494211750177375492732089759776886011222107209253990137531031783242943858767788885162251915095896255551042894798045242104196772556728688534197621392286062387991159926539908014099443405456561839509362507605757717160052461690007009476305103929293338837304537361270821749305991634290834674221000504122418845463192040091135109063913638823089037801527759750559373363895379656522510748193302692690024019822113290585571735893935131392212343022156248123318069656806759025791467909575575404089984879109227272882087780187952901139927525183263401893043050539916122059442260872608212243571615032637680314428126337776202018790122043840099388678514942108137126244075145381617815918298692838423973086737120747976076916065856527300462826216185372926371198452543387006212268950256692026135437423570869651639564676454773398783196057177364359647240253101419289621551285734730183781220835472408973810681925532730060098686303792074208434036611874830883462893585415193844446202378989324328684421488033929034295442119626284224241193121619385651072331761795009881624322497878464593436861127748381755531403080320122369146646776771251022475003007475849415768201260930021704899834086460759128576520084687197600606113869854880566505606295729846398931804140550838054518809946815603473413827712755786066200351552944896106837284346948657754620755751792870071273503115951223798711190353005159461950580108754877028522573508757088274662380631952733440582640044544663461815065698373080124103436648252280149600426836089754243600309466532430237574655268408096828867727151766241613481191893723574612888171839259736700489459546421159263081933898089337930363458224229016276278415928701051154321843017477149763337766602655269885580418237343404137839542732464118462306854504408670453988807005925193596385080187747280993351988827983355514644791303177259627784257965772869826634334531249876215382241658764217801168768155624303980909141089306563367281636019264438766626742993566852121660564689834734810063365881389022897041051127323211630924179794624812869478849298045818856941443813212454719610535420450707774141231373705751445356131113946646224941409404942117071594913611606883312133903166869196161854490183717693970957029506330877799524401824446782487169024046514184905904642592418862103433922774010278380045730868319582171696210628200505495531139270773798010811792546738477305375799354823887467705839913960531546402173989594076681765539467934297398368803339019248442531290068392099213032778344081794030813359733380933676683904894827804988887640107932902317023774848670482299149811954539471006506990964518170814105593947389860013730856193392616534542483653959491322581821460104851225746817352964723431421778271674046876424097205434974246621573318255773289218164466169853594308810441410408878028517336861273306126991942539202828465354732529658079535959508407280901995284143349148849778884978363287703430443604935120233742770089989158549896373886423561122098546420015893367649353179459042078804513218833499338923921270352512153398927696138725596606459478082351768581410442362040589379570101156379798712304571948292159453436190460270049667487835586978520178247216524685973731273950592607724528991958336937118352547277297068914617290699989702728778144509147893573122830467203387858585351562920064377857290555625872383894264221718799191042351742321854064198640440194889753233275322395998887297564342591167127143105795263323176597207373060759338373710434433734035920924155736350560803389677805060609582094046503058465230337788409676639730774641691267785688183355861111665764376588812622593300660548100596564743299134880148068036115682660566996896305739562956343355227787458286334236648317209363971603775874708300240135370578541886087345270728370115933275595202264748331897788468243543922916632817530001652803966396853394955862086908379287747891862478027140507888483479747055077937853571694471889221416615130129445534112984306972396689633421338301182312954557148859947378223482238173259460303328085888026839702030696648282887837883822046086754354551520850345113323061976389780276471148085875496529830111992718811698360776628770892341024576139594898684883423536398130321311568803660350675224818863848200061393564392300607781783829641347562717264564925499029278749220005435660303513604692916295673986801499463729812680331097502486294502089717394626848956715728359106806613482350233393001490374538669838229994617719767179032237907291829332579550066725449678976267703183257990329373354107141963806245337932900526990899289135164982423663321014818207562230599852973440853986331648506354739857628930585740813524153956048377777950050751011091626424151544297607876487905509043276933431820005351702332723797996496701670840313859709269535885788576113428477991928389636273850369809876602573348986208924703492108947488876348719547103354234769519998482012289559467438277857105557277670873961846524917773577103793170985925437959512452521209275198923880513932714405909687410807080518007130931057356109199343615951553521013167311524660591744521852876825612163972551434816331940383581080192313171763979508321054929706498322052230348120894614851689909787900408967332343572275978418829092397541008632777248305763179496901700045611417126976468877128501064947084719553069192544892681853270213358776393881712987791913542471418163364412680734751130481165984800426598544342872889923489424354863595393759314843838946932828937895231284169015275373495758645851811297705534736700223126312752377854605819990662812126613343012405477578912141369729588895946618629280323783976570118997997372539114237349618714015955033745676274254163534665511759217796533464067268028899436003106510745154626063147807793978356394942757299366576590281011494625343971366612338724572862473616312836271108657344929913183222671769374932055248169337908276094073804725007329100975575239011418388877428161040540196241350792049919971300188646537134846392749423865146519033574614667954102565673787852445842064897632058961146419321348389055576471583106385889022488784143557788159794537524653474343831552314385650499098119865839593323711832936458750507435365940333095720611803257336715828706846422353754100345957234662540234452416659171357804731609877685438872091953726993223686079909333682470206077221084642450859876096714825406421052061544119513979662864256171679457438331198404735996091337827834704811981766300582051613873080657719003418762519544242810567934835088484722361985176280373492067503601888367089724366437517035980545868062012481208726344774869988734581326727986569426873427513123945145800693167750932834816136242471828947182620527036793657619378312501946885147489432217246332699694965715028682219532091347861810342717147533643934921434959554789608892078676655433616686319217540836510520460706560145222799471351036479569145269962280741794733344011051233682192734685535363476716474718012962732295143133181614040550711497053662569899009776474600441627050480666627087810955361321262881168775126058026251442438845474765809002030075492555273899648538623057851520169989105706920923376939526889546234444041450093252200311612160112073208884054909710141831636620334633910527867342342888860355654725570226835334431375725565268330693098259026997345465012810215731315117731174435785265635281793025293912998262920590336908404601025912974789333079388277810093905789573632022207344925376396674749403340584758598016277939567945561130569816110414726823647784390668649657952235736132913751105000986766516200722669658932456880112248851772953811511413902204356635061890402528184606216967256267153754233613078248488481995239961089911090800881084994631508878889288700010582091316422939110970434129107499814016846466970151849297336942779654807089890650222392127645270585506435691974272951491154544363427881155673678706832529223750229844143421894156739051150023197172066436859886217525656435949038076561327890085845922545100804761029594386223855825413832862351929188318128041856534176708047275792934789025386161733311440528200506706240670483281862181059981215057260820572322790605459091917949803618811695658838713789897722574496142528306152684416228849108508869421626042029614893814917218862571744710209060586470749352856543789382933235451504664616920292899835539787682290338194725876021825823291419218301844177913467699453168882390522985815885836196284510278489278844348388462892042296417925969654966980156800416110065018471383207062046714047712329230889120889884200866477472158330551671645879503600327811403205961247197077056227830080287382168356492054089111104356844051782824054102954104360457824597558342302454197915310873654440033105546167643860974306359298740432091829480369660276882935583796241589413963172516461014207430418301620099628896032670576350898257570825761110031875790599216828332090569673451274607931699976103039759035696154492155982782310238897263304512433257462849108727434958887381603389035316780613132781077444994284141192661831578976047814764125022871961024511665212772099222610411820295874185831881270282619702710474700805041711206061826709740694059847690656605722260436168553411986058422717154063588146286156666786493890798064748147753889845233667280465688333325027603689526239514209891558511877363613927192172614145671197726384360016270459845902323809089816492847783460359731071292922864035394788964237451100828364170718024869684474772971731222884316815937432829767610658381929853049476069920122509267354006268598892231138392955969330897133543178584791767996265786922096797472059717343656386081883115180257409846993034261098428962064380328168172817758622277090211425602371738839726218410497335514656181893645004357862361114710661530875941914392387797835326769526420057436081001093075882319885383163004968259378483645725248038985686597036685389731530917767624376927746345544937118745565489528819906063775723570024822373064694426039160754948209983944122459098490199006264124349261665457684347724725473130862813947261618127534983665332182620681029488474438093722643828448021171755282798392109149727915115190285223330550304283582482917741585276653686820720954429813869492659501768155281821588401572605721465465705592788007778176398927185401774348660171832239404424848843879078038065078880187797069988089583690780627463376984494906055241471294157625909854323929576883129847789564978339561644133475307725873424688669846520303130751002687230724393944769847028258067895004795985360257524684801177186020541179003822632879726484373441719835024567096302996193562418576032160463685007238922397286448125353286991459197203472439249701350528666607893919474726632350559569894703791286351912165431993404931128936501959104438501675303317181098225408411418877816228237128464494854112804522598538354912544853116320011404230744638487137504366332410896920800713241301224592088886633833072082893389274728091907813708868819743915162226108669977988608261929696601869918703956787526925231336897536846841524293665237159828993756061553896281636722787782862507414601803408202666594048225541171164054483616239621576414808476819600244604823036082417317478968017487953304485378661071800076830044027425880287083656229944083469647694470247578059672645006389021141735889019642516575872559143356073760775616296619591243549952374248202999070723904302886012971366349654517794091337565885830432815701842130023564932875817496026279657802673672553455790934698108974318344815730766735069439578871909024926600321212109787698819350689536864899065443701968262102558655016256125871952223862708652813703833095208404078162368228786116790646589549046394019113851418256540355048336357558388745959318867806049509613727071716959926262887483708678220480057213243434344600962351784661484775525293900824604141577825284297877529776573854100688045889564488024332697566320189660759058109860223380329247169702695095074584464764148329655084926407619464729702770306706102474693886641129563205149712006847671631396049501394521800469033095234617259615229062428061996923749989900952977562786497083816265432183180910103874583196669316134068442003013842469523216352980988300000035109356131389717110555831165611538848443538927359746194258710290054330107678121419731349714813193300722926839341241313831706881648303914028505322095992448177563141443197385907127719542359929414790891317337969543188494854213185800363533224121870808344693511486946440300060239209298288983651287904661626530678217431389780671402758344802359193647765740959501412172236609021464869324482857586634537367448928364081914160371941615451657737382967089804028468273519756892083642159473356943464175763401222697122894283091420076334468992235750829403081306097095540736004855213898765059915386692564219289675575144932078343899868763436919562042946266588674939248837388641910877503314093281216810035577362689017496861754680958145177432923115441796017294394088045012958997958055666508347752163190024431448716492151084628091073127425778863939959354804890768740865792172502769855762005710309833520220325845197921196425200391438808169053030190971178405941400359234453338407616613898472761669832124345436464459100904020516652517984524159003331534018071843042710837468991273689469001705507883877925353248662438046939606394136935645589024509973957828592513368798772022370063971084920876724581128052678798191989854502104725682786845802985288234221677802969498775581604141012080767120685953893872377410222460666623618485427139436095043274753054154964064794332513617351823844824997433142735995707970051375304943327906787526521959659263140705506713042819038465023307199699725688691207199952899809137367043898306451911919970399715962650001009104505770291321282054895691381251721704249293236341312930640872903303236000485951656060518448774771804877163139754950448680737359788115411981835311464977091265341494736603398985165736920579620339976351428393174575361988649488747634903660153371276562462405616094959965882513446223627044159428622301385819919304122626551600077691953148203372870748915691251716132805203197858580875167746473838490087560262588919665924473831012037539293292812184411984091717377523085646790748952995674378060449269879808898906575169521804267054344589936685883294627127306789695299066038829511249512474187271383740460039808014664719604065084888954230075863553047703492255947318250035788270939458200846846749070813427063734911256323085325149616123397494826428529065890607942873794638872744596347135881768410255306271324127224994485173075157804687075793680500272389950154730615405208977469488865915231550717766183184672826583225019887417916288304139532006707543400907368749900503063713446043752635384391882221194232726761645647141177132398564855565339857465196171726035994090761398805673881320488560184905354348334852421573697810729882319591897745106434505085187490320048910723102520297948189642464345772494002496845831210933992670579665144925036581846961210026173346436840903602398712385575912035869143858679223975213160778901374976648354820761732942541833886538553808610275565613045605234174958712904393417771732527878690961062568712370064137607074491941950437064861647510962016553856356507058283887959444898895783911796406572592477003713421545287843398423639412565282563227216572495402526150335295636320500728979910197405057741995255215856030548059923298016069579711948799744079031938742270001724901284146236512415509731060832265163159319418190562158380999815540307559594176781183028172113983610028212700793380495480805139315921146178156862990833213277413640060664205882241814425213902983841505080104020796272481867635482810761693481132337274971268542030921493962499017737405325291680062184567807763109567285435128144225262534148481402148388074791314757251498061001220312333667102519450080807911223650258900168468515278340718479899884785118284164035230003563336292899917375794265730444166354844514350445371052641824648620441649115378370408743387367044068622645945777593032506121163503623045574355296158369599503473833055445268769634787505249110849560527856652422663059784900405894238680658974960347428883643218447555081442056763771165543955587335431036511769363888102124596397268894382522168029540454454984876264447698092857388414091677345343160892077721349379883340135346638147777623936653770574518010028442584480936883619935668653733983766266849377044972670858371558181218141100009428897683876538831551506037408426311921267799213049257212763212234585263649218416536269982934627362530960290632626337021854891442147021744821971830277462130137086956171277138941196782109944666895449315067356925676981352161217790417541959894403733140443582488433535475580609441491810444102910687064972993362823583068641894709900066199557035371350044473031835247837557529427126925120610768405887289869170062762971659492587209839243419259009636997027796013429777059700693121207104572513014691828440034463646728553703349853226514296131540996123291572189038017821558316303335705450956136847321210902314631341004932205501625516820406489825208713101318983646592926553233996275485373665029576803576660474426677895097542105508663556051739001139100918644967503106690260337224497590599587027610119898817679380280485155021656163529078797087862080178785201509883605402986815230064599124463749070558317832457424028311133449147947170436395228627714422487941727547524439561055718301860381733672862841888447247748806124673289080108737501440428637636080624179250106794411455270456524666900285612173521334042330477431963653790007264297634157349379274219078049426412444567930181224278959382078355067018731262658884478384546960943366699926517399258443538991989351631395989727907305249433407834742459186068740922068851770442744320770229178246857032257120872088636323487887362710944602771913387139961450216598967826334826500845820497079268115262959653146292284288188346669859193509428408573414306446575939459484285339077792918412526358226098491127701889026270766036554392675638275116566809699520524233057856600233921772525166451240548351108537431376681294682735025689094076849020603049531630903312866689757075893175143533098441826045463003472295674597504490460548775659450585959336793689840233186069327520213165427687356857279390010132315527321521808453713588706592294316099912095394368746952396213406457143738342636832126381748871670472724608635559806854641215570929204407564973305855721598195055276882842573475208336153357990677780468377283338277988210603360291666781719320625115495094814442946694528896053097074705137237723305303975888675002406420786118264066048142087763215470879447307398768861506787326954053208964963788055759645728571714330755249044084773073522380045173899925546555981317251204181797106463678640212049415022686528336090044408073848784924185013310200690167133861738206828970103996537049062053359728837840670030395853940197696678685137715878796325052580326114823089771637556878515687664070950849450998511457623266825261498849553342328944285871801939123613319284753851732054612770660017536950693217508710229047420946658161400908643709783728990948792687443450098087179546428137398460383128301605171177338678657205874828372376186777600497453652070048518641023012005135660168864574116804950279176103759619742470830566746278800355569723672879640205533807176185270509393471790097962760547732686275146493864503159879880462522907766948523080604483454084927889791791885123370904219012285628304083664004736962380804592725532360903454976116145150067508922241476098394092014657988131057862276094926747036835750496686401580633272216695259299678150582012302755515599255883314517841641822851972546412247000850579186790475862041853353501283446864354685102387853040955163443715348034764498543289346540033167682980642294995431146249002535085033133791731400028934946485958796539221007596784147424535301932931479709501610977059466716848174031674888548933616043543277832746684060626923893906169706690795684725847037510617627323847829170981366577303639407880248808549360621419837139328799502983704914304343572544073275616375533440011491597000478145284137657223540626357916244498718192039877715401608205148215021148745990951493230534940809701709298047627486224627959929432584357027753092126388057150448955375578362606948202834411449965064070840145054310090026419937729389378437658309983126403594926785028361527055907176721137102171985270721903093210391237354341226431009480959612986238259197764073937399090748066015710346823590981628660665013928094622482889047113043833960463442578089498327637304456251348882126052114505943348056665531125207508973870560858471553192173474046267285694824512890302588270245267179838196481890131450218053175480633401611373648437944146104648855109643319272411961528658144219740998500779207312381577170417638156405174247167196169395920357921809452843177499657648021544348412337935611695602165511444287645458555590527737769543972325123189392152422549474291510798838604147113559325595984840124206802861198855079228225812955510510188315199831971784358168064905847561272211981138653082670813103885688658941484742202380147437148253397935854931426873218850382104127065745585527821751824467507183100848953853595407591076318270079184472579205700971459273842214676403517065408411355342358140639740239860676521854978327146626285568