0 6 -6 30 54 483 2568 16866 107280 717096 4831692 33236181 231052578 1625698194 11539500222 82593983745 595269899634 4317168003789 31481949427944 230709893931102 1698195367693740 12550056850714854 93084828203173854 692707823703901785 5170564135362834666 38702274835040539815 290436928125915368382 2184744774766193838366 16470575448236545391226 124425522400730854118964 941765850873825488590272 7140936040208851255566672 54237186484114373488622556 412595523592027750399286442 3143378728146250771671708354 23981521261255911762760882122 183202186495082063884903806516 1401287760805295009112002895570 10730947674700489713984506720580 82269040926887827287733579280628 631390336961991761718856528901892 4850649517220020023280980312579114 37301069525703794491573690878427968 287106170326446095030255158137041394 2211797641184191816787919375699492348 17053474134344229271424203426085949033 131591869793349942936134106687893964036 1016199752745979683125587483168852322733 7853242392488787717352002216907651498962 60733137985121079016812141161738771567838 469999006594745503804660472364974988280740 3639578442321362065490156071837119212773752 28201827220327809972740074374577185902544492 218657885655756241990396837849897547571574356 1696309370076181786277612535895336546032127572 13167029716980728991538460816400528581625141555 102259748333172992985317438155757599476163778616 794598136524655176221153930997625440655027567854 6177439206759764003457865550604937259264787144684 48048532444887286008907512642138296486461331216931 373899986598060242584081883899241925503544583795908 2910903166733106007652740845621903633554040293883960 22672044786161489265250744987265950078958344066524888 176659983847320783417847371167566864782675890303033721 1377096802970823504283329309831661830331266591364145076 10739004727799326966631375874482738991658784215886665905 83778314677217247385651483732144653333261158671146338340 653826030207722986263310880727816914519576443977110591439 5104473992639229926439429880854657614667897488475339848850 39865149314783762671830180670606031364643392863189797531983 311447617041723072110497314821330451504781476275261911073466 2434005973355929310663086910755700768018641714406129747211405 19028267377713517738992931617609344865919535519974433320797054 148803779902030059599558610646450601754168214786008178576920417 1164024401568284001177948691509383543624122033600949202517902078 9108357094779077734631799839824532138002894048872799520638185609 71292597219309890223302141752614642854479232372436263764318251750 558177031071076871446843103475182790307552451441755096186240876386 4371389086327104563572070374974520756241812559581138371524823671454 34243953921800348268769724220819254910517929340382555013704350709145 268325753109187669026065227459075563905324579505619348841185316048526 2103061658381862217311817279077128742228068563437096664458620227434087 16487322629972092353937218534715021024589311883166350992079756013631920 129286784363979194620474754245667954085055974690728497001876004054186282 1014054917973487121949144095161097998142579560440191114065058645993820006 7955541199882587206883780169225104527486547935004573634891787644599473406 62427586705563162580987525798437390375292329308923826347955545815311900286 489981475023950373068702754238220865179121508793932704824215783578197357523 3846598716714439546776034467215263206740492256579002644043538955564355455836 30204113653263781147935396680869624897723957675365567166715362463542630183602 237216697766246195682605092636823648837944505587251826243303646949216578944758 1863427005700096402872806907537746252067086208573527328116008658377358426801958 14640825710267770587611558272836201414020793129109876617965765396372174593631232 115054328226640346557203908596650402941740170523009263702961290360949159026682758 904321308403876035112246559580042965984932440700028593993100707605322709696043240 7109241127684891134920618492571192153130728746354629378085578042332071614100348940 55898830431323211626558679225449480872864274945170234237709057076211395752308797228 439601904048067504832215131647146092467399820540856151921585516873829443141178082926 3457738902032587524554047881748661652550320524660441452336903996240150001747702812422 27201890228020417624845922328246996387011873758648437626362005664192073523618014067184 214032016052073365357873928688442020626698074178720185163994115175062617032542571726850 1684339876477801419925185170011670476425717730119338972604499146333525841776623874246816 13257164642292631125379276092631793945439986176151678944236954346556197095763438142603238 104361458993433654266497923343866998766288597283684419989312389945561239835558415403846459 821668973435585649534454462059901450475320790535679435709831126435687691446288422523354838 6470228334162983720319188722836397330027536112845535795251476889908474418465298093773743676 50957375754119941409267577735150459450268872987229343804902190844457775764223664876064629330 401382117155880297414869300526402828732696948236171441330534514181506204138714873860340736350 3162068882094609617170881006613338731580010483485117837730092212329499573375013188663911616850 24914136015781262101900071538593060494335226697842835539827329222417576314826956805066866537271 196327176619046170406684462067701216318216849138912676639410785700086643314145900976466209086058 1547298175811232653450430963913770950538428309513934033308061028314759738670549323020363062584960 12196228571487991645865318589387657264352876097038703568637045038917416985657566345097300254535238 96146619630139151054133373628289064708735893236694683628761291693138995018371829619916381353848230 758050972385559486778698716758807359655495815521732087971553620167193614139682096153384981122469976 5977474757517619423696362295064680128188487947025794457637376415222492226895420537136869780524657533 47140164878815065623862508758517879735876036374100412260966697732481519004540983578157098146136168130 371806968591263348433907571069792965209374681550954676345318839943685521896511145763925980850824620991 2932892435591045921103810589438809752593919289000968829229267089746644499659978279688985296766949932738 23138012467828365901525869854985791338191850595885698451592552603501130275543092679693873784364242522977 182560331735010564303979303930961531787794183735295770623929319163893820354045222724161629120115585316450 1440576739570589848373843309484030569570019749153590239192220132690893282134425632748032341808466460838402 11368814571983793379210520935943971458912138741660643497124293485458744463016988928388071098073321931494670 89730890499629338044153422511690779881889467088022328493681807626604676633754652538725867784717035467567086 708297987572142987391354776353602810685902483268376845066396080529006105883783874039374870216266807714409768 5591605427999944036538786853875600315041994041577716490972102897389084572093001134397007464951436312174351712 44147159936196995502199078896235400362178050052290918775605270949876832662104208579735117236656896226773026710 348589293326268064566714490351412160817349960380391348359913010328561791350200429786411878178487594666479707462 2752768161473274508780936200036099872700521357322680489354492496809586377076814395141902625150696417938766858534 21740466604959474724987321172397549729138868303071829452345386850678622782204982695752717997386993171744188057920 171716111656873355971676722806893171441030068229087893347298132685281023445138125082964375530352599130416619017596 1356424218596741295307400973112863028750995097986927588243476320744700342922993878269293497212163458465960974222255 10715728190592752084362634418469838728147084377941299557036824926492606924974444847739548263820480535919449587182192 84662069485032588105888224924126695220546856370431580663734805146094527580955143922493455712206330616794818453450950 668954372272997538263117512748285579690058319620436069924196980939459839553208392012347220869205145795590869106576248 5286204250382697377207526075392408117443072164480444054439820076152817696462067695471924665102600870533919446359352179 41776362550446061487140993190171408261299301952812589152036078780132465971820347588363346556890063886497272973179514880 330183962869683386327516724402992428712339022601738421460707792878155217940032155004357173521465476680300265193998044765 2609873368543109258679681320639295197959999204168515202924666487223420223896469670992425945776811439748139664976735294124 20631008398385761479635415607373597846767016634567021633606171446131789050158397213569527367690180365539578985445241273820 163101704372446860497502030364352862051499804226724488261628777889996219205602942030006396251797527401898384248871904321790 1289534724438724705282767579704496634120842744125386727715922686535158634779269863781645619953219454197184673616505042537885 10196322603221136923747192219512815870416862465352224560671507565630532290384662191286576230592401769931278523413383880645902 80628684781321897222784576846442470316291134697786062138208847757275565330230102460373210186057675368446349488300348653635676 637632687120662322272024141568231388480115962448942883622309124759075602595813333938238123714547261931425830037591158235724164 5042966408634459673103169830972170967424613473262030609878610490948803728878423706578620618172111595832615070047343196853726812 39887389322314010889714439758973463089863955365430456235311818034460018353020138160648329112659534690851270246948628306644975592 315514062005851164548659587779690460921110359718723211688513623434849812674710744707787519827719776130237620963980492343604145098 2495944620343046383113853737628961971102846232395574722288056875629438302825401982778419682716463402178298827473993441754900007228 19746214176815061902540855565434757788839340507885588039868971765987946230415528141712106202863150656507151025286234450286769593358 156230196515541624483632130884814649513911612317620245232728285700364038758282529907359499988183947308625711976859712449553217057762 1236169219671738518281004987374209773345295223664122248192739189541921474746626231847057371687914261085033938441958685512248516890062 9781878504942626346018776493273529420801368618282806857646647740094072299190103841608476522047839718669906964985853815470102704049116 77410092313500993971754877173770678406024352285956097826358015129456034345892057368331173167657415700118465890561355020698294632642705 612637372295572002427469364464977789976476542237680592252030851419326567008399314902358832550861336303555327248617732568909768291948982 4848859191698899448705132475134565886076741136157026998445120015165841882204653668392982068661428406939905253441414722172878963265279991 38380043058829770870026928926554252053472081655534688964480156295545095114038757913307500879401037023503881214361841314207365236877882082 303809088601676311911066448737628762957335317177883727419394747455843001276086536806985697822518382957173992456081119669816490600410754371 2405055556832545713062494295110160306919383524750417170191499842247489927886460577179274350405455321362087921003271189858089004812319270110 19040491111445633472425081643084419927584125850610174857051161367969254256971104891162458814613437883884263825343716572188929573078168966209 150750757204240805888143674834321093809057521366075652649267354737107165236920403669902046773266762183267952979383377748805678559056093125310 1193627539076299813312027949106683461445069029885886379865142927181233151841530857579498135481603507394444485298216354856664667512443278047549 9451609814869083283507909951279638256402018995832532490643038822603844597729690659563602049439135846135418842080326847221259482977597264027930 74846246692834114120600691669952801786892276075225828604421962754729349994995865534397554272626142542253174948446222999224021181880562208634872 592735889141093281619456925760065147889622840653689967302408369686087237973356991794880598069434411344622161233842294397536063050349567353546166 4694388728302333177431668153603459566916674585737748607716967856810035815098756757736725655904418439931843415447131446231881055074688530806680499 37181181203989620849101506668767830120588706535492204740046738898837579740173732744510235506464921143446470765786659544823721364965577307371166100 294505431539993580202999818587306124472660146888319188225081200901067056306585672091584706019926690263164538574276868999408212890636172484693230656 2332862373884686605677082893328311670745857684037747863743360092006297879924860086380213461707039247943732994835810004511265886012126970317064070174 18480354931773159257465688228070915189077596932809002062504414132264840561194984218542944954343193122333716495985398360594652477298396525330659145208 146405225782679804734567362466774643343667699242181899305294239277626250645187622376249828721523743118814596570970633048026157172848662947386323282104 1159918933338516013234911634719430514861992577982499562958345316639265722756865052800921356503145479747175864454942526719570804348274927500454787629324 9190162618567840810347378631514883023592165075481129101029862398003664633967371165318947066895654148569248024010278952605492264960655625620699951377028 72818708460546412372443094188927397849798585332450903792000261282733773767417391808692157310588616634243948106287699989329093843807921069053559543260122 577014445932383894639683615417281499559075885090843678062326579793645558690983148349353108388762067542049188535510096710657263305510319708387138846696692 4572503700399774189938966710280313403925266864217010872928794487355425877044226110521591562947339512865997766164081358354117266340393160030560373184596832 36236383017414267683138731351800393322024591403912039116929408453494720816775563821706019647147402358014127157310162178328742856821289182190082276203937356 287183014263756575537648953013691933881757858156722462195841652837055194231986425636848303313213831535622964700535855317990552511297490775043564330878674385 2276121965707488133618949521510633749911295843086644246633974927962334501019281032989396409679117107352154307206140441499061974261104282205710292996408361868 18040764083448900451871894531081522535472171982974833108387721045122136984807066290455570659469814982909365399186457647470601820463138189186744381546219943312 143000215024347880197171754054771349316396357529932936490091103341329998390745973907995606035977897405263726551795340495987004008389700949969328035193472587554 1133549715889750703234882724652007156577418404575287322894279516351512262924396946208780377254436003771441532533201686337837225627170615905129956972663661189812 8985998260218740948871739088347665223863255091607342315054765584684081722817215385898358292823107977197016851080211651730451640772509368487905314238957199119668 71238329147234081036039121560157409669681781429148991775997769212391956360865918807172560053935400936860021157622538910922265499148997701448090719196098332637422 564784177258771837397449005139415468820966512392485004142606947490869448333426670102198461911062229955600515479195894885970634758985213370244712389497243194631258 4477880383419037859095842778143022643301055852915038563409450357676981898987045929783163829882751097581581017687448281137028402958145247445794414271764758523023767 35504499772553640200046095240068668906742460548482531555457963859755025465449512796282035230850653278225426393265336937872872516876349535364956678055824343197504786 281523742567768495337792855841298068574209623190967567735232790050316748888329231239853725866104324109335962388272721295478162465189904130667495537776425645574639836 2232375026245858603130815690923398892223355016366104286208644182516952246896568557261407417608665420031593458333551363055354960249398219909016994785828741877124273396 17702702276174279635669972131349129328999586905384672951744424524122772516505865294405792248198270161977032146939558828105912624330500338073612389954524205619279940043 140388664997944801248324617023222344156171412928387119303494327400472104911407765065853737594080198481802839756479546036546771676481906585405664806203189334580756324192 1113382476291539275418873255562006994029619413998784660575383328954898237405865236881401790191520938749453230683033990405547628467477164745426922985967244769264626326349 8830318550389482046160154451398358275687378803848737217729871716037499943554562408294210382304715840890053131848637529547360715956084112749573863915201872349604508729926 70037044102357428459133834512969519488566503891217250159876321344405340468633703500117936911383093565847594271905926288818096449479018735015011994605193491502856690586789 555518458557600680042610532659176195274889984079619232951743376839281334087704341286538390599597524375727502160428706987550220024000679700727268875357076273349369438834328 4406443747820731133547401378356772704835897415765405672811888248353442993723955559960732189862366337817398036900719072803032206571302102687749176680979664822215201278494034 34953995255755117559961548690560262787799468584955268762049704113969429899696015286743618510114421083965120669355791095468750662420842387935053645004341669488105856653369556 277283534054264658892166912776252615206367562162246154747192773552577784276851475479153289958472914271377598276546101999218091974271335521131398883321383995297995140382147385 2199732213902876299304274207886589957782679142947060498806002154005660955789665643081665031483027907516089986905942520374715085718065963005468784016116577786363298059848211904 17451543339878208159739659040551488459676418259527907780468914372910650819026610217062842797664396451404716774556065167038878162838744217692879585104931289419802348161256338936 138457336747678950964062112503735277206520615524260183364017856426014396792449062919843858179851046422229706092330248018683767326047428686356978424620943733163889929608979416306 1098540405144030918633363141677516524789660283485766064911567115579830895265453923682180164919687507173412745687873229284946216300809673462414547111052340434097322044211765928556 8716333678720651668217444813807557045690378394213379853976434898595222254537186395468118017941713367558078328704726833125103589119757552902596981977899297354449175599712784089092 69162269497432523123702542468505512077877556693849595061572925903406698307220781181598301221900175138215900935950226173994648935764621298890229505332682614201069854927255589577466 548810014711709423545188747983507524379769052766965831592171032087061106525725549836924471152593839115159127547610809596591093730477016685508260566805051693866876825916603151748250 4355039052859550642566999432995393282670937273067355392741128427623932652787394323800175191315856544159195863970722004428396792379327991342230129196110859406164006943173631541170687 34560430738720206343216744653695967989911456927129125710663560904691979750172551411692613237445131553329759068348531529762509684305179643087921728741002415434784802938484757855442302 274273053389799343737564838643819176840028207350108454038174358979348095880078082666016575264811526950743364828639176362466171834470599843525647002747061903272588792364167711815818881 2176726556494124525151801018104660341448232631666511012803309737935464540890482123386495781311926440034367897951311280577398031455144460615801533508346729018222772254272332358063504976 17275920212267906054339133628896816442528087407497292443334678146114649615470507532458745840066793733083796554274850492101281393126438833229644099694444360141579023307390324671968534949 137118143692098400667817737900266334786709481400165439159991161102768290585338813042749148234276477887794299197012337285100383045901372520668903734427663131552039092244833126598199832894 1088340840918127181189399266751031467440140346679457468813021919327146142666280824678149448475282344558820608924632580977790253976045955698510820483105400537525277962663887537504880348043 8638752687867827319015934960493610791050297951611142931783387378499618573687375405280970008524442259940450019240493578101669798596077536915729352449469463845125249400782990336287588682720 68572994815275120897865731085521087297600764124908719711235115183659483492590246483957086144190965598635616040591451986105223718419452200561609375372359732726176211054759393869398418422050 544340948024848991947142871685245610939106432598189208247223397724619310389208268467004974344523580002187007946837425310214323920603589417525107134866814670453766357820368608083716162115886 4321201907313261311417301686610079292982721350002988460800989625196798807924090491127732852308956925134200164621773093589542053701243872467747165982950463109039144580543528880090554802422992 34304700605262446320678320861321958909622022454590681394814380271839530747890489854733193983707086612748638176200365743627317815614550605673171943355291395802234408563144359698076777068349042 272344171418623226661440733483509777030372349161920017253333905842413499935747221900864729607382555675450547190204489752587670902597031415949771464602822920465020108036645128970727090344481703 2162209511378992263477063939847434503339799969289268360786150997782233331201402261806875612437226849837484932136274187200813421676987698847602327046879399558741860587751653860959224610911795640 17166926953772660859500633719207993726260954341564295274841408568511269494197714516497990732363617005712321717346323574906393298775150548956074795466720738332750161301536004788638273679853288649 136302024114394492931665687264956427953156951682279428228666430004804958086237181361273056299225244374986929018506413310451540395304458795550740263383907705388769676437832916233977373843665471468 1082248210267469056128155093032234501463673202886747443360142571162135808134380006253297535529304500352161561479300408675550431979430726420688934239857553559107618494894375163955869639251328873353 8593421989556625282123837132672976161804712231855762016899816368672940316829622659311207011996725169402868828545113422581110595325011453336620046102547011604673111066317588233244788775993363875254 68237005676117698708082399482239216212138883102333762306667541917106574320639579106574839983948783575194409835452747097970994320564615549235052568519569244680997833622560022820249253191917451763316 541861398419507823399962779193551386802587526658124705209128301203805082543939639529662800697791626059151245344079096168844367074646246470361545975065727313697499811140156648060429935059065324873728 4302994267106062172265792061287963981292177224050179324438589526243494869454024253647419719925270178204172345722835381031457910349850835382815974848485259419632745421912565560840111726308279866345409 34171771739068874674921036638750246350329290333883709663857414834859054873233175553652075688053005352261936107894282489671342960727693161058807495720828849536112884950100501315952722939342636790007158 271380273825126353615372332277617116424559228038942248960443398490584716265952680134216281425652578089383069822661898824987136090495400052095185560076398238714300441707898214179085508812968368071441889 2155276448358891233075195896046806041240113706144632222433310946313009284326116785325367111697797150601431850500290129603531446385995174726185775350811606326412914124204772498209344331715069032169223440 17117545691044907001374140059603293971400760332272430452532449358193976432602256380026966075340962241791745685438588483697870778135987946333061300536846179959119263739317986478286922674860582068632623255 135954533509275344284984151346821648694839222852817272988662625405760879590500707319535150383029147524471983512402337828260177311478431838144260061654524914959195013801608975947206115566723296546275899832 1079840121362021752703029254458018338021221662330523466845132682761475695470053981917904627798023414831806707257154071185370825404879367789995837655319419495259513664787487960547661721768446922701308576199 8577064491216706530244468411343565196447139819012226708202678059475854568282170137711645321666476535141472718982011673299211162263594398646251479516889013430384231032635175986105320305008352323822415786548 68128876406691384050896366496304782750735127273985342096581882439960416378168135384193103158306436378956976817973271570770851290578136275216652814307649465678650622020690230183209025149395489096477228121169 541174093846945116006792154361651674961291059572489910779372766496043836854687695719309412964640814303283932116744542829391641546935143604947584759459093852280202830746509046029597766047416737559078973525692 4298885514443433801103198509394859168920647493582439075994722523654994696691454036294753882565966139729000080503977079138607825006480947097499102176841916169863674751235291476472498278607932951036480507284817 34149768013483353457153758822599615037838072599026057577898516074521436389800999805624266948259706858677943309379809611506662286935727817851215642982539101966074739318081613695241448499736330910850675514222672 271289212066647685292529465067169557591657723502286024988935649244107208087450097537677713841326384016805123401079926180547363535770337799938463374606600986590616151325596935812970938730340042755469047045095802 2155212366817459532972974026679281019584910732614410825916375369274089771617553878035206967622452772134176641310627114264449651081095699869665828629819688954971725605739557578145493706572354170328325172048236002 17122228540509705317914334483854175484730033582998838423668166718782068236908792205546297709380459406331078968499541006311331736156971622008153172748261252054282445732995766641237878254746944995868291041569151682 136032624182240407249062427048506390096595224531979020831030322470383589872524937276662324947643577037786969558661908584078249535204939897134501673941818017378142610649009764978091507185495221736614981620750973566 1080782554007889357868724890572902216577183803896440416646170426099071755105207882677014696891431392810155350352358245557456913036414449272965157681596292346996414725892871233111009244881781455965521583442336908328 8587088434987471029096857864586119779315113789138525418780405969889913503831466437483134996080012830920133081602208068768261982078961160196803458963083313135599914507093705488465611294027933657512633374279005416260 68228496937321050457516418596898587646689001929234578587952556980104991304420439040721776713152271575216340437619392211173599829078823510447864142404991315429863707226557470424404178215145341925738685563224748821819 542122996900838317220692626336609614782465823240855515720098592007225211503464846707153500939317016214540576700677492153795674571936093858998985853135749130006576128809404997410352494484112107876481051734510746555374 4307664944199003101211873266656840715914799651468861129955523418192132591461613977288916737215898354768087423999386327326767864788950532583563712922394363063401388938443642533408634120155913862197919068486982021919045 34229295634514892738517854227582530531404860023308813962765444498347130477746810587910857443616185611732710068114373496736550241749353052113781340475017608377617595723212592380241554121872994826247047004215868261217070 271998101653116184280142345291819530202058577441524612273420832479271352868625925886015302278616510495277396871443794935380537947249810226287795763170559470365052082461245264268592091895517669643694258823886783580237420 2161451784405659382208656160984265780074590651488498859980988198275464408973800455709376751090874158422451921429996126430398048887898170005773811468829758161888870754346731012487536434768966413768098459504845046540192110 17176588264090833224234960819920959240880317822917810780247392023707439531932448697672947317710358631990920655666881690679557878368804325953202043971242881241469211269887611366189440685381684848293245563183422007423072439 136502259241468015994894833173600494737010339692569243442861002564869477848503317825168249323495269452583119651820340595467140839819703673590730907223605738051748632785068119021073155075079362707843758175441230827161784076 1084811453801716722033077362505564822708209517320266828467310602242187521913972281123602198985322302481631540071938548617155690373815756214192917271770928492495587012048538561946856557592815394718240137185954994013922462030 8621445396184745367114785987609072694213694371404541722000740668397857415479659804598890377972298955992855818907042401769616849223911840115504684155394480536888731223355961072025329895095303588873531748494394881672160559362 68519977123588781516518050934017429670183827646115288891822492811597041169410986910686511436710032634875480517899829374113487669749249808141062079954992873037108099352094907121547180920469818913425198903130749551247024713221 544584849590062159143700881229414035428299242482845111149333866043850671307557418761671347240137102848316983977676375119899749604872167836358338602284203119318612316380986741295129893810615414745777061092189261828731396780800 4328376508125200775225269479373295010145461515021985278384323804765297950142889887003328480387571467836805104011460045673038671658714315473131164713022170994423174544318384618469045443595125695722601852122239815649327049600560 34402939450336623213757495235108744152599057621468308076395034052145669134380100126615661982726413175536047190730221947898027851755833674521610938645051927759186181554727848752353482523263425766600302653582176671212017138775764 273449433855516930809975726802719680567291381629282858244466043571699947849659801669076917239417115661133308902271261185218607294602857475796294797704011801506114691406521701789484128298266788510252212530319832942533567211386412 2173548717530024469557642667465957518967754767371877812916029632961814649748669505281880017283209548175048291955829967676226468408370630531626578742883891337564651796025000795074180815245694601253637842912865023772960096462990600 17277166477672302293518700960836134087747844329412580536588603829841498123196339086443564298035328099928906304361107243633597180901012681913765585675991069781128340926530392615435605759780170759168637421810663098164715197006120203 137336622651165675529312534744332159564284407151282755418246655243787920962832700143248105415910970502110863275975840392485283597134905144666957987548864015604894992637891521798043872902866143811392941720542919345708977616510420536 1091718908231444847593421313795837779426601005889686811477759549271154521992562785982874732423304931105806109303208522551098581113229503020965903984435804668859681052629024343904308028404712253351530068982563067355388047999217203945 8678523508588750504485191863407534427865670405376242054794476527954436679206068290843936853405407588118878701002145262372377923083114457383870417563933744735840761008951555261051888012790154393179148536169808850808628241658385013882 68990821937985294553254412292448774953467048609382378840142287584231993380233811259876700098735799473881751705057080829977301922446406873992754732986437224567513960548610182769445739771303639110366287515324594974911916669477975216150 548462801219444190923102066282722769762635921246907659574981436333153381674021185663134738363504662016089629346371984397501049340530064057133436960521910823193531044946027549865775638176588768160296230314192927916404539598532166865450 4360269581392332948642044709688633609792017583399159638706342362716285917495638318287052875978517082589401618733302671456590939520102507004123239666316129584349875522741547112009091829433002888369615888245202438057413922745156955682845 34664882515042873680229877027193634629748931595176842857832201003394394331530182199071848969278602294497297930097638534362363730101393030994801413990972997193118942971306606688011257585021700108354556657141898220643193484619509714820786 275598135702234847742759567658563057220502210870613332960759823159320672147460230756999599306210594986339056809016021002146607203106026382223936480194281980226650658872544917498152931960925230705572648454911605183445995523069520811818479 2191153958766995040810664330736166232615144553820461842742794928097754519525952193423409692044248377754567643768542408317737685322747244177526277173556816572359544296524731713766026522155118587819660359930084792758147846982092492260820004 17421258016146505517334403744165591915521955589222981839644164506929969176925157390473358712304649446230216763918064130425561469297095103369036128591927951328926182061662249512627964897155413006177660130878835511859157459805630364405396773 138514761521976390174224945162650119989455468349294662061176982329202814162806904801658208091472324055214499366691751731753524332479318550037117173210618964318276267192810704271568849928388709552362451577698801504400743767966660509565452630 1101342650164491316885775684112967774672905303246003416826587047594015468584340211940412304988917178844084605132264325635325364159136293870368675045656010861032614754255699485897243900780904587258205777495339100858995110670049647885881818374 8757066307682065170318032063754916116585788156381969674126846462582996200847139592211102129254014778740611604979930106737289710259417046917667701698140038445081552643700811923141390896625202127054887826282238401949949324702500680303473620968 69631303924073784025017270697580268122725942300669405818381411640878044881938960930586389933927338551033060257843369066853836286560225487642751487159623042699389165062142866298071194501714537782926242947934861632561924568843715476238018801960 553681555430440407241090744090597049074142317234833186163834524997144445307872883545543485923654159792634834493632433056295507553393210520993753990819274781605257601837067377322918277525430253417905456152738043468492058542888579423178125247234 4402761430067464434195920344537237856059293150355911910440167480573948246360801216565361702961325920616596330210867443362095506845641987244004416097640951942473081954481099348558320348216294294844718640846811831442505476354312347934693125100360 35010615787910462952914025314670900186892332441455709270986438505328325316365248926283238482111965420779489301709882511662779919731697887944450718563200103747839143220500173607016838577410807479779208749779345726730254083333075612922247311889510 278409324405471830148228954849951686338192663868204423818561866230702794813689273661850300322996661167641265688067396319888646485676576416245034342662499790326504247468871584511113209021467562666558878964413192885275844583721436887872045585490710 2213997705071129287047642247567681082419684130336584535777288082980946596468271337469087777504356826130420922159408245326958345442972522535472424795131785447190616517202064795834679037656572959977696337226631821418777582083169807579520095266993134 17606776533329054475776387430233965159905523749345992288853270944645694822702395827427613116263462063204030808277754211570791493565351287082407396109418571261590416989398129883325637949676167723015108220716877898609005458319621360622581879787406127 140020546211157392882721434459513671846905918361917844961335693337177716079997686470358858289782369078437291335522848108760957305789337839658561608047549693625392727785686814023212511723502087448809097215483381613258490249668443961726768974667402928 1113558011108639327226804862128673989231988262202001456766070242934958507162458499063342642573548745269945556633073155967324658316674224914075723273988686848322938862801304725330253805288129093930655316605082202748047323898733384961430742791200547555 8856110459881691484756045831600389806433959141296382948731880373522142013270817708587393161312576029635888812100568525516571447074602344940903342636314966078477020981531505547625945732017291995985128865176395862755925846532848924326842694610001499286 70433981266637097872703467524691056444479138186323860842267063907882506920501537917117686793744984068622441513091339918845666592791581143446471267355477632420031120571853206102347636570532963012178989390365483462697546628551179820420461852022812785734 560183640120963851593601133947417481692743048460403434989106147265162330225665045203296458447260221670864982914300012811213724366145915342642323495399773280606253623827877248935682215755746125977444680140612248589560322063576761709884214451318071921278 4455408338463957032183199792662045886490576094505422254465017869963820833157754608644877273568685377256700236873232938756937281731566277508430955123347663079254033365497991900809049469621648913889375621196376631717748980105982044854345380972218980245711 35436714627644612736705294889856945175431801669837729084335304200029022365726322813612589037296088628933882441138467918198497573632931041202547880023202107205374402669338361375728846808959447662382304192424899430831246513647858277600983755893354992627354 281856577051923602382645428706500582244405154561336773606018853001987776940816919427583773470600574714264889257105947634688596392835727367171421440993090577539166279518069335538805700760326503494070471313926329760929937080864554855812728919736075666122362 2241876161280143358420600998285075323552225821394201715863254129929489686673041375294796375445426724142609301181062439781667661916137866052415516014376367132731982664674454475358281601250293364141459465115788184773428003711358384958986024548174524892867060 17832150775289969200590414827625890898872872181222477553646824300750660139236683127415923658282176721020313505117297883666480109814110231523004297424314057319339564750133229927257208123892949405195395615026117207077852819410936058065128908365030359103683393 141841867127771933578692346287050630999983014442157669885988527844498657069282771370095701943076071101764156655256289603738794800141495290732005842855366921787953206282672303620449459732047083983263975926779697252849787912499338191212458015990754763410753022 1128271701332481251627559237471921934659143387186410191034125888693086873652923816953464703066515632788559297886652117610090388481905528783770099155154607897186699371954888864114275549796076298526353915159808623342430369401236927159712178066884012364391612093 8974937592934746735654652674740922124546293647280947264797484766674619542956409297532178212099890861024463148958635132494421210314788560139007723326265551575674325429937214644193476124849036195080213526806132054119671392404171859983030948153600087409161201092 71393324718865302337655712874251482601225331944841244312087921589142232828422178226031683728327424435186930305266048787675811463158148795468048549682062028500768016691815801835613336274430979115736761454919753024632228977894599264669092990062534395658721672672 567926517810743851845678143483813819649792809676097511965895490799269108093745711298460790200240929727483363015818741563314497767685026125596344977855414858877069903403791992241315649941056778641605991127152328794268251899040380523607799081458839341284043125656 4517883226029408610708285691175022380538967165422942358751070060394195752847829728541561721329150315199734367975973950351899417050735132001599894491298969628195016271898356599622705055874955681411108759489996731284571419947076510108577279113742779253447206202818 35940665401763812258034823406731535163750935316719179233750076827735131333645403375529773032364410010673515108134373095810945091601429743558910302401662924367170353296585435340644106808283331402658447194049973900219529573889632978044737503243343273521328415337292 285920587350243753713115470336198078755123654475681065577318447719295568413584713025869262541906381824439658305362084534239651366991045717996541335624853891464978469800211550073007503123234181215530136071882804772067079188672600103755715389668038633793572845369295 2274641133341745117335691552718428797156346352022144335573795539659560712141862300772059064172193403476738499561011482362971924714036003186667677659933163081602669150913895600427476800329810027625769560489769698506161525775052427748674033371860547414983250984330756 18096243949693854447883111038839953739115423911741383071065147914993235647006881318378689090423045569042932051978429045091283986016960771183507523331261109976076330576260238432161136455891006887710450136408893347783289116108981826062031870965633456342505605521616840 143970009978167907021734948407331123762193065774780003185205973085557029640816351194203645056346875882634452765932811620963121877281117529953572001859854712872223337887835304585055049271032260170283620102408206553270904404130609540703320981307758198079007317570061438 1145416968776861149628227422995598100818365235981416717863955977871092708575190885537709460567969626287409614064085442278397666345718461755332604967178050748013239489874669399919250045447340037745278145048637759041677803670465474005104483582081188693571600302020080289 9113036781309652250860266090566258597301106545173671840847404682676496825259353432917156666555507426165584351133017459843964746242243885237398371844260887611043854912925353381403877231085489200050411927582194405946299038132200787514319133187452956602747246407528606784 72505426878321775554383694767605309444129235937021482837923160987843642785398570212096796497076208812931729588795532208083510895544927711104725587537762153118361996361638445635162974847895502945942283089537172877968626043998745428024490597460997189441976391748689542909 576880332523492270841481473271493684195384312607747156837136257159693990122415564827751175592659121317547799564653219263672378131091330656931056574818637659836384878126825625768158834297046764182441536531084822340688395109730414774362589104622566769006120482334549047420 4589958184755622435793525943328405543905761453392221791261701382118094696473650257692698055687891325221727470898907367749552340901947054834732102737946037141275232167582107747348142827214248170933813679882551955821039177036554292869072858980764071706810345062498618943566 36520730137766598134206705472329959265669295469098991938806348420336123850874122552884915145710796056230482275312771085664806014982498550457819129064981619882597862622422111539639197924190408596527990989053563970090273675586138024676555571718443371244740638402090058831368 290588116521610546591627332108616012618906875274081323312726597029539422741603254556718484168802193217001832078661889170647258316536804933290761042507945631968864002322104362106875754987969030014184391213228311627919618392645347509823917381448048718629740098855851929685273 2312191896137252074806381804999821001622622561344961250616747166031662669205215308359910222730946046541526423105246166509921829877964221343472071414040228964792150219158089859321480118967016461962371762864131772457728807804173782685757213030129927406789292399361347976694646 18398290686438626405385877116263970915225421557465461388044958620188975273702453874667170305476809323506062632528627468844773786113878572759093828138673116533887997942867527468499541329006905014887803806257174314194856073997412325873046889277509195074888578339574102748049732 146399167074099851258137572771529156331302811399277308636226921448146363877136728770753887067010629837616788248758943480052820758610292613498947962208220562618812464765683640596474315783085563458980456054561887996706194600065324474132676434053828443416582223285415854503910200 1164949810478763947599329932588541677736044706179280433982427155327466748065207942663256643637313959829697621360109781105350727567416395207920904790099510935415591637894347060322997189089543063652726559981173145375077107150610526438645122756536759433004022705118203589594282547 9270075174180179336150339318878128253075427888967905298601931837570118653618587392416297641401035775994415023724581624050373227301799877947248412539666560265591636981557826631730429556055252012651435440117823708351657659341099526382684605012726746498394908969394791820183500996 73767774463578166015006553275411098904504533724105450031725243051706846299741774246753929955528031002635544225836312024578369554989706047330574317410424464844053709874184793481815678035961615078847215183254612211911413940582739528607855538295994530643335693368815296089683930119 587026144168806292076924809463955172723350347402742137822216205516376549497611156961721130167410627384454477966902033976209767468532066134912159986999970226956501187087370015234359549512247126158061225144657570507789220311022787891061545354520365183486666176823465836172686854966 4671490789270793122267190508291907581017643120822710444458330191001705938315888201443494710429456953540265332630137580318289855627846687451404064314865238314712495009115489063677507741116432263104006112556689558617761750593481892834758546040331703748506529851451928677472935843889 37175840373603376671112274814519266103753644835632256092307856284531966851589724895155273751624050457251955325476408313918676865087219383893470771229981733967425206719575261064865355169066496316128495715753571606530589625139283388995240653544589376989357440037388409407978701204564 295851170207289621006032255589801280615011220889959156198554762452645336345574864335525987111399500181676666298349903587479258479886371195917493643809174015153864855946971534909989684403719305291326556087530749847224364758369744526895341329535792568412971295968320324539337721661104 2354468810973907947997126443038642748622424741173853663822209241620864121903524863697198552028201576981283597221172067671588233921654616750502024020545592343016544883920052606377513752790417556468021628018193153900668847043482952086230969203804049858190323332311318863023674920720208 18737847544464885335971848643944585341751378678413950955629980932330745416312763843675803826123296966583584042256642014854603559179142021508127824071180502154173889515868729056514126347741994540119494396283400207031650560039578180649544567397295095640537709899883611277371900193701084 149126053528202250873309767364087642446776836655556228643112318028285564831750469332658655907651167393140241342907984231256363549235494463422654950614531157712697824687292447693361082142496420565238162163691917496324345365294426636147314902441933836874783468734060517106142200535249790 1186845996218455733776001437510561746290872240754055547033923800949833997324329597396844935374366147575614626376186728286447817324554102687104281140031957820482558273381240495457954196856449776322165338864185948364208352376298193553106634797599443052451050334546546153384190682359879720 9445874913737803949694864688555443918641239285849541227688680015921837463453379703970332472650712923035122382371749833294241693824464399535600575960154497277275937579967815602595048767454214247490875138966522003978295470921854597733702992936362541982449130867866888457083388231052077010 75179069311904319138866061241317975174267501709813351319791245624789159632724146909005403163502216793974919869451549924680480514372141764995256001663876137892686824626573868790584590928997131553575511678743822790226867786667497264145226349822086789126465903082855200774419881025314796936 598354540327129215233481320083632219162972000237705662911304197357509030626185173485859649838269262673390016109434709872457589880554049772695483219330672861107031015800596859890201479247689073376965934763116563613213789156911109960451920457991384385096205167783727310152699189146538659522 4762413330676060760440857301305447029511520287186871387608050441315045900205038419403800246899170494483125581918581849794374921845121744357010718828529792732868374514868809665685665032688663795769935911535709616611312991439624403295665705130744936034742144317019383755345797906121366975161 37905513660773044177403430577673663606800372798730353780885920364805148501396154568897449296580989461730566942074841059825815335020016142690064679193731242191227444373738817162651614319452096499846173415275212747674544335162894940093867586912722584402552043650289485385123745997823510884128 301706350902707247193359740656149959171150237220812184215443176329772295374981364585323363091097870208756179453859671949982809198334172302022881378494648009714227228598860475962958335538801540244203933773595429976478691541817607112967592695631594426522498763921134791250857741457807321312174 2401448303305701978426280263023278440829892725851746780220459071324498984915364280543071379707653074017789786177137254709507183849000569617526645797746287062483447424927099825878367787461520701799688535201662551259142636478982930225511622785772639292567290498242548633771341258321421236429970 19114754060635483044306164479945895969172911039871832267226015920879533868670655640522950657839661695195124333464762728817806280376158534903830332521130691173899342168924217978449581107740874531316636960278812669802857501785399283690400104570790796003240030660290318820025325456320273690258448 152149605161255786557382746539622428048834482240651046025913008231830796613786090795000012470732623005527719947026552161884982278757183294758684275183744355841924770733340326087311091222606030281405885462508327550827410274515351597507801241961538885260906294288010740712086923937593642330076860 1211098725581573700969539947202814244207545737100178427953989228562861380552456344182155723187519961534243440004454984488873021806403574413090789323668929984802576240071108606317818462739759834750987931351895939531267489681801479463141126435493829595277820097795508510541771434881904312594197825 9640394964126530790506293976765459140711358912596494943052377831341945624511763375311984104312305380879033538229395093949759928393558839447868450938078692220846946736074076475930086978627663108954680851769997755860710111676509088142480906864321999899711647551457143101327283724510924696565693660 76739087451036105216101002459623166345901202466008326607974707053640237438525828833861621548651230196067601293785107528726894906149964870935245130293471486824103197153394044177963786231586328000132633863118440592914718874132720455867739067549398103852194476818978140506675714170082090738362257062 610864543269002963570887182474510170061905712214121034249691697314682363632096562464886116783669477901963344664167012474588121861495389274737852031555686050908121957501525849851724520668657300510861971597034633324011346772666993146105231177979039282941524888037941972899409887435172452430743054416 4862724339924608973990841869452532197772972304381174498786049056430908783574827501775366143861526173831600489950601398164673449483982911477592972695603814709953307824247881217016018595272441652330489799684753298956269235086288971783647229997788299144413182434667626053299061073239116613096304657302 38709787824645094518391831403002334950371645024319113860858137564468509005318046972878947344644402874060036983306599910709625257777754691532167436968887731371917809848436588383223827099738242200567195786604643183043901393700374532215047985193508204255329797539092625095877462880645176945247307439828 308154348127040042678179488977766223564289873410979755634512342780740178751898305954027593636176764653316263802839977661553161899911550474292953476001101618418739488876901400350357899889857786571552701480233779781899471975752821497024407338629030817235276692674076633554004717950709898156000509358336 2453138908921372901718195338675737499203022356302259617502509690245268649887623826193536479578907405038158861230741802450226832730572011073754001747482296185060355132146285794992864245231988021617521049306715586054542146346530793578016058267914525976237881618989546518720967488257854850139722089185072 19529102087971813188699791428017187297628920326628165866886631106931346132116083493518512286116177147075717686754905757498257348230066202853510518074191513433261246100012299730228277179524051016220260007181090181954513443522134794706592374639537612940023905032426488092928641158791247860149118575570239 155470740726316195593287050059045069048736085871477738751238205365198337163248081898102283862787792316988208709278797800514364856346302934141511281903720272445486021890186369341947095375226920268403416694279522669855322219808623492727130006334522882736937130404736587586460081839760559558852834503298590 1237716784104756308893988143995989318840013848949218482128724557724902945728055245834493474267571410563616540638327648524149623122421484964981980984751927272551360367088617147561358823313511520265135458177503639760507166072109404581437016331573375638688226848196196912319265235531963770736608560110502978 9853716813542873505915789380700719304823628379911768695324150747853635800122835209965373837658125968101336162298024589896338584460937214580355932949716042637791428334916807422609625934151075043293142273351829669475383173658220124330004202002601746736134458710216578755037189252562701510126918270811232524 78448568231925319652472219597626200009276267921446507282756149234289838971871753978477083301932468496436247112845520433878462822395904477142513778517496769509665947123731558574232861257913755502017046209553386938296610168581628492719668283548901030805132083794742751051284844428524076464910084969886296737 624562750311908844104404805783387348508085925935741207609822321198518742569600355532336845762662372355755541018701277539361754144608824913571686292165953188960488368573527955940553045790974092059191455504393726386818159441424035423467763718334286729304890187451766549945566531741570399593418638643474452638 4972481922585298144857051085921295644404470744111006436790612609576660212511097206892893678527471661226811477889677108421998873263204823878894311774617752490087892956751305931610713439876034729710691751788159894006450141835428416197573501774554803122505800976080929295750471915323038697532212063701709233970 39589169287881005004357989355306361156650681471712458370425379226834678084666893167471985681063489948299549736612827964786670578170141417651465509803875116493898145869784229324899553938603436400087363228693284257695966699912155693415013060404009855458080857990339025259708080114026722075252849657779414757186 315199537786081237783547378907075162361116571016620531406041502258862371355279475659027023738139183713133400142253635338134326103057300214736738470665780681449064304686212335078256386909086087338002313591279114017512562540485532020104638538741265848013529236858445804964972565617583800406793369668034063138041 2509578168053156894832924438257039006829260156510395022927480699080981967287642373044793717019773669254858833580783597558525190644625036591092573978039033440752333049084295442797595378105342460129942053294055030057763535331198578023301520787421676716194737234956790458824096491496016987941086404049996918811134 19981211718941580673069292706648211226488161623768489901614816573726640899917029048338242248942102159737528835226864276675323501944345712413638556462622638980010409592596109059333121116848759610235790657101966838433647527908950975293243972473310932841084377930118338679953921394753704633107594510937572981164776 159092175278374200681658326266570056050989098763598493925191552157032397529954099149395171802006627578967076168624047123756018828334018062451794286027030588954863936324341311300762791120064487924086124347807012910279736669094733718091177210607982678862186290502789772280755555238974599368095143810878293154778828 1266723096705088399053099322242398333959821678085728536883329678152396829212125451649015694452862805482451405988546880961921991035658107854349487022106537070987017778499993922510511879073225812922205131237884734198651229922404755661656502345164250355976078005923300490588564068877366591166849124730534706086964968 10086033262640389414458103492946321426392543382176243374478864779888198445550161788620991966108721758811732586632788435517431889882982572781508368202749868609794614335759342018627547659077270252000203534920187211994935861859434431259922999758543391829314453349677607926953773332227472862084174168706324185223327808 80309127439960517358252509123454925900875252229289399641412110289388560117269017923635019458322004961349408779799225603628407868696832011868709844025176217961257974748306278420434306875093929302247418144472966605221794267186152179126480630629980183201942247082646682141724158576843994910869494706967562084564851125 639462660492643253550749888438181791625720064907135780390270372610982175562948148429284666196634353296624369452363011819024627108967578982634415204381969058063205343292730657080299012980119855613546453035550290061286077641043550621599928517870708502676343729850230392676345133323231118832086545580004157865462234186 5091798541449767798301891275673578546418168442257121085807702366000999714915369916984705052955549811304155134417414202076058519411848618696795713494080568906383136236772428230731195444171414217188526953492075902267931051959784137728233604619815955922792295663737127498980368470178737590410231611393903276268262808777 40544592646101351835738640453353908463898100709513305721624055005293475916428296813822036770471716116728109089647151256078006559640450727741345209322628991025929216599206701512071920344803659193337402393569316609873695563834681907215746921715803566489299111426884522713264725217444726684761942520923013582186140690868 322849668993592896463140087040321380726091143110803775655313735578098934587479381669429758675297767490001094850171773646540668091655858208470194450684390625127962557563037690549137217885022865009070043980628537220272268637461729759043591599700328127989731354309538177791768904962459983002034362946036695508255701466055 2570830199330612039000777454871732028311245663345222866068494588287992619899254773714330166518050090430141609499829137785668188476718749627085941070429647623788910891073581604923779341437288230852508809571394445815883756053504089703009069821770660027234321297621610541559838250861602731770166141552104077534975473642330 20471612493969674594648403150098846919211178254764503905329873289486504763980092900627557302554842871368064588674591591545497300021636418641589386931193044574352301441689996678372230953478167618811544635042447021004187559137171443735412282190875739678877297950777268472821077881899099651247512614116605875030889108252297 163018274636478799387538615608447327737411022742684927085711214322322571831387597062774255874508646751821048378233675535174810364777298036243635916800027574221820330466921065553334493520355630776257514443547895934383377076066198392389850242529087737511504020575952529971668969668879218139748368823496894688176384512841298 1298153600635865372766027828370203270693545490397559619102990090532011511731948545071701994947740866962614646934163285600198730835002489271587149399685283700640438333247415004373117240132578975318714831510784213966471070863604885753273390820624447933878170841078844774515382678476092048626345265037671275944040034051407807 10337639697765090055592577227659404635677844701746420652811867072161210098973456027705428596283753661599734460080194809533743763506622855213331253164152201759289489702829983476952222416815330977277693250422840245005805126499503147361662720171217520471456057599899734169716209856304811958419401248898170882077129216539058836 82323189731784420136476548002036477970788143920114376230428331124511877665511630846983212607885142370741897819681235945947634395205656387298485783140118816036311310298232522109260542384440134780969068665376156207796919295480302342274410779124834033302375818315273764040655917265448571834004547295426189092295559819586468750 655584151559082953560369861069215422431586723273726180318318392467360415724985404614767641856060572116740337228274636319419968401393845616421950232850843472900771913643647145754888743629377143544970534541503807821763812981588681023731095689964403467532397175768655618754736626387074081187705687382115004911484088774346314294 5220836968486167081428028807809627074441670599059504887992832026835828260167536937753963292626247190425746615805443404811578399247547232867099797643057232746136079048414827609522309217784667406220868842916619203656662146913751773700621002193308855231293947616892476917961255253316792145366911083046575564187113253158608101076 41577389340964826303652670478055525177230297785345728925020274383957008358038191306655065206808458680638919888936320442292988286696861854950645776120255723383448540772868924825795063976656313757366399209402184612717663250512026046209107212193510734104165332794803200407892415366111847464714763904266531875399106932418547007244 331115621677283742818178914846160423730592762522726313096432283933230458862835641244013595302213762703212135591250512006168822073427262294116017971460923125476502075970958197428205737104489720846677301636639102988481241591886854592122927801419179826403712199066713450793573631178207174183215539402891750995570753303808906929740 2636983824550610688618556683498877244940317226831786830185209736125135691116769201904418654504341531990185341727581322645309079241656897519735155187010029312821191511078972991494617407825620993138329213981461318513708412387823625175833079929503689465170822649213662381457328558066853219078146297915155704943317583664255529141448 21001028896630917765607597858132172656697572496453396745869461067339477017051149303033933958388821321423391180443197226278789311636507799178683257127163118406262850365172846128033505194196801721169024711126512673194125447280903865194061335122149998857685214908717243025700569887382076495366852104566943168553115123231629622122502 167254943210224320948050614745795360021929324149485277972142235516651421129482314457532255845240681490348505754776305800319455789648080206493219878130381732672970742374664622387215628064802382026430509933999641620395684075353667302687622560428447187891222639935952144635972053137188597161731588174506966362170187041056684849120146 1332056378154135839889136009813280196165095951656900850440447849246345932292073061703576611997263539249914710023341088552206382416196671116057989175979934183455587369060131999395732788644221246554004356457593877717509898168722511002983281458892893781238938526002569343261911465015255023990760307533565120772768339337765166974726717 10608927386035791206130942441369204792995837892968929290518378388076388573147005067659357993263626576904185007752022832475622457186774990324067695542747175912513630099776050592586399824723070432923929284784331644696903077315620224164389858907357073722469048846776591584864618649265009021961310614844532364306677306874251741456756496 84493936813811841603326025670122898546247887582441880397980417373309886924148654847841419137752029175106809414247426975128206496690438310864719737724866979366582501041516525670281747913656671818963025609701100880769358618739418082185989613364869676598694252530285635470756389964080966698595865852093951178053175354733499991026727868 672953079537332064971817128727331708043688644518648522666975269472002542327840638135015367601669202875263465223584855076471625690657925871853994972603271615685640559140801941017692836468757262843447953502262196327315046730182548500312406127546633589890817431489166821328137323480435412979793710634300763890140882990297344269744316390 5359807191352121246472952728846653859261396310419087944176705260156511673364983872870221661681086281359599060144237443748207507849114608372953113411715546752388033726988903270739127256343778575516050311127540454001278416334477967701458394086203880946952462778873262225569059719865382750849880777825846305075975474155779521023343360961 42689263767729926823802665514279320152992135413326883418308104242156594111116697823260650137717280560740429469089705427628657347188978645926536416804209950655332737017567655995684317407107252738592244777490259672746630840253139707989026900612871834259467214255039994592502542242407322154127852329161847418036896623274920929047858049554 340011222093923371714939953677680003494097335204388223458345865561828646693442293727416775931447288071922398093972044359221476489404462401463382675629531165463170802844959340669322250786154399671629069591558418979899345409899094985764131210402618529441266878036505217247950505285325695017796334185370241367021707119197373814126210825041 2708151144567369653079412900790852060355832260381071524568648434449121970661669299469984152279237642401498605846216764127676797145942275572803061575093199697296196609208577810674226922483116880383370433630671822191985221213264524105955060586752987299489740279469359266743456060823213479291614072383488119140971748968620940008286584305814 21570369363525157321110489359118701944222325431109109010071005691894349515321822265022847389670890920602886888474719968206923104386396592736029949995603342452240173296369846806925009788699495891969290014564076827247289048582585413344332152122839295957884321939315676219013152093436683252336012427430870520629368402763379227417650388896372 171809539212275976739976619862402152301901348535680085233261772321009851357691799954823953582924072758216574130448558643584371997586721255558521051321362875496695171130276709649004463440931797476274345345754428730724016681284003377680214658399518761634471614465312713998142701055723580582628096266748004153270277644977309238949461027040510 1368491002601686196276469033863685401272161514701339329969640109492201502620898801000979358373322518656956649398249825213844754294099903379723190680996856273544863426594208762290238501416954080535930965646947074856290558135882580814647343880803490298612414128371471460558232856488678104908968270680225071919124534298598922949157976473981880 10900378433699233326493023913823996197344704009555252965923775020503046812884628888667137358388725299775411066173961510943776749523224018729154098882416163141283178204996807829960014884704384190051364430313561358988054210671598793318582363534632090166583190472947223761307191793024053388067031588175992582722781022971141011096568504229345306 86825268585259246113368283019584396973696426544618972291445080161682690910771331485903713327537244245579902647713159271985016993343325254028926650034341027138098150500941769794218098496517980738741167888867688264653803882560612023491719178878716829591714071727802576569441939123810582199169327209880913663030945330933656712710038879287352367 691600979363342860065676541679759685238158236745292580656378106282659336543744620266287282364160272976851532619567271178923313417121845602756652115671674177262230887690956253414583007527892605831262315190553192217768614585689866305845032250712715863859614204431479216632698301939581407090655946794507770300191090338337666801111959008021528998 5508964107844418618613982940843463388246153082049430260961711543125090905111005760603649842278705183437498525369899998604136528729140510821437378300940978734263197196446925885608763830147194419508789293305459832143411142175786823977878414534758883331401312993367169372821707355399021419805728391351648136700926914348610013533688059971207085263 43882275526585950081568182530871044499904349884207992652280336100325906829995820809005880824117168765574170029297925975046003335531942879027059605117669814119932341103579037045233354276180469428207348287404285528279861740961745120968813909482141001676894639132379360282245235213714782273803896612170150006735792135517751989169071213132641766108 349553106254820863255581089759533832301796584243146901182583196306546797347154577860846948998556598221531190380072577780990323569667043067111782379188163306681841345195966683129325041373594925542614181943576945647080392752260846671194627693494538073259865676019195775447154969385450762878321137660788843574185289669857523811750268360334319945082 2784466488841394682324774018655914990009822242103401112128685412693779439915513717713499583644293423999942303897718584867352189450526000314876037060417803787901198191862772743267176431211046250275305530773602762746693002128332487972785747387381724039256345040626143006819328846323072178737992771695676159538025784980234308729908611204925601308254 22180718208711061327222994001828050021072141052117909242770234417384135510857015218749695362525406117715984392586707573113155854342837029603205737054260640345743214576538734904282482450536664578719804775172430475261638648756000787691611641830954434718236261333403150475988411922152301620276031166486877538993066131521395885606262519417651319973634 176690812607318678374536288687897643462273407549035109055538196532806543606836581030671316579124018100094441847021089600359343687133825483883183630132274166375743052391186940176945467462830778297080711590731314858618879310781622718969008694066127664556578856893167795179688611299800127335649203666003014984650289850687998285863803512136907155718380 1407528061873788730849276394033268521965117307116397877508248374283267798581956857080159738398213937285038910610427169167251766583785529051245259980975244291114941207608700958250822325879214143193186366080854760929178718988582520339510492784089477818118243067233328899635467161463765424028495611014490732068041152822981576125543498848953215981906844 11212562128617636539431476728414935851592103161126878469825564635134633039067836025239329217518262285344385672625259314931714813117382742966791840388809552602095108657793373487136371115079749759700302922028951847516017591440330743568687810778222373266499125508578234304982743733930616085000360406751243374404746066713346874935995323121535647844011322 89321775082682812017254147546194365453541883149744068672649442702283768639926852553194904462266048358655194995008166366736475446206948805674239807538938085091952813773838506400768566920875954780684331565355392580413395858807641027322711285585621321627005052272999409355445956033083594541766798410741238505484094508698922994050571352036107418308709302 711564849817776338603643246670987266050863914427180205974681418678744900751099498121102761615805675136842212029090514420394839841780878671181203947489992263312496911101514909248865221169468075725932798972315940541288043686523288568823471864895294853213663290241278334640090550692376691239021226039454348312901228491464642748001867788284634428090932990 5668605878396610590727337434778833758847074900922652544181698686870575710844165985890285020807542419680855362809990988035769662207185815965367899422488624922420309398651967487234797197595531548083220401165532564763629263361256792381111978548613976151545139895730905221929131058043651739240910890527675201425721106900778948427278966782581012489264853553 45158826811160399095826606483865498109181860538904292963631148585775959980820434213850467444401189782801443445445316624236846308328964146259356199411945103733025915717796482740890584868554630278624401223126408718534325954772380800293151109984607564928316289774851453234120569711792260290383176400645390359829651785571710202260369127531533167492845945046 359760623460639638285670175525444182416705012059434285572035480542376383318704882878109207712931599911705276757386964108383948038496652904744081548372261687740713025088433344155568766190997571239785265031309676495123323792551287308024057507962661510350314982349337839145930975838759615932274145365299631123726542343599919341882866695253410805806580107969 2866085678187752839685589599900591308032260272905380538934002800013067103192757728506420542572120585340229019494198386054210196517736794614812904451963065591963714783264594674764631138158360256866509693777243550989028112754261785166999500188223688058941339218348342483726331075284657704777835287041922806463947416464311316695808807268982602807999371787642 22833329994108320404080612422164477072461355783600142556989550230093126768154593489741417352525023858276566018272153032317762365000299139506765197614404317881237959706110548543741094778438044929199964443615099235156252760893241682251636309274575785174957358278675956489635242651800504487409390838821010404494580507359305744221945607903174542207103464402512 181908862165514194229074379024505036404846193676005082197380462047478293175726846027922917906455125035118163076150718903689006544403720893577340930074280379692126654060063725611740261441613729049751138351090738305778020188853571584714050136806689590979230557857476824085549827547777637860258158853856307029675215534016948729829860535907172901049220934691176 1449248831124849115395688090743036165671626388104654812974002690798497958160788490644437086823892268572812540677802557871828072033521749347086802241915280229207073080647688973654359492825719950985612893900496286003489364657462188585422497715333249026659442281358421080981930885183618946550250280989062972509341739147991174619691756188627671606586261569108594 11546132448685589394408584090205341577980317933010460232029155364202524165057787494519441683636278466113989665118502292047833005296294730029880591131463053847141435894951823494157087815498465616594332360799766240973494763114269846362956547738283978437658966439223672157932364339493818033053332384912648653097252294423063691864461721642670693539477778010588682 91988717534639318434637242376709212334148599805940926228740107896665939448206024535969021569175079744309259560312884836064377102718640275210033282636203641199097918598800974572234529427325338230912964020032178547852941422645616567430495978317351975564067778428899604204569590686270928392228866991282754284510584313680317303237938650629815108725546961896218184 732887009653086904895873011752782182688158008647685908860983329251635938813011883118102866373547640894127156020551612196192835266544374745770822395608660518330200533754867847225343944786444982328371970859603276665699463800398335860357960721353168942734101785632259534596377304346560922750633265193368766411690216840834171998426799700034518505845603291087484418 5839072834989972216451824216690868400280555954914669042438952602277876767137192506739753459207013590702935901367610599849843165615587739345445372231130650161373879062107199092439394419408978975728621790767757440596961362040039562107600531489572594779073444967649398276540751402344415516029615142062689349146137296003789636125751712282457195716764469459156590404 46521654146328092553933152884751247843933680598324045061673883162409596619408169511838745437197538788879075214374603229339932672870066502832409064150428830976887326602299875314557554713533285092900342859138162552011073793308277954748068219289086831844353235148736647240599104356338285668330172801429582097037675684315865150921395769901279014799537175643624889742 370655773837773058518826236945050863555221580830157907945808829467352581541614219024839124128088336464810229774692326726875874256487282786373402838231833647812976989473801206960566925660994366792506193454787016477203702198650801234057249485953831948230188639205800607940692677145651997159625870875337027427521807856902790063431512276549373097475521783268278195934 2953185553373840234777232139188572019226022891264679973614581730210214465636529017908942639312668910427502475424392322540249887674865294011440561451822205971276155086928145079613347985999696804747839543414484056970838475683521716514966919069882622220684153614710748125804007403906700879923943281878807583981383523713838071598603349807708867152593937471125169491546 23529625978786618334374937698023508870048511556600054721689339637552842849962628072170668114211421205822054433500588541717631983850574256922200254496189454217194112212503316025086355357692017708616498147633870596081065969772525727371898324252523368820368448068302904294519892124856094412420684961914536737908181557125651714378412786860733658313878785841552197824431 187475108774596792088350488054702175143999111210315429428260802670431360013799031012927324842568525569052779854039689868424631499431285616593588301415793268964510690956186690008780713682459377610443328043777576528525898978598630279111298812906916779336767119940117927953646468506623705022970537049177237492470608902512769141943634762131404182376494002005924214754746 1493745072647428344554536252841585175245728248397192907764842018469957549010316486334819519779991906498193110277286278062891790634774506072072843909749220744387101000681178071563595873577188419302307320976811011965473568510460266971971436890438892866122935298517735320542213291859043826275653451673046641824432558782697787552377120907302651985664033274785265499214247 11901826565118994703401897474332900350580540238632868996986320475992792205324420521182635003273610792719009999441881547619651347643322584295496810930760166805452643712055676828517867981864329650992596680940640006960515930796917355786452794435347243205863195295611014729800449672134195337027003359165443650555018451085339988611342859414417164011882870295225015284503362 94832017200253761723016777337846049698953041849471659392645280889362571040344665680963056884102118817268634758085615066737374261846956560217280919603646844600541758273801936719909330462279870787043394503871516478953549991465944503331655431996802071827559256797140560707818933651136882158738831874588072844179134714679410499206941518064123091830164551781602632490481942 755615014630480885574712131233779463799444814157403019276724194639985142827781725984481287301343989128500361880723673975876643327141568257418558938959555119093835371773778499882290005015150695791806184612090319411431833168724448654665946815688749060977723126567034597134642853656729983616646532268755436273082137535250297097029571271589253237864707258428608231969279656 6020746866756387576533674884748062847574844591314210512965428982796069918610851978556023522765390619193476404555809311241049391450277461676609914718242676698848295205752573749355269263279632378579036393042558742991348443308870715398278697005254722627153142905852768127585779073089780657489841592486056716895116191112871527752376180771017337594557043663600501706335786277 47973823857217781687656198391436852212387630912895459214887566492299445337657670242075890872877892320406354501403738154814244771465979935791382540166932070500306997718920631806085838330681952676580139116558931001912476379884778446281094736875621513061681864210073647462155999028805770942429101065063904946542904145690649275482857407442892130977102886565981339590526892972 382263175083899612683878316248234014736097123685860754115674827443920317883546858942491753107115982303997197490768273498215159503218064495086274183530405436941583354933539430837687543102423783711199753510236879203571858523052110388656751636934339211435812763605024228498830436201841904511968008674699516205100874933272667065630209108588825486098234108830286148765959714806 3045963732409417528950991687136741041671916259143039185992349159180479039602835158454542747427321789992841081083311189510689453962865588122147932931470222084401756905573102238389090058307741453096021758922883940385342753662782094480645685661617904481547943149557998140639254039126684739781633972681150970746959464063211413593784390437359536868949871567900577891463901353920 24271192359045704140338690389925163080138057064875298631737207412261650339915924804560957275144181732992515706028090991538475834138357193918935797142414127352289066067701657937447111732624826419353332626133949089840906458070072745745974917017643184347043682040307591495104108930900133120863611186004593183675057490003853536936947029334704715419755590221411325927520328271923 193402282776876777394570014473733275943474704952410816623434662155700829774020920944076446939114999462249644069504854156679984358103998387243063711268226611702953415606339767121975974925926744480701939408251252511728062174429898677935255055375010430778874838168404063945918901965288520039897851244200072949093274233877169389527130921681087685984156403069097462557776395478392 1541118945605566204280756110023271358977460552150693967473079699718946354939672838755656227959664056253171462199490757114505296640343436332096556013188683061457528583436441833428640630363273800546793429867942681012890043737104001449763599002448617542393876965709733669336903792592826890565486080592169056687083706447010528963318280866041737861747359669085222234129920911714554 12280464206334197363138955706594946629718169070159717385672521493524115230618461812083836223383395090656639294902937526120085272094157491640643635028677138984884471534193159038799340312756478629484049214911211750643904685477910462618601265455352969643833161792996648206376791679794039869307373257937142351742430541106354050302795880967225959084290469370774639815123979052303458 97858250950556030824403189137087747447594738839315242655286131535194300903789243510272655179048474596067035437345967921374672982869324335929120415772742128053529547424283851783721240090270389413086202902530010480609040887947737215945937422412562125731327374855328146585448270635295738452303075483367185299769086866736677935783113036858901339465680612313183742371937673001839059 779801627394472786807505991413438508336380165370992688369467075265452771516270365308914172581573097961641936935605547070371577666952488258675006713725836432703894665635394998565181458300234456178222914085167777747189229511136736384346908817395333477960364308529111855151565006273536880221295169928363582959806651505052428317676632833354934651062528599699914149791444435408271972 6214051219686757093094121905666124108729171050607290339936873670491787788626688333992908785044264288026634306685980736328782557615459550156211882696019358102415331621923131176010219335164936158679914995205782209888735126323215650396696303574619695735816461513956161942169990852695150233872220423856385839101783902271365447110011842670405482306550979784918127253369212695235102477 49518730784173434361276085429785894329986691111975317971036128006370304379525683592082448916758173174289021029012576413541563117294079830868398186724072995375600811823769038253374922307443529897884226128396520268147083584912847674641541673017130812047726515396420431870664483269013129236170445977364650643442302299716512838859740676357998375207307030794605263849618238976981402074 394610054660599431718970574279326512333813150215961787889662102623591576535130993530865383599553361305722334354057826592930275261618981261271734173133773529296797211725179774499046023309186646757071908231103305369018371289689071069098306903318777071498033287247074192761463445569771220869868175420536071897693913579204337969799649717382002707802405617013860862986479152363219827319 3144638567361434949448177596336310643957213917762104487952473788620052081680524524291555811669917333103091365651497908782575573239928618447212632964874356312057471504700077297197789967555580374444230454300586213269814782954945552972806580575249827531207018885942154426523111205827320219464601126872226185498340973848928916074879084453543145895890346295401399487609799284404422217122 25059780073156973738770730319534384172905262504805161456421047722325960793386877292887431813838140256251561388481964110105504556825542984876212709261921071512796609127469447273489912545530103595440969148984960291876166285996657929801276820758691683686778586294535768570438114490466414370168217564420939340922316372586010491280243335699326293529264408657780115617771298320300235182053 199704423578051064520665411727629489657181067287291388151930616107870792259782982237036266825092183361925848528932329629743889935426085103057013303066230085215538232037974031891718196852789787118003551474567035428693420450664760626124485873626262812095668068113145597609970814763967613907238529641020013964628987684746527381388546485601404161144877427921140863829155447619821168218854 1591483012031566973209640748712441174602776694940981773363289500346779078014721238730179204687279324009874110995424401918305597318039227635808376365792464418619697273732501441118564759512311631468808056475688720506111713962083482842699017407047247288570551739203268948557593590528309165589465365561664321089644607672449671637436841530496325969254077465951921667435113778934877915094404 12682947777057632314850763720212660882124927981514970821351825168860462884536309950339650939034477743977005223544729753822519546406087010244488318613336304883844779784680367061941328291667254015607168040094482012858700327100522215262273126698717030043760687520536674656646336855174132369463433848455467264029700264776458593065833230765176508651629004624678798035693300647222909714432914 101074652775835049823351097934088680532336840408017887738352040668165427231400618554696124546201850657090554546650809526099654395607663478625027352163255022536328724079741353994121385665951436785291986355223355606283770042415977211452073127389539953797795149113560937095541484682719997567058593782044014426381607052536202982499146778955551755958387558357747067581291123557519512227384663 805504833853753485179502178401445797267679820941420254345494551169311991715034963740455735318714004342152096270338560977556184559389010843987471041652802767525580829726999678109662726915438869753273593321926753486553847961641946536781799298950345537195349543747237268575750925232462913308629064806505761387323649155413294023914791198230771500534250833555138303686894516612039890357650468 6419450661367826364729403196416407339327142954734714777538176047153711162597748598298387395560161089565226556259999091627766080333696195756358169090026437434210985768869405874170531667534885663616065550868091695510548569404801023727261582941098145813736915178784861375092405749213937711244018954252954594847261930239570569547395485962826758421047608731941781435767656647255093947363614123 51160099863262204400207008470539735228106353644994343915915944230112320975856009813120044345274888929058539727084683091324281562376844354808666646750120633439506654864483733248447500647358377827389693546888916554414601634093525844323698672186816746414469755179155925204261620730252220155681333648590298534381955933162250167294748476689541099660506972599940548440776552415499362416593432486 407726264484521123906642099157267506257980782973027173175270196226958880199233665836544878950680122457101083402421056715284576913643874290644039907059164623627452162002598918897954278586596674935148830697888435921287240523199974322985676902628930220837261376635417988949348264373680747970512233876282615413852128584753631207220946073726506890323011165480940028614304045915611294600338165502 3249449277840978824740093995237551728491334913322581236402007603248879707213830810391358114622686697284407067992243762754344337246462340711850586578295220153721394812155223402712033162935203338240994143109826337894892068871266256384395725600894101380597430553423958464658035895611395742780013701488155004242639513108468997371298527135665727822384966139642987438900679274151477378453063086230 25897305993653470622200262614216818543614632427920389660532327642080992831589414866882282284881972309005779228739783528267896498539457283841963549134262981170176344967611416785146500033316368000224979828443733986103773056481315548515137037176177011768456139544117670235359947684774151119178790545670436028396825529369005768398250204857301076162330370804181069190143806507272575341662765166028 206396890155225404963617183220105098010748810146227829658671441610593118855150980931979828894996417971147679809354383216252113602432528932519927699195058350125736934435856331043341099679292932729962641447566598252593296153478676472340966579223746281418995626166965194762470851255248546912607013178891907480314388819390925541455095696425063624343748006482059351797241974581590359016720418918062 1644960328449447318926438083518391810147744269449225313300126813594920940395294634254397562444953899717066728437011686650611663384877291979495203986647748422551452639851197735891776429906703036970947845689043043833975579516442936841791948561403964512409548840475485396553227068361973475909533494142653466959929502980311936937797328967761347716389842904729193569352012331755188441749073789120060 13110263150241843195241204173422908816529658036397815760196910667415232262713785534043950346514717382341256646523830987260270300012805766507324006945717840206340638088577031265615266747431246707208092222629965115581191269165322477980949328872502848800576589380307082343252165031322910551231790196317005000461355526879955703381191441599356244123255579361219261569749168238488283610913885916513816 104489120580348004254967188433763091591411431878040080715080406160009750948386234497090229950263685562282842773080804316578978172829841961169665268651871617526294726111439409291306932124151311777709127518779181329540666732168292659612274875124855473278456966982198571151313657143877935479586997685342810006521572191547547039040748643301613961406313022293178233013679880009685219979925545606069700 832787901120026215240658261281980144054741585821462006390001680408253105251539684859683104169246235741807005104721985074813960354242629586360164681835673085506604955787320018303530960012759954125668220713707984983416930902991269784997000723063122667185303982508701099609904983715170884441826108134388180554572747862097799581486260641396372344218589318918460494781821579530028561925930459114255016 6637451972410412318605819600718485305653491151626043400747798179665095375026989810723971926250381448353902023482281569331551772617139536307088557004649317653210602302307546966750437214173220636004986693777372962545514459754778239550537173087711020677320636113346494893382773964132157487774348526475464838167409335860204311464524098647522795736642708015126114192435550545294547476217112241338487251 52901990275336891184993839192990246740295857585061041707822062410038342667158600051701138484058617020991467428244366496207721877829588575447966035497326920300403014372443043277542646102481461320069502624413534971474209886009796730498686697694819493883474865219768695031563136995022148280643188478494383950922510687609716127776377529533749628006473463406339660089937746440681533630340066653615494932 421644315816515815064056917035816222894870453864018238157332621856424345675148692759949809663520190928592595285391199053950877998084777587988571924597499227533905221434284762106980602142938110426099440322997999736035073147598698403695203590014340087037488863917018549277801470963785058188545730171867087530117293417198226080585773109938516839010489252483492091214789797176078217340604454241616306812 3360656243342855550950469598992958671364865664625540750377115379930217560725719273623688382405052502522168591509163068804206933272707838008733797340108111667257478697387930884660681161405488896024648459247014631630211241942735463906073188849483613624415566749704939088498030262460960363867112120586496682705102521491150055647009961293537470928705300632392043903431743914083485337772150278058987016474 26785855369157017624169244446873261843047227412074739327192521697379747256457304041082729445239203183850552065436070085738467039712463806960395365930143614750049652860250443172623220855963210933726562013558676287683845174412436459298656070638293328990744966110310551525906295692679916922814535191495929559404708277723137836833547492449171897687076179473887865557520009512840342468638200040365726972408 213496381395353609772035948686870187432240098642354318749688051880387623810621458355570255408151040906125990425036587119742378841881587426484190829739527960055204829316538407384481555335970294903480545230237860922742126080070876145666110669433156344637385272876314057057628020329080864494770704589257108117183655749188624413787148271576819496546368198453663764787502975763325694345791428396884573385438 1701684614848827891454547468678152666859910270890694440621482344822804631860715412349482970551150316428996018346310427787162739616894584552583931614091090273993033910685117985652784905054703259178149048538393940190256507328153791009889547786387108574932749838053590020158733726544997756446803177603669780377422448989982348064004879716101023126682216920417125543176842628828144175821970980657487901309914 13563481067707450751598243767824505898573597790038952094172662624807163744239665762799684074756436821954058258579479317357825926621291355919852903599242542538151227667895419157890366911275519390394245353399379697479391650897243538188493966662798538174524032578535692012830999105477156671667813771440406782074170548790099658102729763156371193612493307847340448249961381243727710622097287823520343821248640 108110227768281321055123396291335365357069412550851775238862918226361994049713973166476437118464615690865344067760240509974664543970865124819336608693256626429589820570995531781660934304969987479640957471186508510083493794885871552639131152805365362332861344551744343031667122018915293469280249589855851454319744102441380506189689347728021712494349109100097942972978602033748157976095474283644549522739193 861719473164468789676394959719923548377839489586947977607496540849531605734129072321991522797542795843838350054647165819741864901098534823677974169386213807493019082080541524357777489578832582093124437981210976669619888730158407840108339922713751128888855641328482833093260452199746064104075713426041826094961257839912933468836276508190051767073420394049614020834237873321582333339055200646255261796469840 6868604734844432695822348723119174133433821061669909164779598218444101886470450779080035505901057214528219842781234990077482615517950846527945622590152609515427210454449513711444487272077146019946258527621173402416680761635801929280090405590781612830801720656868039968806717137669560757661480606903633268984919127721226366921789633738774708326436602179851278872494809402468416227942720853986262562042922435 54748801933610582558312197367469511267313270861610813797057079223951373609964086022592210076109682222150492842508871537346495506362048150397734787842333399829511583688290603922570008295353412522259186692142425001224061947547304466022372574385856599423674344377369701580396193131656802638762207892060589421042629523110447744897860624562255917460066023590438644524170415270861832254695990067632286853012973416 436399432568646492197166648191047586793292378786266186282890910852795538925953444161202285000485937964750847785497686308776397737799896238713288238944982370655924388462813234594192515989718617983598169108891143620251159018596348388910216614800958673590351365574552522887590424447268754031493548684466658859798477245203170029688747226917066163162276601915570903336810739686940879748461952116492067149257614380 3478541440665174006678217973688023372194328129934221169225521239224017083853990890394273701550588207454603091256177436317337800262696440984580310261685470120396258115567364977896249398404321024457026250374185271593291873123520678210203556966757462412163476551648473200654432486107955904151092793352983193784692724387008295659239892363325483390547681626573377777590942412325368554084279741551618457802688857950 27727685409198502290331917937169599136531425125298217862397490207522399563971851444753843213456725068570431822120538632543289805893789257307098388580093987736334174641025027464560280321272257095395148968628970909632603291943433710797953152949062676515469923601453082929667358542296139281681509970906239499197518503052857936283997304504573761858442418384681253300534569655967528501406461732053368414889538919334 221020965440004061340412511900042304731072943259778636852566779539158956343961761585103837180060896417298807132587410478248796498430727026906454122976438621250997625472658176042320395065544339452623874199747472166521368088470288249775837720791272649692070392263023257647718294861533543066679398931267630385384305342574456829698451010186658783070354866350513502629539527165430569406757692134824177338839315822662 1761800494636170481679925091042209359734341460868948610286031688929380778391449887596831359389487607664808799923621011963757284298514628007060846371601131385578483656760602918320679351242525324357952790046517881669876222917629274693186526982953211709994406241822930924343643501162550747505721179077384414906483010739638574869604009360648189188786720634320152686360051594184562347415977334558023547333797157312370 14043759100232988919871093011210425901053650809568427343289953515229708405726327850874893542095178286180421484131048479964855541180865359231544194082501611757242040497392979952852674449286960291935193829722843954971669345386210709847819700514284658119695356473950549691281163120755458336786205986295540908375608769902169830663210938384952030886341999618217732050141112338445664541382258594068722490663885319605118 111947239240002472527539356186754497355859295323376968115651196865900336936629296025696042895609856224050598468578779539221226570203073488828903569995884812822315290068156145629838576900475688837798051886728068106006474773455673182333749492021961453700242707997561630886518820034038609030531148551937881951782210512132449839277570606762237635153899866671428559708215230381562581136659523502971638552136032169638356 892373701247219185080408592982442960264935951495120733150742608276471404682106862533837627987153999314248977423785779360300154513862898934219331774707432481470597478615215135358817607690430541049888178354167479799121214712413745118124420999588677148648584999230613917592964224419747196144658806179778350709080817644432903535296844575602634726884901032675476924721731942403019511973388728628826237795612581272004822 7113502394725117930990114832092127995929306775291160724339276680101524795245706949917651505876486563611220411486211663156870516501271382398215946021363635115644207495788071628945222132194612661442342994063828734534452878197847826966308103673907762583354476782395746792600140138296567033818952015556030313904156507370342311054289857777591649450284281507257468086411297110737121217161997175473273928212224629640404581 56705284133925967005388199445749562472891079778014733581203719967215279534714794573775514200213010505217191371079757274906958934638158027835500112624065100844607315292860554668785227314710994644344898365431703904430790946936272446564390811243677889320335732097503423946946219737045798804541108235795596836246434535107177822504655773908132172311347353428275666414722459123161442497932823286711536494952938512831618266 452029621670938505277390506874880551142075105965273178188963812552170276912341849660302227049293651601537836396944455327136249025825542098891341767462931487636159242401271283429063777201902210402435848227060871129052618348767634676432070558797570860441569736447609876931494203206001507194177624805247594192264381582931449311754133942590205116587871148216204813233571700696133279265023974715444880453437083918880064268 3603409015920129740105171290212204519961659491498939882117316021030218967513441246978736562008895912347590648347192887002207902561675587134540190211468494889024549122647186599653683908807838063267157212696827817787200003507263820757047046869955938159872294769341162624986936504347316778030275755729354271971105947973913016222370946395816026500806044906581515880809544265956394532594491282836369456216630863331858883556 28725229931046003006260520992826098027151643068342816239028693138753251658264535169470794828398897942181963768863389525511629640680282746831161804507804856102384619493073029076836589715285066632358792157627358370735196930678288323711570957427508855428058643594965313245773715478614026337031736319483337457698056114964642764443056279426543299263409259801759737746659617977210578665655441738596917736806802228571069369797 228990117411310572723588743726891830515776680692215882777729954158067924123653774747076188657597862718665716951502049183493296654714643594140915021077715066285219845263563780487246699589943504492126111447040639237534885422338117333103965323357482346697802632219659363622683265086537395337784636938376769030602596923298478053942895208637313010910596917051180326559612394629543159248955491722757806714776813640208169375670 1825463800739003486240271471570819797806398839859500525939401707903775916621410379210856714819900748996595093197287323483125481110621742525651522832222963167961968332942406922880365867584324414990598661037359900275926218838605044485497753615744649047426710935039952620131391955361152321499150633201015387893015422045479267523176286147442120043672541879628599344117819897667605310083571293655496154476179669185812675545565 14552344129872216840384028045474101585085165474489232877854951095959797416461220953358229437610752416898178621998443351773019606798072944945033301981588630854191767736254993221085682808121828596267481312889316904526966526694696646834825476568407577527049062302532163420812739460562010843847387816369270114903842480730003088175610719470990088539710986511769429406098011341967944467475918997180376064377814154687906007639576 116010131511526046699606187651268523437881326031160493809655424267076558504673707858642203586739900370037317084673676328133420462018218130880464132072378481875660858873205106696775131985837339050780514332593696140400717435297414650370609177047457856332404191207211028747098684261714416447157827491546204305541155695994066662826302329826024346216802710178476348238063989527957382253103398758642942227349549425427120652182239 924830406906364528051155339772039039123794973394808870923010997645218820054938373320689201966714189258529715050007424979903910855159285746507775506160086126669592677826008974950067937935201000292614959138300310875550940076143757965726477844947236830711156209739816140932434008170385971848490159757278365190356818268446087477946763241578249288349769532414284288444278747475768280820636021076023525018944492751081891953538960 7372783581888351426886506937889659813283828575396479952078824001959427703602416341143369905829097150968939880007324029038113162774467494407170662838447446822494828362054734505126456890010000633910423235797154843440620423262387970489274544074998609425750247695397055544302418615606540321840268566896185456632810997161643063202838740162751618561804668446644336067622821750924064148744780979268279855786228102026166274746575440 58776546236247046606148404526143797380367543170261032011004802718607818190022157705393049476728150245430265201129293852882132560454409028716091557732682648487129929626871097464123371883992515179477584072559609012428089097526548012796080317046660492221754349621837432499637068000177803997889563256334531007677526147192863390818682929970455862168409721610120134838173556008963943636266950114717302238287371991629947509780378992 468575759485162965931646735513512933457625149300275348016820039228875538932108302671657632093317898047764495711396774018400094177926724349645167973760033367051983535522081430298100831801616140803568075015731005004719480634626717830852544774179869546016741608860116987800104833366242442600198132346472766226311398949302400925978796582255758446813039689458155636045358571768219194559837189621894715463387764690503994776433286003 3735585983338160383294204284066401391403407450534738420226584190650554839802352509164292237838432621502799613146332985244849118586249964990302050050863861889993006224715940507215281401136326921391967451531219169806823222942986972160342665520771341151975352048974010912585902144795684858698246958351963238197564118077954989604609105734045056097139810192746317049683390464253582214004288237397820982421107601384887448693648598848 29781105008521052437038825664528163197873885858625944269766200817009524781410968332173141083094638553703156427296517854318035700509748371257921580454727764541454824084261953826137406915301951042349243894795660108000714811279132298180319866557880382087441624086283892728014053740649464370928464566340921183797852329518932593896248133395911867494419303227891478778360096355295128689966148940824451141870622092329528064956995992599 237424765057327398861640054686621214268341278442291193113561366393247601510353874343350361290505335323928009270427779991239325316681584475800827380604359564668682184660956322393814375577592059440550477099788766263999116846409558202124385561053586128233977292559516107092258742658161178214080370695151992165456085765646213610307779569499204300536962220218120394336582431719115321272221348347207318461883327132685849479595903144082 1892841944311827696836860528757577684873019247645756196742267466446549138680025893831820395270995236998323351858479032682731750373744254356187499645996355612366929636036408456707059733179926188152361820464055414398859039359393382248092400933131504795270127083415011538472900108897722937890394325298262641226831050967942329258100163444567746293521124994653127720960269706147117539966581076926000157913340862413298927879708875798538 15090575327200177370631020266780220819488847829200277765463108504059421935587547645207767211494686858148469939285490930808057620751236965314271889129957433315926363802997200347749154726968882412797775392740844840264430353166401502064720895692641038136728606266652455757359093968753587660736302607455650988658202990825052959345490789027269276599433054635281404211940997092666295106909237736391661409863853707322771973838595345113516 120309616747451636624149007534995539990850143140119624606608963651417199918934120533980709259682823126580708859918216607571540079957867777182448748980949455676782063568784303140983681309724312296909270497497387929124815818771423654817851129068858776984026325118199043528513774597798600660214656119945998837061198192218389000046156465187825537540882151342297430882541404256384235208964142534468933390765879618851548490694601481328552 959175275895758382768869688393413039602394335750008140435312638290035974705151189000728089655714399101498921439556821071316316494226702795401222378957937889832493699333008001597885573833406892673106716553415018624583222873555741480506392910823354060493777229719348960357890163171654605943532113903585810566701427846515720999569079648668096741266509604444950591201588656098983681755458690406721680053906061628946953086149843655334048 7647133674492980394692288016557465879281116645397470330341494272529843664676105645006183274362609607436588102938703254677025914804086642608740773807623773828220012759949074121705526404820926247120276278496781803644634046074511377209193031794504620429030430289225580080048890687175046084634167780453286518079609956161229901798922240567092034194521147869692322233068980666019070838794602992251526851940129111401244459462869933076954062 60968070282546392580665099445787153081970603034191140687774127934272576423043957989780206999552636191177216161261981632346889198955518631083482354212767273201204708131883419691615505320803202396068457178599269546623810434187196026238247603429284540524621144727059264225492765876612855930542127297078688383128580874926291560680460078111970279296260922205946526544645986905165044887933185845640926151854203474780979109203002360775564800 486081693538703806315919051365195707887601152680890282912354700429014515994713538367761139499910576445747372499092405948033980785522958566992135194107955670580268485576668174876270380271176678817676613002134121989278320130151634816773076382413608380790382661427822160531437511145036975190944285072856269438004371129008174920849509150498586284119847351744091863360808189810681677059373991854363738150268859167991053661018536003788961665 3875423045296229696755546661181660459388145459666340554529366057894928869742900544756248375659776890832125650456490951328374101429909322723595953872902241215837097862572086404729172336216833825657657191414214447515944456677204564705033213290185900885900335210562672845768565745471535646841675990194953792483896764389558519886642052090331045368976277606765485400603055782621773669269934752929917593183069973629548042724288256931465140554 30898115580165724433150481247083402648943493399466922080315440179378399671390695236951093094384807102046337550684871581294229116182955329044965748124957707183787382354541943006121869685892822550650272967925954239124917164582814085598680127864259823604240741146224656228926004938775315672409476263527287354042512995487047865852719981293345011824794812668025459912391579017856963215122115320204988347401299202135175638817053957859333880230 246347341990601896656254182673786547735822353386438847501219863710828354172715794388651057449401764678609946068550386838708651005310489133855971990745440539885918202122534258906523670411631250744569960929751655411844151191942432981969350171850836997231003523148671922599124333933200127799801234702518399263932896628063970876135368828527474220405858581899223216150439255690628956261707092568073861182791967367649517725370248637548290717608 1964114343550235036766110285658673163316383679864673923792844846876101823786878327866217213014191127911988082871376377598576307759177583921186975469406627985341427178880834868394211083248686443949786748913558918469688153610567658810659699907858426752221760149466532057873858449979644578994929777209025114076184148610518436685402766129907330955399521274990903045653143424746193834324087238343248859098525977320228335301436574195218368544952 15659887604443038650966064027625328800618495271134642087036026373308115106399749886323340973387601326398267895586612616507784920671563195052419660114144899116784816253425154687155153549126535164147134469417499475898700639546255084591802483667515201057415736927308639284290558475113110634304487600307090699533688820820717573835044808294655822504936458078048129353840925272769695315086036021855010552116454843744625911743899593265494948768526 124857170562038488771028103844976387543872723903138963594913744336635216085388594983075885149218461449408452557874395469414989102640432743282622527391355048614209566546881747879096573921629219087260335777166327554104228140952700079430260953460744603904600476926697620369747888093046719107622265933004297146421054399108154632928781754038437268262726521053638354912257510229330976655387644317270821070780572325908537873995830588358382586827437 995500081963647707922015714091438609797414318846984970338926709605172828977596780773355778128929513839351789140240375303679664520576086070430504928234144496494168818016098209428732851886160584905878293801027512795053244831844561334593663055220455255585503784741562629502882432009611493348998554596438345104785165800648593249117402004274653200170485752020443173224233074300492926349991420025695265280759587368977816983240029505266629279272636 7937286599911310360988775198028028790121706594925575942976452622348786030950979213969288304103010592621138199693866252945463590177598533039894158723628671593276679810176732772620164214754695022779456836684399423288265653075698829871341317917412482425786638902311960551592267593010417948027147343233492140217209519284436782739751567180939143855186948602172547765337011835196916713858326550871295618114571091696422692031846874937717458184872079 63285725486887800678212513361425204025991329590408823025443545563390784147031006642803079167364662678025579308031754868865883430606368343900222567228920505704760587950415087561251319948784862021043333365908123363781727270462159074901951309428915167416976893927503694652509248396243977380361507540274380245119369638283723558536653433505847346969655608256280874061060785704317595752502994009050356911776939212619831918301027467515645788471014068 504594359090667692139900692641033846179411189778418350739373012595329135543782443418673071261266579726548015472264999013202189682187478953250133326314257993554563361770266642919503259437388168239150011490444135770527993769198707497832687630964196725285722756264975236524835380623862063994127959250122187221728701707098062107360586076128268309714536510058344273475414002334435954920489798358849302923485857366723849339064287240939523774261748827 4023295529867992951752856728197366261815871060216196221304483413163482148024873192930489029217989169500517992213030560921415521937563217927501587332397744221096607770738137576076446554688549598359575914139289047777085449273415144447383154944610305993500898366687724271258824791785170362046890043368201291157229891969832542971562055981212035692949347893822928601682872995351759538375444837322048514872768512326917307093222282497837889139905459548 32079262988702840119650304929257038617645572527370536030511807649334038514854878911358779022660562776995361060786534869493030537495839994978262940609265191789651125070151470762350271250064928550164328883149052574406656221408985736604041656444987980425358496117711034993517096529008898446243015226586832891943505305557536986847845622980298049845264912325693198436890307934390613119126421187661069302228658926964250103735636122669824591405126474154 255781848307646767262938276828944187390271936141825079980487408588429355520186979130682795634791584053640083907415052230633622138062308737125708134752787801191664093940376710257300911785627201884555986319554780071378138068389236172294145891200927469864075745636457802689170812091944163276687320494007874214505522961033945154886874930812273096064917605371781043298954903308139017523846712106309951114698257708807678975664223069858321726702404348492 2039472911009211689411572272199269353389016376827201921309868411057850338115386037809420572797720157091810875574950469120026738715672714199208130951900914675008707629909004184417727645116121305641413540722102639717745526203568538300608848475536538772300373573734917697447913320713871980233179661146560226640653792413119388504803120240693996134899416992987538804001362548397013279680437246905115015162418647630448735249855368827956488605158448646164 16261815532395150843925238074188221134588764626198397037950072920562009091620644653414993790568544817909351443755275274779918452574982652627042528318005890431907046278669039159057560730963896202857581407042346368471304908749708610200859349294981515427795439475488013711422763986759036756205267417846839894885367439713363420459413974940018341842158245734862329018425393399132627349783834587966945828899794610911411849672284219300742663667949576238142 129665063497370518560716142084500488463977219623554414408815008108384058949593880893429644912853700719226825606495813620439178326490788711303315792418819370853707947529423960433452418132187198044916718046854200084916465200348378841388281511511994223116628354079995182008408448379831379444725303635228689925553205929334955775787062561065479962178191246886459036708401263271043079248535530815170277857944994520071683654699113822078089422962800544409816 1033902939788310231175356106386479556990350086383544792514884517591924640315315842782107100096240689578723996821157339190883022069445025760512290946270285884975924694225331074189796355048815435061511583856196840006620477115175644368904029801306280848198035094455675337808614061239258123064506185171024554820957065281830897024444334605390902385238727156487986089167522281127018236350498229890036511690472058732512082393664913052684772292631166821745860 8244026866844343253184587557230248833624655695073016863463859262978883226920482565445716333928752266950367216887739056125464368194376752813869394022925431310557360654598024103950944755770797579010920361386410153627589936276501895286703191032154668015066426026641072934282536856281390358713022532400632795665803881829295572681634176873499593966816116315272126257428533041780232915102966673033239264497819491078995914427737418398503038171816531174530229 65735784559417641856317808157760905881720585462525810005486102938721163890167962063284592794435761666235634212235672123658103413198595491398840728459400410992380388734799866419697375527511259332113074459250211264101318836001876447047883667456369410174502193477556035184837665796300213073776274184195766315381241123494201947350064592088702672163042427894675074500550205788991262527891033426647996932624867651453151267999454293493601877387558032239857106 524163910244967882252279105461218224063210026090218991446807996148556043605182576577176585631368600938937856523148648228701315694367070877626860744505069456309364222104106634530580842439788409074082816819700185384783418019879247761997149280460620052300737841841986508998839605899770709574138905280710908824379714985292331193930455749207774853935686850867104304807983249592260521000709189974903310650012974939103137712902758930184015803057155410863273101 4179604443777365641761360258635329488605496858991309243048686619437552677636755289327393378962805994202813455403108265972498296010678454283272366851332238334288894845273490257601603979474081678995577607930732624315436239167952553433742321464470148655908940838818911177133557111672944102732332697678405127747509393016208140111442658261066573131193080211894325126880094105074146361332920808807431955576963739243152489917275802422415139534722362546627882886 33327753436115666479041838633006335654767223985166032196821311297848920102398790587528417531591190093249284358849313457084935963915224793028267315338203317236615316229878496650505807699706736926013053223530102921459976519568815746191203873534271340417567024860118852989760389601468407797309258811405080959972863308512949883608890324397781666789535803934128425298170865681573589100497524383490570987934861531079368804271729625437566143654617275367123264753 265753918473842763712122392319795320875261146564890141153157273743034160428816988943154240315145158146480482046060038147654761121868169135927776199387067397008079489941021883956884610315546845351855692989724613218644853372056197039481158603191310299494496199946780749473375279130163466936202142392865816717299444946797397477796527128290713346458866208122596811706712899592595285955911536732112341122704465582585609903516650053422813541333538699611988119614 2119122598579103172173566120860616571168229305090539025185495263816667483443033811341556124740481116044174869414497615575318116851279213668545862932964326861237608418969234217663223422035645649728001700449146804634072385454017829964002182921732314611890308833059985148930759235683456675438496656723564333875325832442779618869293009567548330065729772464732059338404520180911638013354630643242148741643452836251216075203534635062186530492356988266248380718532 16897997714952424851419582954011360424088366154812394018269728949479907421379054776113725966969499147905231209336521438714982483277901547296515236104928323483982258197803063446092182333657136113357519527227169012043499216809121615846806379088433129021880895326957972035446516941595595417712631220824040806022575302415527525565247929391487991593477125516468189278639488638610065120371413368007319840262205832939464149951528451189499416015401459538194538892974 134746396133926043270254892612416316349412368383838368797575990697315138987151324580205305378660349672186521715431584775745804006073147719028108109251203001036295794245649792336487022727311564713491521738582862193738103321361540274575463288331156981229088020931090274584770546917005593669329678769710322114151528691947537296169449886134334566971399270025435153931206556777960025013415851078939794262282893774604740389215140652461621023227482962114779539998603 1074488586749667111286578415070410948076140371789111222843133774089831671054766852216778309757505216991936840323398944591789153250417941920801731321257498248395479566933554318333862217662938911216657957580563802603307344690087271742276786211234642249758578688690882963209051307166016474506784147040158532627043808944953676890429753263081796776139598231340747649021902161198899928192173784498751071420582800943079777951149623882364758182036237683772339544523700 8568191826377284451971091633226645205620391518065069208706547087903764061261392259791236595971258118726713637159408219852330455740447587031400563356481221578445641976944448678250865279938688427049995380408157794311094206779492965412058236162945920261870787085237260425812047993384180311351153129329779162727222050361668597034573256233594892181635850590879282215226913722936736748658164167279181469736575996927432262063464316810838947344550007190207205944749007 68324941848198926863033240960575620904127229499444153639652216662173383609799139334702078910890246707625501369036146638298096571866567285834921451011988681182266788178834058491506389818763058554149577041952893530864791934656160786216206409715889684358586950233945976163909032796796714172444831317050476558871564147114710750112464010530393632679763979829913271684528022742828468961987476552750505343140912916555691042528611501243189096102237408488757185560556318 544843865499060957269511947083298984542946769233692296919494698337784198495156578651174226384972002939871360135701984599333621231006676590755022263045602240396000303253226875226677126880115182748466753962313461894864647480236096772736754073424661251044930737977097493331312996667100138590136556892004115372745424462002659664709491320016339024028275859994531459914799936923461241162806777852205395938195585545124651960948288288435679425290469697290268971136392927 4344777639998910686166966521664504285842424087908232929426436358825709774793956643488293466310902503911016218823518899432642803254729590698233550966970200593802629749239882695074179880886386834988356760868960575887292039638340361086337199794139464404588200898275844524753111701471160058451369289490923056024887084685188250279830733723965469530737066625676423433278769862280366193833539110743649523128878762261234165837007522499266432326739420680984470383540960394 34647007349337740526310033596207088565036912860115662774312820966077326604568135839357557082088495589576689560212658257782544509596154771893060536758600368839500147756542696399676628939678200613442396868253648918900642987479229644780125263022312068056550274340261321391308928429206593067629280266751910564679729484216212089814441482453706507844632805792934351046890381676381323591960322544318605946685851699989040935131429575053602631065479840535376275201726516615 276290896441821207143395530535577157234658780905171951170566529894301545434750523504107177404909790846835385210615096998732720808264617855616857187639979043743218404749700309890861234135418524715615643072497522123339083599435276848007332781293647470258777879272392870327518281199431342478478479185411952851304011179066454756279373958086250336804101749650969533087964672579477711425658292982678053026386092917866755207793811068458126672922265383950009732449641467340 2203281999926901174177802082147954563539126267929668146863938577507144802037791040197736593360256787207456873032004209182498905941806147128935985406225464532949879774889265166376218823318851706465745162697444880243533758496416109076646226624053577141474394605178565337876734799189250694907136976128689222119519354967353103103705153684417320614992169860623605929518713191669996332215748413449361522763362818843491161919348667794022563743564798884708721821734588447257 17570181620215976249700239320096340679231312120724463137322988999132415294814036222418603697113188968020712939301819813158858429651254649266891475744108699340005084932674801372708135113479128541786992470408419105773819128498143375839954208246943037146604645646432579753680211064315650573180142782741869177920256627615756697469539299455539286407898059174046705718465413520142482528127288142165359001222350147478417888482930333157713086145841961129585877418176753967512 140115137829020380719764266213050112749869776217545519149565509099397653468066809740423870394533676237763653407428506820186244597110649372879555948531844909345635610902377930019392186050085180280378055123292205642954282714925642760771290901132878983211150053925826609992352188254082402056913551365965464461477152570094911856749853639250483150246665455844829230312157009089360554322185572303960475610596280443645937724321672386725326954843087220635636993613960444527770 1117368693530493956597577426589378154089628050099401059818092142782617776110794071160223337408648068787286818357911005324912905744733777392567580822199305829135428279467268600482546150693946461395408517980746650181523139660010983171660276085883236411222078559681428868496704744771780554632675639188665466540650357316118479675681982952527142231887466827900653639803789185780282358050680765318770221388095933063205812847401915340265439296678430426368877812555987278735094 8910674162156983931570376424349447130295561289503703078497119715909869078886893007376500687518289230910107674354261550850427182622687726842885853829500304148287686833637999616370369805739028283630558649521651408146530078951817762197678689568588587675446556039395495015747744202156983538921874601595894731173776696178877027636703336568470759390006690360146996742198639260971812659522432139196530028162470709707136456560189918834393888072800189950714809508726725054046681 71060333302153486058920013254824584864941613894089678123050045481554492652150204174513517558576218382751424963299947806477150259984981613828171240733187529077911285989283727902719931369898141627578760817994501538012160846760590040840292513669687442378755966911535515011320763280925849928966987063565256734481069959014374362516294604095302375639825311475556544156381110740758526344568101878518289849933354243991277210433582325926961650060107586454264149908339241783113222 566691267768572047791476092784859072207305279427995073649466358032619605660687265248877170409036300849980165123287223417964819017004777189391439550355408342974602327220975959165408000445824349143003939675181750156856556707248434294850080994776165160020380442546298980843154215465542779406048567556863791639869360644547388930983560538066085119531361613235035377316810903400270394637059608306719836111405696701686589583787966118571595906464095027878679835080495530767791589 4519271100436837826401850507703325431655256963269905239778449139999452230928567478919802325996504777178977099445374286048163787324865130881699773977297823931466526739154151522036796228147753982991509751009033765120122094819239363004627342163760293661498074390824985083185839217586938254355408507077167417529573306001727604924318341894506358979762151028621426637458070146599574991939310686221593431693395418366420811967783664882741538101599669918196150242542741954098521804 36040669660863158010242973099944481368990989291289673626611157107692856254101038308012479555992701231305336041988799228788913044107308628989763984519473134489891866649805716607541030956292306792213302172179817858428957917144956809197754350641517738388717476902420716079370241273581116354125668029022819316673350223521747607939367987573252037344763866568666318184902203627086609190464198548390117256420641186196271307611143258628740266204570839036240206068168070614620626899 287421918044475717139455733228890312709713385752680595460617323362698801764655940109086728560668161465287555442104917303218732125202547656193883530148649297312790790034389867242838611185471303621069777099488463774365420046315409410166739246763768961914375513092373581218098310984077792042041225213459724705706616532016669592121450924387622763041611364329580305313340619251471056534476468943502366593252289870519159511526249489140721310791684152169205858746297340204365493550 2292184010783970197158483385722988279318556635064323677145755383478692771444862910772844792175460567139758825259211277585746635341569124111635218955675815788665161736744281873301371099000532970521930784162186777765536668516996508301626588307158823619327557903266975804929747683175039331912300423408267889104526707350584957797923913797410260212862674458133839530993305016751399826403516472164706247380878756000441919303091651252898672038679814252331229902986135697063588466226 18280228871619378284465816110698984654881461154162655870298124993380176871442041385497734322165256171396105906019250402293290695796111913775815355687926226593789154500312667078591909038999213172745871652714865802882663984083843689384429619333684272706309632511958271332340914172244529609337809074547165968768122746203997027967209957496339374564946270495255683947790476132070835801177436066899128662532615233034719364584898706740419341184651829819467800566521533318055395892664 145786169113897755028758200350328432793330726332543060140920538976173062862154180510920933350950393695966443101369396250432573601441084877748153223066733213352376213205004188544631895241182992274646463295796845879938002098869456444312134303191236834871951030319435321655234953047735504149417943304238399783421743720800369561351333322549878056467125864064989251425726907348629687025740826854516766496139022644033112470013397554772333495591115938746596385746433866988414887784778 1162662203817973532307354188333039633469207041907786685434510707961382227904694277096870756040249667257940089249148362414658374508035628439579560679787961086104976449558160568508555740438703521509769918017675926609658128919314599004672718461957637096511089040838294443551719225053929404121537521225612666136829906664047508242058416167030273717863076042344886015201333237699985254246269238610290932380699681556599390683609866325981439572998745732965619507284387803686475826096264 9272424612048329231256887745288214748813950830068350219352143304685980577747291478268707798209628387334872609950181978476589000909056117704947690719673178724916250472609358365342010691298446867745421139882889894536249222291630843264002041211369561200903991858981273170831444409211866923177378645162019212795130086053612270313496890182349734327129996573919612589408667470257836758859858028530246975294777628737866653199932366326256074480618078410866676918734176185049427598103991 73949558275456615887526540258344133317119880347958466531227785174470491519179790761454037092217887172460995285240814614048883291525468851824385425543185314402172509585027220858433419652988966605904653578423897772379672472622093893496058063485059753823572525611931117709264777024735467631474521085922632496616428476119995949565083833292205566251803717925129385788952554174818042783517409471798853081046007096130515755498904094042725460265260964753891083163796668455443975225609232 589766859062154785713154260332698846343409482479397453148012849255419633911828789882028812424819810772602389752087398833957127707516217404370468311945617801486066320149363688790956163549664971176288934672949572990322793363942838633188847357581756479238170900895902585070668522093180807888578116313027323854226180697367015347198203117063686142664291435984948377496686126603349114017506736481908177060253954888186199721588129301444297744696845690966164969007688950596414318574785760 4703570335167669139557853310946529850635957339325606333742652066357189177514004208447772765857807457293651596784293649621083234070719239558566822864019306439089883886052457287711917145890383447240656276794581102337316285695886945971573485640792578269003742178189466869006395634704968392427377207828900615506890358278120523979009604428867344116792248230062308806353927970624368161036460394778203372294560469415368128280483498185079376162944355550720152899594049172243114171138798550 37512621016860974398415508456502737464044423303525661166789454726516296010409317824348466672513848675210268126474754946274910509020652058122688866850962314276610452285101879452921019100036755890552610375587710160332769697987830650735942457582043445197725281588308442016823368138500258342388121019044802470568029521150745127465067224752110402254783493691897213228969318101951108762858985509347856865576726342575460739048119276972882451856643375339577607668621284088468724328898427503 299178000768749662917503449048721551171423545969159668382209258604424242488554744536178562511461499110862456997974287697851236931944492706717810442372993642414425456583547200845818456896655959790156424826091783599576770924841843391271999507425549741676788919439403500977721891900116394874335201394106627442062727277385346048157024562158260852093115290681607572951507285564586616463622421299506181372288303684012423070119622814736922182935604133710104179155526282238154368658518293058 2386076547972048878373792440143145769170035017413361226381268852035850896435363883113999025594657569247478219836373190565507556847202473654653690816473679817393408632800288205565730993589697506336262784279807043673490521597277991426705655817365571523299558909716666413223743574167934944697016195736742579118877492589297943135348194203253028984273117603558530834371187740406137167568230827825908901375893858960684788115286905461501564405010756105375193617204833896796216479624971950955 19030121006546504153956359555595937048524738330545693033814845099598036772515204142131557536051510045079667764423258619291168741246866664585811392052253154130239602431407966443217186282090811556588962501577172066335352355799939401859741283910528588186199088874062800806365965838893149800875696544121185303695830968044297981586393790239248749705108803069342633216011677308530565300254739966932343980414938880205045570498431440581446010725163131163552609118643461653748630464802189513196 151775327811796653287237970506164378181276204011888712060572849143274637905670519700549742185709693136201140721775171593998630257916776240469854041041570186171232460026228688087571984112369043383218789444396885968615366655713607023390155375739752702423153357059432539740707929358120831273569878594114787303382040241366229950869826221616400267898196889872694258054827739759889608519864047248029710135378272368579077350041171530155360032298374260816555041983743551150294756517127655112885 1210495703624343668409385006491567985687793034459164000220948658639103802175513052286512084594719931944746960582905236107167903136104936390768054354720672609204870518696985092928029498502233204600177517794840237409116400083334904663792350245074617003377089983985481420471016549241010801961967254312928433642727883337883363627475498545259998563111277792197564261288702628380549907282411961714584450312628249995421470621578946168962072202759434010909718720747277867454563783839477215466630 9654454925576647953190910430626188793737338113069787054918443947546613125422115313861071341361661720101334804414311981573035712042912290039688564090034974209817760385012821594608258583316380377375437996376206689812952936756001000885271237210678030550271197913195832993900524707920788219430561481172165478850919793012670879578625051417953604801543147658541731320818397248133842535161962955544307157333443078743059338470780403569398681986293733611611052601525350351377816262095596810203217 77000703209063759692790714193086097796300828651293644405648675673272036917530356931108905472825323402690558835013216897941734922511738898481575190044480598446392518370007885328038708186348884541730654779674232456852987465618461781853025903342074324535908363319459625533057892704681161943762559122580186730963388269783345817497084238876376353101080506647676278288083886364424826005495506437906161837324391693157123064440926348466024945257951821769619886697724032138688274233767948126619542 614135270101549290728026598574428007275174428714636555264859760873192339492995740841776546736371184605017163993374741816287862424426602480630662969087774201399152335570225078293396725190166668710694697518586273161588873894295001070150961053325006307462958609013711155202629761544213692419399658809114374257067717155646941307887162025570467652567415590882191565688829240348343271141665585937864409042413456467423124802844616699732422778336167890131254886144020369408039519139776676175192110 4898191900680480893435900585059331635320962476196980586598276329326741512988707670057132744555579534936668630347599033543699589069422033155835111812505314065232065733008471496222065974927270025279927033100050395276315080010373162991284782710104796650418567846911223814569020607341357234866887429831440987438361237461726525719846218649247506109770485481891555612979433124945517425840221311632266016161840705108204689312169188464206243613341487700183637585948965255042279289423730381391080302 39066989932842967821518789081463236684795297595058011498673953774787607105824964741115185808387769888106517830090409616466201330156393362175054000413054433019029346890537965988649792739360072166924601098859292225386455139437672602795708920693431740529048040292231106960841472865702273693093405703558633867823688089454020341252329519036894478363494626600772771133421382954948038011492261868892261764677880177289233884408266902764687412975443438885419069557479086093778804843256827908390732283 311592141075095059877881794455858359801449672972040221560119602908332240861880410969009743258438658571436169207866454492095374613648909843665947360197839670557165470342893931316208922465172630785678035002982736661327161847641264678958766725370356075608670903969731049491013535045812305211316054363237336804943078871363018422370867392270988003051438623189057032946188945469210251917979344492388816002914852185426657798276315290353535150755441136120775047928863664304879533547188434754604876248 2485223328521754994022829838781898749596336180207846530413329192353929984999941902962012787152992266354255325898202956506264094178127871681716360323536363191716479483678131666185255773613417198639062392344957420830185327086692554748804838563439400360854840282821848729557265643838684283091608685193845815035686088777382144219704600740800354818169479976730273788682863024006832330449356928615911541179185922206119567551475548066037907512456512229190528424456979004907853624346481994720088446920 19821965713546889770223629279927881532316138313810601768485729592731002641189357100810062523600536733826124244629524277172918152025637958554303708170134807623146802126266387054646229579324569815793711048491641282880163159289132437576745273890155932890815920748137763487311059167696003659462838640021053781511899121427825355811142773115312664264678108342296363430823594135143052436287882596847856103159805437203660835333858113876589065834511668714233731886294188263730998920827735639640095979394 158099458967971169329304444289499153199358019183876089903386682893029103800362513352221460646334007782125781947463813067926248760622513012196201411452857306799585518250048655332010639265202416314692462707684526004518226917104234125487859730318144509345718905100466982894266091340338432079669832058766849992899401785452811467263258265188502418640522688387906150350925825122830046087790843410790958703089036330238677138998038848504894867122974521061274136190202520050270405320660088673626346992294 1261003820971067711948451007906499212090924327764380345411987685703678345906271151117446583911768640280013449816921971288409213804885008110333176925672638302369477435986945908332190607259036675470065537630523519909294171577654744219480965367721397671671908491255773422438836921400074942927993256261964174306079078357892874662060007596858348887947677775588998772045967981589066300378069534064202655292889614366757888761374875009713447819386553451345325479164347912377341465549747560980147883428494 10057841063240571356391735352220880031329357793261907568652376824105686662713006248000084226542693926841942906891616259335705455948095156371958825693824616022577285309470203149558381413775410540041087163414823415967567245119515082328131853578720805481916620543277855448029554182675449238080017947186007770161012633603119416510278779899851513471261916348991021559681290084624027722355127856107940303255051761957039002361533378237085922516847983847775138722683230469665297013169715077847074736250802 80222367239049796672226614174684080754758083096667997332587992791844102063844789442365572808967503370259601585436126605203112236022921098446449746006939976985317252446261469523703417200427991225136289907461893439392099159876359650576128359722014237480026317765098328522843198186926464778821683061753943091271308115651355069246285443826883066676728378728493926757082913719880779007643070944261157491315500815186640231896233580109882543559064612576798582622283870154205366285141987614006545284125802 639865225292109723224758002087612591171964208116523154950377484136696441395437372228616591374145367764759410371465946169464563521588342074212505265225913851028197494776456588189246860170046261026029092858003375314791634131564724839305789083589375154918492247552367571481144613680599923541638046610355928219182780174338644187227247616749422273402887459413332846786826154476079861885674300069030935852682896342352046437087024165689957074940599961041782158990288850701298771767586631362551160584054915 5103685040417851588013049312173881216673316130299518970286594170236685752361631342949679212895687417508806569714773409363013729844134214023747729155368531676174305127393531337962398890752430500059508117750804967386716754514689138008855245205333958274396748889531220172420398670316993377150190007816398032673702920789370879028461147314615385036770465734993451170675114520214590946170858984573476643531972227948139167966732087823759499781544124696133201659545437051446343471324957858629298772551267102 40708165923784542936414273978019933113644677906563240395531073391592007028180059677128428091211577121455098184019643247509849052023893100793993598685902035509487656734063024242186760679449964222673257963329275629869860687956023426593305664452564730098377970401294253824036475936250998249352368549018811042237974158316897182122639709496619280110717064451020423414535455501844578785983977231794082754863228305262372826044429006456235849991273870440294652835520644809003159826679062059780290133624725640 324699419481498368891629055679322125327622281984413548863159084766226628112258254730546754095301129061368734181096456481813038126385279145827721710937774664277619940674497995340671194546084707014343890466684976947974753967129654103782841265048280980364834255527657568216032277447328222809002031087863868145156702444634170561737146858928666319710520173113989623933226339400942226640045537804350240131898786954371144115895733562581119552211624533494850090363557958802492025520089070673840585367531077478 2589904710663550810695319300918121797009886289659178108612449702891257825625806819590732354062768788306922012603296326030872378615998232585656106009017716787949146939086925714789133962411731925209228046419132651014376742449705299584232172766568913691125245309522586538976283440862701397055421745319314595033594325898720012176290382180559575580167606431026414762655198875110287022822639962426987035979034947532313661901495714811021307886717576565017792371895068319361487143172682853014037317660115959112 20658003562612497689114743546944341057263141066437492474713493424175107307251881764503860452947732712815482776232470203659909272958073823558583253259346952868664999794300843408369904850083231255847480228281337775089231569207545624264057041924972232306934471172269693817606885878486321211145419766828072382175225278097691998294555525955779502007716609838287543094178472486966471835874511006645632370752637756936558167831612673315245531248396034577471230903641997273939998440107033791244044754229346203586 164776468709125523504042093206868483102018364259953490786806088011303939988579914989829681005590926658597789583117016354755750459749709326114625019602132237376583058219722748397997145749778564158206337068382986661793192862262094052194439780503213603443667571896608056045447216711228777179682533259219159979447279316347995113530695527413181044391932283320539544686471145261675728305314612816102843511222770162621909527829696864960197024188569516974463763529103978892308772362554745908270213839144600077146 1314329656889782572936640450994673827054265532744032834619988694645197896085934293977461102459103069280990747381618718565772100004554314828600404652381317710952650940076287831929195230998743655075310600953422685633528449954793099290492018024325807325479732018852209814610842046298840896696500292442968705407931925302740691136895543723793492765714481469397244865324482231575932961143038253008320346929684330091908662381703647982371987700886473309157755700783870897381692253165567107492322883586076857141418 10483726645427283121626051814811504823930508672951346647594210246130789621612858759450020871388675814103718722980788926906608341528336918993767407296618435545869685962423788478703614774796908252195012236865487496744048006633980829513157666086479917248441579763761218386969737056967801935686634791437000855256359530148660276619954515656284012217493890223574469274813861183800900694194281870005048475562545231372222096628345540966130885607059537798109937205855097918828608233507505363615920059361241222322224 83623689794440821540002602149141488120633124372455865097264393080649572847518843867675456415589949271826657872157542186781271789679922187540457937450191889823170853494942771451260122648902565246128483437898759395395753755919151808236609246482010689284314354011277590351198842334913940218472255261975523591770723754287427767144997305410251781345456954394333042508782105531144173688958306232367775068470060555107114177424823015223967290611774579643597149120052318633129660930789469958044951945213203692064206 667029763551660368931907950442351970298542364035910300806602976728424818970589067515701736182132629722389799349883950975241993395727816007978858411162657426277142342447864098456371364509984927719106166692960394802694186688525371790522822410448214946147253253400298185685659148542464433349355737127772887654423333244776547860564874013936069803435676536910976387338110241672054793529086446206723319962534631843557249449631296997499757794032329481610901095484500175819171916163105019812212587929392368499038565 5320633451730374997071554946195254669904522189962255222193884502413000722239822399547345947916877042454022713776213891900037588899978014576238769818851833145891281655326039565785378917517562674465562367825796147816485468166665966918382479838719948092679951123891100554823575849348039461194428725215097363204436715260767566937030225109423685276865433848650423353739116084078923729237632610876002107904508650800742519571254042514483604749187291269290480668298031086101433803297483110556619611889797207418682018 42440813641990845839819181505405188293561818633686722871728508180600625084245138469564661981286670396196488364422676796723632550603474909605541534634413289110105909172750945627335963958346300953295961442289720833846165376188886897131447405836095583338166462970543142189895788339855315478714131848481675758804817142408522817722908665706987461185078609739296369168278143134592488792250349170720455150698306579563451609454935077509459958430277888573328818297188777444083287569516451658606510029973526598674004399 338537113681439960129113184710231351304386269435625203744326152809215535725796506837847620145812927797426278250616924518984918981943548344022901510821336057195569062827978013427879058317781316407539574007433250288630190839249913944267195898330108240722153496381780986139109461693495970743104653743356525058788238867112208425367392529801286566765050145949618769477086389258522392778835631740743423253167295313156258481886218298469027083392266448505763350526337148310403123058554787383205016495025705043977662732 2700418598869694294134070203872682601326971240087066239767326721342901205545264596142729628773828950494470051354125251816646848117680168531950411633701464354319107666995648093842332709594651951333059783012382578353323380291332615376878444472556299635580027984867519407469645651858465444536730762793438317497758664970630897354790653380076072449938648933890109624767392895591578699401543171814630563833503152947892063622982242860187788656900850226077743434416995465066174368341879467267128658084666077414533544248 21540615246127748278346732352146010881306575980613869115915664542285216887515799159533940112886798409058063013136333799266829877774894256697497450311623897555344019206042511470887432689620777366240166889520733060323847756673367237767638028044773949040266537693288373337490635584073992335524759579849972148319978364226111549666804423359588597271642847567098023697057617127387489867262716076373521124400436988771789815325029280496038501726099847130317661642885397990394943472268835211172250603060165292791961767184 171825382174586457828715715480497521318852317851533268953669033124537692076656104377737657421515372552369712550764561532593980955764608527310396156676279147786097467133061150001430995640867282514048515214250306582157720789227073252474643667744194135017101184696821745034541099604044739100673425960928887972235579305398183142086863376004260976534341675132991206639016097419685629273702621812108023141610297388922206082340063517920341067461522582463112275093667795292119188605638294232630379641756441645741771984765 1370625248889751941140979343945575229635148047139348467629151490646253205950924351336799809536268181220618749259151451959771158942708548845102743430300548896469405836415450462252160335325649702054215641492496624441497173182384650460902266676843453599106023958272921646766533011008163333944963279721871713892155641535728951794258306403793998833859045384322070485729748578317519188583918739523944655950915495003646758548463171105786016001855003839753969811438361088917743991516983286487366825902662361134952170975204 10933326660214610714282597497675315177566314432386224291114132200314455968895029167944197356278220944340743783276239563661371258756395713713374107450677544260694476986537900989319236451252022190154781391043722367807081200717999771993346482470619326568988032351307376404967185580665066921762219914751279993330644972016636381473020306718798409694188959067411748806329507094636502390461621042315892213296193282612451657362377343034314232442997389894228948894739161163302621658719652974424364830670396104297713078949317 87214380259488430586703697953393793516731275905831539912706011847126501819667001978857879406455513589904235349678147868841735887274906358829181313651766404821453704500501798558280971112200259213644040421808714547145036936002180420589229026957205380503493586084080914015855424463549125547462119811050505291866181063601821497705591433901488315002498827108338370477174057629491877174288038812093862926644618619321558361077713892147566865615550710265298234832491868600000131273637176604944462369122926930309697672347068 695706475602529111700908217770542217212845032059863646084886446183491081044928767755862390979345458826706343395972631781765917430424359401361631806734711285523846261153638168040254961735665126289333487057930068454397527571452546076714098944578293009369337539435381720738486766229907277789000980234395063312330200575860694002471429178199436306347562299453726511651974127353066181007124181261770692911728970362034517547457755896274743778796613243060623882213801742968984584667896136138760340240866420006169001356131966 5549657184124379443782177788439587861106425234349373565667671849144918945303537514715684875182915647959956613588315958994529333008911583293191179037066015814130955464512454628814482330456544444934891825163440873694690145218352089958079268417128058307905220958599496974510814009967057163868459434557324127801707513845712634845460076023613939375934987592493967251075344616785135277043598618731210626775603898249734789344508965553329291184872805737407162064990800259389881572700535856333091898947100324844004032158319850 44269888062063136933129717295803047356037465384948606141603638695572703390008508795141228296684373250484762525107143503708866976341238141813206952567428181226150038395958082558883818520804166806190893731111746576777885475280499083176275957926615023118848760929329256657435956170119046247509895300406712358490949802009131763183480267857743321609668749441549691038468322979383086137391586914821412044580659074517891451621740339044675384420906609308052835506123555857934446538993128874299213261270872428465789344373698292 353144820013101653632056929616847182586788574158417322203748129591286285701644871217294974334017219275865244477828360301557354042563422836275983332059785635541197484052279269838906822130655418657570182632076673750080873952431009199905710400597662170484707107433300681680901480986078278164848803001798545873290253402723609896442023168421809793187849086271802088743280597393225965560372517048450449482849121702039080008778869317355427607184295033145327041567229413088333469301619328393551233045973734252509396580370672012 2817081415504943310013155919021591020335006765815512204843856671246542119547073653180743907310525242194165531741750308896822475989614099329388521325513419066404073298233906053770173351870014528686572068097358243123261829325006433176912586167524670410078694300480822692973438360815455370663385215625619365657803980495265943691307333832508713311254568400065235884790578431617656848507587550305676281605931561462854227133235999912265198446622223212652733180466469610015724846890024312358528274496983749993785197023405160370 22472329351104754774648798350750459376697376334678357711671256574996791860534168213044815819736372471615233875571715404511103020482774006083285820194441720818792637278877092125186674740034042735318410788332081426315218284284487005819541346690247284116250270307956984936699789768878173511123156082197492403006345800188625502961435577226001290461466176717593059720324081528223943640719316800313295235945719324137703569651035148621545837707525048424889530162234070168175116219973260525146035276280590160756580208342168994728 179266405685274520905213367996977545706934983164026345395436281774060590820265720273840206158907308711573244678132885302585468731269954309684276176381645284956706997669547354271523788759247348134373049522556375743186430130302763959617964821459807849331873892414086516990150385232909827098635319261141184818501481435284467942711973490221971768294070569435710092742241328946583336254601974702738639471575438338054591777313839020823946108623714012389580380835164535091863862443706012889701951438552407452967422576262443819820 1430052068229380542010518199403372362697741983345054616294785868267626541670064626039557148915002768469110149822583343589968356346856030543417398227259276059556971620239960292728143323822580275370156505705920229608163968975669855885287855725772380019966819743993130946759540390524943621229042378286801010543730758409927326912872510877830593643928588130595943715218284886704510805337760548329020747184557112067232358042218536968424162884721714563052127401507468342444065597864157122240823456964662234204450472426092433183040 11407931440830948304657672982172663757110725126354893433434331533303224874323753822264802134958576751617961103793999366899623267861131493225202352101430364964619580897592808990742816158563634422594385876017816335047685923305661429077866714649219237707412857608793489213585533393530802876100343835857150083469872350135714996145198493748565755572276941517458436023398855075205288318580516051819705506600960279741375085040251409218606457784567045382626726337571870011767004090755002461277654488013972917061077810552397497107370 91004749787103161614010165012641358084288727666408123171111332499509571048493905553213112155298296123213094847914593630858317867178268826378099759788608704104474877084979163697203068235128440836930267862074964558962792306611948145486071190042844880070577545436861567710815125976745811490794424472770295728471292249599524832357591260973843216818830549539778681327634256488048525230626339085294380343753546153150045293623199434947917817699530906111128699568897613761408789062208112765334398468149167011375851249451643198462078 725977758424759673077944263076685740875816634038919982374394096738822225398052300979847416220870794018484391396905882040079730220576226546615456050131328695882794344771905497670835299698229472278462751417803435342025103155832688816645020005844484300740478222546743664567732778542372467080799462448035838084722301023946001696084735556858471450488257127725987996160637270861888334184814914860048064968021663429947656094048237079727752483475068987136571738512070823760709652323275962214145706508854915619968529739159044336089957 5791414674420060697927901431787134932394678739014727857248263848097556547919732963094605020057827616829278637597968056598699185367476952424748134771643865397632814859038474545286953092430307190015994198716397734571332556160703873329599137768182585075403481215516400114245940274970265373859903953212559508588112199148830811235487101060842333080375902941325557726569113926390115332478644047972031193228374697179719763354707974570617349482290507980637483971842660000854604179199716268326852852614185620753275745313878811559688004 46200650758161246943035897444119980205542182559736731588530325643559969554289869699724034127876539327961079654809377075131718976351036814499726899581126056075245089843368544302055754296295968614671629675704090493028347421065705931338064199580510118758706425420235801907545234551195263918576405688200026152153496012141678579083496211860200766920093126623199343011973388283709207874927564326209818105014070846591201446150634670857963815085326173406358296014392332596145802281108419047873452585567341568989092024604568896444912424 368564583643396502363974499388572914054474136614756158474096596999049212940094357155830800295000856444012309320885494050262297406327460261718929521312084043962202157107380489950063905977395370760815870221684189473287358400292399428221380631626606190479051510276627125843810903921812484435949274817650724138365988773804944900582494460379079010135989402328353125956939024670928241768954975079504954044123740851747845125787853688155165657356406541524126045250611469396412446085020518927155026263189958206528059278963803611275413540 2940229142010216018521859804163353192624263951789235842377036419941401052269587390465857325903746052240660950416234987043514431301324251722131250541078970660434762850492982086858503224588633567678989376353502294034301134853886138178655121258756049973507800342740463622413712936907797474606176829364006709861272285375207390769532434894533424921173416347651342022236965244070669385850565862923144287708685477338744017627728805389490762030673427526598219046877790977605429263954841505750993199272082456752166566135251111861791377869 23455830686218751221720103845480646536690439939818172147541460782236942081683900154187078585274307924482900946586839843009568885548676165042436478521034271280553994809759446234051570888877835542645905570016424827331522208387575914123798069300370621720485659994737401893345602329670063959297831422926650664251271903301042131807908132846766095143527509039653742770052294826760529295467076714086954975742687527262149320297619175954569918791581741855763423177088269243879582408108414077376946363861735064842890372832240046204034905668 187120993339537633695699599576369724473735345959067795409484646195857543176962035303448066960433045157404544067203790873048028236798359578528442755178039865577886051711153124735003508399265535699730598457094135755078878855558480649861181366367361689210208290237212716811801786666050968390248815833262424248181142731504181902787582466530761892714254253489047920493700179461754438278854284326509315791238561292215861683973276460224138742420894124151652590297965448287341325758548632308607702064200110529120162637913944867345692058980 1492781552511630404121369693079853231851892262207447090728908827600154367784234998636121375208215273058546885629305526049875918195023554744989729634961361804768775401949752529834814303052675237976165832146354613186006701820453638696963949601121573745871010343988799890144043659570334701238487743330540551136213045108546053110742051019730497706680317650915223195012796986153025724452758087577095667855810795940268363700633354709185397554691289634910044485372083608046934758473304781962500681738684382897005117593748313929939254847002 11908910924988740198667193620971701559160739618674866306323232839322420740754480117759953855974403281960657205558113813468840398905059949113113940091904200700761788482326422997354055195266137544846142612347547742600835846660632021081573227007335040448799077089144451886876480592470848329954589710495514195800372692096354294478992513690397358678997409219780993722891961578317687578610204771964820447411657198597233434878458886632823053473172177250343809329649448250120603726989557676244277658127702617397134762305496988514234888820134 95005745361615902163290668046092769038254713597567113420059462983398237118355974771508200433735341525923872382416790246913432212487080645993669195431241279330950392822404544138087622298420553057099000824053318556220192774049871560592712461744160348516576328409559032281569376811823146073068358154146131949776838358487855483293494910334601770908546383296757648002921432391677669428045539738583452484260840136243694193387388449631774545213601025458573081973056892656131987674248924838969632138591521577444672161125796270066110730451000 757931087659295355605136845158032152118534430545685392671776453447798231456062177662532798705906845856313608404009743602340516381738982483728582172390394167319357355282692989165281710060941108698869979381744416006543164000598134521357682351815700538018867609794383167468923175477544376798644483381362206444446933235372861612960800454524407394405780716976798783107307191040552805248016082892018716362823016246482595373625252459556746441022871810926581345298185681023652589222691933360202838220321446980486130780933939182404675389509504 6046604925157115083524491167527923451084816922956258825937089976089273288633492955178346908112105735647068252204626654645658368835836342961804271313189791878250384445347390869098797284621559707722579241069570633535042483784887429230123536355515627725122242573392363183488836123225888574089185982897328097958142027354188924149196316779315734810618189403756459257639139462603558609139749116640613488962514364838261113984799971899168264996521776690255837797355081888217820881869060293905170325685031940672290547440311306378671189734322484 48238687324466577971290207128521375699242214242666605018911799605988297831673173925293537694742215811363387719205191343327908399967896681377331814410929342305138628108779719424362764707446348167438770779335368923610924075359903634479166644962812031657540229530150001203230300998965013137832229696122412379558290504214777225161858768995193451723773726371366775182380914908053623070728169282607275778642495775830258332830721083183222848537053611272898940282478349946721735206960181735962458016297624402888101178271871534983856486780507643 384841037875670376925904756999982022453410243547055607397940358226062449308053166329794492146164906176498871870802613681530295344043591958911073997274113307716948367166607539491579239424077300395189885579886799440094663219426630144746825441854565677876777940634661484396819354614595565927868581053426010995970323428196230186172097336235434266632759985946021245756298088217027587176090174328303623061545247335100534670394971600966974989225261774964735769520844108657649132179979458774384589740028696930398923635777973182030563353490369474 3070218432902538030973881260487598175947030307296818284785726330452015352227617000274690722136608798801122301595875625633903236584918991987316466529771297497888481285404293480921487033479306088789252692621365833160596848361725293197955595463939517480515526739709505887526642607079065809582133040590367136642203752639638519924249735385336913243209888703371599072622785141934801271065538433518195620096100133364005235668466225218391160921544632941825575784885059543289631414890189130785185184138029921083804517956864675482513945324405225690 24493969190007690049917830789184103417496091864561779312893574251733765502902860992602764882527120411910794943248486883799496095796605675460854931670278499328394524660102842305498032666925252840913360857504078987334480699034868995911193320979460148160010778482541662477272158439943198941610317951192833144324205233356675210272680881770093055939905418629920345108727487096484346236168922770231053922560986637422433313185420485588705936511135633271105677266135769402727970592680480877136539110724651634233544363924244337713703979741961528598 195411918247514460562540127677647308396783037905345829267094681960855845974485443987151616786724387581450275169278785415945294442729362955328826064408340547130660461073533173490627768780241060862315970151516359064374284847790806051914346455011784884284913237726323679317156846855925106911180963649449374922479237519518633951576426832193586471400913303711629036006387101116315947373334188132312140150842415136540336907394379824069581593875224228205221091985768483973390970042375652315690930007360603148048807934909649323458627251785477640216 1558995675302545934410350113391420571043031248608584257024991363681220277580993252764387891160774156887968537583568172456362184631370915927104382103175457805720044456942078311928780860351584968931078706493356005804874490927109302249581144330817386864106414156441823858313667142158461830097308917734735541636934906889088965716588124820324317274212525425269962741441039218805381753694789050752564898102148835654012968331283108682211169647996454359935598455445900187826682397567815946443079197290216472365529949117758133210632047797306312411148 12437719209730714370029755567272602270908745005525119857591792493296472799936031048320729913306074935364821737862794636957338561006476512962336644908196800432817247588739006346809054469192779568930693141030454770086424860972142847066426171330027760886480680579943400820969524290412818900863530170823111469965032981919505861409151481478381820837547295888794635110134619011142409088830768232723392233077677233891285965110560872130057991080611223003744224402079047901864096152982837462192906828112598221938967781704100480696025883595386442614777 99228986220334157212955463291883617559014073927831046549413593350171424053310263373635708774053946132550097048242075439488631858955912925280347463656901138804306754088540740993508969974330767581934406292750802869839999137601778462594455188644520674701876159758047551786143351976255364540728560204498963916757991238453400663388087364338285583649317203532099791991464470953968586157945623228111528962896340033719809732393085429419040966457061746169786000191078399654565716316538017994054994837392709017532137243194470335039695459425899904644690 791659308839611287695798233288351731400066471119986969812398792133342315959052499082485258228265061378336650616722239824002329130415534942373366456006099017447230963046628104663793905996690066237988969572967290132202557391834208252607340210567704320284307588100006430670982154900795595975394999868155877698013004192990366347500373721193835124674024751552719101199961678625263861440486628560123546403451856240302570122181179907593554585105657871692611511694448373613698945148219425359684793131114246523450535159538119089424514517901580189571565 6315969833296959328835546114521291390293754191179404445542015965716242455542461758109865393049759805399031607176909495364104293363011226053294003465135789007508766050418830832128202615358799057219516455902519830334587891373971507423029588434887736724624345006831064160614318264130224408943755573638415623405738010873242438958801827944033386923120948790469281833992711759745833178892928308847537901478037895565797979015095480084738353159410001629351771966944439573388045145418232586775793594659265467227024412383283199898611875111446138541566440 50389925995403320616052700616713413416266320553101639354914898618342421285598842762538443980441100186566010425717812305979679922008816035083548875143749365185397862508017760851567007162134840753515980612421036093193375609627527670203839648033185746323676272335342046584896458243071513286351033440884204724664115178891747047673510619352691758475036569410368831749394476971538572966828954551870150862639939756586732551732949254793149956823303760062777011661585327453226607378664916642403240473353874793144642425734851642763622192305652927690439501 402021553034816076097758158806599450163791536660223750279158112586170019002539436280674509257288170698534485434731029613048502078183505527584399659400321526689422526121580175550807824872585141699234937719403528183200274976360792968441656608941577056396798437223664267202727953946734900450531165814652931304297308740353059606462553573785361914611758758313257801942716942539616547597090040812226115428639270399439457699976267286086252575650988166659238896208070375940296863933935632805271233365303973963830347764322237955908951723037705923448484512 3207427806231121051272860984892947173415896496354685053626778795241653320092909919677633775514616259830338135281329174367972797233080601633720871989967532396117525973062946530360239749371521716123886080366500260678570266784312125681977528574216094383733551511074716775184580923934559187341542379913494668166287875977988997025356567349194080741023719345707124884760705504587675161289266662360105333118285210230966384124507846579383465803866312542539031144619228155834004620070642999278709554359585490293438808707399734721294778754320034434950056559 25589769449431652619011884176933903617966180184758335877002275947081957032670935627626456461033248149530017754180271022436153536662808915637771363044894002227164333781174013136319689952496779455527755975124518926927869599480680424434685983834600256252868290032889501536611146726157868699440664730666572410044175932181632073521419919738318523013165774730550502414548795105197123201170889769393843295806305939542880094866323073398672743709295425307499122111971784282451272460811692435976578238393724433788784997010576727625072745739588854809781421234 204163348638188568384311022331750947908359903207934055677155603551498857763811124821968444921427075191831639632327223186364687550594901152706388781361347368548928625251122538093372906777451334258119569696018401315540631442914541736515021890675784113343649982031672147180982397175906777039917640649576755335164928239217576189899166311539974597062046826369487198046185537593911929863662331264514486657951508641842015493587499982775129365606635628018259211112006234313468999017373355925998401113330781444803863527936172886095021562959746493304150225218 1628887554650792105450844463905070764110254205230807946693692599317432912224975247232080247665753473973603299882083808404552577088543013500853204628430790691593088378270357380459145953585753631622452401827633030598187881975838958548725358593981946962952960720543786187590469299540971384099648433137257399342269785278030254927010983834869751355454336635404194555685818521438283028566106626553202864996853862595594495915755126218441351187897047076781184797713879911792051598002780264751503704132279044794488463254587360110878165905099103281537691751984 12995899416847859215880284143214636524080011095655832578244666012693509673644778928305921571412388496797836249418450226935352504204162868781497839164156941824134986459241020543040069771622605651981005398701538441845730151603243117860154056152446956670831527325644325870344618813446112657088357170648055534748881913956842105363445295136354344853790663973260144216052246767377128709507534755448167339626589148333891287058281758201343843372398438356067427729765758118930504812189737984084939046511947785326514986434940768542268835154434951589133191313913 103686802754642035312759246663450055752414228591739374818576556422209182469779748288304567737640406200916996346393906810413004599933361455457434346484992614688573210107014723296758480338030460439310902825156123218523853071410067509796576521346856165511687820800376865730702089628564922051051193877080740552131594963684326111494382849487195040874322322564098095358083488515002151605915761210259256376363810329093722238556237447696978043566680023179448381296761014752767310422383958321279972538966803798685299350106319601393917211775859110340592908286594 827260948419929882139163572190974943355513714840001912993322495984762712160247829912531623912460668959454978223941307929087555864146793030252235078109875201720336821172214865110210246941776097896177535250237392412454423763859558487866208471624916680785943465881834279494351899173017308251957328058369962366013886003354691409846810356766109692806103488345013337663207943748633357197393376920388588507210403656200003863043332338632176863310086359333412599936229192052086051114609340456573285251382009128170987723840666807103950246579642021868183890555755 6600296676983207629065440642806083188605335977024427066418972611683644752237679052722164651767166303178243361781338478722555725395033728366154015906910049795271539266054334223874644191584768820450466651283152633969734062229881737879147895017372501913304915637043142343194461817789405263236884316525065144764312099416447184557598817937450452090451102258784665273458977785100691017622024204337938230049737002590245288596682637428449692527177194838229320231181020353484431557154994188555307143332071090796761961900032683853955541435926763545317409561193270 52660657527839637356645099447964679095360859426639957696226444842709646382065506416104471807911059143120918802250168740801124003505258769695863767427076751994920502669869135198422702861584570618614678493247237954113948490611608860315567761170208058304545936715080900502916309565806572430899647814435647622211913710365551626894529732713105947011159682254663318091871164818573686975164932423374804888660099619518659839443103385688805999769327823812749149855045860541939290982967529875362477035049103338089676516811502726599222565815128296981839374700159837 420156395428567051154350922004629245087954975628555655571273402541919097676416091643014344817787154030273680690919583856315883117659612382699152106132421184615926383080916365214500423036621463770849777966013870566305425045042366242733758931134741344685008900438164192416471710051042492267561669165456625397762758668750623682754986419800838711219139696358015047155377589273424175075040660503139256986726099342853379894690698526590412251488827920842006814802485169913247389429410595010815267490592728081257030279258940660935880793480268115628312787011352902 3352258914487388917575135100589776580023134997288987984483831621475852999961010442189766990271780311475680067849590591699176343570273532316432707827487920545650273103904888194292966396326482292812985452851330481651766474828185271594295414958565693335718484971387543050550726479540454630308385857399194165946987476837772999899152402263321220811397901165127902326425984593367972832311431024280210408417113873179626775842535044309289618454893682086886605117996520019510872447970830297558181048230864322040182634866390007391206874849455531587821473383519566499 26746440860833961080846693237773920495912496970837378707834236109713515842047209728381019535393318238299373971617360126578392937113057824171347456115477025822907899613614562952158712542143574067136190015233013377327728927120679796554261195954043667860557806827452431309234804218416842043285215782490110591626217221339431824979017407346818151288186014839050307205450047228262043795513892381134429757579874469031666842469794228179668842426201019951258759221818047953021076087148346364011808719987898236312465319149089327275796349008814514287284972628802286508 213400929095927186817960028955520621441347654372213955430919164867456171008926662484090706647182866921826496756686977028846888136161561005973432662732002272913179141477163849989515658269954105796289739939611993361721696165524745940074148799470554933683434215995046522540207156153174594774297997431932631384516814124213078553680806346865804947674900038271222888169531218404773833543277100729416628907136262910197318881063824999453778726977925634508184820399794755159031892287316564817341454606040803391065226728134729669750931923085485629356971678773708303801 1702662102566099566960795704674796978176786267680664787687374391927060714964441459957910277026251379909134834317104876816697880032762486264494224341080054305092749955261457516561548900827040560500942503266467998600877722686008523850993280388708161729019163374163316717414107983803317378799122071536212283449172821569170937481752358109538849960623212718504682890674706260911977175827059136790070084634535087709069636726655860935649194735380427579891386143882019657987145667138522675978351334741533068216483025509813215428052219015717321900444819922908233680010 13585088885359654053901327336068444671679004968163067740344097291892321019911547213916716839460252164389820275628588271335527019543181236538361349720701519330903333531232715760549578770870355466216566134192910062374729912423584006351640706557877729073056473832749349755001126639506945966628826254266617439084369636560547634431915002085193239307214774222971555782403471444457407823540936227311584159440976179294045854331238743972575958358123018664737573406293217150135072513054036369891632176128239364689423201741440195896277372696484606581211201130182772611816 108392278022779215490533103523009078428239736148378432671168240785152224189381800398746313490111498981787104753231689966474526128075786269280234867658342470639243182894839185088371339944903728231895532997903964565011995726480092515517286418942252270781180651513592022470685685500079238439663114475801146313137498878070195697670704364545366823250574320102933299266018889310922139310846469049861179026782033322664236851381679530871807760710527158481807646482919118612291489269591552798854047633789456993130808192658224027521233446371139230808985968991744294521734 864840545658730895495981849751309202160696704757062774236990743786770774368592704505758836847950706040089790026340430349566663942408696264256317071289450046055902315361055952447148430642302711409331055481985372635270025543846537580950640008558309666105382019713289181612969472502208699278052538300231309247988328012991219797528026738717284311521467854845734731858009566718481030827573153547682497335696037090011524009202060132483079452821603528980558622832239293787570821425604590897826881242345123199335230136357948995917254463886638960979040363384920679110709 6900420768842661770925255382078637368733031065682911419880547882944712023965820870969319557576058571079057497410437412660662953442453353471240794694853121187719000063129657807687833966559657976098050070198853691332865954324032171876517186565567037929404739516212366221531196278736312177858922878881392559246943616639346281367742102145041524540937851477288895726298137861306495729851229095348829018826166095979296188685867339564450495762685859013805918525490535323820206318089927035688700977234870000078311111159152499399220048645009296598000631447049259385435826 55057556413223710568077262097550312241593604537029849983356173199939017823309297492726753933802783114073764481090679789874195553430296748820291688011076327780189917795629675227084250972499726655374505662622179262713236560817971411560713309065520591221753217756742941635781167040201987903447344302123278952334747704515184323848599620557958218717989158739793556879680748223927642975835424204823340269061156715752836024816545850641328273691029000291627892312295101786328753056570343982037740051652304349299221305191271781163693335195894609897400200611670809585166836 439298896929356114403095004749361506802924980500923596600520613640150292334246087242651183404970641604698700507901253959825195662664319562455341262707530941219924294638597121280604998655901531856626684810753084515205588492640476817587801814005020044869158309821660752257691138544024770403116704904560756808765622119166065770626996167440578535543123373779761649389549815569444537979726063471961717350191390574454322638111239456681966418207010052099083043838688404877792962236482483079733441836394553319421343851636733543928945890561858052414078454462388787098027584 3505137900329779924211304521509730454975840063745092852317779479945366179631206936620854216217621180392991735199929429302104084326050075600322105936886564565152655773880519393017941802295930401638121926014385687419123161651876619732218470486350515998854979331424976518814788205857653596377013914238840996180728884500930150699831548152283129542285504814771495684131371288062604220338423657888490564116049266565640919585145993646825043596792844483451995851680749523977985788361460559317068202263498905781260148595220693552168284922774306872443217713322025253865570660 27967388468234844289004560267388616096651541802968650271053176773888851131569434687385020537014601920187370107430527351265035272111991203535421010881590609333267631548317816987430401385900332114506230444521119740174496112563217933270928908163050970340212634930767484401976767605434458893990820591157618170544106525277693587955756896031603971603563835095712798924495544776677602953375683208246676520015249908627174973597369743598848995080159182275555227406095157510485881755649514294969252552109684187746075137792583508954109176783849103131085306239535938573380196054 223151867206291533586206222524306992435780486590654591981183209199957507390883460541783034318604489755447596263544845870952521413127245508292932985090460490354153421036926164698273175121038110547632210949199099945625219128800373106965916316944955349742532435030438205254922644371522118841908610823889641280711339434301580156789750092420341959135224437591198820063838221958215879852147406738803007494725428062073388179611955321632992979181913422516616715949208504325773540308466567736428174462222151852142220665647288804434044188878540452259420168476556605796487468386 1780536717697527081931411000883900048369970380513324048396436593378436401254415016404144124540365711106057111592454086121655374445668418989301984688500383072470058756735630978928122205942089165350849180039172628945172253102321025583976866771218615385371577827284408892636493041073377801626687563242147003370883549281794881215758177608725944824469957872783867700357019590368972983786282393089967963654762386298746934346377662094915863629565957848934843730594008978622881985499252193294762455806813679217151044772245726087990573225352326564994031055959692200385830419826 14207024709003922825274942653560885234647650737503822292169143361257941411725255665654200781958854596924211190575292472900637355687206042535862206151719655705906561391463473811809130589615585945849088801487143283028066333689976537079299229102599456607902558953364080280055477444520485958775941984765678628765110764984350254041629844180562458662417708966434005252698957866922059654302829006957690910420845135179593991430674321694285602557236354120922215451430626015664557489768186228608917564795670016906160813075786863503698495656244812178325412928981620245468693403421 113359292018032049311775428466924588774546141998345305768462945906759253453306699033692741983339769423027036855844687114347358722722708484356815792831166636390572698155149919708032539847735527392939369229615865005892738962443833580924414764035208288818522189973385893657871505742665925712234247239060560234981939310855161144837737432272463809914407197395297656788798536856122333457672149448376584684050734505699075083813818364354694548342659537331318939494693113527654858922002720268967870235829925385069586716616971202934002336699131844889677863765217729283246707784676 904509006508604219173925585550281455424604900371350993181661747100593597666570104694127800300204260212847400445105349152627142725119905743358189229588355387814548165929022347899255294692123562012544237630348073042269751617715314297191927556073812847507722304290311189926085601193074418986766542472792998039604234176131115112542867572435952883879724658504304798903587685000752701999845375911804673890003111155494273323228465257594040227386027661754901462075706698346218285845315533674737603547776980284523616285861328279815678119084085986792126026236811113996156596511933 7217228285044266643187570604897029438605711719597202416795323647184058922974458967207586356622582390645340022655620507759969285900111036729525738442114154333587018919152199387768251381472557577410548867513247619224391841076552894154344023692890320479053098367387871129090384156235831340273591582199342670841145796512095362809794096701267736711888805027932860402385617036498060826150950715801194591445747164481783703118653180130528602493382469652852653298655182341801910389650445552783353138415412798078316027158857069610605408207313944790533554232040057870133394687998572 57587703493463720273445343846750908489521066832342214396527148920476487141063475230946946679439355440332663725655242936849373707490251763853852218416029202285286064162628541433796863328852966773529949393135655756087643357429336587862783786867875438185339679850228517643408068798684502475565100856620607455041131559223840794498989094643174231960749490016665312671812218997978170725123756679945617839864629496894017837544670631811106844573141788097531981955300195775790622636239348442968203081010069520483169960512093995876325076433242986127815074410208195311381706976016606 459505635767743079753745414899890624312002649500933350422214939576229154836813685127429793903010785563588804424326649860753320809255870892730459888642155519485167492087107714137993392669743412582969461422027431571093335585343825802305922871940418443965936361004651435917874993973942092436645213260801808661643700037241808304384610482109861659250588177923708265485303306586005205417006747548668413208776688669711546093788141661100570190043545413111188322382809172646623585588818978612014603266887729750646943294487197167795128971534992801882280114592679883916348098069162118 3666516841855419853757844274472580343539396943995191153810718846452418916787441973334616941343017764533578128374310376430810733841135289816134061282199057833083058615570341089844565527798624864765520376060681676993890562813510050902698399636724818328811749165119090562108018347078820852239960977147775172246365179564008020009517263558837576437971710600407474797993726675080186197649580170860807202919809758385866906793068979926462569822340027674694248601426550861742993353272454896781122621302049529077972980364229675072613769671153599359072295975108760218453810018042787523 29256224516845443281129306234027164823792334502004139674979806648926625512750134980141570367853246267868481655130124436781161849241786267245464981034963253114447292387289741666882513104964842604981341280260092504719906193146913469291999709788548530212072226402909049772753801237701619878183100121402697368078079251333982374688490914157218650231286413298684850109482759456372795946072848641483766068292030203289965966459995686008166742811577093652846907508567820867058925074014573865711672713935646723715205447748936707507797141502270574821198844777478980327599523223270008080 233445025914457728000331978221026208444153901761638243403050324805617495290979139881083346729602559077525301797146599949287432876847342230481228345251877361588594883551805519802573394005196370825459071941541106505363350228201575094609616112906989886121568351046819260674062346895202578042294057527492772033769403114793937614350711324209571239014952924709622534330278013128816717467241035044697374522839998535043193755840089311094610668279236143375014437903153631178022842497869601190262738920524251917476678900435535717187260906661043223432923835541298853036073393862553142677 1862742023640057556127836211471261415991193128932897212227258351192157763252034358789064192107906797079669622298546565765143225582770831754033635479770411274734844654634484396423237635894158787042180927947092456267142816448173556639034310659751783848944150817943567857835152856513660458954872695728824452830405453976782399671875715254812346039763444211956779120820141146375098468110941087304620184385631707502531661872442558955231987656487707745690702325293597360510416590597250945645707265734253969970301085847718702703989895635698563177610088911362629826286247997123344709444 14863549638178172239102948248358146349612215429623972728018759066708415521685875766919907881440235090121468907401166674083289701183808765898786192282557077698440875698757336341254719657922480440307114884394995044892299003767130214112979494048375948557219538856513927763090312646897905371261920153526500456245588747359368316912736110664171854547778849023089949672971294170799673545376190056698834577309674661711356048303182473291494173313875026351323825898232621694451753053221554519830025960781201297367376893902911893244376648709678818236928017214062048221843203067153691907272 118602568847976057152384453679262997009294669336872524638650389424921693865408985201897628259706468992108172102524340186282719107237868642644753968851838446020191653281150892675638169998036266022826687015464500828602519755310321739312273208926926411573663909011468940819450557720530028492003347422012840496335445394486000093292807251274340277641159733114246094873649309986686319839422409097197931092200012096433812836761440743681425482696451606968744209768737562218594591918309690438207518353732983853483547663216033951983961710805719673497009710966025146231469383187399352650754 946383980758351631216463051721532963446177892295171315339439734102268970461788074534519662991521917639501752706864571021022447660882069705932283423606718748413974551157047310017481527654365023750945745812258930683994347966203285441043619396922025938798210891133422196147295950185454428675686515036917177810479399861518173729196831032310177971182365493245602047621720353934301950783346034836352780601974900054665549570046259395677598940967994628209427521810630838431432909122503376941296822092633435262668920498820900496382436134961463848166485753051847762328050868857015811802663 7551659280089283956251152969573295860395390064153227859216266480002446595267573631450378034604558450605455208644674979339776045868230906843487106531689132298990956401119758218975176147559234243166058210838072239119029512979909476313186365569562840555433552375999480545264367135680706093919212448327320266519768724602098154780192895253401465819266354312314295894541082782949900312202373590839598884006945186486053989192552738989381315002618222801415837279258265305115415126759846363170580443508823778270014194977466242383408574356713644368524369420214864127851588385932823294422130 60258610060383187391143389226394622249995365453347465637625290334979491944904232309874183175973994660226835538563415193712528234672124344404028185710671985342691060372475160987866347851115564214885930653929368007057005241752879962840759089526476186986182603896124065237400634892740463086177423976163573621024443386693156476296567944706326274207672968534656261403732717995907278114555148365072159396568209760518161688480345499782531623878163413756079684688197545141783197941361543651327277035043948141992358002084682478480276329118355271516042248804164160928497497471211249405688609 480836629176405735248055788551154304126991931405722053860001640925357314015868688992073990943723829509276763331012857385916400261450852823992508221466832492223929480049779603992962843968492356437021290231523986921043173121761600803138052590555885766266367672208480291461523106801257464466054880233033075640184985339143582884927681097999651527901397151695790575040732858950876426959265141089599709265945795965794414434048385886453455349749204627781795055909367236870198289840853378489895719324468626764670306933658335907516150310145723355503638951413483012199792927378715475056882162 3836875292533204958539170102329710507604785602716082072345900850260559823796395074539663818530827209094646232756873818992800711204877124780201787424983039189917998096207148578107048508850977872216579097905376140522692492545346411026903010230289447449415798302620867416974648390662402822304033839557030759513983615284696743660721405333663406286450349310231932001537947706306010199583774029566905248030052747317010647665109364801707783723750001921775838922144252601692920531426246131015288133273480415508158491000575291606609687541632643731330929748163173074013007269695158051775213666 30616780762737898543531149509239605325729976097756130552586423226024070974218567845978707540146489639289414373769468051822235946766980803434560192504618781460414210393417366318412951134098714498714480214263133411358271133023451230712576556333873301746076806273363094096636537172003708847631498967492390312421243794121780320399701084209634143854389934557801215584440986935344597319402552766901951997164913073535789666150337394744933274386931756461463912566922805385865393298573655889864828563483789837258193257023022545323729070537142231024363766805790263661786593517604646918769401990 244311021923879939946332360603077999635794333285347059117963548164860163012857171880904303771626494295763177082016639982427239730516998091743073612961758175547465151054800557828762116051004706710894544616541350140311866865600469339674827093991610149247683677211465882110499892852151767336376055247877404838914829031515855615671229949399275606160625654190263150528999492124679633780933918136938729862339351833900900929503852454493153034428868737623033295520683471228061728556422027195339283211099666289690865912527710610675481661228018496077393421286152682746664892840010980032196207465 1949522655491670618563567309294651030115216996035709147626638303013029110519133164099672401055329892588338099278070159799667838449782469483892974340399724044796110255244334853045944407447828112776963154781081554437007114534354686464225388083186018183026361060993275084613652152205752040826857880891457222625573023068594405434707185598536470445764925173737017159490234362787024247616114140917774843990348100036439997824831878002098300631321546154514056075899048869299957935682880055432384068824563914100233927269603721925914073165543425898183570145825221418594447120763958290506005256114 15556618367317683435165280119434660365842141328424999148559175288353240665853587962821048048886310188609516950375774319243282801513171228237906068981239086539514590248055108196075257128000592315539622996615688374846267809431849248725791498445706866767381436694116765257614344560315757653179971347322015009594928252387898835920765043078851459927030613163255231922149047972202949826973662471063579932597120650486117887070599454048451892476696177337840375772577051032575066952342681952454940604116402952287103301305771691438491333938518532021592726911251990863017351690633593777456979599141 124137726992712344111683218793242485393800018728837077518665328872068972698998924391600111315127421247684284473374927826745400949981085874180208748015669986916826259786950046221111013045108086334574821866154147449999977963877206932432539657002183277854687750906988186529012204043591213951039635392578678380751750595924530835997909825585281541721457517861999239287837205467982766487651534507297840643078572325570621639225942041001539128087692544375399136784915725118238680357145452144665590611335377919731784118403677574248939995720576467626572822058870802606089960423119357031392068862456 990590263771324525661793933655885177482238123311290932247839587030950941780232908824884200482336931634349842083281659714758524387217059933960043364351341717737310772393711742343546642502668322353544105826694710486674011670790533399314926301781731674688033883172751147745412775080541895538658722509905762373410184257579764108639652893153366073806787392189833832751952695794020726225789895097490760650866100208177029899994209541825050331817932267242033602842715078205732075666644860171395885589419560016110756472490062820238099973545739540344729201515108330030630574648174460271092014002304 7904710898087872294142433284439723260250863615494977554574470164344601238068964425468734261453216184908912666506537294258929855619030209456220877324798592391576879456937896804834622843775319382449249510069561632902580995244643100151590613291646609576729130965767624546679490623929970311111724085648319424675595466053070104252112908920733938121072719766509940938977288927876569743712944119202359250562983166807015555199578943718674889863330708754925555638654688731094101325415185865017838956847445213539336198297354620251885725827991476525076402817218810330963717733276532961280976690701190 63078243524817316586532237829306148947364600041601726967228574884727345670467003000046277085040506187798359598776116292594852907626024374173102470487634202489364885037620346858216517655413335118744553612507041583547717976269969896291861618042630093741503606917273467111637041718453755732809960894081887083914072557864117012504168612635607758577288890085470689935253884567015477575349726661577375865237810861482649300362687014190395207094423751468585150018783725966387309407539689506065456871816122455238554143851519670251740939380757060182740577783384108406547594230903570679439741050869847 503355538573395015870528295956348914577431215306407125679519581602947649093356665591774709959624109265574107456706494990232682984310528479343095201161923593616364978627918033362622903336340085667101547356703652476972980363257175758351099373873891588220931393875973147452870940485604291300474432328396065292915005636899390390922475923574606472955582285719318555061432270005673893823249705801884175166175216835310382931358848613835889774787281003575807319827726472412162715020590149435200275396791486014698415762121258894213871560743779144909632839743284599804112321292040568404917781464331104 4016721921309173556180762273713132729101451227289403226908590907326503740888039803791757603951403312080196849996955851732136967471141847410019599966277382196702063492074188734544106416148008980551925494481019701489512363656973911985989326949075014192369091252138440175478934278071871993118541954050348835785704437567399523181974394442595308816221654161099481152380821604512231708070791266305306003432214402746346827501660668738239349681138942709846351947539157715049061246617679717914902573601537182808310870309553646665063881879349113781554715699582731797217800661752172523020303109602769996 32053121582767670375071980114425025020281188769485914962421895281135384659989554186013627433591803331808967025324556758237810553378983544157196393534167987680596004043437671979204077490718617173323821595312693224462454763950022280239383340038199419772173769407189187959582959477236589137562791562825143316136411295466670068313762991066110218153854110109915953556063809504192171872185138101091712543350995484145351546891596679647666526067926694277291427839195146386665068288771857355559681710348785399251298884429159254532505427628844610590177101877886383032350120482026883504310637513868804250 255782330488029745447595742027695547450153308710680253327615922183638974415539578572029811911540157037625255210563255165873126505103566850385594542144742741519549093824028503897564533317794210141834495459323198558109359922821288872008618936981415049937691037810700538357224269800898435753912527063762886913365434625467688049026172248855830088008202359532973520843955034785447715780542627082145376849260962372454574459933249782655753459054284188748897837537107905234886452771650192983552784364879904496152309103778053102728257895764325757926952053923038423648672716055663199132920231918461483101 2041138097484017433698629590386769036471235955682296195945098661763944235893375948131280389875110365907897097437745903946366528762115801153553019884711137809905046305646286099850591104535423978644798410980085194789035721053531700657878826389235938401047128045257797884276338509107378072322238120408429131733117207219415688158844291513638970280531015799283098680379556830104510624376779302479960233497887284747468705107952930899634739678978757332714892096265646013749661474904791522531288908811449104683915525441996913571973974176384018137889725381036856294496071275641418361677867390256060314288 16288304230298492634806649427332247903135473773176543636721197142697948801073556157341101351685888979119985148312763659735589718366511616180040416973591441524762677794428996971022524378667894713644456023278185207260908333720747492816683260932827860398479955448681307759045462939405199223988209261273209064708151914946790790183728243700499334767509166255014668809312577637982830914523692790626466066890545960275848557022519800332816167273891894791494277051194797900998497873371718642589877247716310214129268042371964955000627202942540346255736074130766804071509026252871980836765160030081159419892 129981332822824143945093722375752577320078743524109984340031380055848590455885379756886155776584761880804599639489454965972423596668508781727365852967886702730862986898707550206692972351490875390731153790844487976049199259613390150492084186730546850734037016897381497059444047482048084299108849825794079062281287911932013571052862744043799162705353932798634265689969657650710872433806981567078020045015190779133374130740545005836535903134332571866566246983900898921608051554026950167616280580924620157344461358150053467583571130974226444052445411858929838883511271579990489860830153541940945169658 1037260224265945697831492351892143365250384527954122293682092299078069386850754132797492130364765064659769350885914192754312760509042873766301847738515358330541474360341988652260727943179013251571120310072465210860790169311111437810729344603370535945043646542510937705167173002789658026570367969862870496607736500180268484303691486278718891996522041552022970616374909691474173327033692073331995689885750645580972754368867672767067371362097138743665895539290249145769940820848190029080632467080083963854282803222516664823514195982928366286410854085097724553177921050232310373641633215688048100245510 8277440792090526503085346204881879872517026812732946116796067289537432923400546325477909995075897727644077240374194654970621610779246615132724373792207302374202409000508454880863295649920810232010663946092353966151417849648988705436477285387374359989957072541567779594178572139502328279640768581912177959522380274910217107515059872382697152921307523466726056052937993178689692007114416766994898998029373925688418414848379706207761573824953653203961670118649074092277736321248028431737259614617825466834647196735084576320912426191120185103937383853198923446695846471200907542601705561046491219641128 66055054747903043558505082879573833929652230920101504359107326699579553637603318277123076167029794811514360731444913989551640096171359032808506293541145225681478561625751101566355936197501435436255963990395265828037548068153443866671055794524796668394956737770758336891718069964230703516843009090116407310765441765465075630114270597750994136843660492085386171676041750992210578271315958572773053277646764657693355409863442820609376686660987165594432669619570484332843154990366190681627138802245923528090703847336703338553562828613411031299045854231470426600023659626392936068406941551368672502586400 527129888025102084094393801303403439619477884669691957292030162950797390568609791236494255854190575067389920588526146577421134402842226910090950150175150087150344423869532729679867665210308041474275433788297234741441601225438372382071999911180919870014667009970474860555368656733338509449475430327157231735220660592107727522536343291691837367824542650581511452812380671519281453102275076376310933258513480081617102077307491345958271124345954524252416339612791246491350230213997138114251995025335876519052966556147651948732690118261159912149597914220095126321356373085594672071194778194140348295248690 4206596258807842580092437412069127179054438192860745013495639707738255846885110927175904599471768844879042029282929802891232691713198958111854405944008177499561184134105665726598929272473088923931710316855607549358544520274485234776474022832869869089282887834645944544090883839281048473799787352531541359425817135929740653164267573095106058879374164423635785532688641587207816959770813531135609422432592095916510695486957217050733367515066244363475035870036676901943028690014366900005106749571168295562358000389190005040136440210502899829216551560471597987643660070267545450613507549106100948338069272 33569557932137371066801820110277129247181374475799698842053613081735566112533029159357807253451029395121830714594946367591258567746777544716759394468869214618570832437760953720874400774309579533477011390166956027223530761028415213944477759070236560265332423068136212878279110877068083823428170549979332618561338360817273482503993155044831414982256527898173125963933124880376454266410437447407225554544044941788137037978620965588361149475680870941973480167257030736816547083727088195189211127532167592582487157765259805988081022266288843999094572652236449431592450059029835668031499528796287454581652276 267893396974317914679049431040700525398573007043175512962448350673325541909147917541494301941702239042612616936729988715157853348004375809493875353813721162820970668799817827411553466039418840775091737484266474924897811952047335206537817513479948505621885021370386350663389740939587124775829707817042851429074770506727715329648993163798709199229510220385479391630267499423675353237595057626140258307033507685113740491510243174616960317793540997739563331176337153777980454131892021354029781789398701287676814110819332133808235334464997490242199363498643796880500367448090947693707716552757064144472296266 2137863574719429251133214297554740566542640470234445634335918011434753070847175715062143316560242269666492478002110393359168278715639090627273065030598821430297314118335538018158801153244556637575616016815439888290426650608060664787800647813961101055585314022910048741015211649203061789520812914581985134536975638144829716698131892518072218979176022669469941557898229289411767507013340965034364442069368923324078454307724884437952127092150648254503352834998590906212092697808286492760297181969474389409404352458165438769887577780383701975596774304725998042241149998230870023393004947323682887887185457204 17060806328125742502015079939971385952674264771028638493347012014785091651699675029794999827980151739144886228180315371591979209801438412906344451683498866517292188035039637684787512933351179078891630420735616748226083789707523565764909423618987655914844909436309810676584512053751003126451741286716025073409954137984092100054276944881492092357408689798694918937440506332472603008583328215364177616157212893204109224755136685268784417448213992278746496051330495893162700449931542248878272578187662107431041494596370537321494910485654731966666864855800602712289791756631127887851215223689927970601577721394 136150957571123070957479179071396431758526766608536793217182325642767240088855899653403801908440173520154402249474301779925080779758711964747443861558944699461315346755167653021826299870942933781808794282837219942298056219126081451814392533454408437421891602369589153068449064970297594290722938310877734593641370156488020157669569749921884765472249397651823878969650332286560860967168895326863190955343135799180960139109468200006676643227713003833790106196785353487179330516716195394801751338520405107375691228752605896325577409869639084570241310319637839891480159120039733539486986389669059409685571329124 1086534259690831770057518667712030098141622975397934615855188237679495938770126873761600832056639176843545338966483953172187952354061834086569094919402794868198807588678730123193169248013778872163189566583706322747619938971724089882127224447895025657424188420878625912844701125916240940868601129103102885915370072819812474646530897063472964246492889608624687330620236966117135536075801294579797985483369139082269446588927615527205381924905031720503064729906632004615827295149756342693677521595556226619677924983541571818318385766343840528628694072053734906349326744484289436928371489971310433759228130608790 8670970763892386625887251378779343219457361862713316486516366010590262515507770824913017583655962343762252215677849332257559075480856002284761379890795521229682330405968322131820927058799928911719922919425595215750728696164445526580299241400788335599548247897742843745287338131284999727960690913475928242933581735346894081992527390779351882401311869150671762918632258251814606762167486527534448389721598943819807609960680636961521201101089867420289051512568907967469460275311743363148517660294654396011724299251944340835895381006275724588114545128366481685044470022128045393930427036665117713434897024239156 69198007133894710679376677588010579661642695243950271010931201791488212254904527539351406146139146782228449964527415488838697398558101175634534511124484011564499568258460642476595277928640524682216739391436305316638242265136466088728785125274748832352092052991481335968724174302668059739814484482610014190646559477106592483028343409810825461803835317653999247039815432542652009732298513184263275617230691959245926413317072137475962338880902191122238991068238487417876589451364421317399245289623283699110358046417911943731979128400131499368018226563365889824625530752845195379046044380282361325329140110418966 552231296783483121719806408027660741002337219788196654658398271112444952065066710120602674881283630303698346188874397789478734038599950190704003060557962947165010180625834059938604019233352585440658098072479890004877378274055348264530206467109031666693618476220044019546919757958678784590095310000140224706777238216216858872407811675422482688238483314312301275273625350348341699053439580108842337617459458235137423017971260683166774936316014710490919773483030264093667522279339001493427266290920779451773290099477340809776088266104832670483273020696385767528523062658986452982840288395323319714851478794061832 4407070555984902536870560791727675921520707880333424709565536883253502513812117763805426648843224520501828175627516212189031978498604512114089858738740213376114278221824522359165927894299004947979046791953661207465347512262186292411784396058221847983979009203474724877076108807778071636773168974299873376679861995521560364001816821334362494341858925649275582103984765950903900791916799109628797248075835001453146306378092963014093221899348829588898109534774504640725385428239309084351596133077641818460261385120851002581162986524268687502203465171706873150327414128032878650524789223826081575658868324354160796 35170662200436720729354590765183682043962248050001901917806052096912375571681305914194795995804124227787902237113837971701193947229236686448920025994511933982224801509066120543985687255746450924218769806377898548803172810703474655868141994735451601198591328552088759274663809992309970941631358684579564846673438495519213744901419924104917810056404790806672337094579135381861016610598331845986357764652487791450148667656974650113327322786493710652691404126409999944714498350941145474287003138548890421861307628395098955528368472096321182958142121930569475948629774062321878160796925519850605965325282644046162322 280680755606801367423422519575193154844398840271323067424722788385778427115678044963838055743467432815847257537538466114229281984896519916407450131708085381584190658730322537057269046562433792760001284080448650256858999628326376062302603499558624286167895953723699230137235579867270968711403139542692406813543289471301930040184470788249233568451928981557766807780334336338842328561289522956085235611962947148137528254988934549660265841476540833451006519908320822745223066234360102442806797907045336748624341599789793187711184753553061178721762597363375711889138178628417594250792306834353511320174500887101347744 2239991002266442420888366167434893378276085559014916909184617045162541096335860605622607190258611627039835173355122497341091559182240403393252903960655009489509667079621442668528196852408634963854510487994016134228671246531613108190043506395995367530620239460792621267000466676285641474674197575234745786977941106316676618635916513105489579781480157295457721217866702271603925897333321721120923079035904471699573416729249448048837812965593341710319215280693452204369518707281375161413610528623511436395071044952786242214496628314008464137873392666704977154071593694126812789601485447101928406089168156617936143184 17876457114919394523560637451762161190151266896735792727525573178666338217608652548405320250194671444367928107873222592289029831044166314458285781962933505315671057827276790916977395079082071207786661628883644899947943894932232302317865830195043825074221180463924856071828077330185351170268225826477761071098080155958385762053030658915278462594125538014738015244882252363839978444111507326430623156382997162806749093423779211674269539153411151982630819536371955639032396420435294744587346769987948902979624493166118609253186958501225753423821597556878018510547561926182537547320830724873866322301171777673396426249 142665237966234431740536334805818747181193490527085280681083693670120034205758415181044008989276780139580722134581535541280344315144086817940147911891503540315606291471251429978104575535502564075692994532476118825884902546262308665734705295196549834755018948067894961222787749408526620667465631532569395575035992887811812467939599015112586556355613762357531439743920110178439500800398989771496586861453781064619948386527648387729576398149792463097842927638518297887171697181532719743097910816968065667257717790073607152577918256210015822689477060852091317747877030017704683480918332704744429170992959027759907997428 1138561280858516651549823915899487069789262168423483239785062017132250312941236682635851600589399656592100250215107248964801187419557229262729195903627465806197950025898626481509408847444072997126243234213345450213031057365591474432139124529892785851553485215916534531399265862307976715076212267835163694299123890802698066603476289191260347137616423074012713857191938737203321209181600144081894960185969751681131091770340930335187244123313754253722483393114882891519208511369073533279032056931584637245395751154339559351625695155494242668810749491494374261686959131304432445215261525224619960891057852410014416870043 9086490637619093457554308758485106320064842351109787585712694366440328228216408687122694042118637123385596654507050126665691355088626449930580630315755285186248188698298565788169456661886351138231612717173443913490689004869407672269503951904791794397312588841959201093452086057047141730773588344473714122604461907872260710743206329670406764191193842264214447740840708530848812385469568612987822703905849960388205174927559331008355408874957512659634111217551098605301333631190676320719288503604810110349256311666281062308120221892664133810663151962437832402900366901524139222176736401135437171581494419010074697823636 72516607590946845805517764943046859779038408886834317331128748935210162142049806521782024696300241387179399883869446762479023023478192736411409806278985987493255043646528523494810280874868143919954824667553617779061682413850024663528882180291916967762173641769400672840654205053505170084165517511612323244664011832873048125232574236575481547150540176096309697042432689692013003655420833330552443256187840397531584487352319021028082557675573847735241992054076594917933541373300517811522821207269612310849609068676236261359253241485346505718799718139951619376118319346004085451731518511445121360592048236309426279377099 578735726748839685208757042333186599340365689922547946209676275792457186552892575339236020446445421805267001685244206247695352807266223889671881798866051479458584919876437051201516256290045939428104039587976928462646331048607656260778416923014319586159487348025791339356253695893550309414243908863268476765755630630684142422376164314730704621740091771774282919390174923771821743598673905798542533862018862513030605902105695070668832878621802797221580359583419584169632193010110682605551258160049022186319224738777150595775597147193492439624440687499434730588996368200338958395754200529178150945103372407908307361386642 4618751762039700802409271558192324014141339159595763410301458177955909995739065030035486049932031029854856165410685262533724045099347189659262326319609846241668448798109944927198437643109399861458892749464305295235450934652633250571775870892352445923498054814062065165785962103434005698626677444983662072764096679337337018023946571119431621011707322749351640325023341112532947405819226918668276039656990854745243353409774656246402916881834152096287402872086652216078027528540773192317579760166674132324477194830335571178677006294490840196580062045259982717988025883653502971599686171882942585794621827004818954984995603 36861284020609808099359522315942522948494189345878592448409717617635118450798375830260397414589279973928412912878097997721939447664416855694720117591487943657854966908080037201446628147444114444581115887905104010838365948162347547070905151851535352588951432716417409621421721367208992738750048329596535175436690645017953493382174573258983443093095842155160684324964440569517433899738163151602735731356111658516108366645625145401029510291854217529303398464039032220378938050813677715290663798918193423248603442177066198559491029962146843346913477248338587994523097851747539915873386107289890672390142641745971665841782938 294183155823149722377599650567052274239684840852928401315688853480355807035348929273344493575920071588751902404245822949750199946050540951440891763618010424334802792295663865161839331497946832854063171545424902057473622321784592736982731097160634518942935365547054607681092181993590550436630372518402049619625409022229509855310827245125654156262144355906821928242339164620250462556834994643602174746342783012749358414526895972484932693007087677149603377252771259139359462852180693092735469821329432316728230756753992219708448126055255079792294109649358282753669721858297465530843516391773190140253673654435438608655493059 2347829995096516363568362740559563154726242794552542495590782461188227848034023689896722700173101990551789433409622570560890320381319605661617070402190872911386196520449604832149813945007223693462721650203959060397042869810725452061732210848050861653894675510455822591327360834992287467530251499496840710483697063895451417932360266055661654639403975454362709157434083459516248864676795584649781838801056517538386044589013081675094710397250047086538966427150131306660387763720956415752759104358848661084026655068600588490408430683863235595837973865187156560570360731470680993439086336641486496175764224305460870952383687344 18737730470049460517140838832746635670906850759684266637225768339697528674451800901825453047738859331934628842335325788178162345158450654985951431150665706362230488202931045022844332259067807587767933541910567789651733562203346536367080297963273916036401370827064875551459758245218830711533238600425577729866990447979238814936426617762572835084449361897411841671298395790340409576979226482985011490732816555863460320106462955883644569712198525170804055479694410989978844232910077290029015590281335077686049885198191629492913187938747250999156585968818111127517059268818063787283786126475991867650677809633130934779372075574 149543940750762469546307863746593522627539017637921600134586113592745887662505068598794326928556159586907494022394736908885635135575450181402470244704330474987956862430188867055449341876354471008463724824135904216398852966201942886550032157939663657849166339209662461516901398640967451693727283390946309875175670608819316873123565594736061949792191525702100328233011113233542153761423453050309490138565315425418138090892540587917031042319516879147292973482339660064172516585369859758383622296227807872445025865639110574523520989751322610194502573696348539243415574985018752295838529843067818479257291329200765248598596244020 1193499227619073436836325427783093756616406967600390800069466462606742716331016136938562235636846580776732903481145944815386147462580265326602121268877610044884381366235168900791313668767993025271041244867999718648379942832593624163021944413267642427747904060376805576491568478005191881964456429709255117598115265306221307640786153329404073915671047210647153403016486313412641944707377509093845085595657160164873429413318275818378665070636195646558083106419588204876840586339163146109508620345772677101568160215547690297492246425192932793090182702637392234977954827232374605836331207921214961843969645096604992088616325572863 9525262381339389336090049743765069458744256871783155680029798441390657634695089105731059558405012645103105462796101314377964336644785631347226175124528960143483340829518189826466558755253423862503852561560247823031550835375673240514187178580538396202581148737947219258886978004703159823508575375826540735260436578252911783778828926203450086795336386937543800777248674374783421790830742744179599427154030167467831118185080799943797834130116100323230718362640385006885128217075795580194434209604259200167619917808030575875118629385777591375866504371252506205537704890716578630375899228505006222068085878525839544113995693364044 76020939473783063821677544156779761781929102893261494054822667062444699153295403892039584808743142380719316329472853984353753972616409074875550353931223698309440865101438648682945695098546845719406244244743397508247912870258791891364632878410755647719657382296705708848802076435579657451503248544055953684027050631004228895446138311419716722708893495414787224558835161465558892788999056272742866248796112897704123641075500572105322508723175427008015398483909899726208211739835731208986428130974772884396245992423403517288109952898958082688028260801713709941450828017120317726702781460342474850464043889305998448863642344372291 606723745769157447049955506711046742812689511262452592560411532160760777847407929878819608209842115445376806229038647611754113505809881328363138347008176369513372555931199007103962596878895369538415844151201972691930946019683138233344545150507439371707368632078071391229266782075747937301718989693706194958436603977981908972110442590895988073693036027382509568122855686554808021280120075010630982872980914015003627297574070388200701453788914741109930923097533904021117484233568069644864544883413319901261457266489358639661169132933282455656276695924526202586617700498914929886479800160050458197807780569601728761045366287916972 4842283628872672619056598661793792530214299602764236684988575104059720810595305025379129186167521687821705533485005028205287861085127202087342670609163594035384357574836935741167027573817663384410497491912424378273672497433902084162643317958934013833473184519348489839807299933727318219946263247754829168131806293371541876242444349356773853755635978791228844649547634891003604463605713565639652679114581106739268264723441944444433388665514714082759519610583472889172597703632103787801834292887690189405148738026793335880976845153466209276663521538230348717901065988600189279567968850109287882949577054776120443217535542738521895 38646567089107490301415466946179777588392961560079717118651910760629086848854197837215425300789895201694791440653276996140173374283282715110681422315433672852883091473070454276887962359905205574221834583634210289106764946700382347104122674939700203819495541042897814473625605370354202792165599684534121262160741617470819061337535113183900126539462044394694985532989188697194970268032597666761847501419463357612319995500505201295320119236811337710820071997632374046652370419557274174416616939137936981363392383780234319182535031722524345383992632578183779791137125484353733073484683210899299856325427454548473389502141037092090426 308441696711742406437526811549541140604812548891894015652241823584382317593730565881727818902767838338173973620108056624207453965501535208295511931767187001770576706116403805192562710925519563499392793684794186114729893076380470323067538423095635578450657144497581004866677374015497978479611603348663241530179867523453482933496123198477074397740091012424925490994227516602162576862662986221606394361810035218384890395345822575385516229421582055821004452055075722891479380704278701132489375243299576000130614503601941982691557461586510086355959208170566680717681770498502549908228371890107237069808192898523052309270819545927718237 2461708942587345958725287209595247120670963092116882226384845944159594763937801370532074745475649957369869419086745522001494983883531951250947100198050541914680622616069992419085639436406904890661595846690207929574246599359271436449887708196638546079889528103730292868701232999018027991837668877105816853248281571782433318882811649920078370552208287729969352848893250575632288103758812950085259581604245062993232209603207949880780924581007724829500961291863437648898276301116602178224169601241660601294378390387489105288206983144428628854885558632274347986337711606955138642806290096811797006000759442175365138543614598209687782114 19647250286211180189740604798401336184182515854056067297884285657164392441739049426645101904235945451135116418372794371122960632904607620175474610963574969795595448007352220780596740923281100476918404532862884906352887096930256126816973290871131845860925245909165654186814881766758178476978899054147945278391806625010788466431699983347594346891256111838943650762572218222769743533301740931639680345521993400178381206646113139307545239365698882361329033907994506941347357728066149268210023424651249294369628304988061039372907283072115466413801831910367655353411547720932654146438784916322530519967205047219777833075876859581524177330 156808031322254690410761870106465379766339856851830374903378422760505395234224499687931969374906857629518688137931393222246036237143577037481035530809249086218982451911729754824217144394106271932199967784107164372838038023992969534229768520004613413308231262505357010127776713112687454802095831950105504280818640801353740984359264278635324624219634783272855100215811958876490703218812036816606118695930110894302785293830219555555073245409170823408988790738661319757769108340061871763396427196398067192471600313313502057264622818915740439833646009365756789672478485017685246676557246487620510169558548690446480083072266164399156990274 1251515617478538286969798957876218190851650976977878770150001628195786988233852493038852212686641576337244747845286127170735874374448377150152453725712921921122732250510320854406146873817422837789089906088111031489038306072463736131697631633003718279919629010425588936486295504885048802689295860786449893456932847234883796989120229594714674147126548793807059738607515112114289894887891820833275282178792257977090345927799275080144504010022017565859691822286093549129613644300874357045870746277422865662704859885961317470292734558449232846980811956317141352091692575062960563733310966739850196791691368708852048964056314204902095803226 9988624491936774196016864759070454935838887877111836765041003618137902396926974832474461862306843844907543807609776374913624521768360204943707526935021474798689423885907986787843552432044808471691752936331973880339153936383624018838836488714884586421104781413465416320593444502802712777458546933576312363759572202288792458958321460314415037498272246685052112452088733542555194589973192571751106726535334686689341132842361562144153098375190904981972567014339382907031621321915074905879920109871203808917940290699064497642819658189864857698186832071087369417813081012381286702768277979488741807087430366878941952356891027401231871039748 79721697630053278995908835018051265116527333839144624015557141134049937926678385844671547024757456383735734332730864661764433048166234664572259362940317102078996201183822302628938721364915324295243835254481135287531450535928828235659464043128001610968750048495463019532371399517512493235417529595587145101775016246852228309634049669841140394277531326352391577316931897164911014559318611185058674401197792769113126514687311157443922872934478094930219933776057983260358453363995503229332210914232604536280170136480265408955085648422075251870905101002892900760774553531262080711179062447719774347443885879993485407927992804195739922215236 636280807749963110516853234924020152717552563364840867003198521491168395878087240487653994764612949847025293898419410407353472660911138732456852892148964349942547782318887760122516333388020228233932840840952887412025852766246683668063675538831276668250371983363256251103797303560617524508780644382948702368980594861126959429528490754290344150027884422882081654658838314411306581044538561872891430544623290914316166791162173904471534774058099359888150780662188142182092087174783053216079119756725390854894830288946196361777252259285251361476811497602053264148270329744648570606323301292315812540658187691167397322459290853621518527372078 5078348949875678753982965103745899555154425308844790213080936751956632667205389837748565237526039818108095097859764790872297082019450980921962563691907247642552519841781611066982347833756292107511018220391053797846700957676161438775403801542306861585010829218249543151934456332052752772851223585998268836213016903125316297814473404317136713689292524100075422466562195952211015461140287353690779916959890097863066442708313170644444044438692512285022717583687953598973234161343575328305186002975999928230414489301261626823819975847525295696969711938967105348385223872783612019253870628888132342470472198660378608614379309525748244080845906 40531967059498398992105491163293051526797118679270900519689041069948932484114941275975972521506043025131029516422872788075492215246195632123453561123528398446751090786587562379253818013373675166422955756229634975339547370902905954954844953300817312132648652085588270448196437348906049518312404728271262107194412649021948244708396418629572167776402098096329321533152502115643303166308299002426313744028129655393836314587627023265180093520100368979593788506666121557122940468038574194956796374473334107212997157530500715212482183567644777761439943509383500208426681715772002035744127296631533936930236723928279439620110301649965449895232914 323499970026838921028999269356010811073742891866271005218047660107807298333189480145627349900130789032319680536934507540869324007364478862302614622026099094335536183895593342755655463966884939667198275689964546203348811724492408037237717065375515815418614658425354718072633508305104618714235843148751483559087051738978887384391461892867842724979875778194245585218252378090339050168646423255347049139154494231870213321400672882170360759138781576837473451735855571614877471403597221553321832950115736817739846724659340011179905615698214175474213878087407756922384379458473006650573546939817350451767303679297325426089868179538974144058306200 2581976151574320611318329187745957027246938242697060119424307978658440259949692133017929569458213472438710198486443227538370002352672115332240468555508712475881387480940794544038023805420850232215619668508343652460113106321525276714336810896518993798715624551713206399411491622960375654908595335899315313442925971065221092192654535708629646753809170549838994704950253138805400864883352143764140382577926736640265144489739828219387249857292378277815302003313554418872317012348311689869501865784982186703395568086102433146546837104943120344955822669689806992254078651965589563435534973494190355771381701831845501429223545483536803945464393048 20607799605276441053438038328619621646070358935762902391004349796856450403872192043741131283449341035932921108549413081163932581776914994124595257104662702717628109211178550830814669718589435780721988618167200908806885802900481994245107339821539244983158171773686577094748553556741726938300909940853657643875553448872366424840008214176584761881773053185679078234005020428462306548675181610753939490044090899970807553318078830478557066095874060068854030148320548890179346212164675901518595327616377621512311194026672173837021210402302469744869697748772076968825825452066055132919732619537294948341053783899550034296202647739387946528055595277 164479746751525000305895945123834839676673333211257962001798105059476037954300812594950902810700128843717212959804434398789792787112647779335026898639402165880058071589646457482242161721976736278874592074900396351641471183197677002227118006390780752148960525946150762690353617512351384696039321485446839672643172014279531266065153994659196165003033128635957806422536067234531399610763063011920270134205370339261471878901702371539697603090673203585326351192464229963027409941354488473028701456058849469081397506030157219412784737651602198683716797588287552566681748755071859965664436581831570880508840713124752829666147401627852919002366052430 1312788129197555991534587298248982617251261863655225552197309213374692457491030356697204590610580020568718440118397221667028455086048964795771825279951086237828745545384926252956152290146835899053254198058890078972254024741970396921726902480887490553320836990577660171464447158940892567127690715911401947448480822961075265555426979621593955338783900639603318295975403190949700437133098168698835676988884654500376021268246942641040164918652980311617471643256251554292483687000671797615638715312944216438917994201503899062767323286641734102688341229693669426520821985114596614860165286032321995355799535095231137385228657698702394672806254921145 10477996659515007900263291129902082192379230612044095050693934143761602841283357209185918458838714519910204435309117749323788068911968400993928270498337870171823306666703211294893345235195561504712062622954045629251453765441119353845095861135839605449232359875961091917109412759940297932520294579661278230449653555764514113166812189534921565455791418844089704962847447357381510720742673978444723915703941092680433857819890420566221988361323000587727331356884608741425358854074227799486701177909434566979068573253553116759637998756344160030180470915915359543463593656885070878962000773851715911416461495700684910915623612709462603519261131641364 83630225680508232026542486959198387683896028603336682453336039251745001998366828986758399428459576879207923276465379978210596880316561135374276313567195515647967465048456051135827689097190642134831603651798903429522718359122969341969874433627424326324268935635709595865192903186898309755477513347951312890711988846972457452383798991204247963019304698522998515094355720733568053638781535747887146006631504624903073027475492171375000294382731736301266793798987674385078974786304248224580857410308446574436585983564455788184409510147860728106167244767752939639605191071333131802967530298776362402628479395953550517284857858343056746123953367077347 667497550615170758852254593734590066753420638350868724993003022965140704814456453484814782008471585058534047693768672111154511347035855644678934419592292150910833427877011874022668845810674150314824489647270048221870309815733347759975774235976575890693906059618240673893483890319613922162136545543598166897881657193659566766153695136042485128997988871152435999006457572722005804429146065401728530444267168506666697226810669005187334096298163497908814719885792394452152568476223599605368499073137796508388548251577775188470859830153192362670312316432432071821937879095548916787778123196267293126045441342623265177424636413283614850130876362884262 5327671941374485570020031958650563088765018537251158949268208526883861695573808872675359104882111621900660630618247386255590010722389915374863598548569832330911908111927888714189548161884347773229611263111261205528000834945905287538451959264058048519567860840265571398986553823972661055307408722392358148793147547833833046261703397883795345091915729105303701352389610484897797246030663278288288801989195998055946226387520429272619243660880445922619358442291404344755448544522385960767472701470865060020275609708148593294116574769380754634185881088253085686526220118973447411598983783944039613422023705356281386003354690479512305227511737823429455 42523270576055788417987268502287554260774376869640560048799823953393681008346535267733728789597175406766541272843170627418959686866662289485943250417150584192324987539924316849429100176896028254749832729608319671021397376768097331286743383926904867899474138885523033316457151392361173190416454515966278927109495053756124843437860170017680188570608000961006085395979521272660282102080223467985567729040712313216797760151185318749192983595712975575201303294821395783161588863082656477725793608249250581835720871726796407312052074232288250004836818924788476009367033109631662352893361559103793210586137456516303639008531747222410267433606689657538584 339404212313664014997395267666362002375149646331547009742737250793833264715742989906475345916745467548644315421177500648832833269612547123429177962500962579585196886422286571857714165752598355514050494672290150297085806393488429371736397198341116576558708625485616980702387263883783216542010343678881164473549237173094422480100884445607179138697664623587980323013242465561593355577910218522438924621424721528874232857038555009022807124614090225678232004679899652040677845024513520731234181498534509051630702421083907490930424568180843028494302494893271557591410381700590069190214232985187171212141686289566663722777568779654520631287482194069573888 2709001062202472056333974402958116945105492175732014378295896454289862883177195919985578021545451214493478698108907881016697071806883135861325678236295219901270513709851732201536828105680506220026832323424922097330685970004021434907073272002019906746914017459527439553592843075605049768203628123832317807953848144814267151774268204834005068432852758215339897422500116635543232935793867626304504786213043866005368873551008480952613835586506749526220835518132474092671505679977149614237486284844298258853520955875689910582119174529100699749538741446331439568055015261780404682020561686490565283504986431550625593105577653763578591265071406417414313858 21622330335920863434726198552799035670603217101131153459195184432875852057265440327785749319767583587809123453559422741047233320531727940222820366032811538994525669066059517052853378710980045708051266676101011767905095787125099940744633963621680692302074192382145175443410052272051900359652078361135358619340030332065860699693664547267537057515959386008849986131003281087059456835665242159797856602173535943675990606472924775916772057113673179908484249561150011711603284968267321221987544145231164391809324084396639309729074765580847057318501628713130691376937231496902633165616469126231117401486615868023371299417020118959344689922915057279764957505 172582673450175135250361198629736170171074896729319184644085385411649326277402030500794247152396973611044286340061506578310774435096513014490053631519658828655844044251211081525589191432412109767616569543652044280142216981983944607684434146841269277294454377530445337678973050689993724446818724528657902989019420591807912099902787503777177662553943263675267318597715318648975087460626502028266791259106484624189649817065850415810314184990907663508872547811380489315072196661046498602822768048080900210461417253671471935991108516653560973110775013261102792053203131587289216135125950382683384860754930024039375660604085419344393806345667959114214527684 1377505223543705029141654992999154763802165635872965593825641632040125940291262928306735335805002768589121759297434545218401049239041707626867857852233266890240799997002230522430016300597660178299960572215001717825863708443348989381207896487322524725972432235881233051927888540825996567671971666607689974783047686364714797187724126508313392170406518614874567635621879754551065168487657952732548659623870651066074507929731603524471569432888766398789564303902651957594729474870324469205165580832807170566718568553253602499160695596891200396999733382950540917076641173902210289843074351538449219599027555848585880970825456457913979480788279534642099094735 10994884728714972590515900245978680156139679929156617828198425706700499306109049591050040052432297009360471434153812708392096860413055659499285082546352604555768533030709692293593005739943848525948013319625753548236860193556363843890564206798740889339349720487186771238819062304745242078414852657466397318271917560951488268812403370484881666893116486878971336298353142633761567028052886601461808785561543194378462889190010892720260534297762898123458198682271677360135302007775151745325287998311635378939042769402853265563406164768315826834249071499006819832664832056809271639196078870858569776039999499709370749734979308422009028387228027238232835878352 87758555671929592544873299943037455584050114055982463548177888671199868056696598755330046192238971179258140347984227721952376904962618072095974959612065803981311031903985867443633346565398327943338128962122577498291661389610951072130531696837417592073005051726542941811658917421324418104360082141663931048211872988646327490563005007289943098640301570712108595565754525391968029071409029791092587261525250561665873264374355384758178998155838625588359022662091660769550241589591066940014332625127206389344964917980162902700355859841998143901072479254947555638846435322639542452563912704018373586252945092388383404115731180603628416376656420573867971262275 700470113229763796689599532533297977173936049884538790209495295549443252187212821329992436288319293543105439967743126043628481806469360412283595194331105475164690285750079769264236666562889517078113807601342956265885289962614052940940300391993596830293646726606163581914983800557925015820111239707198472897896144187412325105456603917833547047559297638053015840778473215090222203919898352134793187740754205999047048310930901475473970005144288231998494123174875136320044892114922357479563988597444690379943621494546080065604774323339810330694650416333402602572260483307419027000957316909532212611049786939905882198024367004396012893975452340574033897457374 5591020775604837320120771355343765848383627101738626423064829576943070886755925709635896773997020682063053401238980099037801064036486321351747439734114584545133454468513153899551057835935802915881252376089317871839042482020156335356177583275751486631413772696820861800506665688237729921850562380655135453199221566656050631170856503107326492417865051050709813631974527151339269792660585976406689740244778021220178307892031773529780945208414053726557714544736115621881219323805244935514504084953923886005566936244434324628253014483229975860640198033921006649975295607340338490156770536159418903651968790734482969459721506292217411049874159623714348579757349 44626615518328956322295082996150130515217593484856746920637408946133431261334626782164610026967500326363619724323723297004989863642527905286645497321698222737877123055708517888307662738412852788532144467379844874799448709478837390109499355502874054124060614955380028194810193131583465100817746166237334583368235164751339911120781052090376989434465213107488220212935708397206716276508536876521624683805710976502056794226298861062036925426733223674692258803731572497392976832909213533683177746368274976718410477531735013100459487084268159685932124840820721156038703432019974550035517437899452864757352324048723251725010139797032062794276665920043408136012084 356203466711132240127015549086709624233422081578548713733575052605428392667980295309479354924266467581521180097619930775036462886163373432835097169587530911623659628711174387590169929921695678850743639718127703974107913546796997344861975802695775538540821262923325237316103352587160969898004843457828460290602017095537836328719407687200617807518682291894218539398850349092549948947053743577832163339124001071656506459017128494025272991949910959426664273570610604072421984264445077265487325489778707417542225317225474131694984121045975655968684216755537855242052569944416777610899443006665159413293296988279183173221794170871328164341289931276609531591209415 2843175541117924796277057965566807907231455521210738008147830120086126226505237387053699110084745226697749006442481667629419234507582159665645492320645547825957401547989997356329146622820349526542738709174371253432705607354013746160704989026866721034931094513568603024867017450097135430170044374204811971914013447797159721890810920757016194441724878438149986996904246480539296030366694236440268109753170150613698512744936888969352617678043434372815950381920306237917774527620138817185751047332999554171568046217496162993085581125784496926250537835000087351364794598669897335854466706291061488090749622772291796849644665977323174548518575681887742586514739232 22693973589316258835223865064745960378627051747271824076484111155073259292496604922107469696334941635175123136651486615921095231901670209690336614512440548878250862295032297539417498918742157141050480945295094008252374073477910560023309219092620615932989900006611420019630209908137644824151372193104490215825920605805107619388943739736695996410948101577313997266709872209678327452900360973807386181700674921282241332581955167990207988108670484827747073037605536440162688141777094296611459809595317930290223064020760979784573846950147968556880920974940018253535587148288983761544625189472031512059548200060188450976686110252073988254781538666507481228407820788 181141829777451677445711383955579224032418617604005226605632200781195574725360741735527655204824556816771037903584783745571733171978389794253027111834793690751837383607373599268294583365329188772426734465197745093418041019776660726242876386469474636661117537123971188300175673659505688548756998078589213525465715281654424880713610185276092680603749513823814348191349081228106690291338220756032478611455061031047132518399392710042859632449908095646321332066561552355673514872973290229076575088069599516736958588794760006516465502491165583066997753965431532296049342974405879108666432637924924616003030946137403457175909033679429420020369893857554644106931087100 1445866803517148530442813778939797245830924439665244741933543502779711793988107426050331858384390138493913117971713867383639604209916276196948959809173855128561898523966546477082379251335793751638048085512615749072224934452722322265488117208799463159105229108317697213418333024686378604994562740855331679823051780535758943285758126055695808727137010187697828888203775740348163754292113302826928104171804366830852268951863557010105963578986111238644259276993802194489833423971181233881877357372472880985148314311310202468393400085599551850075948940171136975123667959321020559532330328659869963946306252665172255015479746171094788322594417757401843392068844392924 11540885975488381003853599705038582375876368036347084720988986045775842409162865571451462383546663572712532493751938548368603883816785879082348703646330674371184720348021995384109508098665237708949153315488398233381906958626078777551670004130510908907664744402093644176244124539456388017359358846412559986725618090499706153381500198168211426473611220465842669463714464111458054788537180003383808577395235438748059156647532215044989158636286288803037411968174208298982005074911210300944888918766810660086979354120663425249644492000743525928127396899318951738111972987983566630068246149797418068617495322806925176922500623509893362429172838294811050958508692783264 92119450251085499098541612573668388395216908962227484624682632804839561634128784285767271167324711957672570803026545082814152343086145415635494931553567962729698146977909071060960058504099170009446737730048406997587248471241268812128168038751882810433542856441880105434135134972407140178474622769855475278219865208616378963108397439997547616177949269324850818409963597967152912632201978893239443068702089225954501131990246141784061640363925895131996603704059885000344079454709454280204918975840490913547164230808669430495281577462523069202699038882741825325849049112636931460516566857837157053532463285449918778262204422156284858290970888932499393689817791903082 735300472469714944985315450928004562611661118358323611067371705950134443566874168455693598068838228614952611332052805982596654098675382693645108449417307880648370560179797881324524365801297634546716125563155401066535063242431282237894587848810197505416262854721578248260380015565612480529546760630339410829657890199734007433931618571016743210689045510810264826708386442466191729134861081665746322761974933078695812698713108856238338297609706962033297736984184959122017677846701621235618765549894201255471587363534981719421527717445886666526535603801257181277231601780713815860405687273865950292742899964776023542641702131295252900734673122422331953264011137667506 5869210274699255938401594171602260743867632614600564366692258779884159462485799055985855693672023172027652153700694420362885369402996223429929228583230043173320317294164700669899426137905037881294538438814398794709330536077803698458084003290827752876827722963649213272675539940648182351366772301133922027691052218423725682396068647668452397391800624883987693299037231576123773596940347246848901815609444238455921424284868359014241575263992173566333324035194969265547236132821146913820047483685921150357466917327213227301717897379583555641589427339438218664077609302684711296223657766324526029481961501467572258079542138983450647529100954601513828930657978661590241 46848512532467388130780986656523382998261402357776775897728441239257442661072104562622528582590241732293496875237755349889493189322178036655226220549826581517500988635025269289950285425583166955632783146606747858158595864823772988504985878758576091516632331272089517988819209402627509759243776158503305665758049853624868235089357150118837741296463021486041802536179792656220397841932303702775524034215914283147367580061245353653354722953367446600333744108814127921845395097436424087041246136734685772501468399868888262688471984162143031962400762879966550138746241304822553355921088646257652088397893336409588590011962058583679237334016672768164778438789744745818068 373949755037963642832568663329456243279788280226870843792010574132305286595748315929853257641986847219882015655362937928649840298539069414751217873745318881120296948942407910982138848653142030538527942566123160428226935934230829453140786707765932902968587751272303685856878675659106629414509715944508470333717484945546477869234046808062126484161958330341621774179644358785812647883358154760812928272411858826882830655096210231223099890050730059747845971813915137396538483914857745307508671709546173590880250593479260609890176382998219137690248456488359275598554628996029797078928003370181941222974894708936790136438353101124325738484673009875970365811160697505471928 2984915256841700067481834303295662458082383004328795239872595298183093818034122843968544578979694896356324842945663210401882388006355946879000750593226364191989565511455873838143778341377170668396772251007821132059395829419183891472395056891676137616654612569335636268268425062680559083466506862351234862090271783886252859341466403963104388401061644329655485996495218484340539854643798528142602287882625274708641691847312150951321053966902687394704373468797514885877729816878528249391542372568205531741821034465334006051196556986018948762336388127435790890879787014239309353330188237488150543647504088068454078205475260013996862338406640401494952158462528005244365356 23826050671605842880877603527880597244103050163189696684365072768365470394605376560321387253457775568134171500049496932774534923293268107321474613185622041402520069514085356560005675101349905952981134510845695975074636630343000063476119354660891775446555584882366994887119470773223678067578807566745056896056566745794819187882499648321250924880070975753943775543037015123220947691864567606782338085201588728966505246606825165005460512858992913963544800224768768080825910266539863318255129890787171594250611590057237454369565422135942298551776576879081840241669485995934918787211844488126498400517487042592205489917494165222009744831621539631800885352188373096619732606 190183753895973359475773170637030255042989197197251804903559771670023711116585411947838428999044856550980418543217834458108552100878240620636206571393179600707890091905953693342460657799367073195940526308639461479207557518399961805887397231175282289575959221979077648952139925938409748458750896619808742230893676910164026317044399685413736403753557297367682185513521125796602370584338605033681343121619279396528318900020142407037477265153380894163245802156719729197121424374152839779008557518110181427618550172126398164140083571828443293708275179201245092973610634606067567182683363225000808632149340212892821915082140926621276982098528126797813544898772740657671948396 1518084916524246661539224391171294287391139117845292493485719567392810990046581413067304606837975232959585662317404257444994764062866080577857609062583925232355923977124006196813939513276591159866264049326316224505581107058588307204779335802159735157396588179712103066740026421863566938609526124294724237364538617287193937133991563705125653548292039308021065302581437140881870342398385037631192750806436088278674004633388360517639784284052390361212386051902775476461081609958242407251484082033483266503670473330460056009376340235106865504492772798125185897087565598948668049101432880386871306479586173664359058801990927594907832273477135457101841516755031101949554399959 12117694719112221212522203560156875108675064220817788830305180189427962907839425052967680159749432579232278515257259209805942804312987492138343743529264712362360426002735184910683746384589236707400419873134367688555284270896813620406266220624019250774951161507239363614783124422133307104491691877802771628907270612668604124433918898838058159737874359132528318072778340840079826379678263111238502744494454552974458979224158330340415201803905888212213126120973206540632627079629666698345538630127288451855319563141577717631457653448086425648041679176751213473758033795523083106238965463151497029911456490265074396286621802923900570268813810882887536095726645250477599366280 96726447517876668311036023213894039910370405468460347024105903532997577010589630128346732492858510135859433078330186000074622790742144886047093205968683771343736884480249230279934360651685153046845329450545011633163431115397312562662590729970000140797993626198165421456494736357069887988086837681210101697645836191050748489783574204050924311225285505177203509983028905356711489159863253178939980935819108916918910136469328157503938790715495456826107437273737421114696021161444221150667454317006564297078416319383300753052174845351081697194135995326825410487892369038172878581142637571072470088985184309087046472407052773419575590032898879936531203470572210421301059215796 772096801703613967111720031294132007099076911615568540126482040353300043017513783296638501103620880380318417404792896197410481070740130897004760722326280112047265932296956933218275672356069763883685089745008996591831457176952090833420481449704212871955105185591277072700321335809985910247995411898576033743277519576495660577307858153025212390517589359012021234297324388953232040424288876307706696185459120869454485056777646466178399458159189903271959551285995630424166995645895632337023172742620577006344525504039195978996231286048265074008588544785361263606782011172665612224060249807487626669884325149267639056539110155593066865414277084247731781225300760891855150627008 6163104775793487998470518387916459323050069043105352731072624104007821937417095579155597528819948192244936402223608764237496908895057792004134332321734627735680131110589059813086080814794115247221194471666599612587565746060374230615512447774122287568688466914112245516192183780031520571463828453992774501219110106149471242406737095298849570633934042080067482396494604318194137412052142517975150495593360038033906231501759730373038933001818258935905390800793743926404531469603101116557989405745926237319645788116025595875797949617664998806459683377391720800703124697960952493910754781637092475296780632707800574926612350338484289974222575896642339963394527884107204122979680 49195867930114071926190003270728911633140678479831703394906884473420741539817769562614550091104603104050294396707425339004649761709645795141061711597512571696913887321740792261894708369418947459822534479420663767033633045995635811590785412875625998666253247520754418075350442053772856216182173833749628277235431440840502292394032889037281782504393603657476648773522828212979555140200855703690720580530034976883217715747139887423332566010910883367781182881858804974411153476893058438990796205854393611115575190137127465307122699100817558397282538386935084663586342597013047961446025696158477837043095414020215074196281832265192643658642169108764925142091049656221006192011036 392698260808281278109949738239529518631620815677140482979844064761793055486870125919951762182744803992277896618245527473703377709923362363825101012364849060110039633642617562770746805863707093790976057138966246565629877041029483244946876942202971863663928503078721302253783657709715906298014035673954038596663852982261334374409178512373494658264660278223421852323139944915267461067403379529666126182148561173748865052482013946350998015090355048030043166281220720379372050907511490310292614951323361082973131958825280630797704487083395028269841810428829730766094605228383970393621783961170349519696427688382956832649503819488823711175692914119984277273529420777151274376708755 3134661142491059123982772197813962977358350518770745999807605558745558989419309853891600405010046702270142370136491921712665899893576047713664763199566621870226917556673428415556195170734022544170287154368043530826095658412603580980553648598879929788279268787915766423675012696919944533653156275028813279946148647123899521082082968531971382626120179331978465946884079342578434752786402982792575810838345863466748847476840990566757661383544952744090953889310665755271634846247218179732321186071493743826522391929615592988331509514086521469133287625648749964413195627835454099553473762025960878414379381221343722153360578149678304847827037825796576325894566547377149470135834642 25022084774455274104781917858840898854315739123300444630261895855831805153954808552376442701140436141743375647455079145076330619915189386071827295104948880594008369345663228201466628556110365130655438315883630798368256137382656349794249490080664705745300975683641582056228808860976233759715261011958192951032176047865208493364987691180600143757410994665554507326829286592618594095484483033316307174229362007746386536256939390076166138235862719488481731421037380764607103158883814311148396845445246043159154941865245743044468713367744163289843905178749996587557241583495050425945118160289683335074341466282651494798861963316377164888981721669148178904166934449412753884770150462 199736597206445149133872193398354861620860420167151352734622168116933707965288411450249682484046840916208419652363347286277054284174854373444477956737829791302710614882839166364770400536775294114693496192817719520716157427871583165621682655188314822000676187168631936214190752326817159570912536543283006206430530694210656489477397568366177580878472867374699117275506873626545206389592939574635025503531014283568035091815421753181142141162003665989479291768212803693108046077736135086510351011194924925106750058451792748375469444809380816355092743412148493664769599002735025592958707188446958156427098380712099637282926798864872176630758887021129127081114052541561192726253803904 1594384501138231872857540912787931738415989768700411889977421973777792754046131953381641151922460305281439819202376221404951754329289857951440213373078797826693856071272009768163433483572459984989116330940807399134174703361958252914823196964610396500702210863430952030051317934411256629762470905011362241005231019038687004170822761623247306421833486860486311479779164286568425916355343402779236416258281903173196489654216140961959716304174933319446615544069554151296849097220983462986332238813957784771344661908900908240173271149889799492999032458165881467830031962648439989445664508111003194414561282353564810264659173380426225669178351653401582995080576020320678520609456926440 12727108290542059772432013580354219749049820940466056145003072532134632278509468671695707794649355921315546009601343345263158924476985081431542120163298183516310375878099080018365371181407604542194315690403509504238966670565362062713103555368177380857507376748752156124207136954921696232224255166990135188844827872908032456955101214617636712440416515258086482764485785232717729950210335795896722497542087994522262558712319149311138538563750178768059744620939484927902374696449633052504226085731376571010058706806848208788048944345658706498949858841882289004163147759986759617371016277124411680778234540021210483964552079599798925425095373815868637847312652110564939518732917711914 101593908726340178555924273268872981370901233425275510352734502149519799001915359622871270676161214294572783052754585495907643563570201395498850874068366902398193727684148905725141087370734250715116487429452419565273440201663059482411323099406791477547611916307794158396676970556953370145123466211026618026196601715138688142923064197158575658196208426915132463577738667362709221934601238450271820498154987635868550112255899838052423376757996224270663144560205155497904526500240978070769849963376066693532387969318207087517697964125299555697461134234172322403525917763146935401561648872303407036888351379186592803941302080320545040242238548162195660877250387411254401706755016263420 810973852034394258535617319392868719300004825757431036292586042193613757355168797356996434968530321652922584461073579202014805706239852343993045496587693412793961705516937870345623365554936784055794696651247312851136900849010778530576421039458247612542156696608472526954765677855017020885391967264071542783616312462269214569415242386185500748634266510409082656069668712207300990092722442963696242465270397721267130951555217367841248277991992616352477396500666015848658947995883957622445985584421303835131645512270384115710487217360702806273847259558502202166645392320866737197647451115794246124891912592651760764395971190757106499531059185663791338376063221691253695040319733629878 6473621178032140919121834326918755548645883107620046842149513954388607874178651953765240427188008743250984035385040694174577324737346546297309870235103218267543378038822950987709737197540643950657155837563889913545002726901227512773448613558016868795403801329592774397608405892588559556154168003698293891804652002885988293056151445399634118989436125968717902955527266637877273256902100306024434002279133467817090959133943296051489796951228167790784067663469894942932767419865962700828934516440918869392436545380417060570798440755160358691018789542269703400694547461035522340024549581854042545620229291868797745182740342762089015831777989392171252701952092370213844356014624148026419 51676008041043459886258106739925731105321102547336727987406795882350632897776575539746041476369715858516772068920643769992402998709179948088762572612795623508046180041532822513752016206932437108972990447125427900837291162767911571308016146758287692880736738146137910513134080939451407831934732100715081384878696357982643202585800811421634639144508551924256591470173571426884779037001907861271840263870402737193550334033795905679751291460997250091357638818022201510383581542945751638434063178462352886920574892678512661963889055402085801471417811563783001335339374270861344001654924345005580289523489044636321417913443840582762867449689374206291368278584727007186787161691257828078562 412507523865606183416819200459115660780354149990967634563425438857780825977619425776751552294362498634025764217232243902855336899297585862573505828101622791268535945551527613692786243880499607450529160817713833785989383169420228035300066319702357205434763318407783641756476876440262351730055003181854163587368615382919813281676596516116722064040114340484796733941360298754522802998537947815377918863452229996200055765352009679951771008307828304940808464362851444187110262466664866818607236600275505695394961502752704697819679910182229578959252964856951251815641914427704982640965077017122518444020155017824976753358591207945083571722946237733600087360198552898278575514594905776053140 3292880951355795679679721267510694272912753813848021085074363605146775222234222509611488539783203732093090932661245887776156627363178563983577510637750683453615298073635505778939847748240497648991324142423923231922983485847170446553309655722595451050941902295167297505554579217166566845175428398525595450735033522992465499379673895518384181164064293426183900920005574135429993108757819027375212132927388940059931922284505542945679297530407851086844438248558825885349808911343280118031351831842975302232563239451641900323181577268438773500109463812776325770071647540655723370597873229395514272834878137767637177296265612445934073011157827261190580637173120977342755929323544647420918148 26285813407707398367840042251606366824790435488407122682512628321466016231236165677274659866327723825190675273548793431424558929168614935060036529864937011467193205443828604247099014206678896952548844194083927769797890661898464573000593706011679712664817936055800109296448760470993776781886926313677394506719511592161077474138901462686133790841994249355933367349490359416947060942640265710011371020893332825053252635788316418604065105539607344848138411012038572406008285487456128721099588320201018640168076759859794404860150278745023963883637036771689837242035810252563665957417887838620116959674768896969951438482264982203684392348344152975005374485896658794617712379685174710755186787 209830223713330366917926278280238670849840918741569915808968836007482447422059054157043571550046755427145229210185662144103545866635176730921848579578828007129176921481135354045270145494218016543927992732011053720583496061889570941294345558583746198896472617976337802550808173354993512533587959264302974773050031421077683835084663390500488289326559820862567050450229601511073243707792374188198525990562618911301994578580041067955523134791339697101414936193988822634695390324386492243259657529979647996149164544835434987847676918601165264873876272000444471144449420331019676100018530370216831189057708523744143501909674987763406274083376725345154744138136855303015464550928002732902140264 1675004181260698132453527570629400946802158057571969690891384576096604725736971135995995529104667072321851985480097739712725100694890758530930500885942139427324836870591599995230135126006537556761952803130611539307047286281692351794992133054403123319702916456981588861174472934457311824263277684306608656193637824653581183507295604250337133113604782040156551088449403938270169488580269704377957717928123987117025206526989166532048668787653541458966623310820896885383683593991055655313183485572943066277947482930910761313130542434834688457360162342468775636771212944953915284032556534437786614036928649561019188331154428212099707727482505429314211163551856603867065310054164947070133423657 13371033379598025408332134182062942066172060353018200728207205633974721074120112728931560128910444102583324396112530622961138378570230774377564074797691750547395379411082448905076519601880662435480269953031916398326908766441380697702233656064165205707410785707611054912276614165660098615097933485830605725971465330705464304860582728352854330806132715375766808771781382183086926870775322302429861270391432903715744131099096116119626586474876690527847802814466086412907207107447307306601941104972346597301006698548450444334117039460455460607361419963191797892182140766452067600161457116103007312523606612323077193274682170470919362554104052922052686314833509714310373468456068594318110030604 106737069013331734849985409375075377023191354999795991772893114804643533904198058659554998299787007268221194754453519158939432338429914810551798892988892712148308235850526680973693471235219654393399879227366319556075822782303992193883004167093076635451084606631516900128573599567169515076734156944328308882687984034451591470121959644412735336315494377958451363809900978186158580002881939613262074371849802735576610492246150641975497802065937911472729616958797927103625316646532176982072350642650822839107221491527669667117267859308423297641361142348019851290781128729958480856519843793036864283072439456120122876595987317345851605327031234656906214805704704695773413130716053618983151695941 852053357738684459115850583167585767906497179413646098423553122154325366391704320995916203001237570283519239485803641724253880733817814456667559257125794531249613853920388828922545137078108449412781990631945141866874170637939308122662310439397737695267613163274412209596872372296418028566176038414412689579299232365172799527865008502690720043521284634065066282860939109659227480000396917169292560420551655761230144563864322981224794812065329235254787753350815534346388224409762357641980046504299637310395259036213366745855421231351146572109442225306879524243418133687664410933338857517447608486749171639217230573150084563293066797223613924991555656333277511557112955587641695277895459487990 6801732182965378854019510584511484522982887453050718193354479761782149578852602880148847116013145896753749635625319381332065473826443227283857646935759807992703497497370325885711505866412512667683428820582861385749734490305873557941139422730093675425758909477370405241356275197190789160376646831501927561031906299924862915611206493053425051937757584379370884638139901236248077024056220982910600336746278419072304178871776802522355961979295668677491809675278555469066728479797307701459699225187147766418651754458844379454931741849238341331111102531920747509676990466310885478669430000233265196357012667894855382318605614793233181368724636168537731870340028655158595103998373582401278050127123 54296705111412201682047854189000790648852745869783917141670778565578792445332740485810068395420864382913020187906207342590720768615775087459212477248455564093171956164281795432134069460321989842339164343364914617017125072989284214907014924934293232001579957369172406971426278207806247570552697611533976409627846189833079542220082923517780806805289068377488503145421062686300795452161814415112531303581275510372513641786580923080579115411093322593558418744417138780835312462810983369561047876456483230040449668979292151535574240809910813521473713263026031844840284339959559633687600248936690714227316327933129985710578688749430665207555490117451459059813282512582504634679856375325748100496700 433439647369659129372667458660184971766139866413925152247961112238433415090472285104282114024281170698768627938462689116719360520485853868711894484977460526902420215478199348353705457738024915469115464880993385509651617520820673789760316661596835817949299016497297026687378986885668132819717764704654143708407418680515512891767548229863355568098738824764966860455516925829096274829824454775371639279254861090655546916399405258312833694933023886314668270476572491414683044202125967772047279491196914736077351906558804478666609093004302943605378450452483485509182835690243017559968546804838451605993921312615230035682321563279579309415479677013521159176901286820277234660994623230519819092236328 3460070911200458959148675798203932415280303910675028390943521423952547091138143450022002125099537159782661013445351487473266004846158270924833594921627118690389565637141008147939957816038181590760445263292507896625472538839898229357675344374365482835397146327731214251025159260152005482655058739914203364735208199450731122618170295097147731697601745994918096869750320420317634916498543211312595942500639204706132981859266394649498672663028774233201030952106663026991436772970901962268591770815933272267240467880704166303156675685793327239774436669239951618824747785482793309836263797343634578503420140734328374028916569571747327460430783324530817722462656297111845950183073612410297112699808562 27621201621074147303867096377141089919629288867987173857647086030128342640486302247395881226749405605267163391221459516059975440487413379412359239600391262223136432932713049872403162157854147451566474604083977371651781744845651348983716982122141675155477148329183663817652528693177196204312185007048938321425463234583265650707006515065042009744216501049853937579432107388338881899248730702535705697960942952706852730903413497097898055462281439136251627833548027322410774995911989038735523980844672841860862903978343864571635715331878706881292561226228300273741189585809891386655020429306040055561296385812105717734576039453715423892878456291035013683757485067547127957167091701828781587023005951 220496315696672746208802326245628443139836591417524130795950816192350765006001376537129797536133162480453475562310963109726249613167767770819505274560850960943293333982660563245752696886804534944073147723445671786399590189262809979479600398325347371243011644747925066319711850402265076336113949741522119218357303029749679626575870301690587194234353771921775021295421827501624684545649335676271865099606321039600714912926872105805435231543102088258200776165785134532843920442043250886715426602340403320922110037666092236000070406316189644509863104374922272778928256470082097221228978944620863645114031630964584222115202016211889062187681960884863236761878748561153026535317244768415789772007089496 1760197110683230529177100200149739985955354986956193769929552941398781689244783769882887459248899125839219984611738859649408533597487500403305521896560863024684141619610556111388014044886402046989864514644930087033718752507120968924635686582184627500507831318365346136983401858041342580844099794544933654630660789922616056118076082494137903515690489354868573269637588096858712891013679241635609036881828679277192441657014722767920956511341450438467355736169876491753115092116123746910408837910945168174367121850979560514880780617824213953285702136974373884933102792347069648223780887285069557158351866201175969389478202988784239803894508034634755611976080729826567280409211600259551125823285947357 14051492784960386375731197451734840521389028440382222103945119666411310079023312147534906515181165138787805808926608688444378685093483722771850069641379174984311050482721199460087435891183404152558220037124374590806643002414130189018559914871746208608882124864735692050355187348345089606234449037637368649581165506834960630692936066794722715373062461994507933285035612737384420518951916908698443912005625952528232139371529053330182126917722228371874796318121486323284611641911840976132926714369173698533281742251443172341544308048173527046816597933364228565407001777927638201634992932398032143881546294893968528743040137509022629032843276148452398273494019639998219300877534683437104739181407146818 112172091346559930380673239707162107849718047838287827233350632353753195690539103621064502121038511273456391032027421615490071165024725524230173984566947715933693841469918076022535863595795301503503941527869367193294852028668633602347583208603120883149760147677608994243232398804045124621209035138464336926272262580347667118862355455550699337462167842360365987510581787566363465539204511667856209445527626492877152223815241355827014281814778068337539429497747324906817598597796282085868265367173480821925275592233679505238727163766554854414543709617384796095421187492512988308596233852596693010859143414526763890728722158816185610932854616376559173618224299854429109239187843407303334487092371206908 895464467436037308062657246041675724550870709482901118998221956664019897800009180719271150146403304026092391326934494309523207292332724064435502752951274385977067132223529758255457143174131308319844406308075332537183617523470438804595080843766476127524237562257975205522926827810455254269474626211938363455724199056151658592985678171828465792543674854601902581448163436127006149305211371806449717333864313030574140606159076556034249750041985200311033302325574834471511564702823986231108078353608445628187626664544097962395701503829513135568239291781380150068268225901058885768712060877696383093830032579175206585681436347186142799677908818365809050748727164973266027799464527443268834014225492366040 7148469740585596612308556156037980709841499352841647706084833704371226954675131001504550567024705909081672571996928112059139951228930324867295880507640044553853188103634726907889858442837706149736607915270382958761111905334553092848281223200316754472011607178635843617628712629202002363151659230715751390511522391821231131853681271491270318984689816079066930037127091537120670791205267928750265162914131318931838320739115940850126711835161253045597472435771948990883387909034189138960271774684160680723803139902304712287598231257264877395147680901356150673977953341636048814935228541724595975428033423209219293289580079176097978768978736343014115804343592350384371042572287849505240862104255855581876 57066204845541107704972408249769360966546153612908215169218178163517675353076133929726443745829170413178230348376088057005940399900995581758273514111817417493773095210204675229605255046846514767933841696106957783470100406756683162837355042122433775724963128671355588092483148970152158278070815193189792273260734334102358441902491538766522190472773585231488965514254573428069026884784049416260329114936344642706385769277027251757757076349256106050451514895865867366115913026778573423233553299624667722178263910701617419267754622049035170944311943181552231235852258103307735759350621541891070778954639975428098118576728415069970292067152063781616338196411199012037622692646400392135054757835804408617288 455560517918732980671539568617531631512620580526236974084180283914314699127433361125750863060994076540191412631342859815632428104445921694129545183054997234966472820804900819656332242964936318625655774640485326007950685884984167203634768951866408170282021012524856171945251870981962882118391962638460924215341618425925227613695466991088722752065207262112920415567920451326731692656023017074792337579449425709341168093276428840729828438012473643172012801106691089686422597032324821981343619309572468515434645454174133797014090698671360940723687050737086539736135641992853398486317800532596512881967190883697419546796431723044477727394669298296905196719816815753242810904317396081216313996715143747088722 3636757483549941880182633267313295945110528876021472809953157601203220935655480597051376116204874857462248994291081613193345901117381499223496241029033979695605446075458890088447790051618600110578699777689448829294691888954873724389885112953879926490816173466726245277716371627887502152226115470751625879507238726820894211281833773196266644050727806060834068852981707573323114119323473920187105541672426488687700298235387485671348286611446115571826916680836808309050532590913603827308511338177007354485808100522133669233807508205838416034817955662733552395924647954680288140031861237960520849914956418077000424773831350749286410496981808952300389501604082406419906913699273533164364096102480301264598768 29032456064887615628810368036301818883475218502500304353561878763261256097401488511300070641108191761904519220046255988155978493285873286239071445209017555555836904979337930036221104144912763849706235414988829375273364096624566337360772608979719661894210068315212658435355129831272203706961692351070163854631244071853861155888015490677607814279887843129487700320213732587692239632819945095327221542476264066732276461652656742378219416383290018954101973539847972598605319678879127521925518135995417667634468673997906963330778405734220471445861507906417405451219982698389860516368919026187889784466915931809833290930422763431407725117595281542997947595151152728866665730067541554157932287663726860627870499 231768486089944701173787332917947159543321787656974727033111870224926274246698837108207197070238619961780097826648561816427183410260498777175617868746081407716024022518840702612003428391712065337189126452488295678833496205350969318888954257052598921210989486951218106906874313211820757734069619263179407922821248264311498350143142950020864376703591423878951267291569157659852200668507803872061280718709858828865207033406315656621177532821773138134898744568284371955084821432683890430678424697086947588472134594171038757784030078711984902113979055055375739137871039770101286824719702138966264092469874215914365753123661426686643772397538373158662620358784382690246333517783057239739648206375291927596735948 1850231871245783427767843986505145487471914189159639888406578013904932053086781199234976610201034773971073318185742560058869810220179989382859976676860709731312285380576325143096433511134520858361037745682418942020733518082595754576958525751866492233870660569473922933360982581057919941892523401519435136984989357920958211970104292636714716771219654761606163887256024326667291435202524656543957901365103990787529804796388776043072484482191596680799449655947266912122607267842896390637826088475274352117420301886040660634244522795996192704668420389061042546100080771323748910437681740470281757432962861073660354355228341675139190068551592473262660466671958824349182753091241907888433723856174438575293318680 14770632592528352594974605179285391308601528150914944260780198635014971935183868386531313577971677098733534706662340364058979965266897502262424353639739285850902782144086597861053572938143876051994109040393971118952318244469309142582031463123415185697590139480237685216908028711252841080921278929478611987764099809683148289982835595487158639199684596895188361194865409006969715870797910951631986074231480316357676267481548337762903377776418088890057114518894624484701615899977769051841540469067432527883901781397831179340086983676625409371961780753030496489423351075103710512577795798780659233799596034941793476136911008501368459381151910323062776329912654666315729353156034082577474608080304564458644735690 117916123896247534713735008293315533323471360030373710117364013393485685423245250926612107915604001277390316122828877482215599962176009471728030585517344501197490641377303465219809227226569755279452508041463231137445383301594035521560061681458401935902547520715956103295093033876785818204747144042978630811523619700755010436300339426266935820372508409480727104909401650779521523044412553139476005708216579535217363085904074066332200673659986847626306705361994843462885192549509243749802807349793992832543465242289188437022722130324738510131188950809175196810542820605284761085327899382925772816417761115144215026092600967723571335078672331898770373807053192170186301515958317619502955434956791072187782933446 941344202621002736439157722543636157912624537558454768189622972255925693659461670146533055128813931623699235913197492690459807676469160717532573980505386529157768779751114988021236123945726404270298582236568132611679162128127778524036094290448500576343389403052187234380060517481032870833805365094704473740899229757193181848789604437235291380018270766739076859592714984618088459406522248019396839778384228694537755579415829962872717177921758829674347450812548689424112209205930372638327827996717176373524994754610448255758752264474362899716322770821388407740985770536383503041153065428220303475628493359673972485836464260810356337675418781543544579672581720743312750677310233086580922660907753130831045244886 7514928714057933268867838492494244986506137274838242362768890427356053609816954153416675979470728893961012753990420306384517187259588267493967105283896768050590943362709995007586294036988761706082116583970332006813076274958111053420011466882242397584422030670181961723125975327028159251954705494422113094385895601609101223130808831187374716191846085590194525944660963709338052899745855535018989181376281376565143096016873925948466590384795571391727736797596370837068933275358723665299732826091471250752578345037641316506749063125453932144295405113301257688229143082684659997541473648288280381127360197985285867808815270941067513563128242230275186434519487736281259523156227534923993815625132929256971270781178 59993255695580177659940653510495553209342222889765312472233628843981843674887572214409599660435320074539931157572616633253215144485614591236917813771048943109137741843315494918205360233699784303697848588982425196056056674880192773086596936172235205053496626755277116398585386385889898892470912986572766944551378662209968964738247974703364862660515719856458237080820937947820226302624543697356055465040874088372585847319950924481583389845505670059004829057820249073233292259669697354477729212736051570948571740705434403035095526292497265015146169482737971036423572726808604621273705562199434506047983055014916764675209336716070712900013748435266670732105995158341385155671754258720769828300068192983272201187164 478940039641817409324190106929787227600744099325234971321964480847333543269936975197439324965568883072952484385422517111042960058403666129466513056065384742652387881295045939870931920995783292848796468976056093401777965043136259000302630803255713877947834478435450341698723439090550506135715580750233656996507918878030241308031262857437201257745378266748801084212845800570383386319821066454225636109653761483215507059192576984684282351746273577217956863629442239543610336673312347854156490050916932258660293112314726720173505854575826947791423903568816796726521291377398559298465440217456569916785495140734736259820026320006108454782897358432275924579061620314383228133547945440501985922390338622606267721577179 3823499234626821130882616278663658742888063068996638642963288965574357271006851378827082938628178971650520425922385088054850905887278241530432640631427740261920283494434800334249966762528200207054086323150309411798045924821681767436300768694868887325469849156757645181134062855028622313304288073627619452679517072816462841523649279564018536919961901712241040445916189340548941358276106233523304178431192740950927052441296140399323790803932710559462012184831839145316050647859144478515369579465153400134863345919133944627054218780027842347113474687416111334832052824712716666650944603568760415077065473672709019105047309590647201542548196005614226162496849826411233659545830275313488249265779273634237771580190410 30524039943216846542385782973300929888505749396024824576214522601658529273232213284105633197685741094698276378160807738077061191310150996552704137749311608788342681704557846027346087699123220691928377255492273173852647690421229022960360482617975582614654662637782975847655920696328731127951062217563634610174781602694700969549236604796831590955381069452481079557589412555430499002141284821260528889516212280247398625058046519257586517361172262093504074778903859594869104312066308579803963953358718425668382148137016299825259378749851637925495472342688230729771512817989093744240020780627638137624355293894126276506227502152230779379662655861232146473334574028647431559653878097605103679475375279149219633854912320 243682397990049309992416738305377495622981439831737929193723336176869364459968852621781998174926347972825190476869208017567769027437880836084544440902984721350413375802089787878805376992136835634388774218024289672781752233457318882315884088523446479380329391889479096233240204130593765089537670273231244065559443143645285306203153175607118365060379799763559843491435374186443931308397735567971132149760839569230561037825790220394511156743173267167627759050913452981198762599427473953017182250756187014524295831281659467989419736407582888265328914424412137908582095792207174531096352388388165753915553404817559158128985230521176731613590815551227578045756535704969668049880178327055180230391271349860071951394550364 1945393427998227867685396651911005164418631055128748082139091602739455821929994078799725136562777410228181159193417822060525262767955822874043866333702103726576767629575039150439056244665556926432341442228079432890948263592473041937777598294387632124471602454695963849026186648912598701957906109803726505773623613142118946389519486381319673945650132762086756992090042287397110763171850591143645141951475538595564402887196176576096898502126930370583661448819017541760731572964173535187497189744940127942911579668349274125171637385484893420280633215990853372548459593490451652591021802293317640403580796865278252504964173971773354451953419064142835255818178803261254908541478977333927628148557062111497512688469446244 15530729809372661439813417361284513364535708640658869238249805945855170729748081275727991849394218977593234103991497699735846542112297888443758871221952947637204313386286069085093871073874010999488975034778533208782731442253676131419060158276653890006728852868845817726284236274183050093945235337194471918446545184867835506193093710928401718108084226554128482912203889369147941575464885575967534539582996761533831555294152111500679508057863477766420462078971599742866751811807200596410974014009627385778483072481380690751328741570273553437708521157933416465402900504446033664559208371847252193970583487296108897177339555188913714381601873444787779614500854979363177522073581707164051130221560621238533631952563204542 123987361048097738968935959589757225511617741478907814593390364128399619063856236570941570620699420277684719712326788658600852151691065180356879698938346911683496955631133140903989332851677112161027249191596291911765537401989716999482109708935726819385447190586329703507218092152571654304631640519554149460214642427863466678167643321882968023360341910881868157483097685373417083689173952571438335590223900683915669204642539143005022427368849138504992299639472536644648056616400375879413452089313948585107341944919405760108958574110092921284094098238006029438812755701270864761060817556672207252801112937491062558449916472995908209422154234193561978931523239969914926167497327336907928469315940493435155677080614597978 989837945298135660251399686517206206876476059631961656925518288673041582410589767046423448581432491365228795753438251416275246634985751909350128228103199604045236984188926882214282003293405093300968787140961525956381043814697055065051712796208517241053269181846659349150712747144006099520213038667586091107264959241687888360325804034556361685342999143098029762458999504102266011559730081505037970145204886180411835984445361620649822358091606102233115448504493920639017201764286627052447452781954431883972398955554492274887796781739045677930244205611599795328601224688125562347488195958962889395305143565552122388357875758338087169846035206200707459112910470398305160306764112210041385006812017677240203626967857631762 7902270777054680480301442834693311014235586907400920347429160456103234511372145145836550406686580428829418366969021530672254211887236172027845009782055418414397002147583972381348617016416226117457654130060193035755009144860642763399280452364694439845602237661289313134592716318259013436006795888504395826314020212292579639762540370217769210528022870882509940093681576996311689358504069392754034199879852144250514462371724319035948428677966263234984601721811444399996734084349568649749339350874907102802159819384197643247001407131015257989521734626095877952937678841260608002538934094648501999690094530360462633635777158262484457227198639457426203776428396779523500599012683054380129295993519172131490143106588595181348 63087140010251749213336807137802578611291050634359719327170240479119534982147834961642823257350242775099157993668623614009654697989527219409577356920744127709915216502361380709942400094132091570661725896149681452501706258925771480654545313544348969641840268252462662128196022514464440162088194051713932607295539965659880708178656861609096401872235859952036445388126009960292005735919789560505155572687202093969340419949032459112968234046723565022035397956132394230729215623185967485932424728752537766536640936935610682902103039158165004015350823863272240419676082036689518293387294900057702023520980537002510648108294597477712628187070654580699660279378296051106043552358544487046826921889753862953164120906110485661832 503652383149353049443900548893572297124568167130446544466874433216346418077261716111447666112975628457067971335251260795994216095654883429907036842048969956333286429527292984357956541572902601012669560440552754584398745302530664648773513705290254504817061497885490583104505887854382672889744155073361146546223352571391135051857409107260147263017394897762189339733175559780790879109634956109645856325927763359492955086398442645967216796931184073174564525396142325968822115682990452478692979598794287199829207517106811728532456070791606801860139168499118289623301702356949021915212108366059592053019150998560266948235431956678201360426096209727359368508940468052087326086701562908605335040262103416632318320886556604356833 4020888825045997128079739804412687964174372399854413829143842487511038245533399439963429846367391051287960862665128336068328566236466221391637857312193237261366372048183214890179131062096840875058148542591489590698422145872291303482692766621319825124524737647678920057355855847180887157362007576724265761445664329499241432298415500907391295970766766338859333858063140952916667908909572233013940973073797749272377274807003211743724724945239511390966828490760392303706272883327600174645191042140169122948913652365007968744601955321335993919870644572659849962978971881284699734581110230834518874088003927926462123416635325538299535067287455404590443178718431037170610294849824673131583472091359048025048652184217280096168894 32100688916150945166581129744518548295391443254099057712469130208736253409376170552476034825277429566611859761708171745057361357054203955476611672550229667899508388703489774639548871525867279276694365611507016830634077145311049234328264563224228654102569191631920706079067526202900309507651448783916686873428138028046886605535897779291157392295059315381499973194210108687120256397778540129181486567764459116867941762749138522753658919992709547807465357804782021085503518126642707223783604772480295561644973047420311243732609556925113166400845598383522681153857630422127334929662527012719447027790329095977764476663750765314742914570826591060313485439342607409034363334016559048352760486707329857217491080381050109638746552 256275891753530759167682796372049253367232600572115492929979249483865710430057930164507425964463976703909695323779148287565370982308948787379553785544122132264138087906919891906313502844303251685384683534679979050775563564944669949449927944559111426145392796697284869754977268177997981408379049462336262360702026202588689126261535676457750366519178230943223564830667467319798097356208957910924601190055218664350959153803420345354353393361186002101242538478079205636182620531007332502763434401130572362028205492496517072879996000324405657266255192267939882894439688781752302387084400184498585502782758262046148899810237570136560269517322587688310119731390904332139938539881741469480611524511676434455988960576266359822404026 2045984144994703729038911562426803651122967243875821486857575113806498588641234210124333028495603136618996997661948960377201849694958464256216743511514758024678693210274708887838173541204503399427753778246667967975510406005026749355413584599955481301346509666400738628074790006990798410533736959889050958419003833531098646570064099935941709974800488969981979658331073341165423600633545116688290847332626505233049844805380079320932851023612082830683431893957477051916452434516505284364804482869615488475774116706110770499413619874117456606361780149312577110133097106401333133320909984763401918102615633655942372552273278093413804183086748488835558600805523162964911123918533552853911446445323285052267839259142034532907156315 16334200482296606632708201288052892082877080449527218351166170952930288154428812324106558889520019016273813099868294394112446216717546248616140955566815559414061870777503952929090918297706939322267122798819096845983802477510879319905036284779840407360753623401195917595162165052176451250415814124455528160564610662919545260024327199595696156500833764766917637735055701377117604239444839453434608112704813844685562574896516261483132036901633732023535754936022326344403861314252942140916951271685853622666234128201979449987830092663904947360641067975329902116661417494353095031492345286253916880815240994966269584765594933250501479177376657131353148938014423454443831719286520352859571724163729193375590430441374409564988777838 130405108289503199378215082873548534360820229707256989807550999662329691816928361672066582622619540125534030455329054295832484931625345356046724855338783394459435925714171103411034530199707565482156477598831286624913112231588446763196834593971062568439930462451934597630234057390169680802474296892160305247851734560845826445739450307144786414677474035425787743767892589469062139741236449869038065529046344528079211734572451397858693704453595685318785782851478991704114951013979035064536136066920800424771928360294920157895698260933058371237562869045493196244334011373355607836248646251958106765729500731261129112645297385040174888583077382062252755692509084252938916330481993882565729923765125113139108776181218842283078400895 1041099956574005482021834491768650310628437482138686422762510325329387081636358774308152597298506416693650005250501588188259883613498215164568353966074356183000028552981827819647292593047679684403418625070171148760871681864486897759535742791186381423150029285344444865409396874368405269591128678757698111820591761093660939676090306131152419518807811895115289758849171543667310582837231682971473064850421907469546555233704785000179969076566472622650197835264906639665788466275577824938712368423983102814750067047914493191402521543295467946240467509900126590942238251379313400577739241908523012106757470407661731398594724390494514351796077023408753734633966109725493057660622189199571399197816622157893035858139067706652418833626 8311728558514634103599394564045895867933063425300492231145471988793015088593627409409518491543567184965072178919788179506110433448060862877706389543992284412578169049648112329297406326998264680619794103369134020176932178500841810791684949155283849332607299298640666553623803567643489402840375969938049039906922892847140838368038240328319263266201456350304595179362880439071910489079197525069037244645246865759301095063796081199554653833751490530683445837240731608003551994131700752725788544336274912885176599456027541608412240377309134566520879196978390075486133406106630372602062617575574095147696055662053076273345075291732878745352538111634410823770093767224984121203442588553338716875220029256687182638143665618417564350754 66357707161148244810556386779312389804967535330441146999881044800393819126941825096832828905458102433258195968507775687247829184495153602051397054628626226760998398572861849283017604064000120280793464354774467186721844015270249914305376161702328758718550097419465356467716364105523411606585144864244443643121731737803069507355625148597146040310734378118597079967099650183579387970765643343330373824569450250146060268816744863289185642986502472035924193644179464646586248260297281859963256574627976435172046424920734652636953860398050537169219835307467486363206573695824053656702152817070441006057698301995576800979855854980362873540173023571220253466753566821002267610158625810642483085356374646208002408213742610378304222689230 529776250289691565326062758771188844335934057812322704314943009889937326246042939485712672637300965296090814746720419515814636930750189264788933365908584650562810984952043798171332815238212831201717900049635780487644911258359618251668857939357103557904662024900872651279216900852403220625080651880285592371775843491975297917619691274769245173250735227776844101384414247737981951593934838135007829898410425586799071390867566830665527731085736466152183240286435276573315864375722676317401683529034419384749065334266228070214899245049391504428175906660620266002344092820074687257479993485204646337983430174846653338395415938906957467857137800962556433773256240516742529741425447510871951396411351229653091571332749884114279338420918 4229555125837362415807822742904976754529988624928204144872372882614909553240489740955540401434019730799825320904278917938303481739647583176276026310688577272064856346266738336651341156983551355043421521871422838502447916805632689740370271928969681927993912116426703010083848338822292908142873416373204404230845641939761794103213285514098168770748977257381890279170531864844688694013422779793844988236288733664322655203446868161736426250600149460142800933967427885359316280905838086520505049191632059022202759150186767586590753578386384303987676323322746092585183428194193205376820772386582981655896681410749408502402448347780459548869332424128993424604574747219776642548316633940074665541462678204087051069108416384513692218170972 33767428011767280847250701549731376548624543335416488733865409709930943018485149639658999067639840176263922759888443810915850116656670733558000688090253293307715814626676154350408529982298993556200738498901239843085918417266535932668764975677916435003721857002341985150952632654355920665947602837568607496744516961166166184042437947242214793430518870761011382307316058119660154820718137459057820841027563274294366291777482255740467667372659217391781666852070174502094945270480729755391106199555476872873349455435343491719317900927207320235626689121826129193689917669514088624006927180499542683846974619189770978610924491311003441590583783395788685221064316524909402377878789304907251210117831020505568717602877890953204479675931681 269589120162766788390915797856043016751129690885944972284823022545437586235614517730974332262678884137705791066718030031880629850918032163018019354079799887376892510578387692824696725610940615517279269331023501962891183851285414113535641490332788010908881070622224908858268093556977600913892742202626465777844079524977882023052413264641048133372275561971917570207480137302443454848078572425807608754972636381221718541503578794165834948106466300873662410649652923780088319131323391719368217495609948030957113335289607908012553157985426021130130995427213116808606315764803277492388930006300084139196257477687618903739058815065248130632574545843044188005016762392068724927461245543108729599854519699100051824893363431501417674126805998 2152324865587952629663890896153600865458775597192920192744688452923205384970312960100295906141654719100291485846382726140740798234961898070126944958563089250222330703809017916520237846380947926729559095116040049301305803379412197220899577334951375316724771324518890938316228601188721691118663477783781518094628979702395638778308245468366188808732359193157114339577729799315421450934204214311776123534086511344233925639944029992451545710233414197999140623660399248156985596975193441475213187416598978969356801051656818347426281840802063658369358856650349222469905507910886110910938986347586829184005593639375248656760577712759647837242607616897744092265753514410514478309251159925218765519191024510095706135976671733940893099311724908 17183608331918819923371656639327394837120355238737249332985142554340513584489256438984923699036852956740194341481705901513932144532823091762935469925435998649932275363727161494779993133395466873283502926562475926866387053703503505225565400197096825666505168851919283872722767905532527376675273964426093004076067535024004460518852729048672057988829019984212665915317310797238351663526400598797051403536092483603720376183098093235310123079546478909264874589554415308055182212635379357773963787051519463576512110393840014630661573809590138026601087180769086208146684092540004697548836145356692332535332004926752645160273986794231605294087037249626990088646063958085687439245738881979219256760397480110374471345261097449346093377710725708 137189851216111583066387411746312873379199341815859210001758510566483072860453659780109992688957800178558461332738560364388972831765495910063195739191352970356357651123573450849714729777924952741562714004918796692372470236009835176650476827088220172506997971551547649429466651877744311037311478817123268460416598367045361795945167512931032681067108442315871286166192142797795144282925876148694800866527137808385609013837615973248126860830022834728614340546052099144716860252027022370657395754853887175613657308631856349591347325244572467235828086584043087335847512770256755790858685371347419112412678365966525933410682273270386503193628365046567212938244742091690891142101069212230298218716696934341125142331315361758459363080171447711 1095293928181574863875713492006213190706926849033479634272686583925582159727042565689188600188556952894723438842431491811964854193157136413751015674925681173041556162356303522936408213413947295015007160050787224775579381567199849441362068687642999075129955591366534951433502266725172996381421219152669385726024085663603016088133479468942783291302986316390504976826021611884096528765579065325016802292524494304060500442877126140040110643431413974939946318213302246411115309975891885299425518101010501456143555611790527387647191235632379502231986970957234931189055580581766433479197520908567898611578528268111889717071546720544060208120604165354410297287170314872098521444328830207915938547844468249929523727189809208943650892360999953116 8744610050617994322393822557579165480066526994689836821505048069294649004936433448913923620268598093141571197447537332436355382926246036108759352369360366246299107590486603889171323162375247481683176621950570972487844965119572876015978821369489288206051411818592558195515373485349249904783617560752557035470388138255245118611482916878796953366046685594565005201014198409031262262986784166068791633941232253977870038984358337221928087923081125540012541073837678512125165785237474412593316865598541547539813387824516391862806564162383728471477338187931253148557565882536197716260774725729102415133240578408733859328897955361314993559784537870648931650450113459090118900215937947053813619668677940396163262830249642885071453945537399216045 69815408772810687998835866541208665366297326647504193654586444824622873591375332464654880274614132090428912802695923769378575330113117151436182842214285567559079754651709120390198903953284506710964597134320496487744126665555828235843707731149254710913771657396286694227218003743893448533256430372427136690689812697578617533662516544283356954659685997183258592751764847775789097900011639548144396962456651805404790970746751130924650589464521512760008421774207921629445078504931560386091485856633044845679179231043012161722594840405975195287962089879676043609361373826062580753177298340405317895176085411330389810252730954857220059073625568283533220900843823950373922021762134953474187387759585843240202725430026286829648713991658845320176 557395155720281754651556726994317686628133024654258617104765300385833509937906541834648943383283131969283304763755189587793605243757977469123769124058106868982430851432014329709157927149213387643881217948410500426829779821422103444183578735784699250378780958008377440414132411122545986012444295724120252371845198532824296505519246639999457756149021457666768732947623746179418491948341617863612847408864968383958798875812575443713960436462017688989798895039599497850278522289359665558884392464986264445930685124444096248034132218042786997297941620987212220217912309234963031413558101925708772747651592475780378592318965047492493514270588273556113554208410353572050731159383386344293799104516273859334772819184755491682712338645161747231958 4450165468862346528029933466124697962353017233460605486320087156104903939110746021620756208468513058226892931252387555520894183463091031334846522449484190118790605995253491270139036893706622901314130404190679730815640847272122543677604217366730834594815541514892886914549924166191567522122748882278007382969918937348307165089170918172080242128315334866982654792510836844341465278144103793390676527809053341585953145987065494498175907402531583550892067334511102498547722829623613423949050012279598467592936556039166805473785771200091410664478260058872036775677410306268523713977191533004902045565362952853737318923969532470942120093706617865961354211845419056232000032420510632394491170364658837033074215624548099509254499361550721541832164 35529589612261068263656289758195110493077042417458894019189591157352807011099999186168160439945553524430364077716717696264264337598560777263867158167026071797434421807432372423712693439634349986926483981207624846406651358783442430093156939843865015387196371079109508521535256053792325053647355642320860951043597985690357014657123759762786899212856100661702002854352172649154373034347794019657134916775143972457883148799253260303241565954942765271840898709631313933144449795035881699328013148325704154635048637650290538901944688929971363060514157459568439042576606781440693495045073346870775128539029488914976371590930812596291708409244947671917490851078968546737821921586616576427825358047189247373347530676464845965587967909223953754036312 283664692177549584437124803479447087471205622492452340963516354179973761192843023267883251254267620668432353082207286233145655780242543481234273180893396401983354363946814032709424968034960389429794441388557738136147190092707116592839714733710625112147257724034302772990099816468077499835558002809605470428068490960993734602229566514474585396297729419530289566970724315873201177023032260930176831601302922044251379844915118147629874079261227393515623062193214892861982576093610122270905000370164712796059674764028943962535716503492412263950921423274785991653488935441883670030674959647145491052493612116136263998347461517797133073965697191820390670966202946340469957124634336331478620529355439138826500344165343925039849378693363126566897820 2264756061343652898913016517818702041489979887268210836163053117678308020748125871023391680709533505479299975000779900017082811810863636438765329342915219487592463228857109088648833671326488447946313397179397603663705020969645315772838636849622441040702566383417345249433864041598727918950245227759722839899497226691272928421858075815671468707682427703953982429184728258456872744151008789160012256889380080364176520597928804834523692573612501634179053636746827559132025881789081526069329970161153793743084875564411242674588989150012235330750437417844883222523724243527029468809852463778677327912913853657178083146968616786968637819339255733825249613207835996228091723548302529128308978310274366217559503514787290858741512718507868365400786327 18081673935212140682408554300694845644631162834294008627495086283849580059596006019866069661079382754233045151043674273036395890011822237459848504546800052459842259325504465786723631776007214579781823475890050028955458365179308811871717439063263280726531174315454581058173749180237882214834626784984070561850761383120363855562188149429171813956988015790680819416143194920475880594710871091537234983612094171844960305773276531920138084104199240908761578123213401415147687361550959012768983062810493165955993834565257276968669792716263304681752708857882674124779488306606380870943903066464604727882987823860824204855025322608916445501971380131723402848937481247896617951836163148643143057735862422556131475526997286647471420661820896538066604862 144363328922015666355575929783792330542087351882694756727031936730053715992901344974272916891682606102759046573579411101503973090035442073562154626015449170180616666732878470037729893712799281237406805389696102882035742955875953258625701209595461889877306248945027378088154762373612558550201854188826756530387798296317627984771336197495843736986233699247541135708264344723237461977607562161240148308564215929580273721687016686911007422316588019663843717752911972674265717658622236193728036995966000582209250282439804953403571082743487514618128520379504860574063549009396726753550050129794057375155491167764201814007598160187993775836477990923849686505939579394231200581692314280625930252452926506904032091963452595718576385630197675552546662146 1152593569041439593222430205335845418196334623409196455422776929175824709452239478400334573218476461090393193305945047605375692211795755063241115067163305539506820451761714257551961411381768629379411562715962798922802870807001772093769415153472991392341009665470010890987164128030360717794531809230249225229744688677190156773341113448655879387457918632758092767441981750061853559986068297254830943314478018771504242985685114928096003514744980304039249988925515889892001627202967138943245606343207485601479446392274445131509652675779128805119110535790704714141150416383239491755492419353191351473419133285710223122916492924675525051065598371085278851633248482763538573681878514360845274606557725386460602232714929946789892497267707200347035846664 9202303296799532153047383132797733469118189563201106374395140698792060609604410804649209676895884368004127367842310022422496738419685928975476996898328050919543782337903437070286703881657631356625842505513607150328257860231341970803246556828238686204497185656179575171281613573780466578714568461128527675949593732514064245765867878426854049137545604787144058772435020141010682315485706504534346492324940577574364955593780928340312316688798512730085354281553823625703071130284948667601259725411210831701523085596051197859062512931795555239108144278426541608694830554111862230202300793035698341458091219051071401677570510588919634735383038634701868718595545338108330299465317119420062149546514950333675312545605073534966533620136703509094660814650 73471336191064032146369249051334386973514790854010083818038644287560737441804527148932089751670662453093857661025788833782365085636136315784127308148269528428422600618324775963980416470368426308882831491188181343664869398270939075684525958940547170877152425722665582995459800469801414078287039412344920420011168054631906062092903028950122947780028692408927252311872888581245880893658586880862660860022697916354832379025765486467054062635212065642794282842238172750258929994885299134089512809160726084518669650743755866845189750124091422535988324334723669041455159839412314634800833663137821121683923062570272723980630964377482271177254582932866749435566118681461737720354968361392556501977888924667900313541099006959108810811512628311398097637176 586597726368544711601579800994935130089489661218160515194548044018986092350070067366590344441971072680842105122841909670260062412269156736591987122365019965437873642701276118009818103907728346719146232660840470352161076668976990142102601478069081613593902229698154505315211750789390101449713145172542710371990779029004633932000153409198364720746118812407584999280560757868263560894678197767115493033047359032552418886386987961811003073235251337624220315482967211410155414149639432771721078813997490542350002603807606580726932994199729634388525702552299675184745081964028839131492700157552174016502150207412677441368444327020106760800768716649695468689174208560389280259089034755433669635126256490866427572745984862232411790369554634826396316359405 4683428040217281339306135497458959587606883878644835209106514048459369882997405238391921891287994896352086085742200846695002870216859098938266916489081998492653062412280298382622325525187730859481108820802962093635338026435554907955354127263719543330545857527587399876581095429266233781106122950489188999877729095118914415668313669088429169628166708513295152439702186233815695485999550385153355565851617423879101565124977716602366140005387998587763234938100547230224152498014537830004183559710226343434157782082005307822048763634479177090404070337853647079586559356429177650853951330071563914616030417313741837924595963301268823264351528440010104501702797403025446259298890474377836072779012616378267091987910759760185672650704160330358453760543718 37392832582925818001464940288443705936204224102754493746687033833585623821372889550610764963392883878356773882849337814547183894802283676956829394505606551224207763561771024097731960182196329005612363930621642606725742469437058385814248928889494584514073353444494723509432662915509441972125209507205247761839190024764868262060380600316198203833110858479514796557971071459815942333072781919888751085376988750366160622461009087072737881080740515789338899765506753525843302469873185766287581129154030733743269752357102894573946052720913500553942957331094981510636216916940264726979361416828568184355517775869070619826202517133292158012275172695224706745051262789207837837735348011889445194902123352600562875266444904546460651022685411658062951953014319 298547825821138722897444183499858672262837840749076462182500683066086225626791904576470270456554277903217193598342433821557540497194104149251447082358509756558017970266812861087017340135228262995102705671894483062801326616179245000561710920863841057944861875290168357503897014531128398317927531686389430001008669025448198341936180813989938478676602885192245154854466796081032749977680607658441798548530381587434172235185564007636750225548943531818359419294880189637937607308753534279994169270926750999135239929243378222302195357513813864616191700282875831538581971740663555581259139955143095767391381815770829279065592642481842252795726662886909743361464763713420860187462499644353129222760560462382085237346315779065243769605062784272561470162402166 2383639053963968188006117304990659267006036884769776000731793585932296626998517710973312393166083605780652817590969568312035389688975769838263423473739966753353417503809876911556365002379709466527245071301382983035968832493169580958684094795302363259561285732732858273755948404022829731083663530078639519736122094562844414531224708301789092537745470643175233651698073958086974466404146146254856741682921748552676707568623927946789189167055869699452237801491791401692233462849487150382927331370394535955320686552589745790813668560663819279734212263204834781065576142144650001088664074895217944723409387921138693570163679081583249199742248277880119363991335648586557513170329649183101542794877323229893144398045494096538109595305105482195549924355869602 19031284491584619515150830523874682212049219586599996169081816429549321498956163463006357266694500114773300502960598142815525062772316743546182928869045484790870327707198780901908272502855472016340264387982718472313311782176945761474092701228695441616340930646328448430851446792670850530791581496434975726816003572744204892937736275105376941119107159641008051263725535018215889314966071779507956366498515408902814321792218820015167938005169749162325098038513508025601851215846676298573400432058878849400241441483852002038489838108397640942757599035808506728841723606321116513703100124518259874801353721604312395790784964813948425374870102058308962566818053009108427240418384787152508040531251920297343502276414873062955868638635182556149092553023212124 151948612054035278531369591273781005333354892070462916964137467270552741970339348453591752173903033210930896961939838309518817050501345652257058955761105802857749224705473239479229896647065698531769603593660854159316550482353568233898120566888447336503575669079764811791123043801164161619649772207200937045289045525140949835747636917164974514511055661390175152223981962441298205824491360773992794621291076729153431310620327320621085994331379631845422220233365547175522876394749661911841606028471859805194924218967439948997633128023156637355643697606967044568228545278887044020774724087489032191449010308706217779664052566969228368747836627928021805269848084066414405737465057079492184273832093459616303250162501271231630961955855232295339379363762798309 1213183229101900063948423698614470753870273915533253658737835348066657245766134549858773603664917227390704370056623680839611757920292869254392372810062338778556917891642427189547323554059408598542318269987186761881370524423358679175339984231124316605373244404856903226857101852333616730280374340753844310547707034598209852003118257526355747807970240123412375994705493176063635420616861639574777335534707968962963967687329977713234420266282853309508966517150865671128284697944309788410731337170802524500620859707154114666048172086511580259474598680393645784434061514491154564926521999597662643841114176974427422150978413779232250328559956868233951772221757785247538197044763973841799943365762701117982290547202453917859395609364548800911868772836156333426 9686281377721650445188230094014678508314959148175444093968843178480315761382911385134392819677869579676064008838212863768015712263218992160375284148486606411728649443481403219607777489500435612661769749887181959458343311794525653350647223976187911062228442760066430124355847616864136229087292558745885873398610258156301995009614767856004350925433829076886925488264066156666567117513452248826366803384211112438744398290168965220925235053742015672610773166995420912939253112562460767229568813857969792156679159375137198773728943570911952758109015404666890509457947439556043207379040044522387478823391736434505343597613347855937486925683364935975816679850965685927669760352522797956602550223926067312382656681039670181910893902598142219560596749829450578631 77337260332869291479565930187037174014304353332827367338701695737491377296253638825232627473474667513652361841480808870786271014613164254388972932430503658893878192863563090811606957753819153036137146525862374753984592998752273850897987676522661835747720805712017009477560026542372692978758872480204365185873482754941321775025311754572217726798013371443930273428155558351472608821957867771494700093048277202371681623486918616900187895774350849126413704904361071240895921630712449436303840581372058448020075990379517330999394599961505875664961087631862037611816228043141916859278143796052502811166037934436207433085583829235546370569928728591186559572165411957121862199525489366136774559634771057465070145978048848922026365685604741131348753463556866760854 617478019927614130145758908933754617766028395621247215903895285988223347227047025490513470742681078480926042941546706926904019197372102901303290274391862999053837770200182343142517710076037873332001120262043140896986851298180033428200424460007849641949836773543977760524096493504944636081399014872612015678163067602127586288809432947614390190434379367280853798149705058799830335662525245256494719705421933472914871927141518185689480426010262223770307507001514931349011996900613481377242800181163904592777963603721504390404153432296753168283229226766498069211479334224223851152154190394921645610109915989890872645270696397472723036449639344615487116148063775168503741562287451886387252134579696661424494189601933254743102086293149111987862524585623422553995 4930094425777768456421389032610617817350131012319501768225033694819743105038816435204787408179036684852339904644348340428934212592253751964182511803626071803623974378631615932658560031755835239602377151571533136012988420654085628451331638254285176580043215711309835042430273781874218690306927783223749734785953927476004437619184467396642768479672080858239510028552367560429371468984074767653369089893117644402663558356723499960311389203811031264928079938863174667958140910746836121285594280859974702590718712481744978296069893255404765813481954694342091789303150995862474801507868867907314610203151704131600568484489314492255064748189144856025451110182473639127153333345923338566861160563711397844189603495445504338717275019036685856839469916636501665950950 39363162617160322050285856570143635325932899636299858100104960678591585709819969105406037541889376047371777626791026089193618779856596997563163980280428147655830926100120103984953615327891158876466921478360351076845876378658357831309217613672690467466882794095620473341285838112607310258962088050182004907508449952145272985699229572180029946027841958395054609405430923304969662064394578684444218466591814689216397114819563539012837926621373267281360050902108347712171970070294101086352717286745590162773115649622613520034410376687392720746138231857773007197311573510403108476982961219786445793235362072022197319259168365744636857720435183688022717947380018679265936441442369027567109851556976545709573157913831030275941411699938945110989252435911650408990270 314286510785729429663433233996348097336671090836158876708845205773787012661058091664050494721411152162400132805522064773715020928840166924152356988064154340804071919313133254369406037970219287004383921721892363408706089715905170222674839473222588540664314823736795626522424586159367379124312008928817087703442195416221081763085161584128581676582204010749528396996393713130362072376290614205632154772716120248510282163602373928806593202225758101277355460050803127026025362702136930038818729491200848226371161325787802094533846647220195599360698320150318149280131086000007927892751263045333345255462585488798827011628967454921557360688365595458295840253254027201523667301214542700560461515141944306444115874869505724994878103374383271882408951719502226782612346 2509357314896161475913233695893857732349379858731716063994815858231174259254364098595025308204606650756640359932835335344379244373186254068392503381829746310220554478609223413120787224194883191735675835781617059793967287686936923472829971715459773169755847796084714503557591224726391615493733455697656103925938574891029633413853340997467176542375133678562873948149420227464992780351535622491424612353245043181078422978138946544928940603396376905106020174619660719304547904827850908954901791232997626614226782835567435316559176960082044035388131522250875559261154497545719350479081206250587751083263413022761102564159367824075540961684988223285406141034748666973605581818697480876756084086688015042746700035227746433046314584429843126738698683098944550594816558 20035504209879930982319230288461133765172995111450677098012916924862867848214569093328144252022658058836942033808548392674376098645605227425601266382720346415897724723299305404254603491296613529464525423172632302209762710565356044515922149242111237332185098948293664129977122928568708128027966092031400474401107932571057095505112083152929402979912800213934993819081185747487620066052084852491332458092828508258957213383581504584069020121941052588185507327569709229124659868333061961028925344983951290144949488473640390939916339854023581929808327052952837819893746355291077401315228778291096518439712335364794777548933087703077531678222249952403744051944226993966049935526982485173136479003320291162091016101052091161038718692935151231425411096720235206383126130 159970185828873113483885294981808746366556944106616523164734768656791845906815789213512571645999726602313768713742448808689248712308061974982895156083632159608508711222782805616706367674048690515143686721706666452282597725618216393034833849775841972967117352639739862869254356979802302401200676649852937391207898707818430901791593258867371655800636281561716567685133347500784784224907338727584892274359724357492009510265366248517316159623267078120817751200564240955040376072167013448408366661774476389299116252765654933097401548795412199872078758239001077201715307755409602936772860916592538119880942373395196480384852452124576719275461774837785830592602340795195371629365854032310543398538815046291844525278699831216161561637821510762208476609942562988094187887 1277258562846232217176973612301828494559424851070911127034959660964046176565393541852108894453486777334693804935544951582032446373960206306643591390360493084868132535419597095220392188171771910861506295490928215798458283778801703078481291545112847318509116068645440454027762668421788539840364057920377194776047115342643240612365015105184897532833797981416019869517199800205138377443475329031648747657636036259450266038715920588798864552428974995621460700169524321950569103074955618781283117660532781839187853254921355682759034198638747287179960161395882321735753681140424994695522079700702955011383212092233790260207459998928867380164926946286659565630645022612829529698903066412613077495153458449041051019053880755425093392578412458136110049654358038287012655808 10198107714299184348424780348862803868327827462592396347830443588983178322809722775949970656723515785808790455695418817544672782714621550381670145615246592829375357466065472823423837670879485394572690724091130619809030215592981075577772918230761701842615269908512005030291173981723417124491297391889865464711230643275189708607717282598360431724094608034039232009991238491955527758660251039360293869371192965685018534682199593701025398346706003633099372223071230302802958006952256406583429763643636857848298816047084762927702975624971024780959602885610645454654468072186066886826779584232538334181417664088739709300262298582815396681576524034771231520734246151745712386931961572959150393987287784910035722710034582522828434862719730640327480851760457253839001368327 81425674070306524532355264898203936827383584797709431533779322384369863247234486623507020830721571884053115609246974285131911457860305109845830567765596206184828731629519492685126352255628502560766588243381389459677351992487496027733444567552402529252043995910683461058954988387371232547401440491318210089063532200745928628757757982423621937720448631663784981066618231986123369425155435512660707729466659753466453518077124805012542239783404642948198188432002894879199662717610201032859557657974676660487181318466599940841914614873067203386362097719336840662399032185425925144002843238954211823176480622443958357019795353175088136933155659958833911980784725896658561412788492177888128736756812286761029484453541928289781064735363888523473038263145763476698415394906 650135863606889061935864290265114455767326311447284692792937070158460523410649725169336596762833723657263452718776401583249042198345107123953539703169744340679798769447204905351302485469251071361786385447173322770501672843739711719415610659438932313682521429390506287682327517781745715002943720762195724018426961549510957881368340878755610654686138797146051081173686790038671302746142436713293118159114774845701851448966038079139265995949828025143827350055079724275700364692917311853671274335606379067271871643445619024034122776853919218925648775488340260037232826791110782394861909831020299283760803428540954951390534517606061977527872864406987332317396924181536774050799847012284459678880344625787960697470196499713333811200467246225188123934682814716692351472065 5190962318635911287663955966830215177401321887694354200236962757162940197001182476440604452839058918787944072872102020720423421853042154284698387646710084468444357230271894803872360136271646611589862982199067030427904951785065050308601459728498694306181138899658781879632990289261479871357358633871554682905703215237632167602437601197048472990420544269902848125344158316518250543242623377107113750304981991749366927890760166382783476411199433309709145087376024948490702543624727413084878654898553647364879192180950032598853519733306566373091261825827307884763067522077203430717461362012226832179615991137731549686722250916249084477061337515390970446455389121887124182604202980895202022471047010911049045021754754434715758040785843092271222691222581262287650012512212 41446953875455387430701242949900598424213066165730890957064903484797636542207769348737892435175443708607627787103637172437988655095266828780112605685610032216464013507975985107927233839145648580172250488644554110288303514140290580433520887475625085054615382240275106723924293257508875031342224906121958899504713896996687354423199502693049465530901094364184525923027374242253263333563234417494578773218078282187485378939993426766272154162154243934323897793087158884765191307518147678954436334702242230712179874963921315749796242164300161496732118674890182171973017744261224715561853240400090005995805177166596863854738863074257307311389436658014111845041858270547192811878722900483836626207899721968566015771843950272194062405131322968617967185714150337476342675575172 330931681380468682886154171461045558286936065845110404580033553149614378949770818834368867475523742134438022450078541470323078675683155029965544776317470426559924198597205897188316760564845880723623495108049399846871159264211669496284717171168435165404980369309491090940282547375168439698344103241643350931756832902568043962353811958126321242730170756604755639548910074336190051708671018013734623633239926126724982451056546272185622552963382595963718117999266202601819218559353097054148862538500986040131369510547496216094084258364211014474621989336643801994973564746221427478033202057905682758755054231087997400227198618459001414754012727843028236546839093750089938137921159661194338403836333625038446435280398446522289527917821494881193147741965026680410238749759480 2642317847607391742294189547517802132640645087336458113499336269487766642496602646589489736193300383946969212578841530237703880733425069270257828990843381120379235035698540703098526228665466914281971129166245469407856353852937129129375980935891029145498039938789162023101225238882983324777504219557607351115266775052265023594256365011293393389354447084213843548870604115576077908969332266379778811494990649365932529830868380695370449668616415357982506907845990332581930918879064240911110902972612664756473511254985481240024332897300397008261441839912148948109087716274863266042376965382261498217565364987377667691283091245503511540524969191581716136517381360956881191544831444580514135005739156003942549387216087964637539200547582842451554937591089633782184706113407334 21097585356114611435198226051972854346992556502353862301584964136177491929689897123314158391992724662510440260498493438422531136311639676978411084382110445084278950414650010885886736264825890575582759567158440045357762954534961167551651529421745658422510212442869666514018244634275347960457703440491970518043837498492622404468337734171358643881249502755001651890268657195328038835423005785227502857911309417777606261693014756748272707803953034705229356250269875405339229412344333581380811138787336131865620095988921840178858076178271940259414526634446632812658151939368082811431265273618459324137463471284147360006009298719947446162703182276306944266325507294398042026092414272455026502451376681938033032365117231633952345952980213840987315728397567903394575981685143954 168454038331431730300399602970853717778385702711805315930196350956381833496317970398930989776199146322380618585993598442294933407314999130543777733443750866696099644019378690188916415502161183107574194819797749136381273161964144654997844999986769178304145862227576251668232283765035605433773171899954250277926594659539452727714226155050169090954343993238429521027320833049806978605452085892100717464802991934791486393844592032327116593604318718736390359637003994845901232954432537171369978743950042774920916173641335018880008612718413570823061712681494728821298569354915661078523125735550550001501787943209083877334684207229314420838612281860426619586286926501746195360912814652730093840825303220215772480270478504837911832410849184715297228503290555377593792254292719886 1345027235011441835845769881690116515718527335180513764513061073883912063030540305889373538272444484237181863983489648707059773461361008241474705531999924841549473757167229229053467316941118818223488944142302923254563427168308639387592526610725596629346377787433161837954077356158602047030802884932658482042844451833730945318992040196256393800270015792712275314358097568591192006500422259463753861336296117813037051223625178804404004706028740658312474513378427367441649106384578001876077639683020660645691195089410837079658713338000413327751264876299236882285273316925161374581173554893505778736382171572634934252900432840112442599501271703017155700218698168912711546120030855751255744531852031216863759941181949077276030061748067585092381863310625482517546793385358127330 10739441708114106203888892171803988565247519983977436461746616256764698298102415407351989462105731332453307410279431901247327379977701710565576830125008798673499104292743111079030152801501524330722644625281860469723374162679381656640006707432700657078130579861820368878559545348136973914891814253403856320164108417319092044261413169330605040797467059375627242938677348967189285126543431866821123918857523535222356840208096696164354889635728139046034869751290851645755816456293693935492974875461592525920405966278477957684674751408384163276148361323002374749961710533564865971879553269183185451755586126070762868532247638334341225204021473706780103839695434754319066765552925101365017309520153346458298963650571975369181509780672226056752196793613298610859428211554505382320 85749837311265230861880552892829226038650968686053126030447247602988625541462173958117999663765121885706236799678387620261678350787071845323709039565882902802030669004863919090558694510954295203314930253955740718788587348356929556320010622919758756645242501692920795843751626355313306939318571024804714604233098753211453065738163136199621617113747181088911825886478999244179298755888313348372685311575143248733532383449422031112895995357380208165555329965119834863244102858944258490176152581487099796668045181067339587109172760007136233486040695512324137627662015787552276157201598399732150727963187032301235725337766891117197528146435247465564538050617614376580667088323110269588839061372872829952670795332976953692955008573323441268034291948242767442690699758813878811052 684677214436982280102540305531768067830681090823125324245378238662262319934493932155457510290294905055819314251345180836670743860588945020303567900811144068087369549055748430224168181713877782476170063908380495151713773809261802193433629228195248405965065312332604857461607854028404046192928119149993185117915832796073396401459960429753604291671552513404269825757899274900056744175110762078232027754574006837532598897041239407480118675555983241747115669616815842825916074728201793608263280216539865565441060806851020422441358507630044780044703532577930454136530461700375298568288198076191088575342134353863451753742796716446245248868927850277842027731333737460918547704925815129712976441508680044141324083771899330955158082953098496500593028618650601621050618130246209390306 5466878398818848265970143359731138986737153418984749310163829648582119680635039213255860875353810715579473004950472892874916115839141226504170473337258398774033651543864610941800330845230939733958203679908565386261327252081220980964640119034510594186634650977344207745329400865139760713242549504138596784755735667203888616479538187406636928306412147577034000755838624357699972226641109279841382962140246981985301361003326614987077297925873290237248594786569994535161538217474777401510892741598326221923148276324646374510937134499996448040258746962965911313143505194138363120507086716326862179152024405299558757841562193049002423641885954616864861212329205001353288290603332824558331108998098455899217053141538198476477885335732299724646236637540003645430890888352562439310158 43650972001402028037280772786484165656909232592553104864308488239514693253576417913914772594533024272780142152227618069901689300382327802784868408972289462214566992604391983852044792966984937250438826202971704383412006299813437439673514805491922757820472137575623208366311874154526682204499769333073016980198218347917670017016346942902198288018066731703486574178934172868939899908800318477261964854476262768396612728198733733206352029895730838184699051755595320852337840742398540201414689959530535843973181610898823438321592533370868233307295032582219133461265629658646274524740175506894595267837122461942016925292721491882355650665834286507934725495875167121403600476749846291140472461291254606731246275762509664654472232307919712812692459467587846910476104676400979120445967 348537400485826971804487596317932526164826268441431569291265775652638845084657343145954157543632248448472246177087683112960284837653614884652735821245123407214470448811428903263822730209130238618230938327022979501084938745777114227598084316882030089234977913952932989649529143223367936663465047169772059036308734974414154259320709724062984722861778816386204544805092629727183495482158303832270194236820291583216133506084248507404297913793354202786006828096129542044574010490709813328268323240322894685505892533381777402913935505486229475513298374448125820548187432328112611503647385056402115306053220527774928265049012831558832827669860950125124866429709508565960747941969666798433041324135744430210153090655113696840702731427980867787759008698203553944443948828081385289014352 2782952657831952073665811223903036902328214766391859553018898184370340826345056438815440422020708791516558833268341042480839303660518651862880153239882974834942626772392880429903375296627860078112098045700660552830078376132503130166483226089068488811365118157313415431306309635754397249375162017388112717690849583387262396440363984829657373979912670318847556606533695756141412488501632594556950132450306632844940398697705384440925256337023496097933285886708068553292126498626755070183180863367751012946451319526085775360054077194230663856192731525118575069318672118879817193418112662474511943574656513261031851964699089171567793574378736103416401064742839423105637507124982719091775910669530088217386606951709085402319043253237730586658282055092869498561355741518853011280377953 22220980004368587431490263592907597333398875490306694184533563223381638998470745383441340990868480223985687672473108485771630159508629948860647451124652681146558163678380898501670835880348476408095534398388274584983460260111894357114137774583372172093620385388682564143385833099409468503890993274200430259993733604254569041289324748941000475055789214734899951576409619589659939057339789826198537909494875937836840421998681924272088827401916573556952593176116942826093815786392817389146292444451893811663592615907629856725984430827442752823134218583654158393032320658772253326139952930709708881610441898093922343453115775069612620346331610118394124661554834050069177702046946316332545583836017270244635644767551552041518317273015686770019956441425008802783309010438753976448627998 177427754433354834928671965784259993950877276415589562907332105618041213550897771685195508920558422832616423257607007858205423537098054306255796270494040480728905767609872882610596306310713555356805487912656494274404064907237413729325813434915911609555268596386200752345029673455007119022606517925786242423812062496752112772676755810887870276246872711394330679459052062186992285923899407487717806285013530098754482552755165893464181599343477779261579459523921110950428444322910609372983804703899492051562443729496468436539802866957544402286175475521809035603221577002531737563832686481720037772903983144657406411608509866567895446653254336289046082846662336615546719801015023461947526340797824753846043298445393459461608055640995321281240333143970333653466723160740968496764623155 1416709671228859538680862626848371949967281031261150387023158770156879153960594848593957874067389800451299942511572541444763486952041446840566898132833586668745539429680147272777893594550696999638972759898483841664381214954054632381210329299069752150096349762415682758460666946875350139861919163894760511122918705338293840129413201307606171664798313193224873652725487737485550391508279859312954216386317789361625314007729675710494172606426314520616733717318824987156110511916330096441317616286586997054975040317851367037250362131710519201340131440195060550154780727093243345181200935944423138172796231445764418858198791862041167861650270329721078831283933481687009792344362250208987307513785473854097482363171899494928163171634987450180440832945894280361443057145865439195522010352 11312044740885827910776846908460344972764642731314142843070294013994956020658483616830640337413734715271998270085430899673171241892983893281003803480381168378090719235106673034403138701895899505985392928713513182240127596315357991591016332637588554092265491810383225018992716524705080285255080981763007307131089387790600421311240185400176877782685733384309379121924161846348108768522935973853901630947596182243381248652170698098564195224179484091814124892101183629454794844745539707249711832438085015182051185254128039056708812924953018126425932616157005504483647313730110922252306708579996510152153939399200476484985756976570103673240843208642761589873747935199307692542256624810406686736673163985258736391685075132351135946417874326254811300738964241280461535990395373098333686779 90323824950030488020272201829255273762725262415714106930922145739515569720360216680335275873555717155830143547491238687263084742784124951109424137805486912131301412167474394728334397462063099496234728125699796947888589747805837825943264212605636372887683329135849554734684107493107270029845537180134312279635323645482474110844571271764851591970361909711626163792998989501632087212222032069073030214516555754807396628862558160198941836660124861341848357427636820831403720854762181583639522300593912128991256996943419204035739343472556639453751659940809340683897568286413275138388727178962758314990554643645158794047994599774625613420467184276417699948969718161656253857499580332359042675415703148631790316701636442985951473632932051458820681216741529682947066955391474261887769562564 721214542513473999596349139187145930898790510904962803809336460519304788743018387763704488556369374071279514453525285649894981174614397744695240284707649578686991542592818013327496579099106092193727211351047259892256640796988734019899501425341658255852400016941017783499346927281813831993440279866659992941183043042940316859943009860880373664409943485144706174280642181573021418994591586987058726914784504911117509286399271761738624469770501540782571094733495533377974970333537757726982104198393353442737096911296800958348754595163631132087842897356027850121265742560651588020339865493829282700944871523066223041597164706258541780129494565081131467046521720517735202802154335931402426754071287751897496497056503089707850354968790857932740440370842823780567289963496971172332394840925 5758741396355097360193457380881637926163045434384993336978231975479738701721467502117728345423224597753042303637615585659527028217766843612148668578003036793913307713159970924674628852024890536128928699523156559421402346155764421233496892187158360478760216311705379843187693289904351040132548455771641689837033576835710454237431070370257656215876497520426228133985696371504959174981908639930664376452478973112709941077153152353828882134951472049762930802363942923936055023735138700607283417429109465027244767020344883699563204077274351742612888688728901264758481427223096513087662112974836793546847241006277543092736341467306216737085312610320614996621055347079393391317673722680221106021655157482191982875843525016220415072241118679584948822759124711770890054031175814632422539359110 45982398603183109677377158381529694403352224797679774159281167382094413314436486702588640294819180277116673694838426456796147155038634262616988408338131493085170575313324965025693238407138460114924287419939244403212160883269835488428332866431761337550842861580242325458662624176562495500510085185312862893591724378879368220093416517814746006799797243879711350135127444221962063847168486102385350472982222424778564486949951537924714128919418274144629790349222988985318376335135463517034288940556096240132921939293396222516269376480093287831842360900504478391189943656782252096698004875744464839210684018815835196007060990413415718576878597506127409484705765217745193516758027569243631549487731459540151046552747555073945161471178901224903044503994869659021313069277845344219816697345777 367161055221461442113850860007389551958420514410974211089132716545862767634695919739150866217605927817303075581379629718412200525013583182484502292602683981569958949181932205000267503261570632030368949760345350043128062708594909888149435757346451948562241416479531926182535357042620217154996322724828492458001215384412541094483278009961954565823951046228927579219795397369535065026202758770716395451299753507552043115390540065389449005668720290705450272717272753530429960446666599598155215542771089599712006477589792737935115507129908808601490274917795617228877916500580688827596143038726727050864022669630842116340355993851123608273290981476071008183391057905885252741488631974080032573607838714167027348893584317735421939195866986054950408695023929970571010431659875473609926378192816 2931720317443556895653602830595087524605896888343744881020968046608429710937260472770113285774922946688427640589799457397437453505840857339769263457205854660984106924247731565362194684963572580927181993166253640570454737086183990192110328374981107806674244476691654403269282941014821598191205968327141075754434161117954185128619614837257180088163107574936445248890452750030871815359847811663304631679546878804970695776791449276457024361479333392465814989362863474921251328516857600888806409682304225880813569495873184625722623078779333697927012612087936823285723154290179404457593098759747133319403386290808050229589404080607767983201016009851578338105784176310313083670163179158158834210266698427656293589735562131375155669243201489983910680735220690672020141594595043335842210612161434 23409352536014060912663748394171966222830389535839304225734314997378426254260835661408814031403522777971815764610329973434922552786823062699467259995682559878925843414031012320647134538870269758605117875055131155141938888733195358555433988846651361936518256321991007102378242389173344046021824309292816873144354312386753072593671459919596360641591874437463400492400939947143756862284964699518586883189907794638153804785055227867170683101564653524575251762848741536594168019996825561702662530916997804586400009912734576371643871381777155825603433393201763100780264371591851945568347230149213792332814080770354021329109817987781539285291386124094586305893365110790103439526624867510949177012355373933829921108092683019914253197207805878355678259454877823721511758535403597857955618222552392 186920615692987249525571622072842206980529032771024510765818992477379266707646599996669633227135044090158673452792433939265515775097637957683711012676149853938930910523013034986559346461550662941256444479589083371791942121227467624474018944200586109307077366021167417904133250703677102838070461864478322401573148879792424484195020341232669227170282021265926864387328610797328765921632045813593162419678581944564493704834371619310708591767407266859421421067422614528631738701969304890807553056366829420041436140114288725742538469013243265621650618272061754200467187199557249204150432027985040794191363150647575231979899632917246423242521875710242696162730791252053560790392659107851704141264502302068126166007054906097599923219001015513637188743962809117729668335425377172478194119480098648 1492539856473844677696781251845342206955502888789892560176064851491995120981919634911905707150617910136870426584183163436331173135985962217336481442773115808931190056340780927104672351679411930742134868460912954990522674427964564677712260609334453751572375206360666422341879965205606752745071050782606766694027093321096007622868201267352735379153844084220095481160758354797319616522886419668096268404130697896487286425566691891002153465091991799362885225990803572701340176777448156476212523854273164298450510469359566455470977702015016365099530241015323356918018284709834966734935195371990417101654340980519719029752872301856563556823233986423469931172610412344791257972655585404759044635714426475177777298682038888150871245461078227441145085442588583011943206636453846135097317947160206386 11917786556076965585710859021009615531916553235314268544103551053998188434666911320555716718853286656428399949699574261973484539091654453851829746271410172168641990036212941517839444908390708165401682640103848095661392185352230666967385795456392185522509421281420301702348957361374680228940484918919987628322142633527315012196291040798624105751951057102080069345613500560726592898701670094262956009063895729930231813816064380835281506786965222921393936305395351839180161086635645522774970534361016090266003219798621775012971769629622786479853898686451835012581878996644654900530118346002816184029357206463996896340460834089322133399560981631509388767585239183336994852215376116065175296311039666045451329351208811869021704942548543304762705205027108005714773902869439706332100922938823011037 95162577872257626216048639515893467656990446000907554844977371364426137605419567763951748687404587603238898910353534767254203352837303958346697135065029190864720384251500225040220692585520129421292692889890349392943996079839849419783162902611520683236749065264772401822770622034371228465474899854554303689463139693823914770594792296760519138600240731007231464070995049436522472210079901335252142084275547162582766355260755532514179337625570454583751276589578359163071539576897397946167884590615417585097823362081643078394655969277343512733851967876008802627968371107395256000498353779535208506724987963535575448218177044679463333310764675622575534807231349108456407937488938435091788145259956032977990471182459886259049587640696313927931039415879795250739465725291429383832542529053125287400 759867238654245374302143340633155772655198904731991231640383047486006990089601700033051416178126986100886443196428158918019686215044074390920452154234879218175708492495021268005054038424722282058472267390486606458743418951096168551084784282840162348082798472092596788037601305797385955297820739624119516561194597446023077156453029092550522464499420015614540083969410882502635115462291570727505713625794183959409061385646646375850789061489027803647246468683943531289106186911006022517269416417521071633463891702546203480548200373784418005292642502137070158326739607870967697202483923451166211615298222243902515519285043166397699310944680577384891036690968625447734549765545585223874877475257929811204028560506832632639020780378996420458731349656620543897765517882106831492358485511377709452662 6067505349477571688836455787264778200917870025819529493209512615850835714433301162362925975843013716168494480988607850919866695189402827389649992412905959721615819834649110652313001201465308663778362078464159913373034816079697370464350853446899109758471398787807644469013619819323526185370273514261665062121447921379211394021670761630090246697111522958160518899446830231559026266001553316281933389137226211658609322763847906953718839642827858585234499249884388475407765356792892394549411408068240088642506836754447440211393976783336869098349610898178082337287422948564323253872296901540846674514502130584008924724141437019011995266260645806946209139953575307705376341947110527853974294398389725389010345466232291385849950815224719452500807802922314280349463251282767084479027733804208485559850 48448857294784707836558717174659986358327946304193580318501456198350075887272431473650545967661516568860214534805553060794439608039238589106929345153029186729561354088039538644895286396614047579153314914512313303127231768933091151427610806108299510059428767488984819766833533095465975890571420567499327776224077237401562500280449038788119021635239306351606797512202725974798621543113479222032003617332074407518835070552027621077505562488977721539443866426681371403717370938923098436556820534805033885077767254388421701623095797388550323379292377140264963897063278013453652320075889688757857314646553348469997020476924465091401306421536808595964070202320080940919545073472130349574874481812580280209754702685596564796247004179448027513468868898237248239554042921509946109529471716693930034993580 386863565080864078418600826263647768267435362485186950043225517064301655985340193006982534597393520960102142944290616659146849936342559164853910435340275937127843348238251854234407330429394455104573975345731632346175057541410238997425221827955422000524063583246518443280079320192888119521958014118758885166125633348401040944817369812008006155368728723164844916567931285894626846017675893995837612137973900138206412304502738404565235939090266797395847892766833737637415603866571638253886551691587861003237870562702766332121624238859821832048269114211436766350614631938350458980979613228143307501853107257687435541537142257024375253701998240323043047902782759697535013513393089623736980254719307051283312023655852034504871861692773968970980210445351153115986616399239529865901098865059977628981428 3089107627974260362748584903600595888322926327207872911669054616938827077496459863401605122966837118223703695336345511625463306116988514073733127747651382426559151627078454297556076825358443940984963968356170711915373605598184015647660878130270623955809569551932239027483579403504247656166759039807776055734181348753316565925505519718986937412055764392961100209295360835659043691297792781685724637400968132497910159595843073371561211733007367905863082134852699549871518956898280865031164543691498766588342572525036732993142123275897976970530389264542850178868973936852250390734063414882592819464432184456936462502186348665271113614715522045599201220164144263502698177512777720220784236618477258038298807005281666854872139051515063007308246864914222162558202839646439380396077929027779431349660157 24666592935417304054422508852137368830951535398199282587775282486938283320993534676436362545517005963115636220394374753428330808496108088576221589660052395357431841472944083737850930632697195325161027927369281083159497070680072514629445703378484719712192230555621171128574389006643167245843130290940292481856552646001276460710247575355988544019721016546711350613535338947749739250180984041991116775026450820626660804778158074748350150305332772370658077355808483758545776729441788751300736084990040200513403485704298098399974389773616646939291307345031755232004228321540998682871889423816140089032250663439774022188774071601244169322486601298924245241279295790624749391417466247461681179375633117733576170170759601459743978992261815327251111451150292241063770510578231163162553882894187667835997916 196963706621525439833567077676397407899112966137933910123561592074285934750720892442452627448539837332555495844894250418471764229131964453098057478547848020686592680868578139063717352695640858631876786702709847005376946998484036455680096355820365791966972615490129285568135151994626237962356802733646067982994255121563339181340254100768993989056356312064473507388471885409837484312963103583213874751053472338780769090757306257430438820469912338606741065169574795211607011096859775670026564487099761628682620807643392589835630640402314794525936576845863795279887907477496779535154759851694665783596804240906822052999987647498689664594185302410333223604032919253499514957265016996794614703864585066617532266775318551785336090163818601703401193397676408616888308499233138445834013371507010697336640960 1572766184400338879544340090593835246163189973387439069968567802175137820708657752695726757303498416465896365349958677363318024558082393763686025051810549276070645520001399165292041996725494704481341717274894654609754666111794868544701168896749899124801095868500310040313598152907928414725841761047019521148198251328604727584240998582191206919156767969503145905147660298650320095649734295956847176763951122966078907893472514263427596471273237920345670794119819965808451747187290474177430426584540217262387394740448926258621394035408617991516673951444329809909481281073600844299578745463675998590555714011429409713176637419746609666662610492784616201008636601434907117888267558755548988130068623742900235502693628405971568526483839836953834992183632946926434128494905129967285365601003641773746381294 12558652047221036353632935879363449973721444845344436434850852781798894524090400156401645276296041080167179585180453661715073157543043950629830157531654143259974397262867978511656848531672389622432086605671728396690862606728239491197640303760374303834075431568266089674900983002516391280787557318553241965091882125708634830238494935322386569527473397995308742213656032614861272019402947766832722327585172442341039802497410620166676209594558835312201724064155615127209653428841460413525221612133692298485598691030414147563686629214876755176075092083377021349424039963648886816208462536678668954387769044517211714874750981132262165336980568337641706635564111572329057080826150360104994562004095198981657341942104544577218620952025098153559493595670961525627271881173624743469668386222585753053663208314 100281957210871692937587249497313668342758164539703144896147149768836271776395841638216655441946730904341407939874045387154011883329401063199228495729439109888422484311726335400735228485605498953867305720596501187010332449208782227270605706819757640424773072986385594899181187806355473550045461099672059382834500644612784587171783484834452212244330251848947106446010969446118653662899998539198986412105536121914993891834029996869765157138389646059566598238299348463473050863574038972969547192507299705835783227387209945742813168970393146394998788515086386200498059215359602889905800358278413782051869003435594791341474324453046139759709105412242916865862989020389481839057908261761648023053370415269856014494916674503321827304817580592837649267882937725260662752352337321549256015202893841198180787404 800762048041438880690659537878553141161217329853969672500359432738176201162923005202706111233118567038769857271056862085517741899461469083860457727654318173827655282861122088273827251949274851386754691954184420343671519252041778308203293195414763103176648919710760547777939583321813169589445037907255441041524313298282680563273606142314024904091791331613668519933652479296991919553769548088361022770350216032850105954308546510468849079723458237779239967098424742071475589693237719035494457641942195840943256039348636469919479909410988250681512026905615215047986791260183760772463662596762769486246882950498513940095699242894027928798036489149748506797871730607316088710441278280099761376599556639644535743600157644051900456812183014188098232502788755392492693343145079440944819556468456160562290699512 6394183070521709032266161968023123260869644241544219054723111014953302708993029593094947297278623083955717562159118133141964893200792609772066660952731676470370600297568137974649776413760849501639006720272314819390505441378249647747686324379551620879001431941165738223419300854536808844088605331123493303449306405268770279542482363824362959413481794571337003244253324257866344057096427989073268348478729536709097881974641070159516862529755464590815100771831668620178574749622879649616338461992377372350165788313417795062319152588985230108626577084052125614098835969368669169709010154051719286950104802243338897582453711347590013890874602851139022723236640177284867886354354928832989082132049701190683306997917417767717789837308871880974920956608432156391644448874773798674383423325354186287508045035576 51058441397315321679747572506708675245785270558830430051148761705838648818941579947129193065949722209310773482967330829912375779958803973022648190857745602443784529039393376540831704691871179825247895934011875395578555414260328619695088917831654845348293221744977588299418656895454678265583972408215568736660449988187151930799899948523584069414743158127587785016402300701019471859516985585463889461144020173242501206250267554472140223912570108975093526374292887630919786527876123200113193301526813157606814155917897747008733179557029659437485543893478095734468460647211880206606923250014988028021181918738625683376318492369525443834075996126065694385873841516272221646419358462071999528034018872197288658446818364830754773410600653017676551317868148723778741841612848773256409002211264833951282718772810 407709603335265473805371132207704041751225699582267692181417460829850907910484531904781337227806346537127404356141060943607032153746236920738193148320500183015541662585128657419601959776192149664466826753579990161793993114847868011769261960129153661982220603273962675857278828748544392247873498362296269605487480849950002363474911040584948176805278654456558225564721214033147844491793409746686162327114323806808971637768773609157448821875059129673420430230209689938615659760375125983335928604982292525374267441813239086107341596360315573054829640447004814135585992122514223925981604215161379254926806642936512498874123534942520934889389970407306965761375313896303712199976701634756799278076216251409603581502239522952063185363489310582389994255757772614659152540008923105093505443199215287302357536644502 3255631390194698283392324395687357315706945613589220004540215431155945895585549587540065330652810073830491825178521547525468273508512372947553159905129949365337561384473780719575730082241351200741481668909406700048846191354707183619335733399853929063958505653307727238261329715214148205457541340427220579311862288726517251563238718532883859420935532643795278312456554652251259135056297853673775673117045896669125332950672627396563058346016766701432360737588003025405945481365705862991073332618533197375578671085887906797281363219383490239973772146733962661767269134466872689894642404321261660499872611991584896515765200957297614031363296392749913281635149974932601513092995342315427227816286518731432574799566219022843408810724669919558504119171127179117848313471220033390390122137196147668507817551344552 25996830933390364876133392317953653260291662992230920262181205604891308153808765460918596719760382126322070475236357065152272055566873749024255544611347204496433706454882099792145237091369311697653542212073883728968917800612867275071634078398820351717983664160487970537939415963076273624597986878499436191818949414729439489731358572155595303152166730981181355023837372605595257436791636879056026728998867735611605875525096694759215659679100671179228319725632833228590134779624618121633933226777807569201916908698533729428251633176494364834205430185855245572085508197179415779466680101524746311838355114585264779038841026405641490645707503685752559591469486650869541222520090396471373468776000261325934611756719811021718989126529439535239519007365809127899940132957471742211650745355725463301161103997706544 207590027725250612877504454207906601068091430370197673133876779784586617432109962935157955447850035916158990634516154903066429296981750382255953384842443537577134674583243069139716488109426792064252071612342343445105692232563032946720602553966869986935203084390255183691721799297952955613156502081713178704171013294499820381380648645579941848754923858483100044973486058479710304067267658626435713892349610126349338475652623875011222307783276591314441024279154860158887603759258649442567138890026253361016927304409035169310188662018671985775042089594304745227077041651428786336568416230281055494964181864831923535049362714058490714146111865589786435419030392860763007747816943868878509078514692545095078146699367192311415692063173869581881291935998177917691883190323553604454254434295051862847388178255179935 1657652360836815823669321867835858077107917310409773014664684810170781040919929592898099002111206979659957306569265438562565967104847592355279300331003920344476207347045078944384842601618779777516174080987117190944776360533904452019539854888352167639803813848491435821313512178258029277574748011272121604603279002993028538417393777690183878850422438374205062836879267822869329183898287546118462502701711087076631525680028507334144627189019321566472787722070718942802185332050538626618525479879793043387802031091802043508207727452348078720883041450528392206495723930776658248978972360311029382484067886212461009833295239357130833738072216946851544447792409977041951368234154450077604885166966327653799366409117104951004813119152693381048329847033139686095257982866606099367589637939133065791987226127875561944 13236748479163763766937049634151466849675989773969233806393950357624244665254469118092454114833013705033140742734561847311774771900140980920358115442461510581649527075712146201366532605885701796825529459835911334029121565953776526853167006146342879212850084445382969020275509224902137486434670846068517774588798868869092989935339455096790861894885223556730592958487838187883734341892021437270197247059838454306414151874170750421235934132396219146792882167213075811337994654209931189515604368971402934383661896949507679147739770823284370731547124242694128882095031540815820521329353196709226404403076562913855135189827323274407914821857670119054571574893912808253335089157118540017910354107247555044807645771323213655161176151400954051316326465689513887239301034914765895783735619572183315528063028734714802606 105698802062259708446586993551139525985481648644428267743860300953870382998825749219481445098747682250377799116288524540608255980743173806121018057985598158678753070217752345923646263788930383065397588209361403009436725979169451531880833893604200762491999518409477980177398515377002425462888085803848607991880537298932302062069163881179433078804646745670453236598279528473501027118432173672734621995642347372578736715499630768706197557854235428358716196333725368291718330315584279207295218998480821712564294708502781776678954219842957660018837600174650491158891338156788242996996339674053186454603776796338088938969752980423883864067258563473297316987080901463760542021432424299133730933224747090582199249024869677177348463246201696711815228197326612633231194863556255216419248125732607379781868218695144891540 844033531521667582238335751493329531413067915483494418793007141617249246671951483299620458980968791719941806304418852618217389657213797174224114381370885736140191406249505488841471756936530973883503650182627389827476906966432036794935593375170527355705663042642059366569276553335033545629230846914203777602875633075693635344498829823689539574277216526231102573737362551366988675231660120946290747606694180628692500767468488574097983484100351101357639044680612931777852860025201857604072839242552865796704412760374796450920865136544235406607880689178183242497483722269734618480826023892429831370023725671175348331539263491489506201633151387535385782256249109142123204313111797090734165345539940689090161183711995884835585413110550967974297306028128624780775569887564355282028452407209602198597935025572966792081 6739849832897125329650300885546319871625444485789446278205630718597931640724965706274874417035873622788357175923261059166832111618638611936078192707587684651751017368413737378417281258755481097268412671809608220832407612980033223380953437397084369254970979675478111033022513425593306289682242343702276618587779124146392321043013814563356099415664191520318153431516087225583732389905576809348896037287792980448732206488561813513412951799791934399484049865212448629196277899462034935941861357653330961603614130345084243242616618683530123402467858565850657315527227686655431918045690583499885682805182285119308673549810823523005955947204625573545837375398100374349903863048074671663757260036043190570852234005970317053531438591557335066135404784407524612790083216783451917015769407024302541970305399097305029427166 53819743407375780184111140897295000973173170880461077867529227452074848759312684089623173902129480548913774059223498285512680404372770852672174148400471152463789000185996337899514986241952805542282891220899609728596552135226932629771391782860649249933643228431489922431457518319906111089998940861859341670890613611069202030438809634453119754630236040322623811739291299368635406618399051278451034301163820921620301553640225585550053983425345758388906306266236195935766930401141929916062931791236578738869626083875016924773855246522913258077909810123224197389969841493301691350559809343822156960410883269588437079233317114393085719424074486048755024952560185186967279047648080283353703118488481727466655991884403083644254927641950801044748684274658200816956433776544751962833101122915905433268256869486091233060739 429767832561661974501216106971984984719397458093145062575995361457203688470171617869429147304605419831938584660098437780270783680258977062248775499477341176296688710109817434039410509272448166301424769441302761030969257552481204668330873145688188831120076666726579835997251276372549957735741505045664970760400987058728416081564908068920260972962531848326284118496208833995088927841644905918353173537904447622781800166062736563120408568971400486383273484376593816985542587893809558659112569469079244430261569338487019309790106617571742268071294101499385042153283916509621641750513883670563036760131448171151327748247834503195933515763654604653384476062034517162194623422011067253803886772730165111821597965253688488299739560801418218591952959819545549264925714177080619191234149545802417324494755871852039588151642 3431840286589201978919000491207626777586049507201377527349970372837339001996177497021226250622701294064245642575254560497546519214295092082808833801589193851722611671224992019363341126709034984989234425757256743747953417780168543625170620009216234976361368517452687160630747203262622195381586595483174115974496306565616829431970254118187221749678291002246005148924542511898125600065475447698673586746423305274772789062693477520653677793527288741753567708314345827980740766109864629665349809070854123392845437746538272291052646161273730459006987489598048177565845967452916828288049361212113010624204864566873607197425325601068445484228253483153820329511318794300508655801677978540240584753534944633327344234648460017123318295066304777831716656438530726713709639360150691306825156916173549793471473522339921190909821 27404451053017961982151049298731157899065997208234375092937432647822183301117859957744999810257351697103053752258856396994661899835859469943027980852836734680729708651516116117261040185995213280201540138001983454880858795679804296999921451453428078923343157130979159638848146058199675819265601774475207411422360202898275771311196848148938536271292355284549034516983077644126334792675226004640735959232945775885627341320660147410658151481124932821705677201634591782055375665374872473000821358705866858310183124651804061660630031759617767635121166020859847519806597588338434136177726131869888024334069198806894032329959405374214092878544205356694787523125430112034613327102995777992627299472883112977287726301143017898148114100711491452638287288877618228865338209092952046133364280600544034283223429165655063485711388 218834615760502081771172614307370694010167843486787836806829425147396452757646443671827278555890202256285129759534794636852487185352193602023633397664255752297584249965539617993152612851338457670971154941931517790015648282604744337791587988798038298118683841511518731860001322455560488853641032577358517953824738484541972287612528569169553860660101747760932478417669520662112191560202370410652083118545300235603987809363301989015106056878436131159822252536638626100505791130611496659069672382373970471117865589637279495306973446808180187702358684919932968966855357597581989609451011272098716421069505134849145340206125951160281797399595114932894278227707988316341639783869325937890467261473776313726515337114155775412919119413378432446596462407017172509660873488553728967235035742297978045925696173687265115385511659 1747478364934135319794966237651775542866759860296037946201014648526677726707256081045477254989264014131112467968339015836403853598466156375039404815609024029935140705770311340307221704324758467654242320528639339643369971918457881714388385133531063903208377934201353837187692828351041838499463292328208262171408129936527656838271248488751558204749916774863118140617200762493164571692562043609826215230034902829358839361482568773393222714859637012274859825237751496838775816668788877023096829239013746552147997161881506645357075377352625739575616896820100378584959087876327087697582746187575034691489775056490427749558614248605371793982012200801145221271153706379302592917308075737881834391341744544348969031622019989459976511607470274487216121703541880963333036913357230545168077294194864938939284310174876229266435260 13954313170120050151692550063671401224143037760560168636627096062579250649980815872229233164611446615483644557993182620004938916961499074756202509291783726516068771533583457347195526893349187246820760052639734714781682297244125790837100664555615318846451919506645695413057222332406830394871427106045110358646476160007769158250779572075030422514588015724010694056179230123089853699193967496843835924927736279202090660428561989991794618197197875656067331632274300363010105705306148944578690980085180355378866044714056350081902945164130162620399136115643601833047062011008484123229840378523933870082764886319738374952197562099276735894620778801224644307963787815618414687436526240347093315830038598213704495741513631097673714580680501617549234508468560434621175638731298775200410917971964430601000754796651966804705312299 111430990885796304495087886997003084209874634628863838946667686699235657900176757372488327110802688045186418278774028404089469785973245102161846196051030194764911965727853191475824100852457543220569646956654229099136551021161235199788987297299437085211219975396575145953752437652640377611324504747455026768071203700087024845468224691508822213412144422426636575884074406928064131583900172661574734274971558567295938435463116494087698063171340456869579616496733669386985392441521785924176510300165636385711686939424855406450753316777072712689226734045301529361204335565113648636042979296280186987854402567926739548911635190533621810325935792126897009664399990336588030384592925569318343880547017806057267480331804973916869980990812344449478966438614080488924856699676549394027570452458060694206462517862649560852219466786 889824556347392429036101493429313968295526153073284988181180780427000538675616392101302470275145060476908466229975296118673033024648573354760185387868689823226129328541673252196325460222137038771820549863411456644847147544272647329581127132011849731314143234592949144219139830156846678555336283630010225266797963482122646851698170618080779139964911575626665982854083450415679188760570596918966867532114989371671763838909989428749169538884916580120508258431843254950542378112720997868203207866349981272020361335139188720000975783132855231777621979285249669018049269559777668425984182723530009273771238864492623086041010603375912570820119105106311351713413171511475303118396144290841274913206596708503692172276273724834384488008154359647895901971949645542935085046354010671640572280719675739916925309264652161259370233998 7105647293384912009440998802725875869931378640858078002080068742430193425420261162284740139580521044703880823501514598677081378743134885769280850281259391939006749978579432048882192647476418647951186750068603770847069401450189903733050853442317911157232256668839074422707599948192793475594426380567195718486840868213531279262331752892331388344913155698586795903411925301857777054733012477156644695786994498061569637389449962644268675652091447753743435092173831506493454145777517317440354773249502389446244040501989643165734029947611501598555602458697294735901178160146187386422955776066798285761025149872045317837790651102699112341804830331435701033852822071201035735445261736144941226848043198134303185080900963291374608777641080033461771941905609233379539461431128137097507582038403278984731117974906194954966125736822 56741886346407022609802417903262396994343353909265848709253867565972552939479507751479616052170975544668189873943630368662104302008778107407092144651996000905567436543168883227218474526595117236928992443319531860153249336660124074639176668970527191160225993503188332540393080710310410885475394146832034874116711540972550068155273362720149584535004604816119292911340193816331804880443699782347458420715502818478004435347894967994302948920221366698768049074364943352876848399513138157343094395493553083386875105685608267294755079384979002187451722494387884067336116150944589285076910717080583559809954347466733430394426171435932171790450298630164190162184012934770761499368767574267853915258014283527721460858862189238855422654626623201473725485629422260774976462414746338728419707932569832846959720484598742210187098807714 453111155205666170182462750523849405582546995851622095857330460946038938621765724998692760308248853245493998972171694635648123506954473979010810070856479108996174790431417325483330459691774597727930624579086922379180443814435498556221718600909926777246857355675007753304112775726868572385027056898246488684509521336628532067921534094724180451766391351981661226418059973161709934934013526815183577056860466389230303252195352656483867729042543554673612750074697614385429870382551628119759665527815370255698096818791698006119035924739635988025071939723332015101500190332604492576968715431963918462841239927428442007269564536244041600051110383956678805296939570436929359490109300573822649652195533935327029573540198150672495256289936345551853519454258954256675054400948141907908201212214029300701008616839722611911409041079658 3618316884005649760795125518619290670894816681920408402683375088633591336392768440133146145566695106967352334534031932682965707502737160431554671139879383842458993866835595775619944812826469053719592326226075094281556439679982131652950323244178391392990829848160925464275465790324117361307412073249185787822642188838260338413180793627121027252596750972441684674129575333798842883355330958212108073441531848742186487827888090266641428736774704144491846673225086593993220079093342172492524694541389476000801326027177300412709952730256801644261936313614504639976010213182743833953255610279621888093380135200054369196634636407408083129731844442300354086459816050948723580131530536943670697382988063380136097308880024632149586422134457033688485286717901192475674707774504149116062068116209264990262089088086358792003198489480071 28894108616052667893853728788246190972903002340893411274543248336035582262785248913105361287361691707429311284518133050760171248684558857084497607438739291221903341310972221212458753354414481048476665242736543624049891846722255621685288026283674079710445448834425898324572968608752656341330166207750255142456664182465153751735274059490098538063728111941629903911048968885212665121704978282093780445308802515856733843172721619860011673439495122261308854334375301443882435196414374943047304863907640577269557677113547124027755759817582482294191816172332711623985645668328554722969940607365573561214679451524593531856790314296418405154892335731049560766557954056250346742629503405826096083402202416080539116811247174421325163951508181035065271548783533006957475930328953493749655447463849584190095306115940008696659567553476904 230734671666569458867670816041643380704192167427806555999472527830690587464081835785739666044770944869421106320744219033548718209996031261641029413922645876875479351900822609611456352156314620136622236604257975455745344928609559820207230682264250874570636826152914294981622740260097465859558626061198087595393050142170621166270227541214624564177145630509015718187039683523511658755655645398757701864293787019009575510473850162187541122622966958788852560968838786880753783111971218723004229925514671182364019414303690686107093042734000783693576527946339662048379800694026806255004659654041824959951079561828263880856386915389551036399653194488753927388943118460073016495777808744268629747700203991902694456587417503982173832721015261027069026900129754446281424375144882899500566747662998240205734534848228170882453166973998327 1842541471683803294127838544258113970207716434871802002412669357151424445079654736502901451682059297037236229643859790884546919197462356701567070780058429827725073045287899070034665531986728845830827189783158077814393160194185749833767135934489299015399320284135598280245693070863620118231663283777509072674082564454481494908112044177478685987197831568109857221231248048022275435275800836592369198001335827275325028678782930709834729507609371490477088408224144865301722036737423473229075002712621425177907671892584398660820047447540000988031134905258406717468783720524776581131708100705124960887225085209990840872054631518569867024443963138807953918450947550761496965064458888155860968013678674474865214864250875983447261028374145947920960027532369579733295138254657845714985120701055741086866119715235835060427405744652999364 14713721664271237714490575303866190598911502987458120103649668962944880501431348091848608270014340196112021781883790603903818487765058227888335002492423974652972113062621040978745673454149271367598084521598361626163295313705973065606123034998260093333252695155776690186030623961834168977283488886503425163727202897790380527742814398710036738437087426564286766869427117965952056412333362177947685721259756045928632221928030213757409092792515656574919490527553961964908209957381812768106074793797036725569180534810447552912201191163690969416302094558474667440935142124359504369616870801120891805593135597968653105129147130661848427171289130654770480053166559391828935747240383846414595636793194164127202773624601785481645709007861471006174748701044351807970493541138172552705272780312857022969357201685406461609118792609207629535 117497506824312784941247924749080110152231376174267420170494772780673542026012498738919984262089270950795874286846125028776075565219263724362599596324655096856010919931720615797874059773084895594118012235060925665071562159939376174811582786175865841065381898394137064200730986712704727582638134218359172208636910205169071706140773216950882641130957617808419960702086297302198802624997748038331792963675531379519778737852983268710716098430985946845758772421664875692775974088158132353162184824508879057257984748267524184987418975839760139428651658688691615076707616377806308382224718454885138461347867661638410556826170621788604798533646848208633927337102999620794470311270549826503573435376277507819907046546955812810454451583120233946792224392309135475012656879756962493412493132498384646647496036193239768686496940901579915040 938286818258853955256429787651105416428374526200737455936267573948575689573273507732320045801875573017644686671592711908052477697823144902906528003584718961265156978662403783810931570729554977654217123550586706264773778403691998470376384647815892493039738940291494340541730756191398196294596372324874557930760991623230889929418963719592536123682631907213776533574808728629456118856138498391710928145346783815825962454090942369468310533543916561123777003268184287025510093293906998288413753271144101346245755727202392768761689439887834520118718490501335558834455458843864455593301627736052289139652078036117419795265728523978921423718810011376135580988143400561834268456341330894029233556844177121992582371147563200406911477867213379129903758729807373683283169766792982595896978897138645229183067697676687465781604485627226014665 7492787664943728829760302372067958141535220514844078461577928875700031316652406186893256478456589858580299849113499161351437039146107846897653608640713196487585463775283054478003396579298020988409380138852554295287725611026873999716724285099151349730868505317941939729192184722827158569249860510507247440411140059028417587800125372964107528714751574051042916298524881297285462471544678649424511987520332343231995981373961785593399787824455796625225084928868830771554726939553135895090276304965486466067870902461509307095435210500598502074610087957751210068400192194526244518083694623560471168646785339590601197914212592569163056371253531299278455776373012302056421976375896010211655755087266711329207543743808985237125970819667126764154962634881018836823368305872104127169120457411273752093683773004514501900082585300160337285378 59834557112385551857602866401827456104334327033630650711767202976424366674352429712975604116795438616837076581091046023829450881853206265983893851835450809785354570917063041865913423463046013194571384316085466465573508265992705275142554082378139518624172479850564940574247933504905273849059584589335971186095752450159131868178242722199100796894042535930638456753894621144210583437903584375193802048838637324063021468659110680199332707879668114968851890710491852555758742256115169419890367506541269959714479871982455162938713739903576182397184132485017417964711284886576868755737756857205147112293667228175076090126548173454295102102013712122040574409882095188086674306257803759353822899018849054839351384218301015833489571532060125023660310550008896038189423976878943459082640848686675458124138696152186888834321094713194176822418 477816980149376592070417761506055876420369563003353564327916077416705909543261818214807302250241325950367542579892903572952020349680701418989773243635472991038072740362675561654085528536339423750800521871855795465484840817065857024251712898512521514793748300133494344449961936218792894850998561432912195904499691298406080066989137864411716367331386654703646830099724861524825009552361014232437725774010093831764982912821151519636292405704437051190449099024365648765717296291999840585922667745508921317337069591545946665399230507053254778962954247828525448925783891559683957312165959247928674412922715899092774208337771368072575703972801622958776161265456434604144262494618948541378452941209558669752739433153753423707008585102562807904410612242718135627382311705930821266604562189776314399645438660011316112274481767482965739989956 3815679764235529062992137171855026970004047058913572502283354124248956596273167623079491354459724275524738689252548905590188873702904265184065751256475747768176502801337234345674482913087279079655176318766511801894310271631576867897630465733459049381588282476034541202055775302380423509336341534110770167626168723570007873218764367912360385845722184353966560949120451417254036690645680139893221428322781825181134175742266505480543385118261359039798396693227653327296204153591927180269969362703109400187024968272555799124620915481192611162482924546721751657564117120992860805683385451984679319550899654347799129108218990612897520792091549110891347682660485709045049735670313864730572563632840200105708905093351929998985937966112412346670308528728146518034686738718681510400549577451265701091304510833546983060674610672912198319422766 30470746771873465250089302242084552270676365828869419958864403976647773518526403671718695679417430260474166321108141142501924670714589075114556625869546236458329086871470048973191159770463244106893402298179257481105327481813334779211720555319154044977157076512610930878459730198434172556555104703400193288362237410917906727049501462791375628052519563904805885100455510209249686592580996374668694680784963777857094047043242449148626789380943361162903696721553096756175588658500623956191425858444671990604295683453344519945154852258000398520765213777416754135843853920612064453297421704333160696438413318016618591946573544346279504869191182422964007782047009474860569857923611652156731206012187376127497034076644077694259851218281853862140085156746907561025576354625178324174318749763624177518135165527082064364796563164237100573821002 243329696672075158770702768007644087634518880243256446395183256577002282970862188129711658127537047052726670760662821310170949543606140142831194424869019931976917372748474088275203977026264078777545321126750193887815482292916763249869967680615107572363786620124812302292945158994994607183841291424315403789472249762218957296499930312439459422015889222814271564262924813799057308164696701436068658703800816994286861175112480005449086670428503246429447893994930163271647654019417853392545670287196262119605975338635200502468587324840147032356562603461155161902774031711724825214462672129557366924884602995648840246524640147417902124814235438676574734828117795951055301067925089719960548769225102264269227879183137182750649279198877436003875972333615102283442468474227280342749502774846470163965153071527901334427223872281992123644673489 1943157339768099258151578696710955420797832551904326341782545240358944396516159129534288191417208561842853640590782491409429480223961210205052372532848820322353820289245133077508755613613208268460140962264671445035387646673376173323107197019097770974085525185543412110767549113290018918442099050789229857063207092888960852413575756439333119661576105123194591747103903614905854520286393565121041988972298392938499268157880343733206068312010230274391083640695441749754012538173337130629715069546277160767266396708689072939397123714252514358264437866573544914904178649668784708438005361089723734292024538987672800326761180673787274530853971003112255486221563169361324352941770068808044638676218730303400376328208674523649102225615738627596362128070310568378735004506476861136576870916752737254256670276457706541237809749051590066534740990 15517496426569494911474687289097039431818835159780080664186437853138052605610759403025616182678983920486060907068623182885255047590202014639702785051130617322045921734788372435349047273064326795776494763307464355900589956850104879570487488761920724373131044387276136110970901064683046881581857577757659152989027801260469162644278554466569058867301253777781031961234143670718666455038120406221602423009206807113721916901099699080310000450258617882081230706955689800692815541172101589159407834580751700911395327221199239978161954164902630477315814318307681580817740172133435174428080622328215196631601681543123028477905565338397098096197913228351561625877313885630447494262706159442564041067215577486426035480639106943310502236029043625843116279185256333875594827238314168144556276534209054172605224325178941777992602068834355471015448814 123918507198645660884680487851351414043916580373610141072765998147580486980476082862291489251330284763633501945840417290814128974703037586655978736086335657365034858656531895705778174701361386877459511098547098227537618020526386608200750990799752499042006433893696050132348774049060736099003841779116940500414097834299897619251252187334268254370299139059471916591560398386753487712179709382527533764958237352983881349376768079065476117355095911837239670707998263464405561522325025102510628828690131816432086892182604903917556421763657392523208252535009414806689028213025057750652162134208668419228205818257063901129117799421588954811338333409599377341326832316857007901088729424472553247627893798523111595912925229504561665206797427784183741133328929301014691275774471808608319659047195993182396866830922609176753455306163195364225079362 989581396930059356640528156778866556876965980230357869759877065332053632185240097778950587808128360513639683532312594831633763119194593630268651455151952379906702760379359923834196641026604147885298914097049896577913217872695354893993187893710393175909180716930715077424030046483228813517402616116721418713212946236203876301206163940586603636601357940078156355827843859242998073073596829734694906372486180546973650695747421595886433558145499165099435840738046154821846605994339925939964042160947967013018057249467941798004816304816987593658171686051253452408769926656150936725586126674060349652534843930045787590295365740125798517371786030351974593117530559563168115604865719270117184907657696184386089386810426604146823368269694980110888330265434951924744496448911494691783489451130785148927574142762547793235890222541446132458443269500 7902558156200013999464022881390844681780601741016885615943579351102093400474318383218003165065482703380124819154355724565671415155624507968871680836745384262296747961907393231593738408987177486857382422234564982594540199857203028607652239953130049610623429588154834969065856402525412038097026068895777532530053069508794618112593831742640289991031916850538109416104526744515328192878305820203888982848682041504657790866934841259684395638688685552837997004102163923470118127300810052157485585382897887025209641639014842190436610545967389444684277885429353479958673731368545601750189304227327677784854349738990358903361812982907485504295552129834093463439821539365881332815687061952401380919327185480427019213851318793371089543960758919766641432184205685866870000683249067975205026485740692611764096650031294055209540757634340947289325764344 63108041963167753679963954981528117191638328375314312987831397658801136528144054990950923353142513426074096475343856255255805681921804965325453417397025576647132275380879401811296175553091250975271006065468147066549466377729871684098256946921663356177157159486814682069752272214262214559432106958789051946263494969301853300908393014342253207600667137501149613570047981110548279715673898082683105849295844298797318236228721156984331841720697294256381908334527762877622238571811487140293627677709046037485162553685434943910492108286238634547143312659438083542678106800110637375548222289786902165313708819848422102726872437764347173732514847063518591141589996429100572568754604920857306350017888399263414606851948915956375214482269896786333879459003472313304973766360816785556449735832830859203363077033208539896903455794682109042600677511957 503967506317865973655574185188003984635960422437310459547482086457130016086858482978508736322253744315597511979393213330401366957290415179565267217211936433199522862593899557674012637279244166197091679602482775814651796143755135121713362746446573808733298737725793942593172060413002548411216462420306760348243374399346547688413792149463455781495585051931892262816213154871621308080040100688397364657457594569601925385947846616100095232854102654105746897012340781639616850175219712630299181344132624346969532377692870797664861530913914669634567631723811381206434703418651567281860104214893732405506097601135522985415019923227022035568683100866607606897542460843654802622105377684015415416789637536801649978387066734185868049212040054755422782124911254138313002326634684443296508768791455219926491486305223640619490358554570904400685564955296 4024585790786529448585730755730824620770798855984139461215951761346449362119831232291471773494880409787188411217618778306277011196926579317143954125020619938319802777880858273369786405895192512422447995029145745144893355146387704352454218429460294365362190998374203216598087383622377567916709470909786407846781641533126788379182777132782184963271213925569052075636367652022701625649868087987390571648398114464145581066237995048629419614809659497563056259960654662270113257212650307682902040068754151963707654204013975560984555997267543782010960718906480833960984483284580058504742952989266410844414924802476294447236984302743139399068970330495683708436811558059449947060233003858664472680101989400369418526223637497413189247996511778785657333992194488832639906515110671318052507977529285916930847294312152241323052672348672624834306209713540 32139614615054495847622917235392624422977090613467651327837169613649147860232994103839678396385793935740763451619089136491292661217120839219893663991891343972562383603046454817201694240564578490170343867217570263230121110690763059881098139989676452657582074250589472701853626233243284746177339315060748030884577496389029714137354574074765718568368131685304219235990722214769194876969899443759114140602357175678649354668257977112477536924284375600448022939224858815289825233597939891664906015922544744685316581115158964758449096095929079846705081522882932345355436712220539012017764395710351907227271591052121740701724351221999538597516538529618600796515400997034413948152075784019940365818355034794815916409056656272023437674719449430281423372264167381744345466047019197627099067261170208210894400831081344212648838928613665852331238845901814 256661637102808278470969505416451283973313044665965236783132832993999525218108880244391440780704283137460951386476121963633873029056266473662152142627839154916287785991809539899662483430797730634790637615787338248964723115509007233484917580309508483410828804264614930068196113513898653699585536020449177272221492764513291972377124642546281397105527216806673427270317345286219474334444359040384235678686288007950745272957853249321992521993188474706972284412079078056850244218956124809257779441021101772034094771094227755922899065706336182368192692425159000870501300059337787166732705071894455054790923011529993956071340723097460953614490682278957949558720607387952933981986846572560724531823269451795962861171261067878801357588052843462346091664935396467503116401050477909754644592337414356096284327932979974819913262248227482705994692324174011 2049661168962455394489988441191054335309064141683148904556106620266994786154222539516988752316159876193759271693102723816135354400445224755941143174054231143694312107695003655445507707144055025239889887530311824189739952894172264147355702166402214529103369236699793293707838603467366482716632822032103622512084323153583500837469386256534374806673235322731561556007779323052471850649537088809334840055735504171904200891214386950765666699925574372629834959470463696504689284647414520486309081097345784754805511797777002215078590864474514095663609593611210136785383922721280821032317471177735698041673306615824322242539052350350303937073972887777402438472572394338693238991862409977336936733045837009627013759073004093145731645023284290800119946851670515194786253114813784112174080373040959247690152841537879058846384696420180317056366300595310042 16368316093485994236725267790349583135154464530110372792094939144434134828572923133857443636880302815844738840369900353548417240041755101792812709338155916229195432683752599467063692424434616601961821546606721886216990508151029256203234816927361087506436669512090928065063725606109201720784616078976916002146104588550239087807219549362726887061452810546821289824300265788241253206312921015845741430663855680851007171222610013513792078531706249024939097745631364146616850421990300779251308816153340270424487567152459753325363602056833695129322385909298327969375722341813580555616583197868046587806201716541743251616198245786190382239618709883309812234794460758422803450140095426261452102721202912608522544514417396636964758795795639000830496367286249799475616305774228169780291671425521520221376347588193010705758013025140507534732243927829314494 130715397445946960853835198165428749447779506660250677919592944100266263959460907162781023061559225708145012600015397653605454124090364951721545032923560693192408766124987016702625651839967957128601846586733163903479676427779519973377258710776777831180421216973181590563301905496769723068091903616203622858449614209972050846707793164049903184341725403880365801119766738557847259645135596210548024675189695133847476213611802656175144339448474299196649563319524986232136698171386320120198056021908570056154734823024500578489919577243157797325631403503491511028059562367501650212206106789230230243783210335726213630471859137837783685087087916298230414713178411904855771374815669355046417044075024237108758848282910757672792782820488854743389747983177049537167847665991122349383156569700218014570538660279772387123108249100371453826947869768853600534 1043879346934596936521943822461946342919962656324344990478352345717796833473879513458242539904787052666298867705921374291295869381389917019659627733481922931771655743924759853148244900936935313613313604710898158538397640459998293078435035594977763309019135151885910592955330708685860617593260721506380668928968923201734331875155178690342404142023666958770139497967964943875213186753087417983529290713262067573499985745686578681250276900498126503087475367592744926376621771395191329400426430954039951884034250328689385428289784115034363416224330975727758787613173368965072269699538101722712827157827888288360389504243752573573187421767944315076348866292939008539558193176828008855249568593073379196016704898861454259821142275950954068650737430416800812772415759681250786300000901739165872382194047705008342244774262924352110544108892600853152412344 8336325694855010682398030170376041047898738012504474363169786072369030303519078827350448666322449149394478283206096692328647229822092433178023040608392951762332450587486809690520060675954210991932254560704416631604256097275472066839957552038382784521624327204106489207767504750021672857019699128959694229001496370209620602480267821590866957718982620829741336421076799990070155115248896003567081895960795413058047069454505016992870922803638163636649829877701999549214128953635233303335581461142204841644531467703843694909764397302329559808971941690388574576821099030825309617765762791540879069724746406856150491903244959107496238701854450319446320990397901407997894952416951288841420335659061652826031808061564388727313298020137180667459650272472760397276071974184766458980404057248958450105996667297084712202557077333543408975173588820555283178888 66573264269236976341859813294088801755233965814368785369981498473340322695260788770547859231797779257768020827649240997259325120969163925019084692112151005502755689735965088764420743961202962665738187611905604810395711115949144233536181804189742006768612241391991818844584712483692250121234640954801189396854962886390045451021034630587219737624731597799319956616388084143106978664134720544596925734359083840396993603053127965650071219886866188284457127100715054449139683007354144658497807832720838277722435647488159583983220465715511633203217207969231160985924262327237179971283647979551768132636954402316187555703337237255824628107406454722602678382791170265853139127671351874061781833595793369157537936379068474449927205421979463195440986529725268806817242932121810573352788457090618662606923779677532339778113485943857244491498314759117792120279 531650024425458575234727292765591212352093133005792139102663447338896307291526374427267293512084188985856540171128793569117501126045836981289392613239710719744899979033676940688915875136872589768078635722134064019306600625357994982617720943746946171306554777102739741385718282884515285864602116328270429289468978005421365250406938930207458692342665840504521281956218670172074155772703577248406969030568328952435410511395699489398683600990005880066744242723737207258300881995490170063995810697738308809654997724285975951604192393197634073924664185454069678752484548852979433008982985217313402351343980086474838209519718439122732000877364124176230803874232225261280351453589274744387996045482228784516506594285391374049796901715842512283191603705926969808998417249313401686508760270420896940800513886449078640918858137449998791393417469789705940221614 4245732520650152700167551536658361719467618656729405361577015922598165404956848005149040514268304131759777397024333315769010286552301696379216776274383523946679158515788314959766781437090676403016285415412847643742436419025086801212059025146031715707835942024211529486157001196709968330777787768856790503089782338870123466403551689388252465679694138516595889906553791082292759703391826529213357944767487367200862904023297844639378579621750168127927651502516655380785701855595914336046514198435795990879869687251691759096999541690584807816434339830156045407197215778589440354633949764566619601983972531944319466999729871855083337726481467281695665906158586269786382313088923162448534246496727997333321970788819271682418355973487669968915432455652620574284128709730647376267938389469823834387244342377897698905746203502302213703381733910775575420996584 33906286461908929380878377316050609184919030553006525105187235263311361558784217101021699141455535338529178532725113144999604101812874165200246055039939470589092824557917588594229511706162002883205944186826552255200604146727598343386567382508660734638544248016246365144983856752922757088837095314199994347151415637973289880918302217101908896721363654117602566335898921229887877299376722023429271653796097714106369788469022554565909359778507917904038066631440400821303309476403119138256724164690457646910900709477215084028929287164178898684394226236205009537186311643778111736073014439818320682461954410492564154226296767616901275917169352469993878008092247446805686837992418152330553951894673090707328525096643843780270757665079490722838448184800971233579122181695962350599063664970534927799105356467994382358031831645667186745538573863607329312788776 270775038453490043765738222728798282981005176624238080629218987860669276783252680381724131125568861933532718013565665685567164552273435330930340439742529704501619156296619562618355032280699017661811346004238631802199973245914095976215353458195086504694085269838933381451087087855652558433308548613471605639377754663676828702769702115416603276050057262706349102777792353507354234619081297681702084683909717235643938561268030648064629837351182019562756452417657843583362342258325712704559722298865471124001059079189616406298787072052682765950966762828832999698971726664324974628660793905380053330223923798632493810885917492532214579642139854635747462385398405560789314050440037304566654401887932071135033777134590963152274340393438850850611481168176300616240457873658519536569948259774721615699516191114102431773627760330212762922116193192378029791591700 2162408931586418783175313136884296628729102653648759929107917576180808914080889606256941860977215362510157168590694637647718199461162323017854497258109165670197101694920821824590889685608309656254374031374695236093070303491887691366473946546580708684124858746462429702609666204023610535413804398342644685745031347513888912170427380543166748554879868786090251973569573142561060398655235317223122459931453243437008990823178437608559511010751550617818018180588532190036541800940983699754639448333648789508817944109407203448390406414544651869381780150783615347655570595173396104545720299388691467244641359880171243173270336805806983173629049389386862733351250793118005449487348065246879554463472335976077440494756722954442999736513184460530291331793454451115332779462427737445155629004171257598546715595020818803923235366585628767948975800133697250764258682 17269025315645484232357300887435276005366499434959299256847206306454663293034733601773542176053778508753362347764519075120882134855565841723518589561158487580570744698655740992601328187595510388822326985472408257294501920555546795918271337870510948407404970488332893566591578265048085032310037724218040946329570499524006983126957943716134495232833973840216201486770684186104454625592020953505112751373600331277352323098153405060997848190844456241204425422728446518090614903851832865958393610045443515308474208063835213652359937626485679455992809594092352645314144418210260813274856142659100745760980956483509361871672125470224392872419499571924240459717089723536945661791179394077146526168999837216044012444501432443241050329129961454330705993187602184153619853655059557369081129570993534439674661819500640035541064875287149580576858267959664237562107007 137910909789072987731786108089388902182130590050294027365302170316337950076559406486822163028279696909340934808023046679949982507514255938914777626855434956471083558830173038295126754563325493257815960702697694805654680732455784215857487272993521864100573802490945807374997362370155583332404981306908251647715868607424919272536326711189319993222513783731329238014767280967899968600901892875577068988491726859934735129076596814566106087129206090991031086832284028448222703594733101419529918691027263404798905576797835944685192915239834217947290041597985324089814951046974573594596834170594139311043521136580231532349555878092006309017886323164375508520985547286957456191156760488074863568979694518226299311746089230429677951386512024911212209833688656670232832095360225838235476697560907355509089943230550425836553439507980741031273325104073778943659087350 1101362326528020043179776729429405291146789184001335511448461853456789396880542154654364176106245055321509930798394137501136388501883608077741955629510723505569268672916450610448430976361770471397808846164878031470132709793502715770934370812314850331250038234711715074230305433526707486142637702876549690769723580791479188190930751076819681381821020542937405755001725030334486278608964691758586315147693830161329249741372369669019145841548807793478972089143524019545483712155699392341220931149724681744891357261449140521152429708515820806745169403020551126298155519602552019814220353876426195907974526364319345288508651940398337272346590320732601550183406917798043182690624128418647157525758912057037342597849107960270584969105201480093753266127273554522502972336095717784812957697231553400251805081456853833442462530123205260318561380953040778030506722929 8795541953368232505807276497630294337117956469688810564519005144062318327974941506199695229411020267433173579544353622107087176888716320829735500088744595704129705172763088624123582726460618193006590882848193474478454817695737843358231143310332234914581445870996740059143505453579825723148190402852730401295460655145077717619249086192827516531514655713840841717008565928614967868332542927859397147036460571583148184525685756259869567976184835195554101125530634187139631733993300725602021229849644060060389582624095635684034272365561743785514991336913112924846767304822310472134189324478437990457499788634250095446725101020103427112145471400510055543481013694177471137355972256252535395706965771977136621296062572804253550975599880112086499874142216294186003023766175319138391211537163240357650650930710979559414525144670671993151366695715205196440715633980 70241824682615961980828736734369608331823246615550097889722210988576624959835462388553884513637288625392473408777492125690587772276831020251006769117105287385956444251965684777966993837042541151945284098696755102574629782246964362385966984419393105044487886076571562399110808422867084231395060597545466968362190166872400284240671239734673224606563103384103047797842700558209169433634327208610641426465878708973448525815378027376371254231626121281489767890600700785877186646871712917829850075711288863103356513027265033130000617132196151966956601618975336586456178223287373955947656595937351559628453716144758748091787836630278128094876960551803524801435514012540527396484068724798794586110354902599319901477389446075542878351766967413346735046672606743715124189735614910850459136463712902916890000092730635134238844937182937398289636546564593198071590444156 560957238034983186014320694513688130155579638947466886997283759728282165372091614939322985832316792143273106238178349592443095447547981790772770987561893008677473249741643276967525877560297694388275402284616959028762130078705277786115342713786792829664325681137192942310389057601574987331187133142310057624719447365614091851720960995980158650287513246835209744059251075932426193268138091004633335917961273068553466249230136356147353382381169361357741646391677076047998060401038981203334994795622576090563291700872837804108442362067791055379250168448881544095105977696767233795648157600444537267246742394378556451911274787787568116888441946157288187347556134294545458734882171984282055056256397517850803545055558871401358155335877769088394734652652654819905355837632579598104207978113984678440582854866650220360082204901666514544645323784494206223278337175264 4479860770442527986936253617894870664220356624912356238214793321574269237085693079069925327826395071208200025784563351298026240655317801015442264792507202972653415366730283215909275908731787443574399804250982038883209433175294399759384926203474831361875344844197098786758885205432771492281126200418839786328528790450122993837382859088809472054280097781127648860530433588103760670412770025895387919069591628396597548933385610832413859461936812929541283642244983469396799737286709710675041583700589126419893395729337617899080674784628279696915970232151333317320914581769789931116465790124124011256887095851812802284361449155744798529608310689083122958827256172394014684217473811302719984064887857162908483532670995762099823916370329616517117789504035290993338368163108136298324992417651553029270176349655090423835594706728394434154592400787074320555566616330825 35776682360975080592802983059128348799342826425111732354746648463569560925571364640679219021623451712196252422708377651996858111102561338836062307658525969985067381601050973553971692520362047379049515948995176002295038587537640832348730893599505057363266373988948958008925365753090725227430786778241904606526584677642243756127827030333471255866653833615832426976486186220947921728534491579986511220028239319860702656132366957056737825270694962091136068591964374583513638227043735898974476281691189372149206176030840686344930067104152903429022267092548982059467062871238078917103686367748451736443101898100498149288994947619271423962067659842480373305656532840410247830414098935331868285087148455048783588309029172158609262876563997327530016386878624334088876318319365939080877683403768170104997135823336615211810546563149401227476311564681226036200006134449424 285717209322741362673580905267405383028822872084786909548117624906348193173773296955122106678717822629840566123454202808426768427472038392460737023603309386619059854487810720974613094575991194379159542044559969451214841946640293388574984209121415387383235019081317096075930090875702509537841823526294884467142908871687686715130686608739385412946384873224392164944773213751386513754548103274180399181516283774433285434969464257673024110189313053821375155088420460652106032261611726230203272672964501500120390316407878941452547977825530479380662121797469883869341809557663707031181717332305947238461432919345172241833843018233066551956137871130290737203186789355370516181208582646555022799337876130436100019315028999499482601639266276185097426269170903152934368109880991002512919314502410321099841435894225099105880227630499237523446926378163284096536973943603733 2281778682793633285103576285696691605765178465003891009701981172159001270267175703665921468017857542070117688201179082351968793542873743693217907770859028407728896900719351959615003690127319082488319094872258181361540667615542723715503979533652591144341366666611279031463926938499479315779942271899736518260559448163599202779921143336727694970098842948019125650214423575027460767961072724645212474636828291628282817638992057469260526749795978279520678193870194930148813697739204631649726402481860410420889568115605530623121323006176324199614844028798696091099349250810261049398975934492169615718409706677128767107695368004183018908230151264186091797989555401355228184800445913921337442898113764987752049182015732906974016990669288347542633853992378034793984392838174652312884520499136714650350091035123214889274388566271767301629146480407310411268118208404996168 18222645230640958206069933307078035738611730548290651797393160876146075566573045997058100499714033848118138922054167844004178982514421759556577239427203671482118006472330470096735970926319204340113877118908122802471636976222188922186867158540519726154031574409003304607705411180900761107604994964052788955680241055097972879808559202068951427245906770096671505241080527152084054861512513435851807707767999796233272676791177405471975283669269790483634206332807162606806085238925928515962714349361728533929706869092062523730041722362625584227216161688533419933119004018100147562222646443109034307519986494912264167185579542615363419289910839285630104802121544223244612198832430407880330456116118866128525535931965366133535866870867452146914965477536413481455731676245560226513596966911715363747320862841986233017853177308468421265484550652813218455413761234043429284 145529186943163087687126902856606347191214302449169215217709174982284690579304262734738003627654362448356615369543066222458884049062410902407430806853482347014621373431184266765619314200270386484587300578290431591322266888964017234566796162298869897083737205013578438925410582337692276872760994468617189806264180319160114705954032008517981081796913627268178768444090639989821348651948651535594964968411333655886874586301620427634995130503631897193386537744289027519145950091959934124925064458199858204392638494775026066624706527279163006598014325187373833693978334665936261328669967330877576070747171299920254527549954663424362274105876276041812708556578399287171117934467794011900585514403967162377408758522482752043011481713589114148639006539148825161441240921366975649242348518756113863614057179168160241397291442713619179751753431865188774224281278913661815796 1162223266693790684088824157638928799352930873613550712524313141882647652593548025800871636630798228197423841517376852268810372221892934294809842128019549353310996196892482236829632662019410581477599625033709833445810207346188576267350175914156952873616839403628232120449943317664673783106911124434737783881749840001186294695784707180143497954457323284630926214619312334425630471724047218187418242328228196754902689054529971664371318604855166025441782033126213136176009872413778630279671201093527673133978890030551272120656383614943186416845663698873273525724169623277992406225520830450763470648441337703957738863655471297524572751988440517818656674109118016920335691916035161516298800104092267279170782186909329740276038952757951151112517792901270226542485693478913084901958627056661170370692460068551336579007890609467127670675808179417950081301439323584264915075 9281748696478087666250762757313350590901002196849804978861274654158008300734420005635165395199098313211075368395094713191838483357611665170239693587204310177064045621507112968319049993549106660143163681315536705850514926275190874526414238956901983397640337829231022426777430124060065308286771052928861263065171918190181976687841270014327553411842904717144333703946096483130177762595385956248887895042745581415019478190961074294030056452405965304091416853939188884569444597843140816204968367637070812641628056528333337793631202099150504851567425651439256726131642597059614483876917030676767433392367058897840469682365238978621256726291679915812184750262034478855211260220855870216975911415986640661233354050641130035889564008737175857079363984935479142023588112727501877483494072138511896514959176143707899898675941255625914666856047603018199192411092272539773939716 74126043878308905676806061131732561000903423374462123390437985444518924340982656129994327508563858476948339664088443661326015008742249777742277152817851714373610868604071100127087517071992038805969487500956682432561802920402839080839065274243317490816746369029036931223385908606352513370172400955960998844519606650440109530225850921680662290970751159040435018754575721560706426589310866281009870244693196088106838263327812067495601499031829801468397645627467338366600849793228849634387108535791384923949637900242200772466202274280049850397661223456964195832114508299686013333229935709462835751258435183225687600143534163524387132811348374632720861487901933185231659152107113958409874140276889875565551111002000605728598780316336179720347999556563536363115637704255575053835558955788397260799582799436957910600089665535905216812189083822052098871389704966868192763162 591987605179945240954005687091540350468885320376798015492680440474909182558631367281689456294494127491283565001395617411177483534250584019401403939629269503644594679376335273027906259096653158747445443339153023202819976421917948032125474768281418900925281872893822342441461508443651791089287135092262513799032279920867826982222370463090590798870947759698234488272061180461650019158410038563777776272817060130338589298634285843725447646938392790074744437142355949855435393882346915707064438749093708103453872515185878197966533609118015126344039400830907018719674076518783060152565378814584949492424427892159907684376664972310224625255406937572415770925802727864553235776260815516856644254431094140620058390305261535484150658175420110815252311714419014893089410152626537900042745496703442354035047518796342420334704224641215372169990226815669678376887171380968538057316 4727757346910222036855007847257935742596152047047867472068895099772129189632814523203504431481274042796613555749138635555981199246940234509779039851881257950357666223209532953150587040105711014601796939361898613618997187433947310258037541726733840808705317059640232680987268345447705682466063380064056123173618415514286468319426129392208402597009005881012245858790711560291109451571941229396718172257457592623705392980782493027558100030992786039749881137329614647585033562510009864734540629329519822265221536013296507946509755660230174285399556411075929947705523977264882464797517813158371937687219032294751222184594297747714682061033308826743078351717275033793404568131616730855964485313886900014347277837705007320584976729482212246553307210823719576000479453176921099205859005398026589473374799495107471639343153879354421074137092657811863248392450106276468096792501 37757089917317102484106522463329647186969807119739722875689726910999988712703760658961051083025088932363790318996684786595982604749472767343006407510111523680621941942482209864524884495211825985012694463206903834810874347575671129600880890282955296067848061164229173487982812502971194444669932421137219036797802096757384561026614019562048313013037383692633555844954075734023726934964949272163082407459642663066917527298297391145493818476774967112548533550869186569975826700788792964421894788496547857140871917171022294753909087175076044076593170741732009691851707738949970482106664302793797563467755833761625807423900431008539195374918176185766138685061671150911797592064612941530098565273642947003523784231254282580530275524985734973399279675930305372045395184640921143850087348657967475866592774113606300687505079377690785931839037999897647151240425279137092970294980 301538395849735722835505976054918575268995356327745242775492387203574295027090672136867172861534288536300775835977114260933636184162972069247663262776570739913236526060559971267094668621325515518451612462767488824463990837016875075771917368928657053910266155569691508010073238306557678664110180399900861887666005426169773099044334219563807817257861692823131177261620905848078076121036223024342368243655673624153993534428834790806244712908658644175898732713232696655539737967530389883214261132330195336906053295773612764145217219452650024670268046772772714882833362776134328280667062260304979332642234554042738566447665401762791157487897022345090011781659507348592896247752398979441392753273177447591895493223224043569204208860148514368143864143487083334363075751509092843639134365106895449857450152276223332031644042400450198762429359499653254605279164201959878924288497 2408171954804748304421742512388095494971797438459564254412036409121565302154672691604308836782459440335503540238400385013034200075410409031962609369544578437123012451295330138529984173956998908723124922322578099096363037797318759266571445586666201469348154672944433404070813516422954816429953772588472874693346409077311991222543208305994280967699183848052786185859191353540613404751893481341586370322169544348271211077314048905300967092198709681407701287507448628096954873758740167511638730933391535417442566972352097241011330009121556668439399590984693706379790630057585456717679198302037246052792298213228973038686872409264847804605117219853778373488082134674685620765830577816562808009314645246780053062032014633397855157774073084266784539185416659980813561213519384286567171996247615486941451106279562935939857346648354501589436712145791796311732389227412020694972176 19232384606828043221446178934091824555217110531553174726722573764370871955958614887210251729222626709310286871413996765695023754736286192901412165050301818368908546160260425742662129843702722961078118216130714696339004411313142690269778088246531141182751771653055125838012133663038992879844938968637479071646105202549623556344214136444566289038350856786083536112239265858139577233339318516427659648666848221844835791167363434408281698760687183391497495513581095419487829936614785833178706311755756121303496215344533241765479377052924464912482898559260036505874355399172290314347447728020828276316267797542867886304374787278377131546364440525543362343493267606884584821664697197512043897407777162517132828027747471163302192419764872861941109331438126946342119928115072639731288582324751006816369096335721797856690702067276720704077456508229557021846951228775109141886533702 153595871185552627358141742205061453986739810040580127785919923458930771595150848863174544129591755552683186514963847689562073274394042840820903218663909753364869284927858420212568318106395246917824180878415972827468599966848557220765120623179314001438148363075019339704683983737096795655047481269218047587335255654346994149443505318199734866300567041787836968945014867610973938281037571048819501058215420727667682916558856931259643726282430495826896981347265243481981944289649738940983261141561321858461827497733355414386785760048180684219831797883878254227098972510158996560568512642832780214684251201170083955668790560682667155668232647249294916955412579414277868409975216831189810223892583200981447723284573639420789715473746174477691052894095367213649601878703777966446018126202110388561688070096943809048332844503151935144049459970914661982703476960744898826923810784 1226667083059916299301607160759499099151605788885895434822730394299252511978573724686922039032174423978249382037889685393368015308612865181452414779991915625555990368571713243606113933114808409360429422526444379695195297109520271195427765342003752505513404321068160597754746855398124577172236468577936962738623552502333028129967803363825193028816918172764173838915040516377110114876839917436083017340883348707825344453285135375361493753788243065542679011120412090038778942002189903297915368947068692948434103854239019233682079767554897920193015491711117635721265960106955245458697669105701815384022483191462939453458005578342004796899200910205448118271266272823486018624483529808656005594264829330563114420154099912640265575178343358722830263665852310598155961446292818083888657224253400730613393506662375362442526018039488510391919862111534040967555405369849935674950316361 9796583471400586786323795144995634009901850517449697130506365106930507806420830831070575006050356015147955451316471259710801942665268349340726838563045260592903973207578263802758360413069646520195817615984834747613691623584020038595986948354882323253842479534892833241234137830310549127763510028580220213597516803805980477823324295141791088289025499286830341378835091807568622360456662505722598761368263697793062682361989163466136844742611557056889502317207645136824155677725073241305741029925286486617799791001937004039603758139146337321988154123015729163762627693070999310096180410001548745578496129033762598457262812413328904429309728367014819727027076809259240876535763881999206990574775174144143752269749161508446391222774415422384571514896181638752187893273946190936094167075354948841848645515482988611998189859203002024173867090057081945908816878687786133000829696424 78239008034871545748944359362367514565786785674501882341822266990769226547499917868749872213685479618409984650712471045178443359403254648967185119822032788658179976609391299546812048174192577689769853112555612308482842613079650160666578260689295814662832414810046843412819567101563616840502333884881384239878504888348544577262458745880060108424614921649600031497681653151823349345666554089897993256637808086890742019593283226208617228242863757278627461152673107458122855103608157574981679784208838190139747000254106483506354312635668478779051607855147377875344979677642037445963937824560775348793032240895764994567064310931812890310761470460484555040360327899481648164925476684113952599755117130571038304970854325420525336444941336785516735705165798585779403383387357618739272382261865759235275525984041168768345442136665844376082231074479365721666017845682808181020101014683 624845701881374449794044032630955769941708460403411113648007063786393429480720585913738223438773803536245661123419523809752551751938880633591086486554792660615126866150520076310348559064697728493219438127296208394116876122380155974556592073261341947510747146759548815345112614874486193856826168457615792653786177353775134949524416941202390448574917658191992229395297347067722230226222643483941555944324698350262556982403755190138314084543368814927084730873172803111553998310162051044264719968074387614316612594520477140978440677111054957679377314616915139070562430315829385053441981812560662738396425555535828163827400066064748668584869891567008882925448586605139119910843852159375627469409511590987979860097453490828459800953171879193615910088205617407138637182519765821677245541567056611572192271605943454539112215341108927819750061397928396307684711011257321038435054302094 4990257952446858052010339953325725189188146697934124422817856884077783471786624922890264930322021814120778723771466159026938383216283429621821910885996918614300047796916781447210768772561264219020000181930636138582852083572510087555186340844343346526108008198697542392932545276727159120721477679180151658178038168058407278021551160402207767717053178045533847007955351116248600332852072128791925909559631775973956479119055758549278068536631741510351723062614293805750748896178051114469407812307023626267738179456078078040746749736337318203290069857540585220931988031604417656236261756435009240494643348407322402943071917348522681195626396698490309579920768160821451359643473032431920534225210444781787006570480867548889838759552784272787439309128258056583513623129521854079156564255487318186836855628062829939813096240988448946733870502181298160498051677396672372427702456509217 39854187515740939556684000806448655218129773839287115682803673426099976046719967679999442282879511729101513338317678464427698042507056346874840173764412021079673154482226314004446822870435299828879400759424524035091231887124530456471052181077101928779173103352242802037438012990297095017157286139278745854510280073481962585165932427394285378599415090830654033796513617378770993291051311030566820961416835786517071565649156161462023641086266796245056976539085080871586656345919826587524215742494193669729626775980443886499238953130864766792637953995509839073643733220482170194538499205673446818091769899207463160207950020708156167074623326365784372520556619728746391013060050372106465670314482095485060950365505360496989592275511761592034575767409998342483408075637188262395503159431801784853675662269669156537178456020889969760250974854141635946670919569751272526190172117432902 318291967332816885831379081673434569761155249830201246150023235807681711463040030734352499479190909691951030631771420056970211268408660190563649879594088648584490897218611215617152227628749817610293254467458810951258308142523064144104253108869536873884841457380445799203366658794675490701373358131882330907485101439972583703326015464945233733266615024069378790894365179130612978195278454625760288249687218903248424857673883876209502843146259039463843145497237772944426615867252021470224069374358474530259324274118702292128084855926790592876866700217201452355481698806425036996232758089113744147355749806329789959392794863030985801528217598514418518072895733943626750720269952858890434187222942787870979137936039775555329560968359605390341315101285423151235651911842624006177022163728596344675778531309385311280822039522684576866977268055787561466641542886191546346561326873809738 2542015240521286608542855666924402101632927964601434529687429285210697435592881184139373462679686848137693051437694569755202470105212357238805486601570329593095452785321443546852650630371527150716655483520965739287721452537803324486655663109657941938971903374286045402706035056003362388199191926796502749128895995596052953929121830131054784884355411721391258465362151212053703432029796427980080063846851311781961175779985842916374118083339987205042129505325194431858854796372009551151133787661953535800680029266600988235978784220814401827860775375850878397250582858932843952443177959271039329063177405767840130481137756652240660617548134697026348215614447695220345911696857471142751933315319637415360279545458198146606618562576524916858980581522179027464442563921154043974173021756145882744754539107888164931372734240299457462791434939167895735295891528624323705357811474721191206 20301651701569776864945763502176173430881335833363057294221490887183607764926758672060525762857355142144331815874454266059530361496124924846050353574854828225592073666409605692134568772097584878187865326265583477121731722375907311472204971838433477890977709640949036741683453179008029953836855528006705730996104609782057549498762088051760089746464291032009288446483824865905237549469322261436376556432908495336507629120092495877850321084565075950004579843048413097810487122764322901654193474467070175830002195565192622501808784377874551695729235118554700057962343005164639939746682083923365669854419487547032650019089886674904934079810659804643708287742416265479762846804908415504651992103193570830063699895862765267891651766303414163646768338005854254536524925783446589255633268848086099278601083167169703479767063556402290759395241335654964136722019837504824618807990339986496739 162138199136517100825127228426919934419982606249502292344585029198672086354886097604400290660346570478346565165063815251575061109625993836850452365772853764134003036299166061276130379265666909396317033772816346818967503195638990220795281000002002084851582498247051034800694924123963469785819796125480351412768950121817637636317892262710020475790918013761389888024227368539748442469913286137221207156738404950871135210759542095041110724284713354800849184591195891843384525040101218833801284643093573132589794856708412143642160454191393307943135411409576868006603041850401359508701404536430529066519685960013732345268714642575316504748453754908549000114543457737856090891452841526748972475804292699745339602349038846081845165624261388489442532755127095507591874330834894916899347678481972361664301879018594811701158485827109010835834825674744420030948177061091683451733377779732670684 1294911433464110124294513403876563297074579984229827370688081987086071607913180135196958254646478947325307505827002225201503393199502852062278608675729588167252050849565872524790509175868444361969948661342465632667955374791637128502451581042404312563825218618380357108644443269705260266308033615052663076937742024282126934465840883296237131271008029995243913636923033192135250984141067764156361698483516388312942721456132154883731246680409013504852425546254935483844464501024752258456608264242767412220590587836753699458246454132705574048428359102464052658477785335280495774477865606980929466604708853078362657866662465648956467770883317519878335660545120366724908838895524222036226696138737117545222912343694814350959124841460154828371739752370806652231147905707689391021617760898111220435340702512446523220000710020256570868842158190087610385646090295224582346723278242233073797262 10341785662911637667228988194581582522046861927820334863130465881810067458000426736542342968680862796197899529501195105630989528985153592419576540117630696086604699958473442855059309377975055617766960056458847600290833938189722317714102167624834084697531401659167242599147694039558402880303468813531345225976578404255390341631025046807675553239809525727071460895452778957095242821537167356770836607250541960472775002605376386587402078174428401331720504141901130736775274666278931173726163909160848076246096120167416989630919768179698000248786998926719518748167174088422383746959018962868378839833476911672664096268496765937542067943097363113663065957156381095882911154621257796407421684409673087912683140585230468192264032459589660331770916494183502517392888151888766105566107528878994578026176264779328751467129213745014960497696719565811119610883678984255199754270530732389813013058 82594617231616341877831300229954833756135116327060448448858759642353343290730651911690913533853793089414265500618819950009407144834419845169505103361141878512602169655956826494192940200938169210958903939022750876810473590484492925275560999456431757232165387455045337898421943314755180921239611633888366904526947385871648533080733961619535804011629740761973394245919521863910878676340179656994074044257837872032600981432063098643986386494517208594630317921396737272124048855786335288474710628516447256442294960572499422144817782476685712568653245255752080670235568799141594410275940685896356838983286554572364532024495914585477237376298360077935245633059649353394555894338684015972285695326847431784339268180037100259665461174556892843677411018991830750011452066446240236884451559404898272809319632502656297995507082191373553108089481986266713576861719352013083272569587056190783894997 659642608978309872412877985040289338299072429448734019623924144448131196431307214973263532708673586481781340536793972091578675699998898840104311542990258234855820353497985250820150882402394314549456290263300015975827472235494596038069294658400284133521562772463976428178798399581873362427741963716387306269750386597151202696296841725745234317906230766739992604381167292433460043461358191377667685199465984618624126956365827772638516799572148767236800767132544329457699748333031494056921253607035390759044815588533950469441251997571163205299802577171613919274227116406993315367823342917803471250523798406646727285612733297623648140154124799909571896099367070447617475427532689327977810368257009202265236741113702857252626122527709979637323836959208840888253561757758855272647896136366488341916123768802290497678067861226630587304135241149517179463036140456109045694551829517237401686230 5268250276963492524309029591248297800539936064600052730075456769250921414402662012819120982737737041608663188996436149683570975551746677204084799283151913501735120293635045399890852211254326536751861788228278115391225078303256134572888572005785366575480002762658180472709870256706917731545554277221850564583818705461834305461011642619581515427280028588832902961188807283085695109398493064532686122196818037601471594237867193837323586376115380962387076995193540514711298864497167202120427584353607467831208310151315527671815902702024520191649685297796323280120131095391769616515742989064419164028108415776185564538508675590654229731599528060479137850063950788202305271059714464775570782727076716457870376431510889758525881137057384761271886734692657275893298900552435182673036427377485894447358018899741854130059457611277747482597084379586729662110301268331435703780182393654235206004065 42075069033599242437610185665327611943953296752712732553488537490541640775153272124206237953857805738102208767036223816289276306170324499078517180978013767918050168581084634909773720243088485652791149196732023983322300499243148664412453467919506569971034799797784089777646575720821259761685997839298626080210196171825003676348045400567307093023211590145456924929171939956744940471958303516965676174939731736172795912206808519163609959450626525545333682831832648129642073607236989751269921316111106852210513401880823119185401584911839349904561578313470442484914666223904810436395643036824194251229768404869675353413529029068864257697917371985401327111286966159807143223288120008342779077055192362814558105408092721514033374407875605117206359020396079926329900738103904819258201176210164731310891643434258553806198525894368192417377572205809675586040346366139837420955240781097875958633354 336034613754912482450316766300868579502117762534468124568083887531606486693906739509066441853583715470108624022680438868779656860858511470152863845224427479186504996516372281424852286069190872911059857047300893219424747471501881969663307547977462814022925075268269489089772688037983503992413371433422976097849742538119310495946909256056875439055721475517150208904030965157551904299257989593621359692020794952779333497831358951126131690599120952183984067258832391917138086384394763773777819155913934603682485565732876064013231461116330829262872977109294500218051205121697388713721103863179859259383734490006938976798485757912147671452279397862889029503034220169084982279226564200613858716661674561569060989442093945613850445012831138821579203745609714105591383332921836979196339417886832080702475993049034835874268647859569817520771969035514947304016219168306732164784171810308561153101513 2683761572314657009489885685581514260578545966540975162172334772013053807735992227862778982369446166618338820866609513855763041061437790543575099336100257382147424778130728813988104852403009764779283621572816033889278154385747550947829437541364425285815254311370912721578083359646334348565969842271198991060537226554236243132182857239961245195352235642069731942423120963607120250652351312736842193244285425280097042415117498368703478605092240751622435662225064301909009355406989165785564620730531566864200120135454890690034831546535847281361766249998328706252492705012181268517117583673741023610133657124958217810979115151812613753670980560557671641096734300903196816425749882860680143165121290791504822045357221771025958140443726290984033233817662111702395574546943149714345136517813809442755056658374935284123032327527459814348931112661888945896380780606348008137686747382259644768570718 21434066880249594166329577733868259833788832900830865859076398047161080169855401303501021356529195467381545514924697752285568065629273445135090706626299662653805980753801379325390900131239201755086404756920723936065172124014939873990620093613434541763798955192919148945069317059875985363766640017487732416149421907236067436642987021035017350399311890519123409372738532744911362635542331978995834542897774632231378075227003690625390909163639349138732600264614999991656477111966175368885745754577656379300124796006352883052611183112215597251475272926686115479351467503733683575570715680552712430475970026810544724755542637948050874652987718719956347088148591579158915224380532112282527924673222032003189526712903651017264030635589335485367682217358268224840271719889277379097709744895447683092981719350040160668319515892362557732135871173490935590262332796529857648933629268482734810633365976 171185102621104954157128289775477174564668097381104304928972571152587710197089084664049305601437989977498248758828436160111713386907105591469063845642649694085713748020562053787492279025743080283365764078517836257398186874324226761396018872411417409789852610889452787009661038563160302971428807332329162273695395104639376661048580682122995290570730994241752533570315236760552111079073089944743703521253589965658107929402292899642942046185889256701178976265975747324524165716686611469097320492537799475032855218663597231208256204392966917373515721931582246908887517759522651006808417290655836250126014786771117034225029716898312003878560132330637004146340832051687196858761821870103902904873051036742052714912463660910131875092300887476226127976512049626555421129498356740167042829894556350051179107241535797745079464289667379996121836179414227442898109064117419506613448321663116907011251550 1367187524127258482570723188218282791379237979347204316645397916050450786844236340994523353064589722578290629629559935109587410320882507371268608587008938358575215848975361693670293655500415941664629121772528430493454308553693554551903596228094607271848101189889814708856882563239528333249524268693565585192709460998383086693195155997023282763969945073627036127851112155771390385845705324255465927033683029002205274019834929976781707338055683183199765704364493120109500716299339514323408133817950390443147570697327164149386309368880517961743765704165275224675901506130773365410697511228152663617485946835824145299406701794575409027803970100874099956065915475022164811868376242661811968049519908222804269495422865618929674603417152780383627005956667147254015881261952862117286620747876144802672867685729061811506742327647767581968843135203993804779953652472210790898256548961295769640283197015 10919202936972995291950435649630906382495805050092876725353241571954186109083669571820714372465763230342739141430606648259930398522168875193767477078196433448770855523771795952680885451191131355773522099492439924379839076238963667254792529076708294511382578206888551623107228032692219892014804947353385968918385784634056137051574607606229203831642766957293049487622437631147670178578042356476785883398594965022088563094165783790642048837725661859693297671544474746717427508123312103251781114142916191279412646391121870632794225139220883320909559624382061964971270564916291194946592348741024823017177234431962718317145767352223110484349689553674458602782267254547172073851005035976884032004292134545375708657430140908649742821357225797809793691618623613244964163478446361267795244451192102954392427470569100290341053237749641461053806285614087224728968591063498987020477124313407853801411510794 87207636951587865061752888419512154736196767377666279578813186141521645082584253800354028355029354289030435553267903850373695923990168468111126894675062521629093106775447809296401292751215324565386091619045354306269728287614747144088077824778883047716623502660759631903437213004714410970395752037197285797832922412281285579448686797426034784991446649808741291496670855626442769952625252771553334652501502082783353097543294370811435655572139603199111926418185313232805576037968789945261443967248888376339024914352720402045026794852235444233775640296943036764670106934836808099117521794749242980461137675493617592929566731968902861063736979297754807722158781531241114837251007433893996206796764030050067910813698456490139108835624976242006689382156241579251775390427283258459949743843714818843448227567512506783979791416959475792021986542139592397873526391948903684350596290968830813519116114625 696496323783841361895099501793624943307652453448729851029740827798514730218387488886366556658510676600967056460211898925166322807994449066127935135799982990675393479723756431391393050877127444009363454293935002793842465076835659522280953584345385318473851977435756235651413935349854366685749910009751307084026545400026973543290855852583768455857800284956069485200112884524438982812588507162491228290509038248443967149611013533666424159516316300536113614644478824453451675740630985426466080759289157764987684552341349554425337743469412465604317264821467284855406164962301048526650399951881390005757181218077489514019799165035610913632728020132743861932595005023366797606428832246899360812162176159317251905977248020340845903172780582599575350218866343961859944880115415034291464412757253938750092794459631197218449973592543032775688480325859131994358183918776408637419188243178408303842365289286 5562677288198815244919986131933961527818533610732918340287824721245376551774273558834934018909177363559969456646259281977033545085752233166633361114306838234718920104631691101448538378456578786194097880053903876865909150654840229581303158856962759970328182833601066649152734817391311487685275309882630392616115323861415819669551908094901568056359034810736626804304221728193092702402347848934660580626136451508963620650459507954483571159076938684765338257708977567105778462264529317614456587234428482345397417681564528561601332650579222188288615651762387237541763189966201079687218892749859835154125762393127323782651135323690893471414695622034588124431654841363871124055618497871956849204483518069975692468895278943834515452976267057671306125684326402303143057576342567924003314400000506811622870253007584531263680765720653721820943489576405395691987591481116734731258115080605244675589758822689 44427270139799561450274334021376315201506126776656823878082748763279351667321242668213491427653144544867917005361122452916441160168039696686691285630414908496373694418338460078240297901418639611938255873126417696994158174502284951768018412740825109201683832450487160560550783087157586993384666698121119309187144869829197954548353103231502545710168115033372313064816441408531291198731647534913514735992350116744728665261354028468156528166784005824325464111173069745627171392292850670309018326227504326840977654314097686014659874528919207043481835864598256807043884000111401800320179720046253621195278310481060808866126695224290578207411139095632221498940682652756950530831784496634795103521550797834035798113292497480892146512954935755119946612381506618959672524595569496687625115956078791459328315459613021581309467853791675725497505382843039932606637189292387674611283263791444931699773146284674 354826555988065081415827358112771913094929632958731228709814205839416267114226256458104265672923719488580733448663696533595668801857203528793646152888907788504422395732531430040829893309224946250483658678131887991735389645116867292303040904176177256006483314569072402528070549784347802716258404993783653633852126975697108869881492510067110862636245632763051272838465959767008371190410457212212336464017533741312349539443593385918988715033133105285411878855618520203274160702088919814305642613370729986805961839124815520458206148126363832143836131258268172874416852563725429704214145200158957725754472679898094062082246241829351262715776498442031522652611479626329556198523651962618183681857773374565702835879551277323593416116658976315386612325792973939055019322765277397998874671513960149322320068471521343247617178261804262405380680921450132323451471409218425016325508097361813818416447396939333 2833892202164146099888625646984335828828906611002261674686319029261770548910774934307756992490679811500626268072348959893564217530077512852009276175587844847553899572273654467690107285062445136570894375228217012816281462505771263585160705462477435288156451244075913016459250577947607979042381430367162501053296473855269491793993264725223357578172834386401738122480112242985351640631136079142210080700351059800557021569458629773093927621009249112687938459141955415804074359635807675578563201787719042651608796810768108336309368913487920614120500549576531424950575173908632662794149648813396231630161303840048715178278606029256008266063354085212711968188543924893643539295764400757860367176913557952007286114677273396929140487601059735350696222685308498358207540500591559416479837884667700756102584166736675908018750204853258787965174460542983650001139767605857407255914029966569892608882882581091450 22633476045405333952489408063265513523991459096272144580502782837796505248514504434058689925873209410036238419706525978676145300306068862326184566453069874035220184038978335747185548268341822628656450035432576271347287326608714497648769282975769971014726168106879143333354592125647619026340582449406248235561234534767258573860150423578880118876243796438418291367400434856918310732439248784686049759792705718477498124477448606279310580078860469285122229015957732565881462612292181992090237699073538404761211798095666335828182729996277619700463311121410297116771524258031181920921737854496507075497945293882270976741824363712984774679888530095044915971605402207611886741193709973644247295710898125235275238060846558811439440694716669029049515859403386341594953959346485922223175022684747187813299517315078754710888195604395418729058236390176604706077231663954438178460140821460421263622634239611983747 180767316006579029982110515335406772398594368390028849404647478510384589818594842158252110309114959139846518087713229831586137794221410888906580601070243811533632114138074259807595671930855896760268431932851955347583059348835402468640271640044387323079581428122075610957277426996218376296968607382003000141420313585283295999102639430903588138444305670566366257495223103936578325494850665446589311003532936714856340915178236174571333166945888613562604266007713734932878870171055856094263386335443948848870153733859035875377115910439609323679650793984277802224218326623645207758613409871326171398529375946030485401021227705039828993806267928202128403726626039989135656333183928314675154304756989467601785418354872019660932317267127143568478175424730771463340244331725793050466452944275497648097571842035731707646540747617717514640735634556202586020755362767168257835004343402672943568602604879797996498 1443740967588936389803996625362342743115629547987945498023822873332169204567566351999340397668112842894206520375379952187320608556689551938449493444867042969589103502215803329241463785461560011043074236258771902789453250652072060623051832596427728523238622970421555861333879837100266984615712818722255835189060239588765649244430115068459586380011698714219782463413031799376096339641679512117307474768783766135086176955649176711534302522870052162996985632430760722233364066304094506651171591918487926368463214820278565510491082709161902315797587750288290979457199825793873033195393420201882226810903962420344420853049331416008424006290235989042144798831285067543133438149722256266836138256186189696759627895358252461049790441551260698711090865034881837659992857092136610203194442694761795468533170827401864417393165809902161236975276387121577427428908130294810727208236149839868323693704838373360726607 11530798098112477304995380006004312138059125765469757071541880145703188328997151735157810450062363662902808018655362825711344067049345744925918928288612024411441216374784018818456957585769083825927031862982944482905392817517804313671167950757895974122820756172828617795315998352361530877757356842899035700490028761299293271574593683393363456075305996422884002800476622338405709322809053173903870535410159075517115188699575325087026598022721885408084434897182311269963990654199022721468470996650177332728386468979576659623081498359496234209373274377218907513298701101201835051441462591835074474600897710022502664509919915943598113298838394115656329431800839008577308334144779900366220828435306067369260926960519135799095666627785730187229437510666980283514865257616460645430860644948320877943960661507745835046423149173857932432299961250500295176505302656829984740907581594041535882236221085784154682018 92093752891838889435665492810116238379408825896311519052333023324812859585018372769503855670588167648844915444499311432572650504319367474245223113154313951231187091943297188888155074454974731537208589366787147551607309383969725513826706852722906397244569951473268010084883659164615716867705198821996021774249585061792124914935765523855329971472571867120143727047879564336324524721881325950894133123467367365201585358682655012767314122734997084234782264771519037627480999591847365547550627543201803436815569374286060955207483758221078887051359751611922627541456768089067757983944844694309865008834170588602687366712829715263977041561963625280924196861380631622129420729222645892786298286832589140501156018343953825909217603375366947947779268385166293925765892201507689292354957292909069319804458762513889389139341976775294227537086571321434536444930942734842476326876144999839206182100427579753340089220 735532198177717558904207022829707875671276294421902285311494755035818925551056890307455079980415992447904862027508340898591860029490988912300985719958903266749414813956335921360630137685027442305752829865169142676904565988865318455354088879588018206264480149642404172833648653041525570563938658829801061286991240567431595171187021276426777890325107443796794536188175879706373182585320268187894932815675985125083995142202696305154006049947208437331960931497201862173420204095283865050241381029000069024635976073329469513288345246980060059409971236665338677295750116427374032521025922396465684920053797366763324915155073288991809130967532288752243065988776284515017582278115404927813060864764588719357316509677516096239367962296025007662619105050978643999717149022880453748242379464164019965664016674619949353459421299390321111295484052971633526428740724622099017439548542808515156439273872551971683326304 5874540733347395254343821901502446189350756142586265529267058198597993821152639732884465678921050841992330934586212332987755478104247739780161526991198997084402247011113130119243751405129405164066752246340765364665515593987908737643589703959236095958085815721059251552182710303692075294796297528769781737049926193918044260837039295400785651192283669692786701017481381581544065040199870997127744222448849574392929231640606377186302480781682761007339884064019614163665424926368758793054246341836361804772837509374068370635196302497295330140466549785404720801639500076535907348508192122206859545761875104020552206963452753140138400349489312474039249034407330734351954345723086024065230688388378544492941762175451156391671752947583986360408579476458366051270079908742364313402881140088241009363310832694999862517325309110911981357188594728881418511823740907471778590496419142933326804440805353526781314827444 46918796282962820624884668677047992684926272016575304017213692467997713353217232246429524024733640483627663166661751722525808846781505718802342401189133107553537069934916910883692145036075612462561770214629583066902771011936303248013174545520322991225213629517712463274362354804335893922687674595721829063276598109759362584949362331095096090709546793767162797634812977998093235166187461279160260354744527947399047630790168331524519182039639041980741624090658148942868214329612513552641975393656533245026622520469704334670265735931825707338151752278752628246483196251540640363090740188222534928507089080951780325845805648298518408777689213921509675403145450276480130887399353491322958593055293336339665374154443367333835163360883856871522350960352689575408299464301130580185412558656121507724362371276846154987238414892788161925922813274260291663111138187848411693485729181882217769239808097322156488108940 374731769500027213350750224565962410085990109929273836475111336291939323445028496176368294518760091833122225293160059843137498935211223747442970327303117951725588832397894282399742671465326204396354783950491095091922325745332257751732292518705415796656931626807542005116861041789849095481127318229740450574782786504411119980999868359689713504156481387953812691177504369027660959568296250156900086534223142594863525420448579234617746941701094284723090665669671785595572409520469128040731203459289510797203930140156256715125691805337661558932824037535644626946945361598674281497390492476355837236344966645898018084351786443303122506912254480849914948304235691694422941101847539385466715843805161815959115981632081469360189422103443699747853944890805234708805983285972174560585589460410894463869668209016911496860874698348368834739985931754186231171130425906671020582647943909237929554585466586021737199152890 2992918389722430361271783625001700681031054572760006686677668113691216992658334057239946618483271479668850631783046328817919916203037624033571616571476920547224276404856542740258361917668809816929582244263187622722851489868190157949692101177918657729141152741577917867356596543192278121603910215632912595710043341851918910252839925906412590486065407373546654792146484698023158939026125879565327972750949069877866800724124779675783516158880042450390593375364725014198867025123164206144234095627889624865547029946358746327650262682208155895010752138680124433666660482284239177211547478867795928138956656106077786281860203118534614845470927344405739761191517011269495432750587373687828461160255607195582177251671052379248674175538779863608614962409090920568851354832279584018552464119388004034072738111595374154114964759288869847571114876169615970359747554158746471545973893069795100117523859322723056487790038 23903964928572396478824551402225108101105444376956669704395325919447455883203219166070824035448373484390771726681563100223525954560699348390206583699595241157464381276815131972622351868233162376912979983252653013571454864582229888654936211192499274066145091272405259752177882723516435115412564308592992771982718351699530456083861669663069801105370449989795743140556952680216510743517157462036075691468183142690885426958486167346037016949115432111547949328279810235334891929391569113602101336877576568074010117954523131692830966867395653381010773616156718895314322967815435894089698702693641776302292340065791042990442916812390647846029900038377056485425632731719365353592400147292890863414443377552756241344079068522238680397156957769012173618956182730613590987812147308470028015817100223381587147323332284819311764198173058872370345061240296645164043150992645028416712793439261677847496751960534424263105117 190917490435850461690995478261557141579554641425947241086621499702192515503412733944164624702180538239052444405330196468681763445460276813285371325210631081114658025584627438101030410865351099278699853007690138810621918694274146163404395217532930806122213531958254749262317443352595290639509690803195566203495212538685684264244450050674202204090887352909509583529973036443974346003202585574275231277789181334204079873999776285296043701769894670411934315245844164039606928755924456617207597849810705687583738036489146398386143672446459141596556781768064390808277929968722728094886250283593218810121930758150537461006419477875108259746633845182254673327200215830611763232781267812204051874638272108952640744652272096592571516336818747441394772304913769189764412383956660523241966604090220883863001435488451843819881971755241124309973705619453716235474865122267308497915153952141027682193703129722721928006481480 1524832695765475218060105520647520298966309179797824634514699412625050836000486158007557388571304490162688196523955847772061546143053238475615354443450486003579454836553305333850507072378404166787446083791333592275125010327715620525065027316856017458208076633098824007118159056914137458202566276408212416798487087275559395663140917937955797991598200126878497076230872227648642124514315155430258149931827161082769554203079240660047145090761532244043008616165138914137263845254179520635889976882241211590979162301811256553211028364093996515760487905706991870277147253801661756828208207091725276186784311336338867166598756646715140988599036141393751929688797441909410589430394230045359683872007488999895515054493528682535370037543396834807480733333262335743339513994985316374233445632918008255652161703826750360707844198209491441761171141680002743658742184363895840260966025817675748651654759958485456895516600599 12178656387421963130923614089689443996402000046779012256289716363675852113766877032092093186072740785851814028394349714713745878545448838886533795222019146870764241945662995063235035029632627146751726307699307383465511992057902112958632395812531140364841847808436172474796210911455025106448423699946494336850102794544897507074463004399032793885642809348067560068391685744936083006688793357973288405443655542971660926545872864446121937447607335976945455967724739666392028446303945266243404101920230358794869348312526860951767624800613564684547241047180785107796106087360752471605037592300083550659317696968103701204370414550658650575960500533156780988766899055226135149937308733762862942102964519760383449645021055277685473220657895224506645758230385944529729522909997312433304783662143503626620560975526327873237051668371902867580748491941310968980509735083212507713484969281091392408771939782759869186605828904 97269629295751422712700791002558768062908577563570661246871105440999310979310788606944687274403366307469484073188038939245801388009453007213745028870644681564588732359002468251580657276046105350954139121288223052902866244328152476265164166799197411138286994200124080830665893155485283804651734788823289618662937300489047947204363395671293199843691887217021408147760981897921227550857065333784746470207839295172626511634683948241928043302197201942945457786991605441080925609712084602368701714101050497853984159078025614993625486441325101466752739848110690294066366563813714877166068267496767703265430969121980250056714236195415414259137111159350666593314065210434649570689909865369068159658008740169347578435846478821764483877131035423433609696246392770087507951380275105970318125238129951804205859523217790189456776584701124629710379590435935338938727830799199202929835398520383276553953801570240662637190250770 776883404852164550288102846328887292173614665847328788631388102391934233804543364014655011370088365559821345560885363505367938715905490299083484357047655886293085209483468735824017324037522592818932742752716666726327468567121644523678983537543021032927667673383401622201759610125561230926669658139672783610596400063801576537784812721245436360547028265251039704256823360939584475750910723756402847732914312518056242716044824206041331478884110202967911804169571593890969819953917799525438808805826292635375264309951522913582844279780758773758187213593597972309042559820462173495826811209119003988438944811622903569753271950050463537143618047140463919443815058369709003136367015045273986329363729475570320252087837224743020880677648033918295705854687965432082739794112908878997618578335860390889441873820916400529722639884503186637638437076419913026123827664141431169649770772893671793420473344850558046444364410212 6204904865728659273151949269439918588933225750012442655129244600606488070823547346067314321816225546990537430500421479674066682963190530790658018592656351434485413168664888658474959254979965123873750073652401209054714112723555704960603656901377657980118531703139040759329749003949593652466338643025265969611128702046087833952265821927908846260143093995795308686837517970866154113320430614309336838533425822898942601641762629154914293782283287697595116584531733088883708102434927239259734192340522636913328445037198291616467255757158314108065166925913878134739022575525903463120529812669725872537629273549315606145039371527764815229405091755199826993304563920303417778558877562946718346120581442674665190171228355841209428972502015023834089468029591729576612205289230968989915651535973461098213308620589789516317958206234771540056722610747419719445796554088568927017206502234374106421551445385865331442327679859569 49558152478429928556227210789593708041305762753192368834223501551869698688586001946228570240339352183888905463888864155893078713645312579919892721842951813406511227136119618549472048931791294040598786683304153170636527233575517567909496165911642667296034941226009411925523716556743699357743615904566997667691137947751812339617293139853714042930793607028146473441851495931664998930149688857002562561115219270220590866360309688606647799062569699530191672488959210175959569418978596617255820871754193672547540455796298974460030095097349129697760981219340715514112498142577335944992930312930897706331596088486250788110069698589169246714657440762982328682891290661810197305627924954288089002738535939305406352258307679605018884863181827085629673474851845725827509131696785744033392589466472060512309482284531364215978887326206799986299662037413311681250805034384150555599300202193133063682221975522015290757466056042002 395818222439834873160311930327532691861454109703194277946324193848218835893995203454308971650275329207068189231019020553397935234149297233178402292562635021856402722310961624744395529002843343923498876090932647492199665981319324045284775579053555657685350333581130975393875682588351291427628696751624368145489601686792893269947166652140519932750000324242468027466765730133685430118671264491383692448255930739537342995353553423289803230767942244779911094691405429865642325114351509587203861724022482293760615563370167504597973746732813464510883318895983802488672470917402393261338610297118799427511446836510919665275969380085850832007302255318675165436084870149752295613990170057391940497214934684878930074693895821935948393748781649029308116939673722152228254488390741860497982980113575635072871390855403994325008465453559712695653356146431979598662670786476060426568276467672709384483220605400758157259929840356896 3161383305318584273177623029658355377511029139544798938965066257504907613835225722891921874512793253349719033478089126825988874877066548631204595478938849453756644984904417301453200437805618859160140281765811167525952592563767865524815822458030113469624474576163208187878944783798112352298769344436443251083775116260065813447826717931251814121971149769224273395298140735504596868345532520800089738265326308479026213536836465892738391906818600875538591134888983447692137846043969511789781457656346694751919650831579477676442350151853496110110883016387380116006654221577336087254438715917356940982235257822407736899202652586009985247725445805985951477775126799138176404656590997495500542632124687441643799826835129262571928150264307694453346453635430232009364782702443240153528408402768222134630231574721304096289211307122287643776539390132007144240978993860023860088277591700969926758905148225161472522883386871289248 25249874300873181404120532401864087382875171456539131193220062824366794712083559158362828824667849113410435446650297517193247098010999989494541569768390609160297159838491094770141568090217389350886717725952996947446153067455665855069287544859233161559945702817885190071852145645610092358567243057577818173830093765634950979892914547609653727124644436111660892197715364879381734401643723685246787759570987229560377874457666670706854710949008411293250166642474343748390505503460184151307680273724747689657092078096226712450521821377653622695525722696488749662257413141252968513282133601435948974420784054895571441776987963277037767144160986233251125296853500944352335146725736608935570132092079955675272251149200279686617223619616538997100341933665037709215900076236790168327713349073640138057706776086633058377900459365583445511177245070508424884602936482962301546117700701886980989870359297361031388969419779121267039 201670315404861029668098212816857480851404097155060187856537430397951482951466965767659683615581239660366278775969208172062183090526643713672296125331582733836418602155795292173837907867794585373654349250163058501070491255850540540894840489423737216441590244850334769347085617908075780968717141008659790905251181845205870898236691942564170577041198033899761790791301354348170513034823292222918905081183476598137594566378221220086032952263754791924941484782775939095041009253864234195415171458730705503709619115640172430119155190194630040099274227197157773072650728975432718605963605230083050409723495253088132032274517913250218188632998909949990144245245915403273437811028115643954881572887557195391594527864985894361997135323344840367384179312801826748065956960870342602549023129664402669903835584874856837534011373859400622221791541402177765334539601499867468078700500253207003668923684251052554349343729044587086870 1610739931711505455503072482246766024561808043712211707410967261861393668728896520975727228050330120804956135802058359672353885996436277521575307938019402240734135058066300855961024287734084606827752218044665403001547734125240660167382783079929689606900016033024159285079858973192271870037369200439799671138397357620820831593289152496563707802964372522855751638718932870414120275339280712339259884695514650857898845708969351644573305637177062802719730306157531788698348515668692610043463886270797351928798655053745038165570295925591904278863006078645059866370458752407136665427276256137731365689974075732403003060897196353898190171607141818219827786243500622281506963441877235462513680018333669723507394740056513405477955526487915979516263067887295598597259861877309688997569252508292412306449823868453513786221107132637043462742312890835650137950730901979534361862902991441391410786546370166546181419570996949938381407 12864993249798785258589264199065783283025186470650025413949413020960131805674739859889349815060651458197224534874684148541360342189190451606457214552999355733642881200905294866684448011639251908100184542108659462089914367646343096694420389844476847970533410808540324438434271352790009990373668998576905810564958537737108852980872283337479392901509405965589927589692892314966594569832360309973207919868392723377018398926368319084187812383258074690696260538467620582326352816556765444140888639834682689843339654223165181401127908674409275007824606196666918196675832128342490999751069711945064775222810352910639413995210670152961103829817801056700106753402309525008164740303701101530675889505853415553437263718480213966505253864047083752163975087085536574283307654033146069580269067179307474346828889339524470361940569235382858830620628994003136963194881624263494881547296017228984878784536488367324835840986092419582398772 102752971036233535237820613926177020058528948275646034812790445584744280702027481210452999625213461911805072710608718793874678779140602717668729143839680133736510666702195376523778754112673350927185824426292247819502109526052322939560610930647595731532394065346576710953427359201830051245828220243232920979248488344828877577482477108870821151891487966767752440133840042926018537396189314005649422136954654245539907354497480527594135921559670830453140396346293751895073387204206233862879081408585697042119949153712328719941354259427253582990513659985526731438095779851938601633379253334422166894121435537245514452526056757752640992150993527967159879492366079630346119793528300243700519128821772945673922810713359396527079696980265013666218503394254270093531906458176509286475047049194556606574336568062785811193959209545378124834376660816961958815509748878159047813017695242092158685012215050674632689247012729650612661220 820691433540171586989198616406305078949736453429458224200182604762091317711928714023495900425043659208693697659846145685634955808138675725596813179218534213233147720233583551899721589862148745033837663398086492931926436414447966269467404305465234784168073669294206357697741918073255579001127993406395460447578900426287312895239626327810079490796962133037644210472833043655169520054022458988464262395830563335941331577503293815045880570814717819467688708619443683336105646773660022678882812138722398863712657931184940640459426118872774103400304483770757481934770437084108856099565384206953901101023900398035658897502006803633138155500663589848796667604995887776568484342434639926256134713388990519533010726211857745983054553014978561631353908109770491239613704416018396400438357160507256176576199673742734417737960965398490064465698287712266782486830209504993019769199858645286901521993029320482450512255856004776026770500 6554900411119542529711417629181984365728282239058685728207028238046174304832955425778293978332068499711636327979114240938722950567748589229884247967826214039899901965796494935816765426663244429155515621871609166469090133847594148576328825916399052218562119875921782006085024673225791433085685082385226996114053002169398371273905248994584952868215054027220070046544702056189885105369675531772726067051685361138634223210765134619709880965857047438451716030501320057780105946303909255862762406445062491728539075585133692348160375854930836750729027498114266687770708707863696076050041510476412806035029818834630851459933924592790144962847849862329645708865433184979596400264186023725756820502098522184200081553150019170881662405906335731555647097217019115305890045855632390903511128264482965804370327023972678759402351483146228019882939958332650740289096947459982155552494015898226976313372410729991586449998798304498861648836 52354375011011256454993265064694890077746691459634916224061647226763111351142624364274132111503893144984590938938517282059467628095089895667539467048102749273812884322996894544982320959152394130570215549656139735037803433870086486111617346588886236897067978449324522550899750293346020750938532375206993691213963667926860590028082277788239181001011904290013523096639907344341427365273627990101959677946858097448298497541945151031091613523453434863075023857956726828442780727593357099375658075009270941814426148472418618675058243385336997967140352963629343768995983572655625149997595093890370645238736796278461888293574025736767021126545833276073839924762783934493262151767446458268106788705369066560208521986227733647983621459500741616105991200122635636481488497389314677653890440242027264604415936610779686382793814024413294800139548128941775387021268055719785071444641228379299373249505850932227598393555896238785075523218 418158129036807838634497706801746511817572314096382608382922613169397644139765161458062021539678071242074396603755413764390588894651898295918717350654485674946822266972626917519194256912008490417932432988238276722134331176217935042374989319328115877852442586507539016641110605523205293040742136241648031275829228989365533291452878073781642113818992197303031795610711899630171715134670019521138941391461909259962560468771319729754621723019929508009558214047703810083237234740377045661516497961330726466044750101592104041608430530294641623295216960377541250379190652230284405448675920806818709338035587698050587240925075395123671107015738956916985792211526283341334572591042233336937024554266874518186473426486061484423180427386964618306766335929716232898598788851540785662152493013565286512351174670902770712746018426776609671147267827819859059201401138190032245182159772010418704046189840360955494471452091705830674648758190 3339864055368501534057923002623374711687658936147504888327341254521381753559341325368362376135595512790843630086288153060333486188226925059113589232980063936138963294243813818777353181729989442465545623232543653699733492750116037185339488126998783484441212772604946322545782530989864776871276383465417227041594997280032964952464683003509559139931133599452144306604721816098641517181266115692169201497270897553563993342971720687221313219782415310235491789328917482100474491017480747422992100709409024846499497476790689243564843396793888953934054516916742630533354472339916750092170568916663766514200797809110609596290899453406914965029906265579687263825080888835414602908748429616932548102982337092289012196269043652825027392817612461696845649673949559461069026477115114433463884354240586743914389052871494038445304710862410458362417866617472597091459731411127867306478847388694587540097648627687099009035222601195768217072520 26675816162066837797449984094808945024564275144490188813419623519911640946492264537098658085321917187627627548645517493339880867306403166650076266113731963727079736397079724146839373298737006024839529067545153641807114091541486188206139751176171804436323027248995347488561513232206934596900763280118945298278648137617779409102484530771476886543709244756902618329001756747063094740836283902442792665498422433737728986891166709009995950599101397126382887979808709690856048505543197646646994130168170223346328387205475337019567916807454385846875645986925305156593282147561739699555699648657161353759122787855227584417186727812385399866114784654415396176740101151971775744656783391918963341958328058871530211908251484972013974747523280241686580214175076698724125536614686559735305477171144068064652076424262827813300498930558572217702703755184674733926333207932541547063340341408300770509849421773014101323706580964266747148372634 213062648161264203266848115409512616423600176011316040817360020300747116456405819277860240753162130457018529700558125864310939654489560483034276349464550845370389562648937246297917909357574577613406602471392805142617939347127842119771096407360675707356561051453322200018989340298604173725238642464041423696973087948724554800825615451676428892963119592087414489653709901661614369288701630222281059391827057193766612761557773642389576129495119757884195110027301320531929893813996828498437670656896339650824675049088177379871661222536394702436645039204420814631528966200343747352303409807586150723932095197357449691647269597535448397496984779664656567706209964310716043226302261665231482052012309957733273811698517291859615478850344245292538274286388701323782958032949164262608025663046717328826596947307017912372764011612503215107435064810931655021505903955929437756964804084419780698528625202160039151639418358810523249223505310 1701757223900883403904243697451060605874203441252285874545230365517224144836682941334849626402374934098069013124312509943996104686391570087497815999821817608275091539576635425143580311056061315066610569056839384803397681787907219536296013588767866611944301004568465312929538072008768419654800960950311704478113048633659670674795082361337927518632151075891835218403378307366781553804610389178702348237276913699478439983824107568867627734726528262894924522846651755815625369578662701725373971302135397098297199836830087038545570925561196051836674586060929710498803130119044043415623248321213824970181955954605661123835585865197389203659561042161214287337889794528109750030871345257646903516738703463075525996754999228643634380447584151151183832414174952000949912299984015715322642249709960752482266119402400985478855880211150025563187475329982778173404846521909394692100240463589369502830012755388343184266028897295129523451770504 13592162600934666148445788365476788479041229078896943987018346930293866381583108746310385612679253685146848890367967626874783629285287196705858973681810541989810484821406281152824678374472158151511753752176204170731992063642069317150811869686235566667321492314601009345446597010509918934830206282725403214908921531262039210419191476572570701525344102747310652327636791718810022916004438838270016323724848053215946563446650595034349758620161313047394016189640270329759927221592443037581460945237337647105792722075619004830377282631560147545577565846729885932000760877642022937966288457170514348148043470524045288135639684520426376545807888921751831471313806514283985888343291127390069909059040987744481990888130914175823247440505924096064342741635589958851949111921213591167510731548005817314203164304572094828020864301590847762232983593674320581131150296553782808009861205860495424545397984328518740951177948004247389923265610460 108562589693640487217662235445996767603145711001541505524725921136698698615580313791059426460278048470278377834177178760055936150749069723109718919659959020435523730567305931249299824979665064233667923564208324713732671122005313199435101588849263371486076882072294596289063921653873745573484975573290848431395593588117568180933474202426693918375212099267242186778288276144268000389319361697625047970905629841458884322461361430726004053768330682104031281361648708981090548236409407199017142231559937704542336957844667142668259945524121753863350473320158538457792243635343816912478245762023450131112550332336545530398369144674458398266084374793142955183598109745763520583366330024111405692198075504372796656975470083748219837968614651003552586242911976069183290838427328375701073977825298953385868723070942184836516576920054216325823847189991127381878973553557493853042850768158629100139286744677159719342512797497071260970323794628 867106619175555712391491530506872177720381054986954614543194081138568313908132370016095260002348748677492884518425880550396352372296453323333497632816139891126584629300446008889664500048887824777915816032376147959120826383295684556990017705779279744791400387864769754377478638493375006281790700933598240586917944288930917652606319591553091726673715649171829825179775983238613392567372694733346513095243239392935699669417475926195828187325508746214514502145041614721371039057023857104192331612770201647987658441922047309808686083278346191457633216899780055441422040654198661605504083716260755761614545646796236028511460732544156067053901392152308016891587675428759474073608994527788985993075820550189020360088915913338127018376888337911785892046306242544581758690573203057261195527880289458525383916021448334074770197155767608726930106589303491538095112430046522795922762256252503942323178492232058239202385353079037747014004300852 6925728789333511050989332314979705175677315763852630216147408919734208379864978337773471122273363384632499167595240975499734815441296536607313254422968343729972881742178454072843920140777147714395587006002552843548164975136597142963062186057315306135989152220995558701059046367666295660236260177226982492391544554381818183218959807914823792749593692070674185208782330236073240350116788771654851385702398620193284162216834249568403382907958879727681279601174645936659373958195462797687129637474238810163496980216212034063788217653013371299877242449846200811339602277280145880335337108177497426255523858843848471760552914155307017935516306102288750065661381079701735165054290105094651229015482306738684237371053890286382443220375916166632269545131681953129221434545030888115473845588038492655442915922728825965665708778629710802589733832037820175738113440619543607603307520410241681425713778006811691368683357381605671731200151357515 55317065178046317218151679594543681024188141630182738796940283419726571977076585176184071446246616489026821135212618227972747217074106156780154916759762521907726667989352023376673531013728093364627427734001628714649625609943876730613725995285170255371865245817394944156497624213954111388987419557137474160225757878109379956630398937741153256948966995838585727645323429521148307352514055545177897466310508055710960110665097092336295225932270274011967647508679014431709680549476093838536521994354337158172008676109596417878352362013685333528284386136833254253064601636386530442355786130162523039001585520612553701457414023301163031485586745138864375535633597616627712971595644665131143461932045854340884854588179676576184008538897198333945939803337313615059356775713866015667199525227967133733352031151767354867046845530618952050152265898596239174509996176426640352440777214284450589797078419734197768816842462047640912334496184121658 441828219308762263205459434316463543920612483198898494157488890332979005724595101746774645155942717495576224251860844574159562920041359575407595456027587955682104469013965654589540308049662456228289796942401815681452268504502813928420581192656770326998128289653396337777618700021333514989185058274300109927375207464123439470268890092090611763251918526309672851398207145515252130577076540394027385622240397358467139046979291349902728071098580682039716728481550218150605971126028370019530345386611357681875376191962751000166690089996281990950684229113710316540741633342601148086510394764895430277562093926115378474577121327583327336355657417873492615900403875713277826246839301698138460430830107082192581299745559395406028171807436176327544109882840742840921452183341711020202773928616358768702327621204126916007707548023164962171042615224697684609001393967952797851050830573434022251499508742097282227088233916836019220209377133303454 3528973838152994204044472006661908704477430891865082622396604537862879374339062963612027309816548426158487856831646175408344697568645188515324580344227803514864024794779911112794179565046564350406059794528668190356830717471496660199325609763487794315073758918578494395708655602743989922504942039549840681421267893879030394752727752673643803794278340475516631433353009970709725985406995734504164266894030136405404296237546790510774028479333097399641836163267228005531670664548821631955783733062047238262386624202307014090507975095587104665270588435490221056351099019423904094003672008985270289289301151602780193779077157257105884730919773051507313056050161743852339484008216684288358108896937542642349184414233419001776064872840424283072683851463136354995842336925709098572878469857211788526568387137899816636446235968821558527502615336630292889571109515976685814509735750303925655963600115523792791107261150020510168839315468434154896 28186690971693348550950966387486818677796086366539503316512872291436060105326505600908028055255145714643012144090002621899089709132037816514227313743330491062525227001060526924785361632931090780024585953156753440313515941570029438842081072220994526603420170547318056707347292078722118374903078321490997647861117055326373373392411920694993291296556644932009278439272554909590935413033209681363855253392482945696426267644301987100269523657906651565268361896192533871471307370422742687462870041341615882168221879298647015761855118236097180170685801524720949501870581847137321351034856390411008788909121495119288048581288892761282092181231782018882225012236251992584894040010535309819083521478846743180230954440610490428034612980206896812940785772913294105770881609776096152656866628493946861636685201172185512822546710818285089539445468925935797328691831691278678579735452019249854278796496604313938065710817684649077348494922529288152317 225133651433092715936468927923228922756308122946163872025072540892293760753287792926902834944314031528723660092591559978311640843358255403503001573109112042734755178746444426954977730857391270036467918378651583954509462509514844981643796105501835397301964527262747306481649283155416288042302975394033949846079186736048889887529205635727150594364712236094635295125019922513921433606552215135249867449298051935344108772346824666663346684199347422324219133393249952029938506118199068257983489866100505255635045324545026385802469853356965844170774121596466261568156142903578194478168675818095951510454859325181054896420947165778019731476858299047529349375753841929929911066921506854394861450809686089232770132833097543631888450102794816502282134040398069850172675375657826996164523548704525799759632989697568902296863282574712762392202837740363289730696506426131739818342759674599169277334765875839983273741173154431110636558016285387554484 1798197547093433434635892070787620486537452577970973695137392317465354585746525260479397295857604534279369225757524150936098323263581081581743376263923354744788154659194709029880187546175579926517208150763305564619708296717892867967578493762516368975949588061184886467552418791577264474599788492991432027278034398867232201600665284902382872204572549589130540616279510216667801446472499973664022938633884563343766472455840372116075622228896643594877433037638537753293919726381788919953281266829680925479435897102778862122379289730265581487356558831267158735382988183601687679777687728014146541700311634229461930668522031239713287590603072651822135168568482846467205319959397061730452840295988239018968532341567175332939367500954034011382558391144837974503147896734945457774748038458738877581218710466221352543856119675466945754159689734757940582560640476063905062403176063552085911539288622135687653978540776093640815010756038667460521346 14362665626559112380521948051296341069746916695170995381087746829221582626341397786356117434580843112761911182682597415553390889889427267979157530563395595311444585688832097734712910388528186125477437307544566389245763968220324616882685763845355262696712647740421221808008134636798266940480887770124729417190180745393784358684641144108936672314320865642659606548765231400007004896345652352988870043497879069153443019784400888354486847451876817442386365069507871905176356458793218837703400383534193037764930827272483131931705896416730515559665267398676804318580069581811889946644501217290318750691928380977967985427792633975197086530217399895895253614475654346301079070382239370211472536770180460099319049553442720064587021500896126342514291724076349885752311618278502025151948013975937872745912518528407042723467997385566312725925950576627763491462262938723413287830437075326125566980260392213725204964542191333073263441801296168440123742 114718473888279339390821823935287570395882469817797988287043996328161320772373741416416282412734779936327858253157851042852088008299628325667372110727857191249494182058067834532994522573695115127913884441800016559580066115532813864372139838780193009061527009385014220659853360091464401715374337438871430297451674530675706622235875307523932944084808216852062876153094030861876063335233694765852237865980801884535952646569373458903508028909179329222801620980718027174579613272154263736079454737886628597970460409398598098751030252130727733648815379795425677462659923469604272097868042902686331527373408849899193775734509742918420803609104150840102337685165400357244397072920840819001830362793310267832454802785650210870864624620627757405196631619359141814066545936305256314020607244692240453206166687883372825873382521928581416322091933978725965426860616697363504294709173276876626171077772199030491754828366232741389968544606751079349897025 916288704062111704574308104966463885603520585722315138183662122667553440011836597184135316684376037926500750591534071334881980545370022407948889746433196806143478112732911563534016153304671148551848225988296539984946597374800561679740627831053236353429843656744952743695343978985106450146912455746981906836156150294672874252306976171467179310875918190098501757420246920376471595067614371061176472661611853030189994368303046347736319584103241747153454783592393471709088763146792812979669967146930069256245282768889737410491414109070811882132469705648089004387015245605058094232310253307138604064265977892163967915404668269853715424969193499847944262129041261135623444482318476553760237371018537714496702412709663725926527495765960511086484425397344375327188355072175749427903583286827013040529852989199520536265935606689236711598304726524909482475109652437915374617952565217839288818902920385217410268902819193034817813747782541491527368292 7318666607651884260487625712285021985670100526641744126744046828776012121163873059832999115181491103517769719467906180704435350529895098344737772970889382566584723809159609142886594533068450529494591754329378305285845176007774997372473530531958837551507838340815158533596253435223259625684177536805750459866204227180185345432158240737643349601733481914269525508311088442722727503302803411042853817445762815623800898632224780786000922452317101584368031853158722363539520479186569878936864494677988721422438196176621864392743148237982022456062103220404031480963790911478163333901133430503135763905355419422955001455297468688970943097064426229492059968608063349738416038353804593261031215700911287882267097757310264116906956768025670869724922332200947578050073489250773489156182923557623237926078154259745571132276570301863246342008482550731812292799374434652628221774720521014378804706887041898664621813091762086730037612227112632661132928961 58456425205521011030643165473291183013822034610245951077154758543320537166565042467462512778820728693731218394753668466667237978974026565327096300997105178589763252338145330203303342625374702493965364047173741016415824143807670507189186822072444112705893267239934984760428406617586584272042027098947020164456634704362498765146761837705076008385921808964458072101757154298352872035350152668376590209700173676784406644173787784738894191475852887879811255124483729840776845130415314480793509504006177588415504573049945864793146063254852891682547507483207002453990808879535008539837025418055620338037238191211302248672964901348774369503671378681618721762436626479329122268402577689279890975266679678348331520381420703254796765746105558576031302932141497614153888156988726731601524558496266743459081784193756266782170360599706343795639091643354875613326319879937412736736605749597658459481814732286803855607010281062547283253993819063602559648448 466910026140614854597487705514651696240136474295460288458462852965331610758979979540677220121089817744209441783170015284430066547623170384018717823049344759375936653516593573928992324675184880165193709859964076928855224593577124558142244201096771765923561684293724008174463840668075333278249815968564104537898300153615382314674135859812547452628747654501779518070447779518037861818945292095853186803807756993931937556021468368352000508724337485329501023538257309662151402084212218318776699962053319479691562045218493639566910291123808288045967718495989412462562361864820185198104523444886787312901410774069104297932313684593121271489069936123542378343922234032530871839805857495180379491080035735328094699029082051848427890058037053116252900809215701984381440117065826585370689626830761460548563084692332486176160746275832043014393064790908983855841073846637116196755346013844481626961468173172893174487567050422003400112958969421271178413354 3729364238446614632437968971251822506602989402956221989524925812386192874168265130259328796126225589723648625363725626063862116687726674652004327828085597992935387827534424157871899493999706019971378851323514821380775955848645418645441407225702095386945265981121387434164979147230685622603609955901256884927923981844856576521672020982015236608460862697250427581928158556685336270716381008177904417514665440974047222356636961058622094976628055698138594447804341294967426872382659975202730316008798975037182338952744184462377482521638487228511455736935696221215616893663964985493184444698750590771447793547804983068640636982285871882645980969115050974465719377976881027084932732977177457893033695615774480720159004126676397216037388898359450975188755212325387922001347985500451049539721143298948940448086907373736961989390523595059085701539459624803829910598472947104648923850070140829821001527702560323020769705835905923459927447552593298244244 29787705990125249126621379488743349019984011091564503172844775700111197582623160628571116744142570185626555549252734614031637410108381967522377077791027974667698604862563982232368265643946672488135522356721580362659285586660901694004016615216006545112949450188255821893818941753516856844651193769253057441486786487244213110715913440516654737406861113942981739077202940697882703237126773792030401122871383298358943557961303517073625177562874927164939240896643093732865530660534345388726492693990161265212202533005454413185414283097229207675654583848362394593274235164851473148894278445779330999331231799101678819356334203865535685257232958513323002911629964741187969680662453235930790776319247129995332933338701333809022006477933578608692927130613683672548391967418851662880009671390202494495399051346137946200313883488397425074569717957067257086931304372160297012822514210377012733751122857967293530996546745878537713270373498534661232789913894 237924940029511065158892515445252818426347940642116384846250355994217257155934752815329325274451460825347960872165829021561728954909407593354653879069516746056623549741004417948368077697529707266433617576343238592266822817593645562626206123984644720832935200899900086667557794972430942097319019383076333148522779566600295616303020679285501402091378715898781734364183468805653529943851318001100323232634527400671551739947969554915892465650074231927188132837998133732285253545196502397605711248858687969258621542108231833710049747441246805337779297587825652683790219803055070979273079707897315602405649731780421621056165220566923859625613532323946533303590734239387416500897947376002868291494114522411949379428301964704507188687107845721289266196070783847842404063984850245361553607551683550159234244756831765469148432277281361490657221321861643907289254003133613454894735543853975203589399729657162843483577339447338606342782188906400256334228046 1900393474121032582096765469597218507865091760867637663946852538144899154189561511433127807892500592722081879359570389261227546080032550473475720271326870729387531383595590957940458426666746023510455962651715591153230949372115793548522075763883660788319014411310441578147697964857892056415999905207371173203272584251019401838671869159345112617336131701181464414032128089052889920511692932319861023334633204580081748634837221681874971311990596719493705969246033936223569821223399012977305836525844072816305776830693361685838300654226744407213982761232214654294995598201248215766491072611661008987476691749911627842796132753668289118911269047333359912995076532279913176177209413847731569765490443406388794513710486722742579625972461979332865859124078767561935852597821104250882775974738161039151671298214057933153435709291263633396452879327830247790297035098386471632092364623068454858536801036428047069052717034550359770992376004658493445922596576 15179160148579427066665688749608584358907554386814685430224899585468017086389173049981307205629858457671805450900728838046742222332745710039113604292050594172953301749127053050022819902499358422336517698645246505771372007790639878769307030585105983281815357688179020937429846535175630301134516060172822924695185455287198585730346549197213442521857865435578227467930843778024275028059282313750946256499634565524460396123302615800597098442019646559980978875122709221829097309381573351190572438669635182890143739875019702053803510596468937604333758471120796800354499234754767900682358181267351216042345392756240581471066593733539257766265401553860804458052124603836618291401136768897838348176540777412791791175668553015249222082023334575701769155006280357283234936278752490208380936741616543341138844884046463992604498489193092081134884898319820893469613970860326445730913360648998851948499456683009963671862381022694394088256757876160803417957943190 121241864144426146389662475489740292384909777088285737982554289100537085109428188039693154047712971263369689954710996969435697863964620516531643197065882219015973982264720149895914928809575042162435412211786104312464719293803019025544518202540868941783957253294833667017204682346399579500976036008908992006069784724197938994379852984053939790166794636835004543693239050893227518263830098924041885351647694800130263388587940650462443655787767336261001382483510949398571232883072185361468491118434462082969034431029034684109578889087644788055673294063657069113524674858097812022693233411535566412540046548122984050824655976300425697791903036456615876960846285463335675411938556043157613949168315465391153370024397801863291497561456298328117928393962457101106856659973776663906900864173492757438202413057538909229751591052438412108909397860591512192890644755788750412471118063644071432545445423536746356986110473519129945484831815938929520428769520860 968407436265616506488388195691187297998484755921692529960080100987905220051578991468992704565810120133755115361850395234502761799182109372706240695219742282227288879674795742592323268549357891445782956880295969598903608486791984662055105538717795028795748480808145414229457904537418470425665905865377170610123408811577452546634192060042863085668228002076720947624979399323321383627673188378056588152904052805763226942712204579821664143425241603852508491536357345657920008882506647012085108813640168839334322848465722810300590007535035393104962901530604817848223731203170965384052430697957955412013791959147679920818796495409245656454997517841522679562851319050644621164319776321291027235320965257901338417212318046967078196145109449452836114268166366960804503121613314041678956459807013654452825977810907587225881704916987389530303331456045016968842061699712977312799275610799310394697876696652761334910813951526448350272628081457641474982405351796 7735070443804317429105637765049124769625129523386475460193974562763450195438374020936719407007015083960882948157957265062756514618321469922839173800879250121654854210703687485611848249326328599417906587151463084346722233287922065257530757937540108598589859836616917219322407312235805838508620912491634264474338301907494953534058813976092778683374373067485670162866396631230708738356701346137855324808253515815916001897965050169159498112803917685317838757138088012754255783638690532767905174027162083267031938316237703968439942362872637453612782799176253948948537407711041931594762003747033034135200170089736734910876505214911360905060840688935330293468056019945954122404647974124382188463130521559973528491296571577891184356129073065715682896406821410693147193438038258756533099011818296529876230254898246232913159810032553695233600385448612837174024528339314419688135080366802127907763018848186296187441512030823850241874539571638321069184747000650 61783296478711083855122235880675536276055438611775242141574791360616781554770915378164394627785398871698734126800498612108862455106494505697500389939828786295652218280877169130990460940072869869559679190262484721595642238213191927823362095353382576308839025881412097529704212926164071093961310247246663304920392751783159156289531209877741258574601603487633191368671082639501885168782302199078249466643970447231809651581893408190903698861996201189578168388055177177402399099993790344404163861561567597376694939235856927961434551891165705387928526716166658885666184005343114528385700449627337041024637803048724108475756628357887429389313897774420866908794541662341537831514820180802859927541427468404260173842400605803153649967079535960643213692136381536271904840160445544563878210167257663492707447492817688126140669497641580062083514432621413531766546443673411049888938494486144430856671033123938552402591816397048061762890497892453138274565981248122 493490190864278935047508120856161627758033224365252924620137789251049151017166277372002385973689843300874817479866860924216680872632444381181881839752982160097966372047178439313923239442792147985946008259937984200327500565466862968836583428583857554412964413319125915945013579477384255944284233030030285416031150896075825612222174732012030091827432049612210841309811580302220635366767198283396965201810751326876456631912838267492713791945411267964116469535551377887675981557429040259804619794357159638728236194692750335939617040755609874657106973970336967552359479923572746823846245387844510352604799200982315402185854285927199242769374284520641636909102291309803586794368861277547884788060147781540066260972555233875578487701413611137872581506131925657153862807542055542430424049589746185535745574698296782971786741913164548278655320893346828313707232554415756709187655858529149662826029671343850485486893108771580367030067554363275371560500615818388 3941727670037619243635702915909516808314208514820529704665275926739203654345098279730560949973566192285915814772363373175998435464782057524360016258106643767720282199220463027646615480366313031418323844125707727958716199747471461907719799164357404732361493883207133308475359728333464870849301644765321127667161991469118481593747115812939530326860033724999759227155893226145057161274953024021948606584181662914754592129625684742753394284817266306896501568359191780244913130630384766957173987765642085891970609734671942189238306783391900375892341293406325888559903639499284113486587411519015142218565927197058187299746528863930046799442787701074861264150560737694050733635596174818968017154130921873009806083853611192349955885792992747759578551697530837822983716417356744681457081263085293589966769964150160109904571763498544321803027990469028308677411690557210322420692696702203345513530432568716860875689892479975775532703717115203456655622075587427248 31484394801796128494543961377554054150290880485363921155812728615636671943281553199932010653259821902773782755041708010996189012595014038342585858726462953135467083192684419810735823280663318854991062331742719378410551157602824300754646718739425802855582721612830376058857688620964052517743759947039720699476492919426469401973485930653236119646707587908904680271146127933454795825690765491893175053616418616682864478040740734437810782274975032376153020009299306154616247469304694211615698312260100476255354366814994435680203876929752179854476967319724409042464188001125753468088376050028759799606911052071529388757690032708255044973189746188082211343513278958701213830817765235563689855336393778433970575964059357518989851292762428135826381195804865041989114504858982813626674323874996185145648432269515557677118628930581581456609707276681537189916750751630412921173495554160539902966078732025222304425305788470134992105447878082999821034791531876125451 251480736891372974396160486522750948305759486280378907062761536686636180762409381455540864026984479326607185386431701241617943127279672359408255971432594529875595411396041727358936886066813234630908550821736754867798751224743039869810485251955368136844403205048792510844570027505841080730809208314284652920421666365869063346234626478943624187942474929707975552232910930163325497553985811304966986341498750636817356829961780375679043270109768148283935801449173294186764948390619599428258064763101918156363068171430464776603425345245961338156734500563142357078862851142720825789881028306229025463602771651651708542825176833540993097105351610117217047557618769454663461105965312370808490132477942056104754994463257648001539600992632420467796566808793985033146229099860529792516423683190939515976749215759505781995256295759524682849212278696415239245461235106512388360006218835793647490611079305234953593497697712550782237862211332396068912718241378733945156 2008698423211336539595194847737448941954851112017006132866639538308967136837949714949470197760115633399813192925762536911187927137077760278763722163799195508501654288801715368495679596264933856132247202960708037237747841112067207195973984650437284994077347825488792300090647120649092354066985290533838216379394294057079746849172013033685901797621465677650463974511822748085886782820416522220888116857233422124600846011049115244836018191905422023531273825141901539993829228805875307228338367486591822079533032606533726850132496848002095187023583406830993018891259834362520520832316800706954665841526021230585938895718791384533173309898398007941325425081853642248988054574203588444812124658165904754628403524335028894566174526645117559850049218997561434070732673149422441320194498959806626718371753014388394469010315254045981822848780533394638920987907745287104033521808015748469339354034483161780435687989692058987383554369288187613302803820204492046953753 16044470595036074608946962241135922819287609581122991906395434328658979038946911811345207157532751974462158308823436211998514638560995453732226203460507095000597141155810838607339486692766952080338357924223874816120559990055691487641542977631623026643055786702692346373493364619977839896599121015461966789941519796611321535269431614747530331744350408088870847796747777950394395001168728284234410531401955379568047017747656699308247779383251022866750177655913312595366964899726352276939764641152879799804799037442158779393641918162669299857423428799500263326731940817106985367193516659101405128353899619323033361560548309149260403166845165372209234121592160856392406500455540110889289166141869238574924539220468914073027671131991898010634821794392409310831295281079599306053228455337489968901765899166540845990776665578668331504271179233930322139417976152615985052513075012469567304166474921417575858635031322894337894882007779709928237919896830291500516660 128155332580984589005906113937325780026645360617043721067739614772718840149686297994779367533398634598908717993777364255527935351665133187214329916544674436430891913230254988679995516342110729132566545303997549746980541901964195758896946914037346070322810570251623290285777362732330051947999969210048242090347825620785411019372062248699254003928888519726284745625271179449102811669675201739470925064273283084118010070962783737110496253761599255243937108672364481725384151836413269651576077273357434248056663267397769578160541146164712449409479433554495338576081607510747972289467460951968311411752674278852131316914970188421171575309297566837729411022456896321341355570188365788024696715852835677483769319652785307751863351679779479792494317653879794848912039081887228493528514478505452183615785801176101018786905940382168660308318107452582603140188081645629462468136166465001021338133280518055092095948198874172575365118879315450336819730657671060608045008 1023643206587952868196290304007312038434102768445083141361116017232854068845452981474717883195283508630952891400828549784410855360141455470109606463469567108208831882833069460282521324872544590668067655181885645256819039498445647912421173765666706457477972751326354686194966485777564812014837176755363878914919028178224279606571991244365786769909519351828655742847052863261016089488890006367516748438820270444200683124811605541153842845480346966215664074262190833055346489506699695799954514860404783882108055432020281536828242927713915208767693681196951752741769124331558177607170618311774611434166350150756711738985420352544679069073251379206599517804017293094079816908103043437541566526074352834404123762113730829631904330980712684724010732687439604706557735646497864137907322044206475070195508411751891034843466025242696278713582513891740429369181356411937482211287821555934909673114983130176473505367106979023543404336568454244159654025137542191242593888 8176381937358448795300543791123679450419840907061114946753359737773792436919296950346703719866989272096298519201135625119765824681418820606953790897236977828379083283342483541876972865683641888779008701488344946630473941270131457475510341323771048366542929936403258851851320961308886787686416402518660999455396368702374444240714169270612390840237430754291108599766433960182309274438929034356067235418470723888862864133729748086726596928057781924280223107949104632730909706501296561307056373357137124370912231934288311708872184018433984149684485700250988881502287798196929274613503279425833216465343347809620360628836526672569290646514136748594733488328775156597303973318890679762397012993084469495177092952576824211883744918672888494509591775158943744476077031456718817919497040089740367145066034944994302236928581426689109613891755882708103318084053023509445871286541517092307815817618801220451763254214059997500572043515913869382848055145514449556264451353 65309200238119061586089292464922753369295330959258444879188192218673300404420718792658601906148828771235291545231427553889014685745262614304660431507825443045165067025013749459981996922910522169989994932879187747697521546875828432049986240703234302052158641922585313601609794527585432064810737139025978863199717242277837664568289751469532670100275442263062779404902961098306512281853663843365910641900380040011832805843911569529457816678087606150859455555616477615090314935041659826196089137383690285131559337229110244240828190819608321918720347996174838545800061582766869078280755863556079922651104136265405692907747542204327974161361693762489386914790303413289512416036176805815707252243524385544704149551297717741787355699126796325806006063259067637212954752684080428785543178206527393504784964048669637026729462131018703214651593470633074745730875708233475266800596432588936792314078954951533662176650711240910722704514570129995592801271989710198271183126 521660788545089302448337847902201204188724028915442467911243190333963842786403725191366276271433505676836519276498349402714692410748518039828353617777190463063313449637508320106584885357301229145966924921049510880417073962215868297399920119865357955435519594820728601197452676724342052907421845771447804375215146025466360468717653357407243589917072036798573754667723780398006695258210811874251670719099730157874534273593892020372075671422341891597397634677090503898024400485516018824370759864576348379623378495418615696022030816411813273156818532609840540250745192103610993081443784377212656126960154177651396851991282346836980495058206516420479858988641115996963377601297665197172484053785981184132907502641562239605418200165701253469305159427532801804985175792144652099211155970883791516664618970708357613793192963093803913931559763875945593130309915259375894054038519493144174149174775295559264760192502361328450241692082288004272102462231001823084683220477 4166799975773768248479005765680385804138437465377504952768350293622903105779025805692166100660385429186510632512315666706749417203590772234670351340643735571831445877350251126884894050804615229737909962701881963629369542520442793440276553376537294307085388532382331957943152594766012809874220612714902943682439165307272794302923251982179840714372880121495169820939361385387096567455722976306936815160673497387204875532776528768901814306428203536500567755122068187525502259632728841782472547369615384145209464030470218881486902205482474321727508147106927049692423454308555211433779853979796605085741457671386874119486989177158536070712069909274019174762632333334778564811665539825216873828446356420360046359003018886813657914380715763387596390946543639106531129103747384515676078594014290630522043364531253005459489862012469192861428087058772514826586099404989518949657276226045741078878207016032985341730908526729317138817684310857498331132359351012592026045754 33282638097625919812655391448768414576367944506918605647268345121389599459609473252903552593078032828634604160952154035247234619322442642427884362618395377314317125629313219101851832292514320763577316627225093740763240027403081327026417760815565428879409861502145826803357868383543960562553008467809370312989223130544226999126690649782078966876060629059124246947597258617171930710374872061525872894351442028309700285866097934392849188122216179279010347633217992663117050098787472977296692341717544486444684922396065606053832371781680643867600180470656856752272876362408181886696045006249444871992497524472421821698627246468287961860855057433638231194860284388054719968062731662140539818931378375291125038144662373622226708159772591832039296670360060592840810970692066629093698692774197671249714821235294630720175365713503716429778117836294448247460892989447201944643293395927399179324961425387832243242911399147737917853264520696772615680832593313436943499214204 265848039207284039431824018016431337350237908911449289901441406532947814344084225644306800948016828471599983710040000269901256720356508112092037107221269954891239913818922658811779125757350794255925806936406400088649005674053687737580292349629577073009276431985501401498833755330391789097804616129974485123701447861451174462610347035263208418805582418124489685646978901684414885001303511947799961223574798705764982380511436219694941140235959850600414804763405662169934940649185364796905305624466214860438766576493160579500777466209644110477957108900371475012869970443277862879863268948514462940742946122629569464363667603391281395586612193849598472981714316133423743301540987084732625079297558751218817506702895451012548742164145767192702139155701519855556084076839099769888146431878841807374220758579097683479441442975387362583068052488824495620234165512027735915760078579957789326772372121979046566015995694964121267758684618447575729327118629973586294032097722 2123487985771074302221920931313753674105826892074179924397146773324961281762683548736619738072034524342410910253030285303339864490003181876715021809602112516964661105691631565804028041779361209074031007682648861309932391146940517482388396953049345388251496725872743724989978099548833541901203288028040624796265804354586738896471861798845690511762911174302829499224011307950797716820611203000160536443699210930668907335267831320539077600712697025603350830960167446134565864240647324428971289507727636794467998824420066711475205982864465661657801669534972996707424659893337000658086555178209880066946134606510853259486695292588644800045198331126217636610175360066603713060432359212083443253964148261254199599334557465637183145571411277435707674078292510396631101570074826203039535680035647872323883571588426831835160061721129041299534201927100366345889534018710266464048675034635876488879788766636135886959424511949100625959700677075041911088845147054674998694854264 16961598613219452798206149993093886726307065504223397927280101462421976752554017110601073646268481414996019613022227757721093030304243809964317492656172935255139336186084936788164130168583883742048294738708834656297911553079371099303274203318621125958965587796081688190566444140089567577206449233040319350024237610964882039779708125762378217894131091902595442515419534144836028875445611948369458475978395908496154970302546249279156342347846835541272733019409528436993423446425404882287318683161609569189249408981269789152002121055930411223895496088340835131358452360104243791281117514975321755622425534679142518065597901832112118416440075761989382467361449235154369127747882894657343727465506132645158631394016367710835856303310347019086927940418481530487625964392807415623366552971321942917138977103314179480817742467074345997160721469324987009631519456146378561252452049926131078237136405205157222557753362713751225389459011643610513424343155337432500827624469420 135482867743319847782994358933635650517791216074051643999094368460730699460580847760094992490623040034706406955830613267725331953071931618875367924293302320615481479738186079822862506811094215512682923435699546000226853290533116407699533955979507721864930863744920612292442558049392295394061312769741947087069646494035735537199341371275847829802853030689250943626722860109673150725283327977794571063353449093988609984730754078099184827382671352804877821172687408186772228472088358941056123873503377791384071467300499710988711299414826856879923743656660106553658130257420541439918362422107396085350331050106528862806885089791434194980703013583718580646743472664307460890714557971477886061540437844885349659419495294084258022602133176837716657289031146301789727466994510923540434071869959080758529312279898026157931209182518050441881062036333204571149698548318757096816734994985345286759254415907059550518174855174698863624732763677329001780865511100237657829461356813 1082187726637747646937688769171078473670915527140546408712559388387280587640092535938497777690459564991366568941751423594286910799371090468452104884074042787909540015564306564597100313595819584713480264392124065635106460857001947992691517929529778429877614032135131761367212695544878562890140173763369171659269297532937335774508475327438937820058985689159016615372952513988670572188216335029137971383249350556762716002288988000801045625786607133098525243069513366637656322644043592421388153937409755063101435925266267168880980382558616389583545092658694869472659687393389205109816512127146191954845301496492735222244495912586470911709020502584789871932002356889107750209637223597930753817862463839926618186089140925935528538763747853253592204052733973365245529394031690063961648418894027957954253911382835585821274528620019595397607367211906051289057581281784937123941712504308140573097542822888272632490293208828102575600420928001723606567427639532713553388414188546 8644133209618892122515108057302315691407357948304865999599708097036894949488850793944475519144383901078187196666840410796712622634918624060914824224278372748925209961024710423038740451486465286561457226668841685630362388041607923905880802826441983026158230505869479305976826641629072430398645000483550632381493030313058974677832012058709456298786444842134294222139937100648367724251367089045386567132378713292817716122856243968277571636145509739700886205072815256252464648611979008405276545785398737895992894290825016749266389692402645154222961389294145292301422774891555476850052770984023069398253586191945270576963945965930712947469498040895307579613560099110466281643629058380452181137796371593117816315120812925154018623433673484318547504988685298654418720496405958028702248990911812640399957441816493903697637299397406611470386996146264003480939225061953014072645015677509527200045988522426880158226399713008441277399872809946808105514001914670594530276126772476 69046380901386379378102660260115356936394668691516693687276923452849231051536569181323641299093386446981192828590928051950891594285054995624335266186653090970246181880917672498037393808091365406565900858119316391859954709753655523474219710984335849025645113390362876863599135130566494888634715392446629284342006007222734793180389549068373178989928125585022201953872010472296641555948280147168605035165195680665255416488389311538140046270272961510179479558500267014122636450322811506509683853580133157369102648678369271395673828916068219010156897581400499083300364999044217869964429441546735226778513117208829426843333923057196894846739384444150732324456570465811491387733465109128295796122848694730044983914250763556086242357357903499287412842870805935994947216260433130572012990271281806425447027131357214202598744482353905679037987378593333305068341756591701209655925703659352965708491888006545290076826717209669295758495203726026830475791911209930754050270993107100 551519674259252920016241457807256060391501981714059655848212557633686738837873393795204038658041443147482764399100331975000004078300275004370503404835086427210241198667118312755091916625505889847082674155544646860305649550610332519438791941379321494986268943597254732809289012296085192906615066998031056946565748024425612776202716618933090729807931117721474508297686749352209872553855792435719360260690181921585318328917051265414337305938929009203669487164121926172957644362587888644533706979031762800271004185898669076863162896084014947251873757964533668861683228710219139877847407090247395823400382558407446981036485733672650657812322712973765794870669719817525617914020413879674352359965615364372625989795037031551740990501515901288882211510481879206074919810498042687737029847257269342369420451897307155115393227745228715954024567918330367837927495232859873552881923575153643108880080471669605636789048870527533970932720726267664126959281732622717577941250002818052 4405363195402292339504748264253565366444883816938583266443368913721502244419762175794865923531259466413440291623144009344492675314622887960852130453526998160150228568480435718734950280234462225074073724256965350198818688401486548594081264828838497140946922320616935059883751984249908794957185183323958087147704797331682447496061444764378943582010105384907045930474864608754134443726549869868077102929832458767710069383190655758822236204944988399553977671807174557362674163068696446313475125482295931469632111973104940185320045779436526744942456135342980596899697201300915656374271364812420202693266391562895143323827561814867784200160039326216445833567750438798166746188218874140443845105708594796153995638514498831093531031286602495991499989546641056633480647309607745862806772650572501936846338983876398445753441572367799459054903854453283108601807265811573593274894614425861982789208453914546831147451418909047112439962384958283294373785129291751458354117880067524016 35188685798728537250728983001463460966589335286755882399659008972275907970238927528056827505039391116530916505751514425648606500232143403148918962533803041863347222554415927825170984622593245828705754685205046753671508968383722167409726025068997201035060616120179522672734126574702236256817468957506618124076989037736969685684963651246658335167157257482060558984226251455520587609673418670067373731350441770163234001105204177752061467131951265901143909189707593757439314204173678514417379266582991884966017279649197524695487255250571720312076326519452059782715731602967997219364691100337434130570708389623815842656521963546771340176746201561392608259764546828852964797311308883749770211025592451434526207806149365474985097404308954926044394110730179689372164500942704193720345313726940261090053099992331299967296563170985114863215185377435934860273438633938338790433950200084586687977713885991108529483807215199458890197300613972835546686081055354295781134371337112404457 281076795251365826949479570042787833831828342801337030841457084065126074069263377585642954000505892199379935678654109046954310279541338346623694720887206385948955079514821810368876438448865690615879561257322660127248690467528509965357204718460674449597069105521810512946972964343766992786186280443653626958002141710263159557101678748448839424523074167418463388367323848071681520399032992487093932622487554231130387846228740359401236238673945903221427240535119245469991423238904855032093485852102060448269297170340424849292665895612871394353894842965839234455360587543160856459287554179726712523904159519000271197547495388878900642139025354379734157155183446548994838210810176564053169129392765539377017490046378908061363502891749489595164530738927612491747298556240169274732697940055572399855567930526416908759766126124967637078505273735891229170918401564014593381192766910960245715978197074619796337668801031032638172446777666375373290978645257792281853145827872220696342 2245161339874580551783407983883321743248427971639645049244965212153406451461803194815093057740918343236730397811961615942760975511758103762748716334609082551521154325073457607071967521882783679022492044671500379964226668306105392970727598724772819277011010541582021094777863558344255827566594762448972642942102978736790205416597058943439608724390490196816272939378173127587658217162307819584195184650754399977064604626391087802989232200096482942829969570312842582514333330862016765202521535394127843371532278432543967471297681283580521388604911108856675785341987142615168867282128702702711822228087899318592363627612067374508799441876453518475331072425413470312339243391162877728708602550437547022534777469804406524379880389760979270286337369327539735167737081510681672190211888832566035501835298086260749190573428376761011608430033394863718357009845285708584620729860132297123184455021849598353467428852807077359130643013203826440886505275263897755242537186934466238056852 17933734367882251940329974996559325591762142468577079246005545649076872617018815079084900997705724223716394308674483493206914790863155998182616093435599805659370207776094363016346965243555838883026726507044958619218289151878074711837350327787463395215591262664478259972634797402614173390118594326633089145516001712302425970801524613132251316282854468828556018696177896153603048633485317851490183120877736778762762384384157983492999618814687202056618767830042942125445708181844759646698325707501560862823663775756574083544750832984847388345706168537596953940980672549026408448438055110876965219940558529190345293494530943922410799898311538914668234064891649788388570163301032246594962120910034962843432836998696816879141831280119407030666182444351414445141178524374072266839295152374681998925159212814997900605691115825324017931196296922810311510926781599352017243202050871498643118133067120067617084403275377436746515322907925277988298690185470903435781965574413937285457796 143249964911492052947825224384531952765613324969321041449873357385876199527435388526588914537953042869428125880639910605355472510939715533737967388503364667097988582593637555584599397810624615579651908156524154270887315016700018668323740614348563879966837443178114419619037889068412512385117431351291788194536808209525433754663322674555553343139252230378645026756518945049233412684455736072547372408821483151929599448642622248938419828030584057933895501460095208130075543303410590990969725997325337441870131977784110709082149218120974912893670758686188011723233304998873310399621154957690136302530852472390809966441149049241073543403023402595938931771723049263300397946451809612718063299879841771376677203162254260364122221300078433739410822656658889141042348471637876956256114382801171405315625241413151140903699892169495385466768033557944133775739634250096951909853144724777490244873708587189755270405606658602529134760801456958296665705080361020159525893208270071315981412 1144244750677328879009109257653217064437995462685093887890243897495712877072411131652226563957855084634596844041618824158292570783396210857699078426299809876947043057878075837324907438372580561476839936489257660990558032083730930019601469059295108982204187026826783711856294411677447169607676296987265398348764545121754609991822820182181223401392243865251845535636215187293181484178757409904847311621476383120365020096026888430329145275396561568254198813505419319072309028228641846253576397678199694762341085977007356863532501312881516016469725860664946544274403735461358591559783227717025789108983130734131996810142520243796350643324982322373849617504070540881767593974188164916807480538866415521286713429588880836637788636604638264131074062521726857317178824110178481408656685714363406352625577299035703669276389398518706255522287363665849580386670960343381319136943211631155591731058793292186267278396427459860579580616393726843200182258390021469233724180169118126439143972 9139952633458101083441116104615550136874279274683872308982540583352112236896707779592348028299681077883730224290884364664479762811505020733139233515414490373848324418018894134255560774668026235306270295444029259530155244862171239380311466246448370776530075999739742558465769574822759596984384999540812032016529085871240836532235919780482016023393002424523626910333212749860139484748719363362942059093552155649463631396722120384736193471576777379516878234656052738788459661596679663493642104417968980948262835648477154695062711315514108110380282090654539097145294917819845849087949967892867835787890493306104516283255280013034544709476456673353946397400615434184796159720408771618472969749970003267496646328845328747131231506457165213069984311814946651114140691772298147867637910427715432718783394234723059553610589618330163088041166206801040570597657079487428164867104695396445620120191045195220217002144530661615209950101583072788737892877311738906096320254171049868948980576 73007852182433808947652086285800069161663331761058340040228146951108136535225702522348303812716134776278012196764087391017802647563022695511107129178112877018139524762490240613790261068434027351183064549952592538532605538972038808099472558573715843549637919235133336904435910687983763510345478509758932380511388482502266952091716762157548067972435812194636246129864491333687250894446771345943067715188267293136784679831041436337455034169442988416430400145608917277743022688341007373147625267160724195820294996132191384635995603511748976346537029120056634726726507992088289900805106755561126834732133403656371090252848061019035816798379877050698160437398076417241004527585568909151207711424889259415391881113932791087044801041304698384592912400335621709545134503165500897678093697593245117257105420401068049061409614924032873608838170488746650390337830424161131033693827367479667838425378173390436466481852637881444166252850318508111985249507203659251583547193625242639335320458 583170851731334539713336419322413563304249924362941689810092213256927420739631946610191608104784539066500740998315883794303652357949146627760481984400717027171049374581398220818350259032858574106585810920484999116626902901899710118462447022529112256027569611065899710181127637116118017579907672401829862889872557344572823186275524164231030757494283809484749247699150503293345538852198137396055952362355010176866758226858844241198004478512778821135302200204941071166647728031732465752077071844672002885903203013237508804751992513041899182922870731944183739862270645287999623097024529467275918943713432442260301435943778527880304693479089223746235732976463366881283648534822534210040823712614757453618865848594331580333387917309961274268562505995442772310042691620423573567968710462239817630538786085630759582547389950075234735183030022124519381480344626421756638868631322181813321334586233027119157232264279414594945830964496046342107575495170413014257459980624994176497640822128 4658248512147982657368379741716256338255818258446284116770165747333619084633422149810792386965092375788242769172014390047140951418895294645857944590893400599049256309979975093660178385492278130885267544893907431776283730471633766373548821508080456142317166192187355119236024640101326844802697646350395134064553162721256009448371583766041001027020135609027323113432748040880962483144064506517483625550277677190553053626533911769803519322690201961337898844579094098357917103029441559450010378109399276859217163558893587868315926424294007274303331279356131092756863174914484382144049739095761683016200474510444127500140537036127860925129270452336902188732743665893413467248154634150190653928825138891509655865261210963309713377225436436466927961063766305975484153669883263546746435405156311110867285266379103146150478011821691521295547622784508563937267734637415132273465736835198277625049027067169632152843409687525733518074299153790154811591044405434705767113031372950047198654612 37209180608888650184429593150748244517158083652064214152171010409021471812606097234288351876534863301022602195245779096566850837773448172525710073532916304984765866373693533798151383148280728116592783382683983686594335850183079077620094516429093388983720286459062340653090668224103989416849507463197880628016818222308291446752187700446521134536202864831223095385007106283568336945115087441967378750725367335659920083683959770755574896579993258978658378737471984652369903716977361001668545034289073925638710757842582887865522405083827034627365222559710867975578471976548592497231475165905423881653651547185278753978457488477967094487833170526700255193519711210026619334023725957677683182922754437997930459367522441882614439584228648008272456824675909310800470950485624458301694504811300475353656691413672598991997102414993589012713769549134562772287733649577836239012095431484501237696977462964301199258335406513743535722591166042391682161094503400228021792230752508939310615596400 297220092642097468709980023212428177453210785087590252349980430898895362339103023981242973997527992743129046434453847031802250064077451756828357940555681643617530820321488967698274284482644483157316766434361147954839951305098807907330183424128575199360521784000975477377304530941542722321770887784839204525599000776167144119946541932720000250050735727444918843042171495759945644868056620637715279521810331735348677857627020006039810909626056729776101463299551162360486712037301756016967525694832484654112894152723393315254167794718471358365282068103212908863601936074611631140695180285975493489596836942542847447349753741649147441764626077851304720214934121635228788220324250715035222312814209182611195046519321744540873849294806473777811720536348260697530263628726408548042476212605984726453723202932070950839650280781413859459589008330389047915324679072341371445323365501934183079965305413361803431274954564641283093031582974808475485037358442804135996006857649459120840350033852 2374142755048432521932562581676559117230186321447630479356761455130882384017806438172306932427492673911507150595004559096276571546108831984625777953698523492738161917829969831195370024297508158727594492680756844360815961398046551975734182434817199519588493992336773826135549732180348935583970742338868331040237526374781226858204385955668199314831786096581471420675788345283938912334983938549143963487146244603212592979580598007218935136830094721624286290196589252515099341116899416585844276232530346977297382456159929373918193527627363257282070807996176583744154386108839291428425105832587417678371448806832064594860111398226612070108374749199117735480884119097602237261143498207717721876264819724349565486362442684754357192840365466362836210841627332940998229847384268028460269804982511069726440590280017349255545502422291552016031420604921538117429918107295467238028049154671823065158122957636144492490084139568757452352460540490195155055377800801468664219999313269593998950860003 18964268569241239457700636977105618508406772212084378070103899772130416745724918172151991117890649188989754905318689052973453059294201096593286639097803084932652507570671188968248346405505596214961800203547091243667765794528926477376369287434304088486124008639902433657639271424470904007783895124223564542930517112043800795254808626580619200384241006747686112793714011661897521779315594582526980290574464245821858308148824007144027545233342094714846916648748368518846536481399294183769235463228102138750422363179507813468487653598194259815918595783254054538531252039425521416464758824994103830785310879450300054145604461401178624491289154627115470326130411509221177476487192837487998790043028906256029605293812360665648761657638283746544645501368085068021844552904175544709722090920872007560507931481754548140459190678707622212049696660574136734135827427026040827250637038365260483072611826928502457689748091310090864850431282932799751012607168258433375249139662882482505562312368068 151483722242175553498761476569660537193023385318388474068497299181280399695445659481776140703829839721312034441397674682719297652626957123926646842330590132811572422850104782332197750609489503197346342761239738282181663916083743035602591862456877585974988030944577390835549276058313117201805712786108148885133952951234321968232610623181351252834890542578169255322772143540489222722823700363534952361455119185142788279801894875096166138962429655333928704931267463300692424699968346341770259363573725652652708064532469704356278265600108257221678367267880692814198159779565056853708704016741999208527700283954900721193812665958142843842718083123727277463515964681835959222180470459844333019478130928041432846577929728084295900106692791891875091265455397477944492922327486335090532169935451063985047259531772296326438530096920097212424794638478326102749010410673966713982043089521465094255374211641311722847254413940352872792427230245206789364096437015671186597534212459063565122698134330 1210030844102178235874406793594076490059675296270243069411060708645802417062450593023427976418683433242007007526033337302167039442456231216283163149493717186197059617300793163365774651756612698109337008318231387487888824441369945039166256634334647531083002409703453685154230304566641581272610174065964423849387607132194203914761111962576343057158010431347740979023118008799049478217701292534094642946333207500035492917519557328177289251527883698183182201157261738981351485834112538979641463233766815088228818681602273984129881017119018584213983639961831325703665664938158988776032281470573500068303683151181925493738591239659002536481720715122134584535436351767146756276605644229514525842393788193197760344379062971280139528746802187000049294174829338389647069033056229429749975918461073244809542395259869245994749877503357486118828447484597668076728997546438956117572726312489219081402873868305637904982547476232637939347865215278789896576360941425005449951589008718508166983699075512 9665570975911630807707243333494381155406718777803292754729631237671820601328838457567617549355476643333626915696663287271186379584653978274728361199668927137083298839145656641847843487234800730364719240932824125420745035131663114106342912492723295206989987665971707706094203989106337198210767587282370216136448009580332080965619926474242407134579144956869549770498412773178159762158855607522047970449544279049129584460500734220898110486270622459400515390735593700158723254653364219196960089771213738294081278311749697082745927028160176852725328603094966577480662098167278301905547515175684622632477556935843061381892697016146571446244125425308529783721637823739791387668594783658511959450938731690393052461403353722054268682891611165520664732062003895619871675904452512679513898055135330781577565708445084593806023630512671744523977593312188045036277031059093219449118221699406596699097926522931940007404903198317476524231719177290729822123617684889079909894802418487006644407285573882 77207446190355438459904925149952315428461278984935205178858642620123936869792335742745044805395063122237406157170713586095621649041814973472877677542877284927931869883885576046250181981642033541010382425688030996918349827279825137682010580355211669010012615629551235433985198423641518218137934670451311682138376909514906614953300783803861718365598136279166292148716465937246246256908259557845498577513399454805944263246244647459664389003604021366089780722049272083467313199475658049105887393407599368508942822018677163178149197394224469177785117829666313744440053811555929308373798903848352372482476532471710578610970939120977819148232823491786242226601624361332705942409149794739861360312629426438081245635307889262649921465972397535328998544932145213775907353956753529924279292311316531981330000672869727974232764834501009852931135376278186563799575749751084389431653738728322448371537604977024162989544363859639471848827916964775489815084100943856637536412939071841931898348635161714 616724865790900929383901189357138509988801439890774044456346493160320454734181138642447882926258447086960603247767885845446958538981000745017547065959650750659809045181509073449954129004202120413191264199533848493637804180120435126400865602680311555456170369095348354113163227744414535092708119607034299017984748379852388911175804055408390275141744553440747363256275321626652080756751619374705422891213135751444851518555803763937647330685669708248491236185193545366737416441211069984369688793237509770305940679720224877189035456303542709238834840147930688711076789598225786824004430986314293561243733367477204609314604189222410567126060188987918685900053653059391431008776935773620182854192596491335717851457286181666021734124397433700496362016917280813884133646322805196269372490812040758291595561983589098296685231792829281648514619747225857177088914990729471274472618446931462938298722365603438981625366143661763800378428894656427179043134738483029247404961322894967330474256547163553 4926339389693776181298454256954716975108658532090036091448567972190524666207575872681139475751558848528668013910241299217657272849021359904680564634747719779585242863778028589291214085852189263396931956276360227623648722071481580649699194747705058766211079198192665597341422397264999583529659837830716463591736433154904487885354510445951885812771013527744057039227870488957268487709897151227992192211343482444253928561240276617230151904454906489839373813078374839621835154456979721530110586058327882258926533952811232933414385110354707761155008831893024413955833387089264180978088734041328065791758923097640995364967597507423010167809463242284122035722566271315254247638963765807099158308030775759402394877607677683673995632341365056934533452450490052454467813744836152991296513967535044519553911148438495939768157666209787789286603652927701324230951378622251370674541471838143652664957035297683605014077715432515179614352794795308536657376828526247932153401212406813229855859907240192030 39351183089053712051769170768407022129527528475349282671560832114268673191000702881630886145838935923366898829768495679082401137549288216868840445272292076218169936208610665013272088293758493531087432586846238218019037696806960319694591683852667885414985590505086893868923671520695570096969714822610826054402551620880269799639316910111020350542797448443522364514586246076600084410162094793433634429398370180119732731601858472739116683178653211978500525315320630748207968817413193912007717328383944219377916577472162262808970271306735606530625956244689420988551734929935964199451925509211100696513546970909706378930401148361391171520689047302919377920572728538562045596925133481235235840214934107905953267539262573501796306719445317160882597630198238835864097329538973125732618203549771793852155195792466596888540824633180507692663850189469495484467324338004629471809745540834229215944465671409429185419594581313010646846423394136494831186820334163977993965274024284193826007139702404329787 314334358767653431172207378808726914566476954605417386095920746979765220662566517702730346818220882102121043581328552078116067157824981505720815280393652049519429061150221999189249024792310832125772898708314385827661476959921546906892577878873510142968953682164046703227966770181337443119550276932187179516801704635270392580211959701414022482461471543573357026445430036833728022863944725451305261968000796000087931757233301209135943667209722799173913023936213863428061099278030415900137437687990778909149083700777584573147720626226165431585439501022844854559945482791028178944760811771919881699998891030788297568962203427828822394556472196400815043381185404629617602342895762846321095570079396045719213354830901109258019117621177993064456412660032812189801401663703736864392172637975464281728411921211185971543790713493307674260201915241966499023415677867973415904699923709419822599242105949605315151401976670167715787033733307011533201996850180601975335462963331586220711738805710770780856 2510883194311143675183995898014467382983975331455237593678127224858860846967625707564745808496958587391143854160371274207024431429057699058880845417225697301525283154689182575211654637349148046577294318092210696216574283927999834518107193366607924642233702062712883280424243946878162808548939648096545319333766104770495758569515177782583951056480543078523670365425016274813949190950402818052550495554102683947274504294260389129218704407541000403473186270700226170012477874078528121825643484649744272770528861152543673800918622667760351301485551125491584161058853340090936218369257544858346133089905305138498669685090623643090752130706344240299943811402336455063442653398128611927178321931688024068340492470673221200607109127970893887759182080545361731852678089343812949206198726413643800168947257024854867878872184490235324429938420540306083357878333099285849231551191232654517767360013811527729071493792356589646363451284868608980694527167059218893610177941224788493525790297503109234481970 20056805278404951395946374459984114217084066701524051863921828426369499042922654198434365146580019178177107333478541954985863382575947432233313398305024516391272388410849322941583767706428841680375695194614151724227518696691999998946048797414680689528365688552056078514991154757068082250453481736548999965180195072708734158654406488431988342750110465069718863823422673319778268245584368441209665443435549674974562512474450648377934503386112485952249835659690143520227915330370466553436189117055975313132978090934463805625608295035033948579077737639560677711034429333330350628062562038080107122683040174483766000535789144066395751582018217884568834679500054153658643156323466606941577922246061544570386292883557763324392849664850422650955475281263085027314629168414673641034867816920025651555282135524410307636708430619922697462360405341470538673354235601580822496961148224903242179189083555698372951741039718406628552953903724826329713599585266632453988882638011442378332136158167890933043650 160212943125075075739128721547189222035825860642520768777376716401084015928145767901841988533145251172717634801491820505599739830400447010708410974606243497662287602915614461514764930998995044703162529690722673226518859665319115372859238291495912692042382377584226056344595300627196662522558768901357534044982158876204085005064960617141099312973460809075180650749786927993972961752078721078269271861338235338721197425626575320585605008232329435215769654704816111184444213707337005789297324186888028616584942994941202987709806681924609055553781856729679724457585155778216919630333847871051970321852803215185908185492730602573803356424565200829009325338633674166735946628503575201022516328719859597109079343907966313308528906665312034318694792961951869767504718438494803104048481172319435002996985795491405194752976351333031628958995173719027078530681105728933887144335835251772748055409232775481737531873311561117455459355203983948953328114021945471880568393332858227653824312500937762158379022 1279776201597123707242659369084365201094541496234565845536991276418121911937348060754228207524880137182238166499970440297501987421328381450478465041538658461375126168318684631357222060505955273896711642371249582782192063364339285971035784151831261424292808458730414997075104558012638953965483452152897313540626153383403832586119713277458411963560087655518820213228161926370468390086924001395033126676708307941434377109355340328105589162529684820522812446031256146253223211415500855156436893125294717434070237550745800804961054444327411206397567647439343364502417456247581278396248445713660342481023971787627890500271307996516381199446596538281603282800016065773063710981136179965447641463480557792425563613981305834863530238929248757586711330382254519805177191736156521532186489792336836165092050493702506354049570298820179878130563404367106488588651169891120306740615120276272746143475852182152715085533128237767392828149303274342669540478775626049095347240057978001730852968510680957056475132 10222827937873825787820549869925401741432255357576590024517373302248622742410800494483792856612566316046102972740767221190118307954527468032534945667634260894706235159680635883675623271749079432895128228312854251780787352034846433916217292254672979534394029507560122967784742049770655658108200899235230955602595153992263325771220102635187248124873319638409607764156632253672862103807455638241453717765594990335371367071405805602717221574051095114558247470322633667190382077194653969165938712068593755691621272253910997355698275277324226645550380468969653508356870025276870077869869215968769740694690217650811210205641771788537321220557289335491359988089158127626264237113689344244077058565502824181304146933019760122780433195681455198497320829484484362837343250182581888123235910682762339393661399153109420408187530008408953583410932509745146761812336959756482039423700976455693867005123576586977754598965257399694714326937738801481605320562536244965967217346382125600550191560456614096063874906 81659865702611163638523192992089802551736655927325562036442177994759546867460621819777743947929273110920233969870661551796725892233483011287648121284146489606738359726874325910195443643534795689190966431790168122001899501856508768746242719137140745393476262399787564558241686840768367214738142073821850495455654225839597703141067849528124005041536686240638688456220475187549182059102521144986373608557160476862844855940591627538668150148264394967967822085655944136123237298107496053027662967005798727445555545205363208463462877504169683446151164700727832220503585052707948412831804361693043290283322030157951554872653748373976774428039661069400185853447369748204152594458983991053230592539953145270535018416848406101306848550147718623400794874771917691354871020415357653595153986471867249257849410732487232573264067259758711035708149703036538269483946587533994278720810556073521738189291993128152552523411856901834970309456703369105836875659044497385873648255645387631390721020180045358651089584 652299220203538463232901504611939392744567454918786396289132668718643796009255476721693153840713082845835915654199332249157951121590404729791038452899389512731619548401932087957210574818433975568716314733396716989366681158209658850169125082721513244066662688723869278489842813569773966759656485860054574851321787086465638131925254295182224619870353424954704983088465548550428962335820304869630498990031777309426766673837603212872595165160044278368275189781309937891645179063676695033430564402815829710646752890728426170915802115429617474967565069132562072736294666263772402688902319971793716250885503132188179619033444806879090001768120409635574954019842411766342674304348659847433349222999339343361433251939178649437248323543645475229809964329262200742664954094278316925525719843653379577555283807055362262068643222289153937914925833997743183160092187113901328338967656903624040168385713319553455978668817907283864522247467794729115908373869175917127205734454566743497327852357445314005589958644 5210574911996405649784303002676811726210217435586647890028788045657548274139639397695841625556252213203930030600333834901287620814288312478694243797850921017578024505896214821304652887624072498791058654453143562088986006494429642165645461891551246656681325970678422129639965760619550007853562089502936274309817865760572032984897169397191245748048213170869229723197624948854076130781338354180679628933257279448300277704783257966917636738201899367670677839129545131674121705202445331576884183840206776706177062727832948516131660464788285555738369741365899809379309341779945330573863022232055815215636070580310576744208995864894121679617311266120502246488308270975309844500396235946239800743047545709914846813577413561756053772759726747163725342167099368348923835053554494132987062247992798085400373233921845503703776516144245178755219647883548026221838988439879023029242881256230824966168019036362565957069439688172992525458749657107931811631446817824850385053447017807609732597298713301591644235708 41622198353228687282178548499473328615070135855949390697375270735075866372725120747664377987409470092557916639420765562234123457921729845650223510942227826345294412107753860916789045775163310503479552433805824235466204495835240372169502579081213588280448181791447345168960960750008572807388582019564661376506424873630166176294555865247953454958586289115408987173651613935398117315662448504965426164941488460769615124677880474229093245252781307678513833277065198998894445644041735599980664179746008238436267336295043802258583233326192928879201260544197784414346616362817805039600197912388672303494082839070207479376576296113173505341690063924168730413074422140506701688611727937776168034089331148153482077808190614576288471589749989232737105832576826438641270596768764392338426799600339290835466272993341672413623304316950701821921191976942988203501548416081837576555408711382164319645965146431300966765172666091547631117335544024260556699984155618130724026733396275345512133142936045756328621771485 332479574172252790039832641163033433878392710679138081834474959395530615402491233603724853916750242359894721547811739278753438019773818111179701608333180971600607763341205772891408260421925626400562382423085274451778808732145671583872338931922927521926749880660041212610057895440529910475005155551019793939294300363088737716870653226241747125447281590315110483399909747796029515565903969654438697366155400387786509749686075730321583586794524544429737264183063306090811813184406278589820900594750675509902161127372698674448153004832234144902569851411873752445919963967305703168141223849145467295950857924166236931613762812953883130667787990174480688218831973633282107115051774509379224838064697230821969405007445561524230741689806847228541114293935742593235054837146390420669801863738179505103003355700070794408118854188747442523918152195874470266394899111902337948727699390384479018288013709430380937172402631469925198399648137427399184319871588270942715960390971316432359603952381672020442938014164 2655862019819368339794124989562766609937787579356339475813054568211390021729329848469495882049435655057948812582215666041052475675664996250727685663612617595280238217349721635692120105578226055732477887469066943814066609873871501307798256324785033515547500790656127856120958613518401296640666830529186246251183900322652229103054031622911399100151513852945137083669185346047850654218991007115400404355902779827129151395721855760757901835288056821698537776833066364141197249450814995278261941746939562715425355858107753541252547980224132228833298808986581080649481439974680321208024768278470608860734111658079504077343817335639826781306119481469051834603702531149902888241221177533545766283215317298020304757036846454343953670745967971773646538249735417164598304733207793063776125485366761929798203056523963096937489883733273556377327124714688277227127080371531054403157896791820970801889970752606686966710488981826376560059969120854073577417759879916665156444033130340183675230930106384496542248493126 21215175541001618095248885852941534070045134423313977944635200080135818745465327553496325472305766696166093716100914333413234347479193802510395963189660944397383941037637561530186446972093615669809733789172849284151776403730652013031054499663194228011079791522025916594814603310409706063107134363375096798380879011611560488368906805428532638457155738472938947014519868550340643336427046318177198614409916801639901272153850711630968674332531259618901262105830129927143974816704070059802731831893847857076611197728543372016620337835396556578638267308358364266180832001363708622719750153817591358710804524215225722998285265085007182836630925527696700788792612381285506652324949745379470643467755919970795356222509145155594541711480233780739535343525172332362502441864736955310859240091204231328867261863612523345890701114558901237080265452599957500530223542767614882196191447632740728067523382761228278295164591116339492689487237295317400798244757746416688294898100542806275198546359898204841357112447762 169468245159735277299862346371357929425431090980944448437860660180376862063988751096863066385604298730906026468451315459561841336435735943800502930535471568745298972403290899765094175543195070378567485289147581462702952795919837931256493515664991968027892362881481846882477643403605017545672121730657604548221821950868990147732450211414602326685348665861065811584921672367340085912802703677925279301114916374426155531082505828850709877288154105471565446252601549656511240983495716667714013694154435734825177201069324327455169250191108520207247731441496331085798872422298193327671425090089023349269325416579224626743150200730537023414135206625732635681570707957752184445212784188403530141433276107388049032391614628445710802922297269038030208647575749528017118071145178785788613610207438013851811623696932140168424726979152279056998149267846255925881761515051384645152841622321271662228841726669791999515882047752055584875947527214355755564570262121913743437485090049731947988099158011151962026718279950 1353725518214062342461436143623532891411424724581300662214463797662944691368061410704347462569555427890054449534890818354845906946229159750085705146953597104679478370245280203757992090315123980525358009596710312069192086947282703882368601212123540595987080219084690128664136323418067400701442399531141512786320683011575432854181129643685584678662982809777847841609244010564744390871634226254425609360987622873380061005983421529998361168835541933508604501209975734546082556649176283602933518683987119585223409753900940725845797074316990675966974069172043842379908761750332255024836235779951725983394198672319786950018513312955829387308655842278615094398735108777255898019772846702142852480655942573702473267128415607727917997897608399203323827761875533372869946442119041799812791103018118143268408010522432971457917701735482271408460006878003041128033353840913810010841375708785813660608810010399798316284376643569458231608839542282668926257682480345184532718735902826605990420649465640619732557891881932 10813679116833216462570306816605672160179246150979880800701831070530768010164450128840976647419383796924219403473682988246199208659076269795626376300999698521020129465559465198619779470321504654468704382521122601857668237992362981120462291670636434538174041316809400314810905685009532306592416785929870930479793571642793049563992438499973031253789566684937491047981554750401465491483222937701708854960638151965749184032388589633802662605902023840418986766343302576729379963518979273092920632860165670071410538659939456253660299619120120305972475361979316805143949314953199017672329572437163370987182462210413141579256391772715944269357857480137111226204401134841296629989258425678660848471744130809494644641558852822361722318322788416089584031172143399211121437208535248717094427567943127849827643978122364358999092103242050310108779572806077454009418925374652275366346905773773425745941628948270092274304496202905029004387367899176962160423767836421455558332128834324402911697934405490221462454762514144 86380739819879828999213210515639272183249286152890283875425381638368357387979791891454462101491213308951868303012411410783617506847810687097512904020103378425298917696138547434351910720009379697950646356817770821338863529917395536080037826121457123848213399308419926677283051189535024386254701703876017157337462932258657856908872368351948472092856211083871758218426382683466148664364856858229041609968708142357284568852885666932129901747849786877959900495277180921020338073699156019393862669943429341165861779078782623908931201550964738407096873701962895547341304725144090258211308014345386717648720466306431595805423323010456640419565756828890072893446265446992682517451396810119497362732281853536435125590361952886981839974640032764546705265694038254792838206816198608306982225699931343584853965209467257354250833092927302604699347135212360031996924472825887816389276522937322973996508790249958348526469920959140814550023341049024451409978832343181866000174275377507843287459241281207048680926224614144 690018822533925595738368752229692846591577333881883251715448060768890933250287778009833161035972495417216631121119560311028572432531896539967131746707490265087287811880018632381735941811861167344892134794679426305403210812826435524753456703650201364645544073644224744861866342506901296405862690900367892249569592578512497678052347161487668805838453790620259253768235466404573939216554342739708907312648636473147449599479813351141455120893768238186132199270448031528832827064670870789582308724409494142724183029166266339232248538138499420735113128759725730500457797768640656451216181058522649977762789825871526295477951476582145742055369540187276093217675702858261474733245030819033289249977365589162809074427953804596131104526628775363004599286455634108501149326737743335687194713399999425214252458601979380284850998724574032635352970803230782386541000352598321632267677085605160475549404326435166825542246577635661453147463402224104123481716684322928583464259363120368125082548764086292356434660453845604 5511953339188852357120036100761666695577862271534833837037595446037427645811636147958885215019174381061248805263704785263825033117995338593841456871009501738798764788350499786075449907822255713942085957303386977995390444002764557768097784207090930354276488713317604365627543362428422903556815200517645487762294518264510210459575006723575501501735440720843977191927637306380397245919812922112547590464043079643207932544316981371808252293994349298531077654752083219049409497027086808313452647193197285300245969398099253847180478924106417082761562866140231210469715590999210940043924150873063826803969511225588338708831760509098163220000409659529912340257473422695088882868710329359125447316119164889574268155997856074445746860662484074895299250350983959686365425534894827550533624367493776169863693371256293790886383606962746225681155806500959062631026100720140829482094570015096055036223457992111391389520490702411747942804759288748439291668421297252782213476631859389891749622957679122026702336336046885726 44030204491709759732083417651912355280225251327498736978714124273256555936687406032907962536642047551879445880812387218414601121978044682061199874730680004940594734708073473573906318228270639468257026006885981421262390024587736232127442345399922961624514644929158823829165453787139922350823994479779505110426793420364728855680346042164295176453770371018106164657942326121884850252105826090345212313175552115871815148446762932139777495429941824125254226524910022222058293068442498132166624653821271412678502789597867158263511932337982994062457336756174402152034068912050860572944132223034939822630864958605089149524338587941393589431051656491975211440746388429703723078668299676934912180356868638770214854524606088592928403591651319234057952912046780041117106994779304250662926956204665844581932630430419242819777146562991714660600286394389025128412934943548285300889557799245223235959562919588637900412128192066457787741075935873408758232639773122082967566028161298044764291288671806356436187155339472261533 351719499750389987110208225807346633873021348463638014338682124098426103380385877884315827357875769241735995308426201114169416762155713778958214499551119822188029467470760876604055477527202790842530986460985761488397156995185156962831268809809456310712218253014462300231183817909087718110347092752463071305798347543891558110661214597633918610164029029476346865494931748640871233394943084053912154596146085868501543894107748412151565610735062051593143435318053608100598806682243729037424452487309426415888866950271141192881394309652868328401779261434811212296288406226667453577408395276730982665933597998745406200697003208117209158279835805152212613810630880219948093397000204719895394256997803964838022564477114676179939137251260230377861326401814263858755888168170701499472982708017704146592824911578663617119979262868098284495856051885584921530171669901126522292445356810874806800844398849489241070606077997162189435421861014684453961553477256687615259302716115359341247685479137763744800990082448708623332 2809588808890620369474727523044388159252156746237781797793756713238852660990690236339901377047445445909169813049053383911214950363538707699266221990532252633272518674908399702357549923960527676694469433353519552249088116349663548661169791741279396487527973222629769663608991241991857490645964623687595161268220197643370635241426980229392638287405561463876157487360280738172168545860438659584182510376279504840689704671929758037991137459601520144055925785279770908871899786859399315985921158783787607725759260443703538481852352402714034596082755793870793654601381506869666156945922072615732044018714648564795972382980578188417421329352035075826741398708024170050146230458008008075840780298024262258117216518469744197748892772543851424082462639397081813356336881382675796970178895864773578451928879113677960116131962653226824989732038721599944014315174702058332956477528382595398337978108273684668531759741211071447486859587931365778916131184250929193374511928201381048380541706435331663779543033479047521742957 22443451903127738937726555511875775326982888420147588197942296246321450608246462197447736545200507017446812485503070855090400080063345737441066478365989860215518823352359205539108318401728304231654398941849281079072733918333563152768490485726696715784068723479232607984479372080402910566749035851139234779620277137981459252126958515249247772027116182475381192595924620956606841588230707302343349774963928851444336892807169091418887336660268635248077084563736564059423888072131470406694870567770942282010750154576796380857158623432545454464040824405320787189344599367389523757956417140256896888869565004053794374256484050920649810303922590168905873282742301376011375476997528416210288205823796425474510324269159338786131967783396035382443758043267731648198401521423841330412011373138842140382115719146544422688958553775027178111059350555622120899946835290186650043114155740033121584616566509998613232363171426698616197869369928698971723281592785176076594739636478804689362512600586110444881596806697072993983540 179282176185390494361377526750297296859705650934958719715247784886941446446726500835075078827993142840001897575339591493641967995318652351589685374267079900258438832492699096049113719306416312220394568703027947012912676482165001663698722701855213867788751936434767229682252975401661152042930044202737191189570975616407190300739241304097575546886078954976297458054375706121374923778286369790444893630144679254998827440435959984594041043312399778827398695524355446690430596069899253117087590056960094261674586718793043360572061334676708040996830751272586866647209183864021002620880688998567897080097207490941516419532741706362440236153252318404798491805414442486749243810317256387769765007482955686543257320723753280607328460407583443702983483362137633733040766995611500545355243205387502867519490662983085466428052223209795006684588261370268095686954507430522287963554241500289150107190566037005602060507286012247516516469374901962106426132959837859862594929912108807192076860277456106934628460923384672667926462 1432138916829858096553850771750918498458342918175923233059714108784620326074884829379353004502478764986047326427187206681354332964384755615152190836117525469699031689167352400456425201510543522753701350425532599570873814496595452635824974194142201104277538284906705400978080844526208444937817782179987876435653674797815965542949777751398521560612672705502926238837079414404255817303309531639686050002948854287679907127726162043625187570460144561406216821134302082566368265302504888477563238036420640831252261997980550193970269390197037603331960534743455368773526178672636376109213046702444778671454110741193482075739030214521625550650716706273467403067814381065278581331186311635675648979286972486414238746518465726870698452974378682103407566038217373470059449205998413068341017046578668876616497601261107788947619355498946107614898671345576511122324070422813885733841070038772373520096977989538803845957956699967750490332507428744038736022331608811476235843214814155028752624441797347026116678635254047805355842 11440203420296572832625002250748715142830915802849878443757437287305972535251897376888505601977851634394181496627429983186168995727920728093395270435017935014946705819927027083590913402882308879682678587652923016728474483342898003126087172876058959226280980509444806187621129842460204992949039244860660833040674966461832907297436748371155760162179062984818561652405902301542610152344019810575968418654601236710807097736966477260728520976889462662370181376684458233811517352393998367580198310501050777387377793480357914315717181755655881173413721084270267047089691611301310154529104431445629531694143534329882153892572726281404782305605960785510284606299649055653384523235445607097616547267340819928555490388752976086031009152429880890727418775404401773324280289878178080284772624150690257093134996373195870841776535718047415105756974805840931086040623692839361884070977949971740478441953139808128082156350157529445649117688841861276794136208497038978051695221393418369943473800542046873384162644889754118781810095 91386683223603091001091337957142071499013276767179541075172956000206484181373861178427576106526566522225506583323064411522560024299253812404622474717930028447901514334676762791358593533651655359278053633103124281020992599027756838211739844180504401268366437895572799027420313237349155472723559605591388165321539202632411551096039527470228859290024523472845105161171745127823566240510125469535793268406294426312608809960878790956347672939470622131913746824551524101467468877638300588558617854657227040048971778085686060571111721526604456133858703450014947117555691050965695748195674720961265483558629793495932328552697061869207709877171393888281894860693208494405035631455282483701555556439039671234883744837717153397175003182433424920043928505711607310299821177036255301062470536932545179177845906914446403852606112910198962953139659722960559144341045712762684247049199266605594304908111274853102514961247949795842433017757173750495871573747834195459953649557154521281424480420438339869416171381772258546787057134 730016457807910119653060097101367303822112397764861684265668814751800064393742379009423722969419384152451557554965956276775524332351711075187432885841464026475071280859230130187503976937111766157356621120161611525706565218460503017065296769973593560466841370081347279603669385707016840118729463092084147757429168042697047532290908066488892200121577488671742179649443252126056642246967464487678412689494326415073571982875529149417319650819756189218010573347456738366348777067760334101641178094209282406376884227041866756689888861603207265446454794140620357315792002283594277119319864876023680972723298002608269646893859894911621947815997333934268749427511743852709029597806742052072680810125538874100216049686457013208489250344128669377753128266859825002651340694264292366976882429869792844205249950469137186754413408266717437628403834219131659037798457311410744013324579322830674163765897053963046787513686477652262841070787741232968578978780847922953177753281495660488125257744050561270309209094711549901507801805 5831535893694887198588721291188053917754903406667316423675059868957119864086008935074257928549688070274685911604147968462363841706137011124907099056651966115062559868539415353741477662532044375972233896661868285431812626026849137246542760077121848798799258333421558572656826814296135527546563072740429392714107097794875640840962311349051783720174875028520125717543814193234319212778697949474988711002550647033617060140846024088505420894186958376371944257328489713406894024429117438109207850964305630224626781016067781182266105906602953996308625055816573860155829287201584301271898354249719651938518698447020314781383070168034068133293137543058581325250663673338289613144942796016598504332673293826985668213859305314023118092432073470514941797731463537343417447282697582704670090955155909803435673999405991548592272662647806070720837212687710312241325244451553168607212058584400905688851567105540629636381920032101998842635446922109062440344223994066010944538637897512555214361216867106685269459988346656845439119628 46583682834576887277774817393415785542591103608676201200472984548836787608506507425336795511383795068068936119600458969475237825013572469246592365929910017829774667741044541593332536900197820569462519029630532332489427833215984013221490324712785156676831023723253179533848555700468427867482571161016157491422291230275678801235025440516104702194766781689323918142786684078387745665002075457368288580394267789236990920789894689015637973959546249808915810790490117814727838959870516386879750871217890533261364751439543446792090061641963257524419025224300482495835652034039289706311338938172096350444968108161168776798955109593815463908576912993821696185091753120492241858546081853668601267628855820379910501631727173514971042364729752771609373185414798602224345239923823792447327714865309813277837224839940802700086880384360920415325840245038081406727457621842633186098973677012224763529970753832405187264633765272872201056255853219356985417716189036662434256656883870584721125563354318824174987317520403177643486191554 372121918651647377576152081716660766658211275124473972539580564392624098498339563776147405241808687743871176636821677004611506240246272234109657115288480180094311445302474643667508342684558163270091238145706103638025883398577672251115147055032392564718773743203029167818090158788834257917109384336544113873508431401591063991417874349010520400128167979728959507192193989369687893010191413682924115792886156604461583413493860831717407494357058526377803753197682420513710161940302049356656059468390844648907270151531428751675641696137202269308758495438561377430070645858152818190343301275427371319909143972371426606227759709702973520927332694499454887736208444746217547590998040709432223174701741356691382053483536492089725906585508587862890141418125115888181654961831778242229149262089753477532567074744844731335860978940253834187992481892934744865871602297359386727800443045524816194746875088126611701756941526531105521396147718679803901991062430432684238980938249584618358128323216792248694207706480212447149330925758 2972605287618845311243274644896178771442562787155052427498466321462275796208683317455641087941951947359718298478386675113676190160454117048145886837074544779605514636916774554751518395133696792650868632184891337651774268527716883243117945069614836024808481522054626537685214598582447193478443869455215215443166557073868273420888048464524744048584972814742300707065030720160434898912273025779039519306163738045268426406701370449325446998732267963040931534390175522183827024159956449556554811982066650516181958483089491964233348716519842462343452700772388686707699950228353064032776756892383956045838207435666079823379916358511268216905990422357541611016444392237614839862682218854466381228686828690962352842323881078184080183932405937915720164324210135817506074674418306380833492281792383995765608968441799062092707520894815938233229048786865640363568112411799188604770058466803682988400392871006217457178962365567951445513559039116393825919156288937805388766301843341257961195133832257252594238761850938085293027225356 23745963867305965288652121630996131338600033929109211493189789501973538969321716830016004058519365303524894215811090172106989341445813816328908298861378459630925897304729440535540455519767966838771018406718384217082467393572304751033579398771875975225196756481008173112852918873745621619842096804240115170050730111305794518959275531147368366984868831289284500822664854089202377529488705822334233230460998409126390814452433749394412533230451461986375891005777030241534919401970575037723003805268472639401139331716285608403652621980399361892752778818062659600014541992003322676790866238480271530169505173356538425730902658817890944802046606410129822374330301051437435037088750689370883537859163016262535858376744896234276105992373094354678313552307085253112539719526838086896820278484455985439643869400893812839875264626579156441077771303774023672564649823306356620485618030053772359075678196693191821999427793510594033087435082806541444767234616660146964998917207812834985711276041083374980181698377302583787062984137484 189689337825027876969970826755234702225381068021470012946241292052977996891537265880287026118093243770611073023653661618178696104349924068531050736714568150889989960980223903200923890340945092603131932228410653473098368324348790330334317881680616179536441951462446168484550355678045004350056400477224528473528055524378079485454379513661504327732024910590860874474913915911657351338441041798848663440094932252663448901333506873548513659320079990751615833628090132447451879301345807878897200128192264048856033026702047378222272308303951188920103209527479836223840025517564349139761801890769674806523456030397751206656484368109210069368304880839911708321020894125373734971147746501513831238644204639855668897743448660280863926084898711858098539607239995566690084440158501986284712169379249194712471241767012406294604898385135656266711576525922806072658359280472675555505786877124690837095083261653313361433040295998792981066138579359424644098373269857500480072715504269242509206854246254360066255946273845467139935286776674 1515292935671114720048853246238406458548885511600246801249855372982225645414087843331809472002739618071139166246613660801245739029140762826535809213182035631382047439434759501268263738988500693008823885977503332843876640227287300626894688064790302456244692133951000322749654160548927497099996776994039758217770395043711337173982775670433078811825848827917302338746690598449683527957121891247072933044958778112680412338545381006604983757541875426462326429443023687144986564281187569494242788058521341776753113095941532936951041096086706791173003992170847449621767583955802290780373638595519488387572638404333672471365002492745074155823557738517155546327167112180736818663915088790582801350405372962705768458692355373357247465929777622565406516884674432967183685055842569458083049429037627360788317024410059511309755895608506220672172915446721023644887052887609318359084586281847446026551671571962801648721164769947497845139499491653632392644020179381913730014642407464899163994982633788433902735685108455148320721065296798 12104610959373753662699946898592705108979133875353560946913829705487663259340148660108368473614040904567533668827451785637550652534261138686754154024103037259909789309022025990320175440441419481758248322150247960625512142961369742557690651308495713497393821315425914924008412777261345603967215812212621525073817787892708719042134291901780205654013548063011180193413826598306527970399482204259617971036983070373260850954531280970084677825522394306844671307763321793213092559246939346177444572308846900199997937056099195958443083271544801130019415614385661592737941333939660846043496142551402787801891252714297060424452714176305239902814498548338468446393350636927125863449949721390281904739138541633267973815245470821220179260357724554902336241538797220759014794313340393242098697730669369997485460036457044273746529880355740119367292565665320824238418754444371778340794636772373516202080731160903998973288227841007155586245113529620663116904107107029463770958296070033417016117205395940236257306784079329841083789769723398 96695359271825615622018717823179745907526852516781521972998865655830247058559542986297739628643964178732776786326941633954724428293159859615662806638818366838795356266704651603215075910267481016412416945284750452172484795228038022165421155310778445924219764410686793548580337570242830052369512549100983737549442620209555291448231628346004953993533609858722278169232455778442222766952969491985314976116675951899740746387945714469212300154447319693337996453690404479882533121932751213128955665074476327590541819492949208093701059035396194010012663587947591656402609858910845063772898934701358637933677895629841309156262248961085078079665748327569988036746474177750143950263237310036944650011504837814478598046216697437303272473696200803789651327977665181172387062080926227729412059596940849216612819698887262669371645551687941541994535401096568254959787033383620290455408787032601827999513862401947541285505388543713749656350303955170840905888558613298282924803578126196716632623374139928074380214004644605827507307567271958 772433292857065672499998680127159731384194958738166755493595782996068670011722683391519777838487841695256948590929728801288925850554652819978340948052327760000867745569079415440620658016177755323105882754621339306998101798450004664503786117465870693342950038889720761194842739709557093861733631528874029331175101676754159255798551359181152120153240956994650372059170780693241521029230258757723167131560489815372946794436949803937782223483410565246120672934303597315795034580807606104328281362253046580837818799932529669546639497527063886377567887158553437285493300622832813336993466835807091132999490403141372437817256532203231500720477052055511128936749146227659952375080773874172835536955321336358420444431825391459285394535751001251573372003032208551751663392086705584018443308212787830788318834379023941049877417592510499620931095098364356228536397158571828904830593876535447508305653684882893507015047758580317300515526905664106638151819519543058985211382367307735294935895803442350086846583853305423720084038681299398 6170450791612544431494116317089656288878580051390093065631942720211784591430256587436373172252765074644835565034962981116318366513434406500925784495318463233068499170149707292270763108354061290592040485608384722068196339543835975652779612847539938572274679422241482924140640870493174914727562415390967425807872185241923869644719509704668677917864206934348240474066599481060058509200199574720689917799834762090098303347240799276851495177441184818555975209374309033280686016825445658503295021819209830944720550541139985735077203438310904238320160790736887627680181693479705517229099381319295035839907150046899397931607951019469938868224615661112767466210348095256421723014457479479097291498320423685280978566137544460200955788833597365840266143868913203955989032665773632874492336287163502714889298028924931467853788880872080191023001904683015840704495633622187702321138824112113064778508203115738551359895728218261518087449116069828086135209824968690944591999581111009178891076149474142121290016747697159799782958687826405574 49291650175812446078830950467950839590820297846701319524152437276770739663219187263835592927989059455852346113628860129917010422010556317458726511785558665686743550275018029050475954144422223258284794813119492848235308978932385402015986601949187902448965784000955815374880873227175267658172387270834324918428580099437788531420421690634426818797863356542703334099856419300266892283268384784373768811774038786454831027894594558440987856665802963009204479450956458155223799593411660587040685661922614517683739709192889832776153178443188518258344915511227504149204160682470041832010507037268867898150420338932665470397915134449003741592956205277073177351005975451780557609817769122506261493173609474358951731898825385302533454497376343788157233334257743156808865074920451288875040187321200572133020551867698167602771448163179679092164917329613340700263934046039129465764153653373285113345344793139113695708376085169550201516702442127601571913241411349509056946103743034015677349487280965585463981460977171920268799556558716899314 393758893858328199073561499294894232842253091869356350416924335660884572597974044814675300533260520557537111673128739045193827773710704672714938284323549660271956420555570952700562005762186047467190584121691115102039292122230043287236180933560532207110644659056663098535217224902421277632970965247027741717671173103043206971158597224408879256120240598795226654981016257999983425606983066446140455354173445144131034297152312784049326724186368043344008828080808854769416803220173178919331665365925389851136538171495524653909360757700161345013580196585913133043345417837093816334938295513515386246003927524701134986949591533801749651186329372571472960160008087120736046729536219089210069402104074234137610281774934059773031657201334071396455762095827907100801249302421338012166206325736025711629317478607553636267715256628373591652934766274697608211696147663271725966067810579026933763703447315118587257324385261426272996883770191340401010153688973428210893068309276657727151043939133337269421245862311074152574278082265813079662 3145487389775166836340538350314532019224373184603289532306187417186778467374284172581386463397261885238166179998220412209099317373730455333840065648295145454378161826367410468451177180384219168134751227226736740823928554035183844378866528869311581941674613970230043251115170668204003073761842494003283078290595356750539197851186066019386941436584205477083830179112478349614932764118956942672995249587324714764698102603745855321833654885540227759263238689561753423728819439941924468531797341245105335478568747408740540917784537367562391055428631449755970509534012885670938977733389241916869684459521433261315582389267674146688951374206253676484508102565228871531516251475182560051341526456912441081199167054591656297476189829117751373060749385797299098559996573979809898830325142228758033093746637841995381635155667069847330086274380490160552981177617049123880977432109562969660936640596807373838735934821572047235756798898290834733495654983604608631136559011023712347859819786247486854601969149387237943403898719839935741533569 25127314349946201150322978856941401524465995365240110851064759393361257905343798886984157009019394619839714797867768237996853608814827947730600471682677662530716494889168787075169673900977957096023948878308086166627833152325568680097575179023779379690446613312571612271738584320767726324533487890708223135962216990018869307167080125843016129749214328898447646497850777007309599870274017518221411635878693029343701251612708866267582138705583151698477036578141480041616206786797725643034759156981649521709152431894272073716751204898770996057026398185133941605897173675566498924940810720598529517401358444417249972997403080792466733240231898804413401609979247246294282308453519709585024263613293430080260201123873901921549193768483170345602774706200269666857839865898402507704873371035364798706873401579698125421688583652464079999661642351904296978110606393419505032945277985157654271789398234732179229361438280466038661217859412795465769851516304587484760191616269251014261460867235581868838751844911488796063032542713045905781746 200726517035258334615765186801728650432246269168706828206700754526326725047597013372518215781886075972857167140780625330934267315286129339944491014856467997864162743772043572446720729392995567461527055814040732443925342423897613833598422009864470441446028432763937768791332649288921788985652343370652301852147801173660689117695137316547862184300959081734969010940121423521281241440689635517900754721900841918776658440864282885581993124537343726189347975376032689631234433835731975701871531168205721193626840560911116753222161229899681484905153981107985055465195212546659063566143180180196184850801554854310553640039063287686433234471309155259862396748765946124774426478632252304061950620347986810010230312658082383097133128123670732735803563344349809367815740464596852064941840495874107480065758294024348464605680011884289224884244484962396904459720573274473464659832867228581957409498694600114389858385917087950483786897863126561428882872514908695941970150377456870707934477384919652942705048987474111135130052615107097513270885 1603481579835727419048818450337693572473560968221926778679595566025730783672860386381851965387888172893115924437557310322095629830585440735358480746472252291465768126158968938830485818660907086944169363627053863432022163039412426409229666482338366891312333296239283823508841479119765725309985112334474440220400687634427555237752837976301905129912048456328868160824424846331832830940595444938663772587352766994002842089158963982873106757905760700501186572229211409886522887924772803353960478012302001708207714042452294639455792431692366928927920957597554274459244674654628632101761387327578030276307328526716393015404618130771268472368529500715072595922589261032395723485165173291740863112264343860442068514589370798694666126696926663049947131090544250943195535551987425427547543759013748976713523921478028354449948043009855974046373414181185124684370300837882929637866275773317274809807298326789393447056170272507384468660767229005634803384165991859199503367637973559311125358310087975790164810571910509305038378616959244265009080 12809251453939793286750292259912197282519177973368464160499080535335746310044501730911574720117529813804509958652546342828543290362540901512450380816433109462873402449626007940496026956224339398621908640145028936602043123266182045455484371100194558596848974608087344822701323820708178685713222444276490729301512796922355256738155167767988710722158992418208275952002457244306899592228979736467023732599185737818490713642989732141293631874186260537145946948384635945345887264302825583404035521107172999025004700070247266331599948287669584778793518277672013286601109689195969232425555640704353667413277970022390370556115475255351095782533154190858561317995396190652309982409994181477779762550183818102161190111185662251193852971782524451002170066899027393545243197855876388632690322996469800282927030285164211434358367000980378785853012238642639860330029083765145533882338511821707032351284556331274982748916482930553815154477919959235029266953359694253719594624305168352214986068815667136942860396693942109475050972582958219803671720 102325547184481047139170209870891151828995700482802432041450541339285423739480527501912549560147954096405546073526482230037792344997869416126030128569501941223684724986988075631286573661420097392647069565386612664000025889576282104413581535311183620076565223022918630729843177997274756483893954136121234609055753878626441634453388702028286619878759414243072817077661037209439337633360050108709814458793342641737171193829347901272560452742117186806946612224317165017096435750595044981697980600280512243308438541238536064949063341186492607967241903913963607646020246425006201318264162414772224741616575100572465932434202972696652658215600795785084215118948368705254715602058672899082206132025906395470108031714497596010023759670067357129558708855277643296290257111139331709148798754288622350839682675158452049463559148430919432738189544354936920071976756379465725942430478126641184562512893771101644471416776964873744736038887374121591150839513739220145508042472346760654690064617773976797821404241566527090782566586873568534603155888 817419413353467812807260222294579382747549110257221614504509619159393870292258947456866254801927413083368711454231993531269599020863172863288182694819771618756727164750073608647109498463288163856146097271088722127199676184724400576487103701291279945442773154459433772603602494272919515352222495566423977309232500846570652634897505102099097012179207080631699506864130344588741069665632646810373567280967703229262434393249690581861614738027640642788582640315985239968016388476066194308491748821964147662760955517002793690813066493057367507568208303699655497073663930366797464212333889241241473571004600301312903412561239124697008110832609281574724171016055805607814209349227233943090531615823946613596511477243622186448300706244380224988003848205395928765508663117850221388679735136265213707281688812152947720395416690853566725442223673342681052605344491894355506104980194754323551371047067917916083692706830433498232837592614304303562437082346526210921684079407627607876783621324055639437353986543131357612795141491069771671081112809 6529897535416822294088083281675012025898161655260766473390424537942705901474526362758794876700486897357174434101315664239504825192966682468404958857507719118139523650926395424853186458395907614520099989893094592051080075073713433895209253662521816560620494610190544291423454671342372893357547579202320889799188106982199387787599999631022558903073014748007568120294921371783471083981324767694959830728324546759369829827604693904879309272263688216326694861770219513010839216075820477903061203311824987940978375581377313061160612009763837008425290287003484363310637652236431609490009082864848921564500164593465893386069783358513668350775240342893309753650651673709442265085962193267101944002418784322047465515228081224182531571995191577641461941266389368695640513665419573250199537125673491563114698935422137116535387012419849882815753745752462108829886874794203405556256693121265011054546671882311622506247376534786250273971817244307123337417797737629503455704839722554123785021481638232948714307609089153241045111353959515217549333852 52163693086355393728184807458030192441382212995186245295148236975596440278931256820822567696523168439532718644121780826981795181743920286903782263369004742467037298256919277261138748947102340862860213808731693208316130853530299927050173586114181236209252157148472592969789064944156043884205860735216704291899383168579978145949848266142900157864197703283993676899024866809939681117589874125159779081628003513163037888654396797839649831926474381132341799965298144544939111472870483018846631808281919988509179732841257964773418833952316008228124040658484058562755438310022645697377549189756306499653195140718713834623117727869949260588108394274077335983442315987651315113498993519362233751735742056023297448709942725262762053549717985622113331016025974611428658791052886488236413417217665852872938126551116069832877956091461205862129407563701125929910068566245160014043467062990135715219791616397837870069837660438550226625138120300347422515962715538499090104649597323121411635098958684808561460562370904697386589424494775585322699259343 416707042461642831699003263912455959030276516039754104740915755622601808007021913697535150959930816294966909397366376545110731072151070250372989957179443925635023392337239172031165049277009022982227459668232882510747012406287756331366686775393363530733134856684950643120907724142058415586928902966493819400015629605144074450909537000476362993633140499172228821335837958339112743540987809417605601148050186392883858302757105102246861392735049167284246373347910932116557260931994451470432754085478423992159153666919254754122530147555344677936157312601930264498194792635767193169285192776714221634499408110009843971747635967854748425837806762370241088452779859542951239302972720370716194717339790831468970928535441704686962561861307094393994622207959990657242846708977670708337673944374932616108912774998110415427812008855658367066133389690728201329744935126308017928194815867652625421985002548541879892172692135576512235531984222902001934795690246319422634404035502506201313039223993861454171956798435150038196488078232058117394359602576 3328847449193736477510788752216289324403699516613759290008044205114004734218916990532560882216388237680790029440226662704456087040032031450968682109885219041931320050257355977768505146858191533306108503946794413652131601473669853544081523957561251447856199283207267167092044434189584951512723769924319808741350740608705545987693668791184887421788687541510115234146396870399241754973727842466472518734932157419438029760454479914519650203739302167364672298348405094420130230570181517032194501320558300443700872792104151320746959451567216374040388102883527516392922238578708512041867435151897649894786387723814134379739626938680025901291443020682414993931348469723524133535306144264346220111309074480379973744001296732013149410221909684965654821416763660070549649246173212370370705329089758582784550602350156051543928137889299083049567426745861151243946484828958491824539779520114464062717942116471183502585681785039216517274216344340599519333819512245947904567628898442543347222279749975165849845907090029472122644211601204564055198067713 26592397205861935360769941078167519745601863313216233616175211552277475412872947885340624030745559418234379804041870264127910424447310546523274827634091896291242575431357742879288423416876229184955969109030111951951777084589408476650883866182137496591578968321357995740109162755150133542729064817198538025952514553061986776843685446125612053248110927541308467354177591390320767317221731858291914171731845153009706859415873469625258208931059899471345057045721661611260828641409275112222383998866483304588767095162537322626572332422891280107368927819954829119385997252800846035584508395539995977555577727107331353993946490559917557961485248814266738033187362733960984580918237062489898843421042478610546289453368780658706245817996632825508198584621209956366787984085281377087589431110113913224422593528614031685789720314769351707844704280762255971151640123307509689174515527129758972206662775617594018379034316488475411719899201988326466856577994460443446110480595076052878371468500437210470914343251049584342725311947497327462562462278248 212432826186032476179284901016713289057877197609396141388242659051127092658044165142343751249773023984467382929805217309287002449919377973861921261935646629085060318414815222978407428164548763540719534511846758814603886878071242619600004248985568414708420499921371597136476994053256262203179644190237713890792749674753621503079970776730771101591702905668346043611973956002834503513354991704971554061454596861153078777222723323571802943714171965354554891003074734700801379722204930666452198430287483551206128361066278853275509461959059509137393478367997542192554016105414626959969834913541087440896839340593881058073267615340532164294226610360654984202704271153980235725691930826043231276852542907433748391872692140529040334641807169829968851013000603480278138987019629697038946949588226737035191461017134212254923970436841170893125566503622584609582023158441650948505671594494624609357471613889174539843032510466950129423975396712633461354509529718442664104591974404726037653348101682762871122598628349557239765012509938674613788503332885 1697017441000482713733492980290186972049703771732567429830178177712831604893495942365406850428242840671928311734231443739394528554430851640647711134648803153770611205257750327037434753155030225898431247157692894017179208543243003396536844847156998708222022189038114483312300356732245316258698669277747025299702645345946610449012306142950487331195875206622652485537162143285813069987682950764847482264242370116959162340139841206646713246317519295965350831780358462573008955929142321845135223167240927803835896213169587098588949399624449133706536120289472558247406534753970049014753276995150934854363591744136661528259101212001908129649240232657959345704291565013596886406277619317854463342223223276288110877266475478058995097425221754599514716694393805134515500055314677048448981948420255468530474740224634306657653219961917885631879519691725801155990435890714176417987730937978899776829549068861612408727848153424412881029331660593624917485374361921446222611522091024046309032734575160414628593384438075578842615911567049314147055743384148 13556623182864183988457098907580091761525554828463626948293628152122938456272283399027700197406054644617280451283712588108518965541818816108369788922329115660972590342299583219030905359782745085239359672704280966818463523116852179961017238459621886561860334657114950862787719204062231445571904862238762489084085015171159787856240194582320641385404546308528892645049885600533709938778144900656378050289865473620010905808643774607961264728455071358190180508427275573200731084957045056090973519090531958820850578846203729584927039326732978580240505560639463640929366018855226368626750125406035365943755111303440260967417578263354806610934147511717411450799284977828136153700040404654455689580592381159101969039889598315018320544383477060904789173325903213304693685184350145507723036198378865398926505095206111713532353539408130614360172773326380622693599709680121435147221607789856141399119710719294107796644022002543461539289898807941383836380200717705113214977199830847062539434716337940647731739217676189302836125483869833644205532572933576 108297213585850047193965306444559380694460569644873653490495755907853967810634507506845871923575071919230455599193736432945729891280510785393097761777890477763729443399552257260170838369213244536502668879391004979403247593031650678814147255643536983839844938369998168829064237418656664515604714263213185463205481512695102938936356593666516883311351659596184271523857493267407359105163156045975420110711074857218678159388452239045345599888998183013903398037780137460903648921909006203427368448825475027784991414375257928192324861190094003867643925062569356448241901084071506989606279295799409036603328020530832593830082260335403922310123032849528606650509793774665748197895132864740900665961383639061805398646167683096381441986823772836574397730717197738544150253301543436000228194270654095364755167135469058289006582028583490123601450736397197092505331231590553959920204818680071274436193187437320329185585789029586462689021940349984405976517908124202800124344437226441732544530522049330416448656319656947476109199263414514952251523838917544 865134395674954858114980307631177594151313394042428842107776746360228353141737422668141278429999628176956188795921501094949914208724667963377011954742983206556535955861286313413638152344087140243964960817804468720170965698242410816432710351152160372983124493242449713947316356088959459309884318459021456532966779823594005139743257643143087663835257017860721549747881198217226599168048521161466389494408777807722840519815567196699646866755906666148527381919515861063465903155744912228863064036117600897296061125313624629459547817929584590403612762923092041219241265092713166492283050670436420961662877919988318201276099120734250423879925919715451965830868718552416213347899083123573641483304060586336152592208701725927525521512428680144786222663435089660586858182815133424043841900886550817562181005598795459274809003499908375157921669925148036567197421534184871215242260141849076575098199912869812241715794898445673853160390315461203587939448860143141377099932139131200660621768489520057508855065788309568513991058665434698623006897097102066 6911151485091384130385598489624810460244496153109591529138922990195605834732582437522500116376715336705968942639691410312749660339869370230889869841290668339251940698397271330805364283851489739981213127344151469399871602724694467860712206027654327049124030790782249657749814582301828927611742474949718904854792824535779750845806600147179459881752062815062853833687710447983772072237522277344368802450225628313558454730950187340525143412392992185701514795670870265525730999685375989339631296647919354866474407493419704762450237795869054264081952643002138781045292262811102484342870696858957866716684723214429383264473265350639337703725262836936130082105695680193493295719363866094070185821162131218933006543313656003987071434443665113563015445852014758128304093395329717404241653102659559401253527493257983786018118981928802806599964146067992569769461207927852528588776388172109761853165554154724612049198040635592425058131958946546720143144068769307305747526576770906987323256576541710613256869070839981260334159743950888952632987630501930582 55210004452870466943731985139109325861831726865445686180783606395329563187604091947633375718222956271364654301280245211150740875357135116703920591814119816958697351880849794326364254016466975293561242447220159445838440414857368007056730601139919817939816522915861250930377715452066529093288835258267986550100025962389254017901593716579999368169829617633149832367686168146432521404489943889739724899297948869790363225489986697095207604004619949450605847553211738309794782435430188387616511716079081199130153707317261315373609137196293648046148465061984319404770659929921205486966277547756109672803052080680899957048150822094142280378675257777422621235250030880799772216734280503017608749465434783020194255339723917486305238923855519281258642181366169140683745142683423164870520772046565151619073427711757211559512838957249045709773823115735703881238540504933841062026241603614076056199310916005187113576715805303801601248641910088312641682130800601759020160283969135517997546850962989539614348897529586036623089747338817115090210558160321639895 441047827729895961381799593952350649212560629365509496735635026753251008649271529632459556117151166576190534482257863896428666359522307898206991970963461443523797346695571904609926215965924909475033158124040433508152695693220434005582995540426629762074575226477086947325048062952176682389046816100884903592444967982063802999165559318085365863281526072308674381749921395536489765259199727238369421011928389340509928333650022458052186726942607473449995826170186676749627734374593199183143147151846268418685987103114874258688207007109236296266297495041936531689219421469136224434279516726332762402012306792062285760095522748319380785200415324671630370968884123216026893760781233362152125063723185203919330304637546869802791689430101157260492602169778457154241512632124755434881176178859767093219741544352913848624401774164948602143526874136600467629841228411918660936411163687152304899574411193413466387585819193133493894088452820319687265818747103709232944753200000680625117614376834574306037946420055007891057016670912574439787876320301976738440 3523336534383966462001185620528362800124227641729795550511700925515927103641476448904263527163592185824214777236296758985148544387649000309071625251590013681747196779317656387089122646647729260861333137729193540540821307144216421604311819566377775291966672513352946104339358480494991264615408589844557912300196977331330262356392301599213225864906262772617813911758294200502551313284369633245704266700381561832030125835083169814124957613638536074125207424425417938871683954068444090463399462798333516263899103033722950459574372126374211660840690920258766945412776367027054846576083723922906370419580051622819473067223200760845430806443925096857309503064324970685089758305941140262375408888032887649497852879670566687955623025015496617884241398790985894924742406748475582604319706287882963008590936135411716205621644759779750231933204738908557864436353616352244609216957086645626015191011697824550999573460713694778268176282664226876076019875889029772416873921407438343550525108729481776821063308702092445516353193886322182523645039198219110129200 28146415889721690640198268663179828308547902474289094110035160454169151587540402119903529076467714010069950375772021145077912434835280319243505740653896814127696371255092861285232161382657056787090558193128253287209433432730980955773733902944805062599289611256516362607071391699690522924300570201793795882515338397391907102196791584831793846139111430547234378201027891118445818554133107759023063993588817410260627709344940105847890274933541109075008226330479988777350902474015106105689117008072715958737899056957497322139405496091608441988724269588659656606304931834823916186594476676567772113832613055538945166764019521151195940321220127561905431019301009173074674786198089203635050160314423404351239728637680879719764002022685581500918644024602959854996908324515538983098031940509069100090607803999019833381320043765707562975071375542407696109822216073626252750634139458152427569461797809773487631463065865162060427132143018877724697427275990901852058238697276739054343207876548564778922561297709395006404121061033845648306444774792688586861922 224849852228838248868092991954782995537524643622578969807249263945381094148428071689002983823328506539483607968435380891859222080636287802971568424770493041664946418715714569519951471618849002886512654138154417573938413354419739769363887971298996335288984397020312190865219457176124191981388936092777891472340575985339914840456615359863782048525447284232114409793570677143640030828124063082228681498765252204267377895398506279973455481497308625251781814701391069085519465029758673340569852598150091850136435572755798725155043520957517105502177128082130874709026186697506104079595864761069732172611698446371063073872239288378299989957386530188512353092852520771621424053176598214390764244708842357225030393286096020692175734394019102631471090561122816081604035916201599571699515774741827661725866897866524653231162104675290258811081332505216309144923797320390492035127737551924596763586324486509579070596294086797691631798387745087904989561551178976495903356308023773904159887666211316678424386646191325308566864894975117761783039278044982559716158 1796232889780584675156040277624056339413342284710824897996312346880408887540627043466365997060958507913156144929910419319668659264390230132823943702234233805863183423181539664804845664567362308001381753205957304785323633605702789783269667488386848168871536631372924161698056384961685162897774160123898232380245416264926560953736476386885018285167269445216430815010440920273640458113538123626352595717918564173326257945530887473748765255335213932258683969678052429457902335431833071834235478744243209796900341990967797198483831147577157639470103760284524420462765483524787611733370578683994290825100980181876414844746915335978415809356914911474144840143490540704051689157674638415690881309148240460346764782650749076721635794340114482575076085052126192679129087917035782625519121227845585352305424712351730441382561561399537895439371948903467874577895544221692918895251420353361916726759584091795915944407142566332789861637671304702281015911540581727703647068452151610998366880770314751798065223723346597832703830920399119585484327120002122578327986 14349382515008684220928604328828197768377017708688432280748963133038526124464538132403784810473613227422987309456710910666771664279786837754924740012258548414562950028236905805838960860137749578552349965414207222339007721181900300463385397253303335553508323398509994116954431460006649077950253838916561280524054536935528886048494078131984582959881727973766465198690804602022982460111946010012567239327556106612952779207896662115287613270754296437645881532801979575591747602931073291226345011188813392663822807731810586784558664584927654281597242805294132042606239567654155063481148881045111975447594535540312518145529094069116746303200085641762027154276946376535022913209643347338125196116509210188554287755493723892528070318680599972075353885584527956401190576024710903143816483917232972860475985406925108698107149797590201701236866742874997603511497194243647887080658094747770563022822326358305080038102034093904702270890151277064403675989839111537086398755414604436007330252760778161970604570865351647729136063310947701652426922102882661459779182 114631588689595712386682026814634917661780241699855929256092748629812034678034896795106954654977304790500023546469296474056085922835566369414323934405127441507852406185312503327007434633470870402301889865087347891631691880685077742468126407694830157736029516378904592621283324599571715365781733222312759235990851792032655886946793869176954103037292026175934923102577691936648523455130128308821774083231440368771871938329913777470315515160615723943815808828997726928505264692564046298326521260231604396736087972895485410270930132446264366449570951742827439958115893167866698826814655341496476787348815538436781450845761187425613501876492498350828979784158781294582131747059743129722354905152887000111164444737739907403353802439406064111773046688227080687553356272647443256749691834977944793632157384026060139405501846457963100176525459206111789909091444899642086630188657127029801407899913291446927227521514652622981161410337599064534559153879293149957002874386601409449336342057835298964900218815042691489837536448736576976057203645386843059082859398 915747915882475097476944617514247769358749495055324840785030449860084108385931131468734991028933293033710777567625828802736835891836312244893404683139777575483610439421637616017909612893510694611703156728979730448788544594046466108954945164381555269567972824288589337639764568828865619746133521062992644937400515412759657559714720811413944205029509109101903098026843095456485763868214212129419301492571849121268773113644312519073146727010208295328879135553039963120502567676480846984334192784855541454550435598914602392946109797289852492867603779660813537396655262059064271845929143278632804768787696018059451800965921932351839198406223154286175823185325278020013126026467683775847334383293011804527598577717080888442759507029696507188119191958872518443950121238171865171745167472656739292205714069753757159243778055833722241274765206428427678577394233765533601646852373933815718207283337136416284702132376615615662641354085622582823967351345960362368021258295837952213625857329661221242279266458985240049067967117987050369264961182375133935799454786 7315568725928960617627515112029524855936456925151992060263790458623900221890419867773636600417639456931152036203961658691847895828260121967532684576468742301814810515996293163345037623960366205694071601570658748447073211665804776483934150692843677081627604804162962318878499783291502022646043103332466149116908820027989680787935977868461646914301829327857464327573408650749544089526374777420533694818077497854526032086953511770180963708068551486010986011532523457076556276303527847647479592250892824130192975205609509995141206479789118072089645357773770458367067590731454985789592535671473595399888536985602538483639825643409434034872663433276776215261244336071785053130769863419578737509436346184812031800465920948352514144022436219932651816208115947392533106175935265088532866795459128749897177465369180415140502125271645176728371026963034617517909949334098793392969948322980634330568134045936052069195977053319156874422388288824222882171461511477508884412536418511878285330907652503846572688909011074840408938982668689714919540064930679515817821550 58441422388045236138005168080055723782738756277171583684798501357161542789935814865061165401629493320331578853758307464698103138885633479096731744572809170602861847285455706002201358689212681847153244156328182189649326717544012987356709639455669380432383405890240579312324411266958931331474997507863581469137148427542941523418873552919567103576102376872662990130506002067515570844627862293675808592991276810995265308476905898104584915279154801711842001772312915848273670721347046711847174009819795002068533986861265133020561392793236924058704175453979760787763606892549502472903629053942053928616910502109041477527680712406211484769066331983725054018334303771594747802165223926399270945987704423793158378479068114898466001173856506766645844491521281844095678292804573285634644656896674553005908901092303964957481669067322882777549371017802642132462378618600077989056382824646717617172395185542329983650381911584135616612903183935153096368245607712334687353270571106869887634639299153520274311567085177964661128086995664354408042074311829306830644548974 466867870134339892507699431906166478329104765981095974582746787759315994949373896845247388300139712575357713703425558416420852783679680974952382146063052493593439725384821487178560470666381204952288327747864472548810525336584965647490787330881776282492642886452830005589259188946984292142455123268720859584472372855077758665489399067072300335411257472577937377524393168463530890992937283838432739417623712487864560388156096468486060524924445842635013099702359967937760718554561174602996695367064041082496705591146410318971115125220110994137702384897650534962911711376410704605493970349290522385937144218137070379525135770577106410556703270448994586296706644084041726796457104980069427541711743076507051348343519394018367448771201883224569046177213623591428288195359964536836108471381122572275277115300045175324018897692373691652354333766771182721079231935499213458043480876153100703389365733215544404118591803433000904403995882340156335633230794773748432721821363391698052729899814787911609322601980726075657444278557223007634807102426863052844904669146 3729646934687776348227787282649804789475856331429884464489336315229524254233811180366960276665168247387267588329663637986960604948371658246226915458543796461879295630941432375721095219555934617573085489095582402948078019970728828559700147409389933070368465717503243517895037056435664641061291664373440141709902092796739942749905108040764003220682351208948628960134040617086230702443745117262951083949381511748745645288611904971596287778664094205833705254071971097790119629139852354697972575754734720054372385354215506553463328049879563720178272392047479352074015272697381054244370406116370962784023815814338510087354710238984056638744121972471511596598985799224822511231303776485312458905720597281845688404875891729145555130894553389300992792276494803621183186328126314583208696482809290453807647604394295469057099960527681402222730228701676776700037185644280212289374229033819470294326541560312702732421467609306576822760771412830905344570655866208844849101264031107939341201103905681574169841369876259511144571264393189875752383646915219889238164622069 29794903328931164215975018648643258652393567942465076299603745119666583682329390890482739274559477063127301552411273496578147087169131277632286270822072611711323389656631512660775125374325598120019173388102054862137979506648337602737753422404411864645134814168514925985958860241405437364755360575728885705643061922282744310565748368971073571482313014948798183748793561800549748180526380730760001441792526787776314023630431887094347402278564254197251060370385767630836665984657013838115720502685243540444868076717672508837235076838594501548231874762947100544392038944515488902205138787151352974825862702366782791476233701531105734983875986340817032778916915612815144749644393375262166559244091428591407400684517854485896771857975442861645358842488671126337135689449446459196318026885481039769485682519824612230197370980722660496414197780545282687567053148921232986856797327177018400723302544724249956212225124160864567442921170851695462004682915990560173357413867928731743666327657118910379329619494793994281734783371475926420458508446194027621435786741472 238021815548917578985380500639412566741628864218135515819637300826187455109896593786741803761931745370673524680240378604245339246182678302618099185362512580166493122064956097047876143439561908085754448247787760568258000051332895150316884797589982647609846626537139131732644088347275622546623763907918812567244300967084049926617816774672068112105793324281003392508794473762722889534034185618414728652124198691301116632925211850811932980496902004935086331712412471978253329166482520104153776588943875309332000189076747752820254087377782835634504797247509296955454619102024614200963973250742096039096920941314150556623884478531354984215791976361077008359822798747790921217798723051361767542829996973170596736384434395267485496096884784880469653025177879141402873156472998472392327317924403821675227658424088938777895747466032748246920417530091040682866690501385008743798504075906093339303211038966377952333689489491650798344664977565783273374306767842598352256559436638873096809669683692695506966663051239366045237513729222947575204707756857101312195683355855 1901481345501991377327514563555499446731291005797850848303644646215076429601061952644756214262477565637934813156646421119367732492895870871257977662545479522277812943205206839742177155357068185671718987191360520642387224169610994056330850812909400217239732183057994233866005757472590978600540837353333501611278724200322409466201993291454426812783130214056937328128022321063522457736830214464856825887563070545833295604516041545888150204181655148741591187333102536090575994138664158543501102045349092111536202790789270456495500584167844639758959177637221690205285188750162316435544007738229698217236664813879178780003244570479811923400590890523527054900190364915940841025829342462793416900469990930599208883838476219754638941317016349019184167358860234080597000964470063563132461157381879087847501476221790999609473474515006261890840009857697600845196588947184255962919088596568439682000363594084553424738554590504078700238614298989385124996293692161536937975270911102389047166908465413979874491165481093489048463754158326410236031982319730588838756713079068 15190354059053436827221484885173705383167943598975083533179029945196193268507880556928675559309448441496416201908780915352082040456313055800176636854626778267566791588924409969237441990789236149141182225219344311640994489769551560436238506030867055310595926486901262632639759154038253520336914105145972345528839202879708753681509007735410085198145518228998325107680585476999726074276696270671645547999964899689368353952970970623824615909859156326168823399225753777471598799301455307162513384804698401466528444815612032790874945169445298240319324838942678510685648106525631957236967030734046575867777943833844149343102580667151233850324007636072983893797564230694581761302288700629816744402366301681683205283632342203520829050016987517135886316616721298741178774972595857557623905557144927395968908664544373710592195199189944355979935552440807322612968717510621804116788470972603119690525699589512893399487791973980570869646767115054088308220439199259970246790607881783175967712285785392913768501691511182626852779749533057731521616263024177454808248733300558 121351247430636592288719821141131091708142880495179771526427091306153345960716805712680387711058071382970283725852770553830439916811402007811857019821702397141605497746232298174770665649434748538406475937643361194565788563760830378749376829393760747080343199511277705522988646049267369521197766783731869619846541315417745176837658209157989755491344420559707236716469059525734269552926540526243177899187490296773602580530954533502777267016151283991357098837403143516983179425665770483006797192177216613043709377439606662763531613124045728198390000853889846275347634131875198581360232963760988513698474285773930201217502154518833741615509202251196933623667852904366355526484229823726255048023367914996001503860437352960072120289708756616008369216992334898502951565967298747460366679095754802951006099335978894973057504485698047668966842248334102639039824028048452999456172727622527733882197210896013112545805078341720308164568211275918487390999540610995730878729457493291977390976382786007781076730135843985798397382687274537889511665013297009577578894814874722 969440398241859666546981733369365080235266047661196879518987916338718191432607151958043614044493084455110029063991691369128148655987335543143642294925690502814589408983900911086190093360511060351022302645426726474008740420229260156138027223513398231755050703310816890065711140015218959398425018832222939710883213866994792048023491411363555143817218315081332189428278552772062262019005813570508247881260540778987120210808326605053154551172120801849344641063498983055926091296413268297078966734893673288713275926617658087457589925878172119216705962594381707308880930645184966240921582404243747502837661915090842810543067685579381996394516929270738498989014400453518918542227100300700803677329120382822909358456874252688365240175455993286060969894222771357141757027531896923768986989501112092068640605920483118589529143197494420960495528195287438379128257595409923199173503924000624354341121353225579471733160342568077448717754532641089268318919821677400461370688405343218072536191033089341917788401767760718783314261373751680376991279444651952020156572918234632 7744591252445242876956472172644967391134328734481907114846522526959361271241937169206365811760515413716347610626911865281842006730779649576775290043927242661583472639482151104717985831102375165663381427827672641148059434999963357224881792795678071172853462818906977597802770706478043265444333985671080641551766425262123958081726400403565773240884934409132582059806896636833949559510177680260406315599016059311097942955771604250098843879322476369005267956651531784643034419430075232487765604481871523448349888379426061784096587769205706342647358353714803817267306861974413668396572565361681767550365167433342184376049827137426046682096129976423322701590788347935290441091052030478565907536249232991550061875448557141155982737986010851693956142972358196468040226354440290222600909480812323337808519080636118477866345935594512397660443467363639013885689397573891352964817514812274296662813350270701539903730304205215110015456567254521098759230791828079115545750855578942734787995912237358266015861394777507270562216667214746661092283353545917357095390772668669848 61869471667862061718207135610497744369006636519915627158516277930769617085962841941134729154832050747207754223218796270144937745260403957864270080886253232915179808170454616755403330898867375400099584473854516102830288457333984130648267577359887467276740027397213705778774641030463652408354414235643937351001170268331483003062095549571207013468158475651087755126802869699825027706647495314423101604681620442659831665041874972527377469792277677165537196741376755738388391368786549005064534414833323615728534214182352043177988773053851796835024426539141612418098889793464590068725119218525880126897175868254147668263281396244414617740022956943416328992933625725925910028488411034270497582060243250057839502078028673518180074402549427829415772312125915847587365298041409615744948154967121287022058989690439715726076910198754168004116208704915082865584963149496424014469086100162854404621826502440253415095230284981379540463236851886192828538995188160234511830222469697348346568116819209927486460025053102477852772668200799718320942509363308490527832231204205582121 494259278575381162487811842590259861069812007195630343324964137686825283397969225009849492408425136933672913927083475748333606726261723588763515756011964295094729801028348043122513835026223571932310157965006541465409881168827817304109041229066883961471070101639854315904873369677131808024797587736154418461568778191519099089256116069803821536325443418118131072149212983733122676583344723351276675459614049239123277879947645665278531730056444087327992910661961214395747210412194446311668134335578726308200881952385520739145915669356326038427009123731875295834343036945246134157306842808525651351065256897631840579399273002708363516805440801682216569272653884414285294152652201315284830650567276419565056925386418676466884692333996248574855024876253024662303742220013113437586422785632665245516822847879971809526194760856285927686076672265959718311640065280865672934823029871546362899894536426466967012525304233768337643917993117771241977708120045535471647098291445466331586077639275174629612085564220409351648905659719874054679732398450349263096455044182036801326 3948514807916244875620505954321643101818486741691136318250832851258725122828504719974467146467745867136908352899652973151167801292420727718972433583967837925492042421123186459950610626752462218834905109853870889234644282391985356889652322026912233926822410225003063467394483413240925118217488526383370585748519323098163106393604482554652650696787587844529183348499914287570466728978191105564088533951361406017135402615224328149833035876066860709923317344083069614187854231910452202285471358335308002722372785626860314522527175155595219178061818360964907957499990254077159781140240507483493736483003791323718698893253905534118993070985976839472523874228891278644786524440569902359133756743352367745092921810982383690290727092939833378544515921272629797137105762569616999185841636973077839307898648582340936741079577985869253667495022828538934887741274836970383371926870234920046940359025747260172500437933821775166871239889924627902343959134811391854479479851458524443908382624546669290583125279803889784882038193554076635482335210430418379956037072840185446812501 31543743087364407412598638763691568929429106981546577290814373341650243933450026893616687092284829202926608535548575997278087812284263373078650564224666108697308756036197328146598724776639476323689102113923738126819379412972295600770175575056377254179424327160488830989922831985542014168253212930659122067324052526962278138748037864361474577282914279012921183392819075853923071713635881074746207132702810184713016940210608611576529511279188669680538286562719210704865900099818507303313788508647279007325619900196799111804329431383418762940204799624953889775358299197842274362329538027831274607948398644208089712589554538736544343208000239167226534176123289764719196044444307657350931126933031481589122994416029573237775613751367496501343466752272353053896141803254086647436637991493973593294651247297493230763619002294808369432996467521221946532926646378754524071572157788857289571623465817410014184522627295962142676097592598293717501065318313668059178706116140081697442125183652690321207191804987172750364556807909629868395600274019174332034530876013927163971064 251995739136395022646312188655551695480137641554284796594145725794867538387300635304960849286969044918694507137695803081286589186641992664239206141726644465772850725626989662959984446774045248352428085724175901955477093128452818165764636590292158016579158720270742004989213085747603311885941031969876947633173615809673975849386850936162922530467802935419825631416666394364265330248596583056205621734403415306592248160424605205671193624198828664086376472818247387729365838364040897068663922588920445635727035277940766326952714814959362205623907630891484815945271968448541218981317194196257866045928009330762064432159481465506229574295237887654682793803606165119699877724315373278688207873268222071604092934498093279538369105942435356853176580420165860387647139083246673881580756316170196422253348430400336663138586793095989435707754422782216162780321722169061723238887556785216081250998576441111651007697224792725054967173958633232971232551052390341246320073821284561509698198982320772603993510886659067158637591428351548041375679906489523771584883345926360197603124 2013138628462079457159508349764069642719813698204113115054560061894765792811402871310818061923762404722120875074544156585391254130552602571963559459192560279122265520065643720040044414220688612044221677112705701775958955834636350909692639985031064919031437388923966309326580451300330620092772748856352153818372831785165045861193979136424717841140887917378093827294681252237590477981207663649290504406969625067661494852198835347488957501158304422104844658317995429638694067450680912623978683123223810849755929916230263244690751020383721877387478110760682581652819430901114552820552632768063091689336191296158397359848419504730050033383537979923599745432130979374016636079642692148894062396159727298904479567743339670960521274254575697544869931493414474227618418273860523810845965467664550905582859780815067537499976616693057591608019297459099099011754740453261964669863043004257337135862844355123963029642176440563299514495780992863329329503066826744047286690652549632676934324346081272433183469690787761858402829617143609984506060651190873390699095312572497327237470 16082541472726562941563070891300826418334384517874446085861847400706564764729193452971472572628803158999015770245182283795001990471618699614794302662985934202162076618501254535078593102821945523509728579898989179970136196349609474294045353769845533742095125872982356648406846385718656866952921383242205578938615724884225981505100549905759377829559061789720232475216932455679276144260775685793248653660210397053301658206822782337169187865976478288527731611677662230758815683781341987073393011119307735357852593128077738815812094653864265765491981846404176847588742395167092970989999057672038463445145193968246507884882988861151082798286178268336397449065411358300884429847954945313700841785829226151114772034260160759287392845880681094655855854733999113199386348972262119490555391749865633970836006086295818124056542810224215781026785565761586524589460120729800798133213896542735736210682788511680705011822815451642993648055443519340166420035512405251640104850469106663524206236770211045541662473528287316373436533837137167462697587405787601875473491582031665286725652 128480195868227068608726343338248757700079948727151530255113737525154995701647389485121848471030088890492903441494632517914478157568541485895546275811858987543168295997531389996599685159019419424193664072500557325231515177068670582875210917951231345168673474871966451325124612372201736590195632270591598555045014328933540883443103976120153209251021446831080691000360842767630695599940606509019787673952205518435629418053215461881887223910916049320392380088989108534218117365427385735966341755352108728909713098695038883060948799051492981336550129751882262372511884314347463384045739937873947235622769599497520331305211796194054035124098249477336409007537350142504082149613311805328760559641807037517208840388836388331113809457685257401545461299065941086728934118570890801568457131727590005540499647216037019284648640222611174037044556662209069586956990705898064468263191715979590793515279789670841382135370999636034803854637471845074316239036964812553182307275102524420694372337472793172752691380708138654323431592935662025515209629755446058596422830318347886081736936 1026403705883128690479102461704216907567512330301227460497026838520410855227038517141539708974509679878620133054065105016190386273596943696905064942024119580876524321339642340957816938212782895166505815035904839697157450856835314673026042390057799993596149074771287205546870001129022203334745513437621134542991945230057520763503884344429966645827692792818844299978339838026319844114527127317504717645756380952518758755556941544645053065467268337457811809882992307463040148342392506736614690219484662638882454020799622875376642497066371012114006683756097260219805705619717771622555169159403780516009165215276903752530577426501046589532000642415366631592001398562421065537381920609041389072691747667746263402400495767989854029763850534133308116318825539241142495980522309381428947661748437736088767278731187112071599376362715238957735845723095266406890547206804356701000126629086196749902245375218271131650269563804922252120391534848317274324288603224163553602871853873273542257315347887596881210958813355984572788332922553137540583314680947357450966914666357058993387596 8199752489136339736387125254823580041116088309209330703720409592146470062363016104753592900705234444642026297506239696278249729344870801064081363738786489525631261778437935406570146244272354812182926364020440346004720548553841438962526767837080508976526828622937009444305211595865404782611631612441704672698227531353557652865198895671728698949564229646837183582935261326940521234805552556377930014473760362959230993274572676597501672188557485630866505687243909306330082658955370649240951495068983525193283149621435194253517032669270728853094483828239836924109820870567904079385554771691766455907325872785206365005152767152232044730791863352944847445999991075261765794992540918744934695154449830036857618148122633619648750602525449415334272569945419828333640181473888849289869991763788621181357255049821541353905979763870531833614951098419932004280651274477617700130780054271384205008889816843198293076760358115458556901116632212473253319155755161159307971837261480594213693140163946917095016791216319914185389075929332218150779384265900508740986419395784787453187375540 65506407861567367682509457295056437269427475912606043072493104067778325013475097255482419829465612444774402791319986352664154626361669331706050134775406824546481168660229465456300448390836310902324362268062035586354830823854150826993705112082334825747673342953857443515644479715746382379181857734661412573120184934518083634726698067119141680379021094368905876688142725814602696753984888200796768760225943853121109523614438026975228337538196770918821831001016802181747151587325616656764031826469611101952251561284892510409917463301443639565435309133693367330401022681047875016831176920966867172963052207868532987274153784853067555136078004357792342555653035304940527202436665699854716154820164853337822792308872232877614516517844297377662422937075164264931027241819934451957433870958587414914768702641173845109502777408262713349022035022069545010155183377190889650949486773167966526046573258357401197892940508032362669825978274589479745258992813532000160908340476161222606973327369264058636421490013170355360614001823694564360553557517639132465372253457724456472068009674 523320003133975456589994318130344469483476845658140459427152685550220329620364918834144649244951867827526922261051761310405429261694467854893137140068241819994434031043309273791561673274921552297774419698231735468515332266270065416233349959953171183356621348776820121158672391603660150824499660329372996365533946885576560870668609892732475022521481944679805196430114662541443237823582276257655120236282906845730090123930218777552937044054182267186100806058307625735238627505371890717121314700776386831949970126578744732062144703718580764196275329008236298674624914959121972521953857298046620993588904848657098581906134130803029725971775359767910708514488562249564049395040663768947522984188733945553231426742037845195615347782039529973413105144717987011198595428856106704205546798906940996385080081970208788851309116215956121936558416624954747007784040478117221435089585430964854953237322330862974129660324000671900190283055966933259962081262937888265477455907675600871632797611079786432375864530274145858325655087437630617452439301089368918530028955471903507582610857318 4180723000056800700565322232384630195777589689498350240211983087212735733013368930431749387431246677362971652578960860139565442900364243052183659064792202598085413157260152376449188732968535692538576474979972031021217085523377724643793898622046854028661156602530586040193959571852653350957563520673417973029425689694427383974112123256812473131447326157535257452073906504480683588268155991953173564904044762422300057013107762205823405776652462024727284188437648712102268729545476402314946838935502053935633360244440478511242681789591556673356670227600741926776626655216320261863508245832473418635888267898605901737534405395668985841713459636962354660627741471989030826358015378198167914467700340145143023445485541201009024396928426536775993800969623446490975494205187347244190880549974211028191881637121394374269635949729136916955049893025305806837950024899832629964639675966670787815244456891390018166398047006252912251688982534269969147136852442490584293726570894452396210964690943513748419472431218683018402311364457942792991269128482613977157390671704212800426234188208 33399191904612809355184555545728598345326699045662193676465585765513005429448191377456973552106105962673291677197157557327845719581627328480357267605444118960064249421202975126409220669153360827661344813110538805418572498647958726466052656839480091768902831341821272373322282643903371406113264259503367548441573204946363683496409691034070651948179321143238270613038993296257735829927740226744430982881011270402561249035289864991143262703677084043134730838440175565416628328176077498840444252116413241235507728244821736596441871173385933460274459289411224606814672486256781950904095230813550495924522121312508990554212622407068113445751546380807503128004925538340860087139224876257264136139461914573283565091933658464753084041289182455161890653350192021040191350326152767194729332918129660227855276437500228801767285730473018774216210692344677924341779050412796046082430404786495679773847980585492628995119694944030885255976510002360338827294883961132302561523122661920514411804403872434306153885932506346950191630152535385404177981337256955832388735631114048650221494960794 266821628753186643191261961913173221436364698254649960610927421781212144382265749601048686026327446456467225623465540245732359114603611041029672227085889695302108926058194222285286223178168330782781131172239971533061184165792132239205275199298472458660801342116096027884849829115086163312628993614641417320528251066591696046490642226453435129238220428394387958061047607545814930581150750653358124445248730048653719260688211873598971786066290199691013347544899593982778340620910417609399322913842201104633038646795387271774061515177773934199372561645801283024167370670091551029470086023183183495869955356133553084392150606491839732168316473390551860933240143136388872503240433375250222973160105329765292463374858412686965451214670739512104159624195740135977676589913786811608383693282698464707134947093072891342749282514534057335662827857157189875579384026776330808127800582161668192832898173480095746442648192511447925326085055530110422420622782225653131001508279900218610826943721219328851099187102726139297822968734176656941220581003358080555870032406807271467324328497841 2131604400089731510238028046390804621153830520751083176689574973814826493728414588729147458109321104633004863916980864223110979787449793704007855208670454400217787518315184203539556097450840388793877479693664282632632006833543194067038730790112413728339523370446682251856407295152580100119594675165701474814958594758358573527510402138928095572914622987800322464234757714847293087908918451437583309000462245693400245024576364140638552929033682239162028511555299803279554875211424993208006596989935536948769652663014961358045294615666108026609991665034260368162995890913922785862893955540044300445685275541798232404570023618464141298251520731932902672658225307677385111458422456756369321745774234157651932696525902174944325969483339018477434825792072754065216638174427820618459973800660776657073661480084203115826385230933585419101338186895614940853569657587221249770649240424840506255585805138171289754721936642479455555722800859186994797947808541323814242415798625265888314888313006941985060490397843235197687821623345116524573781473343400621439903825794994481385260307657034 17029138974695215134735091718391368092916459118571936664429812706061099105162387658169673696449729693340483082325752826491051575050551908773329569748473934209461834805172911746705465917592830247006168105052473259638135975253020150712452554871164383169096897441253678876818308909869875212593830175958693605605060658711288215380695095942989895925763819703214252740309368592337168262527222413707108803111104510358399461918797995959192689826565402048698290148741461838261186950379305935465375681524832421911292456691934462917735450389922202763335864972864162960302960501857501733826836550174414727403409446431844615257948320340179980890731446240858194211808922126310779216778208100727310852275684829740233948999811934765099290747521338052264638688124922992107882256673130655772059090958579150545328354870441402361424240141728179948604036646902500123155557141117915134435059834242522412877548617631199970797178792672685797524431481721136222044114508746142796384823602261234407188145620748576259251263106832220825441108236996114347079821990254796768340628297312136748082032580034278 136043963206063039856036313548964456979066701858051013874207576664009946685547943052737191567830872108707417187219404778542716514188221533382639409553491390014583849749219187852849841794727641882663063736841486903496219748114136905271340799494808703695433599826973309207649161970729660777329793028060634474420291676278091184253170833745130078175967999005157914523626958865522736728206717435060130949144144442575813580229901988847616971805627478951479593080285660261932359424014261129213748989710910027592258080598456594081412872808232377411905955841535578581144815736505484501659807568345201417473769675971942309589865850455992936149621943180755410457410396961116279485083405621932764445455089761020865394488422563626087217459818415800795364013021720340658665172095986020933523290383415648343567971438632738329194669709002008627369636885028769519513324333206358452233828722737437242380786487075478049170867623154919245098933638666326871566800009954326171658433634140337708283418812227445122504493902433896223694148622156217031490330578646913103026242250630917001882347529217706 1086841876361909012351499234507421107075312317630766990283722160299319087017359063802551625358238941948423009754681764461928853677886988828677987623577445269198075844850856212862267859997694985903468219359266615446859858349483077028371623083221758319206807653825447827101515634773641648046213173258047271678921013390908602920634021999809005666302541362352708371890625514802614876297072525996445851855217921284572435976137127114671326764887122945157724632404443924409075857142061459820158611736659902140879360379992036578775079785228679220451486265341536930048282674586307472554776148105995592684606542885496789614162920253567417934882087324261760034267207696341629666717481871707659640931271976980192043193162015183879912132422337735068614336899437553259238770218649901114788723474440368999919351494064298848120190112782894590289600137787923502059672622171862304326291834242009561720413820720725333718085956788532628139979635246656344059772939822256067980404339086367340073286270267706587192651359704827819990989475695258438024933993524310753519241399108252370255062580154650608 8682683170180721017134062831373528280236752062880794683264165245966030472467286199748757510423082529071651599154408739382072566097678051424237798402040371603219594479889839502821888024855615862002936605759127994360131934979099325019365463807347103050885801359635192135727607990533193383405531471742203782415154029584838703270327280089543246265236931762600514948911769935855666659645945492914718276427159951976720564069605282841884312400111885718637374306962018228786444075775886197132027022368872164542262592363660091821362328745621677806309064529674817594189342072230244998655724350591260586067658670599989459053543381512022800504308538060335981561500846040593026571986131766609826955582926724356857059134861776525078362932111998170407399940148779396425542624201523350407449334010876475784391775868745962344965747989005599847711587779087387864561978750115485605366967314656832823672376059956063153650495138787947200105167244197911662406231601530836729245671310005287648667591269798074239220522695067266264758188058906840786139076392222446283463136989813908361652498753256980254 69365264331020107725682747030987658373660423720292861253031796537452415345533554396274234072542208616663205122285394180396257401409803828039388872406341252626524546429644571539895165325116694405478073396466821743965881887133155972156955574105728142211811023111865309230420966597298774646970498294021276017377268619558275330683157187723259684885323058181203536639251814136243355383102062691596592356753238133838934569417892572832194572885160888914708076753670486247969321873515624268117927713601630032538493365559897603490267976371915279821151745002132062362597693413508893106126220332147374407412044607062576403493305276178794723516281018994935949764792162672893938579065321792931974324188027856195797417999626111758206349035977359732034958085591731395517690176561456471731305378416695940475229326750756138502715932380101464979612993325280006652619753297493425804836542584799488545536601795776001629993347967210788990814645650144748921746344852870596038184786120364384539378230523926414508522942929263675306982068645630364899333729476630939461855424445784331229522367238860030907 554154210760662926004221037517860784893848772489833922545467167374732188675774741723429643933526665548677299886622561713755016201436110152668505699597495135291575804601646729179191807698663658259795833694338291260512524417968733543006132986645497504668170361163113856536391756610382942532220773860776450384210471235874605285629257691090651559355590444942057110264839592510748330553801985905410814623484530328305491319939357105966749303986405193271705215480799705112273872869246989543705926721382024510903824906895551781749029666496600867728596794760927319005958970837600513310299727515521200802213667033685262737922221921273733148662469127515896231704049112511015650994211982997062957402017692312506670927104376126978595609731784344362536090311116317545709817119673608251378315384253794793644289131891854742157733254322850480719841410240239254041024963742783216033805244625923160191242320944138107616333419872007524846020486295582576847119859924873264132867402775752507200579850017009665913184137129882890434213973379148413241297373048929536312089069761495621000083397199325320808 4427104048342554434330052329536572176306628077465471098987086985893126292437793480699140432753334921677660758547109350255509730204358729250743999809253278433989196216618021645412622247953159689859921990912156997794488625191850585077627167331679933734835615290133562886105590478238485491893384390463408477112785941269574502540531123496640200954636693068900036346090217802683065667049204468909182937256511400326276231391355712702379591027555403264219499983191936638234637256056772294236677096548399471425515283735499757241525522644437030956101253756210004308691231731638077896197798826868919769576097359171484797763674228067746479890197425509853601719270209174430450871549909551160326702173777669558406620035424463976062370736740312938404883421095067162118638256007963579615435059877883050124852374527958969529724482914163878555517572835011911710099092978215859420169238657647582957834299525874923036934353085024283213821054666809651559940235828702629396248317732721774473902101280848251747402302063381172381994006242820514581283208809509952402876380031242028045177088767276098736010 35367903701020659006387338659696873069943992584330611949016810096571512335150317651091446200397743990206790612281906503090109098590295645392275663063186062911734718135200849285791193557080263056423058998325029204769142936390923065355843961367276729447829055927638339550690061334041621051380195061290680607373570073200265165036575274995108645877115903054521418872120354078677890575497899669535945559186057969991712234286290713743792824637821749131039956195114105476545459311925326937664212629204919249650787973716685948082030810200785281121531918644091562734795814696317381467490607677885408201122685856350979130711024651096412686736415182530420893006511395812288130370939663873292435791483432661654602334315970148965206417857381310487284135612644127836835468661881177604119822623860883461717261700742296668548411040232805850289102752589333681103723703814287561800337070449940105418941363466695035273623057656481327634560470004944501318104522169908136784576103325209833145378804502646958063980125302155330523064850909395990492286746174339500011769949474344074156128927286349285246380 282552664817327508647159308557210191058997078757083181275157597581766980316208907167679106762193126057398744394816966595419854699696770917527846051721161624948545779635842718855063547749691168339612906795087520281560798464603615374446717080833053698617488322083358800781618975307068255455579330545204313692247487171103230904154547794323474856463891661454788277076289895537109420970793583341268785226357879226729680257604157510520013519333178595837397728938146927416425466667046751554817119766058911409940017881116950330418794627110249410332408894891851996700701713680593117269136688903008162994747881907136647266550021117677174711884839170345897629806528989165242411859193313957863405023176684809874890945007233993065691654439134119913726933654675701344460699849232315809355040786813700624050854769294978858586827386239862914295742090203708748786891853376000247582928272276835742913338307172825995527380883804173705709373559513461344505302840990471786293109964547981337737693073964655445526185504370760054214017828318868563139874945540945982972528355648262483164829617891109430265555 2257303696773863543191027664253763999917576405244154639065038637036405813922318755184342045199743341045203486790190639569780910059592570540764082276309436787523901661879885678764236521426829725519988439693730610926655503897214992311506203240634733986366172132123230680259300238413806003944036496429719721811820523937941376053138667138045955835869149641457116549334204776254427036421200862843229418107811550037267734502147246302924296608173790427835948987704174236408890746169620210524074001148512809952575605291016541529283016012840270622185926702103388426616988405139330443425522072135693108764964295520335558431141928755634895865672700520163732401324757135190549827750827305115861826455763388240391021866747576606183136634295539959002465143157537697249559146600913460684537980954061175383429936056867758342694461061133981487573996605929625977032351395868029798689066674795884116966017156314260771893953580139355343970954974355023189001224048705909833098929675304105854693125646187513322590354802126244189852809061266858170264316643614094183184499421643681625260723283806555937868068 18033543605237543928147685204153195660993136465019578004939022057353656425693174787572814584628876577153109474106692573768675854588589502987699410985914607269364613680948097242438053754289408759671068236591778461083952470486559273965701156992605090584541062023031967883040513330964980623231973254598571938849122491342582121384879694685787655728906951440834777272089625086627015791837736627827097040514125649354538096849906674280446432421444997964728320781136651102088878131211026599690962753712503821307425302012017408404880379616990163292091741212491449271269098910319902339441690670828092309102111748870137884961853107761961694190454386624774357701225713886438949773289425000244400493332582286044300913991006220328060460302455320123476103122357758814074820307354848550722860005835828423398666186306776053190896550096033574339276926819918925620058359105664546960441878087152445128146476585218859838754631909916811926148018848839831164873027261526955330673944205212420321822472170447460807933438666590497521764656581107058942978597231545191362957376765913018864865880971325288848447533 144069699798107361092659293848866535171194621504391914657651044415675307418840839968287846896049248441185782359764560839236898339157322313652849977910222346161418898476900108683965180584784049162690567999259059588063111061932729091527313729237506755687301095520493843396375626907523777066293068767399611951970085543071554364162171550462149541840850955560169830933319193546401157987263566870336764224143958788331695405783705136834416203853064840378965954946674624066361045231269881460829853834662037121814336273455446645495712994034734302241263893059804933438786896067896761509400846276378243735019505430756136320211038771842936232102529390090428356923403390851798723176414759696969254160391266583187968284984325119307262089444720597669320426511783720492465010912673645545826056296409895409568201078744558161180039677717716470191457946454798382897978774744065973229751625426339997060070565678232382491520942816240654697641290450310524659787669873849557024636261980147991159769325583384466368026563532777931962991353815032084527196372823281553149405785734862650690415093568467044208594942 1150971905070431919174484109972044674162310948037509867235331171327400568694127299661029879811991824362016900222361952584241727607249247492074051328637783598485545160779908394335170847200866916876707325231861049384654610605554641787135033783311138482810875988902644791162427581718004054738097730358299514142187204213040894974227338225183000162572559753467071492575354958791460549665240281203532616604873587317188700283578576066457859836137173357066828103649012009827745485325710906483278167149719552219835652439390656143221101793585314259987137540295988683656263626376388987273509954570139148104213713334856903795315595545256291895373762049713392167821408066887679498085169038841374081878576796679621259417926189229903010635034141824378302667456727551257426512210206076577145709661838166471241337194272057178689878289694647045810974417510141297622322035666778285037672907833056442576422953736816738032255273524456985432957428957812123193818569528123383716023379227838788355128755003402386379815315275138113912222043534320225040135780379127187869988470502574907430165227450994297684834288 9195117601648714897014419049276393229929087876395084482801708298948721481068834259556311852224861655277830235782741688545939525956759043412788112813326948820993792440290696021410740793498294110685487472934598798519109683255710369460368530036118556205119403697092570249760220231076930005463692819159646586567485861252739496220618239141483213376194050524117891473583910952073907184173689169174367878069287839843526613845325879828348007923069238682646372756675545908680559709174840793968623382145633187878866509497063964130919122221964784136584638430387259907589574735974124421310060232306499397540900099329493765611621770622742049881040524487483585049618941736238797852606120693102946131227219374098694905545128199304697238317791520682144648794551654033417307634273774234015180626053881152483162955652876217848488897873594743432095189324701204232933310009278727500955303644829204762494686945996467278165585327376280286878235497139168310447008402020621957219893914175709861520374098436236185872699265898446676108639136870892386075671915223798370437958740070735963120539833349137409882382476 73459902287790680011016513863402044431785149286228384174039332301109310799465499319603812585011786445133646272729788078569716244081865482016618119502034901691932061050110556078969122897586852039445248150330808566083429428775656571434144155643254807382275068971313090472463308672023020046887567645705898332262065881906477300500471694073076629435998344280424755391819820571674799493537044958468432068399507945079585355086127161335300181310953559884526657741734199241820359320829433508033040712905379282583673864801384415744430724896106060566672975386079940959780068622884164799555887707948335494285932069389083971229828575669701880610305124019242574106246414293475515016527095103065086104208391910533556956315132520099409534147075835462304897920158050877158142728784976176647756027889610385696430218726930725366388897539815267904536596291956184520703861151914483712993017235200936414499683398144740796633989461467158449673449494319809110102042403962042170329592460531946530493691316364101689723592470866886797887854535301452126637464708355974283413134681224094045306450801755414630849459636 586872685408148815912998948237607826864448591576319048741113191796181955824463162795972154392866753295417077259446385415694938922047619463691437107661884061937510465191579998705556038165663664396663413473795177675035219286778780227455254746027726091808113318185445819894869567794794316445689500507573787737264008381153012637910947138666359092969040847191654264897574741438887678977512752119174558103396150465633629973187300870740564780379721503021296695478484141180940137560517501450225647168869872614330092328622868753761416851780927386730307470893941859467261675156235390780696119652556758937599762289413187244374907698479379303895365091264287004832016399535873364799554981114387043511654313984301374574418378015378080435860153460066572332458517550678865298917485751577063357234437692555851169451569323173171332102055392550677574083705174315489455661576763116286454776196639802555621655470423052004895024695467189977805769954952906489989411636657836984866128740964640893085743098425526884498979953840524067199566787710592273454953579814423311247874524349184086863119025862612231889042802 4688543379722499393609603144133527038192153169940253801817714445283190397269198548949382831063804311069169013297073243054563982914663465455478363472284537689547337627695177227070990623517400911217239536361292765653635400674873522077893924990839438466579086554362967755577517415309366728939311906158270774590723051249347027960105721856632106424279333630413524835551158229384666707262230897570133688783318000680840955601550961186703203067995546680655418401414193279509417516306357369554493662950147337586808990893486596461858320528739030978443969518309924129267345570675215626307713354529264899898987871123018872969373114986842246640485133291922730488378387397029304267745138506384278323145829751217086736077773561881126823371944122419147060878673128211105030717549013642843303975496574468585602504553583620785598524231325280157610785632729097281886774349749380075635745934214510772846073991014959714352969854721220984200830170578299779151709482447318051878767899820562063989654275792625031644226671825491534925384081362035804331357962348877563254731135015329282731328876599341622173771125539 37456955144749084338599060818896818030112236233586840052262527224009664843402991799962075838924493201719317486704159331397252330850785236290892343799610725953303433979757943933238956694002305453361143809246710067683493821894488264654795344813601773116262755504668688959353640720875003162433230543660479332437863812567768512397404088626200877951151893186218995975567708558686539277732898942571553022267977846652820477825453117066055188014452255485252593146042026018662390822408572180822539573910860119335661209252564421937432485887300685481031549251471265853340720026066563326332830048181597038909957164929150862824341650634741349334281879153983945809744627147486989472590084643980700141439972290063960931428100041872472835950112090622307265787471925577564617571030680944253270667073356686565920061736285223701117428890444828329130249270373753839342401487012787020245671630408093524120948604672305736030606826414005883852061608113027323669371932690446135122722566914938281444719079271957536599189211063352422429468702925190792379371333509609968418834323017522382427711446132927387115025590032 299245406774108629061100661042962751048843831374303030032503724324250579544607313150777775063539965678047777434999286832196733833308816151905989806443378538137441346762657120557373097372932941047291399784374706449650039332750112816581956536073580378470953811510198157020905707318633436425601726955991969170054180008773117858119349965544410154881256888044840014199286842673881960175133525227719799415708070247379228694727636031497039119689494460761251567860848947141864476815487517293470073784750289839078699952189420791147323030820604118785816537034447128634534043395717768792846096656436080208113125871496365504032678406959350846950546245231066061371439316527675284835079847853124476026039376921800352942744887813498737923086820653960231002773132263961314072903765728536424285643317891407210930401574709401017584581388810049266962718305648851496572817807310541044204117672474101895338618305534618844279127412681249020816361523060001926163754094580767316642883172304412034563598220432142877024633406354114031687281623577152190138977814302171331809160826806705377023855725390671115847900915242 2390688563511175215974132518829703477083187540707006849327821030468217568485569383795637319363477347993024623126166563173161387859392951949158296954460346992771426036628096195686612962520253727747077278327619616170817489832242559187327834147177812715677913792275324154571216894812436950497023800387971466026890650299325304798702017528620890195507900435455784247341672502851620463090500088280241357068626432353738136316509186202666704068623087050777658951384664055277546844611581600083506990372432852873233665246026085226324402505531518730001852696834199544817713511114137773943035726283092589793142687219204979233830288255358836799433991652717470510469415755392261091313551681215451263472041780907247400633417298676433053283001456383928277044114958029734669542718507072692527522531893435285733297173317025025311522867378112065519775462767699735542025922524890649222148063186001343093139016233831079848574552550484101123236985785809134878444824532215367997248815215868458090894708150297085186387765870409199115640140777421816615686595486725274648758408396175079256060844094924275377079035366360 19099368284867126802795798548588270066858445473463669374144477723568439482672837579263780701108795485786286546240755836986322038689805010179513064863023769443810765437918593950955255088454956939203224988451887914884699014683760490153985493699186014708047043187791344768165319446024216380754700742666822343183778360508642472425104504061036543211994212844752819007837077586565262951166182883045892197805688545553617566322233643097683834549196645725919249029478653606959028977695999302658506725319763125762586346707541701330134701767645627978363395029447432109263398430461792338448191590395228224816351342426169338113358339658258765138941892341090076503447535119967786545777652179767433397375639122018861691207945625762331794209756647618662887807041193499434647494169958263671334213481984081938502786926562632789596113252414329944788107073542183471948315692897953819745618546203276343105094943127755925595761625556098484252132801471292328449691412091760897912056224961577911922505625610119565990278375290232576676687950876926058943094439959600754191344671410001113458718029180805968147925800576431 152586281533230032323512748586330999023518305281693239342150353154262839432161767908968051273194020225031597664137294626301859386383588060684169598646619780502593132054089074463291709304056379874613224751610869905981372860743241469172348446776181575831765339399386564215805146540028851354126748505528600237476179097087179863074193538238397293771367712236446070766575318389475937877576877960788891021845336400218337482068368664158129288165246279032792941816824141809445597750833415053737314455836371465278576659992650190923486883097796915251891504663814940667756446229718658743468827753355920090507753345274393706423702518423546692212072754675255739035861530693152358713897708002276058380180484811740109704009388920239901202852784628994457915689598510528585624747681788116855781511487648961335538378653024411625020286116005926436390694306856712451599990792721611667150686396795131484877495488458849752763079229443951084875302696919709325366315164157948030576836416318054717661981462442006901137516443014817159272639653491162646893072432037489831599169474057256145761096167727228010496224984281140 1219024579640654034468876646449717665626918935061853411229938707085970550760056790014329616469431676032552585353180023068150164271975941757496813010561342807427826710418650617742459699928357162931347646742650305345156880274455953895054891577790860270153859804261100411659248175964647121834650282454523009298041080235473814718774059431359976452325324310958330452479181343844939202127951386648538495205926001351521370007940029161893703156756951242259927878261392230619564845882480803908693956110027118617547371984514409103910943327921000569064812401837344720314403901466796460416612654544768423111643094010022446375996664389619826728002149880864189723284188663089823312158650534914182766197816898974149029800007427074462397509270187468934841834123735380373654298359873186567507425027134437753477454810780460947902331417602707380150156035489181878424359740045241904630890944500742110939109220948431201602484624191033896414985936804586135897544543455260674171491281560677812175357594825441734912612400936087751232884977845413475244009246431724394791181979337398411965306845222381480081941443709276236 9738900331342189770195153938906463911977983363576240754679086763652263595835076609330605457577755554600666561009099662622551103440791972048357452244327865719370182365947668800043855883808345137974246607261703379722839352791072266077256331709542884983110353498712235189381006176134591834146760386556805367889118302935203000005848797329377021354829484197371058074661966631196166604556129378512479823094125662875251897687204110086168906193826287306589174477479389881745306642942552912387567474512369761373999286768502559842225734779236379570716260590406205274173709182968310514772573393039107537515627916305900201894198724652554729703456442293705060194499436090891264001273630350103016033630810744139094552009598942860803074336046261395460226737508455070353760712715863557341945266069838292014905685232534234645581937351149324538002273196279029342569910300367186722294484713124519335709643185472750365130058205459173106504687380062290583298578488478019006421391845720002462226419195304892288152346698144269915213107078766115086002554927513390214139222452440695999621678455538221921527222183312058248 77805064108849768703569492454588853682866783670674962684849825811558628282133734980991421187910187248895619974590960302821765023535312326180286158342053291792138230630672971748433183305243783947064380758882685473346790975144602436743417626400046928178329519693662629946468007151921803510519907719143857869226962672282060435818973822393532065560374642384635314436288618187804833108437948908369674264121795795567205000777251365867210726744388089110272158461313458699764808884697732810335719740420274638861208406380931702518321457556909000644080398113676642390155805466371278185834910843005589946794062944768108093398786363132812244565913380867628430703914252744037772974691167202366278398846067805926840678146038468145353393321302682675932877100792460704724846107388803754919459374727929550139881557875124970282436251945126664329763253967577621516230114793494616600588391327498718475278530474501877436142241651019272917617952772858985159900130452165466399173497741930174342358520264618867568967559347665359643741880429220395800543422754566671716804030973963341895696705131296627361314807527257460050 621593254213013938115907804938733394743476588980429884735373142664803262487695971481292728348107097554636136928575219981259074431588060888027253772065547201774960480754276009603529630163786517627725238976269573880333248772676304874361770177071055147028158946098607254675405370850166815403016762104920006542399483946157442502772799003847290044046770074234710556861357191793559972985905182150708808816470306843941035005391804839732131966244112677792994207970719049166117273376493653313243527125630667024891103872882766678073395116746489030309650528265087198484545124829855401135462002065444621137828167254895947916462058048679351540549543210728418140301617575774856376977481502693437539186900822581672633683169232611482562628113150607899734942056868881112267766848454191218031226549662716962782892063191995997940064705646876849849737612534296215495538004958189862372462754238802315246473789987320488032040466140241122285117449257594909371294944435330984992580275960884314694591734485310154680588011767065145483324697651612357832962340798813276166928745764692815044127075979091881615721945882548078856 4965982717568216859282566261600593955103941691347327087696959717712608922608308664036071768848961920773572645689657403161561924671077175697778154488433088448584449315264269420622925911958232303364342819834531136096592422261887961831857299660821131320339219532150026609172493873462810894980706195069178121109438150530590075941635273769706401902526774411657890328078362464133177064392696698016174650753093960303588386393381461145146947461939677071741993083429480699403522086179904913448834228772861052127309399110417029930183955694642496084280417475515810488381807377747536665121564267248871527029937370470511952488821541777151329746605808882934403998564700783564059844778962212263840612092582912271721411433330183984216668947661221129318044547520068664382040400335120545733692579004796724834602121342958795297637543516128778605501773244765247087308716574317839790353599122714696219832323702426484222662389321482034942894738494223383811079214237772827902331917109850483680603331049490580316379312767393354514614092987316745728181384058389069963766483839169648612436725090723421577559334781763665940009 39673872883481209774999635485660666947087278761410377446567469350244944702282610858246834448356176673283907675305859865450579524073711368571203624355060075756425177840434963002118599132863085367660184054387137254556474321001032856709274943808386136144455792186270065169395007231134423122984048005658243095045864481217232908453665186293065874790118638507569225054298489698414752322378598083542576382058400003787154515864052654982925062276213890094087305309609881589601671198431179277488826159387259888737001068086648998684032286527965207132875084952184532851302676232681619495831942281869555827578106082480430351888243221012223162382455589006393846234392289203718883708499053475588465633088934979410079987637082144922763766354231618793920843359899817471511613346361321389616294442363411973818953094999646688812435332022505657716543637228270086575965094192729983245446385223045028555979711204614031320402735595473916542676555321542184255708003744415594221461313181533271767302563500336333591522933782097273846767934787393193007645397105714460523127923419973908631391944866657244464899050467615621867210 316960010774348728953944322982386334468794550542261785641618656245968355019879400792226057803971280826924864242532336018044146587409414387408575631586578682932908988192249408285421634662986493322655295920798050993082852235038688041792164272048747819679829116083805402221107266206825649622891842016628046185181017245595579090252918912777434904898143213199990585832566684219628339585904844346616474453568844285790597251875101721373638673227332383430657916227152697186838480194294427147968441090707439362929591476313398795233695432580403331008392880385916235343867692281559452196959671846043598194481125161300950881925531769955344766527818176665203196965944558098256519281839758533122908432970474951112509575926031891577003269050625104957252088040786582990389086642864532074346698055888292223163076641931013713624645450380113102203333499963455741939542807689700300256959968462650014458034523594613295655773366905477781814225210040107432289727027289943797950000410359022522825488698946718531035674701741317696020240631854315105816930204872959295096197241580202150538287149630975689263188577274202392995014 2532239793931112382578304406382506247577507674485454616434740367577426827035609465545967457056164002266073229578019800732959792391987180619773324805073952654858819126153398739754443273805833364913154525623742302085787889004998331303304054319604993119893991541338987120454919973504603741355229944501682689860615343750268832610274532276506740262254899932698576858314931782449048872837138854581505340229401594569423267569912927035226225253705615460093279553177742695848852032665770973022686149578042965984245926236146361668789158733733812848904135851470702670482448610003519335147083258804668318883372344535803702651452670375862598294159103147406857888844204602637051587332443781065486275544667476789892519887300759363991175881405289452046602382979933729525769009993021059183354460017914937424315051856740477877374763252852200567519411642245297383059606708515451948638951852633336904424061657586836579264590133924649152545960377134210958518629885281875379820055661276830107420453313688167375565041138073857752045429630103156426811058881043185920552255303627669058798607522340362697867527102417044883020356 20230455723336906622999193822535367415864811126329103102343398724170672001445508577810650008663688359637818953533779195400409266243428963756642321525773278433503955407639547597476255770661396759233427656591732957829853241969218155356401146288803690546581369573153241136822091533975581007144285053667596770028885799807308442363059256103360717560746989789150264712783489016359719511519047363026299450074784074638786210451433047901279247437260496335216341050356449165854107776314946317637131210977345141713618517406996973674182241545861208496513743558110842272257067395650449833967237713923593057675181477965291463449349835254684049426688064390074499888350852511216780228508486838784055651438457819009359540604113732677520627595174893267180193409886325686257920282402315233885193650049528000999091189030913166045746796421092104973673733096621660826497244083132805381934293068878357819899193708655489556686922058747980706826330934579813028357774877400738497903163047632500324045245445278806354982994533348521592917953197304992660012974575859357679570552181946709695766716803947353359099798573975620279760115 161624421017784877881189644291865936783308700661252983945121911345781117816862983723091877585093663124516935709196944617459706334278837085909936496213296314287162220100220820276695589596581264748272898377984402292903953570931137166277777915521743388621148638634483759625699923118710850517272004828342259392678121535993725539482201100891592302735629635577946669147357552124415202625744705852954592523683158659720073576861621893814065185998553448629433497616413136240678367679170525870335944957975472897479873690402807803507657983836303486877162772624622958078999758443543992829212037343451015283823043498819308488613227814451778431326916426739367322842842812140057357174593460892452273280074793995586465282525282533774220201946794864522693841862355521585669004542798449793030125342894014560966871808441955498002292752890440604591000086592429089436836021229102456069829295367272720384915792721669491880027539110233077426640376660880368288308115645249288809221543571828278323346825262869762784200591997064392426690172390628941754594463208939841169296910812569428427891652733215132675325625321471700261500548 1291245368690120810060579976405008240200245582108828122778128932086294391418319607560734768383787495404439732711938118042534179281145728706083469402642012150274601415467342807904979951761203270381351150905870268881160944839780891299106508255756739614337493107618529297237184204147078147847407497955616484382609062160848567479898342892405369260238076812140149070741170138822161383445032389954453884123460346334925190237006809615602025728835005116844798147152410276938964642089690823242084303008706114353426909413339490406840888684049380706035902884217466971029715873039800423659718449041612292882476301735454463055727106444368962573397575903955565085492348508520734489708708276757575774310436251103410933985408951191259360810189199142752329600532884628827218334078123099667563322050715683766250300790548354078345289853253967318375562197896911249286586320640563219344579670522464790231070762740339570951405414207440877774572038056773975330201871739640769647273452587945855811765737219200238356811205025934628989165691700842806630033336006205538862257926011648378395656855868554600647379395480750385033255511 10315993253050560448304062727836075267933318154715867805323115484922071935516396339196880713651050039327173356006511895677842461718096728469466199376979812607779844457519730751232089793232855192967219779385608636071395547626782425710930617869535454871733563743640235633921780078300159303625186403648102639294325920244848126940113009534132301391526196996261258315589749389749779635745660069140412602689285687998585001726328167821163498178591660472163055610396581400717466062463025116969915149465977147371391272894452765300194596925372313921508363056266430719818226658134599203551621707584566142258233492280256754426492849684980480593260608691224843744850450092262914719528965446489377920669684406926327545505824866612559838921133538717839649733399317600159957135452254712042426432135750569051660281418983509398356280109318043318968797549956443870096390907217643739689384705836045950540415468788401118907629859960321887241855924903659280407680361905028558953655588528917901067245771133985582018848999608063825970327055926244870221388061748359385013348084725772879940343180226370546634828972180769726298786360 82416430124985869331515654214208688748644709993886894530326540083734321625653025808247452905730022919782341174066865911791896177474090548120279672240007032907404590850136867612515586813866076161841289095134183998044001213040596010338645732625593161416201823754480553063887766527684037258252626765849956716040372023352343471476150867120024208936750575399425614601520412755988646739244728598588528255950843926514783158962757836997750207244296990426997642880710383340352160520297871201790450299345897593990805791505209354591677680129737294925773296827430267446853420542784653280798448865198495780417311073081138059596808431252204817203610694076697210864099239458087443410749123441147923056337846200343583402732222035420279576241531112657286092883230828890006785319086608171949150282523863173064871634505884272036225275895378317493628200607979032781146476666017817357720415544469923383592104028420556308503042422691316731232080137735676642123834245574021466506729558367065620061939953450810112718077117579493201400878798374621907009797826216376293268075588487035143449743071919192408811026159395071721116847252 658441241438463455227373405490251339249147983548478970700575701206467036442358561271237126546183301457115194608042140964300035692621603433870764202897914451207942757257671775260218841536623662439110305160942602680648685796639763652265735431451333939658937905627764656033706330346739490847924858181508793097614690275765221410095376547374056452778940528006941356466648182678307811491444783320017658691097990713146624587925240097658923513770213742866454830139271847564928946022915543392156765726109800196423427152615947028879851171790091407115102523274599125394527470934036811264893842496468368264352279534065255872335771756984807910739369460331868566662558803537959655136626362148600674741857732469518160414595378800499017674403461355377683849386023935902195524547658420914602765822904494504134299263124544456822933911716242407919640987657183775911019244054191764156939038985563151871641639327466676864577254800153665434523683608642883061511399241278195076168303056425716323736641494074388476799424692470453999773638731125086895681937333083603083181472964891919071766822969544964766882694646091872840340766510 5260423710302751280857563517567217664820560016456462139402740930143126780920406440936989657966724329356142223844980286349552365294433055224407545880603519867672105879061156440171880349424258948377571693675284435458594628298562516020118540735663546074215257154090143893047794132098483521805119080078689936037170882897636035824550396610689793435377962209502993034905760088216233132189503217079804230206999948053328225880828482922872033003366074577727035185391214657377241732937833367183813511458880918091178939258570943261550789031478145924648650396545691055609083719348457275624464292056379208631548576672230170877099956542211334988613590537562686769275347378438870757598813149585796851286681314485241364605587297307261672632841594120067784710702504697621916500678197660054415821528435660006942238943643393798567474915657210555885104790111908061076836409216713412732664178248677794625197499579535421078796960672281832820965689565778195854348159011284066246902733461250651443669672546083386618225953556048393660071118854252509462929398731133925447069775011418341677241165774289624917725527128762441276918836988 42026662550177120231148799468647247149032875276633956703758319983968867333410014530014841871807812084836703705799169874730852685979207012273297683944435307429939615812302957319517455560593048219382538837294661552190803003555274433971000987065308236417860486212068422147618870880486681547420134868489517350879680199361103274762052447029807822555260673119164689402229745737111411896812812720120009036921841935169692475420189736106908222859225103587243865198705033754033155411402784986316040642749746638621129153981932548923042625711370658796735525850582219607903131967390797427095902052890643577588646591278698965860629181901616585587521760259973070275993901514649184010270486493808328814913203972553341845751621745781707595466833500868247407539054025930928398936266690230947549735146434117422533890128695749225070110432048661684009631214285113431598633191965888983871978555655291453139895356392679202785054484815194937259360826410591579812589454830174861639628209290548776922250841476800651225071547010849003956337532723885037867710926461914524381873468952014846506810297506905413932003093430206520042987130654 335760461534456345027364719975599985162801392138407201150161875657913921459642088333385704683802864495599321594040628681829833524875646169549182095277517139391408503130449986819224357024931253103229560509402302592182365717902045249473218202744379264276749612557231347107815574768758142004816897178345740664966858240846629006967811367229789273550097679615956245622532588807079681178530080228778440020044580524284783235151739856246517293645192202961625511289610438607467879623909832362622914266261737389620105635352237112440522193117940828490899285054875546846618417222378731670744955516231712310574744288835538119268744393786149690701432295768983246738576604380349035155593705114432549556775396525670257942162313443655017893838268182414053804253380031294079106379015753399280260323409889622161286639301348554548741319723170981600039949694544925100473534214473501264175817437153147111772144323600353962222529899137017595909170569170465928951132077318031823958022640191174040301011838522126133192795684714325220581060587287443984579521981236601937286040646794605703714513241497192524454862462990731430078563935359 2682468783690385430118973135019708339278914149294430159105696115325851267549744226817713730917975235408912038746421530673919229997361234907954150903022204373743475394912561806306237428325516752939294008729345215151765676876831842332922401201060721738530593865550520918457234153248692571036713497639312689053501354772955179609640307740333629042492444804868954892370607881449788362922096926826199413541178982306921184193463528188525081361219687710531741919845437487480551987813494406548868328065314172256005948577338020057305129516947149755614986184854186761657924492021515890302305681779998740758743488536929625644236276497737032826239074476130932769648370585146026995904470704036693899588785064970478514281670362372821094403658421114069144854576592957993225160409297776135637932806615970904772443126519345694934221290098130831362028348633171147965079263263622174777595415880468183564506013323150865466541389879038393201300274610276218751692945229356107553473879160207489487508559930901999007551176619520658053867826988790312371804244194572534772103372820272160111780032893416578738413998104143363465318614975072 21430893234922226533857971899287474289320840187588569894152285343702122581433273075886386740856419793605514056332110854621244510167633117019148332184868896292776898134247764802007330769549033511027984350509904347497241828180700606150865112236182442831784142950607322787642356791279568118953468277931604041467368294438583101083057523767065918823944698053618870768977083538469523624182770657586136275977398380433730321613498189442284659789016803566170633838384782057961769176199509636382011064718751648534842602486982706935333862839952816482782500870562589293245505127915963406952520015455892109892536366668941311206613099683671724561595756870323683439820494754642126499007165275081532394439319562897438771033803054255339130125383337656266894745391339588695846377337735867039283626558114153778480316295301201465172466184222592556449487187182387973844723993780432819722018453888916830336439185405513627189614815738989925970632496272938476918989588575127809348074452565347592322981288160668989876208887293863404506086604496666694248093489632643462151218704609794588084463165807621828068813622589191695574676793768897 171216786003006464694125540147928848530928687092472166982653289165900388821835056469538470605551959156605955835352271390741524661616151017630415292318135479609662198403654068808374395715570207287169693068398745680533472776980008161640461398616264175072627387107841560191503001428977093109246423579326378422543600934496000477778374368285538243564682129492653125393721452139719156614426529188877240129076108631422116112571509538943778594361517000195247619797015675862408857922459814188909735892160334974757514931218540826732789797396061985765485290354917382254547225721059117099064779608756571203491371245385803553289454307987424502848876882819972428663170045003478328308793206686736591053356435837749866402785828834869739691012572069048014205317948460184067510398227323759280917673659294936911832035784344957426992733965324103757457841179818906446206245333070171305105992334386444217958218175672472414059325957099282411787886944811836806611329707584654901161104827130882274366299766580768967140133629033569390331863053901556090699720320714608127689672424705498796647006766806614906549465463858507527780988609471386 1367895368483141719241510469430064126833241672806981536929629560617353235028559463007904714194174686259017921845766607608944699475522098854478153006352773283858352350399335273921262766196256415664637825430945879085707234575062942539679301501116287757062760980542654093873132735740944962535146797017749448737710175037967838707107351138624407860284855681089432310050242936498382541080246686617786670374466742284801915601512099602666842518206012569866258001857411026776816543718192126815584218271514187458656220968045927317960902936826947978663869273076113254090462442185229214213473828762006445742472184444481183525028722103231174634995465793686823302705927875368275003518560792838949144897236009699246769164339534541231790594694570750992921961821163112055626644495696554941087386024542736485638349722487326779328850143505209612516240123060519121719734181827303712820001809913731041950182587538729426184386837524409633446273822020068324798545280221805545973806413938559252600640911603767108448871238722379915695526708352510439372785322341360360450451566803007279136318640353734462232226043103367892341962419370794108 10928483173783686103291632797633605287393125003264580650327083396562164191067300099168972723053208453502590721772879056669317104627111032483912092324419872197165126772653224465685032926390351344811727075856925684999505627584887347566856290304332170325396044413570226427155767562205621611870187409682699767646623338728457628716973062201518579205781008754434578440445972150444253017832373377772755696306659109421268159234294161904725110198084825315752169662621118740618212765424232204000212308912445942634539991154547244967921545968001639002115026728925199217935441358245183004742388174277366265071712841484078476312480269749965435748275598812226416664820733765078364772548431757544538990862831165575197163230390848573877647479023364251421063689899068878509206892113004011618784309523183228526010259594645594397407981484046904315693032704212940763938771414443248864912036247563518879924760260291691618668566924325430416943620397848736247108460240362706805533246637941091398328425581322036791471789162815882317297058083134068876887308657100264165391810265949442060173560604475956766105978432045412606353038001823804188 87310679110276326645701513880283546118727620934966341464345234470053217121423158941571043843356435759851755287281653075933138079488848130914930074532040304963084466889763928174765254675157681201286437411319606654110304327214552552759934640854484776115483916152636539994744205905517923855168183607873346551831781632724951607055146777428767307706013306817216690944708205328180089007475619213720844712058908287939127670254654419269486649244218203102089255250594815648325833466695978807412822562849675716212541836310858992050589938864839298013096671130741842367454056667200169567963178288904385546566620124114854724936442659943841944554588578154082494670298325836273259062623625985151772483141396222629314050893816451129513804781373330370377293310986629421527429173509343474842562078707720696235540166847811317867828189854239621702370188986082671238035804003011803693155916375498453954712481217915447524044110057093364696961303438806580270897784483508723383403095696405931332729637872858708527506037474222056443568746629081821967539761611614576005800094915261242946501651842143607989225546864275993770464458263571220050 697549952003436301996516642732261866145429302495794161066776935631767867680869186378012798066800805549235454768394028546435465524474365872081737122175112772057614074059023384120374683989485013454425287742932260512638358789175784204360853681807496954540298182619753949425874601737483801023039717321825881406408384840338437838227229814725450738859484704989074248607385699048437803215222200569015575428764759984730592591349281081752490667859497887485894758775282347148716875621038848512100944991929516311373893312208360106660099166324404222770700860018996001316022755619601774842148103217846363135366853900098137995294116423635534592385469601309898747010876319223545683580696050319051934471091167817816694132406104783537724361873470470761705274734989968054102528154414210462079057114434078178312080239760365876376920750841044915027457836073089589489347363655652117237759273068586189402331169968850407974093754457319613200658004778451178005589276222304125955414091585845738355258128451277655570856840213379752121353425950813457947671696091065095808651327723375295562440610226249685604297509381015477972339852915079435920 5572931796544034628458043745204439543566506670740357209502865495866411561396887651699823853398688725308448985074398038182996528908500529605850419565624587585036631475353041681416744956658691121669308773286947632322966451554251320671558326438361950933654161118246693432361158693064131673930309463152487281660464985826994903516887883220783885983672083411194041543695839151230098881222231519088285371378493301634337432312868028351043440271700840936806415905489595591034046464161311069471527680855244737591267212359919348899484069123222567355498266125573350958483014330262344182048284148328709081785094976519184509185713559864138528611416754844782390844891187822336817578667746187016114646421648076035750149667420476134470444064146753781852279161567632759302815451588391732720516068070370027562625411055503247506126827617897067577084979298409061861297769140847816760122083970580174458354644527301961328423780481873387658794647154219933222213979048229154423107594108830608919171626027227895504328173654386105022512658299489719300227338108367846052000177891290382228280713471093660881457672948310825467320862166016972538722 44523839659536158250128837530838199261002577820982952487770207613545145733555572714180242820136435904597666043349327952796880797149732378411118196279973271800889574814752277415218799416314098377990501245933989495664580420725039641163915136431434915879240637454168378265405860609151197926784764230331596751774573775984920460079061436847316262065232927321955785892268249424350160390754493887566174178728046781624414561653039805535777006869254953928721121717459051277260703479773113294823644332007673769117097548274564921664557891895267215014824508002347915870706492141801977058543130598199900912207919886360188530575753883057053934029179141855865185289761890787084453885312041896980191127747643414842033684054545910586736401036708505076389665396967740947946512772769124849607964789371437161855908847153231165828453259641994113132458668683463675267103878776107070703946034303968951938080390878533797185253322703454657117656508374074500409622532105526087657741829348478412742093346823261996335365914516796273416090066671576810822921459978153556019993130360336688662374998721038379106228021573115101623048870348322373592992 355714819310891107883553630133899193489697831454246546626447268786405854387761146526548742967324566313193459431991113232593181045018943559126852513906457851452595087790294493897875542294757922844333556045703381862544344163388862972332210948406500911057945084336072055694729987595029531430884511817991622656033894715499478791518338630911978992260629921297366641062674203545748600873280920079330942534802632699714781748610974097682546080307101522799877572362937245839780934054552200957018865236468242739292667909457336769567076815438279788207048520610410191675291009438054247581782128723099340613246316094224211620959685133507612867158730096314973757379227430819226026348631749227180430975514536224410923332376844520992770672845975954537032263450540701866260507419052312354118626996788733199994583670654792917520529941498584975361019882257853216344214080644800008796032369945660000060787800627972463179527292870846529683249470335736001763860223890604057889518180010349121089334235342023487242142353065865691854798054258526360250244511577374804512588347194360406870230570299299481427400257808121592530217650408535400390271 2841919504692709083235711895907669187172024246337324115361148741266764705473219368935689743749285309616684843351433937017993168231128566324711683032152085581530222200043960898599289032943992154886720213635487885356354960431186892262932005369090833311487117663230674736362368930812553876420391065793986388101014447911948178916856816781417232097623658841344255226548440671299159840067816097696893859613151692555325931322007943223405979441569680090035692846927228891476351434943851561129119723611255105046715832632417005104496033862594698691385615720783333020041538559200481121706200587187615790834298836025590925617894568308021553828436589726379905211851937526568083606600006386884886427174642679298926361298006098141260302289434786117187634895104121510083302146342077555814673919533716606746663580754841777493085042532671088774686367021854176602130607866293164075868142873909030286410405626235362425264190707332657474030235648957084179348119349584751810020540974772169554344936973534064997894124203708684195347225683116065633484306106175717183566138155797441532409011808209587333003367294680292159512215816038327369188360 22705028519586689957636292788107245561781208125923976832861277035645529272617102508143524651868813678750097157187293511940611428585022238793965630778319866838800486610499022072198264831491192597797724473702786517024258916383440617189562586051564554036378964178517241351024003808245796394441513870985828934502053118212545982074361812597030831567747872253334062617553831295236152628709877030753061402321453672350147817571952623315561915800019672165129602398696733876385143506653284711407253319510641913573045339469200866938695995961971720024739319286274172216041379490576981895445036643067475103984221116252766407470626559507710205096758145374632203339381264840098720167042489664254225939492725975518668513036158147942889598385008983044467354204201665679349820460333662096203801780945677439793118960714772369800410343594447433079191134897123974736568833403097283561951230728850415358323081106793867581130573361257780866571304878003420466164654582248191911349507818791408919151592418413608981871003066286879300135203921868620041370309828490090327898623804857771614132407873688411239655686980691593304131403746631783422732715 181398125533724673568455304425487069472395510568807119008717709277839081941361404749844422330914431962427245360810064976354155193873338506681048675243014770218470829541263784975737200140425388001684761462455820014773998258839426132069314202751914347357014546437810954373812184644768441124181318589237844712017118074136564547320356077742306781056359910015033832393263748873073295341695649544077039579774001484664257147910484917132327592700055989610083209826630604216363559219273949680803418182214302352041509082209610345621038660616508190776327820603128561690599159018173533672508658688782651899121785779914636455900346219408579018602561696506106332580018138946063968217500967858647323946963279257296424066236138811982766647649207136019203128165257995357259685804346396900872132774288919583874598079808597023633250110656733197105166228891751100287815549890079275325558851033298011806177576318089624498099968723523018183751359599340371970550956324062675295477759412704632497039740331463241551045261293886525432582638798221426611423871911956836747018629552230154779787012653988802018174624406111887679157710413806387294161478 1449252311316600011784007357475035656327770387024650657750909423583838102608065947827057149568523665542891555984195777473030432523210784101667551222307389285292169102326757022195367834936503146664928052196438048832249752220371016995824263389668665354269976113681717750501754786400001749748156633040925181312390058540942351302580449287890978439096042631808108384542804397861776489914068864000557766592851101019790471701242333423718392508810144333142567290633064638948216622584767522285791212636486583459175632268109584047436768997886326994881579710526816169967538585206765103195816573969892836194042959620552235599278828661450839169368029156709685373754544846966436042200844951678880286554304505568546902998946913160482735044062962951585100849113172671701738039833638785049055603725174662748310691172684791364996030495098539697608042548086795224979242905619612574031068778411121981993048840840386039809092854755487216782482095547101879106230498309635572608985890576305488138365247515882370446735376189236653051080064672675930102235434306539802929419047144828604263442866536282141060418476977574807236183119638229813313175268 11578589874435014114345574302370204408464778336582801088591603875846598236064730199674494671618096446378021738205303053231277443588035901628552058306139129338572558892702147359999376960306279418654134803126566942690305384464942782165347780044578777741634268172601207584549364472512885109320078666611373591676095161169218344739631803898666839084727138601115186870265917398969143399780201288203369194830765489400226629175100615289972519590435999867664928810648578117060380466729920159533314059671669709589657954852643642595344597750538183666740840581232474865863619950800779178439829500607294638188032464575537970540162791801236465984679591243485609215040648577960548670348490342599350900957324868409680411069988543313462085459311710572568288669234378810152867613723619866444790249475087696186775873487851708492588657330153254826591762409296466108513049776815818321787142922208973461192030348660136082408206882948544973767477970138294051924321843294092640189895930695802520401633177166709417907346344025669565079048404813260690576747031471867540984076608182156427708396339718818304393469973720565176049180970920526107841667304 92505552716069071434388678821463938769843246510471222826767090166895618555942904457771028083523856232181254499365446583735369402892575186259961440941589612861798222299967918241948734884834983386305998584190335230748118938451603384886358559499695233114520099532568369806009167634478486001653488329960274111366739373452801056521817936452087953662295336132103970690154828325453118724281508206657441368256408367433562573236187729811073090467862161096322330109617363918279821332224320781270561036295139546459478171508506673698047260707476026589554963924732429502570989839330192979628198012210434935443364520497051294046334491134321434325968835444052046144290635467311487699362943020862992508943551595829352550227981834970713007521980346706430533201061835650150192974085902452932206172974751712555842181421387887476768393089113911814701646742363830127673509632680617327859605847589807307419921807541277774532089920771246344951403991255095540067511139723146689315925725908624177647251983915716846691494797311720055628185182188801039798744973092989211347799947106363250730323422936260652238162835042526383968471386026116016383216206 739061186544377022051581011652600629926532866250695007257914834603784512019550202799010494326489468144918586580144795724559960062992928775392927456805116621866382439697551845788402713220031264663451283628197591154314267027370444031504537765481774307146974600312761675312948756450353477582360439639685561014356509925225291082824403085072390838170944927426239338362518769081962319106056200364009063150162773199155414230959256851908667360261718711743783077626099131321820560400764601008732415734324585312391339584987699940821880997545249162075564779135233833456304045409604943306832701541354619535453606989622444861793423157489175959491983824777937293496013603283062779521800005406991605289774556070168408946578222113261400231014570700420855298149324404228952019507404098874682564998369146677462492784664144658129251207668222825360443344031541969847031376775125922180695971764251625850115961654737880450886720416992850936903129416254656936035481787018897006164559620649026268362326705449376986641051292996579243809927236709117730180083450946133203280463819367755043070429208799186776440074960494925687572974050022922993559153606 5904640322322440086412652025439899735632392235639908013405958436974650707097985990015566708435265207640817232780617654876433651340140989375612703239035446512733909858651412516395203842941160984189527992843835239915961374906227451177287026020180847208723067944527093466047930456323269369830896204891111982698133830672800176995128390325306430675648611828635571333539029985076665060173885806234692550789581899292711582471175431225098277876605371085146433906321885751160511085901697200419205612457190934277665377298051942416463974497385716666563973027731545075304648917759146604087316734372083318625486530280732514100010620412571376432003624803802029533673466277164594718858258242134421459027103503385540590071473364640727900018155636281459168951591925037082163228725044765346079517845813858395797737778489193882602323527847526956886246151629462458279138244134953073754840562088319380984360854856765018057191504376068252132889414995061179287677295710691942657589896941368833037242117283924791673963080910192701323246101310536653443070461013940922427743865219153782535942178896526028014384890324177364404035351408235579454186438375 47174462519556616788528526382358356996548725168665216014197040851283982954163920025568100917043976460114235459487257759260183448446332643913013319171484840462462474513273983014603734102305272331489076407028958430678245662028453070443286514555284509010908149432766368070322650355895030228119915051863393104288176037120229441306917375811493205418892125687008343228943886682875730454693744861245908290925992672469087859606598527603504034249528913964222499483009703627681652775324680061991433602977661857119545223035293479155437396117803368334495490987019712127339019187379779921932471042858532790424345613649455244507106234040950276694821028657980352488273303417413663681538188542045211589854224685246292883430926512737424375830907402996637675071801211630832739707118194060606447034298629831731932928351585171629297650067747779850767518727833533394087885692666001395589957813555300888984122491967793816763071939682339469714035120345112411897799504216005565618325033619382633689590551625105734445348624984554174219931242038387813194476116759665005696455478217256610855506993927874391238450553370960224232446597574519440367315818782 376895482983452821306522660031161979121853391062048626697753430324440019973386876885330755217402439790425890269271890660408522666496944726014989246979840993670768611712176118012571122076577653192457729645793939571520834257419060915950256517601287103846094489613297900180356575892046752788335273422143210209259230499798788325644606119816548914358958441351967589640479047359864887085819165825351533835718038768481401227014922937358117372185489109310285951020988260560135682861292565048392056852060136391819967557146375447146590815768997605624792924226895270183401386915653608697470397143420392574525202396450175366108208407378640320790848418678072257316971244543637611924414633653171349197604067078334945057989361088410015533134424449036969719018187347308135380465614131336477986488902905906109489015540887871853170235505968360931090884052850177527887510035145160086869773576679115740669345042322748367930450386766289496583621938986671017411289827580517220923188892461039010828420397656509225668354874108636094750722363440437764096753943272956719702665729484422292114856442792599661066574004679193318659787144243710252198661878349 3011170608083663438905246647460984221267360552426118573574052825161981187942192358380926588524550117123204210006545300660959946916891780554825178161571564395714968989441920372573594915088772976791076656802283601430606843210888309302188926392663203541461704686905401763216274247227288228684066771634102540403478547648734016556505805190610585822914688484690055347275238009573090073011297767844421376055893055286532269815941011164137630365198196014022043653400575304619869521053000989025554023951224727290838733010931736667959372301514968844454536419141921449397367067663495961085816824472470441691684378173115649250456029454202891767032937781515691901019736779547604872280118116460266440625738285125615234853101414569912429048188160099220344048992547343501284450098457098656874326108080815263165999857694136031680407879093493655842544861013908903563828557678987779953900983601418071495548100808352491060653712174641897828706586239793922131657949246132226515288153210119896028233455758642815200893825963659443863047600920661431577116225309221068353050337806100387168671913680021497371036218487667373604566908369448784528377072866412 24057486473585858212104137730660901125944839555501908411091564446450427517097408984720990612421035772593522436204495347295352039306982233522699866061394908290511027828000258838941100340657307328569164495867272360675808002374181633664095765677804710348087373436270661949768014595616753273928161626665247288734137941899916203822711895309419858306811360615672150362566347552892949388893411702195635850297989174788920125311050703740817421783354010032775648783550312279085670035513756995701597713610097072495451475717852025384468766968050925011000576831271465536036863105170710261394068099805707518802893984991182182492445220796712142484567072632018509881424413041227965900476768793013212423226292394545714558925306111778749346137990944848518166125724792146909117427023446381015183754530484854982724506848048171375882423917614908227361877642038495612282428056643968413391817765609666523137168757856670413422480756293998690289372526931143114117839160606863402857748086863702998465387049314994978900964609254220340055986101739059472090215323788605729572127196532692492571585230123008683687662541246182949461960777442882517111517552950838 192205404326483918735495533257713029448711877891785872803620946409396937723929884301707381836835719798600607210184045548654987326804458613973028014390922681179295345976409636109913784568150808872103217761534814006601261393638135416338164698947186569469676791872302105321323519605724440318161327655573508866865367195798955667383329219505167454293650259921447812012235910833160952667688403016025470119245409680059554074375538214441075422501983766211891440291559045670630667814968939389956954486339470404123537395023642558051804311432242458397118429313590150640104351326007576403413912252480142838490815335510163582853502499016355848877307684139182162113928223642268053189874294634141960305644803129410334967825032531726072262943500470663087275191593441654420781664762559441368142746074178636875474160537043859221107464397245686163205271121160127963809075339202698624266183501376634860817410421846518887171018060023512942649661857468841339212192744960857063047250108204739481911284873146956607805327632342142628502098893486189400222282724209450720931535048537981316057060442179288656057656644095877179249759373818337561995236171277296 1535611639692271187868058271834034702951591992943527672498711806758744091176384286106567456887548518574299276461043917829231871771932864826847688941485402565828639954924018344421113779525270987239238867154302958738468034166757844153273929991880275105103785024422121325208617764802881672004438732906089342046841561532546772417132871131887256901459194838850357034142330449437724987991014886555905073436464878088646672127527942797373189417507636674965193150751412805667660476585513798629362470996565867432576041333181682483674814454098222750434434330433800557340373557010986391539194669782334211175609015240934807198496385693544411499895757880855921267826756302464434796797791459432158844681762294166790532282704612255510185438155990192261037962576689974621156192713241591194297687279022318660702579826048279217582111442996294705024217593311307570661191199255057214434781137645340128187174089481769114342707047683499002778052606038352488670620298825938393288300975939631688465377722341066315819838976321865729175320352085050115862494412585819044959473244434949773306333356796694687715409534498498763041416754708443939940275338182974024 12268674696347412877372148978925426063067856144289832407838159795564481084805789316623766888217522448538461347881832881849242613068466545613083618364016200007488141103585466551497846729530502395317452883851478313471942154974911221445379749091882170147533785267716568139359107932665273473683772864038555909376102267604543890734558894341787005215771229487568902495912177528679541424482668553636302359564976140922728955369306840542375021127306715807207010928208833944424224662370932814976875520023112654695185609486496028570507158134297491837490604696553656034485587567317209592452273504497954041732399784446745959887751865086153728533865103929537500976050544845706238858033375916388722286209552534567287305597620009403317313005101196074276699500531503576562947117375229281684003873845624441763334413235056675306589774496913631607201538689515355672705096154862964615319357743948142009457417611754472071137098584344276012662553860117558066961887652352573276239299190967305384313058412473914944145578942293353963791146229340051631727799260554992775983532375184687945769959841795776773864482336445596329326166938942502228033085019116777620 98019924109074392836921122367213408155192931938118063646997974900978668488482940564641062286504713756719248360633375638315765663358999469965672660528910634991694660008397489381400379629622638975789521782852550262192127154615485847783026921061994942554541318900811329635311390309715007171481991404954290167983558712721436466081247130872321920660159684775912995734917734661662246188477454069144864371671609858687505753187743669020033546431658100189599999196803815413347347769472412079698530680020887075565473625880350452755139574327769142194757903765917059968098232004280844235891556778939634286188932333714364198032943278207956963292183799227698320524048861782903360566466742137635579613056366142412677142135279033664280999450470144268710496830634411929564640216908035104597387185870922122764540779694311432929817572094695852026413984826557072027134657242576348097096464622780407609654566679912385377159922862429603866841394805255946740469888891764798286362070425122902691805212491091280001682387012510988710872855862889873313200489863065271373628061653258584315225295024507484525560749886945473833214399239097770645351922487250854932 783125790085024596108267641170643462719771542583796708755906305021604201464829627947661878396464103402622417246606668360538008795168800537096317773889602159599645769266860839861043273430126794330402662551534398778474621605553754837063840992053780174794459528564294287655534111585353716380303901647133253654853108632527460211029425270383409751717027468445774647002570187789443963640106106728056994453008962973392406786241293232912402282486688865383338328224417096764400388691148837354560434109320195694457323297963211668503200173612347473448676059323264720107775758527328502711006141401825366623173649180163215683036565955229882598962359887942511831016454880042431145546041709458700638108376461700235260635335759034414476848444250727871938408104072804655900499742227212050527629890972622962087932785827478396459401971332131313232989572249612160317276267360912601331764112999800315902375490481239311572294026089618028212301107400640406911057771676827589427172329822832337436368828600434401228125921985505801521604319741658937977756335454484143634607392944645747602085450206184991753400789391043403680906958322741279056635242596057794262 6256754926963793125463610805603312153957544717149881819589692520255654061627471869991203434664919832730814500541596890304411446370608195550849443549404467850515410364893680509586420272641754321629462790387229705329033146438993062252741245445011921164585344118584886710555566078837925994397445486860163613419926804147376120811027122327098666957375005183497933979439135374257788310173880584373100081506355534616288203716280059498658395051405140757038185007366100744608840193378858502827689379430922602697721074856952150313859164561439590517027569770169980461518197090066747602622245335131108279791670858415478616947068395643873898889431690319488159101901941894837508164855860407673030227269052964966245795750663278398125622481020065571123127178525561705925893478374433412819135013082818641491800391305675312485804678133483247610466837008510047042550792008823817079327296277938866172910790909117543524512153901032120075398454937071980090942691139891979272361569438116559655470203270385596112144882830552170667566587930417570632006708197015487261302571940081892292379260510638874419969856617143594545170626101014113758011521902605405716609 49988167290831482112692344950855044687449171011519106480752259751186494696414076467544999552140167366539415937552280915452461722408096522213804450017844108803257302981895214299761512267265711282616496615275117780024035007396582940130475172303148931341579580884758055693803679313200699713151917113238588444582715697591205011045234734014377635080806968915464374514875356302709768162867994892396051849293115059877409100993757142557197195567914165975992294728484695941416760941404765109055124049706965113119259727349536750835284685077145337588367463968378726875586394186288781863462207274591240012445090342027853714156535592959817647895756392674090046088455036233693668054590319046651655976253693879241914484424894298038548028635857101788632121306793199128279833175042119151187371849471958677607047157908259000981242339276537055447257258106190689361177774901701640124628483440374827283530086154376828110139303339594174588994945827255595866949518638664901312336748028601692591329812973519315478528256750572875462046903063046257011059617434536359605041032031744401696516063301948829192820707550304146944419062389849671832516345696865278744456 399379470307772604840977754201611035129037296559106014944139406864619007187229180907133525057132628696262708725863195088480490376782406166017962049900115619519096048436561267943805328633955630474795289897633668969860774271785683790943903519334785477819812936189881023755137588621748896474449929681354768848894200068216188401297207147591725578286892008477515005007332089586047978306164892572015540095281715567881177227901318650727330743719396161274625529956621088706640721317832159170221746852549429990748864567622866548200604754435194865597483199712027699963838553889627864469426165268286158908107288285081186545814860652704599080019509874000689736403007572067909301489477305640753453778802322621182804865671477601150273190134644535230987475675612087734160630866208349228684525889893834041007867706097351729596495072316940809281211332614857728003654944394057512522932943422228629197534738218629686447140354498702935444599402519210029791417385314225528740413671697045506116736977216730344544574046095865111566782072761627519141190735332283037063638495442384978850398958062946864141267238845023824512997119122224294320187907986801588218412 3190837664497796899158718374725440235253870752535706852963276011663032940715534682000389496644937847367045964087918235525284087148789696753534243226294458736299261487604358212912277438442701895204657754907254117624432877385373004696984874615068587372758789044217944538394732240926731703375675120439720805413479739881394073851758376348874890175488785831355771348683504277649803365692928164280435759608632528420092011941752305198536293540391914376696501951594572159140930600133862760209581308918629038782373016621155702311927480826242042453192914111601287759974121534519432178577850985106066961303251025114453608305564683711466090909653323753925135250786953421673784776817432809448247929851090268673603210273663671461174071917894784805397516153532859659510033129160806719297924731935081310767502887497714771655174329085698082570580783908729412401455199367241024625172271241164898978089770435150292193095437903113998585064508092885297961772150401710497918574467577675482208784234506168261388302009552280663340208154038956397204633922975689476000985509189494548079142196414639872607253372947569673116951809571411970576196136739507558573745968 25493187097278813761345591928426167461782967802849368955331272659670245275322120704043326801654291998896750978292584479976723408484323988133780543574064164796033459989519952384841808551263180473046277040029474337816317727317673033290279528635473878059320414072421491593900609610312845975242741673037507389787530176224581215094068797473150096783266838056734934226050987695807082646069072678772494194569690998908517862607415311865322758831531975500907452929242134144134325341406458363887924173970166964546115648913720354183046008276503623865884187302329073192909482476273077385952325235438566928143154265668852584362117477204018433803758550989214018772696891151497346169627570642497378621588350484460178212495556058919175561049504535266104895819228523657636819156370912149709045052998147572936788584609713812806028028524671932124619031766727099810386382097555476418856306248352566722924020095460774682199161800816408651999061112265368809871157486400272388364432843359137425992663304163698691366370386882205458928722258672385892581489777869495461454487336728437364527984262868522153222863412199835122753031319915036022703525687764402038167607 203677945918852143246992758332856735368945562789793635282469513616591616921372956189160685532186341962933353445511791829270608331689163076500858676198349567689555069427088096112827534133652956086096349274981188857017315223648296922565655584640895443507157300269674449666428224677646913246308733471554155470593022315789502924295781790701858473492071697406285218013513160746985692466716177254535428890022666205156907554312206974951064224290320431426431288094132196987011669735897205442590407381761311279637404672558291581449170519881643122457475017938004721838878381928792032969671041613641515770562625715461940088213705930084591729508019497004232525908291631243590220781736286711203966203376900970443637760727045369308973237022802813077003401441896931280991062821977053654435806367629206194610277674733257935077910473737573087310795574070107511538411421535875949487193729833577725027546383223653349443910252971558522611223065669986656931608685207894264251554033739119746507147550666086266170230421156063996160671287251306658100788430494773394730828594346533443771794578996596024008356681835185154970488291936561459618984617243485665728491636 1627287650606933652088743012352856818891379554233397833184648396351304250768259738470597390120672665069841694264055873046445912249539632621634053865931836518874292994505798509513551337237484408790801024984809069734325644932454505192656028292970501388724778933078371460855534871663475442624358591068703130141714655539403929312726767964596025364625336221894444636755366707377286640653757822148042569973051138022225917146356126715514376953537971427361389833245115130271834146280174791344320774065159766034172680192810006689683283849680448203212042312949125040899457272758743189430716471821678336154773826412402147429425789388848750295798926665403285572532708587451702516471257512171152287980032329532473498196274828165168482445502122250819348122590394951699603591611207746494050568692157323775733335488790471238004226547896864485214938382013087120281469377235155610773265130531039735077314986644533486663404441089769791326284478005534978406096712670913707878962722715507507413910297020195573780248001345237969128567956942178850112882662348213103304292352078152370909452659762177302461731605053206327334731514941423529157206758203674012300705604 13001249688408006454396380267472851767189383482604458482094446985036649103768172110740173700471627464710260224803038351658434648576236375782729051763376892478569911870863272058444291630639837820063587410638398442449489115048609460238781200680864706100709746610283456824197114643230852898208724818551354792789363754869306294596212308447027956234157394018786527110749578873855346745884526039186214646159680183995993308313370495232454600852674311283237755820920446380034106490827708460099725863922857598524691764236358583559502771002741024342848687067281963123956986126347637343595154643174673602802467535676009900178373297755970480860381173445188019538384849971025179706876800920787641876934649920763456289938626065004245841579291717946590983003027723858403331252657782847050859893799676013496773714339009101954175173939531178296510503429402301494682970520104627712441618012061991756175220028484399899650645811785754897501246423061210980733406637184069853645974039690282029215708791300505255328046258953867999969308400581537720774111637404901531598642725373456844583369593605856309781651726420811134926818984909098010836939168759107212021294454 103873871090385815700948727957761328483269948660416603084340550958390001677226587669063745586681084847200904467904491784394541612026180505061471123387518915202218032058892732177880110352445793898596326921206574076894587878942396455289004408683082730959244519288613266144329564887921018924697003665741904465892157440091615160573075177422520854495294492981880274747813576488442004406557845639497916469035658977455276757830105007120544141329927778427394091923114547343851401638313680968658299211552618284699731773199112385022048505732530944986444062729741311143282057167667442728520497020756456984078211913924594203179937629844715613412243263387004873264994968143651336199878381909444807208865711941286965421265300338251258790729722232945531932521307119109097108144858620943681794243633961263122965344078028720506976290201383555907619905189948045056151097560528120720078519162106930230493111278158230945679186624323022727612737126568011394900240066253589718545586407802361144963219727730412852383800747731614944554968603719252349412451726120816516396467655023219874612902431799684301544286336962338345756207700494661397938910118364709210628061747 829904236527240988065116648896390796476142619969561977988145957070110390288022523427303861571816062555573824574531846904384061892597954751824801364157195529325349053431308946760809215938714598640617091581748087305901890108252607556252283440721565289603159978995222154571731654341368051804494864773860990463237656560413504111335489540259644422007931685779620735599972876546361120659466030158717208713746317678834239959185652341272382988544450733946114679506308586129480885170680373273961226267768050857144394926187428102111054708055633938287739051457246188423879085375286757643287341929619657318430708164914384765464342361738436759924479561680317653987808816059034961192149467373225662650793303923817130169813258170583538317223110375423515769246416750705518789247910962111894928649424972891654650889772173205201752887119715454702298825909077605284850828535136353447631557519147387449147325870668616492471057943245002492057841211704297537829317171343223862536164840921648610061951205725408898918316450004490667701641434353314220489861441560307408580466949482925847552238748561447207103519416794141437137431901587191055884436347452295959218518356 6630558215329796209900285720867134634429482987285097255390557894514635518428586423160633846580637643079534093195143146442949294136977265075120408686949313006581372170945899637588271015435729667298316346802814020505198182774624526375697886537768581974857350714778539895248780767756797461649001007529399962487278501376486270446236816282959433852890486190854514485413531179681212206285984829012616601968734188492457962273616304750176753734791367669364130416115427723694654098177050509535018044970728158746746926430949682407702106520946672268109115975777728142302302711537328934967154392010789332014743280313428528323032901914682126880830770849899062820924074251052747697580571729103394009565407867043393155320356549660029359206074292203963712859926063479278997123381720775014449899499946174246620710685778606370781286061248524599887814479372237543606136706852246938439840916563721235746108165722035722070716202306689913658954008397824640752295136923508145185900538303796261106143878314365679781643270517498078332241926371778368162550637971430077656977086150156516892572375603805522709047421788117121470640971700907304767281140894134958717614481441 52975205335018176942589152855137833414088130908477490921850241835491009137705268707411002323974522489985466115434950600425842150490022578115778730045086609253953937513375351945190045874181777371313780606931929619440275175491752534083674701438260032848224827218542027308187877166470063979798340774300874281130090282920928575805750574098329691228505800886924782587229172378557388165263944085041662134428094745425621504509840454949826169233416454545333271178742353966851811566964614044028908738120414754730662780862518354848339395119338162168652236223755795887149934753315499174273947477164610292977085563717720582096729646513391222681371307478236866423690652001577040264596654985610615706391737663794007935605703336868761161554641212711216723077445592200919267052263136071496712174786313663049020588802635025684460988675292883014393722941761149963556009698071475439623486798303361836937251632307349642142725356870918696138042524880935015300084613198069321478017357154080195987429416757266652525062838720956001423502331235723475358875747339621251769828335286090194269059133782739947343065833441887107488055874793971452628744598342529301692230647122 423248716467728936503831377728038315377034336792301903621497226871493986661147494195370725755401587824648152846725147706188751122325022644339857302160575090005073995317348244938913229440912875774097134848130778946216338857101515277671247136913703451988649977682887214024760103329866335984674750454828430298116306616836483189797112870097892663719988093117727240671982066906018943713610311229645997882503751207450835430357070939849008313667602118030860347597603101578487803193954155122381766306244281917423553455149303399212344213964668239187723909876138336409029491350047054774435769289401947706352449200802184596037187694806932171406221903197405740988190854826581927544925180164027811788993701285804930458422756796386412073565688994456496465260843918741204693931258766061246572632100349594752027832683298532247579877964832521645941036140463962790730941573093388497964544444535458604098144212180068154969288677311832085328271340712106909502940656395652286778653150811279245815210980314302187500871292512519693270665025213757942564180795179798721077340471822581304799481849620495000690653351999414474285658493210527986626705737537800010386290568707 3381575550597514253184451516973758402000395316141196082464784165757694038434306270850970650168719598924803587349927107347926944704339862176050760428431846025440977384297397239857979250258947442762236048803600621027613490639605973885518181805838403160269370060673775970540131946212373477889968875133932112937743596223738235922680783667626137160468594769893855346198343498004021614044941837785099337097586737096027839283425420679127317869722207903285251224106030580125203892729820292547394038635244729496083042687309920695406088643266646561044058782211855490759544752421075413536271736312313863541394728172701159647983485244013976108790872964122141310970337389544586721611751831455826299054184514730525906492552405035985474072979174377987825008930316035267322316209989418274807338416234976019954034292772534525364002903964940075927515335475834367209504496419160913080145597372573936529277417402513484885451631177777001640699581969046141803626846057283066059332317416790589726622984463625109114281664948964332774789195043776629847817128342383816707260770576318789196744894935858363852775307395420825652395446875459938171880645124798844088424638031420 27017364572414072857357699226989833891351382437973551105363529357564611716072882293095359537965855516866115383592860540991560726403632626874082866078291189448212844007033893695169348340285348541518119210230773356765278299335288474042773208078790813034585682281413649855046487647407110865737708838489461365461672469708603333125912174755368011440974435675829485303226257719803450583751540207253859486957035100269135171578402008901927913031328741969351856844199449754758176037400544414570861794700940317798492994798710517525026854833791400689370957824009312872192031798670739873531689822645673412743587567297750934436531006346303454189612287760735820878702849753848327638571192705926986852938262713559255052400558201270740586902821939034358836508022294774208526086905918088606159705661392812368512172319060052689583818552206632209645176883563334239409374144223540446484591437605268184840948476534872084185298459990777104158076334503918063951851453877409804985410100751513733540283156556642577324340650695582179394800440823919683564173875092821438175727473451198291215926284633995726730825243686934840812594968244167036735421010005740019511938377757078 215857585167652987992292050531746956027598641689738718312133838315776852987481037730071568516275920169129843672976976979748447320146673884746506995503254605210019802203895933226140411162965358962465332480651249593580704180083486417254689851672079437689112347451515201443879629456627217051846844633139307816132590650675337017736607027691995768361785797301937407177553414981999343355239481220594762696936048481268551225401939996503456807842121763405829646143989413502302957143742712518259044774733229267028472628931177855023549464242256071921133149564421281379893084763129758833825306526734975248035918641258925584291155765523884479239050398592654988062996500938016043677527988712791766991973344465299793467948857797340898524075852519436591257430241116044851936509121563148032114081396918712967488114574070580946974523396519886920913310996137282044955976649297489927753313173830937185691026683832932578005439173731583956810605217949705581478568555449716447131084295870225241535560683066712090264888789577812085393039030861165478055929348552871648975432810446830261902289711554054861090421667228409559811853080861481517789005472091397691414389931845860 1724614714578954352485375520529029186349521249364453759150211438199656092329385261961289799399907398649805857808863467273934445553796011648430679759209155296997622837190837740686162207861377028711963905065452534201081222792974014238322183171665891741053641126397084634779052454159259170826881293076650850056631635077065587545053619057700680875243424085963914996424563612963618085336641480302712587472359742451084115099382456397169977142401825510253392108758885639242936100300865163736184950736214042490561021715342661828948149738089554048897211437091683909771769677896780731791362902809004064387047455695297067437891224796808229645417221368326113699572296702164309892132792633553781337297566709727225723614685124880942975071966091475503809717311757136340779246313986497471298011402579390765095465954309762261242140976191742940826315549343918200847968707936840304210315403344334741088905648796170605740646472621222400746204767506704004740221315160087501333610174417155985500760391278194837392556936643946443220500517611159466038870232334762603964493409599068467885513402751226335440248325700063646841771354786818663210505864444094606938845237904366318 13778987351596025654775848173934978403817106281596764589624023605014722155660120374402870251519228666078601534052386378870673949201277035964296195069327186211174728833355809659591953228956750324149284985132375631476380935834524084422836471380896412611587379935540827901756364919565830489888957098620132466109106573829021330297703133672559124773634305156846844868466193444106409820376773336912869452846619125337043370907957467285872324440668277250407663992239097272082281344029185890821897822002199816500686109416818433029696641551305426353177015787144523361039892605123962171199951962700865146830241922357316204927882721091056977349351464340240435155662452362007031970391208224051718952680222202220757312031014028778358198419789451551936071945530223160802832286164737099987009854539068470017357214458620005711920423885157191382751055403215732032330157918972158862140646406727555097088983511621323981319624221755544292240996122340061538596341368600646502755382078180065810045098376071920004631673460271583899289818276909459242514039788402166826278376188227902839063580633687620228044578413146362716240228354269475683915630697877746351132485961199728282 110088753990618833994180350564884433807906578089894015962795784878746578667610615742054338917105547967995760838303583708630233004850637581436402489854834511581510066904154277544670905824073524743239578395304538215935758824449525869288208052623389169738799837598948732686382322764800175760667626902631095623300600272603936321010655624239158759383605357101881494276775584440554254734765355718366749914106339059769046677251412371289253438260496862004061631738430432380563364033640777739221109072198393727511094937466452543779772194319075944698817010301517082244513903153683575422128302477908623234166052942401461127029289524587191024729122450839913348505218977781011284918318276643623134729598818145911100851542741177648968104850513003422470540588809443167576026538058994519416473326580182221769079044299070278131240120077303078680425995054094633340598672782319980001746256493203026913532986514946828287088655333487758439799276550656787183563742006368389976272573572675037086797048273197642881828187370668512479317994969637623034178556432321362497868991324463492751474831843387261031866666911512577248669991769050696421958485773894827562885044301168688227 879567251322764225290704562536195427686506939402117726183145953611619828517191879449232280696281664385478026352894158613479061673002148553264212802438117464239559147031939694547468420903038528669920314539261421982310214408291276477285080470884186792101663871399665597111308477920129514888684274801182452278105289134379252649232087862015819632472644335658351756663265955729510630158046863835458232031225860485307602776414602816598362942336048796996508712371460425094531287754441089997973401647078838579430171035370057730993563177354348204076993388284582767996739066583261126256015153040143109387527168271642435470391722174616098141406741699203813264366335854317654434741598800799076302769512763256909158381962782098619406745274508367086194572257077415672385137020584926545184656105825761147598382088927861943383969438014154520508390887872950428466927286190053666464321647091456032745792044572125160663602839521639341101861381061003274794333623667111913152723713804344483329847941239179425139757323724764492256325085859404740910184861663602217632525490987108826527869629544738617962250089137076853301710324394713578445116959614615315740635112476794123778 7027414735281957988348689257416683289661240684000023651831478988864285366075161633964993965505140794044925890021586104077383996371500776463361540696303433087075430819453805897153166178944924836436616672023034335398056818294944517065902925168732676239416532973819473010927715420662221071151498983442345199199680250957307568513082593265837102946633325294695706193298654982956818032364706544116887115172956351709611293407332215661392349240178326618670458931386531377218337993034698632577101524803749662741558135708985996418289851379719724528431104094264928343872316448368133310664653856696839551134768720720544592497441507763819006357729808939135514950305067688129499728801449094285474581907223608458392245617567559780642491543405203247004098165586252365126056070861460483749360995603710364573813571739903104466702750197011695389672830713040386319955921656994496459818572530401136028686319558500293927966437170559228885592335128804840516527907171570840774183154064375925214452363307918303378155609676010221550030378294740650394519265644471945130331608019590884684949265453746198573677228555312323804092190368972407205690150083916052828063178301706576116476 56146483003307239843979503578746631231744924549714793846420214571878265379655997899554699890704694720100108751517663556261723616687724605880542323065800919167610220044049796561792643672141107725752460629495227798673824532854500913518481473593579551387680409957609388715845830064027713380686422583035765231148318146036718841301641885979581560810843931451177728740559222424447543560851276103764713234839353540060411817848206693692224314824009899779307274900179310338887040609950124944108180411924369526502703809257732794344291396745501336802591979017386755637511532669609024551788936076349876366484223366885490221320208436106478647956008321261239123474077828520974395444053876696880068187713415084486588626073456005697532966281708304547736019686897709144300346821622353865923739136942499963702881246987876736672000586101589352599241290332035109876313889529375325090808468947420566333626907577360544845165444699929475923326119796586004807649337510123203924523325237226976408003560892078203348246491958290206002220625190357298235356367359910724459908450342405206778768638076245124388864494802968490781645152858598371032012823673811898127483284244130688170364 448590392133558641390729758733288407003704528350596860333431408546251543046535932107603678409945740253844168851027532909177012741044459122130872543537568774693040908698092654412908095959975774898921538573376722221586814890431877100182434604442014661581717932118033111297353752267843925470811854992179477437744114325405770809868831080063671067996038833350689723030009243157368616055810483783221111275823857963285540882553500462817538223699312917139896593981405438586415539037119873593505535189034082486883194047473172572824109979897597159171681289090771554989918515619302652375170774085308026667834439749735185213113654523865278434322853988482561453076851419936945520692491944040703801571561623991023149141498396814812603426477348447762097122146231902517704470135013852161721981373292758189769903487137623589125654942697467302425070085161902364802448474827315886977328654747510472385486229813173267164088944544033470120156338875333210574447674855982987328467128930068835680594358321446012109113320128225959916504478586831136677710367748205995278484407643439713653983655825793108180253255957892872856933104678800729717817335991808767749446136439145573690939 3584080991543281799583985040234003747151038186261616216764123607253966729546074212162007625482894288976972425068010201958874407206600864642820320956998289204023814608545566508800110742978840755174914840911019787348508331261355772078704640621487944125832110157381746456066958510452954382882268066185594232489957093644390879680114743760821613942116743219214718590604416807714595234833118290729913002528284780426306427461872005818727621056817886960011407827683926281074556115165299912940785528572575349944676392534485435626600465460371848254584442762419711046403848907702600763784089537475328434864679100859809437142401743122452281250004930277668770937137800120658292461440228022252003113994753064402097475114280333569905930771610733078600998991676313759040564967048508382326711933126036256543954179699770856160077961664356252000532946209969078911407538873720496777431096153011480299213599481206326505788612525478133934825962732206371816249260382590782533690154849657883670307914200337557122446704607499060027900280300822013169283429808508138557849110226474940012701898177733931750202922351829242348115742912113509865852034205044244059461424595592707086682716 28635587585953131317374697482182034504940961560683618760453797709177942177118746559537667840495349540661461932919205349847666844063903981373919088330158180324876777297850054361342663397116321617726954509560470779126891370025309817070930999392360591241082181180053408125834434222852709303759730063339753584071299981351747571231475513611051243874842172446491561006529924156001423141148917747988591655216692591260337010904575554302968531187559530605428384779794239647142466909706991450702235206862342467145782858869204985911691173225130401732946520543528582465342447064046498987895761467426354228516281970696619103289252267983639389635466796014253314627746092080188254393656468201312489011399374969162705420497988952779288252150828797515086433514556427892010847136034897772205895043503858729630843738891747922969667381017892832242434301401479046846359260167243369820456818439699956330674053780031838872394724794905047228366781805620019911839891638552044823321989718511677879820872424718247877071506798100712094949900202773966756150260628628685824158926839089361791141694107159005366095540754531675252937148972660342534026057633591116219298472912783146555025068 228788830712204083984125410380051632713853919892918473019359739272883058303881823252146778333264491799665030997934020273807715561634487389981094546950225091527562543688461996701773597991101351133961744215299890313457385502158613154314601447487438247950438093941732039373347993138219524948755462426379243095915552668222075352994882761771334395593859456054672166552290331938387090502735736930637716594446498099904141319361476171643974269496357643618204333060312269282997133502485041254347070276398566831466567229526815389297635265356500947384348028089117612552472983014877079743676915298466574549115303467762651792809471304869547461065922206244132469999620576841464874565896288693883595440191088141467440781155659659142244125276786532655247588257354111933373943376278244059150282024843128763032852236569534876825618572108683443238342736963057906014329020048764617151805909114494090356527863749001883002932247894649399085628214607937881750798852684066037042753363607671031409842498145176509482802085838296090554724835675864132586998714991040415021414964884049664712486717169265717018160479283366668976297245253686206278755297896567885505219136007117839462611728 1827948574336630040089713015337231024717469727629433116709894776433613020834961292956909490023197716185838024712610868519671717456989942902704821729374297854033913127387854503621092593012224110824156548594061857356329671026756859651245144247474186446435671203763820337215611637368103027823789214526443494679198034205044471064911867933117019811212842393844748454493998429928357493779659923291031616462353670919187237321070101341609662142934348469329732751656346688522291407117962742635926513655174837734295699424182944548733382465555217398391742971603865996146290022695827349862692852348856211544965177939129141419987738980662663258375982659701568456445039088668926016453811050287290312621767795402141010240648206250061146445869004769008047668629456183644790951631263766377687416914761882812317991387599978519464899198271583049593144982762897231723176809641666178917071750497278171288555539889570695698175400289666197185566824572147874696304471991574117128619082729088300212856238164281220231431486711262537367189302938911337011028740029395158789551549395876751351343796516362334252412060398735158678714413835842111810822841431498224669613178796467328095353546 14604731020358885704919299993094443143258734211611012781265723166493549275396641494399262051701449863501232609618753582028317882739862472334028018285236074903787083025854020360282158758830608138052216871255330353711757894583175079842701131050537679512155867686136506798257942781163741172348431909866727226049222575624215806171058154930972606356190998053713694427021222448355618238395769781954955540918427702612153202902815427788158017426257118749878895193947510492635296896816148838685547144004942055499140292949744351946823043937960241391626342511217701901946445776227788363560605609511681042980104406022361820957501209793482137774440000746740441984614788849168628011887821694787451524156985715343388637629649377666449262476072625295312590455833035485970939127944823962587993358371863524111964732342774768369258615543353817032890039083699463226561611778983019032942064538248771825403359654900708277571401174082418449442659633003530094049428740175746017884214767052817263809944271049364990654052159338912637850002515044959029651500116077357623170872336102945768825938543504960910948751192238522402708225221202284214220459098465205825708706479392965717589973390 116687298655953131911512803469870321737592791173155153917954082099660425489723012361497161810744474160068580433206718851910473948354451503258300681664395768730042512607302192353441180359283594191327629990213199577815821511235174326369618839208176905844672510408382875360293536694904880602496736878628447848354206713252285218844824900831237660339618704250014224730434027063650333993514490844155081257863730031638712308863332363609003247762156959389192397133263373908053854686996008621975637419158753880075348337648961744563859390717615456176474995245630693035416199988877714552536112740033208753729640128331836354547306463140182494842048774629375970381519584717309276506088798733802398878055949185321662517995839543110624842676303136943398890659822309040937904224819580884684797959151256168588715364320719369860668687373046252601534614959680569679823426438724848209718784093744339236757963998063654330783515452208841220816074195250933710499242536929201867071924163102665463630547886340070367794586902907785047144306116598857119481026939222631021212268486142799724031754529657780384024239286149848019514686505824515411853689643625181118601322749205125273138734941 932296474842444505190271148615506207425703726585103683780096677116845808196273765030077381921148227475518194566747516905045564439695199103103910337326304769743658168094842343931886873564184178347985022274508960201739373601897716166004110578554194262193296556826443038558163416450040519887146419317634202732374122830382587920227257986496889786456109759407779336606155493691530938567155056360551657805896367517339040704366647407766923076739218976163968971759269417938421031062876734311922105066246059944596150578663142948150935636291143247629739740204908598787956163186371438311715991956784432191565380826495409881913026680495256613291090639621897005520747110199319450823980913253411661829486785742029692488787724454174884001864741295926065418474051357733354016654969117005285873414665980880769527959460425452455394764320451994115506556133309066854105448534347268710543564787942577026352336849626976025838102288432573470271328201771828975024706678557813393379296882494282571382240427907268178776591090978067256292023189914252434701930683557809216945747148199388122208443434131681810733391748376110517674678645487811462566509497834605052506374662770809353233920854 7448776280487697082875751567799160891908906590290187571483469226672481093608193969545187276257214056202183446522542205369810339850390946608178601801557552743547485473476206335463715435277567481945026898450123891905599306874875895670491026549483727242044768756612914253024110792256152997582489073905301235440677548263808829199346433404294131147829408883297993152104511067835272304836070576190175215213773015043106084105772762645379157096495753593096539493048460201418435897101351061640511501651982308604680608849363593506775411010241611676444076630424067332168330953268674230847741984604415873058795148100248774104585593325540723213282164149319176630898537162518168527696366491249920209815359176020909940436333981605531957726244220962392973334384343205661690491534784653803622478311766846941796083435747538157167215188472552232414723962029736528624777759029008261547036304385510927360778462089578225265492831566026567587436100852474404635900072288564354971197811708514142586504377343731454274975769506940494702592532611835572043579945043155432472792626767074557014846585889967560117003466236258097909325715362809318774643201911734675345939006151188106503716304349 59513604025729036375236918726339793069410547295054278598174433560016946851977876628329389660496383198679153610874928452871857583086976089715760049350080374732986011950749641017966669484904355970973733885215203813286170693612400728053257104804606561935843348417462027316880010676929392791619178138389295563406348085814331875408545372079422218734370484940006950436512031031416872759694562981449616746921427777199883182944685763106654167824747005498665029821751107227689795496361066504991411364778373805273081133052789523199589879737430519359800291649759522654340493537835942751071430755810661596576797340435809675322495987783333525056839371401451170751642017409644261024415950211618346792612608388618733289669320047830005348657708211267704444922111561641024231581768821257342390542237066269725941586766504923986294017663207739702218807240999023936369926056275445163846101090881937882329352613245636840944301210367171828728011048804068001910024892347533175650605005320429276472214436817705762334549558497887698516781512220816448559663755906462744169881941405483362589267663222456202876681623797773292110034527172279193556276770845584904760239246515030568130729376830 475497242311494402948659266923555265345273095526047630481268196793008180471759431579191422237125184059945139543486093416613250903988413540998657812833118179438493874455538472168072652329616284142997811727392133905756522551345197126447205526831842278805364011430203743644667231618377770735487261520597211099465601815758012996885083767253810869643619718404059367114190032408266946562426194863337173574927826537200991794384692695371198127486745527749262744769330138095298853620784925113822203339304724770355058505888744790307872707529459719218358396337977773737102436816010778524093817146699299924804061618874436468022878647127571514103091702075671460640398589952329648723278211174924190648235561562683062800199750860988303393354454060853707647177705880324155852504595928262932007367742989474569181077457004128615559990800767398446663485303359679217909202587607323840361965906428620273666483576132443728406188479824344196615334833640838618065354885447197527281356745486282364302983370680920972931327773371576753150693574745223452274780745856312726673017933329682488179565641023533995920865753839468099273675364417471148994662330020046107391502911930225956754045093074 3799095269674760102262641267734192576914965118330883367672721666576049652189966652315571815974379873317438557246707861705229982421564209211507845694548207766162814331735126369063875264913848451406652376649277285027154740747834215367465987742225257231189054790502185300907079270877520372709743202636372064700197956691851237344854152650726329248737224556990684475347186736077115251376886866563970268091565418133593212160745209310394580655760428987248470677353474526674143656087747052260923736381482824606414408641037357368194072493973576179828589639027695086805229706664147874228986030014264913124583406759592731508697793756938085605910143346155817078704397197901518416006357489549737949174032182772008425567551893982624933049237087375885885351718674145023652569370693144709462238078266365242268767209855185508244667184808569457968858048581753811693512710205322453873722092785182114974344023408450049445415395783936047804154203481351196369449294273248092845105330523406747981631269062488386914802457698368250337585770407757485047237662135984210100753728513483457655829052673142400097356947147826905335999219117180438574064674124510461626546505827205073009378367345388 30353780982612251755740837466382359220279751148688011514040031553080237644097735316094411134361466575101684416282086714194089166458729537940647297359886942749135173935014290795721395911554413290348065945704677751875595786981821787716225122069436890907063985248611978304972377556402741310521597227991347254767710527632534446835553896980846041243647880409570462925958083023466356339210361857849685278585102719615862218468880840057154370560380876822548280017483916084760217939130065025507576969522529625269439794805604977005962036489317216512787943002653510902640514241701436811298489986391497063444399317804024973784949711975144215238776202792370383504085927537964731710797199579345420496452182854187949277645893240727607131694471332531956679910696559530255793540987860983013244065276113975131840791245789198261140723486370506528226485233469601010469459554140003074928909572022423453117210098130350378562258325889528381727003282189894654269505142050872582603266891409646407842599351847303191669113512047080230218229843226241030750221628122930682668593814779508350004630285571794080478735148795621611045012397283209678115239046244699891833156555672587794780051894723984 242519038059556600252762249272270027094602694975265948533658981167232262871934569467233828424090136277287849227487769146828561339576590664361357938497323909186449121211352146663096331059991845951851289183556434034553035883011659187542216471062118160265632119439690868722684696878081706516829409522306861608604229322691298884725501264978085782453063511748739578631321256113655449735856923111918945444093258430269366915563085482036234200769855893354977591434064520995252618036841732778574458922282095991505133677069524767906780695337225901944450811532269856681623417783407872898623575049764535872848972362175061357573629734439544127512521965974613260572808012050854325475142420643745213500409184198506668787663401119176725957305451915074406375861582438499538412513203598615666579435467996232868807335119995653203709171399595824834245158898351280149874810278778572373208443913039672820650789657637173148103838397213176776970882568058659100917710039777942898716474244372746469241838904371365163687647558486010934015250864774917988810877082445763496219037649936728480438339696903411215059914648276752102941317642430902596390240415276131964029182766021900968955810263055630 1937667728420651146441052212598802162447046030222102981743634205640207407888974371422205112582543604318170420505086222272853351930451852804798905176544519282297432418236282951080852858946024813419286394821309460338515862636806068315109029296866407756227512925739639216494272647951658101202149276077079553293434408127884022771620625968895478638009280384939211624803269672907050165990467664043994685025296389706077314959794133592516559611571446633628718737204974042958474892211649747111449811358842918518481990669097053542298692064856984817824178065029154245735965226110258322467782169736373862767867593505030116748996176742247205680848806906447574286648371969197138912504690670788621380991954259226535405941225364319026368976966937309079040352766030845046539901288222873323966400215632090613955340134421138182151557323813519444153173868232481896060055778077536918559924911664691264263627711660552075146456109526028264365200028156409032809739339077019158651605059232754834419972428740132121785805987073392421593343080733343207494719827508169458680819009112747763944708195242647344385945783107513695638004058427537227264240764362255305720902862054156692235118239987686872 15481505922806704452500230025058824056919218313613267508103578097938317792068506981864843276849162613123413113025247267043425296852492330732542724268508074029028386010034992127180498037984511070169207002429716617213265344483308808300745402190294980405544168275220171700041226075096252163780178032543628915548088352806122343371579309338401881848606605079811360860257762992217882341266922149070595713187320684987412114111643288431803807886219005735504976741260240061210071379878821313039962449654255677968386683345065493981432496874968474452055202462409712069351856491624374028263156495859440297057699590204225079708175768770503199095951253579623598138337467329927344978471101812209001429816020247520423912547950666892546144157304804202607250241461765442121890337036652681244795110582445513023172978211198501158307243962545863166346564991876925324759336264147275520486432652726451313619930408016128839428457831192130357201103264622268447354768427921937559612730576471669794884652189715060207498331654095925356328555314505240075609917698105712315659210785705946958602552012007262810722471322123280244384503996174017944499526590633418991250628401418076930004967202189695870 123693684860770471287712315666672930102601128537889445167431072576736357567219425293183066645103567753611452691136514415974705174865748375816464887704970146343032375637852919730754286186200285941975907354802448021806060727032756160326011728949280571959491871941312198545502689744482536666463943437126983695411078031182196149607321512257779837965761334271758618990754559279892920565717175497388493812392219645957315026504978165109474176674004791142744638306659742790795001118735098901322457071831366724388899248020592972866508513127145821460730105602767936233743140896795087916222567899219212769835601219564814775583231551156827075208009491077940252632711761606058884076472774088133386657716118320138743253502225289639909962961777126086377742968691440095450398085515863277627959355867891195380998437028189969656328570283819030027965527751748459220094854449393055095803758912922935984043202577537349557686128129240824815148643093917278759639646174073356767622875843683037134989390546391836576246833789100387012425617756827593132849804640664442421057043850398570659593564560731889080501657500465352060787238148203004216474995511668595145045449329181000139647268600701808625 988285169126666437031248483502451194626828742016212928270090195385572580701145304835750692309005357401456451866238005834728789641438017518851002570539513632648806092989130829768211722397736679952775762956762609980829049744510997935121514700156255107564367803609747602286157249043494759515374590299590812150013008488835637091811020028254859651440809169600715423011991885438302763004555412326454692881027822936638208489632354863980946925915621027237453093676786530987441042946730388645988397106368063398298444316014409229988489830508298625441561508772720688110455579113314677424419191882428845435954379552061954804934581338180864879177128201553394480599285572920548970216804990514402744662119749151508017233849598667910215979317737385252422813228840618399295064019802409611879957383273233679645859644180904841747194154368046049680306249253089478283535441785120767804582566716331552075671929433486403983460587273438544752534590147379269483283073971273688898083918505672736739601649816346832176319667526051034638944894719915804434650586126654327449399664008338569388111002489273299435491228060173543991405200247715788327480574881029781244094166173860127238121266871903471190 7896187540023586317321148027908102389360399444123537838123987100398997161216210266157598666401546148983027403233041907017429239632361120569187948996677647236108241000866644981430832070927737376250860651768207989786930967335437253003002694108238881010312299000360485987790298330074976460312891056542670133620230622398746840127388395489129964270672303661234632993589483088638183242182034150879408877670482328240210948552079739596232933818813686770026652240204779886433021799420299302201299314638449658395740735551929007052365610527029060220606632817027790373994154599499258227057041416879578832308621671565334610853658181148431233128150383206996800529149521053112565095850427770113883743699599305740470761543853208348693300058889698742277216335627718182661776256114610384525249530176223183921566038339204862100897732487368149301476109734716568004365283964401073626360390244188491377119891076876275257958255714858020838577821993488134477421925761904176316285633212764859858299578618321421117250911585954639398869512582614530409193766786104142626000260147964373554724806668404685558528159882181512363097374895047411886272051376102562340283711697170247967489498518454465259563 63088914672821080521067486617266047502700128594825660187266996382697591262579546295903159018753902956348076806766154049859700615751574480944136385036082049368122125545834738733617057600454170906443785617292662261193009390818202222021103244767667756806703448942764160399331772002779425439817364848213791922748241649715933462181337414830725617996665361140369359885831942895944304647812236906544911902082798139863911780536368791871204229077702135911462548073628947626891895526568817937162441647057581175567013567343021264418003106921378292733821986471249760075214973052421059406536115248885048730820484567268092431897021416733641184995968084341041770541133074181814191805999347190476201358650822675190192311343816385523865572737831344682623695721793320136319092055089497573577798974953063654085991595325918796219085537308062196740877526010701603219835983249123132556494597052757051084303957306538458577775387189218366496877173581111127489234092479948412908194804851238168643858832642314287426594639597102731831188711249068196551236916344280066413650378253988127144259644265240160036339413551435194343281219662998366722296509884079449342999519398439156844757349056571896954532 504067947356173230640908945894726469349759027680674532025329815777189485380857538443003897870333530312753975641163516821569151581700395558417604333465655242453627427700556882110552127556931096183611869174617148400490014155971584920714278511902546874160571670619950699338866550301945864539932453925347962352672480884231306580887768666766277612298671091206634159513925803631519977157408209918622280857830231936685159369480693101239238468167106997346968627368714798596003647755191968805580514355263941633650071642695095847465081241710514616818931636962837258365833601982071864169022513384761489101117034654017862211048369448939997824343809049366893937828261371673327210721797802097477408571731242651890023716239307312401113546009580517779769019160063072078997529106363599699390193233176137717842622257942242541905829214551800160154876209967100338005871580624219434228374883327171657849391715542574024059712912177640734279533448376625652227563083031410470975413021550252415956442507589685543004427264991316581767269588910879046483507666444279720192518742591714814621188272850462896631601069430124065003671532138908196924636046043831917365426456945927779420073131016824821643650 4027407110365338210641442335338189281475573208259428853009221260958151429491308650999325859526108404613850954793749994950796900326006580469891253615444597322758795704628374120413667609737482151799841210235749874878968274685108394890635917967479590344925284506586243008123441059312823134906426396562822760391869729744836882159868888865364878493460790847977717287694244860609955715631248841930993619770376562697478195048583596739879322438059181375778804598061684304763064934017370009472196587730509754259273058431310594751421568372125977196355470802329717215609465640235953561333898590054071389569502687451940607479703562611643924995938379822787995411628016924520101619256630148909540848163457585806944317835274498796953482798811746981783310441468881127854434725664285898033558835157384259192781046762047585224877294452945676795665040087737374126306958626324710662782799411906660138555415246938974302903061726776901950743161827963244685480315741574613523410014803801817824717506417548979198700862607810687834252818796182303166011143919544713179873404880712734226718369177105741535552762137700790223648565670507254338530475862605865855482150462699924368463689100849048109986404 32178248833762493051223282709837365320484946182127699472446983955992114502091346636947626456628645773169859981040680296098210325409009226267090672031824557431321934424578198589783638335592639110372885944807562758805110119851447986985047448708408707534924454042494431438921238696454745372593689069133175810634301561901198550925016723845748534878553590331884320817327154352886557477369414073315042915425912159733209411835742993613672889295062034047576686180417496741201848692618673619245238962176796067641137913379857589181408783623879647439891163486679716279479590224484922154691692517492503072823114719140557166687118500151784347555011274375445384675547030161280556254725401825369859442609143768800222430360469731351298516875366802251433412839096889115494687293409202758908378901727072613567219741303587470708261394443703249837246337407576181062250005082817323656099909347241196344198415806394993666217659879417372792099193312685325061566933142758530750448147561446124498341907597914263596288202470555398655861753071855147187230319633798414506074010119715217937515799732747585336337475983047984317856421824297744050597270040987468158567914292785283874688329494926525809615720 257098593992378239957826144631494300372038578579724473623903593560393513234098458973219627641372797156513866984502820421794515765024696213000507340575106120813898900703859615004531325711596036013983279464317244022919440661406408404659702450580397070908523262045296363347050837877270624824657590058217033806274715059913759955050579610437993479532716356311093494393667074222692080298675107184148162846786906751722598203898157878084844400648022778264191154505770950753843410926984774285625903129384238153698931200195532630605737671739181061557428536709243585860297857786564631302830958728473050591631565432982885026578556708571381511289970794882368086726504662281459677396884554283612463940769368076536175084350024793789802111000158426971731928557203002476518417714258528425004456698255474525722213608500392578848070215347054512511240080027791299573528668461736924535535061320703718782260645878487326449062837802152481428069767444771966440963771958180057368123891015437798006768130713890551457168824396874094258458930575996603941608555853879305655831210303515598144442663768054496335733027870582779439884604825859265996955194296369490501721140790085007933224302119099754459805022 2054174905302007347416706360762991336139574049922326715106919211931584406415223924145679917148566597756961623996416675162474095482938393591835669887655225643204083672016742974853445025096974249956438203731157525576850826223671509618182855088582769618539983968921115977427164274607137973727005926468400806956305263700071009166591844062838604851293779537922146030700533164317183744877983995831922748506632547187296211439221430419115198578861666058111713169818117024574555438027686693109607171277001664962806048905776336241847523132569310115068924513027725824763758025751814760769188722991838945754633465678690950931724010207434090583933627028226773301040440402250002832376435943868203321894508859226344498830418870051421006373347799914815701843018030694450788105655206417309143864102350961379682960391838489063450277995583983122803772030170044458119641326643512423765032422800622311846184298953236135465892912998093097524456914205663470814084238481265878797695653463121132710529092617121268633549778094407137424509539537683357476993967853536090726076747415906169092346527248931723068704718922078505954806634131169718343639435919099396236048669294558087996065406712307615837854214 16412530964505298119191651571241326706559023338679072417166236091251744575963019196641164955627992604891986060783407830318971050651312807064520018168549504396779792062872798721929098509304402382083998765299425543762847785921909784765583256347729984902605918564269992893349987368213628493568620420751531797586551435176340418690117541565236710200806273799245741578984097389301978766637548965596021586981353016453675735452715143909485136789271797702489325794061808240404837179489590188397572642261730242836459076399585759571284010007150562048402682887539748213759396631800720845174611208431159451459949242918428391759892688294910764098637175424557931922902205952660539222199783631258743455216690775598346498447369728847358602634595516188627968276749071230623174788746944825272205493250828635999640171686298189756153944631018240611136279610790701729863563194152022709087152425765509263760146713651275001427223751079745907382779802032155104574606161623009064577477170180651598569116478142453352891957431632989729205036285707040433738706900261384545365936377541984554850094431974808112681305347907217163771310771085981695008197711675901238254582309480512636860480489326527362917813798 131133640504884674784585576227181468787902649710201010769265317292648997000335420364945279507913340992772059334821241055706377637336417715717770949873089031778117040695526326006483736062285801178092067411736914943255956042210647214385148733435773060790629265022899537502784823899838452919792427571464996701942446928292682717661603384525256308033760641943828145772548034683227822486876708270079190272666444239777142383407832602428327824798623562697982025223276518246166624788810381471013591575484356489744036615439468128437648958634024974364003245598502641308432127650995876431415751092031198934232610280202016822754274806890868706435998831712591936913403950638004478537522829170568350997774319078043732477934332167774891172147828530075908427628313202083556507434395096477038619704882163500079674719944442298757520581995760701311764955838542546977080367313856151594641845527341375697830893212378305407439819876862111651956005259557612259694818685651082214244620301602715915274265409529021426122111169897893663395162686355927739926320387566160853687136575978517897189101598379068817718230663127984371043526861034276957954385629872017703151585421346202953017508385243989286591871255 1047738970878979979702378699601946672992287915518826999911277249339975763098730774619191415088230129295237234630648044251969820965900795121729637361460220610805463402681233700121186703740737131755402387594686651876196265539308073427947700249871900513600247676746405124529012693699403048125728678116334703265177330235823997114638022983532414330720695588113232947314638439064048313039044571608700309842804827359532380147538133952259106157007784799024674796257856267873308357114003243264762497632274697600175308764441506009025571150920197036817687180842375846387004442274823545857170672951451792150995192192677274524374706351942545266288185100336007696514157869911969275892461050016138362884193437354520011258297655332838721603881208559910925213019208218323700902739291081167250831793317627032848975169177421282078018643121540501346458222657052993943665986903734061686455081179699886179290877856664100827306277802667087550570052840174602850674140162385626206616600837089871833764851633885524036037131528707105517887375029128224360625083668992124458286204850099085691042323581884561134982551756315039608762141250667468521032688077993814576036188590455312523809971785059818906245132208 8371292117656343311183127958699529378175589537313206262243947452332625062607433888769997005481503969295929577332712414100897194908146910911876127007196212479551421189274936084228486504598632456165795904222017142183602128837458614311440883115238867542239471243928344566908074635026104164867809419191499431588406676135798216566091864824104508488650047814125247734835821231261262109807418550722047123297942149524353698973839343541418706157463164798446555720188881794359798904973938096559330884307667845534154991620888793080663731238106585253929649470145925109790207226976480590158733019616521766652763860385506782836509024040039501753856836571205769719250029846528931074430097420432469120897927802366949134238252607196687069412798411588376935783245891176674138183688924366950024851712958857282179911631147766295157206890145020570928715450009982249979604824388388637317031224140627484382777508661581005658808616187443697175058477882109960343609623816450722472076291138110537339701711067121260807246885367444542146502827012434383915064558663389961545325307730412370167377464144714036735402382473970339800391708437124193352307420647732927216841704851165627361823621963158200179362392509 66885551872576348699730272064565214411701905368014818605223431319456707302485123195123796917395597273494898379705204525919589915507072598140253367880577222271270715997580152105203348865778544095435916595250070393602886448915862925919651707895921630881253597252214814824138193005624799227624385123277520256506327859097401431704479387946044950734384223477985419691483877057759265258210762416690790668419973060851425458845393583159908666266779733003913286814590456342327989924071647310670119059826530675642584200950371623411668226293454387231662169462954628352491401996890425499104089261057071367509177552189040958870002694385951181148286999507250438904523924399372280962755111461961438317608245458533171665957058066182340440172891874168686785026008657658841466557265363925748871632938465951788332542403023361875775604655401538331479045614427966504437839130253666236070280159779330406991988316105493242667833719046096674521074066684206781975377357986976711480884990522759897489022125944196887817622056402675040523284280447008599184823305953841299522638899009587716184182523137442844641345784900696123362520872171171220269676521119633576047146801655006689565119528800403645105597832498 534407507608184270625734713545761680843290936142495629322842226469559840795407274780405870094293617750858416499738489096102262438406732824771046798306019310909464547192163154414800592044115239182102768569573907215279240174294967070566515769122169430736338928929108868538719424041205714876595018664152634865008086511054314877858589353613055786717275550265294289698188017240269210376357691400595603628630422182635603865084638442457734362796975025776492687186702870861126387717532181429542521494233826137576708166264638624181626734861826406714113514427689270947055977236620282268410011552250119372160521772050041284863728013397918886633675164719589641265556574201383727935950015421226193574519246598393822429056101293011256257669604225577175148621632389697999002512717499519698058133074222785502962163397291192870311028272544916639487104588233749104804923198299669735856076681903095081524932878247021128815184248154018524482814054967453161330192775231206078737042774130072968073000375890383496560944831420341216759145602415866424128019853151394708567480057530287640131871270782344551376753195836564103040576950458094927000713957908305775393668877943122258122481522392406379089641467999 4269855756741067446630526180410132938513130046881950225243488479301664305102112027306577965046700885850262853252196334351288811501188508636035639542391067599810209868993884332406750535669096141882941547336446621116450782477525183390247539892077188069959161776089155986620136511200449942846135986585097408177670954125079460724925283529111759218781669419264769884223168543337719702854000330385422779461383908290304479556566849044282725092415694864302518110347320220309916317019382334563289077616486384250885319116212795087514952151873931574006243874890848304510713953196421102632890030821036524544590473940640311692071480858266029893420206861759457267221576623661509799467582646818403185066723742419845106891728341315719823498479032699601645848161812675285775953707740429266764916202641715780738091167522533048110553004469316406031584046838768926934757839734744276566600034119681849535549186609125428547677484108823013784659682829391726280330149419617321054963142792269488434650099036385698337016825339966466359301507240691727206019132342785495739108807208778691764663333184998492524785411975387315444866437173462851328672299873065899634151054704246985770657382448711373833383512995316 34115699016152441914137105646538977872467425641160791203181370535956430557055582574235151533029287315007933521303427995724707342903460807183930269783590287354785148968785800754900615687068065281043429740013229706284553455444430533288568728235993465749487767567536074739633597499812732669698915533426502177978702182960993802131080030489307186496073386075964206091141013991946110043370710244031006207085505737307358372664251286414904415925458024247699374183678495479457531963195222440606636340419616703029981557419018123724846713080956653970066209034743722442447590725405632798910606614502979911992287828394877175270805680784036257696533951191902937039207184439396876179498403846329644276626886103920968607337175615714887271402414171785467768557877994733631186241801946299876398097825582359295548167337471229116471130351315184259479548069051300678375827412034697971690083933109527800563311671816855280394448785558841579880700136620864665246391422166179890132369697235163243979376893359317488129859211917890118168182887644443877651042294742802352819458099704271893562572625488381378923427426677316219527447409093501075061152957928284612973891731108035471579311639942550270250454461429463 272581113046687698996494625047531334267696600015293379260275936136028201089018500999369281533384054670464431952193606051211876920532035721035437491168578171133291189563604865151772144905752721898843446251423041972404468742309372932461319641721320021314859024692006241822093506812427703557262880834266500409513177075845390328678823723904264177602122261200580332792890227219624951225251428070091116892274440158164326419211796967120713724716659150270061701146122210791228731681731698137538426677742039242735414703592088195052392837028507382600447702939437096622023419856281996737942654897795874569300928012168653084455466255529684594692364357370116921608917898660213642130015491585001042382795440745475841592608121284412775381086216023681700121351819682872068412032278518200905528032672690412830818359042741730049036179242230740937710108303848924406981977811736430526147080777010923187011180528060345097358778271716254816956660443027468298450369500332313366406204149622507316556087763183920133747511948576667809114434180271282183298146511226058279981902567505183447579633122142578492127543906621322260945450353978503875249626822305659137393404358103539860208334398650443317888540368672752 2177898633988941884584241983562957315020152687891735102021736033857583465888089903943821694769433297429728710732310425175815530235062004528750200996122449816116303461049609742395038794471407950445632448290189739710182788116731441880639395161022436159473359179642694323886866170227690568054666804713952717881556569175001584773332507964342220069770868929055985666141198912179066153827966415113743865831423013518526377895496716473481843540307295756633120958416671007618904614251904003634716007930152587560247000187930853815453075983008174638545868186041166772542013801978735008983708702505143098746474714326187387439052179589737131064888988392409666384434348602313045598129080694166223534913602496806722793819729347114274584405330362472319678584029588931128953880849293830185121239614180484635805002358398284964515789164524069668664953040670293187327829354095021017106786824841780067789386952727023028840965020092394983003526535715837922275715371794468759274007876732844749638834655020090328369473914814617692398425130016961908655320800402243838378147845293963676518175381414754718062963810528038735339899145877229635044642709531766136679009417341893715745711025474139647593252833069338465 17401231283624088972217042280893163993376259446340052656206287560289766301298798030749359647600930729079010205879412229005081377734933693034826973594752339890905670655100281685056338051459921277233864118364573949792738040198657148394475564442446488180159126631042552899394309387422691683634614135049095858830586733883390268556226896573959823316916499887653878220461329804209548611271449653715775088775066655006036208156217848034793927954722929813527554061696530104695280190562380756268158889991757609822003048741462488688040189487236656985859919218098998245167188206944215237909955935573323879905127432099575650650809181687333956710433986780603838724397745253272861567374259506112380817284604407819058282490099025900916888375742244527515763007087145880127481139851516773637819338631537972188122701130547154669357668630965798009063002388676121032475282474075785896633765049206644310903215788669206457805897431752132831077508044832145251501930603479928771897922929143071689053708907465544081003181127958267035340440118106503011438675281913722514266440172432238079590469780454159063650713929039925549773276767510048390212311765196794830351423165003002183459384067593915176478270572143896014 139034541977156074997806063207212355873043785299775541406660487516774668035755439924081910370667856721877137911398463679801459651332404887382279377863641404631471730847611395532050336664956246907975068072918838882922550167862561886368781660190543820689526340403922317285797470854957206901272197370373138757561605739917264219764681880175485668397358446954437883000515466501612406019961727189990836824846737907497358366373815542016553537483697052799844983008806280610875700561238333345277654459148415347591573617281435914036895280735881597450235928451719512857259771720599639439516170427066248860070015539607767817086881821425307952764039183402003323241588901774683771414695900347802187159319097839682571387313234863002409157928360163309185727253841196366495292665546597762327933853445771409386271606533782216065268228268632020228863941216137209916513039668266664908948086963193026825434098176200229386937044865730346587088789925290330694742700209071065190631111401123144058134617027952009692729622173090406554900159580582062310384105342694265607285718665442616883884959594098529387499604253436541974865655448124425925985378567908902252806839549243049365548306827471964988266936248157680753 1110876693755208377208536390508684053151737074905783060250266303663995461097495564366683533353780857841553210038147964868620007712519268710964153845645792269919746832485559474576970201259104290255271061004133108648107240625711908869894691563477141812325141156475347062819207189775290714249823704849050095247260152283100083364003532551942883982349916858020851530222966377890277343305092225541296727939610669753730597090064844946413365188105165335013782633136533945131349656846200404332200947820753354357535454455064967635889025727445736087366833622944262385442416880985578131803805910850858124018144791933736692866340218302790298719250717380969879528887567334452351912749805574632552363902788412692839069068512782798317730919343391518771298730918629075071396760228689527333127657913650430017030228797955746962640143910387442804658493132394363118987914773902097391214776402220479054585144467433439937162049756473988095539702192598109953718148307365246343433782709037032335840914849610726913599609376049808955947984954807064816463214940930515992819102747293845121519286081669808227251292197498870523500921278912100754046503580500540661171152736259327855887454498454913808935117693804453418934 8875838945203165987725535300383127239936003706579848834020464394248626188496647479122809675074880533644052517781257575093770918790568076631189634688404957544621832833585319526621424343158367874091313387192554979808520195581476128692701101946331154742164977719153148536589619397335013533010144317104978091933993568966988101121038863634228398535907943559193212973271330316739741931504990120173870916843052298124407041280867737487571379713838649416728962264258332879960973449378820813003436382570816468167695875801288734365424356419052255168955972107955884658885744046606833009732698459865037659243894781261546113178643156548759328077628922661433097688440810812829003355480951714278018720499093519649241822773360100537165398445558981277500802809065405781845599853647974106296541252793416236232853097346278546837042603968763134433590625345796738235005470903701559982112129886085922304359529851200147788042735543564317878861330097229371875788578264867998074073843483935625260569788301813923986156757512763542414463789929353714541965970206833445722165561200404931130051761633357174181192614571494727643513386887709306741317264426544287909145746827016429668452491750390409929473811650708368501740 70917494477753130885989270403277440654365889095902412771436898598448125225406229217186514196673673210900345626255160881928774390745934557673082285579009802332273760775475111348407543601952944667707472178572232051620691556560561744715693869880920610424610819511939704060402090227385237510093073707874191386316649205866156481790692087417109114532273432448770229488225551058813142343319691157535988446324558144408307960728982629420721577326750400911252158635135293282610452365301359194278641252398264029567070439999189620547612873819134261221735937599241829419033943636300264463242619515412879528995241192285301993744991092091481770679904655320210378675757556775328603388319121051415413895055071194235487558236123517319567763924095966017170988017493905401357382489804095730138572449572960774609443184078250773463377109930820658074381031485988973780940775970511720360644961480021183502051067197254734519014209815954687647343573381966770154279901743259929871286441686173734324493814867653396810500353445018189775716825471146252762225368154778230760206429099234332905701217415579328067780348987605454246258407211470065178413541511297939921264585112843081108383311720110682835602531111825048448902 566627653216343476090615110296070568583090203836666296035357670590623728452914279420472546586530999397592561943018940115466568790183488736245007126122328111647405801565617832105762283415120668506650597711647301583020681176293832734227426497719360703100605772117937496561490865516126843213953447370711671403693082517660841428635588737536051910491128177300038852499052209383085805723317392298847884031328654352466382449099644455955282615025478787093582710646199621622640085356492539225124063231598403156324187494148553993080100236819101209308781693478284657581503248238839826046841381868489235502681547282381922802671376399619932292832640909568455176622535448483887511075556948950523239940699848855838568570967755813818439186148315032320579333800906183926487742518606342460030118135544470162303762921561666283251578715810439873193189675698764873534999889215452123005109660885749514257270369457868861706177914315173221216194725173760858627548659875942099128652269656690002419491487811246334041532504607270964958618346956838007430860339442354587165268006553743160625293393276551318547126034517058592216101079237956546714739195683923685638681489132592266320453355498410773935023142932111338552860 4527334245732249050197429994283242551050673916966385104768748369813724936473704683569301892177503962368423117537343325266896243816140644607212042067559365870250317549795037194913342164920408450504670254379368832479539433032049849069538312190220545349011866461338303605771002994743488673021013808503337224932131657297855355976005514474806704333811292202690618705597759394419656014334072271765593345648885922783965209024025338975806271858172540256040552161377018121901428695310672683756197638062976524871483192628972038570773287151761574770103942020411562842754875805517223628363884031258476164137011321799409193398286722743165534248613101573663171065169984391588446967713622403609258014017822599304656806326038074387792478646868801130770721083159887466847435643482586855812385309545904690222752029265072923277744799283583662694653077805172720507604310333708471490620241940048780629726416865483365163106838005500878957494788425605031953555554294003322342661173346172942803420977337917389794382181207538266528283678041551839465134947552252884254122857366503309890760807097828681231046279077430474598594577944137486432684183114715490738376672417494981799367815065685610278280456101730032907197256 36173269400132185068776362495986199010195047017197600483471204330886326292959526884320016831995909684195710907315193964385835236753864982944699418835173579642239979329238814742589794198454840945948042562237137830750007426199605512641227010588538609016136007366701128011204879189174539361872225004913453550984047554717006286827183455273611926024184701134289010640926723760667917303492369806160945226344854246668577541328838457187496243182914213084094458273280596570250443065392852530853478848712657798495820738275792161611216741171982629338576132964274575042512942183629089593787877891841082478356116820584762787884699337958960166780180958986551467870799420356066399395538978252225861876887861525860448850571309837839639245968589325900767162990306986079938002383466279813868244207466720224969940595085930232529338580206064765502411282193384038904346910110790752324837336017682878966376445554555303947190689760279337170277040820299803545631132015425529678519061849874030171824586816313155709053864213010772180636194581583635478353265788827235122679254781743778671845660120677564636996732844208342067147711763846313786599554323461783388089465290899396979630168549885756427558215096313284452779328 289023646856329495178801203954488267215971971282834076203632445736770977880124689181480589903240416750415910955063105642886653116754630928630964078893402583189126543565873208477675493917591392759320704696694460543056739834610571470301082143257609374269300591005308473563837204368613729725455750202985824388392247346144795050760836537861922899228788922634228336541806227406907428237767489035111653197306054982788306244119838178431381562544800626530990605890268672219437385154081860706603625449832425474153963711891600573719737205791116036939724124004088377031529615491247321759546154198525487120067327388048057447781552670391765401500068913009842772292483849401843854027763982685111191380482215197096598529407848512660836550531158891047136712301682141259412927261307572400472993709419432674860813969471293983948955943699239038600811517177171570760605611700371843969178057849250668582278685531060430548641535716567166166259237368196833280646790645761299765894838359690926791165609267246212496799688473919479413997802407018975889144652973284066530333399347262652862011603410440142188995720567950743286445445358398594821678968349172476804460050859327357185980433148600052162772685786681972246812594 2309294917493755233908835926730658227581958958088104400312874598302414377549894370631897722728419674764546141013000151399527845373629149159752851278225246947124125625182319418985284659180984171656552734449822817443474692467850411543631303563650723521871777750179523475286681165995941537095717460794814033821279426919056233277207322943708393701783510417807506517062043109231177349738324273478246680065202591324292512349874938596359596967334286261047356617195377708557641214328179666849703745438354168895458648006559243456776381920367859569085450079503387160768804674794121286511650615197271722790018922692431245229262700857057512609463197236352327667788101508601998652542312140171022645907826893125188847811007563746679483904899490569234846159635696770780320783443515393789238970155690892576070715402568091350012272575823608934756897478647162918134035949476347570514315391869130107767992786395342963512348634035605082892390999054821826196163873714879873773902085520260931286592023425555373169362444938729301135220083898357969426292947677477624742410247133804118517415243037359753388487161638785687264192228827940640814615719801195209125272651760687597056794656104457758872930686220131185106255542 18451251628370880390694727869838738576944031903674293233133242126803290968678897027437515854791827460911612530172967516707553926563560857319975859433016475911569313973407239387915998993803604103909849583381431295589595261340283614479023561160676522580385165616086977849540841960878798315141962306145908154888261057409303995747796360055053078267419014900076251043669803393150008616617373312466001435481393601424588581926498300345115169593986268033886534334767857928082895473099507731547711427021006235246774016162046295282190818430001158518193166463294862868563504852994650734489421150511497947504784961862693294156249377036462809334211169663458255234295638672861252329746683324764666188789376005325142539906346927464665961200674244556855360741040771287347340953691676095113843965655065853783283403080449316545451863776426323124230031561696883699665581019583480955424988905452157976665829132051782554580765996721747442178192126110041238659189975916961369322908854746541275789083247413384363256445874290615300505389345681974801658236165240097759111802112749491274186072677546043726379407264406323795807097237934024490750891011975547183095088320538991050685477548580562798954534252083667651407967652 147425521092670768188695940054378072718524402555844662245405695615112409069932228909559273180562648764389764510174976678268107178731511094594556970540384453053676666000431275659381165638840043677025788723043365283487083206870504653440568080276857674083666447837970640392575936171629813359450688777709342100177244521162627871250963584139180337108356287998284391493217069895377026348600468989146594361562699105674368884082078947356374771424006551762514492045188424037779568413907440058643190150194837358191625235543814864797324981103552362265456034304150225656042997281870383830620168940475899797411583853433705065554570002876917081218328893308338189958627899426132011645465895065037335179477189549234626341241106175737397315370395206371457253367182266969873925111457354768502304156246955429404621768825356743677351823950154487252730548465855513950412581529393920379233620128359632230450704754405223992448697328757314727511316847117491709354203362610697992714466991620824027280979290887137262542009123955592474591403559772586744678628086226425965045216878266255671185584173184858638443762172469330927114652004577333670575715352983525068205332646817959741290890145286447967839811899359389931306356058 1177931183203275668221993029953902841159431402338917292489582009697961040613279256106472274634646183819425272992484917776136298700557271671754853535920452548479289424897890890248278083953083298873722826075155693772721102391078418955068323951685322641821007269191288658237527147963229938264060097131163279521324054356032176419865506600097968260657313509592207057317723143833073463177641731602578760748089296597825933725899087287122800224996334086479701267668279123283061187031449868442774767640883067511963537244362057320757090209612025104350146511053092259802786866622659971941320107507487647006853022024099814101616900032929991575714892464267865630729760245936333512550691312417560804214645440283643272327267123809349761007665624446559659417740102401774844898882028552929849783191296611425362590862166764908889217924609434421368026260990032006852016706152262107077050877202302218890388013066411447096502636100139097418781834073227761120428845693281700552679037949149687631288145537330966615487706954491150471216435300430945061943103792573753264015498138838870828748300713849337103927348988244511043028871252903974623490618285400079825900864387686850438694978059220883116671993916684683929271221776 9411689115995770974620970730337084647227911772424298833784333585437454506067172559759302221233755784769034108983370160269795339517804893261108918827816433638851637924848859667245903082786325559133237258964147405699485839112821177819300347757463222418689507469269643877793026802343326632873046047187979507363853171591858469714479454026559489512629481051543647399467080042793598243200748029234058121120910580352255744786021203467611478903899084882135757746938502725018264289422408245859357388212089318411060949138698385714327282132580994467018333952759389022060283808490733642683902379089138361895401128253923356873985946726950864654463527949589024817322588104916574156868427982100371398791596453377052157043220759511266195242358011312335652143303268575140196228985483886348220950243443075326034352541409511764645985517245484507009353016147105876430230113497569268602464807219941685143347519678271590178902702486878746432444790496783690343057997858310575158078528015400719676133597278194348740026380255813927650324168344047935933990864637097562091576734841395403001904751623554174756360862129401279712740074218521298440579458881661223040200744532301318095873039181938709159676274655846468749623858083 75199617891600768887905095039953038753160964566948074405562934058150362237496848324540023663899223720126712533150677797030620940673638463738452996851127635091239330061525536754634012596165782785839484140113477049664627595102586334444739672109894855476517184826286378698210704362810474632817824071536559473822820529853254834806974564213973918466412295885545961948695053856001485231117638802160453909797811081434072277227508879769216769698856704922640565059151626330939118469486868101205640369017912865479770748579223951822562252564896428307478442524704623570732722431332462453577966208356302709103404568306992293868367618736981805394321090849300773216129327826609382772305514329989310399455894182993572468824871632191845296110229723132242320819866050929206032863865426202500433899874943667739278375433446447989669105699620694364777148471730689222477421430904938985127206541080368423280564177766753262224821282971728660335526170911506990704463399939101143215916338602190086866699925776245533332707257284580598107180135406965519048696668721942299660705411415435178136194963831092761544598210575225256424235283773403422456517055003390894099428165878915438119432923055181345952830148932455114205246776166 600847280808007003759302924567377726175359243040926560719997638579152072877080689195718342853132769524592934200275580621840552321922005621358752467988241770188902413026889704005951563012399356736572200256451726006658635607677554331423762813726288310373215539730649025953497751656938278860842134001135207525560606448554537641733698447718122080255499480023192598452843480438679553788122088719242670834820642132851178404786095472408016725758225465836162944076122278640515889539251554253323785079231008886586624835732644266921131970582010656078669320006225346856352560689340770435864334416622004701503104815063848161146216239860045812564159100065886907876306083171294310065095277049897021121388727986349144183119087709198793240581308601854306297202398944234482946786775308914386741610169387185934038398398425976717021752942420259565632008614496115643116611877455959002475185652312510937540912250291425051997447258001840330108715626421301718185173864503211776897234383068509883127534732370668519166253732028966863987541522647328209591993029269691913392812559670479786513644796119237126790387891461593055086715031353239299507877024476276216759172527308549821543435252631914768195013066985740603568240803820 4800792898755196544448260727611430254373557798049044173265340068934083276772728000524434602485619468667204377589054319153726726502615317695928928215386134055904586087001285987366891248363851653788943080609940027172342858232650392608461438815480232744603327387550886109354499763880642365361365033196353238278730040508472236372044441740259691490530830190737370375567214028072866352222383380328246000150953464913911778747135324952711827311331881400945886321984910114683542445610749052327225911218232084453482242748793078363397411180328849509777011672620984895275094821378034922322043856143253151552237671214365653225269833470988350730365763840416361866887145457366449819624381994721945467340140352221351512716103980256290713650322085903696560280174412638501286890810058421600179295186434622432476775947856758785429013246889108712920934164137938818767389391957114976377120649168120455166974803568207336524128636661065675842338770055485273116916689218746272704984972543646818780506248464853104033593050996768441407198627026104586225275656482396129412327145364905754334894396453999454409573009998723478495440874779006227026047965166096589035453667793630251459007128398183570393222075637615117218187262127392 38358555753686971456962683963504664406662032000195050423743479306338417520557439102163155214496004333109889968286268108519889827702615166760743021424640375394774570862816646296948939564574442746306257351416530773884687939192669096160062856659625279820027995572450646633582338463227766500886811247640801468451135091255552809615920418193786786114698605119499392970604500957720456491007600571536438177084095311274567254317208843175803311318755189028740184283643306703965202706089715206829871925334632909228268987412504806342485830455941795493588287928839807823912848150051956677527537592387642546811362517920655074005345120138561458831482728600598340449196691752962766074279569507003809903033776519835982844667811264295751102298019165603646044521038504584198945271410606305408121720373266478515849461212367676666070607205840245623855991945393380468359879985741759309427248406561912615761825823899183146533256703465922029375180454105641647999397066806744794080092446321008369798766623221412471773621280440123474018055752692323230639847444513616700394852365152164107115998677067500941245525478170025785104573672471473854315986942805900127426904294430995963816734808949321586146881528447195200051995409923268 306486907214083623236017231099303676150173732700636352168098720572328871368449593562764881416772170058957456028610740369505331487409115337760248251908907784973817290032697823178690426604837905577537972030687065754049814026669058529212428646918715866994316451141675692150503646801988124723520072477056115142886647050788861146008457686586867798974974656602912375991519254609911718136182700321045677493017022099768958301820032849634610279360420447029174212733851670005976967680324790292528672471197751740927143992856823012825284577097366853598996911749749666315078597526525399350708168335653883591160665650355262232449072043669460472722736718953703724938663482615076726553463260704298070190378886688890534670541501301881652346414091399939688117159900672694600350724673975372972499591272661542303012804506619005147209742004309616042364037024279699838210219312809485856137775078068822289703319311194585480777590164764362844479354927309722282939667554716767858298563553469724942771931235139208912634039456605683074678224493289397856738404793230492071799329533311971489572786344786626204300246497839482442239604913355598024524221911197551220091974639064325415218671923795467467699885790549445660384600331551800 2448849015954033436412163734086554754464250568869842501159805833458287591750821095222442418264587998026713069284282723597686412143712581210077051677726796504913723037236263688019889118829657474362662801680586448233322345502014922206030639173877707167689931847838648693522721350150544582793227485060924763490837224770255267691566711376846693575078608466277200753727934886888359974477806639957623507840247179224077492227167792653316237936592209498571492645302266364095168223296404282265804392941316308413383910112249764477587489491578307247387046626260483485746845281730908282063974790833366404709367082265959272181091682886740396165973020664369748504554032957600665036471740581671263761018484437569368997010995180325634508851473851529117290187792216967181405272403807941013454176206896890426059208621138699113114401357574027047912684748234664172006583777624486119874415510635484114563409427129454875117457056141505763594128967102738422366821382145170740641864322251094209844710316214389552466391501444467367303670060219833840386475233001930867206567331096502391181784036691458825473198230568493357393629748552108011512690629058744573740277711184223211105163448622455676154001213634642606297092731007458054 19566470611033497508595634368616793876638487933083490155903082157185126270788109628820570724621212458708353153425282517703551325217670112593153968332662298081797211189000517163007053166372808144451663942920807696443813593227553637068022092598041455758594240352013869980977690337902837021689758636268739576468149857863210671946976895001848876324749805247072125192686840524590275740038009925132710161187702399668332113569314208975687798995065118234652079456857425097556878048874569525265090623142087193804304857601835167895157109281216939875124869919460562798113283606120332663619893935623910811773661622957480214234030097724298982547835660660747806681879270143076599493483769648516555611584246701677611530666759962236435363840318010897903700860366180443911087244369331253344631947414931456834326993876093697438915653657003873827248659580142349821439882098156633164693878734469221831109455072812191802975739529062706475005221858425680781272693008011666742659609126178226774625314126393586816848517297386478527534488071812141279647145525385781212508884186591631000105089393965001227943402099482517191048770978339211632730347246498550578373970253658520367300932786833028653107253008590187569841562533678106216 156337579037752129273405178288819722888651701641174905515231110923539728063406978365029916343973474832436068444525781056904023337667970892461211159953991294595319451261865420132911834090669457492902754111054121604612902194154720679333501147369773627979812370621824004797644943872391691361117668114488837869139413136228231500364641176097541359986391283392477708909469784991625946841129954292755522194174163963685101553649672170411643346877202874995710212650289240363773108328104990646183051312826680386832986784466575706549833669822496479674446546674340980085446401813804072254871319050703251968801173009061315672283439542405062810520976122107953593613525370815920685319736406468880371264540360282373286216964544729249236441655393415430062893639400944837169541587583649543671679919992825743506732825995185461958796644272160390121357061862908190034329264174353020585769732757645092302380680095221021491105895088029947334450207580833860463869453772296328133788858676267464815677544851274336885628209512538285663953177199308571206058386166102546247568799068197375854101830108612991129149267814973396919053814371383167580583601037500599162239922156964581249399670757435101985720762074987818808848573994865764761 1249150227325555635639058791225384489657527813122024482929294811280274876629409072689689702059516287874982179259763168344948260408024100055260540212017823545024225495052895227404660780511424003890209564687026313054116953180919509419205810025944448532108276598439213533677790553870513215197982636047855548855946774879671728097003613700334263822911332631457128133482531644659554216333487084956384402208342939911129717613125131995445980797316108615627398887602333075527160603725937355245433329348143026729711316086115056989642405150501767866069623722152004212716371421845164492453706256825563054849629972800487601950141210725509013045033866876161738653924495006741560448646109380123972753463744016024553710755999925160456076344978745385071891427596856887485393699186095033829589143762637202632105693447891726818262047724212415232121553181188102307469045638668299656492582872518824187146605717648488171942690654107858428989355614955256399833043298901376499053825231842383124560831762558550319883854181301498572988792714401333603142292562635269248175740208429060704820592418530047277330365378282411249313563578756228245063008551698675318811792115417888335394292423859549262303907931829524405344583081474373281330 9980823166203867048463877177532411290010809065424374668120360863045635575127525460217538445087766571874466438125753903983577664661075637258940916587161541282965798132218904815869409975951897815247466600008580723956655390665121000886630085153975004494962304866489922736766417729432474480330854789639410258077126060560621497972405097160448672278435013234103804019445146789019520211999262830744827310275686081683656117496696317314249368167166679711202317658441235111968103437079203049252269116416240113074495485623953301258061241660173982788886082694842859953448138240516366149663883576639393474906442079142635125782095760719459790354297183067591534393070876123641844401636406761344192525858385349930828337130175513667925953698769200478026371318643897688018926394597299041536982922628078833160629496203862943645891551288115792125966169639203509998537653125434382546748234025613849421936845975341995106988517077140659973613328991729458571805975402775680150197135646242396408973721213775296684873660156228136240311644821230048600753443850733842783523761789154053833093489583863573891737370570409181983890666495520841614905945040716643785400205160296633461672353503748979315644737354208778798451955040966615133773 79747752273897832726622791599449378913140897599125416553644520098851587687251922530635787776025488461340462401673715373989743019961638747739246863627623206903872606769149408701781283464696099997796766265121188099596055505622302049436055041004404023908760306186093677219602470372615114288527358120536137954376513871393941223932748021834127365894636977570482960248919558644696419969383452084248197046136691396340424233916581896959619445369427256868543733829156728652541983239834380095329237921283582100531116817094275448552826163804648788353775544455450935009725452854778200147542874471239000933558800129113525879129339111630233544974844690478056174019768609197960697328893590458628999692237227454375440137487080377839114750645575141735454480926846999181124756595786939698427860456439589100540631487019125515765961232096877448204323765789017630165150384720239092467447246080362477538637611732532164095906949131063782930795338581351961402728106695873191577354376440709024542672576963758605892070925097899948602252198002571616881896270028330210594213987209794716458059889495304022974333848994760108477187678393564229042093779486698443400582656840501923061726543943932696268696447631144308014407358544876824601408 637192918781402539932322979274412430229690414549399159424170771073202305075344664124630774499256180118084047632169869533372858007927257375998278648888481287595687552823126660695502770595773148870972042004282463096284920062500118361460021224862528723978890984886207404247837487814089606717328611536836938605256130749098048065928155004241185897656876996057706576443139210522495020404597313404420095365174499015090053366204028758378653842898834413080071444453777080398443125918655455381107893033439974219325924271173807831003845934118047998495178852511388432626490515990282188579472898830862213908126985859215617534249162406070408078445319020780614408119537303686716326072675539077156062933514755327729007660389601015973633466042110814444568241751708107552785005559410467763374374951886173308749380131899346412097316319823858976499800017511940283881505196217103618732632202075061264650214969104011723345376255077717652800946933108803165960370274879479934723962759818509036577574226270089127486427714896258860852973445376951038996689215484779413697148060354981196404176391956064711704089881373535266692463268675608574876810131041626500392805216898254890065381943697663468499351538711422648761423464457646926350371 5091243041206470766314251749805558102481933603772435548475870658950437734369672266849763066843274283305057691592899888216195361697903490322161032462485528480505465238689489043588393284763201985472800443971838450326970421728505941717729578567676047184250067958144461760887119335240914330322812736039566164199733828307472126964266751964573381803870535739408306268301913950280743500885126945619761752575575177414831341142535430202046522961857087306087160833597124077056569363330385703383501358394774037886722854598888112385248460773927101550867621816501631301047047391922819171721376403946469129550311822520705189157923040226053359152956992469230613597247325430280897079962908794247028784622447625878224134312203466174478050365614478464975321341377983226691285359634054918321502176574112416271113375148186429476742535932086784440899960172170306934718242127185178805344852703432569799135843810993481178674378422483348929853321473683356924625593463614023082531253588649510139412708733133272768657735433358477614271073215606039639748528114909055033487393312890315113160866238609308152218908238715418913989359529552176269074566898632163117431343970252467055566998328656309075264246055955357076220624394678961527766584 40679641475662742099374469824129477072203235478238226144986451044749119331181176000276366917441806606416052678476455672977694327847471417723425542619340357438713113764546135615172635774877308599454413436430088029001060436135757443588466993428686440870611348730714117144286907540719857209289986055026719588577482257804092903208759091308086256433370499355322915447284191088972444860863908898293581281175638477295521529378764965245703942898907465131050898857873410740962166522085322613765917688004645970794452759744545754321300398898415104605624429412325057555122771172048352739419856473588940065894132141129624453381575810561383280037287073835590171003826782756936331428672613377274063760488169294718267719997375979240221771034372685116296019350577245524264024874284770563270186843476323475853588705646743128080006838582001891443462106158384058889334996766487876870010652616457976978045443497740142123247244698379932649521675029873797007824854940721400429715136215801162034226517902913038772768958242074943942094265798679368066721471537457646028696240735260397047023214569890980258181010202600197056044742913084898239378314494657056335654768127890041775686876170804753555059791765157885946551502896243533403980261 325035503755858444532147246051901290752661083248098710352339167917325616180289536741851530605061995860081159768415892560802018755747061230251189380618197911750669959015181712126396137166331798542191149781178184790972163482129613641303494154293909391191076112362756333820436826338870908068137199114844334777478691379981055762298797430996463435267504686879460505204933172806104778552704902167951796275480886172235519757299198777544186064136100296011259854519115339984227039503645125427138556177130453762654322109266474511753951690917314200663859176723784444180608596576873557142085101425046058514311102025637828586746452172562138515471710453758170048501873708195167443943339869979034472686704455899344653761942914790557646770501359133408941565553480688038166950365587171892383719228964511027333870279561470853886526429498792706836049083105728554394732523792383874157341289503287388569872837645323702409260453130816409249526130350708298227217394562655817253799724538231079396866804133569464040651696967250386210243456819819334634896027867187393310658361147624168354169031681136677306613846227151518013474002766075193399093055368731184354530435905477669686165346458820619591042388560296415397176600435022698147366978 2597077346655021338789206174073744677543803448372627621594368161829855758235518395469055993916335825374190165053980804629941488384967412324880844401934135859795376743810567817601981023424285935808452428038736490900567934348749490133823856102494054796477630482998041464089751489377118497192937995598701521702517531733127573266626985179207434930445607416122659582751525419825485100799153010234426596715035525369624401187576538460110892904230599144560238551605336799695066625251543425453166054570180073713596385537744446720599553092606730504320295873115472409557719880382265939202227274865933260984894844261942471469914659749435005326400300720985553252093343978944888997753461160368647429872125961859786647208403387993731938628656620803879254196484336150299087333030215326425226231943039349851857623897662879915663046403155808374377604878582348897972126132450588605521653858206127843385197363414418586861325807702076082569372055912363583431389781814764260751580459578120460213139846340786181201977508909336386895087699004549411630077416359647240429146112018720703737421558414569964557835524809338313033666449070529217528859600623350669723187402945788168628265512910138432703386302022318628878240488649698927441740213 20751015896563159777210593630824095936837455948921404583279883160071351963534245777984160172203247862446169055649248099454591808000394844934342320424905435687709737189999044525586474074370202976976858432125637238530664684272310538869547347621886695709040305931620701597566425722938081942884175093065787844876773416157567064852428674626377517062782182138868139208677863351351326092306123342471397255377740635288342813126029360561466700050011564971084614192804598999945215278835773389889641081786735578184146769608466916638697683913373086780178600546753997097992432237687756007715291335443918334429609801930838487469632969655997306128089031067190479691554865143834692502398395658312968896360586256299889006593298130560160810168826409162282008856556041010049473410432894823850458980426945523654200016108550168666672284782256286793057175272752081114836776752297097731531183899934621107339127620749477894063460746407545675135017433530536848455253673907991548316074154748489648371639446255014502549153731493825048498303972960844721114199261749015832815098253365819706040898852315073605722967913995934627513450450860241033318999632891878285091271753265009215529095197666647846112763386039359661844202884486489371653874198 165803707785972677574517974411835054147640025468793866445676160990888760384798469753445719065267223282152631116046790652172458532177565027374789022980541345315226218200773246021288282193680500407068942639338292212131858197401904992235102031057727359731469140471751771077386643124712585302264533249605360803521114249943930196008744662752486550618204691310452142358715061459982693552871825866095826417509985760632358108759546038989031137395213196331593075845463478347207134707877664397237038908836037564483537112396232576800316827492865720066205762864772816712750868818527764423783619887001813524285772342686708950605389835135242624763173023303404955990758968003736258139465189147158128007998225135251506985144336985118925726457109705940269532237101021403098743304943100069298749259857966409168506222368202312136815054365828510256896914907680999081690615791306828257171109189238652853649868015984904919748611249432065382018764527005125302068695296402122291891250432790056622598619763046750299748322506719847790014729582463657144965536771905119190946000636932603644233493815079892209064839769408075890320549081327144201549453163785393674443561016461718177752472350651486794479986603215968345751651107794991674922446735 1324797527466602769822323491555712127886048002350803428803463296753436449451084244557951911535904598732461190749328808632432741745751654542064193646329572040183071262784692116844512282086594022008331835151362772479635008092225368087019714991387841407010880027011523345426496784144082048992243145293987512361960126738502116223836891212156910128836351865196087349742066442042421089570300512791390163471492264001317002570487195613945895873408677815260126157015499061330530021585319350172009292380636486345112136511774819314450410540665334330566336827494540466758878517554427980743755516418716158867741789209656506896560294139120194559430778135686449266438046263990996407406312179100573920412021825798417652041586482416969292695926895155311518471911415332100341337479941656964221888083838776868657961542601773275944988891631219017237657715782412714238565161626853789999089474881485400491255848179566329427876246029588071237406176552495425808224291574324283398141708499802890284015241252190232784836160733690336488507316771669988876391241519252642473748819961454688912712066048093173143134986554313635356793657181253343661721414999114184634127134661759049767283698671344831188035550701765181697912172859038403048020912018 10585348833621095745454025533294170310907113564114953693954501008034731307915895750351254572082708042479713371578079486611860645974927943841800011816957079158182730943010169377935241508574771846209088783320950132732362733822702964331026629437403881662192419453386234582295582688657611946989074095270647397323061961138469451182492165313324333695082793712685648263243541331599975978917723679356305346192495176207877759939421902777798758644187886335228855479241475188740313275909049321290971827324934332853411297241638365789413045251543390556777990279608020952986919867193969132940440937057957279927382758700818449788090804845015767368545694949350371481931170395887121243383834412644288462208082928195989059755722803980311713189877788835434836948674549374014025754287871384324481852641802179445988144664620879215513557272247235755401446347461774639618187550164273279063784076927436811909604389815500731910413303223259947852610812120841409936883970016169780364010546506249223246501474354898739637127105476358540903419476339493023672241529453250992087769498423391927100579547918642671773810471075488669860785767171625087320453994780469955740778901835915440007061357828143618292432742389896893035398456960004651606996132769 84578744563968337505745704527192544268491535764061085212709343539091285807080538347961138739007322868683494586143336383001972816893578671180301294861639865504699002293744036342045367865880393826356916141044860723666648122934879399664220630006510676882527350680339202689660162790398540211767315091379230968883804496123362123435316649584101562416780128002205680165309273509817724267183704640765755256355115775346751412015795737804443235784751342471164578982933216756188625939031018622248789269733026022948816158263532218640547008329426063746918286977575424848082558789488560478173117150046101784357099593596767891679205493593302602407668854687323185988158158893867721818240815352990190707683226684283849377596975631875624047184131758887049769184326860040646081475254426311337023159452588017377593752340196772019412977037954319400605648715068684390527907794704850552621729419920333793207557147727541748447361202415685675815954285047309849994907273400497742298633808198476492513766725375219309152374641564091602277759034190658154353363997270705363236462877360301577691384275838454281278883587728044050504148707127308878610364056932834144624445746296234262798845856596904245743725621526938211025740872212625176112934416866 675799223112035457755944689322499213230054432144773913560350776724151413812441776065518616346552095594311553003849153926370196698140967486057397732133346085315075768844536415351662815808164641528281562328836717657316122900616493709329110846496254068149661711161503365341539103119445461908298705797252473976613881313498275145087055588571046769975395927874898737502414366113832852723078549067768852993000551959396698280971979195205679957878810977196501854250824348598798252805568952354210396536589336387479544578840123257109611510177107629297722428542414384716914533930993675673016458412195047767638110384096143593078883117214634658956893162839368587267789993935354861115253874104832858927810460918334510500037959431972298852677194667822309275528699227089924566914336348997389040426446715340144384334017826451791754833923714611998678608804074920895233519098819512460942254211739758972910080861729090614286818106826273949816263520762347242774034510800439427658001351430810364702885095558580578952226186444629534521427696537346820914208391966525069406338843046169421293484165287880073718437848242140076412766712203054874427294819523587563640029344163900040847952310957599443887285891492208548592730996517581744396650336065 5399760965895909977335583886721674488813099034198685707669143962349746025776652352216943210252837536097258943924046080510494887663517817394802948360436664778316173728126067664609206002852260996297485706819100298849660913028944993606229078207617439665290981877725540679962682279653725111963591692226331290869361029194318591967180199090359318143274806014007198396647306517118228416450938218272805912271953902549272218247551723284897092895601358278303850328567022327828032269578817277648886947966702210458361943729448605978129555272777737052683409139670430352976314762740856592199998132655620345372010488185817231518134952572294922656095238050606894694492344763455380735971620631015278565845995097416924584917743035844247491090065229179225482852892030198233038816017236696897344436717022227105539539778251933137217506914922559400517259835494775455375672733624943951292377829689605205201483214225569538324453897444648459356784902292155990489990990268943989928886335243625500699406851926335447653945542840023270033163858397717475372579267859996703990655537617644801118256947092979505472371089209220455742338563809333228263512456596352697695371790143438281586988174874246998795264105518267468083907007058990206458870663200302 43145129279113128742493352976931214812888807070526507650535188513182572913063971473274129358778320614730736853306543797505379461789298468862074973421703695802433157707448376874690580688333111236943936492454908433075386435178528021696440465878587552857571501710487165368815302524043425642531585836402761846638239777145271325803855544861330992171156898636047127898003394906128675169336346791102852419849690371792207581350689990282209022723493864133977098681302984452005403411503389034878809719576810613160040671937659645600414019523082491290832996506386041317577013962330997557020848398408413287971500200877757279951554140912048435985111812138594820292192166358970540588089934046778428085808523820044996945813422639033847979572749245760195166269952442002885514719237458523453945022031869371395226163889613663965740602268084732222104410928432023574338373508112213643365001137410911847276622801299302831050211492534151475407655963832544066782735666815455602881266032146190028726123187680717570134861852920301682954935424404204233193648724157164561444284178029721399162012411130198293787857814915648724849878466029459475012845346588520470986755066568690883658212149690126378513288865901143378144207029088262772221995769880430 344738197234756467701926703795408619638807180142826785164095913629867557554827321927034004045755795425376263491224495465526273543415907113717374661552214297793614746207683394204501192652069051666349240676423157528748917338781316760633659976218270728371583822210262275199140116498869679803443080748606891678894057131124645526967225090716103804590000174453223228313138964971237771594574187492544365937201551500203720170073075524034262820492339799806570809653002058454309441951014814771149262146364259997016047340475570289836910451333609265256502995074620838398550904622565801305310126080785462296462476285763363726615486429858795796143609361440928042849538514392962161235587417141724703330519671206993869168470783588051380303431306540880638448764494897875024360738854121485401939959136932815035572767254203802566592913850889710566204457546419671022798246199651636422272118882148809819088634125652351895815178787115866913286531033755119710237490922266974349496671629671018633145986297534683473742883485326263743386039048638052949300829518759871454602507295210313726484384434230063753774414021839271375845047999095768983881664185621221821828984045452103559572036762967310812424711892548168170887174112295345558984101195694734 2754529508682286145591051858504951455143698647606888682688831760387820714651304518598507952281671354856505753344141526520723331877120775982066263550318325031173675547094377781051476750304596088463464263784841363128194051042050313211513068301128226703535007840818928735570514040451711992775656826212752773917698569129054017896484723245432034659672138868570756595624734843514401756347041376268720805821812071061051176312887599230179048592378786907835615628703565495724533474291386122952851368233997162774748972446420475757905930138255464234535004113147655100829801196522454048388062857996676680676082384190957964475147373442505781323750652148951050618528168030398214008526680917822566065495542797375212710941528046343438265313479106095959951757614952392661846294947279491853589270239994312548658859060404252753839572113663360763741595641393953634565343856287213321774503589727632785618442090200612976710334795279740793002930900731594876768797153587836103399433843878329005664473035561983742413582185344256640496757445349561550858660937670026832934536802251295973224461520672319064781418324425650148049347640510238628764249027851503121807605738828983017151849852770310640785237752317281488032697785138928836316097884054460213 22009280387491416808954040812184273153916855312093690979158573014278825016445953900555949215793494282200595620475280727359111168813859597094982251728265050768740407787108799071102401245125402214144773264681395087738150372990983191823902270737491874975405515661009084604287319561202659831991320278516055154977756076283474443616972508741606928390376184477983612320938935619409312482568866913706999281911190680488936158733203189339807826516986074422469198753443305138156772461832319878629859092036032177035176180989004335022819907324447657782409159023001477490997347101399992974347478472693369361381277249347726984099526154233399276083755451360838081007108045896051946816177127145146601901914113019940899566697418510205259522725789268534379524984614175330759305898516721606446320147900678953885745743064148159497849020686944357175742621809830339997887301121513602761462888482735981109373356627795615221815928940387355815477754573626458135312395217517558867560846626942832440834227678169426553966109956341399809272008615254562523577725900303700892738349005805242892804539371697316052852933043453086112975798730191258605630592321787120137303842177782851923104708609309449120728601766190590460404429409099387562624840242543550126 175859019479170632422714802981874406842428052671111356580896335366659955404505266627573475560909874849358781574744246023784858858266427410846279681451585060114095755619653285780185078441243595162576033988397647884069625070528397791666047523510372617646891616260621209215274865905933910539467450460660748861846801641693780109476663393501110358725978507958243297381054971111953708538347859540234416149623518473434242922695245661059728958781829961517186243287096803267874130809657058406622357184378413695924110465351729749649046134695205676447357988522401546234672355020650601089213854420802680793947047286811731180596382153123440286856498758810434220473002049480325818901446873381995235767290696463491838774282774370793471584223251593619668332756737733448552678670020542717902027130918748782674783370521689795839214351805802664054289505028659575610869567544956089135237339457240790513542750206382412459863887303610961426899201951158592007443057500968721579729597400822662366654984672773947199341737163926782683671103505945149506552449208203323366350013804060592179916820730969262205692157097465823597379700001638851945056699658627624977965874842260566927613222096738559262412609708241043963039558671256439430532838638203365839 1405153732475660203999750071628422551873500937790571160317598113562072401412340622447464088545877314420936313685058702375533392859029153341815521116879732153397518969156392364141581588981393991000239623538188817585586946586209390914465296880832386786920714686116046586566460605491285561391648899088445882077414828572655264044219440598504525706911491555672109480311078910179291603311600797953565915463851130958005126712776946807730272312226390610026822110674353127918220416173228476452539167260796396712918393619907683626046007421088713342084679335349811692218894281444628562998873365962660718053729138363186675470674046412968864117668011631780119125010032731807515628040853738152570012602822591103784513467989078642883659063636556042052083938949422020896620672005995213674347425356905129928042042420211135239363422020120518392725076043063740575596302895025029872993465659536650611249312469369924681680559513463582922719476333130830319697520271292621238681559795916972036746315292725101740156799869239993212351702234557425562100515500647490138534211952639304140306489489661658707196568622804352005283689964149944787304873951976145769406487713389681921303711642254484509447794917428396491165454254334797599905477398108401342732 11227509325487502663766299643557840380619122632581508930274569009327717708070007629273920374111114908575556405881420029082304629200071813520179316865202850772676302225653556754748062543168332439864005602554395758769701229354636332987029826944315214218569640582924333441295211577535925071608088191237321953868184335209331272350408367638503230148942854512609785714738951066317430605716762972303805342603146439657903086537386278756126749823156049167003725151319198000026603533100911936547172235527082378737778579175795204922377639876853651132434549604176529282922154728380901926658135370405689257683660152347633561248098294559154497116086574332980598763650522917275041637642623927280433080866076699735107580026513752088563990759150454493609258529132658499292201976824710214163024905677433937828892358231747425644562517589712710903224787772700714818049247292436746449970443639864635839634827144176453330145372228716696528044271343402386759440637701377732741256514927688402348947655166136236148454008822131093840335488124802845618116071806171684973548933434928593626030846816297373828769954279475021777517896367331956383075433758279081707642631281165916254878272069155912002916502227621052270024057646144721295426380243572209788870 89710524573099914727665464916617662708481299430145771641158288488714161982592188269483533485462997887643034194391511981656338488253278850111438754683621126481141831236663723695929460400697565516940594955072042574360019502716165813840866250670585901247108850347938028487116489408336739491670132839914366808121248615474210310044571173425147283949742524927088503150916481988165705942851219321475293969027440151070711769597376111029180976413259955550515288945106050336355126766634156023401493429686804618286387026129389150900953353091351788155958471319096944627527408975080606782510505616233684469716405057994446239077011043010865708845863689971486006568648649256858175465009153543270071550406722352847298088674882167678771235825138533708338071248020483946779626430822954130694806520099082345704097625644344393217815890777755188052697654607740356914130671814524338950725760688452985692579440706059315680055051116015129342716438361310899290913974069940187018931742511245231099331731520006471534244444314217829757106194738393607302448344828471925274485015036202116108260608678005588884261565179753987059111155592048556544343682771790921862465032902079305456714354712617652719606104734557072484203918970212630735127686629475114529506 716809505691213760606782276493874186723813159258746872848697824608532305879573847176078058423512931083063942339759713408539400812988777168751638374932742148808174253696860353422700368859461387490272433604007734440230159403144124564252515907947098035611946587590224708001952594608052575945078773043621293285237457683862787697622240040986993151832558273771066033552680685450336946699381931440429157890977969801095751744297520388890776184604594570013219477120987421190846186498086479809929064407276607123531107363458651403227521786379152893524011246339795385612535510095617179990314223075051119171038437751847130197741417226019008798776826295792419178587595458270604926124971716649345237714741834738934184947435903828207101168432312574454319032256764280144921366358159740892199223708167927395600323918494848991006118583201680505960241625655626963052638128182407287955641654540692582180939130973787902228034160075840887982228959108557634253404442427095378487171033901891141568902343491370852388587560118879032074261213433783549309977034221696141469909055630247497010824085448779628676508055245723386217484255895631935438002589867199169047607627193685017863087729714603735376344820803313205430262605649685193703959292867633581441444 5727492156552039001685238682070843075383971581369333731589788647546014738409030920534774697598056727805436171775361088307682982383290469670911814485913330368504457869122964660193960711574494296805261344806965889924632724268951208882880346740341553739477528313070676299744952492319230745869933621369540515106469029507425706473370959914540899016074960695051065034924936736100997469680470531809085789839391845509814146718871509682745136763639595223034670655126708736486085662227365322843935765596658655896377531223148947469077836716861655220797474911730912341809104792342439922760896808344809475066908702287337366118433661541836814628455923782805716964870872662638156884213754162993189560657796453499246838057311304446823381327431011495824694963609571531060778516660399151653146483497829583223892459894714765392913715018263565395510961730731144346328830155446138500494060784474139768840866430349316954432633199004963271587688587060005612807134829098786805484660436367252772027730189256578919146734405183036390937467058986645551421842482636745664517016761619632783991685644800582693482301663666426607183969117725634816955109207532568482095405986205917440247781851560583790107845125088040094780838718479745856333811420047830058596606 45764174953750540507455629130849779320517974270967451447331509055920885537036699883377806475220325315180861224169053500617345724109308869769010773715837625694112288684264071912044306284861606080528139909648239700201054870439042397981065707401577468847034813393951427859162061891437962161558755550817081412465699650143754285642256876384301406334130937683681388427660213923665972639696012686093771287139633481927947339653261462493802087865865009616032591493640993208436127598179052647514691921234280153752964732368511581809473464438383713945813540470338494321839688622738062733559803300128495893283318336405769667230362994908685900920150616546348243428121300102479547033816893418083628195213710958683588191359211857768974689193213133758170575050449903979364069669837376262471597226821258840997091430210809902682950049567287986997623996236306108456936518598954323961914786224731748729171981295680045133609998547769859424951809991499992305454880077975112629175056853070883954159757819307412804380607683311782432685094077566563394339704747263806443861390967499447697873187084307550307890365118620795367980694476574197428431881907331786516855084207928467699792248808000152553554046839792111249520501720622505371244938603525443824030887 365668169416186267474844518955198830181315260055547301118124641909807799492350257461728795376376235636585220130544214887950066494349935429153408357633004792346955974966634428299426081576286841486277568501665049336303676847695391896256364553039634410969986893180308799504215443495184755364096007460211718666612804722322704684672752151523305447767429514921305602129503369357628592555783580754980266235057840387093645340770045242766321521952113370422478114719289094123362425718249477060239411776857370723956354709354636705589106092535749668516589199112755041533787484715656615840413198494472103317644618772147971963419579580876908313229474886839956586299655286001566907312299991976324904243109605028480224002228433855892030672570275556975850229072197312548991056574640788554444350271665088841312709148517540806381478498521152243708674307422482313846703389224184552584150787473372729378045458225799620894111915418160233617776218541013968676133139826016903195825191474992207109517211548731258873945221257069123015337610662672777461887141533844068814848698989240038422513516006538390055319072954183383077390877469170567725617946197807980560071310161840525365659236262262439179463579634788952606357145019225861765695443019992822960343294 2921790440448561300767629086062448747470151123547227083666515380956495767536280344424809688487474746383454411346869347724201704273635162644753808967084135823871448209875551491767974963007493659231401845299547285150941379935041156639460315713948577915440183941640409185797011923947400962007778558500891192439213686987308380658757455567632943631207737377331040238892833309695646851939661320568934824307869636910637156180021706393957652346205646503187017845538064022559500522178670938570164813848520280176198943240243280062870455413531093185091543922557153445422577159508342166026033838181716087930705753836488901086054101537740478830307695690525282599793551128947690790823897182892312871745052766216957392369845615153057690215666689211154307307354778674934233417707886967935788977689204979623326317017649977890592796959944433049397175094331131703061267981245888566726861645835371536147535809910415534600418304314325412160234673738916028189039360944557135013267293204459037454705161576836167690675619746717694087231124156705875009649896520199276432832770168613294049738324395048705593935383915633906578233553330461447033170513913923653106854501558996080205126482820502884128846434405850275615193005481321901553912340549337139523771486 23345939471087845431818233001376634055084057706405596216561134544688511396038009105876407024132148286133474849698454442463978072499109331189668112319772268361965095498223403135082724459191572925380513358640628270947678850815436131814521806058597385683374795538368824173538158833823902067318025463326540435818968382558155221962825098013112823919666692783706075289325869864527139903149604710391619792738447304656527332759034913269921537262692503439074361276675356771676877545284575166732680414445212232409634043158253478761796837567489168614070294215408593166312170339276843463223136645453041726627831246934835905447962100215974791321289758718125301125971767559472609038311336611737437899430826279710650000186813431775309504692366493175951171419754885617762151121566671014244475444697107274763487706713622293650926813232175726927462655355924318746245284540844138814083889776357204913263226757298954305595521726239951074549354688719070505915567374805756027135825158792273702499254640856188436997389090114557261883651824508546877430527264442664394213110064555640713487312354163882263544070063394757787151488354216092679061053816374342834282073505828795431432478377454787633292481216389799275501609533624035251092499571787812277554971064 186540884300377727592093793306306803566640135504552849330738325203078905868174727821448826803510660477891848496650340178431454237040344198432586620565238113325549921886562604500328337897150084904213991067401954834294845991843352265092767412368528953314526064861970084548205222172139614618850802605726048891398631015849667333344288074381682774207453710818170252699075449799450984984065229695291429728447404362165354541183855012156218838779207368217141059109449443628621365113881128334978478696528852302521599423376751728118328529906861770836796763214636890531531833252047481298115007662466974363874050783322797557356205175963906110842434181242288160143766235903150953950621449239566874304376704033836196841410014338152002523320661387103437268272763890549103725577202285842006668048720935415920061774507091282327082709209261138396921056393170014098275985127503091837885889797912560041175207401682738333494694532840473743300542426611175669312640421695296347798628070358215900555341632504911285378177320432541484020294428496489202413157533218799619419469875271911674778389670181138290703641613231705905519870917957466561314228406985089746950125093207440927559168397523588849385393619059365600901020670022829634918013359078323026088868062 1490517540856391960112947380309579867813661343414879469479899935345399864596328057404107021577878380560879405374640619780342205639790553510145685407877289991612694919286925842648348010089009348830672004089934320086908358240476746937823324726208266229951162793946984796641331146105982435133520702878848869851456005352568702763380830687789246300584287465363257054162596290811633151031392714713558070814437887248064948549095993681950183148614863659095394400920475192892349240180126719631860246688486337906480653058241028394026786103373511598502953118596712361139786128346256890732048298684093089583174103589422617399021590295712502358721463860828496637672663383151273390665295007268288640618210789023766611258334517145490510207524485877191493289222355858872973163385182068298707137246508263885695358751120623339003518831739566532398538763743738258775014296863280875374024700316937171040962557871367424001014213047964568647424436573785159860100339651342631677879134070742124909239177133097809361558876766078813955259571871566833179561788529449120941772366395804423607353291028374738500759012097972276797981166414844703982218521933777866750186160354328276560435570189690516579078431075706161363633862999080990281102662843744983511056243154 11909692129025699639662024046476245098894932846968193325626199833463561127000167645154247300606365016337465150490574724865017052306772303800471712772046990837201771155231600367812392826641398538052453247299375312641043920695519451515268537792307922570386767389407102505742603135946814609457344137104767417949235870892442956010774058730701594218946122576269605966156859128387634072021671279475700018719447707266398071845792779845006574700273440729661115931974026021734754240397399019368252853851500080910702420733451412696444942846561275721630899081125900375357195704128280815950817825391900436000847411034756854731359140288983706228687811802916378492009387267670462320983509172419679538980906474189662029329145896528826998487651713869922283595715342048800424146496009055912012067843051255068341995653609769233968691587607305602558688069212779836335635021645836090330032320759599033384321636951831694066735601470456498691137184427233305295381280485420518523695767071306983764068125855219702150113173593316882842224344637239548039141168424270711795389286624850480687106516785780369181387511979185646144392000709498923318635918431686896624232866277888793708655639999258490394080282641884578901441061552272698647481689145804817724914740032 95162175415602056538737101821311762705794004643550284227785299932002095846253775580080159712124803035890599651889899695251962766372007781646519871102337446872607074764750075713811909446712953055757435859347688358370143712276906426561741987104518049168707796290883768041703055480044558001910633415037142941829369451043589238461122349674705774060199695354302512835807922715143286579510152143073971864351745426145758193754873569431484496197617092826498648204618952540727751801143792792851850163345665485181458280041268559142103514423688534501937284990000289347389003401515476447528869430925352790335085159670887339596095266081920544371384040842589655778674404840908147638542362547475311500353252105563596487112416019987305627009014513384679287199257961037444016600329302057799352978263658997982237357574570252766624024041432666767299277823764726453906027583658010136927350582172425921582397867356759318120577798844381256299562000922023164822359846944226242154943980332082217683731680893681248855557061146612501600853977604612211738624320797421993541644189802867930531432616760868796008570396067913632356475644868634154507526223594751494447944808567685902771759726284574912800890115110848180303751100493831063225722169312150041382277894642 760376297349164935372496094071843234266326171906341304644383091517487634898997092017911274921908483724946196796100967065075074659227923822332590911427152462357162961399436461209469140956990871110567170468442031117125896594922691609050701623225524379638957110977998171530143333792297638699336056336312933007033237119207989143740689044725415092760367655529410479123689089683718085180936721477182895851033269586455773783674187147549780505043750467989979444104058948257964818049074662144275119413807058648446486458588150229522670467115690755907036973198190984826719203075500336948403469479374734790737893643986891209115719312609700307191919033018997574609652947845780760248298755859288097873611062564709708280244474361357678242478311994193238771303787435164655317840169113716733250621160254246881364381435520221174087751560442877878454726617494505969755483454650917003967890565944335553127568932823425801105908910379586535253985962015429875319781417834377981009726696022402568677194813565650436353993106304202382613332086021701141347765242529817597344705134886665839432935124809925938282562020261285287732101832286170150814761596738039585086558264772603972218362845088326367096219838453799701443877461092739565321978472953075138731444513386 6075655788608199610593534422027232403021915220863824174182153434375358185150410039123086895431762473667082268569204143730249793793416488613946085942833237708206982788324860173864485028629164869305646094609810818545029909381493975341218845806182135643754826917288052252120903147586911139637564786514539474766040570474642521564298910036682491103021811057481499377808776058549843267544943574036740462145175882952738016392298488640946807197772417193640734040211266414045441409411504353511818094199011728101589876549900796920448513544684390068696232823235355600326176821017282609907990173627810833312187163434695883508129693091781163592749695124511425418033434771222313998735828230700344400699652230235021695190837311586900567172312659505837869299040577009275571294484060322662034607819858163318408807430612680990485684601933287779915935579637918357236086751174984281889510752438848659213401228434249822840151067128912177069310395738612918705786486534378082769551033195414486896162949397745165082636808855845537185481546022678227459437371146784725567820381119507200005850777710254555756655935229980161886111643155318891296897057671106380574033514028191928820943175469599882596324654218819342819726053775854139170019621677071392804176835644178 48546523345076628567674564907218466941170336226150848208634916979172850238520044457340144445736136143697526874308461243489537794095351753167933722427802734030445684507184321819268597420207871450961485574552928003017376630753945027813979188761899905403664490988887689525459787641389073814244402441597923348751925645627950008305143375442443000745072321896449219467727203773319659653584986891470882952564339194740886100524247417008697547580344077652184548592250286932037940469941012957454624348287746235745717293636110368010394191901012828669699121423217024009658739229973564456575087825882094868783608550686710871727053363185167573491355548449778658556860490994469877263149059281495153693283409887883383618933578103217531644116168609834671172407987897928233610358748343150511247020802575189733986808441679429286244541765843647894340147883559106306604793895503004968496020193762657243959774242143289550516268467210482946320404819368253327421544853472544724211379574271025141558913607932339620821305027600525537615098898255876764076883205877660100372874642472076850083415408444472742482766187098480867679987591237307066444796993693129123404776126472074802861214297504066017946887801457214090052168065203892614615936852441786161184793363764549 387903310693892034589531174749842095179968817948340345977665765092099007277913989445984962540652173859102819363857596233219435626204244242100892174382889084988108867054742526329733641867045797259664673115319573578067343241039803634732656106079075750274655611365562840746175535438326367165355736047061162415242291693900935190292010470584638816034409606575890515901191208597789191494897505429258537951647997913001513248519861298927646490258939798583809331248711938795361046728378033904906647158387358666198226492698085652306847798906404991888591734872517635675168430733063541836357953635103478729090007957152207033961624448892643133049714958030408123458173043047247205640696677605052978503652066317122138818545039487680592180324600584654819704464395236435874439734228480516250130784226406961123707427604548492648402869640537470899606378240836045545538919541748272843805958564907918581568042372846765613008707663408393320938325406053870881720201469844938496574356866347062122823538171484367090142061316427893114866536525670629839975383369856005505061828391176841540590192636789104666173111081807213272994337917695923210444309927755034076564874349129584579928412093343141766708929877673749623218222463971660012420922761625550423075994598088220 3099482718887902051042762266852474632474709910079780221752201600127587789665114419300737884914730556598472161475971293209980917534128621525516514344372477948181255455121156795796119291101082046512078645337467807714756650105996292089810677529993793489343135156901721410772225785039562078287522712141284082529073492253485560301634178743026186869339275496749168916337955788927596378051848073104798389221123652544018878533115772878885083861771867985945032306583639386352275965587494489965890138639208897085868904637063240624292255244301321132375700836801969471090619888308321350616026730609204334662785121699337583513556396831022881791586209101223399748277301095102386904894909695647821766503848891008943832152262489103754891719596659218811203521874639297278187293396541029159406888287206066704821642190605522701931576404854449415351026519067115524696927460808239106012627388076450411873291699035138671390572412308339947905795474861495194026172268068226643255618668112699778542470093320656031740988234118388824854041163469283914010950587065963806222324496021960831409916190954349089553561924689177866693521533406840884843835001876504114449457434333473162546068499963652176220383162822731366573773562632185566149183936749242474008355181125798607 24765969399056882203777441499173658186883803959560844803508782737473092810944145321355549858161689114232230632531853109219670067945869369506395159756483447605013612027971552070714599718766052361546330431841140466851716973018667070555268893245212419274212973863183097555723499376176254672543542160664140479011516292285443821163153338025438678052940061170347972843421848798863237502146726022139542662861641795710457956600392806073181361414343442058857856988337985482893424978590517569439532416299836932968651861028097250413761854300247425261038417162134091661923758011886322840885715887828690815053692674579740531592657504015108946563950175232210162001811288998841293250126750644378945727935559914923812908861322366213954267221022667536958613769076285978402417696247316491796983797235515070839315655480774302975132909613693405032593189786650004766948595880317378325526902957496064109568670010151909049392858908972246626814924557271991086300331931534457861494480360369555208237519134373721053142974383071907410077692419630287492219238536930143840902160896438853547456880774445706667577312331640554451473373365003455617968781574271063086958437435043232464815426103218240141779273847195262836425633766886221360137971361200552929727733365785722932 197889077400672250716261914119161328088080220013831131586261929793935256994401542104463374938951394179283718485855342709807795994318742830553694650216297150690550984947489335333100121632652963430323617098682215196769406193623393048466348447790766440305864830289092328365081307280343216310885963180204095710467888233679816215135578231119715704459966140426494293234181610255672153234835493353229506908658793204159419127313155406365085864346608330745263093318693841524522098964357926853324559233127364353269145029340030109207096472913846997097252909384283177223426073830698014789157420181176083938962426278194854172096578027468067251868111079994852895869640127241385656958136815318103376667826124470829282729236545007719025432127911968259808521449443267066178516659668856613272663843782274108067813529874802341307744051213196241392961639629531277896345664343966449564794243234545887426037520746195632009675037291530549257068470787328322895653913807921979880928813691068345227171157748606477681588135829239973602266780033915970977992587927471248325015793685875625058279678319128085046080091871904690693567911526239758962969280695350427877550662973257292362665767064476129865254397829515368603056961929519100615499449923116805522192882324014204509 1581206875296970085025487930339701863800345289247554260064261560672083835165993904628085386568427066662047903331589471188252943450852263316969817962797995547318064064216041414506928806629789883155348388981606997560457450388395973038988399499316930668983169328901897937586627053936858377882575153126025084152435219290265920542164452498537302161133064455797336753473890772335117885712141896913582015247373215649565345482707343404212067783679102912534399048289757302529000621049274830449858924177341860264144959843390568523463256854897358783039377844212265729503759919534889050928491093567015142340905547944557965786532628098164305570197127054416753341740366738453906133165558990571783828628297442583881691858152329596415552352378301421267214075608903969952570845538625601886554666025429860115284357509860847052784997794171772747316886264674204245708713110367221159801254573305380802528563908528963388146487223031171834171243234281860446607964262111679666234699785248104706774744799319167754827410994246292965421774209106896375050065175870720117160443769969702725445713788179769892654101195632836833829028855081803860915699381640041468540300447190770686021904105555628352563396203006732209149007025382572637614464535290447433620738470217393054510 12634438400611937796893631838171883944185101759122075358648127594263428479292503857660375987748034345083732250005386219894967420141342180931804084647128589436306912272250502455903673675529803174990701919797053416648852647812066040263307821297655895533836738017945797256146334064119840444585826077373795096619483081136595012965330186014007306720828214779558192480070709281517913002397627236636311885218337336879903563550358770088461712040466577395960827288877078794250734260227152014858735690417609946665725502552862286028349266373797854126055264274869578911780190722582605203177882306286561097246782789947825241784028285750232475993258197735064100707629238183422262510772237509272846343677544707669446415846628936563258684685759465925504601813870416929188726232732539997201617706501061238781954388362493087688389844134842088669687956034147518235902587023628761049544324187313288877095492278712810687200908460499309344116847830039391574365920949045379458606115551092437470095175519620270369761183731940272243502147722699926784074795119727425890222034646074538700618622828546763287384715040063418997789813504039308947590291347554814474166825420672839369040393099405418177283298588729877413255634823716364404914347716497734632271131305274866733444 100954008565683791947784716460588237436141091655379439405500439888387941870857229091474230147424854176588315590212763442023178574100028799128134890077610267825979456842230037484318872602598516964027188123745624492823405841111391444970761589966785540419827072877743940039312467220110145769553674648917015566995128774960334146961455959243029715215544237859237639858821673380339012919821131581552066036318208559086143015382374105773641447764194248909865168634819674363651907511743450113704565240936860631728440021641273852757958910228263050268901964675785313795717976093110562673027999213101172584172660635414720624071413876253634227062230169974608899155723769798257549400605565007661555121133466875078702138030967935059367131935431694157375174976852049493714891726755674036085359060471812062664955833272780613168945344858167940432549950597071819584561246072902575625770920652369918346984506037004097598685645556919629987548615631558774447747394126012480467481201899255766459142211657089060014419755397969297478466543676289483303234270894785134716588688831392410248117457182829525892790768080393247832296433242490819709172597580986550683935937706711483557278720319289680345627798107807117213480160253988292848487698457449982712422420664580718519638 806661947858657947546710070400462302222147419117082864348139706684424318491876521070515515668905966018154595607138175381616943118856483661281415761753938739003741546373002974206012613794499942810157938565414044066415951734000386866460478847441608587028086796974840209803762116275675718933344256796038583811116137183211144449810058606323464265635603156063822689443858771978522618671087312061285435286355903940450682355319052161349833638034651991007797525061180801986502697472354835621522682099850257527009935691300893948248547129674675226281959743960467052732567814525150050195036267122878245031094309327448615378808964499451675276382680607073598798311772723886365968983708500358272451345972270971972750624144178835500465474010471105465727212255466345360515816213631718960908366277670355952190688648376266513626102389528177206175054564008872690382000901921383572971384558722281439810598122074262813368489690819706068103560345155156548011769799736411369205625950803840162061834638442608734490481897225858961550579357864674290822278398461832843794421969660992058887192245886533438069037463792208234305563559213241543450249860622991974349289599393433509667607317734871995553636262873522404571470273221433856524508459350834819172104875465155531191463 6445549525624547405266404662668777275174416346182076253306744838229971741788022555437459961617872700847847809395707591220651141962586660048829226530416354193337286116748304379033213068414114372737767680746474152820045945114451532094452166880182910287284944149615945318739576673853796148042335868466789559904362630832135253264967103575604384288479898044700333856929200644749544714868031823243735966387735240525619112614271136909417936523196636555786040256106479777850146311154193458875960319812891903778029061238798665893369876859828541798899645836710421597660023883427993027359220890627848675575669833566714845221784662196038485670419007043097883067454977864773463587514365243657774896753041464069070324493410228942426906554468050513184083374536983858370317884898563241032765749072105091926499836803890988669396788260911968390502571441352213505829869815828687300079050795120743036349345840323660178450926820063406177858818839999165013603733115329407636647420056589912658740759611041819693121864157943032251427597786361479980121236794278678382474506105346579747586375286304851996447007600362410878608707925788557230887320800973056822041354864947770516268567932335148579974072430653924596293840739148894434623484803573283285962639766685558457215336 51502546696936106070825857367597471153240255157669333975588616513704626233409145340020964852642353586949365798785392747718386556339032491540797101008423580415278075487580477973829572511410546787511314182481964739360895834553305157577223952331359042212458630243514111639190939119863129469212295840627711553007095841046967000783993140980835457075327419877785120955922427822863922314091819711602440873773764075670654378444520361910925191278757959738533842908559120849361429602966137106143559221262716923737139267820275359728570131816765530136921647970753394062449265168016114462302190076166789478313573506894871706120953027920738606698869297416730631315588552160369022866204149689168083095422992898942375413401321112048748954799874489463626010776644667900406435464641554895142300795995693360170017989218812714655142551720192926820894536592314305358389735058668307601927516877966576091549311182086233996226527445194970719247864143881386300762970142320664350624275035946871489448719718565481639280075650697139954531444447546958548525531175273212629387334686947250323089127655077504145571376532904553884770169257035220191082457020055412998331473355706654000841590581857938905706562612186963571980763420949668849618484695382236295592961993018558743302880 411526526600075895217642258773003224948723831697685565888155053807167735664741437591582770731894391198589937166358601487956076954623125108775744182261749589576847046251084763552592350888025644348295203762491002734656206377318696602785556016864907913502491050716258293686419809896601073265670535769021556140956594751318794079708308712468395101118971762617513618479133226244092377999731653833112201260666962526230027576435972968344169073331905949881428881597727302946172395485422802048247842423604643749410650434977226653311006256390588630955267798049246184512295706325176107215311936687583857542892887048218796686835745811388044517071587245107143849699193914962206593981763517423122399258152376061169048315760313283277810987604468560873532671178422637062554368933391494485040169206656187881476203506294553913522735503669273670050508784044937065123084752787403086417698196884887690783590370182787388916687674095956919426676390844226232194802158791288804314134684480887472451174562893227092146573796801698575222492375917223796900317259783270121353173266119807941986890931273236533993714916411501799785064480882735963954607150498388374668915712081555248498441041745622197700998813937310542968174217531628026100120470410423802395107876736819843003718074 3288269009696346748110836689344462403693198009804134263574043265157856268253879756702580844248257406400804278786560131510579666587242361413638224884441249202796346965703106138489738982366604788977516926844492496508299226808295713901973622695084554505515715008995403114313539435391927783672156595965687293877794269434240441373283365146060232523279494076342251961206831819010881334682710634913509062215576532105533972974178087645767123287278409760549882012322178868134400536769709945737173710631277136381087504850541335123987217226021622995974032293840848415387945020609940823696580789556684646570714853365035691860791381334137322471580843024631181474607970226982008868067069611366770826354524897181646964970338063643448111181771345837594911390285663161385508716440830036562195833107323083984444583325046659549896415240066715780268754407774795268720823333654493579457425134493467613580361364800635559123320798127107383173335779910840751732517387611844239668573884111871722491257525822342237678008058895853702769134131459199971493278125567591111772989767944275189997325341183834381353238803914382968442176787079437785088770311972540945123102692073576842320754178347354020778684920696242432877250711961343351741772011393679686300002555240384781646710328 26274666874757738442929520588733873269655851709604077198123702446130286223407032684626782061075603184124752466263770218670687454183636610454037397187538837714281834137640746631629534939740467517425249053268039980865029757445671343371977339728657297155184309742788528970331371870524482115883736853726883044966568441507185750030893762149106440613426994764733794584920366490266813557912593560499891118277314726978850166995695529151118352515923835481998975163279404985396728364266333005024313563423293214222412643813368533443833081055800635949443396111872575495127278576815722943373440104001516385420967879806462436621364308515085872162025158046169763119721338348868369776419636001352698951789738914264491583385357479803722381042962068663781082457446251235064531189658177858103726302013062178729938487279257572326236234512073496365081626583459344065738951417069627176560026004595150076010293554352461967379077540752419570543403070720578584343605544502468630101731232665295484788831534105585474442159957400747309395516157331228709575012714973860423294222207129662114729749031818257656909729481323338910433844597510723057790280786853965782141010611541504486031643878363878680208421038868275927516941683748365800543642488756833277345291463500349525578108072 209945935479432448394749374692458837352796750694485054878856262804662856003835040880437944559020194483938129543108563941726559420374378973162457844879327908472514429750114403097517375931455448207684778755233632413832799361226888438300783723261719462943613235455265528692883749647358621991673253124875799587539323713873490103774086174700708162103524365815862505638454224362539481023801194656927270135613042758985705555142926222845246043072478998691736355402210800140639599943565861662457795237211976898265920777656411491455647322004283783043214731671651331608694145855486334786371251526842621478841710072257166324999101466283150625635139546184696772927187953556868346418577926066414393389126631653909497121720597518124719783330494187278085584852666798024571523232732313101914192797210417377555127781646240219397585308651511432833244653105316398121439856650718634675174559923915632164305967095730460887921268737761189933467577555787265755805810325756143835117987266828871908509810213640834095687215557658150661139240945862200151483194826711672277804968432776723589033593322321697702492390854995061380476138497881967213609164805591403380445339432494225192547899597713763632192109228635118830948808459675538643798261497181517693099826420734382227137894460 1677560134373149572131337050713282460618962571080505672805035937473644079074226621432606503886891189119018014939856501175290038699641574308668268771732887920979774386241149251512728568691800230531984687164920532838472898113935277017065923963047204749730514175700243508341274054725124277981169055045435404094251360933289811822466237107731937146986899954112080887507775252204962743330807102890721284408804083920806983743253660559533647060543452777755902954566187469181314953275523720961613724098428915757736411818153396943551531779935996890321697368266940275577438247683610480205615721517352029464764618537467842686030661132919057548823922959577049143666354879402882339868222667148837859854736241197307207028271340310725010257567665334682736041576424621639754658772644261637129488575314727842554528771987524542580079667531769741068867924809914203737897843575319758317067889236219585031999064375338252353965894946631358428006611141819938970215207951633789283261588636245475589339894477342312193452700961434721710566972703257565861676543795822194503965399742259302391136360206271036527030398352088894332988719199997421732482628966645193816946497765070830477893961403716473033456887146951353682173394327175115836867863859475359570746650689573938304214280042 13404452971897834791100062940033916424369846754960931894264330199730544882550608130212560676372755063500320790075229899215541817691883828831391384988546728687859398647516962951128232520039820305196519065767468517707321780922046428478553940171088854692209578954476162766723249901109569109679478180034815105915337270478179681855696697861686146790793653688617362990408180663533155881970341112843475507478852254040415035085125314058827026327734997859796597714807463846274839802753517870494948775135442176630961310530363535019537477736750161102802899833753140767165400518066738714605656606004454878895721208803833423903296193498853516905471440668009632674018025299755585707209329904301757502088153003442961950915709917082449273848224219936279597047087254334587843665831027046273804314137071969685810990174248945086597172996266739929654864092610434701984191448029777623780481637734762680406201325304778413223559608804492624251034621040632472249193344350400717269983835734417442911531358575505344617754674933238832832738637404005799213323085687453954728520525292697376190619685318669220521251647022037206532657905860608246063221549979401422845420985470741326723723653464998930809834529924929196601645540570116066780675631287988362494401847651633960319375434760 107107643846474390650002278940486212340871084754330416797119548534966634631290106347380336793240948706144545528783317501032098295721930431990776885527302254219793909679848562719467830351709006078529404747152270896831611394782933956986294987080894538450112441378149612878020858706283416907217145325592255421059172753793415663681774193116785287518447644490392015161329466882521055239294653934047567830336315815426422014695320060017425649832163359506562807742458168989146272047892490595011460677568867145406220949931545804004381376441121937309079263406135858582626858499981975680807385874805798715181089709363167482025207507184694329781238572662273332167755819828363095385609230003972029157147610501019797147459477745011028913378102036460676060829772273432054888281623356920619870599725022589439586699028854149336215662381448014468912183643797015912738337545206101623994774924710747418199953594201336617319332131795755785792797719658557657658713994428347230582883670472662802536898258561868478374912790043023727776291809148177824965175322811135078126503944928601312465387688674597412857698925097979043819877219739721060887131100119430571675972333953257304411567542062735206181836915856478997409095087530788686602971986841951710892357118974188541965881896860 855839265368101995531919152661736664262243244600916104527768019130056948454673401240898107070143632110160727481991460429230669374023554554949011574693615847398789674206109174994154804198940926397599119301146325795977909726475329213898377382954725158306822028514271040804663252636857129327882861367409687310712512263405950887607814839543173588051200897015363971254049277529368113578540220667312359962094798472695563260575180470405418861292433950515950239105797076438017813426202036862433714812158321624289523949966623695580705044898929793915285065009891115248989461296685940662067418851494834339726941658603785061999246777103872987715051363621432019503115958824706960933259071016774197038472065324251456271218192030968535016388648918175840042887512638354108666116380146432894588232241391850395401793922127901101144291570986818066893733534432716579879274033117862361607431002120245521942568723413239915391330287362774214710127069532888552054688076103460854971876095980581225752558684167558091406897792777378419293697043036872181292566311551306643134565341172944467582802330875203797390202772458258612634981205422010588772988684006605135599004619529345747813165943954171100151731430748059892867229595789547810389509114153057130168565126790049123603177271081 6838554630924764216967727139776819956418130828080288275326520142968258405952479323743769502497104055196508908556630500879551028870732279482395387606635688827335639095459078751835394709624096398134137690480116637480971207576048175679350140372368949436236359811459078917228778268408558908549175746141597250622016537466864098611587527271016628799456535956963173221666776046502351838230928086388921340957601209552654661894899500121907252311686601600362756257899209166870322484648044866688863021124368557664146569519974001890605965635608814375509664825704562443013479841360755729446932347438918444349472877293494773925461644714561543095236628336990023650367326742693058999218034783364604901365410324232804260549586627130224120104235995190905166872366692645511119803873661534433463450646476626470161322889665836562366717963194458766599069422414035160120672427907255643710664190844950030995687170278147143275549736315200445304463836889370100157975817953404410497182338021405317302303309369880575497156694671375909274879023580241412098721642409448631756666688821360428414688818601354312119822877731261476628892797271194971524775349524114579506687369939929201825419015682130660823868817325426728582495100398325404640862503302074930778044489046330117762510535352586 54643285514021430032473740542440090984551112317341238934462911051007013370061705481921698656956104456222115909094031912638418981604412341964400661507224095524742627899055164199981916130938960831494471643950572517238978594802467268649516285240183690478614761050520653741604225789253524382787826734611357980578679300584244990151757313517275099470103840657765604506718379777628129877101161073273664138536066525793037351851926154178603914339725913975286555558344944483417072919688662672141061673749318725418844421911003575205853476845416032810438189180144892683937711113096097358550411569111608882470173566087634678982700418326412711904685079571643961414748576303123597113617099925384537286039212838510433252057196479013347107575297962822581663835481913006978880703805720482233390663558911463684433684213324779251940279180527553848053166867381066416217978245881566730005700668109131609232192502248813119753809045744138952138442500476866405959957040041486290462937460508120683093042779184219572839035898644775273589737459695865937482843506247754861823509380900124899179603801672411499117437066765488021573344992409857138109858123517081421669428332127535463881330689710880793169950360131213368165199190756204958632925829622302778049881527587354848010761448210368 436626064461007616716156984960683497846507507129982987636837125715626529906659194336451016958779134592923127415778958238095258907915458046482373344946469765455441875905921014120262337926549311187519867519529654331847944140258015658538926770685827131197901748945666591626635045626589375328200993177871605424317211026609321591059554483794330684655040720359134708613476150015355166607427597058069764363531226679828753683698391779728328699246638965161364212507830308660149954338830472998170151404076092601638430540015536614523922611121152471475729667755693836923252980893114500017393298349902587314824210718861684870425023917875697694959937811633611035957318196344886353730948815799471625518040993592445102719451789065847123741975718359155302906793384640466359508801477728600788542545347912238712001948285005766579899068785315306968328140669847833605958216994299883237602390070206058502805737962120326363406358333016770125697379015683546667862202659088967186288540651059868173978313250569405003787782795919298500414266856040594658125219311318151997889321196896340298058693993978379993432137677071170488574245368662074291981330693312373600074012804822134316792037522189828807971095249685685533742937724226823839491156912978544998119756946195647060421873837665912 3488854678623644089993208418938413677588660976308418386014548096730576531736516456015124124631263246769890412083909530258430400304157492807762679825674057533833592295584646724987027496174185983001943979045606706612694158953574912796089708033898503724791105756059657935388293502698649947578792013406900535159603173601825038683405678106562029814666602548002984125586586950774808143653637128158552590619060664910003553590795027186120033332153316726282534500191866311604720500300956134296218492041684271296385504917107912550377679660841391594952653691242668866128522767697042480703263816397036330349837123885554476515496079586334219386902727818526902793308081258851963447787697500799399676492156871908830210526331005663221253395493335757683859957780135245983295672884375405342101672549083317081219258550472965887549833276691711980990400856827261557114642395610100754086989612046539785483630865803377056846112404170111493088387915550500999604694374105069891192478644939205565226089829911115751849509790764868982496999495579701920264446303852422988426602304418585021091127428397821785880279512629628842841423734542014161106996877666914352324863186808279186029312859097960998907258502222361475777211751716125057519078560428436716455086597791286190069283720746762038 27877669927931159522843643695536268130339101945374987958384102515231227096206046981317723653002850999251384018056741830455383650667958134425278428712614709056850718922424441658445046972120686884127672822026247359370603134760631725253371328729555366031809331886855097129705346335132956054141963455116771095219582833264659239085431553649290357236378343445789606452967623475129317016094836420280356118810640153166647231082759915993656920989644245219655129527552458335943788734318959289170304722551356155254135606668751364096957633025353640980126839665881616787049606059222168202816047660507216847476901678090586038951745386378267725972882422845095243051719743415152677500485348708884517508589470542489852003599094614439430516599740630689800462119535472552621748796063130938287167059733396041871520923538989351499983323112297267276353562414759521149984789332478846825382903178286853440693333165022875412863173658440757230503642022518076684187408541632690421714981122332450645688691740915079728555566564938924961583660814226612700798382525530541382646867695897085206209153294208201839773513073948923950710461156468290326575213663530999980542759858197007526639202099568197743948280082485091932739535029263960850504543961227784128254143155705797397281184357930567252 222756523657439063734103279444426271942046819158573265645767398311529130455847831822207084253342792014062350097972380371946748466377809942091551397086376662007426801601032344417774726117297832890252682799142815721119124776139546543848551473275253994382281946698008763490944951785460069669672103327128017260271354825927122947408573429587666707754123922939006284129875579418732258349439885319430483741010279700105305429498870473359294600326712699367883661856145383943618044763354492045608297779019403223662845117628341375474687663219910507987667966667941538969995323010171302110521485967434995443889963124133657976003098132593787134450954890213084950682717824638174943073082889873362664192050263240520863197064090716944559865573048611916918541886509613989452345742988828150429320732838366799125960177358522547074704014431689685923577802782586989785649302606961598419912594264001487779671376526473460484183242876111761391395741730931089156478129169102968306938768118593795343437560019559429421922117621774190251276574435284852150981350252628965064499797288129626614793872282757214854991661510961821265110347121797430539859965143591501065228044752991564037124065080269110917789449144310241796656649679611898720031991103457407223639598020677787440695160627938814524 1779937526536554032196811614971026090191912194636204985009663217394733892773855771588725792600357550989208266269206422163452109873260348184984073753922759288970533768551358241684788015569306934850956407957452484085186476017204360310070397535475551628066410855180144694507709794008790277762073668356721359541202328588346368119815636808878002785649351001399670440414686584547480784762742271689275064313791667866975543807002164704077697245721554813415170298757192653543523949255144297911657689825205731561155290386163769432778024672842370592750056354698064134801740678210903843092918804547775756824011839350434282575567329780814325381730917967333402444900892533797434431219001155539966898453244297527242858355171901039574443065144878027090590920278322741354146655828842721411444612384223735047908624840130209577447887976938088463675966169187023541112697808070146900084805992199510976540314079265902110672939543423046207815421797844263476181594846337224216536660416869927670872433445949300976886549056863847040442239025259115447900435116948468201969751705325927867089189420657510909860318427674463248928520993018630679537848810337659451328707916281993675950777587127714447266137662455218209555580970150722897420101138282791207489383492166177725132552585331154475614 14222615013753630144419169237524714297150705926012890396496478295104377650450959962976667949941939597706197049139320952432594686790878563844614770600080794964081128654234872880758623160587495855116856492557598989030250628892150381005815422202020875419045829388465111098222557927300948719177728308598477678296158178814737198776276922645906759511702671211087844497383467939232917047524357940555827958963414149866956717832653912059614197724964372748906431821324201740153307045856006062617406914406172761198647913453872026943995093327592245239263437079708245223199761466628233159628269628562269426688624325962422019729823298422755406296884243977414907941699065541277306856581469852573641345324410172347574443331385271418592049834423042552713841936624515756142172804883387877091358007634252863796171672303923908431631801816832076888797126446395520898758737623976356554721883276513201133080397917785417792035420184169961720624468868727626786311187394959388392307137506038464242373953057405130893351179584921891353398970832919180956048508979975451700312524036185564942345364093206046473427409834761086891036620554296450077637550821665973675069004741499555889727640265972111806914751762183071102190020898142937740992922257612270358856401829500042223933450955550399558886 113646094677939027158574222057777712951089812857534061293144292121212233764442907402239921942883945975874920541549363754738376729166851811111755714262081293655512796179250707513359822428559530080311637054016013099613282744266425150826450674248615332268741896766721898069334764877495651799608626720062500731002360695454887932926564995252976834861371183916181148786684924528412204085192601936864015548909362774592024939496400428144099958292392775289983285071802493458858314453035926135351512532997969835904222956682733328243420447387523606157056388017886393988710835464727179852690165930821600646973825690261870131995633722904722468972373183194351167779686126871252348081554220590664351900231992435863864046717074527772444694576471529003764328885488060105760448468188715513026745536760764344759275136108674739104776216694141046643538404392837757458001825899604139297717200613040076608377671054938285896303000004913565686870754990019688697178584471606264305747505895190393642840875673119428225268575072711446056901227069169624464228184474954217586751561090731256219604701679894986352321105509533476665131649306092797295538341806085174616320155924872519358373671347453560276276666940259986028302456722872183986536583047431007723162408071769851178905837905246530971502 908092197876418776207832471300306678822482461492249472785317265540706793990530864777139138806035317242905166496114631973094658571127417486297282290279375435658318091269561183752004208233300770525956533751306837141673494461985082060834365173079348967326382991083676449653713693741297104286324688778675946965827540062624056275307847905168199549288301184456761088098652890518873901242085720068210400070263509407628054993954640466548527534655182054537731907124756987851240566474042569260659850921829996324701741718013532331640771858547731101995915857375826654828527690532527591156040739469680908772843544555570094280987875525009331052170815191141449983844817732004030035822330038187689047012151081578430044806839208970108661413226188589330917500685635464675114758931133707561911641538182154787397455314958669004373345276465741305355936768153997258270188723964842362703944858705229298440585471417928315171178964094596882658931800422508829931244868670117449120391576587751063722454133456562733564563810157398214712154769601780838949050309936650125963230743186551066472364585308254380099211011070354384107406090726593898650411959005249367101186174445485146883441894588760479175292221609241847829854569636288261599265422815444738879379293061146658481439653704464059735219 7256141415332124410004873222794039752187698222845193490243925236341255193670203231603806578119681572703306664095351274146397272985716324961191066418191416537234020316892297483698724664412536808778336610437627431113507372082568814088282621937814445394270872553774836971238253438195320988053342090971726406921144697410855329998845595396629278244963162212133571257488882235355698115979842925722201448362106822025041645834012859720110929275976151006850990321401846440979854948991019613800904302975506990514851142536434251347456806070247486278810926546523452225116476128330342502782585507413707706031436166107462604621908571397005425907841253452510368016822026318210672499657364469219608713642994462152943121525449010254258417496685535289285986565070495453132121449021870931557621360399498671864459014370221267941660449935422654815973882349658197538730847528370938918032614463383865766765695192723734150286808494432832335531760899163047110681384223768709665114521732167689568162627939631207247832487426766242444729433638919463152621662405354892800544372900170554630993346791610795186041014132232668563190633835935715321028877702641624891286446816282895318178221474003123617151682231285881405762461786624558907152870861683998181179202203200029235747196311795693919813202 57980492111295679454700469036247897096033116406156102634252002957949894435737011911582686331000299225085592158438308193493877391750755403746618355557078216570915275173300400630000619616478438177954151713432859451256205446957374445218764976320611146577751494441744116429566305678618625925917584677076184746191578923778167308951181852944996006036882575452987777542138055469042346564486398836347435102735748236192672138468492933888733331457294844596221489420734815345512246782290758273089043911086805867584448941204407477962188091409530101945253799905101136241405932305141530594906856740312830308479591698323985299519182288178867625788108514165886618248843894237573517513376716963627346477437578658532363802768846241749006904255373187965734280471257671270942970125003880496894380179308306052607779039925345419718806750245486277663355657282352634843560598605627626958054768306058178663878832540370517265210622150643276020399949701882681845762092183454847709489583764839306116989721742519913235817965471626996034433127081201769358800627096150760955714572056986856520525126497020073380245415964718022756234791011371692148727327437206838983661279612093552039505681604768015413879810894347621177637534665924666851072873541071077376414524937797262123809155224547462153575834 463295861532983087558815753045802940181246868014437470719865841803393489890021868945467972560886997182716037949099011260631074156410167030967708830131537919295576715988723939061814159964240883126038020914204743054887384036984846393643922394476779682501729301242110540724282178706292036223008525678743092503506247366584372301022956850339368845862941556309478988670602698158926259418276929993510319012665544027489870294782416167723853731513293720365821698488959229132884357417518958282836309836477655942809824616068896625105340433371932401543511754219259289720549208771818351638636054015017162100963023424106718043116307402329512261525976312028313525783124928785754455775848659126638611700637786319778123563923377912700620687072608702950607140071116968841674936542834417728361536940283242426554074416052303738872362496397641660835258613493097526346516357961472979819158661853599161453817979395316008978456467051623277456594372038428418763820542105216817826056094140565761400944655891182532727138274541895535550738016493492638213425093511880633540233072715688282816641527547521477206076753636346470219650396566876069469161127278247592778158064280804910761248875433366064888728675871637631448025823162880928620736112168999988717747151104664350012307844318978170238032680 3701990574487926277068982928321392294353859649460286365685359535705359297072370462158652304367768855977045159718793940961387539657264181329874211419737340216408148260416383624335908335128401994658667490937884983402318903602143614973945101371543288062008768072638661998689354225788961554522391101742290967784137865171567626651302347381145836584437455899731219188298856062907999970012641415105035338577513050307439474360968053383385070012005599612421189541814202010248963453839906491308365631894598566567336326667287363397882418171377948411950088046497343687904989121957423643896657208532789368697965478065823590794421836234004941090040760223539196347698059892949878595350960776506472916957692900688514610278054298273397692078730765030922576203862408147474308305582379544723563650309237281360070905155620763658077264938709768465925112338274345970001655369999093535840846399943208954118429679527444551231218275665387129512830746399211325154607245014583548278672541162309632826022079161648279611081953304489278898835858665513885719754082436776767802401290179396211007455055291464682486007464264946023569629879795389411045564703137500133098654271495134469972440919112680575825408154136809528786564792051791494969184699454969245406603204613104782450094041180545766679937860 29580980162252036437932880592335081477859948678943595728437249075046469815897509245346361339319162289880384247415779793898376119212359040644102874013024303231296211488249261913821911366701521574468205417780960719256680795849697335755026167166884170661956905299145254409037298001824850801568975414420601370918761295820117406326030688160849741917783560963706564870169739060730566356642489368988781088085661515489232415678766792793555759939096107122807130950745841525409520502122781267292770259989028880587899144079068610605958639232021807219223596060238395054951713401758459516311941710083604131863928730528136785305953014954493221897273154059253158005482148911255706991767001963315801212561791527966992266213096508690564990458700546210449842742507585287226860893701289727687411480377850410558947213069271717756950535429752057166850783957253819427600403092683074917681950040568667877143082644504021114531720371896147228152370591386881702362805564391014185254647350637740387561424158714886488150467858565189540925876800038075840213471944802593770710326384830493705482796230192474905402392947317585492891031322075955245866286474491825708856631294671035913862707358817520414363175712559623907074563168395866638972513411387429727314838566769711575486716692160566080788149072 236368813324931273097786082319941108198999962861551653586350143641350194181310938994850376673986891497236243040248329773836278932798972692515128944766251482822911829340696452618967531306424860037342924493916757620849220377935183535023770005572864187399783745611251115765705398684290095756811904012667946242322570565803035715824900038482089205959245938310469774816475283990639200170675546079102408535220337983207892610512584112864130403465051613350104288677443558440007273015118942050481752971169026425086239154418947008090730770782905746617484322501547045146066633602718964809565171501608440284749015650104127829219625308419240884044597805744342678967744010056104097600745459227830919476062224718892552512165198408717651734798252102141998247462360855223826825525165528891759283247492110664994491708422407420989693689912012876260473016333620235260692904806027402876650565407805299031431420340333482701541549887690394273605739322056918713278097849034714417736003424364569653103437936054037471744319836941451496183239685145799855992682090972770016251294556097035191031713524451616946043214130324715536482594077175923766662831608351384357608788729008482954758087691216351018775700331491341106207236972123858776717299437824802757555599175313828096240820739275709631773731777 1888722491841427521583358433285639725076368478649385881420599272440283329426016204132972818144491645185082994988880306580696513402490279868958740211172546967021470515348442751609705822751034028086816263558838382226732686665612682210170388105934632823073906224790728828372719655845122221708192496434975038157304605464327846238189333024135951644133811853039143155757710780520423497667203165212117135904951735039357785305999067770817538141065439857054098116274830070408965630141686814760374688937704297906656251018499289186891949971412846618046521677303864097149750616352348072681478111950334146493284626899402923568002140954452442195390976980320922691309895040390679445163657957526608779000351198309858523700796861401555880716448403733930890920040838146915368435398115695262635244456435823613774739904458132674577062491717978772229074840646446533798802466941186997016364614493833842066418302440592135182052607196418930381695884436611287828430510807878519420794553336411805390795849006038768614076125076726302948813702859319420834303717112689549166181678108724893840149037584184708852144707466202770080257982877007016099942280171888430217313785417618747082264762218978290842707286674586310312989033195336043113603554091161165074081581999408163711041734106355207520054050990 15091989401630411303992905472488878969904556493652247136905727942628439507336251931371963037286507139797913498062389929650059890928702422525788364948247398618996863858027768565216040312125654320669173108476054020639191999000415437600521915042879362972607582846693437588541377933347581829259585964176188422878765251678006378308354738055786802980712820089380977989752537209358910379460468485324109029234617646307333158326605162089163269075737020534890778866807043410129656819006043999376915158866401424927369406099710464642516064179048169877600818337571026970455961303379538720019493446578532298753901199909698974460324151476641766291158940990357419135202125849012139594095127046167454151570701007736298901953823091377496611050481192804892976061828791670241177319152050944020159300238353638585148877207251090384924657823700740912590078802813375967707175242050221953071769684957167762519312333281534660159503712818102670981006521842302569239860618938788400680913715296374942267923272668231567290962264375939409202287982097307223114535202113352119065893016272002919048233070438991099102633304408647084048520221151892267237942455618744118017914056755163350256222313147276139348306218087595187391331037133129360422341901386255367215980096279138929836538816969795579021319662877 120593858932240374359279930409810956128147066102670878100992554036849779976648994998645996614763245596796997889370210707946916844346558122061606374726070394476228776215136210255987583381571586066390866373561044184781358876735050413562228230748793952142115447751283940284941668437822408554753310626682787957206531023432911028267433735932066355566823415317169890781122978444240791059202426835563638270807763306344103915146673539220300765287964046307550032137236395717756827442942090909228736420400752518019637625535897009100359092051308959528315654048912725996221172349975294641595550791156059697829842189508202604753438208159235965827115010059791852622098866502140955151741419377473676294912845265293683015520494886129139982553902568616334000509048722731445153275705013286380261379847367088383921890875011755136817448854630233995188623518564959447919902439119941308953319799398393070479715396622811980782504689921117662393370108662507190445015201946683497720797979160124923667015613319339443644267661765684125420550754398643554430274067903553074059487435923479775083345027842109627148854796004799821314800011703898523123541261996343438551973535355388328811270303385465890275775780965414360994021054886554050570022516787201063082011150749605149164511075908081493307604301624 963616559536269301305142456606437059775703750778542919718436872351002749304344787308456956384431186083528301703643451985827337093157884857218063852727905187081356462521695141466186006561650643213663642502937707106845187092779426991492600072887559771841834616942062686740877054737221483713514596066438953853836683639754644592477213710419595570818594866068655232271581625871227953059582759326002050440992497135760409089569547609024684538745842511597842496410852775347416523475191217066346004156810823370861997637251069098329658004974661216957520578174895579335419477281244638768213660028020023021220912604032462573132093309370640915979783313971239192932941151732457537190699218605896331913646195123371420241989357077970134166450093867283120631426996488028414108700785820946281373896274725834691718933467463946936842894497342746056143978017947170415207125309676285634001021113127874264575842978553593961066781194722314427532377352810854588729262699054025775465436297552519118625587391950456386114495150471437831781273268376291838874009184019852017992475697465667991058211266549707396851607912097934370710771799558957108829963027217048856389182520111120121345570423038056173962360300435763446030904194087207914346976236494138495673970935044284388264799930578176975289442968096 7699875043282964574666036546708654081546809103996148393101008489660104989784133036147511221095049627544218454562845870796043109070151838151359686481597009595409575435842452779118849579644764733575433340486386964716585411688226905000958737805998840623043552166761452225636852818199866916556185611429575305099393618225832819392830418067739801889964458881758318467306661173152890555390039570701500411922714093861441606704172277172635108690962100538993522838345924991885167266006989986706742293258840994566162626230251529439024171717938090172854756444114208341081338752609117970500705595568130243227596185729844016814151518889631523962625793632737289770600453623492972759073024726861183273765416209256605829316279498591209012497145674132897097850219214508539713147963870912854969826468874296472771045186296358623660429537874246053802843933357069723186834618909225312289073530608938937213874020589246923333116164183284415662171269607589992902162514489861872951311921735541044511606137292076974107012006926016587255262707716013750946710187815766232559277668193996270174363077311274171678698862480955693093191389844088599029067709821917607962140200658754011110856173180362534678543193216636766937382734500290955006788541781755079367159063978755946387117022042037051219380857554120 61526677028441353792729924957438881456931599129383080078559788319420491940843610424609538478850605769399252795908940645383437259161904929593987680798344308682824333977598296409343840016629545359024736847267910573680172768542641684729283800052147110442126486484768422835689041562751705512422523164936861122749972229513256026189532602815310827952447952116775186594448929940266248798944655892557550081794941017544598825958430420261838101684400667142094669318941044658266649213897865977102157729376283731134228675939669214198295858876829238325611415055466972054717604112955201039231946641757338216543414061667064107630473099649538791487737922260218941044814444423320612717093027708978686780592423348625881021211391537657397810011464718846883559007932734678731496713788589849864434366694581562973075011963513677431483641019676990292279533287455034477457696268767398168843121990142803663134194249437003501874161708232523598820050633853812399119539894037772682395781502900988695560487803437821937181657458308980456724588855550415301003977748684871926232145561776784461083451336351864494044261871286808625915035013451756847768530659086225772181008969837611668714104819423054519235871861383173137112359183373000479402257946843505762433683172239800632153170830913549300015214151600733 491635916042560939839674377690988219350952828078736829456883654869746403844545969178121278043003436380196773265796420508037690422101117462259566459875168089701603788750210426541637435430419641338986018483873907247233779922945856499615953269719658691892092877163365769542471667891714477211622553315218508556762666002988283970690730828778938757435879263068146535105325754648681524823129770599771175604904268116033852150930196328879276275576515336380515943588341978060469625713678429941389908149062866221997607930765784917973350875840823008534759633028349593372143984961097024543760744349465753181301144097453692697489028963395555876966448509384657919227278561873477360730023928002021838383827449755082847000434605040241026315896937653244924605445286014281057431366348607666053074216452648240023472521005929200261850920478512244543777820753752632960851267922995370916895898495690618283514467594792147399691368291495938783454219777958610431296961213294646334652627203271942365565771125433246723449818265894447771643834919189931709419340452773302467344156898826210748164399925175040531113684873450498523253183283354157278018851383218401927046799887599238157412009692230725037008170104465439600218677540153424031103012460838603032998078365125734193512693425192783511320630725177300 3928475995297311219663753462593047509682926905685591161308875839479009509170519460708679118901767983076003598191997361453715057868265538665934087794898553490485432289278901092389234245138848612373827311705803241176264675786448049956186781609666947622235492212112215230372955763912714520569512114213184155801982050760483871648477815055872880830941583127932705039933570126974083398669185773911463186287187383542871558539068524875799837119759725819901588584405913828993588211962715202452916837539081333793870287109238308695712709316160080541530618002556977481041669192426982931452366338568355323302367233586466576191579299209885135438525359186242780068502514105149652715304389079654992293396187604770311183693382278071886009466914827047711995168491069680801991037302541440777258683526433234017298702851052828274903640599302790028661804392277680758828478727508073732390264277841722417379876632039480745055110292533566410349097796068806203446961581057409927364963529713985580513195724844480373450839416680369748055940549802929476913789613481981870318967203570582901157809577980463093007645136605742946118319497294873252886762847463396130614956238637417984338250300111274735403190692977070151076001261155059451164114649876264621153788575365932750799781124258626317062602388246809028 31390986466720180861293863898741170409896138828729914228014063815144911182465275114744836990579706368522699387342036224840754999186389230420205946306170256260219145000016564059045621769354923777157350785050024670919148775322088371266155268813245511882441120062374464328545889816935932080738307409125731887817000420461254863150513960413203910454403140567257513342441322115290371351367933286569737328569685112785460331459586309376761484656080386280157676701558062779280917239414141118168687467493505915127013145923690254485596258963504109688853093291952209999809097067570774361350941810649120680062929454493751631336773994996401682859505250309311160288521524489421008729361814969810003208302645415453020922137760937218167035269260461967301285422505718287609693142870722322537982857666927643082023393254274494677690158972982450953286977083338734822556394206141960697185793473045327450348482674500201010540005032469377265423604541846826080560675016393722752272160090084809416655533145276886143210131570256287437512442258403127148064822000765740707095254537477124002165292949342546764442085366206009850917142616671031081148477133832711047317689675499332629138408670819432849229403528531085834902299846977554204496135714465118348942825190618241005813808395205732392274689166791744430 250833871692238565081870716577629218293035783855099180619438608999381526844713812310124518357067691170158209556937301823225988086593827495469338482282649232817396991489521296025248223366263409338324480318803898020087946518233270575960449506874694149184133324362413546209636493271893311833791081931834716734681892124182433776363838626308737991104129116145311264439255614206841187025956935361734159734824237092354685408388841509688919992184277448195114858321526799702140089033373104850247247537533945019186906265416224467502067387087831804778378782115200679708990668845534132805198957480452071499560002619326500515850592590771107895485316847490461626488911799064473812387336783774071808687103136884192707400531869377890716160545294254233492126151936823766727092051751825966856128434228352977793424006495992694504351911321767085258141284147701165668188492362782303081519399386341324184966932134151271382134653396873215541485602717157048538668609756766528910230767770404198539812434584407600535370940296942110682940960703677475862255574315127966575247521984372816020936066525196026783520969100212422286330920095046416490527543251276332503338292484329247098004716052997576281883698022319151596566953515179657599539507142531286879620877515477405136808216949994912649245541829563169246 2004323217227029166385737466064238607807618855101804343675630877452127536438067537367110548584746912086998472446292665570501077365294753755872593785204118440460716997435848443692991677033221531261344622805101824919563390515298038986151046208972332144497238657193864638619884947188269181943308019437836267265836634000562795645261569084360832825663526488541802916721935067951617637147989852659258200024793560708797639364607696558841733008285204875502079166942292940346139811181048071813873934613017791695556529025854806768247620173648796379192170015850886281414264438887396065228996950191143024205743187497016815701005305520251551193035345613976901329541442917053071997666297503973386799507342918865022868235111219847089136221933235714909041917162176248399050065704030912019589855303429283386301403719305302267202848325017872373964975712061580312798022812048956509953582717963300418432432237342671465751857292448299999186722191565287660373256720820551646344819741819838527431159361979998115153939852796940811791486288216046322646054062428276290783091937932610966710334909968235014876842883808722214386292131144818786084298245848387566650896850913798502421094820624009265311539088812572901751188002692160325396537109555968357118005595247036318230595509910768999555696938725333577044 16015838828848324793903243945510781939803396995981847067598140349908105831472360330507333686107801444364899524288207644501441500603326084808719122707994195985589326137519798935820457007832650879078515689001867626235116341073978720017492232952765727286079492230590116356104585932199286740753254511584219796883908312555207442062863480599841526577493198894412626446019058546125496533958760772896470488801541551786001592165539744294821738834000439490641268305321136737195262695287493225480819674794365733952893860030795994338370655339957516794254536426818597114565842292574635187100399200279351840254077156409739799440232383448684292136814075513383694784383181735517406785698979754097831337360954759339526141536553367594916862989045813810006129928907493733521895978605762782478584955198545844382467778031280120217018391072889222493003747203019642658151561391812832103999198650353211125860247474736529916513285444597145300426777136838191355599193001711366999414451087188398282413223521561956295222246694254292071269908838892244874557014645340399753593379971663489473295247177323359627014411761813396871630259634590456176076026927080753206847962079709335920661123976946586325533236998292268189133075494542173014919206580809989427212076472392127586291234531457343147263659054338529456048 127977015768359298448246806603374356010883951400458292663838543627164150059188816858550660695801593774682116711841985515341014288364406318307605155952063405211739695247435490860893991917252338797605016274217058067783378899713508318293713245353036244619797621869087310136601726936012290196957778589091148625429677358717319448316411009364348394316646989873361631469072271739932203231323559620630941165201128210437917704774282014010005283872791568349463086042017648427191763838514867991390777855612386251592721236732338663935913675198711539507111181277932236629354820957612627419041370213003201702540536836040476284275272183106994236591961725494810402985981755835513427506401552038548697713840271022491890805210549550983003492640444110588778024169582263147276304175702174748446983410814009777462489226036428484868830298778132936999070379809454576121863671924571253098316723774373703559354603318411817066439229366591008651937468867217968878444460830652052118490187066381249077688592036515398371675754158999518328798176098474769076338242169897813540222960284526676429105573421687395456324849104656281064401241516428079494228770348392154257735601035747813252572788030649387804670404885963797336180768232164322599557992598355607723802311030316086634399888560721428011291976400674517190308 1022620804758199068933088747077120395905273219887685112498246655321180620658985744372055241129536571649431371797493661363761357150221899653527937225296198859225327853332478802061339193646231751116622284222405952630714846132977539499771070616944709938970543348139244283319325592051002680722850568942561775784041144734224704863322756777012787841998743545174930887109448467630370239600791221544397247533762797668161465188861324113180985091133542043214169647249666897543230095791520036485665972096544788833580185289853497485069607815681551505004208487894334094012932223007289985502017021114263171859960690534859951106184124045167049992878460804191819579024503747775538751398838119892331367438523011126266987084914124302105093949099300600204602197080182343944055414939450752683494594573704224896433330351974904706639599929695937013552288336877936432148928764500121539805585729300727945875697840952453790739924947215252839390691013835067479275580945082814903544991008469236228855980845532438611782247025389037137450079504794229514487018362295736157041631932498160672421738731187992250974554622368604545571477114239252999926927336913288635762295807719607709790070870923437983770105687015874367566407380910019626021500407802832934156437736698099188439508833758381642593006696144910435548390 8171421721082550233965362233391215180636493545758446431535105346424462079876602744029832585648321934536465033719399300234725657844532134654854462739035562615918902485963781163683143513365161915058919889210199318563922269668754211057866944090668166956307458062079380047337864385613700192522741901726272288867721213144346214681133277534281203196812843064706051945333973424442234370428387277983533886489771631596049080775798477745667457246925257334075642506934772425135845726367478817521845989611502324272378467106500672991689809167284217430809510813093420038201902695654041450759618027688676800898062484080281717930051455669750945535224394203660170275924534924273742558076987680195755228157366773348091755931430166448693192878957278989625739487666316443120405293787958274244742247178116107871736404092881022744211427202021997439937412717040668399587716487678485848801696789371211054294687236862338708524017762209189043941224672235587943994364512636850147023893922506325290036979853203893887433811940049879051416811564565453203196061194985272798481045251435844458793028646075438891576644166307801393080592439917063464469536927273520096546471197567293802589978757715215949984317296609574485537427972748526167156989136604876820568739934138840965842438641363086680707157968439681092305508 65295158499331032180237118216032997610417479437209376290034272792086856124083204733793322820006350273203018061748288690854254228408007772040663314468512070232277700221633572316693917613707154313687211815838817277482316326948116518555790171175188860551488222073607213057691010566964931025396792841420827809403997104770067395205625888415154952316130255412881449971927368427973755735602590299713951828378505976488822493868824391547800992419921555917203375095804393068335883282735159176115170504069041396160378489318908368282114486582302020009916136305677970306078011452337150389856506328239408472518943041991022364649237161304317683559640566913023781394767467615738670904613460053877222567691700106749454046453280700028707771071616322122036852632664071021128596477598585967288203456463128983683887850241212318449618874570048307832548660963771994065088764620026738133060296917441691673228938475192948574223866925468192721087984559824866977845256664971053134184985588572417166873004015193111227160849097684564628735110649980526752120101219745460181494935624487845871094832037056907313286499398963722384912088169162657057317194299990575755561678625757395701894391625053093931763721248011471234479318193115296388957275208980540432302389396725388436844996414721662115745740132323817893604572 521752682650053774889082900647771272948312315658196518796709046834545204566035484677371609390167867792685856402412685041463526602073133412506005291627973530911411234438532810733914167436429797618712850680244215971068901561999490549848423959745119456179249629257310176605470921421433430819675311071944191489329925368531432354796703867993413891361138691538481341878441569663708148635263483429192783860640621554673139042741201624160580931367190464459865174424975964314068462256680018874668087615686509141824809201332367685710473374017229915995123619228483525940041662368965722561902768541652783985956131085587980023235688224328704841478017293027578703629407435550304913031017779230843551347245852664776639261253442314893535790012991923239450858796505563992018651608462956615567310745365529086298249663690223231843982952917370371607481329523860953418518020600626470574608361237093189287642990221283982447418552705751128774246084364401106136357296482052927116347020628542481046395083389942203623971527105771434953064461154110363183128660553762368736266425777774152528715566105455335617218341711919317604311210344332442388166844046930551164712028922128164599944346860145095558918872916245773927495847260649167679555357856214576080849973827793218355130488096431156643131814955663288764281592 4169161849622325015844762044313838792147467550459704775443331165706053199211690134764347210962934738205235668791844185595847159097809035022909416541680191989452105532977851007668022382178058592431376573432357126896729446737162025042163944767162685330804755016053421176231650303152758774587826746363545735577557966694223114309237586303466917855939147188540144000286557923023875396699000232103721563895251643193308825758714753570467859611575872499836729281233954573300881911552544843409343640661967643801223311101427994353515669204531470982926814909557574520550251960004805709998434456002455357994590324004592656044732522972857771342172773499425220770539086663901090718191625378521936560783751970494646586945011785066040140957978858519827549984393278885165506211178384556362592253196439349468176667871571413868158012580225350708220861598450289795775739085583948891734440083875138314942997889650944933617797374467417243713778235703521719712052162856858921214453712734117297043231547635779430377219838005586783307420647493617578325066635542529914398612574985379094804058012802091689026903544887514339014996930829700793707428845316650418553258367705819768141111215948429590539357359398254188838151507131468659405303122034678381325108350052347062287258494668750135242467829049525240690254645 33314490287977093922212627977312951560025017349642539778024012457727519461790300578901430827836957637893824995092165020003811857624211619612657394317063722307924156501391366676635584797086880286127008444547054793415217270636076763522592236357718846343204768868267829478862499186662685439481241492936867221575055646830127557205427834011591116078033986982655928653670800799004646309158476344708788943758264077394316342601504855702007237805012655985438905408497694383833440889404761598110501225997060809503168683100415851337435519368064775106219322668380653087228723154787733312761417602106371112362335310515494139568966730687252827436868644501060376765885974182532450584372249268391240279620673793043110852710168640148461109078210683275730612659944896567878928791439395857311068589174344365066792455950227732683857477632872049217180283815345721099151256335282982940244719799195254814236799491011200481715847080228899618350985393499310615303762956121822234517596436933454555826515327983180566147292313692271542093072375556952045698185000093663575132534460531669403658697822537787468094020389265218520222581101347923451478237519295156035511961586148122399784731578981625222721047654263168764950833682208237410685491936318027874588657375147639983051998077972551811288517325922500626908271044 266206063819185320291400539984951490345870286245682332521453469424323328723724848309081283033810927817612616961287659430975581666836668848380968735256652463810431049672592668685852864915691104305145755897760074449793031010025778511942697915838066143137016134126262501558118857713414781094167699254521320554939342799593889190608263338206117765255832891733794442483664347679297318560707988556183533795351175481876386225868560461620296666535834793992154406101601613375565762340595681708209985443549351785431089719106336788367362329046601763904410438536257339052400118248847715712599129954526476085818781270358704609666707943886782087584333820313139623087226311694889731196653412117783236016291106088991188453902799797803230149559801677078211296419506529474775042385556146329185122432036303848735847287406879278115199691127881852972681832372767361896532458924027636151795936555968893278172451838871289952267287255114822097048823171422235337466446983389528531454639251156269028890685911420636482141642305968896597424053952008686029234621560754750553646795104214968110949600424417775383345228235375688245138963423758897795930208652205539632795280959829635066529202405221190744892348008313930689068386677120037371361999354428057109709788231113836668280628796463645648131027508574673349923690507 2127174251561201683065077419865760178259166823748713808775510493010616125988173625313534438952346795730039920488862393093740597286241569382374877224012174260433307154581951388901872051579824517697152851003464458560605932690226837168496628934298795846137823631802303901113349107466419728821070143534635770498618405660799116914596432292551100324187869740714334436914380044892868520906452148794813994575282056106346644316603618801281236810491579448207754224630164452702109982059300569791341573496223134133265702078155955237920308014585703013372470892887329964402661377776144945326917748375912895767791678362769478324773157174755592132008203030659091567538316101060939460865224132146016324008166924650467401658238381425413450244337324127960314833575718013878113257387825396766713355026069841149883309020237599470160810314633912768477115775022571525636466975346553073382792293340567147356638860175937540235039613903727710363423798607746198810196144224559192738774043814052811418334502714547565671103843450290301528158855710445649199836073027642373657977082571795649740123106349670297626848889435451183070644033870850245581609395285555575134266606934082694946212777138349172873587970396831810334785004696097388203313867572438204271614975321045069645080177864158580701224863803236601326587993656 16997636717422710260125366624577221298397376305412160967080347166610272487833078555004941513998487016801778151721865767418699526178808753417640149246584711495922846178588471716419860701733278372261549371618870640615993731546876849742248010879556311089260406414749797697914564460790118743365111734937448040747362181296857566655163627638003732016932681917736592506323134314236330628092733465735078788163413022629773214428904489306939139737943789082628001486225767538036136687953527418367124324831564335288857228311211841850620597542781274337550993668767869830471644244193258282717781330526090662540468745718709639744608676280919921539792901123556002376146906581542922429910025089870069842578575161062067248753934207345146876696837317307010657792852709948178468583848183785870544447750647011447055164954540222757524741653986068033987625664404223430185709643101513458909048748520883433272548790718975633471432245141020918732431686739101205643937350582031772882803032389894062014720832709043987897959789724627180531005468084013800779962583133732820019419899863005252497036591256427303401353982387294373633640138594190505159092170683794636238277899276241515684772889842856685366316569316470341285932184857079830063894319970432420014212068651644962410278683701255253670891429937237129951719070791 135823328842611931168414235063208439788975810721822861362713887516653359946681476367333840751917229154161021272557462377831082543242068726734749708618103420451389914472415690514563615920644844361192859141106170342713387073963078925009059412392284453900646202695000731524276434249879827522241220180014044394531313519137142384590068594120534067343389686389261052110011735657253257871663219472969338812514571381761210179403040957913664975667082520233082150401542712533245500577671668840043609877696004471500666990904724487592151137331091550042379557202187833934386130119209871362023372328580774337644430205732547121514105704273991852207250178827034669744870591935298789331525972634353688473672404219839391342378224249034841184305494567440204422974998039212164058443417072744467269617259732751769492225807739557213610917615717214954478703273248460430149292168562333180842484181069724714289172586613155367668266598478260291413530259678067488815821252203056315703090974646478352746990339191306268891554210122078393491511340778745981281095635333355548526395835016798093815153208740167991953204665346374740245211962890340652436146356858064179747787286373651049908776005055391414717081208201767653991585124929160803626158655945677809813615947226807126770018967387631459064870253770913054970758679040 1085326853286736075386340802425501342045672436670087911971718351050177492506458752777610376713195905467516284521753999387179176814666294318521226087768464884029901226265583162172553058443354276379476502220446335321384904078551929253497427086937542230987204681971264330014604556086507858215627982321879224012865300082045761703217196170507469172361406448726147454034289178803675366879942517089655326124966612920799532535504380087348866629316266475451047823968305434057444832278463680259495956193041594676313163753578607997597472831942141106284303272208394065199288867782064621665193621920745222243362440278069928184147342622570416678948726918446323596867217664115945612810820776444264332771083283057102453232109854562857531677735181027741731285253172117691455105395486976511923302304517525073994750790296302091662360164163224805141822449554466970382129433913942238630362439637979709573599841520808800219306977297451834273584297420460184655442432386677641066103928210218919136492709891817605224723181561636871722619660866057052151848186790844375282344726788047944543844109830117052456448047212606835252868006342003100790204397988266641704044553556159476643402163793484087574831881633312831207754344397565792310222743738559640430221692959436259301271982834459312512813171214224109866889215802683 8672555292655122362253817636774463876848545427271469648139888286202781239970750273456844219844145546186302476004544493906021612465061522583771178973187004614303194268704905660755469983741924443372972822674630111529507764034103315710671186140061454662854259688323678758044301315717454023933261693643494343760785834556339314563768312994033358936371969581270681244477713515253731342105180872411107762271523321395917631208905088889068279206875653377965930758464054719211605137265873304907523077366177750406853962565444729570081302065192400607737551846521505883522626847757515209945883609482003587493478972346612220171741755235204442580686534637780912963841847452757617296740043105528269973449898430402912511000561171402999234075633893821784293066886679639336826378095401862711281784717278903236575479318857489257482226869125615579725008059021130341548586649852063383927343292660203925521027796692978141759707921580285582867478536376212085781809248063892491825686697963506510888305177334725123433945799230658487142530427528176875899676524034098371988423398118531259198764533219867122076564428640479469150404937460833387031512569795123485851926997750236949023876883743260296029758436406378031794614186885677696145340419963308633461628834440528020860246506564930976103654144576430256011156442622246 69300115179202344511259822791613658459725455358621872357531697152735875480020861727475373516117111413370920105884801558690774291545251313370902152472451072928828250213254803752042505264781105395460319935157631682904312849037077643435904840133759339848487054531631421075612179592341311734394694439084163734769986977898512444896150748174242401593139179598456903430741409223486959213463867872054217742149794958983439164096359906833104451350845452662857207861243066864186274052158280103186284152569642903208530661987477704003923401536644869499105783094035944165808754424794008910543201168907102679944119702279196723073289953720653032994860062934498117671015532517709657014985367701827769748677054989354364122865900825950893827175719507372513677478191911225310376015600460967221686978163555943552611650324976791639180009462990631618363656533600186401422731421626179733096295041612129657494531822802473953513735576778715410709355002186468428516915001549602881083584423275201711587725139691567827609123190470347582860849374264576370524318129923535432742217914264695208103284809228837174505265928276761190472853099533014622318251356130888721171340579767839448197022916811691850940367666342769120645295921784432492899051680906644001283564712930878267311401601795478823067977939288621134979395484239330 553759493956680176070470420401149065673239183626310528368040287101823288614325688689528761439425545718840353411971654853460636411586910850754688915416627070079296431820675247899641293716753470036340251663379316268833416434001836853686481815525672938997244065156490462361710126406972556294695315124509073190291381768455806905736115666295063380026502208412593266525335675716463213720044663991010329525402107167055952448910689314500987501953911312795574718891879792403253775539665384652401862173720042689142338598330128437089006885852017345693436474245404214230135808562693973517697169035705200340557273570778072440958014858486294180607195677330797700488070568379386117660518466657845081948493032010813821108976289856973365465927017648189399896172210440770964067553524299170096063316094065371937864926082662857053756636942393175671079026848908431236744580112586044419892589663051912811574034017091093171069378819539849521009322726890239552919928565942200116778631750331572668003841320646824340772378960661756448870311577714559135739442662691136452975757281457618883954084114662103178203329581507801717709890237574429454144024348013038334132536824226835162312923854974184428029610929226856572444583950264527727879238256852784012845765214127403157404343537219005237145083696616703161601298265106288 4424954026173975287378384280094283110325805766713143536826141834725675070342808057421918480173845863900248059844608721880490019651778529764528697812629737073133572320208819573839460482686988816981470812273655409314141766003786830296724383110360707519139350612708416604443098975726867048846849690792888703727477201693996278310008712972393042280746060264359107639338593209133923802050528497226754190544675608519618122366285284138483032477977373513639490726879728079829048656034834625944044023089516063873464336872771617007988779134768346538000337837303562936109655098302020533384956564648290473555549747930272666220885378126733047371295267563907859436431008456257638153004795318238256217700398257088307318885702528600551906214044488059798142138633129600663554528407296104668211849902946872726314205598534076131875844004864867532978078473137545684072135410622341930624223338537802136223676859199705393742119892723721859454718488638933156162333529690596117641799160602005083867253853869918240242729975427296872342047523679177251764719233971486864114451766295201741122328645782904098853020249440593189792962530708008457816331948391259333293538157209359421905603231547432075417157533113114311184631503566147241750216793544613282989083959874528256970049352511581107317875589433197896508970389322139905 35358732567120090343505968995208079174761584938615868746388692044471679936469154744282240219177150440752308171594659855161154363505921683372283894262852420415092494040538262387551185776466247788051538633958648981042216420294888257717217671540215910934680738292155871046820612785532206560913227183007102040400582011723779676532236117523217406058073058671918987168001656772144965855181346730381224522998200342338662755933673764053188926244783093489171703232555329182744799479408455691824447505763403951359475843784706855569764319183792392113551514956267566505873264586538817994792204733935396906520944864932447824157525773916035040364345850524484829581788137078803995863814243771180918593462416480492099911143355484287392444780872914436033508437511211296159764116988694935555300194567609554299899337682037041510299423172513641077494171828364628901788080386005999170309390267155079326209454177819201296359445040075820118971863442474207821095832357895927318598199384294496802382143381854447847467658219051558959739517159981409803616286787973823388161914047990441128234956820851317846612897363248169736356887075110398389795163242433923987647926028014181698009059261336728526944098985645419888324433430823656426811498409383009508485725312967390909930892997778422450605276902761076744083829724160623242 282543267951301263903959977871727163822858311814584269901198641957356400504632969206780073288473762318247140790088890356652523968834934243727848192265493623286954555897499618352675907122145771697011269431389583983679591012297243573370526054114267439244970018691776137552467708261774757511566695434011181105912208039298125100695315780971336628655197974891533821453710688186504055999088772298263464206168892285966184549157760207584428945267208773876060448228284479578591257217000383234424127567797901149050894888146387396522553855073122045089202616698351165291102018746757586486668266027225163221538439263530102916035853760657007458354330383694428012015349817079727703025211993374307303089278815693543577443474264287820800129918579405327535776544658962090608508711142758951211300717859392329772854805577460108379514713628227615641321773604069301763207636232347469423471560012654597862904571023969171220045361628991846400935478507559287931602313507579451725270930488302254718860156891608445645817114427977289682449784891115267760315962662716924395163334474399319340680446417389890699261915506378089155044709705222489698574343932786066837065732188571814385420095519897742880669889749448611837378710422665674558412011364370838938979536396695961003588135528394655254428547169421115394343191057261022706 2257738227065081743520519605972496616336130422559396828346880470557992481237013717413992464683498543560400046905666796267246016338893659145705688441399072087469866766722666844195421815472285174702047993250700231352079951089949771732762849707242559571746300842948127679720651374099452340536181537032913523689152936300219887669936908957840284938273619797110260407001302755296738992071380280408401393339702741043366987957802503438430544621125311503707818143773275508647811634024642325962941337193520280749072864099091175819160595621413615362567149685742240774231041605120621535657951638345068126347763994451679945514870192768751334581862908094906616992555849774879039394668042079022073922497906457696727247868671636207458845136695649438440673118557384423296983843496490021978113032046901128152956208691113594698605020712050773822341258933484740810798322288356738312952356716718574911355510262272495927865809660906124806837649498853783331096729423342324475045587849491897184023166145630575735817389602514783781828829618316647555329483626115215313670978709669539650072603321619916873665727331559060781999646445867925335446913240334712049271197720185467978810016102187403969703895343161783108321978812467683756991194933533654426026300147078512453933184350375712258450678547481995185105463251568854509256 18041080979353556250740195531499472662597662732147051859735384303502354882445034532999182166002663680290741540149695311406897900736250332680982471868404863193207508460929549700094503812876509105478397572967406044672636643602237541956622472011824745082468303398637589295669716732966017022718650898042196729888476774858574385622729718432342157322345004572466918619309970927312731400691887674356667885485577859145513654906839707859374344707804559559140528665597062681615199835620744512453444761971304888137635441487910001045942396713528295257240546807735430534866804035513513839884220208277239158661684575408372585118078446212578406409864672094929941700803690677740667710334070336972317338138920686305243949540564759049728592953924440604174686780702005954683480839274768214429648430082953787602555919580263679094044349997169672028451768188859461814860316992663029650225527646344714344865229725677485970850099097534712594057976875159686485644803087403303518006106443491175558123897052571594090422486748828995507873239564694765401657860650062611362771683227114110968297978246510846810740447890270923259764524585041458390734016117520963557593419617298320150172013245442218151768441155708158675840325700547291738154521477626793186882596688505804186181140043900765791471524544714561060830838341732210928749 144162356318191829236997202324796728225028986843842653519213165906844889351624685584524638539037523428636392329233193549962306016169368227160029825539400547523013465080342872823854346251585007046656242783711387810136808451076428617907645379204697513492284235992075938119195951097593553943030765172092626595495916464952486828009308824727454927865397845603532332364536011269951090683273314643694286252203685983817796538896131643736046369542143989702294965155233837641568557997226365590840851100020905873608246636938677560435163510117630686341896787204527799166835994010188471088526501292629724716674567538525447437629345573068531984767132086767107101817878988322521093738695317113126914297930200236481883712031138322620207604092179306437373518151449055810045657482498046146518033431429586928547108327030610950738990907793523880624771473781219121456004431158783130173316767285174982615424446570639137304019341439375124710064599639572450296381159285409701104196359877798384975871034161406298900912454329633899710947234234172074415254360806238018909295615305228322938809970751689526839354746866048434787362756076151287114291227934958718145445530638107620137919300504879543014990453353517448306761420543626545776418992515922960776034818101935830350827997620142481799150885991226137353378598672500279542006 1151970969631277713300256388238291738818264703959492103438665235932884163113647304964587805613054955533909092767129235219329726264785855360051831195444503816343539813700869909706125559152766680878969939588411946984193902431450713080485721178017717381155487282601052467465378655229726097428379225332700041134420712716160143510578459906537153498992906065159084751279710987286606299038923866966691095601965745133133576154607736610981734687475866357354902981123661483357908682184998326976155246182687592270047740207419694837855263698494379866814103715922805467942353659443917709827397562709858647219193764324162566338295652993074931466598321967297345679200193836321893619686461892353375024259389028979661704149832934805107375835647861996279600639494324161916539216736395822980899167359169943631961720999819333459672981608119002584823322979104920841336689180182252740655132027768670563684332510814638834080443208146317035566082261880759048046482765799488741361165632214070626031883002599314828450685280901592314193444173294307744221690688742694725358576542183451970481614502273618150918632511007439231465257685978318960716548694265303388074812359434894467808319243651251551405775557686415141290783918733320924495116054692292112174793796352914070218541078640605237041591890755611197933406714638212231246213 9205164269833280705440398920534147325672731834779616174005132528667622348576071996766488518805888314171440382285952585849041899214040064295285569350713737134566357488574592216023820370410636973175421925676921798621386236406820392516610122480303141233178500206821292072338012607509875423074264076844060830819288617426569301432933152107368510790599132017025181165946934952449231715143442579088441105180814583470090576076684373268529191899765204013562405134394215654805039271292408830111545740062402688441549478683884543745645515149441792245448936326889513423318967585955916753140031401163490496298590179296548723953922337488295280298346914315722483781646573487833630368451107569610977245624576552136033393390400177476783291788618346275251461530434095840445642465725271969695111058236980235427406465039232262094263917189698552042223478909265858208593824505177002543484212312333226361671501241325388402582316982862430037486049381782231492412839850168445583828243274852643001004585736184916987170883326590635104230113532978043418853268720769066338263046520308026336879947680987015631445298880771023927403343311515955415665738442247345125866820312049754044848314605247089127442221702141759937325632650180580620277152363806207481321914761034308895506351747034449858921895533052024916256806891377575006629388 73556642345758400561919675248253594998601628235317751943421318870318062039236909396031415466761841083482628217362231748085984583222720770253459322177913553788513971605268937332464304843119613356672294936947296938723519861935638526879718153443302544380317594363340956817342720958836144070870260252584758827946968540529282041606436194560007820410014187430396228267291974399086154544179635389112827907300614837183392363084111175521036878072946513238094297012144405405355692423753410911335512723684625421883287193538107709982629341871163474372781674733559322703751706743270916084196850445736249714854892295374488789736763449013546518047918390282127652731267168528487002411392000551464663837315657720829496440328699447563781736279896056432987812630668681966512689865276536018299949451434404015391259432199018380650149476547148292706971303452847872425144640629545721828139763156550034919324117095774667141345319561519978392190447269866986712249182132633682972895757566062513386355107379261677135344093264974488418201107837142410135621250270337984350793019137444813245616524003368467018791656761602674356828796895679604106390897061211037353016915659926194892236564996886019153486684786930815491502727643745344248451388803943676640039267058073419842379021875249103275692758624014586656352787669314342425800868 587777009784026929191770762616963682067010403415616650420945826996309024117963315273513418521197552064116823080730017627967886044265046146607702139050849224733242001375250466217097010582352826386925821011814282679211823383432889274767833661149562263962892747143745137650449800976207206328685455158793166190978889178474393999480714953674846781434478404626787396764387687653053455945194649164138331434729312080352086199268862043230489241550938648345205784277974454234083688631972952102582710886311774149227635327701514562697506684920068327631375797712049941493044725904246227693516630613461697446849075938985655485676270177590595308297219341598018196197573964018117598126382569601500256518760382231489704695361476767923804701334941385608055900834642813319376624051041106880532941082021835386461074121503886342865323653594503970927807933642027088625189079453266404686039280106034421798066963873626391100879544059250469664360167097295355756621790056239670854245177244075980734485042763370774997157798593309087741755669751732038812116235651653003029178722632775453740945930813965049881257276125091022209934169911582568987633428013485650508069841850883101568768340417411379666139657030415803966102356417419194541550801710324506684352826888188271330542778391635246312625176646976630268691162389092040237344002 4696816985407721763699155193146335115435777562864771252773347727053262654406203852380324970556244166529035012607826684015837415249534338400702094603966139031161637555612694145585855631234760881725442243657415241205255736662392012783822643629549482622216461908485459300366578747972917703712035854046834378218117882186761398221461552076205344984669229589207902381814525543086260802611369421213931277384569959223423910139916619030992262448483050563388970229341322485777233580714611719220690593002881140101762913903421864553126162330703560973453464134494388064637560341551018483779518589230891651618139719473772582849455854270310909647338268750658708274016471082883643165481277968074631826747259452114188497364189569592292685742444869804383687480315449057729471649508919769147663619664406592729267816198493691165027245578088451947789518241875328889242583342871892858144075313046848516431420952497186912585449033428330287144221110396290389025313964786658494508689513092565895725920514905006823728518783464160980048705825546916863880130615796670977212525632865512264891624428623819539680589370412273017940277819459963454596185368621090018413901152738190292146889680966980127029651471911360608556823306984406795216503871607656314473290934422224419992055432283101480504354446042726326967136680078513184442802223 37531422451504229320655516762915076687007298208312919648355427969895530821303123660330206422835137838718891526751852158890616021651048900590619669352224699861955710533536907423783261232757532229050428125506667317267097568709475618741344130774514203571560641563904433358474278216501684710930517276932575040705115917971247814103308870102982006482159883889070241631577496922292161581613297146579829010879045426887912712764176862857306101512435571635712636896989001501976653605976804052354562706707741880571111607504876888759999411467472320502210508081835239783380321341299075698629659454645019190020312159228985782717874252296384878782651190572386555476026206611357885492779264668767970732961324278070925699428259138751724295334433504651229386426417672616056384428451202697109973207843849582137236547330218282222461225257496813567237313438729436374666175686270053095001821441811093200634309076330412160081410610796006766432402293212548386971366582782486710412590397392272406803179272752661582656725843690523971754828185948791090653808901430863487241587800355866476530244866217629398422635491595752487485909368209708899146792879006105077039615383319311159178671517783331901516311052224398168887359495344288078181561081439266698045883223080476390821761455983793077110799872081664966556970816939354798325697534 299907105046189819824341221310863657180117314556168408275528844269762553778439327706953212619204583953706313961339519221911738072352741774702457876107886343598966036721559246141545530212966450361665769367208746995086666867294389571561543773962989596846231819127948638576553893466824220600599770904380614423755920189744904062461399859496182042719644416021752313739903730420963057238181586439232680601289293091368412995031105324386508162518523184422037011089732896677028921589000062503792235312307955969669851378563363147079213817839349541411249247569298849207873741810474998161280039962159445723744165367989919532100454463573855048931567942873213334741703347931124464072016751283692112884104778661774509040151699439230644358291384462966856010359405192102832503734913396991962568415160523691993929021559729313595824524376961379978161211030369826884661588314591683908170354700821673932415630881007150612753624711236942846087304161654353011828408778339242057781074216551786757041666877342412920994872748087645514366070611302843521638359539748619149413980047255256342233706807759376036068392826622168323655962301456923376352811267973725159916250970374605107962838108343404293448952737292070047411160619285370360108978564691640418499785966264446695250060413944533456424954346894133218232100539619816854814989964 2396507694181200355976636156678999141876247200082567516139389470734207144991539905413341784411358736689232783596598740855759628765820635952856055845080590108991380461460311752810973739357274774494561794117772468681963413598065234381282126886497056949128998303447303681459298916132557651000627634150561893694903050175409666791953217592973822977074188812026812348927805085540428359158587692038850773746566573738863821241445888228026891431095696317267979645266458713829487098493100914573982063907298935593641254355311500668531023310014808934738038224351427337789686161373439343352239194994844873132147407814631335904435745427488860724445805553983407469257190384287503475889186485906843158517485386778990824576509648729674078790979313970554880595004693287202451658698927234766504593105561618197426796539681760364880599191733684901891353165062486678474907340489049175166092452728980329867990941120131598240907246878912016885980799108572594575334737829559842596959526382794749937911373848133612771896153815022397664403729822944742353458616680977197195279626246538905669716519509900168765280415714965013997308993592551744911244689931433627533921523591863500916039526378265976534214815245050167497385247207696222914781854063905026497163233888737873929844916376399720729883838427511780570013340286348201953702099636 19150108684839755372291672394344097173783748780575732197287557185488486118503873175757459453872785388792873651751325668260987613752686123363596842007233638041966014155262337980115739465418751527318382647144689567072013468820249031830739325354709283939432171053332682455356909256519527281841225091911702066163243138655741807340162811224604960404874909835579344185028983392410114209927257873291300563712527829786876983025899324850621680143203318087252271447246422340110867792404863610570743940690953125756601595005828225504483410111973816084862612454252852985673131879239383173358229917915632132127612125611054985339313636429049106200357221949659156857825135199152458181627307642426405325586750539438830030730977466631919006390707342879857727654385242480993512003944942354383647004351062671189780066635959957915659471604845788903325696819055114948796663566671981923721636338150681308033045663080309279057933226248275484478687583186192143678000851250387646165020263560717829387156066173729929143533635428960189277717316914747173715418568557094427075912152962047384762519834291578002182077054913427181405101110001832801704470404416663410574825346836843302136846327543996463598735926785450177379810385996587286086089534842514726304403991387414884031689563031978771110871937329463639896462616530223682972451053143 153025568125137273793954623044937018881909360505708119387167920385351455432173491890482377637501897052757808022762907153348193636228179096456483670875158662861600400489706848945024457996761523343636231106762238203038773680287609984771265325752881082685482424296726432846090814434727275201022962645830245230799446989098867392012673424487976082785084706262780414707685375744757159216604586433098068731372580848359246742578664643077003487388244132265746184772223951987887134290738113630133300219397122950848925802984968480505061591508022028131998696507100796433665859760971366785290909530779854835054872033463578831429300442540139590708896960105056024987135739482104743513609522543149173528622631599933053107252663504934281647529690125860681203276072427900769705989480917568716542071979315433162040019999138488069871371622980055541290984878403367757490470838736479922975997116340951928676272966485871187814973077833279789274133219523153873573908203502721861602335564341040302536714805794611600036304639610294885784163167784280827604956606036480378200169412076847979951408609708817532171111485344844661708522383016763373612667631445699157648793017340637729011518842524191581492613833761538457616902087833488859202297538057379195542212682552008245607282709944511249698399026281372821297356083286370463349740032906 1222804700460635177619639154685071941892931991027164459496030093133856512662278427809731445975723529841354883585498256547161845988217897013696406065540373367951830228018585293848422501803538965773292195328903465768521070767161515098200543186557264844064753565521850208350345460196703572278834936166740504277808775266217530873393052155215112578238072271445779059895488142654575121934648911525348546217378494900879907405880697193168583055103265533867119273239248411984288638305928221368864912438984051355880500264814952790544797197980831682352148834176511811395771182374844089691015843717171733313441633892438747377416630288654918195076845067897071567284088395399024021789413687524770627723661252879349813273366720663025299384727038790450041631074365490356259156172863774619509320777584049824959677627391458754286727728575839194324150064470343369140254251269510085811900612437311362577772748449468095833849167357435954557366133496901624589660152988714331344874203592035832815397322450175064183488386587808472498325768144422221276881526096884785627491596585150088401957081610294699737798483074449808096487114102981285708153932708968276107525362251203446256221210705985803943173218942318936263038918671397247347302985898789907846009151278587603094562369250317005541728442027567137513988600700385568517346882445920 9771259326039017201599542372533003399380177094887404057382910106930724539732260480232460528403881600814515319042975543839691146193743138675963113318290971775707908865674541080926458127826367632267093238678709218830348131698514398715754283661504323409084219702097539834969002379246746455190708738912683591842583408928626168517129630312457403837492825960748659610807696537848332703680849752995439665904094398209310129129721637252291521285112450920843725787716638202067999512969613012053884720439152606337352539837337276282910681839132631011949955427669411769288240962953089927480750637309308925577189855324431834976771315848451112077787081312425314653236527038335206743289495967727154660237906563207443911910877911285034821486702727284248821563225258752319237363852044594764758388538498458824536561382285126646309827680536427024942075603642987037027980895004063362441373629101817182614263446966919023889365513592411813746228308168149864522514340679138969564775843382423805258037954341157940682899941260376064768623060204553868156688183770615914178967365864675987838623664257929944759031836348946524831231193320191441523971737767233456791405689336931416573495813955046533125954201525107337368212741705656720374071321311506553671181635592459111523974630786338822667495801675568332789142942294286389792462031526270 78080811804863247849288283976592007464529980135891294677680931558188516926040378908901383464859639890471767863141514771659983010267902253495098572487544881657512919163058696778992326571446590932501198430833568281296072082772274875948834979525949657327014093587909907460356509657160724414527866411622676832117042894754763498034233717030369969133705850208242503264996268295824094768206364741546734515519970361802990103548724394416176950627066386828592051289107130580423214098285961839168070006742688094914455816592669280318779434071149352285660917509952003319224104945084520283042257049963865592826621567367098770790833227963358185685711991554858806219738503760064800707110806119297128685855662672930182706251057166905334466151616421143137378343813802626246033184029847581018789824031826641219058198222121779620404155585903358724896619723008936507918410555112747025536500807051964078619002277398659906446317720281801803212561859413957181563235056951612962942844901971895028114383937894420315057268136915385601983007588067831971982405919462229037288817925185526467716739962916277097876623866415728413096106621378330157028412342127963569980655139804353870656840336837056909318536434016880945274513530315052860375946040623320926970001517333328169934576555397220370581334853082503736926852394689033087789877485147247 623933696069987726487810561718959660247564003523768998772798395587091718889133595549029075360718193955348564436189391813203205287812797112098191203955736276592252457051716941495652530682687766375371024574809646828190582124905216197106074119326755050437714391348938864661253119742779190320440181102168011962709718659970053975516751745944509433636879565735322600899576927875197721969349277584668555670767020846348852641041447798501464653584546120037075059013306244051203812382383323911791592834506195814140098342527053403107877961432149905115782494425621363459708363085147613535467033313613660584670286697634382893152063373280475038553911107902131158736988700595356012020204914014266479027775705463534488077600881522964389025914232655705673810740716940093176479841044984161039136670749481947184082752997249420810244154796209861680011255616517070884679506449426538049401369029949975494657552728264285813480551033901081494881112101166244234322334037085120152791449375071719845982466807106210561814524188901550891651544402405569327523483484595472750684885924954355756242924382559897087021810364560252664997494088931626677067289912254329196711247022101634893357790456642717012830252060822028461781100225446696034253703093770262265944909608715978637182133049050838884334380921929203949565460551788394368292991331009178 4985777587897161559108739309477998216923093971004152261006307653561437706837586182764152996608115925064615483465164379628172415816021695802606395694490180150188537330895241406762263908602574841594391431241202060988107245880439349786028957013889627470086888675945351207100236821073081188411281244016173706747882114589284088783191754879690179474384664667883792472698463202010790257021721566383326739174209832351400766870553228848417196522366742790980869551821193521589578577525042741698121806707826638731762841427578948473363787491831312366667418186835806090037246073533971691647287446150368897436694528956683436497093019309131776811539855824940542933915235397191028815468363902099750482166240090648448758447223837366058475719247292091808490774559932315868345237927536464227980237596005101638665355870071292290701926956673022318249420499125818466701395641812195009211190443721144431561170042756881946839837855641168544069659752651319141023661271879467673315134381312693611728924325275487159980712962847527786425409071505159293000928217426815457559051444681327760372740501425556570694256479214384609133263782911879733185960997101248778559488134528088541120078305375713242369643049846876237617081346270224320797639184332338385954910818868136241835374608016454512043840394312065587582874557843143475998938119110208118 39840767899406565939021900060734973085429089601677318780132310602988483819423722703683133138562117424701584391503111681182306891850062813642203362683507104798638144016067852938789621082674550109866502993602119925714988729838531160976936263807161643337440875070859417503742239774357514068163442018651314550059458557289159220117489021775530212047866613711930406036016505980943839813625076174378656310155365546643346922442158377699787898094650696301987058864307026533635393019033278790512382932974318166901247376198433089636692289495287573333768231803177687469864178399695994209644177591938884752770873576910508799499072242721018714629029289595275861220281254814912856206473690120876631358710129208565509835912668191051436375772624000559948556486249128629179386502666405926370542456684842201707811184027280272362233435415848706979305593367143403680960841048014091187053418266782329562837143609855743909011022524957545924230929109138059589939463944031396524042329441683456702222279922417304261913288865440299477657131278364297485688452000255770841013163591306412740522329225803049500403664873408590519880842823295835797529944746863362247129971599955881721398105850079744652738795351998272820493383755303317944723175696386852154586079644406703942910828918693065932456025953804005038231136948597825319625925544261886746 318363183432442880531243760643704953752009388593909287489513586914843143008667540183700494436992096708987159073102826523212246013627400191750058472645473845954635041566754066796662099412528047794205171698143172132619961491607553331509052003141534809088888397573974807294742995505597917266731785480043336372318231863228069490742390085124769794155271199604830871892405142652825764079513348322268802196580668855863523158831782595377496697260728777794332068914161714937684303335173293559880796530901617935781258866072025944309689092777334613065402978673282592466748720659743992750382187643020473923400296296038128446726493824435658965423164042180600665096477917902417207918232975626314771918712457306439467063714994079826739884816526815625534849775413836735249417748964789847362547827362070394756928442925522179448229195824080370985442290516140574202230424096312306307016940846904187382167541131534414166556972045694376966789181651872179487403648106060149218016845951624019746307201378173503213092324402050621830959664031042545269850045086869243755514507751701729776958303082548085793066576843127090935874799698627581938222489961192338742912133576290062130987419028405556837021605053039091863148278949809280092255803229510367284613660905073022193448427076258424237455464682184546737555278364567575183242444783964367407 2544007077419225476643199544890467782567471742610861849098310402667402679637081599553827741854171488444129200001555737148416908154070908635641812561381424365478919539235956922339452206068088306220708764675739542763066266679965303424472906876706466747669581162786329197417879918126292091754880995074259843020232246455753858525849990580394959012096179353770424167599497170466539661085558292078552009105615197586536407819064081953567908449933225764266371339448685968193618314856806038446618571447954757856795981993933867567214374761416709045067627265319120898080732660608876377985997924851491633236085359899943196101065619756666563555172451069488494486579262452620384889754051032119872185538916000376714485542242904166876131326836068447284009054050794923722254509988948941166755465142617456676016647630047431599661302071601707313806407304921504852900104194699506022537650305936716848792294159473446608062679338710021011627399141817296536986549696964959195090232494188343476594155461075646479579534696495335955479148194788270097359853289839745103205327353444269387334287636264149029952298894180345237517296594181769458684570628497316303980684169278550202005870795811739930197125134091648438697200997875494470090987145393913550126796211891056173028821365106013078955024282682127335426984636057110082855303824281192347066 20328911697653368285407407867566773502034935730566134491979793269797396307908268222836119720456716851331865993012125755425669898733406821227365323919497182678955327158332892552214958406890750345366784766724835824157239446231332494764107881857891223539121504790061143174198983118563648910999762999333490913070253645335712437772632366367987815886970892340139525596765609697384137740168017769833836019697162913091108700946394265829440207334620270993007284652967701036507097122248610187742882023371374715193508655225646293447925055432774810396640064453903350961690425737630090917968539317924649235649993692682361166483305517755748259140322643871794523419981491102571164777095608998966666711855894493905793997108711899494246232634629029826223312300567675324031064984393018969304400847310041536258989241297816606393227714196880469784772579711691537130689997058301743763403234565628613889598311561727472148822641982809907584734639106125286293715952485570739327165535686539125546947629095361766089509468297495012559053491167594652150877153755348458383352351140223651569943468175373709676725955951501951282033139591941321963506922571758665130138725808962055086417603089236557738433312346111461994563538028228452903930856269831563087636306398543540081994717959798329993661355988904903802937280772242245455163570255103444377126 162446470952295230517744037514865392438538539412830639914708550737363153402747983795720698511284949331432213539708947268304740976618409813367174695078182595698592342923764579290569867514515081410193437768529166239557382233767369718520063995400221846771001266576316177889363617023958134741497984746378270385525973732134768755681022805750697630281548585646921238737222438867858460149589193587872163151473192546946537327829308699066887910401964322885298341800520274883184510929885983937037679827962983907386834976795236792104382734650934662432347423573615692699440702979115597908257567496451896544913894331448605575966582973469007168871163463507545812809027540842506691254349339607032210845545729422902379103925454565496056351047079426571838988317177639853711394192529916537451724830130866879690789614872147760730122502713322887969343706520085240125653781820080904647908240565647917299795521479107275289213300309816815002446270953759162087120955716572516775265443323045079683469617668157007202424881917171368587373606325390060209537944529235049958437632965893796354558516778625726893153238201033375296535660119416455380064294419673617612976076890236741758779902286363631061232428603885612743000019191026969999826768036612461129641238958188478092730775194032414237484428294242831520217856877443444543493847200315491295526 1298095873811328788703568386500509641920293916936146007899107805094409746080802336015147919957709568769010947216181408866096728296522371852526287694456623193935515132961505875782981679064492163199848829363754760373496747461047848219473742275214103298889591969054172549799544924380416992111929664412714006141306617969267986134902395924671306358496663343318546214016554410531667090942854184077988098991514348792794855191820468497759234352323296323121990071411283327842875962385966676286427382565541981971166795104479807803601811741814851959962428365021695205181119180643049077035047037875493905426291835816080925061787270986478652058141778817323143517344737888145282439337232580787382881602477264548580424180919168098223572642386710770893489329498037285085394725952846666775045396225223130311867252671439268509731587175992657517042547452462658038479086016902108908598615650802484712458493595162870615624284589950833681490241082050244832543384234734005626925582987797275762700179836418210046276814938575198904004138010670798941202714449571755037966816132454291959804246529652933811384975511067222799921361503833209007609529386224317978309415273980077543203060407714373342202068588912561307856081219295378248899446867377958196329731323657483147584741292543141550107203535295190577086301328728098008237559998854354271493141 10372981284137336580163452577583788555352948830880204168609310917961581420134950421622006661386328870641436470507485728765830485344177192728716724139352870893326539737192423118329396123270830420668557780707706942383498136500170848095201221074327415777500640364253036299039973607137677600706969492523385331265606925577183278767078224012389144054902215917053653114917969396736446696490430584993041978321157123618849741032957244519509049523979988573876528182288605884864842707239064861018751352710435468834901479192126192062456136377379114515136928570584867315504662048993480745349944479804819235274988640419967077590571100449666776400727943092289034367568552800947986687722730593045514824747621970519989719590629336474175894607781439207620027730353559789264895239010831544346707245328322021142533990281800010552983113790137421857115694700623242194837774016278405554814422448508882015060429009079790385566021143284741185557530179759804109817894110068568608143093632098907238876659158660169684858038595058595564514623165998344736519044562159925967430140336109718977766023433863400556022644634467664102598146725480758547626757080590382812723526041482462374963086430455995831664170009692792827953259932793947954830058604731146951642387075904802208821962965109187281131143970384481048441860838882002085320818416632916200947622 82889735746921531872889312954421907019211638442823544781654742765169506950887297684905167262373067303550428109435161400259927361086073458564359667711012949566586727067863532944533813356273700032428632250894887591594729032345912699868750455899694131105647179159514349230829020281379330940225460856762292310886759270393815158486221810742896554101326931535776322559372797885473738822118100436951241122179236163841499429154154579203126867454909927026583589090606926257716460403174178421403746821614204547669050632600943129943806303876673328280749563971759804164173505165424530473983515708009452251204264814301241137706600856479318792753060901465947959311797854377900026019025223004331015830911189800004387184485590393627514269474122925454967859958652835348442970396402155546223610045181020277984746296979439242257375553154697354412279173110121937827056111044768544136499230451851154379248932973147908284631050035595706310086429100115188890067889426950052838725608269828415592048659377086896133095885208201360642569129271733651871201173659512860461322230988151326816788350457761182980400549985586527766897581712431660189231535082296856184797269056049116055245611653866793238877450734604896114315409638714135995245296889599517175821723436129737281365025300372828374806161900828244954303662801471628394778933445152955609548956 662366335348626426529313945165604122374795449696972838051438510439804887830092675784446746307708864711406616039229027103527070199672379487842914872559323112202221433704602825875148133268430113872781461184517373574527859368005690921694798971562080984517307479342637486713051654287597220595770815674127367262355188053242539866356396036949191426187997457334044379028926851922525461475994951051809612320696385231224248872011078859443279382584905711698825723520913828441841468278575774153739397486514449519806287763331808965261469716420408493301220321267293579600318717566880755413273085034217867778486246767441195739503075413391175445197032752458336348479115870418156512732118245106494885741840074646106750672513828261446538270732975747037426196032914186517947633421709648129912006270033130232374949745150827940205122037048126974705740438035650737391943162632162719193418824228117190217384278065286320783576469428908099747990519631797054205765909365845870031439551499507858454314025520091335825412736621946710845578242567939881505938572613157070780920097405842132951375854820959004730678034426324286137337374957450544540123091891604739774798988139959719504614163281796062701865713193836911975754059830617923774729008667327207956877500914845250646070430185788085211575492085463782623757176568677613274546340572981784137037036 5292929175206901310305221423395041347926200019027768298359257007360379813023306201561085077129568516319683023078300582945107510632780615550985403976971246395378816227125100400900034356354156585052054775224588825502298919608542812806099186267531327217227572059607812996015903746493361056037636061820671404095948808412253059722849187334958425282424583353155006004144901409380507909104576764495765528476578019911129328909960372892460899720543000985074583084678761721596358737906943098083860347974474788040870330624533948169762360245560550674232629526853753321787001407140251352535644171299290011573319386942778456747441440874805996304695716142115325226808941908243840803678592264533174602527916640568393281515557382615660239934478039776530285490157023618977309264257559271454371037533096666223801740569929565671868767603337844852136356918637512033882607682304964023424957930527696900205463144379191769406053558302074547817414346460684391206753485403040467798880172636091329537284622995886200705242470872387599250226357474468446488231721269209959403575331481271731625933391088451229490459869339037698072461470734500264510608529183862136761241556322053481392154101753203288566126854161440831245024210773798917449510526531933907719193498354845549610647238880910279942792255573032817378422779206406675963859583129071959674241880 42295508303307682045621233533557162958675527543961094728550393383745042445441780775017721842840453576198188532073721706901348363421370764223615185261860280849782978576363154524731990745315983923660387972403261692410889822742489888168265547436347572600784413696263830202572372859958838648684161695204312084179718093468387162369961951406428818422967109477034804610719078573316761569919727532270057471995850876130838323648122499704553284728954257962454804906757968840263038823657701335249535147989693222109865822638860326700258211751393296374545546145834646121766024164016349261645399058770284663802903074634862697265703061506994041977352242988695758090982779192516147073354944787194547090641047074258980816778189057583963329229014824569243907425348766607380528435770727428544055098982022281473544810257285029742344538337009851506993994436918569077484401991873720499440236842500002166376593208332071939156838598119877415180075420161871046814088919183481980601790116015949788800837574939955911022503782131659367294198947181806790579659233424883568396614305016807629037597459693446811597714504242911573496799717994459583159992289560930886605344854731298030487407710640069033837131765865789747643406829882935170737793211536168666055479986205689553330270916578169838600094190562714323522523667326717244740130260055232288124565262 337981359606495762710762240052363363389074244553094462704482173608159945896072046021869148344952622952087197716931479852199381743849420953912868110317263713118700919424435597884524360777550089333530862389723602515873161032947389225666975528323317091960359556750026733016523989284267588829137954834826722471596152292033999911407669768891465810159335429231612308451829039276196889358524617633251390202433000052961685741250641209247981970295772200234018074754493170501118158447952290193101471818152057323749627497365970674724577036052292063525031496568836588924598052456813504452097547619073545772323761331989138218587388657254515804757857673284659454003500597334366768883850408085999424629659935546010245189347403897905575572612916602343260693064588479054870239024041086463355924796569275352263280860524382278057149602541038500129555261870399501365395665996644976074529331826953619290178410198217953385577431509995903153787694101995472658970211721618769689645858409348966610104622719853270050430510981304640652621001858557577082511981124310713635843565655008692745415629512301612866028118127335095671693697685056929498986698229987993766300963408910634700839478849077813264992560591600940021153821284342554387760047925997157358424423965550797678045049700366154528149466056037932810271385489960903753726544243584479319724079419 2700794760217334965114453083759659732700792343747010760414552241418989470960979106138332947126816461133128319552087605550227228573407759062423983329289385562029259955163473504189216020084037213198326261500184966067184545462066714517043078674921052236011264137935084673064734263607180187161818953333094890064350441754902772272017024033236407592446674990843581500913199104937921456970285689354088071153946808528847975248349931072342123600680327377526497514607064575065665893129010449715317046954421245339359495081209742379966193875276708283089741152210959936923269713169401592484894586042275083425456964454815381786342819154268791478237952965283663457074573729212456142221245869187776829194782731534388990561230732126644969876059368444920130674252308015087579687029781018786772164416753057065989734746298235709359007009002461447845142038772337990137374259426681511509136797350377206386789590187369683021796094552814133359304389163112288964942122695720798811905533133141895920455469548255637391815256802167801312588241916432508107624520022885957790341106229933258077415079956356842016203488663919002521155829472286241681439362071358821461918215270717111709890997870999945354520257469309366673480829597980128917251933350010307635823154044859660469750835537473212355796963275968597441785408528142391093569721598189929073482033286 21581953341936546302848382828921816736896572988848115658169484767688664168677001936492725169194843852449630933376402016413217761495217949655892252520877371593151580124316424658413230158977120722083899992334527336908119531499102079327211214455605502023118786681758434276302533688190233581336929960336620358556223585823201593952357372897717524817000681523003653978250380576662639056182463002673152544446843127735674454944733891320886984657582140151587792562543328883215037413011762615896292391101718386781356272034612884331872349655168982066483562997032331150797727067184256714545230255410221773315506363608236639861970888584156049510424544791174621296192605368134724523093071868015659053370184145388922906998550644885739970910062984944140280764087297869210404978665164147690265738005513684020730888098353762700518925694930889529296949753080591143130423257233053635881482729316325580319819640032197033180868019981903793979877778688799381459160698778298915435518978222666536741348723005169538056990260490910926967713849674788845407971041992525962035196450902880756818568610340965559688408402556341102617048732850536765209995189177559931237423404568665368967722177087364944450887856683890499493287667913003816892524380122780297846053259855243591447339484153759772259372066835365876621347056646490366701570177691300206349897391445 172460741485053456883150029799200296020928662588971693720645144339124604091915062382071250350226319656940758809560767944117535451449379790613861373788056726133219717068860380087289613893852448757306950856561661760550515733365600558846691849978527295482522432025219817040164886209396668108503348668588229615911579643238785877353140780233873976577324798208399059334000645532910315555342420180017477909393215445240640639813570059653723225583253433871956656137526941234789379469321590822962487682600073522591318083747085880702252980711728951681369198598108310257558013664255995667992635454186592836354878373979970175530666752679891733702297590236886254048857607712220069270273982525207660887771165924796349846689328685324369186912651642720729802624121414655107867361580128113969476418723879508183593409597012216132442648071527962631628970001636546706167838167413868707197636791677121098531611924393513792647901422199705738562913051818522283995787166598146156025646179646400715867082693380037701001775294753600848922905082996895739651720713759791175143536688947274915502396066023595745000722545436530854706298149493512040682958700482109218199407397626981103231052027328364503137856988377601539975677949166503376065795435746680406286155579121039668350145941991469741780598322486843623704343133504553054129080182252137850255894846030 1378129664217171063758250959367146835223506358232559971435108239272782165922102266930525891349886002958350368831100654735551987083524859733279369322620880042835882540743442391099742600871848189597833437417973382492360917759611456715317478773311210080896047714578097795223309703556565826704378658364768130904959719208599127918051542650312877193794772267996993560733964112441040046595242025275728095025743423011732863958940298659347151298671916894787243210717757985266460747309714865625192585584793442968797406632232062991717242476853929704004529576522572317100214681753376160512961025942849797392918225436486643093316015921179706270862500531269166942464854719980902757783525657416052500214182527631028288665106266834023239321838474989018018805160669742505895330080677103567341597716971450268275950687056210883399793385838360888434072347567845483215975531436107326619360530299259124445374943554163282314278595379352483751317874736408771573667866287350200346044899238126952474850200976943939139406753502655331622240365423852745784326317120464185654831941482839979570534789094452688118126340857431183783691869379522296728119129070612615782091328837903983075351229880780530147345918302232522921234478080223748558512971815872295203464008048420209327325753561477859961348083913532551461125558215897687227120332147976080182074385196642 11012609631301699335819376202800997595031432878417675979618502387742443955637934031479745766613002107554570694832044092242058617481560917926750060984545443418612141202845749896503558962788002773097704207990613071634069941738637441911512225929964172968059361941816043478908057608895281597967450931611003393612745411569054800860694295798941777797162529583311782764248320897463783601086769576043524144419039044152249277217215498748551962378479605723728666273676797994112175203601792727888750911939042657638916010901434365268928670562892192101965060288843992709589465681000744629963355389047463218856539412817436177486798091252816678543270561400826309181431356322525635350024286394518893973178048265664393942656289984647783992928741205604489868121072546961366677326169532011501304895431872923651018463392702888157731866333799520847942149641597197045316879986862843549960457434891868062670323004352421731821603010966115416971878125678223911213284251801605179764486958871600071699140688634103200262431117139716388207044505817039781727772148617008241158656635297073806872080031851339376030370220665601631888778033046671700903102159076939612850732498636709780354531067595973747637980728858391541975669994081574070836511138776849478208175236417381285631584060942436426784604413990810766525787419637950597032670737555981046490833933080094 88001634816487932707774590869367972725158954617690664220623740518384963774875893365692866320150535886780049985823293482802926905534638493927327721854950306868964594956705989454988448963344188437321415200522610807309732075963657999954968707036687861699906635329544739803375471856281942241930135377622180615818183461470136266859758434254994826991271732899169001595857391764101897423818194046376313681461392959408988806806474609590920698106872072552559829336043981732910585559489122476091895834312052270160255166276500817499217439956804161360263433810763536272397542890091772327834391576613106983636208057415773296967570686991731464086719292348422380490699243234515607786994275675940263012756648385596672591309141715415858189617659642157777039785449042265418799964739200213895872878600497962628651188270250477890137340205785058512492322082467292338741876959763716979567067230835905108955436156220732120499023687275814587949367227991404086518465248055771671486692349552259955618310996354907367213637567358681491965639792083488368787518472929342403018025086511364588331568731491736014811891227181978470356322824350172768893056778665902381081465785256086475712566901626718420402997570370825597955583393452555496782376282232547233294947567325554303620877460473748732976459410113147468890382207172733696097950874877462487712856520287747 703220570912984343437774317093106689330383316294387669609061493295573099795615570776589073509675956866273267959030173938301504866078346053801206697993750630928754680763373271267722330456212511077773090048236261205154576746644092443297824165668727359743182833560815807710673267194775354078493239355063330007071875519622841708342613578652288125998681847258469748789458618446451487318058194505876114543307927057030931258409365052488366032257113877311888794391884839589480581428748254334611526047195968791300333098174522924907414456806515071885158205847971870246899854260289569253926146637989971707445511676333248841854791747351532588058608139804152124971544640615049282355606340357102210804613815159029978933058190129675035116682806583672387983025970414026196241857912758753518694573412505706449226161473596362467169819257550577613354333501383609797389373472685972197875062378703507929663394119448902386005043493084471563706382347461375984154682828909303048584441171221786399462267114799275861398180089779365975634043549327718168520298367199112744899973115337968777345141761284591746395234169908367559127953212827443333120070869023934634675322197090342965945052198505922452187724161740150242891142538008864487397564382978350861800782923232707179710203187226031285351313724774423942724427284184918134359656949132717377941065654581368 5619435920046021739421583889433075751431232749265729600473637437747868485825663388796185386413402003471400161606300952673617084020528881195729770899266418142940065244651800941068793205510628210336350693269942040455190377385869690846265268881971351134320315988752345920061836892073681988821658694438956894791793461191903854341632581196645308810705567224581820343214063497796780894848109904152843165310987643318684702649077796553935134802757307817304761586909305437189437136634786335617421510445610410742755776167133009371265104562148211684677840286599276761914497112901604255854714807050098615557475883659764175347584230777344624389503713893755128755051310079255413970913679365103673663211537465273344950873226137458228912385158232401203861621188203697811544365854298996741299254668652401230481502164746666497402499863481805284217156161800217048784084586056833570278208270819504856922250779314673591929975736006949114172368900393099735270543778779347458843352342365533577048149759049985895799813741667364338687113101048652924220064587905919023705232694295548327919155774657317877458194073436252800211685289527761481304164191953333622551746638402937969302908089244048597078145413596679381369517785727851108874297172914913365977035407500482126972006731367953882793253824490378353064329556455094628244699101695350734098456541476409974 44904949265955825008820342217337584057865099357222323266968613908868702304961505200168919239430351665529620512107100075054071553584966211733815856940929196572313245460175582466908164857917336757952448247485332948610326717087748988402447808995869909959504259938332147285375151893972791150528645260489943998601001582527057940993141216796337973475648083582899087018761774769463709733960487376638036715035928424889346506436633247586622299327337063324036634555055229513849953740232664678706556043070487024784409350084723878870020233209427504161450779855900474995810167785057586308573755245994524070531468172096249449707008937064453093301437593329820908352156953113725346884333459387923844950473377662602675542034657538517120344297719864521068714845957141452004003014257919625722274878823814811891004611236020395886652987561571287325757802732957328829125192458871323597921159237044524784405622267490950946357659560356589685225110486290420561012775690761450400873111377375986450774806435689296103122037851764866102409860011660742981534369274295853113737957223126362696871370861627083321434006806009315396977544702725624739251318265271640365715303763660974684662760153013031395340147055480311767982729023855298934954978608907954292494363130144753502235609101166542162701412032746715876414031129116683128068797123721946780784681129962548322 358836016240058332020814700883685991239366983078741223306353187268367976166379873375771087515500446898520517524684195698822479546447683493180835432728439131823386853753861812918768156531122328110282042826883395481940024733396607794979252089622208956395989264600555792374516588829781232445607921939337723813054810803787347626265518887023739460399418856437581176771282521842743657030311138414117489834788271476290425341530806457949820191755089807579533963970087358820723711589864823689835960147687504208696872381728059456900929407430464680823879474608687846477513807613044552552200792568906487448788555746819595714012290078321299839101388177317012861050189158867972650515284072860056676453765452173727111991225919195785185988109520955743104967994452941836949761039953216699870472834209781469065108523361047287629567756385914565329147001227080173682106196234533575153902903880022761559124493488353074672864838458409959974463014438312195922992959033633365812014483003107201585058463499077393118306439364985080469484947918787862149531991448418766973682109050399453482919305338512471760967133113298211518137526660532419417803600601878405873279685146482378587943271479694951884256942296603760983202852998203564873865342538342186531983760454237714014963851210146343015488735135517195096466448789392331561971197916829185577883654046469554978 2867465307394820066648741513699553495138333887471139126557621231839517800607840059899195135771985638782767950071864900737390483529983792188754827011533892798820223181952170871051574240540781228416222221811617471810372694455200767386718326148817230990571957589061458959612272936267029490271727689820927601764265707146617454707066830316243196223772215457873427671385878110145746488117631256845479430583332666549763816368758902251614840977248454542264952119369170867551609203145076332093027963186578367809149886230693001633536487965903322524380735603469449630523143393568474178545868716096128278358105288482811983614513978692667935572340215320260992734125754128891692937586437154248519945885978786431730390685596136783964821953411469150063592314897126583894760446102524575490637406154900641779383585456481228439421785189111598518650690576779078931292999224132700197223051453516836685184350132153648724924226803592511093380368474475506372670086761768219785198416493066370482478474531667877432999882511881061282448181499728317155291629783370112362781446843382508148678820795028855983021661980312090091205965421555104238493251096158206188812945019788606367324159082118819779330886580782706060953722514502413528413233886400794793160797052479671407739099384848874889434614782683402695664954437732241185404081218596027621415877485657836445574 22913986168982056282977522292254203619903081105891135449251448687146144730522258930981677539832758252317122632656836787436299676330613496151251436437802536741090628516574642198863332850881383145022447159894154994138128561641702748168871437514241813515736263677115022080992896294815267256518458252876741016272424077118875201103934184972495741681115970275364908374996305956364868226608752002785501116197481075657371392667653787723368191974749654383139021197959012179288861651819991443975080327912414573539663703948332528227160996984716152989501366376468584257366537901795112966380020181609501224950427762026303900991261263022559909777886308202448202223277345027186902665062398344759062537918542729750336574450159697296714083036600829826409095573406954434890364579714897198108041933340745886069738927521796977919334128948010356614578198836358659375433351336943067966233078177263972315226514554158067716596606000549665379678509065918195448987207347160382992658553479775931297984141406125140574703168168319788419348760711000046179954529641141882332957511624435783549114539767444001095700764992074404227659675905131172003237034661425767757604244517101441345464449714515151809677690797648132498762440457132144433095581304421709103514628371158977557719664541541263867675670403301992356656117323450956035322489187066185089586801164400173242806 183106368436977793037328196317949797706529587708566860721950095913008506049835895731735201783858586806269113433300654540451156710125008604476353871679706612415455333773238217493841515307682696343559512142493019975819247818408580861484307830599055567838699677289137690938814754994820912628966339715115780882644298871848947764733182489257832834134639075427124211883210907744228749447752234012384057685212673835598357275824173696818487445995261686251658730972034649638694234375563055080551604488698556393875896785983717793303998181023214200088655777298812050683295850035204715320409778497056629087022220100382697978427813948296248127489691963793422786909690481563540834021761010228713854586026819171282799224447737789747787131965411017688402395143370661271359464530110232183442508889702895580031836245495758057753161213939226276578996161326042802151108396162971791613527286458717586777060574563046753525713745161596176308257689828130567521153234603429415040283237681221920299202854049533056166216056222741456922146070008841007602155858466771502068470320964534992318576363727809423279791124056927386514867378845064906999653640705225962163117254142378205247111504124533042082823418844555261964617287683183106471211166116336828980030488525907577719741155386943691343062734367959416244689631075229654414992624888034335826118756811416105588126 1463209728142432513027259495365860230362985649084851641352596386998038048651203767536678621106511848213922012583850825090556298185963006539622747021581999651197434973313985036864638735260100415225226930836851927814753891806594354197723159857866659844440771033122200556893225297322102814478001930240079139140664272089168891767602963082509217943766576817256960262798947962568762976784302383498626900281955846503836953126782061394925758976274658751576125703981319166571606884229443392375972954303504668385720031003073768858019941730644825571380316423322917114086394919275419108438207361939915293432114749294365683323682493569982283249487235179714232418914833643182243786557770517261325803690333607209217385773283883364972072338385328946937231809104276426473592123968927933009137206653381404221657395849198367290121320044267425604276556863160391573467079254757963929096713999126669228008672196554692992004020197401587250823721635519057262503909038441379066591777047632021987578685234167983916648793634412652199199510520658367904655743532665324114672525610503457475917866519007723378301007403088567438663811892824459164496403006868387110814789633554676723727010599676918207118233956166422721808475303238308539762607030983220638653003098333220624150558787817931181410771938420946662195655116685104724551403250610814517233454446236919680633786 11692571595927258649159780730639035241585335039179775875731138534264939495003672535370135965810758272706690922087202881710061293735724824554743917123632289121982252292646319168922040430147945344676629211297789538998119396336077140415616925756236750454771592940526148695671603832971638346190455676573886704193049039815901396922661921157029723183050600455162729639827545806698079917641481365139527635013606160497496428062942309093433811248061355206497514844789877413216230683844764759954048360453288068977256119827410452187635006216009914876126830910405047735478112013683447814878451219273308446810919180111180443067714826117930792984287480093172227529609504718282267298544069935160708891399975282584613251668707888745391002666120198594042237323570519667032531257119036240634880353949547404796381188921639660961433679275608633582906641336282244060993675233129298628796031020755953288426365594486639840390803132321343883979308636618589448668689085745007378363649425340894413286857205219209531150334994291705735614728148811765509985173894277285578775886364228375796690422006751302262529444545528205959719729924488626957121515875193820871677143361116526468997786770361153358701345771330794202430209672982579118063270562477491408234091509066233571166732986337813806291907857374496857861462459625295563016632488285409279660089565329408810875220 93435910675215222642873253085486038724326358589470491603490138873350410467994394949751060710929293187018545955184140586086199256163215464218184177793325073942638433209393355685745389104699036133844669689674712449211335841041240408297173994465017769108192551989316157482352637804128046372219976832181868562207097999691417811286965235976918849607300221632945071782475640951107076640564690591867692981441921752573773151624624288699846792696153398811139642745123193244770932794492754655039156204635458475953437050814939667685655682414771847602542407798990122101848566201989785266070948677775982127894314812746913013803219344017854319202234470655904622953782835842390271632752328178079332539848629069873228058643107343280287114648653674998222286436573712450171975290355949539412937157142190242578437444339781648240836981001598906668409791806936766068726550398647665573758095952419624420387425601442378131510346003314953698122135772444538398063325064936561778746789175989537992456081280421123888722853335279676739466294568321860659931822507212828623713190883880001676715238998714465873558105448510320726688843706527086276891886378405645593246686922681933264082481787460304261214943149549709187660658765960703260741053055977290902818333155857696779007794881728484966677744907185217507565195611477440729547522781240500226500665061537299289965869 746651486900272322262303176141634846925751304872970913244937024985093712671527369757699453896374016527433251170095478575165280840546769990921550424837282046463880009917144801343499832968318322293671872570574745922537119854004458174484347182383508275302903516912903197505327378221089914957262260760772465568600227187326782880066390794010074710526197658365276374435089512861657851396908488441249481547496701016891112504039139350780390728023499159786047631697248678292575533021135266255549159592355018063243602700955764921901242060295457597411958543095636655335684765613119002748744879208228107992935298830369878735971916320399039218097294563160562401028138893744196068136439497200807683080915744244751031524964849939104450515638056725871852006851455045418495354328881605861528583237486490037950811854773574537884841767827723878704263744450667104657853499470108000888438119146740968858611425610216162968814007025600273953231688804292463444647251040115448335176480373540031834257179005224556113700466515043180418480380064519982425402490312013783152108654782481311976601653589808732467625068483107070708354740690376569010289896682708648343312248474778707837878898157797975402178567099950413391496023744068671027534843996228183898400945003253106150082259056358773282709285935803804139268515947588539193153783923757569551911018602560763771064748 5966537463606232055712749450585565860686441735453744997884576389550866258816273595904415176311270683872166736686611654670280565891712619712617272752133086304967761573207582697258746163802246944238986675564008002217008676539063667837776020094034730088282996818225145865908472118993209606304389688553007370324484681950379065578930939486226795390301022903285784287470905890314974415557503506432884573725972741587317185162986838776338255288240555340782991864824621592990512538015342121154539509969626282763660331294430066041640829989152461964777953929130849804267883771063272611972797210365385653701593664081090614669901750789279170965594771027649194120426429325245340155284189714257745357083487179806713883469411985375775420602147561722409140366187861554886045867654601017778922238333374716110300873820217663266027339276195069424837885459640883323090436768671620198768870977748273838023665777606591406465667191174760050358847103419875833456387013495090850409723875247812218499487927919740303874050384723155253264642466518911332138014105501632772838447416367915613432055931251378141871780444123478225238008688234937519790316960882552409936201502201259178720421773241150691139578840083571496536652765484636684747085758229566472414729585261201243058730704305730002088110119556725847567985770111491497221292398448915995499093333710913633084284684 47678999672355095327449266471832380474064490249501356257320661838863375530561070590857723750336537754256491327402451690937312855057105479405700264423660932217070349370583824140072285291032001471083076383146426490529895676543269818905294940550758413851033325675406756633983345999050505105665300212589203534265578862869297818973540223123591215517821921222429794391946800217795975244957950459853586674712568254023594644321338278054644814284325642437678042873226621751776020509752591488575086484824421026190472765343384073349099125915099914390844413667117516896508899244417905017442679721462324905146674055933146136269372516919297828496360222093768311877033752176180241708913597691851101972967604416821143711399813104664459733901805942405368630991154980727113047741332710496093480834158711967366572764263734089721143403997258521311804509686126767789347336179557360970303566233643337084643842760354044685335264737415156985489689638740257273913416692431798678583041405146520026595301107091075306152183464785023836841970408976606489201689625748260180516117894532488989011611004173442416027109555973148685052718750583719065144578872767906155647440891791651563541352585347234266383001446135021030366397450692070056408552223987287687732767660021184414709313124340149962822861319346098422422801505361072536672149604371400365692501682950686089150140228 381006358542523843286442129747103899688943856954667501370607860328378152584634742762718378304985799899861600450804057164621733483342161395051651358661380002903911554490708352235509226756950170898290622794658085934000421850103402603786992442859749264209831466696229213904305494361474710193785878850131641260269108993853581032543235086444536334275336071524333862999374984391942061935232322173543841278140546446136111490288746006591712824301459077319862473124383822106823768173195278777247041938113713601763156071424086229563883899712056188945599848383794667023875113150987397480764683047068491318077141276884577915980516311651148164337052498233586113340219195903995554519879589472476465323638790032389580346195727406420154920106614282978440269064643544908901313316045408703936649017575084624346292367608852798599213771172821111387324692532257917571252387561862999896877547648109614572218522926734556298066516436563954106254100504923718771324071879769005875998132440198395655125638130939864401912007750012424093138523347792656296203791617765398070818465124001815397648734581759452615987481964067326769008362751998018427985220193027581255842398228803772827023994857993046696912378775491519743749259164931865571449701581544528452538531939494944028238010225264818571641450662167087868024414113001048668031355692765604428740166953431459944965445847 3044651834345297735750265499353123817316139635226730081943888469564229099592657863472555106441541572826098041938064557181249783444549249369493890193367062951223831549699049814972877777262965987201671371233235598015910251189590443511175027212487576374713010457552110349331726433724627896942677865907712391703182387706375053976797887089093065223950816459861470840591067887584861258338958228478903584992119557821542367830641334445776274086373543349896157195417728954120173496044281574390271793281687662464175124770731302061351400871912349944696291572964597139102052634369666238352910645933507004379297923297902987401926233299280030717688549854725925106298193564886230029365403784856782842023795477847151030677262688213892265206051638321516245218976994549168635261698307352776618574435908772267005533907287518975473913177513722212128775319451450745149288095464832002207654770485118477330831122842088504516200577993112529136057862065756983665911339936465830282588360420933387201059927848660784012429298556879869362803592077767401670162302434074817471129227790713275773479375739383377719098488618451399809955018102494790760705367515287895283802631477982091353331692551135985749129546728677824918924987638584524877969111762315511791406572368713601027510382161012630364388307842811232926137711257989667588857103459671271782414744488044540048360348600 24330070897145808186000787453159009986120696444317686806462399482344822366193075557505066818291210537945009977292534924453992673554347001729725080827379111019096575978248850559620061218442560923174683917434148578729424649941074456488383291536930122510373892410496758661439178687517094158561530934870688227686286438529713936571696937403927600074211961916589914824726794300027573246791375945234172276971429746403467162325653778161493239045405454781728463184694023823804638023235098433779395946720642380062359032701575907045596209689432037268530279833618428689999462273874477565587415783908192429589011427148303874843504757712425788106368628830759166535315876514343079156737880684716548451602720822107733597903849564101305467847413970478231130267564774617190531498512248086521509725849376926739278041004736460713924291193949850083901487211885337066273975094689006127498961025732510028112170314418863344411372495960695636624867735568690744713752115975795736611331186396214412384174984258009090658488528342386580944503912007481116000592354542344807850485508528592455981584969532871510576924723270938030201272910877372389298861552870981048677769534791171411611191833707647578133874260087383492247541234588378283461348431203036509187899665464843094217262593690593355577164382756716836704696906678082651829198722401686860779131833606666419273342974485 194423803960169199956187440207544706565285432843420458921835045128211926020328208823457902072573491369902586449870756529931647078550670318387242605928452354998430095794916025552731652270893103289787551374055835648178747166613469358340420688711134474660645883995036796744209006619073934019733407879677206956040420124377776691865472864405762125308798491031946035977865448220241857042147388013827411607672109093324688073267668240096810524375063785735779504247578638157906653843343294506229466213748333316295501104056952103078840108708203799729490707497665145989916423971037489235192447328147393764287852585408305962725996604413734177942611672804298454054699020731319234587402582108684688452397082083976185191024267344017043580880062294870884158193196472562532284416624163304217933484816803196196626912077658929595781412730441947283841896360583422964461634813306357777771512978550992193555909666757771267427754076372649715194939636706257584493103092611055804939960729004627472816547205444326858196630701482170745498221750104458942474120510811600454605062713578151821295216862524402821470748616854229204233178196076154174644618920101728154113949284699640323876792756260159604393242795922220514025614261213939544783194943738136727132745728074525498021679433800360860546818546449573647501132509875035490032598929600474112004263092034604226526519386230 1553659414394128511160952447478874878434937552918133113867354700102410509209643757810351576565842383732123314778881513558610228016824658200553039092115215401416635053728472554630263726979525955275301080409625996414241032401021783926076718693413948353707860533677870960525480999849194743125743549632845631936085233067737730064373391380895650066555520038584079408610844065065368813263792360979733175132033418162295392599278964359340672966129157064043209667056192757810339212436974551231385248917933505589372912576929323237114414235907629027307359176133366446901409504188921843533152288359565891546874383791458659865202251709196548150779888179366932833101596180991580826463713282439131393716994307026062499146077706490175778469205845786656312618357581468122138681903043012937136644418357061203569139167160018458987659369468453383959619590962834358915264174632337488372498136887880830353080538533591617225756720415661688058169363638854143404960911621004086171212754333033872899774744366752711827615709544890654557369723185439005201287261679253621711584797580262911540761033390422004665223274699125264595158564126899877480895079276805547203882311850656615236140868758431607189855242850997516195602302123451960177860158194308571119670821932955595354939901008984910996569535182071750512883312364205873414156052638176070956830910416575191875951882029000 12415451823972396397847673396832190850011841094024110543395373440185083719531915689383881492696744626798065081481556132180803114566882044634696355579157977422447219634823106100876480458539133541519358406808791812835950124526665080618705461986426542972037239608166783473004031503308385764996097406217246012307391031523981454370860434112064364126890119637653460709750712154765051210837326855419297842938097036228746660049903375142206880370680969300044784394900010982166328885186278223058597133044899706093017742441988558856990399455788100901898704482067610661641439122074554954683636243736169223120021312669512874924344791913429198294865338630789331926984368525785175331094413107930963678623537539934900146869821954605451893788395346593587775275548389788793644403759492512224840467826366852157586996674716443100718537301085857239921248793048183349160168766543176111469678490504308860513261537955872506436020280411184917304075932805874914238074590647974616787115997460972666164708486195642572334982867437321723353907189367587965994878687826537099821127787546562042485018117313174683095918027384391213825775317375523166589094545530048550872778887435284091226627896880864007359336947126816475321193792618578285439700918300055949887648629653149378967778550301206837729442861577598374794456515705443360224897490630908026476790974532512567461150255910238 99213223356994761378791599799674373496991813016028598126260420704106412288017410055547694124765317235288185614376664623085695979191089702106253710880262157056420155025174244410736238122715536558683872617638874063271541786995934027710155158784495259269579854555025056668771754955106030734678387026105407961986058594012362819498178182692221955112932321182001572577601845451760383911096303749694100578070796259024253320180582963759371358393113339170030847598099318790212042625776533239344422593457352934316895122538231773129287661995830656818439312895988950953418839197866150253724381321476819766445377868167053766956525185210346327184665065916997172719081942115255604939402516295132184831006718019520184440420801251406339984559038726400817980340737216154484480040431853103131507024078375784669838075147762667798502098893543419294904805193323984978289135295411352980387454338036549303254639301733989941091945451026640119784162523108783593290442779988262085397010294424651440814419634078137682942199981762966069649440293189416828864843536467571180742758361190929916386964049049374604036385676333737272613634958376924374431438968931613961302119374593815638215216170983964211213692125483352085520242509140415710240060888741581298068129792230499586589612756891521085858472874763542732973766867179032451210563034257269521703973322679081151581649054980362 792824226688757842674490572481502628774062735879520045610595223814580065185212803895141389810506930629787716090518928793819847605543380497525437930947661006066868642885528167803349439006918580233596889861600139012164087034934676293927392048218883193752941359762259901752558996257690129533341732604542358016236329404832429388885618464897833574630072309622992208201537382342743465078923450801063936160350652344636712408162879839055811661300471931587148177589541675491583366061959809406607361997004136462744762472980816261627846851370922573019666972601046835888454326688589782736368661646622061136684728958307849129238200333262204147279996684364532156829181515463361601102618679492281598408666702589015768591434709653467421532983748435154497997859062207914042989102479067915821444197013100880103051433485857640356729974740667415832801076372931871710923289794175373443036818376383583981338730506536377683251318377922360606230257321260639538806881195621605155140828346882407881985095761676787736767845160061218496075935125694209334222391638999488232031134630120188719294037874135456584006846412294179864241698433265491658509158385964524999548325569576964605251906441447527308771132465622466396860965267036075165577677343141299616283639094610094439513996890393852243228068633003836209859812023194257920014394271231745456259129900104292955019518346722344 6335553859187045854563514663293141731413608916856706260139429043611783847775573234874767503078807912788126991418441486916998154169957562346474499634909076119503825614535051319889188240642061639962826476680342927129999324472846995246788758370365470613737610994754625735262713246738184353443680180888657638672347393130312449149885161650312219211267613976539006634413801028810464572882931737513136701134252066112966675594699423181269911306441386925766094740352530711296408584210642812015917768595272434746554162298879366185966281646255767863717739937498467281155370231408822417472385367610386889598916941005470649387267651047232513063324250808438869096010577483939351966722743315309642422486792001206082211199658320450249655136492031754932685659255413434595718899743911440666535592540570706568999238366801129505589324129329216817077333816030591288660757065312968021299684272399321184334802599208746667190462625838838341268272920575102802783154643380839560195063465714935456769339768483217662635075746580425181307346094230204833473841436582671496586228432138115781184242531336105831515819231837846010344372213366459140267127809148723176054363504848029772229500821728586975188379803931102719957430570489229103010949761330273676936276034731954548235097460541761716815752474342457566964514808470884137979039295383833020420301124213080614785750127997836085 50628211210399230331322075410610314146440166916034996238161573808216112517508838944601450059008957390729343683467730513031557910204417014658105416153658443042550982381602044730831688582502176791465702874661569443009138185013097890029728520035114570122233370124384999414881074303078837766306849115978543476354863883226308879442484363467127492871992927279870198471614995349789192251680652761966605152527657280189249027512521757413543927010557849057037086160761516534314842946448659783626830185498872747035094001600642126217843532898413035717677171544569438323961010132360045122158523184427339386169747860656246626193807183104377560057705152217284461625421981281059700577383127682275343722702518915045526972937410024024189311302714112327537033456352794695940063393627831117557271415680977187751137529451059380766383039206325918636998396261724467095400456900789253656988797416537051659595391358700847244153250838971208664522415294231225149192297738960858236828720731954238653432743214859195555948604424583735093073991247102808725332675724090703462004625315095909046669206970640983905573500040947608339683920400396730096379991112089907912287072670265282303773016380207370906151938706158183807016278145685276166169906344208188167745059130215958391127369718386991430820594209037737967668880964551979151656682106207312305238600100250792946467885427290164970 404576730199351794434668427389883616019768526284660836364297084854447374076679865579106410332526133850368552225314076322212455554610209481713782643718487272231175137779910027877237006477787769252215166468951400589998204125599367723033108204071400224463941181996017578290999101716920444256186610794666209750350809431305853057827695253723713684312201611121783302984534644242289065352393286098808334427206919215900883629159739418583883455315109121071960474287095637457075475450759433665597222493659096402609842107445947293242123771257490212749621694592719300182660368227382951067343674674774616298385092284626668538078703815656830651033280008683380163964899477166871449108266019492564934178362631989316125058144398951850483027307588380560442830609680679815168843646881251841287135456111457299728506965383247556074289873388366819488319506452681598847267764193786913607557912321353286040556030547136495191034760169293650827901889652757686601483045422870469734425585717168008195813878875391660680856100946730515320922949227252252502769526559636514669889606268545398691874854292952246949449714855160007955625971499236954744180283395514258033064615796993017518335834023689829866073950458229128047051361253212777352045952917190167069787478514477514140259142954576346202316921314593039551816624765743772603261299483008073345766074792120805125052102710892371665 3233028532732299691109531736070983740649962271534690626849968551979349502231273444498419364067032087776615646583842482638686892550497360576402382005346672782490220979591672182003866179809694420423296627789558253550704314732243623960696524057984062421540012211519609026457158307731478659078981633933741470823655102986746994918883927072777147057973841370895296807881930735514662646481725882012929914360320730847642545233600515937391634757487000100806203187422601236023323063413569663634887643438332023021086225427807999409397504649119185298182414848329632403518011432505247748864602373515519889719221558992774065252009193019509400056021899269717892083685852396247545487695568705111405796976805224262026037888326268023289939152053795436671755931582808820801893148089666835263543100966518077765882372790204865863143752662429834097496882693857660604582029554253078750438770890977377124608006718777040541825278599596784967080328296315569264396081927155389616995464313033247306329131150216503851033248240730246058797069533593276847127771456984266091884780334266627550591110088942949942244909899589506798456821006652905220652324720814335072722410245176137458057491832185635531467316461880502976809109989594581408219236615155957829238490360360150493805930564808977927007931611172883150358267176558915286438552605634910216059729038574463514319426171318250789970 25835596602935957502036209370827439704535824569776323896420418100286561046890952052468588575254437537328293654821842864994374039089800326489665910247793454564630542965141960000380187016843427303660317820720981911246233188821257988222575808654960343526493353582568206572013489650569513556624647233401423604634702597034210722948198845360229428272536105491517601908123779639339547105792110458998492744074163024941813231588176024229880676877198394088623854582213326279694165698277476390621957914628130181656227304510715909533322419595039559967579581336858542124524592462485970506947606915907065470980774395933626190002981806844181285647646606373124375611764616228020224232248329922628881867848675565700259929173977581200694045540600430513214493973207462734016472382595693750543702056334796562035609007861605223643023781661099871623031524899456398306817044397125263117313798300984426011899457311489167774019636054461077604883808122785690378745160937218772086009038859022058047341508459974885107513031110729896501118377611299902581539563227756807177583501493268409238875742584649665382325533956961318919358048901617198687729265820091745152319584059974432513385712584530314665711983609430173545332621656041413789602742732815049740445214558232033359959700559644288343174239912942930629490343784987704662427625844957999102334706715469869028492400702522630307886 206456125058300947223006822817337612277458900248269638398158295744718270442125891732216839426432506132946049059915424358046838212601707832642418584846227940482177157442409068651966349305234447328604425320842645056543006026158797948607904093666739988267816342348300702975551461041234865472018943665970418337386261109736401743874564170975401234034554182291263034631485155587671579722121054010475945019109928464908780430497247216800290951847232090429713129204500413973799254942117652153249973323652935750466925965033534207911925934249610644273369566141225866312148737788827109624579822387511706657181498250545381958367176194359692542154967267868639735419338952173048327465602638661309341911777258189471798055120299446985649264008063320444057329023615586333448987249060913350193738593373308100621392066609530483511220898077161630828258341957221125410879355559267792256505287641594488422528091695064077371662126826071584623239866074198993778493691599010089716204278021606749577265271296637234332582714628097618613889025276694042223906017060417048326021599174559074106578932985275292254634355957286406476562783726189478600699777274602555340852741879306903108410133063469963845733194538892062634526363303758447676028984987011505447820525234009160226901586190603604520184853335234150329693809189378052494205039018987685299225284623020989249062594278457280956466 1649823054501944191398697664000605196448146537281272441085473831337622964112552153697272530981318514707034418912719776226254264156215835854827873778999570554766561013773350383841788555514586204696866822755761229936932407310294086303036747780492496692290439386022284903249240941654805795556670260113419643769853654579048924083621288780890832729808530242949254050548878916643581166218065434046940573964009394236999405993522987032074373947284509264029030537280936915542723502906943105359557167137874933035967679838587322395688296465981148758545583904834281303397781943812127959695929412796542630273460626886442767149696671906767174496495976558702446919512880518469333830319844907720997925260780417861458512400858857647480480763482492752668892453953105065347955240821163270648381429445298256411583139742566263344544025348285992090111317971476592374015461745285929401031167281500950316181088532598131059499323562040736635664803554539050254855851799043276708559042521211137804997533261152427139700316914365656821790542954400492367101389024294367106782435733514536700449482291382979698514401510693822608168787692641782024995192654780861723963285704899492637556183835979544652306377550392185697569915761535861111008758287301066109485811972906347783851840739020025339121908016270969804389258977989648482907288557701201955565960911791096635564206315917729965241230 13184002694611388689812537957374138116795284079305941074667421361183346579999433617749343949411327928182165972197745908362598393316778923963503893957226739498258219351866469207677212028406895902214455869604523794850340384936029665416908363763512812802901834385244906524333567563445541591711407904596051300607959324387817689005004889857662394628409111980533727145690269132416638789492482019322042245287859929621929552700407328417782371498244743695732622223026130255004133856144878675262603891362225935994007936584139151654806783251206657824892587898007899030846285150750229092641191079718953238110453360177656895607444132992077124092028798732622175555796609046029213311778818577278368013839536088787122346033115904085355725500977424641110228991307903252137633668794007261529806340785384476796598829316970746481733476623835489683058042919787681479708754543951226099425925850028360934862438062672603422075840484731565641456100212644461716483650439711541101859802748126765504893607692800918590100662182411024799164437811351114606596702660630273475178173755522734011187084680798101111764007026106410676256001937894021648505832812092712364056986389501680059755067799457754407379326499093595004297678165746518175490158064362054603517960620983754877832427834732186148503433154199872009584478141587219293684334571146239228868958411434773927878446633717749698659694 105355573734149830930591547095365919937682010291058929667003701548942130749078284137583168651797158105175565264860728830331848523593689423333670341179243528674788140528773135350570588115394015471889662705319428359412824303258577028950251079172315473243436817102381907455406040677501768696034408924622869962640434899699939884606190868101036510462780971381334210041224511161352006490947872081922676330934387764072538271220983892554997985353273188455719879694069987935718528445851984563296886747170411379882787928179111476824459697118238432822912433098901235044321576458706589242661618138447924692987038213743571885746779310664470522866270927620651754001993097592639644516001951577671437790714874790003076622807637995587780202726057554610879067327066142735268973021351843508596019580326759834839522653099952553493442084396547784715055785796867180530143561124199442958291407325470785770062070188875408129993148940803700441862069333440112071160833552469511595288543541590606193073074432000240425275908243410723160367081861667982602048585596002577923929955327040418751314956415483418833495279564907715441434204493797299698832988010188296082043657972045016861591109561853512688917994147075655953754887777368718918403463857989507615958042160828512120404527105750923290292859108111315083198060142721232965204401512148749449194067792865747263961770582808894761559452 841914652155614034700915777142585044043561580815407174987056301943302041232636438295289049028676993572597517234514962804286169543536496513592588406974106126057398531613705639188827192672803285554242670884865510872704762689216210913320634675377565550312496643527970817827748521511313412277591943805419448893722855980505474236723639053301679041723989706650998122490210660275381970074086392662305390102088508716272755483921721340839656958009215044393748029313665472071379458711263668308379212984052121007616125170633792062099183465682428638174507592041504830514729982782732920696237607628152350058884225148828235658308512237306888729072370077187511984889090586650094415369279610338405277162532877883246091030465766281240346930044420334116463003954276781413280889920252781402896007540857732502223859123996168517220504511949541347505726553148557825823243511252326468165310391641749273649582702461502325722810308692899735825424374516064581922409790882699488492288368921666347433560393449617479725152120735905151178148901626992443941763362732949229112716690554975130702484753535571301638438347566182923111505818747770777746275948679458466484021017565087475122067999875791107128184062915850928450894472608267800450216253804081424694240177080780615415513453530638076644935441908763556138954706075309813778983729848194595143471453472211175157803692039447776623344090 6727890842489195675226955983878721954881815864352036778396591603750367434693793534555216047357819916033954866326800273946557343404995695071638962981309811193235372784059437358440338939897988813202948439095523909326817979328496151837282425428936186610795339495015527609686658504435620650767961293627608954615911917597382085686588519557713307391532786067548476537619782888797045831710599315801825185589796063715137980269108046331342878663048514478565717500887644297948959059176742535851351900925314709317400833936625360355946011105234202139976980392183618060125022168693943203085257148933692268258410103305192068737022552490568556379592358018616623072984228354848030365019831560862215862631867432951105072326762228094144215683518878918233881345245636057646028423364853349833836757972232891347256147628929434996024490437934826436696509526193038544815533830366464461407843908585467743648042186718775951841674360874527087628122815587264052577118458824151680320844069384274197251704784642948131404416326615492038161130138839939801761204899329851937062854605284708873914385146824238743301463569638395381708410837387282417109772245625530523271863618769268886739409964466064367908520856868305092919807492567845655729785118465115755278301045836139118919082367913866839845121356375949934930380412073774315987283097360960874507466361346640038638532145595008405410167450 53763820503097479936704430950847604730402083830439239378688257046562748457393255220931475757724050579955303017925609816991225899287458347556618347426706038756243680087141419526618849810182960669657362200065140026081177860760841410944337838540444978467067154119147972720944238726700218200428880835657312242342793194005044416774024051068362403858996392934835096406092033749684135218005510660464831891976346568708123177457717721751180057741098033965255687751507836482150328211185030150011235380937104398611732225342392187212444239545571149897180700557335216078014237012249705059228246283445075469550123923478852078537082548647187229020545946140734944891758493953358858020716498440250962349429537200697739034277268819653583759633738401603150510870784927122180382645889755835470808617779169080271337239503508716966589449255977633867998448723797664892555656058486097764364959446136484641894306463939782752397080932199420098588539149368633326314961413944178300167923456891542807732005644615151320602299565511562318642833879964213267293486419246269788123666440757933904942325726280282237615660908451118399902001106527244709602951386766136660907109791840867865400883112061264777993365645746030876522405288322571447553373484828869169514872523357180590277672213756287173753328998380514103175072212472099312019043489513684858341183421251565968962846672658855553133761776 429636950189171645692360424638642344763321051169747577091213640878449121350082465829153340480491274527935433676774901813136582236808391979351315855182667013466625501553118895655246213492488262492886844408947176481479698183542639230528815647397229808023210857308425199085371506232239380931778736979374637792953229709062007486769188054293675950081926031191869958289183926272828212946741274136292442032451048154145304338870795579495294329019604245778103314114621658784646028710504721010506616107611064979411180627076767992894206988209496708390354972032564820641297095811221679503287143401732163283963053379590179836557775353572194144893155033713495122586882535424232436486096573585969660632064300661421842215817585825013869884938780512049659859282839927949753206120217054073307393616110088411725290831750407025617272859601963138832599445645098045369969774838829669624487432596971575028261760445389671001011262284424276995279609544208861676002787152189617928106783806287365433434104759884510632117715707840473751933122768232836202805254880621918160771740617809798548507343407693925884774620721939895302016430250476654467445560391141910084031106466206046911640713440362202278296848388318161668206597801782402495809461781058410947469512771724780101691226782484306138097832382174887945119297982067930375031195502833029597597364687982685543931119460612099998301828216 3433313363102618591518974165990411261045711197576165167672423128168861547343187943795393541234680607970739500708749026985503252737421236507373457667852026317527104152873207397266775429821594527374994095896328212953423577687018211028553902748391116468889535010073406219472383748295383005951081143010576118947436071365255455067978281856734519787237100273654279828609038388888762011826372160242814126379962778066943183094542454293427750544665758082276141147180094975036940129447462545844986530012858897304916547890251816483117503944629482753968447958590454250112799680469112659900695187511550644495365208287457097790794071366807643004700892158585150563535815787875620672042367126312573264356486351839955809031416454546273467045906603580350119921240422108915649482343616893022366311154901062500384217584209713169171042475237054161211498586058033955921829149981286804074954993212914649728722529083311312479738445912725651242476403394061487852359331614090877227535583026426812654962697137188336708222292638208754721811739903087982106908163547001746710412766466330788256711058126833235454390537660285268663965686535181170440203322658274598021434991208990949670223226883332938653002629863352216568154228224216727235359365034028474349632973121844746992461873163561565576054008413809787791442031099586389880548343481313471042002206204330780270213017477253060151602902316 27436302246548922274042013583035380302207069495139839897623441535262955941823194465074449999157781600703984415861890078787231187850653493155804364496248726517208039271030694821198770912427928732775833544711666202389400879104253541718114742951879364228126170169661762432752743044396441211646414223588187560531712091445643535964848927356909049245412151632324227801076465893776129607861728322062603677284802160182424329193167557926692788732334160833623203268957803480791719866239775965527999358586803207168455486428019636420760199798905800679639313797478589315831580325070861432416983288453978926791682376707893017368887730646510690648794179284317312009808969996090224727411765715007560307452751408220310823266227905836845832695101259578155780556856226381399072231457115922919502119480232556396961347210511974655245864610638296825798924413062488294929170958834413240163460154868203822395598655672169632984457487671657917988567542483418566970381330278769770020916548016528644552627511438076695243258377992859090000710311196143804598200555781637797072824967152456708619356364339626863161464649631953295618251916645036440978777182698530252329054499891243500892112201698644613170651898135363878125480956799051056899793818880780913443209380357335924692274164191572334835513419225000614032718874867420195640054584798684298059288639476607524394875853189120868836424855118 219249205668077456407799727208626544090760774123720444504669559694099532651679277513139088715910907191540702485056437773219820193878703681867090155329137072123999632529581756480507521278723104163897159258745167342636618084047497800406030120732659903370389570583007258456494010429098990477482022009883154721489502327745824006405125698889924992581946018597869693384803896432853835424968306475601903271504209765681931824989525961820083225630200482778186002554830430549902376459988700002756414200099190956997239896572170906706743871835686644303237655637733474798422420747386536099829040134536017834391665218274741442070601218850444131741244616160447754743598020798049279305439819472615041916411440388293110742922284232531394403216603619143313454524230021672137417347750498211910868553738145928370384995337112515049168199770216617080368659734926852037302950932063843409640981807162190145691528339941474511597779112388649923093327308382528097508212126957721780438257136888510082587210462340505227582340090441981741401495987256705232477643604787251192029605650801620956157181632961921183250426584444126533039825449302438227027369902208319513353930875271486215854856060744140787972918897770190614248757146732456585202541714686144288636326772710028482639335294626379686031272113579806750726728082527025487308562066241375072777212765078885509225949666123977818204749373394 1752067338388363034333999395604227170159012982916232908880261555932086455427239366909719677490674180242073648673243164325977905992794279078915195445167225536758850941226744971443281063535298156337180999988437052047225927971221721190890244008352974848712322544623730536364464599076869199249338942516404841919253478687463601168430136434168108868883846078163124763129996216813557039785723972105449802408562596688185905087912320653969684169246899406665627573965219790018283756361641756692297887160731355065259803175694653441490735589586541645314544236572761335621582806651055094715606910008770073612152875669074532532810170661264443723549842356228601433230481634260371480631938544138638610252877040606459490007346332020997357233143830163956937142816981813788852717456315292861361752839364744206559023957550354230965764829196463630412349237148007949508990362016628023948170907518456946493552553215592158747372618986307367166052092814213589284164136992875059761488821056540185544821607814771235540226521563865952608500912693071102053612019425606899227001501823440787767743915365769119345295250621229016478975282596479122199572909272005221868325544656794277605230497839306936668451726181018401588721672694858663651738386975737158165417657869960090714057396736500570821461556152389681490014579876475317810704064219366660354509532814333069715736892189400426143236039685231 14001155317751821796326753767930575794305956709050966273198898665795468246886747025022229390209751656927055445065295286460607379654602756472207915796922778304667002130401694947547013062012499275304973912758974641178020964778871914363998804923737952696695050266395865079426106736753838200826392681204127690855554393019776418961436963762490101855335892836583501937207589415462135155590199589042144235212814298148061676527834112346623642661215442720811096586306266952665410691180142725532746648014839900348462883537368357885932422349380668700314893104451159240809137231438308419695951545138659276635268519177331819971307086271021300537965561136463392037923537883666434796873569114032436834789301433399511853491608523369239554439099505362115189300172661180602581191845495018694437253389133705168286057348018783887295226319493746439186782372901048496630238648548282362820858618653234016807723406725234156850238576242169829572950497892915143751855267949270873720509932451025932304340463554370504791108963817010292457280583782202181934487586035894350109537492114927297039392765613658823718449067507780319237723428664327252050726233381342382257069714351475642362006488834828247897964916950390474440659104191273722726590292918053823632338347235436810928868388006104088540958328044049696912977835468607678970988318770868387572401295268386314818741086180596249533513414971348 111886391434895753105937458182605056686679028106564900811963684763614032891754193766651959205923361709788568712328901823969267953370791299349748723978557659456107690988686690268440606345145429471226581811039820811401698897879131197846257856744735634935863536659828366506782671485119792621603609634732387517741412113027286304086917693855463479742873232192617347469526213829322484621541488977847654852517641751086547802332435885319328389878443542920376319777110319002711209384138795471042770499572066207527698704003608586755231919383567228704658605995656975303490066563947233211367792154592812023689853905048318434878856223599014461956414930693352088385810386275728680394413990235663427145484492176926721923973140981452741207724399659161225788687533790548174380197376712455454957743719566005355742419936900755383371526264217780443384672583247956618942834843536496307117958758913274099984029596773645041410776686066563609662819969114480649973013693537617486972393740323903656305120614601134120686781429274838976476620290301959863258277718046231406911046087188212518051321870210889065311160206705105250658590286634433760289220564761418333054833377410379304422664202767695363673298828221576919606066375172180903580170823560617460056619414264657960579201058974420957647613386373541901748187218344455271100284529367129336396046183605499550722057414596577488462668143214517 894110046515723648552234868953345103441976000996381579983759997861095032275788193080021814614873611291826347465807013660838788578752991471483856719541262156871703581530825512223828454734200512309608314814848198086702671115823511801095176566013708625262453586848251706033431104887308110751015752500756568527936973242702433091516697217703964714359372619137095723978417806027153630612973094426701649272175160567418004963876084637997458976468663825084578627693829326862827449800677962341613529220726948387009212574908992464081090356116724473079251649813677594145813735443162824954862971705520302297444672019672869576457803088406921147550982579997472167753051199087607028286641766405860772495544742828374583174258902660708016135139925792664657313063779404652253557471536715862911002325184510537366617807221810747292234326915357818497900390609745950024527659634056837210230013899975744115350022226549393073099040068201910559324187491144494362253627118886697155822559828241550265255395022155974046849346542490126752287348065039613130461797161791852513789289650019775926591193484300876418322345600781191194629541216991227475741733669917924941518169874477390588132308942019929369292442681835610276973094058672462735374438963814494234174762988185680792079993885517662384885861719123597477750175066668392782722670913304038925782875107399651545362121672303812969735132028529432 7145045450322496067244423379969003149679600624544549253158497108177162732724641083912468037873660387914980547938469629672865192652807285316629394472170617141779297987991762743668005083939203600115397984421377303614259686000089203199882474589356494469923025795327387547363192980340231449510575911783065521673632008708807090269124079077250081199275681949104636604329834173027395283133812390256552895606222030239434114865245713065478136408938245097918244444252007340843092119663462624867354653151470990184795482771230723696624121608552444341525564254886479682516008806694308421430198075684026655326468674263110225517754720437738630146542043663759003610923300331942004025923138388505597092766802462525500830014244494249357812445913758099568675752918312443577540104407170990296690213353860795322586650831782893033518144520673980362042759059529115883100658786568789023899941190400374534458654658665318900767936490439538129466522850697784824063691859740055510562421719637420431767280364393802822009680556017050049617567201811093461003487310968597107032093881604359450657698428163127926232633255000848951296814030078356854103505689073494981119708573058390461561519215678914455645227048262071789197849280443327978581185647636520789609588522326229015279579494851249481431128287413973911303147043396970776163833948660804146393655148387075313632520175951685663127981865445537252 57097794026252485387652093484220032159747007716232259011116619336328708163788559737961699613467677946109859462368110373552235754063780969708307161655134225500700986415469275189373185109025150649399737694481909723874390187755171847706317384241621969588155814237580265634468351577708243749774821982542890810583297157031846418675685853755234611073309740806059964882966759842478469239987099309069695965272484291360836686779149335942866973483859882523216471021690646788680624475787252779780525594423591517401516650136641209482750379632155037813873750171787480511546149127618317540954095677834564481487060054508666429379953918825663066906600768507815353056433340731460979812707686400317144731617094021909698656466137982732361625819783199331948061337368149665739846877061788202450401871963725326410124810011512325088664798607983955860185285036971708890467724089079401531193240473791937923916352613292286569647352675200592144853857192946726407805765551369052219095677781131368661428144198122249029559746800182586486637370193500166157037537007291547587953467658430071743474849507008349010904633380554764390459739080320719903050887593558514891925655620777335378448385661772855484766158017080813693219871786920049105794137697179253984100744766704080695491866687312442817954848155566791284708784775889602347834305298100707756383841641688493941179116902173986421446817276873237182 456282671869609411596844853890424160256224608240683449759445086295777543895434712425911013533841755497883481408852669416035504995378539751470218976878931376710578383714517989398084413237973446841852493363554763490335767961732987513489713528741482267437273965260665364163867922943768039559089849115371873915047310322472816792659772907960624315994205358620664600382925467386801767503810767236432006181699084227032588767197220226976502540278907212048527163025128753115589506298000708872743810815524278194079319845591090215281905466845670969017327682765696259937825138973830644472841102006380399242049920581881438840828224072150748691934245414048461987298304976330486190390810285822769400346355175208158221769649378546556586142438586641879786565519910904560292011806333171643238072944412790138534787753482823811962997212560877674581760805449784013672960650975894911145093054785051338223371999196447805794039860254443359072876660600642843328483538227504241470902817824520131830565630780723334935164442047967906220101535587159298756219722699073486749244024120156189608674731261164369588466877613979907025711823264141199493726686178667191370526909585237889141145350585074247470524430541439774243228757648480803156822559110267276417662308360658234101811625687762748721998614240126023325363519356507036610157416689638248676649011569378962567877423351704653275317222834552884302 3646270925530416049322334453760607688394159654130093535572617933867435392591819518990573304371916008805152973993866777418727017641433380868362402048582412421172456357115614227895227071613755357376216048739793288124562510123118096905992405810396328188047416878320609110400212153828311798389741848156893393733652458795142926379177075888919670650647039152604708786034947994679601066518803616801414923091208678276641785651723972990573889863627307456903941364461749080844581330838662526397474035280220258849239751390145227416397481936995443131490592355669918401351166461755139078991302006382949551473156593058190837898570819215035131936749130584254437216475655942188371236596626930155157781713621216255918545425472578520602311182081147457918376920425591455170634040223892407372358691373255525816404634182172758113249152175936105404976689354402464195540656170595334398912422060035724863602959447101924814892307083228127369924751785639645013521539541300550522977124723490723387813851109876027030031278996016592138672002001967951943710765319507350689069225751739406403644726556041183745337054962348763136163185307945934427438912778196918176264733731641177769350383626246838286764422843558170691459098816963953227288164714472136247757877553541735001506768923094686604584115649978933514204211661144574192600223474183698148522382934244297770027627473380597509926607305080004281040 29138299620700316787622655038068229693536130256676159330360404057293326830711065472435249107548072143573487684101035462088173044006378821445284304930297374345796624429405422589351177557768068731691739089334417830744387453911703204718504243311939546910839112126445694715869703996341582284874441299788096423094344433920785664426108815808569004252496924939987628284526001739125241047551051091823434158063441669718137896979503207379485213272639846076775264256410000509241952976377167502190144751258406622873581781738199733850094001979013398069416275499849230661165480114924457899997535275524033489105891013466497666873771184365517183324931428107212716917881392269292404873170967134529526997840640364982362420108294679269088282007428243250615814412874822690759359693032328655158305802185055871537549266142612094389911225366331199791427143224329242331985436687407821115707901596721673462801638631125032936434145999798122094126083129621641208288370113649925200903216605597953997332811157451172808959637880285881858910484289296533080779157942187731410835106548256241955565018211853774528916068160858591683443443402710323063312687718945339431066895586733079753700613101572634854560826246298731338638502549389396718339539179100719618482225754928256413887490541900417784769834108705953267583190560288177663260193843170652789803883792856675112244456528563935067884745739806814087055 232851900119450971483305999921715132213105781803594382039537475834758013204771147905005736683494116765005405386779748845865325968557460705955352894988319887184165465629061330333061399233875848605556229472669368027436197953578011718350149881925022971800195427001705857930426120830867388038558053772186716137523746076122816046161765581239908850109332671572712306450360438402581513613248117340096692412376397980308594469261986375515560511357093894921184648901037276447261095444920086009134776047062538274861690735116408024493823693865623628781173486664502664521562719270929736913669261182386349050484097892406794911627538284785805879560010735592118726825924113807584375064105967352582498524714791753661904910275601148139148479342799206292913547677441103257641867670677456304599936195021215676809318419928960819760971975495720791850746478930880173577349968993042076264864270809266164570299735760902959129726431839029328983529278424547465379518561676715926883765773063500119018889423907855603129387985983989666750627484112933691859420561518479090098278743877964513397824132716078981777648602463914039753140431020590335361954795631442214964891953471510605481022190485015202341531342055634903312160750204625166964734487722096981103367684303979752749377802907339671524698640558130795956424497589904644893450851812384759507184707049042309623293931107169806981976980369819757209566 1860782781008109278151170632479836756140293430954510171246042261968189809831204746631052182536177247964988708822103714228657524393388289753595274428371036859087147137497999512942337683487509027204026894322114168538361159249651863074053787304062321313011857559772388538026092012646640758837188209501357110733303774498597042186583608764567440050428149617683829014432354036728939222786619506742233096498714259536853072890162341986486778628840145153534005808206308261998036913564413455275705277360437986734475481118128990161394782518868668919531060724782193732391661873016363165356744881992339135257143732565157784922285119179884290495976819917489326100215417837153665594632837582893809475407068913532341857330456808560022053629345181652229068897797305223494934325469409757560944827502694902722011042048119697788373267962595023298311911945810775304918850517473775403372724052115517258633735788120045085425468032523895333420642004373224565286579915181130855948058231352026145709341383019339955930582984464913608866480463860563785079486322671471474102866843814685587914658526825487959902665546166577097516143719084817462334867196252018201115965904094885985265372069724382388235936183537862069046407332966854791422053705254049464970331904094581681177415422596632160214604720001162273863471106860275215957783446142130315491823866739059043618551250262956207873694481350626568228456 14870031258821033638551338055462175673698108015600359822649234843898813876930286193418326444997021523611831132766077845691321353653993838057621013539322086436989949750329831792664404496170382753570633605142423800868712058539762894749915156626478604260524875016724322649109561347640122824451173590628016407411303621362063750422408534035217757717201039185982275821372673646081822416749017854116492698859388612619717913750557376906749769079854529578041092942049494614445674336148708398751393700428685317029792098996238036630713244775893821435292921268305172659808321943932375734940069307503192646171984590045680424165421679489615894143843541510286662444640715534202694824083759592766121399713855409508734957855423488845681808780939381315073536008564618743996448423158506876980653015582056787991555299524579430178881702834779951629902662312024850931981787153713045067972432313115674475967862905801410854393489283378392846469729599103786658293321755739445262635462317916518879315866451997964057202253745757582233354994363037653876894724924669070751050147435995830333247725635317064456303291472705384831660254341736699728017580834584213047156813361084161167494420361707374941900604628588222984464839063729509635876635074679375727810530519984993426774175285904503829938766006893275980040031239827021814047800688997153320408801052473996022815921242094321510343773661910271506094048 118830628575072368362388690421291182792323532207326813612164931952643261688888916840727990599362114668316300500436964596505398393546178410576505300690094064764124863354363937810929296532179096974235758490965709576616272874900474800319547020988570351599950585356930632516482416845977761027254877100390114710112612774235244451821478482941521855281774529866499624707169206022504079441343716939823731254214442768124384257531720359948131671286323017896875527506172315219708654922846587634443712313828155487240533205066455175363152855361651706670053513994523918063579309434771291359401399770973347573088282631587944700738679473340562535256692014564366764880556249447843662607262552561703468212868584995762390074110490318926517399802681478787893103011918362022779122684972770894645380648796058240598786677992649903293317142752669591427293976890074597574995153984460212337327942999249235856056630329288477109873818342324769978474412033043942601778751047281503633709602002575586435780541129305606647153963672860812693859575555097473996853298478694784376993583553876159563530830082553173029169786191186999623167606395472591579875785355439795998286645243421250518271813221412964420993996841416676328120283552083439315649210597473718964155030270350214962752696643105988161617100387361213241427632828029511487541439676497998235903620008723742065188754394232704718251882999760154455243405 949609863643655422961996417790987370960234165137262803584042735490819582560795657039270091113142453582029182238776055542793401984244877532436115572935293444128626308963035298586597261631749554561057589405738683054733782429310327796801028507092512929709054688773002469698796627468918389038722888082170680728722871296746417711563517357839863204960572347125912869922112153899454407003486415113350479909669628162340467902722511540355698357572472488619276282278096614382848184955703368231868322736510993619909326548224719086368031087218122619531145978671854127790767233660406843567679842982549663697913222148053852683976326738551293374847076661375424758658350955711569666452349476729684348813615294847563884036341048619679989444447968185110777910416426478406963446888425129636241405149713381718919102093226212419400549179216150537257271939097503340382535992392656320354039225823577191696290704633278311059084010391495577205459290118125938666742614958024232780422398525161258078150359816980362550146331519589617189299538189759596550221318782781508844485632167494006497908573819717333490909357200614210332560065748260220504203612720204731152613606132090265910140620424130637538400822702234180126264348250424482397140099696633608500149539599018405853851552643283996692302198587479900066599364991991490898147997604365392460044496702677111609415326436844868722808409493546205646473436 7588612010931291560962033669962659597946374837176032033264803843260408985377713734817040508521589462925871461056118877099386636662966660961308332191994767655886995637203302820842500251653487264321402943316319797968815177959955036819097649592566824034070344350233130255307198806072443804624935548089938805886989165512637047521546512437106000418510206368343548995202583105007164256745730565990020887033993194112656791221701502630882681305714297109771615446719843352716101426477121326300998486117864181682509261537146555431211182757385530328150159002463276365288024828403296296673846197085022155963103178776612871486546654303462183949816888227732008467807343510544555878828331254821149292655554855143239292287901054309376962057588839440018402459382052619167194640435675933540763125455217983882098118370529343751492713051336346746046506622246920366285636249016922745563732641667344228575035735231522662538012447857024033871838189332370888874971366218894076232380112032846398998035836876656790113978310689803742880130820958602389361010610782675758615752953219088871223404730255169128272968761606661079270170841354016845080005417435159631531482188231244794496738614492416206576396110180876351442311872517036454264920367254534662801757696530677530732153975174437750703949230527540710529973374041540404053071395084937434251508647977259735222300747623394983069556489583090460580666723 60642875997098541343127159904410394171277853200788355292455833804977362389932009690209067532141298897643622910143949760454908537371865673359565132448664778893031099550110346863622755858806280941418830821606173509678044607135167619198823479552844222202957078767664767578080707653685377160911758851240241288381518266278947049612176619040483481826425551781257838498772427700863972499079972707728529240680099258333151198935157384445325083328395669158249834466970088870770599513441467644261224432553942612816830033585131375463804456920851050994822993741180434241738770343269093923761911571244141105835987542192949555366872827890600480759354612201159945190380002956721624048088950427867897217210528602871650587401741466976559313250800820774192690980353134468466525121397753337872473994867349768910846007369180700067147312889931116236869684157441444245221122136528921561319075620157064382355290895639725628627274196686975132240710740032861215686556139136145962236807327485729320814240526394989836259807591187767250070829731818698846781747572156777543531189087401306261507864370292057470406878358048946864388251061393916905551222654191265264865106584144924477551390000160640421023926365268302438144453021896017046837110532224017202047332440228973872553710991454216355958895582806862440859657502800698323829155682643448653932834898821482849983840006956395545707540833119794154475081876 484615765814971396876779783001376046721721805698756589692488595228537523250068166831406923862640739548803429686039815395003287328065229878555650982720678408133187381883627976837404160307248174748303562972291593620339941598843695003437083582481866685282619959119871205893865434563734629284454750592241980808766792833834080875447067391153490453301050845357047437381759835260908865563264243912036868367831364754788676723582640829027715974422177328172837629389867529581122090311861961382773433946026818661473047283160287793482816794447629218570683376027815743462693569199772038330740997294562836646066831547024644577194555960393709322209166485854945996437011029088512308868378286425116146180872885493043187285149344084194350040237324337011458333206465523796380839289267055640220885715001295038011966125716893736597122342433177334512576686988959380274884569731126475890760848779350084775506852877747501559121995323188560407937717779997987197478938747410044621474388699905759742243973447780825545806699565208631979253808599831091487067727459607013843059677221701478229383775191217981493679202270636187464390672886347617493393224161734599822978280444064135860573057195066200452108859377402005944073945823885837803553503316970485138540189762393560803863941637800413858699522906578369131904704820940417435896849849590802853358322390910844391993386210209619277622229705283504868868670684 3872715520149711782542516832957240700585731691000006629302386302944748749221463945863822197830809110033281139118776460225474965348870530099929015601865776202477118850695012505494776445892973133664207435559777342494047037499674776581522901966363669879867702018188437357019528487727190151973211823083406200186194929055469438699158117464925435539913950940967786026377059551590985114093428705814434425101400666144524467691974274511928818181176438348459302666562835688045742350696318883494265680494163298886274075230078695165692694753707957989327626800195766061252517258446436018308237824868457332074253659367313645250993854206889942510082463562217758384545278617438007410425062764703622380114851741048746706469745264631758795668079596479024461334347467155319146566435626061652828989904614601170180380045020615934584656038295198100447293246220359431380937490414873719930210736396133146330231728891826565632162150053187519439673531723441535490989073964452622939801094970861458538364444019159949374901598696165646976005759181406811252146048044073428171126924565447490436143921891799686183212417672391596034592662765151652922457676057994913881116061818979835403369623533606596106183582612901946806206275191260946961823642621264552623739656702705671502584911187015317979413253781703958927206060285771987441149946413195969657808837520130623446038594144135181345317146499298446964669807720 30948097817552175779858234995364145519008297636229872935997303511044156638997424853536711239666428059745730859443298008794880178941246622886489650755539105714723954544548328371589766020245384649111405670796723515856350639728003399417260406727120964342192150378614757197296055635758528212062609446392237245380967700903545832114954191268081918682929767964451708790557539972679198043378109128703195789560237670900394795488567149532668336663982264427187254736758283042815170680603131095329701287872025238666010718875628239773752365394527117496984918605423304372604374504026198968316202740117681256381754173947030119755606390466389630155791872739770565995177179957693502524222320408733659715507513839288887958380252986680403056803853730404209083294490825231944197283852243147066243984945934710441626030572722985306765059245569051262566940461554743750450098668019347987156653038769977107828729252146361124496020564172729983414159756418844960517648399265262456160444231950444340715863879766673196666350031999049599067560505924527849409709983309172920872899035536362932098053765930972960200843774317952184911782160442691012559853437103416822610604576500065751984512639283745450546141287365092027371204158536484582674169047158119036226553810082890854284697105999309798656093592216588263265701453968616613508076318997748436084400153106386935823477835061780874122249892109684994188660646392 247316238732530869079263410383598146408944562803803325556652707484042358296310424163539191220334940782662418590451108772925506945482638868263695613014795755941431508198548642321579967516577429877649845172560544058512828065666591163625797043931661309652414896861030455989311637691952990781896798012968462303838937858962591232880830741354277702673766153885358829824686357500302817154406045544498976366053969418029044483886872586565349492404714381135991783417370883416642718776689867392995564028733667852122885777465967920487707008862457588273569237576477509106845080702434504654078670210023301382545293440984077581712078421324925795105362567745059399075208707880692394375188123860201906251785722253613161052333902590315842502541578623676844540026244491313706992661105018168318987650892553336862052043195938099333410970900855947864980988203568494320801367761329370400204251568570259073981729033613670392361170958095873366591270769328368575776694713986328896150118217671396115728756731612632910259097179106837476762864677847165986095651695036691726574011370771466096124433594116610785526691300616117049964319936139099371332455750669277832815009990161165529890678014164671603901745322888022696010647443338491101234281360656232283052740986031275073183760273049880159797961179249040653503782768400713250497115554171536187742771250237945170064944686150788673263204434691593102863266917080 1976385286016576955263305788618399685812192537413712869760440867252315570084716466133705575446421771247422457120407820018082371390912866731175260464972815132463485070483565615934365003813381676890224040024639846177707568904476984003521906898442305410522281598841431749062924973560565217436675076375695424926765140449744491527513480476396664302121081567031424461774048628603862310541756427369562418594747737232675019854669535864067008136855631240855268288869549045843252786368436680495219925738994281631113015345532809732659111147616196121685486851668678983025205303002851975770940236973384378260718461025657185006864538393564723316892678605738166118468060448420513978380530966697821581378311012887805729282196146337108084806389481104646145415873773624483675961585092167643472718043408561141800548566495666418769650744885742901214032406666766560401406719365396523731719297392408179774799073910712381692567472821939715032827116548514254874817537228022575978542027646747795681466880685895109230344572274656356916624076278182135866420087034431033535583085318155808175571244775536640396451049897822403930378325669666844029520714761480909357252642125704148362982810966039358741249268155748066899259081698106073540532436035463842636429015032770595296349095760759383780544722514069765170215275787552842497603917729820614672212531665641137835059079095815930952931927263955890648910144274659 15793955039268547461237363997003171117502251673725326039767338476842747002446118368647697293791249701192901369921591207492576390743819959683427866361991159204012078108584624372020572792030378569803957680499082860276840292918047552592220530560414221036545502452566482883138846099456058941523277892019938981316974700418249383160970961441935642185849417184820024985197991467000377251614433705634317882160387090731367663156810971639617619080513095035428547152252747320741519382019653635356583381321305194141060673401046777366050866859246950854475901636889959672071085602128212329900221297498818900939200465359663057105877008307880613341688168739029249000571081672436425188847888817471011126058761445231359756022623221683563235052713118480058659108579512980022405775491450614856644352304026611328919378643179793860469220886768862681615027993899320639487707402225113602912311054799617419771497588002037465430075788386884487198669479570946705920025007602307973495882531772989173529019267542677614406211829370760368043450276381827515688066811297995273048453139931130437427825969774320110302979273409952260963339227389738513291813916970732794529037617380714710193441741023543952580043046489588853837552568420975074418666685729821110189242615563420439836652626467345644052152413738549889745078524431719268425749016792281793892497582436495652053143040099786215201211862390127006337786508932480 126214859691481520548673428063819598600783760534992676808526010116268835058242388366326545851446873571495210718169392796469235884684197744969316267926770468186840850198503985130587047465414607126549745089823794090179797839909996593584997607485093514618162930423452518593656284919534995948877034537968341626765402927937358600245848067663704308075662507534640065903082505799322881451398431904150325254717589147649915609864831465883317137152759907788375208696458256545511482775503559662989207742981230914692552606220521309841484376701255300527142151276212495616023271400621707038633851610826379754109880241024264357521423392061419987123485368675594497472828328831507223289446268654515846627573093759670185169043744265133909325407084146976283641548944833381576763607137111500480484589559019868681661173799775555753315802469103643839748379140637509724543667688977194087836451294985516645073282408505123692025586888301021980788280109577990223344498998923907680594871590256758817633124864206488331675831654263877425201796256405058063168071325235543639979461716970062063546190289604782249041511670294156863743369388627824646999028775816189087451234987021597723490777495311166310753531683541621172032455707800043058066760441356954818244204289173116611360738480168985069322247876883526539405552905325299123791692384305099842397153519020169231191905332663587061503375665316830880530416811111300 1008626526975531200118963901390268609237720704211086007445983233095252545620545253262793612973425696544264079630614643731465561250856088528402176944866804657189328627342172413200484963209437616415547113913852544179894989949813838519035798991847711127257716184127767643154794695657625977964912441926407607217207309021936429612111962697149607914942740822732116878987937848396517601733264797011968602722123706203879923310449932120333455867129486195603889362756405034750404232957759264710539822037254750878227181188796609225555129587285481527334478558989373553408651263946139408399268328118924908872039247923739958387572939897480577303964546226111682673907175923195899773857170670879917690549204464757381303084207745729342221787023744774269525539648546671719177920982172690340405544744442301009645589554261790405093864081879416431504650594171086924622821477743552290856648626296298205840725500023753602034964470504762836814048788927998831388255065222411138229998985924548078779700777201400907209109597742753051113868525631059440501169919563823962466430548344081332467605081106220913572850159080553960692937168274481241185589383286837212205422926439659413708755824796787692807705402743709534678232933973327505778820056626310592449636635259000116664622411444109425960058102696189903282759195626768892330164421364670367371549022383476714173580746954859475340716789580392477560899844144088044 8060288530695709047797237693679099053026324597466885622827987884780428486396786444559923799813213423332437583717421303371567784745956798429255481019505282992819682935287795240940190902079291931780211309529567613866701232244937894159136819703323694448086713761010532047826595431636305766151143463277413654256249282426672785167177615210960462129155317657003639828729845028405260959873216212217473663651764504145617949334819111655254749438780858089417552078526758434127157019240401275399974462928616880621215286323313935696118761033539317753717354103570888424069100616913111692196160320450657402817897607724532784625988344381641335351958202991913918823276817436755952189422171335031625233738626232960681441812476796506799104711060401855083691955030280024055599372457186658484331817706140760249424712172943334302174222370024773431694975587683777328152167939435357356553749093806973242254300379178740376825475132632125983409978300001731042005003640759860649025120028953686142405954121986972403835269320205112054298144837987339582047406452873452432766274479338720709817933566298202201554381289684128335373188046919196783763553992759756983930527673314002693485378412364484957153373810605281342164340952345199181209713777872449881312944050078892001464386726921083898636870835812445517940273155010925100579715742001555946774871175790182617863894945480255401121651675066784581368117926235344116 64412639431841900441216017279702442070360164498619086346952689719648581952849536391451265409489477311595145299471437047558394709968705371213056373035308514538212811288597223120242198806861848051308597334352510357483687616659402210779410617513534881940295497701180955669190381653115145109802044512752613634644521933798402552707133526815811854205850290132486680896006973121203875640696994511954959899237949323020581667293913591180876391076398112196711287773370586515404025511233097594704617727452332687248631644038968376064274083939173649087136584290459266421698220477791703219853665792159037111811863204480808606464788313183725999208369447633596429636989486955829955580019308048101793908074546307616430912547717208801560190618334529718109903514741084829056838734208367727306139548386969274581302795720812765122209421183059001115871438865170469923067862717107641496010487936497747752476574928826457475519946852956567557919892401389741736804008625987043023500264252505789367722799498498841755769309765244990951965578174589616510314833557832181769668046042595123283471917843957824982265489086426097057390769195943513113323714075189074557811611212907846648990831553652389022798500463865396504383501287366788423041069082263785118924500151639978892027658750355854102903059432555142488618035011964715135800955242387769828717151966300110605500457345417830262604597503267443026062841593605075270 514744727988326543220497122044095149470244493154898366815059344770558585812803237367244712847434145521187956072323707852830871393465239583697433872354712135709960305190454934474202856701033524123794732222726490867349758119673185922844249531859542384323772220898849354323775657955504661909670612894209213755231201844969512395198700294902615403346820510444770630257739699309201736053145296338826198172833420593486015548310650975212384631304983290842325450002122021537058857271343274513155774521554027426155995289364695749340985258890069473082319052974182389164090337432714226864509546468369836027190355795209157307681055014894802493148939008530796992503990393006399861583065061671173080544476840728506544691785574717139319283125190025784593029164809727960436448605915379588976300167908997988376867626458215445337774227114379743886517705514087790572449114867091960715856400291336376899107762701394212564954033401248066521993297495755448593344223900022570056646716209590875419543212953161258849473765210108033018610383483237792606448045218730946511200488031555650568715713493325066358937024266909802116893117652711802781080123743050829009017306763312190474882433967455327253573873522741783515924811977291874612943627504286723742147146024989814491328407349821140493737862459996591540915505265085070895519545611504702575958063628073903120926203479386110639290463236430940453858194331969075211 4113514410227658937654166585588916780620805157280825591821401280300049051902663530109648270028421893262746705039030614239453610176240786822037983444685308572863802848537094771057917602277250862778060828467174036381044346156841759887508548932491441325348348669065499411801198181608752597379463702944319024279177850941149285092274727039559057751082029956402164681909501470661146514844035602289395123240859603712370799563000254050076684720745705028573399673433220226325920513020713364461245224870636805873602874477445628392455367802350987394202087622189304144439514323995064159481047510246118099167760905369987562995690740072163064982374618071939796326743810657650619888760147369845233212805450581026667119838976143723507760270689982806220607951940009952452935284164114110858122118492139881518619829304685180631481725809184385502770472383656154133722813982195835972129441745162874115026861799080248333377717089524580141784043849769880722606566519134233722013156585888905065593093560846522023376192620549088930146392405309020891019036371176534942221748482113104360793035171027049741570841075597708433092357765912442940160637166822461350716591532080376097202649565415682000496112851265094855336926080180501432566955781231266018840495774499213605686532803283400424826983182250695552101442711933017845044346010361093610900392256638286291322440374498608317157959054683538059901531217938773711388 32872629314892357661391249553691283300059336988455817674472183394616553926880984031935792008978381307636387379461338964433106613634124977461171139371024030750465965794614288039069930634788446641032298035575653679104220860532311416159097090766485542862508672530484295051463301973151595725426302598486085484514695578141528817013499562480438909224106491185669640399414477445612489358192642104133422461049208517993454499907344126219779502462868671566598091720099556335633385612766106155174536692411778995259683627396291246614532364999842053285646020363565228758112689693893820112406777492505037753971072309306445458785004168160368763561796110442722168590453673315159683636741510862401546301855698933725480679309118377145331303216579264351444745074957669587425942985522338539804480317188080738994483574682573052283293965974539200812274648229366279916879523877251688557994027383955560471246200357574132456163892621191348925091504775929509270642569869811535702700057947874736537393430863523169709557078635569138144647775807138798044055147592755622086296692196994344908523663043195241393372318136552066379853918990661174713714083997108688227166179671730779071573764860770718296589602320392841792598585414040539980462016487677358036116895994786689730274055035960250378475835423261813024939008189439000780318247031195916992691918995728398855154564035592094648851750244584153547230897773019604074705 262697636359926396765805111611249307156185680512324228201133767418771983192022777051722647995887736844472550608702853281777221461713099251146400791252619621959844948116566526593324760671272555239578351614016245149479728919891110444434327406066022066017574404604553374884577680284832212691611903211528184012814110967978451289946236371582042837867882566506594074746618707384563498638489725087046517305548990698172042307312237908323265864521555955671569545024393505794412225393268197339748800633022647434431629264353759280153776032898010549252743928046993179473963237727227489212605013826182114083495199011404642721739451241372973926209900539295284083341810257065895121708795466370893935840287755913126939202514099860758301115275752634415694619444436519467064402043137128430563191422046964706384888411989678146382048627198872417509293472069899540286988500386494498604178385584708475490664846269964346625993166519119480676143749336190156090498493868905099357321331394166036191565652777514934980595592029748235160639531526862587888980522832391798601939403903060119812032756142892125742940673654341200120505384575918756645217834904241829400708371733629631707386037530048472316574348283351363412943739754000986265239725720521489356310103027962520666983936218300380527054876826193908391437221203260467684416151171527369605787359639098323913071141724787450433997187118920492418621388653731805986922 2099317812933125252245501982726042902507104910135272053010037078174150256550422976453280203545583263302886837294591673447094912941569161071752426412637032559190934732365093151669845765161818547634356793175868546858722304141568026628438398340112193833565665552173440125643865647910606390351173009588720190901848094937503232577113426907490268656806153838169778639478695712450854507821729721505287095412166371100167084198795750420185847595525368550421017254245030840698436620134524533020772582854239319267851506275547950725389886281584571817325964542326447269218216794334372817148411839273836285746208702022652610684314303526604869404542949373256830808234061244582532174179380690063226889533828491228015707139681943242577025245934951614253441284628978210417010970697989214197047397017102204103689086762025632071216964724237352306121354751989355216004216156058137921137522045846800971377373346486149122355402539541971376491235198171272258508032222385000397520314760714732952556121801744234980418387949716321369677122804032412225783924675892830968185056966736800605604095665370202966181872068688800509351671458203508111980120382012172958693343890912422177627347509138902468800873099221820514358816896426542626320305637624068569911608043065970650513937598091878884624560884161446220451739608515252331538184581461417137849894951978674208063538212643638776595830599388259585248173453580792491973944 16776467464479193954228173413807082393686722732295073839372627116470688215941896706666770929795429695752770857882327829944317879209188360285665227251720653280091229940503432237187814048998171321130840932133393091168081701597200323965156612914167473975190857838249099521024791880109929321772342908903341441416494581320962583342205920043706400659874770617232556306376401743333248733194123260641580036210074975736391898070534208471706151863723801158761800895457472552202779065940004390830505462910183556358008562865577169950770184679831821254448805580843345992589697443658716342199612495776449115598013933388570848810165768473530507763834422150780084559240225816325594136624439517597299647013928767675704230580650440168022019931544569446930186513900087849810136167537354758500254778293514981908042493098473697102738848128014526971497039691687377583570517135427784380590470148505578490582101889927528298915305412861674820859042109028760688688150987697492619524760667476713419649684006963400591835321590172744325520481892686150604175553328890053478780508783119182409497290947347557192157396169959635333627164539190740993382803592983932155948120185273963031137290723306674051907073261036461627552470640881702294435499358165925019483314510029732633747126547205625431710566276490000174422352817614298851446111323646112533144787182517644549922350210855386801596400560642317568102700736959232432421742 134067388290128639206314463370729352827845148338809744842414814064179942681531111106621892615136460025494976697175449546553792864410805952519752610189717846436412406194198619308186413838006138769648512610492268575511721229735421597965820369627972300713752974632288202446300273538854036772018320604726347397007238780666649456027345495039319168463416936871658048463279380507751687749402548287737116404573988762990032807844154390949122862093496695757402845791900430486399521905326297102513821344075800071590052382929258962623811150920295069356526335986823606925819217610232218245969112863632891492925234524570754079819660290887494296225897332109512705540634142064663165483161693652019666688064724734304642758807261594765181841408939754836654718096424479177746490563922838284199192297854390807412916552240655869250096583359679501210714373936462136726533450152238877508076053581448807258733509216023142487524154736462233285636026764589417367917605253579946283814861887903355195195937073874767285798892852422960035772233429091094936516692783130235326988924366807126107536398562556672739232168804897710691173338375715385423003238827064268083072292156658029123392856950578617097181241685546853544764035988193336541651149829985102947123922504789483878812655333996386919016608941628452874791701521133449533439287385589108843248027908605955945946319656446425099079138522797458455694266650627925151561817 1071386281295110707562420381454610115373441316380025318158282772102712987754084354703833090079019235707235414025969580517920080963223152965974474834564053882698591286536841831468690823242755642995755646045797983657609207686040468700524314487502277646189350096531575652993640016697384451517463196341512124188833785242069662975442837952728058920227791536514538367979779131841749186274123841128193645021956241025885520035571986999484515706126744301706544344499335913719211304330775930445203901489127525751628102781577726237600272940136324359776838867148158470468449034020279853502553370717210153052167992238731884908398798798392239323217339140409494373819106570821939891621072522233169506116728816962272884107058205079696756920013191450768161129710076760180593788814233257871117619814294936698411927953273680183320376316718485144736537568477800752561465772523045671603254917904615791289217396464716550442287162524271312605305834519103901599260360335183704034953527000389123400014102457644127112542050291243079415925096797276559442438541960661138139363514412655840740078161236716688138673795462818204788556506656240576111194811181741691276654905962512258359498635838622424521589409507892924222792948107747239442822224164219427648040544902163056713657702595807921312041988558151797346422549030463879997995196512594112663921490248010251625062651630199469814770034730790465847008415330216877753825060 8561883503626819521709806954104442598247497179088643446657243467171703192723467273249238060623590400125090440901185840388072452738959212260631496038340994988721896750165860712143455209462147625056609423950118027283839817832619398696457541576366392869554358820071403274895097021545280555035864321590591293088297443904893575880705244304336430163246633226690176837433023585499014381925170450008747788258869119190507637629979336786516448357978068634225757555263662496873190920311824897008872866051811688998933451456794052420978440978941759209082762065129328428881058038390638245681957215255133993651454586697577331632274996116940944739083723575283108190296862971671921742217111951579634136291084399074862160373716238623865610667331035125241232099927971251193837462823823757210469575734511602128642029720711545849694888250901641207677372067682554144628311403070229368964406259106841253634833254792074008223746897408171457303386264974766843824206165326327836767243078625972071134912925221523987406288653669945209343301163921770343932391942733937551473171905540652620211061786452201026270583075693931832744865325253269550137761104785406985561243210081724841621827218203722601529399238769216390922780505352680817330095247191669356614932268420125593995153307412785807443708907330819849041469033037126550405088410088854928077424385571459248039607726835976212319516029567662436803783958587402240171276135 68421540583316005234984649549231731967885607267814831473025360436437994068357634563172056266780759886110856915026816741048416883194552731645752124921319806021683928261007861048529103791172361848071963832607657581324578116929997771726726069237025652229180339533862616643691219051427411897663607507254922898277198338962601233940718413566906066691179909970940063278069660495188781830348144263011869955707275392218413374776289278582210967978618291981652549868897842946226269886524306824152926628992330936074328993555889112799779799292903571406068968131964286028751737069634612224086353725732882315986392027481671050356646191694772861950869200734257010793265724142553245053256648672915959276760053390588746890041412656042570938662440288795843345075443287246073937634033547417117388514049011840711868959093244690973237797131410116077948925349392644463532441083517788702621834438538728445894125368222198703500046822803349567675329698358883585845568789757407342107476655315076423522670393187520404518762058620568490088592196467713156749735544260097632356957972934865347597475995421704117554162269937600885147891857840945716090127016916576811022019560819649215733753211543813746485882181812824978434340574693302625716006172475595105659022938309767511167347137261947848565453754359222474596538122909724361108201217272674747560454962844731128001153943058885987686100434020756120383822655614931618616311458 546785114936635855610919209572225726203405725660220937425390763366790107214917805469455480213706727590774385381055873409222032178112246213944445787126734236376312704146717607420750364346344436438401044968366130333345863590047366545530505782951966534741020730394546205819515271774488564310301482660755292712948685556666135284837566036611641766771959831525212532913686232785911978749683550814278756678372562662876731890528786106951685578695050429494550362910732683913047650558374661113848418623477022686478645338226915412942236841454172004829156007333847003467747836904717015063887932537989014955552627016098245089702267902996765819795500089338874364796554863629412062292081259472178043789858344276335938210779783605628130302031264108737757938475792441580252281058207333775222977643194919113681728981140219718537959266143487171940908700063371231974907190430940693807483763575569486578669759619665698470252602029372167701727586592998208705669229241023461030326963260456037390651971634653005282304482864975583491356455204646123131066403524940834652467002629369655340024170698102660050709188103327611198106712426100057382313209076168723323190224427600614213436987786267626509021714925028542050527789271781835750423438735262725008054557082241830371578969777823971401385553462373105800278059173077845014664729277945901860780952278956504445508207391275734195182401874997199986067342828717084366518113704 4369591301279364655992956922099475249972281731008325478636203639663859315879811256934628014837173383995972094792200069158807757790446745824920394085919258463872548877585271603470066063274780440447286276236769380351412055627041890902660006296823480165925725017288559828430530871338304144184816168513584031985132887290042904572316100763356770963032934241358732232242820110395703382795876087881657404046674060937343148268843088645718116717571002137727905802756150794170610648519338717153464092420902693681054117551947502071223884573906319677999815308745549680623606504404570362062245412501986869253752992437671431341930675115386405029801145413453600735109654432307314779471711669961530510022918335903393573684599784488028591378551068292253798783631876348008291196061704205255808951642377492452388667948036452984217958031607634204833933739205472835698104000305191660709780723123347935138692893794085094257329991938979105457390183723900004408597459724612379161760448910044301353924055442326163529061952926669719450323678079945252003052901498731697885498963255343607976820530305546274497869416315306399853787751122505175721341766523608231319990063920351440288841544682249213781658192352064523753646746534015464300496665120860431608756146354722031894943316845527670794988671054019686060134978299752026816842997655087749806569833070197728819774659952322988462586031854238263124065930573636999696722117844 34919277789504835497728316587524584110019929367847350058945811783006217032857919541867955278197727743350185738342166381229780728334762547940119346258611335363075216282233777912638432570879050153251407737395349419339951891054679171683967573547877954340498634406103858360232494019613792182126875955024487219419839727417157020878859824305561549214081387963189297792323751988293234234470696856608489079631172094186744208612228832615084872374784897661989884906339555259570254198044918329076061275415647463666826613791760294491199696080830187728771200179418566333064920716786706102096880614213248896135254120247931567797734897640452455914545669947177434334109484555181173787572181609274897805522640287076097090853805653790856029050266210100831893954301945425486922419269913802922623649347149934270860940336897480242368487987242243773642946180920266159623492260838457049683848072542715884591827981941978353311843849396121869193575631265598350050936660447644338823508162824661290480000354028126892665194833918271001956890825367927718243638739058275089759645246761063158973225449760438926311274569717068999543637338500320825201751693412216809802820247113567662997928181538192523783897711395620335214364922067317803827288345293719750763612075856253625084530571383672668482536228489007045538027824404530890241330186704516401088819518047487266157267895772028656302885483760187621306317644199442668796869794881 279055114737494122535590197791590439991866708234935240592842204005830827337660061036718072414744328314096013481034536236581448446408815380265167212560817489265797468129796133470611174689356678676160906112815834228735748369682419496904768629183245865633131669451391449665135012103641939780715074631907558771228796582991050784144721083138480316405938436130867529364157055071014052844051213704940467332095404087525826253233886171791793599700800929787642277453291188038492124555213338744592665958474714229862607080598041446386665369169214297165234276736804823400975887195208895993098565910620950050229524633998323024021062440718305864455307529026596676627805245443793139532828060177926838301380612533921205885678666223958295780166825817879220562016735850919181028841452694035983514204467576914824326207241650592391340984270326656212627517608911374300317688620570211814346041683231338925275777719351466579118995610335246391804456843751030071481279724611457818731365116096591848037817966973735299278741250254231169183033788814256716480509995447811734205916209786880146681020267600085827984558826384445271259630830910137274871612544770156263822981750845046218813387741012218192354829573903956488902975209887718730229431312469678104884234257556409005920888364396253936169544507627195046147797715473618445098562870244605364379261062330220834719269066062508868220897992433314644210548875156416239806823378252 2230052154698707549829778527034402444356268602543246626732016164225035030426557729020644420655283199943948054278426301014425060728506731873360005884336057189838383410043839078350787900785156328236639893724471535993767214906280031049130208075825075383984129939798244674318629116486357781127373961362784201478251953242277850365696593695072465119605365244953390561089154282020231137250150096068765703122462542215159948684484897004659175922090417904939536664760971425806405326754902970003187793163536349940493219671902956839414157251290186814759112631751925813050435110423667672943620795067870152587427586221838260602573508644770767033702715077126897907949773171023380236466527402876141846867277953876773308910986768697421644073894675037655044153629501832677177963659570787582516709070864022856285575191413331389313920071247199371649269552932693015560650016264717739272304744198291841069696502808055371632259325437691170019843306288183834266348747859248306467587472606931623973663162779187789311657689308938554064407682364326051493457128309033793499249450925288309516376071341974543169610539664879160259161190361533612869530824515768588235551645336596916467606220562887934023738203179552670334088710667687709921835759729394878446499110223872581315521425629993153029192742385729958614855402293281573791825849460032027717303182884610880419119033736022143422471305427432351185606081704193491987297390930980 17821339834258270849975846649931801887706728267011038405025137593263804714086526972833354785162432361420649809710123596593138650865125563478346963896968991275400481447305990955564027335262001406625898327311174988169997746921946158318919992850536953114028424671633666485000627384254566136287364502593598715609732748527872316142651418649092174152590646746199254567533249684031091073411482146555158345423019585353662421346040954982102615219681769208701927001833065064427389836628458351669315020491429862888925090124324922989502188362179043821049315112053330698292708517947388401181836114909020467426692225845327318025258448912456371443391819161955536616838587132033187689405740001343182844839465002212066907319969422790332269165089138520728608104758954959345650462461030303436663193868908187967763840226760327209355076906389529717510096269723503208705577367406376365284339615340461509822427911445394959220505375204927485888360354867279061539457353023753013798420219104484954628851414587308316261863108431440614129759011045672716652561041610338048563981833795999138928346929080251167299668908006386634942119460525068494829000155320637257176262980860316925755285338067392961532242125372341504690557203304058436687250362403214030116182494297831663092530557116566374153768602926153322655160721078040250309038578488401767473043747902964177557418125317409017888842952591212890122674442257727899466143058336648 142418360450384360244593707779356195507638121516761352782602942960537997972682035699525301313258769743604800423286965999833275018694787088965489746579336260649182571365413866072122186336010315003553581161473732247773694736109046708895754475793544885959346684529755705995958515989081262435888124446229759387627600757726402629975323995500024305753910031812000793369883404923829406386147342343592461875611342771982005132007531969808131012970297191107264173730789250349943472540795559050969144935519567992091671895346426412089712328975721155875325735124478261967383401918705333517148056509741746878849645396218928045267997583968976110492124385485776361728479148946233901781271510598512774796577891457368178567515689323788046710569062750607073871528050732510587715681383698398791898760662789940235117933567906890547546870882373090745400092139607270113104932205766647086485393750295019200100212857039719391265995946221830949186077513660353423249409322774569300234272980688147081425566559160127693956712856979385389999545198719095537238193499719895434847058132532815523851552676446945925707319285892928910186259087071981096596144171016865910678271114309381662939986152664581142516705949573206951345958128372519541258748224716135777828576305083908837979702020866921789931601248507162611360797146402464897381300560723244901447842213358513433527282469063749600116192264975322097254897448798965048910839740172718 1138130100930024857021511140080534830311009975233466692602029361124031486812603396032011514146733985841107914703737535389199683661328479872318009909759914000258828218347566428326721179164994887609408005563694416819809698327458231567783531424706333566817927673531235533464676919019516662021213727572107048696878965732759235601515985202325865172783183950375709991764378026901519601568381805072665535088165762931595902507358786532958546734434403161902109467217921604273732730791787592215221212482778959903516342678852445588744810417681187771977702625032567539468504459598992401057057764358717174893605794815399777061610734097898785793000235306632383549885919895768229493730578087299121071162851211514696669199744145991516653952395310779669708042682761149175508869168301349956337163651682183952265474049542385349901524825438424369899777632355127088267022960536310201740036885749111173638060704437765140068509405565299653910336195056444823755933246980566733075433836867348495453649434446423014552650867138885799843046416752525422092402842798455359986350698736197751487620376232386236561417519015334018944162818544056944168694825202679780246223795179414411772999609452947908858804197192096686569992942935662885117526864172443988442593809251561938660333584140143075964239455265298142768128097267092886124954317452824417583938537624555537556476666791417393371310203782607034656213464071301833101288947730748106 9095323171845599625585586178796309858076678729122609974993025038666911217819254131266727516144576519189548554649596544326115943368005613526135624165467601825274140298672026431513533719255753726060814898312203265758598148074948577764856740121364500591523592114825266896182822579565818718624064514688408437532555823235677477218982827642813548239503721481089659959917869225319440727512116406661621500595178542269374231276080260034875065963688790767118565166113666715979025372327560772038841354873902194003198183486399593435179638381731619165662954672043388855486201372723786089261228185865635829162238561686524712226165898972300679695904365787630820002421600525801639975011794344850697920577720936982418210220712204154826182817487378518563620408530335490614038002300842208514476889076553819117060346122920548052057046234290401382171532888351219900342977581544526028926735592992824469263661823579313861092513564096408300021923803218871865108215326161351981229011358044374331185394721817523325578251763923127041884901558579425907808529539754245340418853822683603280058369197721331951744057519797464850427038591769895200713832232850147760310528082135478061532437230794815227964914012142669867576527507671830033078282864862378513297993330041205390313869323648841029232604259042490176884739171095471600533464177212463711734232745140594113952769589316061753408232995145145588837641360993233502832073747860716394 72684976984130456471632601720361849027347773724377109280815879963219597090992914979506514394427638715306568920457287789735999364090847482953244718636486903574905343372768962559974886646210493504768337881141726701745593064629507875996674024980998365155876410791498543529371561855633245633360170812550370749159510667948562305972245332106512822793283401998268891922659659800966475968376767393412120836707687577724065816129745203536624609100593359820223934747806624987238797347962296249025021716666434091135979629008376548455092055290504587692492250464827151092313184531067990510007783838055570253937143792243131481169364299428150056171681421247404457817428172206075724527126222466925701439131376167776763865244083789173925292361002937434386699112436037210755183261613125151480944667078406646842167397320793664690590840006639208500590951020785619200178491889317132522199466584494408023992667868994084544186731441517191174672186933393465330601048990990342140335934823429028415540415100055742650974650210344623230117706809900879295980202237809353285514090243920675695638957165329179526915802281115856835965077329995324931288781487827820654447198195518498091345150936851270755102818926726676501212847985204352813237892611786586885207089449651144941733121270212344445764212720252857040877528068486471801523423992755626778132226934263972592335869724111158963920301570144046099753456578838918413168887961348744092 580860007810837952129690304902401471750964563693173428077944306756748765330081155015752403348071198304249680656907224607947565184778676463242515219961710193918016697710835138029030848916865148328236276533800205754153351757243271993794192809423803619978548458979913753554653576794235936503093814259143687137421347693621096263702370564132037368580625509223896756910439741231923381524075528230270693550885290010089245938097068087382841420650135529236562234177716707311647350644310599462132468492447583370892178035906738246378943268216311374641041660664054830038574100667372440466449079933373942556235795491267717784560422137486074017736180439226922194398311569619486514766577883398176871083006647828925145173103343499883845377791385676675650488241966213861341719516321618205717560924908827790017139353802918362876047986308799690987042774349259470571044034927144493516640441931124265869406272564560617805937719200562029740342168222310272687384441193482949134550525921622103716347838687001723679747751413214109314228041770675559921917458657166217048380541335601613911265965344626742592837937507076051764278996316256330672269353807154007636010662359287470526325091450181141615639532133724439065199209835664363882084130108986282729667496692772454613065916426584521057381550154486879213009843088452144293672611762404634378393321945748683239072449473725890448181216765797462279690764924821318225963451776230675309 4641930050630565510778612307046741701396957871223066699025115016665867454111320064853745989647784914810702947861828765437971338079833795125035119990988352257174054774279919796286389127662405496613971847994802890656044946266857778259741033237248449614594227292729907680785541298572689986533361522452980023189239221491230386468875402943141447791612687024106765633273901511065147130694626743968005870047999368777598433044569217507744012152159875187669763731627354023150914002708979464623938203570994970398457474615274516171114142960517323375060909618759834605493555521696332182787788761781219998640988317794439344661454242958139228779301762087331538185973312680518333894153665414472207335726877943153410264225923458287672520158272932206585930650182755409868891320201953202201255803057331072105352020470862895750908501175274463626213828875958847979358813746755850218577578495341955337447023476740212485112382833707456459624750593944565320183835742082311269067809595293828389329171995312714443431424792653925730786562089103103195598169006811573284007572580110756083166417531153644091103464293170213893422202951605897179616167115488071672728438135837192819615922846903581584009079932911260922936110444885683156547503164909628315943226666289483116621061665345160198418540636681355820389299624290936263523994908241793071423481020197797606754664851097096257886418998302626970702437642667975397697535761386699029700 37095907772909720471085778764033933734654231095716363114660241578610544267325776105396058681354708859351447094167361894308545974246605222347306602398647664399141418002593483487740814914572598640688563668287345277391154707329470880202615054993011785646112442605235782293039558031945305716434305109842962340732896308276492157974449026992630464279689739755582695244693946963601755602920677059360986691809976794759773877004551156035652155630876150802501439514884035255620900393095799500798724756805101944585585013812227692686126786520659426386230853254809697998917185539636147050170294281534792115774884021112684490455941990935895527906550921018860673901207120282452149083398241477716106711141568012392178735102913068452096010729280753957601227152397249979650703942460569993427291007587327598878286321936652200181163253728210976408210800382666958736874705843941308066164657419501358667734586148155641960695375392364383468314492217529122587184891245347624339262675935625805816063753698973489575321985638466308773337913104344585265156993334751961440619107276401155710597752350874208163789018085058578983100745613365936741396101480273815754057573108039751482652708636053093642807336452693403807631004253782219554654130203785754081565189589654234877403710157009879037446697668237209746200313866231168586164938913178722458313779848613562457768209792591412041302261687871463525219924570097287956811299986614359738766 296451539564348350173855757166100048523311473446742715223664412526004387024561318593355136675531058757979881993697638298582985704617779861256861427274959941845545169140929887429620994844312986950986892006994162316347525205044093204181896520086108391679706027571292068485997155965810631556087104498465452944800031015908445310119692511505754078140029948035342979955663889878965369852487914837932536343557197918011665672483780567602257078932778052300787070553864788632760593117151230798464841658619672947410829415411147993379906357944690720805356771952482496442215350173416047218232471678524690839473956731461990242476357409459387041414206291426509693903103782086068300906296964438416815922430320991511270578072043307828239619437297438436184870677133321200598183612607977653731746596632750970030931965586368313440297949299989382511368029607915604190924422923083306872673361770811006297591055846472449690209705960874438797216904892858231657788908959313321761553864794507516098015524929828826448665970689693484018088500987367983527668949297408529075741554899061988137224654804442236441486996493719714367154578324787119283937640802441198336844998629085951341373782661371469266902468927262868219145824403618667576205096282668446226657096438732768228065601378124829587738778992235730583176904532632677366065127891501356581734655009077225240389883668774945064738397471004795643736042383843722943691158824632174520486 2369090832990124592258415798443583646369585809188575361574245758837041283067644030698702399592895571232686439534951748958082900747032238041509784259108554001725857920761199746973541481383794176103912346638829775156080156246767990923255665859558808781331061697012995395674097618713857642430259186993578360384292088187418726551448601076554406188476094566723147436774320565425477199039200419730794810938036823544907937426276977473771125007547142755266790207263148157097623509870895719776438640744394738431684818229404832635991903629825399496891831085548575059135733487825952285465854457960822673752607934283836447761795478214278320903267397993622419960001090295459971103673128642674851470344723756108105578025473710362969289342324558942592153899999480112158927554358619139528708750375842274390921466916576825555319645778240929458941427275284096287726465618386769858277838579434969921392343680719844375026167890278542626048279809000042592826132702495992726132296728073939930428933022768283050901792273854921809708502045023271971612192076855510289681927743296189860442124639120222389642145759425188422871085968250776747912121381536452277360575961148319633478721741508380927243526578086078993173281754194028644361036089231688092528769148900269687494857715847141464177706280035916895094497570684749287783716584254846262755662590961987013514933469866370383251045468220782579604084820627672651348575008275079609798465 18932589094750494331176219478229996790321132271880205496656447851888587192946507697016102511051978323483679440797518566222886686039018751191220542892939963924544316599532866804676031747775531894884960030674520551404926348550593956867750198349705898598823974804279969473384699564484066280818366695956895307316078226213766784417237442913271336834105419796573822872442314984715570653827136095239615546227918339477191276500457122832355000607668908936061060089814187580656005464800452799499698694843553012558303990644095086859172437560365032831516643928054227556770643815607949379717902269079605628794299147061320845875083007782522210993338624633556824157886994196097473321941737334276449696147181417131694851510232972619655319731684741337834681418810931753188906883364993997540756066794735253378197427911670192469651251464752146327579185323142248416830913655099687354992682136920757874361508235632996288586595776672264521873315321064348279631075829616212510589303739107424561424637429192257374074711865916415781665655508737634509934099101771975987806971129823672962404247477826788089736563288115339869206281767160750879897620516259300006429507407707598999149625212644322967142340335588566328277798776894933806966719298154252161329896471297197865806879661524721095806535694840721450669552336706689433771717564611248645375306892675288496907231585532725572314808188024430988926195428644448652422423069464298662037618 151299885955667948775736400307646266380028308546551625736577429873760022390336244333013530840815511720139197847565976678331653261592044259340450657708835479057191432213905696290433340614146616875795718421469992297291109603301101837496255219815932296464305091584456306034004959574793008670174836891190613974618331493217875059566148173289198641573965255120233101265544635426271932880198171159889901520162044001783907641850327465855705767422926425506610805730116127958972130187979890380992221939977830989074340016457127847507135215606334555603602676972748069134674243058131645543085950882499894289058469373901432949811625648048790760512837426131326651861420122085571481967380184554948318248538228558916522893139339229373061188756852723224462389152175883643307365298411194603507572857101353457321999033157997033430595322391771013687656524184627554055826261355950589438756464769095370458070588541230042602114812422146608977046918512413132090062679706662739401044292928161975074767856325525805023553439035487037360156608537275460354292257198515603731649528202915502834460594931099145545854318723726995671911111056071033579902758902194679151008524109323471984017730571461272498566187619555353485751431584019676675795245910663050142544153105301315144889642413015454481911897208529277498148533827218603720692974309970667705319800655950833016170048165728008689461597893573672971892186360644863205365327879525126968043515 1209114658120635766040247969990761485933991393503924089370800443877431908255031378299572436527063097475741823843634414507739838596392624229336730312849327030175201656517219638503020751647446313260256973316175573688014557250094405220943635457124080913306032519920612970776206022298574938798806317965599697067853303899474411506455653140373533945123393835427247895570298280721000175746681490666496430577360549531092649916866346492402345922917454673412877986674384688620688903225793880985790750254005914675460104098584047059103570137566115185583566493080810112861841671583417174685267161527940978580452496436863955845836961916283782535607631388048966841875386364549186459102924954653497933721263644829960313614038820398247130227873437409340403787972847882370632714828683572784651938113397603553092921219800821685273740035738582774548220018330443174921900791390658391143302044029832297292768612951620043015101822044797530827548730908554733768201942659274136255485498157318736472698454420530955019238177466700135540854465051905506734542060014387403596699506203476104934704650511663873305276010252422102237403519281379230201778355775106402664409767854317041034097205964425167956301742077345966128101033996549318374242927032882790220454178776639344026749656038953777988848212311318536400446464103014992691908870690120810662933400424726862973081950286272992721304544411804358352126211826033730184563230480080462462366690 9662659267126849491266509854831082372330664886499373161056621186851143502400250323711350385977843206803584107226398688038792950605295768711197497514980052855595807230132357115790399990106176679577171771489455371260500791611803570895149637973918665369410039712144176013595532375609257390552992838249251434094329678567054741237413445318434156522322024321459771138404202318246931452944278176797642974747471702262300264951088715661412589240438435939310236082514360986950351925950906388459307706722453310034126212776290599373235914933947618697519110379896345595450154282730800314735744633941912047648397437662897219359285387172547795377690132565500878898036944450175717007183549810531353342061033836197930534396446046588570467316619423652191176697355074034775431302111384163274647405670836363313239621466429163171580189866583111897221707514974559045357907160476707006598503015349219640832269082709731004027653220245783886489947852014817532254299535156852965601435929295682659894095881121021997506089039585176512147373391962595352995307739266953430629911009741761492693148057799738995352421549056046132677849201607890237706143121771521533510799992463934622902927090464209948995109113561126541061885947502422629543638075456852251405350113418255136075153960430544407323156323936873763207467475059455806594586025031974281915367887591565736576781969230256897358279600919322488310370839744692699352627442989094586071305568 77219349335813760794575452654063823698093401226280773564830510888572844416566821787554528585968009682120263615590727421840665095780667882945498098957346344955019797511038765648663390265560110611302817585329192518259625382676834368463386709907096038031571040618586444593996065766972767287855908437744295930201430402931888585279411413108842167218570492736075847863190921689975924008098720838524508296964350060166808835548190904605247463549789573052470458619972791211691205791362736864014456966998773724559756186070743370541786633350877977621151261769942506747283127291419827117349406302870636537630581276308584068487580816352624703340427398674085429163672567496809961435833331658001929042321982988781986412080978914523174506034804894053483898666635642187279122975073245671669505914736785413209402196404505089747941660537018546971714592669170164858043390571292394594737069046543112589170008573089300309989193846993853805168998702348767688451061507606901781882661575941297629198735550278851047823629771135427190464759457439109212247243204113779816629740215792254439520903796872853059595358653134303380967884890091224462677253415633722289126694468890568429266387197083727223422861389087611220372095963120481154633726957277362367638644880621938348774463318008723091239249660616811026896752647143728156720219493473316783116653398194934218405708056557378970898856516473650248739362794143632541886504544138073773048252396 617100507133698565199994255391861929776038510344747812208798806672843755439038557713510587128621106583342875621978176606527070016894996881797461068140581673261902149335608435609411995117082047805625270309075879433087528002710717560648123344968045669662677396595756806104762662557680553422135339596188526812049432099570592092594779406554792046596697363123106759890323448972072281852509113379279908597517639360578558604592285378327260954388138351755888529811831640158234899958698717620762335458950979066155654264889913910458577098193368392225027238682888369259247250199144104818361693680914122032004680725565659843973866635272283218291200058672616994128653072224523544357523346340426370498946135685489249416486349675374781761846314589646159325913446705353559204704051658422176185573335948907299836359613723757825920823733724108273955713881523165651783955087516800607578092780547841636445866640234451072157118372436626379098527602426088529924048226673718899637686031495137134542009948263647350487742419780627440163079125637278701368759683364192752855040689667039886722944049620667210459250402521373354417711789110843789183959775638189622924429145684213893150784319428097931077368263081595484797523434148743503143993030704977868042154575803020153903151106067319896002593810461583991666519591870755114707710642287614782003519500931652207463294290803477337780689008560834428076285528734087443954524326886924457843280715 4931578622801089525014950751879339505012058296935976455512315339556198177236464017072940539157214584643932042114059357859043365401984484887566863608862517532168452387021763444635967155190831041702556298368099973700299575695008722647086571678511360935328892212813361420272332809097308910734343506793670592902981622746622622145540885174357576563903955625787284065089355429330254555341245780258851406803621731217559143796741738934617334440293439287364123651840626318379840066078673055737536294881272354618624649347062424339652060695708891099721026368582305169591787746669192832087078816010449319276397138923249745627833577472790935289959959128260117601995235045474338331946330148012377019177081541625186470014035805489162385865351595658833575914645713332120125660595209650395733231260506901230703237910410886177330700466569065144368894126112860957651667664301703618334343992761667369728749608765546349606898290742103419525191567327756767918900440244730380370436894099890940550294001412389413304143425347356283189961358714874023986103218529475608334705665949817909165721897884647763544046758945059477025926793653141932120474608949188970831844046909358039097288632152327841876906957205967191502052857485976619274540991953018199164604277397327347214734025073573590362623961543570277418891021949063139411002966363963653155342350368761454361028170494059066381587839490729499314201528747554442774968834035468937304606811554 39410896272380297860309707588186522628333806208420987849554929576972291363652486184617881371746990376886238371492944408180541815623236198253076538659510544369213767322197908821951240024793762026369506708049715424658779851723812453658885914481003771884035062388901490254755512674735658643451680787799660056526981680774906919142032899069531285026261894813486139304402193358573738842223094963011476626774044554459409754846583939671756955364521163248113007053120083758955864297675500580063683506790550690381880295917887855208505291485080812478412260583060542799721187887684405265556505046004503743910779251619389275790826172287067319145554319222204554614938168643497473968391560343357090170798075026678920539497190613108837343233046909288055573362110922801537036678672433939389133638931018270689388633908359558588354950126420237133339018702036851621770345017720751730355729693502366237649687847279047213000119236979372803234533766972325677575981175864825392197609817985262023457076784126037054580653196960075599438847734675512237351428624679820747694104638530083800760003780398983941143669378905595012148277157296463904886172430875938063632461665126643459808906562979316810411869051524784076486260192873392248170185442954199875536929238100991821047197995017317679518224557000693588414978043763211441109248530835382339867544457436855295839963212854126112709171911771103126202336496900414649094833626268706007634884386251 314953873294783940204801129118627852589660244714012276348019043950533162422140853029242101038038014297630786670981436450740344137926712496769388794512602023861898920681532026588742551291672959551140457594578222207184169179451619445753566150146960978985242270861283225369302854068954684519757919675430804420290955097972038560900973797261211865322232063421282743919511933717985096833893825252084947897256557498511868215796766147212940109311314421060702418264200503743782841144552504012523997594329102731984664663185973543802981469584873780321199634513736393036686833149382106151037947935129553292541164760498813992135841340500130119406859504153249444853327955019496289109268434985568574118425740128532371036470713368308385609459211400329438108075068776963067373865078469833121231164120369190352953094566618306130011445123106786733391538461998429073224856074578771422883406214116608565659157360386740080512249705741886354478070606786653076702750067971996933101406433281069483195027342338686656812285197660369130890902311303009854639802085163292022861180443636291385686369813869972573644991954984400206186644632569712910889391371551797216232603308404457024475326534607785361108409142212740128717505094708093158388168104036222421778874453423973490045685073591578070986898768569480000421994496372087682298872349552629621098409962947323555158661025286022341304884498901364994020041380363192197833546399760028967984923635886 2516969119147231600879133507884679359835501927297869386190453903432598886982852141416391354719120080951188168239901311196079564036649798216073263769387732828830632816550596733799404651896412457171577862697500413738012823520235711894772969479711530320657424701357715138200960165321958001676666000627104313366647338079482183633197531756386888002069462335504914381871262968324470665523067355705484974177628431945355086604789040098566245784820877196435598204481284301868027167891295840123303774545021055066285504386900927289651241991841236848389691853765512612042731431370963789944805834457342390806833285095514017226905071879044214169332533010922592179022262178296855985985556043299643180220232669641462681535252120834978905203617738198282681363315123749978102041967631628564683322363295486442629846704968755359262787918750120370584107017298232821466984318025804957250456637160962886056938934019459718970505031387245744755665287494299121885348981538548720583442862267381861789119572096621726372646429351439743142146481778300836613639200981699515312823225372996638819148143689020239118339491740377793347837609201743526678567396438427050039223694458633162446789940931944701712111073705820139897917709450435418884355372765519436098181124451442262320375549391738789909894379859706051137011142921660227265683238513864645463594465133938839422910649597337597368365146988168011010457225128398032529896407125575131427178487231074 20114493994604492716144144458638066890390933462221277100184570417942085932120766252266839519567021581871693258006268868130533095127692686962427382605415309214193680625398949421313191819541607460537463586822724335483226629732578878831171409674987434267611090361773712498840351721292875012850016100784641340186396400780099619815007950632118758151158935425061600074202945088113399831725590334159728055508679870025443354510026575868220276717305308570647487969346373775007295262130231893640941268880991333356597506475645331004094000154771125609976199540339239997172235962908622681652170131735569985649746354234599865344765727711857119398888572781614135847573579181044072126820303407471261899489917967345708526514402082806148974523326979096777206897616822762603854829772725261415061370728149690049586673802934506043979534754018872985412619395303866711361727415906177616584592798141136311122166443001916099634276061541726458158120295955462699493227322035855892447061990480005591959605716188225719351748731531073698419583482883687899064500364351632588375360819158571099317088882777047527350518281743300873487438012532945024789139979571094529146717925339566498727994011069303573530108387566743612952035838100665681224612595237605136436863727420069804080014755089214860547405214952432035525621659937629648260567765250437085533366859428012318514560336857325833087666052468811503951002607915932969921605904557021180916567735096376 160746167452835723607737856642607664602929958441609427043098835771991384100426788228948460600430621813628034987555071840943303032667401722799351669575002906266857010642001868450319209220865671883320103432957335053882834639049345410932060193420262761655687471824680513941078616937863436853565466668208768858887456288196384621385175272301113165407863647589540522661589554007871869096714820698537331421003798116805093514583431149468279653752315025378049854015749778385123215579424044783899103512839040488749311412082075792635312683229332499893631973255056444050748702013958087960078489953928443074638036184544493547279258836340501153519968238731518104930242279785858079661206002047201760585240990351453377331597262710835231779264123890079097617776879016611795775056942067628392464007515103140917800010172873028324257234154825259994898632713903985429327759283300844668706710189123315262822187443893049453284154418686177303282812865445997429489686698635084332623784296687369923432772627304016492994010634067303041959217879038204046827727173119219550711466698293692997742783285939007976416208034938254668639838775644054470298659920012426245245040760167507159767833553187340218556530578164593333768316193494211162736128376272399537000272921443686912927218405223851187669840464464709877786072260549522555526652604290136229875128534651821880694485674144280790255272418544211746446802324070713606598866079477968586737691342445671 1284613355576505062661452618350232521863800750130169843590254692016236973404250768480792945464550490437801418117752361881646168917253852548921065230899527842353325536068761944529956383914041185253983707735628828836628164049905850928657874640547891754464147855657460463688164256690204320033414414526942460323179510905830532415246541740954314113171373300052904161555952440302581554905008741452970036369637128867927378171963740960222609728446457644493503979301348140084839107631346770674328444248510059770692899612497033797574157051894912485347123219490827712267552727003267353785583451818666196720240602349162263725993585315429351001472102473880601602920150257188051358572700403308317198169857474079108500888429242113381903786440705516435552712179076778705324073975156066364091980254315589112579250412614678040132425890338634810722514010431087330154918927891441871985385673726871095707322584402174683821969205089728871260760804720491855554061859556036068564395732405718217008788105158967671501918951158163553077928538125769155423249790549239583964251419745032931581683168762696691161905409417612129618605464785287351973693539044007733322035256953212067198708443943729431781103508794815708375033942286801391855994814940957127307255972527414244408833733043330739894482203993155586677511495382626632683500219786505712051522302837133586950555856320425346913321618108105305470256500665613763245481840607340148075491951918361130 10266077265608066230927779741358986339011658905388285587208113875881246300138923249387329763139481623851106628910644478832355794851517728625376173248226904105788643115348720805218608303828771899590929832285768199179870963007364344214081250011437587127473556001055672249829378035323608447764763103663385587666619949070510496557527204527119801111026673443359407555326987287955946355276049483374240875920220361438749908025229272066991423146283503856901514569642921307571576044019956164157319383802812887556056142078612181461515995980312045564740860027400658897533725726474898980647110848938773675798629177760256243849239343709746300162743148442916276975140608070788862494736027222582450859649414538131444762322083304193566496127660983166900775435343690794159891945561486443795621189785568002671851925693603188938018625873393478373527083742401551797747913430364800740235444810080369660558162850173249598921208579665717984064290229444364827898632984499594732789265596428176118668906319777468356362850095561931194002754571155271986898619731266293423740599297899182592985465457863617761204669050731657862504297470331887691494972098905633350285550626416863670761349170455512734360975533915840211531530578662837909055821668253120569209919840995656538210757441072028829582403354008475213452974193514961171580729438372661991641716057765966009452774015278430274596380706935087986128574423846685764352839908453458109218908801834291266 82042127500591180825605986782217596018305871052036302966455805106142146677910539845226044663777823283647267052461566728994338299429615043360694802972617741238229529831779289899952429349424579198200996804887212371433014616851812769566753475977553921542381895769012231316324545689014058662511755241397021055090717032917646751602351220701934570951304523048340775065997687869648976043075498069650999801668154476385350780178242877052670988421007157471304300606590944468601873400041013542562478260154611197045449677246391698578372882901295993677134276164448381967951969224729275787832304041722676179795200977334049715887068572256728290671973227454256696369450799476204897181339786784333174401249570384988373933716952549210645102362603469383048373881436550011932244367751989414019672732245651859522529224888941191345095125088640673405652126289035747167203454193434163944881932475697371283650139409233776218140846955997810454157767767143769892961204612494008635645565142789589802333153038708442549500537648142030773807035366888934210842126124700312401124002512010435065841432306902529117879301601198194222135267862281592795852191845414723466313284766735257747257475741807181345935065125635453203954642712153949387808321190438028472236573215655801745512870744152833405554574227422493493015051558433848039725364400256599246784791948843409199410820657044397742280782989473797801578758324162997437370014812698047240486839919320514570 655646260367286425840475887605831806358600404755869855586976452329672819724639329746277701019087381853897637191327242233015010872515116168032084310856102334833190142871624058875191737180135389016432873217900311624743309158340016659468976348639863700203112640665016171905699531636462009667153004327462585810263845359118385906749970111888838883978003067827652715913152748967955491398670869521690135161281610030196011852707769480556742647207162151413677977229894048111253691622691880733245419176569311706307122926919582328891595665459393227145338696773953884627112138170791931553016374997231159705455657314510226499111856039043552908216046051389883502798046054447667063157352425325875704835624717988080522162541362521628056630286884872393146152280524852655865121446733651118938351594147894226763584840264018820511153752049440255849270598501226025238874511579497573924011362202406686767162945510842224935734416183372269148961953893750267423996066116724030976722030703178351064967504202747605701446159015061116030955199614178354782158757725883193808430879898297128539243719298126101823368385365144949851770210076731044577383717683670019662409597507785954015959139329823789872695834207161917867455294811644798611302240675493133805739950172746619040625165798706931086270858629824664128518027695635560788905408111377279327107532055531228324315879380874983448113537545972918823818444391646031721033712006088033665139747832576303277 5239653307113868778750908657869006363740178298751277656944458501437431063641636617432743085344219009904196683005907044191993334628706351176211336754903790517939734883750208614118160139628244007903188736115962297743394267575720223578858400636726414010964229257341484186589807188230153686618308939003658383925861478275056712978790895366666453124780503719358427901534341413276151425987982037623659952021626643309077647291304689181219411089486135140795934956562783051203047891562961215122967308417441001850968811158280117604758013620305194696082411351758008981443976871380009495146739183361191869812008021259692348872745956126085284552425186592123792939235735469819104949615727252101690347830729755880093026721645647404398473037736022642876034872400936159149674388379504146205685642447084927285412576549427800615409203286082040078235603035206827060163350409106263534502469552773273077538682741185850024413219451657895815542008271998705468341503395847060103930517948459552607339049259376979747933784090318872809243558329651530262289155296463545342951815139795730390930994993618295088363252250326627979892473206258088118101742359391235192838245417659037476813275429578463166419674409719575300318796556152308513644906673271022727066698161785280262472914384331616767644601588583373583463661172525189377105800063171838465049261215060609660800328225659500487309682751303890569760806655148427176914825420631202587093734962262174502420 41873166488394182133810680123113874749814680607834625356332041031552224164917812616609420230530253473654029143728532896686612046202750570545917662040128171924216283304974199038274276830859047993582914598225805579959386472514711230959837704563727596246906442341992442485018412942853474255360941803250490914458919932489683872174736222124549149870363087174908705471611770977101460214138787665770925175285124447592598113189216591535262676361376011612840651393431785352617677130136151787358988068913317286019430407142288938468844429637198225259164926007459031122794079653077642691106507657088258339066514903098151310175200772872930898233681089976394223301108099712546698968800925390948245512469787150447633140289202257176110407177015612643915751012278535508686178153108743395522433603766343833978646517616874759942418735254344072291358218060456551498443772739457715059511427899681638260524726509936729861210392379274827301596039964209630004199344752915759149839152588076130940543220093758036239029343524527239350074189435358730273200347505247749125366173584216234166289516212115762313583902060982888368661077844167337940456306919956602672365643049334687159672395631809691984001310683091977590450356386047316654458998098981311811092324008069981298467766745988846961983416646386632945467007745024626985252412750542090159637734738948924523762229160366772441707060496811042572261525796113975467883799867753431328805506011184201312479 334633444690720969223665076842672432868410277865668324919814732816321183535314974273779558427359535979351592191469436067359795664224099936966055200054351784432791695664038763531804456896935993640899036244524645826823130497266116437989772277123148630650526736094730747654454677282219690661444267831899372371425085136991929414936177031256904275609725354233720586844522006016769380094543821801632279253001473063478251969007764833168040942798944206962195539888861470855674289078261984629445414462543461325280992848707913647481538824057437575744580953816955369981172255818848435039160693646178489580250086103995151548915402573489436370691250405954636068300763806879932371041219901236626434558987904054609978552753194307513977292011493934909859333893231072793897658676559424373716922059564391540000609202063000563587149607434902300533821873438947288323456129648150248604495210494320005318801962452130230291135968280848768879938444763883382253343624024768149684487983755722902466240486258008896353543027965722698662198949457966566630621799052371086468837474042265340968101844679147302476431332018181830824403416663729429407206569224111501858545396179689870357251109319334192767119903945742073460634763054168635941426561474239755267733052484716749539853299520522207012434053461058304030664893252737121434751193388739680832566913051869258097325738042086168813140594894383978829783283414782663574949512576167752260107452418273036328362 2674257189096800419089359336635191752067895744417021562669482774294112759351154960952500045607412996842119327303287391847506380279621475723627765687076480370608438495664868025880165941462789073720789541692625889705630724813153472348099684850034699039485050191173640706056259277557629855511398715288580263122601815630566621416346840355225686282191323479792774285743579506267149195515593767792616470962839627608418117375853410749159129605567432898030657028251646435847737196852695901255913139517935037643222722314403918036624014098175458760543283072198551065835335832860920983764779616579036437671713784436153798635893410177570494176807663831200989875287281451890302206040126025960878370920969898129376813744487664796057318310032720647103709221528932288035997123092812103691651467826447051570026336487250946959546574970978857535739881681938888736424716073704946435234923936903982333791614887021798674308995388484919567812397811811480065124953423862485617139772425187726355676555195609424014359970516550419261051118906497253659270061357646626788089941261834335688100842899860268706351651742549437319415889138699028878248540837144757190024555590973651022054414281052572021693011149324589320185142436005854995890814065734777581584888789205637108591928386377788972886674164289165292931926889594970605840430802781081644994076264404762075951375847547370351022328438832948178446090968572881317834556840237223833388536811586046215720985 21371612312411095938336133714200969624351186662305893038532387905910088693694963519751061778275509670480175327554625832064234269376252075673248617408660117789422074583829987977134960332855147127502291820311174224313353639526840058697120415735758321992510561514917889142761060282303175012558293018115831649878200252482555405930002143550464618530557022819165245577171814685042022011846220743036276735472357718642519377954283248739114335645401843356322010910712125452063183311274034914061944596590122341825665485572366797234818299888771477401782348865481195962741629040327473610401381075372753024531643120501872538724160410506467908978950187472204263746537785224021286485833647413778199094256050604362645568426702519276141514287246828001931213344171440369752414809400452300692029466641493688950664584084615909507206717458067706062351132912718052756599021474098073910300431649743442545604711285002490474567596207403044909822761378191631406766407376213513890995252503792721878082281742397912260926732894678679167156621171287426617546733690904229736674821527905157992233600063028061665247009602891362667816477654820236870287005452676748783152902160706944912714344320735742947514495803779757953923559111034255907247185746578679979521508931207928227346270140955911095828145030406907720996106162361249606890282622054609249480865618260441761159067825465562263876869700188177832161871732044688436893998455127534800143137062736503483428734 170793638176169988252026942425251906384782367131658893213491429519948303812484903390172808505396733397886404159052557471061672651829954036685502629594111554601456145978400951754197594682879492490286448593458519453770092400623701867273280108652503661128466329249388818126674192513693550326877794270780854343096701341358253202579850068600957847099665909886285435459116171287366652435535710565405849337318510728908933785498602855753081161381290855581618954440769910450505815225301096084425431162353186947174755439346986455185611462354847866325032903654135290926825394419336145504635125516573173213542146131880775163407613041658258220424289123544034207834681713308788653072476941251610771508849038120325849573575739329578461159341131848025379884380180260857245567376954359843328259368620086911796885327246693191589612987844252258427807483240593849294291370386476625390935192197004161938995756831423358146217233077776429947878338299065451192842001708865268478338847829597900917358809859987670432098382751349096847937860983100119234696553225849019375109808847801366572644839689726316659590226615890486600317178226522971173789521213600495051640490196132733470295436654956463032980350440714636591625649946459170313976213125287653221033165756110053666876140700369677686441408201732238201940995717944287915389004923379168132644523899731828228776896692315980625770010521991680974979112345539574234458336824881318973298566504863054199329374 1364917427504992867913252977745356353403381497168961095642292776655225381347690931836596518440294911535230887157702927998483334159113266730279856581191213130636953230228898315768961211841567780014308313413311263324451252265154239751747637528949990833342029819155321546054131703470617809927596851147104000235994043134207020280267800523348660859714789329590252174490805691231199158420161516119392916011618550172400370865599881407702450927005412420809348730287694231659264376313853547277391567744729325481866615287957643854644994896396711185321311939397476761477557087285464739922425148667811221072291695471721496902097814698986902653902876147994067213465083687310703647116062668190746064689564677076041553953021085827999630994018307429681673126759466839694523798669896744669270975096131984182617535399877019886587154485912885242095974220524923673544897890248910901677385962223470474983821679158574122182702354524285364801665286859164592611174264659347293890994723492305231073897881547785207250848529731690330915898557038224302488562121364048615697136013988457593869878008325070817770099192376383311462395864448993187606550873866221598988888990878343885070391163609846319161142285528925671381132937104323058561630012046651980568690482337702802483170737533212875067518132949505931612337776304146086200046708866469364876485224617023068046668970801904321321024855063293342588044411303013667266592720509487674586778211896141444495562422 10907905189918339395287564801705838143101198829167374590458258492277557046588306239966209183503169288140665538402895822398142225998923503890213416924921054104313480794367008265725941312070898015212430148658714540694154059164846656155028260814945165554989341087819972902898844877985077789526550076572959533406958005451049044855345498361127676439566772432945788430931111538819565313357547034046032573248393099327590820538041479122247902380817063446096588653894003835996117699019352043466060003366413030438864155064160969112753126174547509565507678708676415923515126904370771553608834358455276653257784875988732696437510310071592776115817978062145769002920986458805356543190719912459897202754814518864171599399152341968479327823625363437010478060392122047959730119405805967940444544737603642355165887276705092118216380434089055120097579886735798041201572502436039903745244390590066663807402576538349561457148221871403731266712374619029573059613678716991772315254013173302369228973523715528025561172025675156581857723027302412499903457139796713439320403932255484520976279542513146533001747731524490318577029938085210148099732049317122920253517214649973053393691823546284996468356120897573226212648429962039227883074671044227952089500371501064318233989390450723510793788865542246012089094089458263470029233447989473184213794071298254930034292352270516744307684190524313866585194495116787105626003830664571432139330956496056546531459180 87171920869669477685781653531056795607147290980207393165881619028826407545904118494042749967832826327668796947572181442360503886811100513102002916540533572825535192576969180099980164864403798691268880261516615732976270123609348086870580334118083013673919058604684107419563285162019211685580829016390908342399450101050203778145512817772192413574812641361816809922718179329667938932959285323786251663164697169879791804736065960848144896200405777847903620857561627769772290145791035161469593456721604320006027176178715637308140099642564589490615908750347531497140827733630096429896239457126036450301946360371443969697338285330150853257401738960524269541542315022058439157817083140396607530902495738443476742490073141062492929694457529640983589754812618123314497085953968374289973870273104713622606311808413102566287617359686984187462072564348501046552873387448281402116734831470907251670395542019511200790920368517275770270070290688371733656624111025669703674867173701364431622366258055209434814661934344483181324883582615351103615677155990723999012493439842192912551230708832699187677005808532163732345602467098612740318545227687072845445509645771798827134590819293118665422402122772931524233903941289990309780887751234933901661514480577718327568405313941582788314027099454037743141294854666006071362015347425153100957292986379900763110547102555319176282903115183297665420643142256939428973699857237712425850580490852938695893771528 696646024469701224203127159153940714243082715788270438440428385278525546043165937972436652932986708681032581969692250091907632866409218010706072063256983750202656816802042112832554421847124665600383803093827345433071470209093907613733282953851075633170772200166792188935062787254572246365262577559417328890628952618970313995214772784646887441506974114669369054381644589631999602554995025093706276094119968970470030720798859487113323546807437072307332887992627527301872409801133633102837091388851458050525708298732958588135818328995581136647421854840530151006784854708976936521775875452730875929758330881093389162031630888977352271169261777825260089004548295508563787641393676771622190820539907163325612424101894764992961866581097611014783204137937484821842786350071646949853433779205766433982133602186059774980486229686856173507656156199614126226944430260248244070032717983388273563750278857184199441162844767939977660059382901715186169661059627984910160622274074181875992267704716528271884278056372123779366834452576820891903945938067493847735338597806650446225904334171447186589579573753647647923570344305816669102998689845411979206019918399544251792335053802043602410281163159047174028764455875809988148575770097488787576532859723754243946745236321606428608175913277550408646188747356800005684750307138502255097484767088558307761653025388663931612596208011235852448541637402076658167131450354534225306154385788853105697211526365 5567343215035729493178876326598474187030053183938816553751303241812667727933032233953558432719746899150345209779321910270906924792520550848162081572976733353211937209497766023009512878449265142614613682597721304714567149455828330072811450449929286683585362110261528596974288348616843124043169025094831613081805166585823765163391236357328464161551861548087169522651602688430466212328522486510679159637620477579968588545402348186831912490552915939972328947350690531012541647963010280159742705464169784009484927660135254935212771817778201867329959749806880031015412323736357480139914234100310555918931720732244719302924796867314021133685203566734666768716000979266137403440148987862068682556022169953583729663090405906990178015549006621913921336286752297380671844214140049897702214370078071911351827559212567821346178863126436692972924413502181842257827936060992512659095162566336762171374774573491308366372928621455313278494400957142720646176034599963171714027194457274831598118162445028317657702192135931093842459143126883547021794747448090306334008526729836843311460637070012656053803762990029839081189871419272685556233138030209667387598184205993538492442266562102951029733234359336220473651558708247149997887137136796956232771484013780618479526292562170991640629954012421260798479891902048090377513266660216754452781452118759153693263978609227068782645005977130891201971988002746620521924003843228804630808747687970854911612757050 44492223768482259750029254772417157503240047374465069248023300164721320189458236265771346309015874395583179965147106015103976396298943008155118955333776042175178281625946691401900214793078040622684769657118710419872648856017877215045694904635649862984902139411861368309168112339905641444750224913301570142855860824598949729380767952906294187159557539597778070140556661029987464540998718411015453714813358098670254153160088427550210072276235970789463267126950867267432243517114231858768786925408717697681447346881004998367733720517930392758438976510810633965785669029206517407673622564202075306732034356075020610163621351889541569381141849497134930874899908539299843293316222763637423341847503583454442647448248433179326141928230647659086928501907480121538155444425323657495457799524192506710584683856943915556441780435480480795815458976265433524208278091765817109526609769637018475083639637948916105277611350658661400622805869562635168554146781717581254144815864068060793488118796222420431065525733359249634079425003251155050474026736611846788326702170701463080276376059271700654325107043656102510666793898839752548753030658145285339616865900429214476965705887950353159433636110074194645797118085351321082726662273735093647015703831168029208698130777211147130367538888250874133503451396636369156291645035746169117343357581150749516294975850057725236894300764556868562237561800366768355024927578189969480619610343660662632692765310037 355566236253692065592050617391310579546299083195749132196345593442219844845354731727191389102865057392666967985452582440246386052556149152860847858338337900427208745016461410830165994286513777320343633929768578187628598516854712113896106072858710085400297619194521133874881001789374499210938555999953088878361088159067564090605446811808681551980207987320609886124508152383040366387907465828683238720266587637783545335992535635374800765767776124158270445222273608639446730846258438115385710878780973960016356570849038215374556623139773923092102940632349815585317278343112074014315636594995442088962182567085294024332914493688197207685959258951114671334386057658988491424707633375693191259573493799517226673593347620596363861700583652342885543041324617750517145898025183106476711315118950811410508680145103271665117410935626758023219843661224846137542656794629146998512687020394935847330986333034579884239355668394134965376388323091603214383241869238553861765178175351500839810558327691925805183560769373977149029544405706547557161211798619958075763561744660525410147305415274306486889895779353031186621724554140121202033350912228220748803900137243892987147344198097874897511520435295612294987877407923719861464233615210065960699696228222145251228835664953157810254475959160774808431646203476369400073719921863583958223961228632196387563989346927892903279084415010760729449950982042626880061017454770716923485796853006866323324641434274 2841562421219700589533934622131477558989302072867333818826589702461487337903569114566120551881075075187878493564378096442612063577435723604888497675146214218079738105476474178744135373993762036017629957562748704942323733418660565801910205149768790712479137282215536441491254970588768289487059415283837059314178414361575641727566571960296145420218215882685576162151830640431841157585739835491211925995037816209963158171594325855136935076809424159932325501261660873463316977916712522746623452808120926570533229094049346206414212717062154539983003258111920171304181316789750059091475122250583810528537424825533473541718401373209764400713635730492660829081373956976494792902197760105277377259257853938180384041587856343269548390951079398634625454790267110372489515668957693483612205825396988294577847583360817854188668503157570229312260820811009870419823591416097071963537881845209347525820295374532990090551395310049792759116577844389695012940396364267270051659554153666217988636920297169840970298046438291401461777472561145414708911992266902089642353370173286751397264099592301699501012403694308140653110984825218345730428324807757053915168902096931870347831703991730474906829738943941918338305947060792313851718494262953266122744201662853925063284705995376902203858381555417702242534079741274880074240555947282123189426337516568619472304525261758447807891085224658608530381611215714767261607318080556047336969388674182594534967970963801 22708799226944751816130507956190888687342475843010097706486924568849842087913211260902045344284877749457656394542908860002168405725640214828915334621431573308041511864874739344364099108012582830612577161753558475192968931420550202089275095035654490554486703062835661640653570791324961305013106090050832579847003809897133902053385625424425313333402314839887112895975948068726441306752980428811218613532108778880904652585004795490588820869575832650153349398833225654003762334553358335922554038584105078418501024235204319624196526759791091917613220451618781615201793332627549867436513095775904871616968865297606810564764214596467823703773233420845613257740473274748309566859904117419342495166472189020712100823494026607695494050045838280806493720534140983988112994721407896997576266214446139431446901425915771833292108510284949573301914612945610989725261473948158710943652617517698965472734513286098645771762942244746790599044665630100901202828121880041403855514195654034604717372292581389130201730647766209575991171797772979523913735654165568819724532072133302895184636938622914735825271147554197559892144268058487721362478946417894638358053940936516227575910404590040338002262837376678483987478446378024976488474496659859895090274187070537753111528154968898462809584758957789435813274155570609439426756194162458146423555818209512298573018256029566489652010851406323902564035266290914546970580806205103273028508653662908675753758914389092 181481108807851611989806523749590615750124390866014098295033926800432614292407269139786387033353989363120810763657629799396150462887922729781916668258292586132407498236535892709723828924112308612049253211091937795155885082902477311602584571722170776953181872756426452468959456054850467892811859898730267365690407227134345128285164294409878826664924817878926388381731810557647293626639046584665382645449258395478822052083795473424403385624904059968718002200273785596607922834602726657156879015614778153225348369321630613362031676800814599026991030908402674839228620745212366340905841525584672791231865322292008052652223775514114253694770077222954846085721166297904207252162312190144813668472985905735528234467241045099458798235899138781079892421108806062177070768714893873535819811163339678098779822484373246335321426811182366286704189285123788057626816358786877367258403637282146485778421588146186266357037852524858836908347940053379718167753947188304770410136456704842277813110275060732871396247325050166481804765621206959883736360795250752821433348399890312240665373948370191224206206143464890068672136961952094539111809341285635211393062651684729906272579793647660432519527601961389172282563747678509293663664209453823436186151465445138831585649805485209345418819779026970627535961175947437207235730823575114781198242297621108919484304801722758061286985010658161389556159683304739179494802210078595221489662424961270907654300679490801 1450337113684243263696283741778306340559954727050674161080698405498622832993995438195541794374835367361524039678528130212237907118578859401792943856197401080429001239183302497352174327863544731974500872138412087059571452495235084887619940787810182445673001922771392367311322768963115834694499929286942931834874021255701971489525921721247462566118912732487755920398829483728006598584161714106125416538441147459708755094896544357638212003969482065859592147212424286324435975338216925848933903712130312560591915774888581361027817452645623596115095864487474957167143698492815791041807650403874088349355987321409300214865881620272892555756770525596913302777081471016581150682232552466364441438337924063438307153192584499450020876515680853854757167679406024856420183527658097075493956753098414908972426495218067991653360232253279266707886846281376555083100157658914753673190586374744494338908198856404714856164106911175194096596305655761147171622019994607278366492679621292374864367377175789402893250982504609877398453256880956238452342261076240862577050569426456578079842627170440594135673088610083349543345127109490308642011867342115672220825651360398851299680880408592147857610704844027040534589797334055229626826388310671967960291219185861713083871218995419578119015221402825715205400829428457342296894226206521026480035866519196468661372455872113824172973973301511408982839357380415926428809315725318825151951356748108619414455218070613352 11590622995282861662928781029527602433781343537886158215114675418031528495684147914643598307887720555327144786939262634966667851346913935993558695796673060547642413489100211858288092036498769456397532969294855777082389260413487772039267499321150771291839645420613071984658562248856947675468211227770855888856375803532388893874498166321244605125644547257295240557899524731991849139479449446926584727304236897082273369179885068171484343068239605759925199271027574113628058487228469819969121228907166764506222739317062722037335732192887654208240082099897923946978475144773715935618478874843066373658958318501722016762520031592935459532632669083349461621130349554379923212519439309890494896643142127730759986237015225552321594728857805303695209224124196275813372415318797785132300224966588415544261194657017098846260581822029136564740434741811303605766788811286390841473594853729782843210523599702580154249646108456168674755503439784620595926797067572998921802360162675618922158913408509587739251916840573891870871539525688131555444920116645654857323175782446272804755707933080923368909469874608497894135492710959188769754857849523804341612363533138538018262245305704597451117767835298309356721944371129995257122928659402564898098046877557062512123770732705900105447182387664675856560307436159936027724928045196038403310120783178668200902176932042232492055702841202286515484262840139776647095705956535766341725943343391451453551759877469524833 92628553400293838512363229389718121554994922361419334090356730449346126549864281371984006443731055107532964887477701048022327017191208246083639209181398083705703743615044155586428109166525502122582091620931078422797416336820766025321270054734786069040850676007943896340304444480958496914214783220073856615076451605436307977831495641849685936883257377612475204013615512487572432338598989763488267239151988589923231314095109906469412131256733244340659013106569356766746752300520018771582916145211756611877872908889276534313328744590695869575165846269086780498956667158080845517487423768147279831888824761376259048569676487113919701710617572752565723811431102791580439594063218202356688044782349034984685240342005291745631386264013993489284316888426979908838881949759521405897333545387170690657423640131551748417173435755310661402814754470267914601492521685972600202596347030098411535336372488051624851931540839519212543989109194217497093354653591198428081819887437880136174717542615919495094476079115015643662329998629573397241690483271764884969123171455047050087911207989925564536832433515593727330271064672266390086093658044841307658720043840226315002013352893293302766874034462393838792475134188093594588154975912739478348956934171806849337155770213259190580594213281493325866997349448637193152207909256573386668163717957675686076002647466192314374879028880413629653879023221999014442092440740303208954042122730056731229484400503395654644 740258265777741732754437630756835110385122083831715601061105746125089275103243813880968258872286465259750137335349442437012793283996784291282589117512553014139698188486952420286317918197452101001508377055742397314677035368794644707499680833771339216606444999126801242952390087876858263434198093715895137967392244862797929698233442302415068351571358368666148799701928571854821874196097245537945948370662901510638008609181713167844384661802479362316702687879793601807240078854581428186984974791957415713301956435158982394047001135660534187938632629735231483100602722255019019299619029693569517951339290808369129476347026227102557166619339099111904546334745855244174016738015775076440466373717634214542240790174336722965981023374890514095586041229592684951751656848461630674353638258419795172217271103931667033690150312719152608187574024375922940642074607493737022765569219900287185722074450771561357849915441162567700629629867140743982228029971289443157741766503435121256419810778356879054028320575330612244825708828949845462296034372937282930680356296332769565277796369697478511924552366704140917815373002425210259846826060842544808403892742781164299335207684987800619717131435599913206766617274801345790709566813966001694914502440501054757811010137190690919746293874162485738327607141258544554342329675995266269697956852396957025224569267928189634925660634451970753347201361496207961306276297758467769832995989838855926130778075039567927467 5915915075932001230400083660511544358793533192558328496198190649299300168696760545031969788577830802797854517814440023090075831258682519094829854609536616681879650652456881813918282791942709016195352758540449044051033298029159254045277196263038521204176786256444451237355051571825972742521777705358256525953043843879338568720049589414293965464339765696893150901362380512141011407635689238724080328492906056360011286528918215563878149644355809913694724973483214290534270815301246936904386258448138638184668142309184039299459657078742718696013521256259201075043319496193227833561002686050434523476468849039032741413389440818499214966283705455920299730177249596857218876589228854850409369783195912950491990580748753553390447505846604767947473552924761983711575345707736230148381097309528744431811638495507848912041338192182140917802445181542811983159992440628835186797219432789430344782742076738346782498659080618972075366549888685325177258188785147706809351297222457400706684024341426922398885558376758420750511972892420117200877835967468894163547592598110403120561238170915156536437137989101983524946358120534615953715527535982115892839896532200011578453761873945447082298215683258718421176471409128303160866574452508241749887911671797679019722535617064277485282367086385489319845083835086689514445123174042163115524118541367618696524972766829287161787313196318672139144123440846141840823027834769903449019180279976764108468406076646578362300 47278193946840136093104138022314435467589560508491655771015958628164777744240516539891158800536397876528545034593122567417517364569179838924581827119440972281245042835893127838164601725849806152666423995635038345552603103182009892037732359722794389682665001985070447557278617258728465386870565061171198295713142863656792507526418806775251768805870951895624749354618007561466222395633689369839788899555337204246150827313318714404132736682572877648142776275965200716536633664014963420551980500129094627234477030453671300239691041750402199344031774387890407319425774984233260350418771439617059644406159313291263800614763054697260667158774897648607133109522118730370628185627936378831725895997987114922582410579294113082926521873977399235388570948487855341143473042463142593305212884327415428958781779254701238597652470244978563888983054704340878764268742159787125708980839810717743567945536868817396209727581726349219622208407608732272418240563999361734382335048167259645215939554165850809526991058778982365822121044413596249138934926691542638310958467501290590634343504131769107585987483276681291219034578023430492147249189597517360637458007396184860586381821117471323921629413449762849123529350581840411846147323601576590403800605930585953996217831375966442581030833880749600086011946362543004096108562063977668295768133564521642984833179927467480533633012763891882502393938003864863208124149503197700430055870300145935312922041027992450110877 377833190730557920421853252196835109123187110134800793974732262414135313187386938519202840451607051559436530520496032991294744442693625488650247839832601797063075794160068310538266068047297343311942762153481429674862602930891545719659521779830093731428357446485922748978879096665932806347409669089114472110265271399619572698715850323596228924444277032247047013322407055076459304881387887113469636158812044505550373583372266002694349487130155962930349410547466518019081992990447609591592719112921814066556760896425796353535015473610065929246779904283223496806446727895707517872706125689132169844308974529475118669388540345297841440159504934685234443211061414183737337009399617146754136705674440920085531836610849417220495473250758737747858399585256336479368274620848891222260795479724074694907286724819812469319212889666790392188696387892600459123057158097390534875417514457524443902902094730244850740250382712156827031673407311394929771096831348483739061917005089024381659181193428358741068736968060849995577576775732739057310705710722366448530634317620848580773908468070618061109445768032540628791992649506912768787541017504286294647964863836200837039712674573368176447109586750997228722440605467035436028809127635669599100445358376049463214964612738216929657628602368623456334063325984988225503479657188363184575787989774954970410798573874987891601518690930561961315910717055424602851289017673632000689285861531279660421971969473297303471882 3019531846709031095548624915432178964636038071314345626655756447953644874370721464837805708415458432336684115578501185510553080610600617230319562132096091584182032083656288161820551952470251245748787093155729858816066985321872125994112523369011938581083953502633944860575232331604626057937439696182940136302307717151138599800906954351454546941292570163193497954427285768487200654368061771122173948622047187521022200229042579757952543543404125840738122622546772007205159177562951477041920161957393436082788056246193368623867295071845234579959827695475960726362413353133786705374827796719783074795758026783163882486903770811302702893048407873497752592794270904128835703417056526636283287943861709750417251877387268433568508247252553672837862029302302904970941265574447103539912659446041334791966932872773421615476467643247201382903017213184740531415776694286575909520861723539780439023190446911162516708730607399166487977601079419167461447986386629717446607607043244760523189867910074909857920455757442410105523920943627153873211642736756665923396027237729424635002563374347074529700874114683294908078978265832457013819405350959252364315823088357759839708664969057756454311946612770337534017753895634397036396093063999248408737353651524772868624758217056003923921637121378537930439277004395386875500990135107393178446083027669229749047876214269812229478391206444347684169558545000460668489617238799489421946724043531147130561183016974901197880028 24131226906542349640600980279436830407945979482438485132920712785111671033314273024604862595684096115793105567920975563403158269528062731481715690694845085167484387418162803758647693451312611467495461915432678343493241107835505854111758613396702171718265167810006039619862805652218483673744219190975082308145217716062831873307952344748844134475697564904278675553752847497305871267377422096569539183524348021688986622140259853334144290734886651758164145413479542119353615508999193252426346202470837736948869540299315650158602268046393053920839358812579621253275711841153413759599382493867850403416946776965127009743226136583727089773455091264371147711686949204307847989061253908698787270435820024866131991976237204989626704513981587092379303693396811758498587235078153955426713056579956793877841597986017507041081109762300042561380562008625826954398920625632546075071388301378265801147532425382737612964736080143428949364001353942267868329648702147491928184118333027231426509185136079014234266070031366329580050594244259129188165077004089769283617518194718097393674370721987386795038711851949357706172157057274720667005724390745229752802729101186681192551627515042576097238102692650281279043086239353007959442771252751248284038456702952281610553911190798743075836606471094970661298759531726279287847541611104882461966888889873302260547921875096661209657405957948357322880100505064897765893701399174344414366813632645263739090036322800449375588648 192849924085216676111663188681878436324703912349435301387944909275698335504019573117426592646247543984971976724631667224384152910120942525129800626353834854489120791142465378285990172308953690078832533560408271360484431872083951861493346457008107763100963657182588499570545747135512399684540249872015391048388942380147065099247745828029034032591750119499027920423952108140129806180495467299638706367935408896318219053583895139447289570507744805520453309160228686895632670333181894410841684951181668912798503802877916371031031120569813958861532224522450640293045797801827868155534663837252766047846556226380757505686088229997860376203858478553546881608340858545287993899143345625121264926389234859974707336997804969199367100940848554176625184084144506976387693323891536341705877851800787376649580024155886336031370114963398978649897354979981238545042971369724771513271252266426039296564486438404219501955172346251831620010366206998412537355817073236279789351878307964767975126113368540874614166912244857757089413147042984192407286091688229293274460018531658664906896626070451238490119581625652273638331685448682934193576916689608046295612286998700056686059514862249859267824403634515900827159619517717576183074522473150958239285037598873867750385791594954007373019554254073389499942296200992119313881137849813120415314941372944785210332662708865814256470572517237159601644104831376025506056667931854112263296085046072416325685416312507621444408271 1541202911459971790615871658982836389885229467433415200746287614048137485625727550914350671441195654436768808845829870874616682937754077357792864854053491853146956869768796568159738447152563457041499513072459728810082038960300710091182093798871808185322030131361832064108960401803593770679326214497783904881167081366667852806369794450250781245145309430454706648915501538905922902603700037487722507757410763653517240220211300277075984721617713525413647899878027268562364085255266950822214217251220588663704992534927213972865715489867095149944888586005536930510975725744552111273337052668908409386701074882673235313652406763456065606014834551758753732432204058537914141593010545632048765174205566874362591035501583424786954928732841881876234825464904712685457899174940559488917085582594809412567710529243250833744571636445183885890476678376928288195433284852561288890466154477524785828481100096226503316708296783349311926155268664989458297299864557346855599820172224225202548343189518272650482539945945140290791876233791492790906090103189782499003982622648238326840441866182838459930270369699024998480981245036757157063506310654972972720936544953121486865505251348408733188390784524827678609193486212818904909004465056340103368967940496498517282148034084624518090087640496794895784206362655871369285450673480177644720989647133992023750632159643406121046417709734718506381117600498609852329557624767626039655743493174849049724255863811655617357085330 12316872578614499728755320064729194454700064425463291726584834272215063395352568035416862515686981682832338127678416103111725126550151091767297532209912064103444224304055170884938596546064848432542978606743646078777122082199505863656720638925086043681686956885054538432700034696052788384093428356308220774876289870058045388304649576738235721628812566271069633478802392769938604758517009135040493959613506623003693132886741936082169572554321125235796392054753076712804238295078235447612217212555221001692617286407614830342391171445673484695934688593177198154047970561131973728245688939527564963591849134954553503495686680486891371734310047310263253121189734393054566234053234359992395068172279795845801401953586160783747924580877108395374876094757580333694647526499379298660814363746876310248556380617821725593029939915795888444104437478215071765971932494682712427538800066479237784684005590817444232978398756159545618838393136299666615505254243536462038986387085461300343528848808540512747978342501254661421095627599600908152148525257581310769432389349708295820470763569822027404681070445472061154844537923927171630498763851963981245382016992977898188601697885156777791557854763362233912482795430013152636633490522167252330270225570025839065739422905336743512012377209819248526491617922173902496663146907652510248686193951676892757178524923846261950150717858228671415858610253475148958718207712896745198049044828981648985638659186307250567533015445 98433143633477695956966099764729557935556408509889418838133803850674303538182073726887731425136931066583963246459054147991186430161805749221171475499966393837962204091053645633383692601554982914153605049660117626002046267604230937739837456368878995642339822241039355279093860930473668408700656763106751424432152011184396393211505816189908070437805434858741521576970122743570854091278618666486582859456198035582642686780523841828664976616606120289895728479642373287618377385747873425574072551177802039980730704461839629461124191842749718974882075895127676771094350054967952227515336147091782928159764555379151329118703395505574274404540010798979640977172906468878506204406497625061909004620916460458455287941568522286048100583405789793016825794733443060418920044426548546134009193351103217053857440967378509552304973004614301858025389546826832609816448831845962028971000332850431523339702687984245781490020576445440459364968590734701227189038441629042097606431552163256089333968530786248535224164923989481571742064746878929171589062121695719360984188924550405885397390785486811471570163583677226082422863384554512125564007779600247989605267836843987795539994509206379556538955132825907988309748990215218562679019029155243338727991174388108590382299945355537310606932337519863890258677932494505746680095344069610809011043467932484783784721564584092026691701859958238422086683389061175180304581792594424838550135726774420631166235383772009233633683630 786651799709194382824659354650252575997188399486254434333878087561192265418747204441342202774518090988370243017964362543361800914683988609224465174136603095368944033140483475791570558507685822063739090683850834757647566804135855714578393850777330071023695090767396621970465807457055374792448527380842275897051997926091360495462024843672340205729066081644396258499366323139113991592160572007364632540194861559077007088153306030678393694835115189174322769907793970630834212331987449963042704006132480231853458975472810342413603050903102522533194567481653870572436882207998106184531629238997504536511464219337517448606990148720412227244944120437137405927186058629852987716984503458121173843151521529009260664353925396797693848326410109780783286184337627417298144154972527662605063699396491281180048772235849548702858509043694974962443545258161745113673990740697623455127062211282461238214648961166458133651201071869211325794285838157496944623243441586294053528919310795554262754484406716062046649212133851431996672278523949459991626936229465587209833126533927100507571528982781936365771686269328947912444141046814139029949173021067342774170602060075958502953056134641425090297337648939854025275600800536328561370851406940822062423651060603854753726680733968896386716784633078825484150779848006803540746601939350752673299021198249364855044004174898285595194141007828105972033072743783464493507971162613381253069189753200963406846864505069691451006483336 6286718351172196253830320832650441329729884286480631102172009941032504182427195304598622560733084324655242569156040317582951054376201155898697301328846219418476204034632758937960315009222456613566824745687360565422254967845553603402022964908334646582575009233731645512275080126494200673158848574442587995261108394559579556793402664091832179711013594884466053261994861811634864420595239568797039509319322908243270661695691978408599866125943129701303633068921085071596218487852401585731956336558423044932094125807426662449562914425749186340631907743225552445536031370938834916631939102341928577538690020876720127592669844398825645205403778182674433951941784062396160995684999683652550008767539536291865210441804601653640039810656845872521125819936943744863671178441165432729498965655926672682124086700908840755632505198727831644137629707975670577691996073412474360574235711392986584774641709812598706501690088491934280957379842471903948560802816440965117457733667741086530096409464406362792508708024058147994308696212708566877872440342937924185464159733654004899675530391441104134879914049761908233194541412105112638231144753767417915716850447230129743709670751827291859654137804028196204526360014017477909197135154134989470113288880336179240408761340634154647699690672392282386852748467343217984270371165934809744277745451876594192353848958055142998817401660044920687798436446273210469803551312919877943106099929084877604086950049715181339529341379932 50241864229102657661325332824214973301184326866017122278215880116533077260673752966835086949563848555725186317913554540328472099272471952564983559891798720851584149329068219588041746259394688382000467858961938681068006840275086357350755883028724867481276168036232604381580468793203988317715026870904002315578506553102395229076595973077623486594101580308319085297859358520447921996815831774742682725183103350105468489254085998723573999752426338921976621676259076656066892260687724706879381725363003141404499545817028418215657655226279337820648514600763972986030196599213678603494117515720621744072074642187933319393321539683842034519335356456368448378480633084215732272034439854596136621885324601668377361351501844979687820998287513083253454369805295569067055287567435918401339580344756415648472867706140660298430454331918404646938712895331929866113513598393553660725027839860166973699764142017052450612087363643923220885621956369817092748737631566918258282160787973140906613053394997651058934307646048175056531794166162222081457584670667167610910817796022559846116769013838674226500363592623968309943503069214165465637656804645234221591309401586396071966498319367753812110122479937337961182763332760526073608888871509188264753645369166270574450706433426201535149536163044253185948267941038585432744840373021675272023920361019455264264284961230822895400701054971206306609396530652518257900876172564388952073257015576136424430737225539989751916022990816 401520537967376787935462815967553964428833758081311994881283819699076090456213554654244317466003954773918996277650129550847139953819086051604784394839544564836727240272586604108627635016152127156511179938655717335577630189207796907103995915206416322434602888511892422119508676424051590695239231373025488548801502987642031119543169353468978747688217191248817089040447416855880702401943308108112919451439323652501790500889659313050272800554451871477747274781830104096683198013923781905192259845504326243171986799487886363348791371029128086129674428337880106650553419818860225823024804377518311827898831386118191454924564232560051294069969039848963323087075861810958540036862404629780140422923515171348916418873818823330152787336629888388729151065618079231856701922264446085141636902770216246438429225939447868207800127093101941660574485422417630309356327038134188543928470243777609063809124390215233649164588325068165868460438322671678347248774346515909556794996388008832171342247782905691016825835562855034087888459252696282963020438974422592992197481922583100998938192543150679363650499490162021235145966617270456278662169005128830307608635561035225659304650500754133588719027130441261196239080019581303054825647583917378865528861002529606255376530339680205622930832511812652148532961486729264786656079797951877245234486419728961439086379403853749587600396058190189292756617765971901887541776717943190356493821224302178570348998029723293496910030567608 3208854762608385177811613125020306182470308033283113335678890633563645092048212367663509429813161310478880959863543137839721557138894894248235828829773436748649851966343424375440194355886511079727501854773657306085517572916009302950140099202482514771363640503924701530743790831304836733054234287626804086862809640715135350010875750781580068048138856297596133067007536809706612233996390331964782634120682816393791909917705771109768217576856990707859442874727188325017127566424197840444930603414585279855998505119323500547308568714132703601013463954908833721798083871864050654629502184044955791459002587835758337225893826966451662859168525816434793475351001370452502720581838410729344963651456711748596031787203996658300659235750580095458417211897841706981303145652919248429659528957454576730909322108955074795059985125492102816055562836581763885095406304669478397590042059848669584583021929181644084099140573349288569967550890197510263848781265505912707279855972280269026468315125010562818695892435023339397951396036620224378257740150740488345445117576283540483278840460900861870580568589069632498732014766137459080652455148302648171334670527671856997353345766832801323137129325448918713076793153741537739416671911510857186278109235746369634723407383184177452699854041336250515550183129222667471039246749300327427293504991007214485898808119519023100332072100850740132492885106266715779191378375601087708432545535404431530082261683881493245139202216176413 25644405399083164991102009106578197305383370659574483543039146426031348593499472155707273951833980781934577927207691139580453059182352244285768236285000025262942577935003764794116390484958774885582697029521258889166116674589873606611269430676691246596125746560996402569046619819727295000758108564379410376443797482025526129273257269238399400092181232538601935427855996603540519500479422368533359585950066676417548448337552376669470200909046499882121131705092605248447831725118526765692963222660465724887515746834991764803318111053442450578498665235321622999768995224388047352178397275298059375097381250382272354947965502487148894023895799444078428736008313272457866580014622741453889690259166698131130321728234643633972753962949041664101864861798039471667523056978859735560524334506336955295066611012509652595368965484166661882706844167591552129028715812153370764551146320935961147885982254986050494487952648351570868848212455257440987574391631593714902761033627141396086741429583108482330654899510095445952547812075860537934648104593911680847854725663465031193263575710592546309164074028350246098469688496894094172101953896998840719919763252284811553394902715172542186508553550572550961339795028013117344804528952370265781527364419324158330602572206401017803200604839511999625184909053991369362571081459261333355317350753503348431447877785345325133155546021523404151923928134561054279465543144877234450870635394577302401753490374357602225431192154772916 204944129806109312589855249007715700918373362128360524677778983718830543524256934653958832344220349585324487569646922812914272147240598355183741692402718060814068771883377524834056022885021080045166242354497919085468690334387552888738606867868150913487766738173375690434555348483887392946399920147409264235486447194991531882566998528354713221997278561945874448358861424918265250715327602643741718858137766892213085180324873179482773891263389784279699687266135232566590202248057470093113583932137426489326228501299172609232269546432421292406441874318238392267721927505479575843370490702318250224569719683262345566276133205115106190628558816465268401785816760381952351195706464902246347109706001821366507483551146811854042258276643461921599123602381855590734023878441361628638456306017849215075003294032843190340283525863157803077252876057914097262622021347577848625530198594858330903973124285558883785239419011602094849270966179696284450831074715569589842118181170055062448435152805355537028026611787052960810653812819254168119223618174391689775754602579646649884660704678889702700895274604738212877001103679969089890428847535506593761405404246595514128940936269673167146561903301272505005727179446450193539243870228271051087450686599745129619970343341717131968038484004421419790260939356443996670647780163986568328438275623367262036239204475076565037066318192795325335206175176741025548664433471447914074863860784504394125556232248209933417972714685398597 1637866910873374349843620697877471599763312970662986730081838177161872582075619423831015478493666187833300067346874022093145656940700157404499337038457689331353411084862354208537184531249660134422521684614809304181060480842436026914505510178054393365668355288430884085370898207778433287452050261488808766019531773005022713365657255434405569235052346841139165123372523860761266403479968553764913888609961460619979567911391356407537902656269762630799681397471030666502856253480521885535357077818757863201960271811146184470881113511056632239176038911187157012777917922462901125159017618598084966983360179298944295800216644679544393475246546204160208751760156459244393001614558035646691425927846576220114518137097536912311059018409019363634928312707322252058747102166684814690834542617058768326961794472237322656238568432972875637587063471900867943540670029723071209878003973253162077935154943623678044364867946298898889724676725746538430466814576405151312119297053309422885807791149138374487516850888499762193354400807303512759728071836711620005590395159463711360393740131563102142044122400803329786443019920506119715718775619537295526017211427931647456659083142890181386615214716562318730119290855482763571495109109868282293359640554119231856799257435393817756956159371143924732943889961123068727959014770436242530544706321520980421498198008538970884768339027425237163386711883888235316678661530028143661944067463214885505964086565357410314752938971586465188 13089468452225583426726732402534967393358547833408161745848846332503511449916593387368996496264457431730136492697592893263860046747228259041859736567380215431510093336643184878149620360918954990273757739216938714826182584447593320244882209324834386877486738668452495780865064190138621059507678607898941475175490490850538006050344899335614267294848558128700941890054048625267145935365212526004527487635203064745934990744230208677111793678553027869163207769346086925881823941282591565628740840351810189958299437404138730277478578009870337457911304426607334438131645989393429725599116629584969671711075607842145676223469687298373502864919040793013072265373149371021956253738604840533189332895255620313412088235327975231752949193020536068526806802962171067660171997260288992970580194420421105166345591797901392185665657680474765953959864426427817053536647513837239735011481422765360358345872331445823868216546859344869734336884558907739539220329737588056974436780221953094229501522185786953537696535393352381174490547909579834228442788777385807001734524112234182015300831469985160367865198715970632578939251348828968324689466327133238502469712304394986664999739376802128727444449513259848341618385642752406164950230297264923231145854699520407780173667146742756355907425363439063471414973525248945268308952253902287061893548143945379386361939615561570469443209180318524251726129624375531320622020725888645534459742115827338989811001708043413323003632485341672837 104608190025267721594161144947274363017361687395342017377593812571398533313136484072279262328405693230568111000042020055811555014878989987699905144216222280190924927097031741865125022474601099467182446617894810601466488350746952293376725620802598030444661542088900922375976798629329517638887794043974419380625622444773809699900260527966468254154001657921410301678186122384412137384398806551888423434475559898733671943758190953055866698047156111356454783276877699776533542304572585603328532544501848036598361145755195180528907061671351191465733915191785133717501288997460059243853108133183522865317646951297099353500178403787306183359695018816819401207115940392132223642971511667288085087507334584021862949411909661740674805607258895360477815331121510978595548352432962582400999543293263671599852399912403063815465748584035624149325503741552971563245539587164376264874269075806360933016581312074715582388337073895952039529013858622843704545581057230995342546331794040311703671020928787214963063460580751569001697136534673515875128758897123142602940330937006922229029589106390531078376954147846447128516914982388230434968585515444680891951555017589528909176663658019503282910725393773198847296737974447717128597547816837228816581546464800928055873275317368980740616630180093137370431404250151351652037683110874528444740632997849253721400216238570750418507597395961025003234860585425377578940475241358655594704392329407344297237736293242730071816430742389956850 836006472946018235638933115819679771593974431728370496540470812924830043828971200614170493098527027422057394226192972773075122488384183398186553104876928303238636046137447372112964483423587079672783684548449731929935787600686358299074626683698836912801300771210396997145916101802950018180808755549854919081137557354611229872185232905617588139820564028763629094986178243411691603273883565714053622023819308860113948539178407738305042892681455230833978253377658953260718281927525029132010482232447055970888630348999368882864780299260033338025890427921834175777858315141603301314176891470803679787719569040030030540260115640483694248431440160744372508087169907170432013864738307923891246421679918477583238761712757326361593350903297962157629415060386496432218633360466546067820498755757759990475660214970487034475883830491616338418157538462559472565568224366481616066566702652069987802764632862564615270852451995849683746577997993096656133387430164324868433290342855735761212461120713413212383589176024163445543743127493756543172164765068891131612088011237992071622386330294166570780764356687287402347998903982066488074826812170096079179920481490239238059135796177269539959737837451781476560883857793475882554245767918147433393325167867178666804998222534385454505352645244685248281284580845596746862890581766900917245425595231573293771561509542641250340067512785098186827329900492001653183354844510360590936899828368216368203068971204326074431536421041997601968 6681190687864000403808953660301232806356246930719288915353468170239820096074427465730598963427900846220615036578958387355532276662291622542750910207135520678574065927839581465223529294613420383698541659353347629825236596743938245384828164788363859292018571922863160163997354141323133048373939996401185201931457747896862172695048665749062577095774666725997181190940113917601230319670685757934917452012332217003646075469220961698611008596694738670840481481450827735503035992277099527319563827869387170820503289702196072394377430790269414603735379329504504003603573331028880524157017667457913501533041312753713072027613634062190312324407986598260613176225037036006651395331811463011075327546257020715616344973719283698408212596716420231801934086342069274437176692368778912481592692049764028185830521445826600832552446693751026234986689889991884230238533888508104302019845632989472551907020588709072829034255058008333997460675276961426044854947371692350585027055623444051605765064171177195449269384162100096937518990680119368152885497365049113315644770207312403220280396149642729184911100255041632149904051895507783189484560245710361917000811669184584838748937110698534710064950815340285698329168461663960703778433098266523877727631039249717423507383125321209024582041664886919494814049244312161907272314523670986428537079015970408528252070588213563778888829661685777398195831276031203197468475526436389322443568211946221710227057429344290414721490430947203485222 53394726792395809546034491065613363950277538754531643481378002904789126990758820457997834270295572751561683829806424326269750219681355622816970894837828196713626055862455637976773715035051426789279654539905082296208963510368074516789345310621079646750631072641445515997663683147268256400283649526852245961795787584450921586226144238324979991907860878566827397821932116130232201238947150559416714944900897578444720600915078360115462153214730098245809926108458435679000819937458290649536973895586641184292670270103977274793028539606225200728168742357380671806584586580666696906989381465407522912260965172327192412235797891612517085597876703034403251015254512375645203790973124588132837842435683773043282359467187119132469698220909625764696545440718288359927899036651328236560686942032057929000960714697948994452824495238735874838120619059081586623286014484434776538635522604236881236274055538463065932211734279818851744834326336133686808726656387540738602652411805530921354048559818906961194424295835778158996200824631764769199386481051374087978506327406687183182194609876211315615840243164535398783706200298618280393327854775777371973710697192532182955548677365733082658532278482426866764609805181304653935345966381434133564085519769888521379346491879459767419119197924997196534477854197266099910062588316834907962606854169434995907267706941792921493485664538400471570797781482428910901368017180777006264833263032245166724177485051864713072077126598034209242984 426720143471514116875640320041489895950845796241466427518407751806051900166237318083937902543242103525258761123281124350414523443586607393960322606828669073271253230566431933404045189662673075697523143544413440641823829323868913887308497616774682939475814298178157563418201876879062228781627080709746483872475344891454899630691733237365516437171774804533516244723913418969991346606834899283362940298702748535722325012865400860257547109535577034193509096112237934393601246989825422445425872030048263887271326436073031147375009171053198561589721154474686976197712514835023055902439178283460178070204521764972827845696097524034802527880705836834057278579073855145510722022444000251602217198512345024842950028123801930429345753453699504446274664238720351957954710581663256499584347585050399087918113630431317539690706992131895559843090519695251039334822406472074211402438760715847722428834538056657345570787450919912175833781172267656770372876663774223220710283231309878677002825366052635775283174282636616388088095346441499657967498278558871241065998476306628636189663386018087291143251074616947022185568079512736590693806814602088061165152685868492516648598561640347470133426279065875109827435269522176673520432103567688896233626669337335561349521818170693842819863731505018298214225688691041600364336419020354812327949422848189574664740282462835486112676722571815558998905977441629604775309495431694375392721641649572903776105685821207509515421999977517668897334 3410265518404317584645238459597865760517544296978402097815550017928606605470972089041983308964804553298792303405037547295806954582358898246376450061257354354362300396616454238402376284925898739452776766375648731279136491336173095670182400532876013565933982016614296294135671716615328373412085627307710400389327101234873042668957135861905229024613671283017274633057078740135713244152313235824953998014094518452265003611171662635071799682639283889117294581732737062285110523510515166746237426829500974218110192483325149822068068963582850632884434702115782438549974906885144909116893477341629532513816249884523007135344728749510126284872603152601509733307992974516984130541642910474063379424243477097008374556773129396578621576271184258749438777599628991169621404963911537557600909204289283303510634280939733572458297086719250397741099546855466261513608871554900514682099623377660073790211294965415540871549065798722520902793713448092703895116765289864084948470952860159076124672127038415035139334304465113015819251051064732090737189007980456478999246846693620836341209917934001750735082674476866761737901491429509804387376056497272686812304250537428083820392745080637582512646834406355510411292204135083719189769488821044768337353471139342791665634114592068425837105958516923143257271192019849097679938035491027872775981989798736916612310279645023591709903393831032096232490679594689925313812803653680140861683853552919694560041648552969785574928650584196283817656 27254204909509572735175803272787581379729097463475532033170246032914719807328161461235659951517778639143431749366161782064097787993082531642777251690890891656344700251190452924517693729543071679635522088407806100231517582899143533248990283516112859983295922964203041939605308197555468773568208826837240378879926283014706301050455753490124486843976441432974376185125825629684217271664858546255375057344693296703965798852599174367593790057664596275255910137595792888028031682188427945018852940212452572850359648320476992275280003560414534465316410105069565491083632601867478100072751165120428130636743953284348010667328680466653716478691949658259645171651562847795103473532798053233801552727062482522967201261312700668442002938071163616138116202317575848775929732355775646439208573333887855927643165646051652721985008828407098227733124486976931557214358374859081070026609943080708212598127239798491362189576830404701457114905687865218599655713671335129246311729692602363189911422611786445014914679694028943682356627935861756372634320170114248982803646927168262226472156139994440164842991573905423746554610448670128127097942614855892492447524657257211007438581481167337539573920245720728785886651794471647609336837710163074957648379860555107486894072013535978688050451204708137196212440417260785053464086485190925387318088950333311363460673992366947224378768354027910743690734166154688201987564730579068813048286894615312620145009197953622424949555113530555156959082 217810650927425049343436179188901723904902334292753951980116882958298326180181619095968048277618806320474298021890688218933494345418461820867753041756188809091160796391534395112489623613491724881082294313828206322016889500521943247209490756240291133476217244240409936702274422125592589497665980752909192614041687192800968499051360637508057991243171377017287386019141664763601991138623599397977342514464471022710616541747385292275711422285497176961001404132496249004606054923897646487554423774470201771637432497683919986330674202030040548316538654732954353149567760303124722110661616916822159002288479110893852519061702638984036929706254095248802487562080651414992888754884664807644991841638012104224548692798272796440939301207521317737679319215123101417273344227172180004707067742396904947106351766363416180146278410869827661588448697751659057820617183902282837901005377635452066000492906743761997734025769544051953087454512334658015011345998587356415961660193152691952782396771389089907282772692694122828692965842315696164361962513483748610708357759845505277245275782876454494205588700017346611400375999186244888738725585110143011068158400121141989406302901300969481466599867004640298842762206542662125917412733573696505634338504457417984056706935014613328296764684466775364829508786825500553950751575444557097744035067147534203980167549630596172685544977066215014275596563151373637702578144380501191188212905366960679716334864838726006353026612402411739261012546 1740704218477532340635589476521654727764322897109721185210370495221140835823160336368460124446322442547617487244509945948635663090168628084419348109014694570190134924555655570534789700141156442517971346975825111886899704337261335910429695589578751453291267331502123461522972815791046990211642046286124234106638553771934438631999828507976135778923987153487636690981829937045488435224289239053841425372489278283269911396059089856517892822143557189191712531101640367999993895161334918250127796623535556093345752347993202715169294202332523238678173983361092197618948736533629162196786571420227270453019541598743633285572950931451846785003568737957152521790881039706491894952240591528694622901563890068337607438798016289021681400244736095705130492013868835595910509671354648953124455921794531376141603220401339395323081362384487073830850710054582297335495758587245786878206326266160342435333939828034613710307353579327026908732055326623454833998658938486101618257249473925622373807176619624234771279130442984635273405426822814397293149876845955599824763769903463641744695160033516013190374719591756410147522124525349391761131221291448258678082413386215537704764277484581760477151698752399864128410227680131570004879379106996718645957951303625378879189109461698716962926877051855344329689806992540235912988473464292326345753444897435607407685541428914662328734289292867755627638920710144858396071080518559478888324652356862394988204419711728464736056019683313158166859466 13911409126591899936245449805528404791463014175656986334304792677149929183506455147930568387455428701559040700310960326535222788524768421252773293835902759876371696220954623911577279848084667273910544238425933243719268554412624589395178085542308613542589660962371215342068542584031795881404723904082031427841436289441763093673122982371428086711508811136358448554005064083047595317116286617236971383214947510597677924142582906332831827586428777966538220487716383660126829092852162827370013385585573081423263103940555221498578433914224399510557027387938663521088497135107664225763977351133174892448023033533369042679871269109449887178470618443132680536607088587038127688462367967101113379789442652444251293099160825743381921417218275794881374842195674800770433527865431962019298535778328027390011125616022741045812443191550882317621463113735411668731163677583456987352556219378454805423744917827296180446852560831723352191598718141535268414499612083942063808072671169908720739613646084508071710661374206955035253934575167965025088608348183464167494318935410588222384049684696167917025725119506277345189818129780201397694044647332419119367565626230738030739462934081958467516020370254456160507923970359794586557962772186344984803257988859378995059183994712015795849477329688977754814241848624026124826968767022940974595185912865103672055595906679898236210742612161318071137957305532303180145661943016953793927851709974047012724335964539149890668764728250713978898494982 111177661946783998542203065675255999787477341304392670837160094641934620344601583237591531705413933161029787691633866517093487531983502812214061924174206775396052952812247145958733379269335015663054954978621186316216310903780606704297890657509403744349635601590738144688514986717124175566163885817659290717968478809061792055145589514714822384211238248637749986077300774483337859480448750519143398586233325981549314229687832916035358173554879711229413057276661122563616216391964655975598858023495640327019919888166609035633679470169098506463227252742236170001990210091598134074064378452135990736492151995665614648249905596534540554559869377999521937149709723274843781422827691968029333383558643179282185870755495209251439813980971868647511851266775505598601383553362813861798830124392197440316981955481934289946146412312588063558436997595532603004106595243728603391822940755094359147008116968671749366385022290467785034535799885779442677046727081469218188074784789579944241659243855788573887586336959571966121521804384965417453216237065947829789557406056370007101497861980845830159223067744938552925937833647569989985533114418837433894699211502652372087942078495857555877079560458532811192524196932683026769548894779294500072381475134392566366167875216298521683375179707395351395442615924839470161450675388260410073946466358217527672934118393540247463399197682597575945607883877082919633508201896434064180075946934649117124561807896378184711224215960130298354961262968 888513890938620911700091317358080539185759115083108524081073661501328629259181342755661240727160766071171721440476672053170289493273634027544823015010434287501428673646967792658411636329741950896766812447143616612187217329636878650834743918581902831916766666271516658602284822258848076083451887511916957226706461170360657442462055577352225243773157921182807271301223299012360640061553776637080697089445447077143488365795568792633766676171186246925473008467029638130922620932392768413248394668603821212323880742138541578040981271990159619277153060697244797123357272072810262349292238685671807372690939931381309634263241698998888083174704544531485946319323482559176155481159270667118037384114906183781416454744458365869181993753942160525248181275701026436218577721071814202464496566935216588034998764597393653268037017980209499893895213841380962099562972216135535354474837531282527380353329399465846171678635382926449179595845702073379927192339664206740721647477523077199198674397193260359995927879404240201808907103590598759887170249827131749762337590557917421931990920916772098235303496624676739742181323150904687478635593791811229758412058601960042725484148606239272793060036314364075233621488267556260348617162420468834581459362249344632318400116330098783276814153333082011122228359725060725643768446179134895295976117514099276693081017545060442219044844059903670462373472164882000404913441930233027331690391300514921627829028483579021680806552878569251547289605033 7100863734923341253600425468374649855266499928040481767813662802712704606693839164778000037516478071872653868944683819600823792248205018007503769978774492830193255720827450189724771659114282673881875872290268443485210753801447455230550916947997356809194238840728843384050890613892862834755246447062041548471257548135705634359492337195433680634479074523324054992367444044035859643307283667507579376948129820823257514461009530055817451096607425539432849519624922777254060922427026787666335587369302211515255207002036653710380510683555581717594570194911324651681886646289056160716434595453049828502075710469032142653060231243943119955944504824325363319313728751507593800438212534955596458545015741678335597388430429822157715403554997178010273738711842973292899176296568019542964215040900841551081145027457545600643507208846094157307127298659507892378543163025755951883692569149712332180238701780266517520335098117251869503947354683704809606300831964093268728101470127639642470085423713242909033004447095156962481059900187976510200446191769082642478846049333710900632303289712467126096699823539585559396042406673366633797679133889629857694024859333748894849175374724868357794797939447722709985641254049127256320242486961314225266796198579539521127451609524294935564586194848560198975845555434423147616366961784358192533382061687040288820037036527114991826394937161679595294749169218351973170541643916221368179930197757072570640621675600024872388449358822089196124218592752 56749025282217892884027070364757977556783083504013002406735762122590052946419619699890099110052039471580529452623002970589046450390251986735439751782590147359450383890814978965269433548990349236559912282869394841368569337598162274360945474396914313382600875192624997563606526910157648946116414013582704174658808088460778147752654395645724129320317003950647198635059475201744985114321195116203426763670803487001281452625356296942517781559456403180398804348927418375749976359255417854177247594498574041698748533417947472181175640438254543719086853014105852778389699665878725400938009315179720342080564464837140825501285267550814014017589351787828422483649249783337732198737019279452563735363297698824697088613246470939986539188911514721836167900570036206653040831970886837523219447555150217456525479568786538415748814932015937299460338657336434354521704171889066450562766510489929538696043711780603641284380522306871194267970038912054301605373074639032311378853012745434512989601471933947638333961039199105671870174966173157437729545870103240476926417857644584008461733952029144516212198648740218217392129021025562612158788809454698780369626755664949545905551793239897253200771122901467343734973942315864026389275395957462063120468110773065402739671090875157659879225657249598077165717331592721617373473823091396085981793141264568275718785468281014325481235190479059888784267599615717759371523606316961976122047248590362377626259106159175603635932305557744108014890049090 453529880133526614081550178975947545164040673390237576750799238482789580284091848910882289561067955171336370896922632943522675788181580513995245637030088924513033350152302200831613457951846689169209537039788677477466598021599915117523558272680341711100331198722083618121496210229275786622067984443719899886157975479012351894757747658972869906948887611674047518565596060827065551986916637597246007658490427265744351419265710736451155806348161206716372085191904322019841598666169295304866383286413743546769465319471173971432301274748828893664533900484561457351656732767707622240016830367385828469946865928925814819414364129339432992067271408386523143139378784669632561266065909895140023179730333515384492924248496484297016023943082088541395655373601045974071527771202979601978054589124807027518040276465187085608207595167006799558300425747041186293986631634544283831126010335601032413363957869979309069680483349916567013760196763484784891133231832462611905277720179379370618187871818695286727063071014021903602833074928177637137222938711325865264257997617897472242595841919380610866215965878017367780339676245871069237097859686398100956400661442094069506200375630007977725496222325846098376897044532167676257572372122190622430824599349849144442974100746538822049154044122295786527875621227515630586723335657170930727256086509995647963250941967326929148801050045498926053644405154634441007228228326011686852977443714712188671079739385819387403342262914810370723446083490382 3624546487778247846912451888415367626678874894518585776911848045408647547177716808594030571855716829310870673312424986017045687301807025697965932320408945301893540846078089271027681530374686339472151263173942151785774876973958473172874249923154062423675313828463515373614679571386475972793335225650521701727490674223078527598681698548102555360569904736068582562424745256123117028895587416015790243194720253598894503076832319584198391740923109421898179171779412739839845294724577510993383957254609528662022020441413648429917329936911515275008760767091802102220439060946579881361851601209756083177538408668963420865293183602173013237595225171173257482150708124471744440604659670599758854627033103337065141907930522321311747327376202950157075440233973955866175073210619474345097314596395544605034157665027978390545488982430778210186914353674203527666747296485865406291846970175744031201728223262854483897299970350332648960771589268853161818542039661997077136299541927299735154828942580749976270690826503267781199783145309274581084487546711164416072064952117296425065724278256014358772774511377311411310115386229637366263172874848222731666092657720842153630500909752766822731588251198522218027287619581677010001111043519773665031880093652477438080412752712480952233316203741949541464297313301595599093775872502970334101547602390256173974886734252265327000872351937269449535487362912696071903316319635625587234698439696180287484936713870150104526792530947055064729749375640560 28966879557674123711063174294764887949786875996575212615946033239823445006008644584370516214038981724130523728064067647133735404278118769555114449815969450353786322040076113060451605597543614538154889664988687640398921129992638739977967274693666385911125912153367097894397291550397040247142802843430850422939172413234980003875941390033774521783522754031344819566492950365210122048525427726309239459417754160817950232949820581842407989451487727072729300984033737078260438631583668578142107231524731943753698249934005501941049738102023863339844788742588637970552406670897826672811484541945855553238641384395367341213743858328015554899147953538258876002902317822356491297143472844351257587922605552675345759283313776603290152047554853078571826380491331840498982861940386532253066874193412347007271394573159758260716382076069245932024154928817614976688293385624744924232135471165047373465936225507602759746257858588833416704108899965100798611129133491188952364156341765320177313789789378327430380483670258559684627970707220761183556113170864012696241831101690929198608661942781827390319282175966765893200788786297217731580688473400313482809042438217589496000070842113737867566677633246820232479318320819087495675313401079777265501740611104734714741868886075788473136288903846582225817408538870477567938890011437370307712964174485853160513950963116090843001648701198616934048290539831421449401991922387224401151070775380266490053048122841494551416842053008912016784705482009806 231499481498679666224179269611013459855574159647200189694378160986958795872744387448005838423515260972726352183707669993910177596046690447457813761382541002710290809231734486816220656079339705395251864804939967413416554145901340020490427430635898014510187143451197939675792520772825244723049921925526393221940001594447439937253604978110782392192004444612309920859621825594695552848638484669946465315942524567459316539645817474860006087864340404627489987999119969261940522181244820282585539518933105129178674073540257049586656494484955028370132966196241793075092382254168365700047964393996376562639098068497333588311883422638406857313909496243431334015492242740718986753512657772206331413942878787024241984497731314559747301691743281748242766865844512896817303580788295625714063104119387721496367581904815657628074684491447250923651485834300501432436831662452031246180462956867160787324819746455484904533833336374987227957435859742152856567544102397315617849176401742495915149608244586409754139868078488125101996478777203536423614436462141800675726146786664107607980552491839680578845333337494855652904990716543808123096083934991827900918267211849673058819086993652717503747748290360044603062287775608012294856199256122710570750244301506023922164833966350732863257579654980896215750005090608635931323436332621762369878158681316182368820847109136455590304768769128550427169431198211875793721485033624109419666620769939888314031004466332395776939107945048328760190892294373322 1850114475773399391149579463177847090446917408314186515580542288258214154849639604197881604504308452328985367910025830583814682391580012540377591659930144876542076595693966724264757688267373741362950374660238846251553601952256475851368073619386301936690797473065825613188854592320291893833774540311510681186869619763858341735713767669895724677510617267812741115463064882050787093592826323178813040364508936570773831024478489956102127554640386456669514908314214521892572065708014870933198367302328136327307894395652387313833259823930190948515784296569323393185883916208606919597951463125327948555199089417144116988431426389841343291704906485709295586238448638445562304349969686429861123931205880046211380805696279524912051032762571893380671776577373481418470648986484053369961275928146109023650653640171778849051402661657094968304620946517548916359249957077911503039741625121734745459875770822832661296316584041766189046585049684095664372478357928411930521847923261908128012745649834595241697558407052912527819595578931523668690026883606888386134265418400501473846109374311343813655121160520221542950651936990546361299816191500860232914901516816072098098525974163440775964248684005539346504409258259952724636243410817872316574919622520088729871873470727188782405814021586268393142544421597214113295180170240976220247843055546125822276603486332987519799434879802444455983867448825658811567999304189083696981819225054201333858499221651807636059127046088867646555680896569008236 14785889249588845723645996898786720932632055916579410168069298409410179891669431419401505548493579362208418797310195958762152620055231814500875790195078907575939537060410909047216001979073376894729700986742442716653972150189007503804934768131651229897819650390749957290102987016704412211887219848525186437874657195768901440456964481582256177559713646339304476012557624271916890449380935478293542935124978798735685378274512662083542125656650450850578704155763580393971000078983915601996345159234388372416855296643781383565992255856544415262811772734589143681236997792256133905464752028121623310491048389097392417106899542549365021470613479133289296371911448096227370641909115333227043219742427155665145094711204033366994667959201145760487986202327452371164465845543514191426803667461707193308473323231848618225486495175773644840084717142766372013611549020101968180102065641587786729651488050025416501461417635248309348327015638825086057174897045395703205184409611553317565126032590568096678259354654540333295483770570679551995841801675445764067125843960741233878987960672970614554512292698888960493976871168838915968862339555434339893531600724542126501117917264124160866291808333629995516844637653148592222175555410162553719875993433759302073405488203672568253175804852703672077276910113695928335033726229357687579539604571618168156133110458180905364547673148281955568991617403347185479033411475133718708906612324375201795162174081628612795986996532834903482220004310406383665 118167096732165370101085340460889340453422832898837691435715853016858101062601051318297596660235659544372334371368747064541573951000789456365087253184559014668826697514813169355568835556553189199321392532553672474939802378547860454085735891323570132039327793605822291016624483744193390764873990219479350755026850556969389012388786162037962552580238426038111878674092114328620031175151927609664186598637329491615843192980396494909904171393434988373703513562903983488688388837642214515429536876708794861635291217236988994825416174099970886484405009977825557776332850160103374564487007603370982979877883976573294862505022761453726156490383057097650197984047124959426185887728603778310468365796648702136776243203596142720076297874466134033231978424585520506948834294669905186475263813305454759940632149155318956523734654820267052512445443090121530918657298079683006144656003506226014560498979363876475517959507766331307665022684999752463529945351683971016478225618451807268393280180802259319371869973024551680510399484859697282265322900156557091433219888949977156054966152281163947404753151419760728724691931536909981151403128664676835826534847020897029306296736431648459303611902259340462593879604828182378956727543953281065891605504872992894098272315401482654737063101569731569253402898346759291206775928108307654211826744889781553604065266679526771432956645144163019070475779607201845871626695679772979119166783227791301930643174846965189119240509615306504700438653496704044958 944378193762430193680117401290254266818465623181268414599665069554782111028716222295236621542635074514766839320830513273863209275538511675299943520794205727189851183345340633887141019038499297389029078413543812199797748709202775457017584021816033898962170593980103826522589560186400278471699160119839797674770050032451210339558326092582892775828667875527434926850531546617154035335537277312971571332876160576827125366433414803369480174616967706711152066010022552870248116452433310726744134292194394385063959454240032366868047301987684221036636968335298559585518521844878932171597232965749361868220130286361206584496123901887196989182460400639607269929029040397696318754932446062523971813409053085945619679311207566190058502825660209112697303680914603731447051855349842822931165111661587987993452038712188967137175221994474661078348947741004509837903886753457142055924951590933750932478869603473554386491746335250496085420820920359922358623218544836941993123577990115551150114589766117002560400415136560430148089016682761663079524353279420648460990306594703026640814813463589962224919802170231905559310382091060304120495157238137564068918681792328588595860428312328103305403870997256940579683348021932607438582249302329402966774073482659645568802177143848830167042132380674940744627748615195971697765579570402663014382638121289484229552448065126132057716671910818141607021808554620178757700674586609399243739187177060128606667800566217998932240032389177661700689395140866500932 7547369345715503062907494361930097666601297758528397712565759529201441924990194283082142079284186299567700593693667669742791005076670578976711028068289176987549464214932184164073784124809673217170172259965227745781648689742437080404618031816075032917305493728453483038039993448740406442899633744063641266472014720298558981265700012141228941056473651953899229302811862908633618968869205868711847754774888319104722102401117302458787347620169281429531065404437337492040035906514595540889319373552114775700499167935768084611567074464447384559498779125765546307659570080521670985873476115100529788256278078416383998243531749778207429584368367983420098776053017218716296097703687045840571381547054464000277716134425405221775171232551869723770065701401426918984814383179493057199687892806460806285240509124496369048888024809557201215372607094738054299257419375694436483460523681954573031219858302099028786315567167704017173135373086006631066647301342755211313756589072065923194074844141299930281847495275086547121323729702897679091280439053318075568243780925449385616280811932559620932285748400845563308418206246760067869193391439509015897607637596467399244983665361087585373322508628259606267929161421878340771448483025958555018174938845495502932267181910251373843574421830059586454292429766304053307168707879527167914297113646397005822642333334098452959045800487491675008161320377585673923736797706845081231682720865076397680627318313368889624311116587276032588596903353401438442992 60317804399912503607923887399597255468044206706188394889229927310841333745665820501305874459749095129760736464805807011885830747157674179406584512819565272538491742204725259261615138611702360979835358005595146397103946801193660785987613629824580176887054276585269347745616452871663469956386907055219989673864133657996785878773691556945882998422443054962352810174306550446731566183790046240354441270494476073544186610031421757336331757501037374345251656863853292501982222042307633166171880950127127858146280479586530397836555784201430592562948904151264087346866399208769379329559126449651307711324537187681896351192258778264801781826820879375814493144857652467593979700008619949788802074733671016326265358975946100625862531839370724081052319842007705791512051827140061267871664500134351954400638812146333673586602249968296126970154940763124340301668572276432547603720456440834950923627814263792314199630002976999260099850807476975545866579261641776124849261082112254317807137425770460053109240563504360479924828928899895570747974338775911403251070086272244087858809815626063775448344893629629476508851777486098101671878545045290929332068528166769556688288986886417485893624574178947832137970683487709857469860167544989699262299820911361501172579930744844315761248792766502259750485552783886464511759287416531040304800225908055036627106789609865974126206868712010459875334134774741292512892868109732143662830830408909501990612663884698119783698932691108627291000847458845239494050 482054024657983917769282101242234194877376881508717087718239035798797978831380533814872890843693819234715137509111598340404926295367298698808339301563026400138161805469253623727766923722847226232815106556497170898357632676370419974043279222513552763002183404760337586048275651432102664832611285180974381575280503450037417795988393539071349421362215576764498272788044824517625478586273197315240757031168450552692540112561212543069609547456704884449572798005046243740181059227506693603414381036746915270691105001541310948326187360451418692614271584272239762137540911287789493006970349655424426912917491973958113363903677958248474437407370529457466803445876932231116705529860707714575442804241601729410814122634055400801095059497702579585228142266668433043753625053523928750857076427740729171305744951377646978550418682204541598573284294822470921433320493219553634099678423015143678622468506256889018720855325442680855142297402979551677577249966441718316843284987028496399259238416391275307738229115697394031044720953404198956791109724480422115445410214430053680969343903875062954222979036293351756372944784411609517322180667075219575818593096834550732519366924916168480550689873900543737086898422406469414660701126594428113036823938402637834657481019230733499774947092457223749241124540924045276178688917427664510061248635842163479736471192664504686992976144906683162685587875745655923175723817880292463060462091746694237731946761585261068610079375230622462236326325158807890677230 3852531237903616127930447701659608615546131194176398351880037485588273222037449119522849383947236910011923873455587728065922568854150566918381313381748764658241936074922944167237700909587816002056049537083392181137633070146850419150628535602128598155691952886940051646111157630658391065131525641376738567538859798966689107800791343656899535312223745721049515774406031126861223479640123320800047291168090247576342499667663485253792921348885794448539191270820762268066425855281538408387546548685014995330646625735746700560236986603515492966286040359977425854631910293250658069996386441266632663049577775618676123951132216937502847843241557410517771198830958144309218338216242827739409812866092465217975244459453022968938293345241081696187242001453241122889329423494307287452222600454209367827881848788863977144903973124063833029810274652094735965260559941214056431823049660121900319546822222001200062489376531497677088041121853082748214206532348747435078305431163710855640199020397561110063557976257424655452834317229884038814611560938218075756947996939708973454839279828811058907030032198423210921662933099610782579075646836059265726059065962131981183005584237783725245612764190084392205839857618756134097715927761562965141815849121072963475503558409017382719066168812270866437082736557557945500581302386240769146209180227692668520355446212822062367377711058303560157701582019718160987484633930795593090576264854812741399398034287435383957854779322962937177502135875105155441078554 30789092715539663062118242650472430535711503322822784586789622505606276843384300865007505407505366171456707366160835331677947654810865365512694376602402530151885602287172782882572145589122876674519132251000825861101521557555779282809215984110628189541811916881941909309356612494202863499544954268001510142754265274798946838253483252367193879157571146493399506837133729533284056917661840388989289071134871337769606236943497232771066946274363470698041038739667801978717837049886332930991296176538714877034397015480123645003092225894147804316999564187747703294589512844568853222060098388149290852125479445207521019923685292851532380878289367960814307428722424882461671030579392002148184465106939922184687847415560750571280379020372820090195731463670028282834032629049557273229666393490336359788163090303462945626874320386417450594022053609046217583215288501761703249682875707939319702369848743951508241429775022217008550430093376314070782073174078510589363491981615482161594357284745968985999102252529440040921189507266778010074216075930584752343217499813595155566889756211752762165038483420450772520788410431850636181263018550509991410849999073225502764250194278668649801805069400507993932116201980592032903049673647886408084557042890975659918717310208704345173870820510584390134164813565216134842990632280349946558596432462309300920141445569635856103110293252316270298450918292318410743117515953732312796419367417397575085485635565665791709828458154794826914939946699092837113238454 246063887222338601633066751584835907586926507158370672456339364754117639112500198006252801924472609227489580801549559276054300075927091696647619841933476430548729067508381884711166733506062732975152489209712619588691973882566209474052613452582274264330512734368489274559582855902112096931683664545854811245561853209796882924702923153282678930099786642979447189826157308050151343637639581011837969150256453174484308944272654987860419802637837237251052729976898782045200781237249910312988012051960216176988959200456838435184625533151876638624950665668674792284218612170346164916127989360238731403198641709528855158170225508285566951626138456709895072334044558703067047797346930537797520162888572744453657281118908489529189410379282481441067399678467396849762105789555030365047584562472137506508402032292437965868970124161256216127770519104541779330290871466719896086373760336811859374228567897715088516155385348266337500717258058133999167305631881850576165125431491076338237422403938354309204597776625843778541283849657293963625440221540934010314593175456480255493595140247714328926525560007747722295876081672896284637695682037965466749784950719564853335921480430142891682302030330356344974779582818243669592727388119485962043168161051637232661085066254811611502438093621858103735173655177963945224469465043242903145788589144960532771546157900995302360004084689607013822660674455767762415633048401256264558744937805443443323112232186286262277014030075705686122912218238376560436610787 1966523478595426539538107669201839539024831963633838664079975095942477703856760654231138451810048460752208876481823851652953319069156307059256214722531688508843904967321095076330266297460953562179882839853769575165765095026367370864732846953572288757909215132282932794258774775852408647064324885728911048256637480156009761961266897194134454041086487460291776197880063031077486474336758838356135701088080462738725578577946866799232880664330164478588914867760117382999124898574862694616905527237438557217590601917579072094994749348771855304370348955855667505621364705181949604730202199138031242368987349163515251942621579774765138867030942127380847660580215569884325770858875471265879983013148032316142331080747870445655651494916666549157092488366674880417326566375472007139510067164858901048942521828553860654775969011595565159564739727003255849997665846737626593836877044200836915965736232610262092524253078241047106829737975661118492872829523116067627846489494112440726577424101690982018514164688134084878273148650526161531157653230756655751588912954844186436123945133945685090471847260625529969483735211732316083132926036650184881204593313834252150427423867872667740599879832278967687489974036583447514469491911384684451982687506206291518463368724621228011763302095518672570236785860388250646332620155840250430441387843021541302624984751853005129891601108068417015939393540215035213629674501824954571916275797157367920326224590499997206270411388847283191020422221545887473373362404 15716312552809632207340750568725073471740717346579854894840396528145745619950795259934683058553812071803400920159641658725658877076081099581996175040130879278413241662415339257038943933546708085774473880147334011560032598847107527716708645236905246534553603328526002530106204609479428115482754991556488230772930842244111745401476368925428695331417728545260039126629251364540230704796245725950565627300411039268757184214818559050637890883401025800526439564066883666046734276038608092270092549209037996971143496704732827840744350029839520539604282209965984296344414341922900050987941870555834962364987935791213801406185167107725874188552751737056458961969894589920781402336442694379417471932990865634144429096311165798203294564877218301630841272363700670306160988307373149793302967100383834969591258252742953912850232976761591322973794821042733914312094027048309603450170590540921071803836778516115478159010914050973075859271272676316843596993137882274806179506726457126478054503027261208387781763061359885016214074636772977759393169108024833823642040514432064001513705919089912385549268882777685487263231453133602918767634753355697603766376562395566290506874083913335094056621279831243675940168980942095729475498527876853817258890715139747429213645975626376581940718473001622191564779367186428744613070766804836715351528342728975051515722636869815233234860966597810458668284720894480491705873854183495913810484926795742561322908586498463583066382857621633425156928818455911283990139213 125603703179054891736063026815868174056656463180789305896665657877807527650052500241234514572349973404199439931472520871386522471855292467852142239826329793873301093856093781571470577430688486552024933234166432214361880345676126593702311286833211714270050700489982166985276414349604671625727209962333164270689830032442805913660567630815977313763663450323372655018897492021446057990700765029750747628929835170048161623099976161135394643481539051556916786606941733019242653036960848200552949166296131086429968106808272995426675062022655601282991153088114983885702154058401382719752164562297611015936069018178078463704182209215793397027347106203456117219644413520548201270031229147987306110603712033034515018802934252589831899994814044637353205822110587944603461253603362517131289091540696767382208397005344330950117895151840818588441025248040219020264066195306373995655837648432641242866278489430024321149765436949087568344827947374463124619479211323662740573337996908176001546920689459008549536382689733806037089722605047168545536541558063934054801584987892541483648821161285181009242533493140426075914415239555199837693608326343889292097366757358202685343268228130779826585131750654702091754738744770061737065826974949016811089983514821717163416573422354712800169786319743027342746306517817709776585718262339834794643310277764177089782719785470360674380309394320146737820476296108688923195568482017186205570441254155906713285807627466358209861581325257481281942264638417661340433568074 1003816883561888637337114588394340866593601762178686254194396525392039972377945388103048354175240866422164637861592798836622450866749103372262045811401694446996572534661316384457618991771615730636973027228480841619705969166055560449998404300130022198977690559027086913947956414377253735211224232912523707412679509849540375548681691652341484673017665233572154455808786949559050355754559139153343220009769866673887423345611471405808841011570720983457471253217147090716015196219156150525767019494906701997559101049477028885492613117166603829389416539862367342753816012095626103370506455332447745910774537568363368253620806841372809663653930155960320846981364048116406099374165259710154279388683527119215104600919561669050145924968146010320660312020267874655812241727161801465761536587419474569554948785700599069214757491148807761729955066668395161387898915581965411770474227778873953511737751587177527896036457420396507400049401121502993221688977616211203975138561069390711730289147212353973555078056743397383612012821455834624431893653253887006193590858106851714471037682841801486414811725647008461392816100923449275474862865635895961494436761562896572654425816452169118281157585366266701205281155284562225868459080884602555993731297329220161090960010550341029648237459258750807543391085706999786126974405357869168021217497773818548486002748772734902661034144365825164425967889277817803682778357097089036659920305819571422623118727637476272900333475922450242881864981071403225007952097757 8022446193132705237842120364560920562221961367013365547426104549807928175421601105718649123198168732549332891407520646406418180102771134643029431677863999191978032085207439638334224344068993002499109431607888867221884643549986202907068063775973327931197076618316409559372028217670646571492473772649053223353147557449546497037261269404810783145981958816887598116631837078927506828171683852630092574956353537626681298369486828558995452467954783843949401260999946401665756362238347328935967487832250818062598718254970398880775411349716417484865183650306475988508934661219288419097924501105409244456255190209865483679113381046510802445357817525370202416461221772466783290854533766503026509557784370887992728980299292570732388021389641686024722958597206586009025066503594958316807611113281258633673226134896159022541710178005115327766178929846747676053008083053412244825313584827399104333757674395924507456457160354021499474121971686026259921887042359326533854757315444561308086253533058593213972695408916179983241827798643964081368923018120686253692504328417877268735169958228090202907581888242572280950243468245747724080705985550643519379829503459877637515048150321150321344071050341267280302466230978266273552638152564624507715501376557989789990785747464251882623027527889832323620362798239785766231734792852918942984793320253837309717999224646936645309342410146170850561720150164688020734631662586182968011983623172958126741163333164663210170348005035752209435884514912555120767143659224 64114962787531947925456447769176133131904591074279459289246123622914484206724269409122900663389353602870423673159406401478276297436281181941406393194159243289844426585150592453692621357349124897666733031424959453921629760552831711423308106584343429888861496287356192018306571558470301848096752788544597069883864748105026153627954038245983446632766059749735603209747322187675796548240090180680525017251366763858227904075078850814327257568609217713136312357356426359040722594619296942766216956675063567805682619238183070174486087757503137709140619201833640477549379547725687268877982095151476833416617994310550513584625426896020217667831029209679951507554218405704481976705291194496415929208488988860991681520005665456593507327048916273178043643709940467657146024987874714651186987272561514288181542404908790034483416746315893459236729078330326283738612361100087649460155966727470583579232252257139604603509418349168873805339618197526478481095524405929131967021436408794746677398337942856929762607730772112349023646462179963723990969998604783322434015985048229634653212024577367985976468303219194527399318623818369942814435679047572936243722714286249789498713427804111794916487793991231872677111468086840806446442338550001570490770200235665703407281252208635885363639481586731612036451827715555716451913867761046499024057914763084668859219582554959197461623208809016074588623013737880004452253073136617371071170619016534426086662194481524540361051349298222060930127672894892096250431661907 512403680356620316828159162249203216583811460196619989196363222400869668736752820933957955585625850584785929674780137289448812514211487473522635407829024388165590012335973061222692327610283776903584077229918105877741838116231329485298143611746360139509712000871917823470729803145719257069432356832750576479150205801868806075400358367679183690913268608203174697853914226994852776099073934580548630506231768650980385772778009983384536658717509756378317322915872768486640747870363062579635272458948146163652153686922729088351435209370229779467038375813466580578741308445528410561444884272070304739125367880152892966475961433093924415851679464292412513165426714548160074130866214504449322790754000710528845003383697219322799017623897233517783173466127260530471681665752865586576634763470008248605923099238437482646145449565491457151828772483735178653371578572330653599275816575543760994145196078287275062122773847913170199134863084286342326348211807585957420538644004256911841352175220153611166251003309797350661151606139558236847529081514253254582456920372800634709642476779260459902494391797942503962675223399256832355684179741770738003786978541929242254844678806291488613879939709708132631029336454819348849397102604693753617878527552735711447020673406505365570248061614194483760809186164335429603989253358915302778752514097277704588472109798258730657183810465264206290098520594504175341507364750001746046663015552756361399006058165277510267457507217723218306628135208482378892121331972218 4095107909507465462635369540330845768847901538992250705415310654823211052599780065572959854170310089317828949422792989793941499521447547029265116217579426393781428579854756190151017675289426758097916634606451642750586230659177334775587138317599389070578016877303291734520389382233184378283596267910920052651921120407686045375126955813982776850372016403699765815433611456660677118762889321072395586405623716645993335628647814710705629176674488977752569544709217447677919455553145506390466013149656556952942372632555628982317558280967003542700190548878698937805812598279353694687393213008773085461292636056890173096048973754419575659155864066579944877036757505489157506351743236495441025958427589685715609103055891449637675969097581621269808546607633441278813207320627799048711143282018733074049907951521050165167853117664666278407408308347874174111073132249432405532482466955101421430724182018147907488956857396202518555594021221950422125149926113527834508449791959776682710261957807890170084608120335828476462613259266120760098892321039392988076995798048516049577522151524143626408653268602611952847072317154872591400170081444258006127602902568697989100377643709365970004056993124646811276092350842758758051537322094828101254572609973788406293049443008979486338972688571953869401634841127371026238888679801638697895873929502283326465952271368009919921763737923240520665621297988442253697164435152472353100958860261852350791697437198067807370533867568151058654006066490616242291537644379386 32727944029422215257924071870032720975496720953417217953140509842120673816072177121370439961897159221852800795795692477960852304885022565501758096888945328355169026510727550633606837838971863454511647340501620444111745531282164514230926721564963266235971345343433528903065443681169727375799971819792269464586104720805800534744974661833961546623753880179041462456289089437280810870848667144589896359715588139730465822179362751953437186412432230715230155595394297100173354558813774602979656650264036640913968733418852694762029585170914968794222584143991220005125459223096853304239448662589995426949629122513628677985193282447945547199488759522621847474260397990739698132884697775682234101236526052718993348974056459173506977385014032619804681580987801488588040641544255149127076420663259335621041338026510766859993211207168176502633992547511301086117276896810444102990668846415865057629170078803675925560800285304365711042199677988992863991910202054862767194881165866027119396956618963974951892584411133682204618778800153845814032464044052568161680356609453832841970777125235565764488517489200331380047580579917580986257815968758188786989488338173437529611937763196771334570776450665521612523709629858725653758355921201301021784152106558044967857323577010801219129064594290797461640256337341388552823015353105383067706102108717735869214308752085068618903268561824101849097426285968307153971190769486644830993140652476300618887536732040258555004378561282229679330862135286986690778669384822976 261560621485915865056366638409902984061136916455025669321182335037838561434954280313369399763390732907436776292993406088382131176249668247635782545686352829504225443471520553691081577199207914207967925313634758670639797956804156573153837911934285381994184493286334374021894908101379826525397730039318292092705495885437626629384546483570552403486159408241024628024834164753146567957047049342757121362121209027947430499338681526177751527720964241501448420755821865540266021329925868312560294469607517258474172191119861680275559548283737296264305341091063713218555571765090983705416566126222370918554559937689330528799247630612480227901061394449577480218732734854980933391020635939970256480814768329327700315371778281326353685208065374545461709789418828679421062412771687278520074999089571283779228632134393512667842784773135624036091820167461449574475991435682227556272201571574257153177798171583099445647746129850212188998347633855867367702535683746366838286018238969526591794367674912969108372460006917616152419910114018212244690018060387040705747856416273096727313005704284182569611654908748589431042990490757221195470740734118429024221308081821059664363630606001027831108231408184093259594855177569783811255951811357427560825671109662353749705523348742411738693525209610915029234625363613653507707742514737191854136571177472597294203863757698183434780622668884461663471712965994977958033059691669768333094865408956940975877201358288999829612924320521837863691513481113982861609154465075784 2090384904202830573631244827936983458246979861326321294077855264536574970697109168582675652973678679587184355018661273432365492099933652288298088966470463604456598139803175981740856279895728000746221655736982383702772858622664653695161687475225534879923610262811815189591384589481969156765051596412901526786272920732848961396175451013911897426621936132837174701130398819731075952890746966323607996747606276598025659289941071362725879686033323798656999944821517454895830365121489648457073091590617685855904027300593981675802750134044448734696052817491754962085077727554679185223820435380348807642922868924012168278959070141482090158714925679224462354902306332481812468534252292171453572781557780742825681454721089059204563427420618299664506468931791431212244029473731962119355051202369520828905141941036289759365074260694149787209751334551850772530632286561808944054064280973980248842225066943637339760866227309738087307826849384019811613765379800708648344183295858423139887671792618044035120773667832986080911850941851929611128433800376927148046686961405907376618729981069136756748887906058702621261938263855453912407097844415084272584858185874722447033795869344562050865612426210714285068218570035513299489441168711382178538874279202919591865450734173127331592731637391708384623803541308570723012686777606618324471411771321350646491003942964012135475336885154628770333549938555692290082676920254477434789101941295687326380336404350742954095759077585309051995906204795414033602853160745143940 16706305658981077909913842763521682581539412180730005446001507750868331580320760622999153836664753733249494714857113991697524957730024333707136744844895069988063123549310693236153701304752815360611951656966858582652727039563648710141832696506286493154475746749386239534761235957395110513663130298608750231015005179158125244617529901614882494443070339859787335972213639093464565153749610705986403265693463677013047712360115148512297071943895202114549232150684237623206223373997068094838607209131207697738466458959037435401569365848498971859419901778265002322749131085678561495932702221131582656780585711618334460292598710734101772996684774300919256997638490155743792961194041273599786002202262934466623012938173762299485202784851057118591861639584559591549055279431971632870364933706984188884519887931137901110222035293244416430283072351953668063729380642965875050512545369488936742544245516884933200982886509373214988595224705997859946945271320670596581266931140327147645011508040534051701564730330284435339229410442547946224706144349275294703269694569056281101049153864485115149466951817281013371057140632845346459642591822379338935771963511755444599054874036834651093248943224739768370146576025328806132133830374597903031898577713310075267284305842800186881605429058869727893679592492759270660513951033023030428882709943434557244012598749394167005526383321393508834704932241159231188185289034634692794863365035597635759465969896258310549441301216971482725494676516963808609820442355506181761 133516471933489853529201826441544292793022159763510068707571559091600103512699946033452968852921031775684093858043419217054789476383079068431194352678906551029104659435707331158679862540918176364394220480201471942355981560968640323229964345515989318495060197863339612135775260394364508093054536630267517673631124184934561958606432512740072204641717144717565352750321590109985573195821038545242934003030829566797118713152783050885518415616811186030488353623793601453362037929552230306155573073040654579551018932820147232603378909000289887836987763122703857607664119805954048976409089930193816952879204425845527358143567782475237307459433155619959190362758045905191905126435104062349021669964079645902642781849945636158797671395912311202919582503956780806757842587903397639835930454569368284800979870770202181189116517266629650403581389511462365315460844973454611784881352941617586986655635915968469577307460150687876449666282158040630851892624547839619231646222604726115118693703432365418196581593275378134836137917300769395894411482313912187874861166920599643156503929790822093253315167587700573955551998632248069357382368277032843138173156125789722697846747115056237594764958843109562697602114301300718246050668265278620242942093127474727175188362335097981853043795129697735499260489432296765366656217405700368645554105724271444389453353317127482614021275817098923779885484133114211680836108276996096388230714039465659494708703341348287650069992239508621853758148059306463583455195307480330038 1067061707034710519043133618487262594930155654725511798263679832449995679684960198631136149722179856710130052190371404485817743357068896140425269051665659937705945251697903718689941954780218234852406413243834736340725936988342731386800986230595917796213488277188653075998344087513324278452903938357763389985597470378958840494433937253504868244016027554977315584010440044949269091756161514011663509642304571656638854425514198140082414569719992305731040256363003333015740142589470786251998623415941819821909852005039070197631619755262700845112460901671001640105227752434334799853843332820183331780069248093909553721374293245103030798583815648921260495775194701923125650956284808216907010469687857993521540054052390388452960151650941172438599501114610068771383046774568501732813028917788693579560776392071667050694511864001110221466986667849321570084365747476385140039847483921355173164310386388299884306924671860514896600799227609933908940744579584704343723184968446838185562247366935444499305455192521206964685945774318470011538014031696816246603480497737159593211294750342485730052891818223448915353577284668534596854886547429120139064552489869036632433808538369210558437645637084353199204327756632074395766628764428631726084793142412882150427812471991714201711873603769616243841092778943701426746008897074132317903188407549087784362590511864342417970407832732922478570315434298813315260863590159888313425110979450941129552853527359224903999852961330532878988733433965550122295010098322577445380 8527946824714263251019800552324901399053672879642424131317819566441519119049119960897018142322896905753631515992853572991762422976611129593157550248363424112320792945121882941643077103217494888963658154537472172470256180429113335546874020161703531121170809236595215469042726941113205173337194720508468428080185151727969209002771652554332904655065741123791290583291577156299189211598566921528545880060400085720492363815918515471807195092458297071099869984887063846710396654699786580645082316878552513174478910632522867650911614619688703884487829689359271058368231290151550008374274696006229018710680381828165291456318570382167089787882489834252334591474563376956024375696719532435599684641438470286991596957183323267098208368548496243885543070017868560239468942718442289524689263038075918695505974970188241911407264280257191408040096884857341716579272276628969433328242071927562126440454609606336788831112778795207828605834627191861624488121926181844014568470330637649922297450500712357215454549311720909672076670578158845734361695836209922114931618582430859772389580238991558517831858673687693127393455054114604709916883742401952312423494766350189538464837498641882772771791774886739096773225925438124515907267251728620093567394742885116936908524237429736312432744348855132787086957085934050197520236654224110354876225569957227680255455821656520994461800460882738712038347627396643616694224730344775055208250485489094384729919740068350333833506597056502357808012678230715033962916059555615641940 68155309430807405337000044762179001273176081754827154389684279781533315386559764685059110701226211012282954587936481579371494560793359667115034763411486136598345849396649943270240368701400457994412925048273416043892122357432294162492953373683219528756668296186130499325954026194990046226967928144045656599934326139239510379563199039665463454016662582193224612266031301015647886258981436197410589391037147959766091703526853535051158784209532927341909175110521194319388702970589100107964595748148471734966458994676970627311408586584183221078363916501189231204074748856574955290012938537821895459149184701929672611164094273683835176656222117445573874749122725557356332000306015966656981788421994111406313718924338167562026599135267476567766345930487903730508808585733546729813746180339858028831394152961264666369795580002752097025971914934019821208167169856126244406336353385800141185334742232724121128916150668731902467339992988767766893999440877195914113269838853412194695655589287957863759316454767404687088525967336560169660725275901130141116440240147737287986552586234736760102789581038929010849655049955047967359651332730508281803150002774014621472033111023467816009431429046975228858347750015493705299240673985195962415895120655409474606451339880838588572494774035219934976059480763013215942593898652242675001693957256863899745569122544225746678593086555669195558222311465410371898935430690290253539681414173042777698002171219553382138204182748767087746870314143043959187500311653841446800441 544697228068486871434610270779168313379261686443438366305012148437790902103475664361443850785761675794898144079865813329986334300640067122266179431245835410782685792378135253696259513252965006901647316110757306692656103914767341945652282189014737608798832897167436142915357574280889618225379471038756005871670003039076846946183651187945328802845905433017323899565230092632751046128662567275881259448941628398311728524438472239625232810677260205509446956985441303975240533663303732893508456950423064823078485778085016420421433730087765456334690271436936349966960484566892786573391188883173852004669769391722792627884482905541869928608332900601457630686313192896331425894164395327752923004786894997246983892864605537359749746718496599419378731187059618148266348117893276200207681817746566575252140730857000306638277213811230880398099020504755297171782676992063024169084234786688020733381883935855914334358912373398058020621108565985112115665366973975818137379896681038257262448421241651989248951535238454940738652259941326551867861277151904678470425817457559605823268932203441682998287308750396591757147610360169209336931031406062664621055060359035316098382021586388130404252961699874948122620590816104463460936588285597950238142070670377236281627574498851819611053918402177995824226089101083946276031753868183124081922559994466903489723608880521613015218952559812321528955834340228609097768199021887536989997259979943240213691201587992359198027598863320618900380509112615328758372443158010249620656 4353222821805340132108354642200581458484026140294965090983109827608733150250921402895867559690973585282226279558603045339243347605245057168170804615936330403231893180142419065519915072353689312169274025231002221755685945002026308729990104289994612214382623304512030301862161928544548994058659340557794031233355957798531748443390123280458136947302186365523449790120936406122654064059842682375748973437124568020753576923169863850590723351854191956680161681298127123426864874667097703149038339602755658661541792270064006894851680571580947010349055201914689513004251471957663277286727893527971957657155017204228977167799552567587754209080941644836848218065461709930307925410451483319008890671982093129312916300550993046551808535237175245768081612137923853488054762357881610527879169972212327905836285511338699582091451564041505693228023515999559394436167157604816368761750557825212616535748755804858428588210914442525183810365852281567419760476690177475868627385820574648977719471479806171235580438894620781515109741720619657698813801016186601670483562243326068724421723421164016820207164207398869402471441546304503807638673592691740470091882987472042395198045408238783267972234018932036475214937040007964442072670832608550834002552447817484200317427358801544872818853889464624141827596358267852333158672595298806205385058810733927941987364932737861852625187939619759987739220169305654531648629562309019428749457248742839032023478973965952754972537026342329249346990390081426121960380951629979525648246 34790998240080032545180728641274279482097085708001768438681273881293302780524911476784972133113864259687606230375243996703421007946146842219338055816702089989260175416618475328161759835569208049022217359510197849352848269376720189755483625074339390270926644860894649934384092876682831882141213881729685401128722139135203267367612592703880915274959922432198149952424884204482197042323642580688647495849738192944665931628023744527554471010408643784960905715468614841715331661974107528081991406876848288843276833456941732084112142491828046518666831451208770365638009598663593093421267542555180538853089095758406894603290063059802693388372640115275851934367424325491954993534128537738287586766024360139945358667804811534934018152979579386303217235274176404013190798734994835075573026830989190482907564152865044443028372714503167309886560088856745522765392451140971525900476263526855052509557690463783393484960522750915457199163415631403103438474188297662530560623204090734462301197822888645731761323835316844849105493995994416626349922531361995846854469083126601796444285610623969196429675026970952456673898816462481685036173382188182146234875200854191027734562972848854013716281868790839414232676373377581713583744416295878388016703751095440969743871447554386038338448649647067492071900924719925730166202096494522501623181151572806741250462487258551743884723163800203342121338799142149868507186829899314282038168874726257849568241518737857488744389950431627991061748329673253842563715629737256565680874 278050155767728367377251725105329345301308616421322658050673995763122340970730473430318675031282823449680924422467857552780107645391852109824858944144375051881761415075441045437127634486482723335845486095963028930795225404678908703304547329794434912644912137011478181549929361051695317516749449164365568109173060915165484632659489530539165361968882107090183416769135042798336899605348982069111007101734009699799623924528302345297515026535586788075350437006569481601678358907221937945630465054544598178708672180813934430638842276716629527755767602572846893727490642641033276862381697685812749142947778154012941620927472003369072863403683150838061690005361481613352582228395125360482736770774193514153461322770478627306010361855649619630005718144969914778420110210746664325982895621810084981259544745011366091622637663267225427241747931651166912753802255510380442933271164817768103805294526639964851081612218626354984809492313685462721956547590675710559353028919320324247950699317871429511663992789477256630688583528028208277896147881464161518539341788673119871555286463153249606109190590881755034991399873249946267936118526470062674367616240228199403318928530055894077717493253353139324327280318762584830961341281142717222177064222144035775731923784530555400465609589028002720938265054136423445415252220588698323402144174765853890717390628666251861257243058551724129104826921174068768567432231576101971724236912263100091183885012662257695175907502694425797943087419198008994816324111932169223382851317 2222182153287266783986112123582576412354629728106370355634321907260538626683970819513791000888341935234201281132307044266045543833380593997565361937428404091255356371266662607329349939966957325322383928666792468872061236116468380766847846609891672317195198436877646770594477171657764846329859772475680280285503961666734858948507784720348350079830225225079511576189899270466059903814456629537979055130341035897376532876356141009955121889576395989699814030669127168849827722905751776338195802634280981915676247209660266320449657034923562519980382594553498467503105926975917447615777752589489276040846763613193490570447783683476662908294925029266626573347280795956433366489716905036654513897447477571331921270321071051409268756012494591822920956375178918677047141911509348741235836990759746137978711180375261862802731381899009960069123063881740428513889114350513843757096941194516654733074942645371517989493292202104997830794814804192904189681970450913480673954926674837290811645260008954439595502943063496104859248012050379068811143469276094704693857142510158929156026770415473532339745012120560043734972255995406024158171839219833344772128465153471250937428718263786700387009753135673042147336403434143262273092760591004560359502266729310563131009039946675265670965176692335111110778554813875593138153019363639711698310871227212371412586630590785421733446514592547014519408574130831400241080659983195325866930895328552815710695539990920009096551425265551112642725885633258461010967316805678554492770288 17759732808128501227140506547007870902269286873598835567463844326328121326432479164966587205137414559560248207918456216422235361392147055255144198958412549786331001128786732992528908539523759132661043519097081944770932230443459400820266171911766338198506903141242841384933414225141881797817769718163126318363703767751536161193249592349949266990475841260627574389886304116058251267236647175521289897337930333326633437784452951171062619270132123809851316756993081175624943274082124448142571933479849637936199441296163553453652894094274448980670770383796409403689164609456558915306561374908960736159598905522119811463005745698588059005860358433439072350289584449626853429285418336612838451233625785627310818102940583103659404920328671592597255478108209119244065446586532050193643809957015112981197799202678056278674035788484566452084116150736303095792108679817490662656108272631182643285531343579031747489558936761780886287276450384958726253489677631118080279456076357651802748280746068852190847740980301130299378917162295077803549730289283343903730659531679189079830457318040103722811109637316796160569328645053068336138694692556214846125724968840872488680662509785241884535824612316442377361454971695034703137193085139594874008249737353212309510131788865347817072339689592147188032918414273607780055659595489933638638054469855985638969442895154672690302527222400015508688972324668053326706671570936731512628405809688160685231050252576355423753533451677784670506299433934784521401324809048889126205871806 141936293220132137845820497769854757311072586503059217430449003744919657843170790860377449232301771552522177778404270317188022255729391956083624929852361448455119062665616599040631645164148745686834225520206364591186980660210704371204368560496894994688146849521193536882258308498864809347136919507469859566362865750697613322075926716595714788156729626505187784216641882280279938721469167250613440911493271220549587903654599535224190605239950331580707045352939330184054508812730593290096795641322421776042631285790258898938335973419425505869160591943634992593014117222373271135901867264976898897942228108095406340046933376039789032730148528447876627637255386362834764771703624797965337802030180986446397142136066032930596637066572107557190545070397912971002795106878008161818082473621987837283316265218767336640218691466478914795212709810904936780401184148340210709842636497262362744663125352275463477868548442772895474926020729631386272670471686515800301947008691078190812736035010371939429389685094818561982401213347234415446245327562656486559503863365325724893953237239694230232405498673579276456590496822035196662373479713381713543179645020680037441250362485304397336615951273521356092090579851529956257932679265898819112041917067384566792936904767257707287007404329563848790569324560117986563686701767566632090334192324437535983940112944543011282459472538150317894221792598748307667115365624129459609689997634916136778777277344678068258653189144302419485770830848283878351540459609397228553472441150 1134359596641678520736263811873696250351778485323218541795770600761953122918424894257381153331526609417424754563034901017190764734283952197459720586019437270402974377993455396802587879292493772561974884556838994181356419277901739302507666989504113558257139332838402318225083299432775625029784827532063992066078559344736515331415275227401718782068534397471037019857370767635865410400568978531716252136958077467478805639343384619068535614785487016911069769052815164501822920393516933606462443421457513197850404940974705784901728740246114542070999015007881478290910821436104253497848578622779889814591291302718693219832520806695621100800632656481266305529844200035960745014646759711737448252314998932048514232363979446082027473891199814854466045740046803885804959455284491695197761727814039768910946526318988728779047372170065313121878177429780797449152704946208486225030762639315902828350717586986581363092022749736251421588375065004197280557088585476007036692339258596917208557880209168420473351896813089445334056150849354083736332968001022730498561535111790212002006952418284162928993178294939736200064127822189733171762487418109968390299488960968621136711107930706428879177598313064610277389012813491410131421645751611245264542082323762451914897214099709896625492004866909185645996156450000112430412671044097440099680965966318245094473874707871912955365818829542661470487894826367480304238563292946596300689530591391070709196375708281239370217236251781153530523291994683400876230920702980826611836650684 9065845187273898023669500509036928141453237566797815840592420317497137775288919375743030732317983602835752586945770457756875650604705544912851033877321213439142874660013373627435691991586499022211657943038268736371529700980219215183929694074404498976123371412960987569723789766256293481730401683537879840028902492857190294446304566700756361411148014064492719083384307428543906787148009371475285941764379321819735487574004421070766311524482340960565579276497280327917305640713299307642128247183017323179897919993684717963245855096789509349160521536923895293009313231545081339859642655723396243562730200591787241722185124195351818792201409840244797269707884353480021991501102307817771937248819081022890308008142823249334615618539144281005376795382508809779327025552514205148497296993449968067240514877340730339477344011002440680059853477262961256663716873822085309175972298350202307299101392462930786848528378511183324981993705860689967209540480361572054389754980295659104245494004529291555859941618154607057418538502821343590529850983256553782346716878771391967040568523549601999346151575230176581188709491934372384511788934537202375898212602889957273618693913209416505854151661897753846307705059077447431918582532762367437096220975338498905590394106623416290458709283568616670513958395040909045680097969784216032163143432105190017950075086966029673657822830860551032987448719186937733412373951822324575148317949286094215438220315053610580482683050165321989183330856397966258102190601199945857601382057008 72454623815801273665011640070545947147787356289936947189026138266778475614711184403171135797870777994977675093600732742051396980408575697474616773166307442070007088910330358610844061821275365530525405671681672042084837498144193885862442178584786625182961762825302773217956849604429075681861138621326293299703259453551875354483059809520821776160664815375029579220922554894842569215744254800586936440712568975950192317546688958641740981286546629730857382894934547094363426542109882486621107700946876623290447666577873157505073623447636419248309092709076890076745025105147575793650659086486015030214394139373416696474909591380289059665836744309925785638593523641849946595109502268855481478436946559288253568900707068245862922027068580188246391193586840278411563393873149809325790249528082103382749923881123881719658212312264846612909459157524106176357572056821224938145851894478752196863996269961223063078723201131653789178617140900030558421506048396717014685979122353704759305620435876183913631369266127436482029738042839792935092112950972074331631051596888456319526787078451982003185704653369134887044195322932031089860824080149769341807101560821803619895596856696520027051220609492709438853804760496942658906964710144957656016369278075999772449276776416027667861364798748242116284914710951350077348086082287223922839392451868273655716653437292212308079505493274131018615652973262728906348921353737926483142204416975311406618796913747399699919215743669310382903683673108709421708797130757397501226253461071 579060807090579717878797238769548560962228444043321607542921842130943087297593183545944246506052010148888696048569066872410611346250505948093255482350222728996792599473831560936322339187219748525342211838327336496232905331549518439696087979301268306639987445460637936710374471017057731057533808057185978947501588842588259907808923663087756529218157008081842105119913273722177007889640090472432261244975207120413860793672941435347527289212846741197249563626647123461662427401698531086991152541107852129612136410962104765155622046942042505370865198507418425792152329676984106486773811519739688978042253199987360122564639290089405742732355423329871298527206581028726505201998412590754510984237337170334149821660117344636329481939709767693825936121951417690877644309084804501416040185238588666538327014714485136309797797584938084982026312252898325623778293855441278178117402798254942646691276412410967909954833018427180909820447044222897996131656633674755327100864499151031406903789635485308906861931318534148337145326335450753825955194161707651948004090488950999035023900408325261835533357584910499511610618127224129195167250610059265971134292946244890712210844703412241967027723134011157292718141534621776423824604222684789620171888923394556218051835884689797006635291376209490119033429227740166561499406657156305792610188491877079491421050635100897248440095941441359698142494415048520494832154299815768167087312768340801621488333141205165553161561673638894401000468262023694684901893471095023416077338618114 4627884317368293326384625557309486680125910189434892219327789043957151682361540636788425121520737475908190603204438252136456562220974332102571321081381726330818983860004949711404207713104149134199221195078611510369452574987359879622936951200125010039907969032092932811174411725413745212911696146736022010862561412090472466837156594600167630832588982442072211572069021503184254413491790251535033129570325544546951362000485497353400644929037072016490374289983645595471824640700212516672443715023851533176521038337207326247805952817920528745705096712343833043250892548342406751784877753815288338050895285453886535202762495917280822145534513102095508913920564622507271388714046146600764869828538889795529155856825920905907490753145178665926270249589411553916513568361930526469641868297580048850165774968944018345106268934332208114978566095747617903756117800910787224809252017157098880081629421870171973771123785131747580157637438731837998824450787614952470561480171471261081792630119317565276138619783284781691050284630482186238526502885509130380675245656680280916650009773429680408439269679883239431593567355259564525787663351187889854048623604524884686817355394114366148797591187162201491632484664553413770951975680934599115216890659133052779823902652140811248817807945172003294615297718506575873906045850704307201931131678181809509356166489015466404898376358675341144866844972729553170598426513113914737749321761818329239715823816178434009987202894865141082546002699438327100982271380004783829339062825763518 36986315921047114548538504406599203913578850421075912037916162094633825956863336782671843654847269767609997936004145355803683445654579759814244022498482844527640293934708153351013858030603537727882605464376369259150095017660386323452524334641042248370665524964066173677129935993973197479699588251580594681816346671901854191561645448785942111981256203232544903254319105563321150936188745979882932822332424538055497017304930170066645840748133762036106674176227668598315426871182534269138918642943998690104300341768480328272017095329948992709659360589216083775102842069998312671902802634014809339786490877573962589289231177571477654310397653638979045555435358576895071133730495830971368136342060845989281928655058194891023602933899084998997675501390864569614870528342418968814359356783107635298746507541771099931227836007752858801122530494850538513985114844463403526223043243367231718646507745258949891456131595435259552672800633037852768899839018488312461572399089126596691546667816912672511965765553520116550835208923417312685629972917267001897548508378299538585198443721630167080788434069118967779169096973152066052585570919173706276442013371892379415836262469350905924627491289647252260709890991460465979052863365471676848789309288539643604601370707551623910197202141147002168991446047654116546942309355368238599278650169019027596097920457375356577880263919696568728570008069914943746594936385894860737378376666341631632050081575923240202296887665187763346803841215545013815215624411036579831579680664042498 295596925378916369052854474818612990548216197704572862537202383752817319205009821546146261351172382140624136880242190379987848882381382689856925329975102836123015989384490960888503961913253679150275406351981221351797075094879702976888299093528870353923805899237856450884163721222731415788617180908260304621244842853862770503122216305024893393104296745993780348170091920558150045835544243643166357737570676198798681828079633508842579296589241986034693507725588248506955804122720164442687713322179106006795936572417908216413437419075928859886371937104982372200706041194455333000897474267372344929564383263423010598127517323138905123045167878337942752270291609732178836100908394026843360761398331469958505354299283457504410610420256646703619097310331455160621613942654348628792904269836477412502554268369161306042163525594579016455261099387300442692246455687981274070044042370373007667728041249362104335988992720126801135274686365109151145366827446186028089802549660336406673393992758973088337682427572840215193487631477310128079810740316001702887265112232121772213347227339783182407857113429323174129883669670736659079913181754313488263800577237451840118405353218638979369483255943530816291899270785940504038058987100924809373673281616420014224027734333432695700733138996102497389251597112603842872747830624577918712055992603438546025231463566112019583971489198087194880125174053390178712077067325903814973640381851489953625892825880612029306743568148375574385171993373950147802778256162456706890210234289960470 2362430314593189939086668334534146516568074388841067957240834821110261990564205070888188532572393481925420944855609681775014318707955163389904228697118850161963686232705981981944020386315581787279974779428291176281181774441118500284606847885247594900038899911503679355792619963002734595338923303113367557331352362278953043073223660442823004205827702178855090463648533588774297003826948130652436628742307738479661104509329897108418505099996021634381872121142740978301209118795547332894727259653408193451269037806747257157822329054463577254674185581034910705045303996374687018419575074873788458472050197241114422036726801407666793375376997061373355821557163483876938219001411604867202972787134164079761318151383001956220374265269289351040413741275556046546877529830914387645493463331513058905958643107421494632650579734759118260773290520704115332899015589680412191045519903360696802308335115465601950638150006824411668403807527575562830027151514058811689057106518700746337839905514342894233466615649961777996623488678781946925739083791411866373870975636773619474786807938152216876399334111188307989490050925250192268439980190300727113468435336246734444273842948576936247393960151728931234490527956608483755195081978952905565075687515983979928165379708471962718160501010794743110306575144346190514477325554826407406709587314249229778282497342956670916825579101228840830397708950159915303934120438956333061151949963759775603015021486152885687344916882067859030606935617165766009517889815820340160402427624601017942 18880711564023204317102423783168863005486332695608959743189508619850905262172280821173232525198253231123465573159189959580569424332567526487414637147749724961987378198532377568651724616455785403473424929318933877964828994033654852054805014231014371966377428141805430678118333307486635388998952383801937957811971892469789540320034517298493875344596812789050632114189623464305566599964411470367451046540913756081727150441081279461898086348118172809449139930829429805422019389091008605625640350064686855681054000593674781968104742020705475317912908728300848924401609604241308986957489818107763029869637615891757905848539692637731069224551409274993903294465062036414981344980557048515593896681109041807540473894183347597098748545406174549287424309015508620517654359008184822023306440715078766737208525717529824493368225424815350584272026550116822701167607896087183137210102694470501901073474305998712772463131318197909660037760730811556296163056591834241996935953956340553132763495600311923800516662108150302530681200140532560903676249682746228987841137860478620034608872566048406246644937597723127502865134027928793890648331839671846625964761181168655338669546722696959429053892615818285846965979656226831953528558319080321112748498050232652156177712877430403627925184469098608877652691112011128682604577766911609715130229674113161901100112403311490077837454986053177065020098499251841552031214443759397357009839329141440278844659385371288505535711115146458143208811823370327058865295602639171947721414711773145835 150896082409812871107180407723215004126200626447475308699742443675954239858104758327924947390748262214260158986807063895415496935909858313892605849363101749862664585652633056213936468876162462576833909181032938502738806271180057349466134535975272979275230209551728142092355847156519974498948631522796158714863886781557375208823736615383389897871976299753653866913428833790185158294146602660801401205268681412407878725932020190920608567957274984876359184373471269544227173333741048580069469600846199245396033093282334318185723881301195102215857538440251383399692866314799921235406831734847445877855908252556314288334900766228133133632988423557661660094561427416097147668708582982205958966121135577127437561236988316566219127464171643378681897033528735348543206199829683439135601865551457639187165575549050102455414236098151086170502427137756406272012820580476573692899370549431272851364556039818783574496809728833147603258692079132113460661747810249227720610723555654086100527349202417791281531481911874786584495394854897230462687029565320765546275559074661945680238124071446070923315972681413346270908722647874639621511945869375113357765846759459437682788567100917848708065955721495631146011422386791636646637776740758464698456114750084180900190809267252771242592039704868875974992305103119700088227282993890975394114268682395964402541787725672954514938975594331100461081420969698109796659825975174758917131160240410161902288487118173737014156521693572634661786052589209166149401289680189536058055291620502204338 1205973674475422296427765705312674437578032814261484615682635578166225582426379282550989509447434700445915120191375957474273738445428247704766997120124699892541689790389940272901909022113735339096515004722828799094103800301527648107052526308911941731036444573486859731724845114390238153533982970616619688757110532484009424108869270380947360964542623512868829216181859884525224870320607405169843306226507572328061701656901188164072982152656149248878390623381394592248524424572611829419052630752113384766792279830622409179810362146583063896759424605266257457303541672348017362128917065624321215830701736010264728339495371184818706026636878211849923243280469167832363881329952521588260394786881713956714667370873950443694393614492382443440718817341970675332073845146338466552135074981715796919439406996810510573001287987723389021380099385782699711403587605458149850212274898325081793837866368014093090172927141812282821660370663544477524050267094969300935908384804012167231582167679782692844704472675911135779621275983470970627073298465427147491954057720230677781792666261063458646471144616188356068141596088097570859323648460842166792773210293331920489710877951518882875678670242168831324934946513451990614005149486389933613193336468230493703224892432058551036184092393825068026349732068002869797005101424248078228625255138509693749145212615633789591967021281895074241892110704465050566521088976348756483475898428263415496080087744249395124762389679765337402039120987071747523437747973407241100368284924234099849834 9638244652482952237413938734925476949327533174429785013987702597931200138886447345698667788213249899704037506644969747377174478466878585308242312740652323673732884635897138510156219531416779123116931282900158604690830365615337821271339588241924980106424043801163002484290504979095635055018655229603455552797348038620443296204870396956476503303984102476146117782354900182444669083324860297452992391654597458893297188764511315856951022725042091397639852417325688696805282380813157193789595711707158728265447770141600812300605628755830672075081546290899803537516415616196656034112001054055123276906654370443424772915375848221412154912533143066853616464217139272531894085017315207348856752921534709427313954089614765530569217027235182523302412617642129957559383227009799168312753823370561516941200156141825853432870918788318609340150609409349163039199256196038873712268747588423593315643878841693875458244856229981700990447827545939417963643526942448149854134844510581566280036532573673502464229572731137356935074376524146188671739026100445241680976050270772765524931937695908635965780522032282216279614895965355071288888912890732339698985142129433059354826026504083737151285561540331727017442886274539375861865786721288227041946526685818040094537703915461167827284814133170176007163023799617265788761893603861019293256312096486267701493590812952255426760070291165996186986165972915537342790342089796551838246058195103188375402696975806998812436967950463501885903965298511515329494822077405241043934222258108908097744 77029720090681674422884636815124907390550443198353424772267392032187756283703714399423684089858300815112618941022603683740907953067176044554357596428874431003301771010853138285654952221727146717992774018770977205447825779637920408564681563848871612360107272107684739273237677254481558316501942019689179130239904050382761576389644152414808915312727810093908277988628053428851210788700510527076084051987407851450010602836886300157998345524628395728716243660128352504903983187640527861353831938307699611257317775123006430691116394478520959459868710683857386792367502708251026104387955118923696090123072850363134151782807621875258073033337728858756372292947307593050339734311430284945109227081359800670615192501846802491587390281160656592498367624717768253524897859596097565267508231258926382037706450000268074354750789729981063266943863327164524282940622037806060344208922594697226240498833010610821382739893071476860976998193517912110621199294276736602842969435569011565672081333763916827404076301187050294750350262683828012982255649082111863454473699924523618930423110509337065211752175379815736318262641755440351866759131352984710069937453797490610794944517475624923001685921874532445176828543876564009673737171657771369527225358101514783186247660239397846864069729731114086883722684427873232767960747226934090509697405184786357298863248194039018434361166279123906702457599998221982489090565069389822379387842321424240196128337516126595316387787659838470599775199503899292092831507569228655416107415036727842619199 615628828129264788067984485466187110447346916488214025976641608863115933337209596979916933157602964127830430486141102682985066026125408596711138007584875992061585104814986668723186655509785808657489879522996566072823753096142109770435858724075421896062721063208496711605637696062403588160123994808507587509528414063596038199226656194694159714205334158166429267549758996511702439196267393025038749441018089514074860801837994943150937693419125106392057127956017561342216701930852342367896982120800490311413109864187095048839133993738534329418900999991841379283644141581111980489203045219561110928879207711150512495871979550061269884639781304607690301652155976249831463089957078618046074217671790033445916568314133612310051106261869988541743283766730943606267550852568767966694417673715618653385180990622036514211343939492300089975329793823531365895250361749612695771092580020827337710851412807042947850529362562392123354329513315987386055119637570009155810784677928660812354649458962342326036691064583645784830560391205995444364616944432921228894507449139142779149556465885630829974605623306826842102101722627059872415738564695341931745354786914180679422989879657093217433182268530928378428902269091086667624822777996090714925936356448207964147660753120752760449796879627353158333999875063256355070365138836415143784247299041114192242316261371323477988314556757071817126429212185958793104749159350156729043496314986525112922942950522129894595951545024490929820128711064865723071629337739527210188380477278022121831830 4920166862994978112043264417809738724297766970963999632567920648798155472236500081035607104576963497463720917714538209645909599574967152629150600254835809086644885209832757665016444951168936035655015628754742328201286184962272354299328229677757143160174243709975837435690739866490676683894640012728171733436251255674703655993447766950089079485665729369785985825096189213548842712963964645355241767207030009864896510916044442494350151843849662865256908698444516470064279514457926573957074990681125791618468522929054037765195152839600620626242620603788906611455971250676285292141678807695704899408735362819941906727387438567956758375430996396675432154520556005492039879189068108979112492139021699260236300363489635676736103158454712392813689234979991809123255515573297900746689973704142153292805685791310220764981017970339217668644917037251494241111589726726881449873379181638880675048289641634138308688027746047744131436773461455478657215080098388861285257603084690082925988299972975250472434683637131499837755932559674927376320024341090296938732656382695802956660597933388311058073831511969699509311290754306864680399621694960736735134169262763776969693000713548345782116042058139616222374127664808956211954834037516430685130497674302058566636018862520646921158217457776370763250619764352191270358324577711401540387626295444609281201437117641132870838909221339267392330568778904185693883009589338811463603597556950963859884494210378330651774426753261718259338106668124594964554691203163392442135015899172931892302038 39322486263718359982499038369761087495843732649699319739397250065531658830866034973671922553336243458691073045623285995413125569605599010576505395684274525509040662084773204553531297390911093544331797380667622054234094261290759725121276961391884194321039058929222318269294654725160445236892054542761576274398468831182054647427046967594073388499922801768058683704716781267466429824112546853956999135207608191028296902445293251612347262530043897989028409848801933948865635130320372570864362047512085789305251509716971847225469420154458770941747573785470152195269900311705984377866457716950016145356779206375469754724145351303007509366359664549307484665739537936578084942336778687584475309803376810690970719108954335935922414730974852340454189965219772322639570310844383129527288745558901767580281287699046194146740597176589338225624891466394920795984617668871325324908713828609906284034273924751660366147235292496828639198257142964790059857311453232462728164477365805098450221225847643012566610307852178820677154054169692944283944351810578727206562603731499530732919568823589003727990674092669015211768484955173447138412534829456715636389370232418524578125695119151259170764508465742572404957722799663689130933655422625919411312847224769793927170485191895779486073055951230073512750468774575845442098245561857913342547046481360900166797113800489099057059085404809778195561048831655827092565829776164927266329954616817762753094825384352307469544860488259055750892792086459308780540642198422395173305734553330960782247884 314269591569174855339460665004164986886099533078800216356074693030506562830248510372186021134965501595866688780874619531558653433710270851154626909745226216021215761767404277289598183428207749711106166673771336119184071234921580025955284726560749757816616005858155760309096173001772453903333364349640616718354340750188792160451223204609621818373594980519624963996693473042358024828076462140056062239035972548857106451022702819105638729751417777934091488693288456133725198751238924942639632844323241000830693842877088226378141989083456568952752956374378871268425484072866017932926736751825346131123387279535866051274987916434536355680757483081990282419883144353823065842040199907134967806676688693710063923301188122440289676493452386444550214311897311344440303774724961287823527054741396706396056617423095154181858340006420413081522586045160738290626576670721853949532189975228267214665010592994223369578740171085438482082014173309011017967394235681485962087480232134675057760435490402681832243928665576432453892888377061097091427993805967239782214357058250728165796603456913115719915363253606953881112908095782107733694386564405132613131738119495821233849454495497052864128706393016191979549919963738833326882109246203978115409520025324960089790446226919027413646958364966007923479092970273383232711130911423460158741228196496738596252376568384028669233489642493075714740814937859987819741072006149653060360573828310305599459777920055060268999901887498194879049967738164942501319773252080228272581663848248921850034777 2511678260365566689284666125894538486386989203131173030376226259726834156489670491319614003088192727751065123936675718906751643346154435462469782155330276332918607515218575174646754059737461678586632488892510893524768332711825263887009466271305014706026941093710402948973505490096435195957986743748980316518316087133557581901196171087585561604109142485822177336221964373256669067050069098593469493555414413291954235139120803116600287293458558578916785223670545175431982079420901433391672093565769879224169895211722623959392083977066484880016979916317052117652765585398138818358435566317090064796861745508227654509509893182039718133379653591870151987866215433612765597336971650873926988348598985479375084217490584240060689885783012543852056189219417474214193818608921213907885788451392678239982015315112183984039309048324660784919076719409210885589308476938350159772638122816407527120227419628381631290588735621194032718863585263457850922306983845287424594567307083662513636800360500924317352828834139864423439819360271280261082629261514795535604231849033677146361900575431394485848133107998459579615848294544932953728277424634895535573628787323595162786248022747459273880734315842278880218848761441804300292813186557758329285534950892359531409117626169802671207619007220164622981493736868612880406121958477166504059372513355492939199068720120243489572014909263325691090909774986867881360498294526389094937632714930033593641525757417125735358509077221406562213961394348315406795266227479001471195144551158024919286913876 20073629566590728071025077115963707094868519732331263482593357320574941499413520225046255516461593365025840157049552296850330548837277851821279118341937757052829907581811420465173932538645997562839514750406446312318819104040023613704093410846940254415149035899392314534408444045417302578321518666122109207261551452085799263002172839566987699798068161066450565927342678683848697750800306876156437638622077243198380754175438554881244483782532051777454818139468410477601073625230784914026942001026186478604756546582876474621018418139575622031973041708118574216780741208376596320711077738047547782731076058864974759001923969996619538921308023357572460469964031866690632072070105156258076666580322914545488997100813287975537357662518190355184949543172056574254111940652548027889578333654638096870555495028828052188426117630874601249325659838175449425449764247186544403133577694847866058955750924933605819619486712669501911780472734686237492440833254070060127727719819419833221157572144584190239770672903175773020437570569474273612137745338456920103435214319859687489522428410849559797707253851633003016769635721380787562310402305644473177471773948014581375452108590021192616300624957603314820642097508585842886200949475011224433362998585561298718407624207646488685433483448743570936165246707990341179995019948118875246256078572075790840876532246928265031113370048446163544123527380226881213967172357310179306687146944131791878916081678463848519490598997724197002228412791987249255346064356294388894877774563559616767445256473 160430913949504095020538407632357996554037173945651549474660928777296066307524627912885654803004133299095916515852644771861649598684155602369033272717626958335172252857337326492599094805769922589750511733737049117062982575886088582441295830044577860129157608859119367822685483970832356200747881481373589918592740844256369911154769546421006694028239559932628200874988718948583065852342087050550806906618303737688615705354694072067801481699989288497167994653119519691424489910755398633062212647298229657341016442766994874259784300889320739817643709867259761092776865561043844726127006039147883906660674136167193407366873265452586595198768634874499315571165814928862633421573103626032569184951026271136921438701337546811370411061260176148206695177999612833005444805516551575028869088146514025096670415686357968567537403863591433173354930541162354797890396817641465834968775834893209095974967363134473020991946907513839190009806074573285770048443578934102897237948230127221092405248392450768113674261523375564909001170021912121550412042022972138455505244239138387018344097807835287407812848431068847199283261264362828496228494669258620430788855405018252634541059496584418840130785997220227046606479015848001206164307002465991148733633166507017404063240678162527552857530288817134302843656128390726862050457774837606129995694094174514721852533243527210610872859968112569437777447481989410383792316327954560017660030861922732014933632144058429114102235125308563684338798153809803337023356523832233946899618729697959317217853250 1282184322986581334925856917295636407495399596868482182381667988373788304743446166791256596149203791734428808704774487208900088771663682500663909675980042227544285186280681611366255119020708663547909913171188382730266770088189033585154706874592718680139007469041246911391886537811525944537687710845616427187509034915043687995140047834388109602124506642856797817399581017482290825412331046013236062327176803872107574594394603548438759849362622486341559110813016167221018477980875625548400852079877839822803464357701795568337682517008996858142579397676452502419458671764833647656934069117276039397927960079844535682296208812212218781311234247839067201549532387762734246504328325278563453129764092570212037499190105913339923006812169001342991850617682794880172904072637499875602279649602820061851268928311941526935435708766311313359070563821269307996371791201763421699796580489181296837397653184398331941093306383663790852514681820656680606437040765165468126475492404985179695925122254862749865503875377122901342683203434455524605095519429577472680101806321037490662481967682676351454826190198217739838679703164862004321483230687899490344055493368585451957406716182399595637165415079803614260397712849958168020648172759795320210416748751418550826640315963707618942529034290381235591225653106047008397799844362094434814365761251087633270162574415792263271599631689945216931228762533612655484406555216055728383559710963351115534288012847147416162640745330608436632116851050592467270511511136539414171218910103951971431896055510 10247386576976756377313010799696500915701044438907100112148739077796529454599571227975719556307458920703332901528105956460105626799521102913727490917300077296221560129303092371163026913532575460649760156023158293670375647503749000562767257490775436288557595768129565751707166045669214403368393325169608649860293717443226278320663499698631422127528658700108695922341690967507093918694871478391958116585034693474050066923919248392444114384797245803218616597453350757039645005106453760564409000469650325099260014674315719271699011512779571733637214516215745114171053417957703513941765764830479533850463473213063751396081484379799998240642704320722788988349222358407876475860054002890636127221746106655311851928382685368927441984342162517326722574785863454516799027055104471644169574701896079927553911057937683044301743788948885791168144355697348507321867865716656544524115709542283437814646255487907157761134681481469382767448208347368947685353835834042632115570473692150395576101268834127120545734477193954368783691945908391150432631653140479466161254934677910046117001519060289175498009658213712175481069706386508690868077540625635948669920331002718377489125710743053796399629937318903811057817023486855330448345754509283061541842532835964287761269047936358729214196603173656269091248549429656962397835494110465816032440858734500366722865078820016745958368270849695786560532143996993648004777235435482709707305468688305102214793519458919074090078568740758784472493990559228801275471500689244362390282545176013088062120416014 81898515500997397340684277700860797139602539011594321090594771409971633523421914012949097821982954704229008796706609600832035130189145327055400862887713218228111034924262337751098204531205570489601701371374727370499380835524845149347845837647424708636732217967769909714935517044609905354613991598632084525549991269263584112314725343682488004366463089382528015435003419383878973366957866004856015672866958272788934213095475699337557043483984311206313951843418829355788965380592223728909638129857463894552200011111896324072190964853193272011984447399486605377243536844584221205909711555010227851648806657781534878954875578036039823703310219023267491280806967755046296493319344616232889533320262386630860145640269766895940392206618473792697457267815450983896647088901238246663046917595919525883258515030943421618685869410238638938635206681578544328624125924261270113014228149596701371166101806855568722743699338831424405455494280107539017319981275759394609718523698001237298641453443213738740460051694877712794018140757626421840871696604071614584609666611519289982700109640193614196409309538405326875497034882734003597641502358898594355109434504606759535778060367861778123124737246099865407838284655165834957358129206714298114626087855950600643830817225127808344495610847615928018718415263370419155531542855036302479812116888986153467495289198540561013681971939953512068250986898703946968477142560361223187098454162740751047992456103602724303284307740794612960511539000071243634204289589523301872310903166211582553143827638827 654544520418249052244965999769037176630198967721554886944186890843970275471414173343181384500865736963989366682340771247669665119517452312550519626282308650313783265752021652281053012826010762169438367701126370866880828579759494268721105710304439723458337868805345331036451002803773794684501114167260277244159427992725705256282946886630662212831847237823515054377345113636493405284987981637343038626959387100586086431193861269969921816339025730986482417298662944492778672529089154769510619109737305124575209294446660498169202564816837177902617750757980716512474145568462036668246759888596098582750956542108899304514775160524016278276296768592232913615241282865144256180880400070677610508418976094457530420929348096009291697743966868384646382017396143503507307474594759280102395480822424530366284139366323717435744901791337527017570342913268685337137667979160478442042587721649967834522781425820000433294012114388736226575252705791503502482203387701643895555769095491163475602305768771343487357100321450719164428381544996862154667376929839323496315771549439125955034152167759797881304728728788976309845945378960264185335171249931024480435388918989266094979758799860813674532429361080419303439240422332726626105578614273796920494479369021797310764095395649070918382448061913185456122080099873299231851592106223557323069791044002288936257636429353692375467637051532999331218636260215873716820125330589109518376680287228986601212199924042332383421126084882711094204733702121124471070311952363103933207005646836551963380271203304 5231215423744623079124068985664669922011430337318702309231900235731658860254471355894850370513220324790387855352839468474180949062248188427604141856010815334390972692191803875054287579722383871637447243490663968587503504133583962409221302619671650234601528127719309335454164937179766925292338826257991977125331000193193617043600174817206289481255114249795227152393955175651560805930719756007711105388611443150445183116243591271350861660067280376785806369982982710576328455924605586653870716540619096659446209321156389221090581672304274849850687601155806946136283626498840270586264046272472387519934999274042706010664192380602250907955989062001686902582886118952346870608150385574308149527529400603712598028356220756345562144698051149811190848675839405064997194859718361505318428041278770251545352930602972670621663452004850534958581155168619894195806932695091143929122560244818571059409184047721135297345276123465519385288735840590442670784208002044310896685342021563464089069278456959755513302066108768712919268210731687822535106137749494215469663305579013597282960286640946228337868753418517287611856092711166962963343573897839638882133090750639298395342684652814091065061710800535761869336369068521588834625945590237372227913894996741840615406443687054926137248639914257241576191589502202649867597179042192218066083777091784886064134575998278413805401390534264517915628190323284486966140123824775955029199663089980744581722779824589031607370056015122675702767697561715032215213847328018595282745273020984492076876161801111 41808662046351241284144412976473085081401586235950610911196252656087739182933328885383354516949493903832230060748694361698301346733893156167270944216286712145871491964658638660447921289354902219975359414545379427399186427242608631311222951728981049984300450911203170415232852624812832713557550050003149102206089531976379425043347850885280866611380049973343570452336954639352952123843521844447687487617991608408277529234944340721926809278778284759143581976837590490450294089465753924725805628703374486171948236066454645973184599160356549693252106857854013483690972827626804617534031345331059654910386970422865901488055811652906942176802108061345320297339615514250073013943999825190877708832552868107430688508185241318167788269823544738454238451649964223017679904646481212733203256556810946669811279240036793814818926861283631984470048462363931620684489839482359097995932189829729192855231247068622863096167166522085941331459243247562235289763462370864134363473488258748231894494306588418795394044983860280272012463877254639917404184655302436240483606714463584951841881467609663114487834427637105237072079818964109169851988655684831221048546353980936028033496185603432268127804296274415615961198379519107177066918040681226771719065472554391399211648417042260825578758028023199926195073610290959496818378944217062913318226512857229440733660151991624259552945924995961637914449895449233173125033939887658508649382157514189531210327863748686251439310035738875302931668350621716389074652901061965035976431815710197571816167500705974 334141321092863408903653057674900605713534956143927208260705552314827439891456729682035001093511433776367249022610195277790668435300822651043764784532113980702850117966583582346828330920591197221785751037022548165220481138827446191857098079197910174884808658101983911822402040750985906052037928189781190154793158552373052079774691005034629871179564965830530871171804758296986476885685955063426359981343978730779658629220434753572751032306650062962997570129556190929646856745581798660421232016457928605740833944714753325632631868115564334825266563672764825687183354850297371349936697848605768742572734704910997504002235685798814504553419333871589200287298560839787472111272218478094480600376017588500132981170337235586925536145110002073761703937352077076092460095690920264377310471760047783147918384601802234047254760092672672275619264070901879766823264898922243623110186236495708258742438987089043637496035863046102178687203498567724508893187725621460705034900800108098676417189101535916032639553800327603400729270263938343461294595522576969879888083140298883352586759265276852432901571111538110384953036188829482306248201777255829042001218668716901171527428039354825214993035720715092888086765952460905730538857641207300846079411005840727695961648871257727914015328958571733405529350822368677435028555048646324744016975340255042203618265814338556309839268321930630779429245769401263154312109488492566612777920471661897705825844247935514792190512989756185236640795242047884224474586503517801496750395085415226954897950870223628 2670510881393072349851297634033353349849929841769396180929701757062617916579696314370247969825333984627135013242285787643224413891532061035973846745208270024910770434234845702044571020639201025378027985657552407094415993587350596474236826871557288699937803466786780136136428979154008669144487843066165110410330127360853137870041397124519252966296046521769544730030470308075805723437995114382827850081093972506157530569674548819643954591776586973271864149261455223150293929504980765410166469472430718718060196646318387313139093447297463252965297658908772732516721888708825933647093297605878348502865070044431794242913871650307014166791163830212307141404444667510979457298667212996534733057759995187543101574657874122551318631037003161461516964506515960517305680780322614958842475310885471182008283802576415004883144870613024207764689790080095342608078511466722815053722768969869991449091957755705427436622721859327227186456465034993998737501024196194322312702420283263330315799934704186354030178638485257273345944109718035155678659909351152792706294395306343137325421325115050179564330531388321818549741136602766932778081170064718965123187961773827648312815023850115984152833444203001722000455524124618921092428824355723894736373101346683895876946789593910144252720085487070173912079545361826910457112051239736635328099086770443135979470690345049744380694888914922410673548905595865243988446576526946537429581032250839078669059468494812672476116362940217826461725637274168768541487234465701431435212050707061938196325347860642092 21343162400383319516263367838891046201280507262354833299537334828458975981233928637320986056157788625545338439954275079368201506721923438118034030021121701443994169739656373486475028967940559512542082240032846414917358040178876326665288374413228875130119614195119529124355599632745773979548362923163084145127177629918960431924109316506525475558751542697454379039434456853935326282721698894428906341039637210846583304881998020938993072885616411543258333721276198930109752127629864133168284571949054899780740567357781801513691733857134023275145107945279684244052966005877452080598223517541739322391481918951000461728970818573105206530430642916843379091056067047199169156307841367298872312240868007020065061423152064730105528789190219894116446290869074122232228060858874820628995577824697746110482071471910002755052698566881799776718155252070764685641234458160484265605790069841921803297644571367006962064305895205601193969565709814126711023219420992291617720335699135470182993896194565567406258674443856909813350226357097173632339443042692901834114876030358093461230233903668534128251195636104610047804976166488871294146065523947063308451831669752008861205855496521651086627585072897303712010499312479276327093568512651902192619749074357323796389300656268070697569089546217784995191751279551871500942455740740355441361377324884649177905936445194355731265676610140211200585731465873616762051563874306477286109734045028970016476840251840218906409354530235085003082284911370496161926575544260602477784729226913739129754373431361073867 170578164215212318833963345015295459907676733348768973557329173788250185644222428180073224484932724522813144035296134375169562946211510345146548868057985039856721755056379512521807490328583861312463625388267435846424298431728563374031969967218565528462753692469222512997263226767215908926494527417193535852194266275566331568014878981853256191124937798726137061283402842430493903658163895633047711235475830956875050629365996542061018201900712214718956631930566764632333878461947288293443671200709348172612164763393483756547976622020761851578354896763263663827841415671050154179448518004428187635297150336226245236332204017443838619899845258233633744604203103949098405332190962097846878930126939811793149817571785609364704001331073802789743462130963362457068847460148071397959004237835539408130738752293639533919082795448566491663299385179930967426835942460132695621045645490631207691917545633514118730684867293549955008289507846076582299851597941291448779089662963159261315857591251773756409092353443562314634414411202279006991322357799288724001708129889058921674018409500942377926616178472662027663648762015930114421670672629143517303993734060763723575620439753452116505918703497455933448433391168043595398396490580709473847157329419957350793490094086940694179006554678487356396676160733899880222247422967111165708012139216347427223842519031070442774956747657296843170935791149627577949059921438515359698499167170272674565686455235099275856458070478230268586693601005788690597561798239321972723885784122624463633157571988351474106 1363290327048652124627134049614244287782189536941488480887631939487910907312769592884931695991269163950395217758337488793466505196692954271149384216046425474745678887566253855267384126332735610339082283556429151745736924159468564295205658264900691160026722834302833113197225377442913814813195543012116127569518244120931100941004497380127994491094622637595454912988869520313797540335299212429692193810503660392922954567951650382055058024831185085503343297863010681945351052304289171209340036590013745236969320384484633531371250906321163095305593607722029324571182676530835137820165313678083671100148466676705535801950895819262548986210912664669356719668232733149892363649104150876483793315513698074714559841053748285461045557198855186503861039913039537389821974294025645242683733479549866075621707716755971264775669157875183582413014932174398911701538634727116479737707418879630224790379317324007535977920210213548034402204809713416257076484486093039094592851728880756704353695686689092232455845608814472429356861302139965732273114591023429807971986384256190414406231449312061243628062771832866033837654051971338999562646091712896617226735461239635497056803009337819842002673113291788370750224103067508886209325863259529702812020961840364163522690003662816997021544077708417707295426849042227602541483951687571260857592990453914203900266334805667340940079045746738102220718018501606285547006883707871964409246782347492343896946020710935207594294726983124255157405935093370812234506108563917945755793023967548233060879571898601984369 10895659432813293172517483014674261541545750010253640587627728190106389308958332357188723016049022185445090132190410558269796421625644723047407922404378200065034766088783482533568744607549950610537505040798677225818336538830376721935126453979164861027797754057655235408745281493720771513435890767155941372186282425033933929941718535051321970061588511529357328468065071677799950134394008952148635745346785960410499610173156822257673893689093742009018037821349889175544932959400909426838928352156058658120255715252232315629433811024641479257244142912589199445098055528437882442092390812211896402077158894296283445725180945541003395744038009932838572090936706165115253528053789361857274732073571446825805978890519799515975351293836112378304267053002508273646716284335773239334143405743631092062030050205865828335720067023808301457879933703223278032706735308145850210578525674698241761654296076396848036807493212532498748680824184487145834799383830895624744202783193772460441926437971815394989365140129022048124067316487871040041477760255336893242173034755154426996356165382376875106254797999914678029270491114421734671420777507867914266462949594571359653756085378598076098008972735507713412840239580774602510736612300636428369532650188498359441077685788143572400237072416057373949958042973497264180178290776390562308283488374071446029591608716142425111003558410458615683364163003915068262337344194362001881919350019762561907954737428618453641322661903437886289667544634564869471048632578192121991631509239641694516569490906824831728186 87080103384916619843087503588808142434513193613583326495262434727023114358789969227287057389716833411189580607135816117207118831400155748516787144427169294103615816003307020735162377028093429269873056560277857890365445860718461698389512863501895953143560877896319087773716691301493777991570688029692318013025731643849924787014823296946630330564845906297385043930729370988032194482186340154396649806738319209925088830450405990468214949158295429203634906371285453242590813487825023576144286313500390990181381230635343869086949966817164450307924880738972334759842825912238995388723096351695448761137558854347760590007603363543127075043999502797899312868235283958388534862691142929941912664700170515542597590625019004913325720998772735944231256936054289384228575507513114829900988989242530223322323611678466058063207782832961517575646116992935595264301877178005331311851678742941127099745853979883131319455639053724884681988409872967487072008500829897301825058939283276353373713609031699358098353053682170978315216972831683686354781430345945448691762119803895863713254468912875121285426278039129089232080333153979184122866509693378637324041287300059638455769608549038816360971228974070384290157134349376421418861503173749574748914488507005907509718388006231752737867311889377524064020115434186962421009557206424419908959335715258260233254681011397457491230228458038531920243629827238949346902422269155912499391954864159054390051462195647373436091926630516762909264586843197108103029109085403492911980627125074949525904041333108245156406 695960515293447401499776823631790440174457323160747517972357942396934405737109079507914172109680530719147571500367125191644281150074901688416084730212557588050862720084162888792467374910112326788593859045767698539054169164588996174641526426167727864919123652427666704230717040807637051736626362549342099716403467248205475319537673023844243845805667173561890222249843190897770382326105577396553825197932875987500927687762471383687503797768543039505930617955544254662875740713474061382680746763556242932005566267842565364014271074316702104587935434546528886173296843522123548016077753148864008152635564795405628250502194737079402758817220400032016337703548460179415474638205190738582910735311813782297423078238626591242336869428164761329712996342942662268440472656446269770448914285320128321099565996428837550079852120729483159403045833237587488792668554888032232666654897514387092540530513391148024886880600450794408058947192532542964820277890797545985337687474296678408854967422393813429859508455608920532186578266806239132313808422483697714161055399838528097041116858026841941797794757263238401049199511380238993205534564156870206833093988070832932127185301153383598102357114961042426411038351572681472805518088783649627359972722609178160509056838575701663726705815516226133385429688449499525370942303347981771749443110067281494207769140444780044917596966376480771594768660935886177204209197670568621088813627942381966872871268964608075143648863345182008728522359432281109241703997961869400506448593663408256761343823926044841398900 5562250128442835097203041088347368645521497485603133191817622874762840215936829277464946152877200166637638602536493024343033088426411077401314336757099874854349925800076831873153918328859677820517743991720801266731195476570888775516884792170903395873030528221350434921380912170503512770169185900790345187001434043558765700383633875798660185374740952420240391079770646487893865732189085568252118626911965813532334980561917839023898872007558465230473746128696930911441595996690356320420902672062319380345972655817663024928743759667549588190761357743311820711165583859052576217814106046002186583553370076434680925290416433887912675224471068552916884070172798446650137432872595574459118558197202570411480971401974454816364085560794975018175753096376262275352153862896773445893899502181139823813483129039535725796445356280075445578201287785637841140602093135474152223277904859153826812864633851775664967796148547537907897952436972915025951342282140392176625352650037421682047382069765347313642696408781390239659297797440277504331094861142581473239985210381851149435576996348147622864815621237979010952337094360841713216612321255437326159495742305717661376658646363084729092802886732104226173884620984259582752160972363594553179277403354089075048357927235648123434207295904500849063124654807921936308081622211648510578523220714344494423475493518756195386996682027807355313481644425538047329231988879808576996461072103280828091545884220820434048297927568780119775532973209347809829619685667794168287705437824706476249667846213871260936711459 44454596933392817926884339778972137425530801609942663828319188581872767829964515616513470690447614050047272387217794030335317238122738609500281494167184017348020166315275556596494198542494171388501744292916331195919645958913385652935107118026778015677691840068152599041312702541140360926758852654702782311526180867553603685336745527013049275379856057162452629542698598119700444085195651920229851186333719953028597755831022069096904108824157172187643045726826029371383756108200883185049328810896858689316405843677849721963981619801884692575982554966293108653376922398392628098591161150348961573427265567652532214689093527698484940237059092240096640200390236063793367550226872177732154565871801720674542999366899501467796780549631513092268691632635671023371630721063303111955876874448874696506722964145331923053681209100835400291272696814698664184261211634249010043937447799923180877513563237370619826354881212467921257955339394538164344621589520164464154010743859227926371762949469632511359834043890037650760617926603505493513720064630993039199743469497835679156466117081898314585964726343052630319205718228504106178673510313004040130003689924766449182999748529466715498424043461865788575935337293438623455993557688796098864714894197925757243973877839711935024515292530752837774811339309514014002579611245651429275757378914986890241217283918467113479628267654827903618689624071815757559215905577560936666702498925711634755530651405785882923712676823232970630726007119346479072431389837329685171015081264612217075571809222222846683336884 355290084406071958425969357752881761582246682195161928509364707880262133056852152487604234932390615236872491232902661412580882002849531532911719264580511238421289900641230098217602442932359074350479323447140386893619663038226706855921634604152080799726835371299292912455708057403289796148672986039567789120258010690709293273975282201563955085076128818997111833968822652819478786386896086079850574699817067702189482993998577285217595751346720293994994269317224783730687438697289253513192644975603676131343166529043176942225455843106603532171718005673623655260769651718815965962855250596263527626671552871954815881521027692974128677275126802590400264442276158603837481534279160969719742843575310523127929920015320637234074802020755378836033264576040002720479072920171937432182091243027407064296860257970576924854823170574842028907030845220498972433417428122761830475605945807727453808495948260077095290160401318412461462332364996456568272993090672474111635186477961499949985057813628331243149103857931514964593676834008862964173532435874583028291678310270613588810221860466815076396519529996873034960802680278782305493131557560569927753959925491533793989550013921572356134447633479045702448033097258472349363898405935101770682637824187207565577753370265191356623017952969379548806899002369205387671221388632786180254468115089504577945850261117991898553256454639465690136743512356644583230125638522180465564697228135979155032655277948840443297370680612964909106793630950642578982461442257369719338052665111698122679408610731909558447996141 2839551471005851041437022697898565286485714822320787544764722089143938653430233012691187636012354188522595823105339340251797990476494679171014273358575726131470884583676298749717161066772030551281825026212868016563281629223553906491965980568013641462811754481933570056974883114868769394173648901878807826094354435659657333366526051160029597582955289611961109757521353568828522988005138418071317224864858721770716880661043032642642576496937670599022708758121522678825141190428917145311987616402791714679692049589996702482450967822805905036581067889511306732789760778135234040283046550287613791454618726980488800877355538676264144576699595014849744517339449497693091782623516328843661115086021205836933257559455925056820777579358025612590576334380410796321059134006747282253985062279642618031583768726216773385690007392945676305735867769862095462103333451287949868014715660990260815975278212023435560335509836327421784673924218579482139082680623158043675937375657640852776255978614327981884331876472157675775530395255143582864319393166217095031888710523787391277390166534052003723873168729694652730923182754086324148197654770795811917312353034204556444949520461106686699180564843256286425588423334436715614506086854951967214499145409374693456367059236943017730217498815111291471305795944693734242351558212295856478291199295446748456375309865851371956111687331616801732632312299080700926004605423397615638556626214168793529043698929355649054682178346063009023021239505771409341496387877604141210336932269180754279764681261443640110278202524 22694292653944964056392559642475395957160521690161700323921594639326066663440414020306035599005567661730334725581464369265063608060986857971891633058215915874443424081320838783369760509400120528141784119156776267995555436283174260983775426109015908575480745941107040138624062243887858749127394238124297837807612979087162185058943769472066798205483289768443972728162975197494420830384149324772457333665303848044534148309836542343243265657655547974489717862241301802856724290148697388229389487872166527243900570333616573643270338600770919390875908922081979447404950946102113768565575079307471429931801195682379812121048717521392922663474995449319550013348487476249116478233675879842189058834704567620590192115094635657752034511917046538184807970224203920537387596967933538424092048944263682279389233787626529998872678882405256797421305696090001403934188356718292272276980591304309658626122520281096243798769153462259665828105971101014232720452767883353480835056203993344584539056203905439467010970579422843820100024665761770777774238833136344703022385564725011076302313077787088307291555180295925765657927943903717818773910077565892429190847472462955777514165098561789027351300619136425022401666500372218181712621633962386919562365788170047083829650501915857673795797465399113983298064451791405524591664686849989251908496147652734372351293017119700152237393267446813979887530832477250769177381880793236868191180243950765348049367346406612078429220306850625543149653002608847029039453049706655618225445165247273467393120614866116109634284981 181377663886066863941437386485171350877019550301874467102985568757361108242474074429156774698555214803183627196776265420031721132068788023374986697380145781042363168775885217812282856930710813205777523944342732707490197778276579256634759918932644586158665353180097785063783476835635786920724148736339797200793728190077723261490093555746602128346971379973576596726748423964366693846886666801490525976541022924056865108994429491806441390787473899044447012436638522193307430995703483038255632583556610678210897305821072034306962858433679767428242267657634324285610216376710623774177996479542825104886729454519954450579689185149008931249904127839427192305565704461521803749964774491856834394078180316329321889044097061519037023007109241357453476707527857996035853063767129955305153676604212590455627712912795885008504356493713965581202781246728943783106960241628911879764433759883971273988331145469973560991695626605679145742142272813737831123299490717362497225310558793934615188028228377530469657388173347244299920717030895334351776333972077147980660287612967284116866142455958992266654801016463266682703008351638652160912845721419559372462914639139349578120363156343288422838350326856286087561617034831571048524212422296851166892370144243328767648554727242955249272442838863053801064483612728730066424338420773447066245365455206176890979156138076325127435775021827001210047299100060480983466328781673484165401647239798960477061035792715845838562672827691945835521983949358314838127164080926389373426982531429630651868755283798531997478025144 1449610092144874264074589737602051117261895071329433855302311304543141884211283844519595828700441990674984269854534414263504577067953431462811913055279839437871845704784043341292365466306049412109067095009830657773383313094650835851149880692558098260385650587768892348157073763224830771077790713504972475557167078637872097935858654993013902058403129057500746656299141757669913052254173781223780367635492067861292892025810501671831956024222161200028286028719030094068308394797439721158714775543359225411949691231616190906395807366298558042807678289953980709203122542553889693358496334587508659963081724903090174857831780300027801580433585778680804020555518351686275403556430960290419893507695010684686710807238158824179095323987098020487160328576111196934217518674586423858942283905695222943973447427028218081627517981224848922678501830054649707492818205296103150474106835125371315686961974853813387574406139915975311573317956134175784589413956213245878185170870796702890161571771614090570439070072178985868909251407189615370780062157835857511076824601324903036371493864015171757001032543650013133148188453478787776718435643792116240330229591571929871173932954125770204032657561131530162889359649112906193303855358952323564048168970188471698267301724808208557351852402261366915883334813277765525412494412834137478258219081347579817569094298959539285604994651029987123383083673612614530671594598867483568202171550074849551392791745850046470026935144684870400588301588886924712546320804795412462706975102645545847661653614345469964987165267404 11585608546528389314185076029886689764874303895071968529582601826307395625387815720341670500426220237290522408949535244461026495970683677471446965666402057720205425640526367983314819042771954300978543593080129664341106636924043782214320440788693461534076927349864098791727904158067239204182901734294882411976958381056620228350262977716109001531452562028805951917627415709241210367880807537589023757445729393474957910669735801646694447787716294344309738076049123087052960770187284892781190077143324095620541281164617849869999688075353410480948233407998919750327940737038550756470667613178086125569713418912812669806415551244861058619910192365560949243195130778860155302896775046020652172760769748446730942215886936832509346629164055920828296412339495140843326939051794431740175254812559879404203485692864698721746096777479160556539379453011590557373881688575955484883693947859943220775408623587457643930683169687054476389508899196129246200145308732345930186354089864109177619358925204327153159644596800305464966866236771687374417185833169096689463925425648708863600322461854201575587449828890055401456306709556764482317059659660635853168891844767108193885436008302781705722076730978079878692813129094861567902546685188525273636990842454261455852829844522409660973180356625761649761557876686339822922674838147981203966606501708036848105464850559887220494101524315901685642269025445570664674780381949713530112549068439566236769300047988244105450498359526177837663570377253997378858696937387535350614836054258418890379759412880261674868360636500 92594831034202533392277765399794478519894219285138697962238158973756208350155499918217434668429826255285338782986976692068681727991142853166736435712514255329645895702928634721008852749603409273257395017360045685439934214733082574146220235188197617215703269565587387415049505084479898446159465539745112191078043018512610207613112596557125476539223751871355217104081969334805685971362815479706865403784130195888416494377492340872746256465953194831310968329273735676578386756583046516650486566382672835564566369320020440781855157628006280180097543861770406052758908061710534170109881313445809214513075966080340746953326276651252626314691592282944686702383339935208421575321500901151645588652492181670253790022178870780785689221057135816648983057640673745648318790235231175022658949139673652887668776576810124283898729598101385500931420385880480747626704276280656571663633604416772635710579776911588324963225184432346573415559777961209796767519902409383596620179110025104461919160791637302056680319785514588082003043575066895984494751239238802044850186698011509230180818812358902142929967504834689537445855792274131662143329864217911266187652475615672431378298401347805378176146199515164074238744102878088320978286653123426152565911610865366284281421360354352643685673809733503040126053163220249446367859321012878638092130165168089660503750273998855598035756615067130990635215207312084438229716874052822228654364374086791246255301686278178863367657615689949261135959256710735062765882012546631212054919151255852876128659354510438150679557835052 740039468669485967004976990919564641490190119758941162913289761876429917372537705715438636226542965982311892923108758687208034120412322113527405933505257451169343747522877045257612274896852573876907100629792009054092034998273312029617729493679706513534234676341652410539506544313966115478117971938856544781348203486985264446751008010885442844827832982302292514413487893966827076014772488654317342012848994882646044974968027845546156705289499709991325325387102532627328457885727046505111389423308225683518441293574071088949276453980120588933164074038083175430260019897497275803200190452974276881806265663527124777204916810951350975395087614858898438407269733652409169383364950069835589321350579365771937678426092751941566526347076336202010372675493264670930760693358798951913396589190874617085314746842716665927114626841495344941887910770049522227163162271552688107539719181160522016422162886850221179974156410079586514391300104780091748664212765903352549375966680636689247627635987578975222039259748868009796680234281621637764766620672251182003595419007864856059777404337185912998759357863321589852571130590431858096117714231563557027192718454200788726141519619112003093477515734717460892544535546735515634450272174445510924422915881449538301709908349807765381921683813864799493324032468908793883814505242784519995525844637519761173786895028209404590080993161229860864632187344355278368750708430358807729471871911267632139057079023485268704455401187789097695434903008155315077517945644142331849620933629508889182285480155139766758869358068532 5914571246206612152856523956925998537115070033726337548020425825947369287909786476376573559425057070007061578002761931122215214187938812400353016296814393200406684294463177839210479091720148087907591188364396041904876735005032567354830369708142832627167700463323191612875341375447608710260184315944378877040362845905570832136485267316732902200172441439226534794160956558189985035191148235705652619383013761040720113736536380455397134813518688780547350146852040714699207058275812005470391382723965013995875785572340469807432476217081594968285650934807329042767733467567740248315604651648865439832276750843259767825034067223323210484121854855815994236185909418402859679014173847750567736661540631209201242422379172127676209910478409970310135184473811505413041017044382184743046644934938557165667699639769080329509411373165391436812284478203946013547279209268055291328389526470443870322707933225067204257835225589375065523095320737574929980916927992711120854527934351151257402377976924850105855153196476322193498419279562023517667542031164595147365593232010429303324237980851463796894024065201946730155515972697563571734625200290719955055852239077425803058410883535767773575634120131305621278340896068416676249226956701237252460365711335123692668262912865068800583587839833072019909929593522054330961883184184931895591153247584357259908150435280277114647459980641532957766175662645208535609722404377942588589661847878533960242266086563114435654739155792342033506171773624024111432632050501402718297025286689814947798147482626956794432159931845180 47270685261410890171772111867542618962773566649006724889612133977055300320973660079213847971070631880239306323042075705563950937522523449621566193345388738187548813706652935699869467585717935970861700950764651537599951050019180255448851740224952210027396082641868137645106857064006917644568508749415074515281581648221365372272145614900495224555643970592307707305021176062472052045559380484698372595532149960335037212811631527175203268075179497340960526040792597780863509035030367506971007614583031391965175795955636437763102205407275820850213940151495288596694900952579812253236518610213303243709396699929230772568152872130566242214276220701860704130792180577779055709846716031001370152707260735229362427120583516271495761739653408517850859471735206380317188046467574304907553168338419248606983699512053181522413968597182367138995155674306499641590157184302463017610579040667392620146216473502117049072551122335096365370347233188318797348047958868368658915279749213116324079825611449514059804544721066990036615189841657448145656787108680682136832411739266301882044760564969097684012552188506220689422765483791422607232520583793203863297717904612629718429301373498742683238592512132378635913958332134385006639789618918764855500143414056307515303176291989027880944759329293482629994889827079096135317301965199673640952495671368166903541766059477708201866330191179825936406602623365228206698547354382168874315659304743174152005747389049166510361932379462734001294249182970195906351893702784418736659171994707657035997276383001792980779827544884176 377798973744135401870273382178071364018605467713326899238066721929846679620233178604555458972031487306094144255574376843864727000192753305565619928415610309398523545229582377505655531892861212075673477357856899921666927569769814841542698830443866923585233290921329869007320324684252614385183499510667077745530936611741349059889948084517079639659107369461526017087935266364308314489652326901564622311215961499095255739101653506135694345389322192788959050670431792595345068001371086570666369209189277047966482241360905750320405831933979942710464725706151393810540971369211306313197054455239857121485003405122114492155541812376246792910795729773997746104547122700873275180612245263687489031254777213884699019747231840980642524244436722266607307080494125211178380149595092273732227725026360102901084656593951177932092557890639886229654632160601013358663355642725277076957926132653741556774795505753155357970854171135523593427049615680769679926290923758350324259955793223803108515966594813985393669090425826117456472212503743618065664373035564156968447391269713619796703791183761389209870100937473986372749513024987720097235240386257989564716268837935332149478505453117435824232940060038255571646233262067113660045343600513645606221206129093284799713068735161389489232392890833107006012534639649280225285674749522626442504685126414158562743387131899038429350068813584766029133354190418805946944198775570222928886705101875256449739438435716916801572950765084680489097241073812153927569163017485992016643981691204369796229288432707568428217173160861501 3019464268017889293877480804821233889690876741379362909154438869541634133007169507265035010786941276497048410956949364024045133626532781979819579910311200922018698792567221375756263953801606141589294846304269774814779453446075125963798880739819611596372257140515619185337822002632745300263537498533945363521715980799641895557119891970120938336887542426497781195593260466746292892577955884807347133335577764936291756581016797990550209845872623115771886357761597501996595411110713211112421336037661873705042167396211311009140069118308033723281088893299727340991427573232495679714350330234617863012153039155002012671347558763039894707897426564285529661905267212777910554736561858644128736614763832055921178193650530169164332988223054989876924771700355283736584570906844148175794227697510665475627023151598493420427776821976380628911435177920499450069791591735287525246152496328027378600121482494669630553870374459805905793733409872352041781272922446744808077847770312399498184836832512094814527264194920680698689977126132635353010696588059517474499687092433602270793999831865464969800829667627193545518231682905676988034019948906603843700857829690337170864318321578143162854091874531887578249770150126258292040910671109954467012932779964680563822345201223086505699749113384681898135330547638950905432225784146870585340184532542605414413233558043840179014198851614606047845141223890768280580827108137568405406672529308006535328197870912680917413101023499275170181131927186107158516232156671563853674534254752620424843236660728083410362110339743767950 24132330249942275791153528511902496114227684793030024378072440983571016956811649132742116357197578884081655097154238802990751945967345953875814798781247975598132047334582400379389428105641466154819161192415650780779473132460675503662586891536529718845473915035401388504306584331368835818239150739579452050380415633152359916767270972523542577810701574019052735492380443599383130074632542593348173569594219365280901909598261692670183411145538793069750885656183738903739739307140710340821536932094184748808282094493368063877018765602139654413867801224266153732392563057760003838944047810543122943736764899025399790718751459558975836786436122225288332709493561156229579153719465546446839518066249948311500749199432423024157556404053716981500290909066160700103498861241379611796363103634964878903750618376077293428221906055974199233088223194138649572946873613107773308420052950287435327602473199439802986430921225387768162634909794405497757348060876752168576855328081385238305689532594997600074361121838744888493574281985819183299531461022899093313162487266748593606710350587393409927617881421773976134423289906023195957521604407764057361152037646390651881594807627978803491779326199293129259068954427496994617405220667906249640050182281034510353593623780526038883275344643575291272381482470131792931447460166725707536924776237697387260725010344239231635549894311843228552498547290721317196111891678619690068207342365287487734696957072361761275960014217213939937810611293296915701708349877624012669691585488803144717977146452394053336563312607982576374 192871860478212833214597292232632504665189197962966236616099172760545155924138316823975667907068425314866553282709213554881363918323989415613473162319675729699456318966590975622336758366484888408541739360886681950116197061320610854492632034155274922266165769415900680320330019515600949093422276528216259862328578843299121325483139332698881224210598401715335347762977418430309215224728425197866103443585016462888379322119251461607185419438465094489191062989880356689418053190731037462440918092289314866582623676016959597572343128110193502741218893499712010716383520492501490934321963009193277227789428107217142758999220477318701205348182359101168790946761646794268264582348205137863213302920793462243096017332464554014075570552057215968065330411361489070356214036177158239182739324780540007632175918928399610606167202548323157251597206559912788442820395270378869756283489173982971555953641916604141149816311368384558649914441906292051026272891460606099348775817308941777212489800410795644613449933471583095349309941751803916247522362237517178204943005031326254553468159424697842095000248235877541252962896239498012049005897229810199621742028135737439416332896216488011156494025783327994631881811218496320654336266784844974030233590103712461696242291838977777697153184575677070413229999856691720832186789023264523654247586213598987205917772700281890270691682171078191246956094243167435117408264697742102231544299740071226478792949568321788455316401306768678929865158565972743251439285001281987754789038550082159844974040482369371111314298813220617566 1541482943783024843510665568237195393662865860595846650434698670365432045531825557284337681052724618519249168673189641243400069187812951683828247256643087096757462327471583007296890093648650402475076968133023254436576309285690174601247372847369671450115628974362277357983101412710241037776981994749971770159630237740084339772938037242867747716314768187546825715248271563673080286980699764607175428509850465917287736603955136716832717273795095493418199406314021987602810812213846339273967580254366177356177834337307485878129595756478077945544431598734121760157401152903050393401282959811195461386306198048468822441156192628883178886017580567915624840249828795387615183177556965572715223945725546617766804184060716258670363837400124013766104347131680200312170974541242291279538239983147565542366645735596377973401627921168461676593402841972088761825692552894185357108867121376916409626037417731226384533390095827115139263878587297181690911619705324201848854576958957643442224865409931787487109282982769723247454160740405045773515405662384335904459215176632351528635599138816286247413589351373909763274173663286251634239397663733562570727952004812503539119332960577121358904794419562755379468509132449141629649391019428518191100802894820250126329124020370118370169074260770089870299644368396784708673672878085169214298458361279830788310703745916281031220559239882431153851676429303840025435838804324782235170641905052246501020856210035280395656559851315703147205120413832359700758276979383880561407867124482604386507866621143240340285992479442538698425 12319946487610336552719147921811008055745327066600597152348320872536153047197159640709578636593500702683612730099869699507986676597378421548394846439671993513984817500033629418801756879286046445456010320870591720889338507131742518762652243267003911089374250578595679722817786651523569948684808891205317511373544923185282995242051539387958366350930976787171154118936707315804281883757582944456774394647093318784819736023467821231789086443824278174036349524568205178022012573361438918547740686884283605161839848124492289446531785674644152412278455997280215830195915152759427438303237791529441990907172428818328314426328989939360532960780805308698788719497994602762492050773744961223184121013783163703696741887694515877604808250251004404097970814597244532511274095133671708250361087991035768355321966875009657983362055907254296350469316307486469536643372403663659447696515356064228207129423865330121779915063548636730996968476190003933602045003979971764428933701573670596483906499060037789178469174573021894028563590100560781514501512326714099243831096549206343626343064893868512483068626852694727638650013057996798452661046915887405979806204470127278022683944923629540235955518889124398142984536718703393742203756961901548472928239114289505913120874469401681169397773791614788291941489226280897175957600094449114562401930240762847101979321574336744606512244674654183648673501055772931527930843691126771905412553037905359118119568652606691318744517441425230297654097266283924637788566658177489035249739502245033798572491739958739400443345024624710090982 98464382747316850658812844328659086014738673608464355747897581931978982212462044345517245621421360378109169013384215575803619207458865631996352348476783971451707606112111585970270770925035905187237975826888189993641712021024670686571090954942188355624064526570923413177601282450538361719125024994475348676423024723267750532751842693824769953157326552265301950814443699896178088362947278148677619459283511625941808246799840511270811799567224429794353945503401756484258524235754277853989899819108789409357108156349884931202594075168198030169184350093102766406125879647257821643165404406072151535989498393099966265659736980117533427192321641390777129757390862738026613319093948556319499832433583538176296321748956526544972003158569828389563736182320202847195611660963221418585928459362801425947612991189354817509880646278141875851152034556621483421084577093165217110111467153560443511704773167214144383343037712290665903992535145813495402124031984059735136944429166362165594410512381371784604132661962060026393713020424136858886692600881848325107171565427602930726965396147912743124125991297069535235406580323534097294486185850535096241022845181986277339430516362126162188799254035025853685488733930000457250804030843845005546865290235471615130479612721949571894021819807815055647519841592057339392956785072014177919710479933377012670921730732318580972404647866810403696368791237304583269033370990628772226396585756004491407096246883347515685327862426947785928629697741578756329081186542535369649519751781291477151574598185084674646569447030466468756466 786954725027433140256952899057493689928949724341007066591291008596189683642470354490507950939592136558023064017389501662391068494256639037873887905383144664230673175445970699876959183162355881294574716796657635370976547206218960920250197638489059405961825196320796996392879316236902997914899776604980882738705790839103765859269354989529007175159655818723892585298523643162511316450082843696967112269226025424366295958489752312535602316819427099258666404369890061468141790839454177073882590899156730380543493456915438820351632703886330597348770915089651268288967122252371755087017723223431834002478815161235474953776613183090473738455729638139948493762249411410751404773789871460267637587075687464981454271661716956155196315936320670495100167960071706316881339630410641817911293777345583446015046378064667841215605899691780945038789081239026065609851034807634835599552221134063044304708500229643024584023628783670390164473720761214174814935240876797852110411612390058429302731506381052086405327122263501932000311021448912307284135697914037927588718587932019377024296468038624730355290363692473488697784050985427025855010467194866390528936269731514522974111316827846727984566351192650064713809162830715338635074833503253453332128742157480159806763138744269703158744569957712132448593646499131647742368239687346922800544410231488897806432933593912890370093776159330854302818959946312435137125581422283607763424345601086330399952243107922191508340004779516072204219933996000130215922789387300384621846140924880085271071741204796434589876699137570472715124 6289564494853015472658405613480534787461955159927898655422869182830208913605425100524944099679620968674407889973388624182923105478899351157277974986868908749892540682939417302532408350142285833347574127263167010890704323280440193542572045703351905923167127347474015386445130175055833747075683236009684674023978306863129492420145776787732688981217205042888438450999745445408619537072024020308870529298228340915614497308957360384373657102987405737181762426959985613604502480841117444291438351089256272876040664364859846067715621017986283147581288418499977099243706599347687758361375787847617985398634038893935869136332350033495550337654541432517264728797937456496531285107591705715401029474345404470648480955344617350755442993434950348219770877359538071777423296174465010874573409940173277151456600836231534510329640469865950547998637048230794845671989693344500674145129264757676965342275138233368011709970902866309290190109642577443967829878797659800220653429106675788161524459890260100315031146156120163508713953307404327432346495763060910712142453378863868114397250732825281589768805694385023938993667411921318634901667795019572098431072297458100271218836708216810805854399727163745289030576374249557143729601671352564832966655885466399488272540582690174640415381937683683984832112021942416496201016437111502907009046683570001375241917769117920963193826389196518114866767847383494754512267149852041256930876187109670361852289655347393829887651948807139693987403163460510111080212506813948373131020100544931374925996541045340262835948713803200145095850 50268004478446729970945806572352756422404518374044898647883095052582899801721250176404139393541993619900947883268894646230895548158433773098636519188778884078289403774730544831885392028769855447442986910465888300783928486077372327448480517500409275610150476235068940447948316997528499015244612661749245295763591333181727419505913684757682460518771917157298906892834935121143994485059536590875033604972820620940256799766475849822976552729088105343589302506885198954158701711301993787648737075698585050969710228368896960761331556991196731447048992781427966087176167520337772248117933515470908031162412571134043357101279685802620952386528514995506976446305450680362206260734837328635400611985396559695847825171143942787075495349582345263860969796821654970367038244728102247653768925448131767144695239672301654051335291455638594528082792189339952211783898808250991435790263251007473881223699817408896410331155248564769563002287456754615731475541389147559377034081900220068653805102750367397468954937947801844284900709224852046425674203006388806980955330885097791749917341146234944429469715810872353983490637930545472172168018350221213252788594100359652791770461554406270922481401091072262108066196577372503785780607721912870103907198598786247719045181942607114964808640063272046224771632712398493362301351712391463110091828350804852357209966933221620964201936270016648674389216680620175746789852837821968079786876602628019334504378456009832602034038067037844667210424123460211816656876662912515470759005144366961388659761573749293171265031324614734901103962 401756542413352064792486789982644304092698730637303508733136915031883384118453280439012258216047844122496253521791103111095795586120590741289448595827016377364146355311109729245875750260758780611173615433399301657761000666993917203150729192817333753414034432398282876120103852844083079519257572654846515068136500123092409382421605876944024998701656365997057176607559526198242782051548638134185848461669387155261515501067156261586732362571836502268040262049813602491221465250627997764421346351419711147631528077213394511980635296587045365890035766090522816425660843330818441183586344402560932276474232555496045640646123928907778963038830710508567233525254640216254716249407284813758475312093740833478556661545116653498775141651442543830488531689583675350886473111897020659947242953729773526903135417141667166092123057703951540851082242078403028246028156396024788078734989383545576766676223805307278507036609814847054049364706678580048945057268573823564271229105952993347035355015303795061601910856715524175586351627753529414626987425156801094683909401940552759447376531055239196999280756856019731754378838010433918452817946458839591185451206830633790185581363432102669359155311076236248860807060963642739343625168416872673863503926267637666787374445673173363050157642086990713726988980023900305488934501819646649728003527349619160192633727711425539238665316160172566863916147229683975697634666457505503961321190075600574467128947491214116767946422184080160311856563771304077561568506921016052846815649210493069100159094895339167513498255100509408882305768 3210957169277772298510329600745101984660724662931406486172316807568045903084546757544194450287634627831949945478993665681977267324596761217681797949659596046221271698457350737361129571785129000105056444784171400295415309163332340973197772904452439722438020478053861811592952438868884329243432710992414770004697654486199548715495982686138331662043882632397433976538415210983566121793943579143834561532339431494013076250702017660823211072407188807893768793598011470288282899395565047057774182028306979118030757682638491245465422804597685108000397115050480084748510777755234302423387806025338684743153161429974153897876730898605243831572400241798031952610950640913861298111392841770376942707200132901601267624424807761944211307793522071978360825154094701102629879358332510937080426984021278337300911116693695826850741811075044392356374223615506546594846953417222580924461601399085767346939473857729695673844679428614211522020656255618057623792089084486109293813397590139982646529238660535168352042810098119408890386878575836111579836665638013985786867210064753766955643036369445891450861571790603050955390298384052339097874344406584211070054635910866175969641371447391378598004149093306355059938787572784720216377542826433088725816546245805218886426463515004223422274005528012787790814382935520945702909285528733749589006616270444066199594322955728360937719834682242532335331618074765633185690448500248217481146937710080734134218500771473335487205567364247684815448981817421922459248966170799709436790658846250992126666598921740529763027741022830305890688982 25662934131321281509370260412062403464033269795486319769976626673233333852551722115247847757808583145675733922339366891081692347588581237006996404491312001343721819382298830391343669826435184114528706306592315656270160447427972913572840609745178117347917662914523544704307610796144864535728354961739902157390791946858099968499023800220355207506062797040457483772366152008868473651813538309721017176229488270347135417183000786719356033659638945608946382776716111978533749502830776357150183414287533815171057784402959403931116423505538702404639717635903315123792970787348355001097365175261385859274467916937384928620921731308864124289890743459755099268323154916137933109931162059909026312777404874736795838881088891330803670257200392934685828330538794347349420178483792248345309563134293462518003246843695585525976978779262799844988453622921960549855361401849774963432699511954831665840152673278801401273525594223090623320685328784769887322888938584940206949011456437827168079086559978737566399292692344607763226783884219174323081894059468992097907037054123051741300879358145307830303617137963300959863905968231196304900601565439358834324717614474933763286979499235081708089034788053774455860788101978704473961989808511325753421181614292157201498773671565571580199898451169775033633039606501408161757103048547407064876751718243006946431147406437074193242795066176761387246182437897280962244408093410173426094416546856862452769494115310180943934400618056729536522497501139375800976830264173214243491219385415360517154402934339103982514657290875974775093913560 205105991720188415000694525022261766536029251921160008569186309684647956061001773787446032897183760293097070910559121595125699287423325933271149608633471707818561401956993823647351282821989744373934354415374951451631350969259640425116541147924106399345947411995933374544202048869998468560116145485023947560655078991771273671132680722292666269203169842012532027450890724154588657942118499905424450436599895594277258466679699838142231490374468265482121559195578457556526001278077187084032486674166804509303151144489326757322867799360394445343947499274038857875097354337396788424082726989211393234347779708014779097286190084728597460429369441558020117608228521655822495082225645881050542696510172898813365384222024429061985603928064927858209291809024927883672069315055837631940712619664515688090513847959348264814752268468057165609793490413432084015013512663912583060536266080021374871765532023326413233147773886904292295438978571882435322000383358470495836290327623366043136074889518831762080935333494649106015855031497079648175728662126010457884124220125421820218396128577393029422007771754183882967485039963302455956443547190128541142443854571992149632050499066961294355169092295151352779834018921665130479672925479793652391877253210072072050125614578768480221366040358173916304375471359572211908815242117629146326844791188553307054658347820497021448767061880810158341599472966202880868186398952448861612633252424618992604198331591844043963999665594257787031702435039273776067132816511706445627474330755155876898632615461779980753870041282260136375227038504 1639270513588357121267287942182440562401010462436723006384702016650565688740726272727654492610939803629991857057054517027315028418911613730347816413119582252831977991809755530051176927138734142725019636243764971259898556395336356084009708337244519823200169693010612043231173261558989866091750353686569702462064396091405916969020484063501777119679325130932830365379512807018346708873962670342399614298364187240818066496951223162576273143828649962202711766780028765288727890138754838185729749017479175215450677158528009978246032050714532434213832307496402456730293957303462021678371116518435285635542900423126881525981082881493415132932039671581928004328734797619840284833059121199934418278535462642652295389238127588917444269187647184477941352329169404491607290926638436177706169657681653884989379203512440650227344236609577985627687472037759578866360258704325250882052147061632961226907273303176369406541934251559326562382167381493204513063097959957034051571902188836683076889837137699449134104604047180813099252745275956220571184650882937272168893017463942072645259020082870829038249427158555108854334555792660334515057333592625190333997547390016580708671883608584632221769959823821548291280262250913122807394594838782749446259575985441352877531116565486985494990402260074629145736398232120405068990875317076574652532873658646680757030829026510234441216630697263480767004341283008265502856487734712116617075332856658689506755627069421577801724532163540978998941089929164922225537387914424745436617972041333858843165220850070942703161712422642705726644876994 13101564149970240632788849998974357260632481695734593123060853118292099423128029314546792371692643586629282961138975539359888363009891780221601499938201048225633174377874023003134382163943239222445921172730954918362113344054685265737484910133681036037426867507539758197115706115590171530078680635233335030624018336662913106467513034799145043532998045836212873767180552129845304671534542386741486548570475033203379091290689699861887039074676968830327620088295375172754368245741466145664150174521193564304277764622579251807204367568418218475623989728563206876683174248469803830312413194585084102053889452766583800424027375034295321872234697634926084514393338633363182263664750696363581060146517726492985523068797229807566416003761335565075847310206053316773199595740564679910984218068805147948252851794921301140118012953931295387122994006185888663635625493193873744747305598488320040249515762614265310243004329809190007457859981801616371328625639692842923864284822507701746257243762355605880865189737543813138212237493602937917066928793700737001730334216142839009636621262196982919171928650155331629662242055792187536802035455494053789406291132272194054389779376636481844239921301467430430524300134869613420984385004657129815040979855804686883533971645591624319536532233048905274002925497147675644603225771617336224144558195314714703575012502891038845985173478596358979106541058732742702417981677027604767759376289082596075126660446488028387475087263861497075381739527950499512806705674762986836847896757041162983214293185078117149568289566623251224268490029782 104711868423057051203043842741637591121171191334554289585023332265191263708321430914267361234944715090265659514258770199627470445638506152542079364586389292473144413617216923452938273759126917307955584660998437048661585174479786860529282951662384729499613507638844155080675701836980134687045306767277959021982003675221885184884626802250760148044607187485232113537989630455778485874407407695199971144730227490362830770959483481694008579074530326013156932323394107234102432761942289807688971257431554053074728033473193451300693687147722222816068488376476728025715495341076295426849113413762367475744060936367719091230678032949872319216080051341814272096580079431137874461204769450742215014571664744795263252688142028686857622667689562362940607480925697793239187340419316927346608609033947656927996258280949731192233662636235747521800082506010501681811656806037380098058443416456506536170332750159617197722773442706117645338553766950770300936748568667063654793229451547648769720149881998770902130548381080521683467799917568269063452177426655059390832163847441651125629839445865874568748871666196461809426209089601118083529618467661914039102173511576752802135726962082447700951527512459884277940490036188992839368811537912139563108826438299272956861661033265455197729123384232174647685138763705578966366939721799813715868017323386566853291181409973916416907844605679649096240374961645332693515799596562333772043397213248450058792848363634454635278713632201926449387451306589565122415011452246968033324230213444977681914433987416089457134972959715249959115922022201 836891025699370417036160816414080334215529171679030523375173801555269779341326311094050792289919831257044880968479630102563557717209271130402131286406517666300556949502064960431111085687850779162321045091596416062403702223330563050344991850508103432923168911780231100387058586155544063149986796359750048118472768837060351332463989266969065128343540771901730466298657330494682053318022041306113117706744481982821422851340146674356997621231953764678645351789080196099482750458975900657978070733813475303667207475073980692548543744670153345220175805524430164231678582297874844153538705867636560333061749299926422778136331698330455426728757867765809054073110723660368964266389428734168123792740657110625330755899713304286710682746490269894727340162121465877414938666089453818604249495724329462980066496331442798401718052981569194961530716048740608580865232334383727060548237810306187441447950729650193342217770956170604912533876881727173974258779554840291626924555349781422827078763003135097371256864935144767310972179837324657539841189495023452337789436853372354415614267915545086839342718689082611932863740157755531696240690768885153543330552294736643137002005625820919504933176144557715070045610422312882564958519366826746153904052883802421586126131447773072676534236284962562483682612406464141399783187553822220691920179223369203789208911864427396293797314099687219228008197236797349291502618247493173652595703622691595424545174620450457304945593624988262447060948738643386736736749672144274425171617660263416488718551215314152923104872176842557081633357132956 6688706703463331997703787072758945151924306765694457603958782210491668250403887718831416847186811622790574457604107907008296306265161442363959774853370887372840063028117588155715352191427539423863992154125251949962144320981070027441175605584088915364325847711702805053565701709040535186458067337639700050280063982155687099157474713537990023577226948157666804683514713621393304050388702980172144536610336369674890813792657597330629727317600453951501457357517765016530020663906086748412483417966031270759715225419538363643991528942758491699668639038638984209561227906530067764510104400366621873190642157685444953685501615792350141118795879808312172972554102647228853446209396706844361172406496741472105311527112095183349742826033977191798588305757386906688501567415373380035451455409861165165878881315284580594789346321352811443403779138605390554597163278963148392084780814360366239755435439536487962721820813476631993576852086179020168190520024605920583418649954883138366063246029623690009425920457647996200743278724497359234956234518664520394254566723831417846679841057750793610928459002871697481571425834286611119592660337305835109745741280723539529282756708959748555516988701031380717146244025669490237995546137627669388695335385251093673761493330989837387707430099221591657398481344137422081647690907841471051505147457326412518370270649295930822459745856177288352546424101532957692349063584472609254269226626735764443357073089128705450696670184910440317057573550152811251099584568785804407567968562675099168384116096270122403393058475317595282789204693714635 53458360414859606061473940659845191574651688024683438964099881563114321470799026680607571329093363982421522274580908993878116555500635231896738475747994440740510226545656346245018806777308464815643687690721688870153303564587275960915718911742341275546421636215739355373633282380606744154726111368649690685066770382430365393310846718952167647019624065446542730640115382185698656668166434261867284906150221720593000254171775445419350664522174127406478698884006785530827220348145244188359152882448487551341726621243464899141215313525114378643193194283415893150392857635526742073161574220549769862568955410658317136687098920336660865961492948096173041409921098057004229167602062605088304837056261228586615845805922819384645156425503066347018385854319359477575002847701843104655839388016024789838460399890257550498286998142793186169926717541154067298742089531982130522851306314978994490786596703055176050966331059808855214609193032474726205091904573232485768834908315803558308090890672890738461266575251745012052822761656519389655397634268670094011553528927948063136877282903570649882938278859657491631123320737476569343460140982595422326120052936158415078695463955914120294627137135967482117143445503170636832694317401107939852271282204748332130348331688635686292210362368163122358662114696948638043243289698713419818259100245474131830612273527722144874589998087314198760548044362956250704998716878419368548632846528802750746943967491456539683330084301022543667810034602339747382533130708432552146998628452674315874882720666379991582149684953846671277347415897843976 427257166720633043821825706283413721574899037997066718821082393390021010706281655461677247285280488547172240885690067492125860107761574227365422782973758309145171950768176345227864576512315571745638852276938894864779808381574899683372494891111033916910205710097720744610737266718256753040049244270943091377663649988698086476962422370717516404703549034370888456526656209008015459334264928009656343549899570595536177464874560540962512853708198120499039099478220966520527813571253629741742234237069021124448344613586051192193958512182665574784720202259760191902791134813980340481211466688591643781786816157070956575137487180856949746625275033817694658362643409713176597856087176151288872394583283378323474495025399188875669408932490184367236183458105760766125941779879924516937198061558550829436493178260345589997720705141738185240751152503167374278874052155801503085870589890249701252744084446027019913597019543149590698767959282821036478429372724615175790328442148553245809130361089345858980656736403310877978148412843429989534091421045622487202187809312437243115674332715177109662058776497244036326391335705917999158715671441700027186831768008643251175270979279417106403392131358772592959685836260000419330753947529232360022652760947265918045216364317797223958242522882048634936169731905352506265608322599732771649830563447349322376969054288164112835426424700795895713026468069843746262735224352933719016928890840591886986675844628408421000587993903312916190099440848836980963342093079502903041067935876519823401667618324577565904811360242783695619591815650390848 3414784623210967839098297942582418506674223654882499384522667266150142342038631565971006854716514292166696557588215498077116704627671365297088909696328419020534706356077007906279196315434845184099014570563351431362798461091960156289137888524699065961306640360655278666940074623132817627680737661751533780723597301869158944996555175401581534728030367567883849810987019733998158595822849712324892523693095902224946917997252348939571490721017462518391976814540355964647455504384466769770613414992079475249894438892697542994072882492368207540545399230771516435148925814963678478632756772439095017822019641562458825539985302104674199374431906757868101257286692311164748996974457397847508747986276722079319398732626008536640804800479446899393548297667353863551692121329777799453058705566412338979915495958526060094214732938389473342949016021307222063755684799012232692175026427304818620591653349146554212288490485779503056033936908492570169135796076239825676573956331201977223931933613585749287840323635149635454693425058078602425121202224178676953187893257022577120595866902941068611082197082771561875735524296203099017819727797143315696631765054404901848012747151747298795554347961093062816816149641746845990121404435204553341470110089676007733290487265842246915190466322421481347207812674733309758018280480035498829796989323051353540442513239124268633124044431116265973453457881045917412807525607482553229386109133123425439222921334313165809974619096387256344180268197149437246691985659184194066176539952851726409247523407361770044596237132032036482470453906368488190 27292135394501936514940401258026675351288337709378914306281194386303386131497359930865623505916536929271097515165402674700131368500259033354251991911583664115644903483603198879521377586409994490014348502034986929936735441992560188181364162546190932875156268032600785116041958506460761058794205731607149022719775238604699630696216491724392172560909545292171106254658049974844387165961406124188514652170150071879848432677470475300752213025182322518958018355519548653762024780202843881716100951083518769049098185308559492644611740554798358550995267663680835376580701710200322971855853727098814347198106263369848589908789375171535709071277218272560330850077103006559217746797973489780931076340019968157257657794790537890832583345600727743301425824454710663313166416997545784263480400266137960178131694888568318990243126009092376839044639407399559380451270869056186916754537944196327330489557423553184909809638497853509381781483289744906503349473619814493756980924838961096403875130589783277474561010350235818594206223374476302303149040302758543060520312229485018708922197094381457380541493663535689429588586148599861795602278233445160504849194005978507947021940269387672841778893446520664464155105149185292636538681542615605276207772730090858952184304228831981931201588485209676082404707085626026864283736584318636404945460482564163111397147947155648833337007497995739178338064428312826434318985950228960140709607930040875442473465144701343893896847922152566306803257899545400632945158979828102181518624658292120002419030799205742729909126291397943535537031350976852650 218128270497455041038033349573591764252090061003835039280054522793598276132919213282219210559558473379759662004901289908988428073498177887134560306003149601409053897607057698627228644068105408934994300958511865903832422592035884637728144769732151630411153344349834444372224427652378532750637701657213173264971506431697233852531938249250220403701920174005597204762677163795202389389872155883983582890482619222767239427094495677430919239393895541084819612026648501474132546981159440151005056539242788341811808798485856011861300476624374905554005773595126834975621976170197338319986631764377375751395705310735316491884094628382716823076912027981466413956534443344220887658455005689670240897249471292446978722471331919678350653890202110822544195080393820244819315066221667801942004368171803206954482363704105579043707889389741643146566653241080108285024276856198458447280672873462883904838520804615733498219681471573147612897325917730093248726551995054752606280275271379059331050959652167459914003241496190006816847790888101764066201550738127283602097383104279181132908911611676886997018822324119866438225193579124411793189311244437741559773896946060136167877815633007444594811124240688182760746291294182910547598532531057418766890872202965879442927814401673265109656192993842970931991977215486370260035747039258841095271500172024449408492610510735364343411353487144780295560963103458340275071795952441696366227337907345058671475780886128721178292290835393509038534924247901173771910579062352137341475240696923940226945765708979904310535131746563438064154561516938210428 1743358217892625281850139005440370608894615770446502783859185503123264244539489586565194668503238276025224302581812711605116503706351229471249936023547603429198355541815510418888739012119687880648462361592988240005289514550750817364727916653179650476798549567870068625444976056767022202222199377746025931137779876719875790135253835536900787359762452359856395726420123196847407641799687508475502948599654704197817620443400110959723402632164399902719061494411828144375766168692781440784960703711807812870066974067839142452974885127979271769429780451388295153121110068095393626047445667373678492168100030858462058244740471504025158050819577905258527154130078228776249160520201467912952516370223094403793858766206251032255683595581121739224119386824483519743263238454509228102313654190151489660455430422213191842256461233413061019103551404564693623070302508084434370497021996065240410944672617048026409854271297754660847711402326694816348967008957938207276825378353327567028227249269463071797427140812281169805462098845828410628657786986125556627025494249949322097805450750628176293192414345289897066579536473340504943621139160037402052718983727955828144365460731411745839663592807281855846719266436454982875862427915201076818538745441431950211939458451353375650661268815114776976009443434487621129217469627172657056548896676221669677262192932062061235051095924081411243148422891202744054455445382205227673130324854574262790506965539451404006574708307517867732115984566690892655536622558956055476862123624047451295003596328268128916593444543620946775131147112774189533807 13933542572924406361742390431880929708041344797011895460769952720744454615961552269952350439461112232217465272303041754293606113907117280211072284146953424309687220933203753458369071553180992008906864734269163598660693902253754817064397669529148826914209989197115143377997494657409401566310962654524028166959083172151118239634680589479035197364295575817415100353146238269399084509813749518266925207030638134879736676917227969717016513568943973377042989019826910159499762206548380583404803905841481186536492277975565439217388057974610007391420708573430195540251704585555105478956376764352925891498523364556361000420521666798223140408196868532527806191964213961815430259841463005994140186049429509996621654083502480842001377116797185058848522041323263063030062732388767169564884826108760069832857061454086455574554959263132461057660850927343909012341972607009375292820740423981342152791879772989413650807094471928533300360074208313186465175000854293062207652920844466497629240409086320660718069073548699453345375089972021446720427269292566016602146620221037043169630011590493539065381022332771375220953291929782583418669654903299165013046314032662046240156593587447224172538578982994774512849418892661629705364760034333171965234524378944667440815502004049302590946624057776533776741032215275840967723254824468860142158509031717395188421364966641104560289177381398173936609158941491267693735061219317059777050739358460335729771548260461026551574737170820961798959000562247512735360323239810502406681069724344833453217181218421645954141000338610639902395620079989175741674 111361918066640223296653510067944891305276442749727306728088074837699987840856351894902213959499597951767266050811001976108767569276399861038888350705560664568476575515408305612070779353400829000256126620109200776023762960399918965538645584023381505777397064620000380565496534374179812541479149670634203016197644056595665901058749376052937335061430519768649373236248694296719788400350176521145802123650741648579784994979681202379918163470460575337937406233662949007413813592601400362111353282945408755377608729791201070656832826594864439454629808196757240567401539292975146726040049369809080559454021934020517331380567619782656563066932255509359409299398058635086536656055425440275160163938853105417767834783643729639777204371442961464629752691168568522242318893357134663487491899191361743926145473875177498159799027594020823099232593429847355222664569625061515376106216198584113339215145075710119982227437305849612398920350364546641943052247737514361246950518017663948029286810303224428216211180704928004865661958666425549824447931384936673397086956881724015452350360049377900169242472766889331631180849247485354025032943504466202275022167745322923953322103415616677829341197720682835392193653326207042320954001202892919771596788579793419753932054658987962501348861372910155372635484892677251467939376791938432700177127660383983323220655113134564824867314366571161717638104755361344981188992664241048133015159441136954435788474582889349108410969360221407145630904654750787906650390448600003380789993074710464511634076542212038188948368370929802122303317458180343920940 890045264423366648351113750637445513057859217019249536470602144375849743135127828477522092529165690735405054757356845279466164871457693870922374746204448092766744418120639975499034253481323099835667372751175982142952843722638476736800324515306278457680918088689109845454299067295962338235114450630980401067984606439423015384919934880114447079164222954657756689945349630165301039222161857945502326182206370844896411463425916786148673337650964944315100996075449788096470159113337584970568847593954652325757658152004461709516979217189453517716486427076657948590459899277055204248293902110450657659611439746260385207686664894871136430741316301831857107715402177145360466141945687678583866705047586149417570199288241925135291683606691465999279169365067212278270627903716824041313724673548853602104576163307381546123494515254634677907491367823923146249268788296698064009510647707286045920894777978523955086969671550971053848131624480737940138583109830429935033660012881004220555141917784842113959046796773816964550763008318480614103481602753594689289202391643216691475791734222048140079096067736804441067351752408273305453674017530731108324414831612692876004365590626675003488097035740286048691161583850557352817576583437259193118104896415871296310628862221295532852547006851465780248124887381798269669571358745886312676835206103967734878663818805026735544446957802846547686615206434373393904693507349062897522255491147401340522349374774451710626864447211505383200756297314695792637350061664929212980911953718940245675568979119143477261160383499286441536945848597094710556516 7113571852877334374847804230404578269356768538719553983033806477851619715307306254595449988453398607187242738602385461237608872260553976848338923176363208107036203590254208135082524944591909149571499950699264467882640869334387190350700572692139968080575375207933774222052346950625572981799002630453748990376219649196988573145615578615875075672607326452956523188555655755154639702702844012751624737926706359369609851193993553204508873687530100979585023078675499137603573988601808243301442401941977330425998489102698250070144346127886054518652269420340536479363388613573635273870146324564949917717994146476076919737579892861296604613805589276255392578550047929036614185565875985833894129916886389152008151774314102533890363839427679588378952231856521566001198775997096564655257273478377558268827039232042749717003136267936730490698464494792110859270991738941201753196998516200495348612968121821271695002830160476128673890679555163328442338176166987792064745327485143333680116378960429116192855395678449287023256255821304530148784717407681242889877043254399246781327368653725894678549491192750264885311054440838370148146718297263674418766771911535995141115738945735297836305451684280062377762658208392358488410273997538114552175367015080245996430069237828976675691562236739370099530787764009660026615427609923844919214057109193400655931191395002494347042574723955948374793685253049799631574310346560174266112346823826165757707006418591608385367958362283840578571765561302884216655685562940347847181548016428280028817209074882086065351950603750010898695345812493430050153670 56854335575748850208681155767266775049841080043274611293309092599791353492860812791664817419714258487678264748573326952568055094924525287235476085160645046425286603102623006933226077559792285664339068395533914477156798438982013490197027815596802976612879331188592324449971697006139225391031972479445162649257141758226919255428277603283143946463737132779493319165211677830618277512575983740283231168461129928738999420435751217202655696499817468735614395105844855069894912658488614537140615596429921356288026458304116742241161595793952994220957357414956399133794730439152935455199382017303756042190752683432406594665016577442006750257888024328305752281994019012440919738034621492852880651396120033625616988064001284644357715207701167485653503815541512760049202089359072400184647214593865226893174839358904569866233470065421286415897598355950100655866005907428297978937294107589038556242765028469619138154040678231761117490807856939937510778999588962540742352029588264703092086148449120630595517283127490993765204656511134688793373060060756642004902962412137067084706198113458930027433681742435790286762351976297440569564414421905634805944416435505839432078843218971543489727696102514363874354679187463528162591209470074726408395870663517454421294291993210234694627642624873547674490858469404563481839547155481582361626607460557839049802182844129956842945502293246938386022907812003677878766121042663826183629120769005272152860379408610327106514051816477522295398841789322449945444692709790904844610840109813627415100379319913416893178571447173972262493417221481583978241262 454401432060880340249630044845792397397963440189723635650248755567801534457275529616571238100034263962635266482098985820450528073210931927775111341733752826096324608497880311177422230746176613510696196160406334665369018698180287301948603940399636423629121039558835306128756181750229447787293523881789485158765348737641342442786327413938360519810386899685459701443760743066877827290919746908816395562458052440988005498429955753223594874631644312717488118755035545805264068348066599360273717133410773922018461132841715961240711354412072618874012778901717457911544673725079810115210060127602819823231403811057124169622904056680968707208429089029160614624337387671727104294400324461019771431700913238405026480003669315133971101981686096383788760771626099390546254641970804450585059805251216771629643437766375006708694422958564660129828229644954874301094860301531525726767178514250333468185799097640109980612924901374789048747548171265442207207717923466510162949865323544862321627353603303285330362554074102381356108446112255233765956470822277553064362825246647598125273798751060142057872427248346895507987322728217064050619758998266032616759178778920284943039152491582048142118755205868413949348668753684234945099369134170425551510850114329461822875681002117827099229730236235999559392128143695638698399794448249729593074923974893998380577354773139367286981422277644559535022619867040254747833923610717730233523514588963584759051839938985573152444251805710537725368504047021675973761160329626154861417007900057564735070365153520230144321659453990018207000462581440975161325534 3631750716504923064262221478173384481221970065964782051135055456162698876348179243282289713883711840196155053854246966520101448553469256699841102896601612106711935193757991432229503012533710148296646730334806646144383642175927213739406284975858159794474222938720344016438469396295170501924509691994410780748157406845148774107817103865875439047633992071887361899231702006577958026362793655098775835075874846679784206219315469946878365735967107805960461980135410759874564359549955174125799586125775952804542743741281286968672650306281145987079295131087936773734920203226746910820894953778578392881009534629275558110993930515065735999333122909129434361119745834991050750741091597154881514061757877316589854676542143141333344113388126039125588421591940744213370901230935379883615234199461025049984937955702969069698402932478136798426031688987327264981925769372574785860068825804210923430752059099099985139020989112994290454205339147362699608870869271600324667655772991493958578892658871781257099102819050685440638360738215929835188764408998656032019692795111976177293241464972869278773246613772098817450120766518887204148245220396495462521158313025538280497617038658205462179501203928211047903475327908565644961992499868901201153543092960515096382045723793409389717309919722280096138364346583334123470593111756965836573819677362595649184920879081210591574346961149966796427894797524142391328141434727154273416391818274693412131514112196165038424668415013537223182866679018505337700645268714781236541532897077845322116261005124544789640595683925281377666262615810024185529771704 29026361966763920827416824567889136777128045267800460261523090887131195374355573587038413820618337131909092944253340771349989898618818813811847571729619657448278883099193016208232165009439942559099341182814215848261313316349439202674053082424220155281495535133046124263660185212485427139835980067141020810232512331694667597177709255341430352696122292468406010020230696617806629225373806382068115845183740290662747138772999518928158078674379201671645370358979899387552635971506122161454530975943444816531945661316068291606044985516076553572408583796355627219203193853262641308043373982963093549873109692280024803316946912055657511651925406925271758730466994357222658467851815629488695162858399062724170206460747622552581474461640681665247080910305607185030126251011661087431340950778732869862119737864886423541067207918323831968761346593437981732635731912542804943074914730409922037756204531251952062199587180212970323616728677428298852352715653559253289666975162052986576915367475593125556330511643253481379285834762681689129215049303733785269015029032171304679758438287848504670271530685669479722118183553258456795024768645902910334988447820936007868799176798374674228003693214084017813397508685929327541394315648692541758789328338437479657483061901687036454325040469358176343238949621540962117982828447204359090000360820919706398406228366085793892754890674908762468775290761992819969816220920652700204729996898749335950584445760289389053389833635137643630295263371056574095820902055241304722546019755215666805292144043373716973479891435415718193715281701944756764519590108 231990082142855338825877310711852215004539041093729111702043577601543559060552957062426065912007033358259854952332487989828605859942322015115468923612892726787413418481735613489139712490471416787244490888022880737224460580163692376796881778467347608479389024200228333504699848318749803909745064869281797339788141493624971957340238609756579416111652214374782277845508903250386864924298226156476268219397360953586676439579301084551009500210148464706937854168690605465795810159496593607873843322517145867882849237257003870297740525754472423203611662255582199387911786857104831814882604656184391536014182871710849009816191431770701055448003331750460107154975777730558842352481014795296289392310551179452850674404016241043611114299311433924815432988710202239656434557078822520796332817733441478707664321697313165881979653272427142247051899231262519929939974748126535460856818865857469655720682023890179625752009447294798208086277263675849548440295236115193672957649503216118290743624442884835226561810556640419293209808460014069125739655378176250218205026428160751982751090988557107280898788681375727484080938765238260428776998864027392043521532319254268863337333570173356509594916273296744432769143753181384367354324901965500249615373945782742226595748000014285125813294579235235940961547896967789521736300161349936003777064425469070400902464557174072392497726733216252123841258836173434964846183041848868577447228128364813934752066786056899736320013829290657895107874584676983940318036384511657151120322855079605869964892219453049732266068625703257337104144425244150502829488950 1854156835029770527976951521676174708541029798027581887104113056020334366198141374537058517087177757223684303401405633570672235587663295485448604771178420314527060023290579900262236256249684452571091616070800189994551234309294069824270559341745984521395577316158059442742937320031309515962797694755931125216194522790616568059759372704712542463190224578928612560836189616780697634488465379942482418035376132598616419191054407632655281344526414449839260483600961055669679224057832569684402925633643267235827073431225928696396031465049694499993060565963793760889727535202427302182936534580958379646726553399921869544680345015817358758554168689651236123124942710861368005359653087651761486590970390517684378261680699961419412025398902309387745538401258139459957251579930841906571297881477063908300866552051215323805715304115553055436411777877551507966059834343436724866032595815846913925665347753326584492310326306203695975929705723890752592994016446936498424639174508998877768296488330218017397283480667353184958762944027688235053608246592258168988263825225644865596858827022785866512306872674522503031023092738498091282802064934889621820240701479520443998173345089550509590664435660607191013304216338016797933503943472947345576472597310179891018918961061976877084208003230623527879197948885000932047102587596718521832454396681563422411662911528970682834191921254941925399708794064674017895846629312700427522499218562454828406185636477420416004539008314295389152476212324144091063157850993232861008791041815650154299766842496211287426531487304537430776971328843054027443068727789 14819165551344393103346794333528296019456249183399384679896098781893286176521899296061738946104953739588307031658280939639120260449072115332427842303118580158247041628202639551612992286305769989732687524776804631063161403111904794991098697590134304173953060524716697956556100924575434903327030757999703172949658378957433665700253822599621195148128088406569394992596180102670402199121173711009903803177552481754920582990633112245221744862845720535778739870329469185047564079790211831336852321412800625100703787379521930681645796450950762152355014622517474531846142421657414892638052724316066521115509721096173192374892127236839496629295279413466453459642957406711160119295540256908153105568288522062868833272731101228638604465385510164202155027501539386721777713445549587757508440108268654376170307846501131992127160761708570399866046402770923776325440353877205402599838175879964362955220176330515909777479889832201511496085058297418208351526371243811873902788848949648948376197707522451920591727946924150027415585635437651587296535457276473659986472558654492833254004005451731556892387934378958538834952660383097382012754868348623254848130917120445611614708199729678887959648526883258512790732942332599899355877132588167940007048250203993464941526122356676693230305527377826445159535267921665282406856724788860510708016323514268412734706287366061107688166827990774739038262684417431129075012226843636766714767299497955814966431279018561565032701733050385801193919951010254274156635867925969519476007799827666238886617894392156581110707434722005634940927989246933953859373810510 118440782605247045752517384701965387300740364406783475672405635594508982580466488054879910275963923234007536989658280414303863721641805151948842740788850546710765583130077434088417657683116106935250960828634775318478255035947817290007078690101719287289184115385872224513406373764098853574845847537516080276017207416010479997008197054029511087007309245063411325700855890268732056086832523473750363955047893594275850509655643736369455734092765247700066432482371296091949011122751459921075226691726422589239925753535315980612541458208986573764255307195142188672099495344902689793300495234520274458285423242245090646943921483523447075915308382512048172948363081859555794484170091801012457828271620839078976638570943578528794709165175251565759384043486904511494244773445961200743404245074315059765470345325644802799582980530511655725080585094629841009699437057648037122105588471995028985584014041248505941613156490233197508765402215543007173519696223723066284456026868266633438397540000266654613483390386356253405394618463355632375874772448728772544811318373800453683307086560157524651255682832648410895078814723265723352391813597776275648573738201020673265858935143960815727945391285146286013339147188731384436500816031710305081836240588997330193977784717771878823982287290448545416963668077353394681279095077405943635295286221726922313449454822352017206868356959889594801399304171166071846891253430360595062216669473977117606294127356165405711538489442507950356320142471783599477341190453927304322140751886397054816995279739574137286409918697575217872328808816618781447919141392524 946627293343113494237893060372745379983972913379873762616094192039695140741543619913546354222555831837049178763757695020768958240799107253920807343711549815010949585547020618509448598725724320871491470223122748079312201061407511269588514997494662794992397593447598615145496828860559470751564854102512099581695074296170992950413379131560555484985614520577718419155439061190110759193535837060606107661765315924285851942840136022493466551359469985071902677522363606699780816957309874683201093460104417850193244767253550318762540700281673559763081170616847488745088198043441915611886811038724430338100421621723279939082163515424219380767475408136964786691685055624975064941657475248582348836167795336956429565340307964638364476113055860997465586510183956332228691875353995701425747362977181955614537042844812163464429493283129987460963299064442278176088685268992046713939850860759979950473776335539221663775090370576260547759332712102698962242205752985345963479095113077649911915844335086053935410848073800529252525215694871263594045147952015965670617598706879875851597989137494686705018529810196615866238267492303736935280143750633014966580197395938691695888593691525678861137336007292511060950474936626341151225678479356240072895733680628353036644067635601383406252458846619106788380735513318416244128812991956699594598215817093928380833905684900053207482804742933295769271473153046134992064301079271768831983042379924346650659141177055199891741689196816001027484589491727776808120736780206840686035783651870202023062271518158387844579286154406107819728314374044816696219086342050 7565837519496909883815160165920158667251466762149845957940127516352095843078745804890519619036759818104839441057351376090291155955132744100184133448324437180307604564648263392481764301531422703922518204775733468867095523720803559582376584767812155137352731036179988679073479042052924335027591782134540155478525022618582149221750304555459082228188877306974741547014274874159925502870625604037531081490643180091450544068745197598485649881100503378995619231578518234712668458700306402762674610729932823372859361425889178214566836774612400957581887285316242424698823271760913584345543149620614236282130266369585891738526829908131613398056434022481252077482659756377026681552189978240209028399411936369275559664126313636839153898619877898377597356113715686385554108368317311353740786200530293641206617192806164779334913690906175862341851566147851997144445564149691112322769936286673378544021416992887828377616347258664786977341517270481757179083425596572881456929666796719893413898369281037371631827662303673381466514431862938420476687465810173232390648433407420196455280149769442958085902554065715768010264770450234697125489237856951698357817345426066440159084095028633617542480616527066930116952476214901247411339570505041368856499332676806155925359950963354282827304173113492276855371642266975872321845570290362791170376417055413771486828124134049382902519102551335944359102356725043743422047730423832349416599002481876310599779225364628102634725970643677510902971608613574510522296535318229619115990109423303087100347421068636488253256686071924963830961940751681209170515376399932 60469340657869416179690541038209900576746286130971186349566781899601336024247900844505913848557417250307675497548081430756940348451666127112735630873514691307328879070912785760902640157981554470059197430314017874987270214256843119508510652843356078713811357217725517292705908254658688137660811411707333921078378435268304080512727661796688236638829728663842512579303397289442567520516813535566259736272340650962240368816990008578715410737864336449597848914781165943003587086927290765865823681482344469745285665422227594762951150504741612722277482054592908647803901657961139267660739910026053059898083168434594421886719968031603872007797210397297836374328515843025101922120195480815503111726405760981708767041603614097023178830368203758128031671926460432693036101757827239424825148845920413634925421907707963640008866097228869689768862889756122198053960157210771886295783748737371508127151327630184320561261965576255994451235616534555048193375141583981671898409470157454689961731228717912128886204823704952688874509437571446339467198342807705484168672491176028251052448397682642921621280811966021115417747272665511727301454408719851448941332999779390858108216378080863454774785416915334842852317543059037835593800100491971753472732018331773500696548321839780977985502789067119772150811007895953313899992910258888392395116729541921259428176191663928741847556889879496201340242973152248964532167334179776020422382107871975032360442576021658777155741933870934104398417200301039712227303010116645755697218091717924464709650782215521299959143310909914459044829162058064488374703870144120 483296544784476499616477269978446406736447921122391046354404109185871456688262953517701666309249199430654964955609444228545319993541234621798837327094753309775433646065260392816066611833967296051480434088962993225956276908866474663865349853639704083494056900662856496662041201790206118841263494613233367978654290357144748415941138902553601309524717663136872762714127356919656843134743980358784146370505982613226795743515381273749840854531453590629886255827613066615397293468450167537205638641448447466645374534833621141492624320666808638299306778035006179964898942511977836891760537808310919621519247157628227542504527957553403640681086787981873821327453648216018364865902871881758714518934827397394791269721392322822725712410427023022696135259470429481020563775072542788713060375061930510305430091603827887459129922499080210439859255500756378597296651897307255555451707725430073675857029589620529214642525950232064565469965551413198911642428318649720498714187587758804891434094115261215157527070449378213756803120888330340396953020063868337033240505434900157149767705046094253479808526095782410470907104188490588289968794155427074299579874120822690615975284288034841728237923541053995865042315543502415340382924229357581045235346258376686066497556234892465116962632021159386977078781263784928758584522994731885680633399029714870229228693534931946650557145585597986141744196832689899669750880320651556963351373469178079445786179809032176034053829959137334840396966964595670215730645428634387727577384607729398594883397881473645413755462911629827980094072350796797730305791152752307 3862712466908483537475938201028412482904210197456677831858080644272269125269775507880834398192557114271392603539037270029522263865484029282482267515994216221069193496078286730330285977042705947381552252412599167139584225324152732002823644370738480011119078552685811968466158782250577197088556178495891191664018344054354503172269725235125152417790144155466620272100424091348594812868846288114280348967451644627949697035511424560026007581567911267656888493603900914732653014640433237410144370340539378388953294136536421914498784802677316296939567477014955826331822231725904129473527261298041719099930556237539755909578898968227081486105047419833118100689809989193467602938371413044655007743119852797484475169771452761983377492437036550548274028008399316069050825039239878237563320382778395103229886027422872419544084202720079787679209361847645589210027322911169840711423810857204510509702785760678324312821039748820114694146295920630533185005136450331606035131993710955990882211140971835946736840360240791715856232580987433125723507851708310092645336076753907973852645804356165325630722252482932631819060715057572560796468033933211196834060788809636493389579364110659667133550276865979814694485544973082053527147073098613666869975519313051866532933124524818858577806273371040295517066882882355920758562008929963850662715402152956405623073289713241250811340979230867384893297927618848138919025316224119002034316983928933892561837156704011523903706016289652578261168800677946055171548442970149737206443133896402038378887741375873685292416270635237352687802857521098108284326471819691690 30872464931535427913404574142733651034719804707547213706521648411858302236060269744645912570038438764877301267853910034320009781252020994822832259856731122519510004793878636067690177553100156856797608413902662186854568288370739731645747334726922062105926586621644560715995264519218424681712396138335389696617698229112656508132592301792283010544718768085209948452813993591657582783795329816788036618046549140910111161903479023481020231168841078648124961632470271570883505102321194139783683874515960357165588901598136856927403697529660485369782054359402011878351884472764501380243760135426154722917507492726945682497641300322544857194122375241974488387244197205531704753415488312509183393734442875359358014957630160609300632675614669769121479627068305430798713757940114091345652325319939420723638491025674250163138312211737014244178969159317054957303729553483693308645217167592637848345314914181394727275865724203280343560028183292627193722050492158401001627410888874487595390847474235946995297227176084709213055883069034197538796125834183611055129550946130508279450626608764121050433308323386919045119187744201610496300381141545362865416780967004441425589564158735179420254961766581866859568318607540445046015378967833791380579880348344766485490483542519758625358735832196785938461902143617362793290641887239113590288100359616263401681415193714877354902733704229848691681256663600421691819225278616363957049845733134467445142243474673507446133976303022109885207298663179114275141777042334251223013606813490996535394473620917540787444730696762134422834931255290485599049539800020442335 246746194902210108474340628639044079667316925812803417252068523156423084490927132620827404629581918671025482702623424864049512312045529783117961981413346689250286006265623242058012675331974616979324046421075205196184994183908764307650574961545617535033143787023515223158774317141574987558838828475766277922226034889651958040027507461862388608600077181508690388407955065929280614565231680658309838748042214223981324378813060656547377437904322216016925708376684256995187873946428114209346394938417984912752758361677114061825923469713929874164839471513777617482054365401853535964700445715043365487612516602811796480757027850204258180141835654492764699895655638597236431150820014909206532460220016303541031179786371158918255940817974423756645693806310400707417359473996205354654268053571363019306571237729641767493875849981351938988104152641411474535315780509650398074048956482740178601866569551588151488575689270677860661424797707616921423674302087872912862636808195964652084547251954377981566590431964048097237996163848089974711469108277714039038789752784535440040479669927968060602345019270026257317799046917472929330674253865053683649995625107649826528060428876753303952146503341665620297402099619429183960786470764141862870720855465964040480572364869847574494732464146488900140145640936661361809471824852313813217063753018744527255502963932328132119374633660825807028154057397219944011777794983707673875969397422465415129364220455695244169030218922106837647135389983434812366008224937469049061798292692010744061136585713510034658342859822272804715964863599016612307224680530466166016 1972104187968102120148711564876822940509328683602912320992217818241746276358809298184476238736971114002237403315414095403808806407675074815011075138569511720263310535253659532401468466492974892206551183585744872816055807951352599509925655420928540641290300133512679629662159239615337074165950193129992310858831424917808134210522833028268594781778474356297451962876637463159897403246730979224454494087936594442537384183147502552013752560119793461615465436990544573799731600116395864685859173549994717461568543673589812044305662441693983439953962236673371280462814457611904469296477535786113479947757251087362791512023716638792114398004788614706659646347042632214240385000005085470944332027354859770487434362809039809472511959088199730984150376151858618675131007971890661745996526770429047715800005514588307017744415534573349030421969112315291308625882355960852274872820329481974865193852838630876862827106086243544480088653349942660001308511284019119687938822688650657499840769686222526531164894151353073855197523510620223699931068846301959685694962022888149336299307617264368898885519606637533304807125440540288085203492495895094488089806598095244973057066162262023625634202728724450503230643544716597475493548152639341804140703499432651806714652518796969837397425140609895483911496992159878165469989220618660787867194736161649721962769015981145206486792059635420274317386745201254631562280923555461240370650831740844587215938949425780813816125858061799632136402427555606566011355000515856673739586401735970843746771456368196722634822654855113664005121826225464025650204316422465239005 15761933087982587847511283417873440345554915807403103936853383627657615419604145845549727666581954259984857309045944204573718573674604149486797613869824127465795585438416879672310474970002963854935146707686041868611024951237080878256753490899243584845112643912367887724555432071067461815193574351218497456598108064053603456336992304048053751825385639996051190005439905992021585979819501111242534681265471440778423633635887961090159995785522544992107388554695330983528521238593062318209223736663820391232362377594760233542932257363260337096531100528701709700831652516579717794760763133129004176656432598842130010944107700128866327656622280352719306963264635587466578139035675355621776266801666225057219144360326387971377392860811951787587390168395472989759467193145692007589243247245080546134408223161087470736010076439671334837155386488060165801019002552969184393316275924496363633234703757035296966567491489676249635936527596329599971633249844432393072911092043142028070185439650402416818082382856555011186151656349973713588683767142836683868194481917096791479436352266578371608069818486499946154694311930856969243320242258985884897718032788411310425579688802928212750125595452149661331858533458079017752792229512489027018817134152132726343998241057907087361280365170984511721091507130874997841458520784560273269359806438864514599356169700767669588309319817260576392576629351402305556111519752963794642218429463246043426719928565813903810590880738736748594482705377459754542002747892427341116588018689174642127788663546129913867510541516362974219311132456573918212163545680821228830118 125976441436842337070404001978282661354028942487561455604223575840045456132706665892910735987186718103927673599905603937783769957679851126328480000211502945880032766637905232104252895255418674984236244407640818810699551959306839158609276133314416064989147346701800199777796761180750165154296360751260955821442354715376603601749032563743217661154999414972577047464915045204460138382696465433232091929316922066435694450394817102097950127544554048753551350132085496157342744999348786841871590350241898131104066485766359745517865460286030646379455207677903255448178446960715293807957447070349027548422433967486281080166202199835578221788183107006468479057950873651176882383419264556641111638568314250453581121140586517129616385905210380750449390730047558564030580010344895766987018231953191337613786087444788776453885373614485691425163017640068863994303889565101129334884009057260803583417195807845779855145178095082207907181350123495638830987367525727000026148974593026538873597064381873533839666278207177709303305999749768608622544447045701483151757481653753173702350818832060128776170362372244783906490954677876582116599138053295001544528315940971218153947360576719442433354271387913179500342810721864577267216471165734707776673268600731496833596319987188292636091857946659841716482441312978995883790536625357327672690680340424964556104512964370578827734654722739236752054995693882834515679255967350564437238352069199484372255311603282489231914114567560864679145495986872408239725518564826201929752784332463784677348152122685299593289260510625751695448680758265873636346327182500687343123 1006860782840784490831736522230632792527037438060476361556156055051908474525557647518966024414300347141046661600128371976855459610319709822143773721486301725916895961949033337493388636113528049482345357252852451212273405276686510577215744815823486516889861934561161841614116947319260633889276738359178704614120587270366831035374624500705565046432631878282728438988774746747483752625791701961087467764058151786457223707652815797931328914612503248557419529250376502874676160754608329218713600408100421464137106452491240853671327973803214551857292395598173147039914957411291195265805703861430548127290211533797997654993007042422481180449749712701440941330010457444436360618152072121706055881420974986551689171529014522677769308030617353822903614439809361194339643983170490933280432859357466357382833167427238761383128395588337792242181388418278047943051784390685333551885221336145474170484778091867274828629659517838752342072252907927949938079682481754552069454775318037255311294991850996251458615041259852742265605142012750474020180424736345351506098434739594784569863735756253967693061362753660938763987053614696382768163327317846617173906123143381058444132442222027677124762652121970364495940616378407301498123087896748519488351464775139595142355360516602614588632825541079248935981366910328311541042261347079290796722566260857047029268273214600830667174631249471948303323133870683210024253297584673849135485207979568485560759302658844478788068891505450093006510285175253064675346801736329515098657527080527994688393394259984559789996708048495163592537836042116398911910315768626933712062 8047291749491819830777042965931148714028480215812625670795011281400338474272242450607805228373825918005683449340005884346202230440971897039149021537865721783961227022168142606961209000801053769811050139754603653516719638276621592025022738566278591753180421247073065011103818433489709811005836183298880069305026247336207096994475537622020800370611937000123000783625999372648674764668249446319275007321252847157549603711226424436294142837167853903514310329081927076950334474674925912103977298813324680177639970346513674204951511744462077873455935209433497055924405973156359956892625843314354745904215003851826470705959840915787555812602534161768744744923809810109891690506411846647137584982508768333691054344626636615411536479377108011273350735945654508239516701120765761881680283054922055486137449412400431940431526266274378613146536454685818510757082569074555401773311622702215503246850218804828487788848741463760633837517357183526789794350827950409086317165196069563745810257557623040823242182553995468920221718271725360421803005555293914506957649126943438495168583543476853664277174483400530967866844729815037456358369117356810560129724993639694328627472859234559965006059109026273978052243811704013340787421286454393502240278211841055779139533759283036577025105654363519814539018184355490521620755126414353942904809913301802700953522895728966369899943872987998321347256240189360804515211621608010994754799431314191660834416059797527616068481563391521198158953095966194038095292403701349209143294722000836653518998295689868928800654504367951513714948323247502920759446605210193661744923 64317669507657236023234305490014488339604780324272896085398429136740341230579016643877937528962040140281932493907284271678589655805681418582993129047133769398491690988421856211345841295869561938087935942382886133826348397418101124671089684471188950498834411566504589604128440558748043047593689481286336853325003211599775032127139021608406000076740608673713313560561812378017500411538254177987959696035700539776672685329912149129878664203784792080126349846046093364995878822724651772580013145393238676535086323721586505397338689010080575448338920515750940444750269715373671513073107683149104006389709198180346306640070314095945790823520153742084351106629475620897770381654915538945735622611176459515209938268910429005494609401542415724366727307224113436523164755630386265669004015474199146781693189601694535156351004001444594485784639224892385622670077984205626546898294169044777105632569430787239315318541926006564899737380483258720087124431183417811749026802910981472192699261633214136212838133217091884924637078257082657530014473891105742124541073230720376973094158543667461243022111100616450981878469085499967376318568693457530299514448613898719116814703944539500496584459909839491088108099218887188158826216483183344470494045219640586333003392634805725823841676534539544807019254764580751079070029841460243289097627826258986143609854407232350653742290307785154933578861790852728629180164517932458913341077893875802598434202169718979985130375243984141083375870914460120158914743277863817570917357348128522457078468464485660023434178867623803214769759850970278137953763981782684053435908 514056771576810806265318557938763526430128105483822068926247092833530589649516395374713080500638422050831792461699533049786434852109910389955748764482152495257515547991631702617689244960448465535211279808581078199431478430138064254017539072651436359038655140035116291165470811621748836416321587087280058111323996264580805238458231019457227937417076751641563679967607437468452290659458041292987709435188570462626806289591596845203956880162850198173038808609690337694738890475950900676875775931785791373386971282146720384894458595156436706934157448777801009784857744976724441201241979657483456652145497117837097316739311779185575551523805538962649588559546101697337894820913247223633929888232909121878223013356546006714634252059364716359413260787311755344645779457645513350594586372135000147422048225558673732045433411739095083840329496389823689398837290805743750763717394544157815364568342434366633514907546002881644739905473612488135402254269225965323917772017675286006920763796767207248695737928010880288532346929000239700009992915653869997072659829523908847628269815892995405889591450272852927036803297335859617030164935220816119649862009542467128125550325260169740997962372775893497473813090299555654980509936865459327497497853710790231506490012314808320211511444537234195895892441359093997893866174422449494548279310864999519651236048256198922787201864143607175767757211783902232966525276299537232767249478756200311869682343226806066316267811441527602176809012769850773583464662752630483672273824352001023666895077455261693543696650265785241968005458941386024023284215307834775752329292 4108583335992999155996131999535559791435344354689394045480094613067313945149505970748332354349237006455381586844184350405146260571475224182801509376164754305952037003937923610564503712422375969057760733210053752250100120443986159602481023608122990497986922239802685803940420136246973743243392326309158211325376563903304911140481615220230440430991596183733479175095208099826799851241402153743102581235586217126987291645015738174764912056321021584092084102701626181505759817158912344994294555035759619274577461518150324591864760663241944178083659047380819911907147556415001454286127899632463893616918361556875294889744369663818334095099191463669222347761836433878651940535813386459939124334919387531859797349758349106937984615704141039353918418032795812081168096432535505445858017585144157870765528790967672466233226689704891182746725820236129466441308961686369544181227240555372774478168759389686057526640840614836536097719601578676778237321953644581768512296879820671573841110389494963034246738103602293304650094242675060399427030592258970710774989553895522858828781537535138168484506678292407228920219348668284389537437904886426606764538174076174391261599326629081602021293358640629533196473113027299993915099012118914072989369065549253646222316821703624241501098052630475241035084160438216148458798086573021288365546892765923762727196265400147474326326177670640948607728848246196726259923656002353495847068084033949328794688068909754271303278225198262471110696268632574733986002443816394886379385888674833427739030575467518158432994779410378662628069483606547998399142907330939233295661386 32837746612299634611638642284507413794281931750294011798629657056692693988290744555150197452990101755466042949578604607044224410587624571364608822432313703124484350490753726082894058569054755771751470714194030791692460085759190328544399426321570538891835775174115875760793439203560373986930342870631740153780159474152397880955974194436517532177602148299046755550813241467775169948691548595535349196187919241695584001291705108714530364049053565038520308500326532847420614684861832435882072623164910906261099317798704540875118489949101469219809216890782418198458933027599722014096791173743523529952456098061507444172543447435380394942101719443485024588400675215473997749110644621426371386204475844665161812241154933148203596577290144291786892197544697300607223728343576043870519092814070815840639116654702506924838926837672268304489311526018392045093722239826091945169351369810411038782202574428247976345217525207440775452701093407244696662761248339130551969703569642632633895870390039458088470314643733787520231986579096723730506463648595621141137822876497343714514335950908323405759813949061449243184572581026053063577008837720486132835760700343096444878287928377061739767144328301396109619459370235372368053705381479201676091563563250794729932792970402150937217689795875737616060130976747862089840349846259597315889779618438736723585553780893152190711571344172475938081164787173495265433365980006267454911272343144206071582222720590216931777797539372414326593441253388750720971934118961200419444760111303108528384435585743116154774102126024221505524330096017897424577093541628089291118786341 262454984460258474901976181670398275732690379104045472298540335206635439058615469847466603017424890045178056154219462674605733803544364000873920869404017817689261060214368116764621155480337746011702006166400906667362297168973769278973844928052563511394957544048853250110764940675016239936091770711050673545112532289108163280007924054422612230844191411762762702286599367782989683561481685840339475198963342353823291606367183607024152766472844304026054221260558168031005465307602483976931834619513561311739556967073862214553468230977745674491723981953963876669920016988262589015762588801846629846789338907706655566913333566448381513614457288120996339655101585736144197509491470071827932340520602802669211044909244709499932518524226498559009702912692288762648615246502340420052277697561031705011138258033965868066244978247904129367654083305067122919236776420686646486277197952144444020807736980802630496940567254007653594968150508010818706438851978855890144456900894298025789831434121203261817245982240030876710120317823618660909822611984358942162082875418654743863240032930595672419051254431444002855304731822756662197840882132444072447151029991073384300500566678094314980099511966025151828153388513069415986610439030283208141539523350111045750619361000140944370817006885095474709138532722713363783816422966517216381848390885261715488483843638491687929375061548870260615347549498200279905510294323481029261788254735584431802971247504473204181613886493347205754274915638878478803305578056907901601191763544569652788848698951510195277615651999891041913038963514304416171483922777088405251962436386 2097666939356503427547328490384161301773990800012225598548651322099419796632603180513613623679493925762494828256067276663862901623155772289951575558499092424715449312644564521366644696150916041006036939717024398365413620387889155549180224961313043847713652049755700549906924200179799160458711418823426855443376928065987489634766601229329577058827944757505681532668166898073499524659009883442971051975859084444399939823611494394710335127152518731166925568439152605230286473769250780102296767975049987852684823050397880030423029478677750885221627954874439236761609091137072618271227337018385767515897865847662914435877058011074961261511207359197273676629777772987002754290105056621381890521322714944102617640565041345313698219436716181860106064734850106418411589577872611071018657189785488434990870890725646321643875296737861243167122171135170512445996364571208746374161209584809099750706177357633986130506490673769428860105614953128711713322028795224712262980392832161822465388809390500244182990215046012209172328843312271439383079660874830458036899022300951002780345934911018184753038595185240178438401695376004750095590597472392596306586187712378492559738797223290770905621166127814468517428210203840666780987825822139803483815135937558172687650060661742245704405305000822102649545026855413869078487408040921461267073293027138272308971371373860690991894728940930165028833178083682604064419366510952902628996617397369122270746792758050108013177567904073575340386361676141404471595481238563951155207268213994974690772002172968859415242754331193213057487799919398833233958479953662065544226518344 16765575744560740979526238339634442754865145528692560988383438273918518250350693587345577895314806432786323077173766289398400539805434034777596856798195661675992749863379785480175737376340246601584504185479404419049169856932775295112679039017442679839784037646417144312647770086620333865266286059716373789688120797422129045898439773451182297513243039650594012284428211632712155417992144737770099491131574133893545673934719963400016316327164837011024583836310617931166088212463934606525238300720485074669447477304261189738293337330712069198772717445342010727164216188038620890104762893926910481452786785255281973187127550762711504173071698028444586108834610525886333350404735604360686418239521396485033174025823349067702649090041716434662071764320698870996948294783348051994585103024766171703857576957556926882650312078633451831484826530714108753069772382797128874575042762239323884837598791555293803400331642973337999884463463073144658819458069592162362837699304499088128375254956477821597038260281583092435978346157984820003069112418985892627614385686656171515406288726603511019980693265204853240418442227005327442225202996823807454669241851559893493702470882608085117182319581818751515125623495458371636904991938824027201867708763431044429396247482917539635164676238953927305442339701509590011431396884817512367334084956154052843518605543355658057133367146818068970672781052165408624580370893666403255049727277671619959651051930411036528260298163159604370450879491947303905575206837669266793909392417337688754575761137592439538001890076291369815906449758483284275328824181700906358387831734110 133998717164709607569226319172658754418154921289579801404304681521727283051081844467873584907086208682526914799856567704869229368651701628712443639522778785765776225508673394628912294544643670550348292493714888841142875235424067665297496682019190016496549007480621064927945330109705461383056410450662991039558137323996323376487849601062019335433133420904209807404517381848476637598084246035378378542071866269024986706805922522629202344058837499074109895523589608095821742908134382361430624070523206628960080856635494364352504045607915185924441868774558420075920417293822504663110220589501347315718212146061338938162301396485630502041668207328421938655678127444785279125709019431382513964029019568365852699545220029487306493015159063844967857299687920680555251097247340501997428469301937748375166559048756897764216819475606223814990380901020959320277245587276591211372278602057556781920226238521915307225493074201269480508408774941036114038697250401906943887218224211653856595812181524383083420790805022782769955707531834668977450723528290280118010193488313661242125795314244287610136789846310557432553518010245448850834102736942855218674046070493139153769377907364854210139995676381901776510787028866960459921365776223132088089255856006989725951238666981763480597498287419317416350004758785216956265551603151270919837574291789263479454614469315088618883372458950879914380853217646253015649156162649579421522744611732224657246594509060205938217908438210812538909749690328642805751800308677739957254239085935001575586650115714388748061297328951670064391559821147352035349612821228626636837516214936 1070984138820522113435791030974195278777920162293995579826244607979961678866292588682997003569517190082962332175412468350257024723326413022845377588904242460658335763082164300910739793483613389622246751302760725358218967140367468968030810992410754370034404690019235925163171398844754251796461521172450660490262552065844585837433972850733470638202509896506963492769743634770076864871251902134259851135416411171576899928273796613976501496537920776753747941179419331674773437946652975333849579778308423988609290443364854764161022776233138389878663356950197045388525400889863581867623784247666306098659315109474013717906500465511505051201115954719539482541693437659358820513723895045910197799566132545320482406919334348804147521813959295589278405203048306608585664950985793108887941963290853701052685325475996605441057375468382782159442862930990387768825112546737320199795627753401059512931033331948557512608237020040093394703061107977100521804178885545658759539395068730652357471777472771033511742919838654912721077871003565549672820931749978188619144924108009318202347656542239679830353092580479120339054419014298112706166355315235488439500754214796853605654223351652396426695913423041290719635240992097514823821932621401165411459779206223208554596065610764846711308750788549165490565034982766217884260839325787822278305880935131107333139524558502240865989036495090310442523485656029859125459711784054149889444417526717733357586832672638074870104979068178041983784168094038464202944843127845406126797348422796689925848446115258911430846762255209224231227588671869049992755767389413054353438281800042 8559840392330078829767858678027575996299362547513976376951682791422857349035405198567965443717968182570556673669613828879148089738240647381246226794140374487449492546896743084219340178250377175140409358144941793570276272782058142379120028909964734014557897470263285238170190503569874394469802052400409353386281590891774553905093778782281235759153886587138158326667630391718558177435402969194400066644830104640204842813825434331398219944521426688995214130648512697845597779523176307627217091215026593684055262325998844462200552224555484833291360397306178363437090580347265925308381250806603637383947455504425260804660924094514692924748130992497058055754300094876146435259969088542121639258547866499304131458880999320659582314978150224997387828238577654347080424408547233374395909541568287210568744993474131121264326967970659379310370877568076059095782653153239704420847489956638406512824222062753795905040930614847062916791195989381589366365665655493621815838867230615419036018764995018088524604440797646646140771467301574986520302237050626945377089903673226515158526606243976467674024193920783101100919108316564565550500331709749414099551604054664971336404691427066211993778380581482442373311314774505571304903223930391718403215788503890554899933466887946435502284178353314643792546694318321858860507988864262534147469543084630789948571970491069216552369034688414920189871266383307811787107137188097198470629264857710230928687540576642306331722797523282771238543564637800931558644060268072900889318456103069115623441235890245672760266300283889560460615755990547944166891375263211899818563784514073 68414557751610445201072113881948461723276067494705589757897720848369025978069872989185706893526347700459945079479695649714246438257974016000728797471173742082144217375262597788433266998485223271579735956125922099974506976348840466481302112373455090169682243584938978569659950426449860843973495705638577691670475818710483016083372029297884770308685303189405497930848809895219459353429346427750633219780325596257635689779689282570754828789585966572905602954183447778598946610668312829442666134335813077138560047856980697209561494337781230287125030116822859713026299709731047627464283607567816578655387032664821594509438271377521789042928380106507781641440208770380652504790499425989842584515558903570001088451876877437654224446897761149893325513447226139362925634158694193073895991049195217623020228084182337022292018475278681400827523551061633251642258428147843131025967561259635666236019516296116644109365894834466682430141139083111289292160678529118800358539700354441089291831295296477955964030160093129955809822191172175616882266821230807623291441067961175016729024565364071073141958313417066218071756396976542028918307520488318260144926860204057001344629650624203432608274757545011711009721021177166906513573343401518436974477957047873490486747645375296386033869267772844479357156586363682346773680498760671685517666206270278432380840356331177869754620329307970256728975505330430369484180877683002243090051162669308648605610961251588539414969655953213337029188662909443398776657576780036573524480779388181481404851307783797785094229226073426186926634885694650852677320051910918317503863787901752 546803908198740823820013738537165648042978081291314198368931039181578423652253247133702514019968827620849808327363424441475476905414053776491473286128425747623148694475496443698374821229137184998729644212749754006062377573756621702173400095450033744163609281071594968264911053818510887422278389578682322628110944287617263143831802631652627267479505306792938287618981850184308897697347306764934498461246768083691559451888654574683936874708371593369395543307740879915855411015654189628025480283264470357168803036815546344140901037846064146680241370094780032311870258815415234316357881979125916856019404873708491484612112559782773283551020949669677703924038807487563607567270752528779698357621655742186935104111026288767271351067081869168797715143896768405329227835347472963428763126553685120611222341819950649870427331984560200673520284960310195838590920290809779216923450262335486804541693641090388990432302656114434926040295592219883237773199734166337665913860076686702727422896119270904754461311314760905872403966663210421155554184851451593648303308028085746476442805144216954588851832248881627680005397463944613706372314676966716363337617340722973661756009136823371226393635756719561391658522480266810285568244923131681699306386850184817580838584527418574251933659927371332908843448242867111990350959916697754529555887139645980563517835795781410828150374021247564233269145894111889121219918764992091458862434165177075149087794213869550343368553122942967118349814854782040227596862169684320269672908172305133935611472250402317347278199563580177593399793647618144930132243845542354917281773309228059 4370336976657756759359922501598032479140536868503419701586863495749867346762692508165782763740588674671343938300371178342466281781945347155778967583793790082990433324489563633604654232937584637020113996943354731905989627283212580359649066603741323410600630601316967130530958277877837852218327547370435546666256869181227138570115743966526221268438440100637031680736964785846289717869464371420470921759737143131943729468741045207526015416042746967820914184388595921131291087605414142873616227717525001625879259075225749768765697707357469209194533816941775683466484745408110358216573464889555892276454893298479362306604414835693348644072739038792031631514079963054415891032544058299589674220044679206863791622794827001119882803961022148861497731938215116867632263877305384323675165926094320587075444115022461598050666998955770900766361853958901837877794392183382727973878337983030128008875118793943155197069845881179015660058723999929490375507947030968427686891750963897571455941879167298019885183762746662896807983053371784523404719395608232564520405603097117410700668490441587321525634626248362177069714150523595567923940093926697512721853639690814474111246510168442979489692410417564499137601888364075601126005661634746863026404500560622383082476251360597314969985630792325872852026099656496910398424223955353154434636306824846897743180000946851659552593528659731051198432707910208295919636554150585843183189510576310074954860154217295457316614674678524809891422488730010045409832798916459044659459401994820792341417469754665260271102668713279632437845462682141536438989876126064090370745307952843316 34929990533311628638619045087996004749772798402400500324466245166612343605998330029396442603177489595533293037217965927936115213407885566032940725768594125520212238389172124659514198212099806219452686304943934175848655964968628292440531166121677360621330370612468131563123331705144105672841369543137570424326368758458289323554190288497713979687953461944701187132317543891745663215420511000183819305490918064409729859633776927913059566397306108626983925878997400895368316047767651748356098815075165418483288919186464695878988788362415294962946880601976882581989534838493822859803139035217364430992066978968129195006474388342351219016470794040242197220450732785336308114026875232016541895552217593023113538224722794185458673495566147256015515918429913021825518478159304020562476101347488605387213163866069130009801661187378199531934182950245727243452332862953300306656922323618533906291543093210148654574648156206877948609998801581574532758063249814120033343486709208215004612784577685074788770121222816458325441377383373597502537859216477781780055555389142526014686494206055241438410660645306139737892294843324286662254289705982348386675007358993729314071033726171716466986093624778572905112320686805394057330523907386126253731522157690228635956884874875056212525783902567525067806221402167228231444135094306089681377991866433004445817655231285411140703066922339600135767769793210484395856402870028592329565329054395011901997431054057874914869739449703021628876341020404704173261193206207444876740917951342924998334928826005738197197902803738871282166785177622866852872600028373274716732275667675065806 279178673471937183474115690358527366019907613806622607820028219886250121539935816270434614723061369164348079231677817270003338309568167867669053745544667857827997837896464771147340780482873294370021000819259695290566905542732024765762913363413128963351291551711279563188894595760037673061241146935225907034844172134833529097114454822109274774262163711906356707021016607729440943227434188780342569475372613635399556089349622678648726714367863352064305931664846928387875422326664357955378751837245332427109494060490245153459945819106988065118926080504587769022466633881068442175252818408883251119835423769587442881584546599442021741587207089452157746611808274147440205005175792723679041818544708413480685530224266216632491129870790181125435796799229009188476531929093503969992645401364802797410308007688652712483002646482759836656836370664648900357092064317961055375078682939375436357894067585113374105223984311375595722068852553911605425552313708664900593878903197929834400958734734237892950709785032598857577474746751829828329098419321635015391432565538728026272069799086619527831123629578438311835987709673488099459331146758275486018581217442299915082493795772017143896060299840743302174357117792088561511083588632331649369941786842138916745062433622778507151457899459903454339365960040448335114851071662754071946222255004973471561982281941060141234370267506837683045147927490476551650751012520770762380469123216429748077698230099334432888245975600829947110422147406315448155243464510489694564538561720149332035101185395892604118865945063730117958016664507337616282168620104759317994580300362367879324 2231342506540264741570625990579310385882959868702757075245056124054754999442710460232569156508241456588584266549706353613472542665812468266755193867483880327187539121027405286730741416253295930435307054355051875511044998873493829132981010381149876641444486761320613606520841705209268937062043269904785419525170774603139283837136288958431204917033062657348959890407281412438192940649457167733378274123449542940027654230567911468944640390202597798465474600869534072958631066416707597216575438571208480885699515042529722463944613685843444321398899059228262862261100393655265070138417698531381323423897188697202041138407305843527713454739244370489939579602878073100700617994317182617711412782932197179632675982691808433263637533310101874635476457995694552353963915740970925652253435361837965177380546449532223972582617093902159751559031819523648757551122544362889700430869860169131840969774703750998685816307420260634704330872475102594661674772967006378765828378281676176502629724056764197254968405524970098805926205569805822023214785476064309214270764176919388752930915068288452949684099645752709468628502539873736483410640139354171681986591009165268787284443917350392197683896907968622171567808391861118366803791446384077999623135424279024835673881387631142556653762584076411540437113716560613198603014861305793471008242276909104778529342501834210167168161740204383298167758788474002016975102052925149530017645153056670081963122438594830361629997843304016375319616595707721194043087783025516361308260470129760192683461696008777278874976321937070851525020151396159565561897243980614500296308859828715294331 17834069952031382378100818168891532096874910895124479026158564744876688338465639673712106154394774154215461972965833771158264426711414945366063904588293005826624281326581499124860560323682435166973687429433245606540065448816356441900837599630765053941266476626613816371448681598232709460323926482503409584180223937780174237604651693246781416972965208688550869269110799498540389245712141949185031377445754208964519513432891646452308329336553067230264911615924507460945643322009830083037425587670424848916853633986159166460335363995416724339838138479856652547514211934274825607219975968526388392792944088842968853550583602285462136830070512574198457397702935041512019582396454641742410745769732458432774476986467295012993795317924930010290493254448312351461853179555901875411766124869595727013167748846170506575661693742625982526551543125932067328548461969817061001362837520751860317702239594248673801710933937321796913156722119478473307487373416033515513315227928066026526694066236800798433377539546405963099968880692220546170497905781895092226412436710682973820326005481695041842445832275451745683092961609915119005242837688892859876823046256797064752557706438804335506936775517680598313888883751478053543557973601077374403743596536240708343799704845690236132175047683421608629250606695831746714160187031206666614037516700163821949771969442780050969005029567002284892119203418154988502161882609343991793631888146699423505023833838629146907536649631921006097450175127051866266891629046666014869141228645786796504417499909793851795185998779301451573657604365306552855858108542492627669450845644678199105188 142539398000700036713930415162956480842319658076359380287332017922996503167564963860749403603437392269355903949025963415437981690821084528177624954250102662891187728214805645534045747006873139651388152690053508668379081882322732698969565533340581778662564809382160153436689796277310471784355145597862109714504784483624787223818763958266820517438368195269189478700474895892692446122899243844943851069659624653617270174947621551444683804243284254051025491255215651838371730747789914955653041450657587169291775609368456585750284017790840432859844943215413820246681486312179064868851834704652541612889524639149226739096706304986586610679474266174663384824619633051039502781193967493455791577903777857759904737796558836257884508001098405263618401757635402539425674428715360430971579874657893878280322601031667199109925938904486430622889118000749703288839705578788885694268017439860373907970139717239589725627126121087928452731970895706631822275256238680420532494827393974933933379503430854180865796378424527617196181970518329742316977585291256585343517628184938061756868297048330887732198039956532275854232082977902051395823167972338470302041600292592117683885286743986560813002691546891667959437094901475078122824120909646362076642968202429066059378772916627022275189327160857521917990695562643299413764321125896002967121776061933295529071474628235594891682156687099783487543101469270859611160301799457981093988495334503319388302675116059403447730557827785923788443832934219223575391620181033509953335551111238833020471041291471216380743419053595343966279965972314691936421027005400687374373048734026718578871 1139251481304326877980258366366700262677983240686132669906452950730510545912797956582975113127555400087283834963394623198325494883109388330638489163499064442394114457788211423515583641670316497117847156374288776159032927852332076718814967005805606810400331873502340683348818576321700757461045084450546001579363475128664480760919864238010869412619378480573750915620650002899379700323809988599980473383759416180987113562773815314450148783493334154957262293979075971344914138838132445566479797079384933513308080813948461884324214190228327710067109144150726320544772804348889419378882644026314903317412017780175132649551042429116358328898151128548680180060779400034607440262213641271103336474039403220492367924656423856534567802079647504017024278646583589943218853408529663704062635652105412197926294647759092860048188129102789677926495689073845102399169924827268864593321564053868370063632610364254043552502888321679014121438690637221569943419599706017969746372103768165743262252644830160311003503492145513426918742760697642237115865473551697304042571904289304674892448423763827618123896009214915142456682369713835677706675807840077173179707620839173355722886640227767500501148816310248877368622305105323749962177691612253263228664286687865605816865957830452673878790430059404604182891427547144551915401598533353861613813496363383397858288911477167747917521671414181135541539795145065620404244797184445238906369232772805817588055138728479936836937859623718864787787211387748117444664209113043395731359630743629584222157928581692858887301523789416174203508186521603347562362984586899031507829457248048376111490 9105514924509327732052088534755554645341975822485757308887857663694940101229352647264417078620894089217316139751741649403419080925241284990856593618362431105872487374717850173219593736862490502179804453218038597717896972390484004661510890022781698100210897631072477305209600801457371543580250476945010258905753711702432598306990437032342121066602265440540146010866131040792791116402792595441421922005281204818466416992219170691951281639099023768026882646291214263340722499553013409695603957879353245876539542951182644516472802296458567026431703423008057042897133123315431602626429639326487428633003016805870141205343976422422443158062858278216840037036015614747464571744134337399341748164101973892800475555327479404101276636881575765002909106811409613085767522264956467942088551547678014092765413241600018863430946395806096474366897590681407159746352926428379488408824269185446685552770339068399320133441698591719733515711015726273204228672333292414735242000891516595332314475346671877185209163174048470632925119615403930067343137431342679215840763210633303014198850110074929412901579984405287798274074679578212274591933309086100597241163491817375077991266872527617867244136926718067375609147396121514084126983543995770404171337501062555079604363706340312046967263363812992679359080152722812441728706063596258353987008454268576332596310774383939398568649897195601801905337185706626812674350284354137479724512039768322485696601536077572671982670401526530637024744581204762494283100245521996807761571581869619965334413848904098696734293729159929719650221113208298521310011413731871207008489259557869150241301 72776245345895046688400139581609641610625361399965669243954605026948906724188600361020710014067938406198676424256281442727161625097316488221093296660950103254447332689262572655427745804949368820264968321505244165338819646794202904162637267537937227602405317371392130302873719291502375254416558355930126512409660602584610229551499630327186226637268507122462270124657737693304555482434336953525277348363650316994667770035047053134114061446660291581933665688473351520323127009390262119518022071820252613571580346501202229101271895546422200755918371725273839007681304238190632245715579032373050027677521742681432030296472854862428936843117854700245894365790621117742139943885452603461398572025052642654031936765127412339976675834761078130235813572254166791523169312005620055810305096450055031249197020354813697213176880136469548177535772990724401521250284156697281648730405204260522545331728220595738006476024440271137178125324904233687209839308198732797729151058010564050848274265885830527835684645623524357769763032287540135742633342409371436202736871620218513501681848994410592043408993584550788438081905021847168805474517328385025017083608802788436727653805276094520114515701351168564692006920495430408396450710753633019897497974247291482930653769557540564997478597516106043250936694861005393691248852719419722920394242462876086190696961726539059451005051562318450870714745584624173037737598152461262364850291633360986417031463789514036635629056667161893934986503926090002363476427444896400084451385090674455067112748886980381946996607466610217684222242520541907874492936304889776212376256172790580924550006 581667779561799510922060837087387783476694639114670504473912209449785383451709005878581584800081656907793275118903915808955535315880651955739792029138537788976498405487897339646774203776974302215977477063414046024211616642240061665252347643242865267172181658011775997970115385214718383216015313114098409920442918177192473714607212321196487101018274243123791402388795966223603677127712423330890262845559732210431814681075059704814903224518875328800597847266269144334817219234601483219439693321750503529845497706699223396231594880229362275429287451930990196949764965794022083213023044014259154282020893336537837538401833523170949136375344171071793414658105840200650069301368336682941698456189068902806751194806153076090107820978274588530152318980584949574716044266041165873339380087252398960628956017470732542992598403377325789805384405014936332349596501102422585792415012978135301571277874054073972978581403247038650507666784048005213100114473043500637711231740808112473921550204742096288506135527913138939133900420235663082865069321011037772730541008003320044659945833329564215899176772444420374591823150808421849457717090541847605273003485263515164032018237181425598503326113829700174919772153181809644244875434344127814950174664862037362348061845964919788678546043634626181362122872917290911647839272229699197357824129687036390751347744353179421898740309990351010312743591651242438676926170361998542190153218459001612755164753032702841725114548070181594878542966106369850385478073256200192338960376066242178461520338176318668904807300028006871275041054804559014270281025901313563619242869235627376051224823 4649011231161122824102881267484759152767739040650943694441871691327739502871008486120666248627672701372179860225344317582591090599253073798896083915753780602058302982084637968927132004468490706748908948971888259535743917420817328174743951721581934982885631727597124986968277767012998176228245141968936844702937869021181232708426905542747696742978393477760722623554694197457767336715187558740205768986293942348157495270169870258256741475120226881408872584170134812956606979828838655684159824707941354531687126654563155498679109976982301239259652874581925197999859043707338491293808582038788861969758516789283386623473772361954999190104991561034167420030978761686069296675286304430448053737183130744939022146080801376290934993951208651034791395681029061678860786904849822730362456340500308874986548305947250487041910215139744052699072483931575178605491784884701047633888747211726953235322976687798637179855076126592848130948164404032475286991060801030772663478156550154902609642552641716282586813900069151871294080054963968805122692511288814250679298155248660635978338703670278088119716513232475041725752665542058874613402374518504770136338260942372334137870358754105530353844767310476503121570137505751608231701115146354084784139442275660410072353827396665833966812978928216348967341649025923802974735450851683249066054874722230633106932341231802575512748014706823728847789328690610116106181475693296453989375430677805724531551728562356450030856819604924789732794833340412279609828389823850293015047785207118593180347213983546634300871619959441474236691667720088900019902226597088819922210289727583273703768260 37157493383304138983004269066484646368268042671337123432846976494182637125587615721626373834230616920784393270189557814735510171528117028564332608817795863849812165561402091314594904736860977605539669483821861221227578290019536412077071053412993885286672917374907585580906959202925270669420515448512297010617219723047859184129072210212671088741858973074550591855682208667821088317716740440825743890382943762243848246703208663807677185865451667986104444404072496214742716781561765149459575419577687883489006849449197673502427535128439398687463245079898615236958263971297998863713465147582156700631506751513684004639399182574689247800197099000574501817424420662136571434555852972306431837847554701054345409995282974722933030726934718966831120326906742893516631685153072442392308745994646340664510967978535135068911373080643079922703552172176925185310364666149234463493808202601279870071996089026677149114943068524993464605864767028188315425134606409815182167969313462899818584267219550137722943923283955218522050123147253646134737886046913698169727949572397815358796450198018549363334288999959930158075338685393150777539675955420682144571478326871057999978222811232441087418116391619970650303730988417238456589608345236485018740336206491097956685039720448181591200887731608394140089272681080706397256749260787491561480500321216375598313799476455735599149707592591886918974396426465959396328438280897811797943051843602736185888666731499330048028064894083743553199971733597958222442606733652434536888276392581520955949989615817276436851200516739661942999062805887318543122865449348950465634138201487147344672639416 296983587107844551103492396576877193257240065581727815367275747288775713754669116821554121059320750904955558875212842767543413589614415604922486511907312978688794483436482366247755999674673686153953734074033445276178112013389061917319030954544119186423692199283798287762615207747637372498305753548556044306901677119627632239202232645030401313730588625871329300166601004636437281148417071090470162392586897452637067813959751767768158633060271425901228629854155482281449225188533705651531729276524373004933313899310784616588539677266497959305481719434757605204926305112847961088882461900006424208692553093833876173646617885910279488622269047978876455403221075663341260135491895983594894183593744139306391802229478125699199791250943233406208359222055033093093158173231537535478366132908113100981805340550192279046749236763995961506285088716528451600832980846358622749377609483633892359880408405857367833643890436145594205019062912167151928493970388503753155852179700873135330785298428272424706433297951956143563306933699686051549674201941307363340394632496368342424441869418360781953494873918594129042419275373172181281411678858454812904629862978609208778906155096689284120084564731783136605903811644012805276851410145260831424120833994957467341743765343729561059950305992664818476278454320121893678605933854106119763268798589266982547422412613042019352777046411371750054698077953309152437041525757561533665465369262188046563908042847806968914981554478011553717913327997246246651051789056261261986487260418270280052347969618176970462443399431627299502645528275786052941037786780863908906109984581485058072522119990 2373661104612661135349636119017267289849966724114795504481125566735858238337592181790728014020020773042253136512711382531332594509293933545094305975804143937626654718104433888358754743488500837190333171784843175017780184395090030098703704420664694851038269026363441790805917565181323939129800621663304531890163392359462058488723867166646303402148741609184563901744090152271377885753909646813395921088028565133812471332043365783537937744149181116213424248999500265666537774150585651912141440970632361641351381897239250621421742294066414949955838109478475332459369432831603250227897402366461172358704141653703459466646369199231380958249372300789973678163335309485771170107526930505725695584341153963840256403149833697873486368346878205766100813931101560113105171479697383741748022969908471781402139852650433924803483524998594833206486175696454913424207248094990023847550239904076499344268869464068401332157069061428883664272341284731289197389430522927505473582103820870459282577787115596570828326041335144475222444875427534542167691294219279132094411073825379354842999741578449394001194614751725075329890226365154398179463174420493293652808697022276767010920014869065779931119228084805786681936795619470263967655174098249825207586008940297979967225335594078496584787607344485294148500700379813107503196085296058089425427635528732132612367646216578534901564256054861893894568434946991885063912962890912548347711516429012780325426132948809132827833298133207359897279053325179634466834175591655454457378056353583436064788398699164718937682970705968037296491025556506421673752872057847776870193132205815954112233716684 18971654344503931091538681223907509927691833853967598232539743605331828701350181582695032539962315328607395923948874828535984798140659463007418750584721031006662902654484630910453224984791542624942586209893306906747728444841341562522982705256960667522048669128369761415154694778993775073291520097374650306920221652247176986300540317281319576731232939644053685284041700696206691022512269543281843933408837815710591452772207565764654614096121621984903434118593288605734941642168797098524460608360767240508734595196350850734836718630476345079398718272118517882635045370934652342183917468020429943799599641892069279453615106441802805398299253535907100117995380425709090822346522171398381358358919785702798030087070278422979940975528057514220564774319476402253976186101568899075839306096895111813935321779350986554886354562364060871707553211839606818882049831602301324121805205960594848222841186511018545986885087038095503697575224858380832848743746237161208759890222828435384304128376383128190446265424420157400043746651524260601494107125006268028559789991620810823870990251107869500042748034139018529294713864526120157803400682975548033518677023309612664699144795628992972840714696466596014868149419696066320532674050144676639559145282578160077656431789387533920012649755939956408987450941047057041997314338509192059326269519703313615069161293869062683788203076429993991439662550667131572532844935408116294175706923663134318372993394551806345650357939182855665709416470410398186619366345070635771992910586236460972011145442018670828946395903926739452583545252822034075766300909317555540475320965820307426946978395688 151632368352833585049602076814221579057042753226935698991263177602505808107467145243369193743363734775916398141804117024098657349760686392904006962265134528087825594741741940759249260444137532369801269193501921591690622373553514444373536740377738555333545823605856994054816930128775086588548357317269539107631498836647243918136026440202654531546920304223363092797474748348322076401915582223476507851261016299527024698157170762829727167648415467848049817060145623067525652686541592265125794078351826840838020053503147182564340047072103821202401907150513933532470871477263708368338995918396312609057312312028630210418257903459211842717887964620614741980941823453885873053610078243352232227350406640713205344737420048910819435552891597030369729293962947673802752678160297009585484267800870168866434746215580128447791330612776516356450808146701231847877310711760593389675500846054987999706831819073997463019526193297222067048408075333698601812635444203978992296209320120151684475642939519591935072290245217694401470948075620903723857154174213568737561316472226335917356050679756157090195902022732226196293765042745261981589491993299845311556035278045640230438366142838011505234949682137646796867816070360023119286825399861664708731632513776039937615482298502160220605152366778135335765404858087477471213987057865290701040170771845392783485851938940220843300553941346326847499107936005338109793914270677072020422034003492758589262544698693969149672837818133926810157324206501035163285838574031516593700248399790996215391464530174329757087147638761763376792229047542266802643589005825210645810059433791284405395547140225 1211933688463077921382406866834256934525792716194575696407446151445763700081847460769599642985055905955334154670346194894244228656137345990576096466041326353347679118432050866283507260903180776936314523872189883265972218676849758988363144087269208067891566390437355122618230847425970980939317254256528618673391988250939853171806592758453013460858708441200798551385970318969366539425510640761685420683950807396815971865534092622279610705993614221854191577439541222060657778052112004039051762358225914721867113170379791837988354236889647465909803988497714603149631337188934825934458736612377582282338391895642413777134711613704431804342400146307909635915438262474886075512915421191331476699342983728778310405788708221234369031231793820929340878913263825932447295705490862023176519298653912504311062938449714755986236660051786596279189042440940222637506013599915145441183335953748765567318562970720199153310693053292409228763043959624233234692368314892478154429331370417867050478653241371197408759577190670071340467170951600564591165522352394420406130215972918792602835845165976874895428152438006167031942585216371831669039087116004954633997275181774442932046466209692951730014525663245343128996025192156567654869422909279233412811132587449662610889399636299154647521048054739978300490356855280735703055629061389727737625439788485002055887987933702275263932596173761556388219389909502613644908626500466108302537980457413221141710485855550376069006017084990357476014099760528833751154622621159084223644277958874349697527440607492866627556913679222485433071381640290829672865241369568367062395510973942581664693043081246 9686480796452074931442766762070821524342750273114775295117774482057896958511779835043545731866206820180753264728362377424726252800894741441110456104736572945981678791414428298641093522679141129714781286904704721393864901725407613557792849457770088436288187668908945669809883146160730104410306345976684073120408032246336800278190048373018739856174331154404909448767421592120361832219914490608509357087435966936673419547187460977662078857464546226033897771866496797378293876727582201915441771370580673888935999445848737688311846944127799558954110528799254734491120584117362405891036314413009799915806358340120454536973739084197936249162758497709290863324424814158236955491138188460307293988797113442437564068470096761894063579079850959078108947366573078429180797453426687917627895717140787053942034503157059066479932375592182444243489490246601043796576165509957744125014185391581156886379553831494459935608968916306831258950678501455269843212231017901973569837927915427984968564685285382287028351489839302234771544588146912572033888341907954479778848135270129666150775228274124719918925547970157684015661036516135966059779224105521825965981233059710852499005567300993199507274953068815964720492944667101893302946970178747268000176816194956340211334825516495789110007053065329284601378691593329075288548209337698976143541411283920351414970388646508319887447576588846291912419729685546532081423397518419523927179738274277574014460567406479624915224316088956814807059463862089922253808950034578162530775223267326994926602607086145079678926005032406936956535550583465169223410479376432222271541471086424074728640798931492 77420043308726461991196907257337377388386923931373405934807052612851202698797891645073301024048941343644999530818321736830277456502045350055439643557755926126867844234520506566192504822410998521215284705929753981655973321303925738005836133454892912764810170989113125243536429797906681703540753560057072722863627000198704385109751086111708646458249356987696819352878460623127373162181792961138661654741630604319167416555277008460898181279186686896954162696978526795947044516491754312292164856503832104950010240700404565683928268554741299891205909037929706985696552560721548424108531365707421057874912587690981181494206007969519704040016039544406037830221366405149699103996166259424433577905242075077545802047473076316648708105175585392601957466878695822014171865774342078721298073390971838073909965038168938413408403717486795305541302717803960942789681827972075129217324550504197350737775149122837957668150225635657823143363420261870451049472595105831306265136524381681662144285216154501377527009329945058588722387246965792375926969939476140647590164923916056794582254172973528627693100937789471253375631493422360371945034371175432338074353255420474480330940769970535616887668292061100363233502335435809554381370942028508639906566514741055557151815154808733456124689003106744564136862887439405651112952249003381393618968380445497564890761441777648310574202220286250039673263659738983656746510764437085384816155060428946396363714638794639557032987638493403291632001243639489245280934464394586491662459074229266390739599301206337742031698117036754479910076171162036285870556335373891196943420244035082268954374793053344 618786773245348187420726854814370811710791736666331146295839480091863025901819230826822044016174972133730425016311156197139668615755280607428654778875198708033449082886290315173506284332250600500366292612835245510335366881667306205104520635990744696521595956082014597610253311145987417832929955293202542155182766646348369470593709161048868878663071850523534136786873978611306310151703683472994581280061480728535681600854963316126706705538994583198308226609059333891936530664258734540355101540533860254905308487210659872096498242537954450067121428587437538676437022764232956883034057505535388627719737582120243751655125399494123840051849319653893250872402813707945213633320967004581666931230365782142237457095131368877749545106278598250371745698246313704134448563343486849369380865475517487371429912601910606167145401149783022815631470398991165332654462519605068978855808776631938878511437691463978803244960017795703901398158816609850828639864671537464012958292403613636563070195987365114295037188168914784554609612295436478546506341742472620345129998743248620732860003005295481745286351164378654685029637289707474929545756246953500843554572844128293023983491982745617911560038152471188947919268123592594053556803997419030620293279665052086973678786329005768643204032434823888806865378976412923722241476932974251915591135538263719959693332724087646112722521298862395217887836430618756627893660566493026122085587965305215386895749264802886541889945727878195321372189025243107486952162345366132586711295050361003704368930076669606105928496679598716252606543974604333788602188731528996708014175265376206316300387862749015 4945712396525316693564843773022829177824186344732237462414608495267359822328826830476035692569868695321212446535653582714259543261331551520389101918712847662620265372745233875174692170216791019631943551003067701315197713058318230151754742842780569426553478653007523502965446781756615459300580160703503230513581452780033324461865346906937127595929211273315731702164758319908346447198019244120806011404762450361197198069426561534229991184627896686266515511938948040186908106133384491040454228992764423286641787318251164992762901417442006362847419238550717982855462458417873671787541800829688898308880694099786112205257788487676784130591503240825566923617718092295902315389447937084494256178519866700354470964746729894540130295857578488749389338255451967442895507811985244087693194199710052871435368903664365110806763132933261768670954796517359891419577191319505099488673680449961994931799703334571672732532420893619042276062204722797907720119890415987392545478355099159484258491052686877769129827083600020613215790061354466805486856058223383124387492704353902098906052638677982166904695653259753204570877411129634695864095840272424574826603354438130787594112637681303706756839485978434627696457424900111001397916199915273522621146589667702545931365841431937528618626138042778225883969800348065463911006556644752730952885020310414210304556162088555251238897242332272763405812337204317221777508720140022593704990004219162993872525960370579552921293978466401839103048274838305478923886343364926728497685662703434582842856145563416789864563598528858985057797563516411563459281801214932582805963360035900323106311733942241398 39529099116888048389185814600260145639607258720596833526436393292470258168859451878091056443707114054888269354932444802335843716496786395353845077729491422120448601566587543937097217522217112511009618653746541756786216598406207187473667943644342241003807458256207128028481683712175653758465784016938968246919029277761422624845064036913669376787243002655296604154511378766285387029104760244352517304992396769828365880390472208856851102218521391451785222355043505221134155458120826734528752644387121809722703603351222586130479879631428112336472294711553672014021521963710863863873830453365921621877232442441111992099243488606496261984343646663591117036380526368288041272736739559873856392898766617089188536843499199958277776176473565014271082553316942671892557626895919892524184473811048870825252248396130638016371994939129999456025394019762769734553041576092090397282834981854380417419232819884438318079617005061518493432809578387191761570391824292877971022416780865999953702715817580654869901075847819117932763304504273637878682254898842579549448575992585317944735150841755702376996715791266684698227671452077776840392727777220460415693335508645008038389769413379992696721867020640748975907859230210955273125920264498433497006362434385388916618607144649420273737871447313887656912306322821000496895483362631159084831627443404558624023168514972026854232595085263344943646279537423517770312935383163499602531905590828163604703672119266779428048545955634571646720984693821243927950090827806916182980213232094676150886545424084456556896158234810334505812494774324622284770753434187901154260457835346927927185180595082898904 315940425690918387667612455156138530952580607511572525013537596202462110396716955599735787140507517255508928187169805826340178710166038909932363211014657158581975798658090515649755531812006076445939696505977756747546627956865630346038553973784475626035903677922743988068022604108809054584228296173329255038727936859620535830204989981138281966126793656838987822706002668467631748500155959484945724062544393859348882455486339155996196591000565138802783425595732310448332645994778169629172627921385654754739253418681316037299806880629711790107147763740640949287632718291569795029397142796414706976055248033959804761942664903702243596536490584194855894106283483678754395830433558474894299122389884509999761123756781084113531055475119829266174216818444464762660269864128194744859812300236664323586101546228013396892549080988307850413666599040070944875700091074535652090986939756614775401493881924053503590948525594744496734183474036329211183841507626050092281516831131699150541369596058943369660920804068547111687265326492114059775062951822985000486224090733631033241347287961185826712845334288914139077297377443643833813378910328423565063016679244256478218119578862962047690834502718305306194699546931271621586056857413527860926237403918321991209018020680783276935434844397073429783144582386718643647365742491948905150556383218963228055578766878755015486124158500033472744363765014452072990752702809494390092729948856531319999675345551667739040543835538135599479673038882612868754534189636860162116247864953769860159938132369274546424494006536092584663471485509330027300534656530470981806647103635288823657594080720031662890 2525187926113566183717682765811693115909592480213205763103460268342514274460389917345650255009901999732791514739465935240221293825780009737067346883858982199969538320405923145411131757086818470646558673386036153415492518512669525209943597296321317437236027311426128911258388684505102269911157905656883776714730854629292931442254728807061745794355997389761619163146917841299328769475885648339867481383836369126997660710331225273211512516676031005075201111772406401136217370942465348283895941550673120859523809067716525621301064909264786463812457381738277166166106042383251599358187163469275904885536865735599251174590263008240831630466627938705659205673484457793023987957762059273549551966530782284594061781618679556408237699691787340849652315769857129637486483148810684791028445748352689862024770031132561131487712783293354313253754218396263942997832558767890509605312351310081741604991068935426126370991384277270828019962490003644540912804301485176859159889937220709351707849531728788667882439377945030885475198997039374648843968795141689092515619298314093677767993569611645125253509438679581121473728299172105609251124786460939419569007015152952084264546154843171951532645825620682869863440554265072262846840204025284610663031272165035383389405467179592246645501712117237308552481996389196659611312230267437913651918827753695223646432758868085884727791973836895756233568381410873460293093909077153308689976594530469954098999357076670717255744530055120484085890468625853014378843539346168779237970322758582228035906544196544185099219376947312136621191673762109896482677731912793125130715462431113624359232578600322617734 20182847185686310994929931656101114594782650786629553179118008365327808858088808926988750735020452886270895973205139476844918311586982641786183583352550483966010072202970076724239969511698213519199202463559316826035147309235700170811912682363007221559233188307822790515935031659779960377492479014928809027256404286566590776411640671464938024657353416792962512738265763014122197764806770069619228184185826784020064283683001433263465603109816846617465152905914117467552539129670350569545023382978326068700851664417419724663485229530363844044836358409431661097020308969818933121013695907645695297001362763347265009855109330820295009572249270859209617510261221660644768078290741837869056792253134785777449614797855355142567863043130610972208747045692651395712274819432882197328838708417328034328441477541517541431959471245202785160803599869169975452601659634833100881760786513624547888504363450447481610163605877630414366115284958048818805033679797424446110869308205282457152824795536709174201058078981329616152131928286733387257071384581914837105612613738664480916079816108144416437546843978378360041325870366462451134966147975100377469322882913080361919199771001113381883632701022037265902759180031712960244541986129977840084647352509058092758455646531558154114856688056862620106576954495382777992251646811468218365890353772776660342933544598484268870498073198560795053165213689339013226246318134449030696335998042030829292078610986590548532212315594031521005866631145809597654423888608502315536206651119648006892635469880603760627129247999385914604097854687693837135019998593876260172103953267725625389532752609526242995496 161313748147742910896139557822243139438959637484306624933364214704490462016344159568296079670653124966296006156383807422705334354990164752155453587381551072917238874719948256598619359887573844832874693116384799680450626777320344837669645028008053692660842232537411144073270797197601562375160942041324059799540942779471026612525047790190624602757496618163271826601843886585388496141858043136547408969963102237898121797174868111521998317426443493782258896633504454670454431477397945829147473308283085698980827718494513288029405786357867953738600705405206163761457203298179925209132322651171484609240738169735701569190267178422251642191456858129501580983041421705325072271240140503268668671194672173157600966867578887814218013334058222884457076405469503929061255352051831561613258526885777102537905304547882191529219546668692355799377038439124533241709734956826386280056000444804621712286784988564731935191056833760404090253703715441744894939764352693667848614296356061000282912511482431322254579733810490764463468201187040556363073332145290664895533048275340219078095408106410404614163298679695164833160544399258757625624696399516675749571109807100294620898495661205165628375091032633330114183053704360864905173155501119423822408438757040690805700421907086280703674370657469861833212011669887593960055353460950478307572512488477374742465715206761192416125452209824719558707371764114168529156424945234402965601846537248373425197546052397286201769436727263328415751201790072072545385451589883955329306009952816946875993575816245188215208067688922204864082984674849022960115447460560310477343507176807138665265009674379693129762 1289319510484086057403128014802042120370183116586348863703943595246789669399307555334644465205588736085430599490645698642276172717178286782844760058528702250131837294689749290630217115608009617011535162947565265800000447397694080548448527167935478267146673220200127008993249880952500206791353031717807767636782696834928131023043629266742636473702596716635321211341068729156086930272706627407733749451866837117067081524677730321553165501431799444046057790911056329697263989369420143137475737171307373515336080538974321287118442571253245233272189214763046200108978143582726631873269311034914567599256438328791891368355926149207312252691278967844961103706951771616781884900032391801184719495988665114184086440982932731329009204529576324760533502995410639790058551496474786667768901966291170593007686273844999526650732102563506909354856170204426777005267207225715416002217589242965084328214909044312666016836770115722044986675053609696114973998602057027287692992011095366626224522257745654521643509407187611886930012185739126801378795002696596567759823688764778950953908837756375285046931480382835763697263741925918278502854718484274597520539076161134365742281604838218743623237524092016643095724738871016258544872356784997116873233176203202522798747285002287990379432505975573939386948926805837081125813514602236070153347237683451272054632665143179478066689988325216754757817104029897298067322098986581585915505715732933119479666613751490814175793605122330811586942262667059896562559956626666581102547266540078350685617375608486734715050072185897186356424784480062261254571753981885797808608930534612720998242230391492110151428 10305046337755837222807840468420796547937303872356462581360639712426265725260694537195940022965564512176048487822751255003153819752525566540041207449711497190747602406534510051614563527242056077365249208658047204137266713362006232128408343235345937935585078461670069979449160447664358188066560230955453679443858197427897794204243843282584466646597515359476682763958338671606644741382501855713204049605209183876008839648664931540702020811659034576982435769391896148227215366288449671140728672785754881211849297423909301058582074740823826012798398352738405513900209081683012347030869922914676255295953955889688979312605724430787302687730302503903320235044182309332576101136915567419346480440561046654200871395914789034666551415418568547821163662242319054457336990907047769185516435155438322576108772984046639583005159436668853846403003773416559053187388092740677512055131970104584714831986941623903971908550274473320255838825994755726163545892986069065454184529158247140637405138031921832588687874652129575581576559887719124335955571198058502815020680009640213092835539152904525285201207736434678026120576627658795523960231401361234893399503909392736278111105790623987854873638430601292896221073869157903040370396165521131788895556560844837128718540012546391809479459526916553614288321553329097062279597343897747961642943897014248672206230219004391219856590173396463262611108920483354508000664787409631179957673010635365622509856873293948127463139224555897316805180985974283596774890591357883005139496631525559155155527621559286103274250418369023147619188104875758808644006927761996928680484664504825427971634532196923706706941 82364404916893948931456722921602399471616144051326921234710507378644013014152081343707009979958289527578680280725192855867990961463479640255513622180896261120378246367909991295907136571103202977557271409596984098910690679383685209220879229254285154092863463639609692311083260718049612577865743438333423028547852829531893008075006775932513540519557796595453900076719839784694727635492979422067076918793743857907512737530925001238435104729260264347567187184780516115190081069978426085870115039044488955661223606163878085175152172482601219711926336780507660028950294829229747646559067171860091326893869205945726785115446780836965420130407147498916295378534749826198065622710366481799410870038215395149369991413275313827111801003104128370503644618978417858891103016091942046495863098745919867134067506291769725807740459368029093171756474309268898593379760391797682487860115238759136237980461084790208220695736439954917823570050588740430515135467528476241156903975601764874673094287501886130192445970989138290876835413487833104632765356596126171677010274622914308180934457551222203434017714960813806500180225077185496260359983537036035116987707928141460199668166635599141525090314508696189871063359425689798970871403889713356932474283587325066659882959616967813620290112717914656970025066230846298806633905043443408119248685308601725226875096680721874213278208298074916619904959084844090348485397240296165238877213168182245976592288342145738889377429278198190269925302448790921134883771385761879297292829440819700568783267077832070086441131935193220110173610975044545166099739204499532332475691966877577450400600763007888596587098 658308408705322190270214590726270555657106445864538858726953834343489897932635989318739721385426947326055002161335191092203387718820330904115601458435505834542212440804793993020496476238930749273904287961102817383175173021075362662897781932958993095900043663619862311610257331974426509765939718443801113026165526363472575220027740048095505861234349868917099047622126423387405489900631876940100148793356360281856250935616079962504971934814049777326344763806767160498170561927815081044914468595490499812588264432908266161074238839929790210721759418212998176569253854883435946284793510064487204728073845185430095069414479743709201354256606055149791120936062789716832990197761058631264110068817857422106734161151358149220259087748128798588886653252836673706783444411306213300211876364674108484925095820315073497353762320055125414898911490808042583396850030726931558974552797567066393949326783348557184545070251307698426528973000340615267371022573388362454767220355089995641831245007321295588924167059199430926057957604971693345834381568290310812805355234895920117461793178063823579759263736900816818758380778291704254356626074312839855785543538615513204018516528921195340144828762579266687687896699657909409383226857774123913523616032911095907113881000246054014600668729524784326707862212123178286048199665717389861226559979498209434014272589312218718226544605484188915298385681549094527934144878207287721516097178842984816598672003608577622988087908924903934367700280823423107247898089662173912522977126655578447688419403021135988116093745449749871634185367340419548214398296888870406067047296213315256299597857108847858714671355 5261619775301686305075438546870467234911715249217596737483088092449475950062347928806583976825183082464293756769361658621672768251838402799779050218240749926135184545515998410278157094010764521735907129933080424436541345246744381901328715801778195105554324935071301015141589442850517936856146330397381757943363815839597400644207780012461304948845926836120473145710122027072255149190922266622236292712278501747881620080848991738930307664527992417029079290432243101195557407685701832093657557592592411954381724386355764555968669362543899961685533893001902382475196250468071609575241851477122314497864094977147811690029987419561453624939311814075274047414646065146139877073486716336068231044109597709362241703921415890794938347736198284094102824822419338642711034523599460038956594810182128002786725193829487141211890942155674365994709190703247877395920597253662783030619838364136699708465963537860213764049014768492566542406449666347133105980287469434636482196969723682822475401007436069773547029961784318451267462756774364501028705733720423753132029585584380700068378857307816942832385375114393935616911636951798049724436272848084488902885596569104601621594062669247634855754388742645535157887557933682134019143556558213941260734747223824333468555688348366877686418823501150244779976282296066440446722831248988844189868982753945280481400432964237416092921029744781998703325792953641783770512702957834616957184230880836079032108390459932634839155675579315955172591955298446634385372822086983389754335788135197203364239680694773574245567054901755354613759551151042296483632851596870847416237337522599163629840519028920901959145132 42054235337460315482910836368105884582928724588884591344493855834381205772425548747437129896178159645492487042294625793847347704683878673520839514341432118424719898435361787554094581806641279880927283254539332352816937267987846184847632622280340227144473018412110023566887349650326780631070283841257406502765303768116847631832729891304022900511575451320080280794381115516985724683931393713663413513068235149100391045727512488766079405164837798923138343177796352024068152403289272199755470951523407962864026640443959661325356298820737170160180626191533232275484029742306709974293593909477176350792123718650885142409025844047867028308471661349662280603897627008889999106232916222530956495935186811154749838676460322730059556772082718220335873443091651232916160284148005417421875930074367771092615762907595021748973062579169217520779276825089161380467283134522885601478723529242271888099988422545553755734709128213541738701788937714069928713338195867248890879067836625127882274103973917103960828415568017728714807606552006468163063659290980542934539579156875164388958385652232263886260874034626868594659193243612174013468545897976301936064059666758337338962496341666094080564308176758117967637399986258750822236265516115060793696997964503881149271394557541765336179251047500688862789758795860188344393153930527908465385318457764912769062874415368627052377605193037816160853905402838276370848098745652465930367568321106516350986357266097182537139789641084840646843410740998105985597652562676284131657083567546689803678098139592128740542066047127283250446272983371103609203219656042405949318044013666507815388270760460545677144122807 336124555574170713237539146476539808870728355978748428489142208212049322492814106111581830785504433104856684057518510097915912936354433273118182264981505303347194802650900623726991002223596821269265890999954468569122709237548632494037054425552715733015089711758311179982541635206941335346744324944411183486218439295796227319082767709669181795205817058180717519222008908442785452370974728680981042582076946154643307406533137818347695420374577828880174527038058577118708464689748728840273634843742280733689391586119488075360439339392384888315996456949461186332493446600944288706977936191136376715826071807566428031399132700287503123229879017956401504001245886193322481125493805018283975828568940067985570508319922218229974361656754308654531707160957118755167613716075948282933513929639390338585098520866805379187546138953142731914874790778883146985169699483061134708560242179923879423915166341982452133817410924227037196115311841352619365567220079847907566690429992644052751018133258595409243824850582199810902008492141128758971130450451557887000828115345099502753165551638036440106741495235975596379397246438957185487285020285001881942042826036210025154193507620617764797414098778625285276849673168296594495416102316092067910205942887342263313111589627091756532434384968542047195270812264759464738766768054020598603117050855308354795570504966341511775036861490437587819917209917829369124411565154747554046032628358899980536536969641435014900727254294268512044717138077324196222795928775832497201270612061608990020167543291071053705107960292271853099504033366845145043613468772758443696649714024110933738537935620416414607026028624 2686525466568583304359075998806226520628348195049018092325797819900679701442955545506229058440739895797689616569915625177687580771408869119263197785008681033483602834341326197591741469148489578595442457862735396406445995483465028193793408021123871812244872891412446090094272683119967422356394240689440077877990487319565374416618429976377107011767543004975258339424212871421975088222946962388943332848277741397090483543243376107257950310216723314768641312351863047242609260854311625948801949931705406341958538649627871699694792425096427406777916327780901962751470139786461737356212784356583553082417434305943809393329697181841437544605595136081829989386569385341202846455270040007533119728748403659239954986198784893389758041666531305148614788334308384674679026859533442398271184092527320574154066963680672635922034395668841414974715669154900388240975962603532199415487201007471167195389766745583872896048440548162562630209206471486639323814339491493080796975789492472808277242533871262471246207376977139279695829855105703646339168007010228991765737851650794734059912917000371461917730085530665310344530189624375895067439009193031081055948763096209872885728686618103963791285858417061186372431351808837740823556389401883668849063443130660441640429480134297355568952867684078455925429740556719895306643080289550118379004428741265011006108714498413793234316106821267060750822371904434372107343669393744084304975997247949978754444287635646721196548457966850988202828277610060429523504639759537228810996450082239571118392784058954548833816437723831683800283274033389419757144128254798559949700697285539780567690519749159180353354352931 21472464961347877452490594399259316974221008925968163949366550748263728130543612504109362596309266441067170527140514382808287818286588087796776079243062445149649658147604522125433677725951093046596406083776424634820094683429144718078110840449706439085697868168192146508424327295014518890709746501562251780805337518801169662696026306636010910110542103326107900551970787720215989950462720259514845521780051259909862893673104537315493536467179371694343435011025698662686822822871126886724415464513333066225620317740492672761055185026038694024425101573013630390786884679577379868939157525249891914788749181222049984077792700764072204194321257163133532542872126290340132884617337131571739555387460697127516803032967763739240684558751081799739967455532240000638517655003399834367610559769875562493569672513198036467164655152400736844347396404467426396538934899013871117162908581045507520505387203759503325069548439856911857385699293647468609696570555960434624966177015457542529340739786560033235899613540902794841341773108206521901930516602667971514225085889484661377365152448952673637913533904061531016793331711341033692793341545214582789721270333884878319938332637737474159903007012002056550653355927307951932637118301984959951511742280541892228938823134706149358504923388543051697336577969254648591869161565814392608898250900142414914477274154486628199151683074514393890155568005604192339830126191039973976961585249433050588375603231746844614515207518897113229801513789459307318780895141818634766099093795466423195320252565589410204374294741643913672918013356916696064250925368850918601943496928232284764866838259626787135835349604582 171622041475670440613283693294589683287771212558540928448113599530213450757875116068805308274064093639696930879216701706387708800336383750808888737101837317178082053393154954459469472051829391115554711718069382605077001926008032961638618146179950978104920142239243420085420139265770853830346687483157462657120436292133050558973551107827919756464771489132816918691729010407524496151429114651278963198452842464380616845261608629890916230253715804295618716100864983941460718772003538290807081646111890590800585617880716947395423113694738524330540320234352791384993378588806870404245721032007278881311372645582342893487609593315252872170948469322663797979169877308759720866752723603175313868163701478433390540417541880915034058831694354184284054818633251983139162662445047594517358545749359104125481221131211728525344207395494563925196559482601989961477068200439073199180275862335641113744094499737485471859131273511149245034829515602828389884276865728861498361732866493319951522219407322059689233698930149178587941089803949072576442270726379444196336103750227094526687801201181190232868978555463924152292554247699296207081850184552968835076667887619141768242533793128030429230005281901755681644260243483493611606262372413325533326044187801004529550048698800733564347680391348436341266646228195750377260482919442771759742981048865977038785263805923238513992353801887391944026777812238093560694839202911855324357448732111950038509404161927305147289055050753744231048998806939928055981450991178584540885691668859779229548119716344119705573428670557936080222921410570253768618815615879791943797839943116696900805350645695038474339760003420 1371716757974175773395714437266589806146320005925745394334646042204032854318089950362296527986194145952200059318587210015678507675362684172026872218813957387445116852018361983264421363941072724941165175031208845624679731519189848918681247236946431327140206346139320585619535188930042383003865243393589186763528005213979374411586133605540693924993792528587781938468907147483579426868512012039938224809072455320066969354456465814117838112047572104357120704427978222837006751852600466939842730729905827308201356332748780355328162484931356855721757679152387836060818719013283299142745807519692046819343494416780534975670551808801546127651686198655029650471552777328937382941715475748546141007814706711846793749706653807223330270868523988621986222764475927530159290118601006969776524719205497085385162053549004494549590766893508538872040937170008890085906420854845958753839760064875636216547668207448938778941964218083248468376077088917992279051346111346038447138690038490311602736748651361889671952782749199798224750627972803267713788996470339191174949432884949770451014632954512440498090831284244482409056969476431340307699869917660489622994977226019741674963505274919565074530034172296311929962336632130349870736466740541632748206727524010582661208661012756581604079453712232977285093102344964223718161012279220652235946003393790718026096087034301577257519019237388061392268452024628977726716820771460579628726130274137242348667672307431994030452546503630163752840164711174902574969456629213790188306333707475394363849197523656489102994813512491542007831535883112924143811921244123453368754270440940190553721150780836737100769257462310 10963672258368680560980693136367052776093560627989339023263658869591230607198768492991118079997253673717426470466251847771164005604961004903191791638039141494058818993411429006171343866083282979155641090202748083945026976275220554918761436841131326188827079479742856784508416416594775743395777089117648820104307766491116401853261359174628233171707586214693520830908147717299194427974299106471164294792230080588334290112171402260793519032442858004050821662293857728524534320665377742688025182464849554919783649218042726034856554212733830276991591401083510317354664780518029166570096308589757665269016717926984048990298150239273008394641448578203619233295291230500890190379931329456181963841680480840142431077320871929390521419554839151226460596637662365387423732770190112545251507674783817732679601980924594051085759714745242272875914564082542995597978132591560251997286184471111469788318681403870359713705307676929378181977883251307390831353380682781407219217137014660050733361124035235057055807603590502458493013865873116979543088231660235182493813708928000711174139847787444580547835162802184893471521996518541117085415767356395906564256532004242864197788174883928459341813010973883016785629737639165823488456898618466722650508736685446715724688880586671360713467168293557382948632774843040480050583382349974949741136052732564267700701417826465279385819868681944233696677792313205891582020370241989990796864679003814552519046470168937582521523517499385301941209256906364979651854877990359499390449006152564027633980466363500189302165590828936140091990476542233392606045710972179200121570493266780239950479424828706379337923114359869 87629001666820271583179530882902266542681729585593610963555113773357713786602736576111154673989459290655080026966707703520253181211016556224741913224221845863399238659262867442613983186850692152038558873885013505821008844589349048437851023582971705567776065020561172730978811496972926521329214527424883222806591076600551616374749801285996050788239308013535708417208678994843720097304093840369733144883803565067661245756830945089105935387384647166478765613675158735943943486502495808635960247333146747724149298354594121225597087577773348015461772119225505208339300858719190392471665017830251665428969088614147943466004221453547023387402165390223287728509187085624896646633676503532905328347582045953293872433375278488213262337263393294128998946224457583263144059300638930959940744009902101504885452830386550268490047268599957118526129513532465306790182756386715887784402446040788094743558747108462621911663057589775081181965407182835723186035093054228459235810832307455877997628187542909840290649516864923531752049472355861144063709708998970848862392862612766699127857624914189653457783166394306125070570053135107076933110715120540490985178159054864442556473767805138045972364888408023645564394176313931978297596615538180738520344376759648742951685815938688428152429637025154008991026894939434567736684412051675476060801414463287050092126783750328509701685184858057433562395412943571661370905001281252413205623085895099082176906911314065239200559468454425165056936448082479474969035905046612690138652840954473549095456234342258535656854494420522446471324778737411572932661830240274497686875175052064540181074580611986988089165592542370 700389944576336590462269773537134650451256109590847156098566349755111315030117533516798841337316512325510220357890544490058085641051619557557693184574911573285934525293440347795243305375774542623516659560088248317419693152830411277893557447009076523002712407146463543874663321130801676738911451529495127586414226876462724234859551516673766660256093886631521144400724219004319695810088169829320043266759624740176089091442584898206183582088388962551371543380968765480573303937353055098504913315273540823790087370127405692514629667640742726857219340995701755636778316192572000691008067905611170925171894727673269972436884316633424747863855064456191116745687130578096797930845759032200530492288207358456201418048396847542813521920160644794258134758514380344965080531981571960974615186348507269162503676248622819751918751756771611362851742934442226688413654935384411488065286357305376979285332146733399787134860286070740732526640575757453986001147874452929250436571505441173203504115983148960063201755759626049126208067647942639127035975535611647748353683027325994086627807397649801767109325752910700192263752568438582653899995291555937061442173895156616724726669465372091497701483143743287071592265813347452050401218148207182725955579980733827596013165789828306756703538911677168447171545140032133911793704244180172980518570465113908971436838642457892238723797399119223592191025547171401749692687118172790048258908492454989920672490551162468149596878240306908891913940557087017098883336890093808712926238623538261825623269491912019404416270961942881568956398976228865554426059657052984524659603940056666002459918426025936533130151288597540 5597990530899661498862559618148921781319996286511308462544538579311970714386897503115296688294873393897598936500981937524342917535443088355264095355740406643844645054252740836230626979764713469888859013209127934279175185290090870229432249454750678348173334962941981720645827048841704463976395908518219384971608745616662496941087253415019796816189950367143803606494278951441433135965552360237277464492145590536540133749954980798903224343193518508487050985211428812549015424299334569322420201331770152527579467050427050465851596635532494994198950261663731115842499559524994784331391730878424517558458542756461888371784040691585662206044489267367661056414511381326369666158959666806167840105883711986159609840412259988584879857092325700004925655437304931393146400254899116286830825179027883722022566423678768388040441378276103959426152583379937243399556888730385216657252477828843576241799925750320793083782212518330801859460796819065713103336431697630329374596931834306274858067087869190196738847738928915623868191365738769517005280943560013961540842182827484657663598398214874368066572106315071683744433701320216249361936251579310125913800480141402917943057292985789256539920272017054894939829046836874969330759619003848995679191581073482274082497296829278888993461267122681505679946322696201809360649471672636097777332885501656828263859234761071545736232428266909761258241116378361586331964256382599045624501791347123674273307460162824752803950110179221113808888552086088968562431466850080478079067301501381465937523437437065695825409971133058106390742641037753241852989137130632227673432688293773300342332681617725677000234098728587388 44742952115157074489887485354096097575116661314781340085091820141103620007073778495786797660367705517639407305033382116557905378428359645326603719418617414242469707643897485476329381405326279583941094203307106209957471819223030290714057044125271689726685731046497422123158898461218203843620047060477552591569273710862240776872371233742037216559314584757647634416307737088372916029665918585878172970010102725469827496976865542332818280926784957542767155386539105063133223536459990931645337067140239106469236502835810731718997984606076876750608070082795700233543502803509585647534501139833164165583838417184847293292142606314956257940825297021325405348613118253865623013630631691725346713656761102781554190397917477162496461871263133895349460806694321227342649326163169927905263077279301417605334859632356346163673733955789865551724944243402944192995426635747912288167526545771683919255954856808012044635617118235562069884417596856961952015392465042388385235587441423312034681310844449176308068864370102824641360035752458519243842651073415703566111197471769217284418843785932999310659278666246826478179678490321409593567548097641916948722840063262251644562094125874082239481223552954087098688500280064141075996324453905798874681026523530925150415374915393809885196724856006561770813224656288422233230984808628740291342976873929826107717640996643237729340626235388919855079004141780754251547246878536384251205702964009743529144635947349311769374714727835596625406696675339201520812875873942311944194033795000916191855350780951155408856871258250793084428582866714894810580106539239588164403959281971325881999725360958080865372535677742903009 357616319487080979113666488498762214727382124128559809088800019571096148410664720528669862361546827590343743421415257000925097643867258945652541757500806266683459959340795552774772078573302213710532200588956253145013878259221125868783787687870044379981020723645799064688762020398903302140282455147840894281440839581103155703145433435296822345586500811818069345645901196108340479880326063221162353382228728204525704840285464674805112443487798923906327006113783718477473074764777281758583523615185626988797592795483721622709371594700126774059514902843626075671743620977438574486023319464439617215319672469421146442207076984867929247928478095342322235987593423428163739976044362877407452245975940414803503875436626032890932521147487173685105930934480906230535443800165505267410795496269805765619337090784170589403284881967837392148861979748236302497787825605872369180436902814293062181731003222131528911368096051459980226910688059392835458774320694365607659769914789230863343192750423280740638237955311927886524706669862643087748608409167433569737546377007022848088179810000146256346405047740525346288125201576534786446685016686535067225337712636706702036658812149382101396331986046891825337808636797580119652335969724756429473214354524956989872053733015105625992871753117226665822713617620973328457219363785959185861468966326758778232883424962865460637258508755500766014770000755526002686018297724244108363289030132065477609487883928961078078428497658410399223458935446483793585590482946034588509989970326875223663458037309863455215101999664455166823100688869550506248039631526071652015336485204275013946387973967505339046836625190747763548 2858316005683909902619762144255496646544880980714979387105964001959075435216778920055969578204884036286335840632051290370130262981568638803481763647214388885654364959612140938725179474944465058292509489160724815614215069468247852930905739220065234326028085231567997623448523066488467666819116660756907180775032809765751602756191163639999007192173320158088096734379714409231459758105045337341642923564901036492412778221232338843432994194346273535763652167584949198392859563549625198917618050167193710833716614620365164154767244313462864961162322927750826680112038779493913641000643274209869779979607924631555953417671354921541703740278296678911371270685336626842638560417274359745067090418408073559752152799256552083818606281844777477017951059519472487876254198721324177328388783110566377033833294427944738128609930027151119383629386738550732662186418933798671492071916139675415336885344766982379824985945624918348045989416916966766811283039922952720371254641214487943582745728951813612457235518269975764672605524995830816185671929671968039656444226580858864279294295353842711110563698851074903928521948329754578062228972172382534623938797635763929828749775977215098116274220284582646113721067051193982963855258769536310414538284717508775669178508873347058291177014593157945756150937685984248098452496328513469262216871926762682436359326259369066546154630145302042939674592584463527622094649963739296530300652385844176383451435078231004271811017096560828545249820827287620131883067978647617606451853020612242165681921141474929986338819493196297193877319196156638012582150312458961077187718173917539335630330649878100342167797466094854027111 22845642216280628572299330681553981112360802388441428248322786464663983846013163346536712095904100908012080981492961795309031977630654484119876163919392155429642319369379156642352269040190435667862579036198591197154153007019947054937951848183191544094015420819144414288506858892783780675026965298134816801553702598203032061835647168970613024073688300848182026653170840275729599724352398225220080888042611200465754619756169918567880565768350623389930099415632798795197587060537477903078151772102117555417288379085337222253213432418471265584949082056202467658983069225746676954908781631062387081744064479734397224873588400212651290869337524140888109835022291338172854738323361709141863876808427696294105463246382021163073162890599892493845161762009410379820107851613462600615854667952093212986086084751151523591624701992341159874247816279863790744852642752613619366852338251522157873372022087185961869622084277964759200858401118570377764819048932837439083047155900276214601912217600977967502398444369756243946307949912102735851001864783058887246593175697895997219017690480621908547015947702488734059541195394135513111702942751579787316854011964475691101800156304459338053363542535307928985093616225197649091033155697306337233549864810112347997762569331719889486973860725794671075837460937946416909715013203286096854958642903170788023286055687467719928450952866462626593998498630607391719534576054129248695220766859258949672689513303989542206330601622445644329396148869405891480606445419979449978005850092537176516375466833788388578950178975036590310661507161303290003413692717870473914231677579214036649642602533575936249784943074547491380740 182598295185476717603262335950753218943383953464804140041816313963966647875821370625371608001777513326058385439617979343434947814761371397614418170606699549483869995674792541489824519152044328230576692514844248042839752364526985313982238429782776048229910561606377266245228870034677999701202869009695470957428294583046848493279133492639957247336643165353115794908579562724790009096914544662287887769569732805037005324305684780444588550991106449908738634671952382367082613505354765292647276854297611908451999306740072179426126093215888313450698276561713187844763925639451610866345185052351181183699110434966835660828877561182979586060098721597611594148324247141297369910989423776866248636288529268870944947981940998844000449176105446705460803614548614413169089488942260570730842346435688770962730189259385007132005811115263440499182639521636979957506113169857459573540615731591990551198974404196070523746137565587319176780361366986945120132147026247469476832645909655996558161482681479150343448893516800428456292099438146155702657726239266247372293639585353740898855971026216525612385870133491591279579429946702618540847313132044968005672549610383943161459015442323024047415079243832502901895778882560156111025655366488835748373939976051087757699109297224939980543679839113328675618117345241022769005016791476151308918159165624545360703430591405162525325494960323314797118140506538868267652077537688732598736083917028474759008606257513576821516041055297969134702939472640318862559392241725180739303807390925366593684633760271607901966627986890420914234695972068831649371541932105389041075159878707198686966643868210071188431896550630472294972 1459453569915102413573736576889676126030960348682109721538730559297289747688882649255088286172124594907564638035485918411802030479817404972502069062021314620291143946251799029222093691364375238437353956420370961796583392650674876410339712476356871088723701641453189825984456594815172490906557369835454676896855483109531972401539939558461770077550281772661118013449701127858750214019363612176324895070006403306274862404555842995725662938946042550932658889563379233153218003087797358309748082670124009792127937989094489773030397082062215215935689340977856553588045311422193184314745379887208635725415848330452034846404750559721671743604035988652244532557404742250156529121918828846837976043128068220682233701727342183629548943664525863567187181504857759963310028207879587204922081279409018986924843244575444269752389887803763696959216986647981416568035649595729490713010133815577018788209430151774518569043640993954694192112698384346190836826755838116263346322857263459368391686896154427381086004216650581458364165252830451779328616054679321981179127030195262392734745954318238455721653240489756724915768705360235981685989104028745064397133188195025285818081190614800540145251986947310401202877331003447880924485602680845624416497737111592381665927552783100291794444338727357554879682434944275965313375319800472599922614301803045425999900718744480814699690445033177857625267531633826389549836447238476319008164245649044541660182355336579433752005816092036027826853839910779944634185167911189908972951761565277774547297812301936206946040780130682443546852118511645699569220198279053467071871232653790226849007063112855762151004387302535814408354 11664981785801761035184555683414496919421598316362329825368906081157889859521795693918018329229487350126514379924706303182478268974559346115891081597510113525995139742118648064290924313272833759258269451632120671083936570918358523360276981650477654593856886099771500135799812520227096204338662743744876328030349446575341677744202859567831787101406805653435671838861102521072904692237467586856388746492342294725992434374565290446336074741581489740788999018262177505693276909250692395774858466891517033328919058841204072331358656812423557589430935804351749744103477811095677517676460734257640674544652854090213329928977918954974882942795333248747767661529670176613216727509376336385064756376877379943037328518916495844538948774537401690722302170997419804635876286196432197192346707001657848569871264006056415589012369156672806598098186517393777195420344699315310283158735213474288293703835991347080954347886202538649244335138627963986050115160567950670970401172516072798016138504019948457826079658410254425323990056748200749136888697758992200017857858009967059927926067396119036046202003013575788610043509778940478888417505624336014354052946388071089940963760830500145014277990888650561120090058041058411746547881391663241822735544748209637109024650314881115164705493102673075949886176319979915166287485832374697752608577518696765544834258711101780682640015859988787419715164772654622328444529721959663390128830324822227577403205626216653475984956287060479036919429170565107384551646936194579850926719703208393533131977072804687489429636351806690330547100994871691922525098471022670019664562753298257281306681941743658503320730852578194531319700 93234804320866790651367231472780582457838336193564698410943706866194799457787156831511207937073529886656804383348645705185002917187944252006809061383917490699663298925509601629291696925097602466791170847618717076916093457063701638158503928876691703314685330198939766995124197418146485956047782423300756825438331897303931626174707605044713917797310428315516290163155152666312395987846905273097508677888256050891378517094779576460267462934210981228936267234863423604994126872501807130273946909045606877485007471713034991690440835644717027390521008533800106400636688496970373287795885481846631219540790901900823379344685662036707830252870775311038315685652820467473340343479435843294948347991166209629213652750572842807351198912955198833134384928397886438055123833205862119662324923262521132965955331784113219398132641141714090423598466278211083911339121735643758764446039163845099934059385513937260403149085550423033971507608115538516880381090498597223507394077059039605055543788906667355840788325581673350835927290785567441582912255401316235949337656679650435958402553153405531300643159264486821878175112919832002845666366796006923281867906168049933633924837933245555083091798557129826527828206327223126319864973393128856344790021281043994427440327687307554137099076880760536247083182853483177175718513108860952921104440680900325652832725241990546952128070441625216428482611098351749819715699200222373038514370239102506991143494848786960619491395377729918476600359908757410226174161016378835501686521138357967453244932788350867472863710597734529254101947491191684979537074238247922623079326147511027502367448693751855050029476091213149539429232 745199026631373545705189841330284118992901109870575075649863648136366628269020830379420427930266073836551777160047888703739643304158851302031192504306706111477173560274672025994910029868531232472558722019331084622386261363963629535637982987910663547259291048660320644506539665864524737094747826666203397152572685662033499431909074397500671487956113585920895119026226650580766794381114423222568745908584375049521742494529521110390413747938294117695403477841161797926615414642622169403830358295832233431749986578414830058547059505022705599706623648977218643510604506396681475527063609983707666632826878918379288550542661839571225753981968254133485239491448226809595936949627944284214034189318278649614453562456809786476563104457662663987461596137050519120216331643877016922140993461192529757346413054698590283007178595330764806611738137540109890366862993075317457820675879695174358781208867985241559893530033984765680383627461261649684074441401714754383642217056798946183205774867211566825608400651794641906238391704795286712075250557937310165477345474238222672436054237922453115664529229818442246649948431680868768542885540592301272441913385734619299470895867211394963900734608762780952630065569009569435095137039573546635875401005964531856215724808014571223577795813592124257849338748586482658327841689659716939875752597268958774626344662529770990294788721649571354645268012351280045714086570754196724644381788417522565436567147321784886657001610553394146683770431375218655991534168521375956077791446801512640992971407416780526531478410929991480787942209670907766634445719725919343141597128174780711855364156620653589426292860490777572971848738 5956164867981489738486197885866912505112153068209975548225961142457746028646489718081342475656495005589444927591715843408838308919893031673360956549382505519287967405877990419706611329676894483482855863110734873688484677648334227863916541439885513488283921329188331338543059829727377100962043062832292747025993942097098875584336434585680858619529152009298837817156755932441969665351431268034253402150188837543328531009916956191651074759804819463677172525795719642275666266644072106909726368458232741369854524144335951549109891320062097026628944041461945140388997986576879954990347796570385418114558229669731810260717246653239682613588629020527774209163529281510678924313598554935345894063280911167026901502536812665955696937263727524103017577359284675016630820755165703250387592912625287282411317837359355841944166527391275092775927954506839902299194643489636124639682100467526639232674108270983749927113516291343895395788053597283270805826955510533178617433604754559566704878990028332744425832823187924378903655824711554457461812907849961366769830049596392325325599454453969796978561346825774872637674224841639554291560488866503586369878498841959616915717901922049532762242469617350816859126873730760560515169944818739964348413635285839149541498955065449095026882423248097041754971355224675640461177023113418833722635827404912945076154311151561558679946806539842718935773354821717734653828544320067851263471782342983923470341481443235010218669364833450359561517377742714175950775289201329637139264270747924820304222470751177615778240989564197091641383653747887586975826467572507280514124421979661134499402991916779502521036051382206168520687222 47605963403775492184028597755138175773042464139435548619848858151625541798705797203953147077320253599043663636066383572295525620350997013732658358269953602711022366257783514708957130143720415585879532242433689021717613619533259152876701875619416689704073400974962574597353256011520904696867470951390333470864175805460543989542569739158806083799606519855951367574413530666034698231372955139000831061896508764536700908474078754955111855741405804116825084621162474097280231443243443988680133819676560088967320371576103627346499076757466131710842955766972736282549477260424030114184268028818665827414042089948049108798502546605156903577779595047474876365008930276371154821302663685887130449095505298231067859524283937149430218621179015785031738926204576934203086258575747909742944620575072436545713001111863353117820612163960075925612879791505152362049370367695916288781357492728725335698400585804505002662745266406943740807758807741005253521664763649492629372362505769255973599609886698459798906352871104717903343651177275801503681831271801847216921612604091001278476246469511881626879673960099136483849482731432054968006776265010464764791905996598656799185460027169092459730575531734896617967638400698584428666475863292858045224256662414353922871069860938893126827035519909532323383199862413963108921094595222225632520766828259704853706422182959545840499146978045172279503360811932402800045817998644869532785970343176880719573551975773046206536488362768334690515845643340500195673453495106739223842057326943846230930015264406818825488187747249782348017913326029372625374088232583072604385535416961101757435329018256378157503555809105877073386178761 380501367661291022081516756749131726679730523717270251610629457411865346546738136358579830354830421592400611842618917797532457607588955797978293687936019000222583405556593125862197593270532312505901514474094405290596334947682378171184113968559669686490257573410531900342013809223130415067442152174545401959549346274177292492753600604437562078545859261475021062561442182609418682273623632930020599614309961581716235728624828554759426166930852559955399133847260272846192146431641114371879666417451472976077142568746850522795410756004364853647886000191151339071707527559653006591112240544993469101485562688245200783925677096363656978130424866572202636788288310178777068746452253874863485880185576203504074400607718926537235790178379184476820188944822885124688711040743510381210799776690268599985650759609795343405593716442520721333499764857645100857832151509462708539617229829147319954573950801789662730890994608249209262479678214860626650520089060045036429646764705536816312969903941977633623184588319875226489244015596245136383834726734454616730347182489920245618931453963200274171035941347124375874911900314428391447341560508913411173863166314772521032711495522978923435792450807668891110202161925696012667413501755657768401403839212308318014941328535730052118872621763744777971777186121029416575528494462983191617402748900546235009921063520284412930404993009077853730415289317425742598530590224816641205827336053838810575088918816363567402984143286391263556067105425640743436182498080802178602386916167059125758920671059977977442064666714016064481449373892467967112178746882166251827790495860910250808214034076388543567749124769305552390405831152 3041244254676122202150008989681273862334794257638297213842778400189226909863359118427437801209986820541521040783735714471591406020189545260391062926451330085923634681238147096024981536119097588639015026096747808835486797133239265696965481804192234936244645512552118781953926446100037722085756991825556725760784209689017840983380068154868075726877995818976684808331906275461039229101939610559623401035834684701896386560362994957059322044812058073352417985791698005329884975198016311537126828088798465902825642649213223951018682929614175619955596068128023607310501008005316178437308689075017715810426656954496728135686489018016757865334186118492594929129380553189754126816285117149337541418742512137756363515583487700298679165341985060614717752349487758317257764799542406755125822734354236127627640823297609582540688569556047443587506725924936029335507397433054963399345626059024551541776961895719814197780718126540145505747528640213756536926479874119827318719740881861488077490718232682182177373954911606710475133784063357112451130236050984919965829571982892239532490108467180249560348065154865287309232419985636619529390323666655492778889165776463880695810098513841686484360442521634455420956446400581397022446784236634464586260044507300682240272124340235459412084394881504705564220319546939080924055418428599917348476923475607926254741838951576664851824608109724137173682511453812279183120259140397206971979854221428468311521458247631198868578325605532963540543515512908513221666847110134123399058674125845388045695355632868481126043524329066980900294891836386765795636603792404719412967311629697178604890423893043560859439705724346245150048210413 24307852719544582901344563333493811366431903772528163344786223539342587720289904735608298683666247252635736709419606941098284104647535185756597907086096679789220504362638320022491380354603393786125696341593563695879787226421015055046914184030729778909146287036041224967068853192864028619744355278676328764533337544519260073086140693467442264873052842347644596122905311568440305705880005043430190141180754006587064607153029176899226841079882359065929096560316797988985422588529089620763755861879855850071984205624431860203992182860382849639817128767851797447754137605805055544511547376503929283716096207999636668665545174305439445759514348273984567007744292113507689758062730008289400088564783338563391540656299935557017356043182958978380633959182510435620503331072006945888839671601688382689434842872152635463658876006415450641491164390596584101773418426193092688802250906371067128247452360809670680585028303674597934411280291534617948899476915806390887704937295233117397324756868725540964028398772727894668320257482612108337338965394005010682161126611209010541789131265663989547229124410758491871301060379501723822391450650153818448810488830218222744426408242940685863406546554171066590878038611083680094665001896001823808681771426137769405497530547994674390844355721483944377240212152932964946086152165763094729183493865829777358721824799197421409557150675663726679405141016647413500205736029878356959765825289983378514166915183206817508417646464874533000682582722856351033868497006610910606369414038866136134366116561661748450713122393827363825205550214431401959378960000255183522419374545060498440886880518134732946796200744548510959191173684684 194286268099566454077718629969893880660079342430249996335152005635247915223436439771536840560078002454651983139120948738761136288302532640314562076428970991365947173805240972368906782084231056442766067855069261538435198506845149430006451059691806102418950865924903544821689555437111248909567685887430668364689878621216426977249017059261368223025994746598417074598651501722988834816272584081343534268241582415696645744365395284543144627145686451762687212447234434920491045013814772103700717681459311122003969678128088310806215879761309023711376787760379805829639680088331031400832688563353752967108546397676871316055622580197949759030055885280268212351953740561017107265194079700107814270080122516580717304735489276310150668150861419727381631488093007559729519736548474587201062705503362433266834579036420974327486750497534239405124419062136528267929958043815352788938815425680600632071797504528173272306703121090926741200599476456572251656669538968356475963298398414341331772840953343721448964003834688699250260123967528970685290211198128156978987019703514906909547909134368542585966731886118977288641141320236197059930150532933658785318055328819312432826943101783942553633347283028823806674490242404554783918276295617742750318002251094402854509454180512425274564054084360186974086812460720989801878458961793816019525100720851897572601175850458158993406803733721041698437678673114798803487695538364500735605527086244685692618197984871766884884466978615568147610629164805394027024942145222309936766431074910974144705598049260436415009984192893779194987814868709330821156488287259879574604597064075450539635256775335085069477094817236163771500176694388 1552879766527513603066153709867419395299080772137842949739723630292210465880262096507452186322957570415887691874457376480620631258886208403226606226951343317964413242811142329470811217350961301119388961897399847146342743840727049640702146444627577604642598937709453977544152873729230653364783464211958214463592648904855064781136085385438860853817767529138243697557871391893721684449133306775162679511611011405657262751493987926149288061532291170918254364308373469942853341033263542724240395771755765118719258840566227910573627115283338851156274558755721515760825638954955265082724774439105028937096638160230667943962139820349023943718675245630508873118976288794926942817415115029945672080182742890351129264024268097657192815176438487081605834313683643003591714907667043978355465432738193053534567729031997816040219724156734501183882329434997733463367123987903428784609978918653917207321657391547456002746674544212657760830526463415436708719166253326811191479098862842307314578086460976597596571810311655681560358921521580412292019074153888579894616380457510052494909657159224934234656888567544277085659978733952058940897167000463486396309258753275746082694436754406672907845634649021989164392085281827617140291536818676379904642708571913993501972839447957532608663289818783843376103436934535977743015355300306464525751357346078878172922385014698787601133411237261224879644070489109280044271816266254634601929023654972699085149277502063804578963629902379643530000801271179095826812021751477250912031545005930416367546805250780760149817624931964763718309375011903899486574350781126665506898612773417348400129433115774777285059167445894562875915725119928 12411771481204221428506189141285825233524888307160917935367642233327130832004601111937166481630080934309478981052755907628301565533730631574738219383231265185472862223393527669029793409137599201224784678536627151621486440713741933367916687026122973200851328745082290761825535483784403631243702200633220444487202503142529516941037495705988023536832843272713715319628824128709617269270560265338708220035137967967227718256428196738201400567732713355253389289200979253497748044338307511721503715707540695698984256670822525106123177387348729819920203626944207578261318122170474316437916837924390684302186413926948379078604860551418026188087613015387178787847079462899814887511714223998725129013366157395729102191617317115299283987005097326957288616000112143847505048270817244542571136230713474819520247779193688534948415195521655397802524182671231383224175609989200627503683183004283364190328131357612605009562140499358530290062968670637352635986619990463233956215423195865399937253961087299125550872316017818431951816142315973615063447139701576744890359260790066495494627076688432204230783607505818404117732533781919140560482058293455231056467590560845186241675844784800458141585005219381105845180924189408175754219944142051043041324150190757140660784985659573558968738827952062277115345186782678105355385752618747515398140549329442567508200521872416580850891507489369139878422072751860935195479135410246877112662680796406039952399417610148794849036816063210937586990723194810330202724937416343763446012529347009766984620081473447020952412705209728309487913755802881271095405180446296633976553462035141762838754736547381987373989447001496071170990452696510 99204169381292453638069821325012779382989842927568727080082710712880776152742743759079144248790074249342231699810795349044612453987923640677856838512895543441555513824763703112689284922635281104103533232338448763910357796923147888364532020326788552626976857290375317170774656481010044168254717554655627897873038497183513000909006565719944474261894470853030041023909025283773958154490344039936399068442834732094428678224497904978506223396812726456915651845471996842357502529114972087158054695653983295046437350710767472045441662071389054843406353322543668319203671963621210078557521148419745790259422288553859340489144715521994314677969907827260367486340885487586365240327931742187352202201468113618788734343324391183603399832476897661551711214254609295402733687082601090568573724871000465789730093809779135409154396391422174620380564758105057225906191437908023709740821886022358643200782698369285059128438024325738963041346027071058091477956348270987584392995051985238827793131207025138851469052078556233819200310767922933131816823805019157825021747862033058777472598664829143016507507967188346873327048315998382134045344907228862028302957541618531537205297553545594122736537749194826195157261800678114219650830344886536644477291034140038243397944410009795664245007704840959855306397767802014569471168063410933507932542318465176816885368114751340631846147090085523030967938265737775534487502620286783193607895635184132275629994346735327007393223266663947443113600289551003264525075927883631926371728862670018153397219678121558424462935341918933752498438727144491992613729188248160241033187692814027380870615350826197981195182264088279696796983443466008 792914379136765596287400402733128903159575737561316958011322273804935601333479302348864373838803183457813223441731739488570509750534804509061423846703420083410655554845979529751028889733056713229059094001825682931364776166465602827020900294626419093920562901712002393591884903145676540445681288782686276010072300856078180193789132461086950984573493211667314780743624840922707222227148705186388261284175856621547290898481199947787193299651295847280864593003084035609044871218251862749284985836261902940584985944316799455211514946212445776788142597531229139949389243487459513273630332759932095667696555531994113724926953655379520841070719143365953563274779589396098953836329776978154387016455124918856918291123189530997483052553706627113271403599420629057227186714134179536699457604324830691990357275250194981866478544376198067196626383944101690893557342606495238584552302117926905029967310071261568538784080133984726885937085174321007050366417056971406916130546517384343489687982046451980221196821440881603186202937253837759839407199033254408577752996718334748858308823315868152809250702909498566831441554409687914091572944624269756207101012809596592996197386399388353808599546759810620894431053786307843987349316017295300923528294208932107247012012738821170999643953723768456827662889983992411111683462937478760403800899927803495083362352618324341563770092588240113964909135472792057723362853963642800870599804939194464114652993866960636917585632225296819490126925132547640177022673180923897787411076301213692126758869951898128324160845717151867350468515635858010912661325982378518971267983470859402577025082812291599345198325075187334800855647587749102 6337571559812051523252140882453765825742340554005018058758812334256584561456851608427501432885579117710273039054902063363750503703051197827496976375085060719769031780776319499619821588910411189247456592531375124339879805048746359822543140462637906626445253734481532549336543290058240710495043657162588561368863841389958877098815213716393267184883720826706065449673928213686801796439465387029027067557583406405546703173442234301446253482272500669060687760898792075394871046729426342682368304180291746208849372515007744979890075613098118079615133559534167855812708510627482883703854789470018949582527839996026628433653565684224903608524172050840761106449706617605163107461934127050753762083312748034996027021121616093628524400877023612407300017637863917734306763344065697225392061531747797562541006426145781585580148253208729933877486695026898274590119023503604696985730841389936552664663504687334428333951008824172983181334040115331568997810284328920022639688072958588677626080308107928118897947988461226993016810399631216618984368482413885704261314681635142951149943378156800865716260283581983568319402123060537360372400721233740211026375361421654020090658432663085135745601863397787019698045779667082393693052609188771620543948407168447291945468904847555427596097176092502564836475063826489902583385685602679835080505159375413228174889301233656539069960278908138441515656922792741282787939966312449225711172117233568196775087450790828653637065134253892887439904603588046112567938494305725144244608946215475427747658873802445578833674095492166785243885584345560636423439341560932705370547711784597255577785436568140481762034631662419043003574085005136528 50654691231679511086763187639861346268513762858533977169834537073661863896211510764944813123585908904602241054131865760104526454063151185096644748002028569482888030632039648763716972949798485020512817190207318123198763357115052560092701520277173470435738817958472781207099481506913698776548822685004337276434114044377437460817669438052737499318489124656855538373905624213681323588939831130684077255190412961354327540522591124575412704582784612931254329380674805231414366711702897645628628751856308618731831425309753659616038430688188734365374949762757413245000869997256276660925017522258867626377127113826494881271882795883303803085191814985665996187647894071557261828098895401716558926471197077309822159798964994931590385447018613302427424320266677750748527696187226269460945345520654479465607331150378932779655760193869723918258480633469776649131717855655191515237154652322332076134643835179537952270962382669802040771864482154153346304440785156539949964694056857315182548925384976819809292644435465694929166399149864693414489590730860200237392583224731592427626759512982334252001480922258139890340125802490016491401080778337910223233076064845680297471413796762872930369588506573032570348094747240190875542680679114561339568740895040642125404103343374900995176225874962610473513004958485138529493413075095855997065358103275684936165057249441008285148814459420789980818091845867274378489534771227384932660349010155172552133616541119882887833348654352461619944467124177728336085833598216174790126672551791090828421945183546027771185774862610651499757898253616958309873646158412444472951715838187690667091166171585301260120068615916886243928967392687131649 404871011134929495120189418806183043128757021943281809934048385271465580863495652342533872216301673100760064599566964142744542081076584824795557244891772444463784058810775203705072899947254116330583990496026524485573777464772437741212816116116705401711108321064511648369099767499929291392702731147305867593982929213747927440090366607039026032994458040378429546151496642735745430055678561598912152715315030226488747136698184760066609082040110872025349550175798031922430676019439804558728817718690517082778659764819875226499738208540196656649902304738823777391228969457898766215276050144801794254107139954381866684530304487451544234633839307929540562966679409442602594636640491128104081685855661140612901983779491324103838511666751585700218419250596638191924383727517183817306229333970583093970457600831749044355034439265098180737646908162834872848900375967529060000089293193725945842384963354742434158739280439745794155372937768223872482209968390139085967178320183997368783908514363766113549938684894743699995317256194487721897713986341053038697298170757911948459360563687957165462885600356085084620821991828237841556357885560863318108592052118862683296815992966555667369014100822180461689251337819486486358483390586994297809190383909083663961624975821740748896572181885496164345925253941141688486551932890833851844933252428316610892518571264412121699544438391825186702605924453965517610169345026813981584090842597096150078054764814535198131337896454865311638226020271298694231514468491464979283703862936920000567478250344236200673609700714991307596960842580769542480969378306227199625775237255968937262417638223960050086756608749770559785377646588196559738 3236040180925162027708417320005004706540930047193486403237181417125272011721865015086027416850840549218775548476041576624872796832905711110302473310888534358540686679627762380708871195706838611865623896954400997030098100423941594741315231773433069046906596951685427290310498296989427657788137293473858587409209630184130453585938142314256974657723102268291682039577459733140948456953833634385650916658746894752265609786290390154653420969043355805290664599934631800353320160011464104008301138000536605856270039450419658647913419225024749356562350318630684335383069576553022515473398352403211714423562615464573198604788502068509917481881844869356165221729195054988125491480950338428727575543311732600246627871069096629454102124438648515103770328501590288848907136818903351371581138768082306986703526739207041429314705856014256238239387509933198471337828051837180125889265045056955208485258927781756040337243236503858180217825920685145912710927060212465599212803397337262361857460235946485392551431243680244279581531774884462618814398765990207771942757665456102641882302385672087750184606976048464060556058595120775597142814141213761147828518664762974035606634797047337857175517209904788907378128451197410015550120757897401052083971119763601229342571613193903554646662057506892281965222313204120139712736378630720813763896534808343469314528961550472565586647526407874118179305763173390850437160994519519368302124320931743155456075042961905116061802267147527377126232771508273567438087533316312185472326689904309606124261716135518558197067319361087072716316613123324825760586942347012512065532704135804689184216995331977885185992210134462721168970339784501056872 25864932047452893257316204733478221701357712096727428504836031205303481327273413730660359451597976726396064828600945150156953268429914252207359357222855172753490403687350200268672937302222696130508755234713478304571728746644680956210831256299604070293348158745395333805409111485357796224349674643761848578786761185291458066354836280111700016547598812543192209274307904140300623002748790988552364570625233641773879271937658424184209106946334251144137717950561230923216550968156407212076800568014149260555372660520646404603464205887806106810351499068138959152861148246373052624080946228687537863496503989585882314531561401617256467219669692383490546152450169074267644928166655829377203853014985849314701005550223226587273476240138367592345645061056504375675101093229925518456003268628557963569431554879612792333339537557951555391677962427124133453900352118311648978376682597926163989560931651295885649947501902142398849663757609090368709069387249247326224852142844025025972546158213584086975737396278690998008717891903641573686947330280878403425265234815107736633981343869237098620099034726638871121628010460943256632106482374421109590188835841822287642942375092346643632758515286254846143284103768930313588851218766824472338857920553262605744925018230413027886535369680189040404163739494381107821493915436326785406837122301151718077194669621408811837789256385686520288147519584322038947372479944812312675638160142204935618096895327493846093264232669013206090794288393060396342965633703587008505663036892314523592251113181416384794377867086267101717480223746937009403480324358764020195726838169736935610206672825643044450688030384038803844822626451199659213854 206732611563971759273654258222378978312892803323151413736032098792680115393198162162062504002003358855700797299595394899674382831693044351933044519763161165961995095079282501330565769173119169442754181566578122039005610307750325241103692301329227883708576272247793433452536141629701910728814798380182059329363066675635544518748069339767111150075869163673822292208307710333219356991372049198429939550958855543575951824060497303056002222491803637317806090053013628832095097915193512347547460061627806727754645567936270966723398993128637022737162861498200548012402190624619845009362136214580083261024712095859865653657273695492617115867668422949109665964256169590229843297875915454555044785085709351157912229620708876946347425833713395399821781614302920768970048180401415727636708223697969999931115986118883490923994999551009973191336804383978810414726823596120310177538408744479628256022512899499154864057433556812008840216779676654698199305580096348475903486177291266331654743865403375307654703251087033700730063024691116342502194005903546468181043244193224278558940514182101553455807330996268799388330506437209655107213517679361179232124381432065584819440324915592434547475398686766530715192036164234713420606754951450744839804221502927431011695957744209025927375218877608934895560430546405256482734548183455088913526651532876791760447936086817419614636796943976418054145851298201215102129009969370789099142731137847133509710497811734121730767901294317256710241167600278889378564734211747248927279395911439191458571512376532181515945134834301568913882637664993057014080837760226714541393372941095055923179134387401670465706620419142931579734268543283783408907 1652368292762132904406972436870846376332323508453764150196123352208147916702902506849991708895539598445618951251786059607752718888465241984463079170740989228516791827146585936247263488264653666560069927700287412317068987368320654328201322164584164313392321279149540376035519321036092352137962255842641758055188518931636999903872569584613818820866126960508858669933127328520424712933209250916735557747865305249057099126918177955570683090199611459071373262660206683528398042095623441611974270886520061869873616283820961648475059930741844318164983471905316580600677314418324562253297278614279483658118276655437387613169500788655892299113413889259662376919914445310270928435157446867120018912036845375754573179149618340869755745410565459711065649270400497026082984595662597072369160633174732683678210802640056201378813601072518966685318288487216859617760768841586261535497359400039412826218535080463931570108949920747752163595445852899432974907544792458040913431065056712347706334089850367872880656077069278661948096972035703646200925619369652660703744036663320019021593009309611679272073958317197165703591418868088748143741553836330424691616959094592446416170134180973294535117873010231898426124969298782176100904271348680085595260584585867772430061815410129214983126182371449373080094146144679907342614677428967700645034034724401651264874306105617957256272055209911635800880391116906808674160349121907289398788175713211816637482763642358834675782495995199041902607832355713863206083375712765798052423781545604861604676055731692557525000604211199287274728748903548270322808326994873837520705471948267744747442122693369022320443532860630308641197366105587038446962 13207022780023987871649286813278568329672408876062379310958367003595361693231148308215838971163260634738543757113169231285156658459024670503721772243589787015745512612886712269578648205660286403679460323196852401817279026866101510295541098407738067310036720735124693993611383690239132321054992397026664362088198759238616366055017967485886380136954146886387513707103892709626845946620700516520972947456437224671483430700718412182940277611239156040836368763144350429760400738459469418729570373717682273802730753395954645528474389807013504551954929462806665226883312180235813831085669044403351242003363424922537916881460165335721161669306330620862910923425468870052330890317429102147831842649302739279207196639523628947809134904331886712793218344078190959617821016945024783867603471698694848801141964295156964260410531596330431026125178692517985341972171034685449549117335465998391030618419793923173886518536280077126263469456838444228104402430017326659672270014716475496300450603023410922655385641856737059072212667990710036701035195103995094113649589351381385633273676996315625830924297441223481976382800265479116489922286584796989304875782677518819657739297023282255439076155147718951344432186077251664009983628625400502381596673997908096193689602905319418443610676880208898327901556043750772072036271307902379256132507020842961973487024733699014989447508779657976791690385515954986847010114224508176518607801495556082374079585665439160436195781411553440197128970815576617043694233837682147959123358302359616718815001774556925224769979016658415184385215870318477436120912635991300352530113182557179034460095992249418199064507630995310598073146737670844706881743 105560931357448188928347656485025680552298902342028981242537402321248036677641254404704388028670336259664292697949072431696823231372678238730184803068597277303530590591035174268455611117495094419556853693827642344069469881520772618309991985022439016746545486710236385727097487910309927315101755419097635972741371975468835942726035378560331660768543170931114811448713413287656971264397888371833700137811515193842448487751555791098417399856214746681343955708747802963331514725957257498958625858360064171349876147329580642971376538062937759834372438852446078236267795332553195738636097706556255387925602681584653471438330884734169567997057332859227560760554429219688074610311681615454354428620624872437255766091309994110365596219342112068211799722557906789282031241620759619432488654073360627806401031163771531377061331912502308366212779590129223840167137034276384642066343904680013238772653547617055100366824185743905761555924388836668125407158615831535228957156557165240174422101806611822052879019202203965339330255027073923687049395890299035731716293500082644044630560635897745577290801119988383355076680846354504603134553223323040294260902883837342716820511168472091933262826062700288796202164207237703739163399516715228822825173550290464107347828493938779621501902453123416987009215192633972523421845892948417869355659428161046585759085790722942777724743521628020441098655192729572934291045761586353951233127819132100219231039762157891980883271282992013202041116504409075519600052066826685166625989888211050281408188064524097355202254708677531362576445773323734680790356743060101241640640940107055391450272494311221211767747869789012728059938629113525469712658 843726542525473587516465361550282946857454129858512730462440757364157124713733630348294243319439672638006329706265399418077657741285762983647376066209142154296733266464052688431014184376595744105450000186244043468497875489595345563400357754329862989271079177664753252230460895081868429816834031592639314158525286732988981689919914458411476531630934343524725270201403231416902036007576858610809682426889016675933691632676874829751135515174174837326155594907357680754624234974937921579424674607208300380812838319885411778427322506227205267945151958084576044673821009699540158351404039366500355242037689610122512916512368033693921553764967160788168958944075527140911280852971624471900342986584921761289131344140083750695471013693611131947520772033145638951122092739226320473974895598759045126792586202045581484105623164204973922849129375217389372577335575210229123716950044753830591298651958937442123059771730746942247485128565530508825829881196387620238255293110954100288367861816639292289305141447797178296468667441001139944511139923753081830620243206302390819876540310198387008316399653100063966457674464599359932830132113375960228030198008729444653226830773800022009174310413174849694177342310998300444423339822005406761961267530577506510032750965230112315239134296735481712130752433658010273094338493097687302877599741057481800094342808203356924643656941926732388457354745279242929483868856767848252730801864329167594290460676560364383096748780144295422853968804890063419968751715415293204712628489980382307392064347699891005206731667568739401587009960705862774573859508825617686475093915854839239367749075496190760249929558113633867653735594224178423172037724 6743733845934529875229901561227176736696215957315561029106430617116521022160158980926163003682644180400367708563709764925960816066219037414725373791694843238515023455713928324515835656226449002700529907973758297886578461908074651548435930192027814481529899233186086560887269269671975638806171410119208236619964130513831436319519664686415315286828853558077550731512561207211103473534065653314457560952354708917943723293438754299865593707845091026678492315038422165881751011359653437515417383592719857371425911068679977492178782210876920264934596959236508445814319285292976425028571794534079388613983183753959477282410112159442530718518849903592660150787363678654523066038837490916422774643579699781275458025429445794018214988587908594235841947906205701630605705990025890975357192166951810001556067339080515827622005051918307876487103655250264615596063723574181779401537865140594143007021203286703555691406907252325792534599569363808736685828738877250275438541514284080174400868541306627020004744433166599802560083475085761249352131317503765035581684697723431196088583494045009163118069435158883505270156457471959586159488618639283494477483672797275282297298311243304411608857708468523710035100757254779199481904542787815357211355381312388017840383383614014203461609334057933590078679615108074832291846001247465729652748235729624157272393731217321260255042398431467026656652345813062115182012147684576418917434396328339198468931326830911162421635191869023608222331551449459063182616071656470578136537214901914661403520156029607910697250055597019755886373400452305430639262483064721223241994003239394697419156211543113782622396585869930956173564550271072150159987324 53901312853550046893770690149836949417025399576447234384022349222812725568960549156088909030707110557642448899091979282682258369716309464628232835508530762531140622633703065570823944199757699521086765909624176734722674297111562996886242372682220830472375121724102065024581866622013981589097144379919718632599100287061797415960200633811690693863108341825251968129663115388549580662468893716425131256389613230740518085031043533827801194125775890882218515638284369369791953326716081397331567187847846139254017272150027155662062895416861071813392555304647367213666799312602750003220986633690824926946798058141972157227808082352497579898264945622448675423566978612641083861281086645054282405119810385613339876087014057955616783437480578411752264256717753152621058575652053510092371794627530407674953467923971315123697989822397287533389041383279477258051430559997166784993641326854746430904198123395355935536434387646553828097957272066946764827458287285406546689582422495180196585967654067056754355549995772145393893914670517345058492167888916585047970160316660150912779625383828410417429401762948901770331586381932571406001499798146693302368264148140168537181749786057708604950651952150516520707956546833753336329363358309394964228709503786804457412291890198644983821121783069218924052607416921390751060463999142591728190928961776149461016298225583828575198723595398664766244743554970093956443933421805080060005807965986529817987436099598449311084156783802121474165466091216974961077561626510987625727271093694428919887428274778941403697647114753820846912916961746193789129202397932914227351212283796493995739303176726570793103969517600015811560422395351760185894914887 430822598729606049536661535980660791943593471831853094295755781630047842965291137050175645373269435205270955668589387409082035063948201576878933679388921695537911211244879448325189201634887863598587208910202598413464046599218343120229803009654729353475215112336186548386779951753763791821786706499820797828466760485876895917543714034950754782716878065469010511943667142241830533886287138251727294076724719179695767675099879726710470929397415459877353262628748346951403580524286931217494659456447966314961642384089940279593984491016207568810319989416440754399270557658102764071079288024561588475003331363338468241468645969113420304552105765092854203605041996076305135516507356037624467891726360399070548331744483244963565255728715347927986773076977593145658762365712409001779895429578198625113157362917319617015494068008663610819155246426844934520084319479700567390659022787270109857864332829552797512809757903687014374145354438399726740782275500687688724817381583285419556449727848849292095433537292954661587775807247463151833187430253174316478848519630526360317931840000247018286741156486165166539743276076907835396865334309970457895261319801186169677075917068947418828114792409485295410441015257170238661222297883229209457472542013066554409859885850644317344546159052832969705843574778940626646714526321645473739275246962224055793331079201883730931171010767061009241307977181927537547589745423213606094387489036553636416128694630275907530868336657439615171328240933501550095246399186586141773866013098812375729558147619027097072404522020677370086598728697902403970897109450005086449926882720564071206738393007134210656690092153678255374258150680338694709219100252 3443482021896099564805630394289796031841149182359903210214347645936089887746963729760508069930249667988508357924388737951982242783358015326601255587417335742642236895214915746697784885602031413403620957302763842787451763959902115358984618018526587339523323317164207163060585329790833738342193519597343239022741803079854511723185792958519673876582365169640743144829631282906965134906320771757946273688992055843647900350301687501650977425560749102282529666444461367967873759146085540304560160930066434837559904653575846678470208688150821160511263113865416256576081475786024848012239584833268242295875773830848606851872332575121901477191984310496479768375238581598192529611033119785941547609807072516576714779436360633421527724822058845890779018352459488822001945529482346835788890616476395384513473459533998293194924017610585476262220062461628844459391131814752844007235593584591155411294682233236817210410566163362814252513352144655671892988400016458494551264809796690861916920535329830309747496852445186716356103847420946504376249304541587435398953082598227947542163096423328455117611343680330099335186986018384650555476783760312468098326471496004923805594748845859766013951977575261930041102931092322570696509839654039671149518054425597624999633214683270194931675008038637248112598572986534788682760615278062398216199841771904670455079910577529997058992893556070732778092411545665826439969066641858827916539118753665132857911849000390890037881486044793428623310855969270448053680338487401708932764262447563261255440405151238942358778782675700485700021749476528526760235257950663071300992086068740298788153494757860144451437648846501519587211818037728844094003254021 27523101679807351241570987859622019944287185432604731950128786728012504391054035338273450619636643521479191461453283900774805229699221888244300265026904617702455357929319972101943175527851273786184451103120781314060180370851897435424045569967143390330795799084186704533800107091373481208946334854721587189417944599693829027164896145934719649254876196152723415995209283636878930544641415855875867688870751765903885021534605931557652589212495625565353869563219358699552641657528153606057095084680646514540312058786549352065703680199866769936326746589207086625495576317468711926727914499421008111168612393577202932504242431838952292531771121561719591479623567306636303291037948249245759479502406813575948321040467660737703100809598980703059677353629550526855925227411581668230374277020107653114602491048362835746711414435947816233337928323718491918664789493820861977105770343247302760754208787326304356697820681352340528662139580781673763717261978349300180825953576294019790670430870627252012866225177159408341338208753194982084206957939732027747938006078884081840819825076803585706643983339351180765952215825639330149131030617634180796603742618339843402167442050684014498422209603134290980361220518175121367950953242077379749205351211934129162292946752678436788640092499419051587604392172414862493389368279744142916594971297337591228921377179437152975541392480851720509880338574939461522287620954796762544067981688529829684482605949309443190785083514206065814941387230206401943013688658871078818858765618157432034894745425581739454378877430207444537718698997889813260552097219221621627952536996547970527120545496016356868442154761982934265956926865293574441965656512908 219987062097246660778258676197040857922808372089270581199488544448971904225873565083169796442881296971444547927170957632662935106754610205882550759430772975607213923733609043221411553268115587311570473233072317019485610473818667148277579914225620093423289881007158670333575361776167170486110566832649109261183493919283458757689166836363013379907096642277171641587373881686020225626908171486831409146594758977385539478257177430112748152898475378121553294436827763558749503147149444913516436320600681076374761251428204724655800796859776974501702990439579924216737390970532266183238761920321746035887839873405740755175944948181454278014183370936945411845455099230253106334816714635816912016367836099248988497158764290691507931122372996297460509846752067391622295854868373992218612060098978257924264546361500403446895977619025498725544101073929375600855082066458609336733901369634572091029892993349240985418603885075239000864860944170705001142109317913205363937073916105072557729031696288089226345843249393021568574929993432404035945659702905752141233370353117805496255157572961843468117551279411212061156279277140012570782173824219027234530797706415402027991414037473417440926586600930634106962532672664573717699817021748430875263296761962834170521824408447609287138884053736398816034729312829724411236043724573958683168312217394135323522753198029222527654047764449410185497891322884332627222094570231637301252620906977405829052310256944217424743345727894276561743838944850049850968798623831963628811032834658493386035648897944835081424033594335845536339739841778369584640626623324490125594500064714670106509869350459165610917896102010556331711407513592233937902966967339 1758316758523952730771047862609521500343316288033726045419062685284089973435726319146175336082981466862858684950487278905244598536547006256442908439277750740926089874885754552832993864269598140021402729229650306643707741226415693792658353696266369502345908679561786711628396218562725853594199445206871837441479307888089247683306607330188457095440823063596531345701459003582785343237896279538746303158535627848102777131364351708541339543363810239032430381103704990303420062099703607341992071485498569778148858209036094304982553206060691910675160072101388757341378249148696598418988476554072733127213037781648456739493011499787417387002946346029841827775428741227816708383787837112762901586520252199414621651827075110942339476485693353634359875764294320453395244922873110870827828976639787756400086199915336674160195062576409507348751020263973562024775360968293896353544590876458414566186349116678080863946600911935214602446551587681503584415104003726815822905827541200227004570251539586732790040017601003698075448525097771111588769538362066633260801115437227583030809193390539752151333469646270926419438056231276202427504278236224038459495091012432505179370672755787797919576120587060298912353026038441815962515547261911773211063702170437178196752971414764918745630844968071584303251907868922458452026660367222439593688994162007252713448438465616315764126077205497722010258222000924388806108315763265061439565497594834925024117587900668646202713163996770256166786035899438447646018115927347485026414219351869771475353951961740887472986280161447573173197163288236105954518072731296823092256220677189168064493535728698027203567439951957004082369097844027346460068835657614 14053914306073219873499131661721057479244599747263256282438065231495109327627357318407047681363147605586556489577377124064959650536018365521886602616466388066317398148129940693370233854968419681682186650766580479575631978804570565256910679503273443962796748499336854598418264307090659984289370629428145435994197309137079386020991998797117620719093014297679410809036890418839227316429847024360410447055475906176232237132107889702843917620219464864112996647936746094879605250061733585186219388985711550611365018425561583887621743808053958769755812419776809255021155328429764232894457734329449983288759758303155327522212056550766847011896931401336719184567378702131099418393431373973184409179556767559314506318473060565193590245186427124771624145989633816531143035307050646698970356867711839944856181086203817543245631877945599216611037105786095142219288217921006221857079310184288072780776632046725345253033492337454115988875731070113779079781431834364924727370516380603737394802558790435266577691822026449250001291899553376400772643428345478491861306655941892331933377987202129339804630288347877606941693817978281190039305335446926504406180147595788480421429334142611288368434620270844979779430865191106247064672761531109674458418154425727392221821898360198492793043949243241984782558710304091040638792952681838947991864228951215127640167302003664764742047194277262996732263341152866386262105100215714523243515688113477346362726613438849564398371501242277828447995411114499740760785687943950569160624553320546937548399635705694491249073803560567537700809528107511485470632136905943406798472002108249661129683136271196408962328540553749866808052491276408391177554465919282 112330501216536581407284266612859370065791077764369251399064493853606572538000133413210833287940947110752266073973605321675897258777398393040667350409603139553254492449547433758119036412913069805931778083788444588075729243215327801758835890290371540787765976541499272535059403697944175020106090916272206009239350128827669770473928315096935661846366452499887009486442066693440996924753798943945409548805694513165436990750833165691999942762313663160512473163616810102407113497378509649696556081416952097015029918363863433214801727596070779442779997942244339080021554228563595606467973837652187833860811662037525190972278906301197626639388598424536840162630524791457046220701058926933665127467793429317000942592971548752858053954162379506485120356179159609852970008386216170564035353007679121765711846094303430350270295392195256316994479251180318516213149675334146425313879950763849569834761777894390566721940504311248161687018940663448632928148775508713525000759349033628845270544657484224570110440998626719347284636866893105229088441243137017518169047505975151744272021188292808838639699291980789947376047674825874599967894694378478146965962879201450544494169923184912845274131568260790629628117804078309808811560138692589867204333390102846943260180719976175672734692774132485576445335727895103479592009389458753080470993361523440461581170381223950320300250081915083155897035283800360133450157987206415824414981947624171693842212128181725233401875178648265723392136681555532210352868301068983754756098103134324469437999408728476173889222892573984890583451063971310171784668750384278170608282280928727396701823733819556241896328132586569720972735231280147019918606383891364 897838660509538605751778776134254945515370409959395555925585108680606704416468950826784628012839457559128713229829062596552622669774561718946540700248327943833138912893633689229363322128148604991551338226139055108108948431743771993793518820497496417259176021720370284305841809175275664045666399763308982670110002434923495664632793990861482918866825552408201361357507541460642599259380775494020386449616551662867141992325975026724309213159589879362757002580997944233037776325538084640010845916409578295997110272724302358701165826871096422505114957388475974395517528934016825507863849458271795793101381837524296384574379350561870165570200493730022470459210080043808592287378148326846344225571977204029719331089654736601488732836290085198100229561251467156261098470645232997296374757516862699804187310133898486964639301780073032503240406890723818034606297029909114956559663895012513661146943566459385517173308154943345651483066097911261123103402566100330402455649985473499084363986059393612522818174682277400954054079321994735708117145887905451990943111765988540670828373571449561016377880767277103792189379038373583825610704258264436427065529213340050784608596052435279096987189403797957812087789602663529621445201815930546542969211801707011197862224481800468757781490629831563146939761396236664622841095290151179692952804417481857744533527463771996140551479965371042801640249133538904544036190036314541053328202991046912153548119556191742409784269713614239913016263482877451851421627580901180288540620976414333684607721611909062940557830101458146681964588095869616459186480223828359208481192759706411202065348458302554079656587452641520419890377762201064287972984126966319 7176275725124904353849372817390203576426322568825824545514267488865890620023573364386413929029550205733162891494738319526396765763120995949024527222854393280566590761116144614678993416849799768193680833116956639271821375257896368358056867607877458618088946667342752558490044315561111700436752857729371787196351534818131252319343414422539858896974958632162835598004930391466042143330249257143820197491221919440705392765735339692698189957973526441521257389478557421593035049593663933433248353143728674890035712722962487172412850478095647712618690431070660856020638626202663047484046677193248745631123617500847489391997635152178151328147959641909730346315502439306026795946879178157968697843472767396877496742947793841230890091206144156158649431148394040595101451741740038650555079455887783025847193619216286663315920440485921971343315368563301865901956971598563451860897726814775142613850886091142563526071241549843259303075696976238078622731364408245294236411794268198452464408324551977412676823700831328591241822662884993914051742943823671652735974304758637339516147403834607617993678653800963769705802077185808983168591146148191996381404930951460071799968276046431117072485096817190038287312868469838464621199586791208254374809041485406026811775714640971802415943205194312263236088779388400132178403397198691305492579871005544308593279439105322087859795510047534136446323503747304398963321479659246333246825212159543889107314188766232883282681385558072791238265959197723869975840923368596613264017153018682670164787002974169897438588981952062435380373278895219044320212687549401823119086201118716636551301452553733956743067627196538073348375463510307873639815842658894196 57358811062490985911843523531603222595561900299782319924386890766606462655812184926958547136637176258337884220747393696490208357153173742511819422777700771931643149202254878172864312367683986286648142039610284574501057668298771301030051949540419534746989984786082491623744859360313656706140682489195532518781755092471357899444239069116575450799842437198561806993344904205306269334868929252458842935211521391272473645899349050616846871813815517196984865134802514166894759580245813003800359255919405568238658405932483917279747277492620144943126086127026664459652631897088061994297314095748997148825027424872985294886698468032472972187490615125641130548555396644671844416162438022084453306981589994616860758095024533417974631460206830711718333659971658915061808917793185364634606746293613504292136999476972629866662528957952150407144074213633556083243270053289335333806538785533955414045350231958274016998734097573814287754101528461588757987024011520853924639089799152067305937825477710710239331295213793841191457798956731117249950606659365991100795298456155020970077830515502407946113702534293793408473908033254834294690507926060538551151761728612670393469295975768168046687535722711812972834239095115136014563633060309619842345566618254637660463021755635183995235083973900217855798583460721792688494417963722943078096474276798305223172233209560832836093860847569592317975554986698682562291057037316444876780847776354542085969744607748336936083367564436293864079979610614667604612369771979029805077285110918521948755197598158925035910019320110291092885809012092274329223793554176100075998358934612109458758451894730620679789531378724290593994949086876591591907737246170529953 458459919295267485549872416107738371870763006122119142526208415804433713152347490373884155204079981840893161949044323223607504436125614029972103356756202673464232614202762115722853978389912683649879908764271481407084365495640437157628292855192829528196333688959736554624534070657834021230185198488598225643960563987108674236330401570713434178279565907541934723536155641266530717615176716614599057303402699630646242606134629325218947486257819449269567142571077652840078136615357274393635196215604524471931837424255987880075174339639364277511864500050052667553057701924595065366209383605738715777656278960513668524628631940298453018962911882790318782489762664640903274492139144923149567315138972932301070330979150713407319897912770760663431043887162394018681690696442893444593390051883913487806529071312102603478294901228402390438000664332206069769544682445058416573186786633280217918165858631289418115121997870244233784432512660203161493385627665208110823092254741472472632615347070610343955322032831545224307115057096301021780473907107894076171235920981650558794209528227827225000639999395187114831581440268487738599776272318241912641322155272619260774707504504033098821358112857322718239939425665180012971526208955973203095060655683539393680062031410637506155545972015151900588523156015691852801651553122042047379129510399618388404283223075150536709991825234675931188602959965788009144013176021987933315859613606918387581643395004018897122846249994958279939715797882800345027758524899880194690048197074902118421518629983469094788085242636996705316297572267178419487441949999854054139780930683060808951078139683302878776266302654752561008983305363978040720576829541824861524 3664399501084027778870825044309025275292855479377708256619744536243874102347866280955595665542079071390983953365161546157786423053625830948110615083764721013628265271395101192777072478631564900873316343219297676975589597655938983577588777033962099378463154852907950982401681575459937570217880509361430932117788454017197940782810910769269948050419352193289415721228048844867593306526477429127467073796041488421787449352784178737828698224971777122550911266664583133400739470267486836653045162692358610609025822158214729519255895923725187795861207692434768851560117028073005852314078565388097630441657655079414323981490142403658201639852103625161622625041778586016156754612852270006455925122140465937677193142154493459532293386451353670563208877587221315510143506860405394588775070952153367843158461121098676560138564493865404796865143423000605632408782862446715951136395853060656423530019919986379442211044831463520924173165977871546325498263298590389504805584343913727139282158581081974159561908628833375299536993620328312765408197326240560715376052055372993892339631414657501083346087192833032706575406749407287269701801115892778478462290845956413769590538781762882680116431960561800761173671933959487836748552841264192835967795008541995656171992970982935420008053858738830451319306273433082673130284877483841268252739897783138846861040930651715720012568574026758281347665203182464789282545208621417353763120344766200428624246358698874893107189911216608912557461817626678897784137104506818893875784596674537492155943528986235827833140362383464658369324981260093038513675395184728567984306272860515916208836961181011275548325140751323725317640428440720476217071242933379887786 29288994711361722129626379570504686457501295552139252961123552496820775513237125992400381618038606551716128511022298115888136755079676934200869077343732804270067101241091077674524576446762721021078991537029548820184488884541945898773134104770509675210771335436021734737643959298083721393332510317386319057701218142518846063522127128542694942766586296373683456470920216371624261265224122009344384284524193978644728942307235264135287553255815997970347499361326319065409340726449026305891535236596367878652101429146508695753320124968576470230509298276002794965368376640318458982675490874557648011969170666188896638046058046232146252021933043979543133405489644678247036079767706596020030149202056025381450097748402457662929086665116090787553948694621110481816798943911507088145610525961889573419570956681378160656572879689226471293608555093062385876143319464421599441982020747813644524294640115337744784556015517752113131159918879824829465194721544204341499480300259479795230325452727845934827387507428879521216694236734677111946439570252170122021127915748583872020305989965071215290504554609607244643940693434823604659404494148863720757374749740264709436415392849708319800213586458158868494778651957258416043717558383367693673244249865058286702095876258415642961486038986694696461261143985336043708015732503131178151558272507684182362531682328102718809739240637126974353359652161135889717058415233787595037152466597373256816944677277431788710058370045273740280801837707006329401156652613596957507010991491451237700650405673653844860709407719784075190547637834965802482462917017522328277586952067273523720679066534334389962230076427991816100168144230061419463980272838957169526508 234102646953533595235442817419488915943644101997430562831093687057601408626031885231083473220608759565976854682733132809119351622184887063873295844340557531421149458583289655604478077413219967350230362461339666952219310019169120629143026248294789400223195130229151490950042987042338855406029527042707427384577923739134537987939579599704703923549493405140638927488408887868594727360683136471639387396553980042774867450163489670817294228588847154325797211676257003113924401913700084091593750340386474041148876522449404167427790539869618416775653461459369938147308052824625191707430262099694561674266334261918558826959936414612179093216173570884418938965631988583548369828501675834311149644503953861711021307820937946714352032612813659915355702952024913401353461167088172256628101022241630491804802466432135034278394826819461455708263769882295400255297527127917420920160739884280132699630629774265589868363309645181244024402556659696864754537599540339416446587240819463244543633065916264061930385582676156528924362836132225768218480257162122993346607260237059439251758476844276905840957755720898941149288832655883509956121252689392526699734373103995682122552882994856834480532707287526309514526631110469832298115448006121074823674352509251543345870259698976258789570891480072699649339031751375667871583239731190649076456916198368039846809704148886121395039076127996875073914804232374335701280953038641622149698089160743000240328459679108346114219095756295777343228595273286541657974068784376217076434313164486713914880621623438515110714403965632983795507647509314840313473276712959491523556770135254235451485598792926515151271470045177545834118619979435213619285132177285794318105 1871149082148654430496511352791178220692013787382506600252512529978197640011115311914056073189689248667196750859147254499256297321314615962411291187137440648951716161243311490180841498072665080763175535042654126764911723392104621139218000370687582683173145870835829760353429568187705115108888376373009974698817468754916699168938380656017984745453717710553445593505499849674266931736817407155565277289944014715568839367821795140990530273792572486866854628018865324601188729837925755553605033596272296672219981056357494335156395671863901050394312969827115771007654449338161760056990362433612311769480284429086963071342400153913850233610714198119287649044287353629540473849917109298529419746407170237844470036814615786755723424598933522560835674228581997690889557640931280137752259822010778199943435325820963349916881429123421843870176069364787931610721747180351139348055879719123579341511785811233114692329488602363249858798673973560419676431559191065587910357771027092420324627480331978802225355198315722530190526499264696598221259768241357248296389477562848242802021024023602260198245404638627134456370261232719920453098827972273576813418050982914663766557290081419603594419647905275666324677764659861426247643390529331407676676521970780311580671199044038321752320488645440504950328322356888663397816165114245491500417228455857366366011054517329500135184249777233649981577800724759984706675623306313332194824619750896055355873268040266655611253389704897895088213466601948308141932051347536932713664555402718395996764296444097816588218029340972170707317606567073270780489447651857105523945151570697483337225312832265816141029541795123241258850754849813220957645312564003242173074 14955835011122842926942123472274585828680950927009518795807103509404589154249926377028843359306731741123340832975414424776488514187153903470769513432078674773682393385751447037263706714397872880283923307165508751129919292252198195345838935344100419744299157125990929171681619981181622804863250615189220068782041272014744561034078232468688586907904786538508823906145043826446657000518734062274490574571450517123013339337223153786250368772367048768819383521844735260721403560594043081760208616692103845082236864433307547828136887540101006749104739626538645114760368234851761653069385580315329061942980439542305047179994298792905910544090757996087143785614942479597152190681635775772851670221423449781615489616306479529877231128128089941242731080684444774989434289696517102745339346982707888728455054534476500553259095937390228040754488992702796548326036554053982175342450407091587524436843573920436560403048322387429414881476567585585015592962355702438668436375902300420928107646647282738924083374722674372170032675146733342045418764300810472851280673914915303597382186197359485612888509011956012557343558837134057402807466730618257158866544826360435048754181493122483060639737513375992730202070183918917297033607582933765902697908829446519791310953388699363388436930006467255697905625810510205500514648889474398277397344262154259958810113987717775945025631262381049756896526116851134989862602982567247678327606271924865864638301709808300791243597017902268123375269859436846177515435521067474664543319800797786786674555297623841064550272762728064300869989684858912143118978579631887949699652011093104194401054178313289519349561019259668234041738161060537942690385194420116849793051 119539971434697956785523934275298142865069638645971176206060310613459922691033420911155684632406653611772631806496301243690118201303492825060320584058349568765672455094574644595025985151288346069429976740913061447768712775343869137759926496937406744116530697035362895362809556049745977944828821421471550769845691955997996424289798352570392087827480646474734372276185559771298377033711936149590943609618203743222772308073123032259919299778236298850239537823263709584041219305860572773122065588345251870026836636873727201794041617267231303376339170555460988338008748396080049102293700210673182812168531185922295420429805403111274538802086849312528540334482041106013656534488593403660278017723780477465356676779386423676314453381186657693110603077449534968319335482141718994614057760898311834458139251274020028753653820486714554613209307739498570994028874651719739792802197605848420558875546978498808126665241558256613786487450709115192797455684787121512631720315894045966191444119905121312217283303535663556495567637665769562289193423431984129648350356256779716524477776492599347502373612442704655516459614310076749467465492625599484802756893872814311858659959977322428095226981067749487082526700419658962167417406250286142621723567046422012342902765911732054557784965123223797854668756076193212713296640453074366347741914162150170505765348754794959707419514638201073825338606917962769781610631613107460197748307117258702437718500273754841883156175402838999387103058827455957449481614920945233409833406222182802200271384404997663739933356581476747278428782697814418258273130926026540223663058674149853626211164673862864207995621348967282119515955327378145400299461149074600496687374 955467319963924144476103532620961524104156832943388548179409901617942895929373379494457064119307974928669308400214021591471248140201695899350739579356304354190379881496210341289898542212418327868086907714875998894885771600319968808609604914203470197612870969703385137560138901960860350910443638606149872513306140723461641450329672169655032055333842721985466846105316160281498586873631665954475870269586585563934443934986527145202738976646800770175260223702058429473332571913131856254068220833242554408287277679174318640532143772603240585261590142668526706724871477652470229524455180401406597099149055404083326337344959999561523191338874295209266872491261750873984688504288238891033850924264280529429083490889668539133864666959361103166998883778995701392628029641130431410758817053410648062270791321033826801334015189188365395288766945493362587432333145465572809496434613382613868410515065952501668914751556922409841510701969354377548218884764087972655851716525482083955056973282621134295808579484914029854526223745006173537211639150936655427327433484664018640244911323737194767838922041478949030231033059325310497415760973630896093304432522103599206338412707206037323654292182666562574999038147782783584363518812906597843474182054944920763233259792713027073183494129086855438582964461752605924322177544778737729922574606199319124370719212799079336104701186507427837689609931769847708637650994104716495715052887806157567394314000249594492072594395060616673078727703791732399823838492090522280602636736544242658396009450949914788519383481959779582257362818951043618025263101439944210454181087550800637082139093368508280305727838727065130151646114333203640353832240180801425432198309 7636928670268030108649186030176292891768323378881058068556511252924760681978482280297766638438023119575471175133780181368807554056582074017092528881626684354567821501920639202268712669271509180695885492332122499775729049984400555033263726288325412850434191900484621653287059439933924306652503816499578662605099559012844929645362255946715723731001920254083796258639839937813216158515783049042696879009874794956910390116393588572034858581166240723397407796195417256006201882353353998519779722783572499730226121166775343638389592603103526073733664481812725573333449953026634830535739943530990265887445473670533865629121985460373627506871911888837038680676229008226284531325027923162859173296588151520491979717856500635111100026225432844932813827958352094199814265433018124315702551187321595737463861933145547253478530555973991730685745553288477065644925116577591263548647446510098446511403225698207609692674675898053448592567010458483392981609144197724732669162491808068528172546971743814784644140918273874974113518928176601459429475542365008070608490434015510095823788618235982119299273723602638030752724435797957229844405458861919415895694274110726640379592397994165495064775587707030444879390301440218025571044054449396196843718768335853565604722759296241028477369524375479205084822555748479784665401873400976459401261861376170758009810789411208894152518359863951980676663422648173393239995451667143936714392493262656310902362007259052467034416835160000993244136740750116837474350072690906316338031095144379195957307388075729680666785862930817391870835724213544906746012804400872009532414961911814072581831902019800034090965430432657714419187108984909226935688190081696740297488922 61041027875513418192096453580883245385070911855820581769152106837683183443252798459139631650358020416078789611925716706292187251326629925123281019697249618718758002940557861916620937260855392542268623826228765751268461654921409018711580884171371806079985260365973843792021501919912999537387555870884455927396118008354877332982934373997558068631113091137191867184391476108142641773275382103536585674952403968401521713087797909881321666676950576751713287607443271029592286927169946188371913767422869047097783482220702184369020838138026030660493213627276509431492511821895353849975644616987367704265996096463720575849893925478020743045826638999095766764003123367933413546515263694499940757175499681856308776911880165985209021518304262927111193388387343956817896689057565765642308379605732836106711854042811540190518891369835848117590504549376687563920039355071628481479762400063113297737899351729671230794018444500309319644501942659460830348533826758889178499619166663714414721272952005384947764581950979934422723192398636874362921443081677514127309867250599736660626133886090366411341905025557780003433443683874148722545931731824456081162757684327541562414382755067710212710850502832168227924971119632215664720541216544727983322369665333417772752486479446925165551146568775633276273577486435329353154075434966906560961620223955272886135516951867383406358432256226914620578623123522324627064376811043751864813856902435803359135745950060278578472400014102209587214100585738563446746630808693013365549446572375480771564075014190464960082916826566312918424401559556521505195354198007776680633833007314331630642715260825323243292307533421975045762770374177660226618392430167255861469941009 487893630926139011585796841065391215414350970581393711173805273396025124703258022871331744943274079449361553497938484483695050730636714775154693763836691104731603169635706754293468957810413312917755788398081743471872481910306623182394283433266936166397887337040551967389212862432482385962150515254161509343304937882403147496776941670853851369791929062658962767942679084069845507505869444872839617139574442727708488265809438426232628015288056140955055643121025631414704439788428150130496604946908796961568186737723681026998839942421854242758915112005360607226575093608961526628845184925861658917459448420836620345441945658619090427177252843146631986719389980718201569265354448047636445747113772010945578923509668235165777878676797312514945030484763173678256173034987060105780743362330785901894628058080859611822614263972847735540544434350766102352957411315080002828808784861666333429943271159870762294224564325942441143463277962962182652654852799051181693463334112769923488283983617263980714746210069889936159280304240294480508566884642895482638360561433979513202818542101791729097717221136706878008150133500907269518995493535125391038007194696743146015069163273337749318367814141633554398453654032622037397121287251877197882270284116100886020396463668648232782828191274165510495243379745762085703372535093461640545399772776969425377331633349083428313878709134834625784054473397320902231711902656593237451522591802308369852812928336992684404712729575810973374892387149479651258917096820321995682695167187188400404460497658936477267772209653082514813634968562633066715115408982517515988243023495071611914332043207726394240327832048135475162831271703354982009047307728261404379046804928 3899677259600229581897450308783362115748691937728288248851223489832826333134652919213954508826549170267481921684325321435226644733892728267696450211710348602000097877426373168414630092392066137802919406698772984963337069123981747301969954670039439253012217043557340662188405589868649700676404403538822961705655027109718570489980554611942096750591000791720715132494525652193834615241552621568932667228057399961948724927980008743816787437877810610475008961271286263520668536831211337594210822952569152887854749235804297579725899454801988198573624465586959602828242603854616332975128369093676748574071261280127110929086151363021705668112526781409408918448418468470401046919352638070211314542520861549757796618252948737588618547813978844995000222062450505580194516418831451696505944623306842870913746199255267604646943335619809046504168869583468715454136431049916187772611052920839786885117746765084631567837440585290347376307065116559309377092220195829487341678457686285852161358813927814726038749359568055579461754884960726385175865752947973246500601491418581368822588367877810540632549643891467398180224248678089463268329600649958911810578889340914188098505355113343234464919387658866199657841770759193534031853270069899346052147772386602796713430449203502499189573492245007612066779563926710526669234774755097256487663675956980395791237332768611604497004829892361256607256441654746411242418203419985299911738418975030984915370520774035706254473626785025788506614781512908339380625262329237975310548738133973923853306526095140436725728559219992163127960931617320732487187313068758782362797911362368632505715840822877028852019710210747323628811116208121119903058199730968290339744818806 31169683287396940327649991045499429555165414703835432579551956800446262099517881645839057770433172487025289938033339562989581949785740594771517339466931262062186915518327865995372048085511516169658764220393615822905280252735880095867717095057635633837358172098432600719659521822779380810249458517569292328681491240790319799568825811188679841768094002017784385884417273589906955850048832522039332386186640584723660854363437648897211616466660751442528524563069846155469302135836094384663857605669106003212785838163458227690722953844787261825242669181092408867282559768560979794129618114482250466890035693347612739080789449999933916996782690013552208483909812633812813065040418057911567211182127645305019445386224517612764708348362441293895004376765553370928516347500954396669071133171320817952478131658386895070339559526413619825099888181492508632330253757964696058668469971899478698514614405255081093636336379822448559126988834376952769119252481333889619215834259326334345724613635197818001028107586479457297887778630509439732034499829757545762947285784419953760333397864854522436547367835409856566597064319986351342529535478059440804853095059430809918814419808812869922705633037993593307130341165178077502536992384776397142746318516987713255225449974688627739537736033241664087696986387675674426341439475518989387312127090115855890397530096992694743933839650084514592981579689382426191582103793345018084774090677635238635285735346082350114841243973384779621822908497887871380755480987046589625394459653503953613125222447303139265851955786103541544099972557504628834012264500212876238449112434896958435293505649886143422402159473318819310958368547244711057640130573547915600381031350578 249135903470385751374681315615584891133492179820900089414903129520722606386599625893090032144398974480015133787799685491728779092458512199897553753506281427521769979259668229484002314737099099981280004034438490581636000103699434001077652952339543486448591394944211427751435953545060315068561535120244477317371073323690286064997291207373975675228294571479143645564068060520869902531455996158161765423615366427548871163459581975015396822126540233190835279900348603705524584930077124636509832434701530927789735035654742902706208279520871367148913671090758571001581144028964914366540374284141034636886479337761326814213332517045566809621329568020291566068751035421644713333206044182704855397479826619008192160420761742745362667648046780600041895603277220881968737116333267441506033568089015534883783294672909316414244188744281075667865531372859640747437069791900486198499826062495087449032105714814198218476219549261897497939374816503801110369926455816628764156982149542362850071693802598582163658789654584478388377059017770430418879266183092020776663390129678946843326727595113763813652758504649951729759147310752159718136049350354231883591753953263385559140123981670947732455591276939310589540576274954917456725417724825290024628658272061756956861822125110063077918155792087733856516426704739530912632924940221076753573344973433133305999885552565006839042964756772370779813323052786636210066761224988421067709926140650341130623111056792676309975942724611068034391623609143030515515355684379516000940753294962986784690379109092182597211194875137697590370980709180807121476633746814703330334308980942392057710818587013402748790732652299462235584614656491606519472550124749620355716467444686 1991317244092023170252798842919782663980788569938404270335676179889599906281223733920867263286324309092557592195172667934419347803044562804250773529109242463760437808565780792312339918806388153275748956014628223394330606137241009393489481647265022708891933842269669802508595836609738796100995304429269716901039276037622116679107079064652954027890397906090807596903517999327490589630522261193428749680148338551941158695481225655542571003655314135618024835684990776402549354872155668604221068935458185568972257561936909429902794256326546080693639744371184744180112131862113361521724994871176629870234382117806678348446573363401505823393325870830014832497519836543986545676791959912694800582749681583847930646472310828038114240455650649614566414266171025387889306327892175691891928797468803581231371559734214221604698421730614634404574451147753106432395529389225555407824829329424259097431442958352685202405694117434680373204912782450215999707777838503270496762960006464430258899052937871370247778285300402406185899574430276151517094627808559361201505252423862856747860449683930086529743711527701939062874497980713911875169976614432908022956267101268003535336885452849635845390082617616609182333157884590910358647745180774152623957201255651678547887819574217277436905430967939446431766811533000592884060385489659453152079236457335322410347787937283729933073407573908126613846577084313618627684136766491098546498321812024624439972815485518210362889240194635312556435430877710337967399701673618741184748816888236329983406548703784646080490033143140833273810942884928223862863350072325898962366456329500818084638980617730370515904955446072369318231641011450661978183208562511742288066794905416 15916398195681104645993787932874681799073603426536594387992227308786989319025747537412170275704446568072291541993943683754188353769157858334042390049828540272905654999599897546960797918835629676745853151618110282094017426814773162026787758344066966343043472874323918239205024502797125232137938117571642051419105550998296500223349311622403102275052263128087903891393733878596760479319232476532909554933621899678751059904695532424980001584005667301568099969477961790526099615460070572547660956617642932936703129752504748649573422874253193216706419243388924219231204903873011722409614008348862871756046499577667969526907787979141502475198421974928983448992900429219255896237815583664027845689698063559108956834861988507178978597091933149279627914558682848345919729305129371829253717416562985447407975391107773117839978108399545792621798850721006834552555128544212768130581369831137371887850670484073088630491323826202288605070903879246837613422475368767513634084182988762407174891704497162345825068002021044375058329873812229646757856480881697817485190032657045723517395029971602316869869207456559576782529168898514553263795046377167222055791004550548552560676334286597546606477225624457886086152186741500007804681464087289222239566369316726602769878097412629130673062365611688420306409346809898035803587617188351411756061064085732089613221395566728074195655434582937824830246881671034562158065127741100672946281702656356117907924100275758854815065445367673494232280003090675673665874014976717210259728488646373138244550417932483026545125615623113820254469168458512256332083885790650169833415521349341911832515413169182163259588992032401833650028856798752504467740734093300932192022514634847 127218228093413020931982282058507510277821579262160157134839887968573414913476355252298593872626055669924569842178750149687012702522441682707724841051965373965194740682716601804151079042203073818623744579071290835668005996239677154385693632794799335871947053431569134899285951617214583083043318989864659174893240561665226962079215086767740741959195439735552608173654359671169923710988906895283999119494721012522191488533641147694152748015769420954801308319737538294129808913433774293534216648277134252869083986709780081155375302654387708713172868335462721298138621525955432444882137366362441831609408437914231200179637431931055512406703379286611057216705053484388709195676255783434360228945100342780475599612886817575423617167443017109553839746570610874439921809436169887666616099860158721084351037488946582590846961181348950811635121923229910652228702069598404291300045699316862365402789958638371413893951717136167361581901941105769990056930862398519813793753177286872739223254241064504011865421393826764531837941337625355223981099952326122110722358808096591058583246703486171771164614390929588473280002876878114989274603291919285242627692212130721628747518062665265175774875258275209097653564996894973703339180700373768380038925880224616642821059762415123947610959128712914106012869343062675687343469516554643616837764324117834539969100064040373469224734584469454777735617326318843330530992846439836059443169069097750019862523156623454796856042842694986413766318494767227382077034015738969206172533699230106193768443960443068990819988569158968757292836059826473732408433017406933589682410985475732802059233653278987202448211716234006749210767960734599556603117018577190749202111330811270 1016843447139676371147629209597231004488639420655599528066483320925411183858792894053748200501386678359105611739076930390462536320779739386812237828908935548135117769998634171309653567163047202770675895178200136799276364562431427873840063141419514450085845663275632081868035367695802955117050277505997695672512377221927948209996303261923207313722066952721910630016957129505234979553874747781031074137457180985134236633925167406359753474606197749223242726979927465695006538009869788549767372190978040074068079698658823522451970920297099839911958442642613384998929029616648178354386505626578202607208231347439861682189602691466730180147918707193950174255936918419453668750895129809504247105772648791431720065746755888843170073487121278984682966231054428516013215261778628132325500879850949731075142071397489358581674906226209544721466011718081972815548460675139674418366052361575911905659293708204530861434520340062010155712579025812924740236024317789552068152101157389186239954471266681832291834469503696124751113002689723049910150724575356449019352915259152993660756773647533576864037508463525301629339195333619573022660835265447740833243806073309736867769795019329877329863668600249364671385519510592153239161883499506308885713538555749017975457490815519655585397285717048732581279070408454844335428956563410310573243539846006452544491377828639269099990402732448137306011660836705991689572770096110350265662435154127609612283408218752500043998894391772839282704535168585071735149077905050973316139729182389323884934429109941289666295782632204759852245988946483484059012653429859659644907612569037505666781970433155916225422928715319974664992862976226692649682632978042514670583795822494178 8127538793602792531589171295672178741618748245505738440132881476035549035309116630614030577358548751891240566918236419745512055272274208236780033956593673094430844935094444650823976693879526346277408669474575168217274125943071731125420116466123889367821408207723995862770341163878738186575521893616289972575570587267527573039449014020592745255242808811229672520660213778382548963347767852118436496098027232381822673611672933705835647096941908014900130017053907730481991351732460350567188097303165736270318590734651079798074480395672092599929377265126385131216652993983652826538591246299868053964222239619110784915585612540621827570519860700859592205587235735148850109086156428881401499339281060940185508147610570523170282326131603536611009156327383267995173311284586081150300394920089807722247206873958495457989933922831885600543862051017770245427288069304284402114016735163033498528307905429600931615233019830541355935068092006952491159533527960804686952344404983613652466427845238908340084181418472466859882322584418727833902292217094549772084618860507198269213078870879026638768120114292685559695332967417179791138052352669766739507457234912925617945220776730785696382831170506490513974950988702316287045071279840605375391663913368520797000374342157995281985077446423977931392939342232521754880260162445770771117659520469880346706984398431338363424068435763139697054299112560003997083512022736547348903139058498199393155209837214094182961253571041750749749359148441707850114602212460447763968243794310470754483860932594397611713471143640769787878261620863978018362193249537797281673569026151367726226510567525394486133303786623043604617778630314630582448037557137202428965574840415504822 64962721819850683423747891004564530550432589560928026984640701708726409005418132720925377279863983259987805859938196308235722707307427251631576196756026699813716623089542940552338068988477330276374357995271390036998577259720122504286741851909099019790656678692234037920043397072119223282799311669884168458314878369040016836940522015479690799599398588162141663427489844965445119898254519197904227374357179452631235901524511354256722263016611677133027464671453646631631143766493097721572027090662886128085132429323198855266595956476160975049196448338750494380565865423259294088854555001730239547305952986606638146353876174475826170288265012488794248876876567483583078173513761751951892939142593515063507117006108286242205256376094387390499930225674148248558203986572236221289547474810070328576713519989377797506637033823664919837817905702396766378561308066514610625937544774667935126006215795558140514491949001736774078130245591933928486045206006817367513758426264917481102352612606772830339413523915226220614730509757679523079895224186520983803963875762245680720405862572950745348832799557872418044446276066917538285803865860694106314350537215339773158347779292679165499842119765967165596368852345036921119064890046855459531051440413629131140260371876870358163117261552676937519440589000763860428645987561798676964590880535684908766925436134674807268039147357668983654746210568026076009498639273140693510753322438053435092687956782967543923903755946697464569144776282929284662721411231072472209418489407367065727887202834936204706899960137024302907668028512265669354295422917605527145968451988364668956375210718564842060702197131250222083554759790294130359728558431835004488050544227774350493 519241718966353342797586190483984762250626879917138055191406976417192645459525910279704715552114250100181636551795239257301991580125516908460557385467189718741009167691010111494922826699132334879439330342307375189111122973551906509275008141481099800246434046924546198136149876775507242898872904472436054982481492974349162688212348434413158004933781047573688519721704511659572037850494155314131553679447536767807391384955021570956548155801246076227571101647997183627090814172003940166417591807309492682622983930529099475532125384833625420728845238604191936777599338881386635671582851654845546210787141902685456820104763750536339942575574366338497088394294758516669499856748611684124022214777384012812785686009475722520690391145072680417719319579765503576531461489884291618778015136314363572257359055160926221749755839454958520011336843693206126986510835084961397337485746763867455428943912802743368423819302583592342728081972671261739574085679135314024469961214789841885946539311574397695942436994879012107469679204160610407409554056294575197339381461169137373230478292128593315766369575477615968103383857217500026565803933535971671990093559130789484863497805920004740966902049821322223049844337044734063269636519405009854209565466862473973624757978108731892953488187968297297775457886214131396108598804596745927709627314283270555681689018007006534542947656974685265793912824270110299834414290397170930137673852837804531485569868532015201730870875539743007406819868581645710365830980687152237553446171535731818055165301066585770281081874288113942122417151902209517485420514847990161263533440019375666629285914523156518084477045698974307800639252377835326077277769815023410735545992305460830130 4150258517940303641583412656626745568441853016925377401700649979937454378000388067397410457438575915809334077481105946029637892281885801437000542216852502603975437962101845380063680685620640478889980320652739853690404529277688245248211624552539122345960489558764442010453308162219611763380488314609905144396818043157638033277504145563821194681561471204453293351233774845297139043444109576080385283757140161601263745723197540609022397671279341296522196870659666673506370916330730321176477900760399636740660133306105016186054998259381864768696418706166969932311769895461695996908213614720350277139345658570136956963392248283959894338484518176163452534371541831946812631285679242856231404465558221330841790460524874241263395532587193343612580401047432915418101194636188019906425028024775920371853082828027272706966036073312575376173440848773773285743491575109084062660412534755784353096352797725011615855352867056533024366646601639770476194899847657845714264170815394975039839071184942015223644040739006929606948307144615632372520928365321671432283553715396711189058880671990919145762273473545841139434379331676708297083632838817349064083450429842551386760227779330293834291077038432916811987577829500828884728962363242942165902932538574122340902636150279599908068186390024699275122873415340028871609475860693115092550385335713393448865762855155477162526755542040275300891626687663603014938309966821551127681890838737548640066128243075601918806290583312334484790892559536888998120454065467419111732082551214800866867636377558517331840895633302833436121300475741845520826693899064644897151102080239482087478877845285493124009440858040379718467035495949727828350748987398949818216926844163854005813 33172707879668622006111393112520903101756310189762596055961602786932024463415613859279846904880965970237990040083805632816795833979563773348459153994945591387710110910254176280263229888948723514651211118937279067356571717127089533644023824235185828098391194511921057892562059286458877128186763147312552818872661690676748333747950894356990979033242232788989094408931831827458628738294850702695917132208481985084449944812634358200656932145782081512991430387188353011539304788768271501278243443324822005024139174971589604123959353372314140042129588574610012303389900918208735992704371889962904777109961394308155618608955742815411661252732628812650490508678644387464758540237008738032583655137939658007557860571598914538071986343664794852879322866349605620304519860061635554353568793680184453142677344132368523962308108969168834012730349454998660156108109606045675157946667880272022629037416043384136077721739889542513084592807260605791242271920631541549417668824418057718870248859565307748444549897165704020417161119409171792123196342181548735809473690447768067404967270730611304974875706449558828371358489583760739097112875759044544442206974173976661930179685775058709208374514832414866150790985668037243245017526630182968938078235017718508695584799358156205396941585532105233764800935697873470885771505834039258125984046837792255685373012155599570248561729670181797766847940906146640050877850333037979031817970042778283475198503381808845350338082370521845987842104939515285869518421450725786821064118742778338934689187811200038778877747544322106769615443537870808005566478197220593462744871660421907663549696470987104518017195622093802225587221721499580888055217584786408323013136499856698467808 265147113130909129672227676922763149867078671946481924350933991554165634047161885027577779133598108128544306714851181979767121652237723310731280409933549521986612546961696803004084972656996901931059579049043363176479285898286010375737711531029366111985885590191659625685413490619110755066589665308436664622172400507534270532305179842198112502449641677847225881930290453849161635938704721672174766841621787055691161654155064069326821768763910298436943348774560862122949030998234790041329170950274134499886265570803769416120934836132551983792558303859883704985616795905592408528432030379624525238372004626963584776303115679001252733438639456152055170133124692766596980310428143694489201996731723899966832338019130255157330264685711324298955323699529303918617272007094632894594938190672235305129958138295943631584685868875818967183518068686609246225666436961425715113240920567311605070979926420830786664392301012216129116630893565889424101393009699707982333973600517472161413599094957874320574970849616247843069562519108225664048529642568906707036090754286712755581928632338487866259290384313316042017340592043046705246275617823977701751998371066237171274384276702813655561248996262399372951431961249916535536097369818843720722560762343063480819723835643364802602777863883118340237316553809582463121860404706703640401071100851467167217116679085676906389481279580270181308912091443361121376346204018393434661630043052423367016993960269407700850300058962999386567369873001508853334608788145022717252536519827131729234311690224570763371106462677524394871208553481714929932337817161310671720245710561946730057806880554559867054880786947976680778487244804407124561273619338853438393153890389112588113272 2119303158264713864900028779976078114670992201608516131536637545633768521941532389229303141626415256671857074017128188884510211697262528063450979710496344482026841507585423733893459742337725212758588746709377648560840813888744642674143744513996952960417525312428622492016190439285571216525928403485279695092545435362289629285049232699183445941711959795363773281716530506343946284984931813243489865485831743658956860098166531449399355385626651838766991417592266629623860285792965900072597370791906150279616650545019384436660202961445975890120342601625917411906510292680903179623941231304209223990748186470885056467636361041286632927112890855634898333037670029217407157678754599635967854756807262814812919699557356255781668575649096365478905327264072793015782853386705087684795238209850681830684583320437057551993679199542521082843171547607265667201183069504212660240158242472646469964366175497156732639624727626810983092702020136667438545948031307945014487347219588975109194310982076269013995347860836611276793842090982686946426791498865497508636269466726352818174451679889510574631417844261530758203306595068989645206135348270813854121763553876029491706335345230984075650346559118377116725135837636804453938986818567530888300327925247649245171136934819510177817198933699834546968093478586535716382045936161331878559043261810423987257399038268104491355852400160702866909929653844289158212624173759686706408233804132014183794853759484225305986664284430104074274666219661495248387856349968485885540458277190371302971281058690074023061603522072186809883612873026447719328316423675578770975520882678385919389725744778331768301306761645796092596710567184662581732327843849592302056688812217021224849604 16939456470381796190372547642350983763341673774955237089664543667035533578728119671680266070117531742035581594661167371265203817479209511142147491276847655010039079819271134870782297729437258953222077651987200620147919074732373502546225803892926799282210790529365072450287783056622026351206000572205551552691928635397481251865468806428693536550662769753369557750730119252912227114617832721906637526423919521733503181629312921841849314867246598884098849118581606942575684155217349450928567633256275469186418427700535967825747095985548809236017228330859677105105256651422378460746356024693492939413819706857679844404968813952908091475828686769572111810657488532425231992936009461708523501060524738696661872879731619586261526590848630758330113014594332286734866839250715897977177762802923153329401150645847428973313866856571524524398080718338055809233784249341527461286377866588218280619008425506669171252900158730007755786502273439197970789625050590165269440374106818310143145066949816113582113003787539533001080264732649348750061760467218240835207052879261304000199455363397026358351997465936415237290514843477112092795131587132051726408319752827295916642783870772326165044585682287652574228612321801973397827446211978234809015445145646941912005512229030802777459901609658569138980434776429667841256165770656239236491945339631363353388506689566253600856098920568528421433264781625986686722497834227257869997372179447244007889606484295036525560159496120197328095274299493506815774764540786297943309295646504930833692635221508781248487379882867920088687217162522925559484197787770735850291971803053386520985651724017371874895179213116919692490821493840646355069017628787327216453793891346998136684859 135396070496361754988630623882310236684822207401958017530590177811213243621213382645396418729178706266614029609427678298190245795677364533155548355303904848813615822247850422846178400068033719537939152202532097603900172843817370309910032307177389847049167031517741651828759502609697616677933005069524823046727660692130612920325626321852845332461104859905074807992602638498220879703446341064960725612043553928974351360211134933549318052293609900611045817785690534217532439132590017909534006471929746405076216073412375153157017904868802303002900731970169595695958580608800904436944127277046919191181924077945638075424578000966346776432917098485015970835772044459118168722238683002286889033122657353784751289861953676740896415001437763337216407268562112080969646747439766208478280745004853270913093456443810087070938867548566946849634901767352933096841140308346475372937298129276843342790017716705252392079243046057117987079311881460875511744045193254978910367427636286713229865853015897552411298212331515284969407335676878524207734322686763474339322055226075427295050856879525677065595828662654970525932986772621485205645648189480091074641782413371080723842185216094001087135048970079253459329684098882320665142391843117915653952736563121097782421554729240952120762163997330845436257698111652438034956654744979081570946752706092743555054589507499932032335954517419651904285825094181382427646530624390151295517596223516785273837382594020605013807044066784964832497032560765098377603855410568865519213559915168605068915421893467537443816374203161948814531731366269651891212219585739460285085210868776839277067947613921650515429077807189088094596749679159916688152955836169186299042631749929660969759594 1082213264005398493059547498981678014441251005105760300799066382227736919337565748538474062834723610255172092373365818696008600045246607567940281306965927722737621166280849178980663671618332088138296743111461917779639016854830341002042014793018877649940935718387279432667906755053124622088836778570700028334675936066679008193453141266129278221732430379268144950515796529074832801419831349223017959936800136337825424896843555027823078913992330688207303168241652802291117340147699073345669441706620340911383298852245626840966324295515538596556461173111409564448191994029623494473720552070811908702584892909774957414174257069773493564820089133044793951382432775281809920791370622177838252924425188583716181624449478618973153750695657344260696584379927862895813717909167876215827064456767956096303939572955184101917373436109676999084099225543924350587095279383253589436106545813432305591582706534137426068234885462850940634731996239122652343937985773277585579464605097760592029098584974280945960567701328740095272154293725473690201826252337471705561227251599515375837482140863956025058042909021676641568463689779455459902269675850612295960962122354086049779547017287485532660734543891227316290066967744299115331833649317868535709725995198603226283261661359210493248224266402957527609212094449255147353239532348949845256173075572878445512619866854601840653652847195622770086549751518643188112032743778566668820456573744803813777824249017532682894887811231172604480075520361699741058483518568196873027874277296613806377915142124915718520710826765501398226603385704010504964485777189217325311273973310634180434067109382419021429859926043706366297268777555490343924233421033596785673165812011467738281714555 8650074492711347479228448881639532597491589249736209300907107686015565457784001263136370854637911403536751810105961976070042197536856010232661701268184180202332513053553248662307865197441798616021095845267285956496999971386942116484798682806440896912634620160252623503717848048511981470729889639888323450951519695005769756599251771797100022504780470703402889048520049905368289013512355616018975888755401721018512451532791694525883806145458085353606754847091316488643770546561374348649494730630224266486603972622328919671197304259368944701844306697220657113329762367206414022899060657304837615647732207244052076309886409385357673750165565001718216276900466100632934672569704792508935308676409416954350332764666993361254522755832365638095344226697433818685662462219226791644631155482488948802319653923838096601037420282862276393755723415395782864221657597663578386336270688018371961948746743943094228099725528735083611834405703827935539447895480357246132809429944298225070527952314154864310388601787129788893610808660233029156226243237321911003334620242890244419545179228605660149671335530669869607079822355328606438956075319107889999148070723487891681790454384788303901849316742752572307977117556193531653020414428702479403217396571492074875250099227832935415403129783210933716571121770954714294939863260849963494099273629851889856999800777143108044096767060108486702911214133836445637464817099341408244969042902524477248631325129714550749990785340300859200339699789502182029993989083471545171506349853849694565754353490283939713633789659754860504970120490538116122332450970338511676291967855508996393438213673583833489945953389186845669251095172535802736139069283845105454640254161227742092442757956 69139629062968763873018475470529265880162426737118160091397953474090494287481018819590266450936250841017058232999695043636421198454367845404935920448746391712624740379765795305268263949949226140899362187788248819685542438124852764267286892913233433442089869101314542981910904271299357285741799397155095633738634399648158970273204061310890830850673796503070175978511704188913737392754585191106198928479982554573067212819147554568863805404397495679299082775980032248204548706972009356930474435521693785212904997686476043827805485099841471935024584288897560884207536662778659087428825466522369664574012994702424701394371067444306863763090969278944217491442950903091202071755575197208289857846753699461962616690740066816661357691858993238691745046239903886078643438413447043438140889543261364945713460285086573836194788816518823741055466841256502484816671552965325959630059247013408512302121518355426336616782791096971205207985288711949414897148805524426239584682013685727254475728670469668695086713447496220593962047497656116850299154249812617965683598387824049004932768026458135877182983523246664741310846714312023805115147370215797328206155735982354946265467062161726401086130690377773431756600887365994476118938244694591490990089739271335857933097238404127092267332016204609588893631626590922742043446649835088563482929567123754349145299249617398437842536429934615809800503653636239489976731990701441387925407341008963255483268296531538867372107400885443542053015102878888841326618167919186374066643692347326546588607606121315031495276267073686920916107004577535693577687373334972664084238892402857285977495679236038465094961550898283532867590196881925358157067178083067467080367350883699473561038611 552629984747100497316980383657416103638372045164669742329017010722874630640852598085572115026575642854942121267411227156245288496539291970526847382426554313521961768876623668837487045226916143799960055318016739115143839449289709883182760986714549815682687617958164880322803120254600521262239733890918217616980903744734971890603718071415804834242252511868011096867227967894503490010109467150150911929712624891181246421560824835884426988568997610903263280341121366614150460679008387105063383876914098750647562504764126325670530773596754737972257422307858841114767302766050884552290219746053966899297409650399417665969921833820302026466480321376558646855482678411556001820881264685327422940956383765390000963947186311780934594366916936942896437540854950719532121470327716505156008169928934017119681355025328876022778447609568096161601060795424482391007353415093279525921087109816251527129157400371162283891966544843195296799911336299255245478159015869042534744192974509230242230308023008497549689473561093736934039628287920692145472784789819083852477833159158956691270506008920414134693059497529895405125012282595336134066923743827041388613553806899289377979104589504439738568246075753541742247085524752063376464654108345289649605397549347033432577515557310349832319526302750759478147844115343230540672716006910837965134499680257151304640937045340580333059272063317211989851565203962031865040567889660562146975974205865942245030304691094918189371233793155221975493389467652278753007802224542751394465101654094155523124463312560091850772442495556344313437260105546714046309117303591495685722019797549902037477582543552039312538302421766975506861446359896033971108389005905885244760285263322950280040594298 4417148983460251950351628128899114145680399631427933365729177675790165645530057054993285466962113443470430450986266500987590596774852893978877267081837816258384930357983353939257314170414380557763024510314771484984831414233748336553088446385813251927655146482390986828970874437828365866043523491774039956460623667759908282359784092661437594803233052109266848792424334373745780480765509834846411774497784989547874401745237920009291124546890233886426553994591060144118580650746176463819713470039066249562884214465090195746987833517224575889959053919604858056521406600621454341825493260616286419999583139566276602646654590855822574720792787098463370796500706911963241512336257493920542902502860779827357094385546010504869602710300417281337580072952841958853198451603215317200327918547186010230923146808727036872990757924468028903203969243625036520220103529987002307704428558848170498165837565944853848068497609305378683439359937260166226359125041749441851629998690204138582190239234876329201060028920569205932919023269042268168715306400028965220421130699722273243591946386347012722445398683121099806133339253927752323155901101852871785438817708868449105692628203942120297826355940188258414154733976517736622047293731290773430133719380300659874790855424185184847004738234104819347938556079385654906081097834034809528228967675273348129987775336838046235628714728104616384013974136070590370485661803039862708363767385000430657311581911143542125018607884165492439666632289717432151461497381023683335130299728772090175013386769138903921767788262188192643754965178870902846764523355245113504121827635765804287509822566070166929185393559812716030473969806644562123905581728919893265218085732385385894784447172583 35306108526865702377062266346349460114876774463117043417902637255272113852421378770223167905071769069843335446991989579255750120086010060303412906167965029336229196802090947966456528438766747530101188860074909652101014496087396649984550599787537973217262877280727247523336406807055115092205280994837056747469979417175658892655074393962891039073788537372230092394738269637365303908138873397011532303307867338580838906674148794367936151499495372354656737943424651785963098761772446090130860005993737496045520896844785700602090170059009290707133596859775719576844687191433561482788341969857382544480158243587067553222298187775359853542543818006837156258228573323118969677631415432202518494969075295904429238932089202988337837077913541018604773792877706365424373675286456061222907986598895800957886983858383190833852005512740916623265617578004245738950776806934696834068697902765337709259977329164508239932625133310679963505537122157624691045101198294066328165263591827643431310616551659038204483134569438351680056546648898356017207010455826009938420200744312410306114926970757944165887157975320832953119374424590631363507066801285495200734074438769936359319530094203723429031382804358774873855701286701415802842273597131278263685859006815155343185764982848126075287290300522788857087301764310109954929078054181430364076958277204083518754614881968897585077239390653081131485842843024318588643736224079425569169573182752282810175506478874195569682840323414002060393827746657328291506134054778234437005265222783455535310354467623298628969510601956020924911486997828132023312008650545590896985511850893785145586521020472697709976784173374392931285621915368794800585455969633407415294335739611295847899330459966 282200551332781522287459767445280409626353195690862922578807091303700452048584579690500670534826223367812108942861791794042930639394422336165106703789808137533780156385505515029425315332130852149718419611033216616919126565196965323519451904413633448473783265591832682578067162107177982905226724999122726281042843469783705448318472038243669836378406682772540623792938303270633666291176290912304995251427976940475052489365231438780400093703378689135207565808838009805953172323445439341824576223400545538904629230013173064099055294034297077145683672545840635371465723138174717702392158652422532769780350091264484161339811224782395366419479504675983199783698769015060726501032552997851406216084115368879257824707417945389104978749442104729181629936065315468207499653343326603647076001869341855090048069963033549538363212998757491992370064314979934303631935750653689417267091521978342484859933920315345950311617702307381074397631282548832853562734850620049225133768745440157805667441116719287370111283401025781682947743614700696882149769451876428713100157367602833664290401790488416683391527506116317488459716266377442598194989798627073021368528030296370085743158553639989246636674527837777983935928303335968245645767905205390918065230023153709169048999253228597558359241538409878029277173369140233930250417185635071744834385025526911132380622670131357339517068698417535528177616495715966813410866415091244746362651092913753691667404261134622405656402261716477677483933135423197598970138609078079825577014768250838488390350803085821185391323816876681571710395865681648898621309149900934010383753122799638589949109458793485223251651985611311717511644972959851826279020117740820227667769779027270579265002495751 2255620668948403599456675970919706101732052032852087308708153281963721094171087390895923511762445469621945840069688164102244473514902651110539725615635612508007527133060078824601584922810998558403228679641284075669354530470777455057683880088831178743732292736527202397485808993545276132777798703085270668203126027117996532612175755364696367290719898400471365331597303950617743896576881550198949710223204073348247514049297844233070056848712330199716001782351708557058227252916032095846833874650890998180315388215588258740338454209685626639419063417727456940832485330706705296791689439930139792962352604301914629930597055941080764333507264708105422458313632596501768196008882459868591703992099841547499601621172615855880466636221292875863569732612334873743829157014373354480660747002889346440916668043865581159148926400920575433934196961463900621651008303941255755926465359368247441274118043038554767655362052553580512218321377266166412984619708923371303398216001972781702051273618479975893541735604516986205864080180066195053374278125360227967605538087207611365912853325715728136184226973230298921470607250474700764421833913621326989445914453422801136242818906424026272233080931197206544778970975736516449812379641872943815806218936453052294449609536678470311823502826284670278937338472773272604497036792905624287337764575937133685422032655891349301705385294681626386161507774248521172099460503561597787293093110228512649531328933650577400876203708991976661940679990434308950748946899288740853981286204555765243947150543624921633491731575092454822958892820808208182969546635775417111996934769922877567461526686115581117941324944910275869957004286909962615120717671901273290691655898990883412630655343797320 18029117721435075954605469517534727576949801465737249001555945311199010553413880583986437471632941262649208689694726007863367821793182908301239465350132469116832822536723494929780301089036029003030768716087725086169755081060686474444480049685254267618969292571877545550817460423148384209213425525030106014961021334325799717407078666530758394436831246393395454221665746893725145029824815736445568350902554027115865887179677931051384197186063166605249158608998840474359451416894148614962821441408162772801069464126105036740391466534815701518852893865197903596667693564824027105614578405182444821555567062191948321071166740519064730096905330108491275941439614984938543989347717644438034690715030024724451070783414926508585490468790048314762623228226990781698349512742025283906642030476325286208618800028470110571174862915820560063256702362646025355441998974564118191546704364087913466566281169571581266443872983245947798890792060755399918954677915039401498387471452180669693835111323967481678064318187396444104238451015833078788219484221721238354680730359458241862996490237317989227895696968760788616599806398222122372259010010891481804513544050448661552053014887305612966163767742595721098866258265253817031329444874380876223362161502239215671057848560032321670353462119559260383841462236112243097400835855472876618954470734798980954910504009083065020306310408484864617408376052189057592887755029547571995937286257953861166555646577421922258102646837555228754258894689563309580797441510125511524458891345872737271558384796842452542774430667466898702000643644752568092905134765832721725998483673397320601880414985726233061472631577415873907737359927116814672678512296994211916709286653271229304278411907646440 144106338814079536172153607519886176447073020407573144792817293963261580271851136337846663478121181135695005644839232601124888864521689336468089491001202462309407826030591035214599770440088673911868472709501907530566049216373995696435137083281413477830276854559174358919893975521592602068627432796089911009004238276438308253583684998504892883688771337414120796430732080382670872696778774138583453416974451717599659433627572082991959013255459968512968424737018478973938999594151314788058251695496361228005203993556862376727425053323540175302437380208184585946712341476509582623894105940795489363252517788885114370160874068495045421263665494653588239342987465748721559269107918793145099227289173963407834551261960837012514236508324896260287591440613682289693395052344992811682536157360017029168643544948346945024044089601340610611098147474976541261349154309092691063275599083661531177526998570247454945653461434295166662192407114859942045472365958791096564787028334289311312864413782333983895761284027191773498149854878465401450709284117997706541928235426203100041397524493124500506412063134469913645151503165007100582749354016818913198999662228769341224897332924499484466557831551226092268637631045486080573637719464072005112292110437701469532851827763067241973365792736958587448543774277350656347401586451303080446468331782987922291824053457265215493629915037849059997838183917100397475339526752689914547101428475972986550894166651822084923220661712375402321834701742970847539722239615317433256749271965993090764219765730415726136743294518117564272824808593189171534576082594212953218850704755954657735018000306322109452304092046625180371260412761459418139299949008499782538452393215784892587978244281736882 1151839308773508746056192765946700387042016966778115088281185158265946467310197508487910675733853719733547146132315576875990880770279373490570217733151083757138944560862330582520532240902101227365537346548964158997749353129346189295684469137411295811399933606282072921494151653001261077441838617018571144810497759695825575576438427978271923270449064146288478232254853942645709845671767863418110148154691293644955117304936001939221737497240912979513186827164190143693399894991383528384709036824822436561031614497326048507091479358653521363729688100172711594441664302970049172333196504709197495871107254112236356888054792691137229973588499090611826084724853956592827277948460624586239830307664717346710188715847792097648458554673091089247300229346391789433944500556649532309954653937369806992184463916162680855996038635063782328356340611891960075427909546659621601036681301741271251096253764297692980370737877553544227857716549942191225358355693465628195075365121998303626414080500510549372040645486270298264749944058731806635257833025628813046921201036082429121119434193761878738555555545087038704006807537077657041260000603359356860589120985132402694781610551696532563731653010008571126441905880350166763881385741779153655756030877634002015184664439109117695245333281968112320018472259287577506835438069972497307411562203452982615739912581694655083654818775556832738539971077875170226505429345692872186997367708621929057284577212656769626926880237689526051070541390621940925737759033456556895674143867772809030008476691015756096332100992190037161348182014939914591260073896396526573523820986639195681458774053165939260364073456401424152937906420070887793815343501781019010173053138343186541852100565210958465 9206634609686153129167542493238902106412775221766524008038817078950787994889465787674532213974427560244869822422703655048815951838700439723897895446376139964645918857750987317593114283009721159429022421949633091724493656675793554334669606494914312796968175117676559393200766155357670714372029905588951473375950893128512457750719656358159285979191857520113884931751803481532107021885358696212361851958409971878043208540549971606386846099121616036363675941024088649170768725377919237014019296698597886074326608680663981276274147673781777531585559368394955614251580625053657988876403082367220727386611756530663980331943183234650571906443443307609003076293000492981488332760708469467940804630269091352816687493432995162748785080711155609905728593971168012301053348330846018213876207244405854101934236712161364101280415489444321539620454053598968277227390757978812146195836786587187062251568700861886280562435061052426966799925392349611478653778126439846842269412224653614528092140096466038521554191165107431430155254879380231577911033908420543861552156319885382032703380544694583079957262849743076249840563216321082646445718123399280773197207464276214896297703464323098509824535221505244292595161543712001503088107542711618999111108347699580957509913249546892288893746877654594917103460303119870768366164180090350745084680210384359284668244306209613352544400594612656043338490148904231644191066076301134915820243622276516282754142217608995679573877027209016871677945557481453658501289665547366370159155586079123526990627342340274774415251304556707344186902133042549084273245736896242313342544405532643790545498424282132902321313312695627594224833100009215966906545649337011189919420043555549950859707389704098064 73588528645597397776962141663378239008397554033791561257122491912822835401576834415638085761809928291375805173957057308543153635843178936633602308008853421850018829079394888564994929704153863885715154804807617834259807254871362687795125976321793628490356894670847019369686634644266691438686336624055624138566975357208419517012555329652304428949789529793018754937597292545117359439935024445261643253966156639942086461489345776578655330309068706098565584696664760698581249230849169662268472824829402726318965326023670149016122195782686424969971337206671040678700842838247164707657708023944109022071539505273357089905746878504392783489407929248967379058284139565265775609101914865052910892313224562454451577339689639795580126244341472671475921593401677395644631164276489582046608471553999957693214872275216214081591365207627214846296491439579700447304491553515939175071423895723665255113368020064945702486421563352998381463160568905455714732236245543793120227323005003569884778044811230906814731352489202500463507107344875425528746269439462245149055646022870199793232563907533178753094765772191021114530312652008733044269655950872293267436578064889761632089894944450751036696207298857399863871453413080210183715216222256468775490808048483329963965798873500249022815634312748744245993568142847948151281451802300386026271097352252989128154452602821758157529324139777346955375639359478330091445904230383554775299660430845343174571178714949434937745687037640139348092171345157938708879130581371349331687519793159035464120000266465643814263558620593335217646481717998431907394512945533501791448926489855522809390794624741566483108522586381680558315823815884788807104450316341972773507016212971995184384697774195791933 588192567128748082736615854866850314738506233631166853839218782300667547142046450163762931370767551935054039190194014219365157047009361338485292827181326397711625886370660045326147426184523762017699910041474338781783336147045368203963228971957376431766195435987718493410524607985024765571818106553198994911748441078266928594422277018612095413357098493273341746108687925483122836389958645015050739392217942876953185929063640219723300055558958445806490115437191191016865047916429668058854918303320911533412432110497441698937843095180745685118669862096862927506659754567371612221783510743015854697490577463015414782122582847251850952672735906584496844518092659003669857028771572796254069746130583616243537580751255980972572417960963855590522439257983852238904200501436696505454284290236405758399788612141748661845584830963763064441047601185353148810685136622038102691027490767642744847380488904959907017430419597209313501592702436771330675306435341562436269041321659103445447140649188778091933263046115890371516852607729632753666807931487990020737259263346112477760858623954615789392594966425223975813754438466259662931711753635417105267511976341348787469233609640796194339240848861179494135140827883970176443765209424373474285315051864396792953012822182414470877785192803307140796911363949619766358208006179426083854636899217805664830483518723180116019385102313343666431521097693264720283037588164538452325898392397393018567986343368910755081986693977145844780912958413926331613194143315017193868043507732992655966824016489739706902942086377011429806126230508048384279333611746343907725056193102467339417121665798864665411646467711994373460940402755413493399390480710412466888333021823783646707979741507467488318 4701421020138909975085937213057004639098907331756907053213298554917333535249387114851871696702003839806361959882731447428682735992170750502434295567305644914539566193477806340895829578581531015003043277247508437527430322238583291406298086601362811099711626945955459024021029785155282109742435064896883409416128457195220588388963396741155652929027974243804161669791786255446607376502211944969458907521624874773177862193162548232326407643310425189636667937250215113851618540646714200389112486407916030165429698059276657983048705230037824585392685930897025617909470566709843118157301047416146003972774957499399330888454050798313817355148620719598315998298665065105761244776875218127206958245527231108236461166834731722593413714582012402052411332580788382298566789789585322335751789842821805207945532870878776894398386869875821586715084765956833788199310672286135938084699782294131851530433801187374114409680353348001529048002936206900169077053687370736687085403931923024657871056662334285333864876248087078400394609799500752344090033930128051371326043026276948848428117919066549595113560830104984046307993552605209415350846255752219059504847164843128870613037572760990532836564175769722109342571240100133165308367686931720736560276925616472257089760056485092916854086836823755467468041871858710664536731039757308256025013973296960164353726870360589253492673452035640795899426173001568983229988660848418630782075032348307401223799335295035913632311977955879528930585373712357329355028556084619949825478142034542895619821918530127093714025208441786290328906868027990462139694479138836167524596749769428752877724793683323837108233494085379251632387492946387130877076171029824182111413690154205853133901039644691467443 37578458172133568265544741001892011633191609668725104150849937165847783955299298264124316609594405413943748469554344851825704134575928468345214051135235699701772072103035612777094263351477978495836789120682441209283426826692762753129863716286703027819024457402406262807167571924128003764349767933426896234928666991277810291334335212563273616328237504398905989991651745482492334652626212910751095353653862166053157991812958727971774065602133211808334103790144871160069507838614696905532590791812565562677249602936236434816161587875709780843687999840133828183903744544017233341792121066448452890791742373222436404309032355994518926902550752538111362995383016728499497526838912521609571337429043343350873103168473592680577194931433873505563432490637320025419216004896396461646434156839055577915966765967574949913523860994053416061794334689812087474916509909583556354189159317591666407336327164964174308541223963997267116471333543155972203946934170560224280492809341416352333942070252913279750605180407767656476466447383427335182779365645029346209436988109036476606221759823691817000950992708546162000208233552084580199387819539304077037590125931532297416389635349434758047500601604367329367267850779537356207398859573905098879942948051899981954319379761453923524133566550294293369300718792640503912963563516400504423725537692253131013536292806595815737467936544223557830236673768754887363079091763974684568878128136909955163548668500891228847460558649796394104050767958307215986882495465524635862536911503052938825615920397743227851990737284456527952900220610957029401260181034060440411945741966820071610933610370715353395289973865683069296958317702166287690204972789654714869334655487809069777993805864024273858420 300364753923986484443223332017999576568213278338894032956693897024509348357312677435045724849286348610441728061451095925815230882446883115503386071216950310828539166382551397582444096630357540660397657562460074687803241090594579734642678325238825521338864378275524857995951859937417813531910195846830287753861874650119380839940681265890456842443814085566668143888372056052424757320936672493801643596115092210438391552294223997650445195533277266257294344587014077983925465715058680976229489298346267322987135591964438604826971918182296019698633562416685919714387863062947652057425182858065641928294042849606793087898955531068441316554643664417044291091708986971672237543465572540225105188664249878404112382037257845776746460056256791372193090980042664952784537692273915575707486286677636074802664072526683661330865426690586312012077352673008438361388860207579290986950179450896389042468287187466054318583977189413571330684656619595524664746106173330766132371148388951016889253151752005466058488004213315739056558907139421184118198904340688987026887329613124873784751775113344281562605304934675955726929729509995229053742351061545934704045168329722367930675922659810631700933316337381017664990730182416182817023149048879846970988286915408934927660627964947842642333279890421415750402437488993378492523319306794420397444802109397061673091996262974518966392260695287225266216842637052226262864632585059566285724419757111855007144594425369962215204739878660100543949204733251379210265220743433936361165619948574932065380592751467312578320539948311549611124864736423534009568432702355908394433437068899291497985425851741847868553530373571809680506840140176163894396420472341156118055952243998022863825365954663463126953 2400817681767328061786008989248709608997302233181347803056134820205344440041010517891635210331744267889710661536589626843863529380915199288660587131406465982459208890860636763984599947190922552237632858230534063634026020532035073021874296929869710376393373408292888642583212189481468785114409734130458555130327973170676491325785331430114100101913272345763656552565215576596395844701674143377016267642318849882940532076459312035705778146691820771600938668117649673330103454434227013310939466404195224951390554902977293136964902728423836986660222398458022195059116362602864917422617775152409975364655033022015947987544317709866613971403323046498572603949079011884467593136105808037239124322613556712859443188280637464519781760350663786714244166269691033237016342276404458747932144368830106391995072573098517659664190691992657883828660922248052499124142904643952557480012951669772949486734148697350500794968536943439458685963843470589869435593726585128982627864228574952745660781940799118423622774325377460899402719165182735047961395024470421705689024132789114506369191367727568024610093173322070293284641227303092267371099030446803505843132250228770242028307704942794479659723700316705453525020869912368779976828181439518807593235340771695359611919927653726985454617061775311180215013606643205132675419445189226213124188011505497128395555652782459672601413893591196437412907961421784902702183270182122585379439568290354621539366455518083925250868098198173834048834859760784637778076621683787626975150402654626924644697558285985408137018570414451078270406022006340501899746387854626030046585316485353105313596933439173321091868423602188675960839417266782548853411071706666424901598786889026575948102048560154717679472 19189762147895252038495521645380790649643215341239579979297893661742064456643028634887985698617976224816119496665213206970852233829767363792181982916613878626618598208441189168235773812824567523777670628176337756115250759014005295461562114042417472433955035338923287645659336392282813721362892676632869611990180057131001097717361916830805702956441143525987826346172747689508045454790366663343578556123939423334632175689414299614208562137292530472343737863507200694591462764319064285218337488683127167190170646069466137907866934813703573007909876975521751376491672419854602370500700874135001341192697642349262372408378304092873297193707390503315644493658783121877612203892485217052665206556421862045208699609772705818867187521876028124861111873774095062628640360278674359349542198483112569701007191394075345281844089432266000089900464454154860197080646578915849184374235793891776980621753508899114637216025705372628122319229922536427139059394510003339628247020337210139441921038528414446902102397662439944385033234587374585097092348865384230645008650232694283821124593831428499539098317971229562195853533382550801973971300939672124499815745751144888727802369500888414981124243562968147582789989087654216497476777808820111231228299871371764037590649125859785360294455783223724926987516437126215683355785941818371012216212606034233166633435570868650930686337187797556096204585460881747170323453407456344050730223884266768297175585006394443994520166578811870324028275803891587724599930881046609146976425470934006461285021614847073731465181402707152194478914825418595969145918349000143485081708448614396754235210450997282619773034459178985825947561207755132058415945743575104583828126143135183352803419352518905390321241 153384050298144609224448210723563798173758901269853594855543612042278825665981795415836159840790716532559283457171682500816216327783967274358029757320682277796018913358774176721326361038219872962468436028124449002549576797805055401881672640403686570765842823549525837449948464412930384865825289235122822449369064869164698078617867655152473418671693395860564746596685888906968519245530436594724209070214219317416424030033690557006972286504819368512715506898087308143573083327273225476032999130135445011904997867867757636327714114656769435823857243208731372890866702958607874198856197373436558696250377539264516216394593373535317215597882790420628578510660432630533726481143164664718598508938073035935135017239559093810762568953224862938142504388170920903720028021314497346592534926210383411257570648139556452911012943670805814181156386996310254931684999608138426372412234724946145233737134872614892853754331028142427984802464793510238350491375738205139242540945295295056130630617934710995623926795840819403746234303086757865916388363364333119576362696176097503740741646130431153485817161469259726688868837297074972550945207048319987958545320314086464158227812115726972650598685966873560025322633385896293911569781731421412221549604710815650976921099403516137735077827835310353797045393384181469579194296592612374824265819441115595899462850934558764242737733827744463723787236265126774747309234385341576574341916088544822045253257659973658434429095892469282391358420238006723846498584832488556842104863181118517283520193016873797010278718565450924179792140693225565852509540827619344242816492865941979465325251503761187855541970635661441798971573822876112272171677440267599885447089136213196166228251040415351679518974 1226001524942751281036325678707230427683235069000889104483178340855542107874338178902096172163429275734570577250054994723115198518477723383047961614729262072629428105191986479357690917945827202035190826721516176705355309553463530052612422970721765228873417353777106732360739648101347947814046419179354798074691483899977307665050839270206138745190322570130832193650963039345442812403434907450292598305104459382656373860388695159413267689555750716352382465780102653970805459000434586740871406258326729913760209782865627116701801260874870182389699284542487388237398869308572816731165852643705510259623421242417200664650582984616473897156591403550139995971441907796922264696927715959877615643332367101264759119990690233700363988165957979802672873173722047001404441192356449916573610937930919015250557117887781902774469002125905406239286967255925883047961177313496359889154555454039938170501397522132298057814685989012061803233223911185429975527402738199275330372185208769829475724129248272925958750154642868565015697247396973149156485678264100921003076505068256856326627954899226637529520954362850642313390919597949432701740189945235256100515410458324653471500526705020455791286400445884819573063307061922427215805918364213216498006706027815412557422858071771225217359981412140541902191862346172564704538793352486371567991468698759847856353200920129427275324337227685293324612017930439525940131589882632201753789824015283564286429299204411919356680606257200001219342560305673426841882610197040610004231614496903769363906696474098336611119369946727327005424128443579395536610307169600380357343161990795094412549206003838056484631022641463321889906283050574197302006912932974772877015030858173211972105318794880936146139705 9799457138107334593404311002773710624840527103959950706478196327363206034834893754604082247206618446913211905355257203154242920688057918742212795191506648612958081921090177187639022093414246100010829942989298951724066267605858332742954979104011227731815954476104161244981488840385945975553200465771128053473248359717306735851884542383375764424539594101372639035008244678250156950443914103539084421295405627872144804077957628482228960289982835576022631451143228841187045783461017603684042315655892056718826337777391601356182057231031497689278451180588266711307496301130111850667038106248105403025342412447499795786734398908156127320327657253557250815494393958054008658416515097807488590330483911964014255880281846553004664269185168975430305001822318625441715356517676254339631747335483731436952687812704992356003839308855408238354227004999213003016158005921662655391543672285920504613650016613699928402486781141717714210910497140367212240955027635015919610572772825926364505401570131382173579328577883192934878976828661610800563662599624779755104648121305742185396333160980068300502962317591980948063541017893763684795892813858821730845290916947383472173596618712049003078134914401305273389376534053561258593422836052606346389118250887367476537319076233802267070557475486797847692862052624660888019232606560581639892229453998539308375879462437139976521187456064648387922258759598950576962028057985777106843718319443525143005051540133807308326791239206770624657859828868341404632541920263851396456059644114768525251631241464046824288087457365294244660034361900671649581761881699524307206078460853412648206415772822970580221595411052304899656287195371881377232454042236281064662597133814746828218189296358806259745781020 78327312094688671173086707963357554491104232403585178037526899004240909928640392025506439114665230102932076804656060183039705287262333732153905601123821931052936183649556003888847755637367302184478255695300748494253151755619121307020444772959442165406714714987073393181780766108865877027592882524233025872897512781183248173106289654571570798127869771036123838113311031801122825258457515228217887443585590993896469843288662574032542217124443026276685491425370776330891960347506226143800404091377705682220365997123865365710512174283773107550625943621565080917776959095361802339436521608412771320051565349355769752478126385750806562381638311678111475081387324420159763722587253339144742229444684789724298442776470355264304586354251378557304260672394576136220914404039056312605682893060751837737930995509809380093247309578877815711620572297943168909680986637734830781599939328234051965034958013208806804657920098491626463053372253902287316287451903448466662288516331372532549375153413282241806661679122895422240625451363632622159623244462779565537169323932384963053582466145388875308481122183737285182569662088483304406517709826127746078638705004066115570145822444298544416810747802944654215677942255248696713923844736651663597000857398798014966624440167333497790778870745400585038365313076179627326713464666417410065019438449215500929772172176230385614158583853927417566785985526595595636616646895909326059987872939235524411227293135887275213477720793001346569153976845221906880685769646051629473692637782813216545401980777650062460700739631467140698582364614402287484969259284487375735722158862711555739998627547830242914951094577598686188291120029758438525695273776894971078952184770187442054131371111382859553173738169 626072499061958636328561390060144645286229148370023797014796390831159743669525775932638657821575349504707609972633638335092803586416265328778952632357960668418417159682804852217963079958425380631112933975663001596841263489803987517437689374830545439032680449362674251442054145364896593153290299851877481310485860528590570886123399218073896434791384385975022952045150181408711252131227125225116121945210466537371620819811941511528032729447104637689179773036388530524490378243526586604695427659421598079717660618183789506589997725215348085399999032358487573901371235170430733586200126261298456600935870151027916246368921714051158744793819402988186392329702335343799632854381929535993765969761016943176566591095908220442314427791050805778279100885290629392520396349288338883241292687796162255202773161091733554818468356756852745598606849303216111442768440957177002500257320368140810634694295742043883350773258511305741446947253302767305659559023222065553833478104978991318352002219394446815827508917785061215659559170829340714610975462721391050582518530567660094893913921257073259906772655907285136514435703159823630390030549485505338457965245423139999429010434836894956470542875042880127432112106619932932891297399092377147145110388262206173956543762414539913410901137809177742935247667525616953970851176052510869372590642105743865593242442771633722768629357078067599842004379292723570041613817200313081782590362854760497486861827954392006799875517618779935292718223008006242843486467893689625256130096309083617885743698694554627300820182985476440746571347283915209672484536468094423047290575163637303011109536817526611391418757605900415367647927541975821301450532981166497794567597914979071297287447991762753626716604814 5004218098329120424189616607978045898597397709183028035861649822194651260007651998435412895064021041624193731547937921409806926316791916587817189490428350215924139837173419373212623007033301186436298878533553543154309674831565852797266076653430084561321965824704265343646480751610075373509965638688294839415944180226756851572236686138102177860169004431457319743899620044346716205129420571041951659417747973132633860745981166206776302211686595944815800372043757950480625384156691538373942758102911712685281301679341449968126676410029160653599829875414775658287640903578321385173558204803342964839281606398129241770295590523592387065427406103799927551434672040755743630256085691989625278067933713759898853214982789683869362629663436733575127382248592111846445446250919447514842662687576984598203131292008841755785346043652046793769610005140315295784331928367399723861773117271335306832744139269036382445043035742673946996410943155750474768793973733630970099115322835151105720447273485884858045645906012887496533533236747812905952837268281540125692913636988123250371062970124029126141095991669310418274560648662920244855710105235768415223825618160447417912278411543235559887762698863484227858116120137973441966498899874617722352168144177523215495637883924724576837994362548631461614897210206875867182473506457717458956179011464805099360379959358248256953599804882510383914394011697501830291978271783534215195959823003409793686727206678693136364399977974353482143353420448356174975032549100323673532294891978164212223273383989502223320977748064960771514296282880823579342902857056693224067366365748159235920130898554733310623172110772258210829907714677382684260775495366475417840366705291495181170019836100309957070035328072 39998898239202470667050111592890682244854041198106570623569203319429065807284396994284794707139440717113499614595102248716136870962443412057953775646134021986575675848729968226425246152080426176691385796636193037835050598551233552555312067600254122921640334841618583562557398576668487036187811257451541764081971556554127413557394214117291651432178040896227057387605651688073740418954679412069138481138353509512379977678974238705930215105605785221412409502984153239694731383047040106738391860320521236096674433448329032495772793389156624880224659369801907101105772821444183118649780149161022525590151952011378432894938773869012999458173216060922889612421045707104476833623085116872607710615925506203517083707581844503757654783430101854252691197990034623074201176087480041951296310305595945607044500775490129186974580687228810371595762311055190757868613521879439211899804248664023473889440626136055854035658969254408828782061138056363561172167626097736964336200378488029587059924728921834519236089269525674919937397627291525153834594102066535548685278446337860999938007913993787296047642799616234736046088491017784543466420753705209574982465369942571526692968254204649982370364668087555599480818056539580660991719513867823261711953985739840340083215122094002187875434455360345904345713240670241449411799894009989013996011721195027916880320926216148299410776345915945263393677427438419012818673082807896155662356654613547041458870100745445009633593429165457461458238334808141432429476592021614507170273916469289364712779771620603948400189214266153877945110514681667384678729028674575760151909054926599711342755845517532556756055943605532644497469372871475418903449076788056045503788234890603590116610525360488883519625333748 319712801636961730704764768039074518529798541159914749851573755169705432484197102631702277658160290054805286845663096454547967915880840067352931469111535218517884806055123468930696557138908525994349064950583754712832350824341350002331110034478367531466230523510985210979350017342451077311451797684179954302690989279597377477296865287833433739590661535549659296656027597486960196935536805594324228901941920334540077905980376400381127553354664739548746527086628042650368954048453555027075398581071793725400693864394316231639298859165797137021054939105570156978558754930800629570286225383281692414340620964670835584091569674694676751411109307454218682282449734896574342505349065758911564399404348321885227861856108489558886148898743515520247696361067586375988530032871025144723106085412727064790367658553634308720557968494082076747855605862487235455558979106832063696366515149051711047285035630815345511692675699241566283030975769526061867822365381013464443374756751323030180358417728330060231153400187517255606011565681337043994322614344254807211544681572032561726281343655046510371624384248085340244964688876387161475419667855531194757323722671742058792850171084313444359196981129960523498743591952029135908497059021628486787641208872475052778915228022793159771129546441467587850235680003621714766567870275864883425371529957926813521138873996424449596081511141474184306124982767901836041656225567684499281748407327710599225889915488720288336963213943380226395387884748060022032003094879209725939704712514443021919929054548052559271339152492439518305416443921336193582668957352578022835715834589954300369491048481212678075174502221389601502358519522262517263465349049740561062542053766399319739298363125391076751723538503286 2555478437763787053711295514231939629550345177782970782322835135522894501585313791673631240185087752421148427807834782450283608312025888966733819630368882060602548776461511465356736140579868430519008408042495672079040948947257177950840431862075525949531639446862261940260254360754129316107491586329404123004889487547486300076339818727282315119636378641980875954373322074343248101588233174997100458152731847164468516585228852313189396243396226966258280621186647889547890286873426072524751358227918278382175850934649300350093835356542190620044633907424826241898917842962218317284409595056845568480784578712392504103562237896910271786759757403913346300219881705423169287827070817850723797391674372211827607853874646638882051611011292774368957142230504641019618985673736124918547607629483644555899693480816026054501035317269681593044855120584340863710530861688600054623556295357602489681921991969931312651379994581980199187934611918807077271527654040769321688036822117599387696016057987688573338146630353946701270941412212415869428976653005870925719306717063641192294916218133459455056882131926509524279186639612648207629396164965935409604198831156721001707886629621615704464765977141228272466790435310757810093747185566330855235302035702886659160255682277519500560662180285738170248058227447987057813509507162939474161975186477036956719676409591205235509717085915969183047937625007925190128846370890662862479574163059533148564704012568995926945836300044555080131477784512993634852232182818097668013417931354388882061358189988259455951413582618685504326285314966969032764900233394042006429816093896009320515140764475637686543258583225060821170068030511097011134598438838982211036939395507495998472731089009613922014080863506404 20426060443094155622280172595442106269740005776789663305104054311646029201583920366545992647667896341630330060615179133771800644297245038082219112070644098215950951439992925714195306696534997818671965037011544632985848473613163938433270190942583675772490477951751345729443685157534371905683395192264120379292508657919301151797156175010212579370742109591830365063110085735717052800862578363825661810815662504285413856388976519602612769124529731771745239642472927492929744221315478014496935979337506123561968485327347580763731389313306572301488639551890719416817929206884832219527987165797735987536418799344927746765372080965254749451130166035864351036750882580277889219473553597345604944670323317490732162578737111155680088023408642082923506420091220026894426305139996294733103382858739726871474753841944585837725133851270123946675685174287073962890472595047968066911938629818455836719059715469299008936033199916203834409357226146197399661683164521920853199663073032943968415472481997800114188080673064323543124973041707058153756496098522043682535425699195535412070881952723091536617080962447398909641655669188270985948697345523833142386580900096956529434781128810495673859483911203688763065109391660502962408910494292743291057534988507831146352232454057322815741717073968555481754623103603737297811715659147335710234574726515394236042121812633246401238438613192069009735358644692962546657426401759510530634015453137896094288092730047514857354041711175886933772271179349683005481361954955862354005927029603369780077347815222946114288466309797783363168028433029800989620090220413351081933931713359804173494333229848531477150123101079827515504566501112686385960442320945236566088681456809404011027201781456269314920417225404535 163266544643365856075240361989899108102271886498036334486370783463949606570962058281783553440730129704009177068523431710992459537318738568053463007686320201627252424387312532097553835179085847659195150295504792055085427122650864951543368650731778144394054441440553702518123437287107585730627211484775336116660253923214170455256878158951298740489583444068244378120003292468068253290639409901702382110439155472318707403056138175088884569333187086460134491912355260762637927667766670378082784857311983847108804678333023129916914486176353449156029241938208834633554166630456059532014029613730838994180233751145347475434661818478230674400499417184148624534589491741650352003410080739970278959439481027934326783201736176325279356053190646416804386895807307910976690733061704385948072293498921917169298047690612276349771304521022012530057817510965161476824497855861831066942563798796157726298741918734715026685404452871447543124365435940245379769837389526906549981734657124356605567988696665028528613189731480642810539366150942659786781753991950942493577238616286160138845165245874076951186965110075402358344856935104285550329531373347271094520940429762019691220935502234695092812189281665705610798829651822264766874391966317032808636115980105614881071118109054434151498044158902769832508190885532343756410203610271240148691150438088614117272133572052235671199594277088697109597174603491890579658919212763925897046298064559268672131414035496059906940722988739185956689166284444205182052406761391595673926289056572193300031257165034364197735097120470292752173943374890291740333830066501188107358355318063796224864810623630468197656393368199168777355362015387410213129126341039207058993279241380984421093750158963573882507424209922726 1304998423482152874153611358125477980326218812869220129028165977026260386280688382893875301980176133306099623825364364047210900445999173350551489629552945086212050281264349282083743660356376251054115478647042460061725444772569575772594140347463813989079548186027366363513715878583421437922486881611364932812950701570916003868373569400168944817754155816532894646946134568066794861659064956061197423178547281328573532084719199399286019898544700653967433672178076676466931707831181903373729455583475660715126537625944149581910926313226527004302377365421348144533707709721644195904435935267854643104145037954244324084105577725047290523684920125138762628852528484913399200789208735547757357997160495261322515248809340585341118317999024802777484594932058357204084592155010372381589430793315495582943462681701312347780712026366058150227033862993197656448006934009098934631638226088147758727750308509085121788601295659591940736463313221236095641741606257356617553480441113296158528342602283451968333097021708808945844444080761365783143019156526482472614435755555802036627634088132434481963379721983930537340121096536171463666419210284914448318041926110282836609197942459510907667176069367041685491570065612504820563213479150189291997928617310012395004615572965985367125809351586579750609734084809725868063807423025028344385298988337392856607702335478846042013737641043004531554908733597046685226237236138056190204295802329148329678524264839100169097167036381997134346655514843401401961528992293175390582150954616086645262127295770137791907232150336912699183971235868365879282183550390506193482470660009390658368792441709055626325930190910661882097181480675176076711993413887318666741910347482819406983529970907193340052311725473690832 10430928514811473204696791579475222279029890924849988681397598045356143902217302626561107942159825777709162437041318142978918009350596671764115869851736858670379904415296669025907477519000907660331302172085050879577518102626048466542639777354965853613155113546700357361649400089185414007702759977621965727195057449019112283309290043990629410183353621989805724431387379227054428333570470583786063570148238530644308865738681826237221969138051264085859789255603278450206977377329705401407915282251026223869869933940427942658512200413892351825006112644341905455718076974687591628459639389275945049067353845114094713186315611392003205996060607307122507576168478656215875356095038200882003809940261498769133766314381355290886255625289986881928394514362218778781868839584050111434444713213438988069913211743820988673554500985910916525962642411983911823600142755666038424060734265782867462097210917733872306672214438875332207891125290251351859367563775040844684886715144285957611568548773592751629071788978486618010788004913919661351528221017416014594461951907909923943908686186924321460354357945718054626108309595915809889060342158583457630723640918102246109443041382760128158408064855819759144772348955704372304319796655179313620760819925260156521041622545811117534436129405026828903011391478422121703182804297749874914036908203744619440969872064413804913987848226236456716459106737485963941253251388178206429047777573644026747822132982657203193830121440062517885158557134798362297074735366656655156117068873649928640913298482608071834557301835448269033152240225043804667685967197784467269153885325319656131098789485437769383419168232497361180340428190565238988296630576234604455662430693777687857598741460040583756900565068718371672 83375057711988353362955310769683546089994217155352445461955381155517350655055435694941770599265296200335396367795748566898501821297917768805685646799241527423242375700074892166754785436772181824255415238793696596088569196912274148135106095595401165769756935532567610722827203362799526533516187060071721896040340300037476902176440847100871027389647250406387312843940419386400268801424915223590326459152492168027666482008537332349259498326405357559675646863973790148584745266568344964417459485729547082485037028767784895548305933230176877481621044034122147851027480251968200964729771744509350824097374612966687329496816263661639362997884648590885966556256498975804797876053062477810707721049989852755129910572106436119172435146489124057658816010330942823364224840626213508477502255213315841867541698652093309736083790114148214511797615277121254373107912206898807125612634036236291576837511934107498434013837207194071574334170383405185799992499748933377629636403520341131538744657310411732176039037974552434938510314341226603181772847553304405379099193136518222989529780790996609457897970268245719846698000689353341654607994195545150411889217255695155232878802256198105916189193338024189839066939183712902249732501525018626037398675955341218769096052551987093695575020865938423445697202960769401242173580453316061037286238350694514489335989198657486396539068266177030068460274227030106620097473284305427230365067397811923532017172513661338618025572990011190280098683661997843816633860114372049134823374908810093892118362458739107424607225068494133891509396987320156927274073285678474585310346978589649421799681144153971529339624486931484551090199466196507192916234318901763216069359383930078842758676213345163387457297952265482812 666422301531979512607989295843660686565546092104626321915152959382128232801907754384844685963588168421023171906710432152514789056210995159773483772958174724307374743534617849173131087564001095667356451637361120923309160552609098853833715335346322565271214495946255940341257365837886107211559912114192824492209106731711103723621109560560343952256139106215077958667590056271376667812565588030562272089155649070970006435640191366527993608908809377759390206744963595980412874059363529199634861397028137400549246197462568038725477600193678243446609521552484820284821327552784633023893343762226432804792554842494139496930681368914623640754007110044291193224222831594006803189334737509292704252540253677534091447392481833467689709979336508453229176267017014126140860420277941975862226601766129042132650814997861930615556092249136381948237929585526248672909740546194767078919145419031750996673411800259005137726745430286613728729443481118206989117827378904642203874802895422200113422542283506649625954969880322992049869306879608122157191989125725508209834367257449033047200630713443903650161286273754217467401721626483568102267682856320393785640335099505772938104135661555515141192234288162663127375205064681261381221077617594242065483190576642126184890692725401401473719551344554260028018753927591104410382739255120889449613044598505208220574697652576834013190411496439366231089620147914577045915357986125592881144965054763644307602715569290493741371095944922770839894100587461680500363061112453973844668193055311575521832198332614252792427853155514158321432209407343806960710115416462700182936179108000485994570790295786435036675805979428634740473487346885216390457641758482260587736754749057537854637867872582619907643288811892416348 5326759543400610610992532367458434196859946612302709886672028772357336147742099789193075931994691609322270009928535048442171072984517270171295846054651967612357451340812400149227563878251241158527774935440425613906588607879327739893551003834169401622192840097333099642388479490846724237820591044718521622493926703615676995985055982145184841101842737536736508113214287336672235132198128314439454490726939625175671730780683336317502194519065283815684181812889473987602320162901605901144282365636232205686330467845831267040323086119173817922237467416746596252845041927006365748511075956274381624116983212288486302845942475972865671555647743695421844080888271886847211221788826401354197551803971833743329242382587488822313175266649252198835705196994322504667145833259093926542022196150715533374340638649539870297077864014130391679769404633823478438562484345512775804291780460732380517314838371171390169735497777934724528470156341280276119247766316898429383727364667838136142214371425114855340309559018363026733245306674354118169532447205615900207058751768492868734753055910470593273314931328391513758834759936150270896192676971567357585045530894439955467466005958246184706898068632245170393538346385701135826425968797020678845787568902662896772523022935815713853778800640091643544655553944038958359173129787102985120872024321817775609105425189320998097439109500851736639286086153529598321737140692566398190731666937445314413715312341386679785464482935431205113447933774811890297566623109101075097749687351125419108586769559226828173069770786124101229926615343739735290626781577687033529580766879087257321366509076204386679974193237623887326174309350223611981944816150465947270985906657575997054825546450511626955208985985900750537530 42577176598261417711742308254722159324666752381051835622338711771467508698639264816898688152689463308894095098286504808400271646381336147112921195472114791974407028982357553818357612388898727716829021454864544305003663233377383336908066136171449756357063056015949804194683943028304073925095714171630115364562464596117661320858759558329056363790800002375975155822995106151867026215948526835716728799690705758569481622752817880713337439198090106848770965352659801630690805896066659476120529239922105492849690034228877830352867284713415133013856885456188953958856492076702983909765023703962320951308905566446704417617808391707837759438788779325938090054380793200347843395692217982185696885553566752612141243404588843543759909965199524058911668258604126660790420395615156024844382216929095991360055550052868624961073030682421886401467157093014979817336524822748179978100124637029969999402170823468757760764642421290970512270305428217032423999558573154571908513671099453080958899132962700260445266088220811625808669681987552859279857464667774151042020034451341748470370439143340175795273416962587148642717968900458298784462957503315072188581929639619453917366184330815312097826788718841117873654787849628622227206272466609494626075563381871845959072560095656935141451024292834695920115892904051952782309729091376682503703510714976672292393790186247094360964833329635772150080272792872426417705560121163496090596916035725854190316152688578918995258104949303460683315610122498007345456058963348578688237697156823720126407707991924439034114758115871134741975754795902909527485755358979574872923889178203247067728699967786045142936639114050887382527614618869205794387082059711038591563467556507758319950217361716099460128381201339307656684 340322623629616302334344697045556457713485306705701610564641715679359645940996574776215230151346874473986417546489867302321338478050518524862159322489274701925212412996978073925515653951906245544374044510564369819305741363956754714169393945937942706923005303817819413597252166294914151434526377492726055466273067597150079614258107796199796146907292182182327689992877945850609721742854078009148390427160538961671245541617174443991967576284210057242654701657917308920111742705880697441037007132870248923751240555752719708613994655864059889095058644576327476608560078106016809222207177566640651962836254461802941848814217494199626076579518854693294537677329569428380717239709254120459119721601487469191505970442888237224717793334342366157511683641090928830430322746262025180856486161493451545241591641797018893290952327402588179282204778088572652491508714087750358954725611723918691663642696422319239555042417531502805556624510626726754388111986050753780885932511988381068980969031382615695398197098593786879450206258987967282706499581892039759376963327572380989087911150564170022111520496608461419548735856620249774077615627233055088327313128721177397077266835419752321899617445152489271354130756923469168462881873151288644622412959976393484939695425555811736856314030993046618082548067500011981061234036723220800984830816363802706380165834584842122226261512728043997212898234711821688398947571333997894893805389511740291349288109936142358694876963468937039346873608062435745086677161705009465795165622508555780882540929786139102264367783041006110804180819094344563370470804239277952135310072919482116300683315205612407424847602738081409058635663079792478670948258137281113963885689908167657074354429909982620549196634259303363976280 2720225940239920411903475245330328215402515731000420138206004791543581715322131086783248348941232828953705735034662507982448588641386395576101413608574946442436291496308368962178811209064638571998492545920284702885825735397452871893040798726428944466372197387019135087095513486286080065541696223104276268677510695342103011248174903920290400922894423915300888477297775522024411727346145761540191525156644992237823558825371327335178796480266838815844305648144888400020347779144771023526562051886104378285567964252491151640171149500999549667187194108358409108743386888892298962214293354554790619430895459152513302980578730881846487728385206618193588697003732093744718930984360952510520080923520082161726422587626537213266850653320835876720171844375547865197999080922113140021381784726570791899598638089649548614091256690351554846880989716993487617295873544097434319833465524260185880985532931693108095874315461384247797398313475811864947174107018346600644920289324449379682176354867736003619620184560709531423960716618107442031486854819237884295303112128895953206375505231322670151416995304133308789672458638686663283652634013051572997392360184872889502441305572464999108944172680181838650010483048916180155921512155590711932291916885243122399312510827690079284464615641737837904543277688355002693040639221171434331132649731587708812697158647440797949341498636178394442612986716197607669660607045044317858805749277171586347762960852387445927061104285426684272511748378102224121232313959308177920132366760817831877016758776048061673283282814839129400046091282833652684349129254748587940450710593206266695291450222289664874863225751621532468273722121759251210037343247026159158284855885029496172748183626439279126678285233341979768765178 21742993197495885305071548924147965539285417183819486426165631688952112042408455924062380620263045792591751315342424665920314464995268487883316655224000773619786601064130994188309543078383659554198060125018101483534563610973990513354014482620386128965035223830928865008512830368114263238898052477883228970125976957499819635061433049364116978384654529114818025997440969504143763907093285163374749052076301658505907451802083284002080050877526368585122569451738173676401592608134145183480743312541610113068533343493500983254260876886237444319711215360041602629879966323355494913066216521520849078462231745428774608497210287166069504556784239236965276818831743283800481299111264292767059309775287372044855108971252972235976371339674750406365432831711499024434505999312370493585475976208314648798929613366108253710351688118967890138521719412389940184499318366087660696731034892148095572894329473278828128552754834995246974920146454192829771387482211613314095919134816995812571334575763504029967225865375114862383413154939732092897520264012534346362844356550665918601119350768553760801017904623585889806926078102200027500541203867086640172481852889491487964333950042683094299091125222060407017012333766038501793673871622427242895399228016072006468121191690051808765385396091513452519678280871833147513010670555987787601640915096518888517139295177794604097940392153357285960516904608970045947779555901405997255869112760185364530489035861787731111908488062891200418108454680101432524168992333522586267556499027922370448588490290803525511875908058156221275399870694770041966318418293552869147832930180711387119002128610855378633611203859850015936963470732555878093747763529120764882506867360266328376855062540924195739143921665079233195296996 173793639115676354403662758925318601617571791740583418967275595095332864195806218255298253228066806140367430721095474114517276296160941536686952037757215512084850537025700029049715999993081175183130625070381233353215246023303960315001754851200497780698211779472881785207187549494365924453505231702653961690976743970388229082645527379254958961275640393610895267485512122844694823846397139347797962259795818307780572528777294428507822233061409394101837884537670355027648617101019092117619241092050463033722510288921606297975626368834947932065763348356693031164542916040210729203388110597411060095312601072725093212219719765079754839603471036403819503140189796790469116172650488955668124856729578731315900519627674599657203505875170341807384813496431349672129557296928244476474572822116876325237267234212383594724111812201341778592516621725041918156063435192642763586459639105908190584174484636025723998440895192873728374919496800661960360974114676552990567618146349978972561088439772021539246109522869992519937509078478573074154691547048173631991436332738581341950192955904501002103474938041919480557692084418271312387657587024456148695149461119112107818360050587946929418194768283532784083312260861260209963190132839401768337720440325517279632467163648526452584687419888597204870580749235447520198497265823429876118075685468174401950819497174308558397567810441537790406744426229838364157342333823956630122027407006851782806446151865109129365976798985308324118826619333188929274201404794220020237026024965376785644272163255290498946150612998228295528025985658065097285782876036910873182453590412792871952074608671596259126798598964134892954639127580323427141507943919838260253697264497809625822742079993488898848776814041769453418338576 1389148323095345744849166255548646441134166816342782818493105304863081844001125990384683079450665270511157818369788538794980297396087363646049423235480325277034997679745403922966563712304736003003159896216231628254249609414141007815195510738586936645279721129963167425191542654139753101316481033527651799032387068327956152542060458316201425228418074076343324621629456388074512651528585032683202498556796115186976746034753281640172330846903163686555136416546212787813411934338632325407138058253792598626084682105708049176812517094815414487228991101663331527869908620461035124712795402185028980264832094620252458674085909251732982317915779931705132640020191732127698852278796608324920630136446385873733741573048493968437696151406425584987961250878945662575985693042058807368379972817131891379462452119944600441911968595224686950386177082263358578937735313967893748622345314965227802954565213763211892494011887618846736841650820628362493336292404758486650482503532304877945621509311545112024410619138512955763414963913001140507615473391562909696405993835178905729959128114220595121413687744853709777003960444658522127656554328692730927851435292653020045617568237406283285741159623548219748938277065958395860558680085187716082500632836705036727568274665895769743197714774404455011139192483376901663127103384972306641463114840983264717533871083492397373848706409911403516964627042418467963979587719222168773441527626922637626688781922512766415602009425723801036820457542188543119793517269745456758610459631683714040266011675719704540661637209574152832326887930788132351420711917143264286143839468360987771550024442484740837774080079762114734497576130534359522202543832104203787419839554908983169945135851261934074296777628949992608052297371 11103593535941412451341852374193746786035358377712965489272382935695473715133702052778548039021377209942889656455419930830330901535508034962747608314526787758046555334138653323432734898706233565050551018399455246694377635617485983863008019599041312890842667878935578683746774260421761805303597689155880189781947705851808789410717855061388539299139371197157659932260089136920812218944518912813606580509746845035918049265020399369692737124746243496450829961741128873942312816480301259526747238791634604492405612780654981071716371813678438257365013060419916276132846074774755645841256706717420421112706700273110741193166948396007860806071584245873318832621228042568225746893937442717009477815237012851077525702234303758415297993752149014881152978883624118688011043153273874329588066272331944461809002567153427071244767599035182025935678340161326546641622907240694585854836138114373684711848306474274494561284639459903742633338715462341334933674267141431177270549666145599032057078722955602065373148961207657670806238187605177516395610256022063469346658876355073160390598409963606796975405226223683983242808982961899306028586573302628301268823691506118507642715906263287864371762351368556940505410867867626447802886865369751573294824416098050860763387537209491135383558410463325264084066984189544237774938099792637532435667073974260462161047082229415038709630942279017632216530165374203520043170227825340983062385882801209888799717437604504773818693672029816319724452590303950728017512407161203914291413527002655791168650959126519335151645795602347671895940927336083662881195742432364455581835892705974676792942144705450964857051013702928735661886775035822801416730441300835813120492105603487790852792968676304353731325555707464813653733120 88752109853962699921986503228434234036275712199401116107279175713871330745454082039130046427492958046231345926218855033246160811352324898319279004934775124680377552884862810853866438702671723987216645959672073454693886178503175361127339314082543943997002885056708104774073243498913872542797818094894163752975786770666870307314264373512129424001948089424156424638028906553366158050901681217687707125840191487595070589491704432290645837747650255673293705488079472175866883668688008290969397277371617390885963455672724253481884532629921769871814085861176537913153780587434350550225752350735935755491810372531627309873995532784156033826506218917783663474868930146961537764851261194429941029248621573364583306178186022057099621745620626228293944780900856339484241575048698788056741346023706425948007781423181304688951290227650547507101723303079802732913796776453404661565484164482695292303853964578929260317632456456511626984852533318291985876381779227973618674956310892103421724820015113249102823913869975204330082642204078522468404972038747164237848108837240647905880470859734832138148031321100071314615739179327334850010081526289002677276191392588793578265336584422548438292036725572740542002727834910618078799956873235438942407344485335334457979399391989617507133468424239497267093169120844671449919486483777511961228062817622214008449013374201859218801810652205453668529778441136435454677194207092182111590331345005124769169945441907169093629011413578507773294509858871024274273129643726890499280634068592463487629803063053720757809966273323045047080587751431500333252803856073504471057170938414571305533759484665143233658294859457443703940567708594392832759948235231310746419395834440772236520022488330562207592848394585745707674697590 709404617410656216932880086445516778989295112764108994639857642624195620985254687186371785547911191250873438796627024690029619168753371108582930834712802487166494629287677526483616617493070656853410640560336404297067432520861896827183277554413180340474004525800918271241779121626760037125158740033185760490202814584371850554645377953396377672862745811375771054829627910701495732113013252641241149246097785871855120268098574679688416417950642082282496785130920043893990605131722256884130341513739034688481204337526562286752991955174742854174360081350435280862550525290696072205157567756615164495756480255714245381946084440097899565842107780687825848218825368251928633109849261124007000464339839433204582130641667480953673779807187531031675613497092732395496104984686700681292978652447535509831549491918216898153330314272788672246742823855244869059673563757141239354248070423079961190683975037414634668746144425263685910814075424455480578076055361568348944421616127053286299780533663893990702716392185957287710796536460131584069533337080551626390005765786624366240534003151999584409432358610906672258125107246618186844926254782013678088929143656303372577414173778526725676519550662123433371694347823041412338088259312496991723998553203098055451897158192501910342314339438209300268795661095796151342942768713931455211410863271305548134538888118839858707390268901497990171789973583868281006885184809629667174509682895658909211024121613265747200364397157405140555371552228533452300427685449030740912855907434818404872862793553885986428171959892240272231271203203770018496658126469478301406588071783704879689044577384408142323619439335161451597987603474531315238963350467874665117093827813595966034184146663654887243302203285437069098146945014 5670345603459863071161254800288244615886898053260926702145395880286027182319096420767239048147611187000988991900255658141012908667097455489992896162575700923740851278257457806693030429571825633381142789211542881877818927617709469988856093876049256195005557390574944075277934884024148605861043804312369946724211510217187211421304219330213685722790576103115531810201976717100408720167124898239443970121578602486612766919760115795842781605855400145778663319890826771613353069471192672372185731686713495007798340203863220333653179017465387061170037164897964592559827132411983543068527068914677963381881547293293159868458703749963232970147666425033340153251182500308103975299789249377799234188801445273285287949212043942561550128903582867864501629867464042170165811641115324559820629144172640247286017503163205272714199157423910915365048898121624388045240850122259760045922398364257655124456020679441256416898567260230034080943832757836610264465845616959545602186340361517715627086503011682537702348683933195087609491271205394187797609140341580048057121354651180097594873158167891874340213864420506878279963573008448195662836993078987180089410132468925057213737321354719108898806596341707421053125518398014716706482089037429295156404645067540039949466409881508841640055131907098974164025090459792806713995017047772051180642710029272223459005818922325847124589875011429132646894335710407569122093523879614153365833090871253252924588325686199083490004875557115569001316391883002327170563250768536049594684755313421281528204509241322525120608317217031629782728299261365231508267260631666375272062680689804929896891875593168738693932790851065708667130744902220325645780283952919943403797838290110850612211012375853577452857259881016463824778756322 45323688082971001824156433497824093571122527817382328169592909690947977373943363350276154418460017132809458327833168049789797219503841454728427842962716294493180511915477749299729686019864300238835449054111088002754366948265752925018669851985652567298186465925096311985820809664310647406638086523099395755973967045033548593708701673841387817265322410627758256228659684499520475945598704351839869654238013096200325257419935203168973547771562396974002831829269744979723216022109664831003275311145020866811964794348529324928211955325172955995564450273017014926757083398352445128811306460145170406606721314464483552767415291736331363600265391609677421887479556175371364285331129034417817855555131331860826846538611364044696541090023048543696698569007728102160483770536592746017233496587861484956160634395843858669207599163098838532602207402703601586146815566977880971660031120145347312632001152036504246036103478499966926649095027897834711175849537101901592063824840843322730401091050655511496758167353066287539099062909943019933273988821566339032075881441559926901490221194943034083744201649992101694225707576697587301730350849710472307292749651662302033906272652986373134009392711273358157661190856979623322586008934763015737532513867530908697595463995627818952486685214325948066724402236685664577623612190404256298509795534702938891937932789166286291586472332527444659229272390364627567950583141571601959542275885090338676166768110466437239423524886485940959656115710246138172945324350915045828393446822563393555791351915987175846738906894962491943153686770637354607275874549962881490991492074252332337718998884799869796051038609773542010295966596258418708012836711590226646523956957149760989579225029500437427862681864651399764247373778602 362277321423653841796554408164889126191657560125949295626115717076400748966647424912629328413527340459756742726231419585296900630817213128892197288710547584386943943972281681070741899122084745669856994973673657414192578818833482793802397155631852655516281329864845059786436657357105553054931623377009196132780173976546455536903198452892594029764490657251059152027273228379781547068532674522107070851744208308127953783288892081941011615730469548493628179314088171264987606903052356129220913195594076351126116286858171446901022449712815922589369173816974153705287612369170628220909598734552384657411108600735548713691495423498522023601701487039907301728463905066890783534622150479824891055262827524322673745162867970732624972219821686706743764715637839392620277650489296216892708150226282930005515874741128012018347948488576456744618073018687352370230166005694494691912859195885203739699234420101724682472845848976819763469786935896208534201472966531744077852701927035251086129852448949148053300915322109361822513651029141251806996348798267813216391579106285674209602713696462661649775396157137050832545210386355885044208362814386359710685310031300877551970567067456648204458376800906550022072729871686541681562994695206928136856669276829729154591545268133283315467076790210580420805278382720925620666304347076351457526445175703007933070361929056006601212950402886202394681240844703117219653368594594904287123261932649338306235103518817261606882237971171665114173719490618175763092019612624502413691546471380284431475988870071583008352438968577365801331809292456434196609886819186151448914322923626205494751271601925905079529053672985053592911002166393065531758372179227706918690584432649811587349841800192629053690810271678970243888140870390 2895724544683575575923650573927388372501550246835837830358224902477767917958284880124666867759869582850444398617390279884043920566922560233434990338463961116157904128187262682672509674302569886885736721907401000149106578917249371951635586971989431397549587223389728912640134317610123785807700737110884966271984314085391509836959197314283542065919096122056311851504181737882088048450329151516496822396295932264504981067302203406180158604274018950923523915735838603674192735692277254549333100117927110833874531711411997760413483884022662673449457934517523137284245251753483793143255301434303088587881168239139984335017572615997714161852258130734573622159527800748535240820722339613461354800231515244714693671736763809726253396432782258923781309931909886101687501035735220975050590801314170166849089954576847554462804805188045145829691095324100777379034972269374123274838087632493604022548998400818673789914009055676011253044384815741209354390919273217711726617939325418769753435506781215668064386414444843623936781241333758873352671225866423664459086548591021364083025833290853798144333056008722865113174834771540433829183465652540433872413620735467142892044507461570644476700023016604153879204722522926828224913953567218005610161352296186546645518945139078226586965132311665565309031883775217343424169526763849155591350295048009056141667980571712105628284867612308016021379824809313176663106048384751030590304353191165052512568452240101680156975519352735263366706521294616429956868841262929667681669350863185461929884086350324033895800773722053845768136618584254206581832516309191732312977535117543722826792926950255287768388637109564160521442317909306391919098362884750459272729431697481244401728952279777597006648735543729408579235048507866 23145871605470111871597567375445514243489912321472730820413027536141310284776813638901456184800620445064633147549448975336594484319206454870526262799990448360602474275281701839865216264766050783452673473667310279874728625859581282313520512418791559019223212896890602908946463696989726410392514199112974667943987935809618967088694433701779990354193635963591036733603681305864633085446557648573930487730745686899663884985832871422723972312054882031682685924771675117131761952815908448258350195360890302486107018055999251342291587925140846602853756786579195085549599021534131594078305213010102274809110267234054677342129921745130433721121137492115774586740832467538453292358464843238550344897566122031288274974836066464594370005199893577775506689556483172284027232543869391158650752776098954530105188959639033414200885859832869673554865381838407764305086687696561591560891367039369504694073344044809527084676511173544524196830100214739418248348464139286013112722841174431386272767832978481500725465674843353147308179175793679380059321483447131094609181211566368434782347543837427300659362101815996815152369302041959034642737452176509461007248348407289948431750969017614102419226896807912660640847697903419024050403941120664922860068884618183443946957838670561002951591020732437838324788888506731365942118476515695054623119461932169905308816252741081407720074075981376454595064420223785022938015729975183127646346167648544020926774216261779690639083517989684600766778528603247433760940942707065257422919141564797070927212364904214901882990223843144481161172739127743933830168165099730262815838481658005606673674321135313307532130238652010391398963402960933500545166443152998807241838921014718697056211204351610123931257196591210482291531980127021 185007794105347510388208188646843479616288571022633812292488840682936890601656812292442218468566352426697169048930403475819408258451844940947469605537075971446839386092458854729408635060858093808198594921818944846613075354375330689554811758300144505823331442883691991350795194418889891352499046982828065314553258833604894133518913312716871287003167540137583208558896479316747973073210539177437843066667703660328647369766140802056505665920273462283327492188463663555400682405679497024438839501738824538628050608871328731859336325061941903408015734901528184977553005157048415926873074298858735118040724713716587085919009485868297990346985397860103829262954004666671543211608116826501993005789551595058459905725266009110429020150628250480053993742397525869899964345340122496839389955461618406050872720297816567285338905224570890608440574391778186263414189252528993580286486866373324896181307900869716987479559247874860067995755865577359140263460012559607674214674673065788991668100906346043727271447773916301525771985239881779701616833526385413263938963598606910716154368688597736558818484962795505416775636405502712653295270110105594184679417981404381701591635506855684294007274545384904805359261746461545928392402896369194487144730475280425844052347218571653522405560688293341281079277672416753358955028243026123454604906350121669303814470723485190475718615133141407296201310964848230371877203192963391048042291689517156325843820706988338914454605636860459265680253949523028351155413493680636289385249688827796978837386248969234309526804354804270412174567203627556279414906718215989435452715141616270414836890637395932403892833161621334677695585731997018308509092466729536033549641245029238390090059817774950469067722672272304098135702154767502 1478790673839275422009952365212316782440063006476969252977180371785077091087658105026262289045869145163168217723170799021342456149202388166015610006292575343682888693683836384802968424172599288825970466061192201271701498361583792562558888458570299136756530999984943672633639336010809860387622619264190180264126110367221577906852952563707688610923399040502419249428521537022335809182365705238058286567452295452817534675741048846677544925965475312958171511715532296479344471958898812396515830961371869220345457378912634664416878246800042153565212903489723106141886760183164323088828700552016208851999609241748871531871380249494089396056965635016197147353721556562666714389528481738372379832859819492293645088810651377819189443387083969110097392753142329520503352877600512874636079609474326936503881438712322112154426289239590582936867652938902970117567440774937321978567386978368480642477865875708176549645764250196876889592442884617977739801329384564692751213944812559431225317826710174692714117907981468020792495821674962692299326529681793211624255022656024281091729155666973278175208129856538454152295825180951636973363120405953670927576270467160710091396532805712811085375984365665845686918708737964928450416128550295587287468186969648440192341969789626259181978352772894919394433342945894582383580433703187284126308289437379848568731005705839958400294794724258299268924201951427499968457151643816735495876056113723800734166644015724953266382848180843099436957015663525819987673582667868862215608909177988385507472107171871672807215021296980027809013881790788218199493195509023204322561661504353898600455579861178043167988684165790876416667455630518211480723652472352997935404872212562952251208626958172773894923798077596117215784025646232245 11820165939446057334710790349401306028385006542853310424408207417778979601025278027035949821390507209713894058359350176614232421885341690234054421452109997152991553051785830861024641318406990373657893388430730818739722506340137905972475890421174939033887519708559807590048654570122292540076550109407066376566668888263406608612974865272971924836638344190725087300170965521511991018135665248672286583828777236903179694624257844277210972877578252958925338687202820132686645631415178790069658703593804272360737847039644809189730879305191130302267928801412990151746292621949972265094778971831037962454983408139813508638859455202084672617674368656668955203535053711768116667300408173424473047453886088041869738740262874455565288719515963080587830437435945474783564349350191158580161852877549423400403614231521724180166473149406394211764155742336135066198706702475934052353466599390305771509430884721902922089589543093113453532204490669032490902112418848730569893023762015052252930809360150413707810145187502821175360755692402032154144495926726256628872581802082759957187123448882869752316640320989887201270085716378306562662529089486712463770176229390914761188107563329328182104120698840081846321779680926732251593003213343608870135859865357408489731758969007893605748728147319170087011300381783414185223319290371549502867775536953120816340955960497721497823552280077349439573691568608900396705150524821550473307136931869735881464631448436564907720297518183706087949607551351431175288719123951233837109176561224391574905700541677851660028613864982566678744047831919093738500725566589628317774203199553251202847900920767466140809559768433675006282502182682173795715907255680540208676442166955342084307459705979382641279881197595783595707097027019725114 94480163540247299185828110913810154366737001142817585671052790812540231475766347735521633430127237326516668140393590612853514174015928225093088019518338270691087780430321490420530014704622853159882508416725865156046324226562139777139975224048774004154025054023520818092258390144092569498498528037188837729004227901895585689700817150353826862196257161747447450325353051534494669794304335572647462415231864936489265138084831606654685395813824759306801688221091464514822570523241891749267811321177501901318358439611281189331476337402783085024802215753797725724184923320982792375490965457081620163301878744532092391387698158897850716611811119242053081572452215539824149544667021388515777152862308429432115102755746002489306476958931528918374287312253103816762481417487055514040511805717878792009425435730752206860235449317300720378774867864026270215698323070852274191629094561571823325743097632807599888285768960477167245439267180007502237322844452146446441440636170102385116209434966272342641998909996611553384915672226176210617976706234133094006739185418864469279910509864907506302063989060590991863717045421823924271083413844240801430001765048758195074692033289836516396376450502803255116767676184729496890023459426640941268294784674167051832237995037757338595011257206901210395797075916283489963923883684441986100876279971577678975039672667919572443207090744936103148826827330066138348697464607923348785220359577213813520906530507843119864986964816291797477995944973852864410456642298891288146282402154550228294196567032649640745611020282367820170338285045571121828073879254673794091983989811655591477608993038261689146181804515914840463348778134605242381476976224482358128096608057930745618790779306740375814373834672435212432751975153082535761 755192887912021162743131669881168173568115775534916890100995970693314757658087773257774281480380718830625858067346225962993735030333905966937718450170126498887131256614330587350136878852261283904860823118015830501052489157756858606183811251750402541465446041525445222470033046617673305272252306763687407052792089783789903347716950627563356387512209837282530139887816272463367651974371692647368125108171989309942317625501910794713938100321890599511534350343374683332596953811554842955358428395767717409135395613849568747666672997800217851651352110519395149957422659077441211002854369780232180758867702235495786209631060104664505813045996161850743709428921676532300030943714369270855241695161969620662951910525001972461929017107886747633204876067522547758702727681952263298829617389948049707726742792567339980225198901491536855899634158278656641592477091736624985950282080298728719898760037300929161415925224418774442677367837104152087144994995320297556434592193865017349708150681853385411847971447161615579818028409865761598181043973679163024949031623529896830147603019448467204384574787943178790941972818851843900199277651151630178498852899569425083864351547689855523276919294303293140021253719166753664234071516543835620432932745431872044217578317442139995556810654152701245756803802987207404713776767966328440876231357626500057443685829524629893056347380112131792997033206891897185204548363785850247932409711384886629718651418451456467648843022857129031580697341254533291013830927268342274900616920545872415793770880708104485903200255975773727344309456074971992881151035607429503036519383079230803428120134096479872339402376979018672783089640303603175474563115969700565213427955012735076693307544069837005903701905305345602447347633328528427612 6036362857701960414580441956172178498421970875512600190958882234178280420262481595137959104521774751378612455117163155784000758065121796772954179941105245099757997377826316892887422865033902530292195968894983256269475591037799653657329879955737122074958739663862633254935832887467598240697284106837529113381934673448386590605338017135599028611651724886936500370953338442029381100079467218923252804437412754748947858517615756548828786529952012623092045067014196094109922687603708288846559658524140430370491780701015272228793035674228725189081795125938406332547085284589603930734060821096572045663266036718587720209522187050724882554306774070950638508941692910531155396118639593233651642141160052066425806921464474166265715814684659026784553699058878061965295675049476217974861402820739760754467964593527693212017667180473189975054406235948664498763812614328651805230090875763257400259007535963052137595826170577898728215046913180894134123549634828730233729089158742394091082243193611041802959388678103937226432555647920222328683243469900736730248118234482603559017949016168752208489683936996734731608350465242173607161083704932142538373691140891917913495949073165621021846677208504095346314646619789941039267798287491563510388478516195876023584443320417873705758239981136379475684961864702381326150951683862640905941802344397351488813012910167303265136720434197871628814882064816399114354754831393840065059585436629456829289508877448743468326529875063941501164942692620503937654150413558193722853197573762070548661773896532784949813950503155411115774707669033200801547636931756484599433795409601844749888458113662347364752255202161274719338463617930216845608752437953668993509322270580187902441859175661471667264940879361574528223761944191795032660 48249517730960411691507528477547904333978783778116425752736483051506959955728935233722342052931213775800117093707530720348798866622250812367639818494284890556198755462757746722135407403153890210035318070196544283734524746685786170478671126777226873381944694088585336570133334878453930451938666282656078690250083032637732217680444226268124466939048916230312730223097036932252115006102866767095673384266221303732542192065176636774695508598233266244826236957187439117601562505968574578758790888637718948967379781239131489880500244406853946945453455791407129658423838233410507251026291484847385229043806131618755987747425944972160333513366617699968779287640341671105977379390678557389373507256457867349732636052708640236232083599729424916203792218891741222656027972251406991751916440375833774714919086464956048940257895678893635875029317400562179833695726497696164349856305390208089751512605981906379164861848266554911078628727892377438996108350080476752753542912503337020554506927291883960618191897521741236814671827671871615808868038001335932610203905952291108477143500487422489363885186925020882341332145319689288055202116736677103702935517327985926507447875238212571410641559119391672097999479664023303909347130307081655217939497160076130129832598760286171876897127403779428238518164511859291797879217081024119683263350269999404711383265156745647190519403804438923818855427598361163856690041608344457373072879775404289275664293095699852168608393766105432628964917389264403936648429820110207609206325214091812646356310837164069732272934771672698047536046273076766359008110422816183551646393040637062435410254831467227735941323829840675463940051993072981033533972332076043983895549794971601055716331073759627685061313343690682394658878339238161135674 385665514618207852656811347882809834460092411333684076403092296544240185244721683757797809769284353056370254473367233577617384844414955737820683357486422408738608427454521393335538130812551216329930797500494626139467212260313854042274630688606870188569274305262437363652237077074261300366284457188158691937715697584970603236534535016722014994377674163756194133839368862790856012319567944050582065729030638534328074307716481763395027816521404704226263299304153620063135463334076876212021567681770436113300763574177465127113171343382439088211736353304638433763915012065477027504420754890165690121565234011527044928436466065109957740783866828197684915431255275683121297728775803675251942019078127456375960125892765574275044340896252690670876439705908415480747913295060578779767235274419710349773674175279948575199764830489990740588095761151816801288345024404547549860040258731868823464571010283687576554807943970475262199648291422904409234584276607533233551721351625573046935514536943468405048574398253071935212594379070584710728589652112856476783885299465192342103199686765020448797698336676818620632443826394939414028713829285402193496720468631521475805348298609248623228875139388896864538843844922686717485639361466050978839402199995056845332897008362346345470105032653805552815671419827198882107834948079635964938210558556774872810432141461395154173564718313995923361819870337498741196554231898148904102826853835626118173265474871776504361114381055457750117690033262832479212801537495187142182866716941103586477146506842632475968384470842055097045758657416871201354403594746760688836651970429790861130737133784595547272170127658228617036964928219864656442595603361709517423226277611652075104072590716894358005826914018171011667108627219018208534096 3082682722796270019480146246885607299537481839408835946130310660412814876545079868482446155330929369917900144542404565230798290856104946052967515863768052972085129295665363694293927659006316197981357698951248069443451640786929943350653856613509609140092408516346019235315128180666608732583107383875016545095293202599260379807264413115369424253373713222957880208429622844547140604400109081392287123006567971882762654523016993057711057755882912720558722100799479497578057654282888705720414248143543078866774957193815835060485396352726041809202361918785934141667528644422627451388635782231353034001250144642855547866372690766451479377870158343126046400337432417818955288240476605572463684241842810161851771584618598378842861250298493676174297941048405878626733102988349100814340650924522941677892434748376546466155334312475171226224778990189929692872545387891077185497284354206823123519242019781820846531594399452502269146216129190346457642803686690236311053483767771332831720655621663932121155926666943391179219654056627322571287595918735879536075901159740508426804421283634061075037738037756824127907104690216796958044414622810126040911525408633014073315839238884705509846518744081437751600094675599103007535691323150035225769366969481373505410680548385231112253714095051525291092181136660945698374665939383984191915820973957540149008311763971308582622302119731207229731204593841055673739608850495531506127873474296167650296708474313904773331380813848259675469745232470804094884718165510896819268348773538325935204380910584713962302430363906644662277125704342225412700597955534501893481020397095391942987053627870839119713842201904235272239073151269340021107503693308401768579894768248733587247451153324992356059653988983162942469773026352511259569404 24640359564079660315817596483025845706698647672735942367982821764052301711108596388902505474377239289457605117265670957837408726790068033848386372332820722288448696839894347138361865215471804269417637589373097454667300065068068867378249857328227898434525542658191912465990152905553810537923849185846581865791527298348043051690450837887158693036985185250477075845399886902734344170506333262867972546247762926852183359529123162283167476611447672384557725530194118502929481705038515902002199415153397675823683097807329521909727765371909996330530290874787649724392442420373679800062688511726393042543927884329487606847330234322043174177385907802544194192304342735643421111995527912364432997895668505663405582639483951147131606149316629326783914626299775910250711876977850760017633497107462300024746580764689452931852636326565793004809142544439894465570985433072911375762923365873321255758569369788135946459342029947418928034685832142910678474171521500745341473110008808416294200827530733039049622986866336281723592836938097486314101814184411671269514279071160789302002540035926175274419009900468957223198537515268308988656332094023414599758890631626408452419165815800165785773725111749197510875329064748890773612907884679878582866804615948406611245214345586259178244437147412952780271688740373611411654779898632186595520816401700656887131719756497961226696264698288183839710340692676101688514949656054698880025976649058536383851582209106606339105543010010283116836916313862439873551502179719757132563392409282575639444600647114579792678706021354867699427844004902591564539116780463880346575237296590814040773473530746175028007896244504398281036760128431658232376376637956849630498454428549725964905353672875951988396794243882441051846723466068980734449931 196954289809903361322214121787831499048066412380958693848379902068322858899721683699390317426944135027444612878649435378726320273157913003711691864165466565838594382662150296753296765239404720441970271101651310751106814963605281626603189854530235891215899082215277099658056418883747457416175712859983107777270728390018839203052195720014366678975150341734294430697900969091467533508343111768418638443181967507744103957458772737350040194871779599168699202710808497657801632938357385535027051835765563736034773577098277210321395145738873818195105461034757301937979213868375989952879094380794556655476012177081444642653488087941699398699340556203798647354760184565102975261206778072897677211392445290248191000718113755561317716845083309391944610386982440923935763833563552296591099239461231734161546032066477855138922813054403490631406881885140663302173848439273565117766576469786178089747991769380211597774531600481192152176967748410845657117171942387716196671098342480692268152371003185217381216606045017774462730914081010617662351292950204981895609939689091243697235182814052345271816467367940157131176136286720991101930080661040259720366675300136936171482387536796395073150283926432608370191116545049582885864751710870559313490469827416614690780873494406827727292207972185900954947660623394668489814887371097023180055530684620795421037598748754296809166912908257977188482056881077099364727672108253963829869138595278253082701806520570052885306313435780801712961569903359011582082256079868227131123665293831456673968714083333103594022485830197043989362512479043384789241961341827674404781900538257502885388102663049775167608043630653072514380322612129792828261247683731453792596596950218631327435208286566231321761975325754724914548962335627116939164330 1574287469729243966963394311448928985407828910431704049946879827022423410854007503918977127833988332028197769118837163916685223121493952600188519661614270774194591987361374313725288069374832379575974823732471362419135380708215405937342223216068714035891440366425465375297108408203643161166876891967924236511125372235299496788087319392700299570197675914020254308984860359783631896434538955487150519384645581524463290974639189270536849257753882459767472446836764750694484867353186910384370085570273357682338995844500568033246067959831044175535735229920191388232381467754688959825296496287654842329394677607048310813882365680533523145955359481276904699203457002171142992280653267681102671300601483923260425327048690543217664856429288611737958675079700863746950238026994723026595736812354680310805196067235298562213935579517008699390285945501839242446574740854007387568962737562057061722565013639439679812231351056285811485934627191583096977633849085811528654909589215419851971539013863715454949600727892843009446594098095698143017376706754738630484952871444586092421442281073587061218405345094210689347185005191074519856420168864241991194356334946154749094293392553756860127552498625795704691021958254806830700295227179538302306991355267821418084432956336529581340765653912773147808246863069763784236905003317543389695224649283491498886822060978199192827694988724733379129877046691430192787315620455362272543600903460665954414530664202229806602088714781172553122469664807669037272142909863245907364657470562412486048559741001043652741796724616637566264433895862542707047217285167464595614087492612323640759019644458045484192158462460862373342744501822642539555030369971910012824843740097102689667283509696611280466782693935273981738229210707645556128549267 12583539699061099180219495171773606913550087838921994762964187101241159981065705092747046650028968787844984221332218626386759868272842225923927784152797625385223956909419343158206299557633547766036975951861648209983620857314988879802508493228883619511183100043808943503504582432536088595832552420881399487688639260663160012405112111830843199217801580086604183198320308912310079474724399124703649042828145055078412096798488479946163618439871797245089341438522673576612941596979262835104219922899816584419005153398654084898291442224179843732739599036154244138486888761010969968326352805177914280807838259315367127152804991429324965199849086483719101522070399829878340445107902518784746966332525204541683120202405658503484707982885353139806418753444284457072481947556113747215134540397652378480424563163879363392620471193039091841605825980436221891869351935397086774788587701764765614530062611560345423811465575743539157407701198435508384458970261090959601419279870134292727815947119269144260979545881935731798893248315361798257767460704916224193671373994991035769588700967981564259045187967008648942496722597099014047993747435261657923913403518309902673069147708495735959911274276428291663551175528100567424118287316303906418772527025042725264329164977333315677627670188803989703129966379534101989858635624128617846326880005443434585166708668626120937769104972091817019044160625416614058497375269578610418817880924538551506632292231889357213134247138180549926912458477491838809446933495132121662048860482592583604671541885578569764824972147723889976572708179888898630999076207404275730552870779231655328264912262131719839598372910112784737153844703236926293178902263521354237022579802705364476398266240330047139481930709884549244561514321545660171969486810 100582354750668224467465927053060068234837297699310771759409890845014938213683135958606541910090844648971411194087561007865037438694293256377186289550983916992202448416253327130915896803733458294329416959438653225760596155279685786677876107034998572717356992854492699809744850527919677155360105259117297453524328026675238264612296975896129429899834110461059079219541837673302054607598950212645251431243480299557810099843607300883664997102519529788748848016543284871966748618394154671604083736188589161160004255760993785690877385764240265010215290352865807560520378799561764015013958311739880090347699363978337412054328888541580458073745354650870322344496762439353028133063354258549493613206984276082831048503012214578488679376806621411475018416854073879300410364242168717588165994761574630865604970352026347031306907960677663475229386794996299907005098575366397671241620293112460622703461422514779633245433607482502889010244158827307605513242036602010833210390742948855792025263033612505335063219594140121271293750560904493885706412058825002297098498018000132323952716160695473853793074135720454303539251372167769615061990642311689893755456526529666438372656986715397455392804107765392687463840695693996079026389461108295207761315372247182305348293679978900609986784292154444486291222160668319072817970891636765597402120194546443383282360326012040725335200567329626312213225485658264147149473587335616573049865834853185004253787324923869528965442957223440861038864375814826274751949718337734957594094385113245514209757880919098930054992348548141324188611360886806574254871235779641422158004388982838928010520395640524625707271453383656687163972111426332771818350144063040251321574565371643637834397622580878096522678086995996634783951965538218228844034251 803972074530283753139505867404378471423417710568842078872104537457125016563886529074341992369486536423938480111886834933305118794724313922150960794509478054471708485490251644369163357834719466564931368835562755305319892175175262448594388592341854396961181692490581606559928943284573945190659791565312112158572888581691059330197921198691384001483285952185693065882833421907190410853167788180148715756590715774773271358816521268340877178677794984316134914894692423095579599783387745232754687621791636118822992206149005496501675847886326225895912753945877561247045025834447896121225479035660408191104896621297674736252476962569891056134138019787327218344465514357865999988717006410149618834845415257938786246378309491042155569885175412636861269464509102698158421190770249873035865358725079125831474826569624956046776773266107554558175668344910147987200720394963396114984595891394867616173578930459803177915688459756379551121595560015998295221008933908546544123905643534762848772226666267001394314834544905658383223778501308493832415631767235900403114859475669822097435947673759326320519898676986164134775098321629251006492484114899637556268474040790485189956716893962345079776395916353665782474005280280168518706391542646916421756726566454808684456654187599949244858877046909654700846203521741605750930953900647942704399677671936277945204041189060628113323082400853822312218310716856233917348661638753718885035703917989684446502251611667766147404984162952471854383754726737027541543903725985666316019033641864356300721382420351822140037396228187184480536383896478415999330325866859827652823328609403817613491285186718468166048497798668510648032607320468580687140331332869679879951770220235607480392533359836257030210126010178679190959687121006531051491401192 6426289988412412862889649520697703408673200749473436848092789558746743255304850039237083945048249099753913824563861617131670689731436064562736163751938115534442010233641286359065510114679788610881024109626723119888936288616243197889037081885716033699191741747501753141983387618005335022687745494919976693173957962342747936196603463726850669945452276121041648866243244202321985047487546423253559582063354233378662417250189962850800233808055998883304040853136937128693939031195131634652125211581161321141747304604906342818852902197586988386599281339317152664635403129065389708918323482732825868623528798620883474075569201651658300182125283192625691191633071615980496943301194922343437937390059916323233013126017285590069074940137915105601442314936126461908460911061988349006394343279968091129404081951356507122962691468791335278408545911145617079110485082343201322025130806944185718328582684797386677657403173024800926365045476431584799875245427142009693426053419573064319720965420916152086812904233232005412314675686717280209954603538832878042191025309818015941723787957644542310967993642242847584754475429523156327487584768327183023268294731229157336699420788529914217527601934668616917232973823193209110052653786308908814015727938370479888913754633265725471350664523954018781893950094599647235200550636606576649069873338807297887458116594630891339286999004187382855098456542962326842451045054714330580301113034515530232754782001158780108470754022531319504601850942844714930838395263625099708934487295138017529127499564406063585161056225008598623872053230385066349846903806715453617383272501657555278941239890110370351799041677302497875891613570474969310043278607849096774465930474958810122365736005444938247334973252902180498214905928274859835191656604639 51366486931851993108547272263647010627057325515767132451956257010490651433082823425759217677272741143624023906098006632646372582989344555210533429178544760045244075897640081838200669830090360327326683979301286223841985169011256869689525044733529598763178166464622587884864647231760056977486329208032080413562502513535172228270246734391265930812293352704258396081558366397357220477183315037803092577093948757158647092995193854428225140285183719355712891906229094266304584546625632289303728557741248663063972768375945343012155443790466627457164109464352368022571455841129499625988955710253112962655416685769537779093498629881329405759167952529223870521092515281796241813568674548107104237131581962455430752370175956532621771688983113135548694750010632833633731759470307961499977348736379640395174252607470187174932891278801972835927198521111901791082172148762622595805884228466945135374508905245176539545274894318257674127115249306039564923039347763781820017356639528961064624727839158200635961141179932665195476018467568374974436914884240366658087398284129939471331339565980586549391037423190096408731291950025022063445646211527967796747132835054666285395622879525332261913886307204473620429899379348659122539515956135804009597782293234025217861717107346967993077154863161797963371358763128231682314509272659923988758784481092182482683526603863353510116613679079210737754022379840440970511447623652007647082769833286937338160446556159790800989556905069076632849848885604491535775484786308501599059484885696289379119155699920630245672713692984307685931336570936905142219777057796562773801912334830195833819649904285720947864533895010471842099332312836754770569227410870311262747084778314209651917492321416767163225539703945223599909140446209258304977492913640 410581709850330920234920231292516738716880063678793090131959371733382130205489998326334188850073960175472981478631460331601601921764083840858231227217133465401729055418495817150629334321166645740998780084947368683514165379343097730175431859148048119235386200412334843537362917932582532278979015073367133253376158602768957103070118813175677544221983267753050671277181547330162957084258221861756435668864393316151843260798697159649127006042649657550194006884326329547407059438998566232287038377220437002077797288994436448913334736149033272994783596269170534921114276039234073205012391162310003210116669160555433305805954935470189615805035968473489852545547940802028119787635726061919763299854346616388888379923701926898776573290532411759670642294361778855129006864672712872513759880900211460039501339013730021870783060577043408006837245879066385708945794375670372859876941467616618063695900525479500569889976247869762971954992017937312596202312148275448153585259958226862732504761994146529969677104949620739747619359345257462916390886310302207297665539088004606478445235709080887824701220826732359540539282288095846000819976092209804890503161691849629751223198800215228722396665275647861989815900321578332080124345819604244676641887237541083195214088824246255143993605051860699190431495493370526327942461179225777196213288015780936955763240331314498188090694378745167375135997734382922651103248131439304019657953215193710038935262384091095136548573703426897231860593773712886359187810075131383914378055888234350412658133656557808537404815152032908287061262287140117511751592459161470050161570272401971318800744579402301122853799582475430565281585847534613617794330388486800404242255998441288280843259078229226175841617210611794818135242648700733520435251565391 3281856012389150373157828968795674836304606853380135877864785934384489072608512890331042545148079915130102826729219976845341028931343462306640940563862241218636729231413941352808801454875210547798110263347645494999386567899610781559969220992789995625299353104429784341686240903438614449787297552452957061699209930075154459058086934362619011389671797818864471519011291423768033718819537696359570055242422318399838458630932564214220343952759998199499421413900485973892553177569169958275117532663286922534321774820855682354830025522202385830187722400260639942974302471479565715173261885785518569831329455671296395369572765686791084491163825661826456955886221693488861242117190321363571428869459795642161053088994898598963298211075332612037893635376637509662220217343536905351077101349841243777894937691932431276625623739210091447865996802344424225045383274382644254073326510502723495457073730451099471774182964869854051671932433584580400382955555662264148219072823863520266395651634978365853274211744920332808654994910630015251281176611697755625445034506467659215037591925343780838800348096356591268908241782469201234168517913090195187498504366908572009087928507203230329128313498891286196245284925896791840577045903467467883179345216595598962316905869195514493781954922624164783267357899692858297607174411371575167764038302698978144007072620438722925388441891304558636988586422219649340034635219431596746258698954574104237493832417015828159055598639914860894399688532525743707554833932612078827528782617257985214374937057848217349366679773879620405067936027433640210752558070116696983278477705679761169409519109788840038980450899355286803838605302594847807765223578848312121691456082702471363320277526130427173742213875964525047403791687888174276262726446009896 26232497257958156081854023933384201520058409155931998107480971456010413572455778430171865086074653560785461262529883332427650240108900087156021434085168007170076175005737393841759916601801558502873336062008260453663527795804354547648875267946919173357415303955960243356793295088264089019990568895584769700227308388249433444733149393999290454877069821691826914288837896069123446550137327338947135960125993751996264155631039931312968865033145214015512730974059615799016026865360502524933658896508474215945857144833727358189616928811202215856785195741670422952703735966437593106049116622750252948747698428189912262060395860785330333937310130296130882460199296491333951542066375096066980296735597442687563766883047856254456060497921671883550270306409232201208550121462273338207644904649103531769493692010359465271226896896286625412386544315245876698709882903734347548109236166847706371330190028213962888583255608262861212570954965970878826266782720064193577524409182495003218027846959798164030395806210040938226351223645070082198863423593349656950868220069329839730297559086935018915592437984346639578799359733532762082286033028988350477820308446035238808971027196209602593002414589844052820823472940785424381320277272360926096154907032799215964646322270239670315710125671870466773713528083747873666147009402177444679469597512452035198633143910721048089964311853766763602088088936021583256293428001174689980721502743746650067248170818956618425456700142260355530701734394500038930862849379268817952189871931042646474400841146004931242412890776395676828375180758364633751862186320279430766097531901895673104753866818110162380610316022492680167767594272336047120308857683884345948115694253565117211823592263366701209402613378654462563815180870431767356046875432559333 209681414798930275097508002470244631024331835841592246214425650533234743330927507896742908519910294856101757910499258387753121436163539686890370676855193461029057332310188604079798883889817065831735741514500071003873177188533592141380503172190224198425723773169887270263858599664175239345411523057736983472463681427434044110340213048802998501229591894234909901439081795702184792599591832060849240243066162888574790872934736891291763821958420534916446561896369784757118243928707849563695938674197768579901033485656620376667890401242117787008734518760772559925548457049253844268107250063938554890732079108122988900955646066318453414406202665255829519442032575801154341232732789033514643642152725264054119109654246536254360341630688880339050609113070861091026879090277762948990765956603931982207302593352876946673435685801387836790837235204701480805499079039615442169612487740904878563562346348488773158679132316325796384586758630177798488822019753671545923396826793300760751470004081837123523017640744735778013073389895688511059104511472068273835820139229294461507788933671348910226522704104180755850598604594208346927149343237836382757312716544383425590070210287271264987392459862977583781814577736418116806033153726252866402640939831137268095870182162029264935871067505217220080318299157930461459966658793803098084261909612121440707483547592151015865070288208530448880503833217391250578339489078313901836995743228172826703774292734885378342977878984149642488921158817071811022207687749533521885336073482151055206125856369470485492916503847602358472434514795595274080913655579153859200967720654021344734872801005999622372432563608215164665814235308673228241368690541543538201313808564799935611135773174495856630509753927053202223059469561583891830584058352256388 1676024756344564637777030550819265042980097781382223913691049527976392447849691560572406419708859596353486371997967432426378023375698295334921756701475256146582470592660298229636157467309358184533165135025981954213600278908755703956974453610416596948588333856383857874248123232779028001534939232754487982745568442210953029355831307758466562987152417826865143923929631398582222529111279149882524559635188357589555610684304544003882065812962659409972172263739514642820250134557443746044287551940433597327548481566661528232402498140649050781106205857928437735207686163533999434523648203067602182633860641807222866567812199227557068323034989024615386519184864579160090917466835327154734760768644263658083324547836153105491873054852751127177106823097753485836222526081874439857711274662422292245436012353372952276625386726302224402160999208252102588371084024954423528273184696178617767907977547740501821973502295796111651303181450231400444342070527047238197808870977941735817528494042507487957549082213443208336182454789590133042383108052559648150053377441540579480102796026798183181994642929718197268032071430897907110391490761128870173751001257568799101365430719857326779221273218158463490706251419214007937127753904386419429923114387767270177464191940996164517629070245533563079232315404450643542173905013201897359766126997642151019201424653259903546164675872432190724125391712751129599836050993090916723543258492662940991856364506559693189333675055331748129027689181487844291799514159647453954616494161797276915282207681762513194522603425863052424038214960546471276385931348479643356557686112681903325578508671923313372716922268423412074076734241640833597347170493935163865555467091029901879654244752974867336310467795985715236814501875174029560032396772532239582 13396801077858611242203369923687215757881962104053779267472871231369954086579606578588075247845861574162089872130540063320010164553024051387876689137185055498438522564979110242269287889321891341075162467174190568416051677468757308240476494908213190715695191624460863400771287266018367939991819769178972652588719682882973984713617396757991698768020077637330918418903310322508333471917098555685448507227304076670442300949459489263075538748519134342601478145445394311021150319644669662926488315528006201085754241669737024432122027855061209505286727339030772476706268007111014454020385208256793236492668180402374800108054978277894886188909816294195872213643742114175256440347784972435250401211810938525808316845904256666695104268575757476508859232437247759425213503739290368980656036102618381965673080778025228352311711881385473474984471153568306548399061740037361108144858344798805353432088503286738786180957129517287545196227926115457886616835175410488123280033097733594600409721384337612489011419697977869594163943903119632667051395335103786760093087662577681896937764675346345726956821915456474612631948766919446662755107128868129804819882851372783200984333744892391534375990360744359079430933147053845728841898202678199809450477917163625065836230002898678328964739669134864814284180029331739529609346294722625420606673511364353247471564108560448234306427499767253148918301046589934181390648254966302877855535890990832478508558361809435057751424312765316611824626805640882476201233642843894609426134646531405327023119794210040797204960181274370604234195355477551765378567404450350467851871032276214599897172809869545235977123325150897425028506364050854236493726074210105342531422965622797208809402835738968523842526617029314944314932192675740063701553817571848302 107083356795329127975806442886166720342254455970032904811161407913075719812450550046769313662991011405077990142838329227574815723929536987114859127782640605787855727387005292168939018554371794203757666803152788164158754646829508835846885520676216585000826901739284708415014123136758217722073036635402712719593305179214227830481578116000552635322044253948705509048176983675137175666294289258091987072737452242467572543510828643246292534256970936254640645729342698953712804471929518184782610094514334016390064280025741266495904623900784024391905133968070118205601406135217592358800627139047594420773542840833949276341967785766855519225003984773202790623110208508212048203695232325464319345820569907009612485094257794944031820792886265986388034882066969116346532474370864696489545800786475268213485909235366945219989897966353708776341883737973759541885448842725006800379559233713670583722573785543174566351755305317455935624473447301094811395371297718914085505081242312072032624163651973658138569563567085458521445937538612887043547583033010175503731348293452456620839871559384519112517035689588811026347586118455803758807280827022035777991596692670097063985657375961667707764382635922965622320709289148686580455566263651463838460130755117582405011051476322576996656545172870062694774440062937979694974999518014600779641137367078943712522210150622913794207696285879423332288627418197882408720387908248778860274486265475762674849993475332889300200879316225645619767972142583002806414502230552031840975045120540122059633975183675377099915552026212484950769347119112687631071608138449680799647470280554567945554880024254965721404584295603941699927568060366654738036472319707590261002019907710584524670925986969510393855417078444126379850992187601881430384831651972893182 855939429534492898317259913168137329053115138768707563345247625017680753123639878276002679554485982790513437504701654766753495620123353333594882042629481190636164210808209927678207790516425312276242286578068750357678623030016957813108669863634771993930829841959467354187991545844733416829727333786394422528135838291772394895175217183918894394097676366249602632860384386390103308398578593138645224121744647556945532879097575618122081295967561393476775100137798474062227932603593922783080530694713310337221900588388069893287849927216332599952036089586202277755566055060660755145960025490520944540635889861254209938192089456893201759061622900636169057950080591077109793973433863788716905746662317139111624766263589052969049993641231724295467404489617580423749362709215299493457104380346563029489599718065680784037863141172802353343990590741952528328472011612326728681865794999816977582998419859668279796393492857981903043020643630544616303734367501884489039660371165736140550970097781734304663351886308192939872252306913727275886771775484704632268520087795391876451360879203593151134134994848291690429370632360440797200041787990553194948791678171111975381830409903907373150633667277768733960336223484334616598391675502183144465534409146113966247821219216158448358412920263516679798680393479508861573412076237506365172094767654072678800953651010259560599104230247138465023383949528752988971370153068792518745142250170012745285096942045186151821856052019910545503856831794007481269395761501441187653617626959477871914467730241487702250975777166165852293196248617899256382784602481361639793672329725729878047771592159654029213675306182894136360791957141016438437509128865190896348150766320226941383299555028917258595323813461072927759618327797341894612674305011319061392 6841703941199725043704638527938791476103840967981055104167464393442816375304807603066339266792530779687662858298544565456751473903446783402962047377004369544433893024745437342208979105308349530410422246481440931519685441154929779866701823469325713663444228641524976434601315154824633195293591584206719353211637562338841320438260683878289301722236985750993759522313522974902754315159904949829733853102423018225858206597322006731956299208511557679714935644160615399572231680651401898308941081078682161563591912872183363848576393527036437406489107420578640612722799562142551167806302918248680781664742044655753238088396406843390400811373706184981433280150697405399761846764848137609241393619356691161656706793227222934817569887557207205381323054501293622156274043050735473754211154748203295460988483069702312856846944200582286160828863300141264412927099079352340497075592073766159891939847103416399147437434149355702133529690386297617435564438148314246940554547431440247877406225927466868968480192520552362013670530849435362067837780315463521566640102927071428805273122937775505017648809815818331510025304906941467096319301953998733626844892871259837238897118903156854753250620551310955600854828154616857797949159415156973042599564829905850965126536452926263649714233600704892114058271812294570966603906943387754121778437060228014518434926395724776714617524435278313189308299945086468599854643028789358665600970911759384887339951282682394599686194423593365583765758969356667609424440625116276122663089817226528716482227752673604250834884204011365898548796278451349860783029409367649585739589671832198362498617263972179997328942724937208884113373936405823341609380073302164065405799667753134290711854997685885631396867512616622372492812061326966335906053023662084747009 54687202679352204503857896972379579748621050245046370852098164678947570255700305878292816775158982545780949821275450732527351330422489466289241307838498429862222538971409828362846087303237613707561719124300768970400125031887550732559591103601498741706228592546541401950808622137998989913844883598055568240701862938356012464646026215643527539596122978772407154613953665387542351257027045908121285519555522113064764687386233761006343920316059207498664699262064730173266977384610052396591654746541138920574774565839208892095947937241921377057117483230308707030505175810208405249818548060564822309470825381500479469696188555575314077892049009544232253080248077678263112586205144236384935009186450071618649946601296507864975356915880869430046225653207578951107209604690882315425512229669277113228075438875891090108000689935889435911906780048539519459485090067860679469298661151120898039785852639732322247178253682136751782848191256137546292028252534864979051468264274283224604456132961048083275295865384112452311766457372900105538448138378805485950144620118474385164302053555552609786228845216082538754093819641102967225645162775117274911031341613656103763561961186724207481160307641279306893128678009446189577760793017846661551093059472987843130070549272308091523974893854428285863459821966536369589447319046549678441672357023142460630489646375932158858630996318790957144683510025877034761101245202735355599645778506810005164835223477726981725910806807169530588188611472821091889389752288149456908305148708135608701354712110189655354686191282977065485399975225322681848700921440906843577454282724217270045173626809192528045095190980051147979087861313432587825969487761213081674352064142158985254483920027071954682854711024784676340122555388554575410340652609521043014126 437126694573791738942471741982902524780379753209509263044928813321165088135724209150509838866342303194879419505610418678622893369727103202579923168114000257932619889293625881834176819921123952417255217981045942802494729761627552208072336104716078028589443217394710438993414018943599600336645936499084133795704254946819855724543268493340248617447520461892796506527946443638625482488308611178901866361648620210560838812221274022711613178718932020660709662440573799490418357275291494688948359180724756233673234442399409589841079557378697247200419585602305725620074893385060285894938817814910826688289433654815589018937423700290334941530811758647845200916922469988873199761899036975103644327402701324032089658254687834706450705040226148581420667677644579434653791871368780314623166742980288652920824874183158073433680246267532753954680116014377330200149231065280175495966160275614063429866507738758579501321472281613801539633319075858096912000676464476165828994387567442341549831794086113843830505007808790773497919374542015256321687551301088684421014254805338968506325853704039283093212531846464803573940624474942037608700415227885727258793078133530303657434154947017768399754743295732149704358790315572281020313803116905864068337112423931659591510873220377503966987798583570595835862617261365494128813520287562752775170035829442273954621413680302740452020149842087992104566870417228740998972625600475702305634134561024999796342729742464984546193462157412848310540313818578617673551576573397870381564300182359990037255718646226377925711534594225963362626180554702033500995271202372883891836892913666798780871348319508327482586509860107372041047821051744042580118581206604457916331432039373285198032341388698118371310348751648288509484488422590687719863676769684979323506 3494050165711729503975355728778412832960230805904742858667996076477511577943167769965127518112660357391625523618498615665498595727948527569365223427555180875275076154612376495132679379270586957411357956295560879106930125332977128371133532130293157278403760745699857677389957436396841848191294811780225862735891027384248881496571530064400575423788269072365211080158109261606783958393367558968143866105513725352999711846376511830631568586431698823887188736358356122858317184664804090003768247547585862284169890913956553085954688273999670077780375614467647002071119788194522639976737574244890224524815378997050280124908261772387984402735477504728148402451032066671245604749821208191931107076800714124050169837914662412342739288680727400377342473783031801063911100456531960503928437343235337462903543632909121629252072716178620747443236956579034808144688339812822914230903537302854719019308624568802583578270293066118626344480092732804552108189064731538253878335234436765534026657278244948570229137983634686797907059276595243075437649535384342196655022995066396792070297897729415308991883109876597993145090650617927280283673376702845335501979034735362040609888359725316093608903330639053037927037877971735866148003350620049402820595241146958041650350150288961009645754592619521961948514835264080497831333841272854829325382124403000031236592306391388349431886317674961293756667296009205848072619652635603395989567358885923738404845222286967923648594067047573842812783483021594894583917832771007749251336664268612055407753621294265293853351838990696264930946718934409622214173244160366253985513920496357962645533205685296872197142486136032027362896015774220131101720116283604375403841141038105728073559054130550969060240694444810085820591794108269738372473002366331445980938 27928726330741236470528562851296273617921971752466946904092296303032684065224823330566952770745077015576389017401180948168881866396186203928945617999675766775629229499713880709428740177123876175724950243437252599280708891135709181183830136713298411430682238263193736138248849323771270366164885545558082746916377532653377447066755853780521621055881445055117631013447425336066642921593093559435287295950858072437155916750116687388947200937566261607161041768751498334109133247797054932482333833443168698175494235075448233990374065437294124910967255317875132617686119207540141143481031331403048035357820210561481936538008551025727357272820808739443248867317065169118796066259738030236084613234686358259385200994356972063841934345201380988378842249829899645473605716155842040286644002432460645334899177315198402029393956831401188003312442036370949132403497024564654686801979206099580612834614453127349087938754514142141678994682506825006463984316316024231654394416711291266415256856093515890053314340961772730805824672632399757121945120316682479466717649589555326309672832287640568028571343219997496444378129932711998433554849426937896805493152039323177996704745416274814648516771048023892871559224382909818447528070872997794844346974175774469111862280448920640193731311618660067040733304923456798405642545596579810956933327080531578448256505864388687254171658288184478420036077219086316186318727142667943561621184663925663990901283465826370957705894473190508426283724936734197741169017454921795885765579230279635445981775381961755502063763637006265572446326969769725780741423279263994781478109642345167179028209533248167022622036202664366299416005816706998653916755699322925403973532376020834436773745464276330557580308143809991257984369335785274284243933380315322176570609 223240667264052435050798048196396166782357539391839781962811155035547809248818457288547056437830670912615909290775533312707257780527037671236134549441337978750575012074044005259531304683000991113370335611836065197104417148162618887231918976158820433265847840377753933481954387563072786546446726869340337285606211065352627715580083273221286380990447703367685777910426681314946277301107503204442347411286472755287193097446899171458478639878085637626701773553420889860339982026137533795502085152877232340470998184097132966300989214573760614142700614024675132027934983165187926488321070953714203222790172364222876946096257194365919441511619101169625645120882965597557956063245174434532613525416832515152850424104844769767089366232557529366397366773993892030465808028694280891713877874029198267633416428270398673839328755718131215044801474926596456141539926878233332683082204572154920555124366592773771001587978538843470466884249121141382014155090427382577192320152330749590417984947714222724767045793501917365806736916342129210698894855072195883261407334761965525114210968724743327723489717601253615252875344084862270508186150337756707184375103415702320263395550162755351411845159797919986734426279966091823094920004849622511215904652506164873834123284270606832822639622558864714800531497045388444133186087792140111047826776416948622793633821610759410344769894989110748620769065105492260109041242286654627914665114436184306348123926110277191335871296917393625212251426968901745025892801901841388302973507072229940019902593224505432361900083377037872018099443065773149429448364800593040347519024293049225524484370385888015832327437807066789700300975133002666710325382179270079166591610426310584141417751206830678993402249063616113461168529813712123453911583957978338581315358 1784414239857493141076115875244687102689346718748906699577793464946327155320802064718224953900794097701980578005883000696115413528163613194714395918601782826749062608654176455824537697648134800683751996982749366088611296112653990830301235917608241874944849549380997938649186519519975290166699170976791356557798071420211833232970807533669986209845114351916898159595395562482627505594458139864378448478602968547933309716253542449532003076161373325331195237208524474410060662094779706423592427892292770874943569922908924971938402656310958399576526707125754806334205039448834973800038439695606557592313262012177570915120873534529592805148560621760425807032560643097144780403767646488789461144525865898999179502810293640317198729031110742001003093410813250163771348288220361778436416608836195965278862669051606312437253523145160971316454322141577139960775129399528504797710027629260818331994984807605819487352404397101332618893408479920169705739961757599148457033369260640781391484154854605430842734278838362422696491930477109177415560272300715928436696268876285474862370257575244354178846568449374584112831904163988577178718205491136449689998548786486683885892912747339083539229668087490416673285258163084901962954325597643746593818342236446992855344505400963799066381315468513035458525544468371973992934612809571014153695773566725327487695708428050614750466314681654107686561140180927475985443212310188888543206621307711359539118391414425265186947068958382854483736120058347528444229031233242657969206436544359088474841148416650106959025133609287157700375012934039370521850048293834575378668211018245657124210597468656240965735677987033124958656417101835442083027076149040774432814161357845090398537916487794329741896453654782978293920039365544078707680658915435172018379060 14263241492718876478828076426800254232023595216446942308832783482407277726623695393296186718986311605372836042235747469250599188809866685113333543513647712483883171557855686983923163382372915242354067960972430397491529985091509321662435368340172806455251141948083594251766498819866296263727178284534355514111114971952900591096427452014929148437413923025900922335227352635941808173650803466002639082079409524792075201089000021439409848983734944744062802337947356754291628942339116197044725218727385597168197914427376982437042887956946108417175479982937311217144975936544313597526956654603982847515947405910890698676430195921033185973851859061259901069662882120562474101905153307965137972076386963307985648837396768439218813886879692248233340845514439902218461857617302017070953707625108353190000992654495163417532033632076058405436254085109535675245422644782258706363649830394838185197029588627804494031023368302312279571496897891424241267151998551563545632157425554624111963589367171651748102004682725955945551716295345020122809487956957703102376242547849514814441196257840845417855776230809953036845978865012243667890795412315465044475083730644819189411315841121336908385101559408955224100163777198097212832344659394193507163710163653934267797358084164856929782767303753128464151258038796713449004304832475508388169701652484212298005554601076316283084992303340165329366771428665705955369900979745690262637759802411947352367788450647840019404190876661688171307365494789569418801594167204631709731877760076374110898312666064463498594165058596708121170025167325196060580719514170733768571787556325877217132727662788693728659442784157871986684329224856020189864862505433051954716381437267566718136268565946165823893705109086930931276984391992688032461223791846082911901601748 114009483168367680079202285179961716182469781565337336203713083236837853440896838058500614023812470588769598178516887877403333349982398943447108965503766599353850586933970037883795730091575241395198713921263776047270857895639177088712961139081070777369780018543000720729090213698419414024410288878838962820123478950186862454408802376874163071544977079980722659586235334663511624489021058463501113888704156424047968561271514355402951890055194890047275058453278505673358715365857400646079217129312172937792382372610800190620020698688042877593351872430140261239546280883022841721671191403668729026396827130889385256791284822381191360332146869597210046358170468441255121348985507594390016944210473682326629133783382375485472554043604457114063749655878957561026314045565016635089753772135463674801301574235482948650489259900674911308564556489068746471045499795850312002662037758246542257777759065797178551589466940594263488824914396717385629693391227053851855274577958753105199663124162021560803409178708913719228205363985999578497833349583692542777759577000143585040396551120790748965038469019260678920055393613823285965645538755540138062677109419798371884038316162785649328136611901216700161764837277709787203992767361300031913901164918721190874148798279458425532257919490413205312229379487120693829236895221059870316608262973524061562297251061281565282939981356651259198522979710653273508390615568341519406883136456543154514222608958817290536060127437956561178984206701941106891752754566216689199890128183697981249266708436840234947157451975293411489737283007259606043571319635711227032161660261601375864177434528059745535956702289379616364946035716228628039354019408289382309896210972105238122660971646027842060961845264075579990364604977129349516025154114823334532881596243 911305318302912825183889606256952652926916510905724940063478596349133816165835648552940400328948220657139372472406267501982818832772815437959882122990202012892754706510216580788108459026649515531488114904099700957257956991564175117293063640068051611028999197041073115172406046457945232362007380300497424452494143377219886521266025116337347818501614020135355322009005566505907459369083057794205967256505943223825625701987115036886205552134011402719622633928966356881344027382093620421196409321290676147928385629535322374729015192469214663282655751327263561414091394866020891330511129819032536821041673375827119129810085943892619583751381543387241409156497155947282139794310584099561202514101843094594420874893660711256405412373506399487068342290000771840092387312819184836722777160659651767820248766505207529022329567834393373269825900688797036420096214953714874197301910230856009477577973352780734792619593837730168630769787009461296127580235123297360686482771450515649366655973216350627092157001230813769602263551247127714798500209257904030398122294782110024160709646813527251572002767304475191627691357461695026642416484133270214898578056894744782835526925652748229666388946402183064850516706874732956230926236072784334594889036433185479943103519469881225003582235010694904656941051638045395700783165815039011695875251324839537129389733408421914975539474149285985931219598772666596842890335100582546880956924509667571019992958755062393856758357600777617112920123264900644413239172275593141339049343439003369021822308806483780413409318398572684713257178638578763214055131134560334025822542008535919346206674645378074439125419751331801514780522264929680211320912365774058620733713399914446470556023129616040304159499553992253539846492047505986128204623011351054235740719704 7284286499708750104421341593874553453001666159373468895409221732998118698094350146641453656149283661188346182836112842049378875847874628436401395142361663237377815760880581098886056808075939634649987812184002173866130539019978525400960556735920191279699440898722781161652466195992183320329032174263966561286018327907948947684635266840887514394874666663953695876781902113371690024614597552345475764851502611049011618132321190541039551140777662362844619871628750558601759186121926425630277525136789907321351200611785776681047873881126525462883162359280684644475408505607936055156159200509889929615204089413158088531296289024986361345645256050606962429209661979031864556329533833368368154903366535057455009225860025348161700599980642019994810142631240655232387917455995174637249664015878661854345264527278990670702420450325953045465060532395384892971594902354986336889245716295221429429728453718869706784121861889827726809206810255577844117708386690169387176510309261096561679138325315030906396192879097235816059308732976371326501099262690675324769774768698510382547173512689332406291248190170774103349126290332361251555212396853775825898433204302305014013847703312463880611131686983367579401778650113631124478887105830340823191410895322854542894130833651924911827157688103653006784826472043945956226193638074901698343531916495882097398677437356298107862322673937907826214161819449101966375645934039067855454275241883124264485973807248457209607582511174974066899256122367792942132549551672099453600214289167950537051206067301075281121704933384448613778157241006423527055457338588565002012963964908096216035883447432441265312500873995606016900109422952384666649901367153002513773519171613355618237230442988971129149715780931963506412539676223652277645944568505265423039164849915 58225110137295218795176604698590602569027384628368665161028578396099233851040879633337032563521660421104555587571861172127284713973253124127209601925421172114705187617692972008354416295860154140430095274432099660485048896020394421142633648178576019123614409749987471244102171540723660324895484329690726184709024178831486711224014517537536021439493846214961201056470877353545101708558424449847710537226758846675621335886368644038809415819017675600617354964486150030851766718926934092048879941110620674540975133688254061747707143612491990433041794162291772033757130833996412529900898354185238175255725076675548475147756820201010530805960889304042649552134431723790584940373110296162130833570217211601198236020541333478255622660393538188036601388342401246658001898600943148774208379552824509609265483992806617068571512986079717004823063511498461735560145021207166603986583043517518419701176879333188586520353259373945891341669920100307183823865439355815125927142498881682958345814818818527140879116705142703388493814470112022439294207135582014790728604504161692885002729051508006821573816935484824436812042004210961681739194286660725363246664702767959584505254783720450693615839870958648105761117619094414239102804969350066987439680556873110326888750911027356659278150926204512281287701872628644202147700451334190412105801183639783412410316191070509523681230541163204290490288752317720653344138844601504104716935545975992941185246233560613083290659533667279709583416146687698673179618252028144616654029242850014685809331042713680750677088098193906857808420223581764497268128740250104062159252752820412625335449478856062937372686630093755796800972306604030555704782522322169833836521807340292197308133959288360511167407527573185913062982858595096706912340486700467287323231843696 465407957334357675314474202707118244586910606929730687445193034701485146408029834275129174837505403977641656838449842645523864333209144537937155009879694455458474515917597961617965610705638068098460537053535637927756486536907867231774166657852114148299321625012809781284715388690798227788258545439567580875965753142248773803615397233422801600028942290848780316909948363829795004656606303350245119506315703145465403996118856292874482879985086362657495310056261459186959952425312848899876963707643750277317098809991216561413199525734890045188190845171828444248403850643674757631476942372250331163997959825640545431883921753460338860077915249657155463984802079786592185609296391228210509580213716466472518429178418316278423539798626461559706732675069714791195876047798204403890454220533067232417013595662780075314878783380117210916588040115177983148504358325026676016289875902298040146977739309270309141871419670520999195842691937288319890682403320222177708271376245547568813250517911021620183122444224827605287418423785758595915294457898528370132286372465278859727989510195161219651316564391932113874095178782862048486107649125227736431291403693766089904293985901155793853329098239678112889189515457855723867654773997122533847427533323771845826475964948009201004872627414605032433920866461343484315892959947068991456406972060009642019404478985824621754567565908360189956694260213486888434755092518268569744731881508847986526048120512361611299653969208555269891631801889227551461873837911673173180095670585416973074563852521695549327847372543113092502073674061056775913911797751081633557060556759541567675977251680564356486868203054690103161395047841425821711689126293387681618695715467482513969772572093930129363859974264495505836664178553630215157858350514851974836076301845893 3720124509631531332727551624929035670151658172631785858880056392139855802075547686019871565557911928235927163237731051263173647237417042059867739316668093199472927233825309254735598887101362347776513746603408829118474444869000771840511407697301576723129682574981782365757422213238098694755220974387443928727444960709165959414197817583490117068822258595466387751075270123727636846723385063520307934442334569294152755282009774832883214170278815699366793945325883652627444211602511823268346271286812552155904823938607052483185789725993826508299825545011068762971201557386896302592204968377293758216218318008894882979980002779781561595332060365050757191923295080275759250763922342400657146769416547855944917750130032679238798068064512670683279798605733312082936397944338557192946797274760585147136889227897830957922729319868746661405457446067414168568372555278992970616211672202384307869280193520325359019626954176960430576466017667620187788758858155606463233065204639546920156330996359594090563218342684586920975261325434927274542038088228961496863277070033029271290816760800512904816823669089274277440435476932225674005287992417526716694297155051025279798198382572628225124708056336992416288494584208198321446011693412002190612072913859596909421266131613741789884041738097505506775591222561036585036275660586674722320382493671655831417705322440940814227627388741085730568918098232575941181414732302196890086235621500506979532784589438011189253988024993777041011480735326143906869374280200240185284395465795892760015408428316007454719320979381287535434865376640670312527814434636553288312882718245451334504242418703674596137785518134905390883652167399897046315751675512905427220812154095961965824853482720923359335836375871476455292313949860170745637676624594640957064589553944750 29735916750338078770864089532271477078591987720544907469340336397470488021135028333230964296145284386680725259081439657336147961768001283500800294130164460793032708748453373502204196139564200047614309081548902523597292605765484326225580442806737692130319857807613220152338119144606158675250464357101955229965283551951687408820181358956643057234793249852033158633686758935774106194511437380024810446914069657074435627070256169178786834968130328893279670240186983273702641838821469724189167128184907977487143145102398086935803404105369226752726832474128685680229748378056646809390242116565368372473250209808188122598231655687801985042764053449087343164114434575916157868318007838837914475348296404131964672015724115757884825055593438687863247729466754192909345317250887335350239757317929697780212983523933569195725212803829065088799931922699013188104864328030295477183341976836585441110437402095473419332798056712417714105063037689689295044639937556774616441092174314669733662617389579313933292813205805615169843145734843674110806940648625480290167513293765768459253542898110640292257153773000329121149452343809071317520371550043866850934722828555148661688826041294493569495737867350649085152177214471894136261286931509417130318292364442135937443023997811576543934870808949419392936726974096520251906095434387459554366391123567549223468729384284959623755949889915329321102422413452815695217032500932073162228152804106874001626329461102220646893124794745435957129915013834646349015262226357611843802566874082603863732390370853436804083838994451049988289080412397941540017074669352861370890094928580615104383389634713691058324378421458850093118098423677505141545416051684754149691391408881731690657025708296313797804340068465695992290553482752411727760096850969851820274936601294770 237686969811901226450192439980302437837357080196803819857022490159043757549521508340429036126362426703020168131654710433515625558587179429132357609011909934920178880422690901628132584909081864841159585263286040731849763544333414339073192127749353154888672497653622248184578047028333684422005248555384606640521297155473918969094036366035260605222995561068501626790773145665030897637149893828366245943575482889239121575274279582733297714375735249812323618263182766382212742151380288928989199360008426621074300739748923969171996735475261538457075731626775022567609998676748116464739507562725425058068034808216190151922274918007540630875538631703349855117885444418684114377734079358492597288456336913428035234276570160826364365731469228948479572615329152593127951077919018515450455179392656058242835724356048407149715920464492287771140562685428158474815646208052444319150749333158952945940688785444438730133323339147539048411744665507725485004357643882762123550110771304414276352330677466466054583229613402785316018225802544588332049702254938238916980465094286422360951177663149513493233555573315226911836715130209170675983714517475470516697078188267327040276743405448925088745517483613014021205738850017393198995145384747247871097428735822839230139741760315168276755835766861364562613074504577402643273043570903492408751685844190366989966341094973637317181318083214227917129256572742801600308200476404137478118973241646438055411281462958920525506994790096584027806131278763515738611462576986988931032435745732561573239288513347696824960768995399891818936104530026332018325991915820744669786257051042165135426608015002738724837332631974175559325163725047073612749079584824691957883584372478557550152360643307793550173729523825077833936016179122591330488274265978169451436854683733734 1899895004344336406839881625277597428228356126197025653140282081250172385061495716069856565993195951016023319652646915733543934934582239569057670873151926075851600295421532490277879136785367482042592837103768905810999456247428051735457445659362153022596374677379491499167611062343514718696372098906533176791925215104915870681723926584654601366848209447099382702456821309980589716833625411815281154392831582039420283095517703436985428606850677600083025811181387469745467006304704376787043742862753299803223335428455607300021977869019649343898382082521159106579354604060001484956502002154727676326151509192373326390168112331027075441344497821125161055810355991672384011164342307472101323893342539891104344914524101342127074338010949340489560820949570697466599981325147181231336413757401992640588040602289960950508379699923010814377711831608633243379298935250192667143635223480626732987515967403301565827539977886890499835876178508473519003851876229651874045673613628873267971644231726128431831164427572897662112929394375699817396517013127141747216789609472044295953763075533495664953764238753022857831890657080266142586049971776522706734311384465783958885046799233904543200533132821071035931751864124978139558670568402063864362254741853238156618588530159460645600755449461336681451965824042211202155062147045942021961427839916336128479921264408165996637233113082824579796633865579086051720471494773737130107899289397943582620248696529643119733451448423628609432136440042062541877035571449925285972951228903049936703030705094871033377249805029421307161595944345128277329512087177323188873938960921460874952965409671670771318318293804389389684137834058299103390810535954443479077997388080422467678482549534053352578463405581585352238307292242072200454682855881597720147543297024281679 15186371244565888392075668744607261252436239772529350803372670377590643748548796054753180266951665358938389699370086928246806554822368126779300294378905906575621795285965513372359987612653887048085338746263372787275074796031728631483450019023833920139846305621028451436513952489418336593672376192075741159574671604183800865816936344722246128868374822629470536447638930530314513810606010806483869812943041017120778182125328004959163962718775601455747178876934695073396292569534112344263851673532631267399033679807390176927272858317476456225898378358124350410344471205730809727425451782355509000410992378041056188422182676073853412647286201529834449890213603554781780497955177395034261839329986084751975740905438652265464671121981933160159187651764711659165038584609411397823724086634237343096747448873049945716514880818803906656661796310261712925585033130150285211793568480209508940004101855802921713421541344077795420653904951451259019872497706282627789668906128969832651834872137025619031054406652147047371673965408983630647392026294624903730790070756808777177543557370041282324663730985597113778671074360468291921672304452146518153281251701620201902875674450850885207027245739111365016448557443936258335123935534243397259178439082322971326504336541940682793609927068243757234885109437422912681219020613131614598999702365152952143181529679001753879078650603185075434849384847707965349463983314442599233612719649026716585681959405884529218674089147496451567564738974340693150164557150545747445904256584920286861145288082626315053925677592163264962441473811330664411886460506400320681733980308849514033789109960576704591844709182272230783571545120139570596243131539422136627634785407087436554414450744641195684860077628292620763687255127428456777815687979239851009192385053159669364 121388797323874951087547104757405331989199551561003979831060675755040404152074488181196302799926082544150628631802684138214487102025408805989290414029480498529717374527565040734893200292166503039167166014500011486293059119204458490455976239117054613346168169567456106573992636667287254656481918279495622458931587352441280998980488494639734987295902624165055185135202023270593422989663869556084250006951103677939235520496221147986524254618421245382788503389869137791250741445731893412423477767805750802963728268220286213479019916950913451707267769860916262697593624444075401452749311751133071777918581463989670231559540978801569108403701667429394354136417154440307715683097687009780195591464740127342828221930813364581520358449024206045647025640181255739194673465054234048905509860741921018389828787108104591688160257396054856926453072309621831699166009845925561253761852863561945234209967926851333161560855238865795172236550015404234341688063807421213087584669865815295720848851132725165697713697256618460228941852933426873256149213222483658682118786370478668810511071437134640202223190535834271613839414585894137481755736348764776200887001969740970593438625633146339319147132316795539377697606135206999226145782635552658369642085192768560759486147916382169090546875332872105649022290027616090417978031160194372144318800917130562858712227193369862667621479566519571509368062693657196353036921365515927550732675229121233037158449201345979981039845109345010606699300586926226625948514566995864866153006071690616379600137013205409952475116395159515385142064090338563713050340886074217249897107997687207262015364199888413129706574696703923841478362377360173905799990286394750760169124772871420980697138185040574972726811269425174365218618365552062288529630473130176997249310035813915972 970294097003159136575878524985137220284573849767994540284338391354971764520171966350569767873735920815777118986710533771660425426501223654714840527957820349107699499481263251583235683346882134671362895074056722333902925361782899682484747508592734119150888384418803225942195247975273951341511866975256172793471597166312705857442810704241753093258124814488016723257942692740109813811899440040938555662001558602639976042347786391960631294673285790687035568308579922563058296989415898618183502122710577741048554990308601712067357659167845690522099779708142413902210265610929548292979862628618535265590259084202813157983342737504182135724124437376614197284110027585434242148911903234672713751147725951225080817039632399970260669341548192270110681218433995249561662859686248315037380173285373579932452468381515688756587753933717014512247926685442000222028842344452524388075090903817415607999591720852003484096049429884740225796608386222965491094901527373796049748838044522554815162708333062699351791650941393406405843272323759351921297286097023465739182776293980186797637192547568721095636532056623593970229077656270256020142560447758469811906871492499102324304066744101068416730161247814552456908712686400198195845026519037650777757246515386888549460475681047460122859393851033157846274809436565215814873514659599692409329950543010116126119567099868746093228592698657001773447125125512827610724934450854050884158605107613324493853000700666617239447670487945129862057551418254783891277567821574281956547554427275243139716284395145662187523296205957643476231620333545935280492772900062265273465680946635780205862915122697448242870550882273814587766483422563896514970163352871832193466927081515413669427493005373552266079665226511412753493757627171603733508527570897076714359541129032012218 7755831302848005189621692196174208575291820315400702511790159592764576448929150373859843539661329669580699762558500155308632222010404803650565590843063887980988625219797335454943660817204346028074631798400542853254630829989378405875958063833087828574840920049290524609269688175266009143048497522471291112317331632905270642364651036530082899167150378786149180697160120180060344159730665996527444717600558972102095803986978869745490581607831732848101234207357800021236912658360572122764196430424639504505549739620880203410855925911676239069366901415707774570346691877298518580091341122045285697470196204737321760458792905923394944515001275167325093371326837407179745220136995450936357712340724084074384840658889015978340139903703563572304807597874460111278042884034797062175371776760120994479272799790765703157009402162272997328444915929219938523556197921322926491656341900499807143554090390121068540784058775306178882852448186718390479633052551344498386468385485434676438107257144983440833595448844219350532298760399167896982516986572807866915896971941825507672703591128212689980853747078490254917871393700746216705192738148240328228804078976759882941251646650403344991125561307416584290405035718935758211073813065021395969295118686390342656367455813907288484827645371184409771551750765585875666102750786776094002151590584581689884252778475399671507749111993162323348947445923196116380917748666912900586009295634814390386760692994868332344695372053659484049735244804713881281694420543158573778675834223985273751009941741648577843680569794753558014785784754547883327544294310790525819946328830292268087947001541148363279181069275122331232732427081127415560454906366227725906689118005181879408709879821006875681330184642392836603984433140110770283238008368243585890170466284705483190771 61994548743783054440721050034927968454218913282984875501454654840461069379716876192504001155996976401677837383994450860240865074188636269447216923949079762583511608394005613758236925254360901251432507518946798756539334273288096757211445860277161685625964008373191773725605092930648945202195043757960802763425188071007260291441821349735133781172169397025291495771190401860085774875504505554817955909284123917562816161692376549973570342026369320788823301255193820613002929586012733264172276390189230024123667897470435986980093008075611278420338709291327234606080239695621393820794771383149548041779520658311171746947915101837305152199562962759759635101803608544938326656686037699365618278026580965520552634632036403770667601808492341659590245034233144459388331348437323710640741787217935406513783869905754041319974412548558094559854802856637007648630371376897173434830618223434660615680232524960952670526565004884181091952598042774492577057259367540330138475042960526083876606239125567673282631343330422915959436330831909181376876176427626418256381699404593275038268836332303135571406008894879600611012540563121585696674337003621825116420519797503356050886252451882840184484517635121700399039438384775903040255432029760419601672054841678466268940685616210406692287499700518466596365578078633495365295979154714355302976216551799862068284065051131709819125831075454844468348191030886793889803222023307293483198031122139442519801745662262931251696256988822086873233061179291816085181964318066127702156609462823972699665626048853729890879706093291790712590583412547503515751470732395502905544470797925929674267671875517909976961665664115407132443470892015573153153304214722165049547561672151719101766399545860839164754684538287652119350040448493449753932718056802303481792978713689035085728 495540136333742680338787645965495340724102745440598120256876839390914632930252523086675341923917470212606009790211693369061925015949757832176468783861366300019320692751567359117271819120397018758312124331150833673548814378917060716700891537313738659843642888162742759125164498509741578173141086695998075484165570951854044254279678423232604620078820592062087736545256641322952604698160901457878365377505275180696498817836972863139520937729742550108330753837523625602407191398842878838226977557619306703624435551341114259127700782844745524076939470550115470141528145663233450231662889968389035674968274270042497324168714324012217309014175766561530136098139717689035283115157889016263172300790085157036622956809910923613319662376722636819591542186044726109312336645916843814335797929568157993162560135914673341118781178729277673278233250201622643969668631147361852209570118924782055868525215636780348582011169460696976341208658922410578031209784372817174186556627020037768054571392713749525718828938622533360748955616317205138302516156595326250548738491887127472851970623098692707557828209902565091876519689061210054688636641346223757517621556257380250733282759933827419367140522671057426978061858543688033639647866048917567777218521296080528106002232326821851232504564318348623918934343165868572844440219831614732907163801149631535770579475669544870918200547344221903146824668890135819383239357400272827641743486316067509671545012135114197523201651163082949682637758666912346831676254284644404364562002901608058005847577225275327986766600742589463442029781210759969811856735206217997493199770126133592877089923667493226398283732445842879134359308922399280713320617208693303458901817857981281547161666207368318954575836811632615575789189056144717248105383010835232168389517726570641996415 3960995531994318508101205888266409220167641771433386315763555557053392832571806358454402214282643397775292904040836231894917898780153189716168921120083056509907862468417350386343666099645691038624818592159152155854229242664489776519666148474736983827823651213785965050424876904509313521648149374831812999085568725678600643385330513809743268709351282434250492143012127566033032919310868834900311110175438437614842658077890256311072101813321052923027309085490232761389881952920536007766808773005534679284387273052648671531617733671844200362160848855482899898625259302533825089766934530402897264065373955474234604079329079778068831932270836159921171258504813661988379569867177344497966723871097846677147297536672716016632658960833584360350940567775151335555544567968751287512993593620797040217051055922688412123980881833350291288566272564581967204273622716060922433968210507421487822069676310166395545194130309695863978244346593532887759062598476586831670202449000843520842484098268440509465423280631471223017342433684862675494939198803041185751163626323645930610392418224354800980004490456111764480645828468393718229517587900027734639277357332246521173376106390024591957434683968656105302380127835531731844149547707902473811833137696438281910682352957864318332603492733214499184075770731758626295992693444853941230789980838034270193249931123833043814038355966278805469070159236836333012350315581426432381269843684893168626711222754743469997645132210799964361579202153313130772743117020357603764133431882117312893631899339191318739478760215475237143106203849985195106356726288124505004396404826407869711823076475016165487993164617020569006972967435595942000257599120953666228857684701136906442561537256388333007943652079518531929617637046422729272885094177255199803579233115351319848577194 31661395482618591727746216759280501462921061628233365370853685469036529795382968858994961531764332890448331693398425668001979176409081728745715865409787569987519434172839951496731077958335864858987882511060143853435996677785914837410183366683587785536779027584894499484630967646839171871297858742498532826336755061947245423185736969949869793443565356852155962355383512461679684293684458976768527360470329108330515042609715782222265577124025534436445255599114495917089662969550529421248942794158003157012968941025825059431589138010766838038740490303479359290547483726436200665105197504241519892677300450449001062600031823355186463841242963272063012069751653971791784054107184354957333579182074292777153806649852193260963710279579850946455972324946127857996422509565248452115080601820551402477713986286790745679410449694608222421134115176047366527313861420502133279693358331777501113250641545158645804855520944910197391435527491630718314639402502140064458410820772072335034425694401390865521576435363958852077578643868131044867479829461985830718457633983351608910230211429860480755935464394683025883711489463070608679900155823464687912120633435417732310069003241208013130795047377992361178802130053927608269929588913389948215245852863398320382476162332564067642802616661199042064990198410778952870302155918822960466590638368721510508976845412365850566186995496002331482215493073994172689375888110490861895098085907241657171403870635557207151295369084173346671048517340413169014448905551742861774791398190941133606341980864535507679617905386378819128786447147466025457883715217812316481177506638128247327462516895406758790919060846863768024871056552471768892282788422442261790718531223096261294390046670138706345427546659731327287646379718828364677784153143852333031460826394642683338726415 253078898716185284526248748241896921975576817410357435031104702178232884092270625570600041380986571537472429680692252356205591000231087110682090181538617677687677465091140295605119803916371838635434120568457740653539182813491899062023522330666394796558290444299296275966217755980245640046018579106624983208787919412726922625436624005488646682152211115545493277467477930649256359282518722454798527007352567302597787944911469603163735314686598623051234599735581698521883070638937277375083812175301304356191625451377127524340882287898058423655057832982088562350201168626201739621933494485268518618207675570103183388499395695408099128714537579140751169582976050977281549633105095873353391873526029623055590187373065572242449798327371577828473391468430200939332445655149381410472088851894150285235779638949399418518684021058918213398105463411156724873248986352058385155647929259666554763946568950410831513693313128707828530525317250499189861772521470913350807993129932008688081137560819825548275712547147026824763627511409903770638277672223380315825781248440902583351648529925923185090736198137178483956371167899234602277455140421560239193918607661857699406751631450702597516193884050991197347055025881841073850452267686769124972054629812417802585825974385757361464270591309811586707693268371387613768395455699315967661697113847137782194903280107848438203479380322746331609452459660002720530483463954539797400010757549212260132401637416307880129652003217473564730087133949454983351209174548551746980536110099736854162254092296372332874540950816342729880325592323761393029712223349563455863184831747395506943051615829247552177072753716356698684894960224334053381850643708085395173295590497323278470558658204810838453465464423591682368024312663338811044430269137273906475133724732132946671985132 2022935344703628231592055080172887168043204231561827562508659655716459662325489878276241806890950245963855854847028950111016259518254406457669303322051541009949213768922072109251970792640222963932320734968376721234698467733950770142255710470984335073365837154981102056683954117085315025023259320479009786399764309836689550329970610720316552525784363307645373908345328856852092177500791480776860664023798100162315550495769890860974915432307019991157026003943764413778942830738219131908055775236596768187092695306194437677086384636592236170552731000308460545827937004048689403846082699173505411920653729503459747574195687179724326359981659826444776232257211159262297082374593975955756294894892063853160218130841197279267844472936447444073214080110831506714123588804289588611362774966262973391885411179335195281916571414685850094583529693289448460236921060495589403027941521475466858606398510660346929566368864701524044950456247283880865573405103081273190870467468303198056881346759259818538437018469834154344157931820118170480732394834679847421738159147585814903187564036707049082558536333311242324437902582831478931466560817346386348501108680836392132251244814680644918972590518080531971261173585028015700416274515696363705495812161299229318789555218764067334778403513139154154587458057310291017707725246468316952409132528604204339613199158379800137561280800840839565622454385105461255631764548865944658489280642707032532453664772672271100793439891939773454759957106389732140177067031088130329858710075778254056904705047252804287264331578124946346431576099342674388587144015614633298483577935480169980119452683066706940992804994198603580289036570988266180294388954731045157772550546892153074742046171160623588899146177507600640009254752822257099658590220512243947890686088209956916157026611 16169934172933948755208853081210070040855198434410953951930415558111667399466522967270877891568662495693635291522082413359654845258115107133147385698308381989517538754773311232240321693346417788861370911120620339717193831259691228750394516647761000709529425762158626124135761536789833319594220527630631361004784610816357596854792327567841742128573943573061971443959611092253954868037665794888513747504375193546878336550688802330024673874720390787817399295051056139461273415781214642806206500984502885596264776299227990858785153753237556567781051856478842370725946098531303177929852959565927765600862138430450191519667717518382595417984626552779875866610090352277354641176520187558932628091687333879043724317056899403597062641394510789015388539403115245312284765643267817037917636057787436299761280872221429100694335042831878972400772160105395391101200674760234069453027860947487718005822722500348910095500109878039174390519948498958703217526762926944128308489087542880136482699423439786256246635296138330889062689897470113007009889227671317159876205016956575789756857264121462532397055440983115273391697351997733641802935345280718713626845621869108281449450090147573170981636887349265197466412264037282175402033095562917261849060199451820270908393292547964762772475234043816764787238639379083776368656147251350112289441226202348961887273778348567188083921572042600311041921897404303939691238333908784402293437208212019909922159138350707954875656986514362789355193755785137953440109673668403939319837231977546322596739869684639949959746435282670043820380677614803655533486317321198720539205361480899354391008790626960036048005567932062042688899824514876943287252653067583331927085700061026396721640987314059432362671507981585137922946692306397580339302501585719383657917867965660525578824064 129251229842263813795352300270429234963582067331647108159296283597441604291582288552360495287549324649887123691970114948744087021537252744710344569791863785045912478274406212390521377306974439518642277432534736379277832343593339084362133445577305288385158360414406703553625654832769939395247323665135533076990376035687152959242764000082853017332745652844551766907063521351739821041255327148191594109943324198070099653123221637075682108185186794740308905024028904381230133650013925003303254913162148954368128786185017399496185573791389067972389081994257432304138602919870109762893409954766730264334280434572829370066415759032291473503578357422601725672813658864146053420725852615803161452410955474060003671908525327566777316563342529972155025090800341742788402456846135651369228050310967842403135509651231474828563179894264796062355640584612311070021031578430494316369796829997118602141782731699252692315834002814124962012494255753833384518932976856481944548788996294336401941924502176753741910961736469835823290128690304485155610477159378836187489941890590532279154602358086772008583570367127133005185207886491214537556201642709619533070520879524039270075998975403581920606004974027297266621371280845591521113716597724045032228054666673440168700594194159551159750642218383132083814147756294362072313657973173146965692743055786239315239994475797228129425573107579543314706068750172224227478004620344239092918839700227273927303749745720333289841221953565905714999663736516090437426295798027240894533878804015713782594132828946009778544988547642954736795127070911404944089024136192770725314009628942987273832317577309569938318075548258789683967843387104969704625777222741408661500795910674418477415658980073339647081240806132955871868205538107545219576409868849867636144618153056454633479826732 1033145049362358966874532830450231870090842146299296156547201925097237074052303588160686781633648058715714667249201438289834562628138196203917669658273455532954677606037141328361159116525410537990625218462666993585551701832645180072702526036587727803307459728515804917584378238556894337735359223643658154817964722929675253433338840440621506901939444412102389649398133896420832013391889244495649098771138057134949226480741685409596647345801356271471601950997834577478213004518183698788940758863406994033003668700735827829637731656770354588136883952270335665796716249407179594433333130909792050200938414255722548504839013185209161805763371925514247100753875908210821616683280621499775267220768063857670057134202970627881321659091010680594354928988788458388575281521273987559589997943340893602945419680608466409901744269691291825460368894411203363066800963068173959187130794681364656367756345856647096499900168815260434059496213137608636143273549336715271003317938010557282244688458231701402605344150876211506782767393393804566800634422177456489515225960971594976116178248184819352658305940105392733711937916467301002206437070982039718074682457181007964890267272917102606343927988332668978710438854462923894229684940488038132681612604040967900027307431395569383910250185523772574448735569254815811492128881492136105587584722524393199176511034776840292199300513475504757102350350423374013924054213900557045492451553156968520199081056673461513891713054783065703010925156725412988481306058133403275234826306935949692117645882837455423323670348192226155759011390427551931923171087221442043972676900418242685471283974070280853227465666888592812461014133898821745684068733636940238247928327723452458745876106189549507711244549112253482562778790033285035184571355067066508295870890980736733237968658226 8258251334468874564078475339153303533517466195338782703382381566712723140954726385210975801078353688615795941293032611806005137443713438596979596648113636882563963523554396682007894705279156867431063446397629273466927796577058687060241860076789774818779020581160940446153282829841152920854287361313747725511497634121702836044327842475464698638840277636581023983476160419472414068941334399718656306908456743535043846537507072837607161228566599072147055473187408034106635405061251152891130825389485322907603574056931792902162682962642809806824613685899720513936040660300939264928927316623370103870300251528498694120715134521593060784884610184918134466114636116824138287558677254380071594778489833207024797960855638795067115304405912850275539329448807749923028927162120983823927283755447267239189828749190480442238240620061314261818583382344750888145569347171393391086271349110742449033096739495642672035828645888421464822010517110080016445491815946762301416548349205393000801111606997362343176358220807111900929626104248091460700515331557127059113007603727440468505438032324436956575417172459901023466954098822544286486011343427785111475564668215656135999772654997104734460791990551677744254830844749170269480552262339014330557644599849294741952960863014840795364843921409095301553136449716222549725148339566736059351464507430270802918198036929877863244748239193575489425584443127351674890369367393967926554329984471497184171807454159889139144360813853369480325959102397336962320141927085329529528859894687357912270492392706834381045266410531411484514246372343020364860121664884887853085804042300276812658071263079450445287945826430048303461496695296949824622002277351938515576696494817928347098218733765747601758175563013975903198057997308843908735677193001118744907297630810840859435623886858 66010812092796279803272777322374122137428297835046831069312288280029393715004386569312744239240453927676557153327351700495471020157661965080612216637288962538448892955422225842193539576033592548679157172698406659018111429143096148787863271972400453982513894963355234537302837923347531421227441129229755176480130220050711792758419232069519769049642121298566855842220327191315785223930957221318673876618685436863537622666929288113404142677459712420621272897495467087297564048813791022778793748804628040283088603525306392570963576366567938858298249907248913847164358621332648074912294816478909608763756775517991691093895034145810888821725495020225708995343991772400455014228561108639108060143355502544529819570707808297071584992181992105583873075549883908779261921004989074177970361936630092096996612998368365444700587333403769500767846163921804523231542489691897556455394194494769571984138489977906507097415363051852897695455481427098097394416667237775701694709266622776235492884383276622421963138869302441644296999740176908134180628098259592562124546605505806346085747238533154528862485959258752621544146742758907897176770150237192803574199436045671953571326787254739396905814758302662973951338412365720602936835770197723781485063131566694103104099472845808844566969113799609053047717182806623561026591016139558804140879716587346475139669927130829044779754766443962792270324224907753452072656389735433342929166503948376190145051367631895952913421403906529842943672853016509788830487182003574542216857872692306746636888823730824362999689596570326300191352053596095547955326303203794809767638304077024190247775330653834164827801459561888513598248147032949287082485331353979553650247338864681863391403567913281231645145336377557853653006767228361431362517749851328539874687564812471050679181533736 527645498196178852299746556834169013425919195719304328992460311103282071482646096303224668515381092382147727362574286545989548551717968450687997277769958008443970139564931021244166800943531685138054094595068863123503603906387132511856224945138812377453934273456514466124126177870117258397710721187845733803499708031647912367407370599201743029504408219400676459467062866440361796361033826548160028209338994030759184591543659415054226567795260685882435476469810966713435051319563598060143808675541022951726081619886521216510467336912372067890451213554932094032827040487402262929394934952340609952896908090651906425451477794149063277684397311035424162693824135682875895435249605916411928016935219339755886286880799648139910100082753319942475913538450597611837211989619797163784974341019839635252588052994912374643954274396197177112976853157035172671525577019122667484498313963778008817145357891962000542947662609858360417877112046571673666028173894908017313919436663689849175149330980299465379068633246425724471227941818525067884321652450532064304435511629176052490437644267451257015545351630210979044645283641958201319587251468812783950034799306166277987030093332239431343083605947776214227906671278625743287318231991580891554533841404658933139275155218501461812355675593053140214990677039518678788180956136760566464619662162914110858632039100050023494530702967727634061626246614788162354206922179525258643028541030280264139034466406761648915417963059740883520260412518908780573759546209601531398092155348950301008665057848854708122942885390073224809507734418674455983662721869240577282368141992075972535053607195049445373910372624915229604627821211248901439922458137488157125597283683445706380772591806076632186610247651238979589323019512187111419307741125092581607210584331211921513828047433001 4217640709468303944702499519889413751059805518279666521256022225485240795971602138657025809418966474253526324574324782583629104043447713828883688316800637550007033900642520615945315665924124460046672998882248892989517573879231732903178079651632889432625246122892110616860359653703783469670166572533605561733319881187783087116591511568372128935971242035633051670589682298497930509892705233134432718392308166331809833546788657946413833951230579239806123646391406404714768026731205631942718932468336619408754185513577542061792440411251447926654437903610422373604302412533346314032942975922764048417112001526766821254569559594529842736025315429691034369580261515818492558092789815297897483451553424333227679470135726801206018901008320537122933084993649245697040521514313060943965578611102747025951498814655382143967306386563292115345374204946283717763434076526186606708275895212747668244827605306480954551003204918485151208104853868462406932730072813431034618969477747893163144150706754502100649293682284376868309696869351532078556267781669960709073852956397255711080849274136523025080179554358858467275281121916059758494237472164222916844590483045702536164502643297490181329833591678213410380424604390135937516172943984161714912748061205294017389823178118619786516697356430628332001293583171068302109953118714980735636020734419967892843430346607049535180672567261382632990213184137070817635158347000212659048625458779925353356596334031306409249025207300200036998535092914265642842754919572764467959141772807761387890335351636823940960053130077554952996160193260447199590270877484188418546418026912806148653032655573284082533290023848848416074595744357474248357373099511301259843985571982266567230899185148258772598681469216107575162690889591319043489054845505979138937918489752343921798887729838804 33712977095877411207224245517314788241190781905208847366356891728366199559588158395073022554650660242454825186541817556743357861757824672607174293445881373449175924707018771917497468168531538667793005065977003779794781327404976375155177265040174272770626900212284353470435099987398997655187220036907224426810517140266183772127427493032633306650340498028681598874903703641389255764062440225081564218713637684988844663398644889420385483823085467012898864211021665836642198907178574120516571101471486941818930978655226948661748774435242509058960463335213336260310332372447267112406686372516256515651163968461814852824863323757708159716855164365722957118142300473051635909120510164424472547487723182285341928693354734550662751819223698645929388010014521016333357653370038793121343012396841968927805201378222378713969253073021174171071124339332340317920038889507328429372040770400868929605202817393567462210595021788718909543464035727471800867641476455908525808742351403831854783293339528840099475753063878602983085571841598782977197388577573995936395198546574866084856435445106945767780739298719231074137085768159098087837436138203098351459860246982538109124672615339830708286586237496586740611631712427708137061780182560573823559184100991466422352731565308227045943012624290939460495948681828622615292545720286984032971737317715818910975080601707784197523347675539425266039150391401594927016983919603263265681307966828350058925099402301788161823550533163446118870879864587592591893742718913704505619634662537264715247702163293970526205334249560778127356875973235880012780877482697358055684085489731889429810230278696073795505027547101180012672616210039175918370944671511128416018099411177218969809592783147216949216358931033458566995166639554178526933195134723764114830409633420962178582417046891521 269478928607222241063480993583427456424338107094457054054393359098614536539712975557695218642545181165752038363117703005380226735564526515856481354600431570471524013888852965744180210553844306012343449305412857748301681281713766761329271628011202353119888014758871170649694544370671709558815665445226470266788122771361290158012198615997506883147790680398749469576905036090827025974546314981459245829179719841888007212114192205945667153968575217280980425133095793441268597656497471258832068881275550105219576776097182310715001883295104628031547706388396314472757789479960167814545002515172480001287011544197208431191068621693378776063533103874054591016403656161197622382895765877366068582353780578093086618603856890289452028086011883038011100191984821627293432181635108449882308674398101050361190082972645713226563946808191717838155904063778592374132919219381775057317296217468980913440116817495332472725851042308174926099829801140760856237800883429493198582291656741596063421569383879641208179564375689409764733594552251663125382527691557499852942226236567947730482772817711121437595031194660214873792221821755362884113047443828462811902219749671515414179752651228586465847317647843237260953068197554374121603146656294413893349637137309300592028660569822022722017941950896375866249805035580971719449517022490466091325446810487624038240737058056094386029413030954772482999564029036123580105632862279323722386740659365795525509822591844165237997916256630559856785584236477679809908723171933060531454369864762431877751627574232364070345908893669603907281620757689765939273532333603147467288828479054900046169287015239960040310324079519009253038825170285708503933766387102461349970477512523499315739949483107271608181952385026821991926957367491577246628557551147333008097433225295778890351805209180214 2154034723004038944529704270317048339033381030839236641781352329383665649289926495354456589016725098943698085239918249181848752534486803665648322639225656369479087491725694143011624783842887553046320536797863088492333733720861306411068369301302229686862960306571469832352528774756393689014708152647213999199151608430388998964324522715052169919861778917274755252822677118901922703856529215740183466961629475489365130201482521020330438453601984842510552368914475834073648229457208249638666565826540577109433147790263046295741333485973977212334647834299941956629519190387304965846455226795247695437098677589316806763280793333907570952861207587918898766488527294514752254397495164313206655658479839205098438661741245197069659471813579620968814090186043938931991190277719944691354500494642724096489160865563882622142130617700283365401249420793073087819935330710031070592854975762379508547240192178005167566690515417435620349489769865673179951486839518765039036212040326529687902800269779760888786701987228205102790053979202364906724436363631937048289097828732198564003942933976973427810018220233980105410408306687290368984774775699476844142301154205085083723757064287324091628456096930431901503103439729301288278008481360480680129631220780031141387638527135193554299549524256514066283936546575565199913900828725601144409914542781725256859346606435319624526025685346708559515946578139980328843445111319523614584274678837356462604402489000352799338232381934928870429753284101434805564192193888822460274340445227294342208517841849751634669664629221944154299901596388797284301458221654853662948891463023790383914664791705515492590092901865180264892228509802773131913826839964116597202133505090007921790428778726969427772170575228922042714653720139652128906299319510025993792266181052520576538518084539792129 17217923297412958918126115418071566514532809207988935717820877509389437731388846459952338393537416214846200112828782488830814506142135761658099426725519004328953184017260079562465897555445780492088297921438338888985834530965172860975777594090416144299309492949207859983567766576981242527290929006128411316145022191816365387051356218127311527055893614662806843203572781477858288972359826099427670680194017119619467884354208312726121998682977328477532632977251641660789035348482619902024884879839794056640202379829826353248890850888887533936711610004039239384530093848483698477258470815343655537057452401653517616614189639179099711566921094947877023827970253297258462894756008659466011496722072505642088974378781770158657947512946693352337304523979090496344747963186732692829693550426244825106046223135426460195358763083984270338408578002641980209442849351741819850669591702154413422889897543897281591267994706708789427458724592193881602823291430504453533093696268984983746475114949099800819922562707932839472650538409566443331681923783143493732225554440077327799377400932031324028713826348033878984228757836430693491463381944233025925422262068032829597773430484625232018313523801036678909159329158986137818386487011638005642311255861843384360715328572424677143851081182931535671612841065381490495967001880794736945826103512139929277689467934057249878946067177366333784831711623914435104181693787715150963283685567029893284221553717509519513694226780604236060334586158954546802160128653788710370687257859065425347960736386135552352865333703162228710788731038474051014215893995421950305540188847832731192817833403576762218907587264535780379444112946199252374522691893166478121659061398852108394802941873427039779539522834570650827799801741620433342014371268236689503082999976067959207786496681506348960 137628703487197444374462379499340599953331520133489762959617415286106543148451254026425804454701833709632918679878594635596603459374602568684272330724427879842523407161370631581842617215810033134454392195833855179504668842745694124281540920861788118299625626633017950895983083377955735808822739837445376438960770890396185604166155062997906468731689293105623897043599240660849997550876705766029311644937792206574742149524039395125410776940904548691747962784937361733559970789808390448603234150306360949834326605362108660011780233119785799122882737519743210484168266496400502844879973135484867247259412711592924242467746874720270728477334077094420446571844449598030510322996276769741229007087909666201810787637707455397399976624950358601263585931455884868205733168367979500090424273259600965210339360011193618715669119549953983165827151390342938000904034695705374884285832514188842763514024206977202288590496747394876494901659717253286501717962820418540404209588221525678020226775436046955840454987785978161324311159377081724069271856681676215992766213400183650752417755274818178514490669818362568211394651482258705371528896086342451458109399920006947845475801047440328212315977008673720231786569720716229206814310575913558698269669287287702829235554984229416814765410896875166838715552639034348068786979546244096814799570599015679892983803202142807222871352507443797496037665940129928448088076102666098444628987006858691469178373577720634946375601833504379139986130683733628580261985343046322310444539462023198284721676858728962823520912470426031564366579391143043958526515662282970544366717912893676318199594685568309780941987328540428923957259187100372040412353573906500763708458433692382347589020681296020560179820515210677433741855670814852054490664090742404135251668661030094823486097428308305413