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