1 2 2 5 3 26 4 1072 5 9340584 6 6406603624626816 7 16879085743296494006611933604867584 8 717956902513121252476003434439730271412009640241362775196201481717907456 9 9237081080482940021201240767062008190653823608122929501607287524478941101661955071796883194089723683093196668520527886001298327461852261634843607040 10 12384900896042189620048674429487879833677641223974224073621450697043972925317655040706432513812364975894298838104940170718842530540688174677615415722455959395983965178798585900169029728888873173922006786041960630749029590917881664288216037782587325154889734008304296710892110070085521460766379463409664 11 202402284697865355569051606646010902429829687435587797820280843075626397524775851854339535054932468682914950352495052330686074279191286131998858578258079403207511361282050214434545913673352211800073494438910385792472973834320119134960597038404332616312486119347437174105228797385941543171013297262639432866851486762669705109756492180443185090301584425282845660410805238132189248244679479942452273746415805522370446316635099022427254769689895750708822576281909745081540767249309687331992328349058464468190589103710625123183647648691589223972012244700174103612106968942462637777398731597772932100394013637476352 12 545086321952344473740668460562879321582623236043148801791180594847675826120182822379312935455224762475161934069969318911454352886392129800434505901364090056247180059807582061490171217661059857792974005729759538499650271961198935841588177724429619137752779901312335754239278140584560995785018243041149564535416151518374993433266002032868138044353567824759235958148513899793870454327178486860157875506511695596879435213863039322696349911632578566892702931192992791291271283618137929459468292217158634156228971369716874161820865718859017589786043275062582645324309737121058874044644643198288978489609827067412921868153587584358566443575264069676332823322591534916548020745848069734719538473191528272751654591387318805818772586223278050898384244091732626970321911613931560630947888282797004149597446459250577627012190426046955476151140096185154506303308537719422539523258586761731391533977154093249671474545394779812040556912112822534612436413643975488182608509879941037838127637708064658931656483088751269846750223672363248321698552903708674948925359970367608543595605689995733524922701350202784855438405673352650873510127606441893824972996526609765893551855572552795630501350403259495023135529390729072294889097728049213865984 13 43790930312109120041119191569658112529841885303973639064760823754985744220138115453872590024317968683513843883264249947306658700263904051180099629869453575579790350902721932032835422086114125600788777340104261342630005609689360783896903417839148951494505215581414145798260786265561636466542752888259417768138437149198035264869799588286446707181684138396227584700051464367710506775541206159758512276623114275075081856993913550766761540945812505476668975217082784083618581394605757745803489106667384956637921609416828885816272993173679667430281940029048309071349868378458116429330459153956941998477628744855054582903237932046405769770432198668600832025808877237552058070049129015825353170453382227271360150356715618664358034270743959207981426629816069252553033454374115316493986105976600589224898369415867171041291640382074276833051809499705223214930714512126379265298990152475940387755336624306657742674515015134967078313081751126626897621582850406228586703452838773983624059878924955075371759132125502530637962518702822173859826730024252046599312548368904506007636445728526742529367720731010311754800740790393915268527695869559861171038750159894092437581430960845792846382351410550178659320215018794708573042832079589151139223639899577388891283243231175081395593041385069603193155641465544556436679953902564203270735350255356160369862605653896262665035018956247033687628300938185111777323766819966985859541824093556387931875154366281450529469620014122844394227604071249079779744254168541244688980700751382021887154873075405064167729830153230752048002422140631331397499489533350585567377220851499014054067336339288445873571716285054356320327088179960648779802750159318342457162028022859802723044372258108364847705957854095412732305393843561966743704162328496583749004446491959511116136443002371508060773466816316442216851721967207737825741496750953781373897277972491376739891950511637344162207034303839676682630671267961091567198064515402189631220083008067408690201612029252158966342151634646750133514467508822058736504490426146286596454409043746753344105358824420983334431422905629354639460372964522129880385686987207782053355319164683476466527495317644197049677188007097018201878996075919234272162663171854825460518901187575672592260251418960456740842920961754537140174602793865784603868283309035893033277387663263131409938125996627355354177915148229302557603734491433599801175468066510802760305490515406599697737227181956105097272073976169964543758303232 14 3411776828212342171618980203835445018344901577677718456681205347006335214163052116879782897925774094305473830751225223771355785020562227498313607397083177188040798723426930675839351768630248876815425425858433595470143395816041714249367739866429081080898854376732971920494832018780256152508756347905183409405141034019604587536133401399947062203390823065414034302470555536907184518696641449068823758258583512564944073633963984658920139258659415709961061526419301056391581828971905236441229867024423258257572637578575337673313538571811955964584793040141119197645851753263236342373161023826086828326538037692331881284322010484328564257214416370144246349766931458693789608752950290594929796558526400793014676814227124471924264670208973640892306053207018158847043004523283336827827091824089336286010931052785540412949038885809584527893308846698732677893037612690735522205336143223966196820791984282405839268773042916788397038376610960350031001181312562105507867542547660746306408515202350707121129809658057505142705320754682999960583608588780301482637521539598624921740444064025673054373882163561233028337163212852499041698493620707731931082207134062258632596781878820615635353162881603791346617506208202818942313286895233349757754528860226039721980791002963048577487136515119267964624426525137700922279285943973496056175155175908825218632496400488438805969494699400552512528989232521751300498600361725155251888829136752037263115235362958857719622111783610725084671327120574834788601572939649211120766389292451577286221092602573192504372395901990049797694226943044860368296636717741322316170929210073072307457217368163434764072972033980874360449984000232675280035887521704760887875078326936834037259708113994407019529221821907703458243422545363325689617453743030916909669661834254701671591247883707497726652111978296159262349680284496536324111652060653166899107392210533721214033053152938894417555210193561719182398601840657071294189216505326898138915915637687515283089910212520265759208785204071721257035578794174646053303280421643916366372326274011151690354147302960226964709448666295764574338122761898605657510212821800686707730477258547014042477916627117060910304604170963238196178689161582202046445419033631370462860830666828971057537786266208180919920785191700992545400924893097833226019221758396168831754112576470119438242340265739243873709916775441130765402877597877982410215309502199003257043132396685783375819957291611305331851915854105208349847674593056541904313995881764925668178342177737931055977489318957835057148301108027399518462325713772629915231379063300800204742283682375879958277046082268909553816376582894280082990998335001765251824060877203872199338149785821243461356254967079390718420908042613911852380137951992851768128418738244073237852744005068904072171220310450951324729054149658724776489822095439756921875439774647250727127883465905155671237956589418667099649556183984790757029429886967448427687089682445824375748631897020802325227759605355927718751015490191910295396399806122911246105844732650890573930493824305494148813386031132858692892935730504230498147562899193185227601248482940927149295839084954498050582922138110670736463750422985070662220979477733869333135282842634750307610490449071843050833422888759390339748211895330086465720838270261690448721167390406379221812773316199165705273194753503867543199243371702343363288257897803424322363513681779856052139282891858235686574130568777811480578836315248235030239413975215836703519724955170376284731257209050922398334963330114434137169679697554823768712578518223577779522533827640650208076287999954309469218499913470645482881454564723708114037089007352313676316140193068730657626047210501244466156202159982168114602729261199488111300149417295499991263243249627096301735082309245898086432174142128022247899276718772594259476625143802004182240573674020804706469677022738333009858285079767312092042097075218648588253129869604975247783285356782452687473831113599578556367870208040193170373604551596589117709396265458639880699035939570491356924431507149904196081490754383493134619729590276663542134767823991040603899411041763138389059988532072898777061877813626115195446223619469800999235606257802602661199230558735867698647216737086777863570142588979067736140334252598610487269698706935584114240563970378587720132080638420001174367285014074344633092060856596986861073276420413778841659403361606110404630439767476257628781831534834471895494131663863032733934470677238102941418137870950106937996648117306840900439295688751909220554948715370335409213814464654451699867002401264045284207344950809709888179318647103898090063948092091391127703969461894012870754573393420381962636426172391986618989564252180470065576462892849111062624836845968203755386801917576190706480559651609281148912664852262489469076613807341636291450221922466940734997709274594536621053410008240867741314605850238949462675530346884809088771115726652113864317635565491080525061816320 15 270606556510281539180852290695230557839482465001636433244362894071876201644881758054774641815998418169552259848542073452262889460326398675897641035709830704532079616617696258739041570645429411262835162450634448300436432775113660761310389763120392362695886954058018038910704965855015329656199475242483099520464153995861855906867005736568875182691623391497393707887944724354891495787518601556808759222379204536926432025372091878993624127956518759528030465072067789574032214802332786001170064166624473612290748016382116769132909772367925792085852349037860172272646616868453073932871875095597934190966603765855168486154480257384690604287435550162992095804205835743834086402308197748911249732326602990523265568179078328253615284046860276079495968362926214107641280352237807659246385389593803081098098701670760406968162419545826122238730620946509577069091480491801553890357962080059585567350344680172857690761156525851828326118552013702266516922859114865287331483454436572623151709183275975342942190173607956187191108056486303617741804449552173312512153154362074409808355586145423253016596726755205371974831918386818310499632722226165297836246068993738094336504461108626399402841046016847365956746169766892602865441953592629632295243385026590452141785501487580551767616936404596582299358628778047136502657383831463673473228325593651130815239497167435914160582061868732253234073511830586545266649194841071501695578533852905514635983188310650339648684917816928291099373341002826698542477049819537053366405651500707533615324855929147670750619199417632724126186368226693849307257701265835781762247412007259476210810024594591217101202025961099512803706389995229954231956541387025802032288250916152023171536096544351886548615618902507149570025867868562948273084054836172737004285527239130602121614426955797192188975709828737118142114963101061374932293052061110689231912199965520316007701054187380736875796030108384838164785238876476318803140660346847516415676328926108328105825208234065251222504615790675929418740477373584039250529706134074909291068033289710050107558023282001091004572250568677224105518637573316169342916316644296675778848986773570490732638663398277696578540879675038168165486252084410150380791217147722128094639373371348532605849442999921531214956084618250587015933882012116788413397692665160413541761653523283267209888538655796262240475897048947580582906603627310632671110677311391092206096864009990435404016274032032752240517812268706259635295363039294606380667331772248271908865242816718310359724196928637172812354268293765602491812883185897998663649233782227404101300446991973447901763350231946925521001677716897052137138674642917057153696810725768689799194743996915037927665143507974277682863787851989744134497211942871607207190757077183800347164159681888672105534187580482803009275122542974392104372750382885900033495879888218152802284600661194455371545979864834321034411732824860688393715398048696795305561684058574207752018862000499029688340709880221690385708785807686062375081315158968088117414556187056119162689634804907994989414322494306699522983030251354927663096751118678245369170024730412836632659226811539209254155493062607944522053105811955358052897584756142351140086944942916616422852838385783439752846433933285118400381546440104821839825199459296109506234050027667148213630143546323174026630948793373866742693125767933136147698342172750223978644914724869787112989353628770164176962185941376628885447574529751641101489156279363843829847054303206070671836007134969141763626687413358931010272046126647391355615215127590403731818044279301169718905513832343023863358236314209694832728528717862556849230350052776593530134180039935158701049103392557977383330191337976032814211144098454384668104345500670438163539819490366787909914456793435926308275534840191567023063111430130688539738474374470728502569660582093373916306951333812257341025803170247547960665975608209958481009590506791415142859154397797826969863282006428826252265616404620342357567467397408646208976940747000669648928296487365154781286604836282469582025922669214021836196040587536260321765787107706350432205652283298159710986107193133830483116798225293613450703070347606616624776693819516911683819605434753497453885453113897265461337577356208368423325877507184579583811374948562488318038988438568036221869510133861022057956814647842768511732936529703327236671144344364989574258427163073874598197719375609849524069789192371824536892170357122492371533778597925764408705844612003864697584335079522298534839239624272634611913223788189374129283959930237544014956067235623076214873357620597420913331382223600667764345756854090183484510190419092154528756570341700096782070428137257597423216621748402548284118904786142478427261226639492628069308109307928485328386430054353734699558631299071679768420689873666236399653135784690119326239331925612840011810277947599330605274854125262012500655796932546981710167086135411306293316161964911371657590458393607913720607751609632039450764318688399662409911733904631367096554316928758837886644903371614751521091846050474656097681220246525424919515697143707721360056098678201572361136854356633805443092393762675699928938641958497872183949955783914561626794834901703996817261129602675626412190433854973669290784154863418840744424111529114772648549963096527064189644647098370053130475674402214339885077181538764417765156287876498989276048528713385784768999783389894872921931392506232950485609142088450608139495311537482421999529781090412791731114988629179507224911822364144379818432573374603426881814141618199131107137385548105634180087875132165608476843739044337202148213975166341783203366412712250960913438348132980940745687825101599078045671693904265466048362870307334111318873129280628153780790527134859507530439769344359896078213516933990786754178736606987103168297930236498168491885897894345912907700626636078377275748086389828505709350412226111339948616085615656561449385285152799685057421419224598924516726789479771600467300338008379025810803085127509930391866737893784141871927583417427747943117045392711203225036834363110660635468084524375933425274438916497550329590304148740069872463446182888586023058634710277269684872948247920741444329074457200173951971030073361322303477677127367587063946675083788887428595812603449501099237043079929732165004886387518754781572984089566546751757061324476288980284634254238082792046586824555355451804067435241660384637311226571485771865877139893714492793246411128175592198015699497365004872950169992667682836743042869990108710201505801194719599076064158390371532674482317928326015003641751587690885616577008407710707516990596956779156108476979414960037726150996935607715475843889283795082355616186853014119122003267741346096483016287637968590751547428413707193602794751119802697658566115786895449161301759683701599698683097719548201098670530152268519924777033827790805497811554038850704423518114095327857132229679343218487753897966370983591213091161726446540140738456854312486558989556598462400165118840459871573866937850207396261799948333032843888297307449685906808112314863052966962068569991665268411020203375963720648465703110882074058984001299190380375209729907115090510273267132460365333760836768955677654499819404507948057956184298572515762397132413241044817067358340138366102550904129913049147091110829360658595797931887966705880967911180822572814885740311437950128482777735256270086532539394047077745061791854710712431364672898975974585997092166300787653490932802791081194271875182202548714600330031860746531920909638128108469146763851885152539610827749436884668127694353892612837921175959990354913204156362509296826496588427644875864776419150231379241841969304038119037077084141973521615452263439184334600595736271221351979936706916850400702069288292254294534873839786885541716597706122221579331746788758777495076295551063271852719132539449247439380572867669256773843481866055871595329854731993488319869914004187919792240647986794263454818775931808547140999839961461254298697158666348364529188725308223757215028589544477437178431765235303854152090763937046408296936951022659871035251289019619747060053606811852606378272950295518178956496509282244014238145494926192905972302983057026779758462313093713877588304879080200942941596016908592909187150011472394347106049500887500691547986029842672916515642787327731699164745566556576090710342109225967512529206930299148173117801551429352500185358848328472232005315670714933789309222570254588813056495560018647656447012308611786401206405964060809126387427794490543787033118286939847131260252160333515357122143213476808705750894386927547100823943852770462004739719195561423725750183622323521905291120584792320640904537355387494946848996702324702169902452673333608886340380507791389312812424899841701081428057310253912356575993849290920534518824189260596927236080654166637914836373176769236899745053924179595828914793704107490418917398979643720361772267857950487763313155565584896632604524252592012102079484932062375866370813194181014842171819890282346051895691217948889405508528344290910265364252198218095208690760888513354382347959105490405885823278338688923646888544539285146742747083603825862911413027256874915579655449498054265502252936736763319682744006771541566891618305452263246764267442010732773609626552193521068412589901981441817985258142142481919679757641194342849386460705273491771917754221232002915326472087356129989739010662485349558066485074545109258512079322137317212797015305553548779420940460622391252173979559559224296843008872736044734950563586328102289583974164120160543219157402314326397963373466705891888142760738404599134326306292812417406269440233875669165816085371519252315899107873436561558305033775947326137801094527722968310273276863067708028678174980710420207671820499924764019739924313708982203976480814777336737254016111672877266622446768315187973815182940839777226091388966370258068182611476146618889529020383232 16 23939564717847995637472038828804967522883550972666435200797550705094740895439319687363890652488941011405312191305355606095342219092579512846340379556479287304271593131580746531826320315086114580568170416079742913993355384590950073581463086035590610926372030257193453221066094064762242256992172546528986628305213308555918056819418732766764212794434780197776364491618611933884020714731011275557934372531852497899583264653785964621072181037175763990068440951551204556980349003650120733647351424319952691136320852088620236926097913194786850743374093074152114720129534167332403490589505540676314512371841265375246899799742595084280955139736014858996972579846660584206933646043383746331352200247220456436343334119744040873657852546091449106252165489240889482951228703797554980196026227167938662181174140760783195898566483312461008942074490184561851060981292689903874175418158149634045591675326148871155263408245237359452090358793289958690032302468080131129943578238707521294233581649485154876521447321570896732165616537856065903742022039586327514596933073244691363027401403908945867910077352113010234464376689070867477218054049453152487943879943393229870983494602777537480270438654898749996887667660307601666529046514811798550069955767671249121851359127818772665510463676872412766223868069733819974215053402745990427252787684473648877450190597055245047052169802261787977344496596849654375410098360680269270994102549347597244885743127121103489493085971374570130885713736552774301035807524774515101704922495418358824953397755137268692677895271168866878292027327651308454937786973282702882241130416300438986247503036343209479773608955177620628170086415407077998216418599033354199491577528779873930661752182652604493868798863061062915246013036689472688502547691569572870156739488623158026368036054496599445944654638120483944879859783956905892938329088729477068505474826916297152764527838111704358758416424339068299001750004759400208739027073626248395246676839608995220881613407060271997314752779187649709239007219873946538931927136805203343316906179798031666140822018380540507180889385422039933130424954971961150713483119021295761064388042655983050778030570243462472148887469566795922900011423320476363972800564781997212855808688797563688513384922150822517849150294174905824170057796550841366800766899340696220841189015312507799941932872575717783718443424308387238720438673256580352326009806834600350658726032589839389450595771415881675994705324056197280145175748903544545621537405748542504562344710005382808523343792375250563514133682981488707881457582934598417842101495752025357163005159334337959788446805237692183676725750890533877661228031097816894162520251694088990837182712409414058673280449579728538121527004269948567672177662251425967250539856340354974829155105407051859149172707094915760146443646963975659356918428365532242614271457475889575252340092413924816236552280241521002183441371879873771459519295149395950759184416537505191140392324471658460080458654322524417315082834980298549435234537557767583059346870676281733192402214539297589168199965666167677964502766199197209145014913742017269179127539573351632933247904061029717575160823978624715775964719785599030285305168505115341885472364729812484279539505171237488768444224634635108657967545802543049546539284781470296842368142559584841531815152612227959593639638625621361305741563984355661801093868676566501887492062603796748180773941755385135938224680986811374700815900475199520703586733356507124970385150203469445071769809382984911321853775597288291053797288497969816174365510195261234101710435967651200459386428384331023261754180401547196369956450074587202198023014699877462941695119007815112577494778128530991155195645475027759881706222033179056296561064598801607277690540627669474168668694517977551545072740955728281999923569927107036662057162163492611148252651464774942687022131989206568111059959973599223833635080968785463601843819756617471361211207331375137612139812921191865145138837966781635135466156442451162158139369872138344195402323762403969317025231437996701926245792784264437189947176292591527569420507706794040978947257818940307235979255970444972480949535045617032805319556073471177248031165262233018559533007176013886359118230950971664074587286315905241838559798360850817260806134414479101557664346184131097300771490424604571787987964907438948903937611071889173163829156445164967350966775594718136074403560614515699939727217370271881304202970963629218848495965321019958448783013738827402453530841843995030874712328584713792599034927815338102317831236922711950942336949173925305002869372592384955450047050386599108034205233530126941123167107082607252477936010096421715231291747789853149882907088143753632268831435166769525288583897900429829870223159165190307277256709978283685577177408268826682708830945934462441596286749381529659995000591077915247967671311179820075897553835244370133071769269775563097150899614680230136047926632774226197297737720524168423328334172242264134453302489128454816283421058176265584099594611693617670425071618155369930675922865810853078964891764823259589439908176638131248151283523096986752651009141736538745948334465628170060456538198232375938988612688833426568505964679033980455020630109625841905346576665433328271170617896624462426077217016062862515604087139912771262214633286947055070489717284292862701767365064234133141854087573093844486173409021679497222968239249607433232838481885481550733807492407631032903237715354449039142564745923643989729895325835861118825982521872118080673072357077428708723399468976722053939175668533887898352052513647321305353982714053326189391317163318850391485669043891978598475934798567283274540901582702011132680977091033095329519515790076325835391931720592496467869366643575762551204907899257760128521889938572698970188188065748219889906374439738020262057862844845309192077941416082953327565906664272363338852620000256707780023903859586172761149681526579699653203953982285584516286162780933632933518604285459580235694940319556426051148243697930765683334723313470909066262831007592685313300247394296096856915979031917084651124689128026529702099119653773326395517117617947973556647222282287504058326030227992934671960783958048099074037285233803034629057976368266086212901169237952664495311239932280081018929497597663949579985658815775452919161962043706404403248734911767043945486869324136064571240699733983024668029918372898125606555286260202718170113664589299983961195648267379091778449919148567458657446572149588846191866390051554141142030991764356734675324943805576549537544126369248516796540624170777815073381831222106877464328859326850453238851422190407461297488738833777492880576504698181959172405690276863995119918772930283803947299212244701573460598058149209165261732618575165403370304074315025162173722842798237426732965568252828098606546635226251724767370093032050671262958923262719698406247431928099536830437717898994917603730285674110867315121310850402427369125918649471080722470582833377088777388606688653378762832426478031647068039205985341684887437689356953321187011649806876721508931088586500324273518735736222783567670941504141354842727832698586937956980337628943882061336971427064820968665884031915319525605045211131548718513128734422362145981465457340680112860961435198919094954315820442311080407881461261522608366917820131433310843674657646136973147238529225108236111951660876051801670416709466914781357621242204661249521577598879943692475666717160377156671495203635664142593273156915276580839765446259019562157200170546223848639968691680428187938020167493331652056435011861203245447311350187324631232528180026429776235674051132663947912052601299882069608030136508146798394714813414851923226524540114993200400420441951916368351013731382974959045225332748044021607935452006820030642418196430238501822761377027543725801007988549929876136826101471448603265309953735881606019628882322455122387551879163969602560118122672555032836345886729513072903967336162776106509185158607840739607487439759987006883973829294380410851145395542789451185842211758817183913845611291036464423781519228180692446699082291557012747447970608637656011737342282979709472939097914718721489692581273160618154395562666036136222866405418097607831339343781232226639252270084616311390262962375968416750863800315392377929724488377481184483567097906620851370373403420422192389597594485748348634330200462994239041560140431580582404973710344542979369696218126376875976301055942927246676150949983356719832371810862600797832418775576800784079507494760371904843147804886648039473693172765910335331284114886976551247371819404830071074109777788637290431062866174127116378019583667645548354196614079318633591940465147425442810282902370304072886581788834069762847506695140425956504259262440453238033913352087993691269355823528834863677702679000198580776346702920272715987914950222403073184103959998818420053705753101319829059070789409335305095296520569108641189871925871737529216431179537769612289653786442181247394785488086293803690051003512332221111093227953765814912161737626492265749776304206940757204467604853104893968280078301383053646812209676241353770046819802640512405261953276205693499761316242949356706067933470036573476651514364161831162580664905332182914132515761873989152875668092186133961811041222678950185969723424816652309687202162736103583138529507444604149642283067986983861677674292678598400486680282670406516190084188042013380363143449036310143433752129939380407427237147624054885813583040325034747408844361024950285377865538200951816226244327637213756216612691225377965712696049951946979035091953321551193692513056689548013050462541950578636380713239810992762571305828606364349688067241348480304037101748891960064589904794295083819437573644617268799499458955237169289759813611670128794564124746993568191756230603781271361267238701555134991138844709659679248539186752053386991765401609152513374136000406548189893835379751648424044817052840679662783598888656797063970738609919528502760742798266844564987103725685661493144625015938468816962176888349641445088997577567992936778211582250198214940056310742664254862395525380920663109839960773508476861789503834443688336245404298711041424251210107534177508497981246778434031922452493591595198842007296612096932223518856708644984105720810954442574354718338802530357295574069157440818211223284721829928328727201230299253168613912523212711712953444545991185070137877326973202613017215820908958317057523263854561402874634850830366812671000559502769020459303027283790761451282936965782328779196818583957424351399553911777922981746494642379023554072905460549145941158622656510957957502344705266855420830257346027239739589121911616318022371821248188983496756898259390741767173109158037442397298337505179577577445517184260843857172833986991063106142835105084110184269118425341964822994756838654564799799191952017866178901779137121679123289095672357904286671615526927621267822763496156464338874094779551656923467731932291960241367741191239446308936405461275900493082535835264943242407819991089965512800174291625516869210786554332052015770964426408172554454002883287638464309444528712303121539660191001075720906520119265032007176576968705645542873407736161290930355990715093975101039916334052303191890009570143319591682748682518124751645982657366848633927108337998969574171415351667923902840766522340439308478114230236416718981600288256623240157049021651863158510121607765291294086123328777050504026047933734356281446097749079133213416114047462951127859583467475717048141378558924743111771461532418838273947426986746953107762608097118891054174318968165038091701344698743298391026112204781099839146556845025167300380148349691117846476691051701280506553169638506533194608899060463793563221627161088550849403443871936893471032650609886376659518289532191148714799855605341248183483230704358804132316975022461879152290862772788094623050892942934569453908063492534548958950187214939625151671699692413637188182028065367019341727451605291135368132894714193577546722266919742539273308825501367727698970085326072094357927790688085685755959895932143651012532446761112757701515025885435536701185375025831015766139213412536241006097397239302196545646901432719166561655659562693894059107713136480090239732768421389198315007394283944866272999148810385495333222723603147605453448911490365584606812580434914902353451299155608657071468919165591164988832329179020053041206382122682913812257254462970597244154276908181516982452856514537151621515455713827459640925943899207821171639198523555294718412488909968311891429809839510015224013616281840504106203270918179966126609151104969887380636205830966136486811129364843478867845095111510963367399003965074617865048954705238243707417680091319032778284212901151809943849712309754502130747265203871500303615099636929423971195911853174398914784664186078003468938052484787145119688563401903657485320139506344600158197644136371096141006323530205586262890978126997966919624721768373386020000334256359721413637085772142133171935569231429985860297876167053524715423485175124335959980200931141459691993251832115605061508071702266303754067999492910084816416287183269467521068872580824233373406110239794909770201507227742996976711855711617980875983531566918841126142522356378882323904817634665623673680463545571513905572448573715454651971321232650822721154707240258658703488099783887837617525230738455694064624585527744739373687580743922259251905197275572306742731845187652003932229721240545382596897335472267361072949209215003052049156294051431485861601587080136534927772654136312707895040120717051682593969172471034641587204685058694224009061830974319859399089910276813120043400927869735876093219468618017731226641089300055794600350056528032515981108182454353680660587090092086143791416199322466858935039079472080057633092890107840802884812872317974821281620972643133228732330549613817043293939769855011204856681373308633358916055450420105298217788065950134026125019938091775118772914023912259302168387197362201779769960035690847238700386324198086335529089078270822700154450269188244497249132780802252280345649417381569129868263734966046623463422179492454074693373110486121451607342185875948551926643549792607616793786294445699424974125448039350661159630445938234484670185374257334223784536576128968809641433217715173660963941192978572725310672160280997448675137901248153418588394399827996337209319116901380900413926841025427419741918314926348250881545265771177004699669964031857068533276913747615995851395086242805907615048926485851158681435809233423571303845217607783674239647852179958582662013288260302180569858302331078369941512636690129336376464385826307049689688583117179713393216389142152325891808606227320805479582017736752546452357026294862825683870542644202194948529350445960350789336118084837485565278238546875452477356004737979875924769442850068950300623516339943325490301415755605338913441383501407446510210761076503033243699778903164542506310705383714570998399352598752724923449102692849896393012593918868149389068354033095190897857858600762427780340988164863767097183623836308552748770383463400621782514639408384284946336512273735195117691462867137861664804047585349472996393783400319479261591321743093433476005623587682770715412889232041571856079687761210505493355408955817903534680817730498367490780882047454235037265643059490826366129271968476058888519572817894744023903370782213873665988018038755313531834597846269676085879553730420392667708376008135507201685578661915019783432760126035225015063637266381212806830631389315226173862528066625737991654585352648808252083878532726646466723893478949968099142681945462913896082173945050954996323256849228077948928592355114883811061521179220508778644258193426435411188541783392321319553627828193688580025067114947483655519946347588142451009892528485009998843842675296509860231944628047169650814418449630709352161407137722508926034990617923277038365057971149154125547371945250710470362124748016040865343141194310313275350506131253945081398854939546861818965175954520573018713435044625633278263711505178072525995622056152560109319975602723546558360571508789200740797855186937335006498438360834141153798976679576335299395626418380701029104839797087817912624718148437249642301302271107892078399400248752453504357215135467645234884442269734275624763840334698761066404648929325243681644953666211185056229158544796146528316421609667140170419109698138949448030847804205340568314490218227645337078034660840731785257991709815085588878218966294598231849213168088100165524912987462359105779722769039937778882460405205534184194271435609887142041282873557401162489150100299147288190433039006297454330984245480483665910438169544946797404773278906647351721595851453338537761280137193195397174662557432203450656364807223930318188410428991764195672112125688393906096595072098009549002469474537119984589911240218340771491058861848864991176006352742649174878672938066622987940558585836735419966334739356414898863866964978924911269961124797989012931648811540028449218475813133059375750303628306133347776767972920120059454834643417018259665725164159666987027829485194476103426396625564721825745687369890489467776413553707987160879814354286653652808441039160931405925351178077486736163850989323361655601091656432606305815180315976067348051486566225940208678234000243246997430673971120051898755534541738066132553849253262566115175826262104801895470751226282943663660934797860766696292991087901221417151145384562508769826649927285025699674486953383567712173942730900779188839036072918244899997848692746535782852781659047300102555683452584066395373170392953597796311543675494102712866572989923968834637158801372066698902357861078997596599238336360995039415141945226496188264644340666461311401860671302015135168925217391513135345501364630800152231666247083362926703380784693202412678601343257149917046085143393108607366277208548458664461111443262946043619994269912232589489924580647547274781879527078893452882640934366149210873518911028759304550036765609740450492003522094506497458492155710528850210654866089842934382142526552587395740146125306514796349053385828471513798021642694351143117981013818722548824563230734094734433124298026876046137868412990744375858408226114438360185621097315990023976317973020365017566901294589305699633999370104219927407685966087449929495222034915859782715621543015373105571992912790183594579859582326196022187651418546056921262944952636044451826185894555500386380276828198937447179375620380237589001154563315782332287999476593762355615061798181879781310146444647326804858694348979164865249944415219285905701544602902494765570813487918624193136279906358180859847419614652889474713415241703469443540206844655886666869226630620291648033629933002777493484142485264553752758965335135824805463460250929249002854676546443214862060040889127324694231446866456949588876775339886154821398738228844225567832101592054023202325885657280959854268311597143150579146457905132152823930572072416161455087737242332991283241729499172569925393991032979959897978765916389782603101827033961179269438628267168917594321661792584052126248545797048699706122107663922988771948218556818115731952082851280267564079500951601211422561826989539318536603784760326180596531622988876132937183745214283730998334168589847028519770360683667867333272577587938416589036424214068537750560708872749162276317153246292511576869575501893538502607976873224031428865288146478841003850694392343634995244871868200295971952863601635004075276312925457440550149554615432799915326242463912373635389614459615765452640389124633263089310613160234033460580113882192188074952379935368176330174048815204145592388196002247577413425398879192433776287665278371436817801375519218034125289293765237088513578021252869857301548742388129220202476882138938997423118803298617281834710017525646051120996745177819264506436007533528890736640