Problem Statement
John is a coin collector. Each of the coins in his collection has an integer value. Each value is between 1 and D, inclusive. It is possible that multiple coins have the same value. It is also possible that some of the possible coin values are not present in John's collection. John can distinguish between any two coins, even if they have the same value.
You don't know what coins are in John's collection.
The only information you have about the collection is the
For example, suppose that John's collection consists of two coins, each worth 1 dollar. Then, f(0) = 1, f(1) = 2, f(2) = 1, and f(x) = 0 for x greater than 2. (Note that the empty subset of John's coins is worth 0 dollars, hence f(0) = 1.)
John is considering giving some of his coins to his nephew. He came up with Q independent scenarios. The scenarios are numbered from 0 to Q-1. For each valid i, in scenario i John will keep his entire collection, with one exception: he will give numRemoved[i] coins, each with value valueRemoved[i], to his nephew. You may assume that all scenarios are valid: numRemoved[i] never exceeds the number of available coins in John's collection.
John now asked you the same question about each scenario: "After I give the selected coins to my nephew, what will be the value (f(D) mod 1,000,000,007) for my new collection?"
You are given the
Definition
- Class:
- ChangingChange
- Method:
- countWays
- Parameters:
- int[], int[], int[]
- Returns:
- int[]
- Method signature:
- int[] countWays(int[] ways, int[] valueRemoved, int[] numRemoved)
- (be sure your method is public)
Notes
- You may assume that the answer to the question about each scenario is the same for all possible collections that correspond to the input data.
Constraints
- D will be between 1 and 1999, inclusive.
- ways will contain exactly D+1 elements.
- Each element of ways will be between 0 and 1,000,000,006, inclusive.
- Q will be between 1 and 2000, inclusive.
- valueRemoved will contain exactly Q elements.
- numRemoved will contain exactly Q elements.
- Each element of valueRemoved will be between 1 and D, inclusive.
- Each element of numRemoved will be between 1 and 1,000,000, inclusive.
- There is at least one possible collection of coins that corresponds to the values in ways and makes all scenarios described by valueRemoved and numRemoved possible.
Examples
{1, 4, 6}
{1, 1, 1}
{1, 2, 3}
Returns: {3, 1, 0 }
Given the input data, one possibility is that John's collection consists of four coins worth 1 dollar each. For this collection: If John gives 1 of the 1-dollar coins to his nephew, f(2) will be 3. If John gives 2 of the 1-dollar coins to his nephew, f(2) will be 1. If John gives 3 of the 1-dollar coins to his nephew, f(2) will be 0.
{1, 2, 1, 0, 0, 0, 0, 0, 7}
{8, 8, 1, 1}
{1, 7, 1, 2}
Returns: {6, 0, 7, 7 }
John's collection may consist of two coins worth 1 dollar each and seven coins worth 8 dollars each.
{1, 2, 3, 6, 9, 14}
{1, 2, 3, 4, 5, 1, 2, 3, 4, 5}
{1, 1, 1, 1, 1, 2, 2, 2, 2, 2}
Returns: {9, 10, 11, 12, 13, 6, 8, 8, 10, 12 }
John's collection may consist of ten coins: for each x between 1 and 5, inclusive, there are two coins worth x dollars each.
{1, 0}
{1, 1}
{1, 1000000}
Returns: {1000000006, 999000007 }
Remember that the values in ways are given modulo 1,000,000,007 and that your return values must also be given modulo 1,000,000,007.
{1, 2, 3, 6, 9, 14}
{1, 3, 5}
{1000000, 4, 2}
Returns: {34955525, 2, 12 }
{1, 1}
{1}
{1}
Returns: {0 }
{1,2,4,12,20,36,70,108}
{1,1,2,2,2,3,3,3,3,3,3,4,4,5,5,6,6,6,7,7}
{1,1,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1}
Returns: {63, 63, 64, 64, 64, 74, 74, 74, 74, 74, 74, 84, 84, 104, 104, 106, 106, 106, 107, 107 }
{1,6,18,41,85,171,340,653,1200,2139,3739,6436,10894,18110,29635,47886,76533,120986,189194,292907,449419,683922,1032581,1547055,2301141,3399744,4990968,7282354,10563373,15236731,21860534,31204324,44323795,62661924,88184807,123562058,172404973,239579775,331622823,457288348,628265081}
{1,1,1,1,1,1,2,2,2,3,3,3,4,4,4,4,5,5,5,5,5,5,5,5,5,6,6,6,6,6,7,7,7,7,7,7,8,8,8,8,8,8,9,9,9,9,9,9,9,9,10,10,10,10,10,10,10,10,10,11,11,11,11,11,11,11,12,12,12,13,13,14,14,15,15,15,15,15,15,15,15,15,16,17,17,17,17,17,17,17,18,18,18,18,18,18,18,19,19,19,19,19,20,20,20,20,21,21,21,21,22,22,22,22,22,23,23,24,24,24,24,24,24,25,25,25,25,25,26,27,27,27,27,27,27,27,27,27,28,29,29,29,29,29,29,29,29,30,30,30,30,31,31,31,31,31,32,32,32,32,32,32,33,33,34,34,34,34,34,34,34,34,35,35,35,35,36,36,36,37,37,37,37,37,37,37,37,38,38,38,38,38,39,39,39,40,40,40,40,40}
{2,2,2,2,2,2,3,3,3,3,3,3,1,1,1,1,6,6,6,6,6,6,6,6,6,4,4,4,4,4,6,6,6,6,6,6,4,4,4,4,4,4,8,8,8,8,8,8,8,8,4,4,4,4,4,4,4,4,4,2,2,2,2,2,2,2,2,2,2,1,1,2,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,3,3,3,3,3,3,3,5,5,5,5,5,3,3,3,3,4,4,4,4,5,5,5,5,5,1,1,2,2,2,2,2,2,4,4,4,4,4,1,9,9,9,9,9,9,9,9,9,1,1,1,1,1,1,1,1,1,3,3,3,3,3,3,3,3,3,2,2,2,2,2,2,1,1,7,7,7,7,7,7,7,7,3,3,3,3,2,2,2,7,7,7,7,7,7,7,7,1,1,1,1,1,2,2,2,2,2,2,2,2}
Returns: {210035596, 210035596, 210035596, 210035596, 210035596, 210035596, 174317264, 174317264, 174317264, 234665825, 234665825, 234665825, 491539007, 491539007, 491539007, 491539007, 201731078, 201731078, 201731078, 201731078, 201731078, 201731078, 201731078, 201731078, 201731078, 362984374, 362984374, 362984374, 362984374, 362984374, 342030625, 342030625, 342030625, 342030625, 342030625, 342030625, 472492595, 472492595, 472492595, 472492595, 472492595, 472492595, 413658255, 413658255, 413658255, 413658255, 413658255, 413658255, 413658255, 413658255, 545242390, 545242390, 545242390, 545242390, 545242390, 545242390, 545242390, 545242390, 545242390, 598356589, 598356589, 598356589, 598356589, 598356589, 598356589, 598356589, 607367594, 607367594, 607367594, 621012356, 621012356, 618315827, 618315827, 624869076, 624869076, 624869076, 624869076, 624869076, 624869076, 624869076, 624869076, 624869076, 625965140, 626718366, 626718366, 626718366, 626718366, 626718366, 626718366, 626718366, 625167848, 625167848, 625167848, 625167848, 625167848, 625167848, 625167848, 624845741, 624845741, 624845741, 624845741, 624845741, 626916830, 626916830, 626916830, 626916830, 627093453, 627093453, 627093453, 627093453, 627319111, 627319111, 627319111, 627319111, 627319111, 628144095, 628144095, 628112015, 628112015, 628112015, 628112015, 628112015, 628112015, 628073537, 628073537, 628073537, 628073537, 628073537, 628235446, 628102091, 628102091, 628102091, 628102091, 628102091, 628102091, 628102091, 628102091, 628102091, 628254187, 628258645, 628258645, 628258645, 628258645, 628258645, 628258645, 628258645, 628258645, 628253864, 628253864, 628253864, 628253864, 628258664, 628258664, 628258664, 628258664, 628258664, 628262681, 628262681, 628262681, 628262681, 628262681, 628262681, 628264428, 628264428, 628262701, 628262701, 628262701, 628262701, 628262701, 628262701, 628262701, 628262701, 628264568, 628264568, 628264568, 628264568, 628264911, 628264911, 628264911, 628264794, 628264794, 628264794, 628264794, 628264794, 628264794, 628264794, 628264794, 628265063, 628265063, 628265063, 628265063, 628265063, 628265069, 628265069, 628265069, 628265079, 628265079, 628265079, 628265079, 628265079 }
{1,346711436,448044553,169076686,882250998,402101102,834542981,717759958,307300034,362068650,850807177,856108597,570084289,559616718,990648426,920747396,836122971,203781517,518275593,971410743,972353856}
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}
{710692,593660,553871,927381,244928,88921,254581,995685,956643,565731,760456,942564,401292,608982,405395,130018,658530,760100,880299,834696}
Returns: {980542230, 960722897, 537923653, 984590528, 804014587, 983785403, 337487216, 480851112, 669336005, 750481313, 380312141, 910781870, 278302610, 665220810, 418935030, 503735045, 42398387, 885891535, 590613738, 416848652 }
{1,394300341,123445730,17686141,252220247,922896557,292347359,363331928,480673084,451518981,376431169,387595507,834538565,763286288,346979051,466532540,146791854,82646613,610812386,791798544,688404900}
{1,2,1,2,1,2,1,1,1,1,3,1,1,2,1,1,2,1,2,2}
{555933,898226,181778,971525,427088,475077,21725,391162,648626,205646,34462,741632,4810,778033,627671,218460,634404,428003,907179,96644}
Returns: {768239203, 343581227, 22431820, 114100226, 124351768, 569826726, 866094358, 129844972, 813651808, 629190919, 517797885, 380678923, 675238468, 384190206, 289663420, 255501582, 143767846, 736200207, 617969250, 857293857 }
{1,173430815,997305821,3467983,660185353,961429513,348828249,258202088,117951725,527171661,197671324,539551563,486899926,181474238,325346768,253643850,57398588,624983519,643240240,360099394,807532025}
{12,1,1,13,18,6,1,1,1,10,13,1,20,1,20,4,1,3,2,1}
{285154,297191,773284,386876,312344,320429,866511,410107,279387,438254,646086,370142,277544,449629,754409,802244,595092,160729,549203,238234}
Returns: {401576813, 877954381, 373489347, 617234181, 320358115, 392846821, 873582097, 340709196, 210203662, 593212852, 54472197, 301642262, 807254481, 938245839, 806777616, 517467117, 85678226, 814445931, 175663358, 347786324 }
{1,698440524,830416308,466882129,638235893,34364434,647074319,561726516,434167741,303707613,274858752,246763122,650174426,388442848,174816431,834287214,975433040,232375783,65679743,691180789,491580866}
{7,8,2,20,19,4,7,11,20,20,11,16,19,2,8,10,17,7,5,5}
{231786,920405,178685,253052,228155,829387,376066,679005,781773,745203,408622,470527,602538,422159,988464,206804,294904,94415,569589,820183}
Returns: {434146221, 732664839, 54861862, 491327814, 794943117, 414345582, 474132641, 505259334, 490799093, 490835663, 880210294, 273657404, 538076813, 901278610, 511043372, 986680615, 85174045, 946022045, 775768506, 227604467 }
{1,656198958,661020929,706614913,873264677,302425622,15572766,568772484,421563791,50767357,113568099,600235191,117600364,635897540,928527201,777970177,875126110,331738626,981690526,821620118,231222805,937199886,910378636,432585802,624651188,344030077,131808243,748383500,627436238,873983190,27648877,910033233,443377927,962392461,396481250,194669498,231802010,609494932,503767869,86562180,364248841,707371600,159618807,888799478,701621995,517301539,613476842,560559423,2639341,970158485,611765979,179858405,734544263,225995885,61297603,300595023,735014220,675139724,795108824,906539533,249171782,45306410,956045723,379703819,412625757,808561305,743340289,759012011,456545386,931768186,13821941,285025448,580347632,346261628,985198530,760843320,775876654,630646663,161259464,684749159,45619043,926642362,920619522,432125055,95937012,145093937,999770283,706898424,482047335,505442931,940952187,236431234,803776362,886208693,90277649,631401636,79718402,107705264,888226459,420826619,403367181,800167518,152141786,852369853,924140064,429047169,226937598,261074817,678306691,1335582,493209388,668302025,70310750,293405759,947668401,499376648,220633063,239001620,317439027,755010474,466021875,610518795,167218952,572515721,860749106,416985359,252678686,639154627,274010011,80034727,143766089,114257648,358603750,331868707,455463410,240826131,716588169,880728841,453408655,336753503,570240731,448065323,176421236,256186973,982043995,310799215,856439692,231384663,310382591,315946505,808472112,904571798,567040927,499388033,749117258,683662060,704774547,466083592,457606255,845797547,907351330,776377671,180091910,22366086,650375410,346524860,521657972,871845671,755653660,454673634,834316393,455741074,413469550,168338712,475216227,435378247,759411067,605967666,311127424,631567130,182072354,449838900,545066186,463204251,270498749,82125309,426669695,182177815,176433740,554994871,123148448,999930959,133936853,27141919,218944109,383381472,290142564,569484652,580829116,590422011,333987340}
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}
{849114,195058,461698,250683,618567,343168,377183,206101,808781,6592,329302,429508,983773,631947,675421,687471,205443,30117,256934,502086,167908,70716,667674,184389,103999,721639,9310,483120,301102,420137,118479,319831,323939,815789,29959,554577,578093,336457,330328,644226,451826,232829,688909,653463,905524,547379,864301,670213,998159,881022,56058,549775,502070,797340,263083,46591,884346,485430,696632,710122,905605,99485,326092,468143,440345,445132,150353,223477,235795,669802,95786,265650,716587,115014,594162,211936,751539,691739,715903,334727,999894,863499,510179,457335,809816,283302,356838,605964,882585,109602,535183,663147,614739,916513,881818,169409,359705,530608,316737,635016,63065,239556,805366,285124,718360,320188,934308,828607,104186,875044,828722,618322,632120,77230,681281,289949,629993,788472,572587,934284,482684,750794,187908,793234,799738,574806,722971,137134,449094,94137,899639,524842,197342,711670,952347,596824,292057,245951,254084,598742,925992,541869,998887,619145,951959,280773,436790,239138,321418,520819,968153,97758,309826,892303,768183,559231,490264,168028,792556,297750,840830,473286,801554,128250,482307,32737,720186,9360,865869,333998,853937,801219,979357,854679,732158,403466,807248,744688,184032,458022,214939,390134,410705,536610,346764,834897,666375,351699,520461,924179,990192,873304,928354,351671,917747,225433,378983,844645,633075,351690}
Returns: {630033458, 874809151, 958347500, 373101878, 382323847, 504484686, 440036871, 422883926, 328170798, 885334734, 883968827, 182220931, 211801172, 764869913, 12517558, 102394625, 191178261, 58012098, 938216192, 880442175, 628056890, 470085077, 458976265, 646088093, 880458773, 495387544, 690496419, 589497914, 836211336, 393535431, 281273416, 74249098, 210407247, 480319431, 238497196, 804781470, 544453514, 882461801, 158197804, 576780405, 179407662, 943861184, 544978199, 69455751, 918616297, 819379690, 842155110, 905246461, 358010939, 768110916, 595688217, 350152736, 322714647, 538779792, 970057276, 293500434, 394538593, 358010584, 630560702, 16169473, 307170726, 870632665, 871125435, 958644970, 880054967, 961395364, 389942259, 960769072, 916413592, 485745416, 713737308, 527572990, 33758561, 907644187, 607415769, 115476218, 908638226, 677383678, 271327672, 335922760, 679365794, 556141221, 362418889, 692092999, 796399032, 51406323, 658206669, 692305641, 828832083, 178293812, 42377314, 459040493, 328886729, 234784650, 93134863, 399921952, 706619543, 363982247, 349312347, 951276957, 616843391, 380369059, 247644705, 973515846, 525575013, 658251491, 177782715, 940080951, 227737132, 84565198, 525763979, 969101150, 351728513, 96274927, 572101837, 372002706, 575451461, 812333722, 255673578, 144124284, 832339084, 77079352, 24894437, 115937164, 225881210, 249052575, 680364434, 132967209, 643826473, 130422421, 68062800, 573465225, 453018859, 79108775, 926376628, 518842639, 667566851, 603881403, 758192428, 128717860, 194444956, 965556356, 455911524, 802922179, 152509271, 171933767, 169360089, 627591943, 484269548, 612180054, 8555354, 805036835, 971482660, 571603868, 628925722, 775055920, 18361086, 749997018, 385711054, 291662463, 512610273, 463435888, 844059690, 764560671, 253223916, 747178205, 995003232, 521237491, 439888707, 743745455, 64763261, 209613454, 892738010, 413601865, 513374846, 789459722, 977111549, 410075332, 446824847, 60963338, 520922662, 181097744, 178019348, 248937772, 630412990, 525786428, 961519241, 243187454, 95222455, 766855481, 19956033, 788589836, 284228034, 696064457, 685601369, 898380085, 113445509, 249886848, 509388855, 864618473 }
{1,65402060,948117235,353705506,309724355,320081292,323186937,190032421,793691361,869633530,485544448,880197114,713594169,719404821,857231941,715683892,749973163,932091461,571923980,190622728,84901095,359188183,82394290,790865600,548102573,191701818,167557824,57089108,886469995,517208835,24446386,592790782,295535537,281595140,885058535,781502029,995836781,21308006,191415090,626110814,457435218,750862294,72248637,773189819,541648049,968765712,297739838,35823789,239259942,551115121,582459108,800090335,547747747,673896952,804188377,45989642,909175517,315105015,146933598,216235457,504528840,853554506,198798283,727540139,873041773,84694680,889323869,66895320,589171089,34482822,973558574,969066568,775288940,476368484,221223476,101320470,753655527,583965053,676999084,438081292,777516065,335174817,62868444,689774794,680193670,217209791,246764310,805590755,987833987,803703395,762635689,990520450,635712146,351594169,820367979,82654632,837071014,587212023,352174626,658143185,76723280,497710211,650885424,115057573,958615,533272555,814166047,133585480,189635612,901967025,160277755,294586178,163533991,192708333,817693237,173636752,363701104,933965686,581360772,759834450,515190237,394711239,890030587,502828548,328383892,979937424,351898403,506023339,322874497,942884178,723519584,937826883,328174788,743046212,732935985,707982108,695299045,108347558,305380378,334340247,845841093,373405928,296024584,847341922,668509106,396252723,229174191,531948331,284181877,211091672,993754857,189108208,637693242,39985270,77237033,685455146,603988784,94907832,914704634,735144006,219246162,690940560,731192283,413518060,501642423,57572716,159375435,254986818,163256929,691722058,140715055,845602485,249248589,514465830,51291914,287508313,392695727,96369585,545769727,736238490,498036121,252524912,299034281,190057661,293877224,120488069,436854672,511473482,370333177,508119287,172497413,961870333,714432423,220184436,735245168,632703661,779952900,730232621,8208683,740415312,111119391}
{3,2,2,2,1,1,2,1,1,2,3,1,1,2,2,1,1,1,1,1,2,1,1,1,1,1,3,1,1,1,1,1,1,1,1,1,2,1,1,1,3,1,1,2,2,2,1,2,1,1,1,1,1,1,2,2,2,1,3,1,1,1,2,1,1,1,1,1,2,1,1,1,3,2,2,3,2,1,1,2,2,1,2,1,1,1,2,1,2,1,1,1,2,1,1,2,1,1,2,1,1,2,1,1,1,1,1,1,1,3,3,1,1,1,1,1,2,2,2,1,2,2,1,2,1,1,1,1,1,2,1,1,1,2,1,2,2,2,3,1,1,1,3,1,1,1,1,1,1,1,1,3,1,2,2,1,3,1,1,1,1,3,1,1,1,2,2,2,1,2,3,2,1,2,2,3,1,1,1,2,1,1,2,3,2,1,1,2,1,1,1,3,1,1,1,3,2,2,3,1}
{195846,206957,244967,115098,683183,343563,767112,822387,58198,319621,89865,84691,703250,821656,558514,163921,783597,651653,900574,413862,692772,979280,770746,196462,986789,832828,493446,122150,828815,406032,214802,322479,400757,860244,995714,405833,677787,627924,696010,381784,993015,997851,913267,61795,434672,342841,154643,678607,138146,241341,770840,524455,819032,800571,437694,602391,843664,600647,663315,204268,569722,498744,319353,319125,759417,185445,476772,661413,358111,680939,735384,953230,872949,924196,154155,495974,640048,321200,172488,609445,428284,356528,538730,131941,720757,117381,468764,429280,901672,875093,552255,150837,876503,174086,93700,158819,287793,409217,342637,159564,25757,253935,101840,778739,879344,923007,801683,753598,255025,117854,374192,447860,215196,363964,829554,360446,525083,895053,246838,405738,670926,118085,521067,658787,604612,425115,751826,507322,912511,956870,228733,649056,11380,640194,475155,646184,370312,921228,230218,453001,69907,187937,933356,644698,590944,323,566098,437780,705707,268467,149867,511379,340193,981495,870262,32981,892259,947989,656322,803832,572738,430870,278645,447167,949124,245955,988930,935566,876765,824491,751537,394153,479990,32859,352538,906937,519594,269795,800489,391878,956291,162967,362523,876797,339201,487883,729599,453227,313490,947926,154998,378687,29466,623759,960499,957131,921965,163155,26748,954436}
Returns: {463175444, 907485994, 806080316, 272601912, 149309884, 104596263, 362795730, 511216874, 601188082, 124906339, 638604087, 930935297, 530948922, 14112655, 384738675, 570795484, 442481751, 301388140, 396488735, 136314431, 623092476, 760165963, 547873553, 127427602, 993738294, 645081609, 962781192, 140651929, 975785127, 75592913, 287900821, 23638737, 775433892, 442067559, 503277474, 66224640, 162488845, 532997048, 219895616, 633310096, 588007869, 836509660, 44338482, 699248353, 830803612, 703997973, 515255014, 233029654, 852763096, 69698928, 470235636, 168207940, 957168033, 458907360, 289531804, 554550253, 170482046, 834237141, 931261447, 633152461, 571399581, 114935063, 732866402, 992518149, 902144049, 164998486, 856495495, 86182817, 15387512, 839192927, 426188116, 490110907, 841010756, 949911400, 514140524, 386149770, 823298049, 163830543, 580706229, 103358111, 821584384, 867526065, 140380245, 718429571, 691839015, 119635003, 518960186, 49780168, 155673061, 478637289, 755163044, 236547759, 247771133, 89215740, 64800930, 739071581, 850659460, 839336327, 622946612, 837535267, 430777219, 421041993, 331057687, 476491955, 69766623, 682653200, 692802828, 995741504, 447534013, 522872405, 860574934, 481258782, 580631986, 795659842, 489063074, 259387468, 422737042, 178106373, 625414094, 145330118, 702438174, 445146703, 241608701, 545875336, 895792162, 141106218, 923407825, 663212008, 700239025, 714626728, 747637366, 691556777, 451160059, 968730231, 839979676, 646600079, 615258653, 642050419, 441313596, 981303121, 438091257, 609703648, 668842166, 413925518, 543356602, 118850492, 751640445, 543716443, 119976142, 180754303, 513042861, 203007444, 555709563, 117255375, 163939928, 232723278, 879644156, 457650942, 161161075, 155624998, 790230612, 459351965, 313938155, 654292969, 731662542, 750117323, 671282735, 605342109, 470313568, 71709820, 424613075, 607070225, 381457071, 535263965, 12323274, 718053633, 690742344, 392899027, 850709218, 424204281, 257305261, 263388070, 912805039, 37501172, 719125302, 982142884, 628053310, 981713625, 265907818, 780475239, 551924120, 929278532, 895759963, 447225220, 343513905, 177632707, 134020975, 327431490, 532804792, 724874248 }
{1,470846986,307302474,443791172,375582970,303409106,568206901,728750853,215262574,639487459,257377418,516882231,42596885,238303736,201712278,178693347,148310982,447377267,613471328,900379822,383393907,852538443,865980102,22012744,157097325,452649149,983796335,296105385,882361732,331594575,617452581,380506056,803116555,65045467,666771742,348299303,78447487,917928836,395923838,496970255,622016341,542953026,651726355,332834133,239651978,385378650,441941587,518903629,729862503,301773320,569445151,457605618,689354416,36522536,218968320,360388383,440869551,855099250,935353724,105192403,570745483,717725531,904536338,217501467,768198675,993930721,221806303,318018976,377997981,366866458,167418683,949604786,931373895,76650510,10925276,932103449,385709533,473366316,552371866,615187916,734293507,102293632,250667982,632785532,650105668,389428315,269857246,676310335,978931969,646190485,589324457,261393089,29179129,363815128,993598129,292110278,504156627,148771413,769614985,299992766,645012582,524244487,80767843,726040386,8741777,966823870,880373466,879509595,197285415,149051996,520669264,868371572,927803878,928978716,994691606,448277610,635648376,667131704,262739177,457487851,248552970,926012239,96737038,49882302,363072031,927095127,941693954,847047514,829947547,879155263,181289714,351954823,767564410,978392058,77508228,27442849,133197202,714908290,5694133,561776264,423554666,124936059,727087796,380413701,869216610,128376186,207416593,437795756,726597301,69089939,598888045,255777542,195779352,241716666,480258339,427183262,272332898,354599284,399357838,146239331,880115724,5559509,829812650,249236739,452854390,427151725,908331967,140300691,408677188,451928625,552558079,656958992,550840397,550976139,315227945,814037387,221502313,712700277,980417201,402717095,633260996,298466571,521738376,446461814,463179078,764091143,354256503,120977898,124273055,978407072,127883503,716693913,885591867,97910168,611377787,927180777,746304760,699628808,649165820,493476908,224191164}
{1,1,1,58,145,1,199,187,1,1,1,1,36,1,58,1,1,1,90,35,1,1,1,1,50,1,1,10,1,1,21,1,109,24,1,1,128,1,92,1,42,1,1,171,1,1,1,1,184,141,1,1,22,1,42,187,128,1,1,1,1,30,1,1,133,1,1,62,1,1,51,171,38,62,134,160,1,1,131,1,106,49,195,1,1,21,1,1,1,1,1,42,46,1,1,135,1,83,1,62,1,1,178,184,1,1,114,1,1,161,44,1,3,182,1,1,1,1,1,1,1,1,1,1,1,23,179,1,1,182,1,1,142,146,99,111,120,1,55,1,1,127,1,1,1,35,143,131,1,189,84,1,1,159,1,1,1,143,23,1,187,1,1,12,1,1,1,155,1,1,1,165,1,1,1,1,21,5,98,1,160,117,1,161,1,129,1,1,186,21,1,30,1,1,1,1,1,1,145,160}
{547146,931996,767236,405241,38330,587304,783637,937777,149521,450687,233288,146236,365529,111177,337397,976919,829638,911077,147771,775894,991796,432430,969671,488233,717165,970168,849357,929881,486370,975313,607115,796361,906287,243202,720906,705079,820121,391310,419550,235450,17808,378544,580963,77443,663279,519518,46016,893598,13561,834442,731301,192431,296604,332828,416782,87351,812399,246523,530879,662095,797172,132227,891911,982633,971416,400462,295935,651796,554160,148269,758794,158838,919740,244270,294996,377745,164774,226837,427157,201984,972353,310948,772813,794872,729547,565461,393223,127114,582061,825884,899352,1565,84279,49959,406174,72118,700775,578847,705218,366257,147872,899495,461112,223238,999093,478681,223228,578823,763293,264462,597269,58142,73534,226836,737428,955345,723812,325239,481939,706752,968712,220602,421239,941027,914251,408861,951663,355661,761722,962134,753141,914349,837705,668185,749322,140042,467162,244179,53499,364612,682933,295016,337760,543512,784591,130426,756441,451290,559173,69922,483025,949561,917599,292278,829245,693760,213647,184068,418971,648977,950129,10835,171701,476266,247499,335462,707997,401249,496331,115001,156656,538345,141966,900676,31381,210701,269653,324597,206141,812018,81295,89784,373346,830102,447507,174704,142601,903317,142372,209148,868482,852192,866221,150197,278500,935749,415877,34476,67540,767596}
Returns: {331371587, 407085271, 305824406, 842588247, 537567472, 826796074, 107205893, 463120624, 657925223, 938916064, 212026538, 922014018, 432677361, 541467838, 362170666, 935040986, 924857246, 911776616, 303508304, 185696699, 350299110, 541249722, 578549136, 711889184, 521160962, 546830905, 457796654, 755237898, 239971732, 547126688, 590069572, 65493668, 67398900, 540809513, 838983064, 409112249, 939396749, 440578132, 982776750, 562581785, 441917335, 961978069, 496140197, 545699199, 58882483, 900705708, 875205803, 60152156, 978978346, 265661477, 339878670, 903756042, 736545534, 704081851, 613724068, 154693540, 8563588, 361217516, 204202923, 575994869, 632882370, 496013290, 198371011, 121083412, 504763651, 371249266, 139110786, 674303773, 975441634, 514825665, 295876452, 405456004, 130188110, 508005793, 252489400, 663104867, 863637346, 58176249, 649688228, 468601619, 109426523, 443531389, 724397339, 499498209, 198903407, 964634577, 436355156, 127820193, 768168149, 621309807, 789330833, 795524422, 40372165, 321101933, 141237924, 928955853, 356181343, 344781710, 920750040, 663144993, 632793061, 846558089, 410192938, 577423211, 940048848, 131738309, 531302756, 601850467, 404242899, 477533364, 278658903, 824380617, 998889085, 843007062, 282278055, 48796392, 675130792, 338744569, 776538339, 636038955, 739971563, 543656657, 744075253, 770247874, 831217126, 320121623, 937589765, 100550349, 269190472, 605628906, 211038234, 471131004, 738312601, 878316148, 128694906, 416924252, 203275268, 628597021, 718751500, 654992879, 383341875, 97491295, 184361700, 634692228, 599382244, 112427726, 96949738, 61519285, 422896129, 785088176, 106419547, 650861429, 457830099, 768787, 420594273, 63248027, 543274879, 816543943, 55778794, 830480367, 935394160, 405152834, 608346612, 78305717, 81564831, 396881923, 991203294, 427339745, 607738543, 684263592, 44019866, 37230164, 410854448, 500531586, 946746020, 323693237, 267388140, 665237144, 213529311, 360233008, 406103538, 208383774, 717895744, 224462906, 798974683, 470819120, 16710415, 79717187, 43948774, 180422483, 353673988, 16180818, 998519240, 875168820, 745361518, 852796709, 530891735, 527640219, 592973731, 972247134 }
{1,344082665,259130888,30013933,770449952,795463995,626965341,931442254,381785700,94952518,104390381,859225984,18632628,178469524,697180379,348754909,669771213,860209895,246202921,853568549,857709718,654477663,776788925,447503473,190331843,232488153,291183562,939111702,109139577,428235173,928464754,684839599,478106411,53174268,13655624,203289727,628074371,744676412,695175104,632005251,915903330,304616756,741963487,736176261,188096706,573812057,57543827,277877767,526977677,562202897,576171353,980989274,714326347,823274841,514746904,146178198,89124832,466580721,367244684,26583060,471078531,197164948,554318644,608052616,508448709,901470327,669333880,281215529,121022241,101507512,168074394,81524287,222374373,512497720,980441918,140268834,693994864,378625718,182215593,108363045,794528619,999232217,936357743,223556979,403856603,389466213,292610654,23559323,651539380,670646933,972973243,31844236,604639817,23958903,207135786,892801718,122341366,162544285,900488149,724939384,274969174,858812379,65459070,55924718,725733145,645275168,492619051,72456626,190828585,664105204,763283143,608293383,98839572,993274465,194935770,15397779,886545693,852948515,328286624,864646490,880449493,370991294,411712747,871194527,755373624,381048304,747369623,561585326,93374021,929377315,463154906,577517944,995508007,603179245,242921697,384303115,243264534,193987994,637519026,979008488,821923918,128076313,440431876,537055766,762027364,275056087,808838522,447057520,787118671,998815933,34455231,899620988,841452023,718093843,528561262,336688526,734867567,684680726,403933289,384814617,632895356,538903038,784047916,597601608,510968977,984629006,291270496,189712267,878109531,123313078,87060586,13321525,439300028,31956930,297407050,27025558,795978490,507296005,173625916,518959606,562300542,331140926,278405435,89153602,704136329,390889579,62150805,462828758,268832551,700130335,43391810,417491831,908344622,246999188,776325059,132680595,625633364,129672419,165764910,957265721,197149802}
{165,146,5,13,123,119,134,63,17,94,74,143,136,15,98,108,75,2,89,96,148,146,52,31,123,178,73,70,175,122,3,132,178,58,75,59,72,172,144,31,128,110,128,29,137,125,44,125,78,187,112,177,170,146,127,91,140,182,170,186,164,143,114,141,3,172,113,37,78,16,13,191,20,7,173,135,75,178,185,30,150,166,21,173,177,169,190,111,138,165,19,58,82,98,45,198,170,144,150,12,166,9,5,191,37,11,25,110,134,60,17,127,51,52,90,85,1,86,56,91,102,182,90,199,161,155,42,23,6,94,59,142,39,57,33,95,3,57,51,32,2,116,84,153,197,75,61,90,18,88,77,136,31,193,97,63,26,123,99,73,159,159,30,101,160,151,87,192,150,169,54,55,143,35,178,154,133,197,136,139,69,114,189,68,68,198,70,188,68,176,6,178,173,33,136,104,75,43,1,104}
{50171,427967,459694,147916,70509,646176,911215,81025,554175,348414,735445,111582,123023,777063,583057,446476,703606,799540,801841,517987,972229,590471,787229,116577,107784,334926,571861,842802,374408,358976,236534,811815,110914,482780,393652,975360,437491,75119,277919,415461,853133,154828,49632,324006,450944,457299,334714,882112,273460,186220,171083,443544,234059,279563,659722,240319,907297,324267,754824,71470,679757,978261,648561,119881,110879,854744,175946,304734,427490,927375,29810,607844,143641,88928,26914,905278,698627,44601,628847,442103,450008,929363,435204,782790,35147,770609,443627,88457,346119,642847,513346,64587,102388,720372,373000,895,809266,767762,335375,771844,587546,379491,757512,32673,251970,477019,155517,861447,63799,526458,618895,163668,589505,98249,299262,139788,757092,77402,49055,96800,518939,468809,635429,164072,180125,939583,605530,81770,347738,470955,957796,150355,861437,599433,579010,580858,613608,68445,449998,229345,843260,551222,509691,105781,124496,226093,42454,105355,15991,576101,363655,419,722365,611850,478734,586790,286504,308116,200456,207529,919480,622979,419945,556458,95656,577122,837760,150543,419949,959493,982840,402604,736628,412684,86035,346875,57317,806240,298415,639011,862052,45747,29891,338227,909708,98050,293920,927845,660852,657876,827505,714398,668908,514553,994173,73514,899966,891277,24546,8834}
Returns: {948327885, 510427699, 455251238, 825280234, 676586219, 324617370, 129954951, 960031996, 321878783, 258187318, 761581961, 187503614, 312060352, 421313997, 845213206, 32104609, 76784220, 832103934, 915550386, 106361883, 411993762, 80125619, 882935698, 658939622, 403046560, 391476421, 156250307, 599124985, 773370700, 172894911, 373884754, 527260123, 430925451, 109095075, 706277671, 465976066, 938754264, 741322532, 713138584, 980766587, 282517198, 696937106, 312346325, 989822112, 520199684, 400079451, 438933317, 376318525, 169754286, 602623167, 886181538, 718110906, 666814528, 9434178, 178682704, 312366378, 62200951, 715124747, 722582302, 715811468, 249930521, 477638687, 340109340, 393356251, 815469959, 799199523, 28534259, 910466161, 479404012, 851186754, 864550119, 879202629, 40962093, 35244445, 944979106, 948176470, 29639706, 634548399, 720425077, 653219988, 480743952, 165551127, 678885046, 953087118, 792694374, 642298219, 805922092, 781812689, 983750193, 6931821, 947607389, 515916599, 843373175, 768275687, 181367385, 275006666, 244798863, 538362807, 730990065, 781828068, 889947266, 478644720, 506265708, 813550909, 386296087, 750426738, 599105171, 321754336, 365238603, 93265281, 217864541, 720900002, 385449464, 48145229, 330433383, 148797828, 290578044, 480064755, 475873473, 196234038, 780866984, 52766667, 638520131, 866533107, 252110307, 146971579, 670515405, 567977533, 764633746, 282896615, 512292664, 123073501, 921218703, 555892374, 939425090, 297905316, 709103274, 844510312, 498044869, 660069372, 44586608, 554289241, 668723475, 9284533, 582573193, 977693029, 541287174, 831541354, 410623736, 379475273, 247542789, 157142222, 987474751, 258029223, 35874295, 511399198, 186428311, 556239141, 136392486, 440052272, 184303545, 356442068, 265180932, 880231723, 548828606, 539098588, 941122224, 32917027, 615322546, 400386188, 176983057, 975765585, 776206893, 674861278, 162455244, 682298904, 766786942, 763977275, 476715670, 627445311, 188691220, 137654966, 73441839, 546048760, 496081666, 413759258, 132786692, 6544158, 953401752, 446480839, 762449626, 746592211, 871185646, 714258095, 222315547, 394032636, 296596065, 419258734, 961184425, 433530125 }
{1,58152238,107750390,891486323,108899723,812319633,610253879,810779519,846491449,271602741,617781844,890036380,139192679,946079477,784904795,670500605,457173147,229840856,922817424,412208321,849847759,684451686,307239785,786268967,299784713,3733951,644710498,867789896,625191338,797482023,823041,744853160,436911198,868658312,513795109,976804401,166287835,808502077,674736204,598792929,853642390,97882397,538609868,38581294,251079861,565573797,600171292,611618893,121131935,571710950,911807744,468825577,835600433,995277335,95927900,400969903,986412579,172021062,195847653,753508079,850020969,906019142,237601707,175825282,308700175,849374289,243609303,276798226,203948592,502054326,945350892,616091528,710283793,200889668,448037171,820160661,993712031,171734003,866014385,195554902,650225246,13493051,847251355,684806705,581719497,567252828,837956559,802077229,139009270,743250296,903791339,267633446,818734932,613287982,1271537,324056246,34589220,493743888,951603993,752971346,426637958,860330927,552978974,409890915,161808532,634697875,341617383,710983680,968092492,827705740,118659577,631250844,305267097,735446437,44338292,603328730,198030749,47268616,295869525,370738491,691901017,954814315,488565781,473660389,636781,658525927,691293607,103943931,235374395,29377229,79202798,957267882,46209304,495393056,962442727,48135366,455248893,462218409,727160520,557034622,60269742,748477579,486592117,233827651,423741634,360698021,599767465,164974186,276978439,951232237,983835681,933431434,55285684,284097320,382038682,204299840,188152073,937451741,240936995,717272730,704571366,557301450,687411398,784620307,97160125,364339566,402373831,3539655,621979524,853178386,398167953,101525077,634454787,610974902,570977303,555986243,407110994,988964901,307343190,780558112,385562798,677352706,887451781,809405172,349670579,36950912,297751566,693902191,941059929,624552734,22997490,823380664,98962352,429924797,446498486,688445287,294074636,944677754,564918134,651563719,890241545,503351940,743191963,245003501,496064123,737961705,580416142,788240400,983267902,284172935,533643945,441256692,231969062,870590927,997415476,808917796,443314740,884641452,876243172,553509324,908435323,997083881,425703313,596636567,897233624,360547426,662960329,519836664,544010924,824807923,812703890,136731500,777902657,602517835,797771574,608946811,719680023,436641186,860050697,26375241,933548506,830126737,857993350,534385929,954033571,487860791,45590000,713804875,906374998,653679122,842082332,702717442,611161617,500694569,11463820,628824547,918959457,420847871,5095563,686449266,114282843,128736024,309366203,690254371,927665869,901185822,735886568,902464165,428782720,167672345,143320680,624067632,712595288,95918039,926013015,699130390,979359251,774763921,949049663,305489586,176206630,335213028,246199759,297524266,142724242,744873017,990122818,930563733,665662179,656083703,267929070,333830409,564106477,211355629,769007869,95899354,846426518,913989017,899983600,1407015,812151182,315221130,820647221,168384565,530068753,928319326,26999782,871036759,390817684,681488509,110310354,673582130,638447239,766401582,721085141,509250114,689299690,287475638,658728324,539322846,600150299,288817865,842102658,292993392,493340032,925008957,601705123,132723750,22570455,434981741,419167311,276772849,309604999,669563782,927377638,565394797,456241503,267705472,433853957,873261814,211773628,782087293,714653566,576272232,322966820,977144791,979962661,410536598,735287883,435203584,151478237,992333896,115217315,243919511,979806075,803217320,623708156,941990214,761395952,573788828,456675674,254338250,274623019,773018238,340836253,498809949,785191992,353925777,69505949,821882951,820109044,586222258,921676515,988603990,519231979,35427529,599162915,449927292,872264911,531977363,757692415,895855261,33047853,35897292,346704678,957188376,75372334,799260351,470095410,206421898,228538743,654016388,105535488,867949994,712456653,249390790,234780815,448586303,611950001,21595279,372629086,267169981,448095401,540065394,9291067,390185040,965115321,869263775,587197870,274452940,173458206,877807502,699953081,525130209,238954343,339265269,640459122,974119794,430514940,150649864,766663266,82625934,45979257,899600133,924083380,719059165,526353271,812507349,740044101,193257059,46745319,349270144,466613397,142597345,262078524,703618289,117690115,484393455,997960202,907635116,72266202,337428092,964925812,950409130,103040270,935799041,344918926,566505793,641656735,669797957,387561892,540137731,544700690,50208493,433328952,620782050,472747088,724355795,378550815,313152249,660619517,302431506,483221765,394614593,114965999,187234430,566882898,439729024,295892705,555521297,285838801,532040112,412004973,147208808,890075829,650467620,240686327,307698030,516037211,87439984,908682668,754562895,878562302,580124044,373402357,21788014,340943444,34721305,715589785,356915250,824280746,655724994,315083088,41393565,342091206,306498157,303584336,625690,415883377,192093810,546554894,558519855,262489643,974500363,620636514,608593959,150895618,198062165,712257510,601509453,82084161,262619172,936283858,424686996,134843944,341725225,122358107,774273312,870030289,120793142,980130476,50251209,3325609,906253656,697342001,776451924,886101233,134417563,592329965,644228723,545988725,830061608,603407011,286782526,654345315,64048129,405300287,406641212,725892734,216489359,143698588,588955323,524795346,663299264,794361698,465067392,206733625,601900280,743130126,381659729,875815732,584739933,60073218,504693710,756930436,380668429,17096584,295892536,419777200,59851967,717292841,723289285,349885576,225462702,545307443,76622462,190620863,783115489,987350775,901018033,577640735,217823519,322319533,344302784,28779924,440233371,15950058,513560431,221761371,682992120,557740507,870563877,81732038,289130846,983155197,998269340,907093584,603582110,606305373,782615295,133940987,297045940,287440556,300378000,177824259,42278375,190420001,239677719,410770937,911191390,936476173,803515542,947811149,920314155,933483314,134271349,754717400,162884436,111321201,695771854,387217784,656165563,703021091,880376632,73883193,662380122,75077866,393301731,389665158,917251126,159913010,163269833,217942145,70612345,666836957,183586480,874734661,37395618,899001181,560010468,685245378,261758453,857932129,793463665,472463329,5039003,860267088,155336026,90798893,569043173,412075845,334666222,606446373,547775161,285052799,421744395,715127390,341602087,178325420,986918053,36957333,942761114,765778745,435987976,740766057,243208394,247372340,624927974,104285818,120413096,302318589,247910349,305390990,916038192,81595805,702534831,141261557,383673271,31616908,80160579,761580112,361717407,471277931,903514113,598056872,230270922,491110267,972143784,995485952,177670471,165983425,724186605,765430854,410107022,253198851,176495614,88050571,308603911,750477055,233691920,713097118,658582501,285062557,316981911,515823403,938880321,359840962,483282946,544523943,993902358,352125369,609840937,197721286,83651191,178940296,11897740,376552033,472581411,514192746,914558489,605879777,659803605,700565749,280919039,525924374,710352061,676154884,625897000,23264926,914617066,990026816,207515095,758580097,16791466,9471266,501866438,735658671,268870749,931032239,119024324,595724700,177590000,828331998,152031010,260100001,629578265,914752279,335127400,832585647,681320471,47457062,698858104,325231044,966463566,406968214,424426071,762147356,907320528,270527369,72731673,88298605,140823541,220780995,886444714,636022016,530127282,262059970,654952207,644633334,242714798,8690461,148892168,668873371,741951227,167007432,697963301,913589960,754693128,257099949,41323518,565074792,489760293,935045517,882185219,881319599,419565168,285960259,359469456,693584522,934060316,643967951,141600703,420327143,75716024,869996508,241948027,348360703,344316433,775408059,192740361,231877450,55056849,729417932,520069816,77510071,699911382,541545670,238028843,981176388,213957643,382692128,42492192,642681280,815464281,678278729,817548761,773200228,586285283,481038277,634248355,489709340,756074483,935605566,768737651,147948454,5316042,785730447,315649213,367497017,32198982,642210024,911353426,832208958,539821815,495633381,138334096,731259437,777161012,139508472,256120569,269037315,810939795,684556449,415667379,519860394,417557909,135412782,737783356,619526063,525062335,797038443,277218798,688138969,749864808,217998664,943679628,263410949,1363015,540000823,668276224,633368883,284850018,335123468,533002302,494469835,365751474,532406237,398757136,441819247,970021673,389957590,342062514,158679724,623007155,206068488,812961315,294848466,223603054,969509262,876456440,602489740,776529401,138352583,555122003,849949356,912259712,44129340,230756285,874602569,242565360,504110391,136271006,406770528,305259631,759558034,502582797,658143578,659376540,772900119,336665063,440408459,666706949,951818297,20010254,426694084,672663099,902056615,43037573,709062433,887870062,417699580,654427723,265432622,270873566,812041095,908466629,942202443,396939503,23547426,434240610,448188621,644305247,223527405,82096187,584458769,880915384,127908567,944426362,314935881,96022239,161382217,250670859,524164614,213965355,145417625,66976815,361283043,637258195,468177090,251188769,710229925,641185248,446642156,947907334,911705640,398615030,38140876,33882347,110139066,904744357,263752678,10580965,690106154,99777028,44971899,407525606,943540309,291276593,240629843,349600261,803071504,666792481,400676553,527652041,417658617,287724376,451529490,650559520,652037758,418250619,31891603,846210455,185502436,763809709,426899531,885350245,340363525,981434320,16495050,714330299,598137867,621220674,718270573,774504418,105669547,129346814,393597815,757564096,309183437,879825072,316324107,275961747,405643356,336727398,24451400,860033845,837814349,998232614,694572900,171189251,919063672,175980282,547413124,19412042,369827663,706814070,40643948,370905680,442017002,877940612,596019232,351347219,202311820,432895236,829926900,541289317,954628340,962704483,250624748,225246107,566336841,801820085,887906938,696217183,632844791,402915223,693722009,945718017,515070613,776733768,787727217,200257438,425340182,144654142,482193720,653359967,533704440,192815726,945166572,681997000,386900170,35313337,274620714,853856719,913846168,877766822,434086891,682126863,525636221,711634546,991242,876395740,498335977,743092805,512693355,999143785,612314849,729915949,35783931,796119037,347115421,393167229,669367834,994148625,180674509,779362378,246734771,865793607,1216671,592254748,347818624,432751170,502826792,931509360,952882164,958063408,812340004,720910445,770228693,681611336,519154269,626902875,122392941,218828143,522860530,695138031,29944905,96799632,260658101,703342677,316952649,411216257,706197732,811999984,557996255,997962921,275112480,302003058,436280815,247945319,834281448,280713023,955065229,650539257,861532488,459893759,685401323,261828298,741438907,690039357,155791213,197577095,566699471,761168999,375804422,745560511,599147906,678410942,221781644,460341901,265714802,15089238,295619413,13852375,95492238,895985820,877958715,714503617,817753038,559779229,290362758,15336360,70073843,962195818,365542281,244263249,915299281,522117648,460836478,753022367,377109086,722740154,958243783,430980506,203960835,210010287,625559879,105548210,923094976,289268065,127901366,981490001,441290344,717914168,586519085,61329227,292262880,172376272,670478193,76235451,922916861,734960556,451144140,873443944,604619944,14697952,667192968,182685371,641058470,560107407,667348557,677351995,45070105,925594491,551992661,764442129,738016505,597463002,296171099,584696240,538633969,173272810,427627393,963482043,956538456,283744202,408841705,3854005,708957068,189689143,308932736,471253545,10558621,208652380,201678440,532222725,737206868,226389456,443852727,300803911,808319091,531308381,357093781,109947519,638451025,394673467,354655136,81695294,289568325,135580570,493465751,631148486,903614520,846866761,113436515,660281299,24635725,188891073,618437910,109061773,881303476,739598142,377667013,260005022,352500405,568624947,479374387,967468645,856318274,833866747,515353568,633742210,120914689,414087969,780720995,468126655,552222896,940652735,831786498,618612459,864992493,376740065,398598494,657434624,255187955,428111281,80480548,81699840,801231880,476256805,954134243,75658068,506273560,393464595,863179925,333331046,465570562,33019810,813995718,503281375,291169725,843521279,329723659,400990144,941895399,43858745,903450832,472060652,422851509,598563121,671338227,266531871,309905249,707211313,661438969,315638998,559020103,193477325,631674102,408209021,584601856,494603386,774235019,293494704,104381258,45314179,887368103,451968645,312447436,783634728,242266137,682305420,168351972,293449552,942364456,172051223,24363995,314725938,338564769,731671973,36340572,267872362,313600607,699419981,666523808,548914298,209474960,9014629,410018874,658694902,739219705,378842902,462949434,582128134,627930371,943217195,171003851,292719617,803887443,151113508,414552649,543019777,342295042,946667829,917436303,777699132,260169291,882302966,833898634,313561359,743338375,519096701,794143624,176097480,317354916,944095878,958768490,294717629,589319613,831550617,472445990,755258723,966171645,195064902,460672693,995847516,229999754,884978423,371978367,926150731,190502644,436250171,289976513,239542270,987705047,510577701,841559252,773092238,657943974,491516101,225442029,57672570,740955846,567088477,112010365,314921260,877402692,494174411,567150362,645700734,207040645,959949019,84548614,792987147,476616289,871114853,60558979,693001569,445940132,415199716,460713753,961562161,708308443,880059559,421482177,882117960,731079230,33926664,94416813,928583889,396115349,417205743,757171214,954434257,64189493,662600444,699914216,153061242,461458524,155370094,799328999,711964738,336704893,468517700,235028349,326244203,316506542,934025787,479827236,341549187,814716561,197155742,564398128,745830833,156097868,909268476,622428071,899363650,855035043,66219239,105464851,356522242,177137571,142103694,278195487,50952596,707507074,68534748,331849236,985800581,622193163,276245427,751792250,750585311,385427723,857270238,296299940,3665258,159100799,789121785,539987074,989624900,541907639,432140594,1679379,85928976,973191229,210535044,802157626,710561524,967073249,157756757,540974675,369773374,823340647,639782775,833245127,332283754,379326703,640181131,397155498,840647039,785150993,174910795,221919387,215254159,893580808,504579365,973678397,816416604,220886316,768154151,518000154,309801529,494805640,144173442,4131396,944023567,651778296,925732448,533306534,347406069,614963471,583624144,741014586,373636179,37082911,206446437,383101787,919536053,643928266,159255873,526264260,520604988,862051132,302459191,886834782,362896216,469256126,204848414,341149878,169977931,736164925,437699280,215807292,479173047,335060457,146412145,231573973,643472672,666351148,611696740,226645953,233705931,551896971,174579574,372942598,804316128,197892751,386103145,512279880,676032570,697549983,578820770,180406648,741396680,392795965,526907342,585781487,680763831,746485581,134146231,890071900,897504986,84409943,295641407,440007194,685746732,541309343,565677153,649072347,452885137,280909401,88113332,339698763,868235452,318782963,187787667,903514631,450258736,443517805,282695222,801189894,490539300,711516216,685887644,241842959,589205838,916534745,885459956,411164842,830038517,586549389,766149878,125263172,517210448,462947577,875497541,990134907,56688323,956463384,499437374,798789296,648415982,502305988,738639657,896718227,682081697,131878704,431831801,826411029,547725545,859976521,120056769,682443914,802414849,860596520,823075162,148505894,685204451,723735322,69395442,722386013,682840989,820263746,735995559,693259787,931249798,131932507,128054957,142784062,767328121,563389486,181228476,416279155,686247174,777902511,972852392,7733722,183780381,436321522,656287102,639457359,671900951,49310747,970472373,209740226,151253828,383359678,552128538,492617444,23135136,1217756,746510733,952886496,872505961,764491510,338042724,45491721,863567189,62718575,393329745,721902236,194510113,599776000,934698275,958791891,39370882,405967394,74062322,148967691,672723381,434843423,137779931,211535765,307050296,745990840,814657651,651225993,34567374,414836663,936199516,916035837,620143691,568173949,738387081,961927505,676382630,105522105,563201690,201705911,815625365,446847941,334761820,123122394,616194283,424675626,872865123,599281385,720847399,291025212,846217141,430330743,312545005,187899051,627941718,147460701,537272623,187061382,321399879,473400841,206110872,15143965,778461143,79634524,510432980,294538772,119393002,310961816,531059454,502315412,870084874,172876861,591433962,309569174,255790769,542198799,624801803,232560592,569685132,456888154,96380593,794958726,564984455,882900973,138646209,844089160,510252858,438974984,814160257,972388786,985814258,233476628,317401229,338549558,151322415,842288311,377499476,328127908,108967557,59036798,237463389,690020976,709357654,401678539,542625385,466561407,944666350,328025873,684244185,345201262,486765984,303976203,645591524,346050720,478170886,320911573,123223719,796733978,550720870,142536428,664340527,433175194,610035505,368945444,386446569,392377727,804936620,549938674,105166103,872721013,76465561,602061024,866151992,13852827,207059513,511608018,17433608,18495533,173536732,148615685,504549639,956272937,471151799,379307657,799144876,27539923,153154557,916864722,818109162,756005569,265584287,11549750,914358323,153409805,505659522,899177076,274575459,61688859,657400921,972530478,925086074,565908894,588837700,292399700,101647013,596662548,551905803,993681961,240080142,406808121,976529400,432648029,399958197,632713550,869424866,306919832,418741962,150822761,859942342,288629741,988221294,550942835,178877531,128738809,130626263,304466112,928533049,433256079,697590076,612003264,155353813,1527434,895827839,692299959,900652851,75303860,438101517,74718410,282572916,252122774,513186811,370776823,612717000,956577051,586900998,624615305,636380982,192772951,655808302,935451121,211982678,88858492,655336894,233213267,483526496,961436912,981058157,246032686,88439494,470089111,765015562,893267294,979334575,939086882,278085730,511356001,368494340,674866766,405406071,567774915,333784896,935926541,170195580,120134234,674177021,333790890,982833744,345622477,294239199,3872967,925328751,266559469,427815257,796925739,109873620,865432553,401080276,522114509,837419606,159090106,595471334,278629636,47045133,225901781,414637153,768966467,424254285,60593600,864573670,757824081,665534681,68820337,443231955,197914133,790036833,452194211,60262468,676236912,468955864,777538089,141972374,236015671,204293688,819156529,412898435,342366209,151387362,747920607,724418504,664842889,64622795,494679571,240499403,847024263,132469778,883330546,442827057,798387319,754123663,152283955,217373454,915931565,349948012,427364516,16433492,85101303,880921045,452892296,747957438,599623855,202023195,536785951,641338274,539488083,588313597,659896259,802855847,562409217,3305433,688589128,612541820,74950788,217136342,600223828,217439948,464968952,880463725,766467856,672278181,888954484,580718058,735338476,932228936,449983567,162205668,927589333,585303812,708744768,16632601,381463061,854586255,613308842,46038447,124997573,495115526,585634549,824230666,913758794,91333295,63541090,722406260,694075862,921707200,822041691,475539819,492335586,476981760,217499684,972890643,698417363,642031760,243565410,405137200,598626781,477715467,726122782,299605409,118091928,734907270,349968185,635558332,296364760,373608952,376351885,244496408,901050241,71669841,708439714,467870657,34646439,435191393,19179786,504927671,760498849,804495662,735718995,750334769,33915031,400297402,440035518,775286628,946224488,45351467,970307151,373789672,536035544,335093858,575569098,331718858}
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}
{928601,640968,124314,175102,716307,782425,507798,897120,819830,779117,468755,958793,431684,572643,924639,238637,74536,151380,191571,116698,331383,880017,696786,509814,716467,544807,701192,595586,446852,17820,685292,32027,138559,433009,29312,461877,359201,173343,197070,988640,488659,223772,761322,258117,260261,867541,828148,347688,104340,302259,213077,988389,291333,950296,66302,563572,608073,435041,812078,994086,373338,546787,122346,790823,766298,422063,264261,277564,63896,215567,316503,279300,890635,107401,369799,669369,913238,188249,361796,491117,685125,992184,902149,778639,563596,431577,776205,285093,223052,786024,646123,674898,256719,659979,598579,287311,378953,784035,973064,368178,383191,912009,388756,476908,330497,925587,790731,130372,996345,175054,101678,906015,877530,451139,765763,309945,986412,86516,590495,553707,131036,624285,489374,646757,644934,617525,331879,72818,185005,667756,585706,95416,285822,738156,510627,811575,196627,180826,44502,487495,133291,868628,125650,133980,138420,92211,35696,102979,564740,922696,316371,770276,702744,706783,262120,419327,464413,816576,829797,577713,403749,60267,718923,784942,779375,599001,314405,733830,929,561920,952071,445474,259087,13773,161426,549701,220467,652264,164716,640525,335860,490357,295690,569072,261729,812176,620072,195714,425269,337742,600461,817259,669202,6655,947786,716659,534920,238640,636601,901880,158797,510627,642367,649780,751555,848535,376652,727737,335095,490948,808151,796662,687645,789405,963556,80433,172439,1101,475520,583052,977261,297020,152641,968386,526932,635402,833736,731176,800809,488080,286528,556142,836213,626531,119902,894621,499176,149778,138016,614809,793887,891429,94608,907934,449631,374366,114304,515269,766489,747385,971149,43197,940454,232173,481182,235603,514378,669098,437988,929197,220083,383962,5913,862792,987897,459170,866819,398079,807133,182367,641263,285573,847947,715692,734904,329895,855002,552280,652863,136844,590792,874738,612210,279734,653952,163775,390663,718657,628437,740671,705855,536161,2438,674541,881189,30117,815418,203773,348558,817336,206979,101022,928473,274972,234653,414392,198126,897263,537005,65964,184321,554407,690115,462489,498509,528599,479194,658002,591834,52970,435029,64170,656569,441572,581570,680234,659396,779430,776088,267927,808673,749289,522746,157679,710846,592191,595315,358570,496979,673238,134649,295354,990757,18550,47980,40461,263807,719616,526997,276680,897912,986415,892969,558219,542129,158296,914502,606833,353238,850411,684786,127374,934554,36657,36897,747057,160509,860237,894573,238497,556615,118781,579997,2722,846283,423960,578336,269231,82343,861776,66193,767422,997440,343343,721714,774977,746248,750875,946162,82465,815162,181139,333865,183555,975833,395953,814617,937604,56886,489959,514476,71806,872617,649156,962042,824899,735701,313902,890050,844126,284646,561064,410733,353623,425107,728715,418000,216365,750430,954893,683240,212635,567888,122559,598429,910293,184640,596232,29825,291594,673163,143213,964752,795105,39898,545035,523120,825726,993121,206552,536752,884603,105883,245671,102858,117361,141841,332066,947170,102959,774738,396176,367878,440767,185722,425742,183597,904101,126765,861591,96698,72481,278938,132350,718713,144746,185210,701809,297310,148338,180687,824949,941386,710886,141607,713070,123783,514861,632985,889813,919880,366630,903941,484674,326060,345068,383254,165473,922554,838099,929152,144574,737508,388585,801219,625211,148998,375800,270568,896982,365029,407552,1728,132454,486001,909759,772522,293276,622469,148394,295628,681988,123364,193971,633622,277379,334075,659139,40388,502040,847396,188734,300186,401309,855966,76867,3495,819140,687063,15467,234884,699548,782308,502216,535764,402635,661765,303973,394756,72339,97060,376393,344009,785423,890900,244405,607334,277556,306835,392419,647333,313938,745354,29639,969947,606739,379593,137487,953958,371448,369934,742116,39216,511905,962748,880233,246315,414787,835174,890680,586452,797424,316419,343530,422322,812309,374904,484493,2645,425013,373460,625325,522393,250544,455117,918413,583138,771584,391237,908461,848288,798904,905032,396867,648330,737413,446733,961924,990436,781999,787059,3610,79866,391190,661635,463468,670180,872502,723634,664219,977410,186213,274717,822465,515135,655698,164876,981361,881168,633990,615153,176636,899572,264484,893352,153512,236019,564137,57911,728632,866464,470254,122508,927913,735192,16931,854787,158064,691714,152020,96096,311358,764942,835429,762190,369598,64120,747735,483176,574803,206085,66,421166,610524,288450,71515,603404,239218,908490,423277,348825,436966,449022,319265,68051,934981,189068,981944,282842,290042,207299,289571,565646,477877,634208,996482,233721,254865,604213,650035,361647,719924,682624,57453,749925,360374,68030,11834,507443,830371,373169,842419,785554,622708,93147,631048,203167,65050,312448,399157,543637,433715,968423,500045,528598,314898,600729,941171,925731,250043,333216,385435,307486,249635,27465,699533,443919,342132,702370,264354,103388,606342,760764,304964,929166,379815,293289,447858,410770,521876,488702,267769,731445,581373,835858,8955,557799,450052,37501,699820,709433,559038,113114,611279,766622,173552,93956,718845,28781,551634,818780,483293,400476,644239,126017,355628,619270,49987,188693,539383,108518,681659,550591,662556,12057,378424,832163,872908,959648,743595,526443,102283,672411,849018,314945,207790,723726,89337,71890,624091,512991,310065,210764,661068,493013,971229,430752,444748,928538,996327,143808,399543,609466,786159,258913,839870,556833,662596,437562,644512,440096,498984,165955,96882,586985,976975,346806,316824,100302,691232,56849,383049,692549,341298,262674,805518,180262,772560,550009,585026,537898,380149,27656,992211,963310,319312,44038,164287,389742,844225,492279,403480,965898,401241,65765,146816,942275,747805,290266,718061,284606,184324,730083,745829,47935,5876,222094,406466,230447,412552,235052,314224,269463,485324,736655,177321,52578,602238,670284,514495,236126,542991,453434,109586,333243,71520,327153,177365,10697,641413,891340,239629,467070,282309,589158,667985,995630,954967,957600,191434,933904,261093,463641,946996,588479,717324,202804,426139,847158,997530,836629,76447,242386,677326,137315,342896,352596,230940,795975,197777,752668,279910,971436,941528,395694,363587,853308,957356,977840,589819,620136,399430,625258,489159,726624,763056,910788,636693,207383,505544,46090,729731,517504,942013,919403,875679,750803,496656,93749,513325,202952,473940,75867,863839,160154,202671,35055,210846,370500,373590,488551,6592,528135,762132,11099,153487,505570,33539,813893,281672,65560,549584,237439,380504,854381,611259,702152,340449,244649,128532,812479,370867,174866,539263,30821,930258,113462,711536,96223,490742,879070,16815,421426,681286,119772,970453,401285,152156,817534,434637,118945,878083,214615,871123,314612,901883,852860,914680,118601,1075,184836,960731,519184,145038,182087,462000,746588,563486,922912,778685,823136,137196,623915,750744,321329,156397,645318,430250,294790,632845,48979,913902,909050,485544,673076,324273,247240,435019,368910,773651,607502,636151,913094,103877,98314,230430,840646,630665,400863,411364,591992,36533,846097,638302,843593,849519,957700,984022,279463,568817,385536,239300,660611,198534,287663,932822,821712,890571,370141,483496,613185,799086,461815,702924,578318,602738,651532,371139,987119,344937,446542,539714,252575,75448,324434,677806,677402,999126,899659,187039,588190,234316,406418,163296,279469,17973,589665,624109,218953,717823,346962,506611,944503,342761,290212,266642,6204,532738,326262,631838,271586,310192,290954,804889,317683,885350,829251,647483,845244,914987,282150,394986,931979,744090,327900,198337,178289,903068,561454,863372,541953,611631,684615,448970,50574,837794,898549,153642,119664,771158,466088,337870,556095,453886,846001,450058,505174,200927,875076,546789,394641,19792,671926,112470,674511,673083,9278,533447,109424,503321,699383,886102,627479,652538,53212,944782,999656,624506,296971,491698,1227,835468,115715,402610,151335,227315,818405,186868,732327,685059,60789,269772,57016,155748,26457,596867,745928,996815,590041,97747,526024,807758,688029,794664,769259,978431,444210,138336,712164,32722,970373,153996,957163,945414,560357,976684,55032,131119,132484,533558,364998,564915,794039,697488,220177,782215,334449,319505,724183,654326,948363,30659,674139,105882,29503,528099,435293,274336,748519,695519,721442,400392,110978,623062,517938,21411,925359,795,414100,242515,413168,671154,821331,40845,723048,759441,157244,233561,414685,166944,623773,47440,350646,284665,72071,950365,674493,441192,823373,133117,754589,268011,419906,479486,48868,143858,629694,102915,490114,145823,923097,64381,183304,588807,209902,697011,170154,849584,126489,240379,134845,127632,620793,247422,586424,968147,344302,474295,7863,983381,836571,385204,370227,893796,77989,196435,389898,780479,363825,23238,160317,591129,159017,212559,604844,100054,577143,652100,854492,498763,891144,961867,566641,235010,714315,785118,392435,526451,926319,481224,574349,699532,380583,233830,395208,621418,283049,283495,540884,892829,13802,86092,425600,739175,237923,104872,836220,246333,254607,195424,34653,663364,77418,667115,979161,963284,193267,115794,427462,408312,673066,569649,936799,970796,630098,261172,99390,70557,798255,264666,203811,902444,448457,547637,573611,702955,760743,357544,195224,604125,462677,712167,71311,590522,468830,123769,186773,10472,457873,602041,823761,537794,854655,997584,143693,822613,518907,887164,89973,27037,161560,861580,126485,27340,401582,969441,938526,795139,309845,216047,127393,913943,883304,28601,697234,332237,73347,472087,284294,886941,810117,334899,936436,657138,441230,999815,263800,21863,264449,568416,696843,130763,351811,270302,305867,371422,246906,958705,856953,790033,718414,693341,627061,194697,456490,177270,354436,966877,643195,388132,802122,472979,984304,760480,767504,122278,356856,943348,660926,495874,632454,998847,647073,147142,645904,309038,29606,753984,898699,844804,174620,605492,145328,258898,496630,16405,243898,418623,336838,207946,65573,150592,666883,800106,261104,275616,777219,954815,55259,386489,270401,236807,236009,115833,643032,527661,477663,338654,304837,155412,361283,612281,944104,372108,700829,784174,542147,421786,483512,231666,738425,14580,591585,611211,32976,415874,158183,694419,148079,863006,31897,459765,132000,946132,476619,559022,295054,423138,69520,283021,674248,321209,953216,802866,156988,340601,844980,908050,541692,6200,162372,659185,886780,876732,485136,519782,632209,456059,318771,971290,436083,551906,108817,732232,859195,262603,617802,836542,957733,404356,65923,291355,903055,884110,984164,222990,216119,660124,75284,207773,666433,966607,394815,523867,582126,167488,993680,720047,281766,620470,9526,958356,445742,67947,688547,268819,495666,566794,82439,107402,371708,282547,939545,885928,20538,775350,335374,169389,442299,609235,714143,920686,739890,537792,671623,31696,690929,751842,738946,216520,910255,117777,169167,935712,623170,818201,813487,271156,210021,467251,588323,573168,339891,604560,784752,13396,716137,506830,845662,747632,772007,599679,305588,824295,949871,750441,12798,180848,224868,531777,462215,595855,971020,383150,262622,528928,836430,558668,710677,942156,894132,477669,834492,2194,45674,215161,498346,417983,220924,938679,117364,454005,940507,116481,144564,118055,235097,576492,474883,139611,192615,796861,156862,417254,111902,215852,973380,562867,379635,835236,527605,319612,83328,564992,345908,928527,470977,428623,412966,369225,412820,303249,709553,719518,601272,45304,964541,176079,837070,10791,45557,978865,838875,994806,555463,375660,330371,722347,832159,688313,11471,132033,135151,366243,878311,699237,868906,336198,38040,881907,637892,358739,890831,649085,136755,168201,603740,772612,659568,654397,977584,441916,925494,759122,303390,954700,487810,335873,483229,842891,232849,977618,831939,570564,670628,643233,541771,143410,88510,181721,736592,62532,950628,537083,469263,123097,869404,66456,403625,320261,779118,403730,537950,959306,615717,906719,85458,301279,207951,852037,85451,905644,737592,842207,899184,283531,82547,76694,678475,228808,118544,271143,958408,256418,428582,668707,346611,738119,525322,192362,147901,252891,893846,900335,543735,14961,523043,689847,993813,936336,395918,459929,143469,960495,867254,370046,462517,404856,833723,340322,155463,386760,58881,106129,948063,366637,533418,859690,923355,880550,644703,92255,761530,907174,995783,966002,651230,890641,240206,336570,836617,227517,291999,356507,179491,107698,664682,952273,353777,701674,769630,527205,925855,149393,743727,921077,895671,152133,549969,156400,294439,754326,656122,659159,806975,171847,540515,326269,308592,232203,409480,670919,113165,715208,440291,499437,806605,475415,194292,395190,864070,789825,112379,659839,756275,570371,7996,336437,580399,337354,412409,662229,129015,728503,844283,196594,861804,942428,523786,137647,16846,225917,777327,38145,962049,108560,532088,61166,527627,970044,396212,321423,942355,24029,972786,103761,341540,771262,177414,170351,754087,461980,368644,329018,100972,6698,639618,738833,87329,643079,363610,320360,749208,325577,799845,166277,111045,668789,22080,204861,52030,348419,844042,507387,879417,873438,700644,368441,192144,751266,142127,252037,526591,314140,515601,233853,445092,167437,262448,823826,798974,423143,235060,794696,404847,719693,471945,414964,50746,12439,66394,345724,803908,775371,824471,26266,150166,266212,40495,328153,39833,191759,555926,557014,458520,103721,303552,759487,580353,673537,819811,587991,423908,420828,661497,588272,584498,316779,60155,280750,758974,203798,462374,701450,13439,670452,320505,327309,421195,59728,321845,666576,15965,877029,651675,762306,270160,55650,813233,547553,989666,121575,658749,797311,747825,250630,107527,297854,720640,470722,869851,936788,616243,332690,844804,713608,548430,7326,931026,669682}
Returns: {300575968, 775964028, 644437214, 435834986, 99606938, 367407560, 352516801, 985399009, 389573903, 382183375, 746531264, 750819970, 508866582, 20149052, 155638962, 70069375, 141056838, 188426816, 734776930, 684403086, 155589727, 613698346, 563590795, 845288026, 517655523, 971954960, 73458026, 158698405, 653748588, 638656065, 989133997, 129340834, 396160938, 294809388, 308647049, 928407068, 146509092, 789223423, 465890521, 440809743, 381310534, 315756644, 432785098, 85821282, 481851448, 455524662, 375114739, 72029197, 839934532, 33821601, 245452778, 688460730, 639153929, 708085761, 68432087, 28569446, 4296444, 20484989, 858956347, 652006282, 853728044, 934659757, 49162502, 11331046, 16806463, 419719073, 93469742, 766429299, 203609209, 659637215, 819781911, 347576635, 811240205, 29661300, 103713151, 684944070, 597311632, 343073010, 224505146, 531620692, 685801086, 907515049, 14445305, 817378729, 715181647, 144078891, 835660017, 803018310, 972997233, 642939497, 311317788, 353610382, 880044686, 213442110, 994875116, 876977875, 198880854, 642293769, 854572958, 883481805, 943514387, 978856602, 415165735, 291320927, 127185791, 366914380, 801195790, 766483523, 24924772, 567016823, 672013012, 739230138, 512704952, 920812649, 299918440, 574336586, 315726368, 328074596, 913761997, 382103279, 911481520, 24923615, 853717396, 622972863, 320035301, 580850023, 86449168, 199168015, 294289943, 14547584, 922348425, 739465138, 691076598, 807791480, 531725058, 905049157, 725802354, 781269911, 946086020, 980753812, 83964820, 352337345, 947355907, 205111500, 742956401, 917307908, 21132335, 528228250, 854434606, 203426272, 443484235, 469552620, 956154772, 246951574, 501143111, 856725513, 141686822, 905033556, 957101562, 561318771, 478098170, 654058830, 949587763, 675322212, 637662014, 110340179, 765443329, 732239918, 77566892, 415863639, 966709507, 192251326, 129136036, 881569093, 47763749, 353953315, 57651254, 532777524, 674921210, 460731289, 751038376, 400492267, 497609647, 372072548, 418876048, 200501682, 839639560, 644198521, 825626126, 932159202, 427581867, 598559753, 199405493, 22369600, 934526072, 522778178, 878537701, 644987186, 979314374, 110698017, 172315377, 531725058, 158116571, 678064339, 923092081, 141160924, 851062939, 891471597, 630978030, 521248010, 119317180, 684507373, 251523268, 568765606, 309103836, 190373009, 579412800, 582254585, 256686600, 137877883, 805848254, 602891287, 596378041, 481089051, 256076684, 719459170, 404057328, 777957725, 30049780, 797512835, 694075357, 769711266, 942925503, 469934316, 799648473, 144150423, 317776362, 476024196, 313594799, 722798796, 355694752, 522280614, 679488410, 974470146, 339314092, 473720750, 816509657, 834078591, 495087214, 860810364, 266168261, 322416362, 529642707, 997335426, 155777648, 390899654, 680271960, 305462247, 636342771, 338972407, 780814132, 915870488, 347256693, 35917120, 719268412, 504666518, 683939133, 712055698, 495785563, 259632220, 636431545, 781150283, 292153946, 880421253, 421000315, 193545156, 882387447, 692166427, 382700447, 775688583, 270548885, 441095374, 280603079, 527002853, 3293375, 716743246, 837792334, 297419435, 758602257, 156617781, 172487080, 274322350, 1311274, 247015742, 523282621, 309633828, 252434439, 266408791, 192439257, 722345981, 199689594, 617186217, 308619797, 204854290, 185902840, 741836849, 12235148, 468913394, 112285828, 79877505, 408226894, 199633333, 103406750, 141820513, 837475039, 800853535, 847453295, 84417577, 950571324, 607539108, 274461459, 875167763, 981410218, 869714721, 778469303, 489911741, 110712800, 524763655, 163010770, 8644746, 671896523, 624653101, 664972727, 909883213, 122280667, 129821320, 190835374, 907765963, 675063697, 225796866, 133669298, 154559829, 773022311, 572259406, 417671857, 628788837, 941934818, 858474842, 879484501, 988317472, 771683919, 516608160, 970302507, 58326130, 259560197, 650353408, 364050794, 476763971, 91348410, 212885165, 232467275, 985657227, 553636724, 722175565, 970902120, 350074702, 674822988, 248031324, 292046432, 364543766, 389413779, 8915304, 199604302, 429747399, 623983944, 161531201, 468724453, 731055712, 346410231, 23911230, 631245515, 724718492, 701604938, 355661687, 386696347, 380386184, 279929121, 803432546, 893462986, 553870243, 914675899, 74119616, 780518543, 896743280, 496282506, 668142300, 795109025, 329773034, 428111689, 23405415, 212189069, 939679736, 454408877, 940041958, 269168841, 220424755, 402210973, 208797885, 360773388, 806685584, 679788963, 702366123, 926041842, 116071206, 25202601, 233594373, 565967006, 343407727, 457251700, 510385231, 700800956, 572833557, 848399941, 108023690, 708982796, 723133150, 814580961, 832560139, 14990434, 117908947, 494093493, 4023362, 276743809, 524741630, 136426612, 312240378, 29000978, 310002834, 375939764, 30892683, 527698988, 982257597, 543265836, 497968702, 808416686, 555257983, 246790150, 846354641, 705786514, 879095596, 858192654, 175834306, 468467935, 807922401, 808548876, 599878168, 928273705, 716833498, 84558664, 294674549, 204076607, 400698418, 111090434, 109929870, 861228160, 749594257, 79920349, 473642610, 851300721, 576199175, 60481673, 107097627, 895149804, 523315230, 548993117, 529231623, 538486246, 974779111, 825716239, 736050299, 4441727, 864750744, 596615544, 71231792, 445455613, 329258940, 451504499, 838138196, 820182286, 358833287, 418076412, 700337304, 353124667, 250883605, 937029686, 57760174, 370023294, 888190527, 39968047, 785496827, 986332970, 69598367, 878773708, 607128048, 150310017, 467625944, 987697267, 628415923, 901112292, 403216821, 274631270, 60848351, 2026081, 530511625, 786729618, 875971144, 263662946, 58802508, 865673311, 371358079, 26817917, 694004813, 920773625, 713181999, 397076668, 62424249, 907744322, 920433052, 862391582, 321993823, 128458149, 333147838, 492299628, 859118430, 300657284, 462082229, 334625605, 940318893, 793701184, 470878081, 30588229, 124850262, 171420593, 104675314, 193417359, 601590864, 513447472, 29811820, 283211215, 140113420, 363396587, 569937502, 158827773, 486233368, 533185104, 48064537, 131147891, 8318926, 647006987, 532081317, 589157209, 939717325, 966046993, 587504257, 14274597, 689346248, 949401196, 452507705, 78338210, 304351305, 806983633, 561887355, 954374162, 108950228, 151718556, 197874107, 760220188, 133552417, 250790666, 233597972, 515906835, 672162576, 294380456, 758330541, 958765609, 530829168, 941806162, 380836830, 854633713, 663789607, 310102581, 905863358, 241799249, 620403829, 280640454, 211609747, 33779483, 492808315, 104626952, 796147280, 484277470, 29927541, 922168108, 107699439, 286473534, 19711931, 987461509, 168082983, 649795226, 105305370, 750419176, 530485092, 464781997, 833554380, 532678826, 741841634, 619013608, 564656237, 340814915, 749086734, 734527561, 811103638, 328137302, 23619071, 682159074, 643822812, 391639469, 493515081, 427951840, 554305712, 695767786, 290571849, 692386501, 925416904, 212682399, 837571844, 360503384, 234791814, 557591941, 423436765, 556662009, 704822034, 309938362, 411680694, 348624065, 153527174, 839876703, 588124270, 718315191, 167368961, 33522172, 855033511, 154854922, 629618990, 468813599, 54390072, 276582455, 394890820, 196939836, 115731952, 321595501, 157100726, 676765003, 474633750, 235056009, 916926092, 648911329, 415384997, 117808484, 475892723, 307513568, 582198106, 831052766, 463964523, 677457374, 773961398, 856821368, 863350898, 864410949, 867160039, 783665898, 103689715, 568984428, 594668068, 22951556, 947521365, 42882636, 57486493, 114600395, 973268588, 152262889, 845667276, 909034111, 359406748, 352165390, 350652855, 986487061, 894778319, 651785857, 783757859, 131982775, 182946535, 367873014, 563466296, 280359361, 682472659, 472045284, 421509971, 317218017, 421866475, 544005132, 920288412, 198776007, 103580729, 179542937, 605920740, 979120742, 511207775, 955427139, 103336695, 491829535, 575531647, 396346435, 699012553, 942620967, 698375379, 40479746, 464734826, 723792189, 101027551, 206925188, 768866460, 840847635, 538813256, 282160487, 364716816, 489600531, 524546186, 654067273, 10360887, 267267228, 882512328, 33060406, 707282991, 753044293, 164456466, 592104865, 485096783, 443298432, 227747863, 351511978, 6545891, 909129708, 306780652, 689978361, 892875226, 499130075, 647663927, 181678930, 556237664, 420250398, 363784193, 112796451, 634439706, 535630923, 89658864, 773541187, 494776480, 410963431, 577758455, 267516405, 971572294, 472198405, 168565904, 669005674, 291902937, 713251556, 844891064, 74287472, 444150696, 676825718, 2796305, 677584767, 279820469, 792079673, 98647925, 179800740, 801712331, 828943646, 876927392, 497537463, 954325965, 878866768, 647284043, 596914202, 660484487, 880970298, 692579995, 126889549, 570818263, 431750797, 335692298, 169807860, 657350444, 100808463, 440175396, 751699172, 860483012, 621000962, 545142076, 239325442, 446273326, 113807449, 473672770, 840974362, 493055394, 956887444, 796424260, 583366200, 77082990, 80404655, 41687795, 133868800, 723263301, 185799934, 980529681, 810304512, 293350819, 539567777, 25725770, 501812317, 661525067, 14501467, 388883086, 102765253, 509139332, 779802644, 849017875, 192925550, 512882164, 75205532, 990741781, 545432469, 795143093, 986965314, 376024816, 24341618, 396618453, 732260212, 732406143, 3811071, 237609851, 11617809, 336945257, 364743827, 623841408, 467160731, 620679421, 846721259, 850448398, 614333426, 809739531, 54684500, 250975703, 259704908, 270541684, 947508822, 674214469, 547049343, 988180054, 118809102, 1410351, 731092149, 872200569, 730651676, 288198958, 257206660, 660105722, 807807700, 95191730, 186917835, 471375200, 36665070, 991908242, 58456317, 366751957, 547579108, 482370692, 729421379, 572177219, 603955392, 171808555, 606461853, 944886871, 537129333, 841682563, 297678421, 405769254, 682052841, 412824272, 956967690, 202201030, 751745384, 978997892, 275817628, 271593140, 714832100, 978568368, 407921186, 729323008, 43192131, 129483126, 355114894, 344066134, 899854890, 243522967, 811403538, 705844298, 486163174, 447025303, 301814306, 602178006, 968911275, 876371182, 282946280, 367534655, 403719737, 69882647, 937882795, 231645307, 603271180, 562079875, 320242944, 755699093, 833642064, 920692719, 994576103, 233960831, 989154616, 885565150, 651299311, 725309734, 834659562, 40067128, 311676315, 98194364, 923210460, 853424792, 867180396, 171109383, 788166181, 185643771, 980642081, 615715087, 692039515, 937439194, 482529042, 342118798, 686817426, 331470686, 119620531, 946465382, 345936787, 194054675, 363527740, 49411469, 374788277, 555654170, 856422941, 777138445, 231291115, 99567098, 168726231, 9443646, 171273442, 570744958, 53645225, 222250259, 989260014, 329682092, 524228474, 103473415, 826568104, 589979244, 728648208, 657166349, 461517045, 442186963, 824683692, 984938934, 924518730, 293527417, 355683532, 721590683, 736670009, 957369995, 973049855, 153451311, 455463025, 842121314, 434771425, 842125661, 141167346, 632168486, 295418709, 590663741, 685168954, 970959752, 930733685, 62035273, 297524961, 317294269, 245451425, 392127360, 398133228, 312977806, 731200670, 513736101, 859112898, 916515091, 759044340, 874979014, 163008598, 99223858, 723202090, 86970350, 29956584, 826568056, 130536101, 913859821, 579370015, 454101380, 450273753, 191066087, 556167556, 162259700, 306254414, 63489338, 267187468, 690053523, 743793029, 382907117, 584153295, 373487759, 155495808, 646015469, 570751647, 431170874, 438915219, 131182853, 840038162, 715797913, 917669590, 631480291, 44732367, 476260463, 612932654, 9680438, 303008176, 391936021, 565564489, 171747358, 986380619, 657071677, 459500696, 833010964, 144776874, 133943471, 101979656, 479852984, 566027667, 719798438, 563646544, 503619501, 898402903, 254613810, 489890074, 344304030, 678707, 637963359, 36125743, 398878732, 836246772, 217386856, 516472238, 724790713, 393460707, 830070220, 138522569, 896921599, 865186294, 677940388, 150581356, 467522302, 186616491, 510814137, 182861958, 828471164, 482107993, 435841735, 811239881, 584536896, 53253639, 418301606, 644542279, 959802037, 919808554, 900058893, 93108676, 951918373, 893517110, 521694669, 116579671, 381096044, 260088150, 871620061, 999330427, 271504855, 105833941, 108361063, 738061710, 768119490, 657561980, 293593740, 830232014, 673804575, 981728876, 779985880, 487811819, 84732823, 629493609, 204665229, 381814195, 918592112, 714906846, 284616509, 962234775, 197672316, 65068994, 739716969, 847928041, 191482738, 884761743, 652159845, 808267939, 702648059, 748562586, 472120633, 171651959, 889325301, 721280096, 536802456, 634148008, 866103063, 919471745, 205242142, 451274836, 730456878, 542716154, 368165300, 974329616, 702039708, 190644561, 329397067, 781832640, 213028442, 6774629, 190609004, 828026605, 309816150, 216529073, 164315120, 352984443, 565849551, 826435712, 260554616, 310059399, 784585405, 105275539, 372056963, 914795362, 684108420, 518778049, 720587584, 789936396, 723706661, 271926861, 285540051, 438797490, 522343722, 773506472, 204759386, 583081467, 493752533, 838635377, 843120815, 516499323, 604200609, 397934, 771200624, 977205987, 484659114, 252850808, 609477579, 528707950, 55665621, 946475260, 499069540, 971023158, 129015326, 521888952, 336900518, 474860475, 66630497, 769478881, 831459999, 637041672, 591788761, 79128531, 342816001, 69078307, 676806441, 860690752, 88789721, 4018007, 610502361, 902494132, 984702280, 95226234, 463204379, 947258040, 251474515, 604388326, 491791475, 219161859, 922099798, 510063982, 502857152, 860670603, 586807916, 101180306, 121754985, 834509047, 454608542, 166688388, 639084450, 331003275, 775712879, 599926427, 608494429, 490243384, 419572781, 337180252, 473372572, 256080671, 762383613, 730765733, 769103166, 44740504, 117579023, 34995040, 454599270, 104118155, 162269561, 256751036, 609327580, 625236881, 328953609, 63971628, 773382734, 339675633, 715174461, 454501082, 859327928, 526862360, 422449333, 721023828, 761446472, 898488171, 22388579, 298207929, 164616245, 523210042, 562798943, 21042279, 272605485, 10794324, 123932917, 828322507, 451707426, 332907454, 874958113, 722916533, 468392216, 741076384, 405713787, 496571086, 434601169, 756833090, 444210478, 890109303, 885812142, 243296920, 836735100, 101646588, 831804628, 722842212, 813154837, 318842890, 289432245, 434036866, 819246998, 970191451, 825151652, 184216409, 522333330, 319361602, 964440907, 95534257, 749314650, 84060815, 881495969, 601024830, 454472509, 676141509, 647805912, 753305060, 558809294, 61818572, 790486410, 324478870, 683898505, 653754721, 1153762, 493358653, 258432629, 720280949, 782107859, 355004505, 221484539, 752068642, 8420891, 173388155, 250995545, 60962418, 162629453, 248266989, 512731504, 337270267, 406157479, 340813606, 983922156, 388830536, 101241463, 846691092, 458797744, 93669994, 579480461, 844709392, 942240006, 798350761, 533182950, 380690926, 71906083, 362224037, 714157566, 624583300, 243894446, 348101288, 686252819, 737038019, 68903032, 705725345, 263855097, 656834769, 81288502, 397941014, 655402620, 385934219, 769398801, 83973435, 588738308, 506334535, 125919310, 981246730, 787728859, 737811977, 781890843, 918642162, 978626893, 769842104, 821588868, 603805395, 778000509, 39581942, 441065478, 228526001, 390981553, 368845651, 970425737, 228876193, 337401582, 731860155, 936991146, 771949530, 93230894, 118234617, 74980141, 153298761, 983671202, 637799001, 696323417, 835895396, 560831365, 772531717, 149465872, 705351937, 907399031, 364443946, 890401735, 563265824, 888815345, 42073683, 252655101, 315137262, 354189368, 129715021, 212578485, 592887667, 499325558, 288200158, 98048718, 478004379, 320931964, 787511590, 15121342, 572213024, 191731699, 309683817, 381128261, 160841419, 229704467, 233278550, 610458407, 432171398, 955384344, 891928365, 810212299, 883933592, 166486746, 714910844, 350891725, 773877115, 42303137, 101297225, 173854009, 168747833, 758248070, 410033353, 675501292, 978044662, 678275334, 109401794, 880755083, 919422719, 748718518, 220146968, 981866254, 692040173, 399187231, 449798971, 756845762, 554638776, 64616470, 811212074, 744683759, 623390673, 970243877, 861449130, 119033690, 239335664, 248501968, 515360515, 335205213, 981904753, 709927743, 339898410, 572661004, 448672193, 825452576, 718081050, 699319090, 920638593, 117138761, 401105839, 688194109, 509116385, 483055565, 651632368, 868190860, 141085878, 18739017, 387267902, 722480021, 43596431, 171637555, 331106061, 556928297, 607119554, 956042860, 201334399, 589417716, 502739951, 284243676, 515811266, 128044393, 644574717, 803269586, 954994815, 264131390, 658116166, 157421506, 309097846, 10315192, 669209345, 41667747, 531237804, 783018344, 752975257, 288337935, 404252677, 893654132, 36840886, 238633628, 668535470, 395717009, 413852777, 866588816, 987955367, 805505392, 840153279, 11097186, 75766497, 726658685, 500430775, 383098143, 721992930, 354111408, 931575367, 372984361, 720017081, 387021496, 535957100, 881682654, 174634603, 940788838, 828049519, 181988497, 557378414, 404573354, 131260761, 565680030, 741104807, 664523456, 840063990, 904176208, 672909541, 915878538, 183557000, 954183965, 84748955, 22603756, 334828683, 562637764, 403092706, 689880063, 130358231, 570835983, 376698395, 62906665, 436747529, 143367933, 393711136, 48094812, 37510599, 477563484, 578982184, 816194279, 69115710, 67598031, 524842193, 56484028, 742277764, 246256851, 385627882, 404487716, 104197234, 962312655, 434322833, 613181756, 846038713, 409038764, 672038272, 917004568, 322176315, 883126313, 429216014, 522444488, 607884580, 868810542, 960848573, 723542925, 109368613, 450737237, 504113551, 675953106, 395795494, 65825917, 641099757, 906826664, 124873277, 802633497, 301669986, 94739172, 221565402, 103418554, 96941802, 146178263, 270301720, 167317197, 430857641, 739496027, 921297218, 381295442, 508267506, 717979427, 524054007, 982223501, 105593118, 977338086, 803774828, 890270921, 344476538, 387724799, 10179301, 957486750, 578017482, 521033487, 641533747, 37038649, 492327439, 121920301, 31088599, 145137411, 16835439, 811407478, 457350045, 211493738, 860893197, 16038734, 809700850, 868728078, 870115553, 743163370, 161962559, 525712381, 844422978, 928213099, 383876428, 86668542, 730763801, 84429944, 405835815, 624726415, 58253172, 125408266, 617508545, 441464271, 177079917, 950293426, 518577432, 120326723, 253520141, 307767771, 647411957, 479967926, 149475894, 147361829, 167572813, 343964517, 271001405, 882688332, 949800825, 770860666, 669472022, 640321844, 272067485, 892203257, 975916891, 618234686, 510383467, 62909434, 841389167, 486920682, 276938091, 634991330, 786231920, 600868188, 219000212, 543345241, 457856523, 780009541, 443257249, 921093762, 557659983, 812834384, 465651941, 412783400, 614739345, 186069315, 925391061, 505809750, 405812251, 958333617, 826936098, 414877098, 258952243, 9034577, 429560399, 877308439, 102002966, 140799752, 549965112, 999480372, 510804114, 965215284, 249429329, 286838128, 614755851, 835834023, 156884850, 518950892, 621031855, 40554063, 208570079, 984413705, 448427906, 178767024, 643387711, 903053280, 737556255, 419795200, 964011376, 882877452, 330630426, 6725803, 260309629, 143746301, 186854890, 704607, 754007003, 890077478, 55199131, 47999045, 473115331, 593059311, 290328437, 987785544, 689089, 632962076, 701853465, 162382788, 82570951, 32009077, 717883288, 545982929, 239627090, 500064911, 286672176, 946256077, 206139500, 527065301, 222678286, 289053404, 345641389, 878413904, 666361622, 221309280, 901862221, 411232884, 665505420, 728230356, 310672752, 560459043, 688609819, 621611364, 611653998, 915924473, 745094732, 660179862, 788953004, 450421727, 592578073, 378799479, 738282317, 246639864, 998917909, 182336459, 695996795, 822210467, 159911238, 410010445, 642237439, 787318186, 594107432, 215231737, 361656565, 586013346, 229998340, 990535408, 888409472, 992260398, 789169475, 35577691, 769555526, 899788385, 403758175, 818184155, 114809815, 642467048, 203200517, 93392775, 356832989, 492347764, 203560076, 857273182, 672476767, 705327083, 729972469, 276300586, 316712345, 194846940, 437053260, 711800253, 428896604, 916429385, 784586390, 468923357, 99665686, 160346284, 353289370, 319673014, 523289903, 780340081, 582209435, 605420058, 240173279, 5691937, 513465067, 467180645, 100868309, 972058517, 320301011, 734409789, 334195521, 415630269, 972365215, 88274309, 496775897, 32225606, 515598924, 87021154, 787673944, 576553454, 654403725, 96615607, 873893919, 734067658, 309429615, 334879405, 647278832, 875292922, 935613057, 206079697, 871226965, 499870221, 44784299, 620541856, 444682476, 905570598, 9188028, 935185060, 725536974, 724834138, 759819029, 367505134, 265233606, 825686439, 618851720, 236682729, 547297253, 387113906, 629902066, 962580323, 236325963, 566877106, 978632279, 804522100, 948718868, 20190579, 937047685, 570229810, 334718978, 903379008, 502497297, 998198933, 4302658, 66806945, 35187000, 680109767, 989100870, 540021141, 862850388, 407146806, 644914854, 413333901, 647282736, 770978283, 768891200, 154358663, 872812346, 214360, 659241817, 683043582, 873363676, 720476317, 857581015, 927195875, 110520439, 86218581, 705362853, 695932264, 860130305, 387167237, 909314347, 597947289, 257122477, 630537381, 957984468, 298224588, 647764339, 199792667, 762869093, 675337779, 121794723, 123713281, 498054851, 307106953, 577864545, 652627381, 176028542, 989320726, 260468852, 626367604, 382813830, 110030746, 694430274, 942511860, 555761425, 729257608, 495332703, 846944854, 658333386, 757469107, 671603714, 932554912, 705532599, 967238171, 686412949, 192915966, 440256410, 547032788, 970555400, 117228647, 498982016, 389251033, 478067939, 50452602, 787661383, 917049727, 18780374, 878203139, 883840519, 341015228, 381128261, 275504907, 346894197, 850068215, 121255405, 257738180 }
{1,44134904,961258514,933610617,617806161,294840403,157582738,691355830,362840353,797733501,812691577,321404157,129616986,521207377,249639841,545618244,161159681,967748412,441808673,34838366,52936572,59093058,777453505,634297441,684855696,127460374,367308844,117237652,937261715,278683938,312548991,643255574,261492484,99106996,655312056,877371034,614971155,969432133,243829017,460191530,360743448,493105416,842639636,916061693,343905564,3871983,337348708,272453142,95367500,440095042,935921683,857590221,951649481,220862515,689869602,418949653,512981375,820271689,904677111,210472935,337633998,560227517,316241062,910060134,786457410,330589901,536756250,312936910,471312908,328586946,370690942,89429040,829288099,426465410,220704858,364332245,607371935,132428369,558469599,260725313,640813445,557361640,620115554,430564101,664167780,511737761,292353648,945686448,937005187,582717700,81308017,350404664,96318538,677139458,58417418,744826831,349139698,506792001,170339319,643128922,556455877,751862941,669492793,211023007,337335331,804850923,600073007,888380858,20446439,821157743,337768207,189609934,155731117,905052455,224016995,474008430,277408383,881250141,511943815,714878670,533581662,646899253,646924905,346900841,283255450,56792217,942728503,1763555,283939027,620020963,789471959,634056859,775251671,561225666,270365416,587142843,482021177,520972637,125583453,512716015,606377865,298340355,372700224,899181697,146923420,242092687,299643447,96215001,357127206,74084898,628126337,260902730,488083010,962372538,513331153,286170728,249920304,543845388,187466472,250860532,448231405,461568171,654895759,360965480,13447807,578777319,273095664,481862638,783298213,37223299,14036922,298906905,830951990,370465394,993492284,73205532,826577916,256436063,179526370,967959757,9016314,723864266,598372794,442244936,399899852,999262930,939485472,31122370,920058450,348048793,53407600,298808859,473454511,805514368,763844978,554823602,185214456,903067596,546569220,874217800,58307038,264480503,674911430,378493111,819684166,959612504,336207965,115141045,360000781,599790455,153177760,506470592,290646789,247812902,482826136,411780087,157095367,704057965,273072517,471906136,597756502,922669031,224071476,874278872,873452303,249863966,41251860,881528095,675648682,699641813,314239500,256779272,792949194,948716904,801023569,481913993,256802832,499056965,451891276,236659680,71187602,759712727,56048543,794290197,733242127,249247251,706292923,88088662,928294624,27339856,441412226,238369677,674739812,219908332,875511086,178367808,485407081,124343710,613333595,968922939,898668700,626401954,207350158,581243939,888668976,420411735,993676709,362585972,969998187,732870574,283035843,444286036,533886832,110115655,295973289,907105582,38872422,262942572,546658433,813965255,371706435,872021686,474391597,525562282,164168973,464860532,150570334,768793091,110627337,71174363,694165459,32201822,213110149,187943713,987432126,105623569,300083274,537170448,522918015,793610256,981245471,801484928,444105042,553552305,27590974,570038870,27791591,601521854,641742659,647044761,653517551,32273467,180280604,856923646,750148996,859414767,472288444,564056534,122682992,807798011,489946172,414214560,108705033,491125067,358882358,767192241,347258311,328358412,224869556,163329948,642887354,835709412,707109186,976306358,249355856,650169387,83266746,479283384,835746140,591893303,257573344,830919327,61649021,761281279,982806416,373744820,779937005,299031948,728427821,494582604,81063988,607341483,360697163,109050638,253586255,512404445,269510504,239299343,725285141,433962915,637394575,751077713,422425338,461170297,221276733,724874313,377701265,345926821,210584896,229142551,578233782,202208997,59825078,639070908,547344992,986562476,621129139,388226233,116411796,799071430,901611832,581906975,720573676,536378448,552153010,850528532,187644595,452501635,758478401,331501833,271837417,243441686,720944634,338601606,396492129,305006754,842401734,458931366,600442250,433929686,890194213,751273738,897607459,886162890,349084243,538025401,327170984,553431581,673448313,403275938,675453599,615656071,905921074,536762644,752304867,348209145,126590412,127948308,57236863,620756328,279065207,928249366,746894880,219523420,61687871,119765253,310945002,114586218,427426385,24464974,416897864,332836831,274550981,777455754,62944519,907118707,572934964,799006729,888607100,81965598,323130490,178982636,789644837,45845953,880525457,533203910,320339050,8538983,782149366,559685809,799167696,202093802,786153214,469487489,537304030,524386839,686448968,945440713,240675754,43640915,373466446,246391884,273602499,563636858,376910673,552723221,886114456,777621446,783436432,460667099,451829234,318114627,123120140,469250014,201295170,92915728,435543997,322878148,801767165,925590949,522423526,475203193,139851128,106359967,90241437,168884652,466096109,288734506,103605832,581255626,143429101,515756088,155867870,328361954,45444263,321244371,571624666,755253656,743414580,548102884,231052654,833939064,191389168,134994710,951839063,8061386,206304502,751374864,870503500,135300678,130565702,253522234,106421254,138761071,754745254,727295507,727058681,816909152,470413310,27069519,915159312,650688475,945052219,29239446,501143785,446880053,621418466,669272869,888880913,725381650,111734219,668538014,201437045,383549328,205175961,182014389,973249829,524898209,188589814,606232235,996602723,79171951,699701064,736858899,906593435,112632261,315765993,221790093,674246265,139017124,705730887,140488142,237806676,378576719,269569103,626701984,756328644,506368241,184589861,187964906,758726437,334557874,705890839,390831284,442947478,117471058,91343955,411947285,664988798,721862591,790119726,274748683,878005038,162325752,654799020,856400072,924083460,843214983,929493862,322283343,96822685,769481223,442502813,123356949,233364044,667659843,437640390,598860461,643739416,823527930,481825736,808407073,453144798,419613794,132756105,768773896,928309441,281224952,945759932,984235181,625851105,929638349,294260113,418606762,160387246,320748552,513047958,944471712,125704841,390194949,945897185,336467007,526316512,562015761,982320432,843047192,613647101,416668185,905653931,972568167,779800378,73486946,936163278,245906306,321331360,302120904,638051845,123076369,367838403,732640219,990508075,775117,204881090,993753018,46889975,431489980,347145183,791026221,489428807,878539414,754341717,435170017,877687716,808638993,445491508,834238094,568623181,29367321,641566206,819854641,415365274,485165396,209309463,774343034,37344991,236077372,259764129,397334804,476248044,76385117,403113901,350125889,836968302,398564657,879497796,310377372,559769357,466474540,524432120,77348215,601261974,771969315,681687906,368069184,545968175,282414591,402215908,58536994,19138670,470389317,396588640,985624648,656685711,6381708,156596194,823009830,505751993,455383108,608551751,219224022,65015402,297344287,994398858,444122409,488533910,149629554,142741532,717453458,980199017,101698373,910698756,274548350,581356922,910723372,991979161,364066615,597722352,21928230,815205160,819995653,178051009,211382830,668804559,687889384,154782149,485698470,64880944,256848245,151507090,530304540,519610565,221545591,810119402,749344403,152882947,637528754,556494227,437651955,629250486,63356488,564693008,968001542,124111138,826893659,270671812,290007398,432398830,855352069,34972824,797693956,790756220,48209963,58108137,195478170,192329277,119540891,565733441,84760221,222571119,933504967,269553305,698599929,171293506,825317929,466899870,237630488,817842888,948854524,738152748,231955676,341886958,273655099,780795643,574341966,737672545,699005249,716718349,242100590,351027608,850928931,768435733,616907125,408478627,403730840,259385909,880130056,721217480,455736172,37045627,451408070,843313852,354516004,443008137,659469465,306696524,376481238,33444229,999467334,972368200,530525371,370218502,785077653,632271466,441001563,132682533,353518718,220653165,178741395,729877685,991580578,598030146,815742036,708786514,346032057,654158982,643504113,797980871,82765926,444723215,308982143,439777747,508051601,94687414,721315591,146049189,599698160,795315220,651939473,303929622,696641516,232856930,682709846,185578269,861572699,723377135,271365402,831123956,143805571,176936884,149708404,884092226,232838983,306595461,400151972,937348742,237542283,606248949,153692532,202015735,731010244,335223515,990475589,817782254,667611373,625647723,205495661,808180623,337407624,925841513,288224842,719672756,515224554,548914971,27900903,208854291,568077105,382777417,949300802,254701571,141228509,283657371,699136918,186250201,605782433,901168620,636917836,127125889,761679897,395718670,730193107,422444511,220950454,775624978,303557781,922410136,130515265,585882466,448673734,784438429,374827436,621830642,236003802,74044170,624586838,453372769,556146760,489059736,84431254,844739141,404242104,82281247,35386790,857171602,897607999,982865579,255712537,316926047,542547676,104119218,68932133,437927277,633516259,223538360,224329633,97215866,811582646,703397323,388396571,78002288,408776003,792578959,327057630,1404645,608380370,22616844,909031638,306365937,426982883,40358965,362992601,904169607,506339799,77041899,54157264,148217490,669776749,241478293,284828189,790885513,918872159,424894748,276273175,827269077,13959242,207894980,868794704,961694896,59047807,564202765,311631516,671776332,76610539,958153168,438285651,260735785,419110108,661039041,636319535,879383007,52310690,834973046,820836930,578726375,98137135,643872160,58846943,474696705,492268917,992953147,254458318,939560322,201153034,526348409,117905283,891531387,648544668,248849932,544344719,593490431,333769431,704382878,542437718,150064493,588835358,601631760,539420834,934803004,191487184,59929939,370151289,642956362,556438577,358632422,703536680,749774598,910674596,843143148,978886708,655175459,434884442,996845538,482788740,139109539,626412390,666622738,145643761,296862719,135885778,635171686,187624308,828500907,25492728,48410908,528737505,965892126,238183081,806888960,458120567,605090484,930375725,299686445,823567571,338516763,270941226,825540261,443407338,631223620,155668771,492586357,422803421,50702377,784629211,47141674,572736111,911217954,514039181,961053323,350686000,729770890,414099190,505973062,960107541,553192369,17551559,923335861,268593345,517012378,865618608,970411502,397506453,996239639,753660991,793262570,814256960,546487822,61739057,325157531,158035382,77816704,504387977,752039503,551196771,646602074,40890140,458877544,647395654,71352441,721243883,899059064,127374149,974602705,700733897,25467257,245468572,568460782,510370109,303277922,732257422,678420743,192763209,617601596,170732245,98045376,904814707,57785879,88732855,343512277,83611107,211899015,752868816,752913344,46076059,380314180,784098007,504813910,701675745,552125139,662079518,972095957,631007326,698403359,178656653,568321752,209918420,152361313,490352423,574557772,842266041,13384097,592456600,977676092,383063776,510289206,365511725,734808149,590517059,730757414,191167737,138428734,935279754,868177400,436073375,117372520,290334226,55989459,967055512,660461545,168793555,211963260,380694192,472954842,750444766,267515743,185529040,497711658,532286633,967136022,577428332,449675392,778347467,990910106,372192982,124892982,137748462,442691273,364164659,353957601,198583468,195903739,914747298,504671778,447686172,356905737,848508879,575203401,418286992,887722765,589311715,947157273,618928661,633136110,586770040,297044586,853745167,941259347,649700432,925473449,829553642,504866563,513945874,155721289,38758689,298878482,567725219,309123654,76451770,722602307,91251506,93401001,791976574,370053850,872197646,137773553,433166033,854129987,322127577,274628891,464523624,962028375,17126379,434542297,123064795,957336656,608162304,611122201,213548197,824833229,895031484,331050262,265629367,160442999,751560816,226242421,841073103,181371087,7292004,326081819,999678341,992896079,168997003,244583600,253724416,915453150,309328947,852147206,106179088,486216736,596481510,382411126,757805750,815417107,555856274,866465335,104419524,299159175,408824160,937636335,578847154,897603450,476210599,156872856,977706953,83094825,420031216,337757160,811669531,791816013,28157587,996250068,631151969,619752699,597258432,388745652,167542825,682214547,961290804,182907648,956660750,734995885,399403451,266836771,156464242,877980216,553308814,599991781,28284876,842237084,123742774,423247299,516999019,157123147,706936646,879732147,595946423,228867076,174585421,216498549,40348867,57405271,123281843,547778613,678768252,743578799,348315231,192236712,856507296,13732314,458038185,980684937,386994670,53822881,981518414,502189619,209170320,469168453,624755875,576318359,790751600,854414718,654971834,326875292,952043200,884487473,750078,720519663,627466150,95257180,856719641,257206815,495906978,205740865,809542470,259820130,39991199,105697801,94211493,13064013,264705088,714511100,752411623,748667918,920299314,627077285,385644732,458568581,974762537,420594239,103360771,133718824,360887828,248497584,704945270,750898293,352965466,843602754,444916140,394583213,253531498,126335379,997394151,1173693,621957927,372150934,400640909,908453675,690562212,357216475,434818399,606160566,467849831,831737032,362688789,98481324,307998004,491978686,19803035,984537905,185663706,253653211,408695960,3143917,409646338,727964093,272838818,308653495,921178429,867758491,519452474,756615784,953103188,855954530,420862976,523275211,522413049,890302505,349854903,400505897,456014751,428835051,599001888,321678370,253297015,595727530,365786493,520190989,915895709,615737315,63539011,871793730,932572645,629264085,120849989,479165551,535490264,152308755,771439010,449675999,364816739,208772628,428094815,120475620,951326204,522190584,529056454,452258311,937180867,835858184,614563310,437685417,966739353,532979388,446550575,125013241,522780686,342738790,158324077,505460743,189079866,410971339,761244545,46354481,71651967,458053176,103169288,825728592,523955618,916203372,566424051,824633815,709936951,189557027,578891458,751317527,189769713,519794292,972778071,977810698,227950553,886710664,431159715,382112732,481997843,315539261,933508283,837869843,398502725,73321235,283072672,307603382,684848555,651547199,808505410,273508445,791968280,35489606,981190938,928472067,528061507,106910728,863110841,716488161,112230282,709637026,720940672,940480056,381485481,938485276,54698479,530238438,321201301,472192989,846750588,278929293,40972335,515453135,529003597,514312745,486736838,363898934,977187553,60127313,820095542,732612545,409929999,489610712,791265440,735193363,237267818,682188458,971939243,59617638,306711399,420508010,33593294,966802293,626664422,236215332,508200929,986536171,863773556,962090646,814272564,225007692,933740605,230723055,324928509,493661335,436363244,975613833,399106340,517547128,787707402,951125247,58825679,159656311,734825431,351198691,869172940,715259430,673276761,596283140,926712629,724299478,392414493,288005440,977967629,862655204,552647956,187363234,304393674,64107089,955651764,991582615,352860342,815771349,635878133,368709303,193693921,611676565,786804059,463125734,187597018,504423420,338617130,83506319,998289612,381567301,402908256,797837729,77750989,487850841,48730655,649979960,914274344,821813964,251757139,350207344,516112068,919043939,275711556,288308933,67401849,731742445,952039404,993260648,819078299,327075689,187054822,591592399,425515506,127932519,595190336,827009605,815575508,380953286,255609775,183662582,148500094,596803868,614299775,168592253,942135811,950692380,254248305,115776306,215981310,347553003,122101675,642731700,967143471,27943891,31272101,128056504,782557520,737899041,202049125,774416421,917755439,138010024,817004512,660015986,126009803,901757382,880671429,296197205,62171164,245021278,57597582,734467,266494186,61817281,687135240,527752559,475622535,201013246,625888227,720666385,975320168,394541878,803773782,194695244,254403298,314841839,539441099,615029811,887817418,994046665,676465203,835136483,531393486,944590903,214013214,534076357,107596063,655450486,494016497,169149638,247363773,263733794,321061045,82402868,788776647,370726728,988085103,744347714,164498574,155349273,113551280,759167127,837890307,708080210,786264357,94557139,366599211,88105081,502385977,623315309,447893190,866631351,11499293,936042437,398438654,952039110,342643849,625666263,525224979,969786918,531394633,388740822,94028861,713348248,743213965,27999701,304719067,684740668,719135506,759290892,31396740,126803262,540707163,491304495,699784838,645175702,878229941,241715178,761804623,761373723,134492413,809547033,395067794,668062716,180410331,299865101,504780016,263515185,149716330,241783165,793346360,702643052,583448234,981872333,162639024,711888414,500425319,492485541,249139381,517938540,870009012,981340083,121219685,303345813,74278194,880797526,198126395,52318451,686209702,348625913,445256053,787910332,789770044,530297794,910288004,147097423,864882372,369341759,489631539,799554029,688029668,875434945,709842846,507569331,973142003,671191718,669282255,53145028,378647359,258597110,772554226,565536116,210296306,874532108,587355613,859160001,976716306,111520647,592031593,267957194,178133580,939843167,29492335,380698538,924459187,429207597,810526756,956351674,248730976,327070308,152395926,998386236,475924390,914199285,201490814,473989273,252551168,446366902,738904349,944612194,157644592,63755111,504891673,13228729,182288534,877450064,809686539,961789904,573057683,470745235,685492078,886320437,258099139,970366672,365672379,338352749,992135608,888990945,633758380,599262129,940491142,581633760,257447299,265617791,904478410,598637249,31994888,783753204,263666350,794887781,784280003,918871432,466019810,810883588,232754990,372609194,570918924,693949943,80642850,730957829,207965748,883666576,635810357,410844308,343996214,912506429,812585840,578335271,169931627,214129537,77701315,263642496,626194230,991559482,478866162,41017638,179693355,167870016,116406137,883962415,601437411,15791005,312326058,468632910,736356328,970838199,539335306,884490554,220146138,482795215,966681039,584040764,191729579,141965348,474786141,607243143,708222161,935008153,269949514,756732072,339284632,461126467,415078002,916945920,757533892,531407983,452801238,836065179,151837450,789460070,446641409,10893196,60779003,964813766,990082251,743683399,126200759,971698895,817402703,875403836,425356705,518217045,850373475,558998608,438002685,617713608,809020532,566224367,960663113,385211002,818267910,109797190,129332252,14491546,433376622,435789344,980497730,909635664,68018845,527869691,462275884,902507732,575452257,328949257,855114091,65228457,517601395,441437682,738916614,890435120,245131572,975094763,93944173,623839748,696245449,480927127,643273762,672401874,811318300,430876632,245720827,589966900,458020732,195337269,113576073,683603625,313796457,86875993,455535039,784690299,476215,129995018,931282829,129998694,264502666,627996969,421770764,879510680,958812986,680667561,967605020,459435446,544914365,992754503,368403844,135389134,612518754,141560684,707116153,223789342,969047339,706719779,861644110,277528110,643048826,483470995,242544542,758702014,31892823,804720989,521022522,268468855,481740896,377506134,579122959,552242503,186238020,304105115,251150859,58015512,11248067,541559360,590697183,769538092,598649779,42590448,399621156,519890940,233087062,131345524,610757625,454894775,913870032,531244655,214149793,417677458,924580433,30821629,209634752,430647281,436615863,900901131,671144329,771422414,985648253,923129259,327115759,993920694,83825308,312619215,548665102,499881128,24293727,933221598,257078770,370115315,124604835,88803754,707202010,7298313,745754654,803367524,516002248,104248861,153355159,478424108,573377972,347986411,802300435,627261898,127856269,373908189,35337529,825105843,594261898,873457262,751397731,794434404,664544548,706316911,922663817,998150433,899477843}
{3,1,1,1,1,1,2,1,1,2,1,1,3,1,1,1,1,1,1,2,2,1,1,1,1,1,1,3,1,2,1,1,3,2,1,1,1,2,1,1,1,1,1,1,3,1,1,1,2,1,1,1,1,1,1,1,1,3,1,2,2,1,2,1,1,2,1,3,2,1,1,3,1,1,2,3,1,2,3,2,1,1,3,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,3,1,1,1,2,1,1,1,2,1,1,1,1,2,1,1,1,1,2,2,1,1,2,1,1,1,1,2,1,2,2,1,1,1,2,1,3,1,1,1,1,1,1,1,2,1,3,1,1,1,3,1,1,1,1,1,3,2,1,3,2,1,1,1,2,1,1,2,1,3,1,1,1,1,2,3,1,1,3,1,1,1,2,3,1,1,1,1,1,1,2,1,2,1,1,1,1,2,1,1,1,1,1,1,1,1,3,1,1,2,1,2,1,1,2,1,3,2,1,2,2,1,1,1,1,1,1,1,3,1,1,1,1,1,2,1,1,2,1,1,1,1,1,3,1,1,1,2,1,2,1,1,1,1,1,1,1,1,2,1,1,2,1,1,1,1,1,2,2,1,1,1,1,2,2,3,2,1,1,1,3,1,1,3,1,2,1,1,1,1,1,1,2,1,1,2,1,2,1,1,1,1,2,1,1,2,1,1,1,2,1,1,1,3,1,1,2,1,1,1,3,2,1,2,1,3,1,1,2,2,1,2,1,3,1,1,1,1,1,2,1,1,3,3,1,3,1,1,1,2,1,2,2,1,2,1,2,1,1,1,1,1,3,2,1,1,3,2,1,1,1,2,2,1,1,1,1,3,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,2,1,1,2,1,1,1,2,1,1,1,1,1,1,1,3,2,1,2,3,2,2,1,1,1,1,1,2,1,1,3,1,1,1,1,3,1,1,2,1,1,1,2,1,2,2,1,3,2,1,1,1,1,1,2,1,1,1,1,1,1,1,2,2,1,1,3,1,1,1,2,2,1,1,1,1,3,2,1,3,1,1,1,1,1,1,3,1,1,1,1,3,2,1,1,3,1,1,1,2,3,1,1,3,2,1,2,2,1,2,1,1,1,1,1,3,1,1,2,2,2,1,1,2,1,1,2,1,1,1,2,3,1,1,1,3,1,1,2,1,1,3,1,1,2,1,2,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,1,1,1,2,1,1,1,1,1,1,1,1,2,1,1,1,1,3,1,1,1,3,1,1,1,1,1,1,1,2,2,2,3,2,1,3,2,1,1,1,1,1,1,3,1,2,1,1,1,2,1,3,1,1,2,1,3,1,2,1,1,1,1,1,2,1,1,1,1,1,2,1,2,1,1,1,2,1,3,2,1,2,1,2,1,1,1,2,2,2,1,3,1,3,3,1,2,1,1,1,1,1,2,1,2,1,1,1,1,1,1,2,3,1,1,2,3,2,1,1,1,2,2,1,1,2,1,1,1,1,2,2,1,1,1,1,1,1,1,1,2,3,2,1,3,2,2,1,2,1,3,1,1,1,1,1,1,1,2,1,3,3,1,1,3,1,1,1,3,1,1,2,3,1,1,1,3,1,2,1,1,1,2,2,3,1,1,1,1,1,1,1,1,1,1,1,2,1,1,2,1,1,1,1,2,2,3,1,3,3,1,1,2,2,3,3,2,1,1,2,1,1,1,1,1,2,2,1,1,1,1,1,1,2,1,1,1,1,2,1,1,2,1,3,1,3,1,1,1,1,1,1,1,3,1,1,2,1,3,1,1,1,1,2,2,2,2,1,1,1,1,1,2,2,1,1,1,2,2,1,1,1,3,2,2,1,1,2,1,1,1,1,1,2,1,1,1,3,1,1,1,1,2,2,1,1,3,1,2,1,1,1,1,3,1,2,1,1,1,1,2,1,1,2,1,3,3,2,2,1,1,3,2,1,1,2,1,1,1,1,1,3,1,3,1,1,2,1,2,1,3,1,1,1,2,2,3,1,1,1,1,2,1,1,2,1,1,1,1,1,1,3,3,2,1,1,1,2,1,2,3,1,3,3,1,3,2,1,2,3,1,1,1,1,1,1,1,1,1,2,1,1,1,1,1,3,2,2,1,3,1,1,1,1,2,2,1,1,1,2,2,1,3,1,1,1,1,2,1,1,1,1,2,3,1,1,1,2,3,3,1,1,1,2,3,3,2,1,1,2,1,1,1,1,2,1,1,3,2,3,1,2,1,3,1,1,1,1,1,1,1,1,1,1,1,2,2,1,2,2,1,1,2,2,1,1,1,1,1,2,1,1,1,1,2,1,1,3,1,2,1,1,1,1,3,1,1,2,1,1,3,2,1,2,3,1,1,1,1,2,1,3,1,1,1,1,1,2,1,2,2,1,3,1,3,2,1,1,1,1,2,1,1,1,1,1,3,1,2,3,1,1,1,1,1,2,1,1,1,1,1,1,3,3,1,2,1,1,1,2,1,1,2,3,2,1,1,1,1,1,1,2,1,1,1,1,1,3,2,1,1,1,3,2,1,1,3,1,2,1,1,1,3,1,2,1,1,1,1,1,1,1,1,2,1,2,1,2,1,1,1,1,3,1,1,1,2,3,1,1,1,1,2,2,1,1,3,1,1,1,1,1,1,1,3,1,1,1,2,1,1,1,1,1,3,3,3,1,3,1,3,1,1,1,2,1,1,1,1,1,1,2,1,2,1,2,1,1,1,1,1,1,1,1,2,1,1,1,2,1,3,1,3,1,1,1,2,1,1,1,1,1,1,1,1,1,1,2,1,2,2,1,1,3,1,1,1,3,1,1,2,3,1,2,1,1,3,3,1,1,1,1,3,1,2,1,2,1,1,1,2,1,1,2,3,1,1,3,1,1,1,1,1,1,1,1,1,1,1,1,2,1,2,1,2,3,1,3,1,1,1,1,2,1,2,2,2,1,2,1,3,1,2,1,1,3,2,1,1,1,3,1,3,1,1,1,3,1,2,1,1,2,1,1,1,2,1,2,1,1,1,3,1,1,1,3,2,3,1,1,1,2,3,1,2,2,2,1,1,2,2,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,2,1,2,1,2,3,3,1,1,1,1,3,1,1,1,2,1,2,1,1,1,1,1,1,2,3,2,1,1,1,2,1,2,2,1,1,1,1,1,2,1,1,1,2,1,2,3,1,1,1,2,3,2,2,2,1,1,1,1,1,2,1,3,1,1,2,1,3,3,1,3,3,2,1,2,2,1,2,1,1,1,2,2,2,1,1,2,1,1,1,3,3,1,1,2,1,2,1,1,1,1,1,1,2,1,3,1,1,1,1,2,1,1,1,1,1,2,1,1,1,1,1,1,2,1,1,3,1,2,1,2,3,1,1,3,2,1,1,2,1,1,1,1,1,2,1,1,1,1,1,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,1,2,1,1,1,3,1,1,3,1,1,1,1,1,1,3,2,1,3,2,1,2,1,2,1,3,1,3,1,3,1,1,1,1,2,1,1,1,3,1,1,1,1,1,1,1,1,1,1,1,1,1,2,1,1,1,1,1,2,3,1,1,1,2,1,1,2,2,1,1,1,1,2,1,1,2,1,2,1,3,1,2,1,1,1,1,1,1,2,2,1,1,1,2,1,1,3,1,1,2,2,3,2,1,1,1,1,2,2,3,2,1,1,3,3,3,1,1,3,3,3,1,1,1,1,3,1,3,2,2,1,1,1,1,1,1,1,1,1,3,2,1,1,1,2,1,2,1,1,3,1,2,3,1,1,1,1,1,2,3,1,1,2,2,3,1,3,1,1,1,2,1,2,1,1,1,1,1,1,3,1,1,1,1,2,2,1,1,1,2,1,2,1,2,3,1,1,2,2,1,2,2,1,1,1,1,1,1,1,1,1,2,3,1,1,2,2,3,1,1,1,3,2,1,3,1,2,1,2,1,2,2,3,1,1,1,1,1,1,1,1,1,1,3,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,2,1,1,1,1,3,2,1,2,1,3,1,1,2,1,2,1,3,1,1,1,1,3,2,1,1,1,1,1,1,1,1,3,1,2,2,1,1,1,1,1,1,2,1,1,1,1,3,1,1,1,1,1,3,1,1,1,1,1,1,1,1,3,3,1,1,1,2,1,1,1,1,1,3,1,3,1,1,3,1,2,1,1,1,1,1,1,1,2,2,1,1,1,2,1,3,2,1,1,1,2,3,2,2,1,2,1,3,1,2,1,2,1,1,2,3,1,1,1,2,1,1,3,1,3,1,2,1,1,2,1,1,1,2,1,1,2,2,1,3,3,1,2,1,1,3,2,3,2,1,3,1,3,1,1,1,1,1,2,1,1,2,3,3,1,1,1,1,2}
{270955,494661,286841,753318,177060,974780,368355,729522,865032,917777,100902,470258,25692,270622,768195,262852,866352,391573,393382,727296,975771,582469,937189,456120,719233,524629,593664,565242,746895,65157,490785,599498,783291,191601,14299,560043,6982,557071,881261,580053,711803,705901,282238,703677,945455,879734,535264,71057,517761,69292,495566,502331,736473,213804,658031,129563,690154,258671,847827,948303,111921,270789,140018,388781,731701,413913,888882,710597,814663,654449,944864,432929,993473,269101,324467,811653,508041,676805,992717,701169,246476,243533,232507,131740,523141,960755,757810,151992,960309,596796,536402,240819,990570,254284,434212,136241,889018,420573,224349,634324,767494,464708,885211,59510,355961,613297,413092,523307,481225,694189,750059,703810,546930,639579,937933,931778,70847,641273,599949,629167,330691,903838,570846,117444,79321,597179,709719,586999,305193,954844,446973,882810,146404,274214,948158,303990,297732,125144,804786,822095,369615,247563,455002,179301,210067,211060,296611,551118,19753,80863,218465,28383,342131,408243,200278,583522,921887,691314,636202,739807,565539,530167,595826,27861,148417,159031,438635,589374,549378,819203,383613,478033,305852,951170,119482,81401,922382,86777,858398,595168,58464,990980,216270,508905,897574,979355,679579,331758,559451,611216,268990,942536,534344,619661,14107,750533,658236,106009,345280,876145,422226,259793,506404,130703,427184,669360,669418,973727,572356,2889,586717,925080,840199,881865,534387,312620,689852,906424,259340,969800,633583,144822,357874,244114,322231,232896,591256,546347,890742,488426,737885,262893,380693,33635,235400,275884,541195,920822,594315,75318,42261,475205,630785,474837,220796,68302,608433,869001,598484,417704,210251,118736,680184,374980,592231,199135,837009,363565,679755,588839,773582,896202,101155,268563,100011,544345,958152,443206,244204,924787,304252,824288,289120,5901,550506,390199,433056,356978,265192,509343,375631,684939,38517,480613,425177,517401,651645,27021,976502,242679,46354,627545,913253,386074,23026,240322,394867,96082,878342,990014,296116,812488,390494,83450,845638,997632,895927,38560,713746,310422,719031,182736,202956,666050,735725,547943,918384,211286,741907,609405,921221,11708,177869,626080,235867,569978,270250,246811,986254,913519,893855,86260,62402,996949,855121,511207,773798,636671,690313,406061,638003,225242,308415,10234,701164,753325,252433,511160,87390,582746,420170,972878,585374,881117,810718,885596,145999,607049,734890,325950,622875,130832,764022,152071,598071,544505,113460,58053,776801,679657,718720,849281,939107,105181,554271,259005,294095,972395,522562,226293,64194,891718,291010,995489,684067,930873,592995,973743,7394,33832,735378,152714,655227,488084,376681,133528,282419,802773,383784,464821,443543,562207,785595,750522,199169,315776,252792,605626,378324,823197,162463,798849,448189,788154,638810,114965,893426,527153,388540,622647,494580,563511,221188,996064,898830,480284,42776,747462,775637,30345,13324,599126,651431,829377,261530,560377,828974,11810,791977,884753,880028,188067,237129,391418,21806,118997,898355,326091,175979,413732,66378,817940,299044,559829,364766,95840,982835,442759,21605,917298,329982,831988,609793,211785,36338,84206,566335,96733,82250,853924,920852,577889,846279,561692,733791,451265,173559,57016,512684,630755,231664,321459,161069,954920,771731,643555,926272,943273,889675,409334,204397,792379,971853,497463,592871,466029,653592,676359,490312,459975,777332,210598,422295,820235,161972,86569,37251,906933,355509,133251,112806,260796,15967,899582,371268,283856,371040,457280,685451,399708,594550,874121,701523,23747,620195,596785,616605,468452,124344,359788,386454,524759,20557,198343,75026,696687,333892,41130,276115,523191,280843,591317,666433,386231,965464,517989,510960,775279,563500,464654,515487,653528,412307,456927,849653,878120,461344,740739,830020,605452,169203,755900,782600,80684,669748,109160,35558,376044,47574,133374,860079,872167,639511,645327,432220,145332,774140,391303,200785,692643,13591,973354,556700,662462,764291,955929,89844,902666,391011,819853,557692,717893,947368,269400,315455,614951,832138,192553,123763,763299,144140,828934,698808,528228,521274,157776,301272,29266,393451,737412,77446,846605,709889,192503,64929,885038,397861,689495,232879,715402,614605,990382,818532,761136,783032,227872,633626,162152,651439,308457,913944,892019,17091,804769,481038,166479,905875,90234,42260,654002,452356,610686,259568,909516,962120,30163,294350,366599,829658,839736,13767,895432,249278,753223,748189,205165,377155,637555,459003,410510,416770,483785,245878,736701,200158,470000,602576,48520,827907,406698,352049,468532,162728,285971,298926,346113,203727,859870,218501,310698,339650,536157,582556,645987,829589,132663,408710,952795,693928,581105,846079,260794,673316,790824,672173,896033,87675,324947,252639,895470,59753,880579,940751,235895,350391,382691,420833,51596,312500,59962,958692,357879,156220,424677,931469,295676,520563,529824,920064,514331,881672,617084,501513,608971,105780,711015,613020,179774,329658,642025,18267,180962,665447,641763,709710,966876,200464,957967,700841,926028,605912,587332,410379,964301,192041,42161,611195,768755,430584,94175,978923,85837,548291,534002,170807,261410,841812,238822,29028,550197,712252,50259,777891,98819,810970,274474,643789,691906,30228,921591,497894,901410,452635,258591,897051,422349,3688,643617,285382,860903,148035,384215,830118,80080,358584,909875,895913,943007,142689,954628,481317,385382,327329,539760,14872,179634,576293,138873,312940,169290,161827,838266,503671,192493,493340,233,473012,399318,269339,736788,803213,902265,148852,513510,494546,430277,986120,222561,12929,437857,899518,386786,415358,227888,711113,239009,518297,614735,89254,145328,859149,300820,182236,117114,335804,549326,477691,937027,966262,314313,490207,265643,528433,356808,689453,4140,966095,313803,99538,85721,635165,371913,98441,408096,962895,338932,788307,677510,405639,483769,497661,399599,886990,679935,328864,555732,329046,831653,325082,384012,892288,102406,726423,854086,571985,194486,956108,674571,246780,230467,990839,100990,39837,513718,575010,757917,614778,90770,203488,304895,565378,820497,426764,235285,643343,749164,622158,787882,484773,421521,605335,742117,755122,817004,7585,182212,895566,683360,666993,816673,736442,533453,270807,901166,794850,495113,737579,213178,633885,844457,39759,77163,937833,196663,693169,535426,133425,57402,25735,118428,356809,604915,923026,617518,833774,652188,392222,135366,351496,118057,28798,727310,526057,216712,820881,195146,920012,690274,63490,950422,502488,116761,473729,652202,215965,13258,955084,23128,75028,740938,189995,98378,389921,758891,623660,40838,676050,319605,603821,758699,11742,321007,47889,241651,78312,638677,714054,585649,788347,227297,531591,811474,691469,585284,621525,201501,900734,728107,233470,455797,305431,908092,517593,716115,482062,442328,887109,361038,12350,747224,799407,729812,400561,80018,712394,973872,230039,665940,424918,872324,996430,190821,442011,505422,718682,611656,484653,961956,711019,536121,271399,494073,928411,509231,99826,714264,581039,292187,273725,657381,154835,779813,980099,55137,114400,424052,110602,559588,680024,557028,459680,611299,7525,760974,8734,648809,725407,537541,603239,691295,380805,273301,862439,736006,979328,914180,7573,490040,504933,437843,494195,924205,169393,168572,17866,833457,829068,384370,354865,703792,635145,429670,373445,676461,861858,288637,19311,160388,276541,335196,711011,994413,876331,838815,919133,909561,830309,458651,969507,186644,796944,655521,697480,192003,369464,882620,840612,661413,177813,397679,409118,165108,138122,337337,625700,44483,12515,627154,685615,43134,227924,677997,614018,102383,386046,873526,477801,452405,146219,861587,470268,851788,320335,459045,596955,519434,876999,422213,618993,106141,402203,874505,303666,996495,488188,994686,823070,614276,679432,433069,398206,102585,268355,947288,620132,391556,795934,956603,188717,609752,966258,546125,170495,754559,240643,28798,369357,823520,341758,970169,824144,467064,102845,376865,188173,853090,663487,177685,349331,766545,656050,788717,998779,437970,946987,946620,192296,838989,486698,509518,964615,821379,950809,733353,681421,769422,525963,593357,104509,613477,178687,283382,90913,924951,115739,895766,288270,974733,679795,60061,866338,441418,725249,212083,760007,869676,571628,166778,570799,446890,485507,669070,696343,397781,237569,505094,792134,49369,638280,100274,478797,79098,643496,200540,501062,529177,939414,836105,282134,653871,689335,486071,653164,374414,305940,86622,785346,721253,912549,790897,750105,825402,554057,64028,708606,198063,848457,221253,502345,53631,193818,306828,881306,631807,230105,275468,253725,186720,418510,421530,384452,607081,499564,16067,946961,981310,643533,412943,345163,537758,940727,184962,744837,424286,82139,397271,701084,662385,902034,775365,507831,511713,494304,708988,894535,669460,37107,993958,690438,809481,945443,68328,46586,119386,60977,424736,958512,368634,34825,431398,567427,544182,691714,226509,439252,373877,917530,447904,946001,198970,729532,270119,425968,192926,929147,923041,646002,859224,972438,730697,191074,77815,369460,499412,331413,92195,695015,37551,405866,894945,21931,631938,901193,105614,262053,373425,45989,876833,1381,878871,520124,376619,312742,47435,55699,612247,248523,840028,63484,742316,730850,158870,457041,427784,391074,310973,806264,60260,258285,454479,918878,504916,228176,700292,614526,541957,996736,897999,664665,921727,972637,79003,244157,635299,141873,622160,893953,607084,641967,200141,419396,660591,354870,916205,149042,425692,311052,893700,626881,14140,210405,144609,249261,999731,228443,236940,548866,748157,678389,181190,64208,867570,577954,679757,558454,736835,493373,421271,137433,686844,400456,136147,425963,201218,954098,887213,977510,78932,617619,741257,237584,479116,520045,911685,900599,112989,774058,412409,293364,234387,940194,623095,917865,415576,952531,40973,367749,700971,447849,943039,842748,449640,155061,358799,456017,832389,458936,512951,16781,468688,26327,596971,262471,726644,892837,714202,145627,555634,888606,977131,746485,586218,778663,777154,425477,386449,320913,672954,593290,514234,426069,819817,317194,190032,764504,23841,863637,540759,179813,331435,20998,253552,776375,20491,816579,693203,517358,454529,881722,350036,285590,658564,999460,730272,642982,420678,741252,15743,535996,947701,759398,840529,497763,719029,504354,959443,393742,142888,593944,339801,204636,643688,643634,109459,928660,341705,786087,188297,34856,24474,873652,67681,206067,461922,672419,70806,755005,528996,305157,505664,5299,681053,803769,406416,143089,115074,18597,13842,77946,192261,114745,67306,765243,632463,848049,7833,469325,903812,750481,751352,27058,254468,383592,3193,192597,260069,572367,78955,424076,55100,626985,480500,4503,167507,405859,518934,786912,448497,403314,165036,575610,847447,800857,668267,958435,966335,385186,299236,767876,242717,135394,634238,211373,315424,188407,88446,570587,319727,189387,687488,76148,645613,294160,796604,345543,504183,604419,225412,883855,156066,841834,839362,190702,202944,672984,250556,690739,496729,560422,831442,971606,170036,360249,752828,154169,926093,886080,324749,480422,214942,227253,556468,957589,129560,981273,354104,464676,302056,802297,24057,161695,88116,706541,752564,851255,379357,491157,593277,272077,218301,420380,258563,721894,210664,634807,993105,305909,882284,236581,987849,715094,611474,259693,275241,709902,590620,814180,66951,250638,882567,158503,281942,866479,796808,44315,808417,222389,968721,719089,493325,651406,191434,679845,900952,290450,813146,12156,2654,907202,136861,726467,769232,846986,340332,2837,918972,978880,565018,23251,900106,488997,181619,851178,752827,427616,178942,769363,868266,494024,834362,457548,982860,72345,728097,748513,312497,102842,110825,345319,624130,765759,521727,553469,272003,421795,989388,811403,410704,698443,273842,81988,646817,915783,655310,211493,671559,346706,989685,472245,456878,268431,330744,568773,450395,246859,637922,399727,882350,2112,939446,598425,944926,453325,118707,63728,344961,343488,235089,143919,819715,925262,177220,651159,256683,821911,991157,277494,530075,88101,808974,903586,339215,573419,943276,351677,600090,720007,25068,55408,693102,579522,758368,28785,86930,791756,174297,929151,869355,711938,659548,251682,563510,897130,464814,975598,256649,979443,755659,604414,11735,840376,780712,459514,902698,40763,151862,538899,314665,720043,923296,647556,766225,761760,442697,854352,416254,275419,245072,810120,867489,564169,373133,516612,931656,125759,286419,988390,853595,471484,298286,593052,894682,17899,255588,439901,541218,144864,779830,583016,389223,814040,285597,677706,276537,269051,462671,563158,558465,397211,403321,823724,482242,453812,507971,816628,996890,164268,467921,998562,195264,811218,722623,590962,309765,829536,886562,759274,746517,573946,246475,460828,619637,532525,393796,402019,55812,558643,966674,871651,415547,296428,58867,464651,311151,352420,131423,572627,397131,958161,614537,151552,116569,997268,48541,962653,869367,71092,948097,44994,201316,341352,141461,217742,278194,766924,8245,501742,483666,475687,637043,357718,472014,728493,971935,298884,258567,68857,546817,502849,21117,452752,535899,727905,240453,21730,343401,867199,699858,370442,206178,475524,743342,349515,88374,481183,9215,103314,133711,657292,732996,422200,514898,513679,939223,585471,816797,142775,546155,408786,883336,764509,532237,555143,509350,345572,851557,85598,691458,652024,312243,787200,44772,685841,134868,177666,191756,877615,981116,510754,427251,895133,984442,815174,212238,251951,417785,123969,420108,982214,241467,754128,589525,31752,795998,65238,544970,614890,386073,299558,99594,888680,827389,799671,463208,929289,219509,2094,191543,607901,556552,449561,607808,387328,380948,997360,929544,248918,267346,580309,66381}
Returns: {79289738, 703746809, 930173587, 994621996, 204744992, 758446356, 396499210, 214810881, 945543268, 9433860, 256886642, 656281024, 309792269, 505411070, 578171747, 467275294, 409677543, 80882180, 666801177, 426975916, 503332772, 52797805, 930649721, 120312468, 257155769, 235658591, 354348278, 115277257, 140392909, 388694729, 390532867, 961995347, 219022042, 998595224, 187493977, 297030117, 934866057, 738340308, 591317686, 858694036, 213963878, 746790873, 280909541, 291100694, 823805932, 958004002, 262913073, 517474674, 440855841, 287276002, 81459475, 58875940, 314102386, 466639280, 991894645, 759988299, 109475357, 572664137, 745661184, 292597187, 666297188, 174794569, 921133097, 864464769, 715081087, 489688200, 964369741, 965278701, 750445728, 539936746, 434256898, 436079836, 557220570, 868429543, 285179882, 885007062, 761460445, 889057550, 261970756, 9054196, 399098451, 204345228, 695237782, 740191148, 897019869, 577747501, 221835886, 285204701, 823779189, 843924986, 656428083, 34331132, 854820886, 410666763, 273262523, 701791132, 261687018, 610786609, 136949463, 374869629, 459868527, 271853460, 547191897, 674223640, 999470175, 374909684, 342627803, 367292527, 139090, 623843501, 401254927, 346291382, 14603139, 810670524, 971559157, 572793130, 533437472, 716610068, 295273155, 596988790, 277027146, 712552457, 89346537, 351715513, 853415539, 178834908, 125466204, 95534824, 611848217, 841899773, 945960795, 603027103, 292949147, 875417514, 879182671, 18540122, 619540620, 115043052, 737674274, 581006149, 530685, 389742157, 71117400, 365991683, 196361007, 644689518, 637726971, 223628373, 736509019, 950837327, 543695175, 506549298, 756924911, 635970352, 324742083, 423992401, 341850368, 106430432, 539473587, 612006885, 210899903, 25983947, 488092313, 725353542, 83305278, 523202001, 108566874, 136355299, 425455159, 631815857, 208872011, 661942588, 308533977, 871646912, 524838130, 846809591, 53625865, 407031474, 710974342, 234240618, 808950676, 218833262, 525919312, 953897678, 991687366, 665006687, 402381671, 844098604, 218925927, 974498843, 487907796, 683322510, 258488631, 61228616, 468294445, 923511735, 655930782, 92865375, 567803810, 938353013, 567509856, 269281294, 564137387, 194238655, 680287622, 92681129, 551491698, 74177872, 490814418, 445981348, 746911892, 73135587, 212494799, 15353823, 913594919, 213032132, 671186854, 189078114, 365163681, 207102179, 557459781, 348992564, 697848192, 495183873, 886297193, 797736254, 630294613, 176822916, 890401450, 748752720, 578914380, 983985180, 773074643, 342309333, 21615349, 896612256, 992336951, 567636064, 762900768, 222833784, 647453230, 820465349, 647301106, 37341379, 229340858, 291613087, 579508269, 654127049, 580161075, 989578511, 511300986, 82051624, 701408477, 273650549, 625898688, 245811033, 955797522, 331483434, 442004870, 120802419, 384519022, 941143245, 992669162, 42299631, 69131180, 338337536, 298603485, 653583600, 39463789, 308724562, 123135565, 312020599, 318504377, 534259592, 599585911, 487398954, 98359953, 643051736, 23762677, 462434685, 492419298, 966477848, 113366173, 467918278, 214154534, 825167709, 72563414, 727304966, 930254940, 721589220, 119521267, 408830164, 109155399, 303200924, 340006474, 577794304, 964294646, 322404378, 169554321, 929260123, 857754903, 374155348, 442571246, 262683288, 712432394, 485502288, 373078256, 518616916, 537015638, 450047490, 530229379, 864198561, 25701996, 932789462, 728077633, 918505136, 716365562, 645632179, 548314167, 302134332, 498510696, 823776174, 685788779, 769653480, 638289280, 304391447, 338962206, 442286482, 187719880, 225886498, 449542179, 989728436, 640667626, 127879936, 849842562, 265933236, 674151075, 610371275, 563175395, 419877277, 565596288, 128690200, 290418116, 867385248, 336889808, 345206255, 106305187, 779206509, 381168678, 122556296, 172532210, 469784430, 775819636, 544778711, 689510814, 845998147, 205170050, 30367566, 448783968, 317347061, 754554003, 941669427, 655907320, 888382390, 419748372, 519149033, 355907418, 274522892, 65954036, 475353123, 117431355, 696495123, 263298396, 985044662, 603384509, 451223656, 453866128, 955526446, 779112611, 574545943, 30315586, 251273059, 309203114, 695315893, 94582304, 556866969, 932339272, 387945300, 207526991, 720374468, 283872930, 126780316, 517016279, 962836933, 423409086, 129043753, 752180009, 516017218, 825663085, 112826944, 928966824, 467724424, 592817741, 154291762, 745065603, 113052753, 422713647, 835298742, 989923774, 837863985, 322141006, 204190276, 59639641, 701609347, 801012784, 946183932, 597217536, 367341362, 31041324, 407974078, 128276806, 72332306, 350900750, 514347841, 795234932, 564859733, 419275172, 687208218, 340744008, 244241755, 776236550, 828662673, 93921552, 63333205, 392475933, 321706145, 576856836, 783041752, 271601430, 905503730, 902675702, 637054507, 621245354, 132476403, 484257832, 169217111, 668854241, 594791723, 555396089, 800093975, 947819244, 278837835, 529413340, 770478974, 615352022, 821424721, 395875304, 174639260, 212066163, 728268694, 148681130, 497559697, 392576769, 49384571, 908705645, 203776716, 210216793, 422589064, 798860952, 430341803, 823436243, 235196991, 967229067, 983368560, 394713031, 150164174, 33227913, 371181802, 361499356, 354060479, 148202555, 96993167, 790449218, 261455365, 606470857, 7452880, 124626917, 662314221, 413347458, 484423606, 427130224, 119983131, 681187504, 557946782, 429950966, 55013287, 604435133, 30049495, 435853805, 293822603, 849189944, 360901680, 711715718, 586511086, 781444557, 850014134, 109725653, 67503558, 149456514, 424432719, 337546184, 675453158, 155142703, 806683841, 866629191, 878085554, 458577683, 921757566, 899420890, 581934765, 181666619, 519316905, 801755144, 570222799, 901695905, 326200646, 803932466, 251661000, 830119914, 933918526, 609538022, 742640689, 921263813, 405509610, 685902803, 41032328, 224613376, 421092144, 775798425, 655338773, 838519591, 123701905, 872771820, 563697733, 652336446, 151498769, 684999385, 522362852, 425653399, 141183044, 963660396, 793302615, 949118712, 815605055, 434046704, 22278329, 135404563, 212366361, 810314567, 430289730, 414026877, 34780521, 245807505, 581989465, 281617319, 510588652, 736545608, 451150506, 87114607, 856227731, 113148801, 908750558, 861834865, 307429003, 93166239, 502104319, 640632187, 852470704, 96367784, 247582597, 4129746, 929427194, 831606783, 485890043, 557147745, 67833318, 534044609, 418796390, 663758493, 432161668, 991477476, 559093480, 757042235, 210951950, 976145257, 971921518, 119295706, 911395932, 370741634, 441785874, 32143625, 904905828, 969438721, 90229556, 182392437, 219720596, 159513480, 874345931, 78467864, 235253839, 254622540, 681962998, 984425328, 8806912, 63064295, 796448011, 89424257, 836264740, 895966313, 252497291, 223572528, 31566015, 132615315, 840204608, 483603628, 464700492, 831363496, 258946577, 797849594, 139811091, 215186221, 826767977, 142024174, 434445169, 252026343, 59433649, 81463587, 50340179, 275429302, 797159903, 226916497, 731115718, 830385114, 769424397, 927828388, 641092141, 580608866, 549123759, 332688996, 540302612, 368303402, 28436857, 330732411, 244428786, 722658091, 752675459, 481901609, 912280060, 147785670, 658034112, 865861041, 433337001, 415898059, 281849203, 324400420, 139766623, 966654776, 173887996, 209020023, 152435292, 147884104, 366097347, 386155818, 91269953, 195918840, 924787093, 406112270, 392803254, 819023203, 553342714, 454615917, 437290464, 726344457, 612111110, 181934371, 634874331, 443136958, 416925376, 360322295, 385775658, 36686363, 839456140, 907335083, 479736015, 416679100, 212592310, 79893520, 888163989, 864256603, 72628195, 267279743, 425913423, 300556917, 582813524, 15536002, 974917574, 431082245, 397716898, 504545323, 792881460, 792468905, 765182102, 946505066, 488319289, 28313680, 653831730, 159427089, 376639619, 162846083, 799244964, 21833073, 792537930, 29047666, 309815937, 28537166, 140149819, 713727968, 231047676, 745356130, 891548091, 578356862, 895382242, 855674285, 978936433, 371207962, 965562301, 290030734, 318322338, 803996354, 960278778, 152979595, 287337228, 283501169, 371505765, 240553851, 231506883, 383732088, 109425973, 536905773, 656872343, 205567590, 159312444, 800331961, 570101675, 874870346, 948985906, 519247104, 829041139, 270360298, 840107859, 518276650, 20794055, 335241750, 508047861, 339091250, 13815813, 897348830, 800216561, 673937646, 920853790, 452619480, 27338977, 753105542, 796759773, 178213753, 184818925, 925807705, 657796758, 896571963, 693244300, 538331199, 367074168, 906801028, 674806922, 150763017, 663118083, 89043343, 313596914, 777660960, 661976586, 525447319, 841054088, 34537143, 949262098, 762790002, 484465966, 539718959, 637101989, 340170481, 901548063, 524565491, 728671546, 970241488, 397564261, 435675889, 885881390, 395451122, 387464730, 373473403, 335825040, 117465421, 6035869, 672424756, 974321675, 810363321, 705318925, 633389539, 400412609, 36413158, 82263456, 992861274, 476688273, 522504159, 933639486, 892351098, 369140544, 334438941, 647658992, 166102038, 462111000, 428854225, 607557951, 227989610, 236904849, 81805194, 905891575, 583556218, 550326437, 932783310, 791052174, 244300184, 373911709, 507814692, 964221640, 352232555, 77876808, 410359470, 135706484, 803816130, 17246863, 918837232, 931864138, 176533614, 652138569, 989694860, 712941077, 919907025, 328246943, 687738829, 785762979, 625325824, 486943500, 727258764, 11847186, 643704918, 651864066, 465975396, 805779077, 785667971, 820215983, 788737461, 383148689, 310789714, 800993640, 505555358, 286009690, 926940829, 777445682, 544738294, 140877482, 980490989, 843165685, 244107192, 146306025, 819440454, 639027082, 856338565, 187707744, 800446574, 850552120, 546539968, 112938523, 702434889, 275218580, 49962646, 978537423, 140056617, 989773725, 597129752, 253004662, 914388122, 695206105, 684957751, 456347669, 133631268, 77854134, 777846993, 845924378, 782096584, 950239646, 98978266, 174385891, 263767477, 959273266, 347231104, 655000772, 675513344, 693169819, 570885887, 755886018, 901252538, 268628189, 270369973, 504746755, 654226321, 491387458, 316828471, 78423015, 803322136, 524314346, 311957439, 144121099, 586709756, 75373832, 330370217, 157710584, 416790000, 468350618, 133594664, 64777685, 137945667, 458600371, 403788471, 307584889, 883503044, 700393521, 348839485, 349374770, 478739811, 180375933, 456939499, 69128918, 233955433, 640629667, 719393852, 479305656, 939728698, 755093399, 924471639, 715320267, 915248909, 951874973, 276264465, 474510374, 40986733, 780375649, 344474567, 787421488, 586762571, 166599512, 399383776, 699045940, 209753981, 111005088, 356707909, 263834383, 986323342, 957878910, 337876633, 347509390, 193308946, 861426809, 795217722, 907547447, 979571089, 400295973, 617881732, 24953893, 264547876, 870671522, 8858447, 371297153, 966378348, 706114266, 756936607, 667204468, 339006200, 166484778, 826508250, 752822724, 162755178, 564315730, 44915115, 883484054, 107346671, 500433126, 911369835, 492543946, 569285815, 908736401, 699843936, 452293530, 852551921, 787048372, 963505938, 297005671, 762036761, 488297563, 704939470, 516096000, 194453722, 525319057, 765966257, 894015734, 74775628, 746466541, 234619703, 798937104, 66603603, 962872887, 668380570, 290407346, 202784294, 934299816, 671959872, 15202411, 111462208, 9239940, 17987952, 601087712, 366122212, 473631755, 902930092, 400741109, 631240237, 934035356, 947863098, 832591485, 489149874, 586823437, 747087598, 147884075, 395918981, 973945163, 361859913, 833915887, 851723822, 247896337, 886061752, 22465325, 710400865, 801292806, 756785492, 914029361, 999802333, 352533829, 599381275, 662914182, 715663143, 667258546, 750386927, 586337593, 73154036, 299215147, 126663627, 545544913, 620984108, 561535898, 677825971, 495838900, 347456861, 736960972, 598939781, 917649966, 956241797, 501406750, 414107697, 343168582, 929666244, 307175059, 152874834, 53948195, 201233128, 278226035, 703235330, 687865231, 522509834, 592827373, 752835237, 999186189, 63570588, 359835315, 436081032, 732388109, 271727318, 117955283, 176194167, 403658168, 770424839, 710819974, 95271280, 245773221, 943824542, 875976410, 538533794, 755747954, 224335390, 333321292, 656348161, 97649477, 496856082, 886415395, 222445549, 384056760, 196020144, 685007004, 617055275, 416813107, 841663909, 105106089, 295249054, 161495896, 608744838, 913901601, 582726808, 346810949, 79781530, 207725653, 935748432, 186626468, 502220164, 440022433, 737274642, 827525910, 676154116, 270949547, 918682590, 782190536, 923782417, 445490804, 40357740, 121767289, 172530578, 563536341, 994632908, 52064516, 148293191, 958682498, 41454622, 304829563, 677335325, 707033434, 375823512, 152069988, 932332214, 268484407, 517332309, 745185925, 533663745, 649574203, 35934778, 995781215, 524353719, 783385145, 567550011, 938078721, 530642182, 889541876, 408434425, 548912770, 131257659, 476894526, 257017211, 832234836, 507699299, 946169405, 26110561, 749368226, 192073107, 821117649, 572643653, 283513535, 437787658, 283250658, 120572780, 811955876, 764040754, 233213055, 24027927, 771543555, 868590312, 858709843, 546709196, 835642960, 282420441, 364559755, 313671769, 82623902, 765018743, 428517964, 40578296, 243980480, 291660239, 568895662, 867599110, 831391233, 511876999, 490659653, 640468500, 800599309, 646521003, 871264464, 158846302, 94890309, 14437752, 683900064, 8563636, 492698851, 254853920, 590758325, 653223057, 837673163, 769949350, 720492887, 992839552, 725870772, 144583709, 175587382, 948038761, 164687189, 675495325, 6238111, 612431087, 689600692, 267919465, 547573057, 15952913, 174772791, 511935811, 900210357, 565023705, 146733712, 418396541, 644957732, 363597588, 174524578, 716170802, 468013777, 394914195, 573992188, 832882759, 148858279, 69935435, 725402958, 699387113, 835232584, 991162059, 640336491, 226215811, 165448794, 800682656, 297888041, 927680140, 355590744, 315003568, 644670324, 711562611, 264838182, 960152892, 467878872, 960020026, 872640397, 891814425, 673159435, 881132182, 919993006, 14857568, 278950949, 751777666, 616448804, 525762070, 893169190, 247506515, 233618757, 11356647, 385841726, 51616727, 787392269, 898907506, 554366905, 953065722, 132209116, 792886398, 602936248, 857996946, 995387260, 465026110, 586827445, 124697340, 666997407, 211194780, 105010954, 220123229, 100197104, 43749368, 255282731, 400324977, 865353840, 669883835, 476980038, 34913797, 685368198, 445724586, 807854176, 572731204, 931014654, 204559273, 167972681, 383553307, 101943218, 505960622, 609373447, 559416674, 542019070, 450993692, 880444387, 803244613, 26565191, 732610853, 388397315, 755308679, 638212514, 769571784, 959402660, 545934032, 267749376, 350804739, 863508767, 842524620, 404206790, 904768316, 380523008, 199493457, 711821389, 100121037, 617391197, 556018180, 85518730, 773593217, 823910806, 275351892, 987779208, 360851819, 348683351, 754942214, 814888716, 968836557, 951802546, 517600518, 78761800, 725226764, 892822670, 233460304, 43361208, 534875927, 566944813, 989562322, 353450564, 977408680, 587703381, 182846194, 219121927, 206628957, 998456100, 108356867, 377022239, 573228582, 307728308, 82030322, 986413705, 147360485, 174301940, 124079564, 297939602, 450265318, 370533602, 787768599, 180285430, 933144571, 390028074, 514415204, 368228145, 504519378, 563673421, 944450285, 925990575, 76486501, 118822307, 303637908, 913556888, 525845168, 30888617, 783382399, 868781361, 775203699, 799274189, 605839681, 919906083, 341815818, 990123453, 617464985, 832898138, 278349683, 608842529, 469700353, 216748995, 923711758, 668957839, 67194574, 748165348, 631475884, 415522480, 946617723, 768777945, 268493147, 751591588, 297968662, 962956194, 683498280, 29118736, 773190867, 487327568, 435691870, 242802732, 629217425, 369000949, 518600898, 357734375, 635034125, 923142938, 103219704, 3235251, 926348966, 577201410, 921001568, 952507643, 788863005, 697640527, 589714604, 775214688, 370163329, 156528316, 176574161, 644367469, 194617963, 154510777, 708175482, 388739031, 371991123, 800470580, 338023049, 579381638, 514566440, 240327244, 317953866, 599266354, 935527368, 227863962, 307539126, 281450530, 547958584, 504242375, 557071277, 138742372, 689363597, 264945428, 234621408, 963675360, 507133996, 129334482, 757231512, 551341969, 590817077, 693790725, 837426750, 622105614, 348821423, 46307716, 437396328, 291094491, 869331367, 936797710, 873149642, 251337974, 989497564, 641743821, 732793644, 807308912, 965481659, 696879117, 210039087, 535105198, 323217192, 823007436, 695320376, 482736944, 575351281, 884426108, 146786631, 954783939, 119251832, 921141773, 924590200, 45237408, 35056768, 450393729, 556021668, 824177412, 637437564, 916089176, 493660327, 474039814, 606845524, 412726915, 394334775, 448307972, 190326949, 698038445, 232237294, 316134634, 802769221, 50171610, 793327770, 220430637, 11152445, 955120051, 301648299, 932196491, 507854629, 734005743, 614815039, 18662161, 115464516, 788399955, 401019239, 367028778, 721631410, 760098325, 791168829, 341070260, 812147667, 678752814, 316759798, 935356041, 246884496, 939922116, 290930728, 984919608, 469065248, 855467424, 403450623, 607527363, 747769461, 190763917, 446605164, 517522076, 969394054, 651437389, 763801043, 153522949, 119774736, 593308166, 847716354, 356386367, 634960371, 910345953, 216450128, 439619264, 537635809, 503369290, 135126646, 273751592, 871029505, 143629924, 741744486, 897412317, 461677515, 362065973, 401163270, 701487030, 847035133, 586247831, 361151600, 73805559, 236881697, 618624405, 770931802, 388108850, 233367327, 506806342, 483975069, 851594278, 228922576, 88358747, 535381796, 369870946, 871627754, 396754636, 59559781, 490496461, 139894298, 443962930, 684590800, 917051920, 887926406, 37182257, 991420621, 91536077, 920498320, 93314537, 485884162, 623296160, 822346525, 477596753, 981923420, 430999316, 958660475, 795458342, 101150609, 239021256, 764972119, 310192090, 1098975, 72331423, 991686850, 284476887, 481665772, 792353355, 751166422, 277425896, 81787530, 67936196, 115764557, 645557461, 882176576, 669984223, 830395306, 600873142, 176400081, 949796453, 396623392, 269257889, 785852077, 532159884, 18055434, 630391703, 444621103, 429464738, 712919932, 974403666, 417553670, 610586613, 401031916, 363956615, 345557318, 278119947, 973526208, 921232284, 706159577, 135871605, 258602480, 127342485, 829746775, 980838380, 520312134, 269409173, 235026763, 253049580, 818134334, 440295624, 816299100, 423486408, 858350909, 928160230, 33629398, 624376339, 561275266, 481655138, 943205915, 341855111, 726685503, 402878295, 215999433, 806010225, 312704187, 453695898, 934672170, 374748924, 85891909, 579874012, 256264975, 223910003, 232588007, 871655090, 108198764, 146351596, 176477200, 671820428, 643250336, 572516536, 166937769, 927779469, 779926532, 737426895, 996247030, 803209743, 164307637, 203770863, 60257302, 445175641, 589918212, 949257191, 41617129, 830034415, 665882629, 644635917, 730820306, 268884352, 914706522, 647224799, 3591163, 320668350, 504454278, 214328576, 322272424, 685476518, 23874766, 843657514, 825942211, 818151256, 88408614, 287235388, 272377319, 543524721, 309215099, 112037295, 652772665, 223218125, 767790088, 942472223, 240732990, 798159679, 680450219, 77342522, 463019077, 738841555, 464201516, 771097345, 823950329, 584299607, 554389546, 215391135, 293153251, 530697322, 834707255, 566312898, 264602043, 2968682, 814848675, 973622967, 782315931, 701820386, 632950150, 392343335, 542089163, 73593146, 326111772, 135111191, 119166081, 298389135, 763604207, 894737975, 434682127, 779909075, 922456371, 987514052, 47693768, 997692660, 318502464, 951396808, 870641984, 32891982, 802951440, 173696786, 951657480, 29203494, 720968285, 114251141, 915089952, 798164058, 927123771, 123635270, 120402641, 487907209, 118759477, 576397373, 472579852, 787949878, 537648357, 317228079, 555768440, 971609577, 85420038, 51747232, 854577023, 207395233, 15484866, 886670585, 986796571, 401126587, 250370889, 325089835, 361762381, 201006412, 756862696, 675543157, 138722807, 54033145, 497487214, 562265818, 43627484, 638765345, 66020177, 833443435, 875217919, 154663927, 728445384, 548726946, 913115020, 42705203, 357363313, 235825319, 331260452, 970670062, 220842387, 664227461, 686879743, 742700884, 715994533, 434348509, 673700037, 140946468, 669518613, 391666890, 27848180, 339447535, 692435988, 566614461, 671460157, 232808142, 398146721, 446934810, 171777280, 914599620, 368674653, 931143322, 497871851, 379773528, 181204933, 317500231, 736073583, 137980106, 558075445, 402704983, 568190875, 759951373, 136000588, 798079710, 431301299, 684039466, 142539021, 965290645, 80249258, 313133622, 182456693, 255520344, 748278103, 302569466, 83404613, 119180846, 582605053, 978594365, 352385770, 518558675, 672801969, 761345784, 606192112, 555043096, 292865557, 588621488, 2021760, 813285515, 474699072, 148650926, 732478492, 553193355, 629940395, 635877274, 603442920, 650050065, 171423313, 276845794, 905031397, 780523820, 121003226, 707708825, 192148164, 746711719, 318123199, 508024630, 714089583, 390972899, 980266839, 850247366, 870091686, 209144074, 693674243, 879413269, 684581144, 953994449, 740421372, 660980438, 631857637, 318888819, 89613791, 697715164, 729204804, 747074124, 874857690, 165091698, 387765923, 413490631, 357291770, 997282369, 337780288, 754021013, 779062646, 888697287, 154253067, 943768024, 732988387, 7974886, 389426310, 303102710, 946209586, 206267143, 354674386, 429680910, 909924950, 363515601, 903707345, 346676913, 606960951, 903830828, 403951438, 424425892, 203001512, 975582928, 463269615, 463419169, 235562746, 907705977, 166614596, 232525781, 990535324, 983045839, 947991968, 206353311, 214158188, 715732438, 926741270, 760189203, 692519415, 789033757, 825042324, 727333863, 106749028, 623227318, 235691868, 332376235 }
{1,403010523,656207044,180315135,266932629,438754361,198867019,682622261,777702236,198737072,695967180,137328585,549866470,357263112,556188429,923020690,920455172,95131074,743521909,561050650,729706017,757243346,898277198,835427996,524763205,34672170,866074261,980710073,992046650,60791464,395165861,54662230,164395075,807927594,526001972,301282252,701043901,892560329,84815866,680759049,16955704,381711297,949935214,943368169,127325871,481139674,417432718,924514314,797555371,210654117,254626067,456152087,795557607,588445697,431998973,32863696,863783136,211804838,142823005,356048987,482131697,977420096,930656780,419568557,568289017,701620103,521980362,168644406,156957613,200669500,76464931,667055356,407993170,697465265,263536743,285607160,955017587,770004928,319791140,857628164,839920699,497104617,524930841,319516573,274139066,849660978,193059030,984367743,373538966,955103924,903449548,152492241,536777691,406161188,251529429,342037235,649614178,81984143,274842496,440900395,771393666,893363485,493716846,169808465,642046536,888655222,629275560,770527099,470125777,178182675,534570003,858873432,406972593,364665919,521387995,734589226,536391892,594450691,884944493,689044657,720215460,301507491,206557224,6026301,867823229,883979339,202994297,169687726,678188250,221927354,327854082,597656267,6356991,278504198,136613563,185289605,434470962,467353204,655522928,97853336,224743622,651414310,388843750,55665783,127039974,473150840,561129392,616295917,417433435,772205075,62648519,127924948,869739115,524463445,576490276,78857502,614209241,305258397,622925782,930037502,514883104,8740537,791732339,434434642,522250907,331490834,844882399,194703724,29907676,212612352,432278466,208007473,569018105,392692332,739012820,106469663,389405270,737647568,276370539,370283023,32908992,754855771,728805494,212439135,619537041,385183453,90179148,752971261,504370111,834223981,744274269,143467980,831191047,775740034,986735137,675507672,971161783,605916769,372646320,751250983,620468331,958582316,986793260,220914950,642734731,21623337,700146969,126234905,578260924,638954210,398734723,703764591,513423363,756486010,273346012,308508173,887751470,123130609,332080797,304935199,352315925,585331739,347552270,36274516,775840134,505913448,243215153,195616614,799147809,236791700,703734702,487213122,290928633,784226875,973679569,153177325,707480761,486075388,157944971,736947770,76644813,482989038,867502419,271549250,57246788,47449478,175317428,792157281,359235385,732433441,920948950,941739439,468822638,290406765,361669102,248183080,57844,514624147,92131581,931904433,775238126,185428699,498273805,645111840,183290464,24069734,783613528,768249876,254886319,732870811,369950804,845991198,319504957,685927485,303730138,375865755,305509861,84071735,297699899,9374029,848448450,405306644,627519804,667461731,6802324,58441308,968111634,102832657,837854605,456663231,797207046,360458991,677925878,150145016,329515668,292019108,108845580,769226420,698772423,4350266,606540293,87349344,867153968,142070009,539458960,812002002,224236151,283985810,433953496,66785388,533852292,292420860,616941625,536403123,104778147,214005749,805527168,510651468,65704730,935197155,414732183,388237399,561021803,888711160,629731915,465150108,776040452,179770421,886193034,213975466,646842865,951462229,188016922,761283283,579324816,872896302,879060197,343692175,224694141,984696248,245697051,670800029,58766059,723466434,548342455,92460659,125265945,244278507,879592690,275574955,923879605,978458305,268748488,574410650,270873087,269603319,36313860,487106590,210315160,189311107,119472824,761385666,209344422,994839536,766435425,952138084,863156876,395970470,934670500,589633000,138793970,771916443,593408216,122173362,814973617,480606296,543799196,11065183,99755996,665338045,354086134,108679956,648975041,638447104,655618023,376261210,868784687,67165434,18950251,685471737,249327273,879715491,524021316,966914591,961778397,555662328,362262299,869387063,192331301,442887317,856133773,721194162,326349527,749986064,843987242,33150480,706287378,885393946,208618398,550097562,269107923,225925921,619673628,996401647,392670953,265825846,160208116,683670199,264380187,233954334,243345805,810238010,57839170,984128605,801869376,228274980,147468852,587098239,246020780,782428805,411849957,525898059,412626625,963681802,296649370,538747070,19971998,665746366,776371955,493477661,892892412,942399166,961641213,139519942,765934077,417671223,321618155,156556337,490836937,878693713,307082437,88446944,274282706,407574834,741389959,389370348,907969624,627803951,265524564,993649522,736073693,98908388,857694360,831226556,53019665,355451354,507260364,975181736,345676511,360545006,890527964,771555861,869278143,287962281,406764389,845524460,206674795,931511698,950999810,877208260,307541750,352579650,527356943,468593121,929824929,392900580,964761872,742763675,453727386,195682382,816197313,999276121,542033065,41602829,334782657,916488953,364286556,627541395,398457535,691729295,654763530,386419851,326910626,113398985,70425685,305127125,453636015,328584932,220038765,979431824,628715204,423128145,844160110,826384539,19731150,378891827,839436181,301889977,417364470,384611510,889798072,292631856,810432781,953864180,746094593,703287707,166941275,910005405,483717378,931353036,328471520,245395159,543980322,498651559,849682753,477133132,58766850,17549353,257893303,352842503,778879765,263782141,117754805,415734542,483306482,470474989,330663796,660241710,873732654,792465294,493358478,836433688,429210104,68876564,635643924,901516426,911892154,458031438,237046204,562400777,179023014,995841776,588239046,464946543,975254365,170506962,322599137,22523441,633331455,408421583,720191158,183131787,788201861,846064599,31818382,339567017,253976574,766600891,861663269,587262754,874603504,107901756,809686508,899362936,330053339,142141945,624328337,498765945,26263184,365515680,491526474,129435287,379752804,594092278,729356464,231631930,107053612,903885677,580761777,349766082,270240605,626203568,774915218,681402388,281222804,343645398,188291687,810420057,767411243,853255513,550217280,566643382,695122841,447919903,715506858,755130470,699620377,369667652,879430929,126490995,887639840,12559415,127272450,313334545,841653,162537920,401257487,883444112,565564292,135267611,834682927,437711159,138843197,60055464,423305474,27218238,555370628,949110046,875291543,398173543,676111509,797765799,414429551,846842789,643303026,486674891,556643582,247790564,159719569,36180294,846867714,96537156,602586942,403574083,701930685,436434964,651886659,403444560,47178089,657708855,476297387,129544733,101365961,821100669,240478874,367016699,618976328,276367729,82421468,323225346,405457952,564156349,551148701,345925883,634493051,200881061,909256998,558259620,6706973,747453803,570847733,438825191,985114293,586517247,923918712,181770393,734464988,585893176,34319309,568148069,325030381,95035863,579298998,938882231,619760875,762409798,549988909,166203495,441215122,499137594,890646115,520720157,778632049,29293414,681625232,107283582,679717422,595423377,24173860,728929701,380547814,573496117,500306128,619693970,646094533,509530839,707895552,354743810,396242821,966800157,696092963,706246913,207574839,39432049,17854315,899307795,156268529,203490915,455007227,146314551,268626097,164863533,908126008,731995113,878218353,141114551,113426418,984111131,730868082,438507063,938378258,152340050,562008512,319023583,254882649,709815364,33095952,526012892,606832871,337456274,568428814,191157607,650725858,926433490,35799998,264630534,621905243,449961363,704890592,382431210,386729765,290131183,889887437,991396065,127242445,605999124,710656718,292188615,669224094,208677744,4155574,56805087,79612734,802223314,105461864,555758375,829097032,274282098,46061969,720692815,245416308,959180416,637944693,521371732,779642191,504236833,45598351,603612350,375043820,1212303,569206484,829343602,905842332,650196759,622713299,973092667,921425918,998206352,761064122,863470532,201060117,557489058,768111862,319505781,784094304,549707438,589664285,909461212,334557507,277031741,238501124,261411637,388718129,217357788,857794956,241177915,798984661,86401928,634200264,615765091,531162765,760402660,460889624,607712871,729852889,871743417,675852352,985982993,480226175,224692082,64751331,609694468,226193153,659090028,450142123,971173675,396672738,757232841,969362688,597405588,628052104,272363838,325209221,221260968,561331775,403737261,568701347,851105968,431462039,782242151,587376575,659467686,815640717,250705560,35234775,320276113,442731292,274198727,63436336,588627326,124956925,581715137,590847016,57625677,340467779,567884797,381684537,78354330,328092969,891764974,402497347,563709561,570720335,730205232,526030205,249071177,264435051,813204607,499781259,694288071,728723883,714784072,518750011,842275245,821232255,351107342,806518270,312811009,289538523,214372767,687502093,287161886,145997414,763121065,855624772,13387936,485753998,332904266,896869543,626516811,708348033,374814939,982947713,267631480,192289176,956911125,489621453,529974579,559052252,722211351,731483703,97572091,23867438,558881904,992610844,198962521,896440376,961869271,737139425,829100929,681490241,789229165,303481832,169028929,259853223,263012729,948605871,673407704,900562103,553138302,259208560,882710125,617529847,993243121,4099173,657091905,944208,845981512,526682520,483098357,297446611,822680843,198017904,361271771,827195723,889080703,481002573,155699683,248829251,153101274,329858406,872865921,661625553,866768649,413404606,215244024,821597674,421878357,451575145,332574983,151359901,412355632,638783022,880277236,250479636,378886792,431180696,943316463,766779259,209894098,260971910,622867288,338011027,690500503,546791207,66585464,674781514,119033647,871480039,609382668,609157539,301854942,653829144,602862050,569643944,958100553,415272695,664381092,146066352,922612920,726543713,333927454,828883699,329283534,400257369,261294894,33927508,496739675,222638831,40273761,515145773,507808877,747363612,143905378,610532117,308927354,333299340,37934603,206056818,688173515,165458406,209886612,996166276,863092548,597892981,434341721,617234908,985401971,157980815,221345861,849459029,297918176,494929629,844882128,891995684,296970801,42741550,560924240,169374604,261931324,645971015,77475556,731804959,335182439,552212368,970199619,471773442,792244029,973536149,13961925,824622233,349132781,176699189,486070670,895250207,845912055,135472656,469788921,118133843,223427371,540799041,174325698,907833690,673280413,83439811,824468713,728014297,54851964,518041505,917675002,198593824,694806221,54144156,212455449,983581486,121787461,449849188,830721478,931609177,428312069,508951229,949505840,284288681,729503793,28798175,533673172,193823104,710026410,581587825,273634677,72241844,781256421,602396127,499673618,69176908,169276133,187998722,193453527,638435052,936749124,179147288,325554303,695649290,398829172,372481759,761596194,607718184,847674823,263985225,688669363,87460279,212136394,171244167,829148767,349280285,800073852,765911601,692912198,650857758,366587594,420043473,610360385,51855883,419159572,935866830,66378399,664316743,293100287,518467708,302389619,436480284,323928405,234591146,824072191,537302087,920878882,478412780,415443011,797623696,961729385,410369592,175413811,522811454,476206673,684662811,130259757,783597419,658001137,466121088,156515404,470428497,904552631,546173492,826565851,19741916,528961737,885127697,938779212,186408500,533161598,363150148,229956254,515850112,768716080,186563181,660966512,367896590,43771112,781162286,733770693,289150090,662488878,140994463,430455272,549130126,554860197,536308203,195266521,188805169,156312084,831909325,544203759,262172523,506544179,759032690,509844850,973825922,52980283,798241258,229204297,542873749,851235573,216391431,238665067,465340808,764331852,473198983,965632154,577416114,563398950,501246385,736102766,133805966,288312183,811083037,268479957,313289817,900402930,911189322,309514950,326282449,859674128,569691390,531436817,975068464,330881273,463276432,354000798,512345449,667219973,916133598,696701375,253442430,432532936,365592454,373762100,148264492,434770861,123456183,860212818,894194716,155402561,304798098,696953790,702672708,991970124,440473668,89480571,433913450,335480511,418312816,332061556,718065699,640628358,743896285,932359972,483519308,445575343,854418074,12535792,655190063,193715515,374738427,288422194,388221386,871449399,759159286,983153727,696212578,608357717,327424135,939710578,421066253,794644808,133992618,288352627,421746180,71617218,682038380,117667684,147893284,708907744,797213114,352044766,204145571,562695936,690838477,905544398,140516758,704070363,574326569,726193950,798543620,701175158,672323695,256914115,635551062,662823767,376035436,688616510,655585271,868849923,530325898,975306228,944082465,316292355,371391067,249650459,523948998,707789279,956963872,716001167,348164054,242745705,185723592,645052643,375695690,540976714,869548043,460663673,118053227,873216826,288840296,892551083,731933351,907171579,739787713,135706529,802622575,618104745,162077900,873308189,313143182,649906019,639757339,116607631,644257457,722312719,806234924,643409687,751181722,988026573,287302691,841503719,927470555,598591291,914498390,859096607,396832472,634195332,35574466,33067672,824052274,846882872,178485743,436311780,239449476,402708843,220500384,405331820,658380322,858340124,247857811,870613319,175721011,536471032,375481378,705236791,162619190,786125983,59533590,890621050,979609608,977177898,576910024,687520624,960487478,604638267,194011764,127934750,992488797,369543394,894212795,12524611,775592355,774804984,432868856,984950532,236845589,928063558,972288802,53023363,209828572,980824432,722538152,252678803,307754486,686413404,453955556,184724389,943307240,608432783,391033211,658691362,493191825,503802656,177885504,684045598,436975940,392585706,228811333,83189514,890149036,246626777,376548054,205121834,304659832,54307955,204417863,296436765,917426491,126401474,873767021,114065325,582775594,628363445,243369607,600123794,789120934,330478187,209053150,512797096,261561847,385537035,240055720,770391638,131129007,383692020,997499583,413781152,286980469,141790740,125480101,371360420,610959396,38860281,786391607,914227002,3354590,166576515,340138516,901003599,58150452,505183687,270554203,555259768,781201488,363621831,463830082,197740424,73935930,285737875,505083677,719603131,205793157,527754051,208098938,885114155,840624676,387421173,498852016,535646860,699961903,220243922,885423567,359066653,854938115,724629413,330287131,10235050,601520005,246014751,648317749,446824639,325631548,395372898,857136063,327898146,406401242,748305954,907536322,115080339,79967843,14909275,485102962,111719172,249621560,750541427,898502533,637041570,938174651,308531060,508223952,967409965,28723983,294140044,77665315,697065110,723632452,332182401,756252766,38436067,399028534,308398939,787676336,275767021,892376158,301193759,360994063,365088237,716130198,179916476,271358189,476793423,562273522,820872656,727799805,75262355,205751698,309457994,690090938,328241752,769013453,850517908,202502342,461802526,273050195,345898915,907916720,510192666,483892244,147542467,647184996,699854139,976104676,320335516,469904043,530573559,704160582,427542382,546743037,130296100,613860880,758038022,195186169,101672344,140243945,273431900,98609384,448214816,798394130,722249035,724312039,166131302,650640792,988674724,750658353,279567154,550271466,437935535,674457141,319886724,602272027,237281762,643195494,740041858,894473894,910647596,889706697,607334278,873877564,675967043,105863308,747768197,757960150,841402062,996857697,148835116,892741632,336815295,58432072,134964777,51440096,689724214,892886640,44361307,318891188,463183217,784056913,417619486,482747909,554414033,316200069,244949517,416519744,781542847,716194429,439819996,373083591,657650318,87911441,51989830,489069387,666490451,737533916,624731075,701835114,60278900,468823573,573097500,436173783,311350778,294944897,344647452,870454292,605932805,784879177,178870296,242323675,535313079,551609388,353891772,364473339,893063795,485150297,349690085,550206044,558241171,476607769,922951382,991707535,181157637,491742713,934271034,161200811,451791045,592081414,532542343,993250206,861254845,378581068,970144313,923440884,385629978,558677835,528553951,663033407,935123073,203706470,103722318,713524609,195508034,167549187,759975159,672149280,816213305,184571912,731301893,570380409,389220646,694942540,697216921,60331874,47988859,592305786,721682748,563465041,231325529,158863682,965341875,811935577,590328107,312698314,286617215,792868427,599555111,482898676,563559963,137472123,181519672,245804321,581619009,76681627,765946259,479009833,466920993,255644097,760428725,790242564,406778232,341769814,864991330,196343355,546563364,572533097,472600771,363105453,974991885,947808187,906090663,183354761,961217410,319306089,180439558,428698890,460105032,361242618,669986529,749271544,927931055,640735830,842365920,232633885,1967515,886240926,456272355,381288516,551012893,690785503,981997504,416233973,908311797,895814666,284194148,768414351,411543903,458006808,225172953,887999687,704417690,838047865,705520821,422112438,358309142,933276024,85938101,772904358,192028293,83725596,402402742,227409741,604863276,808852075,843334780,590232051,92562830,586159620,526388689,663351631,984490980,610041627,42934925,97901160,511528623,275517989,289852829,640926680,536814418,365147385,665584248,262485009,370501669,153227159,959392094,617562526,858366514,383492763,821576455,303429547,580286096,381949073,463852100,639120070,479655239,33859620,917093031,560488832,437978618,982395824,569004911,918810747,926791487,603972214,869795339,367545783,844852091,930627161,156935142,371609667,914010525,372856749,558066676,360450744,381200869,38975410,980850886,624634673,135091890,596892761,174833537,121515284,607729497,957719350,316544593,440682661,565713189,93275946,210896207,319846657,987190710,882257116,984880624,716993592,381645654,509394101,676327272,352613987,450086694,864868515,697105437,272551266,939409691,819016752,952063260,200139730,625122912,320332311,896752644,832121897,847264275,184841311,817079494,332694952,459043012,860178485,81620053,197659086,127016447,286025609,994633469,534395180,162288497,577405192,712687177,184252846,529625926,403570652,24432496,205316419,593096028,624035511,964319876,585831274,572545703,812648945,191122576,155145609,27959755,120073953,643079500,131358329,690752702,43718254,972876765,21580046,128636339,450871377,705349667,338394323,739373329,71711373,421759534,840129804,802774632,736918248,497669879,443935560,290594764,208638267,530467252,768728597,211196114,69583923,602276928,277103697,53668716,588166750,844855631,591762509,28456545,509723561,534635399,873802203,651380792,763387965,988560948,251308716,491612568,691721499,491650231,301732810,272700527,917601083,158635263,329349799,898158466,863178362,938838802,664686924,467283208,789048113,767447270,84099878,389036312,660806641,168787279,105063914,116785589,872298510,197724072,806909074,52282291,741915585,459126991,235305282,489665930,505505453,434074371,342598785,109597576,944809964,369713293,588465826,688336357,234463474,179761641,764392170,878601663,827881929,407455805,340753010,614576334,468506913,909476496,471951814,333005712,356590243,729487644,920766388,835863122,89896996,581778198,554549114,316985909,248693304,94337889,775776771,617683454,373489565,436483000,944971859,120479750,155659327,573826536,725832753,916946624,887520766,864208752,193937603,144870413,78174845,966878422,423427995,469271196,427166195,293798231,767503020,61441781,714368021,110753286,662879304,58412924,341505972,157728510,111937257,517213588,690858757,983500054,345089821,8893038,768550220,343156847,233864505,734861903,418685837,713182718,388466080,363128506,394520188,399597939,101367556,962774704,635313107,903630375,598278308,255265378,110220832,853069854,45045021,754166928}
{74,236,1,1,1,1902,1,1,1,1,312,23,390,1,1,1,1,534,329,1,1,1,1124,1124,1098,390,1552,1,1059,502,1,370,1,1,1,1,1,640,1715,1,890,1,1,1,1,712,1,245,1614,1,1078,1628,1,1,1003,1,1,803,1,1,135,62,1,1,1,1,1,1,1,1,1,1,1,1003,1,1832,1,1,1347,1,1,891,85,1,1,1,1472,1472,81,1,1003,1295,1247,255,1,664,1,1,1,1,1,1112,783,1,527,1,1,852,382,1322,1,231,1654,1,1,1,1993,1,1247,1078,1,1,1,1,1,305,1059,1349,1,1,1,1,628,1,1347,1,852,1,1349,1571,74,956,1646,1,1,1706,1,1,1,1,1112,1033,1365,852,1,1,895,1,1681,1,1323,745,1146,1819,1,264,1,1,1373,1,1999,1764,1,1365,1318,503,1,1,1,1,1,1,1487,1,1,1,1,960,1,1,1,1992,1,1,1,245,848,1810,1298,855,689,1,1,1,768,1,1481,641,1,396,1,1,1,1294,319,1,1,1,1,1182,1156,1672,1,1,1,1,1,1419,968,718,1472,1,339,1681,1,452,1112,970,85,1,1,329,1,1,1998,1318,1,1361,1,1372,1110,360,1059,1,1163,1681,1,1,1,1,1,1,1059,452,974,1,1788,1,1,1,1295,640,1,1357,1,1,1,1,1,1003,753,1,1,1,1,871,1,1946,1637,114,712,1359,1,1,1,970,396,883,1442,1,1,1,1,521,1,1,1,1,1768,1041,1,1,1,1,1,89,1819,1637,1056,1921,1832,1098,1,1,1,1247,1373,1698,796,717,1658,1768,1974,1,1033,102,1,319,1,1,360,1,1,1,1472,1,1,1,1,848,1,1173,402,1349,1,1173,1,1,1424,1,712,1425,1182,752,1,1,1,664,736,1,1,1810,1,1964,114,970,1,1,1664,1,1124,679,1928,1,52,1045,1,753,496,1,338,1347,1672,587,1,1,1333,1425,1,360,1,1406,135,619,1,1,1,1,1,970,1078,1,62,1424,1,1437,1176,1,1,1664,1,960,1,452,1,1,675,1,576,705,1,1,1,396,1486,1,1865,1,1,628,1508,396,1311,62,1019,970,1,1,1,1245,1,1220,78,1132,1,1,1419,1,446,1614,1,1571,1128,370,1173,1,1,1,1333,1,577,1365,1,1999,1373,1,1361,1,1,298,1,664,1,1178,1544,1,1078,1,1768,1,975,1,803,1,1178,534,1,1,1,1078,1,1,1974,1,1182,1173,1,1,619,1,1,1664,319,1,1658,1764,1,803,1,396,534,1,1,902,1030,1365,1,1295,503,577,1,1,1,1,628,1688,1078,1,1,1,1156,1993,382,1541,1372,1,1,871,1132,1,970,1486,1,1,1,1,1764,1,1628,1,1481,670,1,1,527,1,1,1033,339,577,1311,351,292,628,1,1,1764,1544,1,1033,1128,1078,312,1,1030,1,890,418,658,19,1,502,1361,1059,304,1,1628,658,753,1128,1706,1110,902,1,1,473,1132,1,231,705,1,1112,496,312,1628,1,1322,1552,89,1,896,473,975,1,1424,1,1,396,1,1425,1999,1487,1,1,1,1,1322,1,178,1424,1019,1,1,1472,1424,848,1,1166,1,1,1,1128,970,1,1078,1325,85,1,1,255,1979,970,1992,1999,1,689,1247,1245,1,1,1078,1,768,1,135,1764,1,1,1,1,1,1688,1,1,1764,1,534,1,168,1418,1533,1245,1552,1,1,1,968,1,855,1992,1365,1,1,1,1,1,402,1787,1974,1,1,670,1,1,1425,1347,1,1,1696,178,1,1,507,1870,1236,1,496,1,1654,1019,1,1173,1308,1,1418,1,1,1,1,1,1,77,1,1,745,1298,1788,510,1333,1,1045,1,1176,1916,527,1,1608,1059,1019,839,1,1,1,1788,1,1,1,1,1,1,23,1,1,1952,1637,1,1715,1,1,1,1658,871,782,1993,1,1,351,402,1,77,1928,1,1,1,1333,1,1,1024,1,390,1613,1,1,753,1921,1146,1,1,1425,753,1,1,1,1,822,1,1,1168,1110,1,1654,1347,1442,473,496,1,1,1247,1373,1112,1,1,1,1437,1,1,1308,637,1067,1,705,1,1,1,1,1,689,1,1,1,507,1,1487,1425,1613,1166,1,1156,1706,1806,1,822,1979,1,1426,717,1,1,1019,1,1,379,1,1715,1,658,1442,1,1056,1173,1,1,1,78,1,1,1654,1764,1,1226,675,298,1,1643,1311,1,1928,803,1,1357,1,679,1,339,1,1,745,1,1,1613,1318,1,1,1,1,1419,1,1,379,1110,1637,1,1,1,1,1,1811,1,1,1,1811,1,1993,1933,19,182,1,1,871,1604,1,671,1,587,1,1,1,1,1,796,1715,1361,902,1158,1173,1,418,1,1,1,1544,1,114,970,1921,1,689,1,848,1,1,582,1,1974,1,1921,1902,360,1613,439,1078,1,1472,1,577,182,418,1,1952,671,1,689,718,1,439,1999,712,1,1,1,1,896,1,1110,1,1,1,360,507,1,975,534,1628,370,1,1,1,1,1806,1024,1672,1,852,745,1,1,62,1,822,1,1,712,1,1365,1,1,1,1,1,1,52,1,360,1,1245,1,1,1,1902,1979,576,1,1220,1,178,329,1764,718,1,1979,1,1,1,628,1,1810,1,1,1,1404,889,1,292,1643,1787,768,1,1,74,1,1,1608,1643,1,1,1,1,1098,1,1,1,1349,1,1,1472,1,1,1,782,1,1,577,1999,1,1,679,1,1,1373,1,1,1,889,611,1,1,1,1226,360,871,1,1768,85,446,1424,1,1,1,507,360,671,1870,1,1425,1,1,1,1,482,577,1,1643,1,390,1,1,975,1902,768,1,1,1,1,1,1294,1404,1,896,1,1654,1033,1,1,1,1,1,52,370,1,446,1,1,1,670,1,1,1,1,1298,1118,975,329,896,1788,1,1,1,1,1486,1,1,19,1365,1,1,1,1698,900,1,1349,1643,1,339,436,1,1294,1,582,1,1921,1974,402,1998,1,871,1245,889,304,1,1220,1,439,1,1,1404,1,1,1,1,1,1333,1,1,1,712,1,1928,1933,1,1,1178,1,320,883,1,1,1646,1,782,320,1,1,182,1,576,1533,1654,1,1487,577,77,855,9,1,360,539,507,1,1571,736,1023,822,1,664,1424,1,782,1,1,1696,1003,1045,1078,1,1552,1,641,1,1,1,1,52,1533,1163,1,1308,1,339,1,1,1,1544,1,1173,1,436,1,1,396,1,1361,452,1361,81,1,78,1,1486,1768,855,182,1,1,1,418,85,974,1,1,1,1,1,1,1078,712,1,1124,1706,1,1,1979,1,1,1,1999,52,77,1,1,1664,1,1,1,1003,1,304,1,641,1,402,482,1949,1,1,1,539,418,1,1,62,52,1,1,1,9,510,1,1,712,1056,1949,970,1,1,1,1,689,1236,1928,1,1,1614,1,1245,1365,1698,351,1,1,1,1,339,1,1992,1,1059,68,1,1,970,1,1,783,1,822,1,1,1,1613,1045,1173,1226,1,320,883,1,1,1,1,1,1552,1,1426,1,1865,611,1,1,1,74,1,1132,1,1,803,1760,1,1030,893,1,1,1,1,1,1019,1168,1,842,975,1715,396,1,1,1,1,1,1706,1059,1,1,1,1,1437,1486,1,1,1,1760,1,1019,675,1,1509,1,1,1325,418,1,1,848,1236,718,1226,1,521,637,1,1,1,1760,1059,1,19,292,1,1,1,1928,1949,1,1,1442,1,1173,1003,1,1614,1,1533,1359,1870,338,1,1,52,752,1979,1,848,1,1,1760,1245,1,1349,1487,135,1487,1322,1552,1,1,1,1,1023,89,452,1768,1,1608,1,736,1425,1811,1,1,1672,1078,436,1146,114,114,1,712,1,1,1,1078,1,507,1,507,753,1760,1,848,1,1,783,1,1,1424,1571,1,1811,482,360,1,1508,81,1059,1,379,1,900,658,1,1,1,304,1552,1760,1156,717,1933,264,1614,1,264,1,1,1,452,970,1173,1,264,1865,312,1481,1,889,1,1,975,1158,1,1,1,1481,675,1,178,114,1,1,705,19,1,1308,1,312,1,1,1,1308,1,1,85,1,1041,1,1,1372,1,74,1,1,679,521,1,1,1,956,577,717,1220,1,1928,1,1067,360,1,1,736,1,1688,582,1,1,1,1,1,222,1,1056,1078,1,1406,1,712,1,956,1,502,1236,1,1,1,1,1571,1,1,639,639,1173,1,981,1,679,81,1,1,1,1,1318,1,1425,1,619,896,1,1156,1974,1,1992,1,968,1,1,1,1,1,1,1993,1,587,1,1,1,1,1,1,1,1442,1,1,1,1,1,1819,1,968,1298,1,1,1571,639,1,264,1870,1124,1019,1,1,1,1,637,1,1,1,968,1654,890,848,1,1,1,292,370,1,292,712,1,1406,1,1,803,1,1,1359,304,1,1,319,245,1,956,1,1,255,852,1,360,1,803,1,1,19,1,1,1226,1,1,1,1628,1760,1,1,582,1168,1220,1,1637,1059,1059,1,1,883,89,62,689,664,1,871,1,637,360,1,1,1,126,1760,1182,1,1,1245,255,182,1,1176,1,360,1,397,1,1,1788,1768,503,1,1706,418,576,1,446,452,1,1,1132,1,1,1928,1,1,1819,418,1,1,1,1571,1541,1,1247,1,1,1,452,1,577,1,995,1,231,397,1,1706,1964,304,1,1132,1,848,1,1,753,338,319,1,1,1999,1,1,1406,1,1544,736,1664,1,1,1,1,473,1979,1998,102,1604,1,1472,338,1226,1,1,502,1,1,473,1,1544,1124,1,1128,1425,1,745,1,85,1,452,1,822,1,1,848,1,1,1,1,1,1,1768,382,1,639,1419,304,255,1,1,1247,178,1568,1,1,1,390,782,1,1,896,1870,1,1,339,1,1166,1,1,338,1613,1,1,1,1,1508,1,1,1124,1,782}
{850986,440811,77561,374962,857714,417092,954827,839783,80602,421366,977353,492198,565799,601699,609177,371161,134830,273806,927376,933932,675861,747805,344757,613967,1431,789975,771780,959345,881085,234149,972007,499526,32996,742421,204670,414146,377085,474002,295064,410076,180104,702189,183351,444363,564376,719831,12496,393163,776145,679779,198344,597977,544556,596936,250871,904178,357106,200349,846440,688792,499388,412571,383959,959180,295609,778782,696945,413140,448040,772452,341143,51766,696345,49419,319066,31867,631727,384215,963200,556077,852000,225193,718781,170136,828275,648584,867195,776908,448640,628060,278610,371096,554931,561517,538703,881936,234441,896616,674097,681416,720145,171802,305895,462231,89452,452722,151315,228309,457165,669890,917129,436252,108730,901887,831952,291529,474696,701820,889503,399804,960098,684146,786593,859219,719425,954747,608177,878963,1525,235410,186462,821695,270874,29652,249255,912030,448611,750529,532416,821304,710867,62523,182475,995833,80638,739204,660447,7117,760716,884100,119236,629665,772214,116609,2676,748712,752007,797413,887708,979283,858779,49083,322904,717911,302370,177970,554937,276331,135902,489560,565762,520070,536672,652255,872358,380965,791502,528410,714956,705474,293856,710016,342923,577437,558046,719848,106861,502519,911139,920779,118639,863442,282269,153285,869503,263282,94665,351892,761661,420894,686587,720663,609594,966622,693780,361999,630203,590910,647113,254496,406646,765962,15395,912849,631571,364240,151417,500551,815147,348576,950006,831502,681868,451726,871961,923471,741044,155502,960624,587546,716241,557079,841947,698270,798854,716001,758671,948523,389544,436326,845904,46071,463165,789380,41717,663381,896507,944536,400743,812606,173327,179140,401057,729932,276755,814249,550641,131194,283413,366637,940981,261861,179350,369654,609631,385357,209032,956589,975921,841748,808527,982908,13313,832637,182849,19663,762101,757742,963301,636694,861064,846574,417911,288321,182403,268519,307426,566402,797252,102244,28676,131086,984762,781267,236781,629980,554661,862020,185247,683107,783706,18473,255183,767840,837885,101715,76194,250957,552710,28986,385776,687979,291580,408309,962693,398776,755004,860989,238106,488057,136690,811119,739295,739057,451549,428742,614324,483879,183375,154020,280619,740516,308331,67145,532808,501618,512869,814298,894592,572893,99845,276763,261757,63285,154915,248373,485143,173770,921836,698928,884764,177198,49563,813689,388680,233654,1024,179869,896269,904761,845436,350476,229068,189775,278722,770710,574362,26322,630488,322033,529980,986784,306707,453424,788906,719254,405534,66124,720207,534742,210547,188319,446854,443650,236511,83492,463582,978878,288002,389816,582103,239665,990412,657883,723619,642628,648321,913199,942373,726560,299957,122615,269044,925428,456593,851865,855000,200237,632715,64604,255820,947900,963505,871466,991738,188179,786142,653519,202817,549479,724611,867575,497778,338799,778911,325043,98318,885538,316807,186164,330569,778621,332638,486094,951050,611131,279709,517110,851944,621530,688908,245508,68526,901852,945926,89010,326359,570754,697529,776090,157842,622547,884451,788410,659646,457875,80982,438899,430127,407244,10164,220742,707495,852296,650930,952085,963869,284627,439961,692328,426105,556221,58176,156836,126229,968726,243155,545557,190781,598768,273615,790117,173295,576480,457538,960866,911195,482301,345423,42235,831844,313567,227880,170499,592669,36448,117138,763308,659981,403038,310884,455885,164971,178486,710023,27805,116577,121738,28854,811636,388044,69820,901887,990096,689402,640752,945345,95501,45162,218509,340012,253100,426639,629500,864835,99789,556493,282663,331356,39220,127034,61563,204254,490951,23902,23078,758721,160205,307890,440025,236817,114800,686820,901766,705963,751547,464337,236706,841214,748317,214793,359972,278987,58916,899151,374084,933029,726658,591062,687100,104049,467723,312964,867850,953255,398964,303666,321387,509902,354197,568425,233441,169091,99752,274854,366382,617138,207239,651158,901846,648987,847665,732378,938592,821454,243141,531972,735125,474351,618436,450008,61503,995762,318739,54731,785387,301151,694710,269959,920999,443470,623254,420068,940164,295148,393979,887088,128532,669684,598099,745640,888812,772535,444905,804092,65251,940692,437549,276558,304145,376959,676466,277491,538640,662334,295978,494320,618878,324390,541484,938173,76153,452962,263663,832133,91425,667244,11595,451876,705304,395986,142206,954087,733381,694449,917733,37647,221132,664381,241662,884365,509271,709751,73516,657159,368784,5620,292338,300241,664867,46749,291766,918389,945601,602985,343999,533227,369175,10467,307960,59040,828763,896362,709290,333939,242431,221867,979013,951667,674683,202089,533207,170530,690119,764214,963986,499316,266973,842294,48906,858064,938939,22498,513268,425613,157599,110402,581864,95926,378056,265458,92640,282502,65147,394269,915190,968812,287420,956037,687337,257864,998416,394616,911128,566699,592641,516251,679492,348059,500377,796387,135826,750092,535461,339543,918599,964711,147699,843599,542473,892358,444884,67447,227748,922869,17562,662412,505474,818227,952410,665501,164977,14126,260395,714123,682465,995722,898405,540681,279011,42970,428323,193564,353130,687717,211072,879003,2317,951650,367453,110895,740867,502459,99737,449044,129893,620941,137943,738006,257134,634470,134779,530196,317566,779334,348268,324480,563538,264414,395859,665821,355469,251731,364186,728191,486131,249275,871790,92878,228776,754718,429437,287170,131380,444086,199032,610151,561281,760367,187922,639771,136731,619559,984126,838219,424686,442862,869876,372281,957708,98311,153324,662520,909476,840933,373600,132141,931723,554222,963726,456400,992758,57595,574132,958568,435325,741333,566674,846226,389850,921081,858027,374075,329447,534868,179395,455392,503267,153928,637345,854421,849325,825317,111950,156922,930439,732272,427220,518279,711956,742814,218368,536577,32793,609689,40416,323650,404991,461882,440709,609076,122191,523788,839554,295638,786228,648975,658666,198453,123644,441970,473045,101876,405079,250392,418779,28612,430358,498836,358999,307435,325804,392108,785125,251777,68208,363736,274275,498158,893145,576195,823603,111533,889152,410761,832759,953612,412897,556407,670803,144553,129241,789710,370095,421814,28009,433856,245170,97909,864881,414065,277127,960891,53621,802870,718427,100337,568731,451609,557468,141646,342506,171282,736123,195486,269645,912015,844202,677757,359117,416364,665311,713564,678106,77115,40143,774139,766082,373310,927091,782188,876216,887975,878597,969302,67086,124702,368451,711023,100666,612794,990763,634880,113428,568070,244029,227429,534422,102526,387708,682698,596506,480591,183916,719406,122655,445337,299349,286243,140740,105520,525374,41355,488715,741590,20210,425116,959127,352067,610046,780765,772910,362973,831728,415590,747895,342399,453785,577507,695355,61174,556236,363217,269544,590270,975900,743231,891145,384393,423393,24206,231887,64760,191475,710577,77259,352287,774957,786029,46640,772997,458923,948698,972117,262433,285195,315935,71729,635165,895536,420409,974685,967895,481017,173044,597269,543835,598798,377520,76534,920681,791635,896541,313665,926516,469554,318399,304662,186401,326614,123818,740345,674244,140522,959366,936081,728358,550173,254539,102307,431489,678880,825414,628826,71745,694309,211026,64130,688516,857314,406495,92488,962843,402188,618159,164923,740358,436764,579539,348238,719099,669837,727729,105683,48160,349915,729537,328832,626828,803076,315787,474349,645385,101322,946282,708500,529876,264943,809035,449040,611739,113144,759342,36766,165693,872362,290531,446814,548173,779855,954830,95377,257871,861042,29732,876380,72377,127902,834987,6788,343283,117282,601917,671216,624407,193039,271365,75306,666481,935608,343615,307101,572607,916656,948796,990936,599665,662863,787355,304136,742506,644589,983953,177345,989756,943973,949729,855286,9456,379091,253732,819324,18235,639126,119554,29003,41546,419982,38967,936380,488182,516574,598414,740491,287952,673002,798889,740054,323862,754650,945718,968411,910267,421461,489082,292221,677475,844294,177098,153408,461091,424410,176397,247560,6725,249280,955387,840478,559937,35879,843744,602794,266565,281154,383065,171065,687406,466567,76309,297848,862732,229419,693588,68342,965601,951399,231211,45926,383074,200502,159614,881626,74996,875476,7620,848648,274095,447872,290055,101001,982942,592570,212128,733332,795389,617605,55678,820359,473977,985253,58080,851870,939187,204642,80918,556473,251773,504259,855619,82394,938586,451283,610461,33444,991874,379871,820139,603677,662683,855798,381061,805228,275136,935719,499608,965531,649534,133701,432607,256725,71890,119462,839338,30504,242155,541407,632602,245124,415853,209993,740962,117370,476908,342847,369799,500286,261421,204637,196129,234597,447656,325314,318487,500263,388808,38734,658918,286813,282152,83172,536411,617155,994391,562793,642835,138999,450581,135746,88706,409463,252435,360730,235624,777703,997111,856217,620893,761480,645589,305133,390406,777602,959990,117764,266077,807834,477716,256656,460908,956412,992731,212097,312850,347185,17066,218254,933948,684649,710095,851948,531948,196083,869198,485652,281334,442367,800666,940033,911741,477859,194650,683055,495354,543762,335077,854109,475125,719270,596230,869195,37257,651030,282424,992572,571620,779008,254761,57141,988356,805600,915195,523003,869754,418838,690686,460313,874986,405348,249527,179671,211145,636141,341340,549955,764189,565047,910229,401772,234688,859497,73148,76449,712349,579533,47581,112821,510577,547791,142134,299774,683466,54203,411384,240209,219915,160194,463811,421447,950438,778613,460525,788219,188511,269896,735100,106953,517711,747728,682407,83344,176351,621957,952664,832817,902280,952192,225964,34445,816537,460669,768752,918089,807920,633050,51878,964621,650815,439702,970750,970944,549448,560338,288924,17422,429985,796691,561688,384674,856561,576573,480249,272555,482608,43609,240825,584538,237610,288143,699395,224354,513084,105836,568759,656311,242005,887453,157925,140239,825270,459058,292621,381539,478002,247003,764645,890478,41838,709806,635602,248428,629921,10078,196333,959260,868053,747077,957503,329086,73380,142810,230852,421142,319547,528763,365100,759014,878169,283300,833685,79991,933520,528758,296914,640720,284483,578033,883046,871165,157478,428281,977865,529033,20417,442836,184673,989123,627693,139241,157386,127229,451796,222594,108942,223303,658868,99466,415469,733624,92317,157712,635670,255333,627950,185794,61227,816487,592411,53234,782977,887513,184553,828564,617565,286168,770992,858941,751159,886785,843608,480741,789178,387893,903132,756005,277761,966615,405577,348793,682012,853004,438847,987775,662152,522169,730606,698614,233338,875785,336794,804799,697620,677348,602840,934495,976878,164664,929870,52539,227470,451828,109686,924505,974767,154759,52122,931941,788606,603237,21017,675625,553687,659778,831072,817619,480780,86868,909746,541106,647710,792084,387744,340217,5185,102845,985873,543611,447132,850635,884667,6700,883206,676605,610919,327078,28490,132948,742448,561697,220707,935377,75844,441336,406848,210746,10785,301675,443457,990356,63769,90327,878327,654698,495950,770559,339815,754244,24310,757062,901191,333105,365527,339442,94463,214845,8203,930858,27177,233786,352253,677304,776658,621755,192490,837064,585782,773972,503201,455334,388486,881371,837699,424068,211493,1834,174466,778865,416806,489882,838437,864098,109456,971144,221058,6188,514138,524947,775811,597127,636654,794267,209505,935372,994025,185795,309483,301752,254169,429488,312000,341926,180925,693320,232592,244056,391432,606323,418718,524847,950750,814429,677952,97454,510421,13681,646941,938554,113141,498655,409773,615644,390904,478102,165693,55356,648010,796618,783976,98535,535689,475503,583390,630603,189253,192059,314784,349941,334913,164967,846465,904153,124464,644398,558054,710601,368504,539277,220038,521340,510770,476993,409067,712201,227687,171595,654895,932521,655828,19054,463295,540023,172710,770927,75675,25139,83902,361876,665235,369722,167726,858789,94219,260303,863418,944558,151991,89430,737368,586938,417887,973138,692335,588057,291228,149102,25883,110170,140120,818033,721191,852817,111058,273800,925073,883410,663255,47295,539401,760499,797897,491911,648433,137038,731740,287666,981086,751612,201683,538610,908629,870426,878279,81501,244878,472071,348064,892779,497396,614179,881497,657397,13219,224338,122432,216824,421544,140983,933555,756496,742020,646904,350883,970493,946665,633728,531092,99680,711546,585144,184795,586046,666063,265356,111518,292667,783918,393707,854039,103264,335507,891847,640785,77782,101800,284113,208424,197224,882189,652734,949197,275012,931857,561796,730304,566202,357750,242524,475795,324603,145712,631361,950829,641882,927078,618160,599940,737614,316527,774374,112865,912814,463062,549604,642336,435571,280214,607662,918380,499705,162590,520519,717575,733117,135950,713589,625023,244256,339192,193347,804410,366498,989407,993978,130027,430311,255098,105830,186585,129013,573425,431895,891358,722611,857247,620508,601190,545516,824078,267401,582444,412681,250749,85106,80383,536090,903133,300717,843266,971917,934415,418132,859623,889973,741415,136128,994931,906756,242860,270350,14653,914640,48469,985437,240559,272273,539596,398158,425859,535521,572143,357186,994118,933754,85833,977823,441367,632955,844381,672139,85544,158051,551067,336559,291900,241236,226088,291316,192871,78672,348378,54857,592593,948863,588921,771610,155058,645671,757055,625178,406487,252210,443416,191546,159963,25963,247842,559471,463086,427200,560430,358767,39441,94401,191997,61747,199448,191007,964163,712567,316646,501037,921958,161653,959027,518690,176767,507565,652297,565909,132055,134368,790274,922943,661675,637455,240332,163196,550889,197440,20132,852745,538416,524857,894366,267783,426323,862403,557339,581046,28950,857895}
Returns: {273261013, 543219407, 110242523, 445029784, 8769760, 824234137, 210947694, 329765561, 34230076, 487739241, 487788446, 807927202, 227595008, 989776432, 253288356, 751355844, 938693934, 149741008, 743868656, 211623331, 74646299, 943775486, 722999022, 271908216, 393992971, 269215825, 705242857, 621789716, 8748518, 837470249, 540496031, 651687616, 677753045, 29466979, 619091112, 288662736, 652564631, 185118186, 633252241, 620889549, 82162058, 422569133, 82872713, 410766499, 395361825, 184754586, 532160425, 168435445, 499375709, 51151838, 885759941, 478562233, 414719649, 568066037, 326367037, 821284250, 460721174, 831039013, 482747920, 601637928, 842588362, 274612853, 447558700, 516886509, 165584080, 774346827, 764383566, 605995891, 859548246, 962718790, 105238954, 366588766, 595753215, 90660808, 156026993, 130637648, 913498376, 622545093, 15695405, 45065609, 847427131, 619317845, 56541570, 866517767, 866897287, 961475268, 622502017, 279928118, 183444029, 852231107, 211229212, 358843292, 805588886, 918300175, 759266531, 772629102, 694752671, 584424099, 338313110, 299901108, 532894219, 197574897, 535881686, 671948321, 287308483, 427130569, 765238084, 503391941, 174820235, 219942932, 312758056, 205765632, 506784229, 867741018, 728550811, 746953293, 376376511, 506020231, 155350108, 779292027, 764922398, 77214209, 753227310, 958067318, 69012728, 538946800, 567895081, 372876901, 731063006, 534751389, 13797062, 700551476, 514250548, 611967638, 946990104, 653059030, 718116794, 533850550, 836506106, 904884214, 696428427, 544507494, 171541883, 408034385, 712074664, 958536580, 51213072, 982741641, 158973188, 870930510, 420958890, 363120581, 343155666, 438996723, 217623074, 336319046, 407558753, 12017481, 140116370, 618224747, 944147443, 55047538, 926587366, 26976591, 356664380, 931107649, 81677664, 396561835, 59550371, 687445254, 753601166, 823311819, 790015736, 644155779, 90876234, 88277762, 698073477, 246360815, 382919984, 603739025, 195456888, 676111537, 838791772, 388530282, 586174879, 483287026, 294298217, 549000951, 917659377, 955658579, 771523407, 28010394, 54189205, 822464510, 27675730, 537996624, 497600796, 11099768, 521442435, 784029837, 833031513, 818542072, 841027116, 861783067, 856058870, 945414198, 414920686, 928791721, 461428431, 276679353, 965153381, 412206749, 662450236, 44307341, 798988357, 230930575, 779303768, 601630851, 166044050, 115923219, 508472513, 290610939, 34879493, 166650459, 394012241, 936451027, 133518572, 161039934, 515757083, 845420421, 577446804, 217678558, 952195551, 112670981, 914321376, 506141183, 114819129, 257050803, 807818492, 608230269, 156114870, 4819449, 157095313, 577777406, 364296621, 462173913, 998085719, 387095088, 621022300, 773116300, 165841211, 726076317, 709534152, 742593921, 591330205, 743843658, 714018250, 818737073, 680607657, 639476414, 253054372, 932211847, 704857507, 893691281, 172723624, 235364242, 435210779, 937255113, 150855421, 321956702, 354071448, 599480905, 204352693, 378526424, 890458957, 643576193, 762970462, 32536631, 811862614, 313539583, 462936849, 480141654, 278448336, 561435172, 277143272, 704752929, 879451946, 936827813, 496206884, 621159580, 662560449, 1518550, 272893383, 390683206, 277695053, 679012148, 162222500, 385390632, 804965685, 742444718, 627177629, 356202527, 539595510, 694877526, 905253332, 540995338, 648743927, 951606364, 191391317, 397105581, 392475845, 791639150, 19739197, 499174102, 831338709, 34753702, 333744882, 510875271, 778463349, 450844480, 702319666, 237788320, 575375548, 184779636, 329290915, 250309243, 651448654, 241237414, 484356791, 484555679, 522146650, 644441499, 249393488, 541286925, 231500712, 147892607, 840685049, 928987102, 201993056, 120100988, 352231064, 941528520, 338687596, 644764485, 267838164, 612085512, 740402983, 252955134, 137735104, 876515425, 500020666, 69935545, 917193511, 815653591, 218048335, 149818125, 617415125, 34127758, 365537756, 4954485, 157317939, 174995153, 837462368, 113441927, 272612293, 947922098, 306508611, 14599335, 530802284, 353661347, 385246042, 883062217, 409708251, 151292336, 635137746, 735425788, 283290966, 130661738, 731593076, 562850668, 565430196, 319031864, 402203436, 954792587, 416437232, 777044388, 414644606, 671621421, 777102161, 156128028, 73327318, 755723431, 973209805, 257494128, 703083009, 164590389, 405030705, 239746302, 721911642, 803685174, 135097684, 130009866, 835333537, 286800542, 80934167, 902890687, 236362216, 55373805, 544071923, 37303070, 150589928, 920975803, 339978616, 646201453, 675629058, 519504552, 145677482, 679553099, 619805732, 570397736, 841805492, 386098467, 460859638, 224862591, 392389227, 909636176, 886010414, 360874049, 728790, 698586546, 218760898, 316952550, 126908908, 363592633, 743852509, 713782001, 711341245, 108803936, 117795422, 831243715, 445019923, 468747383, 989214858, 937668071, 803964340, 748473421, 258496248, 287130528, 439680109, 733913596, 759304574, 607407778, 370277345, 417284053, 883190997, 460222439, 613701789, 548914224, 45242988, 635034298, 203044280, 635528317, 61098980, 509142135, 185759092, 972531793, 63863584, 598131972, 311829995, 114080739, 367919621, 361761331, 151842125, 754010092, 423194955, 62705829, 240518580, 48302779, 505322588, 698854357, 810979193, 439165524, 698890722, 831798627, 25130761, 548520928, 90198740, 814341554, 137104380, 115148577, 194218818, 343768952, 627018898, 18680075, 673222057, 709213661, 714717702, 667927306, 663396463, 412190281, 533756337, 861814707, 851649898, 676352450, 398472013, 679651112, 972270921, 597629904, 598616010, 24915559, 131141979, 134787903, 833013290, 267551849, 875811427, 77505564, 667340930, 163784225, 918430623, 668831054, 569527711, 62178892, 607241505, 781524742, 993193766, 524517629, 501934950, 522562802, 611690855, 584282946, 422405743, 974698652, 779120952, 442440538, 821647534, 265607084, 17060591, 662928766, 328184230, 13359061, 395874858, 820545538, 511377325, 731862991, 902892825, 117256158, 617702814, 965483649, 995271699, 71748643, 703629723, 460976345, 308495144, 386322414, 760419101, 267900822, 868799936, 910370529, 280728212, 231056162, 398731880, 503460036, 576270707, 326701889, 532129887, 550599731, 72736835, 884791608, 107944307, 42910475, 801085159, 390915042, 223244779, 676914206, 312921441, 622168864, 206832795, 33182600, 987471637, 170924118, 579863101, 818700217, 710575152, 247628821, 408995362, 386027646, 579412436, 418267908, 690714619, 222176084, 886682082, 553225200, 702827236, 919487055, 543570738, 890058308, 347068276, 913461444, 491339530, 815829721, 944387503, 70578366, 359064685, 806604950, 170803340, 395988418, 568762437, 961698126, 401865020, 161797275, 549170288, 577581830, 453384004, 820040194, 922027016, 795322451, 399385938, 685948422, 235422854, 996960118, 122173650, 298971196, 9836103, 623884750, 975103599, 311598793, 248774998, 855222133, 20604840, 609528643, 753228755, 429760093, 411709767, 339842706, 17886137, 97373129, 374887113, 822451992, 265645316, 780485246, 898617000, 247456226, 28699476, 84914283, 780428979, 330003312, 912826350, 859115454, 745171862, 131163803, 603323454, 824336464, 678139306, 809186272, 708955236, 870484881, 980003325, 505242052, 533497624, 233467286, 727816986, 20127131, 982897790, 753221327, 121088500, 417861999, 159512050, 289997790, 319317839, 485090645, 664591500, 529693170, 193831682, 769892545, 562794914, 822349798, 323346466, 324483983, 78474572, 269463524, 322498492, 905760355, 317218793, 924510276, 498738798, 40703136, 695244093, 601587454, 502498544, 710924931, 900238466, 740080104, 549721756, 138253714, 111962761, 507153620, 421890006, 896950601, 421014697, 314468795, 930436426, 759745901, 294197342, 940803728, 851922800, 73206778, 360972964, 612206444, 877008674, 544028229, 809024337, 672162644, 564699766, 332822342, 309032127, 28772925, 799561574, 505436274, 9250533, 376519635, 712277314, 695139120, 106219201, 312098565, 162424980, 189915417, 137942807, 194527352, 35241180, 238826138, 398411380, 858504492, 870360037, 726890394, 569206017, 649138946, 992206412, 509667972, 309379062, 991930254, 657883197, 743156865, 98010095, 990663293, 260989749, 474707534, 872992504, 983367549, 16510236, 456589864, 758371456, 546381068, 420828101, 867533255, 304271369, 634497519, 203844359, 570374064, 986235513, 394066492, 827256729, 846163, 203116746, 385645698, 908186517, 735716516, 333261475, 312380930, 661204246, 125313505, 39836459, 253085115, 581055580, 443582362, 529534023, 872412528, 536090857, 714373261, 189766997, 392252571, 11184543, 942187590, 28822931, 170492362, 576888964, 139417651, 182216897, 877787219, 121596541, 725109292, 73521386, 175724088, 527198482, 924125129, 34494866, 42429258, 811698461, 598609155, 504422935, 581784300, 510071012, 260368828, 309565167, 62829469, 746463653, 613458065, 532469142, 545215050, 375180501, 781307795, 916910057, 720374494, 991460449, 716577175, 485518125, 334728855, 157866521, 399335026, 651326324, 138818531, 709694721, 750988453, 433679978, 90406204, 194210289, 725717450, 184161158, 331891879, 238349744, 383161921, 444883003, 254807924, 114648071, 166535917, 121903589, 595810657, 182746578, 918018996, 620543297, 744891031, 931189244, 779118530, 107922328, 306531791, 911588447, 656102401, 371753416, 20339758, 989970543, 354808809, 800789509, 352250283, 857994157, 333973303, 290842401, 971781746, 945443647, 54102896, 474372259, 141915947, 563496084, 737865373, 501610009, 241844918, 909998669, 800656898, 533341714, 23359678, 613925984, 679401097, 751494948, 637559088, 374979418, 275582617, 376910150, 533487742, 558754607, 754774964, 390269877, 437349690, 5801092, 912341736, 490564064, 153714219, 537371693, 631126999, 484140321, 43646637, 229554688, 17399905, 843979714, 317123639, 910369618, 213146224, 720581458, 251215155, 766473840, 794541412, 523904713, 170013475, 332210619, 686217438, 991077073, 339844676, 300383365, 925972773, 328870680, 417992763, 737410031, 390549446, 602727427, 320837496, 513222954, 156876787, 475251529, 986997093, 721661129, 223809565, 480966356, 797329514, 954375887, 177802476, 138029543, 581241531, 324177774, 778849918, 650603214, 971717706, 315253520, 435935867, 198740531, 586704382, 409614540, 741290262, 748645600, 858994495, 964822334, 52365656, 799443144, 214445123, 462053794, 670746032, 267798004, 916648935, 615105638, 508767375, 36103980, 876512440, 567926411, 968316271, 330862848, 285220061, 293799705, 68966515, 311253805, 111907087, 74184846, 36421398, 899142817, 790505701, 398188778, 392427645, 208521710, 727523239, 90914501, 728957726, 875112519, 923888626, 30928702, 32795136, 695853896, 309387398, 541067965, 944723993, 95910692, 775272769, 983475311, 618722644, 337909989, 623813299, 249469117, 489965344, 364610012, 557267008, 630567947, 526365765, 458443443, 695038764, 269969121, 268613193, 649244433, 264075108, 607752874, 900477328, 561606209, 753191028, 214415693, 406807557, 758107517, 569540202, 906392286, 331779666, 689365678, 728892932, 717287232, 918175455, 464276159, 112029797, 120666056, 599022729, 219657531, 994098926, 173651919, 798427700, 235932581, 456229709, 641839959, 207373765, 838920379, 74495627, 651773778, 660333561, 392187988, 325226778, 571827770, 909137291, 209194513, 680627075, 576194887, 203235810, 506714302, 352212729, 491680679, 643594150, 830373182, 530723542, 993022137, 344010641, 707474874, 639198527, 917931274, 777719926, 443853610, 734500797, 453526075, 208790515, 895300291, 75798661, 592537927, 721208287, 779064741, 708534414, 819130608, 47209548, 684508535, 127670408, 356207746, 327260674, 794683476, 574287699, 597781280, 196652801, 816413609, 37648410, 231064294, 33511539, 687959324, 506753338, 331564479, 714692229, 799406740, 438968444, 654759509, 996527414, 285177930, 304397972, 339240168, 975983403, 891144931, 250770349, 855976333, 593647613, 333794880, 322996510, 528473956, 684571284, 622558420, 160478579, 527690496, 611882004, 967367002, 754204838, 649259226, 377929824, 229651730, 556814860, 923981584, 414504084, 735994718, 62964868, 322132825, 417396235, 753909057, 552121708, 447557013, 176616067, 480127484, 476419550, 971214574, 193151581, 517194807, 134739845, 553784188, 455847599, 514140431, 838110607, 527938087, 525705728, 797216592, 826538161, 645739953, 118234967, 540718359, 492142992, 928960656, 605530291, 805901698, 354811934, 231339663, 355588723, 805909832, 823980786, 643503899, 923250639, 827625876, 147047442, 412711420, 209716437, 372234262, 737158904, 597864031, 937344559, 473452573, 195894853, 934048528, 399912481, 630101263, 890062526, 959833867, 427843833, 828440378, 948068664, 311819114, 701207127, 232379108, 3104284, 938943564, 96876817, 579308966, 318341003, 411561625, 217021281, 459482216, 899754573, 43820402, 607098261, 813051682, 940777416, 961358363, 795706461, 488943432, 312421737, 139551245, 400842730, 692614766, 4361425, 154400589, 278127123, 273657809, 16627155, 181447084, 465971487, 854957917, 525733976, 918946614, 458770428, 4553547, 788943301, 176821797, 892167495, 626950281, 536436359, 159121409, 223408742, 717730157, 842945256, 625132716, 948606181, 997376175, 84963086, 553757460, 942946845, 842734625, 239376903, 130968145, 757507114, 92349355, 83394625, 893322398, 529461881, 22281348, 383451912, 938542414, 101561110, 466367681, 496556908, 875443516, 268317034, 790301330, 1080181, 637045508, 13853594, 675653022, 431813490, 561786389, 415021826, 644690304, 971748987, 859926347, 678981987, 242441454, 925986188, 275703844, 769057058, 993400045, 771419601, 645381990, 217381603, 401528048, 892436678, 958172988, 832174103, 584508054, 605819772, 538054196, 957067809, 509641521, 904052101, 756370790, 610991576, 937828611, 185358255, 105847359, 649052569, 651968288, 444197218, 956771647, 252800618, 242400420, 192919052, 391526113, 356656108, 220484958, 674292897, 16328559, 656899453, 758635316, 135565999, 944944072, 303000928, 762850234, 827464927, 494867608, 321475652, 382345374, 136911751, 230791557, 223687120, 392144989, 507461092, 665800533, 36336936, 381047027, 685192333, 861976013, 166799104, 946891779, 999806569, 744780570, 767489199, 620934381, 650769723, 38996446, 177965565, 212053805, 433226254, 659868591, 512012968, 851271923, 37501282, 652328327, 594940857, 267345522, 678343137, 353817133, 933428301, 964225584, 674439655, 346157592, 425771555, 711475498, 5275241, 796856223, 36476696, 972435190, 672127799, 741143956, 409885598, 154722107, 778493641, 817605108, 793376496, 206703515, 535902680, 970335005, 578344091, 33154555, 181891238, 125353919, 564114429, 490999102, 452982882, 584750938, 927952269, 999618748, 216769720, 812023183, 949264573, 908477656, 352976518, 97281861, 568598458, 843285878, 706440527, 753595308, 382235713, 674869082, 199459440, 872546123, 498198163, 542315164, 953612296, 901450852, 624670694, 414578012, 575633100, 381608518, 41141470, 568557399, 73424264, 81099367, 674413327, 233791018, 412890597, 553372775, 894108128, 440145034, 403405478, 762085128, 66851723, 448869491, 527174813, 967625405, 686081475, 826441699, 448153595, 449222465, 168818471, 161405847, 871045274, 495876902, 343903459, 110209843, 452660040, 850564360, 752096829, 162539768, 859685620, 158958, 788222060, 46152878, 521557970, 973895805, 477974354, 902407732, 479843490, 238551367, 496150875, 479736754, 283100317, 695445615, 544844220, 831542872, 334607184, 952719577, 472728198, 798995128, 633236436, 184138780, 701023984, 515600314, 423286808, 769120720, 445697210, 164103982, 922139129, 639834771, 944139874, 25165282, 35208608, 33664647, 549993408, 103148832, 424966381, 571432872, 189877675, 901386567, 812976936, 188659616, 944632906, 730405317, 834225679, 213030955, 65176809, 793087753, 902624080, 403195442, 180138528, 522569306, 187255881, 25152646, 45355092, 516425844, 669797163, 337515596, 249415160, 665407247, 415963551, 990501876, 382069899, 126024389, 935687402, 870404623, 179052241, 491018796, 247491657, 261106926, 406461773, 663886065, 866432086, 419118404, 700894661, 861205541, 831893268, 845703512, 77212240, 451918228, 239424577, 904261555, 516400563, 342047246, 984676956, 733050556, 189230398, 803617819, 155192884, 240065274, 452387367, 272831546, 633805868, 503598148, 19588130, 346871226, 880521931, 517208792, 834985551, 199903768, 841195050, 501801056, 761410778, 247851860, 857810267, 760879643, 395983471, 98365312, 93204393, 252070563, 604034855, 60135191, 626993925, 566044267, 327230121, 372222746, 419906330, 400643588, 476334568, 942316548, 939102360, 439704231, 896256396, 199031047, 213826724, 255616538, 443158423, 474649151, 658880123, 476049925, 730928275, 558923511, 4680210, 395490865, 906181957, 21010305, 397378377, 620929910, 915216454, 515980100, 649893966, 338371046, 616566019, 206195102, 874819317, 630599516, 455903900, 932705163, 935151124, 590303565, 618980757, 996876668, 573415381, 521619869, 219780559, 577529441, 742208685, 334800437, 738133676, 129931538, 813103016, 727678597, 611681577, 869932043, 984548361, 360896315, 410587300, 164532075, 603017071, 633961799, 443357248, 929861936, 963196180, 693369342, 340775385, 963574579, 148664514, 33217551, 146926007, 8635794, 523692467, 585069986, 235029643, 526364843, 77907967, 469296342, 259625092, 33593906, 621988848, 957169139, 156989482, 599401972, 988308146, 674154020, 283152921, 136431553, 929071306, 883205740, 390041646, 755581926, 381113800, 152218403, 17403613, 124491004, 732317666, 341441245, 598645782, 503385331, 308319949, 53223462, 593354494, 555266610, 478718385, 895426618, 175422895, 172488197, 711319764, 196002161, 558455433, 87931943, 753022542, 376922144, 317224994, 887278834, 690490027, 757290960, 559160880, 988779703, 569147875, 219793554, 817658997, 721131010, 563360760, 284358109, 690179476, 560702126, 370293271, 114627224, 698428648, 177570144, 600829097, 3235391, 131156822, 619813670, 893508539, 921499991, 592740889, 433507195, 68373567, 404958136, 321693257, 553715114, 901145089, 115702406, 960869580, 892921362, 61380530, 917612147, 647249573, 444316968, 109964534, 3564960, 422651589, 145441797, 4878885, 743997540, 2040134, 901112340, 174789880, 893026812, 505909166, 800966769, 422964586, 275741562, 129304318, 70357232, 26482562, 809236420, 52422208, 983353439, 954820395, 484551775, 333177152, 167380535, 75228957, 285518980, 303993157, 75652302, 600428861, 877366542, 269097991, 493505416, 668214057, 674879283, 281716827, 707707605, 431116743, 668726783, 690781305, 577834721, 259618426, 780838135, 370766349, 999673846, 190736458, 54297024, 112204064, 814488183, 809187106, 659451987, 580487372, 497175329, 804251145, 692327410, 941651306, 594321214, 811077649, 944248469, 307911252, 668301233, 136991892, 105555973, 565372553, 303109499, 838189801, 452965784, 289104673, 655936924, 423296557, 172129096, 559011164, 10340615, 40022259, 780421163, 278924509, 508498558, 183197421, 1595874, 165172860, 648459155, 840343411, 825797905, 347534992, 323307607, 250664098, 27199699, 695930374, 413655585, 170582672, 535499961, 44318412, 934926657, 49316940, 309103211, 42878276, 944902206, 182924081, 98361182, 340294057, 727384007, 723186043, 908624414, 673816115, 707350096, 727126044, 914667357, 337861394, 409328108, 343405396, 322714632, 69623754, 933897037, 350274663, 946258925, 66381693, 566036186, 526549993, 42788350, 929902948, 111306972, 413534336, 66148952, 466876561, 840599123, 502114409, 592023867, 334881909, 107831421, 445543667, 952662833, 224211240, 20858460, 270619597, 446225540, 439055408, 459554537, 802895260, 620964610, 938360785, 670728946, 282610576, 66350658, 68211456, 236192016, 752193853, 630087397, 656395909, 417294961, 304900379, 716817799, 206873423, 988334469, 488511363, 222309008, 428128932, 784956241, 929867039, 598330218, 537596147, 392321222, 729463469, 236236140, 30083665, 88607027, 985947269, 959276623, 675242390, 320507439, 849270090, 622029572, 905908585, 375452061, 848602077, 687224329, 826022997, 303599813, 282815581, 742149829, 144169705, 191142294, 437821247, 634114141, 854963364, 501834228, 235035303, 982005980, 31148720, 649953329, 967722975, 550251276, 457557727, 359605245, 229628934, 261244184, 133029727, 694233324, 538728318, 246226194, 410257100, 88279299, 666523306, 470453558, 239275105, 18665782, 523085820, 654678062, 639087101, 790604107, 643917642, 409823468, 71682991, 773215460, 839966872, 973639931, 891242574, 645772988, 602079209, 328450657, 281446769, 596185785, 753570132, 290800652, 49131600, 995420135, 348743240, 547999461, 702734384, 986105774, 995567949, 368524732, 893990461, 470362827, 40789025, 165282732, 784793421, 499719748, 156297524, 603813911, 801367888, 768453754, 823492205, 456902141, 511722614, 224491551, 752231524, 889013906, 517682824, 918969954, 22779665, 567990956, 413699591, 660456695, 265389724, 570420823, 269420158, 508875205, 408410242, 955568256, 170506897, 57342195, 539095608, 821188832, 922657025, 754118459, 543104249, 996794205, 468491319, 599413920, 836233161, 837808708, 456895764, 567175359, 945646411, 541165165, 466373182, 829620357, 432500598, 209907112, 1024473, 45272290, 821473458, 252346523, 860204964, 962285443, 557952866, 700143711, 248781237, 487030724, 238962898, 453197899, 81305197, 692020920, 456705880, 854732527, 612731966, 240952272, 171712545, 378769741, 160815613, 115702816, 780676891, 328393001, 187907935, 33962792, 652927572, 615421959, 286876579, 534525885, 999190848, 323764578, 7328892, 363184849, 784380243, 581556638, 781342735, 795409275, 740677592, 835722202, 12724393, 347547190, 686931428, 801288160, 24734441, 337389452, 755830492, 49755655, 483733836, 957285641, 650028133, 695785904, 713539207, 655480736, 25475171, 337639613, 621878946, 485319929, 782442254, 880235880, 898710367, 482746250, 98378684, 180577980, 961437077, 200626223, 170171107, 429328911, 289521066, 363415943, 552201542, 143890810, 944068840, 440270478, 481140638 }
{1,422862479,534553438,402420729,813627277,853220461,234830188,551555069,626607229,158626257,116012945,148777149,833119933,935530677,247831504,282206411,668400575,848142963,362798245,684069043,574106898,625978477,193678749,100910676,121303207,112178682,978145215,836185142,801604450,559685687,15040879,86532712,33295564,90444484,762991035,744434279,307511859,946260695,336154073,974472767,313091887,224056660,241239547,36343997,870773953,754727205,744477780,571720863,41911294,685226598,400110324,381662368,401648349,182807221,279874289,376063809,876642626,679723980,22348574,186446406,392091581,826770412,988079255,304638654,599837133,486549976,490936931,485705306,721163813,763285695,215789437,223836909,722410604,434832206,756072661,167737122,837393141,639041329,532421903,822228149,522176504,736685017,642898992,576312349,214047763,187531398,11895099,580473220,8696296,347536468,525351253,569211510,479938719,573652989,307321688,190114108,549518523,690878185,284434947,281735789,585621270,985778663,90737607,407096535,920760376,78140044,848209880,750227344,526923459,771120848,448072479,856211119,974549815,944233941,759599286,163059592,947807044,595741536,807869948,582896459,118153714,98246302,10602277,437500829,398127206,42797360,584631555,241482399,866791677,89975342,592682123,91647868,923319501,404161493,27974092,727371882,655857791,284783167,69508904,184354983,922277023,311189885,704704389,812766471,639972826,690225799,813910738,84599822,824204463,952402834,774516597,134225540,136281262,129963327,31331380,404452392,242724795,466156290,872408221,435415161,805231166,998194945,394756180,552040310,628296649,839097436,849278126,162802363,113607844,394253133,697805161,452095618,660832104,900400148,980656488,203470629,948661453,206149766,507361860,153425617,42896095,603062237,804069453,563297831,417604432,695209108,770118721,194353451,289874935,893579156,760014676,279637751,164268116,608376726,681439984,454612453,962057496,588174315,191656597,637633671,329618722,265110023,332516861,607728117,763572521,64750426,680007036,766325258,688856342,41528860,158434892,877570806,152740874,9301132,445012747,405264098,893009372,293957853,207475840,650665092,220219204,866713022,175778324,186583584,270505907,123926412,454958864,369182077,755271651,944507902,747718999,348488614,150595254,564056239,627737372,376936703,28405831,896267201,535875052,22266303,587470411,103271040,839552478,945595146,377895222,970351987,773953504,718139864,97756040,77169063,607025204,248341915,742732009,804764827,789747050,270899960,81649878,30888773,667482743,712059363,892617458,50790186,829497411,215666104,258053076,484415269,9037381,927859157,804636588,162077286,446876868,4021009,145571021,731409182,291455106,96572525,770460730,769454098,245855849,23603205,494170044,27824336,477528229,226758756,184838093,848315980,493220987,636760145,556767046,149711988,841654530,642768152,736588887,897190029,396184057,498643173,123031685,179663055,651232076,498237448,956507327,524201736,546727016,629606712,682824329,926485121,521015975,899059372,550487176,700913672,592179562,929148572,486164339,28571961,59584942,688960187,874775602,951164880,990126970,567008047,360141282,383695922,874939547,958710194,604143742,285001863,136520284,122490084,938764551,690085749,18300062,885110210,644456897,257584416,40804316,82484739,209712628,889757050,15035946,654695374,628323164,104832502,573153910,110406870,391013084,7003708,320882511,738852232,405389870,55318197,603975750,19980085,696472290,688015921,545675763,785288474,70617330,411448504,514119921,788055225,892489195,539058514,250954250,326945621,715705011,201558125,519686559,214194159,380515168,840770356,560244805,605937156,407390027,735274143,42870148,249147433,187555286,985424110,681901055,250267846,510131769,701128408,123754189,178899212,571263325,722661828,221728369,468739392,432728359,300749608,833157161,855845015,912369686,427071844,751124846,315937222,785934787,720382638,869774389,838176245,826782662,289344317,667941831,2735958,500370584,882168675,673037619,325608259,997275040,653987539,957694211,15566015,873719261,888611847,344446926,116356981,919914014,642899307,506026718,499646172,774416070,395377799,571206758,495846182,353090776,348599778,885579547,566324315,407309092,779244750,707468769,560947715,324789199,136641726,678079891,35376890,355144609,589716447,703134055,786754672,132786721,718382468,651128135,413659740,515011572,747631141,229335709,601318364,960134428,699400493,702249609,392309385,754605936,547386457,336652120,605198975,625357965,534239986,496231138,366445848,174645942,93103669,474204906,78257703,156252610,369873890,539562436,743146981,852219004,203454568,882776320,580385754,784721080,169187703,147200800,838620395,367730496,716708324,63915394,831906034,161608086,98868385,212696737,207838185,749273636,945251366,897946012,74462861,150912070,39380724,584060126,100964402,806505824,87452007,517826350,493407772,967298423,637282196,51227816,361005137,166794477,926370696,669440790,276077909,360948776,332193645,984488500,4237169,686322304,330396646,672190342,136098485,621312001,212497188,933447367,717640936,364639016,924556411,99825565,715682366,432189276,136365196,164433070,54864215,559432190,805220488,500632607,237266408,49732369,693928429,263915747,419702611,528235855,780004010,483432446,627788852,728063972,355033921,100437352,588232494,128841678,789613591,507853061,838142,570154782,786841021,212902458,227224604,649646943,181728751,757289471,971263301,611731872,65855120,835558227,800792413,470299883,332872151,712846023,533088712,153656711,222880512,67491317,983530100,565387563,713461125,633536550,495881634,84954230,615188941,269072158,724961354,864510844,732932613,312388451,447296152,68646652,795295964,814800174,668960618,647167463,102071297,671850286,794040786,82402410,765183815,994439688,29365084,734495773,45197601,142220062,475926166,421806342,197384645,808443809,535817944,40770481,196732594,9119026,380449181,906636043,610031662,515890766,549365936,292157365,224505927,3057633,608651590,949019978,24848607,192551253,479981695,8016980,772750724,387302206,924602935,888336562,490254865,811241632,839664959,611923826,181188713,898002814,159922518,231426459,260861396,694944898,654387471,847864682,570572109,792666870,839920056,635128249,115622046,977158500,826955959,689690298,551714127,57915419,109010444,37432877,154432125,266942620,417780535,528565735,962356074,199850276,204855931,290781060,905792787,569895321,978973169,774294716,839745090,525922685,918855291,254501513,554155078,742101838,365835148,551307365,442649858,318999066,865621280,854410805,546837392,324196465,604318337,917101073,102889349,274398217,960538726,302525313,11017193,996933289,445422097,885453220,576935950,970103287,292014316,535307044,959088590,574719854,999115711,165652552,107238429,617035329,441428366,566975262,360405422,217923845,199776148,658689698,412773822,531517706,334441620,739178219,250251401,974898544,947002737,95072311,781641669,695022688,220554098,17957625,519603265,194587336,229690108,42386781,399571596,802127233,247620553,378540183,850073349,861047069,218190696,122112836,97075767,19669263,813727647,204366162,601976059,375127049,897168043,807484480,445292480,686346090,362436279,905057234,875295080,958795846,172627636,801818379,446395033,767912934,629901146,85835297,560666152,8684245,210205932,192975965,261018845,618223392,119528967,234516015,664281870,670999686,961449190,619332905,372503322,653059422,462970993,366444604,871845063,217302910,94705702,561049763,190469698,976711964,374328989,849846405,665891507,911949844,217565879,463480437,537435809,783612259,675103592,848533256,982970194,140035091,492034551,315380841,259147257,865931689,492603432,433991553,318009931,139193484,573161564,689494393,844279175,949030364,794201532,869384223,268408798,713575870,873986555,641013362,912531981,179523652,818943140,598829800,961327625,73152738,725516516,841206786,468918590,295296734,473596825,74800124,987832480,58910293,644259011,776746132,63879900,39697299,338635417,246422600,803581648,405720066,8496727,886518680,729493394,995442703,56932275,642421568,167977997,255887227,654834517,592764283,449421203,193030259,939676221,465979752,800607838,452939626,697950023,295319048,184925519,80262481,374908692,734245884,331659338,55066888,53050106,188052852,956976666,222239244,959501142,479797242,673594579,203155148,962453167,614915565,538668554,634320379,798537472,967246926,186777099,534112073,745604613,423554940,108329233,644092904,104835297,898045716,788497357,778348632,188850782,689438930,389410033,691768697,11405980,222831283,846841644,449656104,846071813,329360630,995995945,937546268,435873497,399639042,676019833,141461420,155243257,440315390,526091473,936884511,582761939,722616194,866989074,647041174,94184019,640737255,753846152,676911052,479049175,692233448,282761732,512167843,90601499,965645340,468930290,245020666,426344148,489877368,75114071,476161517,54881974,325666748,747431173,239204075,253743826,596905249,774955030,265027304,784426462,655287102,317935023,484933801,909083136,92487126,809358018,817606045,331814952,945827588,10518449,421825160,868683038,478959065,356329054,265588217,804256740,811754498,426081904,782732593,947120371,670808552,676893940,778431861,26444700,815445805,831615678,424777065,793736050,627917135,228159247,796423123,28349702,346912921,540660515,674374491,586295322,556586791,849427594,39239011,623311799,947210673,995335732,145252243,304189499,428064977,777432523,442461011,914500933,653914597,154748466,685787690,77399467,818876441,330934808,402352219,54878388,918623997,219136310,476135457,761696876,778183678,10501925,820929993,600036576,711862280,945720930,800501905,640862019,785507500,795294448,794446135,183536344,272939170,181942029,426409692,990500398,476454059,625884767,608491405,36683449,743227801,521742421,836228072,698163829,962013667,729580080,767843727,309888924,210899631,15408883,665346870,714963381,19674192,631678732,825118704,157345221,199260028,219519879,587181144,959510513,895844839,595381999,494547795,151589702,636886843,357187225,135560035,943695473,800552594,950338227,390091513,741417336,244156154,428109590,73978796,31343261,721334281,471654299,134351412,748354232,107758565,534891139,868743700,17286794,393278829,187477024,196161468,286894565,817285300,645923474,917005223,151711319,276320416,466805241,831782174,631547598,695925888,810129839,454078056,967587690,313809440,244073810,581989448,597338146,770949860,485623094,752659188,970987366,464610377,173745717,716005587,222818601,84372000,534453286,171108523,591276517,363063405,634056617,401250755,626825592,645824219,122458461,432565516,586129620,315479539,13194672,950406861,975882986,553295254,591291419,493039306,155932825,739818386,341403019,929565563,381738499,443943839,271769050,945823019,719345774,390004913,487342653,843417237,234916909,123043996,29525239,74964284,906308730,732045949,478604898,352171335,705443806,338474911,998167204,256899351,394767406,890944836,461526243,791080544,3530009,480829582,583834454,107315495,997480060,528845740,568252607,862103477,883131726,272437018,65947349,903701320,240765472,180216317,900998075,467860244,534329864,139826789,554496198,454643258,24840636,232726342,108135000,44633574,367640249,983244763,914163877,382439095,279373924,496233154,642575380,578676256,49910639,294380725,572774956,843675862,98072950,78673153,522663920,736612787,159039138,558604599,871083891,957795110,270906693,975082285,522083911,195774370,101507043,556451783,559554387,933862917,468263176,158674496,107917176,463918441,497551790,188877021,923756869,598445159,553457629,927992898,277359477,822387552,50542945,994469913,654072341,687007777,508715177,927955915,683102434,293272787,521270492,508565331,111701855,987385686,582744803,303633196,12844845,296937416,953253652,426267106,653838724,124032609,784216034,766492130,270978176,874589373,764590690,479256741,769475299,166859570,585034246,18623414,500140084,513825345,901662264,573968833,924990449,673832066,836772911,964515246,676653465,339259527,118222720,878733869,769553618,636465079,167929872,639511883,616723278,787288455,69546966,782271607,870323044,73844882,844966064,685889194,91435277,753474645,374056173,719642583,608524786,948013259,528841953,43078637,787906881,454229813,181245820,481797500,276274996,97334971,442950398,615470922,548167480,942042851,61066005,503534864,277954858,910688011,498241668,885704297,845481000,877944729,649819566,611580724,999309327,7228154,159343466,578827646,681627318,146710888,833211020,413806626,102982103,499499141,208969043,12983576,128467535,269084873,8213654,577522974,824893988,633412161,265096750,478266469,693993551,797257371,232057896,897447774,756465023,198709462,467261397,381184917,82386612,870513814,236905025,696368325,157196370,824360238,390675178,273977454,816437722,409382077,522819120,373102305,746120899,647369228,398034132,55000450,813143650,903489319,380141240,590607076,790521291,903543491,10086455,684923792,178213227,553308615,327166651,5653749,391473231,732155023,186242749,740783395,187127601,665107364,783956405,429453168,937226793,542985362,305288459,529945097,27009313,343098769,638884287,605882302,993679569,637209109,123853358,532498173,944061135,684715758,814675016,8668028,531572181,519751409,943083014,230140272,329663295,16699709,327827534,782895380,121187470,504049054,212896441,309192063,395387179,145441139,542564785,34653827,206863460,585564173,899346587,526295262,815723251,9706589,103681948,429649992,613720678,138676936,718662160,267238590,844701690,18818750,332536598,907066686,649494284,858006224,13751960,111162586,852378560,81262166,730897035,352208871,365746591,637589304,612774506,566236542,464306754,22694862,258232173,304931649,337971037,145936344,763290524,72434582,998466474,911974462,302199228,311259912,679345678,106887100,601737634,89876607,687551635,948431617,551534049,71638349,35918615,500466567,186396230,890039921,920383780,39504923,98654186,275719694,218833440,678744070,211651041,186919025,220077152,676599538,598815160,905665845,834688984,74177944,98458583,356558768,265760490,604471029,463527897,562329261,90560411,304624080,50326209,539626854,461749479,38059420,314525052,661156592,312688478,9978498,832112500,67728012,531857874,170614120,223786258,986948455,204498242,897460132,25989891,213265392,236999203,727966456,850790792,422424943,403613151,312038303,431270813,404249995,835034039,922626282,860812286,394021635,400824744,520573633,626137553,909706809,723235439,113854781,451249753,335242618,254426226,753375064,668700022,413276821,218822160,774514228,394148864,46871649,168261335,477423869,956231813,781906275,756378599,142703003,835398145,424485587,994373065,717405583,511979144,391350498,7830538,893809018,508864736,392862016,808281638,384396845,627243607,351942103,702362656,122588085,949840008,640509998,372252339,90504937,200295385,9806787,907725972,654651708,327815363,574786297,862233144,130458977,534642813,349474676,300138156,412143896,954043634,497010160,734382343,628957171,227070835,223720880,758508005,155362377,210444511,357852235,503114915,727077627,239631974,667445435,503769750,257455335,222606462,567259070,463567152,689026974,405426501,379533533,688652769,439345635,570511929,225622463,866385705,363821709,638292586,447125821,82185936,791324142,406888282,403090809,575604923,547153813,838435844,506506163,977039001,257847270,492882439,1706348,481592001,992137836,866200131,744598026,388424787,525135073,318676785,151096461,166640062,920724801,861201495,140372763,745018558,733772840,505163371,457580814,712033813,170494206,685761271,659380178,73945568,227822251,398702863,440527500,98628410,945563176,653418592,780037518,866439381,284737977,415713390,868251171,726223378,294275489,695137784,331539663,825379981,782203829,388059438,142345205,3915698,582390294,631336117,595787702,119285447,776689625,918554444,447134315,495301618,502945427,229456873,631187973,52833248,2947047,945754925,341281757,806894305,553863116,657713906,466452327,550141488,417256074,331915335,388071476,760136537,75981915,183819723,587324012,943359743,403268841,822858077,561388054,701882478,143006992,998586396,668016624,398754781,843663589,502976340,101491932,632166670,16359824,842901887,777709273,416244444,20222877,480542359,395748054,295855387,725404399,428911221,155484133,989186957,850093451,400986483,900806350,101948848,648633361,271006806,381632201,564158848,878434727,856569858,394699471,919336933,713235579,11440470,493403289,173876244,682291898,283698203,478808866,47668643,785224010,60019817,878255427,730153496,352517511,757601208,175378616,351665973,555757420,940143630,915570636,831102750,276757485,24089222,234360946,589291577,378108718,847675278,436259365,900397707,916968645,182200361,289875655,819146832,569100652,821146057,309540199,530638348,97916260,11391219,21717992,566988455,724459724,781192764,236502863,965236709,741674432,513463036,845347022,277138879,951623951,727460353,875301888,922811780,13482462,696520229,770166570,709542764,995253624,897912297,38897399,98913294,285366214,680520083,541485124,840079592,553018953,15402356,583929667,73706586,805425605,823229461,882047755,711593114,977936201,256904002,470989131,689702476,764743283,618873394,598034913,431148762,493884858,336665712,625237594,998771285,150875556,888949123,409912247,774657286,462767387,742690408,312524233,797129115,395393615,921155650,62854440,5846495,725967048,674299425,713230413,348217092,274025696,491462844,842849303,571153679,405184512,357675980,108203138,567503372,343621907,449675960,139413980,353469010,429282174,652362330,23514233,162059633,844077054,768300426,923533269,809858630,440343459,73146384,504794534,611249905,746879379,703275769,491445973,17226145,183547246,486922359,285924643,138705071,303454274,594744706,763945973,638173092,410729368,748441130,711137248,212030258,824544267,868376701,368259684,672538749,262960679,178866101,875000710,773378168,579115099,447424643,883640089,588353865,162631568,468555940,821395855,332619362,596406159,894523748,418684771,641845687,313787547,768327247,234703033,552672591,389527110,728448673,125197977,214275016,983830482,428779704,986593555,387368263,123442206,965539159,958333077,227219254,446224969,779917632,713659155,23736294,26194911,521935831,612253582,512943324,713321760,887800268,42341175,763654358,481079412,796807889,36738156,494061690,339983108,592403006,19154423,789766038,966100821,199251495,958762421,566592084,734394252,433956662,854281254,687919544,541830047,441396438,172213047,407629453,125846850,46705865,477783490,590759954,271620334,825801516,1218641,669871874,86209741,741105730,19706599,628069785,860555073,916514931,106548254,818956923,484388064,417161249,31619416,850141120,659609953,613207268,499906269,678782629,76073538,332528495,370482636,126686266,917147674,315467811,951131122,839181689,32688262,519452809,530858268,714652476,645630224,952546722,291551105,583500968,683188974,1041610,533997574,164887188,317367017,539381614,288084825,222669307,930662541,287876940,831887835,718915191,679955651,468509398,634746430,809847514,831411651,921408161,842759069,206899564,38813764,482359385,930787302,925422492,524260731,663757452,927767935,14284647,228845794,901561064,981595965,202237606,410122482,51312542,361612797,428764621,63656694,98747779,783750649,402897634,719325397,467464412,459687210,323130816,861600050,904829600,786133251,601350649,347767373,378479453,316549565,840255933,802990953,784721585,299827083,740223998,807111386,563702192,347690750,597778684,377897382,358965968,806812769,466026080,333476937,997248542,829041850,252672341,123771262,694453532,473911460,752230914,215821277,503342710,180978033,738716489,985148525,860789218,322714041,853156211,949844056,796166457,738155824,256052409,807049722,101750158,321840112,113811204,739288240,348958972,678535376,743223652,739177729,987794825,20937384,372237443,817313600,36587104}
{991,1189,1644,1578,1398,316,1970,6,155,636,381,1276,1408,1872,1057,1200,556,1733,1190,1016,1511,761,789,988,1083,1853,1768,1652,4,692,1150,525,784,1233,1364,1044,448,940,1836,984,740,365,1529,1291,706,1567,113,274,1584,1534,425,400,757,1161,1900,1246,1771,1696,884,70,431,1894,383,1234,159,383,1770,1777,426,195,153,1491,1427,1993,909,663,734,1628,1707,1379,1985,905,1163,1564,20,1518,1782,521,1313,1340,727,532,1204,1750,763,1816,891,1263,1936,1763,726,735,345,597,568,1246,583,1343,1747,1991,1697,437,208,134,1501,252,580,1546,1828,1132,668,1187,1025,462,1377,852,226,1822,564,1778,1013,1321,787,82,956,592,1905,1790,841,707,354,769,82,1431,1211,1382,1165,448,1030,1548,1572,918,1371,1908,1234,1828,1288,1681,420,628,938,726,1833,51,769,987,194,611,495,1976,162,467,681,1400,1342,713,404,1047,333,1128,1640,1892,232,1273,560,1839,315,214,584,619,1202,602,1229,1517,1644,226,1728,586,1275,1774,1891,284,1394,1312,1753,1774,501,571,506,1403,300,404,700,210,911,1028,1963,100,1658,452,1761,1716,746,1776,1598,1717,1183,1908,112,831,1736,1585,1883,1547,489,1880,947,1553,1175,61,1069,432,233,805,1169,1398,73,1128,1098,51,689,223,1907,1931,1166,1430,955,944,880,875,114,523,1063,1948,809,1267,1207,1933,1190,67,1572,47,1517,1992,1670,1353,1079,49,1222,1283,686,941,671,1861,1934,479,1149,1884,1926,1181,1872,853,692,972,1722,96,1820,1317,1676,1501,1185,1219,1309,1857,1434,770,386,1858,366,1569,438,1062,1432,592,1667,1784,739,1090,1751,1075,829,844,272,1972,696,1044,16,1723,1716,1842,1273,826,902,145,880,1796,836,974,478,1871,1910,1384,1050,242,902,766,639,119,1200,932,508,1465,1522,333,703,823,413,513,1992,95,337,1609,412,499,1156,1950,1471,1031,876,525,296,1856,320,1989,528,902,1786,1078,227,1250,983,1043,1404,1984,1092,865,397,1790,1571,117,1316,1003,1220,553,791,1704,332,296,25,281,1104,1805,1409,1973,906,1271,394,305,1299,1592,1965,1033,1543,32,1512,631,691,1142,1962,1529,1306,1439,516,750,1515,1012,57,297,1196,1504,750,124,1186,1087,714,14,1702,96,342,581,1617,100,1598,1868,1215,92,782,478,1648,1534,1894,1176,1746,543,1270,938,1880,218,337,1926,981,1431,958,559,689,52,1570,123,1202,1744,454,1313,52,1946,119,1276,1345,518,1104,1045,1065,1751,1521,1004,1099,277,779,863,457,1577,1922,1824,488,684,985,1843,29,443,1736,1149,1504,1669,1369,102,1772,890,1254,199,1548,141,733,1996,928,1555,1451,451,709,1490,692,235,240,1938,1721,213,1635,1919,671,1174,1734,1412,1982,1186,1279,1824,911,386,41,997,1981,1167,1665,435,1764,1172,1411,961,229,959,1025,1044,479,1055,44,1638,1719,1815,632,1695,49,1705,860,1647,1843,572,1087,1538,680,1126,1116,969,1595,306,846,1063,391,1163,1812,417,958,414,1534,1917,302,1452,1229,643,1964,1189,1814,895,1293,1757,783,1244,1816,730,1472,713,1669,1043,1715,1272,1936,738,37,1513,1254,579,1794,243,1189,274,91,1499,208,432,1555,779,1193,1711,1341,1692,1941,1297,1792,1307,1883,1804,451,1127,916,584,336,1696,1692,414,884,826,815,330,1085,1927,1372,1834,1146,1056,1413,1197,430,1101,1293,389,749,503,1368,1684,1645,1996,1181,1922,486,859,247,1989,1954,195,1503,630,397,1640,1299,1186,549,686,1858,1766,890,795,1437,1122,1183,1481,1159,1015,1175,1489,1126,1272,1400,304,463,60,747,469,1917,1674,105,272,1977,1802,623,917,1427,826,1354,1638,1527,919,1195,76,1561,1487,1892,511,1225,1157,137,616,1951,1324,496,630,1472,1834,960,1141,1765,1175,229,104,379,43,890,639,285,1570,333,1953,28,379,462,435,1671,340,1487,1023,898,1839,1237,46,1923,848,997,621,991,1021,1143,1739,929,60,54,345,1876,167,958,1176,595,1963,1212,1678,1167,1747,561,673,1304,1697,47,1465,914,950,761,962,1298,1989,1207,743,1694,1395,1631,536,1984,345,1229,1428,883,1040,1083,399,644,1619,1801,173,274,432,214,1460,1021,231,724,1134,1194,1209,855,1540,1197,921,790,1123,12,1966,1688,1978,131,1231,1528,1898,250,1813,1345,1220,784,987,802,1118,227,337,1515,1790,213,404,1870,1836,1480,1287,302,900,1202,1886,1154,705,1866,989,1250,1651,1048,44,1961,121,184,1797,1537,1943,839,724,1065,657,884,1334,1730,221,656,1226,893,949,318,1362,1278,546,1987,1554,748,977,950,784,1822,1570,720,98,1502,1619,93,1362,666,217,1481,1629,1981,102,1284,1535,1994,1395,846,856,449,200,458,1353,551,1902,31,775,674,1780,1697,1463,1690,854,764,160,1321,135,1449,555,1963,264,1463,1494,206,382,307,476,1987,1807,431,590,1771,549,1422,1357,1706,1113,1014,1932,1110,1432,1740,626,296,1313,1019,1190,1449,789,1805,305,326,661,703,1807,1885,679,241,973,1757,1553,1555,700,793,556,729,652,277,1570,120,161,391,1199,1990,1969,1271,291,1405,932,1662,1789,1479,274,90,97,515,1240,1192,1411,430,482,568,521,283,1778,605,381,1579,311,394,184,1253,70,309,296,1279,101,982,1962,1042,1418,1497,1295,345,943,1591,859,162,1825,737,577,1963,1724,901,312,1413,1456,1750,216,964,847,87,573,109,300,672,1939,614,1324,807,1767,282,200,1896,956,98,1529,525,643,1851,1098,1334,1025,1382,218,1474,1660,323,982,1795,1982,469,1122,1518,80,976,1009,776,64,1998,984,441,235,1301,1919,700,1410,513,351,333,345,1824,676,825,1923,17,843,1425,423,660,357,166,1821,1260,882,1646,1969,1631,503,493,255,1556,312,941,1828,1603,1709,470,1187,840,1169,677,749,1168,813,617,1847,811,737,1745,584,1416,1436,1295,919,1067,1598,391,624,905,412,1216,288,73,412,1729,4,1141,4,149,30,1991,1375,1303,959,492,1399,198,429,419,731,1746,414,687,298,460,523,1584,1414,1481,1678,1406,1682,1359,643,1006,1876,1942,1530,1993,707,120,83,1996,1561,1506,1040,1746,801,1744,918,1627,1481,916,1547,1625,65,1230,697,1037,522,1028,569,1373,280,1004,1113,945,1888,1021,1366,17,170,1937,1986,1080,1183,646,734,836,923,1047,1760,915,1324,1911,1774,726,496,774,1057,705,1579,1257,963,169,1710,758,1488,644,1776,229,1512,1996,1545,1200,827,1292,1249,499,1931,1024,1989,412,877,697,1986,235,1832,550,1687,419,51,364,903,1606,1723,895,1492,221,346,1766,533,717,416,58,288,1219,526,694,864,1705,1558,200,719,1757,1420,718,156,1408,727,1242,87,196,1872,286,479,1933,208,1472,1258,1729,966,1383,1245,1927,239,1707,335,75,907,584,1146,1832,1519,1163,1882,876,1981,819,1131,1527,108,721,718,523,262,503,1220,733,372,732,1409,1346,1236,1143,90,67,435,175,23,585,499,97,1489,1999,1062,473,756,1175,768,854,1854,1790,1304,1674,1726,1623,1255,280,901,1926,1638,1316,567,80,692,1702,235,1743,958,166,1846,1403,245,1249,948,530,1947,210,1455,1056,341,1881,389,407,1274,1927,69,328,1041,959,786,904,1767,295,526,1292,950,1716,416,1916,607,1681,1614,1763,368,184,547,332,286,1942,153,1126,556,251,1840,481,1473,663,1541,975,406,206,203,83,853,1540,581,548,1979,1394,665,763,294,1342,862,992,1318,1222,974,384,239,1958,1700,1161,1238,732,1183,796,1279,1914,749,138,1605,1028,1936,1127,1185,525,780,1450,1649,1310,246,42,1091,1103,1942,1890,1750,635,1413,349,1919,1168,1023,1978,593,1020,530,936,1971,1905,1789,1003,622,897,625,85,1900,513,1955,13,426,1194,727,1435,1910,579,1670,313,1648,280,824,115,1725,166,394,791,1007,331,1081,1782,798,1770,517,160,1393,1541,687,27,773,1889,1738,317,612,565,1037,1197,1615,1690,126,1077,485,491,840,706,664,1190,182,450,1983,202,1749,916,670,1079,1397,1563,367,240,536,715,1052,171,1361,1066,1345,1583,246,1616,1694,1876,478,1366,1811,1190,627,938,514,418,1233,1913,113,439,101,1187,756,1318,1838,1499,1958,1794,686,1764,961,464,1961,4,1072,1624,1268,788,788,1745,71,1517,1356,952,1611,44,1370,1753,748,478,1493,804,1512,996,1409,1593,622,1072,344,1756,1440,1078,228,705,1088,763,1777,1008,1462,601,1183,1634,1959,1896,1326,993,399,374,577,1643,1544,1968,923,544,416,1382,116,47,71,890,1683,700,1165,897,597,1229,248,752,581,231,1100,335,577,613,528,105,683,1361,495,1034,805,697,1044,1487,387,139,92,1081,1420,1272,1000,1129,1385,100,520,53,532,1251,1936,657,1082,686,502,1175,1337,988,1201,1199,1378,744,587,1814,1511,1969,480,1435,1838,1365,1148,845,939,1908,240,398,1561,67,542,194,1666,853,1944,1440,1842,1363,1620,1631,791,421,234,602,1987,1191,1491,1356,136,404,1948,1492,1498,1214,1616,1266,1808,691,241,1623,467,1993,1648,569,1917,1634,576,844,603,1640,1462,233,1019,1906,1307,1450,590,1148,24,443,1734,1651,1080,699,1065,1782,425,680,1228,6,1467,38,24,1286,1662,1608,823,283,184,213,487,620,445,1716,1205,770,1028,1791,819,1193,1544,1155,707,381,740,1022,650,1069,965,1056,1325,923,652,298,1542,314,281,1409,1423,350,800,235,501,335,231,944,1718,117,757,1402,1859,1005,1877,1285,1198,1170,112,1263,396,932,982,1480,1636,228,437,1939,1662,1429,1872,1027,469,588,1849,1230,853,1265,22,1277,1932,1067,639,1753,1836,1975,1325,959,407,1698,1165,684,546,1817,75,1874,1090,224,1207,1969,961,87,114,782,489,1606,417,1070,231,1714,569,1963,729,261,897,1358,1776,1193,658,1234,814,861,729,1559,985,190,1412,1245,310,1343,1840,1556,1710,289,1793,194,171,139,922,940,1051,210,1584,330,604,625,42,1319,1630,1746,3,543,260,35,326,1919,1138,34,945,280,127,369,674,1388,1956,226,1036,1887,1548,714,963,134,561,1650,1579,299,581,113,1996,38,1702,67,64,1813,343,1364,771,1221,525,213,1762,485,655,630,1132,538,165,953,1747,869,1850,805,1627,590,858,816,1098,1564,148,1940,118,1994,152,410,1786,740,1737,609,1584,1623,699,743,1479,836,1733,1694,158,1052,64,1160,23,965,983,1723,949}
{392273,171983,879848,438329,5948,23918,277808,308446,647829,244952,646209,76670,707976,692232,8730,882417,408889,850369,434388,963128,182277,210964,552228,175040,386438,357273,512790,849501,797901,388466,626641,304401,585448,862541,560855,767620,818203,500256,968003,315146,948392,5933,292298,72930,886857,25789,409405,803955,61298,993319,401923,805968,393873,641735,289441,453810,649360,791369,513971,805698,691343,455709,953777,644302,714796,811522,80237,919247,868732,583101,730065,201899,204049,755616,170980,908975,276019,276422,202179,297363,995049,846354,194601,365240,122415,360437,847337,524970,219007,725991,459888,451295,695242,335659,276870,69175,965630,471885,201995,275772,6911,619492,271548,898721,546287,434002,269933,813829,640040,284161,666381,282799,916542,372261,583847,750736,569407,182398,912605,631238,363700,20500,236269,368661,472607,12795,858862,662445,835325,780431,185553,716137,370051,245046,99105,388172,599587,734306,92101,439171,880709,623950,615099,529831,897360,781246,438364,582330,355936,619905,809757,466470,764047,468016,904905,637187,919598,868334,237513,365264,168138,355367,238174,633591,542569,674899,189923,623883,830348,552690,356813,613066,543021,534286,60588,148252,553664,520254,255721,185172,440883,285023,127816,271468,686319,840667,680165,698890,783382,302499,937272,546496,897413,211958,289235,471685,586065,898266,279328,221886,184971,629023,186277,866489,675710,167713,783297,949806,645549,165892,630254,819326,197463,777783,538047,735286,216053,805748,645601,127626,347128,162299,797339,672540,403981,734620,537295,549428,423962,711212,921208,670022,278720,254796,483116,830769,562713,777638,673690,713532,932856,508401,559178,165849,687725,961642,515297,898276,656896,712795,988636,269219,240627,105622,974417,619140,549251,36280,64307,790051,195173,169384,288525,859203,226570,172055,825987,669458,423645,710655,43094,289319,516353,219109,135966,298245,997269,44440,479311,827927,604146,800625,491703,719796,350761,803540,463547,533978,226374,803115,640863,804339,282450,911663,688125,903829,573898,957728,203402,184891,338027,884233,740054,56015,984423,741631,630986,877666,153454,112033,290601,165615,954600,177174,508753,224093,922999,529875,391737,537468,618808,363029,500466,910276,505984,805665,521320,996635,967264,762504,102112,861069,654882,422758,235705,315859,496075,635744,410349,415247,267353,983779,133582,675084,336389,801066,681867,961023,697344,621686,247914,680010,42358,690453,17421,925494,893583,45917,991471,519990,212459,404271,15462,940968,724195,491510,965600,559828,669453,824871,856488,241837,259190,971649,205215,981965,860647,752332,659589,602042,849762,392411,983791,999077,10979,380172,673872,412392,34337,90244,518962,60805,236172,397877,757243,80427,564686,674521,607851,22130,373964,616374,414362,446747,709412,477529,921724,831378,260462,890397,620766,887598,222781,236067,952936,218285,238877,328537,963162,826874,205076,434357,961681,780009,467618,208633,711873,650935,337091,452270,781241,720076,491433,625450,770212,171066,227844,526860,800004,667389,900732,899324,152951,943674,106866,765870,786164,964546,931781,867357,131404,374478,465864,806417,386283,267394,927566,89307,439125,782507,204705,484886,32491,783107,802884,700774,803110,222825,242805,107769,438872,599724,175279,236682,132528,632767,245537,823771,7028,307075,628986,866808,339013,999041,462879,297912,579552,103855,966256,140861,600730,761128,613896,217200,210785,718134,105980,41160,309311,177546,497624,413826,175000,208703,807591,887911,828584,546844,842218,746442,779847,716368,269149,513033,627750,13366,814775,652874,979730,425361,61543,309501,921390,427918,929178,452829,327674,513094,810929,797616,310096,735227,97933,55812,773283,286487,440709,573362,394048,616498,274476,665693,717966,345035,610637,636529,856783,215243,173744,238694,995103,808775,782292,705595,824497,802044,390133,766461,91671,127763,799749,513599,550648,562716,815411,399138,340953,867476,679785,244492,423959,9249,842696,516274,791849,179538,719020,362384,411552,390753,870059,626220,709863,28594,361047,891608,553221,672659,4665,721647,542679,371836,862102,985237,665,908878,811499,99193,276124,260437,456498,98133,90318,767944,873309,529065,75383,611909,612887,566021,398007,139415,198600,171581,879115,233650,399247,426484,678855,61747,345863,57620,910171,104866,616516,410706,611408,123377,781077,213292,472778,853436,362497,716396,925829,549000,562124,627876,715929,915078,878705,814321,576951,86606,805222,468921,925611,445670,247133,928111,931034,492475,121663,779724,825923,921572,400625,24981,74496,660836,836240,961497,913027,756966,722934,920881,282331,584384,884788,566336,69614,974642,189272,79539,816446,32294,264166,641344,160230,961455,836320,359528,898844,742924,680832,440886,571182,28195,319738,991039,353479,759688,424509,580385,712041,514229,639024,621702,307313,63569,181943,550176,347799,473324,660396,422252,800685,872574,206248,84529,585949,109613,932346,767808,217326,372613,938923,39283,580285,767743,395266,260079,184453,188157,503483,276644,484825,420681,417872,929865,176871,902747,327859,730402,977844,495378,78479,512508,707876,457527,89035,917741,343792,427263,643656,442902,461359,668999,77024,557986,266128,689112,969575,269958,284060,697634,684523,18881,2166,492482,258742,297179,846748,868606,606472,18343,122213,420165,999007,440130,177282,836337,615920,501971,676862,158598,965037,332939,8576,497586,660478,604452,396422,297805,432714,514532,173674,543192,149229,4120,462750,560575,941057,788699,478065,56665,556439,287950,166601,202980,232316,75807,245287,373323,313527,730884,281640,140705,479367,977598,322241,441189,242982,757401,177344,448638,983562,983912,710991,646078,18593,354955,341874,431905,383314,546218,446533,338636,105344,481720,529920,108560,232967,655922,21557,636774,594495,709024,432078,625714,224630,148881,6929,908225,63608,850016,789853,289229,163784,24691,459820,856053,593061,327864,823633,307079,942088,286183,91769,517176,738338,103877,894251,184680,327328,754653,432330,354913,142121,817286,40015,359382,137499,42658,833233,79206,7187,575002,829630,943575,229988,489316,159713,953821,914460,654079,71324,618002,261828,21363,886573,64125,792414,2708,789354,286542,812071,806845,122054,562909,714964,165655,135564,628720,47702,693969,986208,175091,43160,156775,519811,131967,978557,854492,772173,524373,747876,104193,303347,252770,348390,300590,509824,49787,915924,670982,564445,292191,407227,207477,422154,267962,338721,335090,120292,213214,576007,877695,413663,211017,346022,600230,376395,694499,441396,177787,143057,799358,950814,538142,256373,618774,160653,188600,175827,557585,170083,221050,714531,319678,710972,576355,576246,854487,721840,153849,956728,527104,706893,814732,881838,555527,155870,39351,809975,436452,903528,376096,921421,304952,647849,760694,650243,158479,458586,214896,547141,453280,615852,976145,77661,266057,329100,213864,352618,941973,803680,697545,777832,410551,526472,330839,451053,295310,444448,407676,402151,360929,889722,956780,414688,864290,341607,731496,360252,56237,38572,193526,289400,443335,222670,736363,968490,282721,555273,493027,593029,211859,944658,258245,236563,46435,504282,239233,305915,699774,164683,397907,765434,288763,825802,103359,700267,568925,443701,744148,525761,110351,454117,848364,176905,167719,262570,464615,84651,507173,856787,122485,50664,327347,601765,602699,857178,427940,973025,790314,521848,229494,174912,972317,692305,832978,865208,599416,320654,6728,996726,378076,627826,665366,476642,858351,3739,32800,411680,7014,414848,763830,165835,280381,229810,83858,907706,748667,224733,49881,766653,861489,153477,291671,132127,547833,593419,825925,841187,656120,587816,458821,12423,419422,241518,193249,492614,322722,816716,496913,853455,422536,854344,652084,205201,684573,416580,652435,22833,899575,529147,634467,278415,566967,710274,23105,256135,666504,552010,970165,253419,676063,536474,902001,517259,38394,371734,32913,287919,515363,666429,645083,736472,379820,371236,407166,554053,886578,776765,824852,423401,995356,463829,597153,455223,771163,19471,238419,899225,53225,922155,523778,994737,208140,552067,980207,17952,1041,529098,164166,670461,575507,98381,732765,954075,392179,945523,762741,100998,83615,677439,646006,93443,487053,126026,997876,113877,407614,443531,20270,666612,28029,125009,725771,595925,518624,451396,748765,837927,588419,742185,270815,512722,520273,64093,600504,343991,374461,411799,619000,498868,801538,493928,819096,554847,465960,559163,232380,644552,185152,968535,343985,178873,756580,570649,739568,694263,353274,917821,322267,357375,484784,891604,641981,148875,193534,219468,861388,242509,652585,656493,65320,294193,801532,189592,628891,702940,794510,427720,241624,617905,263104,712530,24061,352456,371582,647078,336595,52854,119419,356429,942410,640586,602103,529451,624192,577419,85690,610428,573881,458621,229527,686040,822885,607451,570284,897328,154142,192859,526302,915856,43049,164975,731999,788445,466162,551104,579562,900246,999826,287347,553410,71061,884042,836069,579256,406157,231815,181872,409892,680394,720158,53670,569385,180406,525518,618834,517555,241168,801858,49660,164345,980596,550990,391523,383421,972504,969903,608194,40456,764874,996366,561677,62769,828597,715771,62067,348373,999066,242867,191579,761757,214105,620763,24616,703293,204967,485892,375863,142768,143255,359655,149342,953727,123092,431528,16108,547001,858018,189973,105517,585402,35362,608358,154725,102758,326860,496892,613905,539372,428276,714787,627883,453765,603271,154769,923621,591795,505869,103719,570026,556165,370918,788205,734306,299919,350927,181079,526252,602100,814684,631684,235555,436254,822077,12795,832475,391169,500730,328878,74978,657309,628921,273016,506753,367739,564917,432608,734075,587053,94533,439190,667978,354511,699933,15411,119847,835978,691206,206714,558336,72973,367845,501083,371137,230612,764091,319660,189198,961315,699169,679664,782276,745097,525193,786834,526781,547424,83458,758056,199306,86088,154034,879346,815545,367729,105307,921625,853326,164431,443736,679282,246539,849573,383262,295163,571434,885053,694590,30042,343199,602284,831263,258723,679192,851728,460806,46928,111742,341843,936271,10184,22196,120359,463538,936986,808852,825481,731777,941057,293303,502784,886886,322847,442667,24540,188199,975555,442492,427385,693540,12325,921709,235515,703317,148582,973821,953170,631181,634003,193253,739701,893947,928929,452054,848936,13798,207919,740157,845623,826414,821512,477825,879802,305296,525984,806913,986641,79776,849620,483159,601703,494925,120364,498457,64177,939426,839963,831701,678766,321153,789115,93266,738214,954984,238866,677011,373548,173421,878993,645396,342621,385539,385873,896333,908384,986613,971158,220460,352421,122472,936910,40285,442473,215834,911504,967555,626158,125799,137823,292285,875844,980864,638567,113956,419333,320563,643900,669065,457234,111592,459871,506297,290521,992672,131770,714234,207312,925622,357025,650765,834168,431007,592080,461868,588700,21867,522929,592074,365137,891395,454677,89048,208758,754347,257016,580284,609459,403775,209215,867353,662971,124407,483834,574347,340491,76452,669476,704873,79466,111858,835040,855044,44201,226022,129531,441252,730658,663456,680558,668815,778235,859479,974811,954947,465314,813601,85133,204409,697487,513514,97786,215970,232391,897529,112194,114731,858324,523120,645166,764986,479184,8267,571699,438320,6553,826077,253551,199526,51419,366744,284520,867762,310668,986435,205778,602593,315880,145347,381703,321020,454586,572821,759566,654469,31637,541647,962454,570232,800148,741668,887929,104844,46752,31582,247100,331442,703079,59620,359371,186002,448103,660787,643519,89618,245219,189735,335385,804240,943401,659633,284998,640741,273940,191775,860762,897506,139206,596953,3607,948883,459051,18143,42149,472832,399354,805518,522521,590953,392373,867994,286896,35143,813349,395795,416594,96144,306016,43042,74065,662833,544325,169354,523049,161875,117885,480489,214847,118104,599033,810422,158820,762396,664376,740866,554449,669174,776575,899321,280810,618934,348640,40992,265469,492518,867574,442966,974850,593164,904293,80596,302746,852068,667740,240687,282257,600231,983124,478290,551773,18184,233807,431174,426206,253746,204763,594668,982494,897869,622223,371839,737681,286457,987851,594389,991187,597199,280377,421852,634094,602725,836816,234143,107987,243720,7181,979839,77725,657152,204153,192188,59988,802705,558120,245931,256037,979318,769270,527935,272812,636710,37065,637442,522027,280785,864788,214618,346194,382241,244623,109318,307447,320635,371585,977248,171677,824125,30648,141659,978159,158463,594894,735172,28291,926612,529827,518083,864280,811016,243047,172312,811418,763745,69774,882720,529051,68767,959259,894479,668761,315261,823320,523188,447101,263152,753498,373242,580695,96037,899775,592803,668964,64324,526640,655565,580618,359857,557857,379439,417048,776583,775822,67930,927113,71005,878782,641529,709695,985859,480385,570579,763465,708035,781875,458566,955103,833634,450104,92171,507490,736926,456128,711222,902623,415407,295170,300789,543370,559815,511746,27470,85957,352596,819404,792227,749336,649147,863160,953518,698296,392284,443686,664391,847682,964306,709505,378715,383294,694705,882750,167860,179806,259016,849499,623861,819966,986463,5922,953948,536483,994487,85733,793473,974398,497550,36097,25107,387880,273818,17245,164639,860197,569291,119082,814346,434403,182155,44258,242259,553209,593087,512266,723988,368490,893060,266034,798912,724130,523380,133873,841316,451765,954849,452011,114343,431076,203030,561677,870539,565273,917659,319693,892908,177575,617135,996972,224125,406093,692685,518005,70480,112306,604393,795581,54732,648103,571954,363746,574390,110954,753040,634190,625195,867551,140004,948403,891617,652694,817676,622927,147179,87370,427550,797223,54388,6174,576809,363596,652928,221087,404217,890587,32688,281222}
Returns: {468255625, 82964665, 548151697, 482542375, 568286931, 623288620, 876341410, 913048358, 146687892, 351433693, 353219348, 163211796, 735645703, 193732670, 747321890, 149986449, 452598487, 927997317, 814119149, 375940013, 237396270, 446808544, 946764210, 366869068, 317694088, 707525153, 561464958, 331044464, 227998521, 298889120, 849311946, 231608961, 71501812, 339828271, 655448780, 835311574, 55730713, 966143211, 364126813, 114998945, 337091418, 388641333, 285609982, 768670418, 399500417, 47992725, 380898203, 662884850, 586415697, 276618015, 165478149, 665837192, 356798748, 336337097, 148653977, 31316638, 840726852, 806006140, 688505583, 422430782, 741985031, 915525178, 91179851, 72400683, 869080533, 526949992, 556584825, 340716164, 576930699, 284589602, 402134603, 250701784, 464614569, 590493390, 464038784, 589414865, 604947264, 677223737, 233044792, 533190014, 548089643, 250710837, 763791224, 981373958, 229863685, 212752311, 673043217, 294783918, 981234753, 13514587, 412937033, 530136270, 486501102, 546250908, 64783108, 909400448, 115611940, 647745794, 552103126, 503815410, 776571097, 62044447, 586689944, 927321745, 89850034, 538203659, 904674862, 326213674, 844874397, 701033641, 543488311, 814850963, 385267212, 824704564, 830108322, 533126567, 999197678, 842302119, 318010309, 361231121, 827269237, 403774322, 253318597, 282101013, 623641827, 716916652, 189438747, 155805175, 717173730, 330849492, 631705495, 183807874, 726917976, 355732258, 47359898, 90748135, 948934117, 145729409, 348891090, 543848850, 53147250, 500657993, 609982618, 652267058, 290089324, 387006384, 695464852, 460857742, 23436470, 488981044, 961455751, 197861617, 574433713, 944387751, 689248262, 588057028, 672883394, 130237451, 775234762, 18312999, 48868262, 670934909, 69621112, 830104595, 127265356, 196635972, 461209455, 490427138, 781224296, 715459075, 100482681, 65674785, 119178283, 366890221, 888956272, 351648994, 145396532, 521601867, 904667298, 469965604, 887255516, 989815023, 616486250, 37531231, 462804200, 772697906, 804120562, 190284893, 420507251, 299457864, 774977159, 409187252, 726347211, 261921639, 126399645, 489753182, 463964018, 318907967, 13336535, 500926558, 478134677, 868879, 746316072, 215837581, 918060047, 966396843, 748048776, 48853390, 962867026, 540000400, 489219702, 890979470, 823245231, 237251752, 45974816, 545854761, 177379650, 639286692, 68937162, 665452450, 802838574, 317504681, 706772012, 113882139, 430879357, 251454738, 142624734, 297260011, 226272336, 898579002, 697644190, 19950241, 259132635, 463863945, 152391884, 731629904, 167726678, 875760149, 139659706, 141529421, 209545243, 115457879, 41551076, 867801441, 522227772, 973184531, 296649735, 337936677, 492204991, 163884380, 841964709, 751912930, 823258700, 272863615, 541693383, 958322587, 632677978, 7747145, 902516328, 960997038, 650872096, 312261970, 246479419, 587309882, 661193660, 176353958, 410036886, 382934340, 691703182, 544054553, 856727336, 715816668, 439115732, 357819540, 838295373, 691438719, 12137176, 571067245, 379616545, 523323839, 840661148, 71277463, 629610085, 805873751, 281650009, 43736319, 989217282, 802379625, 331475105, 167713548, 903000073, 109826649, 663497499, 684239640, 439107221, 873367950, 382458395, 744108374, 467072144, 474525352, 528375532, 345249253, 624528406, 20513587, 500447665, 225962648, 191795931, 256890541, 253079648, 188544547, 961127604, 443159708, 432084287, 221035929, 659162753, 189709709, 334630987, 217454241, 379013689, 973110091, 625233359, 48350642, 875704000, 775596032, 294501058, 647559133, 974032308, 912318637, 456758872, 3325066, 865135619, 971990191, 348742454, 268042296, 12852284, 642623300, 965529487, 997348089, 994783614, 395607416, 119908305, 92162974, 99765793, 569859707, 84860432, 588826374, 204442011, 822093150, 134566124, 158329016, 126202833, 141283817, 705611625, 6248018, 415724037, 358292984, 441892611, 220714353, 184598562, 15316816, 655387418, 760310227, 487597459, 908751354, 270190567, 313761696, 461416858, 27549263, 284221050, 393096271, 87950466, 32915776, 846909975, 175379867, 632493723, 96309492, 45290735, 288609722, 197121065, 393173421, 882552879, 757459965, 169331331, 104078079, 818521097, 96895808, 420958722, 867073873, 264393002, 827794483, 952604650, 284613917, 324641651, 816411394, 72805797, 662392968, 284186801, 686486380, 130973167, 761621238, 674740498, 150829242, 447669177, 599280387, 569120056, 963717662, 151118252, 335892995, 312492763, 421627728, 147069767, 160183137, 164761665, 987396583, 696173921, 663688618, 977691778, 482223752, 699449335, 254873039, 32859182, 169034471, 270482215, 219216853, 199920674, 658625465, 727613266, 521061620, 123830321, 505106742, 942478709, 171180564, 912002988, 964035333, 298594395, 267314131, 887770236, 531664636, 524271405, 546310369, 679201046, 349056710, 534267429, 327005474, 422862342, 396661434, 489531469, 923539974, 973136045, 331224065, 122317204, 967162689, 77845953, 968645175, 429566248, 938648961, 103483035, 349974612, 935121884, 793948482, 44119210, 920107682, 714625859, 144320923, 659408627, 390587695, 789795344, 965678777, 259139146, 419002229, 78153747, 143528265, 380695558, 858209258, 90631212, 709496016, 559184197, 172422306, 689935939, 322585362, 211451267, 319659936, 887272665, 298232364, 738994827, 52869109, 676914282, 112165337, 826075162, 282011693, 741704178, 844761668, 971993027, 663807488, 661808079, 109874737, 744919488, 459557758, 138759716, 575138056, 489172100, 995182910, 335308123, 646170943, 915927640, 369480474, 711467922, 457504953, 13284044, 868746892, 613109450, 705812806, 458968011, 106618754, 170973566, 496302472, 669109604, 658236456, 597440312, 252805572, 405067760, 769093901, 917462704, 411647729, 690531272, 374112487, 375306917, 961431848, 649661992, 975911321, 298173698, 800751074, 845384063, 933920855, 408093419, 636588292, 951630157, 592917469, 114742064, 920761506, 231227088, 979636333, 301575402, 852087025, 744389280, 39616355, 850969264, 74158484, 634578365, 152413604, 370448690, 557847157, 770469122, 47063773, 320671330, 909872662, 646365638, 822220948, 763878725, 373266939, 483720345, 567419350, 114605536, 482854762, 17216223, 824609916, 785005388, 60040613, 153679364, 66157000, 425650007, 413656613, 857900130, 747901360, 309743285, 403881069, 19227292, 359456751, 307048169, 226843847, 931980285, 832635043, 522663218, 776305814, 787440747, 194932178, 363207304, 784621994, 886120992, 388548618, 576413153, 203562728, 576440308, 475518886, 443532114, 39838839, 585109306, 870421317, 950302794, 481880343, 817399443, 77468966, 682827737, 575327876, 394007444, 233073828, 476731426, 372202682, 342525037, 720243107, 611409002, 470087029, 495033027, 273629300, 453026220, 639781003, 212940139, 566338276, 326863102, 342038395, 470387572, 235935092, 12783337, 787897491, 257133140, 227374012, 231485631, 316365946, 371925013, 226637520, 458443921, 558522808, 250957203, 309694488, 803094348, 572090376, 820608285, 866799037, 986088431, 514100501, 521844424, 915245145, 533449033, 164553585, 955542988, 849824031, 728980991, 486489579, 189716136, 297976234, 612069856, 690453295, 507697450, 415634298, 749031386, 623577629, 685565513, 164426326, 461857953, 523852174, 553161967, 178038295, 309371179, 182276960, 83186960, 658433185, 707434784, 827822665, 708177808, 995805639, 672775483, 141049121, 147370041, 76333982, 301516884, 404532350, 573177215, 928032695, 902939899, 762954587, 34598234, 951105021, 167417697, 883736378, 112294218, 727538612, 679037415, 145772232, 977204041, 828415284, 897932907, 409516730, 568853931, 572576685, 598628829, 814604376, 616058617, 585050737, 39612307, 383818599, 938783460, 793657814, 31659480, 493915500, 939190559, 502526909, 643045509, 698858691, 701475789, 457025801, 343077916, 164698219, 578214384, 671341262, 567660820, 787955273, 998590944, 762712145, 541518561, 341963823, 818804712, 162385152, 536138635, 981426833, 538538386, 559143378, 267337605, 209908195, 178066197, 933276326, 289898434, 538515473, 692220178, 310303527, 369228602, 333523751, 928295966, 221185721, 340029508, 256064332, 616538347, 739352998, 296328892, 425087653, 842070832, 196257425, 704756402, 195535163, 12294542, 26897619, 276319034, 628055782, 740432155, 212561075, 179905753, 405522145, 93236767, 526480584, 499274759, 359769384, 715433239, 735479764, 87226183, 475996597, 553438057, 555785960, 809718771, 317254811, 356348052, 951619383, 458690999, 780724296, 61262702, 76225446, 214375261, 225910506, 5516203, 522574988, 436472625, 756040089, 639657780, 987331002, 85047806, 801743229, 323758, 483665380, 660808899, 494288910, 138979120, 194990679, 20810991, 59303168, 34878384, 745651097, 763956733, 195820251, 683032044, 141974086, 401776057, 490840313, 142910127, 945690599, 647626191, 81472370, 799013803, 321451918, 228691940, 900071893, 847954742, 344891089, 313875299, 176639304, 322878317, 586808885, 649658448, 764123671, 269949558, 443614048, 542019456, 845662397, 377308840, 847838934, 957681065, 283219826, 53235638, 990609727, 495726272, 115208078, 237646285, 649909752, 682388367, 761711373, 451158863, 833171622, 761519094, 33310651, 609471364, 78360579, 181871323, 153421255, 875655128, 723769317, 73507803, 381288529, 819906093, 743803392, 284112473, 199977315, 746756350, 334474432, 500176738, 989845242, 845484888, 293179815, 528711024, 328712237, 320479489, 361830080, 90735423, 297686358, 537151744, 31163543, 645938894, 718493113, 610428078, 12495567, 350666614, 338638768, 450784743, 243197637, 25910966, 177723861, 622835198, 158643521, 838331588, 967749842, 634681360, 141408909, 751410588, 987656158, 426412009, 657778978, 473995721, 310075563, 322890356, 413319670, 690029794, 584963789, 714940829, 91682243, 753464536, 368440882, 734476398, 779260803, 328103680, 370796532, 105034035, 125784515, 989563944, 36760306, 127178854, 708626815, 995845011, 797842698, 946426429, 819462139, 370140156, 52156932, 755055736, 609891920, 497116144, 851207464, 970449836, 924685763, 199416512, 950069994, 526895811, 261312655, 764071674, 577504764, 754794999, 348049396, 692026595, 956897946, 546615994, 363334346, 970788235, 43940357, 749145835, 390838945, 356611101, 773092586, 821736783, 433981979, 194047651, 167189629, 281754841, 533718447, 524533867, 606136874, 550545602, 718689265, 141361199, 189636664, 140002902, 729140280, 961007475, 82943383, 535857322, 412892757, 803246519, 609408204, 212054168, 252944118, 489359048, 445314587, 740922787, 643798288, 112394669, 134168047, 216801490, 919841662, 255941694, 651978593, 480109745, 967340151, 48779770, 405418159, 280020323, 127674868, 156788772, 783153179, 638650822, 976644509, 217458363, 955223643, 160133750, 9348124, 473259041, 290486405, 616701825, 23556171, 112571312, 352323980, 912912021, 12274201, 565582471, 813831287, 411892554, 598736546, 96256566, 189457882, 121632519, 833689813, 663139185, 937892516, 284062743, 778523215, 47721900, 141182792, 445274351, 165089823, 347410515, 667217970, 71985899, 386881925, 843751426, 165937684, 802449035, 634486389, 842192891, 849562051, 115292772, 128082686, 592603915, 853097902, 366615978, 769275686, 146102853, 419159488, 804984752, 885698631, 217440862, 855584027, 774287210, 343803081, 587632741, 278156349, 477091919, 441248260, 402321496, 117463607, 67431743, 758359211, 73435954, 446394746, 974478446, 696158427, 715458529, 833987439, 235993597, 843150214, 490009322, 271825263, 664243381, 880297974, 232573226, 484700301, 580696599, 250668784, 883451754, 676009437, 991128018, 923141379, 305078081, 128936714, 871287268, 561439529, 764280617, 187072826, 533017662, 792134773, 150088058, 609358457, 889541911, 783618822, 813717500, 200927587, 769751042, 72517876, 809758017, 454504608, 608432681, 705398443, 492194989, 114255180, 459579038, 140414051, 387586229, 547258713, 245170613, 630842725, 975359225, 926143316, 187410923, 149068839, 653678582, 623999815, 493762220, 911963913, 511149714, 513512603, 167268597, 753610548, 574804014, 181947039, 748146913, 378237173, 260987374, 741068063, 557629479, 146779577, 107688347, 736569251, 437282092, 598515028, 224561356, 18120904, 573355800, 189621641, 640029164, 141457677, 537635590, 957142844, 714415015, 566645139, 172546863, 398387131, 47271163, 127597497, 939446393, 564869043, 816410088, 777758819, 742320685, 539700379, 739738717, 648998530, 364457729, 627443952, 86940864, 736189621, 478188048, 102625293, 843246526, 681569809, 279958058, 432506651, 617462451, 403486677, 956340356, 4004771, 388244589, 355858093, 15434114, 123493424, 810494993, 763181037, 979094431, 434027452, 836102770, 668087030, 57879025, 885615278, 305462130, 714609529, 806455650, 260317369, 261694493, 655854094, 521513583, 917167450, 449825915, 677875664, 393528341, 821281615, 800551269, 801557864, 169079407, 389892634, 953381190, 664497395, 631783565, 240383300, 854646423, 731586837, 751026512, 698359907, 483124492, 14381653, 263592631, 591230996, 388394051, 369162908, 682618551, 682023985, 146018125, 123095130, 888695019, 954213234, 283353077, 704884175, 340588532, 261783705, 355791007, 523910201, 457386536, 879942322, 670441147, 317737212, 480845101, 721612097, 232846802, 122556776, 174684775, 828378075, 476404303, 817844550, 68351264, 688079407, 535022309, 318017271, 331626820, 5731703, 427198857, 960610515, 119135904, 748738026, 295549126, 581176700, 922874174, 286055799, 731696306, 885299174, 155586319, 251703506, 281155437, 526612870, 564563976, 511555628, 149583019, 841820981, 708948908, 980733781, 444517672, 305143086, 889795603, 633232773, 107439388, 773450259, 309758778, 482030713, 408317430, 491127134, 931688097, 352974846, 610092791, 71072750, 383934187, 210736118, 405594962, 217716326, 919643858, 932065417, 556479972, 65162851, 430586180, 259655521, 39965827, 622315109, 3791908, 699616274, 233415108, 826697538, 70552390, 394356701, 36783895, 748455177, 157431484, 222157941, 237513918, 953176581, 876462333, 992539694, 7998957, 878187052, 709453600, 865008691, 903659137, 941554477, 47843435, 502182078, 395729752, 177234928, 392781019, 104104000, 222076717, 486224730, 127723347, 163238858, 980572423, 180432263, 732059186, 352462314, 903345929, 610692952, 310096771, 663728183, 952596711, 138769619, 929539330, 542499361, 306104042, 439880892, 516673287, 358643183, 19105571, 873354395, 433826060, 817184120, 174006674, 138262967, 675497386, 992210512, 576146058, 582385271, 788027094, 486233854, 518352955, 771481897, 546937471, 806726723, 116970137, 920070196, 701206966, 641705926, 634884257, 803284340, 536972836, 644023752, 55655478, 296846797, 100831612, 172989214, 832564189, 819256409, 724099406, 301447431, 719185661, 146237055, 36562488, 236409974, 642366332, 474784101, 490287143, 934214751, 310862088, 878585467, 33620398, 35902126, 587512282, 497306376, 896061370, 542764056, 254281576, 220095615, 847027783, 106583438, 307062039, 779755571, 323901504, 222039887, 370840879, 851106234, 768584396, 507707901, 142165764, 940621034, 944844581, 200985375, 228775546, 232462193, 638821063, 553554507, 843892652, 153166798, 461708160, 360323516, 533312418, 111899462, 927106390, 362212848, 652331794, 814984082, 16846701, 271328495, 998033941, 537711424, 84889932, 255108474, 216201532, 159595031, 765268288, 783358406, 125490039, 634194291, 289586259, 788308843, 396846718, 796334949, 296611126, 502360178, 22441992, 137191948, 706779588, 749462590, 690035563, 786869461, 663740399, 50913697, 406714782, 853587910, 736734349, 193982084, 24757812, 113844618, 750990752, 84314498, 570149898, 949967010, 538257893, 785723060, 64102922, 311936923, 441664662, 467799520, 453211217, 338733854, 804707521, 623416503, 670744323, 23289124, 776130231, 927970147, 563951493, 183766575, 471387553, 280472412, 693262255, 932704964, 933607853, 420323577, 524728192, 263123608, 329713119, 904438517, 604746681, 131060369, 457501576, 652263298, 820005996, 978185935, 701859452, 492135985, 636038921, 267614017, 911409245, 108520459, 346376262, 932072077, 674235790, 667681737, 607728669, 949876957, 451393057, 332768655, 958292560, 662875408, 876463658, 395182111, 612531303, 511344174, 97052968, 792051232, 362323972, 506744204, 813704669, 147619542, 735911456, 807367637, 730284740, 474381283, 92104725, 143770753, 293636766, 387248209, 568925767, 747691510, 513041901, 303701010, 217273300, 802584308, 758452990, 703702378, 43962975, 604526476, 897030423, 747835979, 320565145, 631664612, 306101161, 306451877, 953945450, 648141243, 336237070, 159152070, 635723549, 608170929, 626460606, 840260467, 554156597, 381409575, 513672544, 250527470, 701599132, 403008397, 89884526, 820366658, 766470370, 726682198, 757530996, 21308244, 121273946, 62024934, 287331683, 917244439, 509658995, 551937871, 686113779, 887989125, 793377899, 354543808, 994104107, 387037906, 104584802, 781035453, 913794356, 964783092, 439935896, 401683657, 41582567, 206399468, 799898095, 595567160, 856635036, 424555707, 109700938, 960451205, 875909559, 396878770, 489040580, 900876465, 134892252, 342298051, 774349993, 787639457, 480773714, 607950179, 226454751, 91135808, 210805360, 911319634, 494562473, 632470446, 638157219, 236594387, 756815480, 485951042, 583690862, 131617931, 166270961, 457772754, 258128258, 808011530, 543948402, 488843146, 29522007, 141936531, 149923478, 427059754, 36664565, 760700538, 69070802, 324577782, 601255160, 348102080, 262102692, 221482962, 749025421, 540903603, 722830962, 600445765, 524117771, 931288886, 8772897, 773592657, 316827097, 277559176, 803688978, 610740241, 522504081, 565080074, 127956467, 938605232, 418911750, 377219326, 395127997, 460075149, 451754590, 160917732, 731993974, 523116396, 129952113, 792927813, 122741119, 240048004, 754744561, 193566543, 891202419, 67445810, 44107514, 289187248, 145676895, 585157718, 841546794, 687746908, 322663375, 454845586, 413760342, 929445640, 935453208, 343261254, 52076128, 180684215, 361859463, 582406587, 931055487, 430468619, 708685553, 468291098, 122206736, 632107329, 222083577, 772165557, 160155982, 21863468, 7532899, 519862534, 502423833, 523311021, 127501800, 533820390, 795412495, 901539866, 765845695, 146568565, 728277618, 443820891, 868592337, 881545926, 115921640, 593877576, 722988748, 961778684, 54112916, 364405515, 242097820, 767875423, 199821646, 789993300, 574103855, 586378680, 828603849, 990800965, 131479232, 298542984, 459872164, 57203428, 907155605, 275975965, 115297874, 713059833, 598277565, 264999064, 483461944, 830246, 434060521, 58579685, 530670716, 200895329, 529060774, 986420145, 695270141, 171117740, 338808270, 650113263, 393400384, 652097470, 450045707, 547973756, 100084307, 867560493, 922684501, 144299061, 302087965, 219955826, 931149762, 299153071, 358146278, 10884462, 607960932, 111237220, 755819354, 754345028, 386988390, 948702873, 28001686, 438092944, 730270222, 680150948, 479074157, 693972890, 688764532, 749571801, 484626858, 154323862, 247459445, 419725656, 635912797, 583369621, 85440021, 548087253, 88865374, 351624399, 766545278, 972379644, 694014575, 953004438, 877587997, 943439374, 530984398, 590406037, 640813342, 363034147, 979154671, 345924448, 938117609, 937892440, 951148079, 636487075, 220590158, 259800158, 807409183, 179579224, 808731646, 100306218, 954566271, 356580841, 466003282, 116284942, 419352769, 411035362, 709282956, 988544530, 401942797, 824303323, 136685164, 485562539, 476360880, 6169469, 792285268, 421642166, 253051889, 489973868, 661051486, 844220447, 95345147, 937410910, 844697378, 344927883, 392961646, 726779208, 345943672, 194043970, 716897908, 531732307, 692140302, 360728939, 241438951, 543248842, 252779048, 906001387, 873812569, 806564292, 614926803, 854371719, 944729591, 704488983, 997334774, 455158555, 940902929, 710808171, 485863609, 985063890, 698248703, 486752459, 426160011, 109192100, 499094932, 385725515, 31242176, 621435718, 718140938, 276343347, 534179953, 908484197, 199762307, 973107148, 832072546, 87570597, 495471875, 720869811, 269597676, 419138177, 237842650, 106843777, 192772860, 770537893, 211792627, 732987141, 456464426, 46506032, 75025218, 584535710, 643456182, 27079923, 623902985, 141933109, 267710681, 893975823, 465906313, 88138629, 679281402, 371055671, 960434480, 547940136, 320429482, 434535218, 251744296, 529763793, 900246810, 628246368, 96390103, 481274383, 455473321, 501241242, 167089536, 849256339, 599027161, 405810735, 210061577, 463160890, 10061990, 524651013, 850760846, 618737274, 979784649, 954112094, 821916989, 193095108, 410742287, 18450134, 237759118, 997914862, 904941861, 765951185, 553967968, 146740414, 677810372, 48024280, 851286300, 160483342, 525801780, 870818022, 411277824, 586414978, 649444585, 272072824, 970237135, 800757069, 498018648, 722156915, 505456768, 776551966, 264613074, 373449791, 940276855, 923944318, 163354244, 316331562, 363272787, 824693262, 97603326, 614082692, 794438093, 820849411, 53333112, 353407872, 732958977, 116928302, 27477839, 861007829, 447738159, 994573732, 244774036, 113493374, 802534315, 413178145, 27113795, 618622209, 118840567, 502724302, 467849294, 756857511, 197234971, 133601006, 943741606, 392709016, 779371609, 120766646, 906837496, 700371620, 916278419, 207947315, 231002696, 386497320, 17477115, 30190441, 326057818, 460950359, 361629896, 17479933, 133053932, 116136169, 160548217, 4593453, 529683125, 98131817, 951106411, 423228738, 412029066, 483596876, 583728411, 280056611, 488699043, 390622683, 488549809, 930301666, 676167468, 835445323, 36319384, 953720796, 313494910, 768967600, 867519370, 610014384, 948928316, 692535113, 357199052, 810996551, 364310810, 654463176, 82985682, 435130067, 86194415, 928877539, 905133234, 988021039, 460807710, 830275862, 910197087, 209009357, 881619038, 533761912, 581625288, 708397250, 779179170, 659807311, 389662956, 228644576, 364178886, 30827496, 183634437, 509825800, 879328730, 119587659, 312079724, 733294077, 216421159, 944506217 }
{1,982947822,655793805,245059963,592387517,769012084,904261781,239490929,206181822,211128006,810671745,780524912,876800088,232119343,621174144,56747720,997838034,684342034,246440947,602087817,227301569,546885031,971858521,507548724,952440734,298113696,689139655,455812904,413353773,244422012,584274759,327940526,371026086,750208570,27033547,626440679,363701204,513789240,278811137,654164139,427269962,391752769,701021711,753652673,240252001,639766368,387102545,777981580,364557988,272826517,622021930,849717302,866729266,534599143,831305452,349103922,632224144,488304395,901562885,83700887,455244486,540529488,780328381,463771598,578707017,873518651,847299459,809886164,317800283,906016715,198212435,86036211,852699429,781122778,660885280,701745482,262676822,364287169,758308717,312374482,927431478,785880134,508818357,35864,324388150,189719627,925875941,484184655,864515667,123627552,788654258,86772472,197658651,543614326,823472052,843241512,403791085,560254845,957590496,368272603,369575251,789574659,26555446,325436832,188353576,46841757,523345817,61354594,439468189,239146412,688803284,682120317,601805786,897503629,424828023,397339734,339704073,276410898,965900568,891954302,941358047,176653844,30229523,754095484,171435871,796913089,463544639,943470074,49215327,407587300,824847776,291438029,256697047,303658525,353766678,34721229,636978434,252340077,126910589,393089497,772187836,822120291,562089392,970833965,35271750,294702812,156165210,244989181,176649025,478710385,457424112,582161534,69674708,125981653,897488408,952887543,269901920,36328094,127477671,311667165,652054829,693867204,391508145,692996681,303684021,468871597,597267544,697907329,988347550,136540031,691964802,969819944,809309878,352961378,89431860,269543248,80794525,989109224,945671848,189879944,973251068,454344127,348796041,236407513,997345944,819872010,754610496,965309016,445630866,146383702,186908648,169668940,40744770,928329261,74890161,874412590,84885613,286276876,894377934,426595348,144710843,913324190,329676854,531996407,865066032,351268034,886541039,219655739,898749450,670424916,295367274,225018370,181639544,746794622,170363823,906433734,999173076,202011076,29822967,417128406,106651256,360800179,22628384,441554381,46889669,603138278,758447657,908226392,142722298,513094881,581445094,605772611,231937022,922424764,947069449,193214924,989084004,40813950,422383692,974624939,103794871,50934249,288403348,555026152,987109021,578830323,544106342,39641355,710836554,587469299,366739743,478869780,137801029,934324595,301966060,384124719,710634136,815898497,347697578,688842012,603036841,563958759,902131202,621901058,344002965,379895700,179335983,21078557,917065612,723359625,854931662,942851055,248045291,861100893,645793718,199472612,344337589,326835044,984786146,955241479,734064987,203771603,249940673,473822184,345555762,606507086,57419491,631379354,60198462,373283603,865174351,979424471,723925846,709114236,994312892,958962121,43605639,832560329,945000133,667808308,774633235,606887320,771633583,800844112,93426892,710050132,184541137,816328500,213732630,796709100,438123893,456227453,936233096,968309060,873950044,793611499,194546465,309963117,103958506,886495408,867866009,57114430,68845840,194646084,493184540,880714114,990847634,275603885,969340998,101721833,355023364,105063447,846712526,926374872,8331938,781850714,946587447,515612309,820084366,249685263,76683714,961752192,67638190,816849661,499886987,246832486,804518035,981825223,676108241,528626127,630408603,702228296,511276459,780038521,818355268,241143859,284604315,173122161,671975124,822381868,650933394,146954321,257911632,187693410,220943878,651843164,196135248,14485528,623987462,148380698,36608375,547209903,784178317,750587300,469310855,57055147,341892724,875212789,188759392,78723088,400645629,486068655,577614589,260806976,307276842,675955312,142753598,882561117,685635791,530809489,198580838,41649408,825989445,438651862,335215357,201390111,248669142,714724467,677347982,367232028,676276885,749985535,654417571,867336880,28020462,238712028,619185711,829099100,172900053,251866210,645985672,725357783,495222801,342225529,635192122,5112584,940701733,789558009,32960884,922696241,99955030,290437923,156701843,124459840,244015058,796558302,262817613,486528158,878616935,933268186,197320064,948037855,169851264,7364618,695557922,777156370,861959305,905311859,305881306,510383296,554801596,898957396,561682654,101119472,578191056,159369422,355370441,533063021,476880957,505622639,178049163,626736867,497975129,797745293,566743724,793817012,344842744,469192739,419282180,562941093,547169669,26137646,255859562,946210389,475816440,887685186,231553729,937113120,664013141,708939393,71924863,372460129,881348989,729880428,693443735,375823846,858515488,385658602,182949739,657454066,137511088,285013503,747802865,185791919,233595509,427310276,798081584,353909380,106435047,870601845,82412896,166347206,998303521,638302008,561095485,104405244,681834010,397920468,129523208,377905913,766561840,819956316,585876678,10110278,517452897,954926787,253166286,515471457,958319736,575119413,703009133,242754153,899063372,567096969,469712538,464889881,599210187,2759162,494157592,290660573,688871956,871036143,616836088,820180502,982507277,297685314,415244148,957819248,4816622,539569217,828633966,717923062,271766292,974537443,884550321,388393886,658992724,5361074,143554412,285007677,647264828,297278671,83876881,889305786,160808420,720019941,319210521,288884546,754670435,613139635,796016345,190024659,147001344,194896725,209392235,169165649,658886712,393440851,547033274,469421831,865886233,271515262,142830525,551759384,438495753,877736477,676256449,401051965,701392680,351524849,63406814,951348639,306721814,839759845,995592593,259829238,434529097,195801166,548699852,29924722,268344459,794018956,501443206,371154123,25769598,728646823,746169739,197723375,949927485,133295953,348011377,746827867,418907149,571562829,109749830,729449302,823977099,590487291,540915061,806611164,889958429,562875807,484791388,517944971,813773759,430676942,871310473,181750637,198367856,670039057,40756092,150437705,837815848,667905134,703126731,974122670,145864640,706112598,327342722,141686281,798202694,347453838,204163042,717340160,68405821,409359350,778096367,692039681,748903810,638405606,929039453,375170682,275335986,556845060,393420729,637942596,56961680,784756921,508664990,734760529,984077698,952106731,445923939,504602559,61823808,70294820,239205818,569480834,887876434,555553551,184732062,580213403,894855458,203050650,563149400,792502848,47132224,896230788,299343741,143299643,92517771,487893784,938535986,355129,158767713,228876277,341088919,665401475,286671123,694736817,567352623,683666351,808720264,478785309,790324619,430371152,855684277,911449183,188106437,825209097,382865564,797034969,629729910,773082904,54639794,483628312,896973741,316312286,776952213,322581539,526004172,396035126,559978378,721861899,708301051,71417908,908196636,368574594,310499456,888098164,238803028,326800260,172318948,293110389,373026328,134616241,215860105,684925225,106545180,937571871,419589468,501155336,635734896,306476781,312496012,557097892,95384002,960269008,384398576,32789626,319985207,304771780,527034154,253414930,826707363,294313597,321412136,125950566,13789122,613237743,894786860,166686588,987339800,581793387,765254650,721229905,455039567,317068019,564139643,672672289,244190754,930787513,483242697,882079963,631644591,936886026,760307374,460719943,733134786,55279580,305579030,930142253,124920853,710009854,460879922,62600483,283465323,101736556,760286298,394714553,65084529,626715309,106809342,392946103,550185364,790521963,55250353,129680041,42441489,321789163,565814687,269596912,456103002,545583155,488965309,489564632,483322577,489510525,4992729,580945565,785421735,91502324,732703642,178695144,752836684,199534015,593706669,918190031,134407000,176486065,38246328,400156561,490004385,948519075,995934885,9604532,131053985,318738266,843732963,904966933,872010245,697160892,414484410,213277238,289183345,762200276,543315327,720345861,61234530,735574193,437548663,336219090,680755312,288167849,480218273,233718262,38632346,547105324,58609304,600947336,621343925,961405521,396166473,749041839,455782078,13752692,354352798,551294187,43711261,453321309,292980659,375299123,259714951,562759499,640936271,281736927,189105855,490648334,87747047,431535433,90818711,357213472,799785578,330191116,683064291,477151731,13469106,117253859,210690703,576058754,919917466,911740756,789153950,480782734,381768155,758908521,405344926,438708923,439418603,999236910,400229729,36663436,742864008,10445319,68063028,716446676,698964637,538363568,610072877,4538695,527009070,363069090,778430350,736750551,35447504,275062011,96509610,145180267,715245448,498579850,905134181,659410619,830383838,865433790,679822710,598809097,493613963,424672491,425775041,143962981,600197793,830878698,970503436,502286769,944492518,560575787,583420626,46589617,545453700,500115261,16208043,937079799,844357587,308517412,390145471,475262135,577873571,939183550,616052601,327454075,90211689,228559361,253820767,222415768,886599381,483841266,432060703,580423834,258695400,854690290,888966912,789651548,379160716,558880500,969522036,425307957,312319530,395617522,488415300,130693732,738940967,405852077,181950983,306240480,117221555,430864948,382572670,761971200,812266397,154084379,695474353,209514040,888240987,215702543,521025108,837978640,362498779,830920941,947917255,396880702,438460502,457544312,16569104,314288350,901589153,850024731,176479106,617823934,17597819,576082594,315685524,386829243,95559896,467062137,294086258,546910427,750431773,54456472,712144022,498947270,240801105,745167618,165190637,315843274,631798163,35621037,363284892,314134032,281310723,820828379,642424152,889732800,484799652,834439215,702541397,112634447,806402430,987548238,505111039,193967643,826297272,976196924,494139717,19174142,853955361,894712330,857837914,801611977,976798015,707849182,749094210,543683492,213626751,905395501,740597861,347028935,651508119,193484088,719915527,995128802,1555945,97934710,843418709,702423642,506295485,634174781,843521113,495585700,94983369,224048808,920160210,358521192,613425961,881693621,623349445,875881652,824377693,653628124,342744599,405744998,977797360,751937664,769612577,836409915,458836560,316158092,440481987,437114060,911692183,462556747,40797923,416764264,465214706,815860696,355979447,59005028,663637887,199302434,131914746,226618094,822017634,902623191,432237112,804734996,819371615,485387120,13168286,736338566,124447482,6863478,760069197,706173443,259113450,113295603,894210321,991469939,224494278,122410131,236931340,528121206,19079019,168571374,128292157,829346830,755530172,105003202,634626917,247237007,708288765,459432356,913587356,397272321,570228469,923850698,466960314,455278939,250751959,811681217,519463391,80309374,529291248,196202981,88621916,97098815,172104474,673844162,612756879,606165213,432263076,940034926,81940536,349340799,906545634,434152673,655057897,434762236,661534997,387457164,175234309,551354892,799851513,221179013,852294610,249195444,172353622,434622156,247899021,378359004,768338196,513648738,349642599,234672627,333043002,602595383,15283016,427657615,963242928,466951112,285751291,347748315,967017866,308605574,497286084,510049030,899878404,122515259,831307351,449849794,497069701,975461556,869320009,530232538,984123039,865642118,388815942,918914840,264370838,335333606,221347364,721510421,41704316,347251298,178201304,369527254,700306179,141417691,647569974,216321891,298361959,924177990,365151751,304891553,23474489,37491046,205413457,785177951,72635674,389334881,324051684,445386045,318876867,778313561,305720495,185851138,927057012,652839495,369142986,668335835,849110377,618541383,587034212,982358101,209978705,31837735,713460164,269931616,899014924,523325423,160276832,872307910,601940942,726853040,199261984,391480794,716338388,178495769,278796233,861566229,577059870,441513078,780860163,698586228,900903359,292834364,986279497,400355789,153768702,310473217,375591780,35985643,993698399,235746007,797919203,494933520,590749876,879186560,912049334,533512924,514794046,187484646,456816419,528075441,974867240,80227529,484131197,370059734,204982763,495099951,264217953,273437819,298732802,10455158,730906541,137949596,901136520,849561664,932291069,375751819,417225515,476960839,536902634,473567492,409124588,954044315,348359798,332936147,711036476,907721902,222846007,932578072,954742152,494709629,284887213,726710709,870769074,688581483,595957484,890750475,879862435,729360499,663461755,641616062,967175434,213616232,151403510,376687946,592806152,995104894,555147491,831052334,460841619,512361807,709194877,475165047}
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}
{343366,780613,141094,880512,201208,246097,138660,467699,321414,201682,433105,454918,881120,158446,810331,368677,520194,218852,567513,128756,508144,607245,556686,706832,743290,956126,893477,656915,426871,756515,876724,678031,859339,795203,196283,989967,946274,699456,518564,555291,207476,212853,581250,824434,857217,448216,895252,414159,985364,203127,514880,77030,892226,265276,290906,410213,78761,537259,894428,75317,156211,250273,650925,153273,734802,76244,378525,546380,133379,868823,751716,182468,25037,934548,271720,349107,204353,72081,671029,730466,398841,131630,512260,264085,216794,82595,481719,424716,243988,304260,739288,815933,909278,465918,158879,182877,529532,178265,116139,700246,186107,429301,619717,365071,542449,794383,431522,564521,497215,970363,144287,247358,116752,895977,126021,457058,670233,140641,485444,882532,239193,149705,991161,82187,354200,43483,592553,343770,394089,995889,413957,41550,425449,154747,450087,322588,51200,927045,41553,981238,831836,105588,795570,432901,401019,733127,676898,657517,327391,381527,992546,607437,672537,868249,923806,713598,119168,949720,335916,556241,788473,702909,264973,471059,685614,755721,683241,284491,271321,976535,571476,819256,693560,92,169549,701332,831639,988905,214459,182741,106187,106917,706480,418537,359155,750612,101096,261047,739575,970965,863240,767202,620746,660381,253025,622407,578730,170110,375788,389499,964188,769317,154700,293263,179570,471573,466961,888078,589894,72558,395185,265083,660542,27690,122383,919382,143944,335900,827382,867541,155933,946097,959260,988012,642111,548464,640865,89671,401532,691963,542031,201037,481642,407438,346841,154332,641387,559677,974750,464849,128808,347639,198756,5887,431640,53703,464095,576244,660664,231055,985129,503545,984593,935820,392009,784976,876406,499991,812783,42230,109189,487584,882739,413728,251427,650803,75227,135231,132866,356212,916179,142014,165469,442852,580660,134912,897144,921755,139263,118244,961954,670413,776161,654979,692084,779208,391151,542638,724304,555889,522728,194162,480164,949836,352120,77973,584487,235763,41073,332056,761816,804379,139153,923636,609668,401108,446656,706079,880639,890695,549008,488262,503911,593336,235709,300370,91301,4803,546285,179749,167341,991520,627823,677276,380922,505120,177469,564620,804117,580975,508923,842310,461581,721746,642743,902612,847102,666792,949097,598715,477260,562155,219442,17594,517926,912877,264542,791623,872133,612637,510756,219798,646636,546625,111010,752339,672615,160443,684323,531364,860494,331463,450650,888362,51776,824952,72742,90238,860778,42048,366734,504182,686720,801126,320452,471519,769792,335247,917540,220162,257716,759863,739891,183392,976045,9847,490978,972984,635850,150335,25225,145598,750705,773594,560366,746403,268050,76270,990014,51281,321449,899515,593808,201645,531706,847577,120807,129301,673365,952060,628590,392354,793233,768241,354875,982373,962706,641440,684750,638762,266372,709385,263057,308985,809695,153673,172951,95378,80995,901076,624222,795502,385435,396794,179919,704771,981788,495203,732410,989822,791492,703509,790045,519239,325757,67947,139164,537666,643769,565020,610375,119114,343541,330172,390680,622134,421176,867443,955380,236822,402322,308937,851303,769013,108639,398300,724458,828374,780932,912166,339934,142456,240558,810553,686736,482835,404055,979588,758645,849818,99714,481165,307692,179064,16892,990198,607041,383701,83099,487802,181542,87505,309120,369262,754425,585733,502550,46018,527490,142342,178642,78015,654195,230883,351475,979913,399016,685924,163776,367132,369063,5835,883855,702865,831903,979604,649146,53527,111338,747830,278633,761531,132684,271904,361037,8802,343283,564351,75616,357772,340470,214709,982951,411665,850905,16736,881458,512677,929541,125594,887320,227157,643409,377077,740989,127304,18045,177917,79182,755904,670003,14136,897921,313433,564999,856678,115416,327239,791478,365122,310940,958041,177192,340096,967971,819322,896686,683343,482252,832876,848134,952151,147199,18189,637524,949689,615215,143955,247209,185939,788633,880913,603646,43323,818180,417586,466359,537793,735361,652858,963041,752303,302315,130634,871733,8266,315877,260506,680597,526736,39264,788863,193100,382585,140436,540836,559312,264311,757571,250066,403777,496056,390331,437866,95849,256288,518226,508710,167611,796690,148586,18206,457045,423718,71852,160511,663936,439793,184526,439699,16556,132034,463375,21821,890615,870496,541047,41659,892516,906575,926618,733284,416166,714186,504019,628842,987348,856967,498507,629847,422900,829240,77169,22993,777842,96774,464192,644631,884711,796438,374910,565123,131156,257221,320953,943559,848806,892205,641674,769714,907761,835808,688851,28970,406839,594601,601090,301105,310304,24208,88398,234595,262785,829268,807414,567923,670551,981744,656903,124659,963210,876888,738708,913034,375213,235003,269373,330493,151674,858496,431530,920361,44503,551947,975567,144644,523925,396598,7656,172321,791597,909146,640763,860266,267331,757446,445082,943078,582181,256771,861920,106930,239499,167064,522161,746569,937046,696514,977916,625022,927698,479032,447162,900927,647541,682415,59694,340881,382112,563025,40164,926680,227034,117958,113780,188301,226458,850285,74237,819911,157180,733921,479660,502389,713544,794038,548149,236320,877615,100538,886870,722283,252879,193910,657624,467284,607148,341805,436239,715826,54327,433242,815703,796406,144713,385651,425558,975596,671205,163562,172543,597817,571195,461543,222155,322972,730529,285457,818239,506543,3866,780804,288490,78756,310225,600026,540709,313098,902812,591396,926483,660615,836219,663472,580384,367005,437399,833346,875908,889447,726853,339484,28287,621594,153987,844728,878172,445126,340855,716234,952943,297557,162037,249728,344281,208136,34615,657155,193600,497278,919780,991606,398361,734767,430603,550771,777824,933290,349478,416595,726428,115293,418714,793828,413854,302539,530419,924082,210879,15316,792682,856960,502887,950002,950944,438478,973186,531768,465058,437906,765386,644243,218277,221569,161538,314379,551880,875077,119351,530112,334806,408133,847743,515246,848835,355746,228219,594091,17900,623542,46550,922662,215513,480660,647237,129191,691709,258893,577990,165395,680433,493863,146019,244007,206334,536933,815150,725690,754194,932292,910660,513853,203719,653433,74124,944956,629153,196725,977655,822043,476494,450851,332287,77083,207397,253030,312105,583892,399209,618077,675333,962363,991686,445473,787818,45211,618128,33155,482812,733213,326728,503696,412904,916738,820824,697166,76196,153957,349075,146814,610993,451067,964536,938138,999259,492948,874798,362773,578101,677913,493639,238496,880286,74893,455870,508257,103552,97038,863227,394171,402189,284308,412747,794378,878467,704750,26538,329637,555495,942473,299515,430813,807563,656746,846923,535162,311305,407152,677971,571906,24198,407061,579189,865332,794546,320876,908284,406278,480709,949474,861214,897516,352769,320894,581307,628114,621172,939170,494940,69534,695476,156425,714998,177265,488866,317577,225255,340772,437290,104592,663605,104269,909823,156201,315668,893817,765537,872502,283742,607473,68568,404340,583706,421175,52663,814908,753527,513160,375644,259966,946191,805017,261420,233221,141415,961883,881049,361527,206187,287032,57885,712660,84724,568469,776894,876276,520771,318416,483722,430283,292421,978946,887130,457383,630798,157820,360912,740077,32480,226123,592986,756449,262563,83701,276910,873180,452652,607418,866510,499862,687864,579798,196099,383003,407855,941051,890084,779415}
Returns: {824088886, 94136420, 788555372, 849156134, 931414609, 343109976, 538123918, 478521958, 51712066, 182788313, 353892109, 368859448, 929061871, 840914415, 952183644, 390579471, 634037389, 811479331, 455581025, 108730193, 435270229, 166623346, 472014783, 451218225, 898118321, 839462763, 407061533, 158057316, 875703978, 312298792, 866136822, 649685310, 877570760, 883787834, 500433839, 647958497, 51078605, 500549171, 407685365, 610249490, 634502915, 718370196, 43916385, 521239095, 364573387, 59848217, 781626076, 893633731, 976145538, 564758381, 885591242, 444085583, 775480541, 167001994, 72080899, 873888669, 338494314, 458424887, 480670267, 961548228, 662646941, 990057123, 452495420, 789297200, 468655831, 536960526, 482712179, 328482626, 662534908, 428799636, 286201316, 733774454, 505209171, 925341980, 660115060, 740524397, 499576025, 121631162, 655483762, 210383112, 477818888, 665185839, 591260436, 944402678, 137751230, 744351639, 335852825, 839374016, 70349204, 136586813, 951375207, 359799361, 205280210, 153030440, 647014290, 707737357, 558357305, 390868338, 197062005, 869134965, 482329971, 797754347, 705964723, 462823046, 311805100, 95684017, 840724690, 227780241, 898071459, 305168824, 137001074, 95594713, 910165541, 704498583, 283708659, 169095454, 212281248, 424888637, 740871896, 331023108, 838612637, 813124781, 983556106, 656981497, 37543211, 182243247, 745371142, 247888337, 538950641, 66420830, 147645326, 983533140, 374781620, 923820086, 600181432, 970084593, 127207591, 655891189, 332299241, 788468293, 648322479, 370119258, 227791770, 341547574, 247017817, 669028398, 776519681, 187977620, 380425744, 850903268, 209572145, 868604895, 683824667, 332232151, 983111045, 69866438, 305202230, 323491178, 952543696, 73448602, 207755164, 586636955, 971772952, 987127153, 725601478, 87140221, 102026288, 983168172, 677077096, 66519025, 353079222, 431824303, 662750257, 358446958, 84655881, 204496060, 829090081, 840594971, 252180045, 661866348, 787367009, 348184195, 829753722, 232894061, 14115400, 982340064, 326440198, 899272690, 838673083, 869980430, 828547131, 282804290, 211446561, 309050224, 570006336, 867389258, 966732725, 147895949, 394871105, 461718028, 548952268, 212631665, 892971843, 791575304, 555308834, 370885521, 236049399, 114361881, 112379735, 109309946, 653926759, 821477856, 827123528, 714174143, 938255155, 431730204, 436004782, 590021510, 14852534, 877956688, 900530072, 888197634, 63870715, 964764016, 468878060, 443405624, 872737091, 16557315, 682091773, 591196373, 357119656, 522807424, 872318219, 507548140, 323761589, 988970008, 701213318, 130822023, 560476232, 412731130, 125121427, 937142094, 181723617, 526057569, 457985364, 126053481, 642867782, 842630385, 777561315, 437466615, 178845815, 11367110, 740533503, 573693226, 126301923, 161687732, 957523380, 147646355, 466266012, 185504093, 205472627, 520481689, 556851778, 219005519, 734793858, 316133747, 74514773, 76175017, 258212584, 230270407, 965459334, 329663145, 583882545, 493446742, 501944693, 262958030, 578702552, 562863971, 690562735, 863401964, 149013340, 955371219, 789068972, 235672646, 863021701, 766713441, 551029704, 554370256, 173361019, 114555554, 5848462, 147441235, 152919001, 602321580, 993459449, 638772355, 591264837, 161309183, 745413223, 44194016, 225182712, 761068766, 938789033, 930686676, 368502789, 250765578, 720336824, 334605093, 890271647, 5804137, 984382483, 476519090, 252065655, 474188613, 479141815, 436963447, 170441631, 967766194, 31771007, 567447362, 109175653, 220595012, 252379188, 638071774, 467382019, 220240047, 502269588, 825525527, 25935704, 998635938, 335289902, 877047550, 263126390, 32394502, 454604798, 524302901, 640513827, 182609355, 440010402, 40243667, 776911364, 799098166, 195421301, 551918449, 54587327, 127301229, 155119845, 441605631, 807932516, 697315813, 997977420, 159658518, 92131679, 267923138, 807087568, 461522189, 55046827, 828703449, 936225292, 336050543, 464144685, 1976101, 238087467, 6899067, 157109355, 743014356, 229669469, 324628862, 836961857, 512600250, 292615896, 784520326, 672516017, 980265675, 142717563, 867567561, 878288614, 904731331, 831536741, 547172595, 59598098, 786529778, 416633864, 542996284, 453837235, 794770351, 525959059, 195076089, 79313987, 903493414, 147194623, 309301750, 7523965, 350040458, 750981520, 319834251, 787394082, 981512641, 620659035, 640617470, 898671135, 696858772, 345344812, 171410321, 969868554, 108439442, 296590466, 256204369, 78835479, 503617062, 653868588, 827137674, 60115383, 464694040, 112877451, 956392577, 349561155, 769289229, 706984586, 863090443, 435888795, 24047563, 635920849, 465344281, 84411401, 139377770, 688654523, 823364376, 202094017, 503810555, 438569360, 150925633, 827261183, 423958238, 752238358, 203702613, 633760063, 290622576, 846615352, 679934154, 74218379, 276306882, 482559387, 211376362, 78687785, 124063830, 310460074, 916612227, 686446764, 497485910, 899874211, 609331442, 459477098, 108007823, 68032750, 875647209, 788485983, 757007787, 951748754, 820715722, 880172263, 13698210, 898353849, 997935403, 30667822, 625054455, 285531800, 142614304, 131268781, 612766736, 921574773, 625857411, 814409313, 485948000, 302564348, 718044827, 433828170, 80712692, 88861871, 911101113, 257035604, 847606806, 767525300, 19436584, 700385718, 84418613, 913099525, 548044783, 333049435, 4392876, 402303834, 948337784, 676251522, 67396918, 829183242, 910152738, 384341634, 811534838, 642639746, 430415016, 58312420, 677211931, 105528822, 622356205, 737595391, 110357778, 698856419, 492917518, 613518763, 526045222, 627988251, 511073946, 624513374, 752859017, 601608881, 451925244, 342205990, 149271275, 706024968, 231937994, 645428052, 772457724, 873226800, 45978830, 77915640, 573106481, 565416732, 626985148, 489234921, 114821895, 592951160, 198974084, 355612330, 286167090, 832014697, 230403140, 230197659, 888070331, 493135604, 691794413, 92936382, 321513164, 757210441, 826054553, 704588382, 23628086, 93170675, 561130499, 826813584, 337361210, 488357441, 739580168, 430184082, 194780378, 861021797, 539140499, 174159712, 848138895, 187743453, 643508966, 182242381, 121669385, 45503401, 930411792, 842488692, 845505307, 178137253, 476189622, 734205596, 836493045, 996477596, 532192398, 186854454, 496190664, 133295914, 797243870, 737374443, 293176858, 655557803, 922432738, 887612529, 273611403, 841496626, 19042123, 173010534, 137582866, 999426922, 69250474, 841155000, 396600379, 391083951, 513812496, 675006594, 260870170, 334131236, 668638224, 540315645, 214967713, 792035658, 159598909, 262381153, 622004957, 689472571, 499738991, 163838060, 206875727, 610839791, 677857882, 446459665, 5348274, 86148624, 140805259, 897041540, 396520049, 334864021, 639171010, 978090452, 545626835, 476928377, 315209035, 564344517, 141637957, 517671420, 356200546, 917119765, 285852634, 395648408, 615545367, 301056349, 709515271, 535644805, 985758348, 631009227, 159645133, 574960749, 147073182, 563416957, 748785289, 740480332, 110747110, 611179185, 637025385, 112392077, 857815003, 849707705, 657559053, 551576506, 819605442, 643217563, 82614458, 829875088, 774205689, 604510320, 390902498, 899552902, 67038771, 399681263, 207038760, 762653434, 311742524, 724487216, 902121664, 968308713, 407328636, 510296863, 963898655, 104449430, 192949635, 602436125, 417205489, 61030725, 278527171, 415792577, 185207858, 229001822, 227438091, 493152451, 264537458, 355982558, 700504830, 417721122, 614414711, 460795656, 859469502, 907955598, 686039133, 219402474, 392170631, 595001135, 385926189, 539081299, 953670749, 910809741, 791152063, 682148623, 409265208, 190302462, 762081958, 457023147, 672627601, 634936943, 736401521, 821942971, 304204960, 466659538, 77446494, 946038316, 985784014, 691637360, 7300365, 448345010, 12126429, 284819789, 158340175, 658716440, 244064627, 19515973, 484540489, 530115514, 785268525, 622704295, 903453609, 358525114, 670918867, 888985288, 505630280, 598201704, 972151738, 612209259, 793400860, 829694846, 588643623, 631102271, 742289631, 944393355, 368557719, 62733081, 404287970, 324688275, 708059422, 87096845, 698893258, 973288353, 106992396, 139397666, 773453629, 775970910, 545068360, 268159577, 182392013, 836531157, 902295816, 230765005, 546672822, 787792425, 980955376, 397951223, 95968734, 642117626, 960145432, 847352888, 49548776, 918699465, 480771920, 313779703, 695837405, 617345015, 55802897, 369110093, 187314401, 569717558, 870551914, 357385379, 94469486, 470851598, 78584657, 957717085, 488508747, 632402181, 939145302, 798691996, 71765120, 616558110, 6367236, 660701572, 994612871, 931168213, 230324420, 377158535, 178620648, 287879881, 502359196, 463415422, 398215924, 271769110, 915027385, 968432377, 27676371, 731836397, 91329550, 930778313, 986759019, 701466007, 551226725, 358760554, 692850466, 268585918, 552093436, 549091109, 475795843, 150382511, 461864753, 830526661, 179832928, 799358055, 556857477, 96704200, 60491361, 895481085, 889937775, 898307321, 149595085, 283973627, 506524260, 918928906, 628243186, 963428418, 699397195, 492287383, 95986896, 225791869, 118740141, 486046606, 780767641, 163148470, 324818963, 448908600, 544753571, 664711364, 556741835, 595940948, 429343519, 78685287, 97402588, 689341863, 649896033, 348944308, 297817807, 18065449, 558217946, 318651374, 64604634, 875343182, 44841437, 619803478, 972800368, 455282857, 667378181, 590839235, 329451458, 970418576, 241759864, 512047804, 4390398, 42508298, 330154634, 249244915, 690521903, 715087222, 830316377, 382467671, 576955900, 381905937, 553593021, 166026297, 443833188, 384153259, 780563595, 300786206, 590028606, 279261345, 848375152, 951856892, 106537279, 414277186, 994526697, 74804653, 83191549, 408028248, 120811804, 109683423, 899459792, 604177001, 526809742, 488363868, 534233598, 137218602, 482409022, 553031929, 446258962, 792117465, 873734846, 28066695, 370585379, 995758899, 275321903, 774972004, 31862040, 173141985, 181774359, 374823919, 316216935, 967216684, 771085762, 669148600, 279565954, 662995590, 640192579, 562290986, 771250802, 594180860, 365723004, 925007536, 206364508, 665192024, 796173643, 501687030, 262470482, 388694387, 686039142, 699790966, 964237452, 819530938, 416785822, 305902432, 695902158, 557630673, 484259309, 880887166, 725328905, 715812819, 492836301, 804108238, 451423970, 252636620, 729080271, 518532028, 461634490, 346368166, 466105229, 514235605, 986520067, 284604054, 977270117, 65754311, 73310534, 889795899, 990455051, 624242483, 949592880, 809376611, 697900583, 934934012, 131059503, 101417107, 454781202, 284712445, 855293166, 816146452, 827457060, 70717895, 343560307, 1402863, 426761712, 446710383, 648285117, 528295443, 661790977, 58797431, 312403497, 760068731, 254594382, 839554322, 318104700, 108205811, 230069759, 345676006, 620456905, 303626308, 570313677, 1406489, 731349110, 966423325, 148216213, 266482827, 325977809, 685050509, 463936310, 45253636, 930985650, 78047457, 317092456, 635183921, 818448435, 237951359, 330748777, 164106733, 255265693, 920426701, 73253361, 474330104, 262873700, 585741870, 360185966, 465317740, 522598352, 942929905, 61219535, 302684541, 351796338, 124463211, 314266326, 737407563, 990898473, 395576194, 151280551, 130494568, 914489965, 890114946, 422921403, 238997438, 395700814, 266176491, 745578685, 147390147, 224826956, 585833254, 652414883, 84938512, 167045660, 38413692, 334943546, 559805360, 90372947, 286878840, 32383346, 623036075, 83936080, 565049457, 540020729, 977063791, 129700702, 502937486, 749842159, 897078034, 768980706, 691674581, 445142024, 772097389, 991645470, 970249684, 37353617, 338498334, 799894868, 394708912, 860952176, 21442569, 198460671, 880789228, 353901752, 551737871, 720039555, 563031999, 126156229, 981324534, 131343041, 947680282, 75295848 }
{1,116299874,109416419,406101976,66307239,638483533,747836970,598686219,147516982,173279850,869796816,497999828,209937769,640724304,812676633,467031251,398343444,372912537,835561302,313317995,824199597,345398250,681048800,401338580,403361206,542070522,340813760,568058311,800666928,959257892,644925954,9475382,213824547,79560970,291734740,462142945,46359847,149759441,689574621,144961573,39854446,692292860,306211349,767315515,783945142,206114821,540591957,561045136,760565876,51402391,612278789,862234201,457642047,162329374,812468051,889547976,52460254,278610609,433751040,112759308,487278534,157834028,870080729,622031563,381966736,504206929,366580955,3645539,971692435,978817987,58570337,128124026,250524201,71298814,565109856,85649584,680591594,929518045,872671721,35308253,892649379,158688494,719948598,65226914,15686137,544411930,588012000,280495101,731267506,434557476,341899780,606966416,761026636,278727819,912842388,498489622,842941762,834661995,595061958,876452121,60381292,960437996,303345752,654771481,494665332,379119082,151314228,361660332,400228839,824177184,834306801,467465581,438137257,992604243,337984086,741180255,690195517,904814235,170234130,655117347,566942371,835540452,140423551,99794341,699852957,197285977,199187722,648147212,610507347,107694324,388822228,552093001,377335663,119338897,798896947,314118322,380996663,949504962,125209314,453243277,351208610,359018290,31012336,651562895,291487326,831087206,67114781,470367281,250508636,903132512,914165826,88250081,66326602,133759676,311803758,528428077,886601159,368378448,829080373,942590608,515668889,435148952,928911076,504871447,258040973,163055136,290497418,330945662,248991615,823877342,180286984,568254918,504334749,624539140,988645238,927751966,81258354,770570556,679821215,754677581,723991598,439943654,249172311,143466332,112267072,341794161,230868881,466528462,372340990,113365708,217000253,378072117,491689635,625610802,381172680,979828004,368222558,445236238,700083581,410085894,140956230,406038987,407571312,552426213,970692096,527143466,467835159,96887107,549713454,410287796,360600690,454588880,797015280,51574570,994673389,169321250,949457876,665312205,301453088,27808461,482800794,525543311,204543904,941518420,739776143,890208553,154841307,481772544,945520869,795388587,598382434,322763342,405779167,195255189,829846116,775577330,689081638,861195514,364563709,217749392,572380367,303187656,412654913,566986053,759163244,770253742,470258399,962845273,10878526,218053813,428390122,488815704,486100072,842127926,815758906,249792667,675104133,484962023,292694290,292871906,368772723,46403509,192883907,753673508,88080808,404727055,278903241,419068229,709726993,731659618,933735557,109186574,169788606,777073944,668957479,867579186,725088914,608741839,273118164,907711186,305405466,856136603,988277979,397733577,399775413,93024984,466033568,834317464,665948697,365585067,201489806,855274005,508646083,320626304,263121293,582758142,289715523,775259674,349499025,90542203,692499640,70527565,962293540,791771101,228953165,525335409,773635060,203641111,337472303,708072965,337088548,300537364,703859750,16848692,197567113,57447117,661807291,429122604,366145681,51701328,41007357,293781036,346064883,571000802,935198244,456837008,841640332,818925163,917630405,620055143,212615018,761916325,398054508,287248004,739749107,467178517,521107036,203349658,773877288,797567463,206443121,870515664,856611250,389862343,171432527,645447361,940717519,510764678,639738962,775665874,47549617,569036676,1094564,768405488,938405974,273189209,93931434,162792728,171430552,281749442,784288056,841859751,709431858,710162580,667249578,659359628,618993784,398287551,864103028,378002533,9451950,450438525,711369000,911425129,7380679,94774629,55753887,274104215,440696497,509149717,341744034,437351560,575710552,123907006,374638525,552171356,141078629,208746468,772869416,342068247,745875006,272895176,79107014,963638899,47754970,174121434,240069917,736229469,745863256,715530306,763740794,125147773,178582295,861079950,336817772,307730106,82638182,13265617,744138113,350653709,876455908,370058597,343431066,619691050,279516371,70223089,505300372,634301328,924094682,464363561,287602520,234233364,70467024,167253023,348482677,112837163,128771619,139217972,349899176,173818594,679610746,886088128,34638381,220304644,60932091,666025512,796596005,325470646,876777861,695398697,29498356,157068661,845072460,998396815,331611325,805908167,647621794,570857024,498302728,320156153,625484418,480086002,142668856,369307768,829204087,631982072,553320559,453497364,981016793,883317139,747464964,831630738,956760299,562274455,926782342,835991042,783457812,871018310,138122431,976262245,641377466,32833096,352908088,824584674,3167762,428435156,263291178,191413751,902150968,604118644,127913040,302307279,392671053,364352548,294793723,540339916,685489106,378219924,523285939,169130115,365398053,122181895,505722021,652267229,203732243,531451206,425801314,667864291,783041699,817112101,303119642,592690701,694660844,444471194,498947890,357941721,64046651,73459117,827237410,834579964,136011288,710726802,958267681,532156794,461882054,487927314,838060515,258585638,944601287,968299019,495073895,742217356,605874400,642106288,266344799,190890642,762734851,641275242,11463140,594850954,207397209,477993966,610905325,535873153,597555592,832407549,788812685,654829154,725771570,658691326,870584841,924701373,566650549,851667176,98730816,872956961,815217827,991982981,172683137,818647992,304747862,110439795,201404806,960503239,66513614,387959850,745592486,246707049,783438101,541563234,644317979,236440126,564925344,319583951,496649489,69051391,669192395,912646125,814309106,834672666,303795540,810711078,185525949,744434084,529767441,56458019,745066885,48400172,11337369,648546051,822392164,150863236,516302868,950912395,791662820,768229794,506428605,774343176,248286114,422633620,194907955,932694234,924244971,615574308,960544135,65492727,154444412,992943902,7342043,934440612,518112490,799768750,763803567,43738280,666909441,619380176,572220686,842051605,856909671,719466394,432377093,695634926,163017702,795690269,859844972,976432019,196602653,790279843,373327450,348230284,362948632,135043967,31550043,82462844,766100133,76095411,778865022,513369759,996189302,192656570,254623414,536454951,121438978,109960566,31134092,142267149,416630381,157013508,306218323,911303311,502340250,731263805,106261431,736198779,420633328,669578323,476827496,983034150,359426244,869077952,904069572,48662024,838281805,341176728,770998912,102664245,385474149,39677880,342161390,771294627,272252471,61140765,732967036,899704516,409186327,705100410,350488466,700202054,73528344,62342578,831267108,296168218,445367626,627427534,994830823,10770219,519255128,275154073,896844069,286926018,609955689,663820296,478850725,245542879,702001679,994435183,487237713,321301698,134687903,860295839,659886335,727706042,575561838,564004010,357078934,211651869,992217657,82846713,344630733,944064047,348700133,414881262,496195840,636013416,291555237,691563619,129753133,692036658,351754696,878767073,912453119,638584592,981084912,573599966,376599383,464510463,617405128,531103950,664611996,505047282,826958602,792369528,64370041,202564072,807677131,45325764,404933889,487354234,521276451,796425397,641233319,616141751,635770402,355912297,426062150,546715468,30456787,523381425,416378221,63773603,645772066,998351934,215038556,691030176,818895755,893246136,420449435,357177354,346524451,457647106,325589838,215670066,106460888,518169323,29296337,488694672,321011555,503792057,33167637,291974473,363295751,451764065,703127551,43716323,358741628,303294058,287864931,397124047,426084357,13989653,183350431,837048189,889113889,569706503,238905304,142326452,815161745,652146198,9972759,238575780,539713631,498331535,517292695,730087538,70281951,240131674,267423751,112179944,170021213,575416971,692556125,805366822,664457649,4496144,6262282,9680191,843634412,122256607,447945272,227885996,412047600,831060729,485468668,57271267,202192628,525044026,272081244,800056106,403725468,319032916,412724918,178292047,791374279,252859521,514919912,285853772,344894506,451260045,307776275,221756090,336125486,737815589,895150055,596923691,560546298,191484422,85912556,129549212,617220118,434517432,107944967,144405670,690212075,511459116,945518137,324970627,647435734,416483711,426769919,245976545,579666030,778818914,167269115,803538198,998211503,32176643,284308598,292471181,4932505,406357723,961132908,984330375,695772782,806868511,543701977,705721272,40503341,13493077,309751684,772805881,1822436,60946469,993435963,330951367,723863889,726040879,274308851,17911419,362242320,926494601,344522908,188921813,210848186,147740788,396620907,421739696,930980614,931199429,434253278,376385944,384839808,651534259,962065162,991804432,998417244,909461056,801605633,653590536,314622906,420864990,680607760,580815920,931939171,214684927,380112161,122819574,44383362,591916316,676719793,522005955,207384538,935546088,303083767,383450053,441219936,891102138,567767274,843012755,526560970,858919035,843522212,909030264,258087381,192388136,95246564,424550,769602074,671676828,554978602,198779516,809776878,793813465,371445511,637463880,127271679,368578442,702174620,751538998,561281813,373769742,528862414,581623644,231732477,91509629,203510036,399476253,189260342,284201712,858518722,603613513,94188719,620475211,199468357,860529011,993233394,117968195,20736444,723980333,819256521,960420924,755173583,985124545,916135689,796728601,460445446,386649904,994391217,832799752,160957710,561936962,678372557,639676964,845494163,681758942,6835620,155997392,236692504,774643656,546143353,369896011,737539322,223848965,55386357,960674412,331493631,702950973,288395086,187825249,505484958,306081124,683920478,12149848,411012890,86641126,25515089,618586529,938000787,686803703,600118839,544116235,256796937,239791898,376515225,680704993,780575701,725669873,676814620,913794103,29574278,891840976,801006355,763362636,311777873,672032075,138345925,519927550,686939926,676034183,494422551,595746001,760031591,86479108,998437663,39964207,594093391,56877724,326570682,580149004,599485172,325344026,139172158,858757594,840427884,178084145,788944960,477794504,326480692,659482210,826019657,194322867,927750927,775290549,10220939,815377476,574301987,285519425,4886295,282992470,423518844,939975235,23921813,158129248,371519956,983063225,723914683,495430805,673771075,132220565,528345045,901760489,249936686,656415436,886693975,710229231,929986005,679852137,679835292,921408387,700542035,526595639,669401022,861496593,231849681,30819818,222293469,320767502,553207373,412941850,282298942,557999922,695827770,833612183,815968360,343962650,84053126,915800362,318456340,562105274,956653593,36028130,728169094,818884615,658228673,406154894,623507226,476829500,252332996,642148921,210575370,231827474,388464074,830861656,988369006,830309148,415374228,532216376,369798621,952563114,293948339,50596234,260486423,487167912,878193891,263120042,594911104,268473295,733242434,137787653,395119039,759408325,523788372,740738929,83171814,156184536,126008632,864839309,276638481,98772952,158482392,72358724,754514644,483237283,476472484,294851201,570279092,444496671,710148350,193461084,791059347,998646200,714676467,796343527,698739195,766279396,63588892,500321635,490982010,909939693,699693510,363590082,815426180,624036506,118348360,520390567,409982693,413441273,961489942,839149463,459826956,161661657,596468180,377441082,252174849,824590693,207123680,538997899,108772855,523049536,634414033,267760522,355130199,850628158,822340672,46788326,288967355,761224712,458326199,664070269,736195362,803407045,557243320,418769268,527342699,345459518,981343578,867762847,480037353,171660546,269596262,145790524,610514752,947574322,398622475,953402544,580786543,567064977,426423188,777421291,355195124,704572129,419762736,325482702,252777073,444715789,491509461,428593767,969495589,578067259,250077706,249737989,637363688,242247119,496659898,893106224,785331809,806473041,538683692,673332110,961547187,699169168,305429450,924918575,267566035,228314783,951473957,724207084,309817285,241384839,257102412,39874091,327619566,446062099,736788503,54167701,492157473,933879793,970682883,732658991,485347933,191639143,102601262,740429435,344290077,319206841,478745888,262331452,40314600,606923941,794262760,246782178,675744542,771105682,286060948,876227240,897464306,364694276,284652742,987530994,956786956,469262949,952149418,96258584,459294835,819011314,423003636,203600526,970531965,368669193,130503820,194959268,261662889,623687367,16114313,959617197,366771382,717321502,43493281,823389932,16944034,175982579,836227308,469452933,462798913,409475226}
{3,1,1,2,3,2,1,1,1,2,1,1,1,1,2,2,2,1,3,1,1,1,3,1,1,2,2,2,1,1,1,1,1,2,3,1,1,1,1,1,1,2,2,2,1,2,2,1,1,1,1,1,2,1,3,1,2,2,1,1,2,1,2,1,1,1,1,1,1,2,1,3,1,1,2,3,1,2,1,1,2,1,1,1,1,2,1,1,1,1,1,3,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,1,2,1,1,2,2,1,1,2,1,1,1,1,1,3,1,3,2,2,1,1,3,1,2,1,1,1,1,1,2,1,1,1,1,1,1,1,1,3,1,2,1,1,1,2,1,1,1,1,1,1,2,1,1,2,1,1,2,1,1,3,2,3,1,1,1,1,1,1,1,1,1,1,1,2,2,1,3,3,1,1,1,1,1,3,2,1,1,1,3,1,1,2,1,1,1,1,3,1,1,1,2,1,1,1,2,3,1,1,3,1,2,1,2,2,1,1,1,1,2,1,2,1,1,1,1,1,2,1,3,1,1,3,3,3,1,1,2,2,1,1,1,2,1,2,1,1,1,3,2,1,1,2,1,1,2,1,2,3,1,2,1,2,3,1,3,2,1,3,1,1,2,2,1,2,2,1,1,1,1,1,1,1,1,1,1,3,1,1,1,1,1,2,1,2,2,1,1,1,1,2,2,2,1,1,2,3,1,1,3,2,1,1,1,1,1,1,1,2,3,1,1,1,1,2,1,1,1,2,1,1,2,1,1,1,1,1,1,2,3,1,1,1,2,2,2,1,1,3,1,2,3,1,2,2,2,2,1,2,1,2,2,1,1,1,1,3,1,3,1,1,1,1,2,1,1,3,2,2,1,1,1,1,2,1,2,2,2,3,1,1,1,3,1,1,2,1,1,1,1,2,2,3,1,1,1,2,1,1,1,1,1,1,1,1,1,3,2,1,1,2,2,2,2,1,1,1,3,1,1,3,1,2,1,1,2,1,1,1,1,1,2,1,1,2,2,1,1,1,2,3,1,1,2,1,1,1,1,1,2,1,2,1,1,1,1,2,1,1,1,1,3,1,1,1,1,1,2,3,3,2,2,1,1,1,1,3,1,1,1,1,1,2,2,1,1,2,1,1,1,1,2,2,2,1,2,3,1,1,1,1,1,2,3,2,3,1,1,1,1,1,2,1,1,1,1,2,1,3,2,1,1,3,2,1,2,1,1,1,1,1,1,1,1,1,1,2,2,1,2,1,1,3,1,2,1,1,1,1,3,1,1,2,1,3,1,3,3,2,1,1,1,1,2,2,2,1,1,3,2,3,1,1,1,1,1,2,3,1,1,1,2,2,1,1,1,1,1,3,1,1,1,1,2,2,1,1,2,2,1,1,2,1,1,2,1,1,3,2,2,1,3,1,1,1,1,2,1,1,1,1,1,2,2,1,1,2,3,1,1,2,1,1,1,1,3,3,1,1,1,1,1,1,2,2,2,1,1,2,1,1,2,1,1,1,1,3,2,2,2,2,2,1,1,1,1,2,1,3,1,1,1,1,1,2,1,1,1,1,2,1,3,3,2,1,1,1,3,3,1,1,2,2,1,1,3,2,1,2,1,1,1,1,1,1,1,1,3,1,3,2,2,2,1,1,1,1,2,1,1,1,3,2,1,1,1,1,1,1,1,1,1,2,3,2,1,1,2,1,2,1,2,1,2,3,1,1,1,1,3,3,2,3,1,1,1,1,1,3,2,1,2,1,1,2,1,3,1,2,1,2,1,1,2,1,1,1,1,2,2,2,2,1,1,1,1,2,1,3,1,1,1,1,1,1,1,1,3,2,1,2,3,1,3,1,1,3,1,1,2,2,1,1,1,1,1,1,1,1,2,2,3,1,2,3,3,1,2,1,1,2,2,1,1,1,2,2,2,1,1,1,1,1,2,1,1,2,1,3,1,1,1,2,1,1,1,1,3,1,1,2,1,1,1,1,1,2,2,2,1,3,1,1,1,1,1,1,1,1,3,2,1,1,3,1,1,1,1,1,1,3,1,1,1,1,3,2,2,1,2,2,3,1,1,1,1,3,2,1,1,1,1,1,3,3,1,1,1,2,1,1,1,1,2,2,2,1,1,1,1,1,1,2,1,3,1,1,1,1,1,3,1,1,2,1,1,1,3,1,2,1,1,1,1,1,2,1,1,1,1,1,1,1,3,2,1,1,1,1,1,1,1,1,1,1,1,3,2,1,1,1,3,1,3,1,2,2,1,1,1,2,1,3,1,1,3,1,2,2,1,2,1,1,2,1,2,1,1,2,2,1,1,1,1,1,1,2,1,1,1,1,1,1,1,3,3,2,1,2,1,2,3,2,1,1,1,1,3,2,1,1,1,1,1,1,2,1,1,2,2,1,2,1,1,1,1,1,1,3,1,1}
{939389,908120,986592,863891,364050,938158,822531,710542,71603,376816,955494,772274,776581,490810,779025,476103,38724,560914,57222,520928,474184,383463,465089,51546,304387,369427,388409,304541,198720,716187,717022,434647,1571,524075,914779,297734,699756,691612,150995,772844,611253,3567,706212,293082,317105,298192,821929,891880,525357,174166,386226,217912,601169,157055,180171,857400,278685,911414,342140,279710,834990,988815,762117,274604,843832,542919,440223,949547,611019,544006,692927,123953,221263,757022,788628,111645,970185,933706,793798,521367,591190,630834,779511,493842,318253,880419,564675,779212,713823,147929,276737,547018,212248,992759,125761,931038,677661,421131,46285,433827,842957,449740,516074,387260,169505,477789,946390,618394,270125,423689,854089,528437,852959,433991,905654,491856,468733,278197,435144,775991,796713,785315,180533,610326,845414,315880,308053,905243,911823,720651,406870,55664,740792,745088,224317,813041,129209,933660,608514,178557,347516,977879,102544,819701,390779,739723,511875,341562,54020,93746,884456,900402,12021,645227,28607,468354,573567,289332,968572,26197,292518,599601,608322,43219,841918,940835,72358,7594,738479,569906,862449,845001,109810,756196,908381,950431,62930,641122,628439,323488,322796,499065,762747,249215,269550,853910,292315,76981,405979,408521,353208,266872,807748,175746,862342,499076,647760,701847,902060,531413,879476,428220,673793,827946,345724,640648,412240,823940,12736,184310,24788,506084,232367,27809,914748,730320,854919,422278,495848,563981,454809,69957,104425,223718,591817,240864,413188,69987,47884,731130,383471,108498,425641,196953,917522,290946,481976,57893,569671,798018,103077,795878,356571,60262,705197,154120,808522,835138,54110,117210,819333,92652,166619,700490,746543,337085,194582,102762,723099,98512,47380,282094,155600,744258,571116,296875,464005,662640,895495,448473,127460,632891,767137,503762,751242,932998,600326,478608,286597,229366,735701,697586,639188,505969,29888,811319,914986,742367,817802,457280,423147,968556,917575,979346,211437,278019,477598,69009,540344,200020,638154,625478,804678,228750,614804,761050,194371,661029,397658,435544,870093,740940,145739,923118,972084,841660,284264,890220,70907,893931,906052,163906,265813,903573,348485,412294,23080,224694,406560,186220,773325,4366,450656,683979,410061,201499,524447,107998,15781,22753,204106,289216,835650,637157,762848,466798,273477,365357,304500,681033,21312,576321,608550,859601,366711,570285,374062,632362,21408,3708,591569,33818,292578,391742,712744,199624,895705,878466,56544,803070,468624,208220,212404,99304,130565,321760,285877,280019,172456,729380,51522,883118,891867,335425,693647,541643,415347,102355,717410,102878,495733,620596,112337,510140,966297,68996,747972,396253,601802,583267,705529,292187,408292,180149,867322,622576,740596,353884,910696,214139,12091,747713,263604,689019,388843,231500,719776,439634,724071,511334,39617,840002,429767,121406,123327,83571,344337,311488,548435,988203,633921,438751,120648,516179,776833,36684,131707,372921,379633,468731,830747,94728,293408,878373,132904,127632,448336,561216,142711,274756,533493,419464,928684,686199,561334,983418,855166,818590,53994,397267,723254,187856,333212,360980,99631,638216,376520,728705,943575,813921,82971,338332,419180,183064,957557,191150,271168,958158,854506,287103,842805,906307,901372,245144,537345,192987,443810,827720,585067,690972,583045,977563,95947,806126,879165,636708,35021,125785,677847,131700,642222,226122,671505,235936,503933,926797,153372,624510,62683,755092,663321,17768,457723,881838,847964,193911,732066,87184,829420,649864,510887,421071,835584,834554,329332,936419,599746,659182,715074,187238,334928,988549,265248,576018,505077,669413,160877,646918,228660,178804,953561,962241,882749,793626,586087,309157,823221,120323,956334,960885,956146,659802,397970,498134,238652,477327,748367,411409,701517,214738,479214,661007,735313,239572,618382,157851,335655,722060,345180,128355,723229,980400,30170,850359,834551,194487,894747,664648,175720,326173,219589,479530,156502,803423,645965,722706,490842,576058,870398,581655,903357,91248,244402,677620,289916,707138,445142,720772,737093,976886,909930,48773,618359,151314,17534,731221,27237,899806,162358,374391,459795,713254,120583,813711,402615,442421,291959,554529,959801,946971,257248,645013,941106,943016,918764,741686,175600,716590,656730,852461,183792,115586,12023,212874,620706,164218,214054,689787,710633,570800,63064,429715,515480,257981,676244,589060,722229,970494,270064,880420,172664,113874,918101,716139,877709,288218,267902,266547,432333,522679,759865,880823,287689,2895,839908,337492,669951,970248,133616,89162,621474,668875,919201,677434,582869,938690,988748,92585,903856,849497,156376,71292,955385,584000,452477,766906,898732,566566,455879,783629,931252,123263,926610,966720,69678,641855,212239,995009,866412,546781,731198,979168,632624,79568,324914,209934,123884,468437,430672,415327,687304,451110,235791,40903,664987,700419,645880,503136,847984,878573,718758,284322,762691,9317,516871,263849,520193,967281,727322,140275,818635,865175,786799,408542,854963,189152,91625,397230,711164,480470,504830,982276,792413,318469,923381,593767,70719,594301,289190,79551,830266,817742,196477,203860,847963,171402,53560,335059,514337,59206,489124,344905,345531,631320,905571,575333,544779,184986,129832,18874,624357,970149,738552,436858,269648,815062,605738,643963,426243,360909,163304,751029,972457,918952,250092,472322,683677,624204,905155,923229,728750,161820,965836,33315,500380,478847,127226,848212,914776,488414,169101,37842,866375,254946,932509,330912,787007,579130,385935,337571,445448,688275,567644,263972,702685,363293,617233,723980,695336,671180,2697,207527,782216,671444,588532,458849,531150,33260,667988,724107,266938,280587,865338,539670,665027,739950,665997,365462,820556,947087,535874,562367,247279,356783,432164,765739,351350,972044,503885,188242,141724,687275,845931,381521,828943,897295,286140,714339,711729,814271,853585,558634,578066,579076,295310,182758,100279,488871,287592,306172,101398,117047,81189,812080,73367,576961,816607,519594,655764,333205,932609,59061,824793,92679,896711,36795,539108,758572,858626,515465,527717,41752,955857,298257,439871,669030,773033,912034,962180,280431,842126,900530,548029,412177,544471,437908,392928,714537,84461,6914,619351,504601,576139,676755,186815,877378,843327,999237,401253,417866,737447,338676,700426,763543,31093,436192,804576,856210,118827,216491,119947,52005,123295,149592,4193,153341,173880,672845,943977,435463,209454,383953,209055,300470,912845,155598,278446,447547,833842,101647,444660,621963,616908,11779,696257,468637,982108,519096,215895,123625,250228,970208,990891,50665,924219,417934,462114,82522,493608,304889,96405,172796,273090,874936,54477,383566,285798,274757,630406,244754,900480,631034,316272,528014,956431,659093,492521,989512,523941,844791,361859,659081,127461,562528,363908,84059,413635,447221,476768,624459,757959,345082,602305,431782,382153,421592,854399,228159,800054,429463,414312,883239,385737,359396,744888,982387,419154,419404,795937,759034,151282,710783,916804,802708,700636,415501,512118,445979,448406,757036,647292,502829,825397,926191,766286,645735,38884,883472,752343,921259,607197,682022,605234,609051,788461,347311,359918,474203,566964,780103,66635,552722,780578,886510,450491,250921,531643,888582,725473,392714,887764,334866,805780,711009,145476,582213,121802,33535,900048,777335,994794,271569,704720,284031,118749,57243,228291,643495}
Returns: {284291410, 36934025, 714361010, 129927323, 892636916, 514858700, 36392912, 607533801, 423447570, 201086049, 565205899, 846863924, 595692176, 612681215, 16086547, 477148745, 66944136, 578419942, 917743128, 957090497, 148792145, 766326948, 351388774, 641041287, 682778622, 382474872, 169038383, 758079096, 284696771, 598197483, 374024524, 494255060, 429107394, 312946763, 528224996, 447550705, 280937392, 888656288, 628394812, 51175754, 423477820, 500306630, 475994072, 906649278, 426998272, 701512002, 546630744, 479162872, 638963419, 798442832, 19715427, 935240025, 523693103, 375765226, 989219584, 68323077, 350891163, 628337979, 613422072, 545285216, 926220135, 38752360, 436597675, 417070610, 703835676, 268439138, 740245774, 73372486, 549030061, 99257721, 556662207, 957683920, 359159672, 568297325, 26910196, 199405836, 872993398, 894104224, 194437288, 854250511, 955993692, 184633569, 445535490, 698260463, 494963916, 487039691, 212321405, 194121604, 322458992, 833673272, 417874454, 425955149, 221028099, 574439639, 126570818, 105754412, 735760576, 405484956, 286360329, 890445983, 701534316, 577278996, 499977419, 255489690, 127450406, 973506266, 658501, 121847894, 932177159, 797273849, 660044214, 478021593, 922416742, 186034575, 577895709, 304919697, 184432175, 893778559, 896721837, 206134405, 606969740, 886406955, 156859502, 479776113, 327467192, 99025369, 595204357, 889458781, 589406468, 389202558, 359585023, 191897450, 691876099, 864016617, 779859657, 256432334, 237601922, 870439117, 985740488, 252411962, 908039547, 111479574, 557782238, 210263406, 846506296, 24559798, 512371445, 405061816, 748313945, 396046463, 399290125, 989183047, 909539202, 213343433, 200345065, 902032182, 819492543, 43365124, 773640670, 794421116, 122500778, 684617366, 443092872, 369772611, 909171824, 271210503, 809290027, 326439525, 659245158, 271130546, 841569593, 257831308, 170550728, 702366996, 494722143, 980719687, 865062334, 516620782, 61738466, 396266871, 977940496, 138086028, 953038396, 658691235, 38623774, 628170076, 712983030, 864390987, 375234052, 698730868, 859579936, 739543035, 170749554, 364033898, 316071403, 962034467, 420848411, 865074577, 990585544, 846061905, 702861910, 897460173, 484091872, 47884863, 997253451, 660565710, 233058962, 693383551, 694043285, 517516496, 16724405, 458051188, 538243983, 610484903, 416411665, 312873753, 461582775, 895712879, 484694197, 991072355, 492141020, 932549668, 534110679, 152979924, 652401484, 541258855, 47211476, 52471194, 281867892, 77270400, 3334738, 660927879, 889665679, 759375350, 980533921, 331266495, 176150916, 131969911, 40960468, 462372355, 243104335, 322831552, 558802212, 433947438, 153118600, 219647898, 65763988, 18614077, 60930111, 167973227, 690352553, 565339803, 98738613, 898272972, 7692570, 570934878, 282902107, 153649284, 699447044, 332052635, 268176903, 67840921, 501730046, 232553503, 758830958, 69553591, 661476333, 22055596, 186404571, 14503034, 103035225, 924551102, 570923929, 285361924, 765976230, 962432583, 45258575, 314732355, 798449093, 464466296, 684946010, 105783311, 930887698, 685373859, 414022021, 991590236, 761250890, 253258092, 228390477, 321074145, 770242133, 124037289, 812598956, 760864765, 681106315, 531230401, 162107461, 315113435, 180488034, 583838320, 404954071, 849793010, 686404465, 716605341, 367581723, 920182239, 516538556, 226824825, 228965496, 60095968, 259209085, 751165942, 130688789, 879738749, 350948168, 683067523, 487589977, 134536890, 604914245, 511789471, 232417728, 174404132, 414112762, 691428813, 466828251, 886631695, 946733471, 868231603, 512242612, 975691074, 356459099, 688343794, 705557202, 836672727, 214977406, 571080945, 76112527, 47352083, 336212227, 664842156, 112033553, 155523023, 734988934, 734623993, 184028962, 773519199, 689451172, 438402319, 730306394, 207613885, 13646517, 350471116, 2500462, 435570928, 211627651, 462066385, 870734354, 773613461, 408125973, 867100716, 816058578, 108479724, 108340680, 622823975, 964609823, 774242727, 112264138, 548204517, 926875824, 99733802, 618994008, 981145609, 154337735, 799119553, 286995521, 202633532, 879310267, 925823643, 111994210, 738352116, 625228619, 404084575, 529226933, 704874445, 392688994, 731755783, 614424220, 480073776, 899787497, 303325640, 161313131, 906597342, 264401796, 4385527, 416633509, 391054561, 250181272, 710045963, 907064760, 608768096, 632850510, 871329377, 332113756, 275766755, 51307431, 93731150, 746334199, 314992619, 156818060, 355187572, 485071550, 26439288, 247355191, 491967818, 142449088, 756830268, 637033836, 114379413, 184648548, 726583075, 58785240, 19517484, 128911267, 802268627, 781683285, 376030412, 17115492, 287724755, 512128327, 362426097, 37576160, 220019706, 427784509, 807744735, 963710479, 522113073, 573453368, 316324671, 230586414, 692612483, 702159807, 656768833, 60378438, 905861488, 632691039, 667516718, 280306374, 917813441, 142795287, 342840058, 665073082, 555281783, 352152777, 16983156, 541494265, 172026414, 755751451, 423977541, 15790313, 900969754, 17779534, 374924916, 137068960, 851587169, 261081505, 575181631, 63551613, 867362633, 791229488, 62954719, 258714234, 183990431, 925047693, 502503287, 227685094, 708448499, 875695416, 820272520, 777719059, 193139052, 669565896, 965235367, 240542937, 928198132, 650970090, 25097981, 625034176, 131945419, 828234437, 585812390, 666451612, 418139719, 91026962, 564916140, 239649410, 323075016, 759782509, 293153553, 752490053, 861520227, 129590311, 859197051, 317784278, 501969024, 158785805, 724032402, 529496821, 788233158, 223131875, 966302939, 2347385, 354428560, 358225827, 893239460, 673358829, 412681818, 468455451, 319589572, 127827959, 398929307, 558172604, 158977713, 828252965, 757430082, 504561796, 16167460, 413282594, 280475065, 526361138, 487653359, 694130056, 482433640, 112277043, 576124046, 930393964, 833856689, 491875987, 130678981, 350435354, 673434897, 397867462, 149396355, 466327778, 159991331, 261834678, 736503186, 338361653, 32548972, 663099203, 182819185, 363029381, 209956293, 488755366, 482801955, 198390056, 376910174, 361819418, 73141464, 538934498, 362905407, 60293162, 624889546, 850929964, 980825541, 452316643, 317402941, 296006786, 692161317, 153609753, 161946591, 675426614, 285843701, 435959717, 564151774, 4454317, 3632270, 301901298, 813185973, 215512974, 356075740, 386810352, 394990437, 954377537, 820727769, 378338065, 928911080, 358209787, 268275286, 928898533, 953259924, 202868446, 44097783, 218597838, 338384805, 126938200, 193751223, 418662201, 521065805, 74206814, 990359592, 260995703, 118023056, 871865319, 838214654, 345834699, 449299219, 597654037, 232444817, 49022758, 253578885, 453665601, 599786965, 567632048, 744911230, 837155319, 243094478, 448914879, 797702931, 813472988, 272093391, 546546250, 750572519, 82647656, 288764674, 864894034, 471034620, 407545474, 499807466, 40219634, 999075930, 651460787, 979989524, 699459921, 390542435, 281459866, 818843151, 371765608, 62771299, 841096785, 738278723, 203600942, 100559488, 930831355, 137310445, 605269320, 601502808, 535477840, 680412395, 561128839, 153279903, 411772, 116753134, 245787878, 977824817, 195741639, 902167567, 750685574, 581071394, 295360094, 898248082, 503684148, 56501672, 50689908, 689009142, 690479076, 720651890, 958301187, 848460500, 860975467, 354191075, 126664787, 533039560, 565325212, 640978819, 670868967, 24768736, 183510578, 122585463, 553007616, 263798739, 32864634, 284771148, 943379573, 350789594, 142314582, 193685223, 955701527, 984558285, 228025509, 104148519, 647323111, 659848793, 138736262, 60697586, 165366318, 879021014, 85624083, 992096198, 621311307, 49634009, 290953915, 545256475, 213363218, 699066015, 651962838, 439888479, 669746890, 374919217, 575485512, 274053268, 930702732, 283777827, 44915904, 304163122, 996514691, 524739085, 997208543, 203151893, 558883527, 637828918, 982487273, 313562251, 477101284, 227489534, 354456656, 719147889, 558033332, 983823621, 61584765, 702281306, 420428807, 910723337, 127119734, 690102907, 684620318, 935848540, 28708187, 661686761, 169807334, 37039034, 750393048, 473906621, 454660335, 347563245, 927159974, 626468151, 937103585, 10547652, 330065522, 709768278, 953778195, 92036734, 82771062, 842860211, 469161055, 882558234, 916768383, 872310718, 899869543, 679348287, 418280245, 165462137, 842487987, 497466408, 40827352, 343126619, 897841126, 545693024, 9296324, 817597535, 85102228, 391532123, 250785331, 191765186, 601492564, 944262137, 81679161, 196313290, 916672264, 202553892, 39004760, 834120371, 526438595, 675870043, 318032998, 606138369, 198638948, 80879571, 750137676, 712250439, 125233302, 691795469, 74024996, 301110537, 635658528, 455309784, 404802366, 935495895, 569854376, 516379283, 39145998, 450547863, 908881510, 422731224, 616515589, 385751149, 185146293, 80738053, 53468687, 606456259, 209287800, 234727835, 511838490, 209275413, 15636525, 834140860, 936247019, 589486007, 880533508, 738774141, 918596766, 666339397, 595030448, 193329118, 104604745, 27934181, 855413147, 500186781, 169616980, 275278894, 303561904, 852169461, 372453772, 733183154, 22550872, 241127040, 973061340, 977630853, 40409245, 147776956, 669439321, 599198784, 926030143, 160730273, 213121214, 916415860, 810863934, 507211721, 712448826, 548713105, 463356060, 962200601, 211674290, 734441472, 940194321, 678762098, 716511411, 828799148, 577776820, 457132330, 527841478, 348938373, 744813497, 428463732, 842592230, 789858660, 908316570, 988441901, 490455078, 269489602, 383451644, 991069383, 232182174, 166355236, 836061557, 533894573, 210330184, 912167169, 412323275, 938761470, 57461660, 547580474, 409497190, 864873288, 514190728, 816026815, 786166515, 595000497, 940364086, 242673443, 298306758, 873149013, 158138745, 153977532, 484937658, 335473133, 71502315, 211551170, 113553060, 993828271, 423507708, 481084498, 508184852, 507670423, 65920109, 747695919, 967732687, 132293204, 483340387, 447515615, 358645031, 310695135, 989860330, 404617787, 385559927, 925688669, 705600738, 567904432, 742657055, 286273919, 559483187, 804929914, 264004932, 320404630, 327686509, 527442622, 104401294, 302038073, 563006751, 392561477, 145549298, 955427638, 778784973, 300454770, 380448681, 194491811, 608449776, 586900137, 876671076, 833007523, 14054653, 52976090, 871167069, 686973000, 284184395, 423817289, 617637300, 656222675, 997417944, 388127555, 738359031, 781099443, 367391538, 35691887, 568632853, 406881356, 198156883, 721598644, 231982152, 621309779, 912243058, 674526080, 570882729, 731436896, 299819996, 585243296, 758172027, 159728701, 968037155, 459069326, 82220477, 559755512, 480354603, 453084879, 939686754, 249847834, 484080710, 564106289, 545559620, 291748023, 414955686, 601809646, 321494442, 289492658, 418453345, 52058083, 687218208, 850494581, 806945976, 688745465, 618991325, 400184799, 269196588, 353500249, 67205814, 246197424, 652206863, 42574953, 251206807, 38742339, 64531941, 802521842, 410077167, 53183943, 542256636, 1994566, 479728304, 361101811, 785256650, 575532872, 269777249, 565740653, 831724435, 923265378, 420232774, 7596073, 636908988, 478425267, 185299027, 261211634, 263027258, 297148816, 126508960, 217218366, 71904250, 466726015, 866497430, 304903921, 769316673, 143934645, 753876303, 743448120, 77110327, 464754917, 732683567, 342972236, 829228357, 964148799, 703254453, 753156426, 747012553, 241780071, 928716245, 430032966, 960830073, 363711581, 295245611, 43431, 778286704, 946146369, 948644659, 58051486, 229092472, 381534968, 252113251, 219212939, 362907498, 393923682, 9733835, 942208979, 845394037, 797978207, 271741899, 771480601, 646552918, 292540664, 859550842, 952485198, 179533780, 384305395, 917806285, 992639701, 192411530, 79542106, 919462366, 841740268, 132746936, 792893854 }
{1,704218193,585776849,333836848,700507878,973025446,141235321,400064439,140558679,848157026,893688463,263270197,951801924,989549083,477877718,64390456,890068452,301306194,250947641,866728719,650232750,992175999,347603747,665225921,74849102,617288062,849490975,537195320,49970311,343918993,44608893,437852148,158009639,682510314,969713477,416287456,582637827,212688151,940354646,224901230,256574408,920459512,350987442,273415456,101315022,159759878,812789160,505561491,408776900,433500695,392257854,231653225,813418957,406244469,167306198,507173605,40910453,491477870,400358869,511320266,104030232,113886271,134457192,294741624,866378267,19561553,699244936,487261797,117366329,730227634,428167799,449789829,584766952,740755512,731313697,99318861,615897115,329005696,718123999,385235860,700632272,197894126,793782939,290586091,618271410,382471341,571794785,638841171,578836499,190960392,753758092,904409831,635467495,573163321,563975112,748835703,605394093,21454446,747663338,522699530,20634704,696239250,818428761,508538695,948617229,789316451,564776714,473283579,307367767,753398133,39394292,369761962,495768312,812952900,835803257,189051249,199527384,351531893,929852763,151622517,225236027,207644026,197558220,313372666,620849697,433668349,461865841,37373648,147010443,662495521,105399763,903242440,936510537,704332624,965753146,572314575,44776976,64240739,210580999,361052930,788914609,762652703,107470826,31557732,597647509,26890100,84198808,375723415,781624161,912699995,72831886,50380080,266743634,634928712,465974907,167464570,904866269,710031463,439768687,594791857,627239690,255665997,557096775,15433742,318977315,247317520,167828576,208357073,544680194,294295328,593845607,888509549,75299313,651049701,162532421,416162989,933955061,680662419,571332965,456366369,76284495,344556946,343815664,621281440,981366239,489137047,732133377,422560015,447403503,540058978,714088673,146723862,866595805,277977772,22531620,259498619,828822199,476585125,126069867,27842315,44094090,809403401,602667068,185015581,500021833,87350644,590165578,346112048,773988483,782757442,252087581,482336066,466777619,442075640,164423092,850111825,158626984,164094476,656236887,78200496,635993993,497682234,235879319,231922445,549151696,336542200,529661986,101731505,419488094,210160674,562886878,581883531,621726750,178223365,836674477,269511596,831281978,382238039,905359246,56202027,554859545,159665107,30107130,638544336,890267233,820817044,811290881,836938715,196571969,32809979,962065370,36406397,441175648,606374259,859253894,561495458,922606715,917916586,854684766,385344446,707261378,163039107,247832281,95419167,568708740,771746256,693789000,761592760,575804353,130867683,456295631,880272154,74372069,222517788,82274412,69180484,356360158,171277007,333231455,632926471,934105868,953060483,752671085,904426219,833609024,296915945,758103445,391303023,93063879,256560128,674122294,946422947,341784860,932245565,197985871,673851869,321269447,611757467,946876982,598207910,926005595,826079978,812654237,764850828,704190126,272147499,657722565,371131321,326186457,100431035,692323039,982397848,840210893,716371254,740317020,595872951,826009517,689510907,826466544,48569950,190695181,644151007,215581283,874793723,184932507,236875998,459040927,992588565,762641116,561589586,414207567,40087554,531997249,742733366,44062208,293439691,991475109,223328433,43416811,500118964,207433873,251925320,324263441,118943564,321445342,164743939,332141667,387403363,357073411,642391412,280106855,357424293,903708729,159528294,261192445,372494728,333677946,631686201,538972125,999347274,591656384,811508562,695517512,531293945,25091144,383586988,70283328,640079003,674771410,671739606,253871759,889102510,825956985,356308376,646474645,65966330,497287895,981273892,724629308,286392640,511058318,274394899,556724090,533861313,170547285,959231401,744927076,368817026,295800153,422822410,664278564,306065030,658098201,272571399,704462685,455562330,394005789,779661110,454962501,485703849,874324597,119026198,388622091,904437168,169006902,374928038,113768355,132290885,762335459,176236610,2564524,357331245,683373683,254536125,574671843,197180004,940348781,137798584,332248108,663010095,28340348,795819107,58015346,172625101,718293934,353454013,905857744,964200113,287170814,721566039,179685701,181934014,364656057,542110817,682279500,873775815,705473301,187201408,271432420,499997538,518620469,503048686,475680759,924581049,647765775,105232721,733582748,623757478,561306574,873102772,68917443,65310421,46019289,374934662,115349882,655716755,920804208,311528019,54207412,408489423,31923078,441959414,117384026,487966904,56320870,297226313,534843680,98061995,668942735,32127417,460135126,307042320,606770661,276564556,928969258,212776418,792962855,161603841,482569466,393686647,339875139,205563620,654378120,864675689,430857285,503780910,559291414,527248445,51446970,773609564,191264149,350705885,494573256,63850042,407712950,429325165,68640188,568421550,310126137,403563774,554645696,45577086,232889606,430797040,586728261,471830417,175601128,10208538,129320960,137968077,928656673,303781502,371469923,849108719,763681342,628993221,774601837,692165151,162524371,6550820,362930225,377029370,981632628,230209652,26181143,7641295,80008132,286879399,190683046,537120753,261519545,378342215,567463772,88784330,852576991,549620139,268261300,448680321,295896480,812575348,100550045,874720581,887455932,924654375,476968321,590987314,171643178,518169348,807684573,504053151,492159404,813384395,350774988,199194474,165701965,290432692,908566390,101393345,609861286,332992042,646676845,17561720,534939188,658128565,392896828,647864242,831698841,709411636,449311464,520918749,295653028,674566200,778133350,193181412,302792168,405505447,823826119,673244366,956018156,280051070,512265659,821515349,945733360,31471542,600020956,720466713,515769041,873076775,430615164,446997473,471528001,100311521,564799290,586853660,883068022,591108682,578207470,574903892,388065752,509295151,133009075,362806223,81871740,775676086,294023774,338286049,786530110,539158922,184901286,256299966,449348223,77832876,99466794,178654715,935539519,541044800,786277419,964079010,92558518,45284994,692569352,327913528,87275864,993968726,626610205,862913541,391267917,884732392,401908886,943990744,60962564,330679401,936816464,621073894,764684327,834042795,665222436,295364785,577664382,951369371,978658081,467641390,552557168,384897723,656979780,572009907,535499987,579172019,102103524,413840411,896176961,588541059,298121621,178605575,185240404,243840663,538306547,277166662,258418004,136357609,127121992,114072985,824370322,933351276,209532479,945874831,786849001,587321278,139329740,481400352,338562929,422162938,751810734,941347912,589275884,50521924,323868083,270699579,568902101,755803792,298730891,194320655,491506225,124854894,388213403,390707648,995440335,531559909,223033991,900367471,815006228,184989922,770673160,864664957,166245454,965980345,68695623,847065007,614049522,911841014,763263289,501723453,949372117,791348970,587327372,147596276,464079724,692967383,242489485,973929703,56067961,368823547,415536744,635876075,144883239,770968085,208814771,455397389,895049050,981510399,384592035,695758607,14253877,152204273,129795652,217864476,207590058,639923611,276999239,673797158,675463885,166123656,228997691,747047175,563204724,976085199,79111553,933618480,690529292,412577134,737988823,931322864,949407661,441009734,667921564,308356903,341627586,763934122,259274009,452551436,454901057,647854975,424811478,149605180,320308688,379307703,328599248,806461322,620087608,592524986,309999702,8940971,969007995,37167923,910470278,840474608,861068754,598847181,189640737,289115018,567469705,935477063,702167631,401271644,846805280,514085609,547078356,116841683,924355223,142918263,252912286,601067785,871145943,941959285,31017417,717001725,763910239,663210574,745797742,968065301,27068557,357825311,578931445,140612761,602704753,384016723,25040724,190431182,904202523,648149375,89384900,259735927,266170209,439839134,235192978,649356198,506145690,374617296,627555954,404871887,432098481,376283312,470571611,562635852,806413930,771713846,672799838,365512289,307983692,937054097,73499488,643143463,668398752,818274124,19941892,597746132,887915683,139992223,384663741,237257869,654060224,877810733,154096193,992269146,487842605,437827713,697722884,163139991,765336504,819717599,267509259,214443613,110522534,319008421,290650257,614017390,490827345,993046775,681242761,430176339,253654490,218208973,404532526,969683578,679305363,123499432,969901054,468357559,663075561,526677889,385973626,52890120,719058549,531070916,570911076,51236458,187750243,296456646,945488381,29826940,395242958,119716655,289453196,418502731,516673277,488115740,75592899,461390884,185560853,590516851,287615488,491568926,649827432,201628285,532251190,74166491,224185229,631169507,630373083,145230914,231083984,802576722,729142401,301094178,922301272,94575838,470869930,26363069,859053866,799304525,245531681,919214681,577063229,478698815,107570611,841513133,145378492,789887922,360021310,174731689,517091660,371416784,593127579,187102264,239778422,635085484,430276506,786646933,456575619,684346103,619680404,34405895,211882159,745789581,45086049,925943004,981685356,716617558,283637013,749367189,171785256,863177118,552141005,483672845,93595212,888638185,691096916,744110853,51726460,68358248,814118088,653921428,287701893,393134033,892690944,934735547,807674437,644155817,393930199,268194414,915991800,328294346,957730725,339012396,560065260,969158771,774028958,312528948,519036400,865251861,284198511,411936720,542913255,260420822,486288517,658450702,772412893,802055970,45339878,44034356,200569534,659652241,900478361,8426780,143742828,74371545,511500285,932589970,613802768,979765432,776778325,163651055,167368814,747730722,754191693,1750027,407860504,527050172,27002978,58136349,339317794,268899503,34584633,49464980,860008065,567574160,303543871,669012336,290295479,875908233,27585904,633858520,593587553,688417875,464775341,162733267,923459949,627381951,817903891,643030209,293462470,755240280,149167487,334921747,565553128,370096803,276625767,368320532,432538313,931403224,713564121,365359013,524857065,982411632,611983217,447279188,756458744,803627131,12849200,883183579,706044446,756287555,893571885,311997543,531769543,846048414,195126952,610611118,14668804,949892152,763959706,408818797,767690938,338806656,959954615,293526657,33738456,894032941,931256323,87451226,410072037,483756932,245216482,845307007,241655535,689105874,457461531,387412171,571255142,265653175,43777535,554248060,270832214,688623438,895328195,535910800,119337896,482516917,611699090,117152048,320493203,147158956,846639578,684129223,996477362,993028387,388765861,392490911,502664717,40199493,830338559,31626019,360035076,912324874,845192655,595302192,699462416,368770793,574949620,180463146,985914778,412490662,403089585,7943274,467713644,305203121,687254177,545804952,567655083,94418413,918606511,512171295,744822605,336049136,651513903,541359678,908513496,708446096,735508046,884929587,239779647,369151831,280692319,732702182,786972532,321887431,712264330,234323021,534109964,734125578,744072236,500310788,360201888,364554424,954988859,605265902,749410651,376179930,368509494,123133299,371780629,729221263,290058702,932158754,647989720,93220708,767411590,336888157,640486554,723161066,426505380,588963616,440836041,731874650,938650995,261506637,689244228,231583236,603435622,239948509,595611474,80269430,486022962,861274104,760178292,121518669,957803760,443635934,699012521,902435438,295785813,608634791,652962885,925108762,173200664,525399362,33346943,919520260,637067783,788703023,985139814,708605209,349172225,255237729,328416745,447012197,883808153,15734562,982970617,270689893,899300770,231274360,990667348,571921951,826275433,768687895,854805776,761221371,431464912,382389381,992704767,977067711,28190499,319090012,614067432,23653782,279713204,109370812,257928859,747413414,131588456,744294566,810335614,211686879,798426276,784164935,40135370,749655931,582402472,231790207,970763608,265260598,203717604,811326847,765198589,375082401,119093148,311519055,431854838,319143137,369875518,588593406,67633787,40121421,602102912,263458867,552075968,868799769,609537602,264563941,743400897,554261126,916224170,712981772,119103607,86000912,292108431,259764440,442285067,307545590,341165215,132724123,103479246,202917427,660768962,832947357,112869402,340298588,382474529,607913530,23657110,453913062,646401995,173306250,67093914,906009665,71970235,242714753,878799880,839822161,179162991,532218661,906950877,312562015,597830247,994089923,810878123,924315886,506558411,894466486,503816653,582083227,928302567,72683599}
{755,1,622,970,989,230,667,300,1,1,1,1,1,1,386,386,1,1,14,1,874,834,1,1,1235,1,817,4,244,1,1,289,1,1,487,1,1,1,852,1,433,834,1,1,1,410,1,1000,511,278,1,1,512,385,1,1,207,1,1056,143,1,770,1033,1073,1,1,874,727,1,1,1,1,1,1,1,1,485,1090,999,1,655,1,1,1,7,1,1,1,895,359,669,1,1,1,1217,1,1,145,4,1,278,285,1,927,1,1,1269,1,1,1,1,1,201,630,1000,1,1,1,1,1,1,1,1,159,1,1116,1,1,201,1,1,685,1,1027,1,1,293,1,743,1,1,1,170,1,1123,993,1,1,562,1,1000,1136,699,1188,1,1,1,61,685,1,1,1,1,428,852,1,1,817,1,418,898,244,329,1,1,1,1,1,1,1,1,1,1032,1013,1172,1172,488,1,1,1,1,1123,1,1,1,1,385,1123,1,230,1,329,1,278,989,978,201,1,1,1,1,428,835,1,1,1,980,1213,1,1,1066,1,1,410,378,1027,1,1,279,27,1213,572,1,1,1,1,585,78,1,1,1,372,1065,1,1,170,685,1,1,1,641,1,511,170,427,1,1,1,1,1056,207,1,1016,1,14,1,1,1,1,1206,770,1,1,980,1,1,403,655,1,1,1,289,562,884,1,1,755,338,1,1,1,884,1,1,978,1,64,372,641,1,896,1116,27,1,532,1,739,895,1,761,363,1,372,363,559,1,1,655,1,817,993,254,1,221,285,1,1,329,191,1,891,1,1,1,511,1,1073,895,1,1,1,230,1,1,1090,1,4,1144,1,1,1,1,1,1111,1,1,895,1,136,1,1100,1,1,1033,1,1,316,1,1,1,1,14,1,1,1,1,1,754,145,1,244,1,1,1,1,1227,895,329,1,1111,1,1,1,1,948,564,874,1,207,1,1,244,1,907,1,1056,1,622,1090,637,251,970,289,1123,1,418,61,898,1,1,1,1,1,248,1,1,562,667,562,1,1,1,1,359,1,1,562,1,1,1054,1,1,948,1,1,669,475,1,1,1,699,16,1,1073,300,1,1,1,1174,1,715,1,874,754,1,1,1,1,891,1,1,1,1,170,403,1,727,917,1,864,1,433,1,1,1,1019,1,754,1,966,1022,1,963,1086,1073,410,989,1,1148,1,884,1174,1,21,1,710,1,1,1,1,917,201,1,278,359,229,1,1,723,1,428,1,1,572,278,122,1,201,378,201,1,1059,110,1,1,1090,1,1,1073,1,1,1,1,1,700,767,1,1,1,145,564,1,1,221,1,1,1,817,511,4,1,1,170,1,1,1,1,1,1113,1,1,314,105,1,1,1,1,163,1,1,1,1,999,1,1,1,1059,1,884,427,61,1,386,1,1013,1,1,226,1,1,207,767,1,1,775,1,251,532,1,403,754,761,426,1,1,1,1,1,637,1,1,572,1123,1020,1,1,884,1113,1,1,1,1,1,1,1,1,326,1174,1,1,1,1,1,64,511,1,884,248,433,1,201,1,835,1,251,427,1,895,1086,145,105,1,715,1,1,1,1,475,1,1000,754,6,1,73,293,1016,1,1090,1269,418,1,427,1217,1016,1,1,1,1,1,1,221,1,1,1,6,1,970,47,1,221,47,1,1,685,378,593,1,245,1,541,1,762,289,723,4,1,433,562,1,884,1033,887,1,52,1,1,1,939,1,113,1117,783,1032,1,1,21,248,1,907,59,864,891,1,1,1252,1,1,817,1000,1,6,1,516,426,1,743,165,1174,403,45,1,1,761,1,1,1086,526,1,1231,1,1,372,230,1,1,1174,1123,891,1,715,159,1,669,385,1,695,875,1123,754,755,170,856,1,1213,487,1,819,1,1,1,1,1,52,1,1,385,1,293,1,1,1,240,1,1,124,1,1103,723,1113,526,363,1,207,1,207,136,1136,1116,485,207,256,1,1,1,1,980,1,1,1235,896,64,1,1,1172,1,564,89,427,1,1,1,449,1,338,1,1,1,1,1,1,1,1,775,1,1100,767,254,1123,656,1,1,78,1,1113,656,1188,1,1,1,1,1,1,326,1,1033,875,456,170,372,512,1027,372,1,1,1,316,1,817,1,338,1,1,1,1,1080,754,1097,1,1,1,1,1,1,1,655,1,874,279,78,760,426,1100,707,1,45,1,1,165,621,1,1,1,710,1,1,1,685,1097,1,775,1,1,1103,1227,475,229,1,1,386,1,541,1,1,326,1174,562,1174,511,1,1,715,1,1,723,1,721,1,7,1,1027,475,1,45,1,1,1020,1,256,1032,1,251,685,248,1,1,1,832,511,1,1,1,541,999,1,1235,1,1,1,1016,59,1016,1,1,884,1,207,1,1,884,1,1,1,1,1022,1,1,695,1005,449,559,754,1,1,864,1065,655,948,433,1,1,1,1116,1,386,1,526,541,655,1100,1,884,485,1016,1,1111,1,762,248,254,1,1,1,1,372,1227,42,966,40,285,1,754,1,1,1,1,1123,731,1136,1,1,834,693,1,1,433,1,1,456}
{999741,338673,730262,241789,340603,894015,153058,371021,195437,67772,593439,583207,610028,452175,704809,297564,823714,504578,435466,637631,461709,459200,269698,588003,811388,134679,789184,948000,626064,924151,423526,637902,665212,642801,735240,797576,925446,453177,238829,533738,16067,396708,356620,976211,30686,179242,764048,326691,565392,871396,576468,765437,551273,772878,57063,841990,510918,414662,7945,855844,586136,821451,190123,133119,151842,691454,79923,846530,739835,284387,23541,320218,106824,786401,514746,272501,603779,53693,325244,925445,776054,141859,843559,93754,769216,683485,160922,892107,615054,987288,260899,46317,727906,863462,455430,789337,880720,793591,664118,563530,469051,990942,39194,163644,708124,986513,535625,762478,386555,452521,76814,829984,502195,390813,738980,723669,432562,352075,580602,642002,499318,348399,145007,522717,167504,619753,778902,890366,166308,978683,802675,631104,991975,307528,522108,159728,157535,724054,378137,886621,312230,773580,885220,18710,337575,547124,96489,392366,117407,629946,506150,17147,560924,729898,160908,352146,135041,413877,847867,753996,163648,95916,919881,746756,791709,919299,828924,166550,214769,85711,146187,411489,76517,472392,752288,644294,871282,411975,80408,964966,792423,378568,169792,696358,495586,401193,122458,858734,198485,279273,321238,132197,6594,620777,114777,484855,204415,315374,174456,840719,257587,542172,580861,542044,280598,100668,414497,189456,745076,999030,251792,699163,601258,209495,470184,387188,379815,678028,247865,269520,358444,367845,478725,769640,496844,12434,499265,94839,891884,317033,371282,962681,381315,457821,874449,421229,445019,183048,74823,75412,228814,712802,891056,511599,286921,480710,180156,266563,754955,318579,860105,2328,46566,811209,806378,513013,500349,811208,537954,653990,446660,673044,694953,731062,787523,471347,67941,984116,508947,833932,841970,657586,666782,979689,675162,984320,683298,262005,763741,96117,484015,404927,154474,569830,543908,805685,871267,193133,861813,639657,160797,58403,573735,395087,947165,378853,658066,230908,508763,199314,618590,474152,73218,26826,696838,168172,840174,889328,397719,203973,325740,306537,512113,448270,189885,158299,139396,182665,132498,861614,124692,689047,361105,884877,986550,29498,62798,144166,867344,516570,473746,664933,302876,222332,169943,779644,20325,928972,567562,485918,44295,663444,268679,436479,497843,946818,914592,757141,355432,333542,688534,996569,605755,913200,566365,705478,814159,799926,398556,693657,500061,684587,532202,591823,520045,287977,113234,44905,846682,922472,953999,721642,217362,797955,853392,442391,799187,912698,932021,544886,331823,489194,699215,546511,405960,191382,396323,240301,239060,555489,630887,802398,305305,146129,714499,690414,607857,719117,517585,28592,888839,384351,623134,271476,433944,563827,179558,362897,461171,8150,686554,146076,309561,386743,423965,779759,259549,362088,390082,315747,162531,269725,753744,68181,119653,487979,780478,830372,104713,439114,973750,265968,582347,627539,371797,578717,365369,970691,37161,952205,845490,912374,36593,889897,789286,774507,967393,586520,770392,644102,473306,759110,67934,148809,267381,333214,415903,144025,97145,251024,408979,768831,295200,424523,822599,316964,138070,603267,521558,755987,79801,988204,327280,715898,731225,776188,691478,369640,961209,168236,486555,346704,427148,713143,525988,388677,852536,107546,984361,872251,67158,479186,309233,787020,570095,363360,958489,229680,323904,571656,806221,544835,901622,229452,346445,963842,659698,443189,838505,170317,149766,16075,911173,97958,129974,756119,185429,639537,915512,248935,837857,684402,395507,699658,516226,12561,731331,96207,722403,304152,570419,16202,812160,233651,17857,530511,199081,857518,618973,424436,340288,991675,232041,891155,351542,296745,702714,892805,601873,373997,938773,709863,569449,450332,194418,512984,353190,23022,899388,141689,547459,658557,305999,783211,732750,793731,716280,860884,928741,555871,305016,891034,818169,683344,254401,479461,639118,50167,139574,481761,970297,642457,767855,926521,482912,700315,24562,982365,29629,460483,79739,711804,690267,316477,230708,264906,431767,527507,714173,325691,794271,118899,305829,617669,48758,890861,259822,212002,753133,432818,580748,935435,695723,732118,252838,725885,757670,905805,709075,714999,138855,359217,312926,869434,839050,65146,187971,731207,449531,97604,751599,442788,451961,485516,899970,950359,962326,949619,775312,145192,249716,133305,201307,454691,867529,664194,793434,587347,837467,539924,116598,618120,608197,860630,146503,458641,429168,890259,841754,819842,10778,459508,571949,807151,230610,805961,242353,63342,446712,453504,817415,941081,209089,488044,840195,470729,88305,562047,173228,291611,239008,198159,847929,205806,552821,315476,10580,422243,58477,59688,322779,962779,674516,214213,740697,724284,408329,30666,937297,217708,185662,407030,670515,169428,857462,869611,532836,572381,206341,406572,911994,309686,813267,269854,113725,194955,869657,806026,947943,572047,544673,398233,647524,814387,83721,799062,335059,34668,909312,566255,482498,178352,269960,19444,536053,415289,256050,978710,881951,238912,402660,211560,325414,357122,263254,382497,777443,455806,898447,408344,215071,648245,533420,982342,622615,870632,422426,516807,569977,521693,707991,155288,551204,763482,97716,82330,118059,290216,762901,457997,913746,509136,116270,971861,102863,492129,147143,815033,425802,382439,241145,5342,786780,282421,911983,287503,522003,90012,390885,533688,713260,59697,365740,175974,276119,36106,341795,87304,497847,928833,365631,925873,706911,488751,454787,96915,174357,764466,621512,233028,153553,166887,197494,872636,731775,380527,61064,75733,700472,319982,888140,683017,904333,698311,627808,845495,175292,562657,173686,796382,10424,676452,885072,397536,892516,244924,828804,617088,964760,800660,735352,778404,473882,362396,842598,586259,393702,311364,592025,284790,78055,143358,761710,623323,425658,552319,669140,228845,210545,895357,841931,617853,828302,811122,664296,60604,122947,22743,104335,875389,100664,580265,915127,579127,230532,383016,622569,964801,90290,482322,791489,239252,979006,79276,781035,481868,714261,660537,80294,733031,69656,507264,735940,434819,128793,522121,997736,856227,797275,496096,560774,475627,857365,730192,613,129823,348144,357737,788384,235304,519876,851451,616736,699790,841694,622360,514531,721918,891325,166549,240632,857733,835792,630920,706240,206546,870585,857483,947566,94647,304716,660535,654343,715945,607568,173610,471779,994235,453500,371905,217001,135462,169659,245022,496598,816068,799400,283618,175670,11727,482834,370355,78761,914983,560569,353463,804703,604233,219214,477015,161820,294487,459126,309629,365044,311510,526535,551637,226447,960363,400393,63183,103398,952157,529463,578715,421507,48662,230139,306027,725509,382689,756404,134580,220249,521645,191667,262508,444737,837832,679928,792589,399889,958372,451578,735056,669228,537172,331676,195827,647115,1103,632696,153843,941750,300076,758168,949714,551624,249316,497527,963601,911534,356499,732803,776054,489896,126327,985822,766727,399687,968239,650520,593805,92461,252156,190198,912082,530255,724674,180462,291682,989621,687560,385640,239501,57400,353011,57534,599715,630467,873743,791484,567862,661075,328773,101088,148443,833974,210981,14746,934504,90383,606750,296013,315639,92496,489664,347404,523233,825469,663489,700893,43908,257199,891508,437881,30525,846222,11474,178569,265198,720406,352757,578218,476025,894675,438040}
Returns: {796633069, 12738286, 907642917, 557126838, 340269637, 988370529, 347949914, 405882994, 449610979, 725489553, 695139318, 949611839, 63349587, 824207026, 354464543, 582499787, 261861109, 575582787, 766076313, 875595851, 235835436, 204841192, 120132449, 767382690, 602515902, 597193350, 129684115, 887873950, 293637182, 290253592, 663566032, 655369764, 355773284, 616128240, 666817220, 145469915, 688861356, 937529840, 392508351, 63721002, 676350506, 50767166, 123032318, 589304394, 728068887, 968723880, 490690580, 514512956, 64423612, 401682143, 742232963, 243464552, 194050330, 81144262, 632999542, 694825374, 141649080, 713623626, 342080907, 974802426, 919909699, 415855712, 512148008, 311557979, 623410092, 177559848, 164231705, 974228373, 121281105, 335472258, 497847692, 546700220, 909575328, 829524409, 412914182, 246163531, 542459724, 608559192, 814014391, 252652420, 665058444, 105034782, 395920789, 680721094, 618680080, 253540916, 790446946, 510978839, 921400776, 871135070, 564607750, 843453947, 359263659, 567447261, 225204233, 866149013, 807837262, 113204034, 561066319, 798510008, 602699594, 649417506, 720919443, 82109522, 465497582, 448966437, 543156319, 274145101, 304361092, 710502016, 564291281, 321853082, 875076763, 907148029, 878858418, 733921464, 417014962, 77382146, 338497831, 731352042, 989324459, 968339048, 794999854, 683903499, 78726907, 946475275, 54850920, 215011385, 812635979, 261032009, 772863506, 122124884, 279451522, 412377896, 115077999, 18218620, 395751742, 118607299, 857188171, 151981856, 705397607, 803121461, 365145968, 64208610, 848939258, 337337471, 938778868, 490666081, 17138709, 993163250, 695075795, 536739680, 679829275, 7784536, 435591695, 644719743, 358896938, 430565920, 687984146, 310764429, 496488459, 314489330, 95174342, 223691383, 927710142, 413927966, 907081264, 132914719, 784288931, 419862069, 652867397, 23927722, 223872277, 582087158, 550873453, 803914069, 165470331, 886237908, 504781169, 696006315, 347840432, 536294561, 215025625, 957469831, 650148428, 761213638, 651868488, 208337416, 360162843, 472533606, 781290662, 915917460, 957141820, 660404821, 113108577, 11333762, 945103013, 789629025, 292732108, 179141917, 292715697, 817837855, 35110729, 577208169, 49404610, 753209959, 822891174, 688921885, 140353462, 714135286, 966312206, 253342201, 159841646, 686595966, 224529934, 550959634, 225891691, 663034855, 768930176, 133321990, 286618721, 759807572, 856187408, 425091995, 501458646, 481939861, 446196169, 226009150, 930390581, 325633699, 520356550, 128984735, 846447566, 655015947, 320439668, 298150031, 52751209, 393278435, 176671333, 21593051, 788849477, 730770191, 995803227, 768254489, 531712293, 456523849, 167741061, 171536872, 568348319, 792558632, 553555206, 28123855, 102688639, 333774952, 261038467, 517724937, 741314750, 821241523, 579320736, 927075578, 823771226, 407477795, 191958504, 493340393, 101218162, 984948570, 591380920, 426329873, 694219040, 870632203, 891453832, 686861314, 976253554, 353747491, 236430129, 776045638, 69899077, 278344766, 256423916, 551123622, 913902577, 2943066, 843904698, 180479858, 510240389, 604459073, 952526763, 580444322, 273420909, 249943208, 601354702, 975645234, 473892642, 975177288, 171649957, 969937030, 191095037, 698156329, 521345893, 30098699, 860080368, 236795864, 120665752, 740263224, 976255308, 963792921, 56861356, 943969613, 904382714, 238609910, 169500286, 547643491, 575016136, 399026023, 295291400, 4010308, 855405855, 871111485, 997634466, 281365533, 544606275, 511747002, 529298653, 412507459, 307887436, 102600532, 316539001, 682117942, 700348259, 142284572, 263788681, 353157195, 308668546, 544207805, 579507009, 773989541, 860310628, 739884350, 719987160, 920020636, 819369942, 529764709, 217954166, 775242358, 458914786, 483264040, 70893274, 554929359, 292397726, 823615460, 890049734, 999795721, 368042772, 301314786, 278746919, 849883601, 604041375, 616884848, 343587083, 653083439, 510430793, 993669887, 185072385, 434481717, 761013438, 324180552, 342573412, 646224260, 11661712, 201005200, 115563985, 125517437, 71651208, 191563024, 751636312, 38503936, 208131363, 152413092, 859197171, 224827694, 367439605, 800591025, 822226257, 790079633, 410114827, 858753357, 813459431, 972851346, 983058677, 944401858, 926384772, 2209529, 845704202, 459242736, 410173333, 557795051, 590208679, 39682456, 421882999, 755767539, 144406153, 325209656, 97283418, 836065038, 184507898, 177211594, 976307915, 749460233, 91722978, 509868153, 777994326, 723914760, 790418866, 850793477, 328377334, 564258768, 236616177, 456353761, 865444264, 714808516, 851695738, 571688243, 900139426, 717201971, 639307325, 455369967, 463744468, 496754470, 384405294, 855991795, 780989169, 741498466, 950167729, 31745008, 988560475, 980523402, 918717196, 213492501, 603133080, 169911160, 147697824, 283062165, 69349461, 885469760, 399435867, 603148249, 210773309, 186948245, 147285239, 768167297, 723819389, 2699508, 45838612, 475290723, 365249614, 24371201, 793834791, 445245870, 427197195, 990789724, 615542552, 999820927, 297462459, 98944206, 852660860, 501795078, 309058721, 768134846, 171783927, 93184092, 927380703, 748688239, 290412644, 84669947, 688189933, 321796946, 592077331, 357587546, 832580851, 730571189, 737844108, 777535313, 799234848, 282628302, 989915250, 849263172, 113407201, 558200814, 849706282, 409076068, 91890988, 24983, 943863142, 892006247, 252621015, 756968002, 998471905, 800953414, 160752372, 633246443, 768857212, 76249544, 455048811, 36754687, 58671315, 124777193, 253156644, 564790058, 232567725, 944727046, 461772781, 116184414, 693770888, 595275323, 390494877, 892238462, 880959415, 398220456, 235562797, 385549242, 142993156, 254428605, 660635047, 657242699, 674060836, 324705586, 734297365, 873647617, 350453303, 942434442, 271053472, 89765663, 811405404, 618204051, 652123958, 436974938, 671780342, 749894321, 21705080, 746048140, 853741277, 340356626, 816879846, 917989623, 693221679, 316320002, 298215647, 431063786, 832690772, 942597442, 451163174, 256447055, 322459696, 735980430, 644447611, 869314555, 844531077, 318355416, 13720043, 469466855, 776442707, 509475326, 799510127, 854297986, 637196130, 136596390, 999272348, 694383046, 859831117, 954406342, 715370726, 567892576, 641229862, 255025295, 998053876, 872853982, 815221785, 303840790, 887381353, 630693247, 155708202, 806926273, 254499564, 286872642, 391188824, 393801317, 512726168, 947851113, 267585405, 194836343, 723498531, 651084440, 340731516, 192607143, 215830172, 808592071, 211972838, 508650015, 292072604, 863074737, 112865635, 274311680, 447644081, 644337969, 942601607, 925478638, 826424078, 47004452, 379346700, 461867924, 697096874, 107694496, 401323555, 968724836, 138530334, 332494847, 764772676, 488859577, 477178750, 548414764, 216093777, 802858521, 82084700, 678874614, 236367572, 877146250, 722009842, 23888263, 468385000, 115281793, 609034959, 916195159, 302915930, 709305188, 510139834, 765101398, 619474912, 671179091, 282911011, 285131460, 420134054, 351439948, 378267629, 828204658, 852270848, 243049176, 398976033, 412066248, 998183276, 911067379, 331157792, 886471489, 690292454, 927447368, 976068133, 792439479, 177243348, 314088583, 492307133, 111028800, 983534785, 655896513, 522458855, 81210096, 515357736, 254390790, 989375641, 919953163, 701281838, 366460838, 334190784, 139599025, 851783459, 653169495, 74388769, 119097035, 844188638, 705620249, 494842851, 353096945, 640735227, 585214756, 913424592, 333107674, 696744133, 879371835, 993725476, 694361933, 567925196, 538360363, 498696131, 344225496, 343320033, 983896329, 179080462, 961575075, 301123364, 659275534, 284788882, 749996077, 356868142, 862273788, 149196974, 807188120, 753263338, 676376403, 846852816, 609207257, 240809648, 129432058, 112480228, 195113766, 303815547, 889806267, 594329551, 196807935, 641546608, 801216536, 332280371, 783203454, 61845333, 530503476, 226063158, 738796703, 780917505, 596541187, 488758749, 524067351, 467049388, 25797127, 910679816, 729419942, 880699607, 561275452, 10524745, 816991608, 148558556, 317487248, 621704580, 705224272, 639797747, 525027666, 447293039, 435372940, 774071218, 190593925, 267190790, 992789914, 635007810, 22472544, 784335274, 402409523, 327513000, 519326458, 822397953, 789774975, 431613306, 298573834, 972904824, 198045095, 576076878, 17542672, 366679599, 81001863, 177906925, 706892179, 466762332, 790218121, 404068740, 207133179, 683937858, 739829382, 600409625, 394413040, 972693028, 477484881, 370556920, 570614872, 150324623, 333959690, 356666061, 304354342, 49395203, 455213345, 807901717, 986703144, 283936540, 329006859, 455425826, 766780517, 270760064, 910672140, 591859703, 456765780, 885035508, 793498712, 60041391, 209645251, 563782193, 570055067, 437260786, 241933473, 968359221, 406339098, 583695218, 786573770, 872423813, 327803338, 657829843, 945848687, 840770446, 386901252, 793426156, 9504621, 898787845, 305096379, 484791592, 364801378, 235625467, 991347913, 278247514, 952438215, 945568465, 845980202, 284854614, 258936139, 185141638, 902602943, 672547643, 242655060, 516112663, 435415247, 659018842, 764669548, 376624490, 761519849, 446408206, 117697253, 530759158, 323814548, 525289699, 365842039, 879087173, 755206804, 68488015, 701831834, 411370955, 9654074, 8977217, 766773715, 649869577, 535886002, 295206094, 915235744, 769132369, 491312646, 145993560, 41782817, 444256136, 199043425, 376579139, 416932672, 974952378, 16480684, 363535533, 941996788, 879820666, 657111900, 889879365, 582856721, 297172909, 758905634, 81974451, 635275733, 11906036, 430564594, 119573169, 265270117, 786969659, 402018067, 962896773, 940838829, 382561709, 670918717, 350988079, 203786355, 962109853, 394868015, 609226629, 108340992, 795472247, 847848761, 628315757, 53385703, 933111611, 478697845, 342483582, 653599309, 708001242, 997114339, 530865848, 464495031, 253684376, 546886916, 672310560, 625584696, 224202872, 2111285, 995512348, 636945167, 754880481, 402290138, 332451553, 62377920, 123979449, 85199536, 387303150, 654665968, 974286608, 865632801, 105846979, 263404755, 839832423, 558509147, 371610306, 460645317, 652034578, 178966841, 257755461, 122135666, 729611398, 125562334, 256090298, 889723924, 822719179, 903208371, 882648935, 269110261, 918911584, 612509980, 851264724, 724049182, 821550850, 848516143, 495491288, 443056106, 252444797, 513896250, 247819962, 691879745, 930214645, 479214682, 503388618, 226422707, 921902099, 585063912, 195738335, 192551080, 74697972, 671451, 320073895, 556393903, 137992797, 249649192, 153515521, 156936609, 570951937, 40178603, 431286372, 333787734, 270651439, 445543934, 341733035, 203048630, 354979426, 195842840, 585840375, 677582552, 904880948, 30702600, 758421510, 387341147, 56316635, 861209244, 48906869, 590608341, 240858963, 667506695, 798016439, 232926065, 454470428, 796906550, 440573638, 573083261, 605324719, 58313857, 242793268, 612767813, 173236620, 419659661, 485292195, 833669444, 255298701, 805117312, 510123477, 135799364, 310965356, 76295892, 85222432, 552405860, 156204650, 546775296, 687592583, 228650349, 746893958, 15322001, 605410273, 436691348, 797714899, 491045284, 795108592, 790086485, 530976494, 893215106, 324057884, 887182171, 731931373, 605506047, 737765652, 963713260, 616974459, 676942561, 858718263, 671705285, 2066987, 410936334, 669712459, 897914626, 579448471, 541024384, 498184161, 566651167, 786615594, 126942953, 324728455, 530163185, 408424386, 275261195, 777773242, 192044838, 604314995, 883521287, 804288924, 528122530, 916748698, 1383188, 910256686, 76525461, 26952598, 759227480, 573886875, 478974086, 830860138, 342873789, 913073965, 864114028, 984443714, 124139351, 959258856, 148283885, 12945465, 245399081, 459976338, 917286987, 426155729, 614854499, 482426342, 61631357 }
{1,231168161,918320289,717824705,425734421,81982556,541368248,598043287,234243807,215934399,259066395,327719855,624317980,69629768,311420020,358766153,974941429,646911819,202922275,737966704,777976978,492940465,230070096,779590218,50506969,39135333,585303838,421401175,207398799,187731209,176388910,226898900,911114881,436597293,18679856,652172957,478396368,728383655,194875124,992717317,580505546,421728050,883529756,490756085,277532054,712010787,209326761,243152743,549569880,607399692,676431314,126324793,428456215,838727640,31981488,709338956,782215449,17624480,863904696,21629324,307144972,363145480,533691170,356072727,669450360,79581785,533405187,527882676,378728079,413966107,181169126,614604599,138781829,496746869,444379381,298387256,305951656,111980262,184245934,486688308,528800033,766014722,256030954,821186922,197453286,967704588,425755204,708469434,506711292,984323882,973523132,384311347,138851715,334193893,81075117,774526922,739483923,367323926,620541300,515341384,514349736,876421827,283154365,689234758,946466719,978781569,22598828,176321350,78312273,455646466,991462343,3842226,420301952,77522424,868885255,245581429,386496654,431242368,606923756,389581783,89811573,602046498,907773238,442639643,971420532,594332099,819248719,20958293,284134124,87813083,294180721,301423176,118901002,547322670,275135788,516761168,435643066,893783281,59803924,975658800,759768092,653391018,110805804,992391010,271035780,10128149,956412783,301657371,37698021,13657117,674737483,24217546,772456653,189806171,790285878,456338327,564368384,656226446,892089668,171580271,564315593,253307370,450645089,110066353,587301788,104635346,875254604,324871618,574349743,663272953,995874315,64988232,853427421,666529515,297131750,399583248,590620533,766615056,875244091,666540387,205680731,17883758,249047507,60827181,234496784,740546527,697948300,591533595,520070331,293006714,718368863,472412789,1917702,822818805,803165940,649897506,189952522,671012296,113114538,804386414,191963050,580694991,611928388,516049886,619949218,183610666,814035338,229614165,28162588,348918465,554855718,114039974,2194020,515839136,97109138,114831396,13663227,696412607,530329258,498223149,662769842,417272295,924629347,590144703,492658110,383651796,307506704,563206884,910073084,298842047,74928416,523360481,867071442,44162456,711262220,393599871,993932476,55171495,413121801,863561212,568094348,863778473,763641418,748023641,520930865,278109409,948502775,57617674,904143198,868060785,342161890,775407747,917294531,716470496,179972718,992911938,118694129,690762503,915140346,116218850,493225204,37972016,14579674,926852577,305083721,574776435,667566724,997311439,933651766,950877539,365737301,265504803,155028161,835615508,637136820,514967618,215454795,223156397,610907071,53734532,933071389,75643747,181615833,972542545,543249978,998269127,96921520,734300371,345799110,856236525,487772824,577469542,833086588,971724883,744663441,551163985,332481575,486155177,566367848,422165447,509672011,431976180,240868182,89950557,903090622,477773947,17406175,453409721,673228498,600107185,284234722,916474922,200152357,241885935,622839228,489847419,527507491,598287074,339317117,890955772,564892650,863943592,501272841,474502518,261561105,782535473,904754188,447133780,390496471,400302560,215694359,137688372,547721769,735575040,146581663,538499353,692951861,247338915,135538360,400522247,994144088,969489540,913094729,782088397,742612513,387479534,370699468,304448988,552644804,986624256,763505606,463001360,820394458,315165422,493220118,809084643,713964123,662959938,985177209,455068822,987285174,697960058,121863392,698232195,742352101,837965479,171105201,861958542,379280078,592503318,60818166,737299642,349594474,209277525,223469571,69242839,73571028,167810875,34485513,948694095,938158026,291238542,288256332,303314847,533514162,430133969,617377604,257883282,481073835,543052310,531088353,846653764,856034778,601966512,542960428,221410671,989864550,399215229,208807588,107629411,276331596,37326167,668538214,586362637,992885666,673334284,726521336,990704767,470956239,629415077,521276880,721034305,791746327,570798564,49239438,348750932,553017579,456665071,143398992,859274835,977177799,970824633,928694554,579754642,496584147,427060789,847590476,906008283,158960001,95354666,982013093,850224844,715166244,41783040,135752781,580486500,339892411,171065601,598189276,654340137,406357293,990276481,764226791,413596827,771666967,820237937,199208056,328146994,493260379,851072534,833498923,165180462,741609987,249200677,25252843,618862045,715994795,464843926,412249919,920454507,427508967,639929206,734978779,177708209,115242151,500006921,111515994,408871837,837130157,831073958,794881237,226622549,675709889,76871003,435215218,624265795,109392722,124580249,317476435,219050342,478116001,737421389,82102667,894058563,372569391,468356135,222876075,268107967,988959945,941125907,24098148,975463750,179513729,393680319,345256431,282845139,618372351,713739957,526596178,433581505,387568228,917759181,609541257,532977063,878698064,436715812,976858755,527188628,392281450,97631175,100818789,250575915,392798586,225152799,914806363,909767535,487743928,665751989,533765574,328694301,760664187,537016638,416763627,68546408,177619984,855239618,370801729,362538131,706152595,360825268,356253603,456248041,546068774,374974135,848204985,201978223,609125915,637231312,316074110,768875053,350090329,680896697,648667766,575470853,201175686,591502102,749914756,710566612,822240915,493548471,392592566,390000859,12774284,503962429,135728122,740359054,263539377,517004595,131859359,63187741,891646627,840823522,66697258,217125877,748836032,398956326,449202805,576306561,908875734,970717062,563348893,118319854,19304096,776626212,759187819,269751852,494367674,155385689,932471683,840001257,605887850,90029986,563167976,134882814,987246254,126533842,386459717,334449291,153550904,973554410,834081451,627648019,203720411,225877926,278872896,247241002,42330073,45180407,306237772,877816746,932125445,752150668,283513189,654652468,602489537,412765753,468734640,90634105,992220049,519684462,328040108,120914198,134401427,235277592,27436386,452034926,91373113,85098728,622374139,927744846,280618362,581213964,140729187,436709225,361709478,661776931,327335184,222599211,219070414,511268466,973181386,528984656,242028380,745348500,760687208,519805538,76025685,756400610,576782735,983351888,944937953,158180357,750339980,630272884,427847499,411731459,121165689,734312806,253358994,241894177,345770904,553504726,493724776,226111589,293544848,158966673,477016542,162638043,900260856,806297854,690859445,35297818,247044095,585595142,423227691,740191463,105940504,907989419,206444024,368073412,162482844,569274578,96138406,759920484,443347900,232531667,417627775,440569830,598174260,556071493,600818866,538658796,909563700,942849478,938583071,345645464,114470688,258137198,802407622,295581284,33739722,744562055,670995667,15065640,109145502,255970583,383458867,454371833,406095574,341177386,392905385,177297177,324005584,528988470,24298402,893804676,217287194,329373018,122346578,923382627,581677363,718577728,419897449,485051603,566941722,493712211,221297787,828932493,256170386,883213112,192227835,506790686,92618330,371297058,123745841,875818217,243172344,868663219,564067638,555058160,722673759,476353277,467029668,732403658,623455921,724108859,84012606,507430508,492406427,117443259,212001069,664511198,419496958,348403626,554534209,495232061,904009834,994135113,96253579,479008781,284350825,426112214,287630083,629465627,218318776,608689197,533955620,940550671,645738519,782725590,703001372,192819401,510101753,291618413,517986105,435213584,150607617,804821082,615089844,541118885,917601026,88173365,757211487,829769845,441632487,898953455,333137023,326904733,80444202,788689366,101853779,513324330,449739384,240126862,157359281,213186003,593551834,223575127,281466104,948743844,591711894,409911284,725797881,413324997,295685257,879771142,851561872,512884537,560742597,495162956,850105573,799182591,307643343,619059569,821754431,621085695,155629569,815049573,299103571,850727656,337476412,291691530,110608159,392551594,683346979,719481787,9264837,815227387,317732009,854526265,388802781,743828147,62939018,148678098,504604829,93033707,651818593,407931039,93870909,695972955,57245744,162710286,798674834,981243441,667816214,240284812,659393743,260556659,428177252,743140199,248443574,76154307,13706418,967032744,985421821,654477816,793284727,971734619,473389435,365176651,148788291,675527777,249472019,425775601,849908117,596706876,44980954,275407016,521037153,162080001,821524572,228451246,22772995,420151404,828324940,92199984,473129800,605114382,867411329,231985131,469056096,893695912,201209672,308484275,983928381,623295100,430322342,418528828,448000492,500836897,204391039,77889533,974097107,922788852,699011368,636444078,840502791,57713917,700657396,165890790,134003991,15425427,858355342,359786200,416667004,938577761,287212004,19813789,553570745,165543148,166678782,141986664,612167895,243762834,580443078,658122659,865458368,165316411,199712409,567373750,958926612,603613115,234653018,700785974,750414008,844133216,533569499,41979144,548633535,482172154,716133296,496969409,112266010,286760553,366217205,644802684,797469605,616616072,36114540,702086997,754475005,549049794,462861696,609936679,972288084,128434040,314634283,599865327,412656471,549351374,46957313,768325679,529059798,874672577,332753814,4954879,406557492,843466736,196606139,885436338,636709568,952524694,949152517,768672768,496887779,218429863,229741854,504737552,903894759,425453188,994106492,541180217,332601387,880514638,721839907,617922,58530757,274649072,869232426,778154159,809582407,37482597,992056270,847625172,3372491,814820665,343250220,184217540,845628167,374469578,769939693,195785732,185000642,843496819,6107158,679448722,918180726,754605504,958809612,756106165,566968804,959682491,265810348,588235023,859509793,800389362,68884125,928387963,40381251,248871882,287876426,386812547,758621672,436016950,169837847,605772810,554242419,627571645,721986257,371899394,387153254,471474331,719400129,804486233,59558940,712915147,937244492,920772322,133811277,361240754,911811900,611802848,344319020,339110017,449720469,960775039,571385412,644058893,107728804,850293301,429002156,433439572,781342549,208423366,923050826,491009370,374792264,549335504,720058177,740133120,22148752,250965330,538151268,561351526,920348266,765915890,770503517,439510672,452115971,633941534,742311283,570715033,939239596,865599389,547266940,111195271,527414448,201038625,869715722,725296280,217606385,851738912,210548787,318202583,530039128,89700740,782468283,605157462,37231990,66472523,62421967,746602072,72187416,390700489,718605291,270785738,469059917,260136828,837636787,328562207,468252143,397958942,521035161,815267877,571244937,4464555,966378357,845863551,379094031,8855261,42860742,44559835,712654750,532293781,282190258,931803889,871579660,330090429,704817539,615678558,78215232,943122224,736289707,420751622,761769677,105286131,51979886,945258074,652357048,773288899,233564396,819995183,461507368,886633261,840358825,827481014,489332885,475847641,102634155,936379466,641303182,41174187,761639329,156029031,157926420,338394848,424421544,778989093,897269460,303761321,744033044,368712878,983224943,522884226,84095944,402275987,633631978,411993007,115455983,567407259,483666842,2075110,936987814,947730708,443164445,48690949,612000738,760250047,374097528,937945839,695524951,849608054,48353857,951645392,618346050,772490340,391289384,631554122,498631237,723878166,671811428,111433009,724815293,369604600,963281316,228087573,258459323,795691947,549038672,264138493,641536413,79819156,583827747,773472622,996670537,732630964,566187140,564846625,700181253,491064629,641388347,901297285,741163773,180201116,600116857,632958902,799663667,407596730,889055807,653098241,702076813,219249912,709286155,879011429,74679750,816234118,55472480,665996567,638182068,802044138,906085526,630704775,176538072,438301552,876287977,872071403,743016573,823972382,327014458,462229394,277529897,722266270,87721647,423342398,739635270,623407368,273716740,174781564,898664699,252211974,90043708,988851540,342969666,700057012,720843632,169966679,746616134,465060743,391346070,13823380,287711010,188856754,264943399,90301818,17148797,882843677,839317202,248939912,262907656,14662844,406080605,587699461,521185803,352486092,441732473,253089452,549484979,733127193,614024,259078781,23250094,837148909,963337666,651842618,43617821,836972454,189472055,725131307,89819899,997129985,261283667,438932922,919852104,930776018,903560202,291974221,339959727,920336237,858503337,805821071,674653975,820972502,445478424,484119345}
{240,989,9,893,351,563,1106,398,1071,229,558,1047,987,627,486,567,4,115,751,879,301,602,213,962,148,961,749,18,611,911,556,296,339,272,734,442,307,1038,622,756,296,809,396,58,459,1243,23,241,88,130,1150,733,578,501,191,124,518,406,173,186,1098,1081,800,626,792,461,695,28,859,887,749,969,549,24,346,853,1210,983,11,1152,1018,132,403,16,619,178,1217,316,529,62,941,145,359,1198,1053,456,835,1098,816,1202,1060,1237,457,698,921,52,330,1150,641,1262,386,895,559,884,737,1202,170,839,236,197,1047,268,315,1102,715,127,427,1129,613,681,109,687,1186,119,59,1264,411,716,583,1175,1003,71,391,829,981,4,658,752,879,348,817,9,835,854,718,268,348,485,829,275,163,932,497,1105,175,446,83,755,163,64,134,857,355,433,1057,495,192,1011,946,1260,391,776,595,757,782,1165,481,934,502,1035,93,953,641,359,17,463,850,1037,217,883,323,558,80,213,822,641,440,1022,990,438,1021,159,50,151,300,570,787,391,982,851,910,30,447,620,1001,263,539,99,411,668,1068,471,1226,869,568,595,595,391,505,245,117,1272,899,8,729,118,352,942,519,1175,626,1252,751,799,722,281,1073,39,37,541,992,893,551,924,603,665,1064,908,461,740,859,1084,1104,876,206,332,230,1160,51,1238,1045,1032,1173,1250,909,506,652,163,548,753,312,541,834,378,753,520,1137,57,1139,826,1001,522,888,648,432,726,147,850,804,541,761,193,844,935,107,395,1101,257,482,889,216,438,652,791,1148,155,1077,1040,256,909,399,1174,334,11,200,1150,137,1170,1241,479,63,949,133,371,672,1015,1119,466,179,794,413,1116,594,679,1271,893,409,608,359,911,1053,259,322,665,220,229,648,872,1265,620,1002,1033,1175,103,731,981,628,1049,8,1194,426,222,911,1133,46,878,211,635,408,1184,1243,1245,224,908,354,1139,793,584,1109,1147,1092,961,247,329,64,1253,655,837,1190,202,1167,564,1150,1168,635,619,1048,781,1179,891,1130,611,1064,1180,372,188,560,602,1000,503,1004,211,1039,971,1122,1202,1272,361,551,659,1206,645,24,140,433,1089,686,513,898,873,839,1203,89,1242,743,347,499,1257,40,313,274,1113,627,530,994,91,216,94,80,1102,144,940,1259,14,1029,265,64,1053,339,411,760,280,13,1021,399,707,298,98,1246,480,1081,485,1172,513,976,1153,412,184,1052,1174,672,545,726,549,370,798,435,190,229,1268,1061,791,309,406,342,532,270,421,910,1002,710,689,632,1127,1097,780,369,644,148,1207,258,292,806,460,883,265,55,265,596,213,746,1054,847,643,878,176,903,1084,970,259,667,487,493,992,235,51,836,801,1102,1233,205,1233,871,250,377,393,952,223,811,658,258,647,841,1200,557,34,1248,589,429,581,720,1255,1023,977,1055,1125,513,204,563,1209,1215,753,297,574,238,85,202,1109,591,788,383,154,1111,611,1196,242,689,292,1154,1241,294,495,212,407,121,138,826,1097,807,260,396,1027,554,383,137,56,85,389,398,563,235,347,536,873,732,231,597,399,756,316,83,248,128,923,101,671,168,1086,459,1025,258,341,910,403,306,61,813,638,202,1155,1023,927,518,693,364,60,423,707,1112,1080,471,119,652,488,459,887,975,196,761,329,677,90,92,471,1264,37,954,890,910,647,293,1077,219,854,368,543,505,1224,923,1196,221,766,513,609,1171,1197,1111,902,1066,131,364,745,974,1233,324,741,874,1135,655,330,1128,947,961,950,641,1123,139,1146,1078,803,407,717,626,582,229,883,752,616,246,626,970,803,276,1142,1153,39,183,815,544,787,373,856,286,553,338,310,1005,28,855,1194,702,1268,624,831,297,631,720,90,202,87,1223,963,313,607,1020,572,1079,308,1063,84,670,602,281,970,56,764,1210,146,545,174,517,809,553,230,1067,142,545,902,581,860,1233,1270,406,317,1206,864,867,489,480,172,124,765,63,344,971,53,1195,308,1168,1032,749,630,1105,37,612,636,599,1132,467,496,947,982,1218,161,508,639,48,554,1256,966,314,251,758,762,39,439,1005,369,419,518,1005,58,904,831,948,415,945,1040,308,389,38,1074,428,305,623,1203,944,319,227,8,571,886,842,650,302,119,596,244,212,337,979,831,299,544,991,138,1145,328,496,598,270,69,242,194,729,980,996,206,176,466,355,269,140,415,1023,1134,26,25,98,309,940,596,965,252,726,1201,1044,3,1173,404,332,551,778,1015,471,1236,1242,590,833,876,423,233,242,1003,327,1188,868,1128,726,112,1177,659,128,968,1232,724,144,180,346,865,112,836,10,1127,966,912,1102,476,1192,609,858,1216,982,891,709,785,399,558,492,243,209,1166,578,1202,1092,54,644,1074,51,1028,606,851,919,874,357,248,612,1178,314,37,12,687,1039,446,612,703,1118,565,285,705,613,470,805,814,147,118,382,293,755,1191,619,979,988,534,205,545,1109,957,727,143,942,1092,658,743,550,1138,349,490,331,592,96,1142,564,1159,256,1082,167,528,274,144,1056,249,499,382,945,594,487,719,798,641,616,748,474,953,711,233,687,522,810,821,38,879,39,653,757,285,851,388,952,195,825,899,303,547,1116,959,217,97}
{355683,976312,89392,859684,565880,472336,834922,70408,650283,465287,272109,359709,191659,228220,261950,573919,187807,267606,348218,435443,813355,181387,122583,153961,991657,644117,765096,301692,553266,273724,42584,26190,879445,812433,508011,773295,860700,347438,99586,534229,400267,197880,952917,135331,581794,250847,496504,996579,632344,907739,695192,564045,430047,167598,397117,424960,144613,720806,720776,763142,992526,187673,853107,759762,558460,225064,862741,834626,198409,773630,73693,695198,500297,235408,161044,307033,773835,391709,152989,965325,377686,545901,555574,114753,515054,62803,124150,94628,675086,596013,337487,389328,769580,779360,197259,618634,394682,625118,236431,754878,575265,703265,562908,938308,949381,473007,284683,344800,457990,414358,105551,326587,816763,956974,685172,817133,563382,350108,535907,188852,479620,143307,729757,418747,316012,513330,610109,33750,932653,283667,220217,215682,284930,232183,137631,638247,251679,828852,212826,961495,831090,791145,605739,252302,919716,359294,895282,848305,833432,237031,158692,650641,278952,710495,798932,805159,33005,44463,272300,167895,126517,554470,420146,493743,197260,915615,87558,553830,917750,137088,770464,793439,836656,689527,616596,206629,81972,781757,834703,183919,901171,632340,42840,879131,394650,26315,878354,689908,192336,185334,37750,576045,299956,516472,30939,858276,104224,922298,410672,544290,967530,297203,24702,821080,243168,633056,632104,234529,941321,916298,257131,74756,666984,59205,928992,139505,814906,690604,667703,450817,708276,424360,848636,769335,173255,905448,51732,388419,289566,994088,509630,221883,107996,425132,461779,405857,691361,615043,171335,735714,484163,775878,446888,237651,553559,275735,56348,843828,229351,888229,718117,981742,845818,700388,119389,519126,146833,465623,183420,694249,34789,440008,373519,410000,76076,195403,616768,34459,416212,181249,888786,978695,604420,190672,228132,73914,803615,929965,652523,317251,320321,72020,141049,515996,185346,597259,311738,195498,37424,753957,786227,443321,28759,870395,597828,504898,492730,283122,443365,966694,101464,219961,359401,100209,918890,789641,165119,20314,485025,987621,65390,238911,572202,385817,737110,582315,72683,860221,60531,943954,136133,168177,453467,372561,66449,834656,824380,257392,464037,964287,201761,786977,343438,237452,898028,942848,617045,271249,796890,640146,915900,612576,863940,182664,369920,154646,995802,184571,907350,914074,621415,602223,653743,976540,809042,7570,749429,395352,921369,843707,242510,266898,119317,277677,214678,471642,602618,730899,567270,545095,644757,134275,542353,852797,326414,316157,419299,598633,31590,368747,785378,88705,574967,200544,618703,153094,273976,932699,410083,475075,230520,872643,471892,378509,503904,777833,600399,425730,399156,715211,326717,326220,672464,755789,589056,229917,217580,134335,201844,966898,292761,275292,13040,395410,147011,136646,966148,116558,122095,866637,4859,205056,554364,714599,753816,990094,113699,798326,856794,207333,892089,41799,22073,534912,2794,997455,613416,232416,567741,482094,620563,26002,239316,931565,556896,461551,654570,417857,726768,823765,988373,510791,911132,13872,530755,832328,987258,994485,561406,57012,471063,771235,602026,654888,683003,51074,635907,264554,930666,647013,224546,545961,163872,66473,277302,464255,266641,597749,469901,610609,439408,799418,764554,497515,45927,685171,976430,786373,258777,23011,942225,901123,494245,65755,107047,5454,282979,437618,973181,418621,7974,728269,341114,69521,424058,485911,727585,248114,132388,507079,855435,791669,434599,905950,751215,463958,790139,286312,421596,823999,956502,500216,496251,84225,426725,17326,22223,565272,363600,985714,244662,61290,49595,886263,153318,86917,355841,86395,51059,343845,700281,61379,636933,755821,636147,180513,262500,193067,947193,902511,777070,142806,820432,824211,912860,446801,876534,385979,850051,891751,333603,81888,774734,885262,132810,48964,275142,429158,602071,13877,977484,388665,555247,268618,682139,225274,553781,346658,683528,527368,990849,790954,610691,737834,412712,195925,316694,951377,219385,557155,250850,851099,802300,576861,184102,216332,633010,608084,734138,232148,75865,150247,505229,259662,60199,241979,962924,799164,761164,876802,267900,735438,634866,438519,7229,407002,360702,639390,346567,555874,998798,622662,667725,941331,685818,861768,913630,138882,3348,6918,426849,152110,446378,859951,288278,706179,96961,72567,259417,453843,761177,762081,838816,102108,888045,490423,168377,340038,85425,925645,752463,539620,877012,914307,789732,740912,733310,978818,586390,714320,7056,460731,994203,582741,979112,672941,959558,336761,481884,893150,898562,201502,173052,832990,459219,102163,398418,451657,465434,931152,786466,465667,896143,667574,711532,310331,918662,489937,407719,570154,404141,913816,755270,835475,18761,226921,312564,289474,678014,444303,448601,74447,232774,299582,274068,303770,842038,765074,733760,390158,330174,495317,912241,943391,508199,709112,796918,92622,755796,862359,670166,566817,251203,62199,681173,44589,92875,957577,40365,939470,644702,734822,903575,547051,702086,749330,993922,802164,278505,74171,467608,961829,500294,469944,952125,950467,897782,827724,232209,445915,510510,707234,667947,977543,701946,545232,770589,218602,274113,196630,197044,645489,71557,927134,617975,641425,21921,247035,747301,655629,790219,73195,234297,822832,750225,774871,99495,877452,549597,423376,806430,540483,814387,562769,613573,803196,30000,995329,343359,843754,509706,550383,614697,389322,341204,772502,708697,347875,372600,359000,104670,244677,282940,490949,556804,880076,780288,337619,269327,806749,75452,780388,205948,903973,735172,688453,829061,600095,375813,707947,91163,157068,702983,864885,215979,633145,201194,298031,88412,251198,74219,730955,915725,932796,505886,655079,127257,445340,303795,678859,601172,145620,971314,520810,641804,598754,367296,386334,915850,168976,46746,150893,502609,575856,461399,152200,530843,162528,731048,633544,237473,565189,354457,586610,205649,743376,881935,342194,409303,325694,612617,114080,702230,260945,408800,641279,249838,917338,71305,193211,442805,245680,942799,540776,642880,867320,904795,420296,764057,865757,311022,62211,330375,907222,281635,678893,73099,64164,306863,433477,176799,137682,922467,244402,794039,370422,217702,740934,525249,334252,904316,460093,439718,579103,565828,192252,935112,221762,122547,824787,86468,416784,749211,523837,331247,492817,856105,948573,360987,451542,172320,506625,341648,139578,745696,285600,344533,919136,902947,152925,497254,426937,470460,318915,310781,331005,703448,319944,616459,262126,338110,175244,927997,698266,24848,923673,829433,652056,652426,799074,714528,723975,906880,265989,267020,418196,880289,817099,923856,278002,434360,44965,774653,53089,740327,487470,586265,346729,212779,96813,293991,342686,977181,992273,592483,808091,771693,861173,876805,315017,652582,496923,59259,475415,257199,359987,304304,299456,138950,918227,996490,764042,390980,743613,625829,46083,610525,76062,61466,878596,478879,681546,626236,333103,155823,657539,678039,191539,632337,778737,146930,335428,662687,188393,949963,328805,570894,618472,880863,891487,47214,142679,649696,662409,688872,158406,733439,650496,399551,519794,839266,565741,358546,665921,137260,109892,39510,212674,982777,905985,32477,399599,899744,103466,888019,525420,241457,322129,433981,513863,360567,269713,798010,363895,611125,21198,820100,782560,467178,475703,763629,192459,661838,899333,962340,229551,189076,598651}
Returns: {395832472, 15310876, 730576554, 45341194, 974077124, 762992692, 24974243, 353126316, 858971030, 907746041, 863502003, 555904500, 602647697, 937797178, 287620118, 817816846, 465945221, 176997954, 888468534, 168124737, 246715890, 97294546, 331176043, 89641010, 57642250, 949288030, 145792153, 450395762, 441259560, 549241036, 546406249, 721995441, 162175645, 405269486, 502303941, 740172467, 425171845, 933096111, 483134561, 467277512, 197521073, 367439093, 103302824, 156250276, 995301233, 855522304, 53767440, 309738821, 529656146, 6895190, 947576929, 785880809, 371216823, 168465803, 196323045, 235438956, 568667734, 419205195, 279197828, 804747086, 724091076, 583234419, 293822077, 83642774, 138101145, 764330436, 937487616, 878949690, 936533593, 651680179, 134730056, 694280978, 657482295, 758050770, 829657019, 655059160, 947350094, 480340584, 11544523, 952505692, 548528940, 59993254, 233879157, 170129823, 614834126, 279130488, 436805779, 533940567, 6798751, 452058176, 508758785, 352055234, 428112882, 393911042, 168771426, 773502722, 945941778, 805044590, 970620567, 996883087, 285625513, 64732898, 894065407, 165144699, 578640916, 375524710, 641193246, 336281299, 907139074, 141391806, 677855909, 963964055, 677012376, 546447214, 465608457, 787840176, 771332526, 349801693, 212748224, 24204684, 119779267, 222434887, 111677118, 857124539, 344654720, 439734617, 564086435, 26608374, 510000859, 726696731, 849398875, 80020815, 289702773, 469562392, 363347364, 2725525, 457797382, 194544045, 79071361, 131052374, 872758982, 100774455, 881028283, 366374162, 425113758, 282874743, 754333106, 588209633, 891858096, 108491184, 838906566, 193919781, 390368655, 14499590, 948529496, 773525019, 856386324, 998899746, 570476120, 987511700, 354291909, 622638416, 877808784, 320946363, 731010742, 706818081, 410212438, 98340230, 799098551, 308898781, 929612913, 772326666, 512058627, 412935251, 793063028, 182322533, 848313188, 721991913, 579164573, 246908195, 372694539, 162869247, 806151694, 679954314, 717876614, 696669777, 457109759, 983670337, 225927793, 968788773, 857340656, 899827923, 619876251, 250585429, 899465803, 89323724, 136734505, 555786411, 612373869, 406488437, 286891430, 574205822, 524563780, 22967961, 881816898, 967062591, 366251375, 881896174, 769525725, 409242563, 625719839, 990216872, 378866883, 748667209, 500623914, 628710831, 434616756, 881465254, 341216365, 194299424, 381435312, 465711227, 217230125, 361717154, 80273303, 200479055, 611637412, 964911056, 851331218, 5123356, 981060783, 743481522, 960670137, 18116182, 325171578, 378114178, 219181987, 516802363, 896828212, 549035158, 446290525, 194954493, 615173359, 486339355, 873332412, 660910933, 207362942, 181364624, 187701625, 709619926, 685892174, 129516895, 309125001, 970148501, 671890128, 775568286, 973796004, 387790789, 936596840, 578967943, 913823386, 450304716, 693507120, 541990957, 497169020, 711241779, 741804639, 31880609, 265425772, 797600478, 161283418, 280168463, 48673350, 318508290, 840186102, 323993104, 409746025, 343588836, 152061934, 962786459, 965819993, 158929348, 968714124, 52808072, 492570543, 910716370, 6678215, 741669110, 330999978, 399695942, 713824898, 730868321, 316251088, 194368124, 137716731, 239581953, 77711743, 615856496, 906326627, 756122035, 706901751, 513813002, 906608913, 480104978, 504649195, 957980704, 229873523, 348404196, 840462039, 875464053, 384760600, 343180067, 353906747, 481045276, 977598283, 981205098, 819313012, 852870091, 317557993, 660368088, 802378377, 200403815, 133351084, 232613274, 710749345, 836336827, 425129136, 421324162, 503390716, 8713238, 506942718, 670602111, 77264292, 9805138, 560328922, 584917475, 856230866, 246555281, 151681661, 942221673, 543473494, 429784447, 504300926, 717484086, 910960437, 691162490, 231743965, 22119959, 108305279, 263207633, 820799582, 827896252, 889701312, 948165822, 806066927, 627912239, 816033038, 176887521, 677365743, 487964920, 170861021, 183129400, 145685594, 799501791, 306485424, 518827637, 796305580, 826176186, 652608, 301784057, 405049776, 616075612, 50796309, 311603440, 245430359, 329560731, 170932403, 83820162, 12679919, 631865524, 986107385, 26111417, 55701750, 552943866, 569554747, 839090550, 371887646, 215064305, 234805864, 819151591, 312870772, 375230483, 409544343, 10848773, 103947376, 790230011, 117244366, 545036434, 453269392, 792656188, 556397760, 782675863, 189812636, 477930668, 240050272, 352520609, 319903637, 37407273, 832195441, 352407544, 428681549, 258891847, 463215029, 466630195, 992137341, 297681261, 71312185, 723041031, 617778523, 883072559, 456235509, 461280388, 649542081, 864047143, 862623055, 437671590, 920901458, 483936203, 135569643, 338885228, 97168243, 746599883, 793247185, 204051262, 820296297, 58115080, 236463983, 35722349, 522026446, 567139650, 29345845, 215254389, 850892739, 504788160, 115261517, 259724985, 13241915, 459163418, 4857254, 188533829, 101643250, 925728459, 946793682, 942600581, 104382661, 415185043, 409075419, 863887235, 204256150, 634815440, 144683767, 550798530, 523065522, 774137491, 637816656, 646172724, 391454741, 881299146, 576268107, 253462665, 946873043, 202517070, 462959136, 366912941, 314404300, 349616834, 866611934, 476606877, 294490564, 21775713, 543708891, 452415257, 804305079, 698723456, 364685166, 751169157, 390327549, 618519102, 553019713, 616159397, 577365044, 104747945, 381265899, 516222254, 31251313, 651803633, 27411319, 383257945, 17641517, 760118012, 834734699, 692322838, 266530265, 188137108, 365636279, 869528466, 204531940, 174532860, 728607953, 851896425, 642633784, 348293108, 753288960, 837471623, 426847377, 101040873, 179082711, 746200604, 585696729, 793483580, 149970858, 115385333, 206273979, 618035048, 938939151, 578960098, 218901196, 737829635, 784252278, 527301322, 249836819, 172546863, 485505276, 129826605, 80584066, 247223295, 468131889, 841038116, 920598018, 640228443, 920981687, 45670934, 143248243, 560920296, 750980658, 303717466, 715656100, 557263497, 946779251, 156362748, 859964225, 797827570, 879441525, 76197150, 851894690, 492313877, 669662026, 658698684, 172906214, 86591961, 531496417, 46301249, 203059842, 146083731, 115749161, 314601982, 317993230, 135327429, 78765599, 595495154, 676063701, 755720553, 575416735, 334596348, 379121024, 414791375, 80426976, 856174343, 370171554, 720478963, 818802581, 300142509, 298816040, 275428007, 236923760, 499406622, 753153895, 896416708, 15482968, 871404461, 992644722, 959759639, 464456158, 42623042, 300483194, 663545974, 245740709, 666165056, 585349137, 544852461, 128711203, 744379061, 518042717, 100057044, 384374394, 176911427, 378887150, 470344253, 857919685, 139820852, 815553763, 117894202, 553814993, 827200820, 303509986, 103862605, 207918098, 624167934, 720897283, 927358797, 796095727, 853366474, 763532186, 741410765, 634382200, 443085885, 929045799, 864878469, 116339684, 253087286, 880489190, 110184375, 467187028, 853470973, 947475595, 990388659, 998865592, 613847952, 101597881, 838001498, 325375548, 940800506, 891385965, 454247617, 878692496, 96403685, 659210528, 584950743, 954278529, 859465047, 814209362, 304662244, 474604511, 326673659, 290502115, 889433675, 885723054, 470586826, 744018911, 709768191, 189840403, 748723788, 122602723, 794994027, 894010007, 462825796, 428588514, 499363658, 716288720, 873577902, 531909754, 496527410, 245925277, 581901701, 508680072, 336403404, 340434438, 277202155, 668322775, 507233428, 321160364, 906865271, 523067527, 199692279, 250405585, 71433320, 278431690, 318964941, 953798921, 20927426, 458454232, 831490467, 112514112, 846373041, 675904947, 19407587, 54007734, 66908119, 997796537, 318120230, 403967356, 872605365, 920949745, 45624590, 934155753, 550226798, 197324183, 701764460, 795588319, 547379853, 365076645, 101670113, 857278437, 780406367, 157323509, 566361225, 669764451, 325109390, 602652417, 126129907, 943064127, 433129559, 611935827, 902208861, 287583646, 614700460, 633259056, 304923767, 371473286, 413622324, 319257060, 953389036, 276089667, 467704181, 323714565, 51351575, 836981380, 301283263, 96349869, 71621077, 884356123, 664168652, 430819190, 472088765, 640775304, 674778069, 653812720, 334553592, 541404760, 699831408, 894862633, 421556514, 80734744, 876901208, 604625018, 229962685, 708445405, 248037827, 956500405, 962787191, 266970967, 646399894, 454373284, 847432138, 524913212, 430683955, 123790565, 776104179, 500935643, 77616790, 611343282, 923788190, 480021312, 820669735, 410020343, 524938999, 489478422, 523292667, 448208328, 899742850, 98045622, 322823329, 153520076, 99461359, 189281927, 515432964, 302384119, 610515383, 521203308, 40475987, 891149714, 163769501, 215898908, 586018386, 372596657, 950882104, 96522688, 372954011, 275956992, 801077764, 969044859, 290003505, 822620422, 206348891, 300649330, 384691024, 607862849, 96199178, 778380550, 477767151, 882016975, 750059669, 600416673, 995864488, 942261601, 143065437, 366900628, 486865733, 648903621, 109774977, 113631297, 178552464, 381562282, 706938128, 423384865, 641140141, 675291709, 706996904, 586825362, 823085050, 533510223, 238001463, 73183158, 621267146, 239426614, 272078083, 639710597, 477392609, 909441943, 216485613, 964772949, 282746449, 546814045, 42741709, 980032422, 464597786, 927475098, 474314049, 514073220, 87925154, 998971424, 425056412, 986047269, 904241844, 401940045, 957640262, 167415336, 848520823, 318014549, 248529957, 935086152, 134359509, 89910077, 197735042, 346403105, 704852708, 648337032, 796932559, 822798944, 982824745, 768966949, 159514718, 96096596, 396199419, 764125107, 365209012, 747647624, 14398877, 868960198, 959827318, 791435527, 247420750, 951556817, 218859271, 298217604, 151998055, 351194346, 527184808, 378514848, 671086348, 835190887, 855707867, 140494767, 816851002, 370189341, 267742705, 974769233, 421385862, 467722215, 461316658, 549205720, 60966298, 676875401, 846461195, 601047465, 2635580, 729453318, 135328444, 370964548, 667826908, 210903049, 893167311, 797507998, 68869654, 1999015, 400117204, 701821238, 339471821, 467462977, 558983746, 804115176, 299038720, 796167393, 114047431, 793568968, 638925930, 202694588, 679742861, 785017984, 42448061, 298786478, 378954739, 602010408, 603477710, 870132818, 55721177, 604873875, 337825244, 498005009, 737220297, 148045880, 875871661, 389402735, 206878423, 419929750, 473619559, 435896758, 348207060, 740882531, 609879381, 276869216, 264147547, 254813810, 960459884, 159450799, 627979120, 100264210, 73520210, 566602149, 116494493, 179923593, 801300665, 909536257, 471163708, 288254383, 393855178, 266774623, 778762862, 115629112, 416752679, 247650829, 194672091, 877410952, 740791437, 655303159, 464342021, 678998028, 389131867, 158101582, 878094303, 72827677, 864415058, 159365742, 726325728, 754318801, 486041851, 722639002, 815788853, 471418993, 890495297, 636909708, 763512841, 796519408, 392023687, 305362333, 207594540, 906831999, 598100704, 464549364, 251357605, 651878955, 769360584, 337626592, 551596788, 735005546, 902147815, 406846788, 551942252, 49577517, 713633397, 864662488, 98112213, 423479437, 341525592, 415513020, 429510368, 969873111, 227507962, 640373966, 953748956, 931763002, 770982914, 817210089, 799559178, 507201010, 829464503, 982357643, 431538968, 961358363, 608115994, 531516971, 727091890, 644125444, 75268949, 544209849, 464388842, 715071400, 994000959, 780994546, 765521973, 65184208, 804379857, 80869371, 302412330, 938885085, 817821402, 623821466, 641703179, 423201228, 403799963, 398400057, 590398434, 301422435, 301603574, 52182039, 972288138, 80884867, 730881191, 498409170, 554037166, 805726491, 999227289, 1168157, 865994167, 978206856, 720600669, 85715299, 566208831, 47521274, 775307720, 556800630, 754255319, 565178485, 537700100, 530496296, 117493528, 463897261, 644671704 }
{1,599832876,478474555,563765088,977566503,34527588,267497240,120826088,268701919,652552965,146843514,920464303,765743556,430192986,50718163,399575195,895062368,602489474,731800077,153695692,125354677,625403857,617048403,908483805,402238445,52258896,91858846,758663662,613434720,963207938,944339499,535040397,756941337,163170022,26027117,556317170,701335460,805355055,407858921,731742563,105445702,11406313,909607809,336598195,892765527,887596992,499894028,385760448,170694576,543525995,746422269,771340213,283201931,449329071,931211254,876472150,488899746,371105460,963425372,512308959,226302243,674279572,308809476,908092416,841503869,238811563,606451875,173746515,45010689,665199797,233619192,11878118,881582074,341242958,311653547,173878006,307803206,492314950,272451772,556160385,152550070,818907318,818878051,412915499,6998380,828840757,656511797,421352071,44000079,231968319,523606892,200051855,388054113,841694353,426704260,946672771,702485806,600780467,737403214,536950263,398049572,800904520,14204867,828317859,55445336,129254616,299356736,261788128,702972640,91921643,348725558,286652575,830301387,831822866,917486473,310597684,387744573,343931778,410778248,848395880,839640382,789875754,920002237,874569581,554260137,566643758,396948213,793647067,500883733,796692877,975377240,484629486,92666514,166087837,690244516,48817735,202741074,805761503,439576215,587884385,232329201,412932626,185241237,983028177,255929836,174141893,581624859,271185244,150084960,839385150,347828709,787399132,188168088,770551631,824534822,355553358,224477549,3344331,772335541,7934995,743421033,994811418,449115567,731042035,522161245,152929526,41779865,789268295,864251902,938815777,537353720,559835631,743636977,352637965,724492530,888245736,719009690,828135167,538786513,151720818,179046562,398662873,918047722,879779812,789114476,459363631,897381273,667414276,593040103,59480417,915009790,757524853,162813106,94209804,202823333,759578447,374595736,116909487,195201145,9266961,475678818,79753158,756447756,937277656,855114634,474609895,806756869,682027045,614409435,804802261,78198251,74480726,176356160,987983191,619423573,519018968,988648796,971205234,425381382,859000432,794620000,695773027,722440699,982278553,223611712,163532535,687865945,75814250,645423134,440868378,24590471,527322639,394608424,834711853,897137944,824455129,969593436,629350531,188683589,882191938,934446783,3772602,121711581,679303680,305350392,179193973,214722781,851428141,758043831,829641164,911825510,949689435,925511163,111672745,518537972,975817823,996925485,563833406,768638066,980429945,641788425,844234603,343805590,150466408,166454998,399023831,487646280,24355492,382727804,949116783,839202899,656007928,251240250,996004004,154047725,127687899,907263405,774119257,861162154,423029285,661902402,996980760,826009938,128387059,286994944,201091529,658166661,737739481,917743986,56629685,935565936,446302806,58331433,538169216,319835962,913305024,941790446,225459336,597732873,535867683,475793285,468085034,402295529,735104345,806793486,77007430,605819623,586378222,194949437,489618748,684645531,44185760,490282568,917022812,679253922,812755986,306947932,948351529,728384541,997687426,385350502,26169163,904259853,354987958,538468430,433825137,988460520,622273721,932611656,619882517,149726955,831990553,432914441,147703506,576483843,958618029,735731841,757771697,352842697,19428583,651749591,729873643,929799285,184051052,198438268,631139420,684907656,285335551,352269520,402987739,427603359,353786196,450915090,576016189,455837238,513173228,281674828,877993067,833352765,459704551,594303800,187687811,244312,469671925,688311779,115318982,471538617,41383135,16290316,532615472,746321964,210693040,423880886,709822705,474982514,513911883,619676029,383008082,707088442,702633003,736929836,443934286,921451987,422939858,606489820,589031575,334497088,628397440,694728413,109345068,848825350,752467962,111912684,953954489,298935423,857662991,660794074,94517121,336956960,765967733,314896767,403344906,957022462,165105014,774526337,505114417,52930996,441880853,450133609,433398582,517850072,154915484,436386182,870568845,92014887,43416707,642138499,550070610,152684686,645469205,60176379,702742118,58533554,727148964,255593413,886567566,414509668,704644810,345049072,137052369,509972689,827136301,771601085,583644598,771913795,303516353,205921531,700789246,731289292,807759723,937189886,988976891,880769879,179632568,784823672,498284208,362876184,608117367,323543754,613896827,232941567,716703520,337339539,753227311,898547525,209801620,304438119,784268661,467597783,515360860,10731967,889577181,540004804,214231311,942420940,969465812,856236977,489554889,625026711,916531619,443741753,929004517,800815367,758476631,869844088,498472954,941934724,193946907,139915746,630155060,999091539,207812574,86194880,228228352,843463534,799370581,279490397,463247551,70916299,810825775,156764044,261642248,603528108,643716357,484331662,119531169,494725628,304986568,305160822,817348636,193394688,366972426,391850579,327699466,886860240,32632849,965777965,332489519,317949139,266783899,794475544,706555699,764898472,335824955,395776569,290407896,657860967,243070671,759051261,990567124,652267737,741399655,194206338,334327589,67877536,905424873,428290390,509897644,828096641,454783921,133510927,52852383,358536110,945707195,2975887,11749696,563049123,471802040,617915148,538973074,519069668,277790845,234820132,722722048,534637041,633206262,813892248,914749608,918461122,677079889,435912152,153005645,237925733,476941765,49201086,825558569,31924719,722166386,551682808,298492842,381532308,439335966,247235428,481190905,288788214,344554809,985014138,952487546,825120868,567892235,516594290,949721900,199792352,58897869,548368652,939496273,988732080,938396288,789282856,352719338,188256964,978251175,240405487,373290389,83323540,258217266,734609689,288790155,794568003,591278723,363007509,956042919,861333686,813960665,21975280,71159135,639936395,111553370,601090787,540010110,987803034,196381006,182780851,12476665,733369048,554688513,700718316,474373562,136973561,782666123,987150585,371504826,925963382,512296416,83487562,184926968,126268289,900515153,276015442,113709478,226592942,632818307,430174564,927240484,969556934,394908466,433734504,774643401,757564299,95832279,36605206,421403674,412180611,572499623,656719209,113550011,586655301,320405079,57554002,388745215,184217415,871929015,831132524,310954327,107067789,416966748,353952950,595487136,358241726,322961525,166196422,871387202,466224872,570002449,201198253,209881736,930954508,222203655,205861374,340986651,103695024,311632737,169942804,263262155,138222718,942765434,243796875,701311644,18771978,456791928,327636731,58584810,654779336,343721746,29626841,927382785,671165472,225841435,701739433,286574410,629700834,159984556,78839351,497477142,532991732,137049943,769133032,417793170,575599001,988205465,142304755,906979097,109238602,489401221,405218790,769041020,556934295,708279000,754049602,318111993,68245830,63274856,159985914,395226442,955900709,674008051,966263523,992306691,443913521,947437891,674718048,32187987,406636360,526980716,952050779,747635088,49135,841129888,830511953,180892725,347386178,905948258,546867931,726133569,641833939,291398332,534336783,559727615,307912414,824013684,369980525,32198984,95583295,568076667,801854286,102484363,385476254,315700788,245604519,981776703,73513598,550704584,782471106,200084703,767404499,405051817,774910030,119689338,537863720,176917717,789815410,519814449,549445256,490092521,312615618,711270599,687475253,40845887,274960887,263491276,751425169,901102733,86999494,626117941,486936037,414501768,477316987,445885349,214358727,166517328,203725949,898695028,330246657,356885279,881538668,83636062,280672215,629190502,951039243,108080467,971170547,504664784,743273562,167316810,805065113,868146871,643629101,971091581,429283842,985975679,654601592,157924754,912759772,482267337,810417175,224540118,608590988,221572175,209673095,482753092,613951710,945253066,238688847,522726124,970253060,401195717,880365488,730378097,452839079,162171124,275630809,787824607,111487606,266070948,617664946,607226212,981735530,788873928,684583677,693167100,912783828,907694759,21450132,747968201,853798374,569394210,275553377,277632733,352607625,871591414,667752158,777373711,227998425,43637800,616616658,55513768,943731638,940070111,298335145,224830028,243851981,834955033,609332998,294711898,24811403,639144559,760782794,278691871,31743451,210541133,401753791,885750147,704116009,44010290,503069318,47682606,697543695,157566292,475432561,95567325,644185642,441944307,872684104,222758372,387879688,72775627,632993586,989895560,131222835,332042572,506956318,219771796,937714939,999685105,942465967,390777639,19252324,889341069,928496534,628625513,879593801,666961993,973723806,246748070,68534871,309667497,653978975,308000267,944956713,810049020,286351609,471880022,697331978,603631048,104299087,536455435,788494874,127417915,388478958,603744867,954526907,98014599,516053203,310322528,124368786,409928004,881608286,327487263,584580728,289108022,225738597,529586728,203231235,973059387,603013702,269893422,210753021,526042199,24575570,191354559,591476848,695901265,422604487,902252753,159169104,836020106,298003102,435301977,69973537,230528751,428315959,34002574,874911626,590466232,549141651,443986322,659541733,890175378,401318870,608138669,270595316,886668845,778965048,221705729,202174608,905874578,928547851,364169367,442521154,511980152,203450603,789452231,961924612,603495223,745795254,244562494,642588806,445174727,815369459,573506549,830517128,909435462,378825497,743803213,498809839,741888999,627436440,267609853,199465918,261040837,513169207,221556720,92543834,54503499,89930605,886558848,966808808,677680138,685171656,359293710,588646969,809570014,22924300,493341850,627777801,661759141,334002158,575950657,3782327,394860819,538837837,419712948,106533882,840006303,378604589,220040020,443868480,713721616,281676689,57136825,886981284,62834401,332000540,64605436,624553943,365237513,261881160,632331333,76716801,281022352,974026002,760774186,510195411,359785653,57707289,509864262,835687278,540414260,765779039,527748794,11892989,818970460,306991964,624937012,35289423,483961193,490717723,631392982,638379157,515701017,205463551,478509485,262991734,255973987,972355902,541281415,688422314,258578930,700625505,928119905,403266263,832188557,941162578,351938944,26870474,84717892,567518250,651880746,532736597,424493499,244167860,993808563,980840847,912703618,237450900,305543246,20297617,481709909,304256726,634874783,423056145,611559409,59063580,740568387,240197088,226884576,365135005,387830959,50687188,170745067,845770057,403493770,147079355,171573789,880592650,491067661,859749988,74697064,488911629,475312739,389259231,460880910,431748941,972272813,194130788,628642044,57434614,796604771,986838110,724726876,830848658,666207762,910830556,572412555,370044087,236247072,245254486,214298813,152912884,501137654,200017490,293123215,504346605,795883104,498932025,918626172,417799578,417810406,976761376,37388224,287547709,334255052,925355938,871009990,422433974,725165072,873157127,22177805,877946657,625555514,186821258,347579301,955089147,715536159,674937369,208009952,271779409,128570117,231552590,303408202,271678233,466450087,442140263,496525351,386956300,898958893,603144677,362835187,833690118,50513333,642784465,960788148,641931260,213227098,22180567,859097914,853649530,938608219,761304794,428707752,419495790,537980550,828076353,475828859,635868164,82000323,62223333,294885026,139826345,260260228,299310311,534961281,648721738,617867942,201226848,330853988,215332167,893358003,389770441,229366869,690264195,100401089,870785007,733517417,440842756,143262705,632637853,764334283,550448327,117929736,178037713,600692928,246161327,896410737,462246814,655038030,25966083,71548761,426406724,454707965,56052932,518981310,549066866,350054426,321340926,536263928,669984964,621853086,738509141,515531341,651422077,920866098,287449882,919830683,46624187,847310110,306973160,179192209,492346154,770477849,475492529,218353048,947937571,75593417,485993322,631828458,631914658,777203794,243411433,295678959,606915800,940263122,339270691,850232700,599136590,741533453,387334238,97028438,528835485,363792001,390114521,222565358,576317748,211215543,625569521,396441480,395776970,579893653,877942153,988272570,329027920,996284573,418645809,381190749,887156703,895605363,399202958,683388426,492979500,364087014,406470506,667840454,70599875,486058055,309913962,655849888,110658169,183130412,790542209,691931402,558592727,234903737,631996367,827173567,257424604,976332473,276792100,980869577,606464506,925076323,984205346,544868378,234406464,292546195,377829521,86580927,977421986,536471814,863251644,197295882,349500841,381028465,657326665,835763659,199282471,73094792,598994346,77583054,464820217,942390403,305167855,85371187,622918183,376634810,102287452,361166474,71491536,116315856,339066756,687839611,520895552,283456818,396478812,202129475,550049453,148562517,933096786,319247622,22822087,496084597,907638350,366425565,538823606,968131806,956319779,202140210,868289093,618917954,216789557,851381096,171039206,728964430,282366583,130856724,49155473,991059218,718986250,297663611,384463903,892431948,369130410,925192452,325754156,560139687,604533505,946168881,890270951,524050342,668347623,938592962,700763352,321055776,96806146,57903200,143383584,733706418,161601696,620459455,901743000,714516124,32801549,684444767,786680616,319131023,244002721,744716760,687187167,48039125,675532208,248559873,613269195,544344952,269551829,668371700,545951322,307370766,873267742,980313200,806586827,887569845,215292735,451373367,971693973,491012752,272040265,800342996,520016343,399741972,339346826,627024864,56262794,92811833,183186368,53334029,3957923,905580428,177593500,231538676,578955601,211207335,947906692,598503222,813447578,729205953,369845281,768889250,55146544,239936197,262365932,782837623,9395560,455540849,860597288,76233880,999489808,58735233,435858626,111533843,836833112,181660341,427342258,241410199,440888078,139388624,53453206,750032491,1333600,210800709,338939257,262672187,500726189,788455477,42986589,922047279,424060492,73462268,870737384,329130667,814193556,129635527,483780092,569289871,788928702,322079480,841380698,361227131,851608656,766725860,429718108,282695091,922275245,285140525,29382361,615332683,234706976,838709552,399801453,718056278,104529090,801954608,663899256,466856717,775049254,948618279,967830609,836415225,979366354,160478018,596565415,860083865,330939918,658316052,381195157,378135043,725787425,740462743,828671531,302857917,920881298,989608390,219122589,552556663,134454338,586187916,620028054,564070316,599391795,877494397,551821012,118868121,655080982,769204622,26894062,890191969,78967313,458163107,446672673,842035443,121630417,445051368,457564261,707410273,105953840,303342024,669158019,813740211,800946759,135761891,464777703,451221962,65044111,877968649,117531093,32239414,808837027,391069490,392765222,853069118,176698746,135879266,903711809,349982387,595242314,713521627,3813408,244191899,419528143,335544721,25780347,290875132,429189593,322621644,143716422,830363092,702615480,208543284,843708026,212822115,250194343,954848860,142480791,172250981,944800813,204437616,907629252,145511903,729632436,945472914,471102402,761923878,621393847,703635228,722608442,325979058,960640380,751163639,175156657,244987247,667731030,484869737,587840744,590351996,811085908,29643085,828998111,720764250,526637513,203366139,60853847,73158356,275883140,583821545,441009304,240684677,996024166,219669386,773592568,677148538,185412369,684842080,5280816,527151043,947863792,939198329,187833085,144653113,351926506,597690568,322507232,708198472,263059803,104039280,425101827,14147589,661839467,903308462,480655423,185508715,950244447,240989906,632992709,410203086,787930607,338233362,693704275,283250382,629933738,623219017,213884767,774902278,307947397,51605401,5548074,965199617,835417409,26091860,975855721,806297221,345317393,248738560,345503852,481915442,122739188,478355750,774973229,617461726,805556099,547117569,937702940,195033609,389060960,349044381,359959358,30718016,641654946,32708569,90596762,696239321,116188851,43202274,705706357,770297559,959912852,629120786,775180091,483611794,94117480,59725295,90520030,288475435,761535951,283333720,504270376,492457140,28090792,487102959,656580674,858166462,387309608,523668143,170442376,403377563,33755459,586488560,256512514,403115958,38119329,147278820,814369858,194126690,177195104,280201188,910032459,795084866,732130868,499049568,455636103,522199619,184539197,919952954,331062901,900830081,44389361,749394500,273732445,28648356,784075652,491039575,359264706,87353637,928470695,69318689,735990950,611504572,677546140,572540223,990369206,631762577,104844028,249529010,368418472,500332880,499009394,387998437,707622539,821892553,292247999,341367875,969435943,750102514,386427450,167772496,920754691,335627151,903430551,269783070,991047154,509601612,768306943,947165608,993729418,278621134,675114034,137469718,698093456,508426919,604984835,984140526,931738889,735416785,635596420,819065179,960622155,878478242,371193539,818338675,714247204,839219534,495836608,951926725,969382013,211147146,168561886,679173751,968384503,750369226,620936819,890326346,53094345,302956477,864240478,35585195,976337790,359181859,956339718,25654997,540054398,441017389,320818182,251129578,448412282,570161164,832243459,863237190,928038721,512816768,473675231,878017337,279168091,867899719,703830125,53963186,807092461,481058818,569118163,741832266,202379631,717995848,637176857,778084132,504788946,89409757,123483727,564645534,611580555,974937131,980097959,435647212,279138161,99564937,647727859,311583012,276113395,420492708,290945475,976995333,573884464,475256807,147628050,153722922,851396427,281888605,85479871,905181774,336278781,861407810,558395535,783213730,887680481,849557976,116199442,498364271,703518908,913200260,831553344,456440125,551500625,474237148,737049610,607766659,552732956,367971297,223890620,648012167,780679417,188808485,730701464,951439100,791135521,803617484,413617054,907807449,1086755,715264840,155884614,999097124,85079319,179182033,868740408,877653786,687767573,676185286,802240487,889048791,885570438,980905357,932527041,61855257,382250957,638576723,784901422,593208526,318612738,418410711,839282701,827299338,208845968,647892268,663789935,54073777,462774337,941080146,531677503,18152030,606515211,971673251,726573803,962126591,669914972,417885684,610971569,660683010,363612039,265734329,959132955,829949886,965704554,668351395,288576644,18172026,594491503,138142497,357192175,432751922,106825680,72343822,455134210,803232455,220019200,39105376,487491418,372075606,614626968,433245540,113703333,256692893,343538928,499811608,254012090,284721171,352127143,31979281,131791196,267882875,952379793,227216063,156877812,664479642,501051862,115469003,939601744,203022547,612839776,284294104,481741970,436516412,214207496,247032044,861516115,756166261,272423107,419114058,737543688,718897732,513620036,61192988,681340445,965040466,102314476,474423923,319169363,412539195,731286575,636278084,139293288,57196384,809902844,965332877,701485220,793363849,780843882,218894894,623079733,93871991,220449637,753839007,56498303,255478552,498459477,734821310,388828546,589129377}
{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}
{84197,77949,835988,699400,630214,248792,843468,297617,891092,309507,960047,853635,554558,707495,24760,115229,416025,738536,185002,197177,894634,943846,467862,828041,66074,706808,903636,420892,160257,2864,538182,391000,468189,458139,170714,441343,986393,353728,754694,432300,372233,463710,991564,674837,233770,381168,258421,823496,297316,555178,753432,667759,80329,338618,602833,480590,864917,618441,24524,695745,511725,183802,686585,872705,331938,576808,129751,959773,489965,712233,62059,742467,139826,903502,600711,380726,106815,863714,894534,67222,283787,356137,265228,617053,939129,228320,514567,376222,609108,111105,234034,310534,170899,434173,351311,612957,998676,281409,422570,730371,277473,668980,839962,14069,816880,25141,763905,660551,807516,792158,538569,870440,381231,198853,499494,56995,734554,547704,854616,161690,568696,923134,569511,348683,975632,560090,391143,664589,520850,658313,427508,716497,166870,881536,152756,693603,231266,677425,493913,711079,159139,932996,264990,815902,146224,530912,249543,540001,359819,159713,672867,179234,682593,746465,187083,29231,27591,527665,312034,733040,960957,133022,454740,788902,740844,865070,862041,755756,432361,994274,126065,421367,830001,655476,996838,612375,693293,271319,795855,657846,212909,642876,853065,446101,588974,752841,955966,683347,459734,178977,307615,600808,92340,696032,945579,467299,850114,87838,821224,892913,833317,647273,638886,493847,441769,275789,821633,212724,89351,958925,700893,156738,811744,113128,451945,570388,690112,925527,374623,19991,303646,269899,785087,710226,938200,744881,895513,81895,954937,421231,908290,993810,969525,838310,263899,436327,934185,370287,145487,639381,69981,124576,474834,79911,312963,687622,40101,890622,891895,458154,841486,295194,547902,444238,114850,878801,730569,149935,762621,256788,272113,780866,511238,689326,931770,810296,351854,875846,964242,345148,169071,844249,110288,50545,243022,591810,483383,81078,750234,198837,828722,762851,312941,319549,714519,46091,963624,689219,609382,191098,279608,296967,21833,449270,269973,540262,317459,679744,855167,325204,78147,975058,848961,243297,530176,564383,637168,960630,411547,844119,294443,687382,24722,545506,897625,467423,110089,737698,785904,848392,970448,561651,554986,446243,767458,491501,303567,808602,20065,140254,34095,271346,270557,296465,180838,867340,725260,442059,622873,58913,253712,668746,336053,315716,729654,235591,256245,360865,725811,184434,349850,868354,324583,432314,594226,532422,822427,205188,275731,1577,791364,487857,484766,683712,382015,273626,804542,671164,13973,459989,681704,702372,170870,950255,281435,564445,338303,672433,355935,71587,295862,898140,68679,199822,903754,680559,659121,999760,495381,441502,814850,221235,321755,648090,234348,779038,498123,48141,29097,328014,159354,572700,962303,277854,365612,220069,811899,543937,99021,793216,193656,710212,775729,82176,686615,203983,811098,827313,596166,746914,624432,182553,321275,581146,642439,975864,27256,336939,121502,830473,826758,895013,474332,223041,655227,856688,728275,63949,450038,522897,627775,159189,808735,755621,822277,798333,384810,897059,336182,426336,937746,868508,113163,604181,161887,814140,398504,442604,547682,304648,181979,309551,501750,349471,52635,745315,336831,662586,99275,780294,415212,746093,456630,320080,231733,935078,915794,619124,790879,762027,363199,259102,357877,882078,755783,558708,219214,881786,411165,759702,94796,174548,48480,482335,909784,447068,615895,900963,700393,345051,787891,491121,899004,672053,289618,598481,238810,811750,98232,405701,244886,333126,944405,982345,162382,146055,449540,216019,344168,323955,339847,274773,965332,494256,797390,641720,450381,549053,551791,121633,92761,705460,445612,673006,597126,179784,260338,228791,526061,857606,451542,316431,583409,553173,999191,97473,519166,312183,310753,353557,163340,642824,953542,353290,936026,436924,966276,496987,544565,222242,502979,688573,503664,261349,392150,362716,308460,966535,511415,883427,820175,913573,446924,810290,696398,230712,14886,823591,559397,518032,661758,320984,208154,492376,469305,49365,355328,987735,531363,968936,787247,808043,598004,815638,327822,230669,746960,560796,790540,979985,128512,37236,696480,389796,714043,848208,471309,204558,618466,325083,898658,548528,823357,424829,594803,157061,663552,712853,400355,452258,435786,503102,199452,247927,298402,505100,161491,739789,529786,146318,420550,74183,461614,235531,464127,500323,197507,252743,706256,411960,502826,810109,578070,901111,425340,314851,829815,32172,952381,401963,394086,704892,374299,639422,769692,492390,953197,921536,790046,680388,952246,989585,439803,765321,415329,814792,758669,270593,118852,553143,246900,376726,191263,532716,745504,74631,908060,12395,199110,942448,695630,297590,320487,537158,965235,99975,251790,486490,355124,22162,177296,659283,841954,223174,356555,113142,413880,781706,652713,481247,907549,701313,125084,568263,287328,633160,403937,892669,574780,522229,929855,266159,51731,792343,432583,647968,342453,35066,62547,836977,520600,90786,776648,466330,675934,449292,866902,120431,982292,341106,539380,417437,904815,560581,19302,533419,464782,947251,285433,116028,416829,766240,255939,577289,56302,130350,444005,217385,134527,401847,337738,637771,504120,691727,262247,478648,746571,399812,613883,3411,969556,65887,919374,587162,552793,912547,69747,579108,877513,490379,374023,475170,326014,257229,838001,511456,702460,917978,460642,704130,667698,17629,55252,231753,920053,494650,98317,223182,969545,852750,752090,751299,322586,585011,608022,212407,323836,236730,146018,678672,538480,557744,70572,475472,694304,356187,119786,568146,793952,341948,881309,63051,817709,65869,349265,425227,564271,355842,430361,555451,209848,1417,481301,687583,665667,109707,231469,656595,651512,426539,887636,830927,438756,15619,392072,302309,400771,786028,424590,332927,767288,421876,554872,931619,921873,538471,342496,442481,677765,982984,494444,578401,929655,661782,451018,320454,750834,281546,175538,755663,216172,827093,680873,224707,635589,77988,943738,302722,153095,983517,602492,537864,737637,650081,971793,974763,823677,869130,300322,914778,695640,241900,250213,432157,256167,383445,454169,31449,746437,473166,405510,438283,970617,176665,539200,437834,629618,888690,343779,83271,216331,452945,417685,411085,160902,338788,712136,362243,173843,666519,139447,27686,416071,46797,15653,20114,887655,398821,57123,282168,43805,443575,58697,249702,781950,935383,240186,761732,227468,39886,937314,864339,496239,892582,904824,93486,588732,518108,280830,437066,602288,671213,807486,800951,425716,506956,358284,605918,321368,992295,616968,528386,738585,315303,71451,844609,682716,968494,529526,142226,660786,896024,995672,287111,558933,224764,981831,246474,39719,123178,362899,320225,761015,132589,664279,526699,10492,427976,988089,666913,83161,191226,169704,652248,662874,971516,546267,703740,221875,100543,967061,344084,190662,854127,172133,927938,906971,980533,64415,112385,594342,601262,949606,902695,336006,89335,472484,693026,871874,298402,874189,331069,278988,909631,640290,650905,157439,356758,571561,819510,523171,573161,356279,535529,517541,925940,959400,977957,257185,169646,486115,511221,958938,808008,237400,191997,315582,422762,102467,811197,779492,81850,912296,521296,886479,831958,956310,810535,362026,615894,879655,768912,377931,341069,913915,776370,545714,289095,854466,982928,656712,308938,821937,28419,318818,872726,143049,13315,711422,460903,297429,950236,480194,330991,815913,487034,695426,396702,614310,620447,696696,71260,375666,75561,12555,755339,892226,377039,633162,62023,590610,650210,371824,66855,50217,335182,95007,418235,329944,195992,601447,740941,538361,371359,641534,819618,427505,821212,373894,840248,986224,754340,926668,619783,602733,57122,955844,182978,6764,997727,548816,596949,109498,10300,327544,131750,101741,118068,670001,618901,497766,951069,43608,871486,132752,386149,568054,882099,998688,733654,987003,438660,78484,209876,901828,550072,12726,929179,581014,366611,833176,396419,13282,94736,436887,932926,287361,467430,861530,592086,337272,645957,248722,283249,507763,102231,305017,118350,788490,787265,661461,809863,33792,424161,678387,482703,297984,165007,75182,910835,165793,269534,460455,753499,914273,25241,978316,415943,485611,988680,910739,302931,703443,500075,504573,175669,949525,313595,59734,685628,95643,852397,966577,477200,577014,321584,822317,545974,261730,242539,453364,70411,241668,791682,629561,579846,491053,65744,103927,974072,516309,656748,721206,734732,994082,263910,729159,776393,402209,909960,981188,186829,359049,42583,194707,54545,505469,155728,716642,217129,279048,498221,305961,689219,879456,291104,677549,946789,938853,328532,767737,669616,321824,249521,237284,984929,681350,611094,472783,292300,988725,583838,387494,625569,306675,859230,473116,509353,52788,111394,915057,395592,529298,336885,139565,881786,780372,590807,868963,5207,302441,393990,252529,693968,758124,296952,812220,48433,498911,800605,983734,851999,640881,434591,806554,188378,112122,615842,475820,216441,670780,933510,497658,720434,142817,958882,950303,119697,336129,176648,663549,506365,273307,894470,47296,689208,325272,109408,499103,267037,844109,509337,912732,272354,402167,441705,486464,877397,885438,682821,798434,424161,871796,296283,55519,840,747669,918997,785440,724455,461831,11411,240409,579191,341401,289203,432069,587783,605317,905867,245421,937157,567407,502890,666272,146868,372517,907100,547898,563061,67550,505061,785695,853120,843901,43266,29822,131945,403662,490861,143184,35037,332485,23576,991191,25636,948611,706350,515426,159582,538386,682198,958533,853896,534630,759025,467363,804982,236571,637529,752678,358616,662907,457762,746242,355127,518711,232923,20023,332534,505387,967691,341518,707987,88540,48757,400537,839781,284218,427030,593844,44381,733216,950372,442056,791431,289041,396622,803524,207688,597434,579648,463396,381919,277621,769374,554668,737381,961089,185925,348459,220943,909004,735823,45371,175848,797867,674765,699324,728665,180190,952844,931038,720611,550479,512083,686806,756193,839057,508257,843812,615945,50530,875056,572053,937193,741099,570166,59069,261355,178812,756193,77626,859987,577107,899032,442678,74621,321363,924862,486947,340513,262927,878896,440894,116113,573374,874371,549006,209079,447685,863689,628643,711769,906355,204491,750553,51351,369662,557005,908564,143401,770440,603662,931076,640099,512734,61191,127840,542130,598516,811945,191788,625501,975916,572321,77813,867782,400078,183318,364816,93161,325583,614,712288,655642,38860,519278,637520,815816,715533,816449,800786,795454,927748,239853,954408,451614,113357,143355,823385,870950,738478,763630,435320,322157,55061,303488,392290,804964,437919,94057,337662,314070,64205,153626,127228,785898,186509,160059,379673,730078,768505,165939,985815,100171,923537,526110,177990,858789,330369,555414,685120,97658,80160,467308,201702,445488,293164,248109,630374,754696,19408,799135,861878,476831,652447,635843,703063,516073,738712,460882,978708,785334,832290,849538,320898,491568,339534,559104,150592,562968,313946,173237,216566,364877,541482,520707,976407,613318,757071,327559,482016,897749,774721,156694,200920,108068,135270,476993,870800,292473,196939,962579,607202,549875,951655,71887,450804,292108,263325,296436,762164,318422,314359,219451,250522,703296,355885,535125,690347,276240,777630,985519,569521,864745,587668,558767,36486,200068,306754,546870,207240,167928,186630,791389,795427,510899,112361,370362,637069,665983,258075,733018,519298,104640,552314,47814,252493,750003,745161,560512,534913,334830,941370,221060,806905,252260,742695,186825,470302,658464,757714,484287,464735,632006,274602,261329,358263,418071,442823,988962,294636,730731,366699,850257,109835,816694,443840,314870,462319,239621,397790,897828,262394,529664,854979,172519,695576,977127,589979,269061,216960,104471,212471,562367,406452,279428,624663,831118,938301,367166,606818,508648,915761,670574,856107,436154,1903,695703,630699,957101,455776,980823,334539,265955,644725}
Returns: {498468410, 179803036, 746236392, 149626257, 120614492, 999818897, 565354295, 398844508, 783901977, 264771178, 196683441, 416772146, 438623266, 186075575, 369234949, 625882922, 350508921, 70591842, 539235959, 188835818, 748247628, 970202446, 759896205, 17901679, 740305914, 907589122, 60310101, 628988803, 722942877, 26790643, 448860257, 899904584, 58235043, 609266687, 500436970, 925920611, 651146639, 369268195, 839674973, 382404396, 728362362, 632744002, 869923479, 239484263, 632403005, 325669363, 143522475, 776708765, 624000003, 549851886, 260118632, 444505263, 378256172, 470094603, 277247753, 983958878, 576669112, 228947168, 918091900, 965859044, 438166979, 608129443, 517626271, 108213445, 573247284, 75411879, 22633804, 528814170, 887006956, 132416539, 333521955, 963508475, 568175093, 44918618, 72061168, 523445499, 475971044, 998544263, 944801861, 114411283, 845268618, 197293633, 610732560, 260050186, 959706302, 353331883, 553413348, 990095080, 249346527, 574425257, 218640229, 413855987, 640515805, 348551767, 465797425, 965069674, 557733544, 141825660, 268539303, 259717271, 531622656, 562199642, 749487211, 557245, 400660361, 541263287, 445069410, 511484124, 573790207, 698025938, 976722018, 308074578, 200555248, 585717223, 918087280, 476011886, 922560351, 528359742, 182251605, 247460210, 611961499, 603411067, 137551721, 65390089, 768746414, 452175735, 191217012, 257492699, 609525751, 706164618, 692476547, 141387120, 535689727, 65799193, 555152710, 37506642, 618032820, 608215448, 391725881, 833017653, 97217807, 471574846, 528827686, 929888441, 297528629, 723857204, 70302356, 93827276, 866253795, 993795387, 99737595, 776344368, 722434114, 733023324, 236355689, 46531885, 756322917, 399977400, 273004853, 527830621, 527374467, 265779753, 268051831, 110533382, 679017082, 94584255, 896640717, 74115596, 644678846, 474673631, 111418173, 953984092, 68959861, 366611602, 423440192, 673526132, 241991170, 18564158, 135170126, 897178699, 958266304, 897881444, 949346830, 173665527, 53517954, 8340723, 754053301, 385235229, 28737473, 466478304, 675615711, 465671657, 818983302, 621783322, 600878934, 576784882, 626062846, 362730542, 406816639, 216164890, 837482117, 138122483, 963148048, 842963066, 368929546, 743682763, 804790248, 565308837, 393036200, 58108449, 284578429, 160630001, 868130207, 316687532, 79452558, 233157261, 512254139, 799547487, 825160596, 56542291, 395101419, 893763276, 392810581, 171542357, 568229874, 193826157, 32090866, 798302420, 485006057, 210499488, 3045164, 838063046, 382720476, 736861126, 822323385, 544844265, 135913604, 163739291, 445347252, 409768783, 423639552, 756104801, 414690004, 338552689, 958502686, 551031799, 457830584, 386646691, 416090518, 549984189, 282641936, 200744279, 370961412, 294151396, 782962600, 899054682, 542856698, 334891124, 630648654, 707105089, 615322462, 583488497, 918872877, 200143928, 299744212, 609437311, 959103965, 405526386, 690475842, 839695192, 886475800, 432271384, 484414857, 679407875, 415137073, 710358246, 8315643, 482925085, 576867687, 406110610, 183577564, 699624367, 445118423, 586117016, 11200150, 124001054, 156535471, 918376784, 634864058, 135417252, 206209844, 769711034, 215194966, 460088898, 74873032, 535066879, 991805125, 955075492, 893026540, 981267301, 819419422, 902481690, 475959985, 703184943, 351800553, 473304011, 13583709, 768197688, 614333312, 336279832, 573322104, 189251103, 424664654, 496895164, 395843575, 251820790, 560910266, 945887733, 522625902, 9023858, 945837371, 313114375, 980175847, 800248502, 796486103, 569341792, 785931024, 241671337, 859388077, 11084428, 348918426, 22571360, 12323928, 488424895, 690056470, 481382179, 44512390, 622732346, 648657110, 413388186, 139053939, 985343972, 235424302, 148432786, 373326255, 40918873, 538178111, 208063088, 702580934, 183627260, 998994622, 647395097, 393260634, 713047125, 496176321, 121858731, 350068857, 567150998, 400796590, 685325268, 150930350, 352873066, 153772015, 477063238, 22322423, 307429405, 561987888, 957710444, 446104985, 856387886, 95029555, 476823309, 109563506, 958488475, 582721970, 799466212, 970751744, 200055799, 22928289, 918957631, 39078068, 375145731, 843717779, 731428032, 868251469, 461481220, 179789334, 964346175, 917275429, 716759024, 259869296, 6219184, 973031446, 928645061, 160578111, 492542873, 990306784, 545693125, 319294439, 624955493, 638973311, 877469875, 570409082, 827295061, 687840125, 785411818, 751676485, 123176664, 336191031, 951981956, 581966602, 802349255, 36664965, 866802326, 649008288, 236869520, 979903227, 80441981, 702869734, 624740725, 394074282, 310550840, 95680906, 614119927, 123922922, 974315761, 469576468, 139622712, 696845611, 934141777, 904374842, 726654233, 673170625, 647706137, 38691775, 295908420, 275601734, 294699521, 238349649, 355963398, 419177695, 9011160, 574968946, 424523058, 559270397, 452547911, 922344880, 681932387, 302694606, 849814711, 574438778, 61332370, 770813316, 388445236, 22519095, 283842341, 264853250, 681193090, 521164346, 838005049, 760384124, 502791993, 781193662, 281833934, 852487328, 259312510, 721844676, 425197051, 506248567, 830152526, 220362379, 318296089, 7779423, 511413409, 198525889, 337841770, 864422838, 472313980, 309712733, 21494101, 588133046, 430380769, 101797891, 597978680, 95120957, 300345767, 61426155, 407412742, 908639269, 933759899, 614086938, 659897131, 147880932, 808339127, 529019535, 356690345, 410199363, 332963145, 727509909, 380350793, 901038509, 364092567, 568409694, 234937497, 527800330, 280849323, 334099062, 30259798, 761588761, 127568237, 518802919, 175129451, 378548050, 737742868, 947350570, 480828879, 635804129, 360573173, 683005258, 618169891, 712984605, 915964261, 206896306, 768949514, 445709954, 778509138, 682789391, 365558379, 251241201, 767688383, 6104158, 18100379, 999943024, 762487297, 82583792, 566567188, 843304405, 583870299, 851878416, 794093142, 60193197, 843633419, 433308629, 96193566, 510834315, 915913930, 223458395, 647608263, 977351442, 473255187, 538719406, 545636928, 416993521, 535272267, 417992877, 287734722, 883141176, 856639195, 261237301, 775722826, 327098361, 8992689, 904615460, 905631534, 108960840, 680043074, 278809849, 839435390, 352018191, 955912194, 990744513, 546179229, 760653171, 767899464, 769250821, 147675673, 511408505, 197536089, 814541601, 480213013, 576535312, 357306753, 328353679, 472617219, 97810674, 712709083, 260230608, 485301791, 177673204, 123658507, 436032546, 476945931, 257848025, 110117163, 178425661, 234597108, 798278224, 422113171, 996767044, 245620924, 66652379, 507375832, 31238720, 379129292, 689878907, 861227483, 864089283, 892626383, 540619547, 945885811, 754552983, 959528446, 877547708, 114189895, 299340786, 860727043, 450149575, 85040512, 33435406, 839823401, 975487296, 694098321, 676944931, 357569546, 888963815, 847467113, 105773465, 457291445, 735818642, 401031838, 528488213, 221483050, 333666618, 508105812, 229055056, 399581856, 264372482, 47304174, 789486204, 461255593, 369626526, 354654609, 898924713, 900620166, 794915851, 640058063, 950498494, 72084042, 863951215, 909539123, 103322893, 747887027, 856139453, 442634951, 872280975, 713044973, 531545390, 831662891, 319002143, 939675620, 484188062, 92541430, 881146668, 10464672, 497846548, 186284955, 586085980, 648908806, 451994567, 557085316, 908416079, 833593648, 632263035, 177901984, 23327344, 591091800, 330135727, 223445858, 578227029, 834887469, 413842597, 831460685, 377754826, 764472148, 55729445, 319673202, 153536174, 431235954, 560522446, 453085050, 572546656, 864534902, 883148923, 90738056, 448917680, 120630274, 393204675, 6254114, 261578251, 991047010, 298812098, 598989506, 693126109, 525594610, 981075416, 994041034, 813013031, 168747904, 231782117, 242355265, 135210637, 14604040, 973549543, 72445768, 746011871, 758985416, 89222725, 150867409, 404111441, 188817170, 846554332, 696172193, 584158638, 207384266, 982099168, 396762241, 660572896, 467833462, 708276161, 144242346, 239620359, 659223715, 513582487, 806539554, 293672316, 223201132, 944761147, 455214565, 511987762, 971690316, 884331705, 184941850, 181404853, 553174225, 923027090, 12581835, 14938397, 804912646, 451907402, 616841549, 285237426, 921084137, 44416207, 955736237, 655342653, 964766067, 552922799, 876650566, 7154393, 550297583, 432499984, 177938312, 585531180, 683591574, 593844736, 705476820, 815303218, 976180702, 7263661, 197793324, 608977332, 345933668, 337852413, 624352116, 197206533, 70836074, 16690482, 824736908, 701123366, 951323950, 312418144, 824940534, 956040205, 181633665, 745507958, 114238616, 281588904, 941446574, 860699696, 283256044, 266224301, 867128561, 624971532, 274785691, 434107727, 158617437, 435791705, 898388925, 515523891, 715879023, 108458311, 658472022, 997064211, 960281920, 49551320, 125975522, 446596126, 534234306, 596194921, 799540954, 707378404, 718688180, 908306280, 302796277, 459719896, 458277956, 11424072, 555667247, 953870072, 635920936, 880181936, 428824555, 122420287, 610983567, 493229617, 563896356, 853124564, 305612519, 876361604, 78666389, 881501681, 470204451, 863364549, 104977696, 759425877, 707962131, 135865813, 285921263, 60213725, 57448919, 305737930, 732589002, 809640698, 389644373, 640457687, 256429764, 382690399, 275798174, 610247251, 462797207, 911475018, 554636246, 432505237, 565016414, 940936103, 804806134, 141851251, 231768517, 27775884, 265891806, 184904102, 605869057, 982438434, 694029651, 300538741, 721941340, 259191165, 190825451, 506348046, 618382025, 929746392, 961626048, 875759376, 329934897, 657034046, 317239235, 906752633, 186685562, 491959973, 995513318, 377614169, 190413022, 804900202, 893661751, 124596136, 157668154, 474114607, 406928714, 294566911, 799327434, 743230218, 384786758, 949960509, 92677252, 496486216, 85115925, 920727640, 649598536, 428669873, 244763352, 582852718, 329857214, 577096077, 76058498, 664274700, 700933782, 387701371, 787028254, 423971804, 199240152, 651673192, 584280914, 564028612, 837465032, 898383726, 337135938, 431281209, 338959413, 876820228, 100263837, 197309153, 273509808, 755013334, 895385415, 453929716, 820130592, 289004110, 895073600, 641397283, 121542192, 85261531, 726888588, 977819909, 122266762, 175681611, 124450349, 673655641, 920770110, 733311496, 546558976, 165172112, 814801243, 536285329, 3803910, 375318135, 347598099, 524685481, 484519219, 562700253, 738592704, 463113700, 867781028, 694505179, 100550285, 525985526, 340833335, 70563753, 736947075, 345306702, 766762771, 359627296, 181537055, 537400918, 950324088, 746834473, 157438072, 694209106, 221328294, 595639266, 233035809, 287395019, 632723717, 311947701, 7696978, 39453866, 555814472, 512279547, 897367095, 233783305, 939064246, 151328408, 596514825, 233117305, 366702290, 376526909, 888050702, 456359363, 319693687, 731265651, 953588041, 267166931, 93785575, 762073563, 372907967, 15635816, 345981077, 536057485, 957272030, 284914447, 891550545, 113368305, 46788296, 4107892, 296327644, 19591761, 755411424, 435092316, 318839182, 547763680, 888963815, 61001486, 123413300, 721367285, 782216947, 513864666, 976258102, 121507638, 75279371, 340130712, 192675103, 787625337, 456935121, 63559744, 95379336, 874070724, 329699702, 850423556, 372734658, 982770901, 888456120, 504871749, 587357388, 714753579, 419419081, 112509196, 716347802, 326043535, 798795222, 363534744, 24573597, 436296421, 37732701, 871039815, 685260606, 479179901, 720463174, 603013726, 412662817, 866887074, 117220644, 443006406, 599293536, 964323438, 350300299, 686410726, 52798453, 223061725, 414492142, 463755934, 400576902, 628651187, 216703598, 513527128, 585872824, 278582059, 457019763, 394997853, 327844938, 674352650, 964083940, 573536553, 996509766, 492047207, 59107766, 759224878, 535213686, 984697360, 214639876, 92292489, 493638910, 900316745, 269702638, 765401817, 224596807, 539598490, 662654934, 475445008, 937961487, 744987337, 700429168, 928912235, 876696369, 850968597, 878828946, 334180227, 392639360, 758195472, 493550793, 618351251, 540502340, 136626535, 838144374, 372602857, 179251803, 873732282, 493992179, 628846926, 887945446, 614205781, 993708428, 198965721, 104619755, 362859880, 804966257, 211712608, 783911196, 90050036, 596309675, 947681922, 999878087, 142961463, 982804278, 691639031, 270194816, 570718500, 816183001, 427551035, 159013323, 712133651, 831957170, 477589178, 849047221, 589571731, 828422403, 830235261, 326669736, 733412493, 73527756, 429477353, 291053078, 929488911, 34593947, 577654750, 591512385, 249322500, 86896051, 461343377, 692716595, 803864088, 16950719, 555588584, 19422975, 491516370, 820721562, 238959607, 168396828, 479284432, 283779307, 433879515, 762093781, 930077554, 615783710, 296948326, 747131688, 497835156, 138675610, 455254382, 340863067, 459240049, 839629208, 538910354, 544601988, 893576016, 361512393, 930305469, 53209034, 409830470, 669267514, 375335607, 492900174, 815010920, 211646576, 691204314, 754655516, 371290848, 415845927, 399359034, 396290984, 238344186, 177588452, 927016782, 619033475, 670238940, 905799201, 131580871, 110943753, 810137618, 486908928, 826040138, 346079722, 74182950, 187672696, 796703878, 418719552, 148759928, 764811323, 958536487, 64412816, 14949874, 230381917, 295434875, 589064101, 66598871, 162987563, 87461289, 727186959, 445529900, 762880301, 72623610, 567512598, 497433299, 733862749, 996667734, 960478912, 242358401, 723277368, 182012042, 735100421, 513615879, 165710340, 660207003, 911411106, 648051907, 881601126, 417640193, 295566523, 935504059, 628221885, 170743864, 764968539, 296398157, 877956450, 579990757, 918376784, 312172249, 497220384, 177392210, 879999587, 935779301, 881030183, 319561051, 267005204, 541588499, 963891041, 152004253, 835740592, 234358361, 821975760, 199214378, 212148236, 880322509, 503769856, 895278268, 322578331, 782658039, 34939048, 705771846, 995588501, 14805125, 418672660, 930217541, 119870637, 730614844, 671241190, 406034928, 407412742, 25666054, 634248427, 789080240, 640519764, 743746378, 999518514, 505730639, 100679765, 969416512, 702370722, 51156051, 992763102, 809740555, 432900239, 324241690, 614781326, 775848079, 199247211, 16438133, 564510959, 81299144, 141824544, 199220993, 916927811, 30945323, 553416117, 105129780, 82218672, 288095473, 996087871, 423765096, 614614530, 286963050, 949984841, 651047779, 178735435, 492497245, 145477985, 77481766, 188688447, 558592849, 537151068, 537035838, 386295536, 639959875, 63451714, 377579149, 65990361, 856961388, 212341880, 985100152, 589617422, 496159111, 863912787, 661610386, 361512393, 751801529, 706372868, 867155533, 171728559, 901586801, 83601135, 754441347, 845044180, 390835669, 658425609, 974671996, 812457649, 634515127, 178196849, 719548754, 956024017, 782635750, 1733357, 435421881, 300341467, 582780729, 41916914, 127324518, 882303324, 346680597, 799204754, 713688840, 418152780, 887446750, 578608246, 291777537, 96942691, 917226458, 936615439, 69747806, 59405810, 835264921, 478893954, 877955614, 425805480, 661900978, 252261323, 67673779, 185159099, 67747521, 525193417, 19733776, 135749497, 679546843, 515515683, 703622917, 25050516, 494658861, 424849155, 148986304, 131002185, 906971051, 708517125, 362206519, 392019605, 185401276, 598921037, 866889569, 782475690, 817430293, 650834396, 310296000, 90862983, 157090990, 979602812, 622783057, 557359223, 434929441, 637289786, 223540282, 932252150, 292906824, 93911384, 345943191, 776658450, 981447049, 982631776, 132913154, 7581618, 469039840, 82741696, 478453192, 45757230, 277305003, 658556264, 444255497, 647936906, 466040580, 849099883, 354457035, 40614997, 726032321, 151261622, 472508358, 659057546, 606366565, 882989724, 389794957, 360791145, 947145192, 517438058, 897651968, 180769839, 419040545, 210437018, 931398678, 350892660, 388102283, 504079641, 571308389, 977492788, 315520166, 264854322, 36842306, 454938735, 169850498, 860021410, 486943146, 859288846, 795335519, 88263156, 885547058, 447859698, 158521046, 977492788, 731332415, 463910618, 95969376, 951380689, 263554141, 592348856, 831507327, 893180679, 755128370, 946596435, 768456968, 618996499, 989198305, 370329588, 930248254, 684963321, 177907732, 283778051, 999068122, 843174409, 549479769, 675395305, 621264111, 642906203, 807858379, 203685853, 995208252, 520504735, 165777868, 86961471, 176278430, 86184320, 157787100, 795594338, 842570152, 626176669, 917844201, 416467501, 807915061, 134547904, 89203311, 393633822, 733299788, 812615302, 718615416, 868389249, 968823646, 739500862, 443286313, 341082231, 60982107, 847954231, 508432083, 560770373, 290786252, 8972856, 811170077, 328230346, 818469432, 888735950, 798528908, 925806612, 66282096, 2805638, 492067616, 933411904, 653631422, 346978459, 712503378, 737850109, 201986214, 801987880, 223822958, 930891827, 968683993, 957581794, 259272524, 616178537, 187201174, 275443532, 80699560, 202043, 366574537, 306692407, 388985997, 24430924, 930618693, 212156000, 231317133, 4826250, 377092706, 412391340, 774428936, 773608752, 19810632, 682412344, 71706727, 667993564, 217188623, 570328864, 790567282, 696672290, 103972895, 674747138, 613022567, 180653562, 675810994, 846823044, 589652035, 672976622, 218240264, 466085051, 91787272, 121324902, 905610197, 244480214, 604686659, 155428952, 582417976, 392946146, 393291214, 441715458, 349457755, 355899352, 764683659, 852383106, 935619847, 361500910, 541233963, 294768649, 840927233, 689881889, 33792537, 300207313, 555330966, 820191176, 432451119, 965981654, 608574092, 447094347, 319556173, 541959014, 289041958, 356654835, 712346893, 319807954, 272406807, 864894512, 574279003, 955918162, 977017044, 992178950, 550391717, 497170983, 970395626, 57615495, 955779929, 949576252, 858230088, 596374865, 239106621, 33254326, 345506628, 47652867, 72216364, 870336424, 3103212, 710635771, 543242218, 758615637, 169126655, 963301863, 888177826, 445687032, 545236231, 239269229, 183158521, 255862012, 756864885, 510540174, 387661504, 754743242, 866720575, 648334624, 518301186, 361268932, 105901941, 73973356, 279795081, 805741836, 873637967, 842384412, 971217094, 616218746, 819857834, 344701983, 258482140, 471536153, 234311908, 566535670, 395028540, 608167721, 592464117, 901529768, 55370385, 466254779, 846224789, 250698833, 812978928, 452599586, 180342165, 456647118, 675165325, 139435213, 647679339, 78191573, 646546953, 219307894, 816727237, 603967269, 806639452, 421461212, 756744320, 672629355, 947055417, 60779922, 745992496, 568878231, 219589099, 342077524, 663953686, 222965282, 278832667, 497080261, 212597474, 529222034, 446564634, 419561676, 650522491, 235139889, 118769937, 173927286, 377175626, 320777688, 452350176, 553893168, 899611375, 710844417, 783169061, 135901949, 238972138, 872337646, 406676150, 961075651, 847651514, 725970754, 370644634, 633884641, 786050867, 265276169, 445548702, 266110795, 826557379, 215358501, 204177907 }
{1,770800349,473460213,90329745,516141506,434892407,559229335,272425509,404093620,234950599,515023474,586795835,725760009,649031689,800094382,695350985,885891889,19875660,63885070,314996191,601903418,891847977,365073189,794093141,524997421,349361043,276484416,655852737,187483888,5197913,920028858,644897635,662847404,443930237,626718092,118655272,671979587,459348723,102050853,114841715,839041821,574750349,342184129,273761027,594731841,959463443,173669247,754104392,477127780,78060727,877214377,998572936,62672385,451226729,729883416,590250850,162097490,331690653,348580925,111857429,615953306,931377862,730124053,354525007,490412964,711322180,989531020,735039843,59055219,699503265,951242528,847100317,791326428,347866513,886019889,575436535,735590386,7881879,437586340,413106322,189305245,469469767,714531093,444108355,265354155,127608101,91627530,270356704,137501626,930360672,516488462,413120650,274981707,720848324,80854768,855742438,464662579,89705989,292472939,227026527,560910601,721723135,450456483,653982548,12692633,727871791,489526839,760799010,961189137,71627876,1671654,262607922,243685077,991938279,825528905,464484651,587867706,89364140,547835154,283737122,832971990,148983145,810106026,120916442,72191553,408773370,100676918,571733022,851102011,279614129,894832439,221094395,207188137,691679526,190804629,863448546,138203494,372330593,478517219,384912567,389762800,30416682,131170179,459852123,178984410,467654800,978619669,199366392,789848756,979031607,600048362,766268873,334482044,404565855,480380362,188138147,474044939,881927721,841768588,860237060,653437965,571383286,750089693,317256644,413313146,470671611,51487417,894053796,796491336,374404249,829232681,388237761,131559485,925226954,976730280,982618469,390455333,20950006,556591180,485365487,654377406,204185417,518194515,339660189,966968981,922593652,616422010,280840812,14432945,732449273,805519849,625636199,95792096,692981828,241712656,205200236,744767368,49850192,833862289,458843156,491489364,770077464,553766201,486441485,648177048,45930421,625245593,344847772,280467804,800221125,638383176,3336168,617653048,73422953,934274284,967089696,307342518,39549379,69304996,548956190,390223978,850924048,48516093,129089932,560134482,602308225,408661489,754957775,219061890,508824831,860455906,494343131,453229675,224951503,214998739,962591627,800502133,198604725,456654996,755544021,957207477,960045007,683088438,232911019,408425957,605144194,911594530,243313461,792537737,379115959,673712926,404374413,990235145,583098210,39105060,470715706,397184803,116670243,629199685,204585902,701957223,674201198,564897693,471954607,121679640,24800375,304878826,130422081,415949995,646714836,689715409,548125527,369217826,313889370,396191198,54076777,356895047,643480126,754021709,203166172,730149791,131736589,156770287,292910289,168006037,757062955,557550924,515176193,551584020,879917871,625901631,943117836,307117754,579250698,564667813,633227965,420889115,667015097,210697441,854190757,31864926,901699485,40929022,326912473,304771799,467383184,109875539,898484648,390959572,187545690,521213124,320953206,83904350,108247527,484080318,761229549,79530598,522495328,891650305,938346494,452727759,711279201,737567826,740299860,22003123,987878944,947527870,638133832,140886372,463344904,225245135,726954805,637777175,94498877,918314867,476325361,675518372,882038455,64831403,920275944,846985100,745771296,786907629,631016953,658535839,499330797,267307280,684180843,474861624,376971759,737122669,328997991,537703098,752378420,549874976,633689082,998740758,639929559,617143428,278834154,274517390,989106322,913848856,650741869,650901275,633348988,78181721,26629676,228389534,719105454,851566098,559402281,998180366,487213171,729991318,131904601,534254931,945955064,243341023,396826356,776320635,658139160,105071545,494609049,671207682,86711211,721595841,980822929,241937417,700240434,855730922,834527998,784775926,130993695,2777409,172290988,473778573,640499245,473736523,757028569,233925585,39630131,454590843,948363793,924694532,157120671,684268922,820539197,539402575,707952475,517229040,62881349,148622727,202140299,887807776,911471938,469680126,911779184,559916553,977214940,869965331,562485591,891643254,156213021,37636936,42846376,466821737,864100064,304878777,750533625,858624588,691690260,154080909,277229029,35177119,985188919,183548171,212530192,911981101,71927601,508909125,523188779,754588906,314154875,513960679,850917826,103001644,23447056,960320480,740815372,627502708,808390258,142838785,711272708,437654221,40028153,385591960,704643683,956948608,287036712,624063667,774731505,65244484,499228680,111678779,949794995,114818795,842825689,434458472,704744627,228197545,23877089,149152920,582436990,559337001,857715153,549209639,156271731,41225319,960155712,572833993,346516763,742462467,683757926,637967207,785215354,954797948,293802935,600937402,310485669,603576967,479405801,46283945,582885517,539291053,106167495,849825746,840523004,592103582,635622399,951506130,58142782,196947616,406312839,191777116,474832199,437865096,942002170,303083353,319756571,221416990,454557317,331876657,151950819,799283399,3645996,53519567,71886665,452386766,834220620,309771450,446522572,833625784,402914238,409820165,436306577,854615616,714733612,836441194,681964644,220991044,709317749,289365127,405006516,189287572,557569263,169374067,404227818,716463643,480685071,635662490,619940081,98342642,827017754,496887964,235043878,863455719,348298656,513473667,363976527,397335931,283094746,944536658,66167536,736469756,928857686,273252727,177566290,192865274,88858724,684452076,931822398,311462250,100871827,908641278,453209679,131666124,819598023,424647538,715334967,230013783,684987000,360622436,559404790,723653777,850340631,95104509,350151957,552818866,199346874,42085960,676299217,813650498,289090818,701635322,149872677,282663424,995267764,877297376,938086908,955604917,805679803,328112721,989501569,222192714,588217212,593510928,246060525,170483023,446177205,97451095,477831588,138030838,264562619,783912009,901107841,923901207,851214715,434707945,291909949,601876748,68903480,154160565,595058071,255044284,921326046,702126033,289976004,867957191,13823993,870681371,370051318,171723708,419827415,277350316,548302658,985551558,370023917,997070422,143733350,46640877,175321745,805275204,233954324,706526430,891266113,179833893,911819103,761666366,106525580,349732943,477133659,429883004,743428134,531060913,601620175,706121908,270040015,376534065,5536165,938723011,294781126,677602573,852900279,776472937,40282213,549506025,501810961,541750924,949789842,856265150,416990397,950027819,338204258,44157788,102348576,10256958,520781231,186905138,88339731,80349046,33285459,645512237,911746707,804678981,406042427,365006532,871611015,230175000,338126468,178820996,356862760,792576073,337123153,226585933,704174485,344371955,213071829,678752550,884549856,86146921,7514932,132982831,111487546,684531313,400358020,473340763,524028403,195450254,983388417,23303850,689934777,778443642,491818352,344288804,259610900,852269387,729116974,453673937,103954567,925319241,25596130,202204776,724664752,218930004,705831850,267038532,756300442,687628444,639953731,525827826,905293627,222042918,210904479,519363142,775772778,735189350,25175941,174412274,359844480,312151901,448315096,957692903,462400707,884551832,735897778,727030277,345665559,133014368,905883223,450744097,51435065,224574204,690068622,784516354,510771255,127662952,951840356,135019954,510007206,576827863,951871144,481056484,104663508,761122447,914011180,17934035,988266558,906278610,298883146,89546376,124024777,509166167,696418135,342129569,437701391,355440571,622228173,740067853,75240156,275113412,25590006,414883630,753244654,366803830,802323135,134031742,537800084,301194778,293756399,519614661,259931393,913701152,904231362,21696769,744333978,362248180,968902403,481272270,631103993,968345808,283793212,294945662,378293408,83609644,520488226,508947954,586354433,94622197,64718251,737583497,569923006,49984689,520999421,620742348,86062897,873478741,132558541,872548047,62364324,400267929,256577677,105724404,138534461,654397664,584623343,431638936,230495378,38518728,463277416,406096562,736241295,777538826,252272072,92584956,330197957,871639308,11055711,622297067,183078151,488607869,932067451,17915747,37676511,755179867,128454208,467880523,807254019,21445384,247364025,618183862,229498098,604287270,851285200,994919051,813878330,966957317,765719402,599581423,614586603,187198376,370256907,847684032,324476643,310758069,488489093,461611660,753411794,176969517,731869002,88082910,102840634,373972319,214711745,587969758,664443881,820202475,923353044,936265149,394470391,332881255,102610525,678089854,807291106,287840723,49455825,857148902,794839816,531966974,67558297,573467787,264809923,532988574,721156213,266163766,295501091,872202109,887794807,855600329,180408787,802966575,91339002,935947827,499562634,942627145,392788117,138288562,909641982,124846803,257891021,499376003,725318369,146309728,105275731,768175842,796686018,243683233,951497671,836208709,207603372,808968883,35662738,522915707,844736991,258359563,75076105,972815407,943112811,814560072,274186993,238736702,536058241,34373858,264825092,74377758,430592095,773482138,867967881,171013833,922059394,603861155,761098769,569921034,61636579,556191039,982471806,896196406,424452195,485051502,669140573,961933399,377986745,874373517,559380045,993247557,720628714,708777182,984613378,36756665,791994929,117059408,535327266,567874937,50832458,739939024,114265507,769711894,403333277,858333624,3455140,28070523,737863991,448979852,248082518,29991783,10081383,335497273,147036710,798159043,264111899,364211943,476254660,495200344,301070874,4763162,274015071,194604896,876402108,472362227,449754577,272711185,992618346,338814395,531411,824528902,249423603,258394212,329880618,187501322,910327890,602577496,737489762,373829313,330221382,132873304,737244190,395157714,506758523,327922039,373071762,8357451,369072631,1904816,956322183,892708072,680221692,307979174,446437564,430160743,283619112,97398490,601564622,147650996,281510059,145455001,696247041,75561192,596943135,520923703,388792366,502292688,99091241,225556856,224990233,267360774,339089315,738997867,346213911,467513022,951515465,989291823,550650753,543784656,743931334,338455292,459283386,957978474,88837935,764008640,500756106,749037381,617024220,109694581,272246622,329345190,30260819,640414857,127668260,681833754,41030213,264509086,858154435,469750756,988978636,86952484,165117442,261638518,104252886,692688572,778518415,321034249,409103937,520652269,505384468,120883767,854495141,262897419,232564891,40098073,347802728,737605097,665954264,812480276,918761508,643954776,661225820,470223195,837702921,927707654,615984342,191816434,814699044,935566308,591766725,918122682,484327014,55422889,723747565,615342015,715621873,786628203,762698285,905674464,451528836,515153857,783579200,703259628,326642295,180294986,997624433,496553325,147835024,256468391,286003393,873107992,999209981,849158768,223415257,831608608,627064228,247041383,480172883,699957100,479328065,742922891,289603176,635509241,303284688,138925838,676195228,971330266,329694018,872271662,322335095,958408265,262649095,426174617,698124649,607272017,579948949,677041572,430526125,702359779,885165144,798479166,1587392,92004746,622063092,719632559,402499210,838932743,995609324,993951305,70777590,970502144,573654056,239403092,338186790,886230427,429633603,559175467,798919137,195498374,347005076,423048714,981597438,382077300,678427689,539487327,954580337,181324661,200421032,355794091,267665706,212640760,160896696,361381307,335065656,943770960,497643657,670898677,380482873,568024489,480622825,754845771,211558085,522895563,106510,356764172,735427104,749065438,143845955,42950539,515096723,461727217,985510023,209387608,52377283,702981567,230039820,180654310,385635535,861743527,976827394,288153469,931660466,970907267,729842637,168088442,546532071,631257572,928127643,346310944,368439019,122664242,729371253,914186265,150439968,170741796,454540051,602959072,476589706,180512545,719807125,226213450,835441613,481993960,589812489,717830651,537729687,922379830,933338512,799549215,397771301,705790620,335284703,359478216,935572677,708080414,449256796,441010485,224888112,803038396,802920630,752253667,276818787,979632529,511411031,719260393,437937122,11116534,150536050,289921003,166451353,863231750,360102283,304427421,214409350,686971475,659793082,17412706,210824022,38357976,296075918,17410383,425817050,316946492,793758314,902060436,672385617,124610942,819177369,734046936,347105593,466561561,944587635,220446729,85653985,38774639,601433369,579792456,126291356,227623094,781297762,392329695,635804690,654241023,927525427,72546033,227942462,104184928,417580127,927223076,479719627,619680566,738783952,383860855,818098508,360494323,743010035,983542980,489657562,522164494,165966127,750849396,418350107,901425160,150386569,412911891,805214000,535646854,601124735,729934517,583641931,253720182,115225863,710935713,347405774,424038226,913826021,634659982,363634299,622799453,966511803,341675114,62160890,714032901,353272583,792346801,603444073,740170593,694262842,620377537,122418154,393406688,780426173,214145068,437098352,352528107,331653282,887901815,371595754,916009452,816471522,367154089,695610566,248558671,649393177,666675646,672722171,553161719,207624009,949106857,140420070,472932329,843727915,345253854,433510238,305757189,837982183,798593925,556237991,826451274,462532510,232470216,835040281,599408480,456467940,932662956,593070990,172392356,390691007,391468948,286731593,987352212,991425522,541335684,47597150,542446108,100885678,770717372,401088255,143024900,405316036,647036189,896374162,76154049,827956897,107233443,569670933,517403618,62285063,447223968,5565092,817371124,494557777,888863565,72219501,632924847,816861957,137577383,547789871,673497808,390116392,463232692,586120146,271287560,21716222,594292432,29829995,365461990,908020879,962829285,759243131,219156624,913596965,110135965,824134486,951240933,246274442,150458936,338830500,495051947,253329146,129394935,334002652,118084253,577973836,343460973,673132068,395400957,548646962,798075791,129010021,952205506,747412634,144253221,398482117,543066722,675454652,694166624,201933782,106203255,458616539,497991898,561352031,684999270,503341255,993075071,34896656,326495010,61203781,722838473,672377449,3023079,395538985,17908239,364022907,805007081,220171947,265551494,629004507,83696015,893261213,862515067,25027484,436906448,624254314,233158865,694997194,808815240,621677214,477047995,380180004,165730554,29310232,376458272,542485742,454369840,609652322,341093847,58663085,537094148,715744690,509352085,119668503,277083924,571331153,607206615,976946071,763416316,40170024,592570442,720958517,595241829,594885461,529618357,771729501,388599484,766168497,110930819,380486920,582906372,479691536,319348046,761415908,147082128,152770220,96437435,573425646,912804875,322569876,100525002,662040567,957038344,938066770,710984662,506549847,791732443,659347064,314708115,99556207,494750597,435663789,6697944,517102824,694298679,309258113,33260789,975595896,348209524,400455662,29272834,340246778,49311006,915100789,437998068,87163255,583021728,736558939,42240340,930969690,238450337,388187045,361999251,295077574,136211135,766988865,219555841,754597401,610428880,146200271,526012361,434014821,609840612,485918115,690914262,95419118,973999320,562621003,394130002,886251978,529932693,288988597,91646832,848292407,640410165,318546951,186270968,341476390,902681464,965376248,343441587,250993747,91397275,944423353,946455501,987769418,225529287,532777750,415676755,528420516,919052764,717440735,170683340,196137351,120812087,893359421,516824035,384258164,962467901,270539412,568807803,148488766,326214588,69464069,610618189,658037071,585403425,441885162,592867893,679160144,854583629,550673396,672479231,617720505,211828930,512643479,993287433,190732095,147228147,494519877,66405387,607584787,307329637,893065300,947344098,29169672,30006657,427336546,834757082,451043928,296303042,613512025,492872568,299112739,329617872,932682019,169320780,904337980,132840216,890933304,768711870,169432573,113251809,194552615,276449560,210926190,333533045,228254601,412414968,694593588,492670266,772741864,420245523,779074549,836390934,605736157,411843364,800208818,200224520,179809306,309680690,693916748,646569866,319205645,327978040,290065674,575403392,370829547,976353690,212007666,863765654,889336902,659863987,178294051,551026212,452822540,628101939,290980801,374255292,707501130,593151943,285165968,450854296,366896372,873473257,205044423,835467964,924743188,187699263,121522783,160231605,66498580,811894972,223641206,846249636,374985381,235949700,719234459,407046245,750808280,29190257,953664515,472666516,603001171,555663508,695836781,218794535,952450599,534156563,63151383,965722726,435586969,1154250,668136217,299473667,180354546,591614262,769691638,554065016,784955342,942315524,422794234,6286690,677195473,4461198,517556488,839154510,274619858,723172222,473875906,193641834,326154018,990046391,920078027,462323798,148567892,638991218,383548756,255588054,110874286,767104071,148267513,578409455,358636301,754473334,504366235,477196718,639823575,14019397,913385490,849551270,835721735,732436638,992262603,546273299,600154994,73253490,675747520,460135129,408471273,725437162,956172872,914552793,615560466,865214096,425268133,740424315,536118736,281322299,192772469,126873941,485151263,731003109,106242426,480605061,270008257,935784217,459412598,362654819,257797848,275173934,496117713,873035495,588580321,670746335,167888446,311704078,586628401,812114054,651759458,463013598,428445345,595285879,84228224,901800242,632422668,416719485,386076251,229253439,330372964,305374228,742884040,246799362,432809162,31213255,116442833,169210929,115279278,919520369,899493143,573942692,252588940,54281738,716483731,740254212,329094925,763163221,487340363,310032841,271517962,507777337,487750702,621613255,170466947,369459025,89730709,110047362,709956091,751610255,146108220,346353160,745365571,681727033,878989974,750177831,577518481,601553869,871257798,162170973,675824154,281329091,554358028,189989617,564641233,70202905,491771864,1846504,772193289,700112187,625384829,284922472,964234719,818229160,623569949,981087789,91073105,635055810,243155912,997964381,140336183,796653184,302259472,750548103,389995838,949157191,102807527,333484507,674008693,481820174,50090050,767836224,296456476,330617873,583693724,563899102,774186439,8364217,144713852,545905277,923347613,660827993,695381335,459914431,537346603,634467135,692677935,931221406,516220154,125471921,949271565,909195177,670463211,244549654,525775962,153724738,209128969,97929849,856476725,978179744,983944075,986602940,762159688,82317889,293353571,251093229,92701744,842216140,942780823,467984688,341150501,5246551,37043533,407083342,590029389,252295509,387511919,697723527,780455560,59837105,876556132,813049660,217688656,567725574,933099634,147849211,633536848,977902409,859197571,281062559,23155921,557128048,537833402,454809830,247730443,951108506,555919996,499406992,920503353,777886797,333234013,179618313,694974605,138855700,523965583,446748376,738764672,964595301,150699971,874491288,108542884,191700647,948716008,392082219,436032718,848659872,974239371,356120661,512491524,431390964,545066559}
{1,3,1,1,2,1,2,1,2,1,1,1,1,1,1,1,1,1,3,1,3,2,2,1,1,1,1,1,1,1,1,1,2,1,1,1,2,1,2,1,2,2,1,1,3,1,1,1,1,2,1,1,1,1,3,2,1,2,1,1,2,1,2,3,1,2,2,2,1,2,1,1,1,1,1,2,3,2,1,1,1,1,1,1,1,1,1,1,2,1,1,1,2,2,3,1,1,1,1,1,1,1,1,1,1,1,1,2,2,3,2,1,3,1,1,2,1,1,1,1,1,1,1,1,1,2,1,1,1,2,2,1,2,1,3,1,1,2,1,1,1,2,1,1,1,2,1,1,1,2,1,1,2,1,2,1,2,1,1,1,2,1,3,2,1,1,1,2,1,2,2,1,1,1,1,1,3,1,1,2,1,2,1,1,1,2,1,2,1,1,1,1,1,1,1,2,1,1,1,2,2,1,3,2,1,1,2,1,2,2,2,1,1,3,1,1,1,1,1,3,1,2,2,1,1,3,2,1,2,1,3,1,1,2,1,1,1,3,3,3,1,3,2,1,2,1,1,1,1,2,1,1,2,1,1,1,1,1,1,2,2,1,2,1,3,1,1,1,2,3,1,3,1,1,1,1,3,1,1,1,2,2,2,2,1,2,1,1,3,1,1,1,3,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,1,3,1,2,1,3,3,1,1,1,1,2,2,1,1,1,3,1,2,1,2,2,1,3,3,1,2,1,1,1,1,1,3,1,1,1,1,2,1,3,3,1,1,1,3,1,2,1,1,1,2,2,1,1,1,2,2,1,3,1,1,1,2,1,2,1,1,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,3,1,2,2,1,1,3,1,1,1,1,1,1,3,2,1,1,1,3,1,3,2,2,1,1,1,2,1,1,3,1,3,2,1,1,1,1,1,1,2,1,1,1,1,1,1,1,1,3,1,2,1,2,1,1,1,1,1,2,1,1,1,1,1,2,1,1,2,1,1,2,1,1,1,3,2,1,2,2,1,2,1,1,2,1,1,2,3,1,1,1,2,1,1,1,1,1,1,1,1,2,2,1,1,2,1,1,3,3,1,1,2,3,1,1,1,1,1,1,1,1,2,1,1,1,1,2,1,1,1,2,1,1,1,1,1,1,1,1,1,1,1,2,1,2,1,2,1,1,1,2,2,1,1,1,1,3,1,1,1,2,1,2,1,1,2,1,2,1,1,1,1,1,1,3,2,1,1,2,2,2,3,2,1,1,1,1,2,1,1,1,1,1,2,1,2,1,2,2,1,1,2,3,2,3,1,1,2,1,1,1,2,1,1,1,3,1,2,1,1,3,1,1,1,1,1,2,2,1,1,3,1,1,2,1,1,2,3,1,1,1,2,1,2,1,1,1,2,2,1,1,3,1,1,3,1,2,1,1,1,1,3,1,1,1,2,1,2,1,3,2,1,1,2,1,1,1,1,1,1,1,1,1,3,1,1,2,2,1,2,2,3,1,1,1,3,2,1,2,1,1,1,3,1,2,3,1,3,1,1,2,3,2,3,1,1,1,1,1,2,1,1,3,1,2,2,2,1,2,2,1,1,1,1,1,1,1,2,1,1,1,1,2,1,2,1,1,1,1,2,1,3,1,1,1,2,1,3,3,1,2,3,1,1,2,1,3,1,2,1,1,1,1,3,2,1,2,1,1,1,1,1,1,1,1,1,1,2,1,1,1,1,1,1,3,1,1,1,2,3,1,1,3,3,1,1,2,1,1,1,1,1,2,1,2,2,1,1,1,2,3,1,1,2,2,3,1,2,2,1,1,1,1,1,1,1,2,1,1,2,1,2,1,2,3,1,2,1,1,1,1,1,1,1,3,1,2,3,1,1,3,1,1,2,1,1,1,1,1,1,1,1,1,2,1,1,1,3,1,2,2,1,1,3,1,3,1,2,2,1,3,1,1,2,1,1,1,2,1,1,2,1,2,1,2,1,1,1,2,2,1,1,1,3,3,1,2,3,2,2,2,1,3,1,1,2,1,1,2,3,2,1,1,2,1,1,1,3,2,2,1,2,1,3,1,1,1,1,1,1,3,2,2,1,1,1,1,1,1,2,1,2,1,1,1,1,1,1,1,1,1,2,1,1,1,1,2,1,1,1,1,1,2,2,1,2,2,1,1,1,1,1,1,2,1,1,1,3,1,2,3,1,1,1,2,1,1,1,2,1,1,2,1,3,2,1,1,1,1,2,1,1,1,2,3,2,1,3,1,2,1,2,1,1,1,2,1,1,2,1,3,1,3,1,1,1,3,1,2,2,1,1,1,1,1,1,1,3,1,1,2,1,2,3,1,1,2,1,1,1,1,1,2,3,2,2,3,1,1,1,2,1,3,1,1,2,3,2,1,1,2,1,1,1,1,1,1,1,1,1,1,2,2,1,2,1,1,2,1,1,2,1,3,1,1,1,1,1,1,1,1,2,3,1,2,2,2,1,1,2,1,3,2,1,1,1,1,1,2,1,2,1,1,2,1,1,1,2,2,1,2,2,2,1,1,2,1,3,3,1,1,1,2,1,1,3,2,2,1,1,1,1,2,3,2,1,1,1,3,1,1,1,1,3,1,2,1,2,1,1,1,1,1,2,1,1,1,1,1,2,1,3,1,1,1,1,1,2,1,1,2,1,1,1,2,3,1,1,1,1,1,1,2,1,3,1,2,1,1,1,1,1,2,1,1,1,1,1,1,3,1,1,1,1,2,1,1,1,1,1,1,1,2,1,1,1,1,1,1,2,1,1,1,1,3,1,1,1,2,2,1,1,1,3,1,1,2,1,2,2,1,1,2,3,1,1,1,1,1,1,1,2,1,3,1,1,1,1,1,1,1,1,1,1,1,2,1,3,1,2,1,1,1,2,2,3,2,1,1,3,3,2,2,1,1,1,3,2,1,1,2,1,1,2,1,2,1,3,1,1,1,2,1,1,2,2,2,3,2,1,1,3,1,1,1,1,1,2,1,1,1,1,2,1,2,1,1,1,1,1,2,2,2,1,1,3,2,2,3,1,1,1,3,1,1,1,1,1,1,1,1,2,1,1,2,2,1,1,2,1,2,1,1,1,1,1,3,3,1,1,1,3,1,1,2,3,1,2,2,1,1,1,2,2,1,1,2,1,1,1,2,1,2,2,1,1,2,2,2,2,2,2,1,1,2,3,1,1,2,1,1,1,2,1,2,1,1,2,1,1,1,1,1,1,2,1,1,1,1,3,1,2,1,1,1,3,1,1,1,1,2,1,1,1,1,2,1,1,3,2,2,1,2,2,2,1,1,2,1,1,1,1,2,2,1,2,1,2,1,1,2,3,1,1,1,1,1,2,2,3,1,2,1,3,1,1,3,2,1,1,1,1,2,3,3,1,3,3,1,1,3,3,2,1,2,2,1,1,2,1,2,1,1,1,1,1,2,1,3,1,1,1,1,1,1,1,1,1,1,1,1,1,3,1,2,1,2,2,2,1,1,1,2,1,1,1,1,1,1,1,1,1,1,3,3,1,2,1,1,1,2,3,3,1,1,3,1,3,1,1,1,3,1,1,1,1,1,1,1,2,1,1,2,2,1,1,2,1,3,1,2,1,1,1,1,3,1,2,1,2,2,1,1,2,2,3,1,2,1,1,1,1,1,2,1,1,1,1,2,1,1,1,2,1,2,1,2,1,3,1,2,2,1,1,1,1,1,1,1,3,3,1,1,2,2,1,1,2,3,1,3,3,1,1,1,1,1,1,1,1,2,1,2,1,2,1,1,2,1,1,1,1,1,1,3,3,3,3,2,3,1,1,3,1,1,3,1,1}
{641651,217079,755352,231452,204614,859737,480163,815839,304073,448436,684787,198255,313216,290320,584231,188282,703288,211342,912715,140068,465223,168808,59409,618959,17614,918005,42967,854421,237625,416740,838501,60874,474298,973566,607021,893372,816339,691558,396875,860853,815819,522906,197573,779829,654517,793136,181386,911546,179310,873116,167924,192633,659422,204134,328583,996708,963379,992502,694385,857763,692139,924106,744778,669533,970888,409532,26387,950126,617051,679806,353721,391088,692859,974558,168976,139188,688781,668164,195481,101639,953211,556465,891262,628528,222655,819712,185747,889965,430103,519143,302037,351803,398351,95220,313772,773389,753788,857169,144298,325841,531773,897986,731914,282865,954938,577443,667828,189069,988391,307308,969397,320258,417727,693231,933769,380392,135050,669974,981395,560461,140889,283111,479201,343037,827079,899009,295338,254459,817335,501086,68305,623238,282074,209297,387233,447831,244648,666759,774800,317151,768355,446535,259006,49099,867929,547316,772853,765121,733984,128135,640552,249506,225498,800151,757557,401096,454960,218258,12965,339655,258969,200771,917800,816365,563410,438924,454940,584643,65444,242731,804293,458315,603234,234038,94035,821058,958698,214432,822817,223069,650465,184820,710385,721421,250105,81366,208370,875581,724077,676807,434620,843856,332225,634911,148305,101669,224196,613459,91035,416021,537743,559854,750066,325233,309316,169305,157013,673286,934993,525460,1837,993562,34669,315708,729679,448942,85271,465157,294328,787579,3292,755903,245329,382007,436048,414739,459242,881615,701329,809605,568064,567788,829704,38001,150840,673392,370665,462159,935011,536567,798447,722608,686203,144984,397667,605632,18274,996580,612116,640196,363367,821027,871454,363227,594433,903067,425957,551935,376403,841226,973784,651779,176425,96809,171504,11731,375863,240809,563120,295417,742302,462903,279460,719060,535464,926713,480676,358048,337417,947855,332112,670131,595166,988757,173394,658363,459055,62173,796129,699330,319790,673527,772666,484396,611062,144555,93351,964982,265038,852987,154874,278582,162982,240356,261967,33311,319319,155483,838607,993659,839269,965073,364137,823793,334909,300272,692121,396350,649529,627229,732388,426045,993304,446966,662167,964129,647304,174163,632524,22199,90910,588103,239590,583143,397210,329758,46417,176178,419174,792798,614661,819954,599893,7432,796098,792670,781606,235029,462995,44037,365631,560186,650573,265424,710772,523622,89550,653890,236671,914881,862272,859449,489671,558381,227861,138092,380251,319494,450954,425068,331446,7715,153126,318821,696122,681684,907449,811995,547319,152036,540575,316399,41955,67349,442301,150234,494752,250216,273344,291502,506299,308245,807970,35482,164968,915212,889446,892580,837833,604028,365273,436462,9062,77834,679313,108851,62132,202070,262639,685448,603664,504956,701790,583773,96898,102350,689747,751484,177085,520028,864333,609158,982107,710702,717844,95611,77090,339653,651963,433136,761475,966048,109983,794711,622935,161202,105127,876669,340834,868334,773572,517253,131922,26237,987312,600943,36223,92868,784048,622741,272234,303841,673684,376618,428159,97964,786355,710011,888597,338424,352242,406383,689322,127633,215931,366345,128937,4540,483527,760930,384165,963708,404055,60465,145949,651337,532084,237956,427512,120024,816500,895238,270600,470040,592118,962489,844361,558513,166754,970363,895328,410820,760491,361730,825181,74223,74446,74337,222139,391560,39571,443715,977117,876639,588552,256301,633169,961022,881227,434685,294606,485034,955134,549551,835447,508320,994450,668308,949527,207066,887231,786330,730212,119242,138887,981321,191998,282204,425784,510594,227374,142069,850344,792704,465385,707895,678457,226136,952013,396477,209556,608058,866592,663129,110447,917935,256278,575258,15049,998938,535369,387210,154346,956730,552448,546985,507558,148196,976362,882805,718488,968394,828002,785764,715945,694392,868394,748582,4552,618067,649329,378021,699440,479258,648655,513926,504743,246887,452998,541606,79739,222125,109632,392095,527365,791480,9493,626947,395943,918066,391108,49757,470479,796698,600182,368565,515828,438092,150656,763658,228629,857086,697759,843799,116607,673726,945595,42576,694149,326838,720166,328739,21191,929770,90012,408890,963502,990007,135363,275829,948715,878355,794346,486770,821181,239825,581579,835527,337961,905436,76618,760835,566017,233464,505909,626674,962528,257477,190851,384664,781674,443710,858519,50610,352654,372020,640061,497658,185029,906901,87145,13730,837202,312745,777532,40661,569025,435472,514752,513594,60650,16327,354664,15923,879020,378402,897555,152983,693940,144337,244552,309181,730102,652316,791865,706483,92464,211305,604930,277632,564459,786611,301480,840168,656187,818385,608091,381605,563516,545271,157686,916208,837972,307437,102972,518135,673974,126939,412698,593958,198811,857727,464362,912545,349576,535155,375019,581061,812300,630953,121803,615212,233472,221872,489247,628199,609863,277678,477543,521603,451853,592741,367117,320711,841674,636336,317092,868082,485566,702724,28586,920767,274036,712434,712648,379746,803264,733985,301582,613641,687171,347413,813818,601117,128163,646573,501167,742272,617749,668254,235008,556687,361877,204859,20068,412896,455722,403694,561280,915842,33957,904509,202595,699649,326880,285511,685507,969248,402176,934086,137346,638174,867252,944333,175020,980212,454261,568713,129720,141459,258822,776578,409861,25320,841460,806296,420764,573530,890837,581000,694258,884424,899978,516389,786020,372428,594494,372577,210810,483260,336294,137668,453542,977893,204288,659313,891652,935889,925142,256038,683865,837248,651962,847865,654358,457839,348681,37405,513044,748374,55466,190941,335063,266019,5838,687069,906893,407938,103535,233246,835406,59862,694866,389945,700187,329086,365255,976160,616096,163603,452517,259873,500083,124134,141904,459748,991765,862212,900341,722986,930990,58291,879434,44238,781586,752692,384976,114629,625600,808001,664211,223839,799583,319693,4774,827077,983040,261064,365992,637115,480929,946138,708035,907997,357030,360998,888809,881315,98912,113414,787608,581150,51271,378386,24853,510906,283649,809050,568114,265724,526811,386217,539017,882756,915148,932610,959935,660425,776886,292708,426692,944225,131046,34376,6736,472184,728401,976223,845093,852117,747095,148310,580817,384858,301954,173587,467946,966211,154309,377463,513169,204067,84222,695643,694962,755948,798070,506197,185152,482661,862557,552498,181947,644211,495888,366267,159531,435602,390357,441842,603171,101275,826459,613203,5185,961662,858557,885013,337322,336454,366525,741609,249488,35098,608778,951287,279533,740471,521084,476005,321799,444792,363797,793105,376172,389905,981631,787540,65781,467597,899858,569534,597764,286549,561420,865950,171079,64361,792792,958329,303028,803110,373578,908112,614989,123456,322527,732316,549340,651783,39103,186835,402677,853156,942460,113378,299128,334234,665106,28850,340301,883847,74727,710245,211816,451490,727818,750871,256964,177980,543157,4639,287466,57729,898508,793677,544105,181366,499613,162731,120604,341818,616351,459390,261289,120966,962741,780164,223166,464303,613354,586550,647764,395680,115701,792005,720622,91874,257332,924445,30552,550486,707378,636070,916393,329655,594466,799488,161219,744283,380067,839044,639632,40816,26300,544200,164868,41728,591710,339289,547871,839087,335719,507071,555178,344761,377371,777726,655926,354679,65642,437457,724514,356056,836591,237679,69780,317354,92333,289224,777724,33808,470865,334534,840534,151818,171573,397390,965478,31666,672664,950270,528187,730747,877928,525870,706222,161522,232058,26609,8226,944447,882318,704403,234051,918562,2317,159322,623689,957944,337484,356230,243636,691509,783305,254290,375758,399720,58410,376435,958510,210364,502083,918998,709937,120499,532366,77283,833793,825323,66226,362942,332688,965978,17022,376514,865243,100307,750700,745734,644840,231169,379232,141466,653770,350953,392233,128456,648346,818538,256508,225045,291965,319613,961150,741566,850722,516342,190328,691646,192514,130115,984290,277444,693280,154282,284058,569343,274441,849100,509419,753876,456083,23590,547529,760739,473887,662413,317137,78279,998744,740399,968139,608852,148530,29526,165353,829721,580910,256165,728711,296030,313107,919130,416043,770596,26868,942733,510404,26665,409390,263405,734700,575779,89128,256135,951527,429890,537746,123072,921314,65648,148072,459223,327927,809426,733167,180966,756070,394629,131764,616352,202203,771427,274833,994258,176748,681342,345513,951203,300185,991777,674089,430293,92748,495828,91847,39172,849049,650198,882372,778147,51132,784610,159467,961540,246495,420012,876881,833486,226579,848739,287317,274950,422739,60718,168991,190665,816390,435761,326050,279693,251836,694983,709851,232421,348589,590023,657425,476476,501439,493632,970581,858326,660671,587326,688577,430100,870308,428549,249787,700526,118992,529490,207152,678456,442576,984031,982363,27999,388889,535838,286909,770987,980747,515770,269284,444157,805679,790491,271590,78479,703098,144544,333476,255416,176458,280932,170378,651111,232549,138875,575883,4581,26687,712180,250918,344917,875570,604886,515109,461429,543172,49956,519515,595164,12839,81307,706467,247676,452914,559281,583589,857119,410858,861333,534802,385258,863933,631795,844197,226974,487491,930159,235105,621524,16701,173606,91991,423487,573016,754674,940639,405483,583272,876196,523291,123265,196207,817610,690873,136322,597013,531176,246191,480905,48047,358080,522559,856140,515770,485964,584242,339801,270494,952640,219934,226651,373997,495819,152994,706643,752163,140628,399911,96097,817573,491006,562526,417146,722052,757158,857606,688881,365817,158241,77540,78896,842984,926273,335178,138941,43807,80655,280915,156920,674197,694287,446562,664473,831085,306176,43048,996980,446578,677531,401245,970742,328026,503377,675908,295910,343557,799184,812201,116647,468029,512700,642979,719346,972982,41911,293076,526430,843788,841115,962213,336218,415753,869308,936973,803887,603166,839272,284169,861248,311078,788456,123746,772298,93928,14526,975212,18534,171348,808167,6339,877636,20098,124248,675085,857392,513848,876227,864892,479823,194530,950289,269707,238879,973081,242982,420990,780604,712415,918817,392228,255319,362975,60059,107990,589247,470255,44709,396663,190234,536078,615948,582579,998185,596840,73814,913666,653641,940175,546500,633571,329903,429889,887504,936227,45737,75687,261998,292886,979681,379409,843148,475994,954650,561532,703379,268568,832179,635022,151077,257796,154209,656534,345695,377434,363574,702030,154454,751265,647326,300314,852251,969833,463518,465289,805369,3662,391702,66384,202867,406196,19774,89236,43528,478154,19177,741982,532721,293897,401350,260390,498207,266996,639836,211338,188543,56984,814155,109909,125175,814986,333071,909435,398696,609261,184766,293273,777580,526123,191238,166647,445974,288505,641010,241095,227831,65237,481956,453157,619221,15049,19481,218198,348595,822183,896234,232523,502093,443532,726855,626653,97306,386527,59515,397136,427594,714768,676013,768209,401288,78619,883803,547450,431223,227141,783902,439883,813366,126811,457770,215088,44254,514679,108428,541951,293248,245820,664044,902712,812521,262231,304075,140997,660959,725822,347907,527865,329698,679154,633611,843667,335790,136638,648306,852793,706613,225783,251745,371263,296040,309115,671708,33056,843884,655924,831103,325121,358,407188,952706,772274,589490,340376,897014,676590,398757,265607,81607,55767,668368,380338,970746,582589,646717,908403,939438,45078,560305,799280,596764,933188,974058,968662,309593,397012,438689,580320,808081,974011,769479,117455,819467,781977,120905,579505,134505,119031,819533,127836,533798,286922,368435,758449,711320,103791,119255,423579,313133,154095,360075,188431,524335,238330,542559,767820,222978,602861,869083,945818,286882,815182,956609,526476,404840,705612,513293,347455,922755,559105,162934,641819,364225,192369,645164,329230,369221,948426,762393,623702,221072,380580}
Returns: {5614076, 879801288, 767290265, 368368242, 398654429, 969825890, 153100011, 43995848, 629747575, 47080139, 995010797, 442600755, 89470952, 637815379, 439086098, 890516261, 534218272, 664479019, 152744458, 302156403, 398890731, 968504388, 845288079, 113257816, 841803152, 38174876, 983806516, 239847805, 568800627, 450800434, 349130293, 796545315, 528725040, 441209118, 145278509, 513307935, 417828595, 776483526, 470599305, 130853964, 538165065, 988463762, 560305269, 431533985, 388270897, 4869632, 662825697, 125241101, 397985391, 746246196, 806642677, 26322362, 532817040, 80170993, 23421771, 540148026, 846815855, 675308036, 292152502, 275680618, 268089224, 855022625, 364159311, 928100536, 465418868, 303306878, 933197444, 959992605, 695451216, 830606585, 861129748, 486106806, 9427666, 267256616, 773278938, 334862215, 707234291, 189706560, 205643483, 726810000, 549276481, 376068340, 994846752, 297634927, 503473006, 516252542, 196857092, 591614081, 625954960, 799194746, 427105990, 990854562, 566203530, 782033175, 232418211, 65988123, 640420239, 442056746, 287193132, 641299294, 547193311, 769069277, 492026213, 269351694, 640092819, 799509253, 167631519, 32259057, 624687481, 697161932, 123323486, 268789701, 45085904, 933606705, 512315592, 938634075, 502666961, 758480825, 470290813, 858954645, 445467237, 949632698, 250170723, 393265827, 229001877, 545453688, 299157958, 324757238, 142916614, 287943836, 139672275, 771436652, 633299510, 665514006, 27888434, 91151603, 954751131, 997670217, 65214032, 714603365, 631716445, 564220716, 100995218, 516627403, 534705346, 138272753, 615167917, 2645814, 426447463, 194004897, 891462759, 142298788, 642183800, 549385103, 816031997, 375421073, 768079121, 404544787, 681718836, 50373494, 586142624, 91866292, 641926781, 826661432, 771135145, 591040186, 659208531, 942898958, 974281839, 301012448, 632931615, 955774946, 987213415, 437965282, 75874301, 681369501, 278010196, 64601128, 809332759, 868594330, 594862687, 426118523, 653121643, 156046643, 61077663, 715254510, 539956576, 142565452, 590062694, 655224986, 321858610, 95878901, 533665570, 357427302, 64963726, 604374979, 760233889, 20551826, 21423718, 902803090, 473792602, 74591158, 905555361, 874539631, 851480814, 481921206, 282402991, 971229968, 966684166, 730673153, 384590711, 212431937, 879364087, 944101403, 801361697, 933662820, 406892822, 217293318, 552656373, 720891830, 118501661, 454777569, 539982373, 752411293, 590278365, 484944856, 113814205, 517306780, 808281646, 552505705, 81818572, 87391060, 200925004, 877833907, 480648189, 836685455, 156042116, 19568159, 943026497, 765598715, 272419473, 161540410, 904608520, 917252484, 616714870, 634980162, 42212429, 692938118, 149657814, 167296481, 28569780, 849537486, 819246047, 179042532, 440987516, 582780862, 760658994, 613638619, 317587278, 148482539, 520473320, 961450013, 717216151, 597936394, 967606145, 468782837, 2061688, 830641499, 207974626, 984120282, 796156746, 591396139, 874166898, 895806205, 560365337, 190665058, 221976427, 304428456, 432789102, 543940092, 14550895, 798615066, 45651923, 132528024, 55127600, 14590306, 499304174, 357795361, 759389582, 774494412, 909177785, 416919655, 360487935, 507252156, 195507465, 376867386, 60772757, 916379532, 487984848, 330567522, 244969244, 284939986, 430844054, 127903591, 306025751, 940823509, 756138863, 246334452, 175121884, 905220698, 888101250, 182787443, 526869206, 701877785, 90300792, 503154624, 951192104, 254980750, 933715297, 308935078, 38407889, 566317806, 685063610, 20716407, 130832031, 849804576, 579569449, 526690974, 701418095, 96929373, 449406617, 578100578, 37724788, 963049512, 979087093, 348842850, 613233170, 857489260, 364584585, 339207685, 501374952, 87834438, 165060750, 968728818, 800696129, 928787391, 680343717, 941082326, 556521142, 867444355, 69093529, 504584468, 357326198, 305163004, 62738492, 473538948, 621297293, 413645907, 710374438, 765650650, 382543677, 373948798, 769279231, 107680359, 636555998, 166373411, 160955154, 728041574, 768339441, 845841051, 867422040, 538650831, 63439638, 954832021, 550383963, 221948304, 141598594, 82534635, 330905346, 535906885, 908154293, 568113142, 936929379, 758867808, 846099293, 573943263, 716704418, 491211468, 588007377, 579582430, 345991549, 835795467, 772161299, 233028468, 457248327, 109990649, 506053508, 983086602, 653447467, 995838079, 899487692, 907761267, 281321154, 330010850, 480055202, 418970606, 328019296, 488735853, 553918973, 229174275, 106750103, 437666331, 51871414, 414411454, 373805204, 709504232, 909025409, 199941187, 851182208, 891700707, 546094832, 3286609, 205947424, 810932720, 181983049, 707555970, 33770147, 335922900, 470988577, 534347969, 100225774, 207548758, 608183873, 294337864, 252220993, 400851859, 693535826, 123738445, 280543842, 646812577, 269007017, 2011946, 833686526, 476646412, 403380460, 890820861, 574786557, 743216532, 194375045, 736698580, 941945615, 283737398, 777698157, 868365487, 465121055, 311168673, 551042692, 253563116, 469998112, 172863555, 275398514, 98384, 686841058, 995810110, 74477839, 381365973, 975380433, 516578736, 52454304, 744018435, 402306913, 783695234, 548502135, 426087295, 231481369, 716660212, 437990154, 191303567, 466397805, 495345659, 12143046, 842123906, 743463324, 62480027, 45558777, 334083972, 843914604, 193177447, 761699071, 56779933, 632079097, 187853078, 691590996, 406285965, 986835122, 483217521, 805730917, 809627268, 589541313, 815334609, 992832555, 35700234, 271153666, 2906584, 265062560, 691639962, 669006476, 347317843, 322143476, 212988777, 806515342, 282568154, 146429188, 245398393, 677017974, 512990281, 671440857, 127508833, 286447361, 28408566, 879632438, 715746484, 575254818, 810177610, 815676823, 394148874, 68984619, 658107574, 196303427, 259261181, 261741417, 788880357, 834950575, 619690801, 966833965, 895025163, 413239772, 84342581, 49105403, 30727456, 890580736, 199114816, 706346788, 430439644, 57989745, 566691523, 386444384, 853986238, 28624395, 456955478, 191107811, 671573633, 752955336, 395856827, 734643429, 601044859, 379541366, 271175236, 625572048, 750617261, 45783772, 180119167, 803888590, 201485867, 425642855, 428040611, 967484377, 319491732, 913345295, 942308530, 966684868, 880216072, 201525181, 786319329, 312743755, 432490092, 132825619, 269735232, 151747886, 993457578, 369459065, 599552069, 320469701, 538838787, 125586749, 49557997, 379042803, 2815093, 730788512, 991039590, 501445443, 838422878, 772213061, 333333027, 988626133, 360489269, 808792112, 176903776, 885355478, 320574951, 996756497, 494983641, 330698167, 223387806, 335008444, 259628830, 39401396, 403961191, 844233812, 180070215, 767108536, 319578219, 618950523, 357336063, 13266769, 855201334, 347369740, 861246161, 413468972, 294136038, 580239458, 954362078, 507373098, 696484883, 384829006, 611444933, 562631458, 760372654, 459365621, 912002418, 244512093, 911868006, 536054772, 736346970, 464511175, 579484880, 49151380, 762197244, 745547097, 994256156, 179913099, 692342288, 301816045, 336337214, 872580371, 722417717, 300233030, 506029628, 490711120, 601669317, 596023295, 848412570, 97263332, 809341216, 558388471, 70008420, 143514238, 744438011, 795709627, 276468061, 76641878, 566673359, 685709631, 193272478, 388754799, 213743203, 448692469, 700624623, 39621526, 291455651, 878169052, 697168753, 865653190, 632335315, 41131975, 958711585, 17355989, 811531153, 552526227, 972079682, 863093166, 723165633, 256868713, 410769105, 406848806, 376875788, 156040782, 465330869, 721739806, 762271918, 818779017, 19791729, 868402229, 766231039, 638649569, 600377116, 447760008, 494275195, 333554045, 533171158, 301695319, 526425786, 622640381, 545082316, 787148349, 461738545, 711406768, 457584669, 725716111, 560272112, 818119702, 477316896, 493778486, 495407308, 128738145, 641287214, 156791384, 503606820, 54248918, 787414976, 16076600, 787797838, 999330706, 168817386, 367195217, 688906157, 762980596, 885343061, 754931539, 825485723, 25432895, 83457310, 839440752, 304236539, 746501659, 991460123, 763547870, 476942285, 741466284, 440993755, 65549137, 20177155, 516236449, 739122727, 45201228, 889849304, 560567377, 914436764, 466158905, 238646280, 932290457, 928763457, 862008937, 339066988, 751218830, 50634744, 316970686, 894064250, 374596477, 130199103, 977440635, 877407947, 792664868, 930635340, 572647784, 797856010, 604088361, 265531310, 458018137, 218747650, 149596105, 348901063, 651669780, 308378688, 177984010, 481568831, 237820454, 973754772, 173543809, 742725007, 52351089, 15046904, 657328991, 390509748, 441159071, 880044311, 752232086, 859188256, 801942416, 797500226, 82883741, 909585671, 101793138, 368304105, 526581543, 623105967, 459881617, 998647287, 327587347, 227258239, 98054572, 373570645, 456583041, 3749773, 541920486, 999860545, 251722831, 160435874, 729826767, 472732709, 340805551, 478369993, 907052972, 828182840, 54628824, 471197091, 306483857, 420849371, 939549265, 826609518, 654935495, 494303408, 819217325, 624761730, 131722104, 871601532, 651483150, 572735510, 719455753, 435057984, 265060582, 684206440, 698898616, 991281346, 470380323, 969898348, 385306287, 468596765, 779925665, 535214261, 385650548, 385766840, 785598000, 631065049, 515785765, 279118852, 828957162, 212788726, 496447410, 639539793, 817295608, 656376036, 784040021, 642644814, 7698104, 64415192, 568519164, 885562987, 505249405, 627822124, 435082129, 823350013, 899651725, 356545522, 223785714, 643527887, 309360053, 365468856, 524991571, 173764801, 940649181, 42223174, 201459266, 407561460, 17878844, 627939217, 394114389, 266218891, 2489988, 385982445, 787938874, 316156152, 363778061, 984030436, 158264605, 946385109, 882357125, 983973021, 382219418, 448094284, 745106028, 678019118, 544626783, 566273014, 37297707, 502754782, 591441677, 265013979, 240141018, 597632416, 12993564, 30983618, 111555383, 907741878, 400168936, 719181711, 542738411, 305192146, 925929270, 247871796, 237482364, 98681247, 9081635, 70123356, 79899967, 306847950, 788287194, 93756273, 508035850, 987569965, 670773735, 450687484, 947783089, 890294048, 470699400, 669769721, 350024080, 875393331, 868993461, 454945547, 231390964, 194071431, 114576122, 646939435, 172498661, 66350594, 739343756, 197180123, 767014227, 657801652, 947982547, 225730570, 193665703, 698618406, 257268877, 869289890, 189916941, 357011112, 262769688, 944713069, 471584051, 615108799, 493256919, 929611574, 699291914, 482009816, 900273155, 923534334, 269256623, 961361569, 504018923, 207982577, 834377870, 319493512, 223931022, 462571599, 978091827, 455074805, 583615598, 92510415, 697723622, 879898247, 200393803, 499108089, 822237780, 621726441, 458801675, 929666455, 581979463, 596118673, 893096527, 239501754, 660774109, 555906003, 173405948, 307322685, 661167748, 429413032, 371657202, 852760140, 190615603, 461827929, 396298935, 602185656, 552760256, 148757839, 682679439, 530311752, 844488095, 26957444, 144155401, 841220272, 646240869, 514110086, 408113767, 582999368, 210735705, 737527703, 450518243, 150188298, 272017134, 745516321, 296267876, 915308945, 931715517, 260757143, 768496195, 181547245, 226029010, 420600645, 952887365, 187407206, 331381902, 992956383, 571101304, 396443643, 461335741, 547717033, 861281171, 262119386, 399097206, 951719042, 333982049, 120501792, 623066091, 325156561, 391855431, 962929370, 133242621, 48812359, 203794682, 419738195, 561446325, 793310336, 826522554, 92666693, 735034578, 318419428, 420029510, 16170870, 912161448, 679745695, 996420086, 346057730, 489780852, 741389251, 582690769, 250891890, 912684862, 601786416, 537454383, 443509946, 957466383, 402356366, 149811431, 276067248, 305414646, 461566065, 544808481, 674177744, 750533240, 433670780, 461223574, 160870025, 541372365, 403195028, 43973729, 370812768, 320280494, 468248664, 564146466, 456338843, 727022248, 739598919, 412278353, 347855180, 618487372, 870665055, 929291024, 531704976, 878491362, 673208665, 290369869, 559936598, 151265317, 182112453, 80585791, 572717333, 860001246, 64309360, 962482206, 885447515, 308103262, 598465478, 955922119, 413262631, 37868029, 923043820, 629935836, 938362470, 374476138, 92705539, 500714068, 32293780, 350273897, 189278550, 33990214, 994091250, 876940226, 975590369, 238647757, 313295334, 716643977, 503539633, 936245088, 55024692, 647082798, 395897015, 892022384, 661681088, 2152695, 467287288, 771731825, 62547748, 102790761, 483424082, 329112700, 776707182, 36340198, 345335889, 220585287, 151797295, 607150279, 480196505, 675896641, 781885970, 756497062, 891519789, 978078841, 650097546, 219715775, 904770637, 146092635, 531350025, 836958204, 665048333, 739480717, 51810054, 400880193, 2901838, 949424955, 695461969, 273789381, 800844418, 634878790, 745821554, 532606990, 686811822, 842945315, 807043605, 818254646, 350487283, 491057417, 439318160, 360667749, 810891180, 282755774, 312709970, 971595811, 209107032, 143937162, 218607644, 414801928, 583198086, 670153694, 530331037, 219678044, 680952080, 150786740, 219050429, 645027848, 642533623, 286080702, 708492820, 678630670, 121698318, 923812012, 871391859, 426035383, 521117156, 753091291, 767359096, 934024455, 218822531, 422898454, 218904385, 206349541, 967983308, 744780115, 99922788, 993491988, 507103646, 835987947, 965129058, 986103256, 404425890, 587795881, 145731072, 858374399, 699177970, 515315138, 563839381, 803636046, 668219491, 196464107, 863961396, 775152426, 625275984, 506869722, 681538419, 160254661, 625546865, 888973200, 469928378, 656112861, 248496441, 122899076, 33456572, 815446223, 107654930, 867250015, 735562336, 602986422, 887793356, 739442277, 496299497, 570366857, 34134298, 584823687, 479156870, 537231400, 489235891, 472180262, 366588206, 809320547, 121395209, 366214173, 263704186, 854718448, 356913070, 61001174, 813345441, 73250408, 113261509, 251350468, 454703466, 311705992, 129044181, 153714389, 239395556, 427238555, 154809495, 429314006, 480772953, 394898986, 601588973, 940130917, 750347071, 820339996, 335749890, 693275821, 961601143, 236181813, 69628196, 494731899, 496791541, 981513176, 99159750, 882840378, 587210751, 599136262, 755531896, 420282141, 86874023, 396823218, 974429164, 948670780, 472470837, 780104835, 282937833, 440765736, 252660052, 621429247, 514885028, 939121306, 695871687, 659844592, 333898972, 930232004, 53619915, 779382403, 678734655, 286996634, 540981302, 961687770, 373676547, 440085292, 515880899, 363136951, 450406960, 594290334, 690224833, 929142715, 265677306, 163833515, 827121140, 993366239, 935248074, 206945865, 461566097, 41162157, 906677248, 236997401, 277027780, 215618533, 680869386, 231663844, 407678045, 693581917, 360163893, 732417380, 40533809, 640501933, 213514302, 178425490, 792249053, 350374034, 863896363, 139038397, 597832361, 458931627, 191306222, 923788713, 178133764, 714655667, 618743752, 114916462, 495961887, 860249877, 40886941, 850587588, 464459845, 158844211, 53055153, 918988392, 230708850, 290327528, 433970886, 204432426, 748674710, 791278461, 552082060, 182723125, 804254842, 973077290, 957733370, 473040915, 511446338, 949388266, 469532716, 634398033, 511394929, 924923104, 446273613, 259315502, 458181437, 534450629, 186302820, 829948078, 688275743, 466378159, 639837192, 361214509, 580407429, 845304506, 546104174, 829196990, 226346251, 384437257, 217334243, 507306606, 569100976, 114893868, 434710275, 810649729, 270754827, 120688655, 269917887, 296490633, 706125784, 660355119, 535693785, 902952903, 165551135, 156773993, 978655383, 793828008, 329195170, 812414727, 447963140, 337219765, 915111790, 813198973, 192553846, 921650827, 543215391, 768425906, 249418272, 409419543, 67904936, 121865347, 859563897, 432050342, 829376161, 473717959, 725092553, 622543136, 84875495, 592839778, 780386925, 835157920, 30218520, 890008264, 469901460, 302078768, 506870253, 814100467, 696991754, 95531293, 534387383, 11762181, 361751916, 401722258, 969825637, 195924893, 359736492, 554165370, 289314905, 528108776, 388765914, 452689492, 730263598, 591157823, 651437359, 167664044, 291669166, 714314959, 483358133, 13397235, 565358511, 987352374, 14692060, 575880253, 868837477, 896745171, 488944377, 88474708, 695081700, 712942790, 280789460, 233497692, 458584849, 764234000, 768860411, 121809685, 143521649, 106285488, 53084517, 518413565, 403636973, 680212006, 327774111, 6508991, 311065804, 372890670, 936024383, 71470595, 646649305, 158191425, 89890587, 79233685, 61702483, 691900061, 350356396, 158835542, 400167554, 952088341, 531118753, 549005743, 795772159, 453501166, 713727126, 671015473, 333975631, 3433796, 817128895, 768136733, 899075234, 474240429, 570521520, 256527910, 469381280, 588315299, 422736971, 19666782, 147703080, 35250066, 4644962, 663264098, 267667810, 210041202, 272801472, 504451416, 450796721, 186194548, 292519942, 675677418, 147571863, 181688208, 934324415, 43171453, 545221264, 522386088, 239495179, 312271689, 683555813, 470515411, 324038715, 345260921, 123482789, 233309091, 471985461, 438717813, 52953401, 268874627, 296149562, 722319215, 575585106, 225409251, 334041594, 496906650, 248957860, 684930078, 573639307, 845144801, 757915392, 196421239, 257735471, 62405229, 210910976, 129449390, 585166960, 99533052, 986277811, 566337530, 607650455, 802937346, 837056744, 344634878, 203541700, 673042708, 32887093, 323162400, 141746487, 99141806, 267765357, 482070584, 375973815, 28495703, 607671189, 1637112, 170255492, 631603724, 816896724, 670470800, 658584970, 578931732, 623186452, 965658342, 595853202, 972404668, 384149872, 100682641, 620090732, 685000218, 572683034, 389423627, 319903430, 357202201, 529403120, 767853916, 616498413, 802142189, 347577382, 678932053, 542273710, 230993145, 39316558, 880131498, 108248331, 330216742, 896552715, 682248776, 157507282, 307983018, 981841844, 700734101, 730865444, 383636502, 243946378, 985600615, 687750027, 127239241, 152488380, 775276025, 319696417, 436284523, 956025661, 196899253, 45443639, 352376405, 192986485, 394613005, 906478077, 783347744, 602353699, 357915016, 426500238, 682315850, 455701091, 683586093, 933690845, 866002142, 619495733, 75281204, 65510789, 373639154, 668002505, 252445727, 242107340, 496869504, 725500081, 953008981, 41304425, 770335820, 909433875, 889683408, 412631686, 458679595, 654881567, 972577102, 806383157, 70932520, 289892663, 973355250, 243308906, 898915717, 692230113, 734676811, 308400232, 135071643, 128230605, 30945361, 207177478, 955829850, 740340026, 793825901, 427926116, 574209385, 482775999, 593524574, 927582103, 641528044, 624041101, 22810990, 600524129, 10554683, 160016178, 231295268, 262726600, 825509006, 261498801, 82830268, 585630527, 229734913, 619704294, 325749830, 352228927, 607390879, 95351312, 823932993, 67042333, 384475332, 715066099, 639001036, 527429386, 279837958, 569335540, 502374026, 870399612, 900859329, 849837122, 157923641, 467354586, 293926306, 418760862, 6494626 }
{1,909054585,757996021,397496823,715533335,982546964,182010335,7256813,794920776,101772498,108867143,808687178,484874623,165634097,668278694,258162382,140700422,820321621,80219125,842886785,8737367,346376489,177598776,191075760,674644208,344143700,915820526,182255733,82442347,410492994,850780302,949281214,820873871,684700407,58225581,381905057,89121271,653120174,198978230,531679004,64856308,646040883,355936125,392703253,950655088,534565237,4588140,14275869,473458141,767325482,755306840,332695595,3524748,547576598,703289330,312041044,569430739,318262438,64231415,105675640,566632775,78944306,380562885,866639861,286856944,415084299,842157851,800668591,37424549,623418127,729252030,887153637,909303110,871338939,896757636,422828402,209685379,877094756,733747820,439688930,945169654,945832381,658545732,417429628,55504423,62224694,511309242,138209522,556836994,184789033,582484952,654078144,730544357,7946079,166661394,18024371,275547874,973081469,630655106,43508993,321812296,84370664,324665675,114778703,146667205,830700868,189750631,93616700,220209350,831972966,312845761,414222444,169460445,79215169,426236354,655528748,402760019,302108190,313516475,278826639,201189771,967261425,793114557,665920116,381863419,535771839,827530525,558302211,756807623,533055834,949424322,871000488,92811260,293072327,112557476,622692638,637778014,897486160,746956438,511820136,652340237,366496633,573481986,281396580,454147404,636104905,577681595,157437382,469818780,784856385,479461349,771733206,177640453,868324236,158324317,535186984,164941966,802282969,668880262,510122699,731989956,341079448,17122365,963436974,659105595,929518869,478929409,706246853,420980393,253740822,563087700,403978933,851621292,858796662,260147122,160905758,770577266,505996893,576767736,526372075,134324896,696085018,275613940,156006721,732767240,486829369,726209306,194600727,390825023,772259894,520762729,92430454,727205978,41603702,622043060,792570660,373462599,725381524,850964364,463416493,67233341,70422201,522025796,791962273,937622958,84064979,955974691,4327872,609272915,543110133,183676297,622612551,940910763,70228870,755001626,530898552,521690915,831819682,983241130,104839136,349475005,672500986,700234141,96598991,502494274,518466418,67463988,814929099,363225527,180154293,247863928,982297078,518295459,377481482,69829721,852122268,165704962,329994838,939219649,244451687,455562272,163718004,753441110,620910115,652996479,433222413,77770644,92206999,872891296,974338504,208875017,328048949,286184884,625716342,729058425,911910935,980175105,48910407,602980495,413277624,380171856,315522832,641603684,112237834,803759460,263974625,151251400,283017659,549041911,924063932,704629168,332945462,723681369,329450273,813800062,685681960,712557570,119441281,356399382,642361377,222567947,280375532,398277287,477455093,677288901,249759243,926131500,18019475,874581329,43164656,951446105,214439537,777364157,479297069,727933887,195942562,444448807,594468554,180950848,207868067,466802977,921454701,681671288,687833953,330267120,514431951,937327071,468510198,299709315,549761284,780635762,169448277,58303602,744550676,328246235,33065722,536384502,660289989,218382471,860211084,729799087,898791228,56951284,866087159,449035522,589223188,619890934,710323717,643010276,851431225,445555801,839860159,36405651,668012097,115499135,868108485,913576232,393261193,455160631,732200135,996385289,535620140,60485542,454939504,470171028,406630455,677614977,443116120,632607874,1803735,23591489,105882664,274478367,215096830,706240532,102253238,727276774,774190058,52852895,122512255,400498385,747931442,683979738,20076036,307024256,537111248,937106839,647221196,21270733,449376290,343037834,146166281,646616812,541845552,269799477,98085818,82073411,420960305,962863532,207494923,479402666,55470167,190322428,651282763,712195500,966421615,219939474,301980663,79341146,597822203,413641453,901356024,234256541,734568000,271143792,703139287,941904314,333579409,791493020,738983399,851450857,166052299,44686189,807227270,254816238,901743986,796571686,851848687,981002336,969004151,290117712,646647168,911376527,91077742,622634648,69162091,937228757,364189158,182625101,193890107,278505423,623732199,772530301,850944468,450454150,985873139,36948155,96637703,481884122,893154157,857861269,448604842,304176360,204101104,504163172,755446529,9511273,481026057,122701116,212434311,233107974,431151576,658576165,199524400,371078915,956490687,289573427,763083440,716550339,634578357,65697492,722196618,764021901,283423272,864437568,106025301,964642452,212524815,411469346,99361254,48849885,833509867,265686345,119032691,118327333,796921166,571985034,603766050,102908972,825134481,965053060,708980738,679335529,743576064,742603248,793244301,286606817,252704747,762280512,658970562,326455434,668404502,793462871,350729011,82597624,848674062,808583739,60795998,542427240,515384794,625347349,158272761,356606349,314307509,31910931,412928646,513526200,222631323,477548502,74933471,875586348,769012123,907076192,788589104,354043205,157994397,832031715,977840995,491651519,311248886,871439554,569348145,446590340,97524097,639484541,226024669,654753388,129476938,813201271,228722514,413091696,292995867,609020443,874404540,188082097,242872715,657741694,571931175,122575979,548857989,708778591,884700631,198061064,54858335,250230906,878637696,974551093,362054049,459195368,663389287,698812749,542736396,373214549,727621928,932367528,867747088,766868368,929599134,342045784,583549535,91732800,495112532,417242251,568046546,20823478,934884381,535135687,106172188,996083116,331404368,134033708,714200853,800042974,672841863,501736078,807504179,989647663,797169017,139092590,2059438,611310001,2905119,808575617,616883969,108033157,322135950,335112954,928424302,167758521,305606832,969328355,974250842,868887843,201697646,241281094,941296823,125762091,188919659,42627309,877733118,31727525,819135143,951043770,487182476,104847978,711984166,954392304,770069775,919432466,669893967,414121125,597187908,98848330,602189855,505529294,682588316,159109243,996658872,8130395,358914517,692993451,355446006,440964786,36318825,638761393,567257300,977122723,911457288,29209977,935018588,804878887,749171262,446951347,1834105,296472865,440365861,172761494,269084659,330511179,468181376,834145583,127147736,481470250,855758102,426917752,581017131,37476189,267599772,916576666,550365879,254947749,381633860,398880807,556801726,842985070,432995171,381464626,870496283,265138878,375802914,295861661,758938810,493884179,817215916,464783330,143056389,326914270,602377207,793240721,709557287,168127338,156027641,368038817,244201835,146492996,423883744,408166888,667918273,533049058,174785926,248621444,891373781,547295881,676280184,48599415,736413114,676842162,616424150,377646007,904358549,712935232,423552112,345472777,233265167,346037008,629145959,326525180,953960767,461837124,454879084,959323425,41485612,913724303,549985801,183170281,145616112,320374993,140399090,790058427,959507054,225415505,801960673,665972036,928121190,299117836,258352281,528439181,773149076,999958785,520674286,964581379,654407146,396550321,167970338,492688751,718110017,356092258,546147608,56097506,166806270,567335719,800773474,404881200,755568447,594209362,795919066,801935195,442052571,534145701,524093811,643994940,208798749,315238976,999429667,871207483,587724716,975269886,977479641,563240549,228671402,612320590,915375372,139726915,708739630,8116131,304541413,634940280,903214730,462056240,150777422,392700836,489369772,857073142,730578966,49744569,155174453,27494018,196664192,578734049,403267854,16857426,166605603,788260445,192739725,728074126,642898208,305039472,81191498,381710589,568098586,203924127,977758654,757928101,402576304,920338173,145727296,989905739,374875576,276164172,498907073,576344122,995006714,328106433,578677824,264574945,979476140,108650659,391645601,615388453,603633490,233796039,573574721,159208944,355140283,963137496,779949430,445141759,539785937,656599310,668879878,5322388,552270111,421153626,644322032,676171878,146900141,240343241,477956309,355509459,991658956,366638186,616427259,346419290,887707577,543023243,161154599,158651795,28372874,336016974,103312385,290277567,56777337,897620104,903058776,423451879,549433908,112897616,431491511,238568819,351860342,307438793,204981148,675424293,667845141,156468930,199871246,225212293,697466023,607501910,840872995,169586641,527450182,604419043,245277169,270073355,820859844,593506693,510017072,750374438,889102958,769072584,834507469,818901845,763505800,990197836,954285719,71965210,175421254,730286663,2939160,468398885,534849431,891511351,529753785,122246677,421941252,697318333,43360041,37249322,687425969,276647027,700981109,303545170,939285214,355656450,179906772,303852885,508613579,610555183,63991586,345220342,53164948,393296482,82117030,974878589,264264885,5563917,352632228,521582311,971810122,755174327,558408984,510173355,858159290,834235311,398258286,771852728,117037445,37422838,417878040,604680565,351043040,546634283,122392240,275353363,308582208,409643860,458728710,517315736,108271731,77475326,134886535,827874530,556549583,141703803,690769064,388697397,473920017,872830327,489457079,74698548,988703404,835444158,668589638,600151011,511332476,622623284,19111538,161477490,638292379,517246924,5244124,692803579,975516671,656007618,199338655,372488332,270316242,422333781,956996086,937960611,109178832,497948364,928258047,439338415,150176506,737259524,958371311,814421360,345816338,598475215,741496627,934759944,733127907,172271433,892113596,390232239,816154990,157522399,831295151,814357796,400549374,632837217,784320461,354371155,96976255,386665584,888739543,223370368,818673970,814076634,114068674,762846158,740403158,327657285,28663380,945847172,891806246,311799150,692329097,441772870,873707696,277698545,411579166,805086498,117303658,81508693,649494144,242870571,361249480,802943599,502672475,90788891,710916475,956028670,339114093,285598562,59447584,498451579,345383250,219243813,367953620,859901553,14325892,122649426,567486909,708962336,597642177,303443712,291569007,567475448,469039870,590127411,697646127,935697018,348703693,836525490,873328699,257548695,70233033,926161496,177493350,889079116,864640116,435164464,582594216,831636334,728710052,539133214,45881461,823998503,784209000,271166766,884556189,759063720,528786494,999506691,697920805,371959091,676713420,537289375,949945479,762622466,481803738,224127502,158006242,344628511,412852036,776944064,779716849,920833892,104568726,729639549,797156,854553977,221012046,250312302,814961168,7235515,282482350,209501252,962835609,307242106,414638681,156221332,210273749,242221541,690199081,335091546,969260838,345129943,840315873,488597062,49181178,118303545,387380950,827285054,859058049,216870392,794013724,99837184,663009477,623723841,42478,952743815,21267958,187122384,478827046,920129081,575880886,917617745,714199532,673726920,554136537,160519217,906276037,332616873,910534026,324512289,924384292,180675799,287522058,706866402,703861451,213658164,932631830,946477859,814731936,240269193,69976009,480289793,286755169,96812962,499257068,493185712,675556170,698797527,764336450,171546572,906678707,828900717,25586460,660660596,26980040,329544809,417211893,689091887,99703229,435341456,261433712,154367288,668382216,848431660,211411335,690162631,592148654,378894585,165683104,467697573,278527416,540593237,620976381,882823196,749055336,108096008,758650118,300845359,802564249,248990980,457597367,369811129,672279795,821584799,875503825,636953784,851392494,435532010,584262696,151076891,428460603,389188464,849411627,780216658,210983487,254018918,271845251,53743379,286355669,961109626,640953244,529512643,339030243,955376026,341031534,228196001,793441886,53025416,570654249,738172634,933369125,425405166,424508215,529395122,10370391,168610466,789913268,402629509,69575252,47812502,536720606,253078125,416787451,404293105,52005614,42800675,52512810,283778469,381685790,156080399,262115345,870844972,338876009,433275526,302022631,588897988,165635649,739171746,352727113,401133388,399929730,211177632,10614662,295107007,647936445,810510411,630351549,622945279,376295873,381473694,346621752,42919759,986601467,567454220,688174977,505287413,467096593,598761926,14051700,810186051,671924210,820211122,101936971,881236871,957346076,383011370,63311145,244584969,522324195,103896927,343765396,505495913,729433215,331226676,360828268,342621616,769010351,346382391,761533626,719102348,469312681,414360751,718876682,139748773,743942186,899576925,277668314,201528662,746659477,528793034,701567441,19921612,679962466,816513549,202836174,448439707,935668342,319132788,598598693,313138834,549131846,861006847,328032724,307920189,132821443,494747643,411446260,933445039,469065767,846700127,326135239,223370271,248824226,549353578,35873467,977718179,388173125,269963611,663168533,167613609,345863223,528981883,969549837,644722566,500128907,724894,927597131,71404547,604264850,374409760,834500293,234051740,274998609,438198951,667899936,660974649,128001557,549178583,247460353,234454288,163193583,824522121,498298737,38988808,725364575,659439296,124587147,298802988,234951402,102829008,595761146,833381414,863489317,287595083,606299733,551619644,793857350,543500194,460115527,658220491,191945910,579502377,669232678,692689328,662793892,192516346,576140279,300202269,767280484,572087253,37793415,817142995,644848599,957873898,416210828,980313269,372622956,380410375,485377120,993540647,266310445,907507584,293864334,19993513,856394530,741505288,712658031,55056656,351750860,328911617,21647604,179804051,977939313,9033133,593489061,111695009,106791126,789936388,986302731,759626064,648912600,960231073,236218676,203585635,676581218,178264111,463329875,378433888,840303419,566884777,637355467,943354234,864787084,767740468,81094428,967570946,732769161,313033780,864178185,457151159,291218994,540202005,207042593,775760781,990708332,169205708,829488660,646868190,68818057,578256770,470815352,398744959,349616363,466094388,336855099,164860366,210936807,854498001,729110184,740671001,741515747,734326427,954836708,432892081,844974143,846355102,30535427,853901646,150055824,897494822,287818888,869637044,442376660,333497872,666365502,91704713,525994612,515260359,505767790,729438023,192449937,139234447,949190470,124777555,85843376,162124768,820883299,330385429,384667590,235028992,124066906,811634804,640926300,983683465,231233377,382434593,996200225,146150685,285239892,64100953,248407752,724887955,383708286,600401991,284819514,522974100,740897254,847582774,385176471,237319692,994629467,996564537,627450537,337600064,39731423,540601954,841334871,320151356,581317861,150479441,915171678,219721899,319784852,12862323,703819176,306154647,633297715,494256282,961605277,296341121,797260697,337502144,958348157,412818603,815411327,149421946,13819820,189818894,56418958,93352792,380292157,290448767,439810237,605843709,491204893,844623093,437006380,600731750,130947633,785512311,124364135,281535187,962431377,430355624,771815971,5138635,488302506,684865303,842840423,226144484,318775642,590888687,354854704,999048965,108172409,757845851,404979412,628445847,742630870,277190835,433079104,655215813,666897513,339156734,178737980,495931414,829323109,718566205,985268202,219475432,886109105,238676345,545200039,874805104,225555475,413714739,660356715,412077587,193850630,125480592,297262352,474242562,903404905,353643045,654492177,297448881,735073808,403002212,500806823,165059476,712147193,448845730,163429463,616026932,888693078,420523972,54340076,252058567,262751390,595084934,862471494,47644302,175406312,531003751,961225455,581594371,332289649,284931117,391866811,999581235,756288050,470453545,548828880,56177179,558175598,911351773,93769596,57801334,11411112,289021034,132029347,583614783,930105193,422267826,408536481,164155083,479565217,428682252,114969840,752274276,667694959,58928807,946303205,996648155,912669165,355751417,503328628,943991300,732626328,667901183,92929594,943819441,671019053,955697566,111421250,609164941,467123435,665985796,254060101,911481891,271939415,617770604,668642666,476064750,215873282,939662213,742045109,284999171,20573781,224456888,712172033,784460911,745518977,503417506,516116436,146384213,851475601,776347131,494510952,34018053,64374586,277190159,739055795,635492582,714681027,215579299,137129639,69811628,849744090,606219492,791448663,291681154,407114228,83707184,577624904,68290676,219348881,439490540,810226855,416628009,15511829,416264450,98887933,176593191,448221100,895492148,727071650,680808315,641683150,537988168,590350274,189874699,689544594,368155636,661536091,354539673,951575843,159328147,644260502,631048863,366153134,565963929,602126278,515967719,694662524,809416690,363198875,574301515,256375172,437846793,621771468,554801119,134962568,403410519,941222819,904725027,742779445,483357147,158633769,890843768,620964692,81382228,589029086,715453821,848064801,727043300,407329988,529109180,905177945,835612361,333867923,718225224,885795069,945873627,901778992,901451851,38911481,791627933,634253129,960438811,328254651,968077493,450292328,498217439,240719923,171420429,293807740,574092025,239370982,211733060,298851267,570143200,936467898,857778110,482636285,548420592,486668286,933548344,753136758,214052046,521715394,919623156,154522447,817924013,917162488,715732689,76070186,532009804,51618097,361294673,38209392,616750642,445619122,443814052,384695554,148516940,443823449,502464323,972568887,722043541,689039401,108714136,258089404,544036592,393206520,380413002,78527993,180266711,691540521,870246751,357571843,568607201,942476703,272528009,14671875,493088731,972073428,732923075,587553410,286644359,795608858,911710426,569137048,431061928,219236786,788933669,87371427,262476908,317701385,233189284,976400756,909325971,870850110,970270300,611346660,635916847,398127411,632779741,890439027,245261412,891544997,297954775,316612953,521261509,458563922,115730946,706666735,903080918,432141918,136259459,969076535,270100814,462919238,653211281,178220459,615191412,420772643,394979928,905579036,601702573,78682683,142256829,345920942,721309258,458782813,411219051,800509872,420668773,994820538,720022770,371629657,212806791,761608074,410275077,357712032,419160361,422516987,847677692,992723445,415736695,503898713,278963984,775427045,238071278,651420950,958596165,118646952,772309443,633876530,419965705,495652898,876617811,154369890,281489435,40118749,751177720,785266449,913199503,485879525,435043988,556169702,767559528,646252641,133192498,521741682,243759529,998275579,203718542,995753705,847169429,482592292,615729529,870020732,56796902,187583337,761353455,988480824,887359395,623559112,384944383,270173127,134683882,709176406,987094859,142327000,806100780,754939906,215885620,416374138,887800428,336189278,428888098,851706770,477440777,685695652,718690900,42709636,251359708,249984266,784612110,872217884,284091006,497256423,49938006,387785905,685297245,839767894,364452912,905690906,505764879,528028185,809820802,267871822,368341889,106723854,591498767,74839712,28890268,193013212,17984026,711832095,189343019,624490004,890727838,361428383,991012240,346489637,317690053,219169824,376783500,670442604,658729367,406140232,504550939,94268601,948341944,362303265,407033613,519158821,341652801,830329060,179280229,845612550,925316415,138383708,422927443,138618287,738195511,234872996,174816143,704222332,271217432,345171073}
{1,1,1,478,1,416,1,1,798,1,1,1666,566,1289,1,167,504,1551,1,1,1,1,1,798,984,1,1,1257,1448,1,1825,529,1,1241,1,1,1,1,1,681,1,1,1,1854,1333,388,966,43,657,1,1,1,1,1,1,1,1235,1225,1332,1,1,1,644,223,1538,1,456,984,1,677,1880,1,627,1808,1564,1,1,1448,1032,360,657,1,1901,1880,1,1,1400,1,119,1,1,393,1551,1,1,1,517,1,1,1,1114,148,1907,1,966,1,1,1642,1,1,1,1116,1,67,1,1879,1,1,1,984,1,67,1,1,1,1726,1,1,51,1,1,478,1,1,267,1377,1122,1653,1302,1879,1,1,985,1377,1824,1,1,1,1,1,1,1,1,904,1,1,549,1,148,1,697,1,1,1,1,1,1,1,1,1448,1122,1,1,1422,1497,55,1,1,1737,1,1,1261,1,1448,1890,1,1,1,1602,1551,1,1,1,1808,1,1,1,1,1,1,727,216,70,1,1,1332,20,1,1,1,985,1,1,1,1333,779,1,1837,1,1,1,1927,1,1,798,1114,549,1,1379,504,1653,1870,116,1,1235,1,1718,1454,1,287,1,1538,1,1328,884,1,1,695,1070,1,1,249,1824,1,1,1870,272,798,1,1664,941,1,1122,1,1342,1,55,86,1,1,710,1,1116,43,1,1,1,1004,1,181,1,779,1,1,1,1043,1,1717,925,1043,1,1286,257,1,779,868,1354,1,1,1,1,528,592,935,1514,1,1,1,1,1,1,1,257,1853,1,733,1,1808,1,82,1,1,1,1354,1,50,1,130,1,510,1,1,1050,1,1,1940,1,1,1,1377,1879,1079,1,1,1088,704,148,1241,1354,1824,1,1,1448,1,426,1450,1448,330,1,1079,1,1,1,1,1,697,20,1,1,1,1,1241,1,1,1,432,119,704,1718,547,1,1235,1088,1,1,1,1,1223,1,1,1,1,1262,1,941,1,1328,125,1,1,320,1,130,1235,1,1241,379,1,1,360,100,1,1,1,1,1241,1,104,1,272,644,1,456,1890,1,1,1284,1471,82,1363,1,779,1,1,656,1,1,1,1,1555,1,924,1,1478,1,1602,1,1,1602,1187,1342,627,1330,1,1,1262,1451,1,1,1070,1497,1,1717,182,1,1,1718,1,124,1782,1138,223,190,1,857,1,1,1,1,1,935,1434,566,1,1,1,1,318,432,1363,1,731,1,1471,1,1,1789,1,528,1310,1845,124,709,1471,1,234,1,668,1,1,1848,1808,307,1,1,1471,1,1,957,320,1079,1,1330,1,1,1,1,1223,1,1,1,181,573,528,657,1,1,1,1,1422,779,1,1,432,890,1,1,1032,318,1,1,1,1,1,1,1,1301,984,267,644,639,1101,566,1879,1,1,59,1,1,1,55,1,478,1,1354,1,1,1,1,1,1497,836,1757,1,1598,1,330,1837,991,1,1166,1,778,1,320,1434,1717,1166,1,1,1252,1,1925,1,1,1,1879,249,496,1514,1471,1,1,1,1,1,504,1,167,1,1,753,904,1560,918,1596,1,1757,1,1,1,1364,1,55,190,1579,1,1,1,1,360,1,100,1,1664,1,1,125,1,1379,1284,957,1122,1,383,1434,1538,1782,1,733,496,1101,1,360,1838,173,1,1,1,1879,1717,86,1122,573,1,566,1,1,1497,695,43,1375,1,733,1,549,1579,1122,238,941,1,272,1,1,528,1,1182,1911,1,1,1451,1,1,1,668,1,1,257,1,1122,1,1,1310,1,1,1820,1,1,267,1,1,1273,1820,1,1879,1422,656,1,1,1,1,1,592,272,1,1284,1,1837,1,966,991,432,924,1,1,1070,1,1,1,301,1,1,1854,1,1,983,104,584,1248,1102,1182,526,1,1,573,1,677,1907,1,1,697,1101,1,1,1,1,1,1664,1,1,1,1,1310,1505,1,1,1,1,955,1,1870,1,677,778,1,1,1,1,1,1,529,1561,119,472,1,1225,1876,1,1551,318,1,1,1364,1,1,1837,1,1940,1,1,1,100,1294,216,1,365,1,529,1,1434,318,496,1,1,1,1,677,1,1,1,1,1602,1,1,1,1,216,1,1598,1,1,51,933,1,1664,1,432,1,307,478,1,1555,1,148,1,416,1,388,1,1,1664,1,1,1,1,1,1,1770,1,1,148,1664,1582,1,1,1854,1,1032,1057,1854,1,1837,1,1252,1,1,1770,1,156,1911,1,1,778,1,1,1,1257,984,1,307,130,50,1422,1,1188,1,1,1228,1514,1,1405,1,1890,1,529,1,1,1223,1,1880,1,1405,1,1,1,1,868,234,1,529,1,1848,1,1,1,1,1,627,1273,780,1,1824,1405,1088,1,1,1,1223,1538,1,1,1,657,733,1375,1,1,1,1166,1876,1,181,472,1,1876,857,1248,1,1927,148,1837,1,573,190,1289,1273,1770,390,1070,1,1,1538,1,1497,1,1,1,1,727,1,1,1940,1450,1,1879,1,1,836,1,1,1,1,1,257,1497,1,1,148,1853,1448,1,156,1,1825,1561,1,1,573,1,1,778,1,156,1,1,1,1537,1870,1,1166,1,1375,182,1879,1,1,1,1,528,1,1,592,1,234,1,182,1,1,1,1,1825,1,1,390,1,1,1,1,1,1,1,1,365,1,456,1,1,547,318,1422,100,670,1,1642,1,1333,432,1,1310,1,1514,1,1,1451,1,704,592,1,620,1252,1,1,1843,1,1,510,1,1602,1,985,390,1004,1,1,1,1,1838,1,933,51,924,620,1,1,1,1,1,991,1,1,566,119,156,1,1,1,1,432,803,1,1252,1354,1241,1,1,884,1,1,1080,1,1,1223,388,955,1678,1,1422,1,1284,1114,379,1235,1,1,1551,1560,1,620,697,1,1,1,1,345,1,1,1,1579,1,1,549,393,1602,1,1,1,1,1451,1664,1,1310,86,1,1,1,1,1,1,639,1,1,100,1,257,579,1,1,1,1,1,1,1333,1,1225,1,1043,1,190,1,1257,1,1843,1808,167,1,1602,1,1,1,1,379,1,924,1837,1,668,1286,1,1,1332,1,1,1718,1,1450,1497,156,644,709,1257,472,1,1235,1,733,1,1114,1,1,257,1,181,1,1854,116,1,547,1,1,1,1596,573,1,1820,681,1890,1,148,472,272,1,320,1225,124,104,1138,584,890,1,1235,1166,1,1182,1235,1,1653,1,753,1448,1,98,1,1012,301,1911,1,234,1,1,1,1,216,1,1,1530,1289,1301,704,1375,156,677,1,1838,1,1,1,1,1897,1879,1,1664,1,1,1,1057,1,1,1,983,1,1342,549,1,1,1843,1,307,1,1582,1,1879,1,510,904,1,1,1717,677,1,1,1,1,1,1,1400,478,1,1,1,1,1,318,1,1,1,1,780,1,1635,1,1,1,1188,1843,307,1854,216,1225,1,1,119,1179,1,670,1564,1848,1,1,1,119,704,1561,1,1718,67,1808,1166,1,1,1225,1854,1,1635,1,1879,1252,478,1,59,156,1,1,148,1789,1,223,1,1,1057,1188,70,104,1,257,709,1,985,1579,1,1843,1,1,710,287,1,1653,570,1330,98,1514,1,1,573,472,1088,1478,1,1,639,1,1,779,1,181,857,1,1,1330,223,1824,1596,1342,969,1,1,1262,496,383,1,1890,1,1602,1284,1,1379,1364,1,393,1,1,1,119,478,1394,1,1,1459,1,1,1450,1,579,1925,1,779,1,1354,1,1,1,570,1,1,1,1,1,1,1,1907,1879,1854,1,1,1598,1286,1333,1,1789,388,1070,1,1,1,1,1737,1286,1,119,1,1,1848,1,1,167,1,1,1,1,1551,1,1,1188,1,1,1,1,1,1,1235,1,1,1,1,1032,1825,1,125,1,1808,1837,918,1,1789,1188,1225,1,1228,1241,1,216,307,933,1330,1,1,1,496,1116,1678,1,1853,1825,119,1,517,695,1555,456,1,1,1901,677,1,1,1,984,1,1,1,904,284,301,1,1459,918,1,1,1677,1,1890,496,130,1,1,1,1582,1726,1555,1,1,1,1071,82,1,1,1,710,1,657,365,1166,924,1,1,695,1925,985,1,579,1,1,257,1,1448,1,1,1,1302,1,1,383,257,472,1,925,504,82,1,1,1,1564,1848,1,1,1,1,365,1261,1,1,1,1,1116,272,148,1,1,1,1,529,148,904,272,1448,1,1,1,1,1,43,1328,1,1,1,267,301,1286,1,1853,1284,1,1,1666,1,1,1,182,1,868,1,1,668,1,1080,130,1,1}
{68536,408808,218223,971318,764387,144172,839613,636188,15527,809575,674935,959942,348997,13223,904029,402991,486160,758046,236965,407441,972397,477408,111092,474151,680403,706018,183843,741810,993996,859324,936123,618353,475506,501032,44281,331238,401586,885952,409546,693272,857356,816835,892815,852619,172624,907728,564506,374729,653921,707112,81071,17116,739894,736176,40964,38096,847508,654316,669184,715637,724692,809285,769279,551899,802787,29315,569931,531797,618748,650260,181284,203126,658095,297539,609145,205014,443742,841728,555180,772364,24186,309022,700818,824373,171209,190159,422448,621996,652707,717162,507454,855695,960944,789670,868583,622784,418283,507291,493191,393441,742497,205575,12139,556630,691250,617927,933012,161606,135951,228697,817460,13594,219450,312224,912942,266236,782152,940575,103898,195481,83233,409852,822590,449183,951230,889982,616021,451327,871338,491216,84044,652971,241410,738811,151871,600793,932660,795247,294912,453629,913347,141562,315984,612626,593408,180878,820387,913170,897490,605503,544864,181305,649071,164290,237598,921477,572192,517423,197096,667448,919104,692928,605177,131796,601341,335311,737856,432221,111829,344795,827037,817754,514458,912323,558754,838548,660078,806792,119442,621845,707015,915215,975652,782378,287980,775005,173952,206625,344245,660888,72768,422731,907470,643596,21872,873210,333300,42339,841039,159620,117814,95979,11,220286,752372,929620,569928,466624,942883,477807,794137,75175,512647,982191,649797,114318,788599,552555,923779,537811,154589,993178,387709,773400,637363,130261,33745,19775,205062,541847,251978,857325,759669,879296,195947,632135,673202,660045,151780,178487,276415,782497,583450,611495,944563,670976,680035,143492,855538,478670,691079,977916,465592,811411,151360,287040,971150,470585,173626,692418,958162,472140,686867,585975,848756,84216,185115,478486,716275,474959,82965,669719,848291,869440,450228,55477,662697,159072,679774,561388,307004,199588,471148,435450,426790,946468,904359,749153,408065,822042,32076,707747,215930,424224,413513,702341,315473,571637,859069,639244,647126,60792,638651,661058,177325,159147,339271,838193,183883,917809,759127,628006,979830,406671,284562,551407,726983,445230,190484,609821,465131,231191,549032,584514,975006,423541,617420,458292,451630,38998,514544,673224,41277,471338,79670,362263,995327,796098,322675,471739,808823,727633,457260,206290,21758,22510,831130,875258,931708,672784,383142,235859,543468,553872,594604,68160,386012,733546,867708,666917,318058,576443,877460,44073,926343,279876,881766,676085,483447,586149,165144,476532,772815,786338,447551,765584,120053,388769,982050,559035,691620,318250,480892,262819,469284,344421,904442,944507,339733,562910,643257,108728,761509,355524,546889,151697,942228,856933,933868,436670,346743,223092,211158,695866,430898,400771,277166,805057,568316,194120,110284,209746,305438,206107,192120,588973,200116,517686,16817,175317,87722,94579,122211,325134,498687,476241,793583,750943,339525,780591,123622,871697,308702,516943,175758,801519,601344,549460,264987,82628,236914,403908,938998,423391,572044,560198,890618,887377,591290,496419,884401,100972,21241,201,449946,282822,489432,783107,778470,241204,365176,470530,695734,549903,960332,845975,838942,448241,492633,636277,532069,714808,832567,446259,613762,346498,193357,73224,56544,923439,778584,98765,69530,252450,66404,178302,204991,7167,664465,68472,609358,343278,969999,143932,612027,650454,545569,577770,512872,70242,886878,892998,157740,729215,708714,367223,678351,886555,400961,912578,908427,325159,817325,943826,646860,295830,786698,43251,23280,955739,138504,114066,784904,163502,936168,838526,200661,103239,937726,844842,478091,712097,743213,391144,853776,840824,317870,758702,19581,178891,68104,531669,651356,609818,741464,597332,75048,167848,872779,5257,224143,877177,98079,119792,993139,547029,424677,143017,708964,632771,264833,707510,323367,116110,639400,637305,25842,328067,214752,753530,68588,924464,78147,450271,334449,179687,944507,202674,422988,180472,117639,468446,274491,926522,305524,487090,329966,498242,746533,896539,243528,189353,660620,154989,25628,745993,117037,875867,640432,67264,930337,113466,454781,147628,145680,807682,775468,705005,496757,950156,499674,963686,648222,634452,542164,847676,794025,54968,839515,726804,233800,660918,548513,669401,566269,977393,515274,230515,414046,458861,446380,85136,553297,449742,14350,308446,573969,368541,323628,247054,817127,351746,724144,279187,577009,693258,632762,765152,564381,592482,474457,260845,236270,711001,171216,637491,772278,606754,112401,63594,551706,825103,230788,367761,927633,700054,636993,220518,203428,850512,878865,481065,215855,1204,95280,770397,557214,917664,819405,108359,989169,743888,378184,349292,217975,797796,563955,304855,945686,214494,768530,757072,259905,644577,200602,187621,8640,443763,565300,519588,910891,155579,10939,528414,308143,656067,319929,968934,143495,79606,637742,759632,316739,361058,652361,267826,77444,749815,926060,960549,446461,745222,728299,380740,871411,121155,980365,654379,736958,702467,466953,290489,914373,988606,204170,405006,782341,706893,975467,335501,605322,770092,639291,622234,366260,157753,831866,512093,371571,625202,629338,757181,112907,337787,127486,456933,21648,297045,382781,300099,718123,29736,475935,277571,432402,830457,685662,693399,588115,452020,445159,8178,545865,590051,113814,993863,675429,783859,361469,763726,508518,54902,252828,851200,303520,551835,331114,693333,670329,646392,435722,371853,805735,504448,588310,769827,763315,265677,928216,118555,28216,374038,273483,519733,973539,793849,649886,523638,519092,705138,427056,890790,164348,5793,201044,930444,391517,563400,724239,619380,706572,121546,58133,609705,39186,78701,863502,36794,719110,730136,769430,576248,557652,221781,392376,934902,662712,607504,664499,229320,282435,84693,657781,237380,701397,29205,193122,645315,195680,649633,922701,642656,130603,455789,828860,895607,968652,894734,78248,504551,413868,613244,205498,901584,199047,414160,702031,244117,450729,646726,156405,712475,737777,371836,117355,751431,424849,216817,910308,845444,602251,609862,273028,427130,367989,565888,338977,224151,883702,792899,767810,900746,439430,198360,88611,155586,632689,929383,71663,177203,373140,75069,912132,466576,675934,958087,362482,565201,128464,158293,808699,818095,188541,24855,739604,109603,356682,531235,284194,576938,331054,370412,39998,754179,977395,88588,826097,684590,771954,32378,662136,986094,735259,182036,681024,768584,924842,24214,143274,897601,191090,220769,123016,201252,815574,452405,728157,1529,955914,189174,9953,216910,601366,845610,841851,216242,167570,339960,819652,566900,660587,258666,184906,418600,440156,315755,24969,859681,206389,356298,654451,376504,896920,215605,257641,996547,313654,330302,747456,612702,840469,986777,894717,722789,86925,793115,646296,753271,478149,629052,324540,995764,306298,14421,417413,759296,318393,235618,202560,964221,929568,581761,592046,199252,143008,419697,630336,289580,365885,44564,909212,931377,651403,252588,636886,90638,863091,233569,362551,906034,299627,709752,728762,16911,770817,785821,785609,610517,295953,754074,342403,277691,821833,145501,113721,131382,115820,49461,321452,906560,968267,57877,364305,836946,697549,339280,347212,26473,885928,692378,313655,109444,122213,773645,88668,38883,294367,931873,137526,642378,334980,831089,585460,243835,915026,320445,604598,507071,805978,925858,692173,7261,55041,621539,577214,638241,782649,571811,126592,240598,413580,965864,405049,128460,871569,648601,699012,861458,192948,733696,453165,50172,958002,572233,483826,251741,467610,409152,928452,2382,812172,271959,161091,385381,249661,776541,987717,646270,132337,713671,965712,96501,265855,954538,327579,815849,246288,417342,403088,542267,77472,863772,7052,177036,414139,934145,852189,203842,692417,45256,419010,246722,114081,185203,178735,352375,650209,290979,543494,487049,93908,173211,450206,32551,85538,236480,951550,642749,442627,906907,388258,519870,656387,242452,303605,229530,396095,529849,973845,922120,937063,136885,389331,952381,199866,529624,778671,328691,387596,402965,136351,965219,707010,146303,434824,469066,888851,577034,853315,747303,619337,499984,688857,836667,147582,699977,399751,962247,562655,657809,677626,39697,120812,360869,963028,300511,64565,797093,679397,887673,636446,950803,811249,151402,694299,80851,104880,102656,519540,760361,451145,788807,429634,431613,305301,971090,273775,91161,680226,880498,383034,685545,834797,599803,722224,462457,645606,198022,79411,192314,224431,703081,980535,923134,558813,889536,257599,175735,294133,6056,973860,390011,175535,156414,776910,793282,965175,318691,514360,280997,922022,535930,499311,500385,596044,656488,441491,909586,544681,536211,215701,235896,611567,753059,616439,847284,684418,207812,875790,5387,837111,82529,112835,429602,477719,565098,506765,120511,951453,766158,326264,903054,746099,987393,312608,602201,211961,680823,897206,450766,166782,640422,721337,623869,672900,42184,493502,81239,342527,84182,261033,244207,628822,972941,696369,294268,192737,104300,969951,106069,605416,914228,588558,668659,521770,420134,538284,165170,528211,968840,612279,60239,379395,786848,21121,572587,813198,612662,710252,427462,294774,566422,963886,131076,718899,833739,837326,616811,322475,543013,939876,994786,896697,975284,663260,383476,43881,250377,599347,68554,482426,691451,936184,754036,465946,426720,200524,936416,531757,910095,494306,683041,538950,795812,136767,321129,145836,436796,424634,48270,624214,22132,433725,522248,282479,123629,549057,933105,146322,584459,923478,634883,922958,44209,256344,211549,247906,863174,647802,229054,168001,634610,340607,28040,841616,418081,233723,255613,740259,656510,639318,831301,619138,813945,920840,502374,921257,716673,102174,590538,186436,32522,561907,886204,331247,686216,145847,915178,594171,348081,246891,130212,583403,364799,118690,801115,723378,832555,162882,173730,766390,344179,701184,375280,20816,625492,820263,122396,757513,903375,128145,292639,851294,425832,711915,56789,382397,17250,898421,964667,605125,951684,343104,183346,714313,52566,116269,629690,118861,312228,178996,675255,950791,622329,708442,506096,420127,99877,483641,690506,575407,587255,213691,656720,416642,888643,691999,74862,893016,358493,417970,540337,896545,917596,128791,462408,512061,486999,339263,980101,652866,60138,294065,605021,800245,919154,28099,332131,455567,443212,467294,254416,341625,743962,76669,449790,844047,780989,624430,398887,221729,553243,946319,393834,139949,725210,350865,691270,721254,47395,748153,545949,623919,71263,944409,775602,503136,586429,459163,235882,821760,602346,289654,509070,870088,191510,205174,477767,716262,28725,635896,626657,377078,889467,694570,85896,990218,768286,987343,70541,594404,359896,881593,23713,375094,381666,77709,659031,956456,192122,783106,965414,599826,248093,379745,738789,70141,616973,949318,731149,141605,873547,379997,687866,159865,893277,927141,767978,433177,708233,696688,589755,895703,308696,318240,242928,666550,770323,143659,818605,859950,265673,283352,465910,589477,596679,92799,466803,804022,604893,836749,499695,431150,846751,947005,678676,594633,542369,753183,63727,938681,731002,236180,243186,808415,499905,74895,199980,788175,717395,922837,891474,34000,979594,521213,98490,832153,134790,982321,106522,327829,954856,471659,874381,195871,810130,611832,763405,330182,801320,468792,272313,66378,322065,620379,985745,843996,981877,228388,962804,59489,782464,742826,729576,804656,87517,499090,795346,233999,313660,492117,418297,21625,869965,173888,473095,347418,802370,1966,332679,714768,576848,122960,311848,360620,199726,346725,206967,876847,418195,670017,446504,814925,951803,565258,607694,30636,863971,341749,504030,347173,917832,519245,353456,441410,630700,972588,266173,937086,109200,652672,32481,487495,27643,568903,762650,214399,864625,328530,461446,311606,647931,469253,59881,96497,209381,427413,237028,164774,267899,135944,117118,669245,17418,847864,285599,372816}
Returns: {593563292, 896419153, 518728271, 774884695, 548255987, 483408995, 16181602, 757672692, 764541417, 816948209, 342500517, 437732258, 313831490, 714717873, 770990984, 544309508, 114933756, 98485148, 96890968, 667475773, 960929966, 613633154, 642045364, 931345499, 45397301, 798260101, 239021094, 634063451, 940642056, 703785427, 430543967, 985358383, 823311453, 964660500, 396227050, 709450166, 452570499, 849092779, 231971189, 486020935, 562422068, 256058833, 356859252, 281557835, 843874421, 400909334, 962466003, 716360937, 339099792, 873054996, 719573056, 620564908, 181286007, 928313036, 818600189, 427677274, 914895124, 484916524, 494708205, 88090484, 813424105, 583595784, 661923689, 855502272, 791305807, 252087662, 235193296, 572992246, 395869962, 408632932, 5702346, 36843646, 162640026, 898678227, 481976830, 885295053, 763500275, 916087455, 45975263, 628919220, 79509589, 555830760, 877429300, 791256495, 499494754, 941421810, 441758611, 342522759, 536941811, 873870244, 932310477, 214219884, 75541843, 71526772, 264223830, 804136839, 100103283, 689293366, 437505248, 415884031, 194970773, 176757969, 544848263, 8558333, 888713420, 628700665, 547331944, 618570622, 243988353, 820351431, 142076306, 340678004, 995851441, 156742578, 202484457, 805629453, 965836604, 401878509, 401189381, 552687684, 206743463, 59672227, 274363073, 406510678, 320815263, 193372439, 245063465, 363588614, 100088322, 32071914, 245049095, 845764720, 501943681, 300114105, 541929761, 823771299, 16851458, 171896366, 844199595, 985419853, 584106709, 30385373, 202226046, 780801884, 929614471, 142718601, 585706489, 233035448, 278454440, 659083698, 818612209, 899010846, 937069553, 736211214, 429803195, 524574177, 747259604, 373617987, 750961374, 856544900, 295104334, 334716607, 581784584, 390255402, 660834172, 752248467, 554740929, 797135129, 279050414, 688364022, 180815929, 326518385, 172110779, 536491734, 518550557, 85128982, 872711760, 996290410, 784605581, 118238099, 406886715, 331383616, 793452761, 66616020, 668393643, 479368495, 104731393, 410747173, 111462390, 674494406, 229292254, 752219407, 786692828, 169123521, 454411546, 871021061, 379755483, 372972836, 706688477, 385774662, 389677413, 227197964, 972459315, 723659037, 517298450, 234213111, 427371522, 630050728, 894691613, 963395197, 487757616, 353630794, 168581585, 787614839, 238928239, 276664535, 464844199, 648279592, 121838799, 362940843, 692425574, 653067581, 401479790, 607981085, 475171191, 829850151, 420574579, 740155641, 933985098, 659823237, 92594936, 358654101, 184268656, 171512705, 273696488, 208695329, 711687108, 250952059, 871601832, 468211212, 422288379, 432499454, 441161374, 565433161, 717661618, 446386785, 827276150, 102102094, 373337443, 189831271, 265890657, 251051381, 189757206, 949720426, 592721748, 766989136, 725251690, 974549073, 553551951, 52842536, 665056769, 390523706, 477720012, 497199498, 825296060, 68308979, 340620881, 21742459, 14897140, 449251061, 634619563, 396045873, 509182405, 89640104, 980115410, 43593544, 742542858, 600224649, 294601611, 271629015, 684422904, 770668208, 483164938, 574867859, 873688336, 826782829, 262457859, 254956266, 95369786, 200791218, 297270752, 615734226, 8517720, 670356631, 287673347, 331714604, 294004559, 213270078, 740961641, 497044601, 80624111, 353621426, 103158015, 398922408, 64606550, 22425239, 36913475, 812449804, 76913906, 100648825, 49216687, 26177911, 319629551, 889569249, 60136972, 889858802, 726232159, 753934258, 585170434, 345908917, 843351414, 631558158, 621961494, 160383329, 469646972, 121816053, 595661306, 763201380, 463599172, 82813297, 571372958, 354438544, 897699855, 12640964, 182102144, 506350437, 800603562, 501335387, 200738546, 871128254, 332991374, 270849741, 562025423, 686207200, 986090964, 76058244, 374629908, 622476862, 388755627, 790092891, 879462717, 917287641, 273065573, 616549966, 617425225, 473856829, 875856254, 860030023, 480411602, 273658154, 516235706, 915603838, 642495106, 35698163, 580292800, 790687142, 366714223, 193376791, 990752239, 778138045, 189534375, 644494339, 271064841, 356047304, 501004474, 593220936, 653946508, 272346868, 306723578, 650042376, 645246216, 576995055, 516567621, 508786711, 603935612, 494253187, 601076177, 858442426, 299885735, 355243404, 3802128, 590650431, 175701371, 680515791, 677653939, 115820857, 731568520, 292851279, 218181860, 803988066, 332368447, 261172616, 923986549, 488619388, 769098656, 348449098, 285885253, 79387061, 792965776, 203144445, 628613607, 964899002, 415105138, 490723567, 639716561, 699874056, 651070580, 454357509, 66700084, 207023885, 862355545, 990146771, 558328817, 696343540, 126692, 539035457, 37454644, 510208393, 896488378, 554421819, 391062120, 156816267, 193641593, 396683020, 113996223, 5857744, 177594470, 208504654, 547741491, 186440612, 759419842, 900267927, 63632686, 975448678, 491362457, 296815582, 290124908, 845453273, 730377524, 196145520, 455009491, 768922628, 316610477, 30327752, 701143025, 853416206, 343597760, 41760215, 37648875, 898939397, 232255596, 834209900, 996391178, 125142589, 761946460, 888586167, 395030838, 686090732, 154213333, 6891503, 568326633, 988132637, 940044474, 24232882, 829755214, 754918783, 502845048, 967331702, 561566774, 497157725, 944231484, 879975937, 1093850, 878588607, 765115620, 932481100, 546689451, 676544180, 88083749, 583801570, 925236002, 251103543, 326110830, 329111467, 365413497, 105687227, 221546721, 653797501, 725511393, 233961478, 999484347, 572762481, 828966771, 182949290, 653855487, 615051604, 856887994, 247313302, 609924711, 974127841, 912513873, 241063145, 982749885, 466884902, 140612978, 700429717, 20427115, 52482433, 766387116, 834933547, 457876515, 650464480, 355230586, 761099774, 641520010, 838798133, 477026859, 894789683, 976625472, 536035502, 738128532, 413596993, 876594898, 721696994, 29154745, 704711465, 930260885, 198500585, 324223079, 946205518, 271249410, 8772067, 265719470, 934306099, 456453166, 843470611, 777154981, 151793396, 221809552, 822363551, 58629396, 137100236, 509761088, 776407380, 618296224, 33492618, 900726897, 307783311, 997469243, 118822372, 195118288, 101637051, 110341416, 188903032, 264400276, 216271636, 778805872, 543310860, 615435995, 382747653, 408404282, 563875298, 108119048, 171072995, 354580470, 578022243, 782419390, 275682449, 429433496, 985248408, 992994966, 132458004, 334104199, 103853635, 409123942, 260252081, 553578989, 584128995, 850618952, 953593173, 668479208, 930038056, 72881716, 510101521, 836155576, 812894279, 923236612, 616498907, 306607303, 802485076, 505762102, 850647394, 467001407, 808613951, 463154209, 612791488, 7931691, 216596620, 213688531, 452482152, 425844117, 526521744, 533624649, 484822979, 122248655, 106796899, 106375881, 498704442, 403172619, 375702542, 444733332, 995879398, 423817461, 560171030, 855670213, 587649324, 535267443, 506024871, 423798177, 372506299, 330200256, 14349295, 268096120, 679260932, 802644451, 532380722, 239071874, 748734743, 689963271, 925733016, 629948718, 749097565, 558434915, 840838236, 651544977, 450111501, 814180785, 371635383, 883353443, 287167682, 264670088, 919766061, 728137993, 501639869, 869902699, 515791083, 487913841, 359228660, 549482397, 369025080, 944944403, 899901539, 619862567, 639386880, 833316385, 499081123, 577631071, 540204713, 404202313, 46989664, 718143438, 271788648, 850463005, 311273178, 886384487, 464409445, 837299324, 742714177, 428953946, 311916782, 812849051, 329590638, 637777289, 744939683, 422004657, 347553554, 554727421, 48262363, 312605491, 250222886, 110912797, 483943539, 349366844, 895409249, 358998300, 837859667, 110936901, 528657462, 781226891, 888447907, 77080475, 369585093, 66530673, 777364331, 332482848, 236667714, 642399458, 465011038, 35994165, 59508331, 880309430, 677913052, 698700080, 99565074, 153161819, 588572429, 243397960, 619485446, 2055645, 293398709, 254497530, 462850877, 821536190, 247618247, 663311727, 469181380, 527623852, 56997897, 456430037, 10781291, 859911321, 560281432, 571031782, 819993810, 486235778, 963780600, 963663488, 325352754, 318020802, 771485408, 133612733, 183094562, 298299491, 513146877, 989571273, 473057070, 613213451, 272262395, 981608526, 126713548, 520532303, 561442980, 522779854, 859304482, 523694516, 163332645, 799991074, 752829987, 231752160, 202010983, 426080203, 270091718, 278536090, 524060224, 295350590, 915478476, 293485176, 785813872, 908360660, 944719742, 704268857, 465630684, 705030172, 749252392, 823053554, 129625697, 33897806, 222743069, 855071205, 38425425, 692029068, 104695808, 837598694, 349650145, 914563349, 776083150, 799844222, 59291606, 13789409, 367511726, 990856030, 500800974, 639162189, 696489786, 661988945, 789193412, 844213008, 231328507, 913329026, 193310770, 134880575, 532040970, 622615190, 172775868, 656969523, 864228819, 872319465, 795814452, 377553423, 593079836, 736279988, 812901329, 669054072, 160711443, 469783804, 725237315, 244799688, 995567207, 969341584, 719080431, 591041952, 42929562, 785105669, 780364401, 512682206, 442604817, 475747569, 808651298, 503174225, 437443452, 155845956, 650184538, 773320754, 697529457, 227081574, 536496372, 228906609, 66126683, 545483347, 817330063, 176565474, 119571602, 838477396, 683551478, 90031092, 374960947, 969986452, 311500952, 783651514, 349856474, 766477143, 703230030, 211164948, 747750665, 245694413, 97683654, 604092996, 128097262, 914655282, 814905290, 523071931, 783321556, 892737504, 337374644, 670128672, 651597875, 84660428, 823940496, 483468498, 622194198, 131747035, 193817151, 388470766, 686209186, 966520771, 697914930, 789496310, 845467942, 591070221, 385723614, 295694787, 647167752, 69447076, 849032136, 931165410, 235733014, 472243368, 128565575, 192345109, 154153897, 70827233, 447860913, 695078967, 530700443, 535295251, 123624343, 319819387, 823834088, 458783741, 524371094, 763980114, 243017614, 870744864, 775138420, 459584263, 212236723, 159315241, 731897127, 969379310, 780086376, 811010290, 850904079, 773960867, 748034569, 223383982, 303335603, 434622718, 623288267, 489996939, 366060694, 309887454, 163417752, 186855412, 380529529, 614145454, 340369334, 393284477, 553807361, 592044819, 286449297, 354173953, 366397324, 836345077, 634053726, 3584080, 304917938, 331220808, 958957471, 289005239, 913051648, 295958732, 97268600, 26217271, 966550448, 349800731, 640678144, 455075728, 449104938, 291508904, 882819536, 183811872, 58136883, 456680469, 210152469, 101578054, 160960018, 241870321, 437164810, 903492555, 649498155, 701320555, 759770007, 605917237, 78670645, 991464845, 36137254, 479225477, 372937934, 834487468, 640641229, 565705607, 722604983, 515259536, 530428111, 612041015, 481374551, 99951754, 72021472, 429165172, 455591511, 106914811, 625622578, 81921979, 898113712, 463212015, 144494786, 378516535, 558716534, 931230050, 33635470, 164351445, 495513449, 840010206, 16175315, 953895240, 988450514, 580921185, 62641858, 347621860, 585523142, 861133840, 844448859, 590768002, 624973918, 808493961, 702164543, 678255268, 947780197, 513766252, 667053253, 458399017, 698287948, 670768862, 247926253, 380966728, 665033560, 297338429, 546491909, 537572553, 57555178, 6496540, 707954254, 449381525, 270537441, 622959675, 820203711, 989863791, 978005004, 702313984, 609417751, 957950060, 846227234, 215840124, 608861342, 548729729, 927909948, 528692504, 839438576, 284677198, 808634090, 572604859, 507780568, 498309884, 763051440, 39994044, 381590408, 358148354, 310784432, 552262449, 454834906, 14551185, 496028337, 43830969, 868148024, 870656241, 179022690, 377812494, 33678626, 625199191, 181381056, 794950872, 901226450, 901690877, 435058742, 660234416, 744833293, 504765920, 516223779, 757102551, 899509008, 337628304, 650686163, 598133210, 637032355, 56238908, 951024675, 295572871, 16929028, 218832403, 166132911, 275841106, 619577944, 477674085, 613471174, 132105476, 962880596, 705744314, 858668802, 443977076, 999517319, 520797629, 870198666, 5529913, 958115671, 106219854, 896148056, 481776688, 600866205, 225001198, 823200573, 989288777, 477104207, 484201578, 223798342, 291392978, 2256952, 276174550, 367237016, 304243588, 914881190, 305439323, 557684433, 572713579, 656655904, 995639252, 390551555, 728164492, 703656570, 749042450, 452962080, 77376911, 463839626, 178126980, 388647918, 318653893, 330970163, 371793722, 961249008, 88215526, 665634442, 237862321, 321865077, 12578864, 839538137, 666312692, 139008627, 937919796, 495703291, 880032321, 859668948, 560449820, 382345085, 933037431, 556401375, 315447617, 976869101, 230638742, 490130865, 547733009, 831825546, 21732987, 934931001, 487702193, 292567297, 377818035, 410164803, 501622415, 253591131, 318126512, 395832962, 124148211, 948386240, 936466162, 895684128, 483104486, 13649511, 372427197, 236230894, 961280801, 850342904, 322440100, 496349123, 562264809, 312142717, 838906770, 979028598, 663021525, 783796741, 844655058, 763325426, 146236700, 686433525, 160306045, 461277956, 743064610, 672799657, 400603622, 738850043, 111680446, 333778766, 734019450, 26757250, 626250967, 498584996, 277444161, 738233119, 98465923, 934819292, 696493666, 959597502, 625753670, 470680176, 538358515, 801653480, 130557536, 490076002, 671789813, 918174901, 403589209, 586322491, 972243140, 32727199, 555143412, 298494777, 280441215, 401672040, 954760858, 943692836, 27234101, 453833884, 280822083, 893554704, 447521046, 9769831, 298362744, 269709655, 148342399, 865630207, 889546852, 564716848, 812634999, 124585906, 163360534, 862498361, 385688489, 19516683, 162679019, 668698405, 447721201, 758871339, 892485948, 369068961, 841404587, 866907390, 655283311, 123382633, 326700319, 275543685, 442565320, 984714749, 610177139, 479005560, 851113774, 600921809, 515703390, 862767560, 727821672, 672126310, 602706364, 853805951, 533338517, 917268864, 820228031, 421471835, 382744249, 369178274, 477554742, 515699455, 816099421, 54311365, 520738333, 106444754, 895437060, 905376989, 796513397, 731143805, 209840917, 732509361, 938393594, 146054587, 387640125, 41378109, 269429291, 629525653, 665854423, 975894725, 332439865, 957109959, 547844075, 930975848, 655459736, 229219509, 323206519, 524067523, 539650365, 6646788, 378376449, 185200599, 537789443, 63512522, 977655269, 481712681, 57633139, 605308743, 321194834, 932092558, 557354395, 38245698, 66096196, 15784789, 144976753, 845505916, 345296973, 404502171, 254685520, 810963573, 52008995, 483151299, 567109381, 774946376, 50402525, 8557013, 879451217, 527161332, 210971548, 973561204, 298090328, 101723827, 796866125, 359237275, 161252035, 446182041, 866883591, 365542631, 107323435, 738579807, 471831002, 336709836, 309909127, 981137654, 87450300, 618462611, 291919308, 527131044, 42493529, 66654539, 887478574, 113818608, 993187584, 751107418, 916097221, 924617754, 206948834, 786741193, 172575551, 902697374, 184076831, 735372958, 764861223, 698795234, 216319715, 628707914, 825960334, 36495811, 917018944, 862889751, 829089540, 890525040, 873032295, 836539355, 178608643, 725521385, 280012096, 602818883, 418943309, 746615935, 593277587, 714061344, 774448275, 598630283, 589737435, 524459059, 648589703, 713785086, 154780137, 259206161, 378261462, 768615771, 983897403, 564557771, 850127487, 387671289, 694355874, 381983546, 419598202, 240539928, 101697915, 835701386, 128551239, 879366559, 474113016, 432312303, 635287868, 79991960, 86457059, 428997399, 54579765, 119731918, 778541165, 336788271, 114907850, 859046816, 706373513, 501233389, 32085898, 41849944, 534183913, 175308790, 977136561, 119463329, 194316409, 250286366, 437251344, 286010747, 698643064, 530848676, 231179696, 947072603, 171949105, 862296361, 204869190, 449245328, 750527820, 833397065, 842378364, 600083840, 280352867, 961744844, 613073871, 292776349, 427336405, 994211527, 931120354, 862470648, 392736097, 746426161, 435925752, 901610497, 945582902, 142783733, 60272053, 64530103, 574163734, 198251104, 230473347, 272779766, 843785511, 180069043, 480674610, 839248901, 673470552, 91357392, 986933301, 183810654, 94516971, 466918271, 616251113, 464678318, 820491472, 828787189, 336588734, 766334281, 38533930, 246844198, 785598534, 456737630, 332419658, 716698842, 317297527, 304067621, 931776371, 523595023, 75901664, 756395193, 11227905, 523537034, 972098795, 163910059, 976432622, 181354663, 894437895, 90142057, 378653066, 351456248, 135002765, 780551084, 832114916, 220953307, 814646972, 958713784, 379411281, 341767545, 563841792, 620424495, 842709383, 412842278, 274867299, 136622889, 311819396, 818025444, 512470172, 603989552, 91362260, 787745115, 324028404, 562012667, 906497544, 529974934, 912266471, 567362757, 477382021, 441055689, 678022440, 991524468, 604837700, 394592425, 331609719, 832687954, 129465467, 520375378, 192508549, 183317792, 179483545, 470064690, 866601474, 616305462, 799902326, 302741180, 459129293, 347725628, 465354660, 29580346, 982267152, 358680561, 361101159, 624969772, 491391195, 268983254, 354900536, 819690635, 549754507, 899464068, 346353981, 265177237, 168416591, 720278601, 806945834, 280391908, 523406540, 434426697, 294334437, 253624097, 483928667, 886800124, 242826540, 394976560, 607473288, 447643230, 511795620, 765653180, 921363465, 674125595, 506424953, 917662304, 656744392, 189057827, 159117539, 197683981, 782462638, 851697857, 620545505, 484376332, 293487473, 327913054, 573876915, 959828287, 749614165, 771821483, 370289335, 874284065, 375532737, 883392307, 258440696, 763027194, 999901668, 861496340, 182066217, 637848406, 866538639, 882856302, 894688264, 396570879, 372975647, 991669625, 618300194, 545055168, 490517972, 82849316, 58803203, 283036279, 716113802, 123659082, 987937680, 284774780, 469933240, 694795477, 565323132, 529485425, 456914152, 190466766, 796618055, 359094276, 580192700, 170436898, 801528077, 113260585, 525521140, 703678135, 776110426, 132325197, 529874642, 273407067, 226327569, 971549146, 948888445, 447121304, 809383985, 588818953, 933665809, 912588026, 555102853, 421245911, 497999784, 314236031, 152927772, 608657548, 898689514, 361595602, 66469126, 980678272, 618610537, 832171335, 99038075, 131590066, 265211905, 885695798, 508964926, 47836056, 977778454, 553863143, 82559045, 634501289, 678461962, 316016811, 930539101, 836166530, 360511989, 86255734, 207231191, 140312345, 391993056, 665424169, 290190467, 833835496, 748888628, 665916016, 817336126, 280042607, 307755953, 975486635, 380076415, 411895380, 920828409, 576895556, 367188155, 999759575, 124614202, 551151366, 962696603, 558705325, 196575167, 421442677, 995401674, 471047627, 151746825, 914117758, 188299820, 611945256, 774154665, 250119461, 65186601, 817415685, 352693823, 339983323, 480095239, 410372135, 198640559, 438131772, 688812819, 794455506, 41116705, 962322625, 30647499, 947346198, 584060311, 462528539, 324968308, 238271896, 860790948, 489663945, 186195036, 815157689, 506739930, 337847127, 813084797, 165268464, 527220533 }
{1,269976157,801798594,128568911,379539875,270592974,57253917,7865706,933661876,876015132,699441746,254851339,39088686,957311283,525745378,704693451,752460470,161261439,831591652,573869941,815859906,617134255,340506075,191758521,573358709,389796994,694164391,673692345,235925138,576481156,672535045,568442926,340788239,40706516,158446311,784229616,634527836,446633578,244336490,755910073,382067906,881632398,273670012,208592405,249173315,309767218,361320802,325272978,293658315,334222851,842264437,503396409,946144098,343160440,816937653,243291062,86145509,480988780,27723003,160874397,489271608,756104194,384862224,781147485,85901382,365464441,590426339,233615431,805431484,573450860,799537067,158261,182368268,381535164,985466406,223870357,443079932,711510929,125751692,53519690,488169851,924237880,296902208,328006561,164440253,122492366,223881279,921377692,908710237,253670434,183335913,759641330,827052730,466371312,721173126,897627561,88792036,676206101,621344827,294168019,901420331,847303352,93659673,815628612,216273616,170267350,813758303,156851066,292586968,67953978,413465253,391772143,831599355,45436144,131382490,70132198,970572541,933912664,665636346,473263111,845323230,741237120,392897211,596741244,798318472,945150964,1211568,943774810,411553942,806849428,109777704,709895690,62545915,266546733,589369734,505545887,399341994,811153345,807316949,278398039,242598612,468997783,488651368,919856869,220884388,924041820,487918628,473073923,624517703,501225064,921798893,805157492,594836206,574003313,373602226,885432116,172533755,836779503,593784519,359079864,453460212,309725190,622047781,568092282,952487947,407477485,629769889,616263827,662359113,866528272,541775212,514253635,798540368,898072590,49027816,759189226,81760738,94056636,756755203,104709841,900559808,247283052,85732181,619856004,801932409,198884206,902364402,8122279,921846152,122995824,223937421,183087491,883265346,575356776,643183008,888526948,897540722,520818652,341165786,985579726,941905220,194933182,823341174,202738354,995945985,746000358,321315192,959530124,156865973,526808479,80855932,87986368,981599422,322346324,410091340,271496866,498330839,661342966,767410220,897268888,261972959,509881640,364864517,602660765,996472246,394209968,975422777,387241457,88714473,619680906,250114689,295938322,596007839,860909550,112741871,29572936,322263522,419259417,316220812,184567572,555465146,749000296,294250055,463077180,144022404,564040624,189094449,37256885,968742393,911258943,607155893,143020970,853576589,399239974,744475556,35199195,542841056,112127374,857843179,227489868,343845019,245998827,652523970,515424919,407173908,225140803,602020571,827436390,898387267,45522925,306096984,621891454,783247860,569244920,911610243,900238779,949325368,978027980,693807967,73714768,358075208,39248314,927484850,228120481,993327795,551962996,176277524,386567904,878981344,289654407,966878773,171260333,719704610,486643491,620013919,46203289,22567565,910146284,776782126,21323116,782653731,149174978,741125027,258208746,578274772,384611263,1656048,778237119,431039658,915327649,550632469,76824927,198838531,269572550,353807882,766790110,583090658,162907934,728645281,50991232,467132145,157687717,383382755,108199347,200357890,654130442,208485290,123717506,15742519,458135512,677431096,572834882,902407434,209790418,171953249,886830386,989917306,204935174,980696870,518759257,753474386,470420563,21544863,311841533,579282486,355096964,568638982,492157845,118001918,778997414,905868612,977571291,399956549,877562944,870292318,771506211,598093505,567546252,122291166,651625999,601855242,427465369,524589047,135581602,958641215,572040395,886459931,723241911,995898772,348244282,649167183,389128426,874241016,303032218,891660394,751875698,440445604,93224607,812740199,69678959,231313032,545996581,529727150,988965795,126694827,115574577,9197829,240791910,517301762,53883090,781000972,221431929,414788649,176276903,524583739,825803296,384839986,467315261,220786579,356553327,219129065,537150291,690817595,689403585,544835002,164836151,580032873,780230982,167437338,732616715,399984753,907869331,590056728,784981505,805137490,431675133,16254554,764936122,507588742,170081540,615642598,861236154,491734589,283093577,827698699,482446088,524509919,161727202,988777220,909405533,989320057,566331840,138490959,192520852,97843801,944180085,464958924,797287698,61152252,78275283,437267974,970433368,990127824,578280128,118872731,183058213,659900122,158538028,511666165,898171355,381416755,401190442,871995942,979922016,523909244,93899485,923528414,251299237,334599509,542207147,741057261,576673832,337639613,808912779,665939793,661165054,477966533,442725071,383925699,980504954,530942005,841245844,691450942,134463394,257076500,801996535,340489755,702837694,820194825,362843899,265218509,396559352,896648920,870576595,805269681,506901540,930650431,255737423,444976871,769810714,933381114,46386494,412568138,437527994,736109294,68164112,60033462,677783494,940629931,665796024,394125171,964128015,849524848,382472048,93592481,592466534,775148573,799014879,304850884,884051310,667862134,939655674,682493058,558870889,979391324,598846603,107457212,626199393,8204883,764925804,447823873,195183971,518021843,830701327,722619722,663986860,547799372,820332088,296765098,163763020,856455820,725259678,574970119,225945752,552622050,242899790,965208285,330688553,215343936,909413717,199791694,260790001,849574019,835112499,905562836,922260624,317092446,655763224,817167941,305623644,782892274,170195639,378231002,94559186,634467458,218522455,717463691,196901574,662110874,436668247,150087249,214704976,361192093,399703992,177874098,16559300,138357186,825790562,812348514,309014821,115796026,873819053,964448355,227643760,586561848,983349885,717877196,907412229,200020294,95113890,20490516,983922406,455984216,64081983,179789751,720728471,106833876,665389826,359707144,701984964,615866195,453743778,966050784,479946567,728490240,179832973,795217304,695330518,596844221,674205644,840058600,668069628,768645232,218816514,786655123,405949905,224840722,6358817,195796829,18356,833683341,170053879,144116510,693914630,784784817,347578312,599792780,188916698,813213228,585740323,695800168,446439115,450304915,800097780,16048434,771882527,665523050,386621879,22197187,69779278,578669363,589259778,686848392,942567028,34852421,313272523,371742236,146860852,224909575,564849547,279370223,413448272,891558526,890950179,266345195,338402410,728831720,820213428,916848540,675488849,471868881,180766411,480284145,19180373,317935029,776528238,906386133,698561821,158354172,948018070,155377358,165212340,444843275,365965533,802092561,651443881,480384428,888726925,860883685,463577627,289986894,303271936,60221858,259399932,298517341,410046214,828247383,74991786,57107920,177584914,500922890,108539419,732681741,934964203,910974304,865798820,648277430,105888179,306773509,719604728,163871411,255283889,814419779,145735391,276814898,472785373,391897869,762835270,441303125,465053726,371190941,887051004,608669909,406527503,683064507,772129486,465731476,995790461,804050684,315281634,590331875,702996100,412821929,490581988,598920026,442510766,729321965,550955738,590451258,329739521,166524447,47035453,756009553,18314293,967012011,217998534,275497682,293114267,287461405,503311783,448640897,588408445,929768291,304328568,57862223,146549252,14098294,493158339,808058454,831354422,903178131,28831046,418691563,357084926,405900031,897935923,309881539,395472684,782340216,971106009,392780572,955059645,484058994,558258111,794805606,832773460,144763088,536531704,664511623,981571519,33142549,887065169,889781960,900468086,805422211,345351919,807960422,634857335,454708392,482396570,569410201,370790690,257193882,134611119,716796068,940315202,853931728,737911529,199668470,812234005,362042781,37029688,124794469,140084909,346724170,802828756,602704805,29413724,570894037,387052177,537954528,190994166,162753580,228683789,390688085,450168242,59300423,697039375,877822249,570592782,543806921,889900262,452112816,983907451,220875383,55169747,823434483,2138763,620666694,516052787,218067433,483021554,72380876,151887289,324961543,848430402,762024549,577034754,808028764,186315097,84316054,149384177,817701855,288294885,675612117,103689194,885651674,757350454,483236140,398803468,902033057,252970592,109022524,510175690,998332407,400202213,58570010,611551870,684560967,136991548,495203190,721047053,130306350,982815166,549768443,710866651,575508949,526926962,858642577,124406706,406735134,852478808,251683337,122560765,240085180,399906070,886540398,51187660,674266083,619487710,456556336,493104740,564581585,236139603,563355315,730649761,853031261,332877653,637512573,453667195,489123055,253927592,573739823,367417585,776107846,990614463,138541579,309711023,890786518,968576878,956853041,733974425,809198160,105260723,707752407,401682865,929745848,934667830,116838113,763730088,645995252,458802132,65142599,397515311,822930904,444577105,818966438,259798856,155019009,686798686,439473386,25955480,79104040,773254843,714821769,563657184,837146869,570797918,692820090,326957150,905982218,414616040,875931277,766061003,47934962,418938138,966032483,119487441,350979853,692745836,819362667,651228163,887247310,230299201,472837177,252870695,930264406,393668738,412031009,296105755,789479853,983704136,922606266,597762055,468188967,23402283,56484758,73894133,61329268,227243799,74311369,794796840,342173752,742748506,387780078,102707688,375943709,355727483,638019391,228229268,302560505,331076724,835204264,737777267,179045853,863928265,439195223,797530412,8111100,939642055,844868697,411928136,694566761,811240574,695607248,42312655,750185723,288127454,787375128,890961164,666793946,785167336,628184875,62702391,241621733,390278886,733140971,528862211,94069839,779713138,708073465,106231913,167830092,278981446,669309351,481631032,498742378,912535174,21377524,512656177,456156768,169270489,563042241,7908238,750562517,59200906,792801066,497983625,636947723,666235455,630971423,298889061,231609169,225462041,76127919,224407053,147590589,781655101,218057821,184191146,64514688,186514891,926953871,729618529,632486858,921620232,614819483,400435919,817649312,800726291,51913910,154572642,40400879,328532253,50335398,739320,671177212,769301483,387988526,969749210,490130107,938720563,890373870,472879560,805378385,907389483,764942057,189692655,852191437,682140713,858528675,328444811,879520113,41160723,443276579,223849030,242685856,584818149,805096151,413292790,137359280,987167035,575356122,729952786,559924402,826669655,57513736,453692399,344113791,576624978,813375400,688550594,206252313,637849035,937955881,278442454,248961813,272504269,150761098,707008213,642582411,971887787,745684077,708410807,278305831,124500020,200755504,142557728,874989541,326908324,851044001,798782521,143785848,379569820,408017722,70432544,88547611,986860765,192696229,948519791,295884711,378919981,804624344,836322022,333230272,804453086,848044698,861105327,782615325,173073264,842634561,364540865,415174111,329238058,712046902,900639572,691353599,865039658,486094816,459573931,237530469,524736824,363909611,757422033,937896273,480283693,577385703,3385738,313469123,204234422,378848248,214642785,411693276,583700215,735118209,567530253,527687021,720352871,315813663,634213028,469872926,124119710,916578452,636416577,222179351,963679991,847434576,712355348,587028228,43623077,47435368,488488724,873154562,733402971,157215592,986037195,205540026,337291263,150188257,103607628,839069142,579306904,944279551,310619740,741290312,562645707,354554719,869555862,257741687,812895649,965247158,633808386,662866137,293510828,288469926,298239531,744944917,42551004,978479051,879423904,125341061,65684771,926479791,613899812,526271815,69904416,957109683,342031838,339292959,600219955,117433923,316223889,888230597,934779535,485321735,362408460,517581488,139717872,791783653,84262257,284569670,999587835,984538235,854692442,267266827,606951552,508916117,355777103,567754909,47409068,95198281,501458673,499125033,697538377,472395537,137081322,585138445,478663689,523812203,420648708,516832096,644913600,101723387,30495464,382309626,350449215,885936084,365440580,930032538,432831600,691534492,246579795,649996047,820366436,32695708,233427568,932620807,510140380,362133444,129593664,78909303,744190018,725753554,150236012,346012101,830023000,641670591,170033444,676344056,179148739,83222436,28081752,280348836,492503136,983309935,413541157,517695398,53376392,199181451,986882199,848628838,83741194,439544764,506417133,318326456,923796871,579249399,252735685,118032448,579883666,454993807,557966544,493788288,829347702,567771056,983928533,775137950,81541198,894051268,408665627,277936959,732799519,728452027,308949108,160997976,53081285,920544591,979403454,834904499,151504041,156920824,363730131,401672357,662857531,296959728,162229843,618592475,247595949,815493358,593653023,354415294,888368994,134005051,666868358,698619213,270349197,522236881,461204774,239608736,879980369,216970647,798187526,717364708,658418027,20560890,426081134,346029049,951622888,788324037,162563170,989178420,525832047,884469548,53540568,152098650,961779094,190720910,312899604,736166297,90162134,917183180,738829671,342611370,477036748,846469053,270933585,288588164,365231440,753386858,439903576,253716623,385907869,47344208,102337624,791653896,167653440,16424776,735486196,27588461,971924392,762673489,654353120,744128833,797680253,201816474,594553911,394431842,462098159,579109112,4537363,493844806,831528395,91750657,337875254,100974853,243799136,883186580,487534157,400254922,311998424,810376385,507823099,367714614,630685776,263025180,592711282,37177853,508525430,91384080,65824434,85205396,274886885,229625493,765877066,661330671,316354016,156643668,412309233,503415442,384974378,257155744,837323181,797995517,134053952,59489581,782017028,245033158,434346931,160856262,409019820,995182998,355884085,908677060,742394639,228438146,352166836,837213559,662414563,154710193,42903396,72081982,839623828,505324610,258684071,321354081,2872882,481838772,647591475,997571243,399747940,604789200,389693274,842159445,61241212,165417373,271499101,936505578,217902150,660263277,378624877,695269459,989431715,556872555,30038864,75141102,968121953,288475201,39572284,287247187,377530354,12085840,947666659,154938565,866483486,313375398,567870413,877973042,693494819,32326078,643583062,911628366,127827772,847451253,938333610,812887372,257082986,963109402,144522988,483053956,154710517,894308306,94024072,345264021,894619,255092660,952459359,892694917,365848643,683224606,215511579,589713491,169238716,266365708,530042286,620456319,75353178,602166012,166769647,263222559,200272783,636476267,938277873,395201459,97651416,959807780,891011230,139285276,800553425,40374145,704912700,717168317,124616297,980538347,558646895,335935054,79456506,739935442,275307811,854425747,439286677,821404135,667377887,704116177,448260600,631379537,251030879,200869251,457456941,890943130,250364692,152286510,906314177,597008580,905937503,34377360,437706414,973684983,171328032,90129225,944872049,989072955,551647921,997782895,333493678,975531525,243614365,673713819,810400065,678576330,651464374,63673534,954084971,7729107,457963128,124958608,164189664,195246160,711350004,823276398,229325135,867121781,255844623,647739631,720707344,520820955,68592664,596800205,888511781,795764892,439833932,723509072,366892857,317970727,95834698,502115920,428152543,570464424,260686807,259439031,33958579,490316138,41549326,764185235,555156203,448027972,618291901,538167283,953139191,847818319,30641688,659471479,26268207,42968234,271635492,315860921,945226189,710860599,609268028,693876304,339872282,805707269,14329996,558015305,968129021,321755208,62539788,205052375,766637006,41173542,134041781,766498637,154079386,103003611,318099826,424918641,333177192,997482306,454410035,860632776,384172695,256190496,990559265,975899943,139098459,283260650,612308453,100098192,353633158,567261262,195081636,27560186,840271166,447800910,183916233,227979229,183591891,478539934,749392171,812297319,226714193,992236978,194643764,775664541,228021021,45869120,650773310,411332927,891533170,87108117,726017150,562216762,214034082,345205115,706082406,368123755,786972966,539753061,339982954,630863971,363098779,901450035,26148025,489301795,985090557,495122267,233513945,389854783,63670357,417541372,311832789,518685306,718668189,568863750,820505323,132008066,352164357,412485163,694300157,588309311,858758262,530300771,265613498,549681861,127724695,469900753,422664920,678220526,393393118,226202911,176859949,993515177,520766712,274869831,323105100,219364384,267963825,698343072,144271516,1100225,974109397,868620616,617510132,475898888,151534791,944550394,6919872,116531219,213840797,244335901,477247521,307312996,955700551,657862640,51333125,36570031,26117682,361089455,629220424,984833174,297729174,147354336,135894152,9194057,643484673,697186392,747539429,931443331,526397826,382890980,361852273,85478702,295281467,297170682,574315960,171328949,725718886,552945881,810100276,933341066,766721339,432719894,989566714,770208091,661548163,512523253,460341410,587405961,707114097,928747944,853345516,737774156,477231097,814979346,853561824,752631097,720940503,868145326,695373337,876131876,298495306,869390355,909029483,278992082,636310525,163924700,386494555,879125954,405652760,924808191,141817158,587981981,719605545,774698556,594223102,565459786,402587981,332549254,567410820,62441776,656663312,476328594,347399536,617888581,900168685,908590771,532977904,913211383,607631397,431765580,373542332,533141805,798846214,863670435,759347412,526243094,717572126,761243274,773091957,538348612,548223642,523895151,463771377,34216439,640576268,798082720,137150254,389342331,43692259,551971436,497000749,286302755,973302735,735248401,329208754,726717838,58717729,984137486,430552868,254982482,504784780,994809554,547707285,99916621,884884116,858679614,984226841,853040964,623662662,762188184,546980182,314802500,756058648,541733570,642800324,154428976,246104315,464690852,498847455,583318713,523737418,595623935,294101029,943643386,170088028,219925228,433797047,18464182,834960553,911238822,360886566,923329620,728110964,293544981,778216678,382501062,547489237,1205363,417596773,488742284,790748233,411017636,43828423,607634719,681934860,919487153,377256735,719623501,220877443,717665043,571724123,688014731,189476761,892799277,178763237,24111124,54946242,806129443,346208681,352662047,910406581,680097353,377864847,171232412,344418802,748818994,525539815,527875530,399206569,569583230,407501026,608542659,125404769,162550531,752117586,19195482,898015728,881241250,162329052,512402170,686422849,512668134,163516674,833599324,211617625,623993756,916436877,621249773,271326482,447958957,526756581,554615752,58475617,628400269,982943473,647717272,202104222,995993964,282569703,673443891,789787421,884497545,172366867,131707250,784930422,675911329,715703321,995435751,566826130,9011114,624660227,385919951,256923576,567883775,99391298,385449064,244356868,844761834,847040048,458275454,975345083,141719362,973551491,309612211,572831588,358954222,16011376,192943852,762596884,429848491,963504084,216428456,632002515,122279325,279510161,115426868,563781312,33426565,421893225,322023574,98794359,447546029,928085622,5878384,173479926,623125759,189804982,816589067,534566529,828953856,795520960,193021116,436324969}
{722,1478,1883,1238,1845,638,1452,369,1733,635,6,1784,38,1151,1528,958,87,1695,1787,1671,1260,1229,246,865,195,416,1519,658,1440,421,1045,333,199,385,1690,1057,1161,1768,307,696,1028,1935,1119,1041,824,474,850,336,471,1047,1645,212,1908,179,1673,780,1065,1219,1275,1492,1691,1279,748,589,1504,429,1583,435,342,722,1305,215,396,943,1056,1348,1693,370,1893,772,1309,1361,1843,566,1747,825,1550,23,1052,564,551,636,326,831,1382,262,251,686,704,771,1058,1365,563,101,424,658,102,1706,1517,291,1686,496,504,693,354,1222,1615,1351,689,106,492,980,624,822,561,1505,834,523,233,1399,297,802,882,586,1138,1795,507,1295,1168,884,1303,1266,254,569,1366,474,1817,1760,746,1348,178,1576,1110,13,564,458,132,113,651,727,1185,1863,1142,1871,1629,1021,1375,238,1814,1282,1341,386,221,929,1755,441,782,525,1555,101,373,566,303,751,160,276,1455,1692,401,1773,491,131,1556,616,496,162,586,1184,331,1427,1894,563,1541,134,300,689,99,477,1102,1522,1905,335,1858,1432,1446,1654,1573,1846,1125,1018,201,577,416,1568,98,647,1271,1912,1240,670,1891,30,1287,165,1717,1475,885,866,1457,1369,888,658,1614,578,693,1882,824,1337,87,1106,805,981,819,904,1196,158,337,1854,770,1890,384,226,269,582,178,1377,761,546,883,1796,759,801,541,1567,971,830,261,1796,1250,1379,671,374,1296,1027,1890,269,615,532,624,737,308,376,889,958,95,1294,1157,1407,1857,1425,1223,1012,1893,525,781,1844,326,232,1713,1543,80,1345,264,685,166,1203,587,888,1841,1356,646,156,1334,1294,786,356,1815,1362,1886,423,303,1432,1513,134,1653,1523,745,1748,1852,1485,232,896,1546,678,1347,280,1462,734,866,335,1663,1079,1077,1295,1845,38,245,1440,253,606,44,1059,541,224,327,353,949,874,180,914,262,33,378,1290,391,1155,156,539,1297,229,1176,1060,701,1902,356,1600,1904,847,198,852,1379,720,1144,1700,268,1203,1258,1248,1697,534,1593,1332,1604,100,805,682,1797,1861,1337,891,1411,1758,1871,941,1786,164,123,569,221,983,1380,46,1084,991,426,241,1673,760,125,1919,935,691,561,421,897,90,1474,134,1032,1340,712,624,276,1243,578,1309,528,1589,228,1335,1584,178,1727,1174,242,1734,613,723,1275,1495,635,460,1132,622,1703,1394,690,1027,1920,376,1341,1901,309,1735,1481,628,1450,936,1128,193,111,1100,1620,371,590,779,1061,1778,792,1395,987,1229,1484,396,380,1570,922,680,374,1496,1276,320,1592,697,188,1065,577,174,995,350,1086,1258,1819,717,288,1734,55,968,625,1936,1430,1794,266,704,272,555,1141,1886,1752,333,1126,18,1926,20,611,1563,192,541,989,674,1115,1676,1162,347,1372,370,194,173,1696,1603,654,449,777,61,1054,390,117,1608,1739,81,1313,1307,1007,140,1528,827,1929,31,1504,1690,1372,1679,721,1073,228,553,1583,1631,568,912,25,1537,1425,437,1460,269,1899,1858,13,1664,1795,1368,661,37,72,922,1187,548,1086,1362,537,325,1446,1811,1242,592,766,847,1731,1569,1510,642,573,336,1527,1701,1491,64,1262,1347,1552,900,1247,1339,823,1223,1268,126,923,1464,1652,1651,439,228,1097,965,1827,508,81,1847,225,126,1812,1008,1375,1831,1781,37,498,1770,902,401,982,1073,1802,446,1060,1127,1637,194,120,1443,1028,1599,651,1907,560,317,993,1173,1725,165,181,283,954,489,1930,75,813,356,740,1875,1654,1684,1851,276,440,1160,1169,125,1295,1830,847,320,208,1580,1024,1271,1156,1091,1776,1541,641,29,407,1816,1460,1826,1922,258,1022,840,1859,497,1095,1770,1282,516,267,996,1242,1358,624,181,588,406,1256,1725,981,1364,1895,308,1704,716,721,1230,675,1429,607,395,161,1026,365,2,1323,339,663,789,638,433,162,1426,461,299,974,1736,1416,1466,178,833,1524,1099,1854,1298,1516,666,1523,1754,846,196,852,967,1444,1772,233,219,1058,453,1689,1343,1673,559,55,935,706,704,226,1133,269,986,1019,309,958,1544,829,1793,1129,1842,730,1015,73,1653,1576,634,3,514,1021,1377,367,1670,628,1907,1228,498,105,1888,1158,463,1288,1839,853,1036,1545,1233,194,447,1880,384,768,1642,1787,110,1856,1738,1233,1508,1521,886,194,349,447,1588,858,75,1407,1871,50,1889,74,1496,1735,893,1599,740,1421,497,793,222,1910,377,642,446,1134,76,1502,641,1528,1183,1065,477,1883,135,1094,305,1919,1587,295,1712,706,270,1407,1458,462,1581,1575,752,1239,1501,671,704,335,489,164,1508,1629,1360,1115,334,1289,117,1177,2,928,1815,1572,1406,1438,114,1893,1344,794,1335,744,56,679,495,391,396,1362,343,1398,1346,1072,816,1413,1367,1354,515,702,996,608,1218,1361,1177,473,64,1031,1722,340,1712,1316,1407,892,1406,1331,159,1338,1707,1802,1560,652,704,328,1705,97,1047,757,1823,1857,1414,1484,451,916,341,676,188,1727,38,1148,592,713,891,591,1332,88,1802,721,490,1833,185,600,184,1371,1878,1820,1592,982,988,1915,179,468,1868,1056,198,982,888,909,1270,112,1409,1093,827,1149,1091,1037,232,1709,1680,331,789,1425,1820,1236,1767,1781,32,1426,1462,76,349,1932,980,376,1265,611,1202,973,731,1240,502,559,1903,70,805,336,623,436,16,640,1135,229,431,1837,855,933,1172,1216,1509,1171,1130,879,1503,1927,802,1112,669,1804,1923,633,1087,1513,1222,1841,508,1819,1230,592,1326,500,493,254,240,957,1202,615,215,846,314,680,622,1331,1657,588,1277,1198,1700,960,794,695,169,1160,633,887,1744,122,838,1732,799,1593,167,54,643,179,1768,1696,678,188,205,317,1315,1728,1097,356,224,619,1582,42,1646,1130,125,1845,452,1348,1210,865,1098,494,1066,1022,1328,1792,345,1078,1525,1204,839,722,379,730,1547,710,868,1340,1321,1939,1753,1229,1298,1523,657,1905,551,508,693,1640,1493,103,369,1360,1337,1774,1508,1883,645,1241,1620,913,988,1302,1187,1340,67,1366,1022,538,297,1654,298,83,708,1212,832,1430,1780,1052,1481,165,930,1624,572,1711,748,1331,1935,505,482,314,1642,703,1901,1936,1908,1325,938,1605,1513,1377,460,1693,401,697,1730,1761,534,1328,1315,792,237,713,1138,1495,72,1344,1531,1376,566,1754,1339,576,129,1312,136,751,534,730,286,594,806,1665,8,1008,192,1073,328,1144,349,1642,1879,537,848,1106,1909,1836,394,410,105,204,1933,742,1874,1475,1821,172,36,1239,473,1720,1142,1049,375,1898,1377,923,1401,290,226,1715,1385,867,256,240,1698,868,972,1808,1606,1128,655,1567,1134,1116,1330,1534,1709,147,835,1022,1873,1726,697,1718,1359,1684,60,993,1790,970,1681,1613,1430,83,501,15,1528,1345,1607,476,255,13,740,1498,356,657,564,1491,1348,1774,1651,1440,658,408,806,710,1448,1157,541,162,1522,40,1641,386,841,1489,336,1165,1357,158,393,1487,585,1203,685,660,738,793,1343,72,502,1724,468,291,763,397,693,1795,1144,1051,1199,1097,1514,793,1687,268,814,857,1257,1747,56,524,948,707,527,551,1065,1323,1532,201,1784,645,1774,669,1037,1395,1491,905,1866,303,473,263,839,1400,5,75,602,1449,1475,1494,172,1250,463,121,1776,440,1070,1394,286,1934,1901,337,1440,8,277,109,47,1405,486,380,794,769,1812,1917,765,1456,509,318,407,190,49,632,1557,344,1446,508,69,570,55,290,9,1757,1580,941,385,285,421,229,1821,1479,1865,1588,1549,1325,400,990,1773,169,514,567,693,1185,764,1892,1632,1303,1224,1649,1008,1709,1581,808,539,1641,908,1657,720,1500,916,570,1772,1895,215,1057,750,1200,652,247,363,428,1824,585,950,111,1274,1504,77,161,1728,1522,172,1794,1857,1373,607,654,1588,1723,1816,392,293,71,935,1699,274,1477,109,879,1353,1648,1033,996,821,1620,558,116,725,534,38,956,374,655,643,1478,656,1196,621,637,723,1146,1239,221,1619,1517,1100,1528,695,1388,1111,70,1695,967,1478,269,851,1035,1206,1823,1470,1180,337,1559,1475,1566,1205,354,861,1804,62,1132,1525,568,477,1718,1913,1771,101,1211,438,1720,190,1436,361,581,226,1452,580,743,1304,647,1701,1293,1196,525,828,1615,1834,576,535,1156,1387,17,1287,802,1547,1343,1050,280,304,215,1844,1402,917,629,1728,310,1626,1093,383,1668,1711,58,1357,554,699,354,1111,316,1569,1444,1732,1026,1156,1789,250,248,1106,1481,912,711,1917,1848,1466,1666,1175,306,1069,133,422,1782,853,633,581,1096,278,572,16,659,1848,1653,222,376,1001,1295,1531,965,1125,627,680,1239,609,422,71,1478,738,7,1627,1930,278,1099,1829,657,913,588,1135,10,53,1527,162,1389,1322,548,98,1858,445,1542,172,101,725,205,742,646,1620,1498,1457,549,1200,423,558,1745,1420,178,387,532,374,1234,247,1299,677,434}
{924730,799670,68003,838628,552946,834358,71715,374866,311021,775966,920022,176931,797410,455117,126631,87823,792892,94499,713296,873583,251862,580163,71198,502783,235967,283538,769137,856029,533943,365237,361401,347655,607664,230870,43002,305953,746829,669152,137608,484588,755621,927102,892811,670159,412672,502431,452348,313426,303064,32948,902053,827101,959962,231984,448101,278781,723554,385031,769321,973663,1090,386095,455476,702803,645498,785313,768215,242569,343809,709528,369400,232855,1402,486480,54351,905904,361855,800136,139428,351661,781338,518720,221842,564104,148614,326139,218887,530012,198386,12030,611457,557990,180669,773390,263377,629638,251002,244725,358043,653822,395310,783742,109204,459953,264589,536116,610562,817253,634303,841062,652735,419841,917024,972198,203190,351631,8635,656900,43364,190138,483599,53079,214296,409297,224266,106996,134642,215234,554832,829300,524775,605727,303156,41394,93371,393820,220796,743114,946821,421582,187105,815899,9646,713773,292108,810757,161969,151762,367770,936491,312988,509369,234521,874674,552397,639040,484808,79232,128438,79270,547354,434365,298586,162380,966643,331668,184972,758263,193833,395827,438326,942987,855491,660102,923023,250064,595005,88191,773092,445425,273218,92433,351504,278008,661040,243824,352898,744083,927831,977234,10237,782609,47993,803376,683859,645221,637003,485189,428137,530081,378930,212813,451511,321980,846727,553479,364164,840972,286995,135859,194989,927116,765203,533908,937438,855511,55476,154223,597783,486442,511767,716106,864680,655845,970638,571821,55604,763210,224541,499491,555057,338172,322425,637178,765414,112449,908684,290686,545708,743937,525102,492993,901485,619588,619565,674582,246568,168566,805829,6993,897066,192998,857384,514056,317717,433346,67512,665684,106652,195676,411271,431888,331205,446120,821405,452760,994789,151419,16497,973579,677351,280141,21294,773322,548101,277687,477616,391734,18124,965621,698180,244085,732892,24229,755435,183724,956710,790918,387350,54470,985899,915257,765291,424875,706051,409475,210622,271241,204243,714184,315672,705295,657877,356689,870708,369900,611156,793927,265148,356308,337196,556789,155408,656378,672654,917641,225086,549143,778041,754386,277450,473249,987330,996227,562536,857172,481868,316526,487612,955564,524112,56714,583264,959016,154454,212525,54558,96265,930490,344146,96817,233872,575463,391956,732360,275267,740446,81968,697987,995239,316336,528135,616371,884807,462783,261017,159325,110955,722625,220106,341432,783457,55484,665440,396458,46584,3787,264194,493838,567679,123095,534906,953328,789194,817309,477108,710862,69741,986478,264188,818521,659326,448362,96451,106865,910806,252804,797659,555949,948368,615553,989366,503248,129033,260600,90538,819220,261790,549586,626287,908514,100464,867659,323678,778583,312674,640495,177907,304001,481689,567645,469196,918752,173371,682311,826600,635941,650224,308527,897193,511029,987876,170923,712337,615014,498946,609698,552008,861759,58105,334605,117268,998588,933179,92726,326302,480456,466745,284091,959603,411201,864807,26059,484992,560504,179070,187175,844693,924077,754228,413410,247523,428694,953413,825441,126013,289176,792301,647836,383962,392652,999211,114522,587153,659579,835072,3064,126170,769762,421421,138274,965139,727855,278072,693208,311481,752129,746535,405610,798826,110763,535490,579644,161705,116656,310805,400194,826137,621064,660395,514372,480640,889178,129492,840859,697862,356351,970975,42354,258099,353797,56992,170437,882419,660457,731883,644900,9237,683355,180246,857841,107591,112829,817594,929949,513627,996964,775090,962223,988165,153941,90203,686204,933467,542217,699090,383983,476371,80425,415096,79618,710279,98897,292337,705859,846004,178064,174303,945360,288374,298342,212267,914586,399628,500869,753469,450277,257178,573201,721470,7942,737122,584159,891485,690019,767945,781112,759878,355958,287832,14679,692332,695498,780792,416742,996736,530236,78900,985605,995382,794938,648186,256003,484615,859143,503962,148450,965673,31669,587397,899414,918104,550184,675790,951686,571153,234521,806188,669450,665041,59024,228662,199786,1177,659561,255973,168741,125421,26640,19732,182567,787919,966980,773251,695825,33352,467543,696783,752244,73952,62891,619707,821845,678880,108854,512747,603435,627607,82750,145635,589980,472273,403102,776075,6147,144033,860287,976045,892268,889560,954463,190005,145430,560907,828173,349488,423663,578192,812458,368205,288475,610048,632361,972766,706029,919799,23439,332375,641964,617871,958835,828814,447631,603432,825022,504761,960385,812067,105964,853426,832413,117281,779145,579446,379122,823880,968181,202081,33855,650302,585184,76275,307575,287083,411661,542349,354943,988155,218194,932020,663339,193753,129430,31181,645316,956853,366098,478239,24516,388159,280144,696531,40855,583720,872814,804151,723035,960423,412764,402422,353184,689138,92313,955553,99753,172544,148345,924137,543337,944397,707425,899233,431302,943510,634057,956352,447001,955992,300473,60189,746027,522645,368012,871793,567673,826446,422319,201048,460657,87049,609698,180559,657650,912076,868597,512951,280527,699487,709516,929424,743116,231246,135195,174398,840607,169828,59306,282119,760752,854513,19922,792915,631705,547269,451774,418346,785701,570162,469803,244217,751060,233933,834663,708556,472726,669420,513556,261781,149067,581353,381862,717027,752329,148317,571489,869803,365717,538725,511003,346563,727272,10400,338623,336033,104939,374511,380744,549983,971323,800307,562561,897530,931301,912914,402635,303822,81002,572210,398999,775771,48252,114044,689767,599875,776830,295770,277393,574089,315016,17592,744699,852242,244769,449222,734239,537703,235842,686067,541256,897201,272537,511347,19091,289147,304195,523706,881007,986996,515215,556351,829213,646697,530242,767161,371759,886030,866509,274405,694028,978550,439576,265917,716138,728726,397435,847361,361811,762310,793215,541298,850336,816383,31584,456785,353472,773277,117133,696420,42802,878045,775014,301297,39365,698464,360253,809665,5855,943462,124309,354782,531315,341652,27302,929620,100745,611310,107670,451571,971257,605404,814592,340235,202031,406377,11185,704686,250536,895550,124389,472305,239859,528683,659918,36010,32113,686559,5709,126579,244181,364650,884278,17253,531429,438913,737168,708189,553206,27130,855442,254971,277554,995915,883687,173853,235605,494095,73450,613160,797484,712960,307754,871743,228692,609341,178855,183113,866880,835717,414546,37422,114739,191418,309584,330202,684929,285599,337080,390841,936082,33946,621392,142073,71007,201970,958611,45258,490995,491025,500781,95008,168170,952002,213372,784111,769140,434355,124945,423022,721938,281204,148077,469204,95960,337718,730628,650142,834153,763021,959804,730886,902974,697134,766254,839309,812895,642225,874788,412721,500583,55247,482009,433143,661955,652196,897852,859362,126643,390766,808620,628985,958216,315595,31932,967621,94884,138047,984880,872591,663868,599403,517246,158310,287193,437590,879310,285527,69330,633512,980410,250802,653778,722473,273230,254347,515352,33350,974216,623350,961778,787084,276120,640330,439552,22826,932641,611871,812599,930291,496822,873999,464730,836121,149149,945016,524866,348659,752463,389751,848728,976695,348469,786158,30613,342592,778604,504766,297160,331848,914305,78541,607055,991214,882550,939329,789276,430322,215803,251331,980593,895027,908660,406333,480228,517687,960953,208283,785435,220451,519569,110797,195729,962494,88629,333187,524495,387122,67475,812655,978291,540555,771144,659270,698283,988341,735844,198975,66746,819457,297193,743954,468018,896544,418444,378937,313848,834406,697970,236081,522115,598600,954100,440506,335901,699166,980955,288019,966688,258401,696995,172990,519673,437869,223164,476161,193191,326080,978948,734370,634940,521401,777358,418410,227163,580313,119901,527651,566904,135940,257769,781402,24091,615809,252184,806940,76892,827445,398789,124220,409127,757100,422013,19339,200250,553104,587453,562270,711906,414191,524661,726924,160577,165624,316295,505261,175242,439486,115079,340379,85634,299443,40764,678452,610689,243374,170205,734037,113199,171813,749717,259424,56135,616883,841280,166647,979414,970066,89451,408382,362812,695202,563286,450268,805289,603104,960821,406330,947105,137839,563306,533442,177336,550354,269837,297056,925398,380911,484260,19332,201844,131853,140266,792862,870813,811862,783755,173984,50477,517909,101670,918271,857557,202297,588361,850738,320404,413008,793784,384049,453439,383500,84711,817078,213753,506945,148154,31487,486331,947812,451339,168137,758029,624397,525988,499350,85066,251317,245696,512808,461280,349240,253326,202179,464269,471764,646126,384302,627106,149480,3249,56306,858948,477365,616412,433753,138085,710240,822501,882223,591247,583981,945204,796740,739929,249413,699747,923112,162287,927088,584190,638829,958541,421851,829123,273896,511556,908115,521315,338864,71284,975688,822591,794909,13200,412299,427051,829001,228444,573903,315629,268370,740657,64875,208446,841109,986168,424917,634567,629940,114602,317416,65253,516561,317590,753247,620710,135120,534491,889303,375625,60184,261864,299600,308801,60370,105219,745132,780210,382504,830335,41518,747762,351239,186563,809468,279241,152861,391498,327389,246449,461083,76573,727100,413654,334899,895834,644194,681750,632602,971376,357311,577217,917895,165600,51745,991705,993138,254397,339578,821587,788053,25452,794654,559828,39534,646436,873602,870773,515194,986095,284862,995391,141691,429671,14923,586479,289843,286073,773190,306738,866086,666021,730602,662761,822299,556411,95513,492198,490203,586782,78164,788013,173616,491525,717373,476788,152871,208245,363292,154274,464334,787655,459158,357331,727478,732264,675639,548433,656369,611795,96425,109660,852692,724568,752890,359715,383158,982809,344858,396936,570863,502407,830618,250912,26905,363880,813421,407280,136082,106388,686250,380272,47288,753331,13511,232395,405931,906048,309215,885341,182157,373256,684077,777331,513157,341355,598350,773838,750071,893658,785603,69344,711501,911639,842220,132556,737137,33335,445261,730538,448208,466658,92556,887104,966872,308241,987568,609609,331962,38671,928291,674098,32104,550009,976561,759063,725207,881213,11270,316810,513086,380126,884019,815180,953173,407853,91178,76881,229718,102417,927677,905152,18623,889408,249762,947632,983182,522883,239537,266028,72835,311989,201955,452464,825760,672452,231829,925353,535276,381742,636739,472055,186795,592325,415372,468078,461863,663851,320692,272976,668074,990486,606749,46868,959617,387277,525388,552290,833146,965224,128426,205972,218342,481107,505024,863543,872727,698891,556153,450311,920994,475551,934819,496885,48990,92272,130670,780580,410595,830000,654506,600423,444620,631782,195277,762821,731636,644777,852907,30325,439228,554528,648955,487522,632963,675272,903640,269287,533676,279853,224061,212178,293787,183406,253063,60965,719415,692221,228919,235152,765161,286941,952557,161912,591707,822370,560877,471155,81338,828659,690653,58313,21748,737035,339269,50740,160698,520627,11789,267616,583103,442377,320129,933931,454134,931133,966160,559461,772951,484046,347464,209745,973466,687440,619292,719458,63481,209064,835934,460734,465010,105678,629636,539582,114819,532553,223078,253291,847980,715638,136957,949634,893936,596161,898854,809265,966803,182698,872029,558743,125596,903041,776066,563335,427668,967274,668438,936133,790534,796442,398462,50695,277500,547607,257791,321844,871432,451963,459200,407784,710456,928368,943882,223982,509407,959669,819210,417732,210770,264343,458830,884058,356776,531832,705411,510610,477113,259724,338557,70465,318048,808406,821999,842924,501113,554351,797038,883852,821218,383743,476465,91914,279485,597377,825683,815874,651244,759043,646351,92548,110740,641379,657347,774350,869850,422354,183021,465682,566888,1108,448688,959990,85928,322558,81936,74383,643655,951734,840177,794852,499123,671543,946843,460337,176157,119881,342136,333280,951608,494156,293396,642961,412535,65902,333468,744467,439890,125232}
Returns: {328543730, 158870080, 188965155, 91925560, 235530592, 617665059, 461356908, 883195044, 824878059, 819757511, 886892201, 203116040, 380286718, 187119017, 444061135, 261415097, 356558199, 200114001, 464793496, 316623104, 481368150, 429207070, 64632096, 357325716, 891504496, 840454537, 172392753, 759762695, 35215347, 318764929, 148737156, 572784234, 777990678, 233314583, 248616079, 465661871, 390126208, 370787918, 666013031, 237236372, 659229070, 215737995, 230570935, 393498214, 98312622, 436353297, 743095842, 902005214, 164995524, 509089775, 296756523, 124379149, 728086116, 384449145, 206412978, 903841597, 123374897, 324161435, 610378571, 226423216, 636406233, 673266108, 168867947, 415374264, 825443901, 918459434, 528893901, 744228531, 540969236, 72599656, 855307823, 59900613, 283332958, 854623769, 571082178, 924536903, 160159762, 797715687, 245067757, 532710685, 691173100, 595939852, 58178515, 792247356, 437443159, 165182410, 866021229, 278140191, 80147592, 667224952, 860120874, 581607536, 64478497, 814181283, 64239906, 378487728, 246242192, 620472590, 378917307, 606706743, 820207116, 930915954, 94932633, 273179376, 583329872, 424443247, 868043213, 865829344, 672128256, 773266537, 689937476, 941715041, 513786942, 719900006, 619904332, 799627847, 165858419, 935661410, 845389303, 83649314, 44386424, 702947280, 216171125, 326484293, 892875411, 691640908, 655478153, 534772463, 975137557, 707300133, 513598841, 995933145, 591495897, 717802570, 14360724, 323591073, 266461858, 385340124, 802914441, 463782447, 730589168, 142710475, 794577576, 359764995, 70128097, 329883285, 592638722, 266050041, 822339981, 798994834, 607328333, 794403874, 520533826, 651896382, 277867838, 229557821, 966675053, 529522126, 30387505, 613882326, 781610476, 303011743, 421111314, 608294312, 563548978, 61188705, 231095321, 695930323, 734858784, 290357836, 912998909, 545563457, 665471179, 772429284, 344728044, 646887558, 460774098, 123858967, 668357478, 930477918, 65363180, 242143958, 922145260, 615411564, 368039455, 910724384, 762824906, 152987064, 188509155, 595422487, 146355236, 601143588, 665689837, 930296609, 710424165, 156839851, 668702561, 157215146, 952858617, 707541824, 747634221, 826242310, 253750327, 202455006, 924398053, 301205954, 260605819, 880918568, 547281921, 328543858, 488977247, 551127767, 833585030, 372809503, 807947213, 344521016, 956436240, 621953911, 118538777, 233176316, 801747319, 832066435, 218437555, 272701953, 665413805, 596452235, 5183861, 256334041, 118230058, 432739835, 667989595, 522980085, 235317214, 124822754, 633964123, 578031881, 710270637, 891178295, 332321915, 625473757, 732524885, 777945643, 961209269, 472318552, 268010774, 464607576, 250132204, 129789572, 620836000, 822269053, 514415208, 468682769, 390098388, 178968655, 930674208, 880375301, 881879393, 53097063, 834003190, 841287006, 428511936, 584832859, 553461002, 993751793, 696643018, 160278227, 421605761, 13688159, 979206533, 731548585, 363663227, 814804762, 868001479, 841942888, 10286713, 976245958, 808324902, 840542942, 671153122, 768731641, 531936140, 769752720, 18991333, 20138798, 172754035, 496277313, 723264576, 219524688, 756492843, 875452062, 951096043, 361376740, 423170745, 21533309, 42938226, 545245668, 698702425, 679910177, 665966592, 215367169, 508114316, 529314138, 386380051, 193935892, 54985122, 801315972, 255708993, 338414543, 971402626, 412485313, 520053079, 191947489, 19010375, 252767710, 470047689, 873728511, 827583280, 17418300, 465482792, 971807119, 719736855, 433967729, 185580305, 679308646, 396478001, 206589162, 620480033, 417389571, 795831449, 900789913, 734898260, 350680595, 283915915, 651218235, 252769127, 139686544, 850126676, 716671038, 635844575, 828985328, 232794633, 828099355, 197525454, 885314687, 327893188, 547621088, 124566677, 544450361, 222247004, 988692005, 812389, 143018219, 559893756, 33161054, 991816425, 373114116, 397855140, 613169469, 466044294, 29802620, 227088712, 477923653, 213469368, 290451985, 352140401, 521247868, 479970301, 542341137, 147716582, 24950702, 925128440, 55822778, 432856241, 670360855, 950301958, 154233914, 405149292, 104739364, 762890967, 763216608, 640211916, 17974915, 28351790, 154384402, 844208868, 568020425, 682062634, 361143202, 858322102, 871957755, 561458871, 821519672, 767390457, 681807723, 489234940, 440528837, 67304896, 368582143, 739954296, 641915447, 42545559, 592207799, 589432001, 107151108, 818540392, 999544061, 91223234, 603251055, 493951854, 265320821, 575784210, 480708023, 162086617, 629357457, 368053873, 900189546, 201081751, 76634573, 943558873, 214233608, 967912712, 970249948, 287976032, 395383459, 211088846, 260495261, 520243818, 62463338, 23905626, 330975589, 125093908, 793395116, 511093257, 940723868, 618825050, 767214883, 521101563, 186569492, 853274521, 821574859, 786328609, 587147392, 973611476, 952623172, 887320144, 495630487, 413130192, 941445399, 535815083, 269439420, 141928052, 916966628, 740645637, 204227581, 575736192, 167655748, 843374441, 855818140, 112205631, 867455244, 299019476, 711970511, 39465848, 921098491, 830826832, 933166111, 237457277, 482211765, 941252988, 588033269, 174281675, 802177278, 949264011, 678880588, 618137630, 950701202, 809223466, 312692485, 433464928, 737516499, 589167834, 952616797, 697932042, 640019403, 185079456, 887380185, 593115504, 386035589, 880840413, 171914641, 263470325, 705759342, 684931933, 891824657, 594633477, 496600663, 1025192, 972763405, 537503310, 294938611, 547172165, 925040864, 455004441, 116082313, 979488582, 210571484, 771299230, 639039658, 424859595, 937485578, 615731491, 703464154, 237215360, 893350195, 572658756, 860775108, 278831366, 637556203, 30720899, 932043996, 903226299, 749547311, 84799701, 253876540, 820161992, 163340941, 824840317, 630640246, 497249013, 634094334, 105051383, 432151958, 368589266, 251045058, 487181824, 981823247, 535782130, 224193280, 738836912, 189421770, 346450050, 473829098, 591828045, 688574115, 493028952, 366105146, 809523236, 521671605, 788870708, 70478870, 947618210, 222026366, 730413303, 17419553, 879450772, 388772541, 852735313, 314191870, 560761802, 569064002, 603819278, 990158107, 948433778, 880418583, 676258204, 175657137, 207960155, 763934295, 700238356, 938160956, 814268407, 537267248, 475485249, 282923210, 916958389, 305848785, 312859347, 531810449, 643193315, 329951643, 640835394, 245150266, 198011808, 558203574, 455499297, 126550998, 71889984, 484776546, 776863226, 735030792, 527427490, 959240227, 839741943, 821496130, 785573309, 780691506, 144501735, 393054608, 938694747, 649060628, 424464124, 472867577, 103764600, 717523467, 429696191, 133774624, 184231626, 999543433, 47039322, 565162301, 260824848, 519697780, 617037055, 840458111, 602003, 351102598, 218382664, 697957542, 284794334, 760965227, 491109299, 424168794, 798092468, 92076251, 247670755, 970876770, 48586591, 772657977, 634929007, 141626841, 23991776, 636347088, 4784996, 504098166, 58767451, 936362439, 536853733, 542313455, 4523237, 887324919, 752720761, 11762428, 328757001, 837201220, 251334363, 512742957, 782490304, 603753865, 586818467, 30838078, 798034956, 571766714, 526547555, 952067305, 931000906, 434383344, 413105630, 892832825, 128813693, 222693580, 391162386, 418159584, 840320645, 351726459, 367129532, 690532076, 372647868, 923198691, 289993864, 661660471, 204676898, 321226496, 245349692, 646193573, 87125642, 790643518, 738139498, 255616415, 128507894, 625686826, 978400687, 562665481, 952860487, 192700747, 839119631, 246728095, 587165359, 395489500, 71157992, 854299976, 604386535, 995699210, 485196103, 332997889, 464325353, 734784479, 835026292, 355578377, 630003038, 271376174, 909270134, 271786069, 403643966, 289405254, 117408728, 309534113, 839664325, 677715527, 666374487, 726963285, 716723131, 99171929, 921106538, 132160417, 961203218, 947428105, 413983254, 552106918, 373146586, 563335211, 802706968, 308554378, 939532555, 869106996, 291646776, 952559720, 147020890, 18507013, 759695405, 109755671, 867529252, 339024817, 482665001, 608462910, 146779254, 886358090, 412233633, 418005488, 400016524, 669612974, 980178736, 668343167, 185661899, 227718216, 709160724, 184852091, 853566190, 649018602, 572527346, 248187201, 43933598, 985431069, 740739746, 604635544, 944832756, 172741703, 300087974, 491137175, 319284274, 518113318, 516557240, 481163800, 573170453, 345712461, 628525536, 23794800, 194163142, 178020952, 595410064, 382202819, 333859332, 925540967, 261636855, 563506392, 308289921, 467927255, 800761050, 253771318, 241669462, 314010454, 536452949, 960501679, 885020600, 468332032, 193188824, 122340784, 759352347, 308348259, 704037846, 603187470, 705857976, 34393005, 266066321, 795130748, 786998519, 220092297, 440648258, 555351261, 878212261, 292869647, 307012093, 888631534, 851949029, 159183916, 116002186, 376680666, 969628840, 873993059, 178279830, 121942781, 97726989, 836290952, 174544750, 656645499, 999634881, 39547275, 531447857, 352911487, 944429155, 884637920, 551024491, 28275689, 456203672, 594825844, 524226786, 660223450, 353344542, 289134901, 14761400, 299498294, 615865403, 132849858, 839647054, 479020706, 360184204, 187021462, 588108807, 457612560, 46739621, 620179984, 765934801, 532578834, 521927833, 41047113, 93420636, 912437261, 821308835, 334027374, 981540774, 392438118, 563133039, 630511159, 963376744, 174418551, 237395964, 790944016, 730980173, 500219932, 942376634, 753350626, 691476503, 328868877, 243920062, 361396816, 530995763, 131088733, 369645366, 975854737, 471301612, 463471931, 789089134, 919244053, 276509147, 683703474, 152039222, 43132515, 963592310, 511880453, 541239039, 939518457, 938522503, 810598551, 33045461, 310358795, 382066139, 232480568, 713071203, 104950434, 759863382, 581047449, 21122619, 548000977, 242546368, 760492980, 134623661, 657912662, 250953495, 878271737, 174335656, 410057498, 299411830, 928165942, 66899824, 663383109, 897248598, 478148792, 606020183, 713541992, 781783195, 320061014, 237739560, 190241793, 911725968, 600750300, 339629115, 138268960, 404826140, 554359728, 631403173, 458702588, 226106786, 302040406, 378892279, 346563957, 515093725, 337403994, 307999780, 734431745, 995290482, 909251541, 144636610, 751012037, 900464033, 413270011, 526109190, 630203186, 952419252, 969324991, 23141160, 748437145, 812464879, 764364910, 815226135, 966082082, 420719864, 548504841, 622785605, 359504707, 988932429, 393520439, 562353702, 412155326, 701371385, 65594857, 724991060, 286020157, 302094220, 619938410, 769785667, 773465784, 799468204, 987993750, 444585006, 817186226, 592731803, 618914228, 517184502, 905815616, 822444057, 417438780, 518169988, 158078034, 440152711, 29969070, 598100130, 256979752, 104866996, 78430664, 375147873, 273626514, 268075850, 275276421, 678470703, 174764136, 210317376, 665321188, 348386597, 166826533, 230403754, 826715930, 695284329, 847085266, 899169578, 544394820, 440202448, 184855063, 814943598, 76271217, 163798332, 624498485, 1050930, 205667314, 747751223, 210283790, 511025429, 579544589, 213136346, 228525446, 421457961, 472683419, 275669804, 634275877, 498341972, 358496107, 810786189, 307064108, 498220563, 693466572, 782614237, 450081379, 139770324, 494846479, 919537902, 861692953, 959074151, 778342181, 199166037, 256003333, 985500630, 934508203, 877884183, 567399744, 224472790, 528728330, 993368838, 428059562, 769914407, 483002271, 420353076, 99580992, 30974139, 293522564, 652164708, 708053994, 54939767, 50976828, 992414996, 488884443, 846143969, 440717814, 911521282, 468435346, 856219048, 572738360, 432519163, 179887741, 112239277, 676299192, 817615206, 719429290, 133889003, 388476364, 156639710, 110759985, 685365778, 300653623, 524917191, 450402625, 537386464, 226549408, 908481538, 554317020, 712736417, 952461034, 408241722, 940569842, 866113428, 287083231, 95583964, 920139999, 534513095, 225499416, 552759546, 478042855, 637876738, 103471593, 992437847, 408419185, 159308095, 675637250, 875927902, 632732805, 161167139, 980173551, 375755024, 865826224, 924811218, 59935863, 865339676, 840224814, 879837439, 810509514, 776272627, 620260343, 969882142, 627069381, 974815695, 299270863, 184395286, 604711372, 756265522, 879642091, 907697353, 465211551, 985837397, 232058423, 18821017, 127219549, 732975039, 20526752, 237287242, 421541748, 335088730, 368771911, 775683619, 34799984, 623422720, 307167397, 36175061, 160409291, 423392670, 149602780, 807098874, 986612028, 505588021, 904778785, 362646703, 399699484, 546842432, 90308203, 538204467, 432177919, 494254436, 582897447, 450181020, 4068211, 30195525, 893317948, 421222691, 102365171, 860716834, 909857288, 13391912, 355371693, 715013287, 321707869, 21868100, 102605124, 225599364, 67977386, 57856988, 280158177, 303464412, 271232210, 882654317, 818411683, 345440883, 711637218, 131461109, 788237369, 348019703, 932021513, 850863080, 421801185, 176407792, 196788950, 550986318, 974621481, 540517401, 60774164, 957310594, 678312703, 63562041, 936642788, 534579377, 641570637, 46730876, 689280846, 420297534, 158909203, 98146943, 765077444, 826214265, 816875673, 284449643, 250209898, 419568243, 217849341, 746309573, 637067790, 442499570, 786862102, 89850978, 525644808, 803591910, 21684706, 885543076, 722769664, 397918103, 311982829, 359139859, 58162266, 170839259, 646062799, 414770780, 94414631, 552656980, 946196596, 338077685, 931507772, 637481534, 102857168, 453151318, 167134774, 109809940, 860269335, 320284270, 266792302, 800956986, 534587329, 720372172, 364160366, 43282653, 410655735, 802627122, 665354209, 702078084, 466850776, 633639264, 810229120, 767040042, 342507455, 113642671, 285781371, 176266344, 689980948, 582436277, 231484152, 866777760, 484506118, 548279316, 59753494, 599311454, 147153161, 445185645, 704114346, 515765011, 460860507, 236377027, 464269147, 560629669, 610769290, 872026935, 955234921, 496493351, 854624413, 275193518, 718949083, 781681551, 166023359, 65243472, 70734823, 889403541, 290888199, 778511779, 45317051, 914892735, 821839806, 84047464, 82488609, 405650181, 220825077, 750085508, 41940327, 388247389, 164646864, 696719539, 470080708, 559797181, 456502677, 309502097, 191002068, 410189449, 882380674, 677000953, 107517866, 792489115, 930845627, 352705435, 779581792, 13701699, 775372601, 903865586, 462002699, 422909534, 556767480, 848295602, 31533686, 152666985, 199636817, 917220772, 831288543, 606640431, 103199842, 467401097, 568887997, 751965719, 6410957, 482327778, 922810737, 534278345, 316129156, 751506465, 683941432, 240987563, 324660337, 382270985, 963927094, 52819490, 866197090, 326864066, 492136086, 21373541, 749688059, 138391438, 719950280, 924539541, 514711047, 96531177, 651005185, 711187132, 338600297, 909340590, 504972290, 77936665, 403846223, 734778840, 52516209, 415287800, 619995986, 732697730, 520712434, 143515008, 159767853, 971221394, 134820755, 154278666, 670213094, 448832228, 1946468, 674875684, 392744093, 564958161, 948307710, 409297235, 454171068, 637893187, 308995095, 564836480, 771834087, 916099029, 109967662, 773058374, 960671660, 956875873, 548236087, 48369396, 704829729, 521254019, 153397008, 450769228, 889711600, 139607080, 448868704, 130487415, 587270176, 295614019, 139249058, 184144136, 190481815, 810347427, 304811979, 476296492, 140173383, 175411693, 893250638, 606872356, 944100216, 268952632, 183805278, 205015495, 790965866, 665561566, 11633914, 489603148, 736755714, 836655008, 854782186, 71270182, 465592426, 797645451, 305058445, 797105315, 514510033, 316046182, 295147028, 891607717, 871904628, 91638567, 590662650, 583477142, 568157288, 236227114, 38342045, 858502564, 579530563, 750901776, 945962153, 195760196, 166097584, 859536535, 486911745, 158093439, 158564580, 40898210, 186676292, 939957245, 594312856, 908966019, 600846012, 397124192, 602812350, 458128237, 259145409, 460708478, 308161772, 251897660, 617441213, 342219821, 39557368, 101028947, 292294931, 515989122, 808807257, 172049705, 270564027, 290924448, 736967987, 199955097, 869251425, 325742762, 998410514, 259709118, 363102414, 557595651, 253795674, 642631220, 300604870, 42736723, 488214510, 641755072, 409047807, 650259863, 306344387, 754077377, 688055700, 757975564, 454811012, 132298416, 965193685, 851361804, 953752009, 755013927, 833302890, 729377691, 870587659, 318416010, 855087867, 986683367, 511990556, 472163123, 266188771, 426018940, 800738311, 484446526, 181251269, 180228124, 404689012, 50046819, 394964106, 858951273, 691531664, 3912890, 754013186, 168591778, 597125517, 636704792, 413687899, 610024087, 179511253, 611719505, 709405893, 206703330, 122587389, 110634429, 465126934, 992688373, 36212025, 103843345, 248847048, 164420758, 964121127, 142576834, 929460061, 721806182, 301860763, 682637265, 467508397, 34957751, 724959808, 885342825, 785434042, 515876034, 259651088, 651354396, 455098704, 636393293, 690685121, 798123415, 200168171, 602219282, 283707876, 686991283, 866462091, 373550841, 673200366, 309784741, 613883479, 879201697, 996790580, 335378771, 349320843, 685723231, 594140034, 266123348, 290403280, 46286974, 267866850, 60632390, 631418172, 670384310, 401481464, 678743921, 243225695, 916775146, 561700144, 302272935, 364011186, 38420131, 88528203, 473175359, 7781214, 972944589, 961345214, 264666795, 971634220, 587167971, 323420971, 814172370, 953540105, 479381525, 536459662, 145743698, 752639444, 397370537, 26645510, 289594895, 883065022, 913471903, 815959772, 992916323, 259839008, 351420885, 897767373, 89438433, 356549886, 570004837, 99264552, 571038708, 30959697, 255484824, 538159263, 309570616, 826639656, 337641867, 979619420, 846455486, 520001808, 39485453, 469524580, 418340692, 631548044, 40123669, 234699614, 602071789, 138013956, 785702823, 190812852, 427274200, 535607074, 549387244, 454850804, 94487787, 83615653, 56113147, 920417424, 528658809, 175717737, 82445308, 562916440, 83969257, 584088755, 4871260, 765604290, 600178542, 524162593, 945177739, 425102403, 510155593, 686790976, 215072884, 541074860, 735923230, 908355669, 604885220, 389282293, 202889663, 118995171, 678563614, 190043490, 567392568, 142625098, 201804454, 356355877, 684761042, 104431631, 287626514, 246221070, 973830365, 875572416, 90974340, 998377432, 196610602, 403025590, 915391050, 622100297, 887333964, 343328648, 83419124, 854202702, 505010993, 371645231, 634034182, 31174952, 637887848, 782936655, 323681319, 293695029, 240265858, 52668516, 27676413, 788305909, 354243163, 284936494, 856425172, 703444794, 314194275, 365383899, 986217303, 809850664, 843983080, 253017342, 545537647, 531126977, 399253880, 11706618, 68084550, 278424488, 935133028, 131511292, 420034760, 281833486, 309079566, 469743840, 744615015, 569369862, 184957927, 110759142, 170633887, 870503720, 467045845, 481095134, 632149362, 645790300, 366128900, 615606804, 66590733, 809349774, 173338315, 662424012, 241504448, 11511889, 853823522, 975149158, 539795479, 979814807, 822203832 }
{1,420174944,763205199,339025280,911107022,961652515,257801811,347690318}
{1,1,1,1}
{205965,150343,347870,542838}
Returns: {724455356, 788483016, 94832473, 771050430 }
{1,68851558,694225862,544682202,537678214,503233639,257650119,294311527}
{1,2,1,1}
{562075,241070,640014,139720}
Returns: {46424348, 704591525, 395889368, 306343778 }
{1,567210587,993902610,478590451,206959843,12388406,331642830,495615426}
{1,5,1,1}
{741344,867045,741773,424440}
Returns: {371467057, 213160282, 614349738, 713707159 }
{1,898929558,946862989,556056840,818706897,67941574,577448987,478258422}
{6,3,2,6}
{474540,721230,481931,926678}
Returns: {448791148, 821123882, 755606691, 239141224 }
{1,468816620,260473103,237655409,92827306}
{1,1,1,1}
{655820,70830,901768,859534}
Returns: {273580561, 254478276, 870715808, 244607613 }
{1,673125769,871265252,105267198,523979746}
{1,3,1,1}
{5674,25540,187305,689285}
Returns: {621327132, 891959830, 589428375, 493506037 }
{1,929491742,91570278,434049196,971944393}
{1,1,2,1}
{780278,50647,366977,280121}
Returns: {921584827, 121932519, 122512292, 528851644 }
{1,507920218,922484604,283825825,852668694}
{1,3,2,1}
{19467,226232,300554,410765}
Returns: {115045040, 46714467, 583442290, 958925094 }
{1,229127408,977958958,232156758,13629502,104317187,240093883,165198786,170262294,642643786,88592205,356157214,625119694,913980646,360012772,32485175,55928345,794130155,887858640,480412042,410282922,850112887,23982427,423182224,149234500,141407623,593057442,641829126,106346137,537999817,953120031,702672129,541397189,496242936,177927990,798671399,832064783,476386833,417060661,860729433,534761223,20364748,581599474,145679504,266574843,817092903,684585893,679263867,289175639,561332531,144100631,910597856,822434395,436922304,388070593,2456919,5453964,241324397,347177977,856669943,487216151,221542553,124686482,274495568,344444961,763452864,676184614,768989064,285443249,966296588,490117522,174742779,909439432,736189612,872458149,491578422,15749695,918343326,619446188,457112781,235976270,707619325,260535720,851971860,123800933,508428862,434867908,15206568,854624576,286827808,600399248,728615493,592161627,794216286,576532818,653234132,211722232,885951728,741472194,171148000,760538117,307375663,414036337,278921963,306081312,548647023,188016527,164247577,350704596,599546130,706840011,425323626,952620692,294330449,243253216,511250961,340164674,95170032,640439859,928375039,285243532,288930363,434115053,562781314,554443512,567758514,452010327,524866221,767780397,775687741,44844670,815958440,439750758,722938007,251940931,498019731,753232966,148430906,4288526,891904057,305062609,602689767,896147701,95875024,482977366,102862081,908176662,257654668,784377026,354075830,967299959,549975575,86720568,651232345,145527339,46139063,554844136,102711220,652178134,112298658,901412313,978794529,56528311,539369172,187083999,572942079,879620583,844586804,696063531,48201603,584016981,133120108,426614861,206757716,82081563,602900,59053412,675415148,532837740,131461125,36046528,220673220,37649664,111346007,763541538,578013021,943388023,888877863,850817221,415504445,99950930,420215365,262921719,96421202,308983313,890285769,257262908,868359791,461994058,312312934,84971555,417015450,445701721,177239317,328154910,482489540,105270546,957855091,392066616,196820812,548693350,324347975,203469471,357432411,551259580,865756496,815826314,577676228,23080849,374783159,240651348,109735339,528701770,246907100,468854441,30770887,210618929,819177073,84744800,200394793,302546816,81151458,724557112,654087691,238630327,26167263,937590977,950342493,367729782,948612477,436791946,640218257,355613122,345915364,779276214,159631594,227644814,400112670,518932022,333755243,154338809,220177036,63801521,20278615,812704328,307691292,478637786,337731727,114293778,237223158,939581949,919544453,124358692,576943322,802830309,937349654,419068105,872950547,556798078,205771331,36050902,479558409,549827597,778748874,602961813,914861435,203453665,238565724,366187544,7345404,841652031,773041542,477540071,633692212,314865742,193078745,363533479,621845297,370600220,816588217,447740630,269035505,993320755,52793408,650185492,678676265,916250636,172055510,234114013,336261099,32008634,382896877,206899592,869403494,572960683,252785906,425019061,166455694,6308111,407063529,188695099,611949308,793522194,785304612,711070463,405654320,925856948,470940884,628978538,377210201,283662495,981651663,760464994,872381742,234223096,247540775,299847010,736329297,313019851,923569518,330940017,242389115,850284581,430689707,938976240,350520711,238460614,346248219,35753903,938437693,450127883,864114341,641354172,422860572,544467770,664901894,819887377,703140486,231530049,928023178,321373711,477623499,522831867,574084650,448505742,343117037,282258042,190098939,319875341,735229898,519424935,824652533,664233475,35964926,941250940,704580187,777605298,403609287,761834083,770803679,980276317,503856599,361865436,79319867,853149945,3272657,34955362,739710307,291531294,543846790,319646790,833224438,572442671,48005481,74020045,403218921,54619141,402382507,119698383,39990522,391551254,928266975,70664975,772844033,197487276,812688792,134948433,7199041,298498827,926956072,64806140,703280108,976449931,88895253,46611016,360295704,264298058,682043479,381065166,158967297,525205701,778609319,75533236,896748417,738388337,569390604,456215462,401579216,540887680,526449709,656267941,373607283,975984970,968503258,101151523,773285842,156540411,873699303,305244799,498248654,807551204,488628091,134651393,161242173,548671905,331942076,453948389,791059473,42848396,624765013,100619726,562643881,532065410,574311564,957658529,675797486,216119801,799851851,756912002,570926040,314350966,568788308,283579342,981481926,475600970,751824536,404212787,186931003,827658306,40760713,829241111,883708061,819396934,336824822,545019365,942348056,526567631,242340437,104964566,511245442,79943298,173803269,758731065,402052273,547615191,237981087,843023054,368289435,611734888,926725126,879710031,92272162,510303898,938575659,346244219,496500352,859677952,753466538,322345343,882785070,713002198,691464908,324490048,47901952,591701717,315405072,632123339,386854404,782226125,770507259,462577242,107640805,592878093,307445890,33177487,863782649,134459758,543163597,88452344,181433665,451442902,671033516,762985654,852025902,913060874,198909685,115418946,660672836,198556087,792624573,149698517,687954387,82181257,86474997,530080031,993181706,697052871,219620437,600273722,920853663,902372037,6253854,503099218,316711825,890744599,89612435,115586011,674364203,438480773,66680351,805811609,272838407,31051072,671663307,907428068,958727142,198030353,71714896,892744705,182374824,178549671,683746053,849188356,613003475,955107306,874385533,143668243,60673339,568623268,34395107,550388823,356116401,184164761,969243589,185060638,39311439,894559090,645198396,820288093,195868985,703142358,856337817,461060169,269617061,553091393,116626756,3348695,508567404,654920541,402831599,765063537,525705735,649918243,552268204,207221054,81191307,887836578,914099425,28018221,894174880,537853825,448261131,361069214,277300529,650609576,438787177,384131623,492664657,877820565,342572579,830107790,478447917,142765403,181791363,17981234,322272664,234054481,299319861,439468972,712927801,430784834,959523434,209324534,322052137,659929798,901690563,131870887,769758463,558141792,834489848,623169153,705790334,891535031,528133571,370929513,821535930,268957566,269019429,156054094,277304357,103820804,42426675,945625221,412402099,7218084,131145377,878491567,51064649,997957944,623657991,647384434,909880388,749670088,697340078,190336965,361940972,820151943,949031889,541602502,573269077,44498584,451309777,598492454,778179116,84665420,664400508,378019484,290132523,233160873,324713941,767969919,358336842,291515322,600215606,969181090,213767636,542504306,618623881,164344063,824156323,169622043,854807395,184446276,251434440,955094336,492976777,376716926,556912759,968840100,193605579,558513688,63577638,106263912,626391542,422043434,933815566,402999631,698509044,879607150,228572717,872875581,376502663,530835045,858152489,910659277,416989992,42639622,12177836,843137465,813289253,407449993,493854871,808107397,260088346,24237725,969129507,271697278,822625987,669258346,202374378,278284341,685874711,327795946,627116836,560589690,394623025,620974695,351983916,307520577,541047474,599294704,778264528,598532573,173348808,755985405,462584606,582064407,370520297,955190583,960872180,32437920,512628802,544696218,492434992,808764778,299753257,322463078,729074806,219139903,940005198,901386792,795829338,57176791,586322954,867122752,888215611,193837466,523337488,757504173,860356108,403748003,805817866,31439624,46431003,778992547,548766796,461502543,103003,622450369,790633320,931371900,563926377,989844294,955755404,446095711,872096081,553115660,264215257,277782303,417194163,318087818,977851044,315871872,904172141,291380478,965085919,145739769,489038817,574341115,950103153,198719318,499938401,735612046,581989470,678444103,435634852,201849203,649223848,50239287,815089202,153143912,760648,147020639,937066037,19435444,123731243,447779501,236170020,256712914,615631708,721228600,601487315,355401052,503115816,404025949,674925942,425349305,301792941,337970549,379551964,917798454,677302345,367337659,950350573,446298631,69716175,8872237,633260252,820029703,863287842,836006783,390944527,31137802,139821375,407692956,549639797,930632973,934510222,457019603,507152523,891245458,19251342,760733024,831184567,780724711,145010464,798615295,394599591,342308978,86417875,118754152,699315407,96254325,174374710,938588938,635780390,573639102,259659564,967320005,591394126,383274152,549078544,428419524,246165928,207156309,457073284,241075837,574331313,213238868,859491499,108651787,223369002,289718686,816124973,665503024,265360369,482553875,478835945,925396045,194013068,12759718,862486909,438030521,646963323,424251113,875436519,738691225,177576521,969843036,793844898,335805575,216963412,153809396,650233512,129285179,792074746,181318729,502451292,986704853,578901259,52097156,636561997,830813298,236279716,774209611,519033020,572519435,85799662,678295653,688375060,167912085,494363171,769607323,665999317,236312919,572865421,213927357,543210545,686767307,510161146,739120102,24790853,790455911,265098296,747687647,825296498,510603310,530667636,548316912,182283910,54202243,419991370,373879571,465737975,424747457,46277159,455404594,683834750,978667107,745954082,494824559,544115743,70466874,552782488,929657813,835646893,761701197,109204536,608082768,971127125,508201450,676114183,280829244,315256237,702520790,309369734,297880595,463065761,174989099,774777938,519379457,803373836,113946791,987394530,413454157,809087074,805650448,809717315,184876477,957919758,374485284,427746606,612029074,759996556,624754584,498156154,729114473,467778029,94831368,230387601,284089886,380021979,828701933,217727451,819766796,232688659,261402947,209717676,284759907,744177923,148168238,336323576,50241677,627230442,76919146,838126045,102552446,325007901,743112536,541489683,547698806,766613869,498731328,309405325,665533267,174819853,882270253,133302835,597954837,340003105,49441140,61519582,551861423,227760272,377137702,617235299,590963521,7524115,516414777,188064205,656432784,559759924,708509665,501455990,46565819,558262334,951889318,839535202,456447573,166642253,698571710,803365934,677499084,555891083,325554831,281092865,652151371,791995096,749920553,198103522,913340167,943517891,869614144,986502815,475977330,869706521,793867392,142537811,651283640,535358094,38799364,961481676,239851049,939875071,584058335,639352764,748355832,607126405,97705909,408592854,389695352,439798056,130037894,230463982,342018967,441382577,505940412,477028531,85494377,232663150,522775832,42353364,622195483,30954783,786439276,149211299,161228112,221391632,444518280,208809397,191829788,622371935,507617121,319534108,775762293,897020989,451221398,672406358,359638709,101009358,791932707,70422480,586880113,67650165,301194096,395867134,408111086,943110174,46267711,786649735,607609679,927214950,583726330,240990732,718332894,209351798,997510769,343636543,882207029,912488578,419105229,415238058,339827443,934614131,885198117,947944136,447082458,420279061,294361632,357937054,285343737,923657717,981300482,529388051,961048160,25687674,143255401,380984596,398484977,71262699,298533101,660577146,885899877,324095172,140368747,459792431,668147581,848775257,875895803,214759970,503041173,821354900,786429400,908230952,747607083,219691671,452489528,108278006,814510650,822027676,585237327,342991055,629729881,451303632,253430550,832493353,27255727,734743915,57382327,228522284,55171353,871479006,936458824,748798837,715962530,688396312,991047600,744017613,869646060,536105503,625402275,115278012,883980668,560963126,656053521,614660480,780366365,553320218,690139412,718474862,627058160,457302867,223784518,609292741,657003284,744813430,454755771,434771919,863273883,652261299,358058059,623684485,936705077,643311821,863146277,146161696,285383967,461205663,386672512,426307367,228002060,959104677,422223385,614860802,890679648,176606815,200396256,856095274,313420943,620679762,979249913,933841625,661709675,216133355,757283985,614806972,195626673,291824952,95172858,50371270,714675627,855692921,873341222,562111752,838851896,264337642,987021188,994251502,400613204,219504539,351722752,423070035,330609513,510973313,210757421,804605910,991482712,667348869,786288747,915780203,522244837,704229721,969344931,218426856,130915910,163918535,69089067,223706580,82330175,858015151,916595497,850717143,929353170,542014680,441768080,653274280,115179925,942259436,604566195,409110163,831448103,51156132,827547311,7344296,790537212,744420559,77620001,299418358,948854222,616894208,10251934,457573695,222276169,504512695,540851876,758909701,425629851,853628171,843452590,607001990,917252669,672255829,709917024,774305578,984219173,236450814,212883869,840861341,391371412,706976817,579021330,512395661,248342125,296097855,872844429,334930697,288082786,982306447,833885155,245227861,323294642,799546093,355427700,103164373,492715606,778107639,991833869,459139557,86359293,333329085,597835056,697555964,570381523,954985558,310359247,877035528,761140310,591479715,743924731,189152652,267345019,413501242,582884828,802939736,356015849,249370022,287973254,68837091,259136290,520931128,678879578,723017542,114259086,434578246,379093018,252740415,659492324,411219642,30100706,821134788,92714678,11519665,115590646,717731838,8544858,872333084,601567018,258245279,626994364,85653882,151573868,874464207,518731856,657901621,118375724,230491224,26526293,383286255,336739553,754080832,494800252,762631000,580631778,569956821,682413020,734841080,584559401,125347984,711412400,745152719,9122415,574610289,268273300,731538882,304968979,586190812,84815737,721614662,834875446,581868050,722403582,577123751,801506625,14346872,899456396,215924657,167011891,4098426,178899882,808556582,88867673,856459699,438928029,374264847,794319814,739847313,740047963,154927809,709410125,692874316,252750035,5016618,816862387,836978631,394419348,739148057,447045537,112634507,63460002,857395550,329173278,175437940,780977475,53349680,843845808,638906710,208600706,515247060,614318333,267859367,146895094,285462408,374302197,386382451,626383034,269336734,337981514,822484928,567167193,502434613,845877996,50234148,307219875,466252115,886613212,837071042,144423441,571032049,888351552,847842758,23925251,929272384,631165528,55053784,946787075,600561077,130405690,523528956,871797899,392570888,154372954,642797627,463088089,316694555,470963288,606566048,873095496,214144394,465986669,573522612,136930010,525564625,386242772,107973978,237421080,829552301,933212978,562475332,378704124,31654912,693106181,718837583,773290628,127859485,769286728,430530330,525359602,947395657,480486189,235169518,355613776,578824920,311663660,676310189,884019098,238493207,652521600,923373723,888763437,699675190,806055712,951202698,903396458,483487935,73913691,850200243,503718737,895715638,658703161,73055013,174899515,747677090,408990248,966124884,514727970,283562629,22689432,37843368,909740524,67577545,192005124,420252736,932657895,235108010,794681098,82977894,506335680,736658179,677503118,188405275,278202248,405124136,567886644,206675274,254368558,599852372,572795447,270533070,875881141,620278760,701771905,836184710,535299051,760393401,842708423,613335812,861603166,864097865,49910891,336830572,267387355,849188415,302157049,479712886,860739329,261856855,590880417,432820107,901440449,777915004,911592504,278143424,387347380,767627034,419849232,440146254,921757011,901652397,255909914,796159528,804935748,513080846,82580850,849552558,223078165,760473210,203244423,391826439,920375858,685354295,885355,633264086,510670750,61810343,941168141,718774991,742791774,761214117,46169122,384872480,381746750,885067083,278550111,52532768,249309466,504333829,229153381,697456708,130964475,806683789,820710172,526964492,163651302,199984864,460833028,871576882,156443213,217686943,633648000,628744473,248137464,655373669,710683538,826427643,593894341,663344134,77643612,59964847,236908428,295368730,195801061,382485653,449638272,415730484,937213007,457672303,784015731,939732150,752686000,398555374,194072538,821367894,981704215,112674710,824251363,750245847,960370616,647453883,813049824,200959396,971111435,458874038,973100748,178826377,694687436,658343083,898308950,426620889,187754935,338151699,735600670,213500093,6301816,390328155,262172585,209179438,852167508,278808244,189892403,345282929,792163882,844756270,995866105,56624545,103699933,581583081,225262672,44619640,51082880,327556382,911946088,633344959,453171777,295416414,916614353,116687281,898556910,694438344,844893250,861662007,631230704,684301489,115689930,569037815,748455706,25295661,139679724,665681871,564461812,677762358,277500691,671304172,588951457,293645841,915161792,40118671,87916607,401051443,527362375,97330525,992571046,327012371,68079323,345868441,814857836,828429631,13449930,823997274,611244666,829832717,850638364,975495343,587905044,138093871,16011040,172142293,366876375,459787631,717019448,301707116,199780533,30302063,552691194,917262792,416197977,537794537,35915210,189943718,70372995,869836337,946528053,204212810,866320301,844063207,81993737,563537715,441389486,36792833,173605425,130535105,351768331,925963441,142230794,791847311,363749773,898288813,336923644,643072118,221809882,204200023,808510015,695254002,272838939,623509581,338506811,709774613,640166205,433172270,280946425,773236514,517747516,567883536,356926905,535226703,441170462,461498125,246574457,489581714,915167680,382593608,963846567,64245963,715819386,665743306,91059832,92433975,129919681,293140596,5928625,838813905,133449035,375864270,376499017,418709887,447336982,674567812,71378514,562554001,632917530,406047770,881302281,181735309,362307437,352494541,827473889,410270963,605487395,160281568,901761900,375247752,782079942,57034513,932100516,766094748,204484121,21467289,212651071,510306963,800069597,212937862,438373301,482222759,145631992,600470862,275666126,900861329,321533408,22146750,690238092,608509806,564465560,137438822,495372060,57170047,331508521,943721961,758756031,277894499,463268724,57438542,855656806,845989052,547193987,537842297,335651053,400990399,947672870,178190472,667556932,426700861,892833540,127835322,324249634,457323797,558073726,441198769,858364463,296724879,211784713,180550844,983554024,717261660,265123178,251137021,169026558,917011222,886866990,896216177,943148896,241401159,556744672,832410380,830027436,63882541,291687900,910793965,329140159,166677023,59148964,924224495,188290404,576597505,732656263,420503960,922931467,485882112,923352305,338564881,246161411,983166400,736218717,888891964,758999873,747406664,693746299,376089978,186044230,630182989,901939635,578678273,919438728,632190028,450754734,156557027,753111410,851556152,258587299,557785178,976707057,719524206,669553813,659959531,667550153,949588509,581191009,386174813,233466093,812683161,868982238,217952076,308335323,539400574,822642538,767528081,91289392,270488839,871212060,85331731,12306808,586898801,539645874,122844667,584958827,640062000,696514928,131360761,728657563,233146396,256593753,456189008,136612983,266695740,607530798,971647582,546814209,164752990,480417374,85260000,846610501,816997362,256830169,689381757,97975540,84410031,197394555,53292071,484926813,624825263,631123804,657523691,357820176,703076852,627239925,754075718,350767545,674746780,973160258,381745683,380365287,372725117,291105852,432913066,433440837,177954133,10529290,833224224,692677731,281729290,705323165,289714808,358631453,914173312,125599134,984655334,922215704,850304706,841749168,23702814,521689192,872789920,106916977,151715542,82730215,909752108,241116885,335340314,504458541,948425562,88065649,390894013,744013813,144550276,616389865,694788618,594206065,797923217,315951949,224387371,27659026,923347410,470629465,977369038,990351166,969022274,355173776,980257100,628389524,769466970,654997911,603185513,645142488,645959733,927906178,480654530,231541423,936686746,706788706,67577677,568864017,433135648}
{1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665,666,667,668,669,670,671,672,673,674,675,676,677,678,679,680,681,682,683,684,685,686,687,688,689,690,691,692,693,694,695,696,697,698,699,700,701,702,703,704,705,706,707,708,709,710,711,712,713,714,715,716,717,718,719,720,721,722,723,724,725,726,727,728,729,730,731,732,733,734,735,736,737,738,739,740,741,742,743,744,745,746,747,748,749,750,751,752,753,754,755,756,757,758,759,760,761,762,763,764,765,766,767,768,769,770,771,772,773,774,775,776,777,778,779,780,781,782,783,784,785,786,787,788,789,790,791,792,793,794,795,796,797,798,799,800,801,802,803,804,805,806,807,808,809,810,811,812,813,814,815,816,817,818,819,820,821,822,823,824,825,826,827,828,829,830,831,832,833,834,835,836,837,838,839,840,841,842,843,844,845,846,847,848,849,850,851,852,853,854,855,856,857,858,859,860,861,862,863,864,865,866,867,868,869,870,871,872,873,874,875,876,877,878,879,880,881,882,883,884,885,886,887,888,889,890,891,892,893,894,895,896,897,898,899,900,901,902,903,904,905,906,907,908,909,910,911,912,913,914,915,916,917,918,919,920,921,922,923,924,925,926,927,928,929,930,931,932,933,934,935,936,937,938,939,940,941,942,943,944,945,946,947,948,949,950,951,952,953,954,955,956,957,958,959,960,961,962,963,964,965,966,967,968,969,970,971,972,973,974,975,976,977,978,979,980,981,982,983,984,985,986,987,988,989,990,991,992,993,994,995,996,997,998,999,1000,1001,1002,1003,1004,1005,1006,1007,1008,1009,1010,1011,1012,1013,1014,1015,1016,1017,1018,1019,1020,1021,1022,1023,1024,1025,1026,1027,1028,1029,1030,1031,1032,1033,1034,1035,1036,1037,1038,1039,1040,1041,1042,1043,1044,1045,1046,1047,1048,1049,1050,1051,1052,1053,1054,1055,1056,1057,1058,1059,1060,1061,1062,1063,1064,1065,1066,1067,1068,1069,1070,1071,1072,1073,1074,1075,1076,1077,1078,1079,1080,1081,1082,1083,1084,1085,1086,1087,1088,1089,1090,1091,1092,1093,1094,1095,1096,1097,1098,1099,1100,1101,1102,1103,1104,1105,1106,1107,1108,1109,1110,1111,1112,1113,1114,1115,1116,1117,1118,1119,1120,1121,1122,1123,1124,1125,1126,1127,1128,1129,1130,1131,1132,1133,1134,1135,1136,1137,1138,1139,1140,1141,1142,1143,1144,1145,1146,1147,1148,1149,1150,1151,1152,1153,1154,1155,1156,1157,1158,1159,1160,1161,1162,1163,1164,1165,1166,1167,1168,1169,1170,1171,1172,1173,1174,1175,1176,1177,1178,1179,1180,1181,1182,1183,1184,1185,1186,1187,1188,1189,1190,1191,1192,1193,1194,1195,1196,1197,1198,1199,1200,1201,1202,1203,1204,1205,1206,1207,1208,1209,1210,1211,1212,1213,1214,1215,1216,1217,1218,1219,1220,1221,1222,1223,1224,1225,1226,1227,1228,1229,1230,1231,1232,1233,1234,1235,1236,1237,1238,1239,1240,1241,1242,1243,1244,1245,1246,1247,1248,1249,1250,1251,1252,1253,1254,1255,1256,1257,1258,1259,1260,1261,1262,1263,1264,1265,1266,1267,1268,1269,1270,1271,1272,1273,1274,1275,1276,1277,1278,1279,1280,1281,1282,1283,1284,1285,1286,1287,1288,1289,1290,1291,1292,1293,1294,1295,1296,1297,1298,1299,1300,1301,1302,1303,1304,1305,1306,1307,1308,1309,1310,1311,1312,1313,1314,1315,1316,1317,1318,1319,1320,1321,1322,1323,1324,1325,1326,1327,1328,1329,1330,1331,1332,1333,1334,1335,1336,1337,1338,1339,1340,1341,1342,1343,1344,1345,1346,1347,1348,1349,1350,1351,1352,1353,1354,1355,1356,1357,1358,1359,1360,1361,1362,1363,1364,1365,1366,1367,1368,1369,1370,1371,1372,1373,1374,1375,1376,1377,1378,1379,1380,1381,1382,1383,1384,1385,1386,1387,1388,1389,1390,1391,1392,1393,1394,1395,1396,1397,1398,1399,1400,1401,1402,1403,1404,1405,1406,1407,1408,1409,1410,1411,1412,1413,1414,1415,1416,1417,1418,1419,1420,1421,1422,1423,1424,1425,1426,1427,1428,1429,1430,1431,1432,1433,1434,1435,1436,1437,1438,1439,1440,1441,1442,1443,1444,1445,1446,1447,1448,1449,1450,1451,1452,1453,1454,1455,1456,1457,1458,1459,1460,1461,1462,1463,1464,1465,1466,1467,1468,1469,1470,1471,1472,1473,1474,1475,1476,1477,1478,1479,1480,1481,1482,1483,1484,1485,1486,1487,1488,1489,1490,1491,1492,1493,1494,1495,1496,1497,1498,1499,1500,1501,1502,1503,1504,1505,1506,1507,1508,1509,1510,1511,1512,1513,1514,1515,1516,1517,1518,1519,1520,1521,1522,1523,1524,1525,1526,1527,1528,1529,1530,1531,1532,1533,1534,1535,1536,1537,1538,1539,1540,1541,1542,1543,1544,1545,1546,1547,1548,1549,1550,1551,1552,1553,1554,1555,1556,1557,1558,1559,1560,1561,1562,1563,1564,1565,1566,1567,1568,1569,1570,1571,1572,1573,1574,1575,1576,1577,1578,1579,1580,1581,1582,1583,1584,1585,1586,1587,1588,1589,1590,1591,1592,1593,1594,1595,1596,1597,1598,1599,1600,1601,1602,1603,1604,1605,1606,1607,1608,1609,1610,1611,1612,1613,1614,1615,1616,1617,1618,1619,1620,1621,1622,1623,1624,1625,1626,1627,1628,1629,1630,1631,1632,1633,1634,1635,1636,1637,1638,1639,1640,1641,1642,1643,1644,1645,1646,1647,1648,1649,1650,1651,1652,1653,1654,1655,1656,1657,1658,1659,1660,1661,1662,1663,1664,1665,1666,1667,1668,1669,1670,1671,1672,1673,1674,1675,1676,1677,1678,1679,1680,1681,1682,1683,1684,1685,1686,1687,1688,1689,1690,1691,1692,1693,1694,1695,1696,1697,1698,1699,1700,1701,1702,1703,1704,1705,1706,1707,1708,1709,1710,1711,1712,1713,1714,1715,1716,1717,1718,1719,1720,1721,1722,1723,1724,1725,1726,1727,1728,1729,1730,1731,1732,1733,1734,1735,1736,1737,1738,1739,1740,1741,1742,1743,1744,1745,1746,1747,1748,1749,1750,1751,1752,1753,1754,1755,1756,1757,1758,1759,1760,1761,1762,1763,1764,1765,1766,1767,1768,1769,1770,1771,1772,1773,1774,1775,1776,1777,1778,1779,1780,1781,1782,1783,1784,1785,1786,1787,1788,1789,1790,1791,1792,1793,1794,1795,1796,1797,1798,1799,1800,1801,1802,1803,1804,1805,1806,1807,1808,1809,1810,1811,1812,1813,1814,1815,1816,1817,1818,1819,1820,1821,1822,1823,1824,1825,1826,1827,1828,1829,1830,1831,1832,1833,1834,1835,1836,1837,1838,1839,1840,1841,1842,1843,1844,1845,1846,1847,1848,1849,1850,1851,1852,1853,1854,1855,1856,1857,1858,1859,1860,1861,1862,1863,1864,1865,1866,1867,1868,1869,1870,1871,1872,1873,1874,1875,1876,1877,1878,1879,1880,1881,1882,1883,1884,1885,1886,1887,1888,1889,1890,1891,1892,1893,1894,1895,1896,1897,1898,1899,1900,1901,1902,1903,1904,1905,1906,1907,1908,1909,1910,1911,1912,1913,1914,1915,1916,1917,1918,1919,1920,1921,1922,1923,1924,1925,1926,1927,1928,1929,1930,1931,1932,1933,1934,1935,1936,1937,1938,1939,1940,1941,1942,1943,1944,1945,1946,1947,1948,1949,1950,1951,1952,1953,1954,1955,1956,1957,1958,1959,1960,1961,1962,1963,1964,1965,1966,1967,1968,1969,1970,1971,1972,1973,1974,1975,1976,1977,1978,1979,1980,1981,1982,1983,1984,1985,1986,1987,1988,1989,1990,1991,1992,1993,1994,1995,1996,1997,1998,1999}
{1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000,1000000}
Returns: {542342097, 737174767, 155750408, 272593267, 603893, 905088498, 559622982, 962049026, 891805440, 712515062, 434617499, 184454784, 475446031, 450402941, 807852647, 75945873, 59117455, 43269934, 319498269, 789250488, 438145948, 389347864, 972214995, 112056646, 739521450, 458635820, 776226375, 444876785, 406519200, 274707390, 755906944, 501036750, 409351031, 529791060, 20846398, 128678077, 234305204, 536710782, 160158427, 20892929, 49857395, 698630952, 318973438, 352772162, 591136513, 893092701, 956760024, 709480844, 650334811, 330993352, 247733106, 893275411, 989414683, 917648851, 697200231, 174102192, 81532399, 896889050, 670327463, 68058501, 928791267, 684923860, 414586362, 957121412, 266206160, 847593788, 565689597, 776623755, 474070334, 204935754, 186343262, 606501463, 785562444, 646071227, 919438450, 942843479, 136873288, 512215062, 444532415, 3464268, 863207257, 388142142, 863447539, 882455513, 524893924, 776421169, 563704573, 346912324, 111250784, 534179186, 885873990, 336882440, 849531793, 278800310, 154573323, 670175931, 885783232, 934917388, 885445671, 291866074, 242571767, 629549327, 870523851, 635250634, 220925807, 931388221, 26450170, 475854731, 277171328, 622279670, 647328987, 694800383, 646445454, 609980272, 730660152, 36262680, 664532608, 19087267, 510161580, 614647889, 93753093, 977661758, 791925715, 674879549, 237908087, 839220534, 860473550, 99552999, 669004690, 281620599, 628027287, 177509335, 291837493, 650852911, 208671738, 809039893, 839368552, 166364084, 902350113, 443130603, 423638617, 319937572, 291646243, 831357782, 239376903, 50131672, 353351029, 215727821, 251280875, 277312666, 600424187, 400819931, 443147068, 335153723, 554470426, 35268627, 181571317, 899164599, 288180920, 426678093, 900734275, 324146842, 131967444, 640716886, 684232274, 5848223, 735707348, 710796560, 695538739, 326535896, 201022282, 425134865, 446148121, 59288122, 889619079, 168042107, 41009031, 859291364, 331733965, 210841779, 812779722, 57221769, 967640682, 295774011, 740903119, 249316516, 477426644, 986461528, 580849802, 384921821, 610502060, 659367676, 296408380, 833450063, 643780540, 312960380, 171563876, 99803791, 213578302, 261667513, 668152234, 874361279, 81939647, 912238175, 883458023, 411190089, 315651402, 316542133, 912187044, 832159622, 47554621, 826378146, 797468782, 128706780, 716364309, 78237698, 912792081, 230793735, 910475604, 250856869, 675382543, 194913550, 354858004, 368457813, 924871648, 860945885, 843583925, 17553864, 955858559, 968684074, 393281882, 917757972, 96905535, 798848071, 904040300, 770887777, 333523196, 787857349, 700684597, 445480251, 768647200, 229177405, 334272250, 404313378, 709834142, 867420002, 499620045, 644965160, 589796727, 470282239, 778855125, 282119395, 479341276, 36168827, 833447654, 703349740, 654951271, 686268945, 763122380, 288694514, 866093557, 400342552, 608412442, 895876436, 296003018, 310418245, 654819311, 991596939, 182185560, 458194991, 714405920, 522833058, 363520484, 815655371, 944085530, 965897703, 36185784, 103838393, 862338766, 804334767, 75332826, 191159716, 670734058, 362388494, 132708586, 279891216, 659449032, 728811986, 937827249, 903717371, 284478391, 544921906, 719865116, 898081700, 267688143, 507348445, 917373303, 579233876, 785212901, 246457941, 187037409, 555894692, 250932868, 340741714, 465246860, 396106344, 98256028, 538272030, 199252578, 763104961, 112881014, 758147093, 313115323, 857785119, 944071500, 205582782, 26741159, 591421093, 677721034, 251322805, 508312466, 191569300, 41477282, 985336429, 639120576, 911579273, 511890760, 890791054, 765917052, 799129219, 987474484, 237723743, 729182793, 484415742, 745741827, 970333943, 591342910, 170939011, 270588428, 44345362, 874640434, 204047568, 948282440, 963156588, 460318957, 499406371, 612614404, 225083686, 177300771, 552488252, 256586550, 438958701, 237071476, 764615307, 49285447, 271238444, 668401084, 853370071, 312299979, 304992179, 486922859, 16179797, 320400289, 962236531, 746669597, 781675589, 225740989, 841742281, 507053147, 989607169, 820198628, 497701803, 809856777, 723879579, 635682022, 614575275, 318790766, 140720362, 306925509, 108424807, 846635411, 512961981, 307549031, 774235309, 444325904, 379421476, 368427481, 914093182, 199539805, 17783827, 651774247, 364898773, 206834207, 290963175, 799323386, 123199616, 270943600, 222555546, 207625472, 341584567, 926992435, 505406690, 597843719, 186553335, 388870108, 770946166, 561734386, 924684481, 505441815, 398120486, 353137996, 632903174, 769514131, 927548626, 229476648, 965419278, 19716831, 441564446, 461090509, 667158733, 635213920, 647969396, 91407150, 935234383, 801868940, 653085682, 474689790, 634735041, 346889057, 967032006, 187802245, 860079916, 963118143, 374569630, 618238733, 766031123, 687185805, 47387825, 843579472, 402001606, 318293401, 637797053, 492647723, 252200291, 518667828, 998988759, 423411924, 911733756, 281398526, 846160559, 446973861, 591768018, 652308415, 137838013, 136439561, 410169904, 752825456, 385374273, 421761456, 872786517, 58331460, 920679375, 446536498, 136190016, 784538531, 263836874, 186580151, 502638396, 221026901, 170556728, 886635663, 150280551, 765606437, 844061866, 867186360, 798655622, 838472878, 437855612, 27040051, 930943408, 322764835, 621991523, 883019606, 841126335, 209029410, 131019032, 803513278, 938046292, 294801193, 9972954, 488046532, 699348096, 935018667, 419894805, 503297555, 231462594, 749762206, 871225096, 892271555, 660769080, 763756775, 70217455, 31236260, 58060662, 880704451, 789506183, 214780348, 722484212, 82850679, 794553112, 746106999, 916042430, 748327190, 5345359, 249500686, 303912888, 521829026, 974288576, 663466372, 476958199, 129938091, 586194994, 319826990, 547953777, 115007982, 711823910, 644719211, 588167645, 353446913, 19642792, 831955942, 618850478, 583906791, 528192407, 410750314, 430737801, 425911422, 925336309, 122787770, 242310601, 62261824, 329733717, 456160385, 204664731, 742260768, 363036550, 681824961, 733023006, 590725581, 485124276, 918914646, 968877764, 466338878, 887551903, 292215952, 456368618, 19552518, 27117724, 900957585, 459339432, 239921525, 660075457, 57608332, 112252327, 142552022, 915178405, 315161650, 6203601, 985502946, 26844689, 455088301, 283769041, 109103256, 16480896, 81395081, 530168041, 409752481, 514660645, 882981639, 256568109, 335480090, 977022361, 212215813, 229939107, 995886407, 258077362, 854015488, 790117041, 293475860, 459910687, 454369523, 249733009, 983741709, 747322462, 894365667, 25819633, 851643663, 422765240, 184068745, 264120923, 862813972, 774966707, 218931873, 737442650, 189413446, 260885000, 756169692, 723564104, 29574335, 945223556, 213545716, 445148593, 252822905, 742627579, 69724664, 195586191, 15383333, 612042475, 5128008, 827470044, 203761331, 264504391, 903016600, 184893386, 369680476, 898548864, 719247060, 748126492, 283962746, 771294630, 478768516, 729230796, 136983442, 178804794, 42143721, 756977113, 740173381, 893415983, 861559818, 524013519, 648199238, 896347358, 445620884, 645329435, 554077792, 988327981, 252158310, 407516462, 633734877, 454974346, 841779178, 564615146, 905425877, 135143005, 28457602, 627244132, 136938549, 28527611, 963602757, 893593728, 267354372, 378873196, 732351801, 808897606, 611348144, 627509443, 418475833, 814509239, 996592255, 121461546, 524007498, 643927063, 42141530, 322616803, 512527403, 519767836, 39275533, 242500164, 469367516, 499146143, 743000629, 21842209, 821871660, 256871283, 198914486, 848319752, 195605592, 510196129, 314385088, 989091451, 781547328, 83671678, 13364835, 292921072, 839026885, 191766759, 290684259, 885116227, 770448150, 634751842, 141228405, 711205122, 282763226, 449565970, 655396954, 422193346, 219266960, 507099063, 688999122, 461355702, 998291322, 176960455, 519001674, 461644461, 960617320, 581579947, 439200916, 214292310, 899047618, 791590448, 336477877, 512117251, 788832844, 533728945, 366507338, 306170541, 436776011, 438432573, 38683664, 241424413, 673485565, 841777100, 5126822, 775937283, 401400684, 287874445, 979268782, 577048621, 849961929, 327193640, 278555458, 735142768, 290060771, 17708412, 40711333, 861209796, 210154901, 184810211, 995264183, 124415019, 452609099, 620883275, 827943427, 482127382, 140414903, 890428081, 692683535, 107522146, 70664122, 309979920, 961909473, 463569991, 318766438, 221737523, 884228229, 604792883, 315449931, 240017620, 649006536, 930408949, 933979494, 448318124, 500923887, 921713069, 790486699, 564954077, 371900180, 90627116, 368558738, 722455311, 257535112, 177675742, 990378903, 638469286, 997986952, 385973388, 635114483, 382356465, 825849408, 442177071, 655150171, 916085509, 347428885, 989616744, 715844647, 664601641, 578551409, 307478083, 98168145, 362006770, 816161077, 147531813, 238236901, 169233202, 85404416, 548766694, 243966323, 483999038, 305302790, 998464664, 88696990, 647553215, 781823162, 537811127, 186122242, 626231588, 423089315, 538135444, 356410474, 780503188, 678731378, 124857046, 692048709, 73942859, 658386328, 945255936, 704762275, 841865119, 44828323, 887477935, 265496737, 750802157, 511626851, 152193346, 179205155, 804463780, 765250687, 953813635, 209781232, 797373895, 526492416, 193813918, 577201656, 955249596, 948881140, 852869726, 817141305, 264985388, 378621589, 785220131, 666654347, 286492615, 633214956, 213260567, 931812113, 992094054, 152765210, 561592189, 233148602, 755950315, 669974089, 127191491, 721537535, 512075285, 820495242, 431044825, 138593893, 896252969, 81375557, 761761501, 437548632, 907485697, 189089701, 902962973, 164107761, 202668721, 648203149, 268783458, 696600803, 826168087, 503396628, 885791099, 569446655, 457930420, 293891012, 799738817, 703293309, 96893124, 293565168, 218782147, 48390463, 472332665, 169084467, 72231483, 854805987, 358030421, 47447545, 698316821, 376545047, 232168623, 43524610, 773755418, 797576114, 563863153, 499662393, 558712789, 570139349, 781714672, 11351963, 151747801, 341094116, 605585325, 555267840, 435066059, 434965982, 613859839, 64476046, 745652030, 211925875, 359149419, 847026149, 124461634, 895323343, 321490854, 793930396, 869138911, 338547970, 451575038, 113699306, 398798001, 100560402, 597396023, 40227171, 497804264, 123351318, 727254661, 54718769, 989877179, 529020402, 488401223, 977291349, 5834492, 91582783, 38056111, 119991056, 374158553, 785058593, 133874339, 99474729, 563400974, 554692465, 776653220, 989612844, 263353313, 107899184, 429673923, 314030560, 789394994, 61810410, 837060962, 255861930, 307947931, 186492091, 707389777, 359051125, 692644548, 639545568, 597298265, 149323556, 536244517, 447656869, 202954573, 989118188, 402442515, 204105119, 861631607, 977377839, 377988900, 825336875, 341795178, 924259602, 583840113, 737798183, 812649850, 521732291, 605474164, 657423255, 485799198, 699171612, 806635428, 278948051, 207462913, 303834852, 193969469, 371291103, 359404821, 496981624, 681106426, 50757401, 330515669, 600321333, 599068769, 186311538, 581359388, 170794379, 110301483, 108626765, 569501946, 630969541, 753926078, 902337439, 534410704, 987853519, 394002530, 287674081, 995526265, 756487342, 859489916, 196172824, 515344894, 528128968, 758603674, 487965469, 775764471, 642874017, 983659744, 505936562, 456795802, 549124278, 833748364, 65799465, 407410094, 965239453, 282622740, 853508933, 882455627, 363419851, 830129877, 151757043, 681841088, 957429787, 123803667, 990775205, 364799257, 279029826, 910047413, 642933277, 602759266, 979771308, 500559094, 335360571, 675377110, 840220815, 701301238, 648053295, 198342440, 191101451, 254868446, 986693062, 314933537, 669392229, 897900083, 241467555, 545985177, 626643254, 949005129, 559628917, 693944460, 877599423, 356357326, 332986317, 687922493, 842323483, 274459587, 979108884, 461395814, 864752808, 66075585, 190515062, 524411636, 524973867, 800850324, 126709869, 940912727, 791369464, 138991334, 527668840, 580309185, 336309488, 290706775, 130943017, 891938125, 77633137, 16145703, 515789839, 120797641, 115522897, 265596189, 349311032, 377954273, 784883720, 771736248, 2143281, 416768879, 827555118, 718789608, 140951339, 440591582, 277500327, 178187955, 587042583, 144652805, 705404881, 692680173, 255040643, 925687286, 38212311, 22654389, 860486290, 540692563, 403924549, 913378687, 213306485, 920263707, 323105405, 114664389, 915201865, 530173057, 715224968, 366493739, 394613420, 491487500, 561513526, 65993168, 413794169, 465848523, 749163681, 432699231, 646896212, 940152092, 566628321, 124155965, 597823180, 152335159, 125585740, 506858810, 912134588, 892979201, 283818566, 311275406, 434906888, 870953268, 335151121, 47586108, 501705771, 724356273, 108809426, 31030853, 281966926, 558740574, 457531811, 844897848, 143725953, 970150725, 727600723, 871953943, 414460779, 91270405, 981374370, 913685719, 833334788, 217677218, 466650079, 639983128, 479989499, 59114395, 631353614, 908872263, 655987697, 597178664, 735875858, 185568468, 196197752, 258623660, 805259741, 866788105, 776707014, 92876762, 985560241, 471792512, 886501445, 494248199, 131113091, 495860130, 486963830, 620657460, 383623455, 122346057, 838184251, 729445072, 520932639, 414788838, 935270108, 191001765, 989271700, 402695110, 795164795, 785140975, 522207656, 236841271, 146487321, 589680216, 231548591, 584185093, 334884756, 967209578, 392284932, 35635214, 116526681, 286786369, 322156035, 619558921, 665155828, 520891250, 957175315, 298464852, 563346752, 395980605, 617362264, 273056006, 132080122, 177985153, 777007460, 358240320, 725258320, 35825933, 146064556, 60083130, 539655252, 118670079, 68492798, 430136369, 893366169, 640977017, 891588599, 430460665, 809355728, 572776374, 432961884, 331158140, 265438176, 948799014, 968492514, 828353160, 687205509, 483239909, 642535887, 100706451, 647445357, 241715683, 531669628, 632239173, 357392889, 178233919, 660797003, 444582693, 218948520, 634724051, 513362714, 259861752, 856821985, 138729288, 30210096, 830373743, 33427543, 626349091, 864325379, 910583503, 733330713, 962922984, 858288295, 519599536, 742482473, 410898009, 747059778, 601525467, 489430220, 726936773, 94083636, 56552266, 91820454, 451894030, 157037527, 932919558, 708305314, 88956264, 41792397, 565592633, 442987798, 185828671, 974037614, 597220894, 811434128, 444054578, 162510261, 950142719, 391851493, 772771169, 858245780, 717735659, 289292897, 394025211, 804956648, 873672360, 2089949, 895520392, 521879496, 795580694, 749045246, 855490890, 339917528, 678034039, 509772667, 659586487, 103821306, 994895693, 158426770, 44119297, 391323002, 115904740, 371286056, 556466016, 130933176, 798632024, 349919915, 831337160, 113176253, 593644007, 519511438, 494408646, 561767775, 912166579, 951781788, 929786455, 13728303, 322582901, 983325099, 659294818, 849447141, 360148531, 934926869, 550778872, 495876712, 463669235, 469468007, 360017028, 350383338, 51504808, 3667336, 446501254, 496121354, 784493103, 872285092, 57053663, 349186174, 337022462, 218755023, 758432637, 629862395, 78076776, 340228026, 6018781, 869018354, 508886400, 922732158, 865832586, 408376393, 104076178, 284497831, 590977078, 645042642, 975523961, 547058745, 876447485, 639755158, 298390012, 900600923, 5852309, 602151143, 637126144, 464211931, 574230888, 953774033, 771391559, 199261515, 71408185, 31135003, 519484784, 648946404, 856533659, 874280395, 779584303, 812824572, 259207157, 861689918, 906076755, 221663131, 305273475, 611900626, 559394873, 212331774, 14534341, 861350507, 126703985, 380586195, 233001524, 194685074, 701815590, 901491096, 836955472, 896720095, 32695617, 738159091, 677952037, 44007285, 374022967, 267363068, 622130014, 80057642, 449506731, 345877664, 41652034, 349397561, 994410832, 796431075, 850920356, 673424803, 34628460, 613988371, 326376413, 169116009, 94560359, 191141324, 906256350, 133821397, 962426676, 83079964, 384921870, 763385498, 610412273, 734384863, 537637653, 81521858, 297846737, 371487644, 130837289, 361353005, 28045514, 829776332, 82602408, 663205015, 234856196, 422944750, 998762939, 840370863, 610352632, 218657341, 579179426, 402452252, 776581626, 715337566, 997672995, 567015019, 734087922, 405846208, 436740973, 176710915, 50951326, 917183541, 865684023, 347525540, 601760359, 487943581, 749528018, 565527075, 537099830, 784476550, 921832886, 534295749, 769405686, 89754812, 839937796, 676076868, 790182129, 946367894, 545287770, 344285794, 628889135, 194373687, 179529197, 313611230, 31843626, 98560509, 363343483, 720277562, 481470962, 387407078, 529975903, 240126662, 369315143, 92392063, 900409917, 487153394, 84611148, 216559356, 780705680, 538707776, 271781552, 408293618, 313622723, 549417793, 713671, 385036809, 347801515, 245968953, 162950012, 373446765, 165352269, 135695249, 994714370, 867870403, 997832035, 805821624, 383732084, 71950781, 613493423, 504871427, 378321604, 327940335, 720420975, 132929254, 431444165, 648965139, 902398423, 466464855, 514006022, 93120701, 129117164, 469336105, 397132130, 436434032, 587734612, 633648488, 951866234, 910839261, 873155832, 26860103, 556074156, 707839988, 424509003, 37435584, 965673068, 47313284, 359459242, 531976352, 261264342, 41078205, 345556044, 234788505, 782623391, 636272363, 136251541, 23231428, 596548650, 910843712, 181915169, 469967543, 152750897, 496729524, 727820798, 756921864, 219946701, 974329160, 833121385, 101304364, 22412884, 197664379, 119585911, 735812090, 137248417, 269803103, 958909956, 376985734, 731657720, 417461925, 180757913, 508970798, 330058608, 293589290, 367624340, 608225141, 392186041, 1080284, 646824471, 158518057, 405545556, 458630303, 464633517, 181876505, 911415585, 50973534, 928952329, 292517981, 514958181, 388653788, 952471690, 766142749, 968216, 645373177, 646942577, 141176365, 131313618, 71380333, 776158559, 494107698, 566690888, 999668710, 837662647, 122997580, 759531276, 355468486, 148960911, 140578883, 251067708, 499724405, 507387403, 962785286, 905908219, 501771623, 540282258, 94374773, 495466341, 393111454, 398537467, 694275190, 787154243, 569795472, 937479016, 724385266, 261631809, 385756358, 952057635, 61874857, 543789962, 666946924, 864095675, 265625126, 98184446, 553286544, 746704714, 530385926, 216559384, 820804875, 724589295, 199708480, 729150478, 858087643, 319832371, 418452228, 921600638, 584326788, 141289951, 425234577, 659868435, 338775209, 697242322, 444458903, 777007212, 940121289, 234776118, 899538501, 552432235, 491616647, 115975226, 975113145, 826632783, 244690302, 129419291, 335456513, 906985096, 322179804, 740300840, 375110781, 528905150, 754146375, 945221476, 842583948, 558815927, 799359711, 336489475, 421774446, 924340040, 803549405, 172886380, 945686950, 25505199, 685088895, 930018900, 806269835, 221851764, 215729848, 140488563, 956680386, 689487201, 693339710, 225571492, 365478428, 896546942, 408027212, 29187063, 891698964, 710805610, 769559826, 4539675, 624356382, 564586891, 839984444, 27492554, 531388005, 103576045, 359033234, 892246305, 331069124, 785697098, 129755458, 115174249, 742006161, 986572463, 490712722, 276796209, 655935706, 708499772, 650486114, 143289485, 110824576, 818277601, 912582262, 398676887, 625216021, 192471933, 414768172, 765936439, 620729163, 840253072, 224590580, 71557053, 313624939, 180617174, 490193192, 962775939, 653709758, 946788049, 462698785, 170318817, 107806058, 746714264, 326207547, 975703712, 619253477, 641538413, 633728863, 365869887, 505609981, 546351045, 995417633, 334863997, 666836562, 94903793, 86820205, 276759129, 584297215, 209179380, 124846430, 943195947, 856994468, 24637672, 963559938, 460406084, 86976499, 622513395, 819880117, 348840633, 887872545, 896513078, 525432733, 117376321, 715255562, 986054760, 878730452, 501321839, 378369606, 648214168, 526936489, 670367650, 122298529, 231810595, 715976102, 71077153, 503835305, 991044183, 218091367, 576357794, 416739364, 416181739, 900480442, 426915070, 769399198, 214680359, 905387977, 309055875, 696865514, 289863553, 21549019, 533139869, 870710222, 718582954, 575121953, 326067488, 456223767, 830473062, 907008096, 635047757, 856292995, 358146242, 435445236, 264911231, 122531344, 910987213, 126445532, 775921741, 303700894, 213854625, 301019556, 370458621, 95154337, 92694272, 865742695, 861985480, 480906748, 605614180, 412626287, 766939233, 777492887, 352855682, 70516487, 409806773, 738408684, 670354478, 826271089, 382378976, 907165671, 528174665, 472408279, 705621788, 503899235, 431196214, 678213905, 998847361, 763449563, 697565464, 41510108, 215809710, 109299718, 923109961, 925016756, 123075115, 383174453, 72158158, 903132356, 400634273, 578618728, 401801838, 761516803, 475714405, 218838419, 986195965, 747803995, 810112916, 427083528, 307332470, 839590583, 857285384, 907451767, 413976177, 123278215, 472088102, 99033900, 772287280, 321459414, 434333684, 244325952, 711337312, 202617702, 305708286, 619171379, 152695160, 810280782, 945235960, 189338441, 627143444, 863118023, 865242097, 528179724, 574694651, 501002255, 579099452, 714959400, 113088981, 164787480, 655335439, 249471770, 113564049, 738245898, 14576694, 290242854, 826288978, 7501721, 655358849, 914566474, 851899727, 186133749, 374518571, 823868943, 574479819, 474546763, 867057120, 952008457, 881686449, 285546160, 496132338, 458565894, 37824916, 469173826, 514152847, 842852145, 132194102, 43892686, 583509834, 803144355, 906064979, 796159880, 570890496, 544927750, 535855299, 592001673, 930155408, 963206848, 685278203, 213878975, 6160751, 775055075, 603470357, 655960103, 39726345, 444381144, 500609349, 247925427, 309054352, 408807488, 619901648, 296880070, 311628451, 995287054, 811125504, 934180293, 212097922, 6303522, 552086439, 514007629, 394498532, 799350661, 283694558, 88527144, 258363043, 663655739, 793533515, 743511488, 221628747, 228755792, 651634156, 140327482, 648292041, 551816306, 246865867, 931231058, 676760747, 481981361, 26739537, 432135648 }
{1, 42, 1261, 11536, 112809, 851312, 5246555, 26979278, 118030284, 445892035, 471443678, 280562024, 58117541, 518731712, 860228676, 672427021, 509721155, 661925975, 697119024, 775307825, 791604001, 257871229, 791604752, 775308046, 697118280, 661925727, 509721176, 672426953, 860229586, 518731807, 58117441, 280561617, 471443601, 445891981, 118030571, 26979233, 5245883, 850744, 112697, 12325, 874, 721, 724, 464, 758, 140, 833, 567, 17, 514, 166, 848, 718, 433, 999999395, 126, 465, 597, 999999693, 464, 507, 817, 273, 825, 894, 762, 585, 385, 572, 888, 930, 610, 728, 384, 771, 836, 379, 61, 271, 466, 841, 946, 907, 972, 999999733, 138, 890, 515, 650, 128, 593, 519, 112, 471, 74, 572, 999999028, 140, 861, 999999519, 520, 687, 282, 247, 389, 117, 201, 999999975, 58, 385, 859, 805, 506, 150, 30, 702, 999999456, 702, 999999339, 495, 651, 679, 413, 86, 111, 641, 961, 182, 168, 289, 230, 663, 613, 999999846, 464, 139, 219, 341, 508, 674, 177, 816, 180, 911, 999999522, 837, 999999801, 377, 341, 774, 781, 643, 422, 905, 926, 980, 544, 999999554, 708, 479, 591, 810, 999999378, 669, 836, 686, 195, 822, 362, 137, 804, 4, 202, 138, 202, 32, 632, 495, 999999212, 482, 588, 849, 674, 150, 225, 542, 437, 401, 65, 653, 709, 832, 295, 149, 769, 650, 92, 415, 115, 999999326, 275, 663, 817, 413, 749, 287, 509, 264, 117, 300, 238, 355, 999999851, 576, 645, 592, 783, 999999761, 96, 398, 716, 600, 507, 64, 409, 444, 586, 902, 133, 723, 999999527, 946, 869, 769, 659, 373, 999999495, 584, 838, 856, 563, 813, 125, 715, 454, 753, 373, 929, 893, 985, 745, 169, 688, 271, 262, 999999160, 999999027, 143, 328, 570, 95, 66, 931, 539, 600, 382, 59, 508, 109, 428, 999999467, 999999104, 674, 905, 130, 898, 809, 262, 690, 970, 999999034, 999999591, 768, 765, 485, 792, 999999489, 470, 903, 844, 628, 180, 999999044, 749, 186, 228, 999999163, 815, 664, 595, 539, 371, 47, 653, 771, 904, 613, 857, 999999074, 134, 44, 442, 589, 274, 235, 615, 300, 141, 900, 603, 693, 533, 37, 647, 408, 762, 887, 999999148, 361, 762, 666, 489, 882, 350, 15, 434, 93, 451, 12, 694, 387, 481, 732, 385, 160, 215, 300, 536, 404, 213, 719, 536, 11, 809, 999999356, 728, 999999825, 411, 999999717, 738, 528, 73, 946, 662, 370, 916, 109, 495, 960, 568, 921, 131, 881, 104, 433, 527, 19, 976, 34, 961, 989, 217, 135, 941, 603, 888, 22, 104, 653, 919, 999999742, 248, 800, 139, 230, 42, 852, 5, 448, 698, 844, 999999806, 547, 503, 209, 650, 747, 445, 816, 211, 358, 937, 327, 511, 157, 872, 668, 371, 15, 536, 342, 127, 302, 621, 999999686, 576, 400, 566, 327, 169, 0, 757, 834, 605, 999999061, 531, 851, 999999624, 819, 330, 886, 890, 806, 432, 75, 999999630, 712, 235, 999999825, 240, 999999826, 935, 999999391, 721, 808, 778, 84, 545, 416, 161, 999999132, 808, 117, 304, 633, 957, 327, 550, 999999410, 183, 999999760, 758, 877, 900, 300, 495, 39, 638, 808, 317, 577, 97, 384, 830, 763, 311, 272, 717, 464, 357, 156, 531, 728, 11, 768, 49, 561, 47, 49, 280, 161, 850, 713, 921, 125, 282, 911, 789, 877, 807, 141, 558, 134, 390, 409, 363, 383, 584, 564, 824, 685, 999999763, 118, 836, 503, 177, 536, 858, 626, 517, 784, 825, 870, 265, 512, 164, 47, 619, 792, 130, 629, 242, 999999288, 246, 212, 253, 886, 64, 533, 381, 174, 867, 891, 750, 877, 781, 663, 626, 389, 210, 380, 926, 124, 369, 900, 691, 861, 678, 210, 951, 245, 486, 999999290, 689, 703, 54, 627, 136, 833, 612, 44, 925, 509, 996, 538, 804, 929, 525, 56, 527, 447, 969, 296, 683, 277, 785, 347, 545, 54, 39, 30, 398, 192, 370, 183, 999999500, 868, 269, 508, 638, 649, 768, 204, 519, 57, 445, 539, 253, 154, 308, 682, 430, 999999096, 616, 999999546, 810, 68, 24, 999999619, 321, 773, 207, 307, 696, 936, 748, 682, 673, 142, 795, 133, 743, 351, 674, 149, 158, 923, 133, 999999658, 25, 999999726, 986, 390, 273, 363, 246, 580, 485, 704, 190, 118, 205, 618, 991, 994, 270, 397, 670, 22, 313, 534, 456, 168, 52, 569, 628, 400, 143, 130, 60, 112, 432, 421, 336, 643, 608, 310, 339, 507, 731, 10, 468, 945, 999999083, 731, 582, 658, 319, 880, 336, 92, 173, 739, 157, 357, 780, 321, 541, 555, 999999307, 318, 999999396, 821, 939, 534, 445, 57, 601, 565, 527, 948, 725, 192, 496, 734, 894, 714, 92, 179, 267, 304, 24, 467, 380, 997, 953, 362, 295, 774, 405, 137, 900, 207, 552, 83, 999999919, 269, 321, 97, 38, 866, 523, 990, 489, 844, 692, 660, 380, 246, 945, 661, 999999388, 973, 704, 267, 375, 236, 748, 233, 277, 409, 901, 47, 967, 438, 37, 999999117, 577, 352, 357, 377, 390, 999999212, 190, 337, 433, 405, 696, 51, 797, 623, 718, 999999486, 725, 39, 655, 68, 820, 232, 999999176, 329, 630, 999999615, 556, 271, 973, 265, 298, 618, 486, 361, 791, 363, 999999566, 91, 8, 78, 348, 699, 922, 851, 641, 61, 138, 558, 859, 575, 845, 295, 693, 146, 999999599, 466, 803, 741, 282, 711, 143, 562, 485, 28, 509, 328, 481, 670, 592, 335, 73, 684, 411, 935, 12, 620, 328, 89, 245, 724, 140, 500, 555, 450, 353, 521, 999999774, 4, 627, 87, 839, 122, 780, 585, 368, 190, 999999815, 595, 999999805, 531, 929, 497, 402, 243, 644, 703, 149, 71, 355, 690, 999, 283, 841, 350, 216, 959, 999999463, 749, 746, 760, 854, 215, 140, 637, 876, 999999803, 98, 402, 998, 892, 999999964, 792, 622, 927, 553, 459, 457, 213, 669, 531, 904, 392, 745, 956, 81, 45, 180, 398, 859, 607, 233, 93, 85, 987, 999999295, 9, 735, 677, 907, 736, 240, 330, 778, 919, 455, 596, 544, 999999586, 999999366, 521, 828, 176, 705, 411, 906, 542, 132, 658, 343, 885, 577, 790, 368, 51, 767, 189, 699, 999999864, 350, 875, 948, 718, 612, 405, 265, 295, 130, 85, 471, 600, 605, 601, 427, 335, 942, 276, 594, 457, 346, 107, 521, 230, 290, 538, 206, 763, 268, 221, 397, 999999985, 24, 286, 987, 958, 428, 229, 743, 617, 433, 132, 812, 316, 371, 511, 953, 718, 109, 970, 465, 269, 995, 163, 915, 856, 974, 779, 883, 43, 999999203, 329, 719, 783, 213, 319, 410, 215, 383, 763, 999999634, 500, 299, 87, 665, 809, 885, 999999781, 742, 887, 856, 21, 632, 163, 200, 279, 572, 803, 526, 57, 991, 253, 976, 683, 656, 712, 999999481, 999999314, 985, 561, 789, 654, 858, 407, 280, 153, 45, 632, 171, 570, 747, 18, 214, 878, 518, 170, 232, 992, 999999314, 999999279, 921, 997, 899, 440, 534, 761, 888, 411, 649, 48, 94, 293, 111, 862, 357, 725, 545, 679, 280, 23, 635, 752, 839, 973, 831, 371, 467, 10, 211, 223, 999999451, 670, 751, 999999097, 198, 501, 776, 734, 711, 399, 192, 999999599, 507, 249, 124, 500, 345, 999999092, 644, 635, 999999156, 305, 303, 595, 970, 930, 204, 414, 439, 947, 641, 275, 131, 53, 296, 188, 24, 999999060, 222, 615, 734, 581, 74, 110, 999999400, 423, 60, 62, 443, 59, 283, 371, 389, 999999292, 349, 999999700, 476, 448, 516, 838, 475, 702, 411, 69, 999999310, 999999090, 149, 376, 433, 441, 702, 806, 20, 939, 672, 176, 394, 191, 231, 662, 661, 924, 477, 858, 838, 806, 800, 712, 309, 7, 495, 324, 302, 306, 24, 907, 454, 919, 53, 633, 866, 498, 434, 999999453, 945, 379, 673, 481, 21, 999999464, 566, 28, 854, 590, 931, 677, 598, 51, 597, 18, 342, 632, 999999682, 703, 496, 943, 600, 711, 987, 865, 368, 967, 74, 779, 785, 491, 573, 652, 148, 278, 254, 857, 999999863, 999999737, 798, 521, 428, 333, 382, 305, 230, 50, 294, 569, 999999736, 886, 249, 181, 412, 16, 999999816, 645, 838, 306, 497, 566, 203, 999999838, 281, 127, 324, 672, 479, 124, 893, 886, 349, 102, 904, 875, 285, 273, 410, 15, 965, 844, 443, 708, 138, 437, 578, 511, 999999125, 835, 592, 194, 192, 986, 57, 453, 999999644, 322, 270, 456, 464, 952, 661, 219, 748, 796, 911, 806, 555, 273, 625, 506, 612, 936, 411, 846, 354, 278, 604, 498, 260, 553, 837, 256, 61, 319, 329, 894, 966, 143, 212, 965, 823, 102, 609, 999999242, 386, 451, 617, 711, 288, 547, 587, 961, 801, 174, 287, 366, 241, 888, 610, 131, 141, 145, 469, 803, 162, 999999778, 999999922, 588, 615, 573, 989, 992, 94, 180, 815, 636, 735, 67, 999999664, 324, 999999274, 414, 785, 974, 254, 965, 869, 715, 991, 299, 634, 481, 999999817, 730, 464, 227, 399, 229, 845, 319, 455, 748, 521, 871, 660, 180, 978, 561, 187, 957, 999999751, 463, 216, 346, 162, 984, 74, 405, 271, 957, 181, 232, 262, 700, 990, 116, 183, 73, 594, 214, 671, 256, 551, 189, 184, 628, 521, 710, 999999600, 651, 983, 888, 908, 863, 755, 664, 742, 583, 214, 999999569, 292, 772, 770, 950, 533, 861, 437, 728, 369, 499, 885, 232, 549, 878, 999999497, 31, 899, 134, 598, 296, 799, 402, 746, 940, 236, 109, 446, 839, 701, 212, 777, 392, 812, 225, 566, 405, 567, 115, 884, 605, 150, 515, 327, 412, 78, 353, 999999610, 26, 41, 645, 353, 780, 235, 927, 484, 346, 23, 935, 999999008, 959, 296, 461, 715, 212, 864, 995, 529, 165, 636, 766, 994, 635, 734, 49, 592, 32, 474, 929, 354, 310, 530, 34, 476, 153, 874, 952, 53, 720, 205, 695, 48, 496, 470, 540, 132, 457, 327, 682, 236, 879, 325, 734, 583, 394, 18, 643, 968, 758, 106, 7, 911, 999999371, 974, 556, 199, 791, 333, 823, 694, 528, 334, 999999419, 304, 539, 247, 505, 980, 839, 233, 431, 878, 650, 441, 324, 999999924, 771, 977, 923, 128, 334, 189, 370, 211, 999999100, 830, 315, 672, 455, 2, 804, 566, 617, 578, 967, 632, 23, 35, 330, 364, 687, 230, 840, 799, 358, 336, 223, 311, 572, 739, 200, 127, 190, 323, 882, 551, 107, 169, 103, 897, 999999255, 499, 999999770, 373, 988, 26, 798, 278, 804, 859, 609, 3, 175, 583, 591, 191, 339, 515, 199, 697, 223, 280, 866, 869, 840, 724, 327, 73, 140, 999999560, 257, 25, 906, 215, 999999387, 276, 719, 309, 435, 340, 354, 662, 13, 233, 865, 706, 979, 863, 778, 632, 708, 291, 228, 999999046, 466, 179, 179, 992, 338, 307, 759, 273, 799, 56, 61, 767, 64, 745, 812, 515, 845, 999999478, 994, 468, 134, 7, 5, 330, 453, 999999465, 706, 999999350, 519, 293, 545, 525, 390, 423, 487, 344, 930, 999999843, 99, 565, 999999404, 143, 209, 313, 297, 174, 346, 45, 613, 477, 194, 917, 181, 195, 617, 636, 843, 804, 999999932, 246, 999999688, 749, 680, 100, 184, 195, 999999347, 915, 271, 405, 912, 701, 925, 53, 191, 935, 431, 34, 322, 217, 473, 665, 276, 570, 745, 983, 415, 889, 63, 73, 685, 133, 644, 861, 824, 662, 999999999, 630, 979, 385, 609, 708, 334, 368, 635, 402, 534, 328, 195, 999999289, 819, 433, 779, 188, 480, 834, 266, 475, 726, 738, 945, 694, 489, 976, 950, 676, 249, 572, 404, 553, 339, 999999116, 577, 67, 886, 639, 223, 958, 846, 804, 468, 464, 836, 549, 962, 294, 124, 501, 568, 389, 494, 678, 167, 858, 750, 278, 6, 394, 380, 341, 998, 98, 20, 880, 190, 929, 703, 736, 96, 873, 120, 60, 210, 666, 456, 999999580, 911, 311, 682, 211, 859, 63, 280, 894, 795, 141, 420, 391, 730, 64, 256, 561, 333, 91, 151, 952, 616, 54, 769, 733, 974, 999999091, 963, 175, 70, 27, 676, 925, 824, 256, 241, 525, 732, 216, 794, 880, 276, 271, 67, 587, 196, 117, 533, 976, 337, 436, 546, 91, 104, 819, 756, 999999153, 498, 934, 135, 999999698, 1000000000, 708, 346, 442, 55, 455, 738, 82, 626, 952, 366, 999999721, 674, 289, 108, 755, 556, 369, 19, 715, 787, 187, 567, 898, 52, 999999952, 881, 937, 923, 999, 244, 310, 132, 947, 697, 530, 803, 158, 795, 442, 134, 455, 404, 375, 901, 154, 342, 630, 880, 252, 999999636, 520, 73, 250, 261, 355, 478, 370, 815, 904, 121, 192, 282, 107, 176, 370, 809, 358, 957, 229 }
{1860, 1154, 155, 150, 1829, 477, 1247, 825, 1272, 572, 656, 1896, 32, 855, 433, 1693, 558, 131, 1856, 94, 96, 1972, 1233, 1210, 1155, 1938, 1798, 1046, 1979, 1931, 421, 1944, 862, 392, 1696, 356, 290, 935, 1714, 1571, 1193, 1877, 347, 111, 769, 286, 348, 1361, 223, 1698, 269, 239, 788, 801, 1050, 1023, 368, 1346, 1406, 1785, 266, 594, 261, 61, 370, 1424, 1191, 1047, 947, 271, 976, 257, 726, 1350, 1890, 1202, 1320, 1145, 449, 168, 1235, 987, 674, 92, 1542, 1654, 1900, 828, 83, 73, 955, 1497, 1064, 273, 1009, 241, 1382, 1417, 815, 767, 1198, 875, 43, 1083, 1749, 1391, 778, 1028, 1612, 1923, 1492, 1628, 1574, 143, 1875, 823, 1170, 1902, 641, 1020, 1591, 363, 564, 1020, 499, 86, 832, 1762, 1640, 1067, 787, 96, 1698, 317, 1180, 642, 536, 873, 1325, 270, 1535, 716, 628, 1648, 1609, 489, 1857, 778, 873, 527, 1733, 1603, 928, 1636, 314, 13, 303, 678, 1076, 1943, 925, 1538, 1284, 363, 630, 986, 616, 1564, 1747, 196, 1807, 352, 231, 1582, 1395, 526, 100, 955, 1424, 1913, 1108, 545, 1599, 1405, 1385, 138, 1107, 961, 1383, 1950, 262, 1709, 1410, 742, 1308, 150, 647, 1666, 617, 443, 871, 1015, 539, 1954, 21, 1834, 943, 599, 1416, 80, 1774, 1791, 1863, 1289, 1487, 1215, 646, 72, 240, 1878, 257, 981, 949, 1947, 876, 1412, 1469, 1215, 362, 749, 624, 694, 570, 948, 1798, 1719, 1616, 316, 813, 1732, 751, 794, 1281, 1582, 379, 1778, 251, 644, 352, 898, 1399, 466, 263, 456, 92, 367, 1064, 1107, 337, 495, 783, 1802, 1259, 909, 1900, 436, 683, 327, 555, 1552, 1367, 266, 42, 1634, 357, 419, 1858, 993, 1136, 911, 188, 1254, 1881, 1950, 702, 1450, 1033, 285, 971, 131, 520, 964, 524, 1, 1609, 504, 1956, 310, 1901, 419, 331, 389, 1717, 497, 1696, 1533, 594, 255, 328, 304, 998, 413, 1012, 952, 1806, 1603, 1699, 652, 295, 196, 340, 824, 1804, 1988, 238, 560, 1080, 503, 1793, 1794, 1336, 244, 482, 137, 1442, 330, 1654, 1812, 1187, 1084, 1421, 690, 653, 1154, 1723, 628, 38, 1084, 986, 354, 1652, 634, 166, 1921, 801, 896, 109, 225, 328, 1104, 75, 1722, 482, 90, 1720, 855, 868, 1280, 1891, 619, 944, 431, 1948, 740, 170, 745, 1966, 1742, 1478, 447, 255, 24, 1627, 877, 622, 1766, 1294, 1484, 789, 208, 1621, 902, 288, 1750, 435, 991, 1580, 1854, 1142, 1253, 1992, 1273, 630, 1074, 328, 647, 1579, 408, 207, 1283, 1425, 1350, 1669, 1956, 781, 243, 1058, 661, 1893, 1866, 1677, 1686, 1969, 528, 1095, 1493, 1904, 804, 1560, 1195, 1804, 547, 1503, 708, 266, 1751, 1369, 1784, 1737, 536, 952, 712, 781, 1849, 1706, 1621, 65, 1656, 1647, 1378, 1169, 1839, 996, 228, 1639, 1356, 768, 179, 773, 209, 1194, 1757, 1222, 284, 1225, 676, 1049, 1244, 1922, 1131, 1889, 1134, 1023, 665, 841, 1604, 1313, 527, 393, 790, 1387, 222, 947, 731, 576, 1439, 75, 21, 1185, 636, 535, 631, 1197, 1247, 1717, 761, 703, 893, 1355, 289, 1583, 491, 1674, 1815, 140, 169, 1293, 668, 614, 1712, 1147, 1783, 19, 750, 580, 1124, 1422, 1671, 325, 328, 1403, 522, 1502, 751, 1102, 1328, 1656, 1100, 1521, 1896, 381, 1664, 1984, 410, 339, 1798, 1124, 1430, 1434, 1917, 1694, 1900, 1243, 739, 108, 1264, 1110, 1560, 1365, 533, 618, 1693, 85, 1454, 738, 427, 1623, 492, 1363, 1599, 1658, 1400, 147, 112, 1936, 693, 1521, 1480, 482, 1124, 950, 974, 324, 563, 848, 152, 257, 109, 1108, 1408, 627, 1590, 1218, 1494, 1931, 657, 1771, 1906, 1864, 403, 1202, 949, 1050, 377, 1420, 1192, 1858, 1535, 1685, 863, 1464, 671, 354, 1929, 1373, 1561, 1306, 1337, 602, 1233, 1965, 1210, 1822, 451, 355, 363, 1176, 179, 879, 1047, 969, 1982, 1498, 1095, 107, 1322, 221, 862, 990, 307, 469, 776, 1363, 1884, 1333, 837, 1398, 11, 1140, 8, 1746, 547, 686, 1549, 389, 1467, 293, 106, 522, 1242, 1160, 1314, 42, 1679, 617, 1511, 765, 1992, 532, 1897, 1320, 773, 1118, 791, 213, 1399, 398, 143, 913, 1774, 909, 264, 1824, 2, 1877, 1751, 509, 246, 1260, 923, 1415, 1897, 108, 563, 1011, 1984, 882, 927, 219, 1317, 728, 1824, 1306, 736, 1273, 952, 521, 677, 806, 1898, 1612, 753, 1565, 1816, 1441, 723, 112, 401, 52, 354, 306, 624, 1343, 153, 820, 260, 197, 1778, 658, 1249, 1620, 619, 436, 1420, 933, 391, 179, 46, 1539, 1921, 284, 981, 1658, 1592, 454, 766, 1945, 230, 1995, 41, 1985, 183, 874, 1406, 969, 57, 789, 1046, 311, 1551, 1485, 1559, 163, 828, 1247, 640, 1444, 1893, 1475, 1685, 1341, 594, 1734, 1443, 744, 626, 1311, 40, 1510, 81, 1317, 36, 178, 517, 15, 296, 565, 832, 1114, 385, 889, 183, 514, 195, 999, 484, 1143, 1047, 1257, 1440, 1625, 1090, 396, 898, 24, 1731, 1386, 1282, 1483, 523, 701, 1793, 685, 147, 814, 1314, 387, 708, 793, 1313, 504, 135, 645, 164, 68, 1453, 107, 1731, 929, 596, 1182, 1617, 1050, 1440, 1561, 1078, 53, 1113, 924, 1895, 1921, 1926, 907, 495, 1884, 1308, 1329, 1792, 608, 18, 1140, 1155, 1625, 1759, 682, 375, 511, 1242, 640, 1893, 587, 1633, 853, 189, 1429, 1172, 1736, 1770, 335, 34, 658, 1112, 756, 1566, 1477, 135, 311, 1710, 1554, 1124, 123, 74, 1054, 760, 1186, 1116, 144, 875, 1385, 1073, 1006, 685, 923, 1330, 1081, 958, 1969, 681, 566, 788, 558, 977, 712, 831, 153, 1154, 1800, 1840, 964, 289, 497, 94, 412, 1036, 23, 566, 286, 455, 1350, 975, 1837, 854, 1927, 1076, 350, 35, 284, 903, 349, 1970, 946, 1199, 800, 1174, 34, 132, 1458, 791, 442, 1129, 1238, 19, 770, 662, 488, 752, 708, 623, 417, 1630, 1799, 1950, 626, 883, 1812, 1565, 26, 915, 487, 613, 991, 1868, 523, 816, 1182, 1108, 317, 1698, 1193, 188, 359, 345, 919, 1050, 597, 43, 615, 1813, 1381, 155, 1462, 110, 1026, 682, 467, 1064, 1815, 691, 365, 321, 110, 1850, 1141, 1948, 1763, 1059, 999, 9, 77, 609, 1917, 660, 1333, 1437, 617, 1926, 1021, 197, 1022, 1637, 1921, 1993, 1345, 965, 958, 444, 118, 129, 1912, 1814, 171, 1422, 1176, 420, 871, 253, 1956, 1389, 723, 360, 653, 1549, 585, 1488, 1537, 316, 1332, 15, 1835, 1905, 759, 815, 601, 1365, 734, 13, 1915, 1331, 725, 766, 473, 1044, 1427, 565, 891, 84, 996, 1569, 1571, 1225, 1650, 1392, 1347, 811, 1323, 1205, 1537, 1716, 28, 290, 869, 1562, 484, 762, 866, 317, 1552, 758, 1396, 1835, 1831, 490, 259, 1309, 1723, 1705, 496, 1428, 369, 1510, 1466, 1597, 1115, 1589, 1498, 1865, 301, 306, 1504, 1980, 136, 1686, 345, 1165, 817, 1287, 204, 857, 468, 1018, 935, 406, 1800, 1207, 1637, 1148, 1473, 406, 407, 652, 238, 81, 1324, 1142, 766, 1396, 1622, 1790, 431, 1322, 6, 627, 620, 1179, 91, 1458, 1631, 1804, 493, 250, 188, 1081, 460, 1963, 1742, 1214, 588, 1492, 266, 621, 1436, 339, 1456, 890, 6, 886, 722, 866, 628, 485, 1097, 317, 1213, 1214, 911, 920, 1899, 1657, 762, 124, 790, 1720, 596, 1981, 1076, 174, 1236, 850, 694, 94, 83, 1914, 2, 255, 56, 1945, 1191, 1467, 279, 876, 1032, 1028, 1214, 1041, 1692, 1260, 1973, 666, 32, 937, 1651, 1229, 973, 885, 1616, 6, 1925, 309, 1821, 1197, 1502, 1453, 945, 241, 129, 986, 890, 72, 527, 1913, 1909, 263, 1388, 889, 1733, 1986, 833, 676, 809, 570, 1062, 81, 1351, 1358, 98, 184, 1916, 973, 899, 469, 219, 160, 1812, 1324, 1619, 1162, 236, 728, 1207, 842, 911, 77, 1340, 687, 568, 361, 1, 1257, 1983, 627, 25, 390, 1253, 264, 88, 1497, 1258, 449, 988, 1171, 1139, 1924, 397, 1253, 1953, 638, 912, 1418, 350, 1636, 645, 301, 1201, 1770, 259, 1417, 342, 130, 182, 562, 1317, 241, 1408, 1493, 395, 1055, 127, 669, 296, 122, 362, 850, 1751, 775, 1506, 1598, 729, 1930, 1235, 1004, 888, 1123, 450, 1235, 1082, 1629, 746, 116, 793, 1271, 1192, 1218, 615, 1034, 353, 423, 1532, 1276, 911, 1857, 304, 818, 1099, 1865, 1877, 1076, 1871, 278, 897, 919, 963, 1441, 661, 559, 262, 1258, 197, 684, 1704, 1618, 1263, 473, 1983, 1720, 51, 567, 1860, 544, 457, 1279, 277, 1302, 1553, 194, 1514, 1682, 624, 144, 641, 1629, 829, 1356, 1294, 295, 1303, 139, 542, 372, 228, 785, 1645, 802, 1052, 812, 332, 172, 972, 1926, 1323, 834, 215, 1455, 881, 1988, 708, 1865, 1883, 942, 702, 33, 571, 735, 1285, 958, 1816, 735, 840, 20, 929, 190, 467, 1746, 1041, 1719, 1499, 972, 1543, 712, 771, 1100, 529, 226, 1027, 1803, 559, 939, 824, 275, 522, 325, 1648, 842, 1595, 716, 1850, 262, 161, 323, 474, 1610, 1454, 715, 948, 204, 1187, 817, 1122, 1248, 178, 1012, 10, 1177, 86, 480, 293, 285, 753, 354, 995, 253, 1706, 473, 174, 1843, 1685, 1870, 502, 197, 1484, 584, 231, 1069, 188, 1560, 964, 401, 988, 578, 44, 1109, 1971, 1997, 1646, 1714, 1779, 962, 234, 1681, 515, 42, 277, 1024, 1751, 1634, 600, 1137, 343, 1320, 394, 520, 986, 727, 529, 1806, 1161, 728, 982, 1758, 954, 232, 1564, 848, 701, 1771, 679, 231, 1005, 1431, 1896, 386, 502, 201, 548, 1421, 149, 98, 855, 1993, 755, 149, 287, 1727, 686, 1061, 180, 1976, 13, 1047, 1075, 1305, 342, 1047, 1808, 1935, 1671, 1258, 848, 1069, 763, 823, 1071, 1179, 549, 1856, 81, 1101, 782, 897, 42, 81, 1640, 692, 981, 1575, 565, 363, 32, 992, 1988, 90, 497, 894, 95, 686, 1723, 663, 660, 129, 1151, 963, 447, 1328, 803, 1239, 883, 1209, 322, 463, 1144, 1888, 90, 317, 1754, 1248, 24, 993, 216, 1804, 895, 1008, 1160, 683, 537, 1552, 1468, 416, 1003, 1717, 1402, 1739, 1328, 1039, 1058, 1097, 883, 564, 1771, 65, 1973, 1949, 1549, 1752, 533, 1155, 246, 1724, 997, 1303, 833, 517, 1973, 220, 341, 48, 1662, 701, 974, 1466, 1378, 961, 29, 547, 378, 32, 776, 1457, 358, 1113, 656, 625, 484, 1606, 1489, 1130, 871, 1082, 656, 418, 665, 652, 9, 886, 507, 1214, 387, 1363, 734, 1369, 300, 322, 974, 1508, 1489, 1906, 472, 1067, 1816, 207, 1447, 103, 587, 697, 1340, 660, 1632, 271, 637, 197, 132, 450, 611, 1578, 155, 45, 1699, 972, 545, 1065, 1432, 1407, 1957, 1428, 1089, 8, 347, 1489, 1744, 97, 358, 674, 1553, 276, 1791, 912, 1988, 1156, 1118, 248, 545, 1770, 1000, 119, 382, 1796, 1645, 378, 1576, 864, 1667, 1549, 619, 1845, 418, 838, 1065, 1574, 337, 221, 801, 1030, 617, 1440, 111, 1631, 537, 1862, 1134, 1890, 1398, 1309, 130, 688, 840, 1331, 1560, 1844, 894, 1017, 557, 301, 1787, 1605, 1976, 105, 1409, 212, 1417, 71, 804, 204, 206, 1034, 1557, 1049, 1735, 1776, 1049, 1749, 1006, 127, 396, 528, 888, 1435, 1977, 815, 126, 653, 1491, 1917, 1881, 223, 1758, 1275, 1147, 427, 189, 818, 270, 183, 1486, 363, 916, 802, 1394, 1652, 648, 1848, 1594, 1595, 309, 1087, 1995, 938, 356, 1680, 344, 1262, 1231, 761, 1418, 1857, 1537, 1257, 827, 132, 247, 1450, 481, 319, 140, 987, 943, 369, 713, 286, 1523, 223, 1464, 669, 400, 385, 1703, 822, 903, 827, 1246, 1126, 1912, 971, 852, 1098, 696, 793, 1981, 1559, 633, 218, 1702, 987, 760, 1550, 1933, 385, 911, 363, 1770, 611, 1730, 913, 1622, 1805, 1301, 358, 249, 1339, 1004, 1228, 1878, 657, 617, 277, 575, 203, 92, 1070, 1201, 1324, 421, 323, 413, 889, 752, 1389, 1386, 1453, 735, 448, 1436, 1727, 623, 266, 519, 434, 1387, 1281, 1036, 1472, 1789, 1998, 181, 328, 1995, 264, 1944, 1005, 1624, 1860, 1223, 1924, 1831, 841, 23, 185, 1713, 673, 619, 1662, 1368, 1117, 1101, 1547, 1988, 864, 378, 554, 62, 612, 1907, 875, 360, 1818, 473, 238, 415, 837, 546, 45, 63, 1509, 1680, 338, 1327, 211, 1428, 296, 1372, 279, 149, 1306, 938, 1688, 546, 20, 1220, 1250, 1028, 124, 767, 119, 1955, 1166, 1420, 1330, 1468, 91, 199, 726, 356, 1035, 643, 1973, 1383, 369, 545, 825, 1491, 1465, 199, 258, 885, 1069, 1614, 1871, 1510, 1055, 1320, 790, 693, 360, 986, 823, 1454, 785, 1641, 782, 1486, 337, 496 }
{8351, 3246, 20695, 11599, 29539, 10564, 9559, 9443, 16722, 101, 24323, 29584, 27628, 3219, 16742, 5681, 23526, 10529, 6014, 27829, 5543, 19131, 12349, 6817, 7627, 2012, 11017, 14217, 11683, 29013, 5180, 20379, 14259, 15053, 20901, 13333, 15411, 13116, 24325, 7114, 28046, 3439, 23186, 5025, 9446, 30855, 24952, 16150, 9871, 2170, 15443, 26807, 13967, 28304, 23478, 25256, 32036, 487, 9383, 14111, 15166, 6127, 3360, 10472, 20224, 11503, 2192, 994, 2116, 23679, 17496, 15745, 19732, 10763, 13391, 25930, 3634, 6487, 28478, 25946, 2960, 5877, 23396, 4832, 26841, 12496, 10996, 3742, 4582, 7845, 10386, 30060, 28490, 6789, 21465, 24756, 27335, 2388, 19928, 14071, 17366, 29517, 5520, 19527, 13347, 19579, 5240, 21195, 25614, 3393, 31482, 6974, 12076, 6868, 27891, 9584, 14532, 32700, 32311, 195, 20562, 29783, 32522, 31919, 9735, 14165, 6312, 10560, 20295, 13884, 14782, 10131, 6953, 1510, 21230, 19036, 14075, 11007, 25423, 1634, 8892, 12935, 21739, 13057, 30112, 6742, 10559, 6823, 29328, 2451, 30143, 23384, 27815, 22843, 12367, 5931, 31669, 27809, 19403, 29898, 192, 23016, 9344, 28662, 31358, 25226, 15537, 31232, 10716, 15317, 18707, 27217, 1659, 10089, 3409, 16099, 814, 23483, 2185, 11462, 8829, 15509, 29132, 156, 23333, 25491, 1186, 20253, 19605, 30888, 7556, 30100, 17266, 23191, 9824, 27232, 3604, 6010, 21273, 23924, 8455, 13631, 11781, 10455, 2955, 18981, 29805, 4389, 15381, 25924, 17167, 22028, 5324, 18178, 4767, 4815, 20492, 27039, 1090, 28359, 13542, 22954, 32274, 7645, 7070, 24201, 6046, 12561, 16939, 29429, 22119, 14071, 28859, 3452, 14947, 11316, 28205, 14589, 6781, 15365, 17557, 32047, 20755, 20665, 21947, 5915, 14455, 29746, 16284, 413, 30575, 104, 4328, 19943, 7606, 8165, 19842, 19455, 4216, 7754, 17156, 828, 18137, 2249, 11576, 31436, 22127, 7849, 10912, 21040, 20419, 4549, 238, 10686, 27348, 5901, 12685, 23327, 917, 18180, 24086, 463, 26218, 20032, 31963, 21408, 27822, 28141, 23905, 18743, 26928, 19530, 31966, 5773, 25777, 5418, 10943, 29551, 10856, 27253, 32036, 13311, 9343, 9380, 5473, 12593, 2195, 25417, 13439, 334, 21559, 28037, 8121, 116, 6514, 25231, 21760, 10516, 6972, 14900, 3960, 15475, 14853, 5457, 7161, 15146, 12334, 24155, 32142, 11686, 7822, 14808, 25081, 15528, 26863, 18147, 26157, 6598, 25231, 12203, 10962, 14313, 19103, 2549, 14533, 21453, 6343, 1942, 13718, 19587, 6559, 30458, 26632, 19442, 23351, 5024, 3221, 16210, 27025, 9883, 31207, 8112, 23330, 30482, 5471, 2669, 11605, 2752, 6034, 10687, 28935, 13942, 8391, 27950, 18188, 32404, 7547, 4632, 11433, 18324, 31453, 31790, 6168, 22143, 11090, 24053, 25863, 8565, 31474, 12613, 4377, 28714, 13321, 32717, 18531, 19555, 5015, 31629, 16880, 17021, 3537, 26459, 27710, 29159, 25245, 20319, 27070, 28067, 538, 4503, 23896, 27849, 16662, 13908, 1765, 19204, 23957, 6330, 12212, 22802, 21329, 24388, 26373, 32072, 53, 17470, 3729, 9228, 6368, 11849, 14080, 90, 27944, 6362, 19569, 7232, 31893, 19643, 4854, 14689, 23266, 26761, 29461, 373, 25727, 14645, 5704, 1735, 17170, 25219, 21374, 5303, 16881, 22414, 27544, 20534, 29353, 9025, 5612, 10316, 8571, 223, 23750, 5781, 6617, 17533, 18914, 12223, 15085, 4995, 25331, 1038, 23571, 27950, 30239, 20441, 346, 785, 13952, 31754, 24583, 24975, 10405, 28322, 13074, 26723, 24335, 11059, 24487, 4888, 1717, 17251, 27046, 4497, 17280, 6000, 14371, 12419, 23760, 26278, 10727, 4597, 14837, 12267, 31213, 13767, 11958, 25140, 29670, 21032, 6094, 23821, 30902, 31775, 18281, 16661, 21237, 8195, 16812, 4223, 23406, 18947, 18731, 8082, 28067, 16030, 15216, 21802, 11335, 25388, 15739, 15157, 5570, 30291, 14396, 24375, 26801, 6291, 9499, 710, 22628, 9403, 10864, 7182, 4446, 22641, 2059, 9807, 3544, 19631, 21422, 16986, 14911, 15936, 1422, 10008, 27057, 9799, 21717, 25091, 6788, 8888, 25635, 26538, 2751, 11997, 15881, 29746, 7326, 11218, 8588, 15311, 2834, 14601, 7848, 27471, 28223, 23751, 714, 30864, 4093, 31909, 5461, 17157, 4184, 9745, 9246, 1077, 23056, 9930, 24560, 4155, 26394, 30055, 2313, 26183, 21788, 27089, 27546, 4380, 18933, 17860, 11339, 22416, 10290, 3410, 25781, 15631, 5018, 12128, 4071, 21016, 17828, 32295, 18145, 21695, 12795, 30645, 19740, 8489, 31489, 24169, 27904, 29203, 13897, 8570, 9324, 29003, 283, 5489, 8497, 6197, 25844, 31914, 3479, 24648, 3076, 24535, 11480, 17295, 17838, 13949, 18336, 3368, 23307, 24437, 26771, 31176, 13159, 26988, 26822, 10293, 18627, 11107, 19525, 22986, 27729, 11568, 28300, 759, 23291, 24572, 32526, 11198, 8669, 9923, 19889, 8247, 21190, 11991, 26447, 28941, 2235, 6236, 567, 17407, 15476, 28365, 15018, 29792, 26845, 29046, 8031, 919, 32662, 11257, 3583, 22944, 11635, 24265, 24489, 21897, 28413, 14258, 25967, 11766, 29935, 23119, 13528, 8606, 22714, 14482, 17500, 30667, 8449, 15167, 22507, 20701, 5662, 14961, 15718, 18120, 26267, 17940, 22820, 23953, 7098, 15977, 622, 17366, 24046, 15494, 12292, 25411, 2399, 19155, 29846, 16669, 4714, 28046, 19276, 11963, 14879, 31560, 13374, 18952, 4801, 17765, 8444, 19971, 21577, 4256, 12552, 13119, 227, 23941, 15959, 8291, 22895, 245, 14803, 10922, 8706, 3238, 22492, 26212, 13923, 1952, 3266, 18292, 28303, 30401, 22861, 20944, 21301, 13625, 26422, 6660, 8762, 7439, 30123, 5551, 9013, 32666, 5582, 15365, 19444, 28169, 14134, 30283, 13558, 20956, 1133, 24670, 24048, 21865, 3953, 22829, 16968, 7256, 20020, 25402, 15772, 19494, 26395, 21788, 16444, 25766, 19842, 23040, 21420, 26747, 11830, 16931, 28451, 21920, 11258, 9050, 7183, 28129, 27651, 18827, 27278, 20319, 29308, 30513, 13814, 23823, 20227, 30172, 14671, 30523, 6442, 30383, 29651, 1024, 15607, 17120, 23925, 18382, 5988, 15419, 27479, 3563, 25311, 11679, 25682, 8433, 29643, 27519, 1394, 4939, 17662, 17506, 30328, 22460, 21569, 16740, 3670, 10712, 20179, 14003, 26550, 18057, 3558, 9235, 17780, 29836, 25376, 25946, 18207, 23793, 13595, 13045, 28028, 13214, 27622, 29281, 28418, 12237, 11650, 22195, 23647, 21641, 27237, 20752, 5362, 2357, 14843, 20789, 2895, 517, 1824, 22001, 22975, 30851, 3239, 19878, 9917, 13323, 8662, 18124, 22906, 25168, 22248, 28782, 7769, 16341, 24969, 27307, 15220, 4212, 22877, 26422, 13589, 26586, 17530, 6614, 16958, 16905, 29674, 30950, 4386, 27605, 12330, 19926, 23465, 15208, 13741, 5545, 19440, 6334, 346, 12661, 12486, 22057, 27913, 26343, 560, 22734, 7178, 12476, 13799, 4391, 14238, 24392, 25557, 17279, 31612, 2291, 15003, 8313, 4686, 19127, 17421, 11657, 16945, 22691, 31156, 32120, 26937, 24155, 10572, 14564, 18922, 12182, 10564, 30398, 10176, 18590, 23873, 25803, 13224, 7892, 2715, 16420, 18565, 16682, 31965, 7607, 30636, 18599, 31305, 707, 25959, 6374, 2130, 19807, 30070, 28823, 33, 27892, 18314, 18940, 29457, 27326, 968, 2925, 24371, 16975, 30540, 2005, 13258, 2572, 163, 20276, 9680, 27565, 19536, 20251, 21615, 27842, 24904, 17202, 15753, 1833, 32118, 30133, 561, 4505, 16952, 20466, 31535, 30746, 12512, 15053, 7552, 17546, 30515, 20284, 11987, 30490, 3053, 22220, 18957, 11983, 6972, 7194, 13254, 8706, 17217, 2907, 32458, 26336, 8338, 8917, 154, 3050, 10938, 13155, 5608, 118, 24759, 28916, 14110, 19756, 17787, 21261, 23767, 7306, 11372, 17731, 13412, 4961, 21988, 10177, 9289, 31062, 23474, 8136, 8382, 12641, 28055, 14378, 20527, 593, 24009, 20942, 32700, 12102, 32115, 25648, 26553, 24630, 18739, 3550, 16430, 23145, 26012, 29948, 9560, 2301, 27570, 30656, 19495, 21859, 1392, 11510, 1727, 20447, 23109, 13437, 6391, 10252, 19346, 22473, 23772, 30038, 301, 31327, 14127, 20350, 17890, 23132, 23523, 14106, 13293, 8431, 25248, 19986, 12673, 17114, 11075, 24611, 15685, 12533, 4699, 15200, 2769, 22698, 30125, 22701, 28469, 29818, 2225, 21570, 7538, 11383, 30995, 13870, 13055, 1736, 25395, 2769, 5190, 10280, 5798, 19296, 6436, 25703, 10931, 5733, 2412, 7911, 25302, 14397, 26981, 31520, 25408, 921, 5703, 23838, 13653, 31229, 12994, 14846, 7213, 17475, 25464, 14452, 14611, 31513, 23422, 8519, 9, 16255, 14559, 8147, 31810, 9034, 12568, 21126, 25767, 24996, 3485, 11108, 83, 26506, 30802, 8324, 23319, 11340, 6163, 11408, 18934, 23057, 32045, 8009, 16297, 18000, 24035, 15872, 28957, 14936, 8938, 13342, 18928, 3016, 17389, 21405, 12536, 1304, 29706, 9613, 7356, 7694, 7762, 19088, 30713, 1098, 12877, 11102, 22046, 29627, 16500, 31042, 30672, 24360, 26293, 32411, 8039, 26792, 3315, 16220, 13679, 10793, 29059, 27020, 15657, 19949, 1456, 5575, 6407, 30472, 6712, 22459, 7987, 31204, 23501, 7851, 32264, 25789, 8085, 26096, 28823, 22566, 32682, 13683, 17188, 12162, 18331, 29236, 10151, 31115, 12520, 32455, 23115, 16590, 28554, 11217, 5618, 9261, 3689, 30863, 22703, 16220, 7140, 9040, 30795, 25445, 9805, 2550, 1729, 7972, 2154, 23161, 1729, 6091, 1525, 4963, 28721, 12639, 14365, 21589, 1191, 1849, 18947, 32385, 29680, 13446, 1342, 9518, 20621, 27848, 11863, 20023, 21553, 25683, 12621, 652, 29764, 2257, 7698, 11952, 18018, 2494, 29965, 21305, 13533, 12524, 17302, 1363, 823, 2816, 4221, 16189, 8873, 24563, 6275, 202, 22175, 31634, 23263, 16354, 10553, 17918, 30138, 10494, 12235, 11309, 21172, 12208, 8030, 22632, 9053, 28441, 12589, 15051, 11708, 23152, 22313, 25032, 26828, 15746, 16502, 8868, 26874, 3372, 11756, 4599, 7336, 2019, 5782, 19505, 22701, 9773, 7222, 3600, 13523, 23333, 20415, 7467, 14423, 9467, 17882, 106, 22125, 28017, 31586, 2187, 15033, 14943, 2535, 10399, 26071, 11824, 11311, 7819, 6612, 22627, 4784, 27528, 5811, 22027, 2071, 7331, 9961, 16975, 26053, 25405, 31713, 30443, 22604, 32140, 23160, 7341, 29687, 28440, 6018, 3064, 6463, 2367, 25668, 32069, 10583, 17329, 27383, 2461, 2721, 25845, 15180, 31520, 32054, 31459, 1762, 28034, 16225, 9000, 11730, 16008, 549, 9157, 6948, 20111, 11699, 21392, 29014, 4358, 30197, 21169, 1756, 27887, 16134, 4902, 12955, 28002, 20919, 12607, 26733, 16906, 24588, 7203, 9632, 4005, 22972, 3657, 11639, 4232, 4277, 22016, 5544, 1305, 11670, 28136, 8924, 29780, 29747, 25975, 30002, 15431, 22548, 6517, 1212, 29333, 24822, 15488, 28160, 5366, 24393, 12168, 3704, 2485, 28848, 10836, 28946, 28722, 21636, 13307, 2737, 16734, 4177, 27500, 18091, 16449, 25688, 8167, 25417, 14967, 4108, 14721, 7754, 6318, 26261, 29092, 12640, 16170, 13135, 23437, 7858, 15938, 28236, 15564, 19800, 21217, 16590, 13768, 30178, 14085, 22989, 14904, 24273, 16963, 4727, 22955, 26908, 23105, 25259, 22529, 27820, 13114, 9598, 5615, 25824, 24701, 11703, 18815, 27915, 13551, 10834, 1678, 3313, 29573, 23296, 5964, 21837, 20427, 5284, 9407, 19534, 15968, 5592, 12097, 10774, 5495, 11110, 22269, 25913, 32087, 9424, 29814, 3908, 12508, 6345, 256, 307, 3572, 31162, 20293, 22522, 30243, 31294, 5057, 16637, 32511, 16805, 15687, 5784, 29364, 28788, 7546, 19608, 8322, 29924, 24916, 11455, 32058, 12127, 22946, 25413, 5061, 26374, 4998, 23377, 17821, 3630, 16628, 27524, 23377, 22238, 28982, 21102, 25862, 5971, 6504, 791, 27376, 32380, 27901, 16760, 28125, 6270, 1592, 3839, 14251, 9009, 24243, 26383, 31693, 12961, 6107, 19325, 18378, 9614, 4978, 8468, 17341, 27116, 23564, 23570, 17110, 4452, 23954, 31912, 9176, 13777, 28099, 23422, 409, 11716, 9390, 17965, 13189, 4352, 1337, 27587, 7707, 3327, 30109, 6467, 21359, 2411, 2023, 17954, 934, 7334, 4729, 28876, 15741, 20547, 6279, 19228, 32450, 13706, 666, 14055, 5337, 18936, 10000, 4722, 19769, 11197, 8858, 21751, 30189, 7740, 189, 31525, 11795, 24206, 13394, 17309, 1632, 18432, 24582, 15221, 29082, 18576, 28379, 6841, 1308, 9588, 31909, 28901, 2390, 3987, 3725, 8556, 23114, 2057, 7057, 12340, 6160, 5287, 25858, 24087, 10067, 17521, 7941, 5476, 466, 1055, 26899, 9820, 22240, 17053, 5753, 21429, 31716, 25995, 18136, 12059, 11482, 3517, 20134, 17834, 7376, 11196, 28587, 7285, 22122, 25667, 24965, 32002, 27743, 17603, 10789, 4556, 31225, 18400, 18000, 21184, 29592, 10737, 8735, 16832, 18224, 3460, 24959, 30499, 19654, 28631, 30897, 32306, 1784, 28000, 5322, 429, 13170, 22086, 21557, 18500, 11129, 4838, 20269, 286, 5220, 22608, 28739, 24662, 24606, 11463, 7390, 2937, 7590, 15428, 11702, 22025, 6543, 31987, 14167, 19965, 20096, 9141, 8869, 6207, 9652, 26780, 5458, 7469, 1915, 7026, 10857, 1304, 15288, 2099, 31431, 1224, 6753, 11150, 30109, 31221, 3074, 14184, 2287, 22479, 23098, 26457, 6680, 25464, 20541, 9517, 20036, 16517, 11088, 32100, 8948, 19841, 23376, 25522, 22141, 20586, 4908, 18303, 8329, 29489, 10598, 30825, 14997, 4158, 18581, 23229, 14450, 20202, 28646, 27650, 12484, 4099, 17302, 5998, 13701, 10828, 11642, 23151, 7299, 30458, 19832, 14628, 6110, 11832, 14859, 736, 7819, 5028, 4291, 26286, 9428, 29392, 22211, 22472, 9430, 27586, 10561, 16926, 30465, 3956, 15881, 3797, 31388, 19540, 13306, 30917, 3646, 10949, 13191, 12539, 22614, 22941, 24375, 21301, 24484, 2725, 5158, 10856, 29629, 7964, 31362, 17725, 25995, 9268, 26127, 23184, 4042, 8083, 1699, 32240, 12173, 11219, 26795, 9250, 3255, 25858, 17828, 30622, 29314, 9508, 9379, 32015, 30716, 4268, 19149, 2007, 6277, 29446, 31712, 32394, 7250, 27409, 2728, 28526, 20717, 26525, 14730, 29953, 4530, 29681, 27389, 27251, 8275, 21575, 8716, 28712, 19797, 29262, 21206, 16439, 28818, 6567, 782, 21230, 12725, 1129, 14971, 21323, 8385, 14237, 17272, 25476, 7818, 12227, 15221, 12672, 5433, 23883, 29557, 23388, 205, 28956, 8334, 9192, 18325, 30993, 23661, 30503, 25271, 19575, 30159, 16082, 22188, 18576, 4360, 1749, 31681, 23827, 6272, 29136, 5784, 26794, 32049, 32152, 16549, 25970, 18218, 6068, 8370, 25983, 30223, 480, 29531, 24405, 12695, 1677, 25490, 19056, 18956, 32095, 13084, 3005, 2255, 8110, 13074, 12830, 20690, 11526, 3169, 746, 3868, 24487, 22603, 22123 }
Returns: {994371662, 998078604, 862492649, 631842027, 976250880, 635045319, 990536826, 489724130, 998461812, 865963742, 379405364, 992692988, 411831969, 371057768, 737614855, 996517783, 583894879, 635730522, 994521482, 741879103, 447681632, 800052441, 997085872, 994567087, 994890146, 998356432, 992695965, 998123592, 690521289, 983404800, 20119692, 997432482, 292348775, 595008113, 986351883, 66581696, 131898146, 852793639, 980734836, 997673958, 992568046, 998579929, 803018962, 98579109, 45095283, 180910203, 55939499, 997706936, 261971407, 999195166, 145947106, 567291745, 569431679, 978577190, 983448246, 984846636, 838404643, 999867285, 993591647, 990898641, 331579022, 807759390, 665659126, 432093174, 268929681, 999379074, 998645580, 999461488, 260356043, 74385961, 771700311, 722719828, 451760353, 999731161, 994844701, 978737636, 999782196, 999422893, 456483200, 999714863, 999209916, 21133426, 845017106, 907547349, 985371891, 997313596, 5366277, 694432928, 868450377, 878753440, 895068253, 978567456, 974159806, 646374471, 988452066, 790725899, 993084481, 998784744, 780423005, 745685042, 989059656, 95001898, 3198176, 989631399, 990056721, 990054104, 928447114, 994383561, 997336380, 998714289, 975160938, 999086642, 993044460, 380219436, 996904335, 151709882, 989929560, 995422236, 204104049, 999916971, 983221644, 849457729, 864603453, 986370823, 709865992, 14957998, 644486157, 993833196, 985022526, 999875280, 920839265, 869131593, 997420673, 395885644, 980426176, 82613718, 255549100, 422356061, 985534549, 729039549, 994371600, 720272342, 336302222, 993001684, 7979909, 739388441, 998099616, 52401112, 563768817, 217856914, 998221799, 980077068, 420025310, 984878170, 955139248, 262251916, 174724950, 606730390, 996507696, 986097666, 14231461, 981403308, 995842156, 225927505, 585811879, 357176489, 685042464, 983416044, 992627628, 170745529, 994481671, 623329114, 972257389, 996257217, 999376389, 850561524, 70097560, 273555971, 999882246, 989799056, 998093172, 90904965, 975412828, 999957024, 998670255, 814682638, 998862862, 509468125, 989433141, 984123804, 61106638, 981097436, 990901054, 622328522, 995402604, 817311256, 918207109, 997896736, 163547710, 932797919, 109821719, 993770869, 325899731, 998536536, 381941750, 986979270, 620046352, 753357778, 984680760, 862191284, 992378088, 997422960, 998834280, 994219632, 999361458, 998377581, 33391697, 315489915, 855652378, 980744475, 659192336, 359613843, 795484009, 994511126, 216243363, 987294711, 995260172, 995767179, 755182865, 76122764, 449537043, 26597667, 609392724, 470115544, 990090375, 11010697, 973459331, 979417051, 385949313, 992194816, 230569718, 153430533, 988273661, 992333521, 997823157, 996451236, 692307686, 316432921, 509706883, 35082927, 999082986, 645151203, 54928323, 801347692, 428075298, 445388703, 982003542, 981342891, 778161872, 648623288, 30967248, 999656616, 997515467, 146364851, 5649317, 750869759, 382811233, 463183838, 901948149, 995055836, 993731603, 47519687, 548054278, 990211860, 215910690, 333192225, 989649276, 997834294, 213890, 798319012, 303098949, 40973, 17513853, 989703788, 990535409, 991843788, 975655986, 726319623, 565951029, 924843786, 216442491, 346615257, 552901792, 515494094, 6831134, 750789385, 994922684, 206787256, 990653220, 754208179, 523563025, 384234764, 992824812, 188812797, 996426367, 995882325, 96332647, 364611414, 381753644, 211284316, 26600930, 728381605, 995769195, 3808509, 999029650, 978503424, 988271596, 644561290, 608451205, 241186051, 754886869, 176263956, 990345786, 973045985, 423978765, 449236063, 990811406, 757127621, 983639958, 996646354, 992248634, 426335389, 672271167, 73854287, 983183998, 249051698, 994376481, 997354438, 990841383, 991836429, 990868890, 542474144, 25050714, 998491228, 988243039, 693801010, 718333930, 998701038, 556115644, 863266079, 996484612, 442734104, 207445116, 994731454, 343196444, 331012688, 29253273, 185999825, 452545120, 992627518, 701553320, 997874892, 12669370, 649959409, 994693366, 4741725, 294312537, 998549932, 999650264, 863121674, 969745192, 350710176, 992884668, 844639282, 125975177, 686817626, 853243184, 999337860, 2789881, 577801147, 714926927, 824841710, 994566228, 594719867, 463321442, 981503479, 979827096, 996891141, 877356402, 915950829, 999851418, 966626856, 568349538, 967773991, 318887120, 857178658, 997312196, 973526763, 997637036, 995421587, 574294615, 981108510, 72444302, 974952655, 946743827, 935326089, 990742296, 987705889, 944703847, 999743565, 983201348, 999304011, 988903344, 993546924, 404074461, 734765964, 989099801, 362906688, 997545624, 3671351, 999211063, 993317924, 268739467, 855938303, 999978930, 984085066, 997867248, 554386739, 997898796, 996789157, 990848236, 40425319, 984323652, 157519939, 781545162, 993542060, 975346947, 988371580, 995481162, 614109512, 805681331, 323984391, 798156239, 999708923, 980730713, 999502306, 981901280, 999332261, 999811366, 989156066, 996879632, 996866163, 297527069, 812128155, 985457004, 986160320, 949896449, 24619256, 355649254, 519030325, 991660653, 999972361, 986296486, 557254060, 997101990, 430556268, 992226582, 991541920, 999080051, 999390846, 978240907, 999349410, 985857636, 160663853, 463802371, 999141714, 999892976, 588099243, 782748450, 236572603, 994985304, 225582981, 325699127, 253643132, 574186350, 989845496, 985616780, 970609930, 997771919, 840163049, 746270829, 137880475, 10602261, 995548206, 986729196, 481696152, 529490554, 412927073, 996459996, 667063212, 992834600, 92631512, 988694442, 997240161, 888301167, 717535071, 996161718, 162781028, 711239550, 990115196, 996221956, 981348393, 669306611, 330591867, 80524560, 3365751, 997112004, 997041841, 76566836, 462692283, 991878354, 729113504, 999119879, 528884285, 976031018, 992690556, 994142076, 996947956, 990841556, 993729400, 323231405, 993422098, 581519481, 609631834, 434081883, 983839611, 5414031, 994017495, 993436427, 999356266, 979544524, 4588893, 992829996, 702485124, 823351873, 978423363, 998268617, 996763926, 996683052, 724637704, 711127895, 989587818, 235294167, 995968428, 845217121, 943627895, 999486153, 901840802, 985189242, 978823432, 996735208, 999653604, 131290990, 120452704, 997730661, 346301060, 987168388, 975489532, 903832049, 2266265, 273747, 415731148, 577419708, 820017048, 111869565, 559093953, 144010890, 399043646, 999846012, 970093020, 828301850, 993267437, 997870446, 995161962, 997606988, 450386629, 998770518, 999492969, 996795452, 473471979, 979861036, 930460779, 981392466, 855602544, 998584680, 992197702, 982221228, 982852899, 993526926, 681587223, 996895224, 352007960, 12160582, 979153356, 999300516, 997207446, 23821873, 990340278, 555176156, 997138028, 497549055, 983250484, 991175376, 738332456, 223079914, 88088203, 998234526, 455911571, 398013093, 995399198, 53899588, 911222447, 976281836, 988260630, 347104193, 998774726, 86683839, 691362069, 519932594, 449155124, 538844399, 512928269, 982374628, 977596608, 998619073, 474468748, 998775988, 146215342, 993628836, 669645654, 995166138, 821331568, 33681833, 609837, 514224925, 978740046, 813845593, 706096885, 171832522, 989744796, 986991566, 993742092, 551709141, 992303085, 508888082, 989334732, 356153672, 903714516, 611968438, 999786198, 998602776, 672006732, 979053492, 259461051, 759152443, 999702546, 107058010, 373443581, 962446599, 994676232, 904995662, 328550368, 999928716, 413101896, 999766065, 984455785, 869499782, 280870425, 993917946, 635319006, 985557626, 991809264, 716125460, 208355667, 992487976, 489077822, 392243910, 304856561, 110889592, 989784671, 761381987, 999299532, 26253841, 212321702, 981459798, 589413136, 113314274, 221327994, 513931422, 994087914, 997637980, 139581561, 16555229, 995400186, 996713575, 260112912, 619871138, 971464026, 207256018, 65792813, 150498718, 263365959, 984765376, 32918906, 181960605, 503360902, 176851563, 990414036, 411559115, 984961280, 976892030, 515383013, 975180082, 984448704, 534944490, 808696596, 112511261, 297582900, 4124979, 992399770, 482289569, 506347597, 992843437, 985956036, 443329911, 767930599, 2938441, 698915530, 47441040, 362827871, 845988111, 249864383, 311854286, 991039959, 21070142, 849495617, 159333444, 998905824, 901082029, 44819, 993945809, 990323344, 535555304, 17376212, 977733156, 920576953, 989126373, 999607884, 998357438, 995701616, 980074924, 900247947, 991267334, 986114364, 591927551, 258860258, 986604282, 660272915, 996872202, 270834147, 987318453, 555828977, 497492334, 633590410, 887532224, 142144118, 544869624, 183039694, 994982666, 713929992, 144846426, 374249030, 710177912, 425786041, 121899553, 740373689, 997138264, 987626918, 996487860, 998476476, 991331576, 984200192, 583954161, 466712398, 629493811, 997625344, 991465800, 984514870, 992400750, 36351984, 32984004, 986386013, 458338250, 553038423, 1481562, 986672876, 135529076, 788793399, 182155542, 991280246, 425980779, 305134142, 129352761, 254026553, 471475721, 972965718, 520527235, 997403529, 930820784, 237204660, 994894728, 995879631, 995458626, 993619806, 975716067, 999917292, 905133588, 988187436, 18227291, 992849638, 998377488, 994079340, 627016252, 987877767, 982231914, 994534464, 986286048, 997773924, 310231765, 55012830, 999226566, 996691106, 992352590, 990144358, 3708349, 796328120, 590845891, 993639036, 279808897, 997847124, 233537160, 998473909, 988626363, 107938156, 999128526, 992196661, 990416816, 978428808, 882300186, 489921614, 656700242, 976231029, 250868272, 992108011, 996692932, 264465712, 724711420, 975287072, 10713815, 2472103, 253235993, 57677309, 15157956, 223457512, 12011746, 996908188, 738351662, 736279227, 999154185, 987381313, 999224376, 42748891, 506249390, 993113923, 990994036, 554809132, 757610153, 960512350, 586856931, 112561148, 175803290, 980706479, 156137191, 861734251, 202577011, 982961292, 5290918, 992172897, 169470986, 15788569, 605888582, 557052881, 434612376, 981531258, 297573982, 867534980, 751415774, 631684820, 999576286, 448826813, 18665175, 194171177, 996807228, 995031336, 727861684, 618132317, 65353161, 227280330, 793234119, 632150553, 942846198, 997916350, 41611919, 989124437, 201937208, 884019771, 993245290, 725226891, 482079417, 986700846, 4443411, 640339175, 316462355, 818769474, 545327505, 575549495, 277609949, 428927393, 335931361, 998698948, 995874411, 995727354, 445486655, 660837091, 993014415, 11027751, 368527478, 287454814, 334780945, 593560803, 856510656, 983985471, 377004344, 494547003, 993415380, 997368924, 588389381, 988722578, 997303596, 724782977, 436241643, 79048625, 827148659, 994436376, 903716730, 874676522, 121456317, 992710202, 995077626, 348984657, 981036552, 702863887, 995930586, 187017283, 753970076, 994219018, 999520986, 614098625, 510042462, 139739440, 549216110, 978411828, 990843236, 983939116, 15082213, 974887642, 18770717, 399253258, 341805925, 403046472, 972300456, 73466885, 994736810, 999681308, 754171460, 992214252, 994182556, 198371934, 988180956, 980842790, 994142571, 925416948, 990960084, 378020850, 598020316, 187985132, 598853014, 507800391, 999711321, 997558526, 341751536, 997216860, 995648406, 114106527, 191114568, 78013902, 996496108, 988612882, 178718111, 442245751, 984430918, 5518919, 908594630, 987601476, 997782267, 477297599, 995328996, 847628444, 988919892, 999355992, 361216341, 399528132, 930317547, 975349740, 679447368, 905964829, 42425, 999933136, 793299038, 585620865, 633200876, 999959762, 17752432, 723570876, 496207544, 168190956, 392696780, 229, 992228427, 996800208, 997578000, 995230597, 994769556, 8184982, 991205036, 999603333, 998913423, 976237806, 867669543, 941555156, 314597313, 4841732, 763048078, 173135067, 16857116, 949493940, 994358121, 1580745, 987901236, 989882964, 988374606, 290124812, 266782743, 999753936, 984840385, 999339936, 538643429, 988751766, 946661718, 989308800, 997466836, 998741589, 998042766, 989025388, 983429486, 989857660, 944105461, 529545859, 999915613, 281013425, 571261967, 996318498, 306138830, 992403504, 416199332, 981549903, 953009299, 302908870, 937388754, 970490202, 832288778, 778563063, 12183319, 12052001, 977747478, 999830964, 992875188, 601038554, 425578709, 178817026, 42731909, 601262656, 993045136, 996554696, 650236065, 995363026, 995414012, 995440236, 448760987, 996754422, 466623419, 794021192, 802438930, 974625118, 626830415, 994780296, 992763756, 992601286, 692410527, 469130490, 803556994, 999319724, 928329366, 474150307, 999258066, 995548996, 127878724, 984775692, 336973184, 533297764, 995966697, 927738761, 999406884, 449200672, 975466081, 483852517, 261912214, 339347265, 925508569, 779907616, 1163641, 19290944, 994470771, 986478079, 786397507, 782555236, 996249476, 987208536, 497363009, 542275611, 216558942, 969432626, 322949054, 243076346, 999998616, 554947506, 989750700, 746160994, 554248773, 453508063, 117809191, 997084848, 916945761, 125899146, 32280435, 6798325, 999948942, 976940016, 936700854, 182677491, 977893824, 996995136, 997331657, 990987916, 983773798, 990662151, 985029654, 30932782, 943614421, 860242508, 990290096, 993508588, 533690608, 646969009, 991589578, 793066189, 985406748, 866133490, 13824484, 8390989, 999411044, 998844892, 874963139, 619853262, 573517051, 686451925, 984574724, 94717776, 545609123, 999023016, 992364175, 125471997, 983068908, 325633571, 999026736, 530309046, 629014569, 445137016, 6645543, 414765385, 998070876, 93542746, 1157164, 987948776, 361717950, 474394882, 971754888, 59365973, 258295276, 454968437, 159425594, 942606933, 997431029, 980863820, 993362068, 996788599, 706992485, 759890460, 12244250, 955580119, 632797370, 971426175, 998464086, 790329008, 839242114, 929207209, 696569822, 997167855, 912849423, 105426959, 159013470, 192532774, 997269617, 378569127, 619923691, 976859821, 979196736, 236993354, 496894445, 996691221, 997472136, 992258040, 145564640, 991698089, 981088637, 328761836, 809369209, 991638236, 785472824, 983155646, 13191567, 848784470, 999599108, 994236480, 213466366, 988211287, 913994194, 429993403, 536681088, 592125571, 987908695, 413981000, 986080551, 980332657, 952458964, 778658, 621421504, 487725195, 313126791, 453778341, 634632662, 951230714, 981585683, 79795282, 999869743, 4024852, 191860681, 977193732, 996630429, 999741392, 335714965, 998801769, 888017566, 996809052, 983711964, 997703262, 229417386, 596114259, 791876636, 997758440, 994844240, 999468666, 748073350, 999014636, 603427414, 587634887, 995120086, 987816988, 744259416, 999963876, 203489935, 240750736, 985181705, 992411980, 995641847, 996774996, 994937052, 608311450, 474713027, 799517292, 58166779, 995251324, 498417603, 740694722, 392610455, 974403336, 285848606, 453145563, 997330812, 994976252, 991922930, 586125689, 200949614, 984726616, 625966585, 480051895, 981887160, 200468664, 248765173, 995640384, 204500843, 999356175, 995883452, 324305999, 992940225, 998622243, 936057742, 65681500, 914365882, 978510543, 244896854, 994967478, 988750296, 863522624, 988233880, 619672815, 37506991, 532606910, 49802377, 402961540, 9786712, 682344422, 997901256, 497211653, 445394433, 245545958, 52719580, 996997740, 997355436, 178514255, 556293650, 994164300, 867159520, 60340841, 136251212, 996598652, 5488740, 130259522, 412374972, 871416988, 163629539, 570243323, 987929700, 15258455, 996526236, 930296420, 744336667, 173813841, 777794913, 551022823, 174003394, 999358779, 979722516, 31203366, 998296373, 907169462, 997700064, 162413924, 16682970, 996381936, 714388214, 726865792, 990544306, 997106008, 208401656, 804356164, 547808664, 306244526, 523273024, 69168001, 999705972, 786212781, 998548104, 110502527, 990945210, 753283694, 66737262, 624307090, 34865528, 980545925, 999555968, 798823925, 140549472, 697333879, 995297571, 125591712, 980566485, 993406775, 876988340, 991192210, 123395993, 999560853, 875229692, 268806806, 464919419, 712549341, 733874096, 587100793, 588680217, 490627625, 995847780, 248096271, 110387941, 984694252, 997903096, 991393816, 590084248, 743374049, 989109510, 731799395, 135492829, 993567957, 350555602, 990320346, 936991856, 875385676, 179615425, 394594806, 259934524, 995741436, 709635994, 996866651, 976662204, 991418124, 979274900, 833888451, 265114740, 988023936, 148366107, 751587577, 472123395, 987047736, 983844973, 984932952, 269019622, 995745229, 113623941, 999102216, 494646422, 523958734, 404170745, 49172049, 296526400, 995665528, 992896556, 158637285, 747426732, 980945955, 18961378, 13470304, 985006920, 95446130, 835997987, 997178375, 237608170, 289049271, 993330898, 997042386, 994321953, 280818221, 963475702, 314904603, 415253181, 980878721, 783162766, 408251136, 229945553, 800363467, 131404233, 967523413, 998905148, 996215726, 1385805, 991848906, 895225430, 579216855, 837980744, 992655594, 995688304, 998773618, 493353239, 983971670, 980617964, 994668420, 992117079, 981615936, 117692760, 990715527, 706164044, 133455236, 999480180, 989705689, 369279756, 994994291, 856152157, 995212401, 274520212, 726910763, 980002294, 768665956, 997116132, 823954317, 759813745, 82405, 282174383, 985286388, 742459729, 931783227, 182139934, 44044095, 910876228, 536938321, 58773757, 682118602, 986404991, 935804956, 415374219, 149859518, 980309244, 930562263, 766283047, 996205404, 207911169, 983530760, 449675589, 980028102, 749374820, 968223579, 993774051, 995926131, 659141928, 962486980, 982397355, 990679853, 692535361, 353172266, 410641009, 984805186, 182120537, 994029944, 989765766, 758050329, 890195595, 998471796, 999347661, 420415983, 712589, 978572268, 990866036, 997328361, 997141116, 999919044, 998253491, 2907433, 204248087, 692078063, 996491297, 336703606, 503884342, 998986474, 3498054, 982927074, 816344538, 996664976, 800981006, 984428018, 794498995, 984495124, 215737330, 183889080, 721340567, 883313605, 869613356, 542768161, 993786809, 160644989, 630956437, 999891851, 994962356, 688718730, 627121903, 457717644, 545263325, 366605043, 425163609, 5541562, 77775036, 979225026, 938282052, 60906653, 274135347, 999719039, 997468722, 999271716, 844508677, 995725220, 144493027, 369343816, 146896656, 78879949, 871694290, 911912411, 904184620, 999711858, 984385085, 996360402, 914444620, 992270236, 551378265, 268994397, 171820790, 995296638, 996933345, 985781217, 370350990, 999998535, 995271486, 374801611, 978432690, 449311394, 456367999, 323253084, 996498156, 535107888, 992465841, 536276079, 697134248, 324194666, 604500100, 235533908, 332754418, 995947793, 940056621, 853002347, 997851243, 871721004, 724483205, 984352058, 998605590, 997911364, 991066076, 997006476, 995099187, 280276896, 437094870, 998580789, 14840516, 524816034, 602719509, 106863349, 999249076, 955629856, 998851296, 894243860, 575838452, 997233043, 986199960, 666759679, 979694472, 986887908, 988098003, 87354837, 958101919, 991684894, 11610163, 605351269, 993047520, 38142415, 993574866, 4004311, 138324830, 976882646, 470801769, 996863625, 988083005, 993785772, 586831878, 265398959, 830659029, 988984236, 485831842, 993785916, 356465764, 991614636, 95844336, 993785852, 997830816, 990391021, 987861634, 999803696, 708285194, 27961795, 698155286, 999960988, 990760236, 994784676, 32471239, 996365316, 330319965, 697037005, 2886229, 997440566, 59699938, 28280949, 999872394, 965588492, 988492764, 303204297, 405322466, 115106628, 180267886, 997413736, 997633014, 996880746, 990743436, 999251308, 990947961, 995125701, 991427720, 288074300, 102086097, 200057313, 669876072, 992018136, 509338963, 456238219, 146298457, 898028717, 993449923, 998263331, 4693597, 954006702, 998940084, 988778844, 998698856, 3617568, 110222347, 95825149, 413987279, 634029485, 987824046, 530871153, 703045607, 108795106, 11397082, 987619708, 16507349, 995704996, 983448636, 995707167, 29901851, 990803712, 136733990, 292890258, 601585297, 994604592, 578758714, 993104316, 994053610, 372915032, 980958186, 999116796, 997858785, 998276133, 472079081, 977157334, 389228914, 994286379, 942409973, 384663113, 786021714, 225186869, 605464363, 457724701, 368944263, 16388433, 999840375, 343356053, 999016564, 235505345, 40890842, 856883128, 19539673, 391903007, 106232091, 273881219, 992847144, 1173349, 993906756, 898580067, 61741061, 993150792, 400248058, 704146263, 529463640, 991647028, 632489088, 218247486, 981685556, 307445724, 607191380, 997465596, 990098526, 792079451, 872597838, 491902360, 997255005, 138796332, 991637116, 204077061, 969825244, 997196462, 990365116, 983949813, 201575891, 997331784, 990892659, 978038361, 985536857, 533031821, 111010129, 851528687, 21630857, 139983869, 313325770, 997334466, 995888036, 983675376, 264062414, 78810674, 986243845, 901042419, 600304894, 998897585, 983267676, 989214958, 535829240, 405407967, 996586986, 997806366, 836016264, 653536860, 582388020, 495214608, 998060604, 994701101, 977621751, 973645908, 998984452, 999195978, 93996613, 192897641, 678226443, 580124891, 995918592, 998397986, 985555693, 998161564, 25388369, 982680824, 990398186, 296007739, 441018793, 291020335, 15374987, 378136896, 626248595, 996268211, 995534211, 993872888, 993827156, 12195181, 194111411, 971435600, 585207721, 911424986, 751870574, 485412202, 997622476, 749559776, 203567631, 987289857, 714288723, 814052457, 628640216, 666185110, 354123618, 398855288, 760964114, 997625760, 992359020, 209754636, 995987892, 946717712, 988633668, 114263617, 999305292, 19466373, 344718017, 16932529, 321975066, 989542074, 864980516, 879080646, 993011961, 998854194, 995738506, 687390032, 122871130, 882754412, 998674494, 974560393, 985418112, 998037100, 975963036, 255202388, 92833512, 856250217, 576328134, 2366736, 369603030, 899680870, 996729584, 268399385, 351556600, 258157564, 999579276, 984880364, 379543005, 9047110, 16889420, 974841606, 983078508, 996815628, 988542321, 5508593, 999819936, 363337142, 65820395, 597624770, 761909803, 150626193, 997084158, 846858437, 216569, 971606522, 990450306, 197896854, 911518500 }
{1, 1000000, 496500, 501329845, 585614808, 130274098, 461817681, 548557144, 382506833, 108996876, 897992954, 47633277, 719296700, 708700744, 75104999, 679612089, 316745696, 965030822, 303983650, 822236512, 524681737, 713887791, 245305419, 184204860, 960580299, 792573504, 831965737, 853269932, 194874667, 412876214, 885939386, 670876569, 442846854, 870227275, 27264505, 465155714, 289293258, 554778748, 346768230, 857250865, 360406974, 864725479, 35039183, 766525323, 995133223, 492178137, 131722632, 704844929, 702796244, 196230791, 126234124, 854735519, 827185434, 123452019, 469768271, 330167153, 873059736, 276015295, 486021423, 177860710, 722976927, 512087588, 994708834, 315838902, 433431480, 132215205, 649807293, 369683831, 936414689, 719849084, 169006482, 109218334, 903599027, 984044683, 721242146, 629236533, 119749535, 669869315, 780284373, 389475011, 549148314, 66635286, 728767166, 747354118, 890510386, 27656332, 942944113, 40317045, 797954155, 444328482, 376749228, 950812024, 978172431, 216508829, 790971736, 403664726, 842645484, 756803547, 986693297, 197261587, 440608065, 81631496, 263976575, 217674278, 661461953, 549345540, 619941305, 865586281, 103495050, 902783302, 696242259, 262730263, 727806799, 92738036, 687468800, 939571072, 869646077, 633044192, 239967101, 867783307, 618036318, 970257030, 943222945, 835551444, 375056327, 518810150, 37476572, 464507358, 868867898, 86619552, 413561991, 232355989, 783330474, 766515468, 411945500, 775423563, 783916529, 519064366, 160284247, 506652438, 230846990, 290801680, 825583768, 17863996, 658135720, 16950679, 788737077, 700788919, 904121928, 260696460, 702065394, 378513890, 554591547, 823087393, 860370254, 70445251, 529944896, 525528449, 784887451, 125872912, 298706073, 278492035, 266598613, 640923871, 679995023, 913709580, 549811020, 370498794, 918604203, 376885307, 130306742, 98619404, 990573080, 329420624, 611749416, 484612443, 796773654, 940744779, 380346440, 186762091, 519416450, 830725879, 174136436, 523209528, 696332226, 351429122, 881050880, 989246973, 990431399, 956159396, 779148734, 115230077, 633872024, 503247271, 171863509, 84046952, 868036584, 720089456, 262882067, 333550749, 237873384, 44914258, 819865778, 405594394, 181882702, 542208251, 150968439, 268829455, 975436961, 581808331, 72137349, 613407810, 511829506, 963525037, 341294442, 863619124, 965559384, 38729, 373872236, 768222424, 184005041, 495493903, 407547886, 410986815, 475184962, 626933979, 160626242, 23627199, 867137440, 619114329, 877825858, 535121692, 548285809, 394825919, 839657584, 737227684, 816574564, 475016068, 504476008, 506574278, 293394466, 108397978, 203878735, 925376276, 447126187, 516485694, 433827900, 638610423, 338114826, 931078102, 347316926, 160430290, 765264378, 106342160, 766477574, 575325782, 629840724, 970463346, 192012280, 824348642, 820796495, 113408400, 192080974, 687935381, 569136926, 966337290, 326930172, 652241734, 478418551, 945593504, 953170862, 479210917, 937091985, 673522560, 48524127, 933863133, 258609894, 570573803, 941948713, 14669375, 508208081, 936708965, 121930003, 932918076, 289025160, 290598848, 854799476, 769046115, 695960515, 41779112, 742644505, 216603233, 393105210, 211213530, 988024874, 939988603, 202781027, 224387805, 562423548, 592878343, 469222678, 794654268, 208322129, 392209512, 383423323, 991740606, 737023796, 656192157, 668035412, 52802142, 969154455, 898059008, 697534350, 177270166, 348836933, 667140421, 227429693, 563567157, 638593553, 602112562, 383527246, 220282561, 720218169, 659344880, 752425813, 204680905, 442241043, 944547068, 96617419, 517427727, 792186395, 391464809, 928251378, 672409592, 974066205, 774316069, 250734438, 858810017, 55307287, 942776010, 801201013, 327057967, 11615425, 843806904, 663078339, 824170605, 214757361, 361322048, 157657605, 686586008, 283998751, 413765299, 667321371, 957291383, 553634176, 902141220, 226582796, 843051487, 936205745, 988771688, 514002382, 335037317, 538663647, 113276565, 86720716, 295386187, 943803258, 156948959, 381774039, 300686084, 617574845, 215914564, 295458285, 277747743, 97591330, 368620063, 230224578, 816739201, 488752437, 63756375, 296624288, 512261422, 224171862, 882898845, 514780762, 85598568, 284119837, 974104057, 410113629, 181005380, 782469566, 23051169, 19602834, 100249790, 575373061, 181544886, 967433443, 226417229, 489689091, 933457060, 844956790, 817494610, 260275070, 559293907, 223601826, 596763270, 745661363, 591628549, 766878899, 176971587, 884568180, 790987737, 226952196, 503718246, 506602621, 54415417, 503720100, 229732602, 834865322, 850697915, 313599168, 339977172, 280491515, 117066523, 209722990, 606403614, 250545099, 451690402, 48783079, 436246818, 715718253, 786043430, 290149499, 450861665, 700738896, 140115711, 920659092, 677734259, 583159972, 575155010, 424477592, 944846020, 756956427, 767225866, 375554414, 889600612, 381811715, 494891941, 498183795, 104187008, 978488217, 903227850, 899032922, 416651201, 915289861, 763065451, 719553673, 444183799, 300527659, 186462463, 98293470, 924103627, 227562760, 581115261, 577119004, 498798079, 890042927, 394534591, 448469165, 833775319, 139515670, 252132987, 401203178, 996663918, 22658906, 244664094, 651469817, 408860252, 333352695, 910236521, 171089549, 275982312, 385974654, 163855640, 173297121, 871369913, 748579347, 717022829, 163620296, 316058131, 810331867, 725927821, 709702407, 556272208, 98395793, 830118755, 778612300, 347494363, 259732005, 705712368, 457327165, 384706676, 453891242, 576804021, 18866221, 400492305, 501290779, 388090829, 983088429, 89505, 68008751, 387108203, 12125482, 652656012, 736543522, 637925066, 504165638, 20002205, 306605674, 902217794, 614623814, 506483530, 891657754, 954253021, 553122088, 107963603, 417352330, 125027998, 897743112, 434839318, 846329033, 164240763, 903393154, 944641019, 881535973, 541539916, 533991469, 839415200, 291308211, 496606357, 202289699, 489686017, 896015013, 131764961, 331932538, 6210497, 29756325, 633677570, 144065270, 850427943, 272142157, 947418613, 897810774, 202605896, 519304594, 522141068, 866821238, 745000731, 120630685, 234709872, 719692572, 359405819, 518733670, 961048638, 509040107, 81855789, 200132307, 955674349, 862475170, 927863379, 135131684, 176084761, 745003678, 270958861, 31695424, 110525550, 120561603, 883906623, 589955482, 61248573, 422282058, 169601427, 156308285, 844959806, 394164825, 510271427, 190713016, 613361381, 290883917, 183081825, 586590796, 1821512, 641687993, 205455671, 988629209, 227510436, 300143670, 223337561, 275356192, 960903905, 421500656, 717129112, 908981493, 339417949, 95054721, 939338480, 467639439, 833946302, 759698911, 717453337, 415265767, 532660394, 161284146, 260172816, 78255819, 702373908, 673725286, 870349732, 670448947, 318180384, 605139256, 898891083, 657932332, 762275834, 173946955, 521855843, 209415624, 568777297, 494187764, 677381598, 366208632, 864341610, 525182254, 258753288, 284670108, 613754224, 176435156, 44775548, 499460060, 419233262, 769806836, 699074095, 775035218, 459916109, 999975619, 826134266, 563755675, 234537114, 556500607, 244836433, 963037496, 688797688, 434117575, 113417253, 141202228, 816574389, 264828328, 593525774, 298581363, 488676000, 528132274, 748105191, 937837295, 124139890, 798775970, 457740836, 477670549, 319432411, 641168171, 84098627, 616415881, 807711601, 416656281, 467115892, 819843889, 546894157, 934998681, 93938703, 980925402, 32427439, 399324108, 594233869, 674792533, 507139531, 666899026, 708491527, 221035133, 522143378, 256653623, 497775276, 606387263, 493763244, 977675867, 470794764, 558481489, 515834983, 847896350, 337051693, 196639112, 165749304, 344301960, 719520970, 148963158, 54642472, 481390977, 815471459, 132989283, 733808213, 699307661, 278231282, 822080938, 784185429, 602325060, 846838128, 212212954, 179844622, 30690568, 374964859, 181414159, 146425076, 516509789, 232965934, 697779689, 921171626, 782702632, 497275518, 867508360, 79901334, 791193346, 465399447, 369910389, 533251970, 934841458, 860608053, 145978320, 734399473, 104941139, 451809475, 680971124, 3483941, 456073380, 862257347, 547698384, 602890776, 919490065, 254674677, 222302529, 923156430, 528889395, 643705101, 23563295, 354182787, 557355685, 145632510, 64105533, 954832350, 977578052, 271079782, 628649482, 650813693, 378751738, 954396426, 126356804, 592276614, 663551088, 985996562, 439162294, 877972547, 271002250, 222157112, 246924941, 91318962, 29716618, 356098527, 525370375, 36491335, 975134035, 435885238, 804680238, 428806402, 160664304, 861148265, 412499863, 756816964, 134826701, 542338481, 559709980, 226015955, 806708259, 603386521, 897443435, 432957040, 474799832, 654667423, 984537606, 476536760, 770428838, 130872726, 668380106, 595844257, 42675418, 185672934, 344000356, 170825089, 64613809, 878050030, 998363308, 244177178, 737620160, 556537451, 558517914, 946667264, 138679962, 339353717, 670209031, 66403250, 157666431, 863557945, 442565331, 871859606, 632800577, 292216301, 986165000, 737091733, 877658452, 710908753, 207244055, 84851632, 379735744, 423744042, 6425543, 186887386, 690130577, 631144282, 288392703, 927822296, 969613794, 664391991, 267761778, 755348941, 394939299, 744130914, 606710792, 883197197, 994786742, 502406397, 474264595, 166289093, 173236978, 937028586, 525670150, 818662834, 347386247, 676064322, 973273746, 357235948, 781647734, 115430627, 572762503, 339936390, 681218472, 475991124, 145440361, 811144823, 423480858, 193259020, 612977469, 428859680, 988948107, 900894734, 442161573, 229909086, 845625003, 766523360, 705628358, 579895713, 2095165, 772343469, 795428499, 331978628, 828190624, 131502132, 849410757, 989974505, 515201730, 91628565, 222611424, 434617561, 588809278, 464200526, 40089405, 968868045, 611015444, 586845743, 673618220, 471688049, 716210404, 217937394, 34337950, 923010445, 472827353, 498178807, 676883705, 404420468, 775873425, 568452912, 481013327, 958124034, 997623449, 627576669, 202641889, 567444588, 945138927, 142162742, 348640400, 566138530, 540782153, 740738051, 70796431, 852325730, 791488907, 197411287, 702334626, 20850196, 782046122, 940586331, 308237945, 797045204, 835850970, 682593711, 638332056, 195503205, 574102477, 460495560, 860475985, 715141716, 399486454, 670016143, 515316116, 368826564, 135889137, 573766238, 952755389, 277777812, 596104260, 408904843, 937664825, 80092552, 808046575, 105392636, 22203709, 662296342, 127229242, 942514052, 749676075, 878039016, 181559185, 88397457, 972594243, 819332746, 150709481, 688792830, 420007965, 554279825, 70147072, 832074968, 384151133, 722775449, 175437816, 759151346, 876884851, 865683729, 703170565, 324563183, 361758985, 230627239, 45827752, 632748359, 628845130, 870887045, 851642884, 480500512, 864489684, 464115536, 669685401, 439169280, 522409139, 538433218, 416698760, 786138200, 244127653, 130245456, 518649456, 470101115, 60303371, 201547730, 227163814, 905107381, 646102536, 341698815, 952019998, 739515338, 547762934, 225292836, 872273543, 370243835, 193964634, 401263711, 701027968, 771210570, 390696398, 581465074, 396743491, 820706180, 60385914, 692938358, 402689455, 556716538, 236481662, 911273925, 760445003, 620485983, 412171269, 596623095, 683573691, 100502625, 941207379, 497898056, 680970013, 355298479, 685868854, 918073487, 414974206, 80139659, 80780884, 72761844, 607527264, 658911247, 814256795, 614869962, 918694558, 255553350, 549210565, 422968404, 859849132, 159825714, 136928476, 78647983, 978235609, 160430633, 49059286, 323879375, 260025300, 181255777, 895332959, 479227742, 535039982, 741814002, 361200421, 625958179, 836309557, 587613782, 260512317, 347607649, 995616425, 802746598, 412302802, 492705037, 61881002, 568368354, 479049084, 673296740, 297088184, 487032541, 420812126, 99192153, 878363502, 537729354, 333875387, 804213588, 975157343, 888489520, 131944713, 795301841, 974789495, 131915018, 83289476, 45431987, 136184832, 380634046, 912986804, 404904693, 57178106, 931375852, 697535890, 162457244, 348500330, 547558569, 993768517, 335758363, 616590996, 776227767, 226146433, 794198097, 298324262, 524738620, 147865531, 404427333, 658947915, 325001415, 696337673, 153247612, 83539064, 354965123, 540201582, 555451251, 58214201, 730570932, 28324048, 689947119, 959919994, 131625550, 777578745, 132417314, 699144420, 724585645, 912021235, 216704030, 54870403, 891932019, 590900256, 872339416, 180946541, 176887389, 15216879, 366886011, 437600272, 617976281, 90571382, 435098572, 533016671, 17897868, 279869668, 191387471, 593214737, 931199200, 104863280, 751863932, 956212595, 860889812, 943986163, 55949467, 327289931, 780775421, 316278132, 734962249, 647240704, 942988435, 938358557, 659908124, 61139305, 241770014, 444641863, 144129735, 506525754, 406485165, 784443008, 187636800, 88694640, 92579601, 349809097, 786918334, 204986300, 878992123, 150268725, 572243400, 443722356, 730867313, 598053950, 494295660, 135662530, 889279974, 88564569, 148393519, 323898077, 88841198, 281571050, 721516955, 402816599, 412317016, 731122497, 13786532, 409543490, 769145575, 361469619, 780667895, 488449964, 657974111, 422497711, 288324551, 550992812, 252800788, 915130605, 94046577, 314061852, 590599795, 578737608, 424673234, 220361579, 405012888, 831044938, 360742617, 607408619, 500995798, 880402602, 475312916, 832814640, 946864527, 220334491, 857349833, 648731883, 95308057, 662681591, 954020877, 615324416, 91062928, 735560855, 218061391, 187884538, 799616489, 20206765, 954354848, 301573978, 741388833, 63288107, 712788889, 927648753, 141134456, 825620547, 298812228, 844467144, 72393948, 849975475, 939591710, 898977592, 36397289, 693887783, 486302467, 18720185, 984790289, 307071555, 164441971, 728726371, 585458318, 37631402, 720577837, 315783916, 312122166, 602855729, 180436674, 994958005, 69546538, 600811955, 204496849, 297327199, 860352052, 223005054, 626940324, 415414859, 712919818, 798110449, 290061348, 774411823, 96193125, 85547864, 868624432, 111004894, 819605320, 852248751, 469864355, 638423986, 919642771, 87216692, 771313770, 810060113, 920603967, 307102625, 705681004, 812165391, 506899726, 497933153, 895981707, 915723909, 538037061, 56022836, 241390973, 377544057, 334403397, 117875053, 54206636, 28523184, 433770177, 357880842, 877502573, 665379324, 398935310, 768036768, 98476966, 773207478, 532615916, 133582722, 401249351, 795300436, 973444474, 661940088, 639641693, 420474885, 567870356, 242635919, 338233884, 696529215, 673475728, 810095075, 801951203, 620937943, 513429332, 660999140, 62841257, 244941970, 279736762, 348179185, 561502051, 312526335, 775701210, 580380771, 707825495, 325992706, 567265032, 222454943, 106292733, 301527857, 373398019, 977702649, 391210786, 314400438, 750476864, 712416736, 942870455, 346250911, 436848080, 116446069, 814783338, 306062653, 51436510, 782845607, 424751338, 6357972, 202644311, 609697877, 496137880, 131601743, 347064458, 737907018, 121348738, 67767650, 721652701, 163269470, 40784843, 883469583, 725795040, 118552767, 191643187, 137293182, 348090704, 983898612, 378460084, 172049649, 844224169, 730159726, 534142978, 160101496, 420462009, 831711045, 912710966, 504425809, 532287416, 111284920, 759739990, 825809832, 490960657, 768885925, 761339998, 922887312, 139320924, 367367702, 991337625, 615563962, 29645219, 511884347, 102088318, 972140563, 621221225, 331638627, 471712865, 328259313, 715661260, 346568577, 906775088, 931548867, 905011317, 747069773, 138503251, 774542255, 985942111, 59935458, 449602607, 168285741, 334437884, 848535441, 905688566, 157181350, 919157509, 539309503, 16091198, 825398814, 35063818, 774431294, 37864235, 250462477, 195994604, 570541164, 935717272, 691781667, 209317137, 118651603, 622577306, 300314737, 372743461, 735107751, 982982961, 936546140, 642732663, 333297655, 822969161, 659388594, 753444693, 498365, 642249016, 95126396, 510361042, 192312775, 840248818, 679567208, 754604969, 980121321, 737744794, 458446849, 324346176, 464670713, 9162166, 978477302, 716920511, 60000538, 900366637, 662997496, 153305729, 427618944, 755557065, 898211597, 501599484, 275905107, 387909990, 608810528, 321257822, 180425127, 922022519, 153104683, 738611388, 183818002, 15619465, 842812512, 945145850, 769571245, 638537366, 539240112, 580675209, 53244943, 623939647, 410574757, 711270506, 39414756, 951687938, 771282379, 593412181, 311131400, 456053803, 763635053, 277880802, 7321453, 914221197, 388631489, 694946788, 861217970, 903100798, 165105911, 16291132, 813729250, 147073870, 818571198, 69458572, 495726305, 649745011, 441361134, 72459878, 444534599, 299408819, 107224093, 451491235, 958096659, 802439606, 921109090, 168907916, 997074420, 775331496, 635873542, 673528804, 681715369, 643880202, 727416431, 938811777, 983631442, 571642767, 525447309, 338040051, 481317613, 480522897, 669546680, 923898789, 565062758, 572763574, 889651349, 564829012, 865461505, 739247090, 898163395, 539044480, 462761918, 85275711, 284006435, 954362429, 470116445, 805354173, 335314234, 869984123, 219627778, 900376714, 579301149, 708661761, 598617578, 466030181, 757973588, 615454662, 822643486, 239805540, 827829415, 21642376, 55787232, 649264583, 553156175, 200371882, 756036584, 996841528, 836496280, 617491154, 536750300, 967967992, 717324233, 485422173, 585380913, 966138681, 25925707, 74295938, 830963144, 862119418, 396072403, 249035431, 736336576, 552899566, 872680662, 927890422, 898934067, 979002422, 159657815, 155992084, 564572937, 659947558, 123557026, 358811147, 395932157, 514081579, 457855982, 183000282, 453500267, 913183456, 656918232, 148356757, 938484960, 460493652, 229985342, 904030853, 570286019, 575851932, 414865294, 151627506, 2973976, 500813857, 555440732, 671215404, 207232078, 849617703, 642810339, 911573750, 83505572, 889187870, 45554349, 667981104, 575019866, 379868312, 358570415, 442854313, 545690797, 151054903, 794220567, 960894584, 68127260, 960318374, 261357749, 147838262, 911589392, 103989107, 12893553, 567382751, 99948323, 866246417, 717641572, 266673776, 1247424, 807203769, 746067154, 830860317, 518051881, 361803947, 201883774, 624645863, 626863751, 398724808, 503122471, 799523270, 533918475, 268556232, 658380809, 351760596, 276997359, 150039930, 322124415, 742920164, 76384550, 292696541, 297164143, 885653943, 804285108, 502320929, 129742927, 540220347, 567582857, 851199797, 358704101, 603326254, 261543639, 378059426, 613460759, 653770180, 736710570, 487735116, 307816658, 858477344, 574218015, 513988534, 415501734, 165891338, 90870067, 933867251, 566971683, 364698596, 144203978, 178541583, 467365206, 349635114, 771886605, 761137721, 985400676, 201873229, 808803024, 758319962, 272053899, 399985786, 294231290, 565881353, 607211446, 532525464, 438693702, 764047102, 251083658, 576424082, 571785179, 704749798, 786857075, 506158529, 431145151, 750243950, 3252124, 461457003, 755851081, 993863645, 941589155, 377749108, 342885580, 871818355, 733381596, 220511766, 871947633, 264388848, 752079484, 166883404, 789058639, 491638118, 684696537, 682321660, 779028085, 280308825, 543089582, 418314644, 267926612, 543124488, 486752622, 655631521, 995846084, 390342100, 518908140, 948966373, 902944257, 806015069, 446357313, 183658318, 447838111, 40650569, 898789007, 236316203, 111408869, 735662936, 286609779, 66735127, 379398212, 894824771, 424786386, 184350049, 209668631, 67237760, 291078056, 686203427, 798264874, 949071129, 3367169, 785107702, 362597272, 613556738, 809797113, 578623937, 95862378, 463669509, 924952416, 26329744, 684225407, 527311807, 703968344, 522427420, 170955764, 838520728, 51960158, 769391208, 747497643, 465694395, 745988499, 405147691, 543577906, 866359913, 634250784, 249635034, 475368114, 223881560, 642609337, 822632697, 834652919, 923383608, 981102619, 301544202, 172112975, 958306838, 802305770, 145966958, 578285573, 986183264, 863835824, 495137204, 977429741, 677541961, 788180798, 600266168, 196029703, 35058834, 493680953, 250196564, 932237930, 27748499, 343950243, 324622768, 325387560, 652976199, 729761339, 3833802, 965312479, 857973856, 442586896, 233058480, 927945964, 263477585, 791772543, 210928445, 281027871, 143730092, 561948799, 379737425, 146258323, 561408682, 799027901, 579796199, 507073381, 357479353, 216403598, 49575737, 896244058, 530257351, 991121369, 993438335, 439094574, 704137863, 996809626, 10473104, 18003841, 440802466, 380290439, 526492496, 39033367, 617975032, 302897586, 434497420, 60016129, 64068864, 689479719, 389442006, 307196077, 365318624, 644904141, 622631761, 604395667, 892763510, 101927325, 286046725, 543131799, 955376696, 224414249, 864909393, 895535525, 652960314, 887050651, 796513369, 883926286, 856949965, 286026769, 274916438, 359371371, 291860753, 499771996, 134949171, 774128170, 247809471, 296031917, 460465712, 808525837, 757508164, 778842263, 141024766, 12276048, 888785436, 787784851, 254780152, 428060503, 548816531, 521375718, 945489363, 938824446, 966599904, 491799838, 892865021, 14350252, 24647453, 497588217, 614919778, 436326638, 783109616, 157978024, 316519375, 883685886, 96598258, 996762086, 230440398, 282598188, 944084311, 473205609, 799679535, 224707036, 594815304, 685398969, 495543761, 295647673, 518147971, 185151693, 498884742, 13336166, 348815158, 684194298, 795975288, 29968197, 932967764, 209271641, 734411189, 705860598, 600885487, 250412924, 624797420, 927841272, 949395408, 749545004, 176320909, 931008140, 615001918, 634904773, 401913379, 746205044, 247150762, 247392754, 716673029, 303099836, 308595762, 529595919, 282823538, 312513939, 826162980, 469251671, 227881406, 316640897, 712178927, 778373795, 886722000, 890620620, 53449091, 127406477, 688362220, 967434848, 54304887, 553892498, 731321262, 521641099, 173396571, 339942661, 413331107, 243719313, 758361003, 889124865, 735031580, 485063639, 811098034, 402234918, 750231537, 163915178, 800488037, 272024620, 504404947, 992808526, 246673978 }
{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737, 738, 739, 740, 741, 742, 743, 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, 754, 755, 756, 757, 758, 759, 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849, 850, 851, 852, 853, 854, 855, 856, 857, 858, 859, 860, 861, 862, 863, 864, 865, 866, 867, 868, 869, 870, 871, 872, 873, 874, 875, 876, 877, 878, 879, 880, 881, 882, 883, 884, 885, 886, 887, 888, 889, 890, 891, 892, 893, 894, 895, 896, 897, 898, 899, 900, 901, 902, 903, 904, 905, 906, 907, 908, 909, 910, 911, 912, 913, 914, 915, 916, 917, 918, 919, 920, 921, 922, 923, 924, 925, 926, 927, 928, 929, 930, 931, 932, 933, 934, 935, 936, 937, 938, 939, 940, 941, 942, 943, 944, 945, 946, 947, 948, 949, 950, 951, 952, 953, 954, 955, 956, 957, 958, 959, 960, 961, 962, 963, 964, 965, 966, 967, 968, 969, 970, 971, 972, 973, 974, 975, 976, 977, 978, 979, 980, 981, 982, 983, 984, 985, 986, 987, 988, 989, 990, 991, 992, 993, 994, 995, 996, 997, 998, 999, 1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, 1022, 1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046, 1047, 1048, 1049, 1050, 1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058, 1059, 1060, 1061, 1062, 1063, 1064, 1065, 1066, 1067, 1068, 1069, 1070, 1071, 1072, 1073, 1074, 1075, 1076, 1077, 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094, 1095, 1096, 1097, 1098, 1099, 1100, 1101, 1102, 1103, 1104, 1105, 1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126, 1127, 1128, 1129, 1130, 1131, 1132, 1133, 1134, 1135, 1136, 1137, 1138, 1139, 1140, 1141, 1142, 1143, 1144, 1145, 1146, 1147, 1148, 1149, 1150, 1151, 1152, 1153, 1154, 1155, 1156, 1157, 1158, 1159, 1160, 1161, 1162, 1163, 1164, 1165, 1166, 1167, 1168, 1169, 1170, 1171, 1172, 1173, 1174, 1175, 1176, 1177, 1178, 1179, 1180, 1181, 1182, 1183, 1184, 1185, 1186, 1187, 1188, 1189, 1190, 1191, 1192, 1193, 1194, 1195, 1196, 1197, 1198, 1199, 1200, 1201, 1202, 1203, 1204, 1205, 1206, 1207, 1208, 1209, 1210, 1211, 1212, 1213, 1214, 1215, 1216, 1217, 1218, 1219, 1220, 1221, 1222, 1223, 1224, 1225, 1226, 1227, 1228, 1229, 1230, 1231, 1232, 1233, 1234, 1235, 1236, 1237, 1238, 1239, 1240, 1241, 1242, 1243, 1244, 1245, 1246, 1247, 1248, 1249, 1250, 1251, 1252, 1253, 1254, 1255, 1256, 1257, 1258, 1259, 1260, 1261, 1262, 1263, 1264, 1265, 1266, 1267, 1268, 1269, 1270, 1271, 1272, 1273, 1274, 1275, 1276, 1277, 1278, 1279, 1280, 1281, 1282, 1283, 1284, 1285, 1286, 1287, 1288, 1289, 1290, 1291, 1292, 1293, 1294, 1295, 1296, 1297, 1298, 1299, 1300, 1301, 1302, 1303, 1304, 1305, 1306, 1307, 1308, 1309, 1310, 1311, 1312, 1313, 1314, 1315, 1316, 1317, 1318, 1319, 1320, 1321, 1322, 1323, 1324, 1325, 1326, 1327, 1328, 1329, 1330, 1331, 1332, 1333, 1334, 1335, 1336, 1337, 1338, 1339, 1340, 1341, 1342, 1343, 1344, 1345, 1346, 1347, 1348, 1349, 1350, 1351, 1352, 1353, 1354, 1355, 1356, 1357, 1358, 1359, 1360, 1361, 1362, 1363, 1364, 1365, 1366, 1367, 1368, 1369, 1370, 1371, 1372, 1373, 1374, 1375, 1376, 1377, 1378, 1379, 1380, 1381, 1382, 1383, 1384, 1385, 1386, 1387, 1388, 1389, 1390, 1391, 1392, 1393, 1394, 1395, 1396, 1397, 1398, 1399, 1400, 1401, 1402, 1403, 1404, 1405, 1406, 1407, 1408, 1409, 1410, 1411, 1412, 1413, 1414, 1415, 1416, 1417, 1418, 1419, 1420, 1421, 1422, 1423, 1424, 1425, 1426, 1427, 1428, 1429, 1430, 1431, 1432, 1433, 1434, 1435, 1436, 1437, 1438, 1439, 1440, 1441, 1442, 1443, 1444, 1445, 1446, 1447, 1448, 1449, 1450, 1451, 1452, 1453, 1454, 1455, 1456, 1457, 1458, 1459, 1460, 1461, 1462, 1463, 1464, 1465, 1466, 1467, 1468, 1469, 1470, 1471, 1472, 1473, 1474, 1475, 1476, 1477, 1478, 1479, 1480, 1481, 1482, 1483, 1484, 1485, 1486, 1487, 1488, 1489, 1490, 1491, 1492, 1493, 1494, 1495, 1496, 1497, 1498, 1499, 1500, 1501, 1502, 1503, 1504, 1505, 1506, 1507, 1508, 1509, 1510, 1511, 1512, 1513, 1514, 1515, 1516, 1517, 1518, 1519, 1520, 1521, 1522, 1523, 1524, 1525, 1526, 1527, 1528, 1529, 1530, 1531, 1532, 1533, 1534, 1535, 1536, 1537, 1538, 1539, 1540, 1541, 1542, 1543, 1544, 1545, 1546, 1547, 1548, 1549, 1550, 1551, 1552, 1553, 1554, 1555, 1556, 1557, 1558, 1559, 1560, 1561, 1562, 1563, 1564, 1565, 1566, 1567, 1568, 1569, 1570, 1571, 1572, 1573, 1574, 1575, 1576, 1577, 1578, 1579, 1580, 1581, 1582, 1583, 1584, 1585, 1586, 1587, 1588, 1589, 1590, 1591, 1592, 1593, 1594, 1595, 1596, 1597, 1598, 1599, 1600, 1601, 1602, 1603, 1604, 1605, 1606, 1607, 1608, 1609, 1610, 1611, 1612, 1613, 1614, 1615, 1616, 1617, 1618, 1619, 1620, 1621, 1622, 1623, 1624, 1625, 1626, 1627, 1628, 1629, 1630, 1631, 1632, 1633, 1634, 1635, 1636, 1637, 1638, 1639, 1640, 1641, 1642, 1643, 1644, 1645, 1646, 1647, 1648, 1649, 1650, 1651, 1652, 1653, 1654, 1655, 1656, 1657, 1658, 1659, 1660, 1661, 1662, 1663, 1664, 1665, 1666, 1667, 1668, 1669, 1670, 1671, 1672, 1673, 1674, 1675, 1676, 1677, 1678, 1679, 1680, 1681, 1682, 1683, 1684, 1685, 1686, 1687, 1688, 1689, 1690, 1691, 1692, 1693, 1694, 1695, 1696, 1697, 1698, 1699, 1700, 1701, 1702, 1703, 1704, 1705, 1706, 1707, 1708, 1709, 1710, 1711, 1712, 1713, 1714, 1715, 1716, 1717, 1718, 1719, 1720, 1721, 1722, 1723, 1724, 1725, 1726, 1727, 1728, 1729, 1730, 1731, 1732, 1733, 1734, 1735, 1736, 1737, 1738, 1739, 1740, 1741, 1742, 1743, 1744, 1745, 1746, 1747, 1748, 1749, 1750, 1751, 1752, 1753, 1754, 1755, 1756, 1757, 1758, 1759, 1760, 1761, 1762, 1763, 1764, 1765, 1766, 1767, 1768, 1769, 1770, 1771, 1772, 1773, 1774, 1775, 1776, 1777, 1778, 1779, 1780, 1781, 1782, 1783, 1784, 1785, 1786, 1787, 1788, 1789, 1790, 1791, 1792, 1793, 1794, 1795, 1796, 1797, 1798, 1799, 1800, 1801, 1802, 1803, 1804, 1805, 1806, 1807, 1808, 1809, 1810, 1811, 1812, 1813, 1814, 1815, 1816, 1817, 1818, 1819, 1820, 1821, 1822, 1823, 1824, 1825, 1826, 1827, 1828, 1829, 1830, 1831, 1832, 1833, 1834, 1835, 1836, 1837, 1838, 1839, 1840, 1841, 1842, 1843, 1844, 1845, 1846, 1847, 1848, 1849, 1850, 1851, 1852, 1853, 1854, 1855, 1856, 1857, 1858, 1859, 1860, 1861, 1862, 1863, 1864, 1865, 1866, 1867, 1868, 1869, 1870, 1871, 1872, 1873, 1874, 1875, 1876, 1877, 1878, 1879, 1880, 1881, 1882, 1883, 1884, 1885, 1886, 1887, 1888, 1889, 1890, 1891, 1892, 1893, 1894, 1895, 1896, 1897, 1898, 1899, 1900, 1901, 1902, 1903, 1904, 1905, 1906, 1907, 1908, 1909, 1910, 1911, 1912, 1913, 1914, 1915, 1916, 1917, 1918, 1919, 1920, 1921, 1922, 1923, 1924, 1925, 1926, 1927, 1928, 1929, 1930, 1931, 1932, 1933, 1934, 1935, 1936, 1937, 1938, 1939, 1940, 1941, 1942, 1943, 1944, 1945, 1946, 1947, 1948, 1949, 1950, 1951, 1952, 1953, 1954, 1955, 1956, 1957, 1958, 1959, 1960, 1961, 1962, 1963, 1964, 1965, 1966, 1967, 1968, 1969, 1970, 1971, 1972, 1973, 1974, 1975, 1976, 1977, 1978, 1979, 1980, 1981, 1982, 1983, 1984, 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999 }
{987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654, 987654 }
Returns: {910894985, 373591545, 249843006, 849969927, 17974606, 636227303, 428341866, 8273736, 548573404, 884702023, 759903557, 251556437, 40102297, 672695837, 414058468, 635431415, 920053533, 987940299, 216009943, 916118347, 43227647, 160495041, 825310590, 695644541, 88788166, 250331410, 469588670, 835575651, 933485887, 422414922, 630168133, 376729495, 569131715, 950529396, 108343107, 322394390, 412328779, 242005503, 618484206, 377810568, 227665883, 527812758, 578180114, 950463367, 904652472, 345061, 815140969, 481403574, 459088446, 436663040, 495563536, 952435768, 392637598, 136164366, 198466317, 267557687, 794232708, 870931316, 224339748, 141551767, 655724154, 425167063, 65904525, 765030263, 576997581, 810323428, 395844884, 721624707, 407701046, 342006212, 998782719, 684921082, 170461461, 790594802, 326005560, 874495878, 21435843, 901494725, 643883719, 706748008, 292494662, 186808523, 232847281, 41550896, 563083240, 451321103, 46642827, 334995184, 927134615, 767645994, 250682847, 31784909, 115465461, 609230820, 692915592, 177019152, 312879554, 927667562, 293661654, 421139325, 805272092, 684101282, 623739665, 520360366, 137183236, 244158751, 455946463, 816734069, 372713743, 255239617, 926597584, 622079518, 746211410, 279682816, 100118002, 73381811, 525010624, 113844220, 114929736, 5717157, 757953739, 302741306, 186122314, 435666364, 30544064, 856556325, 75875327, 136730068, 341340417, 568336510, 529653735, 884474765, 319809573, 201000702, 879231390, 753728686, 25148410, 171242032, 935615195, 670594274, 649370891, 789816066, 338099014, 380746292, 292753438, 684432849, 687010094, 513241291, 925960560, 473004987, 789643700, 517997227, 905755800, 369074749, 242155463, 510835799, 422196807, 732173344, 715242126, 734526141, 490841101, 258267396, 158623264, 686976569, 147018878, 514661732, 696712554, 783907489, 163747308, 387738937, 354021174, 124692156, 660258466, 534366852, 970995322, 387917494, 392835364, 968330299, 374304370, 459208548, 418961762, 630898794, 28063974, 173851538, 635838700, 174729511, 857219867, 816125455, 690436805, 368516150, 556743006, 720356974, 235039589, 172257969, 563412809, 697640979, 75081756, 959575224, 44378974, 618303102, 970161778, 558900006, 361449207, 70054539, 241760127, 757622553, 368563668, 367365219, 999360516, 555230453, 212747102, 74201555, 455035432, 905580477, 601648209, 524468992, 499095377, 510996574, 380391563, 129200017, 148393395, 2783109, 60817115, 174696, 709670271, 939742959, 54065943, 751721153, 463810501, 881087920, 421189834, 805564532, 926625148, 102126527, 192408186, 860208341, 132500278, 468206355, 708513579, 591076792, 766819929, 965937909, 688839584, 577487537, 160779845, 734447481, 952026740, 775285752, 638529212, 791550409, 179293317, 214744198, 308507853, 543481975, 109834202, 833299664, 897181711, 858115913, 340149695, 99278065, 814982928, 924809764, 152087843, 584438143, 785243495, 846227942, 87966150, 493947046, 389595720, 606801715, 385173893, 751771637, 780937600, 582546881, 531573043, 735341782, 436098169, 657519588, 876899357, 435709754, 828756279, 396978350, 533732991, 280427757, 857490862, 223539032, 209305, 262790942, 252884084, 320159226, 834261439, 169920353, 850556879, 161814958, 136674370, 240315284, 421830095, 29497495, 568704857, 376229346, 634222397, 805028688, 489407295, 388376986, 118343917, 223523437, 525179535, 678103126, 460979493, 131321012, 355758463, 497627417, 247546998, 364067135, 151204546, 127161115, 505746096, 384801338, 294804961, 905416759, 37185563, 556170336, 610284286, 66385020, 238396635, 190254630, 803290835, 180537349, 377272450, 585574355, 181747381, 288343729, 807454999, 647308520, 833433503, 821343681, 153042866, 609610651, 124376086, 647749215, 898569683, 728788133, 422385312, 339185630, 73806165, 9728434, 593483434, 233352789, 832086397, 783295873, 48485580, 91339763, 646271543, 482745511, 44336249, 827331737, 558355191, 549425269, 398251705, 129613362, 591224551, 220548046, 64015643, 999381160, 170673187, 854555428, 587608151, 180994737, 928707214, 524342966, 842562294, 1576513, 59219961, 982842958, 825930279, 734300115, 444831910, 55923662, 777499567, 51856613, 419262029, 340346383, 58891082, 254762844, 571745823, 857202794, 80813148, 664659188, 93244651, 142541779, 159622991, 85575854, 855330995, 634069980, 845515878, 279628967, 354887495, 393470674, 923059871, 242119126, 110540656, 938713625, 310300541, 851562093, 279479927, 118198763, 931932118, 938579533, 419701232, 256238058, 466261527, 660866225, 530588281, 853913847, 306930357, 534314043, 327660303, 662601458, 167822574, 767527548, 844868560, 316959679, 856135293, 344527541, 879219194, 277274335, 587876860, 345476871, 898684507, 824509268, 655277118, 289559728, 592791292, 508235483, 702462919, 628265744, 308031328, 204443660, 328754515, 152255978, 493090914, 338847836, 563153206, 408621858, 223945758, 451287743, 215449992, 350878509, 58166900, 491944922, 598208778, 368144611, 608247803, 32218025, 914948602, 740564532, 724947695, 499510004, 586130905, 568287027, 174706347, 522550460, 480180066, 903090053, 724771013, 945228637, 858166571, 627674291, 440463828, 516442518, 533255495, 685249706, 507438990, 905127105, 427108974, 676635959, 952733297, 972631860, 70183917, 335678299, 960124695, 894152594, 801253591, 565387882, 119135314, 833780486, 6434181, 474010785, 193631881, 902513619, 849922474, 671878920, 282826068, 142178017, 661651660, 755977028, 218497082, 225944914, 85825785, 189783235, 878187591, 274138158, 892702658, 835784640, 595124501, 1699834, 803078561, 404561230, 268729308, 503466218, 575939675, 753314204, 702902925, 499607734, 601878202, 378870125, 551849839, 779837986, 16774289, 302923560, 301666482, 70261660, 122365697, 719743171, 465081173, 496524207, 560023899, 35105434, 138795487, 478603967, 269824366, 318715775, 808116335, 897816435, 345949123, 239063116, 344732311, 623505475, 923885797, 107614157, 143166654, 242675895, 523970419, 620442400, 878888666, 361954627, 54628479, 211624249, 752412921, 932818624, 662048173, 795074002, 718894952, 786094446, 723507381, 376193619, 143169772, 578308508, 959691411, 693762269, 453457000, 803709080, 526830495, 291621452, 494837781, 319795760, 7390755, 880405204, 107334315, 216998488, 268646381, 187529580, 879872442, 408484518, 982311975, 24888929, 569329094, 182307959, 728199715, 615087014, 72944450, 372071020, 642640304, 395996122, 381435530, 544068714, 490103061, 389564553, 581810858, 489973515, 544311725, 231778101, 953684848, 309097848, 322783307, 633189327, 856615989, 715520318, 480865259, 280994941, 284419209, 404989871, 781621664, 771487729, 999686154, 417490554, 424346976, 659732881, 152774786, 736409872, 848621108, 575645243, 643787149, 412563749, 56316741, 590951567, 227030231, 644178866, 786158917, 912592096, 51708919, 179090191, 270027375, 112919635, 568207318, 715724838, 308294440, 286857818, 451878699, 271728773, 831584657, 464081236, 64389059, 805569860, 168443763, 39623728, 821745706, 470191006, 697365323, 904324191, 690402557, 900852860, 386219432, 727445961, 581099192, 492444441, 698762415, 407192940, 719731309, 603561935, 90978242, 256326180, 369482184, 317204436, 287186395, 837430898, 620269740, 441160732, 71949654, 649011423, 257585624, 389824201, 80317088, 381485751, 185197203, 201631152, 706003424, 34302154, 608918737, 43710970, 222556231, 217167399, 131274404, 518752130, 996314909, 745404423, 833252714, 517599862, 119612895, 774505688, 516131522, 64127756, 688093359, 821907692, 389943946, 470659902, 150105126, 667556899, 364335944, 150343275, 430167350, 664008186, 139688731, 701112939, 300389768, 994125079, 269766704, 512735787, 866304661, 332021918, 476529251, 631580857, 717130602, 443139944, 354280116, 764860127, 348057840, 386843153, 434074234, 87766512, 531672146, 961051055, 161941256, 793572524, 247836947, 162735340, 239946677, 609299901, 360232436, 309796669, 317393587, 889584227, 121769920, 855813421, 731425231, 130602110, 578619697, 223866290, 917367035, 937544620, 957852250, 528366176, 169112304, 603054982, 984049660, 180001290, 805259851, 774364795, 536976051, 153829652, 994881091, 923810455, 76286811, 678975481, 948978812, 61090470, 471990175, 477732568, 577067257, 74680554, 345073159, 56092413, 822899996, 622216455, 491635361, 169168916, 784802872, 320185310, 2387887, 93745272, 427702983, 327485179, 443417140, 620164885, 496315960, 191749710, 541508904, 728903746, 736577093, 977301360, 952142835, 922765724, 368772791, 703864752, 972490437, 849444182, 496338567, 431579859, 62720146, 178572807, 114742912, 930048705, 12507188, 862521676, 680276989, 224656294, 521405500, 561238413, 24712849, 978295571, 230991013, 804415768, 975634931, 668979871, 307507290, 44111071, 420258720, 476041422, 959056451, 868288188, 93143074, 956371057, 898059259, 17758708, 542506787, 76533881, 5544219, 926611252, 535298996, 695305107, 715759293, 272891440, 18110662, 114681524, 419915069, 549435443, 725441262, 612942928, 970353070, 972787558, 898822335, 339613438, 546771661, 360392447, 943916249, 160950877, 379184619, 153178120, 93162869, 77046739, 312070300, 13015492, 816786939, 458227046, 200942113, 483826697, 25502806, 239391590, 327038263, 734771209, 87056836, 577342966, 237256137, 381087264, 953674945, 541301235, 972574319, 613311018, 739492922, 574930568, 731402131, 650174303, 622108679, 872586089, 356880485, 292565658, 1719386, 28819522, 87095960, 29616857, 619220938, 484070957, 674992788, 97725833, 942351179, 910426472, 916858231, 858030445, 666763764, 736982216, 6985866, 52263401, 634971576, 562809229, 971290860, 54732242, 979694262, 43006632, 115507770, 526147058, 482069939, 806602497, 376192268, 144927522, 134935156, 489490405, 706857308, 655079169, 695212611, 63034425, 75437363, 62910273, 855076672, 798950525, 779635797, 574169820, 117428950, 547111404, 3091998, 908465568, 542260209, 526922104, 240578872, 639094665, 124904788, 804677394, 562517231, 768126096, 452375769, 520184167, 92137953, 762567961, 96301939, 308531758, 197640615, 343686319, 559469313, 28589238, 600880808, 126509772, 986526265, 581765840, 228525982, 705227619, 803793388, 137195563, 553791693, 477162968, 459174531, 968366205, 199678928, 531370216, 874060978, 179772359, 58388927, 497542485, 979771854, 720600248, 936463770, 212747623, 873582027, 653804122, 374613473, 858025282, 963110441, 428424475, 799418292, 736548000, 149904768, 870673735, 348052280, 216621087, 307555693, 863687082, 634324503, 150390112, 835858302, 138018975, 699315568, 464168894, 938430213, 509442039, 38968224, 396988639, 57373987, 813655700, 854127141, 226543184, 577952616, 983385488, 349678816, 712278623, 649130775, 167218011, 562465330, 306665521, 32900664, 994932468, 900430522, 689554858, 191291775, 469873739, 427108012, 362326347, 21821657, 501207569, 169705070, 454566581, 429941103, 570733731, 284312898, 293480039, 320134975, 118218843, 611446312, 708620905, 243750137, 174116849, 165036234, 47606328, 497050316, 327657335, 998692142, 826341978, 381509257, 3289847, 40443476, 801974220, 595365714, 714326209, 52445816, 528905908, 774515792, 953641094, 786264650, 684290136, 558289361, 997317113, 751607745, 179152493, 842996532, 803288751, 284417004, 333161132, 540603839, 122975188, 30330891, 254977184, 422106837, 388440147, 387163218, 188364296, 846217859, 81981520, 210909857, 564225487, 702913629, 257715181, 425968347, 988420620, 658922165, 145289242, 592627214, 506435907, 677678875, 479676116, 777775323, 619891150, 664818802, 788886678, 820275425, 517874698, 838086051, 745692655, 493989153, 881461373, 582293523, 730615107, 797898864, 217983033, 227004792, 127607664, 855196947, 675243905, 704133759, 968041415, 642824125, 725594538, 42650511, 842349153, 698528322, 368272997, 809473979, 401019322, 271502927, 467337945, 648822222, 200788098, 67191819, 336029179, 868900565, 352772775, 593873658, 266879401, 163462730, 646869566, 11401010, 333480499, 175836552, 643568255, 463672481, 218621807, 513534645, 458255575, 760343093, 756567902, 352575597, 958669403, 423443046, 295009253, 233242076, 509247031, 181273338, 661587987, 521875212, 705274263, 403569906, 853255897, 785745273, 743577264, 412090946, 477086848, 184853723, 928570954, 200794445, 973756979, 320752368, 640904803, 469843644, 229110426, 113421888, 135481908, 948595558, 930155835, 581260265, 389375958, 335807311, 619839231, 603511157, 965288353, 699840173, 271248213, 601744122, 203871009, 686274617, 823266653, 493376399, 712381687, 102638946, 713695098, 73495853, 726992962, 741001928, 736157768, 545070900, 619467416, 832681126, 629682434, 23980138, 222074954, 53602052, 159965808, 925642718, 562524768, 148668245, 8374191, 910306557, 378082830, 870989880, 848921732, 257436358, 843788194, 311278203, 851154970, 41979040, 76343014, 26548890, 173633594, 33472278, 751546101, 722794738, 193509278, 828209810, 378053440, 371990131, 653305540, 446581908, 650146387, 229972536, 625397326, 830310218, 794033227, 366521144, 811657566, 621004249, 193010208, 428443606, 543260182, 798701583, 810891693, 750268936, 681801707, 738976812, 628414828, 160206604, 165403784, 921447432, 632000809, 699679649, 286990316, 966083557, 276253973, 128434345, 812807516, 748764335, 352204431, 296682416, 497283102, 654527036, 139833803, 613416835, 686216990, 449956658, 480309905, 117056658, 950143840, 109834425, 724107287, 505281929, 891477661, 596455548, 450835854, 223211753, 433948175, 97955916, 114550234, 510245256, 709210174, 842702703, 887914635, 792326077, 154809171, 853391889, 805045198, 364993939, 883845177, 444649741, 805547672, 580249858, 504027209, 75524966, 217536681, 380062533, 263468386, 161027594, 716649283, 678814313, 202810950, 864276959, 333301230, 523801168, 112341071, 266233918, 784996937, 212373434, 764362610, 750709401, 334841324, 551776559, 318433651, 396878830, 814575952, 711701594, 674644967, 176021930, 266646197, 347777546, 809182281, 773893980, 624464218, 979193676, 375095947, 150884124, 95657158, 866779930, 411937167, 350538527, 511705772, 291099903, 935674600, 828135217, 706415544, 584638690, 987620565, 275271213, 188056947, 496028961, 376401940, 725618050, 10005122, 242891402, 634944919, 850281332, 603944620, 526004156, 391011066, 188852514, 487544064, 41052495, 284727083, 842510214, 796205993, 30873074, 765940365, 773998281, 918085203, 772687202, 7098071, 445015283, 507672884, 271077931, 254428645, 14954138, 760964535, 760659636, 863829857, 706951630, 793128938, 196872104, 157060061, 356468775, 311550669, 65853789, 48717294, 155995626, 370706053, 6999788, 658684104, 640402446, 901904347, 942345915, 550428607, 21574343, 682199864, 970322003, 988614174, 497401861, 167534147, 297380066, 443948479, 171245841, 145983168, 491042379, 290726023, 302357079, 243863635, 290256234, 459692084, 418257630, 565968494, 200015410, 729504916, 703135100, 440033559, 333579562, 265135358, 618833675, 925283956, 451193355, 841425036, 524027796, 497899147, 360329753, 436566721, 677795438, 528556539, 896412755, 804166735, 828976466, 606566019, 728224931, 78115025, 69415692, 239519547, 841983008, 475390597, 751793520, 879199254, 44112230, 119894606, 667008844, 858482485, 777712790, 851798067, 574556382, 526059041, 315855545, 81580890, 353704333, 593532752, 583681424, 851484027, 287420934, 846042252, 71916611, 754018928, 45470869, 815648662, 440687033, 667928395, 604124109, 12746144, 152498864, 656089748, 660723260, 132808577, 538071918, 223073723, 504696837, 751151182, 584524311, 429524327, 774888027, 634239524, 783328521, 320280550, 744841241, 720064276, 685881529, 848979687, 359133454, 340952494, 98058127, 245878405, 134597810, 645645182, 389233208, 429350661, 899378890, 275365968, 201085587, 659793864, 774519834, 49810887, 752354292, 721803014, 866150108, 654400135, 4143539, 104376374, 868944982, 299849525, 789671166, 535909371, 990781760, 724466729, 850696871, 470420130, 958625781, 692937759, 607493407, 64334176, 293468151, 424512878, 750082971, 56793450, 441219147, 896625347, 17696376, 995190832, 528860968, 472536542, 440042045, 186220892, 722891207, 772225405, 390798942, 201269467, 997766563, 457900303, 677341350, 845201681, 551425558, 563063033, 7796477, 440068548, 905469412, 765836975, 582530874, 239796255, 928444929, 989035200, 41126313, 7949157, 96088740, 930310323, 465958582, 284224519, 132184007, 846703331, 34215069, 789731912, 407097226, 422440344, 948168882, 452105025, 749085726, 161955573, 246014835, 608448306, 894803390, 51482004, 699512778, 143562298, 248814623, 779199781, 830497387, 735570806, 742506256, 171544396, 7979594, 786478009, 865467406, 272644160, 653127950, 569538249, 838420732, 214205955, 970428778, 512055237, 126351107, 786171861, 480538649, 777270010, 87684107, 148296119, 325883316, 95274620, 38100349, 723526726, 885085599, 582462112, 795804105, 332205792, 357887320, 438703871, 978082216, 609441785, 308534158, 850531303, 904229718, 343927332, 188295526, 607007539, 560625814, 24282073, 791344528, 653954617, 451965916, 532195053, 32251279, 244999038, 381747054, 649980056, 430065648, 556519892, 208954997, 302169165, 257959469, 104403816, 971720017, 299521161, 618188861, 405210686, 677928610, 922907140, 935394608, 314295131, 256173690, 334905033, 443904579, 417499868, 379198396, 295884841, 498158456, 27776283, 681857371, 435189950, 776170202, 54013933, 177711296, 924966549, 78511085, 642788468, 145135280, 909621594, 4054844, 49743534, 951539794, 552110589, 239862909, 947830207, 824016768, 620131170, 10363661, 386116523, 534487632, 430780852, 299044993, 653990269, 860576972, 366348566, 743649686, 715091662, 745462974, 141274402, 429398069, 667565821, 55345477, 560346855, 883372969, 485096246, 155145864, 479186300, 971520612, 676918341, 12032058, 207731549, 84184360, 8320511, 950640213, 513496116, 22905640, 169520259, 779908867, 579229289, 691703265, 365373865, 984980005, 435145860, 592598899, 980606876, 190222303, 899580860, 185233264, 194928614, 944783938, 302705967, 741635749, 940769981, 904274284, 79160981, 843439896, 868413126, 242038467, 589706807, 629933925, 296916031, 746217275, 834275516, 83555285, 83176613, 281537626, 857661280, 277431516, 988544492, 225791332, 139595700, 866919646, 755811397, 783821655, 104081309, 377778999, 889215151, 869775195, 228145566, 66604303, 464912316, 190383490, 685968800, 666996927, 563305708, 114648323, 333542186, 887963235, 643120893, 896167741, 295695025, 30704638, 370527183, 774094286, 893690570, 402236110, 345923972, 56860506, 659368988, 660581539, 681395550, 979275738, 284160, 404489046, 442580937, 751554869, 677052133, 670670566, 956020706, 64118862, 785760614, 595100576, 583795569, 383685946, 735065834, 755635266, 749465304, 534599171, 360375600, 316314402, 198686099, 435867040, 939879578, 65003744, 780326632, 130914396, 134060463, 393297537, 983690081, 592333991, 897031883, 506155542, 979879151, 838996916, 751790526, 152213221, 594370334, 198881395, 856187, 605799449, 670968325, 238726051, 46611795, 254412208, 93631265, 356837748, 363537167, 889097151, 120643898, 705706952, 987564441, 310875889, 18707307, 551610352, 247853068, 540606937, 440756111, 610101687, 987716548, 827975485, 630143468, 297843577, 241358351, 788653361, 112371418, 388926682, 88622865, 282669922, 672575138, 599945822, 550859786, 30779618, 138212406, 502956482, 730333570, 117886573, 380757524, 81011079, 851199616, 578062511, 170783015, 32785762, 507460109, 491503242, 749236184, 97368211, 398913070, 921500063, 477733359, 949692153, 714826055, 933182302, 302031848, 839884433, 995822485, 665504315, 370349581, 428214477, 896442190, 791293631, 573737083, 505883461, 925350886, 37138242, 761983985, 665065607, 102489422, 69770329, 323866411, 537237374, 500413766, 649117401, 517527163, 723490619, 20076147, 448341282, 938924440, 565744286, 69960982, 11064604, 801001276, 888330652, 601187479, 720573460, 523641874, 826929676, 871043827, 943150326, 267123916, 700316743, 515119402, 515756706, 921740663, 566451775, 909219429, 565714821, 832245666, 493193293, 651975360, 788768066, 398517576, 272611596, 968279831, 137515057, 633346177, 197328059, 331465661, 446929136, 226216421, 61993225, 476263466, 916362, 362515763, 21570403, 975538619, 54023808, 713229856, 129778098, 696318438, 690747455, 491776805, 556882088, 346971484, 614247786, 272512911, 923079620, 840874106, 874823175, 799692102, 141581443, 806225742, 295208497, 943176312, 870095582, 252925206, 956560685, 68343726, 628664998, 183941270, 776121602, 926320588, 94874056, 100261820, 397749673, 699727257, 360690988, 330372713, 367680102, 526578254, 338673994, 16674304, 209328848, 598381690, 781161959, 622645013, 826152990, 125624687, 941231652, 155107585, 955446186, 653317385, 799417121, 713561936, 947276804, 499883504, 741311524, 930508766, 707518788, 376815075, 728293954, 573687962, 931890651, 52590862, 671940324, 201497460, 69645136, 168171941, 853195083, 437173664, 339269776, 954495800, 367247552, 447184651, 639188329, 956190288, 728212197, 359940055, 108056146, 967781702, 445143804, 640375625, 721555205, 696852453, 269937593, 142868161, 140260985, 272260672, 561194860, 586133568, 59508421, 322980632, 319869190, 424441776, 539898350, 534807344, 479005851, 371508989, 914722625, 693941650, 94815538, 895575788, 197813077, 406229293, 247522483, 638414304, 312210601, 339627553, 737995527, 367154048, 249760953, 298300833, 610041614, 122376320, 729961242, 338040413, 863199329, 544356094, 945325072, 450611170, 657669545, 674416062, 859666688, 6779937, 219638967, 800932296, 605237300, 348334913, 349441204, 803627516, 782995122, 324433010, 674458548, 405266475, 503660043, 791153602, 964414845, 860633885, 278686479, 581149055, 370072891, 119277182, 234026408, 72335725, 580918495, 701874209, 95226639, 653223326, 494510878, 126959059, 988705097, 50441135, 919892411, 46858631, 845678691, 592966297, 169956416, 513588548, 443142241, 823406335, 876466415, 592680894, 245686324 }
{1, 3999, 7994001, 650673929, 23250521, 577166153, 533599828, 952014048, 55006627, 170160759, 894142372, 703081545, 657431824, 475435691, 506189365, 144307028, 932449727, 702778631, 581360507, 441903275, 938751116, 823364978, 424811801, 107674816, 504794396, 262308404, 938984245, 540162199, 197294266, 739845688, 239578695, 673801095, 551335199, 883233919, 203108773, 9322266, 359818396, 782710637, 871040061, 158709167, 712207428, 39736286, 220862356, 952379927, 354885567, 523831285, 591932317, 402307082, 789949525, 185521459, 656195163, 515974132, 482035751, 633869738, 578703127, 599705823, 522138385, 768274350, 974783912, 180057125, 157084460, 635339080, 418794834, 647543654, 823934448, 802800470, 63894347, 213380076, 161918427, 659439600, 165680142, 464186952, 323976873, 154207828, 397566604, 139318798, 561670524, 875759100, 881117521, 150149060, 357303891, 213258508, 262766203, 557291690, 789931467, 677431436, 86821186, 571624124, 865835886, 340271086, 560665970, 754321559, 607485134, 381122604, 624094481, 337778226, 736314433, 719950643, 135177443, 286133350, 159200573, 432901288, 112247146, 392496361, 934286658, 371871502, 434600179, 45780234, 872006205, 550239636, 731201542, 978763763, 548513253, 469654866, 798936817, 424952284, 849264312, 518746161, 421801553, 294216941, 179681027, 82501644, 524109620, 780268156, 905801228, 79837872, 502316781, 373802201, 557516505, 55398262, 33779019, 20542165, 632250714, 104612737, 227110736, 428022140, 690276015, 76906769, 949376382, 176562485, 439508484, 475625733, 739183562, 482734120, 37658012, 587390592, 710981688, 145662754, 142519761, 253983866, 852252521, 88211460, 812090109, 791572734, 560965677, 915567832, 47709754, 97761678, 351901042, 714791784, 155002697, 317113975, 93107578, 860452609, 126196251, 842197698, 596300917, 297134127, 206059327, 771676196, 620704769, 963032427, 735395963, 395146423, 711667843, 840739894, 994257576, 610433261, 208291615, 368057295, 810993656, 431959951, 611115836, 200159180, 716344709, 691108360, 547781007, 105288584, 794468513, 966769752, 965224898, 667757129, 410516302, 486194567, 528126339, 305234391, 638324572, 952021988, 260543300, 398618477, 573751014, 665075064, 356213247, 633210297, 606207213, 758811504, 713256442, 161264086, 93814471, 711247168, 598222613, 169030640, 491924814, 140465999, 615907801, 633539588, 24600853, 516428696, 867584018, 343996117, 819569611, 670378006, 534631035, 777136351, 386012685, 809768342, 548963284, 917350033, 720369743, 727136607, 223065172, 591916140, 27327586, 660699643, 317071960, 462876263, 874009505, 62859681, 766714788, 952361084, 253656880, 309112887, 634901745, 458131029, 658771041, 729327522, 275997963, 914252427, 218851139, 834982402, 524735946, 112490231, 895291208, 109312779, 76715226, 832543219, 50944493, 710837499, 588968619, 951087220, 527177611, 257153541, 218473015, 853359897, 894517252, 607629864, 868007135, 435470461, 601402053, 155505741, 703838560, 345439013, 499252325, 768180966, 708913360, 511644540, 686102373, 160141217, 741171248, 967377048, 138009263, 734008708, 436327511, 748513599, 160128573, 350447878, 704767172, 305925059, 720811849, 667587385, 57755797, 203492268, 638867554, 65808895, 47237290, 949200543, 769725636, 283818218, 827835696, 491036423, 722782513, 606553150, 698786538, 50870670, 776374989, 208870704, 521465282, 816844543, 739578030, 843956283, 336124720, 347151396, 257353654, 382948615, 49517787, 817374748, 22811869, 337590264, 191846993, 552315917, 851633007, 629775116, 435754228, 876991601, 641423161, 483784927, 881674268, 294769310, 324368596, 546374191, 743009905, 202729072, 553042868, 393417969, 431946902, 397269808, 522608832, 434172520, 502780350, 332385986, 813331477, 548328020, 765449956, 61954722, 821239721, 627916408, 24296355, 835027626, 176784107, 780626854, 140822850, 190491671, 883277310, 323830957, 939795659, 452268040, 730518899, 418152189, 376844309, 507214821, 461838713, 841083288, 49339725, 353852836, 985189300, 605926252, 928786849, 616573843, 128793974, 4474028, 260110060, 770726154, 516651797, 47978699, 208477973, 348620394, 509043352, 775236216, 698162848, 2764261, 657912175, 677123744, 41449447, 602931202, 844268785, 550731527, 601926752, 896024140, 413503021, 13263235, 763795590, 988588920, 58236731, 310584957, 400937432, 393365654, 24469210, 655321322, 478561273, 396739682, 570657117, 405972446, 683305603, 399132104, 146730288, 598754033, 236261035, 795788440, 221745238, 56936783, 913178176, 100721292, 71330081, 868912836, 497394709, 453397640, 521579644, 469591973, 205929273, 485519625, 709905351, 118173952, 466413267, 780993491, 511397891, 360582232, 964133547, 339225153, 877832338, 680044893, 715721519, 741090686, 83823031, 214773095, 8942054, 50295224, 805624265, 488419308, 67921377, 865303017, 728360730, 347473517, 543689517, 155538598, 416881198, 364073370, 143311095, 320322859, 325416938, 408809666, 2831787, 8980071, 663409942, 183476928, 14557670, 366169101, 530051067, 599498729, 164682279, 250849557, 17407447, 476366499, 193473295, 735021689, 773785941, 430824266, 340199456, 325320494, 36393113, 593825337, 523837078, 678600929, 597678099, 226238142, 265222962, 284023022, 18691434, 855031288, 479958529, 644956098, 729678024, 658496779, 71766914, 346592621, 170701751, 608281758, 620374660, 130135864, 51305638, 916429646, 829934771, 764238480, 912497098, 162530022, 19899298, 312620283, 273027147, 944495156, 910887583, 581197210, 68380442, 212102127, 896281351, 698401322, 765101205, 156492462, 855305655, 58348387, 125497178, 619077893, 216827122, 541115118, 61346716, 927711502, 918292367, 932522097, 273075512, 592112193, 864352596, 149925561, 311040288, 276601066, 793138896, 632397561, 943156317, 671367964, 335232494, 954957205, 673506430, 468319100, 820881639, 888207889, 38167176, 201361349, 894978341, 151588655, 516983394, 719391962, 945232265, 564840164, 767309179, 257157916, 566885737, 301517459, 150816786, 781783477, 414432440, 254177708, 411352999, 554789056, 116404055, 256765125, 647329977, 237516123, 174152626, 423343773, 428050262, 699779254, 54910709, 488278623, 999425813, 434982796, 187670539, 994713396, 294034053, 115056576, 620325586, 762923677, 539355710, 58926939, 196700702, 365125576, 139249067, 469819461, 908713355, 238857774, 86543425, 295040109, 625652679, 126697410, 91905413, 518458876, 20777364, 502566474, 569806619, 591264261, 642621460, 223623558, 603747580, 420005064, 393588576, 874354399, 628040158, 6294778, 265050530, 214280755, 398341756, 272289761, 900216997, 178026688, 675484563, 329404351, 583581361, 866377899, 540098223, 915096625, 408973474, 778660611, 238843380, 600850408, 552267002, 582050506, 660109646, 599985902, 152365229, 944319188, 317493687, 786193094, 606642440, 64714177, 772151484, 46859656, 887929133, 981599784, 695321876, 554738108, 779051704, 5967112, 369619591, 696323745, 581922233, 492069717, 115966449, 266128013, 321430421, 2540723, 158092756, 980637267, 368185690, 773821751, 812564170, 824341703, 707382278, 921745404, 287853347, 365500735, 241314950, 660168508, 550748188, 313647406, 770336625, 972131096, 758734494, 147755489, 392033432, 414277592, 428878445, 815434757, 904533348, 339978598, 690194716, 453192349, 998120929, 631567903, 980286919, 803393768, 547319529, 773937003, 237661792, 548058933, 858263042, 131382485, 841132308, 247321204, 799095434, 232581186, 764940622, 596599220, 235844537, 392105602, 973221462, 906199727, 455675477, 576098901, 950795244, 68447025, 313168281, 479660131, 936968528, 762413321, 295055183, 867348188, 689577730, 915488516, 776087920, 539525986, 929014152, 81110076, 721812998, 248504565, 885807233, 165874525, 357627039, 923323391, 459195849, 975957896, 460064149, 742561861, 356657671, 988378550, 664458324, 474547700, 640888806, 772232110, 912541597, 961816965, 512020801, 98973889, 204501814, 938762798, 54363828, 989263517, 566213004, 549764874, 785952650, 239992982, 514789284, 23253528, 544073552, 213531656, 942806185, 625216690, 91814384, 862152244, 648214186, 362475244, 564020640, 782088656, 703486696, 105642896, 330264649, 206926430, 37959979, 856844758, 997159298, 121816769, 303474216, 855691596, 377953279, 404173703, 418086037, 237498703, 706643332, 729709013, 549914380, 178108810, 182255260, 255024842, 473338436, 778774525, 741091378, 127982861, 223633205, 986763676, 436082769, 902912095, 370780283, 582441525, 826108073, 409824665, 602251509, 996978099, 831923945, 939998133, 243454725, 529214820, 971892491, 88043085, 606265837, 601774391, 48350674, 164712957, 941235674, 375421640, 9382635, 197662640, 871867335, 485781106, 462346325, 93275082, 619510145, 883701702, 397620003, 548760837, 281268555, 473541780, 916115399, 964012055, 329281429, 781013581, 124054303, 605305513, 47091044, 502553013, 355919677, 120699827, 371607006, 102281490, 998121930, 315212680, 846331416, 329162600, 962278777, 810310511, 783352917, 840465065, 906912688, 93883802, 969117679, 713996727, 964036075, 38575714, 453276911, 578445613, 889736965, 545351330, 829231373, 354475369, 101927371, 830170924, 14026278, 724969048, 529689821, 461617832, 934630757, 967792013, 619729559, 541463064, 310389258, 686698977, 154724706, 707223956, 576500286, 212350405, 31016438, 180895695, 872984661, 409115253, 256522724, 675268671, 620113297, 385119578, 474596744, 314836981, 9926388, 352302330, 536960889, 62623177, 597624737, 618322805, 606434416, 682459492, 13408203, 267742218, 527360640, 206098955, 341702220, 286681718, 513694859, 459584114, 952296865, 406127293, 401796062, 671725408, 777818782, 206495632, 782068898, 776968251, 468900758, 643275608, 553431689, 993363714, 654544266, 688804606, 581804458, 160814548, 323675509, 436980671, 918788113, 263610575, 820032458, 308059367, 450054382, 100021227, 401192317, 308047081, 102877381, 594457653, 719384890, 715030626, 796216589, 44922522, 45642985, 825422291, 340163050, 91496832, 365442824, 954040411, 909573718, 348176397, 665785784, 176303264, 737307544, 786493294, 3411694, 842103914, 765336744, 59469101, 724709992, 163037509, 850169054, 779229646, 551484639, 324938488, 657479206, 780268702, 728451380, 122471495, 405422880, 555493713, 704694292, 341253243, 917344365, 404603591, 201835763, 447728997, 901540217, 483903595, 72188484, 950978652, 712760276, 622033659, 936495671, 817462621, 409073893, 809228296, 424295139, 890573449, 61213236, 831150250, 668429736, 603619616, 58647665, 376389755, 801345064, 905859381, 89368135, 241324174, 52304940, 704962801, 399048857, 942465634, 88576483, 230536634, 435590476, 447686102, 538591747, 35727774, 971411794, 250102300, 544133987, 787004985, 204785061, 400703369, 316764259, 546883980, 874771670, 670864631, 933898678, 517168427, 654947595, 731179185, 797045591, 782997494, 530000436, 515686606, 594603878, 640872823, 326223615, 161030636, 176466881, 913207717, 575533062, 247359423, 313443081, 102408495, 7665780, 77252094, 148207200, 667437246, 2311724, 949982884, 157733201, 821262618, 143927079, 458767763, 677485763, 402894615, 957798300, 700470466, 638026419, 283937641, 518187420, 707626671, 509835531, 691486753, 684445336, 928908977, 62874804, 546054753, 7101130, 771943459, 879498641, 153731610, 509282492, 404990640, 419534267, 169693640, 860242705, 184432517, 26955895, 322048549, 941705517, 859671109, 359559472, 880283897, 452858548, 925573650, 785692811, 668369973, 517668375, 762517499, 703960414, 628581912, 802766403, 714999722, 5840501, 537007644, 92792514, 82774745, 137319521, 767797593, 893029748, 449913250, 980497564, 827076125, 608818276, 862584844, 60231185, 421284152, 111863584, 376783293, 358746996, 73979229, 828198328, 66443264, 201636526, 659231426, 749875031, 423651734, 160093059, 182924900, 186197859, 929171609, 119884646, 582011713, 607622901, 236844688, 358126323, 300358651, 293562275, 177528470, 992632236, 39250427, 304847091, 233759692, 896110262, 958941290, 743048734, 100105464, 184685229, 337533758, 686399420, 939947948, 522384572, 486326187, 215594196, 781102965, 944226590, 597999384, 485634732, 551185361, 781610863, 573278929, 127007036, 156276351, 307652585, 82239316, 373498288, 772573083, 768230811, 800556979, 64755881, 485130486, 657169280, 95007498, 912187840, 785888568, 931065156, 348881768, 182838827, 990537901, 822431431, 22382200, 722750189, 624806030, 235961385, 128586562, 256472168, 187184757, 661256862, 462551660, 299114977, 427681056, 186714197, 568225705, 841019731, 258434015, 361720693, 769870853, 54237390, 336603593, 253951895, 665389820, 633175977, 805866732, 347245759, 387700215, 207074048, 883697227, 885684423, 357354393, 466792802, 291378231, 174404195, 187168773, 823795842, 840148288, 324439914, 884153405, 371547979, 777626797, 190107432, 343366108, 881259693, 753966711, 287085460, 124518512, 521092832, 851337728, 255799791, 719605132, 163006229, 670774605, 411932729, 756348900, 510143948, 170889003, 144523569, 401782009, 553411239, 716398203, 616590632, 249311750, 133498213, 515440904, 867159107, 877269215, 174142270, 364603802, 62635863, 220775936, 889210429, 637060907, 282741118, 391706137, 674200674, 578767319, 165030065, 50249549, 783915619, 536369531, 910783648, 874033128, 345346023, 535470649, 368246257, 146240091, 536674119, 762495833, 121787901, 336636215, 741371095, 482441246, 286722656, 439113247, 189548744, 158187471, 725843635, 409820458, 983033503, 388083611, 694023134, 804008370, 156803285, 28676827, 50203522, 94714235, 350609007, 207109482, 222514848, 281188962, 410982991, 799018601, 145936334, 950213740, 720380878, 481335777, 841235391, 932728738, 656718794, 909659265, 314686182, 218495414, 596602381, 75212489, 878920707, 61482510, 981730669, 673131351, 880888968, 611961440, 825615042, 754161621, 694519779, 367694648, 293753272, 26066205, 777005994, 668604782, 946013570, 859739221, 771763849, 668501699, 586250507, 390035675, 896017011, 371597851, 832180859, 447349026, 371073099, 549691963, 361289047, 460514712, 996360365, 756927045, 756950833, 676724440, 200347351, 499722551, 936910420, 382872301, 289116154, 609920959, 994194176, 730923872, 313940418, 72043783, 21259890, 736722706, 253115133, 171718739, 81280451, 301644379, 474690640, 752153034, 384121754, 347942249, 490092415, 398567827, 58563943, 472762556, 506538688, 150525582, 409368842, 745784696, 259681439, 116543314, 105301682, 640463583, 643394681, 238816390, 489282360, 576315078, 114141773, 487810390, 940184716, 330687607, 534828650, 773218808, 630474543, 625315136, 290918249, 89031102, 497165583, 98051265, 609494032, 610533189, 107940264, 474272722, 899479825, 30587255, 733939041, 160101583, 262991619, 53088135, 81906281, 675479754, 79317708, 737912193, 703616736, 370556966, 105022660, 889832624, 710859702, 656009295, 118163936, 550474332, 453900536, 875678518, 681887454, 343686052, 856568541, 154720557, 325990099, 414940081, 298747470, 500802920, 61208620, 854784380, 953404968, 179306168, 498538673, 371714215, 548268819, 750687425, 672994634, 214334207, 330502655, 835319567, 326197408, 880067825, 277564308, 192397257, 149370593, 921525682, 408490826, 93298061, 447480057, 364644833, 793745988, 952802851, 13341423, 253011212, 38928704, 600576582, 868619901, 634249309, 611425929, 995992152, 582402521, 593449441, 19911014, 523264909, 111641567, 997008093, 862613943, 740432416, 269388509, 496554333, 636458045, 785977484, 378009624, 68917311, 896659079, 68918359, 662001585, 652857217, 770032601, 645248021, 795171894, 264138924, 450135648, 21585926, 718402554, 344219500, 741146320, 946634397, 861925250, 275284748, 63545525, 605125907, 879053858, 872327326, 802749427, 520757730, 153176991, 654607149, 708438083, 688169563, 474542496, 851921504, 281937437, 349430146, 29733437, 558373708, 94477840, 941646981, 665159635, 191434201, 784771916, 276357614, 778725922, 578102685, 222735772, 594525882, 390331325, 326548631, 337950348, 2837358, 625679496, 398247435, 442654588, 704364236, 610255391, 70859079, 882050484, 170936422, 699945397, 430131080, 803104756, 846052683, 334666004, 922110496, 641032929, 587043324, 730946644, 489766763, 569543216, 849226602, 175879789, 738817125, 899272886, 67523807, 946109325, 789102398, 452367509, 21884372, 946679564, 134265832, 850236421, 952562822, 93490668, 213294681, 102863487, 194411899, 808042745, 777815341, 517387183, 366795978, 295743558, 14769002, 772815459, 284962053, 570358036, 828593230, 285292404, 296651226, 970775282, 132027328, 886712218, 313720067, 119622319, 588620715, 976859910, 606156455, 766105044, 177770314, 670426808, 412215488, 640010970, 649892323, 524425988, 107896513, 869373011, 280786746, 491737650, 381004997, 893052968, 132761290, 585031581, 308542592, 296037149, 550416296, 663274768, 601052489, 216909469, 86717167, 517254477, 973927936, 657256204, 4419044, 769521024, 729555356, 764721971, 107517685, 26642952, 717385555, 832381816, 329754151, 474802085, 936105340, 689330037, 738615617, 921010332, 453773692, 25589025, 710258491, 778781535, 472429654, 327388805, 191344410, 85316439, 769973814, 389546937, 499962868, 695314427, 46019996, 481630831, 970276370, 261201493, 372242435, 995855993, 22329519, 855751098, 146168633, 554134391, 86285236, 235870979, 78012968, 687625171, 97543940, 880939373, 704411857, 230561090, 958165492, 422965191, 520510245, 601188727, 820441993, 598398491, 357068908, 404167268, 30241491, 15822880, 465749060, 822394850, 408594054, 169728497, 770431348, 155182099, 353760954, 670764057, 28580712, 758321958, 588566961, 984282566, 142286156, 538029631, 770987582, 156481366, 218862459, 979295995, 724499371, 865274620, 792730660, 394643332, 508638141, 40212951, 651428945, 699947314, 323509699, 997854322, 293166927, 556069572, 554938654, 600850092, 852087674, 247016581, 554753849, 49576637, 985159056, 141003835, 800472041, 107094555, 464215121, 217740893, 835709370, 925247311, 137361179, 402175458, 333386669, 503345363, 645081735, 956097543, 181144144, 762973571, 610205585, 727292790, 114178320, 725281001, 669066348, 217818782, 940595786, 768883008, 641774759, 143826108, 771962865, 140568354, 707383994, 37789318, 715788683, 133578582, 873871107, 800545110, 49714967, 509983024, 621539061, 168663735, 279591202, 707375552, 690879839, 965870676, 877474302, 654915843, 594131225, 298140620, 287079823, 259874188, 51987255, 330018148, 70982802, 467253569, 526777677, 753455721, 284647488, 659618595, 414605838, 863358021, 825404385, 854129863, 327023880, 265185108, 637809803, 729909443, 946433448, 679743174, 44603409, 880997092, 134981804, 480359746, 833915231, 922385550, 696954198, 834224545, 963355501, 855879168, 262280326, 163586165, 179171139, 771819780, 13176756, 142350286, 39329774, 71772982, 40890905, 339861512, 245051227, 949448138, 802332170, 945813256, 144924915, 857236106, 912725611, 906937423, 65511369, 779503482, 729532001, 567399314, 768026664, 832035344, 530626695, 489412084, 365288051, 213106497, 20183929, 123927147, 769360980, 456011655, 847659035, 580454337, 972299765, 317076129, 942187877, 592270889, 208353635, 271723865, 495055330, 264565680, 452664177, 450012091, 299010517, 298028557, 608520055, 328452545, 66281080, 177203640, 219942645, 919514213, 790066603, 158657055, 759463006, 230178555, 78272225, 291789863, 42773925, 293840940, 321050215, 541407613, 415175928, 437496635, 758407137, 670439937, 350977954, 290695410, 475753112, 155624262, 335885104, 912723732, 936849431, 615352669, 52863405, 831704106, 559055295, 575229473, 706977790, 407837049, 618245223, 738886887, 763950407, 649421292, 787235175, 848534016, 170050422, 847999856, 996257524, 934890344, 442032637, 146407264, 789662643, 818522033, 382532196, 399905741, 43832663, 21569038, 611453892, 447463460, 347669449, 323452795, 891561761, 867464373, 448947334, 992667173, 377088058, 510025153, 653465491, 437266491, 643013512, 938874790, 552280076, 684802965, 363905955, 505643615, 399251287, 895679889, 615460359, 889958935, 232130074, 247804082, 532413802, 275089057, 749818265, 346379898, 815726299, 797708566, 101378696, 125080660, 988396434, 769582631, 602385942, 189714474, 158651389, 379888763, 106502425, 604517044, 511596402, 714103821, 633971999, 259329410, 219364249, 214036292, 309671024, 44663445, 62039637, 235226388, 71497487, 481043116, 534751396, 826182363, 322400354, 563870683, 788091896, 65238327, 244504420, 152484619, 497077904, 125934817, 641830005, 795909511, 494912457, 633931537, 260601586, 487199889, 983975399, 857173524, 166254940, 227646325, 364525770, 964223206, 420952190, 169319872, 317734906, 215886687, 310299511, 595355797, 208069900, 811268910, 882431484, 108902874, 614679618, 586766377, 639212096, 889400224, 541083520, 348690406, 905825048, 952764661, 289979713, 510824765, 332636885, 445430597, 967960410, 818425233, 166097177, 757022525, 22972245, 405239245, 235750200, 355925670, 245286904, 586896054, 903679548, 246014554, 136044413, 309427044, 458398771, 614841043, 239046826, 383692852, 504086828, 713896059, 387927191, 310665258, 420469626, 226279852, 541406525, 394724006, 839963542, 113036540, 344048485, 456052526, 584660699, 570720568, 582624347, 657758911, 189532329, 244595042, 356536338, 76111664, 700169655, 232824445, 967226197, 832413961, 539368677, 871941929, 80392802, 746865058, 805773162, 618939245, 764122633, 945408570, 228540049, 896156246, 653830877, 695615372, 341639889, 599038199, 228980697, 571801024, 806446333, 591392297, 687218256, 917737188, 591709175, 424072144, 157149632, 432113421, 91368275, 648914211, 792462433, 253379263, 610729384, 92082812, 387963674, 550862547, 150638818, 991047491, 141738453, 951225888, 555581398, 455751389, 893312823, 569796349, 796744654, 53801752, 789341042, 87867540, 895678323, 187594317, 190059684, 42384121, 100743837, 521342618, 900427668, 527853918, 117695536, 190855393, 421837901, 465159888, 99264218, 597749289, 413299005, 476859640, 969923384, 638749400, 967765690, 278257732, 774336627, 91202161, 33764644 }
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 }
{2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000, 2000 }
Returns: {1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 }
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 }
{1}
{999999}
Returns: {397979577 }
{1, 1000000, 999496507, 500336845, 85121780, 287783408, 327844750, 254376659, 234572847, 774308364, 938980468, 97420230, 763141300, 164381730, 685134780, 12221147, 997724835, 344965807, 52231476, 870287786, 662222013, 893520210, 701810054, 243881143, 438834444, 276356065, 5929382, 415844246, 107689091, 416377646, 585604461, 706089265, 386602825, 377303138, 843657518, 709363976, 642869323, 329059582, 773802430, 462053625, 515041863, 79456594, 79421988, 712830716, 637711132, 712627703, 57168809, 3804992, 600273728, 385931826, 898252789, 311177906, 385264400, 157802916, 565765576, 945830893, 283315724, 243093622, 513171762, 559227899, 631677331, 138130143, 656711205, 102925534, 328890173, 386488108, 802781335, 318594223, 351102312, 310646165, 710403437, 700053342, 689351570, 903176196, 760240761, 153304833, 557027168, 880909569, 35035863, 216834906, 747181564, 454126485, 837775324, 537597106, 29543778, 674071956, 379711231, 592795135, 438155390, 728418644, 797884919, 462678823, 475173793, 76061131, 500604072, 326439090, 771625022, 700418531, 669239801, 42533488, 452768873, 411811326, 428727196, 548182773, 877945559, 69014447, 813207553, 517264560, 307491406, 286190607, 985547468, 324782709, 68355769, 974448462, 774934246, 633896283, 675693890, 859015215, 166984810, 345417008, 265841322, 896026293, 384160225, 157355804, 874581738, 514269949, 560806805, 638893055, 647743054, 799522141, 738438835, 128494528, 740108471, 156176706, 283085114, 853174920, 498054521, 735635766, 789701102, 252645475, 181110792, 166207246, 224011375, 920026698, 118942660, 865733968, 208428189, 345285891, 663051068, 160616117, 741227168, 622375746, 656334915, 961748368, 72816679, 22353044, 907558479, 266837743, 385111438, 393633320, 67059670, 353664496, 552799639, 914610985, 237176881, 30195949, 433532877, 831781492, 372492082, 133140375, 134549088, 825811195, 935904111, 607681754, 842648302, 803858851, 552102703, 330672659, 399593402, 889785357, 83773299, 702868623, 46147583, 66578235, 831797381, 709861953, 610879416, 276941998, 277701641, 81646286, 646601481, 909016725, 542168981, 517516901, 793900089, 123419624, 487532195, 759569943, 622739425, 648835359, 846181119, 879984355, 982534591, 778877524, 291207902, 548749028, 847235971, 224321067, 103995045, 585709587, 553188562, 608476452, 75750992, 60714834, 158417363, 509118960, 969888250, 551831111, 790641230, 766505387, 620531622, 145252039, 652870648, 976260756, 852870627, 527013385, 946032308, 922899027, 633870452, 126310485, 637213113, 422292317, 861053969, 176817397, 449561153, 199798061, 254690923, 121578734, 865205843, 505932867, 462272937, 398291538, 229532861, 960133510, 845044423, 139698968, 246913722, 242831971, 124958887, 160226192, 921178234, 127223088, 774421095, 142037410, 549108434, 223359276, 821553996, 111565867, 892224004, 910440018, 193106401, 387708755, 292214894, 738903628, 126102936, 911863940, 158983740, 466101923, 673397485, 561374582, 176178923, 481009073, 322485940, 997148606, 906487059, 460637102, 378346283, 837028086, 367709940, 880695574, 885192048, 527359548, 394880416, 731650038, 299210985, 354410481, 15634730, 429471633, 657540407, 643705061, 744916325, 564584378, 253698615, 442092935, 708839040, 239445296, 995466095, 526700575, 641413573, 141897214, 175952468, 470701094, 70892970, 899537389, 282312095, 577934914, 361567999, 795950045, 995723274, 5127067, 143492583, 759161726, 678273693, 658360584, 269148187, 548166943, 219198030, 40258324, 696735318, 275082426, 989602448, 983701850, 894642312, 960467236, 101846796, 340913619, 293925426, 543132280, 325219343, 275588998, 740385736, 517835430, 488020633, 434254462, 29497681, 432324087, 720998236, 483606969, 588728014, 663775260, 206575125, 996739045, 199269039, 498214564, 813002675, 356511280, 388095707, 597761300, 947909909, 34469108, 180222973, 700551852, 630549430, 338448128, 809755493, 675588425, 307826917, 732012508, 707191101, 529029634, 271412945, 161314241, 638136552, 580005797, 671018788, 220636894, 356174838, 478134927, 387087329, 593165734, 850950529, 357604719, 793132121, 260242096, 179208229, 51210316, 710403657, 17348154, 51887896, 103646471, 458390167, 349017139, 605133585, 862714722, 89313086, 612439355, 607672447, 131475927, 340321900, 878798776, 766454177, 276865751, 501261621, 35936227, 226151807, 67599002, 601767482, 353092865, 913780564, 180132687, 49531994, 421897399, 401032816, 673940456, 497161589, 910449980, 126210315, 459638158, 786965823, 815979071, 639828908, 789716966, 277637869, 654915877, 846357881, 878272091, 400485428, 236986236, 371796848, 946143959, 453614434, 866776167, 498218413, 662319966, 391037786, 232901749, 468929879, 30706301, 724741114, 130349027, 28154315, 849671578, 489267607, 945126959, 914083909, 517678596, 847252732, 117445952, 211477849, 2779550, 928022184, 820516436, 720774916, 903675952, 854993768, 258752327, 291884316, 801193636, 445305447, 596764022, 889046181, 113312635, 496748253, 866930059, 714391233, 237130511, 643892457, 572948657, 318374358, 1177160, 731781908, 913846432, 361780091, 468566022, 213518651, 368982480, 147855291, 756722489, 560030566, 15922765, 958078968, 296526927, 259026999, 274284239, 766878984, 533637890, 593294686, 298267462, 705410745, 55435759, 983760181, 103886134, 863410883, 473525704, 316090440, 850412409, 569862209, 758217622, 767140811, 326055047, 519599597, 706699724, 538068075, 124425442, 943521032, 715002043, 409499975, 814607948, 821450107, 839717640, 557230049, 813233692, 761466600, 356537655, 899432675, 157137900, 684870086, 791986090, 965644714, 707582970, 5500623, 616081499, 18900476, 276410965, 871914872, 418838169, 812915534, 969175823, 204155057, 437963880, 724180163, 97090689, 584490563, 331653610, 546093213, 329631118, 425968362, 677987977, 150895063, 601870233, 684602714, 577909179, 498693956, 922415253, 420597787, 667635218, 238859120, 918230622, 393170508, 218885931, 509166581, 544597941, 11641520, 606280326, 921160928, 900568833, 5525065, 760600144, 211843797, 797277086, 711591463, 139896039, 583252366, 252091527, 846784522, 323238652, 164122819, 49489344, 608921311, 636008320, 379976609, 247449985, 267195424, 915201254, 418420732, 696884571, 282378698, 975078810, 70305446, 389300556, 931651340, 303489001, 546689964, 658383104, 842937071, 435163871, 987237385, 120848111, 715191691, 715553026, 277096195, 573971206, 542482330, 510465679, 861427982, 904106044, 858593247, 347709288, 648265677, 415097196, 24916691, 233485582, 56740520, 687907619, 145934293, 795978172, 672079567, 88782038, 162265055, 682837003, 998298104, 171577628, 695197090, 236445256, 242844135, 94967676, 617524578, 134026007, 749428091, 8921967, 599235184, 457686330, 386732765, 140427150, 877959574, 664228752, 487413430, 411960971, 834608742, 936911087, 435697556, 578776924, 468648687, 798048542, 200884898, 952871076, 18410402, 403312538, 263786972, 499701015, 605872331, 859948014, 220539222, 2906270, 70079355, 873896382, 942534101, 676048228, 698402120, 659678505, 65571595, 581324061, 848019025, 585677848, 461573057, 115970113, 777571934, 619191799, 626817249, 565588660, 371675392, 667896157, 187656335, 358318160, 847363515, 502798986, 23855407, 745445494, 756430242, 788324147, 490357386, 311265804, 731201102, 695387268, 425032197, 885673161, 184958188, 817098286, 519873847, 825960594, 292568039, 646820224, 74707002, 396431462, 377835096, 373974080, 529060477, 850558967, 929399165, 111967401, 629962286, 61537796, 2768813, 231222037, 679986454, 444289797, 239730878, 881253195, 666813799, 371591355, 449747767, 156928937, 406789030, 723707286, 299354164, 358863479, 225670076, 15793470, 241349344, 237311117, 591764103, 767281016, 309325701, 263943379, 444353637, 836608419, 47598035, 133565000, 82724027, 106428506, 387390770, 400449853, 890632525, 697599461, 183568215, 968036385, 711218180, 415540879, 86258055, 783200441, 464325565, 986473440, 598595225, 933658458, 742287856, 886116420, 528897245, 131034252, 493117012, 223620531, 280150781, 576291345, 97092891, 27037278, 639590585, 96763316, 837220503, 54685012, 811258493, 423245683, 762029032, 46052883, 242260772, 298805941, 942104974, 566498406, 442842798, 309818175, 39757562, 755438010, 256242197, 348886234, 864651599, 485225700, 626421296, 14529750, 196798860, 122957313, 320888464, 136005666, 821627306, 725182003, 901751218, 5343728, 214202486, 347495169, 614011447, 26218953, 968545423, 306337246, 874896779, 844490746, 188649908, 887799426, 296060511, 268849155, 922416275, 960712386, 971601236, 19670658, 668377466, 477755319, 126839840, 73627533, 865921086, 164583201, 446567479, 571123051, 949965951, 824298087, 692038035, 507357920, 692672147, 535366731, 316349420, 752498556, 442606014, 176532645, 407202067, 294263960, 686051302, 908184975, 988170185, 80530013, 754162737, 205447063, 13246498, 39431512, 761993191, 517299351, 305990381, 522227687, 422606768, 593614209, 455278254, 503870331, 341511223, 646936912, 704596604, 467935351, 706230096, 984144199, 935778266, 167739637, 376924888, 733696073, 149840931, 441549390, 838436680, 121168354, 537234446, 429046516, 199489598, 82378463, 204845522, 411592101, 30405164, 996111202, 724880622, 212356341, 303776841, 328973045, 557454123, 372174059, 880703401, 878202574, 246438161, 841408025, 9842592, 371313799, 460648224, 885628429, 408160816, 892215868, 705856708, 344913961, 322496674, 270262069, 579781492, 824255448, 887682338, 689808345, 324147555, 255084058, 733702174, 984104273, 866069199, 767216864, 594103245, 352772417, 844661273, 861551998, 779335079, 333898468, 458778381, 879320562, 617751555, 935462170, 407475099, 552142226, 66919457, 75558922, 16274446, 576547937, 719277312, 186967036, 419377955, 644174975, 867778488, 961636265, 950970383, 566793167, 703083328, 957640269, 548198597, 639668854, 462439626, 175336524, 990251579, 199472923, 449550500, 488236858, 726112174, 208433823, 40493142, 658050741, 982561240, 573354629, 492943111, 577024435, 587819513, 508883793, 435522268, 831400494, 905273020, 618135664, 456403436, 912068993, 759933943, 471510695, 665623237, 354895732, 473829232, 586520193, 471678315, 375655071, 634376, 338498992, 406466670, 870254137, 693187984, 559950946, 248527634, 352630771, 133580327, 999531601, 459435861, 871745813, 326205841, 654800473, 219798700, 715289787, 645110735, 882328931, 309204078, 56282739, 351534271, 1813222, 900321595, 905251673, 56402981, 521974529, 923453339, 353835221, 864794094, 541439152, 709282247, 798503884, 596774742, 897839030, 924995935, 435933857, 764991185, 190299202, 524836661, 438046416, 250205121, 909432378, 804700967, 465439463, 968504033, 536124942, 940700554, 662062166, 665271958, 492285604, 690186576, 672414616, 324807996, 815456092, 389545700, 995863911, 926641085, 726466917, 550604618, 217075337, 582673711, 242341082, 473572531, 138157764, 827399001, 643663176, 57763399, 885294371, 34474345, 346811319, 487188068, 687888949, 418956824, 907609776, 735067492, 545873498, 889296225, 405926188, 783905578, 919931666, 635316349, 564266449, 74631687, 893416991, 378739615, 826988473, 202946514, 916219857, 900118229, 33007706, 582876921, 477594863, 750634273, 768520183, 988289771, 564846745, 323906581, 502000208, 936189730, 162014801, 292139082, 31494897, 808902263, 149373973, 496374894, 521459158, 503420509, 281680074, 53284830, 806505429, 968812981, 588509143, 468068311, 315161523, 966411520, 763155876, 970657777, 988825327, 771049114, 791515157, 587971444, 713869879, 230393365, 565215583, 146350383, 623895413, 72903573, 255344666, 140214689, 450143830, 495194238, 445893496, 285617636, 868225260, 307361680, 261898654, 964950757, 478807669, 345576224, 405191065, 392620718, 768680014, 971748181, 930165720, 851744250, 134339587, 580884671, 451033154, 928484431, 213239284, 760269781, 802901955, 430634493, 204139024, 709959788, 41652604, 226966031, 96447062, 919381148, 198647381, 326746966, 897991276, 120545225, 893545417, 790219999, 329655067, 353856245, 379534775, 192816123, 517060107, 497192127, 408569695, 667114019, 298019240, 701558888, 288981217, 212383540, 686755992, 223274765, 102505067, 369618614, 984474468, 841739970, 560249082, 893479151, 591703780, 548914539, 167243662, 604594829, 223592946, 187847942, 882992292, 169931518, 903961914, 471762769, 846914725, 117939102, 728204371, 741630254, 310805699, 80852945, 104617586, 12128767, 132051078, 431850808, 533875837, 152844255, 282642751, 336432795, 481302081, 842253327, 557186751, 634644792, 132187700, 909769555, 180903898, 393594913, 228718162, 212181419, 490551945, 960959512, 659324922, 758424835, 304750208, 179172071, 838420393, 722539298, 746684894, 790260921, 689137989, 964558661, 723098055, 33182638, 461787987, 130837496, 253853223, 879085749, 928843698, 640417775, 255213935, 471362766, 521125727, 120350714, 515948271, 745405017, 486667739, 932463893, 371729583, 526866784, 52118053, 535556061, 281430187, 217268000, 368156726, 292090380, 416351662, 311292537, 311569778, 191882412, 501453069, 870019911, 309234461, 323566949, 639654506, 240296069, 991700257, 718234116, 967289120, 578841978, 993168736, 984859887, 538836837, 376331838, 989983182, 141821037, 223023119, 168275105, 550155571, 70373756, 200021168, 673417164, 270106209, 626812022, 898948472, 748460346, 477872628, 806865440, 657471930, 275462895, 418502982, 316198975, 115427146, 161469916, 573621426, 52604485, 592389161, 827209247, 92715877, 267552971, 120395342, 218480315, 50901880, 820377072, 470010760, 10661374, 541235126, 531543653, 718400251, 323710268, 604702244, 912162224, 77433399, 288056015, 782404880, 318931360, 89349625, 77086547, 951572790, 485513162, 223437939, 23079618, 244475250, 856079857, 489562336, 322295378, 582339352, 171598563, 532099285, 789123511, 80433945, 132165476, 833313640, 885658932, 562960188, 831283488, 351360029, 362885539, 284699062, 880921758, 355151575, 947318944, 781082558, 611136391, 934961223, 760433605, 986505912, 908849133, 754179541, 432076276, 888476715, 713872244, 142786239, 543740203, 447458345, 118002070, 989091752, 426457531, 943733026, 342842627, 857132045, 960827635, 738153808, 493632681, 107741394, 217453172, 409493332, 635196015, 583400861, 61452557, 600028546, 461037687, 44856542, 294578393, 608951649, 887397353, 553981739, 6148145, 710007735, 988949361, 790623852, 222115121, 828643540, 101297478, 447654847, 815163117, 597442886, 617099242, 759789404, 835460585, 705539131, 13937774, 726979346, 71251229, 499863068, 514958427, 718908617, 465910511, 309579781, 428402409, 659019790, 6473734, 500489667, 660025391, 482221724, 698381928, 926427620, 782686463, 659354213, 832300774, 216089102, 226513129, 312270665, 698174099, 364404166, 804646479, 691459433, 154382316, 423778002, 8084212, 696912096, 85248410, 143032699, 364267773, 803363605, 418416211, 196407248, 915606837, 103422141, 17141891, 686849274, 144976721, 246965037, 623640445, 939320769, 262665817, 629382556, 478679843, 212676236, 183546045, 293543527, 961814087, 256943845, 852047497, 793929931, 773748454, 484619412, 314136590, 328909254, 860014049, 145733590, 95352686, 234916514, 414392106, 552625661, 927961130, 262517854, 698491328, 661611069, 916948176, 480948245, 762718850, 78382367, 573955414, 374917118, 1694606, 648634430, 288918805, 28447957, 587753804, 331520496, 984256877, 601179331, 778597482, 553250381, 138128465, 817333470, 881868833, 197752483, 992902346, 875661334, 424625682, 253486372, 9740698, 825396052, 40470350, 983902575, 649632858, 457588017, 226620888, 456851226, 326820851, 938652364, 297804684, 700771588, 643090299, 596133910, 830379434, 498684923, 613968311, 277905850, 739012783, 547964689, 478809218, 998932890, 66718824, 200849488, 560105436, 107021006, 736153527, 112806758, 244345067, 713420865, 828007120, 673690049, 884447444, 153944136, 452358827, 730091765, 614430392, 610484585, 703617230, 625981046, 868264544, 339055124, 332297075, 863709116, 21947683, 925543579, 266683434, 12834655, 48750335, 887683034, 136950354, 878464315, 710705090, 199490488, 684699733, 987489552, 790196647, 200541698, 913985689, 607211723, 964536218, 406584135, 375415012, 334567853, 837432988, 102023618, 401178088, 476439796, 767644972, 907869103, 717979700, 927329949, 656365899, 268381421, 122095979, 980466565, 699141670, 440497562, 572961001, 370260223, 605271147, 336131166, 310512985, 514633459, 553040832, 582512538, 684633679, 661425756, 22005262, 264089497, 484080896, 997157735, 371992393, 951633458, 505359210, 91920782, 364776879, 107144203, 343924455, 551760035, 901544284, 738070859, 53049613, 243883333, 264433586, 773139840, 820392356, 826584982, 983311336, 540955272, 906876865, 381974710, 489794573, 877765835, 388795686, 669688940, 305117498, 385899544, 41313564, 970870480, 735571989, 897338044, 858828672, 935113089, 223514574, 199052911, 7015317, 966485645, 499402855, 993993972, 32637398, 759715050, 75222876, 698917750, 623030395, 386699793, 652922619, 156959168, 614919143, 323512418, 887559456, 618791327, 433428977, 301198620, 283156468, 332264769, 814517053, 78641677, 748321755, 837097706, 721655346, 11547099, 161600637, 73375322, 766186055, 721220112, 898235252, 859045238, 527986082, 907627387, 336816674, 224692864, 998929514, 412595599, 479903585, 968323726, 575950456, 165654577, 956008816, 433823354, 572377405, 668897696, 818672071, 977585969, 45131954, 23092188, 199263199, 965655969, 869103121, 304799861, 66210007, 592111424, 973933849, 42292504, 608804232, 562467931, 13121490, 345187622, 590880537, 637750495, 423656450, 923980014, 62852188, 464474744, 266614664, 83309698, 173411455, 332275276, 405960065, 911692787, 924558663, 219991430, 265504506, 700212227, 892791699, 772171451, 783725565, 226394095, 556600842, 259351362, 799746010, 754178737, 176985405, 59646766, 545054366, 222602595, 815461479, 393946993, 180705034, 395947361, 548004842, 580531795, 939328012, 978479943, 678330504, 449763553, 490872693, 474986908, 739792845, 14379191, 966210119, 478011030, 644857676, 415664174, 449492199, 550900593, 326313552, 757501671, 281030049, 525483656, 195498027, 612398358, 178490200, 944088391, 94851374, 399684738, 518776506, 66734764, 925312506, 808196761, 263313222, 20884170, 770797003, 58684280, 267632373, 66485945, 505035105, 972806647, 85184355, 210820199, 652134450, 405443490, 40001187, 33144667, 729833755, 575892330, 431814882, 352848283, 112326767, 559634204, 84441913, 264573486, 780515046, 765482021, 41760032, 985615773, 504735613, 472780241, 573311386, 766318320, 48303104, 607796347, 324718773, 394438799, 743971775, 492598679, 94277447, 918430889, 600909335, 973593742, 609862558, 452034797, 526933369, 269005640, 399564942, 462055010, 111576931, 694312691, 460658274, 301926051, 244532274, 930726260, 184586152, 263885677, 980821714, 30671554, 781221367, 639270044, 10309678, 170638627, 553340682, 888329757, 297506944, 170383486, 246373306, 752205139, 909561659, 511054116, 287684868, 234118072, 283419246, 177845902, 492719768, 793968439, 226948087, 8085013, 723184328, 355228430, 508125690, 515014541, 90309059, 424440040, 587319432, 462086209, 419468247, 755898102, 299636657, 233861650, 231133900, 465563023, 233799284, 345112191, 254621354, 794840012, 417946113, 808253565, 193666394, 36867118, 54906578, 90587175, 808312122, 276352271, 655207632, 354606470, 222477600, 232327236, 37211712, 558113477, 394905333, 401769908, 36186519, 26309204, 616193696, 891602972, 546239793, 545319953, 508510101, 557746780, 649085347, 939542431, 863811893, 785289167, 73669711, 483199554, 211544456, 707505502, 758976881, 761826863, 938408028, 352559994, 939578769, 129567131, 425885197, 933478243, 264161243, 35618632, 391732190, 205804856, 153360160, 21549294, 1429237, 483417025, 984641337, 263173635, 825004137, 795049246, 561954912, 279856740, 317606109, 120370863, 840902666, 611005037, 231339570, 216368727, 94857464, 556305361, 584220232, 399147340, 411280173, 302303432, 92488753, 809020237, 570122826, 311476374, 777811941, 674033032, 971636560, 306459249, 838422092, 942598475, 255657004, 194456650, 962288219, 209844259, 637026585, 852999376, 88234561, 479421365, 114718653, 353309067, 196428606, 693077139, 524763753, 742088016, 695888592, 25914461, 175542554, 415638108, 491469552, 466321483, 995229424, 287308315, 341664823, 21469849, 399086482, 356919078, 13864323, 517314531, 791976800, 503438628, 428277156, 640889758, 389429821, 588113283, 809774480, 868853608, 765519135, 963647183, 104487820, 884223358, 159800222, 270580028, 898562593, 803460547, 401851874, 118315262, 346668459, 136959940, 509136014, 394710328, 395875379, 642321597, 757271405, 686724868, 216330355, 933202216, 790334245, 331697488, 245087975, 361281066, 212566794, 256996512, 701081377, 709322215, 325518890, 461704169, 266715832, 931224466, 70563888, 333209478, 384287301, 45245402, 249200352, 820552131, 634729587, 358553282, 151760820, 969483649, 444793222, 377264298, 108413181, 444383394, 205792146, 416578529, 183809897, 846550551, 327112793, 11852130, 513274058, 9192133, 129046725, 486301452, 652206315, 739757589, 236997662, 44800228, 331640776, 121920432, 401731216, 784368906, 744513303, 893663122, 913595651, 4870539, 840649051, 764051304, 833706051, 958996220, 992022535, 622598064, 809126528, 586609151, 690057612, 64861109, 372921287, 399933742, 26063758, 120354691, 70709294, 407135709, 535940933, 942491704, 529631329, 174035987, 497664744, 831694293, 49635740, 76087682, 221334383, 643562294, 847210473, 127937201, 685495479, 266651237, 354399626, 826434778, 673360879, 489258797, 779450690, 136392730, 450429143, 479784310, 771376321, 707105159, 435319370, 886932171, 841564155, 272355181, 237994746, 250109622, 725557907, 97902169, 404757540, 75778518, 324117170, 883896882, 468804594, 484877792, 387364653, 696197334, 849087045, 332354966, 163773695, 977792173, 559428695, 780887678, 163171216, 898672415, 111501631, 328529279, 458560431, 320272166 }
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 }
{1000000, 999700, 999400, 999100, 998800, 998500, 998200, 997900, 997600, 997300, 997000, 996700, 996400, 996100, 995800, 995500, 995200, 994900, 994600, 994300, 994000, 993700, 993400, 993100, 992800, 992500, 992200, 991900, 991600, 991300, 991000, 990700, 990400, 990100, 989800, 989500, 989200, 988900, 988600, 988300, 988000, 987700, 987400, 987100, 986800, 986500, 986200, 985900, 985600, 985300, 985000, 984700, 984400, 984100, 983800, 983500, 983200, 982900, 982600, 982300, 982000, 981700, 981400, 981100, 980800, 980500, 980200, 979900, 979600, 979300, 979000, 978700, 978400, 978100, 977800, 977500, 977200, 976900, 976600, 976300, 976000, 975700, 975400, 975100, 974800, 974500, 974200, 973900, 973600, 973300, 973000, 972700, 972400, 972100, 971800, 971500, 971200, 970900, 970600, 970300, 970000, 969700, 969400, 969100, 968800, 968500, 968200, 967900, 967600, 967300, 967000, 966700, 966400, 966100, 965800, 965500, 965200, 964900, 964600, 964300, 964000, 963700, 963400, 963100, 962800, 962500, 962200, 961900, 961600, 961300, 961000, 960700, 960400, 960100, 959800, 959500, 959200, 958900, 958600, 958300, 958000, 957700, 957400, 957100, 956800, 956500, 956200, 955900, 955600, 955300, 955000, 954700, 954400, 954100, 953800, 953500, 953200, 952900, 952600, 952300, 952000, 951700, 951400, 951100, 950800, 950500, 950200, 949900, 949600, 949300, 949000, 948700, 948400, 948100, 947800, 947500, 947200, 946900, 946600, 946300, 946000, 945700, 945400, 945100, 944800, 944500, 944200, 943900, 943600, 943300, 943000, 942700, 942400, 942100, 941800, 941500, 941200, 940900, 940600, 940300, 940000, 939700, 939400, 939100, 938800, 938500, 938200, 937900, 937600, 937300, 937000, 936700, 936400, 936100, 935800, 935500, 935200, 934900, 934600, 934300, 934000, 933700, 933400, 933100, 932800, 932500, 932200, 931900, 931600, 931300, 931000, 930700, 930400, 930100, 929800, 929500, 929200, 928900, 928600, 928300, 928000, 927700, 927400, 927100, 926800, 926500, 926200, 925900, 925600, 925300, 925000, 924700, 924400, 924100, 923800, 923500, 923200, 922900, 922600, 922300, 922000, 921700, 921400, 921100, 920800, 920500, 920200, 919900, 919600, 919300, 919000, 918700, 918400, 918100, 917800, 917500, 917200, 916900, 916600, 916300, 916000, 915700, 915400, 915100, 914800, 914500, 914200, 913900, 913600, 913300, 913000, 912700, 912400, 912100, 911800, 911500, 911200, 910900, 910600, 910300, 910000, 909700, 909400, 909100, 908800, 908500, 908200, 907900, 907600, 907300, 907000, 906700, 906400, 906100, 905800, 905500, 905200, 904900, 904600, 904300, 904000, 903700, 903400, 903100, 902800, 902500, 902200, 901900, 901600, 901300, 901000, 900700, 900400, 900100, 899800, 899500, 899200, 898900, 898600, 898300, 898000, 897700, 897400, 897100, 896800, 896500, 896200, 895900, 895600, 895300, 895000, 894700, 894400, 894100, 893800, 893500, 893200, 892900, 892600, 892300, 892000, 891700, 891400, 891100, 890800, 890500, 890200, 889900, 889600, 889300, 889000, 888700, 888400, 888100, 887800, 887500, 887200, 886900, 886600, 886300, 886000, 885700, 885400, 885100, 884800, 884500, 884200, 883900, 883600, 883300, 883000, 882700, 882400, 882100, 881800, 881500, 881200, 880900, 880600, 880300, 880000, 879700, 879400, 879100, 878800, 878500, 878200, 877900, 877600, 877300, 877000, 876700, 876400, 876100, 875800, 875500, 875200, 874900, 874600, 874300, 874000, 873700, 873400, 873100, 872800, 872500, 872200, 871900, 871600, 871300, 871000, 870700, 870400, 870100, 869800, 869500, 869200, 868900, 868600, 868300, 868000, 867700, 867400, 867100, 866800, 866500, 866200, 865900, 865600, 865300, 865000, 864700, 864400, 864100, 863800, 863500, 863200, 862900, 862600, 862300, 862000, 861700, 861400, 861100, 860800, 860500, 860200, 859900, 859600, 859300, 859000, 858700, 858400, 858100, 857800, 857500, 857200, 856900, 856600, 856300, 856000, 855700, 855400, 855100, 854800, 854500, 854200, 853900, 853600, 853300, 853000, 852700, 852400, 852100, 851800, 851500, 851200, 850900, 850600, 850300, 850000, 849700, 849400, 849100, 848800, 848500, 848200, 847900, 847600, 847300, 847000, 846700, 846400, 846100, 845800, 845500, 845200, 844900, 844600, 844300, 844000, 843700, 843400, 843100, 842800, 842500, 842200, 841900, 841600, 841300, 841000, 840700, 840400, 840100, 839800, 839500, 839200, 838900, 838600, 838300, 838000, 837700, 837400, 837100, 836800, 836500, 836200, 835900, 835600, 835300, 835000, 834700, 834400, 834100, 833800, 833500, 833200, 832900, 832600, 832300, 832000, 831700, 831400, 831100, 830800, 830500, 830200, 829900, 829600, 829300, 829000, 828700, 828400, 828100, 827800, 827500, 827200, 826900, 826600, 826300, 826000, 825700, 825400, 825100, 824800, 824500, 824200, 823900, 823600, 823300, 823000, 822700, 822400, 822100, 821800, 821500, 821200, 820900, 820600, 820300, 820000, 819700, 819400, 819100, 818800, 818500, 818200, 817900, 817600, 817300, 817000, 816700, 816400, 816100, 815800, 815500, 815200, 814900, 814600, 814300, 814000, 813700, 813400, 813100, 812800, 812500, 812200, 811900, 811600, 811300, 811000, 810700, 810400, 810100, 809800, 809500, 809200, 808900, 808600, 808300, 808000, 807700, 807400, 807100, 806800, 806500, 806200, 805900, 805600, 805300, 805000, 804700, 804400, 804100, 803800, 803500, 803200, 802900, 802600, 802300, 802000, 801700, 801400, 801100, 800800, 800500, 800200, 799900, 799600, 799300, 799000, 798700, 798400, 798100, 797800, 797500, 797200, 796900, 796600, 796300, 796000, 795700, 795400, 795100, 794800, 794500, 794200, 793900, 793600, 793300, 793000, 792700, 792400, 792100, 791800, 791500, 791200, 790900, 790600, 790300, 790000, 789700, 789400, 789100, 788800, 788500, 788200, 787900, 787600, 787300, 787000, 786700, 786400, 786100, 785800, 785500, 785200, 784900, 784600, 784300, 784000, 783700, 783400, 783100, 782800, 782500, 782200, 781900, 781600, 781300, 781000, 780700, 780400, 780100, 779800, 779500, 779200, 778900, 778600, 778300, 778000, 777700, 777400, 777100, 776800, 776500, 776200, 775900, 775600, 775300, 775000, 774700, 774400, 774100, 773800, 773500, 773200, 772900, 772600, 772300, 772000, 771700, 771400, 771100, 770800, 770500, 770200, 769900, 769600, 769300, 769000, 768700, 768400, 768100, 767800, 767500, 767200, 766900, 766600, 766300, 766000, 765700, 765400, 765100, 764800, 764500, 764200, 763900, 763600, 763300, 763000, 762700, 762400, 762100, 761800, 761500, 761200, 760900, 760600, 760300, 760000, 759700, 759400, 759100, 758800, 758500, 758200, 757900, 757600, 757300, 757000, 756700, 756400, 756100, 755800, 755500, 755200, 754900, 754600, 754300, 754000, 753700, 753400, 753100, 752800, 752500, 752200, 751900, 751600, 751300, 751000, 750700, 750400, 750100, 749800, 749500, 749200, 748900, 748600, 748300, 748000, 747700, 747400, 747100, 746800, 746500, 746200, 745900, 745600, 745300, 745000, 744700, 744400, 744100, 743800, 743500, 743200, 742900, 742600, 742300, 742000, 741700, 741400, 741100, 740800, 740500, 740200, 739900, 739600, 739300, 739000, 738700, 738400, 738100, 737800, 737500, 737200, 736900, 736600, 736300, 736000, 735700, 735400, 735100, 734800, 734500, 734200, 733900, 733600, 733300, 733000, 732700, 732400, 732100, 731800, 731500, 731200, 730900, 730600, 730300, 730000, 729700, 729400, 729100, 728800, 728500, 728200, 727900, 727600, 727300, 727000, 726700, 726400, 726100, 725800, 725500, 725200, 724900, 724600, 724300, 724000, 723700, 723400, 723100, 722800, 722500, 722200, 721900, 721600, 721300, 721000, 720700, 720400, 720100, 719800, 719500, 719200, 718900, 718600, 718300, 718000, 717700, 717400, 717100, 716800, 716500, 716200, 715900, 715600, 715300, 715000, 714700, 714400, 714100, 713800, 713500, 713200, 712900, 712600, 712300, 712000, 711700, 711400, 711100, 710800, 710500, 710200, 709900, 709600, 709300, 709000, 708700, 708400, 708100, 707800, 707500, 707200, 706900, 706600, 706300, 706000, 705700, 705400, 705100, 704800, 704500, 704200, 703900, 703600, 703300, 703000, 702700, 702400, 702100, 701800, 701500, 701200, 700900, 700600, 700300, 700000, 699700, 699400, 699100, 698800, 698500, 698200, 697900, 697600, 697300, 697000, 696700, 696400, 696100, 695800, 695500, 695200, 694900, 694600, 694300, 694000, 693700, 693400, 693100, 692800, 692500, 692200, 691900, 691600, 691300, 691000, 690700, 690400, 690100, 689800, 689500, 689200, 688900, 688600, 688300, 688000, 687700, 687400, 687100, 686800, 686500, 686200, 685900, 685600, 685300, 685000, 684700, 684400, 684100, 683800, 683500, 683200, 682900, 682600, 682300, 682000, 681700, 681400, 681100, 680800, 680500, 680200, 679900, 679600, 679300, 679000, 678700, 678400, 678100, 677800, 677500, 677200, 676900, 676600, 676300, 676000, 675700, 675400, 675100, 674800, 674500, 674200, 673900, 673600, 673300, 673000, 672700, 672400, 672100, 671800, 671500, 671200, 670900, 670600, 670300, 670000, 669700, 669400, 669100, 668800, 668500, 668200, 667900, 667600, 667300, 667000, 666700, 666400, 666100, 665800, 665500, 665200, 664900, 664600, 664300, 664000, 663700, 663400, 663100, 662800, 662500, 662200, 661900, 661600, 661300, 661000, 660700, 660400, 660100, 659800, 659500, 659200, 658900, 658600, 658300, 658000, 657700, 657400, 657100, 656800, 656500, 656200, 655900, 655600, 655300, 655000, 654700, 654400, 654100, 653800, 653500, 653200, 652900, 652600, 652300, 652000, 651700, 651400, 651100, 650800, 650500, 650200, 649900, 649600, 649300, 649000, 648700, 648400, 648100, 647800, 647500, 647200, 646900, 646600, 646300, 646000, 645700, 645400, 645100, 644800, 644500, 644200, 643900, 643600, 643300, 643000, 642700, 642400, 642100, 641800, 641500, 641200, 640900, 640600, 640300, 640000, 639700, 639400, 639100, 638800, 638500, 638200, 637900, 637600, 637300, 637000, 636700, 636400, 636100, 635800, 635500, 635200, 634900, 634600, 634300, 634000, 633700, 633400, 633100, 632800, 632500, 632200, 631900, 631600, 631300, 631000, 630700, 630400, 630100, 629800, 629500, 629200, 628900, 628600, 628300, 628000, 627700, 627400, 627100, 626800, 626500, 626200, 625900, 625600, 625300, 625000, 624700, 624400, 624100, 623800, 623500, 623200, 622900, 622600, 622300, 622000, 621700, 621400, 621100, 620800, 620500, 620200, 619900, 619600, 619300, 619000, 618700, 618400, 618100, 617800, 617500, 617200, 616900, 616600, 616300, 616000, 615700, 615400, 615100, 614800, 614500, 614200, 613900, 613600, 613300, 613000, 612700, 612400, 612100, 611800, 611500, 611200, 610900, 610600, 610300, 610000, 609700, 609400, 609100, 608800, 608500, 608200, 607900, 607600, 607300, 607000, 606700, 606400, 606100, 605800, 605500, 605200, 604900, 604600, 604300, 604000, 603700, 603400, 603100, 602800, 602500, 602200, 601900, 601600, 601300, 601000, 600700, 600400, 600100, 599800, 599500, 599200, 598900, 598600, 598300, 598000, 597700, 597400, 597100, 596800, 596500, 596200, 595900, 595600, 595300, 595000, 594700, 594400, 594100, 593800, 593500, 593200, 592900, 592600, 592300, 592000, 591700, 591400, 591100, 590800, 590500, 590200, 589900, 589600, 589300, 589000, 588700, 588400, 588100, 587800, 587500, 587200, 586900, 586600, 586300, 586000, 585700, 585400, 585100, 584800, 584500, 584200, 583900, 583600, 583300, 583000, 582700, 582400, 582100, 581800, 581500, 581200, 580900, 580600, 580300, 580000, 579700, 579400, 579100, 578800, 578500, 578200, 577900, 577600, 577300, 577000, 576700, 576400, 576100, 575800, 575500, 575200, 574900, 574600, 574300, 574000, 573700, 573400, 573100, 572800, 572500, 572200, 571900, 571600, 571300, 571000, 570700, 570400, 570100, 569800, 569500, 569200, 568900, 568600, 568300, 568000, 567700, 567400, 567100, 566800, 566500, 566200, 565900, 565600, 565300, 565000, 564700, 564400, 564100, 563800, 563500, 563200, 562900, 562600, 562300, 562000, 561700, 561400, 561100, 560800, 560500, 560200, 559900, 559600, 559300, 559000, 558700, 558400, 558100, 557800, 557500, 557200, 556900, 556600, 556300, 556000, 555700, 555400, 555100, 554800, 554500, 554200, 553900, 553600, 553300, 553000, 552700, 552400, 552100, 551800, 551500, 551200, 550900, 550600, 550300, 550000, 549700, 549400, 549100, 548800, 548500, 548200, 547900, 547600, 547300, 547000, 546700, 546400, 546100, 545800, 545500, 545200, 544900, 544600, 544300, 544000, 543700, 543400, 543100, 542800, 542500, 542200, 541900, 541600, 541300, 541000, 540700, 540400, 540100, 539800, 539500, 539200, 538900, 538600, 538300, 538000, 537700, 537400, 537100, 536800, 536500, 536200, 535900, 535600, 535300, 535000, 534700, 534400, 534100, 533800, 533500, 533200, 532900, 532600, 532300, 532000, 531700, 531400, 531100, 530800, 530500, 530200, 529900, 529600, 529300, 529000, 528700, 528400, 528100, 527800, 527500, 527200, 526900, 526600, 526300, 526000, 525700, 525400, 525100, 524800, 524500, 524200, 523900, 523600, 523300, 523000, 522700, 522400, 522100, 521800, 521500, 521200, 520900, 520600, 520300, 520000, 519700, 519400, 519100, 518800, 518500, 518200, 517900, 517600, 517300, 517000, 516700, 516400, 516100, 515800, 515500, 515200, 514900, 514600, 514300, 514000, 513700, 513400, 513100, 512800, 512500, 512200, 511900, 511600, 511300, 511000, 510700, 510400, 510100, 509800, 509500, 509200, 508900, 508600, 508300, 508000, 507700, 507400, 507100, 506800, 506500, 506200, 505900, 505600, 505300, 505000, 504700, 504400, 504100, 503800, 503500, 503200, 502900, 502600, 502300, 502000, 501700, 501400, 501100, 500800, 500500, 500200, 499900, 499600, 499300, 499000, 498700, 498400, 498100, 497800, 497500, 497200, 496900, 496600, 496300, 496000, 495700, 495400, 495100, 494800, 494500, 494200, 493900, 493600, 493300, 493000, 492700, 492400, 492100, 491800, 491500, 491200, 490900, 490600, 490300, 490000, 489700, 489400, 489100, 488800, 488500, 488200, 487900, 487600, 487300, 487000, 486700, 486400, 486100, 485800, 485500, 485200, 484900, 484600, 484300, 484000, 483700, 483400, 483100, 482800, 482500, 482200, 481900, 481600, 481300, 481000, 480700, 480400, 480100, 479800, 479500, 479200, 478900, 478600, 478300, 478000, 477700, 477400, 477100, 476800, 476500, 476200, 475900, 475600, 475300, 475000, 474700, 474400, 474100, 473800, 473500, 473200, 472900, 472600, 472300, 472000, 471700, 471400, 471100, 470800, 470500, 470200, 469900, 469600, 469300, 469000, 468700, 468400, 468100, 467800, 467500, 467200, 466900, 466600, 466300, 466000, 465700, 465400, 465100, 464800, 464500, 464200, 463900, 463600, 463300, 463000, 462700, 462400, 462100, 461800, 461500, 461200, 460900, 460600, 460300, 460000, 459700, 459400, 459100, 458800, 458500, 458200, 457900, 457600, 457300, 457000, 456700, 456400, 456100, 455800, 455500, 455200, 454900, 454600, 454300, 454000, 453700, 453400, 453100, 452800, 452500, 452200, 451900, 451600, 451300, 451000, 450700, 450400, 450100, 449800, 449500, 449200, 448900, 448600, 448300, 448000, 447700, 447400, 447100, 446800, 446500, 446200, 445900, 445600, 445300, 445000, 444700, 444400, 444100, 443800, 443500, 443200, 442900, 442600, 442300, 442000, 441700, 441400, 441100, 440800, 440500, 440200, 439900, 439600, 439300, 439000, 438700, 438400, 438100, 437800, 437500, 437200, 436900, 436600, 436300, 436000, 435700, 435400, 435100, 434800, 434500, 434200, 433900, 433600, 433300, 433000, 432700, 432400, 432100, 431800, 431500, 431200, 430900, 430600, 430300, 430000, 429700, 429400, 429100, 428800, 428500, 428200, 427900, 427600, 427300, 427000, 426700, 426400, 426100, 425800, 425500, 425200, 424900, 424600, 424300, 424000, 423700, 423400, 423100, 422800, 422500, 422200, 421900, 421600, 421300, 421000, 420700, 420400, 420100, 419800, 419500, 419200, 418900, 418600, 418300, 418000, 417700, 417400, 417100, 416800, 416500, 416200, 415900, 415600, 415300, 415000, 414700, 414400, 414100, 413800, 413500, 413200, 412900, 412600, 412300, 412000, 411700, 411400, 411100, 410800, 410500, 410200, 409900, 409600, 409300, 409000, 408700, 408400, 408100, 407800, 407500, 407200, 406900, 406600, 406300, 406000, 405700, 405400, 405100, 404800, 404500, 404200, 403900, 403600, 403300, 403000, 402700, 402400, 402100, 401800, 401500, 401200, 400900, 400600, 400300 }
Returns: {0, 0, 0, 0, 0, 0, 0, 431206298, 9528934, 638436746, 625169942, 649935605, 696106901, 466114298, 444616373, 353730751, 296293072, 161214471, 749616154, 112418754, 92640529, 573406498, 381170830, 624117489, 884214897, 969325598, 489920842, 626698801, 32527986, 73693183, 315874274, 152625246, 239527163, 678938413, 165812238, 886535691, 837372466, 547586290, 32796955, 953831007, 743261635, 677060513, 545154440, 44180954, 534128248, 756881797, 484241624, 160854330, 1429350, 226407159, 733016120, 843459296, 454089218, 954792351, 365423333, 698604292, 353275813, 50717300, 571840872, 398427355, 438565757, 632479339, 241654389, 960922073, 868266391, 522895140, 304622383, 232003491, 220260423, 707484708, 488448052, 74053652, 550567644, 859712100, 588985418, 587469999, 870534470, 70370261, 283252270, 984311974, 408985053, 841570548, 650331544, 654944529, 884975210, 937361639, 834300699, 249081846, 917077654, 150829090, 924454256, 487666797, 928039601, 316702818, 74104058, 514853294, 900275140, 777270893, 378193921, 426844033, 278956221, 964024505, 18369424, 422194569, 798935209, 864716566, 300085068, 719062520, 567088065, 385119206, 254257607, 283412286, 671348344, 555164483, 867976525, 144502152, 374416787, 565807959, 2992618, 250366255, 477635744, 942667056, 63843267, 433888513, 541682664, 56848098, 536875681, 416904186, 943563614, 562519050, 770900481, 32626076, 244865162, 337096773, 435849993, 147368774, 728528593, 930862198, 752961748, 508021958, 362165118, 597270970, 653476975, 503583929, 29520945, 297420892, 818695003, 620215803, 65457856, 521246748, 243242824, 194817926, 850711300, 202140103, 44165465, 49924051, 294523227, 211275552, 519778157, 545838182, 364693341, 985894193, 642562924, 755665643, 19342641, 668116002, 132739259, 166357733, 822198430, 883456762, 298708786, 162897820, 186961464, 416623584, 214129199, 495072917, 304797143, 279410113, 609384715, 959697591, 219969064, 97617854, 367915844, 473079704, 192222414, 1706010, 808392383, 214340491, 256277951, 979704694, 735185749, 871133227, 179733543, 695774600, 67955126, 924402003, 4515102, 760800225, 215170870, 661142949, 178316445, 61207669, 397783287, 451966082, 928168400, 878115104, 47755313, 168017857, 306875236, 661858667, 598224437, 300220433, 841193296, 951957243, 907787271, 666208081, 485509335, 317488639, 590903034, 471106724, 440118374, 604096332, 596958847, 146719519, 268562920, 887477044, 811717935, 380270795, 68766181, 64178440, 665154229, 333947475, 253390710, 581904490, 539674147, 974440153, 227705047, 48416653, 407630217, 113685035, 362703643, 148350227, 31865475, 518000176, 983262217, 239915648, 214205707, 567311037, 500890033, 353014985, 147895889, 821700520, 244074927, 733726214, 201074651, 481427981, 939693336, 93828098, 781783981, 123424140, 774093846, 280214112, 940019683, 516840451, 655544262, 120035227, 22042481, 682956871, 896483015, 773688173, 767351613, 464276606, 397724265, 861409344, 731164059, 537012010, 470891721, 461420438, 589949103, 155842388, 881833046, 89909403, 963328521, 770323458, 37451079, 320785336, 435713467, 184170595, 924653873, 277768214, 270615242, 30335202, 247333817, 681552426, 73410887, 215346273, 132007875, 596370279, 380241190, 364216544, 315626236, 564621579, 785133105, 431336, 370189836, 232249298, 467867421, 752836153, 836848211, 236062830, 342911298, 988473199, 615036170, 491453534, 204726881, 943855315, 538312373, 87695815, 625284042, 323191975, 159850787, 430657150, 891067921, 878650324, 668297760, 341616159, 127126436, 535600341, 446348431, 414341413, 398559543, 249169295, 927607669, 477768806, 433981129, 589023331, 309314769, 74133299, 38010025, 731979367, 515537174, 181943779, 853656415, 953341026, 550442152, 44654607, 659728253, 905350255, 904528715, 569271102, 890310992, 882299695, 531830841, 959651526, 275562617, 823708063, 991983531, 818848240, 104061301, 702067649, 256109266, 511837806, 393674510, 805812387, 420218636, 480713715, 797382029, 948273778, 377351286, 635671632, 23320733, 545032965, 446536229, 493097851, 702223616, 390529911, 821929314, 573421205, 209600322, 111991385, 740638832, 179734396, 407604672, 814481625, 423616352, 787463670, 349213649, 249525692, 486692404, 114657167, 472945967, 647702537, 431315782, 362754221, 343782429, 569411507, 459174525, 733280183, 326247536, 31378327, 165517837, 135225190, 284516925, 392934158, 40602622, 564138169, 884663915, 403524494, 352170766, 778499501, 546061533, 13757852, 975954792, 263540682, 357547187, 577574926, 916236956, 951329065, 494999853, 687686648, 281093393, 702084910, 604950782, 69055277, 734774924, 389280651, 21220670, 374423768, 209604840, 264476974, 130727306, 91701259, 953840286, 256008250, 586279501, 56941423, 335202746, 347850797, 982001381, 941914112, 735958884, 918042440, 501080676, 936899239, 190307681, 736882719, 437890182, 672251010, 256110597, 177161091, 75061001, 543618229, 337956978, 972266649, 530397130, 360061493, 916494654, 734942776, 197170154, 911561572, 563112126, 216648566, 778671408, 725366406, 95488893, 842315066, 648996395, 70933230, 45951267, 345980014, 502618460, 961652049, 978657503, 436212310, 384387360, 793113845, 89132595, 672010534, 881541083, 128545398, 832400456, 97736960, 521098298, 366395199, 156956352, 233025833, 471807383, 256998560, 667640453, 404516808, 249134209, 398694098, 250777868, 785403997, 588237213, 96221384, 370048338, 16863641, 179673141, 701008828, 482707720, 501928097, 785446846, 846240140, 378001819, 800842353, 985572945, 986572227, 558494550, 740524193, 528159829, 847931411, 122044122, 559810854, 910526407, 248188842, 952268558, 862847670, 687931679, 306945082, 462566413, 569344787, 81527461, 780378395, 489838561, 21925109, 597872636, 629924684, 401815120, 662041932, 376187468, 716491086, 860062583, 62184909, 383919642, 660038887, 77058363, 678787687, 421831316, 370813951, 246074840, 150691893, 267707601, 522007995, 321642347, 949936750, 270836444, 897686203, 649064834, 626285260, 938580939, 977204723, 570839504, 372422712, 831169652, 313733842, 221120996, 252360179, 860918234, 455718657, 471919618, 852680744, 2286621, 135715057, 344762955, 924897363, 508194347, 493090116, 187734118, 50833153, 525293536, 500644320, 486050223, 371399421, 521120355, 336471027, 731467676, 785958203, 94382459, 547483924, 962226463, 154252101, 157658453, 601086742, 987223731, 680531593, 935738614, 167287147, 888018186, 512287750, 800487039, 806916466, 508936223, 428932755, 291187165, 418735525, 545620280, 900953052, 623739855, 515793175, 326934859, 263915121, 591267858, 905527810, 115159335, 715183196, 75152768, 676553488, 909396167, 336297066, 553896556, 649593261, 929823292, 477120853, 667326805, 74473682, 357890599, 22699029, 56727145, 279376353, 765795029, 417772203, 742312908, 492889481, 159120563, 880919195, 9030716, 344716269, 522768400, 349620871, 947446241, 521543459, 95769347, 823985080, 312932880, 145524059, 574016692, 28892674, 124072668, 784891084, 642870632, 504542280, 570633703, 966052539, 887485373, 525163768, 111298355, 305398363, 509140151, 816434288, 749676570, 973159047, 692760917, 616654857, 230569494, 537334256, 103381817, 100174122, 58501457, 560832858, 650968977, 357863250, 32972534, 730799151, 973048872, 11480838, 40425508, 490357682, 486226415, 95120855, 673178392, 832192089, 388942268, 48847804, 812598743, 708977172, 598447330, 404807032, 57726427, 679540043, 762251270, 67059526, 969023957, 622602539, 863778825, 993684735, 737352777, 545402397, 906474282, 354862001, 586448668, 138979159, 578814574, 21213747, 116399817, 420488565, 803732959, 293668989, 161870681, 463270231, 502603474, 464168793, 395082148, 540742022, 452892192, 967125077, 975580047, 355974757, 73011730, 933877435, 372776618, 723264878, 787882130, 314272403, 531095919, 47554500, 75911790, 317399666, 955760054, 557161372, 516303504, 573649369, 989992289, 549077119, 128135670, 265898924, 80558212, 867030365, 843510234, 329867123, 366831880, 813504719, 135148126, 203671962, 377571119, 51904355, 673611801, 541689049, 282736312, 190864539, 775039252, 739865016, 534723015, 250644633, 423866845, 735489265, 905902685, 370844477, 769210853, 630026607, 748830700, 555248654, 896668221, 26492273, 43257977, 419968668, 28324998, 33341261, 116311903, 486782079, 410156638, 962877312, 105269247, 898575458, 178948434, 956410739, 497655166, 291763455, 510796002, 550036952, 840042631, 924593881, 958743130, 447585619, 537188040, 781406753, 596259330, 898402148, 520257049, 571578979, 948577958, 723538053, 988112421, 72665885, 64658380, 39572309, 847541094, 610373939, 759337736, 147205420, 567195558, 563631444, 408515584, 329214652, 855490936, 498975079, 970660380, 224145615, 361701323, 668560138, 894245519, 579007150, 765092649, 243193626, 86293283, 546087778, 526768212, 714221144, 636792283, 572758535, 177402770, 637459257, 725372168, 663359206, 458624748, 254072463, 715582413, 650500232, 14262872, 932856810, 354385504, 691857992, 117321397, 580384001, 438829295, 386185277, 156396722, 227519290, 40783973, 594511946, 19834364, 132726189, 356670360, 745548388, 73405950, 418845919, 30843702, 562770848, 713803660, 563017196, 682452836, 139033591, 945275825, 838979753, 645833477, 332321122, 253005496, 68965739, 957743089, 43398091, 521621240, 675638148, 116187357, 946463854, 701954557, 145850949, 777780105, 275994092, 168520375, 288235863, 312025435, 168353188, 427266784, 218855095, 364582197, 656940657, 92881089, 962602526, 403112503, 460555280, 574503432, 783111810, 908650214, 135267694, 848026967, 360505240, 133049264, 406123662, 445958103, 306058758, 597258128, 722739432, 985213234, 819288398, 185325627, 537563789, 874172440, 32125846, 35917258, 939169603, 642672334, 892505649, 460007278, 935675970, 904905785, 648909202, 69352811, 363886521, 363472742, 80862248, 749960312, 372692095, 728732252, 909283574, 78683831, 242322650, 167002670, 286638230, 245324699, 576023905, 41490548, 798762995, 780883352, 398772442, 553434058, 377952852, 394513586, 224012874, 537223698, 167483378, 931695093, 46211355, 431533570, 925211340, 252244212, 691794231, 57356759, 934724037, 303791426, 192102758, 495508456, 643996240, 181021102, 987567179, 153809597, 145032100, 395159647, 894172439, 28352366, 789781566, 737110852, 230082413, 52951964, 152544129, 419713488, 803818906, 878481166, 442266098, 269771780, 622937444, 774340407, 889977526, 736317427, 29337714, 654184804, 504294289, 716609183, 999087203, 968087437, 435964743, 981547577, 30013160, 47199777, 831609280, 973195604, 405850900, 861313355, 649723655, 619042676, 625539474, 534099737, 444521605, 487397519, 534848184, 208146736, 647756254, 724231614, 793725628, 802484272, 629745078, 879222117, 289311785, 942733942, 207333186, 523189838, 795635938, 384404054, 368974387, 276764566, 244280924, 840419437, 989052147, 753474569, 862716703, 965113318, 843312142, 475097556, 378545842, 571626984, 873531589, 46795368, 255136938, 738052191, 640151164, 267914858, 977901012, 78030728, 91445580, 374419738, 419835323, 499548953, 909223041, 242466505, 940662865, 572748072, 829618048, 540144949, 482837988, 509672659, 838602204, 461852582, 593205768, 311553713, 183276741, 846089641, 678801416, 652349761, 988589565, 550178017, 735791882, 252511277, 516995948, 456999464, 675602688, 203937950, 802916368, 987893836, 257618551, 135644000, 289447167, 860565346, 814727436, 180981726, 936571301, 164106961, 18801530, 219719727, 292009219, 57743992, 49098442, 634790807, 29686997, 915392592, 153667246, 381948087, 503963746, 739747800, 757149380, 400785332, 877867524, 77818358, 749107972, 37845077, 126568723, 786677145, 537684971, 860270939, 307613067, 375212195, 98326069, 832722309, 681795335, 74168491, 422333878, 919331531, 491730091, 221012, 264970662, 30143916, 323829319, 983860583, 452060368, 502770175, 214756485, 249039784, 857228133, 916691977, 837833448, 854696562, 334762492, 769236561, 424864652, 21920021, 911228871, 717163490, 837331564, 24280030, 101512389, 435457432, 185287829, 589395516, 797836633, 395099917, 370156391, 582692353, 823740757, 543855108, 482417278, 479030395, 677436335, 980169865, 16514266, 329612656, 347758502, 468921333, 906800611, 584403713, 954313126, 243681385, 168907232, 848197349, 416046279, 235083805, 711256521, 361817140, 252456138, 686383976, 725683674, 776383000, 487153973, 238149294, 542268503, 908843937, 204788598, 938083977, 751496101, 156858765, 171582367, 97080985, 257362269, 613036423, 861261410, 260752182, 982672781, 617972467, 454922275, 763047776, 498764720, 553293551, 634471748, 249059021, 825362379, 959536376, 562115225, 907809555, 268751381, 53457784, 728922536, 659046802, 948583620, 785092788, 457615429, 128194913, 451450986, 660940042, 621815295, 45252672, 774352194, 837625167, 556430173, 81880189, 533703361, 946698279, 198962058, 118541410, 393427130, 79911682, 976999493, 39712502, 611202316, 351030049, 153205732, 224520914, 144722706, 569918373, 920497616, 265480689, 713469787, 838816208, 689973499, 171915544, 953660546, 407532505, 929611838, 897159495, 414409712, 334534773, 640558240, 826903171, 400608543, 606834971, 287350934, 279182720, 222431223, 83476336, 472395075, 534703189, 926340099, 328071344, 541624687, 751584163, 43994167, 156561442, 146154001, 188473228, 347184434, 191529383, 298996683, 704607798, 843823430, 512243501, 395721808, 867766878, 837613544, 975232728, 489213736, 208876201, 665838868, 709948612, 908492668, 816681496, 870823883, 886386740, 820345375, 220871817, 30374095, 339378442, 208000297, 551656382, 465975748, 307070882, 117364464, 228776228, 903561438, 363618850, 241167294, 472616189, 455690365, 798280183, 833523968, 406208822, 263213136, 276523344, 733847874, 307687359, 992164639, 802300903, 218865150, 8530734, 342512403, 404762289, 774067484, 134510860, 984765797, 690290666, 962863055, 532340395, 343429403, 762097950, 959808864, 215163820, 418098086, 854908634, 718645938, 565338429, 37494122, 555514740, 916225028, 498451096, 428464827, 760521933, 211038078, 827185011, 437488710, 213083361, 261623793, 341552133, 716171213, 602016681, 499655276, 807410685, 62309340, 564001931, 603053818, 516575730, 612753226, 979952258, 294899302, 175655544, 192188365, 581248500, 410617686, 670571136, 235257522, 676276802, 790903775, 293854368, 319801096, 449744602, 894525053, 91640295, 812157994, 333873675, 460777213, 135991331, 605402349, 95427959, 617436129, 15271812, 221948554, 310493937, 153109290, 505603818, 983998101, 174974970, 896595917, 456022567, 228991458, 255401365, 8114637, 541327379, 468953022, 98862322, 435388529, 739110596, 659243873, 66757530, 147704930, 949675287, 771830828, 880244185, 786703355, 994079257, 994304103, 504321453, 694081531, 257207894, 641313621, 113017852, 41184027, 5270288, 150841546, 310201090, 780435875, 716353775, 10626856, 402374764, 313932563, 92485122, 373417944, 881374000, 560012489, 679794966, 962321740, 716393596, 800257548, 406229441, 86547820, 885044303, 841894842, 208036793, 908197964, 384890730, 816544476, 506524520, 195628807, 231143142, 482263295, 46932996, 980264018, 318837885, 934909316, 376497101, 95729169, 589969137, 458387901, 918293567, 721769759, 532478806, 447561439, 969549476, 943552597, 51978815, 736551741, 810130848, 118777024, 761466992, 123767366, 61890548, 532048640, 505229862, 594030073, 640388105, 988505709, 947836777, 779988294, 882790477, 516816647, 920694546, 932109364, 682868482, 770204180, 254828497, 185461035, 668780006, 458635088, 536699423, 968783690, 983315920, 601737277, 178080255, 244289721, 955006279, 84972719, 833133250, 779933312, 894249598, 714910497, 654547126, 454111570, 232222077, 574319494, 851876237, 445994422, 864946832, 994057675, 672328236, 100379920, 240677239, 578183837, 696855181, 360832275, 744071590, 823271358, 248663180, 688354946, 444374367, 299853785, 88598583, 18399718, 99006565, 217302280, 986408857, 39794776, 348487645, 553582315, 245554286, 764053402, 262491937, 927253715, 508756436, 320721001, 966014887, 657591663, 576255692, 817161545, 81556301, 978861907, 405113392, 873727468, 105021820, 539256756, 275798901, 928396433, 642190298, 521924953, 199354784, 997551478, 315968083, 421543099, 743413825, 416147661, 69338626, 732669541, 27115004, 368805583, 216830804, 887381478, 716063574, 14571138, 168167560, 736095065, 82571934, 790090810, 519916991, 246925640, 886012498, 467835851, 409712899, 441545420, 420531448, 667564827, 124584147, 65396962, 71668042, 464687589, 79057247, 48803182, 60454686, 421346391, 191303916, 659321708, 990659240, 671534699, 190134615, 46635886, 38058986, 397780629, 30999115, 651957532, 19159879, 25173405, 122200756, 868317683, 441154556, 891529306, 540486987, 630267478, 829430853, 652774573, 450441505, 211352550, 118747927, 45394748, 390351967, 756394695, 897354676, 576398014, 645209772, 230844116, 480410494, 568319077, 598015866, 853255251, 298151143, 797429339, 859773855, 584617288, 556991420, 276476920, 957985434, 429176445, 552272535, 396546376, 530410074, 658621606, 594910535, 392762089, 688382770, 339392098, 669457500, 709924744, 772489234, 875703660, 968705656, 926421, 190581633, 842608903, 874971608, 737257215, 230930946, 242366646, 652544013, 409688006, 337607381, 388637592, 735958910, 482672448, 169181726, 661025922, 549897866, 605351151, 436474029, 731920304, 775691297, 744760405, 219122073, 291752732, 535634763, 822401752, 739716995, 715583401, 654745991, 248939912, 729606371, 246811845, 981258490, 837885093, 895778524, 994705446, 153915255, 46865204, 520871117, 59071842, 932629312, 352090358, 876794175, 961145985, 566041408, 320013172, 532840177, 816930387, 386241987, 686442233, 213830603, 726499509, 85003145, 301482598, 245706698, 307652251, 228445432, 566238923, 97628990, 298165322, 5902827, 221357458, 805438880, 500121283, 839235923, 908532583, 800190721, 213140650, 523269068, 577155084, 92519294, 49691346, 146983208, 839457185, 844162988, 891710352, 420452914, 950307922, 32795367, 728205375, 963739727, 134354906, 463276310, 887462337, 487637157, 447480356, 899340744, 462234496, 680077790, 491969868, 19099458, 964625686, 196072157, 961264159, 923638077, 852675661, 959963652, 12817739, 130596535, 219228031, 137948409, 432482596, 996976667, 646061389, 86284605, 327835833, 522641106, 833560874, 820580830, 335878846, 315251943, 509906617, 570855649, 628663526, 804255488, 509661801, 470289057, 165075519, 233657604, 148612567, 408830388, 200996089, 368950321, 655739102, 889256259, 160707408, 93540004, 259721902, 471193843, 752745122, 445915097, 721212223, 134370515, 259504061, 695475438, 29782270, 69857146, 153495522, 639871669, 919576849, 371381313, 809997909, 913812790, 55545740, 362143029, 468246900, 735281458, 464029849, 396200933, 648964139, 8978883, 872268973, 805163565, 312757698, 230498117, 707553649, 879991503, 717170557, 353356868, 524729451, 546124380, 219251699, 844548545, 255157029, 651692935, 319613150, 434384575, 147216610, 957077779, 136856696, 505930432, 152226899, 812122398, 948615586, 524230674, 208724968, 7441833, 219731302, 338637610, 621669429, 156483133, 587200561, 747637605, 338511001, 943093132, 743258784, 930023883, 793469483, 343163206, 928132454, 1735446, 10942891, 187814037, 163919865, 435878028, 934217368, 275705658, 441276920, 710440658, 122727369, 732576978, 585515481, 720429859, 893915482, 757510929, 861534652, 996544410, 335085650, 620145245, 429530828, 209983098, 64487952, 853687012, 137616991, 920547575, 285001070, 478330825, 974688083, 198279646, 169135988, 271909713, 990393786, 566230534, 785904035, 158293817, 282037577, 77731661, 607289673, 338327965, 249991518, 662136736, 797913531, 575881432, 535333815, 972255988, 710914357, 452942787, 780519124, 367080658, 155408224, 145417516, 748103551, 164472024, 65551261, 373345610, 851244825, 569678008, 719004480, 730110856, 496271197, 876988462, 34596499, 113397908, 619026992, 491197398, 723421882, 258073038, 444055906, 329487774, 67252640, 21155406, 98623935, 464261870, 839172919, 236891612, 651800716, 912533291, 353972327, 459939512, 988458554, 690265693, 924987281, 364430349, 120439261, 499942871, 614013511, 593195223, 495282722, 599338952, 531090005, 19198032, 646211816, 200511187, 15855798, 524915281, 826166009, 16857258, 570536674, 389477098, 530956382, 112673358, 250558195, 499673965, 157580946, 726967711, 858925049, 268817568, 151102032, 860421745, 906186599, 354114283, 433408818, 886748152, 192799737, 963320460, 741711249, 882437697, 821443104, 991525524, 216949051, 139392407, 915201844, 142736045, 149042544, 601889062, 311992811, 548787918, 874981500, 686420471, 363964337, 683641476, 52223727, 118283868, 790418568, 667223613, 370816314, 525209309, 714608349, 91505765, 553251280, 48446953, 386336706, 741833007, 676814650, 457742826, 814892378, 611699170, 966361486, 597681317, 334369490, 653048815, 517790561, 967426413, 68020214, 771458076, 811235209, 606916762, 998493611, 760586777, 589718279, 106432875, 623400869, 24646966, 403849371, 53835914, 166765058, 166029668, 332235551, 640627682, 231228185, 48739376, 135876632, 671349733, 405805375, 323614276, 280295896, 267625463, 583316198, 894415350, 779988590, 250644676, 496808453, 368116188, 881821628, 477995744, 84231004, 307992096, 514381373, 69528937, 711464265, 364149386, 269771730, 281068907, 562610061, 497541690, 154376744, 270990911, 223909135, 44852923, 806313913, 644975308, 417434901, 90632355, 823694031, 187864713, 64070147, 914656369, 426898650, 686806753, 719059003, 991972020, 861935625, 253194040, 744242552, 319979642, 447097202, 855924191, 777846834, 633655832, 804189521, 939755192, 529547949, 626067152, 755995983, 475529722, 233102354, 851372045, 34665918, 128485210, 943316886, 822386279, 482967820, 581907534, 556902842, 679931623, 892986456, 532725158, 655025791, 657042417, 357018503, 925826740, 976666291, 17252431, 830920753, 521135236, 275419334 }
{1, 1000001, 496500, 499833345, 585458625, 372905188, 615628158, 582221409, 488949506, 8881204, 713288825, 36400691, 860561530, 927523030, 849516510, 697355927, 9945975, 342690635, 397197283, 922519262, 532509792, 555742216, 595330257, 945691197, 682715587, 715190509, 282285447, 421773628, 523533337, 524066737, 1982100, 291693719, 92692083, 763905963, 220960649, 553021487, 352233292, 971928905, 102862005, 235856048, 977095488, 594498457, 158878582, 792252704, 350541841, 350338828, 769796512, 60973801, 604078720, 986205554, 284184608, 209430688, 696442306, 543067316, 723568492, 511596462, 229146610, 526409346, 756265384, 72399654, 190905223, 769807474, 794841348, 759636739, 431815707, 715378281, 189269436, 121375551, 669696535, 661748477, 21049595, 410456772, 389404905, 592527759, 663416950, 913545594, 710332001, 437936730, 915945432, 251870769, 964016470, 201308042, 291901802, 375372423, 567140884, 703615734, 53783180, 972506366, 30950518, 166574027, 526303556, 260563735, 937852616, 551234924, 576665203, 827043162, 98064105, 472043546, 369658325, 711773289, 495302361, 864580199, 840538522, 976909969, 426128325, 946960006, 882222000, 330472106, 824755966, 593682013, 271738068, 310330170, 393138478, 42804224, 749382701, 408830522, 309590166, 534709098, 26000018, 512401818, 611258330, 161867608, 280186511, 541516029, 31937535, 388851680, 75076747, 199699853, 286636102, 447265188, 537960969, 866933363, 868602999, 896285177, 439261820, 136260027, 351229434, 233690280, 525336861, 42346570, 433756267, 347318038, 390218621, 144038066, 38969351, 984676628, 74162150, 553714080, 8336952, 823667185, 901843285, 363602907, 278710654, 618083276, 34565040, 95169723, 929911523, 174396215, 651949181, 778744758, 460692990, 420724166, 906464135, 467410617, 151787859, 267372830, 463728826, 265314362, 204273567, 505632457, 267689463, 960360283, 761715299, 543585858, 450330049, 646507146, 355961547, 882775362, 730266061, 289378752, 973558656, 786641922, 749016206, 112725818, 898375616, 541659327, 320741362, 887821414, 554643639, 359347927, 728247767, 555618199, 451185699, 59685875, 311416983, 917319713, 610951819, 247102131, 382309361, 271574777, 495016471, 726165467, 862518939, 761412108, 70085419, 839956930, 395984992, 71557031, 328316112, 689704632, 138898142, 161665007, 684227444, 136465826, 219132197, 667536323, 479007203, 521719354, 342472334, 557146610, 387037002, 765783661, 798122687, 629131397, 829131376, 379884005, 473045686, 868931328, 556769472, 760180937, 763523598, 59505423, 283346279, 37871359, 626378550, 649359214, 454488984, 376269657, 986784577, 371138703, 968205804, 860564475, 627824399, 189666364, 805177926, 984743391, 386612690, 489745693, 367790858, 285185079, 81404419, 48401315, 901644183, 916458505, 691145844, 772467710, 44913265, 933119863, 3789864, 802664015, 103546412, 580815156, 679923649, 31118515, 865006564, 37966869, 70847673, 625085663, 139499401, 234772060, 737553505, 657187996, 803495013, 319634539, 903635658, 367124154, 838983385, 215374362, 204738019, 248405507, 765887615, 412551589, 922239964, 126530447, 30861016, 653621466, 370045211, 445106363, 87012033, 301245461, 388621379, 309500696, 818282993, 695791550, 150931968, 948284336, 234911384, 522166663, 168114141, 783310787, 317849682, 646653562, 541594064, 970430359, 181849477, 860247009, 939502913, 157518037, 791673312, 850334, 148619650, 902654309, 437435412, 336634270, 927508771, 817315130, 767364973, 259456354, 736993642, 971817744, 264684867, 973304291, 878344155, 855109541, 62314025, 442760415, 634839045, 837057706, 868351623, 600808341, 15974727, 258221159, 5856056, 922275095, 463752143, 461821768, 153322316, 204605198, 72334976, 252503267, 870350385, 203314163, 196008077, 697483603, 311217232, 169513948, 744606987, 985857007, 545671202, 982379017, 214692081, 880774825, 331101275, 968997558, 148203614, 485343911, 983415342, 39839418, 439203602, 236220728, 800442579, 432727186, 799450793, 218142342, 251024578, 891655682, 576811732, 834309765, 865222256, 980253063, 444116256, 208555241, 150736833, 53374210, 439450325, 230418545, 761613973, 727751811, 69236050, 155534367, 562036638, 807407306, 954150724, 467848300, 952027808, 701752441, 220111795, 739148374, 471797827, 219120669, 645252946, 43319921, 778127372, 537197848, 262088034, 293750809, 669366484, 954860347, 266873422, 93913244, 229664681, 471429393, 822930215, 74973265, 171102038, 407611562, 36660288, 585848473, 246603974, 602944887, 455807972, 429545867, 67354828, 932553746, 501273751, 724629965, 278757512, 637471664, 608783084, 317940800, 399758386, 320390594, 364994573, 160538372, 53357745, 623939535, 701831628, 499636180, 755447415, 855090141, 158503342, 877825893, 338939178, 434394559, 859210861, 431762498, 364931321, 964698684, 328923801, 214257399, 930801734, 748538613, 541291345, 624450861, 758669713, 113746088, 550636643, 93077945, 246499076, 42069462, 485810196, 2358809, 610060888, 363678305, 581321285, 951521744, 881022968, 216841107, 891323015, 319551518, 732959068, 645628333, 275626516, 830346113, 682084673, 582501131, 516837771, 904577780, 316753048, 575953331, 974001733, 254605888, 555553926, 533311238, 41163216, 300516867, 126932569, 891562148, 3678200, 760846504, 39195933, 87646308, 967297017, 336936580, 789616144, 166502842, 420274611, 328079824, 525358426, 93195851, 845654644, 226299314, 244767792, 662493517, 67946467, 658523068, 124502011, 224107916, 636058048, 661167740, 396947682, 370463734, 574700285, 118004248, 255970323, 56570568, 842007986, 476856169, 757630797, 673227677, 713083593, 621582122, 634981975, 295311441, 148325830, 290753034, 231753696, 782091350, 173330873, 642118937, 162144036, 821270852, 681581252, 916144173, 877746823, 875724331, 755599480, 103956332, 828883040, 752765296, 286472940, 262511886, 76603128, 421109202, 343013033, 88232998, 906494338, 157089735, 311401123, 612056439, 728052512, 53764515, 556239461, 617921846, 527441247, 821729754, 906093898, 766125209, 972443941, 9120876, 508868542, 851487502, 723148405, 835343893, 98876042, 170023167, 487361471, 213612163, 658410655, 244929624, 15984922, 627426594, 514645409, 182396671, 333621979, 115305296, 979263269, 257457501, 45384249, 459606002, 320951889, 235140334, 850178965, 205073061, 501320168, 278100935, 422401249, 108085489, 836039802, 430744710, 992649221, 851067401, 116453529, 52948002, 371893654, 765534019, 762699284, 206302528, 995974965, 63362866, 440013887, 258402273, 290226102, 744648139, 833841912, 941912465, 468057732, 760861605, 251047093, 845102058, 681135100, 169875725, 866774718, 931642346, 479289391, 337811811, 712492254, 751550585, 883454098, 758350058, 608157151, 56921507, 844419095, 527159915, 18386717, 542188319, 151642175, 899374401, 246569706, 771519822, 372608636, 14474473, 47425604, 266697222, 998933440, 153755967, 971281478, 421722940, 667099510, 763487987, 105573339, 465820338, 80487229, 223445492, 72985625, 943975737, 816430476, 618582322, 374450341, 358080618, 725250100, 646895656, 429343079, 433696866, 47250898, 577543170, 893542047, 396763726, 246009041, 192405902, 937264052, 39571542, 855552492, 545974495, 205681668, 350162494, 526654393, 769300901, 501875729, 544754382, 278681526, 801623190, 42466899, 426588363, 120419458, 310705351, 70631342, 2056467, 336972126, 345834434, 118528626, 939388263, 721527226, 471138464, 774266558, 751809176, 903034557, 379619437, 779958125, 41366559, 741929687, 691500082, 64306609, 233990850, 911208491, 124276244, 684020675, 120984066, 548066987, 38405147, 821339122, 606676704, 563717967, 130496309, 23061443, 658217643, 584533555, 241463546, 257142814, 478660461, 829075220, 359045112, 76606710, 573269080, 708297016, 280962049, 884206454, 181163035, 216289027, 189152533, 493819276, 787840623, 291082371, 588231979, 881167676, 151604593, 679254558, 126759052, 501798934, 869458496, 247525999, 450798998, 585068658, 532253676, 675946307, 628404269, 415013658, 659931497, 624151264, 716737543, 503771312, 856442126, 673384236, 124130169, 666627863, 736353901, 933983819, 891905515, 865943505, 234504169, 185274708, 808081915, 288313655, 541066713, 240910908, 508603373, 9341197, 752660973, 349575737, 795195572, 11680200, 605128431, 213537826, 349877292, 111646989, 640951046, 211328610, 319756173, 443845777, 456894130, 957632972, 546809302, 626933214, 907094946, 219546214, 561697655, 961506616, 640230400, 994764376, 274882662, 181234018, 719387518, 33140647, 76449327, 183859930, 564909666, 191265423, 883128654, 932313615, 991271894, 688048124, 146132778, 604595159, 200467373, 939548619, 30504280, 611150680, 17690523, 521088995, 774264031, 516336115, 199395948, 200030060, 228038871, 851716151, 68847969, 195104563, 619138659, 583734712, 701466027, 980315262, 594236270, 896355153, 68700191, 834692750, 959609800, 218693561, 52678010, 801424703, 279292535, 823289732, 828218068, 944834455, 16220970, 48892456, 959148585, 845381554, 988448135, 351533509, 172531948, 174165440, 690374288, 919922458, 103517896, 544664525, 110620954, 883537004, 591390321, 279986063, 959605034, 658402800, 966280962, 628536114, 281868061, 287223985, 616437623, 441997265, 26516359, 720991817, 937236963, 516133182, 632749886, 886427168, 929628182, 252877453, 758905968, 124640728, 87846179, 851250617, 381156391, 831962023, 346276646, 293789238, 300376677, 598072569, 50770662, 667410635, 592758743, 850043561, 404036933, 711937779, 577490676, 13955893, 579231613, 988786232, 717806440, 850173465, 633286056, 361320102, 946875662, 197433683, 706213264, 640887070, 113233540, 792676849, 338098936, 497072110, 553213718, 342937262, 959617325, 619061683, 142478379, 91833368, 592822383, 295825242, 906244348, 606344991, 63552923, 511953456, 829414746, 912606641, 517763543, 269876488, 660723590, 505838859, 187867444, 102108473, 637776150, 165588096, 189724495, 649023423, 937787358, 214349025, 934545997, 248926965, 698543883, 640611974, 555915862, 66297733, 69967539, 164843941, 96703299, 944406061, 266922755, 736673507, 523408677, 74539093, 368472422, 672002929, 231444631, 137133925, 20518962, 828724964, 60349418, 58198501, 847333386, 376289447, 339133368, 744965662, 276720800, 563442114, 253138923, 808478580, 601158405, 486211098, 133111921, 458967455, 331181667, 197951647, 981006314, 874599173, 935088487, 360400515, 527439659, 191533002, 365486817, 407817010, 353347493, 902134817, 805573261, 961654654, 578377510, 445427861, 277288553, 218629308, 406233239, 250721392, 507786124, 395278619, 494613765, 822834958, 360929785, 200925035, 955290387, 715135863, 962883077, 688251537, 159637492, 714133338, 270140423, 433943489, 504628968, 476825489, 602762713, 327334117, 157557555, 182472173, 362601185, 997222612, 140264081, 205001785, 385409604, 922504989, 653107995, 277071528, 767679955, 799749048, 825014793, 715913613, 611730295, 965556765, 471062170, 701426575, 943057770, 919768716, 381285664, 833999387, 175077010, 106845766, 326566593, 642677261, 280940983, 435169716, 295222406, 189831759, 703837237, 555248008, 199582791, 638898136, 968048678, 272156599, 205728081, 29934980, 119166364, 816338079, 933125935, 615884627, 60471777, 228229129, 519154449, 756809947, 553136509, 888753326, 825906789, 438189931, 98204524, 454153883, 323633979, 840397160, 958276236, 645748867, 17834045, 24879660, 785100583, 334964904, 859790259, 775318403, 557322117, 56577447, 783229834, 281573036, 729567389, 733813646, 959483097, 759874434, 562564264, 379486594, 301841316, 944263244, 795608948, 711565966, 770245796, 696798986, 328248239, 395559355, 590358519, 945338068, 941087734, 731511132, 153842889, 175586933, 569260334, 226849404, 443758419, 824383893, 750767289, 797811783, 161300725, 740428188, 901913894, 781909963, 986083837, 715224258, 31917818, 379517578, 141723708, 973509065, 563171729, 233536441, 634773517, 914098812, 751612392, 268618635, 323413093, 15828203, 118028522, 525394347, 224738235, 18536494, 14090635, 683765409, 119875059, 683511312, 733391020, 572350898, 709876230, 14252227, 905761822, 75683707, 965133259, 999578128, 990540105, 501364757, 899139532, 910030757, 325779832, 472123681, 354093075, 826214431, 401989045, 453728226, 485182924, 140618312, 716158201, 771838491, 828187775, 411440888, 70840227, 52923803, 73893425, 375724676, 318677487, 964853827, 846143473, 469834618, 52435946, 391658644, 185470531, 116746353, 144179845, 563901886, 965726645, 686720092, 435487006, 619075546, 817734876, 323555401, 399440071, 191831536, 766832492, 41957248, 90673446, 574498811, 622313075, 440899581, 702733364, 451511450, 620284427, 417749750, 63175036, 483922279, 17592457, 560959684, 469224185, 536945808, 479398903, 653696643, 687656709, 756280693, 494970625, 592625483, 384690719, 132938965, 807929440, 569261466, 895631710, 726576701, 992488493, 641476441, 636298985, 261353281, 232072749, 419131625, 304193469, 898596367, 578984837, 587674114, 816986248, 498698187, 585424726, 660247106, 708442042, 727644199, 622862315, 503452190, 693335481, 371472973, 179254365, 632801410, 963221455, 879950575, 231996319, 709934366, 685523229, 546131091, 572010707, 978028616, 523696717, 915168675, 366315013, 131804212, 364844156, 391298224, 718430676, 620529327, 270394924, 873438332, 943523373, 896918231, 525760487, 647408811, 226332967, 284738061, 464337363, 932934825, 693965877, 734701957, 431626121, 276897062, 735091342, 626225911, 644993646, 419598401, 919925124, 360268848, 387948313, 338875657, 269382195, 871278952, 290387825, 480672134, 551896500, 72778772, 249943897, 42110512, 928412512, 516864461, 989595623, 365489414, 70460888, 101336233, 408280985, 166436172, 28659330, 437085945, 708951101, 246517557, 267554868, 100555100, 345642186, 811857714, 904634730, 753937915, 703697848, 321222789, 869557456, 212599421, 965479116, 718972565, 448619113, 394243669, 182643510, 714245568, 647584601, 165620813, 236073326, 302470512, 728401495, 392218942, 546097607, 695394821, 746939510, 895355038, 663028667, 186255810, 320552984, 602348952, 856658483, 686526442, 991198548, 565460415, 107093815, 415549276, 370190550, 286575646, 199974665, 817959673, 698981436, 231786482, 601374075, 325194566, 626946504, 44689340, 218596869, 644853418, 661481103, 61066226, 505894229, 339434935, 903530042, 496348995, 441379085, 560129884, 716155880, 698957089, 779573206, 12738966, 50758654, 929941018, 548952325, 262817957, 412605996, 214542121, 376888639, 595249982, 540999709, 719476905, 740917120, 798230575, 571114297, 14821488, 233867037, 184819121, 775490292, 737982190, 87422192, 665493524, 506963401, 160515051, 142247108, 180603645, 624809541, 709114076, 442040669, 491654980, 48389869, 442602231, 538783794, 10444757, 62578258, 169050638, 496105905, 845841749, 578160318, 431862214, 704996308, 782160506, 228281109, 507300472, 167631371, 221779809, 614823459, 112014078, 19028971, 120564032, 703991165, 831825995, 391941758, 870605482, 562961207, 201986579, 892048373, 108062392, 691356079, 396222281, 477089572, 255357607, 218757925, 108991335, 645977421, 567678378, 258367859, 798756002, 643045844, 188923296, 5747632, 241086276, 330269200, 649308620, 967017767, 480586784, 190478977, 961009182, 360102390, 578559238, 397896414, 243667088, 841101217, 652337781, 948872532, 376611724, 650329036, 937553235, 317366762, 616201761, 919274300, 315777366, 585436201, 379776806, 331847856, 691378846, 955461935, 699202296, 79621309, 190654822, 868563673, 300287009, 678112054, 263227070, 835136750, 865866402, 24372918, 633535426, 107220868, 684208905, 683472114, 783672077, 265473208, 236457041, 998576272, 343861880, 239224202, 426513337, 329064350, 112653227, 891874161, 16918626, 286977465, 26773900, 477742101, 65651707, 267568312, 760954924, 667126442, 843174533, 848960285, 357151825, 957765932, 541427978, 501697162, 558137486, 38391573, 606302963, 182450585, 344522150, 224914970, 314101808, 329598269, 494245583, 207319661, 671352199, 196006184, 885656799, 947491262, 192227006, 279518089, 61584990, 936433369, 24633381, 15414662, 589169398, 910195578, 884190221, 672189278, 777686192, 990738345, 114527380, 521197405, 571747934, 371120346, 781999147, 709982865, 172000834, 939456606, 503201706, 877617884, 244084761, 675514068, 625848796, 645309642, 583695841, 924747320, 390477400, 102562537, 679608228, 139639225, 13458556, 943221224, 975531370, 941402313, 646644151, 825146444, 67674284, 135553363, 267146210, 346059428, 683431018, 286094759, 748170393, 481238624, 369150121, 323625844, 456992661, 597279992, 456697661, 471921082, 451068658, 895684490, 453304312, 639615136, 791120472, 296932946, 508316919, 37573419, 593532189, 646977331, 809896311, 524266601, 447832130, 288851568, 871769283, 367560401, 266561514, 58484619, 974806438, 691017042, 427213108, 12184037, 706442462, 632910026, 756166709, 793941754, 158627656, 422567485, 206068228, 973500962, 465888493, 493396820, 26631363, 792352448, 834937926, 774140626, 321948138, 9730181, 39622405, 809881787, 771878311, 938431561, 211071867, 506350776, 52220297, 734627597, 584355088, 615421237, 146781815, 893158730, 826963432, 585419454, 558753045, 733202445, 173147736, 234975959, 839561377, 487406160, 619455357, 757280483, 387031313, 435613462, 244444054, 561509538, 223622371, 411525106, 892499184, 448227304, 544274175, 741605033, 121663386, 389832163, 6200752, 241275094, 487569760, 796258033, 22717916, 68224142, 222355387, 164919161, 834759083, 173902975, 371009868, 658321431, 566045266, 16226346, 651096736, 171272156, 575589421, 358309112, 936068159, 228631025, 61406938, 347636457, 986832202, 527326932, 731089408, 349924362, 256721153, 505686731, 738235341, 317652845, 836251443, 144550086, 485495936, 965716733, 593003919, 664963143, 555897009, 10119653, 782994937, 815952204, 59097365, 553924740, 931164142, 236632171, 604701132, 767656961, 38064067, 209408465, 574652027, 576652395, 943952203, 128536630, 519859800, 917807948, 656810440, 128094050, 940636246, 965859601, 214779746, 754172036, 980589310, 444221142, 122868699, 60521843, 865156373, 392785, 877214145, 83815216, 38531713, 806513705, 720981683, 807896385, 790888558, 122578584, 38939758, 494536112, 918461244, 585511270, 992047270, 733509260, 71509976, 284197392, 791681173, 829481283, 326316653, 334118318, 571521050, 477841745, 57990995, 296004554, 862954649, 57577933, 445444677, 73145854, 762978422, 305726078, 7707205, 784663165, 465175050, 671960971, 644076117, 349015399, 45088525, 545997060, 807242053, 27375798, 490351379, 977515854, 46091620, 339629699, 814621424, 656099451, 932515120, 719157572, 138410567, 236570447, 586876126, 12708329, 519340217, 574503070, 583456293, 61897348, 978968166, 795939009, 668570582, 861619952, 573631941, 805889622, 154970958, 762584325, 546458325, 175258527, 115312405, 448471829, 244707384, 11493261, 811892921, 420491404, 649579722, 180948305, 723979309, 441670432, 185836694, 467890430, 416756792, 998578445, 661766791, 420615768, 798738984, 521802940, 517537318, 461265148, 670565670, 286688200, 20916519, 235033100, 731269341, 78412751, 863354120, 23140224, 605323600, 514749099, 11759465, 49405634, 881554456, 175366342, 55534752, 533498307, 464995550, 696696923, 699362307, 578911475, 599733545, 49461359, 212786118, 226199671, 1919952, 230533512, 91773696, 145493753, 898899297, 84664386, 931559903, 9814095, 577084070, 454804836, 269538948, 595325189, 953018810, 796675241, 437956427, 62495723, 642502900, 507796661, 437842758, 91559739, 53830047, 66256874, 206832120, 588627771, 803354317, 649101053, 858958878, 556869265, 694744010, 919049958, 466482376, 520803737, 700234884, 290968015, 292138756, 69145893, 555452328, 359363433, 197639479, 299779875, 427350822, 597537046, 359165016, 174909454, 22978531, 484846262, 468058355, 247814965, 88177765, 620053376, 357004151, 841811652, 597462849, 437976972, 961273529, 451907696, 842344607, 447708297, 311226191, 651162825, 140525586, 983367572, 810427513, 713583605, 394792185, 901508990, 379143056, 881599200, 89288308, 451844966, 645669585, 278095802, 144881334, 781020560, 198255472, 450113654, 156744862, 172132471, 846870844, 490025954, 941233937, 567655926, 594140018, 468027720, 549737673, 889505745, 217840885, 266851762, 437976601, 721803053, 201457015, 591180662, 907107660, 957791035, 461550900, 282537732, 628973138, 363134672, 420556331, 756005560, 370783401, 531178854, 309291324, 295415421, 931715784, 69166907, 30319572, 977543104, 397887756, 678628081, 634372736, 729166311, 68134996, 988711178, 44023573, 430380250, 169142614, 702023133, 205312414, 520167136, 464983721, 483628399, 646095954, 903846342, 790585707, 38196969, 399592995, 443996266, 903055223, 149532564, 723536454, 122031726, 576785463, 606369041, 573847860, 469563306, 958077889, 410403585, 34841098, 787223059, 728420001, 197940291, 1788347, 403773366, 717496779, 429532703, 294445754, 69752476, 455281711, 993282869, 510314102, 121244462, 414276864, 822057520, 485677479, 552796575, 650175540, 622370675, 600388426, 30360441, 173663337, 338964923, 525126188, 522466191, 138238858, 615348177, 138507760, 391963897, 976755251, 281797890, 376441004, 453561208, 523651648, 186100115, 528882202, 638176418, 807258766, 918466190, 845519590, 604700348, 597757348, 792702264, 951018748, 614620592, 431724585, 395735672, 276666756, 754918721, 437782396, 772855029, 425997500, 146418449, 191063985, 477845003, 943076642, 478432630, 472123026, 703667316, 671700731, 329359030, 881330033, 125723422, 297422065, 864896677, 490772760, 975147674, 813432680, 952146716, 621050863, 180834397, 499795650, 162619669, 268709480, 915843420, 586821873, 930213453, 251160624, 478481473, 142424522, 322251534, 728496319, 113919329, 510349927, 488104368, 975667529, 823460076, 502659709, 480536058, 399895688, 208014045, 352701469, 953682386, 872242445, 83561980, 545284372, 181442004, 496128661, 141565861, 537220861, 340316366, 944058894, 61843624, 10174039, 440030910, 787089710, 778832597 }
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 }
{223436, 717429, 188876, 582823, 106313, 893285, 868166, 243793, 766660, 718583, 247132, 975895, 384757, 317588, 94479, 330326, 736442, 12781, 474679, 311017, 544230, 371637, 599097, 705333, 125272, 621033, 979191, 912660, 505589, 943534, 934896, 339740, 714218, 171414, 574146, 835639, 608763, 981392, 525999, 792489, 567558, 156414, 94807, 338532, 748920, 59902, 36223, 866672, 46638, 992836, 708320, 156324, 482837, 537547, 918119, 600492, 891224, 863469, 507521, 594614, 858614, 939027, 872812, 891637, 366527, 530830, 835094, 692661, 843935, 304446, 345955, 512956, 668626, 447675, 536184, 423115, 838153, 961340, 86727, 748532, 837602, 146687, 920239, 734083, 532099, 770831, 179680, 702582, 489011, 834675, 253026, 202607, 784306, 16422, 240563, 207744, 494950, 993767, 613729, 712695, 10314, 899367, 337917, 690508, 915813, 100060, 187357, 901377, 701929, 857571, 985556, 701101, 24473, 203786, 180478, 852602, 429413, 272993, 942787, 390224, 799997, 887257, 388208, 469414, 499295, 198699, 422365, 264633, 177299, 645233, 327436, 615933, 146087, 854606, 460130, 357090, 390447, 765604, 775937, 132653, 796581, 190419, 391301, 126238, 142051, 89277, 467488, 752430, 372045, 84511, 694586, 302060, 111661, 106640, 541106, 916627, 915220, 432744, 540610, 202643, 688774, 515371, 231264, 799384, 838895, 270424, 835967, 302632, 604956, 330873, 781062, 452014, 975171, 235565, 233474, 339102, 966359, 462580, 406389, 290805, 271898, 371423, 672547, 113529, 47835, 244684, 497690, 249691, 859493, 525751, 357093, 408497, 227799, 43540, 968532, 447738, 719160, 338699, 671849, 449202, 48664, 468408, 248219, 440306, 539511, 396365, 560784, 895948, 863378, 858112, 934145, 835572, 332223, 54716, 382156, 19326, 401958, 110114, 347403, 595517, 46417, 791492, 553073, 71090, 642336, 301297, 341488, 903112, 107551, 265807, 274624, 335177, 272884, 991051, 581992, 470746, 487696, 110920, 952141, 991729, 873965, 814944, 633993, 17513, 732440, 846340, 508597, 123131, 50674, 418885, 497461, 170872, 885459, 751443, 604502, 200880, 792902, 906239, 630521, 316180, 851416, 7701, 892696, 111524, 793091, 183057, 509332, 146214, 301329, 755226, 672562, 219130, 850313, 172647, 895995, 581943, 619234, 916268, 333939, 889899, 855053, 643142, 823004, 831713, 972413, 819144, 317970, 91878, 560716, 711705, 113187, 730935, 636174, 335978, 678388, 198085, 467001, 978656, 241241, 577572, 480834, 338120, 426998, 663132, 107156, 46765, 984812, 997360, 400756, 645034, 812399, 626642, 410905, 770276, 967047, 961426, 497764, 822463, 887553, 621589, 368200, 719287, 792854, 223526, 116808, 74223, 196201, 461525, 211506, 509397, 254511, 799349, 295056, 862258, 334221, 102246, 368940, 781982, 969451, 157839, 66284, 872079, 445957, 779167, 369297, 570991, 941086, 659225, 818899, 829942, 57838, 917858, 791543, 618177, 715816, 135181, 449285, 551717, 491621, 838000, 229029, 446094, 78295, 742762, 841451, 474326, 211332, 211524, 715679, 547262, 231045, 681425, 917288, 783803, 134217, 135696, 368104, 934907, 456553, 726943, 650257, 266918, 507396, 229555, 984196, 43005, 547563, 548303, 892674, 985125, 7521, 628086, 325493, 671482, 842779, 389807, 344349, 649262, 279127, 599899, 985914, 957880, 676045, 276438, 186853, 871073, 321474, 382842, 472932, 49601, 257019, 791873, 488915, 208544, 144439, 30005, 917738, 582952, 782881, 260177, 942620, 360424, 498471, 312447, 411670, 439627, 479375, 164169, 829462, 74000, 265526, 313303, 754084, 42150, 77770, 2565, 240880, 981357, 874546, 266496, 140971, 594629, 32895, 38504, 126647, 198013, 939631, 420592, 279903, 567896, 67937, 972522, 534826, 82195, 921752, 952806, 319896, 793267, 541774, 210637, 849860, 916837, 576674, 434848, 413480, 936986, 884798, 132220, 123278, 698286, 890792, 912016, 651291, 750597, 408699, 912559, 422835, 714500, 421473, 174693, 643548, 63956, 188073, 821887, 623048, 761268, 706993, 157525, 216631, 864726, 881437, 311709, 311470, 752884, 307492, 68972, 608776, 45592, 938880, 897970, 557831, 661444, 880391, 547903, 831232, 93023, 335619, 201285, 147061, 347949, 509844, 545530, 811197, 865100, 922904, 77022, 764204, 379033, 90858, 144760, 775070, 280232, 717964, 833561, 232554, 996668, 813571, 907313, 894332, 796419, 648812, 150013, 843578, 552370, 430072, 295491, 739016, 497793, 311507, 354307, 3336, 72766, 753855, 849240, 786525, 86147, 246023, 718437, 352745, 53456, 828286, 859612, 885856, 93937, 857611, 643646, 902538, 736269, 143924, 96368, 396933, 618155, 332134, 344207, 882243, 749651, 415051, 360537, 554246, 136457, 239469, 432405, 302152, 690220, 678766, 173439, 154817, 374315, 912376, 111980, 51986, 75800, 515312, 962163, 854164, 706295, 527743, 355138, 194212, 498617, 17871, 297981, 469521, 400271, 971211, 966280, 260899, 198653, 531438, 793537, 552058, 638871, 982294, 766124, 292702, 485253, 43392, 288197, 127205, 445985, 124480, 243638, 810890, 279734, 648990, 309252, 953854, 859279, 867844, 457015, 961975, 261619, 127912, 94019, 24666, 613273, 192610, 682453, 614599, 308660, 214863, 992859, 29710, 923951, 555079, 147706, 275270, 132689, 209075, 400372, 550257, 67018, 460713, 594821, 697366, 513561, 494835, 876983, 876098, 24504, 802161, 853119, 679268, 297075, 419645, 45931, 214523, 592911, 965013, 322204, 339135, 541011, 329905, 156046, 426642, 285367, 61071, 92608, 695611, 737049, 117911, 23850, 38709, 700668, 785609, 538305, 757216, 502828, 104771, 84572, 721526, 881752, 49753, 120642, 80536, 820151, 230241, 450464, 761810, 288565, 927632, 204360, 608241, 453776, 565952, 176043, 168623, 79877, 3363, 547489, 161811, 480339, 420030, 249365, 60698, 204817, 623209, 342663, 175603, 128828, 577312, 772928, 883003, 623405, 105752, 725162, 640294, 615695, 105420, 670495, 899704, 572087, 895342, 136966, 687246, 985715, 405409, 552191, 8145, 788733, 746562, 540778, 315249, 44648, 76051, 190269, 441917, 685853, 34045, 972415, 599700, 600136, 475966, 582337, 656693, 326080, 133766, 756273, 609461, 614893, 515785, 639084, 548823, 271804, 516600, 125825, 748390, 372327, 35483, 747062, 412378, 214528, 968840, 997087, 719382, 616574, 808780, 416331, 486546, 462255, 496958, 103975, 776926, 833172, 95753, 581913, 848855, 861323, 704508, 341156, 961492, 701143, 843190, 826097, 735301, 515488, 169881, 7884, 6583, 577156, 988141, 118558, 647801, 805869, 877764, 267688, 600900, 140416, 782443, 435171, 247521, 775827, 64306, 552132, 813834, 461987, 634913, 427354, 347563, 433947, 118599, 320684, 869789, 248552, 603275, 53245, 45583, 786042, 336447, 248211, 128881, 697746, 263273, 767746, 257184, 15732, 440213, 824851, 64918, 570266, 651772, 460282, 52457, 700215, 811032, 881382, 471599, 976554, 276501, 369993, 812918, 904920, 700941, 976011, 435418, 702622, 384708, 417055, 575455, 288085, 72660, 906387, 908408, 728210, 609197, 930195, 512041, 322407, 66141, 441304, 647067, 689092, 415084, 894106, 809383, 222207, 461385, 742630, 470797, 632353, 210302, 822221, 681731, 582254, 62609, 961007, 820816, 302464, 574517, 474483, 889053, 487217, 697418, 309296, 792527, 58170, 960101, 587754, 180946, 486838, 624710, 381614, 547085, 837745, 567307, 767009, 135262, 838947, 188172, 960912, 204652, 119708, 341073, 425027, 173974, 714067, 649756, 184553, 431260, 653346, 758997, 723050, 578897, 548470, 927579, 175391, 438120, 177890, 422478, 184721, 395011, 977854, 640290, 410107, 192878, 578651, 762, 639889, 988268, 611856, 871923, 844903, 686071, 996537, 737423, 803484, 984332, 676947, 515556, 529416, 290306, 226918, 329419, 265920, 536583, 526127, 146155, 205483, 751824, 295326, 801260, 695785, 958286, 24365, 348733, 507005, 374170, 258114, 689523, 11312, 50631, 837898, 181897, 612841, 532612, 91417, 366295, 183943, 348636, 900222, 837484, 987497, 635304, 724951, 934372, 650552, 551188, 917930, 302844, 479141, 724684, 939313, 788042, 622518, 122904, 955268, 393790, 180566, 555587, 22033, 145195, 734484, 747007, 504225, 137522, 483815, 139794, 470479, 689068, 816264, 243098, 97034, 529324, 524465, 156511, 8759, 959629, 45559, 485171, 599814, 667022, 309269, 233918, 612862, 822047, 491089, 283324, 213271, 98707, 508747, 668599, 896284, 945595, 183031, 276177, 374243, 570184, 361291, 77611, 339205, 849302, 772906, 682711, 451221, 642075, 728906, 191265, 504073, 233460, 412975, 802755, 689501, 886046, 348528, 167570, 144324, 92919, 220837, 503843, 114858, 936502, 998940, 999520, 471107, 205350, 365181, 131809, 552189, 932870, 641657, 158170, 753528, 95305, 306521, 555761, 358070, 24171, 882210, 111385, 314151, 118175, 584483, 74500, 276952, 375302, 553401, 734013, 330706, 790291, 897135, 385564, 877073, 496734, 91367, 255952, 820363, 130136, 414661, 312204, 986761, 285218, 739129, 420780, 801249, 455175, 929728, 941083, 757906, 268972, 677662, 249197, 105298, 368738, 206303, 669315, 743525, 759845, 154352, 7062, 146046, 136859, 555295, 782796, 876975, 955319, 426595, 679908, 734611, 95047, 624347, 946155, 287518, 995351, 168718, 231092, 402631, 273471, 739124, 417557, 476666, 187447, 655675, 784655, 468737, 503254, 728658, 751208, 434618, 334756, 613655, 155819, 377961, 665366, 535708, 954408, 100871, 779121, 449018, 776793, 452056, 524231, 733400, 318051, 443869, 935861, 534580, 670246, 615916, 965272, 5494, 307323, 837092, 671362, 782606, 332398, 341534, 737022, 470264, 1754, 492601, 569231, 336661, 40182, 472965, 505560, 272325, 133750, 466372, 681211, 130415, 328461, 182178, 699892, 69286, 219041, 308776, 31859, 251969, 998721, 959565, 217443, 666521, 400372, 676114, 223525, 84691, 955111, 632122, 216805, 21570, 798523, 99583, 626485, 463650, 571004, 242151, 972381, 831600, 812579, 979364, 991648, 505879, 192473, 176879, 922120, 856761, 464990, 844568, 521572, 971215, 999654, 939530, 715330, 419879, 562865, 318182, 873001, 22218, 809024, 654674, 798010, 194945, 826020, 181371, 255641, 67702, 484759, 177769, 234377, 830159, 748649, 243067, 528204, 481185, 652221, 414149, 101898, 63253, 383728, 358624, 881014, 744350, 674348, 679817, 152080, 992754, 361741, 447344, 674324, 47872, 224317, 217888, 442609, 73684, 381665, 220833, 583271, 368590, 586652, 209863, 831290, 100481, 867346, 169422, 851207, 115694, 163452, 798953, 116976, 258810, 274103, 979320, 18149, 382315, 35548, 850276, 296786, 239480, 751638, 3291, 356724, 661975, 454118, 908406, 603789, 313601, 349467, 792150, 466442, 962811, 395595, 646330, 195844, 16143, 851460, 750500, 537961, 419890, 514056, 497320, 721017, 916488, 213548, 500106, 709455, 379347, 578124, 423000, 648764, 221933, 465112, 870845, 271296, 526362, 199917, 439091, 792055, 840394, 504897, 268320, 778075, 512071, 830792, 104810, 725027, 164000, 870764, 812877, 217343, 700364, 332437, 869138, 421804, 269785, 166345, 113387, 157405, 852391, 571433, 52347, 804991, 757231, 851307, 203224, 228659, 668674, 194809, 314401, 542979, 813052, 428550, 855615, 695504, 21150, 502084, 421597, 317171, 676475, 803421, 591985, 620073, 50410, 878644, 741458, 676774, 422456, 46860, 722251, 76943, 333408, 305043, 935022, 365011, 306276, 228116, 792851, 88381, 689812, 191821, 672608, 889477, 244965, 956451, 611313, 958986, 656450, 27834, 992130, 47815, 211285, 268836, 51229, 638272, 839861, 833526, 440739, 678906, 580844, 751173, 568619, 128047, 654513, 859507, 912237, 769413, 698482, 645061, 444540, 130931, 617303, 852462, 798420, 677477, 93467, 271685, 465515, 37537, 913348, 626743, 364491, 867536, 543451, 493828, 727542, 665148, 780265, 237947, 373055, 100632, 217328, 229280, 952311, 50560, 721205, 94970, 245075, 663670, 961285, 938250, 870139, 746125, 859937, 640695, 805789, 500233, 348431, 135621, 51458, 728353, 124604, 522261, 153363, 59148, 391688, 968018, 464690, 372854, 586501, 459882, 606362, 684815, 96294, 170162, 844639, 816030, 159152, 684040, 217464, 865839, 965124, 323101, 571011, 203490, 828519, 27624, 187848, 685156, 308816, 985435, 349199, 300004, 151098, 280852, 550949, 414361, 925652, 473890, 256126, 951876, 354705, 332523, 424744, 944427, 869381, 992027, 353521, 159640, 360506, 933748, 545643, 128743, 303537, 642240, 439424, 966298, 389714, 727633, 287205, 432908, 394113, 814288, 671991, 56079, 236065, 59441, 641640, 642749, 886395, 663340, 85174, 604707, 869196, 597173, 177605, 239032, 740488, 893394, 968452, 305963, 616685, 895977, 428999, 856783, 879555, 470274, 40962, 540635, 645083, 951343, 832655, 789809, 231519, 276738, 566880, 634308, 451577, 956425, 393029, 425092, 288727, 861273, 725056, 922348, 859195, 483601, 486716, 507044, 962363, 428395, 145536, 898842, 21166, 833139, 337612, 169978, 609642, 754989, 355528, 134621, 170880, 785632, 942792, 531257, 696883, 692354, 303593, 897754, 531423, 710758, 47931, 334796, 332617, 69954, 223101, 489802, 8802, 601554, 899173, 199184, 336094, 759090, 286459, 960881, 681473, 943430, 57479, 346288, 497571, 76715, 144862, 696990, 511862, 956856, 112857, 20941, 490173, 555962, 985099, 364642, 717279, 476563, 619215, 337041, 931825, 874581, 803107, 144180, 516617, 365832, 47427, 161077, 137198, 611975, 838708, 917480, 128472, 453737, 883735, 741155, 175863, 915424, 80573, 864160, 664718, 839489, 962892, 148912, 121636, 990351, 885053, 548764, 239013, 292365, 287680, 841752, 851452, 702521, 573358, 675724, 393211, 649256, 17451, 636184, 139692, 586582, 46432, 64157, 600302, 354896, 812315, 896123, 233970, 599658, 846745, 900199, 699415, 463113, 962010, 88643, 413318, 90586, 202091, 660784, 952534, 296015, 236707, 680326, 110490, 301882, 924691, 110635, 845155, 153599, 549844, 571012, 265862, 502583, 567748, 378041, 154281, 526431, 543294, 648829, 355493, 555184, 917140, 997919, 561422, 616315, 88362, 91016, 815947, 301130, 362964, 266343, 249064, 516089, 40748, 701625, 118484, 193397, 852368, 31099, 920840, 706913, 825848, 20829, 760503, 785521, 904070, 562015, 320016, 886681, 801745, 662183, 153075, 870448, 32437, 860906, 51768, 430212, 633813, 610271, 162353, 126675, 782313, 955351, 950790, 738709, 175764, 988949, 589268, 700485, 635696, 523895, 731373, 727533, 455385, 761068, 84365, 50457, 556597, 418994, 562469, 164924, 608112, 241994, 231424, 475340, 201150, 709453, 297091, 703057, 49905, 822638, 65726, 150798, 714080, 643380, 186074, 941106, 103556, 195866, 417053, 248379, 177338, 190982, 400227, 69241, 311261, 834537, 728086, 387943, 748645, 121414, 28599, 600738, 48361, 7770, 47334, 411870, 943200, 856554, 894282, 957119, 895047, 740578, 724564, 85422, 298535, 392285, 763403, 159735, 123966, 86061, 688158, 478657, 302079, 602484, 761934, 806443, 88456, 69129, 299677, 21486, 445738, 418423, 77551, 254462, 855198, 219475, 228228, 969908, 258982, 535020, 462400, 986342, 623302, 208364, 880010, 545354, 886750, 239327, 162789, 2985, 692407, 938043, 944540, 211518, 917405, 580344, 737953, 318049, 445120, 495363, 487200, 313988, 195283, 20531, 84707, 174386, 48574, 742108, 3288, 354103, 342032, 821819, 289831, 778766, 173336, 256518, 22204, 364307, 399824, 688787, 844739, 609417, 813885, 303094, 852369, 61284, 100231, 978538, 939396, 508579, 873624, 354356, 258443, 736625, 294400, 15007, 520002, 406050, 978932, 176558, 361060, 842579, 727901, 88774, 549839, 553167, 655293, 7383, 61307, 142877, 927671, 714494, 560355, 280228, 383782, 518779, 498219, 954152, 413589, 5666, 181812, 8307, 713117, 271881, 937375, 723747, 283298, 2156, 869306, 357218, 703948, 23165, 819708, 236107, 94869, 460936, 454112, 577979, 967521, 437118, 238170, 130279, 730544, 487862, 208668, 345071, 529879, 772000, 87890, 605250, 499006, 8861, 704557, 931973, 451725, 789480, 349288, 621674, 870808, 764145, 496959, 187039, 233133, 273195, 740414, 527215, 735461, 459528, 319675, 805933, 887959, 45173, 587565, 627840, 83219, 380100, 161624, 132901, 29434, 460148, 405193, 555975, 236833, 227888, 647010, 529909, 405295, 500985, 718933, 226601, 669897, 203522, 405955, 241178, 319549, 269810, 688438, 481308, 897219, 951255, 251318, 421683, 898893, 922497, 658186 }
Returns: {175404193, 671785943, 250936105, 302229651, 738560531, 970830724, 281386148, 239958691, 909787844, 971153114, 942278911, 229102208, 369228719, 25744424, 67906055, 739865645, 191978072, 913028672, 412436263, 108327112, 37484699, 742234591, 275118763, 630979701, 436790535, 431092369, 444464534, 551885307, 964190252, 989590579, 286835793, 273115350, 798389234, 561861473, 142875688, 883878439, 74450497, 888330573, 99928587, 909339665, 524924599, 116491240, 978164487, 550279008, 32369378, 635136441, 833853358, 165641286, 725313570, 304879527, 973857614, 936245620, 168809020, 664914536, 485083694, 187965208, 803461622, 810974518, 311886276, 896239964, 821517151, 287671055, 684773613, 472374893, 116525303, 688691761, 787465480, 69255704, 919004426, 702820217, 843914817, 129511720, 212175499, 216839167, 339380470, 499666868, 334374309, 820407150, 299701861, 370756453, 297170568, 20093451, 44775849, 171207346, 177954768, 685356780, 95435692, 396774291, 209210405, 345123304, 920423834, 329113959, 141153953, 398513718, 39573690, 485181438, 544578617, 985814196, 771219915, 780835764, 993196530, 62869575, 280743737, 520522564, 513376909, 227453563, 765970350, 154136264, 461740155, 512610300, 525467457, 111168328, 485719636, 18135226, 254432167, 130901428, 499954801, 495178830, 558955874, 181772723, 733457501, 44007409, 379952895, 248391656, 541009809, 44394254, 901241656, 48289389, 853383313, 594710669, 433252341, 264608786, 510644167, 906049957, 324566930, 960459717, 743859983, 849345009, 745651698, 449833609, 688074314, 961745923, 628754525, 20940194, 294962404, 850710422, 202384941, 250443909, 299471835, 799230400, 750611456, 447246952, 751038938, 728589407, 182562919, 562594823, 465587233, 652541056, 28080238, 35273283, 48836829, 280993221, 556815302, 638718697, 748959098, 266767804, 323791655, 589976541, 78308909, 802676391, 318171666, 321341642, 474626133, 768487719, 858020261, 108915383, 702252570, 199052298, 678726341, 313347342, 357989819, 184423802, 358876933, 230501230, 574700829, 147190312, 5194180, 759985459, 910402401, 534724361, 868183766, 979783178, 422852622, 411772158, 826915259, 891610190, 756082165, 255038165, 830317857, 501620807, 390527617, 610595450, 144712907, 595613310, 347772336, 842008952, 94208124, 270782898, 545432366, 693518127, 486371680, 564772892, 522709284, 982286354, 931823622, 778423098, 220396671, 779304278, 875195633, 956175388, 379668003, 603167527, 45773185, 438846648, 492144365, 935710619, 217312420, 697102261, 426494353, 559224485, 979612127, 460771775, 752078014, 159911861, 393413335, 677956499, 566092278, 479650093, 811140716, 381191759, 134483125, 494511733, 386036953, 487948899, 109847155, 136873680, 195800623, 999434331, 972126185, 444212402, 45609898, 270833009, 94434852, 68789788, 433665048, 109868370, 947142743, 806246742, 680252308, 622215736, 927322819, 904699636, 603135898, 919622317, 449283652, 99438167, 521161714, 129400592, 291254729, 197090302, 972135123, 132581783, 537474258, 244200947, 445640136, 721456400, 263036477, 919395665, 454213095, 297183585, 263490467, 258884087, 102119683, 9191851, 28723525, 688355298, 399041257, 323851614, 683335942, 370473908, 28982855, 639408937, 319259385, 498539673, 354713463, 350822317, 552468658, 461101774, 113895015, 164836865, 502045521, 920781294, 914189828, 321023020, 549917167, 799749545, 968088441, 725821100, 362974595, 113370035, 944904867, 868652893, 275686945, 595187528, 31684985, 800139550, 498644658, 550380313, 277935495, 386376723, 572287797, 981675917, 21293246, 22980311, 161793989, 479397821, 952272259, 643043739, 52192158, 785702094, 169261010, 833765018, 34825925, 304460209, 387757772, 806538556, 395319451, 689613056, 746881867, 747907252, 96560743, 469830140, 824660594, 627812565, 856934352, 93978533, 279729644, 480636594, 577287946, 45059814, 701460551, 509035457, 145902687, 983476473, 466770067, 644942948, 891403410, 768398815, 710088835, 994614886, 976390544, 639144025, 632284926, 346458592, 704641473, 403024900, 932475448, 548631860, 438365568, 762761153, 400574612, 821954295, 552615795, 990865841, 99564502, 989114375, 133035732, 752606949, 71248642, 840631416, 438448140, 488250378, 181041392, 748043033, 921039311, 100405316, 200413358, 591482516, 436095924, 670121403, 3938451, 826886350, 657527224, 789891770, 640381840, 143463083, 33868907, 914987635, 860282028, 506420637, 653372885, 203098725, 622062575, 321563610, 659169183, 735973968, 313189070, 503130138, 237516579, 144710793, 182962789, 627034617, 723546893, 959141896, 668947360, 800155324, 590794100, 978611150, 530469338, 723891468, 777320448, 19793487, 824936305, 224076844, 219648077, 196158530, 627073900, 275443099, 919931538, 266729057, 860107833, 501616777, 916875294, 313653380, 198558198, 666651896, 587826476, 266472973, 981678117, 54545501, 327261506, 18000632, 160088165, 338176971, 560395313, 436929346, 744948384, 410215614, 882472433, 391804413, 290593601, 802528098, 301606376, 968197693, 915791825, 431440811, 49910563, 127519603, 387879744, 656198371, 487550231, 510899337, 572065680, 959385974, 396915979, 783515769, 349334431, 640910757, 130259374, 913394490, 274259791, 762969605, 124555771, 80345483, 353157622, 348839541, 287698450, 396850495, 578625439, 804809717, 812149927, 687895967, 332282682, 296145616, 700768724, 970858670, 426126247, 436457146, 303214259, 61500660, 303142922, 197092031, 754095123, 768561144, 576294173, 10070191, 806404890, 892926195, 842389196, 617240185, 843227743, 166484868, 460440600, 193589862, 239419923, 62535078, 625482041, 772351168, 779324928, 32725403, 694226199, 564531578, 119278184, 548098535, 554510525, 709705993, 526949190, 766172569, 872320620, 920589376, 210921870, 697083402, 680187951, 310914261, 598057973, 783279715, 772419128, 5896824, 468300091, 942751349, 274659196, 17672142, 871582707, 42553533, 888123971, 691612310, 756533828, 483751136, 263363072, 201673743, 498520096, 831755446, 386655938, 755509516, 666241498, 932422754, 300343653, 306713894, 518338988, 839237, 849921298, 437152230, 399029472, 253815490, 669274190, 476134576, 745698613, 956734794, 935417539, 502678846, 790476732, 946076119, 90948804, 753428357, 874862044, 120443855, 257997877, 421962315, 909266590, 570924700, 413452492, 492092429, 619810931, 733510708, 956285358, 414514685, 709298098, 667371213, 511800209, 521758257, 361014085, 173542724, 681679038, 40977424, 279079220, 139178410, 102242576, 343704111, 814813099, 119794315, 139397229, 527724635, 185395233, 985786903, 744320228, 180376370, 644017621, 972332139, 833199463, 644648553, 413562127, 151341497, 263275214, 992906104, 830225681, 576337868, 225804661, 721289078, 749988375, 535369083, 981564724, 865665038, 494398679, 235007157, 897519817, 467438944, 768398421, 586748274, 271148232, 984890281, 197983303, 891409465, 705228963, 754074419, 414357933, 83068701, 753275127, 44540321, 361118030, 225143309, 136666915, 861941841, 542006540, 843285048, 773149979, 118271022, 327717388, 67834037, 809380133, 949733558, 876118933, 504038550, 214591079, 546317049, 475940480, 829984362, 670869008, 61368752, 429207753, 32032387, 730586646, 210323842, 998344253, 424090589, 953741588, 244129748, 314169911, 904202704, 139077183, 119170812, 614476445, 463939146, 454040620, 181849991, 823651824, 48992682, 623365021, 422060196, 617988347, 242741869, 965179068, 499620554, 530253369, 836206947, 925128115, 115713837, 675761319, 713619817, 121285820, 348881132, 542605743, 470633998, 839683321, 190085611, 824433515, 696252310, 915865575, 21232882, 189038454, 877198553, 384076877, 195833422, 405335365, 96732257, 519330456, 436369769, 458936994, 76474450, 111909650, 190004374, 651476902, 857846753, 886562388, 996844544, 528249859, 524295241, 653154417, 199250012, 167824960, 810783036, 585058729, 495083216, 932153036, 914079793, 280371317, 501641617, 642221497, 731462714, 513592453, 566469686, 420729677, 72645455, 473104200, 645944379, 428611765, 807007100, 621685762, 575075812, 589697164, 997912675, 663734629, 508449139, 140250641, 140141349, 78651736, 906444025, 147762810, 65978474, 645619193, 574051793, 942153565, 263722183, 983263224, 71729348, 812985542, 28321635, 989903903, 883507753, 630434495, 678281630, 904773666, 570287858, 426292053, 265018697, 5596459, 275056951, 379218461, 936198027, 351507930, 97265778, 708090628, 955845337, 28806094, 182555955, 319891854, 133842060, 977307016, 456817477, 446161330, 797549919, 173476762, 834195079, 415652294, 606914829, 496553685, 472314254, 558068935, 986197373, 591195151, 876753672, 787125564, 782089335, 398093407, 25261187, 707077257, 314580329, 825495950, 128642157, 316256555, 718491390, 929153348, 307224130, 118541410, 615701297, 191057427, 398637329, 606392332, 934005178, 130333888, 378291652, 879333334, 190908130, 833716335, 111956134, 454479453, 618944761, 923673253, 928623177, 783475033, 692958759, 811413226, 81336330, 100781081, 530714623, 478106343, 555300026, 684178413, 529386828, 892284646, 805377969, 871086600, 354912292, 326048998, 457925735, 362593899, 428299053, 852385465, 994908707, 678441800, 501176482, 291151289, 725785012, 789446205, 694446102, 309958016, 754373964, 272886126, 893913318, 375821091, 484644574, 125813984, 342714942, 530247563, 964941830, 316538305, 567548661, 127152211, 791302203, 396241658, 912666191, 649698967, 228548180, 917819344, 963703147, 872967914, 933986459, 855324937, 966110692, 700835959, 909532542, 230095421, 492328298, 539712982, 131199472, 566629981, 899154138, 499492042, 454629164, 71631296, 763591618, 183345769, 733337320, 380587597, 330074328, 390604664, 643030206, 25217420, 452075038, 595337969, 854854287, 608856373, 810721052, 726236723, 386963630, 551507565, 344693534, 337096773, 329707312, 524378235, 480966912, 858356929, 367733867, 721981747, 875759397, 208161888, 616238017, 734192738, 798957909, 939651817, 641427202, 740609288, 355429219, 318485509, 620609449, 893802634, 51126080, 29836615, 645641009, 185113286, 958120270, 836807119, 932749247, 340355590, 316614546, 420617620, 160953258, 714370424, 682101775, 602144727, 928608265, 620379497, 676375503, 446949783, 135275484, 265808119, 129567021, 943471965, 51985150, 946106121, 128862328, 483445374, 131347415, 314964293, 134456229, 487683808, 498724909, 540960861, 687427828, 651171784, 336411937, 250044467, 639200246, 634823860, 489465077, 11827689, 37534447, 277898558, 507575818, 863048126, 235150945, 572449049, 46196022, 15850332, 719279479, 139140812, 190013108, 187112, 68597338, 257513308, 634896238, 315606017, 838510752, 497067146, 790061134, 653501641, 163776580, 289625398, 131182880, 184871620, 360504377, 136433682, 457104374, 25234015, 303226208, 57391002, 488893450, 418431375, 233091187, 53505490, 891611417, 60032092, 659128339, 550760919, 882991160, 782106135, 281864339, 783914640, 958458192, 150809761, 493689023, 137144775, 224534665, 885774377, 979542812, 503730440, 218818297, 805350447, 698351954, 923374902, 702417508, 784303220, 476588003, 681462863, 626137195, 793132982, 588036916, 209128516, 804181720, 716623525, 188968451, 342789169, 996940283, 38270335, 955893105, 248482736, 692040141, 539747904, 812779676, 78177834, 858619200, 299733710, 158442786, 703806579, 779038773, 617713928, 434012669, 508752258, 617811292, 270000936, 60254294, 191544327, 566430831, 581655579, 182455640, 652315781, 292277024, 921090942, 660465209, 976848978, 53854405, 654830342, 802916368, 110542168, 233531252, 631365868, 299217413, 457429240, 549757790, 668654211, 659955460, 924508527, 0, 0, 144136375, 718033559, 488146722, 734909495, 649477038, 167920331, 161433335, 734023739, 607617075, 369532001, 418145484, 348143985, 257972638, 620562594, 93042603, 236981539, 978281496, 180142155, 25752446, 962978384, 969237362, 948011524, 36084744, 780997532, 682446307, 128799946, 233105384, 194425996, 181840902, 886535906, 559869462, 443617970, 113075492, 884544721, 643865037, 944775461, 458161832, 667908780, 924390797, 857909729, 211095045, 662631695, 765032537, 750810357, 839605693, 206018160, 550809257, 24487335, 36381047, 695397476, 948189548, 602462453, 930167658, 456304588, 879813033, 816103833, 262680833, 690526423, 936895602, 610403631, 296203595, 792639971, 561784482, 535573402, 529673965, 445725807, 609450128, 662501324, 591018255, 411917320, 519770718, 137273544, 328465752, 506403220, 546345840, 902490847, 541383704, 401234514, 685482393, 89506537, 413235725, 642043140, 946365143, 946159429, 84827770, 689728131, 307628663, 217294193, 798244253, 504110134, 71860140, 160737278, 772235071, 785470222, 581994759, 312371101, 172929275, 303671578, 662659532, 343414313, 450063252, 526056483, 762673746, 750986187, 769459111, 42839867, 485766945, 170650692, 815318214, 394325917, 765266499, 853404926, 72679603, 62597741, 598943311, 153739657, 59505000, 157407040, 380372334, 157985887, 321565487, 610847721, 760287347, 81458213, 542415726, 573008559, 417765458, 616610537, 133637700, 493159093, 738855041, 520977166, 702744016, 874254559, 261539789, 0, 785540620, 147473300, 644216020, 949733558, 6390904, 188436404, 993823407, 978291425, 654228135, 848246026, 42845320, 821688319, 531429946, 109256648, 417015140, 546791169, 904462583, 506501825, 932173600, 913899384, 404268933, 41506391, 951169059, 428464518, 683204685, 844870966, 247722773, 458028661, 699745191, 454615653, 451308852, 0, 340578123, 622332804, 173093582, 542123578, 916954921, 649844521, 737241561, 153015239, 441630064, 805161143, 424341006, 192042998, 340359615, 877742012, 989541523, 590092375, 452605960, 895004238, 40999757, 860490460, 746546985, 979442750, 730704426, 6435043, 698235126, 913237175, 136920985, 193687420, 372041746, 555078581, 696543788, 302265970, 571584626, 405286224, 844742257, 631055149, 564685330, 890320563, 816319394, 513536455, 97260505, 986747079, 703078414, 349824556, 826038855, 224421090, 404453211, 779940979, 315009598, 310551623, 526515662, 527286196, 883422365, 506107664, 268846437, 393240169, 552798196, 732174750, 263904842, 982625315, 762497371, 98783812, 816450821, 745354306, 674425656, 641340099, 483567702, 26619472, 503736491, 192911531, 261248208, 280771489, 903542735, 188653149, 352556171, 826723250, 665133245, 652347779, 917349312, 121759667, 128667317, 157030463, 645888770, 733110491, 243016963, 18322147, 658481502, 431331451, 290446005, 942479515, 725310016, 114289441, 581800953, 402916450, 671143246, 478396490, 25951559, 52834413, 824920465, 90798786, 396430765, 248910155, 482497577, 668654240, 709229162, 322573034, 96368340, 87285435, 711642738, 129229017, 588088917, 180716160, 334762890, 795600042, 527561665, 81521077, 387355685, 141420879, 874089789, 703785941, 117641388, 174059897, 352650664, 704616201, 340253116, 229562072, 993547349, 43885147, 344506126, 230038452, 441843812, 327011170, 740851692, 623287354, 925270468, 162593085, 126580361, 532402752, 129983826, 261714362, 179250644, 285272422, 110070883, 51335282, 925605276, 700107195, 438266465, 583350894, 576306808, 128566630, 884370901, 443248227, 764273580, 440027124, 836735674, 516174504, 732280111, 896690280, 547938045, 221848980, 183758867, 652817003, 563725963, 281780527, 581291031, 493717140, 855200834, 876696989, 748234299, 39317086, 187439907, 94803448, 307167420, 442861020, 924588838, 1035394, 306433551, 694098825, 684177901, 313598121, 118501614, 68804417, 606094534, 636084869, 809763162, 278415131, 334448313, 492881911, 765864272, 163067758, 428744215, 299501314, 278444884, 696574521, 683926575, 494473360, 170507282, 169855480, 842224891, 228716830, 453851526, 282331394, 806213914, 186553544, 70495776, 787354097, 539903917, 251984015, 714288362, 190294574, 529096282, 937899867, 549106884, 170968550, 625160664, 259947644, 122122642, 616636706, 259211920, 326342895, 122854326, 50090349, 342345440, 589424063, 260090141, 958043786, 338999625, 309477411, 983936700, 784048600, 691836667, 502086184, 192849731, 471751023, 172686262, 716479397, 402761582, 616381104, 864710468, 244682284, 321426279, 400481123, 723636747, 417859312, 952608858, 477759923, 50502757, 752655054, 498378928, 601587863, 529285214, 844054839, 901416310, 22887808, 962362433, 443645851, 654457496, 815673580, 41484900, 156050668, 484863858, 264110507, 272886271, 78152265, 844720055, 947212334, 549687712, 685029364, 93831190, 739476248, 353206849, 883935219, 813166371, 916646619, 270952926, 663980906, 991900320, 275727938, 328818184, 112143717, 396606123, 235474401, 691585162, 330482392, 521158511, 86312145, 273129985, 782851634, 65794434, 211712724, 923823660, 598621739, 341527365, 994082591, 785865432, 145102942, 802364278, 652452561, 12449340, 961290355, 148380570, 856467865, 82192784, 102679511, 561195927, 565799387, 247913450, 479141897, 292182509, 955067203, 467396993, 61630564, 278675830, 94623297, 474254473, 334626500, 789873695, 709089582, 505938911, 648125229, 958870971, 579181620, 576599056, 920897635, 632025392, 881446241, 452386812, 938582023, 7013741, 243769566, 435135582, 751743703, 975622178, 629100119, 287842332, 7859720, 471207878, 322649738, 260387748, 496584549, 953015997, 7640787, 282864214, 312313588, 803785133, 790007838, 949350974, 858410791, 980993484, 56904259, 996481543, 799787114, 709752145, 181583337, 751827166, 515279519, 421293223, 245422864, 561837151, 751800940, 164823535, 930363366, 649245141, 430456241, 252813531, 846068210, 448144380, 219446582, 890116690, 474714573, 672868628, 669901454, 263786018, 109229520, 370265719, 588919394, 483032414, 954947847, 217666189, 912876586, 407518600, 344812910, 342408016, 135300142, 229518656, 676040619, 810668784, 58676554, 489310154, 864868753, 942751735, 917773739, 145572502, 467398036, 58046276, 685395101, 561076015, 263877668, 16416687, 420614681, 156659215, 917760725, 521970632, 989589148, 31994169, 142776346, 775927178, 275999070, 402300706, 180790390, 207460348, 791901200, 827287702, 206206051, 827586584, 579125567, 290236255, 15465775, 198512758, 20264600, 537779517, 838969813, 431249677, 182545324, 370894719, 712858973, 965785082, 964620507, 898032819, 978580429, 369626832, 261245364, 961897076, 686123169, 239757584, 523141724, 415301416, 726244579, 837934664, 19195402, 649065197, 369918242, 197347968, 330238942, 25548053, 305844988, 757267098, 451121931, 566182498, 608464878, 403523536, 693465478, 421274809, 716795749, 450880901, 411161232, 875526166, 638312568, 696929820, 562556271, 926692309, 510464059, 189354930, 280008902, 226701685, 913324065, 738188119, 835436411, 447379178, 53776132, 9940333, 408510867, 813551329, 355739069, 857245528, 369383141, 316439176, 898418092, 784686696, 489569457, 437177178, 960210212, 666083502, 544044712, 248031248, 69493234, 924513513, 579720283, 962500701, 280688292, 942481752, 351653424, 94522446, 201173296, 122481629, 613904654, 105252860, 403399283, 347855225, 931244118, 797643210, 822947844, 559694570, 419654813, 624215698, 112500280, 164077475, 275496156, 433330301, 414333762, 37788957, 500158702, 614663013, 184006234, 755504785, 989466722, 80698396, 505398197, 432514065, 389148602, 740493492, 307817015, 777017959, 529689773, 442949648, 711908402, 609473904, 68466382, 178500808, 10675293, 798313067, 616143253, 451654220, 744235921, 792884540, 577707376, 59462956, 718705464, 83093037, 948099339, 513274034, 777646733, 262659221, 979108405, 781544304, 86573897, 175466, 57140748, 802108506, 96803602, 944417661, 327404562, 594047611, 131058846, 231351240, 467642245, 251199638, 501768093, 760815393, 351581073, 677523318, 176474126, 784301681, 573680596, 385266133, 714008945, 101305080, 846944539, 812055273, 550693578, 868476935, 864391239, 220969415, 444987227, 323603065, 274026145, 994021848, 64850917, 878604305, 207832098, 16984169, 196116172, 13156690, 493231828, 124999889, 531320733, 484181570, 954829864, 972892310, 443406547, 987301275, 749245566, 949221722, 773714283, 430412675, 99690909, 59384642, 376613269, 929501864, 699281142, 634484366, 472038818, 320881545, 25705808, 176708869, 672757840, 765093522, 160552241, 251209648, 640020855, 815075865, 663327560, 502200150, 920576938, 76751863, 510321515, 780813930, 413042626, 437021211, 579131112, 610114718, 206373631, 290158909, 322706871, 114563881, 14342527, 592575877, 399130020, 161715649, 75626013, 736432777, 745152879, 567548262, 747880915, 183291044, 866023505, 569402952, 612041741, 261537205, 141773230, 740389176, 145979791, 563511405, 764748844, 555718812, 255656592, 350117316, 829114140, 693318965, 501860551, 539488525, 399830220, 365208371, 128890574, 705115739, 188417570, 631913840, 885992973, 241233130, 565566883, 68214675, 242140773, 146058193, 272375805, 435003980, 707475267, 37908698, 603445624, 360895177, 452405176, 139805512, 420702107, 900287014, 3871248, 966041991, 415947185, 286638230, 369895890, 87763165, 432746073, 333514457, 816260402, 569959032, 153765453, 473092907, 982216960, 722485970, 124992703, 390834352, 955601600, 159013645, 200690376, 103697907, 195699217, 705279440, 606587616, 533900736, 900187330, 53447238, 252639473, 220596951, 549308407, 885929445, 757810975, 590434577, 839363013, 147342422, 381956494, 912505788, 10373847, 711652003, 85634071, 405706151, 263864001, 815124203, 766946702, 979743585, 584578242, 909191493, 815164083, 918246110, 257670832, 332605450, 348658079, 498487086, 118307197, 398952402, 267278607, 199635444, 396171531, 793557428, 647502725, 736733667, 654811219, 544866924, 292106803, 58073709, 304360463, 288969196, 385926521, 989419325, 262525079, 696927840, 596342552, 45176115, 438068464, 791519275, 728877074, 942742260, 486258407, 795290347, 705169252, 468625254, 229442189, 95544665, 413547759, 841947922, 756524995, 769398160, 83509250, 354255729, 427796800, 554805634, 862771809, 856839634, 95461377, 7157912, 14360238, 895097444, 413387819, 915127646, 687326024, 690419738, 561715877, 549024837, 533234338, 769491944, 916365367, 250656744 }
{1, 13167, 18985, 5261, 28252, 18411, 4215, 22680, 30363, 26190, 29488, 19722, 16554, 6705, 2196, 17398, 22496, 31970, 4813, 3243, 19681, 8385, 19911, 23093, 4629, 19433, 20290, 29479, 31833, 17939, 11558, 3736, 15348, 15800, 24086, 620, 25036, 2166, 2119, 9941, 17626, 17077, 12947, 4888, 23515, 4746, 3017, 6037, 24392, 4572, 15432, 6402, 18313, 9157, 30156, 12535, 31590, 14650, 13703, 14255, 17086, 18671, 27764, 6925, 20859, 32373, 488, 9949, 32453, 25765, 25706, 8797, 31862, 3906, 7364, 26363, 8910, 2010, 5978, 21601, 9321, 493, 6075, 17839, 15981, 6738, 2678, 27655, 14600, 9685, 10543, 12879, 19482, 21285, 9457, 3634, 15406, 9198, 19142, 25192, 17327, 322, 22149, 22072, 7257, 28477, 26604, 17979, 15597, 9193, 19950, 12898, 7977, 1375, 7246, 19770, 8695, 21295, 16237, 4207, 23525, 32514, 609, 31376, 29141, 30846, 15174, 23057, 17909, 28778, 4569, 18838, 4850, 22291, 5187, 16751, 18281, 6638, 3634, 25182, 13727, 25726, 22062, 23969, 27505, 26744, 1323, 7724, 18062, 28966, 19546, 5943, 6371, 17929, 23877, 23544, 29015, 8386, 6171, 25778, 23737, 14899, 29768, 9454, 13046, 13025, 22345, 22280, 17552, 23196, 19903, 8430, 31819, 7011, 23234, 30245, 18730, 2946, 20855, 23309, 25753, 27389, 27877, 28005, 18668, 4145, 6660, 22033, 27656, 1977, 10263, 2075, 4704, 27535, 21308, 28921, 20004, 13683, 23874, 32270, 32436, 4241, 10426, 7027, 25691, 28254, 2641, 4086, 7226, 25283, 17501, 23139, 6274, 2941, 24757, 29699, 26855, 1732, 23750, 7267, 26449, 15658, 23523, 4694, 7380, 711, 21469, 24125, 29410, 21395, 26580, 4486, 1215, 12051, 25932, 8051, 9526, 22328, 6019, 13085, 27787, 30340, 25859, 9912, 25264, 29038, 27507, 24, 6587, 26376, 3506, 5748, 19608, 9439, 10279, 17771, 22011, 4642, 24402, 20804, 5017, 22023, 15527, 24698, 2456, 15723, 3485, 11896, 23108, 9145, 14594, 23457, 26115, 25356, 32401, 32403, 10123, 3992, 21702, 23213, 8274, 582, 22769, 24527, 26950, 30366, 1418, 22368, 15295, 16362, 8900, 25238, 1714, 22936, 9572, 11761, 25639, 22241, 28628, 32265, 749, 30120, 10611, 31114, 22668, 22693, 8240, 21629, 12155, 11458, 26711, 16585, 26003, 15813, 11946, 18425, 28356, 15920, 28852, 29247, 28679, 18021, 3930, 24249, 1683, 20238, 28595, 12532, 3924, 10940, 7706, 30639, 665, 17102, 10113, 28897, 14349, 7061, 7432, 20221, 9960, 25526, 30158, 25460, 30310, 4815, 17158, 21115, 29305, 23389, 27214, 13328, 14522, 29661, 23101, 17975, 12710, 31537, 27963, 5258, 10759, 31814, 28310, 14576, 8368, 21748, 30162, 6573, 7277, 1061, 3136, 18587, 7738, 9018, 20690, 26550, 947, 3754, 3629, 14046, 28108, 492, 30464, 11993, 32706, 10904, 31892, 19864, 2642, 30409, 29605, 30651, 30504, 8901, 31601, 4951, 2202, 18912, 23310, 16374, 16790, 32413, 18688, 20447, 2521, 11799, 20747, 26264, 25186, 21151, 19526, 24746, 15911, 14759, 8049, 26788, 21254, 24799, 13192, 23906, 30462, 11933, 23704, 28047, 23967, 2434, 8914, 3177, 18879, 4955, 8670, 9156, 1903, 2885, 29298, 10066, 16942, 6933, 21026, 27937, 2908, 5110, 32122, 28517, 9457, 24148, 28746, 23416, 25710, 8441, 65, 4639, 16916, 25462, 1469, 32015, 26708, 12229, 1762, 23984, 22408, 30508, 6378, 31008, 29152, 15972, 27579, 17787, 927, 21755, 13247, 31834, 7047, 7159, 26096, 13977, 18321, 8124, 31282, 30046, 2530, 2352, 10214, 15446, 6651, 10780, 20668, 8514, 17968, 10454, 3528, 29875, 2395, 3869, 4825, 26641, 10449, 16452, 23558, 21730, 28309, 6803, 22921, 2377, 21452, 18410, 3537, 15821, 12145, 423, 20946, 6236, 15690, 19402, 13216, 24720, 4379, 27479, 9020, 18737, 18969, 7164, 25005, 29434, 6817, 18676, 26195, 3232, 30762, 19755, 11897, 13328, 1913, 32419, 11049, 31992, 6420, 2326, 16708, 16522, 18936, 23517, 4050, 6781, 7310, 12048, 28822, 14164, 7644, 25583, 26341, 22498, 27384, 17536, 28857, 11790, 10947, 26234, 28162, 30420, 20435, 13666, 4668, 30092, 14001, 26612, 5190, 13423, 29765, 25796, 4210, 11863, 26766, 23077, 20697, 17862, 27031, 3402, 28657, 11562, 6822, 9387, 2401, 9311, 17334, 29098, 27923, 12150, 15655, 32119, 2187, 10933, 17333, 23857, 31352, 24542, 18599, 4430, 1161, 181, 4680, 29756, 20354, 10940, 16539, 31816, 13711, 22593, 2635, 21696, 1752, 25242, 17889, 4692, 31829, 31152, 4921, 1730, 19684, 13498, 14647, 30643, 6297, 8267, 2998, 15583, 7765, 28047, 28097, 2424, 28570, 9937, 17414, 25798, 5789, 3393, 27527, 5647, 25245, 1013, 2195, 1977, 20084, 11309, 16885, 26034, 13676, 5851, 15467, 31504, 19027, 12131, 27226, 4853, 1234, 17311, 959, 24758, 30970, 19750, 14953, 13116, 19744, 24526, 32358, 30634, 16875, 24943, 26299, 20287, 171, 28394, 4696, 15487, 9196, 4714, 5450, 11149, 11852, 12010, 17971, 23004, 25481, 17656, 32759, 24838, 14302, 29880, 11193, 26876, 18832, 24875, 9990, 17760, 6340, 22705, 23119, 559, 29075, 26317, 5021, 9123, 15456, 13097, 31104, 7512, 10345, 20954, 10824, 17581, 25757, 26852, 23416, 17005, 23214, 20225, 3448, 18351, 8294, 1950, 10122, 2554, 4926, 16423, 4095, 19117, 21037, 12932, 5291, 28062, 2494, 4324, 14230, 25346, 18021, 24249, 13300, 26765, 16659, 23299, 20312, 26074, 23048, 24530, 19236, 26636, 13801, 23302, 2628, 182, 12562, 17498, 16156, 3064, 7469, 13473, 13758, 8683, 32003, 591, 3681, 14143, 12947, 1850, 31759, 12579, 21345, 29602, 23453, 28773, 5905, 21103, 14048, 6107, 5172, 8891, 2078, 4609, 16226, 10896, 20931, 6627, 24713, 26355, 24149, 19262, 29316, 15649, 15530, 32226, 8432, 20760, 19545, 28762, 22587, 9561, 28270, 1487, 7165, 26605, 11874, 6954, 6028, 4262, 30538, 14201, 7371, 13479, 10574, 7060, 1346, 13094, 9053, 29952, 10612, 8049, 5407, 14355, 25196, 3119, 11563, 25945, 18842, 7145, 30587, 15927, 10973, 31433, 28, 11470, 23777, 9633, 3626, 25378, 29611, 8750, 2812, 30076, 370, 3231, 27036, 29709, 22961, 7761, 8826, 18387, 2682, 4573, 5985, 22209, 13, 2132, 29609, 13082, 1705, 21449, 23727, 23070, 7842, 19216, 1666, 17896, 22196, 2758, 223, 22167, 8343, 18321, 20576, 22188, 21459, 5545, 10224, 7859, 21206, 18840, 22146, 7206, 1604, 22078, 15619, 16270, 8846, 19479, 24716, 5611, 27590, 24001, 27869, 4438, 27570, 3512, 15111, 17637, 19999, 26981, 12392, 6095, 22391, 30039, 2524, 13264, 10646, 11984, 26418, 13007, 19162, 18051, 10973, 20415, 9081, 30876, 492, 7875, 25880, 9729, 10301, 4245, 4249, 4823, 15597, 17704, 3636, 28233, 15122, 29068, 3017, 1924, 27309, 23827, 5492, 21510, 24026, 14770, 7267, 11033, 20042, 23465, 24548, 23194, 28403, 5222, 27842, 30975, 1542, 13479, 9938, 6297, 25378, 31200, 4297, 16405, 1479, 27356, 18000, 19529, 2061, 26534, 23643, 7982, 8598, 28842, 7094, 16424, 22209, 26904, 18912, 20878, 10272, 22665, 29725, 32614, 22061, 28645, 28871, 19312, 3384, 21892, 2789, 23143, 3492, 31891, 3071, 9859, 9299, 3002, 6192, 15170, 1887, 5883, 4220, 24168, 27403, 12510, 28516, 19012, 25337, 5835, 21432, 23862, 25501, 31927, 11693, 25198, 30705, 15363, 16943, 22518, 32618, 27040, 30840, 22003, 2091, 6008, 9698, 31528, 6522, 17673, 19449, 699, 624, 17235, 31957, 26428, 244, 4085, 22951, 14051, 21738, 27539, 24465, 32025, 5031, 12154, 30395, 25914, 20392, 9863, 30627, 31386, 26756, 27973, 6836, 10694, 5920, 7509, 1563, 26380, 2594, 18451, 28118, 7741, 9896, 1142, 31245, 20401, 16697, 5176, 26534, 32396, 25340, 25655, 5908, 21568, 28455, 27676, 32111, 7507, 15547, 12602, 11210, 867, 30831, 28857, 24769, 10343, 25321, 13555, 22609, 1847, 16180, 23070, 19949, 15695, 1391, 17964, 25805, 8655, 11714, 22511, 27274, 19911, 10135, 20865, 10216, 31154, 20742, 16867, 13298, 21568, 656, 12772, 32077, 13913, 785, 6212, 32198, 22622, 30704, 22810, 19501, 27826, 9625, 21619, 102, 17273, 5165, 18492, 7613, 23455, 27767, 2402, 30586, 1308, 8483, 22583, 17333, 30839, 14378, 21528, 20588, 1929, 18577, 21069, 3795, 19332, 83, 7216, 26859, 29748, 18076, 22673, 5462, 7300, 20023, 9306, 23914, 18499, 11338, 7791, 2436, 28456, 18241, 27352, 26527, 14612, 12808, 28962, 8229, 20376, 18301, 23042, 19716, 26807, 6693, 4156, 1797, 28397, 3101, 18627, 23898, 27248, 9044, 22050, 27509, 4021, 28152, 19226, 289, 5942, 2862, 12429, 4299, 17011, 11270, 21147, 22560, 12854, 8366, 26890, 30430, 29212, 17894, 7915, 26595, 23889, 26291, 15738, 4235, 16539, 26200, 32327, 23096, 23962, 18050, 18579, 2610, 13134, 24003, 24061, 19378, 12249, 21057, 14942, 8249, 12166, 11440, 10993, 10790, 27915, 6013, 24759, 1416, 18187, 7756, 537, 9009, 32479, 421, 32720, 23052, 21654, 29418, 12546, 8880, 9274, 19597, 31405, 12596, 26709, 6783, 1609, 24901, 17844, 1772, 19369, 10359, 1131, 32549, 29219, 729, 6682, 9438, 19696, 3532, 10606, 24473, 30421, 17685, 6890, 8802, 20739, 5680, 13031, 14781, 26941, 15847, 18649, 13789, 2872, 9252, 981, 17686, 327, 10756, 16464, 4757, 18488, 7724, 810, 32079, 14968, 19296, 7659, 15159, 30334, 21842, 26700, 15540, 1127, 22455, 13049, 25682, 32478, 31648, 22421, 26296, 17215, 30472, 2558, 26330, 27900, 10921, 20179, 8815, 8255, 21013, 15156, 17062, 26577, 31233, 25033, 9492, 10810, 12516, 4358, 12529, 31274, 9665, 18093, 3205, 17943, 10560, 31892, 18141, 11048, 17668, 12968, 18882, 28498, 23865, 23090, 10220, 26305, 4204, 1625, 7026, 18553, 18848, 1512, 18565, 13885, 14494, 19026, 6238, 31663, 9356, 16372, 16501, 18618, 19649, 31641, 18932, 27437, 19416, 24899, 11627, 19368, 12547, 10281, 22213, 12732, 17314, 24572, 9595, 4942, 9493, 23406, 15623, 29500, 17614, 9205, 14748, 4932, 23210, 23244, 7444, 32033, 23425, 11068, 2090, 9974, 7164, 12825, 5097, 14064, 5542, 32399, 24420, 10791, 582, 4127, 9640, 25286, 16749, 30180, 28655, 24940, 15435, 29467, 14358, 11730, 15302, 19682, 3921, 12973, 25806, 9536, 7454, 4310, 20202, 1894, 2679, 11688, 26903, 2356, 11596, 169, 8403, 9727, 2096, 25709, 32629, 13970, 29267, 28344, 12735, 10866, 31664, 5091, 11702, 26215, 24967, 6529, 27313, 27703, 9998, 7234, 24497, 12213, 9828, 11543, 15344, 15610, 11718, 18838, 3517, 5107, 32005, 13217, 19334, 23836, 14135, 27714, 29495, 23434, 7341, 21978, 13251, 16431, 8486, 16763, 21759, 16986, 12866, 27538, 20919, 8573, 16954, 11209, 22524, 29747, 27341, 23595, 9147, 26753, 15486, 15241, 26516, 22876, 3580, 20253, 14312, 23916, 24546, 1902, 11316, 13072, 10400, 11379, 10910, 11682, 7353, 21755, 4558, 2044, 18224, 27981, 13567, 16443, 1596, 4363, 24150, 24771, 16451, 15452, 19314, 23171, 25862, 6217, 22596, 21626, 3866, 26216, 19489, 5241, 22935, 20408, 32021, 25899, 15892, 6861, 15739, 7508, 3794, 3373, 18378, 11350, 24887, 31737, 7346, 20473, 31870, 20432, 1896, 22379, 8366, 32752, 15422, 6022, 14792, 18590, 17782, 29778, 21317, 8393, 12888, 9163, 24511, 13034, 15490, 3556, 10479, 23854, 22400, 28107, 31703, 31959, 24220, 6255, 25920, 2271, 21751, 3136, 4711, 16351, 27609, 11829, 10740, 27952, 17222, 22548, 12587, 2384, 6354, 7150, 20838, 14727, 22710, 24808, 4547, 29386, 17698, 15682, 22810, 17375, 10197, 12689, 19506, 2754, 16876, 10575, 23604, 6472, 28151, 25750, 6495, 3330, 10322, 12073, 7678, 24164, 29107, 2228, 9623, 27430, 16383, 8789, 9318, 32747, 29026, 21850, 29449, 9505, 30110, 30541, 25213, 13096, 8611, 12078, 19529, 29110, 24929, 12287, 29433, 18042, 15322, 31878, 18126, 14079, 23931, 6222, 25268, 16852, 7340, 18927, 21876, 21226, 11430, 21135, 2859, 22333, 29316, 16041, 27387, 13238, 12445, 13325, 32000, 9040, 31762, 24872, 11398, 16507, 12451, 29062, 31353, 15806, 22215, 11157, 13340, 4511, 12283, 7084, 510, 6599, 23898, 28747, 25387, 31074, 21614, 27557, 26783, 14021, 5702, 3675, 17664, 23635, 23752, 24459, 1164, 8353, 12873, 30217, 336, 23000, 10075, 9964, 26522, 16475, 6886, 32077, 24242, 17578, 18555, 24395, 10693, 31879, 4324, 1106, 21794, 27479, 12544, 8350, 17321, 10698, 23246, 27130, 12415, 12478, 25799, 22990, 30983, 19297, 881, 20568, 17166, 29846, 16689, 32058, 21318, 9115, 10336, 12597, 10230, 19432, 21410, 32052, 11247, 5210, 22643, 17036, 5570, 2448, 16387, 6274, 18224, 20374, 580, 11022, 16610, 5824, 14145, 30430, 32347, 22489, 29361, 1694, 20010, 7037, 32204, 5495, 31332, 20676, 25437, 15061, 21841, 30497, 537, 878, 32358, 8073, 6447, 7040, 29555, 2263, 800, 28249, 16926, 23407, 4817, 24349, 28048, 18465, 18143, 32452, 23662, 3665, 18226, 25442, 25355, 11605, 24789, 1195, 15836, 17695, 29700, 16822, 4140, 27164, 2183, 29697, 15120, 28763, 31807, 13238, 8350, 29170, 32767, 12588, 10074, 5278, 22173, 18353, 4593, 21161, 2632, 11655, 32554, 19217, 3099, 25900, 9753, 23782, 29171, 21470, 8854, 4596, 18046, 8543, 26093, 7330, 8085, 17654, 8151, 27930, 28364, 25526, 13225, 8618, 16455, 25602, 3532, 22122, 23503, 23121, 28013, 6176, 31780, 13103, 30325, 32352, 4245, 16005, 8124, 12536, 15567, 25, 20857, 23691, 2803, 26968, 18430, 23163, 1003, 24660, 3746, 4108, 8701, 14345, 9982, 18631, 20896, 32228, 12380, 4125, 29839, 16518, 9068, 20045, 6941, 13253, 30265, 11400, 26568, 22003, 15452, 1106, 20752, 31331, 5999, 24107, 13706, 23850, 3013, 17263, 30256, 9251, 3416, 26491, 2811, 28982, 22787, 27665, 17844, 27097, 28146, 17662, 14087, 22486, 15190, 32505, 27097, 18255, 22109, 28111, 26843, 17920, 19553, 1469, 16991, 10181, 25952, 25629, 32363, 29788, 27308, 19270, 15116, 25195, 17891, 5549, 25325, 965, 3106, 25680, 12840, 1769, 18806, 3156, 32092, 12748, 8339, 2028, 28416, 31192, 4809, 28286, 12023, 23860, 1075, 14337, 10340, 24902, 20530, 20394, 25023, 23158, 537, 14791, 6953, 24885, 1578, 20715, 9980, 6206, 26306, 24139, 12455, 10268, 27088, 4456, 26041, 5101, 8843, 6894, 13627, 19301, 19301, 28380, 6467, 7702, 31802, 29158, 7878, 29678, 4302, 5656, 8110, 28417, 21366, 10939, 25388, 23176, 16405, 25468, 6224, 2858, 29514, 23243, 24279, 5243, 6632, 4994, 21060, 30659, 29863, 15815, 19250, 12288 }
{1, 1442, 1212, 1186, 183, 518, 129, 1719, 394, 1053, 568, 1463, 1805, 1459, 1564, 1549, 1869, 446, 1184, 1384, 1935, 233, 1934, 173, 1806, 608, 103, 931, 775, 1859, 1016, 1301, 19, 1818, 1460, 1027, 1018, 649, 1682, 204, 1384, 1018, 1847, 780, 1612, 1585, 18, 1082, 873, 1291, 1103, 1409, 634, 320, 635, 1750, 2, 293, 662, 1256, 1953, 1184, 204, 1560, 56, 705, 1404, 1832, 34, 1734, 1469, 1493, 389, 869, 1334, 393, 708, 1385, 1611, 1922, 1841, 218, 848, 887, 1397, 157, 1316, 1694, 18, 536, 1464, 653, 942, 721, 1056, 867, 1333, 1156, 1996, 504, 367, 1337, 991, 769, 843, 1277, 774, 833, 1267, 1317, 1950, 1019, 129, 930, 366, 1389, 62, 1291, 1099, 913, 1755, 1838, 1209, 1574, 1004, 1732, 330, 1070, 64, 1094, 1745, 143, 1690, 1852, 1342, 1453, 1110, 1354, 1034, 478, 1997, 668, 589, 1912, 1662, 1919, 295, 334, 568, 1315, 621, 126, 41, 1134, 149, 1108, 1076, 314, 1156, 265, 1026, 446, 1068, 484, 1428, 69, 701, 777, 1693, 644, 536, 692, 143, 768, 591, 30, 433, 548, 1257, 204, 957, 1864, 386, 1074, 1407, 150, 442, 1756, 277, 1385, 538, 1565, 1500, 1928, 716, 680, 674, 1606, 1974, 210, 1592, 1483, 392, 1902, 1047, 914, 970, 177, 1789, 966, 923, 35, 241, 973, 922, 1742, 967, 260, 1369, 1440, 1394, 1911, 1066, 1466, 474, 1555, 567, 1730, 703, 1343, 803, 1815, 1949, 1074, 1267, 1952, 1375, 1309, 606, 183, 1221, 543, 943, 1143, 1096, 1500, 195, 1137, 1893, 64, 984, 711, 1399, 1257, 1203, 350, 293, 917, 402, 836, 464, 1338, 1556, 332, 832, 1407, 1737, 104, 757, 908, 1973, 1334, 1500, 733, 878, 1046, 387, 1137, 545, 860, 1931, 1378, 1595, 1969, 150, 1612, 141, 1190, 231, 37, 1558, 612, 1083, 1697, 116, 1084, 1234, 913, 712, 248, 926, 1921, 1843, 725, 1970, 1349, 625, 676, 1076, 403, 616, 1183, 110, 458, 1069, 1386, 823, 1212, 1447, 1201, 839, 162, 1279, 742, 149, 1352, 1882, 429, 647, 1670, 1794, 1695, 502, 609, 1288, 1259, 469, 1854, 1559, 815, 232, 642, 1777, 1755, 1242, 1561, 1608, 1409, 1560, 1904, 1344, 192, 459, 973, 1932, 1890, 639, 1279, 1416, 172, 348, 549, 1356, 388, 1501, 407, 541, 81, 547, 932, 254, 1660, 672, 32, 133, 115, 994, 1384, 1322, 1474, 1392, 1150, 429, 640, 1496, 157, 221, 1787, 1209, 421, 1575, 718, 464, 1638, 894, 900, 399, 16, 134, 572, 327, 920, 1544, 44, 532, 1142, 1729, 743, 1601, 1842, 661, 79, 1881, 1238, 815, 1619, 1712, 269, 756, 366, 1477, 195, 735, 277, 1695, 1896, 1376, 1223, 1063, 1744, 1760, 710, 428, 943, 1817, 995, 1266, 1807, 483, 1227, 228, 1288, 1977, 707, 1126, 1717, 915, 1226, 1015, 1436, 1703, 1754, 1949, 847, 1999, 162, 886, 286, 544, 1548, 605, 1519, 982, 1928, 1178, 563, 585, 180, 81, 255, 688, 1314, 532, 1294, 1966, 1905, 543, 534, 303, 1014, 586, 655, 704, 367, 883, 1806, 851, 204, 1725, 558, 1259, 348, 1532, 1307, 1739, 254, 1049, 562, 1694, 1109, 281, 1543, 151, 209, 747, 1438, 1659, 1208, 84, 1247, 851, 1913, 969, 494, 598, 1599, 1851, 974, 208, 1762, 909, 1332, 1507, 1861, 1238, 689, 1484, 383, 654, 159, 473, 711, 496, 1205, 979, 138, 1952, 166, 1563, 1210, 1801, 243, 1162, 1525, 417, 1605, 1273, 697, 534, 1435, 1364, 1150, 1628, 450, 1964, 180, 870, 73, 754, 1173, 1102, 1792, 1443, 116, 668, 308, 442, 1570, 1449, 1496, 1385, 1494, 1500, 385, 571, 830, 1325, 647, 1383, 1104, 787, 1535, 348, 129, 784, 969, 76, 1238, 457, 1913, 465, 159, 428, 339, 1392, 300, 925, 825, 890, 353, 1387, 315, 1878, 1490, 1872, 1284, 1142, 693, 583, 1065, 707, 115, 144, 14, 699, 1490, 1420, 1173, 1978, 1960, 1782, 1845, 1045, 1892, 25, 678, 1874, 1658, 1848, 1912, 1839, 1785, 57, 1514, 1780, 475, 1789, 1815, 452, 928, 440, 390, 145, 1224, 669, 1657, 1473, 1831, 1505, 1346, 580, 1116, 378, 763, 7, 1524, 1779, 911, 1920, 1217, 987, 770, 317, 1411, 322, 1205, 520, 712, 1011, 893, 812, 450, 1639, 1725, 503, 1775, 176, 79, 1241, 422, 722, 644, 262, 893, 1447, 390, 456, 1657, 507, 1576, 1329, 205, 1989, 210, 82, 580, 1896, 1937, 1079, 1880, 1832, 1048, 830, 768, 282, 1825, 145, 1742, 584, 1290, 949, 694, 893, 1007, 176, 111, 1158, 844, 1366, 1920, 1947, 861, 1025, 127, 260, 657, 1976, 1236, 282, 694, 348, 1156, 650, 1990, 1490, 769, 1747, 1882, 1336, 87, 346, 1346, 199, 751, 335, 1248, 1732, 1004, 1784, 291, 442, 538, 1201, 1745, 1404, 1045, 1298, 1797, 437, 426, 1474, 1250, 1121, 1051, 826, 337, 863, 1656, 1206, 1878, 1469, 1615, 15, 346, 181, 504, 1940, 535, 1545, 443, 133, 507, 1762, 1184, 1429, 427, 67, 1300, 1929, 1711, 549, 927, 1183, 1031, 1750, 1143, 1827, 1456, 963, 797, 1892, 660, 273, 986, 1113, 1569, 1172, 890, 1096, 118, 918, 711, 1542, 530, 64, 1349, 1152, 758, 86, 1432, 1940, 1741, 210, 620, 1688, 1898, 1708, 73, 1653, 1975, 105, 583, 397, 651, 598, 624, 49, 1556, 179, 654, 1684, 471, 1061, 1942, 242, 576, 454, 758, 249, 593, 1660, 616, 7, 1196, 1968, 761, 551, 1288, 375, 1817, 1191, 1350, 1763, 1645, 1805, 356, 1202, 451, 980, 1677, 155, 1997, 591, 1639, 739, 40, 640, 1693, 1559, 946, 660, 226, 1324, 656, 123, 1856, 317, 65, 1473, 1934, 1467, 1068, 1509, 649, 498, 855, 994, 1852, 400, 942, 1382, 482, 350, 931, 335, 968, 623, 401, 819, 1402, 1520, 1690, 901, 1168, 1952, 345, 1247, 1904, 1697, 1836, 1086, 1714, 1041, 1498, 565, 1768, 30, 1677, 1687, 90, 1192, 851, 838, 1780, 747, 488, 440, 160, 1721, 1409, 1824, 1976, 1990, 1791, 767, 1369, 1108, 752, 1227, 779, 65, 840, 1728, 1019, 1844, 985, 63, 650, 1594, 249, 183, 1586, 138, 1134, 1889, 1425, 1274, 1942, 1710, 1000, 952, 80, 22, 1378, 1788, 642, 627, 783, 1126, 1150, 1660, 1100, 1671, 861, 1099, 167, 179, 1682, 1812, 1201, 1942, 1650, 1270, 946, 131, 163, 1971, 453, 1374, 1164, 1875, 1634, 785, 844, 1447, 1535, 812, 308, 1343, 1798, 1815, 228, 246, 1535, 719, 1065, 1390, 1205, 1467, 732, 940, 234, 1770, 1283, 1102, 1561, 329, 1373, 1481, 727, 789, 1476, 808, 1503, 1597, 768, 752, 70, 124, 1446, 707, 813, 1757, 1304, 433, 793, 569, 503, 1721, 110, 1825, 1906, 1540, 528, 1641, 1495, 1538, 1261, 1870, 755, 489, 588, 1205, 11, 1304, 1624, 1672, 333, 1041, 1781, 1868, 1741, 649, 305, 221, 334, 559, 1979, 1235, 820, 139, 155, 137, 1610, 594, 908, 929, 521, 152, 1095, 1021, 1009, 31, 339, 258, 925, 660, 1451, 66, 1083, 384, 301, 1353, 332, 812, 1892, 31, 685, 1143, 1030, 1893, 1901, 47, 1401, 1194, 881, 1613, 1024, 90, 1970, 1438, 1333, 1517, 606, 1244, 331, 664, 616, 1526, 87, 520, 1547, 1740, 86, 614, 164, 550, 497, 703, 1145, 375, 1923, 1664, 1009, 128, 1134, 1694, 958, 650, 143, 663, 1697, 1256, 682, 1083, 647, 1018, 171, 303, 1290, 1479, 211, 1903, 1675, 1034, 423, 1556, 778, 1790, 1826, 523, 348, 195, 252, 755, 509, 1207, 290, 1106, 144, 1855, 1570, 213, 1008, 1956, 1069, 136, 867, 1560, 1435, 1352, 1394, 1378, 1367, 1422, 1260, 292, 212, 1678, 389, 524, 811, 35, 1129, 1076, 4, 530, 927, 1038, 592, 372, 509, 346, 231, 524, 1373, 816, 1640, 211, 1634, 1964, 957, 720, 1182, 654, 325, 1403, 1945, 860, 1611, 777, 1798, 99, 1601, 986, 172, 381, 859, 1871, 248, 298, 632, 1990, 1190, 912, 657, 973, 150, 39, 766, 402, 733, 291, 401, 47, 1934, 446, 637, 515, 1927, 1833, 1179, 948, 1270, 7, 1213, 597, 361, 436, 464, 744, 262, 591, 1793, 796, 1955, 524, 642, 1238, 1286, 1970, 464, 1274, 147, 1134, 1041, 915, 1954, 824, 1944, 1328, 898, 1196, 1082, 665, 1658, 233, 1455, 428, 429, 1672, 1724, 707, 1786, 449, 1893, 1100, 1557, 1824, 379, 1726, 1758, 670, 1545, 1381, 141, 760, 982, 779, 218, 783, 1459, 1540, 752, 679, 1534, 268, 1273, 1689, 1353, 376, 1308, 1054, 1941, 400, 1094, 115, 1186, 768, 1028, 421, 1670, 360, 1564, 1903, 470, 750, 1964, 1615, 1156, 683, 648, 1810, 46, 1185, 796, 1766, 794, 1260, 1801, 217, 373, 1816, 997, 864, 1248, 1979, 1049, 757, 1929, 1218, 1171, 24, 1580, 221, 160, 1581, 1705, 964, 284, 1035, 109, 1542, 1052, 756, 573, 1419, 1759, 1613, 298, 660, 818, 1010, 1197, 1322, 46, 1920, 249, 1979, 758, 900, 37, 561, 1852, 95, 1, 263, 376, 1755, 1369, 1510, 44, 105, 429, 1430, 1832, 1392, 778, 521, 215, 1122, 1530, 1430, 61, 546, 162, 1729, 1716, 359, 1086, 801, 1134, 1567, 207, 812, 1138, 1764, 789, 1812, 1717, 1758, 368, 217, 745, 1226, 319, 1938, 1632, 421, 756, 678, 153, 1733, 17, 1618, 1153, 659, 394, 1424, 1040, 418, 22, 6, 118, 1490, 793, 760, 944, 349, 1494, 1283, 1065, 1495, 1262, 1248, 951, 907, 1593, 954, 903, 1819, 685, 1628, 198, 205, 1682, 1216, 1096, 1677, 239, 1134, 897, 519, 71, 673, 1102, 759, 1366, 1880, 1385, 1264, 64, 249, 757, 1364, 616, 246, 1856, 186, 1327, 743, 1550, 1359, 748, 236, 390, 610, 495, 164, 1132, 73, 126, 276, 368, 753, 290, 1393, 77, 1175, 721, 1205, 427, 461, 54, 582, 155, 1909, 1860, 1618, 75, 1070, 993, 1872, 860, 89, 349, 54, 969, 346, 819, 1483, 742, 458, 1626, 607, 380, 962, 212, 275, 1268, 681, 871, 459, 234, 1992, 284, 885, 1643, 168, 786, 1685, 419, 1238, 1673, 1205, 3, 1197, 1328, 620, 457, 556, 1495, 144, 2, 1942, 396, 220, 1279, 307, 120, 1801, 1930, 1284, 268, 133, 818, 448, 1970, 493, 1418, 535, 1265, 1100, 765, 1332, 929, 769, 313, 18, 314, 1735, 1142, 489, 545, 1059, 442, 1776, 94, 332, 43, 52, 1555, 1540, 341, 1210, 1795, 978, 394, 950, 1156, 1469, 1916, 1115, 1176, 426, 1191, 1667, 1502, 887, 579, 1162, 1234, 751, 380, 1925, 36, 1442, 617, 922, 33, 67, 1065, 1640, 108, 576, 584, 1536, 1915, 949, 241, 1939, 1499, 178, 1379, 159, 403, 1778, 409, 740, 177, 1830, 1831, 1817, 1945, 574, 940, 1182, 431, 24, 460, 481, 1096, 886, 157, 1406, 545, 1934, 203, 1480, 1172, 259, 1403, 1607, 1130, 143, 1509, 1193, 478, 1964, 1760, 1149, 137, 603, 1692, 448, 31, 1586, 1793, 1462, 667, 691, 1791, 1269, 1822, 1373, 977, 1783, 893, 1376, 1331, 1615, 897, 1105, 1995, 602, 149, 403, 598, 319, 158, 132, 1573, 1598, 1039, 504, 27, 1307, 1003, 508, 975, 936, 865, 419, 1025, 244, 402, 1237, 601, 1388, 794, 1390, 346, 1014, 74, 1945, 758, 182, 1911, 1083, 394, 1347, 1419, 1761, 1671, 971, 507, 1563, 1718, 284, 1672, 1614, 1506, 1090, 1973, 127, 1597, 855, 595, 521, 306, 509, 717, 1549, 646, 458, 478, 10, 638, 63, 1388, 1897, 25, 1801, 1457, 1030, 431, 605, 1856, 1759, 682, 1482, 423, 1869, 1471, 732, 1416, 679, 1187, 1912, 1033, 1177, 432, 400, 745, 587, 655, 1299, 750, 430, 1210, 926, 380, 431, 73, 1347, 691, 882, 509, 1238, 1152, 153, 1069, 293, 1720, 1793, 1938, 769, 1368, 26, 66, 1152, 1137, 280, 1519, 1201, 218, 754, 1037, 175, 321, 680, 1468, 1557, 297, 213, 575, 1358, 403, 169, 1546, 847, 150, 1396, 409, 594, 393, 1381, 1042, 1862, 477, 1278, 390, 374, 1193, 459, 1527, 20, 444, 244, 1051, 1075, 272, 571, 256, 1274, 1810, 718, 1732, 1355, 1022, 432, 1034, 22, 1002, 795, 119, 59, 132, 1828, 1116, 1206, 1790, 629, 1264, 1598, 277, 248, 1476, 66, 1207, 336, 1410, 489, 1692, 173, 612, 715, 774, 1723, 416, 564, 1489, 1985, 1878, 1806, 691, 818, 209, 421, 1850, 1374, 1126, 1310, 829, 649, 466, 1694, 1902, 91, 159, 651, 1901, 254, 1420, 1044, 890, 1974, 214, 266, 1084, 1732, 1306, 357, 1104, 263, 1617, 1428, 595, 1876, 1281, 1205, 468, 245, 671, 1576, 1866, 995, 11, 1670, 803, 1981, 644, 1269, 1537, 1954, 1844, 297, 1824, 1506, 584, 1201, 682, 766, 892, 1383, 33, 1390, 423, 570, 568, 253, 1042, 1998, 554, 1357, 336, 369, 1649, 1266, 1291 }
{1, 1111, 28133, 9819, 204, 31855, 25937, 24893, 11247, 10723, 2460, 17061, 8226, 31314, 11900, 14782, 4332, 4081, 30433, 262, 9445, 13520, 2860, 19378, 32128, 4959, 32667, 25167, 28969, 22576, 32520, 29349, 11152, 8446, 3540, 5856, 10308, 23791, 31006, 22514, 15235, 534, 17976, 12083, 7505, 15420, 13915, 19274, 10951, 30944, 12953, 7249, 20910, 29820, 13332, 27444, 23116, 11530, 31854, 90, 894, 24007, 12928, 7560, 9479, 26679, 14159, 20226, 19496, 20073, 18235, 22515, 1649, 8828, 15226, 15886, 20182, 3938, 32709, 14454, 20741, 24292, 4177, 1499, 30455, 8422, 5121, 28134, 29893, 22509, 26330, 29144, 18110, 20190, 10423, 28782, 21942, 31753, 9278, 16647, 13728, 5477, 8722, 2568, 12896, 14877, 31818, 22144, 7898, 21836, 1571, 12040, 6735, 7685, 7153, 14830, 16361, 22679, 28508, 9874, 29844, 15631, 25544, 26639, 18192, 9982, 3861, 798, 5700, 29308, 12937, 29496, 29142, 10860, 16394, 27387, 26872, 27650, 16273, 29647, 15237, 9091, 10459, 12489, 8524, 1612, 1378, 18640, 7084, 28182, 28299, 15358, 1377, 31096, 15393, 10312, 21661, 5549, 30466, 16738, 17242, 21912, 25624, 32733, 20975, 14853, 15243, 19347, 22498, 20274, 24629, 9540, 5886, 17294, 11095, 4993, 1189, 23488, 8330, 22217, 15719, 26603, 7672, 10483, 22227, 7729, 23755, 3019, 908, 32374, 21990, 27392, 15776, 9062, 24275, 5438, 27414, 9401, 4861, 20631, 12486, 28341, 23840, 3623, 26478, 13045, 13565, 248, 26369, 22122, 25938, 7203, 7234, 159, 28169, 15416, 7314, 12353, 22192, 32736, 11270, 30942, 1321, 5057, 27069, 19949, 27811, 30114, 5745, 32527, 10441, 29392, 10571, 18836, 22840, 26048, 9980, 9025, 20791, 30453, 28425, 8784, 28578, 25892, 29542, 9913, 13096, 6295, 3655, 10416, 24247, 1487, 27187, 20591, 16947, 9069, 12378, 15157, 31598, 30547, 28968, 4495, 17237, 32518, 31514, 21206, 7015, 30550, 5073, 31225, 28524, 18242, 18277, 24444, 32611, 4630, 16891, 31937, 9660, 13526, 26522, 29831, 19911, 13023, 7738, 1200, 11885, 21964, 32286, 17735, 7454, 1175, 23652, 22721, 3338, 5632, 25563, 29059, 3732, 8755, 12308, 20645, 25347, 6053, 7868, 8694, 30843, 5951, 19240, 22848, 25133, 23486, 26674, 29901, 8394, 12378, 27716, 18729, 20285, 15013, 17330, 14890, 1945, 7095, 32077, 1326, 5200, 11400, 9525, 164, 16807, 22941, 16878, 29902, 25446, 25063, 10166, 29124, 25300, 31976, 5654, 18109, 26850, 11287, 21432, 32394, 30887, 15238, 15480, 1379, 3596, 13762, 30141, 23526, 5321, 20218, 15626, 31581, 19344, 2916, 1232, 20288, 26503, 9437, 21383, 26619, 3068, 29648, 6396, 19184, 27221, 24408, 28141, 960, 7749, 6313, 29139, 23238, 6726, 9644, 15103, 21733, 14403, 32489, 3304, 24708, 17044, 17578, 18628, 21462, 2352, 20317, 19541, 8287, 22302, 7995, 13062, 24500, 23597, 28455, 11574, 7554, 24293, 28377, 25044, 721, 19133, 26683, 3628, 18058, 28303, 21523, 22528, 1847, 32584, 8675, 1499, 29195, 13028, 14093, 4514, 23330, 1946, 26939, 18796, 11017, 2899, 30718, 29331, 17793, 14177, 18870, 8972, 19840, 13422, 28593, 17651, 27257, 6834, 13719, 30826, 29405, 618, 16389, 18340, 8162, 30853, 32376, 24893, 11907, 11168, 29805, 19661, 4552, 25908, 7622, 19900, 6727, 8974, 29296, 26712, 14059, 25856, 19779, 15652, 13044, 727, 14889, 11891, 5439, 7820, 28547, 1078, 1224, 1727, 30408, 531, 22125, 7520, 18543, 9143, 10229, 5808, 24336, 29548, 11344, 9320, 1478, 12014, 3360, 24887, 26071, 11898, 1401, 4210, 6039, 16937, 6629, 1544, 14985, 31100, 4524, 19124, 22728, 2360, 5458, 20598, 6565, 17268, 5728, 19267, 1938, 22000, 25704, 508, 27967, 17064, 4931, 11165, 3586, 18089, 5789, 11447, 15740, 8996, 14004, 18720, 6778, 31937, 16988, 7656, 28953, 17717, 8775, 30608, 2094, 25367, 12675, 22647, 24036, 3055, 32580, 17301, 6055, 1169, 24036, 8043, 10561, 15273, 25384, 17722, 30531, 29334, 15813, 4212, 30887, 26748, 1058, 624, 7091, 15252, 24672, 20065, 29217, 29895, 15768, 24969, 26748, 29052, 23139, 15274, 3277, 8110, 25760, 11198, 10359, 16449, 625, 17639, 12640, 9110, 27783, 8105, 22097, 5213, 32160, 15191, 10912, 25770, 23373, 5067, 13580, 20811, 7161, 16218, 26088, 12122, 3623, 10504, 14460, 6158, 1275, 15095, 936, 1750, 19964, 3366, 15818, 7593, 13336, 27736, 14306, 919, 13289, 19793, 5108, 4517, 17718, 72, 31406, 16855, 23997, 14490, 21579, 5262, 4399, 15548, 2231, 24596, 29309, 21107, 2804, 15990, 6738, 15175, 13244, 3474, 30432, 21813, 12136, 13680, 18656, 13220, 784, 10454, 29140, 17562, 27892, 21526, 30608, 22064, 9242, 28203, 24824, 4163, 15161, 24580, 20491, 13933, 10966, 13856, 32033, 17971, 18093, 20571, 30576, 17792, 8786, 17416, 20181, 21843, 10520, 9279, 2770, 23732, 27954, 9336, 4819, 24556, 29208, 18777, 27573, 22517, 30253, 7117, 28296, 7728, 32670, 4694, 23700, 16470, 12429, 9380, 29851, 20657, 9839, 15718, 27998, 1676, 26802, 32352, 31074, 17128, 10915, 2750, 14324, 19824, 25744, 19368, 14187, 23983, 2089, 25366, 27821, 17537, 21548, 16614, 17397, 18887, 2882, 3628, 11987, 4703, 4644, 25289, 21364, 8788, 14593, 31039, 16675, 20305, 13348, 21699, 19984, 14172, 2002, 3476, 592, 4032, 27505, 14220, 13350, 24651, 26608, 5876, 14721, 32442, 13666, 6045, 21189, 24178, 7148, 14892, 13006, 2161, 23522, 27574, 18483, 20355, 24877, 31629, 11207, 5305, 17904, 9049, 22630, 12311, 26731, 21866, 4078, 20877, 6175, 17740, 4491, 28201, 7730, 24220, 1336, 3466, 9494, 7707, 16514, 2968, 17254, 257, 18575, 8818, 11792, 32404, 13664, 20648, 21945, 16376, 23123, 28587, 29533, 2633, 22508, 3713, 18486, 3815, 31444, 25789, 5344, 5649, 3106, 29103, 3002, 14262, 30426, 7128, 17039, 5767, 26291, 25760, 26486, 20817, 17438, 1100, 15606, 7818, 12675, 554, 8558, 17962, 28110, 7438, 9652, 28092, 16426, 6146, 30461, 27316, 20748, 16186, 8189, 3843, 5236, 14662, 25935, 9193, 10608, 30859, 16662, 1802, 21217, 24820, 16869, 7621, 28033, 30181, 20700, 4801, 1829, 9329, 8980, 4552, 31552, 32204, 23102, 30169, 14505, 30211, 6278, 7544, 5278, 31466, 3006, 22857, 20232, 30550, 13240, 10461, 11264, 5773, 26611, 14796, 18067, 23547, 24698, 23812, 194, 25383, 17930, 26208, 13517, 23525, 3443, 10877, 2994, 5836, 8768, 3785, 7408, 13802, 9370, 24540, 15248, 21943, 15978, 25100, 5222, 16968, 21438, 20539, 405, 3269, 4718, 15604, 14161, 5405, 9471, 2487, 11753, 23544, 3271, 26768, 27908, 12526, 26450, 7150, 7210, 4342, 8965, 26803, 31879, 18721, 26369, 28296, 12268, 12680, 12875, 23155, 28951, 5250, 30249, 10155, 8500, 5659, 12239, 25259, 20132, 12226, 17722, 8837, 6396, 5186, 10589, 11385, 5713, 4084, 2939, 30150, 7603, 14642, 5588, 30656, 6903, 1294, 32643, 2595, 20410, 5188, 30119, 14247, 9634, 19566, 8129, 16596, 30183, 4471, 17245, 16664, 27154, 13138, 19189, 10775, 23045, 25580, 13330, 2370, 19260, 18783, 10420, 19371, 30034, 104, 18420, 29719, 28615, 8987, 25064, 30549, 27904, 10197, 10951, 13007, 9871, 11379, 10573, 12639, 24245, 449, 25697, 12900, 6949, 2869, 5110, 10004, 32011, 18142, 22831, 6676, 23117, 4503, 16838, 13638, 31761, 31616, 6830, 23010, 9855, 16559, 22007, 32456, 19912, 14882, 2035, 18708, 7271, 23288, 16279, 4851, 11943, 3553, 15907, 21686, 10085, 1748, 20998, 9253, 535, 23808, 22779, 15894, 17933, 260, 11641, 20030, 32503, 25442, 842, 26950, 7848, 24369, 30585, 27937, 11289, 15635, 22386, 15262, 25521, 25191, 25445, 825, 11459, 192, 4075, 2615, 2137, 22933, 2796, 12274, 23856, 27194, 1984, 6257, 17667, 5134, 5780, 13883, 16140, 5367, 2832, 9837, 27593, 25611, 13879, 4875, 13820, 18064, 30606, 3988, 3317, 12583, 27008, 9177, 5139, 18756, 11521, 30990, 27529, 6881, 6258, 23842, 30302, 22132, 19908, 4172, 16824, 11038, 31713, 4327, 29017, 4389, 20295, 22911, 21866, 6308, 22006, 17708, 3447, 4225, 23181, 3614, 23740, 6560, 31408, 6778, 5023, 31318, 31916, 2917, 12925, 17953, 10334, 16989, 10665, 11670, 10065, 20688, 23218, 2714, 12326, 1511, 16101, 31957, 313, 3747, 22291, 10852, 28289, 23596, 18581, 30926, 1720, 17510, 19340, 21050, 5052, 4292, 20077, 19167, 31286, 28513, 29374, 15035, 15481, 31309, 18202, 8072, 9389, 18724, 25211, 23276, 23084, 16614, 17593, 8432, 26156, 5634, 8269, 10931, 27551, 13492, 29019, 352, 5719, 913, 1520, 30045, 1390, 13409, 23432, 5573, 13541, 5932, 30163, 15385, 10891, 9112, 4792, 50, 27168, 11378, 24475, 10362, 29883, 29066, 5083, 27228, 22377, 964, 5279, 3833, 3351, 12140, 1491, 20509, 14258, 24778, 27757, 369, 29836, 14070, 17909, 23026, 20482, 14574, 14660, 29089, 7260, 24806, 17548, 18300, 12276, 29151, 3224, 25518, 20123, 19323, 12629, 27139, 16952, 12304, 19346, 12446, 26290, 12539, 30724, 12014, 11536, 13623, 5005, 22750, 23007, 20014, 3261, 14924, 724, 20174, 28314, 26301, 4019, 22752, 2204, 4431, 17007, 21653, 22524, 24815, 2707, 1634, 5679, 21707, 10208, 14094, 4269, 19722, 24632, 8714, 11766, 3003, 19643, 7680, 17367, 16908, 559, 13230, 8937, 32189, 6309, 5877, 31580, 2772, 22105, 13869, 32498, 7569, 475, 21436, 25678, 22692, 8044, 24039, 12143, 926, 7595, 30952, 25464, 1446, 13681, 28480, 434, 30829, 249, 31822, 31187, 26468, 3652, 9505, 28545, 3884, 28859, 5003, 30994, 12621, 5655, 10102, 15254, 20524, 25214, 12923, 2071, 26423, 22510, 4529, 24095, 29539, 19679, 6595, 30587, 24536, 30244, 2374, 16703, 10986, 18451, 30025, 26122, 22348, 29413, 25645, 19851, 32128, 32352, 2743, 13636, 4498, 18611, 24419, 18062, 12550, 27809, 30715, 19934, 3343, 21217, 25961, 30534, 17666, 29381, 458, 13375, 17673, 1563, 25795, 11941, 32028, 13393, 29208, 27907, 1069, 30940, 13946, 3089, 31651, 18649, 1697, 12667, 18186, 15349, 5275, 7140, 27657, 15499, 28516, 29739, 11924, 781, 8374, 17389, 15714, 24741, 23842, 13643, 674, 7452, 31328, 32749, 27882, 27642, 8164, 10054, 17520, 15599, 26033, 28186, 24700, 27505, 21874, 9022, 20765, 4519, 455, 11168, 20764, 646, 10205, 28039, 5166, 12090, 3905, 283, 17773, 31687, 7158, 18983, 18953, 18160, 18117, 24350, 7227, 10584, 28628, 24924, 21115, 12263, 16250, 10927, 9971, 5487, 2386, 29718, 4915, 16271, 25998, 22984, 21542, 728, 29838, 24696, 27205, 29231, 178, 24536, 27146, 15730, 29292, 30300, 12456, 25439, 19097, 27200, 20729, 15025, 5905, 7116, 19640, 5771, 5500, 27863, 28144, 2586, 30824, 16778, 21684, 3959, 665, 32358, 3345, 5578, 27808, 10120, 16705, 15029, 18608, 1324, 23585, 13040, 22700, 29041, 12262, 9776, 2692, 13148, 29963, 590, 3778, 2846, 13709, 2469, 15712, 21402, 30811, 8380, 15581, 23842, 16648, 7973, 8080, 25985, 14276, 10148, 27451, 20799, 3466, 19348, 16099, 2592, 28827, 32135, 2783, 9966, 9514, 5933, 3888, 16504, 5721, 30327, 5136, 6107, 29540, 30203, 4301, 29184, 11548, 17563, 13528, 19558, 26520, 24673, 1817, 20258, 13351, 14510, 3974, 8228, 10120, 15252, 16116, 31675, 8286, 21120, 2349, 13916, 20958, 4636, 25922, 2975, 26315, 8563, 10275, 24202, 20644, 7255, 28012, 20242, 5916, 29951, 642, 18655, 15306, 6389, 2015, 28496, 1570, 23856, 15530, 2751, 19364, 30076, 10379, 23302, 2131, 31523, 6077, 29505, 23401, 18118, 7525, 726, 15433, 8588, 4130, 12211, 31669, 4479, 13541, 26071, 25921, 17714, 3075, 16404, 5383, 25255, 29832, 28179, 21917, 15729, 6607, 15256, 6724, 14358, 24399, 7431, 26978, 21687, 16056, 25896, 19251, 14579, 19519, 2087, 4283, 10504, 21813, 4063, 1791, 15931, 19679, 9559, 27252, 23675, 31618, 21389, 11960, 11073, 9149, 26483, 28288, 5562, 4635, 4408, 6098, 5672, 19177, 10952, 10356, 20614, 19013, 18326, 3748, 16490, 2680, 29081, 521, 32304, 17542, 14228, 26858, 24405, 7939, 28827, 7582, 30241, 16167, 22739, 10307, 13449, 28709, 27513, 16563, 13907, 21689, 7718, 11444, 30331, 22272, 24913, 20079, 29654, 19085, 2581, 30500, 2293, 29881, 2356, 21019, 31564, 28474, 4957, 31710, 1427, 6392, 7850, 6565, 24941, 2332, 22893, 1298, 5192, 14441, 32300, 24606, 900, 21711, 10474, 9556, 5079, 29501, 4520, 2109, 22512, 5048, 20524, 14875, 4698, 11178, 3329, 26329, 3748, 10876, 17343, 32323, 5567, 11366, 31373, 7539, 423, 20358, 4835, 11403, 13381, 24368, 6037, 1194, 30101, 18822, 11277, 12824, 32004, 4936, 215, 9924, 10780, 15853, 29028, 28913, 12386, 21490, 12039, 18988, 14975, 3954, 7492, 4737, 18591, 20215, 17226, 3054, 19991, 19600, 30398, 27160, 21066, 19235, 9146, 2621, 6349, 11781, 22038, 26474, 5321, 11976, 26598, 7918, 11169, 9556, 31043, 6414, 2773, 5689, 5455, 10746, 5415, 31556, 10355, 16128, 11004, 31313, 11243, 27648, 20996, 32351, 10885, 27936, 29, 26346, 677, 28864, 3445, 16757, 2445, 15793, 4591, 16742, 29659, 2465, 12745, 27158, 10067, 5082, 7547, 7977, 23007, 22573, 18658, 3867, 8660, 28200, 7581, 11292, 23415, 26768, 11448, 10014, 1984, 18699, 9095, 8492, 2142, 23580, 2005, 1789, 23802, 4436, 32575, 19145, 17856, 9159, 9690, 28763, 28444, 9918, 14364, 8040, 2753, 19115, 5113, 12319, 31216, 28258, 21836, 26113, 27895, 20613, 4473, 19699, 7160, 30016, 30288, 27793, 31979, 5175, 20533, 17862, 6886, 8893, 15230, 20121, 29340, 20039, 1309, 24650, 30757, 31520, 32383, 19358, 10749, 7006, 18612, 1911, 21838, 29204, 23247, 11687, 28530, 5833, 18320, 14854, 10419, 19753, 1600, 16323, 7254, 1275, 17117, 2295, 16857, 5715, 31095, 21632, 888, 3593, 24794, 9740, 7670, 7785, 26733, 23668, 11673, 2092, 19802, 588, 3191, 4008, 2799, 3256, 26096, 21059, 10821, 31872, 9084, 4141, 13599, 5479, 5799, 15951, 20500, 8121, 1113, 29822, 16369, 26660, 30043, 3061, 24153, 29128, 28695, 514, 16814, 3729, 32671, 29439, 7221, 20933, 11249, 16772, 5748, 4313, 18298, 15835, 10463, 26249, 13784, 25012, 14516, 27688, 4068, 29722, 31780, 7476, 18672, 10662, 27059, 6445, 14669, 5363, 14049, 14247, 12817, 31569, 10762, 8863, 32278, 25022, 17291, 27403, 29766, 26130, 550, 19380, 32534, 14457, 18088, 3656, 15697, 18726, 6856 }
Returns: {847787, 970866321, 559758978, 705913607, 961587416, 410059173, 784452670, 794047613, 973795577, 893447121, 812482771, 890480675, 824732687, 407050391, 880226895, 999051465, 980219387, 254534355, 755057078, 991850471, 802999040, 530918620, 907425515, 806307879, 115367815, 807022748, 164890036, 873469096, 753664502, 690111543, 679397615, 146690120, 887119076, 768684801, 941524415, 870823079, 671279867, 758282052, 506396775, 406983749, 525411575, 982982501, 885487199, 216963452, 850932975, 875896715, 870310469, 918194165, 845088414, 665074439, 839498719, 984158732, 588664710, 49318969, 442416471, 276149351, 636419468, 86863744, 411817370, 997804595, 997315097, 806779952, 424383825, 788808575, 900458299, 238960626, 652522117, 549377015, 26705849, 684404516, 783070500, 920376740, 610759957, 81125156, 533579011, 86503900, 76850181, 874669693, 913595117, 970959755, 872019584, 241134450, 374228521, 784926163, 380131225, 723467902, 909595919, 361567433, 207520806, 920637816, 157662935, 930086402, 89478084, 71583229, 677159870, 185857109, 629741045, 753577262, 951200737, 162172317, 416850669, 891874407, 886375497, 574380820, 841634050, 926728193, 284006555, 189993049, 887623755, 443609179, 992829683, 957968615, 532460448, 614624527, 434989163, 974030135, 98906870, 754534799, 928058103, 551617956, 246033479, 767126026, 784625287, 935172969, 654145991, 881266423, 98222529, 980998349, 145214958, 618803139, 867032872, 209721599, 666103259, 916129655, 594129643, 210664181, 880754359, 280172195, 562203503, 618091042, 710737850, 392920843, 818198694, 654629000, 939824331, 984986843, 881008638, 95258729, 986033968, 76798157, 589945810, 289767986, 477179852, 310707263, 350634121, 963796551, 388457282, 538982263, 763565669, 784644549, 506115205, 857132515, 448840055, 983363623, 751185870, 94162790, 222430774, 581763247, 814628775, 705392145, 414885989, 600690769, 479581290, 867709480, 442373678, 765945968, 322319549, 369210982, 808022455, 582836765, 381480300, 554385442, 367550831, 695292451, 614751704, 976124355, 922229997, 970087967, 607606704, 969580256, 157702683, 197481479, 657199815, 920293881, 900341235, 882515789, 252810565, 916333994, 905548482, 291479901, 672079991, 875907056, 544424947, 966687941, 960851333, 95736939, 248872301, 981571708, 538528426, 276326809, 710626719, 628788020, 208743393, 112840119, 944149673, 928451223, 971875714, 43683818, 365986855, 4183175, 641445975, 548259095, 980501125, 836069412, 9895227, 811354602, 883364679, 724619765, 617908962, 968818902, 940919930, 451322439, 836880623, 452487447, 674999095, 842760519, 970092255, 830053495, 900623106, 544341906, 538788245, 376651331, 25171620, 385672811, 645980967, 784602805, 934259533, 860288475, 902774675, 663580592, 509811401, 740632143, 872777135, 525430927, 520920605, 126949447, 104129314, 943246405, 655112378, 297469033, 55788484, 941055875, 508464766, 738003178, 830872729, 632448697, 891090390, 670823083, 614455329, 261675374, 421260335, 441186867, 602853085, 333145435, 676866768, 873354015, 430447074, 291138643, 327375095, 194849492, 139293829, 85900962, 949816664, 849492461, 249354029, 976175495, 122625571, 844946455, 422581642, 525970692, 961922355, 474205862, 756373043, 758919764, 988493045, 945218567, 678455318, 485514050, 323093656, 778792811, 734638508, 876596485, 264569090, 677655217, 858868243, 834591557, 466719846, 432462051, 456809375, 996218580, 583461091, 873023493, 998691182, 570134258, 953912447, 941934719, 74610658, 706922174, 444527855, 892444150, 952542438, 215416060, 980325005, 62214139, 599359200, 992253869, 889278295, 576043592, 967091044, 998218135, 525147317, 479985707, 680310446, 346791940, 316736303, 490932639, 457343621, 221120039, 926439895, 74059810, 155243119, 972953097, 368419745, 714857527, 813918239, 318896051, 53294858, 966686789, 567547535, 995001009, 937761939, 292274412, 63404514, 642410188, 947073666, 814148221, 197625175, 680349413, 819900311, 295390041, 73581911, 76375832, 700289868, 698408168, 496271581, 792732740, 586330511, 924926350, 169548895, 417208946, 294759629, 506458127, 306514243, 113010324, 593606633, 911138247, 630537287, 276102119, 925024121, 819900951, 658790216, 517344098, 472599000, 654743823, 992158687, 448160499, 352256148, 889727923, 842940999, 463189539, 943641911, 696791038, 428573696, 736369677, 548155653, 306171611, 198578408, 985117522, 149994374, 371435202, 841914112, 567342735, 222271900, 38183193, 696958716, 983378825, 720785293, 547928459, 915443615, 848577907, 971887533, 190117658, 634225159, 973890174, 890970694, 756175395, 966482663, 795152258, 358429286, 937736632, 887139725, 645905266, 395732608, 510413195, 573944567, 756845071, 976046262, 936180291, 412160393, 683812892, 814506250, 568377762, 635955849, 299981918, 625847201, 440018278, 552630049, 871795367, 827494340, 807287783, 115275456, 210429235, 987707297, 669047431, 855878235, 814171717, 539300761, 802292063, 768532288, 641706851, 713675943, 134534705, 696603743, 76094815, 999986387, 789411173, 680429506, 220241789, 400130252, 864108151, 168290094, 964443025, 796221278, 826016432, 593921155, 236513816, 424232865, 891086636, 855390788, 348531927, 610021834, 290961909, 436169172, 990817607, 972725695, 712443839, 411428997, 952719730, 230583274, 944346209, 857088474, 272817228, 302240320, 773072465, 794875274, 687655255, 951297633, 218580675, 610746681, 489890439, 494507551, 666978839, 788382569, 986016305, 978890725, 706362360, 927234006, 28479994, 964974303, 586875845, 824931338, 879185303, 737772433, 717704655, 267630051, 925423267, 794856215, 863722895, 852073859, 907470727, 117655144, 994822331, 49131662, 825932478, 561145247, 530446365, 691802327, 827202706, 925433610, 919944087, 757993487, 855617268, 972596730, 942813135, 872781867, 507419758, 537253895, 683977258, 753509531, 649075326, 464507402, 507153255, 699829871, 801811370, 533059375, 689519976, 846871716, 153561079, 616326821, 225428159, 927077225, 358744653, 479667419, 842001015, 126014481, 240450659, 830811704, 347009245, 611365500, 644610911, 939881549, 321949316, 454781237, 426355406, 997400855, 130978069, 870514561, 978550865, 813550997, 922202752, 907051355, 899202503, 780360740, 995412802, 254561985, 354271183, 77772652, 867475955, 234753563, 945010892, 513856149, 939682725, 823781995, 268869281, 824932165, 858223627, 848747291, 201999326, 913210776, 658972455, 820654888, 190082279, 409239618, 188656575, 369294458, 899888790, 725916806, 845683879, 39111289, 937419401, 950450880, 196259142, 730491238, 505939789, 633599021, 875705471, 49099472, 446230874, 697226668, 108090051, 889851833, 901534550, 509213465, 999616367, 959662545, 596240395, 922358675, 695338484, 312539298, 903099583, 28740160, 143609185, 191060906, 241338621, 420969478, 997851611, 947786741, 805592681, 999408575, 687805249, 970819435, 427035926, 739192295, 612043454, 876863926, 367320468, 520418687, 943063789, 853838267, 189471900, 498995436, 930593667, 736738031, 927376655, 889735570, 861705732, 939213821, 431907719, 976672446, 241995225, 410330621, 981088873, 974048136, 993041751, 517428626, 121208175, 539975705, 510451911, 896149345, 851471671, 544695358, 819987377, 218229218, 401157025, 123055472, 788106998, 349895875, 274991944, 699045562, 729009537, 564211505, 484109424, 114128765, 716766380, 653068859, 309392183, 306892622, 261681107, 967148303, 274491475, 732679335, 624716681, 900179534, 910261525, 838838904, 793711775, 116486124, 367808595, 214146627, 973793483, 197461436, 228134729, 135320401, 936719057, 805120367, 42116868, 430487339, 14750435, 270236456, 335298395, 997195925, 769372753, 723414855, 753354361, 941161022, 324274933, 653084599, 222675823, 973871723, 887256281, 279209735, 490243325, 955167353, 36408509, 684919807, 667208479, 770748090, 880508647, 56959601, 750590648, 934189449, 86179418, 390204206, 237633432, 870455593, 687215380, 506426969, 661692016, 512765469, 937758213, 933572731, 503562829, 864231982, 347184115, 153794357, 813647117, 797071011, 973015245, 947750865, 412833900, 639985768, 896418467, 81542369, 476631335, 994017539, 122493281, 931854887, 987405655, 901123463, 382750339, 893855031, 935224745, 210223608, 242857207, 653071373, 742424237, 614082263, 740194303, 820481840, 62449628, 522863135, 589882703, 893311115, 866323621, 946977033, 576616295, 748454693, 807308537, 478815052, 897288666, 409309091, 997972621, 991503075, 545644583, 390574165, 260017823, 641876724, 319441035, 371102403, 867420203, 751638626, 798052745, 9530114, 950531232, 434876495, 953993733, 654756195, 645198877, 994920741, 332982523, 901044396, 101311391, 933742791, 861134849, 998930325, 222514053, 204516022, 689682231, 167035071, 791021415, 726235488, 345039760, 911467263, 762492839, 246001583, 299282804, 916232868, 847385547, 856326756, 731193986, 931422410, 49694002, 780008914, 982263956, 844156385, 973083275, 85217696, 687560745, 829096487, 764453449, 40492872, 611319337, 929487652, 950225942, 840907561, 496063173, 904816154, 546138996, 516826578, 790532957, 888566705, 690716945, 761057592, 283366804, 702112525, 990960875, 812292051, 322881828, 518009759, 923976341, 299806693, 899333813, 853321963, 72095884, 703990709, 617597476, 897782240, 850697283, 704466873, 990055087, 830631270, 498027511, 242485563, 755913995, 603313562, 763573291, 8157541, 784426378, 197256853, 213173779, 389722294, 442326672, 908187305, 992217097, 965159151, 484679479, 624114043, 152777991, 397334333, 355997841, 681005289, 543046775, 712222309, 854984217, 839264743, 871592273, 953222353, 593520976, 897820546, 920500535, 637228125, 748650895, 955252307, 878822919, 349085273, 629951489, 733177697, 851140215, 931537619, 709719820, 762892662, 295610576, 880356833, 76103864, 655268656, 676023322, 250793686, 492650584, 715089280, 903087533, 988848027, 811412615, 986658815, 882234224, 185580955, 155486622, 273539242, 882236743, 886482765, 680979369, 956589295, 424437171, 632651699, 109911985, 43549944, 556381038, 911112894, 96132485, 316507469, 937279065, 837613665, 891493577, 299788392, 886795646, 857877167, 820240674, 567548487, 898594623, 867098909, 749953995, 943706045, 781073435, 897354389, 939023400, 829460792, 857003101, 387496889, 896382125, 264231407, 269962729, 829098575, 393831887, 346648188, 789625378, 711599767, 958689084, 109725561, 446252237, 877200677, 973245602, 236053840, 535104019, 679813355, 871953123, 457869377, 817278575, 981799063, 715727633, 840075815, 371288948, 119843930, 296817852, 292783745, 973462619, 655281047, 75250278, 663320688, 534139297, 984744389, 709504856, 419287880, 698781105, 905600008, 332364422, 715784645, 800617397, 625969073, 880922445, 728468543, 279785549, 211731960, 631428445, 472060141, 167932273, 696012113, 170873303, 779588071, 841010608, 798979075, 703966325, 952088525, 421461155, 926307803, 459432716, 951119891, 382028316, 656569816, 706765895, 345213568, 794985820, 868352745, 413790399, 142746257, 742235167, 463041639, 271574334, 585960464, 580312827, 822693338, 907498545, 631699196, 472732035, 496887362, 672277904, 646758695, 797435047, 269881649, 390822472, 990418459, 864253644, 661337439, 774889318, 560750901, 326105511, 439131081, 877650549, 704122247, 282626588, 939530887, 177691476, 22294422, 883376872, 645732490, 924132159, 802192975, 581342583, 557079000, 984210520, 831266135, 388680244, 505240007, 520856209, 998236214, 875219888, 933613831, 920346880, 663629955, 918063182, 680199326, 631791367, 553402865, 280943521, 384361223, 482815100, 496634217, 277299696, 525222003, 238568721, 565321235, 186849650, 408892867, 982090325, 353643495, 312018940, 318581948, 343902875, 147710299, 811948844, 550068265, 499507677, 211840943, 904317952, 431023178, 7119419, 981280670, 695775845, 997606151, 98440203, 938185850, 949258545, 568000441, 931784303, 687409183, 920975934, 520688067, 877104299, 522077895, 652308068, 836961589, 811546139, 27196672, 403192540, 845509846, 913894007, 959854238, 971424550, 183966235, 198167081, 877792311, 634915535, 949631799, 870854975, 713289085, 939028945, 368815494, 86716964, 58447488, 960729779, 938967118, 881334474, 879380230, 283601761, 905907739, 964815175, 63794048, 455212637, 522998914, 125067264, 901023251, 618696335, 706357343, 392962049, 508172482, 966323558, 937684106, 378794747, 269334683, 577736103, 182691909, 605246661, 758014767, 941844170, 956858145, 723451283, 951320873, 722323256, 414875019, 227157249, 951488593, 736075017, 386870186, 460121239, 939327027, 15838806, 779873842, 651505705, 645599072, 49122787, 361625845, 982851470, 772784014, 793139915, 921585837, 947996575, 148774051, 643101428, 274812094, 867883038, 393865585, 758353940, 197549699, 699837716, 421202415, 173094902, 681443569, 641250065, 441600885, 493095060, 969621318, 911193083, 918597347, 866398960, 704725493, 947357957, 232898543, 249602662, 571259200, 48945947, 208426848, 872398073, 730512500, 606110764, 187665653, 512064083, 923575003, 223470893, 675291665, 828428290, 851297111, 415252869, 845049125, 959039400, 775088303, 334159727, 934063399, 840639947, 200484874, 64502446, 974505814, 978730775, 824219000, 955788055, 589120308, 591967447, 981052949, 684520536, 579686387, 972551503, 722759210, 508049749, 523715500, 70963227, 550932091, 417014183, 678777221, 769744285, 86462860, 589810719, 161690723, 324734634, 710986901, 877372119, 700852432, 284613632, 828631633, 973991780, 196448870, 992172617, 850769884, 689929311, 984649935, 553344685, 76334684, 571716515, 341207903, 354308637, 571751721, 382357103, 973332013, 961280575, 965597492, 969222635, 433772245, 590968415, 270919186, 971696778, 212843136, 967378650, 543010433, 836380793, 924933262, 691903386, 289241885, 880331175, 450893345, 675579442, 994344103, 232681908, 103637039, 33133369, 1432289, 153027501, 406117125, 261648068, 727786023, 255206684, 365789763, 163057094, 169356426, 976944207, 549224265, 672617513, 157965281, 887231117, 767627443, 935399831, 804638908, 966489265, 953391606, 510784709, 829397685, 922284403, 994228764, 985014056, 482507237, 759971175, 76894757, 989051441, 721084049, 581145135, 843691849, 542673198, 942603944, 838710797, 829769735, 589404314, 814190511, 997359281, 454216616, 887987000, 86037829, 791129932, 974964521, 865955195, 772430520, 435760065, 410912456, 762451915, 379419161, 809258108, 731376343, 167968061, 418274151, 976354891, 745450017, 676959923, 972196181, 756045705, 63869055, 795566338, 963347519, 584930755, 184773185, 999374749, 393174259, 897071612, 514006644, 973490697, 826559741, 798249271, 227683703, 459484175, 906858439, 221987271, 731086867, 504976127, 474682354, 881048060, 730177773, 791398591, 69784266, 372814045, 825823178, 971633382, 190361116, 707224725, 258394620, 278318855, 872538333, 358201389, 327777173, 665390515, 49404724, 695576191, 963438451, 461253743, 119075607, 988572675, 18014645, 797279453, 195844450, 834006278, 949312130, 165225163, 659069959, 282347248, 966956402, 557128180, 895213393, 555693281, 387260480, 933521146, 648549545, 916585420, 564945750, 651207163, 934218712, 908842846, 210739983, 215105291, 882939713, 999189627, 252887382, 680269545, 730702232, 914681685, 659724655, 885713043, 260442701, 552529375, 351331823, 459332480, 986939494, 805183115, 758351609, 894738761, 784089173, 481812532, 945891571, 547007892, 534885164, 914136755, 968979470, 956972375, 691664402, 378815996, 384038179, 934434835, 765336051, 715516097, 403247689, 619041819, 116357672, 808912811, 88015442, 507644732, 641261867, 358464565, 208541703, 64373365, 708533867, 572793241, 718096342, 612337471, 548066375, 652466575, 411848726, 377788972, 145078947, 1145194, 842388251, 803738685, 464358355, 224462860, 101465825, 738940479, 696982479, 984167853, 808518168, 779205170, 384511746, 732013265, 992581080, 933205149, 308212845, 432941743, 942383237, 799272059, 582420846, 586527255, 450342515, 375860725, 508168699, 657321299, 825181099, 75288170, 605774130, 919407596, 184022661, 134487136, 52625155, 63766040, 991697085, 239351477, 997594115, 956373473, 125844586, 225596689, 615229091, 994201399, 179469691, 258175701, 863321125, 396255155, 999937001, 688882478, 211268910, 475308263, 203456830, 442189295, 957064007, 815147082, 590343451, 272004295, 637296253, 257254522, 218457034, 852376643, 884749127, 478650710, 858370795, 617326384, 476899767, 752383504, 558294030, 732906535, 428530475, 952567639, 997398845, 152396059, 925863680, 448548783, 20693796, 446742394, 877269461, 908410540, 94687247, 965855743, 900790200, 584962135, 449559995, 12712373, 895383861, 932517794, 990878339, 970657739, 944205140, 985870585, 509849006, 986647479, 971232567, 979171466, 965524455, 269636947, 293205687, 110597477, 629704789, 507660186, 242084288, 853938962, 800557406, 439476162, 171967500, 806556646, 525533374, 95342036, 952489969, 784227099, 507592182, 140082616, 348896846, 733427220, 460525552, 282823878, 185638911, 482295398, 959021111, 584408567, 997197563, 210392886, 877636823, 950007009, 318908515, 147472713, 176033038, 829668612, 818689086, 352977826, 801689111, 926998958, 883881215, 789983014, 419025072, 817325651, 156728616, 406399242, 184357245, 525513138, 981955037, 934062647, 224574559, 290446142, 405237621, 538687528, 946736975, 555281045, 968020281, 941088735, 373238851, 19503340, 685653305, 980122699, 854692970, 307956105, 533726267, 733609653, 831155959, 425260947, 180818980, 722732384, 395846226, 599825235, 911812523, 607519942, 970492545, 826064653, 692786299, 758541863, 520738490, 351213628, 537716159, 225104155, 790097020, 889554237, 645179896, 920069210, 213573169, 470722100, 299510820, 829938629, 912722708, 986929049, 536420408, 273511564, 896997705, 3089268, 379457834, 118188900, 187259373, 418338920, 936350319, 591350315, 227445103, 574022051, 847118946, 31045154, 859980887, 982519633, 189116280, 661715099, 422689336, 855736303, 838743879, 339696343, 213730121, 809102474, 374679140, 853596186, 93514735, 799033439, 770983148, 739937514, 517580691, 985100680, 800653437, 888942999, 985506650, 933167819, 123741202, 455293818, 408146691, 879769634, 552911040, 472929959, 767177343, 627278767, 686253655, 764388889, 349546898, 239275250, 103245569, 959593241, 975641465, 830529275, 110146978, 673404436, 405371879, 824988383, 977213980, 587545310, 675156177, 481221561, 571598700, 758483265, 33579435, 171386260, 991854477, 292400371, 934815995, 55962087, 377014127, 571655735, 778696792, 130705283, 247354891, 772706725, 767935010, 791360192, 550393696, 635367390, 357567778, 670296503, 983143385, 590259315, 482577822, 586899676, 629535683, 439295979, 582701831, 216921966, 728433736, 448477549, 417843455, 942745067, 573790293, 991922591, 779759444, 948470924, 986980515, 586997355, 999642133, 839926763, 480363262, 969147712, 297624015, 413776984, 903119460, 934143114, 994588063, 594732053, 436344035, 962494903, 963996441, 904856495, 808946705, 895516681, 416963390, 998897391, 921012843, 866439674, 35152589, 539137072, 957834404, 364003271, 904124296, 54624898, 560906869, 506237118, 237670635, 476642700, 530132438, 966602623, 647488507, 850897181, 836975946, 233124189, 886465955, 205114594, 200699892, 409907748, 761253382, 896132071, 61069618, 613689444, 149064653, 992444475, 984553577, 995600938, 524907371, 413446132, 721782791, 12509796, 985194423, 249293479, 700744151, 543388129, 529007197, 576203495, 702179482, 649220730, 414925555, 917882237, 885723523, 941250395, 462922188, 534284913, 919758041, 989192333, 315580859, 784136063, 966711479, 922667116, 599878295, 383236875, 743496470, 606330887, 621335961, 548944354, 850146987, 995826452, 664143059, 238805298, 998291485, 21325233, 459303948, 764212291, 287369962, 477001847, 684287816, 216424889, 857948609, 986991754, 864193109, 977919545, 756454205, 82468433, 477967129, 751813300, 551863559, 100359187, 139562368, 689014355, 873688583, 354133343, 122935094, 898662060, 383351643, 999749758, 271413665, 987208871, 456156807, 377796703, 575353223, 256245946, 90530343, 237025137, 915950713, 921077175, 253547155, 589291925, 766173117, 268006016, 827798832, 132768885, 782830493, 490937095, 828040023, 970678728, 945321314, 960410115, 451724598, 958377443, 351780183, 456479900, 929318007, 786266687, 596022197, 980297287, 42656408, 20557751, 961178379, 952468463, 328063162, 994939645, 987194110, 605891120, 921911103, 768925245, 740057569, 534340684, 327845067, 870863975, 76087209, 713904375, 841791827, 998614120, 984117215, 439903597, 142983901, 869825089, 834502082, 667978341, 690869775, 726231771, 398530537, 993719133, 594266003, 881325713, 869250333, 658513154, 923351431, 984575790, 136905788, 764295086, 635941769, 855316244, 548267, 328208070, 516795656, 613505355, 695742533, 823449007, 257017926, 580407572, 528778245, 939205706, 359844612, 614784127, 673152465, 764695187, 390988874, 499275047, 114199281, 872587565, 346589865, 358081476, 346001373, 57563593, 950840105, 643157015, 572781547, 736588718, 628244266, 961213895, 470934896, 497455169, 81527803, 496190517, 922110635, 670542230, 19029534, 1271990, 285163088, 980805743, 134807094, 830139289, 580286387, 467316661, 921204740, 111784122, 614641834, 755509637, 995418263, 356170067, 983821715, 756173670, 54304773, 537937930, 176341668, 244115559, 671849898, 914970056, 143420423, 89566305, 671191033, 692901223, 875677348, 946673093, 267049201, 957509390, 739603833, 978707249, 424783993, 810753917, 479369155, 955018094, 940527882, 661813414, 321784253, 720838640, 993897751, 701395655, 501307759, 118516044, 91737749, 780031751, 751684116, 620920876, 473774023, 952338383, 902594564, 136372390, 538902960, 115175765, 263806592, 692753151, 793379311, 247269143, 697105575, 560815735, 856960309, 827658322, 981367151, 880922279, 949410443, 362935199, 805320077, 556348390, 979262848, 668009477, 897932540, 314282613, 162405928, 795005688, 956397472, 686102489, 457134983, 845721996, 968077049, 746212297, 314764375, 985418595, 744835835, 872839377, 709657907, 883745637, 36471152, 572834137, 525383099, 925802951 }
{1, 1000010, 9496545, 540301965, 185832905, 803739324, 222845071, 851545772, 40084560, 848876509, 35193437, 676068518, 486433254, 636748348, 173806982, 685703700, 16667600, 499992811, 350419469, 508589021, 572006940, 724567938, 998303678, 595276866, 130134745, 916888112, 628933089, 778580306, 466595890, 672000276, 983443035, 624492112, 468540450, 973903958, 633864469, 778623314, 51193526, 356611083, 906631705, 392640157, 694192181, 740253063, 169285083, 899178899, 323177327, 7482416, 481610070, 228269498, 63550641, 188278181, 156736662, 27283067, 672080837, 935941525, 560610432, 177476672, 512219780, 266917629, 897965577, 567260459, 427654451, 427299741, 15253585, 869709638, 774020342, 39068980, 103498980, 659452731, 60846742, 46557436, 809839797, 87337235, 401483577, 283317920, 568499841, 272707081, 109909618, 30690856, 753839721, 132336994, 573272768, 909072767, 673371596, 615765448, 577295388, 454871774, 205295735, 300357326, 274958906, 904014397, 244150391, 97332526, 985232443, 996204777, 288138626, 699161464, 62816478, 557477769, 798617680, 74707620, 409704992, 961541423, 48196082, 734442948, 948458326, 344421705, 679080451, 385556298, 786077232, 625604860, 935643098, 725469747, 405977483, 770535007, 461723697, 475430471, 151271319, 934044292, 375785792, 749617688, 933120217, 773283022, 944116172, 564425863, 799023610, 220125729, 471531753, 331118241, 82014440, 184199397, 972892180, 476535339, 20264308, 592748971, 67602447, 96769063, 426221987, 75036836, 458737660, 100276035, 629276359, 798217516, 584112107, 62937858, 385325172, 638177453, 289688887, 955695815, 661337737, 748105801, 858727057, 747213262, 196708556, 886418361, 874006307, 60928869, 916883901, 299551169, 367929633, 510546162, 775544059, 588335179, 279853522, 754492680, 7544752, 46000336, 597624257, 509122358, 978703736, 805289709, 733307653, 627594409, 95127371, 444853761, 24406457, 665452406, 821600549, 718404291, 501755371, 737835681, 544342259, 561972414, 199520793, 663792503, 57947018, 286134128, 150820028, 777981928, 277764650, 186274860, 218502614, 519801052, 244606104, 355357397, 780227373, 999003611, 937695620, 975644941, 229740243, 733920741, 945124224, 441013848, 542630046, 954961748, 987420101, 612363857, 657484287, 21330813, 873128278, 188480816, 691938093, 524647107, 352119152, 948457598, 621749863, 693124082, 944382934, 794398652, 395440000, 67332021, 658855170, 39845264, 688542214, 539184900, 44865370, 92304431, 812322578, 899165813, 709156697, 982951435, 352877205, 374759939, 302217376, 69878230, 840370372, 345204919, 611209654, 816524650, 551652063, 398671421, 113010228, 220891523, 378080632, 686891558, 334046969, 762447644, 652290524, 528659402, 564943641, 478636388, 791962220, 402962253, 635461421, 611205099, 643983798, 69260575, 471115919, 214090223, 962562862, 575828861, 47983015, 877467096, 827655037, 13164025, 680660647, 289639369, 580860658, 625294411, 174275973, 141295835, 571253300, 441956255, 462872520, 586974951, 319607594, 677146763, 856211488, 410576726, 342083243, 862230461, 733982048, 344724951, 150808958, 211791196, 694984235, 451945463, 511100825, 709956784, 611531263, 744820176, 463330895, 746251232, 964144464, 391018822, 109390943, 867373588, 467501549, 12930254, 344103783, 406952185, 765243241, 389751182, 502522118, 707518239, 460300019, 238319914, 397411629, 351766702, 896833863, 170227292, 388364030, 78836249, 75380569, 88829204, 848051374, 417652218, 439339088, 5196103, 212288555, 549117996, 875983433, 139788181, 918341303, 45740208, 907070978, 822004207, 111257432, 909094419, 217163744, 989922225, 671008741, 441128424, 936200877, 941182488, 612213987, 775001152, 372830962, 651087534, 398295329, 792582144, 909938031, 96026635, 63887462, 146504128, 486456690, 635391487, 432446262, 267887696, 429356244, 848477327, 910535003, 969842535, 627306564, 679945516, 803078904, 325744333, 75699230, 725595346, 171953458, 514253467, 341635951, 120155199, 93988079, 597781102, 626596400, 533097236, 950772550, 158224304, 325589177, 31473703, 90280326, 673381274, 527361961, 876815770, 132298771, 580302195, 626012340, 703488342, 635335602, 587847109, 982077121, 747363767, 218559721, 716488920, 848084952, 679902066, 225642405, 650030694, 328937837, 417728013, 53054257, 621728933, 171045731, 637125536, 582518942, 377849750, 450189908, 612422033, 291511027, 305560608, 644356968, 712379740, 858692884, 415062983, 952624619, 869822807, 281332280, 78305771, 342360446, 306073711, 898988903, 285404256, 247104119, 704071228, 346575772, 854826423, 589452690, 492489412, 739151592, 706474894, 866525780, 321848855, 321262724, 932296720, 301120123, 921075682, 224012084, 751506810, 989314030, 842633603, 933799133, 71765268, 970033155, 232781113, 805633555, 73472956, 380113488, 301045756, 765313603, 970486164, 858678745, 450129553, 146027180, 988928306, 94804334, 373456757, 684530717, 398784830, 742317503, 397244412, 97819831, 731240781, 241811283, 530685922, 653798294, 826380188, 720269817, 235386483, 301885581, 310096184, 228149227, 686677340, 800094627, 768852339, 485007570, 230910044, 452743167, 560413169, 871915093, 958954776, 375763935, 694439412, 532352911, 511543831, 928233397, 782505709, 497559605, 458571791, 398817503, 667752861, 680583830, 550833347, 263279337, 27054474, 660489766, 832348933, 178109946, 390481357, 61669387, 359731294, 340775907, 27153117, 827349926, 961739453, 36287683, 860847496, 947538195, 890713905, 897833533, 790348611, 718250004, 67976992, 557001640, 722845524, 724516075, 154770278, 663370814, 869383507, 79561643, 100237221, 616082211, 696997234, 183659199, 707603898, 996047261, 722808183, 752247700, 711909871, 683258141, 121466444, 139647559, 756886316, 796057088, 786809186, 75472105, 368212974, 629927271, 250899662, 477168790, 409476805, 847705050, 957132668, 334577415, 605559570, 930445902, 705311851, 877905498, 984569031, 266089653, 332385534, 903147649, 436181939, 522736791, 38105654, 542910702, 990429157, 205623576, 298647762, 652164352, 591043749, 269404155, 275272001, 590719065, 316258834, 684301883, 856969354, 741546240, 295063853, 106543026, 54811586, 434810817, 300655989, 970329983, 682689278, 634301517, 670990309, 549301566, 215432958, 526338622, 470863565, 483068377, 160867478, 879773117, 161742328, 64923237, 192382332, 120893467, 481872537, 609536164, 804737820, 689514747, 464231966, 864065813, 26691784, 76180516, 784252742, 917732407, 151255049, 929887385, 128868568, 796529154, 541728461, 291744891, 145182855, 833690881, 430251588, 53503039, 431634584, 664233248, 321659774, 613856909, 786570936, 880510096, 251787503, 276806706, 569059310, 542435201, 833452766, 350639588, 241220155, 476495806, 392643510, 218183831, 428193816, 139433443, 398738580, 632046059, 530039982, 294893243, 539492484, 341821459, 77206955, 737590054, 697662488, 478871821, 431664566, 711005232, 8369702, 443531588, 388684225, 124804359, 781266922, 778085094, 613143177, 725843083, 316774551, 323214923, 843937521, 221577228, 679305092, 565319293, 343428849, 4895629, 727114979, 260419461, 513725957, 629624499, 987717803, 335833104, 905762919, 303277169, 192119034, 812706072, 381790227, 149439165, 286908601, 997778887, 27876498, 426233606, 986955457, 21084855, 956353557, 459160342, 889843513, 520239403, 714530518, 697440714, 812875587, 398985112, 562895378, 239441805, 236619575, 839535431, 405130273, 733929968, 857234624, 835143465, 511452899, 617634722, 991366259, 23570644, 976287090, 938408413, 453581236, 175398620, 635620593, 703417867, 825839309, 10479667, 190945883, 140912189, 262471385, 485029123, 749393577, 453510010, 575260408, 198779594, 29024115, 735208071, 964581844, 578914807, 586807042, 321302323, 815049145, 771747507, 653771397, 388132164, 206536492, 57252289, 550531036, 194663318, 782070773, 462831348, 422773013, 816247365, 388421185, 539588478, 384274424, 421642474, 610498167, 75443791, 729854902, 819903135, 943787327, 115193418, 927129791, 368989967, 684687216, 994904508, 377448019, 985796218, 560106471, 616981311, 991604615, 300651129, 185653715, 141460270, 441748788, 652619979, 247452086, 234718513, 361898577, 505426700, 283612546, 250881749, 369932944, 545630967, 410145641, 922942244, 547538279, 355525845, 267314766, 562079643, 656807406, 497869371, 60864511, 47839304, 422213404, 543545695, 76573147, 795780502, 35034241, 796496121, 516579749, 452566542, 861834858, 211705816, 206994685, 933578881, 123825330, 456293131, 502393037, 2218115, 140264918, 787977895, 859192750, 847244254, 615519921, 605157993, 856517886, 847715076, 504903284, 836317188, 406826671, 771927477, 565604760, 896198931, 874808597, 116579444, 272172850, 304842339, 520303219, 598306250, 494792346, 409219313, 496204024, 912688914, 161272435, 414176025, 291178219, 326846688, 995601543, 781814489, 312934568, 689563063, 337323114, 961463735, 382160030, 793868549, 208944804, 328216842, 975667369, 611887459, 431391120, 848537983, 443868134, 481393444, 849984727, 324918560, 599540335, 805247171, 479799223, 731268222, 43046281, 949373881, 834041243, 73236748, 396597707, 239956402, 752854028, 763175048, 549024219, 632771971, 243491015, 359256827, 748259720, 916747013, 820517993, 826275520, 29032289, 394310752, 900679338, 262312556, 952918297, 918849999, 84818550, 174616925, 482814678, 694055120, 370432223, 932267976, 938736058, 700204711, 527706611, 366218546, 960766072, 890441536, 849727232, 694064214, 966988007, 274450489, 507786490, 146589497, 184938267, 626751584, 652408980, 675711043, 550899221, 306562807, 509521255, 101807677, 956511701, 696258876, 973305825, 907157061, 337452522, 879706865, 115202626, 743444786, 330455891, 438321048, 999665867, 356180318, 871717188, 353136652, 7918753, 919665961, 495295591, 380870839, 123095321, 892268941, 202848589, 781253340, 19338287, 810079600, 702216729, 935560591, 388715469, 701197845, 412876988, 651041638, 951394445, 733642905, 357132226, 808965077, 266139851, 36041912, 151728992, 723447178, 179887102, 32288173, 694965338, 159176942, 558995935, 892951605, 955596186, 425070711, 143504868, 456109024, 31418734, 791493648, 687712540, 492439338, 693640178, 507445530, 45104040, 439275908, 557204099, 273856623, 120797315, 76668197, 649475539, 908119627, 769918926, 145915897, 443924806, 756594503, 492946854, 264273796, 717303593, 264056327, 213339820, 659447070, 475568104, 80927578, 341789501, 24234066, 197869848, 844348707, 656166504, 61430594, 623395180, 794706703, 901451977, 539729020, 549227261, 321378033, 171376316, 298560994, 620392173, 869183849, 283161568, 335009741, 556396041, 9120002, 420001510, 126713894, 559208516, 55113161, 236699905, 657637258, 381999625, 295803180, 98268523, 912617794, 642075968, 442992012, 357296439, 652281032, 366311953, 661218531, 646426509, 439739656, 146720224, 863276628, 783543688, 949013622, 474547185, 970191385, 318029366, 515164677, 300516666, 205501059, 882432557, 768732023, 926216402, 724972261, 423704397, 630458719, 253074453, 255160598, 268718507, 57090899, 2257656, 401806907, 658217044, 630331454, 291598278, 442016350, 782175022, 165964044, 329454795, 626490564, 409492672, 67009849, 966079458, 766280900, 985266532, 538665733, 128316168, 237937344, 319319903, 890477839, 945913203, 925767888, 468441845, 543248787, 410752129, 526645152, 13628331, 399459843, 268080668, 49375740, 383618249, 331532738, 955793396, 530599507, 892100484, 836503440, 672289335, 848600557, 497110947, 458178638, 95680194, 915091664, 606174952, 695560890, 680309512, 438956376, 525963981, 623334048, 961728105, 13250302, 162863337, 201583873, 127410453, 132867601, 506736579, 483007809, 552042911, 529069934, 305755770, 891166247, 75008351, 735307037, 723960795, 630404600, 369154955, 46587670, 599045766, 59226491, 499262847, 24370922, 435265530, 341563967, 218177258, 932061061, 283637320, 611017626, 547780266, 311745433, 639096403, 971281230, 998162269, 684717630, 117270487, 174420265, 117375875, 97849598, 786148260, 568807830, 518344244, 62188872, 618099918, 272862403, 335724429, 174421212, 27155282, 792134813, 985409274, 485596740, 529006505, 771647196, 736674408, 613421853, 716529601, 969255049, 189465845, 65884155, 447081822, 409437797, 265897896, 803183960, 897435460, 579517430, 840931580, 34359072, 910537720, 321778515, 304720427, 456687428, 513382485, 198853361, 530039783, 767655713, 445812597, 346814245, 262819769, 79075781, 631863356, 529465921, 655097676, 730836511, 247579282, 660713175, 859496721, 553504563, 986203166, 669339316, 648197170, 31009529, 868087662, 439447275, 552771318, 471175031, 281847356, 990800426, 36503739, 915709060, 992146819, 330223338, 861755945, 55273821, 520986916, 554093862, 895216238, 914540792, 621194350, 697612904, 278722615, 868414460, 458895179, 913930678, 439229125, 623445664, 59402013, 461752370, 1354783, 334088621, 454870868, 333050843, 108028774, 451665394, 540115651, 371799595, 197291637, 378223526, 841558820, 744240220, 16066344, 945391813, 744875508, 424072399, 628388156, 938388773, 293753605, 844386566, 981938924, 928598509, 662416711, 523291656, 72349444, 23488927, 615392229, 645909293, 582035051, 520347324, 88712144, 943941630, 605688698, 845441592, 419242796, 834837692, 806782744, 684590159, 573239476, 287272654, 92853271, 810533934, 40453830, 921756680, 168097061, 94204006, 568649737, 633152715, 634069720, 290840096, 724191304, 378653560, 409469939, 350727036, 303565796, 348752620, 914087812, 554752531, 502904125, 202359685, 944265865, 224500686, 380994791, 469394870, 416088530, 53963471, 199129978, 747520787, 44385693, 34239657, 412836657, 262603827, 750885933, 866200763, 196881553, 616900513, 797656687, 535507020, 366426182, 511752093, 249048787, 280217878, 165705612, 59441271, 585582265, 730473899, 639780779, 636783911, 10954074, 505124288, 255290062, 794684829, 779234936, 772750892, 406778736, 232847036, 785043460, 183382166, 193046232, 497596867, 743395314, 699417113, 467487302, 608450570, 836284843, 766731111, 617039264, 684410598, 659998608, 147104348, 903768892, 921604463, 809900004, 765808781, 876813819, 914494941, 572639943, 962592179, 41890922, 100708229, 295046308, 361437737, 449819278, 302291474, 669666000, 43462208, 732783567, 827202912, 26855350, 968241278, 225222012, 302118412, 837014150, 450179164, 176348757, 774262311, 245555398, 705439540, 786740468, 319780702, 170056600, 944981200, 901151875, 752879711, 308132811, 211073217, 16297179, 489302638, 650634179, 956000651, 204333689, 90761336, 390158864, 860714642, 467902957, 375592251, 242986654, 584298210, 604104206, 645403282, 749756425, 370474812, 654269085, 497067299, 659028322, 351156894, 703422459, 972133567, 389854206, 26681476, 35225263, 329984180, 240447128, 450426933, 254184961, 643546234, 570384157, 249130159, 190198980, 410893786, 680645164, 696688920, 546883143, 749527893, 390466608, 940081034, 941935469, 611110108, 475846308, 146232589, 506086159, 774269082, 661782098, 481874506, 60964033, 98876774, 699260394, 255344429, 847392576, 361898345, 842434764, 952905077, 184094409, 5272563, 186281750, 1617519, 202706431, 160946666, 443006274, 447359988, 305658048, 763578606, 144325693, 868920381, 731320790, 434257662, 555211466, 421356055, 665782557, 344950457, 71234867, 563239262, 640831077, 292349977, 129785758, 586582591, 139217344, 529989559, 42329567, 11418520, 780024237, 370055747, 461120115, 417582815, 774712331, 162411365, 943896831, 2119741, 817641334, 182587927, 310613348, 874587351, 451860734, 224523175, 510163707, 72212522, 592554526, 924446865, 119388792, 314300788, 730330912, 692053109, 739036922, 63108318, 979123744, 780726836, 625751410, 826698660, 613826191, 850366520, 909877416, 325009345, 534275355, 330219958, 958101580, 67116591, 86636943, 809384960, 53930425, 226026302, 665265776, 250651662, 970625215, 946656106, 714351949, 904789443, 132209421, 600390569, 596958293, 73757730, 950804004, 896196139, 711112971, 935637568, 868534370, 802207927, 128105687, 214463274, 289750884, 11120843, 670392718, 454495923, 470054648, 677764066, 399933861, 588614349, 518576115, 906844460, 51810114, 787673895, 477870694, 648796366, 797424351, 141430816, 389072756, 557281243, 134075987, 893373747, 227011249, 17395619, 481460329, 403940011, 361071159, 347123613, 312180193, 469617921, 36170019, 157506948, 872580247, 639424659, 426942662, 221817679, 611706465, 977682465, 530843812, 990367704, 953095881, 490919111, 459922149, 228717511, 981720234, 886788491, 82017030, 136604047, 951036659, 806695541, 292046319, 260167425, 377895716, 21752499, 698710761, 36993440, 764760488, 702057411, 126618119, 947793868, 643935884, 299896875, 693615849, 73187533, 375947309, 335806180, 447519380, 278993507, 894296426, 408106343, 351466422, 638222345, 30211088, 733498033, 879531673, 193990384, 897910563, 560542866, 20794857, 831741440, 305625387, 750272104, 812172038, 838196598, 588486753, 566404175, 662576653, 476992644, 74524284, 885983664, 287965546, 949541979, 727103544, 804291712, 404210933, 912569755, 274510227, 688228290, 528313107, 806683517, 47395608, 81387546, 947834772, 489949009, 40169819, 169881907, 730550756, 276363959, 516715527, 497501672, 964520754, 514607758, 625593581, 390663227, 542024438, 448024341, 877193088, 223909457, 963180581, 335909278, 589691905, 658965971, 49107058, 982363656, 749694139, 603525381, 279955027, 699225072, 654828436, 173006291, 420293055, 765739328, 413280095, 333023938, 376238154, 656690056, 376837323, 549241660, 561190663, 259055680, 224640368, 292823545, 818000293, 112003020, 556908224, 49065555, 970380592, 14156536, 845738300, 629665706, 50701058, 335592808, 14872722, 675591477, 950359858, 811024051, 627115541, 577502406, 426069596, 173359554, 197663227, 225137217, 461359341, 971445572, 161672000, 361058078, 931744347, 453187555, 429932063, 846140229, 562073348, 110049115, 908612289, 827720672, 845156496, 180511082, 149179748, 401365000, 54436478, 944997610, 931302684, 965222305, 905062533, 300000038, 281145904, 312867920, 864898627, 987012868, 420493682, 133893951, 528566733, 982104527, 391344282, 933433399, 401515143, 387657712, 503775600, 727217139, 851906614, 91179960, 96940030, 542174643, 138552326, 32854140, 869681271, 217068680, 3586075, 738049124, 349992650, 768236882, 969181788, 490218592, 367427644, 739224904, 49035629, 545189824, 641638987, 211678706, 293427811, 874058233, 34394566, 895679574, 917705636, 390005792, 971997398, 632342999, 501635774, 890797856, 601557027, 180036270, 126112953, 582520876, 678179223, 124714154, 568543102, 94580122, 356670159, 653436283, 578063563, 232171462, 490223263, 320669319, 89858187, 308829794, 950562652, 836894095, 426964052, 615827494, 132123006, 777664561, 736199141, 783891267, 678797492, 250249420, 400700199, 211480073, 970730468, 507128747, 78681816, 147183226, 444085888, 564531293, 145963693, 644419517, 591807110, 718795772, 243201746, 516344490, 398917675, 460002367, 256436295, 616019630, 144213363, 961202831, 465199902, 469415812, 658966086, 679374972, 348031372, 635339252, 434041185, 159359289, 364583560, 508439411, 183558449, 809230314, 83932354, 405307114, 280258394, 335972885, 466424338, 388773720, 206065132, 287289553, 736013931, 66630240, 155195071, 281248966, 680520184, 721115076, 481396751, 908023438, 604466545, 489035684, 398875517, 251239299, 116617937, 155097395, 527526111, 158574969, 783973089, 808264573, 355734445, 701658308, 486242849, 488414549, 709391079, 201274089, 171002371, 317288168, 196900188, 766094477, 702580844, 540981930, 847243749, 336143633, 240769371, 741824893, 130184030, 878492247, 921790584, 141391735, 507509849, 423300939, 209375253, 229413711, 472784698, 66821631, 785978805, 393957177, 998964066, 963715776, 748468151, 552967777, 588298661, 945699218, 380378652, 723417746, 611784113, 656716641, 65335658, 51280881, 471403184, 598566998, 398985885, 258796781, 65485119, 5696582, 742864783, 256003498, 619513467, 621543494, 484972562, 158140495, 434172904, 641556951, 603634721, 159198667, 769641027, 447970213, 282220432, 471910302, 881234754, 747703600, 727293403, 641633377, 398514512, 433667390, 864070088, 681555863, 139696376, 114344892, 376199522, 80040983, 114767342, 367606784, 69492241, 213119135, 85347906, 943340608, 667065341, 347942285, 565938442, 656522759, 271997093, 974259985, 4482607, 142358625, 788592191, 916515809, 835175654, 674444144, 292972663, 804486207, 744814136, 662249244, 258957920, 418873657, 389434612, 911796898, 210007395, 928782104, 602217425, 494805721, 539559792, 39521251, 106377871, 415568877, 171521105, 250482387, 325139909, 681521391, 110949529, 843074288, 574909694, 410188280, 61759142, 807294544, 368366596, 379053948, 253508425, 282697427, 616259976, 971624736, 409094442, 527843687, 921330270, 560361901, 764895146, 874404280, 344767586, 770003293, 585013944, 387757718, 77703867, 807291502, 327187998, 324177679, 523398700, 662959732, 352289837, 940099732, 151273775, 524716761, 343416025, 270210904, 641719133, 430106748, 900336047, 567731115, 869987697, 155226926, 500455799, 154189566, 659718111, 167374325, 785812209, 122441669, 998336580, 335458806, 785962782, 472572616, 766290245, 841014454, 13525911, 112542394, 165130588, 300363343, 176925575, 852329061, 80640761, 46891548, 251849270, 391765703, 135343067, 288575835, 798070544, 226319767, 420900708, 680713595, 986851051, 20813284, 823152172, 31534839, 159110084, 313083501, 93249353, 692072750, 705855479, 152873251, 236236601, 191705034, 117830218, 966788045, 586442881, 572049347, 53083653, 862853368, 980009137, 971525148, 453247137, 990296430, 463808582, 853424717, 739914744, 663986629, 148572140, 61465046, 674568285, 69194666, 641107750, 646023818, 944821631, 847191248, 118191244, 84307886, 943894646, 251571137, 248127262, 275580947, 146999218, 312090484, 288370382, 697305383, 337444739, 695477064, 666870547, 40103281, 452474249, 130971061, 869781964, 228274971, 781489661, 864428144, 559030383, 9302164, 998835041 }
{1}
{1000000}
Returns: {0 }
{1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 }
{1000000, 999600, 999200, 998800, 998400, 998000, 997600, 997200, 996800, 996400, 996000, 995600, 995200, 994800, 994400, 994000, 993600, 993200, 992800, 992400, 992000, 991600, 991200, 990800, 990400, 990000, 989600, 989200, 988800, 988400, 988000, 987600, 987200, 986800, 986400, 986000, 985600, 985200, 984800, 984400, 984000, 983600, 983200, 982800, 982400, 982000, 981600, 981200, 980800, 980400, 980000, 979600, 979200, 978800, 978400, 978000, 977600, 977200, 976800, 976400, 976000, 975600, 975200, 974800, 974400, 974000, 973600, 973200, 972800, 972400, 972000, 971600, 971200, 970800, 970400, 970000, 969600, 969200, 968800, 968400, 968000, 967600, 967200, 966800, 966400, 966000, 965600, 965200, 964800, 964400, 964000, 963600, 963200, 962800, 962400, 962000, 961600, 961200, 960800, 960400, 960000, 959600, 959200, 958800, 958400, 958000, 957600, 957200, 956800, 956400, 956000, 955600, 955200, 954800, 954400, 954000, 953600, 953200, 952800, 952400, 952000, 951600, 951200, 950800, 950400, 950000, 949600, 949200, 948800, 948400, 948000, 947600, 947200, 946800, 946400, 946000, 945600, 945200, 944800, 944400, 944000, 943600, 943200, 942800, 942400, 942000, 941600, 941200, 940800, 940400, 940000, 939600, 939200, 938800, 938400, 938000, 937600, 937200, 936800, 936400, 936000, 935600, 935200, 934800, 934400, 934000, 933600, 933200, 932800, 932400, 932000, 931600, 931200, 930800, 930400, 930000, 929600, 929200, 928800, 928400, 928000, 927600, 927200, 926800, 926400, 926000, 925600, 925200, 924800, 924400, 924000, 923600, 923200, 922800, 922400, 922000, 921600, 921200, 920800, 920400, 920000, 919600, 919200, 918800, 918400, 918000, 917600, 917200, 916800, 916400, 916000, 915600, 915200, 914800, 914400, 914000, 913600, 913200, 912800, 912400, 912000, 911600, 911200, 910800, 910400, 910000, 909600, 909200, 908800, 908400, 908000, 907600, 907200, 906800, 906400, 906000, 905600, 905200, 904800, 904400, 904000, 903600, 903200, 902800, 902400, 902000, 901600, 901200, 900800, 900400, 900000, 899600, 899200, 898800, 898400, 898000, 897600, 897200, 896800, 896400, 896000, 895600, 895200, 894800, 894400, 894000, 893600, 893200, 892800, 892400, 892000, 891600, 891200, 890800, 890400, 890000, 889600, 889200, 888800, 888400, 888000, 887600, 887200, 886800, 886400, 886000, 885600, 885200, 884800, 884400, 884000, 883600, 883200, 882800, 882400, 882000, 881600, 881200, 880800, 880400, 880000, 879600, 879200, 878800, 878400, 878000, 877600, 877200, 876800, 876400, 876000, 875600, 875200, 874800, 874400, 874000, 873600, 873200, 872800, 872400, 872000, 871600, 871200, 870800, 870400, 870000, 869600, 869200, 868800, 868400, 868000, 867600, 867200, 866800, 866400, 866000, 865600, 865200, 864800, 864400, 864000, 863600, 863200, 862800, 862400, 862000, 861600, 861200, 860800, 860400, 860000, 859600, 859200, 858800, 858400, 858000, 857600, 857200, 856800, 856400, 856000, 855600, 855200, 854800, 854400, 854000, 853600, 853200, 852800, 852400, 852000, 851600, 851200, 850800, 850400, 850000, 849600, 849200, 848800, 848400, 848000, 847600, 847200, 846800, 846400, 846000, 845600, 845200, 844800, 844400, 844000, 843600, 843200, 842800, 842400, 842000, 841600, 841200, 840800, 840400, 840000, 839600, 839200, 838800, 838400, 838000, 837600, 837200, 836800, 836400, 836000, 835600, 835200, 834800, 834400, 834000, 833600, 833200, 832800, 832400, 832000, 831600, 831200, 830800, 830400, 830000, 829600, 829200, 828800, 828400, 828000, 827600, 827200, 826800, 826400, 826000, 825600, 825200, 824800, 824400, 824000, 823600, 823200, 822800, 822400, 822000, 821600, 821200, 820800, 820400, 820000, 819600, 819200, 818800, 818400, 818000, 817600, 817200, 816800, 816400, 816000, 815600, 815200, 814800, 814400, 814000, 813600, 813200, 812800, 812400, 812000, 811600, 811200, 810800, 810400, 810000, 809600, 809200, 808800, 808400, 808000, 807600, 807200, 806800, 806400, 806000, 805600, 805200, 804800, 804400, 804000, 803600, 803200, 802800, 802400, 802000, 801600, 801200, 800800, 800400, 800000, 799600, 799200, 798800, 798400, 798000, 797600, 797200, 796800, 796400, 796000, 795600, 795200, 794800, 794400, 794000, 793600, 793200, 792800, 792400, 792000, 791600, 791200, 790800, 790400, 790000, 789600, 789200, 788800, 788400, 788000, 787600, 787200, 786800, 786400, 786000, 785600, 785200, 784800, 784400, 784000, 783600, 783200, 782800, 782400, 782000, 781600, 781200, 780800, 780400, 780000, 779600, 779200, 778800, 778400, 778000, 777600, 777200, 776800, 776400, 776000, 775600, 775200, 774800, 774400, 774000, 773600, 773200, 772800, 772400, 772000, 771600, 771200, 770800, 770400, 770000, 769600, 769200, 768800, 768400, 768000, 767600, 767200, 766800, 766400, 766000, 765600, 765200, 764800, 764400, 764000, 763600, 763200, 762800, 762400, 762000, 761600, 761200, 760800, 760400, 760000, 759600, 759200, 758800, 758400, 758000, 757600, 757200, 756800, 756400, 756000, 755600, 755200, 754800, 754400, 754000, 753600, 753200, 752800, 752400, 752000, 751600, 751200, 750800, 750400, 750000, 749600, 749200, 748800, 748400, 748000, 747600, 747200, 746800, 746400, 746000, 745600, 745200, 744800, 744400, 744000, 743600, 743200, 742800, 742400, 742000, 741600, 741200, 740800, 740400, 740000, 739600, 739200, 738800, 738400, 738000, 737600, 737200, 736800, 736400, 736000, 735600, 735200, 734800, 734400, 734000, 733600, 733200, 732800, 732400, 732000, 731600, 731200, 730800, 730400, 730000, 729600, 729200, 728800, 728400, 728000, 727600, 727200, 726800, 726400, 726000, 725600, 725200, 724800, 724400, 724000, 723600, 723200, 722800, 722400, 722000, 721600, 721200, 720800, 720400, 720000, 719600, 719200, 718800, 718400, 718000, 717600, 717200, 716800, 716400, 716000, 715600, 715200, 714800, 714400, 714000, 713600, 713200, 712800, 712400, 712000, 711600, 711200, 710800, 710400, 710000, 709600, 709200, 708800, 708400, 708000, 707600, 707200, 706800, 706400, 706000, 705600, 705200, 704800, 704400, 704000, 703600, 703200, 702800, 702400, 702000, 701600, 701200, 700800, 700400, 700000, 699600, 699200, 698800, 698400, 698000, 697600, 697200, 696800, 696400, 696000, 695600, 695200, 694800, 694400, 694000, 693600, 693200, 692800, 692400, 692000, 691600, 691200, 690800, 690400, 690000, 689600, 689200, 688800, 688400, 688000, 687600, 687200, 686800, 686400, 686000, 685600, 685200, 684800, 684400, 684000, 683600, 683200, 682800, 682400, 682000, 681600, 681200, 680800, 680400, 680000, 679600, 679200, 678800, 678400, 678000, 677600, 677200, 676800, 676400, 676000, 675600, 675200, 674800, 674400, 674000, 673600, 673200, 672800, 672400, 672000, 671600, 671200, 670800, 670400, 670000, 669600, 669200, 668800, 668400, 668000, 667600, 667200, 666800, 666400, 666000, 665600, 665200, 664800, 664400, 664000, 663600, 663200, 662800, 662400, 662000, 661600, 661200, 660800, 660400, 660000, 659600, 659200, 658800, 658400, 658000, 657600, 657200, 656800, 656400, 656000, 655600, 655200, 654800, 654400, 654000, 653600, 653200, 652800, 652400, 652000, 651600, 651200, 650800, 650400, 650000, 649600, 649200, 648800, 648400, 648000, 647600, 647200, 646800, 646400, 646000, 645600, 645200, 644800, 644400, 644000, 643600, 643200, 642800, 642400, 642000, 641600, 641200, 640800, 640400, 640000, 639600, 639200, 638800, 638400, 638000, 637600, 637200, 636800, 636400, 636000, 635600, 635200, 634800, 634400, 634000, 633600, 633200, 632800, 632400, 632000, 631600, 631200, 630800, 630400, 630000, 629600, 629200, 628800, 628400, 628000, 627600, 627200, 626800, 626400, 626000, 625600, 625200, 624800, 624400, 624000, 623600, 623200, 622800, 622400, 622000, 621600, 621200, 620800, 620400, 620000, 619600, 619200, 618800, 618400, 618000, 617600, 617200, 616800, 616400, 616000, 615600, 615200, 614800, 614400, 614000, 613600, 613200, 612800, 612400, 612000, 611600, 611200, 610800, 610400, 610000, 609600, 609200, 608800, 608400, 608000, 607600, 607200, 606800, 606400, 606000, 605600, 605200, 604800, 604400, 604000, 603600, 603200, 602800, 602400, 602000, 601600, 601200, 600800, 600400, 600000, 599600, 599200, 598800, 598400, 598000, 597600, 597200, 596800, 596400, 596000, 595600, 595200, 594800, 594400, 594000, 593600, 593200, 592800, 592400, 592000, 591600, 591200, 590800, 590400, 590000, 589600, 589200, 588800, 588400, 588000, 587600, 587200, 586800, 586400, 586000, 585600, 585200, 584800, 584400, 584000, 583600, 583200, 582800, 582400, 582000, 581600, 581200, 580800, 580400, 580000, 579600, 579200, 578800, 578400, 578000, 577600, 577200, 576800, 576400, 576000, 575600, 575200, 574800, 574400, 574000, 573600, 573200, 572800, 572400, 572000, 571600, 571200, 570800, 570400, 570000, 569600, 569200, 568800, 568400, 568000, 567600, 567200, 566800, 566400, 566000, 565600, 565200, 564800, 564400, 564000, 563600, 563200, 562800, 562400, 562000, 561600, 561200, 560800, 560400, 560000, 559600, 559200, 558800, 558400, 558000, 557600, 557200, 556800, 556400, 556000, 555600, 555200, 554800, 554400, 554000, 553600, 553200, 552800, 552400, 552000, 551600, 551200, 550800, 550400, 550000, 549600, 549200, 548800, 548400, 548000, 547600, 547200, 546800, 546400, 546000, 545600, 545200, 544800, 544400, 544000, 543600, 543200, 542800, 542400, 542000, 541600, 541200, 540800, 540400, 540000, 539600, 539200, 538800, 538400, 538000, 537600, 537200, 536800, 536400, 536000, 535600, 535200, 534800, 534400, 534000, 533600, 533200, 532800, 532400, 532000, 531600, 531200, 530800, 530400, 530000, 529600, 529200, 528800, 528400, 528000, 527600, 527200, 526800, 526400, 526000, 525600, 525200, 524800, 524400, 524000, 523600, 523200, 522800, 522400, 522000, 521600, 521200, 520800, 520400, 520000, 519600, 519200, 518800, 518400, 518000, 517600, 517200, 516800, 516400, 516000, 515600, 515200, 514800, 514400, 514000, 513600, 513200, 512800, 512400, 512000, 511600, 511200, 510800, 510400, 510000, 509600, 509200, 508800, 508400, 508000, 507600, 507200, 506800, 506400, 506000, 505600, 505200, 504800, 504400, 504000, 503600, 503200, 502800, 502400, 502000, 501600, 501200, 500800, 500400, 500000, 499600, 499200, 498800, 498400, 498000, 497600, 497200, 496800, 496400, 496000, 495600, 495200, 494800, 494400, 494000, 493600, 493200, 492800, 492400, 492000, 491600, 491200, 490800, 490400, 490000, 489600, 489200, 488800, 488400, 488000, 487600, 487200, 486800, 486400, 486000, 485600, 485200, 484800, 484400, 484000, 483600, 483200, 482800, 482400, 482000, 481600, 481200, 480800, 480400, 480000, 479600, 479200, 478800, 478400, 478000, 477600, 477200, 476800, 476400, 476000, 475600, 475200, 474800, 474400, 474000, 473600, 473200, 472800, 472400, 472000, 471600, 471200, 470800, 470400, 470000, 469600, 469200, 468800, 468400, 468000, 467600, 467200, 466800, 466400, 466000, 465600, 465200, 464800, 464400, 464000, 463600, 463200, 462800, 462400, 462000, 461600, 461200, 460800, 460400, 460000, 459600, 459200, 458800, 458400, 458000, 457600, 457200, 456800, 456400, 456000, 455600, 455200, 454800, 454400, 454000, 453600, 453200, 452800, 452400, 452000, 451600, 451200, 450800, 450400, 450000, 449600, 449200, 448800, 448400, 448000, 447600, 447200, 446800, 446400, 446000, 445600, 445200, 444800, 444400, 444000, 443600, 443200, 442800, 442400, 442000, 441600, 441200, 440800, 440400, 440000, 439600, 439200, 438800, 438400, 438000, 437600, 437200, 436800, 436400, 436000, 435600, 435200, 434800, 434400, 434000, 433600, 433200, 432800, 432400, 432000, 431600, 431200, 430800, 430400, 430000, 429600, 429200, 428800, 428400, 428000, 427600, 427200, 426800, 426400, 426000, 425600, 425200, 424800, 424400, 424000, 423600, 423200, 422800, 422400, 422000, 421600, 421200, 420800, 420400, 420000, 419600, 419200, 418800, 418400, 418000, 417600, 417200, 416800, 416400, 416000, 415600, 415200, 414800, 414400, 414000, 413600, 413200, 412800, 412400, 412000, 411600, 411200, 410800, 410400, 410000, 409600, 409200, 408800, 408400, 408000, 407600, 407200, 406800, 406400, 406000, 405600, 405200, 404800, 404400, 404000, 403600, 403200, 402800, 402400, 402000, 401600, 401200, 400800, 400400, 400000, 399600, 399200, 398800, 398400, 398000, 397600, 397200, 396800, 396400, 396000, 395600, 395200, 394800, 394400, 394000, 393600, 393200, 392800, 392400, 392000, 391600, 391200, 390800, 390400, 390000, 389600, 389200, 388800, 388400, 388000, 387600, 387200, 386800, 386400, 386000, 385600, 385200, 384800, 384400, 384000, 383600, 383200, 382800, 382400, 382000, 381600, 381200, 380800, 380400, 380000, 379600, 379200, 378800, 378400, 378000, 377600, 377200, 376800, 376400, 376000, 375600, 375200, 374800, 374400, 374000, 373600, 373200, 372800, 372400, 372000, 371600, 371200, 370800, 370400, 370000, 369600, 369200, 368800, 368400, 368000, 367600, 367200, 366800, 366400, 366000, 365600, 365200, 364800, 364400, 364000, 363600, 363200, 362800, 362400, 362000, 361600, 361200, 360800, 360400, 360000, 359600, 359200, 358800, 358400, 358000, 357600, 357200, 356800, 356400, 356000, 355600, 355200, 354800, 354400, 354000, 353600, 353200, 352800, 352400, 352000, 351600, 351200, 350800, 350400, 350000, 349600, 349200, 348800, 348400, 348000, 347600, 347200, 346800, 346400, 346000, 345600, 345200, 344800, 344400, 344000, 343600, 343200, 342800, 342400, 342000, 341600, 341200, 340800, 340400, 340000, 339600, 339200, 338800, 338400, 338000, 337600, 337200, 336800, 336400, 336000, 335600, 335200, 334800, 334400, 334000, 333600, 333200, 332800, 332400, 332000, 331600, 331200, 330800, 330400, 330000, 329600, 329200, 328800, 328400, 328000, 327600, 327200, 326800, 326400, 326000, 325600, 325200, 324800, 324400, 324000, 323600, 323200, 322800, 322400, 322000, 321600, 321200, 320800, 320400, 320000, 319600, 319200, 318800, 318400, 318000, 317600, 317200, 316800, 316400, 316000, 315600, 315200, 314800, 314400, 314000, 313600, 313200, 312800, 312400, 312000, 311600, 311200, 310800, 310400, 310000, 309600, 309200, 308800, 308400, 308000, 307600, 307200, 306800, 306400, 306000, 305600, 305200, 304800, 304400, 304000, 303600, 303200, 302800, 302400, 302000, 301600, 301200, 300800, 300400, 300000, 299600, 299200, 298800, 298400, 298000, 297600, 297200, 296800, 296400, 296000, 295600, 295200, 294800, 294400, 294000, 293600, 293200, 292800, 292400, 292000, 291600, 291200, 290800, 290400, 290000, 289600, 289200, 288800, 288400, 288000, 287600, 287200, 286800, 286400, 286000, 285600, 285200, 284800, 284400, 284000, 283600, 283200, 282800, 282400, 282000, 281600, 281200, 280800, 280400, 280000, 279600, 279200, 278800, 278400, 278000, 277600, 277200, 276800, 276400, 276000, 275600, 275200, 274800, 274400, 274000, 273600, 273200, 272800, 272400, 272000, 271600, 271200, 270800, 270400, 270000, 269600, 269200, 268800, 268400, 268000, 267600, 267200, 266800, 266400, 266000, 265600, 265200, 264800, 264400, 264000, 263600, 263200, 262800, 262400, 262000, 261600, 261200, 260800, 260400, 260000, 259600, 259200, 258800, 258400, 258000, 257600, 257200, 256800, 256400, 256000, 255600, 255200, 254800, 254400, 254000, 253600, 253200, 252800, 252400, 252000, 251600, 251200, 250800, 250400, 250000, 249600, 249200, 248800, 248400, 248000, 247600, 247200, 246800, 246400, 246000, 245600, 245200, 244800, 244400, 244000, 243600, 243200, 242800, 242400, 242000, 241600, 241200, 240800, 240400, 240000, 239600, 239200, 238800, 238400, 238000, 237600, 237200, 236800, 236400, 236000, 235600, 235200, 234800, 234400, 234000, 233600, 233200, 232800, 232400, 232000, 231600, 231200, 230800, 230400, 230000, 229600, 229200, 228800, 228400, 228000, 227600, 227200, 226800, 226400, 226000, 225600, 225200, 224800, 224400, 224000, 223600, 223200, 222800, 222400, 222000, 221600, 221200, 220800, 220400, 220000, 219600, 219200, 218800, 218400, 218000, 217600, 217200, 216800, 216400, 216000, 215600, 215200, 214800, 214400, 214000, 213600, 213200, 212800, 212400, 212000, 211600, 211200, 210800, 210400, 210000, 209600, 209200, 208800, 208400, 208000, 207600, 207200, 206800, 206400, 206000, 205600, 205200, 204800, 204400, 204000, 203600, 203200, 202800, 202400, 202000, 201600, 201200, 200800, 200400 }
Returns: {410384674, 164321494, 239907258, 822718796, 904635173, 943220798, 735255944, 874784324, 794801557, 534589315, 817887907, 499986813, 693759326, 164764102, 799495451, 84398807, 681392691, 501090014, 646016316, 738544219, 27746229, 13574055, 871511186, 352791946, 581579371, 661807651, 460511797, 91094880, 195718008, 991071354, 121463497, 616183807, 790284529, 121792924, 36869851, 977698061, 725542019, 600761046, 744325065, 454944288, 869315, 738159407, 784817836, 23553659, 532611365, 451710029, 167814841, 509952144, 875244908, 275921541, 725640876, 311481778, 792780329, 960257408, 214347866, 859050620, 508454443, 345447823, 506793994, 245164849, 182000892, 527955893, 459078551, 332815257, 986446144, 326043421, 934543366, 227706075, 233034128, 809675922, 181261116, 93916232, 961860592, 827939483, 86741129, 39803721, 582593563, 440614253, 19512484, 663431854, 313341609, 227050740, 735071243, 688784312, 423956297, 845425220, 851042537, 403941718, 869615535, 405815666, 47567458, 442163235, 276774784, 758699857, 476047254, 128798763, 1293978, 143666414, 248603838, 858474399, 257970658, 144723742, 816404780, 860737445, 25956867, 167086277, 26580563, 775580552, 314078932, 794253866, 24248069, 660434261, 954788195, 297798170, 350946617, 807176766, 406845088, 699545817, 513772424, 622176807, 26609936, 768838021, 603175292, 210184948, 333724364, 21416742, 616889286, 298975513, 995033359, 171181632, 924184489, 883161998, 550182852, 932832816, 228911627, 476238937, 184162634, 950892644, 272088577, 52905796, 723325069, 184093842, 588170005, 358679527, 365455637, 358006405, 129830929, 976127564, 65759638, 518278876, 386339728, 905200346, 758874766, 805081152, 852485324, 758740755, 293649777, 91255044, 894745219, 807612628, 905746833, 579944589, 352373969, 481188807, 897341769, 759291012, 584653882, 278003177, 805832187, 85784294, 579718564, 812680826, 247343226, 440098471, 961044431, 335749791, 366208162, 15846517, 616406058, 775127834, 825643354, 905379107, 218928926, 937823834, 805704911, 9836120, 881533845, 427991724, 137384574, 221080788, 100421620, 654488274, 227547492, 516585189, 179657166, 393127776, 386971955, 254773296, 582815458, 757429985, 844821454, 928328485, 609038881, 416900680, 650774597, 555371765, 838283831, 148742156, 267588432, 506269587, 201797460, 124095168, 94781505, 126253394, 82491232, 698171145, 598787448, 545429093, 8853195, 610316980, 12821344, 966395851, 940020887, 442193387, 340768262, 478903954, 939688083, 956157827, 50102609, 822711537, 377630795, 271173649, 43027314, 264611881, 881422370, 497622891, 579765221, 813722360, 956645813, 770279311, 887627405, 576649306, 803215455, 461356988, 481105121, 283295659, 261769360, 753913920, 143968346, 350062523, 377259897, 497471075, 269311696, 702903169, 325631552, 273973387, 901945728, 800369145, 485139643, 749783961, 761479230, 690189524, 228653893, 830837957, 410760768, 656941626, 791257669, 881068084, 411859796, 645315728, 29923758, 824465052, 794677790, 359669845, 921973927, 559594780, 671927289, 324975958, 195537746, 885013592, 123568036, 747944407, 99044040, 963958105, 637672838, 679502302, 597697042, 25772624, 309083759, 652647349, 909839538, 345369320, 88730691, 809619881, 954818422, 566812373, 546127451, 865546805, 28008294, 374717999, 321896936, 662888935, 870670438, 417502791, 459860598, 47000288, 102816348, 300508423, 232740952, 869912157, 11761882, 278747896, 802180344, 873456673, 81149022, 110358432, 732066235, 929822214, 798779445, 431341863, 386657385, 430365885, 864475460, 668254147, 232263943, 275921860, 146514169, 564096951, 803650333, 682748765, 111240007, 833030051, 116743840, 638120450, 182980011, 529783309, 611870926, 784242804, 800131599, 970239376, 897637096, 209483051, 913080170, 855450006, 622517650, 732963766, 833830017, 837867704, 764556368, 447975596, 516078310, 777851652, 439661445, 567212681, 618166220, 558925985, 626531738, 145592301, 232896809, 966805508, 821374169, 421483714, 293756932, 60311325, 667425409, 823141589, 446354394, 966240208, 431930892, 857591678, 165857294, 856694503, 298559598, 510460133, 788509621, 682648142, 571565164, 821911310, 897878815, 380310961, 988314559, 254841398, 137422932, 273322258, 896395853, 85224304, 442954848, 256934804, 248396550, 326798101, 430160585, 906523015, 913168572, 72718229, 68971491, 719804276, 246303108, 655960113, 26477846, 443764480, 366136585, 986163987, 51902978, 336056679, 313901123, 408294410, 210929846, 139144067, 206478309, 376297423, 898688764, 616505683, 538386680, 524640400, 119308140, 276045976, 603326859, 103937119, 522878528, 799804999, 337109601, 810409993, 777293141, 654060906, 508584558, 251176765, 378360342, 462109081, 99293150, 228353429, 361855913, 678688310, 284389074, 588633894, 724603746, 107983498, 944090721, 663327193, 419145894, 851253925, 354393485, 948515512, 505200479, 553587418, 832175047, 116875206, 255486826, 764667234, 270751750, 431407847, 465002052, 819239442, 255269013, 104876743, 406119770, 401345685, 264505620, 793034602, 313805482, 601600995, 676516560, 291491931, 349373436, 549824886, 547819083, 11217387, 314628335, 34983954, 230431979, 679227021, 140703305, 585750285, 513632363, 931560412, 993895652, 128155955, 874030735, 810147714, 88555690, 589958807, 437008959, 828798638, 515287476, 632030227, 367139393, 774769430, 32475753, 924181597, 384994762, 380335913, 118826294, 777122186, 33677762, 159325222, 897979560, 499526517, 522141760, 790170827, 692475174, 642470517, 122389138, 936048402, 281462803, 798698476, 635163457, 313780756, 412795486, 634415825, 115027005, 417116445, 651415454, 828199317, 389890579, 655859887, 956558360, 996474868, 335249867, 809808984, 153507715, 61007008, 746097837, 19656774, 125819110, 855686377, 30507024, 519057219, 513024268, 138415568, 950344900, 630529427, 274252653, 659470347, 911798824, 659451621, 521390302, 787208121, 157882410, 233468672, 508463711, 389994923, 976002474, 624264667, 759327849, 672551620, 170479670, 260523897, 810130730, 510383422, 695378274, 381371699, 742134045, 886501421, 541416810, 167461629, 759305138, 136541897, 534670893, 414193878, 41373660, 596470609, 308244816, 867016672, 446265550, 910067098, 218888037, 797359781, 26231123, 844012284, 458045927, 508947553, 293721587, 465075720, 231645081, 500041810, 778297927, 335029941, 499473070, 20183895, 88735553, 198138358, 916140900, 773564547, 803960897, 311937768, 639226259, 83763824, 449924722, 224963654, 411355559, 184920114, 933520594, 154070292, 218508992, 548051635, 886247548, 970224374, 689977160, 481801978, 622547205, 553751726, 200042415, 550884243, 731061608, 767967705, 705822046, 367334916, 458811440, 368079379, 603930992, 433832581, 301718084, 54122186, 840871832, 525303040, 317491277, 875783888, 414624751, 25520954, 131747538, 902300748, 846121828, 485409855, 810814042, 933058048, 453769194, 774671208, 471343130, 108826676, 980338229, 178735652, 737814138, 416949593, 206105523, 419135158, 308113329, 565401785, 614946498, 60134318, 935595305, 614866266, 215602204, 404547224, 516823205, 249763264, 232406169, 76286027, 485524024, 289671143, 682439000, 148586661, 676035543, 267468529, 5860929, 318824069, 987527796, 429582060, 517075959, 780002957, 628390140, 461610237, 512468269, 259116120, 368194881, 40603020, 780987648, 900271125, 497796544, 758017805, 890712880, 171960608, 526245387, 767086218, 165933985, 959029860, 229826288, 843996549, 598710094, 192377396, 585025731, 362515274, 369969762, 225304823, 642943679, 989909359, 930854715, 895458322, 753915461, 607935133, 190918673, 744667900, 981872722, 590871262, 683344129, 818575775, 83157546, 979002155, 177764413, 29150025, 275074691, 953476819, 692169842, 336126971, 835916165, 998871055, 897786381, 866067787, 720647634, 184357825, 717815411, 121274666, 585538942, 426764609, 674879300, 18652878, 313204771, 620938506, 640965449, 935853246, 300989587, 412577773, 998267373, 568761067, 105935496, 151015911, 1233390, 710480377, 897185579, 503520035, 76258280, 561019568, 155736633, 5790747, 647573689, 283841023, 513035971, 808496380, 97876777, 245029633, 709087353, 758859143, 776353027, 836354489, 752976637, 115638291, 512984599, 241462863, 504024025, 827929413, 668441111, 727437738, 416534658, 8822729, 969402273, 14927836, 182561675, 121070531, 6831751, 563323646, 896794063, 376910988, 135052883, 14743864, 964314470, 165878257, 20605982, 633554838, 883582591, 119390768, 849651225, 687890538, 627006395, 950270722, 96764247, 47549208, 405249925, 305594443, 440848044, 76329957, 642962945, 540311201, 837375271, 119645079, 829644689, 116748327, 908034645, 371319076, 378991660, 124241883, 604388935, 226526076, 742213562, 30095886, 981813198, 917890906, 771581062, 219926295, 81175418, 115189406, 934502246, 714797436, 238232170, 319108522, 877413867, 502434244, 419894536, 155608355, 329771649, 994483985, 377726671, 663446002, 615423367, 337002549, 479796791, 471559194, 661593644, 366779373, 947553562, 324198670, 779222389, 515461279, 385528386, 181919585, 798291592, 49656991, 6291140, 727194228, 829844373, 463365265, 15945557, 134779961, 678607932, 909859810, 195450973, 898328932, 781323496, 740509901, 20103463, 454185346, 660189925, 534100264, 155356931, 701269066, 450177059, 535567008, 159107560, 397918438, 116042809, 63449357, 67276850, 31274337, 86406722, 630571523, 503756991, 781998669, 526842980, 141701289, 478927788, 893599835, 587176171, 76336310, 903731980, 522029352, 565035615, 164057083, 717359946, 205214272, 744037741, 411174206, 630223619, 189709688, 82434949, 40301329, 22617927, 397288139, 607889996, 734981408, 583541001, 57134797, 873980676, 15335325, 335455071, 534270499, 750937584, 737071180, 216033851, 847100784, 75677665, 786213922, 956667943, 164481444, 461272919, 958781586, 800577495, 186943161, 804258180, 770137131, 87889374, 640419890, 666149252, 389189895, 835418999, 405719033, 533570947, 681158594, 690780794, 338563348, 930175058, 706573924, 441672154, 598747627, 992139083, 236034201, 836043217, 448763666, 989069278, 331427620, 223596834, 601133964, 745892483, 751053410, 466700108, 836650553, 40080655, 814800814, 735551327, 358766082, 963192900, 471605194, 982203388, 530650862, 372956409, 919143931, 92367917, 142146579, 669661674, 147769869, 140960976, 700240643, 982683314, 799659457, 793507638, 113408951, 639584022, 101924089, 736508420, 13433611, 351349610, 88864507, 158338750, 486517167, 508254724, 627152080, 421506567, 408677536, 424487041, 630903770, 169239263, 66393664, 240452050, 884014673, 806296640, 906403343, 120695397, 386836015, 618614902, 467149852, 766840071, 38337480, 766949627, 960740425, 662201282, 651382739, 502955054, 104132640, 433746336, 638538367, 276659520, 779332010, 58112942, 895179727, 474163931, 447354783, 522339292, 646519956, 3605774, 81622296, 887333695, 332975928, 703220886, 679733574, 93005483, 190526366, 351197034, 756308320, 912930502, 307413741, 319884020, 967224499, 423424651, 416514327, 739494389, 843748647, 636384296, 860642024, 804075417, 637457348, 279150462, 981544623, 995049751, 179189215, 439165769, 546345935, 312475253, 521580819, 98927359, 362560980, 543673860, 876138845, 178055893, 864079616, 676511924, 179664678, 553484359, 463675077, 188315898, 190251817, 766635907, 640019501, 713688452, 176873219, 875287069, 514732403, 31056984, 94784764, 338729510, 431727650, 275084360, 519659949, 940062319, 626594431, 415476755, 794387275, 227667028, 685889847, 171895467, 415050579, 896398553, 12061104, 463538588, 763722479, 297639054, 224785840, 382559599, 476786841, 989859709, 17388118, 588903916, 842829225, 31580590, 516877739, 679493492, 683678799, 962113869, 543380503, 462971141, 33630370, 769801073, 954623690, 345751431, 379574200, 483337463, 999766148, 568529793, 579531448, 313827179, 609114539, 456387532, 662561924, 480135558, 224941187, 926201942, 161037529, 347054823, 597216761, 171571210, 483860359, 12017889, 47567479, 485376058, 409809697, 402988652, 936695322, 696922876, 563777260, 868722523, 964386637, 102537422, 56498008, 549212243, 232945877, 968103762, 88328798, 872284288, 426717874, 507901557, 4489308, 405717117, 477077097, 950903677, 369576425, 710486098, 630370531, 276762980, 849433679, 673707692, 155815665, 272912417, 691500741, 714671254, 245805655, 276583353, 746857992, 877621755, 174381662, 834036219, 675295120, 997153632, 508515619, 82985814, 806277673, 590533589, 505928234, 894942707, 645651412, 286361559, 713992097, 785038186, 839013065, 7871512, 209672017, 278310081, 632442774, 525290002, 899969380, 828649843, 288802445, 491041719, 355622508, 140627041, 494931688, 312824058, 712889609, 742761639, 784866343, 170846704, 12021844, 439196747, 840749691, 275468021, 839754356, 206950203, 902511728, 137047907, 976998017, 850427544, 279682447, 510892555, 490619968, 560410287, 449730233, 720206852, 512985350, 972442068, 536401686, 153096958, 153213831, 324385642, 149353575, 262203801, 943014617, 166581916, 790434853, 488943486, 62597063, 990838929, 236863975, 132462011, 275594651, 117717891, 185215383, 360185345, 11848763, 422355981, 661416558, 756724942, 840041102, 636471437, 638884809, 856716104, 308375345, 151038511, 822700647, 414880444, 428949758, 824173133, 212499506, 514991108, 47575736, 927400651, 528306123, 243092121, 66591531, 437418172, 423723874, 205613819, 209954919, 193192857, 461015310, 950430058, 262803037, 376314980, 798063884, 815249208, 89454371, 731994283, 212210927, 155268860, 304540425, 311256880, 844803686, 366348180, 65963274, 385183910, 548315035, 786183351, 547720554, 855114883, 587835705, 73875606, 107034603, 889901457, 824681096, 584293121, 837427145, 586399409, 354904190, 121284645, 508965283, 160798865, 413871662, 877229075, 111038559, 187730873, 239553672, 157127467, 602667785, 909685024, 318106130, 658923869, 571963923, 449060064, 960662894, 634575953, 279717881, 481200159, 972442869, 199449445, 714198262, 449167436, 671728171, 822200037, 611431720, 682346178, 468438343, 811304641, 812593724, 557744133, 316959950, 109449922, 914353467, 546330002, 381640051, 776723799, 590712761, 53810867, 681073326, 913430023, 630525249, 205333504, 39981425, 604109042, 932377148, 679747582, 373212801, 520127210, 741353939, 122469936, 931200192, 786670859, 670375686, 242774954, 522676612, 782579065, 100377293, 68518677, 330756870, 33722533, 504224571, 565271990, 13724208, 858584544, 102141298, 957864985, 117788690, 792244927, 925855073, 594851580, 321051264, 452321077, 704628716, 58830463, 931769250, 940323590, 50231894, 682776707, 406324197, 818351494, 862935869, 907488321, 161861335, 259346530, 710860117, 281348675, 845889079, 41517915, 672458543, 478299084, 811391288, 997785473, 954888804, 783364420, 9469780, 605867190, 609330765, 346465895, 6099469, 850033645, 90904597, 378556081, 165112852, 247813244, 521344756, 40003704, 228864338, 532121409, 309256788, 226615451, 515810826, 539135361, 732280316, 527717785, 353519596, 918871852, 41080631, 869608273, 38134470, 701734537, 944393155, 410332037, 95047261, 294190037, 493067726, 953913806, 304666122, 538318278, 768644401, 813237093, 9995714, 922400304, 16754137, 918549161, 19397644, 416064843, 957342944, 579154435, 421998852, 794293126, 373528238, 784327685, 514945415, 475071126, 838393340, 649448306, 381383245, 502789702, 447897205, 832537467, 131691664, 349270245, 975790119, 970871092, 808100760, 106197599, 372255090, 888183950, 307266698, 211192821, 19794131, 621662109, 740211240, 458731297, 164268437, 352664333, 909985584, 988846641, 157597377, 459051676, 310034999, 324266737, 242273723, 943229084, 271697191, 346906215, 82751139, 331137328, 922878366, 132409116, 293726936, 420991993, 773326586, 445253661, 515760511, 526473766, 622242924, 226356974, 874369230, 755812501, 519026561, 385123039, 161960518, 480240737, 166151230, 971768760, 431420807, 912861083, 815125413, 850175171, 999840953, 214465811, 156046536, 14305201, 323628600, 383495988, 596949233, 143890502, 886807645, 688028066, 117344554, 410302775, 545922537, 74853105, 14851321, 759747619, 378671374, 160673357, 345428552, 683019115, 846211510, 575979002, 91368275, 609095883, 379332369, 958114356, 844969066, 650443737, 710530890, 217196211, 75822017, 273465225, 149480601, 224025581, 255649712, 12654451, 188012183, 519276890, 966452530, 477324352, 872277083, 582388609, 332724880, 10346637, 483483896, 426212976, 798426766, 222649181, 739602792, 180404464, 591034516, 190648976, 562341001, 589592875, 86330999, 355682001, 528102408, 843496536, 810714074, 89334633, 645257808, 555999162, 966835835, 968117810, 893563449, 71210905, 703390394, 718399404, 994315440, 787713949, 421775241, 810267156, 406889308, 619919709, 710747609, 563916831, 849122802, 946033472, 678274974, 821709610, 717003313, 88462242, 166243252, 808314313, 456968522, 9423618, 510013726, 604626044, 811624870, 300464059, 92709964, 598035967, 485394782, 265773371, 580831606, 300019736, 836800720, 533975683, 444435661, 509737371, 726874039, 194782620, 812236962, 298110009, 655937408, 950937570, 43999017, 540795991, 164130445, 17501432, 324982608, 327060044, 635770481, 385416988, 943553402, 150020102, 636190874, 209080095, 351745228, 1638329, 371154463, 56919353, 176928487, 304479254, 47700146, 151147506, 963982544, 804503593, 14596141, 84820553, 505049848, 701164249, 855665078, 968484897, 967689802, 794137637, 659135385, 324974911, 967221064, 258215949, 362339406, 526451787, 861824993, 65324861, 968185743, 586013242, 776536427, 159487809, 742016239, 967321381, 764015634, 721078618, 400298192, 992050962, 457318685, 563805563, 228178436, 750933759, 482746098, 97092043, 838470080, 419547825, 344056840, 68221528, 61580228, 147457812, 358993657, 557054102, 175111216, 582851569, 110251383, 946506635, 15379220, 431677589, 413151782, 215473328, 435950018, 899382947, 396619090, 737920124, 104913596, 627935893, 719964508, 986438649, 21290269, 287363488, 809569551, 412320863, 187184553, 856166653, 232272257, 199171951, 823363712, 449092064, 452942875, 463459669, 344824039, 674972919, 584891911, 29826802, 554546387, 361744918, 163003744, 842365842, 597396606, 42095614, 143136485, 740653053, 757395728, 411693960, 912809377, 694953203, 934206134, 639859190, 677262269, 177867504, 738480000, 788259532, 272159116, 681710154, 559347267, 75380929, 231687006, 854311500, 978333724, 247311168, 675919563, 668266229, 764650745, 614443617, 85838228, 689798796, 567343593, 463762969, 233681788, 770401048, 989366857, 36371079, 574349244, 651301561, 527437744, 485231856, 550065034, 872337321, 987132493, 736212316, 374537478, 666693217, 164406594, 454138985, 566480430, 962924977, 562364167, 51821907, 196218389, 114475785, 773918315, 953421645, 28669483, 553472686, 260935723, 925673644, 271570996, 742128852, 496400182, 549175943, 765421659, 71958663, 444863471, 902453202, 289705246, 155698161, 898864495, 155104118, 538213523, 808362737, 209978789, 192442800, 946526463, 82450390, 237730264, 573451994, 29293905, 607829352, 42698182, 526223127, 549085567, 330428494, 302726063, 855852049, 581509265, 348841356, 360978176, 775615741, 518719321, 619051325, 8641958, 319391083, 665418441, 312783443, 199085141, 463733332, 990083113, 646159216, 733427671, 891212413, 129755266, 212081505, 819431873, 600332002, 182262558, 555032519, 795327246, 953237754, 513893615, 874914432, 132308848, 912297447, 639109707, 44079015, 50342676, 375396964, 255351385, 300027669, 219517915, 290587191, 595443322, 477103164, 409830006, 739314393, 496009508, 409817405, 371536948, 39062264, 872349945, 437536914, 254848916, 395288609, 759880733, 818984130, 969849099, 672123253, 541259931, 898089932, 881721005, 907310535, 670143342, 226433281, 40317681, 559439328, 140491517, 158112465, 184436251, 949464256, 688081028, 178909052, 536883003, 815346941, 965296958, 412392129, 492787936, 455813158, 800941017, 904389414, 834040075, 96817642, 424131045, 378441616, 515293175, 440294000, 126079131, 367063961, 982778942, 511355792, 903483686, 838441179, 423288287, 645352870, 935938805, 259799322, 568385710, 520002657, 435771600, 734978282, 809928729, 428465265, 698447498, 441447944, 837867903, 275262339, 489276827, 262203131, 616936431, 745879589, 843266020, 496008231, 338280380, 966722639, 739874721, 474407687, 768117167, 609793293, 750257740, 308385264, 391343124, 231457510, 868545898, 52747059, 703453802, 737756684, 270624695, 180656830, 478374881, 230899000, 529017697, 345544745, 736695527, 38674257, 690193182, 885748782, 213330167, 345824542, 96540490, 870705270, 439465088, 381783417, 219023664, 611862965, 915277943, 937754677, 328744158, 621726796, 443063022, 134775875, 684793021, 56256319, 637022619, 686222254, 172284756, 880459484, 735290408, 760555464, 61174165, 818373058, 270903673, 1387389, 408567672, 12073419, 950564288, 634164121, 116687994, 686562530, 497489919, 459988513, 127030768, 212073060, 595530881, 502292443, 811395580, 896468493, 434065317, 317157144, 861779292, 445191672, 202827181, 341614021, 712975174, 134950385, 354661346, 137033109, 589347354, 945467854, 149928486, 333287099, 392203384, 887262841, 559951125, 260893658, 938173053, 65809538, 550190403, 57266362, 97894962, 40679992, 318339126, 486876914, 547973832, 116198799, 45696242, 339490538, 720045991, 531177688, 17742892, 802528947, 433034966, 824996017, 246530648, 979057122, 780542624, 704280618, 792129704, 816343401, 103816941, 969955556, 434414991, 891082620, 289986348, 913549464, 745866182, 404198771, 508386685, 571379250, 769881169, 696217067, 973286438, 477500089, 233584449, 189342281, 758881228, 413472456, 820059132, 464999249, 341261339, 95746620, 911658602, 143862970, 968253239, 321192054, 687611080, 501202865, 899681365, 607589884, 245609344, 498356683, 617049322, 255867739, 112771112, 110202960, 834468577, 643381765, 948783430, 894916063, 960519870, 712894946, 269449474, 685413598, 256808423, 594807661, 739373137, 927900612, 81330991, 838382957, 533974657 }
{1, 804289376, 846930886, 681692770, 714636908, 957747786, 424238335, 719885386, 649760485, 596516649, 189641414, 25202355, 350490020, 783368690, 102520052, 44897749, 967513919, 365180533, 540383419, 304089172, 303455729, 35005211, 521595368, 294702567, 726956422, 336465782, 861021530, 278722862, 233665123, 145174053, 468703135, 101513922, 801979795, 315634015, 635723058, 369133062, 125898160, 59961386, 89018442, 628175011, 656478035, 131176222, 653377366, 859484421, 914544912, 608413784, 756898537, 734575191, 973594317, 149798315, 38664356, 129566406, 184803526, 412776091, 424268973, 911759949, 749241873, 137806862, 42999170, 982906996, 135497281, 511702305, 84420911, 937477077, 827336320, 572660336, 159126498, 805750846, 632621722, 100661306, 433925850, 141616117, 84353895, 939819582, 1100531, 998898807, 548233360, 610515434, 585990357, 374344036, 760313750, 477171080, 356426808, 945117276, 889947171, 780695781, 709393584, 491705403, 918502644, 752392754, 474612392, 53999918, 264095053, 411549669, 843993361, 943947739, 984210005, 855636226, 749698579, 469348087, 956297532, 36140788, 463480570, 40651420, 975960371, 317097467, 892066594, 376710090, 927612902, 330573310, 603570492, 687926645, 660260756, 959997301, 485560280, 402724286, 593209441, 194953858, 894429689, 364228444, 947346612, 221558440, 270744729, 63958024, 633108110, 114738083, 7905757, 469834474, 822890675, 610120702, 791698927, 631704567, 498777856, 255179490, 524872353, 327254586, 572276958, 269455306, 703964676, 352406219, 600028617, 160051528, 40332857, 112805732, 120048822, 378409503, 515530019, 713258263, 573363361, 409959701, 77486701, 373226333, 631518142, 200747796, 289700723, 117142611, 168002245, 150122846, 439493451, 990892921, 760243548, 231192372, 622597481, 111537764, 338888228, 147469827, 438792350, 911165186, 269441500, 142757020, 116087764, 869470117, 155324914, 8936987, 982275849, 275373736, 387346491, 350322227, 841148365, 960709852, 760281929, 771151432, 186452544, 244316430, 971899228, 476153268, 213975407, 139901467, 626276114, 653468858, 130794381, 239036022, 884661230, 605908228, 350573786, 76065818, 605894421, 789366136, 987231004, 875335921, 784639522, 103318762, 597322397, 939964436, 112255749, 432114606, 67854531, 352118606, 782436833, 909002897, 165344818, 395235121, 532670688, 351797362, 492067917, 504569910, 680466996, 706043324, 496987743, 159259470, 359512176, 480298490, 398295492, 96689765, 86206711, 601385644, 172755583, 544617498, 243268139, 12502947, 272469779, 27907655, 968338082, 722308542, 820388457, 933110197, 6939507, 740759355, 285228797, 789376341, 502278611, 450573615, 37127821, 34949292, 654887343, 529195739, 392035568, 335354333, 87755422, 889023311, 494613803, 447267598, 369321794, 745425661, 396473730, 308044871, 346811298, 569229313, 705178736, 590079437, 434248626, 977648515, 470503458, 402586701, 552473416, 143408275, 188213258, 559412924, 884167630, 473442055, 201305624, 238962600, 776532036, 238433445, 273911892, 431419372, 620145550, 665947461, 619290071, 707900973, 407487131, 113903867, 7684930, 776808926, 711845894, 404158660, 937370163, 58657185, 973387974, 642548892, 501252989, 260152959, 472713766, 824272813, 662739661, 25187176, 967681088, 850952919, 437116466, 704365077, 176911333, 638422090, 943327677, 953443369, 876855535, 69755929, 237379100, 349517445, 588219756, 856669172, 57418411, 995706887, 823089405, 65103341, 625032172, 387451659, 469262002, 562402329, 298625210, 295166335, 57467580, 799878199, 555319294, 382697713, 476667372, 70575314, 260401255, 296864819, 774044599, 697517721, 1229890, 950955932, 335939804, 797073933, 756915660, 65311698, 719346228, 846811127, 414829143, 307565977, 555996658, 324763920, 155789224, 231602422, 389867262, 780821396, 619054081, 711645630, 195740084, 917679292, 6811958, 253207665, 570073850, 414647618, 635905378, 46741215, 337739299, 896306633, 343606035, 111783891, 446340713, 197352291, 915256190, 782280517, 846942590, 524688209, 700108581, 566288812, 371499329, 114937718, 726371155, 927495987, 292218004, 882160379, 11614769, 682085266, 662981769, 630668850, 246247255, 858721853, 548348135, 105575579, 964445884, 118421979, 520223198, 452867621, 17679560, 857962497, 201690613, 213801961, 822262754, 648031326, 411154252, 737518937, 282828202, 110613202, 114723506, 982936784, 676902014, 486222835, 950390868, 255789528, 266235182, 242608865, 137949901, 277849951, 777210498, 653448036, 908518801, 23457746, 364686248, 309383296, 129033326, 329132126, 280321641, 501772890, 781999747, 150517567, 212251746, 983690361, 364319529, 34514493, 484238046, 775473781, 624549797, 767066249, 886086983, 739273303, 750003026, 415505356, 78012497, 552910253, 671294885, 344247679, 795519118, 661761152, 474613996, 425245975, 315209181, 235649157, 448703722, 679895429, 545032453, 430253414, 861543921, 677870460, 932026304, 496060028, 828388027, 144278043, 332266748, 192707549, 31308902, 816504794, 820697697, 655858699, 583571036, 559301039, 395131995, 186090421, 974806396, 473144493, 739000674, 498617640, 669908538, 387036152, 12895151, 144522528, 812282127, 328104332, 380171685, 113502208, 860516127, 777720504, 543755622, 722060042, 455590957, 328298285, 70636429, 136495343, 472576328, 402903177, 329202893, 503885231, 219407964, 2416949, 12260289, 655495367, 561717988, 407392285, 841585788, 389040743, 733053144, 433102822, 887658383, 402961675, 672655340, 900553534, 400000569, 337453826, 81174225, 780172254, 450956035, 941690353, 410409117, 847228023, 516266754, 866000074, 175526302, 586903183, 2495411, 500618996, 989806360, 184214670, 4504220, 61730683, 186631619, 16764510, 717226050, 748349607, 276673161, 411328198, 137390344, 9726298, 696947386, 877565093, 265204339, 369602719, 630634987, 665204909, 707056545, 564325578, 297893522, 10528939, 358532290, 708302640, 857756963, 874799044, 426819073, 885799631, 314218586, 281830850, 386418620, 156541305, 318561886, 243439207, 70788355, 505193505, 112720083, 788014405, 106059472, 241909610, 51858962, 95966182, 104152274, 748806348, 826047641, 369356613, 970925433, 309198987, 887077888, 530498338, 873524566, 37487770, 541027277, 232056849, 745790410, 251300599, 959372260, 25125842, 137100223, 126107205, 159473059, 376035210, 282648511, 478034945, 471990783, 353436866, 983228451, 584710866, 993967637, 941804289, 826620476, 45826593, 37770464, 930772750, 647149307, 716334471, 152645722, 470591100, 25533452, 39723604, 1089431, 899058018, 77211374, 394633074, 983631233, 675518150, 645933674, 943003486, 553160358, 635550263, 69110685, 712633417, 864101839, 204275562, 190668356, 336092615, 410228794, 26413166, 773319847, 404196424, 968217455, 452456682, 302539383, 858504285, 235745791, 802205057, 427355115, 388391514, 272796150, 452888567, 280631484, 126401947, 204462944, 210359224, 521035021, 40610537, 738393740, 19485054, 983614023, 291554091, 655035318, 905241074, 4187502, 371653516, 962033002, 47372224, 707746132, 372261789, 73785390, 333582338, 628974580, 894519211, 786039021, 931513963, 605539855, 21784805, 586235379, 32894963, 262692685, 859031529, 338299897, 543324169, 985433476, 395279207, 606199759, 358984857, 435889744, 344593492, 378469911, 272020127, 488663950, 33505222, 29777560, 345367818, 257675105, 991810563, 392740042, 965421237, 216588711, 319041798, 151519934, 845563291, 66077368, 937558955, 629593614, 524133589, 959343761, 215828986, 409544918, 74552805, 927376882, 747844815, 617876975, 765326717, 143124016, 76593093, 124311567, 431530126, 421186586, 502781479, 703550253, 909850536, 388803067, 733327814, 107734713, 646478172, 725138370, 500474755, 464415768, 941727081, 672032919, 615935703, 639806732, 738110287, 406011017, 269400339, 114760235, 217871137, 337745691, 524305153, 292423943, 265122566, 124666328, 910300918, 30449277, 120306710, 986894011, 7277210, 551836836, 260596956, 362575055, 255387083, 22963851, 751378123, 988714897, 130698564, 250372654, 566369626, 483689685, 567304789, 360613066, 155722597, 35756851, 419791, 746349250, 441767868, 122336496, 861109485, 659639006, 460082188, 385414632, 952062949, 577721120, 510080960, 714880226, 460686763, 630387670, 554290596, 467963974, 34740865, 814887553, 830539029, 290127948, 690367770, 434433511, 131359204, 821066335, 537322532, 550245196, 157272379, 104627314, 910858263, 312994977, 140384165, 763794420, 59344220, 582152033, 738647283, 772970072, 94307398, 51245830, 10901063, 46370340, 628966950, 520982023, 761250566, 89653707, 3886052, 168057522, 410134047, 38626917, 982945075, 93189435, 181271232, 525829204, 527622947, 312630436, 199411898, 64945472, 862875633, 356684278, 22089152, 626250255, 669679255, 14989683, 242561034, 581539841, 597141716, 981208317, 207026272, 691449115, 32454140, 217927335, 590335821, 513937457, 738909358, 204102747, 603591164, 595311776, 372160269, 13725204, 633938694, 207621703, 106914639, 815209926, 733450907, 487053952, 980356728, 932862806, 404515790, 695748720, 289547077, 279121308, 174515334, 811742698, 294110991, 417076369, 245798898, 891252708, 250801045, 452825171, 435218182, 135771552, 670752506, 25553996, 649709009, 262178224, 82173109, 105816532, 857490000, 454333378, 972058109, 343945053, 661955081, 931489114, 11671338, 395405982, 271059426, 992028067, 180785147, 675575216, 687776780, 470332224, 954696525, 862292115, 134591281, 101323875, 131884843, 380390179, 992576583, 235202254, 833215350, 280311124, 370973806, 503967850, 158381487, 873199181, 766146074, 240554596, 979015713, 476152433, 694887975, 803590181, 820097487, 209359415, 735079289, 831768825, 604765397, 6138708, 823796885, 785550544, 534230290, 364090025, 108399127, 341443174, 78898499, 242990408, 442767050, 63299708, 623380588, 287859992, 298501962, 309112297, 420687483, 669475769, 813080147, 579068970, 395191309, 431742580, 672139932, 226723382, 907895014, 219544266, 30313556, 580508860, 428903682, 617909211, 412277678, 33669072, 476564285, 88590923, 671735983, 10794569, 305197314, 632651476, 204754109, 384095813, 875641885, 500037525, 447395521, 351538832, 787897518, 745897483, 660651129, 61101360, 267889611, 326247636, 640170330, 663080921, 610506582, 164826621, 889804303, 370917955, 384370888, 772634225, 951426815, 813274570, 390543430, 216220853, 699460008, 867107715, 304811776, 223712350, 730418650, 610009090, 856363827, 787689126, 846621269, 584522071, 287726644, 146533149, 936060903, 928140528, 892430632, 449228391, 989241888, 12836603, 627992393, 481928577, 528433890, 238498969, 646755199, 270754552, 609416924, 31126080, 43388770, 413360099, 844400650, 286448566, 629580952, 396377017, 6072641, 934392728, 620089368, 736491291, 396918177, 476453188, 376696776, 96055805, 60975252, 664423421, 242588954, 849552521, 445080308, 135019579, 151297271, 434322190, 372548, 779289665, 916250767, 528806438, 870305000, 415522325, 799560990, 332238283, 446648405, 695466127, 745598382, 143565414, 981914693, 375179327, 539942432, 987987334, 162088414, 12548159, 576994985, 411522957, 489001347, 953691761, 507578762, 402492965, 470631541, 750167716, 104561845, 915711850, 737703662, 108375482, 202550399, 738076210, 887665147, 118801159, 119399008, 610486506, 386839851, 771476364, 942724790, 833488256, 466942484, 688323165, 829570037, 301373537, 916018859, 222028828, 289360864, 78107266, 234576987, 866355849, 342146590, 723578334, 672563970, 849725352, 978587665, 143195504, 599893062, 83149503, 58907347, 190113083, 44041351, 113974112, 928189293, 931706499, 85291638, 900104667, 394709364, 472131489, 671581025, 337434147, 158136104, 991039875, 878273679, 987706141, 292413405, 794292531, 209734962, 434290636, 724916163, 444311949, 153162844, 67062746, 20406642, 825726814, 769304465, 998994307, 968922319, 221713886, 934660176, 880346032, 411826969, 978701528, 994320145, 192532621, 762924386, 79611776, 92637282, 10150109, 404259631, 616734673, 347584257, 562395735, 607774541, 78374295, 550101870, 752704313, 872666826, 612353198, 186994942, 450099348, 56665141, 340157786, 369678461, 929588156, 18400960, 138982919, 781098823, 987323279, 213213171, 568275358, 720185670, 625040140, 399493245, 567022174, 817572761, 14933990, 499150316, 910210043, 25084100, 903409947, 379461075, 372668357, 318322042, 987235617, 451042652, 868423912, 592456289, 176225837, 333293469, 779451231, 478841551, 242474976, 972125383, 848520012, 172063126, 990526343, 840019297, 953161949, 830365981, 53232461, 373953666, 403068011, 530788967, 773446912, 970090185, 348361722, 788380902, 321756861, 111088124, 813465002, 77683167, 490549200, 38649718, 396005209, 330301176, 489692370, 116945480, 922757465, 518434573, 450238950, 554725055, 997276125, 692713926, 379366797, 698312496, 717293418, 369893134, 390848153, 522971726, 52775474, 296596980, 896925393, 455843485, 827385948, 670372298, 278450030, 28264029, 311269559, 600206891, 139352153, 124734555, 530406424, 482417719, 163384273, 926411634, 812718895, 505593010, 895873480, 587992719, 24027576, 198628789, 995234140, 21303694, 891342716, 374600931, 572132557, 461152493, 597010431, 962980710, 984124220, 649785905, 259577683, 881049606, 105629384, 86963624, 403938263, 384079414, 115227653, 715207822, 836802671, 107096173, 692458743, 367209088, 589513892, 855843017, 146137081, 254749147, 213952386, 42010555, 695258232, 237979962, 93155710, 690492366, 111800023, 984498426, 917609663, 683932580, 298167279, 514620087, 499429649, 282291492, 16922351, 759007332, 15857457, 122551735, 698487323, 272312086, 359147515, 666231342, 987519908, 195950179, 625843881, 532495011, 415675634, 67874133, 240854387, 561812715, 322623280, 454806773, 456339636, 17881505, 692786735, 549495347, 560890237, 657103124, 386510132, 331016259, 193552063, 684677411, 845636346, 692981712, 819485269, 862558698, 304505404, 835342726, 837626799, 2992720, 107654805, 196774308, 521740428, 947691080, 245240853, 100669, 332702450, 660916487, 67974802, 573556837, 75245562, 390598082, 28363603, 531585198, 260995953, 573666704, 933596911, 674402557, 230769822, 172623403, 5418809, 424321885, 857300814, 703571522, 117303591, 529302443, 418646579, 274325361, 217161528, 256273371, 129834447, 177332700, 305564045, 651574875, 125023773, 550804899, 651675544, 310242589, 211721379, 719650346, 883799426, 286966941, 962764794, 912163029, 671068506, 76277107, 338346092, 604665410, 750679664, 569115914, 777288813, 756098473, 845954166, 487105987, 312186354, 815774123, 16408423, 730832933, 90099477, 86086317, 987106305, 219933924, 263419017, 145186709, 724025165, 240959156, 695991608, 228217069, 551201745, 907712988, 947867415, 435001164, 47196288, 763148569, 199680552, 718264794, 839425676, 538026645, 175446564, 590105333, 959658925, 805251743, 198720165, 805613084, 144874089, 510906520, 473903566, 13798878, 94255812, 564003043, 99885196, 81362110, 636453333, 363304213, 79065186, 360478492, 604263370, 775056794, 588695561, 155465108, 535286141, 389079335, 442982639, 582482430, 4744263, 642663191, 153263583, 844169939, 33206195, 181226513, 286791631, 992865121, 986478257, 485511797, 650994564, 131352339, 848934683, 124898124, 145151218, 943190495, 541417533, 245036414, 877068972, 30387226, 608340627, 956134158, 390865718, 65120356, 731190945, 832077645, 220585465, 118993446, 73673339, 663568104, 701475876, 78417603, 158747654, 707255825, 922587542, 44470216, 888482339, 209379167, 37335330, 874960589, 547407330, 540846260, 858829294, 396342006, 518260750, 3980505, 192048860, 912194650, 101533285, 69117825, 942581876, 562390279, 25251976, 185963953, 627510635, 608959288, 18041591, 848096100, 727952734, 91714930, 364180563, 281944969, 170132533, 375444584, 989200794, 92720069, 419914800, 730199492, 154615602, 309766496, 457676440, 702022932, 850612756, 316505728, 950881304, 221389866, 173002599, 142930157, 133584509, 127052251, 64564349, 928682751, 689442530, 89816325, 114646697, 316953158, 551291979, 132688288, 17565618, 131761072, 76919584, 234262547, 266222407, 99568484, 609707131, 107939561, 44804919, 29621924, 838139053, 199420521, 339388420, 295815487, 753959819, 42517536, 464837581, 704841116, 116423768, 637840180, 700287639, 102524643, 764892431, 764851988, 31207387, 306851320, 707184680, 145854084, 623804479, 110993018, 131058738, 493886463, 242754091, 60494688, 728149010, 508976498, 160063172, 337856135, 616916059, 204868091, 219994425, 307571472, 256804978, 559382846, 603386959, 10764790, 454416748, 68224533, 568122272, 570840516, 558581079, 268409905, 673365159, 175989870, 33261886, 704572546, 482841190, 592962932, 702942996, 959162035, 703955951, 686518100, 453048491, 946710042, 599529154, 33713861, 308202899, 759592327, 371569996, 777635325, 816976784, 591564421, 85206790, 73781756, 3463626, 541110115, 84546546, 457880374, 461851014, 505185185, 28720883, 20432086, 773595090, 554602408, 48938322, 659373342, 111691313, 384295879, 104852634, 814634309, 343457907, 808808585, 353668768, 649022765, 608034986, 953197923, 682736626, 916237885, 565306609, 54306615, 546389569, 234799752, 498387402, 631596359, 308581508, 354367395, 25222833, 245644421, 812247769, 487073847, 750829606, 693485019, 360022300, 376941055, 100603786, 408960622, 888830763, 212295100, 793256501, 993683397, 26929402, 989230775, 802491975, 233114537, 638253533, 263043320, 38828819, 173506518, 31797565, 456651794, 80329499, 578187134, 691451546, 578716901, 62299853, 33048, 933084296, 87522686, 98193835, 597848425, 574596534, 701539807, 143849803, 934618834, 78480855, 244453589, 196095815, 819827984, 456748689, 989352317, 813511375, 336194458, 831099451, 468519709, 421825361, 321869343, 731563030, 460654180, 495375861, 763360595, 917305974, 575705360, 194064088, 461273879, 6938620, 256363941, 313823293, 940022917, 343886628, 412017128, 390387701, 918483162, 113556928, 386753870, 853101989, 44554149, 631207459, 49197797, 716898500, 940472515, 891066480, 382926234, 129183332, 574682290, 851445943, 551008693, 896551633, 435525332, 11662866, 391927487, 51402286, 781485206, 967632847, 245466375, 95275444, 974571468, 501830316, 409098738, 767110744, 845716944, 821115866, 10014804, 616716465, 787189161, 396768674, 322334813, 684259676, 880492499, 224048977, 253674535, 820965007, 115115450, 636600769, 950148339, 542314107, 340563072, 353673391, 438865733, 776088404, 217852623, 683309587, 680007057, 999337829, 503458793, 925473432, 94613267, 330546620, 279820107, 356228371, 97657357, 978053418, 29860596, 960188534, 594769876, 817049757, 209473567, 917104690, 353825793, 89966060, 141153660, 607500328, 763447433, 108785476, 96617457, 566112132, 503615949, 437180529, 919785523, 942481683, 65785292, 137638140, 478307629, 745792349, 989492335, 981766422, 523782140, 936621968, 312313036, 803602248, 292850332, 262486759, 634172025, 322710929, 75191653, 81458260, 992277052, 284665220, 998562950, 198619204, 374631280, 992232976, 806119533, 138078707, 953534819, 902736990, 556707205, 309667127, 192433878, 476492721, 104665169, 258219170, 466647227, 582972798, 4011513, 456139556, 564739214, 527793653, 245277883, 729568616, 183912260, 538128216, 992055375, 818084285, 713355511, 67247021, 899542546, 705632556, 204428608, 750621855, 904251761, 579059888, 595371191, 562887653, 569654961, 401422369, 318141002, 126362159, 711089496, 510574880, 455371247, 815754666, 768794050, 922018474, 251243823, 625321929, 230674389, 815983037, 5631942, 475952273, 398068012, 189544202, 866596855, 242639747, 860144854, 579952359, 162403134, 612203759, 138101274, 366831742, 215341973, 894869401, 945891631, 810713164, 310273413, 368062951, 64651892, 628414415, 346941477, 628257755, 991505661, 654829090, 296528780, 612816071, 429363923, 547772603, 238137993, 660038313, 216272000, 243769935, 988506952, 614340012, 285830504, 855103800, 856979759, 145975351, 287572518, 19382887, 758179110, 278190158, 386214629, 973521083, 173059553, 184622619, 636750607, 483332966, 405201937, 553918865, 964263748, 752143414, 182176613, 955769402, 259488863, 478705393, 421101832, 688852786, 26477990, 659239826, 201407458, 95266356, 755526127, 189914403, 709606368, 41356624, 897534569, 566586121, 39848341, 37623446, 438485374, 798027451, 315813605, 824700003, 624064894, 488873158, 861838989, 113331860, 824722490, 267040919, 667250725, 788986231, 871700699, 701943705, 597271993, 131189555, 33165457, 18373818, 820042341, 59643447, 530130010, 21449793, 7426169, 138172497, 63880562, 717032538, 179529121, 961415132, 136135018, 219377463, 999038578, 574620392, 869921280, 167368542, 251836754, 346502533, 656241700, 113675736, 459834393, 333480550, 233233021, 979601485, 122466774, 104933713, 681545183, 572255133, 88639634, 714710640, 443145318, 908681976, 626870454, 825791694, 782648135, 634296623, 963964191, 699045063, 203845520, 143493306, 512976554, 339980538, 215387135, 364531492, 914600930, 85308408, 531900034, 166437678, 284327308, 40658094, 132629780, 744161701, 374138644, 365862802, 576279545, 349121784, 470796515, 110341087, 921376918, 559436150, 825051728, 217038595, 320634485, 304438541, 42830282, 955798986, 791251530, 859310840, 654844042, 995097051, 855320512, 20336956, 335077582, 70707640, 384868448, 102194872, 8532414, 916768482, 268632550, 145376088, 957426576, 401262330, 889537790, 331565213, 767125132, 318333694, 680686998, 90438007, 428674782, 454580275, 502390523, 106242869, 524135236, 823025008, 410681410, 419481884, 631340353, 54449299, 278792717, 138700754, 49546343, 134113222, 159037710, 237140292, 57337228, 543906158, 339335164, 918386016, 460674634, 607967714, 63762097, 270617569, 861746410, 805816253, 602182783, 481387902, 124149941, 135386140, 571825909, 405341089, 442482781, 74216425, 511583958, 966618017, 749757799, 922265368, 386099894, 233614511, 976714667, 517408978, 372315265, 878777377, 504038566, 531352976, 115917662, 413892161, 75259127 }
{1, 824, 980, 450, 1004, 1561, 1396, 503, 1182, 1751, 1292, 1816, 1875, 1514, 1750, 9, 1653, 1628, 1649, 849, 690, 947, 226, 289, 832, 1742, 1274, 1544, 601, 1254, 755, 1633, 78, 1734, 84, 1154, 1295, 1552, 1657, 550, 1303, 1022, 439, 1178, 537, 189, 1259, 263, 1816, 908, 1185, 579, 1927, 1410, 868, 760, 1225, 142, 377, 1825, 1396, 1131, 1532, 1546, 938, 1688, 701, 233, 1240, 431, 856, 543, 1452, 1367, 1793, 62, 1556, 1052, 325, 1445, 33, 1582, 25, 1959, 992, 892, 792, 291, 1106, 1168, 189, 502, 372, 1720, 122, 1309, 1408, 822, 1615, 648, 1325, 544, 1263, 850, 1910, 1056, 912, 1466, 108, 1309, 985, 213, 891, 1009, 246, 1955, 1973, 1037, 319, 1079, 279, 508, 1654, 723, 301, 1775, 33, 1709, 670, 1720, 430, 1994, 264, 1766, 844, 247, 822, 1828, 1713, 1003, 1137, 771, 1215, 101, 1779, 1460, 130, 1752, 571, 448, 831, 922, 955, 485, 1644, 1256, 333, 1676, 1038, 1002, 1469, 1540, 1069, 1805, 1306, 1986, 53, 202, 1814, 1838, 1204, 1025, 609, 492, 1198, 388, 1952, 1327, 213, 596, 1775, 1116, 1517, 803, 1601, 1161, 132, 7, 911, 1169, 1009, 380, 783, 78, 259, 89, 64, 311, 363, 1951, 149, 1566, 1049, 757, 59, 247, 1217, 84, 1574, 1429, 752, 1422, 545, 269, 225, 219, 1502, 357, 226, 413, 1598, 1307, 866, 381, 1384, 1197, 543, 1521, 1507, 905, 1545, 1728, 545, 594, 485, 676, 913, 1774, 832, 487, 1203, 1583, 1908, 1820, 1851, 207, 113, 1426, 636, 338, 1912, 234, 1644, 851, 688, 1101, 48, 1230, 695, 1554, 208, 313, 1282, 825, 906, 1839, 1500, 1819, 1613, 332, 379, 889, 1987, 361, 782, 1911, 640, 894, 1338, 1275, 1304, 1250, 1508, 1021, 101, 196, 123, 148, 1498, 890, 1774, 1779, 1203, 1129, 604, 182, 968, 178, 74, 654, 582, 453, 1542, 570, 886, 324, 554, 1525, 1291, 1891, 800, 595, 1214, 381, 1616, 1387, 650, 1811, 1607, 148, 774, 1381, 1999, 1976, 510, 677, 232, 1550, 927, 305, 204, 1508, 830, 1818, 151, 1715, 143, 705, 1313, 1506, 669, 113, 101, 1883, 567, 1789, 1343, 1216, 1673, 951, 1436, 448, 405, 1436, 497, 988, 113, 728, 538, 1039, 1106, 815, 620, 1935, 633, 771, 1724, 848, 1548, 1110, 354, 290, 1296, 528, 173, 1862, 317, 1589, 1078, 1990, 540, 514, 511, 1017, 1949, 1007, 5, 135, 1808, 616, 1246, 914, 1430, 1866, 922, 136, 710, 719, 984, 331, 1829, 1410, 620, 1125, 1937, 866, 987, 255, 455, 65, 318, 1067, 651, 828, 84, 601, 1907, 89, 808, 1715, 777, 55, 702, 280, 1993, 1624, 415, 703, 416, 1471, 1106, 245, 882, 1725, 1442, 819, 591, 429, 1146, 1118, 566, 1536, 185, 1217, 437, 269, 1890, 345, 430, 771, 60, 1279, 825, 762, 1558, 891, 459, 46, 1666, 874, 1517, 772, 1119, 472, 571, 634, 1363, 1161, 1063, 583, 353, 1701, 119, 537, 991, 556, 878, 954, 900, 1380, 1725, 1032, 732, 623, 1866, 290, 1514, 325, 409, 1253, 1272, 1925, 26, 464, 470, 596, 1097, 1832, 1829, 160, 488, 182, 1934, 607, 792, 998, 1235, 1742, 1952, 208, 1196, 1750, 1239, 1927, 373, 1179, 218, 1959, 1503, 699, 1213, 775, 624, 1311, 1238, 1166, 1906, 336, 1071, 1808, 568, 1559, 64, 575, 166, 855, 1573, 1473, 670, 1598, 1680, 1865, 1348, 992, 1793, 1793, 171, 84, 1826, 1747, 782, 1112, 595, 1478, 423, 1906, 717, 402, 242, 1787, 283, 882, 1346, 346, 1530, 1584, 1273, 1103, 1057, 1943, 701, 810, 1808, 122, 1802, 1674, 1914, 46, 1830, 1740, 1792, 685, 925, 388, 236, 1347, 367, 952, 1821, 681, 740, 105, 1562, 86, 523, 1165, 1670, 1796, 268, 800, 1739, 1041, 1610, 1620, 1235, 1485, 1368, 1150, 1530, 1198, 963, 1396, 1883, 1888, 1856, 192, 1308, 223, 1144, 1203, 903, 1883, 1380, 538, 42, 1902, 1703, 1711, 1698, 44, 585, 1510, 1158, 195, 1131, 393, 1679, 499, 1615, 1282, 1769, 652, 751, 1725, 613, 607, 1917, 1993, 829, 1061, 1196, 1804, 1017, 649, 343, 1058, 552, 119, 770, 323, 162, 1354, 1833, 1392, 1621, 1037, 1785, 1373, 1535, 1473, 728, 1377, 125, 1479, 1103, 737, 86, 1093, 731, 988, 154, 1999, 865, 1170, 649, 1207, 228, 1273, 1398, 1070, 1595, 1633, 497, 1428, 1025, 191, 538, 883, 1563, 73, 357, 365, 1523, 481, 1843, 699, 1291, 1928, 1791, 95, 989, 18, 94, 1854, 1187, 742, 1134, 1487, 88, 533, 631, 1683, 166, 1200, 1184, 1190, 1464, 1722, 74, 1100, 1867, 503, 1464, 1390, 983, 1307, 89, 347, 1309, 1952, 441, 298, 1969, 535, 152, 1229, 1349, 1359, 717, 1437, 1891, 1420, 1193, 57, 693, 377, 1319, 157, 99, 1465, 1257, 40, 1967, 721, 1502, 1024, 29, 1591, 1370, 1410, 1543, 1811, 1707, 1586, 419, 1932, 815, 1840, 1291, 1604, 1350, 1182, 1024, 543, 1311, 1717, 993, 703, 1946, 1164, 169, 1203, 1203, 136, 1997, 706, 1232, 26, 370, 603, 1435, 1985, 487, 1215, 1571, 978, 1147, 387, 891, 511, 1990, 242, 1765, 1088, 857, 1076, 878, 1849, 1852, 824, 1014, 21, 28, 217, 229, 98, 995, 1461, 196, 1364, 137, 1703, 1350, 696, 918, 994, 1746, 139, 1380, 637, 649, 1444, 878, 488, 532, 1735, 1636, 1409, 1657, 1488, 233, 671, 1508, 333, 961, 1737, 430, 1955, 1271, 625, 1393, 1480, 328, 816, 176, 1319, 1809, 1994, 1457, 1190, 631, 179, 634, 1582, 666, 1165, 1390, 303, 647, 1047, 1790, 879, 1718, 1372, 1285, 752, 1182, 1714, 707, 453, 413, 173, 1932, 813, 988, 181, 132, 798, 175, 1588, 61, 878, 1840, 767, 460, 506, 1931, 1849, 881, 651, 970, 672, 1529, 688, 44, 887, 1512, 1225, 675, 292, 1750, 1087, 465, 1755, 1899, 1452, 9, 32, 323, 256, 1692, 383, 1133, 1532, 1149, 1593, 112, 1153, 1515, 992, 1803, 485, 1663, 1406, 1245, 1779, 293, 757, 1077, 1040, 1122, 900, 127, 1586, 728, 100, 1038, 736, 204, 1434, 991, 1895, 1816, 198, 1501, 966, 1863, 1612, 119, 1378, 677, 1995, 1936, 414, 1401, 1254, 193, 1766, 85, 1343, 807, 1206, 243, 1006, 792, 1044, 1105, 1902, 1779, 1381, 1336, 844, 1350, 1153, 1041, 851, 192, 904, 536, 383, 355, 1212, 451, 364, 1625, 1924, 1618, 1891, 1691, 1702, 1234, 571, 908, 1549, 1649, 1772, 666, 828, 1674, 446, 209, 1084, 1362, 1558, 310, 476, 482, 501, 1379, 1090, 956, 1806, 303, 1407, 171, 1, 1331, 1788, 1891, 1095, 1563, 1198, 1738, 471, 821, 1388, 243, 1486, 216, 1989, 5, 424, 1146, 1366, 56, 1455, 1841, 610, 29, 1293, 1700, 1058, 1100, 3, 465, 1343, 3, 1868, 1204, 1967, 964, 767, 1238, 702, 1237, 59, 90, 1552, 1618, 378, 1614, 1622, 875, 761, 1062, 930, 289, 976, 1539, 391, 270, 1239, 1448, 1442, 1314, 1912, 858, 1390, 1780, 62, 1430, 817, 828, 668, 1519, 65, 800, 1681, 1689, 418, 60, 1376, 113, 1007, 210, 1174, 1936, 499, 151, 1548, 889, 493, 861, 337, 1934, 248, 322, 792, 1637, 102, 853, 1140, 992, 1753, 1808, 511, 1817, 681, 265, 1579, 1098, 397, 955, 1283, 1403, 1165, 458, 1412, 1736, 681, 1034, 698, 1173, 1894, 1034, 1180, 142, 1355, 45, 1852, 1529, 897, 992, 521, 650, 873, 1104, 540, 1553, 1442, 192, 724, 1911, 1219, 8, 1315, 457, 538, 800, 193, 1218, 1833, 890, 464, 1727, 1996, 1643, 1942, 1424, 1687, 1867, 1027, 657, 932, 1620, 1379, 1805, 798, 1991, 1431, 240, 256, 229, 151, 1474, 309, 1538, 1931, 919, 339, 197, 137, 172, 1160, 673, 1972, 1156, 316, 1914, 654, 76, 1781, 1680, 805, 786, 1300, 184, 591, 171, 248, 96, 410, 503, 397, 634, 50, 778, 245, 1980, 1696, 583, 251, 1832, 828, 1410, 505, 800, 639, 893, 787, 1292, 1041, 641, 1045, 1845, 1426, 419, 102, 91, 589, 349, 186, 999, 924, 655, 1705, 973, 1432, 1949, 1027, 1128, 606, 1277, 1033, 1433, 687, 1610, 233, 1325, 576, 1019, 691, 1616, 1659, 1735, 1461, 1085, 154, 1635, 1248, 743, 57, 1506, 1814, 980, 161, 1519, 26, 1665, 1541, 1052, 793, 147, 402, 1898, 1579, 1088, 1508, 1884, 487, 84, 976, 1177, 1772, 708, 985, 1306, 1793, 1139, 941, 1114, 1954, 1070, 621, 1768, 50, 781, 1360, 149, 447, 901, 1273, 1312, 1121, 1675, 1211, 700, 763, 792, 658, 1322, 876, 1633, 499, 721, 342, 1484, 28, 208, 696, 1041, 1321, 650, 112, 1941, 491, 234, 796, 1850, 382, 1242, 824, 1655, 627, 1944, 1330, 1837, 718, 166, 630, 1375, 1488, 1578, 1008, 60, 299, 1422, 1616, 399, 1629, 385, 1440, 1024, 1034, 1551, 965, 1524, 1784, 1760, 1447, 167, 1075, 272, 1894, 1702, 216, 1297, 1612, 933, 1462, 242, 381, 1023, 1892, 1462, 1083, 265, 884, 772, 663, 587, 1157, 103, 1610, 264, 1653, 575, 1861, 1511, 409, 1308, 1750, 1556, 1579, 1644, 1258, 1868, 941, 944, 874, 476, 1258, 1255, 1499, 1151, 717, 655, 1415, 1673, 1499, 151, 260, 656, 327, 1869, 993, 53, 518, 854, 1563, 999, 162, 1313, 555, 1814, 1030, 1886, 1682, 1970, 830, 629, 520, 88, 1883, 92, 1311, 673, 819, 799, 420, 318, 950, 679, 1047, 1276, 622, 40, 1401, 1212, 893, 965, 284, 1054, 278, 911, 941, 1381, 797, 623, 1424, 1699, 1252, 1943, 1860, 1208, 35, 1171, 1954, 853, 44, 374, 1244, 993, 1125, 291, 342, 1819, 403, 1742, 1104, 1295, 780, 1387, 422, 1131, 372, 1363, 512, 1241, 59, 1935, 941, 1383, 1952, 874, 665, 1986, 45, 619, 913, 88, 1065, 230, 1153, 263, 520, 1567, 156, 995, 1383, 1332, 290, 236, 793, 784, 1366, 1164, 220, 1950, 405, 279, 1886, 1418, 1734, 1838, 292, 399, 1897, 410, 1090, 883, 570, 155, 1112, 1796, 491, 1704, 1363, 719, 699, 819, 51, 1061, 1128, 843, 1845, 494, 7, 65, 445, 412, 416, 404, 1902, 151, 315, 195, 549, 285, 604, 1639, 1168, 1173, 1866, 353, 969, 430, 58, 406, 1148, 829, 1297, 1199, 1890, 425, 115, 1808, 992, 122, 1945, 1509, 606, 362, 1912, 508, 585, 300, 775, 1133, 584, 1378, 845, 1824, 552, 785, 178, 1593, 1214, 235, 1998, 436, 1136, 1369, 1707, 1026, 1793, 1821, 834, 785, 16, 780, 294, 621, 1214, 279, 1202, 1798, 578, 1976, 1004, 1235, 1355, 1849, 1059, 1979, 707, 1236, 1645, 1993, 1543, 1717, 429, 680, 1086, 136, 1778, 952, 31, 686, 1737, 46, 1538, 104, 740, 752, 456, 1941, 623, 1033, 1917, 1626, 341, 1345, 1548, 1400, 1397, 255, 709, 1116, 249, 326, 833, 750, 1005, 1991, 959, 856, 943, 989, 1541, 753, 1034, 1079, 930, 1773, 1903, 1385, 1787, 526, 491, 1778, 226, 832, 1123, 1773, 232, 594, 102, 1013, 1709, 423, 1338, 615, 1245, 416, 606, 204, 1272, 1548, 1192, 886, 375, 300, 1965, 1304, 146, 1941, 689, 7, 541, 1179, 1784, 766, 11, 980, 612, 315, 1646, 786, 1328, 1355, 1208, 739, 1969, 527, 1155, 648, 730, 427, 197, 1995, 1312, 571, 368, 1350, 1874, 586, 1292, 636, 592, 1832, 1814, 376, 671, 1825, 1429, 1282, 213, 1075, 142, 1540, 504, 1422, 280, 546, 1948, 1507, 1194, 679, 1933, 1463, 747, 1318, 107, 1114, 742, 54, 1699, 107, 689, 292, 12, 503, 740, 682, 401, 169, 37, 614, 1244, 178, 227, 1747, 1673, 579, 293, 1621, 86, 1559, 300, 19, 1022, 1046, 1410, 1128, 233, 225, 1181, 1932, 331, 1869, 297, 342, 446, 1036, 1096, 846, 1278, 1205, 1532, 522, 1456, 1759, 342, 1129, 338, 707, 750, 424, 267, 1123, 515, 1288, 242, 1997, 490, 475, 222, 1670, 480, 552, 1613, 776, 966, 59, 1811, 135, 977, 1089, 1413, 510, 1683, 869, 269, 98, 71, 679, 805, 893, 1102, 1144, 16, 1690, 505, 331, 1687, 994, 805, 1909, 738, 1357, 534, 424, 133, 1573, 482, 17, 1780, 1531, 1179, 1193, 41, 862, 135, 382, 1033, 278, 1134, 1910, 1171, 236, 1054, 1259, 1998, 1631, 1589, 1686, 699, 467, 1668, 1509, 1823, 275, 1932, 29, 1847, 487, 46, 1701, 18, 1224, 967, 132, 159, 1102, 586, 1264, 1452, 1719, 1174, 623, 29, 301, 1882, 27, 6, 1544, 1785, 704, 12, 1453, 213, 1907, 1728, 145, 1936, 1648, 631, 55, 1349, 721, 1278, 317, 852, 1509, 1491, 1511, 774, 943, 1230, 21, 1566, 1331, 395, 1521, 1358, 400, 1065, 1216, 1103, 1149, 670, 1388, 1057, 398, 1532, 1066, 46, 236, 1120, 1395, 956, 471, 1784, 1881, 53, 1275, 1392, 899, 218 }
{1, 215, 2475, 7822, 6872, 8230, 2157, 4481, 1745, 3566, 9153, 592, 6541, 7070, 5458, 9838, 6585, 6216, 1424, 8539, 1192, 1083, 2172, 7177, 6872, 9832, 3038, 6242, 2806, 5482, 4091, 8586, 2050, 2918, 6409, 8922, 1148, 4918, 9755, 9245, 8484, 8908, 6189, 1378, 5979, 1647, 1216, 2564, 4215, 8993, 7455, 5407, 76, 5979, 2585, 3301, 5811, 1975, 5895, 4969, 3810, 9986, 3556, 2212, 9257, 6317, 7486, 6757, 1235, 7241, 6003, 6072, 6149, 2192, 7450, 8480, 3840, 5018, 7397, 8055, 4011, 1204, 9815, 440, 7184, 2400, 93, 9347, 727, 5988, 4317, 4537, 5974, 7873, 3101, 1583, 4190, 587, 8341, 1777, 7828, 696, 4201, 330, 2888, 8003, 8810, 3080, 3022, 2559, 1136, 3385, 3764, 7303, 177, 7300, 6055, 270, 6647, 6782, 6258, 964, 7672, 8585, 8837, 773, 168, 9379, 1361, 4861, 7509, 9189, 5557, 1710, 9519, 8446, 6066, 4682, 7878, 9088, 7241, 5366, 8825, 7357, 2669, 9003, 4657, 8724, 5625, 1305, 5507, 1884, 2269, 9531, 469, 7459, 304, 6989, 3190, 1665, 1851, 7051, 7207, 7408, 8762, 3078, 2206, 4828, 7760, 85, 268, 1354, 5451, 5445, 8711, 8121, 800, 3369, 6845, 6426, 1026, 8704, 4662, 3295, 8235, 5131, 7106, 8540, 2120, 6649, 6557, 323, 3700, 116, 7732, 8814, 3195, 6290, 3642, 7307, 6375, 262, 5013, 8179, 2060, 77, 6300, 2860, 3446, 9497, 5638, 824, 4554, 300, 471, 2789, 5431, 7578, 7681, 3904, 579, 591, 4227, 4279, 707, 8311, 3094, 254, 4602, 3088, 3914, 7329, 9703, 5279, 5508, 1763, 5356, 8160, 975, 5154, 4010, 6614, 5978, 8564, 6914, 6450, 1353, 8698, 380, 5387, 8954, 959, 5978, 9533, 5238, 3037, 7845, 4684, 9644, 8799, 7773, 3558, 6128, 3828, 8837, 7989, 5591, 546, 6149, 2918, 5700, 159, 9532, 1679, 8723, 2799, 8129, 6429, 1497, 8509, 1816, 6803, 5820, 4146, 6336, 1058, 7183, 533, 2095, 6827, 9332, 6220, 6737, 1813, 48, 1927, 9802, 1991, 2473, 2303, 4909, 4525, 2463, 4442, 6204, 7538, 3593, 685, 319, 1442, 5546, 8487, 8245, 1366, 2633, 4581, 8777, 6169, 5115, 872, 9348, 799, 7092, 2438, 2612, 7140, 4365, 2414, 9131, 3190, 1070, 392, 7715, 3533, 1186, 272, 7423, 4779, 957, 4095, 6221, 6504, 2582, 818, 4222, 1568, 1752, 2999, 4089, 3219, 3871, 9789, 4018, 7315, 2227, 2983, 4455, 2944, 1749, 9938, 6134, 2819, 6683, 202, 2704, 7869, 474, 128, 2649, 7783, 4223, 5222, 639, 3157, 2393, 4862, 4725, 4145, 4213, 5166, 7364, 4437, 4956, 7734, 1752, 7183, 717, 2560, 6480, 2467, 8850, 8966, 5286, 5533, 9168, 7991, 3403, 5994, 4471, 2404, 3778, 5046, 3978, 4417, 4555, 6371, 9279, 5633, 6868, 3493, 799, 584, 4282, 5755, 8319, 6034, 9291, 5388, 8594, 5771, 4207, 3797, 1089, 9494, 9330, 258, 3837, 9085, 2604, 4660, 1489, 6382, 6058, 1820, 800, 613, 8191, 6431, 6246, 1412, 6276, 7046, 1996, 558, 9153, 6667, 2945, 8444, 2056, 7891, 567, 6263, 1688, 8009, 2109, 1019, 4619, 2298, 6456, 7223, 6958, 4298, 3606, 3016, 6118, 758, 9982, 661, 3541, 6228, 2073, 9818, 9626, 4070, 6728, 8780, 737, 9673, 3576, 9145, 7565, 496, 5409, 9253, 8505, 3870, 6624, 3124, 6169, 9433, 347, 3127, 3731, 305, 2496, 9849, 1063, 2478, 510, 957, 5058, 8936, 775, 4685, 9358, 7503, 3465, 6447, 3529, 7041, 5593, 1094, 7537, 7354, 6699, 2394, 1224, 9676, 5518, 3745, 9109, 2218, 3225, 9192, 2523, 5721, 9041, 9939, 4551, 5903, 896, 9609, 1191, 8023, 4294, 549, 1878, 4111, 6997, 1759, 1153, 2590, 2853, 5042, 6296, 5905, 3789, 3872, 1933, 9307, 7618, 7394, 7877, 843, 6586, 6753, 2916, 1979, 6692, 7467, 7882, 3940, 3428, 9074, 8315, 7723, 5975, 6545, 1834, 2972, 8305, 9339, 1914, 7510, 734, 8210, 3415, 4523, 8435, 1700, 182, 6053, 9094, 8060, 6896, 2032, 4813, 9812, 4011, 7857, 3631, 1894, 8149, 7059, 7320, 2816, 1134, 3295, 9361, 9321, 2620, 7666, 5012, 886, 5177, 5746, 5449, 4944, 6621, 3884, 6645, 3156, 9937, 2091, 1216, 3185, 4124, 2381, 9349, 4487, 6590, 2980, 6381, 1091, 6391, 53, 3907, 7526, 9701, 3268, 6847, 8673, 7287, 8211, 9559, 2464, 310, 5008, 3760, 6931, 5244, 6757, 87, 1533, 8849, 7655, 4718, 9325, 6388, 4067, 3812, 2978, 3399, 6546, 4069, 9791, 2951, 4328, 3669, 9004, 7597, 6868, 7677, 4884, 5079, 3589, 3700, 5389, 4949, 7460, 8673, 194, 4218, 5112, 1727, 9419, 9120, 6446, 5096, 5508, 6865, 5260, 4839, 6617, 1806, 5260, 6408, 1110, 9589, 6429, 114, 3538, 3297, 7792, 4774, 4728, 1381, 8474, 118, 6330, 2286, 5143, 2876, 2856, 255, 4604, 8627, 5727, 7402, 75, 1236, 619, 5336, 2427, 7236, 3494, 7687, 3644, 4604, 7276, 73, 4719, 7166, 9722, 8863, 1940, 4451, 6596, 6766, 921, 9278, 5405, 6064, 2155, 8261, 2671, 3111, 3241, 8399, 513, 3316, 5987, 1132, 5004, 8414, 4721, 8499, 6101, 8365, 9455, 9730, 4791, 526, 6896, 865, 9389, 8837, 5316, 2337, 5603, 2589, 1616, 1008, 5005, 123, 5622, 7677, 9586, 5215, 2428, 6451, 4883, 8415, 7583, 9888, 6829, 8656, 4739, 9282, 7022, 4194, 9012, 8165, 4721, 5909, 5382, 462, 4746, 7051, 2800, 6701, 9640, 768, 4062, 4646, 7243, 6036, 8675, 6829, 7603, 1103, 3280, 2486, 9518, 7215, 8726, 2699, 5872, 3465, 1981, 9246, 7660, 994, 3763, 2381, 3255, 9145, 2843, 4353, 6196, 1995, 1054, 2189, 2763, 1468, 6835, 6358, 3856, 5510, 3187, 1459, 2965, 6467, 3946, 2483, 3683, 2672, 1534, 5907, 6138, 3515, 5153, 150, 4509, 8916, 8883, 7764, 8061, 8078, 8469, 610, 74, 9524, 2799, 9189, 7344, 9634, 5548, 1201, 1496, 8735, 2660, 4461, 1555, 2958, 3296, 1590, 5631, 4830, 7497, 8121, 4697, 2650, 4623, 5559, 7918, 3506, 9675, 2331, 1584, 8145, 2941, 8010, 7669, 5740, 7200, 1365, 1726, 9100, 2566, 9574, 7835, 5227, 387, 5742, 4537, 3683, 7332, 168, 4865, 4829, 4641, 9563, 3831, 9264, 5122, 1749, 2770, 1149, 4081, 707, 9294, 7022, 8717, 3315, 9115, 5917, 4681, 7193, 5017, 7247, 6768, 9205, 8826, 7155, 4947, 3364, 7191, 8632, 9884, 2056, 3461, 878, 7971, 3645, 142, 9445, 5394, 9265, 595, 5827, 9972, 9889, 9202, 8689, 3205, 8317, 959, 7886, 5510, 2328, 1485, 8630, 7885, 6664, 5786, 9185, 6380, 2977, 7817, 6264, 1385, 7630, 7142, 5709, 1275, 3637, 5154, 3022, 2902, 2101, 8849, 9226, 1991, 8051, 4267, 1548, 2720, 5226, 5786, 4583, 3907, 7271, 3213, 1792, 287, 5351, 7329, 6667, 4680, 5146, 2932, 6066, 2777, 6426, 8127, 404, 63, 3281, 3426, 9317, 1735, 8628, 8543, 78, 3031, 2811, 1626, 2104, 4389, 7412, 6687, 8296, 1035, 6252, 6441, 7675, 1604, 3770, 4342, 6284, 8917, 7274, 8702, 8046, 53, 6829, 8450, 116, 6463, 8229, 5786, 8198, 6857, 4329, 8276, 9888, 7140, 6254, 1992, 1530, 18, 5031, 6178, 7405, 1284, 2619, 5080, 9240, 2742, 9423, 1876, 1659, 3049, 6931, 6057, 3102, 3760, 859, 9571, 6575, 9088, 5357, 4773, 5945, 6038, 9401, 2186, 9531, 5655, 530, 7413, 5673, 5562, 3591, 3079, 3198, 2563, 8159, 8790, 5305, 7582, 666, 3316, 6984, 7597, 9373, 86, 7710, 6584, 6009, 4285, 5673, 7718, 5411, 7970, 3757, 4812, 6508, 3288, 468, 7039, 701, 2493, 8953, 644, 1924, 2151, 9559, 84, 7293, 4864, 4018, 7959, 4532, 1002, 1909, 257, 7441, 9619, 6842, 9802, 256, 2515, 7521, 5667, 6837, 7630, 6832, 3346, 918, 3652, 385, 7971, 6145, 5690, 4967, 8070, 7841, 4527, 4506, 1486, 5743, 4876, 9445, 276, 5879, 7706, 6885, 9672, 3677, 3727, 9474, 286, 2594, 3347, 5953, 9432, 977, 9137, 9130, 8247, 2789, 9515, 2570, 5287, 5205, 7538, 9709, 9398, 8417, 4215, 884, 512, 9091, 6681, 7140, 1322, 740, 4026, 7346, 4417, 4105, 6821, 1055, 6700, 168, 7009, 2484, 7498, 2498, 1614, 5745, 5288, 7481, 8316, 6927, 9038, 2206, 6636, 4788, 6975, 7203, 2024, 7487, 2646, 5057, 4628, 3969, 5797, 8654, 7667, 6567, 9111, 4488, 7622, 5811, 1009, 983, 4647, 8507, 3482, 2613, 604, 5122, 94, 8920, 8401, 5484, 7478, 5037, 272, 4453, 8592, 2296, 1941, 1238, 7354, 2921, 1559, 3151, 7927, 9227, 6070, 7038, 67, 3693, 9202, 7428, 1028, 3849, 5935, 4510, 2815, 2892, 5984, 2909, 8164, 4385, 4746, 5643, 5774, 5018, 6448, 4366, 7315, 4741, 1957, 1021, 7662, 9868, 524, 1941, 9095, 6595, 8980, 5515, 6640, 8182, 2943, 7668, 8383, 5231, 8531, 1198, 8123, 867, 460, 2639, 5253, 5206, 8282, 1027, 224, 4731, 1746, 3891, 5824, 3703, 1264, 3487, 9923, 1789, 5428, 5371, 4736, 760, 886, 1376, 8942, 181, 5396, 3678, 1764, 279, 4876, 6239, 1147, 5336, 8879, 2752, 6894, 7161, 131, 7119, 8244, 1877, 7362, 4069, 1932, 8627, 3908, 1856, 6768, 5688, 7227, 1504, 6449, 4465, 9232, 1743, 4646, 980, 1773, 6411, 1260, 6650, 2650, 8759, 8338, 1529, 1511, 5233, 5043, 7994, 8704, 9639, 6224, 2418, 60, 8156, 7397, 3968, 6364, 4165, 6009, 9943, 5669, 2458, 760, 4901, 553, 1759, 2234, 2327, 4522, 9846, 5329, 3524, 8605, 19, 5054, 6468, 1604, 6449, 4462, 6660, 2440, 686, 9079, 2501, 5195, 6476, 6469, 7911, 642, 8830, 4207, 2663, 7640, 4967, 3917, 8194, 3078, 6151, 6873, 7600, 5997, 2202, 1125, 4602, 8573, 2531, 7422, 178, 8980, 8236, 6838, 1420, 8923, 5917, 3921, 470, 8746, 6743, 4733, 5740, 1925, 8940, 8403, 9566, 260, 2320, 4112, 3338, 4823, 985, 939, 820, 9539, 8416, 1774, 8112, 947, 9196, 8290, 9927, 3785, 1481, 7699, 9060, 3750, 7973, 9530, 2496, 1068, 615, 8236, 2993, 9556, 2992, 8911, 6168, 1664, 3023, 5858, 6488, 4008, 3149, 7308, 9899, 1565, 5435, 4364, 2512, 983, 2654, 8791, 4768, 487, 2843, 3828, 4238, 816, 9710, 6734, 8236, 326, 1323, 7581, 6234, 4315, 6493, 2402, 5979, 9516, 8260, 2467, 9877, 7762, 6128, 9776, 9327, 1563, 4140, 1840, 8898, 3147, 631, 3667, 3634, 3474, 7495, 4224, 642, 3558, 959, 5230, 3884, 8634, 2812, 118, 2949, 5657, 8872, 5280, 5173, 3484, 4100, 1402, 1246, 6580, 7531, 574, 4495, 8023, 8766, 3393, 7522, 9397, 7060, 1157, 9224, 908, 5381, 6218, 4466, 2692, 1449, 4702, 1326, 613, 1172, 627, 6270, 44, 2260, 7795, 3528, 6360, 5550, 1127, 2940, 3081, 8053, 3787, 1104, 6819, 7180, 8627, 2568, 593, 6136, 8144, 7853, 7869, 4363, 8671, 6914, 2164, 3373, 4592, 9129, 4545, 5220, 1751, 941, 7480, 5898, 821, 192, 1448, 1948, 9484, 4529, 1, 3271, 1986, 3172, 6803, 6965, 5741, 7396, 9453, 3885, 5249, 3674, 4600, 272, 588, 6764, 3645, 5181, 5893, 4542, 6753, 3996, 5483, 585, 9895, 2657, 777, 1343, 4605, 261, 2225, 959, 9884, 563, 4131, 6687, 7528, 6224, 436, 3333, 110, 2037, 7007, 4710, 2310, 7596, 7827, 2307, 9129, 72, 3202, 2234, 4069, 5037, 2819, 3964, 7694, 9948, 5307, 8652, 6561, 7532, 9611, 6445, 8095, 94, 9484, 1975, 6319, 9920, 5308, 6429, 1958, 8668, 7491, 620, 6264, 5318, 2927, 1745, 5391, 6129, 3979, 5812, 1167, 3150, 9776, 8861, 3098, 5083, 3865, 9659, 8968, 3476, 6104, 3415, 9923, 1940, 1743, 6242, 1861, 3403, 9023, 3819, 2071, 2866, 4439, 4687, 8185, 3718, 6432, 9928, 9848, 6763, 5740, 7367, 9913, 1868, 2580, 9363, 3303, 6446, 9022, 2271, 6274, 1478, 2039, 6197, 3419, 3782, 2439, 1632, 3537, 7814, 5451, 5609, 681, 6242, 296, 5218, 6312, 3081, 1498, 2512, 9844, 3590, 9879, 6110, 5458, 8812, 1825, 5113, 1610, 848, 7385, 7884, 8678, 5776, 4082, 8449, 5910, 2873, 81, 9447, 7040, 1884, 5056, 4073, 4478, 5353, 9291, 791, 4786, 7141, 3303, 982, 731, 9535, 3444, 2541, 8347, 5270, 7654, 9957, 2470, 1391, 4193, 1148, 3519, 8275, 9598, 9429, 7501, 9679, 8877, 893, 7916, 285, 4966, 2394, 1990, 4257, 3185, 6776, 7750, 6489, 7759, 4833, 2376, 1203, 3726, 723, 6473, 7732, 7032, 8943, 9124, 1225, 6444, 2643, 5853, 2394, 8425, 9706, 8425, 3654, 599, 6341, 3939, 5565, 8736, 5930, 6174, 1921, 9058, 3924, 4762, 3169, 5109, 7138, 4373, 8835, 4213, 7198, 6567, 1245, 2494, 2043, 8823, 5290, 4687, 1028, 7684, 9464, 734, 6109, 3118, 7685, 2451, 7057, 9602, 1187, 9339, 5776, 9460, 8398, 6052, 4223, 7919, 1161, 1361, 2292, 6348, 5575, 5843, 2915, 3172, 4689, 4959, 8347, 9979, 5998, 9375, 4015, 5462, 6461, 124, 4932, 4146, 8927, 1989, 3748, 6466, 7681, 5876, 5927, 2431, 8280, 150, 350, 5793, 7863, 8995, 2141, 9790, 1190, 1409, 9315, 5879, 6368, 7662, 2210, 8718, 3390, 6225, 4180, 9851, 2701, 9112, 3998, 7981, 7453, 4098, 4447, 1486, 6327, 374, 3917, 4607, 6876, 620, 401, 1092, 9615, 8894, 882, 805, 303, 6549, 3036, 3023, 4212, 1598, 1741, 7602, 4175, 2273, 3805, 3228, 7737, 7803, 1209, 5191, 8254, 5657, 6677, 4581, 2383, 6947, 5540, 9260, 7567, 2293, 352, 3534, 7540, 7586, 691, 7843, 4136, 3727, 867, 4700, 5325, 8960, 8654, 5852, 1234, 2459, 9080, 8971, 6615, 290, 514, 1221, 2299, 3544, 2154, 4682, 491, 7694, 3942, 4410, 6340, 646, 7944, 3880, 4585, 8635, 8075, 5073, 8714, 8942, 9773, 391 }
Returns: {461540726, 480433081, 392006346, 541819770, 492174312, 903717662, 924989424, 330383819, 203435372, 139426466, 253973522, 439933582, 915140611, 987429823, 786061660, 333774568, 604164281, 760244297, 375031005, 299922428, 16419461, 809589318, 14472561, 437878487, 966802925, 412692890, 388537434, 205288627, 852216022, 811455986, 916514179, 943024745, 301557608, 609915610, 983862224, 112067787, 577135936, 452058503, 351389647, 222511851, 53960433, 328163163, 884408473, 652504413, 421687697, 886409925, 954233452, 172859766, 281513887, 324176510, 255474098, 662183659, 664363156, 411091925, 924098319, 169593719, 617215277, 373052393, 465125727, 146599613, 941959369, 308298701, 153153157, 966667448, 969674712, 194897978, 718534132, 224218641, 481936755, 854135968, 99348016, 283179754, 640418631, 237852123, 559006719, 495542811, 902160938, 841605327, 192497439, 128697930, 339576006, 852109733, 549183693, 224925750, 388226174, 178167942, 810218989, 825699518, 64334272, 278612181, 467415773, 526129280, 737289871, 770937716, 536603014, 336898158, 633359536, 259162382, 893594989, 216535297, 821626049, 272053215, 662081829, 338225271, 165000786, 666632879, 209801314, 646127238, 114834672, 258793099, 610295678, 146816248, 413973284, 922875476, 834642981, 897448266, 589931475, 680537952, 675693282, 820788321, 658973934, 392756281, 613550952, 571269485, 768972198, 437471993, 786661305, 823508210, 850632655, 968653468, 491240762, 330915180, 911957095, 927660959, 716431666, 729215866, 173874508, 216199830, 473166708, 693764363, 975749841, 437952917, 678501013, 542910227, 537268103, 221237059, 979758802, 444078517, 937009478, 176739174, 316400341, 794118198, 496366800, 470515309, 153629446, 637772250, 110222433, 400961695, 371161829, 405670010, 313603495, 951709847, 251094933, 24670618, 964918506, 866448191, 857592413, 581828094, 125925312, 423907647, 601220047, 907514277, 60676643, 649722530, 669416363, 500761876, 415110443, 604605058, 681853295, 816374325, 627174264, 134847517, 331382706, 728808756, 787212862, 838801205, 99534071, 8622481, 42323231, 136045117, 272961492, 925566233, 655898537, 522681699, 578836412, 403411869, 932935211, 516696405, 425745719, 21634606, 840252867, 882367866, 866137721, 307518867, 914159384, 476569114, 725683735, 12666385, 764983581, 34450410, 25582764, 843283587, 673396879, 790804894, 94474259, 936394445, 169050210, 71081266, 720727249, 765574992, 973123458, 277062516, 369925971, 407424024, 112733881, 441704591, 356771079, 133606287, 564714057, 529387131, 864495560, 718375991, 357748135, 421417169, 253794467, 247661776, 136981633, 768438443, 483520722, 738031456, 966630724, 928968680, 263751584, 556144195, 841008928, 605981561, 9936623, 321025444, 941993596, 231805802, 345111486, 856886338, 656277817, 663689854, 180707110, 442809550, 671823350, 251409775, 768524889, 493123342, 652367440, 42923508, 835745413, 854830094, 423906515, 489596673, 370931170, 961328805, 363645450, 579204938, 371186624, 90627597, 204411874, 649315202, 951975973, 186376568, 391164735, 929979200, 861131864, 675852340, 351958227, 236360936, 858150722, 700355511, 594241194, 800296376, 512996917, 914519469, 614398442, 9110669, 944468610, 909540066, 89765463, 949779638, 808535751, 83721542, 552886768, 35012768, 856798669, 717024439, 926316249, 616784357, 516809716, 662264324, 366435331, 650095182, 82106002, 602660668, 466744421, 457463809, 786613131, 650862986, 493961752, 648268989, 270190604, 671128824, 954441017, 577938909, 21274868, 429147153, 935159624, 618524636, 75252035, 590405814, 334668144, 871813033, 559208337, 788065768, 500199783, 425170276, 23776595, 571288942, 60929867, 597268946, 13319598, 453177317, 429694817, 354590067, 105576774, 519215455, 838405784, 50457990, 864889540, 829939791, 124195295, 814586323, 13288793, 222999838, 294534887, 818713697, 960102479, 70332479, 113957964, 852223502, 399254346, 812624000, 97519088, 592966507, 207580747, 669094431, 64237036, 309641408, 156261521, 953323663, 112096684, 353780346, 582478234, 756494625, 592965403, 19333099, 219783052, 591725936, 492347668, 281064676, 394458741, 983570532, 496118297, 450771751, 197942349, 470271967, 817125308, 594615591, 529743094, 424557086, 335307891, 658641566, 645895523, 158047766, 121847410, 706144831, 804903934, 515691495, 260059246, 167150841, 547947703, 800792998, 170730985, 195128566, 86555283, 908995594, 495689808, 472585152, 36632973, 617454500, 538012217, 669435835, 440724255, 749716815, 368313935, 298121633, 894178227, 816513142, 813608393, 108488858, 205096087, 523352911, 368138882, 397985644, 160841642, 12633609, 47627213, 150719849, 660895036, 521379808, 931621290, 97261731, 124736683, 200474455, 760360303, 316240280, 605840824, 731241708, 772600751, 555619180, 589970799, 860859098, 819756596, 228847864, 221521319, 874065655, 719961169, 815392285, 440488922, 521439595, 193129217, 908120734, 536867995, 867892227, 410257802, 946081852, 588441333, 921179458, 556069287, 466246481, 175809404, 655154477, 7003552, 897595644, 165983701, 945429449, 481545670, 235231546, 939078240, 106187825, 972660519, 121079313, 61900384, 775454281, 177487554, 187425649, 765553370, 465825983, 114140719, 777313302, 840217070, 353934216, 36656559, 709384392, 343405373, 234888461, 931810658, 554429361, 940741470, 101456954, 773711874, 335626185, 65389063, 139897618, 254440294, 610134477, 722857741, 633898718, 389646366, 425312128, 91098424, 514684957, 68305748, 207944025, 870499907, 131558605, 427084675, 648729330, 263501835, 789043809, 708965880, 316654688, 547671417, 253903906, 759428239, 695671763, 559255381, 483763704, 877245911, 736719644, 303529793, 801717201, 829407959, 993836938, 363118991, 61559815, 297073421, 466510948, 556751058, 403343264, 277049689, 192057335, 254727745, 175810723, 322278086, 45631138, 464724913, 481224613, 68251392, 369893361, 770650014, 642965730, 3916701, 820229135, 346478265, 141482525, 748477259, 655874377, 258324047, 39399346, 863134947, 394256379, 705020473, 425173169, 800063382, 797346435, 753307843, 699761609, 696442544, 325590642, 140192421, 880363830, 229778281, 235477944, 16580501, 623259677, 758620469, 147357339, 560020836, 366598355, 887757650, 883256789, 503790908, 356381696, 799720954, 328428160, 415859428, 627580702, 560316225, 878615037, 680519363, 651935247, 999185681, 441964776, 919803862, 940223255, 989673290, 766231926, 188683246, 383578758, 640943856, 649873239, 441415445, 410997012, 229190730, 206016950, 304337566, 886838275, 745833114, 468983567, 989193752, 742571376, 90169050, 892464193, 628606897, 345920883, 343866973, 669861222, 499838099, 247702696, 700274545, 194011189, 397028391, 957466370, 696492166, 985224314, 936914870, 4210818, 353085175, 620654505, 903489981, 875678763, 604454249, 909097401, 617509384, 816551982, 601416193, 311137323, 749025646, 187264442, 615793351, 726539471, 345274778, 357418085, 742607395, 783572429, 298494454, 761996060, 545672870, 379857881, 164346377, 338274754, 260309453, 354168549, 36048339, 229457955, 243748054, 945368136, 692615098, 168331631, 98341163, 45615229, 453590757, 52812944, 361004485, 487606093, 360078315, 551254712, 700066961, 987963943, 702368612, 662368742, 625413192, 252602326, 498793021, 128622554, 208910716, 437406029, 466411760, 598938961, 385459739, 102465378, 423978974, 217550614, 697927777, 650904040, 196794312, 632751616, 918896408, 722070000, 890614163, 894010554, 161600352, 115173761, 859607459, 580334117, 543974561, 75253867, 251540499, 623962450, 548089541, 915969986, 240173424, 601731143, 783829885, 420236369, 348970525, 91116888, 777293477, 447924648, 284406882, 824158534, 985562412, 227396896, 70807991, 336568076, 21828034, 177288367, 795675972, 88657513, 234686953, 447138009, 38718712, 39762745, 477861805, 495078289, 605695790, 750925621, 74242638, 675401779, 759683683, 853450948, 399632369, 220908536, 188286466, 652023518, 156191630, 627887194, 905126938, 663536817, 490820306, 108409164, 420230558, 485837122, 333836157, 104066086, 414343555, 516889089, 928080239, 154886796, 986306395, 892546524, 118909416, 316599751, 529148079, 238188783, 180371549, 103610404, 503314024, 86094079, 668101470, 883574765, 450144943, 910597894, 112019259, 900545417, 401785849, 725519735, 744158642, 679186323, 975534427, 501689785, 926844101, 106355776, 998285171, 218852320, 236783865, 726290503, 679631430, 592743961, 307175222, 932856640, 150217351, 14093704, 460703231, 480076328, 458532246, 969015878, 188946083, 266365141, 263026273, 602770314, 639822384, 233739380, 870765319, 349360122, 113785271, 215731513, 45604848, 443536389, 518214869, 714966161, 908924800, 630446443, 591061863, 968255480, 695734589, 574716022, 563182667, 984503882, 234390316, 102183118, 873549720, 486453934, 414968739, 661382428, 322176775, 809490926, 303498842, 98223006, 803464421, 805199447, 697763911, 717973916, 695384460, 348234319, 682361085, 599460004, 609138581, 763867230, 897578702, 468855992, 372104160, 780569731, 262062023, 151524052, 140050883, 407778075, 417717687, 755212838, 724098885, 599743365, 117802738, 260925161, 576022987, 615511930, 444574914, 900853297, 343534897, 888612487, 924819496, 46160249, 297906879, 796380690, 846601994, 881351689, 645682886, 476174896, 127682291, 345290744, 434884268, 453939155, 449367657, 250103997, 609916468, 333011683, 927423764, 765223212, 851248737, 286272289, 905276373, 697887767, 494775642, 180122869, 377703780, 418963857, 587181129, 465318444, 703575714, 42252187, 281764949, 215218849, 112194793, 997513919, 673337596, 952334301, 244439255, 23455868, 72864597, 232551758, 882089178, 36117916, 470699782, 630742445, 6805161, 966752742, 246714890, 573506695, 705290848, 633053058, 490541419, 671422933, 914778086, 497416853, 851379237, 902307928, 36222137, 219976671, 415616569, 208695741, 538203172, 924163032, 823343899, 432566125, 922750761, 925534629, 841068396, 160580501, 166321936, 520221132, 963092923, 191874591, 619875098, 437098862, 240676108, 877466595, 942348144, 594333382, 509705747, 854245089, 479033488, 694465890, 509199741, 15699106, 631253739, 19793948, 323369411, 491896463, 65534186, 39610269, 766465568, 883007392, 707197038, 466278964, 273327403, 548683843, 467397240, 373210611, 591489928, 86196503, 132980224, 711369188, 383786778, 623013386, 260486898, 583064923, 528492677, 65215783, 460460233, 943435409, 153536602, 838743118, 322499090, 12284803, 840049386, 837197924, 810686319, 185879643, 878118450, 868463789, 242418773, 790349941, 410013455, 26346111, 686827778, 86883192, 360230910, 370154756, 940911282, 69102601, 472026694, 172312712, 703977455, 136580543, 971000019, 792646898, 75676594, 253304503, 911807275, 686586857, 663286160, 559818046, 710968870, 396038642, 507810246, 603478109, 386063654, 772942872, 45683719, 785313706, 614634213, 947669542, 15369458, 117402670, 207598514, 53334927, 657387926, 728316028, 534414969, 330007658, 587248830, 779202115, 700009070, 993866459, 185709008, 27933413, 820601510, 649452494, 421137208, 58385514, 169307152, 412996306, 302308637, 776691038, 460901169, 242923781, 547835434, 256672986, 423800684, 179177355, 486898012, 193979065, 232772588, 853850084, 6327209, 803233150, 507462638, 630829243, 489704166, 625277388, 951814141, 724967854, 514253321, 979992267, 430905951, 524644868, 238564167, 290276461, 602187367, 605030816, 39211671, 188803001, 661751019, 96514941, 784210633, 743084321, 915850336, 348786259, 525614595, 332315116, 736634405, 87054344, 302411465, 264742079, 775413247, 78505579, 88372057, 601234535, 53589094, 995243828, 258183281, 545929135, 766583673, 167977178, 501766079, 143842622, 874910276, 382750922, 35431633, 850161596, 881871773, 841139912, 926683401, 169085332, 362324403, 879550154, 225766444, 423115594, 869059311, 789882901, 358577185, 167296217, 901219567, 673416267, 684116100, 491002627, 612546543, 344071901, 560185075, 98638599, 310429682, 369723485, 28326326, 852714811, 317998579, 642405278, 786529871, 274610773, 722051208, 380939950, 892422434, 183224650, 125368595, 975105231, 614635626, 250618214, 316365155, 589458628, 536115002, 425860468, 99424160, 843658509, 637878530, 732436918, 212672221, 695812917, 855134800, 256193224, 232597767, 304848548, 610314565, 210895684, 431531664, 992631691, 191992697, 421358274, 533891469, 709629592, 455272916, 595375692, 96902220, 785440706, 231116257, 280857101, 45012818, 198156515, 282281402, 431815865, 59407549, 159768474, 198914220, 920046900, 965479568, 36700707, 714120678, 800762894, 412746738, 157674526, 452245784, 604585518, 678328479, 602311041, 8546508, 1864241, 265842146, 635139472, 249245266, 755736016, 624992112, 385384202, 247769338, 821313485, 302503836, 155264953, 554578412, 34555715, 107799374, 776947409, 486670053, 363401695, 598412972, 398229501, 396925442, 316049477, 31936934, 861834457, 857253311, 623126358, 118927515, 29808465, 643399982, 39218048, 998003063, 890819702, 947431595, 280671592, 230570956, 929462750, 238999836, 66814299, 833966887, 733732103, 335057294, 186970131, 636464063, 550943641, 128183561, 322758169, 109155956, 778737435, 977121809, 502491610, 650660508, 856997991, 703639255, 680986336, 995815442, 244334030, 129514921, 198102703, 745453833, 224538858, 383574777, 301950207, 607240583, 476012110, 336379890, 683695710, 316758212, 396068271, 948656176, 649619838, 445627271, 600539665, 651311780, 430354623, 541739525, 563950118, 805631176, 263217983, 332641774, 30632486, 537170745, 380339391, 53538726, 247596998, 470329177, 805921392, 323589380, 795060998, 726700240, 47498411, 226992725, 556845399, 830793938, 657057265, 41280602, 552918343, 754146761, 27977507, 55120511, 538905673, 249785963, 747432972, 834982989, 993636052, 153361575, 890020861, 483786036, 359691098, 260774077, 880578244, 620368852, 184269561, 413578041, 238551738, 184826055, 124529044, 93882954, 77641011, 579237955, 134672848, 775222057, 279990328, 598951931, 34576132, 148270870, 417543005, 317082300, 983563515, 587539610, 164436103, 957452472, 79358937, 430237938, 909846407, 519351546, 910660055, 609891318, 867802937, 212111393, 23953417, 716367874, 713647666, 993779769, 581496563, 88502584, 586650822, 278664048, 416927844, 641786635, 709376769, 280779752, 446157131, 216589768, 628420947, 934615287, 822036611, 385017096, 105627900, 963088144, 657981865, 886405068, 385163244, 926645476, 620006551, 651907543, 944464131, 111484880, 369999382, 386588616, 27519229, 517804762, 246112616, 313278193, 98697633, 760863716, 670661596, 815558092, 388150553, 400664575, 135161012, 376995744, 483987696, 481716048, 570733421, 43410319, 177468699, 918479520, 663890937, 791266175, 695113975, 724498576, 304930354, 462283362, 136101211, 510419898, 158774272, 968854556, 266114052, 641553402, 56000795, 566220054, 40089941, 342966301, 754205620, 448093280, 506846406, 355926269, 199832847, 339896555, 713025521, 165376049, 768055263, 792709053, 637925525, 709598807, 243261578, 81974340, 846706655, 595098128, 859086608, 588548881, 961168049, 114434159, 992119669, 2377597, 232956278, 364266367, 171059978, 316319052, 264288661, 135900851, 4537453, 879858725, 651514109, 583680201, 383589770, 337254980, 570519877, 800910405, 268380186, 155413070, 924687351, 563092995, 247746426, 712957481, 137862067, 248513200, 771759468, 186764042, 830526372, 24625895, 627059518, 804818341, 610609755, 525047789, 185812490, 265662918, 561610227, 186377150, 861695022, 704678289, 926219565, 112700572, 626817808, 683442362, 75236798, 451095707, 237115694, 553389666, 969650667, 196867541, 364838337, 435721753, 60673855, 117268709, 214881098, 856155968, 736680802, 899248594, 506278569, 91069929, 100114845, 215376786, 762975030, 412075921, 453891087, 762270114, 286848265, 210100451, 279229674, 910874356, 608793683, 546231525, 754332277, 561964089, 406053554, 146013113, 609161267, 611977402, 20006488, 212622470, 596777861, 801571701, 22129501, 284315585, 792774717, 947487553, 119708269, 596710522, 255371241, 676923149, 129709907, 569321543, 321805690, 151453022, 54696607, 766242035, 974756219, 645640026, 858104744, 97424504, 605804348, 583544055, 299942302, 225356635, 945588708, 687050040, 604601371, 542911125, 74221209, 321769596, 672370746, 369065443, 625464736, 936643187, 946012986, 561042099, 717829533, 221767392, 687414917, 378556627, 320214769, 670427319, 92366450, 210016926, 211890698, 247811793, 595527018, 941885540, 259390946, 24475302, 118464506, 774285585, 559087709, 792894525, 39986850, 454921326, 63815016, 771140026, 908865032, 86702240, 552613788, 891565144, 414269767, 17611314, 308258931, 285484701, 811755778, 481388852, 498759687, 485616670, 718940192, 53636310, 796012400, 605543576, 29057496, 860926340, 583432732, 221198324, 432025104, 709054128, 247968680, 986810080, 398270345, 121881127, 435132314, 472648566, 400511436, 633588059, 854174989, 504338412, 425148479, 172795842, 772076612, 892733368, 982335757, 302123273, 668150578, 516183250, 286300398, 494588303, 893527171, 17502211, 280531867, 500172276, 596917737, 280640147, 158271332, 499096837, 435980557, 712806291, 244241268, 468994384, 989245408, 170352178, 559121630, 580722301, 988985416, 541709009, 371843866, 268617019, 972264416, 777585780, 930543551, 464698370, 574243699, 822532544, 971348273, 67183547, 420285800, 938814351, 313530835, 288135893, 183650814, 746718881, 926325989, 972583508, 208639180, 652562459, 719359236, 266147059, 758318961, 487572447, 134857755, 377842833, 915348515, 800494497, 952992914, 129825038, 898638274, 889791658, 399164, 734255212, 193912696, 722643665, 934298161, 58597394, 165781572, 202589313, 104119928, 856920452, 344263558, 506761908, 605104753, 589028946, 530690460, 258746768, 455339534, 262417778, 269450563, 453972337, 596114796, 254068942, 685396194, 750345036, 409722303, 248334269, 255946020, 477008806, 23085667, 730396767, 390414583, 16215394, 555870132, 277447420, 630148238, 61622829, 972058600, 835146821, 611260773, 656051620, 217844825, 436477125, 611191868, 132364206, 445485120, 150010779, 250193784, 103382184, 394833698, 261146436, 823286938, 658439543, 112844095, 363178986, 291073889, 237562976, 591200292, 576310201, 36651410, 490870238, 388713953, 859209197, 67755775, 352875714, 799931140, 464732478, 375612265, 150476822, 650892057, 868462843, 365348217, 422767864, 533879924, 111170025, 298175723, 685990987, 550099584, 204418613, 402989142, 533348045, 831980820, 170483434, 125177103, 270084730, 473316410, 149289415, 67276504, 788573347, 962463478, 932559362, 155022474, 90784086, 56462170, 905335040, 743923150, 320670256, 819851727, 270340149, 808870068, 757749137, 838197918, 85207186, 756903215, 822525416, 873552433, 399395860, 340741429, 770006034, 636551284, 464285731, 334360425, 319760507, 296399017, 716308070, 600423247, 267650629, 927972214, 564746824, 689538140, 881428392, 808043581, 445797367, 214028156, 216174229, 426224059, 868950689, 127811859, 798030039, 536230386, 291575600, 794441500, 258481783, 280376865, 777015590, 270702261, 138057358, 901235282, 570752464, 303361640, 594817288, 902572631, 484538476, 908075031, 97809030, 429153132, 515374218, 708893740, 705191904, 535072159, 770903224, 492598823, 965043681, 951597396, 943660949, 40568369, 463895639, 829075455, 770675000, 360010128, 650815428, 52836143, 519882777, 991022636, 699333884, 820583635, 150719246, 656710647, 988523427, 43737436, 194136645, 725245703, 948020524, 328814281, 311052740, 7222655, 912460668, 122596244, 112344290, 699705761, 58901865, 934056473, 174072885, 695878017, 223485329, 609276142, 329739801, 799561559, 940460883, 496903047, 117212735, 966296809, 609759769, 509346272, 98296530, 735860186, 827709856, 751728126, 567750909, 827268476, 22053249, 612667470, 899558221, 920071961, 617107548, 638492686, 862056467, 30746947, 193126696, 973490688, 710299510, 867222658, 885672292, 409134472, 725043035, 988412881, 656064648, 49583653, 556831454, 201617615, 559334787, 171153805, 956963887, 293232057, 38340724, 321272770, 513114756, 416929205, 852854425, 791195408, 664375973, 4180528, 227894797, 749049080, 448691328, 238017021, 576552012, 446139727, 536680984, 850390702, 685098875, 180291185, 325955193, 995824401, 509240608, 661247194, 920064043, 843764122, 541455198, 441940486, 995244395, 656126605, 462829168, 211831015, 98601845, 223040123, 790186532, 355383846, 284038464, 162841741, 616639111, 985523109, 212930834, 824021336, 9075716, 78562756, 991756134, 105008386, 664399954, 713473944, 575889532, 709474148, 370184043, 781884800, 706149537, 576199206, 699483159, 351788559, 97174830, 890044531, 716050924, 452748628, 500595506, 31527300, 781054285, 184905309, 982932405, 925401301, 493534601, 950444048, 887197507, 626897919, 577501697, 29140123, 142949563, 423986063, 724461499, 518364989, 944817254, 391342546, 639171652, 536336508, 979237400, 348452318, 489689581, 618566195, 700105900, 145831211, 492255702, 587235840, 96646161, 925641064, 463840924, 774880281, 266455190, 721188349, 390316395, 390516318, 820952187, 514334216, 860062056, 652423533, 933748153, 954754073, 362015726, 207672508, 483778922, 981137596, 577268017, 534013831, 21529380, 105745949, 200467958, 903742176, 326413112, 71166523, 39101656, 327640489, 563950118, 363538356, 307099449, 776043793, 640169026, 409699348, 211840527, 720289921, 305021694, 764209913, 879361233, 310253128, 142097587, 750719865, 820056012, 16795041, 421416103, 919560312, 736752238, 2088547, 372291361, 37586874, 52871484, 334840131, 930114940, 719316840, 824435872, 186764750, 510707282, 535490647, 276464326, 888736158, 65766940, 318698426, 606703256, 795649780, 646562957, 537855724, 434050694, 576583440, 696488301, 508125880, 483901258, 509052933, 841494119, 645350904, 402749061, 240849587, 436167928, 276965917, 844240011, 118936479, 466721257, 726796728, 530921769, 396815402, 650298166, 947174100, 954946854, 114116776, 555571013, 422781750, 968262920, 735116839, 12331882, 537115899 }
{1, 1999, 1997001, 329336992, 339157860, 323985195, 671079056, 922935613, 810966034, 625929159, 559901773, 967692616, 981075602, 953631355, 565132702, 119227042, 784153110, 410329782, 181867903, 383174388, 934264153, 995654571, 336578532, 235467528, 386826339, 559280571, 693070752, 867725344, 398370231, 696128274, 712423011, 153577383, 945008995, 843414556, 828029579, 345088898, 270960861, 997193694, 223526684, 495790369, 293727913, 351536040, 959703852, 654428498, 910503032, 778520341, 504972518, 47049378, 913341365, 978142673, 147563981, 188278373, 283966695, 299682102, 910766051, 389817399, 817946762, 110009605, 476528476, 727826538, 533057901, 288512507, 82858624, 484081806, 143474530, 424972520, 422679517, 761783597, 231851459, 589929920, 693781971, 581766380, 800632961, 285201441, 666188809, 765512650, 905872747, 999912738, 331182938, 496233161, 909595787, 228571644, 565858664, 912663275, 7890746, 766009164, 117924764, 328621519, 412776593, 997933307, 289473369, 83567666, 907033763, 29176064, 421378488, 923431733, 481395913, 155633156, 163410824, 450949238, 568035466, 650488543, 123796530, 66427338, 595636850, 273636410, 115729783, 496041851, 726955334, 263050708, 610598501, 292077122, 780728599, 612697845, 136387085, 148605683, 482526769, 757247011, 162193770, 849466218, 308303991, 258704093, 539723637, 382611869, 465966626, 989499348, 859696555, 686705802, 293072286, 832079411, 353757600, 871549241, 727681602, 681064226, 140789828, 241281686, 718743090, 890645023, 336094359, 32169768, 713112634, 607633886, 302702483, 791038516, 751163029, 989016621, 887923311, 927359760, 523447730, 308065381, 132806340, 473900142, 393206952, 256557095, 296132431, 750737627, 130513940, 837816501, 678848005, 250057665, 375663130, 775431628, 884218045, 204346856, 531590400, 911929565, 472763922, 434588404, 929559236, 881792605, 845179158, 338202746, 640898931, 623828552, 155809932, 767732142, 229223963, 536018544, 14751575, 200349822, 359092633, 128118757, 851208240, 894236953, 217034215, 399551881, 681651118, 774510531, 273473791, 551645676, 676203513, 100796579, 532501116, 213624405, 803122030, 382744895, 869754015, 960235936, 628005785, 155971915, 403747228, 369857008, 747539093, 720826314, 699039470, 23296780, 931040895, 6552237, 748757739, 124522016, 966163850, 40128510, 508253661, 757038906, 121829331, 546350489, 253191046, 536588169, 918349137, 139633798, 857037091, 586737444, 834320583, 105774286, 695781838, 377834464, 859638654, 234093935, 679010750, 491388780, 520687545, 532884249, 750600633, 344683733, 644066108, 858624145, 672088908, 885623367, 388522531, 385724573, 495313519, 382806948, 351134754, 625282961, 8183901, 303521415, 334864060, 619500786, 957118432, 702467325, 917271247, 427519524, 203587790, 520426354, 860883501, 832320393, 482682641, 713291201, 808345988, 688534195, 838651894, 675921972, 575390764, 381953425, 451027053, 424648801, 798274501, 862957686, 368069785, 877802212, 698510435, 500828541, 5263650, 956374818, 754390240, 277538747, 922017385, 727927598, 55724155, 651975883, 862137545, 170869857, 530334799, 694646095, 352157364, 224385528, 939149630, 978269362, 926378951, 546831748, 845111325, 994141740, 815048225, 830332123, 641314943, 638786344, 434094336, 852736198, 816634230, 916705075, 861328728, 366769101, 790642155, 368711975, 951761537, 977822282, 661539005, 71614097, 744061860, 62163743, 145344275, 535326302, 178303820, 95203011, 670421264, 617967693, 369169584, 319597496, 986047128, 989169946, 693142185, 335781063, 172175839, 890832452, 472330803, 203551046, 990013653, 211904680, 641172634, 466259772, 359557014, 574322216, 680630877, 515350346, 139442128, 916928787, 969552063, 366068458, 930194601, 9006553, 220443760, 532892072, 437236989, 295923284, 564095803, 763995795, 16326694, 533106704, 576701926, 387205943, 396828007, 929827297, 762373229, 217078470, 704268816, 319780831, 937414845, 532696305, 951640584, 478111946, 955843301, 306446427, 541323882, 895722289, 948905651, 593043096, 631236103, 912284881, 437089447, 449574212, 521097194, 975383627, 763237999, 699164122, 831125285, 268209545, 349926327, 158966645, 137153166, 438852986, 555110089, 230244694, 891455274, 374629684, 409899912, 18151567, 132892822, 256734163, 963545027, 460850974, 646077089, 558920794, 88634262, 484568090, 203594791, 80429462, 911638532, 106691579, 338994747, 781279670, 125118659, 234575399, 136446481, 907952931, 992804135, 267957000, 899318861, 16252913, 337928035, 830424211, 635059727, 676666426, 569287084, 432103141, 573226035, 225453638, 166150386, 824978565, 581617422, 564527779, 171318774, 300504378, 772976084, 862844630, 75101716, 278318124, 112846771, 586669722, 724871025, 4131404, 503456525, 398893929, 225614993, 449281046, 473673075, 48961741, 377468265, 517123331, 264261731, 750598090, 661211396, 88046620, 84110030, 376883334, 861329879, 43523489, 703218618, 248542521, 753879447, 508389790, 528898157, 829851978, 886307203, 647057915, 9584867, 779799169, 552653312, 395501216, 130704959, 624000746, 654263357, 279634057, 493673546, 27594460, 574105802, 561833122, 433158808, 537542719, 212639830, 587530020, 848767930, 906085263, 170547188, 208087854, 226881991, 781042182, 660311511, 586277623, 682666398, 301326900, 954201850, 682812063, 652507690, 258497225, 512152463, 878166967, 159557159, 651765877, 84979507, 610233203, 513167616, 599531424, 252222321, 176671472, 303779830, 539775036, 378672681, 80774720, 287798453, 290552056, 871656168, 925374431, 219543603, 506275891, 994818911, 459909432, 519969740, 473993724, 337005182, 655156631, 757222306, 805291602, 152878703, 217018773, 860875287, 919222904, 70013140, 895221449, 252351697, 538984321, 995570756, 240785295, 428890163, 918682160, 969417676, 818840124, 568384670, 630418625, 515106461, 324615501, 51292044, 785966130, 965786230, 52173339, 806153778, 469187436, 27780600, 517026107, 698684323, 578437460, 193553123, 174480601, 273787298, 869075679, 590761364, 586344552, 935064059, 642866674, 513581033, 200739662, 983768203, 712305116, 114887321, 504958326, 433519379, 579163064, 964588961, 748477314, 321333836, 536747865, 94494501, 178213167, 665961806, 39053479, 602980138, 71285827, 261879640, 115120850, 726853977, 339416582, 500641598, 634705501, 668460580, 662989954, 364849598, 904192482, 402031401, 137072236, 236880137, 862878542, 181530210, 439916296, 467012552, 629085393, 182850875, 715784597, 249350536, 782508191, 559356395, 306030338, 544919959, 886281253, 945749999, 490169041, 820164428, 516522715, 257043436, 59684989, 183408620, 277054217, 313126504, 607427585, 496982990, 829660424, 367890638, 244970971, 398497579, 405448312, 823000082, 413453379, 515901959, 804562716, 569825236, 8723649, 322623744, 287534770, 970695005, 106112128, 949266932, 466781302, 974448704, 894951300, 886242583, 828821881, 802017474, 364438433, 966035795, 968687626, 600381236, 427857982, 866929262, 606697550, 452471906, 751230797, 378834800, 711983467, 237650068, 756541670, 94686125, 104644469, 847369501, 347231116, 980591677, 307407306, 442304823, 278020205, 598203340, 982023366, 197061084, 800045495, 969325254, 206789185, 537962917, 935124117, 741096416, 704999505, 859023372, 121260854, 967677917, 542725463, 798866847, 327810442, 25091191, 80764589, 523948031, 405218975, 961804975, 772242918, 450041260, 741412431, 232953026, 842912926, 284804106, 414465153, 696707407, 997240463, 195778646, 852311892, 484891321, 341003582, 250183421, 441985216, 91695764, 434499740, 17253880, 799545775, 286593502, 934930524, 643355875, 227053044, 126723893, 153229487, 665352848, 702187835, 909304482, 901643662, 493884094, 190144865, 927748735, 609443632, 131823881, 503907593, 151099789, 632967892, 892509072, 596878359, 198811037, 230640269, 935010212, 5780219, 306276738, 407581877, 827198677, 822727481, 378189825, 952411086, 579463448, 649165414, 961323203, 416488201, 184867909, 244724071, 300217953, 986692017, 755551117, 190796784, 285227414, 616361071, 142872634, 276531026, 933143021, 599396017, 508243370, 825299249, 788595158, 125949481, 977174114, 621670150, 382855997, 216213004, 584362684, 558316622, 429059714, 595327133, 510390963, 316161954, 279446500, 676233555, 704070065, 916944793, 194907979, 428016067, 455005386, 199723391, 690789585, 562957656, 180316561, 503478846, 381689610, 157676948, 783578182, 77336874, 976040754, 803882580, 913087522, 264919063, 928081105, 340709252, 629887759, 819755306, 802985745, 291659501, 70152675, 631406643, 364476151, 511591335, 281169834, 458006058, 102420822, 396734050, 30789151, 610156182, 771317428, 266530402, 168496132, 394551339, 632296852, 317631611, 351484152, 87005457, 82628611, 351324895, 636869285, 526735466, 132547819, 980780033, 31230090, 431078796, 822251521, 830443147, 745664717, 20039937, 289286591, 787392343, 479752784, 60005681, 791125046, 535083242, 7202005, 998241772, 120873705, 236398071, 1035599, 618978179, 390796213, 40605533, 902055093, 809218081, 232879910, 479891544, 861307345, 565750738, 229263219, 364329051, 820935638, 744968936, 741638655, 322783722, 935147977, 18164383, 158135336, 321131418, 27742180, 163715636, 82604833, 540400758, 101706314, 314557281, 221378949, 904673377, 201691799, 427777403, 735589351, 207683125, 350807693, 639269688, 836545177, 141129378, 3043682, 673148742, 557789472, 240775676, 920669577, 158274324, 151501610, 407566485, 105439318, 245644272, 222057993, 852582274, 246446264, 348086289, 663714847, 967142273, 512353724, 666498817, 699549258, 900333690, 906886792, 19204781, 484714259, 136902865, 966085363, 507191523, 550454982, 707727834, 990280920, 33164727, 220057887, 400096578, 418304735, 468879680, 476425716, 85127431, 994346401, 122820599, 583320711, 103986412, 301388391, 228169293, 262098781, 877292426, 174932738, 773404865, 68664178, 112708287, 906729859, 886424786, 555501237, 179762913, 219710227, 79313583, 546658888, 38410627, 754533243, 586976684, 752927696, 618467442, 589610623, 360027709, 79593627, 496901715, 855952925, 767164105, 506717960, 628184685, 223746938, 191186405, 850614046, 676293560, 967822876, 233746881, 663751779, 610899962, 481957097, 695247438, 363602317, 516877332, 907427265, 979391389, 567686863, 737762897, 317522286, 237723771, 85025202, 770643684, 799107777, 505284487, 898307172, 254636746, 414803140, 496574416, 572585703, 505008576, 751365527, 39884260, 222027496, 751631422, 83034020, 170989205, 241619648, 538863315, 55387343, 926537832, 280040427, 369258897, 620822479, 822902661, 70422304, 67059039, 322647294, 105338748, 756072375, 770557687, 492010126, 258269926, 831315846, 901498727, 812341617, 495897012, 990488583, 358612510, 165281542, 327589049, 977521939, 771241011, 858351225, 74814020, 757116496, 41895748, 717075171, 873292151, 915490234, 849494982, 852730591, 391392433, 771675385, 654211919, 419091559, 679172465, 642388070, 858899661, 727591590, 112472031, 789886185, 732498106, 204245075, 913598611, 925276361, 36237869, 36237869, 925276361, 913598611, 204245075, 732498106, 789886185, 112472031, 727591590, 858899661, 642388070, 679172465, 419091559, 654211919, 771675385, 391392433, 852730591, 849494982, 915490234, 873292151, 717075171, 41895748, 757116496, 74814020, 858351225, 771241011, 977521939, 327589049, 165281542, 358612510, 990488583, 495897012, 812341617, 901498727, 831315846, 258269926, 492010126, 770557687, 756072375, 105338748, 322647294, 67059039, 70422304, 822902661, 620822479, 369258897, 280040427, 926537832, 55387343, 538863315, 241619648, 170989205, 83034020, 751631422, 222027496, 39884260, 751365527, 505008576, 572585703, 496574416, 414803140, 254636746, 898307172, 505284487, 799107777, 770643684, 85025202, 237723771, 317522286, 737762897, 567686863, 979391389, 907427265, 516877332, 363602317, 695247438, 481957097, 610899962, 663751779, 233746881, 967822876, 676293560, 850614046, 191186405, 223746938, 628184685, 506717960, 767164105, 855952925, 496901715, 79593627, 360027709, 589610623, 618467442, 752927696, 586976684, 754533243, 38410627, 546658888, 79313583, 219710227, 179762913, 555501237, 886424786, 906729859, 112708287, 68664178, 773404865, 174932738, 877292426, 262098781, 228169293, 301388391, 103986412, 583320711, 122820599, 994346401, 85127431, 476425716, 468879680, 418304735, 400096578, 220057887, 33164727, 990280920, 707727834, 550454982, 507191523, 966085363, 136902865, 484714259, 19204781, 906886792, 900333690, 699549258, 666498817, 512353724, 967142273, 663714847, 348086289, 246446264, 852582274, 222057993, 245644272, 105439318, 407566485, 151501610, 158274324, 920669577, 240775676, 557789472, 673148742, 3043682, 141129378, 836545177, 639269688, 350807693, 207683125, 735589351, 427777403, 201691799, 904673377, 221378949, 314557281, 101706314, 540400758, 82604833, 163715636, 27742180, 321131418, 158135336, 18164383, 935147977, 322783722, 741638655, 744968936, 820935638, 364329051, 229263219, 565750738, 861307345, 479891544, 232879910, 809218081, 902055093, 40605533, 390796213, 618978179, 1035599, 236398071, 120873705, 998241772, 7202005, 535083242, 791125046, 60005681, 479752784, 787392343, 289286591, 20039937, 745664717, 830443147, 822251521, 431078796, 31230090, 980780033, 132547819, 526735466, 636869285, 351324895, 82628611, 87005457, 351484152, 317631611, 632296852, 394551339, 168496132, 266530402, 771317428, 610156182, 30789151, 396734050, 102420822, 458006058, 281169834, 511591335, 364476151, 631406643, 70152675, 291659501, 802985745, 819755306, 629887759, 340709252, 928081105, 264919063, 913087522, 803882580, 976040754, 77336874, 783578182, 157676948, 381689610, 503478846, 180316561, 562957656, 690789585, 199723391, 455005386, 428016067, 194907979, 916944793, 704070065, 676233555, 279446500, 316161954, 510390963, 595327133, 429059714, 558316622, 584362684, 216213004, 382855997, 621670150, 977174114, 125949481, 788595158, 825299249, 508243370, 599396017, 933143021, 276531026, 142872634, 616361071, 285227414, 190796784, 755551117, 986692017, 300217953, 244724071, 184867909, 416488201, 961323203, 649165414, 579463448, 952411086, 378189825, 822727481, 827198677, 407581877, 306276738, 5780219, 935010212, 230640269, 198811037, 596878359, 892509072, 632967892, 151099789, 503907593, 131823881, 609443632, 927748735, 190144865, 493884094, 901643662, 909304482, 702187835, 665352848, 153229487, 126723893, 227053044, 643355875, 934930524, 286593502, 799545775, 17253880, 434499740, 91695764, 441985216, 250183421, 341003582, 484891321, 852311892, 195778646, 997240463, 696707407, 414465153, 284804106, 842912926, 232953026, 741412431, 450041260, 772242918, 961804975, 405218975, 523948031, 80764589, 25091191, 327810442, 798866847, 542725463, 967677917, 121260854, 859023372, 704999505, 741096416, 935124117, 537962917, 206789185, 969325254, 800045495, 197061084, 982023366, 598203340, 278020205, 442304823, 307407306, 980591677, 347231116, 847369501, 104644469, 94686125, 756541670, 237650068, 711983467, 378834800, 751230797, 452471906, 606697550, 866929262, 427857982, 600381236, 968687626, 966035795, 364438433, 802017474, 828821881, 886242583, 894951300, 974448704, 466781302, 949266932, 106112128, 970695005, 287534770, 322623744, 8723649, 569825236, 804562716, 515901959, 413453379, 823000082, 405448312, 398497579, 244970971, 367890638, 829660424, 496982990, 607427585, 313126504, 277054217, 183408620, 59684989, 257043436, 516522715, 820164428, 490169041, 945749999, 886281253, 544919959, 306030338, 559356395, 782508191, 249350536, 715784597, 182850875, 629085393, 467012552, 439916296, 181530210, 862878542, 236880137, 137072236, 402031401, 904192482, 364849598, 662989954, 668460580, 634705501, 500641598, 339416582, 726853977, 115120850, 261879640, 71285827, 602980138, 39053479, 665961806, 178213167, 94494501, 536747865, 321333836, 748477314, 964588961, 579163064, 433519379, 504958326, 114887321, 712305116, 983768203, 200739662, 513581033, 642866674, 935064059, 586344552, 590761364, 869075679, 273787298, 174480601, 193553123, 578437460, 698684323, 517026107, 27780600, 469187436, 806153778, 52173339, 965786230, 785966130, 51292044, 324615501, 515106461, 630418625, 568384670, 818840124, 969417676, 918682160, 428890163, 240785295, 995570756, 538984321, 252351697, 895221449, 70013140, 919222904, 860875287, 217018773, 152878703, 805291602, 757222306, 655156631, 337005182, 473993724, 519969740, 459909432, 994818911, 506275891, 219543603, 925374431, 871656168, 290552056, 287798453, 80774720, 378672681, 539775036, 303779830, 176671472, 252222321, 599531424, 513167616, 610233203, 84979507, 651765877, 159557159, 878166967, 512152463, 258497225, 652507690, 682812063, 954201850, 301326900, 682666398, 586277623, 660311511, 781042182, 226881991, 208087854, 170547188, 906085263, 848767930, 587530020, 212639830, 537542719, 433158808, 561833122, 574105802, 27594460, 493673546, 279634057, 654263357, 624000746, 130704959, 395501216, 552653312, 779799169, 9584867, 647057915, 886307203, 829851978, 528898157, 508389790, 753879447, 248542521, 703218618, 43523489, 861329879, 376883334, 84110030, 88046620, 661211396, 750598090, 264261731, 517123331, 377468265, 48961741, 473673075, 449281046, 225614993, 398893929, 503456525, 4131404, 724871025, 586669722, 112846771, 278318124, 75101716, 862844630, 772976084, 300504378, 171318774, 564527779, 581617422, 824978565, 166150386, 225453638, 573226035, 432103141, 569287084, 676666426, 635059727, 830424211, 337928035, 16252913, 899318861, 267957000, 992804135, 907952931, 136446481, 234575399, 125118659, 781279670, 338994747, 106691579, 911638532, 80429462, 203594791, 484568090, 88634262, 558920794, 646077089, 460850974, 963545027, 256734163, 132892822, 18151567, 409899912, 374629684, 891455274, 230244694, 555110089, 438852986, 137153166, 158966645, 349926327, 268209545, 831125285, 699164122, 763237999, 975383627, 521097194, 449574212, 437089447, 912284881, 631236103, 593043096, 948905651, 895722289, 541323882, 306446427, 955843301, 478111946, 951640584, 532696305, 937414845, 319780831, 704268816, 217078470, 762373229, 929827297, 396828007, 387205943, 576701926, 533106704, 16326694, 763995795, 564095803, 295923284, 437236989, 532892072, 220443760, 9006553, 930194601, 366068458, 969552063, 916928787, 139442128, 515350346, 680630877, 574322216, 359557014, 466259772, 641172634, 211904680, 990013653, 203551046, 472330803, 890832452, 172175839, 335781063, 693142185, 989169946, 986047128, 319597496, 369169584, 617967693, 670421264, 95203011, 178303820, 535326302, 145344275, 62163743, 744061860, 71614097, 661539005, 977822282, 951761537, 368711975, 790642155, 366769101, 861328728, 916705075, 816634230, 852736198, 434094336, 638786344, 641314943, 830332123, 815048225, 994141740, 845111325, 546831748, 926378951, 978269362, 939149630, 224385528, 352157364, 694646095, 530334799, 170869857, 862137545, 651975883, 55724155, 727927598, 922017385, 277538747, 754390240, 956374818, 5263650, 500828541, 698510435, 877802212, 368069785, 862957686, 798274501, 424648801, 451027053, 381953425, 575390764, 675921972, 838651894, 688534195, 808345988, 713291201, 482682641, 832320393, 860883501, 520426354, 203587790, 427519524, 917271247, 702467325, 957118432, 619500786, 334864060, 303521415, 8183901, 625282961, 351134754, 382806948, 495313519, 385724573, 388522531, 885623367, 672088908, 858624145, 644066108, 344683733, 750600633, 532884249, 520687545, 491388780, 679010750, 234093935, 859638654, 377834464, 695781838, 105774286, 834320583, 586737444, 857037091, 139633798, 918349137, 536588169, 253191046, 546350489, 121829331, 757038906, 508253661, 40128510, 966163850, 124522016, 748757739, 6552237, 931040895, 23296780, 699039470, 720826314, 747539093, 369857008, 403747228, 155971915, 628005785, 960235936, 869754015, 382744895, 803122030, 213624405, 532501116, 100796579, 676203513, 551645676, 273473791, 774510531, 681651118, 399551881, 217034215, 894236953, 851208240, 128118757, 359092633, 200349822, 14751575, 536018544, 229223963, 767732142, 155809932, 623828552, 640898931, 338202746, 845179158, 881792605, 929559236, 434588404, 472763922, 911929565, 531590400, 204346856, 884218045, 775431628, 375663130, 250057665, 678848005, 837816501, 130513940, 750737627, 296132431, 256557095, 393206952, 473900142, 132806340, 308065381, 523447730, 927359760, 887923311, 989016621, 751163029, 791038516, 302702483, 607633886, 713112634, 32169768, 336094359, 890645023, 718743090, 241281686, 140789828, 681064226, 727681602, 871549241, 353757600, 832079411, 293072286, 686705802, 859696555, 989499348, 465966626, 382611869, 539723637, 258704093, 308303991, 849466218, 162193770, 757247011, 482526769, 148605683, 136387085, 612697845, 780728599, 292077122, 610598501, 263050708, 726955334, 496041851, 115729783, 273636410, 595636850, 66427338, 123796530, 650488543, 568035466, 450949238, 163410824, 155633156, 481395913, 923431733, 421378488, 29176064, 907033763, 83567666, 289473369, 997933307, 412776593, 328621519, 117924764, 766009164, 7890746, 912663275, 565858664, 228571644, 909595787, 496233161, 331182938, 999912738, 905872747, 765512650, 666188809, 285201441, 800632961, 581766380, 693781971, 589929920, 231851459, 761783597, 422679517, 424972520, 143474530, 484081806, 82858624, 288512507, 533057901, 727826538, 476528476, 110009605, 817946762, 389817399, 910766051, 299682102, 283966695, 188278373, 147563981, 978142673, 913341365, 47049378, 504972518, 778520341, 910503032, 654428498, 959703852, 351536040, 293727913, 495790369, 223526684, 997193694, 270960861, 345088898, 828029579, 843414556, 945008995, 153577383, 712423011, 696128274, 398370231, 867725344, 693070752, 559280571, 386826339, 235467528, 336578532, 995654571, 934264153, 383174388, 181867903, 410329782, 784153110, 119227042, 565132702, 953631355, 981075602, 967692616, 559901773, 625929159, 810966034, 922935613, 671079056, 323985195, 339157860, 329336992, 1997001, 1999, 1 }
{1}
{1000000}
Returns: {386106063 }
{1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 }
{1}
{1000000}
Returns: {904182129 }