2 static char yysccsid[] = "@(#)yaccpar 1.8 (Berkeley) 01/20/91";
12 deprecate("\"do\" to call subroutines");
17 40, 0, 7, 5, 8, 6, 9, 9, 9, 10,
18 10, 10, 10, 22, 22, 22, 22, 22, 22, 13,
19 13, 13, 12, 12, 12, 12, 37, 37, 11, 11,
20 11, 11, 11, 11, 11, 11, 11, 24, 24, 25,
21 25, 26, 27, 28, 29, 30, 39, 39, 1, 1,
22 1, 1, 3, 3, 41, 41, 36, 36, 4, 42,
23 42, 43, 14, 14, 14, 23, 23, 23, 34, 34,
24 34, 34, 34, 34, 34, 34, 35, 35, 15, 15,
25 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
26 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
27 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
28 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
29 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
30 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
31 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
32 15, 15, 31, 31, 32, 32, 32, 2, 2, 38,
33 21, 16, 17, 18, 19, 20, 33, 33, 33, 33,
36 0, 2, 4, 0, 4, 0, 0, 2, 2, 2,
37 1, 2, 3, 1, 1, 3, 3, 3, 3, 0,
38 2, 6, 7, 7, 4, 4, 0, 2, 8, 8,
39 5, 5, 10, 9, 8, 11, 3, 0, 1, 0,
40 1, 1, 1, 1, 1, 1, 0, 1, 1, 1,
41 1, 1, 4, 3, 5, 5, 0, 1, 0, 3,
42 2, 6, 3, 3, 1, 2, 3, 1, 3, 5,
43 6, 3, 5, 2, 4, 4, 1, 1, 3, 3,
44 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
45 5, 3, 2, 2, 2, 2, 2, 2, 2, 2,
46 2, 2, 3, 2, 3, 2, 4, 3, 4, 1,
47 5, 1, 4, 5, 4, 1, 1, 1, 5, 6,
48 5, 6, 5, 4, 5, 1, 1, 3, 4, 3,
49 2, 2, 4, 5, 4, 5, 1, 2, 2, 1,
50 2, 2, 2, 1, 3, 1, 3, 4, 4, 6,
51 1, 1, 0, 1, 0, 1, 2, 1, 1, 1,
52 2, 2, 2, 2, 2, 2, 1, 1, 1, 1,
54 short yydefred[] = { 1,
55 0, 7, 0, 48, 59, 59, 0, 59, 8, 49,
56 9, 11, 0, 50, 51, 52, 0, 0, 0, 61,
57 0, 14, 4, 151, 0, 0, 126, 0, 146, 0,
58 59, 59, 0, 0, 0, 0, 0, 0, 0, 0,
59 0, 0, 0, 0, 0, 158, 159, 0, 0, 0,
60 0, 0, 0, 0, 0, 0, 0, 12, 0, 0,
61 0, 0, 0, 0, 0, 0, 0, 10, 0, 0,
62 0, 0, 116, 118, 0, 0, 0, 0, 152, 0,
63 54, 0, 60, 0, 7, 167, 170, 169, 168, 0,
64 0, 0, 0, 0, 0, 4, 0, 4, 0, 4,
65 0, 4, 0, 4, 4, 0, 0, 0, 0, 0,
66 165, 0, 132, 0, 0, 0, 0, 0, 161, 0,
67 0, 0, 0, 74, 0, 141, 0, 0, 0, 0,
68 0, 0, 0, 0, 0, 0, 106, 0, 162, 163,
69 164, 166, 0, 0, 37, 0, 0, 0, 0, 0,
70 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
71 0, 0, 0, 0, 0, 0, 98, 99, 0, 0,
72 0, 0, 0, 0, 0, 0, 13, 0, 53, 58,
73 0, 0, 0, 72, 0, 0, 0, 0, 0, 0,
74 0, 0, 0, 0, 0, 0, 0, 0, 4, 145,
75 147, 0, 0, 0, 0, 0, 0, 108, 0, 130,
76 0, 0, 0, 105, 28, 0, 0, 19, 0, 0,
77 0, 63, 0, 0, 0, 0, 0, 0, 0, 0,
78 0, 0, 0, 0, 0, 0, 0, 0, 77, 0,
79 78, 0, 0, 0, 0, 0, 0, 0, 128, 0,
80 0, 56, 55, 0, 3, 0, 149, 0, 76, 109,
81 0, 45, 0, 31, 46, 0, 32, 0, 0, 0,
82 0, 25, 0, 26, 160, 0, 0, 39, 44, 0,
83 0, 0, 148, 157, 75, 0, 133, 0, 135, 0,
84 107, 0, 0, 0, 0, 0, 0, 0, 115, 0,
85 113, 0, 124, 0, 129, 62, 73, 0, 0, 0,
86 0, 6, 21, 0, 0, 0, 0, 0, 0, 70,
87 134, 136, 123, 0, 121, 0, 0, 114, 0, 119,
88 125, 111, 150, 0, 0, 0, 7, 0, 0, 0,
89 0, 0, 0, 122, 120, 71, 29, 30, 23, 0,
90 0, 24, 0, 35, 0, 0, 5, 0, 0, 0,
93 short yydgoto[] = { 1,
94 9, 66, 10, 17, 85, 337, 88, 313, 3, 11,
95 12, 68, 272, 268, 70, 71, 72, 73, 74, 75,
96 76, 278, 78, 279, 262, 265, 269, 281, 263, 266,
97 124, 204, 90, 79, 242, 181, 145, 276, 13, 2,
100 short yysindex[] = { 0,
101 0, 0, -118, 0, 0, 0, -52, 0, 0, 0,
102 0, 0, 616, 0, 0, 0, -117, -225, -12, 0,
103 -219, 0, 0, 0, -28, -28, 0, 32, 0, 2245,
104 0, 0, -7, -6, 3, 22, -35, 2245, 38, 44,
105 48, -28, 1004, 1067, -196, 0, 0, -28, 2245, 948,
106 1343, 2245, 2245, 2245, 2245, 2245, 1399, 0, 2245, 2245,
107 1455, -28, -28, -28, -28, 2245, -215, 0, 192, 3934,
108 -67, -50, 0, 0, -10, 71, 64, 81, 0, 4,
109 0, -114, 0, -115, 0, 0, 0, 0, 0, 2245,
110 115, 2245, 3934, 4, -114, 0, 4, 0, 4, 0,
111 4, 0, 4, 0, 0, 125, 3934, 126, 1518, 948,
112 0, 130, 0, 2305, -24, 46, -56, 2245, 0, 81,
113 0, -67, 81, 0, 2245, 0, 2305, -77, -77, -77,
114 -81, -81, 83, -21, -77, -77, 0, -84, 0, 0,
115 0, 0, 2305, 4, 0, 2245, 2245, 2245, 2245, 2245,
116 2245, 2245, 2245, 2245, 2245, 2245, 2245, 2245, 2245, 2245,
117 2245, 2245, 2245, 2245, 2245, 2245, 0, 0, -17, 2245,
118 2245, 2245, 2245, 2245, 2245, 1794, 0, 2245, 0, 0,
119 -36, 2245, -49, 0, 2245, 326, 2245, 4, 2245, -215,
120 2245, -215, 2245, -156, 2245, -156, 143, 1850, 0, 0,
121 0, -2, 13, 140, 2245, 1906, 1969, 0, 58, 0,
122 81, 2245, 95, 0, 0, -164, -164, 0, -164, -164,
123 -109, 0, -48, 2384, 2305, 2819, 941, 1031, 3934, 3894,
124 3965, 3724, 359, 435, 1190, -77, -77, 2245, 0, 2245,
125 0, 149, -80, 21, -65, 23, 82, 56, 0, 8,
126 3934, 0, 0, 136, 0, 155, 0, 2245, 0, 0,
127 -164, 0, 167, 0, 0, 169, 0, -164, 172, 101,
128 174, 0, 185, 0, 0, 198, 192, 0, 0, 201,
129 202, 2245, 0, 0, 0, 11, 0, 17, 0, 19,
130 0, 84, 2245, 139, 2245, 69, 91, 2245, 0, 153,
131 0, 158, 0, 161, 0, 0, 0, 400, 101, 101,
132 101, 0, 0, 2245, 101, 2245, 101, 2245, 247, 0,
133 0, 0, 0, 105, 0, 1734, 175, 0, 261, 0,
134 0, 0, 0, -215, -215, -156, 0, 269, -156, 279,
135 -215, 268, 101, 0, 0, 0, 0, 0, 0, 278,
136 101, 0, 101, 0, 1850, -215, 0, -156, -215, 300,
139 short yyrindex[] = { 0,
140 0, 0, 220, 0, 0, 0, 0, 0, 0, 0,
141 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
142 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
143 0, 0, 0, 0, 0, 0, 0, 2453, 2118, 0,
144 0, 0, 0, 0, 0, 0, 0, 0, 0, 3021,
145 3064, 0, 0, 0, 0, 0, 0, 0, 0, 0,
146 0, 0, 0, 0, 0, 0, 65, 0, -14, -29,
147 3121, 3189, 0, 0, 2353, 2177, 0, 309, 0, 0,
148 0, -33, 0, 0, 0, 0, 0, 0, 0, 2520,
149 0, 0, 843, 0, 230, 0, 0, 0, 0, 0,
150 0, 0, 0, 0, 0, 0, 1177, 0, 0, 319,
151 0, 2285, 0, 1241, 3121, 0, 0, 2520, 0, 2588,
152 496, 557, 2651, 0, 0, 0, 1692, 674, 3387, 3470,
153 110, 3299, 2719, 0, 3518, 3592, 0, 0, 0, 0,
154 0, 0, 2038, 0, 0, 0, 0, 0, 0, 0,
155 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
156 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
157 0, 0, 0, 0, 0, 0, 0, 2786, 0, 0,
158 0, 302, 892, 0, 319, 0, 2520, 0, 325, 65,
159 0, 65, 0, 164, 0, 164, 0, 312, 0, 0,
160 0, 0, 331, 0, 0, 0, 0, 0, 0, 0,
161 2886, 0, 2954, 0, 0, 10, 12, 0, 34, 53,
162 1047, 0, 0, 1185, 3811, 3827, 3719, 3767, 1294, 0,
163 1636, 1580, 1129, 3871, -4, 3636, 3674, 0, 0, 0,
164 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
165 1572, 0, 0, 0, 0, 0, 0, 0, 0, 0,
166 59, 0, 0, 0, 0, 0, 0, 333, 0, 0,
167 0, 0, 0, 0, 0, 0, 63, 0, 0, 0,
168 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
169 0, 0, 0, 0, 0, 0, 0, 319, 0, 0,
170 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
171 0, 0, 0, 0, 0, 0, 0, 322, 0, 0,
172 0, 0, 0, 0, 0, -23, 0, 0, 0, 0,
173 0, 0, 0, 65, 65, 164, 0, 0, 164, 0,
174 65, 0, 0, 0, 0, 0, 0, 0, 0, 892,
175 0, 0, 0, 0, 347, 65, 0, 164, 65, 0,
178 short yygindex[] = { 0,
179 0, 0, 0, 60, -19, 0, 4247, 768, -83, 0,
180 0, 0, -192, -13, 3466, 2324, 0, 0, 0, 0,
181 0, 377, 955, 0, 0, 245, -173, 39, 75, 204,
182 -68, -168, 966, 0, 0, 313, 335, 0, 0, 0,
185 #define YYTABLESIZE 4435
186 short yytable[] = { 69,
187 62, 183, 209, 274, 105, 23, 20, 62, 214, 170,
188 294, 68, 299, 170, 68, 207, 256, 91, 62, 213,
189 91, 184, 252, 172, 280, 57, 15, 301, 68, 68,
190 117, 82, 96, 98, 91, 91, 83, 84, 283, 83,
191 174, 152, 100, 134, 15, 152, 83, 138, 305, 210,
192 18, 320, 42, 83, 83, 171, 284, 321, 83, 322,
193 118, 102, 144, 68, 27, 18, 172, 21, 18, 91,
194 42, 92, 173, 240, 16, 255, 189, 108, 191, 300,
195 193, 302, 195, 109, 197, 198, 23, 110, 83, 57,
196 94, 95, 16, 17, 23, 202, 203, 27, 171, 41,
197 27, 27, 27, 43, 27, 238, 27, 27, 319, 27,
198 176, 17, 175, 254, 304, 23, 23, 41, 259, 270,
199 271, 15, 177, 27, 178, 23, 23, 327, 27, 329,
200 150, 151, 216, 217, 219, 220, 221, 222, 223, 80,
201 338, 182, 340, 349, 23, 180, 352, 4, 5, 6,
202 100, 7, 8, 100, 185, 27, 243, 244, 245, 246,
203 247, 248, 250, 20, 199, 362, 200, 100, 100, 206,
204 208, 203, 100, 212, 303, 261, 323, 217, 62, 282,
205 285, 217, 291, 328, 277, 293, 151, 27, 298, 27,
206 27, 286, 288, 290, 306, 307, 20, 344, 292, 20,
207 20, 20, 100, 20, 19, 20, 20, 309, 20, 310,
208 150, 151, 311, 314, 150, 151, 4, 5, 6, 2,
209 7, 8, 20, 312, 296, 315, 297, 20, 86, 150,
210 151, 166, 169, 87, 167, 168, 169, 316, 150, 151,
211 239, 317, 68, 68, 68, 68, 150, 151, 91, 91,
212 91, 91, 47, 350, 20, 47, 47, 47, 104, 47,
213 318, 47, 47, 325, 47, 68, 68, 83, 83, 83,
214 83, 91, 91, 150, 151, 91, 83, 330, 47, 324,
215 83, 83, 331, 47, 203, 332, 20, 343, 20, 20,
216 83, 83, 150, 151, 83, 83, 83, 83, 83, 345,
217 83, 346, 150, 151, 261, 150, 151, 150, 151, 351,
218 47, 150, 151, 150, 151, 150, 151, 150, 151, 353,
219 27, 27, 27, 27, 27, 27, 355, 27, 27, 27,
220 27, 27, 27, 27, 27, 27, 27, 27, 27, 27,
221 364, 69, 47, 27, 27, 47, 27, 27, 27, 65,
222 150, 151, 57, 27, 27, 27, 27, 27, 27, 155,
223 153, 27, 27, 150, 151, 40, 257, 65, 27, 258,
224 38, 156, 27, 43, 27, 27, 150, 151, 150, 151,
225 40, 100, 100, 100, 100, 150, 151, 38, 159, 77,
226 100, 218, 342, 360, 100, 100, 100, 100, 273, 150,
227 151, 65, 357, 0, 100, 100, 0, 188, 100, 100,
228 100, 100, 100, 0, 100, 100, 170, 0, 100, 20,
229 20, 20, 20, 20, 20, 0, 20, 20, 20, 20,
230 20, 20, 20, 20, 20, 20, 20, 20, 20, 0,
231 333, 0, 20, 20, 0, 20, 20, 20, 152, 170,
232 0, 0, 20, 20, 20, 20, 20, 20, 0, 0,
233 20, 20, 159, 146, 147, 148, 149, 20, 0, 0,
234 0, 20, 0, 20, 20, 47, 47, 47, 47, 47,
235 47, 152, 47, 47, 47, 0, 150, 151, 47, 0,
236 170, 47, 47, 47, 47, 0, 0, 0, 47, 47,
237 0, 47, 47, 47, 0, 0, 0, 0, 47, 47,
238 47, 47, 47, 47, 0, 0, 47, 47, 0, 0,
239 0, 0, 152, 47, 264, 170, 267, 47, 167, 47,
240 47, 167, 167, 167, 0, 167, 151, 167, 167, 151,
241 167, 0, 0, 4, 5, 6, 0, 7, 8, 0,
242 0, 0, 0, 151, 151, 0, 0, 152, 151, 167,
243 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
244 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
245 65, 65, 65, 65, 0, 0, 151, 0, 151, 168,
246 0, 0, 168, 168, 168, 0, 168, 110, 168, 168,
247 110, 168, 0, 65, 65, 0, 153, 0, 0, 0,
248 154, 155, 156, 157, 110, 110, 0, 0, 151, 110,
249 168, 167, 0, 0, 158, 160, 161, 162, 163, 0,
250 164, 165, 0, 0, 166, 0, 0, 167, 168, 169,
251 0, 0, 0, 154, 155, 156, 157, 0, 52, 110,
252 0, 62, 64, 48, 0, 57, 0, 65, 60, 0,
253 59, 163, 0, 164, 165, 0, 0, 166, 347, 348,
254 167, 168, 169, 0, 58, 354, 0, 0, 0, 63,
255 153, 0, 168, 0, 154, 155, 156, 157, 0, 0,
256 361, 0, 0, 363, 0, 0, 0, 0, 158, 160,
257 161, 162, 163, 0, 164, 165, 61, 0, 166, 0,
258 0, 167, 168, 169, 95, 0, 0, 95, 0, 154,
259 155, 156, 157, 0, 0, 0, 0, 0, 0, 0,
260 0, 95, 95, 0, 0, 0, 95, 0, 23, 164,
261 165, 53, 0, 166, 0, 0, 167, 168, 169, 0,
262 0, 0, 167, 167, 167, 167, 167, 0, 167, 167,
263 167, 0, 0, 0, 167, 0, 95, 151, 151, 151,
264 151, 0, 0, 0, 0, 167, 151, 167, 167, 167,
265 151, 151, 151, 151, 167, 167, 167, 167, 167, 167,
266 151, 151, 167, 167, 151, 151, 151, 151, 151, 167,
267 151, 151, 0, 167, 151, 167, 167, 151, 151, 151,
268 0, 0, 0, 168, 168, 168, 168, 168, 0, 168,
269 168, 168, 0, 0, 0, 168, 0, 0, 110, 110,
270 110, 110, 0, 0, 0, 0, 168, 110, 168, 168,
271 168, 110, 110, 110, 110, 168, 168, 168, 168, 168,
272 168, 110, 110, 168, 168, 110, 110, 110, 110, 110,
273 168, 110, 110, 0, 168, 110, 168, 168, 110, 110,
274 110, 22, 24, 25, 26, 27, 28, 0, 29, 30,
275 31, 0, 0, 143, 32, 0, 143, 33, 34, 35,
276 36, 0, 0, 0, 37, 38, 0, 39, 40, 41,
277 143, 143, 0, 0, 42, 43, 44, 45, 46, 47,
278 0, 0, 49, 50, 0, 0, 0, 0, 0, 51,
279 0, 0, 0, 54, 47, 55, 56, 47, 47, 47,
280 0, 47, 0, 47, 47, 143, 47, 0, 0, 0,
281 0, 0, 0, 0, 0, 95, 95, 95, 95, 0,
282 47, 0, 0, 0, 95, 47, 0, 0, 95, 95,
283 95, 95, 0, 0, 0, 0, 0, 0, 95, 95,
284 0, 0, 95, 95, 95, 95, 95, 0, 95, 95,
285 52, 0, 47, 62, 64, 48, 0, 57, 0, 65,
286 60, 91, 59, 0, 0, 0, 0, 0, 0, 0,
287 0, 0, 0, 120, 123, 0, 0, 111, 0, 0,
288 0, 63, 0, 119, 47, 125, 0, 47, 0, 0,
289 0, 0, 0, 0, 0, 0, 0, 139, 140, 141,
290 142, 170, 0, 0, 0, 0, 52, 0, 61, 62,
291 64, 48, 0, 57, 123, 65, 60, 0, 59, 0,
292 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
293 0, 0, 0, 152, 0, 0, 0, 63, 0, 0,
294 23, 0, 123, 53, 0, 205, 334, 335, 336, 211,
295 0, 0, 339, 0, 341, 0, 0, 64, 0, 0,
296 64, 0, 0, 0, 61, 0, 0, 0, 0, 52,
297 0, 0, 62, 64, 48, 64, 57, 0, 65, 60,
298 356, 59, 0, 0, 143, 143, 143, 143, 358, 0,
299 359, 170, 0, 0, 0, 116, 23, 0, 0, 53,
300 63, 365, 0, 0, 0, 0, 123, 143, 143, 64,
301 0, 123, 0, 0, 0, 0, 0, 47, 47, 47,
302 47, 47, 47, 152, 47, 47, 47, 61, 0, 0,
303 47, 0, 0, 47, 47, 47, 47, 0, 0, 87,
304 47, 47, 87, 47, 47, 47, 0, 0, 0, 0,
305 47, 47, 47, 47, 47, 47, 87, 87, 47, 47,
306 0, 87, 53, 0, 0, 47, 0, 0, 0, 47,
307 0, 47, 47, 0, 121, 25, 26, 27, 28, 87,
308 29, 30, 31, 0, 0, 0, 32, 138, 0, 0,
309 138, 87, 0, 0, 0, 88, 0, 38, 88, 39,
310 40, 41, 0, 0, 138, 138, 42, 43, 44, 45,
311 46, 47, 88, 88, 49, 50, 165, 88, 0, 166,
312 0, 51, 167, 168, 169, 54, 0, 55, 56, 0,
313 112, 25, 26, 27, 28, 0, 29, 30, 31, 138,
314 0, 0, 32, 0, 0, 0, 0, 88, 0, 0,
315 170, 131, 0, 38, 131, 39, 40, 41, 0, 0,
316 0, 0, 42, 43, 44, 45, 46, 47, 131, 131,
317 49, 50, 0, 131, 0, 0, 0, 51, 0, 0,
318 0, 54, 152, 55, 56, 0, 0, 156, 64, 64,
319 64, 64, 0, 24, 25, 26, 27, 28, 0, 29,
320 30, 31, 0, 131, 79, 32, 165, 79, 0, 166,
321 0, 64, 167, 168, 169, 0, 38, 0, 39, 40,
322 41, 79, 79, 0, 0, 42, 43, 44, 45, 46,
323 47, 0, 0, 49, 50, 0, 0, 0, 0, 0,
324 51, 0, 0, 0, 54, 52, 55, 56, 62, 64,
325 48, 0, 57, 0, 65, 60, 79, 59, 0, 0,
326 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
327 87, 87, 87, 87, 0, 0, 63, 0, 0, 87,
328 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
329 0, 0, 0, 87, 87, 0, 0, 87, 87, 87,
330 87, 52, 0, 61, 62, 64, 48, 0, 57, 133,
331 65, 60, 0, 59, 0, 0, 0, 0, 138, 138,
332 138, 138, 0, 0, 0, 0, 88, 88, 88, 88,
333 0, 0, 63, 0, 0, 23, 0, 0, 53, 0,
334 0, 138, 138, 0, 0, 0, 156, 157, 0, 88,
335 88, 0, 0, 88, 0, 0, 0, 52, 0, 61,
336 62, 64, 48, 0, 57, 165, 65, 60, 166, 59,
337 0, 167, 168, 169, 0, 0, 0, 0, 0, 0,
338 0, 0, 131, 131, 131, 131, 0, 0, 63, 0,
339 0, 131, 0, 0, 53, 131, 131, 0, 0, 0,
340 0, 0, 0, 0, 0, 131, 131, 0, 0, 131,
341 131, 131, 131, 131, 0, 61, 0, 137, 0, 0,
342 52, 0, 0, 62, 64, 48, 0, 57, 201, 65,
343 60, 0, 59, 0, 0, 79, 79, 79, 79, 0,
344 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
345 53, 63, 0, 0, 0, 0, 0, 0, 79, 79,
346 0, 0, 0, 0, 0, 0, 0, 0, 0, 24,
347 25, 26, 27, 28, 0, 29, 30, 31, 61, 0,
348 0, 32, 67, 0, 0, 67, 0, 0, 0, 0,
349 89, 0, 38, 89, 39, 40, 41, 0, 0, 67,
350 67, 42, 43, 44, 45, 46, 47, 89, 89, 49,
351 50, 0, 89, 53, 0, 0, 51, 0, 0, 0,
352 54, 0, 55, 56, 0, 24, 25, 26, 27, 28,
353 0, 29, 30, 31, 67, 0, 0, 32, 0, 0,
354 0, 0, 89, 0, 0, 0, 90, 0, 38, 90,
355 39, 40, 41, 0, 0, 0, 0, 42, 43, 44,
356 45, 46, 47, 90, 90, 49, 50, 0, 90, 0,
357 0, 0, 51, 0, 0, 0, 54, 0, 55, 56,
358 0, 24, 25, 26, 27, 28, 0, 29, 30, 31,
359 0, 0, 0, 32, 0, 0, 0, 0, 90, 0,
360 0, 0, 142, 0, 38, 142, 39, 40, 41, 0,
361 0, 0, 0, 42, 43, 44, 45, 46, 47, 142,
362 142, 49, 50, 0, 142, 0, 0, 0, 51, 0,
363 0, 0, 54, 0, 55, 56, 0, 0, 0, 0,
364 0, 0, 0, 0, 24, 25, 26, 27, 28, 0,
365 29, 30, 31, 0, 142, 0, 32, 0, 0, 0,
366 0, 0, 0, 0, 0, 0, 159, 38, 0, 39,
367 40, 41, 0, 0, 0, 0, 42, 43, 44, 45,
368 46, 47, 0, 0, 49, 50, 0, 0, 0, 0,
369 0, 51, 0, 0, 170, 54, 52, 55, 56, 62,
370 64, 48, 0, 57, 249, 65, 60, 0, 59, 0,
371 0, 0, 0, 67, 67, 67, 67, 0, 0, 0,
372 0, 89, 89, 89, 89, 0, 152, 63, 0, 0,
373 89, 0, 0, 0, 0, 0, 67, 67, 0, 0,
374 0, 0, 0, 0, 89, 89, 0, 0, 89, 89,
375 89, 0, 52, 0, 61, 62, 64, 48, 0, 57,
376 0, 65, 60, 0, 59, 0, 0, 0, 0, 0,
377 0, 0, 0, 0, 0, 0, 0, 90, 90, 90,
378 90, 0, 0, 63, 0, 0, 90, 0, 0, 53,
379 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
380 90, 90, 0, 0, 90, 90, 0, 0, 52, 0,
381 61, 62, 64, 48, 0, 57, 287, 65, 60, 0,
382 59, 0, 0, 0, 0, 0, 0, 0, 0, 0,
383 0, 0, 0, 142, 142, 142, 142, 0, 0, 63,
384 0, 0, 142, 0, 0, 53, 142, 142, 0, 0,
385 0, 0, 0, 0, 0, 0, 142, 142, 0, 0,
386 142, 142, 142, 142, 142, 0, 61, 0, 0, 0,
387 0, 52, 0, 0, 62, 64, 48, 0, 57, 289,
388 65, 60, 0, 59, 153, 0, 0, 0, 154, 155,
389 156, 157, 0, 0, 0, 0, 0, 0, 0, 0,
390 0, 53, 63, 160, 161, 162, 163, 0, 164, 165,
391 0, 0, 166, 0, 0, 167, 168, 169, 0, 0,
392 24, 25, 26, 27, 28, 0, 29, 30, 31, 61,
393 0, 0, 32, 0, 0, 0, 0, 0, 0, 0,
394 0, 0, 0, 38, 0, 39, 40, 41, 102, 0,
395 0, 102, 42, 43, 44, 45, 46, 47, 0, 0,
396 49, 50, 0, 0, 53, 102, 102, 51, 0, 0,
397 102, 54, 0, 55, 56, 22, 24, 25, 26, 27,
398 28, 0, 29, 30, 31, 0, 0, 0, 32, 0,
399 0, 0, 0, 0, 0, 0, 0, 0, 0, 38,
400 102, 39, 40, 41, 0, 0, 0, 0, 42, 43,
401 44, 45, 46, 47, 0, 0, 49, 50, 0, 0,
402 0, 0, 0, 51, 0, 0, 0, 54, 144, 55,
403 56, 144, 24, 25, 26, 27, 28, 0, 29, 30,
404 31, 0, 0, 0, 32, 144, 144, 0, 0, 0,
405 144, 0, 0, 0, 0, 38, 0, 39, 40, 41,
406 0, 0, 0, 0, 42, 43, 44, 45, 46, 47,
407 0, 0, 49, 50, 0, 0, 0, 0, 144, 51,
408 144, 0, 0, 54, 0, 55, 56, 127, 0, 0,
409 127, 0, 0, 0, 0, 24, 25, 26, 27, 28,
410 0, 29, 30, 31, 127, 127, 0, 32, 0, 127,
411 144, 0, 0, 0, 0, 0, 0, 0, 38, 0,
412 39, 40, 41, 0, 0, 0, 0, 42, 43, 44,
413 45, 46, 47, 0, 0, 49, 50, 127, 0, 127,
414 0, 0, 51, 0, 0, 0, 54, 52, 55, 56,
415 62, 64, 48, 0, 57, 0, 65, 60, 0, 59,
416 0, 0, 0, 0, 0, 0, 0, 0, 0, 127,
417 0, 0, 0, 0, 0, 0, 0, 0, 63, 102,
418 102, 102, 102, 0, 0, 0, 0, 0, 102, 0,
419 0, 0, 102, 102, 0, 151, 0, 0, 151, 0,
420 0, 0, 102, 102, 0, 61, 102, 102, 102, 102,
421 102, 0, 151, 151, 0, 0, 0, 151, 89, 89,
422 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
423 106, 0, 0, 0, 0, 89, 115, 0, 0, 0,
424 53, 89, 0, 122, 0, 151, 0, 151, 0, 0,
425 0, 0, 0, 0, 0, 89, 89, 89, 89, 144,
426 144, 144, 144, 112, 0, 170, 112, 0, 144, 0,
427 0, 0, 144, 144, 144, 144, 0, 151, 0, 0,
428 112, 112, 144, 144, 0, 112, 144, 144, 144, 144,
429 144, 0, 144, 144, 0, 0, 144, 152, 0, 144,
430 144, 144, 0, 122, 0, 0, 0, 0, 0, 0,
431 0, 0, 0, 112, 0, 112, 0, 0, 127, 127,
432 127, 127, 0, 0, 0, 0, 0, 127, 0, 0,
433 0, 127, 127, 127, 127, 0, 0, 0, 0, 0,
434 0, 127, 127, 0, 170, 127, 127, 127, 127, 127,
435 0, 127, 127, 0, 0, 127, 0, 0, 127, 127,
436 127, 0, 241, 137, 0, 0, 137, 0, 0, 0,
437 0, 24, 25, 26, 27, 28, 152, 29, 30, 31,
438 137, 137, 0, 32, 0, 137, 0, 0, 0, 0,
439 275, 0, 0, 0, 38, 0, 39, 40, 41, 0,
440 0, 0, 0, 42, 43, 44, 45, 46, 47, 0,
441 0, 49, 50, 0, 0, 137, 0, 0, 51, 0,
442 0, 0, 54, 0, 55, 56, 151, 151, 151, 151,
443 153, 0, 0, 153, 0, 151, 0, 0, 0, 151,
444 151, 151, 151, 0, 0, 137, 0, 153, 153, 151,
445 151, 0, 153, 151, 151, 151, 151, 151, 0, 151,
446 151, 156, 157, 151, 0, 0, 151, 151, 151, 0,
447 0, 0, 0, 0, 0, 0, 0, 0, 0, 164,
448 165, 0, 153, 166, 0, 0, 167, 168, 169, 0,
449 0, 0, 0, 0, 112, 112, 112, 112, 139, 0,
450 0, 0, 0, 112, 0, 0, 0, 112, 112, 112,
451 112, 0, 153, 0, 0, 139, 139, 112, 112, 0,
452 139, 112, 112, 112, 112, 112, 0, 112, 112, 0,
453 0, 112, 0, 0, 112, 112, 112, 0, 154, 155,
454 156, 157, 0, 0, 0, 0, 0, 0, 139, 0,
455 139, 0, 0, 160, 161, 162, 163, 0, 164, 165,
456 0, 154, 166, 0, 0, 167, 168, 169, 0, 0,
457 0, 0, 0, 0, 0, 0, 0, 0, 154, 154,
458 139, 0, 0, 154, 0, 0, 0, 0, 0, 0,
459 0, 0, 0, 0, 137, 137, 137, 137, 0, 0,
460 0, 0, 0, 137, 0, 0, 0, 137, 137, 137,
461 137, 154, 0, 154, 0, 0, 0, 137, 137, 0,
462 0, 137, 137, 137, 137, 137, 0, 137, 137, 104,
463 0, 137, 104, 0, 137, 137, 137, 0, 0, 0,
464 0, 0, 0, 154, 0, 0, 104, 104, 0, 0,
465 0, 104, 0, 0, 0, 0, 0, 0, 0, 0,
466 0, 153, 153, 153, 153, 0, 0, 0, 0, 0,
467 153, 0, 0, 0, 153, 153, 153, 153, 0, 0,
468 0, 104, 0, 0, 153, 153, 0, 0, 153, 153,
469 153, 153, 153, 0, 153, 153, 66, 0, 153, 66,
470 0, 153, 153, 153, 0, 0, 0, 0, 0, 0,
471 0, 104, 0, 66, 66, 0, 0, 0, 66, 0,
472 0, 0, 0, 0, 0, 0, 0, 0, 0, 139,
473 139, 139, 139, 0, 0, 0, 0, 0, 139, 0,
474 0, 0, 139, 139, 139, 139, 0, 0, 66, 0,
475 0, 0, 139, 139, 0, 0, 139, 139, 139, 139,
476 139, 0, 139, 139, 0, 0, 139, 0, 0, 139,
477 139, 139, 0, 0, 0, 0, 0, 0, 66, 170,
478 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
479 0, 0, 154, 154, 154, 154, 69, 0, 0, 0,
480 0, 154, 0, 0, 0, 154, 154, 154, 154, 0,
481 0, 152, 0, 69, 69, 154, 154, 0, 69, 154,
482 154, 154, 154, 154, 0, 154, 154, 0, 0, 154,
483 0, 0, 154, 154, 154, 0, 0, 0, 0, 0,
484 0, 0, 0, 0, 0, 0, 69, 0, 69, 0,
485 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
486 104, 104, 104, 104, 103, 0, 0, 103, 0, 104,
487 0, 0, 0, 104, 104, 104, 104, 0, 69, 0,
488 0, 103, 103, 104, 104, 0, 103, 104, 104, 104,
489 104, 104, 0, 104, 104, 0, 0, 104, 0, 0,
490 104, 104, 104, 0, 0, 0, 0, 0, 0, 0,
491 0, 0, 0, 0, 0, 0, 103, 0, 0, 0,
492 0, 0, 0, 0, 0, 0, 0, 66, 66, 66,
493 66, 153, 0, 0, 153, 0, 66, 0, 0, 0,
494 66, 66, 66, 66, 0, 0, 103, 0, 153, 153,
495 66, 66, 0, 153, 66, 66, 66, 66, 66, 0,
496 66, 66, 0, 0, 66, 0, 0, 66, 66, 66,
497 0, 0, 0, 154, 140, 156, 157, 140, 0, 0,
498 0, 0, 0, 153, 0, 0, 0, 0, 0, 0,
499 0, 140, 140, 164, 165, 0, 140, 166, 0, 0,
500 167, 168, 169, 0, 0, 0, 0, 0, 0, 0,
501 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
502 0, 0, 0, 0, 0, 0, 140, 69, 69, 69,
503 69, 110, 0, 0, 110, 0, 69, 0, 0, 0,
504 69, 69, 69, 69, 0, 0, 0, 0, 110, 110,
505 69, 69, 0, 110, 69, 69, 69, 69, 69, 0,
506 69, 69, 0, 0, 69, 0, 0, 69, 69, 69,
507 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
508 0, 0, 0, 110, 0, 0, 0, 0, 0, 0,
509 0, 0, 0, 0, 0, 103, 103, 103, 103, 117,
510 0, 0, 117, 0, 103, 0, 0, 0, 103, 103,
511 103, 103, 0, 0, 0, 0, 117, 117, 103, 103,
512 0, 117, 103, 103, 103, 103, 103, 0, 103, 103,
513 0, 0, 103, 0, 0, 103, 103, 103, 0, 0,
514 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
515 0, 117, 0, 0, 0, 0, 0, 0, 0, 0,
516 0, 0, 153, 153, 153, 153, 0, 0, 0, 0,
517 0, 153, 0, 0, 0, 153, 153, 153, 153, 0,
518 0, 0, 0, 0, 0, 153, 153, 0, 0, 153,
519 153, 153, 153, 153, 0, 153, 153, 0, 0, 153,
520 0, 0, 153, 153, 153, 140, 140, 140, 140, 101,
521 0, 0, 101, 0, 140, 0, 0, 0, 140, 140,
522 140, 140, 0, 0, 0, 0, 101, 101, 140, 140,
523 0, 101, 140, 140, 140, 140, 140, 0, 140, 140,
524 0, 0, 140, 0, 0, 140, 140, 140, 0, 0,
525 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
526 0, 101, 110, 110, 110, 110, 0, 0, 0, 0,
527 0, 110, 0, 0, 0, 110, 110, 110, 110, 0,
528 0, 0, 0, 0, 0, 110, 110, 0, 0, 110,
529 110, 110, 110, 110, 0, 110, 110, 96, 0, 110,
530 96, 0, 110, 110, 110, 0, 0, 0, 0, 0,
531 0, 0, 0, 0, 96, 96, 0, 0, 0, 96,
532 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
533 117, 117, 117, 117, 0, 0, 0, 0, 0, 117,
534 0, 0, 0, 117, 117, 117, 117, 0, 0, 96,
535 0, 0, 0, 117, 117, 0, 0, 117, 117, 117,
536 117, 117, 0, 117, 117, 93, 0, 117, 0, 0,
537 117, 117, 117, 107, 0, 0, 0, 0, 114, 0,
538 97, 0, 0, 97, 0, 0, 127, 128, 129, 130,
539 131, 132, 0, 0, 135, 136, 0, 97, 97, 0,
540 0, 143, 97, 0, 0, 0, 0, 0, 0, 0,
541 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
542 0, 0, 0, 0, 0, 0, 0, 186, 93, 0,
543 0, 93, 97, 0, 0, 0, 0, 0, 0, 0,
544 101, 101, 101, 101, 0, 93, 93, 0, 0, 101,
545 93, 0, 0, 101, 101, 101, 101, 0, 0, 0,
546 0, 0, 0, 101, 101, 0, 0, 101, 101, 101,
547 101, 101, 0, 101, 101, 0, 0, 101, 0, 0,
548 93, 0, 0, 0, 0, 0, 0, 0, 224, 225,
549 226, 227, 228, 229, 230, 231, 232, 233, 234, 235,
550 236, 237, 94, 0, 0, 94, 0, 0, 0, 0,
551 0, 0, 0, 251, 0, 0, 0, 0, 0, 94,
552 94, 0, 0, 0, 94, 0, 0, 0, 96, 96,
553 96, 96, 0, 0, 0, 0, 0, 96, 0, 0,
554 0, 96, 96, 96, 96, 0, 92, 0, 0, 92,
555 0, 96, 96, 0, 94, 96, 96, 96, 96, 96,
556 0, 96, 96, 92, 92, 0, 0, 0, 92, 0,
557 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
558 0, 0, 0, 0, 80, 0, 0, 80, 0, 0,
559 0, 0, 0, 308, 0, 0, 0, 0, 92, 0,
560 0, 80, 80, 0, 0, 0, 80, 0, 0, 0,
561 0, 97, 97, 97, 97, 0, 0, 0, 0, 0,
562 97, 0, 0, 0, 97, 97, 97, 97, 0, 81,
563 326, 0, 81, 0, 97, 97, 80, 0, 97, 97,
564 97, 97, 97, 0, 97, 97, 81, 81, 0, 0,
565 0, 81, 0, 0, 0, 0, 0, 0, 0, 93,
566 93, 93, 93, 0, 0, 0, 0, 0, 93, 0,
567 0, 0, 93, 93, 93, 93, 0, 82, 0, 0,
568 82, 81, 93, 93, 170, 0, 93, 93, 93, 93,
569 93, 0, 93, 93, 82, 82, 0, 0, 0, 82,
570 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
571 0, 0, 0, 0, 0, 0, 152, 0, 0, 0,
572 0, 84, 0, 0, 84, 0, 0, 0, 0, 82,
573 0, 0, 0, 94, 94, 94, 94, 85, 84, 84,
574 85, 0, 94, 84, 0, 0, 94, 94, 94, 94,
575 0, 0, 0, 0, 85, 85, 94, 94, 0, 85,
576 94, 94, 94, 94, 94, 0, 94, 94, 0, 0,
577 0, 0, 0, 84, 0, 0, 0, 92, 92, 92,
578 92, 86, 0, 0, 86, 0, 92, 0, 0, 85,
579 92, 92, 92, 92, 0, 0, 0, 0, 86, 86,
580 92, 92, 0, 86, 92, 92, 92, 92, 92, 0,
581 92, 92, 0, 0, 0, 80, 80, 80, 80, 0,
582 0, 295, 0, 0, 80, 0, 159, 0, 80, 80,
583 80, 80, 0, 86, 0, 0, 0, 0, 80, 80,
584 0, 0, 80, 80, 80, 80, 80, 0, 80, 80,
585 0, 0, 0, 0, 170, 0, 0, 0, 0, 0,
586 81, 81, 81, 81, 0, 0, 159, 0, 0, 81,
587 0, 0, 0, 81, 81, 81, 81, 0, 154, 155,
588 156, 157, 0, 81, 81, 0, 152, 81, 81, 81,
589 81, 81, 0, 81, 170, 162, 163, 0, 164, 165,
590 0, 0, 166, 0, 0, 167, 168, 169, 82, 82,
591 82, 82, 0, 0, 0, 0, 0, 82, 0, 0,
592 0, 82, 82, 0, 82, 170, 152, 0, 0, 0,
593 0, 82, 82, 0, 0, 82, 82, 82, 82, 82,
594 0, 82, 0, 0, 0, 0, 0, 0, 0, 0,
595 0, 0, 84, 84, 84, 84, 0, 152, 0, 0,
596 0, 84, 0, 0, 0, 0, 84, 0, 85, 85,
597 85, 85, 0, 0, 0, 84, 84, 85, 0, 84,
598 84, 84, 84, 84, 0, 0, 0, 0, 0, 0,
599 0, 85, 85, 0, 0, 85, 85, 85, 85, 85,
600 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
601 0, 0, 86, 86, 86, 86, 0, 0, 0, 0,
602 0, 86, 0, 0, 0, 0, 0, 0, 0, 0,
603 0, 0, 0, 0, 0, 86, 86, 0, 0, 86,
604 86, 86, 86, 86, 153, 0, 0, 0, 154, 155,
605 156, 157, 0, 0, 0, 0, 0, 0, 0, 0,
606 0, 0, 158, 160, 161, 162, 163, 0, 164, 165,
607 0, 0, 166, 0, 0, 167, 168, 169, 0, 0,
608 0, 0, 0, 0, 153, 0, 0, 0, 154, 155,
609 156, 157, 0, 0, 0, 0, 0, 0, 0, 0,
610 0, 0, 158, 160, 161, 162, 163, 0, 164, 165,
611 0, 0, 166, 0, 0, 167, 168, 169, 0, 154,
612 155, 156, 157, 0, 0, 0, 0, 0, 0, 67,
613 0, 0, 0, 81, 0, 161, 162, 163, 0, 164,
614 165, 0, 0, 166, 0, 0, 167, 168, 169, 97,
615 99, 101, 103, 0, 0, 0, 0, 0, 0, 113,
616 0, 0, 0, 0, 0, 0, 0, 126, 0, 0,
617 0, 0, 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, 179, 0, 0, 0,
620 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
621 187, 0, 0, 190, 0, 192, 0, 194, 0, 196,
622 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
623 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
624 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
625 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
626 215, 0, 0, 0, 0, 0, 0, 0, 0, 0,
627 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
628 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
629 0, 0, 0, 0, 0, 0, 0, 253, 0, 0,
632 short yycheck[] = { 13,
633 36, 85, 59, 196, 40, 123, 59, 36, 93, 91,
634 59, 41, 93, 91, 44, 40, 185, 41, 36, 41,
635 44, 90, 59, 91, 198, 59, 41, 93, 58, 59,
636 44, 257, 40, 40, 58, 59, 41, 257, 41, 44,
637 91, 123, 40, 57, 59, 123, 59, 61, 41, 118,
638 41, 41, 41, 58, 59, 123, 44, 41, 63, 41,
639 257, 40, 278, 93, 0, 6, 91, 8, 59, 93,
640 59, 40, 123, 91, 41, 125, 96, 40, 98, 59,
641 100, 59, 102, 40, 104, 105, 123, 40, 93, 123,
642 31, 32, 59, 41, 123, 109, 110, 33, 123, 41,
643 36, 37, 38, 41, 40, 123, 42, 43, 282, 45,
644 40, 59, 123, 182, 59, 123, 123, 59, 187, 276,
645 277, 59, 59, 59, 44, 123, 123, 59, 64, 298,
646 295, 296, 146, 147, 148, 149, 150, 151, 152, 257,
647 314, 257, 316, 336, 123, 260, 339, 266, 267, 268,
648 41, 270, 271, 44, 40, 91, 170, 171, 172, 173,
649 174, 175, 176, 0, 40, 358, 41, 58, 59, 40,
650 125, 185, 63, 91, 93, 189, 93, 191, 36, 199,
651 41, 195, 125, 93, 198, 91, 296, 123, 40, 125,
652 126, 205, 206, 207, 59, 41, 33, 93, 212, 36,
653 37, 38, 93, 40, 257, 42, 43, 41, 45, 41,
654 295, 296, 41, 40, 295, 296, 266, 267, 268, 0,
655 270, 271, 59, 123, 238, 41, 240, 64, 257, 295,
656 296, 309, 314, 262, 312, 313, 314, 40, 295, 296,
657 258, 41, 272, 273, 274, 275, 295, 296, 272, 273,
658 274, 275, 33, 337, 91, 36, 37, 38, 294, 40,
659 59, 42, 43, 125, 45, 295, 296, 272, 273, 274,
660 275, 295, 296, 295, 296, 299, 281, 125, 59, 293,
661 285, 286, 125, 64, 298, 125, 123, 41, 125, 126,
662 295, 296, 295, 296, 299, 300, 301, 302, 303, 125,
663 305, 41, 295, 296, 318, 295, 296, 295, 296, 41,
664 91, 295, 296, 295, 296, 295, 296, 295, 296, 41,
665 256, 257, 258, 259, 260, 261, 59, 263, 264, 265,
666 266, 267, 268, 269, 270, 271, 272, 273, 274, 275,
667 41, 355, 123, 279, 280, 126, 282, 283, 284, 41,
668 295, 296, 123, 289, 290, 291, 292, 293, 294, 41,
669 59, 297, 298, 295, 296, 41, 41, 59, 304, 44,
670 59, 41, 308, 41, 310, 311, 295, 296, 295, 296,
671 59, 272, 273, 274, 275, 295, 296, 41, 63, 13,
672 281, 147, 318, 355, 285, 286, 287, 288, 195, 295,
673 296, 93, 125, -1, 295, 296, -1, 95, 299, 300,
674 301, 302, 303, -1, 305, 306, 91, -1, 309, 256,
675 257, 258, 259, 260, 261, -1, 263, 264, 265, 266,
676 267, 268, 269, 270, 271, 272, 273, 274, 275, -1,
677 41, -1, 279, 280, -1, 282, 283, 284, 123, 91,
678 -1, -1, 289, 290, 291, 292, 293, 294, -1, -1,
679 297, 298, 63, 272, 273, 274, 275, 304, -1, -1,
680 -1, 308, -1, 310, 311, 256, 257, 258, 259, 260,
681 261, 123, 263, 264, 265, -1, 295, 296, 269, -1,
682 91, 272, 273, 274, 275, -1, -1, -1, 279, 280,
683 -1, 282, 283, 284, -1, -1, -1, -1, 289, 290,
684 291, 292, 293, 294, -1, -1, 297, 298, -1, -1,
685 -1, -1, 123, 304, 190, 91, 192, 308, 33, 310,
686 311, 36, 37, 38, -1, 40, 41, 42, 43, 44,
687 45, -1, -1, 266, 267, 268, -1, 270, 271, -1,
688 -1, -1, -1, 58, 59, -1, -1, 123, 63, 64,
689 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
690 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
691 272, 273, 274, 275, -1, -1, 91, -1, 93, 33,
692 -1, -1, 36, 37, 38, -1, 40, 41, 42, 43,
693 44, 45, -1, 295, 296, -1, 281, -1, -1, -1,
694 285, 286, 287, 288, 58, 59, -1, -1, 123, 63,
695 64, 126, -1, -1, 299, 300, 301, 302, 303, -1,
696 305, 306, -1, -1, 309, -1, -1, 312, 313, 314,
697 -1, -1, -1, 285, 286, 287, 288, -1, 33, 93,
698 -1, 36, 37, 38, -1, 40, -1, 42, 43, -1,
699 45, 303, -1, 305, 306, -1, -1, 309, 334, 335,
700 312, 313, 314, -1, 59, 341, -1, -1, -1, 64,
701 281, -1, 126, -1, 285, 286, 287, 288, -1, -1,
702 356, -1, -1, 359, -1, -1, -1, -1, 299, 300,
703 301, 302, 303, -1, 305, 306, 91, -1, 309, -1,
704 -1, 312, 313, 314, 41, -1, -1, 44, -1, 285,
705 286, 287, 288, -1, -1, -1, -1, -1, -1, -1,
706 -1, 58, 59, -1, -1, -1, 63, -1, 123, 305,
707 306, 126, -1, 309, -1, -1, 312, 313, 314, -1,
708 -1, -1, 257, 258, 259, 260, 261, -1, 263, 264,
709 265, -1, -1, -1, 269, -1, 93, 272, 273, 274,
710 275, -1, -1, -1, -1, 280, 281, 282, 283, 284,
711 285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
712 295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
713 305, 306, -1, 308, 309, 310, 311, 312, 313, 314,
714 -1, -1, -1, 257, 258, 259, 260, 261, -1, 263,
715 264, 265, -1, -1, -1, 269, -1, -1, 272, 273,
716 274, 275, -1, -1, -1, -1, 280, 281, 282, 283,
717 284, 285, 286, 287, 288, 289, 290, 291, 292, 293,
718 294, 295, 296, 297, 298, 299, 300, 301, 302, 303,
719 304, 305, 306, -1, 308, 309, 310, 311, 312, 313,
720 314, 256, 257, 258, 259, 260, 261, -1, 263, 264,
721 265, -1, -1, 41, 269, -1, 44, 272, 273, 274,
722 275, -1, -1, -1, 279, 280, -1, 282, 283, 284,
723 58, 59, -1, -1, 289, 290, 291, 292, 293, 294,
724 -1, -1, 297, 298, -1, -1, -1, -1, -1, 304,
725 -1, -1, -1, 308, 33, 310, 311, 36, 37, 38,
726 -1, 40, -1, 42, 43, 93, 45, -1, -1, -1,
727 -1, -1, -1, -1, -1, 272, 273, 274, 275, -1,
728 59, -1, -1, -1, 281, 64, -1, -1, 285, 286,
729 287, 288, -1, -1, -1, -1, -1, -1, 295, 296,
730 -1, -1, 299, 300, 301, 302, 303, -1, 305, 306,
731 33, -1, 91, 36, 37, 38, -1, 40, -1, 42,
732 43, 26, 45, -1, -1, -1, -1, -1, -1, -1,
733 -1, -1, -1, 49, 50, -1, -1, 42, -1, -1,
734 -1, 64, -1, 48, 123, 50, -1, 126, -1, -1,
735 -1, -1, -1, -1, -1, -1, -1, 62, 63, 64,
736 65, 91, -1, -1, -1, -1, 33, -1, 91, 36,
737 37, 38, -1, 40, 90, 42, 43, -1, 45, -1,
738 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
739 -1, -1, -1, 123, -1, -1, -1, 64, -1, -1,
740 123, -1, 118, 126, -1, 110, 309, 310, 311, 125,
741 -1, -1, 315, -1, 317, -1, -1, 41, -1, -1,
742 44, -1, -1, -1, 91, -1, -1, -1, -1, 33,
743 -1, -1, 36, 37, 38, 59, 40, -1, 42, 43,
744 343, 45, -1, -1, 272, 273, 274, 275, 351, -1,
745 353, 91, -1, -1, -1, 59, 123, -1, -1, 126,
746 64, 364, -1, -1, -1, -1, 182, 295, 296, 93,
747 -1, 187, -1, -1, -1, -1, -1, 256, 257, 258,
748 259, 260, 261, 123, 263, 264, 265, 91, -1, -1,
749 269, -1, -1, 272, 273, 274, 275, -1, -1, 41,
750 279, 280, 44, 282, 283, 284, -1, -1, -1, -1,
751 289, 290, 291, 292, 293, 294, 58, 59, 297, 298,
752 -1, 63, 126, -1, -1, 304, -1, -1, -1, 308,
753 -1, 310, 311, -1, 257, 258, 259, 260, 261, 262,
754 263, 264, 265, -1, -1, -1, 269, 41, -1, -1,
755 44, 93, -1, -1, -1, 41, -1, 280, 44, 282,
756 283, 284, -1, -1, 58, 59, 289, 290, 291, 292,
757 293, 294, 58, 59, 297, 298, 306, 63, -1, 309,
758 -1, 304, 312, 313, 314, 308, -1, 310, 311, -1,
759 257, 258, 259, 260, 261, -1, 263, 264, 265, 93,
760 -1, -1, 269, -1, -1, -1, -1, 93, -1, -1,
761 91, 41, -1, 280, 44, 282, 283, 284, -1, -1,
762 -1, -1, 289, 290, 291, 292, 293, 294, 58, 59,
763 297, 298, -1, 63, -1, -1, -1, 304, -1, -1,
764 -1, 308, 123, 310, 311, -1, -1, 287, 272, 273,
765 274, 275, -1, 257, 258, 259, 260, 261, -1, 263,
766 264, 265, -1, 93, 41, 269, 306, 44, -1, 309,
767 -1, 295, 312, 313, 314, -1, 280, -1, 282, 283,
768 284, 58, 59, -1, -1, 289, 290, 291, 292, 293,
769 294, -1, -1, 297, 298, -1, -1, -1, -1, -1,
770 304, -1, -1, -1, 308, 33, 310, 311, 36, 37,
771 38, -1, 40, -1, 42, 43, 93, 45, -1, -1,
772 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
773 272, 273, 274, 275, -1, -1, 64, -1, -1, 281,
774 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
775 -1, -1, -1, 295, 296, -1, -1, 299, 300, 301,
776 302, 33, -1, 91, 36, 37, 38, -1, 40, 41,
777 42, 43, -1, 45, -1, -1, -1, -1, 272, 273,
778 274, 275, -1, -1, -1, -1, 272, 273, 274, 275,
779 -1, -1, 64, -1, -1, 123, -1, -1, 126, -1,
780 -1, 295, 296, -1, -1, -1, 287, 288, -1, 295,
781 296, -1, -1, 299, -1, -1, -1, 33, -1, 91,
782 36, 37, 38, -1, 40, 306, 42, 43, 309, 45,
783 -1, 312, 313, 314, -1, -1, -1, -1, -1, -1,
784 -1, -1, 272, 273, 274, 275, -1, -1, 64, -1,
785 -1, 281, -1, -1, 126, 285, 286, -1, -1, -1,
786 -1, -1, -1, -1, -1, 295, 296, -1, -1, 299,
787 300, 301, 302, 303, -1, 91, -1, 93, -1, -1,
788 33, -1, -1, 36, 37, 38, -1, 40, 41, 42,
789 43, -1, 45, -1, -1, 272, 273, 274, 275, -1,
790 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
791 126, 64, -1, -1, -1, -1, -1, -1, 295, 296,
792 -1, -1, -1, -1, -1, -1, -1, -1, -1, 257,
793 258, 259, 260, 261, -1, 263, 264, 265, 91, -1,
794 -1, 269, 41, -1, -1, 44, -1, -1, -1, -1,
795 41, -1, 280, 44, 282, 283, 284, -1, -1, 58,
796 59, 289, 290, 291, 292, 293, 294, 58, 59, 297,
797 298, -1, 63, 126, -1, -1, 304, -1, -1, -1,
798 308, -1, 310, 311, -1, 257, 258, 259, 260, 261,
799 -1, 263, 264, 265, 93, -1, -1, 269, -1, -1,
800 -1, -1, 93, -1, -1, -1, 41, -1, 280, 44,
801 282, 283, 284, -1, -1, -1, -1, 289, 290, 291,
802 292, 293, 294, 58, 59, 297, 298, -1, 63, -1,
803 -1, -1, 304, -1, -1, -1, 308, -1, 310, 311,
804 -1, 257, 258, 259, 260, 261, -1, 263, 264, 265,
805 -1, -1, -1, 269, -1, -1, -1, -1, 93, -1,
806 -1, -1, 41, -1, 280, 44, 282, 283, 284, -1,
807 -1, -1, -1, 289, 290, 291, 292, 293, 294, 58,
808 59, 297, 298, -1, 63, -1, -1, -1, 304, -1,
809 -1, -1, 308, -1, 310, 311, -1, -1, -1, -1,
810 -1, -1, -1, -1, 257, 258, 259, 260, 261, -1,
811 263, 264, 265, -1, 93, -1, 269, -1, -1, -1,
812 -1, -1, -1, -1, -1, -1, 63, 280, -1, 282,
813 283, 284, -1, -1, -1, -1, 289, 290, 291, 292,
814 293, 294, -1, -1, 297, 298, -1, -1, -1, -1,
815 -1, 304, -1, -1, 91, 308, 33, 310, 311, 36,
816 37, 38, -1, 40, 41, 42, 43, -1, 45, -1,
817 -1, -1, -1, 272, 273, 274, 275, -1, -1, -1,
818 -1, 272, 273, 274, 275, -1, 123, 64, -1, -1,
819 281, -1, -1, -1, -1, -1, 295, 296, -1, -1,
820 -1, -1, -1, -1, 295, 296, -1, -1, 299, 300,
821 301, -1, 33, -1, 91, 36, 37, 38, -1, 40,
822 -1, 42, 43, -1, 45, -1, -1, -1, -1, -1,
823 -1, -1, -1, -1, -1, -1, -1, 272, 273, 274,
824 275, -1, -1, 64, -1, -1, 281, -1, -1, 126,
825 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
826 295, 296, -1, -1, 299, 300, -1, -1, 33, -1,
827 91, 36, 37, 38, -1, 40, 41, 42, 43, -1,
828 45, -1, -1, -1, -1, -1, -1, -1, -1, -1,
829 -1, -1, -1, 272, 273, 274, 275, -1, -1, 64,
830 -1, -1, 281, -1, -1, 126, 285, 286, -1, -1,
831 -1, -1, -1, -1, -1, -1, 295, 296, -1, -1,
832 299, 300, 301, 302, 303, -1, 91, -1, -1, -1,
833 -1, 33, -1, -1, 36, 37, 38, -1, 40, 41,
834 42, 43, -1, 45, 281, -1, -1, -1, 285, 286,
835 287, 288, -1, -1, -1, -1, -1, -1, -1, -1,
836 -1, 126, 64, 300, 301, 302, 303, -1, 305, 306,
837 -1, -1, 309, -1, -1, 312, 313, 314, -1, -1,
838 257, 258, 259, 260, 261, -1, 263, 264, 265, 91,
839 -1, -1, 269, -1, -1, -1, -1, -1, -1, -1,
840 -1, -1, -1, 280, -1, 282, 283, 284, 41, -1,
841 -1, 44, 289, 290, 291, 292, 293, 294, -1, -1,
842 297, 298, -1, -1, 126, 58, 59, 304, -1, -1,
843 63, 308, -1, 310, 311, 256, 257, 258, 259, 260,
844 261, -1, 263, 264, 265, -1, -1, -1, 269, -1,
845 -1, -1, -1, -1, -1, -1, -1, -1, -1, 280,
846 93, 282, 283, 284, -1, -1, -1, -1, 289, 290,
847 291, 292, 293, 294, -1, -1, 297, 298, -1, -1,
848 -1, -1, -1, 304, -1, -1, -1, 308, 41, 310,
849 311, 44, 257, 258, 259, 260, 261, -1, 263, 264,
850 265, -1, -1, -1, 269, 58, 59, -1, -1, -1,
851 63, -1, -1, -1, -1, 280, -1, 282, 283, 284,
852 -1, -1, -1, -1, 289, 290, 291, 292, 293, 294,
853 -1, -1, 297, 298, -1, -1, -1, -1, 91, 304,
854 93, -1, -1, 308, -1, 310, 311, 41, -1, -1,
855 44, -1, -1, -1, -1, 257, 258, 259, 260, 261,
856 -1, 263, 264, 265, 58, 59, -1, 269, -1, 63,
857 123, -1, -1, -1, -1, -1, -1, -1, 280, -1,
858 282, 283, 284, -1, -1, -1, -1, 289, 290, 291,
859 292, 293, 294, -1, -1, 297, 298, 91, -1, 93,
860 -1, -1, 304, -1, -1, -1, 308, 33, 310, 311,
861 36, 37, 38, -1, 40, -1, 42, 43, -1, 45,
862 -1, -1, -1, -1, -1, -1, -1, -1, -1, 123,
863 -1, -1, -1, -1, -1, -1, -1, -1, 64, 272,
864 273, 274, 275, -1, -1, -1, -1, -1, 281, -1,
865 -1, -1, 285, 286, -1, 41, -1, -1, 44, -1,
866 -1, -1, 295, 296, -1, 91, 299, 300, 301, 302,
867 303, -1, 58, 59, -1, -1, -1, 63, 25, 26,
868 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
869 37, -1, -1, -1, -1, 42, 43, -1, -1, -1,
870 126, 48, -1, 50, -1, 91, -1, 93, -1, -1,
871 -1, -1, -1, -1, -1, 62, 63, 64, 65, 272,
872 273, 274, 275, 41, -1, 91, 44, -1, 281, -1,
873 -1, -1, 285, 286, 287, 288, -1, 123, -1, -1,
874 58, 59, 295, 296, -1, 63, 299, 300, 301, 302,
875 303, -1, 305, 306, -1, -1, 309, 123, -1, 312,
876 313, 314, -1, 110, -1, -1, -1, -1, -1, -1,
877 -1, -1, -1, 91, -1, 93, -1, -1, 272, 273,
878 274, 275, -1, -1, -1, -1, -1, 281, -1, -1,
879 -1, 285, 286, 287, 288, -1, -1, -1, -1, -1,
880 -1, 295, 296, -1, 91, 299, 300, 301, 302, 303,
881 -1, 305, 306, -1, -1, 309, -1, -1, 312, 313,
882 314, -1, 169, 41, -1, -1, 44, -1, -1, -1,
883 -1, 257, 258, 259, 260, 261, 123, 263, 264, 265,
884 58, 59, -1, 269, -1, 63, -1, -1, -1, -1,
885 197, -1, -1, -1, 280, -1, 282, 283, 284, -1,
886 -1, -1, -1, 289, 290, 291, 292, 293, 294, -1,
887 -1, 297, 298, -1, -1, 93, -1, -1, 304, -1,
888 -1, -1, 308, -1, 310, 311, 272, 273, 274, 275,
889 41, -1, -1, 44, -1, 281, -1, -1, -1, 285,
890 286, 287, 288, -1, -1, 123, -1, 58, 59, 295,
891 296, -1, 63, 299, 300, 301, 302, 303, -1, 305,
892 306, 287, 288, 309, -1, -1, 312, 313, 314, -1,
893 -1, -1, -1, -1, -1, -1, -1, -1, -1, 305,
894 306, -1, 93, 309, -1, -1, 312, 313, 314, -1,
895 -1, -1, -1, -1, 272, 273, 274, 275, 41, -1,
896 -1, -1, -1, 281, -1, -1, -1, 285, 286, 287,
897 288, -1, 123, -1, -1, 58, 59, 295, 296, -1,
898 63, 299, 300, 301, 302, 303, -1, 305, 306, -1,
899 -1, 309, -1, -1, 312, 313, 314, -1, 285, 286,
900 287, 288, -1, -1, -1, -1, -1, -1, 91, -1,
901 93, -1, -1, 300, 301, 302, 303, -1, 305, 306,
902 -1, 41, 309, -1, -1, 312, 313, 314, -1, -1,
903 -1, -1, -1, -1, -1, -1, -1, -1, 58, 59,
904 123, -1, -1, 63, -1, -1, -1, -1, -1, -1,
905 -1, -1, -1, -1, 272, 273, 274, 275, -1, -1,
906 -1, -1, -1, 281, -1, -1, -1, 285, 286, 287,
907 288, 91, -1, 93, -1, -1, -1, 295, 296, -1,
908 -1, 299, 300, 301, 302, 303, -1, 305, 306, 41,
909 -1, 309, 44, -1, 312, 313, 314, -1, -1, -1,
910 -1, -1, -1, 123, -1, -1, 58, 59, -1, -1,
911 -1, 63, -1, -1, -1, -1, -1, -1, -1, -1,
912 -1, 272, 273, 274, 275, -1, -1, -1, -1, -1,
913 281, -1, -1, -1, 285, 286, 287, 288, -1, -1,
914 -1, 93, -1, -1, 295, 296, -1, -1, 299, 300,
915 301, 302, 303, -1, 305, 306, 41, -1, 309, 44,
916 -1, 312, 313, 314, -1, -1, -1, -1, -1, -1,
917 -1, 123, -1, 58, 59, -1, -1, -1, 63, -1,
918 -1, -1, -1, -1, -1, -1, -1, -1, -1, 272,
919 273, 274, 275, -1, -1, -1, -1, -1, 281, -1,
920 -1, -1, 285, 286, 287, 288, -1, -1, 93, -1,
921 -1, -1, 295, 296, -1, -1, 299, 300, 301, 302,
922 303, -1, 305, 306, -1, -1, 309, -1, -1, 312,
923 313, 314, -1, -1, -1, -1, -1, -1, 123, 91,
924 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
925 -1, -1, 272, 273, 274, 275, 41, -1, -1, -1,
926 -1, 281, -1, -1, -1, 285, 286, 287, 288, -1,
927 -1, 123, -1, 58, 59, 295, 296, -1, 63, 299,
928 300, 301, 302, 303, -1, 305, 306, -1, -1, 309,
929 -1, -1, 312, 313, 314, -1, -1, -1, -1, -1,
930 -1, -1, -1, -1, -1, -1, 91, -1, 93, -1,
931 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
932 272, 273, 274, 275, 41, -1, -1, 44, -1, 281,
933 -1, -1, -1, 285, 286, 287, 288, -1, 123, -1,
934 -1, 58, 59, 295, 296, -1, 63, 299, 300, 301,
935 302, 303, -1, 305, 306, -1, -1, 309, -1, -1,
936 312, 313, 314, -1, -1, -1, -1, -1, -1, -1,
937 -1, -1, -1, -1, -1, -1, 93, -1, -1, -1,
938 -1, -1, -1, -1, -1, -1, -1, 272, 273, 274,
939 275, 41, -1, -1, 44, -1, 281, -1, -1, -1,
940 285, 286, 287, 288, -1, -1, 123, -1, 58, 59,
941 295, 296, -1, 63, 299, 300, 301, 302, 303, -1,
942 305, 306, -1, -1, 309, -1, -1, 312, 313, 314,
943 -1, -1, -1, 285, 41, 287, 288, 44, -1, -1,
944 -1, -1, -1, 93, -1, -1, -1, -1, -1, -1,
945 -1, 58, 59, 305, 306, -1, 63, 309, -1, -1,
946 312, 313, 314, -1, -1, -1, -1, -1, -1, -1,
947 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
948 -1, -1, -1, -1, -1, -1, 93, 272, 273, 274,
949 275, 41, -1, -1, 44, -1, 281, -1, -1, -1,
950 285, 286, 287, 288, -1, -1, -1, -1, 58, 59,
951 295, 296, -1, 63, 299, 300, 301, 302, 303, -1,
952 305, 306, -1, -1, 309, -1, -1, 312, 313, 314,
953 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
954 -1, -1, -1, 93, -1, -1, -1, -1, -1, -1,
955 -1, -1, -1, -1, -1, 272, 273, 274, 275, 41,
956 -1, -1, 44, -1, 281, -1, -1, -1, 285, 286,
957 287, 288, -1, -1, -1, -1, 58, 59, 295, 296,
958 -1, 63, 299, 300, 301, 302, 303, -1, 305, 306,
959 -1, -1, 309, -1, -1, 312, 313, 314, -1, -1,
960 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
961 -1, 93, -1, -1, -1, -1, -1, -1, -1, -1,
962 -1, -1, 272, 273, 274, 275, -1, -1, -1, -1,
963 -1, 281, -1, -1, -1, 285, 286, 287, 288, -1,
964 -1, -1, -1, -1, -1, 295, 296, -1, -1, 299,
965 300, 301, 302, 303, -1, 305, 306, -1, -1, 309,
966 -1, -1, 312, 313, 314, 272, 273, 274, 275, 41,
967 -1, -1, 44, -1, 281, -1, -1, -1, 285, 286,
968 287, 288, -1, -1, -1, -1, 58, 59, 295, 296,
969 -1, 63, 299, 300, 301, 302, 303, -1, 305, 306,
970 -1, -1, 309, -1, -1, 312, 313, 314, -1, -1,
971 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
972 -1, 93, 272, 273, 274, 275, -1, -1, -1, -1,
973 -1, 281, -1, -1, -1, 285, 286, 287, 288, -1,
974 -1, -1, -1, -1, -1, 295, 296, -1, -1, 299,
975 300, 301, 302, 303, -1, 305, 306, 41, -1, 309,
976 44, -1, 312, 313, 314, -1, -1, -1, -1, -1,
977 -1, -1, -1, -1, 58, 59, -1, -1, -1, 63,
978 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
979 272, 273, 274, 275, -1, -1, -1, -1, -1, 281,
980 -1, -1, -1, 285, 286, 287, 288, -1, -1, 93,
981 -1, -1, -1, 295, 296, -1, -1, 299, 300, 301,
982 302, 303, -1, 305, 306, 30, -1, 309, -1, -1,
983 312, 313, 314, 38, -1, -1, -1, -1, 43, -1,
984 41, -1, -1, 44, -1, -1, 51, 52, 53, 54,
985 55, 56, -1, -1, 59, 60, -1, 58, 59, -1,
986 -1, 66, 63, -1, -1, -1, -1, -1, -1, -1,
987 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
988 -1, -1, -1, -1, -1, -1, -1, 92, 41, -1,
989 -1, 44, 93, -1, -1, -1, -1, -1, -1, -1,
990 272, 273, 274, 275, -1, 58, 59, -1, -1, 281,
991 63, -1, -1, 285, 286, 287, 288, -1, -1, -1,
992 -1, -1, -1, 295, 296, -1, -1, 299, 300, 301,
993 302, 303, -1, 305, 306, -1, -1, 309, -1, -1,
994 93, -1, -1, -1, -1, -1, -1, -1, 153, 154,
995 155, 156, 157, 158, 159, 160, 161, 162, 163, 164,
996 165, 166, 41, -1, -1, 44, -1, -1, -1, -1,
997 -1, -1, -1, 178, -1, -1, -1, -1, -1, 58,
998 59, -1, -1, -1, 63, -1, -1, -1, 272, 273,
999 274, 275, -1, -1, -1, -1, -1, 281, -1, -1,
1000 -1, 285, 286, 287, 288, -1, 41, -1, -1, 44,
1001 -1, 295, 296, -1, 93, 299, 300, 301, 302, 303,
1002 -1, 305, 306, 58, 59, -1, -1, -1, 63, -1,
1003 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1004 -1, -1, -1, -1, 41, -1, -1, 44, -1, -1,
1005 -1, -1, -1, 258, -1, -1, -1, -1, 93, -1,
1006 -1, 58, 59, -1, -1, -1, 63, -1, -1, -1,
1007 -1, 272, 273, 274, 275, -1, -1, -1, -1, -1,
1008 281, -1, -1, -1, 285, 286, 287, 288, -1, 41,
1009 295, -1, 44, -1, 295, 296, 93, -1, 299, 300,
1010 301, 302, 303, -1, 305, 306, 58, 59, -1, -1,
1011 -1, 63, -1, -1, -1, -1, -1, -1, -1, 272,
1012 273, 274, 275, -1, -1, -1, -1, -1, 281, -1,
1013 -1, -1, 285, 286, 287, 288, -1, 41, -1, -1,
1014 44, 93, 295, 296, 91, -1, 299, 300, 301, 302,
1015 303, -1, 305, 306, 58, 59, -1, -1, -1, 63,
1016 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1017 -1, -1, -1, -1, -1, -1, 123, -1, -1, -1,
1018 -1, 41, -1, -1, 44, -1, -1, -1, -1, 93,
1019 -1, -1, -1, 272, 273, 274, 275, 41, 58, 59,
1020 44, -1, 281, 63, -1, -1, 285, 286, 287, 288,
1021 -1, -1, -1, -1, 58, 59, 295, 296, -1, 63,
1022 299, 300, 301, 302, 303, -1, 305, 306, -1, -1,
1023 -1, -1, -1, 93, -1, -1, -1, 272, 273, 274,
1024 275, 41, -1, -1, 44, -1, 281, -1, -1, 93,
1025 285, 286, 287, 288, -1, -1, -1, -1, 58, 59,
1026 295, 296, -1, 63, 299, 300, 301, 302, 303, -1,
1027 305, 306, -1, -1, -1, 272, 273, 274, 275, -1,
1028 -1, 58, -1, -1, 281, -1, 63, -1, 285, 286,
1029 287, 288, -1, 93, -1, -1, -1, -1, 295, 296,
1030 -1, -1, 299, 300, 301, 302, 303, -1, 305, 306,
1031 -1, -1, -1, -1, 91, -1, -1, -1, -1, -1,
1032 272, 273, 274, 275, -1, -1, 63, -1, -1, 281,
1033 -1, -1, -1, 285, 286, 287, 288, -1, 285, 286,
1034 287, 288, -1, 295, 296, -1, 123, 299, 300, 301,
1035 302, 303, -1, 305, 91, 302, 303, -1, 305, 306,
1036 -1, -1, 309, -1, -1, 312, 313, 314, 272, 273,
1037 274, 275, -1, -1, -1, -1, -1, 281, -1, -1,
1038 -1, 285, 286, -1, 288, 91, 123, -1, -1, -1,
1039 -1, 295, 296, -1, -1, 299, 300, 301, 302, 303,
1040 -1, 305, -1, -1, -1, -1, -1, -1, -1, -1,
1041 -1, -1, 272, 273, 274, 275, -1, 123, -1, -1,
1042 -1, 281, -1, -1, -1, -1, 286, -1, 272, 273,
1043 274, 275, -1, -1, -1, 295, 296, 281, -1, 299,
1044 300, 301, 302, 303, -1, -1, -1, -1, -1, -1,
1045 -1, 295, 296, -1, -1, 299, 300, 301, 302, 303,
1046 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1047 -1, -1, 272, 273, 274, 275, -1, -1, -1, -1,
1048 -1, 281, -1, -1, -1, -1, -1, -1, -1, -1,
1049 -1, -1, -1, -1, -1, 295, 296, -1, -1, 299,
1050 300, 301, 302, 303, 281, -1, -1, -1, 285, 286,
1051 287, 288, -1, -1, -1, -1, -1, -1, -1, -1,
1052 -1, -1, 299, 300, 301, 302, 303, -1, 305, 306,
1053 -1, -1, 309, -1, -1, 312, 313, 314, -1, -1,
1054 -1, -1, -1, -1, 281, -1, -1, -1, 285, 286,
1055 287, 288, -1, -1, -1, -1, -1, -1, -1, -1,
1056 -1, -1, 299, 300, 301, 302, 303, -1, 305, 306,
1057 -1, -1, 309, -1, -1, 312, 313, 314, -1, 285,
1058 286, 287, 288, -1, -1, -1, -1, -1, -1, 13,
1059 -1, -1, -1, 17, -1, 301, 302, 303, -1, 305,
1060 306, -1, -1, 309, -1, -1, 312, 313, 314, 33,
1061 34, 35, 36, -1, -1, -1, -1, -1, -1, 43,
1062 -1, -1, -1, -1, -1, -1, -1, 51, -1, -1,
1063 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1064 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1065 -1, -1, -1, -1, -1, -1, 80, -1, -1, -1,
1066 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1067 94, -1, -1, 97, -1, 99, -1, 101, -1, 103,
1068 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1069 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1070 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1071 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1072 144, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1073 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1074 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1075 -1, -1, -1, -1, -1, -1, -1, 181, -1, -1,
1076 -1, -1, -1, -1, 188,
1082 #define YYMAXTOKEN 314
1085 "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,
1086 "'!'",0,0,"'$'","'%'","'&'",0,"'('","')'","'*'","'+'","','","'-'",0,0,0,0,0,0,0,
1087 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,
1088 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,
1089 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,
1090 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,
1091 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,
1092 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",
1093 "PMFUNC","PRIVATEREF","FUNC0SUB","UNIOPSUB","LSTOPSUB","LABEL","FORMAT","SUB",
1094 "ANONSUB","PACKAGE","USE","WHILE","UNTIL","IF","UNLESS","ELSE","ELSIF",
1095 "CONTINUE","FOR","LOOPEX","DOTDOT","FUNC0","FUNC1","FUNC","RELOP","EQOP",
1096 "MULOP","ADDOP","DOLSHARP","DO","HASHBRACK","NOAMP","LOCAL","MY","OROP","ANDOP",
1097 "NOTOP","LSTOP","ASSIGNOP","OROR","ANDAND","BITOROP","BITANDOP","UNIOP",
1098 "SHIFTOP","MATCHOP","UMINUS","REFGEN","POWOP","PREINC","PREDEC","POSTINC",
1104 "prog : $$1 lineseq",
1105 "block : '{' remember lineseq '}'",
1107 "mblock : '{' mremember lineseq '}'",
1110 "lineseq : lineseq decl",
1111 "lineseq : lineseq line",
1112 "line : label cond",
1115 "line : label sideff ';'",
1118 "sideff : expr IF expr",
1119 "sideff : expr UNLESS expr",
1120 "sideff : expr WHILE expr",
1121 "sideff : expr UNTIL iexpr",
1123 "else : ELSE mblock",
1124 "else : ELSIF '(' mexpr ')' mblock else",
1125 "cond : IF '(' remember mexpr ')' mblock else",
1126 "cond : UNLESS '(' remember miexpr ')' mblock else",
1127 "cond : IF block block else",
1128 "cond : UNLESS block block else",
1130 "cont : CONTINUE block",
1131 "loop : label WHILE '(' remember mtexpr ')' mblock cont",
1132 "loop : label UNTIL '(' remember miexpr ')' mblock cont",
1133 "loop : label WHILE block block cont",
1134 "loop : label UNTIL block block cont",
1135 "loop : label FOR MY remember my_scalar '(' mexpr ')' mblock cont",
1136 "loop : label FOR scalar '(' remember mexpr ')' mblock cont",
1137 "loop : label FOR '(' remember mexpr ')' mblock cont",
1138 "loop : label FOR '(' remember mnexpr ';' mtexpr ';' mnexpr ')' mblock",
1139 "loop : label block cont",
1155 "format : FORMAT startsub WORD block",
1156 "format : FORMAT startsub block",
1157 "subrout : SUB startsub WORD proto block",
1158 "subrout : SUB startsub WORD proto ';'",
1162 "package : PACKAGE WORD ';'",
1163 "package : PACKAGE ';'",
1164 "use : USE startsub WORD WORD listexpr ';'",
1165 "expr : expr ANDOP expr",
1166 "expr : expr OROP expr",
1168 "argexpr : argexpr ','",
1169 "argexpr : argexpr ',' term",
1171 "listop : LSTOP indirob argexpr",
1172 "listop : FUNC '(' indirob expr ')'",
1173 "listop : term ARROW method '(' listexprcom ')'",
1174 "listop : METHOD indirob listexpr",
1175 "listop : FUNCMETH indirob '(' listexprcom ')'",
1176 "listop : LSTOP listexpr",
1177 "listop : FUNC '(' listexprcom ')'",
1178 "listop : LSTOPSUB startsub block listexpr",
1181 "term : term ASSIGNOP term",
1182 "term : term POWOP term",
1183 "term : term MULOP term",
1184 "term : term ADDOP term",
1185 "term : term SHIFTOP term",
1186 "term : term RELOP term",
1187 "term : term EQOP term",
1188 "term : term BITANDOP term",
1189 "term : term BITOROP term",
1190 "term : term DOTDOT term",
1191 "term : term ANDAND term",
1192 "term : term OROR term",
1193 "term : term '?' term ':' term",
1194 "term : term MATCHOP term",
1199 "term : REFGEN term",
1200 "term : term POSTINC",
1201 "term : term POSTDEC",
1202 "term : PREINC term",
1203 "term : PREDEC term",
1204 "term : local term",
1205 "term : '(' expr ')'",
1207 "term : '[' expr ']'",
1209 "term : HASHBRACK expr ';' '}'",
1210 "term : HASHBRACK ';' '}'",
1211 "term : ANONSUB startsub proto block",
1213 "term : star '{' expr ';' '}'",
1215 "term : scalar '[' expr ']'",
1216 "term : term ARROW '[' expr ']'",
1217 "term : term '[' expr ']'",
1221 "term : scalar '{' expr ';' '}'",
1222 "term : term ARROW '{' expr ';' '}'",
1223 "term : term '{' expr ';' '}'",
1224 "term : '(' expr ')' '[' expr ']'",
1225 "term : '(' ')' '[' expr ']'",
1226 "term : ary '[' expr ']'",
1227 "term : ary '{' expr ';' '}'",
1230 "term : amper '(' ')'",
1231 "term : amper '(' expr ')'",
1232 "term : NOAMP WORD listexpr",
1235 "term : DO WORD '(' ')'",
1236 "term : DO WORD '(' expr ')'",
1237 "term : DO scalar '(' ')'",
1238 "term : DO scalar '(' expr ')'",
1240 "term : LOOPEX term",
1241 "term : NOTOP argexpr",
1243 "term : UNIOP block",
1244 "term : UNIOP term",
1245 "term : UNIOPSUB term",
1247 "term : FUNC0 '(' ')'",
1249 "term : FUNC1 '(' ')'",
1250 "term : FUNC1 '(' expr ')'",
1251 "term : PMFUNC '(' term ')'",
1252 "term : PMFUNC '(' term ',' term ')'",
1256 "listexpr : argexpr",
1258 "listexprcom : expr",
1259 "listexprcom : expr ','",
1262 "my_scalar : scalar",
1263 "amper : '&' indirob",
1264 "scalar : '$' indirob",
1265 "ary : '@' indirob",
1266 "hsh : '%' indirob",
1267 "arylen : DOLSHARP indirob",
1268 "star : '*' indirob",
1272 "indirob : PRIVATEREF",
1275 #define yyclearin (yychar=(-1))
1276 #define yyerrok (yyerrflag=0)
1279 #define YYMAXDEPTH YYSTACKSIZE
1283 #define YYSTACKSIZE YYMAXDEPTH
1285 #define YYSTACKSIZE 500
1286 #define YYMAXDEPTH 500
1297 #line 1369 "perly.c"
1298 #define YYABORT goto yyabort
1299 #define YYACCEPT goto yyaccept
1300 #define YYERROR goto yyerrlab
1317 struct ysv* ysave = (struct ysv*)ptr;
1318 if (ysave->yyss) Safefree(ysave->yyss);
1319 if (ysave->yyvs) Safefree(ysave->yyvs);
1320 yydebug = ysave->oldyydebug;
1321 yynerrs = ysave->oldyynerrs;
1322 yyerrflag = ysave->oldyyerrflag;
1323 yychar = ysave->oldyychar;
1324 yyval = ysave->oldyyval;
1325 yylval = ysave->oldyylval;
1332 register int yym, yyn, yystate;
1333 register short *yyssp;
1334 register YYSTYPE *yyvsp;
1337 unsigned yystacksize = YYSTACKSIZE;
1341 extern char *getenv();
1344 struct ysv *ysave = (struct ysv*)safemalloc(sizeof(struct ysv));
1345 SAVEDESTRUCTOR(yydestruct, ysave);
1346 ysave->oldyydebug = yydebug;
1347 ysave->oldyynerrs = yynerrs;
1348 ysave->oldyyerrflag = yyerrflag;
1349 ysave->oldyychar = yychar;
1350 ysave->oldyyval = yyval;
1351 ysave->oldyylval = yylval;
1354 if (yys = getenv("YYDEBUG"))
1357 if (yyn >= '0' && yyn <= '9')
1358 yydebug = yyn - '0';
1367 ** Initialize private stacks (yyparse may be called from an action)
1369 ysave->yyss = yyss = (short*)safemalloc(yystacksize*sizeof(short));
1370 ysave->yyvs = yyvs = (YYSTYPE*)safemalloc(yystacksize*sizeof(YYSTYPE));
1376 *yyssp = yystate = 0;
1379 if (yyn = yydefred[yystate]) goto yyreduce;
1382 if ((yychar = yylex()) < 0) yychar = 0;
1387 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
1388 if (!yys) yys = "illegal-symbol";
1389 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reading %d (%s)\n", yystate,
1394 if ((yyn = yysindex[yystate]) && (yyn += yychar) >= 0 &&
1395 yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
1399 PerlIO_printf(Perl_debug_log, "yydebug: state %d, shifting to state %d\n",
1400 yystate, yytable[yyn]);
1402 if (yyssp >= yyss + yystacksize - 1)
1405 ** reallocate and recover. Note that pointers
1406 ** have to be reset, or bad things will happen
1408 int yyps_index = (yyssp - yyss);
1409 int yypv_index = (yyvsp - yyvs);
1410 yystacksize += YYSTACKSIZE;
1411 ysave->yyvs = yyvs =
1412 (YYSTYPE*)realloc((char*)yyvs,yystacksize * sizeof(YYSTYPE));
1413 ysave->yyss = yyss =
1414 (short*)realloc((char*)yyss,yystacksize * sizeof(short));
1417 yyssp = yyss + yyps_index;
1418 yyvsp = yyvs + yypv_index;
1420 *++yyssp = yystate = yytable[yyn];
1423 if (yyerrflag > 0) --yyerrflag;
1426 if ((yyn = yyrindex[yystate]) && (yyn += yychar) >= 0 &&
1427 yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
1432 if (yyerrflag) goto yyinrecovery;
1437 yyerror("syntax error");
1449 if ((yyn = yysindex[*yyssp]) && (yyn += YYERRCODE) >= 0 &&
1450 yyn <= YYTABLESIZE && yycheck[yyn] == YYERRCODE)
1454 PerlIO_printf(Perl_debug_log,
1455 "yydebug: state %d, error recovery shifting to state %d\n",
1456 *yyssp, yytable[yyn]);
1458 if (yyssp >= yyss + yystacksize - 1)
1461 ** reallocate and recover. Note that pointers
1462 ** have to be reset, or bad things will happen
1464 int yyps_index = (yyssp - yyss);
1465 int yypv_index = (yyvsp - yyvs);
1466 yystacksize += YYSTACKSIZE;
1467 ysave->yyvs = yyvs = (YYSTYPE*)realloc((char*)yyvs,
1468 yystacksize * sizeof(YYSTYPE));
1469 ysave->yyss = yyss = (short*)realloc((char*)yyss,
1470 yystacksize * sizeof(short));
1473 yyssp = yyss + yyps_index;
1474 yyvsp = yyvs + yypv_index;
1476 *++yyssp = yystate = yytable[yyn];
1484 PerlIO_printf(Perl_debug_log,
1485 "yydebug: error recovery discarding state %d\n",
1488 if (yyssp <= yyss) goto yyabort;
1496 if (yychar == 0) goto yyabort;
1501 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
1502 if (!yys) yys = "illegal-symbol";
1503 PerlIO_printf(Perl_debug_log,
1504 "yydebug: state %d, error recovery discards token %d (%s)\n",
1505 yystate, yychar, yys);
1514 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reducing by rule %d (%s)\n",
1515 yystate, yyn, yyrule[yyn]);
1518 yyval = yyvsp[1-yym];
1524 #if defined(YYDEBUG) && defined(DEBUGGING)
1525 yydebug = (debug & 1);
1532 { newPROG(yyvsp[0].opval); }
1536 { yyval.opval = block_end(yyvsp[-3].ival,yyvsp[-2].ival,yyvsp[-1].opval); }
1540 { yyval.ival = block_start(TRUE); }
1544 { yyval.opval = block_end(yyvsp[-3].ival,yyvsp[-2].ival,yyvsp[-1].opval); }
1548 { yyval.ival = block_start(FALSE); }
1552 { yyval.opval = Nullop; }
1556 { yyval.opval = yyvsp[-1].opval; }
1560 { yyval.opval = append_list(OP_LINESEQ,
1561 (LISTOP*)yyvsp[-1].opval, (LISTOP*)yyvsp[0].opval);
1562 pad_reset_pending = TRUE;
1563 if (yyvsp[-1].opval && yyvsp[0].opval) hints |= HINT_BLOCK_SCOPE; }
1567 { yyval.opval = newSTATEOP(0, yyvsp[-1].pval, yyvsp[0].opval); }
1571 { if (yyvsp[-1].pval != Nullch) {
1572 yyval.opval = newSTATEOP(0, yyvsp[-1].pval, newOP(OP_NULL, 0));
1575 yyval.opval = Nullop;
1582 { yyval.opval = newSTATEOP(0, yyvsp[-2].pval, yyvsp[-1].opval);
1587 { yyval.opval = Nullop; }
1591 { yyval.opval = yyvsp[0].opval; }
1595 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[0].opval, yyvsp[-2].opval); }
1599 { yyval.opval = newLOGOP(OP_OR, 0, yyvsp[0].opval, yyvsp[-2].opval); }
1603 { yyval.opval = newLOOPOP(OPf_PARENS, 1, scalar(yyvsp[0].opval), yyvsp[-2].opval); }
1607 { yyval.opval = newLOOPOP(OPf_PARENS, 1, yyvsp[0].opval, yyvsp[-2].opval);}
1611 { yyval.opval = Nullop; }
1615 { yyval.opval = scope(yyvsp[0].opval); }
1619 { copline = yyvsp[-5].ival;
1620 yyval.opval = newSTATEOP(0, Nullch,
1621 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval));
1622 hints |= HINT_BLOCK_SCOPE; }
1626 { copline = yyvsp[-6].ival;
1627 yyval.opval = block_end(yyvsp[-6].ival, yyvsp[-4].ival,
1628 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval)); }
1632 { copline = yyvsp[-6].ival;
1633 yyval.opval = block_end(yyvsp[-6].ival, yyvsp[-4].ival,
1634 newCONDOP(0, yyvsp[-3].opval, scope(yyvsp[-1].opval), yyvsp[0].opval)); }
1638 { copline = yyvsp[-3].ival;
1639 deprecate("if BLOCK BLOCK");
1640 yyval.opval = newCONDOP(0, scope(yyvsp[-2].opval), scope(yyvsp[-1].opval), yyvsp[0].opval); }
1644 { copline = yyvsp[-3].ival;
1645 deprecate("unless BLOCK BLOCK");
1646 yyval.opval = newCONDOP(0, invert(scalar(scope(yyvsp[-2].opval))),
1647 scope(yyvsp[-1].opval), yyvsp[0].opval); }
1651 { yyval.opval = Nullop; }
1655 { yyval.opval = scope(yyvsp[0].opval); }
1659 { copline = yyvsp[-6].ival;
1660 yyval.opval = block_end(yyvsp[-6].ival, yyvsp[-4].ival,
1661 newSTATEOP(0, yyvsp[-7].pval,
1662 newWHILEOP(0, 1, (LOOP*)Nullop,
1663 yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval))); }
1667 { copline = yyvsp[-6].ival;
1668 yyval.opval = block_end(yyvsp[-6].ival, yyvsp[-4].ival,
1669 newSTATEOP(0, yyvsp[-7].pval,
1670 newWHILEOP(0, 1, (LOOP*)Nullop,
1671 yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval))); }
1675 { copline = yyvsp[-3].ival;
1676 yyval.opval = newWHILEOP(0, 1, (LOOP*)Nullop,
1677 scope(yyvsp[-2].opval), yyvsp[-1].opval, yyvsp[0].opval); }
1681 { copline = yyvsp[-3].ival;
1682 yyval.opval = newWHILEOP(0, 1, (LOOP*)Nullop,
1683 invert(scalar(scope(yyvsp[-2].opval))),
1684 yyvsp[-1].opval, yyvsp[0].opval); }
1688 { yyval.opval = block_end(yyvsp[-8].ival, yyvsp[-6].ival,
1689 newFOROP(0, yyvsp[-9].pval, yyvsp[-8].ival, yyvsp[-5].opval, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1693 { yyval.opval = block_end(yyvsp[-7].ival, yyvsp[-4].ival,
1694 newFOROP(0, yyvsp[-8].pval, yyvsp[-7].ival, mod(yyvsp[-6].opval, OP_ENTERLOOP),
1695 yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1699 { yyval.opval = block_end(yyvsp[-6].ival, yyvsp[-4].ival,
1700 newFOROP(0, yyvsp[-7].pval, yyvsp[-6].ival, Nullop, yyvsp[-3].opval, yyvsp[-1].opval, yyvsp[0].opval)); }
1704 { copline = yyvsp[-9].ival;
1705 yyval.opval = block_end(yyvsp[-9].ival, yyvsp[-7].ival,
1706 append_elem(OP_LINESEQ, scalar(yyvsp[-6].opval),
1707 newSTATEOP(0, yyvsp[-10].pval,
1708 newWHILEOP(0, 1, (LOOP*)Nullop,
1709 scalar(yyvsp[-4].opval),
1710 yyvsp[0].opval, scalar(yyvsp[-2].opval))))); }
1714 { yyval.opval = newSTATEOP(0,
1715 yyvsp[-2].pval, newWHILEOP(0, 1, (LOOP*)Nullop,
1716 Nullop, yyvsp[-1].opval, yyvsp[0].opval)); }
1720 { yyval.opval = Nullop; }
1724 { (void)scan_num("1"); yyval.opval = yylval.opval; }
1728 { yyval.opval = invert(scalar(yyvsp[0].opval)); }
1732 { yyval.opval = yyvsp[0].opval; intro_my(); }
1736 { yyval.opval = yyvsp[0].opval; intro_my(); }
1740 { yyval.opval = yyvsp[0].opval; intro_my(); }
1744 { yyval.opval = yyvsp[0].opval; intro_my(); }
1748 { yyval.pval = Nullch; }
1768 { newFORM(yyvsp[-2].ival, yyvsp[-1].opval, yyvsp[0].opval); }
1772 { newFORM(yyvsp[-1].ival, Nullop, yyvsp[0].opval); }
1776 { newSUB(yyvsp[-3].ival, yyvsp[-2].opval, yyvsp[-1].opval, yyvsp[0].opval); }
1780 { newSUB(yyvsp[-3].ival, yyvsp[-2].opval, yyvsp[-1].opval, Nullop); expect = XSTATE; }
1784 { yyval.opval = Nullop; }
1788 { yyval.ival = start_subparse(); }
1792 { package(yyvsp[-1].opval); }
1796 { package(Nullop); }
1800 { utilize(yyvsp[-5].ival, yyvsp[-4].ival, yyvsp[-3].opval, yyvsp[-2].opval, yyvsp[-1].opval); }
1804 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1808 { yyval.opval = newLOGOP(yyvsp[-1].ival, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1812 { yyval.opval = yyvsp[-1].opval; }
1816 { yyval.opval = append_elem(OP_LIST, yyvsp[-2].opval, yyvsp[0].opval); }
1820 { yyval.opval = convert(yyvsp[-2].ival, OPf_STACKED,
1821 prepend_elem(OP_LIST, newGVREF(yyvsp[-2].ival,yyvsp[-1].opval), yyvsp[0].opval) ); }
1825 { yyval.opval = convert(yyvsp[-4].ival, OPf_STACKED,
1826 prepend_elem(OP_LIST, newGVREF(yyvsp[-4].ival,yyvsp[-2].opval), yyvsp[-1].opval) ); }
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))); }
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))); }
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))); }
1851 { yyval.opval = convert(yyvsp[-1].ival, 0, yyvsp[0].opval); }
1855 { yyval.opval = convert(yyvsp[-3].ival, 0, yyvsp[-1].opval); }
1859 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
1860 append_elem(OP_LIST,
1861 prepend_elem(OP_LIST, newANONSUB(yyvsp[-2].ival, 0, yyvsp[-1].opval), yyvsp[0].opval),
1862 yyvsp[-3].opval)); }
1866 { yyval.opval = newASSIGNOP(OPf_STACKED, yyvsp[-2].opval, yyvsp[-1].ival, yyvsp[0].opval); }
1870 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1874 { if (yyvsp[-1].ival != OP_REPEAT)
1875 scalar(yyvsp[-2].opval);
1876 yyval.opval = newBINOP(yyvsp[-1].ival, 0, yyvsp[-2].opval, scalar(yyvsp[0].opval)); }
1880 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1884 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1888 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1892 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1896 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1900 { yyval.opval = newBINOP(yyvsp[-1].ival, 0, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval)); }
1904 { yyval.opval = newRANGE(yyvsp[-1].ival, scalar(yyvsp[-2].opval), scalar(yyvsp[0].opval));}
1908 { yyval.opval = newLOGOP(OP_AND, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1912 { yyval.opval = newLOGOP(OP_OR, 0, yyvsp[-2].opval, yyvsp[0].opval); }
1916 { yyval.opval = newCONDOP(0, yyvsp[-4].opval, yyvsp[-2].opval, yyvsp[0].opval); }
1920 { yyval.opval = bind_match(yyvsp[-1].ival, yyvsp[-2].opval, yyvsp[0].opval); }
1924 { yyval.opval = newUNOP(OP_NEGATE, 0, scalar(yyvsp[0].opval)); }
1928 { yyval.opval = yyvsp[0].opval; }
1932 { yyval.opval = newUNOP(OP_NOT, 0, scalar(yyvsp[0].opval)); }
1936 { yyval.opval = newUNOP(OP_COMPLEMENT, 0, scalar(yyvsp[0].opval));}
1940 { yyval.opval = newUNOP(OP_REFGEN, 0, mod(yyvsp[0].opval,OP_REFGEN)); }
1944 { yyval.opval = newUNOP(OP_POSTINC, 0,
1945 mod(scalar(yyvsp[-1].opval), OP_POSTINC)); }
1949 { yyval.opval = newUNOP(OP_POSTDEC, 0,
1950 mod(scalar(yyvsp[-1].opval), OP_POSTDEC)); }
1954 { yyval.opval = newUNOP(OP_PREINC, 0,
1955 mod(scalar(yyvsp[0].opval), OP_PREINC)); }
1959 { yyval.opval = newUNOP(OP_PREDEC, 0,
1960 mod(scalar(yyvsp[0].opval), OP_PREDEC)); }
1964 { yyval.opval = localize(yyvsp[0].opval,yyvsp[-1].ival); }
1968 { yyval.opval = sawparens(yyvsp[-1].opval); }
1972 { yyval.opval = sawparens(newNULLLIST()); }
1976 { yyval.opval = newANONLIST(yyvsp[-1].opval); }
1980 { yyval.opval = newANONLIST(Nullop); }
1984 { yyval.opval = newANONHASH(yyvsp[-2].opval); }
1988 { yyval.opval = newANONHASH(Nullop); }
1992 { yyval.opval = newANONSUB(yyvsp[-2].ival, yyvsp[-1].opval, yyvsp[0].opval); }
1996 { yyval.opval = yyvsp[0].opval; }
2000 { yyval.opval = newBINOP(OP_GELEM, 0, newGVREF(0,yyvsp[-4].opval), yyvsp[-2].opval); }
2004 { yyval.opval = yyvsp[0].opval; }
2008 { yyval.opval = newBINOP(OP_AELEM, 0, oopsAV(yyvsp[-3].opval), scalar(yyvsp[-1].opval)); }
2012 { yyval.opval = newBINOP(OP_AELEM, 0,
2013 ref(newAVREF(yyvsp[-4].opval),OP_RV2AV),
2014 scalar(yyvsp[-1].opval));}
2018 { assertref(yyvsp[-3].opval); yyval.opval = newBINOP(OP_AELEM, 0,
2019 ref(newAVREF(yyvsp[-3].opval),OP_RV2AV),
2020 scalar(yyvsp[-1].opval));}
2024 { yyval.opval = yyvsp[0].opval; }
2028 { yyval.opval = yyvsp[0].opval; }
2032 { yyval.opval = newUNOP(OP_AV2ARYLEN, 0, ref(yyvsp[0].opval, OP_AV2ARYLEN));}
2036 { yyval.opval = newBINOP(OP_HELEM, 0, oopsHV(yyvsp[-4].opval), jmaybe(yyvsp[-2].opval));
2037 expect = XOPERATOR; }
2041 { yyval.opval = newBINOP(OP_HELEM, 0,
2042 ref(newHVREF(yyvsp[-5].opval),OP_RV2HV),
2043 jmaybe(yyvsp[-2].opval));
2044 expect = XOPERATOR; }
2048 { assertref(yyvsp[-4].opval); yyval.opval = newBINOP(OP_HELEM, 0,
2049 ref(newHVREF(yyvsp[-4].opval),OP_RV2HV),
2050 jmaybe(yyvsp[-2].opval));
2051 expect = XOPERATOR; }
2055 { yyval.opval = newSLICEOP(0, yyvsp[-1].opval, yyvsp[-4].opval); }
2059 { yyval.opval = newSLICEOP(0, yyvsp[-1].opval, Nullop); }
2063 { yyval.opval = prepend_elem(OP_ASLICE,
2064 newOP(OP_PUSHMARK, 0),
2065 newLISTOP(OP_ASLICE, 0,
2066 list(yyvsp[-1].opval),
2067 ref(yyvsp[-3].opval, OP_ASLICE))); }
2071 { yyval.opval = prepend_elem(OP_HSLICE,
2072 newOP(OP_PUSHMARK, 0),
2073 newLISTOP(OP_HSLICE, 0,
2074 list(yyvsp[-2].opval),
2075 ref(oopsHV(yyvsp[-4].opval), OP_HSLICE)));
2076 expect = XOPERATOR; }
2080 { yyval.opval = yyvsp[0].opval; }
2084 { yyval.opval = newUNOP(OP_ENTERSUB, 0, scalar(yyvsp[0].opval)); }
2088 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED, scalar(yyvsp[-2].opval)); }
2092 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2093 append_elem(OP_LIST, yyvsp[-1].opval, scalar(yyvsp[-3].opval))); }
2097 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2098 append_elem(OP_LIST, yyvsp[0].opval, scalar(yyvsp[-1].opval))); }
2102 { yyval.opval = newUNOP(OP_DOFILE, 0, scalar(yyvsp[0].opval)); }
2106 { yyval.opval = newUNOP(OP_NULL, OPf_SPECIAL, scope(yyvsp[0].opval)); }
2110 { yyval.opval = newUNOP(OP_ENTERSUB,
2111 OPf_SPECIAL|OPf_STACKED,
2112 prepend_elem(OP_LIST,
2114 (OPpENTERSUB_AMPER<<8),
2115 scalar(yyvsp[-2].opval)
2116 )),Nullop)); dep();}
2120 { yyval.opval = newUNOP(OP_ENTERSUB,
2121 OPf_SPECIAL|OPf_STACKED,
2122 append_elem(OP_LIST,
2125 (OPpENTERSUB_AMPER<<8),
2126 scalar(yyvsp[-3].opval)
2131 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED,
2132 prepend_elem(OP_LIST,
2133 scalar(newCVREF(0,scalar(yyvsp[-2].opval))), Nullop)); dep();}
2137 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_SPECIAL|OPf_STACKED,
2138 prepend_elem(OP_LIST,
2140 scalar(newCVREF(0,scalar(yyvsp[-3].opval))))); dep();}
2144 { yyval.opval = newOP(yyvsp[0].ival, OPf_SPECIAL);
2145 hints |= HINT_BLOCK_SCOPE; }
2149 { yyval.opval = newLOOPEX(yyvsp[-1].ival,yyvsp[0].opval); }
2153 { yyval.opval = newUNOP(OP_NOT, 0, scalar(yyvsp[0].opval)); }
2157 { yyval.opval = newOP(yyvsp[0].ival, 0); }
2161 { yyval.opval = newUNOP(yyvsp[-1].ival, 0, yyvsp[0].opval); }
2165 { yyval.opval = newUNOP(yyvsp[-1].ival, 0, yyvsp[0].opval); }
2169 { yyval.opval = newUNOP(OP_ENTERSUB, OPf_STACKED,
2170 append_elem(OP_LIST, yyvsp[0].opval, scalar(yyvsp[-1].opval))); }
2174 { yyval.opval = newOP(yyvsp[0].ival, 0); }
2178 { yyval.opval = newOP(yyvsp[-2].ival, 0); }
2182 { yyval.opval = newUNOP(OP_ENTERSUB, 0,
2183 scalar(yyvsp[0].opval)); }
2187 { yyval.opval = newOP(yyvsp[-2].ival, OPf_SPECIAL); }
2191 { yyval.opval = newUNOP(yyvsp[-3].ival, 0, yyvsp[-1].opval); }
2195 { yyval.opval = pmruntime(yyvsp[-3].opval, yyvsp[-1].opval, Nullop); }
2199 { yyval.opval = pmruntime(yyvsp[-5].opval, yyvsp[-3].opval, yyvsp[-1].opval); }
2203 { yyval.opval = Nullop; }
2207 { yyval.opval = yyvsp[0].opval; }
2211 { yyval.opval = Nullop; }
2215 { yyval.opval = yyvsp[0].opval; }
2219 { yyval.opval = yyvsp[-1].opval; }
2231 { in_my = 0; yyval.opval = my(yyvsp[0].opval); }
2235 { yyval.opval = newCVREF(yyvsp[-1].ival,yyvsp[0].opval); }
2239 { yyval.opval = newSVREF(yyvsp[0].opval); }
2243 { yyval.opval = newAVREF(yyvsp[0].opval); }
2247 { yyval.opval = newHVREF(yyvsp[0].opval); }
2251 { yyval.opval = newAVREF(yyvsp[0].opval); }
2255 { yyval.opval = newGVREF(0,yyvsp[0].opval); }
2259 { yyval.opval = scalar(yyvsp[0].opval); }
2263 { yyval.opval = scalar(yyvsp[0].opval); }
2267 { yyval.opval = scope(yyvsp[0].opval); }
2271 { yyval.opval = yyvsp[0].opval; }
2273 #line 2261 "perly.c"
2279 if (yystate == 0 && yym == 0)
2283 PerlIO_printf(Perl_debug_log,
2284 "yydebug: after reduction, shifting from state 0 to state %d\n",
2292 if ((yychar = yylex()) < 0) yychar = 0;
2297 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
2298 if (!yys) yys = "illegal-symbol";
2299 PerlIO_printf(Perl_debug_log, "yydebug: state %d, reading %d (%s)\n",
2300 YYFINAL, yychar, yys);
2304 if (yychar == 0) goto yyaccept;
2307 if ((yyn = yygindex[yym]) && (yyn += yystate) >= 0 &&
2308 yyn <= YYTABLESIZE && yycheck[yyn] == yystate)
2309 yystate = yytable[yyn];
2311 yystate = yydgoto[yym];
2314 PerlIO_printf(Perl_debug_log,
2315 "yydebug: after reduction, shifting from state %d to state %d\n",
2318 if (yyssp >= yyss + yystacksize - 1)
2321 ** reallocate and recover. Note that pointers
2322 ** have to be reset, or bad things will happen
2324 int yyps_index = (yyssp - yyss);
2325 int yypv_index = (yyvsp - yyvs);
2326 yystacksize += YYSTACKSIZE;
2327 ysave->yyvs = yyvs =
2328 (YYSTYPE*)realloc((char*)yyvs,yystacksize * sizeof(YYSTYPE));
2329 ysave->yyss = yyss =
2330 (short*)realloc((char*)yyss,yystacksize * sizeof(short));
2333 yyssp = yyss + yyps_index;
2334 yyvsp = yyvs + yypv_index;
2340 yyerror("Out of memory for yacc stack");