In perl.git, the branch smartmatchtoo has been updated

<http://perl5.git.perl.org/perl.git/commitdiff/3775d436c2174ad4f638b142891de36b177b007d?hp=04eca4932e13bb4d6142487a84e96e6503d9d462>

- Log -----------------------------------------------------------------
commit 3775d436c2174ad4f638b142891de36b177b007d
Author: Tony Cook <t...@develop-help.com>
Date:   Mon Jul 13 17:07:53 2015 +1000

    add postfix when BLOCK
-----------------------------------------------------------------------

Summary of changes:
 perly.act       |  633 +++++++++++++-------------
 perly.h         |    2 +-
 perly.tab       | 1367 ++++++++++++++++++++++++++++---------------------------
 perly.y         |    4 +
 pod/perlsyn.pod |   26 ++
 t/op/switch.t   |   15 +
 6 files changed, 1051 insertions(+), 996 deletions(-)

diff --git a/perly.act b/perly.act
index cc80e69..c0d9eb8 100644
--- a/perly.act
+++ b/perly.act
@@ -590,26 +590,33 @@ case 2:
 
   case 68:
 #line 536 "perly.y"
+    { (yyval.opval) = newWHENOP(newUNOP(OP_NULL, OPf_SPECIAL, (ps[(3) - 
(3)].val.opval)),
+                                         op_scope((ps[(1) - (3)].val.opval)));
+                       }
+    break;
+
+  case 69:
+#line 540 "perly.y"
     { (ps[(3) - (3)].val.opval)->op_flags |= OPf_PARENS;
                          (yyval.opval) = newWHENOP((ps[(3) - (3)].val.opval), 
op_scope((ps[(1) - (3)].val.opval)));
                        }
     break;
 
-  case 69:
-#line 543 "perly.y"
+  case 70:
+#line 547 "perly.y"
     { (yyval.opval) = (OP*)NULL; }
     break;
 
-  case 70:
-#line 545 "perly.y"
+  case 71:
+#line 549 "perly.y"
     {
                          ((ps[(2) - (2)].val.opval))->op_flags |= OPf_PARENS;
                          (yyval.opval) = op_scope((ps[(2) - (2)].val.opval));
                        }
     break;
 
-  case 71:
-#line 550 "perly.y"
+  case 72:
+#line 554 "perly.y"
     { parser->copline = (line_t)(ps[(1) - (6)].val.ival);
                            (yyval.opval) = newCONDOP(0,
                                newSTATEOP(OPf_SPECIAL,NULL,(ps[(3) - 
(6)].val.opval)),
@@ -618,43 +625,38 @@ case 2:
                        }
     break;
 
-  case 72:
-#line 560 "perly.y"
+  case 73:
+#line 564 "perly.y"
     { (yyval.opval) = (OP*)NULL; }
     break;
 
-  case 73:
-#line 562 "perly.y"
+  case 74:
+#line 566 "perly.y"
     { (yyval.opval) = op_scope((ps[(2) - (2)].val.opval)); }
     break;
 
-  case 74:
-#line 567 "perly.y"
+  case 75:
+#line 571 "perly.y"
     { (yyval.ival) = (PL_min_intro_pending &&
                            PL_max_intro_pending >=  PL_min_intro_pending);
                          intro_my(); }
     break;
 
-  case 75:
-#line 573 "perly.y"
+  case 76:
+#line 577 "perly.y"
     { (yyval.opval) = (OP*)NULL; }
     break;
 
-  case 77:
-#line 579 "perly.y"
+  case 78:
+#line 583 "perly.y"
     { YYSTYPE tmplval;
                          (void)scan_num("1", &tmplval);
                          (yyval.opval) = tmplval.opval; }
     break;
 
-  case 79:
-#line 587 "perly.y"
-    { (yyval.opval) = invert(scalar((ps[(1) - (1)].val.opval))); }
-    break;
-
   case 80:
-#line 592 "perly.y"
-    { (yyval.opval) = (ps[(1) - (1)].val.opval); intro_my(); }
+#line 591 "perly.y"
+    { (yyval.opval) = invert(scalar((ps[(1) - (1)].val.opval))); }
     break;
 
   case 81:
@@ -668,65 +670,70 @@ case 2:
     break;
 
   case 83:
-#line 603 "perly.y"
-    { (yyval.opval) = (ps[(1) - (1)].val.opval); }
+#line 604 "perly.y"
+    { (yyval.opval) = (ps[(1) - (1)].val.opval); intro_my(); }
     break;
 
   case 84:
-#line 604 "perly.y"
-    { (yyval.opval) = (OP*)NULL; }
+#line 607 "perly.y"
+    { (yyval.opval) = (ps[(1) - (1)].val.opval); }
     break;
 
   case 85:
 #line 608 "perly.y"
+    { (yyval.opval) = (OP*)NULL; }
+    break;
+
+  case 86:
+#line 612 "perly.y"
     { (yyval.ival) = start_subparse(FALSE, 0);
                            SAVEFREESV(PL_compcv); }
     break;
 
-  case 86:
-#line 614 "perly.y"
+  case 87:
+#line 618 "perly.y"
     { (yyval.ival) = start_subparse(FALSE, CVf_ANON);
                            SAVEFREESV(PL_compcv); }
     break;
 
-  case 87:
-#line 619 "perly.y"
+  case 88:
+#line 623 "perly.y"
     { (yyval.ival) = start_subparse(TRUE, 0);
                            SAVEFREESV(PL_compcv); }
     break;
 
-  case 90:
-#line 630 "perly.y"
+  case 91:
+#line 634 "perly.y"
     { (yyval.opval) = (OP*)NULL; }
     break;
 
-  case 92:
-#line 636 "perly.y"
+  case 93:
+#line 640 "perly.y"
     { (yyval.opval) = (OP*)NULL; }
     break;
 
-  case 93:
-#line 638 "perly.y"
+  case 94:
+#line 642 "perly.y"
     { (yyval.opval) = (ps[(2) - (2)].val.opval); }
     break;
 
-  case 94:
-#line 640 "perly.y"
+  case 95:
+#line 644 "perly.y"
     { (yyval.opval) = (OP*)NULL; }
     break;
 
-  case 95:
-#line 645 "perly.y"
+  case 96:
+#line 649 "perly.y"
     { (yyval.opval) = (ps[(2) - (2)].val.opval); }
     break;
 
-  case 96:
-#line 647 "perly.y"
+  case 97:
+#line 651 "perly.y"
     { (yyval.opval) = (OP*)NULL; }
     break;
 
-  case 97:
-#line 652 "perly.y"
+  case 98:
+#line 656 "perly.y"
     {
                          /* We shouldn't get here otherwise */
                          assert(FEATURE_SIGNATURES_IS_ENABLED);
@@ -738,8 +745,8 @@ case 2:
                        }
     break;
 
-  case 98:
-#line 662 "perly.y"
+  case 99:
+#line 666 "perly.y"
     {
                          (yyval.opval) = op_append_list(OP_LINESEQ, (ps[(2) - 
(3)].val.opval),
                                newSTATEOP(0, NULL, sawparens(newNULLLIST())));
@@ -747,55 +754,55 @@ case 2:
                        }
     break;
 
-  case 100:
-#line 671 "perly.y"
+  case 101:
+#line 675 "perly.y"
     { (yyval.opval) = (OP*)NULL; }
     break;
 
-  case 101:
-#line 676 "perly.y"
+  case 102:
+#line 680 "perly.y"
     { (yyval.opval) = newLOGOP(OP_AND, 0, (ps[(1) - (3)].val.opval), (ps[(3) - 
(3)].val.opval)); }
     break;
 
-  case 102:
-#line 678 "perly.y"
+  case 103:
+#line 682 "perly.y"
     { (yyval.opval) = newLOGOP((ps[(2) - (3)].val.ival), 0, (ps[(1) - 
(3)].val.opval), (ps[(3) - (3)].val.opval)); }
     break;
 
-  case 103:
-#line 680 "perly.y"
+  case 104:
+#line 684 "perly.y"
     { (yyval.opval) = newLOGOP(OP_DOR, 0, (ps[(1) - (3)].val.opval), (ps[(3) - 
(3)].val.opval)); }
     break;
 
-  case 105:
-#line 686 "perly.y"
+  case 106:
+#line 690 "perly.y"
     { (yyval.opval) = (ps[(1) - (2)].val.opval); }
     break;
 
-  case 106:
-#line 688 "perly.y"
+  case 107:
+#line 692 "perly.y"
     {
                          OP* term = (ps[(3) - (3)].val.opval);
                          (yyval.opval) = op_append_elem(OP_LIST, (ps[(1) - 
(3)].val.opval), term);
                        }
     break;
 
-  case 108:
-#line 697 "perly.y"
+  case 109:
+#line 701 "perly.y"
     { (yyval.opval) = op_convert_list((ps[(1) - (3)].val.ival), OPf_STACKED,
                                op_prepend_elem(OP_LIST, newGVREF((ps[(1) - 
(3)].val.ival),(ps[(2) - (3)].val.opval)), (ps[(3) - (3)].val.opval)) );
                        }
     break;
 
-  case 109:
-#line 701 "perly.y"
+  case 110:
+#line 705 "perly.y"
     { (yyval.opval) = op_convert_list((ps[(1) - (5)].val.ival), OPf_STACKED,
                                op_prepend_elem(OP_LIST, newGVREF((ps[(1) - 
(5)].val.ival),(ps[(3) - (5)].val.opval)), (ps[(4) - (5)].val.opval)) );
                        }
     break;
 
-  case 110:
-#line 705 "perly.y"
+  case 111:
+#line 709 "perly.y"
     { (yyval.opval) = op_convert_list(OP_ENTERSUB, OPf_STACKED,
                                op_append_elem(OP_LIST,
                                    op_prepend_elem(OP_LIST, scalar((ps[(1) - 
(6)].val.opval)), (ps[(5) - (6)].val.opval)),
@@ -803,16 +810,16 @@ case 2:
                        }
     break;
 
-  case 111:
-#line 711 "perly.y"
+  case 112:
+#line 715 "perly.y"
     { (yyval.opval) = op_convert_list(OP_ENTERSUB, OPf_STACKED,
                                op_append_elem(OP_LIST, scalar((ps[(1) - 
(3)].val.opval)),
                                    newMETHOP(OP_METHOD, 0, (ps[(3) - 
(3)].val.opval))));
                        }
     break;
 
-  case 112:
-#line 716 "perly.y"
+  case 113:
+#line 720 "perly.y"
     { (yyval.opval) = op_convert_list(OP_ENTERSUB, OPf_STACKED,
                                op_append_elem(OP_LIST,
                                    op_prepend_elem(OP_LIST, (ps[(2) - 
(3)].val.opval), (ps[(3) - (3)].val.opval)),
@@ -820,8 +827,8 @@ case 2:
                        }
     break;
 
-  case 113:
-#line 722 "perly.y"
+  case 114:
+#line 726 "perly.y"
     { (yyval.opval) = op_convert_list(OP_ENTERSUB, OPf_STACKED,
                                op_append_elem(OP_LIST,
                                    op_prepend_elem(OP_LIST, (ps[(2) - 
(5)].val.opval), (ps[(4) - (5)].val.opval)),
@@ -829,225 +836,225 @@ case 2:
                        }
     break;
 
-  case 114:
-#line 728 "perly.y"
+  case 115:
+#line 732 "perly.y"
     { (yyval.opval) = op_convert_list((ps[(1) - (2)].val.ival), 0, (ps[(2) - 
(2)].val.opval)); }
     break;
 
-  case 115:
-#line 730 "perly.y"
+  case 116:
+#line 734 "perly.y"
     { (yyval.opval) = op_convert_list((ps[(1) - (4)].val.ival), 0, (ps[(3) - 
(4)].val.opval)); }
     break;
 
-  case 116:
-#line 732 "perly.y"
+  case 117:
+#line 736 "perly.y"
     { SvREFCNT_inc_simple_void(PL_compcv);
                          (yyval.opval) = newANONATTRSUB((ps[(2) - 
(3)].val.ival), 0, (OP*)NULL, (ps[(3) - (3)].val.opval)); }
     break;
 
-  case 117:
-#line 735 "perly.y"
+  case 118:
+#line 739 "perly.y"
     { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
                                 op_append_elem(OP_LIST,
                                   op_prepend_elem(OP_LIST, (ps[(4) - 
(5)].val.opval), (ps[(5) - (5)].val.opval)), (ps[(1) - (5)].val.opval)));
                        }
     break;
 
-  case 120:
-#line 750 "perly.y"
+  case 121:
+#line 754 "perly.y"
     { (yyval.opval) = newBINOP(OP_GELEM, 0, (ps[(1) - (5)].val.opval), 
scalar((ps[(3) - (5)].val.opval))); }
     break;
 
-  case 121:
-#line 752 "perly.y"
+  case 122:
+#line 756 "perly.y"
     { (yyval.opval) = newBINOP(OP_AELEM, 0, oopsAV((ps[(1) - (4)].val.opval)), 
scalar((ps[(3) - (4)].val.opval)));
                        }
     break;
 
-  case 122:
-#line 755 "perly.y"
+  case 123:
+#line 759 "perly.y"
     { (yyval.opval) = newBINOP(OP_AELEM, 0,
                                        ref(newAVREF((ps[(1) - 
(5)].val.opval)),OP_RV2AV),
                                        scalar((ps[(4) - (5)].val.opval)));
                        }
     break;
 
-  case 123:
-#line 760 "perly.y"
+  case 124:
+#line 764 "perly.y"
     { (yyval.opval) = newBINOP(OP_AELEM, 0,
                                        ref(newAVREF((ps[(1) - 
(4)].val.opval)),OP_RV2AV),
                                        scalar((ps[(3) - (4)].val.opval)));
                        }
     break;
 
-  case 124:
-#line 765 "perly.y"
+  case 125:
+#line 769 "perly.y"
     { (yyval.opval) = newBINOP(OP_HELEM, 0, oopsHV((ps[(1) - (5)].val.opval)), 
jmaybe((ps[(3) - (5)].val.opval)));
                        }
     break;
 
-  case 125:
-#line 768 "perly.y"
+  case 126:
+#line 772 "perly.y"
     { (yyval.opval) = newBINOP(OP_HELEM, 0,
                                        ref(newHVREF((ps[(1) - 
(6)].val.opval)),OP_RV2HV),
                                        jmaybe((ps[(4) - (6)].val.opval))); }
     break;
 
-  case 126:
-#line 772 "perly.y"
+  case 127:
+#line 776 "perly.y"
     { (yyval.opval) = newBINOP(OP_HELEM, 0,
                                        ref(newHVREF((ps[(1) - 
(5)].val.opval)),OP_RV2HV),
                                        jmaybe((ps[(3) - (5)].val.opval))); }
     break;
 
-  case 127:
-#line 776 "perly.y"
+  case 128:
+#line 780 "perly.y"
     { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
                                   newCVREF(0, scalar((ps[(1) - 
(4)].val.opval)))); }
     break;
 
-  case 128:
-#line 779 "perly.y"
+  case 129:
+#line 783 "perly.y"
     { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
                                   op_append_elem(OP_LIST, (ps[(4) - 
(5)].val.opval),
                                       newCVREF(0, scalar((ps[(1) - 
(5)].val.opval))))); }
     break;
 
-  case 129:
-#line 784 "perly.y"
+  case 130:
+#line 788 "perly.y"
     { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
                                   op_append_elem(OP_LIST, (ps[(3) - 
(4)].val.opval),
                                               newCVREF(0, scalar((ps[(1) - 
(4)].val.opval))))); }
     break;
 
-  case 130:
-#line 788 "perly.y"
+  case 131:
+#line 792 "perly.y"
     { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
                                   newCVREF(0, scalar((ps[(1) - 
(3)].val.opval)))); }
     break;
 
-  case 131:
-#line 791 "perly.y"
+  case 132:
+#line 795 "perly.y"
     { (yyval.opval) = newSLICEOP(0, (ps[(5) - (6)].val.opval), (ps[(2) - 
(6)].val.opval)); }
     break;
 
-  case 132:
-#line 793 "perly.y"
+  case 133:
+#line 797 "perly.y"
     { (yyval.opval) = newSLICEOP(0, (ps[(3) - (4)].val.opval), (ps[(1) - 
(4)].val.opval)); }
     break;
 
-  case 133:
-#line 795 "perly.y"
+  case 134:
+#line 799 "perly.y"
     { (yyval.opval) = newSLICEOP(0, (ps[(4) - (5)].val.opval), (OP*)NULL); }
     break;
 
-  case 134:
-#line 800 "perly.y"
+  case 135:
+#line 804 "perly.y"
     { (yyval.opval) = newASSIGNOP(OPf_STACKED, (ps[(1) - (3)].val.opval), 
(ps[(2) - (3)].val.ival), (ps[(3) - (3)].val.opval)); }
     break;
 
-  case 135:
-#line 802 "perly.y"
+  case 136:
+#line 806 "perly.y"
     { (yyval.opval) = newBINOP((ps[(2) - (3)].val.ival), 0, scalar((ps[(1) - 
(3)].val.opval)), scalar((ps[(3) - (3)].val.opval))); }
     break;
 
-  case 136:
-#line 804 "perly.y"
+  case 137:
+#line 808 "perly.y"
     {   if ((ps[(2) - (3)].val.ival) != OP_REPEAT)
                                scalar((ps[(1) - (3)].val.opval));
                            (yyval.opval) = newBINOP((ps[(2) - (3)].val.ival), 
0, (ps[(1) - (3)].val.opval), scalar((ps[(3) - (3)].val.opval)));
                        }
     break;
 
-  case 137:
-#line 809 "perly.y"
-    { (yyval.opval) = newBINOP((ps[(2) - (3)].val.ival), 0, scalar((ps[(1) - 
(3)].val.opval)), scalar((ps[(3) - (3)].val.opval))); }
-    break;
-
   case 138:
-#line 811 "perly.y"
+#line 813 "perly.y"
     { (yyval.opval) = newBINOP((ps[(2) - (3)].val.ival), 0, scalar((ps[(1) - 
(3)].val.opval)), scalar((ps[(3) - (3)].val.opval))); }
     break;
 
   case 139:
-#line 813 "perly.y"
+#line 815 "perly.y"
     { (yyval.opval) = newBINOP((ps[(2) - (3)].val.ival), 0, scalar((ps[(1) - 
(3)].val.opval)), scalar((ps[(3) - (3)].val.opval))); }
     break;
 
   case 140:
-#line 815 "perly.y"
+#line 817 "perly.y"
     { (yyval.opval) = newBINOP((ps[(2) - (3)].val.ival), 0, scalar((ps[(1) - 
(3)].val.opval)), scalar((ps[(3) - (3)].val.opval))); }
     break;
 
   case 141:
-#line 817 "perly.y"
+#line 819 "perly.y"
     { (yyval.opval) = newBINOP((ps[(2) - (3)].val.ival), 0, scalar((ps[(1) - 
(3)].val.opval)), scalar((ps[(3) - (3)].val.opval))); }
     break;
 
   case 142:
-#line 819 "perly.y"
+#line 821 "perly.y"
     { (yyval.opval) = newBINOP((ps[(2) - (3)].val.ival), 0, scalar((ps[(1) - 
(3)].val.opval)), scalar((ps[(3) - (3)].val.opval))); }
     break;
 
   case 143:
-#line 821 "perly.y"
-    { (yyval.opval) = newRANGE((ps[(2) - (3)].val.ival), scalar((ps[(1) - 
(3)].val.opval)), scalar((ps[(3) - (3)].val.opval))); }
+#line 823 "perly.y"
+    { (yyval.opval) = newBINOP((ps[(2) - (3)].val.ival), 0, scalar((ps[(1) - 
(3)].val.opval)), scalar((ps[(3) - (3)].val.opval))); }
     break;
 
   case 144:
-#line 823 "perly.y"
-    { (yyval.opval) = newLOGOP(OP_AND, 0, (ps[(1) - (3)].val.opval), (ps[(3) - 
(3)].val.opval)); }
+#line 825 "perly.y"
+    { (yyval.opval) = newRANGE((ps[(2) - (3)].val.ival), scalar((ps[(1) - 
(3)].val.opval)), scalar((ps[(3) - (3)].val.opval))); }
     break;
 
   case 145:
-#line 825 "perly.y"
-    { (yyval.opval) = newLOGOP(OP_OR, 0, (ps[(1) - (3)].val.opval), (ps[(3) - 
(3)].val.opval)); }
+#line 827 "perly.y"
+    { (yyval.opval) = newLOGOP(OP_AND, 0, (ps[(1) - (3)].val.opval), (ps[(3) - 
(3)].val.opval)); }
     break;
 
   case 146:
-#line 827 "perly.y"
-    { (yyval.opval) = newLOGOP(OP_DOR, 0, (ps[(1) - (3)].val.opval), (ps[(3) - 
(3)].val.opval)); }
+#line 829 "perly.y"
+    { (yyval.opval) = newLOGOP(OP_OR, 0, (ps[(1) - (3)].val.opval), (ps[(3) - 
(3)].val.opval)); }
     break;
 
   case 147:
-#line 829 "perly.y"
-    { (yyval.opval) = bind_match((ps[(2) - (3)].val.ival), (ps[(1) - 
(3)].val.opval), (ps[(3) - (3)].val.opval)); }
+#line 831 "perly.y"
+    { (yyval.opval) = newLOGOP(OP_DOR, 0, (ps[(1) - (3)].val.opval), (ps[(3) - 
(3)].val.opval)); }
     break;
 
   case 148:
-#line 834 "perly.y"
-    { (yyval.opval) = newUNOP(OP_NEGATE, 0, scalar((ps[(2) - 
(2)].val.opval))); }
+#line 833 "perly.y"
+    { (yyval.opval) = bind_match((ps[(2) - (3)].val.ival), (ps[(1) - 
(3)].val.opval), (ps[(3) - (3)].val.opval)); }
     break;
 
   case 149:
-#line 836 "perly.y"
-    { (yyval.opval) = (ps[(2) - (2)].val.opval); }
+#line 838 "perly.y"
+    { (yyval.opval) = newUNOP(OP_NEGATE, 0, scalar((ps[(2) - 
(2)].val.opval))); }
     break;
 
   case 150:
-#line 839 "perly.y"
-    { (yyval.opval) = newUNOP(OP_NOT, 0, scalar((ps[(2) - (2)].val.opval))); }
+#line 840 "perly.y"
+    { (yyval.opval) = (ps[(2) - (2)].val.opval); }
     break;
 
   case 151:
-#line 841 "perly.y"
-    { (yyval.opval) = newUNOP((ps[(1) - (2)].val.ival), 0, scalar((ps[(2) - 
(2)].val.opval))); }
+#line 843 "perly.y"
+    { (yyval.opval) = newUNOP(OP_NOT, 0, scalar((ps[(2) - (2)].val.opval))); }
     break;
 
   case 152:
-#line 843 "perly.y"
+#line 845 "perly.y"
+    { (yyval.opval) = newUNOP((ps[(1) - (2)].val.ival), 0, scalar((ps[(2) - 
(2)].val.opval))); }
+    break;
+
+  case 153:
+#line 847 "perly.y"
     { (yyval.opval) = newUNOP(OP_POSTINC, 0,
                                        op_lvalue(scalar((ps[(1) - 
(2)].val.opval)), OP_POSTINC)); }
     break;
 
-  case 153:
-#line 846 "perly.y"
+  case 154:
+#line 850 "perly.y"
     { (yyval.opval) = newUNOP(OP_POSTDEC, 0,
                                        op_lvalue(scalar((ps[(1) - 
(2)].val.opval)), OP_POSTDEC));}
     break;
 
-  case 154:
-#line 849 "perly.y"
+  case 155:
+#line 853 "perly.y"
     { (yyval.opval) = op_convert_list(OP_JOIN, 0,
                                       op_append_elem(
                                        OP_LIST,
@@ -1060,46 +1067,46 @@ case 2:
                        }
     break;
 
-  case 155:
-#line 860 "perly.y"
+  case 156:
+#line 864 "perly.y"
     { (yyval.opval) = newUNOP(OP_PREINC, 0,
                                        op_lvalue(scalar((ps[(2) - 
(2)].val.opval)), OP_PREINC)); }
     break;
 
-  case 156:
-#line 863 "perly.y"
+  case 157:
+#line 867 "perly.y"
     { (yyval.opval) = newUNOP(OP_PREDEC, 0,
                                        op_lvalue(scalar((ps[(2) - 
(2)].val.opval)), OP_PREDEC)); }
     break;
 
-  case 157:
-#line 870 "perly.y"
+  case 158:
+#line 874 "perly.y"
     { (yyval.opval) = newANONLIST((ps[(2) - (3)].val.opval)); }
     break;
 
-  case 158:
-#line 872 "perly.y"
+  case 159:
+#line 876 "perly.y"
     { (yyval.opval) = newANONLIST((OP*)NULL);}
     break;
 
-  case 159:
-#line 874 "perly.y"
+  case 160:
+#line 878 "perly.y"
     { (yyval.opval) = newANONHASH((ps[(2) - (4)].val.opval)); }
     break;
 
-  case 160:
-#line 876 "perly.y"
+  case 161:
+#line 880 "perly.y"
     { (yyval.opval) = newANONHASH((OP*)NULL); }
     break;
 
-  case 161:
-#line 878 "perly.y"
+  case 162:
+#line 882 "perly.y"
     { SvREFCNT_inc_simple_void(PL_compcv);
                          (yyval.opval) = newANONATTRSUB((ps[(2) - 
(5)].val.ival), (ps[(3) - (5)].val.opval), (ps[(4) - (5)].val.opval), (ps[(5) - 
(5)].val.opval)); }
     break;
 
-  case 162:
-#line 881 "perly.y"
+  case 163:
+#line 885 "perly.y"
     {
                          OP *body;
                          if (parser->copline > (line_t)(ps[(6) - 
(8)].val.ival))
@@ -1111,83 +1118,83 @@ case 2:
                        }
     break;
 
-  case 163:
-#line 895 "perly.y"
+  case 164:
+#line 899 "perly.y"
     { (yyval.opval) = dofile((ps[(2) - (2)].val.opval), (ps[(1) - 
(2)].val.ival));}
     break;
 
-  case 164:
-#line 897 "perly.y"
+  case 165:
+#line 901 "perly.y"
     { (yyval.opval) = newUNOP(OP_NULL, OPf_SPECIAL, op_scope((ps[(2) - 
(2)].val.opval)));}
     break;
 
-  case 169:
-#line 905 "perly.y"
-    { (yyval.opval) = newCONDOP(0, (ps[(1) - (5)].val.opval), (ps[(3) - 
(5)].val.opval), (ps[(5) - (5)].val.opval)); }
-    break;
-
   case 170:
-#line 907 "perly.y"
-    { (yyval.opval) = newUNOP(OP_REFGEN, 0, (ps[(2) - (2)].val.opval)); }
+#line 909 "perly.y"
+    { (yyval.opval) = newCONDOP(0, (ps[(1) - (5)].val.opval), (ps[(3) - 
(5)].val.opval), (ps[(5) - (5)].val.opval)); }
     break;
 
   case 171:
-#line 909 "perly.y"
-    { (yyval.opval) = (ps[(1) - (1)].val.opval); }
+#line 911 "perly.y"
+    { (yyval.opval) = newUNOP(OP_REFGEN, 0, (ps[(2) - (2)].val.opval)); }
     break;
 
   case 172:
-#line 911 "perly.y"
-    { (yyval.opval) = localize((ps[(2) - (2)].val.opval),(ps[(1) - 
(2)].val.ival)); }
+#line 913 "perly.y"
+    { (yyval.opval) = (ps[(1) - (1)].val.opval); }
     break;
 
   case 173:
-#line 913 "perly.y"
-    { (yyval.opval) = sawparens((ps[(2) - (3)].val.opval)); }
+#line 915 "perly.y"
+    { (yyval.opval) = localize((ps[(2) - (2)].val.opval),(ps[(1) - 
(2)].val.ival)); }
     break;
 
   case 174:
-#line 915 "perly.y"
-    { (yyval.opval) = (ps[(1) - (1)].val.opval); }
+#line 917 "perly.y"
+    { (yyval.opval) = sawparens((ps[(2) - (3)].val.opval)); }
     break;
 
   case 175:
-#line 917 "perly.y"
-    { (yyval.opval) = sawparens(newNULLLIST()); }
+#line 919 "perly.y"
+    { (yyval.opval) = (ps[(1) - (1)].val.opval); }
     break;
 
   case 176:
-#line 919 "perly.y"
-    { (yyval.opval) = (ps[(1) - (1)].val.opval); }
+#line 921 "perly.y"
+    { (yyval.opval) = sawparens(newNULLLIST()); }
     break;
 
   case 177:
-#line 921 "perly.y"
+#line 923 "perly.y"
     { (yyval.opval) = (ps[(1) - (1)].val.opval); }
     break;
 
   case 178:
-#line 923 "perly.y"
+#line 925 "perly.y"
     { (yyval.opval) = (ps[(1) - (1)].val.opval); }
     break;
 
   case 179:
-#line 925 "perly.y"
+#line 927 "perly.y"
     { (yyval.opval) = (ps[(1) - (1)].val.opval); }
     break;
 
   case 180:
-#line 927 "perly.y"
-    { (yyval.opval) = newUNOP(OP_AV2ARYLEN, 0, ref((ps[(1) - (1)].val.opval), 
OP_AV2ARYLEN));}
+#line 929 "perly.y"
+    { (yyval.opval) = (ps[(1) - (1)].val.opval); }
     break;
 
   case 181:
-#line 929 "perly.y"
-    { (yyval.opval) = (ps[(1) - (1)].val.opval); }
+#line 931 "perly.y"
+    { (yyval.opval) = newUNOP(OP_AV2ARYLEN, 0, ref((ps[(1) - (1)].val.opval), 
OP_AV2ARYLEN));}
     break;
 
   case 182:
-#line 931 "perly.y"
+#line 933 "perly.y"
+    { (yyval.opval) = (ps[(1) - (1)].val.opval); }
+    break;
+
+  case 183:
+#line 935 "perly.y"
     { (yyval.opval) = op_prepend_elem(OP_ASLICE,
                                newOP(OP_PUSHMARK, 0),
                                    newLISTOP(OP_ASLICE, 0,
@@ -1199,8 +1206,8 @@ case 2:
                        }
     break;
 
-  case 183:
-#line 941 "perly.y"
+  case 184:
+#line 945 "perly.y"
     { (yyval.opval) = op_prepend_elem(OP_KVASLICE,
                                newOP(OP_PUSHMARK, 0),
                                    newLISTOP(OP_KVASLICE, 0,
@@ -1212,8 +1219,8 @@ case 2:
                        }
     break;
 
-  case 184:
-#line 951 "perly.y"
+  case 185:
+#line 955 "perly.y"
     { (yyval.opval) = op_prepend_elem(OP_HSLICE,
                                newOP(OP_PUSHMARK, 0),
                                    newLISTOP(OP_HSLICE, 0,
@@ -1225,8 +1232,8 @@ case 2:
                        }
     break;
 
-  case 185:
-#line 961 "perly.y"
+  case 186:
+#line 965 "perly.y"
     { (yyval.opval) = op_prepend_elem(OP_KVHSLICE,
                                newOP(OP_PUSHMARK, 0),
                                    newLISTOP(OP_KVHSLICE, 0,
@@ -1238,154 +1245,154 @@ case 2:
                        }
     break;
 
-  case 186:
-#line 971 "perly.y"
+  case 187:
+#line 975 "perly.y"
     { (yyval.opval) = (ps[(1) - (1)].val.opval); }
     break;
 
-  case 187:
-#line 973 "perly.y"
+  case 188:
+#line 977 "perly.y"
     { (yyval.opval) = newUNOP(OP_ENTERSUB, 0, scalar((ps[(1) - 
(1)].val.opval))); }
     break;
 
-  case 188:
-#line 975 "perly.y"
+  case 189:
+#line 979 "perly.y"
     { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar((ps[(1) - 
(3)].val.opval)));
                        }
     break;
 
-  case 189:
-#line 978 "perly.y"
+  case 190:
+#line 982 "perly.y"
     {
                          (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
                                op_append_elem(OP_LIST, (ps[(3) - 
(4)].val.opval), scalar((ps[(1) - (4)].val.opval))));
                        }
     break;
 
-  case 190:
-#line 983 "perly.y"
+  case 191:
+#line 987 "perly.y"
     { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
                            op_append_elem(OP_LIST, (ps[(3) - (3)].val.opval), 
scalar((ps[(2) - (3)].val.opval))));
                        }
     break;
 
-  case 191:
-#line 987 "perly.y"
+  case 192:
+#line 991 "perly.y"
     { (yyval.opval) = newSVREF((ps[(1) - (4)].val.opval)); }
     break;
 
-  case 192:
-#line 989 "perly.y"
+  case 193:
+#line 993 "perly.y"
     { (yyval.opval) = newAVREF((ps[(1) - (4)].val.opval)); }
     break;
 
-  case 193:
-#line 991 "perly.y"
+  case 194:
+#line 995 "perly.y"
     { (yyval.opval) = newHVREF((ps[(1) - (4)].val.opval)); }
     break;
 
-  case 194:
-#line 993 "perly.y"
+  case 195:
+#line 997 "perly.y"
     { (yyval.opval) = newUNOP(OP_ENTERSUB, 0,
                                       scalar(newCVREF((ps[(3) - 
(4)].val.ival),(ps[(1) - (4)].val.opval)))); }
     break;
 
-  case 195:
-#line 996 "perly.y"
+  case 196:
+#line 1000 "perly.y"
     { (yyval.opval) = newGVREF(0,(ps[(1) - (4)].val.opval)); }
     break;
 
-  case 196:
-#line 998 "perly.y"
+  case 197:
+#line 1002 "perly.y"
     { (yyval.opval) = newOP((ps[(1) - (1)].val.ival), OPf_SPECIAL);
                            PL_hints |= HINT_BLOCK_SCOPE; }
     break;
 
-  case 197:
-#line 1001 "perly.y"
+  case 198:
+#line 1005 "perly.y"
     { (yyval.opval) = newLOOPEX((ps[(1) - (2)].val.ival),(ps[(2) - 
(2)].val.opval)); }
     break;
 
-  case 198:
-#line 1003 "perly.y"
+  case 199:
+#line 1007 "perly.y"
     { (yyval.opval) = newUNOP(OP_NOT, 0, scalar((ps[(2) - (2)].val.opval))); }
     break;
 
-  case 199:
-#line 1005 "perly.y"
+  case 200:
+#line 1009 "perly.y"
     { (yyval.opval) = newOP((ps[(1) - (1)].val.ival), 0); }
     break;
 
-  case 200:
-#line 1007 "perly.y"
+  case 201:
+#line 1011 "perly.y"
     { (yyval.opval) = newUNOP((ps[(1) - (2)].val.ival), 0, (ps[(2) - 
(2)].val.opval)); }
     break;
 
-  case 201:
-#line 1009 "perly.y"
+  case 202:
+#line 1013 "perly.y"
     { (yyval.opval) = newUNOP((ps[(1) - (2)].val.ival), 0, (ps[(2) - 
(2)].val.opval)); }
     break;
 
-  case 202:
-#line 1011 "perly.y"
+  case 203:
+#line 1015 "perly.y"
     { (yyval.opval) = newOP(OP_REQUIRE, (ps[(1) - (1)].val.ival) ? OPf_SPECIAL 
: 0); }
     break;
 
-  case 203:
-#line 1013 "perly.y"
+  case 204:
+#line 1017 "perly.y"
     { (yyval.opval) = newUNOP(OP_REQUIRE, (ps[(1) - (2)].val.ival) ? 
OPf_SPECIAL : 0, (ps[(2) - (2)].val.opval)); }
     break;
 
-  case 204:
-#line 1015 "perly.y"
+  case 205:
+#line 1019 "perly.y"
     { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar((ps[(1) - 
(1)].val.opval))); }
     break;
 
-  case 205:
-#line 1017 "perly.y"
+  case 206:
+#line 1021 "perly.y"
     { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED,
                            op_append_elem(OP_LIST, (ps[(2) - (2)].val.opval), 
scalar((ps[(1) - (2)].val.opval)))); }
     break;
 
-  case 206:
-#line 1020 "perly.y"
+  case 207:
+#line 1024 "perly.y"
     { (yyval.opval) = newOP((ps[(1) - (1)].val.ival), 0); }
     break;
 
-  case 207:
-#line 1022 "perly.y"
+  case 208:
+#line 1026 "perly.y"
     { (yyval.opval) = newOP((ps[(1) - (3)].val.ival), 0);}
     break;
 
-  case 208:
-#line 1024 "perly.y"
+  case 209:
+#line 1028 "perly.y"
     { (yyval.opval) = (ps[(1) - (1)].val.opval); }
     break;
 
-  case 209:
-#line 1026 "perly.y"
+  case 210:
+#line 1030 "perly.y"
     { (yyval.opval) = (ps[(1) - (3)].val.opval); }
     break;
 
-  case 210:
-#line 1028 "perly.y"
+  case 211:
+#line 1032 "perly.y"
     { (yyval.opval) = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar((ps[(1) - 
(1)].val.opval))); }
     break;
 
-  case 211:
-#line 1030 "perly.y"
+  case 212:
+#line 1034 "perly.y"
     { (yyval.opval) = ((ps[(1) - (3)].val.ival) == OP_NOT)
                           ? newUNOP((ps[(1) - (3)].val.ival), 0, 
newSVOP(OP_CONST, 0, newSViv(0)))
                           : newOP((ps[(1) - (3)].val.ival), OPf_SPECIAL); }
     break;
 
-  case 212:
-#line 1034 "perly.y"
+  case 213:
+#line 1038 "perly.y"
     { (yyval.opval) = newUNOP((ps[(1) - (4)].val.ival), 0, (ps[(3) - 
(4)].val.opval)); }
     break;
 
-  case 213:
-#line 1036 "perly.y"
+  case 214:
+#line 1040 "perly.y"
     {
                            if (   (ps[(1) - (1)].val.opval)->op_type != 
OP_TRANS
                                && (ps[(1) - (1)].val.opval)->op_type != 
OP_TRANSR
@@ -1398,160 +1405,160 @@ case 2:
                        }
     break;
 
-  case 214:
-#line 1047 "perly.y"
+  case 215:
+#line 1051 "perly.y"
     { (yyval.opval) = pmruntime((ps[(1) - (6)].val.opval), (ps[(4) - 
(6)].val.opval), (ps[(5) - (6)].val.opval), 1, (ps[(2) - (6)].val.ival)); }
     break;
 
-  case 217:
-#line 1051 "perly.y"
+  case 218:
+#line 1055 "perly.y"
     {
                          (yyval.opval) = newLISTOP(OP_DIE, 0, 
newOP(OP_PUSHMARK, 0),
                                newSVOP(OP_CONST, 0, 
newSVpvs("Unimplemented")));
                        }
     break;
 
-  case 219:
-#line 1060 "perly.y"
-    { (yyval.opval) = my_attrs((ps[(2) - (3)].val.opval),(ps[(3) - 
(3)].val.opval)); }
-    break;
-
   case 220:
-#line 1062 "perly.y"
-    { (yyval.opval) = localize((ps[(2) - (2)].val.opval),(ps[(1) - 
(2)].val.ival)); }
+#line 1064 "perly.y"
+    { (yyval.opval) = my_attrs((ps[(2) - (3)].val.opval),(ps[(3) - 
(3)].val.opval)); }
     break;
 
   case 221:
-#line 1067 "perly.y"
-    { (yyval.opval) = sawparens((ps[(2) - (3)].val.opval)); }
+#line 1066 "perly.y"
+    { (yyval.opval) = localize((ps[(2) - (2)].val.opval),(ps[(1) - 
(2)].val.ival)); }
     break;
 
   case 222:
-#line 1069 "perly.y"
-    { (yyval.opval) = sawparens(newNULLLIST()); }
+#line 1071 "perly.y"
+    { (yyval.opval) = sawparens((ps[(2) - (3)].val.opval)); }
     break;
 
   case 223:
-#line 1072 "perly.y"
-    { (yyval.opval) = (ps[(1) - (1)].val.opval); }
+#line 1073 "perly.y"
+    { (yyval.opval) = sawparens(newNULLLIST()); }
     break;
 
   case 224:
-#line 1074 "perly.y"
+#line 1076 "perly.y"
     { (yyval.opval) = (ps[(1) - (1)].val.opval); }
     break;
 
   case 225:
-#line 1076 "perly.y"
+#line 1078 "perly.y"
     { (yyval.opval) = (ps[(1) - (1)].val.opval); }
     break;
 
   case 226:
-#line 1081 "perly.y"
-    { (yyval.opval) = (OP*)NULL; }
+#line 1080 "perly.y"
+    { (yyval.opval) = (ps[(1) - (1)].val.opval); }
     break;
 
   case 227:
-#line 1083 "perly.y"
-    { (yyval.opval) = (ps[(1) - (1)].val.opval); }
+#line 1085 "perly.y"
+    { (yyval.opval) = (OP*)NULL; }
     break;
 
   case 228:
 #line 1087 "perly.y"
-    { (yyval.opval) = (OP*)NULL; }
+    { (yyval.opval) = (ps[(1) - (1)].val.opval); }
     break;
 
   case 229:
-#line 1089 "perly.y"
-    { (yyval.opval) = (ps[(1) - (1)].val.opval); }
+#line 1091 "perly.y"
+    { (yyval.opval) = (OP*)NULL; }
     break;
 
   case 230:
 #line 1093 "perly.y"
-    { (yyval.opval) = (OP*)NULL; }
+    { (yyval.opval) = (ps[(1) - (1)].val.opval); }
     break;
 
   case 231:
-#line 1095 "perly.y"
-    { (yyval.opval) = (ps[(2) - (2)].val.opval); }
+#line 1097 "perly.y"
+    { (yyval.opval) = (OP*)NULL; }
     break;
 
   case 232:
-#line 1101 "perly.y"
-    { parser->in_my = 0; (yyval.opval) = my((ps[(1) - (1)].val.opval)); }
+#line 1099 "perly.y"
+    { (yyval.opval) = (ps[(2) - (2)].val.opval); }
     break;
 
-  case 238:
-#line 1114 "perly.y"
-    { (yyval.opval) = newCVREF((ps[(1) - (2)].val.ival),(ps[(2) - 
(2)].val.opval)); }
+  case 233:
+#line 1105 "perly.y"
+    { parser->in_my = 0; (yyval.opval) = my((ps[(1) - (1)].val.opval)); }
     break;
 
   case 239:
 #line 1118 "perly.y"
-    { (yyval.opval) = newSVREF((ps[(2) - (2)].val.opval)); }
+    { (yyval.opval) = newCVREF((ps[(1) - (2)].val.ival),(ps[(2) - 
(2)].val.opval)); }
     break;
 
   case 240:
 #line 1122 "perly.y"
+    { (yyval.opval) = newSVREF((ps[(2) - (2)].val.opval)); }
+    break;
+
+  case 241:
+#line 1126 "perly.y"
     { (yyval.opval) = newAVREF((ps[(2) - (2)].val.opval));
                          if ((yyval.opval)) (yyval.opval)->op_private |= 
(ps[(1) - (2)].val.ival);
                        }
     break;
 
-  case 241:
-#line 1128 "perly.y"
+  case 242:
+#line 1132 "perly.y"
     { (yyval.opval) = newHVREF((ps[(2) - (2)].val.opval));
                          if ((yyval.opval)) (yyval.opval)->op_private |= 
(ps[(1) - (2)].val.ival);
                        }
     break;
 
-  case 242:
-#line 1134 "perly.y"
+  case 243:
+#line 1138 "perly.y"
     { (yyval.opval) = newAVREF((ps[(2) - (2)].val.opval)); }
     break;
 
-  case 243:
-#line 1136 "perly.y"
+  case 244:
+#line 1140 "perly.y"
     { (yyval.opval) = newAVREF((ps[(1) - (4)].val.opval)); }
     break;
 
-  case 244:
-#line 1140 "perly.y"
+  case 245:
+#line 1144 "perly.y"
     { (yyval.opval) = newGVREF(0,(ps[(2) - (2)].val.opval)); }
     break;
 
-  case 246:
-#line 1145 "perly.y"
+  case 247:
+#line 1149 "perly.y"
     { (yyval.opval) = newAVREF((ps[(1) - (3)].val.opval)); }
     break;
 
-  case 248:
-#line 1150 "perly.y"
+  case 249:
+#line 1154 "perly.y"
     { (yyval.opval) = newHVREF((ps[(1) - (3)].val.opval)); }
     break;
 
-  case 250:
-#line 1155 "perly.y"
+  case 251:
+#line 1159 "perly.y"
     { (yyval.opval) = newGVREF(0,(ps[(1) - (3)].val.opval)); }
     break;
 
-  case 251:
-#line 1160 "perly.y"
+  case 252:
+#line 1164 "perly.y"
     { (yyval.opval) = scalar((ps[(1) - (1)].val.opval)); }
     break;
 
-  case 252:
-#line 1162 "perly.y"
+  case 253:
+#line 1166 "perly.y"
     { (yyval.opval) = scalar((ps[(1) - (1)].val.opval)); }
     break;
 
-  case 253:
-#line 1164 "perly.y"
+  case 254:
+#line 1168 "perly.y"
     { (yyval.opval) = op_scope((ps[(1) - (1)].val.opval)); }
     break;
 
-  case 254:
-#line 1167 "perly.y"
+  case 255:
+#line 1171 "perly.y"
     { (yyval.opval) = (ps[(1) - (1)].val.opval); }
     break;
 
@@ -1559,6 +1566,6 @@ case 2:
     
 
 /* Generated from:
- * db4c2b48304784282d6de26944eef5b6a4719190b204ec27c4b91d9cf62e1dbb perly.y
+ * 86a46b99a53eaf0c2102de82d25c527ae9c2e82decc1fe197313b6d9562c3609 perly.y
  * d1d4df7b8e30ac9dede664af9179e6e5e7ddc7f2ad9c4eff9e2e5b32c9e16a6e 
regen_perly.pl
  * ex: set ro: */
diff --git a/perly.h b/perly.h
index 3cc4c9b..e7ed5d6 100644
--- a/perly.h
+++ b/perly.h
@@ -260,6 +260,6 @@ typedef union YYSTYPE
 
 
 /* Generated from:
- * db4c2b48304784282d6de26944eef5b6a4719190b204ec27c4b91d9cf62e1dbb perly.y
+ * 86a46b99a53eaf0c2102de82d25c527ae9c2e82decc1fe197313b6d9562c3609 perly.y
  * d1d4df7b8e30ac9dede664af9179e6e5e7ddc7f2ad9c4eff9e2e5b32c9e16a6e 
regen_perly.pl
  * ex: set ro: */
diff --git a/perly.tab b/perly.tab
index fd612c7..46f603c 100644
--- a/perly.tab
+++ b/perly.tab
@@ -6,16 +6,16 @@
 
 #define YYFINAL  14
 /* YYLAST -- Last index in YYTABLE.  */
-#define YYLAST   2917
+#define YYLAST   2924
 
 /* YYNTOKENS -- Number of terminals.  */
 #define YYNTOKENS  105
 /* YYNNTS -- Number of nonterminals.  */
 #define YYNNTS  78
 /* YYNRULES -- Number of rules.  */
-#define YYNRULES  254
+#define YYNRULES  255
 /* YYNRULES -- Number of states.  */
-#define YYNSTATES  511
+#define YYNSTATES  512
 
 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX.  */
 #define YYUNDEFTOK  2
@@ -75,25 +75,25 @@ static const yytype_uint16 yyprhs[] =
      144,   148,   151,   160,   169,   170,   171,   185,   195,   204,
      205,   217,   227,   235,   238,   239,   248,   251,   253,   256,
      257,   261,   263,   265,   269,   273,   277,   281,   285,   289,
-     290,   293,   300,   301,   304,   305,   306,   308,   309,   311,
-     313,   315,   317,   319,   321,   322,   323,   324,   325,   327,
-     329,   330,   332,   333,   336,   338,   341,   343,   344,   348,
-     350,   352,   356,   360,   364,   366,   369,   373,   375,   379,
-     385,   392,   396,   400,   406,   409,   414,   415,   421,   423,
-     425,   431,   436,   442,   447,   453,   460,   466,   471,   477,
-     482,   486,   493,   498,   504,   508,   512,   516,   520,   524,
-     528,   532,   536,   540,   544,   548,   552,   556,   560,   563,
-     566,   569,   572,   575,   578,   581,   584,   587,   591,   594,
-     599,   603,   609,   618,   621,   624,   626,   628,   630,   632,
-     638,   641,   643,   646,   650,   652,   655,   657,   659,   661,
-     663,   665,   667,   672,   677,   683,   689,   691,   693,   697,
-     702,   706,   711,   716,   721,   726,   731,   733,   736,   739,
-     741,   744,   747,   749,   752,   754,   757,   759,   763,   765,
-     769,   771,   775,   780,   781,   788,   790,   792,   794,   796,
-     800,   803,   807,   810,   812,   814,   816,   817,   819,   820,
-     822,   823,   826,   828,   830,   832,   834,   836,   838,   841,
-     844,   847,   850,   853,   858,   861,   863,   867,   869,   873,
-     875,   879,   881,   883,   885
+     293,   294,   297,   304,   305,   308,   309,   310,   312,   313,
+     315,   317,   319,   321,   323,   325,   326,   327,   328,   329,
+     331,   333,   334,   336,   337,   340,   342,   345,   347,   348,
+     352,   354,   356,   360,   364,   368,   370,   373,   377,   379,
+     383,   389,   396,   400,   404,   410,   413,   418,   419,   425,
+     427,   429,   435,   440,   446,   451,   457,   464,   470,   475,
+     481,   486,   490,   497,   502,   508,   512,   516,   520,   524,
+     528,   532,   536,   540,   544,   548,   552,   556,   560,   564,
+     567,   570,   573,   576,   579,   582,   585,   588,   591,   595,
+     598,   603,   607,   613,   622,   625,   628,   630,   632,   634,
+     636,   642,   645,   647,   650,   654,   656,   659,   661,   663,
+     665,   667,   669,   671,   676,   681,   687,   693,   695,   697,
+     701,   706,   710,   715,   720,   725,   730,   735,   737,   740,
+     743,   745,   748,   751,   753,   756,   758,   761,   763,   767,
+     769,   773,   775,   779,   784,   785,   792,   794,   796,   798,
+     800,   804,   807,   811,   814,   816,   818,   820,   821,   823,
+     824,   826,   827,   830,   832,   834,   836,   838,   840,   842,
+     845,   848,   851,   854,   857,   862,   865,   867,   871,   873,
+     877,   879,   883,   885,   887,   889
 };
 
 /* YYRHS -- A `-1'-separated list of the rules' RHS.  */
@@ -127,67 +127,68 @@ static const yytype_int16 yyrhs[] =
       -1,   101,    -1,    23,   131,    -1,    -1,    70,   118,    71,
       -1,     1,    -1,   153,    -1,   153,    41,   153,    -1,   153,
       42,   153,    -1,   153,    39,   153,    -1,   153,    40,   138,
-      -1,   153,    46,   153,    -1,   153,    48,   153,    -1,    -1,
-      43,   116,    -1,    44,   100,   139,    99,   116,   133,    -1,
-      -1,    45,   113,    -1,    -1,    -1,   132,    -1,    -1,   153,
-      -1,   153,    -1,   153,    -1,   136,    -1,   138,    -1,    20,
-      -1,    -1,    -1,    -1,    -1,    20,    -1,    25,    -1,    -1,
-      23,    -1,    -1,    69,    23,    -1,    69,    -1,    69,    23,
-      -1,    69,    -1,    -1,   100,   151,    99,    -1,   113,    -1,
-     101,    -1,   153,    75,   153,    -1,   153,    74,   153,    -1,
-     153,    73,   153,    -1,   154,    -1,   154,    77,    -1,   154,
-      77,   163,    -1,   163,    -1,    57,   182,   154,    -1,    55,
-     100,   182,   153,    99,    -1,   163,    98,   157,   100,   168,
-      99,    -1,   163,    98,   157,    -1,    21,   182,   167,    -1,
-      22,   182,   100,   168,    99,    -1,    57,   167,    -1,    55,
-     100,   168,    99,    -1,    -1,    30,   144,   113,   156,   167,
-      -1,    21,    -1,   174,    -1,   181,     9,   153,   101,    10,
-      -1,   174,    11,   153,    12,    -1,   163,    98,    11,   153,
-      12,    -1,   158,    11,   153,    12,    -1,   174,     9,   153,
-     101,    10,    -1,   163,    98,     9,   153,   101,    10,    -1,
-     158,     9,   153,   101,    10,    -1,   163,    98,   100,    99,
-      -1,   163,    98,   100,   153,    99,    -1,   158,   100,   153,
-      99,    -1,   158,   100,    99,    -1,   100,   153,    99,    11,
-     153,    12,    -1,    26,    11,   153,    12,    -1,   100,    99,
-      11,   153,    12,    -1,   163,    78,   163,    -1,   163,    92,
-     163,    -1,   163,    60,   163,    -1,   163,    61,   163,    -1,
-     163,    86,   163,    -1,   163,    58,   163,    -1,   163,    59,
-     163,    -1,   163,    85,   163,    -1,   163,    84,   163,    -1,
-     163,    51,   163,    -1,   163,    83,   163,    -1,   163,    82,
-     163,    -1,   163,    81,   163,    -1,   163,    87,   163,    -1,
-      13,   163,    -1,    14,   163,    -1,    88,   163,    -1,    89,
-     163,    -1,   163,    95,    -1,   163,    94,    -1,   163,    93,
-      -1,    97,   163,    -1,    96,   163,    -1,    11,   153,    12,
-      -1,    11,    12,    -1,    64,   153,   101,    10,    -1,    64,
-     101,    10,    -1,    36,   144,   147,   148,   113,    -1,    36,
-     144,   115,   150,   148,     9,   118,    10,    -1,    63,   163,
-      -1,    63,   113,    -1,   159,    -1,   160,    -1,   161,    -1,
-     162,    -1,   163,    79,   163,    80,   163,    -1,    90,   163,
-      -1,   165,    -1,    66,   163,    -1,   100,   153,    99,    -1,
-      26,    -1,   100,    99,    -1,   174,    -1,   178,    -1,   176,
-      -1,   175,    -1,   177,    -1,   158,    -1,   179,    11,   153,
-      12,    -1,   180,    11,   153,    12,    -1,   179,     9,   153,
-     101,    10,    -1,   180,     9,   153,   101,    10,    -1,    23,
-      -1,   173,    -1,   173,   100,    99,    -1,   173,   100,   153,
-      99,    -1,    65,   146,   167,    -1,   163,    98,   102,   103,
-      -1,   163,    98,    15,   103,    -1,   163,    98,    16,   103,
-      -1,   163,    98,    17,   103,    -1,   163,    98,   103,   103,
-      -1,    50,    -1,    50,   163,    -1,    76,   154,    -1,    56,
-      -1,    56,   113,    -1,    56,   163,    -1,    68,    -1,    68,
-     163,    -1,    29,    -1,    29,   163,    -1,    53,    -1,    53,
-     100,    99,    -1,    27,    -1,    27,   100,    99,    -1,    28,
-      -1,    54,   100,    99,    -1,    54,   100,   153,    99,    -1,
-      -1,    24,   164,   100,   154,   169,    99,    -1,    20,    -1,
-     155,    -1,    52,    -1,    31,    -1,    67,   166,   149,    -1,
-      67,   166,    -1,   100,   153,    99,    -1,   100,    99,    -1,
-     174,    -1,   176,    -1,   175,    -1,    -1,   154,    -1,    -1,
-     153,    -1,    -1,   104,   153,    -1,   174,    -1,   174,    -1,
-     175,    -1,   176,    -1,   171,    -1,   173,    -1,    17,   182,
-      -1,   102,   182,    -1,    15,   182,    -1,    16,   182,    -1,
-      62,   182,    -1,   163,    98,    62,   103,    -1,   103,   182,
-      -1,   175,    -1,   163,    98,    15,    -1,   176,    -1,   163,
-      98,    16,    -1,   178,    -1,   163,    98,   103,    -1,    20,
-      -1,   174,    -1,   113,    -1,    25,    -1
+      -1,   153,    46,   153,    -1,   153,    48,   113,    -1,   153,
+      48,   153,    -1,    -1,    43,   116,    -1,    44,   100,   139,
+      99,   116,   133,    -1,    -1,    45,   113,    -1,    -1,    -1,
+     132,    -1,    -1,   153,    -1,   153,    -1,   153,    -1,   136,
+      -1,   138,    -1,    20,    -1,    -1,    -1,    -1,    -1,    20,
+      -1,    25,    -1,    -1,    23,    -1,    -1,    69,    23,    -1,
+      69,    -1,    69,    23,    -1,    69,    -1,    -1,   100,   151,
+      99,    -1,   113,    -1,   101,    -1,   153,    75,   153,    -1,
+     153,    74,   153,    -1,   153,    73,   153,    -1,   154,    -1,
+     154,    77,    -1,   154,    77,   163,    -1,   163,    -1,    57,
+     182,   154,    -1,    55,   100,   182,   153,    99,    -1,   163,
+      98,   157,   100,   168,    99,    -1,   163,    98,   157,    -1,
+      21,   182,   167,    -1,    22,   182,   100,   168,    99,    -1,
+      57,   167,    -1,    55,   100,   168,    99,    -1,    -1,    30,
+     144,   113,   156,   167,    -1,    21,    -1,   174,    -1,   181,
+       9,   153,   101,    10,    -1,   174,    11,   153,    12,    -1,
+     163,    98,    11,   153,    12,    -1,   158,    11,   153,    12,
+      -1,   174,     9,   153,   101,    10,    -1,   163,    98,     9,
+     153,   101,    10,    -1,   158,     9,   153,   101,    10,    -1,
+     163,    98,   100,    99,    -1,   163,    98,   100,   153,    99,
+      -1,   158,   100,   153,    99,    -1,   158,   100,    99,    -1,
+     100,   153,    99,    11,   153,    12,    -1,    26,    11,   153,
+      12,    -1,   100,    99,    11,   153,    12,    -1,   163,    78,
+     163,    -1,   163,    92,   163,    -1,   163,    60,   163,    -1,
+     163,    61,   163,    -1,   163,    86,   163,    -1,   163,    58,
+     163,    -1,   163,    59,   163,    -1,   163,    85,   163,    -1,
+     163,    84,   163,    -1,   163,    51,   163,    -1,   163,    83,
+     163,    -1,   163,    82,   163,    -1,   163,    81,   163,    -1,
+     163,    87,   163,    -1,    13,   163,    -1,    14,   163,    -1,
+      88,   163,    -1,    89,   163,    -1,   163,    95,    -1,   163,
+      94,    -1,   163,    93,    -1,    97,   163,    -1,    96,   163,
+      -1,    11,   153,    12,    -1,    11,    12,    -1,    64,   153,
+     101,    10,    -1,    64,   101,    10,    -1,    36,   144,   147,
+     148,   113,    -1,    36,   144,   115,   150,   148,     9,   118,
+      10,    -1,    63,   163,    -1,    63,   113,    -1,   159,    -1,
+     160,    -1,   161,    -1,   162,    -1,   163,    79,   163,    80,
+     163,    -1,    90,   163,    -1,   165,    -1,    66,   163,    -1,
+     100,   153,    99,    -1,    26,    -1,   100,    99,    -1,   174,
+      -1,   178,    -1,   176,    -1,   175,    -1,   177,    -1,   158,
+      -1,   179,    11,   153,    12,    -1,   180,    11,   153,    12,
+      -1,   179,     9,   153,   101,    10,    -1,   180,     9,   153,
+     101,    10,    -1,    23,    -1,   173,    -1,   173,   100,    99,
+      -1,   173,   100,   153,    99,    -1,    65,   146,   167,    -1,
+     163,    98,   102,   103,    -1,   163,    98,    15,   103,    -1,
+     163,    98,    16,   103,    -1,   163,    98,    17,   103,    -1,
+     163,    98,   103,   103,    -1,    50,    -1,    50,   163,    -1,
+      76,   154,    -1,    56,    -1,    56,   113,    -1,    56,   163,
+      -1,    68,    -1,    68,   163,    -1,    29,    -1,    29,   163,
+      -1,    53,    -1,    53,   100,    99,    -1,    27,    -1,    27,
+     100,    99,    -1,    28,    -1,    54,   100,    99,    -1,    54,
+     100,   153,    99,    -1,    -1,    24,   164,   100,   154,   169,
+      99,    -1,    20,    -1,   155,    -1,    52,    -1,    31,    -1,
+      67,   166,   149,    -1,    67,   166,    -1,   100,   153,    99,
+      -1,   100,    99,    -1,   174,    -1,   176,    -1,   175,    -1,
+      -1,   154,    -1,    -1,   153,    -1,    -1,   104,   153,    -1,
+     174,    -1,   174,    -1,   175,    -1,   176,    -1,   171,    -1,
+     173,    -1,    17,   182,    -1,   102,   182,    -1,    15,   182,
+      -1,    16,   182,    -1,    62,   182,    -1,   163,    98,    62,
+     103,    -1,   103,   182,    -1,   175,    -1,   163,    98,    15,
+      -1,   176,    -1,   163,    98,    16,    -1,   178,    -1,   163,
+      98,   103,    -1,    20,    -1,   174,    -1,   113,    -1,    25,
+      -1
 };
 
 /* YYRLINE[YYN] -- source line where rule number YYN was defined.  */
@@ -199,26 +200,26 @@ static const yytype_uint16 yyrline[] =
      267,   301,   300,   339,   347,   346,   355,   361,   367,   378,
      382,   387,   389,   396,   404,   406,   403,   423,   428,   435,
      434,   449,   457,   463,   470,   469,   484,   488,   496,   514,
-     515,   520,   522,   524,   526,   528,   530,   532,   535,   543,
-     544,   549,   560,   561,   567,   573,   574,   579,   582,   586,
-     591,   595,   599,   603,   604,   608,   614,   619,   624,   625,
-     630,   631,   636,   637,   639,   644,   646,   652,   651,   670,
-     671,   675,   677,   679,   681,   685,   687,   692,   696,   700,
-     704,   710,   715,   721,   727,   729,   732,   731,   742,   743,
-     747,   751,   754,   759,   764,   767,   771,   775,   778,   783,
-     787,   790,   792,   794,   799,   801,   803,   808,   810,   812,
-     814,   816,   818,   820,   822,   824,   826,   828,   833,   835,
-     838,   840,   842,   845,   848,   859,   862,   869,   871,   873,
-     875,   877,   880,   894,   896,   900,   901,   902,   903,   904,
-     906,   908,   910,   912,   914,   916,   918,   920,   922,   924,
-     926,   928,   930,   940,   950,   960,   970,   972,   974,   977,
-     982,   986,   988,   990,   992,   995,   997,  1000,  1002,  1004,
-    1006,  1008,  1010,  1012,  1014,  1016,  1019,  1021,  1023,  1025,
-    1027,  1029,  1033,  1036,  1035,  1048,  1049,  1050,  1055,  1059,
-    1061,  1066,  1068,  1071,  1073,  1075,  1080,  1082,  1087,  1088,
-    1093,  1094,  1100,  1104,  1105,  1106,  1109,  1110,  1113,  1117,
-    1121,  1127,  1133,  1135,  1139,  1143,  1144,  1148,  1149,  1153,
-    1154,  1159,  1161,  1163,  1166
+     515,   520,   522,   524,   526,   528,   530,   532,   535,   539,
+     547,   548,   553,   564,   565,   571,   577,   578,   583,   586,
+     590,   595,   599,   603,   607,   608,   612,   618,   623,   628,
+     629,   634,   635,   640,   641,   643,   648,   650,   656,   655,
+     674,   675,   679,   681,   683,   685,   689,   691,   696,   700,
+     704,   708,   714,   719,   725,   731,   733,   736,   735,   746,
+     747,   751,   755,   758,   763,   768,   771,   775,   779,   782,
+     787,   791,   794,   796,   798,   803,   805,   807,   812,   814,
+     816,   818,   820,   822,   824,   826,   828,   830,   832,   837,
+     839,   842,   844,   846,   849,   852,   863,   866,   873,   875,
+     877,   879,   881,   884,   898,   900,   904,   905,   906,   907,
+     908,   910,   912,   914,   916,   918,   920,   922,   924,   926,
+     928,   930,   932,   934,   944,   954,   964,   974,   976,   978,
+     981,   986,   990,   992,   994,   996,   999,  1001,  1004,  1006,
+    1008,  1010,  1012,  1014,  1016,  1018,  1020,  1023,  1025,  1027,
+    1029,  1031,  1033,  1037,  1040,  1039,  1052,  1053,  1054,  1059,
+    1063,  1065,  1070,  1072,  1075,  1077,  1079,  1084,  1086,  1091,
+    1092,  1097,  1098,  1104,  1108,  1109,  1110,  1113,  1114,  1117,
+    1121,  1125,  1131,  1137,  1139,  1143,  1147,  1148,  1152,  1153,
+    1157,  1158,  1163,  1165,  1167,  1170
 };
 #endif
 
@@ -285,26 +286,26 @@ static const yytype_uint8 yyr1[] =
      122,   124,   122,   122,   125,   122,   122,   122,   122,   122,
      122,   122,   122,   122,   126,   127,   122,   122,   122,   128,
      122,   122,   122,   122,   129,   122,   122,   122,   130,   131,
-     131,   132,   132,   132,   132,   132,   132,   132,   132,   133,
-     133,   133,   134,   134,   135,   136,   136,   137,   137,   138,
-     139,   140,   141,   142,   142,   143,   144,   145,   146,   146,
-     147,   147,   148,   148,   148,   149,   149,   151,   150,   152,
-     152,   153,   153,   153,   153,   154,   154,   154,   155,   155,
-     155,   155,   155,   155,   155,   155,   156,   155,   157,   157,
-     158,   158,   158,   158,   158,   158,   158,   158,   158,   158,
-     158,   158,   158,   158,   159,   159,   159,   159,   159,   159,
-     159,   159,   159,   159,   159,   159,   159,   159,   160,   160,
-     160,   160,   160,   160,   160,   160,   160,   161,   161,   161,
-     161,   161,   161,   162,   162,   163,   163,   163,   163,   163,
+     131,   132,   132,   132,   132,   132,   132,   132,   132,   132,
+     133,   133,   133,   134,   134,   135,   136,   136,   137,   137,
+     138,   139,   140,   141,   142,   142,   143,   144,   145,   146,
+     146,   147,   147,   148,   148,   148,   149,   149,   151,   150,
+     152,   152,   153,   153,   153,   153,   154,   154,   154,   155,
+     155,   155,   155,   155,   155,   155,   155,   156,   155,   157,
+     157,   158,   158,   158,   158,   158,   158,   158,   158,   158,
+     158,   158,   158,   158,   158,   159,   159,   159,   159,   159,
+     159,   159,   159,   159,   159,   159,   159,   159,   159,   160,
+     160,   160,   160,   160,   160,   160,   160,   160,   161,   161,
+     161,   161,   161,   161,   162,   162,   163,   163,   163,   163,
      163,   163,   163,   163,   163,   163,   163,   163,   163,   163,
      163,   163,   163,   163,   163,   163,   163,   163,   163,   163,
      163,   163,   163,   163,   163,   163,   163,   163,   163,   163,
      163,   163,   163,   163,   163,   163,   163,   163,   163,   163,
-     163,   163,   163,   164,   163,   163,   163,   163,   163,   165,
-     165,   166,   166,   166,   166,   166,   167,   167,   168,   168,
-     169,   169,   170,   171,   171,   171,   172,   172,   173,   174,
-     175,   176,   177,   177,   178,   179,   179,   180,   180,   181,
-     181,   182,   182,   182,   182
+     163,   163,   163,   163,   164,   163,   163,   163,   163,   163,
+     165,   165,   166,   166,   166,   166,   166,   167,   167,   168,
+     168,   169,   169,   170,   171,   171,   171,   172,   172,   173,
+     174,   175,   176,   177,   177,   178,   179,   179,   180,   180,
+     181,   181,   182,   182,   182,   182
 };
 
 /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN.  */
@@ -316,26 +317,26 @@ static const yytype_uint8 yyr2[] =
        7,     0,    10,     4,     0,     7,     7,     7,     6,     6,
        3,     2,     8,     8,     0,     0,    13,     9,     8,     0,
       11,     9,     7,     2,     0,     8,     2,     1,     2,     0,
-       3,     1,     1,     3,     3,     3,     3,     3,     3,     0,
-       2,     6,     0,     2,     0,     0,     1,     0,     1,     1,
-       1,     1,     1,     1,     0,     0,     0,     0,     1,     1,
-       0,     1,     0,     2,     1,     2,     1,     0,     3,     1,
-       1,     3,     3,     3,     1,     2,     3,     1,     3,     5,
-       6,     3,     3,     5,     2,     4,     0,     5,     1,     1,
-       5,     4,     5,     4,     5,     6,     5,     4,     5,     4,
-       3,     6,     4,     5,     3,     3,     3,     3,     3,     3,
-       3,     3,     3,     3,     3,     3,     3,     3,     2,     2,
-       2,     2,     2,     2,     2,     2,     2,     3,     2,     4,
-       3,     5,     8,     2,     2,     1,     1,     1,     1,     5,
-       2,     1,     2,     3,     1,     2,     1,     1,     1,     1,
-       1,     1,     4,     4,     5,     5,     1,     1,     3,     4,
-       3,     4,     4,     4,     4,     4,     1,     2,     2,     1,
-       2,     2,     1,     2,     1,     2,     1,     3,     1,     3,
-       1,     3,     4,     0,     6,     1,     1,     1,     1,     3,
-       2,     3,     2,     1,     1,     1,     0,     1,     0,     1,
-       0,     2,     1,     1,     1,     1,     1,     1,     2,     2,
-       2,     2,     2,     4,     2,     1,     3,     1,     3,     1,
-       3,     1,     1,     1,     1
+       3,     1,     1,     3,     3,     3,     3,     3,     3,     3,
+       0,     2,     6,     0,     2,     0,     0,     1,     0,     1,
+       1,     1,     1,     1,     1,     0,     0,     0,     0,     1,
+       1,     0,     1,     0,     2,     1,     2,     1,     0,     3,
+       1,     1,     3,     3,     3,     1,     2,     3,     1,     3,
+       5,     6,     3,     3,     5,     2,     4,     0,     5,     1,
+       1,     5,     4,     5,     4,     5,     6,     5,     4,     5,
+       4,     3,     6,     4,     5,     3,     3,     3,     3,     3,
+       3,     3,     3,     3,     3,     3,     3,     3,     3,     2,
+       2,     2,     2,     2,     2,     2,     2,     2,     3,     2,
+       4,     3,     5,     8,     2,     2,     1,     1,     1,     1,
+       5,     2,     1,     2,     3,     1,     2,     1,     1,     1,
+       1,     1,     1,     4,     4,     5,     5,     1,     1,     3,
+       4,     3,     4,     4,     4,     4,     4,     1,     2,     2,
+       1,     2,     2,     1,     2,     1,     2,     1,     3,     1,
+       3,     1,     3,     4,     0,     6,     1,     1,     1,     1,
+       3,     2,     3,     2,     1,     1,     1,     0,     1,     0,
+       1,     0,     2,     1,     1,     1,     1,     1,     1,     2,
+       2,     2,     2,     2,     4,     2,     1,     3,     1,     3,
+       1,     3,     1,     1,     1,     1
 };
 
 /* YYDEFACT[STATE-NAME] -- Default reduction number in state STATE-NUM.
@@ -343,224 +344,261 @@ static const yytype_uint8 yyr2[] =
    means the default is an error.  */
 static const yytype_uint8 yydefact[] =
 {
-       0,     2,     4,     6,     8,    10,    12,     0,    16,   228,
+       0,     2,     4,     6,     8,    10,    12,     0,    16,   229,
        0,     0,     0,    19,     1,    19,     0,     0,     0,     0,
-       0,     0,   215,     0,     0,   186,   213,   174,   208,   210,
-     204,    86,   218,    86,   196,   217,   206,     0,     0,   199,
-     226,     0,     0,     0,     0,     0,     0,   202,     0,     0,
-       0,     0,     0,     0,     0,     0,     0,   229,   104,   216,
-     181,   165,   166,   167,   168,   107,   171,     5,   187,   176,
-     179,   178,   180,   177,     0,     0,     0,    16,     7,    61,
-      27,    87,     0,     0,    85,     0,     0,     0,     0,     0,
-       0,     0,     0,    57,    72,     9,     0,    62,     0,    11,
-      24,    23,     0,     0,   158,     0,   148,   149,   251,   254,
-     253,   252,   240,   241,   238,   226,     0,     0,     0,     0,
-     205,     0,    90,   197,     0,     0,   228,   200,   201,   251,
-     227,   114,   252,     0,   242,   164,   163,     0,     0,    88,
-      89,   226,   172,     0,   220,   223,   225,   224,   203,   198,
-     150,   151,   170,   156,   155,   175,     0,   239,   244,     0,
-       0,     0,   105,     0,     0,     0,     0,     0,     0,     0,
+       0,     0,   216,     0,     0,   187,   214,   175,   209,   211,
+     205,    87,   219,    87,   197,   218,   207,     0,     0,   200,
+     227,     0,     0,     0,     0,     0,     0,   203,     0,     0,
+       0,     0,     0,     0,     0,     0,     0,   230,   105,   217,
+     182,   166,   167,   168,   169,   108,   172,     5,   188,   177,
+     180,   179,   181,   178,     0,     0,     0,    16,     7,    61,
+      27,    88,     0,     0,    86,     0,     0,     0,     0,     0,
+       0,     0,     0,    57,    73,     9,     0,    62,     0,    11,
+      24,    23,     0,     0,   159,     0,   149,   150,   252,   255,
+     254,   253,   241,   242,   239,   227,     0,     0,     0,     0,
+     206,     0,    91,   198,     0,     0,   229,   201,   202,   252,
+     228,   115,   253,     0,   243,   165,   164,     0,     0,    89,
+      90,   227,   173,     0,   221,   224,   226,   225,   204,   199,
+     151,   152,   171,   157,   156,   176,     0,   240,   245,     0,
+       0,     0,   106,     0,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
-       0,   154,   153,   152,     0,     0,     0,     0,     0,     0,
-       0,     0,     0,    19,    84,    85,     0,    34,    16,    16,
+       0,   155,   154,   153,     0,     0,     0,     0,     0,     0,
+       0,     0,     0,    19,    85,    86,     0,    34,    16,    16,
       16,    16,    16,     0,    16,     0,    16,    16,     0,    41,
        0,    53,    56,     0,     0,     0,     0,     0,     0,    26,
-      25,    20,   157,   112,   228,     0,     0,   209,   116,    91,
-       0,    92,   207,   211,     0,     0,     0,   108,   160,     0,
-     190,   222,     0,    96,   219,     0,   173,   103,   102,   101,
-     106,     0,     0,   130,     0,   143,   139,   140,   136,   137,
-     134,     0,   146,   145,   144,   142,   141,   138,   147,   135,
-       0,     0,   246,   248,     0,   118,     0,     0,     0,   250,
-     111,   119,   188,     0,     0,     0,     0,     0,     0,     0,
-       0,     0,    83,     0,    29,     0,     0,    77,     0,     0,
-       0,     0,    16,   236,     0,   237,   233,   234,   235,     0,
-      16,     0,     0,    40,    73,    65,    66,    79,    63,    64,
-      67,    68,     0,   230,   132,   226,    97,    92,    94,     0,
-     212,   115,     0,   159,   221,    95,     0,     0,     0,   123,
-     129,     0,     0,     0,   192,   193,   194,   243,   127,     0,
-     191,   195,   228,   189,     0,   121,     0,   182,     0,   183,
-       0,    14,    16,    28,    90,    16,    16,    33,     0,     0,
-      78,     0,     0,    80,    82,     0,     0,   232,     0,    16,
-      76,    81,     0,     0,    62,     0,     0,     0,   113,     0,
-       0,   117,     0,     0,    93,   161,   109,   133,     0,   126,
-     169,     0,   122,   128,     0,   124,   184,   185,   120,     0,
-      92,     0,    54,   226,    74,    74,     0,     0,     0,    49,
-       0,     0,    44,     0,     0,     0,   231,   214,    98,    19,
-     131,   125,   110,     0,     0,    92,    19,     0,     0,     0,
-      18,    69,    69,     0,     0,     0,    72,    77,     0,    38,
-      39,     0,    21,   100,    99,    30,     0,     0,    35,    72,
-      72,    19,     0,     0,    36,    37,     0,     0,     0,    52,
-       0,    72,   162,     0,    19,    55,    42,    43,     0,    70,
-       0,    72,     0,    72,    45,    48,    59,     0,    22,     0,
-      17,     0,    47,     0,    51,    74,    19,    58,    15,    32,
-       0,    72,     0,     0,    69,    50,     0,    60,    71,     0,
-      46
+      25,    20,   158,   113,   229,     0,     0,   210,   117,    92,
+       0,    93,   208,   212,     0,     0,     0,   109,   161,     0,
+     191,   223,     0,    97,   220,     0,   174,   104,   103,   102,
+     107,     0,     0,   131,     0,   144,   140,   141,   137,   138,
+     135,     0,   147,   146,   145,   143,   142,   139,   148,   136,
+       0,     0,   247,   249,     0,   119,     0,     0,     0,   251,
+     112,   120,   189,     0,     0,     0,     0,     0,     0,     0,
+       0,     0,    84,     0,    29,     0,     0,    78,     0,     0,
+       0,     0,    16,   237,     0,   238,   234,   235,   236,     0,
+      16,     0,     0,    40,    74,    65,    66,    80,    63,    64,
+      67,    68,    69,     0,   231,   133,   227,    98,    93,    95,
+       0,   213,   116,     0,   160,   222,    96,     0,     0,     0,
+     124,   130,     0,     0,     0,   193,   194,   195,   244,   128,
+       0,   192,   196,   229,   190,     0,   122,     0,   183,     0,
+     184,     0,    14,    16,    28,    91,    16,    16,    33,     0,
+       0,    79,     0,     0,    81,    83,     0,     0,   233,     0,
+      16,    77,    82,     0,     0,    62,     0,     0,     0,   114,
+       0,     0,   118,     0,     0,    94,   162,   110,   134,     0,
+     127,   170,     0,   123,   129,     0,   125,   185,   186,   121,
+       0,    93,     0,    54,   227,    75,    75,     0,     0,     0,
+      49,     0,     0,    44,     0,     0,     0,   232,   215,    99,
+      19,   132,   126,   111,     0,     0,    93,    19,     0,     0,
+       0,    18,    70,    70,     0,     0,     0,    73,    78,     0,
+      38,    39,     0,    21,   101,   100,    30,     0,     0,    35,
+      73,    73,    19,     0,     0,    36,    37,     0,     0,     0,
+      52,     0,    73,   163,     0,    19,    55,    42,    43,     0,
+      71,     0,    73,     0,    73,    45,    48,    59,     0,    22,
+       0,    17,     0,    47,     0,    51,    75,    19,    58,    15,
+      32,     0,    73,     0,     0,    70,    50,     0,    60,    72,
+       0,    46
 };
 
 /* YYDEFGOTO[NTERM-NUM].  */
 static const yytype_int16 yydefgoto[] =
 {
-      -1,     7,     8,     9,    10,    11,    12,    13,    94,   363,
-      15,   441,   461,   102,   473,   221,   100,   101,   364,   365,
-     296,   447,   495,   444,   436,   488,   497,    96,   464,   211,
-     438,   381,   369,   316,   372,   383,   375,   293,   197,   121,
-     194,   141,   231,   329,   244,   327,   392,   455,    97,    58,
-      59,   325,   280,    60,    61,    62,    63,    64,    65,   117,
-      66,   144,   131,    67,   390,   376,   303,   304,    68,    69,
+      -1,     7,     8,     9,    10,    11,    12,    13,    94,   364,
+      15,   442,   462,   102,   474,   221,   100,   101,   365,   366,
+     296,   448,   496,   445,   437,   489,   498,    96,   465,   211,
+     439,   382,   370,   316,   373,   384,   376,   293,   197,   121,
+     194,   141,   231,   330,   244,   328,   393,   456,    97,    58,
+      59,   326,   280,    60,    61,    62,    63,    64,    65,   117,
+      66,   144,   131,    67,   391,   377,   303,   304,    68,    69,
       70,    71,    72,    73,    74,    75,    76,   157
 };
 
 /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
    STATE-NUM.  */
-#define YYPACT_NINF -402
+#define YYPACT_NINF -390
 static const yytype_int16 yypact[] =
 {
-     582,  -402,  -402,  -402,  -402,  -402,  -402,    21,  -402,  2703,
-      26,  1490,  1393,  -402,  -402,  -402,  1959,  2703,  2703,     3,
-       3,     3,  -402,     3,     3,  -402,  -402,    56,   -61,  -402,
-    2703,  -402,  -402,  -402,  2703,  -402,   -58,   -30,   -10,  1866,
-    1771,     3,  1866,  2052,    84,  2703,    44,  2703,  2703,  2703,
-    2703,  2703,  2703,  2703,  2145,     3,     3,   429,    33,  -402,
-      22,  -402,  -402,  -402,  -402,  2774,  -402,  -402,    40,    68,
-     122,   136,  -402,   132,   157,   168,   139,  -402,  -402,  -402,
-    -402,  -402,    84,   133,  -402,    63,    72,    73,    76,   -27,
-      90,    -6,    26,  -402,   148,  -402,    94,   499,  1393,  -402,
-    -402,  -402,   616,   714,  -402,    62,   403,   403,  -402,  -402,
-    -402,  -402,  -402,  -402,  -402,  2703,    99,   106,  2703,   108,
-    2223,    26,    11,  2774,   116,  2238,  1771,  -402,  2223,   520,
-      33,  -402,   432,  2703,  -402,  -402,  2223,   207,   240,  -402,
-    -402,  2703,  2223,  2331,   152,  -402,  -402,  -402,  2223,    33,
-     403,   403,   403,   203,   203,   214,    50,  -402,  -402,  2703,
-    2703,  2703,  2703,  2703,  2703,  2424,  2703,  2703,  2703,  2703,
-    2703,  2703,  2703,  2703,  2703,  2703,  2703,  2703,  2703,  2703,
-    2703,  -402,  -402,  -402,    67,  2517,  2703,  2703,  2703,  2703,
-    2703,  2703,  2703,  -402,   198,  -402,   210,  -402,  -402,  -402,
-    -402,  -402,  -402,    41,  -402,   138,  -402,  -402,    26,  -402,
-      26,  -402,  -402,  2703,  2703,  2703,  2703,  2703,  2703,  -402,
-    -402,  -402,  -402,  -402,  2703,  2703,    77,  -402,  -402,  -402,
-     141,   163,  -402,  -402,   186,   134,  2703,    33,  -402,   229,
-    -402,  -402,   278,   220,  -402,  2703,   233,   172,   172,  -402,
-    2774,   275,   127,  -402,   318,  1571,  2130,  1944,   277,   268,
-    2774,  2729,  1662,  1662,  1756,  1851,  2037,  1621,   403,   403,
-    2703,  2703,   146,   154,   160,  -402,   161,  2610,    -7,   165,
-     156,  -402,  -402,   380,   336,   130,   351,   149,   360,   153,
-     375,   811,  -402,   251,   171,    13,   256,  2703,  2703,  2703,
-    2703,   181,  -402,  -402,   182,  -402,  -402,  -402,  -402,  1583,
-    -402,  2703,  2703,  -402,  -402,   429,  -402,   429,   429,   429,
-     429,   429,   187,   -24,  -402,  2703,  -402,   163,   266,    26,
-    -402,  -402,   390,  -402,  -402,  -402,   162,  2703,   280,  -402,
-    -402,  2703,   383,   177,  -402,  -402,  -402,  -402,  -402,   395,
-    -402,  -402,  2703,  -402,   290,  -402,   292,  -402,   293,  -402,
-     295,  -402,  -402,  -402,   287,  -402,  -402,  -402,   296,   213,
-     429,   218,   226,   429,  -402,   231,   234,  -402,    28,  -402,
-    -402,  -402,   232,   237,   509,  2703,   243,   246,  -402,  2703,
-     255,  -402,   257,   324,  -402,  -402,  -402,  -402,   180,  -402,
-    2819,   349,  -402,  -402,   269,  -402,  -402,  -402,  -402,   264,
-     163,   141,  -402,  2703,  -402,  -402,   364,   364,  2703,  -402,
-    2703,   364,  -402,   279,   364,   364,   429,  -402,  -402,  -402,
-    -402,  -402,  -402,   303,    15,   163,  -402,   281,   364,   364,
-    -402,    75,    75,   284,   286,   289,   148,  2703,   364,  -402,
-    -402,   908,  -402,  -402,  -402,  -402,   407,  1005,  -402,   148,
-     148,  -402,   364,   320,  -402,  -402,   364,  2703,   364,  -402,
-     288,   148,  -402,    14,  -402,  -402,  -402,  -402,  1102,  -402,
-    2703,   148,   319,   148,  -402,  -402,   357,   410,  -402,  1199,
-    -402,   332,  -402,   364,  -402,  -402,  -402,  -402,  -402,  -402,
-     364,   148,  1676,  1296,    75,  -402,   337,  -402,  -402,   364,
-    -402
+     551,  -390,  -390,  -390,  -390,  -390,  -390,     8,  -390,  2685,
+      13,  1472,  1375,  -390,  -390,  -390,  1941,  2685,  2685,    12,
+      12,    12,  -390,    12,    12,  -390,  -390,    23,   -57,  -390,
+    2685,  -390,  -390,  -390,  2685,  -390,   -47,   -37,   -32,  1848,
+    1753,    12,  1848,  2034,    98,  2685,    26,  2685,  2685,  2685,
+    2685,  2685,  2685,  2685,  2127,    12,    12,   132,    40,  -390,
+       4,  -390,  -390,  -390,  -390,  2781,  -390,  -390,   -25,    22,
+      41,   122,  -390,   115,   125,   128,   138,  -390,  -390,  -390,
+    -390,  -390,    98,   133,  -390,    57,    61,    64,    67,    99,
+      73,    15,    13,  -390,   152,  -390,   101,   492,  1375,  -390,
+    -390,  -390,   598,   696,  -390,    77,   338,   338,  -390,  -390,
+    -390,  -390,  -390,  -390,  -390,  2685,   123,   127,  2685,   116,
+    2019,    13,   -16,  2781,   143,  2220,  1753,  -390,  2019,   502,
+      40,  -390,   426,  2685,  -390,  -390,  2019,   233,   -18,  -390,
+    -390,  2685,  2019,  2313,   181,  -390,  -390,  -390,  2019,    40,
+     338,   338,   338,   385,   385,   240,   276,  -390,  -390,  2685,
+    2685,  2685,  2685,  2685,  2685,  2406,  2685,  2685,  2685,  2685,
+    2685,  2685,  2685,  2685,  2685,  2685,  2685,  2685,  2685,  2685,
+    2685,  -390,  -390,  -390,   310,  2499,  2685,  2685,  2685,  2685,
+    2685,  2685,  2685,  -390,   234,  -390,   243,  -390,  -390,  -390,
+    -390,  -390,  -390,    43,  -390,   161,  -390,  -390,    13,  -390,
+      13,  -390,  -390,  2685,  2685,  2685,  2685,  2685,  1848,  -390,
+    -390,  -390,  -390,  -390,  2685,  2685,    95,  -390,  -390,  -390,
+     164,   199,  -390,  -390,   345,   170,  2685,    40,  -390,   261,
+    -390,  -390,   354,   251,  -390,  2685,   265,   207,   207,  -390,
+    2781,     7,   118,  -390,   396,  1553,   363,  1833,   681,   583,
+    2781,  2732,   284,   284,  1643,  1738,  1926,  1979,   338,   338,
+    2685,  2685,   180,   183,   187,  -390,   188,  2592,     3,   194,
+     185,  -390,  -390,   416,   102,   159,   147,   162,   255,   182,
+     279,   793,  -390,   280,   202,    -6,   283,  2685,  2685,  2685,
+    2685,   208,  -390,  -390,   211,  -390,  -390,  -390,  -390,  1565,
+    -390,  2685,  2685,  -390,  -390,   132,  -390,   132,   132,   132,
+     132,  -390,   132,   213,   -33,  -390,  2685,  -390,   199,   294,
+      13,  -390,  -390,   423,  -390,  -390,  -390,   214,  2685,   308,
+    -390,  -390,  2685,   288,   226,  -390,  -390,  -390,  -390,  -390,
+     472,  -390,  -390,  2685,  -390,   313,  -390,   322,  -390,   324,
+    -390,   325,  -390,  -390,  -390,   297,  -390,  -390,  -390,   317,
+     242,   132,   247,   256,   132,  -390,   266,   273,  -390,    20,
+    -390,  -390,  -390,   275,   239,   318,  2685,   287,   289,  -390,
+    2685,   312,  -390,   335,   374,  -390,  -390,  -390,  -390,   241,
+    -390,  2826,   377,  -390,  -390,   340,  -390,  -390,  -390,  -390,
+     339,   199,   164,  -390,  2685,  -390,  -390,   400,   400,  2685,
+    -390,  2685,   400,  -390,   343,   400,   400,   132,  -390,  -390,
+    -390,  -390,  -390,  -390,   375,    11,   199,  -390,   344,   400,
+     400,  -390,    35,    35,   349,   351,   353,   152,  2685,   400,
+    -390,  -390,   890,  -390,  -390,  -390,  -390,   445,   987,  -390,
+     152,   152,  -390,   400,   359,  -390,  -390,   400,  2685,   400,
+    -390,   361,   152,  -390,    28,  -390,  -390,  -390,  -390,  1084,
+    -390,  2685,   152,   365,   152,  -390,  -390,   403,   456,  -390,
+    1181,  -390,   382,  -390,   400,  -390,  -390,  -390,  -390,  -390,
+    -390,   400,   152,  1658,  1278,    35,  -390,   389,  -390,  -390,
+     400,  -390
 };
 
 /* YYPGOTO[NTERM-NUM].  */
 static const yytype_int16 yypgoto[] =
 {
-    -402,  -402,  -402,  -402,  -402,  -402,  -402,  -402,     6,  -402,
-     120,   -81,  -402,   -15,  -402,   426,   341,     4,  -402,  -402,
-    -402,  -402,  -402,  -402,  -402,  -402,  -402,  -308,  -401,  -172,
-    -383,  -402,    -2,  -102,  -292,   -55,  -402,  -402,   265,   418,
-    -402,   384,   103,  -318,  -402,    66,  -402,  -402,    -5,   -34,
-    -402,  -402,  -402,  -402,  -402,  -402,  -402,  -402,   228,  -402,
-    -402,  -402,  -105,  -118,  -402,  -402,   109,  -402,   285,    45,
-     -41,   -39,  -402,  -402,  -402,  -402,  -402,    31
+    -390,  -390,  -390,  -390,  -390,  -390,  -390,  -390,     6,  -390,
+     -58,  2337,  -390,   -15,  -390,   480,   395,    -2,  -390,  -390,
+    -390,  -390,  -390,  -390,  -390,  -390,  -390,  -307,  -389,  -243,
+    -377,  -390,    68,  -110,  -221,    -9,  -390,  -390,   328,   484,
+    -390,   444,   163,  -311,  -390,   117,  -390,  -390,    -5,   -30,
+    -390,  -390,  -390,  -390,  -390,  -390,  -390,  -390,   228,  -390,
+    -390,  -390,  -101,  -125,  -390,  -390,   156,  -390,   333,    46,
+     -41,   -40,  -390,  -390,  -390,  -390,  -390,    53
 };
 
 /* YYTABLE[YYPACT[STATE-NUM]].  What to do in state STATE-NUM.  If
    positive, shift that token.  If negative, reduce the rule which
    number is the opposite.  If YYTABLE_NINF, syntax error.  */
-#define YYTABLE_NINF -250
+#define YYTABLE_NINF -251
 static const yytype_int16 yytable[] =
 {
-     103,   380,    77,    77,    57,   146,   130,   147,   235,   393,
-     223,   105,    77,   108,   149,    95,    78,   382,   109,   386,
-     387,    14,   366,   108,    77,   110,   110,   110,   109,   110,
-     110,   163,   439,   164,   229,    77,   240,   486,   138,   119,
-     202,   465,   124,    19,    20,   127,   110,   110,   135,   156,
-     112,   113,   114,   162,   115,   116,    19,    20,    21,    19,
-      20,   110,   110,   203,   111,   111,   111,   118,   111,   111,
-     125,   133,   134,   204,   222,    55,   270,   186,   271,   187,
-     389,   130,   272,   273,   274,   132,   111,   158,   275,   324,
-     126,   145,   434,   423,   207,    55,   350,   208,   209,   237,
-     111,   111,   220,   508,   139,    55,   322,   130,   302,   140,
-     162,   -16,   502,   226,   367,   487,   453,   456,   462,   463,
-     234,    57,   165,   159,   160,   161,   443,   228,   445,   276,
-      55,  -245,   110,  -245,   205,   159,   160,   161,   242,   339,
-     185,  -249,   355,    55,   143,  -247,    55,  -247,   192,   246,
-     159,   160,   161,   196,   247,   248,   249,   236,   251,   252,
-     254,   357,   307,   198,   308,   359,   188,   277,   189,   278,
-     279,   132,   199,   200,   397,   482,   201,   190,   291,   191,
-     283,   284,   285,   286,   287,   288,   289,   290,   491,   402,
-     206,   323,   430,   210,   380,   212,   371,   193,   374,   224,
-     159,   160,   161,   159,   160,   161,   225,   227,   315,   317,
-     318,   319,   320,   321,   313,   232,   314,   238,   292,    57,
-     391,   243,   159,   160,   161,   245,   159,   160,   161,   281,
-     295,   332,   328,   331,   404,   159,   160,   161,   310,   333,
-     336,   326,   230,   335,   337,   106,   107,   161,   306,   344,
-     159,   160,   161,   159,   160,   161,   352,   345,   120,   159,
-     160,   161,   123,   346,   347,   342,   343,   128,   351,   362,
-     136,   -31,   349,   142,   469,   148,   368,   150,   151,   152,
-     153,   154,   379,    55,   110,   330,   388,   476,   477,   394,
-     399,   130,   370,   317,   373,   317,  -250,  -250,  -250,   485,
-     405,   184,   406,   407,   384,   408,   373,   373,   437,   492,
-     229,   494,   414,   159,   160,   161,   413,   415,   297,   298,
-     299,   300,   301,   111,   309,   416,   311,   312,   169,   505,
-     417,   421,   398,   429,   418,   395,   442,   307,   422,   308,
-     446,   239,   424,   449,   450,   425,   377,    57,   159,   160,
-     161,   159,   160,   161,   427,   179,   428,   459,   460,   431,
-     180,   181,   182,   183,   179,   433,   184,   471,   432,   180,
-     181,   182,   183,   440,   452,   184,   338,   334,   448,   130,
-     373,   479,   458,   466,   426,   481,   467,   483,   468,   484,
+     103,   235,   381,   367,    57,   146,   147,   229,    14,    95,
+     130,   105,    77,   163,   223,   164,    78,   394,   149,   193,
+      77,    77,    77,   108,    77,   110,   110,   110,   109,   110,
+     110,   186,   108,   187,   118,    19,    20,   109,   138,   440,
+     240,    19,    20,   119,   162,   127,   110,   110,   135,   156,
+    -246,   487,  -246,   124,   466,   159,   160,   161,    19,    20,
+      21,   110,   110,   125,   230,   111,   111,   111,   126,   111,
+     111,   390,   112,   113,   114,   185,   115,   116,   463,   464,
+     159,   160,   161,   239,   -16,   130,   132,   111,   383,   222,
+     387,   388,   145,   133,   134,   368,   220,   208,   209,   323,
+     435,   111,   111,   237,   165,    55,   351,   325,   339,   158,
+     302,   130,   454,   226,    55,   207,   509,   162,   139,   503,
+     234,    57,    55,   140,  -250,   457,   143,   228,    55,   488,
+     340,  -248,   110,  -248,   188,   205,   189,   190,   242,   191,
+     297,   298,   299,   300,   301,    55,   309,   192,   311,   312,
+     159,   160,   161,   196,   247,   248,   249,   198,   251,   252,
+     254,   199,   307,   308,   200,   424,   202,   201,   159,   160,
+     161,   356,   132,   206,   358,   159,   160,   161,   291,   236,
+     283,   284,   285,   286,   287,   288,   289,   290,   372,   203,
+     375,   159,   160,   161,   360,   324,   381,   210,   444,   204,
+     446,    55,   212,   355,   470,   159,   160,   161,   315,   317,
+     318,   319,   320,   322,   313,   227,   314,   477,   478,    57,
+     159,   160,   161,   224,   321,   392,   398,   225,   405,   486,
+     281,   333,   159,   160,   161,   159,   160,   161,   403,   493,
+     337,   495,   232,   238,   379,   106,   107,   483,   357,   306,
+     243,   245,   386,   431,   292,   159,   160,   161,   120,   506,
+     492,   310,   123,   295,   327,   343,   344,   128,   329,   332,
+     136,   334,   350,   142,   336,   148,   338,   150,   151,   152,
+     153,   154,   161,   345,   110,   353,   346,   159,   160,   161,
+     347,   348,   371,   317,   374,   317,   130,   352,   363,   159,
+     160,   161,   -31,   369,   385,   410,   374,   374,   412,   413,
+      55,   380,   389,   438,   159,   160,   161,   395,   400,   270,
+     229,   271,   421,   406,   111,   272,   273,   274,   159,   160,
+     161,   275,   407,   399,   408,   409,   396,   414,   307,   308,
+     423,   415,   167,   168,   169,   170,   416,   378,    57,   159,
+     160,   161,   159,   160,   161,   417,   359,   213,   214,   215,
+     216,   159,   160,   161,   217,   418,   218,   175,   176,   177,
+     178,   179,   276,   419,   422,   246,   180,   181,   182,   183,
+     361,   374,   184,   430,   130,   427,   425,   432,   426,   402,
      250,   159,   160,   161,   255,   256,   257,   258,   259,   260,
-     261,   262,   263,   264,   265,   266,   267,   268,   269,   159,
-     160,   161,   501,   373,   451,   373,   474,   340,   493,   504,
-     480,   457,   378,   306,   159,   160,   161,   496,   510,   498,
-     385,   500,  -176,   159,   160,   161,   509,   354,    99,   219,
-     454,   186,   370,   187,  -176,   470,   478,   506,   159,   160,
-     161,   122,   356,   159,   160,   161,   159,   160,   161,   489,
-     294,   358,   373,   159,   160,   161,   195,   410,   159,   160,
-     161,  -176,  -176,  -176,  -176,   373,   360,   435,  -176,   353,
-    -176,   503,   409,  -176,   401,   411,   412,   419,   305,   396,
-    -176,  -176,  -176,  -176,   403,   180,   181,   182,   183,   420,
-       0,   184,   159,   160,   161,  -176,  -176,  -176,     0,  -176,
-    -176,  -176,  -176,  -176,  -176,  -176,  -176,  -176,  -176,  -176,
-    -215,     0,     0,     0,  -176,  -176,  -176,  -176,     0,     0,
-    -176,  -176,  -215,  -176,     0,     0,  -176,     0,   213,   214,
-     215,   216,     0,     0,     0,   217,     0,   218,   213,   214,
-     215,   216,     0,     0,     0,   217,     0,   218,     0,  -215,
-    -215,  -215,  -215,     0,     0,     0,  -215,     0,  -215,   400,
-       0,  -215,   159,   160,   161,     0,     0,     0,  -215,  -215,
-    -215,  -215,   159,   160,   161,     1,     2,     3,     4,     5,
-       6,     0,     0,  -215,  -215,  -215,     0,  -215,  -215,  -215,
-    -215,  -215,  -215,  -215,  -215,  -215,  -215,  -215,   -80,     0,
-       0,     0,  -215,  -215,  -215,  -215,   -13,    79,  -215,  -215,
-       0,  -215,     0,     0,  -215,    77,     0,    16,     0,    17,
+     261,   262,   263,   264,   265,   266,   267,   268,   269,   441,
+     277,   428,   278,   279,   374,   452,   374,   -81,   159,   160,
+     161,  -251,   458,   169,   170,   306,  -177,   159,   160,   161,
+     180,   181,   182,   183,   429,   186,   184,   187,  -177,   433,
+     434,   455,   449,   371,   331,   459,   453,   479,   467,   178,
+     179,   468,   469,   335,   475,   180,   181,   182,   183,   481,
+     490,   184,   485,   374,   494,  -177,  -177,  -177,  -177,   159,
+     160,   161,  -177,   497,  -177,   499,   374,  -177,  -251,  -251,
+    -251,   501,   504,   184,  -177,  -177,  -177,  -177,   510,   159,
+     160,   161,    99,   219,   507,   341,   159,   160,   161,  -177,
+    -177,  -177,  -216,  -177,  -177,  -177,  -177,  -177,  -177,  -177,
+    -177,  -177,  -177,  -177,  -216,   354,   471,   122,  -177,  -177,
+    -177,  -177,   397,   294,  -177,  -177,   195,  -177,   411,   436,
+    -177,   213,   214,   215,   216,   420,   305,     0,   217,     0,
+     218,  -216,  -216,  -216,  -216,   159,   160,   161,  -216,     0,
+    -216,     0,     0,  -216,     1,     2,     3,     4,     5,     6,
+    -216,  -216,  -216,  -216,     0,   159,   160,   161,     0,     0,
+     401,   404,     0,     0,     0,  -216,  -216,  -216,     0,  -216,
+    -216,  -216,  -216,  -216,  -216,  -216,  -216,  -216,  -216,  -216,
+       0,     0,     0,     0,  -216,  -216,  -216,  -216,   -13,    79,
+    -216,  -216,     0,  -216,     0,     0,  -216,    77,     0,    16,
+       0,    17,    18,    19,    20,    21,     0,     0,    22,    23,
+      24,    25,    26,     0,    27,    28,    29,    30,    31,    32,
+      80,    98,    81,    82,    33,    83,    84,    85,    86,    87,
+      88,     0,     0,   169,    89,    90,    91,    92,    34,     0,
**** PATCH TRUNCATED AT 2000 LINES -- 986 NOT SHOWN ****

--
Perl5 Master Repository

Reply via email to