More EBCDIC fixes.
[p5sagit/p5-mst-13.2.git] / vms / perly_c.vms
1 /* Postprocessed by vms_yfix.pl 1.11 to add VMS declarations of globals */
2 #ifndef lint
3 static char yysccsid[] = "@(#)yaccpar 1.8 (Berkeley) 01/20/91";
4 #endif
5 #define YYBYACC 1
6 #line 16 "perly.y"
7 #include "EXTERN.h"
8 #define PERL_IN_PERLY_C
9 #include "perl.h"
10
11 #define dep() deprecate("\"do\" to call subroutines")
12
13 /* stuff included here to make perly_c.diff apply better */
14
15 #define yydebug     PL_yydebug
16 #define yynerrs     PL_yynerrs
17 #define yyerrflag   PL_yyerrflag
18 #define yychar      PL_yychar
19 #define yyval       PL_yyval
20 #define yylval      PL_yylval
21
22 struct ysv {
23     short* yyss;
24     YYSTYPE* yyvs;
25     int oldyydebug;
26     int oldyynerrs;
27     int oldyyerrflag;
28     int oldyychar;
29     YYSTYPE oldyyval;
30     YYSTYPE oldyylval;
31 };
32
33 static void yydestruct(pTHXo_ void *ptr);
34
35 #line 49 "perly.y"
36 #if 0 /* get this from perly.h instead */
37 #line 52 "perly.y"
38 typedef union {
39     I32 ival;
40     char *pval;
41     OP *opval;
42     GV *gvval;
43 } YYSTYPE;
44 #line 60 "perly.y"
45 #endif /* 0 */
46
47 #ifdef USE_PURE_BISON
48 #define YYLEX_PARAM (&yychar)
49 #define yylex yylex_r
50 #endif
51
52 #line 52 "perly.c"
53 #define YYERRCODE 256
54 static short yylhs[] = {                                        -1,
55    50,    0,    8,    6,    9,    7,   10,   10,   10,   11,
56    11,   11,   11,   24,   24,   24,   24,   24,   24,   24,
57    14,   14,   14,   13,   13,   42,   42,   12,   12,   12,
58    12,   12,   12,   12,   26,   26,   27,   27,   28,   29,
59    30,   31,   32,   49,   49,    1,    1,    1,    1,    1,
60     2,   38,   38,   46,   51,    3,    4,    5,   39,   40,
61    40,   44,   44,   44,   45,   45,   41,   41,   52,   52,
62    54,   53,   15,   15,   15,   25,   25,   25,   36,   36,
63    36,   36,   36,   36,   36,   36,   55,   36,   37,   37,
64    17,   17,   17,   17,   17,   17,   17,   17,   17,   17,
65    17,   16,   16,   16,   16,   16,   16,   16,   16,   16,
66    16,   16,   16,   16,   16,   16,   16,   16,   16,   16,
67    16,   16,   16,   16,   16,   16,   16,   16,   16,   16,
68    16,   16,   16,   16,   16,   16,   16,   16,   16,   16,
69    16,   16,   16,   16,   16,   16,   16,   16,   16,   16,
70    16,   16,   16,   16,   16,   16,   16,   16,   16,   16,
71    16,   16,   16,   16,   16,   16,   16,   16,   16,   16,
72    47,   47,   48,   48,   48,   48,   48,   33,   33,   34,
73    34,   34,   43,   23,   18,   19,   20,   21,   22,   35,
74    35,   35,   35,
75 };
76 static short yylen[] = {                                         2,
77     0,    2,    4,    0,    4,    0,    0,    2,    2,    2,
78     1,    2,    3,    1,    1,    3,    3,    3,    3,    3,
79     0,    2,    6,    7,    7,    0,    2,    8,    8,   10,
80     9,    8,   11,    3,    0,    1,    0,    1,    1,    1,
81     1,    1,    1,    0,    1,    1,    1,    1,    1,    1,
82     4,    1,    0,    6,    6,    0,    0,    0,    1,    0,
83     1,    0,    2,    1,    2,    1,    1,    1,    3,    2,
84     0,    7,    3,    3,    1,    2,    3,    1,    3,    5,
85     6,    3,    3,    5,    2,    4,    0,    5,    1,    1,
86     5,    4,    5,    4,    5,    6,    5,    4,    5,    4,
87     3,    3,    3,    3,    3,    3,    3,    3,    3,    3,
88     3,    3,    3,    5,    3,    2,    2,    2,    2,    2,
89     2,    2,    2,    2,    1,    2,    3,    2,    3,    2,
90     4,    3,    5,    1,    1,    1,    1,    1,    1,    6,
91     5,    4,    5,    1,    1,    3,    4,    3,    2,    2,
92     4,    5,    4,    5,    1,    2,    2,    1,    2,    2,
93     2,    1,    3,    1,    3,    4,    4,    6,    1,    1,
94     3,    2,    3,    2,    1,    1,    1,    0,    1,    0,
95     1,    2,    1,    2,    2,    2,    2,    2,    2,    1,
96     1,    1,    1,
97 };
98 static short yydefred[] = {                                      1,
99     0,    7,    0,   45,   58,   56,    0,   56,   56,    8,
100    46,    9,   11,   48,    0,   47,   49,   50,    0,    0,
101     0,   70,   71,    0,   14,    4,  169,    0,    0,  144,
102     0,  164,    0,   57,   57,    0,    0,    0,    0,    0,
103     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
104     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
105     0,   12,    0,    0,    0,    0,    0,    0,    0,   10,
106     0,    0,    0,    0,    0,  136,  138,    0,    0,    0,
107     0,  170,  125,   52,    0,   59,    0,   69,    0,    0,
108     7,  190,  193,  192,  191,    0,    0,    0,    0,    0,
109     0,    4,    4,    4,    4,    4,    4,    0,    0,    0,
110     0,    0,  159,    0,    0,    0,    0,   85,    0,  188,
111     0,  150,    0,    0,    0,    0,    0,    0,    0,  175,
112   177,  176,    0,  184,    0,    0,    0,    0,    0,    0,
113     0,    0,  130,    0,    0,    0,  185,  186,  187,  189,
114     0,   34,    0,    0,    0,    0,    0,    0,    0,    0,
115     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
116     0,    0,    0,  121,  122,    0,    0,    0,    0,    0,
117     0,    0,    0,    0,    0,   13,    0,   51,   61,    0,
118     0,    0,    0,   83,    0,    0,   87,    0,    0,    0,
119     0,    0,    0,    0,    4,  163,  165,    0,    0,    0,
120     0,    0,    0,    0,  132,    0,  148,  174,    0,    0,
121   171,    0,    0,  129,   27,    0,    0,   19,    0,    0,
122     0,    0,   73,    0,    0,    0,    0,    0,    0,    0,
123     0,    0,    0,    0,    0,    0,    0,    0,   89,    0,
124     0,   90,    0,    0,  101,    0,    0,    0,    0,    0,
125     0,    0,  146,    0,    0,    0,    0,    0,    0,    3,
126     0,    0,  167,    0,    0,    0,   42,    0,   43,    0,
127     0,    0,    0,  183,    0,    0,   36,   41,    0,    0,
128     0,  166,  182,   86,    0,  151,    0,  153,    0,  131,
129   173,   65,    0,    0,    0,    0,   98,    0,    0,    0,
130     0,  100,   94,    0,   92,    0,  142,    0,  147,   63,
131    68,   67,   55,    0,   54,   84,    0,   88,  133,    0,
132     0,    0,    0,    0,    0,    0,    0,   80,  152,  154,
133   141,    0,    0,    0,   99,   93,    0,   97,   95,  143,
134    91,   72,  168,    6,    0,    0,    0,    0,    0,    0,
135     0,    0,  140,   96,   81,    7,   28,   29,    0,    0,
136    24,   25,    0,   32,    0,    0,    0,   22,    0,    0,
137     0,   31,    5,    0,   30,    0,    0,   33,    0,   23,
138 };
139 static short yydgoto[] = {                                       1,
140    10,   11,   20,  100,   19,   91,  366,   94,  355,    3,
141    12,   13,   70,  371,  281,   72,   73,   74,   75,   76,
142    77,   78,   79,  287,   81,  288,  277,  279,  282,  290,
143   278,  280,  118,  210,   96,   82,  253,   85,   87,  190,
144   323,  152,  285,  267,  221,   14,   83,  133,   15,    2,
145    16,   17,   18,   89,  274,
146 };
147 static short yysindex[] = {                                      0,
148     0,    0, -199,    0,    0,    0,  -53,    0,    0,    0,
149     0,    0,    0,    0,  646,    0,    0,    0, -217, -207,
150    44,    0,    0, -207,    0,    0,    0,  -32,  -32,    0,
151    66,    0, 2177,    0,    0,   69,   83,   93,  110,  -35,
152  2177,  119,  121,  136, 1013,  973,  -32, 1077, 1344, -146,
153  2177,   68,  -32, 2177, 2177, 2177, 2177, 2177, 2177, 1384,
154  1424,    0, 2177, 2177,  -32,  -32,  -32,  -32, -152,    0,
155   470,  845,  -13,  -65,  -63,    0,    0,   55,  137,  122,
156   138,    0,    0,    0,   60,    0,  -70,    0,  -66,  -70,
157     0,    0,    0,    0,    0, 2177,  146, 2177, 1085,   60,
158   -70,    0,    0,    0,    0,    0,    0,  152,  845,  153,
159  1464,  973,    0, 1085,    0,  -65,  138,    0, 2177,    0,
160   160,    0, 1085,    2,   76,  -52, 2177, 1085, 1524,    0,
161     0,    0,  -96,    0,  138, -181, -181, -181, -112, -112,
162   123,  -38,    0,  -74, -181, -181,    0,    0,    0,    0,
163    60,    0, 2177, 2177, 2177, 2177, 2177, 2177, 2177, 2177,
164  2177, 2177, 2177, 2177, 2177, 2177, 2177, 2177, 2177, 2177,
165  2177, 2177, 2177,    0,    0,  -16, 2177, 1731, 2177, 2177,
166  2177, 2177, 2177, 2177, 1791,    0, 2177,    0,    0,  -88,
167   -34,  -88,  339,    0, 2177,  287,    0,  -88, 2177, 2177,
168  2177, 2177,  173, 1850,    0,    0,    0,  -33,   46,  180,
169  2177,  138, 1910, 2025,    0,   97,    0,    0,  -31,  -29,
170     0, 2177,  133,    0,    0, -237, -237,    0, -237, -237,
171  -237,  -69,    0, 1614, 1085,  684,  167,  107,  845, 3800,
172  1125,  405, 1164,  778, -228, -181, -181, 2177,    0, 2117,
173  2177,    0,  197,  -48,    0,   -9,  -72,  -45,   -7,  -42,
174    56,  -36,    0,   -4,  845,  -10,  -47, 2177,  -47,    0,
175   216, 2177,    0, 2177,   60, -237,    0,  219,    0,  230,
176  -237,  233,  237,    0,  242,  470,    0,    0,  246,  225,
177  2177,    0,    0,    0,   13,    0,   18,    0,   29,    0,
178     0,    0,   61, 2177, 2177,   54,    0,   32,   63, 2177,
179   165,    0,    0,  174,    0,  178,    0,  191,    0,    0,
180     0,    0,    0,  261,    0,    0,  350,    0,    0,  182,
181   182,  182,  182, 2177,  182, 2177,  281,    0,    0,    0,
182     0,  102, 1237,  202,    0,    0,  294,    0,    0,    0,
183     0,    0,    0,    0, -152, -152, -130, -130,  297, -152,
184   290,  182,    0,    0,    0,    0,    0,    0,  182,  318,
185     0,    0,  182,    0, 1850, -152,  407,    0, 2177, -152,
186   324,    0,    0,  326,    0,  182,  182,    0, -130,    0,
187 };
188 static short yyrindex[] = {                                      0,
189     0,    0,  243,    0,    0,    0,    0,    0,    0,    0,
190     0,    0,    0,    0,    0,    0,    0,    0,  236,    0,
191     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
192     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
193    36,  451,    0,    0, 2208, 2271,    0,    0,    0,    0,
194     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
195     0,    0,    0,    0,    0,    0,    0,    0,  115,    0,
196   -12,  939, 2325, 2385, 2463,    0,    0, 2510, 2561,    0,
197  1220,    0,    0,    0,    0,    0,  -44,    0,    0,  -44,
198     0,    0,    0,    0,    0, 2271,    0,    0, 3846,    0,
199  -105,    0,    0,    0,    0,    0,    0,    0, 2612,    0,
200     0,  327,    0, 3883,  522,  583, 3032,    0,    0,    0,
201  2621,    0, 3893, 2385,    0,    0, 2271, 3930,    0,    0,
202     0,    0, 2667,    0, 3092, 3374, 3418, 3458, 3219, 3331,
203  2746,    0,    0,    0, 3496, 3567,    0,    0,    0,    0,
204     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
205     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
206     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
207     0,    0,    0,    0,    0,    0, 2797,    0,    0,  -23,
208     0,  -23,  913,    0,  327,    0,    0,  247,  336,    0,
209     0,    0,    0,  333,    0,    0,    0,    0,  352,    0,
210     0, 3138,    0,    0,    0,    0,    0,    0,    0, 2857,
211     0,    0, 2903,    0,    0,   -8,   -2,    0,    7,   33,
212    42, 2255,    0,  -28, 3968, 1822, 3732, 3769, 3023,    0,
213  4119, 4082, 4021, 4005, 1044, 3610, 3694,    0,    0,    0,
214     0,    0, 2949,    0,    0,    0,    0,    0,    0,    0,
215     0,    0,    0,    0, 3657,  -21,    0,  345,    0,    0,
216     0,    0,    0, 2271,    0,   71,    0,    0,    0,    0,
217   364,    0,    0,    0,    0,   86,    0,    0,    0,    0,
218     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
219     0,    0,    0,    0,    0,    0,    0,    0,    0,  327,
220     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
221     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
222     0,    0,    0,    0,    0,  355,    0,    0,    0,    0,
223     0,    0, 2972,    0,    0,    0,    0,    0,    0,    0,
224     0,    0,    0,    0,  115,  115,  175,  175,    0,  115,
225     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
226     0,    0,    0,    0,  374,  115,  913,    0,    0,  115,
227     0,    0,    0,    0,    0,    0,    0,    0,  175,    0,
228 };
229 static short yygindex[] = {                                      0,
230     0,    0,  164,  383,    0,   14,    0,   37,  655,  -89,
231     0,    0,    0, -336,  -15, 3415,    0, 2211,  368,  369,
232     0,    0,    0,  410,  916,    0,    0,  273, -163,   62,
233    94,  249,  -71, -186,  634,    0,    0,    0,  428,  -46,
234   184,  118,    0, -149,    0,    0,    0,    0,    0,    0,
235     0,    0,    0,    0,    0,
236 };
237 #define YYTABLESIZE 4423
238 static short yytable[] = {                                      71,
239    65,  193,  223,   65,  107,   22,  216,  292,  271,  301,
240   311,  321,  111,  314,   60,  111,  316,   60,  224,   65,
241   313,  372,  318,  250,  194,  181,  178,  183,   15,  111,
242   111,  312,   18,  126,  111,   62,  319,   64,   39,   84,
243   289,  214,  269,  192,  142,  144,   15,   16,  275,   86,
244    18,   69,  390,  338,  198,  217,   39,  180,  339,  182,
245   163,  164,  158,  159,  111,   16,    4,    5,    6,  340,
246     7,    8,  345,   17,  251,   26,  155,  179,   60,  155,
247   172,  113,   20,  173,  122,  315,  174,  175,  176,  293,
248    26,   17,  181,  155,  155,  208,  209,    9,  155,   62,
249    20,   64,   88,   65,   67,   98,  248,  129,  102,  177,
250   127,   38,  344,  219,   26,  199,  200,  201,  202,  203,
251   204,  188,  103,  347,  180,  151,   40,  337,  155,   38,
252   173,   66,  104,  174,  175,  176,  197,  226,  227,  229,
253   230,  231,  232,  233,   15,  369,  370,   26,  317,  105,
254    26,   26,   26,  341,   26,  346,   26,   26,  110,   26,
255   111,  254,  256,  257,  258,  259,  260,  261,  262,  264,
256   359,   23,   24,   26,   21,  112,  185,  184,   26,  209,
257   186,  187,   26,  276,  227,  195,  227,  225,  286,  189,
258   191,  205,   60,  206,  363,  295,  324,  297,  299,  213,
259   215,  220,  328,   21,  176,   26,  303,   21,   65,  266,
260    21,   21,   21,  222,   21,  384,   21,   21,  291,   21,
261   294,  300,  268,  304,   92,  158,  159,  158,  159,   93,
262   302,  159,  306,   21,  308,  309,  310,   26,   21,   26,
263    26,  249,    2,  111,  111,  111,  111,  158,  159,  320,
264   111,  158,  159,   60,  158,  159,  326,  158,  159,  330,
265   106,  158,  159,  158,  159,   21,  158,  159,  158,  159,
266   331,  111,  111,  332,  111,   44,  377,  333,   44,   44,
267    44,  334,   44,  336,   44,   44,  335,   44,  342,  348,
268   158,  159,  158,  159,  209,  158,  159,   21,  349,   21,
269    21,   44,  350,  322,  354,  322,   44,  155,  155,  155,
270   155,  329,  158,  159,  155,  351,  155,  158,  159,  352,
271   276,  362,  155,  155,  155,  155,  364,  273,  158,  159,
272   272,  158,  159,   44,  365,  155,  155,  373,  155,  155,
273   155,  155,  155,  155,  155,  158,  159,  155,  375,  166,
274   155,  155,  155,  158,  159,  158,  159,  379,   53,   71,
275   158,  159,  158,  159,  386,   44,  387,  180,   44,   62,
276    26,   26,   26,   26,   26,   26,   37,   26,   26,   26,
277    26,   26,   26,   26,   26,   26,   26,   26,   26,   26,
278   353,   35,  181,   26,   26,  163,   26,   26,   26,   26,
279    26,  158,  159,  178,   40,   26,   26,   26,   26,   26,
280    26,   26,  166,   37,   35,  172,   26,  101,  173,  131,
281   132,  174,  175,  176,   80,   26,  228,   26,   26,  361,
282    21,   21,   21,   21,   21,   21,  381,   21,   21,   21,
283    21,   21,   21,   21,   21,   21,   21,   21,   21,   21,
284   283,   90,  325,   21,   21,    0,   21,   21,   21,   21,
285    21,    0,    0,  270,    0,   21,   21,   21,   21,   21,
286    21,   21,  367,  368,    0,  172,   21,  374,  173,    0,
287     0,  174,  175,  176,    0,   21,    0,   21,   21,    0,
288     0,  162,    0,  382,  162,    0,    0,  385,   44,   44,
289    44,   44,   44,   44,    0,   44,   44,   44,  162,  162,
290     0,   44,    0,  162,   44,   44,   44,   44,    0,    0,
291     0,   44,   44,    0,   44,   44,   44,   44,   44,    0,
292     0,  383,    0,   44,   44,   44,   44,   44,   44,    0,
293     0,    0,    0,  162,   44,    0,    0,    0,    0,    0,
294     0,    0,    0,   44,  190,   44,   44,  190,  190,  190,
295     0,  190,  169,  190,  190,  169,  190,  160,    0,    0,
296     0,    0,    0,  161,  162,  163,  164,    0,    0,  169,
297   169,    0,    0,    0,  169,  190,    0,    0,    0,  165,
298   167,  168,  169,  170,  171,  172,    0,    0,  173,    0,
299     0,  174,  175,  176,    4,    5,    6,    0,    7,    8,
300     0,    0,  190,    0,  169,  191,    0,    0,  191,  191,
301   191,    0,  191,  134,  191,  191,  134,  191,    0,    0,
302   160,    0,    0,    0,    0,    9,  161,  162,  163,  164,
303   134,  134,    0,    0,    0,  134,  191,  190,    0,    0,
304     0,    0,  165,  167,  168,  169,  170,  171,  172,    0,
305     0,  173,   97,    0,  174,  175,  176,    0,    0,    0,
306     0,    0,    4,    5,    6,  134,    7,    8,   55,  119,
307   120,   65,   67,   53,    0,   60,  134,   68,   64,    0,
308    63,  161,  162,  163,  164,    0,    0,    0,  147,  148,
309   149,  150,    0,    9,   62,    0,    0,    0,  191,   66,
310   169,  170,  171,  172,    0,    0,  173,    0,    0,  174,
311   175,  176,  162,  162,  162,  162,    0,    0,    0,  162,
312     0,  162,    0,    0,    0,    0,   61,  162,  162,  162,
313   162,  153,  154,  155,  156,  211,    0,    0,  157,    0,
314   162,  162,    0,  162,  162,  162,  162,  162,  162,  162,
315     0,    0,  162,    0,    0,  162,  162,  162,   26,  158,
316   159,   56,    0,    0,    0,    0,    0,    0,  190,  190,
317   190,  190,  190,    0,  190,  190,  190,    0,    0,    0,
318   190,    0,    0,  169,  169,  169,  169,    0,    0,    0,
319   169,  190,  169,  190,  190,  190,  190,  190,  169,  169,
320   169,  169,  190,  190,  190,  190,  190,  190,    0,    0,
321     0,  169,  169,  190,  169,  169,  169,  169,  169,  169,
322   169,    0,  190,  169,  190,  190,  169,  169,  169,  191,
323   191,  191,  191,  191,    0,  191,  191,  191,    0,    0,
324     0,  191,    0,    0,  134,  134,  134,  134,    0,    0,
325     0,  134,  191,  134,  191,  191,  191,  191,  191,  134,
326   134,  134,  134,  191,  191,  191,  191,  191,  191,    0,
327     0,    0,  134,  134,  191,  134,  134,  134,  134,  134,
328   134,  134,    0,  191,  134,  191,  191,  134,  134,  134,
329     0,   25,   27,   28,   29,   30,   31,  166,   32,   33,
330    34,    0,    0,    0,   35,    0,    0,   36,   37,   38,
331    39,    0,    0,    0,   40,   41,    0,   42,   43,   44,
332    45,   46,    0,    0,    0,    0,   47,   48,   49,   50,
333    51,   52,    0,    0,    0,   44,    0,   54,   44,   44,
334    44,    0,   44,    0,   44,   44,   57,   44,   58,   59,
335     0,  117,    0,    0,    0,    0,    0,    0,    0,  135,
336   161,   44,  163,  164,    0,    0,   44,    0,    0,   78,
337     0,    0,   78,    0,    0,  356,  357,  358,    0,  360,
338     0,  171,  172,    0,    0,  173,   78,   78,  174,  175,
339   176,    0,    0,   44,    0,   55,    0,    0,   65,   67,
340    53,  117,   60,    0,   68,   64,  376,   63,    0,    0,
341     0,    0,    0,  378,    0,    0,    0,  380,    0,    0,
342     0,   78,    0,    0,  212,   44,   66,    0,   44,    0,
343   388,  389,  117,    0,    0,   55,    0,    0,   65,   67,
344    53,    0,   60,    0,   68,   64,    0,   63,    0,    0,
345     0,    0,    0,   61,  161,  162,  163,  164,    0,    0,
346     0,    0,    0,    0,    0,    0,   66,    0,    0,    0,
347     0,    0,    0,    0,  106,  171,  172,  106,    0,  173,
348     0,    0,  174,  175,  176,   26,    0,    0,   56,    0,
349     0,  106,  106,   61,    0,    0,  106,    0,    0,   55,
350     0,    0,   65,   67,   53,    0,   60,    0,   68,   64,
351     0,   63,    0,    0,    0,  160,    0,    0,    0,    0,
352     0,  161,  162,  163,  164,   26,  106,    0,   56,    0,
353    66,    0,    0,    0,    0,    0,    0,  165,  167,  168,
354   169,  170,  171,  172,    0,    0,  173,    0,    0,  174,
355   175,  176,    0,    0,    0,    0,    0,   61,   44,   44,
356    44,   44,   44,   44,    0,   44,   44,   44,    0,    0,
357     0,   44,    0,  117,   44,   44,   44,   44,    0,  117,
358     0,   44,   44,    0,   44,   44,   44,   44,   44,   26,
359     0,    0,   56,   44,   44,   44,   44,   44,   44,    0,
360    78,   78,   78,   78,   44,    0,    0,   78,    0,    0,
361     0,    0,    0,   44,    0,   44,   44,    0,    0,  115,
362    28,   29,   30,   31,   93,   32,   33,   34,   78,   78,
363     0,   35,    0,    0,    0,    0,    0,    0,    0,    0,
364     0,    0,   41,    0,   42,   43,   44,   45,   46,    0,
365    75,    0,    0,   47,   48,   49,   50,   51,   52,   27,
366    28,   29,   30,   31,   54,   32,   33,   34,   75,    0,
367     0,   35,    0,   57,    0,   58,   59,    0,    0,    0,
368     0,    0,   41,    0,   42,   43,   44,   45,   46,  166,
369     0,    0,    0,   47,   48,   49,   50,   51,   52,    0,
370     0,    0,   75,    0,   54,  106,  106,  106,  106,    0,
371     0,    0,  106,   57,  106,   58,   59,    0,    0,    0,
372   106,  106,    0,  121,   28,   29,   30,   31,    0,   32,
373    33,   34,    0,  106,  106,   35,  106,  106,  106,  106,
374   106,  106,    0,    0,    0,    0,   41,    0,   42,   43,
375    44,   45,   46,    0,    0,    0,    0,   47,   48,   49,
376    50,   51,   52,  163,  164,    0,   55,    0,   54,   65,
377    67,   53,    0,   60,    0,   68,   64,   57,   63,   58,
378    59,    0,  171,  172,    0,    0,  173,    0,    0,  174,
379   175,  176,  125,    0,    0,    0,    0,   66,    0,    0,
380     0,  161,  162,  163,  164,    0,   55,    0,    0,   65,
381    67,   53,    0,   60,  141,   68,   64,    0,   63,  168,
382   169,  170,  171,  172,   61,    0,  173,    0,    0,  174,
383   175,  176,    0,    0,    0,    0,    0,   66,    0,    0,
384   161,  162,  163,  164,    0,    0,   55,    0,    0,   65,
385    67,   53,    0,   60,    0,   68,   64,    0,   63,   56,
386   170,  171,  172,    0,   61,  173,    0,    0,  174,  175,
387   176,    0,    0,    0,    0,    0,    0,   66,    0,    0,
388     0,   75,   75,   75,   75,    0,   55,    0,   75,   65,
389    67,   53,    0,   60,  207,   68,   64,    0,   63,   56,
390     0,    0,    0,    0,   61,    0,  143,  160,    0,   75,
391    75,    0,    0,  161,  162,  163,  164,   66,    0,    0,
392     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
393   167,  168,  169,  170,  171,  172,    0,    0,  173,   56,
394     0,  174,  175,  176,   61,    0,   55,    0,    0,   65,
395    67,   53,    0,   60,  218,   68,   64,    0,   63,    0,
396     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
397     0,    0,    0,    0,    0,    0,    0,   66,    0,   56,
398     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
399    27,   28,   29,   30,   31,    0,   32,   33,   34,    0,
400     0,    0,   35,    0,   61,    0,    0,    0,    0,    0,
401     0,    0,    0,   41,    0,   42,   43,   44,   45,   46,
402     0,    0,    0,    0,   47,   48,   49,   50,   51,   52,
403    27,   28,   29,   30,   31,   54,   32,   33,   34,   56,
404     0,    0,   35,    0,   57,    0,   58,   59,    0,    0,
405     0,    0,    0,   41,    0,   42,   43,   44,   45,   46,
406     0,    0,    0,    0,   47,   48,   49,   50,   51,   52,
407    27,   28,   29,   30,   31,   54,   32,   33,   34,    0,
408     0,    0,   35,    0,   57,    0,   58,   59,    0,    0,
409     0,    0,    0,   41,    0,   42,   43,   44,   45,   46,
410     0,    0,    0,    0,   47,   48,   49,   50,   51,   52,
411    27,   28,   29,   30,   31,   54,   32,   33,   34,    0,
412     0,    0,   35,    0,   57,    0,   58,   59,    0,    0,
413     0,    0,    0,   41,    0,   42,   43,   44,   45,   46,
414     0,    0,    0,    0,   47,   48,   49,   50,   51,   52,
415     0,    0,    0,   55,    0,   54,   65,   67,   53,    0,
416    60,  255,   68,   64,   57,   63,   58,   59,    0,    0,
417    27,   28,   29,   30,   31,    0,   32,   33,   34,    0,
418     0,    0,   35,    0,   66,    0,    0,    0,    0,    0,
419     0,    0,    0,   41,    0,   42,   43,   44,   45,   46,
420     0,    0,    0,    0,   47,   48,   49,   50,   51,   52,
421     0,   61,    0,   55,    0,   54,   65,   67,   53,    0,
422    60,  263,   68,   64,   57,   63,   58,   59,    0,    0,
423     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
424     0,    0,    0,    0,   66,    0,   56,    0,    0,    0,
425     0,    0,  108,    0,    0,  108,    0,    0,    0,    0,
426     0,    0,    0,    0,    0,    0,    0,    0,    0,  108,
427   108,   61,   55,    0,  108,   65,   67,   53,    0,   60,
428     0,   68,   64,    0,   63,    0,    0,    0,    0,    0,
429   161,  162,  163,  164,    0,    0,    0,    0,    0,    0,
430     0,    0,    0,   66,  108,    0,   56,  167,  168,  169,
431   170,  171,  172,    0,    0,  173,    0,    0,  174,  175,
432   176,    0,    0,    0,    0,    0,    0,    0,    0,    0,
433    61,    0,   55,    0,    0,   65,   67,   53,    0,   60,
434   296,   68,   64,    0,   63,    0,    0,    0,    0,    0,
435     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
436     0,    0,    0,   66,    0,   56,    0,    0,    0,    0,
437     0,    0,    0,    0,    0,    0,    0,   27,   28,   29,
438    30,   31,    0,   32,   33,   34,    0,    0,    0,   35,
439    61,    0,    0,    0,    0,    0,    0,    0,    0,    0,
440    41,    0,   42,   43,   44,   45,   46,    0,    0,    0,
441     0,   47,   48,   49,   50,   51,   52,    0,    0,    0,
442     0,    0,   54,    0,    0,   56,    0,    0,    0,    0,
443     0,   57,    0,   58,   59,    0,    0,   27,   28,   29,
444    30,   31,    0,   32,   33,   34,    0,   55,    0,   35,
445    65,   67,   53,    0,   60,  298,   68,   64,    0,   63,
446    41,    0,   42,   43,   44,   45,   46,    0,    0,    0,
447     0,   47,   48,   49,   50,   51,   52,    0,   66,    0,
448     0,    0,   54,  108,  108,  108,  108,    0,    0,    0,
449   108,   57,  108,   58,   59,   25,   27,   28,   29,   30,
450    31,    0,   32,   33,   34,   61,    0,    0,   35,    0,
451     0,  108,  108,    0,  108,  108,  108,  108,  108,   41,
452     0,   42,   43,   44,   45,   46,    0,    0,    0,    0,
453    47,   48,   49,   50,   51,   52,    0,    0,    0,   55,
454    56,   54,   65,   67,   53,    0,   60,  307,   68,   64,
455    57,   63,   58,   59,    0,    0,   27,   28,   29,   30,
456    31,    0,   32,   33,   34,    0,    0,    0,   35,    0,
457    66,    0,    0,    0,    0,    0,    0,    0,    0,   41,
458     0,   42,   43,   44,   45,   46,    0,    0,    0,    0,
459    47,   48,   49,   50,   51,   52,    0,   61,    0,   55,
460     0,   54,   65,   67,   53,    0,   60,    0,   68,   64,
461    57,   63,   58,   59,    0,    0,    0,    0,    0,    0,
462     0,    0,    0,    0,    0,    0,    0,    0,   95,   95,
463    66,    0,   56,    0,    0,    0,    0,    0,  158,    0,
464   108,  158,    0,    0,    0,    0,  116,   95,  124,    0,
465     0,    0,  130,   95,    0,  158,  158,   61,    0,    0,
466   158,    0,    0,    0,    0,   95,   95,   95,   95,    0,
467     0,   27,   28,   29,   30,   31,    0,   32,   33,   34,
468     0,    0,    0,   35,    0,   74,    0,    0,   74,    0,
469   158,    0,   56,    0,   41,    0,   42,   43,   44,   45,
470    46,  178,    0,   74,  178,   47,   48,   49,   50,   51,
471    52,    0,  116,    0,    0,    0,   54,    0,  178,  178,
472     0,    0,    0,  178,    0,   57,    0,   58,   59,    0,
473     0,    0,    0,    0,    0,    0,    0,   74,    0,    0,
474     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
475     0,    0,    0,  178,    0,  139,    0,    0,  139,    0,
476     0,    0,    0,   27,   28,   29,   30,   31,    0,   32,
477    33,   34,  139,  139,    0,   35,  252,  139,    0,    0,
478     0,    0,    0,    0,    0,    0,   41,    0,   42,   43,
479    44,   45,   46,    0,    0,    0,    0,   47,   48,   49,
480    50,   51,   52,  284,    0,    0,    0,  139,   54,    0,
481     0,    0,    0,    0,    0,  134,    0,   57,  134,   58,
482    59,    0,    0,   27,   28,   29,   30,   31,    0,   32,
483    33,   34,  134,  134,    0,   35,    0,  134,    0,    0,
484     0,    0,    0,    0,    0,    0,   41,    0,   42,   43,
485    44,   45,   46,    0,    0,    0,    0,   47,   48,   49,
486    50,   51,   52,    0,    0,    0,    0,  134,   54,  158,
487   158,  158,  158,    0,    0,    0,  158,   57,  158,   58,
488    59,    0,    0,    0,  158,  158,  158,  158,    0,    0,
489     0,    0,    0,  137,    0,    0,  137,  158,  158,    0,
490   158,  158,  158,  158,  158,  158,  158,    0,    0,  158,
491   137,  137,  158,  158,  158,  137,   74,   74,   74,   74,
492     0,    0,    0,   74,    0,    0,    0,    0,    0,    0,
493     0,    0,  178,  178,  178,  178,    0,    0,    0,  178,
494   135,  178,    0,  135,   74,  137,    0,  178,  178,  178,
495   178,    0,    0,    0,    0,    0,    0,  135,  135,    0,
496   178,  178,  135,  178,  178,  178,  178,  178,  178,  178,
497     0,    0,  178,    0,    0,  178,  178,  178,    0,    0,
498     0,    0,    0,    0,    0,    0,  139,  139,  139,  139,
499     0,  145,  135,  139,  145,  139,    0,    0,    0,    0,
500     0,  139,  139,  139,  139,    0,    0,    0,  145,  145,
501     0,    0,    0,  145,  139,  139,    0,  139,  139,  139,
502   139,  139,  139,  139,    0,    0,  139,    0,    0,  139,
503   139,  139,    0,    0,    0,    0,    0,    0,    0,    0,
504     0,    0,  156,  145,    0,  156,  134,  134,  134,  134,
505     0,  169,    0,  134,  169,  134,    0,    0,    0,  156,
506   156,  134,  134,  134,  134,    0,    0,    0,  169,  169,
507     0,    0,    0,  169,  134,  134,    0,  134,  134,  134,
508   134,  134,  134,  134,    0,    0,  134,    0,    0,  134,
509   134,  134,    0,    0,  156,    0,    0,  172,    0,    0,
510   172,    0,    0,  169,    0,    0,    0,    0,    0,    0,
511     0,    0,    0,    0,  172,  172,    0,    0,    0,  172,
512     0,    0,    0,    0,  137,  137,  137,  137,    0,    0,
513     0,  137,    0,  137,    0,    0,    0,    0,    0,  137,
514   137,  137,  137,    0,    0,    0,    0,    0,    0,  172,
515     0,    0,  137,  137,    0,  137,  137,  137,  137,  137,
516   137,  137,    0,    0,  137,    0,    0,  137,  137,  137,
517     0,  135,  135,  135,  135,    0,  128,    0,  135,  128,
518   135,    0,    0,    0,    0,    0,  135,  135,  135,  135,
519     0,    0,    0,  128,  128,    0,    0,    0,  128,  135,
520   135,    0,  135,  135,  135,  135,  135,  135,  135,    0,
521     0,  135,    0,    0,  135,  135,  135,    0,    0,    0,
522     0,    0,  145,  145,  145,  145,    0,   76,  128,  145,
523    76,  145,    0,    0,    0,    0,    0,  145,  145,  145,
524   145,    0,    0,    0,   76,   76,    0,    0,    0,   76,
525   145,  145,    0,  145,  145,  145,  145,  145,  145,  145,
526     0,    0,  145,    0,    0,  145,  145,  145,    0,    0,
527     0,    0,    0,  156,  156,  156,  156,    0,    0,   76,
528   156,    0,  169,  169,  169,  169,    0,   66,    0,  169,
529    66,  169,    0,    0,    0,    0,    0,  169,  169,  169,
530   169,  156,  156,    0,   66,   66,    0,    0,    0,   66,
531   169,  169,    0,  169,  169,  169,  169,  169,  169,  169,
532     0,    0,  169,    0,    0,  169,  169,  169,  172,  172,
533   172,  172,    0,  127,    0,  172,  127,  172,    0,   66,
534     0,    0,    0,  172,  172,  172,  172,    0,    0,    0,
535   127,  127,    0,    0,    0,  127,  172,  172,    0,  172,
536   172,  172,  172,  172,  172,  172,    0,    0,  172,    0,
537     0,  172,  172,  172,    0,    0,    0,    0,    0,   82,
538     0,    0,   82,    0,    0,  127,    0,    0,    0,    0,
539     0,    0,    0,    0,    0,    0,   82,   82,    0,    0,
540     0,   82,  114,    0,    0,  114,    0,  128,  128,  128,
541   128,    0,    0,    0,  128,    0,  128,    0,    0,  114,
542   114,    0,  128,  128,  128,  128,    0,    0,    0,    0,
543     0,   82,    0,    0,    0,  128,  128,    0,  128,  128,
544   128,  128,  128,  128,  128,    0,    0,  128,    0,    0,
545   128,  128,  128,  102,  114,    0,  102,    0,   76,   76,
546    76,   76,  179,    0,    0,   76,    0,   76,    0,    0,
547   102,  102,    0,   76,   76,   76,   76,    0,    0,  179,
548   179,    0,    0,    0,  179,    0,   76,   76,    0,   76,
549    76,   76,   76,   76,   76,   76,    0,    0,   76,    0,
550     0,   76,   76,   76,    0,  102,    0,    0,    0,    0,
551     0,    0,    0,    0,  179,    0,    0,    0,   66,   66,
552    66,   66,  157,    0,    0,   66,    0,   66,    0,    0,
553     0,    0,    0,   66,   66,   66,   66,    0,    0,  157,
554   157,    0,    0,    0,  157,    0,   66,   66,    0,   66,
555    66,   66,   66,   66,   66,   66,    0,    0,   66,    0,
556     0,   66,   66,   66,  127,  127,  127,  127,   79,    0,
557     0,  127,    0,  127,  157,    0,    0,    0,    0,  127,
558   127,  127,  127,    0,    0,   79,   79,    0,    0,    0,
559    79,    0,  127,  127,    0,  127,  127,  127,  127,  127,
560   127,  127,    0,    0,  127,    0,    0,  127,  127,  127,
561    82,   82,   82,   82,    0,    0,    0,   82,    0,   82,
562    79,    0,    0,    0,    0,   82,   82,   82,   82,    0,
563     0,    0,    0,  114,  114,  114,  114,    0,   82,   82,
564   114,   82,   82,   82,   82,   82,   82,   82,    0,  123,
565    82,    0,  123,   82,   82,   82,    0,    0,    0,    0,
566     0,  114,  114,    0,  114,    0,  123,  123,    0,    0,
567     0,  123,    0,    0,    0,    0,    0,    0,    0,    0,
568     0,    0,    0,    0,  102,  102,  102,  102,    0,    0,
569     0,  102,    0,  179,  179,  179,  179,    0,    0,    0,
570   179,  123,  179,    0,    0,    0,    0,    0,  179,  179,
571   179,  179,  102,  102,    0,    0,    0,    0,    0,    0,
572     0,  179,  179,    0,  179,  179,  179,  179,  179,  179,
573   179,    0,    0,  179,    0,    0,  179,  179,  179,    0,
574     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
575     0,    0,    0,  157,  157,  157,  157,    0,    0,    0,
576   157,  124,  157,    0,  124,    0,    0,    0,  157,  157,
577   157,  157,    0,    0,    0,    0,    0,    0,  124,  124,
578     0,  157,  157,  124,  157,  157,  157,  157,  157,  157,
579   157,    0,    0,  157,    0,    0,  157,  157,  157,   79,
580    79,   79,   79,    0,  118,    0,   79,  118,   79,    0,
581     0,    0,    0,  124,   79,   79,   79,   79,    0,    0,
582     0,  118,  118,    0,    0,    0,  118,   79,   79,    0,
583    79,   79,   79,   79,   79,   79,   79,   99,    0,   79,
584     0,    0,   79,   79,   79,  109,    0,    0,  119,  114,
585     0,  119,  123,    0,    0,  128,  118,    0,    0,  136,
586   137,  138,  139,  140,    0,  119,  119,  145,  146,    0,
587   119,    0,    0,    0,    0,    0,    0,    0,    0,    0,
588   123,  123,  123,  123,    0,    0,    0,  123,  120,  123,
589     0,  120,    0,    0,    0,  123,  123,  123,  123,    0,
590   119,    0,  196,    0,    0,  120,  120,    0,  123,  123,
591   120,  123,  123,  123,  123,  123,  123,  123,    0,    0,
592   123,    0,    0,    0,    0,    0,  116,    0,    0,  116,
593     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
594   120,    0,    0,  116,  116,    0,    0,    0,  116,    0,
595     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
596     0,    0,    0,    0,  234,  235,  236,  237,  238,  239,
597   240,  241,  242,  243,  244,  245,  246,  247,  116,    0,
598     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
599     0,  265,  124,  124,  124,  124,    0,  117,    0,  124,
600   117,  124,    0,    0,    0,    0,    0,  124,  124,  124,
601   124,    0,    0,    0,  117,  117,    0,    0,    0,  117,
602   124,  124,    0,  124,  124,  124,  124,  124,  124,  124,
603     0,    0,  124,    0,    0,  118,  118,  118,  118,    0,
604   115,    0,  118,  115,  118,    0,    0,    0,    0,  117,
605   118,  118,  118,  118,    0,    0,    0,  115,  115,    0,
606     0,    0,  115,  118,  118,    0,  118,  118,  118,  118,
607   118,  118,  118,    0,    0,    0,  327,    0,    0,  119,
608   119,  119,  119,    0,    0,    0,  119,   77,  119,    0,
609    77,    0,  115,    0,  119,  119,  119,  119,    0,    0,
610     0,    0,    0,    0,   77,   77,    0,  119,  119,  343,
611   119,  119,  119,  119,  119,  119,  119,    0,    0,  120,
612   120,  120,  120,    0,  103,    0,  120,  103,  120,    0,
613     0,    0,    0,    0,  120,  120,  120,  120,    0,   77,
614     0,  103,  103,    0,    0,    0,  103,  120,  120,    0,
615   120,  120,  120,  120,  120,  120,  120,  116,  116,  116,
616   116,    0,  104,    0,  116,  104,  116,    0,    0,    0,
617     0,    0,  116,  116,  116,  116,  103,    0,    0,  104,
618   104,    0,    0,    0,  104,  116,  116,    0,  116,  116,
619   116,  116,  116,  116,  116,    0,    0,    0,    0,  105,
620     0,    0,  105,    0,    0,    0,    0,    0,    0,    0,
621     0,    0,    0,    0,  104,    0,  105,  105,    0,    0,
622     0,  105,    0,    0,    0,    0,    0,    0,  117,  117,
623   117,  117,    0,    0,    0,  117,    0,  117,    0,    0,
624     0,    0,    0,  117,  117,  117,  117,  305,    0,    0,
625     0,  105,  166,    0,    0,    0,  117,  117,    0,  117,
626   117,  117,  117,  117,  117,  117,    0,    0,    0,    0,
627     0,  115,  115,  115,  115,    0,  161,    0,  115,  161,
628   115,    0,    0,    0,    0,    0,  115,  115,  115,  115,
629     0,    0,    0,  161,  161,    0,    0,    0,  161,  115,
630   115,    0,  115,  115,  115,  115,  115,  115,  115,    0,
631     0,    0,    0,  160,    0,    0,  160,    0,   77,   77,
632    77,   77,    0,  149,    0,   77,  149,    0,  161,    0,
633   160,  160,    0,    0,    0,  160,    0,    0,    0,    0,
634   149,  149,    0,    0,    0,  149,   77,   77,    0,    0,
635     0,    0,    0,    0,    0,  103,  103,  103,  103,    0,
636   126,    0,  103,  126,  103,  160,    0,    0,    0,    0,
637   103,  103,  103,  103,    0,  149,    0,  126,  126,    0,
638     0,    0,  126,  103,  103,    0,  103,  103,  103,  103,
639   103,  103,  103,  104,  104,  104,  104,    0,  107,    0,
640   104,  107,  104,    0,    0,    0,    0,    0,  104,  104,
641   104,  104,  126,    0,    0,  107,  107,    0,    0,    0,
642   107,  104,  104,    0,  104,  104,  104,  104,  104,  104,
643   105,  105,  105,  105,    0,  109,    0,  105,  109,  105,
644     0,    0,    0,    0,    0,  105,  105,    0,  105,    0,
645   107,  110,  109,  109,  110,    0,    0,  109,  105,  105,
646     0,  105,  105,  105,  105,  105,  105,    0,  110,  110,
647   160,    0,    0,  110,    0,    0,  161,  162,  163,  164,
648     0,    0,    0,    0,    0,    0,    0,  109,    0,    0,
649     0,    0,  165,  167,  168,  169,  170,  171,  172,    0,
650     0,  173,    0,  110,  174,  175,  176,  161,  161,  161,
651   161,    0,  112,    0,  161,  112,  161,    0,    0,    0,
652     0,    0,  161,  161,    0,    0,    0,    0,    0,  112,
653   112,    0,    0,    0,  112,  161,  161,    0,  161,  161,
654   161,  161,  161,    0,  160,  160,  160,  160,    0,  113,
655     0,  160,  113,  160,  149,  149,  149,  149,    0,  160,
656   160,  149,    0,  149,  112,    0,  113,  113,    0,  149,
657   149,  113,  160,  160,    0,  160,  160,  160,  160,  160,
658     0,    0,  149,  149,    0,  149,  149,  149,  149,  149,
659     0,  126,  126,  126,  126,    0,    0,    0,  126,    0,
660   126,  113,    0,    0,    0,    0,  126,  126,    0,    0,
661     0,    0,    0,    0,    0,    0,    0,    0,    0,  126,
662   126,    0,  126,  126,  126,  126,  126,    0,    0,  107,
663   107,  107,  107,    0,    0,    0,  107,    0,  107,    0,
664     0,    0,    0,    0,    0,  107,    0,    0,    0,    0,
665     0,    0,    0,    0,    0,    0,    0,  107,  107,    0,
666   107,  107,  107,  107,  107,    0,  109,  109,  109,  109,
667     0,    0,    0,  109,    0,  109,    0,    0,    0,    0,
668     0,    0,  110,  110,  110,  110,    0,    0,    0,  110,
669     0,  110,    0,    0,  109,  109,    0,  109,  109,  109,
670   109,  109,    0,    0,    0,    0,    0,    0,    0,    0,
671   110,  110,    0,  110,  110,  110,  110,    0,    0,    0,
672     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
673     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
674     0,    0,    0,  112,  112,  112,  112,    0,    0,    0,
675   112,    0,  112,    0,    0,    0,    0,    0,    0,    0,
676     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
677     0,  112,  112,    0,  112,  112,  112,    0,    0,    0,
678   113,  113,  113,  113,    0,    0,    0,  113,    0,  113,
679     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
680     0,    0,    0,    0,    0,    0,    0,    0,  113,  113,
681     0,  113,  113,
682 };
683 static short yycheck[] = {                                      15,
684    36,   91,   41,   36,   40,   59,   59,   41,  195,   41,
685    59,   59,   41,   59,   59,   44,   59,  123,   93,   36,
686    93,  358,   59,   40,   96,   91,   40,   91,   41,   58,
687    59,   41,   41,   49,   63,   59,   41,   59,   41,  257,
688   204,   40,  192,   90,   60,   61,   59,   41,  198,  257,
689    59,   15,  389,   41,  101,  127,   59,  123,   41,  123,
690   289,  290,  300,  301,   93,   59,  266,  267,  268,   41,
691   270,  271,   41,   41,   91,  123,   41,   91,  123,   44,
692   309,   45,   41,  312,   48,   93,  315,  316,  317,   44,
693   123,   59,   91,   58,   59,  111,  112,  297,   63,  123,
694    59,  123,   59,   36,   37,   40,  123,   40,   40,  123,
695   257,   41,   59,  129,    0,  102,  103,  104,  105,  106,
696   107,   85,   40,  310,  123,  278,   41,  291,   93,   59,
697   312,   64,   40,  315,  316,  317,  100,  153,  154,  155,
698   156,  157,  158,  159,   59,  276,  277,   33,   93,   40,
699    36,   37,   38,   93,   40,   93,   42,   43,   40,   45,
700    40,  177,  178,  179,  180,  181,  182,  183,  184,  185,
701   334,    8,    9,   59,    0,   40,   40,  123,   64,  195,
702    59,   44,  123,  199,  200,   40,  202,  151,  204,  260,
703   257,   40,  298,   41,   93,  211,  268,  213,  214,   40,
704   125,  298,  274,  257,  317,   91,  222,   33,   36,  298,
705    36,   37,   38,   91,   40,  379,   42,   43,  205,   45,
706    41,  125,  257,   91,  257,  300,  301,  300,  301,  262,
707   260,  301,  248,   59,  250,  251,   40,  123,   64,  125,
708   126,  258,    0,  272,  273,  274,  275,  300,  301,  260,
709   279,  300,  301,  298,  300,  301,   41,  300,  301,   41,
710   296,  300,  301,  300,  301,   91,  300,  301,  300,  301,
711    41,  300,  301,   41,  303,   33,  366,   41,   36,   37,
712    38,   40,   40,   59,   42,   43,   41,   45,  304,  125,
713   300,  301,  300,  301,  310,  300,  301,  123,  125,  125,
714   126,   59,  125,  267,  123,  269,   64,  272,  273,  274,
715   275,  275,  300,  301,  279,  125,  281,  300,  301,   59,
716   336,   41,  287,  288,  289,  290,  125,   41,  300,  301,
717    44,  300,  301,   91,   41,  300,  301,   41,  303,  304,
718   305,  306,  307,  308,  309,  300,  301,  312,   59,   63,
719   315,  316,  317,  300,  301,  300,  301,   40,  123,  375,
720   300,  301,  300,  301,   41,  123,   41,   41,  126,  123,
721   256,  257,  258,  259,  260,  261,   41,  263,  264,  265,
722   266,  267,  268,  269,  270,  271,  272,  273,  274,  275,
723    41,   59,   41,  279,  280,  289,  282,  283,  284,  285,
724   286,  300,  301,   59,   41,  291,  292,  293,  294,  295,
725   296,  297,   63,   59,   41,  309,  302,   35,  312,   52,
726    52,  315,  316,  317,   15,  311,  154,  313,  314,  336,
727   256,  257,  258,  259,  260,  261,  375,  263,  264,  265,
728   266,  267,  268,  269,  270,  271,  272,  273,  274,  275,
729   202,   24,  269,  279,  280,   -1,  282,  283,  284,  285,
730   286,   -1,   -1,  125,   -1,  291,  292,  293,  294,  295,
731   296,  297,  355,  356,   -1,  309,  302,  360,  312,   -1,
732    -1,  315,  316,  317,   -1,  311,   -1,  313,  314,   -1,
733    -1,   41,   -1,  376,   44,   -1,   -1,  380,  256,  257,
734   258,  259,  260,  261,   -1,  263,  264,  265,   58,   59,
735    -1,  269,   -1,   63,  272,  273,  274,  275,   -1,   -1,
736    -1,  279,  280,   -1,  282,  283,  284,  285,  286,   -1,
737    -1,  125,   -1,  291,  292,  293,  294,  295,  296,   -1,
738    -1,   -1,   -1,   93,  302,   -1,   -1,   -1,   -1,   -1,
739    -1,   -1,   -1,  311,   33,  313,  314,   36,   37,   38,
740    -1,   40,   41,   42,   43,   44,   45,  281,   -1,   -1,
741    -1,   -1,   -1,  287,  288,  289,  290,   -1,   -1,   58,
742    59,   -1,   -1,   -1,   63,   64,   -1,   -1,   -1,  303,
743   304,  305,  306,  307,  308,  309,   -1,   -1,  312,   -1,
744    -1,  315,  316,  317,  266,  267,  268,   -1,  270,  271,
745    -1,   -1,   91,   -1,   93,   33,   -1,   -1,   36,   37,
746    38,   -1,   40,   41,   42,   43,   44,   45,   -1,   -1,
747   281,   -1,   -1,   -1,   -1,  297,  287,  288,  289,  290,
748    58,   59,   -1,   -1,   -1,   63,   64,  126,   -1,   -1,
749    -1,   -1,  303,  304,  305,  306,  307,  308,  309,   -1,
750    -1,  312,   29,   -1,  315,  316,  317,   -1,   -1,   -1,
751    -1,   -1,  266,  267,  268,   93,  270,  271,   33,   46,
752    47,   36,   37,   38,   -1,   40,   53,   42,   43,   -1,
753    45,  287,  288,  289,  290,   -1,   -1,   -1,   65,   66,
754    67,   68,   -1,  297,   59,   -1,   -1,   -1,  126,   64,
755   306,  307,  308,  309,   -1,   -1,  312,   -1,   -1,  315,
756   316,  317,  272,  273,  274,  275,   -1,   -1,   -1,  279,
757    -1,  281,   -1,   -1,   -1,   -1,   91,  287,  288,  289,
758   290,  272,  273,  274,  275,  112,   -1,   -1,  279,   -1,
759   300,  301,   -1,  303,  304,  305,  306,  307,  308,  309,
760    -1,   -1,  312,   -1,   -1,  315,  316,  317,  123,  300,
761   301,  126,   -1,   -1,   -1,   -1,   -1,   -1,  257,  258,
762   259,  260,  261,   -1,  263,  264,  265,   -1,   -1,   -1,
763   269,   -1,   -1,  272,  273,  274,  275,   -1,   -1,   -1,
764   279,  280,  281,  282,  283,  284,  285,  286,  287,  288,
765   289,  290,  291,  292,  293,  294,  295,  296,   -1,   -1,
766    -1,  300,  301,  302,  303,  304,  305,  306,  307,  308,
767   309,   -1,  311,  312,  313,  314,  315,  316,  317,  257,
768   258,  259,  260,  261,   -1,  263,  264,  265,   -1,   -1,
769    -1,  269,   -1,   -1,  272,  273,  274,  275,   -1,   -1,
770    -1,  279,  280,  281,  282,  283,  284,  285,  286,  287,
771   288,  289,  290,  291,  292,  293,  294,  295,  296,   -1,
772    -1,   -1,  300,  301,  302,  303,  304,  305,  306,  307,
773   308,  309,   -1,  311,  312,  313,  314,  315,  316,  317,
774    -1,  256,  257,  258,  259,  260,  261,   63,  263,  264,
775   265,   -1,   -1,   -1,  269,   -1,   -1,  272,  273,  274,
776   275,   -1,   -1,   -1,  279,  280,   -1,  282,  283,  284,
777   285,  286,   -1,   -1,   -1,   -1,  291,  292,  293,  294,
778   295,  296,   -1,   -1,   -1,   33,   -1,  302,   36,   37,
779    38,   -1,   40,   -1,   42,   43,  311,   45,  313,  314,
780    -1,   46,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   54,
781   287,   59,  289,  290,   -1,   -1,   64,   -1,   -1,   41,
782    -1,   -1,   44,   -1,   -1,  331,  332,  333,   -1,  335,
783    -1,  308,  309,   -1,   -1,  312,   58,   59,  315,  316,
784   317,   -1,   -1,   91,   -1,   33,   -1,   -1,   36,   37,
785    38,   96,   40,   -1,   42,   43,  362,   45,   -1,   -1,
786    -1,   -1,   -1,  369,   -1,   -1,   -1,  373,   -1,   -1,
787    -1,   93,   -1,   -1,  119,  123,   64,   -1,  126,   -1,
788   386,  387,  127,   -1,   -1,   33,   -1,   -1,   36,   37,
789    38,   -1,   40,   -1,   42,   43,   -1,   45,   -1,   -1,
790    -1,   -1,   -1,   91,  287,  288,  289,  290,   -1,   -1,
791    -1,   -1,   -1,   -1,   -1,   -1,   64,   -1,   -1,   -1,
792    -1,   -1,   -1,   -1,   41,  308,  309,   44,   -1,  312,
793    -1,   -1,  315,  316,  317,  123,   -1,   -1,  126,   -1,
794    -1,   58,   59,   91,   -1,   -1,   63,   -1,   -1,   33,
795    -1,   -1,   36,   37,   38,   -1,   40,   -1,   42,   43,
796    -1,   45,   -1,   -1,   -1,  281,   -1,   -1,   -1,   -1,
797    -1,  287,  288,  289,  290,  123,   93,   -1,  126,   -1,
798    64,   -1,   -1,   -1,   -1,   -1,   -1,  303,  304,  305,
799   306,  307,  308,  309,   -1,   -1,  312,   -1,   -1,  315,
800   316,  317,   -1,   -1,   -1,   -1,   -1,   91,  256,  257,
801   258,  259,  260,  261,   -1,  263,  264,  265,   -1,   -1,
802    -1,  269,   -1,  268,  272,  273,  274,  275,   -1,  274,
803    -1,  279,  280,   -1,  282,  283,  284,  285,  286,  123,
804    -1,   -1,  126,  291,  292,  293,  294,  295,  296,   -1,
805   272,  273,  274,  275,  302,   -1,   -1,  279,   -1,   -1,
806    -1,   -1,   -1,  311,   -1,  313,  314,   -1,   -1,  257,
807   258,  259,  260,  261,  262,  263,  264,  265,  300,  301,
808    -1,  269,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
809    -1,   -1,  280,   -1,  282,  283,  284,  285,  286,   -1,
810    41,   -1,   -1,  291,  292,  293,  294,  295,  296,  257,
811   258,  259,  260,  261,  302,  263,  264,  265,   59,   -1,
812    -1,  269,   -1,  311,   -1,  313,  314,   -1,   -1,   -1,
813    -1,   -1,  280,   -1,  282,  283,  284,  285,  286,   63,
814    -1,   -1,   -1,  291,  292,  293,  294,  295,  296,   -1,
815    -1,   -1,   93,   -1,  302,  272,  273,  274,  275,   -1,
816    -1,   -1,  279,  311,  281,  313,  314,   -1,   -1,   -1,
817   287,  288,   -1,  257,  258,  259,  260,  261,   -1,  263,
818   264,  265,   -1,  300,  301,  269,  303,  304,  305,  306,
819   307,  308,   -1,   -1,   -1,   -1,  280,   -1,  282,  283,
820   284,  285,  286,   -1,   -1,   -1,   -1,  291,  292,  293,
821   294,  295,  296,  289,  290,   -1,   33,   -1,  302,   36,
822    37,   38,   -1,   40,   -1,   42,   43,  311,   45,  313,
823   314,   -1,  308,  309,   -1,   -1,  312,   -1,   -1,  315,
824   316,  317,   59,   -1,   -1,   -1,   -1,   64,   -1,   -1,
825    -1,  287,  288,  289,  290,   -1,   33,   -1,   -1,   36,
826    37,   38,   -1,   40,   41,   42,   43,   -1,   45,  305,
827   306,  307,  308,  309,   91,   -1,  312,   -1,   -1,  315,
828   316,  317,   -1,   -1,   -1,   -1,   -1,   64,   -1,   -1,
829   287,  288,  289,  290,   -1,   -1,   33,   -1,   -1,   36,
830    37,   38,   -1,   40,   -1,   42,   43,   -1,   45,  126,
831   307,  308,  309,   -1,   91,  312,   -1,   -1,  315,  316,
832   317,   -1,   -1,   -1,   -1,   -1,   -1,   64,   -1,   -1,
833    -1,  272,  273,  274,  275,   -1,   33,   -1,  279,   36,
834    37,   38,   -1,   40,   41,   42,   43,   -1,   45,  126,
835    -1,   -1,   -1,   -1,   91,   -1,   93,  281,   -1,  300,
836   301,   -1,   -1,  287,  288,  289,  290,   64,   -1,   -1,
837    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
838   304,  305,  306,  307,  308,  309,   -1,   -1,  312,  126,
839    -1,  315,  316,  317,   91,   -1,   33,   -1,   -1,   36,
840    37,   38,   -1,   40,   41,   42,   43,   -1,   45,   -1,
841    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
842    -1,   -1,   -1,   -1,   -1,   -1,   -1,   64,   -1,  126,
843    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
844   257,  258,  259,  260,  261,   -1,  263,  264,  265,   -1,
845    -1,   -1,  269,   -1,   91,   -1,   -1,   -1,   -1,   -1,
846    -1,   -1,   -1,  280,   -1,  282,  283,  284,  285,  286,
847    -1,   -1,   -1,   -1,  291,  292,  293,  294,  295,  296,
848   257,  258,  259,  260,  261,  302,  263,  264,  265,  126,
849    -1,   -1,  269,   -1,  311,   -1,  313,  314,   -1,   -1,
850    -1,   -1,   -1,  280,   -1,  282,  283,  284,  285,  286,
851    -1,   -1,   -1,   -1,  291,  292,  293,  294,  295,  296,
852   257,  258,  259,  260,  261,  302,  263,  264,  265,   -1,
853    -1,   -1,  269,   -1,  311,   -1,  313,  314,   -1,   -1,
854    -1,   -1,   -1,  280,   -1,  282,  283,  284,  285,  286,
855    -1,   -1,   -1,   -1,  291,  292,  293,  294,  295,  296,
856   257,  258,  259,  260,  261,  302,  263,  264,  265,   -1,
857    -1,   -1,  269,   -1,  311,   -1,  313,  314,   -1,   -1,
858    -1,   -1,   -1,  280,   -1,  282,  283,  284,  285,  286,
859    -1,   -1,   -1,   -1,  291,  292,  293,  294,  295,  296,
860    -1,   -1,   -1,   33,   -1,  302,   36,   37,   38,   -1,
861    40,   41,   42,   43,  311,   45,  313,  314,   -1,   -1,
862   257,  258,  259,  260,  261,   -1,  263,  264,  265,   -1,
863    -1,   -1,  269,   -1,   64,   -1,   -1,   -1,   -1,   -1,
864    -1,   -1,   -1,  280,   -1,  282,  283,  284,  285,  286,
865    -1,   -1,   -1,   -1,  291,  292,  293,  294,  295,  296,
866    -1,   91,   -1,   33,   -1,  302,   36,   37,   38,   -1,
867    40,   41,   42,   43,  311,   45,  313,  314,   -1,   -1,
868    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
869    -1,   -1,   -1,   -1,   64,   -1,  126,   -1,   -1,   -1,
870    -1,   -1,   41,   -1,   -1,   44,   -1,   -1,   -1,   -1,
871    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   58,
872    59,   91,   33,   -1,   63,   36,   37,   38,   -1,   40,
873    -1,   42,   43,   -1,   45,   -1,   -1,   -1,   -1,   -1,
874   287,  288,  289,  290,   -1,   -1,   -1,   -1,   -1,   -1,
875    -1,   -1,   -1,   64,   93,   -1,  126,  304,  305,  306,
876   307,  308,  309,   -1,   -1,  312,   -1,   -1,  315,  316,
877   317,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
878    91,   -1,   33,   -1,   -1,   36,   37,   38,   -1,   40,
879    41,   42,   43,   -1,   45,   -1,   -1,   -1,   -1,   -1,
880    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
881    -1,   -1,   -1,   64,   -1,  126,   -1,   -1,   -1,   -1,
882    -1,   -1,   -1,   -1,   -1,   -1,   -1,  257,  258,  259,
883   260,  261,   -1,  263,  264,  265,   -1,   -1,   -1,  269,
884    91,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
885   280,   -1,  282,  283,  284,  285,  286,   -1,   -1,   -1,
886    -1,  291,  292,  293,  294,  295,  296,   -1,   -1,   -1,
887    -1,   -1,  302,   -1,   -1,  126,   -1,   -1,   -1,   -1,
888    -1,  311,   -1,  313,  314,   -1,   -1,  257,  258,  259,
889   260,  261,   -1,  263,  264,  265,   -1,   33,   -1,  269,
890    36,   37,   38,   -1,   40,   41,   42,   43,   -1,   45,
891   280,   -1,  282,  283,  284,  285,  286,   -1,   -1,   -1,
892    -1,  291,  292,  293,  294,  295,  296,   -1,   64,   -1,
893    -1,   -1,  302,  272,  273,  274,  275,   -1,   -1,   -1,
894   279,  311,  281,  313,  314,  256,  257,  258,  259,  260,
895   261,   -1,  263,  264,  265,   91,   -1,   -1,  269,   -1,
896    -1,  300,  301,   -1,  303,  304,  305,  306,  307,  280,
897    -1,  282,  283,  284,  285,  286,   -1,   -1,   -1,   -1,
898   291,  292,  293,  294,  295,  296,   -1,   -1,   -1,   33,
899   126,  302,   36,   37,   38,   -1,   40,   41,   42,   43,
900   311,   45,  313,  314,   -1,   -1,  257,  258,  259,  260,
901   261,   -1,  263,  264,  265,   -1,   -1,   -1,  269,   -1,
902    64,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  280,
903    -1,  282,  283,  284,  285,  286,   -1,   -1,   -1,   -1,
904   291,  292,  293,  294,  295,  296,   -1,   91,   -1,   33,
905    -1,  302,   36,   37,   38,   -1,   40,   -1,   42,   43,
906   311,   45,  313,  314,   -1,   -1,   -1,   -1,   -1,   -1,
907    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   28,   29,
908    64,   -1,  126,   -1,   -1,   -1,   -1,   -1,   41,   -1,
909    40,   44,   -1,   -1,   -1,   -1,   46,   47,   48,   -1,
910    -1,   -1,   52,   53,   -1,   58,   59,   91,   -1,   -1,
911    63,   -1,   -1,   -1,   -1,   65,   66,   67,   68,   -1,
912    -1,  257,  258,  259,  260,  261,   -1,  263,  264,  265,
913    -1,   -1,   -1,  269,   -1,   41,   -1,   -1,   44,   -1,
914    93,   -1,  126,   -1,  280,   -1,  282,  283,  284,  285,
915   286,   41,   -1,   59,   44,  291,  292,  293,  294,  295,
916   296,   -1,  112,   -1,   -1,   -1,  302,   -1,   58,   59,
917    -1,   -1,   -1,   63,   -1,  311,   -1,  313,  314,   -1,
918    -1,   -1,   -1,   -1,   -1,   -1,   -1,   93,   -1,   -1,
919    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
920    -1,   -1,   -1,   93,   -1,   41,   -1,   -1,   44,   -1,
921    -1,   -1,   -1,  257,  258,  259,  260,  261,   -1,  263,
922   264,  265,   58,   59,   -1,  269,  176,   63,   -1,   -1,
923    -1,   -1,   -1,   -1,   -1,   -1,  280,   -1,  282,  283,
924   284,  285,  286,   -1,   -1,   -1,   -1,  291,  292,  293,
925   294,  295,  296,  203,   -1,   -1,   -1,   93,  302,   -1,
926    -1,   -1,   -1,   -1,   -1,   41,   -1,  311,   44,  313,
927   314,   -1,   -1,  257,  258,  259,  260,  261,   -1,  263,
928   264,  265,   58,   59,   -1,  269,   -1,   63,   -1,   -1,
929    -1,   -1,   -1,   -1,   -1,   -1,  280,   -1,  282,  283,
930   284,  285,  286,   -1,   -1,   -1,   -1,  291,  292,  293,
931   294,  295,  296,   -1,   -1,   -1,   -1,   93,  302,  272,
932   273,  274,  275,   -1,   -1,   -1,  279,  311,  281,  313,
933   314,   -1,   -1,   -1,  287,  288,  289,  290,   -1,   -1,
934    -1,   -1,   -1,   41,   -1,   -1,   44,  300,  301,   -1,
935   303,  304,  305,  306,  307,  308,  309,   -1,   -1,  312,
936    58,   59,  315,  316,  317,   63,  272,  273,  274,  275,
937    -1,   -1,   -1,  279,   -1,   -1,   -1,   -1,   -1,   -1,
938    -1,   -1,  272,  273,  274,  275,   -1,   -1,   -1,  279,
939    41,  281,   -1,   44,  300,   93,   -1,  287,  288,  289,
940   290,   -1,   -1,   -1,   -1,   -1,   -1,   58,   59,   -1,
941   300,  301,   63,  303,  304,  305,  306,  307,  308,  309,
942    -1,   -1,  312,   -1,   -1,  315,  316,  317,   -1,   -1,
943    -1,   -1,   -1,   -1,   -1,   -1,  272,  273,  274,  275,
944    -1,   41,   93,  279,   44,  281,   -1,   -1,   -1,   -1,
945    -1,  287,  288,  289,  290,   -1,   -1,   -1,   58,   59,
946    -1,   -1,   -1,   63,  300,  301,   -1,  303,  304,  305,
947   306,  307,  308,  309,   -1,   -1,  312,   -1,   -1,  315,
948   316,  317,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
949    -1,   -1,   41,   93,   -1,   44,  272,  273,  274,  275,
950    -1,   41,   -1,  279,   44,  281,   -1,   -1,   -1,   58,
951    59,  287,  288,  289,  290,   -1,   -1,   -1,   58,   59,
952    -1,   -1,   -1,   63,  300,  301,   -1,  303,  304,  305,
953   306,  307,  308,  309,   -1,   -1,  312,   -1,   -1,  315,
954   316,  317,   -1,   -1,   93,   -1,   -1,   41,   -1,   -1,
955    44,   -1,   -1,   93,   -1,   -1,   -1,   -1,   -1,   -1,
956    -1,   -1,   -1,   -1,   58,   59,   -1,   -1,   -1,   63,
957    -1,   -1,   -1,   -1,  272,  273,  274,  275,   -1,   -1,
958    -1,  279,   -1,  281,   -1,   -1,   -1,   -1,   -1,  287,
959   288,  289,  290,   -1,   -1,   -1,   -1,   -1,   -1,   93,
960    -1,   -1,  300,  301,   -1,  303,  304,  305,  306,  307,
961   308,  309,   -1,   -1,  312,   -1,   -1,  315,  316,  317,
962    -1,  272,  273,  274,  275,   -1,   41,   -1,  279,   44,
963   281,   -1,   -1,   -1,   -1,   -1,  287,  288,  289,  290,
964    -1,   -1,   -1,   58,   59,   -1,   -1,   -1,   63,  300,
965   301,   -1,  303,  304,  305,  306,  307,  308,  309,   -1,
966    -1,  312,   -1,   -1,  315,  316,  317,   -1,   -1,   -1,
967    -1,   -1,  272,  273,  274,  275,   -1,   41,   93,  279,
968    44,  281,   -1,   -1,   -1,   -1,   -1,  287,  288,  289,
969   290,   -1,   -1,   -1,   58,   59,   -1,   -1,   -1,   63,
970   300,  301,   -1,  303,  304,  305,  306,  307,  308,  309,
971    -1,   -1,  312,   -1,   -1,  315,  316,  317,   -1,   -1,
972    -1,   -1,   -1,  272,  273,  274,  275,   -1,   -1,   93,
973   279,   -1,  272,  273,  274,  275,   -1,   41,   -1,  279,
974    44,  281,   -1,   -1,   -1,   -1,   -1,  287,  288,  289,
975   290,  300,  301,   -1,   58,   59,   -1,   -1,   -1,   63,
976   300,  301,   -1,  303,  304,  305,  306,  307,  308,  309,
977    -1,   -1,  312,   -1,   -1,  315,  316,  317,  272,  273,
978   274,  275,   -1,   41,   -1,  279,   44,  281,   -1,   93,
979    -1,   -1,   -1,  287,  288,  289,  290,   -1,   -1,   -1,
980    58,   59,   -1,   -1,   -1,   63,  300,  301,   -1,  303,
981   304,  305,  306,  307,  308,  309,   -1,   -1,  312,   -1,
982    -1,  315,  316,  317,   -1,   -1,   -1,   -1,   -1,   41,
983    -1,   -1,   44,   -1,   -1,   93,   -1,   -1,   -1,   -1,
984    -1,   -1,   -1,   -1,   -1,   -1,   58,   59,   -1,   -1,
985    -1,   63,   41,   -1,   -1,   44,   -1,  272,  273,  274,
986   275,   -1,   -1,   -1,  279,   -1,  281,   -1,   -1,   58,
987    59,   -1,  287,  288,  289,  290,   -1,   -1,   -1,   -1,
988    -1,   93,   -1,   -1,   -1,  300,  301,   -1,  303,  304,
989   305,  306,  307,  308,  309,   -1,   -1,  312,   -1,   -1,
990   315,  316,  317,   41,   93,   -1,   44,   -1,  272,  273,
991   274,  275,   41,   -1,   -1,  279,   -1,  281,   -1,   -1,
992    58,   59,   -1,  287,  288,  289,  290,   -1,   -1,   58,
993    59,   -1,   -1,   -1,   63,   -1,  300,  301,   -1,  303,
994   304,  305,  306,  307,  308,  309,   -1,   -1,  312,   -1,
995    -1,  315,  316,  317,   -1,   93,   -1,   -1,   -1,   -1,
996    -1,   -1,   -1,   -1,   93,   -1,   -1,   -1,  272,  273,
997   274,  275,   41,   -1,   -1,  279,   -1,  281,   -1,   -1,
998    -1,   -1,   -1,  287,  288,  289,  290,   -1,   -1,   58,
999    59,   -1,   -1,   -1,   63,   -1,  300,  301,   -1,  303,
1000   304,  305,  306,  307,  308,  309,   -1,   -1,  312,   -1,
1001    -1,  315,  316,  317,  272,  273,  274,  275,   41,   -1,
1002    -1,  279,   -1,  281,   93,   -1,   -1,   -1,   -1,  287,
1003   288,  289,  290,   -1,   -1,   58,   59,   -1,   -1,   -1,
1004    63,   -1,  300,  301,   -1,  303,  304,  305,  306,  307,
1005   308,  309,   -1,   -1,  312,   -1,   -1,  315,  316,  317,
1006   272,  273,  274,  275,   -1,   -1,   -1,  279,   -1,  281,
1007    93,   -1,   -1,   -1,   -1,  287,  288,  289,  290,   -1,
1008    -1,   -1,   -1,  272,  273,  274,  275,   -1,  300,  301,
1009   279,  303,  304,  305,  306,  307,  308,  309,   -1,   41,
1010   312,   -1,   44,  315,  316,  317,   -1,   -1,   -1,   -1,
1011    -1,  300,  301,   -1,  303,   -1,   58,   59,   -1,   -1,
1012    -1,   63,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1013    -1,   -1,   -1,   -1,  272,  273,  274,  275,   -1,   -1,
1014    -1,  279,   -1,  272,  273,  274,  275,   -1,   -1,   -1,
1015   279,   93,  281,   -1,   -1,   -1,   -1,   -1,  287,  288,
1016   289,  290,  300,  301,   -1,   -1,   -1,   -1,   -1,   -1,
1017    -1,  300,  301,   -1,  303,  304,  305,  306,  307,  308,
1018   309,   -1,   -1,  312,   -1,   -1,  315,  316,  317,   -1,
1019    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1020    -1,   -1,   -1,  272,  273,  274,  275,   -1,   -1,   -1,
1021   279,   41,  281,   -1,   44,   -1,   -1,   -1,  287,  288,
1022   289,  290,   -1,   -1,   -1,   -1,   -1,   -1,   58,   59,
1023    -1,  300,  301,   63,  303,  304,  305,  306,  307,  308,
1024   309,   -1,   -1,  312,   -1,   -1,  315,  316,  317,  272,
1025   273,  274,  275,   -1,   41,   -1,  279,   44,  281,   -1,
1026    -1,   -1,   -1,   93,  287,  288,  289,  290,   -1,   -1,
1027    -1,   58,   59,   -1,   -1,   -1,   63,  300,  301,   -1,
1028   303,  304,  305,  306,  307,  308,  309,   33,   -1,  312,
1029    -1,   -1,  315,  316,  317,   41,   -1,   -1,   41,   45,
1030    -1,   44,   48,   -1,   -1,   51,   93,   -1,   -1,   55,
1031    56,   57,   58,   59,   -1,   58,   59,   63,   64,   -1,
1032    63,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1033   272,  273,  274,  275,   -1,   -1,   -1,  279,   41,  281,
1034    -1,   44,   -1,   -1,   -1,  287,  288,  289,  290,   -1,
1035    93,   -1,   98,   -1,   -1,   58,   59,   -1,  300,  301,
1036    63,  303,  304,  305,  306,  307,  308,  309,   -1,   -1,
1037   312,   -1,   -1,   -1,   -1,   -1,   41,   -1,   -1,   44,
1038    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1039    93,   -1,   -1,   58,   59,   -1,   -1,   -1,   63,   -1,
1040    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1041    -1,   -1,   -1,   -1,  160,  161,  162,  163,  164,  165,
1042   166,  167,  168,  169,  170,  171,  172,  173,   93,   -1,
1043    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1044    -1,  187,  272,  273,  274,  275,   -1,   41,   -1,  279,
1045    44,  281,   -1,   -1,   -1,   -1,   -1,  287,  288,  289,
1046   290,   -1,   -1,   -1,   58,   59,   -1,   -1,   -1,   63,
1047   300,  301,   -1,  303,  304,  305,  306,  307,  308,  309,
1048    -1,   -1,  312,   -1,   -1,  272,  273,  274,  275,   -1,
1049    41,   -1,  279,   44,  281,   -1,   -1,   -1,   -1,   93,
1050   287,  288,  289,  290,   -1,   -1,   -1,   58,   59,   -1,
1051    -1,   -1,   63,  300,  301,   -1,  303,  304,  305,  306,
1052   307,  308,  309,   -1,   -1,   -1,  272,   -1,   -1,  272,
1053   273,  274,  275,   -1,   -1,   -1,  279,   41,  281,   -1,
1054    44,   -1,   93,   -1,  287,  288,  289,  290,   -1,   -1,
1055    -1,   -1,   -1,   -1,   58,   59,   -1,  300,  301,  305,
1056   303,  304,  305,  306,  307,  308,  309,   -1,   -1,  272,
1057   273,  274,  275,   -1,   41,   -1,  279,   44,  281,   -1,
1058    -1,   -1,   -1,   -1,  287,  288,  289,  290,   -1,   93,
1059    -1,   58,   59,   -1,   -1,   -1,   63,  300,  301,   -1,
1060   303,  304,  305,  306,  307,  308,  309,  272,  273,  274,
1061   275,   -1,   41,   -1,  279,   44,  281,   -1,   -1,   -1,
1062    -1,   -1,  287,  288,  289,  290,   93,   -1,   -1,   58,
1063    59,   -1,   -1,   -1,   63,  300,  301,   -1,  303,  304,
1064   305,  306,  307,  308,  309,   -1,   -1,   -1,   -1,   41,
1065    -1,   -1,   44,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1066    -1,   -1,   -1,   -1,   93,   -1,   58,   59,   -1,   -1,
1067    -1,   63,   -1,   -1,   -1,   -1,   -1,   -1,  272,  273,
1068   274,  275,   -1,   -1,   -1,  279,   -1,  281,   -1,   -1,
1069    -1,   -1,   -1,  287,  288,  289,  290,   58,   -1,   -1,
1070    -1,   93,   63,   -1,   -1,   -1,  300,  301,   -1,  303,
1071   304,  305,  306,  307,  308,  309,   -1,   -1,   -1,   -1,
1072    -1,  272,  273,  274,  275,   -1,   41,   -1,  279,   44,
1073   281,   -1,   -1,   -1,   -1,   -1,  287,  288,  289,  290,
1074    -1,   -1,   -1,   58,   59,   -1,   -1,   -1,   63,  300,
1075   301,   -1,  303,  304,  305,  306,  307,  308,  309,   -1,
1076    -1,   -1,   -1,   41,   -1,   -1,   44,   -1,  272,  273,
1077   274,  275,   -1,   41,   -1,  279,   44,   -1,   93,   -1,
1078    58,   59,   -1,   -1,   -1,   63,   -1,   -1,   -1,   -1,
1079    58,   59,   -1,   -1,   -1,   63,  300,  301,   -1,   -1,
1080    -1,   -1,   -1,   -1,   -1,  272,  273,  274,  275,   -1,
1081    41,   -1,  279,   44,  281,   93,   -1,   -1,   -1,   -1,
1082   287,  288,  289,  290,   -1,   93,   -1,   58,   59,   -1,
1083    -1,   -1,   63,  300,  301,   -1,  303,  304,  305,  306,
1084   307,  308,  309,  272,  273,  274,  275,   -1,   41,   -1,
1085   279,   44,  281,   -1,   -1,   -1,   -1,   -1,  287,  288,
1086   289,  290,   93,   -1,   -1,   58,   59,   -1,   -1,   -1,
1087    63,  300,  301,   -1,  303,  304,  305,  306,  307,  308,
1088   272,  273,  274,  275,   -1,   41,   -1,  279,   44,  281,
1089    -1,   -1,   -1,   -1,   -1,  287,  288,   -1,  290,   -1,
1090    93,   41,   58,   59,   44,   -1,   -1,   63,  300,  301,
1091    -1,  303,  304,  305,  306,  307,  308,   -1,   58,   59,
1092   281,   -1,   -1,   63,   -1,   -1,  287,  288,  289,  290,
1093    -1,   -1,   -1,   -1,   -1,   -1,   -1,   93,   -1,   -1,
1094    -1,   -1,  303,  304,  305,  306,  307,  308,  309,   -1,
1095    -1,  312,   -1,   93,  315,  316,  317,  272,  273,  274,
1096   275,   -1,   41,   -1,  279,   44,  281,   -1,   -1,   -1,
1097    -1,   -1,  287,  288,   -1,   -1,   -1,   -1,   -1,   58,
1098    59,   -1,   -1,   -1,   63,  300,  301,   -1,  303,  304,
1099   305,  306,  307,   -1,  272,  273,  274,  275,   -1,   41,
1100    -1,  279,   44,  281,  272,  273,  274,  275,   -1,  287,
1101   288,  279,   -1,  281,   93,   -1,   58,   59,   -1,  287,
1102   288,   63,  300,  301,   -1,  303,  304,  305,  306,  307,
1103    -1,   -1,  300,  301,   -1,  303,  304,  305,  306,  307,
1104    -1,  272,  273,  274,  275,   -1,   -1,   -1,  279,   -1,
1105   281,   93,   -1,   -1,   -1,   -1,  287,  288,   -1,   -1,
1106    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  300,
1107   301,   -1,  303,  304,  305,  306,  307,   -1,   -1,  272,
1108   273,  274,  275,   -1,   -1,   -1,  279,   -1,  281,   -1,
1109    -1,   -1,   -1,   -1,   -1,  288,   -1,   -1,   -1,   -1,
1110    -1,   -1,   -1,   -1,   -1,   -1,   -1,  300,  301,   -1,
1111   303,  304,  305,  306,  307,   -1,  272,  273,  274,  275,
1112    -1,   -1,   -1,  279,   -1,  281,   -1,   -1,   -1,   -1,
1113    -1,   -1,  272,  273,  274,  275,   -1,   -1,   -1,  279,
1114    -1,  281,   -1,   -1,  300,  301,   -1,  303,  304,  305,
1115   306,  307,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1116   300,  301,   -1,  303,  304,  305,  306,   -1,   -1,   -1,
1117    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1118    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1119    -1,   -1,   -1,  272,  273,  274,  275,   -1,   -1,   -1,
1120   279,   -1,  281,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1121    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1122    -1,  300,  301,   -1,  303,  304,  305,   -1,   -1,   -1,
1123   272,  273,  274,  275,   -1,   -1,   -1,  279,   -1,  281,
1124    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1125    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  300,  301,
1126    -1,  303,  304,
1127 };
1128 #define YYFINAL 1
1129 #ifndef YYDEBUG
1130 #define YYDEBUG 0
1131 #endif
1132 #define YYMAXTOKEN 317
1133 #if YYDEBUG
1134 static char *yyname[] = {
1135 "end-of-file",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1136 "'!'",0,0,"'$'","'%'","'&'",0,"'('","')'","'*'","'+'","','","'-'",0,0,0,0,0,0,0,
1137 0,0,0,0,0,"':'","';'",0,0,0,"'?'","'@'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1138 0,0,0,0,0,0,"'['",0,"']'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1139 0,0,"'{'",0,"'}'","'~'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1140 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1141 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1142 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"WORD","METHOD","FUNCMETH","THING",
1143 "PMFUNC","PRIVATEREF","FUNC0SUB","UNIOPSUB","LSTOPSUB","LABEL","FORMAT","SUB",
1144 "ANONSUB","PACKAGE","USE","WHILE","UNTIL","IF","UNLESS","ELSE","ELSIF",
1145 "CONTINUE","FOR","LOOPEX","DOTDOT","FUNC0","FUNC1","FUNC","UNIOP","LSTOP",
1146 "RELOP","EQOP","MULOP","ADDOP","DOLSHARP","DO","HASHBRACK","NOAMP","LOCAL","MY",
1147 "MYSUB","COLONATTR","PREC_LOW","OROP","ANDOP","NOTOP","ASSIGNOP","OROR",
1148 "ANDAND","BITOROP","BITANDOP","SHIFTOP","MATCHOP","UMINUS","REFGEN","POWOP",
1149 "PREINC","PREDEC","POSTINC","POSTDEC","ARROW",
1150 };
1151 static char *yyrule[] = {
1152 "$accept : prog",
1153 "$$1 :",
1154 "prog : $$1 lineseq",
1155 "block : '{' remember lineseq '}'",
1156 "remember :",
1157 "mblock : '{' mremember lineseq '}'",
1158 "mremember :",
1159 "lineseq :",
1160 "lineseq : lineseq decl",
1161 "lineseq : lineseq line",
1162 "line : label cond",
1163 "line : loop",
1164 "line : label ';'",
1165 "line : label sideff ';'",
1166 "sideff : error",
1167 "sideff : expr",
1168 "sideff : expr IF expr",
1169 "sideff : expr UNLESS expr",
1170 "sideff : expr WHILE expr",
1171 "sideff : expr UNTIL iexpr",
1172 "sideff : expr FOR expr",
1173 "else :",
1174 "else : ELSE mblock",
1175 "else : ELSIF '(' mexpr ')' mblock else",
1176 "cond : IF '(' remember mexpr ')' mblock else",
1177 "cond : UNLESS '(' remember miexpr ')' mblock else",
1178 "cont :",
1179 "cont : CONTINUE block",
1180 "loop : label WHILE '(' remember mtexpr ')' mblock cont",
1181 "loop : label UNTIL '(' remember miexpr ')' mblock cont",
1182 "loop : label FOR MY remember my_scalar '(' mexpr ')' mblock cont",
1183 "loop : label FOR scalar '(' remember mexpr ')' mblock cont",
1184 "loop : label FOR '(' remember mexpr ')' mblock cont",
1185 "loop : label FOR '(' remember mnexpr ';' mtexpr ';' mnexpr ')' mblock",
1186 "loop : label block cont",
1187 "nexpr :",
1188 "nexpr : sideff",
1189 "texpr :",
1190 "texpr : expr",
1191 "iexpr : expr",
1192 "mexpr : expr",
1193 "mnexpr : nexpr",
1194 "mtexpr : texpr",
1195 "miexpr : iexpr",
1196 "label :",
1197 "label : LABEL",
1198 "decl : format",
1199 "decl : subrout",
1200 "decl : mysubrout",
1201 "decl : package",
1202 "decl : use",
1203 "format : FORMAT startformsub formname block",
1204 "formname : WORD",
1205 "formname :",
1206 "mysubrout : MYSUB startsub subname proto subattrlist subbody",
1207 "subrout : SUB startsub subname proto subattrlist subbody",
1208 "startsub :",
1209 "startanonsub :",
1210 "startformsub :",
1211 "subname : WORD",
1212 "proto :",
1213 "proto : THING",
1214 "subattrlist :",
1215 "subattrlist : COLONATTR THING",
1216 "subattrlist : COLONATTR",
1217 "myattrlist : COLONATTR THING",
1218 "myattrlist : COLONATTR",
1219 "subbody : block",
1220 "subbody : ';'",
1221 "package : PACKAGE WORD ';'",
1222 "package : PACKAGE ';'",
1223 "$$2 :",
1224 "use : USE startsub $$2 WORD WORD listexpr ';'",
1225 "expr : expr ANDOP expr",
1226 "expr : expr OROP expr",
1227 "expr : argexpr",
1228 "argexpr : argexpr ','",
1229 "argexpr : argexpr ',' term",
1230 "argexpr : term",
1231 "listop : LSTOP indirob argexpr",
1232 "listop : FUNC '(' indirob expr ')'",
1233 "listop : term ARROW method '(' listexprcom ')'",
1234 "listop : term ARROW method",
1235 "listop : METHOD indirob listexpr",
1236 "listop : FUNCMETH indirob '(' listexprcom ')'",
1237 "listop : LSTOP listexpr",
1238 "listop : FUNC '(' listexprcom ')'",
1239 "$$3 :",
1240 "listop : LSTOPSUB startanonsub block $$3 listexpr",
1241 "method : METHOD",
1242 "method : scalar",
1243 "subscripted : star '{' expr ';' '}'",
1244 "subscripted : scalar '[' expr ']'",
1245 "subscripted : term ARROW '[' expr ']'",
1246 "subscripted : subscripted '[' expr ']'",
1247 "subscripted : scalar '{' expr ';' '}'",
1248 "subscripted : term ARROW '{' expr ';' '}'",
1249 "subscripted : subscripted '{' expr ';' '}'",
1250 "subscripted : term ARROW '(' ')'",
1251 "subscripted : term ARROW '(' expr ')'",
1252 "subscripted : subscripted '(' expr ')'",
1253 "subscripted : subscripted '(' ')'",
1254 "term : term ASSIGNOP term",
1255 "term : term POWOP term",
1256 "term : term MULOP term",
1257 "term : term ADDOP term",
1258 "term : term SHIFTOP term",
1259 "term : term RELOP term",
1260 "term : term EQOP term",
1261 "term : term BITANDOP term",
1262 "term : term BITOROP term",
1263 "term : term DOTDOT term",
1264 "term : term ANDAND term",
1265 "term : term OROR term",
1266 "term : term '?' term ':' term",
1267 "term : term MATCHOP term",
1268 "term : '-' term",
1269 "term : '+' term",
1270 "term : '!' term",
1271 "term : '~' term",
1272 "term : REFGEN term",
1273 "term : term POSTINC",
1274 "term : term POSTDEC",
1275 "term : PREINC term",
1276 "term : PREDEC term",
1277 "term : myattrterm",
1278 "term : LOCAL term",
1279 "term : '(' expr ')'",
1280 "term : '(' ')'",
1281 "term : '[' expr ']'",
1282 "term : '[' ']'",
1283 "term : HASHBRACK expr ';' '}'",
1284 "term : HASHBRACK ';' '}'",
1285 "term : ANONSUB startanonsub proto subattrlist block",
1286 "term : scalar",
1287 "term : star",
1288 "term : hsh",
1289 "term : ary",
1290 "term : arylen",
1291 "term : subscripted",
1292 "term : '(' expr ')' '[' expr ']'",
1293 "term : '(' ')' '[' expr ']'",
1294 "term : ary '[' expr ']'",
1295 "term : ary '{' expr ';' '}'",
1296 "term : THING",
1297 "term : amper",
1298 "term : amper '(' ')'",
1299 "term : amper '(' expr ')'",
1300 "term : NOAMP WORD listexpr",
1301 "term : DO term",
1302 "term : DO block",
1303 "term : DO WORD '(' ')'",
1304 "term : DO WORD '(' expr ')'",
1305 "term : DO scalar '(' ')'",
1306 "term : DO scalar '(' expr ')'",
1307 "term : LOOPEX",
1308 "term : LOOPEX term",
1309 "term : NOTOP argexpr",
1310 "term : UNIOP",
1311 "term : UNIOP block",
1312 "term : UNIOP term",
1313 "term : UNIOPSUB term",
1314 "term : FUNC0",
1315 "term : FUNC0 '(' ')'",
1316 "term : FUNC0SUB",
1317 "term : FUNC1 '(' ')'",
1318 "term : FUNC1 '(' expr ')'",
1319 "term : PMFUNC '(' term ')'",
1320 "term : PMFUNC '(' term ',' term ')'",
1321 "term : WORD",
1322 "term : listop",
1323 "myattrterm : MY myterm myattrlist",
1324 "myattrterm : MY myterm",
1325 "myterm : '(' expr ')'",
1326 "myterm : '(' ')'",
1327 "myterm : scalar",
1328 "myterm : hsh",
1329 "myterm : ary",
1330 "listexpr :",
1331 "listexpr : argexpr",
1332 "listexprcom :",
1333 "listexprcom : expr",
1334 "listexprcom : expr ','",
1335 "my_scalar : scalar",
1336 "amper : '&' indirob",
1337 "scalar : '$' indirob",
1338 "ary : '@' indirob",
1339 "hsh : '%' indirob",
1340 "arylen : DOLSHARP indirob",
1341 "star : '*' indirob",
1342 "indirob : WORD",
1343 "indirob : scalar",
1344 "indirob : block",
1345 "indirob : PRIVATEREF",
1346 };
1347 #endif
1348 #define yyclearin (yychar=(-1))
1349 #define yyerrok (yyerrflag=0)
1350 #ifdef YYSTACKSIZE
1351 #ifndef YYMAXDEPTH
1352 #define YYMAXDEPTH YYSTACKSIZE
1353 #endif
1354 #else
1355 #ifdef YYMAXDEPTH
1356 #define YYSTACKSIZE YYMAXDEPTH
1357 #else
1358 #define YYSTACKSIZE 500
1359 #define YYMAXDEPTH 500
1360 #endif
1361 #endif
1362 #line 734 "perly.y"
1363  /* PROGRAM */
1364
1365 /* more stuff added to make perly_c.diff easier to apply */
1366
1367 #ifdef yyparse
1368 #undef yyparse
1369 #endif
1370 #define yyparse() Perl_yyparse(pTHX)
1371
1372 #line 1444 "perly.c"
1373 #define YYABORT goto yyabort
1374 #define YYACCEPT goto yyaccept
1375 #define YYERROR goto yyerrlab
1376 int
1377 yyparse()
1378 {
1379     register int yym, yyn, yystate;
1380     register short *yyssp;
1381     register YYSTYPE *yyvsp;
1382     short* yyss;
1383     YYSTYPE* yyvs;
1384     unsigned yystacksize = YYSTACKSIZE;
1385     int retval = 0;
1386 #if YYDEBUG
1387     register char *yys;
1388 #endif
1389
1390     struct ysv *ysave;
1391 #ifdef USE_ITHREADS
1392     ENTER;                      /* force yydestruct() before we return */
1393 #endif
1394     New(73, ysave, 1, struct ysv);
1395     SAVEDESTRUCTOR_X(yydestruct, ysave);
1396     ysave->oldyydebug   = yydebug;
1397     ysave->oldyynerrs   = yynerrs;
1398     ysave->oldyyerrflag = yyerrflag;
1399     ysave->oldyychar    = yychar;
1400     ysave->oldyyval     = yyval;
1401     ysave->oldyylval    = yylval;
1402   
1403 #if YYDEBUG
1404     if (yys = getenv("YYDEBUG"))
1405     {
1406         yyn = *yys;
1407         if (yyn >= '0' && yyn <= '9')
1408             yydebug = yyn - '0';
1409     }
1410         else SETERRNO(0,SS$_NORMAL);
1411 #endif
1412
1413     yynerrs = 0;
1414     yyerrflag = 0;
1415     yychar = (-1);
1416
1417     /*
1418     ** Initialize private stacks (yyparse may be called from an action)
1419     */
1420     New(73, yyss, yystacksize, short);
1421     New(73, yyvs, yystacksize, YYSTYPE);
1422     ysave->yyss = yyss;
1423     ysave->yyvs = yyvs;
1424     if (!yyvs || !yyss)
1425         goto yyoverflow;
1426
1427     yyssp = yyss;
1428     yyvsp = yyvs;
1429     *yyssp = yystate = 0;
1430
1431 yyloop:
1432     if (yyn = yydefred[yystate]) goto yyreduce;
1433     if (yychar < 0)
1434     {
1435         if ((yychar = yylex()) < 0) yychar = 0;
1436 #if YYDEBUG
1437         if (yydebug)
1438         {
1439             yys = 0;
1440             if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
1441             if (!yys) yys = "illegal-symbol";
1442             PerlIO_printf(Perl_debug_log, "yydebug: state %d, reading %d (%s)\n", yystate,
1443                     yychar, yys);
1444         }
1445 #endif
1446     }
1447     if ((yyn = yysindex[yystate]) && (yyn += yychar) >= 0 &&
1448             yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
1449     {
1450 #if YYDEBUG
1451         if (yydebug)
1452             PerlIO_printf(Perl_debug_log, "yydebug: state %d, shifting to state %d\n",
1453                     yystate, yytable[yyn]);
1454 #endif
1455         if (yyssp >= yyss + yystacksize - 1)
1456         {
1457             /*
1458             ** reallocate and recover.  Note that pointers
1459             ** have to be reset, or bad things will happen
1460             */
1461             int yyps_index = (yyssp - yyss);
1462             int yypv_index = (yyvsp - yyvs);
1463             yystacksize += YYSTACKSIZE;
1464             ysave->yyvs = Renew(yyvs, yystacksize, YYSTYPE);
1465             ysave->yyss = Renew(yyss, yystacksize, short);
1466             if (!yyvs || !yyss)
1467                 goto yyoverflow;
1468             yyssp = yyss + yyps_index;
1469             yyvsp = yyvs + yypv_index;
1470         }
1471         *++yyssp = yystate = yytable[yyn];
1472         *++yyvsp = yylval;
1473         yychar = (-1);
1474         if (yyerrflag > 0)  --yyerrflag;
1475         goto yyloop;
1476     }
1477     if ((yyn = yyrindex[yystate]) && (yyn += yychar) >= 0 &&
1478             yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
1479     {
1480         yyn = yytable[yyn];
1481         goto yyreduce;
1482     }
1483     if (yyerrflag) goto yyinrecovery;
1484 #ifdef lint
1485     goto yynewerror;
1486 #endif
1487 yynewerror:
1488     yyerror("syntax error");
1489 #ifdef lint
1490     goto yyerrlab;
1491 #endif
1492 yyerrlab:
1493     ++yynerrs;
1494 yyinrecovery:
1495     if (yyerrflag < 3)
1496     {
1497         yyerrflag = 3;
1498         for (;;)
1499         {
1500             if ((yyn = yysindex[*yyssp]) && (yyn += YYERRCODE) >= 0 &&
1501                     yyn <= YYTABLESIZE && yycheck[yyn] == YYERRCODE)
1502             {
1503 #if YYDEBUG
1504                 if (yydebug)
1505                     PerlIO_printf(Perl_debug_log, "yydebug: state %d, error recovery shifting\
1506  to state %d\n", *yyssp, yytable[yyn]);
1507 #endif
1508                 if (yyssp >= yyss + yystacksize - 1)
1509                 {
1510                     /*
1511                     ** reallocate and recover.  Note that pointers
1512                     ** have to be reset, or bad things will happen
1513                     */
1514                     int yyps_index = (yyssp - yyss);
1515                     int yypv_index = (yyvsp - yyvs);
1516                     yystacksize += YYSTACKSIZE;
1517                     ysave->yyvs = Renew(yyvs, yystacksize, YYSTYPE);
1518                     ysave->yyss = Renew(yyss, yystacksize, short);
1519                     if (!yyvs || !yyss)
1520                         goto yyoverflow;
1521                     yyssp = yyss + yyps_index;
1522                     yyvsp = yyvs + yypv_index;
1523                 }
1524                 *++yyssp = yystate = yytable[yyn];
1525                 *++yyvsp = yylval;
1526                 goto yyloop;
1527             }
1528             else
1529             {
1530 #if YYDEBUG
1531                 if (yydebug)
1532                     PerlIO_printf(Perl_debug_log, "yydebug: error recovery discarding state %d\n",
1533                             *yyssp);
1534 #endif
1535                 if (yyssp <= yyss) goto yyabort;
1536                 --yyssp;
1537                 --yyvsp;
1538             }
1539         }
1540     }
1541     else
1542     {
1543         if (yychar == 0) goto yyabort;
1544 #if YYDEBUG
1545         if (yydebug)
1546         {
1547             yys = 0;
1548             if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
1549             if (!yys) yys = "illegal-symbol";
1550             PerlIO_printf(Perl_debug_log, "yydebug: state %d, error recovery discards token %d (%s)\n",
1551                     yystate, yychar, yys);
1552         }
1553 #endif
1554         yychar = (-1);
1555         goto yyloop;
1556     }
1557 yyreduce:
1558 #if YYDEBUG
1559     if (yydebug)
1560         PerlIO_printf(Perl_debug_log, "yydebug: state %d, reducing by rule %d (%s)\n",
1561                 yystate, yyn, yyrule[yyn]);
1562 #endif
1563     yym = yylen[yyn];
1564     yyval = yyvsp[1-yym];
1565     switch (yyn)
1566     {
1567 case 1:
1568 #line 126 "perly.y"
1569 {
1570 #if defined(YYDEBUG) && defined(DEBUGGING)
1571                     yydebug = (DEBUG_p_TEST);
1572 #endif
1573                     PL_expect = XSTATE;
1574                 }
1575 break;
1576 case 2:
1577 #line 133 "perly.y"
1578 { newPROG(yyvsp[0].opval); }
1579 break;
1580 case 3:
1581 #line 137 "perly.y"
1582 { if (PL_copline > (line_t)yyvsp[-3].ival)
1583                               PL_copline = yyvsp[-3].ival;
1584                           yyval.opval = block_end(yyvsp[-2].ival, yyvsp[-1].opval); }
1585 break;
1586 case 4:
1587 #line 143 "perly.y"
1588 { yyval.ival = block_start(TRUE); }
1589 break;
1590 case 5:
1591 #line 147 "perly.y"
1592 { if (PL_copline > (line_t)yyvsp[-3].ival)
1593                               PL_copline = yyvsp[-3].ival;
1594                           yyval.opval = block_end(yyvsp[-2].ival, yyvsp[-1].opval); }
1595 break;
1596 case 6:
1597 #line 153 "perly.y"
1598 { yyval.ival = block_start(FALSE); }
1599 break;
1600 case 7:
1601 #line 157 "perly.y"
1602 { yyval.opval = Nullop; }
1603 break;
1604 case 8:
1605 #line 159 "perly.y"
1606 { yyval.opval = yyvsp[-1].opval; }
1607 break;
1608 case 9:
1609 #line 161 "perly.y"
1610 {   yyval.opval = append_list(OP_LINESEQ,
1611                                 (LISTOP*)yyvsp[-1].opval, (LISTOP*)yyvsp[0].opval);
1612                             PL_pad_reset_pending = TRUE;
1613                             if (yyvsp[-1].opval && yyvsp[0].opval) PL_hints |= HINT_BLOCK_SCOPE; }
1614 break;
1615 case 10:
1616 #line 168 "perly.y"
1617 { yyval.opval = newSTATEOP(0, yyvsp[-1].pval, yyvsp[0].opval); }
1618 break;
1619 case 12:
1620 #line 171 "perly.y"
1621 { if (yyvsp[-1].pval != Nullch) {
1622                               yyval.opval = newSTATEOP(0, yyvsp[-1].pval, newOP(OP_NULL, 0));
1623                             }
1624                             else {
1625                               yyval.opval = Nullop;
1626                               PL_copline = NOLINE;
1627                             }
1628                             PL_expect = XSTATE; }
1629 break;
1630 case 13:
1631 #line 180 "perly.y"
1632 { yyval.opval = newSTATEOP(0, yyvsp[-2].pval, yyvsp[-1].opval);
1633                           PL_expect = XSTATE; }
1634 break;
1635 case 14:
1636 #line 185 "perly.y"
1637 { yyval.opval = Nullop; }
1638 break;
1639 case 15:
1640 #line 187 "perly.y"
1641 { yyval.opval = yyvsp[0].opval; }
1642 break;
1643 case 16:
1644 #line 189 "perly.y"
1645 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[0].opval, yyvsp[-2].opval); }
1646 break;
1647 case 17:
1648 #line 191 "perly.y"
1649 { yyval.opval = newLOGOP(OP_OR, 0, yyvsp[0].opval, yyvsp[-2].opval); }
1650 break;
1651 case 18:
1652 #line 193 "perly.y"
1653 { yyval.opval = newLOOPOP(OPf_PARENS, 1, scalar(yyvsp[0].opval), yyvsp[-2].opval); }
1654 break;
1655 case 19:
1656 #line 195 "perly.y"
1657 { yyval.opval = newLOOPOP(OPf_PARENS, 1, yyvsp[0].opval, yyvsp[-2].opval);}
1658 break;
1659 case 20:
1660 #line 197 "perly.y"
1661 { yyval.opval = newFOROP(0, Nullch, yyvsp[-1].ival,
1662                                         Nullop, yyvsp[0].opval, yyvsp[-2].opval, Nullop); }
1663 break;
1664 case 21:
1665 #line 202 "perly.y"
1666 { yyval.opval = Nullop; }
1667 break;
1668 case 22:
1669 #line 204 "perly.y"
1670 { (yyvsp[0].opval)->op_flags |= OPf_PARENS; yyval.opval = scope(yyvsp[0].opval); }
1671 break;
1672 case 23:
1673 #line 206 "perly.y"
1674 { PL_copline = yyvsp[-5].ival;
1675                             yyval.opval = newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval);
1676                             PL_hints |= HINT_BLOCK_SCOPE; }
1677 break;
1678 case 24:
1679 #line 212 "perly.y"
1680 { PL_copline = yyvsp[-6].ival;
1681                             yyval.opval = block_end(yyvsp[-4].ival,
1682                                    newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval)); }
1683 break;
1684 case 25:
1685 #line 216 "perly.y"
1686 { PL_copline = yyvsp[-6].ival;
1687                             yyval.opval = block_end(yyvsp[-4].ival,
1688                                    newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval)); }
1689 break;
1690 case 26:
1691 #line 222 "perly.y"
1692 { yyval.opval = Nullop; }
1693 break;
1694 case 27:
1695 #line 224 "perly.y"
1696 { yyval.opval = scope(yyvsp[0].opval); }
1697 break;
1698 case 28:
1699 #line 228 "perly.y"
1700 { PL_copline = yyvsp[-6].ival;
1701                             yyval.opval = block_end(yyvsp[-4].ival,
1702                                    newSTATEOP(0, yyvsp[-7].pval,
1703                                      newWHILEOP(0, 1, (LOOP*)Nullop,
1704                                                 yyvsp[-6].ival, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval))); }
1705 break;
1706 case 29:
1707 #line 234 "perly.y"
1708 { PL_copline = yyvsp[-6].ival;
1709                             yyval.opval = block_end(yyvsp[-4].ival,
1710                                    newSTATEOP(0, yyvsp[-7].pval,
1711                                      newWHILEOP(0, 1, (LOOP*)Nullop,
1712                                                 yyvsp[-6].ival, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval))); }
1713 break;
1714 case 30:
1715 #line 240 "perly.y"
1716 { yyval.opval = block_end(yyvsp[-6].ival,
1717                                  newFOROP(0, yyvsp[-9].pval, yyvsp[-8].ival, yyvsp[-5].opval, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1718 break;
1719 case 31:
1720 #line 243 "perly.y"
1721 { yyval.opval = block_end(yyvsp[-4].ival,
1722                                  newFOROP(0, yyvsp[-8].pval, yyvsp[-7].ival, mod(yyvsp[-6].opval, OP_ENTERLOOP),
1723                                           yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1724 break;
1725 case 32:
1726 #line 247 "perly.y"
1727 { yyval.opval = block_end(yyvsp[-4].ival,
1728                                  newFOROP(0, yyvsp[-7].pval, yyvsp[-6].ival, Nullop, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1729 break;
1730 case 33:
1731 #line 251 "perly.y"
1732 { OP *forop;
1733                           PL_copline = yyvsp[-9].ival;
1734                           forop = newSTATEOP(0, yyvsp[-10].pval,
1735                                             newWHILEOP(0, 1, (LOOP*)Nullop,
1736                                                 yyvsp[-9].ival, scalar(yyvsp[-4].opval),
1737                                                 yyvsp[0].opval, yyvsp[-2].opval));
1738                           if (yyvsp[-6].opval) {
1739                                 forop = append_elem(OP_LINESEQ,
1740                                         newSTATEOP(0, (yyvsp[-10].pval?savepv(yyvsp[-10].pval):Nullch),
1741                                                    yyvsp[-6].opval),
1742                                         forop);
1743                           }
1744
1745                           yyval.opval = block_end(yyvsp[-7].ival, forop); }
1746 break;
1747 case 34:
1748 #line 266 "perly.y"
1749 { yyval.opval = newSTATEOP(0, yyvsp[-2].pval,
1750                                  newWHILEOP(0, 1, (LOOP*)Nullop,
1751                                             NOLINE, Nullop, yyvsp[-1].opval, yyvsp[0].opval)); }
1752 break;
1753 case 35:
1754 #line 272 "perly.y"
1755 { yyval.opval = Nullop; }
1756 break;
1757 case 37:
1758 #line 277 "perly.y"
1759 { (void)scan_num("1", &yylval); yyval.opval = yylval.opval; }
1760 break;
1761 case 39:
1762 #line 282 "perly.y"
1763 { yyval.opval = invert(scalar(yyvsp[0].opval)); }
1764 break;
1765 case 40:
1766 #line 286 "perly.y"
1767 { yyval.opval = yyvsp[0].opval; intro_my(); }
1768 break;
1769 case 41:
1770 #line 290 "perly.y"
1771 { yyval.opval = yyvsp[0].opval; intro_my(); }
1772 break;
1773 case 42:
1774 #line 294 "perly.y"
1775 { yyval.opval = yyvsp[0].opval; intro_my(); }
1776 break;
1777 case 43:
1778 #line 298 "perly.y"
1779 { yyval.opval = yyvsp[0].opval; intro_my(); }
1780 break;
1781 case 44:
1782 #line 302 "perly.y"
1783 { yyval.pval = Nullch; }
1784 break;
1785 case 46:
1786 #line 307 "perly.y"
1787 { yyval.ival = 0; }
1788 break;
1789 case 47:
1790 #line 309 "perly.y"
1791 { yyval.ival = 0; }
1792 break;
1793 case 48:
1794 #line 311 "perly.y"
1795 { yyval.ival = 0; }
1796 break;
1797 case 49:
1798 #line 313 "perly.y"
1799 { yyval.ival = 0; }
1800 break;
1801 case 50:
1802 #line 315 "perly.y"
1803 { yyval.ival = 0; }
1804 break;
1805 case 51:
1806 #line 319 "perly.y"
1807 { newFORM(yyvsp[-2].ival, yyvsp[-1].opval, yyvsp[0].opval); }
1808 break;
1809 case 52:
1810 #line 322 "perly.y"
1811 { yyval.opval = yyvsp[0].opval; }
1812 break;
1813 case 53:
1814 #line 323 "perly.y"
1815 { yyval.opval = Nullop; }
1816 break;
1817 case 54:
1818 #line 327 "perly.y"
1819 { newMYSUB(yyvsp[-4].ival, yyvsp[-3].opval, yyvsp[-2].opval, yyvsp[-1].opval, yyvsp[0].opval); }
1820 break;
1821 case 55:
1822 #line 331 "perly.y"
1823 { newATTRSUB(yyvsp[-4].ival, yyvsp[-3].opval, yyvsp[-2].opval, yyvsp[-1].opval, yyvsp[0].opval); }
1824 break;
1825 case 56:
1826 #line 335 "perly.y"
1827 { yyval.ival = start_subparse(FALSE, 0); }
1828 break;
1829 case 57:
1830 #line 339 "perly.y"
1831 { yyval.ival = start_subparse(FALSE, CVf_ANON); }
1832 break;
1833 case 58:
1834 #line 343 "perly.y"
1835 { yyval.ival = start_subparse(TRUE, 0); }
1836 break;
1837 case 59:
1838 #line 346 "perly.y"
1839 { STRLEN n_a; char *name = SvPV(((SVOP*)yyvsp[0].opval)->op_sv,n_a);
1840                           if (strEQ(name, "BEGIN") || strEQ(name, "END")
1841                               || strEQ(name, "INIT") || strEQ(name, "CHECK"))
1842                               CvSPECIAL_on(PL_compcv);
1843                           yyval.opval = yyvsp[0].opval; }
1844 break;
1845 case 60:
1846 #line 354 "perly.y"
1847 { yyval.opval = Nullop; }
1848 break;
1849 case 62:
1850 #line 359 "perly.y"
1851 { yyval.opval = Nullop; }
1852 break;
1853 case 63:
1854 #line 361 "perly.y"
1855 { yyval.opval = yyvsp[0].opval; }
1856 break;
1857 case 64:
1858 #line 363 "perly.y"
1859 { yyval.opval = Nullop; }
1860 break;
1861 case 65:
1862 #line 367 "perly.y"
1863 { yyval.opval = yyvsp[0].opval; }
1864 break;
1865 case 66:
1866 #line 369 "perly.y"
1867 { yyval.opval = Nullop; }
1868 break;
1869 case 67:
1870 #line 372 "perly.y"
1871 { yyval.opval = yyvsp[0].opval; }
1872 break;
1873 case 68:
1874 #line 373 "perly.y"
1875 { yyval.opval = Nullop; PL_expect = XSTATE; }
1876 break;
1877 case 69:
1878 #line 377 "perly.y"
1879 { package(yyvsp[-1].opval); }
1880 break;
1881 case 70:
1882 #line 379 "perly.y"
1883 { package(Nullop); }
1884 break;
1885 case 71:
1886 #line 383 "perly.y"
1887 { CvSPECIAL_on(PL_compcv); /* It's a BEGIN {} */ }
1888 break;
1889 case 72:
1890 #line 385 "perly.y"
1891 { utilize(yyvsp[-6].ival, yyvsp[-5].ival, yyvsp[-3].opval, yyvsp[-2].opval, yyvsp[-1].opval); }
1892 break;
1893 case 73:
1894 #line 389 "perly.y"
1895 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1896 break;
1897 case 74:
1898 #line 391 "perly.y"
1899 { yyval.opval = newLOGOP(yyvsp[-1].ival, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1900 break;
1901 case 76:
1902 #line 396 "perly.y"
1903 { yyval.opval = yyvsp[-1].opval; }
1904 break;
1905 case 77:
1906 #line 398 "perly.y"
1907 { yyval.opval = append_elem(OP_LIST, yyvsp[-2].opval, yyvsp[0].opval); }
1908 break;
1909 case 79:
1910 #line 403 "perly.y"
1911 { yyval.opval = convert(yyvsp[-2].ival, OPf_STACKED,
1912                                 prepend_elem(OP_LIST, newGVREF(yyvsp[-2].ival,yyvsp[-1].opval), yyvsp[0].opval) ); }
1913 break;
1914 case 80:
1915 #line 406 "perly.y"
1916 { yyval.opval = convert(yyvsp[-4].ival, OPf_STACKED,
1917                                 prepend_elem(OP_LIST, newGVREF(yyvsp[-4].ival,yyvsp[-2].opval), yyvsp[-1].opval) ); }
1918 break;
1919 case 81:
1920 #line 409 "perly.y"
1921 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1922                                 append_elem(OP_LIST,
1923                                     prepend_elem(OP_LIST, scalar(yyvsp[-5].opval), yyvsp[-1].opval),
1924                                     newUNOP(OP_METHOD, 0, yyvsp[-3].opval))); }
1925 break;
1926 case 82:
1927 #line 414 "perly.y"
1928 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1929                                 append_elem(OP_LIST, scalar(yyvsp[-2].opval),
1930                                     newUNOP(OP_METHOD, 0, yyvsp[0].opval))); }
1931 break;
1932 case 83:
1933 #line 418 "perly.y"
1934 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1935                                 append_elem(OP_LIST,
1936                                     prepend_elem(OP_LIST, yyvsp[-1].opval, yyvsp[0].opval),
1937                                     newUNOP(OP_METHOD, 0, yyvsp[-2].opval))); }
1938 break;
1939 case 84:
1940 #line 423 "perly.y"
1941 { yyval.opval = convert(OP_ENTERSUB, OPf_STACKED,
1942                                 append_elem(OP_LIST,
1943                                     prepend_elem(OP_LIST, yyvsp[-3].opval, yyvsp[-1].opval),
1944                                     newUNOP(OP_METHOD, 0, yyvsp[-4].opval))); }
1945 break;
1946 case 85:
1947 #line 428 "perly.y"
1948 { yyval.opval = convert(yyvsp[-1].ival, 0, yyvsp[0].opval); }
1949 break;
1950 case 86:
1951 #line 430 "perly.y"
1952 { yyval.opval = convert(yyvsp[-3].ival, 0, yyvsp[-1].opval); }
1953 break;
1954 case 87:
1955 #line 432 "perly.y"
1956 { yyvsp[0].opval = newANONATTRSUB(yyvsp[-1].ival, 0, Nullop, yyvsp[0].opval); }
1957 break;
1958 case 88:
1959 #line 434 "perly.y"
1960 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
1961                                  append_elem(OP_LIST,
1962                                    prepend_elem(OP_LIST, yyvsp[-2].opval, yyvsp[0].opval), yyvsp[-4].opval)); }
1963 break;
1964 case 91:
1965 #line 444 "perly.y"
1966 { yyval.opval = newBINOP(OP_GELEM, 0, yyvsp[-4].opval, scalar(yyvsp[-2].opval)); }
1967 break;
1968 case 92:
1969 #line 446 "perly.y"
1970 { yyval.opval = newBINOP(OP_AELEM, 0, oopsAV(yyvsp[-3].opval), scalar(yyvsp[-1].opval)); }
1971 break;
1972 case 93:
1973 #line 448 "perly.y"
1974 { yyval.opval = newBINOP(OP_AELEM, 0,
1975                                         ref(newAVREF(yyvsp[-4].opval),OP_RV2AV),
1976                                         scalar(yyvsp[-1].opval));}
1977 break;
1978 case 94:
1979 #line 452 "perly.y"
1980 { yyval.opval = newBINOP(OP_AELEM, 0,
1981                                         ref(newAVREF(yyvsp[-3].opval),OP_RV2AV),
1982                                         scalar(yyvsp[-1].opval));}
1983 break;
1984 case 95:
1985 #line 456 "perly.y"
1986 { yyval.opval = newBINOP(OP_HELEM, 0, oopsHV(yyvsp[-4].opval), jmaybe(yyvsp[-2].opval));
1987                             PL_expect = XOPERATOR; }
1988 break;
1989 case 96:
1990 #line 459 "perly.y"
1991 { yyval.opval = newBINOP(OP_HELEM, 0,
1992                                         ref(newHVREF(yyvsp[-5].opval),OP_RV2HV),
1993                                         jmaybe(yyvsp[-2].opval));
1994                             PL_expect = XOPERATOR; }
1995 break;
1996 case 97:
1997 #line 464 "perly.y"
1998 { yyval.opval = newBINOP(OP_HELEM, 0,
1999                                         ref(newHVREF(yyvsp[-4].opval),OP_RV2HV),
2000                                         jmaybe(yyvsp[-2].opval));
2001                             PL_expect = XOPERATOR; }
2002 break;
2003 case 98:
2004 #line 469 "perly.y"
2005 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2006                                    newCVREF(0, scalar(yyvsp[-3].opval))); }
2007 break;
2008 case 99:
2009 #line 472 "perly.y"
2010 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2011                                    append_elem(OP_LIST, yyvsp[-1].opval,
2012                                        newCVREF(0, scalar(yyvsp[-4].opval)))); }
2013 break;
2014 case 100:
2015 #line 477 "perly.y"
2016 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2017                                    append_elem(OP_LIST, yyvsp[-1].opval,
2018                                                newCVREF(0, scalar(yyvsp[-3].opval)))); }
2019 break;
2020 case 101:
2021 #line 481 "perly.y"
2022 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2023                                    newCVREF(0, scalar(yyvsp[-2].opval))); }
2024 break;
2025 case 102:
2026 #line 487 "perly.y"
2027 { yyval.opval = newASSIGNOP(OPf_STACKED, yyvsp[-2].opval, yyvsp[-1].ival, yyvsp[0].opval); }
2028 break;
2029 case 103:
2030 #line 489 "perly.y"
2031 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
2032 break;
2033 case 104:
2034 #line 491 "perly.y"
2035 {   if (yyvsp[-1].ival != OP_REPEAT)
2036                                 scalar(yyvsp[-2].opval);
2037                             yyval.opval = newBINOP(yyvsp[-1].ival, 0, yyvsp[-2].opval, scalar(yyvsp[0].opval)); }
2038 break;
2039 case 105:
2040 #line 495 "perly.y"
2041 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
2042 break;
2043 case 106:
2044 #line 497 "perly.y"
2045 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
2046 break;
2047 case 107:
2048 #line 499 "perly.y"
2049 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
2050 break;
2051 case 108:
2052 #line 501 "perly.y"
2053 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
2054 break;
2055 case 109:
2056 #line 503 "perly.y"
2057 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
2058 break;
2059 case 110:
2060 #line 505 "perly.y"
2061 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
2062 break;
2063 case 111:
2064 #line 507 "perly.y"
2065 { yyval.opval = newRANGE(yyvsp[-1].ival, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval));}
2066 break;
2067 case 112:
2068 #line 509 "perly.y"
2069 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[-2].opval, yyvsp[0].opval); }
2070 break;
2071 case 113:
2072 #line 511 "perly.y"
2073 { yyval.opval = newLOGOP(OP_OR, 0, yyvsp[-2].opval, yyvsp[0].opval); }
2074 break;
2075 case 114:
2076 #line 513 "perly.y"
2077 { yyval.opval = newCONDOP(0, yyvsp[-4].opval, yyvsp[-2].opval, yyvsp[0].opval); }
2078 break;
2079 case 115:
2080 #line 515 "perly.y"
2081 { yyval.opval = bind_match(yyvsp[-1].ival, yyvsp[-2].opval, yyvsp[0].opval); }
2082 break;
2083 case 116:
2084 #line 518 "perly.y"
2085 { yyval.opval = newUNOP(OP_NEGATE, 0, scalar(yyvsp[0].opval)); }
2086 break;
2087 case 117:
2088 #line 520 "perly.y"
2089 { yyval.opval = yyvsp[0].opval; }
2090 break;
2091 case 118:
2092 #line 522 "perly.y"
2093 { yyval.opval = newUNOP(OP_NOT, 0, scalar(yyvsp[0].opval)); }
2094 break;
2095 case 119:
2096 #line 524 "perly.y"
2097 { yyval.opval = newUNOP(OP_COMPLEMENT, 0, scalar(yyvsp[0].opval));}
2098 break;
2099 case 120:
2100 #line 526 "perly.y"
2101 { yyval.opval = newUNOP(OP_REFGEN, 0, mod(yyvsp[0].opval,OP_REFGEN)); }
2102 break;
2103 case 121:
2104 #line 528 "perly.y"
2105 { yyval.opval = newUNOP(OP_POSTINC, 0,
2106                                         mod(scalar(yyvsp[-1].opval), OP_POSTINC)); }
2107 break;
2108 case 122:
2109 #line 531 "perly.y"
2110 { yyval.opval = newUNOP(OP_POSTDEC, 0,
2111                                         mod(scalar(yyvsp[-1].opval), OP_POSTDEC)); }
2112 break;
2113 case 123:
2114 #line 534 "perly.y"
2115 { yyval.opval = newUNOP(OP_PREINC, 0,
2116                                         mod(scalar(yyvsp[0].opval), OP_PREINC)); }
2117 break;
2118 case 124:
2119 #line 537 "perly.y"
2120 { yyval.opval = newUNOP(OP_PREDEC, 0,
2121                                         mod(scalar(yyvsp[0].opval), OP_PREDEC)); }
2122 break;
2123 case 125:
2124 #line 540 "perly.y"
2125 { yyval.opval = yyvsp[0].opval; }
2126 break;
2127 case 126:
2128 #line 542 "perly.y"
2129 { yyval.opval = localize(yyvsp[0].opval,yyvsp[-1].ival); }
2130 break;
2131 case 127:
2132 #line 544 "perly.y"
2133 { yyval.opval = sawparens(yyvsp[-1].opval); }
2134 break;
2135 case 128:
2136 #line 546 "perly.y"
2137 { yyval.opval = sawparens(newNULLLIST()); }
2138 break;
2139 case 129:
2140 #line 548 "perly.y"
2141 { yyval.opval = newANONLIST(yyvsp[-1].opval); }
2142 break;
2143 case 130:
2144 #line 550 "perly.y"
2145 { yyval.opval = newANONLIST(Nullop); }
2146 break;
2147 case 131:
2148 #line 552 "perly.y"
2149 { yyval.opval = newANONHASH(yyvsp[-2].opval); }
2150 break;
2151 case 132:
2152 #line 554 "perly.y"
2153 { yyval.opval = newANONHASH(Nullop); }
2154 break;
2155 case 133:
2156 #line 556 "perly.y"
2157 { yyval.opval = newANONATTRSUB(yyvsp[-3].ival, yyvsp[-2].opval, yyvsp[-1].opval, yyvsp[0].opval); }
2158 break;
2159 case 134:
2160 #line 558 "perly.y"
2161 { yyval.opval = yyvsp[0].opval; }
2162 break;
2163 case 135:
2164 #line 560 "perly.y"
2165 { yyval.opval = yyvsp[0].opval; }
2166 break;
2167 case 136:
2168 #line 562 "perly.y"
2169 { yyval.opval = yyvsp[0].opval; }
2170 break;
2171 case 137:
2172 #line 564 "perly.y"
2173 { yyval.opval = yyvsp[0].opval; }
2174 break;
2175 case 138:
2176 #line 566 "perly.y"
2177 { yyval.opval = newUNOP(OP_AV2ARYLEN, 0, ref(yyvsp[0].opval, OP_AV2ARYLEN));}
2178 break;
2179 case 139:
2180 #line 568 "perly.y"
2181 { yyval.opval = yyvsp[0].opval; }
2182 break;
2183 case 140:
2184 #line 570 "perly.y"
2185 { yyval.opval = newSLICEOP(0, yyvsp[-1].opval, yyvsp[-4].opval); }
2186 break;
2187 case 141:
2188 #line 572 "perly.y"
2189 { yyval.opval = newSLICEOP(0, yyvsp[-1].opval, Nullop); }
2190 break;
2191 case 142:
2192 #line 574 "perly.y"
2193 { yyval.opval = prepend_elem(OP_ASLICE,
2194                                 newOP(OP_PUSHMARK, 0),
2195                                     newLISTOP(OP_ASLICE, 0,
2196                                         list(yyvsp[-1].opval),
2197                                         ref(yyvsp[-3].opval, OP_ASLICE))); }
2198 break;
2199 case 143:
2200 #line 580 "perly.y"
2201 { yyval.opval = prepend_elem(OP_HSLICE,
2202                                 newOP(OP_PUSHMARK, 0),
2203                                     newLISTOP(OP_HSLICE, 0,
2204                                         list(yyvsp[-2].opval),
2205                                         ref(oopsHV(yyvsp[-4].opval), OP_HSLICE)));
2206                             PL_expect = XOPERATOR; }
2207 break;
2208 case 144:
2209 #line 587 "perly.y"
2210 { yyval.opval = yyvsp[0].opval; }
2211 break;
2212 case 145:
2213 #line 589 "perly.y"
2214 { yyval.opval = newUNOP(OP_ENTERSUB, 0, scalar(yyvsp[0].opval)); }
2215 break;
2216 case 146:
2217 #line 591 "perly.y"
2218 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar(yyvsp[-2].opval)); }
2219 break;
2220 case 147:
2221 #line 593 "perly.y"
2222 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2223                             append_elem(OP_LIST, yyvsp[-1].opval, scalar(yyvsp[-3].opval))); }
2224 break;
2225 case 148:
2226 #line 596 "perly.y"
2227 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2228                             append_elem(OP_LIST, yyvsp[0].opval, scalar(yyvsp[-1].opval))); }
2229 break;
2230 case 149:
2231 #line 599 "perly.y"
2232 { yyval.opval = dofile(yyvsp[0].opval); }
2233 break;
2234 case 150:
2235 #line 601 "perly.y"
2236 { yyval.opval = newUNOP(OP_NULL, OPf_SPECIAL, scope(yyvsp[0].opval)); }
2237 break;
2238 case 151:
2239 #line 603 "perly.y"
2240 { yyval.opval = newUNOP(OP_ENTERSUB,
2241                             OPf_SPECIAL|OPf_STACKED,
2242                             prepend_elem(OP_LIST,
2243                                 scalar(newCVREF(
2244                                     (OPpENTERSUB_AMPER<<8),
2245                                     scalar(yyvsp[-2].opval)
2246                                 )),Nullop)); dep();}
2247 break;
2248 case 152:
2249 #line 611 "perly.y"
2250 { yyval.opval = newUNOP(OP_ENTERSUB,
2251                             OPf_SPECIAL|OPf_STACKED,
2252                             append_elem(OP_LIST,
2253                                 yyvsp[-1].opval,
2254                                 scalar(newCVREF(
2255                                     (OPpENTERSUB_AMPER<<8),
2256                                     scalar(yyvsp[-3].opval)
2257                                 )))); dep();}
2258 break;
2259 case 153:
2260 #line 620 "perly.y"
2261 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED,
2262                             prepend_elem(OP_LIST,
2263                                 scalar(newCVREF(0,scalar(yyvsp[-2].opval))), Nullop)); dep();}
2264 break;
2265 case 154:
2266 #line 624 "perly.y"
2267 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED,
2268                             prepend_elem(OP_LIST,
2269                                 yyvsp[-1].opval,
2270                                 scalar(newCVREF(0,scalar(yyvsp[-3].opval))))); dep();}
2271 break;
2272 case 155:
2273 #line 629 "perly.y"
2274 { yyval.opval = newOP(yyvsp[0].ival, OPf_SPECIAL);
2275                             PL_hints |= HINT_BLOCK_SCOPE; }
2276 break;
2277 case 156:
2278 #line 632 "perly.y"
2279 { yyval.opval = newLOOPEX(yyvsp[-1].ival,yyvsp[0].opval); }
2280 break;
2281 case 157:
2282 #line 634 "perly.y"
2283 { yyval.opval = newUNOP(OP_NOT, 0, scalar(yyvsp[0].opval)); }
2284 break;
2285 case 158:
2286 #line 636 "perly.y"
2287 { yyval.opval = newOP(yyvsp[0].ival, 0); }
2288 break;
2289 case 159:
2290 #line 638 "perly.y"
2291 { yyval.opval = newUNOP(yyvsp[-1].ival, 0, yyvsp[0].opval); }
2292 break;
2293 case 160:
2294 #line 640 "perly.y"
2295 { yyval.opval = newUNOP(yyvsp[-1].ival, 0, yyvsp[0].opval); }
2296 break;
2297 case 161:
2298 #line 642 "perly.y"
2299 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2300                             append_elem(OP_LIST, yyvsp[0].opval, scalar(yyvsp[-1].opval))); }
2301 break;
2302 case 162:
2303 #line 645 "perly.y"
2304 { yyval.opval = newOP(yyvsp[0].ival, 0); }
2305 break;
2306 case 163:
2307 #line 647 "perly.y"
2308 { yyval.opval = newOP(yyvsp[-2].ival, 0); }
2309 break;
2310 case 164:
2311 #line 649 "perly.y"
2312 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2313                                 scalar(yyvsp[0].opval)); }
2314 break;
2315 case 165:
2316 #line 652 "perly.y"
2317 { yyval.opval = newOP(yyvsp[-2].ival, OPf_SPECIAL); }
2318 break;
2319 case 166:
2320 #line 654 "perly.y"
2321 { yyval.opval = newUNOP(yyvsp[-3].ival, 0, yyvsp[-1].opval); }
2322 break;
2323 case 167:
2324 #line 656 "perly.y"
2325 { yyval.opval = pmruntime(yyvsp[-3].opval, yyvsp[-1].opval, Nullop); }
2326 break;
2327 case 168:
2328 #line 658 "perly.y"
2329 { yyval.opval = pmruntime(yyvsp[-5].opval, yyvsp[-3].opval, yyvsp[-1].opval); }
2330 break;
2331 case 171:
2332 #line 664 "perly.y"
2333 { yyval.opval = my_attrs(yyvsp[-1].opval,yyvsp[0].opval); }
2334 break;
2335 case 172:
2336 #line 666 "perly.y"
2337 { yyval.opval = localize(yyvsp[0].opval,yyvsp[-1].ival); }
2338 break;
2339 case 173:
2340 #line 670 "perly.y"
2341 { yyval.opval = sawparens(yyvsp[-1].opval); }
2342 break;
2343 case 174:
2344 #line 672 "perly.y"
2345 { yyval.opval = sawparens(newNULLLIST()); }
2346 break;
2347 case 175:
2348 #line 674 "perly.y"
2349 { yyval.opval = yyvsp[0].opval; }
2350 break;
2351 case 176:
2352 #line 676 "perly.y"
2353 { yyval.opval = yyvsp[0].opval; }
2354 break;
2355 case 177:
2356 #line 678 "perly.y"
2357 { yyval.opval = yyvsp[0].opval; }
2358 break;
2359 case 178:
2360 #line 682 "perly.y"
2361 { yyval.opval = Nullop; }
2362 break;
2363 case 179:
2364 #line 684 "perly.y"
2365 { yyval.opval = yyvsp[0].opval; }
2366 break;
2367 case 180:
2368 #line 688 "perly.y"
2369 { yyval.opval = Nullop; }
2370 break;
2371 case 181:
2372 #line 690 "perly.y"
2373 { yyval.opval = yyvsp[0].opval; }
2374 break;
2375 case 182:
2376 #line 692 "perly.y"
2377 { yyval.opval = yyvsp[-1].opval; }
2378 break;
2379 case 183:
2380 #line 696 "perly.y"
2381 { PL_in_my = 0; yyval.opval = my(yyvsp[0].opval); }
2382 break;
2383 case 184:
2384 #line 700 "perly.y"
2385 { yyval.opval = newCVREF(yyvsp[-1].ival,yyvsp[0].opval); }
2386 break;
2387 case 185:
2388 #line 704 "perly.y"
2389 { yyval.opval = newSVREF(yyvsp[0].opval); }
2390 break;
2391 case 186:
2392 #line 708 "perly.y"
2393 { yyval.opval = newAVREF(yyvsp[0].opval); }
2394 break;
2395 case 187:
2396 #line 712 "perly.y"
2397 { yyval.opval = newHVREF(yyvsp[0].opval); }
2398 break;
2399 case 188:
2400 #line 716 "perly.y"
2401 { yyval.opval = newAVREF(yyvsp[0].opval); }
2402 break;
2403 case 189:
2404 #line 720 "perly.y"
2405 { yyval.opval = newGVREF(0,yyvsp[0].opval); }
2406 break;
2407 case 190:
2408 #line 724 "perly.y"
2409 { yyval.opval = scalar(yyvsp[0].opval); }
2410 break;
2411 case 191:
2412 #line 726 "perly.y"
2413 { yyval.opval = scalar(yyvsp[0].opval);  }
2414 break;
2415 case 192:
2416 #line 728 "perly.y"
2417 { yyval.opval = scope(yyvsp[0].opval); }
2418 break;
2419 case 193:
2420 #line 731 "perly.y"
2421 { yyval.opval = yyvsp[0].opval; }
2422 break;
2423 #line 2440 "perly.c"
2424     }
2425     yyssp -= yym;
2426     yystate = *yyssp;
2427     yyvsp -= yym;
2428     yym = yylhs[yyn];
2429     if (yystate == 0 && yym == 0)
2430     {
2431 #if YYDEBUG
2432         if (yydebug)
2433             PerlIO_printf(Perl_debug_log, "yydebug: after reduction, shifting from state 0 to\
2434  state %d\n", YYFINAL);
2435 #endif
2436         yystate = YYFINAL;
2437         *++yyssp = YYFINAL;
2438         *++yyvsp = yyval;
2439         if (yychar < 0)
2440         {
2441             if ((yychar = yylex()) < 0) yychar = 0;
2442 #if YYDEBUG
2443             if (yydebug)
2444             {
2445                 yys = 0;
2446                 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
2447                 if (!yys) yys = "illegal-symbol";
2448                 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reading %d (%s)\n",
2449                         YYFINAL, yychar, yys);
2450             }
2451 #endif
2452         }
2453         if (yychar == 0) goto yyaccept;
2454         goto yyloop;
2455     }
2456     if ((yyn = yygindex[yym]) && (yyn += yystate) >= 0 &&
2457             yyn <= YYTABLESIZE && yycheck[yyn] == yystate)
2458         yystate = yytable[yyn];
2459     else
2460         yystate = yydgoto[yym];
2461 #if YYDEBUG
2462     if (yydebug)
2463         PerlIO_printf(Perl_debug_log, "yydebug: after reduction, shifting from state %d \
2464 to state %d\n", *yyssp, yystate);
2465 #endif
2466     if (yyssp >= yyss + yystacksize - 1)
2467     {
2468         /*
2469         ** reallocate and recover.  Note that pointers
2470         ** have to be reset, or bad things will happen
2471         */
2472         int yyps_index = (yyssp - yyss);
2473         int yypv_index = (yyvsp - yyvs);
2474         yystacksize += YYSTACKSIZE;
2475         ysave->yyvs = Renew(yyvs, yystacksize, YYSTYPE);
2476         ysave->yyss = Renew(yyss, yystacksize, short);
2477         if (!yyvs || !yyss)
2478             goto yyoverflow;
2479         yyssp = yyss + yyps_index;
2480         yyvsp = yyvs + yypv_index;
2481     }
2482     *++yyssp = yystate;
2483     *++yyvsp = yyval;
2484     goto yyloop;
2485 yyoverflow:
2486     yyerror("Out of memory for yacc stack");
2487 yyabort:
2488     retval = 1;
2489 yyaccept:
2490 #ifdef USE_ITHREADS
2491     LEAVE;                      /* force yydestruct() before we return */
2492 #endif
2493     return retval;
2494 }
2495
2496 #ifdef PERL_OBJECT
2497 #include "XSUB.h"
2498 #endif
2499
2500 static void
2501 yydestruct(pTHXo_ void *ptr)
2502 {
2503     struct ysv* ysave = (struct ysv*)ptr;
2504     if (ysave->yyss) Safefree(ysave->yyss);
2505     if (ysave->yyvs) Safefree(ysave->yyvs);
2506     yydebug     = ysave->oldyydebug;
2507     yynerrs     = ysave->oldyynerrs;
2508     yyerrflag   = ysave->oldyyerrflag;
2509     yychar      = ysave->oldyychar;
2510     yyval       = ysave->oldyyval;
2511     yylval      = ysave->oldyylval;
2512     Safefree(ysave);
2513 }