Commit dd166b94 authored by Daniel Morsing's avatar Daniel Morsing Committed by Russ Cox

cmd/gc: point "no new variables" error at right line number.

Fixes #3856.

R=dsymonds, rsc
CC=golang-dev
https://golang.org/cl/6455056
parent be629bf7
......@@ -464,7 +464,7 @@ colasdefn(NodeList *left, Node *defn)
if(isblank(n))
continue;
if(!colasname(n)) {
yyerror("non-name %N on left side of :=", n);
yyerrorl(defn->lineno, "non-name %N on left side of :=", n);
nerr++;
continue;
}
......@@ -479,11 +479,11 @@ colasdefn(NodeList *left, Node *defn)
l->n = n;
}
if(nnew == 0 && nerr == 0)
yyerror("no new variables on left side of :=");
yyerrorl(defn->lineno, "no new variables on left side of :=");
}
Node*
colas(NodeList *left, NodeList *right)
colas(NodeList *left, NodeList *right, int32 lno)
{
Node *as;
......@@ -491,6 +491,7 @@ colas(NodeList *left, NodeList *right)
as->list = left;
as->rlist = right;
as->colas = 1;
as->lineno = lno;
colasdefn(left, as);
// make the tree prettier; not necessary
......
......@@ -928,7 +928,7 @@ void nodfconst(Node *n, Type *t, Mpflt* fval);
void addmethod(Sym *sf, Type *t, int local);
void addvar(Node *n, Type *t, int ctxt);
NodeList* checkarglist(NodeList *all, int input);
Node* colas(NodeList *left, NodeList *right);
Node* colas(NodeList *left, NodeList *right, int32 lno);
void colasdefn(NodeList *left, Node *defn);
NodeList* constiter(NodeList *vl, Node *t, NodeList *cl);
Node* dclname(Sym *s);
......
......@@ -37,8 +37,8 @@ static void fixlbrace(int);
// |sed 's/.* //' |9 fmt -l1 |sort |9 fmt -l50 | sed 's/^/%xxx /'
%token <val> LLITERAL
%token <i> LASOP
%token <sym> LBREAK LCASE LCHAN LCOLAS LCONST LCONTINUE LDDD
%token <i> LASOP LCOLAS
%token <sym> LBREAK LCASE LCHAN LCONST LCONTINUE LDDD
%token <sym> LDEFAULT LDEFER LELSE LFALL LFOR LFUNC LGO LGOTO
%token <sym> LIF LIMPORT LINTERFACE LMAP LNAME
%token <sym> LPACKAGE LRANGE LRETURN LSELECT LSTRUCT LSWITCH
......@@ -437,7 +437,7 @@ simple_stmt:
$$->left = dclname($1->n->sym); // it's a colas, so must not re-use an oldname.
break;
}
$$ = colas($1, $3);
$$ = colas($1, $3, $2);
}
| expr LINC
{
......@@ -496,7 +496,7 @@ case:
// done in casebody()
markdcl();
$$ = nod(OXCASE, N, N);
$$->list = list1(colas($2, list1($4)));
$$->list = list1(colas($2, list1($4), $3));
}
| LDEFAULT ':'
{
......
......@@ -973,6 +973,7 @@ l0:
c1 = getc();
if(c1 == '=') {
c = LCOLAS;
yylval.i = lexlineno;
goto lx;
}
break;
......
......@@ -106,10 +106,10 @@ static void fixlbrace(int);
enum yytokentype {
LLITERAL = 258,
LASOP = 259,
LBREAK = 260,
LCASE = 261,
LCHAN = 262,
LCOLAS = 263,
LCOLAS = 260,
LBREAK = 261,
LCASE = 262,
LCHAN = 263,
LCONST = 264,
LCONTINUE = 265,
LDDD = 266,
......@@ -158,10 +158,10 @@ static void fixlbrace(int);
/* Tokens. */
#define LLITERAL 258
#define LASOP 259
#define LBREAK 260
#define LCASE 261
#define LCHAN 262
#define LCOLAS 263
#define LCOLAS 260
#define LBREAK 261
#define LCASE 262
#define LCHAN 263
#define LCONST 264
#define LCONTINUE 265
#define LDDD 266
......@@ -457,7 +457,7 @@ union yyalloc
/* YYFINAL -- State number of the termination state. */
#define YYFINAL 4
/* YYLAST -- Last index in YYTABLE. */
#define YYLAST 2131
#define YYLAST 2097
/* YYNTOKENS -- Number of terminals. */
#define YYNTOKENS 76
......@@ -573,12 +573,12 @@ static const yytype_int16 yyrhs[] =
-1, 181, 142, 65, 182, -1, 181, 65, 182, -1,
94, -1, 181, 142, -1, 181, -1, 137, -1, 96,
142, -1, 123, -1, 123, 4, 123, -1, 182, 65,
182, -1, 182, 8, 182, -1, 123, 42, -1, 123,
37, -1, 6, 183, 66, -1, 6, 183, 65, 123,
66, -1, 6, 183, 8, 123, 66, -1, 12, 66,
182, -1, 182, 5, 182, -1, 123, 42, -1, 123,
37, -1, 7, 183, 66, -1, 7, 183, 65, 123,
66, -1, 7, 183, 5, 123, 66, -1, 12, 66,
-1, -1, 67, 101, 179, 68, -1, -1, 99, 103,
179, -1, -1, 104, 102, -1, -1, 35, 106, 179,
68, -1, 182, 65, 26, 123, -1, 182, 8, 26,
68, -1, 182, 65, 26, 123, -1, 182, 5, 26,
123, -1, 190, 62, 190, 62, 190, -1, 190, -1,
107, -1, 108, 105, -1, -1, 16, 111, 109, -1,
190, -1, 190, 62, 190, -1, -1, -1, -1, 20,
......@@ -615,10 +615,10 @@ static const yytype_int16 yyrhs[] =
-1, 148, -1, 59, 142, 60, -1, 157, -1, 149,
-1, 149, -1, 151, -1, 157, -1, 149, -1, 150,
-1, 148, -1, 139, -1, 139, 63, 137, -1, 71,
188, 72, 142, -1, 71, 11, 72, 142, -1, 7,
144, -1, 7, 36, 142, -1, 23, 71, 142, 72,
188, 72, 142, -1, 71, 11, 72, 142, -1, 8,
144, -1, 8, 36, 142, -1, 23, 71, 142, 72,
142, -1, 152, -1, 153, -1, 53, 142, -1, 36,
7, 142, -1, 29, 133, 166, 186, 68, -1, 29,
8, 142, -1, 29, 133, 166, 186, 68, -1, 29,
133, 68, -1, 22, 133, 167, 186, 68, -1, 22,
133, 68, -1, 17, 155, 158, -1, 137, 59, 175,
60, 159, -1, 59, 175, 60, 137, 59, 175, 60,
......@@ -639,7 +639,7 @@ static const yytype_int16 yyrhs[] =
173, -1, 174, 75, 173, -1, -1, 174, 187, -1,
-1, 100, -1, 91, -1, 177, -1, 1, -1, 98,
-1, 110, -1, 118, -1, 121, -1, 113, -1, -1,
140, 66, 178, 176, -1, 15, -1, 5, 136, -1,
140, 66, 178, 176, -1, 15, -1, 6, 136, -1,
10, 136, -1, 18, 125, -1, 13, 125, -1, 19,
134, -1, 27, 189, -1, 176, -1, 179, 62, 176,
-1, 134, -1, 180, 75, 134, -1, 135, -1, 181,
......@@ -656,9 +656,9 @@ static const yytype_int16 yyrhs[] =
-1, 200, -1, 202, -1, 138, -1, 24, -1, 71,
72, 198, -1, 71, 3, 72, 198, -1, 23, 71,
198, 72, 198, -1, 29, 67, 192, 68, -1, 22,
67, 193, 68, -1, 53, 198, -1, 7, 199, -1,
7, 59, 201, 60, -1, 7, 36, 198, -1, 36,
7, 198, -1, 17, 59, 191, 60, 206, -1, 137,
67, 193, 68, -1, 53, 198, -1, 8, 199, -1,
8, 59, 201, 60, -1, 8, 36, 198, -1, 36,
8, 198, -1, 17, 59, 191, 60, 206, -1, 137,
198, 194, -1, 137, 11, 198, 194, -1, 137, 198,
194, -1, 137, 59, 191, 60, 206, -1, 198, -1,
-1, 207, -1, 59, 191, 60, -1, 198, -1, 3,
......@@ -714,8 +714,8 @@ static const yytype_uint16 yyrline[] =
First, the terminals, then, starting at YYNTOKENS, nonterminals. */
const char *yytname[] =
{
"$end", "error", "$undefined", "LLITERAL", "LASOP", "LBREAK", "LCASE",
"LCHAN", "LCOLAS", "LCONST", "LCONTINUE", "LDDD", "LDEFAULT", "LDEFER",
"$end", "error", "$undefined", "LLITERAL", "LASOP", "LCOLAS", "LBREAK",
"LCASE", "LCHAN", "LCONST", "LCONTINUE", "LDDD", "LDEFAULT", "LDEFER",
"LELSE", "LFALL", "LFOR", "LFUNC", "LGO", "LGOTO", "LIF", "LIMPORT",
"LINTERFACE", "LMAP", "LNAME", "LPACKAGE", "LRANGE", "LRETURN",
"LSELECT", "LSTRUCT", "LSWITCH", "LTYPE", "LVAR", "LANDAND", "LANDNOT",
......@@ -947,94 +947,94 @@ static const yytype_int16 yydefgoto[] =
/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
STATE-NUM. */
#define YYPACT_NINF -551
#define YYPACT_NINF -549
static const yytype_int16 yypact[] =
{
-551, 46, 48, 121, -551, 58, -551, 135, -551, -551,
-551, 65, 72, -551, 147, 156, -551, -551, 112, -551,
50, 134, 904, -551, 162, 463, 209, -551, 54, 237,
-551, 121, 245, -551, -551, -551, 58, 1666, -551, 58,
288, -551, -551, 34, 288, 58, -551, 36, 184, 1467,
-551, 36, -551, 316, 462, 1467, 1467, 1467, 1467, 1467,
1467, 1522, 1467, 1467, 965, 198, -551, 506, -551, -551,
-551, -551, -551, 796, -551, -551, 195, 1, -551, 199,
-551, 207, 216, 36, 221, -551, -551, -551, 226, 53,
-551, -551, 108, -551, 214, 110, 269, 214, 214, 233,
-551, -551, -551, -551, 238, -551, -551, -551, -551, -551,
-551, -551, 242, 1691, 1691, 1691, -551, 240, -551, -551,
-551, -551, -551, -551, 154, 1, 1467, 1658, 247, 246,
290, -551, 1467, -551, -551, 419, 1691, 2004, 229, -551,
272, 333, 1467, 258, 1691, -551, -551, 485, -551, -551,
-551, 656, -551, -551, -551, -551, -551, -551, 1577, 1522,
2004, 255, -551, 10, -551, 51, -551, -551, 251, 2004,
256, -551, 508, -551, 1632, 1467, 1467, 1467, 1467, -551,
1467, 1467, 1467, -551, 1467, 1467, 1467, 1467, 1467, 1467,
1467, 1467, 1467, 1467, 1467, 1467, 1467, 1467, -551, 1192,
552, 1467, -551, 1467, -551, -551, 1134, 1467, 1467, 1467,
-551, 1203, 58, 246, 260, 332, -551, 1838, 1838, -551,
76, 282, -551, 1658, 344, 1691, -551, -551, -551, -551,
-551, -551, -551, 293, 58, -551, -551, 328, -551, 178,
303, 1691, -551, 1658, -551, -551, -551, 295, 308, 1658,
1134, -551, -551, 309, 271, 364, -551, 334, 337, -551,
-551, 330, -551, 11, 66, -551, -551, 342, -551, -551,
397, 664, -551, -551, -551, 351, -551, -551, -551, 352,
1467, 58, 343, 1719, -551, 349, 1691, 1691, -551, 356,
1467, 357, 2004, 2075, -551, 2028, 692, 692, 692, 692,
-551, 692, 692, 2052, -551, 593, 593, 593, 593, -551,
-551, -551, -551, 1247, -551, -551, 22, 1302, -551, 1877,
355, 1060, 1979, 1247, -551, -551, -551, -551, -551, -551,
86, 229, 229, 2004, 1777, 367, 361, 359, -551, 366,
427, 1838, 52, 29, -551, 370, -551, -551, -551, 784,
-551, 118, 379, 58, 396, 400, 401, -551, -551, 404,
1691, 409, -551, -551, -551, -551, 1357, 1412, 1467, -551,
-551, -551, 1658, -551, 1744, 414, 109, 328, 1467, 58,
416, 423, 1658, -551, 561, 417, 1691, 44, 364, 397,
364, 428, 451, 421, -551, -551, 58, 397, 456, 58,
436, 58, 438, 229, -551, 1467, 1752, 1691, -551, 24,
171, 287, 338, -551, -551, -551, 58, 439, 229, 1467,
-551, 1907, -551, -551, 425, 435, 430, 1522, 446, 448,
453, -551, 1467, -551, -551, 443, 1134, 1060, -551, 1838,
479, -551, -551, -551, 58, 1805, 1838, 58, 1838, -551,
-551, 514, 161, -551, -551, 460, 454, 1838, 52, 1838,
397, 58, 58, -551, 458, 459, -551, -551, -551, 1744,
-551, 1134, 1467, 1467, 467, -551, 1658, 472, -551, -551,
-551, -551, -551, -551, -551, 1744, -551, -551, -551, -551,
-551, 477, -551, -551, -551, 1522, 474, -551, -551, -551,
482, -551, 500, 397, -551, -551, -551, -551, -551, -551,
-551, -551, -551, 229, 501, 1247, -551, -551, 505, 1632,
-551, 229, 1247, 1247, 1247, -551, -551, -551, 503, -551,
-551, -551, -551, 511, -551, 137, -551, -551, 518, 528,
532, 534, 535, 530, -551, -551, 537, 533, 1838, 536,
-551, 538, -551, -551, 560, -551, 1838, -551, 551, 397,
-551, 557, -551, 1830, 151, 2004, 2004, 1467, 558, 1658,
-551, 605, 1744, 125, -551, 1060, 397, 397, -551, 75,
360, 554, 58, 563, 357, 556, 2004, -551, -551, -551,
-551, -551, -551, -551, 1830, 58, -551, 1805, 1838, 397,
-551, 58, 161, -551, -551, -551, 58, 58, -551, -551,
-551, -551, -551, -551, 570, 78, -551, -551, 1467, 1467,
-551, 1522, 569, -551, -551, -551, -551, -551, -551, -551,
-551, 576, -551, -551, -551, -551, 578, 582, 584, 1744,
-551, -551, 1931, 1955, 1830, -551, 1830, -551, -551, -551,
-551, -551, -551
-549, 63, 58, 91, -549, 227, -549, 44, -549, -549,
-549, 67, 57, -549, 111, 135, -549, -549, 123, -549,
50, 151, 904, -549, 157, 463, 149, -549, 54, 219,
-549, 91, 230, -549, -549, -549, 227, 1654, -549, 227,
288, -549, -549, 316, 288, 227, -549, 21, 167, 1466,
-549, 21, -549, 327, 333, 1466, 1466, 1466, 1466, 1466,
1466, 1509, 1466, 1466, 985, 193, -549, 419, -549, -549,
-549, -549, -549, 796, -549, -549, 176, 1, -549, 194,
-549, 196, 206, 21, 215, -549, -549, -549, 216, 51,
-549, -549, 45, -549, 203, 7, 256, 203, 203, 231,
-549, -549, -549, -549, 244, -549, -549, -549, -549, -549,
-549, -549, 234, 1681, 1681, 1681, -549, 250, -549, -549,
-549, -549, -549, -549, 168, 1, 1466, 1628, 260, 264,
266, -549, 1466, -549, -549, 110, 1681, 1993, 257, -549,
300, 229, 1466, 451, 1681, -549, -549, 461, -549, -549,
-549, 662, -549, -549, -549, -549, -549, -549, 1552, 1509,
1993, 263, -549, 10, -549, 165, -549, -549, 270, 1993,
274, -549, 485, -549, 1595, 1466, 1466, 1466, 1466, -549,
1466, 1466, 1466, -549, 1466, 1466, 1466, 1466, 1466, 1466,
1466, 1466, 1466, 1466, 1466, 1466, 1466, 1466, -549, 1203,
506, 1466, -549, 1466, -549, -549, 1134, 1466, 1466, 1466,
-549, 673, 227, 264, 293, 355, -549, 1214, 1214, -549,
76, 303, -549, 1628, 357, 1681, -549, -549, -549, -549,
-549, -549, -549, 328, 227, -549, -549, 358, -549, 68,
337, 1681, -549, 1628, -549, -549, -549, 329, 348, 1628,
1134, -549, -549, 351, 128, 390, -549, 359, 354, -549,
-549, 349, -549, 30, 34, -549, -549, 366, -549, -549,
427, 1620, -549, -549, -549, 371, -549, -549, -549, 373,
1466, 227, 376, 1707, -549, 391, 1681, 1681, -549, 400,
1466, 398, 1993, 1839, -549, 2017, 755, 755, 755, 755,
-549, 755, 755, 2041, -549, 582, 582, 582, 582, -549,
-549, -549, -549, 1258, -549, -549, 33, 1313, -549, 1866,
356, 1060, 1968, 1258, -549, -549, -549, -549, -549, -549,
3, 257, 257, 1993, 1748, 405, 402, 403, -549, 412,
475, 1214, 52, 29, -549, 421, -549, -549, -549, 1774,
-549, 85, 425, 227, 426, 429, 434, -549, -549, 438,
1681, 439, -549, -549, -549, -549, 1368, 1423, 1466, -549,
-549, -549, 1628, -549, 1715, 440, 86, 358, 1466, 227,
441, 443, 1628, -549, 508, 437, 1681, 78, 390, 427,
390, 446, 280, 442, -549, -549, 227, 427, 454, 227,
448, 227, 453, 257, -549, 1466, 1740, 1681, -549, 181,
248, 338, 360, -549, -549, -549, 227, 455, 257, 1466,
-549, 1896, -549, -549, 447, 450, 456, 1509, 457, 466,
469, -549, 1466, -549, -549, 468, 1134, 1060, -549, 1214,
501, -549, -549, -549, 227, 1801, 1214, 227, 1214, -549,
-549, 537, 161, -549, -549, 480, 488, 1214, 52, 1214,
427, 227, 227, -549, 503, 486, -549, -549, -549, 1715,
-549, 1134, 1466, 1466, 514, -549, 1628, 509, -549, -549,
-549, -549, -549, -549, -549, 1715, -549, -549, -549, -549,
-549, 518, -549, -549, -549, 1509, 517, -549, -549, -549,
525, -549, 528, 427, -549, -549, -549, -549, -549, -549,
-549, -549, -549, 257, 531, 1258, -549, -549, 532, 1595,
-549, 257, 1258, 1258, 1258, -549, -549, -549, 533, -549,
-549, -549, -549, 526, -549, 109, -549, -549, 539, 540,
545, 546, 550, 543, -549, -549, 551, 547, 1214, 552,
-549, 556, -549, -549, 573, -549, 1214, -549, 561, 427,
-549, 565, -549, 1827, 131, 1993, 1993, 1466, 567, 1628,
-549, 611, 1715, 28, -549, 1060, 427, 427, -549, 100,
367, 563, 227, 574, 398, 571, 1993, -549, -549, -549,
-549, -549, -549, -549, 1827, 227, -549, 1801, 1214, 427,
-549, 227, 161, -549, -549, -549, 227, 227, -549, -549,
-549, -549, -549, -549, 581, 15, -549, -549, 1466, 1466,
-549, 1509, 580, -549, -549, -549, -549, -549, -549, -549,
-549, 584, -549, -549, -549, -549, 585, 586, 587, 1715,
-549, -549, 1920, 1944, 1827, -549, 1827, -549, -549, -549,
-549, -549, -549
};
/* YYPGOTO[NTERM-NUM]. */
static const yytype_int16 yypgoto[] =
{
-551, -551, -551, -551, -551, -551, -551, -6, -551, -551,
608, -551, -11, -551, -551, 623, -551, -134, -25, 68,
-551, -135, -121, -551, 39, -551, -551, -551, 145, 278,
-551, -551, -551, -551, -551, -551, 515, 41, -551, -551,
-551, -551, -551, -551, -551, -551, -551, 579, 493, 45,
-551, -192, 138, -246, 192, -47, 415, 200, -20, 380,
626, -5, 449, 346, -551, 426, 95, 509, -551, -551,
-551, -551, -33, 38, -31, -18, -551, -551, -551, -551,
-551, 43, 457, -467, -551, -551, -551, -551, -551, -551,
-551, -551, 280, -126, -227, 292, -551, 302, -551, -220,
-297, 662, -551, -248, -551, -66, 18, 194, -551, -295,
-228, -289, -191, -551, -119, -403, -551, -551, -305, -551,
-32, -551, 127, -551, 362, 250, 363, 232, 90, 98,
-550, -551, -426, 241, -551, 486, -551, -551
-549, -549, -549, -549, -549, -549, -549, -6, -549, -549,
617, -549, -11, -549, -549, 627, -549, -134, -25, 71,
-549, -135, -121, -549, 35, -549, -549, -549, 146, 279,
-549, -549, -549, -549, -549, -549, 513, 42, -549, -549,
-549, -549, -549, -549, -549, -549, -549, 579, 493, 245,
-549, -192, 134, -318, 278, -47, 418, 8, -20, 381,
624, -5, 449, 346, -549, 422, 95, 510, -549, -549,
-549, -549, -33, 38, -31, -18, -549, -549, -549, -549,
-549, 43, 458, -467, -549, -549, -549, -549, -549, -549,
-549, -549, 276, -126, -227, 289, -549, 302, -549, -220,
-297, 650, -549, -248, -549, -66, 18, 183, -549, -295,
-228, -289, -191, -549, -119, -403, -549, -549, -305, -549,
273, -549, 127, -549, 342, 240, 353, 226, 88, 96,
-548, -549, -426, 236, -549, 487, -549, -549
};
/* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If
......@@ -1046,221 +1046,217 @@ static const yytype_int16 yytable[] =
12, 174, 376, 359, 119, 235, 121, 240, 274, 259,
320, 235, 323, 278, 161, 32, 109, 79, 570, 109,
107, 235, 103, 32, 433, 131, 554, 428, 435, 375,
385, 111, 456, 426, 111, 380, 389, 391, 128, 393,
111, 539, 173, 164, 630, -176, 4, 400, 146, 150,
495, 402, -208, 27, 205, 450, 496, 27, 9, -172,
199, 417, 150, 214, 200, 216, 218, 138, 18, -175,
388, 133, 201, 5, 9, 120, 9, -176, 9, 27,
122, 495, 9, -172, 501, 124, -208, 496, 133, 130,
380, -172, 507, 127, 651, 222, 652, 427, 46, 163,
9, 457, 451, 134, 165, 617, 174, 10, 11, 28,
-174, 452, 497, 29, 102, 257, 207, 29, -208, 390,
134, 266, 243, 10, 11, 10, 11, 10, 11, 381,
111, 10, 11, 618, 19, 525, 111, 528, 146, 29,
536, 164, 150, 625, 239, 325, 7, 289, 437, 10,
11, 228, 228, 228, 438, 560, 231, 231, 231, 15,
-260, 500, 491, 502, 450, 228, -260, 150, 20, 212,
231, 437, 648, 208, 228, 26, 636, 486, 461, 231,
23, 164, 228, 209, 11, 9, 366, 231, 535, 228,
619, 620, 631, 462, 231, 318, 33, 163, 578, 437,
621, 79, 165, 637, 638, 592, -170, 349, 226, 232,
233, 451, 228, 437, 357, 32, -260, 231, 243, 611,
581, 515, -260, 564, 93, 331, 332, 585, 522, 363,
-170, 261, 125, 101, 10, 11, 125, 163, -170, 276,
105, 533, 165, 367, 243, 79, 282, 235, 108, 474,
409, 141, 411, 209, 605, 136, 568, 235, 259, 488,
171, 228, 198, 228, 509, -147, 231, 511, 231, 291,
430, 623, 624, 202, -229, 203, 150, 587, 589, 228,
-175, 228, 9, 204, 231, -174, 231, 228, 11, 206,
583, 35, 231, 215, 634, 37, -259, 219, 403, 164,
220, 223, -259, 234, 209, 112, 249, 262, 418, 228,
47, 48, 9, 250, 231, 285, 79, 51, 273, 353,
361, 410, -171, 286, 228, 228, 412, 622, 287, 231,
231, 10, 11, -229, 379, 354, 369, 453, 345, -229,
9, 479, 358, 481, 355, 356, -171, 61, 349, 614,
519, 360, -259, 362, -171, 163, 482, 254, -259, 64,
165, 10, 11, 364, 257, 368, 397, 243, 374, 477,
372, 378, 266, -169, 489, 143, 506, 243, 408, 111,
529, 414, 415, 117, 331, 332, 263, 111, 380, 10,
11, 111, 264, 382, 146, -173, 150, -169, 228, 384,
394, 265, 386, 231, 392, -169, 10, 11, 405, 164,
228, 150, 480, 399, 401, 231, 413, 483, 416, -173,
228, 432, 419, 513, 228, 231, 444, -173, 445, 231,
446, 79, 79, 447, 448, 458, 479, 521, 481, 349,
541, 463, 548, 254, 228, 228, 235, 453, 612, 231,
231, 482, 479, 453, 481, 408, 561, 349, 466, 117,
117, 117, 467, 468, 469, 163, 79, 482, 449, 470,
165, 243, 94, 117, 485, 254, 460, 164, 255, 379,
95, 494, 117, 490, 96, 493, 9, 256, 503, 505,
117, 508, 10, 11, 97, 98, 510, 117, 512, 520,
524, 226, 514, 526, 263, 527, 530, 480, 531, 9,
264, 534, 483, 532, 228, 340, 519, 553, 563, 231,
117, 147, 555, 480, 10, 11, 556, 99, 483, 567,
9, 569, 9, 163, 462, 10, 11, 572, 165, 479,
574, 481, 576, 210, 210, 277, 210, 210, 152, 153,
385, 111, 456, 618, 111, 46, 389, 391, 128, 393,
111, 539, 173, 164, 426, -176, 630, 400, 146, 150,
207, 402, 205, 27, 380, 450, 133, 27, 380, 141,
199, 417, 150, 4, 200, 437, 212, 138, 15, -175,
18, 438, 201, 366, 9, 120, 9, -176, 9, 27,
122, 11, 325, 5, 501, 495, 133, 390, 134, 388,
496, 204, 507, 619, 620, 222, 651, 206, 652, 163,
9, 457, 451, 621, 165, 617, 174, 495, 427, 28,
208, 452, 496, 29, 102, 257, 7, 29, 134, 19,
209, 266, 243, 10, 11, 10, 11, 10, 11, 381,
111, -229, 20, 367, 254, 525, 111, 528, 146, 29,
536, 164, 150, 209, 239, 461, 497, 289, 437, 10,
11, 228, 228, 228, 486, 560, 231, 231, 231, 23,
462, 500, 491, 502, 450, 228, -208, 150, 625, 255,
231, 437, 648, 101, 228, -260, 636, 592, 256, 231,
-260, 164, 228, 10, 11, 9, 26, 231, 535, 228,
-229, 379, 631, 437, 231, 318, -229, 163, 578, 611,
-208, 79, 165, 637, 638, 587, 589, 349, 226, 232,
233, 451, 228, 33, 357, 32, -172, 231, 243, 93,
581, 515, 105, 564, -174, 331, 332, 585, 522, 363,
-260, 261, -208, 108, 10, 11, -260, 163, 136, 276,
-172, 533, 165, 198, 243, 79, 282, 235, -172, 474,
409, 9, 411, 254, 605, 171, 568, 235, 259, 488,
-147, 228, 202, 228, 509, 203, 231, 511, 231, 291,
430, 623, 624, -259, -175, -174, 150, 11, -259, 228,
215, 228, 263, -170, 231, 124, 231, 228, 264, 130,
583, 35, 231, 223, 634, 219, 37, 265, 403, 164,
10, 11, 10, 11, 254, 112, 220, -170, 418, 228,
47, 48, 9, 234, 231, -170, 79, 51, 125, 249,
361, 410, 125, 285, 228, 228, 412, 622, -259, 231,
231, 250, 209, 263, -259, 262, 369, 453, 345, 264,
9, 479, 286, 481, 355, 356, 287, 61, 349, 614,
519, 9, 353, 10, 11, 163, 482, 9, 354, 64,
165, 10, 11, 358, 257, 360, 397, 243, 214, 477,
216, 218, 266, -171, 489, 127, 506, 243, 408, 111,
529, 414, 415, 117, 331, 332, 143, 111, 362, 10,
11, 111, 147, 364, 146, -169, 150, -171, 228, 368,
10, 11, -173, 231, 372, -171, 10, 11, 374, 164,
228, 150, 480, 378, 380, 231, 384, 483, 382, -169,
228, 386, 432, 513, 228, 231, -173, -169, 392, 231,
394, 79, 79, 399, -173, 401, 479, 521, 481, 349,
541, 405, 548, 9, 228, 228, 235, 453, 612, 231,
231, 482, 479, 453, 481, 408, 561, 349, 413, 117,
117, 117, 416, 419, 444, 163, 79, 482, 449, 445,
165, 243, 94, 117, 446, 9, 460, 164, 172, 447,
95, 494, 117, 448, 96, 9, 458, 463, 466, 508,
117, 467, 10, 11, 97, 98, 468, 117, 469, 470,
485, 226, 514, 490, 379, 493, 503, 480, 510, 9,
505, 273, 483, 512, 228, 520, 519, 530, 526, 231,
117, 277, 524, 480, 10, 11, 531, 99, 483, 532,
9, 527, 254, 163, 10, 11, 534, 340, 165, 479,
553, 481, 555, 210, 210, 288, 210, 210, 152, 153,
154, 155, 156, 157, 482, 166, 167, 228, 10, 11,
577, 580, 231, 590, 243, 172, 537, 582, 288, 117,
79, 117, 544, 547, 529, 552, 9, 150, 593, 10,
11, 10, 11, 591, 557, 254, 559, 117, 594, 117,
349, -151, 541, 595, -152, 117, 548, 453, 596, 597,
601, 349, 349, 164, 600, 598, 479, 228, 481, 602,
480, 317, 231, 604, 584, 483, 606, 117, 613, 615,
255, 482, 626, 628, 629, 10, 11, 177, 137, 117,
639, 437, 117, 117, 10, 11, 644, 185, 645, 106,
160, 189, 646, 169, 647, 66, 194, 195, 196, 197,
627, 152, 156, 579, 640, 487, 641, 272, 370, 163,
344, 404, 588, 37, 165, 123, 344, 344, 284, 371,
352, 37, 504, 112, 475, 599, 492, 480, 47, 48,
9, 112, 483, 603, 91, 51, 47, 48, 9, 573,
538, 635, 224, 51, 562, 632, 442, 443, 351, 558,
224, 0, 0, 0, 0, 0, 117, 0, 0, 114,
0, 0, 0, 0, 0, 225, 0, 114, 117, 0,
117, 280, 0, 225, 544, 633, 177, 64, 117, 10,
11, 281, 117, 0, 0, 64, 185, 10, 11, 396,
189, 190, 191, 192, 193, 194, 195, 196, 197, 0,
556, 462, 231, 563, 243, 317, 537, 255, 569, 117,
79, 117, 544, 547, 529, 552, 567, 150, 572, 10,
11, 10, 11, 574, 557, 576, 559, 117, 577, 117,
349, 580, 541, 590, 582, 117, 548, 453, 591, 593,
594, 349, 349, 164, -151, 595, 479, 228, 481, -152,
480, 596, 231, 597, 584, 483, 177, 117, 601, 598,
600, 482, 602, 604, 606, 615, 185, 613, 137, 117,
189, 626, 117, 117, 628, 194, 195, 196, 197, 629,
160, 639, 437, 169, 644, 645, 646, 647, 106, 66,
640, 152, 156, 627, 579, 272, 487, 641, 588, 163,
344, 370, 404, 123, 165, 371, 344, 344, 504, 284,
37, 352, 91, 492, 475, 599, 442, 480, 573, 112,
538, 334, 483, 603, 47, 48, 9, 443, 562, 635,
335, 51, 0, 632, 558, 336, 337, 338, 224, 351,
0, 0, 339, 0, 0, 0, 117, 0, 0, 340,
0, 0, 0, 0, 0, 114, 0, 0, 117, 0,
117, 225, 0, 0, 544, 633, 341, 280, 117, 0,
0, 0, 117, 64, 0, 10, 11, 281, 342, 0,
0, 0, 0, 0, 343, 0, 0, 11, 0, 0,
0, 0, 117, 117, 292, 293, 294, 295, 0, 296,
297, 298, 0, 299, 300, 301, 302, 303, 304, 305,
306, 307, 308, 309, 310, 311, 312, 0, 160, 0,
319, 0, 322, 344, 0, 0, 137, 137, 333, 0,
344, 334, 0, 0, 0, 459, 0, 0, 344, 0,
175, 335, 0, 0, -269, 0, 336, 337, 338, 0,
0, 0, 0, 339, 0, 117, 0, 0, 0, 0,
340, 0, 117, 0, 0, 0, 0, 0, 0, 176,
177, 117, 178, 179, 180, 181, 182, 341, 183, 184,
319, 0, 322, 344, 0, 0, 137, 137, 333, 177,
344, 0, 0, 0, 0, 0, 0, 0, 344, 185,
175, -269, 0, 189, 190, 191, 192, 193, 194, 195,
196, 197, 0, 0, 0, 117, 0, 0, 0, 0,
0, 0, 117, 0, 0, 0, 0, 0, 0, 176,
177, 117, 178, 179, 180, 181, 182, 0, 183, 184,
185, 186, 187, 188, 189, 190, 191, 192, 193, 194,
195, 196, 197, 0, 0, 343, 0, 0, 11, 137,
195, 196, 197, 0, 0, 0, 0, 0, 0, 137,
0, -269, 0, 0, 0, 117, 0, 0, 0, 137,
0, -269, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 344, 0,
0, 0, 421, 0, 542, 344, 160, 344, 0, 0,
0, 0, 421, 0, -2, 34, 344, 35, 344, 36,
0, 37, 0, 38, 39, 117, 0, 40, 117, 41,
0, 0, 421, 0, -2, 34, 344, 35, 344, 0,
36, 0, 37, 38, 39, 117, 0, 40, 117, 41,
42, 43, 44, 45, 46, 0, 47, 48, 9, 0,
0, 49, 50, 51, 52, 53, 54, 0, 0, 0,
55, 0, 0, 0, 0, 137, 137, 0, 0, 0,
0, 0, 0, 56, 57, 0, 58, 59, 0, 0,
60, 0, 0, 61, 0, 0, -24, 0, 35, 0,
0, 0, 37, 62, 63, 64, 168, 10, 11, 0,
0, 0, 112, 0, 137, 117, 0, 47, 48, 9,
0, 0, 0, 0, 51, 0, 0, 344, 137, 0,
0, 55, 0, 0, 0, 344, 160, 0, 0, 0,
0, 169, 344, 0, 56, 57, 0, 58, 59, 0,
0, 60, 0, 0, 61, 0, 0, 0, 0, 0,
0, 0, 0, 0, 62, 63, 64, 0, 10, 11,
0, 0, 0, 344, 0, 0, 542, 344, 0, 0,
0, 565, 566, 0, 0, 0, 0, 0, 0, 0,
0, 324, 0, 35, 0, 36, -244, 37, 0, 38,
60, 0, 0, 61, 0, 0, -24, 0, 0, 0,
0, 0, 0, 62, 63, 64, 0, 10, 11, 0,
0, 0, 0, 0, 137, 117, 0, 0, 35, 0,
0, 0, 0, 37, 0, 0, 168, 344, 137, 0,
0, 0, 112, 0, 0, 344, 160, 47, 48, 9,
0, 169, 344, 0, 51, 0, 0, 0, 0, 0,
0, 55, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 56, 57, 0, 58, 59, 0,
0, 60, 0, 344, 61, 0, 542, 344, 0, 0,
0, 565, 566, 0, 62, 63, 64, 0, 10, 11,
0, 324, 0, 35, 0, 0, 36, -244, 37, 38,
39, 0, -244, 40, 160, 41, 42, 112, 44, 45,
46, 0, 47, 48, 9, 0, 0, 49, 50, 51,
52, 53, 54, 344, 421, 344, 55, 0, 0, 0,
0, 421, 586, 421, 0, 0, 0, 0, 0, 56,
57, 0, 58, 59, 0, 0, 60, 0, 0, 61,
0, 0, -244, 0, 0, 0, 0, 325, -244, 62,
63, 64, 0, 10, 11, 324, 0, 35, 0, 36,
0, 37, 0, 38, 39, 0, 0, 40, 0, 41,
63, 64, 0, 10, 11, 324, 0, 35, 0, 0,
36, 0, 37, 38, 39, 0, 0, 40, 0, 41,
42, 112, 44, 45, 46, 0, 47, 48, 9, 0,
0, 49, 50, 51, 52, 53, 54, 0, 0, 0,
55, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 56, 57, 0, 58, 59, 0, 0,
60, 0, 0, 61, 0, 35, -244, 642, 643, 37,
160, 325, -244, 62, 63, 64, 0, 10, 11, 112,
334, 0, 0, 0, 47, 48, 9, 0, 0, 0,
335, 51, 0, 0, 0, 336, 337, 338, 158, 0,
0, 0, 339, 0, 0, 0, 0, 0, 0, 340,
0, 56, 57, 0, 58, 159, 0, 0, 60, 0,
35, 61, 314, 0, 37, 0, 341, 0, 0, 0,
0, 62, 63, 64, 112, 10, 11, 0, 342, 47,
48, 9, 0, 0, 343, 0, 51, 11, 0, 0,
0, 0, 0, 55, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 56, 57, 0, 58,
59, 0, 0, 60, 0, 35, 61, 0, 0, 37,
0, 0, 0, 0, 420, 0, 62, 63, 64, 112,
10, 11, 0, 0, 47, 48, 9, 0, 0, 0,
0, 51, 0, 429, 0, 0, 0, 0, 158, 0,
60, 0, 0, 61, 0, 0, -244, 642, 643, 0,
160, 325, -244, 62, 63, 64, 35, 10, 11, 0,
0, 37, 0, 0, 0, 0, 0, 0, 0, 0,
112, 0, 334, 0, 0, 47, 48, 9, 0, 0,
0, 335, 51, 0, 0, 0, 336, 337, 338, 158,
0, 0, 0, 339, 0, 0, 0, 0, 0, 0,
340, 0, 56, 57, 0, 58, 159, 0, 0, 60,
0, 35, 61, 314, 0, 0, 37, 341, 0, 0,
0, 0, 62, 63, 64, 112, 10, 11, 0, 0,
47, 48, 9, 0, 0, 343, 0, 51, 11, 0,
0, 0, 0, 0, 55, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 56, 57, 0,
58, 59, 0, 0, 60, 0, 35, 61, 0, 0,
0, 37, 0, 0, 0, 420, 0, 62, 63, 64,
112, 10, 11, 0, 0, 47, 48, 9, 0, 0,
0, 0, 51, 0, 429, 0, 0, 0, 0, 158,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 56, 57, 0, 58, 159, 0, 0, 60, 0,
35, 61, 0, 0, 37, 0, 0, 0, 0, 0,
0, 62, 63, 64, 112, 10, 11, 0, 0, 47,
48, 9, 0, 472, 0, 0, 51, 0, 0, 0,
0, 0, 0, 55, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 56, 57, 0, 58,
59, 0, 0, 60, 0, 35, 61, 0, 0, 37,
0, 0, 0, 0, 0, 0, 62, 63, 64, 112,
10, 11, 0, 0, 47, 48, 9, 0, 473, 0,
0, 51, 0, 0, 0, 0, 0, 0, 55, 0,
0, 0, 56, 57, 0, 58, 159, 0, 0, 60,
0, 35, 61, 0, 0, 0, 37, 0, 0, 0,
0, 0, 62, 63, 64, 112, 10, 11, 0, 0,
47, 48, 9, 0, 472, 0, 0, 51, 0, 0,
0, 0, 0, 0, 55, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 56, 57, 0,
58, 59, 0, 0, 60, 0, 35, 61, 0, 0,
0, 37, 0, 0, 0, 0, 0, 62, 63, 64,
112, 10, 11, 0, 0, 47, 48, 9, 0, 473,
0, 0, 51, 0, 0, 0, 0, 0, 0, 55,
0, 0, 0, 0, 0, 0, 0, 0, 0, 35,
0, 0, 56, 57, 37, 58, 59, 0, 0, 60,
0, 0, 61, 112, 0, 0, 0, 0, 47, 48,
9, 0, 62, 63, 64, 51, 10, 11, 0, 0,
0, 0, 55, 0, 0, 0, 0, 0, 0, 0,
0, 0, 35, 0, 0, 56, 57, 37, 58, 59,
0, 0, 60, 0, 0, 61, 112, 0, 0, 0,
0, 47, 48, 9, 0, 62, 63, 64, 51, 10,
11, 0, 0, 0, 0, 158, 0, 0, 0, 0,
0, 0, 0, 0, 0, 35, 0, 0, 56, 57,
283, 58, 159, 0, 0, 60, 0, 0, 61, 112,
0, 0, 0, 0, 47, 48, 9, 0, 62, 63,
64, 51, 10, 11, 0, 0, 0, 0, 55, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 56, 57, 0, 58, 59, 0, 0, 60, 0,
35, 61, 0, 0, 37, 0, 0, 0, 0, 0,
0, 62, 63, 64, 112, 10, 11, 0, 0, 47,
48, 9, 0, 0, 0, 0, 51, 0, 0, 0,
0, 0, 0, 55, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 56, 57, 0, 58,
59, 0, 0, 60, 0, 35, 61, 0, 0, 37,
0, 0, 0, 0, 0, 0, 62, 63, 64, 112,
10, 11, 0, 0, 47, 48, 9, 0, 0, 0,
0, 51, 0, 0, 0, 0, 0, 0, 158, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 56, 57, 0, 58, 159, 0, 0, 60, 0,
35, 61, 0, 0, 283, 0, 0, 0, 0, 0,
0, 62, 63, 64, 112, 10, 11, 0, 0, 47,
48, 9, 0, 0, 0, 0, 51, 0, 0, 0,
0, 0, 0, 55, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 56, 57, 0, 58,
59, 0, 0, 60, 0, 0, 61, 0, 0, 37,
0, 0, 0, 0, 0, 0, 62, 63, 64, 112,
10, 11, 0, 0, 47, 48, 9, 0, 0, 0,
0, 51, 0, 0, 0, 37, 0, 0, 224, 241,
0, 0, 0, 37, 0, 112, 0, 0, 0, 0,
47, 48, 9, 112, 0, 114, 0, 51, 47, 48,
9, 225, 0, 0, 224, 51, 0, 290, 37, 0,
0, 0, 113, 64, 0, 10, 11, 281, 112, 0,
0, 114, 0, 47, 48, 9, 0, 225, 0, 114,
51, 0, 0, 0, 0, 115, 37, 224, 0, 64,
0, 10, 11, 0, 0, 0, 112, 64, 0, 10,
11, 47, 48, 9, 114, 0, 0, 0, 51, 0,
225, 37, 0, 0, 0, 406, 0, 0, 0, 283,
0, 112, 64, 0, 10, 11, 47, 48, 9, 112,
0, 0, 114, 51, 47, 48, 9, 0, 407, 0,
224, 51, 0, 0, 334, 0, 0, 0, 224, 0,
64, 0, 10, 11, 335, 0, 0, 114, 0, 336,
337, 338, 0, 476, 0, 114, 339, 0, 0, 0,
0, 225, 334, 439, 0, 64, 0, 10, 11, 0,
0, 0, 335, 64, 0, 10, 11, 336, 337, 540,
341, 0, 0, 0, 339, 0, 440, 334, 0, 0,
0, 340, 0, 0, 0, 334, 0, 335, 343, 0,
0, 11, 336, 337, 338, 335, 0, 0, 341, 339,
336, 337, 338, 0, 0, 0, 340, 339, 0, 0,
0, 0, 0, 0, 340, 0, 343, 0, 10, 11,
0, 0, 0, 341, 0, 0, 0, 0, 0, 607,
0, 341, 0, 0, 0, 0, 0, 0, 0, 0,
0, 343, 0, 0, 11, 0, 0, 0, 0, 343,
176, 177, 11, 178, 0, 180, 181, 182, 0, 0,
184, 185, 186, 187, 188, 189, 190, 191, 192, 193,
194, 195, 196, 197, 0, 0, 0, 0, 0, 0,
176, 177, 0, 178, 0, 180, 181, 182, 0, 431,
184, 185, 186, 187, 188, 189, 190, 191, 192, 193,
194, 195, 196, 197, 176, 177, 0, 178, 0, 180,
181, 182, 0, 523, 184, 185, 186, 187, 188, 189,
190, 191, 192, 193, 194, 195, 196, 197, 176, 177,
0, 178, 0, 180, 181, 182, 0, 649, 184, 185,
186, 187, 188, 189, 190, 191, 192, 193, 194, 195,
196, 197, 176, 177, 0, 178, 0, 180, 181, 182,
0, 650, 184, 185, 186, 187, 188, 189, 190, 191,
192, 193, 194, 195, 196, 197, 0, 176, 177, 434,
178, 0, 180, 181, 182, 0, 0, 184, 185, 186,
0, 56, 57, 37, 58, 59, 0, 0, 60, 0,
0, 61, 112, 0, 0, 0, 0, 47, 48, 9,
0, 62, 63, 64, 51, 10, 11, 0, 37, 0,
0, 224, 0, 0, 0, 0, 37, 112, 0, 241,
0, 0, 47, 48, 9, 112, 0, 0, 114, 51,
47, 48, 9, 0, 225, 0, 224, 51, 0, 0,
290, 0, 37, 0, 224, 0, 64, 0, 10, 11,
281, 112, 0, 114, 0, 0, 47, 48, 9, 225,
0, 114, 0, 51, 0, 0, 0, 225, 0, 37,
113, 64, 0, 10, 11, 396, 0, 0, 112, 64,
0, 10, 11, 47, 48, 9, 0, 114, 0, 0,
51, 0, 0, 115, 0, 37, 0, 224, 0, 0,
0, 0, 0, 37, 112, 64, 0, 10, 11, 47,
48, 9, 112, 0, 114, 0, 51, 47, 48, 9,
225, 0, 0, 406, 51, 0, 0, 0, 283, 0,
0, 224, 64, 0, 10, 11, 334, 112, 0, 0,
114, 0, 47, 48, 9, 335, 407, 0, 114, 51,
336, 337, 338, 0, 476, 0, 224, 339, 64, 0,
10, 11, 334, 0, 439, 459, 64, 0, 10, 11,
0, 335, 0, 114, 0, 0, 336, 337, 338, 225,
0, 341, 0, 339, 0, 0, 0, 440, 0, 334,
340, 64, 0, 10, 11, 0, 0, 0, 335, 343,
0, 0, 11, 336, 337, 540, 0, 341, 0, 0,
339, 0, 0, 0, 0, 334, 0, 340, 0, 0,
0, 0, 0, 0, 335, 343, 0, 0, 11, 336,
337, 338, 0, 0, 341, 0, 339, 0, 0, 0,
0, 0, 0, 340, 0, 0, 0, 0, 0, 0,
0, 0, 343, 177, 10, 11, 0, 180, 181, 182,
341, 0, 184, 185, 186, 187, 607, 189, 190, 191,
192, 193, 194, 195, 196, 197, 0, 0, 343, 176,
177, 11, 178, 0, 180, 181, 182, 0, 0, 184,
185, 186, 187, 188, 189, 190, 191, 192, 193, 194,
195, 196, 197, 0, 0, 0, 0, 0, 0, 176,
177, 0, 178, 0, 180, 181, 182, 0, 431, 184,
185, 186, 187, 188, 189, 190, 191, 192, 193, 194,
195, 196, 197, 176, 177, 0, 178, 0, 180, 181,
182, 0, 523, 184, 185, 186, 187, 188, 189, 190,
191, 192, 193, 194, 195, 196, 197, 176, 177, 0,
178, 0, 180, 181, 182, 0, 649, 184, 185, 186,
187, 188, 189, 190, 191, 192, 193, 194, 195, 196,
197, 176, 177, 0, 0, 0, 180, 181, 182, 0,
0, 184, 185, 186, 187, 188, 189, 190, 191, 192,
193, 194, 195, 196, 197, 176, 177, 0, 0, 0,
180, 181, 182, 0, 0, 184, 185, 186, 187, 0,
189, 190, 191, 192, 193, 194, 195, 196, 197, 177,
0, 0, 0, 180, 181, 182, 0, 0, 184, 185,
186, 187, 0, 189, 190, 191, 192, 193, 194, 195,
196, 197
197, 176, 177, 0, 178, 0, 180, 181, 182, 0,
650, 184, 185, 186, 187, 188, 189, 190, 191, 192,
193, 194, 195, 196, 197, 0, 176, 177, 434, 178,
0, 180, 181, 182, 0, 0, 184, 185, 186, 187,
188, 189, 190, 191, 192, 193, 194, 195, 196, 197,
176, 177, 0, 0, 0, 180, 181, 182, 0, 0,
184, 185, 186, 187, 188, 189, 190, 191, 192, 193,
194, 195, 196, 197, 176, 177, 0, 0, 0, 180,
181, 182, 0, 0, 184, 185, 186, 187, 0, 189,
190, 191, 192, 193, 194, 195, 196, 197
};
#define yypact_value_is_default(yystate) \
((yystate) == (-551))
((yystate) == (-549))
#define yytable_value_is_error(yytable_value) \
YYID (0)
......@@ -1270,217 +1266,213 @@ static const yytype_int16 yycheck[] =
5, 67, 250, 223, 37, 126, 37, 126, 143, 135,
201, 132, 204, 147, 61, 20, 36, 22, 485, 39,
31, 142, 28, 28, 321, 45, 452, 316, 323, 249,
258, 36, 3, 11, 39, 24, 263, 264, 43, 267,
45, 444, 67, 61, 594, 35, 0, 275, 53, 54,
6, 279, 1, 3, 1, 3, 12, 3, 24, 35,
59, 289, 67, 95, 63, 97, 98, 49, 3, 59,
59, 35, 71, 25, 24, 37, 24, 67, 24, 3,
37, 6, 24, 59, 389, 40, 35, 12, 35, 44,
24, 67, 397, 59, 644, 106, 646, 75, 20, 61,
24, 72, 50, 67, 61, 572, 172, 73, 74, 59,
59, 59, 68, 63, 60, 135, 8, 63, 67, 53,
67, 141, 127, 73, 74, 73, 74, 73, 74, 255,
135, 73, 74, 8, 62, 424, 141, 426, 143, 63,
437, 159, 147, 68, 126, 67, 25, 172, 62, 73,
258, 36, 3, 5, 39, 20, 263, 264, 43, 267,
45, 444, 67, 61, 11, 35, 594, 275, 53, 54,
5, 279, 1, 3, 24, 3, 35, 3, 24, 51,
59, 289, 67, 0, 63, 62, 59, 49, 24, 59,
3, 68, 71, 5, 24, 37, 24, 67, 24, 3,
37, 74, 67, 25, 389, 7, 35, 53, 67, 59,
12, 83, 397, 65, 66, 106, 644, 89, 646, 61,
24, 72, 50, 75, 61, 572, 172, 7, 75, 59,
65, 59, 12, 63, 60, 135, 25, 63, 67, 62,
75, 141, 127, 73, 74, 73, 74, 73, 74, 255,
135, 3, 21, 65, 24, 424, 141, 426, 143, 63,
437, 159, 147, 75, 126, 60, 68, 172, 62, 73,
74, 113, 114, 115, 68, 460, 113, 114, 115, 24,
6, 388, 382, 390, 3, 127, 12, 172, 21, 59,
127, 62, 639, 65, 136, 63, 602, 68, 60, 136,
24, 199, 144, 75, 74, 24, 8, 144, 436, 151,
65, 66, 595, 75, 151, 200, 62, 159, 503, 62,
75, 206, 159, 606, 607, 68, 35, 212, 113, 114,
115, 50, 174, 62, 220, 220, 62, 174, 223, 68,
515, 413, 68, 471, 62, 207, 208, 522, 420, 234,
59, 136, 40, 24, 73, 74, 44, 199, 67, 144,
3, 432, 199, 65, 249, 250, 151, 368, 3, 368,
283, 51, 283, 75, 559, 71, 476, 378, 384, 378,
62, 223, 67, 225, 399, 66, 223, 401, 225, 174,
317, 576, 577, 66, 3, 59, 281, 523, 524, 241,
59, 243, 24, 83, 241, 59, 243, 249, 74, 89,
518, 3, 249, 24, 599, 7, 6, 64, 280, 317,
62, 59, 12, 63, 75, 17, 59, 35, 290, 271,
22, 23, 24, 67, 271, 60, 321, 29, 60, 59,
225, 283, 35, 72, 286, 287, 283, 575, 72, 286,
287, 73, 74, 62, 63, 3, 241, 342, 211, 68,
24, 374, 60, 374, 217, 218, 59, 59, 353, 569,
416, 7, 62, 60, 67, 317, 374, 24, 68, 71,
317, 73, 74, 35, 384, 62, 271, 372, 60, 374,
75, 62, 392, 35, 379, 59, 396, 382, 283, 384,
427, 286, 287, 37, 366, 367, 53, 392, 24, 73,
74, 396, 59, 59, 399, 35, 401, 59, 360, 62,
3, 68, 72, 360, 62, 67, 73, 74, 65, 427,
372, 416, 374, 62, 62, 372, 67, 374, 62, 59,
382, 66, 65, 405, 386, 382, 59, 67, 67, 386,
71, 436, 437, 67, 7, 65, 469, 419, 469, 444,
445, 62, 447, 24, 406, 407, 567, 452, 567, 406,
407, 469, 485, 458, 485, 360, 461, 462, 62, 113,
114, 115, 62, 62, 60, 427, 471, 485, 341, 60,
427, 476, 9, 127, 60, 24, 349, 495, 59, 63,
17, 386, 136, 60, 21, 68, 24, 68, 60, 68,
144, 35, 73, 74, 31, 32, 60, 151, 60, 60,
75, 406, 407, 68, 53, 75, 60, 469, 60, 24,
59, 68, 469, 60, 476, 36, 582, 3, 60, 476,
174, 59, 62, 485, 73, 74, 72, 64, 485, 62,
24, 59, 24, 495, 75, 73, 74, 60, 495, 572,
66, 572, 60, 94, 95, 60, 97, 98, 55, 56,
75, 388, 382, 390, 3, 127, 1, 172, 68, 59,
127, 62, 639, 24, 136, 7, 602, 68, 68, 136,
12, 199, 144, 73, 74, 24, 63, 144, 436, 151,
62, 63, 595, 62, 151, 200, 68, 159, 503, 68,
35, 206, 159, 606, 607, 523, 524, 212, 113, 114,
115, 50, 174, 62, 220, 220, 35, 174, 223, 62,
515, 413, 3, 471, 59, 207, 208, 522, 420, 234,
62, 136, 67, 3, 73, 74, 68, 199, 71, 144,
59, 432, 199, 67, 249, 250, 151, 368, 67, 368,
283, 24, 283, 24, 559, 62, 476, 378, 384, 378,
66, 223, 66, 225, 399, 59, 223, 401, 225, 174,
317, 576, 577, 7, 59, 59, 281, 74, 12, 241,
24, 243, 53, 35, 241, 40, 243, 249, 59, 44,
518, 3, 249, 59, 599, 64, 8, 68, 280, 317,
73, 74, 73, 74, 24, 17, 62, 59, 290, 271,
22, 23, 24, 63, 271, 67, 321, 29, 40, 59,
225, 283, 44, 60, 286, 287, 283, 575, 62, 286,
287, 67, 75, 53, 68, 35, 241, 342, 211, 59,
24, 374, 72, 374, 217, 218, 72, 59, 353, 569,
416, 24, 59, 73, 74, 317, 374, 24, 3, 71,
317, 73, 74, 60, 384, 8, 271, 372, 95, 374,
97, 98, 392, 35, 379, 59, 396, 382, 283, 384,
427, 286, 287, 37, 366, 367, 59, 392, 60, 73,
74, 396, 59, 35, 399, 35, 401, 59, 360, 62,
73, 74, 35, 360, 75, 67, 73, 74, 60, 427,
372, 416, 374, 62, 24, 372, 62, 374, 59, 59,
382, 72, 66, 405, 386, 382, 59, 67, 62, 386,
3, 436, 437, 62, 67, 62, 469, 419, 469, 444,
445, 65, 447, 24, 406, 407, 567, 452, 567, 406,
407, 469, 485, 458, 485, 360, 461, 462, 67, 113,
114, 115, 62, 65, 59, 427, 471, 485, 341, 67,
427, 476, 9, 127, 71, 24, 349, 495, 59, 67,
17, 386, 136, 8, 21, 24, 65, 62, 62, 35,
144, 62, 73, 74, 31, 32, 62, 151, 60, 60,
60, 406, 407, 60, 63, 68, 60, 469, 60, 24,
68, 60, 469, 60, 476, 60, 582, 60, 68, 476,
174, 60, 75, 485, 73, 74, 60, 64, 485, 60,
24, 75, 24, 495, 73, 74, 68, 36, 495, 572,
3, 572, 62, 94, 95, 60, 97, 98, 55, 56,
57, 58, 59, 60, 572, 62, 63, 519, 73, 74,
60, 60, 519, 60, 569, 59, 439, 62, 60, 223,
575, 225, 445, 446, 621, 448, 24, 582, 60, 73,
74, 73, 74, 72, 457, 24, 459, 241, 60, 243,
595, 59, 597, 59, 59, 249, 601, 602, 68, 62,
62, 606, 607, 621, 68, 72, 639, 569, 639, 49,
572, 59, 569, 62, 519, 572, 59, 271, 60, 14,
59, 639, 68, 60, 68, 73, 74, 34, 49, 283,
60, 62, 286, 287, 73, 74, 60, 44, 60, 31,
61, 48, 60, 64, 60, 22, 53, 54, 55, 56,
582, 158, 159, 508, 615, 377, 615, 142, 243, 621,
211, 281, 524, 7, 621, 39, 217, 218, 159, 243,
213, 7, 392, 17, 372, 548, 384, 639, 22, 23,
24, 17, 639, 556, 22, 29, 22, 23, 24, 495,
440, 601, 36, 29, 462, 597, 334, 334, 212, 458,
36, -1, -1, -1, -1, -1, 360, -1, -1, 53,
-1, -1, -1, -1, -1, 59, -1, 53, 372, -1,
374, 65, -1, 59, 597, 598, 34, 71, 382, 73,
74, 75, 386, -1, -1, 71, 44, 73, 74, 75,
48, 49, 50, 51, 52, 53, 54, 55, 56, -1,
72, 75, 519, 60, 569, 59, 439, 59, 59, 223,
575, 225, 445, 446, 621, 448, 62, 582, 60, 73,
74, 73, 74, 66, 457, 60, 459, 241, 60, 243,
595, 60, 597, 60, 62, 249, 601, 602, 72, 60,
60, 606, 607, 621, 59, 59, 639, 569, 639, 59,
572, 68, 569, 62, 519, 572, 34, 271, 62, 72,
68, 639, 49, 62, 59, 14, 44, 60, 49, 283,
48, 68, 286, 287, 60, 53, 54, 55, 56, 68,
61, 60, 62, 64, 60, 60, 60, 60, 31, 22,
615, 158, 159, 582, 508, 142, 377, 615, 524, 621,
211, 243, 281, 39, 621, 243, 217, 218, 392, 159,
8, 213, 22, 384, 372, 548, 334, 639, 495, 17,
440, 8, 639, 556, 22, 23, 24, 334, 462, 601,
17, 29, -1, 597, 458, 22, 23, 24, 36, 212,
-1, -1, 29, -1, -1, -1, 360, -1, -1, 36,
-1, -1, -1, -1, -1, 53, -1, -1, 372, -1,
374, 59, -1, -1, 597, 598, 53, 65, 382, -1,
-1, -1, 386, 71, -1, 73, 74, 75, 65, -1,
-1, -1, -1, -1, 71, -1, -1, 74, -1, -1,
-1, -1, 406, 407, 175, 176, 177, 178, -1, 180,
181, 182, -1, 184, 185, 186, 187, 188, 189, 190,
191, 192, 193, 194, 195, 196, 197, -1, 199, -1,
201, -1, 203, 334, -1, -1, 207, 208, 209, -1,
341, 7, -1, -1, -1, 11, -1, -1, 349, -1,
4, 17, -1, -1, 8, -1, 22, 23, 24, -1,
-1, -1, -1, 29, -1, 469, -1, -1, -1, -1,
36, -1, 476, -1, -1, -1, -1, -1, -1, 33,
34, 485, 36, 37, 38, 39, 40, 53, 42, 43,
201, -1, 203, 334, -1, -1, 207, 208, 209, 34,
341, -1, -1, -1, -1, -1, -1, -1, 349, 44,
4, 5, -1, 48, 49, 50, 51, 52, 53, 54,
55, 56, -1, -1, -1, 469, -1, -1, -1, -1,
-1, -1, 476, -1, -1, -1, -1, -1, -1, 33,
34, 485, 36, 37, 38, 39, 40, -1, 42, 43,
44, 45, 46, 47, 48, 49, 50, 51, 52, 53,
54, 55, 56, -1, -1, 71, -1, -1, 74, 280,
54, 55, 56, -1, -1, -1, -1, -1, -1, 280,
-1, 65, -1, -1, -1, 519, -1, -1, -1, 290,
-1, 75, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 439, -1,
-1, -1, 313, -1, 445, 446, 317, 448, -1, -1,
-1, -1, 323, -1, 0, 1, 457, 3, 459, 5,
-1, 7, -1, 9, 10, 569, -1, 13, 572, 15,
-1, -1, 323, -1, 0, 1, 457, 3, 459, -1,
6, -1, 8, 9, 10, 569, -1, 13, 572, 15,
16, 17, 18, 19, 20, -1, 22, 23, 24, -1,
-1, 27, 28, 29, 30, 31, 32, -1, -1, -1,
36, -1, -1, -1, -1, 366, 367, -1, -1, -1,
-1, -1, -1, 49, 50, -1, 52, 53, -1, -1,
56, -1, -1, 59, -1, -1, 62, -1, 3, -1,
-1, -1, 7, 69, 70, 71, 11, 73, 74, -1,
-1, -1, 17, -1, 405, 639, -1, 22, 23, 24,
-1, -1, -1, -1, 29, -1, -1, 548, 419, -1,
-1, 36, -1, -1, -1, 556, 427, -1, -1, -1,
-1, 432, 563, -1, 49, 50, -1, 52, 53, -1,
-1, 56, -1, -1, 59, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 69, 70, 71, -1, 73, 74,
-1, -1, -1, 594, -1, -1, 597, 598, -1, -1,
-1, 472, 473, -1, -1, -1, -1, -1, -1, -1,
-1, 1, -1, 3, -1, 5, 6, 7, -1, 9,
56, -1, -1, 59, -1, -1, 62, -1, -1, -1,
-1, -1, -1, 69, 70, 71, -1, 73, 74, -1,
-1, -1, -1, -1, 405, 639, -1, -1, 3, -1,
-1, -1, -1, 8, -1, -1, 11, 548, 419, -1,
-1, -1, 17, -1, -1, 556, 427, 22, 23, 24,
-1, 432, 563, -1, 29, -1, -1, -1, -1, -1,
-1, 36, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 49, 50, -1, 52, 53, -1,
-1, 56, -1, 594, 59, -1, 597, 598, -1, -1,
-1, 472, 473, -1, 69, 70, 71, -1, 73, 74,
-1, 1, -1, 3, -1, -1, 6, 7, 8, 9,
10, -1, 12, 13, 495, 15, 16, 17, 18, 19,
20, -1, 22, 23, 24, -1, -1, 27, 28, 29,
30, 31, 32, 644, 515, 646, 36, -1, -1, -1,
-1, 522, 523, 524, -1, -1, -1, -1, -1, 49,
50, -1, 52, 53, -1, -1, 56, -1, -1, 59,
-1, -1, 62, -1, -1, -1, -1, 67, 68, 69,
70, 71, -1, 73, 74, 1, -1, 3, -1, 5,
-1, 7, -1, 9, 10, -1, -1, 13, -1, 15,
70, 71, -1, 73, 74, 1, -1, 3, -1, -1,
6, -1, 8, 9, 10, -1, -1, 13, -1, 15,
16, 17, 18, 19, 20, -1, 22, 23, 24, -1,
-1, 27, 28, 29, 30, 31, 32, -1, -1, -1,
36, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 49, 50, -1, 52, 53, -1, -1,
56, -1, -1, 59, -1, 3, 62, 618, 619, 7,
621, 67, 68, 69, 70, 71, -1, 73, 74, 17,
7, -1, -1, -1, 22, 23, 24, -1, -1, -1,
17, 29, -1, -1, -1, 22, 23, 24, 36, -1,
-1, -1, 29, -1, -1, -1, -1, -1, -1, 36,
-1, 49, 50, -1, 52, 53, -1, -1, 56, -1,
3, 59, 60, -1, 7, -1, 53, -1, -1, -1,
-1, 69, 70, 71, 17, 73, 74, -1, 65, 22,
23, 24, -1, -1, 71, -1, 29, 74, -1, -1,
-1, -1, -1, 36, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 49, 50, -1, 52,
53, -1, -1, 56, -1, 3, 59, -1, -1, 7,
-1, -1, -1, -1, 67, -1, 69, 70, 71, 17,
73, 74, -1, -1, 22, 23, 24, -1, -1, -1,
-1, 29, -1, 31, -1, -1, -1, -1, 36, -1,
56, -1, -1, 59, -1, -1, 62, 618, 619, -1,
621, 67, 68, 69, 70, 71, 3, 73, 74, -1,
-1, 8, -1, -1, -1, -1, -1, -1, -1, -1,
17, -1, 8, -1, -1, 22, 23, 24, -1, -1,
-1, 17, 29, -1, -1, -1, 22, 23, 24, 36,
-1, -1, -1, 29, -1, -1, -1, -1, -1, -1,
36, -1, 49, 50, -1, 52, 53, -1, -1, 56,
-1, 3, 59, 60, -1, -1, 8, 53, -1, -1,
-1, -1, 69, 70, 71, 17, 73, 74, -1, -1,
22, 23, 24, -1, -1, 71, -1, 29, 74, -1,
-1, -1, -1, -1, 36, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 49, 50, -1,
52, 53, -1, -1, 56, -1, 3, 59, -1, -1,
-1, 8, -1, -1, -1, 67, -1, 69, 70, 71,
17, 73, 74, -1, -1, 22, 23, 24, -1, -1,
-1, -1, 29, -1, 31, -1, -1, -1, -1, 36,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 49, 50, -1, 52, 53, -1, -1, 56, -1,
3, 59, -1, -1, 7, -1, -1, -1, -1, -1,
-1, 69, 70, 71, 17, 73, 74, -1, -1, 22,
23, 24, -1, 26, -1, -1, 29, -1, -1, -1,
-1, -1, -1, 36, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 49, 50, -1, 52,
53, -1, -1, 56, -1, 3, 59, -1, -1, 7,
-1, -1, -1, -1, -1, -1, 69, 70, 71, 17,
73, 74, -1, -1, 22, 23, 24, -1, 26, -1,
-1, 29, -1, -1, -1, -1, -1, -1, 36, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 49, 50, -1, 52, 53, -1, -1, 56, -1,
3, 59, -1, -1, 7, -1, -1, -1, -1, -1,
-1, 69, 70, 71, 17, 73, 74, -1, -1, 22,
23, 24, -1, -1, -1, -1, 29, -1, -1, -1,
-1, -1, -1, 36, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 49, 50, -1, 52,
53, -1, -1, 56, -1, 3, 59, -1, -1, 7,
-1, -1, -1, -1, -1, -1, 69, 70, 71, 17,
73, 74, -1, -1, 22, 23, 24, -1, -1, -1,
-1, 29, -1, -1, -1, -1, -1, -1, 36, -1,
-1, -1, 49, 50, -1, 52, 53, -1, -1, 56,
-1, 3, 59, -1, -1, -1, 8, -1, -1, -1,
-1, -1, 69, 70, 71, 17, 73, 74, -1, -1,
22, 23, 24, -1, 26, -1, -1, 29, -1, -1,
-1, -1, -1, -1, 36, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 49, 50, -1,
52, 53, -1, -1, 56, -1, 3, 59, -1, -1,
-1, 8, -1, -1, -1, -1, -1, 69, 70, 71,
17, 73, 74, -1, -1, 22, 23, 24, -1, 26,
-1, -1, 29, -1, -1, -1, -1, -1, -1, 36,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 3,
-1, -1, 49, 50, 8, 52, 53, -1, -1, 56,
-1, -1, 59, 17, -1, -1, -1, -1, 22, 23,
24, -1, 69, 70, 71, 29, 73, 74, -1, -1,
-1, -1, 36, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 3, -1, -1, 49, 50, 8, 52, 53,
-1, -1, 56, -1, -1, 59, 17, -1, -1, -1,
-1, 22, 23, 24, -1, 69, 70, 71, 29, 73,
74, -1, -1, -1, -1, 36, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 3, -1, -1, 49, 50,
8, 52, 53, -1, -1, 56, -1, -1, 59, 17,
-1, -1, -1, -1, 22, 23, 24, -1, 69, 70,
71, 29, 73, 74, -1, -1, -1, -1, 36, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 49, 50, -1, 52, 53, -1, -1, 56, -1,
3, 59, -1, -1, 7, -1, -1, -1, -1, -1,
-1, 69, 70, 71, 17, 73, 74, -1, -1, 22,
23, 24, -1, -1, -1, -1, 29, -1, -1, -1,
-1, 49, 50, 8, 52, 53, -1, -1, 56, -1,
-1, 59, 17, -1, -1, -1, -1, 22, 23, 24,
-1, 69, 70, 71, 29, 73, 74, -1, 8, -1,
-1, 36, -1, -1, -1, -1, 8, 17, -1, 11,
-1, -1, 22, 23, 24, 17, -1, -1, 53, 29,
22, 23, 24, -1, 59, -1, 36, 29, -1, -1,
65, -1, 8, -1, 36, -1, 71, -1, 73, 74,
75, 17, -1, 53, -1, -1, 22, 23, 24, 59,
-1, 53, -1, 29, -1, -1, -1, 59, -1, 8,
36, 71, -1, 73, 74, 75, -1, -1, 17, 71,
-1, 73, 74, 22, 23, 24, -1, 53, -1, -1,
29, -1, -1, 59, -1, 8, -1, 36, -1, -1,
-1, -1, -1, 8, 17, 71, -1, 73, 74, 22,
23, 24, 17, -1, 53, -1, 29, 22, 23, 24,
59, -1, -1, 36, 29, -1, -1, -1, 8, -1,
-1, 36, 71, -1, 73, 74, 8, 17, -1, -1,
53, -1, 22, 23, 24, 17, 59, -1, 53, 29,
22, 23, 24, -1, 59, -1, 36, 29, 71, -1,
73, 74, 8, -1, 36, 11, 71, -1, 73, 74,
-1, 17, -1, 53, -1, -1, 22, 23, 24, 59,
-1, 53, -1, 29, -1, -1, -1, 59, -1, 8,
36, 71, -1, 73, 74, -1, -1, -1, 17, 71,
-1, -1, 74, 22, 23, 24, -1, 53, -1, -1,
29, -1, -1, -1, -1, 8, -1, 36, -1, -1,
-1, -1, -1, -1, 17, 71, -1, -1, 74, 22,
23, 24, -1, -1, 53, -1, 29, -1, -1, -1,
-1, -1, -1, 36, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 49, 50, -1, 52,
53, -1, -1, 56, -1, -1, 59, -1, -1, 7,
-1, -1, -1, -1, -1, -1, 69, 70, 71, 17,
73, 74, -1, -1, 22, 23, 24, -1, -1, -1,
-1, 29, -1, -1, -1, 7, -1, -1, 36, 11,
-1, -1, -1, 7, -1, 17, -1, -1, -1, -1,
22, 23, 24, 17, -1, 53, -1, 29, 22, 23,
24, 59, -1, -1, 36, 29, -1, 65, 7, -1,
-1, -1, 36, 71, -1, 73, 74, 75, 17, -1,
-1, 53, -1, 22, 23, 24, -1, 59, -1, 53,
29, -1, -1, -1, -1, 59, 7, 36, -1, 71,
-1, 73, 74, -1, -1, -1, 17, 71, -1, 73,
74, 22, 23, 24, 53, -1, -1, -1, 29, -1,
59, 7, -1, -1, -1, 36, -1, -1, -1, 7,
-1, 17, 71, -1, 73, 74, 22, 23, 24, 17,
-1, -1, 53, 29, 22, 23, 24, -1, 59, -1,
36, 29, -1, -1, 7, -1, -1, -1, 36, -1,
71, -1, 73, 74, 17, -1, -1, 53, -1, 22,
23, 24, -1, 59, -1, 53, 29, -1, -1, -1,
-1, 59, 7, 36, -1, 71, -1, 73, 74, -1,
-1, -1, 17, 71, -1, 73, 74, 22, 23, 24,
53, -1, -1, -1, 29, -1, 59, 7, -1, -1,
-1, 36, -1, -1, -1, 7, -1, 17, 71, -1,
-1, 74, 22, 23, 24, 17, -1, -1, 53, 29,
22, 23, 24, -1, -1, -1, 36, 29, -1, -1,
-1, -1, -1, -1, 36, -1, 71, -1, 73, 74,
-1, -1, -1, 53, -1, -1, -1, -1, -1, 59,
-1, 53, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 71, -1, -1, 74, -1, -1, -1, -1, 71,
33, 34, 74, 36, -1, 38, 39, 40, -1, -1,
43, 44, 45, 46, 47, 48, 49, 50, 51, 52,
53, 54, 55, 56, -1, -1, -1, -1, -1, -1,
33, 34, -1, 36, -1, 38, 39, 40, -1, 72,
43, 44, 45, 46, 47, 48, 49, 50, 51, 52,
53, 54, 55, 56, 33, 34, -1, 36, -1, 38,
39, 40, -1, 66, 43, 44, 45, 46, 47, 48,
49, 50, 51, 52, 53, 54, 55, 56, 33, 34,
-1, 36, -1, 38, 39, 40, -1, 66, 43, 44,
45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
55, 56, 33, 34, -1, 36, -1, 38, 39, 40,
-1, 66, 43, 44, 45, 46, 47, 48, 49, 50,
51, 52, 53, 54, 55, 56, -1, 33, 34, 60,
36, -1, 38, 39, 40, -1, -1, 43, 44, 45,
-1, -1, 71, 34, 73, 74, -1, 38, 39, 40,
53, -1, 43, 44, 45, 46, 59, 48, 49, 50,
51, 52, 53, 54, 55, 56, -1, -1, 71, 33,
34, 74, 36, -1, 38, 39, 40, -1, -1, 43,
44, 45, 46, 47, 48, 49, 50, 51, 52, 53,
54, 55, 56, -1, -1, -1, -1, -1, -1, 33,
34, -1, 36, -1, 38, 39, 40, -1, 72, 43,
44, 45, 46, 47, 48, 49, 50, 51, 52, 53,
54, 55, 56, 33, 34, -1, 36, -1, 38, 39,
40, -1, 66, 43, 44, 45, 46, 47, 48, 49,
50, 51, 52, 53, 54, 55, 56, 33, 34, -1,
36, -1, 38, 39, 40, -1, 66, 43, 44, 45,
46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
56, 33, 34, -1, -1, -1, 38, 39, 40, -1,
-1, 43, 44, 45, 46, 47, 48, 49, 50, 51,
52, 53, 54, 55, 56, 33, 34, -1, -1, -1,
38, 39, 40, -1, -1, 43, 44, 45, 46, -1,
48, 49, 50, 51, 52, 53, 54, 55, 56, 34,
-1, -1, -1, 38, 39, 40, -1, -1, 43, 44,
45, 46, -1, 48, 49, 50, 51, 52, 53, 54,
55, 56
56, 33, 34, -1, 36, -1, 38, 39, 40, -1,
66, 43, 44, 45, 46, 47, 48, 49, 50, 51,
52, 53, 54, 55, 56, -1, 33, 34, 60, 36,
-1, 38, 39, 40, -1, -1, 43, 44, 45, 46,
47, 48, 49, 50, 51, 52, 53, 54, 55, 56,
33, 34, -1, -1, -1, 38, 39, 40, -1, -1,
43, 44, 45, 46, 47, 48, 49, 50, 51, 52,
53, 54, 55, 56, 33, 34, -1, -1, -1, 38,
39, 40, -1, -1, 43, 44, 45, 46, -1, 48,
49, 50, 51, 52, 53, 54, 55, 56
};
/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
......@@ -1490,7 +1482,7 @@ static const yytype_uint8 yystos[] =
0, 77, 79, 80, 0, 25, 78, 25, 86, 24,
73, 74, 137, 138, 81, 24, 88, 89, 3, 62,
21, 82, 162, 24, 87, 210, 63, 3, 59, 63,
83, 85, 137, 62, 1, 3, 5, 7, 9, 10,
83, 85, 137, 62, 1, 3, 6, 8, 9, 10,
13, 15, 16, 17, 18, 19, 20, 22, 23, 27,
28, 29, 30, 31, 32, 36, 49, 50, 52, 53,
56, 59, 69, 70, 71, 90, 91, 92, 98, 110,
......@@ -1507,7 +1499,7 @@ static const yytype_uint8 yystos[] =
188, 62, 59, 94, 181, 4, 33, 34, 36, 37,
38, 39, 40, 42, 43, 44, 45, 46, 47, 48,
49, 50, 51, 52, 53, 54, 55, 56, 67, 59,
63, 71, 66, 59, 133, 1, 133, 8, 65, 75,
63, 71, 66, 59, 133, 1, 133, 5, 65, 75,
138, 196, 59, 156, 196, 24, 196, 197, 196, 64,
62, 186, 88, 59, 36, 59, 142, 148, 149, 150,
151, 157, 142, 142, 63, 98, 107, 108, 109, 182,
......@@ -1515,15 +1507,15 @@ static const yytype_uint8 yystos[] =
67, 158, 112, 190, 24, 59, 68, 134, 167, 169,
171, 142, 35, 53, 59, 68, 134, 166, 168, 169,
170, 180, 112, 60, 97, 165, 142, 60, 93, 163,
65, 75, 142, 7, 143, 60, 72, 72, 60, 94,
65, 75, 142, 8, 143, 60, 72, 72, 60, 94,
65, 142, 123, 123, 123, 123, 123, 123, 123, 123,
123, 123, 123, 123, 123, 123, 123, 123, 123, 123,
123, 123, 123, 127, 60, 131, 183, 59, 137, 123,
188, 178, 123, 127, 1, 67, 91, 100, 176, 177,
179, 182, 182, 123, 7, 17, 22, 23, 24, 29,
179, 182, 182, 123, 8, 17, 22, 23, 24, 29,
36, 53, 65, 71, 138, 198, 200, 201, 202, 137,
203, 211, 158, 59, 3, 198, 198, 83, 60, 175,
7, 142, 60, 137, 35, 105, 8, 65, 62, 142,
8, 142, 60, 137, 35, 105, 5, 65, 62, 142,
132, 141, 75, 187, 60, 175, 179, 115, 62, 63,
24, 169, 59, 172, 62, 186, 72, 104, 59, 170,
53, 170, 62, 186, 3, 194, 75, 142, 120, 62,
......@@ -1531,12 +1523,12 @@ static const yytype_uint8 yystos[] =
149, 150, 157, 67, 142, 142, 62, 186, 182, 65,
67, 123, 128, 129, 184, 185, 11, 75, 187, 31,
131, 72, 66, 176, 60, 185, 101, 62, 68, 36,
59, 199, 200, 202, 59, 67, 71, 67, 7, 198,
59, 199, 200, 202, 59, 67, 71, 67, 8, 198,
3, 50, 59, 137, 208, 209, 3, 72, 65, 11,
198, 60, 75, 62, 191, 211, 62, 62, 62, 60,
60, 106, 26, 26, 190, 173, 59, 137, 147, 148,
149, 150, 151, 157, 159, 60, 68, 105, 190, 137,
60, 175, 171, 68, 142, 6, 12, 68, 99, 102,
60, 175, 171, 68, 142, 7, 12, 68, 99, 102,
170, 194, 170, 60, 168, 68, 134, 194, 35, 97,
60, 93, 60, 182, 142, 127, 94, 95, 164, 181,
60, 182, 127, 66, 75, 187, 68, 75, 187, 131,
......@@ -1548,7 +1540,7 @@ static const yytype_uint8 yystos[] =
60, 185, 62, 186, 142, 185, 123, 129, 128, 129,
60, 72, 68, 60, 60, 59, 68, 62, 72, 198,
68, 62, 49, 198, 62, 194, 59, 59, 198, 206,
207, 68, 190, 60, 175, 14, 117, 159, 8, 65,
207, 68, 190, 60, 175, 14, 117, 159, 5, 65,
66, 75, 179, 194, 194, 68, 68, 95, 60, 68,
206, 191, 205, 198, 194, 204, 208, 191, 191, 60,
100, 113, 123, 123, 60, 60, 60, 60, 159, 66,
......@@ -2854,7 +2846,7 @@ yyreduce:
(yyval.node)->left = dclname((yyvsp[(1) - (3)].list)->n->sym); // it's a colas, so must not re-use an oldname.
break;
}
(yyval.node) = colas((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].list));
(yyval.node) = colas((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].list), (yyvsp[(2) - (3)].i));
}
break;
......@@ -2936,7 +2928,7 @@ yyreduce:
// done in casebody()
markdcl();
(yyval.node) = nod(OXCASE, N, N);
(yyval.node)->list = list1(colas((yyvsp[(2) - (5)].list), list1((yyvsp[(4) - (5)].node))));
(yyval.node)->list = list1(colas((yyvsp[(2) - (5)].list), list1((yyvsp[(4) - (5)].node)), (yyvsp[(3) - (5)].i)));
}
break;
......@@ -5293,7 +5285,7 @@ yyreduce:
/* Line 1806 of yacc.c */
#line 5298 "y.tab.c"
#line 5290 "y.tab.c"
default: break;
}
/* User semantic actions sometimes alter yychar, and that requires
......
......@@ -39,10 +39,10 @@
enum yytokentype {
LLITERAL = 258,
LASOP = 259,
LBREAK = 260,
LCASE = 261,
LCHAN = 262,
LCOLAS = 263,
LCOLAS = 260,
LBREAK = 261,
LCASE = 262,
LCHAN = 263,
LCONST = 264,
LCONTINUE = 265,
LDDD = 266,
......@@ -91,10 +91,10 @@
/* Tokens. */
#define LLITERAL 258
#define LASOP 259
#define LBREAK 260
#define LCASE 261
#define LCHAN 262
#define LCOLAS 263
#define LCOLAS 260
#define LBREAK 261
#define LCASE 262
#define LCHAN 263
#define LCONST 264
#define LCONTINUE 265
#define LDDD 266
......
......@@ -38,6 +38,12 @@ func main() {
i, f := f2() // ERROR "redeclared|no new"
_, _, _ = i, f, s
}
{
// multiline no new variables
i := f1
i := func() int { // ERROR "redeclared|no new|incompatible"
}
}
{
// single redeclaration
i, f, s := f3()
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment