summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--perl.h19
-rw-r--r--perly.act850
-rw-r--r--perly.h67
-rw-r--r--perly.tab1884
-rw-r--r--perly.y47
-rw-r--r--toke.c39
6 files changed, 1505 insertions, 1401 deletions
diff --git a/perl.h b/perl.h
index 2137b3fc92..f45fa5398c 100644
--- a/perl.h
+++ b/perl.h
@@ -6009,12 +6009,19 @@ enum Perl_custom_infix_precedence {
* they should not be changed within a stable release cycle, but they can
* be freely altered during a development cycle because no ABI guarantees
* are made at that time */
- INFIX_PREC_LOW = 10, /* non-associative */
- INFIX_PREC_REL = 30, /* non-associative, just below `==` */
- INFIX_PREC_ADD = 50, /* left-associative, same precedence as `+` */
- INFIX_PREC_MUL = 70, /* left-associative, same precedence as `*` */
- INFIX_PREC_POW = 90, /* right-associative, same precedence as `**` */
- INFIX_PREC_HIGH = 110, /* non-associative */
+ INFIX_PREC_LOW = 10, /* non-associative */
+ INFIX_PREC_LOGICAL_OR_LOW = 30, /* left-associative, as `or` */
+ INFIX_PREC_LOGICAL_AND_LOW = 40, /* left-associative, as `and` */
+ INFIX_PREC_ASSIGN = 50, /* right-associative, as `=` */
+ INFIX_PREC_LOGICAL_OR = 70, /* left-associative, as `||` */
+ INFIX_PREC_LOGICAL_AND = 80, /* left-associative, as `&&` */
+ INFIX_PREC_REL = 90, /* non-associative, just below `==` */
+ INFIX_PREC_ADD = 110, /* left-associative, as `+` */
+ INFIX_PREC_MUL = 130, /* left-associative, as `*` */
+ INFIX_PREC_POW = 150, /* right-associative, as `**` */
+ INFIX_PREC_HIGH = 170, /* non-associative */
+ /* Try to keep within the range of a U8 in case we need to split the field
+ * and add flags */
};
struct Perl_custom_infix;
struct Perl_custom_infix {
diff --git a/perly.act b/perly.act
index 02ab182c3f..9ab1bace16 100644
--- a/perly.act
+++ b/perly.act
@@ -5,7 +5,7 @@
*/
case 2:
-#line 159 "perly.y"
+#line 156 "perly.y"
{
parser->expect = XSTATE;
(yyval.ival) = 0;
@@ -14,7 +14,7 @@ case 2:
break;
case 3:
-#line 164 "perly.y"
+#line 161 "perly.y"
{
newPROG(block_end((ps[-1].val.ival),(ps[0].val.opval)));
PL_compiling.cop_seq = 0;
@@ -24,7 +24,7 @@ case 2:
break;
case 4:
-#line 170 "perly.y"
+#line 167 "perly.y"
{
parser->expect = XTERM;
(yyval.ival) = 0;
@@ -33,7 +33,7 @@ case 2:
break;
case 5:
-#line 175 "perly.y"
+#line 172 "perly.y"
{
PL_eval_root = (ps[0].val.opval);
(yyval.ival) = 0;
@@ -42,7 +42,7 @@ case 2:
break;
case 6:
-#line 180 "perly.y"
+#line 177 "perly.y"
{
parser->expect = XBLOCK;
(yyval.ival) = 0;
@@ -51,7 +51,7 @@ case 2:
break;
case 7:
-#line 185 "perly.y"
+#line 182 "perly.y"
{
PL_pad_reset_pending = TRUE;
PL_eval_root = (ps[0].val.opval);
@@ -63,7 +63,7 @@ case 2:
break;
case 8:
-#line 193 "perly.y"
+#line 190 "perly.y"
{
parser->expect = XSTATE;
(yyval.ival) = 0;
@@ -72,7 +72,7 @@ case 2:
break;
case 9:
-#line 198 "perly.y"
+#line 195 "perly.y"
{
PL_pad_reset_pending = TRUE;
PL_eval_root = (ps[0].val.opval);
@@ -84,7 +84,7 @@ case 2:
break;
case 10:
-#line 206 "perly.y"
+#line 203 "perly.y"
{
parser->expect = XSTATE;
(yyval.ival) = 0;
@@ -93,7 +93,7 @@ case 2:
break;
case 11:
-#line 211 "perly.y"
+#line 208 "perly.y"
{
PL_pad_reset_pending = TRUE;
PL_eval_root = (ps[0].val.opval);
@@ -105,7 +105,7 @@ case 2:
break;
case 12:
-#line 219 "perly.y"
+#line 216 "perly.y"
{
parser->expect = XSTATE;
(yyval.ival) = 0;
@@ -114,7 +114,7 @@ case 2:
break;
case 13:
-#line 224 "perly.y"
+#line 221 "perly.y"
{
PL_eval_root = (ps[0].val.opval);
(yyval.ival) = 0;
@@ -123,7 +123,7 @@ case 2:
break;
case 14:
-#line 229 "perly.y"
+#line 226 "perly.y"
{
parser->expect = XSTATE;
(yyval.ival) = 0;
@@ -132,7 +132,7 @@ case 2:
break;
case 15:
-#line 234 "perly.y"
+#line 231 "perly.y"
{
PL_eval_root = (ps[0].val.opval);
(yyval.ival) = 0;
@@ -141,7 +141,7 @@ case 2:
break;
case 16:
-#line 242 "perly.y"
+#line 239 "perly.y"
{ if (parser->copline > (line_t)(ps[-3].val.ival))
parser->copline = (line_t)(ps[-3].val.ival);
(yyval.opval) = block_end((ps[-2].val.ival), (ps[-1].val.opval));
@@ -150,13 +150,13 @@ case 2:
break;
case 17:
-#line 249 "perly.y"
+#line 246 "perly.y"
{ (yyval.opval) = NULL; }
break;
case 18:
-#line 254 "perly.y"
+#line 251 "perly.y"
{ if (parser->copline > (line_t)(ps[-6].val.ival))
parser->copline = (line_t)(ps[-6].val.ival);
(yyval.opval) = block_end((ps[-5].val.ival), (ps[-2].val.opval));
@@ -165,14 +165,14 @@ case 2:
break;
case 19:
-#line 261 "perly.y"
+#line 258 "perly.y"
{ (yyval.ival) = block_start(TRUE);
parser->parsed_sub = 0; }
break;
case 20:
-#line 266 "perly.y"
+#line 263 "perly.y"
{ if (parser->copline > (line_t)(ps[-3].val.ival))
parser->copline = (line_t)(ps[-3].val.ival);
(yyval.opval) = block_end((ps[-2].val.ival), (ps[-1].val.opval));
@@ -181,32 +181,32 @@ case 2:
break;
case 21:
-#line 273 "perly.y"
+#line 270 "perly.y"
{ (yyval.ival) = block_start(FALSE);
parser->parsed_sub = 0; }
break;
case 23:
-#line 282 "perly.y"
+#line 279 "perly.y"
{ parser->in_my = 1; }
break;
case 24:
-#line 284 "perly.y"
+#line 281 "perly.y"
{ parser->in_my = 0; intro_my(); }
break;
case 25:
-#line 286 "perly.y"
+#line 283 "perly.y"
{ (yyval.opval) = (ps[-2].val.opval); }
break;
case 27:
-#line 293 "perly.y"
+#line 290 "perly.y"
{ (yyval.opval) = op_append_list(OP_LINESEQ, (ps[-1].val.opval), (ps[0].val.opval));
PL_pad_reset_pending = TRUE;
if ((ps[-1].val.opval) && (ps[0].val.opval))
@@ -216,7 +216,7 @@ case 2:
break;
case 29:
-#line 304 "perly.y"
+#line 301 "perly.y"
{ (yyval.opval) = op_append_list(OP_LINESEQ, (ps[-1].val.opval), (ps[0].val.opval));
PL_pad_reset_pending = TRUE;
if ((ps[-1].val.opval) && (ps[0].val.opval))
@@ -226,7 +226,7 @@ case 2:
break;
case 30:
-#line 313 "perly.y"
+#line 310 "perly.y"
{
(yyval.opval) = (ps[0].val.opval) ? newSTATEOP(0, NULL, (ps[0].val.opval)) : NULL;
}
@@ -234,13 +234,13 @@ case 2:
break;
case 31:
-#line 317 "perly.y"
+#line 314 "perly.y"
{ (yyval.opval) = (ps[0].val.opval); }
break;
case 32:
-#line 321 "perly.y"
+#line 318 "perly.y"
{
SV *label = cSVOPx_sv((ps[-1].val.opval));
(yyval.opval) = newSTATEOP(SvFLAGS(label) & SVf_UTF8,
@@ -251,7 +251,7 @@ case 2:
break;
case 33:
-#line 328 "perly.y"
+#line 325 "perly.y"
{
SV *label = cSVOPx_sv((ps[-1].val.opval));
(yyval.opval) = newSTATEOP(SvFLAGS(label) & SVf_UTF8,
@@ -262,13 +262,13 @@ case 2:
break;
case 34:
-#line 338 "perly.y"
+#line 335 "perly.y"
{ (yyval.opval) = (ps[0].val.opval); }
break;
case 35:
-#line 340 "perly.y"
+#line 337 "perly.y"
{
CV *fmtcv = PL_compcv;
newFORM((ps[-2].val.ival), (ps[-1].val.opval), (ps[0].val.opval));
@@ -282,7 +282,7 @@ case 2:
break;
case 36:
-#line 352 "perly.y"
+#line 349 "perly.y"
{
init_named_cv(PL_compcv, (ps[-1].val.opval));
parser->in_my = 0;
@@ -292,7 +292,7 @@ case 2:
break;
case 37:
-#line 358 "perly.y"
+#line 355 "perly.y"
{
SvREFCNT_inc_simple_void(PL_compcv);
(ps[-5].val.opval)->op_type == OP_CONST
@@ -307,7 +307,7 @@ case 2:
break;
case 38:
-#line 373 "perly.y"
+#line 370 "perly.y"
{
init_named_cv(PL_compcv, (ps[-1].val.opval));
parser->in_my = 0;
@@ -317,7 +317,7 @@ case 2:
break;
case 39:
-#line 379 "perly.y"
+#line 376 "perly.y"
{
SvREFCNT_inc_simple_void(PL_compcv);
(ps[-4].val.opval)->op_type == OP_CONST
@@ -332,7 +332,7 @@ case 2:
break;
case 40:
-#line 394 "perly.y"
+#line 391 "perly.y"
{
package((ps[-1].val.opval));
if ((ps[-2].val.opval))
@@ -343,13 +343,13 @@ case 2:
break;
case 41:
-#line 401 "perly.y"
+#line 398 "perly.y"
{ CvSPECIAL_on(PL_compcv); /* It's a BEGIN {} */ }
break;
case 42:
-#line 405 "perly.y"
+#line 402 "perly.y"
{
SvREFCNT_inc_simple_void(PL_compcv);
utilize((ps[-6].val.ival), (ps[-5].val.ival), (ps[-3].val.opval), (ps[-2].val.opval), (ps[-1].val.opval));
@@ -360,7 +360,7 @@ case 2:
break;
case 43:
-#line 412 "perly.y"
+#line 409 "perly.y"
{
(yyval.opval) = block_end((ps[-4].val.ival),
newCONDOP(0, (ps[-3].val.opval), op_scope((ps[-1].val.opval)), (ps[0].val.opval)));
@@ -370,7 +370,7 @@ case 2:
break;
case 44:
-#line 418 "perly.y"
+#line 415 "perly.y"
{
(yyval.opval) = block_end((ps[-4].val.ival),
newCONDOP(0, (ps[-3].val.opval), (ps[0].val.opval), op_scope((ps[-1].val.opval))));
@@ -380,7 +380,7 @@ case 2:
break;
case 45:
-#line 424 "perly.y"
+#line 421 "perly.y"
{
(yyval.opval) = block_end((ps[-3].val.ival), newGIVENOP((ps[-2].val.opval), op_scope((ps[0].val.opval)), 0));
parser->copline = (line_t)(ps[-5].val.ival);
@@ -389,19 +389,19 @@ case 2:
break;
case 46:
-#line 429 "perly.y"
+#line 426 "perly.y"
{ (yyval.opval) = block_end((ps[-3].val.ival), newWHENOP((ps[-2].val.opval), op_scope((ps[0].val.opval)))); }
break;
case 47:
-#line 431 "perly.y"
+#line 428 "perly.y"
{ (yyval.opval) = newWHENOP(0, op_scope((ps[0].val.opval))); }
break;
case 48:
-#line 433 "perly.y"
+#line 430 "perly.y"
{
(yyval.opval) = block_end((ps[-5].val.ival),
newWHILEOP(0, 1, NULL,
@@ -412,7 +412,7 @@ case 2:
break;
case 49:
-#line 440 "perly.y"
+#line 437 "perly.y"
{
(yyval.opval) = block_end((ps[-5].val.ival),
newWHILEOP(0, 1, NULL,
@@ -423,19 +423,19 @@ case 2:
break;
case 50:
-#line 447 "perly.y"
+#line 444 "perly.y"
{ parser->expect = XTERM; }
break;
case 51:
-#line 449 "perly.y"
+#line 446 "perly.y"
{ parser->expect = XTERM; }
break;
case 52:
-#line 452 "perly.y"
+#line 449 "perly.y"
{
OP *initop = (ps[-9].val.opval);
OP *forop = newWHILEOP(0, 1, NULL,
@@ -454,7 +454,7 @@ case 2:
break;
case 53:
-#line 467 "perly.y"
+#line 464 "perly.y"
{
(yyval.opval) = block_end((ps[-6].val.ival), newFOROP(0, (ps[-5].val.opval), (ps[-3].val.opval), (ps[-1].val.opval), (ps[0].val.opval)));
parser->copline = (line_t)(ps[-8].val.ival);
@@ -463,7 +463,7 @@ case 2:
break;
case 54:
-#line 472 "perly.y"
+#line 469 "perly.y"
{
if ((ps[-6].val.opval)->op_type == OP_PADSV)
/* degenerate case of 1 var: for my ($x) ....
@@ -476,7 +476,7 @@ case 2:
break;
case 55:
-#line 481 "perly.y"
+#line 478 "perly.y"
{
(yyval.opval) = block_end((ps[-4].val.ival), newFOROP(0,
op_lvalue((ps[-6].val.opval), OP_ENTERLOOP), (ps[-3].val.opval), (ps[-1].val.opval), (ps[0].val.opval)));
@@ -486,13 +486,13 @@ case 2:
break;
case 56:
-#line 487 "perly.y"
+#line 484 "perly.y"
{ parser->in_my = 0; (yyval.opval) = my((ps[0].val.opval)); }
break;
case 57:
-#line 489 "perly.y"
+#line 486 "perly.y"
{
(yyval.opval) = block_end(
(ps[-7].val.ival),
@@ -509,7 +509,7 @@ case 2:
break;
case 58:
-#line 502 "perly.y"
+#line 499 "perly.y"
{
(yyval.opval) = block_end((ps[-4].val.ival), newFOROP(
0, op_lvalue(newUNOP(OP_REFGEN, 0,
@@ -521,7 +521,7 @@ case 2:
break;
case 59:
-#line 510 "perly.y"
+#line 507 "perly.y"
{
(yyval.opval) = block_end((ps[-4].val.ival),
newFOROP(0, NULL, (ps[-3].val.opval), (ps[-1].val.opval), (ps[0].val.opval)));
@@ -531,7 +531,7 @@ case 2:
break;
case 60:
-#line 516 "perly.y"
+#line 513 "perly.y"
{
if(!(ps[0].val.opval)) {
yyerror("catch block requires a (VAR)");
@@ -542,7 +542,7 @@ case 2:
break;
case 61:
-#line 523 "perly.y"
+#line 520 "perly.y"
{
(yyval.opval) = newTRYCATCHOP(0,
(ps[-6].val.opval), (ps[-3].val.opval), block_end((ps[-4].val.ival), op_scope((ps[-1].val.opval))));
@@ -554,7 +554,7 @@ case 2:
break;
case 62:
-#line 531 "perly.y"
+#line 528 "perly.y"
{
/* a block is a loop that happens once */
(yyval.opval) = newWHILEOP(0, 1, NULL,
@@ -564,7 +564,7 @@ case 2:
break;
case 63:
-#line 537 "perly.y"
+#line 534 "perly.y"
{
package((ps[-2].val.opval));
if ((ps[-3].val.opval)) {
@@ -575,7 +575,7 @@ case 2:
break;
case 64:
-#line 544 "perly.y"
+#line 541 "perly.y"
{
/* a block is a loop that happens once */
(yyval.opval) = newWHILEOP(0, 1, NULL,
@@ -587,7 +587,7 @@ case 2:
break;
case 65:
-#line 552 "perly.y"
+#line 549 "perly.y"
{
(yyval.opval) = (ps[-1].val.opval);
}
@@ -595,7 +595,7 @@ case 2:
break;
case 66:
-#line 556 "perly.y"
+#line 553 "perly.y"
{
(yyval.opval) = newDEFEROP(0, op_scope((ps[0].val.opval)));
}
@@ -603,7 +603,7 @@ case 2:
break;
case 67:
-#line 560 "perly.y"
+#line 557 "perly.y"
{
/* diag_listed_as: Unimplemented */
(yyval.opval) = newLISTOP(OP_DIE, 0, newOP(OP_PUSHMARK, 0),
@@ -613,7 +613,7 @@ case 2:
break;
case 68:
-#line 566 "perly.y"
+#line 563 "perly.y"
{
(yyval.opval) = NULL;
parser->copline = NOLINE;
@@ -622,7 +622,7 @@ case 2:
break;
case 69:
-#line 574 "perly.y"
+#line 571 "perly.y"
{ OP *list;
if ((ps[0].val.opval)) {
OP *term = (ps[0].val.opval);
@@ -641,62 +641,62 @@ case 2:
break;
case 71:
-#line 593 "perly.y"
+#line 590 "perly.y"
{ (yyval.opval) = op_unscope((ps[-1].val.opval)); }
break;
case 73:
-#line 601 "perly.y"
+#line 598 "perly.y"
{ (yyval.opval) = NULL; }
break;
case 74:
-#line 603 "perly.y"
+#line 600 "perly.y"
{ (yyval.opval) = (ps[0].val.opval); }
break;
case 75:
-#line 605 "perly.y"
+#line 602 "perly.y"
{ (yyval.opval) = newLOGOP(OP_AND, 0, (ps[0].val.opval), (ps[-2].val.opval)); }
break;
case 76:
-#line 607 "perly.y"
+#line 604 "perly.y"
{ (yyval.opval) = newLOGOP(OP_OR, 0, (ps[0].val.opval), (ps[-2].val.opval)); }
break;
case 77:
-#line 609 "perly.y"
+#line 606 "perly.y"
{ (yyval.opval) = newLOOPOP(OPf_PARENS, 1, scalar((ps[0].val.opval)), (ps[-2].val.opval)); }
break;
case 78:
-#line 611 "perly.y"
+#line 608 "perly.y"
{ (yyval.opval) = newLOOPOP(OPf_PARENS, 1, (ps[0].val.opval), (ps[-2].val.opval)); }
break;
case 79:
-#line 613 "perly.y"
+#line 610 "perly.y"
{ (yyval.opval) = newFOROP(0, NULL, (ps[0].val.opval), (ps[-2].val.opval), NULL);
parser->copline = (line_t)(ps[-1].val.ival); }
break;
case 80:
-#line 616 "perly.y"
+#line 613 "perly.y"
{ (yyval.opval) = newWHENOP((ps[0].val.opval), op_scope((ps[-2].val.opval))); }
break;
case 82:
-#line 623 "perly.y"
+#line 620 "perly.y"
{
((ps[0].val.opval))->op_flags |= OPf_PARENS;
(yyval.opval) = op_scope((ps[0].val.opval));
@@ -705,7 +705,7 @@ case 2:
break;
case 83:
-#line 628 "perly.y"
+#line 625 "perly.y"
{ parser->copline = (line_t)(ps[-5].val.ival);
(yyval.opval) = newCONDOP(0,
newSTATEOP(OPf_SPECIAL,NULL,(ps[-3].val.opval)),
@@ -716,25 +716,25 @@ case 2:
break;
case 85:
-#line 640 "perly.y"
+#line 637 "perly.y"
{ (yyval.opval) = op_scope((ps[0].val.opval)); }
break;
case 86:
-#line 645 "perly.y"
+#line 642 "perly.y"
{ (yyval.opval) = NULL; }
break;
case 87:
-#line 647 "perly.y"
+#line 644 "perly.y"
{ (yyval.opval) = op_scope((ps[0].val.opval)); }
break;
case 88:
-#line 652 "perly.y"
+#line 649 "perly.y"
{ (yyval.ival) = (PL_min_intro_pending &&
PL_max_intro_pending >= PL_min_intro_pending);
intro_my(); }
@@ -742,7 +742,7 @@ case 2:
break;
case 91:
-#line 664 "perly.y"
+#line 661 "perly.y"
{ YYSTYPE tmplval;
(void)scan_num("1", &tmplval);
(yyval.opval) = tmplval.opval; }
@@ -750,52 +750,52 @@ case 2:
break;
case 93:
-#line 672 "perly.y"
+#line 669 "perly.y"
{ (yyval.opval) = invert(scalar((ps[0].val.opval))); }
break;
case 94:
-#line 677 "perly.y"
+#line 674 "perly.y"
{ (yyval.opval) = (ps[0].val.opval); intro_my(); }
break;
case 95:
-#line 681 "perly.y"
+#line 678 "perly.y"
{ (yyval.opval) = (ps[0].val.opval); intro_my(); }
break;
case 96:
-#line 684 "perly.y"
+#line 681 "perly.y"
{ (yyval.opval) = (ps[0].val.opval); }
break;
case 98:
-#line 689 "perly.y"
+#line 686 "perly.y"
{ (yyval.ival) = start_subparse(FALSE, 0);
SAVEFREESV(PL_compcv); }
break;
case 99:
-#line 695 "perly.y"
+#line 692 "perly.y"
{ (yyval.ival) = start_subparse(FALSE, CVf_ANON);
SAVEFREESV(PL_compcv); }
break;
case 100:
-#line 700 "perly.y"
+#line 697 "perly.y"
{ (yyval.ival) = start_subparse(TRUE, 0);
SAVEFREESV(PL_compcv); }
break;
case 106:
-#line 719 "perly.y"
+#line 716 "perly.y"
{
OP *attrlist = (ps[0].val.opval);
if(attrlist && !PL_parser->sig_seen)
@@ -806,49 +806,49 @@ case 2:
break;
case 107:
-#line 726 "perly.y"
+#line 723 "perly.y"
{ (yyval.opval) = NULL; }
break;
case 108:
-#line 731 "perly.y"
+#line 728 "perly.y"
{ (yyval.opval) = (ps[0].val.opval); }
break;
case 109:
-#line 733 "perly.y"
+#line 730 "perly.y"
{ (yyval.opval) = NULL; }
break;
case 110:
-#line 744 "perly.y"
+#line 741 "perly.y"
{ parser->in_my = 0; (yyval.opval) = NULL; }
break;
case 111:
-#line 746 "perly.y"
+#line 743 "perly.y"
{ parser->in_my = 0; (yyval.opval) = (ps[0].val.opval); }
break;
case 112:
-#line 751 "perly.y"
+#line 748 "perly.y"
{ (yyval.ival) = '@'; }
break;
case 113:
-#line 753 "perly.y"
+#line 750 "perly.y"
{ (yyval.ival) = '%'; }
break;
case 114:
-#line 757 "perly.y"
+#line 754 "perly.y"
{
I32 sigil = (ps[-2].val.ival);
OP *var = (ps[-1].val.opval);
@@ -868,13 +868,13 @@ case 2:
break;
case 116:
-#line 778 "perly.y"
+#line 775 "perly.y"
{ (yyval.opval) = newARGDEFELEMOP(0, newOP(OP_NULL, 0), parser->sig_elems); }
break;
case 117:
-#line 780 "perly.y"
+#line 777 "perly.y"
{
I32 flags = 0;
if ((ps[-1].val.ival) == OP_DORASSIGN)
@@ -887,7 +887,7 @@ case 2:
break;
case 118:
-#line 793 "perly.y"
+#line 790 "perly.y"
{
OP *var = (ps[-1].val.opval);
OP *defop = (ps[0].val.opval);
@@ -947,25 +947,25 @@ case 2:
break;
case 119:
-#line 853 "perly.y"
+#line 850 "perly.y"
{ parser->in_my = KEY_sigvar; (yyval.opval) = (ps[0].val.opval); }
break;
case 120:
-#line 855 "perly.y"
+#line 852 "perly.y"
{ parser->in_my = KEY_sigvar; (yyval.opval) = (ps[0].val.opval); }
break;
case 121:
-#line 861 "perly.y"
+#line 858 "perly.y"
{ (yyval.opval) = (ps[-1].val.opval); }
break;
case 122:
-#line 863 "perly.y"
+#line 860 "perly.y"
{
(yyval.opval) = op_append_list(OP_LINESEQ, (ps[-2].val.opval), (ps[0].val.opval));
}
@@ -973,19 +973,19 @@ case 2:
break;
case 123:
-#line 867 "perly.y"
+#line 864 "perly.y"
{ (yyval.opval) = (ps[0].val.opval); }
break;
case 128:
-#line 884 "perly.y"
+#line 881 "perly.y"
{ (yyval.opval) = (ps[-1].val.opval); }
break;
case 129:
-#line 887 "perly.y"
+#line 884 "perly.y"
{
ENTER;
SAVEIV(parser->sig_elems);
@@ -1000,7 +1000,7 @@ case 2:
break;
case 130:
-#line 898 "perly.y"
+#line 895 "perly.y"
{
OP *sigops = (ps[0].val.opval);
struct op_argcheck_aux *aux;
@@ -1057,13 +1057,13 @@ case 2:
break;
case 132:
-#line 955 "perly.y"
+#line 952 "perly.y"
{ (yyval.opval) = NULL; }
break;
case 133:
-#line 961 "perly.y"
+#line 958 "perly.y"
{
if (parser->copline > (line_t)(ps[-2].val.ival))
parser->copline = (line_t)(ps[-2].val.ival);
@@ -1073,13 +1073,13 @@ case 2:
break;
case 135:
-#line 973 "perly.y"
+#line 970 "perly.y"
{ (yyval.opval) = NULL; }
break;
case 136:
-#line 978 "perly.y"
+#line 975 "perly.y"
{
if (parser->copline > (line_t)(ps[-2].val.ival))
parser->copline = (line_t)(ps[-2].val.ival);
@@ -1090,25 +1090,37 @@ case 2:
break;
case 137:
-#line 989 "perly.y"
+#line 986 "perly.y"
{ (yyval.opval) = newLOGOP(OP_AND, 0, (ps[-2].val.opval), (ps[0].val.opval)); }
break;
case 138:
-#line 991 "perly.y"
+#line 988 "perly.y"
+ { (yyval.opval) = build_infix_plugin((ps[-2].val.opval), (ps[0].val.opval), (ps[-1].val.pval)); }
+
+ break;
+
+ case 139:
+#line 990 "perly.y"
{ (yyval.opval) = newLOGOP((ps[-1].val.ival), 0, (ps[-2].val.opval), (ps[0].val.opval)); }
break;
case 140:
-#line 997 "perly.y"
+#line 992 "perly.y"
+ { (yyval.opval) = build_infix_plugin((ps[-2].val.opval), (ps[0].val.opval), (ps[-1].val.pval)); }
+
+ break;
+
+ case 142:
+#line 998 "perly.y"
{ (yyval.opval) = (ps[-1].val.opval); }
break;
- case 141:
-#line 999 "perly.y"
+ case 143:
+#line 1000 "perly.y"
{
OP* term = (ps[0].val.opval);
(yyval.opval) = op_append_elem(OP_LIST, (ps[-2].val.opval), term);
@@ -1116,24 +1128,24 @@ case 2:
break;
- case 143:
-#line 1008 "perly.y"
+ case 145:
+#line 1009 "perly.y"
{ (yyval.opval) = op_convert_list((ps[-2].val.ival), OPf_STACKED,
op_prepend_elem(OP_LIST, newGVREF((ps[-2].val.ival),(ps[-1].val.opval)), (ps[0].val.opval)) );
}
break;
- case 144:
-#line 1012 "perly.y"
+ case 146:
+#line 1013 "perly.y"
{ (yyval.opval) = op_convert_list((ps[-4].val.ival), OPf_STACKED,
op_prepend_elem(OP_LIST, newGVREF((ps[-4].val.ival),(ps[-2].val.opval)), (ps[-1].val.opval)) );
}
break;
- case 145:
-#line 1016 "perly.y"
+ case 147:
+#line 1017 "perly.y"
{ (yyval.opval) = op_convert_list(OP_ENTERSUB, OPf_STACKED,
op_append_elem(OP_LIST,
op_prepend_elem(OP_LIST, scalar((ps[-5].val.opval)), (ps[-1].val.opval)),
@@ -1142,8 +1154,8 @@ case 2:
break;
- case 146:
-#line 1022 "perly.y"
+ case 148:
+#line 1023 "perly.y"
{ (yyval.opval) = op_convert_list(OP_ENTERSUB, OPf_STACKED,
op_append_elem(OP_LIST, scalar((ps[-2].val.opval)),
newMETHOP(OP_METHOD, 0, (ps[0].val.opval))));
@@ -1151,8 +1163,8 @@ case 2:
break;
- case 147:
-#line 1027 "perly.y"
+ case 149:
+#line 1028 "perly.y"
{ (yyval.opval) = op_convert_list(OP_ENTERSUB, OPf_STACKED,
op_append_elem(OP_LIST,
op_prepend_elem(OP_LIST, (ps[-1].val.opval), (ps[0].val.opval)),
@@ -1161,8 +1173,8 @@ case 2:
break;
- case 148:
-#line 1033 "perly.y"
+ case 150:
+#line 1034 "perly.y"
{ (yyval.opval) = op_convert_list(OP_ENTERSUB, OPf_STACKED,
op_append_elem(OP_LIST,
op_prepend_elem(OP_LIST, (ps[-3].val.opval), (ps[-1].val.opval)),
@@ -1171,33 +1183,33 @@ case 2:
break;
- case 149:
-#line 1039 "perly.y"
+ case 151:
+#line 1040 "perly.y"
{ (yyval.opval) = op_convert_list((ps[-1].val.ival), 0, (ps[0].val.opval)); }
break;
- case 150:
-#line 1041 "perly.y"
+ case 152:
+#line 1042 "perly.y"
{ (yyval.opval) = op_convert_list((ps[-3].val.ival), 0, (ps[-1].val.opval)); }
break;
- case 151:
-#line 1043 "perly.y"
+ case 153:
+#line 1044 "perly.y"
{ (yyval.opval) = op_convert_list((ps[-3].val.ival), 0, (ps[-1].val.opval)); }
break;
- case 152:
-#line 1045 "perly.y"
+ case 154:
+#line 1046 "perly.y"
{ SvREFCNT_inc_simple_void(PL_compcv);
(yyval.opval) = newANONATTRSUB((ps[-1].val.ival), 0, NULL, (ps[0].val.opval)); }
break;
- case 153:
-#line 1048 "perly.y"
+ case 155:
+#line 1049 "perly.y"
{ (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
op_append_elem(OP_LIST,
op_prepend_elem(OP_LIST, (ps[-1].val.opval), (ps[0].val.opval)), (ps[-4].val.opval)));
@@ -1205,21 +1217,21 @@ case 2:
break;
- case 156:
-#line 1063 "perly.y"
+ case 158:
+#line 1064 "perly.y"
{ (yyval.opval) = newBINOP(OP_GELEM, 0, (ps[-4].val.opval), scalar((ps[-2].val.opval))); }
break;
- case 157:
-#line 1065 "perly.y"
+ case 159:
+#line 1066 "perly.y"
{ (yyval.opval) = newBINOP(OP_AELEM, 0, oopsAV((ps[-3].val.opval)), scalar((ps[-1].val.opval)));
}
break;
- case 158:
-#line 1068 "perly.y"
+ case 160:
+#line 1069 "perly.y"
{ (yyval.opval) = newBINOP(OP_AELEM, 0,
ref(newAVREF((ps[-4].val.opval)),OP_RV2AV),
scalar((ps[-1].val.opval)));
@@ -1227,8 +1239,8 @@ case 2:
break;
- case 159:
-#line 1073 "perly.y"
+ case 161:
+#line 1074 "perly.y"
{ (yyval.opval) = newBINOP(OP_AELEM, 0,
ref(newAVREF((ps[-3].val.opval)),OP_RV2AV),
scalar((ps[-1].val.opval)));
@@ -1236,31 +1248,31 @@ case 2:
break;
- case 160:
-#line 1078 "perly.y"
+ case 162:
+#line 1079 "perly.y"
{ (yyval.opval) = newBINOP(OP_HELEM, 0, oopsHV((ps[-4].val.opval)), jmaybe((ps[-2].val.opval)));
}
break;
- case 161:
-#line 1081 "perly.y"
+ case 163:
+#line 1082 "perly.y"
{ (yyval.opval) = newBINOP(OP_HELEM, 0,
ref(newHVREF((ps[-5].val.opval)),OP_RV2HV),
jmaybe((ps[-2].val.opval))); }
break;
- case 162:
-#line 1085 "perly.y"
+ case 164:
+#line 1086 "perly.y"
{ (yyval.opval) = newBINOP(OP_HELEM, 0,
ref(newHVREF((ps[-4].val.opval)),OP_RV2HV),
jmaybe((ps[-2].val.opval))); }
break;
- case 163:
-#line 1089 "perly.y"
+ case 165:
+#line 1090 "perly.y"
{ (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
newCVREF(0, scalar((ps[-3].val.opval))));
if (parser->expect == XBLOCK)
@@ -1269,8 +1281,8 @@ case 2:
break;
- case 164:
-#line 1095 "perly.y"
+ case 166:
+#line 1096 "perly.y"
{ (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
op_append_elem(OP_LIST, (ps[-1].val.opval),
newCVREF(0, scalar((ps[-4].val.opval)))));
@@ -1280,8 +1292,8 @@ case 2:
break;
- case 165:
-#line 1103 "perly.y"
+ case 167:
+#line 1104 "perly.y"
{ (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
op_append_elem(OP_LIST, (ps[-1].val.opval),
newCVREF(0, scalar((ps[-3].val.opval)))));
@@ -1291,8 +1303,8 @@ case 2:
break;
- case 166:
-#line 1110 "perly.y"
+ case 168:
+#line 1111 "perly.y"
{ (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
newCVREF(0, scalar((ps[-2].val.opval))));
if (parser->expect == XBLOCK)
@@ -1301,50 +1313,56 @@ case 2:
break;
- case 167:
-#line 1116 "perly.y"
+ case 169:
+#line 1117 "perly.y"
{ (yyval.opval) = newSLICEOP(0, (ps[-1].val.opval), (ps[-4].val.opval)); }
break;
- case 168:
-#line 1118 "perly.y"
+ case 170:
+#line 1119 "perly.y"
{ (yyval.opval) = newSLICEOP(0, (ps[-1].val.opval), (ps[-3].val.opval)); }
break;
- case 169:
-#line 1120 "perly.y"
+ case 171:
+#line 1121 "perly.y"
{ (yyval.opval) = newSLICEOP(0, (ps[-1].val.opval), NULL); }
break;
- case 170:
-#line 1125 "perly.y"
+ case 172:
+#line 1126 "perly.y"
{ (yyval.opval) = build_infix_plugin((ps[-2].val.opval), (ps[0].val.opval), (ps[-1].val.pval)); }
break;
- case 171:
-#line 1127 "perly.y"
+ case 173:
+#line 1128 "perly.y"
{ (yyval.opval) = newASSIGNOP(OPf_STACKED, (ps[-2].val.opval), (ps[-1].val.ival), (ps[0].val.opval)); }
break;
- case 172:
-#line 1129 "perly.y"
+ case 174:
+#line 1130 "perly.y"
+ { (yyval.opval) = build_infix_plugin((ps[-2].val.opval), (ps[0].val.opval), (ps[-1].val.pval)); }
+
+ break;
+
+ case 175:
+#line 1132 "perly.y"
{ (yyval.opval) = newBINOP((ps[-1].val.ival), 0, scalar((ps[-2].val.opval)), scalar((ps[0].val.opval))); }
break;
- case 173:
-#line 1131 "perly.y"
+ case 176:
+#line 1134 "perly.y"
{ (yyval.opval) = build_infix_plugin((ps[-2].val.opval), (ps[0].val.opval), (ps[-1].val.pval)); }
break;
- case 174:
-#line 1133 "perly.y"
+ case 177:
+#line 1136 "perly.y"
{ if ((ps[-1].val.ival) != OP_REPEAT)
scalar((ps[-2].val.opval));
(yyval.opval) = newBINOP((ps[-1].val.ival), 0, (ps[-2].val.opval), scalar((ps[0].val.opval)));
@@ -1352,208 +1370,220 @@ case 2:
break;
- case 175:
-#line 1138 "perly.y"
+ case 178:
+#line 1141 "perly.y"
{ (yyval.opval) = build_infix_plugin((ps[-2].val.opval), (ps[0].val.opval), (ps[-1].val.pval)); }
break;
- case 176:
-#line 1140 "perly.y"
+ case 179:
+#line 1143 "perly.y"
{ (yyval.opval) = newBINOP((ps[-1].val.ival), 0, scalar((ps[-2].val.opval)), scalar((ps[0].val.opval))); }
break;
- case 177:
-#line 1142 "perly.y"
+ case 180:
+#line 1145 "perly.y"
{ (yyval.opval) = build_infix_plugin((ps[-2].val.opval), (ps[0].val.opval), (ps[-1].val.pval)); }
break;
- case 178:
-#line 1144 "perly.y"
+ case 181:
+#line 1147 "perly.y"
{ (yyval.opval) = newBINOP((ps[-1].val.ival), 0, scalar((ps[-2].val.opval)), scalar((ps[0].val.opval))); }
break;
- case 179:
-#line 1146 "perly.y"
+ case 182:
+#line 1149 "perly.y"
{ (yyval.opval) = (ps[0].val.opval); }
break;
- case 180:
-#line 1148 "perly.y"
+ case 183:
+#line 1151 "perly.y"
{ (yyval.opval) = (ps[0].val.opval); }
break;
- case 181:
-#line 1150 "perly.y"
+ case 184:
+#line 1153 "perly.y"
{ (yyval.opval) = newBINOP((ps[-1].val.ival), 0, scalar((ps[-2].val.opval)), scalar((ps[0].val.opval))); }
break;
- case 182:
-#line 1152 "perly.y"
+ case 185:
+#line 1155 "perly.y"
{ (yyval.opval) = newBINOP((ps[-1].val.ival), 0, scalar((ps[-2].val.opval)), scalar((ps[0].val.opval))); }
break;
- case 183:
-#line 1154 "perly.y"
+ case 186:
+#line 1157 "perly.y"
{ (yyval.opval) = newRANGE((ps[-1].val.ival), scalar((ps[-2].val.opval)), scalar((ps[0].val.opval))); }
break;
- case 184:
-#line 1156 "perly.y"
+ case 187:
+#line 1159 "perly.y"
{ (yyval.opval) = newLOGOP(OP_AND, 0, (ps[-2].val.opval), (ps[0].val.opval)); }
break;
- case 185:
-#line 1158 "perly.y"
+ case 188:
+#line 1161 "perly.y"
+ { (yyval.opval) = build_infix_plugin((ps[-2].val.opval), (ps[0].val.opval), (ps[-1].val.pval)); }
+
+ break;
+
+ case 189:
+#line 1163 "perly.y"
{ (yyval.opval) = newLOGOP(OP_OR, 0, (ps[-2].val.opval), (ps[0].val.opval)); }
break;
- case 186:
-#line 1160 "perly.y"
+ case 190:
+#line 1165 "perly.y"
+ { (yyval.opval) = build_infix_plugin((ps[-2].val.opval), (ps[0].val.opval), (ps[-1].val.pval)); }
+
+ break;
+
+ case 191:
+#line 1167 "perly.y"
{ (yyval.opval) = newLOGOP(OP_DOR, 0, (ps[-2].val.opval), (ps[0].val.opval)); }
break;
- case 187:
-#line 1162 "perly.y"
+ case 192:
+#line 1169 "perly.y"
{ (yyval.opval) = bind_match((ps[-1].val.ival), (ps[-2].val.opval), (ps[0].val.opval)); }
break;
- case 188:
-#line 1164 "perly.y"
+ case 193:
+#line 1171 "perly.y"
{ (yyval.opval) = build_infix_plugin((ps[-2].val.opval), (ps[0].val.opval), (ps[-1].val.pval)); }
break;
- case 189:
-#line 1168 "perly.y"
+ case 194:
+#line 1175 "perly.y"
{ (yyval.opval) = cmpchain_finish((ps[0].val.opval)); }
break;
- case 190:
-#line 1170 "perly.y"
+ case 195:
+#line 1177 "perly.y"
{ (yyval.opval) = newBINOP((ps[-1].val.ival), 0, scalar((ps[-2].val.opval)), scalar((ps[0].val.opval))); }
break;
- case 191:
-#line 1172 "perly.y"
+ case 196:
+#line 1179 "perly.y"
{ yyerror("syntax error"); YYERROR; }
break;
- case 192:
-#line 1174 "perly.y"
+ case 197:
+#line 1181 "perly.y"
{ yyerror("syntax error"); YYERROR; }
break;
- case 193:
-#line 1176 "perly.y"
+ case 198:
+#line 1183 "perly.y"
{ (yyval.opval) = build_infix_plugin((ps[-2].val.opval), (ps[0].val.opval), (ps[-1].val.pval)); }
break;
- case 194:
-#line 1180 "perly.y"
+ case 199:
+#line 1187 "perly.y"
{ (yyval.opval) = cmpchain_start((ps[-1].val.ival), (ps[-2].val.opval), (ps[0].val.opval)); }
break;
- case 195:
-#line 1182 "perly.y"
+ case 200:
+#line 1189 "perly.y"
{ (yyval.opval) = cmpchain_extend((ps[-1].val.ival), (ps[-2].val.opval), (ps[0].val.opval)); }
break;
- case 196:
-#line 1186 "perly.y"
+ case 201:
+#line 1193 "perly.y"
{ (yyval.opval) = cmpchain_finish((ps[0].val.opval)); }
break;
- case 197:
-#line 1188 "perly.y"
+ case 202:
+#line 1195 "perly.y"
{ (yyval.opval) = newBINOP((ps[-1].val.ival), 0, scalar((ps[-2].val.opval)), scalar((ps[0].val.opval))); }
break;
- case 198:
-#line 1190 "perly.y"
+ case 203:
+#line 1197 "perly.y"
{ yyerror("syntax error"); YYERROR; }
break;
- case 199:
-#line 1192 "perly.y"
+ case 204:
+#line 1199 "perly.y"
{ yyerror("syntax error"); YYERROR; }
break;
- case 200:
-#line 1196 "perly.y"
+ case 205:
+#line 1203 "perly.y"
{ (yyval.opval) = cmpchain_start((ps[-1].val.ival), (ps[-2].val.opval), (ps[0].val.opval)); }
break;
- case 201:
-#line 1198 "perly.y"
+ case 206:
+#line 1205 "perly.y"
{ (yyval.opval) = cmpchain_extend((ps[-1].val.ival), (ps[-2].val.opval), (ps[0].val.opval)); }
break;
- case 202:
-#line 1203 "perly.y"
+ case 207:
+#line 1210 "perly.y"
{ (yyval.opval) = newUNOP(OP_NEGATE, 0, scalar((ps[0].val.opval))); }
break;
- case 203:
-#line 1205 "perly.y"
+ case 208:
+#line 1212 "perly.y"
{ (yyval.opval) = (ps[0].val.opval); }
break;
- case 204:
-#line 1208 "perly.y"
+ case 209:
+#line 1215 "perly.y"
{ (yyval.opval) = newUNOP(OP_NOT, 0, scalar((ps[0].val.opval))); }
break;
- case 205:
-#line 1210 "perly.y"
+ case 210:
+#line 1217 "perly.y"
{ (yyval.opval) = newUNOP((ps[-1].val.ival), 0, scalar((ps[0].val.opval))); }
break;
- case 206:
-#line 1212 "perly.y"
+ case 211:
+#line 1219 "perly.y"
{ (yyval.opval) = newUNOP(OP_POSTINC, 0,
op_lvalue(scalar((ps[-1].val.opval)), OP_POSTINC)); }
break;
- case 207:
-#line 1215 "perly.y"
+ case 212:
+#line 1222 "perly.y"
{ (yyval.opval) = newUNOP(OP_POSTDEC, 0,
op_lvalue(scalar((ps[-1].val.opval)), OP_POSTDEC));}
break;
- case 208:
-#line 1218 "perly.y"
+ case 213:
+#line 1225 "perly.y"
{ (yyval.opval) = op_convert_list(OP_JOIN, 0,
op_append_elem(
OP_LIST,
@@ -1567,138 +1597,138 @@ case 2:
break;
- case 209:
-#line 1229 "perly.y"
+ case 214:
+#line 1236 "perly.y"
{ (yyval.opval) = newUNOP(OP_PREINC, 0,
op_lvalue(scalar((ps[0].val.opval)), OP_PREINC)); }
break;
- case 210:
-#line 1232 "perly.y"
+ case 215:
+#line 1239 "perly.y"
{ (yyval.opval) = newUNOP(OP_PREDEC, 0,
op_lvalue(scalar((ps[0].val.opval)), OP_PREDEC)); }
break;
- case 211:
-#line 1240 "perly.y"
+ case 216:
+#line 1247 "perly.y"
{ (yyval.opval) = newANONLIST((ps[-1].val.opval)); }
break;
- case 212:
-#line 1242 "perly.y"
+ case 217:
+#line 1249 "perly.y"
{ (yyval.opval) = newANONHASH((ps[-2].val.opval)); }
break;
- case 213:
-#line 1244 "perly.y"
+ case 218:
+#line 1251 "perly.y"
{ SvREFCNT_inc_simple_void(PL_compcv);
(yyval.opval) = newANONATTRSUB((ps[-3].val.ival), (ps[-2].val.opval), (ps[-1].val.opval), (ps[0].val.opval)); }
break;
- case 214:
-#line 1247 "perly.y"
+ case 219:
+#line 1254 "perly.y"
{ SvREFCNT_inc_simple_void(PL_compcv);
(yyval.opval) = newANONATTRSUB((ps[-2].val.ival), NULL, (ps[-1].val.opval), (ps[0].val.opval)); }
break;
- case 215:
-#line 1253 "perly.y"
+ case 220:
+#line 1260 "perly.y"
{ (yyval.opval) = dofile((ps[0].val.opval), (ps[-1].val.ival));}
break;
- case 216:
-#line 1255 "perly.y"
+ case 221:
+#line 1262 "perly.y"
{ (yyval.opval) = newUNOP(OP_NULL, OPf_SPECIAL, op_scope((ps[0].val.opval)));}
break;
- case 221:
-#line 1263 "perly.y"
+ case 226:
+#line 1270 "perly.y"
{ (yyval.opval) = newCONDOP(0, (ps[-4].val.opval), (ps[-2].val.opval), (ps[0].val.opval)); }
break;
- case 222:
-#line 1265 "perly.y"
+ case 227:
+#line 1272 "perly.y"
{ (yyval.opval) = newUNOP(OP_REFGEN, 0, (ps[0].val.opval)); }
break;
- case 223:
-#line 1267 "perly.y"
+ case 228:
+#line 1274 "perly.y"
{ (yyval.opval) = (ps[0].val.opval); }
break;
- case 224:
-#line 1269 "perly.y"
+ case 229:
+#line 1276 "perly.y"
{ (yyval.opval) = localize((ps[0].val.opval),0); }
break;
- case 225:
-#line 1271 "perly.y"
+ case 230:
+#line 1278 "perly.y"
{ (yyval.opval) = sawparens((ps[-1].val.opval)); }
break;
- case 226:
-#line 1273 "perly.y"
+ case 231:
+#line 1280 "perly.y"
{ (yyval.opval) = (ps[0].val.opval); }
break;
- case 227:
-#line 1275 "perly.y"
+ case 232:
+#line 1282 "perly.y"
{ (yyval.opval) = sawparens(newNULLLIST()); }
break;
- case 228:
-#line 1277 "perly.y"
+ case 233:
+#line 1284 "perly.y"
{ (yyval.opval) = (ps[0].val.opval); }
break;
- case 229:
-#line 1279 "perly.y"
+ case 234:
+#line 1286 "perly.y"
{ (yyval.opval) = (ps[0].val.opval); }
break;
- case 230:
-#line 1281 "perly.y"
+ case 235:
+#line 1288 "perly.y"
{ (yyval.opval) = (ps[0].val.opval); }
break;
- case 231:
-#line 1283 "perly.y"
+ case 236:
+#line 1290 "perly.y"
{ (yyval.opval) = (ps[0].val.opval); }
break;
- case 232:
-#line 1285 "perly.y"
+ case 237:
+#line 1292 "perly.y"
{ (yyval.opval) = newUNOP(OP_AV2ARYLEN, 0, ref((ps[0].val.opval), OP_AV2ARYLEN));}
break;
- case 233:
-#line 1287 "perly.y"
+ case 238:
+#line 1294 "perly.y"
{ (yyval.opval) = (ps[0].val.opval); }
break;
- case 234:
-#line 1289 "perly.y"
+ case 239:
+#line 1296 "perly.y"
{ (yyval.opval) = op_prepend_elem(OP_ASLICE,
newOP(OP_PUSHMARK, 0),
newLISTOP(OP_ASLICE, 0,
@@ -1711,8 +1741,8 @@ case 2:
break;
- case 235:
-#line 1299 "perly.y"
+ case 240:
+#line 1306 "perly.y"
{ (yyval.opval) = op_prepend_elem(OP_KVASLICE,
newOP(OP_PUSHMARK, 0),
newLISTOP(OP_KVASLICE, 0,
@@ -1725,8 +1755,8 @@ case 2:
break;
- case 236:
-#line 1309 "perly.y"
+ case 241:
+#line 1316 "perly.y"
{ (yyval.opval) = op_prepend_elem(OP_HSLICE,
newOP(OP_PUSHMARK, 0),
newLISTOP(OP_HSLICE, 0,
@@ -1739,8 +1769,8 @@ case 2:
break;
- case 237:
-#line 1319 "perly.y"
+ case 242:
+#line 1326 "perly.y"
{ (yyval.opval) = op_prepend_elem(OP_KVHSLICE,
newOP(OP_PUSHMARK, 0),
newLISTOP(OP_KVHSLICE, 0,
@@ -1753,27 +1783,27 @@ case 2:
break;
- case 238:
-#line 1329 "perly.y"
+ case 243:
+#line 1336 "perly.y"
{ (yyval.opval) = (ps[0].val.opval); }
break;
- case 239:
-#line 1331 "perly.y"
+ case 244:
+#line 1338 "perly.y"
{ (yyval.opval) = newUNOP(OP_ENTERSUB, 0, scalar((ps[0].val.opval))); }
break;
- case 240:
-#line 1333 "perly.y"
+ case 245:
+#line 1340 "perly.y"
{ (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar((ps[-2].val.opval)));
}
break;
- case 241:
-#line 1336 "perly.y"
+ case 246:
+#line 1343 "perly.y"
{
(yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
op_append_elem(OP_LIST, (ps[-1].val.opval), scalar((ps[-3].val.opval))));
@@ -1781,153 +1811,153 @@ case 2:
break;
- case 242:
-#line 1341 "perly.y"
+ case 247:
+#line 1348 "perly.y"
{ (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
op_append_elem(OP_LIST, (ps[0].val.opval), scalar((ps[-1].val.opval))));
}
break;
- case 243:
-#line 1345 "perly.y"
+ case 248:
+#line 1352 "perly.y"
{ (yyval.opval) = newSVREF((ps[-3].val.opval)); }
break;
- case 244:
-#line 1347 "perly.y"
+ case 249:
+#line 1354 "perly.y"
{ (yyval.opval) = newAVREF((ps[-3].val.opval)); }
break;
- case 245:
-#line 1349 "perly.y"
+ case 250:
+#line 1356 "perly.y"
{ (yyval.opval) = newHVREF((ps[-3].val.opval)); }
break;
- case 246:
-#line 1351 "perly.y"
+ case 251:
+#line 1358 "perly.y"
{ (yyval.opval) = newUNOP(OP_ENTERSUB, 0,
scalar(newCVREF((ps[-1].val.ival),(ps[-3].val.opval)))); }
break;
- case 247:
-#line 1354 "perly.y"
+ case 252:
+#line 1361 "perly.y"
{ (yyval.opval) = newGVREF(0,(ps[-3].val.opval)); }
break;
- case 248:
-#line 1356 "perly.y"
+ case 253:
+#line 1363 "perly.y"
{ (yyval.opval) = newOP((ps[0].val.ival), OPf_SPECIAL);
PL_hints |= HINT_BLOCK_SCOPE; }
break;
- case 249:
-#line 1359 "perly.y"
+ case 254:
+#line 1366 "perly.y"
{ (yyval.opval) = newLOOPEX((ps[-1].val.ival),(ps[0].val.opval)); }
break;
- case 250:
-#line 1361 "perly.y"
+ case 255:
+#line 1368 "perly.y"
{ (yyval.opval) = newUNOP(OP_NOT, 0, scalar((ps[0].val.opval))); }
break;
- case 251:
-#line 1363 "perly.y"
+ case 256:
+#line 1370 "perly.y"
{ (yyval.opval) = newOP((ps[0].val.ival), 0); }
break;
- case 252:
-#line 1365 "perly.y"
+ case 257:
+#line 1372 "perly.y"
{ (yyval.opval) = newUNOP((ps[-1].val.ival), 0, (ps[0].val.opval)); }
break;
- case 253:
-#line 1367 "perly.y"
+ case 258:
+#line 1374 "perly.y"
{ (yyval.opval) = newUNOP((ps[-1].val.ival), 0, (ps[0].val.opval)); }
break;
- case 254:
-#line 1369 "perly.y"
+ case 259:
+#line 1376 "perly.y"
{ (yyval.opval) = newOP(OP_REQUIRE, (ps[0].val.ival) ? OPf_SPECIAL : 0); }
break;
- case 255:
-#line 1371 "perly.y"
+ case 260:
+#line 1378 "perly.y"
{ (yyval.opval) = newUNOP(OP_REQUIRE, (ps[-1].val.ival) ? OPf_SPECIAL : 0, (ps[0].val.opval)); }
break;
- case 256:
-#line 1373 "perly.y"
+ case 261:
+#line 1380 "perly.y"
{ (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar((ps[0].val.opval))); }
break;
- case 257:
-#line 1375 "perly.y"
+ case 262:
+#line 1382 "perly.y"
{ (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
op_append_elem(OP_LIST, (ps[0].val.opval), scalar((ps[-1].val.opval)))); }
break;
- case 258:
-#line 1378 "perly.y"
+ case 263:
+#line 1385 "perly.y"
{ (yyval.opval) = newOP((ps[0].val.ival), 0); }
break;
- case 259:
-#line 1380 "perly.y"
+ case 264:
+#line 1387 "perly.y"
{ (yyval.opval) = newOP((ps[-2].val.ival), 0);}
break;
- case 260:
-#line 1382 "perly.y"
+ case 265:
+#line 1389 "perly.y"
{ (yyval.opval) = (ps[0].val.opval); }
break;
- case 261:
-#line 1384 "perly.y"
+ case 266:
+#line 1391 "perly.y"
{ (yyval.opval) = (ps[-2].val.opval); }
break;
- case 262:
-#line 1386 "perly.y"
+ case 267:
+#line 1393 "perly.y"
{ (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar((ps[0].val.opval))); }
break;
- case 263:
-#line 1388 "perly.y"
+ case 268:
+#line 1395 "perly.y"
{ (yyval.opval) = ((ps[-2].val.ival) == OP_NOT)
? newUNOP((ps[-2].val.ival), 0, newSVOP(OP_CONST, 0, newSViv(0)))
: newOP((ps[-2].val.ival), OPf_SPECIAL); }
break;
- case 264:
-#line 1392 "perly.y"
+ case 269:
+#line 1399 "perly.y"
{ (yyval.opval) = newUNOP((ps[-3].val.ival), 0, (ps[-1].val.opval)); }
break;
- case 265:
-#line 1394 "perly.y"
+ case 270:
+#line 1401 "perly.y"
{
if ( (ps[0].val.opval)->op_type != OP_TRANS
&& (ps[0].val.opval)->op_type != OP_TRANSR
@@ -1941,182 +1971,182 @@ case 2:
break;
- case 266:
-#line 1405 "perly.y"
+ case 271:
+#line 1412 "perly.y"
{ (yyval.opval) = pmruntime((ps[-5].val.opval), (ps[-2].val.opval), (ps[-1].val.opval), 1, (ps[-4].val.ival)); }
break;
- case 270:
-#line 1414 "perly.y"
+ case 275:
+#line 1421 "perly.y"
{ (yyval.opval) = my_attrs((ps[-1].val.opval),(ps[0].val.opval)); }
break;
- case 271:
-#line 1416 "perly.y"
+ case 276:
+#line 1423 "perly.y"
{ (yyval.opval) = localize((ps[0].val.opval),1); }
break;
- case 272:
-#line 1418 "perly.y"
+ case 277:
+#line 1425 "perly.y"
{ (yyval.opval) = newUNOP(OP_REFGEN, 0, my_attrs((ps[-1].val.opval),(ps[0].val.opval))); }
break;
- case 273:
-#line 1420 "perly.y"
+ case 278:
+#line 1427 "perly.y"
{ (yyval.opval) = newUNOP(OP_REFGEN, 0, localize((ps[0].val.opval),1)); }
break;
- case 274:
-#line 1425 "perly.y"
+ case 279:
+#line 1432 "perly.y"
{ (yyval.opval) = sawparens((ps[-1].val.opval)); }
break;
- case 275:
-#line 1427 "perly.y"
+ case 280:
+#line 1434 "perly.y"
{ (yyval.opval) = sawparens(newNULLLIST()); }
break;
- case 276:
-#line 1430 "perly.y"
+ case 281:
+#line 1437 "perly.y"
{ (yyval.opval) = (ps[0].val.opval); }
break;
- case 277:
-#line 1432 "perly.y"
+ case 282:
+#line 1439 "perly.y"
{ (yyval.opval) = (ps[0].val.opval); }
break;
- case 278:
-#line 1434 "perly.y"
+ case 283:
+#line 1441 "perly.y"
{ (yyval.opval) = (ps[0].val.opval); }
break;
- case 284:
-#line 1450 "perly.y"
+ case 289:
+#line 1457 "perly.y"
{ (yyval.opval) = (ps[0].val.opval); }
break;
- case 285:
-#line 1456 "perly.y"
+ case 290:
+#line 1463 "perly.y"
{ parser->in_my = 0; (yyval.opval) = my((ps[0].val.opval)); }
break;
- case 286:
-#line 1461 "perly.y"
+ case 291:
+#line 1468 "perly.y"
{ (yyval.opval) = (ps[-1].val.opval); }
break;
- case 287:
-#line 1463 "perly.y"
+ case 292:
+#line 1470 "perly.y"
{
(yyval.opval) = op_append_elem(OP_LIST, (ps[-2].val.opval), (ps[0].val.opval));
}
break;
- case 289:
-#line 1470 "perly.y"
+ case 294:
+#line 1477 "perly.y"
{ parser->in_my = 0; (yyval.opval) = (ps[0].val.opval); }
break;
- case 297:
-#line 1487 "perly.y"
+ case 302:
+#line 1494 "perly.y"
{ (yyval.opval) = newCVREF((ps[-1].val.ival),(ps[0].val.opval)); }
break;
- case 298:
-#line 1491 "perly.y"
+ case 303:
+#line 1498 "perly.y"
{ (yyval.opval) = newSVREF((ps[0].val.opval)); }
break;
- case 299:
-#line 1495 "perly.y"
+ case 304:
+#line 1502 "perly.y"
{ (yyval.opval) = newAVREF((ps[0].val.opval));
if ((yyval.opval)) (yyval.opval)->op_private |= (ps[-1].val.ival);
}
break;
- case 300:
-#line 1501 "perly.y"
+ case 305:
+#line 1508 "perly.y"
{ (yyval.opval) = newHVREF((ps[0].val.opval));
if ((yyval.opval)) (yyval.opval)->op_private |= (ps[-1].val.ival);
}
break;
- case 301:
-#line 1507 "perly.y"
+ case 306:
+#line 1514 "perly.y"
{ (yyval.opval) = newAVREF((ps[0].val.opval)); }
break;
- case 302:
-#line 1509 "perly.y"
+ case 307:
+#line 1516 "perly.y"
{ (yyval.opval) = newAVREF((ps[-3].val.opval)); }
break;
- case 303:
-#line 1513 "perly.y"
+ case 308:
+#line 1520 "perly.y"
{ (yyval.opval) = newGVREF(0,(ps[0].val.opval)); }
break;
- case 305:
-#line 1518 "perly.y"
+ case 310:
+#line 1525 "perly.y"
{ (yyval.opval) = newAVREF((ps[-2].val.opval)); }
break;
- case 307:
-#line 1523 "perly.y"
+ case 312:
+#line 1530 "perly.y"
{ (yyval.opval) = newHVREF((ps[-2].val.opval)); }
break;
- case 309:
-#line 1528 "perly.y"
+ case 314:
+#line 1535 "perly.y"
{ (yyval.opval) = newGVREF(0,(ps[-2].val.opval)); }
break;
- case 310:
-#line 1533 "perly.y"
+ case 315:
+#line 1540 "perly.y"
{ (yyval.opval) = scalar((ps[0].val.opval)); }
break;
- case 311:
-#line 1535 "perly.y"
+ case 316:
+#line 1542 "perly.y"
{ (yyval.opval) = scalar((ps[0].val.opval)); }
break;
- case 312:
-#line 1537 "perly.y"
+ case 317:
+#line 1544 "perly.y"
{ (yyval.opval) = op_scope((ps[0].val.opval)); }
break;
- case 313:
-#line 1540 "perly.y"
+ case 318:
+#line 1547 "perly.y"
{ (yyval.opval) = (ps[0].val.opval); }
break;
@@ -2127,6 +2157,6 @@ case 2:
/* Generated from:
- * d159cbbb0bfd3916708be07894588433a9434f9ade8adce98532533a9ea86747 perly.y
+ * 259112249f1ef26949a345f9826162cf9be44cb0b68fb5f98540739f649ed47a perly.y
* acf1cbfd2545faeaaa58b1cf0cf9d7f98b5be0752eb7a54528ef904a9e2e1ca7 regen_perly.pl
* ex: set ro: */
diff --git a/perly.h b/perly.h
index d7a2f273ad..365da617a3 100644
--- a/perly.h
+++ b/perly.h
@@ -138,42 +138,47 @@ extern int yydebug;
FORMRBRACK = 337,
SUBLEXSTART = 338,
SUBLEXEND = 339,
- PLUGLOWOP = 340,
- PLUGRELOP = 341,
- PLUGADDOP = 342,
- PLUGMULOP = 343,
- PLUGPOWOP = 344,
- PLUGHIGHOP = 345,
- PREC_LOW = 346,
- OROP = 347,
- ANDOP = 348,
- NOTOP = 349,
- ASSIGNOP = 350,
- PERLY_QUESTION_MARK = 351,
- PERLY_COLON = 352,
- OROR = 353,
- DORDOR = 354,
- ANDAND = 355,
+ PREC_LOW = 340,
+ PLUGIN_LOW_OP = 341,
+ OROP = 342,
+ PLUGIN_LOGICAL_OR_LOW_OP = 343,
+ ANDOP = 344,
+ PLUGIN_LOGICAL_AND_LOW_OP = 345,
+ NOTOP = 346,
+ ASSIGNOP = 347,
+ PLUGIN_ASSIGN_OP = 348,
+ PERLY_QUESTION_MARK = 349,
+ PERLY_COLON = 350,
+ OROR = 351,
+ DORDOR = 352,
+ PLUGIN_LOGICAL_OR_OP = 353,
+ ANDAND = 354,
+ PLUGIN_LOGICAL_AND_OP = 355,
BITOROP = 356,
BITANDOP = 357,
CHEQOP = 358,
NCEQOP = 359,
CHRELOP = 360,
NCRELOP = 361,
- SHIFTOP = 362,
- MATCHOP = 363,
- PERLY_EXCLAMATION_MARK = 364,
- PERLY_TILDE = 365,
- UMINUS = 366,
- REFGEN = 367,
- PREINC = 368,
- PREDEC = 369,
- POSTINC = 370,
- POSTDEC = 371,
- POSTJOIN = 372,
- ARROW = 373,
- PERLY_PAREN_CLOSE = 374,
- PERLY_PAREN_OPEN = 375
+ PLUGIN_REL_OP = 362,
+ SHIFTOP = 363,
+ PLUGIN_ADD_OP = 364,
+ PLUGIN_MUL_OP = 365,
+ MATCHOP = 366,
+ PERLY_EXCLAMATION_MARK = 367,
+ PERLY_TILDE = 368,
+ UMINUS = 369,
+ REFGEN = 370,
+ PLUGIN_POW_OP = 371,
+ PREINC = 372,
+ PREDEC = 373,
+ POSTINC = 374,
+ POSTDEC = 375,
+ POSTJOIN = 376,
+ PLUGIN_HIGH_OP = 377,
+ ARROW = 378,
+ PERLY_PAREN_CLOSE = 379,
+ PERLY_PAREN_OPEN = 380
};
#endif
@@ -226,6 +231,6 @@ int yyparse (void);
/* Generated from:
- * d159cbbb0bfd3916708be07894588433a9434f9ade8adce98532533a9ea86747 perly.y
+ * 259112249f1ef26949a345f9826162cf9be44cb0b68fb5f98540739f649ed47a perly.y
* acf1cbfd2545faeaaa58b1cf0cf9d7f98b5be0752eb7a54528ef904a9e2e1ca7 regen_perly.pl
* ex: set ro: */
diff --git a/perly.tab b/perly.tab
index fa22eea783..cb0aaca69a 100644
--- a/perly.tab
+++ b/perly.tab
@@ -6,19 +6,19 @@
#define YYFINAL 16
/* YYLAST -- Last index in YYTABLE. */
-#define YYLAST 3289
+#define YYLAST 3434
/* YYNTOKENS -- Number of terminals. */
-#define YYNTOKENS 121
+#define YYNTOKENS 126
/* YYNNTS -- Number of nonterminals. */
#define YYNNTS 105
/* YYNRULES -- Number of rules. */
-#define YYNRULES 313
+#define YYNRULES 318
/* YYNSTATES -- Number of states. */
-#define YYNSTATES 625
+#define YYNSTATES 635
#define YYUNDEFTOK 2
-#define YYMAXUTOK 375
+#define YYMAXUTOK 380
/* YYTRANSLATE(TOKEN-NUM) -- Symbol number corresponding to TOKEN-NUM
as returned by yylex, with out-of-bounds checking. */
@@ -66,45 +66,46 @@ static const yytype_uint8 yytranslate[] =
85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
- 115, 116, 117, 118, 119, 120
+ 115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
+ 125
};
#if YYDEBUG
/* YYRLINE[YYN] -- Source line where rule number YYN was defined. */
static const yytype_uint16 yyrline[] =
{
- 0, 159, 159, 158, 170, 169, 180, 179, 193, 192,
- 206, 205, 219, 218, 229, 228, 241, 249, 253, 260,
- 265, 272, 278, 282, 284, 281, 291, 292, 302, 303,
- 312, 316, 320, 327, 337, 339, 352, 349, 373, 368,
- 389, 401, 400, 411, 417, 423, 428, 430, 432, 439,
- 447, 449, 446, 466, 471, 480, 487, 486, 501, 509,
- 516, 515, 530, 537, 536, 551, 555, 559, 565, 573,
- 591, 592, 596, 600, 602, 604, 606, 608, 610, 612,
- 615, 621, 622, 627, 638, 639, 644, 646, 651, 658,
- 659, 663, 667, 671, 676, 680, 684, 685, 688, 694,
- 699, 705, 706, 711, 712, 717, 718, 725, 730, 732,
- 743, 745, 750, 752, 756, 776, 777, 779, 792, 852,
- 854, 860, 862, 866, 872, 873, 878, 879, 883, 887,
- 887, 954, 955, 960, 972, 973, 977, 988, 990, 992,
- 996, 998, 1003, 1007, 1011, 1015, 1021, 1026, 1032, 1038,
- 1040, 1042, 1045, 1044, 1055, 1056, 1060, 1064, 1067, 1072,
- 1077, 1080, 1084, 1088, 1094, 1102, 1109, 1115, 1117, 1119,
- 1124, 1126, 1128, 1130, 1132, 1137, 1139, 1141, 1143, 1145,
- 1147, 1149, 1151, 1153, 1155, 1157, 1159, 1161, 1163, 1167,
- 1169, 1171, 1173, 1175, 1179, 1181, 1185, 1187, 1189, 1191,
- 1195, 1197, 1202, 1204, 1207, 1209, 1211, 1214, 1217, 1228,
- 1231, 1239, 1241, 1243, 1246, 1252, 1254, 1258, 1259, 1260,
- 1261, 1262, 1264, 1266, 1268, 1270, 1272, 1274, 1276, 1278,
- 1280, 1282, 1284, 1286, 1288, 1298, 1308, 1318, 1328, 1330,
- 1332, 1335, 1340, 1344, 1346, 1348, 1350, 1353, 1355, 1358,
- 1360, 1362, 1364, 1366, 1368, 1370, 1372, 1374, 1377, 1379,
- 1381, 1383, 1385, 1387, 1391, 1394, 1393, 1406, 1407, 1408,
- 1413, 1415, 1417, 1419, 1424, 1426, 1429, 1431, 1433, 1439,
- 1440, 1444, 1445, 1449, 1450, 1455, 1460, 1462, 1466, 1469,
- 1473, 1474, 1475, 1478, 1479, 1482, 1483, 1486, 1490, 1494,
- 1500, 1506, 1508, 1512, 1516, 1517, 1521, 1522, 1526, 1527,
- 1532, 1534, 1536, 1539
+ 0, 156, 156, 155, 167, 166, 177, 176, 190, 189,
+ 203, 202, 216, 215, 226, 225, 238, 246, 250, 257,
+ 262, 269, 275, 279, 281, 278, 288, 289, 299, 300,
+ 309, 313, 317, 324, 334, 336, 349, 346, 370, 365,
+ 386, 398, 397, 408, 414, 420, 425, 427, 429, 436,
+ 444, 446, 443, 463, 468, 477, 484, 483, 498, 506,
+ 513, 512, 527, 534, 533, 548, 552, 556, 562, 570,
+ 588, 589, 593, 597, 599, 601, 603, 605, 607, 609,
+ 612, 618, 619, 624, 635, 636, 641, 643, 648, 655,
+ 656, 660, 664, 668, 673, 677, 681, 682, 685, 691,
+ 696, 702, 703, 708, 709, 714, 715, 722, 727, 729,
+ 740, 742, 747, 749, 753, 773, 774, 776, 789, 849,
+ 851, 857, 859, 863, 869, 870, 875, 876, 880, 884,
+ 884, 951, 952, 957, 969, 970, 974, 985, 987, 989,
+ 991, 993, 997, 999, 1004, 1008, 1012, 1016, 1022, 1027,
+ 1033, 1039, 1041, 1043, 1046, 1045, 1056, 1057, 1061, 1065,
+ 1068, 1073, 1078, 1081, 1085, 1089, 1095, 1103, 1110, 1116,
+ 1118, 1120, 1125, 1127, 1129, 1131, 1133, 1135, 1140, 1142,
+ 1144, 1146, 1148, 1150, 1152, 1154, 1156, 1158, 1160, 1162,
+ 1164, 1166, 1168, 1170, 1174, 1176, 1178, 1180, 1182, 1186,
+ 1188, 1192, 1194, 1196, 1198, 1202, 1204, 1209, 1211, 1214,
+ 1216, 1218, 1221, 1224, 1235, 1238, 1246, 1248, 1250, 1253,
+ 1259, 1261, 1265, 1266, 1267, 1268, 1269, 1271, 1273, 1275,
+ 1277, 1279, 1281, 1283, 1285, 1287, 1289, 1291, 1293, 1295,
+ 1305, 1315, 1325, 1335, 1337, 1339, 1342, 1347, 1351, 1353,
+ 1355, 1357, 1360, 1362, 1365, 1367, 1369, 1371, 1373, 1375,
+ 1377, 1379, 1381, 1384, 1386, 1388, 1390, 1392, 1394, 1398,
+ 1401, 1400, 1413, 1414, 1415, 1420, 1422, 1424, 1426, 1431,
+ 1433, 1436, 1438, 1440, 1446, 1447, 1451, 1452, 1456, 1457,
+ 1462, 1467, 1469, 1473, 1476, 1480, 1481, 1482, 1485, 1486,
+ 1489, 1490, 1493, 1497, 1501, 1507, 1513, 1515, 1519, 1523,
+ 1524, 1528, 1529, 1533, 1534, 1539, 1541, 1543, 1546
};
#endif
@@ -130,30 +131,33 @@ static const char *const yytname[] =
"LABEL", "LOOPEX", "DOTDOT", "YADAYADA", "FUNC0", "FUNC1", "FUNC",
"UNIOP", "LSTOP", "POWOP", "MULOP", "ADDOP", "DOLSHARP", "HASHBRACK",
"NOAMP", "COLONATTR", "FORMLBRACK", "FORMRBRACK", "SUBLEXSTART",
- "SUBLEXEND", "PLUGLOWOP", "PLUGRELOP", "PLUGADDOP", "PLUGMULOP",
- "PLUGPOWOP", "PLUGHIGHOP", "PREC_LOW", "OROP", "ANDOP", "NOTOP",
- "ASSIGNOP", "PERLY_QUESTION_MARK", "PERLY_COLON", "OROR", "DORDOR",
- "ANDAND", "BITOROP", "BITANDOP", "CHEQOP", "NCEQOP", "CHRELOP",
- "NCRELOP", "SHIFTOP", "MATCHOP", "PERLY_EXCLAMATION_MARK", "PERLY_TILDE",
- "UMINUS", "REFGEN", "PREINC", "PREDEC", "POSTINC", "POSTDEC", "POSTJOIN",
- "ARROW", "PERLY_PAREN_CLOSE", "PERLY_PAREN_OPEN", "$accept", "grammar",
- "@1", "@2", "@3", "@4", "@5", "@6", "@7", "block", "empty", "formblock",
- "remember", "mblock", "mremember", "catch_paren", "$@8", "$@9",
- "stmtseq", "formstmtseq", "fullstmt", "labfullstmt", "barestmt", "$@10",
- "$@11", "$@12", "$@13", "$@14", "@15", "$@16", "$@17", "formline",
- "formarg", "condition", "sideff", "else", "cont", "finally", "mintro",
- "nexpr", "texpr", "iexpr", "mexpr", "mnexpr", "formname", "startsub",
- "startanonsub", "startformsub", "subname", "proto", "subattrlist",
- "myattrlist", "sigvarname", "sigslurpsigil", "sigslurpelem",
- "sigdefault", "sigscalarelem", "sigelem", "siglist", "optsiglist",
- "optsubsignature", "subsignature", "subsigguts", "$@18", "optsubbody",
- "subbody", "optsigsubbody", "sigsubbody", "expr", "listexpr", "listop",
- "@19", "methodname", "subscripted", "termbinop", "termrelop",
- "relopchain", "termeqop", "eqopchain", "termunop", "anonymous", "termdo",
- "term", "@20", "myattrterm", "myterm", "optlistexpr", "optexpr",
- "optrepl", "my_scalar", "list_of_scalars", "my_list_of_scalars",
- "my_var", "refgen_topic", "my_refgen", "amper", "scalar", "ary", "hsh",
- "arylen", "star", "sliceme", "kvslice", "gelem", "indirob", YY_NULLPTR
+ "SUBLEXEND", "PREC_LOW", "PLUGIN_LOW_OP", "OROP",
+ "PLUGIN_LOGICAL_OR_LOW_OP", "ANDOP", "PLUGIN_LOGICAL_AND_LOW_OP",
+ "NOTOP", "ASSIGNOP", "PLUGIN_ASSIGN_OP", "PERLY_QUESTION_MARK",
+ "PERLY_COLON", "OROR", "DORDOR", "PLUGIN_LOGICAL_OR_OP", "ANDAND",
+ "PLUGIN_LOGICAL_AND_OP", "BITOROP", "BITANDOP", "CHEQOP", "NCEQOP",
+ "CHRELOP", "NCRELOP", "PLUGIN_REL_OP", "SHIFTOP", "PLUGIN_ADD_OP",
+ "PLUGIN_MUL_OP", "MATCHOP", "PERLY_EXCLAMATION_MARK", "PERLY_TILDE",
+ "UMINUS", "REFGEN", "PLUGIN_POW_OP", "PREINC", "PREDEC", "POSTINC",
+ "POSTDEC", "POSTJOIN", "PLUGIN_HIGH_OP", "ARROW", "PERLY_PAREN_CLOSE",
+ "PERLY_PAREN_OPEN", "$accept", "grammar", "@1", "@2", "@3", "@4", "@5",
+ "@6", "@7", "block", "empty", "formblock", "remember", "mblock",
+ "mremember", "catch_paren", "$@8", "$@9", "stmtseq", "formstmtseq",
+ "fullstmt", "labfullstmt", "barestmt", "$@10", "$@11", "$@12", "$@13",
+ "$@14", "@15", "$@16", "$@17", "formline", "formarg", "condition",
+ "sideff", "else", "cont", "finally", "mintro", "nexpr", "texpr", "iexpr",
+ "mexpr", "mnexpr", "formname", "startsub", "startanonsub",
+ "startformsub", "subname", "proto", "subattrlist", "myattrlist",
+ "sigvarname", "sigslurpsigil", "sigslurpelem", "sigdefault",
+ "sigscalarelem", "sigelem", "siglist", "optsiglist", "optsubsignature",
+ "subsignature", "subsigguts", "$@18", "optsubbody", "subbody",
+ "optsigsubbody", "sigsubbody", "expr", "listexpr", "listop", "@19",
+ "methodname", "subscripted", "termbinop", "termrelop", "relopchain",
+ "termeqop", "eqopchain", "termunop", "anonymous", "termdo", "term",
+ "@20", "myattrterm", "myterm", "optlistexpr", "optexpr", "optrepl",
+ "my_scalar", "list_of_scalars", "my_list_of_scalars", "my_var",
+ "refgen_topic", "my_refgen", "amper", "scalar", "ary", "hsh", "arylen",
+ "star", "sliceme", "kvslice", "gelem", "indirob", YY_NULLPTR
};
#endif
@@ -174,87 +178,88 @@ static const yytype_uint16 yytoknum[] =
345, 346, 347, 348, 349, 350, 351, 352, 353, 354,
355, 356, 357, 358, 359, 360, 361, 362, 363, 364,
365, 366, 367, 368, 369, 370, 371, 372, 373, 374,
- 375
+ 375, 376, 377, 378, 379, 380
};
# endif
-#define YYPACT_NINF -507
+#define YYPACT_NINF -527
#define yypact_value_is_default(Yystate) \
- (!!((Yystate) == (-507)))
+ (!!((Yystate) == (-527)))
-#define YYTABLE_NINF -312
+#define YYTABLE_NINF -317
#define yytable_value_is_error(Yytable_value) \
- (!!((Yytable_value) == (-312)))
+ (!!((Yytable_value) == (-317)))
/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
STATE-NUM. */
static const yytype_int16 yypact[] =
{
- 433, -507, -507, -507, -507, -507, -507, -507, 33, -507,
- 2613, 36, 1674, 1569, -507, -507, -507, -507, 263, 2613,
- 263, 2613, 263, 2613, 263, 263, 2613, 60, 2613, 1974,
- -507, -507, -507, 263, 263, -507, -507, 37, -61, -507,
- 2613, -507, -507, 2613, -48, -46, -49, 1974, 1903, 263,
- 2613, 41, 2613, 2613, 2613, 2613, 2613, 2613, 2045, -507,
- 142, 81, -507, 5, -507, 236, -18, 267, 38, -507,
- -507, -507, 2796, -507, -507, -5, 138, 182, 251, -507,
- 91, 252, 295, 135, -507, -507, -507, -507, -507, 114,
- 2, 50, 7, 65, 82, 90, 96, 36, 148, 148,
- -507, 41, 41, -507, 198, 188, -507, 207, 264, 1569,
- -507, -507, -507, -507, 718, -507, 185, 823, -507, -507,
- -507, -507, -507, 217, -507, 273, -507, 273, -507, -507,
- 3148, 2684, 2116, 160, -507, -507, -507, 3148, -507, 3148,
- 190, 169, 2613, 132, 189, 2613, 186, 3148, 36, 2796,
- 197, 2187, 2613, 1903, -507, 3148, 2755, -507, 81, -507,
- 2258, 2613, -507, 297, -507, -507, 2613, 81, 273, 273,
- 273, 214, 214, 308, 131, 2613, 2613, 2613, 2613, 2613,
- 2329, -507, -507, 2613, -507, -507, 2613, 2613, 2613, 2613,
- 2613, 2613, 2613, 2613, 2613, 2613, 2613, 2613, 2613, 2613,
- 2613, 2613, 2613, 2613, 2613, 2613, 2613, 2613, 2613, 2613,
- -507, -507, -507, 57, 2400, 2613, 2613, 2613, 2613, 2613,
- 2613, 2613, -507, 271, 288, -507, -507, 223, 406, -507,
- -507, 241, -507, -507, -507, -507, -507, -507, 306, -507,
- -507, -507, -507, -507, 36, -507, -507, -507, 2613, 2613,
- 2613, 2613, 2613, 2613, -507, -507, -507, 298, -507, -507,
- -507, 298, -507, -507, -507, 350, -507, -507, 2471, 273,
- 160, 72, 75, 150, -507, 218, 317, -507, -507, -507,
- 169, 329, -507, -507, -507, 2613, 2613, -1, -507, -507,
- -507, -507, 220, 312, 281, 2613, 81, 389, -507, 2613,
- 390, 313, -507, 2886, 21, 15, -507, 233, 3103, 2772,
- 2976, 273, 228, 451, 2841, 3126, 451, 228, 273, -53,
- 2886, 545, 3011, 3011, 3034, 3057, 3080, 2772, 2772, 3103,
- 3103, 3171, 273, 382, 2613, 2613, 257, 383, 385, 396,
- -507, 400, 2542, 307, -507, -507, 235, 83, 25, 104,
- 47, 107, 55, 111, 939, -507, -507, 413, 31, 2613,
- 2613, -507, -4, -507, -507, 314, -507, -507, -507, -507,
- 1753, 404, -507, 2613, 2613, 2613, 2613, -507, -507, 380,
- -507, -507, -507, -507, 142, -507, -507, -507, 142, -507,
- -507, -507, 338, 338, 185, 19, 258, -507, -507, -507,
- -507, -507, 323, -507, 325, 121, -507, 2613, -507, -507,
- -507, 266, -507, 61, 2613, 437, -507, -507, 2613, -507,
- 115, 86, -507, -507, -507, -507, -507, -507, 283, 2613,
- -507, 438, -507, 443, -507, 448, -507, 452, -507, -507,
- -507, -507, -507, 346, 142, 347, 453, 352, -507, -507,
- -507, -507, -507, 354, 445, 203, -507, 2613, 355, 356,
- 142, 358, 359, 1044, 360, 427, 190, 169, 2613, -507,
- -507, -507, -507, 77, 471, -507, -507, -507, 472, -507,
- -507, 2613, -507, 401, -507, -507, -507, 89, -507, 2931,
- 474, -507, -507, 365, -507, -507, -507, -507, 465, -507,
- 148, 148, 473, 370, -507, 2613, 2613, 148, -507, 371,
- 374, -507, -507, 148, 148, -507, -507, -507, -507, 2613,
- 169, 475, 2796, -507, 375, -507, 142, -507, -507, -507,
- -507, 416, -507, 348, 348, 453, 379, 384, 386, 188,
- 2613, 2613, 148, 148, 148, -507, -507, 453, 148, 479,
- 482, -507, -507, -507, 1149, -507, 1254, -507, 1359, 148,
- 387, -507, -507, -507, -507, 2613, 148, 148, -507, 486,
- 397, 188, 188, 188, -507, 476, -507, -507, -507, -507,
- -507, -507, -507, 40, -507, -507, 2613, 399, 188, 188,
- -507, 148, -507, -507, -507, 409, 36, -507, 513, 454,
- -507, 414, 148, -507, -507, -507, 188, -507, -507, -507,
- -507, -507, -507, 148, 188, 1832, -507, 1464, 348, -507,
- 419, -507, -507, 148, -507
+ 807, -527, -527, -527, -527, -527, -527, -527, 65, -527,
+ 2732, 72, 1732, 1622, -527, -527, -527, -527, 197, 2732,
+ 197, 2732, 197, 2732, 197, 197, 2732, 4, 2732, 2048,
+ -527, -527, -527, 197, 197, -527, -527, 86, -22, -527,
+ 2732, -527, -527, 2732, -9, -5, -51, 2048, 1972, 197,
+ 2732, 116, 2732, 2732, 2732, 2732, 2732, 2732, 2124, -527,
+ 219, 133, -527, 12, -527, -34, -18, -70, 75, -527,
+ -527, -527, 552, -527, -527, 76, 44, 159, 170, -527,
+ 158, 183, 193, 194, -527, -527, -527, -527, -527, 160,
+ 120, 123, 19, 135, 136, 139, 153, 72, 247, 247,
+ -527, 116, 116, -527, 257, 256, -527, 272, 326, 1622,
+ -527, -527, -527, -527, 730, -527, 73, 840, -527, -527,
+ -527, -527, -527, 282, -527, 334, -527, 334, -527, -527,
+ 3311, 2808, 2200, 221, -527, -527, -527, 3311, -527, 3311,
+ 263, 252, 2732, 208, 251, 2732, 216, 3311, 72, 552,
+ 217, 2276, 2732, 1972, -527, 3311, 2884, -527, 133, -527,
+ 2352, 2732, -527, 317, -527, -527, 2732, 133, 334, 334,
+ 334, 703, 703, 329, 295, 2732, 2732, 2732, 2732, 2732,
+ 2732, 2732, 2428, -527, -527, 2732, -527, -527, 2732, 2732,
+ 2732, 2732, 2732, 2732, 2732, 2732, 2732, 2732, 2732, 2732,
+ 2732, 2732, 2732, 2732, 2732, 2732, 2732, 2732, 2732, 2732,
+ 2732, 2732, 2732, 2732, -527, -527, -527, 2732, 102, 2504,
+ 2732, 2732, 2732, 2732, 2732, 2732, 2732, -527, 298, 302,
+ -527, -527, 243, 402, -527, -527, 238, -527, -527, -527,
+ -527, -527, -527, 324, -527, -527, -527, -527, -527, 72,
+ -527, -527, -527, 2732, 2732, 2732, 2732, 2732, 2732, -527,
+ -527, -527, 310, -527, -527, -527, 310, -527, -527, -527,
+ 356, -527, -527, 2580, 334, 221, 28, 87, 122, -527,
+ 300, 318, -527, -527, -527, 252, 319, -527, -527, -527,
+ 2732, 2732, 74, -527, -527, -527, -527, 309, 288, 254,
+ 2732, 133, 368, -527, 2732, 390, 68, 68, -527, -527,
+ 3018, 64, 97, -527, 419, 513, 3273, 3118, 334, 569,
+ 373, 2968, 3018, 3018, 2918, 3156, 3156, 3156, 3194, 3194,
+ 3216, 3254, 3273, 3273, 513, 513, 3292, 474, 373, 569,
+ 334, 334, 66, 379, 2732, 2732, 57, 381, 384, 386,
+ -527, 392, 2656, 296, -527, -527, 477, 215, 103, 233,
+ 110, 237, 132, 241, 962, -527, -527, 405, 59, 2732,
+ 2732, -527, 0, -527, -527, 303, -527, -527, -527, -527,
+ 1814, 261, -527, 2732, 2732, 2732, 2732, -527, -527, 375,
+ -527, -527, -527, -527, 219, -527, -527, -527, 219, -527,
+ -527, -527, 328, 328, 73, 16, 489, -527, -527, -527,
+ -527, -527, 305, -527, 308, 35, -527, 2732, -527, -527,
+ -527, 610, -527, 145, 2732, 425, -527, -527, 2732, -527,
+ 248, 151, -527, -527, -527, -527, -527, -527, 648, 2732,
+ -527, 429, -527, 430, -527, 432, -527, 434, -527, -527,
+ -527, -527, -527, 325, 219, 335, 442, 338, -527, -527,
+ -527, -527, -527, 341, 446, 141, -527, 2732, 345, 346,
+ 219, 348, 349, 1072, 353, 427, 263, 252, 2732, -527,
+ -527, -527, -527, 67, 476, -527, -527, -527, 479, -527,
+ -527, 2732, -527, 404, -527, -527, -527, 210, -527, 3068,
+ 486, -527, -527, 376, -527, -527, -527, -527, 480, -527,
+ 247, 247, 484, 388, -527, 2732, 2732, 247, -527, 385,
+ 394, -527, -527, 247, 247, -527, -527, -527, -527, 2732,
+ 252, 499, 552, -527, 403, -527, 219, -527, -527, -527,
+ -527, 444, -527, 179, 179, 442, 410, 412, 414, 256,
+ 2732, 2732, 247, 247, 247, -527, -527, 442, 247, 506,
+ 519, -527, -527, -527, 1182, -527, 1292, -527, 1402, 247,
+ 421, -527, -527, -527, -527, 2732, 247, 247, -527, 525,
+ 428, 256, 256, 256, -527, 510, -527, -527, -527, -527,
+ -527, -527, -527, 37, -527, -527, 2732, 431, 256, 256,
+ -527, 247, -527, -527, -527, 436, 72, -527, 537, 481,
+ -527, 451, 247, -527, -527, -527, 256, -527, -527, -527,
+ -527, -527, -527, 247, 256, 1896, -527, 1512, 179, -527,
+ 456, -527, -527, 247, -527
};
/* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
@@ -264,61 +269,62 @@ static const yytype_uint16 yydefact[] =
{
0, 2, 4, 6, 8, 10, 12, 14, 0, 19,
17, 0, 0, 0, 17, 129, 1, 17, 0, 17,
- 0, 0, 0, 0, 0, 0, 0, 0, 254, 0,
- 99, 99, 267, 0, 0, 238, 265, 226, 260, 262,
- 256, 99, 269, 248, 258, 0, 0, 251, 17, 0,
- 17, 0, 0, 0, 0, 0, 0, 0, 0, 281,
- 282, 139, 268, 233, 217, 179, 189, 180, 196, 218,
- 219, 220, 142, 223, 5, 239, 228, 231, 230, 232,
- 229, 0, 0, 0, 19, 7, 73, 68, 100, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 259, 0,
+ 99, 99, 272, 0, 0, 243, 270, 231, 265, 267,
+ 261, 99, 274, 253, 263, 0, 0, 256, 17, 0,
+ 17, 0, 0, 0, 0, 0, 0, 0, 0, 286,
+ 287, 141, 273, 238, 222, 182, 194, 183, 201, 223,
+ 224, 225, 144, 228, 5, 244, 233, 236, 235, 237,
+ 234, 0, 0, 0, 19, 7, 73, 68, 100, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
98, 0, 0, 34, 0, 17, 9, 0, 74, 0,
- 11, 31, 30, 26, 0, 15, 17, 0, 310, 313,
- 312, 311, 297, 0, 298, 202, 300, 203, 299, 303,
- 224, 0, 0, 271, 276, 278, 277, 255, 216, 215,
- 17, 17, 17, 0, 0, 0, 0, 257, 0, 249,
- 0, 0, 17, 17, 252, 253, 267, 279, 280, 149,
- 228, 0, 301, 0, 101, 102, 17, 250, 204, 205,
- 222, 209, 210, 227, 0, 0, 0, 140, 0, 0,
- 0, 192, 191, 0, 199, 198, 0, 0, 0, 0,
+ 11, 31, 30, 26, 0, 15, 17, 0, 315, 318,
+ 317, 316, 302, 0, 303, 207, 305, 208, 304, 308,
+ 229, 0, 0, 276, 281, 283, 282, 260, 221, 220,
+ 17, 17, 17, 0, 0, 0, 0, 262, 0, 254,
+ 0, 0, 17, 17, 257, 258, 272, 284, 285, 151,
+ 233, 0, 306, 0, 101, 102, 17, 255, 209, 210,
+ 227, 214, 215, 232, 0, 0, 0, 0, 0, 142,
+ 0, 0, 0, 197, 196, 0, 204, 203, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 206, 207, 208, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 17, 17, 0, 19, 19, 19, 0, 19,
- 19, 0, 19, 19, 19, 19, 47, 21, 0, 66,
- 41, 98, 98, 67, 0, 84, 62, 65, 0, 0,
- 0, 0, 0, 0, 33, 32, 27, 110, 113, 112,
- 124, 110, 120, 119, 123, 125, 130, 211, 0, 273,
- 0, 228, 231, 230, 275, 0, 109, 270, 104, 103,
- 17, 107, 105, 19, 147, 17, 0, 0, 261, 152,
- 259, 263, 0, 0, 0, 0, 143, 0, 242, 0,
- 225, 138, 137, 141, 0, 0, 166, 0, 195, 201,
- 183, 172, 174, 176, 188, 193, 177, 175, 173, 170,
- 171, 0, 185, 186, 184, 182, 181, 200, 197, 194,
- 190, 178, 187, 0, 0, 0, 0, 307, 305, 309,
- 154, 0, 0, 146, 155, 240, 0, 0, 0, 0,
+ 0, 0, 0, 0, 211, 212, 213, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 17, 17, 0,
+ 19, 19, 19, 0, 19, 19, 0, 19, 19, 19,
+ 19, 47, 21, 0, 66, 41, 98, 98, 67, 0,
+ 84, 62, 65, 0, 0, 0, 0, 0, 0, 33,
+ 32, 27, 110, 113, 112, 124, 110, 120, 119, 123,
+ 125, 130, 216, 0, 278, 0, 233, 236, 235, 280,
+ 0, 109, 275, 104, 103, 17, 107, 105, 19, 149,
+ 17, 0, 0, 266, 154, 264, 268, 0, 0, 0,
+ 0, 145, 0, 247, 0, 230, 139, 140, 137, 138,
+ 143, 0, 0, 168, 0, 200, 206, 186, 175, 177,
+ 179, 193, 173, 174, 0, 189, 191, 190, 187, 188,
+ 185, 184, 205, 202, 199, 195, 198, 181, 180, 178,
+ 192, 176, 172, 0, 0, 0, 0, 312, 310, 314,
+ 156, 0, 0, 148, 157, 245, 0, 0, 0, 0,
0, 0, 0, 0, 0, 96, 97, 0, 0, 0,
- 0, 295, 0, 296, 293, 0, 294, 290, 291, 292,
+ 0, 300, 0, 301, 298, 0, 299, 295, 296, 297,
0, 0, 19, 0, 91, 0, 0, 17, 19, 0,
36, 38, 85, 75, 72, 76, 79, 78, 93, 77,
- 80, 111, 17, 17, 121, 227, 0, 272, 274, 108,
- 19, 106, 17, 214, 0, 17, 168, 17, 264, 151,
- 150, 0, 212, 0, 0, 0, 159, 165, 0, 246,
- 0, 0, 243, 245, 244, 247, 302, 163, 0, 17,
- 241, 0, 157, 0, 234, 0, 235, 0, 16, 19,
- 35, 19, 40, 0, 94, 0, 0, 0, 285, 19,
+ 80, 111, 17, 17, 121, 232, 0, 277, 279, 108,
+ 19, 106, 17, 219, 0, 17, 170, 17, 269, 153,
+ 152, 0, 217, 0, 0, 0, 161, 167, 0, 251,
+ 0, 0, 248, 250, 249, 252, 307, 165, 0, 17,
+ 246, 0, 159, 0, 239, 0, 240, 0, 16, 19,
+ 35, 19, 40, 0, 94, 0, 0, 0, 290, 19,
89, 90, 95, 0, 0, 74, 56, 0, 0, 0,
92, 0, 0, 0, 17, 0, 17, 17, 116, 115,
- 118, 114, 122, 225, 0, 213, 129, 126, 0, 127,
- 148, 0, 283, 0, 153, 144, 169, 0, 162, 221,
- 0, 158, 164, 0, 160, 236, 237, 156, 0, 63,
- 0, 0, 289, 0, 288, 0, 0, 0, 50, 0,
+ 118, 114, 122, 230, 0, 218, 129, 126, 0, 127,
+ 150, 0, 288, 0, 155, 146, 171, 0, 164, 226,
+ 0, 160, 166, 0, 162, 241, 242, 158, 0, 63,
+ 0, 0, 294, 0, 293, 0, 0, 0, 50, 0,
0, 88, 88, 0, 0, 20, 23, 22, 60, 17,
- 17, 19, 117, 17, 0, 17, 284, 266, 167, 161,
- 145, 0, 17, 17, 17, 286, 0, 0, 0, 17,
+ 17, 19, 117, 17, 0, 17, 289, 271, 169, 163,
+ 147, 0, 17, 17, 17, 291, 0, 0, 0, 17,
91, 0, 0, 0, 0, 45, 46, 0, 0, 0,
19, 135, 39, 134, 0, 128, 0, 17, 0, 0,
- 0, 81, 43, 44, 287, 0, 0, 0, 59, 0,
+ 0, 81, 43, 44, 292, 0, 0, 0, 59, 0,
0, 17, 17, 17, 24, 86, 42, 132, 37, 131,
133, 136, 28, 0, 64, 82, 0, 0, 17, 17,
51, 0, 55, 49, 48, 0, 0, 61, 0, 17,
@@ -330,32 +336,32 @@ static const yytype_uint16 yydefact[] =
/* YYPGOTO[NTERM-NUM]. */
static const yytype_int16 yypgoto[] =
{
- -507, -507, -507, -507, -507, -507, -507, -507, -507, -3,
- -10, -507, 51, -96, -507, -507, -507, -507, -11, -507,
- 519, 434, 12, -507, -507, -507, -507, -507, -507, -507,
- -507, -507, -507, 209, -368, -506, -345, -507, -485, -507,
- 6, 176, -319, -73, -507, 145, 70, -507, 292, 84,
- -269, 282, 293, -507, -507, 163, -507, 159, -507, -507,
- -507, -507, 94, -507, -507, 8, -507, 52, 39, -38,
- -507, -507, -507, -507, -507, -507, -507, -507, -507, -507,
- -507, -507, 508, -507, -507, 426, -141, 16, -507, -507,
- -507, -507, 200, -507, -507, 332, 140, -22, -7, -507,
- -507, -507, -507, -507, 30
+ -527, -527, -527, -527, -527, -527, -527, -527, -527, -3,
+ -10, -527, 52, -72, -527, -527, -527, -527, -11, -527,
+ 555, 472, 31, -527, -527, -527, -527, -527, -527, -527,
+ -527, -527, -527, 259, -368, -526, -230, -527, -520, -527,
+ 41, 209, -301, -27, -527, -21, 11, -527, 150, 124,
+ -274, 327, 339, -527, -527, 201, -527, 204, -527, -527,
+ -527, -527, 125, -527, -527, 54, -527, 85, 91, -38,
+ -527, -527, -527, -527, -527, -527, -527, -527, -527, -527,
+ -527, -527, 516, -527, -527, 494, -129, -14, -527, -527,
+ -527, -527, 236, -527, -527, 397, 29, -26, -24, -527,
+ -527, -527, -527, -527, 42
};
/* YYDEFGOTO[NTERM-NUM]. */
static const yytype_int16 yydefgoto[] =
{
-1, 8, 9, 10, 11, 12, 13, 14, 15, 105,
- 245, 440, 402, 238, 377, 518, 547, 595, 114, 583,
- 256, 111, 112, 466, 467, 379, 540, 605, 509, 548,
- 532, 600, 612, 383, 107, 562, 246, 597, 543, 452,
- 459, 387, 443, 454, 357, 240, 140, 223, 166, 280,
- 283, 277, 392, 261, 262, 470, 263, 264, 265, 266,
- 478, 479, 115, 116, 578, 475, 552, 403, 108, 61,
- 62, 407, 343, 63, 64, 65, 66, 67, 68, 69,
- 70, 71, 72, 144, 73, 133, 159, 74, 483, 447,
- 502, 503, 364, 365, 230, 75, 76, 77, 78, 79,
+ 250, 450, 412, 243, 387, 528, 557, 605, 114, 593,
+ 261, 111, 112, 476, 477, 389, 550, 615, 519, 558,
+ 542, 610, 622, 393, 107, 572, 251, 607, 553, 462,
+ 469, 397, 453, 464, 367, 245, 140, 228, 166, 285,
+ 288, 282, 402, 266, 267, 480, 268, 269, 270, 271,
+ 488, 489, 115, 116, 588, 485, 562, 413, 108, 61,
+ 62, 417, 353, 63, 64, 65, 66, 67, 68, 69,
+ 70, 71, 72, 144, 73, 133, 159, 74, 493, 457,
+ 512, 513, 374, 375, 235, 75, 76, 77, 78, 79,
80, 81, 82, 83, 124
};
@@ -364,774 +370,805 @@ static const yytype_int16 yydefgoto[] =
number is the opposite. If YYTABLE_NINF, syntax error. */
static const yytype_int16 yytable[] =
{
- 59, 284, 451, 239, 113, 135, 117, 113, 85, 59,
- 158, 400, 20, 406, 167, 120, 178, 120, 179, 120,
- 136, 120, 120, 20, 106, 298, 138, 544, 563, 416,
- 120, 120, 299, 16, 152, 123, 227, -312, 157, 432,
- 59, 445, 441, 415, 154, 120, 120, 84, 122, 60,
- 145, 453, 126, 442, 128, 129, 461, 462, 60, 146,
- 17, 434, 598, 142, 143, 213, 163, 333, 334, 436,
- 335, 153, 150, 336, 151, 486, 20, 337, 161, 162,
- 22, 338, 339, 215, 24, 216, -304, 183, -304, 60,
- 414, 175, 176, 164, 236, 599, 177, 174, 165, -275,
- 491, 141, -308, 528, 158, 431, 260, 175, 176, 272,
- 340, 148, 622, 175, 176, 214, 446, 175, 176, 228,
- 615, 255, 225, 296, 273, 180, 433, 229, 158, 435,
- 279, 282, 157, 437, 341, 222, 177, 490, 510, 175,
- 176, 186, 59, 59, 481, 289, 221, 175, 176, 215,
- 120, 216, -276, 175, 176, -278, 157, -274, 121, 237,
- 121, -306, 121, -306, 121, 121, 224, 134, 293, 294,
- 226, 275, 131, 121, 121, 175, 176, 342, 175, 176,
- 132, 175, 176, 295, 287, 232, 537, 538, 160, 121,
- 292, 60, 60, -304, 568, -304, 175, 176, 521, 175,
- 176, 257, 233, 175, 176, 258, 368, 175, 176, 259,
- 234, 354, 113, 356, 301, 302, 235, 304, 305, 307,
- 243, 369, 570, 175, 176, 244, 592, 593, 594, 247,
- -277, 267, 231, 248, 175, 176, 249, 250, 251, 252,
- 276, 382, 253, 603, 604, 278, 587, 451, 405, 281,
- 300, 550, 285, 346, 347, 348, 349, 350, 351, 352,
- 353, 616, -306, 217, -306, 218, 484, 601, 84, 619,
- 282, 271, 286, 20, 84, 59, 359, 360, 362, 20,
- 370, 371, 422, 373, 374, 375, 376, 384, 384, 384,
- 388, 384, 384, 160, 248, 175, 176, 249, 250, 251,
- 252, 404, 188, 253, 196, 288, 219, 396, 220, 118,
- 175, 176, 175, 176, 119, 118, 290, 195, 196, 297,
- 119, 299, -94, 355, 60, 175, 176, 175, 176, -312,
- -312, -312, 213, 120, 411, 361, 209, 398, 413, 408,
- 358, 181, 182, 210, 211, 212, 213, 188, 378, 368,
- 175, 176, 417, 344, 430, 391, 175, 176, 175, 176,
- 450, 372, 195, 196, 369, 394, 463, 113, 367, 158,
- 184, 185, 399, 420, 421, 175, 176, 473, 549, 559,
- 560, 428, 469, 469, 401, 485, 380, 381, 210, 211,
- 212, 213, 477, 241, 242, 482, 409, 157, 444, 444,
- 410, 412, 492, 414, 533, 534, 176, 419, 423, 455,
- 424, 539, 388, 460, 444, 444, 18, 545, 546, 59,
- 20, 425, 20, 457, 22, 426, 22, 429, 24, 464,
- 24, 439, 465, 468, 449, 363, 1, 2, 3, 4,
- 5, 6, 7, 476, 480, 493, 571, 572, 573, 488,
- 494, 474, 575, 487, 517, 495, 279, 282, 385, 386,
- 496, 389, 390, 585, 497, 500, 501, 508, 60, 20,
- 588, 589, 505, 507, 511, 512, 121, 513, 514, 519,
- 516, 158, 523, 525, 530, 527, 529, 531, 535, 536,
- 498, 541, 499, 542, 555, 606, 444, 551, 557, 565,
- 506, 576, 448, 566, 577, 567, 614, 586, 590, 157,
- 282, 367, 554, 113, 556, 113, 591, 618, 602, 596,
- 526, 558, 113, 561, 561, 188, 189, 624, 607, 125,
- 609, 127, 110, 613, 130, 610, 137, 139, 623, 194,
- 195, 196, 620, 254, 444, 444, 569, 582, 147, 458,
- 520, 149, 397, 472, 393, 155, 471, 270, 579, 209,
- 366, 168, 169, 170, 171, 172, 210, 211, 212, 213,
- 524, 456, 0, 553, 0, 0, 0, 0, 0, 460,
- 444, 0, 0, 0, 0, 0, 504, 0, 0, 611,
- 0, 0, 0, 608, 0, 0, 0, 0, 0, 617,
- 113, 474, 0, 0, 444, 450, 0, 0, 561, 0,
- 0, 0, 187, 0, 0, 0, 0, 0, 0, 188,
- 189, 190, 0, 0, 0, 444, 0, 0, 0, 0,
- 191, 192, 193, 194, 195, 196, 0, 0, 0, 269,
- 197, 198, 418, 199, 200, 201, 202, 203, 204, 205,
- 206, 207, 208, 209, 0, 0, 0, 0, 0, 0,
- 210, 211, 212, 213, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 564, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 303, 0, 574, 0, 0,
- 0, 308, 0, 0, 309, 310, 311, 312, 313, 314,
- 315, 316, 317, 318, 319, 320, 321, 322, 323, 324,
- 325, 326, 327, 328, 329, 330, 331, 332, -13, 86,
- 0, 0, 0, 0, 0, 0, 0, 0, 18, 84,
- 0, 19, 0, 0, 20, 0, 0, 21, 22, 23,
- 87, 0, 24, 25, 88, 89, 26, 27, 90, 0,
- 0, 91, 92, 93, 94, 0, 95, 96, 97, 98,
- 0, 0, 99, 28, 29, 100, 101, 102, 30, 31,
- 32, 33, 34, 35, 36, 0, 37, 38, 39, 40,
- 41, 42, 103, 109, 43, 0, 104, 44, 45, 46,
- 47, 48, 0, 0, 0, 49, 50, 51, 0, 0,
+ 59, 135, 554, 136, 113, 123, 117, 113, 85, 59,
+ 158, 410, 461, 289, 167, 120, 20, 120, 573, 120,
+ 20, 120, 120, 180, 22, 181, 138, 244, 24, 304,
+ 120, 120, 152, 186, 187, 20, 163, 303, 157, 220,
+ 59, 221, 141, 106, 154, 120, 120, 121, 232, 121,
+ 179, 121, 148, 121, 121, 220, 134, 221, 491, 608,
+ 122, 17, 121, 121, 126, 16, 128, 129, 84, 455,
+ 451, 183, 184, 20, 153, 142, 143, 160, 121, 463,
+ 424, 452, 432, 84, 471, 472, 425, 185, 416, 262,
+ 161, 162, 609, 263, 241, 625, -280, 264, -309, 145,
+ -309, 60, 632, 146, 158, 277, 265, 278, -281, 118,
+ 60, 426, 343, 344, 119, 345, 150, 442, 346, 131,
+ 151, 236, 347, 301, 444, 456, 348, 349, 158, 132,
+ 284, 287, 157, -311, 233, -311, 227, 182, 298, 299,
+ 260, 60, 59, 59, 234, 294, 446, -279, 179, 174,
+ 120, 175, 176, 177, 178, 350, 157, 177, 178, 496,
+ 276, 175, 176, 177, 178, 501, 520, -283, 164, -313,
+ -309, 253, -309, 165, 254, 255, 256, 257, 188, 351,
+ 258, -311, 160, -311, 175, 176, 177, 178, -317, 218,
+ 175, 176, 177, 178, 222, 300, 223, 175, 176, 177,
+ 178, 219, -282, 531, 224, 226, 225, 378, 84, 379,
+ 569, 570, 229, 20, 547, 548, 364, 113, 366, 175,
+ 176, 177, 178, 280, 538, 390, 391, 352, 175, 176,
+ 177, 178, 175, 176, 177, 178, 292, 441, 175, 176,
+ 177, 178, 297, 60, 60, 230, 392, 354, 231, 118,
+ 580, 246, 247, 415, 119, 443, 560, 461, 242, 445,
+ 237, 238, 377, 447, 239, -94, 306, 307, 308, 309,
+ 500, 311, 312, 314, 597, 287, 414, 20, 240, 248,
+ 59, 22, 369, 370, 372, 24, 380, 381, 494, 383,
+ 384, 385, 386, 249, 252, 611, 272, 175, 176, 177,
+ 178, 281, 175, 176, 177, 178, 175, 176, 177, 178,
+ 356, 357, 358, 359, 360, 361, 362, 363, 283, 578,
+ 175, 176, 177, 178, 175, 176, 177, 178, 175, 176,
+ 177, 178, 286, 290, 291, 175, 176, 177, 178, 302,
+ 293, 295, 304, 120, 394, 394, 394, 398, 394, 394,
+ 365, 602, 603, 604, 368, 378, 253, 379, 371, 254,
+ 255, 256, 257, 382, 406, 258, 388, 401, 613, 614,
+ 460, 404, 419, 409, 411, 121, 473, 113, 420, 158,
+ 422, 60, 175, 176, 177, 178, 626, 175, 176, 177,
+ 178, 421, 479, 479, 629, 423, 175, 176, 177, 178,
+ 559, 458, 487, 424, 429, 492, 433, 157, 190, 434,
+ 377, 435, 18, 175, 176, 177, 178, 436, 20, 305,
+ 478, 439, 22, 449, 408, 503, 24, 475, 459, 59,
+ 486, 373, 490, 418, 467, 430, 431, 498, 543, 544,
+ 474, 504, 505, 438, 506, 549, 507, 190, 191, 510,
+ 213, 555, 556, 214, 215, 216, 217, 218, 20, 511,
+ 454, 454, 484, 515, 527, 517, 284, 287, 518, 521,
+ 522, 465, 523, 524, 398, 470, 454, 454, 526, 529,
+ 581, 582, 583, 211, 212, 514, 585, 533, 537, 213,
+ 535, 158, 214, 215, 216, 217, 218, 595, 539, 545,
+ 540, 508, 541, 509, 598, 599, 175, 176, 177, 178,
+ 551, 516, 546, 395, 396, 497, 399, 400, 552, 157,
+ 287, 561, 564, 113, 566, 113, 567, 565, 586, 616,
+ 60, 568, 113, 571, 571, 575, 576, 125, 577, 127,
+ 624, 587, 130, 427, 137, 139, 596, 600, 190, 191,
+ 192, 628, 601, 606, 619, 612, 147, 592, 454, 149,
+ 617, 634, 620, 155, 175, 176, 177, 178, 110, 168,
+ 169, 170, 171, 172, 574, 623, 175, 176, 177, 178,
+ 633, 259, 536, 210, 211, 212, 584, 190, 191, 192,
+ 213, 579, 468, 214, 215, 216, 217, 218, 630, 621,
+ 530, 440, 407, 618, 481, 403, 454, 454, 482, 627,
+ 113, 534, 484, 483, 589, 460, 563, 466, 571, 189,
+ 208, 209, 210, 211, 212, 275, 190, 191, 192, 213,
+ 376, 0, 214, 215, 216, 217, 218, 0, 193, 0,
+ 0, 470, 454, 190, 194, 195, 196, 274, 197, 198,
+ 199, 200, 201, 202, 203, 204, 205, 206, 207, 208,
+ 209, 210, 211, 212, 0, 0, 454, 0, 213, 0,
+ 0, 214, 215, 216, 217, 218, 0, 0, 0, 0,
+ 212, 0, 0, 0, 0, 213, 0, 454, 214, 215,
+ 216, 217, 218, 0, 0, 310, 0, 175, 176, 177,
+ 178, 315, 0, 0, 316, 317, 318, 319, 320, 321,
+ 322, 323, 324, 325, 326, 327, 328, 329, 330, 331,
+ 332, 333, 334, 335, 336, 337, 338, 339, 340, 341,
+ -13, 86, 0, 342, 495, 175, 176, 177, 178, 0,
+ 18, 84, 0, 19, 0, 0, 20, 0, 0, 21,
+ 22, 23, 87, 0, 24, 25, 88, 89, 26, 27,
+ 90, 0, 0, 91, 92, 93, 94, 0, 95, 96,
+ 97, 98, 502, 0, 99, 28, 29, 100, 101, 102,
+ 30, 31, 32, 33, 34, 35, 36, 0, 37, 38,
+ 39, 40, 41, 42, 103, 109, 43, 0, 104, 44,
+ 45, 46, 47, 48, 0, 0, 0, 49, 50, 51,
+ 1, 2, 3, 4, 5, 6, 7, 0, 0, 0,
+ 0, 52, -317, -317, -317, 217, 218, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 52, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, -3, 86, 0, 0, 53, 54, 0,
- 55, 56, 57, 18, 84, 0, 19, 0, 58, 20,
- 0, 0, 21, 22, 23, 87, 0, 24, 25, 88,
- 89, 26, 27, 90, 0, 0, 91, 92, 93, 94,
- 0, 95, 96, 97, 98, 0, 0, 99, 28, 29,
- 100, 101, 102, 30, 31, 32, 33, 34, 35, 36,
- 0, 37, 38, 39, 40, 41, 42, 103, 109, 43,
- 0, 104, 44, 45, 46, 47, 48, 0, 0, 0,
- 49, 50, 51, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 52, 0, 0,
- 0, 0, 0, 0, 0, 0, 489, 0, 0, 0,
- 0, 0, 53, 54, 0, 55, 56, 57, 0, 0,
- 86, 0, 0, 58, 0, 0, 0, 0, 0, 18,
- 84, 438, 19, 0, 0, 20, 0, 0, 21, 22,
- 23, 87, 0, 24, 25, 88, 89, 26, 27, 90,
- 0, 0, 91, 92, 93, 94, 522, 95, 96, 97,
- 98, 0, 0, 99, 28, 29, 100, 101, 102, 30,
- 31, 32, 33, 34, 35, 36, 0, 37, 38, 39,
- 40, 41, 42, 103, 109, 43, 0, 104, 44, 45,
- 46, 47, 48, 0, 0, 0, 49, 50, 51, 0,
+ -3, 86, 53, 54, 0, 55, 0, 56, 57, 0,
+ 18, 84, 0, 19, 0, 58, 20, 0, 0, 21,
+ 22, 23, 87, 0, 24, 25, 88, 89, 26, 27,
+ 90, 0, 0, 91, 92, 93, 94, 0, 95, 96,
+ 97, 98, 0, 0, 99, 28, 29, 100, 101, 102,
+ 30, 31, 32, 33, 34, 35, 36, 0, 37, 38,
+ 39, 40, 41, 42, 103, 109, 43, 0, 104, 44,
+ 45, 46, 47, 48, 0, 0, 0, 49, 50, 51,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 52, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 499, 0, 0, 0, 0, 0,
+ 0, 0, 53, 54, 0, 55, 0, 56, 57, 0,
+ 0, 0, 0, 86, 0, 58, 0, 0, 0, 0,
+ 0, 0, 18, 84, 448, 19, 0, 0, 20, 0,
+ 0, 21, 22, 23, 87, 0, 24, 25, 88, 89,
+ 26, 27, 90, 0, 532, 91, 92, 93, 94, 0,
+ 95, 96, 97, 98, 0, 0, 99, 28, 29, 100,
+ 101, 102, 30, 31, 32, 33, 34, 35, 36, 0,
+ 37, 38, 39, 40, 41, 42, 103, 109, 43, 0,
+ 104, 44, 45, 46, 47, 48, 0, 0, 0, 49,
+ 50, 51, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 52, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 86, 0, 0, 53, 54,
- 0, 55, 56, 57, 18, 84, 515, 19, 0, 58,
- 20, 0, 0, 21, 22, 23, 87, 0, 24, 25,
- 88, 89, 26, 27, 90, 0, 0, 91, 92, 93,
- 94, 0, 95, 96, 97, 98, 0, 0, 99, 28,
- 29, 100, 101, 102, 30, 31, 32, 33, 34, 35,
- 36, 0, 37, 38, 39, 40, 41, 42, 103, 109,
- 43, 0, 104, 44, 45, 46, 47, 48, 0, 0,
- 0, 49, 50, 51, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 52, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 86, 0, 0, 53, 54, 0, 55, 56, 57, 18,
- 84, 580, 19, 0, 58, 20, 0, 0, 21, 22,
- 23, 87, 0, 24, 25, 88, 89, 26, 27, 90,
- 0, 0, 91, 92, 93, 94, 0, 95, 96, 97,
- 98, 0, 0, 99, 28, 29, 100, 101, 102, 30,
- 31, 32, 33, 34, 35, 36, 0, 37, 38, 39,
- 40, 41, 42, 103, 109, 43, 0, 104, 44, 45,
- 46, 47, 48, 0, 0, 0, 49, 50, 51, 0,
+ 0, 0, 0, 86, 53, 54, 0, 55, 0, 56,
+ 57, 0, 18, 84, 525, 19, 0, 58, 20, 0,
+ 0, 21, 22, 23, 87, 0, 24, 25, 88, 89,
+ 26, 27, 90, 0, 0, 91, 92, 93, 94, 0,
+ 95, 96, 97, 98, 0, 0, 99, 28, 29, 100,
+ 101, 102, 30, 31, 32, 33, 34, 35, 36, 0,
+ 37, 38, 39, 40, 41, 42, 103, 109, 43, 0,
+ 104, 44, 45, 46, 47, 48, 0, 0, 0, 49,
+ 50, 51, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 52, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 86, 53, 54, 0, 55, 0, 56,
+ 57, 0, 18, 84, 590, 19, 0, 58, 20, 0,
+ 0, 21, 22, 23, 87, 0, 24, 25, 88, 89,
+ 26, 27, 90, 0, 0, 91, 92, 93, 94, 0,
+ 95, 96, 97, 98, 0, 0, 99, 28, 29, 100,
+ 101, 102, 30, 31, 32, 33, 34, 35, 36, 0,
+ 37, 38, 39, 40, 41, 42, 103, 109, 43, 0,
+ 104, 44, 45, 46, 47, 48, 0, 0, 0, 49,
+ 50, 51, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 52, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 86, 0, 0, 53, 54,
- 0, 55, 56, 57, 18, 84, 581, 19, 0, 58,
- 20, 0, 0, 21, 22, 23, 87, 0, 24, 25,
- 88, 89, 26, 27, 90, 0, 0, 91, 92, 93,
- 94, 0, 95, 96, 97, 98, 0, 0, 99, 28,
- 29, 100, 101, 102, 30, 31, 32, 33, 34, 35,
- 36, 0, 37, 38, 39, 40, 41, 42, 103, 109,
- 43, 0, 104, 44, 45, 46, 47, 48, 0, 0,
- 0, 49, 50, 51, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 52, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 86, 0, 0, 53, 54, 0, 55, 56, 57, 18,
- 84, 584, 19, 0, 58, 20, 0, 0, 21, 22,
- 23, 87, 0, 24, 25, 88, 89, 26, 27, 90,
- 0, 0, 91, 92, 93, 94, 0, 95, 96, 97,
- 98, 0, 0, 99, 28, 29, 100, 101, 102, 30,
- 31, 32, 33, 34, 35, 36, 0, 37, 38, 39,
- 40, 41, 42, 103, 109, 43, 0, 104, 44, 45,
- 46, 47, 48, 0, 0, 0, 49, 50, 51, 0,
+ 0, 0, 0, 86, 53, 54, 0, 55, 0, 56,
+ 57, 0, 18, 84, 591, 19, 0, 58, 20, 0,
+ 0, 21, 22, 23, 87, 0, 24, 25, 88, 89,
+ 26, 27, 90, 0, 0, 91, 92, 93, 94, 0,
+ 95, 96, 97, 98, 0, 0, 99, 28, 29, 100,
+ 101, 102, 30, 31, 32, 33, 34, 35, 36, 0,
+ 37, 38, 39, 40, 41, 42, 103, 109, 43, 0,
+ 104, 44, 45, 46, 47, 48, 0, 0, 0, 49,
+ 50, 51, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 52, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 86, 53, 54, 0, 55, 0, 56,
+ 57, 0, 18, 84, 594, 19, 0, 58, 20, 0,
+ 0, 21, 22, 23, 87, 0, 24, 25, 88, 89,
+ 26, 27, 90, 0, 0, 91, 92, 93, 94, 0,
+ 95, 96, 97, 98, 0, 0, 99, 28, 29, 100,
+ 101, 102, 30, 31, 32, 33, 34, 35, 36, 0,
+ 37, 38, 39, 40, 41, 42, 103, 109, 43, 0,
+ 104, 44, 45, 46, 47, 48, 0, 0, 0, 49,
+ 50, 51, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 52, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 86, 0, 0, 53, 54,
- 0, 55, 56, 57, 18, 84, 0, 19, 0, 58,
- 20, 0, 0, 21, 22, 23, 87, 0, 24, 25,
- 88, 89, 26, 27, 90, 0, 0, 91, 92, 93,
- 94, 0, 95, 96, 97, 98, 0, 0, 99, 28,
- 29, 100, 101, 102, 30, 31, 32, 33, 34, 35,
- 36, 0, 37, 38, 39, 40, 41, 42, 103, 109,
- 43, 0, 104, 44, 45, 46, 47, 48, 0, 0,
- 0, 49, 50, 51, 0, 0, 621, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 52, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 86, 0, 0, 53, 54, 0, 55, 56, 57, 18,
- 84, 0, 19, 0, 58, 20, 0, 0, 21, 22,
- 23, 87, 0, 24, 25, 88, 89, 26, 27, 90,
- 0, 0, 91, 92, 93, 94, 0, 95, 96, 97,
- 98, 0, 0, 99, 28, 29, 100, 101, 102, 30,
- 31, 32, 33, 34, 35, 36, 0, 37, 38, 39,
- 40, 41, 42, 103, 109, 43, 0, 104, 44, 45,
- 46, 47, 48, 0, 0, 0, 49, 50, 51, 0,
+ 0, 0, 0, 86, 53, 54, 0, 55, 0, 56,
+ 57, 0, 18, 84, 0, 19, 0, 58, 20, 0,
+ 0, 21, 22, 23, 87, 0, 24, 25, 88, 89,
+ 26, 27, 90, 0, 0, 91, 92, 93, 94, 0,
+ 95, 96, 97, 98, 0, 0, 99, 28, 29, 100,
+ 101, 102, 30, 31, 32, 33, 34, 35, 36, 0,
+ 37, 38, 39, 40, 41, 42, 103, 109, 43, 0,
+ 104, 44, 45, 46, 47, 48, 0, 0, 0, 49,
+ 50, 51, 0, 0, 631, 0, 0, 0, 0, 0,
+ 0, 0, 0, 52, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 86, 53, 54, 0, 55, 0, 56,
+ 57, 0, 18, 84, 0, 19, 0, 58, 20, 0,
+ 0, 21, 22, 23, 87, 0, 24, 25, 88, 89,
+ 26, 27, 90, 0, 0, 91, 92, 93, 94, 0,
+ 95, 96, 97, 98, 0, 0, 99, 28, 29, 100,
+ 101, 102, 30, 31, 32, 33, 34, 35, 36, 0,
+ 37, 38, 39, 40, 41, 42, 103, 109, 43, 0,
+ 104, 44, 45, 46, 47, 48, 0, 0, 0, 49,
+ 50, 51, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 52, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 86, 0, 0, 53, 54,
- 0, 55, 56, 57, 18, 84, 0, 19, 0, 58,
- 20, 0, 0, 21, 22, 23, 87, 0, 24, 25,
- 88, 89, 26, 27, 90, 0, 0, 91, 92, 93,
- 94, 0, 95, 96, 97, 98, 0, 0, 99, 28,
- 29, 100, 101, 102, 30, 31, 32, 33, 34, 35,
- 36, 0, 37, 38, 39, 40, 41, 42, 103, 0,
- 43, 0, 104, 44, 45, 46, 47, 48, 0, 0,
- 0, 49, 50, 51, 86, 0, 0, 0, 0, 0,
- 0, 0, 0, 18, 0, 0, 19, 0, 52, 20,
- 0, 0, 21, 22, 23, -17, 0, 24, 25, 0,
- 0, 26, 27, 53, 54, 0, 55, 56, 57, 0,
- 0, 0, 0, 0, 58, 0, 0, 0, 28, 29,
- 0, 0, 0, 30, 31, 32, 33, 34, 35, 36,
- 0, 37, 38, 39, 40, 41, 42, 0, 0, 43,
- 0, 0, 44, 45, 46, 47, 48, 0, 0, 0,
- 49, 50, 51, 86, 0, 0, 0, 0, 0, 0,
- 0, 0, 18, 0, 0, 19, 0, 52, 20, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 86, 53, 54, 0, 55, 0, 56,
+ 57, 0, 18, 84, 0, 19, 0, 58, 20, 0,
+ 0, 21, 22, 23, 87, 0, 24, 25, 88, 89,
+ 26, 27, 90, 0, 0, 91, 92, 93, 94, 0,
+ 95, 96, 97, 98, 0, 0, 99, 28, 29, 100,
+ 101, 102, 30, 31, 32, 33, 34, 35, 36, 0,
+ 37, 38, 39, 40, 41, 42, 103, 0, 43, 0,
+ 104, 44, 45, 46, 47, 48, 0, 0, 0, 49,
+ 50, 51, 0, 0, 0, 86, 0, 0, 0, 0,
+ 0, 0, 0, 52, 18, 0, 0, 19, 0, 0,
+ 20, 0, 0, 21, 22, 23, -17, 0, 24, 25,
+ 0, 0, 26, 27, 53, 54, 0, 55, 0, 56,
+ 57, 0, 0, 0, 0, 0, 0, 58, 0, 28,
+ 29, 0, 0, 0, 30, 31, 32, 33, 34, 35,
+ 36, 0, 37, 38, 39, 40, 41, 42, 0, 0,
+ 43, 0, 0, 44, 45, 46, 47, 48, 0, 0,
+ 0, 49, 50, 51, 0, 0, 0, 86, 0, 0,
+ 0, 0, 0, 0, 0, 52, 18, 0, 0, 19,
+ 0, 0, 20, 0, 0, 21, 22, 23, 0, 0,
+ 24, 25, 0, 0, 26, 27, 53, 54, 0, 55,
+ 0, 56, 57, 0, 0, 0, 0, 0, 0, 58,
+ 0, 28, 29, 0, 0, 0, 30, 31, 32, 33,
+ 34, 35, 36, 0, 37, 38, 39, 40, 41, 42,
+ 0, 0, 43, 0, 0, 44, 45, 46, 47, 48,
+ 0, 0, 0, 49, 50, 51, 0, 0, 0, 0,
+ 0, 0, 18, 84, 0, 19, 0, 52, 20, 0,
0, 21, 22, 23, 0, 0, 24, 25, 0, 0,
- 26, 27, 53, 54, 0, 55, 56, 57, 0, 0,
- 0, 0, 0, 58, 0, 0, 0, 28, 29, 0,
- 0, 0, 30, 31, 32, 33, 34, 35, 36, 0,
+ 26, 27, 0, 0, 0, 0, 0, 0, 53, 54,
+ 0, 55, 0, 56, 57, 0, 0, 28, 29, 0,
+ -17, 58, 30, 31, 156, 33, 34, 35, 36, 119,
37, 38, 39, 40, 41, 42, 0, 0, 43, 0,
0, 44, 45, 46, 47, 48, 0, 0, 0, 49,
- 50, 51, 0, 18, 84, 0, 19, 0, 0, 20,
- 0, 0, 21, 22, 23, 0, 52, 24, 25, 0,
- 0, 26, 27, 0, 0, 0, 0, 0, 0, 0,
- 0, 53, 54, 0, 55, 56, 57, 0, 28, 29,
- 0, -17, 58, 30, 31, 156, 33, 34, 35, 36,
- 119, 37, 38, 39, 40, 41, 42, 0, 0, 43,
- 0, 0, 44, 45, 46, 47, 48, 0, 0, 0,
- 49, 50, 51, 0, 18, 84, 0, 19, 0, 0,
- 20, 0, 0, 21, 22, 23, 0, 52, 24, 25,
+ 50, 51, 0, 0, 0, 0, 0, 0, 18, 84,
+ 0, 19, 0, 52, 20, 0, 0, 21, 22, 23,
+ 0, 0, 24, 25, 0, 0, 26, 27, 0, 0,
+ 0, 0, 0, 0, 53, 54, 0, 55, 0, 56,
+ 57, 0, 0, 28, 29, 0, 0, 58, 30, 31,
+ 32, 33, 34, 35, 36, 0, 37, 38, 39, 40,
+ 41, 42, 0, 0, 43, 0, 0, 44, 45, 46,
+ 47, 48, 0, 0, 0, 49, 50, 51, 0, 0,
+ 0, 0, 0, 0, 18, 0, 0, 19, 0, 52,
+ 20, 0, 0, 21, 22, 23, 0, 0, 24, 25,
0, 0, 26, 27, 0, 0, 0, 0, 0, 0,
- 0, 0, 53, 54, 0, 55, 56, 57, 0, 28,
+ 53, 54, 0, 55, 0, 56, 57, 0, 0, 28,
29, 0, 0, 58, 30, 31, 32, 33, 34, 35,
36, 0, 37, 38, 39, 40, 41, 42, 0, 0,
43, 0, 0, 44, 45, 46, 47, 48, 0, 0,
- 0, 49, 50, 51, 0, 18, 0, 0, 19, 0,
- 0, 20, 0, 0, 21, 22, 23, 0, 52, 24,
- 25, 0, 0, 26, 27, 0, 0, 0, 0, 0,
- 0, 0, 0, 53, 54, 0, 55, 56, 57, 0,
- 28, 29, 0, 0, 58, 30, 31, 32, 33, 34,
- 35, 36, 0, 37, 38, 39, 40, 41, 42, 0,
- 0, 43, 0, 0, 44, 45, 46, 47, 48, 0,
- 0, 0, 49, 50, 51, 0, 18, 0, 0, 19,
- 0, 0, 20, 0, 0, 21, 22, 23, 0, 52,
+ 0, 49, 50, 51, 0, 0, 0, 0, 0, 0,
+ 18, 0, 0, 19, 0, 52, 20, 0, 0, 21,
+ 22, 23, 0, 0, 24, 25, 0, 0, 26, 27,
+ 0, 0, 0, 0, 0, 0, 53, 54, 0, 55,
+ 0, 56, 57, 0, 0, 28, 29, 0, 173, 58,
+ 30, 31, 32, 33, 34, 35, 36, 0, 37, 38,
+ 39, 40, 41, 42, 0, 0, 43, 0, 0, 44,
+ 45, 46, 47, 48, 0, 0, 0, 49, 50, 51,
+ 0, 0, 0, 0, 0, 0, 18, 0, 0, 19,
+ 0, 52, 20, 0, 0, 21, 22, 23, 0, 0,
24, 25, 0, 0, 26, 27, 0, 0, 0, 0,
- 0, 0, 0, 0, 53, 54, 0, 55, 56, 57,
- 0, 28, 29, 0, 173, 58, 30, 31, 32, 33,
+ 0, 0, 53, 54, 0, 55, 0, 56, 57, 0,
+ 0, 28, 29, 0, 279, 58, 30, 31, 32, 33,
34, 35, 36, 0, 37, 38, 39, 40, 41, 42,
0, 0, 43, 0, 0, 44, 45, 46, 47, 48,
- 0, 0, 0, 49, 50, 51, 0, 18, 0, 0,
- 19, 0, 0, 20, 0, 0, 21, 22, 23, 0,
- 52, 24, 25, 0, 0, 26, 27, 0, 0, 0,
- 0, 0, 0, 0, 0, 53, 54, 0, 55, 56,
- 57, 0, 28, 29, 0, 274, 58, 30, 31, 32,
- 33, 34, 35, 36, 0, 37, 38, 39, 40, 41,
- 42, 0, 0, 43, 0, 0, 44, 45, 46, 47,
- 48, 0, 0, 0, 49, 50, 51, 0, -311, 215,
- 0, 216, 0, 0, -311, 0, 0, -311, -311, -311,
- 0, 52, -311, -311, 0, 0, -311, -311, 0, 0,
+ 0, 0, 0, 49, 50, 51, 0, 0, 0, 0,
+ 0, 0, -316, 220, 0, 221, 0, 52, -316, 0,
+ 0, -316, -316, -316, 0, 0, -316, -316, 0, 0,
+ -316, -316, 0, 0, 0, 0, 0, 0, 53, 54,
+ 0, 55, 0, 56, 57, 0, 0, -316, -316, 0,
+ 296, 58, -316, -316, -316, -316, -316, -316, -316, 0,
+ -316, -316, -316, -316, -316, -316, 0, 0, -316, 0,
+ 0, -316, -316, -316, -316, -316, 0, 0, 0, -316,
+ -316, -316, 0, 0, 0, 0, 0, 0, 18, 0,
+ 0, 19, 0, -316, 20, 0, 0, 21, 22, 23,
+ 0, 0, 24, 25, 0, 0, 26, 27, 0, 0,
+ 0, 0, 0, 0, -316, -316, 0, -316, 0, -316,
+ -316, 0, 0, 28, 29, 0, 0, -316, 30, 31,
+ 32, 33, 34, 35, 36, 0, 37, 38, 39, 40,
+ 41, 42, 0, 0, 43, 0, 0, 44, 45, 46,
+ 47, 48, 0, 0, 0, 49, 50, 51, 0, 0,
+ 0, 0, 0, 0, 18, 0, 0, 19, 0, 52,
+ 20, 0, 0, 21, 22, 23, 0, 0, 24, 25,
+ 0, 0, 26, 27, 0, 0, 0, 0, 0, 0,
+ 53, 54, 0, 55, 0, 56, 57, 0, 0, 28,
+ 29, 0, 313, 58, 30, 31, 32, 33, 34, 35,
+ 36, 0, 37, 38, 39, 40, 41, 42, 0, 0,
+ 43, 0, 0, 44, 45, 46, 47, 48, 0, 0,
+ 0, 49, 50, 51, 0, 0, 0, 0, 0, 0,
+ 18, 0, 0, 19, 0, 52, 20, 0, 0, 21,
+ 22, 23, 0, 0, 24, 25, 0, 0, 26, 27,
0, 0, 0, 0, 0, 0, 53, 54, 0, 55,
- 56, 57, 0, -311, -311, 0, 291, 58, -311, -311,
- -311, -311, -311, -311, -311, 0, -311, -311, -311, -311,
- -311, -311, 0, 0, -311, 0, 0, -311, -311, -311,
- -311, -311, 0, 0, 0, -311, -311, -311, 0, 18,
- 0, 0, 19, 0, 0, 20, 0, 0, 21, 22,
- 23, 0, -311, 24, 25, 0, 0, 26, 27, 0,
- 0, 0, 0, 0, 0, 0, 0, -311, -311, 0,
- -311, -311, -311, 0, 28, 29, 0, 0, -311, 30,
- 31, 32, 33, 34, 35, 36, 0, 37, 38, 39,
- 40, 41, 42, 0, 0, 43, 0, 0, 44, 45,
- 46, 47, 48, 0, 0, 0, 49, 50, 51, 0,
- 18, 0, 0, 19, 0, 0, 20, 0, 0, 21,
- 22, 23, 0, 52, 24, 25, 0, 0, 26, 27,
- 0, 0, 0, 0, 0, 0, 0, 0, 53, 54,
- 0, 55, 56, 57, 0, 28, 29, 0, 306, 58,
+ 0, 56, 57, 0, 0, 28, 29, 0, 355, 58,
30, 31, 32, 33, 34, 35, 36, 0, 37, 38,
39, 40, 41, 42, 0, 0, 43, 0, 0, 44,
45, 46, 47, 48, 0, 0, 0, 49, 50, 51,
- 0, 18, 0, 0, 19, 0, 0, 20, 0, 0,
- 21, 22, 23, 0, 52, 24, 25, 0, 0, 26,
- 27, 0, 0, 0, 0, 0, 0, 0, 0, 53,
- 54, 0, 55, 56, 57, 0, 28, 29, 0, 345,
- 58, 30, 31, 32, 33, 34, 35, 36, 0, 37,
- 38, 39, 40, 41, 42, 0, 0, 43, 0, 0,
- 44, 45, 46, 47, 48, 0, 0, 0, 49, 50,
- 51, 0, 18, 0, 0, 19, 0, 0, 20, 0,
- 0, 21, 22, 23, 0, 52, 24, 25, 0, 0,
- 26, 27, 0, 0, 0, 0, 0, 0, 0, 0,
- 53, 54, 0, 55, 56, 57, 0, 28, 29, 0,
- 395, 58, 30, 31, 32, 33, 34, 35, 36, 0,
+ 0, 0, 0, 0, 0, 0, 18, 0, 0, 19,
+ 0, 52, 20, 0, 0, 21, 22, 23, 0, 0,
+ 24, 25, 0, 0, 26, 27, 0, 0, 0, 0,
+ 0, 0, 53, 54, 0, 55, 0, 56, 57, 0,
+ 0, 28, 29, 0, 405, 58, 30, 31, 32, 33,
+ 34, 35, 36, 0, 37, 38, 39, 40, 41, 42,
+ 0, 0, 43, 0, 0, 44, 45, 46, 47, 48,
+ 0, 0, 0, 49, 50, 51, 0, 0, 0, 0,
+ 0, 0, 18, 0, 0, 19, 0, 52, 20, 0,
+ 0, 21, 22, 23, 0, 0, 24, 25, 0, 0,
+ 26, 27, 0, 0, 0, 0, 0, 0, 53, 54,
+ 0, 55, 0, 56, 57, 0, 0, 28, 29, 0,
+ 437, 58, 30, 31, 32, 33, 34, 35, 36, 0,
37, 38, 39, 40, 41, 42, 0, 0, 43, 0,
0, 44, 45, 46, 47, 48, 0, 0, 0, 49,
- 50, 51, 0, 18, 0, 0, 19, 0, 0, 20,
- 0, 0, 21, 22, 23, 0, 52, 24, 25, 0,
- 0, 26, 27, 0, 0, 0, 0, 0, 0, 0,
- 0, 53, 54, 0, 55, 56, 57, 0, 28, 29,
- 0, 427, 58, 30, 31, 32, 33, 34, 35, 36,
- 0, 37, 38, 39, 40, 41, 42, 0, 0, 43,
- 0, 0, 44, 45, 46, 47, 48, 0, 0, 0,
- 49, 50, 51, 0, 18, 0, 0, 19, 0, 0,
- 20, 0, 0, 21, 22, 23, 0, 52, 24, 25,
- 0, 0, 26, 27, 0, 0, 0, 0, 0, 0,
- 0, 0, 53, 54, 0, 55, 56, 57, 0, 28,
- 29, 0, 0, 58, 30, 31, 32, 33, 34, 35,
- 36, 0, 37, 38, 39, 40, 41, 42, 0, 0,
- 43, 0, 0, 44, 45, 46, 47, 48, 0, 0,
- 0, 49, 50, 51, 0, -310, 0, 0, -310, 0,
- 0, -310, 0, 0, -310, -310, -310, 0, 52, -310,
- -310, 0, 0, -310, -310, 0, 0, 0, 0, 0,
- 0, 0, 0, 53, 54, 0, 55, 56, 57, 0,
- -310, -310, 0, 0, 268, -310, -310, -310, -310, -310,
- -310, -310, 0, -310, -310, -310, -310, -310, -310, 0,
- 0, -310, 0, 0, -310, -310, -310, -310, -310, 0,
- 0, 0, -310, -310, -310, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 188, 189, 190, -310,
- 0, 0, 0, 0, 0, 0, 0, 0, 192, 193,
- 194, 195, 196, 187, -310, -310, 0, -310, -310, -310,
- 188, 189, 190, 0, 0, -310, 0, 206, 207, 208,
- 209, 191, 192, 193, 194, 195, 196, 210, 211, 212,
- 213, 197, 198, 0, 199, 200, 201, 202, 203, 204,
- 205, 206, 207, 208, 209, 0, 0, 0, 187, 0,
- 0, 210, 211, 212, 213, 188, 189, 190, 0, 0,
- 0, 0, 0, 0, 0, 0, -312, 192, 193, 194,
- 195, 196, 0, 0, 0, 0, 197, 198, 0, 199,
- 200, 201, 202, 203, 204, 205, 206, 207, 208, 209,
- 0, 0, 0, 187, 0, 0, 210, 211, 212, 213,
- 188, 189, 190, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 192, 193, 194, 195, 196, 0, 0, 0,
- 0, 197, 198, 0, 199, 200, 201, 202, 203, 204,
- 205, 206, 207, 208, 209, 0, 0, 0, 187, 0,
- 0, 210, 211, 212, 213, 188, 189, 190, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 192, 193, 194,
- 195, 196, 0, 0, 0, 0, 0, 198, 0, 199,
- 200, 201, 202, 203, 204, 205, 206, 207, 208, 209,
- 0, 0, 0, -312, 0, 0, 210, 211, 212, 213,
- 188, 189, 190, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 192, 193, 194, 195, 196, 0, 0, 0,
- 0, 0, 0, 0, 199, 200, 201, 202, 203, 204,
- 205, 206, 207, 208, 209, 188, 189, 190, 0, 0,
- 0, 210, 211, 212, 213, 0, 0, 192, 193, 194,
- 195, 196, 0, 0, 0, 0, 0, 0, 188, 189,
- 190, 201, 202, 203, 204, 205, 206, 207, 208, 209,
- 192, 193, 194, 195, 196, 0, 210, 211, 212, 213,
- 0, 188, 189, 190, 0, 202, 203, 204, 205, 206,
- 207, 208, 209, 192, 193, 194, 195, 196, 0, 210,
- 211, 212, 213, 0, 188, 189, 190, 0, 0, 203,
- 204, 205, 206, 207, 208, 209, 192, 193, 194, 195,
- 196, 0, 210, 211, 212, 213, 0, 188, 189, 190,
- 0, 0, 0, 204, 205, 206, 207, 208, 209, 192,
- 193, 194, 195, 196, 0, 210, 211, 212, 213, 0,
- 188, 189, 190, 0, 0, 0, 0, 0, 0, 0,
- 208, 209, -312, 193, 194, 195, 196, 0, 210, 211,
- 212, 213, 188, 189, 190, 0, 0, 0, 0, 0,
- 0, 0, 0, 208, 209, 193, 194, 195, 196, 0,
- 0, 210, 211, 212, 213, 188, 189, 190, 0, 0,
- 0, 0, 0, 0, 0, 208, 209, 0, 193, 194,
- 195, 196, 0, 210, 211, 212, 213, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 209,
- 0, 0, 0, 0, 0, 0, 210, 211, 212, 213
+ 50, 51, 0, 0, 0, 0, 0, 0, 18, 0,
+ 0, 19, 0, 52, 20, 0, 0, 21, 22, 23,
+ 0, 0, 24, 25, 0, 0, 26, 27, 0, 0,
+ 0, 0, 0, 0, 53, 54, 0, 55, 0, 56,
+ 57, 0, 0, 28, 29, 0, 0, 58, 30, 31,
+ 32, 33, 34, 35, 36, 0, 37, 38, 39, 40,
+ 41, 42, 0, 0, 43, 0, 0, 44, 45, 46,
+ 47, 48, 0, 0, 0, 49, 50, 51, 0, 0,
+ 0, 0, 0, 0, -315, 0, 0, -315, 0, 52,
+ -315, 0, 0, -315, -315, -315, 0, 0, -315, -315,
+ 0, 0, -315, -315, 0, 0, 0, 0, 0, 0,
+ 53, 54, 0, 55, 0, 56, 57, 0, 0, -315,
+ -315, 0, 0, 273, -315, -315, -315, -315, -315, -315,
+ -315, 0, -315, -315, -315, -315, -315, -315, 0, 0,
+ -315, 0, 0, -315, -315, -315, -315, -315, 0, 0,
+ 0, -315, -315, -315, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, -315, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 189, 0, 0, 0, 0,
+ 0, 0, 190, 191, 192, 0, -315, -315, 0, -315,
+ 0, -315, -315, 0, 193, 0, 0, 0, 0, -315,
+ 194, 195, 196, 428, 197, 198, 199, 200, 201, 202,
+ 203, 204, 205, 206, 207, 208, 209, 210, 211, 212,
+ 0, 0, 0, 0, 213, 189, 0, 214, 215, 216,
+ 217, 218, 190, 191, 192, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, -317, 0, 0, 0, 0, 0,
+ 194, 195, 196, 0, 197, 198, 199, 200, 201, 202,
+ 203, 204, 205, 206, 207, 208, 209, 210, 211, 212,
+ 0, 0, 0, 0, 213, 189, 0, 214, 215, 216,
+ 217, 218, 190, 191, 192, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 194, 195, 196, 0, 197, 198, 199, 200, 201, 202,
+ 203, 204, 205, 206, 207, 208, 209, 210, 211, 212,
+ 0, 0, 0, 0, 213, 189, 0, 214, 215, 216,
+ 217, 218, 190, 191, 192, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 196, 0, 197, 198, 199, 200, 201, 202,
+ 203, 204, 205, 206, 207, 208, 209, 210, 211, 212,
+ 0, 0, 0, 0, 213, -317, 0, 214, 215, 216,
+ 217, 218, 190, 191, 192, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 197, 198, 199, 200, 201, 202,
+ 203, 204, 205, 206, 207, 208, 209, 210, 211, 212,
+ 190, 191, 192, 0, 213, 0, 0, 214, 215, 216,
+ 217, 218, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 200, 201, 202, 203, 204,
+ 205, 206, 207, 208, 209, 210, 211, 212, 190, 191,
+ 192, 0, 213, 0, 0, 214, 215, 216, 217, 218,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 190, 191, 192, 0, 0, 202, 203, 204, 205, 206,
+ 207, 208, 209, 210, 211, 212, 0, 0, 0, 0,
+ 213, 0, 0, 214, 215, 216, 217, 218, 203, 204,
+ 205, 206, 207, 208, 209, 210, 211, 212, 190, 191,
+ 192, 0, 213, 0, 0, 214, 215, 216, 217, 218,
+ 0, 0, 0, 0, 0, 0, 0, 190, 191, 192,
+ 0, 0, 0, 0, 0, 0, 0, 204, 205, 206,
+ 207, 208, 209, 210, 211, 212, 190, 191, 192, 0,
+ 213, 0, 0, 214, 215, 216, 217, 218, 206, 207,
+ 208, 209, 210, 211, 212, 190, 191, 192, 0, 213,
+ 0, 0, 214, 215, 216, 217, 218, 0, 0, -317,
+ 209, 210, 211, 212, 0, 0, 0, 0, 213, 0,
+ 0, 214, 215, 216, 217, 218, 0, 0, 0, 209,
+ 210, 211, 212, 0, 0, 0, 0, 213, 0, 0,
+ 214, 215, 216, 217, 218
};
static const yytype_int16 yycheck[] =
{
- 10, 142, 370, 99, 14, 27, 17, 17, 11, 19,
- 48, 280, 16, 14, 52, 18, 11, 20, 13, 22,
- 27, 24, 25, 16, 12, 166, 29, 512, 534, 14,
- 33, 34, 13, 0, 83, 19, 29, 90, 48, 14,
- 50, 360, 11, 22, 47, 48, 49, 11, 18, 10,
- 13, 370, 22, 22, 24, 25, 375, 376, 19, 120,
- 9, 14, 22, 33, 34, 118, 50, 10, 11, 14,
- 13, 120, 120, 16, 120, 14, 16, 20, 48, 49,
- 20, 24, 25, 11, 24, 13, 11, 105, 13, 50,
- 13, 92, 93, 52, 97, 55, 15, 58, 57, 80,
- 14, 31, 11, 14, 142, 22, 116, 92, 93, 131,
- 53, 41, 618, 92, 93, 120, 120, 92, 93, 112,
- 605, 109, 120, 161, 131, 120, 22, 120, 166, 22,
- 140, 141, 142, 22, 77, 84, 15, 22, 457, 92,
- 93, 103, 152, 153, 23, 148, 11, 92, 93, 11,
- 153, 13, 80, 92, 93, 80, 166, 80, 18, 11,
- 20, 11, 22, 13, 24, 25, 52, 27, 152, 153,
- 120, 132, 112, 33, 34, 92, 93, 120, 92, 93,
- 120, 92, 93, 153, 145, 120, 505, 506, 48, 49,
- 151, 152, 153, 11, 539, 13, 92, 93, 467, 92,
- 93, 16, 120, 92, 93, 20, 228, 92, 93, 24,
- 120, 222, 222, 223, 175, 176, 120, 178, 179, 180,
- 22, 228, 541, 92, 93, 37, 571, 572, 573, 22,
- 80, 14, 92, 30, 92, 93, 33, 34, 35, 36,
- 80, 244, 39, 588, 589, 55, 565, 615, 286, 80,
- 119, 520, 120, 214, 215, 216, 217, 218, 219, 220,
- 221, 606, 11, 11, 13, 13, 407, 586, 11, 614,
- 280, 131, 83, 16, 11, 285, 225, 226, 227, 16,
- 229, 230, 25, 232, 233, 234, 235, 248, 249, 250,
- 251, 252, 253, 153, 30, 92, 93, 33, 34, 35,
- 36, 285, 74, 39, 90, 119, 11, 268, 13, 52,
- 92, 93, 92, 93, 57, 52, 119, 89, 90, 22,
- 57, 13, 119, 52, 285, 92, 93, 92, 93, 115,
- 116, 117, 118, 336, 295, 112, 108, 119, 299, 119,
- 52, 105, 106, 115, 116, 117, 118, 74, 42, 371,
- 92, 93, 119, 213, 119, 57, 92, 93, 92, 93,
- 370, 120, 89, 90, 371, 15, 377, 377, 228, 407,
- 103, 104, 55, 334, 335, 92, 93, 119, 519, 31,
- 32, 342, 392, 393, 55, 119, 241, 242, 115, 116,
- 117, 118, 402, 101, 102, 405, 84, 407, 359, 360,
- 119, 12, 119, 13, 500, 501, 93, 25, 25, 370,
- 25, 507, 373, 374, 375, 376, 10, 513, 514, 429,
- 16, 25, 16, 372, 20, 25, 20, 120, 24, 378,
- 24, 18, 52, 95, 120, 29, 3, 4, 5, 6,
- 7, 8, 9, 120, 119, 429, 542, 543, 544, 12,
- 12, 400, 548, 414, 464, 12, 466, 467, 249, 250,
- 12, 252, 253, 559, 12, 119, 119, 22, 429, 16,
- 566, 567, 120, 119, 119, 119, 336, 119, 119, 52,
- 120, 519, 11, 11, 119, 84, 12, 22, 15, 119,
- 439, 120, 441, 119, 119, 591, 457, 22, 82, 120,
- 449, 22, 362, 119, 22, 119, 602, 120, 22, 519,
- 520, 371, 523, 523, 525, 525, 119, 613, 119, 43,
- 481, 532, 532, 533, 534, 74, 75, 623, 119, 21,
- 17, 23, 13, 119, 26, 81, 28, 29, 119, 88,
- 89, 90, 615, 109, 505, 506, 540, 557, 40, 373,
- 466, 43, 270, 394, 261, 47, 393, 131, 550, 108,
- 228, 53, 54, 55, 56, 57, 115, 116, 117, 118,
- 476, 371, -1, 521, -1, -1, -1, -1, -1, 540,
- 541, -1, -1, -1, -1, -1, 446, -1, -1, 599,
- -1, -1, -1, 596, -1, -1, -1, -1, -1, 610,
- 610, 550, -1, -1, 565, 615, -1, -1, 618, -1,
- -1, -1, 67, -1, -1, -1, -1, -1, -1, 74,
- 75, 76, -1, -1, -1, 586, -1, -1, -1, -1,
- 85, 86, 87, 88, 89, 90, -1, -1, -1, 131,
- 95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
- 105, 106, 107, 108, -1, -1, -1, -1, -1, -1,
- 115, 116, 117, 118, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 535, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 177, -1, 547, -1, -1,
- -1, 183, -1, -1, 186, 187, 188, 189, 190, 191,
- 192, 193, 194, 195, 196, 197, 198, 199, 200, 201,
- 202, 203, 204, 205, 206, 207, 208, 209, 0, 1,
- -1, -1, -1, -1, -1, -1, -1, -1, 10, 11,
- -1, 13, -1, -1, 16, -1, -1, 19, 20, 21,
- 22, -1, 24, 25, 26, 27, 28, 29, 30, -1,
- -1, 33, 34, 35, 36, -1, 38, 39, 40, 41,
- -1, -1, 44, 45, 46, 47, 48, 49, 50, 51,
- 52, 53, 54, 55, 56, -1, 58, 59, 60, 61,
- 62, 63, 64, 65, 66, -1, 68, 69, 70, 71,
- 72, 73, -1, -1, -1, 77, 78, 79, -1, -1,
+ 10, 27, 522, 27, 14, 19, 17, 17, 11, 19,
+ 48, 285, 380, 142, 52, 18, 16, 20, 544, 22,
+ 16, 24, 25, 11, 20, 13, 29, 99, 24, 13,
+ 33, 34, 83, 103, 104, 16, 50, 166, 48, 11,
+ 50, 13, 31, 12, 47, 48, 49, 18, 29, 20,
+ 15, 22, 41, 24, 25, 11, 27, 13, 23, 22,
+ 18, 9, 33, 34, 22, 0, 24, 25, 11, 370,
+ 11, 105, 106, 16, 125, 33, 34, 48, 49, 380,
+ 13, 22, 25, 11, 385, 386, 22, 105, 14, 16,
+ 48, 49, 55, 20, 97, 615, 80, 24, 11, 13,
+ 13, 10, 628, 125, 142, 131, 116, 131, 80, 52,
+ 19, 14, 10, 11, 57, 13, 125, 14, 16, 115,
+ 125, 92, 20, 161, 14, 125, 24, 25, 166, 125,
+ 140, 141, 142, 11, 115, 13, 84, 125, 152, 153,
+ 109, 50, 152, 153, 125, 148, 14, 80, 15, 58,
+ 153, 87, 88, 89, 90, 53, 166, 89, 90, 14,
+ 131, 87, 88, 89, 90, 14, 467, 80, 52, 11,
+ 11, 30, 13, 57, 33, 34, 35, 36, 103, 77,
+ 39, 11, 153, 13, 87, 88, 89, 90, 122, 123,
+ 87, 88, 89, 90, 11, 153, 13, 87, 88, 89,
+ 90, 125, 80, 477, 11, 11, 13, 233, 11, 233,
+ 31, 32, 52, 16, 515, 516, 227, 227, 228, 87,
+ 88, 89, 90, 132, 14, 246, 247, 125, 87, 88,
+ 89, 90, 87, 88, 89, 90, 145, 22, 87, 88,
+ 89, 90, 151, 152, 153, 125, 249, 218, 125, 52,
+ 551, 101, 102, 291, 57, 22, 530, 625, 11, 22,
+ 125, 125, 233, 22, 125, 124, 175, 176, 177, 178,
+ 22, 180, 181, 182, 575, 285, 290, 16, 125, 22,
+ 290, 20, 230, 231, 232, 24, 234, 235, 417, 237,
+ 238, 239, 240, 37, 22, 596, 14, 87, 88, 89,
+ 90, 80, 87, 88, 89, 90, 87, 88, 89, 90,
+ 219, 220, 221, 222, 223, 224, 225, 226, 55, 549,
+ 87, 88, 89, 90, 87, 88, 89, 90, 87, 88,
+ 89, 90, 80, 125, 83, 87, 88, 89, 90, 22,
+ 124, 124, 13, 346, 253, 254, 255, 256, 257, 258,
+ 52, 581, 582, 583, 52, 381, 30, 381, 115, 33,
+ 34, 35, 36, 125, 273, 39, 42, 57, 598, 599,
+ 380, 15, 84, 55, 55, 346, 387, 387, 124, 417,
+ 12, 290, 87, 88, 89, 90, 616, 87, 88, 89,
+ 90, 300, 402, 403, 624, 304, 87, 88, 89, 90,
+ 529, 372, 412, 13, 25, 415, 25, 417, 74, 25,
+ 381, 25, 10, 87, 88, 89, 90, 25, 16, 124,
+ 92, 125, 20, 18, 124, 439, 24, 52, 125, 439,
+ 125, 29, 124, 124, 382, 344, 345, 12, 510, 511,
+ 388, 12, 12, 352, 12, 517, 12, 74, 75, 124,
+ 116, 523, 524, 119, 120, 121, 122, 123, 16, 124,
+ 369, 370, 410, 125, 474, 124, 476, 477, 22, 124,
+ 124, 380, 124, 124, 383, 384, 385, 386, 125, 52,
+ 552, 553, 554, 110, 111, 456, 558, 11, 84, 116,
+ 11, 529, 119, 120, 121, 122, 123, 569, 12, 15,
+ 124, 449, 22, 451, 576, 577, 87, 88, 89, 90,
+ 125, 459, 124, 254, 255, 424, 257, 258, 124, 529,
+ 530, 22, 533, 533, 535, 535, 82, 124, 22, 601,
+ 439, 542, 542, 543, 544, 125, 124, 21, 124, 23,
+ 612, 22, 26, 124, 28, 29, 125, 22, 74, 75,
+ 76, 623, 124, 43, 17, 124, 40, 567, 467, 43,
+ 124, 633, 81, 47, 87, 88, 89, 90, 13, 53,
+ 54, 55, 56, 57, 545, 124, 87, 88, 89, 90,
+ 124, 109, 491, 109, 110, 111, 557, 74, 75, 76,
+ 116, 550, 383, 119, 120, 121, 122, 123, 625, 609,
+ 476, 124, 275, 606, 403, 266, 515, 516, 404, 620,
+ 620, 486, 560, 124, 560, 625, 531, 381, 628, 67,
+ 107, 108, 109, 110, 111, 131, 74, 75, 76, 116,
+ 233, -1, 119, 120, 121, 122, 123, -1, 86, -1,
+ -1, 550, 551, 74, 92, 93, 94, 131, 96, 97,
+ 98, 99, 100, 101, 102, 103, 104, 105, 106, 107,
+ 108, 109, 110, 111, -1, -1, 575, -1, 116, -1,
+ -1, 119, 120, 121, 122, 123, -1, -1, -1, -1,
+ 111, -1, -1, -1, -1, 116, -1, 596, 119, 120,
+ 121, 122, 123, -1, -1, 179, -1, 87, 88, 89,
+ 90, 185, -1, -1, 188, 189, 190, 191, 192, 193,
+ 194, 195, 196, 197, 198, 199, 200, 201, 202, 203,
+ 204, 205, 206, 207, 208, 209, 210, 211, 212, 213,
+ 0, 1, -1, 217, 124, 87, 88, 89, 90, -1,
+ 10, 11, -1, 13, -1, -1, 16, -1, -1, 19,
+ 20, 21, 22, -1, 24, 25, 26, 27, 28, 29,
+ 30, -1, -1, 33, 34, 35, 36, -1, 38, 39,
+ 40, 41, 124, -1, 44, 45, 46, 47, 48, 49,
+ 50, 51, 52, 53, 54, 55, 56, -1, 58, 59,
+ 60, 61, 62, 63, 64, 65, 66, -1, 68, 69,
+ 70, 71, 72, 73, -1, -1, -1, 77, 78, 79,
+ 3, 4, 5, 6, 7, 8, 9, -1, -1, -1,
+ -1, 91, 119, 120, 121, 122, 123, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 0, 1, 112, 113, -1, 115, -1, 117, 118, -1,
+ 10, 11, -1, 13, -1, 125, 16, -1, -1, 19,
+ 20, 21, 22, -1, 24, 25, 26, 27, 28, 29,
+ 30, -1, -1, 33, 34, 35, 36, -1, 38, 39,
+ 40, 41, -1, -1, 44, 45, 46, 47, 48, 49,
+ 50, 51, 52, 53, 54, 55, 56, -1, 58, 59,
+ 60, 61, 62, 63, 64, 65, 66, -1, 68, 69,
+ 70, 71, 72, 73, -1, -1, -1, 77, 78, 79,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 94, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 0, 1, -1, -1, 109, 110, -1,
- 112, 113, 114, 10, 11, -1, 13, -1, 120, 16,
- -1, -1, 19, 20, 21, 22, -1, 24, 25, 26,
- 27, 28, 29, 30, -1, -1, 33, 34, 35, 36,
- -1, 38, 39, 40, 41, -1, -1, 44, 45, 46,
- 47, 48, 49, 50, 51, 52, 53, 54, 55, 56,
- -1, 58, 59, 60, 61, 62, 63, 64, 65, 66,
- -1, 68, 69, 70, 71, 72, 73, -1, -1, -1,
- 77, 78, 79, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 94, -1, -1,
- -1, -1, -1, -1, -1, -1, 418, -1, -1, -1,
- -1, -1, 109, 110, -1, 112, 113, 114, -1, -1,
- 1, -1, -1, 120, -1, -1, -1, -1, -1, 10,
- 11, 12, 13, -1, -1, 16, -1, -1, 19, 20,
- 21, 22, -1, 24, 25, 26, 27, 28, 29, 30,
- -1, -1, 33, 34, 35, 36, 468, 38, 39, 40,
- 41, -1, -1, 44, 45, 46, 47, 48, 49, 50,
- 51, 52, 53, 54, 55, 56, -1, 58, 59, 60,
- 61, 62, 63, 64, 65, 66, -1, 68, 69, 70,
- 71, 72, 73, -1, -1, -1, 77, 78, 79, -1,
+ -1, 91, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 428, -1, -1, -1, -1, -1,
+ -1, -1, 112, 113, -1, 115, -1, 117, 118, -1,
+ -1, -1, -1, 1, -1, 125, -1, -1, -1, -1,
+ -1, -1, 10, 11, 12, 13, -1, -1, 16, -1,
+ -1, 19, 20, 21, 22, -1, 24, 25, 26, 27,
+ 28, 29, 30, -1, 478, 33, 34, 35, 36, -1,
+ 38, 39, 40, 41, -1, -1, 44, 45, 46, 47,
+ 48, 49, 50, 51, 52, 53, 54, 55, 56, -1,
+ 58, 59, 60, 61, 62, 63, 64, 65, 66, -1,
+ 68, 69, 70, 71, 72, 73, -1, -1, -1, 77,
+ 78, 79, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 91, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 94, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 1, -1, -1, 109, 110,
- -1, 112, 113, 114, 10, 11, 12, 13, -1, 120,
- 16, -1, -1, 19, 20, 21, 22, -1, 24, 25,
- 26, 27, 28, 29, 30, -1, -1, 33, 34, 35,
- 36, -1, 38, 39, 40, 41, -1, -1, 44, 45,
- 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
- 56, -1, 58, 59, 60, 61, 62, 63, 64, 65,
- 66, -1, 68, 69, 70, 71, 72, 73, -1, -1,
- -1, 77, 78, 79, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, 94, -1,
+ -1, -1, -1, 1, 112, 113, -1, 115, -1, 117,
+ 118, -1, 10, 11, 12, 13, -1, 125, 16, -1,
+ -1, 19, 20, 21, 22, -1, 24, 25, 26, 27,
+ 28, 29, 30, -1, -1, 33, 34, 35, 36, -1,
+ 38, 39, 40, 41, -1, -1, 44, 45, 46, 47,
+ 48, 49, 50, 51, 52, 53, 54, 55, 56, -1,
+ 58, 59, 60, 61, 62, 63, 64, 65, 66, -1,
+ 68, 69, 70, 71, 72, 73, -1, -1, -1, 77,
+ 78, 79, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 91, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- 1, -1, -1, 109, 110, -1, 112, 113, 114, 10,
- 11, 12, 13, -1, 120, 16, -1, -1, 19, 20,
- 21, 22, -1, 24, 25, 26, 27, 28, 29, 30,
- -1, -1, 33, 34, 35, 36, -1, 38, 39, 40,
- 41, -1, -1, 44, 45, 46, 47, 48, 49, 50,
- 51, 52, 53, 54, 55, 56, -1, 58, 59, 60,
- 61, 62, 63, 64, 65, 66, -1, 68, 69, 70,
- 71, 72, 73, -1, -1, -1, 77, 78, 79, -1,
+ -1, -1, -1, 1, 112, 113, -1, 115, -1, 117,
+ 118, -1, 10, 11, 12, 13, -1, 125, 16, -1,
+ -1, 19, 20, 21, 22, -1, 24, 25, 26, 27,
+ 28, 29, 30, -1, -1, 33, 34, 35, 36, -1,
+ 38, 39, 40, 41, -1, -1, 44, 45, 46, 47,
+ 48, 49, 50, 51, 52, 53, 54, 55, 56, -1,
+ 58, 59, 60, 61, 62, 63, 64, 65, 66, -1,
+ 68, 69, 70, 71, 72, 73, -1, -1, -1, 77,
+ 78, 79, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 91, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 94, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 1, -1, -1, 109, 110,
- -1, 112, 113, 114, 10, 11, 12, 13, -1, 120,
- 16, -1, -1, 19, 20, 21, 22, -1, 24, 25,
- 26, 27, 28, 29, 30, -1, -1, 33, 34, 35,
- 36, -1, 38, 39, 40, 41, -1, -1, 44, 45,
- 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
- 56, -1, 58, 59, 60, 61, 62, 63, 64, 65,
- 66, -1, 68, 69, 70, 71, 72, 73, -1, -1,
- -1, 77, 78, 79, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, 94, -1,
+ -1, -1, -1, 1, 112, 113, -1, 115, -1, 117,
+ 118, -1, 10, 11, 12, 13, -1, 125, 16, -1,
+ -1, 19, 20, 21, 22, -1, 24, 25, 26, 27,
+ 28, 29, 30, -1, -1, 33, 34, 35, 36, -1,
+ 38, 39, 40, 41, -1, -1, 44, 45, 46, 47,
+ 48, 49, 50, 51, 52, 53, 54, 55, 56, -1,
+ 58, 59, 60, 61, 62, 63, 64, 65, 66, -1,
+ 68, 69, 70, 71, 72, 73, -1, -1, -1, 77,
+ 78, 79, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 91, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- 1, -1, -1, 109, 110, -1, 112, 113, 114, 10,
- 11, 12, 13, -1, 120, 16, -1, -1, 19, 20,
- 21, 22, -1, 24, 25, 26, 27, 28, 29, 30,
- -1, -1, 33, 34, 35, 36, -1, 38, 39, 40,
- 41, -1, -1, 44, 45, 46, 47, 48, 49, 50,
- 51, 52, 53, 54, 55, 56, -1, 58, 59, 60,
- 61, 62, 63, 64, 65, 66, -1, 68, 69, 70,
- 71, 72, 73, -1, -1, -1, 77, 78, 79, -1,
+ -1, -1, -1, 1, 112, 113, -1, 115, -1, 117,
+ 118, -1, 10, 11, 12, 13, -1, 125, 16, -1,
+ -1, 19, 20, 21, 22, -1, 24, 25, 26, 27,
+ 28, 29, 30, -1, -1, 33, 34, 35, 36, -1,
+ 38, 39, 40, 41, -1, -1, 44, 45, 46, 47,
+ 48, 49, 50, 51, 52, 53, 54, 55, 56, -1,
+ 58, 59, 60, 61, 62, 63, 64, 65, 66, -1,
+ 68, 69, 70, 71, 72, 73, -1, -1, -1, 77,
+ 78, 79, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 91, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 94, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 1, -1, -1, 109, 110,
- -1, 112, 113, 114, 10, 11, -1, 13, -1, 120,
- 16, -1, -1, 19, 20, 21, 22, -1, 24, 25,
- 26, 27, 28, 29, 30, -1, -1, 33, 34, 35,
- 36, -1, 38, 39, 40, 41, -1, -1, 44, 45,
- 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
- 56, -1, 58, 59, 60, 61, 62, 63, 64, 65,
- 66, -1, 68, 69, 70, 71, 72, 73, -1, -1,
- -1, 77, 78, 79, -1, -1, 82, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, 94, -1,
+ -1, -1, -1, 1, 112, 113, -1, 115, -1, 117,
+ 118, -1, 10, 11, -1, 13, -1, 125, 16, -1,
+ -1, 19, 20, 21, 22, -1, 24, 25, 26, 27,
+ 28, 29, 30, -1, -1, 33, 34, 35, 36, -1,
+ 38, 39, 40, 41, -1, -1, 44, 45, 46, 47,
+ 48, 49, 50, 51, 52, 53, 54, 55, 56, -1,
+ 58, 59, 60, 61, 62, 63, 64, 65, 66, -1,
+ 68, 69, 70, 71, 72, 73, -1, -1, -1, 77,
+ 78, 79, -1, -1, 82, -1, -1, -1, -1, -1,
+ -1, -1, -1, 91, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- 1, -1, -1, 109, 110, -1, 112, 113, 114, 10,
- 11, -1, 13, -1, 120, 16, -1, -1, 19, 20,
- 21, 22, -1, 24, 25, 26, 27, 28, 29, 30,
- -1, -1, 33, 34, 35, 36, -1, 38, 39, 40,
- 41, -1, -1, 44, 45, 46, 47, 48, 49, 50,
- 51, 52, 53, 54, 55, 56, -1, 58, 59, 60,
- 61, 62, 63, 64, 65, 66, -1, 68, 69, 70,
- 71, 72, 73, -1, -1, -1, 77, 78, 79, -1,
+ -1, -1, -1, 1, 112, 113, -1, 115, -1, 117,
+ 118, -1, 10, 11, -1, 13, -1, 125, 16, -1,
+ -1, 19, 20, 21, 22, -1, 24, 25, 26, 27,
+ 28, 29, 30, -1, -1, 33, 34, 35, 36, -1,
+ 38, 39, 40, 41, -1, -1, 44, 45, 46, 47,
+ 48, 49, 50, 51, 52, 53, 54, 55, 56, -1,
+ 58, 59, 60, 61, 62, 63, 64, 65, 66, -1,
+ 68, 69, 70, 71, 72, 73, -1, -1, -1, 77,
+ 78, 79, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 91, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 94, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 1, -1, -1, 109, 110,
- -1, 112, 113, 114, 10, 11, -1, 13, -1, 120,
+ -1, -1, -1, 1, 112, 113, -1, 115, -1, 117,
+ 118, -1, 10, 11, -1, 13, -1, 125, 16, -1,
+ -1, 19, 20, 21, 22, -1, 24, 25, 26, 27,
+ 28, 29, 30, -1, -1, 33, 34, 35, 36, -1,
+ 38, 39, 40, 41, -1, -1, 44, 45, 46, 47,
+ 48, 49, 50, 51, 52, 53, 54, 55, 56, -1,
+ 58, 59, 60, 61, 62, 63, 64, -1, 66, -1,
+ 68, 69, 70, 71, 72, 73, -1, -1, -1, 77,
+ 78, 79, -1, -1, -1, 1, -1, -1, -1, -1,
+ -1, -1, -1, 91, 10, -1, -1, 13, -1, -1,
16, -1, -1, 19, 20, 21, 22, -1, 24, 25,
- 26, 27, 28, 29, 30, -1, -1, 33, 34, 35,
- 36, -1, 38, 39, 40, 41, -1, -1, 44, 45,
- 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
- 56, -1, 58, 59, 60, 61, 62, 63, 64, -1,
- 66, -1, 68, 69, 70, 71, 72, 73, -1, -1,
- -1, 77, 78, 79, 1, -1, -1, -1, -1, -1,
- -1, -1, -1, 10, -1, -1, 13, -1, 94, 16,
- -1, -1, 19, 20, 21, 22, -1, 24, 25, -1,
- -1, 28, 29, 109, 110, -1, 112, 113, 114, -1,
- -1, -1, -1, -1, 120, -1, -1, -1, 45, 46,
- -1, -1, -1, 50, 51, 52, 53, 54, 55, 56,
- -1, 58, 59, 60, 61, 62, 63, -1, -1, 66,
- -1, -1, 69, 70, 71, 72, 73, -1, -1, -1,
- 77, 78, 79, 1, -1, -1, -1, -1, -1, -1,
- -1, -1, 10, -1, -1, 13, -1, 94, 16, -1,
+ -1, -1, 28, 29, 112, 113, -1, 115, -1, 117,
+ 118, -1, -1, -1, -1, -1, -1, 125, -1, 45,
+ 46, -1, -1, -1, 50, 51, 52, 53, 54, 55,
+ 56, -1, 58, 59, 60, 61, 62, 63, -1, -1,
+ 66, -1, -1, 69, 70, 71, 72, 73, -1, -1,
+ -1, 77, 78, 79, -1, -1, -1, 1, -1, -1,
+ -1, -1, -1, -1, -1, 91, 10, -1, -1, 13,
+ -1, -1, 16, -1, -1, 19, 20, 21, -1, -1,
+ 24, 25, -1, -1, 28, 29, 112, 113, -1, 115,
+ -1, 117, 118, -1, -1, -1, -1, -1, -1, 125,
+ -1, 45, 46, -1, -1, -1, 50, 51, 52, 53,
+ 54, 55, 56, -1, 58, 59, 60, 61, 62, 63,
+ -1, -1, 66, -1, -1, 69, 70, 71, 72, 73,
+ -1, -1, -1, 77, 78, 79, -1, -1, -1, -1,
+ -1, -1, 10, 11, -1, 13, -1, 91, 16, -1,
-1, 19, 20, 21, -1, -1, 24, 25, -1, -1,
- 28, 29, 109, 110, -1, 112, 113, 114, -1, -1,
- -1, -1, -1, 120, -1, -1, -1, 45, 46, -1,
- -1, -1, 50, 51, 52, 53, 54, 55, 56, -1,
+ 28, 29, -1, -1, -1, -1, -1, -1, 112, 113,
+ -1, 115, -1, 117, 118, -1, -1, 45, 46, -1,
+ 124, 125, 50, 51, 52, 53, 54, 55, 56, 57,
58, 59, 60, 61, 62, 63, -1, -1, 66, -1,
-1, 69, 70, 71, 72, 73, -1, -1, -1, 77,
- 78, 79, -1, 10, 11, -1, 13, -1, -1, 16,
- -1, -1, 19, 20, 21, -1, 94, 24, 25, -1,
- -1, 28, 29, -1, -1, -1, -1, -1, -1, -1,
- -1, 109, 110, -1, 112, 113, 114, -1, 45, 46,
- -1, 119, 120, 50, 51, 52, 53, 54, 55, 56,
- 57, 58, 59, 60, 61, 62, 63, -1, -1, 66,
- -1, -1, 69, 70, 71, 72, 73, -1, -1, -1,
- 77, 78, 79, -1, 10, 11, -1, 13, -1, -1,
- 16, -1, -1, 19, 20, 21, -1, 94, 24, 25,
+ 78, 79, -1, -1, -1, -1, -1, -1, 10, 11,
+ -1, 13, -1, 91, 16, -1, -1, 19, 20, 21,
+ -1, -1, 24, 25, -1, -1, 28, 29, -1, -1,
+ -1, -1, -1, -1, 112, 113, -1, 115, -1, 117,
+ 118, -1, -1, 45, 46, -1, -1, 125, 50, 51,
+ 52, 53, 54, 55, 56, -1, 58, 59, 60, 61,
+ 62, 63, -1, -1, 66, -1, -1, 69, 70, 71,
+ 72, 73, -1, -1, -1, 77, 78, 79, -1, -1,
+ -1, -1, -1, -1, 10, -1, -1, 13, -1, 91,
+ 16, -1, -1, 19, 20, 21, -1, -1, 24, 25,
-1, -1, 28, 29, -1, -1, -1, -1, -1, -1,
- -1, -1, 109, 110, -1, 112, 113, 114, -1, 45,
- 46, -1, -1, 120, 50, 51, 52, 53, 54, 55,
+ 112, 113, -1, 115, -1, 117, 118, -1, -1, 45,
+ 46, -1, -1, 125, 50, 51, 52, 53, 54, 55,
56, -1, 58, 59, 60, 61, 62, 63, -1, -1,
66, -1, -1, 69, 70, 71, 72, 73, -1, -1,
- -1, 77, 78, 79, -1, 10, -1, -1, 13, -1,
- -1, 16, -1, -1, 19, 20, 21, -1, 94, 24,
- 25, -1, -1, 28, 29, -1, -1, -1, -1, -1,
- -1, -1, -1, 109, 110, -1, 112, 113, 114, -1,
- 45, 46, -1, -1, 120, 50, 51, 52, 53, 54,
- 55, 56, -1, 58, 59, 60, 61, 62, 63, -1,
- -1, 66, -1, -1, 69, 70, 71, 72, 73, -1,
- -1, -1, 77, 78, 79, -1, 10, -1, -1, 13,
- -1, -1, 16, -1, -1, 19, 20, 21, -1, 94,
+ -1, 77, 78, 79, -1, -1, -1, -1, -1, -1,
+ 10, -1, -1, 13, -1, 91, 16, -1, -1, 19,
+ 20, 21, -1, -1, 24, 25, -1, -1, 28, 29,
+ -1, -1, -1, -1, -1, -1, 112, 113, -1, 115,
+ -1, 117, 118, -1, -1, 45, 46, -1, 124, 125,
+ 50, 51, 52, 53, 54, 55, 56, -1, 58, 59,
+ 60, 61, 62, 63, -1, -1, 66, -1, -1, 69,
+ 70, 71, 72, 73, -1, -1, -1, 77, 78, 79,
+ -1, -1, -1, -1, -1, -1, 10, -1, -1, 13,
+ -1, 91, 16, -1, -1, 19, 20, 21, -1, -1,
24, 25, -1, -1, 28, 29, -1, -1, -1, -1,
- -1, -1, -1, -1, 109, 110, -1, 112, 113, 114,
- -1, 45, 46, -1, 119, 120, 50, 51, 52, 53,
+ -1, -1, 112, 113, -1, 115, -1, 117, 118, -1,
+ -1, 45, 46, -1, 124, 125, 50, 51, 52, 53,
54, 55, 56, -1, 58, 59, 60, 61, 62, 63,
-1, -1, 66, -1, -1, 69, 70, 71, 72, 73,
- -1, -1, -1, 77, 78, 79, -1, 10, -1, -1,
- 13, -1, -1, 16, -1, -1, 19, 20, 21, -1,
- 94, 24, 25, -1, -1, 28, 29, -1, -1, -1,
- -1, -1, -1, -1, -1, 109, 110, -1, 112, 113,
- 114, -1, 45, 46, -1, 119, 120, 50, 51, 52,
- 53, 54, 55, 56, -1, 58, 59, 60, 61, 62,
- 63, -1, -1, 66, -1, -1, 69, 70, 71, 72,
- 73, -1, -1, -1, 77, 78, 79, -1, 10, 11,
- -1, 13, -1, -1, 16, -1, -1, 19, 20, 21,
- -1, 94, 24, 25, -1, -1, 28, 29, -1, -1,
- -1, -1, -1, -1, -1, -1, 109, 110, -1, 112,
- 113, 114, -1, 45, 46, -1, 119, 120, 50, 51,
+ -1, -1, -1, 77, 78, 79, -1, -1, -1, -1,
+ -1, -1, 10, 11, -1, 13, -1, 91, 16, -1,
+ -1, 19, 20, 21, -1, -1, 24, 25, -1, -1,
+ 28, 29, -1, -1, -1, -1, -1, -1, 112, 113,
+ -1, 115, -1, 117, 118, -1, -1, 45, 46, -1,
+ 124, 125, 50, 51, 52, 53, 54, 55, 56, -1,
+ 58, 59, 60, 61, 62, 63, -1, -1, 66, -1,
+ -1, 69, 70, 71, 72, 73, -1, -1, -1, 77,
+ 78, 79, -1, -1, -1, -1, -1, -1, 10, -1,
+ -1, 13, -1, 91, 16, -1, -1, 19, 20, 21,
+ -1, -1, 24, 25, -1, -1, 28, 29, -1, -1,
+ -1, -1, -1, -1, 112, 113, -1, 115, -1, 117,
+ 118, -1, -1, 45, 46, -1, -1, 125, 50, 51,
52, 53, 54, 55, 56, -1, 58, 59, 60, 61,
62, 63, -1, -1, 66, -1, -1, 69, 70, 71,
- 72, 73, -1, -1, -1, 77, 78, 79, -1, 10,
- -1, -1, 13, -1, -1, 16, -1, -1, 19, 20,
- 21, -1, 94, 24, 25, -1, -1, 28, 29, -1,
- -1, -1, -1, -1, -1, -1, -1, 109, 110, -1,
- 112, 113, 114, -1, 45, 46, -1, -1, 120, 50,
- 51, 52, 53, 54, 55, 56, -1, 58, 59, 60,
- 61, 62, 63, -1, -1, 66, -1, -1, 69, 70,
- 71, 72, 73, -1, -1, -1, 77, 78, 79, -1,
- 10, -1, -1, 13, -1, -1, 16, -1, -1, 19,
- 20, 21, -1, 94, 24, 25, -1, -1, 28, 29,
- -1, -1, -1, -1, -1, -1, -1, -1, 109, 110,
- -1, 112, 113, 114, -1, 45, 46, -1, 119, 120,
+ 72, 73, -1, -1, -1, 77, 78, 79, -1, -1,
+ -1, -1, -1, -1, 10, -1, -1, 13, -1, 91,
+ 16, -1, -1, 19, 20, 21, -1, -1, 24, 25,
+ -1, -1, 28, 29, -1, -1, -1, -1, -1, -1,
+ 112, 113, -1, 115, -1, 117, 118, -1, -1, 45,
+ 46, -1, 124, 125, 50, 51, 52, 53, 54, 55,
+ 56, -1, 58, 59, 60, 61, 62, 63, -1, -1,
+ 66, -1, -1, 69, 70, 71, 72, 73, -1, -1,
+ -1, 77, 78, 79, -1, -1, -1, -1, -1, -1,
+ 10, -1, -1, 13, -1, 91, 16, -1, -1, 19,
+ 20, 21, -1, -1, 24, 25, -1, -1, 28, 29,
+ -1, -1, -1, -1, -1, -1, 112, 113, -1, 115,
+ -1, 117, 118, -1, -1, 45, 46, -1, 124, 125,
50, 51, 52, 53, 54, 55, 56, -1, 58, 59,
60, 61, 62, 63, -1, -1, 66, -1, -1, 69,
70, 71, 72, 73, -1, -1, -1, 77, 78, 79,
- -1, 10, -1, -1, 13, -1, -1, 16, -1, -1,
- 19, 20, 21, -1, 94, 24, 25, -1, -1, 28,
- 29, -1, -1, -1, -1, -1, -1, -1, -1, 109,
- 110, -1, 112, 113, 114, -1, 45, 46, -1, 119,
- 120, 50, 51, 52, 53, 54, 55, 56, -1, 58,
- 59, 60, 61, 62, 63, -1, -1, 66, -1, -1,
- 69, 70, 71, 72, 73, -1, -1, -1, 77, 78,
- 79, -1, 10, -1, -1, 13, -1, -1, 16, -1,
- -1, 19, 20, 21, -1, 94, 24, 25, -1, -1,
- 28, 29, -1, -1, -1, -1, -1, -1, -1, -1,
- 109, 110, -1, 112, 113, 114, -1, 45, 46, -1,
- 119, 120, 50, 51, 52, 53, 54, 55, 56, -1,
+ -1, -1, -1, -1, -1, -1, 10, -1, -1, 13,
+ -1, 91, 16, -1, -1, 19, 20, 21, -1, -1,
+ 24, 25, -1, -1, 28, 29, -1, -1, -1, -1,
+ -1, -1, 112, 113, -1, 115, -1, 117, 118, -1,
+ -1, 45, 46, -1, 124, 125, 50, 51, 52, 53,
+ 54, 55, 56, -1, 58, 59, 60, 61, 62, 63,
+ -1, -1, 66, -1, -1, 69, 70, 71, 72, 73,
+ -1, -1, -1, 77, 78, 79, -1, -1, -1, -1,
+ -1, -1, 10, -1, -1, 13, -1, 91, 16, -1,
+ -1, 19, 20, 21, -1, -1, 24, 25, -1, -1,
+ 28, 29, -1, -1, -1, -1, -1, -1, 112, 113,
+ -1, 115, -1, 117, 118, -1, -1, 45, 46, -1,
+ 124, 125, 50, 51, 52, 53, 54, 55, 56, -1,
58, 59, 60, 61, 62, 63, -1, -1, 66, -1,
-1, 69, 70, 71, 72, 73, -1, -1, -1, 77,
- 78, 79, -1, 10, -1, -1, 13, -1, -1, 16,
- -1, -1, 19, 20, 21, -1, 94, 24, 25, -1,
- -1, 28, 29, -1, -1, -1, -1, -1, -1, -1,
- -1, 109, 110, -1, 112, 113, 114, -1, 45, 46,
- -1, 119, 120, 50, 51, 52, 53, 54, 55, 56,
- -1, 58, 59, 60, 61, 62, 63, -1, -1, 66,
- -1, -1, 69, 70, 71, 72, 73, -1, -1, -1,
- 77, 78, 79, -1, 10, -1, -1, 13, -1, -1,
- 16, -1, -1, 19, 20, 21, -1, 94, 24, 25,
+ 78, 79, -1, -1, -1, -1, -1, -1, 10, -1,
+ -1, 13, -1, 91, 16, -1, -1, 19, 20, 21,
+ -1, -1, 24, 25, -1, -1, 28, 29, -1, -1,
+ -1, -1, -1, -1, 112, 113, -1, 115, -1, 117,
+ 118, -1, -1, 45, 46, -1, -1, 125, 50, 51,
+ 52, 53, 54, 55, 56, -1, 58, 59, 60, 61,
+ 62, 63, -1, -1, 66, -1, -1, 69, 70, 71,
+ 72, 73, -1, -1, -1, 77, 78, 79, -1, -1,
+ -1, -1, -1, -1, 10, -1, -1, 13, -1, 91,
+ 16, -1, -1, 19, 20, 21, -1, -1, 24, 25,
-1, -1, 28, 29, -1, -1, -1, -1, -1, -1,
- -1, -1, 109, 110, -1, 112, 113, 114, -1, 45,
- 46, -1, -1, 120, 50, 51, 52, 53, 54, 55,
+ 112, 113, -1, 115, -1, 117, 118, -1, -1, 45,
+ 46, -1, -1, 125, 50, 51, 52, 53, 54, 55,
56, -1, 58, 59, 60, 61, 62, 63, -1, -1,
66, -1, -1, 69, 70, 71, 72, 73, -1, -1,
- -1, 77, 78, 79, -1, 10, -1, -1, 13, -1,
- -1, 16, -1, -1, 19, 20, 21, -1, 94, 24,
- 25, -1, -1, 28, 29, -1, -1, -1, -1, -1,
- -1, -1, -1, 109, 110, -1, 112, 113, 114, -1,
- 45, 46, -1, -1, 120, 50, 51, 52, 53, 54,
- 55, 56, -1, 58, 59, 60, 61, 62, 63, -1,
- -1, 66, -1, -1, 69, 70, 71, 72, 73, -1,
- -1, -1, 77, 78, 79, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 74, 75, 76, 94,
- -1, -1, -1, -1, -1, -1, -1, -1, 86, 87,
- 88, 89, 90, 67, 109, 110, -1, 112, 113, 114,
- 74, 75, 76, -1, -1, 120, -1, 105, 106, 107,
- 108, 85, 86, 87, 88, 89, 90, 115, 116, 117,
- 118, 95, 96, -1, 98, 99, 100, 101, 102, 103,
- 104, 105, 106, 107, 108, -1, -1, -1, 67, -1,
- -1, 115, 116, 117, 118, 74, 75, 76, -1, -1,
- -1, -1, -1, -1, -1, -1, 85, 86, 87, 88,
- 89, 90, -1, -1, -1, -1, 95, 96, -1, 98,
- 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
- -1, -1, -1, 67, -1, -1, 115, 116, 117, 118,
- 74, 75, 76, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 86, 87, 88, 89, 90, -1, -1, -1,
- -1, 95, 96, -1, 98, 99, 100, 101, 102, 103,
- 104, 105, 106, 107, 108, -1, -1, -1, 67, -1,
- -1, 115, 116, 117, 118, 74, 75, 76, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 86, 87, 88,
- 89, 90, -1, -1, -1, -1, -1, 96, -1, 98,
- 99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
- -1, -1, -1, 67, -1, -1, 115, 116, 117, 118,
- 74, 75, 76, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 86, 87, 88, 89, 90, -1, -1, -1,
- -1, -1, -1, -1, 98, 99, 100, 101, 102, 103,
- 104, 105, 106, 107, 108, 74, 75, 76, -1, -1,
- -1, 115, 116, 117, 118, -1, -1, 86, 87, 88,
- 89, 90, -1, -1, -1, -1, -1, -1, 74, 75,
- 76, 100, 101, 102, 103, 104, 105, 106, 107, 108,
- 86, 87, 88, 89, 90, -1, 115, 116, 117, 118,
- -1, 74, 75, 76, -1, 101, 102, 103, 104, 105,
- 106, 107, 108, 86, 87, 88, 89, 90, -1, 115,
- 116, 117, 118, -1, 74, 75, 76, -1, -1, 102,
- 103, 104, 105, 106, 107, 108, 86, 87, 88, 89,
- 90, -1, 115, 116, 117, 118, -1, 74, 75, 76,
- -1, -1, -1, 103, 104, 105, 106, 107, 108, 86,
- 87, 88, 89, 90, -1, 115, 116, 117, 118, -1,
- 74, 75, 76, -1, -1, -1, -1, -1, -1, -1,
- 107, 108, 86, 87, 88, 89, 90, -1, 115, 116,
- 117, 118, 74, 75, 76, -1, -1, -1, -1, -1,
- -1, -1, -1, 107, 108, 87, 88, 89, 90, -1,
- -1, 115, 116, 117, 118, 74, 75, 76, -1, -1,
- -1, -1, -1, -1, -1, 107, 108, -1, 87, 88,
- 89, 90, -1, 115, 116, 117, 118, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, 108,
- -1, -1, -1, -1, -1, -1, 115, 116, 117, 118
+ -1, 77, 78, 79, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 91, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 67, -1, -1, -1, -1,
+ -1, -1, 74, 75, 76, -1, 112, 113, -1, 115,
+ -1, 117, 118, -1, 86, -1, -1, -1, -1, 125,
+ 92, 93, 94, 95, 96, 97, 98, 99, 100, 101,
+ 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
+ -1, -1, -1, -1, 116, 67, -1, 119, 120, 121,
+ 122, 123, 74, 75, 76, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 86, -1, -1, -1, -1, -1,
+ 92, 93, 94, -1, 96, 97, 98, 99, 100, 101,
+ 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
+ -1, -1, -1, -1, 116, 67, -1, 119, 120, 121,
+ 122, 123, 74, 75, 76, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 92, 93, 94, -1, 96, 97, 98, 99, 100, 101,
+ 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
+ -1, -1, -1, -1, 116, 67, -1, 119, 120, 121,
+ 122, 123, 74, 75, 76, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 94, -1, 96, 97, 98, 99, 100, 101,
+ 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
+ -1, -1, -1, -1, 116, 67, -1, 119, 120, 121,
+ 122, 123, 74, 75, 76, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 96, 97, 98, 99, 100, 101,
+ 102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
+ 74, 75, 76, -1, 116, -1, -1, 119, 120, 121,
+ 122, 123, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 99, 100, 101, 102, 103,
+ 104, 105, 106, 107, 108, 109, 110, 111, 74, 75,
+ 76, -1, 116, -1, -1, 119, 120, 121, 122, 123,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 74, 75, 76, -1, -1, 101, 102, 103, 104, 105,
+ 106, 107, 108, 109, 110, 111, -1, -1, -1, -1,
+ 116, -1, -1, 119, 120, 121, 122, 123, 102, 103,
+ 104, 105, 106, 107, 108, 109, 110, 111, 74, 75,
+ 76, -1, 116, -1, -1, 119, 120, 121, 122, 123,
+ -1, -1, -1, -1, -1, -1, -1, 74, 75, 76,
+ -1, -1, -1, -1, -1, -1, -1, 103, 104, 105,
+ 106, 107, 108, 109, 110, 111, 74, 75, 76, -1,
+ 116, -1, -1, 119, 120, 121, 122, 123, 105, 106,
+ 107, 108, 109, 110, 111, 74, 75, 76, -1, 116,
+ -1, -1, 119, 120, 121, 122, 123, -1, -1, 107,
+ 108, 109, 110, 111, -1, -1, -1, -1, 116, -1,
+ -1, 119, 120, 121, 122, 123, -1, -1, -1, 108,
+ 109, 110, 111, -1, -1, -1, -1, 116, -1, -1,
+ 119, 120, 121, 122, 123
};
/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
symbol of state STATE-NUM. */
static const yytype_uint8 yystos[] =
{
- 0, 3, 4, 5, 6, 7, 8, 9, 122, 123,
- 124, 125, 126, 127, 128, 129, 0, 133, 10, 13,
+ 0, 3, 4, 5, 6, 7, 8, 9, 127, 128,
+ 129, 130, 131, 132, 133, 134, 0, 138, 10, 13,
16, 19, 20, 21, 24, 25, 28, 29, 45, 46,
50, 51, 52, 53, 54, 55, 56, 58, 59, 60,
61, 62, 63, 66, 69, 70, 71, 72, 73, 77,
- 78, 79, 94, 109, 110, 112, 113, 114, 120, 131,
- 189, 190, 191, 194, 195, 196, 197, 198, 199, 200,
- 201, 202, 203, 205, 208, 216, 217, 218, 219, 220,
- 221, 222, 223, 224, 11, 130, 1, 22, 26, 27,
+ 78, 79, 91, 112, 113, 115, 117, 118, 125, 136,
+ 194, 195, 196, 199, 200, 201, 202, 203, 204, 205,
+ 206, 207, 208, 210, 213, 221, 222, 223, 224, 225,
+ 226, 227, 228, 229, 11, 135, 1, 22, 26, 27,
30, 33, 34, 35, 36, 38, 39, 40, 41, 44,
- 47, 48, 49, 64, 68, 130, 143, 155, 189, 65,
- 141, 142, 143, 131, 139, 183, 184, 139, 52, 57,
- 130, 217, 225, 208, 225, 203, 225, 203, 225, 225,
- 203, 112, 120, 206, 217, 218, 219, 203, 130, 203,
- 167, 167, 225, 225, 204, 13, 120, 203, 167, 203,
- 120, 120, 83, 120, 130, 203, 52, 131, 190, 207,
- 217, 225, 225, 208, 52, 57, 169, 190, 203, 203,
- 203, 203, 203, 119, 189, 92, 93, 15, 11, 13,
- 120, 105, 106, 105, 103, 104, 103, 67, 74, 75,
- 76, 85, 86, 87, 88, 89, 90, 95, 96, 98,
+ 47, 48, 49, 64, 68, 135, 148, 160, 194, 65,
+ 146, 147, 148, 136, 144, 188, 189, 144, 52, 57,
+ 135, 222, 230, 213, 230, 208, 230, 208, 230, 230,
+ 208, 115, 125, 211, 222, 223, 224, 208, 135, 208,
+ 172, 172, 230, 230, 209, 13, 125, 208, 172, 208,
+ 125, 125, 83, 125, 135, 208, 52, 136, 195, 212,
+ 222, 230, 230, 213, 52, 57, 174, 195, 208, 208,
+ 208, 208, 208, 124, 194, 87, 88, 89, 90, 15,
+ 11, 13, 125, 105, 106, 105, 103, 104, 103, 67,
+ 74, 75, 76, 86, 92, 93, 94, 96, 97, 98,
99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
- 115, 116, 117, 118, 120, 11, 13, 11, 13, 11,
- 13, 11, 133, 168, 52, 120, 120, 29, 112, 120,
- 215, 217, 120, 120, 120, 120, 130, 11, 134, 134,
- 166, 169, 169, 22, 37, 131, 157, 22, 30, 33,
- 34, 35, 36, 39, 142, 143, 141, 16, 20, 24,
- 131, 174, 175, 177, 178, 179, 180, 14, 120, 203,
- 206, 217, 218, 219, 119, 189, 80, 172, 55, 131,
- 170, 80, 131, 171, 207, 120, 83, 189, 119, 130,
- 119, 119, 189, 208, 208, 225, 190, 22, 207, 13,
- 119, 189, 189, 203, 189, 189, 119, 189, 203, 203,
- 203, 203, 203, 203, 203, 203, 203, 203, 203, 203,
- 203, 203, 203, 203, 203, 203, 203, 203, 203, 203,
- 203, 203, 203, 10, 11, 13, 16, 20, 24, 25,
- 53, 77, 120, 193, 217, 119, 189, 189, 189, 189,
- 189, 189, 189, 189, 139, 52, 131, 165, 52, 133,
- 133, 112, 133, 29, 213, 214, 216, 217, 218, 219,
- 133, 133, 120, 133, 133, 133, 133, 135, 42, 146,
- 166, 166, 130, 154, 189, 154, 154, 162, 189, 154,
- 154, 57, 173, 173, 15, 119, 189, 172, 119, 55,
- 171, 55, 133, 188, 208, 190, 14, 192, 119, 84,
- 119, 189, 12, 189, 13, 22, 14, 119, 97, 25,
- 189, 189, 25, 25, 25, 25, 25, 119, 189, 120,
- 119, 22, 14, 22, 14, 22, 14, 22, 12, 18,
- 132, 11, 22, 163, 189, 163, 120, 210, 217, 120,
- 131, 155, 160, 163, 164, 189, 213, 133, 162, 161,
- 189, 163, 163, 139, 133, 52, 144, 145, 95, 131,
- 176, 176, 178, 119, 133, 186, 120, 131, 181, 182,
- 119, 23, 131, 209, 207, 119, 14, 189, 12, 203,
- 22, 14, 119, 208, 12, 12, 12, 12, 133, 133,
- 119, 119, 211, 212, 217, 120, 133, 119, 22, 149,
- 163, 119, 119, 119, 119, 12, 120, 131, 136, 52,
- 170, 171, 203, 11, 183, 11, 189, 84, 14, 12,
- 119, 22, 151, 134, 134, 15, 119, 163, 163, 134,
- 147, 120, 119, 159, 159, 134, 134, 137, 150, 207,
- 171, 22, 187, 188, 139, 119, 139, 82, 139, 31,
- 32, 131, 156, 156, 217, 120, 119, 119, 157, 161,
- 163, 134, 134, 134, 217, 134, 22, 22, 185, 186,
- 12, 12, 131, 140, 12, 134, 120, 163, 134, 134,
- 22, 119, 157, 157, 157, 138, 43, 158, 22, 55,
- 152, 163, 119, 157, 157, 148, 134, 119, 130, 17,
- 81, 131, 153, 119, 134, 159, 157, 139, 134, 157,
- 164, 82, 156, 119, 134
+ 109, 110, 111, 116, 119, 120, 121, 122, 123, 125,
+ 11, 13, 11, 13, 11, 13, 11, 138, 173, 52,
+ 125, 125, 29, 115, 125, 220, 222, 125, 125, 125,
+ 125, 135, 11, 139, 139, 171, 174, 174, 22, 37,
+ 136, 162, 22, 30, 33, 34, 35, 36, 39, 147,
+ 148, 146, 16, 20, 24, 136, 179, 180, 182, 183,
+ 184, 185, 14, 125, 208, 211, 222, 223, 224, 124,
+ 194, 80, 177, 55, 136, 175, 80, 136, 176, 212,
+ 125, 83, 194, 124, 135, 124, 124, 194, 213, 213,
+ 230, 195, 22, 212, 13, 124, 194, 194, 194, 194,
+ 208, 194, 194, 124, 194, 208, 208, 208, 208, 208,
+ 208, 208, 208, 208, 208, 208, 208, 208, 208, 208,
+ 208, 208, 208, 208, 208, 208, 208, 208, 208, 208,
+ 208, 208, 208, 10, 11, 13, 16, 20, 24, 25,
+ 53, 77, 125, 198, 222, 124, 194, 194, 194, 194,
+ 194, 194, 194, 194, 144, 52, 136, 170, 52, 138,
+ 138, 115, 138, 29, 218, 219, 221, 222, 223, 224,
+ 138, 138, 125, 138, 138, 138, 138, 140, 42, 151,
+ 171, 171, 135, 159, 194, 159, 159, 167, 194, 159,
+ 159, 57, 178, 178, 15, 124, 194, 177, 124, 55,
+ 176, 55, 138, 193, 213, 195, 14, 197, 124, 84,
+ 124, 194, 12, 194, 13, 22, 14, 124, 95, 25,
+ 194, 194, 25, 25, 25, 25, 25, 124, 194, 125,
+ 124, 22, 14, 22, 14, 22, 14, 22, 12, 18,
+ 137, 11, 22, 168, 194, 168, 125, 215, 222, 125,
+ 136, 160, 165, 168, 169, 194, 218, 138, 167, 166,
+ 194, 168, 168, 144, 138, 52, 149, 150, 92, 136,
+ 181, 181, 183, 124, 138, 191, 125, 136, 186, 187,
+ 124, 23, 136, 214, 212, 124, 14, 194, 12, 208,
+ 22, 14, 124, 213, 12, 12, 12, 12, 138, 138,
+ 124, 124, 216, 217, 222, 125, 138, 124, 22, 154,
+ 168, 124, 124, 124, 124, 12, 125, 136, 141, 52,
+ 175, 176, 208, 11, 188, 11, 194, 84, 14, 12,
+ 124, 22, 156, 139, 139, 15, 124, 168, 168, 139,
+ 152, 125, 124, 164, 164, 139, 139, 142, 155, 212,
+ 176, 22, 192, 193, 144, 124, 144, 82, 144, 31,
+ 32, 136, 161, 161, 222, 125, 124, 124, 162, 166,
+ 168, 139, 139, 139, 222, 139, 22, 22, 190, 191,
+ 12, 12, 136, 145, 12, 139, 125, 168, 139, 139,
+ 22, 124, 162, 162, 162, 143, 43, 163, 22, 55,
+ 157, 168, 124, 162, 162, 153, 139, 124, 135, 17,
+ 81, 136, 158, 124, 139, 164, 162, 144, 139, 162,
+ 169, 82, 161, 124, 139
};
/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
static const yytype_uint8 yyr1[] =
{
- 0, 121, 123, 122, 124, 122, 125, 122, 126, 122,
- 127, 122, 128, 122, 129, 122, 130, 131, 132, 133,
- 134, 135, 136, 137, 138, 136, 139, 139, 140, 140,
- 141, 141, 142, 142, 143, 143, 144, 143, 145, 143,
- 143, 146, 143, 143, 143, 143, 143, 143, 143, 143,
- 147, 148, 143, 143, 143, 143, 149, 143, 143, 143,
- 150, 143, 143, 151, 143, 143, 143, 143, 143, 152,
- 153, 153, 154, 155, 155, 155, 155, 155, 155, 155,
- 155, 156, 156, 156, 157, 157, 158, 158, 159, 160,
- 160, 161, 161, 162, 163, 164, 165, 165, 166, 167,
- 168, 169, 169, 170, 170, 171, 171, 171, 172, 172,
- 173, 173, 174, 174, 175, 176, 176, 176, 177, 178,
- 178, 179, 179, 179, 180, 180, 181, 181, 182, 184,
- 183, 185, 185, 186, 187, 187, 188, 189, 189, 189,
- 190, 190, 190, 191, 191, 191, 191, 191, 191, 191,
- 191, 191, 192, 191, 193, 193, 194, 194, 194, 194,
- 194, 194, 194, 194, 194, 194, 194, 194, 194, 194,
- 195, 195, 195, 195, 195, 195, 195, 195, 195, 195,
- 195, 195, 195, 195, 195, 195, 195, 195, 195, 196,
- 196, 196, 196, 196, 197, 197, 198, 198, 198, 198,
+ 0, 126, 128, 127, 129, 127, 130, 127, 131, 127,
+ 132, 127, 133, 127, 134, 127, 135, 136, 137, 138,
+ 139, 140, 141, 142, 143, 141, 144, 144, 145, 145,
+ 146, 146, 147, 147, 148, 148, 149, 148, 150, 148,
+ 148, 151, 148, 148, 148, 148, 148, 148, 148, 148,
+ 152, 153, 148, 148, 148, 148, 154, 148, 148, 148,
+ 155, 148, 148, 156, 148, 148, 148, 148, 148, 157,
+ 158, 158, 159, 160, 160, 160, 160, 160, 160, 160,
+ 160, 161, 161, 161, 162, 162, 163, 163, 164, 165,
+ 165, 166, 166, 167, 168, 169, 170, 170, 171, 172,
+ 173, 174, 174, 175, 175, 176, 176, 176, 177, 177,
+ 178, 178, 179, 179, 180, 181, 181, 181, 182, 183,
+ 183, 184, 184, 184, 185, 185, 186, 186, 187, 189,
+ 188, 190, 190, 191, 192, 192, 193, 194, 194, 194,
+ 194, 194, 195, 195, 195, 196, 196, 196, 196, 196,
+ 196, 196, 196, 196, 197, 196, 198, 198, 199, 199,
+ 199, 199, 199, 199, 199, 199, 199, 199, 199, 199,
199, 199, 200, 200, 200, 200, 200, 200, 200, 200,
- 200, 201, 201, 201, 201, 202, 202, 203, 203, 203,
- 203, 203, 203, 203, 203, 203, 203, 203, 203, 203,
- 203, 203, 203, 203, 203, 203, 203, 203, 203, 203,
- 203, 203, 203, 203, 203, 203, 203, 203, 203, 203,
- 203, 203, 203, 203, 203, 203, 203, 203, 203, 203,
- 203, 203, 203, 203, 203, 204, 203, 203, 203, 203,
- 205, 205, 205, 205, 206, 206, 206, 206, 206, 207,
- 207, 208, 208, 209, 209, 210, 211, 211, 211, 212,
- 213, 213, 213, 214, 214, 215, 215, 216, 217, 218,
- 219, 220, 220, 221, 222, 222, 223, 223, 224, 224,
- 225, 225, 225, 225
+ 200, 200, 200, 200, 200, 200, 200, 200, 200, 200,
+ 200, 200, 200, 200, 201, 201, 201, 201, 201, 202,
+ 202, 203, 203, 203, 203, 204, 204, 205, 205, 205,
+ 205, 205, 205, 205, 205, 205, 206, 206, 206, 206,
+ 207, 207, 208, 208, 208, 208, 208, 208, 208, 208,
+ 208, 208, 208, 208, 208, 208, 208, 208, 208, 208,
+ 208, 208, 208, 208, 208, 208, 208, 208, 208, 208,
+ 208, 208, 208, 208, 208, 208, 208, 208, 208, 208,
+ 208, 208, 208, 208, 208, 208, 208, 208, 208, 208,
+ 209, 208, 208, 208, 208, 210, 210, 210, 210, 211,
+ 211, 211, 211, 211, 212, 212, 213, 213, 214, 214,
+ 215, 216, 216, 216, 217, 218, 218, 218, 219, 219,
+ 220, 220, 221, 222, 223, 224, 225, 225, 226, 227,
+ 227, 228, 228, 229, 229, 230, 230, 230, 230
};
/* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN. */
@@ -1150,29 +1187,29 @@ static const yytype_uint8 yyr2[] =
0, 1, 1, 1, 1, 1, 2, 1, 2, 1,
0, 1, 1, 1, 3, 1, 1, 2, 3, 1,
1, 2, 3, 1, 1, 1, 1, 1, 3, 0,
- 2, 1, 1, 4, 1, 1, 5, 3, 3, 1,
- 2, 3, 1, 3, 5, 6, 3, 3, 5, 2,
- 4, 4, 0, 5, 1, 1, 5, 4, 5, 4,
- 5, 6, 5, 4, 5, 4, 3, 6, 4, 5,
- 3, 3, 3, 3, 3, 3, 3, 3, 3, 1,
- 1, 3, 3, 3, 3, 3, 3, 3, 3, 1,
- 3, 2, 2, 3, 3, 3, 1, 3, 2, 2,
- 3, 3, 2, 2, 2, 2, 2, 2, 2, 2,
- 2, 3, 4, 5, 4, 2, 2, 1, 1, 1,
- 1, 5, 2, 1, 2, 3, 1, 2, 1, 1,
- 1, 1, 1, 1, 4, 4, 5, 5, 1, 1,
- 3, 4, 3, 4, 4, 4, 4, 4, 1, 2,
- 2, 1, 2, 2, 1, 2, 1, 2, 1, 3,
- 1, 3, 1, 3, 4, 0, 6, 1, 1, 1,
- 3, 2, 4, 3, 3, 2, 1, 1, 1, 1,
- 1, 1, 1, 1, 2, 1, 2, 3, 1, 1,
- 1, 1, 1, 1, 1, 2, 2, 2, 2, 2,
- 2, 2, 4, 2, 1, 3, 1, 3, 1, 3,
- 1, 1, 1, 1
+ 2, 1, 1, 4, 1, 1, 5, 3, 3, 3,
+ 3, 1, 2, 3, 1, 3, 5, 6, 3, 3,
+ 5, 2, 4, 4, 0, 5, 1, 1, 5, 4,
+ 5, 4, 5, 6, 5, 4, 5, 4, 3, 6,
+ 4, 5, 3, 3, 3, 3, 3, 3, 3, 3,
+ 3, 3, 1, 1, 3, 3, 3, 3, 3, 3,
+ 3, 3, 3, 3, 1, 3, 2, 2, 3, 3,
+ 3, 1, 3, 2, 2, 3, 3, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 3, 4, 5, 4,
+ 2, 2, 1, 1, 1, 1, 5, 2, 1, 2,
+ 3, 1, 2, 1, 1, 1, 1, 1, 1, 4,
+ 4, 5, 5, 1, 1, 3, 4, 3, 4, 4,
+ 4, 4, 4, 1, 2, 2, 1, 2, 2, 1,
+ 2, 1, 2, 1, 3, 1, 3, 1, 3, 4,
+ 0, 6, 1, 1, 1, 3, 2, 4, 3, 3,
+ 2, 1, 1, 1, 1, 1, 1, 1, 1, 2,
+ 1, 2, 3, 1, 1, 1, 1, 1, 1, 1,
+ 2, 2, 2, 2, 2, 2, 2, 4, 2, 1,
+ 3, 1, 3, 1, 3, 1, 1, 1, 1
};
typedef enum {
- toketype_ival, toketype_opval, toketype_pval
+ toketype_ival, toketype_opval
} toketypes;
/* type of each token/terminal */
@@ -1195,33 +1232,36 @@ static const toketypes yy_type_tab[] =
toketype_opval, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival,
toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival,
toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival,
- toketype_ival, toketype_pval, toketype_pval, toketype_pval, toketype_pval,
- toketype_pval, toketype_pval, toketype_ival, toketype_ival, toketype_ival, toketype_ival,
+ toketype_ival, toketype_ival, toketype_ival, toketype_ival,
+ toketype_ival, toketype_ival, toketype_ival,
+ toketype_ival, toketype_ival, toketype_ival, toketype_ival,
toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival,
- toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival,
toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival,
- toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival,
toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival,
- toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_opval, toketype_opval, toketype_opval,
- toketype_ival, toketype_opval, toketype_ival, toketype_opval, toketype_ival, toketype_ival,
+ toketype_ival, toketype_ival, toketype_ival, toketype_ival,
+ toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival,
+ toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival,
+ toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival,
+ toketype_ival, toketype_ival, toketype_opval, toketype_opval, toketype_opval, toketype_ival, toketype_opval,
+ toketype_ival, toketype_opval, toketype_ival, toketype_ival, toketype_opval, toketype_opval,
+ toketype_opval, toketype_opval, toketype_opval, toketype_ival, toketype_ival, toketype_ival, toketype_ival,
+ toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_opval, toketype_opval, toketype_opval,
+ toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_ival, toketype_opval, toketype_opval, toketype_opval,
+ toketype_opval, toketype_opval, toketype_opval, toketype_ival, toketype_ival,
+ toketype_ival, toketype_opval, toketype_opval, toketype_opval, toketype_opval,
+ toketype_opval, toketype_ival, toketype_opval, toketype_opval,
+ toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval,
+ toketype_opval, toketype_opval, toketype_ival, toketype_opval, toketype_opval,
toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_ival,
- toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_opval,
- toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_ival,
- toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_ival,
- toketype_ival, toketype_ival, toketype_opval, toketype_opval, toketype_opval,
- toketype_opval, toketype_opval, toketype_ival, toketype_opval,
toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval,
- toketype_opval, toketype_opval, toketype_opval, toketype_ival, toketype_opval,
- toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval,
- toketype_ival, toketype_opval, toketype_opval, toketype_opval, toketype_opval,
toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval,
- toketype_opval, toketype_ival, toketype_opval, toketype_opval, toketype_opval, toketype_opval,
+ toketype_ival, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval,
toketype_opval, toketype_opval, toketype_opval, toketype_opval,
- toketype_opval, toketype_opval, toketype_ival, toketype_opval, toketype_opval, toketype_opval, toketype_opval,
- toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval
+ toketype_opval, toketype_ival, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval,
+ toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval
};
/* Generated from:
- * d159cbbb0bfd3916708be07894588433a9434f9ade8adce98532533a9ea86747 perly.y
+ * 259112249f1ef26949a345f9826162cf9be44cb0b68fb5f98540739f649ed47a perly.y
* acf1cbfd2545faeaaa58b1cf0cf9d7f98b5be0752eb7a54528ef904a9e2e1ca7 regen_perly.pl
* ex: set ro: */
diff --git a/perly.y b/perly.y
index 79f040baca..db9b9c7746 100644
--- a/perly.y
+++ b/perly.y
@@ -91,9 +91,6 @@
%token <ival> COLONATTR FORMLBRACK FORMRBRACK
%token <ival> SUBLEXSTART SUBLEXEND
-/* Pluggable infix operators */
-%token <pval> PLUGLOWOP PLUGRELOP PLUGADDOP PLUGMULOP PLUGPOWOP PLUGHIGHOP
-
%type <ival> grammar remember mremember
%type <ival> startsub startanonsub startformsub
@@ -121,32 +118,32 @@
%nonassoc <ival> PREC_LOW
%nonassoc LOOPEX
-%nonassoc PLUGLOWOP
-%left <ival> OROP
-%left <ival> ANDOP
+%nonassoc <pval> PLUGIN_LOW_OP
+%left <ival> OROP <pval> PLUGIN_LOGICAL_OR_LOW_OP
+%left <ival> ANDOP <pval> PLUGIN_LOGICAL_AND_LOW_OP
%right <ival> NOTOP
%nonassoc LSTOP LSTOPSUB
%left PERLY_COMMA
-%right <ival> ASSIGNOP
+%right <ival> ASSIGNOP <pval> PLUGIN_ASSIGN_OP
%right <ival> PERLY_QUESTION_MARK PERLY_COLON
%nonassoc DOTDOT
-%left <ival> OROR DORDOR
-%left <ival> ANDAND
+%left <ival> OROR DORDOR <pval> PLUGIN_LOGICAL_OR_OP
+%left <ival> ANDAND <pval> PLUGIN_LOGICAL_AND_OP
%left <ival> BITOROP
%left <ival> BITANDOP
%left <ival> CHEQOP NCEQOP
%left <ival> CHRELOP NCRELOP
-%nonassoc PLUGRELOP
+%nonassoc <pval> PLUGIN_REL_OP
%nonassoc UNIOP UNIOPSUB
%nonassoc KW_REQUIRE
%left <ival> SHIFTOP
-%left ADDOP PLUGADDOP
-%left MULOP PLUGMULOP
+%left ADDOP <pval> PLUGIN_ADD_OP
+%left MULOP <pval> PLUGIN_MUL_OP
%left <ival> MATCHOP
%right <ival> PERLY_EXCLAMATION_MARK PERLY_TILDE UMINUS REFGEN
-%right POWOP PLUGPOWOP
+%right POWOP <pval> PLUGIN_POW_OP
%nonassoc <ival> PREINC PREDEC POSTINC POSTDEC POSTJOIN
-%nonassoc PLUGHIGHOP
+%nonassoc <pval> PLUGIN_HIGH_OP
%left <ival> ARROW
%nonassoc <ival> PERLY_PAREN_CLOSE
%left <ival> PERLY_PAREN_OPEN
@@ -987,8 +984,12 @@ sigsubbody: remember optsubsignature PERLY_BRACE_OPEN stmtseq PERLY_BRACE_CLOSE
/* Ordinary expressions; logical combinations */
expr : expr[lhs] ANDOP expr[rhs]
{ $$ = newLOGOP(OP_AND, 0, $lhs, $rhs); }
+ | expr[lhs] PLUGIN_LOGICAL_AND_LOW_OP[op] expr[rhs]
+ { $$ = build_infix_plugin($lhs, $rhs, $op); }
| expr[lhs] OROP[operator] expr[rhs]
{ $$ = newLOGOP($operator, 0, $lhs, $rhs); }
+ | expr[lhs] PLUGIN_LOGICAL_OR_LOW_OP[op] expr[rhs]
+ { $$ = build_infix_plugin($lhs, $rhs, $op); }
| listexpr %prec PREC_LOW
;
@@ -1121,24 +1122,26 @@ subscripted: gelem PERLY_BRACE_OPEN expr PERLY_SEMICOLON PERLY_BRACE_CLOSE
;
/* Binary operators between terms */
-termbinop: term[lhs] PLUGHIGHOP[op] term[rhs]
+termbinop: term[lhs] PLUGIN_HIGH_OP[op] term[rhs]
{ $$ = build_infix_plugin($lhs, $rhs, $op); }
| term[lhs] ASSIGNOP term[rhs] /* $x = $y, $x += $y */
{ $$ = newASSIGNOP(OPf_STACKED, $lhs, $ASSIGNOP, $rhs); }
+ | term[lhs] PLUGIN_ASSIGN_OP[op] term[rhs]
+ { $$ = build_infix_plugin($lhs, $rhs, $op); }
| term[lhs] POWOP term[rhs] /* $x ** $y */
{ $$ = newBINOP($POWOP, 0, scalar($lhs), scalar($rhs)); }
- | term[lhs] PLUGPOWOP[op] term[rhs]
+ | term[lhs] PLUGIN_POW_OP[op] term[rhs]
{ $$ = build_infix_plugin($lhs, $rhs, $op); }
| term[lhs] MULOP term[rhs] /* $x * $y, $x x $y */
{ if ($MULOP != OP_REPEAT)
scalar($lhs);
$$ = newBINOP($MULOP, 0, $lhs, scalar($rhs));
}
- | term[lhs] PLUGMULOP[op] term[rhs]
+ | term[lhs] PLUGIN_MUL_OP[op] term[rhs]
{ $$ = build_infix_plugin($lhs, $rhs, $op); }
| term[lhs] ADDOP term[rhs] /* $x + $y */
{ $$ = newBINOP($ADDOP, 0, scalar($lhs), scalar($rhs)); }
- | term[lhs] PLUGADDOP[op] term[rhs]
+ | term[lhs] PLUGIN_ADD_OP[op] term[rhs]
{ $$ = build_infix_plugin($lhs, $rhs, $op); }
| term[lhs] SHIFTOP term[rhs] /* $x >> $y, $x << $y */
{ $$ = newBINOP($SHIFTOP, 0, scalar($lhs), scalar($rhs)); }
@@ -1154,13 +1157,17 @@ termbinop: term[lhs] PLUGHIGHOP[op] term[rhs]
{ $$ = newRANGE($DOTDOT, scalar($lhs), scalar($rhs)); }
| term[lhs] ANDAND term[rhs] /* $x && $y */
{ $$ = newLOGOP(OP_AND, 0, $lhs, $rhs); }
+ | term[lhs] PLUGIN_LOGICAL_AND_OP[op] term[rhs]
+ { $$ = build_infix_plugin($lhs, $rhs, $op); }
| term[lhs] OROR term[rhs] /* $x || $y */
{ $$ = newLOGOP(OP_OR, 0, $lhs, $rhs); }
+ | term[lhs] PLUGIN_LOGICAL_OR_OP[op] term[rhs]
+ { $$ = build_infix_plugin($lhs, $rhs, $op); }
| term[lhs] DORDOR term[rhs] /* $x // $y */
{ $$ = newLOGOP(OP_DOR, 0, $lhs, $rhs); }
| term[lhs] MATCHOP term[rhs] /* $x =~ /$y/ */
{ $$ = bind_match($MATCHOP, $lhs, $rhs); }
- | term[lhs] PLUGLOWOP[op] term[rhs]
+ | term[lhs] PLUGIN_LOW_OP[op] term[rhs]
{ $$ = build_infix_plugin($lhs, $rhs, $op); }
;
@@ -1172,7 +1179,7 @@ termrelop: relopchain %prec PREC_LOW
{ yyerror("syntax error"); YYERROR; }
| termrelop CHRELOP
{ yyerror("syntax error"); YYERROR; }
- | term[lhs] PLUGRELOP[op] term[rhs]
+ | term[lhs] PLUGIN_REL_OP[op] term[rhs]
{ $$ = build_infix_plugin($lhs, $rhs, $op); }
;
diff --git a/toke.c b/toke.c
index 58ec7d1708..6a3d306e88 100644
--- a/toke.c
+++ b/toke.c
@@ -500,12 +500,17 @@ static struct debug_tokens {
DEBUG_TOKEN (IVAL, PERLY_TILDE),
DEBUG_TOKEN (OPVAL, PLUGEXPR),
DEBUG_TOKEN (OPVAL, PLUGSTMT),
- DEBUG_TOKEN (PVAL, PLUGADDOP),
- DEBUG_TOKEN (PVAL, PLUGHIGHOP),
- DEBUG_TOKEN (PVAL, PLUGLOWOP),
- DEBUG_TOKEN (PVAL, PLUGMULOP),
- DEBUG_TOKEN (PVAL, PLUGPOWOP),
- DEBUG_TOKEN (PVAL, PLUGRELOP),
+ DEBUG_TOKEN (PVAL, PLUGIN_ADD_OP),
+ DEBUG_TOKEN (PVAL, PLUGIN_ASSIGN_OP),
+ DEBUG_TOKEN (PVAL, PLUGIN_HIGH_OP),
+ DEBUG_TOKEN (PVAL, PLUGIN_LOGICAL_AND_OP),
+ DEBUG_TOKEN (PVAL, PLUGIN_LOGICAL_OR_OP),
+ DEBUG_TOKEN (PVAL, PLUGIN_LOGICAL_AND_LOW_OP),
+ DEBUG_TOKEN (PVAL, PLUGIN_LOGICAL_OR_LOW_OP),
+ DEBUG_TOKEN (PVAL, PLUGIN_LOW_OP),
+ DEBUG_TOKEN (PVAL, PLUGIN_MUL_OP),
+ DEBUG_TOKEN (PVAL, PLUGIN_POW_OP),
+ DEBUG_TOKEN (PVAL, PLUGIN_REL_OP),
DEBUG_TOKEN (OPVAL, PMFUNC),
DEBUG_TOKEN (NONE, POSTJOIN),
DEBUG_TOKEN (NONE, POSTDEC),
@@ -8727,16 +8732,26 @@ static enum yytokentype tokentype_for_plugop(struct Perl_custom_infix *def)
{
enum Perl_custom_infix_precedence prec = def->prec;
if(prec <= INFIX_PREC_LOW)
- return PLUGLOWOP;
+ return PLUGIN_LOW_OP;
+ if(prec <= INFIX_PREC_LOGICAL_OR_LOW)
+ return PLUGIN_LOGICAL_OR_LOW_OP;
+ if(prec <= INFIX_PREC_LOGICAL_AND_LOW)
+ return PLUGIN_LOGICAL_AND_LOW_OP;
+ if(prec <= INFIX_PREC_ASSIGN)
+ return PLUGIN_ASSIGN_OP;
+ if(prec <= INFIX_PREC_LOGICAL_OR)
+ return PLUGIN_LOGICAL_OR_OP;
+ if(prec <= INFIX_PREC_LOGICAL_AND)
+ return PLUGIN_LOGICAL_AND_OP;
if(prec <= INFIX_PREC_REL)
- return PLUGRELOP;
+ return PLUGIN_REL_OP;
if(prec <= INFIX_PREC_ADD)
- return PLUGADDOP;
+ return PLUGIN_ADD_OP;
if(prec <= INFIX_PREC_MUL)
- return PLUGMULOP;
+ return PLUGIN_MUL_OP;
if(prec <= INFIX_PREC_POW)
- return PLUGPOWOP;
- return PLUGHIGHOP;
+ return PLUGIN_POW_OP;
+ return PLUGIN_HIGH_OP;
}
OP *