diff options
-rw-r--r-- | perly.act | 536 | ||||
-rw-r--r-- | perly.h | 179 | ||||
-rw-r--r-- | perly.tab | 1528 | ||||
-rw-r--r-- | perly.y | 3 | ||||
-rw-r--r-- | toke.c | 3 |
5 files changed, 1133 insertions, 1116 deletions
@@ -5,7 +5,7 @@ */ case 2: -#line 135 "perly.y" +#line 136 "perly.y" { parser->expect = XSTATE; (yyval.ival) = 0; @@ -14,7 +14,7 @@ case 2: break; case 3: -#line 140 "perly.y" +#line 141 "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 146 "perly.y" +#line 147 "perly.y" { parser->expect = XTERM; (yyval.ival) = 0; @@ -33,7 +33,7 @@ case 2: break; case 5: -#line 151 "perly.y" +#line 152 "perly.y" { PL_eval_root = (ps[0].val.opval); (yyval.ival) = 0; @@ -42,7 +42,7 @@ case 2: break; case 6: -#line 156 "perly.y" +#line 157 "perly.y" { parser->expect = XBLOCK; (yyval.ival) = 0; @@ -51,7 +51,7 @@ case 2: break; case 7: -#line 161 "perly.y" +#line 162 "perly.y" { PL_pad_reset_pending = TRUE; PL_eval_root = (ps[0].val.opval); @@ -63,7 +63,7 @@ case 2: break; case 8: -#line 169 "perly.y" +#line 170 "perly.y" { parser->expect = XSTATE; (yyval.ival) = 0; @@ -72,7 +72,7 @@ case 2: break; case 9: -#line 174 "perly.y" +#line 175 "perly.y" { PL_pad_reset_pending = TRUE; PL_eval_root = (ps[0].val.opval); @@ -84,7 +84,7 @@ case 2: break; case 10: -#line 182 "perly.y" +#line 183 "perly.y" { parser->expect = XSTATE; (yyval.ival) = 0; @@ -93,7 +93,7 @@ case 2: break; case 11: -#line 187 "perly.y" +#line 188 "perly.y" { PL_pad_reset_pending = TRUE; PL_eval_root = (ps[0].val.opval); @@ -105,7 +105,7 @@ case 2: break; case 12: -#line 195 "perly.y" +#line 196 "perly.y" { parser->expect = XSTATE; (yyval.ival) = 0; @@ -114,7 +114,7 @@ case 2: break; case 13: -#line 200 "perly.y" +#line 201 "perly.y" { PL_eval_root = (ps[0].val.opval); (yyval.ival) = 0; @@ -123,7 +123,7 @@ case 2: break; case 14: -#line 205 "perly.y" +#line 206 "perly.y" { parser->expect = XSTATE; (yyval.ival) = 0; @@ -132,7 +132,7 @@ case 2: break; case 15: -#line 210 "perly.y" +#line 211 "perly.y" { PL_eval_root = (ps[0].val.opval); (yyval.ival) = 0; @@ -141,7 +141,7 @@ case 2: break; case 16: -#line 218 "perly.y" +#line 219 "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,7 +150,7 @@ case 2: break; case 17: -#line 226 "perly.y" +#line 227 "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)); @@ -159,14 +159,14 @@ case 2: break; case 18: -#line 233 "perly.y" +#line 234 "perly.y" { (yyval.ival) = block_start(TRUE); parser->parsed_sub = 0; } break; case 19: -#line 238 "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)); @@ -175,20 +175,20 @@ case 2: break; case 20: -#line 245 "perly.y" +#line 246 "perly.y" { (yyval.ival) = block_start(FALSE); parser->parsed_sub = 0; } break; case 21: -#line 251 "perly.y" +#line 252 "perly.y" { (yyval.opval) = NULL; } break; case 22: -#line 253 "perly.y" +#line 254 "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)) @@ -198,13 +198,13 @@ case 2: break; case 23: -#line 262 "perly.y" +#line 263 "perly.y" { (yyval.opval) = NULL; } break; case 24: -#line 264 "perly.y" +#line 265 "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)) @@ -214,7 +214,7 @@ case 2: break; case 25: -#line 273 "perly.y" +#line 274 "perly.y" { (yyval.opval) = (ps[0].val.opval) ? newSTATEOP(0, NULL, (ps[0].val.opval)) : NULL; } @@ -222,13 +222,13 @@ case 2: break; case 26: -#line 277 "perly.y" +#line 278 "perly.y" { (yyval.opval) = (ps[0].val.opval); } break; case 27: -#line 281 "perly.y" +#line 282 "perly.y" { SV *label = cSVOPx_sv((ps[-1].val.opval)); (yyval.opval) = newSTATEOP(SvFLAGS(label) & SVf_UTF8, @@ -239,7 +239,7 @@ case 2: break; case 28: -#line 288 "perly.y" +#line 289 "perly.y" { SV *label = cSVOPx_sv((ps[-1].val.opval)); (yyval.opval) = newSTATEOP(SvFLAGS(label) & SVf_UTF8, @@ -250,13 +250,13 @@ case 2: break; case 29: -#line 298 "perly.y" +#line 299 "perly.y" { (yyval.opval) = (ps[0].val.opval); } break; case 30: -#line 300 "perly.y" +#line 301 "perly.y" { CV *fmtcv = PL_compcv; newFORM((ps[-2].val.ival), (ps[-1].val.opval), (ps[0].val.opval)); @@ -270,7 +270,7 @@ case 2: break; case 31: -#line 312 "perly.y" +#line 313 "perly.y" { init_named_cv(PL_compcv, (ps[-1].val.opval)); parser->in_my = 0; @@ -280,7 +280,7 @@ case 2: break; case 32: -#line 318 "perly.y" +#line 319 "perly.y" { SvREFCNT_inc_simple_void(PL_compcv); (ps[-5].val.opval)->op_type == OP_CONST @@ -295,7 +295,7 @@ case 2: break; case 33: -#line 333 "perly.y" +#line 334 "perly.y" { init_named_cv(PL_compcv, (ps[-1].val.opval)); parser->in_my = 0; @@ -305,7 +305,7 @@ case 2: break; case 34: -#line 339 "perly.y" +#line 340 "perly.y" { SvREFCNT_inc_simple_void(PL_compcv); (ps[-4].val.opval)->op_type == OP_CONST @@ -320,7 +320,7 @@ case 2: break; case 35: -#line 350 "perly.y" +#line 351 "perly.y" { package((ps[-1].val.opval)); if ((ps[-2].val.opval)) @@ -331,13 +331,13 @@ case 2: break; case 36: -#line 357 "perly.y" +#line 358 "perly.y" { CvSPECIAL_on(PL_compcv); /* It's a BEGIN {} */ } break; case 37: -#line 359 "perly.y" +#line 360 "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)); @@ -348,7 +348,7 @@ case 2: break; case 38: -#line 366 "perly.y" +#line 367 "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))); @@ -358,7 +358,7 @@ case 2: break; case 39: -#line 372 "perly.y" +#line 373 "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)))); @@ -368,7 +368,7 @@ case 2: break; case 40: -#line 378 "perly.y" +#line 379 "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); @@ -377,19 +377,19 @@ case 2: break; case 41: -#line 383 "perly.y" +#line 384 "perly.y" { (yyval.opval) = block_end((ps[-3].val.ival), newWHENOP((ps[-2].val.opval), op_scope((ps[0].val.opval)))); } break; case 42: -#line 385 "perly.y" +#line 386 "perly.y" { (yyval.opval) = newWHENOP(0, op_scope((ps[0].val.opval))); } break; case 43: -#line 387 "perly.y" +#line 388 "perly.y" { (yyval.opval) = block_end((ps[-5].val.ival), newWHILEOP(0, 1, NULL, @@ -400,7 +400,7 @@ case 2: break; case 44: -#line 394 "perly.y" +#line 395 "perly.y" { (yyval.opval) = block_end((ps[-5].val.ival), newWHILEOP(0, 1, NULL, @@ -411,19 +411,19 @@ case 2: break; case 45: -#line 401 "perly.y" +#line 402 "perly.y" { parser->expect = XTERM; } break; case 46: -#line 403 "perly.y" +#line 404 "perly.y" { parser->expect = XTERM; } break; case 47: -#line 406 "perly.y" +#line 407 "perly.y" { OP *initop = (ps[-9].val.opval); OP *forop = newWHILEOP(0, 1, NULL, @@ -442,7 +442,7 @@ case 2: break; case 48: -#line 421 "perly.y" +#line 422 "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); @@ -451,7 +451,7 @@ case 2: break; case 49: -#line 426 "perly.y" +#line 427 "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))); @@ -461,13 +461,13 @@ case 2: break; case 50: -#line 432 "perly.y" +#line 433 "perly.y" { parser->in_my = 0; (yyval.opval) = my((ps[0].val.opval)); } break; case 51: -#line 434 "perly.y" +#line 435 "perly.y" { (yyval.opval) = block_end( (ps[-7].val.ival), @@ -484,7 +484,7 @@ case 2: break; case 52: -#line 447 "perly.y" +#line 448 "perly.y" { (yyval.opval) = block_end((ps[-4].val.ival), newFOROP( 0, op_lvalue(newUNOP(OP_REFGEN, 0, @@ -496,7 +496,7 @@ case 2: break; case 53: -#line 455 "perly.y" +#line 456 "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))); @@ -506,7 +506,7 @@ case 2: break; case 54: -#line 461 "perly.y" +#line 462 "perly.y" { /* a block is a loop that happens once */ (yyval.opval) = newWHILEOP(0, 1, NULL, @@ -516,7 +516,7 @@ case 2: break; case 55: -#line 467 "perly.y" +#line 468 "perly.y" { package((ps[-2].val.opval)); if ((ps[-3].val.opval)) { @@ -527,7 +527,7 @@ case 2: break; case 56: -#line 474 "perly.y" +#line 475 "perly.y" { /* a block is a loop that happens once */ (yyval.opval) = newWHILEOP(0, 1, NULL, @@ -539,7 +539,7 @@ case 2: break; case 57: -#line 482 "perly.y" +#line 483 "perly.y" { (yyval.opval) = (ps[-1].val.opval); } @@ -547,7 +547,7 @@ case 2: break; case 58: -#line 486 "perly.y" +#line 487 "perly.y" { (yyval.opval) = newLISTOP(OP_DIE, 0, newOP(OP_PUSHMARK, 0), newSVOP(OP_CONST, 0, newSVpvs("Unimplemented"))); @@ -556,7 +556,7 @@ case 2: break; case 59: -#line 491 "perly.y" +#line 492 "perly.y" { (yyval.opval) = NULL; parser->copline = NOLINE; @@ -565,7 +565,7 @@ case 2: break; case 60: -#line 499 "perly.y" +#line 500 "perly.y" { OP *list; if ((ps[0].val.opval)) { OP *term = (ps[0].val.opval); @@ -584,74 +584,74 @@ case 2: break; case 61: -#line 516 "perly.y" +#line 517 "perly.y" { (yyval.opval) = NULL; } break; case 62: -#line 518 "perly.y" +#line 519 "perly.y" { (yyval.opval) = op_unscope((ps[-1].val.opval)); } break; case 64: -#line 526 "perly.y" +#line 527 "perly.y" { (yyval.opval) = NULL; } break; case 65: -#line 528 "perly.y" +#line 529 "perly.y" { (yyval.opval) = (ps[0].val.opval); } break; case 66: -#line 530 "perly.y" +#line 531 "perly.y" { (yyval.opval) = newLOGOP(OP_AND, 0, (ps[0].val.opval), (ps[-2].val.opval)); } break; case 67: -#line 532 "perly.y" +#line 533 "perly.y" { (yyval.opval) = newLOGOP(OP_OR, 0, (ps[0].val.opval), (ps[-2].val.opval)); } break; case 68: -#line 534 "perly.y" +#line 535 "perly.y" { (yyval.opval) = newLOOPOP(OPf_PARENS, 1, scalar((ps[0].val.opval)), (ps[-2].val.opval)); } break; case 69: -#line 536 "perly.y" +#line 537 "perly.y" { (yyval.opval) = newLOOPOP(OPf_PARENS, 1, (ps[0].val.opval), (ps[-2].val.opval)); } break; case 70: -#line 538 "perly.y" +#line 539 "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 71: -#line 541 "perly.y" +#line 542 "perly.y" { (yyval.opval) = newWHENOP((ps[0].val.opval), op_scope((ps[-2].val.opval))); } break; case 72: -#line 546 "perly.y" +#line 547 "perly.y" { (yyval.opval) = NULL; } break; case 73: -#line 548 "perly.y" +#line 549 "perly.y" { ((ps[0].val.opval))->op_flags |= OPf_PARENS; (yyval.opval) = op_scope((ps[0].val.opval)); @@ -660,7 +660,7 @@ case 2: break; case 74: -#line 553 "perly.y" +#line 554 "perly.y" { parser->copline = (line_t)(ps[-5].val.ival); (yyval.opval) = newCONDOP(0, newSTATEOP(OPf_SPECIAL,NULL,(ps[-3].val.opval)), @@ -671,19 +671,19 @@ case 2: break; case 75: -#line 563 "perly.y" +#line 564 "perly.y" { (yyval.opval) = NULL; } break; case 76: -#line 565 "perly.y" +#line 566 "perly.y" { (yyval.opval) = op_scope((ps[0].val.opval)); } break; case 77: -#line 570 "perly.y" +#line 571 "perly.y" { (yyval.ival) = (PL_min_intro_pending && PL_max_intro_pending >= PL_min_intro_pending); intro_my(); } @@ -691,13 +691,13 @@ case 2: break; case 78: -#line 576 "perly.y" +#line 577 "perly.y" { (yyval.opval) = NULL; } break; case 80: -#line 582 "perly.y" +#line 583 "perly.y" { YYSTYPE tmplval; (void)scan_num("1", &tmplval); (yyval.opval) = tmplval.opval; } @@ -705,118 +705,118 @@ case 2: break; case 82: -#line 590 "perly.y" +#line 591 "perly.y" { (yyval.opval) = invert(scalar((ps[0].val.opval))); } break; case 83: -#line 595 "perly.y" +#line 596 "perly.y" { (yyval.opval) = (ps[0].val.opval); intro_my(); } break; case 84: -#line 599 "perly.y" +#line 600 "perly.y" { (yyval.opval) = (ps[0].val.opval); intro_my(); } break; case 85: -#line 602 "perly.y" +#line 603 "perly.y" { (yyval.opval) = (ps[0].val.opval); } break; case 86: -#line 603 "perly.y" +#line 604 "perly.y" { (yyval.opval) = NULL; } break; case 87: -#line 607 "perly.y" +#line 608 "perly.y" { (yyval.ival) = start_subparse(FALSE, 0); SAVEFREESV(PL_compcv); } break; case 88: -#line 613 "perly.y" +#line 614 "perly.y" { (yyval.ival) = start_subparse(FALSE, CVf_ANON); SAVEFREESV(PL_compcv); } break; case 89: -#line 618 "perly.y" +#line 619 "perly.y" { (yyval.ival) = start_subparse(TRUE, 0); SAVEFREESV(PL_compcv); } break; case 92: -#line 629 "perly.y" +#line 630 "perly.y" { (yyval.opval) = NULL; } break; case 94: -#line 635 "perly.y" +#line 636 "perly.y" { (yyval.opval) = NULL; } break; case 95: -#line 637 "perly.y" +#line 638 "perly.y" { (yyval.opval) = (ps[0].val.opval); } break; case 96: -#line 639 "perly.y" +#line 640 "perly.y" { (yyval.opval) = NULL; } break; case 97: -#line 644 "perly.y" +#line 645 "perly.y" { (yyval.opval) = (ps[0].val.opval); } break; case 98: -#line 646 "perly.y" +#line 647 "perly.y" { (yyval.opval) = NULL; } break; case 99: -#line 657 "perly.y" +#line 658 "perly.y" { parser->in_my = 0; (yyval.opval) = NULL; } break; case 100: -#line 659 "perly.y" +#line 660 "perly.y" { parser->in_my = 0; (yyval.opval) = (ps[0].val.opval); } break; case 101: -#line 664 "perly.y" +#line 665 "perly.y" { (yyval.ival) = '@'; } break; case 102: -#line 666 "perly.y" +#line 667 "perly.y" { (yyval.ival) = '%'; } break; case 103: -#line 670 "perly.y" +#line 671 "perly.y" { I32 sigil = (ps[-2].val.ival); OP *var = (ps[-1].val.opval); @@ -836,25 +836,25 @@ case 2: break; case 104: -#line 689 "perly.y" +#line 690 "perly.y" { (yyval.opval) = NULL; } break; case 105: -#line 691 "perly.y" +#line 692 "perly.y" { (yyval.opval) = newOP(OP_NULL, 0); } break; case 106: -#line 693 "perly.y" +#line 694 "perly.y" { (yyval.opval) = (ps[0].val.opval); } break; case 107: -#line 699 "perly.y" +#line 700 "perly.y" { OP *var = (ps[-1].val.opval); OP *defexpr = (ps[0].val.opval); @@ -919,25 +919,25 @@ case 2: break; case 108: -#line 764 "perly.y" +#line 765 "perly.y" { parser->in_my = KEY_sigvar; (yyval.opval) = (ps[0].val.opval); } break; case 109: -#line 766 "perly.y" +#line 767 "perly.y" { parser->in_my = KEY_sigvar; (yyval.opval) = (ps[0].val.opval); } break; case 110: -#line 772 "perly.y" +#line 773 "perly.y" { (yyval.opval) = (ps[-1].val.opval); } break; case 111: -#line 774 "perly.y" +#line 775 "perly.y" { (yyval.opval) = op_append_list(OP_LINESEQ, (ps[-2].val.opval), (ps[0].val.opval)); } @@ -945,43 +945,43 @@ case 2: break; case 112: -#line 778 "perly.y" +#line 779 "perly.y" { (yyval.opval) = (ps[0].val.opval); } break; case 113: -#line 783 "perly.y" +#line 784 "perly.y" { (yyval.opval) = NULL; } break; case 114: -#line 785 "perly.y" +#line 786 "perly.y" { (yyval.opval) = (ps[0].val.opval); } break; case 115: -#line 789 "perly.y" +#line 790 "perly.y" { (yyval.opval) = NULL; } break; case 116: -#line 791 "perly.y" +#line 792 "perly.y" { (yyval.opval) = (ps[0].val.opval); } break; case 117: -#line 795 "perly.y" +#line 796 "perly.y" { (yyval.opval) = (ps[-1].val.opval); } break; case 118: -#line 798 "perly.y" +#line 799 "perly.y" { ENTER; SAVEIV(parser->sig_elems); @@ -996,7 +996,7 @@ case 2: break; case 119: -#line 809 "perly.y" +#line 810 "perly.y" { OP *sigops = (ps[0].val.opval); struct op_argcheck_aux *aux; @@ -1055,19 +1055,19 @@ case 2: break; case 120: -#line 866 "perly.y" +#line 867 "perly.y" { (yyval.opval) = (ps[0].val.opval); } break; case 121: -#line 867 "perly.y" +#line 868 "perly.y" { (yyval.opval) = NULL; } break; case 122: -#line 873 "perly.y" +#line 874 "perly.y" { if (parser->copline > (line_t)(ps[-2].val.ival)) parser->copline = (line_t)(ps[-2].val.ival); @@ -1077,19 +1077,19 @@ case 2: break; case 123: -#line 883 "perly.y" +#line 884 "perly.y" { (yyval.opval) = (ps[0].val.opval); } break; case 124: -#line 884 "perly.y" +#line 885 "perly.y" { (yyval.opval) = NULL; } break; case 125: -#line 888 "perly.y" +#line 889 "perly.y" { if (parser->copline > (line_t)(ps[-2].val.ival)) parser->copline = (line_t)(ps[-2].val.ival); @@ -1100,31 +1100,31 @@ case 2: break; case 126: -#line 899 "perly.y" +#line 900 "perly.y" { (yyval.opval) = newLOGOP(OP_AND, 0, (ps[-2].val.opval), (ps[0].val.opval)); } break; case 127: -#line 901 "perly.y" +#line 902 "perly.y" { (yyval.opval) = newLOGOP((ps[-1].val.ival), 0, (ps[-2].val.opval), (ps[0].val.opval)); } break; case 128: -#line 903 "perly.y" +#line 904 "perly.y" { (yyval.opval) = newLOGOP(OP_DOR, 0, (ps[-2].val.opval), (ps[0].val.opval)); } break; case 130: -#line 909 "perly.y" +#line 910 "perly.y" { (yyval.opval) = (ps[-1].val.opval); } break; case 131: -#line 911 "perly.y" +#line 912 "perly.y" { OP* term = (ps[0].val.opval); (yyval.opval) = op_append_elem(OP_LIST, (ps[-2].val.opval), term); @@ -1133,7 +1133,7 @@ case 2: break; case 133: -#line 920 "perly.y" +#line 921 "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)) ); } @@ -1141,7 +1141,7 @@ case 2: break; case 134: -#line 924 "perly.y" +#line 925 "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)) ); } @@ -1149,7 +1149,7 @@ case 2: break; case 135: -#line 928 "perly.y" +#line 929 "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)), @@ -1159,7 +1159,7 @@ case 2: break; case 136: -#line 934 "perly.y" +#line 935 "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)))); @@ -1168,7 +1168,7 @@ case 2: break; case 137: -#line 939 "perly.y" +#line 940 "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)), @@ -1178,7 +1178,7 @@ case 2: break; case 138: -#line 945 "perly.y" +#line 946 "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)), @@ -1188,32 +1188,32 @@ case 2: break; case 139: -#line 951 "perly.y" +#line 952 "perly.y" { (yyval.opval) = op_convert_list((ps[-1].val.ival), 0, (ps[0].val.opval)); } break; case 140: -#line 953 "perly.y" +#line 954 "perly.y" { (yyval.opval) = op_convert_list((ps[-3].val.ival), 0, (ps[-1].val.opval)); } break; case 141: -#line 955 "perly.y" +#line 956 "perly.y" { (yyval.opval) = op_convert_list((ps[-3].val.ival), 0, (ps[-1].val.opval)); } break; case 142: -#line 957 "perly.y" +#line 958 "perly.y" { SvREFCNT_inc_simple_void(PL_compcv); (yyval.opval) = newANONATTRSUB((ps[-1].val.ival), 0, NULL, (ps[0].val.opval)); } break; case 143: -#line 960 "perly.y" +#line 961 "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))); @@ -1222,20 +1222,20 @@ case 2: break; case 146: -#line 975 "perly.y" +#line 976 "perly.y" { (yyval.opval) = newBINOP(OP_GELEM, 0, (ps[-4].val.opval), scalar((ps[-2].val.opval))); } break; case 147: -#line 977 "perly.y" +#line 978 "perly.y" { (yyval.opval) = newBINOP(OP_AELEM, 0, oopsAV((ps[-3].val.opval)), scalar((ps[-1].val.opval))); } break; case 148: -#line 980 "perly.y" +#line 981 "perly.y" { (yyval.opval) = newBINOP(OP_AELEM, 0, ref(newAVREF((ps[-4].val.opval)),OP_RV2AV), scalar((ps[-1].val.opval))); @@ -1244,7 +1244,7 @@ case 2: break; case 149: -#line 985 "perly.y" +#line 986 "perly.y" { (yyval.opval) = newBINOP(OP_AELEM, 0, ref(newAVREF((ps[-3].val.opval)),OP_RV2AV), scalar((ps[-1].val.opval))); @@ -1253,14 +1253,14 @@ case 2: break; case 150: -#line 990 "perly.y" +#line 991 "perly.y" { (yyval.opval) = newBINOP(OP_HELEM, 0, oopsHV((ps[-4].val.opval)), jmaybe((ps[-2].val.opval))); } break; case 151: -#line 993 "perly.y" +#line 994 "perly.y" { (yyval.opval) = newBINOP(OP_HELEM, 0, ref(newHVREF((ps[-5].val.opval)),OP_RV2HV), jmaybe((ps[-2].val.opval))); } @@ -1268,7 +1268,7 @@ case 2: break; case 152: -#line 997 "perly.y" +#line 998 "perly.y" { (yyval.opval) = newBINOP(OP_HELEM, 0, ref(newHVREF((ps[-4].val.opval)),OP_RV2HV), jmaybe((ps[-2].val.opval))); } @@ -1276,7 +1276,7 @@ case 2: break; case 153: -#line 1001 "perly.y" +#line 1002 "perly.y" { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED, newCVREF(0, scalar((ps[-3].val.opval)))); if (parser->expect == XBLOCK) @@ -1286,7 +1286,7 @@ case 2: break; case 154: -#line 1007 "perly.y" +#line 1008 "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))))); @@ -1297,7 +1297,7 @@ case 2: break; case 155: -#line 1015 "perly.y" +#line 1016 "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))))); @@ -1308,7 +1308,7 @@ case 2: break; case 156: -#line 1022 "perly.y" +#line 1023 "perly.y" { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED, newCVREF(0, scalar((ps[-2].val.opval)))); if (parser->expect == XBLOCK) @@ -1318,37 +1318,37 @@ case 2: break; case 157: -#line 1028 "perly.y" +#line 1029 "perly.y" { (yyval.opval) = newSLICEOP(0, (ps[-1].val.opval), (ps[-4].val.opval)); } break; case 158: -#line 1030 "perly.y" +#line 1031 "perly.y" { (yyval.opval) = newSLICEOP(0, (ps[-1].val.opval), (ps[-3].val.opval)); } break; case 159: -#line 1032 "perly.y" +#line 1033 "perly.y" { (yyval.opval) = newSLICEOP(0, (ps[-1].val.opval), NULL); } break; case 160: -#line 1037 "perly.y" +#line 1038 "perly.y" { (yyval.opval) = newASSIGNOP(OPf_STACKED, (ps[-2].val.opval), (ps[-1].val.ival), (ps[0].val.opval)); } break; case 161: -#line 1039 "perly.y" +#line 1040 "perly.y" { (yyval.opval) = newBINOP((ps[-1].val.ival), 0, scalar((ps[-2].val.opval)), scalar((ps[0].val.opval))); } break; case 162: -#line 1041 "perly.y" +#line 1042 "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))); @@ -1357,183 +1357,183 @@ case 2: break; case 163: -#line 1046 "perly.y" +#line 1047 "perly.y" { (yyval.opval) = newBINOP((ps[-1].val.ival), 0, scalar((ps[-2].val.opval)), scalar((ps[0].val.opval))); } break; case 164: -#line 1048 "perly.y" +#line 1049 "perly.y" { (yyval.opval) = newBINOP((ps[-1].val.ival), 0, scalar((ps[-2].val.opval)), scalar((ps[0].val.opval))); } break; case 165: -#line 1050 "perly.y" +#line 1051 "perly.y" { (yyval.opval) = (ps[0].val.opval); } break; case 166: -#line 1052 "perly.y" +#line 1053 "perly.y" { (yyval.opval) = (ps[0].val.opval); } break; case 167: -#line 1054 "perly.y" +#line 1055 "perly.y" { (yyval.opval) = newBINOP((ps[-1].val.ival), 0, scalar((ps[-2].val.opval)), scalar((ps[0].val.opval))); } break; case 168: -#line 1056 "perly.y" +#line 1057 "perly.y" { (yyval.opval) = newBINOP((ps[-1].val.ival), 0, scalar((ps[-2].val.opval)), scalar((ps[0].val.opval))); } break; case 169: -#line 1058 "perly.y" +#line 1059 "perly.y" { (yyval.opval) = newRANGE((ps[-1].val.ival), scalar((ps[-2].val.opval)), scalar((ps[0].val.opval))); } break; case 170: -#line 1060 "perly.y" +#line 1061 "perly.y" { (yyval.opval) = newLOGOP(OP_AND, 0, (ps[-2].val.opval), (ps[0].val.opval)); } break; case 171: -#line 1062 "perly.y" +#line 1063 "perly.y" { (yyval.opval) = newLOGOP(OP_OR, 0, (ps[-2].val.opval), (ps[0].val.opval)); } break; case 172: -#line 1064 "perly.y" +#line 1065 "perly.y" { (yyval.opval) = newLOGOP(OP_DOR, 0, (ps[-2].val.opval), (ps[0].val.opval)); } break; case 173: -#line 1066 "perly.y" +#line 1067 "perly.y" { (yyval.opval) = bind_match((ps[-1].val.ival), (ps[-2].val.opval), (ps[0].val.opval)); } break; case 174: -#line 1070 "perly.y" +#line 1071 "perly.y" { (yyval.opval) = cmpchain_finish((ps[0].val.opval)); } break; case 175: -#line 1072 "perly.y" +#line 1073 "perly.y" { (yyval.opval) = newBINOP((ps[-1].val.ival), 0, scalar((ps[-2].val.opval)), scalar((ps[0].val.opval))); } break; case 176: -#line 1074 "perly.y" +#line 1075 "perly.y" { yyerror("syntax error"); YYERROR; } break; case 177: -#line 1076 "perly.y" +#line 1077 "perly.y" { yyerror("syntax error"); YYERROR; } break; case 178: -#line 1080 "perly.y" +#line 1081 "perly.y" { (yyval.opval) = cmpchain_start((ps[-1].val.ival), (ps[-2].val.opval), (ps[0].val.opval)); } break; case 179: -#line 1082 "perly.y" +#line 1083 "perly.y" { (yyval.opval) = cmpchain_extend((ps[-1].val.ival), (ps[-2].val.opval), (ps[0].val.opval)); } break; case 180: -#line 1086 "perly.y" +#line 1087 "perly.y" { (yyval.opval) = cmpchain_finish((ps[0].val.opval)); } break; case 181: -#line 1088 "perly.y" +#line 1089 "perly.y" { (yyval.opval) = newBINOP((ps[-1].val.ival), 0, scalar((ps[-2].val.opval)), scalar((ps[0].val.opval))); } break; case 182: -#line 1090 "perly.y" +#line 1091 "perly.y" { yyerror("syntax error"); YYERROR; } break; case 183: -#line 1092 "perly.y" +#line 1093 "perly.y" { yyerror("syntax error"); YYERROR; } break; case 184: -#line 1096 "perly.y" +#line 1097 "perly.y" { (yyval.opval) = cmpchain_start((ps[-1].val.ival), (ps[-2].val.opval), (ps[0].val.opval)); } break; case 185: -#line 1098 "perly.y" +#line 1099 "perly.y" { (yyval.opval) = cmpchain_extend((ps[-1].val.ival), (ps[-2].val.opval), (ps[0].val.opval)); } break; case 186: -#line 1103 "perly.y" +#line 1104 "perly.y" { (yyval.opval) = newUNOP(OP_NEGATE, 0, scalar((ps[0].val.opval))); } break; case 187: -#line 1105 "perly.y" +#line 1106 "perly.y" { (yyval.opval) = (ps[0].val.opval); } break; case 188: -#line 1108 "perly.y" +#line 1109 "perly.y" { (yyval.opval) = newUNOP(OP_NOT, 0, scalar((ps[0].val.opval))); } break; case 189: -#line 1110 "perly.y" +#line 1111 "perly.y" { (yyval.opval) = newUNOP((ps[-1].val.ival), 0, scalar((ps[0].val.opval))); } break; case 190: -#line 1112 "perly.y" +#line 1113 "perly.y" { (yyval.opval) = newUNOP(OP_POSTINC, 0, op_lvalue(scalar((ps[-1].val.opval)), OP_POSTINC)); } break; case 191: -#line 1115 "perly.y" +#line 1116 "perly.y" { (yyval.opval) = newUNOP(OP_POSTDEC, 0, op_lvalue(scalar((ps[-1].val.opval)), OP_POSTDEC));} break; case 192: -#line 1118 "perly.y" +#line 1119 "perly.y" { (yyval.opval) = op_convert_list(OP_JOIN, 0, op_append_elem( OP_LIST, @@ -1548,155 +1548,155 @@ case 2: break; case 193: -#line 1129 "perly.y" +#line 1130 "perly.y" { (yyval.opval) = newUNOP(OP_PREINC, 0, op_lvalue(scalar((ps[0].val.opval)), OP_PREINC)); } break; case 194: -#line 1132 "perly.y" +#line 1133 "perly.y" { (yyval.opval) = newUNOP(OP_PREDEC, 0, op_lvalue(scalar((ps[0].val.opval)), OP_PREDEC)); } break; case 195: -#line 1139 "perly.y" +#line 1140 "perly.y" { (yyval.opval) = newANONLIST((ps[-1].val.opval)); } break; case 196: -#line 1141 "perly.y" +#line 1142 "perly.y" { (yyval.opval) = newANONLIST(NULL);} break; case 197: -#line 1143 "perly.y" +#line 1144 "perly.y" { (yyval.opval) = newANONHASH((ps[-2].val.opval)); } break; case 198: -#line 1145 "perly.y" +#line 1146 "perly.y" { (yyval.opval) = newANONHASH(NULL); } break; case 199: -#line 1147 "perly.y" +#line 1148 "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 200: -#line 1150 "perly.y" +#line 1151 "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 201: -#line 1156 "perly.y" +#line 1157 "perly.y" { (yyval.opval) = dofile((ps[0].val.opval), (ps[-1].val.ival));} break; case 202: -#line 1158 "perly.y" +#line 1159 "perly.y" { (yyval.opval) = newUNOP(OP_NULL, OPf_SPECIAL, op_scope((ps[0].val.opval)));} break; case 207: -#line 1166 "perly.y" +#line 1167 "perly.y" { (yyval.opval) = newCONDOP(0, (ps[-4].val.opval), (ps[-2].val.opval), (ps[0].val.opval)); } break; case 208: -#line 1168 "perly.y" +#line 1169 "perly.y" { (yyval.opval) = newUNOP(OP_REFGEN, 0, (ps[0].val.opval)); } break; case 209: -#line 1170 "perly.y" +#line 1171 "perly.y" { (yyval.opval) = newUNOP(OP_REFGEN, 0, localize((ps[0].val.opval),1)); } break; case 210: -#line 1172 "perly.y" +#line 1173 "perly.y" { (yyval.opval) = (ps[0].val.opval); } break; case 211: -#line 1174 "perly.y" +#line 1175 "perly.y" { (yyval.opval) = localize((ps[0].val.opval),0); } break; case 212: -#line 1176 "perly.y" +#line 1177 "perly.y" { (yyval.opval) = sawparens((ps[-1].val.opval)); } break; case 213: -#line 1178 "perly.y" +#line 1179 "perly.y" { (yyval.opval) = (ps[0].val.opval); } break; case 214: -#line 1180 "perly.y" +#line 1181 "perly.y" { (yyval.opval) = sawparens(newNULLLIST()); } break; case 215: -#line 1182 "perly.y" +#line 1183 "perly.y" { (yyval.opval) = (ps[0].val.opval); } break; case 216: -#line 1184 "perly.y" +#line 1185 "perly.y" { (yyval.opval) = (ps[0].val.opval); } break; case 217: -#line 1186 "perly.y" +#line 1187 "perly.y" { (yyval.opval) = (ps[0].val.opval); } break; case 218: -#line 1188 "perly.y" +#line 1189 "perly.y" { (yyval.opval) = (ps[0].val.opval); } break; case 219: -#line 1190 "perly.y" +#line 1191 "perly.y" { (yyval.opval) = newUNOP(OP_AV2ARYLEN, 0, ref((ps[0].val.opval), OP_AV2ARYLEN));} break; case 220: -#line 1192 "perly.y" +#line 1193 "perly.y" { (yyval.opval) = (ps[0].val.opval); } break; case 221: -#line 1194 "perly.y" +#line 1195 "perly.y" { (yyval.opval) = op_prepend_elem(OP_ASLICE, newOP(OP_PUSHMARK, 0), newLISTOP(OP_ASLICE, 0, @@ -1710,7 +1710,7 @@ case 2: break; case 222: -#line 1204 "perly.y" +#line 1205 "perly.y" { (yyval.opval) = op_prepend_elem(OP_KVASLICE, newOP(OP_PUSHMARK, 0), newLISTOP(OP_KVASLICE, 0, @@ -1724,7 +1724,7 @@ case 2: break; case 223: -#line 1214 "perly.y" +#line 1215 "perly.y" { (yyval.opval) = op_prepend_elem(OP_HSLICE, newOP(OP_PUSHMARK, 0), newLISTOP(OP_HSLICE, 0, @@ -1738,7 +1738,7 @@ case 2: break; case 224: -#line 1224 "perly.y" +#line 1225 "perly.y" { (yyval.opval) = op_prepend_elem(OP_KVHSLICE, newOP(OP_PUSHMARK, 0), newLISTOP(OP_KVHSLICE, 0, @@ -1752,26 +1752,26 @@ case 2: break; case 225: -#line 1234 "perly.y" +#line 1235 "perly.y" { (yyval.opval) = (ps[0].val.opval); } break; case 226: -#line 1236 "perly.y" +#line 1237 "perly.y" { (yyval.opval) = newUNOP(OP_ENTERSUB, 0, scalar((ps[0].val.opval))); } break; case 227: -#line 1238 "perly.y" +#line 1239 "perly.y" { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar((ps[-2].val.opval))); } break; case 228: -#line 1241 "perly.y" +#line 1242 "perly.y" { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED, op_append_elem(OP_LIST, (ps[-1].val.opval), scalar((ps[-3].val.opval)))); @@ -1780,7 +1780,7 @@ case 2: break; case 229: -#line 1246 "perly.y" +#line 1247 "perly.y" { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED, op_append_elem(OP_LIST, (ps[0].val.opval), scalar((ps[-1].val.opval)))); } @@ -1788,130 +1788,130 @@ case 2: break; case 230: -#line 1250 "perly.y" +#line 1251 "perly.y" { (yyval.opval) = newSVREF((ps[-3].val.opval)); } break; case 231: -#line 1252 "perly.y" +#line 1253 "perly.y" { (yyval.opval) = newAVREF((ps[-3].val.opval)); } break; case 232: -#line 1254 "perly.y" +#line 1255 "perly.y" { (yyval.opval) = newHVREF((ps[-3].val.opval)); } break; case 233: -#line 1256 "perly.y" +#line 1257 "perly.y" { (yyval.opval) = newUNOP(OP_ENTERSUB, 0, scalar(newCVREF((ps[-1].val.ival),(ps[-3].val.opval)))); } break; case 234: -#line 1259 "perly.y" +#line 1260 "perly.y" { (yyval.opval) = newGVREF(0,(ps[-3].val.opval)); } break; case 235: -#line 1261 "perly.y" +#line 1262 "perly.y" { (yyval.opval) = newOP((ps[0].val.ival), OPf_SPECIAL); PL_hints |= HINT_BLOCK_SCOPE; } break; case 236: -#line 1264 "perly.y" +#line 1265 "perly.y" { (yyval.opval) = newLOOPEX((ps[-1].val.ival),(ps[0].val.opval)); } break; case 237: -#line 1266 "perly.y" +#line 1267 "perly.y" { (yyval.opval) = newUNOP(OP_NOT, 0, scalar((ps[0].val.opval))); } break; case 238: -#line 1268 "perly.y" +#line 1269 "perly.y" { (yyval.opval) = newOP((ps[0].val.ival), 0); } break; case 239: -#line 1270 "perly.y" +#line 1271 "perly.y" { (yyval.opval) = newUNOP((ps[-1].val.ival), 0, (ps[0].val.opval)); } break; case 240: -#line 1272 "perly.y" +#line 1273 "perly.y" { (yyval.opval) = newUNOP((ps[-1].val.ival), 0, (ps[0].val.opval)); } break; case 241: -#line 1274 "perly.y" +#line 1275 "perly.y" { (yyval.opval) = newOP(OP_REQUIRE, (ps[0].val.ival) ? OPf_SPECIAL : 0); } break; case 242: -#line 1276 "perly.y" +#line 1277 "perly.y" { (yyval.opval) = newUNOP(OP_REQUIRE, (ps[-1].val.ival) ? OPf_SPECIAL : 0, (ps[0].val.opval)); } break; case 243: -#line 1278 "perly.y" +#line 1279 "perly.y" { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar((ps[0].val.opval))); } break; case 244: -#line 1280 "perly.y" +#line 1281 "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 245: -#line 1283 "perly.y" +#line 1284 "perly.y" { (yyval.opval) = newOP((ps[0].val.ival), 0); } break; case 246: -#line 1285 "perly.y" +#line 1286 "perly.y" { (yyval.opval) = newOP((ps[-2].val.ival), 0);} break; case 247: -#line 1287 "perly.y" +#line 1288 "perly.y" { (yyval.opval) = (ps[0].val.opval); } break; case 248: -#line 1289 "perly.y" +#line 1290 "perly.y" { (yyval.opval) = (ps[-2].val.opval); } break; case 249: -#line 1291 "perly.y" +#line 1292 "perly.y" { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar((ps[0].val.opval))); } break; case 250: -#line 1293 "perly.y" +#line 1294 "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); } @@ -1919,13 +1919,13 @@ case 2: break; case 251: -#line 1297 "perly.y" +#line 1298 "perly.y" { (yyval.opval) = newUNOP((ps[-3].val.ival), 0, (ps[-1].val.opval)); } break; case 252: -#line 1299 "perly.y" +#line 1300 "perly.y" { if ( (ps[0].val.opval)->op_type != OP_TRANS && (ps[0].val.opval)->op_type != OP_TRANSR @@ -1940,115 +1940,115 @@ case 2: break; case 253: -#line 1310 "perly.y" +#line 1311 "perly.y" { (yyval.opval) = pmruntime((ps[-5].val.opval), (ps[-2].val.opval), (ps[-1].val.opval), 1, (ps[-4].val.ival)); } break; case 257: -#line 1318 "perly.y" +#line 1319 "perly.y" { (yyval.opval) = my_attrs((ps[-1].val.opval),(ps[0].val.opval)); } break; case 258: -#line 1320 "perly.y" +#line 1321 "perly.y" { (yyval.opval) = localize((ps[0].val.opval),1); } break; case 259: -#line 1322 "perly.y" +#line 1323 "perly.y" { (yyval.opval) = newUNOP(OP_REFGEN, 0, my_attrs((ps[-1].val.opval),(ps[0].val.opval))); } break; case 260: -#line 1327 "perly.y" +#line 1328 "perly.y" { (yyval.opval) = sawparens((ps[-1].val.opval)); } break; case 261: -#line 1329 "perly.y" +#line 1330 "perly.y" { (yyval.opval) = sawparens(newNULLLIST()); } break; case 262: -#line 1332 "perly.y" +#line 1333 "perly.y" { (yyval.opval) = (ps[0].val.opval); } break; case 263: -#line 1334 "perly.y" +#line 1335 "perly.y" { (yyval.opval) = (ps[0].val.opval); } break; case 264: -#line 1336 "perly.y" +#line 1337 "perly.y" { (yyval.opval) = (ps[0].val.opval); } break; case 265: -#line 1341 "perly.y" +#line 1342 "perly.y" { (yyval.opval) = NULL; } break; case 266: -#line 1343 "perly.y" +#line 1344 "perly.y" { (yyval.opval) = (ps[0].val.opval); } break; case 267: -#line 1347 "perly.y" +#line 1348 "perly.y" { (yyval.opval) = NULL; } break; case 268: -#line 1349 "perly.y" +#line 1350 "perly.y" { (yyval.opval) = (ps[0].val.opval); } break; case 269: -#line 1353 "perly.y" +#line 1354 "perly.y" { (yyval.opval) = NULL; } break; case 270: -#line 1355 "perly.y" +#line 1356 "perly.y" { (yyval.opval) = (ps[0].val.opval); } break; case 271: -#line 1361 "perly.y" +#line 1362 "perly.y" { parser->in_my = 0; (yyval.opval) = my((ps[0].val.opval)); } break; case 279: -#line 1378 "perly.y" +#line 1379 "perly.y" { (yyval.opval) = newCVREF((ps[-1].val.ival),(ps[0].val.opval)); } break; case 280: -#line 1382 "perly.y" +#line 1383 "perly.y" { (yyval.opval) = newSVREF((ps[0].val.opval)); } break; case 281: -#line 1386 "perly.y" +#line 1387 "perly.y" { (yyval.opval) = newAVREF((ps[0].val.opval)); if ((yyval.opval)) (yyval.opval)->op_private |= (ps[-1].val.ival); } @@ -2056,7 +2056,7 @@ case 2: break; case 282: -#line 1392 "perly.y" +#line 1393 "perly.y" { (yyval.opval) = newHVREF((ps[0].val.opval)); if ((yyval.opval)) (yyval.opval)->op_private |= (ps[-1].val.ival); } @@ -2064,61 +2064,61 @@ case 2: break; case 283: -#line 1398 "perly.y" +#line 1399 "perly.y" { (yyval.opval) = newAVREF((ps[0].val.opval)); } break; case 284: -#line 1400 "perly.y" +#line 1401 "perly.y" { (yyval.opval) = newAVREF((ps[-3].val.opval)); } break; case 285: -#line 1404 "perly.y" +#line 1405 "perly.y" { (yyval.opval) = newGVREF(0,(ps[0].val.opval)); } break; case 287: -#line 1409 "perly.y" +#line 1410 "perly.y" { (yyval.opval) = newAVREF((ps[-2].val.opval)); } break; case 289: -#line 1414 "perly.y" +#line 1415 "perly.y" { (yyval.opval) = newHVREF((ps[-2].val.opval)); } break; case 291: -#line 1419 "perly.y" +#line 1420 "perly.y" { (yyval.opval) = newGVREF(0,(ps[-2].val.opval)); } break; case 292: -#line 1424 "perly.y" +#line 1425 "perly.y" { (yyval.opval) = scalar((ps[0].val.opval)); } break; case 293: -#line 1426 "perly.y" +#line 1427 "perly.y" { (yyval.opval) = scalar((ps[0].val.opval)); } break; case 294: -#line 1428 "perly.y" +#line 1429 "perly.y" { (yyval.opval) = op_scope((ps[0].val.opval)); } break; case 295: -#line 1431 "perly.y" +#line 1432 "perly.y" { (yyval.opval) = (ps[0].val.opval); } break; @@ -2130,6 +2130,6 @@ case 2: /* Generated from: - * d555d290bc7bf474791b8fd853e445933bb75ff8ff453aca9f7ff3b05b614566 perly.y + * 7422f72c5dfff4e2c8cd87e56299968b4a39681f2cc3b81767c0ccd50b4e2054 perly.y * acf1cbfd2545faeaaa58b1cf0cf9d7f98b5be0752eb7a54528ef904a9e2e1ca7 regen_perly.pl * ex: set ro: */ @@ -75,94 +75,95 @@ extern int yydebug; PERLY_PERCENT_SIGN = 274, PERLY_PLUS = 275, PERLY_SEMICOLON = 276, - PERLY_SNAIL = 277, - PERLY_STAR = 278, - BAREWORD = 279, - METHOD = 280, - FUNCMETH = 281, - THING = 282, - PMFUNC = 283, - PRIVATEREF = 284, - QWLIST = 285, - FUNC0OP = 286, - FUNC0SUB = 287, - UNIOPSUB = 288, - LSTOPSUB = 289, - PLUGEXPR = 290, - PLUGSTMT = 291, - LABEL = 292, - FORMAT = 293, - SUB = 294, - SIGSUB = 295, - ANONSUB = 296, - ANON_SIGSUB = 297, - PACKAGE = 298, - USE = 299, - WHILE = 300, - UNTIL = 301, - IF = 302, - UNLESS = 303, - ELSE = 304, - ELSIF = 305, - CONTINUE = 306, - FOR = 307, - GIVEN = 308, - WHEN = 309, - DEFAULT = 310, - LOOPEX = 311, - DOTDOT = 312, - YADAYADA = 313, - FUNC0 = 314, - FUNC1 = 315, - FUNC = 316, - UNIOP = 317, - LSTOP = 318, - MULOP = 319, - ADDOP = 320, - DOLSHARP = 321, - DO = 322, - HASHBRACK = 323, - NOAMP = 324, - LOCAL = 325, - MY = 326, - REQUIRE = 327, - COLONATTR = 328, - FORMLBRACK = 329, - FORMRBRACK = 330, - SUBLEXSTART = 331, - SUBLEXEND = 332, - PREC_LOW = 333, - OROP = 334, - DOROP = 335, - ANDOP = 336, - NOTOP = 337, - ASSIGNOP = 338, - PERLY_QUESTION_MARK = 339, - PERLY_COLON = 340, - OROR = 341, - DORDOR = 342, - ANDAND = 343, - BITOROP = 344, - BITANDOP = 345, - CHEQOP = 346, - NCEQOP = 347, - CHRELOP = 348, - NCRELOP = 349, - SHIFTOP = 350, - MATCHOP = 351, - PERLY_EXCLAMATION_MARK = 352, - PERLY_TILDE = 353, - UMINUS = 354, - REFGEN = 355, - POWOP = 356, - PREINC = 357, - PREDEC = 358, - POSTINC = 359, - POSTDEC = 360, - POSTJOIN = 361, - ARROW = 362, - PERLY_PAREN_CLOSE = 363, - PERLY_PAREN_OPEN = 364 + PERLY_SLASH = 277, + PERLY_SNAIL = 278, + PERLY_STAR = 279, + BAREWORD = 280, + METHOD = 281, + FUNCMETH = 282, + THING = 283, + PMFUNC = 284, + PRIVATEREF = 285, + QWLIST = 286, + FUNC0OP = 287, + FUNC0SUB = 288, + UNIOPSUB = 289, + LSTOPSUB = 290, + PLUGEXPR = 291, + PLUGSTMT = 292, + LABEL = 293, + FORMAT = 294, + SUB = 295, + SIGSUB = 296, + ANONSUB = 297, + ANON_SIGSUB = 298, + PACKAGE = 299, + USE = 300, + WHILE = 301, + UNTIL = 302, + IF = 303, + UNLESS = 304, + ELSE = 305, + ELSIF = 306, + CONTINUE = 307, + FOR = 308, + GIVEN = 309, + WHEN = 310, + DEFAULT = 311, + LOOPEX = 312, + DOTDOT = 313, + YADAYADA = 314, + FUNC0 = 315, + FUNC1 = 316, + FUNC = 317, + UNIOP = 318, + LSTOP = 319, + MULOP = 320, + ADDOP = 321, + DOLSHARP = 322, + DO = 323, + HASHBRACK = 324, + NOAMP = 325, + LOCAL = 326, + MY = 327, + REQUIRE = 328, + COLONATTR = 329, + FORMLBRACK = 330, + FORMRBRACK = 331, + SUBLEXSTART = 332, + SUBLEXEND = 333, + PREC_LOW = 334, + OROP = 335, + DOROP = 336, + ANDOP = 337, + NOTOP = 338, + ASSIGNOP = 339, + PERLY_QUESTION_MARK = 340, + PERLY_COLON = 341, + OROR = 342, + DORDOR = 343, + ANDAND = 344, + BITOROP = 345, + BITANDOP = 346, + CHEQOP = 347, + NCEQOP = 348, + CHRELOP = 349, + NCRELOP = 350, + SHIFTOP = 351, + MATCHOP = 352, + PERLY_EXCLAMATION_MARK = 353, + PERLY_TILDE = 354, + UMINUS = 355, + REFGEN = 356, + POWOP = 357, + PREINC = 358, + PREDEC = 359, + POSTINC = 360, + POSTDEC = 361, + POSTJOIN = 362, + ARROW = 363, + PERLY_PAREN_CLOSE = 364, + PERLY_PAREN_OPEN = 365 }; #endif @@ -214,6 +215,6 @@ int yyparse (void); /* Generated from: - * d555d290bc7bf474791b8fd853e445933bb75ff8ff453aca9f7ff3b05b614566 perly.y + * 7422f72c5dfff4e2c8cd87e56299968b4a39681f2cc3b81767c0ccd50b4e2054 perly.y * acf1cbfd2545faeaaa58b1cf0cf9d7f98b5be0752eb7a54528ef904a9e2e1ca7 regen_perly.pl * ex: set ro: */ @@ -6,7 +6,7 @@ #define YYFINAL 16 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 3189 +#define YYLAST 3258 /* YYNTOKENS -- Number of terminals. */ #define YYNTOKENS 112 @@ -18,7 +18,7 @@ #define YYNSTATES 573 #define YYUNDEFTOK 2 -#define YYMAXUTOK 364 +#define YYMAXUTOK 365 /* YYTRANSLATE(TOKEN-NUM) -- Symbol number corresponding to TOKEN-NUM @@ -33,8 +33,8 @@ static const yytype_int8 yytranslate[] = 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 110, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 111, 2, 2, + 2, 2, 2, 2, 2, 2, 111, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, @@ -66,43 +66,43 @@ static const yytype_int8 yytranslate[] = 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109 + 105, 106, 107, 108, 109, 110 }; #if YYDEBUG /* YYRLINE[YYN] -- Source line where rule number YYN was defined. */ static const yytype_int16 yyrline[] = { - 0, 135, 135, 134, 146, 145, 156, 155, 169, 168, - 182, 181, 195, 194, 205, 204, 217, 225, 233, 237, - 245, 251, 252, 262, 263, 272, 276, 280, 287, 297, - 299, 312, 309, 333, 328, 349, 357, 356, 365, 371, - 377, 382, 384, 386, 393, 401, 403, 400, 420, 425, - 432, 431, 446, 454, 460, 467, 466, 481, 485, 490, - 498, 516, 517, 521, 525, 527, 529, 531, 533, 535, - 537, 540, 546, 547, 552, 563, 564, 570, 576, 577, - 582, 585, 589, 594, 598, 602, 603, 607, 613, 618, - 623, 624, 629, 630, 635, 636, 638, 643, 645, 657, - 658, 663, 665, 669, 689, 690, 692, 698, 763, 765, - 771, 773, 777, 783, 784, 789, 790, 794, 798, 798, - 866, 867, 872, 883, 884, 887, 898, 900, 902, 904, - 908, 910, 915, 919, 923, 927, 933, 938, 944, 950, - 952, 954, 957, 956, 967, 968, 972, 976, 979, 984, - 989, 992, 996, 1000, 1006, 1014, 1021, 1027, 1029, 1031, - 1036, 1038, 1040, 1045, 1047, 1049, 1051, 1053, 1055, 1057, - 1059, 1061, 1063, 1065, 1069, 1071, 1073, 1075, 1079, 1081, - 1085, 1087, 1089, 1091, 1095, 1097, 1102, 1104, 1107, 1109, - 1111, 1114, 1117, 1128, 1131, 1138, 1140, 1142, 1144, 1146, - 1149, 1155, 1157, 1161, 1162, 1163, 1164, 1165, 1167, 1169, - 1171, 1173, 1175, 1177, 1179, 1181, 1183, 1185, 1187, 1189, - 1191, 1193, 1203, 1213, 1223, 1233, 1235, 1237, 1240, 1245, - 1249, 1251, 1253, 1255, 1258, 1260, 1263, 1265, 1267, 1269, - 1271, 1273, 1275, 1277, 1279, 1282, 1284, 1286, 1288, 1290, - 1292, 1296, 1299, 1298, 1311, 1312, 1313, 1317, 1319, 1321, - 1326, 1328, 1331, 1333, 1335, 1340, 1342, 1347, 1348, 1353, - 1354, 1360, 1364, 1365, 1366, 1369, 1370, 1373, 1374, 1377, - 1381, 1385, 1391, 1397, 1399, 1403, 1407, 1408, 1412, 1413, - 1417, 1418, 1423, 1425, 1427, 1430 + 0, 136, 136, 135, 147, 146, 157, 156, 170, 169, + 183, 182, 196, 195, 206, 205, 218, 226, 234, 238, + 246, 252, 253, 263, 264, 273, 277, 281, 288, 298, + 300, 313, 310, 334, 329, 350, 358, 357, 366, 372, + 378, 383, 385, 387, 394, 402, 404, 401, 421, 426, + 433, 432, 447, 455, 461, 468, 467, 482, 486, 491, + 499, 517, 518, 522, 526, 528, 530, 532, 534, 536, + 538, 541, 547, 548, 553, 564, 565, 571, 577, 578, + 583, 586, 590, 595, 599, 603, 604, 608, 614, 619, + 624, 625, 630, 631, 636, 637, 639, 644, 646, 658, + 659, 664, 666, 670, 690, 691, 693, 699, 764, 766, + 772, 774, 778, 784, 785, 790, 791, 795, 799, 799, + 867, 868, 873, 884, 885, 888, 899, 901, 903, 905, + 909, 911, 916, 920, 924, 928, 934, 939, 945, 951, + 953, 955, 958, 957, 968, 969, 973, 977, 980, 985, + 990, 993, 997, 1001, 1007, 1015, 1022, 1028, 1030, 1032, + 1037, 1039, 1041, 1046, 1048, 1050, 1052, 1054, 1056, 1058, + 1060, 1062, 1064, 1066, 1070, 1072, 1074, 1076, 1080, 1082, + 1086, 1088, 1090, 1092, 1096, 1098, 1103, 1105, 1108, 1110, + 1112, 1115, 1118, 1129, 1132, 1139, 1141, 1143, 1145, 1147, + 1150, 1156, 1158, 1162, 1163, 1164, 1165, 1166, 1168, 1170, + 1172, 1174, 1176, 1178, 1180, 1182, 1184, 1186, 1188, 1190, + 1192, 1194, 1204, 1214, 1224, 1234, 1236, 1238, 1241, 1246, + 1250, 1252, 1254, 1256, 1259, 1261, 1264, 1266, 1268, 1270, + 1272, 1274, 1276, 1278, 1280, 1283, 1285, 1287, 1289, 1291, + 1293, 1297, 1300, 1299, 1312, 1313, 1314, 1318, 1320, 1322, + 1327, 1329, 1332, 1334, 1336, 1341, 1343, 1348, 1349, 1354, + 1355, 1361, 1365, 1366, 1367, 1370, 1371, 1374, 1375, 1378, + 1382, 1386, 1392, 1398, 1400, 1404, 1408, 1409, 1413, 1414, + 1418, 1419, 1424, 1426, 1428, 1431 }; #endif @@ -116,21 +116,21 @@ static const char *const yytname[] = "PERLY_AMPERSAND", "PERLY_BRACE_OPEN", "PERLY_BRACE_CLOSE", "PERLY_BRACKET_OPEN", "PERLY_BRACKET_CLOSE", "PERLY_COMMA", "PERLY_DOT", "PERLY_EQUAL_SIGN", "PERLY_MINUS", "PERLY_PERCENT_SIGN", "PERLY_PLUS", - "PERLY_SEMICOLON", "PERLY_SNAIL", "PERLY_STAR", "BAREWORD", "METHOD", - "FUNCMETH", "THING", "PMFUNC", "PRIVATEREF", "QWLIST", "FUNC0OP", - "FUNC0SUB", "UNIOPSUB", "LSTOPSUB", "PLUGEXPR", "PLUGSTMT", "LABEL", - "FORMAT", "SUB", "SIGSUB", "ANONSUB", "ANON_SIGSUB", "PACKAGE", "USE", - "WHILE", "UNTIL", "IF", "UNLESS", "ELSE", "ELSIF", "CONTINUE", "FOR", - "GIVEN", "WHEN", "DEFAULT", "LOOPEX", "DOTDOT", "YADAYADA", "FUNC0", - "FUNC1", "FUNC", "UNIOP", "LSTOP", "MULOP", "ADDOP", "DOLSHARP", "DO", - "HASHBRACK", "NOAMP", "LOCAL", "MY", "REQUIRE", "COLONATTR", - "FORMLBRACK", "FORMRBRACK", "SUBLEXSTART", "SUBLEXEND", "PREC_LOW", - "OROP", "DOROP", "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", "POWOP", - "PREINC", "PREDEC", "POSTINC", "POSTDEC", "POSTJOIN", "ARROW", - "PERLY_PAREN_CLOSE", "PERLY_PAREN_OPEN", "'$'", "'/'", "$accept", + "PERLY_SEMICOLON", "PERLY_SLASH", "PERLY_SNAIL", "PERLY_STAR", + "BAREWORD", "METHOD", "FUNCMETH", "THING", "PMFUNC", "PRIVATEREF", + "QWLIST", "FUNC0OP", "FUNC0SUB", "UNIOPSUB", "LSTOPSUB", "PLUGEXPR", + "PLUGSTMT", "LABEL", "FORMAT", "SUB", "SIGSUB", "ANONSUB", "ANON_SIGSUB", + "PACKAGE", "USE", "WHILE", "UNTIL", "IF", "UNLESS", "ELSE", "ELSIF", + "CONTINUE", "FOR", "GIVEN", "WHEN", "DEFAULT", "LOOPEX", "DOTDOT", + "YADAYADA", "FUNC0", "FUNC1", "FUNC", "UNIOP", "LSTOP", "MULOP", "ADDOP", + "DOLSHARP", "DO", "HASHBRACK", "NOAMP", "LOCAL", "MY", "REQUIRE", + "COLONATTR", "FORMLBRACK", "FORMRBRACK", "SUBLEXSTART", "SUBLEXEND", + "PREC_LOW", "OROP", "DOROP", "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", "POWOP", "PREINC", "PREDEC", "POSTINC", "POSTDEC", "POSTJOIN", + "ARROW", "PERLY_PAREN_CLOSE", "PERLY_PAREN_OPEN", "'$'", "$accept", "grammar", "@1", "@2", "@3", "@4", "@5", "@6", "@7", "block", "formblock", "remember", "mblock", "mremember", "stmtseq", "formstmtseq", "fullstmt", "labfullstmt", "barestmt", "$@8", "$@9", "$@10", "$@11", @@ -166,11 +166,11 @@ static const yytype_int16 yytoknum[] = 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, - 36, 47 + 365, 36 }; # endif -#define YYPACT_NINF (-460) +#define YYPACT_NINF (-486) #define yypact_value_is_default(Yyn) \ ((Yyn) == YYPACT_NINF) @@ -184,64 +184,64 @@ static const yytype_int16 yytoknum[] = STATE-NUM. */ static const yytype_int16 yypact[] = { - 1015, -460, -460, -460, -460, -460, -460, -460, 26, -460, - 2825, 57, 1509, 1415, -460, -460, -460, -460, 8, 1885, - 2825, 8, 2825, 8, 8, -460, 8, 8, -460, -460, - 22, -30, -460, 2825, -460, -460, -460, -460, 2825, -24, - -21, -59, 1979, 1791, 8, 1979, 2073, 31, 2825, 78, - 2825, 2825, 2825, 2825, 2825, 2825, 2825, 2167, 8, 103, - 83, -460, -1, -460, -2, 20, 13, 28, -460, -460, - -460, 2992, -460, -460, 14, 52, 58, 64, -460, 117, - 236, 239, 125, -460, -460, -460, -460, -460, -460, 31, - 31, 122, -460, 42, 68, 87, 99, 261, 118, 129, - 57, 240, 231, -460, 253, 1601, 1415, -460, -460, -460, - 663, -460, 2, 757, -460, -460, -460, -460, -460, -460, - 92, 299, -460, 299, -460, -460, 2825, 196, 207, 2825, - 198, 393, 57, 282, 242, 2992, 205, 2261, 2825, 1791, - -460, 393, 564, 83, -460, 466, 2825, -460, -460, 393, - 305, 81, -460, -460, 2825, 393, 2919, 2355, 245, -460, - -460, -460, 393, 83, 299, 299, 299, 153, 153, 307, - 155, -460, 2825, 2825, 2825, 2825, 2825, 2825, 2449, -460, - -460, 2825, -460, -460, 2825, 2825, 2825, 2825, 2825, 2825, - 2825, 2825, 2825, 2825, 2825, 2825, 2825, 2825, 2825, 2825, - 2825, 2825, -460, -460, -460, 71, 2543, 2825, 2825, 2825, - 2825, 2825, 2825, 2825, -460, 302, -460, -460, 309, -460, - -460, -460, -460, -460, 254, 24, -460, -460, 214, -460, - -460, -460, -460, 57, -460, -460, 2825, 2825, 2825, 2825, - 2825, 2825, -460, -460, -460, -460, -460, 311, 311, -460, - -460, -460, 327, -460, -460, -460, 2825, 2825, 110, -460, - -460, -460, 242, 326, -460, -460, -460, 313, 289, 265, - 2825, 83, -460, 357, -460, 2637, 299, 245, 53, 59, - 90, -460, 344, 348, -460, 2825, 369, 306, 306, -460, - 2992, 165, 113, -460, 425, 393, 355, 3082, 1018, 930, - 2992, 2947, 501, 501, 648, 742, 836, 355, 355, 393, - 393, 420, 299, 299, 360, 2825, 2825, 365, 379, 388, - -460, 390, 2731, 29, 308, -460, -460, 460, 174, 130, - 191, 161, 300, 199, 317, 851, -460, 405, -460, -460, - 12, 404, 2825, 2825, 2825, 2825, -460, 319, -460, -460, - 321, -460, -460, -460, -460, 1603, 37, -460, 2825, 2825, - -460, -460, 103, -460, 103, -460, -460, -460, -460, -460, - 351, 351, 2, 329, 0, -460, 2825, -460, -460, 334, - -460, -460, -460, -460, 507, -460, 7, 519, -460, -460, - -460, 223, 2825, 423, -460, -460, 2825, -460, 328, 250, - -460, -460, -460, -460, -460, 553, -460, 2825, -460, 426, - -460, 432, -460, 433, -460, 435, -460, -460, -460, 282, - 242, -460, -460, 431, 359, 103, 361, 367, 103, 370, - 356, -460, -460, -460, -460, 374, 447, 310, -460, 2825, - 378, 382, 2825, -460, -460, -460, -460, 2825, 396, -460, - 481, -460, -460, 482, -460, -460, 41, -460, 297, -460, - 3037, 483, -460, -460, 399, -460, -460, -460, -460, 480, - 242, 487, -460, 2825, -460, -460, 499, 499, 2825, 2825, - 499, -460, 406, 409, 499, 499, 2992, 103, -460, -460, - 411, -460, -460, -460, -460, 453, 508, -460, -460, -460, - -460, 511, 499, 499, -460, 91, 91, 414, 427, 231, - 2825, 2825, 499, -460, -460, 945, -460, 1039, -460, -460, - -460, -460, 1133, -460, 231, 231, -460, 499, 429, -460, - -460, 499, 499, -460, 515, 440, 231, -460, -460, 30, - -460, -460, -460, 1227, -460, 2825, 231, 231, -460, 499, - -460, 547, 495, -460, -460, 467, -460, -460, -460, 231, - -460, -460, -460, 499, 1697, -460, 1321, 91, 468, -460, - -460, 499, -460 + 894, -486, -486, -486, -486, -486, -486, -486, 17, -486, + 2892, 15, 1393, 1298, -486, -486, -486, -486, 29, 1942, + 2892, 29, 2892, 29, 29, -486, 29, 29, -486, -486, + 39, -64, -486, 2892, -486, -486, -486, -486, 2892, -31, + -22, -45, 2037, 1847, 29, 2037, 2132, 33, 2892, 61, + 2892, 2892, 2892, 2892, 2892, 2892, 2892, 2227, 29, 184, + 49, -486, 2, -486, 177, 19, 186, 5, -486, -486, + -486, 3060, -486, -486, 9, 81, 162, 224, -486, 94, + 236, 244, 113, -486, -486, -486, -486, -486, -486, 33, + 33, 116, -486, 36, 41, 67, 70, -3, 98, 103, + 15, 206, 182, -486, 217, 1486, 1298, -486, -486, -486, + 528, -486, 47, 633, -486, -486, -486, -486, -486, -486, + 20, 890, -486, 890, -486, -486, 2892, 151, 197, 2892, + 171, 808, 15, 281, 237, 3060, 204, 2322, 2892, 1847, + -486, 808, 1747, 49, -486, 1649, 2892, -486, -486, 808, + 303, 102, -486, -486, 2892, 808, 2987, 2417, 247, -486, + -486, -486, 808, 49, 890, 890, 890, 88, 88, 305, + 79, -486, 2892, 2892, 2892, 2892, 2892, 2892, 2512, -486, + -486, 2892, -486, -486, 2892, 2892, 2892, 2892, 2892, 2892, + 2892, 2892, 2892, 2892, 2892, 2892, 2892, 2892, 2892, 2892, + 2892, 2892, -486, -486, -486, 80, 2607, 2892, 2892, 2892, + 2892, 2892, 2892, 2892, -486, 298, -486, -486, 307, -486, + -486, -486, -486, -486, 225, 0, -486, -486, 228, -486, + -486, -486, -486, 15, -486, -486, 2892, 2892, 2892, 2892, + 2892, 2892, -486, -486, -486, -486, -486, 310, 310, -486, + -486, -486, 327, -486, -486, -486, 2892, 2892, 46, -486, + -486, -486, 237, 321, -486, -486, -486, 289, 288, 264, + 2892, 49, -486, 363, -486, 2702, 890, 247, 22, 44, + 176, -486, 325, 359, -486, 2892, 375, 314, 314, -486, + 3060, 160, 54, -486, 368, 808, 416, 3150, 992, 360, + 3060, 3015, 513, 513, 618, 393, 713, 416, 416, 808, + 808, 903, 890, 890, 373, 2892, 2892, 376, 378, 379, + -486, 380, 2797, 26, 313, -486, -486, 398, 188, 130, + 296, 164, 299, 172, 312, 728, -486, 391, -486, -486, + 32, 384, 2892, 2892, 2892, 2892, -486, 300, -486, -486, + 318, -486, -486, -486, -486, 1488, 52, -486, 2892, 2892, + -486, -486, 184, -486, 184, -486, -486, -486, -486, -486, + 329, 329, 47, 308, 59, -486, 2892, -486, -486, 319, + -486, -486, -486, -486, 424, -486, 3, 434, -486, -486, + -486, 178, 2892, 407, -486, -486, 2892, -486, 340, 222, + -486, -486, -486, -486, -486, 532, -486, 2892, -486, 412, + -486, 418, -486, 423, -486, 425, -486, -486, -486, 281, + 237, -486, -486, 413, 334, 184, 335, 336, 184, 338, + 341, -486, -486, -486, -486, 343, 435, 309, -486, 2892, + 346, 351, 2892, -486, -486, -486, -486, 2892, 383, -486, + 458, -486, -486, 462, -486, -486, 11, -486, 249, -486, + 3105, 463, -486, -486, 385, -486, -486, -486, -486, 471, + 237, 472, -486, 2892, -486, -486, 486, 486, 2892, 2892, + 486, -486, 410, 399, 486, 486, 3060, 184, -486, -486, + 408, -486, -486, -486, -486, 443, 504, -486, -486, -486, + -486, 505, 486, 486, -486, 232, 232, 421, 422, 182, + 2892, 2892, 486, -486, -486, 823, -486, 918, -486, -486, + -486, -486, 1013, -486, 182, 182, -486, 486, 417, -486, + -486, 486, 486, -486, 511, 426, 182, -486, -486, 111, + -486, -486, -486, 1108, -486, 2892, 182, 182, -486, 486, + -486, 520, 465, -486, -486, 436, -486, -486, -486, 182, + -486, -486, -486, 486, 1583, -486, 1203, 232, 441, -486, + -486, 486, -486 }; /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM. @@ -312,16 +312,16 @@ static const yytype_int16 yydefact[] = /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { - -460, -460, -460, -460, -460, -460, -460, -460, -460, 301, - -460, -5, -117, -460, -17, -460, 571, 497, 1, -460, - -460, -460, -460, -460, -460, -460, -460, -460, 342, -350, - -432, -83, -459, -460, 94, 258, -272, 49, -460, -58, - 229, -460, 179, 195, -244, 340, 371, -460, -460, 249, - -460, 251, -460, -460, -460, -460, 170, -460, -460, 134, - -460, 154, -8, -37, -460, -460, -460, -460, -460, -460, - -460, -460, -460, -460, -460, -460, 100, -460, -460, 470, - -125, -131, -460, -460, 275, -460, -460, 410, 18, -46, - -40, -460, -460, -460, -460, -460, 4 + -486, -486, -486, -486, -486, -486, -486, -486, -486, 301, + -486, -5, -117, -486, -17, -486, 545, 474, 8, -486, + -486, -486, -486, -486, -486, -486, -486, -486, 409, -350, + -485, -83, -463, -486, 76, 250, -272, 30, -486, 89, + 317, -486, 293, 198, -244, 339, 374, -486, -486, 252, + -486, 253, -486, -486, -486, -486, 183, -486, -486, 132, + -486, 159, -8, -37, -486, -486, -486, -486, -486, -486, + -486, -486, -486, -486, -486, -486, 100, -486, -486, 480, + -125, -131, -486, -486, 284, -486, -486, 420, 18, -46, + -40, -486, -486, -486, -486, -486, 4 }; /* YYDEFGOTO[NTERM-NUM]. */ @@ -345,215 +345,202 @@ static const yytype_int16 yydefgoto[] = static const yytype_int16 yytable[] = { 113, 255, 59, 160, 17, 433, 143, 268, 269, 161, - 176, 120, 177, 103, 163, 175, 503, 138, 377, 83, - 285, 245, 118, 421, 246, 122, 16, 124, 125, 274, - 126, 127, 114, 422, 18, 129, 117, 115, 151, 117, - 83, 117, 117, 21, 117, 117, 23, 146, 147, 170, - 139, 551, 406, 114, 392, 152, 21, 552, 115, 23, - 153, 145, 117, 207, 207, 208, 208, 159, 83, -286, - -286, -286, -286, 429, 530, -288, 117, -288, 214, 130, - -261, 314, 315, 435, 316, 136, 440, 441, 137, 143, - 317, 179, 180, 318, 319, 348, 320, 21, 175, 564, - 23, -288, 273, -288, 182, 183, 254, 243, 178, 271, - 279, 447, 247, 181, -260, 228, 280, 143, 58, 184, - 121, 258, 123, 206, 375, 373, -262, 394, -290, 267, - 59, 59, -264, 131, 58, 570, 213, 321, 135, 58, - 527, 528, 141, 270, 410, 149, 218, 58, 155, 282, - 162, 220, 164, 165, 166, 167, 168, 145, 338, 339, - 172, 173, 174, -263, 287, 288, 289, 483, 291, 292, - 294, 172, 173, 174, 278, 412, 471, 221, 156, 353, - 322, 323, 172, 173, 174, 354, 393, 157, 58, 172, - 173, 174, 172, 173, 174, 409, 222, 335, 327, 328, - 329, 330, 331, 332, 333, 334, 507, 508, 223, 172, - 173, 174, 411, 414, 433, 342, 343, 344, 345, 347, - 374, 355, 356, 325, 358, 359, 496, 229, 362, 364, - 362, 362, 362, 362, 172, 173, 174, 457, 230, 535, + 18, 120, 503, 176, 163, 177, 285, 16, 377, 21, + 103, 530, 118, 23, 392, 122, 83, 124, 125, 274, + 126, 127, 138, 207, 254, 208, 117, 83, 151, 117, + 83, 117, 117, 421, 117, 117, 130, 146, 147, 170, + 406, 114, 129, 422, 114, -286, 115, -286, 152, 115, + 375, 145, 117, 153, 175, 139, 245, 159, 394, 224, + 246, 21, 348, 429, 175, 23, 117, -261, 214, 136, + 21, 447, 570, 435, 23, -260, 440, 441, 137, 143, + 314, 315, 207, 316, 208, 564, -262, 184, 225, 317, + 172, 173, 174, 318, 319, -290, 320, 226, 58, 271, + 279, 58, 178, 181, 243, 228, 280, 143, -264, 206, + 121, 258, 123, 273, 213, 373, 172, 173, 174, 267, + 59, 59, 551, 131, 172, 173, 174, 58, 135, 552, + 58, 218, 141, 270, 410, 149, 220, 321, 155, 282, + 162, 221, 164, 165, 166, 167, 168, 145, 247, 172, + 173, 174, 156, 58, 287, 288, 289, 483, 291, 292, + 294, 157, 58, -286, 278, -286, 471, 222, 412, 353, + 223, 393, 172, 173, 174, 354, 414, -288, 286, -288, + 322, 323, 457, -291, -291, -291, 205, 335, 327, 328, + 329, 330, 331, 332, 333, 334, 507, 508, 229, 409, + 172, 173, 174, 230, 433, 342, 343, 344, 345, 347, + 374, 355, 356, 325, 358, 359, 496, 232, 362, 364, + 362, 362, 362, 362, 233, -288, 462, -288, 235, 535, 172, 173, 174, 352, 172, 173, 174, 209, 59, 210, - 211, 449, 212, 172, 173, 174, 276, -291, -291, -291, - 205, 232, 384, 286, 462, 133, 134, 387, 216, 217, - 172, 173, 174, 555, 235, 290, 464, 391, 172, 173, - 174, 295, 233, 257, 296, 297, 298, 299, 300, 301, + -263, 449, 172, 173, 174, 211, 276, 212, 172, 173, + 174, 256, 384, 492, 172, 173, 174, 387, 172, 173, + 174, 179, 180, 555, 257, 290, 464, 391, 182, 183, + 259, 295, 527, 528, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, - 312, 313, 172, 173, 174, 256, 259, 398, 399, 261, - 353, 492, 84, 265, 405, 263, 354, 272, 283, 116, - 285, 413, 116, 357, 116, 116, 336, 116, 116, 172, - 173, 174, 224, 340, 425, 364, 428, 428, 415, 143, - 369, 117, 372, 140, 116, 116, 148, 437, 501, 461, - 428, 428, 439, 378, 346, 236, 237, 238, 239, 116, - 506, 225, 240, 509, 241, 431, 382, 513, 514, 385, - 226, 58, 450, 383, 352, 390, 172, 173, 174, 172, - 173, 174, 392, 397, 458, 524, 525, 174, 400, 172, - 173, 174, 172, 173, 174, 536, 172, 173, 174, 59, - 201, 231, 401, 202, 203, 204, 205, 172, 173, 174, - 544, 402, 469, 403, 546, 547, 472, 407, -83, 186, - 187, 381, 417, 172, 173, 174, 533, 479, 423, 58, - 432, 428, 559, 260, 442, 459, 143, 446, 465, 487, - 116, 541, 542, 452, 466, 467, 567, 468, 197, 198, - 199, 200, 389, 550, 572, 473, 201, 186, 187, 202, - 203, 204, 205, 556, 557, 478, -215, 474, 481, 475, - 428, 428, 515, 488, 517, 476, 565, 207, 477, 208, - -215, -215, 480, 522, 186, 187, 484, -215, 199, 200, - 485, 450, 489, 491, 201, 493, 460, 202, 203, 204, - 205, 495, 425, 428, 172, 173, 174, 494, 497, 543, - 504, -215, -215, -215, -215, 511, 200, 512, -215, 516, - -215, 201, 531, -215, 202, 203, 204, 205, 518, 519, - -215, -215, 523, 395, 360, 532, 548, 428, 545, 172, - 173, 174, 486, -215, 566, -215, -215, -215, 549, -215, - -215, -215, -215, -215, -215, -215, -215, -215, -215, -215, - -215, -215, -215, 560, -254, 186, 187, -215, 408, 561, - -215, -215, -215, -215, -215, 563, 571, -215, -254, -254, - 365, 366, 367, 368, 107, -254, 172, 173, 174, 192, - 193, 194, 195, 196, 197, 198, 199, 200, 172, 173, - 174, 426, 201, 242, 534, 202, 203, 204, 205, -254, - -254, -254, -254, 568, 470, 455, -254, 388, -254, 371, - 444, -254, 490, 445, 116, 499, 277, 456, -254, -254, - 521, 438, 172, 173, 174, 351, 0, 0, 0, 0, - 0, -254, 0, -254, -254, -254, 0, -254, -254, -254, - -254, -254, -254, -254, -254, -254, -254, -254, -254, -254, - -254, 463, 0, -13, 85, -254, 0, 0, -254, -254, - -254, -254, -254, 18, 83, -254, 19, 0, 0, 0, - 0, 20, 21, 22, 86, 23, 24, 25, 26, 27, - 28, 29, 0, 30, 31, 32, 33, 34, 35, 87, - 106, 88, 89, 90, 36, 37, 91, 92, 93, 94, - 95, 96, 186, 187, 0, 97, 98, 99, 100, 38, - 0, 101, 39, 40, 41, 42, 43, 0, 0, 44, - 45, 46, 47, 48, 49, 50, 0, 193, 194, 195, - 196, 197, 198, 199, 200, 51, 0, 0, 0, 201, - 0, 0, 202, 203, 204, 205, 0, -3, 85, 0, - 52, 53, 0, 54, 0, 55, 56, 18, 83, 0, - 19, 0, 57, 58, 0, 20, 21, 22, 86, 23, - 24, 25, 26, 27, 28, 29, 0, 30, 31, 32, - 33, 34, 35, 87, 106, 88, 89, 90, 36, 37, - 91, 92, 93, 94, 95, 96, 186, 187, 0, 97, - 98, 99, 100, 38, 0, 101, 39, 40, 41, 42, - 43, 0, 0, 44, 45, 46, 47, 48, 49, 50, - 0, 0, 194, 195, 196, 197, 198, 199, 200, 51, - 0, 0, 0, 201, 0, 0, 202, 203, 204, 205, - 0, 0, 85, 0, 52, 53, 0, 54, 0, 55, - 56, 18, 83, 416, 19, 0, 57, 58, 0, 20, - 21, 22, 86, 23, 24, 25, 26, 27, 28, 29, - 0, 30, 31, 32, 33, 34, 35, 87, 106, 88, - 89, 90, 36, 37, 91, 92, 93, 94, 95, 96, - 186, 187, 0, 97, 98, 99, 100, 38, 0, 101, - 39, 40, 41, 42, 43, 0, 0, 44, 45, 46, - 47, 48, 49, 50, 0, 0, 0, 195, 196, 197, - 198, 199, 200, 51, 0, 0, 0, 201, 0, 0, - 202, 203, 204, 205, 0, 0, 85, 0, 52, 53, - 0, 54, 0, 55, 56, 18, 83, 537, 19, 0, - 57, 58, 0, 20, 21, 22, 86, 23, 24, 25, - 26, 27, 28, 29, 0, 30, 31, 32, 33, 34, - 35, 87, 106, 88, 89, 90, 36, 37, 91, 92, - 93, 94, 95, 96, 186, 0, 0, 97, 98, 99, - 100, 38, 0, 101, 39, 40, 41, 42, 43, 0, - 0, 44, 45, 46, 47, 48, 49, 50, 1, 2, - 3, 4, 5, 6, 7, 0, 200, 51, 0, 0, - 0, 201, 0, 0, 202, 203, 204, 205, 0, 0, - 85, 0, 52, 53, 0, 54, 0, 55, 56, 18, - 83, 538, 19, 0, 57, 58, 0, 20, 21, 22, - 86, 23, 24, 25, 26, 27, 28, 29, 0, 30, + 312, 313, 172, 173, 174, 338, 339, 398, 399, 261, + 353, 263, 84, 265, 405, 272, 354, 411, 285, 116, + 413, 283, 116, 336, 116, 116, 346, 116, 116, 172, + 173, 174, 340, 415, 425, 364, 428, 428, 357, 143, + 369, 117, 372, 140, 116, 116, 148, 437, 501, 378, + 428, 428, 439, 133, 134, 236, 237, 238, 239, 116, + 506, 461, 240, 509, 241, 431, 382, 513, 514, 172, + 173, 174, 450, 383, 352, 385, 172, 173, 174, 172, + 173, 174, 216, 217, 458, 524, 525, 390, 392, 172, + 173, 174, 172, 173, 174, 536, 174, 397, 381, 59, + 400, 231, 401, 402, 403, 172, 173, 174, 417, 423, + 544, 58, 469, 442, 546, 547, 472, 446, -83, 459, + 172, 173, 174, 407, 465, 186, 533, 479, 432, 452, + 466, 428, 559, 260, 389, 467, 143, 468, 473, 487, + 116, 541, 542, 474, 475, 476, 567, 477, 172, 173, + 174, 478, 480, 550, 572, 484, 481, 200, 186, 187, + 485, 488, 201, 556, 557, 202, 203, 204, 205, 489, + 428, 428, 515, 491, 517, 493, 565, 395, 172, 173, + 174, 186, 187, 522, 194, 195, 196, 197, 198, 199, + 200, 450, 495, 497, 494, 201, 460, 504, 202, 203, + 204, 205, 425, 428, 172, 173, 174, 408, 512, 543, + 197, 198, 199, 200, 172, 173, 174, 516, 201, 518, + 511, 202, 203, 204, 205, 519, 523, 545, -13, 85, + 531, 532, 548, 455, 360, 549, 560, 428, 18, 83, + 561, 19, 486, 456, 566, 563, 20, 21, 22, 86, + 571, 23, 24, 25, 26, 27, 28, 29, 107, 30, + 31, 32, 33, 34, 35, 87, 106, 88, 89, 90, + 36, 37, 91, 92, 93, 94, 95, 96, 186, 187, + 242, 97, 98, 99, 100, 38, 534, 101, 39, 40, + 41, 42, 43, 426, 568, 44, 45, 46, 47, 48, + 49, 50, 192, 193, 194, 195, 196, 197, 198, 199, + 200, 51, 172, 173, 174, 201, 388, 470, 202, 203, + 204, 205, 371, 444, 116, 445, 52, 53, 521, 54, + 499, 55, 56, -3, 85, 490, 277, 0, 57, 58, + 438, 463, 0, 18, 83, 351, 19, 365, 366, 367, + 368, 20, 21, 22, 86, 0, 23, 24, 25, 26, + 27, 28, 29, 0, 30, 31, 32, 33, 34, 35, + 87, 106, 88, 89, 90, 36, 37, 91, 92, 93, + 94, 95, 96, 186, 187, 0, 97, 98, 99, 100, + 38, 0, 101, 39, 40, 41, 42, 43, 0, 0, + 44, 45, 46, 47, 48, 49, 50, 0, 193, 194, + 195, 196, 197, 198, 199, 200, 51, 0, 0, 0, + 201, 0, 0, 202, 203, 204, 205, 0, 0, 85, + 0, 52, 53, 0, 54, 0, 55, 56, 18, 83, + 416, 19, 0, 57, 58, 0, 20, 21, 22, 86, + 0, 23, 24, 25, 26, 27, 28, 29, 0, 30, + 31, 32, 33, 34, 35, 87, 106, 88, 89, 90, + 36, 37, 91, 92, 93, 94, 95, 96, 186, 187, + 0, 97, 98, 99, 100, 38, 0, 101, 39, 40, + 41, 42, 43, 0, 0, 44, 45, 46, 47, 48, + 49, 50, 0, 0, 0, 195, 196, 197, 198, 199, + 200, 51, 0, 0, 0, 201, 0, 0, 202, 203, + 204, 205, 0, 0, 85, 0, 52, 53, 0, 54, + 0, 55, 56, 18, 83, 537, 19, 0, 57, 58, + 0, 20, 21, 22, 86, 0, 23, 24, 25, 26, + 27, 28, 29, 0, 30, 31, 32, 33, 34, 35, + 87, 106, 88, 89, 90, 36, 37, 91, 92, 93, + 94, 95, 96, 186, 187, 0, 97, 98, 99, 100, + 38, 0, 101, 39, 40, 41, 42, 43, 0, 0, + 44, 45, 46, 47, 48, 49, 50, 1, 2, 3, + 4, 5, 6, 7, 199, 200, 51, 0, 0, 0, + 201, 0, 0, 202, 203, 204, 205, 0, 0, 85, + 0, 52, 53, 0, 54, 0, 55, 56, 18, 83, + 538, 19, 0, 57, 58, 0, 20, 21, 22, 86, + 0, 23, 24, 25, 26, 27, 28, 29, 0, 30, + 31, 32, 33, 34, 35, 87, 106, 88, 89, 90, + 36, 37, 91, 92, 93, 94, 95, 96, 186, 187, + 0, 97, 98, 99, 100, 38, 0, 101, 39, 40, + 41, 42, 43, 0, 0, 44, 45, 46, 47, 48, + 49, 50, 201, 0, 0, 202, 203, 204, 205, 0, + 200, 51, 0, 0, 0, 201, 0, 0, 202, 203, + 204, 205, 0, 0, 85, 0, 52, 53, 0, 54, + 0, 55, 56, 18, 83, 540, 19, 0, 57, 58, + 0, 20, 21, 22, 86, 0, 23, 24, 25, 26, + 27, 28, 29, 0, 30, 31, 32, 33, 34, 35, + 87, 106, 88, 89, 90, 36, 37, 91, 92, 93, + 94, 95, 96, 0, 0, 0, 97, 98, 99, 100, + 38, 0, 101, 39, 40, 41, 42, 43, 0, 0, + 44, 45, 46, 47, 48, 49, 50, 0, 0, 200, + 0, 0, 0, 0, 201, 0, 51, 202, 203, 204, + 205, 0, 0, 0, 0, 0, 0, 0, 0, 85, + 0, 52, 53, 0, 54, 0, 55, 56, 18, 83, + 554, 19, 0, 57, 58, 0, 20, 21, 22, 86, + 0, 23, 24, 25, 26, 27, 28, 29, 0, 30, 31, 32, 33, 34, 35, 87, 106, 88, 89, 90, 36, 37, 91, 92, 93, 94, 95, 96, 0, 0, 0, 97, 98, 99, 100, 38, 0, 101, 39, 40, 41, 42, 43, 0, 0, 44, 45, 46, 47, 48, - 49, 50, 0, 0, 200, 0, 0, 0, 0, 201, - 0, 51, 202, 203, 204, 205, 0, 0, 0, 0, + 49, 50, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 52, 53, 0, 54, - 0, 55, 56, 18, 83, 540, 19, 0, 57, 58, - 0, 20, 21, 22, 86, 23, 24, 25, 26, 27, - 28, 29, 0, 30, 31, 32, 33, 34, 35, 87, - 106, 88, 89, 90, 36, 37, 91, 92, 93, 94, - 95, 96, 0, 0, 0, 97, 98, 99, 100, 38, - 0, 101, 39, 40, 41, 42, 43, 0, 0, 44, - 45, 46, 47, 48, 49, 50, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 51, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, - 52, 53, 0, 54, 0, 55, 56, 18, 83, 554, - 19, 0, 57, 58, 0, 20, 21, 22, 86, 23, - 24, 25, 26, 27, 28, 29, 0, 30, 31, 32, - 33, 34, 35, 87, 106, 88, 89, 90, 36, 37, - 91, 92, 93, 94, 95, 96, 0, 0, 0, 97, - 98, 99, 100, 38, 0, 101, 39, 40, 41, 42, - 43, 0, 0, 44, 45, 46, 47, 48, 49, 50, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 51, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 85, 0, 52, 53, 0, 54, 0, 55, - 56, 18, 83, 0, 19, 0, 57, 58, 0, 20, - 21, 22, 86, 23, 24, 25, 26, 27, 28, 29, - 0, 30, 31, 32, 33, 34, 35, 87, 106, 88, - 89, 90, 36, 37, 91, 92, 93, 94, 95, 96, - 0, 0, 0, 97, 98, 99, 100, 38, 0, 101, - 39, 40, 41, 42, 43, 0, 0, 44, 45, 46, - 47, 48, 49, 50, 0, 0, 569, 0, 0, 0, - 0, 0, 0, 51, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 85, 0, 52, 53, - 0, 54, 0, 55, 56, 18, 83, 0, 19, 0, - 57, 58, 0, 20, 21, 22, 86, 23, 24, 25, - 26, 27, 28, 29, 0, 30, 31, 32, 33, 34, - 35, 87, 106, 88, 89, 90, 36, 37, 91, 92, - 93, 94, 95, 96, 0, 0, 0, 97, 98, 99, - 100, 38, 0, 101, 39, 40, 41, 42, 43, 0, - 0, 44, 45, 46, 47, 48, 49, 50, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 51, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 85, 0, 52, 53, 0, 54, 0, 55, 56, 18, - 83, 0, 19, 0, 57, 58, 0, 20, 21, 22, - 86, 23, 24, 25, 26, 27, 28, 29, 0, 30, - 31, 32, 33, 34, 35, 87, 0, 88, 89, 90, + 0, 55, 56, 18, 83, 0, 19, 0, 57, 58, + 0, 20, 21, 22, 86, 0, 23, 24, 25, 26, + 27, 28, 29, 0, 30, 31, 32, 33, 34, 35, + 87, 106, 88, 89, 90, 36, 37, 91, 92, 93, + 94, 95, 96, 0, 0, 0, 97, 98, 99, 100, + 38, 0, 101, 39, 40, 41, 42, 43, 0, 0, + 44, 45, 46, 47, 48, 49, 50, 0, 0, 569, + 0, 0, 0, 0, 0, 0, 51, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, + 0, 52, 53, 0, 54, 0, 55, 56, 18, 83, + 0, 19, 0, 57, 58, 0, 20, 21, 22, 86, + 0, 23, 24, 25, 26, 27, 28, 29, 0, 30, + 31, 32, 33, 34, 35, 87, 106, 88, 89, 90, 36, 37, 91, 92, 93, 94, 95, 96, 0, 0, 0, 97, 98, 99, 100, 38, 0, 101, 39, 40, 41, 42, 43, 0, 0, 44, 45, 46, 47, 48, 49, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, 52, 53, 0, 54, - 0, 55, 56, 18, 0, 0, 19, 0, 57, 58, - 0, 20, 21, 22, -78, 23, 24, 25, 26, 27, - 28, 29, 0, 30, 31, 32, 33, 34, 35, 0, - 0, 0, 0, 0, 36, 37, 236, 237, 238, 239, - 0, 0, 0, 240, 0, 241, 0, 0, 0, 38, - 0, 0, 39, 40, 41, 42, 43, 0, 0, 44, - 45, 46, 47, 48, 49, 50, 0, 0, 0, 0, - 172, 173, 174, 0, 0, 51, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 85, 0, - 52, 53, 0, 54, 0, 55, 56, 18, 0, 0, - 19, 0, 57, 58, 0, 20, 21, 22, 0, 23, - 24, 25, 26, 27, 28, 29, 0, 30, 31, 32, - 33, 34, 35, 0, 0, 0, 0, 0, 36, 37, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 38, 0, 0, 39, 40, 41, 42, - 43, 0, 0, 44, 45, 46, 47, 48, 49, 50, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 51, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 52, 53, 0, 54, 0, 55, - 56, 18, 83, 0, 19, -78, 57, 58, 0, 20, - 21, 22, 0, 23, 24, 142, 26, 27, 28, 29, - 115, 30, 31, 32, 33, 34, 35, 0, 0, 0, - 0, 0, 36, 37, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 38, 0, 0, - 39, 40, 41, 42, 43, 0, 0, 44, 45, 46, - 47, 48, 49, 50, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 51, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 52, 53, - 0, 54, 0, 55, 56, 18, 0, 0, 19, 119, - 57, 58, 0, 20, 21, 22, 0, 23, 24, 25, - 26, 27, 28, 29, 0, 30, 31, 32, 33, 34, - 35, 0, 0, 0, 0, 0, 36, 37, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 38, 0, 0, 39, 40, 41, 42, 43, 0, - 0, 44, 45, 46, 47, 48, 49, 50, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 51, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 52, 53, 0, 54, 0, 55, 56, 18, - 83, 0, 19, 0, 57, 58, 0, 20, 21, 22, + 0, 55, 56, 18, 83, 0, 19, 0, 57, 58, + 0, 20, 21, 22, 86, 0, 23, 24, 25, 26, + 27, 28, 29, 0, 30, 31, 32, 33, 34, 35, + 87, 0, 88, 89, 90, 36, 37, 91, 92, 93, + 94, 95, 96, 0, 0, 0, 97, 98, 99, 100, + 38, 0, 101, 39, 40, 41, 42, 43, 0, 0, + 44, 45, 46, 47, 48, 49, 50, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 51, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, + 0, 52, 53, 0, 54, 0, 55, 56, 18, 0, + 0, 19, 0, 57, 58, 0, 20, 21, 22, -78, 0, 23, 24, 25, 26, 27, 28, 29, 0, 30, 31, 32, 33, 34, 35, 0, 0, 0, 0, 0, - 36, 37, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 38, 0, 0, 39, 40, + 36, 37, 236, 237, 238, 239, 0, 0, 0, 240, + 0, 241, 0, 0, 0, 38, 0, 0, 39, 40, 41, 42, 43, 0, 0, 44, 45, 46, 47, 48, - 49, 50, 0, 0, 0, 0, 0, 0, 0, 0, + 49, 50, 0, 0, 0, 0, 172, 173, 174, 0, 0, 51, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 52, 53, 0, 54, + 0, 0, 0, 0, 85, 0, 52, 53, 0, 54, 0, 55, 56, 18, 0, 0, 19, 0, 57, 58, - 0, 20, 21, 22, 150, 23, 24, 25, 26, 27, + 0, 20, 21, 22, 0, 0, 23, 24, 25, 26, + 27, 28, 29, 0, 30, 31, 32, 33, 34, 35, + 0, 0, 0, 0, 0, 36, 37, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 38, 0, 0, 39, 40, 41, 42, 43, 0, -215, + 44, 45, 46, 47, 48, 49, 50, 0, 0, 0, + 207, 0, 208, -215, -215, 0, 51, 0, 0, 0, + -215, -215, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 52, 53, 0, 54, 0, 55, 56, 0, 0, + 0, 0, -78, 57, 58, -215, -215, -215, -215, 0, + 0, 0, -215, 0, -215, 0, 0, -215, 0, 0, + 0, 0, 0, 0, -215, -215, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, -215, 0, -215, + -215, -215, 0, -215, -215, -215, -215, -215, -215, -215, + -215, -215, -215, -215, -215, -215, -215, -254, 0, 0, + 0, -215, 0, 0, -215, -215, -215, -215, -215, 0, + 0, -254, -254, 0, 0, 0, 0, 0, -254, -254, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, -254, -254, -254, -254, 0, 0, 0, + -254, 0, -254, 0, 0, -254, 0, 0, 0, 0, + 0, 0, -254, -254, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, -254, 0, -254, -254, -254, + 0, -254, -254, -254, -254, -254, -254, -254, -254, -254, + -254, -254, -254, -254, -254, 0, 0, 0, 0, -254, + 0, 0, -254, -254, -254, -254, -254, 18, 83, 0, + 19, 0, 0, 0, 0, 20, 21, 22, 0, 0, + 23, 24, 142, 26, 27, 28, 29, 115, 30, 31, + 32, 33, 34, 35, 0, 0, 0, 0, 0, 36, + 37, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 38, 0, 0, 39, 40, 41, + 42, 43, 0, 0, 44, 45, 46, 47, 48, 49, + 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 52, 53, 0, 54, 0, + 55, 56, 18, 0, 0, 19, 119, 57, 58, 0, + 20, 21, 22, 0, 0, 23, 24, 25, 26, 27, 28, 29, 0, 30, 31, 32, 33, 34, 35, 0, 0, 0, 0, 0, 36, 37, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 38, @@ -561,46 +548,18 @@ static const yytype_int16 yytable[] = 45, 46, 47, 48, 49, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 52, 53, 0, 54, 0, 55, 56, 18, 0, 0, - 19, 0, 57, 58, 0, 20, 21, 22, 0, 23, - 24, 25, 26, 27, 28, 29, 0, 30, 31, 32, - 33, 34, 35, 0, 0, 0, 0, 0, 36, 37, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 38, 0, 0, 39, 40, 41, 42, - 43, 0, 0, 44, 45, 46, 47, 48, 49, 50, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 51, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 52, 53, 0, 54, 0, 55, - 56, 18, 0, 0, 19, 169, 57, 58, 0, 20, - 21, 22, 0, 23, 24, 25, 26, 27, 28, 29, - 0, 30, 31, 32, 33, 34, 35, 0, 0, 0, - 0, 0, 36, 37, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 38, 0, 0, - 39, 40, 41, 42, 43, 0, 0, 44, 45, 46, - 47, 48, 49, 50, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 51, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 52, 53, - 0, 54, 0, 55, 56, 18, 0, 0, 19, 266, - 57, 58, 0, 20, 21, 22, 0, 23, 24, 25, - 26, 27, 28, 29, 0, 30, 31, 32, 33, 34, - 35, 0, 0, 0, 0, 0, 36, 37, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 38, 0, 0, 39, 40, 41, 42, 43, 0, - 0, 44, 45, 46, 47, 48, 49, 50, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 51, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 52, 53, 0, 54, 0, 55, 56, 18, - 0, 0, 19, 281, 57, 58, 0, 20, 21, 22, - 0, 23, 24, 25, 26, 27, 28, 29, 0, 30, - 31, 32, 33, 34, 35, 0, 0, 0, 0, 0, - 36, 37, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 38, 0, 0, 39, 40, - 41, 42, 43, 0, 0, 44, 45, 46, 47, 48, - 49, 50, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 51, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 52, 53, 0, 54, - 0, 55, 56, 18, 0, 0, 19, 293, 57, 58, - 0, 20, 21, 22, 0, 23, 24, 25, 26, 27, + 52, 53, 0, 54, 0, 55, 56, 18, 83, 0, + 19, 0, 57, 58, 0, 20, 21, 22, 0, 0, + 23, 24, 25, 26, 27, 28, 29, 0, 30, 31, + 32, 33, 34, 35, 0, 0, 0, 0, 0, 36, + 37, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 38, 0, 0, 39, 40, 41, + 42, 43, 0, 0, 44, 45, 46, 47, 48, 49, + 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 52, 53, 0, 54, 0, + 55, 56, 18, 0, 0, 19, 0, 57, 58, 0, + 20, 21, 22, 150, 0, 23, 24, 25, 26, 27, 28, 29, 0, 30, 31, 32, 33, 34, 35, 0, 0, 0, 0, 0, 36, 37, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 38, @@ -609,383 +568,438 @@ static const yytype_int16 yytable[] = 0, 0, 0, 0, 0, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 52, 53, 0, 54, 0, 55, 56, 18, 0, 0, - 19, 326, 57, 58, 0, 20, 21, 22, 0, 23, - 24, 25, 26, 27, 28, 29, 0, 30, 31, 32, - 33, 34, 35, 0, 0, 0, 0, 0, 36, 37, + 19, 0, 57, 58, 0, 20, 21, 22, 0, 0, + 23, 24, 25, 26, 27, 28, 29, 0, 30, 31, + 32, 33, 34, 35, 0, 0, 0, 0, 0, 36, + 37, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 38, 0, 0, 39, 40, 41, + 42, 43, 0, 0, 44, 45, 46, 47, 48, 49, + 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 52, 53, 0, 54, 0, + 55, 56, 18, 0, 0, 19, 169, 57, 58, 0, + 20, 21, 22, 0, 0, 23, 24, 25, 26, 27, + 28, 29, 0, 30, 31, 32, 33, 34, 35, 0, + 0, 0, 0, 0, 36, 37, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 38, + 0, 0, 39, 40, 41, 42, 43, 0, 0, 44, + 45, 46, 47, 48, 49, 50, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 38, 0, 0, 39, 40, 41, 42, - 43, 0, 0, 44, 45, 46, 47, 48, 49, 50, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 51, + 52, 53, 0, 54, 0, 55, 56, 18, 0, 0, + 19, 266, 57, 58, 0, 20, 21, 22, 0, 0, + 23, 24, 25, 26, 27, 28, 29, 0, 30, 31, + 32, 33, 34, 35, 0, 0, 0, 0, 0, 36, + 37, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 38, 0, 0, 39, 40, 41, + 42, 43, 0, 0, 44, 45, 46, 47, 48, 49, + 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 52, 53, 0, 54, 0, + 55, 56, 18, 0, 0, 19, 281, 57, 58, 0, + 20, 21, 22, 0, 0, 23, 24, 25, 26, 27, + 28, 29, 0, 30, 31, 32, 33, 34, 35, 0, + 0, 0, 0, 0, 36, 37, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 38, + 0, 0, 39, 40, 41, 42, 43, 0, 0, 44, + 45, 46, 47, 48, 49, 50, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 52, 53, 0, 54, 0, 55, - 56, 18, 0, 0, 19, 386, 57, 58, 0, 20, - 21, 22, 0, 23, 24, 25, 26, 27, 28, 29, - 0, 30, 31, 32, 33, 34, 35, 0, 0, 0, - 0, 0, 36, 37, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 38, 0, 0, - 39, 40, 41, 42, 43, 0, 0, 44, 45, 46, - 47, 48, 49, 50, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 51, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 52, 53, - 0, 54, 0, 55, 56, 18, 0, 0, 19, 404, - 57, 58, 0, 20, 21, 22, 0, 23, 24, 25, - 26, 27, 28, 29, 0, 30, 31, 32, 33, 34, - 35, 0, 0, 0, 0, 0, 36, 37, 0, 0, + 52, 53, 0, 54, 0, 55, 56, 18, 0, 0, + 19, 293, 57, 58, 0, 20, 21, 22, 0, 0, + 23, 24, 25, 26, 27, 28, 29, 0, 30, 31, + 32, 33, 34, 35, 0, 0, 0, 0, 0, 36, + 37, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 38, 0, 0, 39, 40, 41, + 42, 43, 0, 0, 44, 45, 46, 47, 48, 49, + 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 52, 53, 0, 54, 0, + 55, 56, 18, 0, 0, 19, 326, 57, 58, 0, + 20, 21, 22, 0, 0, 23, 24, 25, 26, 27, + 28, 29, 0, 30, 31, 32, 33, 34, 35, 0, + 0, 0, 0, 0, 36, 37, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 38, + 0, 0, 39, 40, 41, 42, 43, 0, 0, 44, + 45, 46, 47, 48, 49, 50, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 38, 0, 0, 39, 40, 41, 42, 43, 0, - 0, 44, 45, 46, 47, 48, 49, 50, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 51, 0, 0, + 52, 53, 0, 54, 0, 55, 56, 18, 0, 0, + 19, 386, 57, 58, 0, 20, 21, 22, 0, 0, + 23, 24, 25, 26, 27, 28, 29, 0, 30, 31, + 32, 33, 34, 35, 0, 0, 0, 0, 0, 36, + 37, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 38, 0, 0, 39, 40, 41, + 42, 43, 0, 0, 44, 45, 46, 47, 48, 49, + 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 52, 53, 0, 54, 0, + 55, 56, 18, 0, 0, 19, 404, 57, 58, 0, + 20, 21, 22, 0, 0, 23, 24, 25, 26, 27, + 28, 29, 0, 30, 31, 32, 33, 34, 35, 0, + 0, 0, 0, 0, 36, 37, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 38, + 0, 0, 39, 40, 41, 42, 43, 0, 0, 44, + 45, 46, 47, 48, 49, 50, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 52, 53, 0, 54, 0, 55, 56, 18, - 0, 0, 19, 0, 57, 58, 0, 20, 21, 22, - 0, 23, 24, 25, 26, 27, 28, 29, 0, 30, - 31, 32, 33, 34, 35, 0, 0, 0, 0, 0, - 36, 37, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 38, 0, 0, 39, 40, - 41, 42, 43, 0, 0, 44, 45, 46, 47, 48, - 49, 50, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 51, 0, 0, 185, 0, 0, 0, 0, 0, - 0, 186, 187, 0, 0, 0, 52, 53, 0, 54, - 0, 55, 56, 0, 0, 0, 0, 0, 275, 58, - 188, 189, 396, 190, 191, 192, 193, 194, 195, 196, - 197, 198, 199, 200, 0, 0, 0, 0, 201, 185, - 0, 202, 203, 204, 205, 0, 186, 187, 0, 0, + 52, 53, 0, 54, 0, 55, 56, 18, 0, 0, + 19, 0, 57, 58, 0, 20, 21, 22, 0, 0, + 23, 24, 25, 26, 27, 28, 29, 0, 30, 31, + 32, 33, 34, 35, 0, 0, 0, 0, 0, 36, + 37, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 38, 0, 0, 39, 40, 41, + 42, 43, 0, 0, 44, 45, 46, 47, 48, 49, + 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 51, 0, 0, 185, 0, 0, 0, 0, 0, 0, + 186, 187, 0, 0, 0, 52, 53, 0, 54, 0, + 55, 56, 0, 0, 0, 0, 0, 275, 58, 188, + 189, 396, 190, 191, 192, 193, 194, 195, 196, 197, + 198, 199, 200, 0, 0, 0, 0, 201, 185, 0, + 202, 203, 204, 205, 0, 186, 187, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 188, 189, 0, 190, 191, - 192, 193, 194, 195, 196, 197, 198, 199, 200, 0, - 0, 0, 0, 201, 185, 0, 202, 203, 204, 205, - 0, 186, 187, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 188, 189, 0, 190, 191, 192, + 193, 194, 195, 196, 197, 198, 199, 200, 0, 0, + 0, 0, 201, 185, 0, 202, 203, 204, 205, 0, + 186, 187, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 189, 0, 190, 191, 192, 193, 194, 195, 196, - 197, 198, 199, 200, 0, 0, 0, 0, 201, -291, - 0, 202, 203, 204, 205, 0, 186, 187, 0, 0, + 189, 0, 190, 191, 192, 193, 194, 195, 196, 197, + 198, 199, 200, 0, 0, 0, 0, 201, -291, 0, + 202, 203, 204, 205, 0, 186, 187, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 190, 191, - 192, 193, 194, 195, 196, 197, 198, 199, 200, 0, - 0, 0, 0, 201, 0, 0, 202, 203, 204, 205 + 0, 0, 0, 0, 0, 0, 0, 190, 191, 192, + 193, 194, 195, 196, 197, 198, 199, 200, 0, 0, + 0, 0, 201, 0, 0, 202, 203, 204, 205 }; static const yytype_int16 yycheck[] = { 17, 126, 10, 49, 9, 355, 43, 138, 139, 49, - 11, 19, 13, 12, 51, 15, 475, 76, 262, 11, - 13, 19, 18, 11, 22, 21, 0, 23, 24, 154, - 26, 27, 24, 21, 10, 13, 18, 29, 46, 21, - 11, 23, 24, 19, 26, 27, 22, 43, 44, 57, - 109, 21, 23, 24, 13, 24, 19, 27, 29, 22, - 29, 43, 44, 11, 11, 13, 13, 49, 11, 11, - 11, 13, 13, 345, 506, 11, 58, 13, 83, 109, - 73, 10, 11, 355, 13, 109, 358, 359, 109, 126, - 19, 93, 94, 22, 23, 71, 25, 19, 15, 558, - 22, 11, 21, 13, 91, 92, 14, 106, 109, 146, - 156, 111, 110, 93, 73, 97, 156, 154, 110, 91, - 20, 129, 22, 109, 14, 256, 73, 14, 11, 137, - 138, 139, 73, 33, 110, 567, 11, 66, 38, 110, - 49, 50, 42, 139, 14, 45, 24, 110, 48, 157, - 50, 109, 52, 53, 54, 55, 56, 139, 216, 217, - 79, 80, 81, 73, 172, 173, 174, 439, 176, 177, - 178, 79, 80, 81, 156, 14, 420, 109, 100, 225, - 109, 110, 79, 80, 81, 225, 21, 109, 110, 79, - 80, 81, 79, 80, 81, 21, 109, 214, 206, 207, - 208, 209, 210, 211, 212, 213, 478, 479, 109, 79, - 80, 81, 21, 14, 564, 220, 221, 222, 223, 224, - 257, 226, 227, 205, 229, 230, 470, 109, 236, 237, - 238, 239, 240, 241, 79, 80, 81, 14, 109, 511, - 79, 80, 81, 225, 79, 80, 81, 11, 256, 13, - 11, 376, 13, 79, 80, 81, 156, 104, 105, 106, - 107, 21, 270, 108, 14, 36, 37, 275, 89, 90, - 79, 80, 81, 545, 21, 175, 407, 285, 79, 80, - 81, 181, 51, 76, 184, 185, 186, 187, 188, 189, + 10, 19, 475, 11, 51, 13, 13, 0, 262, 19, + 12, 506, 18, 23, 13, 21, 11, 23, 24, 154, + 26, 27, 77, 11, 14, 13, 18, 11, 46, 21, + 11, 23, 24, 11, 26, 27, 110, 43, 44, 57, + 24, 25, 13, 21, 25, 11, 30, 13, 25, 30, + 14, 43, 44, 30, 15, 110, 19, 49, 14, 72, + 23, 19, 72, 345, 15, 23, 58, 74, 83, 110, + 19, 22, 567, 355, 23, 74, 358, 359, 110, 126, + 10, 11, 11, 13, 13, 558, 74, 92, 101, 19, + 80, 81, 82, 23, 24, 11, 26, 110, 111, 146, + 156, 111, 110, 94, 106, 97, 156, 154, 74, 110, + 20, 129, 22, 21, 11, 256, 80, 81, 82, 137, + 138, 139, 21, 33, 80, 81, 82, 111, 38, 28, + 111, 25, 42, 139, 14, 45, 110, 67, 48, 157, + 50, 110, 52, 53, 54, 55, 56, 139, 111, 80, + 81, 82, 101, 111, 172, 173, 174, 439, 176, 177, + 178, 110, 111, 11, 156, 13, 420, 110, 14, 225, + 110, 21, 80, 81, 82, 225, 14, 11, 109, 13, + 110, 111, 14, 105, 106, 107, 108, 214, 206, 207, + 208, 209, 210, 211, 212, 213, 478, 479, 110, 21, + 80, 81, 82, 110, 564, 220, 221, 222, 223, 224, + 257, 226, 227, 205, 229, 230, 470, 21, 236, 237, + 238, 239, 240, 241, 52, 11, 14, 13, 21, 511, + 80, 81, 82, 225, 80, 81, 82, 11, 256, 13, + 74, 376, 80, 81, 82, 11, 156, 13, 80, 81, + 82, 110, 270, 14, 80, 81, 82, 275, 80, 81, + 82, 94, 95, 545, 77, 175, 407, 285, 92, 93, + 109, 181, 50, 51, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, - 200, 201, 79, 80, 81, 109, 108, 315, 316, 27, - 356, 14, 11, 108, 322, 73, 356, 12, 73, 18, - 13, 21, 21, 109, 23, 24, 24, 26, 27, 79, - 80, 81, 71, 24, 342, 343, 344, 345, 21, 376, - 29, 323, 15, 42, 43, 44, 45, 355, 473, 21, - 358, 359, 357, 27, 100, 45, 46, 47, 48, 58, - 477, 100, 52, 480, 54, 347, 77, 484, 485, 12, - 109, 110, 377, 108, 356, 27, 79, 80, 81, 79, - 80, 81, 13, 23, 392, 502, 503, 81, 23, 79, - 80, 81, 79, 80, 81, 512, 79, 80, 81, 407, - 101, 100, 23, 104, 105, 106, 107, 79, 80, 81, - 527, 23, 417, 23, 531, 532, 421, 109, 108, 64, - 65, 108, 17, 79, 80, 81, 509, 432, 24, 110, - 109, 439, 549, 132, 83, 12, 473, 108, 12, 447, - 139, 524, 525, 109, 12, 12, 563, 12, 93, 94, - 95, 96, 108, 536, 571, 24, 101, 64, 65, 104, - 105, 106, 107, 546, 547, 109, 0, 108, 21, 108, - 478, 479, 489, 77, 491, 108, 559, 11, 108, 13, - 14, 15, 108, 500, 64, 65, 108, 21, 95, 96, - 108, 496, 11, 11, 101, 12, 396, 104, 105, 106, - 107, 21, 510, 511, 79, 80, 81, 108, 21, 526, - 11, 45, 46, 47, 48, 109, 96, 108, 52, 108, - 54, 101, 108, 57, 104, 105, 106, 107, 75, 21, - 64, 65, 21, 108, 233, 108, 21, 545, 109, 79, - 80, 81, 442, 77, 561, 79, 80, 81, 108, 83, - 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, - 94, 95, 96, 16, 0, 64, 65, 101, 108, 74, - 104, 105, 106, 107, 108, 108, 108, 111, 14, 15, - 238, 239, 240, 241, 13, 21, 79, 80, 81, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 79, 80, - 81, 343, 101, 106, 510, 104, 105, 106, 107, 45, - 46, 47, 48, 564, 419, 108, 52, 277, 54, 248, - 371, 57, 452, 372, 323, 471, 156, 108, 64, 65, - 496, 356, 79, 80, 81, 225, -1, -1, -1, -1, - -1, 77, -1, 79, 80, 81, -1, 83, 84, 85, - 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 108, -1, 0, 1, 101, -1, -1, 104, 105, - 106, 107, 108, 10, 11, 111, 13, -1, -1, -1, - -1, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, -1, 30, 31, 32, 33, 34, 35, 36, + 200, 201, 80, 81, 82, 216, 217, 315, 316, 28, + 356, 74, 11, 109, 322, 12, 356, 21, 13, 18, + 21, 74, 21, 25, 23, 24, 101, 26, 27, 80, + 81, 82, 25, 21, 342, 343, 344, 345, 110, 376, + 30, 323, 15, 42, 43, 44, 45, 355, 473, 28, + 358, 359, 357, 36, 37, 46, 47, 48, 49, 58, + 477, 21, 53, 480, 55, 347, 78, 484, 485, 80, + 81, 82, 377, 109, 356, 12, 80, 81, 82, 80, + 81, 82, 89, 90, 392, 502, 503, 28, 13, 80, + 81, 82, 80, 81, 82, 512, 82, 24, 109, 407, + 24, 100, 24, 24, 24, 80, 81, 82, 17, 25, + 527, 111, 417, 84, 531, 532, 421, 109, 109, 12, + 80, 81, 82, 110, 12, 65, 509, 432, 110, 110, + 12, 439, 549, 132, 109, 12, 473, 12, 25, 447, + 139, 524, 525, 109, 109, 109, 563, 109, 80, 81, + 82, 110, 109, 536, 571, 109, 21, 97, 65, 66, + 109, 78, 102, 546, 547, 105, 106, 107, 108, 11, + 478, 479, 489, 11, 491, 12, 559, 109, 80, 81, + 82, 65, 66, 500, 91, 92, 93, 94, 95, 96, + 97, 496, 21, 21, 109, 102, 396, 11, 105, 106, + 107, 108, 510, 511, 80, 81, 82, 109, 109, 526, + 94, 95, 96, 97, 80, 81, 82, 109, 102, 76, + 110, 105, 106, 107, 108, 21, 21, 110, 0, 1, + 109, 109, 21, 109, 233, 109, 16, 545, 10, 11, + 75, 13, 442, 109, 561, 109, 18, 19, 20, 21, + 109, 23, 24, 25, 26, 27, 28, 29, 13, 31, + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, + 42, 43, 44, 45, 46, 47, 48, 49, 65, 66, + 106, 53, 54, 55, 56, 57, 510, 59, 60, 61, + 62, 63, 64, 343, 564, 67, 68, 69, 70, 71, + 72, 73, 89, 90, 91, 92, 93, 94, 95, 96, + 97, 83, 80, 81, 82, 102, 277, 419, 105, 106, + 107, 108, 248, 371, 323, 372, 98, 99, 496, 101, + 471, 103, 104, 0, 1, 452, 156, -1, 110, 111, + 356, 109, -1, 10, 11, 225, 13, 238, 239, 240, + 241, 18, 19, 20, 21, -1, 23, 24, 25, 26, + 27, 28, 29, -1, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, - 47, 48, 64, 65, -1, 52, 53, 54, 55, 56, - -1, 58, 59, 60, 61, 62, 63, -1, -1, 66, - 67, 68, 69, 70, 71, 72, -1, 89, 90, 91, - 92, 93, 94, 95, 96, 82, -1, -1, -1, 101, - -1, -1, 104, 105, 106, 107, -1, 0, 1, -1, - 97, 98, -1, 100, -1, 102, 103, 10, 11, -1, - 13, -1, 109, 110, -1, 18, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, -1, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 64, 65, -1, 52, - 53, 54, 55, 56, -1, 58, 59, 60, 61, 62, - 63, -1, -1, 66, 67, 68, 69, 70, 71, 72, - -1, -1, 90, 91, 92, 93, 94, 95, 96, 82, - -1, -1, -1, 101, -1, -1, 104, 105, 106, 107, - -1, -1, 1, -1, 97, 98, -1, 100, -1, 102, - 103, 10, 11, 12, 13, -1, 109, 110, -1, 18, - 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - -1, 30, 31, 32, 33, 34, 35, 36, 37, 38, - 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, - 64, 65, -1, 52, 53, 54, 55, 56, -1, 58, - 59, 60, 61, 62, 63, -1, -1, 66, 67, 68, - 69, 70, 71, 72, -1, -1, -1, 91, 92, 93, - 94, 95, 96, 82, -1, -1, -1, 101, -1, -1, - 104, 105, 106, 107, -1, -1, 1, -1, 97, 98, - -1, 100, -1, 102, 103, 10, 11, 12, 13, -1, - 109, 110, -1, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 28, -1, 30, 31, 32, 33, 34, - 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 64, -1, -1, 52, 53, 54, - 55, 56, -1, 58, 59, 60, 61, 62, 63, -1, - -1, 66, 67, 68, 69, 70, 71, 72, 3, 4, - 5, 6, 7, 8, 9, -1, 96, 82, -1, -1, - -1, 101, -1, -1, 104, 105, 106, 107, -1, -1, - 1, -1, 97, 98, -1, 100, -1, 102, 103, 10, - 11, 12, 13, -1, 109, 110, -1, 18, 19, 20, - 21, 22, 23, 24, 25, 26, 27, 28, -1, 30, - 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, -1, -1, - -1, 52, 53, 54, 55, 56, -1, 58, 59, 60, - 61, 62, 63, -1, -1, 66, 67, 68, 69, 70, - 71, 72, -1, -1, 96, -1, -1, -1, -1, 101, - -1, 82, 104, 105, 106, 107, -1, -1, -1, -1, - -1, -1, -1, -1, 1, -1, 97, 98, -1, 100, - -1, 102, 103, 10, 11, 12, 13, -1, 109, 110, - -1, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, -1, 30, 31, 32, 33, 34, 35, 36, + 47, 48, 49, 65, 66, -1, 53, 54, 55, 56, + 57, -1, 59, 60, 61, 62, 63, 64, -1, -1, + 67, 68, 69, 70, 71, 72, 73, -1, 90, 91, + 92, 93, 94, 95, 96, 97, 83, -1, -1, -1, + 102, -1, -1, 105, 106, 107, 108, -1, -1, 1, + -1, 98, 99, -1, 101, -1, 103, 104, 10, 11, + 12, 13, -1, 110, 111, -1, 18, 19, 20, 21, + -1, 23, 24, 25, 26, 27, 28, 29, -1, 31, + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, + 42, 43, 44, 45, 46, 47, 48, 49, 65, 66, + -1, 53, 54, 55, 56, 57, -1, 59, 60, 61, + 62, 63, 64, -1, -1, 67, 68, 69, 70, 71, + 72, 73, -1, -1, -1, 92, 93, 94, 95, 96, + 97, 83, -1, -1, -1, 102, -1, -1, 105, 106, + 107, 108, -1, -1, 1, -1, 98, 99, -1, 101, + -1, 103, 104, 10, 11, 12, 13, -1, 110, 111, + -1, 18, 19, 20, 21, -1, 23, 24, 25, 26, + 27, 28, 29, -1, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, - 47, 48, -1, -1, -1, 52, 53, 54, 55, 56, - -1, 58, 59, 60, 61, 62, 63, -1, -1, 66, - 67, 68, 69, 70, 71, 72, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 82, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, - 97, 98, -1, 100, -1, 102, 103, 10, 11, 12, - 13, -1, 109, 110, -1, 18, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, -1, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, -1, -1, -1, 52, - 53, 54, 55, 56, -1, 58, 59, 60, 61, 62, - 63, -1, -1, 66, 67, 68, 69, 70, 71, 72, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 82, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 1, -1, 97, 98, -1, 100, -1, 102, - 103, 10, 11, -1, 13, -1, 109, 110, -1, 18, - 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - -1, 30, 31, 32, 33, 34, 35, 36, 37, 38, - 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, - -1, -1, -1, 52, 53, 54, 55, 56, -1, 58, - 59, 60, 61, 62, 63, -1, -1, 66, 67, 68, - 69, 70, 71, 72, -1, -1, 75, -1, -1, -1, - -1, -1, -1, 82, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 1, -1, 97, 98, - -1, 100, -1, 102, 103, 10, 11, -1, 13, -1, - 109, 110, -1, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 28, -1, 30, 31, 32, 33, 34, - 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, -1, -1, -1, 52, 53, 54, - 55, 56, -1, 58, 59, 60, 61, 62, 63, -1, - -1, 66, 67, 68, 69, 70, 71, 72, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 82, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 1, -1, 97, 98, -1, 100, -1, 102, 103, 10, - 11, -1, 13, -1, 109, 110, -1, 18, 19, 20, - 21, 22, 23, 24, 25, 26, 27, 28, -1, 30, - 31, 32, 33, 34, 35, 36, -1, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, -1, -1, - -1, 52, 53, 54, 55, 56, -1, 58, 59, 60, - 61, 62, 63, -1, -1, 66, 67, 68, 69, 70, - 71, 72, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 82, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 1, -1, 97, 98, -1, 100, - -1, 102, 103, 10, -1, -1, 13, -1, 109, 110, - -1, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, -1, 30, 31, 32, 33, 34, 35, -1, - -1, -1, -1, -1, 41, 42, 45, 46, 47, 48, - -1, -1, -1, 52, -1, 54, -1, -1, -1, 56, - -1, -1, 59, 60, 61, 62, 63, -1, -1, 66, - 67, 68, 69, 70, 71, 72, -1, -1, -1, -1, - 79, 80, 81, -1, -1, 82, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, - 97, 98, -1, 100, -1, 102, 103, 10, -1, -1, - 13, -1, 109, 110, -1, 18, 19, 20, -1, 22, - 23, 24, 25, 26, 27, 28, -1, 30, 31, 32, - 33, 34, 35, -1, -1, -1, -1, -1, 41, 42, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 56, -1, -1, 59, 60, 61, 62, - 63, -1, -1, 66, 67, 68, 69, 70, 71, 72, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 82, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 97, 98, -1, 100, -1, 102, - 103, 10, 11, -1, 13, 108, 109, 110, -1, 18, - 19, 20, -1, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, -1, -1, -1, - -1, -1, 41, 42, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 56, -1, -1, - 59, 60, 61, 62, 63, -1, -1, 66, 67, 68, - 69, 70, 71, 72, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 82, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 97, 98, - -1, 100, -1, 102, 103, 10, -1, -1, 13, 14, - 109, 110, -1, 18, 19, 20, -1, 22, 23, 24, - 25, 26, 27, 28, -1, 30, 31, 32, 33, 34, - 35, -1, -1, -1, -1, -1, 41, 42, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 56, -1, -1, 59, 60, 61, 62, 63, -1, - -1, 66, 67, 68, 69, 70, 71, 72, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 82, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 97, 98, -1, 100, -1, 102, 103, 10, - 11, -1, 13, -1, 109, 110, -1, 18, 19, 20, - -1, 22, 23, 24, 25, 26, 27, 28, -1, 30, - 31, 32, 33, 34, 35, -1, -1, -1, -1, -1, - 41, 42, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 56, -1, -1, 59, 60, - 61, 62, 63, -1, -1, 66, 67, 68, 69, 70, - 71, 72, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 82, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 97, 98, -1, 100, - -1, 102, 103, 10, -1, -1, 13, -1, 109, 110, - -1, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, -1, 30, 31, 32, 33, 34, 35, -1, - -1, -1, -1, -1, 41, 42, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 56, - -1, -1, 59, 60, 61, 62, 63, -1, -1, 66, - 67, 68, 69, 70, 71, 72, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 82, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 97, 98, -1, 100, -1, 102, 103, 10, -1, -1, - 13, -1, 109, 110, -1, 18, 19, 20, -1, 22, - 23, 24, 25, 26, 27, 28, -1, 30, 31, 32, - 33, 34, 35, -1, -1, -1, -1, -1, 41, 42, + 47, 48, 49, 65, 66, -1, 53, 54, 55, 56, + 57, -1, 59, 60, 61, 62, 63, 64, -1, -1, + 67, 68, 69, 70, 71, 72, 73, 3, 4, 5, + 6, 7, 8, 9, 96, 97, 83, -1, -1, -1, + 102, -1, -1, 105, 106, 107, 108, -1, -1, 1, + -1, 98, 99, -1, 101, -1, 103, 104, 10, 11, + 12, 13, -1, 110, 111, -1, 18, 19, 20, 21, + -1, 23, 24, 25, 26, 27, 28, 29, -1, 31, + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, + 42, 43, 44, 45, 46, 47, 48, 49, 65, 66, + -1, 53, 54, 55, 56, 57, -1, 59, 60, 61, + 62, 63, 64, -1, -1, 67, 68, 69, 70, 71, + 72, 73, 102, -1, -1, 105, 106, 107, 108, -1, + 97, 83, -1, -1, -1, 102, -1, -1, 105, 106, + 107, 108, -1, -1, 1, -1, 98, 99, -1, 101, + -1, 103, 104, 10, 11, 12, 13, -1, 110, 111, + -1, 18, 19, 20, 21, -1, 23, 24, 25, 26, + 27, 28, 29, -1, 31, 32, 33, 34, 35, 36, + 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, + 47, 48, 49, -1, -1, -1, 53, 54, 55, 56, + 57, -1, 59, 60, 61, 62, 63, 64, -1, -1, + 67, 68, 69, 70, 71, 72, 73, -1, -1, 97, + -1, -1, -1, -1, 102, -1, 83, 105, 106, 107, + 108, -1, -1, -1, -1, -1, -1, -1, -1, 1, + -1, 98, 99, -1, 101, -1, 103, 104, 10, 11, + 12, 13, -1, 110, 111, -1, 18, 19, 20, 21, + -1, 23, 24, 25, 26, 27, 28, 29, -1, 31, + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, + 42, 43, 44, 45, 46, 47, 48, 49, -1, -1, + -1, 53, 54, 55, 56, 57, -1, 59, 60, 61, + 62, 63, 64, -1, -1, 67, 68, 69, 70, 71, + 72, 73, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 83, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 1, -1, 98, 99, -1, 101, + -1, 103, 104, 10, 11, -1, 13, -1, 110, 111, + -1, 18, 19, 20, 21, -1, 23, 24, 25, 26, + 27, 28, 29, -1, 31, 32, 33, 34, 35, 36, + 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, + 47, 48, 49, -1, -1, -1, 53, 54, 55, 56, + 57, -1, 59, 60, 61, 62, 63, 64, -1, -1, + 67, 68, 69, 70, 71, 72, 73, -1, -1, 76, + -1, -1, -1, -1, -1, -1, 83, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, + -1, 98, 99, -1, 101, -1, 103, 104, 10, 11, + -1, 13, -1, 110, 111, -1, 18, 19, 20, 21, + -1, 23, 24, 25, 26, 27, 28, 29, -1, 31, + 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, + 42, 43, 44, 45, 46, 47, 48, 49, -1, -1, + -1, 53, 54, 55, 56, 57, -1, 59, 60, 61, + 62, 63, 64, -1, -1, 67, 68, 69, 70, 71, + 72, 73, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 83, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 1, -1, 98, 99, -1, 101, + -1, 103, 104, 10, 11, -1, 13, -1, 110, 111, + -1, 18, 19, 20, 21, -1, 23, 24, 25, 26, + 27, 28, 29, -1, 31, 32, 33, 34, 35, 36, + 37, -1, 39, 40, 41, 42, 43, 44, 45, 46, + 47, 48, 49, -1, -1, -1, 53, 54, 55, 56, + 57, -1, 59, 60, 61, 62, 63, 64, -1, -1, + 67, 68, 69, 70, 71, 72, 73, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 83, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, + -1, 98, 99, -1, 101, -1, 103, 104, 10, -1, + -1, 13, -1, 110, 111, -1, 18, 19, 20, 21, + -1, 23, 24, 25, 26, 27, 28, 29, -1, 31, + 32, 33, 34, 35, 36, -1, -1, -1, -1, -1, + 42, 43, 46, 47, 48, 49, -1, -1, -1, 53, + -1, 55, -1, -1, -1, 57, -1, -1, 60, 61, + 62, 63, 64, -1, -1, 67, 68, 69, 70, 71, + 72, 73, -1, -1, -1, -1, 80, 81, 82, -1, + -1, 83, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 1, -1, 98, 99, -1, 101, + -1, 103, 104, 10, -1, -1, 13, -1, 110, 111, + -1, 18, 19, 20, -1, -1, 23, 24, 25, 26, + 27, 28, 29, -1, 31, 32, 33, 34, 35, 36, + -1, -1, -1, -1, -1, 42, 43, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 56, -1, -1, 59, 60, 61, 62, - 63, -1, -1, 66, 67, 68, 69, 70, 71, 72, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 82, + 57, -1, -1, 60, 61, 62, 63, 64, -1, 0, + 67, 68, 69, 70, 71, 72, 73, -1, -1, -1, + 11, -1, 13, 14, 15, -1, 83, -1, -1, -1, + 21, 22, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 98, 99, -1, 101, -1, 103, 104, -1, -1, + -1, -1, 109, 110, 111, 46, 47, 48, 49, -1, + -1, -1, 53, -1, 55, -1, -1, 58, -1, -1, + -1, -1, -1, -1, 65, 66, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 78, -1, 80, + 81, 82, -1, 84, 85, 86, 87, 88, 89, 90, + 91, 92, 93, 94, 95, 96, 97, 0, -1, -1, + -1, 102, -1, -1, 105, 106, 107, 108, 109, -1, + -1, 14, 15, -1, -1, -1, -1, -1, 21, 22, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 97, 98, -1, 100, -1, 102, - 103, 10, -1, -1, 13, 108, 109, 110, -1, 18, - 19, 20, -1, 22, 23, 24, 25, 26, 27, 28, - -1, 30, 31, 32, 33, 34, 35, -1, -1, -1, - -1, -1, 41, 42, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 56, -1, -1, - 59, 60, 61, 62, 63, -1, -1, 66, 67, 68, - 69, 70, 71, 72, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 82, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 97, 98, - -1, 100, -1, 102, 103, 10, -1, -1, 13, 108, - 109, 110, -1, 18, 19, 20, -1, 22, 23, 24, - 25, 26, 27, 28, -1, 30, 31, 32, 33, 34, - 35, -1, -1, -1, -1, -1, 41, 42, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 56, -1, -1, 59, 60, 61, 62, 63, -1, - -1, 66, 67, 68, 69, 70, 71, 72, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 82, -1, -1, + -1, -1, -1, 46, 47, 48, 49, -1, -1, -1, + 53, -1, 55, -1, -1, 58, -1, -1, -1, -1, + -1, -1, 65, 66, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 78, -1, 80, 81, 82, + -1, 84, 85, 86, 87, 88, 89, 90, 91, 92, + 93, 94, 95, 96, 97, -1, -1, -1, -1, 102, + -1, -1, 105, 106, 107, 108, 109, 10, 11, -1, + 13, -1, -1, -1, -1, 18, 19, 20, -1, -1, + 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, + 33, 34, 35, 36, -1, -1, -1, -1, -1, 42, + 43, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 57, -1, -1, 60, 61, 62, + 63, 64, -1, -1, 67, 68, 69, 70, 71, 72, + 73, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 83, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 98, 99, -1, 101, -1, + 103, 104, 10, -1, -1, 13, 14, 110, 111, -1, + 18, 19, 20, -1, -1, 23, 24, 25, 26, 27, + 28, 29, -1, 31, 32, 33, 34, 35, 36, -1, + -1, -1, -1, -1, 42, 43, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 57, + -1, -1, 60, 61, 62, 63, 64, -1, -1, 67, + 68, 69, 70, 71, 72, 73, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 83, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 97, 98, -1, 100, -1, 102, 103, 10, - -1, -1, 13, 108, 109, 110, -1, 18, 19, 20, - -1, 22, 23, 24, 25, 26, 27, 28, -1, 30, - 31, 32, 33, 34, 35, -1, -1, -1, -1, -1, - 41, 42, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 56, -1, -1, 59, 60, - 61, 62, 63, -1, -1, 66, 67, 68, 69, 70, - 71, 72, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 82, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 97, 98, -1, 100, - -1, 102, 103, 10, -1, -1, 13, 108, 109, 110, - -1, 18, 19, 20, -1, 22, 23, 24, 25, 26, - 27, 28, -1, 30, 31, 32, 33, 34, 35, -1, - -1, -1, -1, -1, 41, 42, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 56, - -1, -1, 59, 60, 61, 62, 63, -1, -1, 66, - 67, 68, 69, 70, 71, 72, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 82, -1, -1, -1, -1, + 98, 99, -1, 101, -1, 103, 104, 10, 11, -1, + 13, -1, 110, 111, -1, 18, 19, 20, -1, -1, + 23, 24, 25, 26, 27, 28, 29, -1, 31, 32, + 33, 34, 35, 36, -1, -1, -1, -1, -1, 42, + 43, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 57, -1, -1, 60, 61, 62, + 63, 64, -1, -1, 67, 68, 69, 70, 71, 72, + 73, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 83, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 98, 99, -1, 101, -1, + 103, 104, 10, -1, -1, 13, -1, 110, 111, -1, + 18, 19, 20, 21, -1, 23, 24, 25, 26, 27, + 28, 29, -1, 31, 32, 33, 34, 35, 36, -1, + -1, -1, -1, -1, 42, 43, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 57, + -1, -1, 60, 61, 62, 63, 64, -1, -1, 67, + 68, 69, 70, 71, 72, 73, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 83, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 97, 98, -1, 100, -1, 102, 103, 10, -1, -1, - 13, 108, 109, 110, -1, 18, 19, 20, -1, 22, - 23, 24, 25, 26, 27, 28, -1, 30, 31, 32, - 33, 34, 35, -1, -1, -1, -1, -1, 41, 42, + 98, 99, -1, 101, -1, 103, 104, 10, -1, -1, + 13, -1, 110, 111, -1, 18, 19, 20, -1, -1, + 23, 24, 25, 26, 27, 28, 29, -1, 31, 32, + 33, 34, 35, 36, -1, -1, -1, -1, -1, 42, + 43, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 57, -1, -1, 60, 61, 62, + 63, 64, -1, -1, 67, 68, 69, 70, 71, 72, + 73, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 83, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 98, 99, -1, 101, -1, + 103, 104, 10, -1, -1, 13, 109, 110, 111, -1, + 18, 19, 20, -1, -1, 23, 24, 25, 26, 27, + 28, 29, -1, 31, 32, 33, 34, 35, 36, -1, + -1, -1, -1, -1, 42, 43, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 57, + -1, -1, 60, 61, 62, 63, 64, -1, -1, 67, + 68, 69, 70, 71, 72, 73, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 83, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 56, -1, -1, 59, 60, 61, 62, - 63, -1, -1, 66, 67, 68, 69, 70, 71, 72, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 82, + 98, 99, -1, 101, -1, 103, 104, 10, -1, -1, + 13, 109, 110, 111, -1, 18, 19, 20, -1, -1, + 23, 24, 25, 26, 27, 28, 29, -1, 31, 32, + 33, 34, 35, 36, -1, -1, -1, -1, -1, 42, + 43, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 57, -1, -1, 60, 61, 62, + 63, 64, -1, -1, 67, 68, 69, 70, 71, 72, + 73, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 83, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 98, 99, -1, 101, -1, + 103, 104, 10, -1, -1, 13, 109, 110, 111, -1, + 18, 19, 20, -1, -1, 23, 24, 25, 26, 27, + 28, 29, -1, 31, 32, 33, 34, 35, 36, -1, + -1, -1, -1, -1, 42, 43, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 57, + -1, -1, 60, 61, 62, 63, 64, -1, -1, 67, + 68, 69, 70, 71, 72, 73, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 83, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 97, 98, -1, 100, -1, 102, - 103, 10, -1, -1, 13, 108, 109, 110, -1, 18, - 19, 20, -1, 22, 23, 24, 25, 26, 27, 28, - -1, 30, 31, 32, 33, 34, 35, -1, -1, -1, - -1, -1, 41, 42, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 56, -1, -1, - 59, 60, 61, 62, 63, -1, -1, 66, 67, 68, - 69, 70, 71, 72, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 82, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 97, 98, - -1, 100, -1, 102, 103, 10, -1, -1, 13, 108, - 109, 110, -1, 18, 19, 20, -1, 22, 23, 24, - 25, 26, 27, 28, -1, 30, 31, 32, 33, 34, - 35, -1, -1, -1, -1, -1, 41, 42, -1, -1, + 98, 99, -1, 101, -1, 103, 104, 10, -1, -1, + 13, 109, 110, 111, -1, 18, 19, 20, -1, -1, + 23, 24, 25, 26, 27, 28, 29, -1, 31, 32, + 33, 34, 35, 36, -1, -1, -1, -1, -1, 42, + 43, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 57, -1, -1, 60, 61, 62, + 63, 64, -1, -1, 67, 68, 69, 70, 71, 72, + 73, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 83, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 98, 99, -1, 101, -1, + 103, 104, 10, -1, -1, 13, 109, 110, 111, -1, + 18, 19, 20, -1, -1, 23, 24, 25, 26, 27, + 28, 29, -1, 31, 32, 33, 34, 35, 36, -1, + -1, -1, -1, -1, 42, 43, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 57, + -1, -1, 60, 61, 62, 63, 64, -1, -1, 67, + 68, 69, 70, 71, 72, 73, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 83, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 56, -1, -1, 59, 60, 61, 62, 63, -1, - -1, 66, 67, 68, 69, 70, 71, 72, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 82, -1, -1, + 98, 99, -1, 101, -1, 103, 104, 10, -1, -1, + 13, 109, 110, 111, -1, 18, 19, 20, -1, -1, + 23, 24, 25, 26, 27, 28, 29, -1, 31, 32, + 33, 34, 35, 36, -1, -1, -1, -1, -1, 42, + 43, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 57, -1, -1, 60, 61, 62, + 63, 64, -1, -1, 67, 68, 69, 70, 71, 72, + 73, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 83, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 98, 99, -1, 101, -1, + 103, 104, 10, -1, -1, 13, 109, 110, 111, -1, + 18, 19, 20, -1, -1, 23, 24, 25, 26, 27, + 28, 29, -1, 31, 32, 33, 34, 35, 36, -1, + -1, -1, -1, -1, 42, 43, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 57, + -1, -1, 60, 61, 62, 63, 64, -1, -1, 67, + 68, 69, 70, 71, 72, 73, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 83, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 97, 98, -1, 100, -1, 102, 103, 10, - -1, -1, 13, -1, 109, 110, -1, 18, 19, 20, - -1, 22, 23, 24, 25, 26, 27, 28, -1, 30, - 31, 32, 33, 34, 35, -1, -1, -1, -1, -1, - 41, 42, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 56, -1, -1, 59, 60, - 61, 62, 63, -1, -1, 66, 67, 68, 69, 70, - 71, 72, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 82, -1, -1, 57, -1, -1, -1, -1, -1, - -1, 64, 65, -1, -1, -1, 97, 98, -1, 100, - -1, 102, 103, -1, -1, -1, -1, -1, 109, 110, - 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, - 93, 94, 95, 96, -1, -1, -1, -1, 101, 57, - -1, 104, 105, 106, 107, -1, 64, 65, -1, -1, + 98, 99, -1, 101, -1, 103, 104, 10, -1, -1, + 13, -1, 110, 111, -1, 18, 19, 20, -1, -1, + 23, 24, 25, 26, 27, 28, 29, -1, 31, 32, + 33, 34, 35, 36, -1, -1, -1, -1, -1, 42, + 43, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 57, -1, -1, 60, 61, 62, + 63, 64, -1, -1, 67, 68, 69, 70, 71, 72, + 73, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 83, -1, -1, 58, -1, -1, -1, -1, -1, -1, + 65, 66, -1, -1, -1, 98, 99, -1, 101, -1, + 103, 104, -1, -1, -1, -1, -1, 110, 111, 84, + 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, + 95, 96, 97, -1, -1, -1, -1, 102, 58, -1, + 105, 106, 107, 108, -1, 65, 66, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 83, 84, -1, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, -1, - -1, -1, -1, 101, 57, -1, 104, 105, 106, 107, - -1, 64, 65, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 84, 85, -1, 87, 88, 89, + 90, 91, 92, 93, 94, 95, 96, 97, -1, -1, + -1, -1, 102, 58, -1, 105, 106, 107, 108, -1, + 65, 66, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 84, -1, 86, 87, 88, 89, 90, 91, 92, - 93, 94, 95, 96, -1, -1, -1, -1, 101, 57, - -1, 104, 105, 106, 107, -1, 64, 65, -1, -1, + 85, -1, 87, 88, 89, 90, 91, 92, 93, 94, + 95, 96, 97, -1, -1, -1, -1, 102, 58, -1, + 105, 106, 107, 108, -1, 65, 66, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, -1, - -1, -1, -1, 101, -1, -1, 104, 105, 106, 107 + -1, -1, -1, -1, -1, -1, -1, 87, 88, 89, + 90, 91, 92, 93, 94, 95, 96, 97, -1, -1, + -1, -1, 102, -1, -1, 105, 106, 107, 108 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing @@ -994,62 +1008,62 @@ static const yytype_uint8 yystos[] = { 0, 3, 4, 5, 6, 7, 8, 9, 113, 114, 115, 116, 117, 118, 119, 120, 0, 123, 10, 13, - 18, 19, 20, 22, 23, 24, 25, 26, 27, 28, - 30, 31, 32, 33, 34, 35, 41, 42, 56, 59, - 60, 61, 62, 63, 66, 67, 68, 69, 70, 71, - 72, 82, 97, 98, 100, 102, 103, 109, 110, 174, + 18, 19, 20, 23, 24, 25, 26, 27, 28, 29, + 31, 32, 33, 34, 35, 36, 42, 43, 57, 60, + 61, 62, 63, 64, 67, 68, 69, 70, 71, 72, + 73, 83, 98, 99, 101, 103, 104, 110, 111, 174, 175, 176, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 190, 193, 199, 200, 201, 202, 203, 204, - 205, 206, 207, 11, 121, 1, 21, 36, 38, 39, - 40, 43, 44, 45, 46, 47, 48, 52, 53, 54, - 55, 58, 121, 130, 141, 174, 37, 128, 129, 130, - 126, 168, 169, 126, 24, 29, 121, 200, 208, 14, + 205, 206, 207, 11, 121, 1, 21, 37, 39, 40, + 41, 44, 45, 46, 47, 48, 49, 53, 54, 55, + 56, 59, 121, 130, 141, 174, 38, 128, 129, 130, + 126, 168, 169, 126, 25, 30, 121, 200, 208, 14, 174, 188, 208, 188, 208, 208, 208, 208, 189, 13, - 109, 188, 152, 152, 152, 188, 109, 109, 76, 109, - 121, 188, 24, 175, 192, 200, 208, 208, 121, 188, - 21, 174, 24, 29, 154, 188, 100, 109, 191, 200, - 201, 202, 188, 175, 188, 188, 188, 188, 188, 108, - 174, 208, 79, 80, 81, 15, 11, 13, 109, 93, - 94, 93, 91, 92, 91, 57, 64, 65, 83, 84, - 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 101, 104, 105, 106, 107, 109, 11, 13, 11, - 13, 11, 13, 11, 123, 153, 154, 154, 24, 151, - 109, 109, 109, 109, 71, 100, 109, 198, 200, 109, - 109, 121, 21, 51, 143, 21, 45, 46, 47, 48, - 52, 54, 129, 130, 128, 19, 22, 110, 159, 160, - 162, 163, 164, 165, 14, 192, 109, 76, 174, 108, - 121, 27, 155, 73, 156, 108, 108, 174, 193, 193, - 208, 175, 12, 21, 192, 109, 188, 191, 200, 201, - 202, 108, 174, 73, 157, 13, 108, 174, 174, 174, - 188, 174, 174, 108, 174, 188, 188, 188, 188, 188, + 110, 188, 152, 152, 152, 188, 110, 110, 77, 110, + 121, 188, 25, 175, 192, 200, 208, 208, 121, 188, + 21, 174, 25, 30, 154, 188, 101, 110, 191, 200, + 201, 202, 188, 175, 188, 188, 188, 188, 188, 109, + 174, 208, 80, 81, 82, 15, 11, 13, 110, 94, + 95, 94, 92, 93, 92, 58, 65, 66, 84, 85, + 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, + 97, 102, 105, 106, 107, 108, 110, 11, 13, 11, + 13, 11, 13, 11, 123, 153, 154, 154, 25, 151, + 110, 110, 110, 110, 72, 101, 110, 198, 200, 110, + 110, 121, 21, 52, 143, 21, 46, 47, 48, 49, + 53, 55, 129, 130, 128, 19, 23, 111, 159, 160, + 162, 163, 164, 165, 14, 192, 110, 77, 174, 109, + 121, 28, 155, 74, 156, 109, 109, 174, 193, 193, + 208, 175, 12, 21, 192, 110, 188, 191, 200, 201, + 202, 109, 174, 74, 157, 13, 109, 174, 174, 174, + 188, 174, 174, 109, 174, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, - 188, 188, 188, 188, 10, 11, 13, 19, 22, 23, - 25, 66, 109, 110, 178, 200, 108, 174, 174, 174, - 174, 174, 174, 174, 174, 126, 24, 150, 151, 151, - 24, 133, 123, 123, 123, 123, 100, 123, 71, 196, - 197, 199, 200, 201, 202, 123, 123, 109, 123, 123, - 121, 140, 174, 147, 174, 140, 140, 140, 140, 29, - 158, 158, 15, 193, 175, 14, 177, 156, 27, 123, - 173, 108, 77, 108, 174, 12, 108, 174, 157, 108, - 27, 174, 13, 21, 14, 108, 85, 23, 174, 174, - 23, 23, 23, 23, 108, 174, 23, 109, 108, 21, + 188, 188, 188, 188, 10, 11, 13, 19, 23, 24, + 26, 67, 110, 111, 178, 200, 109, 174, 174, 174, + 174, 174, 174, 174, 174, 126, 25, 150, 151, 151, + 25, 133, 123, 123, 123, 123, 101, 123, 72, 196, + 197, 199, 200, 201, 202, 123, 123, 110, 123, 123, + 121, 140, 174, 147, 174, 140, 140, 140, 140, 30, + 158, 158, 15, 193, 175, 14, 177, 156, 28, 123, + 173, 109, 78, 109, 174, 12, 109, 174, 157, 109, + 28, 174, 13, 21, 14, 109, 86, 24, 174, 174, + 24, 24, 24, 24, 109, 174, 24, 110, 109, 21, 14, 21, 14, 21, 14, 21, 12, 17, 122, 131, - 132, 11, 21, 24, 146, 174, 147, 148, 174, 148, - 195, 200, 109, 141, 145, 148, 149, 174, 196, 123, - 148, 148, 83, 161, 161, 163, 108, 111, 194, 192, - 123, 171, 109, 166, 167, 108, 108, 14, 174, 12, - 188, 21, 14, 108, 193, 12, 12, 12, 12, 123, - 155, 156, 123, 24, 108, 108, 108, 108, 109, 123, - 108, 21, 136, 148, 108, 108, 188, 174, 77, 11, - 168, 11, 14, 12, 108, 21, 156, 21, 172, 173, + 132, 11, 21, 25, 146, 174, 147, 148, 174, 148, + 195, 200, 110, 141, 145, 148, 149, 174, 196, 123, + 148, 148, 84, 161, 161, 163, 109, 22, 194, 192, + 123, 171, 110, 166, 167, 109, 109, 14, 174, 12, + 188, 21, 14, 109, 193, 12, 12, 12, 12, 123, + 155, 156, 123, 25, 109, 109, 109, 109, 110, 123, + 109, 21, 136, 148, 109, 109, 188, 174, 78, 11, + 168, 11, 14, 12, 109, 21, 156, 21, 172, 173, 137, 192, 144, 144, 11, 124, 124, 148, 148, 124, - 134, 109, 108, 124, 124, 126, 108, 126, 75, 21, - 170, 171, 126, 21, 124, 124, 125, 49, 50, 142, - 142, 108, 108, 143, 146, 148, 124, 12, 12, 127, - 12, 143, 143, 126, 124, 109, 124, 124, 21, 108, - 143, 21, 27, 138, 12, 148, 143, 143, 135, 124, - 16, 74, 139, 108, 144, 143, 126, 124, 149, 75, - 142, 108, 124 + 134, 110, 109, 124, 124, 126, 109, 126, 76, 21, + 170, 171, 126, 21, 124, 124, 125, 50, 51, 142, + 142, 109, 109, 143, 146, 148, 124, 12, 12, 127, + 12, 143, 143, 126, 124, 110, 124, 124, 21, 109, + 143, 21, 28, 138, 12, 148, 143, 143, 135, 124, + 16, 75, 139, 109, 144, 143, 126, 124, 149, 76, + 142, 109, 124 }; /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ @@ -1134,21 +1148,21 @@ static const toketypes yy_type_tab[] = 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_ival, toketype_ival, toketype_ival, 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_opval, - toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, toketype_ival, + toketype_opval, 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_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_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_ival, toketype_opval, toketype_ival, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_opval, toketype_ival, toketype_ival, toketype_ival, toketype_ival, @@ -1168,6 +1182,6 @@ static const toketypes yy_type_tab[] = }; /* Generated from: - * d555d290bc7bf474791b8fd853e445933bb75ff8ff453aca9f7ff3b05b614566 perly.y + * 7422f72c5dfff4e2c8cd87e56299968b4a39681f2cc3b81767c0ccd50b4e2054 perly.y * acf1cbfd2545faeaaa58b1cf0cf9d7f98b5be0752eb7a54528ef904a9e2e1ca7 regen_perly.pl * ex: set ro: */ @@ -57,6 +57,7 @@ %token <ival> PERLY_PERCENT_SIGN %token <ival> PERLY_PLUS %token <ival> PERLY_SEMICOLON +%token <ival> PERLY_SLASH %token <ival> PERLY_SNAIL %token <ival> PERLY_STAR @@ -1351,7 +1352,7 @@ optexpr: /* NULL */ optrepl: /* NULL */ { $$ = NULL; } - | '/' expr + | PERLY_SLASH expr { $$ = $expr; } ; @@ -402,6 +402,7 @@ static struct debug_tokens { DEBUG_TOKEN (IVAL, PERLY_PLUS), DEBUG_TOKEN (IVAL, PERLY_QUESTION_MARK), DEBUG_TOKEN (IVAL, PERLY_SEMICOLON), + DEBUG_TOKEN (IVAL, PERLY_SLASH), DEBUG_TOKEN (IVAL, PERLY_SNAIL), DEBUG_TOKEN (IVAL, PERLY_STAR), DEBUG_TOKEN (IVAL, PERLY_TILDE), @@ -2608,7 +2609,7 @@ S_sublex_done(pTHX) + PL_parser->herelines; PL_parser->herelines = 0; } - return '/'; + return PERLY_SLASH; } else { const line_t l = CopLINE(PL_curcop); |