0 11个02 13 84 715 7896 103657 1570318 26924979 5151975610 108809318511 2514058765112 63082049083313 1708265099887814 49659666596171315 1542533371493551316 50989040755064494917 1787158470158877734418 66205757100729202359319 2584767056011563338144220 106074139829279850410598721 4564944554095646012437213722 205573276940968092694633868523 9668306619851009626931193027224 474028612728343000739308318266725 24188498561261647642908104303548126 1282620868334615743823162555758804927 70575914209253000778079909469147137128 4024492328730031522734501537907838721729 237535718798918021758701095411352598686230 14494799641562893065060255216741971735181731 913471943738716235716318659008474703227105532 59393806469993756935587065610920976775181379333 3980518902245033703560647187955586308727064043034 274729004848419505216832108185844847561221199739335 19510632636700696610323144137385517042673417227512836 1424610439040742472903069791729940074316671557234226337 106869382561001282142399583834894050453289110827003152738 8230656174087803019450984301570007394652623071315193798139 65034972950791304875152589291183632661639982727053598664540 52688129655969087300179516207561340137550272489564723565433341 4373885655611973335751504488459698777178323364766314035263764042 371842461074246264356944456296214987688584264987493733625560414543 32355434524498260830012420477529402835051176304559013795681074537344 2880068953514683530376390678261587431151138624594963813412255233878145 262124007771740301105576439133660566760927761649603898373497369416537446 24380879431866683460133366973310498870510937791742875762097287142766362547 2316487099214863203086656724520750095532832945594234048093378490580458040848 224727390776459961375673877890791007659054658615023960060763454014484688409949 22250677196926639224843753252963082340174939820251067085946393224755612957606350 2247576211423185750087214769956464052520377760846858156979916763840661055129952951 231525803439328606337218689035854735683855339790334836294749896535576632572004501252 24312773422662533592565817879179587849547755090694787062583962025004657653408179153 2601730188232267754958913976059444870625112098675061874922172900448165361936130195071154 283616183842878948992724215360487420787755722393349474689785222089437651340293080481190955 31484342013666920833352471024984218037646364641273471680018332021938146387421045705330577056 3558050999044282176269741600778933875549855059002014380893440681381269416527013950890640763157 409211347165964977820607935028583694385064874525560735660337875308553553150721232350215876434758 47881728778411122317762592934255664713073390823120888277315009307946178218415990321041543429952159 5698384935526893443633739706495465742533108876617482776598378499116093802828444377052756778207067760 689558200946946289715965237286677892121928731866879859289986630663536858481467315254862858970124967761 84822028025788032526828857410246195267968223820872448447174253506548296817534465454846717429337361579662 10603522799303265232109625327618904243764048661566011154067847530986665084660408178890269029182002020929763 1346741853924503325134185713777997713474555495494103438892590342749625753723094686074428529307947100079127164 173741486544198629467312000070648387718777157933961265987049643299861978372942308646782488004636709094984443365 22761629292311650500302397510172692674089100593060404948900393495507400150673747541521596510932218382273007317866 3027489188807495018848725997533798751210022917394693221147517567545248244102854454232406120525563471956946409043367 408736218460295561787759042460339971754384651870613667474160002953983497143170186902949974458397787941138969568556268 56000205630729879788387358593707637174043349930140145090707189538450387137596098783857954077019656601809957437298088369 7784479332938766078629593549544360353233699947273168316159321442415437293408231847350058053831097173531301745256819598570 1097673252534892294049358502348843410123276100588349314247950729319054608586387732135109864285479818468596303419312397949371 156975835155798353795065054745577200561769980112996946717487570253679504844279606958410193805368755091416321771326971253655772 22762701475883672809957960789027481800244453958760394263710539511860779316555086428878334750589163333594244812763616414006967773 3346289265766111073651654583315085131607797067554174330887352322747239178111257336558594027633730883767585899689211947627420127274 498622031174106761008813773178062060931998226999997605943121233607940192103668314027979308337621932254156923848116528205679068705775 75295587076379821869442753692333006348730488049064396662604144097711009553278629560259916619594339906745516217359730609442469858371176 11520769577109828047028232815490314313593755488144170378278954771899457070837010820371691810711831600770899323155132877369208067995316177 17858014483651182604947892573026613832817982363672445738727119383098010129996360598036530897297188642398314757681310233647990940883760033278 280383384488260869264549882458520372772296697529417642226303605972843788762421304695397058242922708292025816548825700086623080346481194568179 44582902375162221178947937214388145297104761157205004265727070689904022509572235880682540516113998032323062430469485567050425994387353112284780 7178152206267646456898357366556243831194707761521906866257550116036272851734673829707059040132879725333583103417681152730723476420808085433241781 1170087242673193728643485522677130696311548384939042797492882051605183520673348324556854395396112200218434994026216788127325381859730115521463178082 193072184948441139508517720198821896865498317727996209899212243211255433903477056989363352715020440317500554234694140403456325823588785895239327871383 32244323400641792465881355723458980452228797228211717407013250994361955817587100524496710473214700283336947923719010148558041662473546131734592048882884 5449499760092320876684479542612854042230804980625720616489968009834172430645110210828183011576760020542233247274028697989653569272545731146277131621443185 931899347105487372551794760237125774362041447026887742118050348480973180903514964435214875161920826747362932468006631469714711234526334682323408305175800986 161224477792752382135828272232048575229478574219169406258308307392713097573216361410976925400171666854159859242674585874233043434185734872829850141086164133387 28215290038494339081008453668359773002221895362640040111107749861335738545014047685253659569068771531106616273682874414296129049904954498497733772405448800512088 4994280297673886642532339160146185751821886237266117204775424978331367071441322821050325515030053724283201332111829532001169130917672990516268670045952186211412389 894006590708877325375971761184316918301183166172687874209365194575253511604974204400897318228701359229774306688707808752440480516521946959276459358290609345188318390 1618205723573729259591958108003876003874826343835077566879630052950265070585035619556386271938209755825440669209994346281069622619396813533202922625187282743132991 29614126883981199951396089712540158575523119928414267652004128144470128059589209090845980001990056571978289963453433214462320403663624888043129493870627293888945474733192 5478787483968152767633386899419145748674824582367153379612528204112149573881595583600726466560759405602553767267799157273252800775114729809388402315554445455366557880142593 1024565078847873525450426906423311840520996206115242695744885571529250280432868382559030016667316536989373466562466605438727943074228079851310458839705016349558101854399010494 19364868204007723581162731233012074969942939094070432971300887521332462521732796484570789472601508970757250276010362624097151902598651162301663193414928201305035260996876244195 36987997417552405851911852109407989902627851456029221720180679781801465467353342660620476710101885309202696667855568955706543552121857858872915549395756454343824606201585647247496 7138891090497311118152303414985571283556358866699734773365057319160457177510737683698754201554573442191207751895160546488054351982904659271841134825451478537749795125184353080347997 1392123384098839425617004418148939607376636136374705476323638695227483540605044735564898882875483848336028787653024081931934219849051214811009660224006521276248353211142512123101617398 274255948315226668445162894432181118966888333719889650490802148629159716555059096205460817779716333895857952462787552751937439420248864600660381649971825761089526989912235140754521305799 545784228261527159748644046162370602184131636687466595927163117546663123128269467930230463399882796374219160284209642813576236073373636984996610869337045053377521818256801461018202645644100 109705561482809902758352360429516526938551796829562208697486940869750997318855517357943269524147036639826568989652598842615161732716483915090354508485845282966943221939559579760709455208591101 22270811990489409061521382364856142038147740040971608759013435395544961969491269516490215570905703174964848464283621996436742377154128647902410703705724849533815564142523986272864831386349687102 4565633568287311472990813145433976584500974737347646219939725662064623312232751243071166433922524906295597634389801824579474387865906001969798674811749752660680469417548608824269719180534828061103 945109907167641166363788104283020915168675287299174348978782132812800866154455077418023403422002073126368802904214288528739773357924615146242739969397212128446030281885655180479562538754870197043104 197532838115663227976099235155788081442447731008860933220381760478966411498939880448860391699151594566664541543951626372285559321768615020294431164964565340282542126451202952474869179724236096762121105 41680435813825080804550893782125577982714590847897223900136520488516814261097496391820831842755823487929828732179687014187522952423362726679800610774749808376484725834860908262685342904894092027821614106 8878143161504426480195237895296722564370149093493280166875508319201224470303072332791982654086751728248661974524967047526249985110078489537295318682891931279186135428946337472261686492892855746024325905107 1908845134400359536921886513201828079024339252768850660901407691273855131198079320303963772387959381267365228892694107856941098069866805670083649343581168601780325727580376510736025496779591790253141617261108 414228836360761534735286570773887490535294460447845118473456894649580970263460558732514508586429490287969283202194461663945566746920148876201980904113332721799504698923418579653008274365201037763945058292957109 90718144107084372889381528707041731479277908485346460750214403781868125983930525005133635184383114171695220181325006994809699357507690205782384135893572055643530575058615684845021328781036244220513521361092846110 20049149888441169958138367184133378338212045061459245579616619256120122195374771936797894626639954356787570507433467268422091110240062515095169879678688054876706660187158668757884487452615996111459315254436447865111 4471056742471486359364952083180503048640635242632289580906098798223310174205607741159176295311872077068447543543668413038155161673403304127169648920056243555250990329868853524061946775193508376009531173283575063146112 1006009042005396819637161710181908404442383570908687348439010072784524538132561192062832632828065303024721497232344414184639743022777719136071404010357453701778206502866329449676640831983812892723282454203856450354119113 228368794401197342821374963782537311039828752095332216244709874906378490773812541253738703560937458811343031740845488776285525773971218186798693077313639254707896299994076745417444895847419213420786081192906360606832229114 52297520297151169076079272511834798728666466403580894018112017342579107003523263205325335973858406577938137912374895048299557592664821799072179778079801895017171958869007992863790334700503610657832866237188212648433341593115 120809691362745515647364552337044882427998278795435726173201279022080170326247261672591810132664622828768211495481293762281572816481394093824851173872621866828166929197324064679531130364233975684856544634783774956847035068116 2814921187673959894624395041965624839271204295774397722916001005975905768064000731965495155415765404741620477787288706027474456318722265778385370217761050676910762394092122456518152115450597534688575966486849286321160261475375117 661519265489949335270323790623450519398227917176927412930910162383105025651695389926973526790836883965474487058094327232547749635728643934835735128657836978931517662639777783520905563816463414756664265644719065070782431660919539118 156783043743036065770901392848151835910199301217713802956729636967919142682049223451497465516531393612968775190553044923537276689839056678101493449773181057951371455589608736593227092162658208538225772183086240214165893541601920309119 37471846918123132189323115146517951719842920443246531942988364494477097443182782451637816724002556956357598935150288952425497450373233401540738778191360441973226153716321426711284450670597355743675218867987358059165221282997194431236120 9030880804538737456717552306890772257956086937888626719245498548418966906833966112672476585583776161679477411551116991227942731002333123224805554614554914656063014470459074598004111619034653943651451354154153648941922069828395456701395121 2194543619398644272713707161941498861802427489904220806897076539312799856807195550007938718110518070392566387355886472794302567483745558917217728761507393413908679411725454868244745010535450047991965644650272283932153864307408467954107453122 537672722266854602164470771734895679983736786776738308625413189468840511548827414606742712889993654136790893248445786371932317467244164897554259546488977234027567471004131149732207928891383293116486581250219754536622454792556921404827961377123 132807478525539777695859238162311953863360562156027197146348949850585750355392431730793660049944641314978678285190794656804613254085021632578887827706452315346296071774885180223777254633132145874868701741358146710825206365626308956954965782649124 33069629361738395342339964957145153283967823968169716622311965967309023089175021841199969366499156993050423103495932878525960521255846291361323619978812873234593584754524718413100185595922414617462635469468223624284319092113662080982434348903429125 8300617011641686355226033002299997393988730381035214439821007776963029872880278152769066247656609304427806260361943737144542187390536501315656241094509685202578481276403534026271411141020065433297821652656147186541784664041124541408099582568196480126 2100090959979778693925357123731829659109652990884838274347555932076832127792026801093917218941385304352849108284949626031328435941275240965503309061055075571810928608683979187762877711740438475738060654118838571097970437108687550055563039469131783505127 535531940108352023131909896473498511367569349853375909720221462673897317298838875708704090721173657115650002978607673018415322610505313748524470801299463868342538817722365841631567269409851291512836825190158016610654396560446067992125407857360294036155128 1376339202884151863995642015 782980889114889050638223396645934333960352569761421112699976331178317685606369355949677638776086955087515153861217969952904219755504539595954693607719469871253331404224366731911831845230666815154602562671186788014790521129 35647749111542832666269467871585517981800486574717124161300551371847931469140283142591709636631322189509756163627441126229190225740787539721157572476139668188239426056077655003303266825732007926029402698581445490604695449571529922024420789259359746279930246130 9304207347560528623864480654893609389669265910255106328126498783774424926660651853462922184696900939525173935876741379313635297281213767129235135413271802657417252041542537307466701570567304893576607809095639515479741779017360321671715463226991700626637287345131 2447044028947322698111709816000515761817985151477081300438511222991650143236201105057056586790754643573063154621896785155183965833373223564508188167430295513161508160249397406595601620566627316854903323895058013003175394203367675851008462721281969857967073278042132 648476450597534210921418416653227623674305322831552656814576956062601594972386132753679807817621833533155986046350920541291304768187350337807701623748122314192639177656610797286213302121048111178194489696623474783224584327148294193323895301042913359415219133 173145784269116415906741285443726175851528620444937555380960632904956747236313243141313676099797642359231569494209753558536882231775199494804987564618868572993823106593262690656963105232082211372086726891134799136311170128603084288821295155715794255930571064741691041134 46576897289828190485169712976154733315189911771954738647291577817608960761789649515151644881294463937429141707024670786182987907942940433360900166024357119369008618753713650106147222645633112386335815672064812799004623689388577261644938282329089567997547966643578005845135 12622521013213662411894166733258643743825516372706731556070311817364597356357633036156242233336835500404676066241449772504376408571256857322416747798453201990684177605781464952454133685918166666838865338668404014381321210364591634270156337360735578449167309481093733348607136 3445997136373317380218133722882847876794303304313969673707195081290280792880822842611413309091174956642416120461165937634073420834356731900616230754511617213910577500905303740349325861413785906104808555867448799387854421206003428759180945862615888515105586999783732581558657137 947662459733721374530492891479622498895930386797851819036644242731762704520859343507576754758340959493926298022271672162249578995244106702841304120394845490570553163205121984901587479556602103950055812251157290795581816958954695366938474743899017585468041475406388150714267230138 262506116602010181148487686161743643528251413504335449153069829386019351295464646127401997980981978735668610349586453941843318682958667756389963310725253332761966208326094436135464120601081744867465089195504367938751118303225846482852010707515206612870355227866257000576829479729139 73240200391869105782026489015212392054908493331348257536384793541444328877538924380710507821345154128097127462228989897345875443240534519868301629747526299199934847062583299348037150586261405634656411057683447908239945989802944520729499281887771879999695874927340176385975015148551140 20580771517779164543236196574840164657723529217973796793457861081342835689822076023591406756315512858965748002015076429277400456670501568902815201919228947642405069490595374049218365956205528240789424314138085849411063591776922545213137566528588052693567607199424090675949512516746745141 5824435097309993767401909507371814002880261000552700399703837387752381307940810680030803228391481877136240027379889401546460851250503988098713668492050143617136108543059898649364439849595984161206337545700018478602140085839527923529755849381865280979629995575589812027479342166667932232142 1659985564702900992994051301822226515234590797103974128232721025886044474362411949597367563025480463726279841672352520906298198487070429221900127266737713084981325599792594382896192724240351477919491950093967001177449222087700158617932678536249523487021084433729918895577898341791570035809143 476421957164382718484560060557074818472704336316504669908987568256391509172815134520763260240996083826191962027074286073883385876081515610772596771814218437407320035560617614608524419059320508002075487999694715616162310187151788370979238263855584317144288171362970142068019703834048047762607144 137687683601805542770538412304983390218950362448107568133706701786413363047655916931482741391984248725368474962779116908669609104347019641963395538922575002612396937338578463662218050035668999453895480012538622716198292717094020139907604405127557750110127206213245492961702443055111064407353761145 40067614574396382416125243882047517222691371599604536433300621494988131400277151399735659200201382797840540943604998928878605825203043930913142154961934790316924671106027004831172114406053038315515090875654457053539714511717329209021202659649126102920055116215026322092916332838191568506679687664146 11739955135095459678220123549080245983642478957304606465707967855824330700439127128851436700202526510221350149445361609898776621403785628451330839844762096215854571624240199976096317395702012464495607135772277867445008691277714604207975553114757756263802231273310624022840117789444632400151084776393147 3463328675093484088970774876840626685681127014347501656515293718101120864289005244366247229886190372607289430265972979933605748139327163244800624626612410712315610963236116582157954794150598253315567729569239669293937826680614597108319836430350205457029055903983457200925427872902196041937082150667636148 1028620892558702710339029031224862968440480861078318695635259213536622550925217462005298282661128940011165071375469597437897426612846272256025957217563314233980447493866855502085398595211938157021402120994051857652877006235395210963765048895399486632504166165691700154605205918432604189917575910864916527149 307561267251429509758963924321081174301964114434120080465649352847631161532433370764830471735601987664375401939427511685096309334260224753385816550505836181705465980397436211798544567331297287877566312782186068265135987688891174821420769497666717262141739241476610546396596155897332971772733532622034386541150 92577016383968778729017060259276088829947037383560952082651942103289509714447924698365187697476337515356591563855329963735063104864904206976681002804040629370870209885766452092721662908380309337410550856999902194044461631741835987517365325848709738817610707109787801093553492561170551783036622383487932076485151 28051157280226729303774628271504952110798416916121377107007687153289518011992132481721143345869052406995606467000880957376146951069655293930926195400026037845554192699759774912426844066070005460514400080207810087799422527791530547300660688315789326916822994019749040934267778585867102771178890797792793250519394152 8555699659366938713930066033581280521053635721238810923813493741448575913219169945714388347118137479786080227749741118435766445488487937763040989090575266669321848408693829085945418203848408497217845845784796507709071523304990934019561078867409278862002896406672763378723764503140637582412305991534975135016447839153 2626629084036887279353874927404267314460512844766490381103329429430680253140840199320971857487947431387793030103682991437568005095547191390668757938945607648280901428845675050780952978363615565248219455853769211173131232733710355046222693453362309959764579962257349167721571323817980254086250965634036448881201424001154 811637317549162442349517869346026404596652167669445761842589627437162790730281593610329506545279420836842509168556075181295592639247668754049268751553461464437595477782105359265326509572672600632276747960153652115255208207642003683541917138847435240148042706575385322564862838647698833808437091675262245120162261304929155 252421946705926937988073499210401643811335134941820751698678719596949560670510226786731809975263414273608701161399804540523794639122798073295309101233638870384943659806778892897699381377826754537105596863921062725190319379516346355288135422196650867564005815114054189671287207540274494159099227058329738777515057494224375156 79008916046168815231244166465602675446575721360771299599797312543419241873348070773656384042841656329934165026216836985455910512931798251011731195898931463127176719714219003490642015449792818733224732377421465699530393908446524481254067672286848837997306988561971699008706992598683813345789370691903404434815938708025647849157 24888071817422537223147506220015505077333172053947982703199369823161911419150407858877429481171659696275621538839483027111900083732048541056576540430406054413490389996956196922020017358930620720032660403378016423135507452020951658664952187711378435216054531791117595223969222215010056634245663429716779161456791847356981644988158 7889601146002854017009618958722106828828736635944418938880194120662342616799754105588996474432363066320091991439193328016853027102964650490133734296406306587634197112026072136482897854836085835156020174013094752216730708833793372445720917436351527778545360740675904443642594905364690806189320817940901192444341264402746684791849159 2516808708583555250868401925148397689446158857071238433457923315838563907850669846823769388284656375682876751614397900986915552409722461638108988043993152581368474029748529345664462616042995669374466065023648172074034934791202160540403566809287142055617633371133138779102757710621199570537312733093009221632960743545976683018183485160 807903817307213863181848727249206049943841749666007594212042249015046405784577456824640144067476486041552523638899203652406245372150465853707793382886669515143274953164242147176485383957659065803282954381868342355396925201469855422630358133418264781959407374986467557926360798927051469454925482766185152813055411176074124476010300093161 260955555105421195192887646390068677435539091436889667470143719881151661248687769563178481066112116502827513540607730028766684949363017225368555549640087570156801447195674838777325147372266508453221254849199962860223424568908077363195493007965417801025480239599479805197580205586341140485339042344212126208696434894276429098712280559594162 84811396900493507847218026093802963751589633258833903921395146155681754132767378825006062207284280980271744927432237579388154249761811284450722901311393540838071661704451518485426055525199608066955151827299504425970934802760369439406694401970143055413827334906265120561298192390120286294676373205591700779053133098089711744612189990234241163 27733598521880221592168667942044875345044493414911306958621764616549731243893409194628540055059611866845926465035659568538439133590387998636982308323643508229676806728629401295500300291954576948957612093401797971555657569903418728287308668108421447338467189090783380439070720202604656178213612464120557161278687578939888113023366747198680706164 91244422064506404856303646399084483487501359777429648139615327250251019015010746516091828423215934312923539431492386996724910456882505329850235844391726347377340814403156787761984080062210651185594271442967316859881421992660041295504775241934676919437922260362182479355228863473611313871470308314455721882866393053668360457569040586317504697791653020219235200580685709965760594089914459275960260427071490849399811439350550216299355508598889059923524453524025189739590304595499750873538388272464745356716009655402485098589085179048772009864976112573712994628430429160301080424441952754039644020583259065056990313803687098405113611570362441561388888103242441620804465271263035325538992773570535166100574249963225290034692840796029599151849872791186064043926556333001805991282589391454631518545510220360515975649648513579678421016853859331078991874602758852270039325080990008513114098249427550378533576305113157615524290102641122389383207135489293776699514886562838871755613472039409467062265630572162997308969388688796153954081739886495024194357316733692687926449655043537366345635082545375920936955373672602279224083492757974851282762245010740457149429312400408702328827773378119399983030065276092724138047154020344621190485085602292262016709796069310438267941925989257852539557890403060635805411418362475184695683867366737636587414655018288698898663773204968526749190210842172954855292668472093488516811354540432094592593305214215897924103382322805907666589478185691180930560069929000896441527173613351512321362748069428679674841854053937387641129865090939768625467799208729982228900091188693297159330676135402567256566643149737927698348656686077945375383731472318113232600131174564251016912970607740360946879807396193047576788662094143459699127935431279716938492242398405426233492881862401022986462103447148640555976481940388271225886295663836763711717696446574165262150737460738804399948472702823070615053239281550576634803680431205764054698449211394853214916861457662179378369737772977324915569468109758236486614295964656253652415643829278504799117875758551118707621051389086452341451595168252803928520808286910170131259726938664504740198413000588078690076989423590955909396678254281032155607953650993358561122183417439291511137017532320052165322894735432163305803580104361329789896442254272420300543184341173952865374117687709764862872012314423917645942106229527990849001215324177883800023560132071728627486849929645297829451302003947853324641846301001493412583660393489931714502248639357364088460805401686983828275477183500808811006883173947000948148367695287909784188629471447762739745593452682831873407284698564767087358459893726346530858516486260803247327233013359771119387972205614236624484787333624000740002371935793400598413083165318033458878484518345333596090781096331075817379095136788764944682707275529510682548346737552297733172155328941942611877008174408053475339766037393857449200027866699819547042801005716870859916279954889562285828093716647400022331722172557283261684315872036227826107102649916190865712970211386216424193937889748581514728725643314148381935563809335926335335652454808112243202953984085897851882751058960924473905914885602776295287553795979284913308118937052561653704806117353899610565562623437183124469600751869351333966762209117462447492459485452812991695628685139892265326193121478513360499492847646895372195344583737491122375042372848624723623984727429246951246426635580587347145602752002400986837262814002036665224093704699377207648328891611152969637043080739672307048284665228197115943910576082602063075985489747039520324285217545176817418811125413408022514144440432803453755061055156798588433381259296692011867702583195010190960180989709224703245529979680960914177277835455914315342308047683636526684575448549440978998080920458495116712912394684159109514539035849991289565262596983237607748998520092544526907294120949184014092627013756772499530971463417876661309135953810254939284892692216771843744237831317566027609884303798068959962711479788576517297637726821781061234676976565738530224075917095663684814637443565935188166903786500082947952475455711862920449398484581506231704346154396477977100897220879811954143927869679321774079720646319486319350098854665374193819072115353193444890316258483870782501854942818094486785901009853838783321750011345730667473355858033883872841748176233079415778874001819610770503576034784170978816717656426544707086955256117782385200152191514503451165710752114314476242940950747905292544689791523752752234757110753074965584944923764043311622946893650655929356107929003741479348719271708771731732729616240113976972915484648290235790738173347220757932797294106841688210427231054487719255330619421158408335077818577800197814991778274387792366538849336419812131280499985374092801380899754032004525096467355116406347975157373439862232198745363339405112244853196812000331192212519209859981355151386900723989168227792778183465435858406141871324150229295017292327929941941988349932575825841235242370261739751566992632607837745235742644711860587138592608591903109919699122088903681429270391912081815522905196053178295398062881826868172064896070689109077369117617420175478677873023685744195577755388427899594910431362525372595609213862656319794448160648403996107540975238588590344533568068421511240014986793159477920245303212249180790391173637399685865907558050768590937261439428367247535122383238920031553923285795892320607992307889833796619723596728257231212797555872743505989064845476848141717910604876303810490538650995775062396614004691624856375925900080404955005523749165898478271695548933125380812653384087892854572837065745687136668149388990595251206712307393434390228603723885011714345529608703166216113765973888118202657373382203024740218316684784088262775574165150213378438881776477681318885661495110259992805287968950742731242461897419738994362685781485213534085485621803828390986719623977908840165976061893845788577051788174360505692006386634010604937090434100886594572400562751665793365076912740811663234886032804519207101762473697568193705228179018067619356999450370110343734035640291135939092152874945754867114431061053874193426597857101251164792172875205866296325681846054023985769797207632734363267409644790822765449821916232225523518901173963630271811389716926147696226541120212094866561618571292025429337499649777798270946624106795213195290414040672967551435611601240334850592773624058343966573566392688482219228209068828501760277561069206494543244577583808135981921047830071342138148717183672937433974189866644259100634276625117065441681540448569358443793057496688906336614131451490303729905603293342600375156956528885542226844934556471825072506475373452847143967455433886283712972234637384619802263531437113025122751299482581746386475064622458437343281639566951376299976413291845904559960666834632436960383531058454494708666459754651755662539161007649888141227440674211126926641217811396457514768196757365089437744434661970537474374536898922480915373365227830084987027481130850006003777242616706752633237655996787182833006255718318616242829482136430302365078184377950272688856848780367894467140260431277708879901194713169536651262182498249161820518820902707780749366137521405384218183579387754462230919723317769930900734715834539803815000344066683063574429871625004235720825918944707107964164163712065008091263993916736038244801954881708597816466289402742200118358934125224942852950811464288432330501024233204962876577972184686944617773809586186503233017022616786293822069181417669025554916377377189835354045291014667630251521622497976740373537412887809359054809900443068475110685249722786394959092225940804725407415491627913920718289535763618830608743979974793230690905241010377359657510157989076319815216916769016888834523566796814938061996793916477751543408944933735500410843185902595457323491557996002219919221643518525485838283911419980354103766242324641121126752532809899720636239910323547167814296529080652314123468343474237378394212783070841386123171201268790746058365149839538195239633870718854909405567059748645720428535779607100173748094218527495074651031081521126623193071352593564124035575155920892478583657888038649542554312321365283038949405286965475574285197016789983384768467715586741344353105205706787186950628882934138258328634561102456328644841392700113440195947447137632024968599178863077460464308850961742796170293340725401132384680805294874605531333095289701483304495411311834485007415915845599090478371516803413100089251374764372748044086821685645384132505123399784005189256516825584930495568834133353084569494091019583952744284314182558537854459942225992180394945166368640498723777418066685406705187356488471026282384266710699276051155823289218729283968821156015259160485741502013920052877384902659981985420512552072315279494793230796665066448582104661402954546140776321915588342059092820112461051722447297346887731655487173896978943281203206956831439023031680637352189136124078528331249222067194720696250090738481495694163033035108946735837897956688839065179345217830788205300748941613348854010918061188134397138089772475771134399601075731700952411823275635960399542766733680334818410249806056474935300328728979068401648746486832255945448488549541281911875202901378309304351535327947560121508699703549667151848806459661581201402991238093700577568639818408381994823970782196188480860782379521088470364692449276701205264843039055479522953046944163252999849657249765518474306609560691261954988684620584155139949189509368844617592404785548632265439200297380564091531464815974810223874464390422587310750296655138295670278832033106869247701444517741413159997604928007995906561744064524230280998154470446171423806778292121149803654523001316281617000301081641283867337151896584890323978173688016258367144518342084594372864674886822050136799344426661063675886073658456566635769476771799743477268243052324548952706649551814044781901940709211550087693530563813059213956413994742580201247094568500196332703433910012010780132466927156959710165284957746983285819097482276192971268079132746772699040529829559987415847554441812992010172299934689716213107701009935318685293222730648416408742485046098038781074517538180436146370119501573490845530382869508687182434295728875821658139479892404265404270242234112605228558647089457936145286306169003596919174329690033083922367824679251574568544531972084870487783820345705688885288789186965812147963532399347424929791628004253820357529893240168863640044591195505919758082864117563423311126939001680564759018902066503352659823648577531158337345431029469660735452741226230476279077836680113401495462018773680003512060770640970667056657065610555492219285508382317343952600029800871931810485539968014552485490348322590693661922861713150255045359754504248481230700749294186545923933341635414177081501093260549034984181400362108892185204028299703007331799447494489698571787189332760662625956758988157488963235933124206186870918490150359229751663205487727873233983767578542472528163675205745973873939734507468770802674892461313979062171404278026845784496614836362680306975807725517738703082928853832675000846730878476556447939676209649331150895193110749067998395784176311357395659936510922217306181474703449116552515566421636229052009221047389740618291157898052792452063359534885205532219802044863338524287345704380549216104292091058975784064187784624141105226510031673726151944854365060438460845236588625661387880367172976315400460335646341227144331687601902964609746805061463334331793394896484198232090390756711815699290929707800606372413336003944316592883266966119443081683497887414634081162694881667474625064881035777925525361398106637187089120128063296697208123201609948456477953432654276520949947374967303130201794531434816335097600604512685268502503008025159027480322959997326840114716300158956432359763587252212401476466559745901953792512693658102712648128601548274148470802331884117309713038822257153633329915985825823011415479264607934631656212431410091892655509276651276752643319516845052798280873114653653529658667247555627313848126078712537045581468910153673941836010342709761526673777506762351052702537094496021292087570324580120077000791798713139286021149150925061015716808754891792058193995249979192008835625091563221824358928183501671175400439444351667766203576016171273052918106583825813751166620951665890726549359293619670939482680753607148012032736476566040414663986617776702884102627870606765819666201503024457940841285888110859940640738398259560200246879553739044572356383966225941776516889945777989417267329175506192004292742917534583586161812881766748196633366080744151531178259890029347883785547224916011143445547802200945439819694837855491751507889771227224661705992810294665009127337416992821863786071072924081094671103761996101264678995305404465402403437969430165890005823498249849471469014756301456465255193283475197261497678669196404925284148732846122426676775067315514253012449716110247447645212514463712317469432358641362519341833255151258546948203594144635018558447423869586162879368991928649232863337038972038066259082580313397635763002622629292832449364557604893218346659573864359095110299814737795374129063838404378289232140073110960559128303732436323667746728337410441958788710989375339811209263612310496940701452204434284235739691147011981038152628163213325540406181833051049247154546675093158736498057246816250060354842529775036232750181349669177098026249717268409443034482038854272810091676981729318585159483179602544034072257213592405204152439800499893382130253444518601583976456205661707244771455116944108476531758956162881255805593312600987579931479369654266277646392261366055125561489432679687109280780515407889725961027050829511171595861278639595377869599004048519941422560151738822206767216845217722497466970283442080292308107448037278530351288626644917754510208231915432375263301431495901849796145268995047738296683653604350998027450579913847524766941414488719111979835260306514814181408611581510463065329504127480080826479307092032898793257751397925871199332063440647423137114988024863033331139128318182598046613025932954424752502235035283087982052875313642282984446817919744102828098901799305372001661055390794074488826570938763241091093771771748875482573224433046926846950527278607341423909776420581854412065832071409954833452625284519771605946982945586594528707423619572654582449269631950419182149178341954406617671063689906171711429157403959442356959594173039552333058588926472728766482706611270446028152034560755877451022580397343718725258655938827320994952916909135376665114681752139137760274243709723299469972180140929576103877201669409602563687595002987666443726496880850766953502784463799588982853165576467669455811317818995578182195679674744855155201669465467654198695382621376041735951165935925708150659071784106977069113284616454406093049482715657599942269555016104336899500209259557163163805839454769756033981138520097842065578700736671437635405016179865191223881474627223996499965868386452997251256830651331777899577128924920710590582119211428574191478989788020227111260507739586432839205716849708515638467192686944829115503173789449104417635287509442023918962814059913165144250759934392906373540468032211309807471508071013700880636945130369234665822933756167838868858214256969509292327766705669474158416656195547201360072051652547378699002928159477919437992401421284896499493163613238627790750856867098285910950130766940676850188445784198468959326855874737023586400835810158619027701291249984713632292920311034352172237435675293158424098592120507959375579833498981684764450399069912324615213811596903974969255817922973117056965339917634325190495526195721930123827577794304653354224535477223470808349341863516425740721546749396795491076880353849250260472262106151167450000831878754318269852196917629228610730267150851283437061341184574986555422636442415185171813698407906532951253052994786242948204341568103533839979367406794129096613062539300909450720445130780380827472629981727264700109101391510457803989673804484214574335814968774514741318109129082759519303086922770581983940177200987956389763962303228747586613118652933366093585622350323631945190689035711772211918469740374093724910221972433630083135605989820163168681873717816669205882354296813543520242094930550578248542173425559707742844207553937604831811161054626930085469617715838847804525623894683965152630099520125319264442058181862831601205185488646776179335360662825070098340126774312420205930327486772249609566139306330550106104335881855900901038577252011746897276881292674176491135900689251754844546905076094037495802950634028841607663193090352831177913957527237022783404824578055398973158584286326141532448759124765227777819342438309198222376694131775410376869154143437028577930380308625616427649086112790814458556395523795086091812393957876021379177955014355072700275206630759892027642067660727706708557269613532347338527617099221744314911264353007676268957365548147498533764869984004051179999428210452185121615926461461057726094556598763929651145523691575306759857428411495081982778989110026144104108719420199813682773398742794768406665104566075235354472045158828436287592340257857299191706168000164992137283363056612412054523327222754203101301814656535925405024610050322063276954872499412424172433696382548510382244305409014070564700257207317922114589686979321579881170648914568847157070857572937729815727194575555496577776184928352200514795111152064520513228052445069869814215273560541118409306579242427176967427348590125568486850310482675911369414645726950254282870574042750175016944258847554073874858471170366575869290479398459510689783644978323803931463120311061071378204097470728936309256044642063880752966567203650513153644513612723729765124384885857327501002278297929684455804835482414520813257431246288752558091385113958712214902892032852696933265823576411644502740679654065737231476067455239704918308744686882997715690998120521764843336462050672849644922801117591122335147608095811408544021541302880469282775590141481043327327385383557015576592648749579283602202354093047256045295242122656184669405930294720890712754135563717151928901700610915025919371874708484255174783808524942326346807908329467466144795738482896004576131031056355526094555572095554896500547905846681096692766406203912733676915466940558629976292906066954229997249638971390262656002436222986990441415315205984351078103989092761802989444630219658535534506370321320050923206076899344449306328719594565754754754639708879578501923348943498217078573163932496012577269310716572828713321642094336084752979911221632543183714508074576092089667701057029843472337045739298778122419241214566488088286448568903728218710297818984758195252218899444920621023386251058214558654026765133795950861346073371579972829470517005544031930366206762847918866759750211967133305722000691781855244903082085809739249477678418026876732725697486792311143403540373928165337919851813731364867087779948134085707672186888936849699460761506424031426305024939184169386140981581083859202460975127747000376329391195048324026955159235887565451530140162689446107893299900595194825900109289481690126236766377563811208462262540531771411505016466521198924415047483477443506591782854481582711239359096681272213083888106445995134238004124346011834165092310734618481803299513825310810480286813060820466212273949765937752702082914305928565334498863016310942262716502291405762322019861195355182744977796398075919199197078660500989816622196842977660375072070530345765743544983560761274196509495745332246844918667392227321895448203301188630638143995937980121936540228761067802497812448759195051264693256127859251191990408212420431176237046506535459911219935384470434131882398146272433583758655467616987783107653350648610589743295650616091883703722723558101636180085686049217664906891616805596809312783091008682767041961276549188659155499267330979331242626119644706625979192308619798035906522344046592983020444275976295498951831594877770048216369718995153785060510035575729633559890615081410192611067155618924158943965818210670791547176503206494231621464400567713118049448671532937209274411592131795251325054897839405850371476237306641563224590484407624620478094216691854572645187643065900939587008058382586112909242782676166109519370428403766834884321855481113025381092653003472878180953386573749940467323137241660808404101588536915072364739211772445044533259890913862511254331706722014280464251725908689788131424290337367516460224418218325134341905727738323537723625605352756749347185241552698961996355534624200830875318095739318651065370464296632212984817274407721477016715391294787151377010837046270050348587469958494472246655223258565878605706399465471660745516311210324877852904207413741357688924597191247884704048600808620789962010058957401792881955289744343281963594490548396116280785134237799029868368695662622139207373000055626239561109903673658247425427141355954858445617637606623415525311462930543176395846808314549971541451087203743083130454999492142435502385162970058307936111194847632523977717420637093659277494570533215331943894322744448943377398803722369421190609712873919554091403485017259320102591521798213350620960418402693202893760656077479019162243747474299446938634648161363468942624572776147610706172463836296154934226604547074883031898314062580251919178937658930132588052301767245197665181246272786002785385230321522009056850559121934934182694545787527744333511698462156138041669492350219612078207019779329577500050850903612654884315960572294898461887832171727030556831170408377482161437325002056360258089881012873467065057786821671995109810774930782654105167467942455391261176572314622039328004857068382000715126951765213786357292823507900304424767818394584125819105574179209381330957718931793644926110548826626227832363414674235177709142358376416899374480968944092643028687261391014683956294013884394496737700765992148141831484817717943418906083121238994250079661618902681637272755430624570322474452542545075391367514102833679238438031473588175204462672412963217625239797412588407484109188846415232612773642324092577496568727832799149237517642635784367805513752452545655887771211273124828007516486796235533211407323785687967777463283369541421404177237016085930541239698684176356211819140258418449056932553460696984117164636336834723501074814970413331189031554135995427902421429675239187223428354692005405369607474956913735213904433499894675225570108032768791466382082342866309290778393012989583568318569961249355135801968574974965763839340187218273231272786625615431410300518839428232495698556926641527123139781873364813209567365641243100919540446329567170448163832809898376137566154945829811974625495749793717283980397416580093009652460356178575724507524686615509889927849133333644164872402702670713770655275735544105073307205368602847259473389976281163760717467931411061981904646752801524410382207361377817912538328167413262355838010445010919017321869155869085012291151360570620002796452349233284100304885837000237313230435905219119949173040179644753245389526835190154726206582990359879670196176637494273672621205749790336803484008999418433092607183534528003866258557676630247719432020601770830409295543001175821585416031128646472235396884246973730690843307966598443601661222606446734924434442679638021764039409263709198690895054776490268738316501627059972322382552455039826441963818648759852331085881565135450831249078038902378228245232820772287654586217101152808051413463289778785588286501879898439361104877794255220528978668267614124099291550253608705310021557233390563441861833314722469476042043234833579987212420237432427944158798202011141514567148931358668868776207419814714646375484811786622873029226278387522273151419116009531857342542579609607430547684950283670006105766772133414505247877030197425647103910481243747520718678547237694533301570227276005858093562685904271982475040293239418755078753503709337572920101985318030493371546531297482401297577592507618743468675900049305437625114011606660732212343387857357002654327258566870392816567791469127749965373214136688894666945305132749042817951267454251196948129289918922936572650104658312324263146718067473936973339437244376662853125196793077142138662053342773773762173412687711621934775516826688770128602751679913273321330971321010047719534171196777939557336313902752047019116410640408636669667181267134486503626565927173151514553336028281660640827162076065244499485428775714642132176569547034698934195675395120297921208756530326083764314822210428130452216111912764585378372741978890905236314226814740672772876308199605522753895114481323271945499916326723290918346562861262763738584762178925359837931127783738532657481688908523500525663167514705286087541616826795686700965936271989786886824821457225499320120075265339691347222349558953743871276386435980175613751308938263721821990624172439080009213252258046746585050304133796568280805350197017544608441693432634473032494369878286728863690030453909033319516885941165625117957292032424057223466139844675947715655270541978141563986268426269264968958281062884210974458809664286294708504054973629996133273831637984129959317355230458228070407777817298511969635163876960051727398148790656409137243094269882870651229804000797288877065791060427406663499481880574229706128393986480679150395528517690713843077374661821510900974263074149918882485494730457252937243850334657429427163523733943072005286241194084001600522089981684443247042270676425952241371737649076049277770441992501735328540360224209297864112818226611154614866190041808029944107573284640969596781311761645796411231248274583378674410398590327653699383205552421347789043571028482628396667467303185734085042681038682658146066866168355799806443512647159603331677390803466643955036375456577599539734595272600425971830060871166774803383590720553435006507226993083155773205841568791603937212312610295104545552800678647684463371927675102862767476777667347589584636540346775311924723560768414523016515497982852297468804526505496952144017922594393816666534640064835707970262497773271275815791830606826341116278674310691146311187602139207877914376403972666083169841389284813520789006204527046259287914737165872574421607836990587356392078819159500320694396403819857852488184642179206787524948285415316369018572009054103579281500200334239407918148606118204958671912120483820490361732242124111437543127095251743698707018799965852553563509174931343137098231792283745627645252074239256623591797911440793599748329303210340861870396966350764423765885522642760614421190271993018845765103655434545234698909932658462572649512506954476680496978725066911962842096370954743617061747440894958277397519131561064507681995425154689281848379687856150510055386654564861563560932539419408942939065113653462509612205807964612516151594465884414911785784162149653673073208514669956862012537944109823539559464143457526486251803493250843787755378555342682435861079751220830685812692999982082810607702571722919127042665769347345601615008182461885560037138453406858429297943545722719456176727089372962231270689256769207852353651936989500584930909628175366466563923306449999541295539622788447949059538443185267170987597747425481003175898115890812635593523997052677712275373725812227437391383475511494918995366096520422648852898486956883521345132021578426422838802140400761590239307954893727367343748204238784011067066365475227991574600095339237842312916098384301768445788415154765870057183092526369888742420984488955742725228524527771931206607489630616284844211632481698495961115376879248422888915167748019619259353021336576495470539463434781986735435623448781501252291551193973200996483506418866023471687279507733988312400982339957777290449030490133994813162871448619419592632787374058964456428691431369618956788267579334990487740814029515572761435414794494960881933488189727750473049122749478781881793520404784597714644277033550599702764982289514082325405610748981853150261785841008316390225494408876409523038198854415476563157512677439688341375377505096136278620151885461345672512566050197752294081226221975048481776144739693013873203830664995098947091468982313104305616020897636238417384562468740946089321666043603309922315530128808967490585358342974013618982461749128842434055936195760355578639769298881932928975056247901102538290974768780419212104409580698511019080278157349603492262668853545522014681354021585739569972882452805820041917258017452554950167571881690606416840908209922825399960458999511231938042198348033864243743304559621680659206647841708285891325442338461487498348674113667779464224399712301881454437432168735591438152255199347699923560482196478426451198899168726889701536463882219021913402925061537971679618612437171588695421485719595535496876530332804854762283778676383341738890715669530320139763391524652894454065786601622218287359739637633126793018226868358752797243542527381855612660058513412233898893670475833602094754544438452537367948351518799205136910142323970480881538938454560828640576653141109424448635380838778651349085862922352246761121670044761763983135485729448469110948856851840047067516523187111760346463574113953415562084163813668444055755076859335303392930963981470444116420846857158449109897623301970043453601692122477883554207754902928539425161738983203745459272708108141660326935788009597512628293992491579668848766620819517700559143736915038767213156456869373821749939496408413471026143369116061781730725251305544810848549539764461014752657407943828643953815294031064733460945893330076655985655185834204160557022256304378260822503290025659248691804806632368305512807795796185561414482427846906062652752324050716210890686954228758230482911810834871819740281529981154088137827830765922260610146347029185150854483149342530443904347699664865838064407656682273364678287462863560703328009502720402319150005376811296517081826807386268961739734225012151191553486008484082302824115347062210553103824009638177909519970115038600692542734747492556143125579765035293299175961920082661934686562429506874250841629863859412246604036836869003653132272366271884385281879113032847939617214732943554405932874834609000284048181429295593275515225233189169343069200932055639475886816196144073416507302769921666948657924840257195885219356692655935414663681245244194017639095715437806001788739875193448208411566699120414579268422719784870405657762555490324428129549823773563173424480500534083806211190362207350600259153898394268982012889559282625177362390455184515639426850828548640689755702815620416421748097852444549616246242833071188386391139234849487968393258223504030402366641918874611601128641115088597308264174178636651123635412677489895677306958917681237777695410044223488720838500310142279132775362368632216218358028373705898261397986148616105773148981259414257765906486967647387241642406508838031415253874488463655371664243850561954505318292966303725506465352386411685559029190707753227573212393290371500190970760815316012534123686017084861749227336997828766914638205864306092688918879977118943743822800102867495915163164927880713823610863087393864314777174922761045265783717682541397571657582837185828596048194779651007668541577163311563544723318448498635692920405398145283844254881470877560123541787709463688212022520298393857594462631545411107553088639445840854177649469876539279843027167835573051688283779855992632752846657068658246159686887587852252594690193029680098916358907774316167117150462086400097919963127355678703106461626743158046377025714146320580013936247630266950776326054152447389672463345874418712693599563934369794389442604802201577558926425632731380552268212674335198508481652227738153083444196422842725110160085421737654500506919900222916334664969449149376194930303607517033605407831035648299368906264923619765677800426802905424354819612522393227523467542309572639781635890179130817897214340329037217492623709611003629256131923716611386971618826677837903846178017995809800010185728965514796163303716079029838461668849752808836273123773044777450874015329529615855150494867627733459283091520153502427189818894170268553999160552686731887057996480683267774055030450904340024801929014507694691574806547906923613581909832822951072211717858763319462337596955719352979679353138785920219881416520332954587404711343756586066979324662338229654656523793887399168579775147538545105425953590635932445574419781649456914061993331350376179067421157936302288026654687184323466252736554238300953570951333671551309169874841231374968533675583324920274216135981861099031218184112777860059668959182429135915798368393479126241754485267514111901542175223129975698446155727622275953547203037138288912234050206248653898108577075296346461867703886916066388324327253608485259428853619010163284685997383106323398278927537129645393449219746583662241639017622363951806693670399684751748180974119618400478238447844925890786597868366644734975302448322636755645250456595235568355064009343117595913131229419765211394348563810545863560482246997842577017519344417220475016588311739263518766952191151378038636101364213892740383923965161370543473450220930265776211013444698585589446606016091978964544665838766365046008376836836001350 2894077569393187810819978629262128896191135362584396286711235048246084701269262619889776712884729389116073483052166897092485162539475186962189507998188307738760685072229267884245329342904795850639676462416299150443858985372392145186845254598664187647381486415430891343431676367619170147417146736497834813503560322425261772520392915869827846711227996378538308664109428885847272940950060782010502328969646930189451135955909395771366697058093716153583675847751773262021815354063413959051359536507499222756291185516557374239538303784404508747886253000941655295518633341708764276134605760757531704437653310244748569752229120226596212512612778654559263505900020275656864436033508814118667486636579971411497275012567691045128646429289068480365355151036074248910632147236024010318394752194270138629416789841637682235357867321781216656673723217543667975815217147643706283848119433906308319319506254161137448021915794787494219856394541112646643101362477211106811508437655166256473431100057419474372038844789088502772742827119481054475275119462146868593061474325007149659637425938741782268305455925198383394001057672604737586338766679956413209125316232600623641173217100238340654558492581340776093434668100308507128498949218785247767076543137355216346541206031559927479988982753499478697375637240642509285864395659684643241498380670958378883577023804968009550768948885397441289429878023525850352667828373500769762036664843622341107540508672881582557875498089337357117241010976105177107988643743880666770746564056501257065811651960113198392903426050696345536748715344146119913813082764860748706183364739231266228886386813308708980516425069590906644103348337904862366692713012920623252530682858641536928480945066387528609180007942908379691048308090829587194919240580009457361557474481458571489522954352569439014732879080080495637651642163724389411133229251552454216957924224171568562854632039371594529998292166407309752453173663929708527439099363089471761187538612808581136135450730040264568701811427950881330416990716076345704927015898408417341898005506851808215590388674456794232317762897419099923228376690090820803824046474525451931924810553133969559651585550219438422501096518791109879374580474836015870313541026401550035532670921062092835190167926872274581063124054053317001946965636922501100251263130913006634841927701770178346878123388038617740226158649291281509751739366434117607573368010282141575059237513974972431177160509288530783050748713784106644140012178074909996421262141323914391743497867736083839080536013352391940532367054386610880978463400015098467839295063646015230300502912567904331807717451759002647073492559405105325785546082187118713777923454801748010794205643777021680212696705377563272068459222285084404074491083851360422804815826872240374434853211050890529445143710298913139761974761186768229231797891782054351236330081439569559439430332584532504575000664792036286740321918282143888086164601264842980397303988033058499468319342398482445756339721098538119478850456980883605770061295923599652341116136114139998962065568071542035097736116224665333440093734098480658690883594496711061895708078620270743817432665814667533122621001646453334876303673237389077927856512254749857394897542548061331141187784797219916344579499216415711305987453515390101139637539381055739577365946641565734252793387342516279029070895958672870221158948994338761434368574991940119535183411548764415405521174519524270463315929023020072495508979345340668464896767609634640448726022390976545434628357183255958959596392258965524528263748943107732266103978035513869398975177616468900722686615956923543843301048310838733011170869536922213510567078683049288435358373257913081417189920264339137315725146741702512578203970168954445019247342974948755915690499331648612673953141654640507172426983710178984467875250217296730173725085916197319057354840703425821109413226488012050498213819916705690435049983807086318838749478522308090029372437037380686152404292206161147671994140503585785902795353326776026864834439638815399973361754586416850943841716144347596492869220526374230242672257382132724613934087348922508665000151049275234663808142013014595537270585670803182981820679447017428733360244952228903347545647290535697822250632581368429692026999796980669071099848217385399052547797446980214992820602527077705445797871926026692299717863291014897475739018312305941386563925342320084219176554333883660558535357501955498790859913385870480635819152399031234193050448684121711716996410334777454417316239257817399829443440401049012944660715123444495002807982659659163308467592676615881097014122268817982432768654133744065053338745207369364978387443120397510924768974022625793043429324291372631820433839240444012271666115896315013813019603247502094968973230903178676508599021628270537959885072506328799191811089902141787867179711199786903610055581281836866140308992883372417426945170723143570260356110267230088813890923588549153736875507663117343210487898114566783466189064470969953209337197508010493139241929504557598013836268006417543307661488818485012032350912778217982316867803213734556384663810595149569579763769953504142758004353685797603976355464960246208493782919358996446502244897886460862354547855588127799349412248342802323227147769221723708976038180406826621729646399673130045740503829355789412381948910320349396660744331012205123649901417092530613853029512356609546992289777613954224583323112792532327791119486398472891949358144263639219387116535524965474478549762534282001372421151055568173760767426038743023521157100231252453798186329215184443975914992621774340929510459727913358605545339202001004395372182179805212125199065940557475051379152438238271264243756818357709829276313230293905236898473469577159515814810088826706699267702972203762116411522229759375907449463287232491710590674519024120211041021756159624833922082091498433235744567863874112956974296099010762702593083420282647213767391035000319229744848883103933861405517487248494448675365020152074341850407667668955075722044627593642990831152520839105308850400261856618526878862580424436604781178580057319103164556522873398146991331141449417718860677511022595757859691039632764482255532229474044542572909451590680400208125390228007547073997765742872870438939479565177005493872184056384193175622954711496031007194628867098495033055181534873149963199358885930017228474419721197718786925085700944713693471012863311048497067616632837102854549595021374525118549478088757284662248664536996794249518714221103919991955664183523988304638645453281606931443419540367225681795968315242524453641795757507378269574301199235562722600136136316402123272613678227267593848364318585180414684491037296296296393515845369109790605090883471064857449584926142377178691779316965826731221763557884520140477014701678180353993244944224997140527747827476565053963762934976240971681721788656991712721951728459559409156342956253287113073349414859031614233662868571498401025581215542412514310775078139366581935591507902787898615725137581496405178651642564169836986322823535431245463087947877038251031098208940248693818476286833305116439170060273696053575535202702554416135548918059114240037405541020007066704875797488778520969577445392817436446532737782630063182728393093125737193585876094279056615572606273911121863372761908440844370876867652106830172153726639509950261064220597244865964893868754535136951164423590712664457239574765155049192432889989486415007152594300326253092088019484598982419371549289232802105405208919514296326115493406619306233799430221252217695021065422263052230549508774730864300166657359543878761686016493937307539101838395528081508690634129113968054020171029813614651858998843810981845394682031557794698347627477821810170116619228850794268528477187713770845578535845071332619230298766899709210021330056241025583688116599707298908600937481694052514411968732164640647542961657796774069072538805852167888906809875132432190543694154022626220964707080613127929638510615941273295843046857001343684855309190727260232959691259727246850902249610065383222266265306935821813938284216410278921636841547128453960996065452525311037181808453911451626745469776159825938003583425178578518086022799645781076358473157374690347448800390547519045832111901657803394923311266275506345515145741930964744879669712144165027855378686524014530263441212047178509333569512014800678523729470778865060521245270659869742688193267292665212645763825375004782062934519391167532655564979506083091440967575545137914248025852139136480958950014614768978367904117402492284369593220334176147191464449960463590290161265555879033781028322947663575445380852016956427403254553604273278994399631562801624656863951056048851384066425740602545617947879710581357292090372544241912975442375020811779406195404419793786317465999003075734109816730348683576098664556724455729422466201953946779065461284298334713876788589685542447735742764267871036792735559630482982286298540804277869013884652012511407458039100835078849418750976982477363569962578060209793615072352955222770164537466486662398038979374303689369187388985529135250757009065186861229354745445544781710277046422663737165000413297723146826849810582656306948659201199350976004194558301942403593637199726160289800777576768145590547707545853440547194680238250287349164172552870782691397259649187406468675361256020477821513220890275827755498876248542927930053731438709896567672369079014878727888368950335210407145143345153431801829020312522847641949712293768927689184281337393647849858126950621142452155531917569529694457961130227347730124412811096790550769077162134424356078692846117150867774911694144115855018541379730738340700620297413281311216255166688877761957066637664676188599185263992076493553679622663914218205692407614965165821335412953253325012368278874713311481688371739243126639043748029899858020781831982548656965405529752605225260458391662112561472717284481127412769619340357121252678321673284326638228063910018718083384511707379371995794968622929431357783855030813827579766998153369372326245466488629777497222634410189136754873793522612852397105950936258839947500437261360031970191763868234555365941222316652252320793642689651030075900001069966289929026525006147321390159937390420834330494383538064704492193737511116362588614737629670998883088007225895207277241634514658142274763693167060774330317655694101664920374298122933202245579012423316479019726035343957663868134675636773333935206339964346304863522541498031758565627273737257758452346521771719170933590248099471258360976389942158370872657663782626281993838107497772673754143178285448837417069410112157908617991805976953244969242251636528107655335983917853086963368666219947626968108382751041503593996324417228404741371553388646140702526229262613370088766802766391169716968831419789401029479807202571479858390680438521918142427162854831527777334146793536061200429193887008793374172302968377854936758032814096454242780862553404805698653157916446858772331589009017264621317443372624900240706481404248393251026797107564184457458026331494380388877055017446998258392121373798930663947006842822533821102264595473387888298433695730872879179897909014143884834249112072979858262102652251998900904462405024389690827474907237493798208222929945479310221407315093389060026359957681327914829951508039618270514839278369083169695342022819475204787799468472393642764007471158994099542666943177592135643787958021170286231714576870626623024743787195636726816702862782570537259946726299021406549095199822705079354151871736194107832220399890137182032714393211766030487821166157317088623786258924771035071110667549606431560405089621047709660011117864523167830862749275372592035117709108527227209490005395277326551723179456502970501542210771333221744611030117337698232940755152250728675464994879173099258366495320174842783840077489593161643029055942590063339407440462477491002306686871085051831406652011109133882636028311686245310644753643657389415310325415944115908280431066222581360471223316607346130002636210812189796241353910070324152429282989941423831523255276719482711238510171496731398812114897673720253970096987714793107442270473711471027891888345202496616713402321266330757642803319078805524680234883425900622057435838718547865522816983745800648610895566303026010603003478561254825635233974052179969121999018557628732004242443664116378266644007036111048247890191568815838223983707870026008948895495071361084965574206406123450876608100088670703197477732658978871931373804690364726971876905826590381254860175294015968761605443697730680639923630529802441962908196192862364726317599584507586578757947490118113748330382661136283217294309761469667408164710034967016940777219333288835612758788449461166044622662581090943391679611451700020658805888212697696668496989836771823994450061720635737594605356063657011825122943551931210198173375426564911407006766409260603261554539168845159043206774216610831001115371312633038859548669571678020420502554552211921090680859130236194580132402895648592918579144668131575801337640709517667142589871316318346423687685124681348417867613031128034761551113426383426934219267852664694153002840761954358131517015965008804105197574438040689440256123838453487057949889801719669764133400712551365427904288413928579800840019955298047098582388557161014133520172684966563720563745088213913122304908091321624304753211407323136814247993415488121027023166488248416071323858650840362281513453122592300676429505554721742344062723506782846417022126229113415082599771061309774160730132162347605726078626130539866943396299234201833417650149716773006786728391074948694780382827539420241008902678089749599107057927754202533784781686979423226705393154974561258979269673666631715498142351327811917657435565749027756651484015410056370423921332446159236972210980984101517748631981868579557476773119878754517596613473520866941414754506451239286704264828389428020694291391537492033952144350332219260528562130653942983665170880674830439209220975554593508184981922312176945691001191181000588624813282438748385178720572404333687363639424274292977351947786925796212631534282660291433261543412585495531297952160162552165538762082509227627587514080245474586383003754508648162849818021227351510881329589197531142264522659876284597507710059981547106048480525841026803033799206993376903893291608676297707454466297197765506440190945592485191294661601684810442088174347854712460445189915498864232469047984546568474658916366766376185096327806898269534402206561401390152877304382771729813663803731838458020572264683385344876295302450991192441142142017472817405362222465902297326688679051668121901204634013210347431209304493688183415463942314400144538836035633555435112584278324475264811638511875876433748242122837601565211227049772025066789422090414233923753041869261137763488700446688833446817812692062237663775542811132442599145935929443797991786337333019779361814046334305291795787379963245213604723294552471097201338591093132326424359295559353067756786604826137925385653359614230723787874437601789423181657523758685645114070450899296641041698434245845527369877473436990988866300083666850736541976339184889075339749785620562247641081044489050482419883175822090340425064474456466459095460400446461335637611081092629777315010417275693694199022847799911831405479078324310239991455020725657265430981622537645246132864884920702932734355755140087747393629602476698782021903643956694598893467235647633321616167917775009841839436814541668842881744284528809833751159394076895655668922638757789646978468716518900409590651849339663582619703132525094020574177205969281749759388144807688107025667530009798903386125580901527752454988665255791235046597935242229134617446733090187606147038380143867885840657835416860780939233324738747826485805926777772416007039036300785672120999975164396351955625337629369808801566287718394653428378805813038849235444372989142186699093871941787465823424800502943089531276167619266266229714036712488838466434718396677932951177037271265586439798100803044148081405201199269266467957112621129691823255420334328519208425062112374163066528287401045588895070393794416787686402785000109210145738372477054209465991818509502124043148633602976425071099554823802358544084808723475749692417318790045892092247259661168821943399279982247702333849415347083365129465185909806923910021208545232535378572638835876863686823517468721922342156819490367989099349942357599046174473142460533010583180806194766410010485584274741762186159060514003582516940021740206160172585787147961925118637898388747370027360445988693882732671228974513404838440392486556320681656071086837396340641412156118481434498866155179010439381313031428103738312133313592463341244597497232946384847131421463857257083196352846999554204662805006648422319414050756277094828825261360075383739900532895896357120565488469382765470238231314934117238846636563759529956367931500959440834154881165891844987678529702551002167066637143444221562540086616730244200889751934144772448874722808282567299184344577537613912594057515247778823341512247359232483230837310958366287584779286075259386745090674657937472248167701034916656695767651680511483678933356987155179361003747910226509792686599616677464494630056895783542499960848012498607866386896098991444614235036982085722371462518140587235118583241432309523616408336584189132640797284808127936901053467010680598341956372625284802449994486170792973908531535241243817431695198327447990105707861291539720227335039289572376188734496886819428293232717142953757167923740592212442304676541834425357290021392088543973117269778646713168750190924118219438745934519012357926633157888155577863477516193957182643535359549226161549038721568907769641743822427398984038068316965421058741758254190677428558036215593111790945158732084089378991539063988422359968623034313726935572059821995446670008251861550996005701442071532476713430532071373842980077244619955577796947426549376962195069893236194776076721022726099783705472597378806315680410475405300689943602754692564607124755809074433777350772711635629335224834620252090936868429588462190931513654473783089449644646972228663784928813275917921425168589943874775307774306574803721446892143697422977737933258986556815874970914849116647286170257004364972208266102865814466835299138277700964469603698587583717947687111802894867847998296260968673899602281610700339176974346848431903016156101900770035819622150160044073654901017088643731394222494980270192445519824371509582955742451832590948196915184432945871786845766031548320811353300923385657138474595408902929070063374395213305251186560809929854992298868485842263580013601838200368586095086051139635955549832484107112195279121807626313346079285855897352028246834420633275858864444470813114119551898171424518746334765828910681300398265530475900471606399839044494885633407641872748590755853293109410951104564623713082898936126710178738767214159514977598688256715721082384985933112318925766081651080992594329720476937340803670633050441498405479409930629919792497968142835803054553630955936276234965658367952398545086988253932711044982816979589810349358117221850277316544417587373718380588789914264873197206031696682483893732042378809042378336908788890233546110321557252418786608781230679951122000844961355321826525590020304295115136459058788610945592434787124760649815769291587697946146192115675866254078164166535026965448409641898838716109648223029212941229623394655934655630846527498824027880326827393198035941243443003151152168651942979975151696695571248418210164403056948928133585461681899393246531605872588668689185098889919196147767719555278565980181520805827086140412986311693161780984620479856182111154467188800495934055800498877111122908479127645272569517606668114502237994430341488047110815603824406584561825688785193061027799973196914464059636121840459812958612350187943744465772538035297184568641196765760450644669493905242177891508335225341659201197977100373319337815375494805219620032030326611792046548530010006049296652203709112108959117894416343201193174876616984487769373234738290826429662933309507608053032412093059362910393547622887375509012768111499609076748189361283255651711549340125148417494997708660774820507841777863452895995193370545675842599986904570053865061083059454117599243404874614344477845127062108417709314140917405627119199493348732375569634137989097327331152720123374225883873136273600027487251199219417344434503232186490354055761318160458573350393038299352254782761129149615915168775019921966671422361489482775331291694181126224814820375311602733133037057214565101531209900243132535385253830420892085991389360894173101349364396401498650276741467990558520244118143410256525675155816821374228523864536803900924237546989204626273484043594651538979599888564448784877071780052664486343473215657871318380375175274457406034144507525700752752888449221421508346242650725621427667712414141176757836017287718076449067385093422487255103266693910067086444999375869113737710854788210177979231643382741710290167882731530623474635905767308614843044814503011665598690852807521871793205215718526980728345964967515766024268319599816522142424190970863011624032872193207812590710409399931895244316642893240726035801537294158197035366730771928430677700925344321371947904269887988057140704195804130859135826574824263590347949481209236914890366393692277865245806253187868466677456983894401078680264062976086622120570053826775724643799387857815367035774635520661149603426553432287705188939647427526257084512025617948110876701715312906878415001263934636663163262446651832754161390492933243909670458967823953422095257710915129504612732382031338313275942373072945106303904268871985616771347287350302240749971244051940883153444835182420341397461370673648404131822378294085360931959495834443660107713127289291582755471554927172012634291537811840146241071657558572906772041178801172317731765056539810092531389301769779315581646002949908697155193299865897122345931543111507318287042885487231819913904386744068183813008263976349111112415144538905166021791169657623690077891092154783237814381680320774936491546704515621135125978349597145293111622318340477572781328499718837344706082415994312616056502953869959344275810365860733777941235029118869743852624667281188055699034435837325032829531148276521134060744468116417535933381931148650803172501547075101220565085098510562204386754115447939510867882045411062120365309107386647475481957464157876998153077773757561494797948158290115337197469324845867843510542219624095064718289599966105971543495238197380444181098927229199543582098936415075395449678086624879913219169851951769224147403284279928288420482688367346543620555106027855556501383117254459263410779421840852422002463694358616307503358687544528806691835384243996948511278016418777592541425895986410784858225504397895966344532835337606066708540398107643978940181381741176050264523328282407979194185833757694209630356305316692407839277289230368657563329828438055244936989952988997839214994971237164067520358302693524494644727259495368076674958082014261575851785906591076376397131281082244043855195925071481533309182476964233107459900838933362162289977904176476190750014981923356098764575573645875238613648506019320581240849855148309279952709108473871181712465726471748380688215628594557069964857593960616539799202434807040352410682804581946879043097790487808208871984915782070826227455907250161033042611559247264536468056387877961348286144704764314234390366906380879349667049356956175342179094234741758196971150711579188774099613348553148098650211994263556602856016538943232321278161101848912467662761433695899971510438986271918353129468550323066252809602552612270699129619193651509038743532204823808418527181431243796904984844513928374268616840687872683322408322839447607528187500921881019674903056895160304995612355065698863237895827179217933217605903673456879534320506838126735524600636914995589603686565038029743190991042464781479902311619438076452343246070918964457631920280703308632386693000341959556781708562899431058492118463817857779322669400808694716186138145333445302879633781896895713366416388661013582826363498418243991950382969457107861745312285135976560782062113723033629679545594074551366958171018458880864485279900562296492701052026354265689208911450160240470136938983032819535836955522509061961880537123973862136074809715917522110232294838520570272396256199414536796287428688734670704575324071463783432302654630109002745670189314087650275735320242896213585399636722332308844418336085050735704190296794623507200990052455619566098687642026846078590343061584830309637113818819964348502905236822508195141064234034294897841161461710595757692352962753374881222875525595844426701398513949791490405983664228176429932827125323095646792445795914080467163015917770687050972137133168603039690955617838806775193223686612359098369062302084286105365454965934635979449067622805052170975153526244880212835296840284129682740676804168496765566372529361363885741137420363984740443508721645503611319768804795163366679644143351299542475535037263890390367688132946935492336740579052136577156820234870909021173478900336699241533456879132572047748125634813001410417430392087827938744507762536551152714684505644776528336262359458879641166775535101305804540220233360535495741859268909802546523779566771120265439172244115965389757496576968683806651996947845205049548390324111465535673651088328456503231833842615661380439741926693052002298920330136796867642669671586215660573747220578268304287762353224909136171569388890035227523672812844381477199597974222246673823931753462649878874294685946325405926373918956498691324560010917709057882865738496500948760552728748789618786814155941196294059519665144012558520328711168832914910457708593278118439362411139651185823973050185423257611694409727343008886045999121438383260169602878820897934164144117681089834372174118361234064023296357568411710408587817972827530885848762419940373865455830650959252151344223414250204598923948518679162712772124974632800250130377615168239164395918834064920714434147709013051757494509437935012654184355286636457648910405497078338687791652090794295947175784262231235992097164425550571279029278766021875705163053328216070807056066813839990483424484067564268955824924306765441125298460991174571409945107216493587451587516213678915198816138842703161853922490167903335575740835760528019844537766371489833374798067220662685580241980854398984592694798744010726592067666908511756155564671608663490662170135488295988310549954139200820894831520579648084491229141319090217526911215734471261559206318879295304811838347092323790121927764541269629132276297431332363478747730078406146829449422027595444275924777682360210478647390895223632919560035008541267156497863772900341877140701907354850482941195978312489922714348858295025787538284516297348285480392342542182844855153426260850849283911217671113977905869043210487554988307928596989446240327391307394757284001204123763508927112055023843307706408646765960169240874149133810540586443901809628053162784584477579533684294057507460131072645159683359677042939069621466427445508024508960127178467810661938186002235096836007780761264562753418115353411719689478892715305286210818244430314936384935616110027998496786072848868446097800640088916442037310254593329848519776436857116419396100409291213217132459306061021481656592909400960365025049052036719246370150192815432711585249250559652769828494393734044570774480059396168976842557300576473192773677444988644367985092213460724445620302748883466376017928451848449946861510588535238543696137966526957683916150154775073286556578542879771917353693400042835547065500788653835224657133964216807123215813099572536009897649313418842373784989688849916054926376236996958211099251168109133080651066861236521866072411670153523014263905909757424325067562332446044033689013019896751202763254228416300243588534517108893168499066557199356592643080064924198545612630468207868235308403743622588511605446221031801508188983445460431378876340774052877985128795115503967995669721915522828503771098972153609980070318672621061113167192022912836526785601013053728178092587609280356158051226958954789628362727399669835500234608842541865886572852960555816142923315696434391562393739679015590410570062433702406669068491025475956540372801955469384793021284539846727194205459023673732909424265238576635920115109121921502404407162623092474527049461948748711288175114960013807049787583384290108142237797328508752057879493096326552108691682645878575605043796252840470575266794253003011565302584556526922061256911982264048967873327557278876220039093165130401264339762039617933738968463232415146731641132698694337604148304505253178754419991675903029922369009221068583913347160237019201625313563790120186472735615583607818476168908038717929640659669090824831033763546014460366473286607055055133862188820090013716286169640378769321900001039117201200694971136228197568967582860047795771567310774196549203763347105760260500729711400828818372086595740708675259770847459273926219089753021684724619484696066137275387761837462881891506998423494041999696270484270025636898080675644592687119837180314807055725229728019329076998637392847085507733840115881016210813396872323683170236816411601958712078622152449196718123555533342719632623973016146644771312367530662918281631303326928191228293915545204286478439871540875948903455153975404119336724140432207781686697305413476087176347872688774649350013774129687556955656023806716383811826673422187750959910510947243733690501710231275646730097068128797543520686892842345848449897937849633723414937316755559125634742079120361119554658971595421655921488078081285604116327354344070190352532957538430649805840145228643882171118258736480845731928762300007576349392400893341679841868144037095381942290080201153205437456039175444746369267351934737018613352909675349637011384209826105453824486674041131594484465994878411055371138571377722009070612856706460836201333772359895737835385319725935087851854903160483120910230159191108500469687901012098167748567326968231492496736348649962312845465871454202955632157961954205540932834060157191626508670131217857686010809186511529977040346118104468335310417684781019995182850933634395328856282784981567802172157563839319524416247090847822022302238651189778478451724554816981998866474359030256029081136900886763365500813931642129277745487253987194748304378393903601293441934050561845837991685166247741327026227626729840513515398251631353238360151920155831170564943119413265946460970668059502451166031109214653260143105991646673686061047561369229813910316823798925088420012532910781124447305250316326802894543273231997283385792886594254065659378650575223247404471504426124209663233039128694195610539332171947761873029106517129498229360745447641127851557458190046076078601066196156234983990920521280764914555164778580477061882566873455409867647002878338098566602128932587832285220902765804732173036824299025204090973103873916800618624003212459884100692168594730111092568673060571601071505999418105577782189607520632685859425356217400945173152242957097019220667659915659338371362036550281317819818777775574827297946664791161206542569135068977203307442074670010420648931729116435434214753142659744451285820028967825869657673135490345431321366652925718365661624894302567595273251233363001663211057411500127352804962190807605607921121902659926587231709582737268810274358641364442937933575738849136996936874540129665731441351978226285915312872439830909498443134938117275080252580088643499205659250280810941490862687837237731513999109673822680497829018933588126926025495163043253110302035071618747426625001667064465030208066973796534216526392734878239226786277565608709063191511156317447231918345562138046295210070898786784609648051403682908491181121292288669236963863844715845419742473287795055545918093669754383870179515202947216963189644958218366363834115090518100248841682219544796770168846080998865426456464204041667454583655240291518079193376830447689876440778539844897378762365523060630287996803639658306720175144054791100276471197707210940236888962309245691870108623690301699348012368659185473935994340983706548991977037942920346682943412195660727438919196332876112306696696456594543584742553815191605048818849923844844929111038315208063726863045274104177872720489375341910668505085229920076536515561328446073168580766765444821368844639210628038195417266593062021439170418998540244547914757558043169358527752799786180737827918226988925599378356994931511672204410011196984030705597973090735016002963709742091284300600343266997085909195700681414297000662150018772970153993972110060950200769445226091878409082980157717368026096303442467955297616008742822860933546154514597931881159005829675364616458753487793006390531930946382292754087429194042098402065322831931566911391765712114369881457398316074997573199360777265587952639568210141811030389816157427060188535499184217975141047166160949876152950976106233029264574337600383984938090286051398762032474209487572978094016677333232302125647253543497058950010776959461018847266065051793652307535067309648652548290083880840091530809776613878933059191981583044501778104887984959969716940007000062791550315055217365341338230021945570243047789867226277158122558308487264001862579923463849662734902771117481160339742851955274753405326352219530745308218783002048065117305234468978215813320472420386295974752615789609042874637985488883701643293324478362403622526663665866941260875749573250906244862198561131102691202320141141857582104171036025656327627271827728791863237050395360688187612386737742651895553262945719336906445981074694245062939857024572035293379052490512093630239671435991330880866151810697251655853707732325665657410333988544217238037938198175180251226964957584842378635601260170928897989535937767182541787391544011122446064050444587756149344025918095883951115877227792269185946181288862273867382834469012026019901312115949046151492851162331205498001897522961064849221893637400532492563612030188886564277323241554953539194046234313779957147269085679572253810281191388603690288883209672803765431188897112662473429147727990048995034438135726108476130342722829620629288970081944940030264674596150631732580953037174775645812348512616578749559558691711096325870002860557811671429890910207867194117958981237062179586672783504848732912942232625772096868767486613693318891585790967311851533606559070035978880757023517605505485210363211097226739592584940545761877729076640653850658248692523286845763051128519213609612424320612546115770655924256566437955185251824403580901595990749264117124301189389956612180623313195353217676329399501961467046495788315908211569957076661536349172403673799392536892653170171183386397034195512145584802655911663684672106920879918171946102458068864693780309020462715045070354363612623775879736371318260253219334904629018966131740009939775078061701058628168129041555863237582470616317754448209144594597135728696223407560781875729333851474252619763197636150169346693628315563748473683581332274255361799252951319485706975149856085255814864350924006432913794823697388599947045236265644935803374833496796976529532347453635350786743224638012297158260521606733541168483397717409646258657245214502792064254517385004901228844003846901244232430823554493899809183231541508214585154184876488608857096775978231227752467877044830161296379636065763607684546817657136980386306145055702032984894130551408633760317348471721459884994941435703718543299987335629926818630275236122393414069391471830877230853034213869540499396499898143371969537569426229161103461503086835413759740593677981640332933862273203656817445675173121435398348987765487771598609955208861705191739383756005195472147377241764891868699204628302839729678245730683751056076081290102687410637597092106737567674736070283040961258214857987489964289029321594433500798243687309947197645276471574378034762757518284220414115293630058820381278130892098991050442106342049207429095674560174605541982521102919400005345542575040620215515119951714662769062427983966413983489739072451230863864319659703526829584953234526371199892371127687145159906234045633904102865115348030937662862147525636684365191894387368543417417977084865181284263600981794430623142383128191557703196080216338790854563472425378016858769047349541836629522459603271612949698377566886889363543226151646817037630169765042778293155096924594118048407987332719961844559621689578162502136935480772974655634464882410483801486641777042543601164849830875056161930657586717112760244480191202491347122805797434205580163348935059963766581459009096326984526370611513201723391101643140172217601464147553443813917740347786323936412929364611153967270858514931126965845003271398822973610812762820480559775763348404509899348199472771616148658072460885297434038732083203931958296045761793784153719144280940153282929211015001804179427471544433729748701203134338097451961970772342898830694468042790466614315253405633749650115895658527408987303603490397148270696959124718179202996913172673012294197220050457489035869966608452087735159502183094152869230461467920375542622719100867585612038116071357852760585703138298277942177405621950260479758060027433349742412448610858269586262082557196468678095795302789129687530951520712975674004081565381725601955984789660022412975866425553319734828777361701366820895443210965125474430877602586174835253982251020199423490517815389032320424914391307244801840557178198481394814345600080709515717225243526447585767937960098536876519574606778518864066127755072284400497195358177470892202801840771881761657746311745551096289132764807346634453703584480358293200336985826206332014056290862189948931403722777779678535760286666007170143144764779032766631207632425806268582116218959058878701658052812856921117305298106095079993803404173523451553120440730338970099264619870762696235933481729916648784014408840727380263079700519314036993658459797513366754004743451292790979063165504489264757954477319701626499418416866744254274138483796584143893031194155962041831783198276816204742719735373318332654211189225458836197019181703798992475197054709247062727187397428522823725854685871674756843711762750431830965567484630612783187978263995035280853732265023429396168753010596322702037088945692149575081464789852525800425030628373397081589175783983024141786871820166875742468521994356061515360117870592722171298589943956360879920478979131236463839662898902138809444684025181021319842134565462239180548811003121317231817468276832679574415606538811969918130850624253774372081011176698428907533832502415933001000594760057322488812062221785291305146808099430243058541390903013592559347797752231946560708710679611416963089426010750553651666906167137272158549144600676427500922673369002874046405476914319365193927416674868773588706122981782694709260833966919119590363743138022733337193152982367714029266929414263060746034019027491631001137180565452756680964346360752996064627518873755370233633697609547559776038353842720473675894700537208315845206374399399302831135612071235036172195841278705696544763413562641317532865130677474793687856863326322133547509056413652761012362334965205487871354092342544192157429859998205951731299130512150663990351866361228284481449332252583886419005084999654740273686319140116680159189301603360341828982562671354942154003046170061341932896930696757940999199385430060255199094170696745251485680064083647729474710601409265147357853884074968381386499321457537112783643701933955855948981335401811624235456502529551952512262726932313621453568980657676478440152449012492694674198423018970224649724637531713438449571777207816245135144486257735689901314059635039559062200677043481106029914042648301185679736987517150927377357646164588891512713898977508979975322841212542650373450366558530643350442988800301285012306197155290795780236425011225071301590164571321435309701248710920022017993151975122012981218778591575736697516056018070676450194179404026514364385008448237342284854753646996121055695836327784302365034029345303007190661930806828499472469632630831490254690934896136229091359434130394434873763745503079455368814929407859467166514436716744169057705784493066705283573179252419632377651211049085534103928367768376866906080129307329346946373034733010497316963420566177033620946368091268213262920756065638836718601248982316025763887225202004729213411078701200182059990173800715137335626637547748096943221883951021535300098586599375580318232481624614655802320736735048342442999871405452793457232424608018574932286947117551631445318031445549736442915563171165185687480568188337653049084050295151094414675548174688372239147750342811301559899878333039967356962678155395878567228489009981169823486145605285941533966937303221576272360713906210833829405053208007934701781516933189549957765940610253602145972310680910413397070683144115088858720840206760903102065451509597929779921227637349972447088486825383944245922373116732571877141773384310029189895620249383312841124796312691209906764894003733181381514141576722145825464107648149423978196700828780447051684024882509297348750624424861913348701117140990250488459313523598344706988452799549740023393136146406471417506436723911037412732209594764829600123502134686919724675835302051803160670278577220583508881981523377358170187099031208181908529592986376160800902685936358882472702897483866481221728154814998864487410078604649893176376542772056802189296446875713099419482094005709726000466