// c=2401 
int sinp[5691]={
8488,2122,1396,862,5968,1492,880,220,2944,736,184,46,2890,1684,916,772,
13834,5788,4570,2314,1468,5806,7750,5860,3412,1240,310,5032,1258,1072,268,1576,
394,748,9208,2302,12286,31240,7810,13096,3274,1828,7264,1816,454,1756,3592,898,
5050,2494,19576,4894,272320,68080,17020,144082,142858,54172,27898,11062,8242,4840,1210,1054,
3112,778,892,13744,3436,4276,1402,1126,2134,2626,1942,2482,8290,3382,4048,1012,
790,17524,3886,6130,4762,2386,5374,18118,11692,4192,1048,262,1648,412,2752,688,
172,1762,1546,1180,1844,4454,6614,13256,3314,3662,13904,3476,13358,7364,1982,2618,
3284,1514,1478,6284,7886,12878,27026,10736,2684,2258,1448,362,1154,1034,3014,20168,
5042,2492,2204,5714,2744,686,2018,1358,25406,15794,6524,3338,9044,2324,7334,5744,
1436,6074,4742,26828,14174,9476,2378,1892,956,1772,3512,878,6398,5102,26126,23696,
5924,1712,428,5156,1568,392,98,638,1862,104138,2558,2942,3158,8882,3932,11222,
19088,4772,1496,374,48896,12224,3056,764,1718,4484,1442,1142,8174,4124,10448,2612,
5218,29374,22462,18088,4522,4048,1012,7648,1912,478,4192,1048,262,700,39256,9814,
4282,14794,9826,21652,7594,5776,1444,4954,3820,1318,1096,274,5236,7882,5938,23062,
9250,5890,7828,3706,5542,2680,670,2464,616,154,1948,48002,28508,5948,1718,1538,
2372,2174,1418,6692,8582,7586,5774,2768,692,4238,2192,548,5666,4694,2384,596,
18518,5300,4724,4856,1214,1058,2102,1646,1220,1850,4424,1106,3902,2066,6128,1532,
890,3614,1958,26860,50674,19606,19408,4852,1738,2920,730,3676,2542,2938,1882,1792,
448,112,28,1516,3232,808,202,2272,568,142,1588,9874,4306,2218,7456,1864,
466,778,54074,20882,11000,2750,8390,6230,9104,2276,4610,2354,21026,10082,3524,5654,
6788,2012,9146,4034,2192,548,2306,1706,1244,5330,57152,14288,3572,1274,1082,1010,
3308,4250,2198,15860,3578,1946,1334,2300,5378,2570,1568,392,98,1418,1136,284,
2990,4496,1124,25742,24590,23618,7700,2048,512,128,32,8,2,1058,4298,2216,
554,812,7598,6278,5042,21416,5354,2612,1094,2126,4664,1166,3854,6122,2900,1148,
5636,1850,1298,2738,9038,10496,2624,656,164,2336,584,146,2252,2144,536,134,
1586,2836,242398,91504,22876,4894,2440,610,1996,3322,9118,4024,1006,982,50752,12688,
3172,2404,2188,1366,24508,5200,1300,23488,5872,1468,880,220,646,1240,310,10900,
6208,1552,388,5608,1402,6688,1672,418,3808,952,238,694,7066,29320,7330,4228,
423520,105880,26470,6982,3022,1738,10420,17866,13606,11116,6616,1654,2890,4588,3160,790,
6454,3472,868,1756,934,2998,7588,3646,1972,7990,6886,2662,1960,490,3286,14950,
4552,1138,2152,538,21754,32446,12772,5104,1276,844,97336,24334,9730,9370,39250,23590,
81988,22924,4282,18944,4736,1184,296,74,1556,1952,488,122,27098,20366,6788,10484,
9548,2396,3086,1928,482,3284,2438,1520,380,2276,6362,7244,1964,974,1334,1106,
10088,2522,4814,2414,1910,1322,2258,9812,4274,8354,9926,4328,1082,2198,1430,1142,
1034,2096,524,704,176,44,614,836,3230,43652,26036,11456,2864,716,740,5390,
2576,644,9164,2324,2168,542,11060,10682,6248,1562,8840,2210,4742,2384,596,1682,
17378,17540,13076,5192,1298,87362,56384,14096,3524,4364,1424,356,4466,10574,4034,166094,
47774,39458,36170,21860,14672,3668,2546,8144,2036,2234,2684,2762,3068,2738,6896,1724,
5492,2900,2330,43622,16964,10034,21338,31094,12266,8414,9224,2306,69866,40814,10010,13538,
14300,4196,28628,9566,64430,27494,10916,18350,692,7568,1892,4502,2294,1466,2360,590,
1226,2204,1370,6110,7766,3518,3680,920,230,11032,2758,4966,3838,6118,4324,1858,
8224,2056,514,4228,21172,4576,1144,286,2506,1546,1186,2698,1618,1516,1942,2608,
652,7558,597568,149392,37348,4612,5362,13732,2992,748,1726,4336,1084,2938,1708,1996,
2164,1012,796,-207884,-38372,16114,12742,11284,2722,3346,2002,1624,406,1744,436,688,
172,1564,2326,2824,706,11302,17116,12424,3106,3508,1264,316,2866,3616,904,226,
35602,11074,16972,7504,1876,958,3688,922,952,238,7396,2182,9508,2398,24196,17944,
4486,-73046,-26786,68314,26224,6556,14218,5938,4588,2806,3094,3256,814,5956,3454,5794,
4642,4156,4234,2194,1678,7252,1966,7414,5686,4714,2374,5728,1432,358,1894,2542,
13072,3268,20632,5158,7726,14704,3676,-37694,-93944,-23486,-189902,-84296,-21074,-21746,-135326,-53192,
-13298,-37298,-108038,-39908,-61598,-29306,-180686,-146324,-39638,-14258,-29858,-51554,-54308,-46802,-28946,-82172,
-58682,-33914,-52382,-102908,-28658,-39098,-85412,-49124,-168518,-62588,-121862,-45092,-39998,-69374,-41186,-36434,
-58532,-32114,-45182,-71174,-26084,-298784,-74696,-18674,-89786,-36002,-64676,-35042,-62678,-22898,-60626,-71804,
-117164,-21362,-76028,-48164,-49466,-28082,868118,198530,75056,18764,16808,4202,3974,23936,5984,1496,
374,3200,800,200,50,626,842,4442,2312,578,824,206,1634,1220,836,764,
7928,1982,2582,7214,5576,1394,1130,2678,5144,1286,4306,6520,1630,1522,3736,934,
958,2872,718,2506,12352,3088,772,60142,32086,12640,3160,790,904,226,5224,1306,
2254,3154,5548,1648,412,2290,4222,2296,574,4954,349798,131782,50026,22852,14536,3634,
46534,18058,14656,3664,916,9436,6898,7138,13972,12082,2434,35896,8974,59656,14914,36328,
9082,6628,4870,177754,101506,301684,86368,21592,5398,2632,658,3442,9910,4324,6178,20830,
6922,38596,29362,32638,8290,15430,6394,5116,19652,9452,76682,67592,16898,7268,3566,1946,
6728,1682,2468,2216,554,3128,782,902,1598,1208,302,722,1928,482,3056,764,
752,188,644,1886,1316,1892,2054,5564,1652,9596,2408,602,5708,1868,1328,332,
1112,278,2324,3872,968,242,1658,17372,3866,7988,24446,9776,2444,43616,10904,2726,
1832,458,3278,1838,1298,2252,1382,1454,1154,15994,8956,4042,19972,4354,2242,1450,
1474,1162,1654,73990,1246798,792226,297694,168976,42244,8530,3808,952,238,1852,2044,2098,
1396,10216,2554,3286,6190,1900,9838,5902,13516,8596,22750,14320,3580,2530,1558,6922,
2680,670,12754,5392,1348,862,2008,502,16918,26362,13330,5608,1402,2800,700,1720,
430,10162,4420,1438,2332,25804,13780,3004,2368,592,148,2746,7498,6514,3052,188686,
277462,267694,98974,57196,62326,190144,47536,11884,35488,8872,2218,1690,15460,3508,5032,1258,
1420,3490,1918,2602,1798,39358,23662,11734,2476,4732,2854,5302,18100,7846,9514,3742,
3628,7246,7822,10276,2536,634,3256,814,3880,970,24346,29602,11710,8110,3976,994,
982,5254,9766,11134,7786,2500,1078,8170,3364,1240,310,11224,2806,28060,23338,7630,
6658,3106,1774,20204,7208,1802,1286,2360,590,3818,2042,1376,344,86,1574,4238,
10322,24902,12260,2792,698,872,218,692,740,1172,830,8972,7400,1850,1304,326,
1892,1334,2276,1388,1916,5696,1424,356,1118,3842,3224,806,3752,938,962,2618,
1592,398,5462,4598,4112,1028,2432,608,152,38,3266,3590,3062,3248,812,1754,
1268,848,212,650,854,2006,2654,5138,5942,4868,10478,146402,218816,54704,13676,5372,
4484,3158,3302,24572,16148,3638,3572,1280,320,80,20,614,6056,1514,1178,1052,
5624,1406,3674,1988,11780,3710,5132,2738,1838,18530,24092,7292,30734,43856,10964,2666,
1610,1214,16748,6236,26468,4790,4220,16802,14498,25010,8102,316988,136628,26228,5528,1382,
2236,1030,7486,3418,61594,41764,8356,14776,3694,1996,2524,1084,814,916,5542,4552,
1138,24658,43936,10984,2746,5218,4462,2284,1390,1132,1228,18922,100474,87676,17050,13576,
3394,3436,1552,388,1636,1660,922,3370,14452,8998,6010,7972,4936,1234,7366,11194,
12346,13318,19150,7792,1948,976,244,3004,1174,30920,7730,9428,13424,3356,5000,1250,
87350,33368,8342,3740,8294,3722,3410,14882,36320,9080,2270,3452,1556,109220,33272,8318,
65426,66902,25700,13748,5396,14912,3728,932,3086,5030,2498,8132,2480,620,728,182,
680,170,5648,1412,5864,1466,2354,4892,5486,4532,2804,2318,7610,5810,7808,1952,
488,122,1598,1520,380,1124,3380,11984,2996,2372,5768,1442,20570,13100,3068,1502,
121346,306482,261500,37844,15224,3806,3938,22406,9014,3992,998,986,2084,3172,3502,12802,
4672,1168,292,4144,1036,1822,9262,13594,5710,7726,12136,3034,1750,4360,1090,1378,
399964,146584,36646,22144,5536,1384,346,742,1948,3730,3016,754,7240,1810,7942,5998,
5554,7456,1864,466,2416,604,3934,23926,11854,12910,13864,3466,1912,478,30766,34006,
24772,21820,28786,10156,6466,2890,1696,424,106,652,1714,5026,2476,4036,5674,2740,
1126,2164,1018,994,5188,7060,1936,484,6754,7102,85972,16732,79246,69772,21154,5878,
4240,1060,47794,34186,13432,3358,98284,22492,9910,5068,2956,2362,1498,1174,19588,3826,
5644,3118,7762,5494,4078,5374,11776,2944,736,184,46,4846,5860,22468,10048,2512,
628,730,886,2134,15338,40070,36722,14384,3596,4430,3632,908,3296,824,206,1850,
16904,4226,2198,12260,2912,728,182,38504,9626,6284,5564,3098,3530,2066,1388,4370,
2252,11036,137086,60058,41266,57214,26362,12886,5446,2656,664,166,676,16966,6976,1744,
436,6424,1606,1216,304,76,628,71332,148636,21976,5494,2674,6892,1906,5236,4762,
6274,16768,4192,1048,262,712,178,5212,6238,19306,12394,8506,65476,30538,18712,4678,
2368,592,148,1576,394,1756,20278,8218,26488,6622,12826,22114,21574,8704,2176,544,
136,34,2944,736,184,46,3142,1792,448,112,28,1078,1018,2194,9808,2452,
2224,556,718,1276,2494,7408,1852,8368,2092,1006,4978,8488,2122,2728,682,1918,
3034,221482,126118,47908,3778,3994,5788,1888,472,118,658,10108,6436,11266,15508,5896,
1474,5734,2764,1132,826,13852,3022,1924,8668,4114,15904,3976,994,3754,3646,3436,
1258,2242,1730,2510,1556,9584,2396,1064,266,8612,3584,896,224,56,14,620,
2756,2312,578,1862,3014,3500,1568,392,98,1592,398,764,758,50116,10012,4354,
2248,562,826,3760,940,5272,1318,7402,4630,4918,7072,1768,442,1516,3562,5380,
1624,406,3064,766,2092,3028,37834,2686,2902,11986,5110,7234,3328,832,208,52,
1084,9664,2416,604,1708,9070,6640,1660,3922,2086,10132,28132,5890,2824,706,880,
220,1600,400,100,634,2950,13714,5758,4198,10312,2578,1582,2428,2326,6352,1588,
1300,4372,5344,1336,334,1726,2488,622,1888,472,118,3022,3238,7438,5722,203404,
302398,110902,96496,24124,23614,282364,61330,68576,17144,4286,66122,25412,4652,4496,1124,8222,
12176,3044,2876,7532,120146,60614,35636,7298,239702,102896,25724,761588,143414,94028,27986,16874,
6944,1736,434,2438,2912,728,182,3158,3104,776,194,1466,1166,19004,50162,23396,
11552,2888,722,4424,1106,17726,63284,12482,4058,2138,1418,1148,22244,6926,11408,2852,
8108,3482,1922,3362,2024,506,806,1994,1364,872,218,698,878,3668,1304,326,
1724,6098,7826,-17122,3038,8852,2276,2714,1634,1538,4724,1502,6908,14684,9122,3644,
5192,1298,16088,4022,16574,667238,376862,362096,90524,31454,44816,11204,2654,8366,9986,14846,
64202,24692,5246,18086,11714,3896,974,3428,2834,19184,4796,8042,3632,908,1796,5588,
1664,416,104,26,626,2498,1952,488,122,662,3848,962,1628,3614,7802,3542,
3266,2114,22868,4904,1226,1076,818,4442,2282,1472,368,92,2966,15782,10418,-42214,
-15214,-16906,-52744,-13186,-14338,-41692,-17266,-25006,-31486,-22738,-16258,-89806,-62158,-48334,-18886,-6466,
-11074,-25732,-16498,-51976,-12994,-24196,-24682,-37318,-13378,-20146,-18418,-13762,-15202,-20362,-15106,-27598,
-29404,-21358,-23278,-18442,-31972,-22126,-27652,20782,8410,12358,5176,1294,1102,1030,3082,5530,
12010,10414,4522,9130,13504,3376,844,1198,1066,7660,6394,20272,5068,1792,448,112,
28,622,850,2020,2110,1408,352,88,22,6718,3136,784,196,22214,8948,13250,
14114,11750,5024,1256,314,218558,107330,93494,35678,13586,14222,718994,914996,188492,35960,8990,
6032,1508,9578,6932,3494,1928,482,4064,1016,254,6824,1706,2504,626,6332,3092,
2414,1760,440,110,1112,278,722,6782,69674,40736,10184,2546,12980,4514,4874,4286,
14618,6458,21470,21998,7268,23186,34364,9488,2372,22570,9082,4024,1006,19918,30232,7558,
4966,8776,2194,5158,9370,4132,12628,2986,1738,1270,2260,1042,28666,11368,2842,1684,
934,60694,35686,30646,18784,4696,1174,2206,4798,15058,4606,22294,14086,7720,1930,1342,
3670,3610,1972,988,9448,2362,1504,376,94,3016,754,1294,5614,22708,4876,2806,
3124,1204,844,18334,18406,14932,3418,1900,2080,520,130,2296,574,3184,796,44326,
47620,12286,153514,58186,22438,211996,72928,18232,4558,10792,2698,1630,4312,1078,2152,538,
820,772,2404,1420,2176,544,136,34,8530,3040,760,190,2824,706,4402,2320,
580,20194,31714,8128,2032,508,8254,8044,3808,952,238,7072,1768,442,784,196,
4042,2134,2746,1648,412,5284,3454,14456,3614,3098,9980,19610,8972,17540,3908,1352,
338,746,15272,3818,10406,146384,36596,6230,8198,14780,4898,2456,614,9332,2396,2222,
2798,3122,1790,13166,8954,3602,1970,1358,2312,578,836,776,194,692,1748,11762,
5030,41408,10352,2588,2276,1046,3824,956,1982,4544,1136,284,1628,2006,4634,159668,
18272,4568,1142,3548,2546,1574,21068,42866,16694,106904,26726,58904,14726,35378,13886,14078,
18206,24560,6140,8468,12154,8386,60496,15124,4972,1552,388,14422,6028,1750,1276,1264,
316,26584,6646,3112,778,2110,1678,8698,6442,1580,4496,1124,1868,7430,3176,794,
18608,4652,5468,1646,1238,7790,3542,12776,3194,9086,4028,1376,344,86,67352,16838,
5822,2804,6818,10814,4676,7412,9734,3824,956,800,200,50,23612,5048,1262,1094,
1394,2336,584,146,1634,2474,5036,49226,26108,5516,1862,1610,8870,14108,3266,13622,
25286,8198,3392,848,212,3038,1760,440,110,662,3932,1358,1130,3902,2084,2138,
358034,202946,297932,32858,489752,122438,35522,343238,97622,149540,43610,256586,243014,69434,106088,26522,
172652,233132,207014,175652,50954,80474,137894,105962,92354,140468,235850,98198,75956,553274,672560,168140,
241682,137498,303956,131180,242312,60578,253544,63386,164618,3064,766,1984,496,124,1588,11596,
16186,14242,5962,2764,56278,86896,21724,10174,7276,9652,4288,1072,268,5032,1258,1702,
10354,4504,1126,14026,7678,5872,1468,1966,7438,4924,2938,7096,1774,5518,4114,2164,
4684,3214,3142,5602,2722,1642,3316,8194,3694,5638,7708,3412,24394,7948,6304,1576,
394,1198,2074,7258,5314,2614,8356,2188,3874,33466,19504,4876,5008,1252,856,214,
93244,27778,11038,7762,3532,3952,988,8572,3964,2668,6736,1684,1324,9784,2446,2818,
1678,2494,2956,4198,3722,2018,7238,7886,14126,22934,14456,3614,5126,16292,3380,1256,
314,740,1760,440,110,7400,1850,1316,1274,1100,2138,1424,356,2750,5276,13214,
18182,312104,78026,29882,11828,2840,710,5780,1706,1262,5612,3134,5600,1400,350,4532,
1472,368,92,5114,2540,2270,83846,56210,16898,18092,6644,1868,25364,5378,11126,7814,
12998,14528,3632,908,3110,2948,8030,36704,9176,2294,2846,4640,1160,290,2378,1514,
1190,3124,4276,4762,6976,1744,436,3142,3310,1864,466,3934,2098,4636,1492,6004,
30580,55738,44434,20536,5134,2548,6094,2908,1168,292,1852,970,10054,79930,53422,20656,
5164,1816,454,4312,1078,20260,6064,1516,1600,400,100,3340,2962,3040,760,190,
694,21718,7198,3322,8038,14266,14020,5500,1654,218662,243226,208180,90784,22696,5674,15328,
3832,958,982,1366,1474,2386,7678,3502,1936,484,4984,1246,1090,2170,17182,7066,
8920,2230,9406,4150,4096,1024,256,64,16,4,1558,1528,382,766,910,964,
1828,2176,544,136,34,1576,394,15884,3602,6002,6644,3428,8426,5348,4538,4112,
1028,14426,9674,21548,4664,1166,43586,68852,20924,4034,7568,1892,14588,17504,4376,1094,
1034,3968,992,248,62,18116,16532,166058,124208,31052,6446,19772,3872,968,242,6482,
8432,2108,1388,884,1808,452,5354,4052,2648,662,872,218,1682,4382,2324,3518,
8246,3716,22796,4898,9074,8588,2234,2816,704,176,44,632,158,1136,284,5168,
1292,866,6164,5264,1316,1496,374,764,1766,1286,1106,3896,974,2672,668,2402,
8108,2144,536,134,674,23654,9494,4184,1046,1016,254,311372,59006,2690576,672644,646712,
161678,908,794,2006,1376,344,86,656,164,3032,758,3572,2564,43334,16874,8912,
2228,2186,21338,13562,9188,6788,18062,18362,11888,2972,2888,722,62054,23894,9584,2396,
7784,1946,2654,1838,10532,7406,8702,3278,3644,1604,5186,161066,40322,192302,914012,661292,
124616,31154,262736,65684,1234844,523748,127046,48266,268598,101348,140786,141236,41282,138788,61514,494108,
218546,719612,58628,235304,58826,294362,167138,216602,123398,46898,139466,137978,79172,183386,104714,69578,
195938,253052,319796,91502,139076,131906,1116296,279074,152588,29234,32642,272114,34108,26656,6664,1666,
3580,18070,9418,4156,7702,5044,1570,1534,13630,6064,1516,3796,1336,334,8410,3778,
3334,3436,21616,5404,4558,17890,6124,5254,4516,32650,12868,2902,4342,39874,15406,15964,
9700,3856,964,1228,1906,7198,14182,9538,173588,19754,6650,5072,1268,2534,5108,3344,
836,782,6350,7340,10472,2618,21254,22958,23318,34592,8648,2162,1436,3776,944,236,
28070,26654,16556,6632,1658,2966,8834,3938,2102,12236,8132,2150,4784,1196,17744,4436,
1718,22388,63566,6692,1880,470,12032,3008,752,188,1616,404,2858,1898,1628,3680,
920,230,3164,2474,1790,2570,1988,998,3812,1340,1940,11210,3716,1322,1466,6970,
5446,2668,1126,1048,262,724,1768,442,3604,2578,6886,3208,802,9130,6700,1882,
7348,5332,3064,766,10588,2584,646,868,9076,6196,3106,29488,7372,2008,502,814,
1324,874,2056,514,3406,3874,13504,3376,844,784,196,4846,2458,2836,2362,4240,
1060,4942,4360,1090,3892,2620,4738,15392,3848,962,2108,1022,1010,2228,10544,2636,
2828,38720,9680,2420,3998,2126,1424,356,16862,6950,5204,59090,211250,60338,24800,6200,
1550,1208,302,740,1958,3098,4820,30458,28676,9632,2408,602,8858,11090,16148,12110,
5168,1292,7292,1994,7616,1904,476,716,2444,4808,1202,11030,3776,944,236,1130,
87320,21830,11612,2804,4160,1040,260,1640,410,2966,2264,566,1256,314,3242,14420,
26264,6566,5042,-3318460,-931750,-2810200,-702550,-1325482,-416590,-2465638,-892714,-2528746,-531958,-561964,-2982958,-3177994,
-38746834,-14529436,-2296624,-574156,-2104054,-5041318,-24195670,-45925702,4060,2710,5266,2602,9154,61810,23806,11446,
8206,6184,1546,2926,3214,3376,844,7432,1858,1324,3538,1954,1360,340,8584,2146,
1432,358,7948,10126,7264,1816,454,12718,8722,3898,2194,1450,12070,31186,12322,5248,
1312,328,82,658,874,15958,16444,5272,1318,10774,7864,1966,2674,1630,11458,4924,
2842,2050,1396,1294,2296,574,15370,8758,8404,5650,2746,1870,2620,2356,35164,3004,
4330,6778,4222,6004,1942,4618,12232,3058,1774,2566,8344,2086,3646,11320,2830,3160,
790,6748,3466,3736,934,4948,14176,3544,886,3034,60436,15022,10018,4384,1096,274,
730,7108,1960,490,4348,4708,1510,21070,13420,3832,958,8920,2230,5680,1420,13096,
3274,30592,7648,1912,478,4318,3346,1882,7912,1978,1654,6490,30806,22832,5708,3176,
794,926,10280,2570,1592,398,3320,830,105482,40184,10046,31580,19916,7172,2108,10286,
52568,13142,11654,8126,12170,5192,1298,4124,4724,1514,1196,3716,1622,4364,2798,4106,
2168,542,9314,9260,27044,7982,43496,10874,4706,5078,9710,11708,29726,64718,57590,26102,
12818,6392,1598,18458,7550,14660,6662,5318,4562,4202,2204,3914,2096,524,1718,4418,
2342,2888,722,2582,23804,20168,5042,7478,3890,6506,3068,7046,5534,34694,21086,94502,
54728,13682,19682,27206,16874,6956,8936,2234,1466,1178,1070,80756,15770,6542,8504,2126,
4778,2420,1082,1034,1016,254,5426,44216,11054,254420,48332,15164,72602,27854,26486,12980,
3062,3098,1790,7370,3392,848,212,668,3266,2018,3446,3260,41390,9560,2390,4850,
17576,4394,2276,8828,13598,34100,7022,7310,9152,2288,572,1984,496,124,652,1192,
298,3238,3976,994,5008,1252,1924,631474,356776,89194,78244,23578,105178,449914,324274,183976,
45994,41794,29788,6214,2848,712,178,1672,418,39526,15316,9448,2362,8098,5224,1306,
5998,2878,1708,4588,3064,766,916,74194,43306,1358,1484,908,800,200,50,5180,
6614,3110,1796,5792,1448,362,1778,5246,4496,1124,5828,5450,4640,1160,290,3236,
31670,12506,60584,15146,10094,6008,1502,30452,8234,6206,7088,1772,962,3482,50948,29120,
7280,1820,28454,11300,15350,6386,10214,4460,1466,3860,2660,6800,1700,18548,4922,14090,
9500,2438,1544,386,5306,9824,2456,614,860,1790,3038,23162,11582,6584,1646,2978,
5504,1376,344,86,662,878,3092,2444,1088,272,68,3020,1196,854,950,986,
27782,11048,2762,3128,782,1322,2318,1754,15332,11744,2936,734,14756,60530,70766,29930,
18410,11930,14012,25538,19034,7570,3232,808,202,706,4504,1126,5770,2794,1678,3088,
772,11254,7906,5620,1684,946,724,766,3640,910,30532,7174,7888,1972,1000,250,
4270,8524,3610,1984,496,124,3046,2764,16906,6970,3244,2488,622,5908,1738,1282,
6580,1864,466,1234,1450,1174,2236,9040,2260,1054,5944,1486,44788,9028,3772,3682,
3838,6232,1558,2452,1090,6916,15628,6850,8392,2098,1900,2110,4774,3826,6106,2920,
730,904,226,2380,2314,1498,1192,298,742,2224,556,1732,2650,1624,406,1804,
3424,856,214,1696,424,106,670,67816,16954,6988,3286,5576,1394,1154,1064,266,
4232,1058,1028,824,206,1694,16592,4148,1688,422,9258644,4400966,18818966,6701468,1886366,4043108,
758714,52826,15962,5594,2678,5258,25508,5414,7844,2102,4772,1526,4286,5654,6458,2822,
13682,5762,2792,698,3386,2174,2732,6248,1562,1544,386,776,194,704,176,44,
2894,3206,19634,7994,3146,7916,6338,3008,752,188,5168,1292,160934,401366,490442,6838094,
3848006,16457006,40898,15968,3992,998,6392,1598,2498,1568,392,98,668,1766,7364,2012,
2144,536,134,16246,6724,9388,2392,598,856,214,712,178,2878,2068,8584,2146,
1612,934,982,1000,250,1720,430,3886,6526,4888,1222,1090,87310,39124,10312,2578,
5176,1294,2836,7012,7318,3376,844,790,928,232,58,5938,6640,1660,1636,3400,
850,3718,2026,2608,652,754,1172,3500,3032,758,6704,1676,1640,410,5660,1694,
1268,9548,2450,2960,740,1790,1304,326,1532,920,230,1628,938,18890,18944,4736,
1184,296,74,3068,1208,302,746,3152,788,3338,5822,2816,704,176,44,2360,
590,854,2654,23710,14920,3730,2032,508,1726,2554,31174,34558,21022,13408,3352,838,
1942,15838,10492,4534,23818,10366,7414,22426,18268,5674,2704,676,760,190,1690,5146,
4558,10006,13990,14812,4342,16594,6856,1714,1276,2110,2770,1672,418,790,5242,58876,
18142,11788,38776,9694,7036,3562,5740,32632,8158,6172,62692,12388,2956,6370,3022,8548,
2236,2212,1048,262,5020,8062,6118,8170,3406,14002,5884,3238,9394,4156,2752,688,
172,5254,6214,46222,32614,30526,18754,7666,3508,15190,24370,9772,9130,3676,2596,1120,
280,70,19996,51898,24190,8492,3974,3500,2570,1598,5594,2732,2354,1772,2084,3164,
41378,238208,59552,14888,3722,2030,12218,5216,1304,326,2294,2876,4226,4082,2258,37004,
7856,1964,2138,1436,6062,35834,14072,3518,5120,1280,320,80,20,638,7388,63680,
15920,3980,11894,8276,2186,1454,8774,4778,2426,1544,386,2462,5090,7304,1826,1540,
2020,12592,3148,34948,11416,2854,5530,10228,7330,5710,2776,694,1306,126670,48136,12034,
8356,6016,1504,376,94,670,886,1360,340,23476,10324,166234,61912,15478,5464,1366,
1756,964,1858,2632,658,8218,19804,4348,1450,17320,4330,13078,26554,25420,6382,3028,
17128,4282,6628,3052,12074,11018,6476,1850,2630,1622,1244,11648,2912,728,182,704,
176,44,644,6530,13430,5672,1418,2426,2954,3074,9056,2264,566,848,212,174782,
50270,19532,4298,9164,2354,5006,27524,36770,117920,29480,7370,11882,179912,44978,40970,19112,
4778,21368,5342,3650,4592,1148,1274,2306,8084,5564,5504,1376,344,86,668,4304,
1076,1892,3818,9326,4622,11162,7868,2300,1436,4046,9074,10676,47936,11984,2996,2432,
608,152,38,650,2102,1424,356,3170,14402,48920,12230,5222,2594,5240,1310,10136,
2534,1586,4358,2270,3782,2054,1406,1508,3656,914,30772,6406,5194,2584,646,1954,
12142,16516,3436,2554,1594,1234,6958,7306,3376,844,1828,2692,1492,916,808,202,
712,178,5848,1462,2446,5086,18046,1582,3904,976,244,682,892,5734,4816,1204,
862,24742,15508,3544,886,3688,922,982,10594,3706,2026,1396,898,1366,7738,3538,
24688,6172,5626,2746,1666,38690,15146,7640,1910,28568,7142,15560,3890,2096,524,3248,
812,17792,4448,1112,278,16904,4226,2222,12374,66266,30266,113786,294686,167354,110006,144404,
21422,90944,22736,5684,2954,1946,16334,2132,3026,1772,21122,8558,7238,9134,51578,973034,
351872,87968,21992,5498,29576,7394,3410,1916,17314,17638,7252,3634,12598,5362,11968,2992,
748,778,2032,508,2452,2284,1066,2194,33172,10924,2686,5470,32380,9142,4066,6460,
9862,4336,1084,14170,9904,2476,1102,1426,47932,529558,199222,75346,151450,85198,25078,10042,
6070,2914,5488,1372,2938,53980,7168,1792,448,112,28,1120,280,70,664,166,
700,3550,6352,1588,10348,2578,3884,1664,416,104,26,3056,764,782,932,87296,
21824,5456,1364,31406,12416,3104,776,194,1706,23792,5948,1754,4514,4136,1034,1502,
1202,4154,4796,1538,2462,1562,4352,1088,272,68,1616,404,7244,6404,3398,22658,
14342,8366,3776,944,236,3272,818,3572,10862,4712,1178,4028,1394,7052,11912,2978,
1886,1346,2354,10292,7376,1844,3812,7538,12884,10646,4112,1028,11024,2756,2372,2264,
566,25208,6302,3002,4814,2444,2762,5126,4478,2318,1508,19706,36212,14372,4868,2966,
1952,488,122,3842,3758,2048,512,128,32,8,2,1598,1238,1466,2312,578,
1922,2678,2042,13562,27464,6866,21632,5408,1352,338,40756,6850,3208,802,940,3214,
3406,3514,6592,1648,412,1714,1282,1120,280,70,24988,8626,3874,2092,8356,2206,
4792,1198,2272,568,142,1678,2542,3028,2956,11236,2746,15610,20548,4492,12694,46588,
9388,16636,28732,15646,10612,22954,9640,2410,3334,21926,13934,14798,40412,20090,8174,9938,
16256,4064,1016,254,25994,10388,2588,3740,5738,2792,698,902,2108,6536,1634,1580,
2174,19496,4874,2468,7994,3638,34076,20264,5066,2540,3794,10424,2606,5240,1310,6860,
3530,1964,10910,19010,8876,16850,17300,3884,2660,2882,3470,4478,37100,15140,8912,2228,
1058,1418,1172,860,3404,2558,83918,127658,48512,12128,3032,758,1900,4726,11314,7966,
3628,3088,772,162952,40738,44416,11104,2776,694,4564,7192,1798,6184,1546,4348,1456,
364,4240,1060,3574,24598,12700,3022,1774,1306,8110,3682,5734,2734,1666,7432,1858,
2626,2950,2104,526,838,28324,9568,2392,598,2572,21944,5486,2666,3104,776,194,
3212,1244,1298,17570,202472,50618,50300,54152,13538,10142,7418,30050,8018,15362,16010,10610,
43550,16166,6704,1676,956,2528,632,158,16652,3764,13196,3116,1226,2294,1502,2960,
740,14390,6038,2906,12068,10280,2570,3050,3320,830,18764,4160,1040,260,3158,1826,
8036,12710,5408,1352,338,5642,4778,4292,4286,8822,3950,2234,3836,5228,1622,1250,
6578,12908,3062,1790,5264,1316,49778,494660,239804,52910,16004,9800,2450,6878,317654,119762,
156788,53018,24212,8414,5876,31886,8210,19160,4790,2438,1556,2042,7694,2972,3338,3482,
3314,34802,162866,20770,17278,13864,3466,1942,2698,1654,2536,634,880,220,13660,21436,
12094,38770,12028,6736,1684,958,8296,2074,1420,2146,23704,5926,7162,3328,832,208,
52,652,1984,496,124,5836,8530,22612,4882,46222,63718,100006,206422,117718,67822,350764,
100258,77632,19408,4852,1552,388,2410,1546,1222,2362,1528,382,3172,1570,5128,1282,
2794,1690,1276,3334,3082,1798,2596,10636,4090,2176,544,136,34,4156,4804,9124,
22138,8944,2236,3994,2140,8518,5440,1360,340,706,2626,3436,2572,2434,5380,13984,
3496,874,970,1006,50224,12556,1886,11876,2870,5858,2840,710,8720,2180,1052,1904,
476,1742,2588,2336,584,146,698,1322,23462,53024,13256,3314,6800,1700,962,1004,
5522,2714,2060,6530,3092,2984,746,6224,1556,2660,1142,27836,6434,3056,764,9230,
141560,35390,39362,15404,9554,4226,2228,14900,106970,55724,26564,5624,1406,24836,5300,3428,
1286,6854,7352,1838,2642,1634,1256,314,1214,611564,666032,166508,146012,42674,16646,26294,
19574,33364,130078,17398,7168,1792,448,112,28,10066,7624,1906,4666,4234,22186,83422,
29272,7318,3388,1846,1336,334,2278,1498,2452,2368,592,148,1882,2668,1144,286,
3352,838,958,1396,2002,4204,1432,358,778,24818,15572,9632,2408,602,18614,10190,
4466,4124,1418,3524,15626,12830,5456,1364,3638,3872,968,242,1748,3800,950,2738,
3152,788,3038,1784,446,812,7256,1814,19526,6620,1886,1352,338,1802,4082,3908,
2678,31880,7970,5216,1304,326,1220,2228,12884,8498,6392,1598,1244,878,974,1010,
2180,5060,4898,3920,980,3476,80870,51104,12776,3194,23402,22808,5702,2732,4406,4196,
2792,698,6122,8228,3926,12548,11738,44164,8926,6634,32446,19864,4966,12610,5374,4636,
2770,1684,1366,24838,24022,185698,70282,20896,5224,1306,2890,1942,12196,2932,172576,43144,
10786,4690,2404,1096,274,748,5716,3970,2134,19486,12574,8686,14032,3508,3634,2008,
502,5878,12682,4696,1174,10738,4672,1168,292,700,1810,1324,9766,9124,2356,2836,
1528,382,1828,988,6256,1564,2284,6688,1672,418,802,946,1000,250,4312,1078,
9046,30022,28396,23212,122842,71494,63388,15226,24506,9836,4382,69056,17264,4316,7982,5318,
10844,12458,19208,4802,15218,11384,2846,12302,24554,9854,14084,238184,59546,22976,5744,1436,
23858,20078,30662,26822,31256,7814,8378,3788,6686,31844,4286,10298,4508,27524,3670,2164,
6100,144628,48712,12178,22966,6340,3400,850,2218,8062,7954,4558,2356,4066,3904,976,
244,3028,5854,2842,5470,2698,49858,29662,11770,8446,3814,9016,2254,1492,5296,1324,
1318,6754,5416,1354,17296,4324,4804,2968,742,14596,5722,7900,2128,532,9034,39166,
15334,8932,6262,31282,35494,61522,27814,164878,62476,15442,8374,3262,1870,1348,1996,14956,
5074,4000,1000,250,18652,4144,1036,9670,6424,1606,3022,1780,3514,20536,5134,2572,
2812,1174,1462,1804,28960,7240,1810,2614,2182,5290,11950,5128,1282,2338,2932,16162,
10708,50494,19582,7990,8440,2110,1438,1186,2284,5524,101104,25276,5386,18754,12166,5756,
22670,11912,2978,9032,2258,4982,2516,5984,1496,374,788,8090,6170,5090,27302,10886,
4730,4280,1070,3860,12110,42596,35792,8948,4136,1034,8078,567572,35870972,32346176,8086544,2021636,
2170076,1752746,741302,278636,52892,45512,11378,29876,10022,4406,2300,28016,7004,6386,26690,104608,
26152,6538,3100,6556,5032,1258,1120,280,70,1660,18262,9568,2392,598,2116,1432,
358,1822,6328,1582,4414,24322,46534,27796,5860,3586,120892,107662,1235452,1897534,5416996,24815686,
13960444,13260064,3315016,828754,447886,645988,79228,190066,82534,48046,43618,13402,5674,2776,694,5140,
1612,2074,1426,12502,7138,3142,3388,9958,7222,8014,6670,11416,2854,3226,1858,3748,
18832,4708,10120,2530,1846,4612,6088,1522,2992,748,49126,29254,18076,7156,1990,2740,
1162,1084,6664,1666,3424,856,214,1954,1684,964,1270,26770,1642,1264,316,303790,
259402,97924,14926,15574,8434,5908,1756,3820,8866,3628,2620,5842,7870,54472,13618,103612,
70834,44968,11242,4864,1216,304,76,9814,6004,1774,4576,1144,286,4870,4360,1090,
8302,10084,4006,3874,2224,556,2134,2764,2398,6598,5332,1648,412,3088,772,14188,
1480,370,2506,1588,946,2710,19966,35488,8872,2218,146326,55522,16750,17212,105502,154084,
34852,40432,10108,110588,32726,46694,42482,16580,3758,3452,2594,1622,7328,1832,458,1598,
2522,14618,13430,34058,382520,95630,56324,11210,3866,6626,3134,3386,3782,10904,2726,5384,
1346,1154,1082,2810,9056,2264,566,15104,3776,944,236,8786,3944,986,15608,3902,
3818,2210,1478,16238,15212,80714,22466,9074,4052,1706,1616,404,1544,386,794,4682,
2516,1490,1208,302,1994,1922,1370,60302,31856,7964,5126,6206,5114,6698,3020,4358,
5720,1430,15926,58844,16790,24734,15536,3884,5486,3488,872,218,41348,8402,3800,950,
226190,3904,976,244,14212,9082,13006,4246,2242,4978,14164,5608,1402,8434,24580,13456,
3364,7408,1852,2746,14110,8308,23608,5902,4228,4870,2476,1114,2338,4444,1762,18748,
6310,3016,754,10000,2500,5362,18052,10702,3760,940,826,6490,4606,11296,2824,706,
3682,25930,16210,19996,5200,1300,1990,1396,9028,8764,4204,1438,2962,7624,1906,9790,
10378,7462,3448,862,20692,7444,3718,2044,7894,3610,20044,4408,1102,6652,20098,35596,
7324,2356,7306,5734,2800,700,9928,2482,47908,3844,4708,20206,6820,7846,3592,898,
4894,4420,3922,8332,2212,12520,3130,19942,8128,2032,508};
unsigned char cflag[5691+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,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,
1,1,1,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,
3,4,4,4,4,5,5,5,5,5,5,5,5,5,6,6,6,7,7,7,7,
8,8,8,8,8,8,8,9,9,9,9,10,10,10,10,10,10,10,10,10,10,
10,10,11,11,11,11,11,12,12,12,12,12,13,13,13,13,13,14,14,14,14,
15,15,15,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,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,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
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,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,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,2,2,2,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,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,2,2,2,2,2,2,
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
2,2,2,2,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3,3,
3,3,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,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,2,2,2,2,2,2,2,2,2,2,2,2,3,3,
4,4,4,4,4,4,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,
5,5,5,5,5,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,
6,6,7,7,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,
8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,10,11,
11,11,12,12,12,12,12,12,12,13,13,14,15,15,15,15,15,16,16,17,17,
18,19,20,20,21,22,22,23,24,24,25,25,26,26,27,27,28,28,29,29,30,
31,31,31,31,31,31,32,32,33,34,34,35,35,36,36,37,38,39,39,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
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,2,2,
2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,4,4,4,4,4,
5,5,5,5,5,5,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,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,2,2,2,2,2,2,2,2,2,2,2,2,2,
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
2,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,4,
4,4,4,4,4,4,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,
5,5,5,5,5,5,5,6,6,6,6,6,6,6,6,6,6,6,6,6,6,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,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,2,2,2,2,2,2,
2,2,2,2,2,2,2,2,2,2,2,2,2,2,0,0,0,0,0,0,0,
0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,
2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,
3,3,3,3,3,3,3,3,3,3,3,3,3,4,4,4,4,4,4,4,4,
4,4,4,4,4,4,4,4,4,4,4,4,4,4,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,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
2,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,
3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,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,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,0,0,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,2,2,2,2,2,3,3,3,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,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,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,
3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,
3,3,3,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
4,4,4,4,4,4,4,4,4,4,4,4,4,4,5,5,6,6,6,7,8,
9,10,11,12,12,13,13,13,13,13,13,14,15,16,16,16,17,18,18,19,20,
21,22,23,24,25,26,27,28,29,30,31,32,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,2,2,2,2,
2,2,2,2,2,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,2,2,
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,
3,3,3,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,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,2,2,2,2,3,3,3,4,4,4,4,5,5,5,5,
5,5,5,6,6,6,6,7,7,7,7,8,8,8,9,9,9,10,10,10,10,
11,11,11,11,11,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,2,2,2,2,2,2,2,3,3,3,
3,3,3,4,4,4,4,4,5,5,5,5,5,5,6,6,6,6,6,6,7,
7,7,7,7,7,7,8,8,8,8,8,8,8,9,9,9,9,9,9,9,9,
9,9,9,9,9,10,10,10,10,10,10,10,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,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,2,2,2,2,2,2,2,2,2,2,
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
2,2,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,2,2,2,2,2,2,2,2,2,2,
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,
3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,4,4,4,4,
4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,5,5,5,
5,5,5,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7,7,
7,7,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,
8,8,8,9,9,9,10,10,10,10,11,11,11,12,12,12,13,13,13,14,14,
15,15,15,16,16,16,17,17,18,18,18,18,18,19,19,19,20,20,20,21,21,
22,22,23,24,24,24,24,24,24,24,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,2,2,2,2,2,2,2,2,2,2,2,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,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,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,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,2,2,2,2,2,2,2,2,2,2,2,2,
2,2,2,2,2,3,3,3,3,3,3,3,4,4,4,4,4,4,5,5,5,
5,5,5,5,5,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,2,2,2,2,3,3,3,3,3,4,4,4,4,4,5,
5,5,5,5,5,5,5,5,5,5,5,5,5,6,6,6,6,7,7,7,7,
7,7,7,7,7,7,7,7,7,7,7,7,7,8,8,8,9,9,9,9,10,
10,10,10,10,10,11,11,11,11,11,12,12,12,12,13,13,13,13,14,14,14,
14,14,14,14,14,15,15,15,15,15,15,15,15,16,16,16,16,17,17,17,17,
18,18,18,18,19,19,19,20,20,20,20,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,2,2,2,2,2,2,
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,
3,3,3,3,3,3,3,3,3,3,3,3,3,4,4,4,4,4,4,4,4,
4,4,4,4,4,4,4,4,4,4,4,4,4,4,5,5,5,5,5,5,6,
6,6,6,6,6,6,6,0,0,0,0,0,0,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,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,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,2,2,2,2,2,
2,2,2,2,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3,3,
3,3,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,
0,0,0,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,3,
3,3,3,3,3,3,3,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,
5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,
6,6,6,6,6,6,6,6,6,6,6,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,2,2,
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,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,2,2,2,2,2,2,2,2,
2,2,2,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,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,2,2,2,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3,
3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,4,4,4,4,4,
4,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,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,2,2,2,2,2,2,2,2,2,2,
2,2,2,2,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3,3,
3,3,3,3,3,3,3,3,3,3,4,4,4,4,4,4,4,4,4,4,4,
4,4,0,0,0,0,0,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,0,0,
0,0,0,0,0,0,0,0,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,0,0,0,0,0,0,0,0,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,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,2,2,2,2,2,2,2,2,2,2,2,
2,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,
3,4,4,4,4,4,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,
5,5,5,6,6,6,6,6,6,6,6,6,6,6,6,7,7,7,7,7,7,
7,7,7,7,7,8,8,8,8,8,8,8,8,8,8,8,8,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,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,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,2,2,2,2,2,2,2,2,2,2,2,2,
2,2,2,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,
3,3,3,3,3,3,3,3,3,4,4,4,4,4,4,4,4,4,4,4,4,
4,4,4,4,4,4,4,4,4,0,0,0,0,0,0,0,0,0,0,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,2,2,2,2,2,2,2,
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
2,2,2,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,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,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,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,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,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,0,0,0,1,1,1,1,2,2,2,3,3,3,4,4,4,4,
4,5,5,5,5,5,5,5,6,6,6,6,6,6,6,7,7,7,8,8,8,
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,2,2,2,2,2,2,2,2,2,2,
2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,
3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,4,4,4,4,4,4,
4,4,4,4,4,4,4,4,0,0,0,0,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,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,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,2,2,2,
2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,
3,3,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,
4,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,6,6,6,6,
6,6,6,6,6,7,7,7,7,7,7,7,8,8,8,8,8,8,8,8,8,
8,9,9,9,9,9,9,9,9,9,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,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,2,2,2,
2,2,2,2,2,2,2,2,3,3,3,3,3,3,3,4,4,4,4,4,5,
5,5,5,5,5,5,5,5,5,5,5,5,6,6,6,6,6,7,7,7,7,
7,7,7,8,8,8,8,8,8,9,9,9,9,9,10,10,10,10,10,10,10,
10,10,10,11,11,11,11,11,11,11,12,12,12,12,12,13,13,13,13,13,13,
255}; //  index=5691 
unsigned int size[67]={
  100,
  92,
  43,
  40,
  31,
  95,
  98,
  150,
  189,
  36,
  78,
  65,
  138,
  125,
  57,
  84,
  119,
  30,
  128,
  27,
  90,
  192,
  38,
  60,
  126,
  77,
  21,
  112,
  91,
  77,
  102,
  197,
  44,
  71,
  56,
  97,
  132,
  143,
  46,
  108,
  102,
  88,
  51,
  45,
  98,
  58,
  53,
  102,
  59,
  51,
  62,
  116,
  47,
  67,
  46,
  105,
  99,
  75,
  40,
  78,
  81,
  38,
  113,
  48,
  164,
  94,
  106};
int cval[67]={
2401,2405,2407,2411,2413,2417,2419,2423,2425,2429,2431,
2435,2437,2441,2443,2447,2449,2453,2455,2459,2461,2465,
2467,2471,2473,2477,2479,2483,2485,2489,2491,2495,2497,
2501,2503,2507,2509,2513,2515,2519,2521,2525,2527,2531,
2533,2537,2539,2543,2545,2549,2551,2555,2557,2561,2563,
2567,2569,2573,2575,2579,2581,2585,2587,2591,2593,2597,
2599};
unsigned int numbc=67;