~ashn/cyclone

c1f88b3790fa436aeb81f156aa36eb1e18f4b68a — trevor 12 years ago 15b3ae5
more buildlib


git-svn-id: https://source.seas.harvard.edu/svn/cyclone/trunk/cyclone@6315 581db07f-6e62-4d40-9733-d432c4eebb07
2 files changed, 22 insertions(+), 22 deletions(-)

M bin/genfiles/buildlib.c
M src/buildlib.cyl
M bin/genfiles/buildlib.c => bin/genfiles/buildlib.c +9 -9
@@ 623,11 623,11 @@ void*_T1E=_T0->r;struct Cyc_Absyn_Typedefdecl*_T1F;struct Cyc_Absyn_Enumdecl*_T2
_tag_fat("Error in .cys file: bad user-defined type definition\n",sizeof(char),54U);_T1D=_tag_fat(0U,sizeof(void*),0);Cyc_fprintf(_T1B,_T1C,_T1D);
exit(1);}_LL0:;}}
# 205
const int Cyc_lex_base[495U]={0,0,75,192,305,310,311,166,312,91,27,384,28,523,637,715,829,325,92,- 3,0,- 1,- 2,- 8,- 3,1,- 2,323,- 4,2,166,- 5,605,907,312,- 6,- 8,- 4,16,945,- 3,1021,29,11,1135,- 4,13,1250,223,- 14,317,12,- 2,216,20,27,29,34,50,49,71,55,66,101,101,100,108,95,386,112,104,105,123,126,397,112,134,190,399,1365,1480,414,205,213,233,219,224,224,245,525,1595,- 9,1710,654,- 10,233,253,684,1825,- 7,1940,720,722,- 11,432,370,379,2018,2095,2172,2253,434,465,381,2328,253,253,253,251,247,257,0,13,4,2409,5,462,2417,2482,475,- 4,- 3,49,467,6,2443,7,491,2505,2543,499,- 28,1162,1167,273,264,267,271,281,284,290,291,- 25,584,271,276,287,280,291,313,310,313,309,320,326,333,335,- 23,361,391,394,413,420,405,- 27,423,451,448,458,465,467,- 19,447,463,455,467,478,473,475,491,492,504,500,500,522,524,- 21,544,543,536,560,556,573,558,580,583,571,575,572,575,- 26,576,581,595,603,591,593,609,616,617,4,6,21,618,619,606,606,618,618,625,627,24,631,632,24,20,639,642,53,697,698,700,649,648,644,634,636,650,654,658,640,656,658,718,719,- 16,738,660,651,662,660,678,666,663,694,711,695,710,729,725,747,727,736,744,739,741,757,758,814,815,- 18,747,748,742,752,753,767,769,1,825,825,826,827,769,769,776,777,2,833,779,780,1078,814,815,816,817,780,778,820,826,827,882,884,912,- 15,870,871,926,927,928,875,883,938,939,940,- 12,887,888,943,944,945,892,893,948,949,950,- 13,880,889,935,938,941,923,940,968,984,985,1041,1042,- 17,1277,987,1015,1012,1011,1010,1006,1037,1041,1043,1041,1054,1370,1046,1047,1045,1058,1372,1396,1061,1063,1054,1055,1053,1066,1487,1058,1060,1058,1071,1597,- 7,- 8,8,1259,2575,9,1339,2599,2637,1563,1279,- 49,1253,- 2,1112,- 4,1113,1235,1481,1117,1234,1134,1676,1120,2664,2707,1124,1166,1132,1213,2777,1137,1170,- 36,- 42,- 37,2852,1168,- 40,1206,- 45,- 39,- 48,2927,2956,1695,1193,1204,1791,2966,2996,1810,1906,3029,3060,3098,1229,1319,3168,3206,1339,1349,1341,1353,1407,1418,- 6,- 34,1224,3138,- 47,- 30,- 32,- 46,- 29,- 31,- 33,1240,3246,1244,1245,1925,1258,1269,1302,1303,1304,1305,1338,1345,1357,3319,3403,- 22,2472,1359,- 20,- 24,- 41,- 38,- 35,1490,3485,1367,3568,1359,15,1301,1302,1305,1303,1301,1322,1427};
const int Cyc_lex_backtrk[495U]={- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,0,- 1,- 1,- 1,- 1,- 1,- 1,- 1,2,- 1,- 1,- 1,- 1,2,- 1,8,- 1,3,5,- 1,- 1,6,5,- 1,- 1,- 1,7,6,- 1,6,5,2,0,- 1,- 1,0,2,- 1,12,13,- 1,13,13,13,13,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,11,12,2,4,4,- 1,0,0,0,2,0,- 1,- 1,- 1,- 1,- 1,- 1,- 1,2,2,8,3,5,- 1,6,5,- 1,- 1,6,5,2,8,3,5,- 1,6,5,- 1,27,27,27,27,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,23,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,19,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,21,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,6,1,9,2,4,- 1,5,4,- 1,- 1,2,- 1,48,- 1,48,48,48,48,48,48,48,48,5,7,48,48,48,48,0,48,48,- 1,- 1,- 1,0,43,- 1,42,- 1,- 1,- 1,9,7,- 1,7,7,- 1,8,9,- 1,- 1,9,5,6,5,5,- 1,4,4,4,6,6,5,5,- 1,- 1,- 1,9,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 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,- 1,1,2,1,1,- 1,- 1,- 1,- 1,- 1,- 1,- 1};
const int Cyc_lex_default[495U]={- 1,- 1,- 1,392,381,141,23,99,23,19,- 1,- 1,12,31,49,35,36,23,19,0,- 1,0,0,0,0,- 1,0,- 1,0,- 1,- 1,0,- 1,- 1,- 1,0,0,0,- 1,- 1,0,- 1,42,- 1,- 1,0,- 1,- 1,- 1,0,- 1,- 1,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,0,- 1,- 1,0,- 1,- 1,- 1,- 1,0,- 1,- 1,- 1,0,104,- 1,- 1,- 1,- 1,- 1,111,111,111,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,0,0,- 1,133,- 1,- 1,- 1,- 1,- 1,- 1,- 1,0,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,0,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,0,- 1,- 1,- 1,- 1,- 1,- 1,0,- 1,- 1,- 1,- 1,- 1,- 1,0,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,0,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,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,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,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,290,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,0,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,0,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,0,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,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,0,0,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,0,- 1,0,- 1,0,- 1,- 1,458,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,0,0,0,- 1,- 1,0,- 1,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,- 1,- 1,0,0,0,0,0,0,0,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,0,- 1,- 1,0,0,0,0,0,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1};
const int Cyc_lex_trans[3825U]={0,0,0,0,0,0,0,0,0,0,22,19,28,487,19,28,19,28,36,19,48,48,46,46,48,22,46,0,0,0,0,0,21,289,298,488,221,22,- 1,- 1,22,- 1,- 1,48,222,46,241,22,485,485,485,485,485,485,485,485,485,485,31,104,22,223,115,42,232,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,31,235,236,239,485,133,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,483,483,483,483,483,483,483,483,483,483,122,20,75,22,69,57,58,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,59,60,61,62,483,63,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,64,65,130,393,394,393,393,394,131,22,66,67,68,70,71,132,34,34,34,34,34,34,34,34,72,73,393,395,396,74,76,397,398,399,48,48,400,401,48,402,403,404,405,406,406,406,406,406,406,406,406,406,407,77,408,409,410,48,19,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,19,- 1,- 1,412,411,78,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,382,413,102,383,142,142,24,24,142,134,123,105,105,82,95,105,83,85,28,86,24,29,84,25,384,87,88,142,89,22,26,26,21,21,105,96,97,143,116,117,118,119,120,121,26,35,35,35,35,35,35,35,35,153,146,147,30,30,30,30,30,30,30,30,105,105,148,149,105,150,151,152,211,113,113,113,113,113,197,113,68,68,385,191,68,182,175,105,135,124,144,74,74,79,79,74,113,79,113,168,161,162,27,68,163,31,164,21,81,81,145,165,81,166,74,167,79,114,114,114,114,114,114,114,114,114,114,- 1,32,- 1,- 1,81,- 1,22,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,- 1,169,- 1,- 1,114,- 1,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,170,171,28,129,129,129,129,129,129,129,129,172,173,19,174,31,35,35,35,35,35,35,35,35,176,106,106,90,90,106,35,90,140,140,140,140,140,140,140,140,35,35,35,35,35,35,35,35,106,177,90,178,179,180,91,181,183,184,185,21,21,21,107,108,107,107,107,107,107,107,107,107,107,107,21,186,187,188,189,190,36,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,192,193,194,195,107,196,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,50,50,91,198,50,199,200,33,33,33,33,33,33,33,33,33,33,93,93,201,202,93,203,50,33,33,33,33,33,33,204,205,206,207,208,154,155,156,51,157,93,209,- 1,158,- 1,210,212,98,98,213,52,98,159,160,214,215,33,33,33,33,33,33,216,217,218,219,220,224,225,226,98,227,228,229,230,- 1,231,- 1,43,43,233,234,43,101,101,102,102,101,237,102,53,238,240,49,242,54,55,256,243,245,246,43,56,244,247,248,101,249,102,250,251,252,253,254,255,337,293,44,44,44,44,44,44,44,44,44,44,281,261,262,263,94,264,28,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,265,99,266,267,44,268,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,257,269,45,270,271,36,272,103,273,258,259,274,275,276,277,278,260,279,280,282,283,284,285,286,287,37,288,290,291,292,91,294,295,296,297,299,300,301,38,39,39,39,39,39,39,39,39,39,39,331,326,320,315,307,308,21,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,309,310,311,312,39,313,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,40,314,22,33,33,33,33,33,33,33,33,33,33,316,317,318,319,103,321,31,33,33,33,33,33,33,322,323,324,325,327,328,329,330,94,332,333,334,335,336,338,41,41,41,41,41,41,41,41,41,41,339,33,33,33,33,33,33,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,340,341,342,343,41,344,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,345,41,41,41,41,41,41,41,41,41,41,346,347,- 1,348,349,363,21,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,358,354,355,356,41,357,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,46,46,302,99,46,359,303,360,361,362,364,365,366,367,376,304,371,305,372,373,374,375,377,46,378,379,380,368,368,210,481,368,350,350,457,452,350,448,423,47,47,47,47,47,47,47,47,47,47,152,368,453,454,306,416,350,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,420,174,421,419,47,414,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,22,46,46,369,482,46,482,482,351,422,391,391,451,370,391,479,141,418,352,455,36,478,36,353,46,477,181,482,350,350,391,391,350,391,391,21,415,456,480,196,47,47,47,47,47,47,47,47,47,47,280,350,36,391,36,21,35,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,103,325,336,49,47,35,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,22,79,79,351,314,79,362,362,367,367,362,255,367,352,390,390,390,390,390,390,390,390,35,349,79,474,21,21,489,362,490,367,368,368,491,492,368,19,493,31,80,80,80,80,80,80,80,80,80,80,494,31,31,99,35,368,99,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,31,31,99,21,80,99,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,31,81,81,- 1,447,81,447,369,375,375,0,482,375,482,482,0,0,370,0,0,0,0,0,0,81,0,0,0,0,0,0,375,- 1,0,482,0,447,0,447,28,80,80,80,80,80,80,80,80,80,80,0,0,0,0,0,0,0,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,0,0,459,0,80,0,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,35,90,90,380,380,90,0,380,31,31,31,31,31,31,31,31,0,0,0,0,0,0,0,0,90,0,380,0,0,0,0,0,0,0,35,0,0,0,0,0,92,92,92,92,92,92,92,92,92,92,0,0,0,0,0,0,0,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,0,0,0,0,92,0,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,91,93,93,0,449,93,450,450,450,450,450,450,450,450,450,450,0,0,0,- 1,429,0,429,0,93,430,430,430,430,430,430,430,430,430,430,0,0,0,0,0,92,92,92,92,92,92,92,92,92,92,0,0,0,0,0,0,0,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,0,0,0,0,92,0,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,94,98,98,0,0,98,430,430,430,430,430,430,430,430,430,430,0,0,0,0,433,0,433,0,98,434,434,434,434,434,434,434,434,434,434,0,0,0,0,0,100,100,100,100,100,100,100,100,100,100,0,0,0,0,0,0,0,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,0,0,0,0,100,0,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,99,101,101,0,0,101,434,434,434,434,434,434,434,434,434,434,474,0,0,0,0,0,0,0,101,475,475,475,475,475,475,475,475,0,0,0,0,0,0,0,100,100,100,100,100,100,100,100,100,100,0,0,0,0,0,0,0,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,0,0,0,0,100,0,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,36,109,109,109,109,109,109,109,109,109,109,109,109,22,0,0,0,0,0,0,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,0,0,0,0,109,0,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,110,109,109,109,109,109,109,109,109,109,109,22,0,0,0,0,0,0,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,0,0,0,0,109,0,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,22,0,0,0,0,0,0,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,- 1,0,0,- 1,109,0,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,0,0,0,0,110,110,110,110,110,110,110,110,110,110,110,110,112,0,0,0,0,0,0,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,0,0,0,0,110,0,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,114,114,114,114,114,114,114,114,114,114,0,0,0,0,0,0,0,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,28,0,0,125,114,0,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,0,0,28,0,0,136,126,126,126,126,126,126,126,126,128,128,128,128,128,128,128,128,128,128,0,0,0,0,0,0,0,128,128,128,128,128,128,0,0,0,137,137,137,137,137,137,137,137,0,0,0,0,0,0,0,31,0,0,- 1,0,474,0,0,128,128,128,128,128,128,476,476,476,476,476,476,476,476,0,127,128,128,128,128,128,128,128,128,128,128,31,0,0,0,0,0,0,128,128,128,128,128,128,139,139,139,139,139,139,139,139,139,139,138,0,0,0,0,0,0,139,139,139,139,139,139,0,0,0,128,128,128,128,128,128,19,0,0,386,0,0,139,139,139,139,139,139,139,139,139,139,0,139,139,139,139,139,139,139,139,139,139,139,139,0,0,0,0,0,0,0,0,0,387,387,387,387,387,387,387,387,0,0,0,0,0,0,0,0,0,139,139,139,139,139,139,0,389,389,389,389,389,389,389,389,389,389,0,0,0,0,0,0,0,389,389,389,389,389,389,0,0,28,0,0,0,0,0,0,0,0,0,0,0,0,389,389,389,389,389,389,389,389,389,389,388,389,389,389,389,389,389,389,389,389,389,389,389,0,0,424,0,435,435,435,435,435,435,435,435,436,436,0,0,0,0,0,0,0,0,0,0,0,426,389,389,389,389,389,389,437,0,0,0,0,0,0,0,0,438,0,0,439,424,0,425,425,425,425,425,425,425,425,425,425,426,0,0,0,0,0,0,437,0,0,0,426,0,0,0,0,438,0,427,439,0,0,0,0,0,0,0,428,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,426,0,0,0,0,0,0,427,0,0,0,0,0,0,0,0,428,417,417,417,417,417,417,417,417,417,417,0,0,0,0,0,0,0,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,0,0,0,0,417,0,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,0,0,0,0,0,0,0,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,0,0,0,0,417,0,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,431,431,431,431,431,431,431,431,431,431,0,0,0,0,0,0,0,0,0,0,0,432,94,0,0,0,0,424,94,425,425,425,425,425,425,425,425,425,425,430,430,430,430,430,430,430,430,430,430,0,426,0,0,432,94,0,0,427,0,0,94,91,0,0,0,0,428,91,0,431,431,431,431,431,431,431,431,431,431,0,0,0,426,0,0,0,0,0,0,427,432,94,0,91,0,0,0,94,428,91,0,0,434,434,434,434,434,434,434,434,434,434,0,0,0,0,0,0,0,0,0,0,432,94,94,0,0,0,0,94,94,424,0,435,435,435,435,435,435,435,435,436,436,0,0,0,0,0,0,0,0,0,0,0,426,0,94,0,0,0,0,445,94,0,0,0,0,0,0,424,446,436,436,436,436,436,436,436,436,436,436,0,0,0,0,0,426,0,0,0,0,0,426,445,0,0,0,0,0,443,0,0,446,0,0,0,0,0,444,0,0,450,450,450,450,450,450,450,450,450,450,0,0,0,426,0,0,0,0,0,0,443,432,94,0,0,0,0,0,94,444,440,440,440,440,440,440,440,440,440,440,0,0,0,0,0,0,0,440,440,440,440,440,440,432,94,0,0,0,0,0,94,0,0,0,0,0,0,0,440,440,440,440,440,440,440,440,440,440,0,440,440,440,440,440,440,440,440,440,440,440,440,0,0,0,460,0,441,0,0,461,0,0,0,0,0,442,0,0,462,462,462,462,462,462,462,462,0,440,440,440,440,440,440,463,0,0,0,0,441,0,0,0,0,0,0,0,0,442,0,0,0,0,0,0,0,0,0,0,0,0,0,0,464,0,0,0,0,465,466,0,0,0,467,0,0,0,0,0,0,0,468,0,0,0,469,0,470,0,471,0,472,473,473,473,473,473,473,473,473,473,473,0,0,0,0,0,0,0,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,0,0,0,0,0,0,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,167,0,0,0,0,0,0,0,0,473,473,473,473,473,473,473,473,473,473,0,0,0,0,0,0,0,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,0,0,0,0,0,0,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,19,0,0,484,0,0,0,483,483,483,483,483,483,483,483,483,483,0,0,0,0,0,0,0,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,0,0,0,0,483,0,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,486,0,0,0,0,0,0,0,485,485,485,485,485,485,485,485,485,485,0,0,0,0,0,0,0,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,0,0,0,0,485,0,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
const int Cyc_lex_check[3825U]={- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,0,25,29,0,123,125,134,136,383,386,43,43,46,46,43,487,46,- 1,- 1,- 1,- 1,- 1,121,288,297,0,220,10,12,42,10,12,42,43,220,46,221,20,1,1,1,1,1,1,1,1,1,1,38,51,122,222,10,38,231,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,132,234,235,238,1,132,1,1,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,9,18,54,46,55,56,57,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,58,59,60,61,2,62,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,63,64,7,3,3,3,3,3,7,7,65,66,67,69,70,7,30,30,30,30,30,30,30,30,71,72,3,3,3,73,75,3,3,3,48,48,3,3,48,3,3,3,3,3,3,3,3,3,3,3,3,3,3,76,3,3,3,48,0,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,10,12,42,3,3,77,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,3,82,4,5,5,6,8,5,6,8,50,50,53,83,50,53,84,27,85,17,27,53,17,4,86,87,5,88,5,6,8,9,18,50,95,96,5,115,116,117,118,119,120,17,34,34,34,34,34,34,34,34,144,145,146,27,27,27,27,27,27,27,27,105,105,147,148,105,149,150,151,154,106,106,113,113,106,155,113,68,68,4,156,68,157,158,105,6,8,5,74,74,78,78,74,106,78,113,159,160,161,17,68,162,27,163,7,81,81,5,164,81,165,74,166,78,11,11,11,11,11,11,11,11,11,11,104,27,111,104,81,111,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,112,168,133,112,11,133,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,169,170,68,126,126,126,126,126,126,126,126,171,172,74,173,78,129,129,129,129,129,129,129,129,175,13,13,89,89,13,81,89,137,137,137,137,137,137,137,137,140,140,140,140,140,140,140,140,13,176,89,177,178,179,4,180,182,183,184,5,6,8,13,13,13,13,13,13,13,13,13,13,13,13,17,185,186,187,188,189,190,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,191,192,193,194,13,195,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,14,14,89,197,14,198,199,32,32,32,32,32,32,32,32,32,32,93,93,200,201,93,202,14,32,32,32,32,32,32,203,204,205,206,207,153,153,153,14,153,93,208,104,153,111,209,211,97,97,212,14,97,153,153,213,214,32,32,32,32,32,32,215,216,217,218,219,223,224,225,97,226,227,228,229,112,230,133,15,15,232,233,15,101,101,102,102,101,236,102,14,237,239,240,241,14,14,243,242,244,245,15,14,242,246,247,101,248,102,249,250,251,252,253,254,257,258,15,15,15,15,15,15,15,15,15,15,259,260,261,262,93,263,13,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,264,97,265,266,15,267,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,256,268,15,269,270,101,271,102,272,256,256,273,274,275,276,277,256,278,279,281,282,283,284,285,286,16,287,289,290,291,292,293,294,295,296,298,299,300,16,16,16,16,16,16,16,16,16,16,16,302,303,304,305,306,307,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,308,309,310,311,16,312,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,313,16,33,33,33,33,33,33,33,33,33,33,315,316,317,318,319,320,15,33,33,33,33,33,33,321,322,323,324,326,327,328,329,330,331,332,333,334,335,337,39,39,39,39,39,39,39,39,39,39,338,33,33,33,33,33,33,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,339,340,341,342,39,343,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,344,41,41,41,41,41,41,41,41,41,41,345,346,290,347,348,351,16,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,352,353,354,355,41,356,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,44,44,301,357,44,358,301,359,360,361,363,364,365,366,369,301,370,301,371,372,373,374,376,44,377,378,379,142,142,395,397,142,143,143,400,402,143,404,407,44,44,44,44,44,44,44,44,44,44,409,142,402,402,301,412,143,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,408,408,408,418,44,413,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,47,47,142,393,47,393,393,143,420,384,384,449,142,384,398,410,410,143,401,427,458,428,143,47,460,461,393,350,350,391,391,350,384,391,384,413,401,398,463,47,47,47,47,47,47,47,47,47,47,464,350,427,391,428,391,437,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,465,466,467,468,47,437,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,79,79,350,469,79,362,362,367,367,362,470,367,350,387,387,387,387,387,387,387,387,438,471,79,476,484,486,488,362,489,367,368,368,490,491,368,362,492,367,79,79,79,79,79,79,79,79,79,79,493,441,442,443,438,368,444,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,441,442,443,494,79,444,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,80,80,399,445,80,446,368,375,375,- 1,482,375,482,482,- 1,- 1,368,- 1,- 1,- 1,- 1,- 1,- 1,80,- 1,- 1,- 1,- 1,- 1,- 1,375,399,- 1,482,- 1,445,- 1,446,375,80,80,80,80,80,80,80,80,80,80,- 1,- 1,- 1,- 1,- 1,- 1,- 1,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,- 1,- 1,399,- 1,80,- 1,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,90,90,380,380,90,- 1,380,390,390,390,390,390,390,390,390,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,90,- 1,380,- 1,- 1,- 1,- 1,- 1,- 1,- 1,380,- 1,- 1,- 1,- 1,- 1,90,90,90,90,90,90,90,90,90,90,- 1,- 1,- 1,- 1,- 1,- 1,- 1,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,- 1,- 1,- 1,- 1,90,- 1,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,92,92,- 1,403,92,403,403,403,403,403,403,403,403,403,403,- 1,- 1,- 1,399,426,- 1,426,- 1,92,426,426,426,426,426,426,426,426,426,426,- 1,- 1,- 1,- 1,- 1,92,92,92,92,92,92,92,92,92,92,- 1,- 1,- 1,- 1,- 1,- 1,- 1,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,- 1,- 1,- 1,- 1,92,- 1,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,98,98,- 1,- 1,98,429,429,429,429,429,429,429,429,429,429,- 1,- 1,- 1,- 1,432,- 1,432,- 1,98,432,432,432,432,432,432,432,432,432,432,- 1,- 1,- 1,- 1,- 1,98,98,98,98,98,98,98,98,98,98,- 1,- 1,- 1,- 1,- 1,- 1,- 1,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,- 1,- 1,- 1,- 1,98,- 1,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,100,100,- 1,- 1,100,433,433,433,433,433,433,433,433,433,433,462,- 1,- 1,- 1,- 1,- 1,- 1,- 1,100,462,462,462,462,462,462,462,462,- 1,- 1,- 1,- 1,- 1,- 1,- 1,100,100,100,100,100,100,100,100,100,100,- 1,- 1,- 1,- 1,- 1,- 1,- 1,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,- 1,- 1,- 1,- 1,100,- 1,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,107,107,107,107,107,107,107,107,107,107,107,107,107,- 1,- 1,- 1,- 1,- 1,- 1,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,- 1,- 1,- 1,- 1,107,- 1,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,108,108,108,108,108,108,108,108,108,108,108,108,108,- 1,- 1,- 1,- 1,- 1,- 1,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,- 1,- 1,- 1,- 1,108,- 1,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,109,109,109,109,109,109,109,109,109,109,109,109,109,- 1,- 1,- 1,- 1,- 1,- 1,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,110,- 1,- 1,110,109,- 1,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,- 1,- 1,- 1,- 1,110,110,110,110,110,110,110,110,110,110,110,110,110,- 1,- 1,- 1,- 1,- 1,- 1,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,- 1,- 1,- 1,- 1,110,- 1,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,114,114,114,114,114,114,114,114,114,114,- 1,- 1,- 1,- 1,- 1,- 1,- 1,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,124,- 1,- 1,124,114,- 1,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,- 1,- 1,135,- 1,- 1,135,124,124,124,124,124,124,124,124,127,127,127,127,127,127,127,127,127,127,- 1,- 1,- 1,- 1,- 1,- 1,- 1,127,127,127,127,127,127,- 1,- 1,- 1,135,135,135,135,135,135,135,135,- 1,- 1,- 1,- 1,- 1,- 1,- 1,124,- 1,- 1,110,- 1,475,- 1,- 1,127,127,127,127,127,127,475,475,475,475,475,475,475,475,- 1,124,128,128,128,128,128,128,128,128,128,128,135,- 1,- 1,- 1,- 1,- 1,- 1,128,128,128,128,128,128,138,138,138,138,138,138,138,138,138,138,135,- 1,- 1,- 1,- 1,- 1,- 1,138,138,138,138,138,138,- 1,- 1,- 1,128,128,128,128,128,128,385,- 1,- 1,385,- 1,- 1,139,139,139,139,139,139,139,139,139,139,- 1,138,138,138,138,138,138,139,139,139,139,139,139,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,385,385,385,385,385,385,385,385,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,139,139,139,139,139,139,- 1,388,388,388,388,388,388,388,388,388,388,- 1,- 1,- 1,- 1,- 1,- 1,- 1,388,388,388,388,388,388,- 1,- 1,385,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,389,389,389,389,389,389,389,389,389,389,385,388,388,388,388,388,388,389,389,389,389,389,389,- 1,- 1,405,- 1,405,405,405,405,405,405,405,405,405,405,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,405,389,389,389,389,389,389,405,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,405,- 1,- 1,405,406,- 1,406,406,406,406,406,406,406,406,406,406,405,- 1,- 1,- 1,- 1,- 1,- 1,405,- 1,- 1,- 1,406,- 1,- 1,- 1,- 1,405,- 1,406,405,- 1,- 1,- 1,- 1,- 1,- 1,- 1,406,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,406,- 1,- 1,- 1,- 1,- 1,- 1,406,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,406,411,411,411,411,411,411,411,411,411,411,- 1,- 1,- 1,- 1,- 1,- 1,- 1,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,- 1,- 1,- 1,- 1,411,- 1,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,411,417,417,417,417,417,417,417,417,417,417,- 1,- 1,- 1,- 1,- 1,- 1,- 1,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,- 1,- 1,- 1,- 1,417,- 1,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,417,424,424,424,424,424,424,424,424,424,424,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,424,424,- 1,- 1,- 1,- 1,425,424,425,425,425,425,425,425,425,425,425,425,430,430,430,430,430,430,430,430,430,430,- 1,425,- 1,- 1,424,424,- 1,- 1,425,- 1,- 1,424,430,- 1,- 1,- 1,- 1,425,430,- 1,431,431,431,431,431,431,431,431,431,431,- 1,- 1,- 1,425,- 1,- 1,- 1,- 1,- 1,- 1,425,431,431,- 1,430,- 1,- 1,- 1,431,425,430,- 1,- 1,434,434,434,434,434,434,434,434,434,434,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,431,431,434,- 1,- 1,- 1,- 1,431,434,435,- 1,435,435,435,435,435,435,435,435,435,435,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,435,- 1,434,- 1,- 1,- 1,- 1,435,434,- 1,- 1,- 1,- 1,- 1,- 1,436,435,436,436,436,436,436,436,436,436,436,436,- 1,- 1,- 1,- 1,- 1,435,- 1,- 1,- 1,- 1,- 1,436,435,- 1,- 1,- 1,- 1,- 1,436,- 1,- 1,435,- 1,- 1,- 1,- 1,- 1,436,- 1,- 1,450,450,450,450,450,450,450,450,450,450,- 1,- 1,- 1,436,- 1,- 1,- 1,- 1,- 1,- 1,436,450,450,- 1,- 1,- 1,- 1,- 1,450,436,439,439,439,439,439,439,439,439,439,439,- 1,- 1,- 1,- 1,- 1,- 1,- 1,439,439,439,439,439,439,450,450,- 1,- 1,- 1,- 1,- 1,450,- 1,- 1,- 1,- 1,- 1,- 1,- 1,440,440,440,440,440,440,440,440,440,440,- 1,439,439,439,439,439,439,440,440,440,440,440,440,- 1,- 1,- 1,459,- 1,440,- 1,- 1,459,- 1,- 1,- 1,- 1,- 1,440,- 1,- 1,459,459,459,459,459,459,459,459,- 1,440,440,440,440,440,440,459,- 1,- 1,- 1,- 1,440,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,440,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,459,- 1,- 1,- 1,- 1,459,459,- 1,- 1,- 1,459,- 1,- 1,- 1,- 1,- 1,- 1,- 1,459,- 1,- 1,- 1,459,- 1,459,- 1,459,- 1,459,472,472,472,472,472,472,472,472,472,472,- 1,- 1,- 1,- 1,- 1,- 1,- 1,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,- 1,- 1,- 1,- 1,- 1,- 1,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,473,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,473,473,473,473,473,473,473,473,473,473,- 1,- 1,- 1,- 1,- 1,- 1,- 1,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,- 1,- 1,- 1,- 1,- 1,- 1,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,473,483,- 1,- 1,483,- 1,- 1,- 1,483,483,483,483,483,483,483,483,483,483,- 1,- 1,- 1,- 1,- 1,- 1,- 1,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,- 1,- 1,- 1,- 1,483,- 1,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,483,485,- 1,- 1,- 1,- 1,- 1,- 1,- 1,485,485,485,485,485,485,485,485,485,485,- 1,- 1,- 1,- 1,- 1,- 1,- 1,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,- 1,- 1,- 1,- 1,485,- 1,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,485,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1};
const int Cyc_lex_base[484U]={0,0,75,192,305,310,311,166,312,91,27,384,28,523,637,715,829,325,92,- 3,0,- 1,- 2,- 8,- 3,1,- 2,323,- 4,2,166,- 5,605,907,312,- 6,- 8,- 4,16,945,- 3,1021,29,11,1135,- 4,13,1250,223,- 14,317,12,- 2,216,20,27,29,34,50,49,71,55,66,101,101,100,108,95,386,112,104,105,123,126,397,112,134,190,399,1365,1480,414,205,213,233,219,224,224,245,525,1595,- 9,1710,654,- 10,233,253,684,1825,- 7,1940,720,722,- 11,432,370,379,2018,2095,2172,2253,434,465,381,2328,253,253,253,251,247,257,0,13,4,2409,5,462,2417,2482,475,- 4,- 3,49,467,6,2443,7,491,2505,2543,499,- 28,1162,1167,273,264,267,271,281,284,290,291,- 25,584,271,276,287,280,291,313,310,313,309,320,326,333,335,- 23,361,391,394,413,420,405,- 27,423,451,448,458,465,467,- 19,447,463,455,467,478,473,475,491,492,504,500,500,522,524,- 21,544,543,536,560,556,573,558,580,583,571,575,572,575,- 26,576,581,595,603,591,593,609,616,617,705,4,622,618,618,608,612,626,635,641,623,639,643,5,20,- 16,646,643,638,639,637,656,647,643,647,663,647,672,664,659,681,661,696,703,698,701,743,744,23,51,- 18,731,732,727,738,739,753,754,1,53,812,53,809,751,751,759,760,824,817,763,764,792,788,767,770,825,826,827,774,775,1078,798,799,800,801,764,773,788,794,795,850,851,879,- 15,826,827,882,884,912,870,871,926,927,928,- 12,875,883,938,939,940,887,888,943,944,945,- 13,875,874,888,891,894,876,902,936,942,943,998,1000,- 17,1277,982,983,980,979,978,973,1002,1005,1006,1004,1018,1142,1039,1041,1042,1055,1370,1282,1059,1060,1050,1052,1051,1064,1482,1056,1057,1055,1069,1487,- 7,- 8,8,1375,2575,9,1453,2599,2637,1561,1391,- 49,1253,- 2,1108,- 4,1109,1135,1367,1117,1227,1222,1580,1118,2664,2707,1123,1166,1132,1207,2777,1134,1170,- 36,- 42,- 37,2852,1137,- 40,1168,- 45,- 39,- 48,2927,2956,1679,1193,1203,1695,2966,2996,1794,1810,3029,3060,3098,1195,1316,3168,3206,1309,1319,1311,1353,1409,1433,- 6,- 34,1226,3138,- 47,- 30,- 32,- 46,- 29,- 31,- 33,1234,3246,1235,1236,1912,1238,1250,1254,1257,1258,1269,1274,1302,1303,3319,3403,- 22,1929,1304,- 20,- 24,- 41,- 38,- 35,1506,3485,2,3568,1303,15,1246,1281,1285,1284,1280,1292,4};
const int Cyc_lex_backtrk[484U]={- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,0,- 1,- 1,- 1,- 1,- 1,- 1,- 1,2,- 1,- 1,- 1,- 1,2,- 1,8,- 1,3,5,- 1,- 1,6,5,- 1,- 1,- 1,7,6,- 1,6,5,2,0,- 1,- 1,0,2,- 1,12,13,- 1,13,13,13,13,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,11,12,2,4,4,- 1,0,0,0,2,0,- 1,- 1,- 1,- 1,- 1,- 1,- 1,2,2,8,3,5,- 1,6,5,- 1,- 1,6,5,2,8,3,5,- 1,6,5,- 1,27,27,27,27,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,23,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,19,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,21,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,6,1,9,2,4,- 1,5,4,- 1,- 1,2,- 1,48,- 1,48,48,48,48,48,48,48,48,5,7,48,48,48,48,0,48,48,- 1,- 1,- 1,0,43,- 1,42,- 1,- 1,- 1,9,7,- 1,7,7,- 1,8,9,- 1,- 1,9,5,6,5,5,- 1,4,4,4,6,6,5,5,- 1,- 1,- 1,9,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 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,- 1,1,2,1,1,- 1,- 1,- 1,- 1,- 1,- 1,- 1};
const int Cyc_lex_default[484U]={- 1,- 1,- 1,381,370,141,23,99,23,19,- 1,- 1,12,31,49,35,36,23,19,0,- 1,0,0,0,0,- 1,0,- 1,0,- 1,- 1,0,- 1,- 1,- 1,0,0,0,- 1,- 1,0,- 1,42,- 1,- 1,0,- 1,- 1,- 1,0,- 1,- 1,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,0,- 1,- 1,0,- 1,- 1,- 1,- 1,0,- 1,- 1,- 1,0,104,- 1,- 1,- 1,- 1,- 1,111,111,111,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,0,0,- 1,133,- 1,- 1,- 1,- 1,- 1,- 1,- 1,0,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,0,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,0,- 1,- 1,- 1,- 1,- 1,- 1,0,- 1,- 1,- 1,- 1,- 1,- 1,0,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,0,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,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,- 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,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,270,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 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,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,0,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,0,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,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,0,0,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,0,- 1,0,- 1,0,- 1,- 1,447,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,0,0,0,- 1,- 1,0,- 1,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,- 1,- 1,0,0,0,0,0,0,0,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,0,- 1,- 1,0,0,0,0,0,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1};
const int Cyc_lex_trans[3825U]={0,0,0,0,0,0,0,0,0,0,22,19,28,476,19,28,19,28,36,19,48,48,46,46,48,22,46,0,0,0,0,0,21,269,21,477,21,22,- 1,- 1,22,- 1,- 1,48,222,46,234,22,474,474,474,474,474,474,474,474,474,474,31,104,22,235,115,42,259,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,31,260,270,272,474,133,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,472,472,472,472,472,472,472,472,472,472,122,20,75,22,69,57,58,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,59,60,61,62,472,63,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,64,65,130,382,383,382,382,383,131,22,66,67,68,70,71,132,34,34,34,34,34,34,34,34,72,73,382,384,385,74,76,386,387,388,48,48,389,390,48,391,392,393,394,395,395,395,395,395,395,395,395,395,396,77,397,398,399,48,19,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,19,- 1,- 1,401,400,78,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,371,402,102,372,142,142,24,24,142,134,123,105,105,82,95,105,83,85,28,86,24,29,84,25,373,87,88,142,89,22,26,26,21,21,105,96,97,143,116,117,118,119,120,121,26,35,35,35,35,35,35,35,35,153,146,147,30,30,30,30,30,30,30,30,105,105,148,149,105,150,151,152,211,113,113,113,113,113,197,113,68,68,374,191,68,182,175,105,135,124,144,74,74,79,79,74,113,79,113,168,161,162,27,68,163,31,164,21,81,81,145,165,81,166,74,167,79,114,114,114,114,114,114,114,114,114,114,- 1,32,- 1,- 1,81,- 1,22,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,- 1,169,- 1,- 1,114,- 1,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,170,171,28,129,129,129,129,129,129,129,129,172,173,19,174,31,35,35,35,35,35,35,35,35,176,106,106,90,90,106,35,90,140,140,140,140,140,140,140,140,35,35,35,35,35,35,35,35,106,177,90,178,179,180,91,181,183,184,185,21,21,21,107,108,107,107,107,107,107,107,107,107,107,107,21,186,187,188,189,190,36,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,192,193,194,195,107,196,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,50,50,91,198,50,199,200,33,33,33,33,33,33,33,33,33,33,93,93,201,202,93,203,50,33,33,33,33,33,33,204,205,206,207,208,154,155,156,51,157,93,209,- 1,158,- 1,210,212,98,98,213,52,98,159,160,214,215,33,33,33,33,33,33,216,217,218,219,220,236,220,220,98,223,220,225,226,- 1,224,- 1,43,43,227,228,43,101,101,102,102,101,229,102,53,220,230,231,232,54,55,233,326,221,237,43,56,273,261,241,101,242,102,238,239,243,244,245,246,247,240,44,44,44,44,44,44,44,44,44,44,248,249,250,251,94,252,28,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,253,99,254,255,44,256,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,257,258,45,262,263,36,264,103,265,266,267,268,91,274,275,271,276,277,278,288,280,281,282,283,284,37,279,285,286,287,49,289,290,320,315,309,304,296,38,39,39,39,39,39,39,39,39,39,39,297,298,299,300,301,302,21,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,303,305,306,307,39,308,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,40,103,22,33,33,33,33,33,33,33,33,33,33,310,311,312,313,314,316,31,33,33,33,33,33,33,317,318,319,94,321,322,323,324,325,327,328,329,330,331,332,41,41,41,41,41,41,41,41,41,41,333,33,33,33,33,33,33,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,334,335,336,337,41,338,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,- 1,41,41,41,41,41,41,41,41,41,41,352,347,343,344,345,346,21,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,99,348,349,350,41,351,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,46,46,291,353,46,354,292,351,351,355,356,351,365,360,361,293,362,294,363,364,366,367,368,46,369,210,470,357,357,468,351,357,339,339,446,437,339,412,19,47,47,47,47,47,47,47,47,47,47,152,357,405,469,295,408,339,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,409,174,410,411,47,403,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,22,46,46,358,471,46,471,471,340,441,141,407,444,359,440,467,466,181,341,196,36,36,35,342,46,442,443,471,339,339,445,260,339,357,357,103,404,357,314,325,47,47,47,47,47,47,47,47,47,47,49,339,36,36,35,303,357,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,235,338,463,21,47,478,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,22,79,79,340,- 1,79,356,356,358,479,356,380,380,341,480,380,481,482,359,35,483,31,31,99,79,0,0,380,380,356,0,380,0,- 1,380,0,21,31,0,0,80,80,80,80,80,80,80,80,80,80,380,35,21,31,31,99,99,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,0,0,0,448,80,99,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,31,81,81,364,364,81,436,364,369,369,0,0,369,379,379,379,379,379,379,379,379,436,0,0,81,0,364,471,0,471,471,369,0,0,28,0,0,0,436,35,80,80,80,80,80,80,80,80,80,80,471,0,0,436,0,0,0,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,0,0,0,0,80,0,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,35,90,90,0,0,90,31,31,31,31,31,31,31,31,0,0,0,0,0,0,- 1,0,0,438,90,439,439,439,439,439,439,439,439,439,439,0,0,0,0,0,92,92,92,92,92,92,92,92,92,92,0,0,0,0,0,0,0,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,0,0,0,0,92,0,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,91,93,93,0,418,93,418,0,0,419,419,419,419,419,419,419,419,419,419,0,0,0,0,0,93,419,419,419,419,419,419,419,419,419,419,0,0,0,0,0,92,92,92,92,92,92,92,92,92,92,0,0,0,0,0,0,0,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,0,0,0,0,92,0,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,94,98,98,0,422,98,422,0,0,423,423,423,423,423,423,423,423,423,423,0,0,0,0,0,98,423,423,423,423,423,423,423,423,423,423,0,0,0,0,0,100,100,100,100,100,100,100,100,100,100,0,0,0,0,0,0,0,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,0,0,0,0,100,0,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,99,101,101,463,0,101,0,0,0,0,0,0,464,464,464,464,464,464,464,464,463,0,0,0,101,0,0,0,0,465,465,465,465,465,465,465,465,0,0,0,100,100,100,100,100,100,100,100,100,100,0,0,0,0,0,0,0,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,0,0,0,0,100,0,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,36,109,109,109,109,109,109,109,109,109,109,109,109,22,0,0,0,0,0,0,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,0,0,0,0,109,0,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,110,109,109,109,109,109,109,109,109,109,109,22,0,0,0,0,0,0,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,0,0,0,0,109,0,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,22,0,0,0,0,0,0,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,- 1,0,0,- 1,109,0,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,0,0,0,0,110,110,110,110,110,110,110,110,110,110,110,110,112,0,0,0,0,0,0,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,0,0,0,0,110,0,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,114,114,114,114,114,114,114,114,114,114,0,0,0,0,0,0,0,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,28,0,0,125,114,0,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,0,0,28,0,0,136,126,126,126,126,126,126,126,126,128,128,128,128,128,128,128,128,128,128,0,0,0,0,0,0,0,128,128,128,128,128,128,0,0,0,137,137,137,137,137,137,137,137,0,0,0,0,0,0,0,31,0,0,- 1,0,0,0,0,128,128,128,128,128,128,0,0,0,0,0,0,0,0,0,127,128,128,128,128,128,128,128,128,128,128,31,0,0,0,0,0,0,128,128,128,128,128,128,139,139,139,139,139,139,139,139,139,139,138,0,0,0,0,0,0,139,139,139,139,139,139,0,0,0,128,128,128,128,128,128,19,0,0,375,0,0,139,139,139,139,139,139,139,139,139,139,0,139,139,139,139,139,139,139,139,139,139,139,139,0,0,0,0,0,0,0,0,0,376,376,376,376,376,376,376,376,0,0,0,0,0,0,0,0,0,139,139,139,139,139,139,0,378,378,378,378,378,378,378,378,378,378,0,0,0,0,0,0,0,378,378,378,378,378,378,0,0,28,0,0,0,0,0,0,0,0,0,0,0,0,378,378,378,378,378,378,378,378,378,378,377,378,378,378,378,378,378,378,378,378,378,378,378,0,0,413,0,424,424,424,424,424,424,424,424,425,425,0,0,0,0,0,0,0,0,0,0,0,415,378,378,378,378,378,378,426,0,0,0,0,0,0,0,0,427,0,0,428,413,0,414,414,414,414,414,414,414,414,414,414,415,0,0,0,0,0,0,426,0,0,0,415,0,0,0,0,427,0,416,428,0,0,0,0,0,0,0,417,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,415,0,0,0,0,0,0,416,0,0,0,0,0,0,0,0,417,406,406,406,406,406,406,406,406,406,406,0,0,0,0,0,0,0,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,0,0,0,0,406,0,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,0,0,0,0,0,0,0,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,0,0,0,0,406,0,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,420,420,420,420,420,420,420,420,420,420,0,0,0,0,0,0,0,0,0,0,0,421,94,0,0,0,0,413,94,414,414,414,414,414,414,414,414,414,414,419,419,419,419,419,419,419,419,419,419,0,415,0,0,421,94,0,0,416,0,0,94,91,0,0,0,0,417,91,0,420,420,420,420,420,420,420,420,420,420,0,0,0,415,0,0,0,0,0,0,416,421,94,0,91,0,0,0,94,417,91,0,0,423,423,423,423,423,423,423,423,423,423,0,0,0,0,0,0,0,0,0,0,421,94,94,0,0,0,0,94,94,413,0,424,424,424,424,424,424,424,424,425,425,0,0,0,0,0,0,0,0,0,0,0,415,0,94,0,0,0,0,434,94,0,0,0,0,0,0,413,435,425,425,425,425,425,425,425,425,425,425,0,0,0,0,0,415,0,0,0,0,0,415,434,0,0,0,0,0,432,0,0,435,0,0,0,0,0,433,0,0,439,439,439,439,439,439,439,439,439,439,0,0,0,415,0,0,0,0,0,0,432,421,94,0,0,0,0,0,94,433,429,429,429,429,429,429,429,429,429,429,0,0,0,0,0,0,0,429,429,429,429,429,429,421,94,0,0,0,0,0,94,0,0,0,0,0,0,0,429,429,429,429,429,429,429,429,429,429,0,429,429,429,429,429,429,429,429,429,429,429,429,0,0,0,449,0,430,0,0,450,0,0,0,0,0,431,0,0,451,451,451,451,451,451,451,451,0,429,429,429,429,429,429,452,0,0,0,0,430,0,0,0,0,0,0,0,0,431,0,0,0,0,0,0,0,0,0,0,0,0,0,0,453,0,0,0,0,454,455,0,0,0,456,0,0,0,0,0,0,0,457,0,0,0,458,0,459,0,460,0,461,462,462,462,462,462,462,462,462,462,462,0,0,0,0,0,0,0,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,0,0,0,0,0,0,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,167,0,0,0,0,0,0,0,0,462,462,462,462,462,462,462,462,462,462,0,0,0,0,0,0,0,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,0,0,0,0,0,0,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,19,0,0,473,0,0,0,472,472,472,472,472,472,472,472,472,472,0,0,0,0,0,0,0,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,0,0,0,0,472,0,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,475,0,0,0,0,0,0,0,474,474,474,474,474,474,474,474,474,474,0,0,0,0,0,0,0,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,0,0,0,0,474,0,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0};
const int Cyc_lex_check[3825U]={- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,0,25,29,0,123,125,134,136,372,375,43,43,46,46,43,476,46,- 1,- 1,- 1,- 1,- 1,121,268,473,0,483,10,12,42,10,12,42,43,221,46,233,20,1,1,1,1,1,1,1,1,1,1,38,51,122,234,10,38,258,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,132,259,269,271,1,132,1,1,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,9,18,54,46,55,56,57,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,58,59,60,61,2,62,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,63,64,7,3,3,3,3,3,7,7,65,66,67,69,70,7,30,30,30,30,30,30,30,30,71,72,3,3,3,73,75,3,3,3,48,48,3,3,48,3,3,3,3,3,3,3,3,3,3,3,3,3,3,76,3,3,3,48,0,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,10,12,42,3,3,77,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,3,82,4,5,5,6,8,5,6,8,50,50,53,83,50,53,84,27,85,17,27,53,17,4,86,87,5,88,5,6,8,9,18,50,95,96,5,115,116,117,118,119,120,17,34,34,34,34,34,34,34,34,144,145,146,27,27,27,27,27,27,27,27,105,105,147,148,105,149,150,151,154,106,106,113,113,106,155,113,68,68,4,156,68,157,158,105,6,8,5,74,74,78,78,74,106,78,113,159,160,161,17,68,162,27,163,7,81,81,5,164,81,165,74,166,78,11,11,11,11,11,11,11,11,11,11,104,27,111,104,81,111,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,112,168,133,112,11,133,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,169,170,68,126,126,126,126,126,126,126,126,171,172,74,173,78,129,129,129,129,129,129,129,129,175,13,13,89,89,13,81,89,137,137,137,137,137,137,137,137,140,140,140,140,140,140,140,140,13,176,89,177,178,179,4,180,182,183,184,5,6,8,13,13,13,13,13,13,13,13,13,13,13,13,17,185,186,187,188,189,190,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,191,192,193,194,13,195,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,13,14,14,89,197,14,198,199,32,32,32,32,32,32,32,32,32,32,93,93,200,201,93,202,14,32,32,32,32,32,32,203,204,205,206,207,153,153,153,14,153,93,208,104,153,111,209,211,97,97,212,14,97,153,153,213,214,32,32,32,32,32,32,215,216,217,218,219,223,220,220,97,222,220,224,225,112,222,133,15,15,226,227,15,101,101,102,102,101,228,102,14,220,229,230,231,14,14,232,237,220,236,15,14,238,239,240,101,241,102,236,236,242,243,244,245,246,236,15,15,15,15,15,15,15,15,15,15,247,248,249,250,93,251,13,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,252,97,253,254,15,255,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,256,257,15,261,262,101,263,102,264,265,266,267,272,273,274,270,275,276,277,278,279,280,281,282,283,16,277,284,285,286,287,288,289,291,292,293,294,295,16,16,16,16,16,16,16,16,16,16,16,296,297,298,299,300,301,14,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,302,304,305,306,16,307,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,308,16,33,33,33,33,33,33,33,33,33,33,309,310,311,312,313,315,15,33,33,33,33,33,33,316,317,318,319,320,321,322,323,324,326,327,328,329,330,331,39,39,39,39,39,39,39,39,39,39,332,33,33,33,33,33,33,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,333,334,335,336,39,337,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,270,41,41,41,41,41,41,41,41,41,41,340,341,342,343,344,345,16,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,346,347,348,349,41,350,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,41,44,44,290,352,44,353,290,351,351,354,355,351,358,359,360,290,361,290,362,363,365,366,367,44,368,384,386,142,142,387,351,142,143,143,389,393,143,396,351,44,44,44,44,44,44,44,44,44,44,398,142,401,387,290,407,143,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,397,397,397,409,44,402,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,44,47,47,142,382,47,382,382,143,391,399,399,390,142,438,447,449,450,143,452,416,417,426,143,47,391,391,382,339,339,390,453,339,357,357,454,402,357,455,456,47,47,47,47,47,47,47,47,47,47,457,339,416,417,426,458,357,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,459,460,465,475,47,477,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,47,79,79,339,388,79,356,356,357,478,356,373,373,339,479,373,480,481,357,427,482,430,431,432,79,- 1,- 1,380,380,356,- 1,380,- 1,388,373,- 1,373,356,- 1,- 1,79,79,79,79,79,79,79,79,79,79,380,427,380,430,431,432,433,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,- 1,- 1,- 1,388,79,433,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,80,80,364,364,80,434,364,369,369,- 1,- 1,369,376,376,376,376,376,376,376,376,435,- 1,- 1,80,- 1,364,471,- 1,471,471,369,- 1,- 1,364,- 1,- 1,- 1,434,369,80,80,80,80,80,80,80,80,80,80,471,- 1,- 1,435,- 1,- 1,- 1,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,- 1,- 1,- 1,- 1,80,- 1,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,90,90,- 1,- 1,90,379,379,379,379,379,379,379,379,- 1,- 1,- 1,- 1,- 1,- 1,388,- 1,- 1,392,90,392,392,392,392,392,392,392,392,392,392,- 1,- 1,- 1,- 1,- 1,90,90,90,90,90,90,90,90,90,90,- 1,- 1,- 1,- 1,- 1,- 1,- 1,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,- 1,- 1,- 1,- 1,90,- 1,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,92,92,- 1,415,92,415,- 1,- 1,415,415,415,415,415,415,415,415,415,415,- 1,- 1,- 1,- 1,- 1,92,418,418,418,418,418,418,418,418,418,418,- 1,- 1,- 1,- 1,- 1,92,92,92,92,92,92,92,92,92,92,- 1,- 1,- 1,- 1,- 1,- 1,- 1,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,- 1,- 1,- 1,- 1,92,- 1,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,92,98,98,- 1,421,98,421,- 1,- 1,421,421,421,421,421,421,421,421,421,421,- 1,- 1,- 1,- 1,- 1,98,422,422,422,422,422,422,422,422,422,422,- 1,- 1,- 1,- 1,- 1,98,98,98,98,98,98,98,98,98,98,- 1,- 1,- 1,- 1,- 1,- 1,- 1,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,- 1,- 1,- 1,- 1,98,- 1,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,100,100,451,- 1,100,- 1,- 1,- 1,- 1,- 1,- 1,451,451,451,451,451,451,451,451,464,- 1,- 1,- 1,100,- 1,- 1,- 1,- 1,464,464,464,464,464,464,464,464,- 1,- 1,- 1,100,100,100,100,100,100,100,100,100,100,- 1,- 1,- 1,- 1,- 1,- 1,- 1,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,- 1,- 1,- 1,- 1,100,- 1,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,100,107,107,107,107,107,107,107,107,107,107,107,107,107,- 1,- 1,- 1,- 1,- 1,- 1,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,- 1,- 1,- 1,- 1,107,- 1,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,107,108,108,108,108,108,108,108,108,108,108,108,108,108,- 1,- 1,- 1,- 1,- 1,- 1,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,- 1,- 1,- 1,- 1,108,- 1,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,108,109,109,109,109,109,109,109,109,109,109,109,109,109,- 1,- 1,- 1,- 1,- 1,- 1,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,110,- 1,- 1,110,109,- 1,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,109,- 1,- 1,- 1,- 1,110,110,110,110,110,110,110,110,110,110,110,110,110,- 1,- 1,- 1,- 1,- 1,- 1,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,- 1,- 1,- 1,- 1,110,- 1,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,110,114,114,114,114,114,114,114,114,114,114,- 1,- 1,- 1,- 1,- 1,- 1,- 1,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,124,- 1,- 1,124,114,- 1,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,- 1,- 1,135,- 1,- 1,135,124,124,124,124,124,124,124,124,127,127,127,127,127,127,127,127,127,127,- 1,- 1,- 1,- 1,- 1,- 1,- 1,127,127,127,127,127,127,- 1,- 1,- 1,135,135,135,135,135,135,135,135,- 1,- 1,- 1,- 1,- 1,- 1,- 1,124,- 1,- 1,110,- 1,- 1,- 1,- 1,127,127,127,127,127,127,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,124,128,128,128,128,128,128,128,128,128,128,135,- 1,- 1,- 1,- 1,- 1,- 1,128,128,128,128,128,128,138,138,138,138,138,138,138,138,138,138,135,- 1,- 1,- 1,- 1,- 1,- 1,138,138,138,138,138,138,- 1,- 1,- 1,128,128,128,128,128,128,374,- 1,- 1,374,- 1,- 1,139,139,139,139,139,139,139,139,139,139,- 1,138,138,138,138,138,138,139,139,139,139,139,139,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,374,374,374,374,374,374,374,374,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,139,139,139,139,139,139,- 1,377,377,377,377,377,377,377,377,377,377,- 1,- 1,- 1,- 1,- 1,- 1,- 1,377,377,377,377,377,377,- 1,- 1,374,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,378,378,378,378,378,378,378,378,378,378,374,377,377,377,377,377,377,378,378,378,378,378,378,- 1,- 1,394,- 1,394,394,394,394,394,394,394,394,394,394,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,394,378,378,378,378,378,378,394,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,394,- 1,- 1,394,395,- 1,395,395,395,395,395,395,395,395,395,395,394,- 1,- 1,- 1,- 1,- 1,- 1,394,- 1,- 1,- 1,395,- 1,- 1,- 1,- 1,394,- 1,395,394,- 1,- 1,- 1,- 1,- 1,- 1,- 1,395,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,395,- 1,- 1,- 1,- 1,- 1,- 1,395,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,395,400,400,400,400,400,400,400,400,400,400,- 1,- 1,- 1,- 1,- 1,- 1,- 1,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,- 1,- 1,- 1,- 1,400,- 1,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,400,406,406,406,406,406,406,406,406,406,406,- 1,- 1,- 1,- 1,- 1,- 1,- 1,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,- 1,- 1,- 1,- 1,406,- 1,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,406,413,413,413,413,413,413,413,413,413,413,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,413,413,- 1,- 1,- 1,- 1,414,413,414,414,414,414,414,414,414,414,414,414,419,419,419,419,419,419,419,419,419,419,- 1,414,- 1,- 1,413,413,- 1,- 1,414,- 1,- 1,413,419,- 1,- 1,- 1,- 1,414,419,- 1,420,420,420,420,420,420,420,420,420,420,- 1,- 1,- 1,414,- 1,- 1,- 1,- 1,- 1,- 1,414,420,420,- 1,419,- 1,- 1,- 1,420,414,419,- 1,- 1,423,423,423,423,423,423,423,423,423,423,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,420,420,423,- 1,- 1,- 1,- 1,420,423,424,- 1,424,424,424,424,424,424,424,424,424,424,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,424,- 1,423,- 1,- 1,- 1,- 1,424,423,- 1,- 1,- 1,- 1,- 1,- 1,425,424,425,425,425,425,425,425,425,425,425,425,- 1,- 1,- 1,- 1,- 1,424,- 1,- 1,- 1,- 1,- 1,425,424,- 1,- 1,- 1,- 1,- 1,425,- 1,- 1,424,- 1,- 1,- 1,- 1,- 1,425,- 1,- 1,439,439,439,439,439,439,439,439,439,439,- 1,- 1,- 1,425,- 1,- 1,- 1,- 1,- 1,- 1,425,439,439,- 1,- 1,- 1,- 1,- 1,439,425,428,428,428,428,428,428,428,428,428,428,- 1,- 1,- 1,- 1,- 1,- 1,- 1,428,428,428,428,428,428,439,439,- 1,- 1,- 1,- 1,- 1,439,- 1,- 1,- 1,- 1,- 1,- 1,- 1,429,429,429,429,429,429,429,429,429,429,- 1,428,428,428,428,428,428,429,429,429,429,429,429,- 1,- 1,- 1,448,- 1,429,- 1,- 1,448,- 1,- 1,- 1,- 1,- 1,429,- 1,- 1,448,448,448,448,448,448,448,448,- 1,429,429,429,429,429,429,448,- 1,- 1,- 1,- 1,429,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,429,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,448,- 1,- 1,- 1,- 1,448,448,- 1,- 1,- 1,448,- 1,- 1,- 1,- 1,- 1,- 1,- 1,448,- 1,- 1,- 1,448,- 1,448,- 1,448,- 1,448,461,461,461,461,461,461,461,461,461,461,- 1,- 1,- 1,- 1,- 1,- 1,- 1,461,461,461,461,461,461,461,461,461,461,461,461,461,461,461,461,461,461,461,461,461,461,461,461,461,461,- 1,- 1,- 1,- 1,- 1,- 1,461,461,461,461,461,461,461,461,461,461,461,461,461,461,461,461,461,461,461,461,461,461,461,461,461,461,462,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,462,462,462,462,462,462,462,462,462,462,- 1,- 1,- 1,- 1,- 1,- 1,- 1,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,- 1,- 1,- 1,- 1,- 1,- 1,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,462,472,- 1,- 1,472,- 1,- 1,- 1,472,472,472,472,472,472,472,472,472,472,- 1,- 1,- 1,- 1,- 1,- 1,- 1,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,- 1,- 1,- 1,- 1,472,- 1,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,472,474,- 1,- 1,- 1,- 1,- 1,- 1,- 1,474,474,474,474,474,474,474,474,474,474,- 1,- 1,- 1,- 1,- 1,- 1,- 1,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,- 1,- 1,- 1,- 1,474,- 1,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,474,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1,- 1};
int Cyc_lex_engine(int start_state,struct Cyc_Lexing_lexbuf*lbuf){struct Cyc_Lexing_lexbuf*_T0;struct Cyc_Lexing_lexbuf*_T1;struct Cyc_Lexing_lexbuf*_T2;struct Cyc_Lexing_lexbuf*_T3;int _T4;const int*_T5;int _T6;const char*_T7;const int*_T8;int _T9;int _TA;const int*_TB;int _TC;struct Cyc_Lexing_lexbuf*_TD;struct Cyc_Lexing_lexbuf*_TE;struct Cyc_Lexing_lexbuf*_TF;struct Cyc_Lexing_lexbuf*_T10;int _T11;struct Cyc_Lexing_lexbuf*_T12;int _T13;struct Cyc_Lexing_lexbuf*_T14;int _T15;int _T16;int _T17;struct Cyc_Lexing_lexbuf*_T18;struct _fat_ptr _T19;struct Cyc_Lexing_lexbuf*_T1A;int _T1B;int _T1C;unsigned char*_T1D;char*_T1E;char _T1F;int _T20;int _T21;const int*_T22;int _T23;const char*_T24;const int*_T25;int _T26;int _T27;const int*_T28;int _T29;const int*_T2A;int _T2B;struct Cyc_Lexing_lexbuf*_T2C;struct Cyc_Lexing_lexbuf*_T2D;struct Cyc_Lexing_lexbuf*_T2E;int _T2F;int _T30;struct Cyc_Lexing_Error_exn_struct*_T31;void*_T32;struct Cyc_Lexing_lexbuf*_T33;int _T34;struct Cyc_Lexing_lexbuf*_T35;
# 212
int state;int base;int backtrk;


@@ 641,7 641,7 @@ _T3->lex_last_action=- 1;goto _TL6;
_TL5: _T4=- state;state=_T4 - 1;_TL6:
# 222
 _TL7: if(1)goto _TL8;else{goto _TL9;}
_TL8: _T5=Cyc_lex_base;_T6=state;_T7=_check_known_subscript_notnull(_T5,495U,sizeof(int),_T6);_T8=(const int*)_T7;base=*_T8;
_TL8: _T5=Cyc_lex_base;_T6=state;_T7=_check_known_subscript_notnull(_T5,484U,sizeof(int),_T6);_T8=(const int*)_T7;base=*_T8;
if(base >= 0)goto _TLA;_T9=- base;_TA=_T9 - 1;return _TA;_TLA: _TB=Cyc_lex_backtrk;_TC=state;
backtrk=_TB[_TC];
if(backtrk < 0)goto _TLC;_TD=lbuf;_TE=lbuf;


@@ 946,13 946,13 @@ return 1;case 14: _T21=
_tag_fat("Warning: use of mode word deleted\n",sizeof(char),35U);_T22=_tag_fat(0U,sizeof(void*),0);Cyc_log(_T21,_T22);
return 1;case 15: _T23=
# 469
_tag_fat("Warning: use of __attribute__ ((deprecated)) deleted\n",sizeof(char),54U);_T24=_tag_fat(0U,sizeof(void*),0);Cyc_log(_T23,_T24);
_tag_fat("Warning: use of __attribute__((deprecated)) deleted\n",sizeof(char),53U);_T24=_tag_fat(0U,sizeof(void*),0);Cyc_log(_T23,_T24);
return 1;case 16: _T25=
# 472
_tag_fat("Warning: use of __attribute__ ((__deprecated__)) deleted\n",sizeof(char),58U);_T26=_tag_fat(0U,sizeof(void*),0);Cyc_log(_T25,_T26);
_tag_fat("Warning: use of __attribute__((__deprecated__)) deleted\n",sizeof(char),57U);_T26=_tag_fat(0U,sizeof(void*),0);Cyc_log(_T25,_T26);
return 1;case 17: _T27=
# 475
_tag_fat("Warning: use of __attribute__ ((__transparent_union__)) deleted\n",sizeof(char),65U);_T28=_tag_fat(0U,sizeof(void*),0);Cyc_log(_T27,_T28);
_tag_fat("Warning: use of __attribute__((__transparent_union__)) deleted\n",sizeof(char),64U);_T28=_tag_fat(0U,sizeof(void*),0);Cyc_log(_T27,_T28);
return 1;case 18: _T29=
# 478
_check_null(Cyc_slurp_out);Cyc_fputs("inline",_T29);return 1;case 19: _T2A=

M src/buildlib.cyl => src/buildlib.cyl +13 -13
@@ 441,38 441,38 @@ and slurp = parse /* returns 1 if more to do, 0 if all done */
| "__extension__" /* Used in cygwin in sys/reent.h */
{ log("Warning: use of __extension__ deleted\n");
  return 1; }
| "__attribute__ ((__nonnull__ (" [^')']* ")))"
| "__attribute__" ws* "((__nonnull__ (" [^')']* ")))"
/* We should just support this directly in Cyclone*/
{ log("Warning: use of nonnull attribute deleted\n");
  return 1; }
| "__attribute__ ((__mode__ (__HI__)))" /* Used in linux in _G_config.h */
| "__attribute__" ws* "((__mode__ (__HI__)))" /* Used in linux in _G_config.h */
/* These mode hacks WILL cause bugs; best solution is to
   support mode directly in Cyclone */
{ log("Warning: use of mode HI deleted\n");
  return 1; }
| "__attribute__ ((__mode__ (__SI__)))" /* Used in linux in _G_config.h */
| "__attribute__" ws* "((__mode__ (__SI__)))" /* Used in linux in _G_config.h */
{ log("Warning: use of mode SI deleted\n");
  return 1; }
| "__attribute__ ((__mode__ (__QI__)))" /* Used in linux in sys/types.h */
| "__attribute__" ws* "((__mode__ (__QI__)))" /* Used in linux in sys/types.h */
{ log("Warning: use of mode QI deleted\n");
  return 1; }
| "__attribute__ ((__mode__ (__DI__)))" /* Used in linux in sys/types.h */
| "__attribute__" ws* "((__mode__ (__DI__)))" /* Used in linux in sys/types.h */
{ log("Warning: use of mode DI deleted\n");
  return 1; }
| "__attribute__((__mode__(__DI__)))" /* Used in freebsd in a number of places */
| "__attribute__" ws* "((__mode__(__DI__)))" /* Used in freebsd in a number of places */
{ log("Warning: use of mode DI deleted\n");
  return 1; }
| "__attribute__ ((__mode__ (__word__)))" /* Used in linux in sys/types.h */
| "__attribute__" ws* "((__mode__ (__word__)))" /* Used in linux in sys/types.h */
{ log("Warning: use of mode word deleted\n");
  return 1; }
| "__attribute__ ((deprecated))"
{ log("Warning: use of __attribute__ ((deprecated)) deleted\n");
| "__attribute__" ws* "((deprecated))"
{ log("Warning: use of __attribute__((deprecated)) deleted\n");
  return 1; }
| "__attribute__ ((__deprecated__))"
{ log("Warning: use of __attribute__ ((__deprecated__)) deleted\n");
| "__attribute__" ws* "((__deprecated__))"
{ log("Warning: use of __attribute__((__deprecated__)) deleted\n");
  return 1; }
| "__attribute__ ((__transparent_union__))"
{ log("Warning: use of __attribute__ ((__transparent_union__)) deleted\n");
| "__attribute__" ws* "((__transparent_union__))"
{ log("Warning: use of __attribute__((__transparent_union__)) deleted\n");
  return 1; }
| "__inline__" /* Used in cygwin in stdio.h */
{ fputs("inline",(FILE @)slurp_out); return 1; }