1 : /* A Bison parser, made by GNU Bison 2.3. */
2 :
3 : /* Skeleton implementation for Bison's Yacc-like parsers in C
4 :
5 : Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006
6 : Free Software Foundation, Inc.
7 :
8 : This program is free software; you can redistribute it and/or modify
9 : it under the terms of the GNU General Public License as published by
10 : the Free Software Foundation; either version 2, or (at your option)
11 : any later version.
12 :
13 : This program is distributed in the hope that it will be useful,
14 : but WITHOUT ANY WARRANTY; without even the implied warranty of
15 : MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 : GNU General Public License for more details.
17 :
18 : You should have received a copy of the GNU General Public License
19 : along with this program; if not, write to the Free Software
20 : Foundation, Inc., 51 Franklin Street, Fifth Floor,
21 : Boston, MA 02110-1301, USA. */
22 :
23 : /* As a special exception, you may create a larger work that contains
24 : part or all of the Bison parser skeleton and distribute that work
25 : under terms of your choice, so long as that work isn't itself a
26 : parser generator using the skeleton or a modified version thereof
27 : as a parser skeleton. Alternatively, if you modify or redistribute
28 : the parser skeleton itself, you may (at your option) remove this
29 : special exception, which will cause the skeleton and the resulting
30 : Bison output files to be licensed under the GNU General Public
31 : License without this special exception.
32 :
33 : This special exception was added by the Free Software Foundation in
34 : version 2.2 of Bison. */
35 :
36 : /* C LALR(1) parser skeleton written by Richard Stallman, by
37 : simplifying the original so-called "semantic" parser. */
38 :
39 : /* All symbols defined below should begin with yy or YY, to avoid
40 : infringing on user name space. This should be done even for local
41 : variables, as they might otherwise be expanded by user macros.
42 : There are some unavoidable exceptions within include files to
43 : define necessary library symbols; they are noted "INFRINGES ON
44 : USER NAME SPACE" below. */
45 :
46 : /* Identify Bison output. */
47 : #define YYBISON 1
48 :
49 : /* Bison version. */
50 : #define YYBISON_VERSION "2.3"
51 :
52 : /* Skeleton name. */
53 : #define YYSKELETON_NAME "yacc.c"
54 :
55 : /* Pure parsers. */
56 : #define YYPURE 1
57 :
58 : /* Using locations. */
59 : #define YYLSP_NEEDED 0
60 :
61 : /* Substitute the variable and function names. */
62 : #define yyparse zendparse
63 : #define yylex zendlex
64 : #define yyerror zenderror
65 : #define yylval zendlval
66 : #define yychar zendchar
67 : #define yydebug zenddebug
68 : #define yynerrs zendnerrs
69 :
70 :
71 : /* Tokens. */
72 : #ifndef YYTOKENTYPE
73 : # define YYTOKENTYPE
74 : /* Put the tokens into the symbol table, so that GDB and other debuggers
75 : know about them. */
76 : enum yytokentype {
77 : T_REQUIRE_ONCE = 258,
78 : T_REQUIRE = 259,
79 : T_EVAL = 260,
80 : T_INCLUDE_ONCE = 261,
81 : T_INCLUDE = 262,
82 : T_LOGICAL_OR = 263,
83 : T_LOGICAL_XOR = 264,
84 : T_LOGICAL_AND = 265,
85 : T_PRINT = 266,
86 : T_SR_EQUAL = 267,
87 : T_SL_EQUAL = 268,
88 : T_XOR_EQUAL = 269,
89 : T_OR_EQUAL = 270,
90 : T_AND_EQUAL = 271,
91 : T_MOD_EQUAL = 272,
92 : T_CONCAT_EQUAL = 273,
93 : T_DIV_EQUAL = 274,
94 : T_MUL_EQUAL = 275,
95 : T_MINUS_EQUAL = 276,
96 : T_PLUS_EQUAL = 277,
97 : T_BOOLEAN_OR = 278,
98 : T_BOOLEAN_AND = 279,
99 : T_IS_NOT_IDENTICAL = 280,
100 : T_IS_IDENTICAL = 281,
101 : T_IS_NOT_EQUAL = 282,
102 : T_IS_EQUAL = 283,
103 : T_IS_GREATER_OR_EQUAL = 284,
104 : T_IS_SMALLER_OR_EQUAL = 285,
105 : T_SR = 286,
106 : T_SL = 287,
107 : T_INSTANCEOF = 288,
108 : T_UNSET_CAST = 289,
109 : T_BOOL_CAST = 290,
110 : T_OBJECT_CAST = 291,
111 : T_ARRAY_CAST = 292,
112 : T_STRING_CAST = 293,
113 : T_DOUBLE_CAST = 294,
114 : T_INT_CAST = 295,
115 : T_DEC = 296,
116 : T_INC = 297,
117 : T_CLONE = 298,
118 : T_NEW = 299,
119 : T_EXIT = 300,
120 : T_IF = 301,
121 : T_ELSEIF = 302,
122 : T_ELSE = 303,
123 : T_ENDIF = 304,
124 : T_LNUMBER = 305,
125 : T_DNUMBER = 306,
126 : T_STRING = 307,
127 : T_STRING_VARNAME = 308,
128 : T_VARIABLE = 309,
129 : T_NUM_STRING = 310,
130 : T_INLINE_HTML = 311,
131 : T_CHARACTER = 312,
132 : T_BAD_CHARACTER = 313,
133 : T_ENCAPSED_AND_WHITESPACE = 314,
134 : T_CONSTANT_ENCAPSED_STRING = 315,
135 : T_ECHO = 316,
136 : T_DO = 317,
137 : T_WHILE = 318,
138 : T_ENDWHILE = 319,
139 : T_FOR = 320,
140 : T_ENDFOR = 321,
141 : T_FOREACH = 322,
142 : T_ENDFOREACH = 323,
143 : T_DECLARE = 324,
144 : T_ENDDECLARE = 325,
145 : T_AS = 326,
146 : T_SWITCH = 327,
147 : T_ENDSWITCH = 328,
148 : T_CASE = 329,
149 : T_DEFAULT = 330,
150 : T_BREAK = 331,
151 : T_CONTINUE = 332,
152 : T_FUNCTION = 333,
153 : T_CONST = 334,
154 : T_RETURN = 335,
155 : T_TRY = 336,
156 : T_CATCH = 337,
157 : T_THROW = 338,
158 : T_USE = 339,
159 : T_GLOBAL = 340,
160 : T_PUBLIC = 341,
161 : T_PROTECTED = 342,
162 : T_PRIVATE = 343,
163 : T_FINAL = 344,
164 : T_ABSTRACT = 345,
165 : T_STATIC = 346,
166 : T_VAR = 347,
167 : T_UNSET = 348,
168 : T_ISSET = 349,
169 : T_EMPTY = 350,
170 : T_HALT_COMPILER = 351,
171 : T_CLASS = 352,
172 : T_INTERFACE = 353,
173 : T_EXTENDS = 354,
174 : T_IMPLEMENTS = 355,
175 : T_OBJECT_OPERATOR = 356,
176 : T_DOUBLE_ARROW = 357,
177 : T_LIST = 358,
178 : T_ARRAY = 359,
179 : T_CLASS_C = 360,
180 : T_METHOD_C = 361,
181 : T_FUNC_C = 362,
182 : T_LINE = 363,
183 : T_FILE = 364,
184 : T_COMMENT = 365,
185 : T_DOC_COMMENT = 366,
186 : T_OPEN_TAG = 367,
187 : T_OPEN_TAG_WITH_ECHO = 368,
188 : T_CLOSE_TAG = 369,
189 : T_WHITESPACE = 370,
190 : T_START_HEREDOC = 371,
191 : T_END_HEREDOC = 372,
192 : T_DOLLAR_OPEN_CURLY_BRACES = 373,
193 : T_CURLY_OPEN = 374,
194 : T_PAAMAYIM_NEKUDOTAYIM = 375
195 : };
196 : #endif
197 : /* Tokens. */
198 : #define T_REQUIRE_ONCE 258
199 : #define T_REQUIRE 259
200 : #define T_EVAL 260
201 : #define T_INCLUDE_ONCE 261
202 : #define T_INCLUDE 262
203 : #define T_LOGICAL_OR 263
204 : #define T_LOGICAL_XOR 264
205 : #define T_LOGICAL_AND 265
206 : #define T_PRINT 266
207 : #define T_SR_EQUAL 267
208 : #define T_SL_EQUAL 268
209 : #define T_XOR_EQUAL 269
210 : #define T_OR_EQUAL 270
211 : #define T_AND_EQUAL 271
212 : #define T_MOD_EQUAL 272
213 : #define T_CONCAT_EQUAL 273
214 : #define T_DIV_EQUAL 274
215 : #define T_MUL_EQUAL 275
216 : #define T_MINUS_EQUAL 276
217 : #define T_PLUS_EQUAL 277
218 : #define T_BOOLEAN_OR 278
219 : #define T_BOOLEAN_AND 279
220 : #define T_IS_NOT_IDENTICAL 280
221 : #define T_IS_IDENTICAL 281
222 : #define T_IS_NOT_EQUAL 282
223 : #define T_IS_EQUAL 283
224 : #define T_IS_GREATER_OR_EQUAL 284
225 : #define T_IS_SMALLER_OR_EQUAL 285
226 : #define T_SR 286
227 : #define T_SL 287
228 : #define T_INSTANCEOF 288
229 : #define T_UNSET_CAST 289
230 : #define T_BOOL_CAST 290
231 : #define T_OBJECT_CAST 291
232 : #define T_ARRAY_CAST 292
233 : #define T_STRING_CAST 293
234 : #define T_DOUBLE_CAST 294
235 : #define T_INT_CAST 295
236 : #define T_DEC 296
237 : #define T_INC 297
238 : #define T_CLONE 298
239 : #define T_NEW 299
240 : #define T_EXIT 300
241 : #define T_IF 301
242 : #define T_ELSEIF 302
243 : #define T_ELSE 303
244 : #define T_ENDIF 304
245 : #define T_LNUMBER 305
246 : #define T_DNUMBER 306
247 : #define T_STRING 307
248 : #define T_STRING_VARNAME 308
249 : #define T_VARIABLE 309
250 : #define T_NUM_STRING 310
251 : #define T_INLINE_HTML 311
252 : #define T_CHARACTER 312
253 : #define T_BAD_CHARACTER 313
254 : #define T_ENCAPSED_AND_WHITESPACE 314
255 : #define T_CONSTANT_ENCAPSED_STRING 315
256 : #define T_ECHO 316
257 : #define T_DO 317
258 : #define T_WHILE 318
259 : #define T_ENDWHILE 319
260 : #define T_FOR 320
261 : #define T_ENDFOR 321
262 : #define T_FOREACH 322
263 : #define T_ENDFOREACH 323
264 : #define T_DECLARE 324
265 : #define T_ENDDECLARE 325
266 : #define T_AS 326
267 : #define T_SWITCH 327
268 : #define T_ENDSWITCH 328
269 : #define T_CASE 329
270 : #define T_DEFAULT 330
271 : #define T_BREAK 331
272 : #define T_CONTINUE 332
273 : #define T_FUNCTION 333
274 : #define T_CONST 334
275 : #define T_RETURN 335
276 : #define T_TRY 336
277 : #define T_CATCH 337
278 : #define T_THROW 338
279 : #define T_USE 339
280 : #define T_GLOBAL 340
281 : #define T_PUBLIC 341
282 : #define T_PROTECTED 342
283 : #define T_PRIVATE 343
284 : #define T_FINAL 344
285 : #define T_ABSTRACT 345
286 : #define T_STATIC 346
287 : #define T_VAR 347
288 : #define T_UNSET 348
289 : #define T_ISSET 349
290 : #define T_EMPTY 350
291 : #define T_HALT_COMPILER 351
292 : #define T_CLASS 352
293 : #define T_INTERFACE 353
294 : #define T_EXTENDS 354
295 : #define T_IMPLEMENTS 355
296 : #define T_OBJECT_OPERATOR 356
297 : #define T_DOUBLE_ARROW 357
298 : #define T_LIST 358
299 : #define T_ARRAY 359
300 : #define T_CLASS_C 360
301 : #define T_METHOD_C 361
302 : #define T_FUNC_C 362
303 : #define T_LINE 363
304 : #define T_FILE 364
305 : #define T_COMMENT 365
306 : #define T_DOC_COMMENT 366
307 : #define T_OPEN_TAG 367
308 : #define T_OPEN_TAG_WITH_ECHO 368
309 : #define T_CLOSE_TAG 369
310 : #define T_WHITESPACE 370
311 : #define T_START_HEREDOC 371
312 : #define T_END_HEREDOC 372
313 : #define T_DOLLAR_OPEN_CURLY_BRACES 373
314 : #define T_CURLY_OPEN 374
315 : #define T_PAAMAYIM_NEKUDOTAYIM 375
316 :
317 :
318 :
319 :
320 : /* Copy the first part of user declarations. */
321 : #line 1 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
322 :
323 : /*
324 : +----------------------------------------------------------------------+
325 : | Zend Engine |
326 : +----------------------------------------------------------------------+
327 : | Copyright (c) 1998-2006 Zend Technologies Ltd. (http://www.zend.com) |
328 : +----------------------------------------------------------------------+
329 : | This source file is subject to version 2.00 of the Zend license, |
330 : | that is bundled with this package in the file LICENSE, and is |
331 : | available through the world-wide-web at the following url: |
332 : | http://www.zend.com/license/2_00.txt. |
333 : | If you did not receive a copy of the Zend license and are unable to |
334 : | obtain it through the world-wide-web, please send a note to |
335 : | license@zend.com so we can mail you a copy immediately. |
336 : +----------------------------------------------------------------------+
337 : | Authors: Andi Gutmans <andi@zend.com> |
338 : | Zeev Suraski <zeev@zend.com> |
339 : +----------------------------------------------------------------------+
340 : */
341 :
342 : /* $Id: zend_language_parser.y,v 1.160.2.4.2.4 2007/04/04 00:42:42 iliaa Exp $ */
343 :
344 : /*
345 : * LALR shift/reduce conflicts and how they are resolved:
346 : *
347 : * - 2 shift/reduce conflicts due to the dangeling elseif/else ambiguity. Solved by shift.
348 : * - 1 shift/reduce conflict due to arrays within encapsulated strings. Solved by shift.
349 : * - 1 shift/reduce conflict due to objects within encapsulated strings. Solved by shift.
350 : *
351 : */
352 :
353 :
354 : #include "zend_compile.h"
355 : #include "zend.h"
356 : #include "zend_list.h"
357 : #include "zend_globals.h"
358 : #include "zend_API.h"
359 : #include "zend_constants.h"
360 :
361 :
362 : #define YYERROR_VERBOSE
363 : #define YYSTYPE znode
364 : #ifdef ZTS
365 : # define YYPARSE_PARAM tsrm_ls
366 : # define YYLEX_PARAM tsrm_ls
367 : #endif
368 :
369 :
370 :
371 :
372 : /* Enabling traces. */
373 : #ifndef YYDEBUG
374 : # define YYDEBUG 0
375 : #endif
376 :
377 : /* Enabling verbose error messages. */
378 : #ifdef YYERROR_VERBOSE
379 : # undef YYERROR_VERBOSE
380 : # define YYERROR_VERBOSE 1
381 : #else
382 : # define YYERROR_VERBOSE 0
383 : #endif
384 :
385 : /* Enabling the token table. */
386 : #ifndef YYTOKEN_TABLE
387 : # define YYTOKEN_TABLE 0
388 : #endif
389 :
390 : #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
391 : typedef int YYSTYPE;
392 : # define yystype YYSTYPE /* obsolescent; will be withdrawn */
393 : # define YYSTYPE_IS_DECLARED 1
394 : # define YYSTYPE_IS_TRIVIAL 1
395 : #endif
396 :
397 :
398 :
399 : /* Copy the second part of user declarations. */
400 :
401 :
402 : /* Line 216 of yacc.c. */
403 : #line 404 "Zend/zend_language_parser.c"
404 :
405 : #ifdef short
406 : # undef short
407 : #endif
408 :
409 : #ifdef YYTYPE_UINT8
410 : typedef YYTYPE_UINT8 yytype_uint8;
411 : #else
412 : typedef unsigned char yytype_uint8;
413 : #endif
414 :
415 : #ifdef YYTYPE_INT8
416 : typedef YYTYPE_INT8 yytype_int8;
417 : #elif (defined __STDC__ || defined __C99__FUNC__ \
418 : || defined __cplusplus || defined _MSC_VER)
419 : typedef signed char yytype_int8;
420 : #else
421 : typedef short int yytype_int8;
422 : #endif
423 :
424 : #ifdef YYTYPE_UINT16
425 : typedef YYTYPE_UINT16 yytype_uint16;
426 : #else
427 : typedef unsigned short int yytype_uint16;
428 : #endif
429 :
430 : #ifdef YYTYPE_INT16
431 : typedef YYTYPE_INT16 yytype_int16;
432 : #else
433 : typedef short int yytype_int16;
434 : #endif
435 :
436 : #ifndef YYSIZE_T
437 : # ifdef __SIZE_TYPE__
438 : # define YYSIZE_T __SIZE_TYPE__
439 : # elif defined size_t
440 : # define YYSIZE_T size_t
441 : # elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \
442 : || defined __cplusplus || defined _MSC_VER)
443 : # include <stddef.h> /* INFRINGES ON USER NAME SPACE */
444 : # define YYSIZE_T size_t
445 : # else
446 : # define YYSIZE_T unsigned int
447 : # endif
448 : #endif
449 :
450 : #define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
451 :
452 : #ifndef YY_
453 : # if YYENABLE_NLS
454 : # if ENABLE_NLS
455 : # include <libintl.h> /* INFRINGES ON USER NAME SPACE */
456 : # define YY_(msgid) dgettext ("bison-runtime", msgid)
457 : # endif
458 : # endif
459 : # ifndef YY_
460 : # define YY_(msgid) msgid
461 : # endif
462 : #endif
463 :
464 : /* Suppress unused-variable warnings by "using" E. */
465 : #if ! defined lint || defined __GNUC__
466 : # define YYUSE(e) ((void) (e))
467 : #else
468 : # define YYUSE(e) /* empty */
469 : #endif
470 :
471 : /* Identity function, used to suppress warnings about constant conditions. */
472 : #ifndef lint
473 : # define YYID(n) (n)
474 : #else
475 : #if (defined __STDC__ || defined __C99__FUNC__ \
476 : || defined __cplusplus || defined _MSC_VER)
477 : static int
478 : YYID (int i)
479 : #else
480 : static int
481 : YYID (i)
482 : int i;
483 : #endif
484 : {
485 : return i;
486 : }
487 : #endif
488 :
489 : #if ! defined yyoverflow || YYERROR_VERBOSE
490 :
491 : /* The parser invokes alloca or malloc; define the necessary symbols. */
492 :
493 : # ifdef YYSTACK_USE_ALLOCA
494 : # if YYSTACK_USE_ALLOCA
495 : # ifdef __GNUC__
496 : # define YYSTACK_ALLOC __builtin_alloca
497 : # elif defined __BUILTIN_VA_ARG_INCR
498 : # include <alloca.h> /* INFRINGES ON USER NAME SPACE */
499 : # elif defined _AIX
500 : # define YYSTACK_ALLOC __alloca
501 : # elif defined _MSC_VER
502 : # include <malloc.h> /* INFRINGES ON USER NAME SPACE */
503 : # define alloca _alloca
504 : # else
505 : # define YYSTACK_ALLOC alloca
506 : # if ! defined _ALLOCA_H && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
507 : || defined __cplusplus || defined _MSC_VER)
508 : # include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
509 : # ifndef _STDLIB_H
510 : # define _STDLIB_H 1
511 : # endif
512 : # endif
513 : # endif
514 : # endif
515 : # endif
516 :
517 : # ifdef YYSTACK_ALLOC
518 : /* Pacify GCC's `empty if-body' warning. */
519 : # define YYSTACK_FREE(Ptr) do { /* empty */; } while (YYID (0))
520 : # ifndef YYSTACK_ALLOC_MAXIMUM
521 : /* The OS might guarantee only one guard page at the bottom of the stack,
522 : and a page size can be as small as 4096 bytes. So we cannot safely
523 : invoke alloca (N) if N exceeds 4096. Use a slightly smaller number
524 : to allow for a few compiler-allocated temporary stack slots. */
525 : # define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */
526 : # endif
527 : # else
528 : # define YYSTACK_ALLOC YYMALLOC
529 : # define YYSTACK_FREE YYFREE
530 : # ifndef YYSTACK_ALLOC_MAXIMUM
531 : # define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
532 : # endif
533 : # if (defined __cplusplus && ! defined _STDLIB_H \
534 : && ! ((defined YYMALLOC || defined malloc) \
535 : && (defined YYFREE || defined free)))
536 : # include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
537 : # ifndef _STDLIB_H
538 : # define _STDLIB_H 1
539 : # endif
540 : # endif
541 : # ifndef YYMALLOC
542 : # define YYMALLOC malloc
543 : # if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
544 : || defined __cplusplus || defined _MSC_VER)
545 : void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
546 : # endif
547 : # endif
548 : # ifndef YYFREE
549 : # define YYFREE free
550 : # if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
551 : || defined __cplusplus || defined _MSC_VER)
552 : void free (void *); /* INFRINGES ON USER NAME SPACE */
553 : # endif
554 : # endif
555 : # endif
556 : #endif /* ! defined yyoverflow || YYERROR_VERBOSE */
557 :
558 :
559 : #if (! defined yyoverflow \
560 : && (! defined __cplusplus \
561 : || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
562 :
563 : /* A type that is properly aligned for any stack member. */
564 : union yyalloc
565 : {
566 : yytype_int16 yyss;
567 : YYSTYPE yyvs;
568 : };
569 :
570 : /* The size of the maximum gap between one aligned stack and the next. */
571 : # define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
572 :
573 : /* The size of an array large to enough to hold all stacks, each with
574 : N elements. */
575 : # define YYSTACK_BYTES(N) \
576 : ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \
577 : + YYSTACK_GAP_MAXIMUM)
578 :
579 : /* Copy COUNT objects from FROM to TO. The source and destination do
580 : not overlap. */
581 : # ifndef YYCOPY
582 : # if defined __GNUC__ && 1 < __GNUC__
583 : # define YYCOPY(To, From, Count) \
584 : __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
585 : # else
586 : # define YYCOPY(To, From, Count) \
587 : do \
588 : { \
589 : YYSIZE_T yyi; \
590 : for (yyi = 0; yyi < (Count); yyi++) \
591 : (To)[yyi] = (From)[yyi]; \
592 : } \
593 : while (YYID (0))
594 : # endif
595 : # endif
596 :
597 : /* Relocate STACK from its old location to the new one. The
598 : local variables YYSIZE and YYSTACKSIZE give the old and new number of
599 : elements in the stack, and YYPTR gives the new location of the
600 : stack. Advance YYPTR to a properly aligned location for the next
601 : stack. */
602 : # define YYSTACK_RELOCATE(Stack) \
603 : do \
604 : { \
605 : YYSIZE_T yynewbytes; \
606 : YYCOPY (&yyptr->Stack, Stack, yysize); \
607 : Stack = &yyptr->Stack; \
608 : yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
609 : yyptr += yynewbytes / sizeof (*yyptr); \
610 : } \
611 : while (YYID (0))
612 :
613 : #endif
614 :
615 : /* YYFINAL -- State number of the termination state. */
616 : #define YYFINAL 3
617 : /* YYLAST -- Last index in YYTABLE. */
618 : #define YYLAST 4077
619 :
620 : /* YYNTOKENS -- Number of terminals. */
621 : #define YYNTOKENS 150
622 : /* YYNNTS -- Number of nonterminals. */
623 : #define YYNNTS 168
624 : /* YYNRULES -- Number of rules. */
625 : #define YYNRULES 422
626 : /* YYNRULES -- Number of states. */
627 : #define YYNSTATES 785
628 :
629 : /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */
630 : #define YYUNDEFTOK 2
631 : #define YYMAXUTOK 375
632 :
633 : #define YYTRANSLATE(YYX) \
634 : ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
635 :
636 : /* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX. */
637 : static const yytype_uint8 yytranslate[] =
638 : {
639 : 0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
640 : 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
641 : 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
642 : 2, 2, 2, 48, 147, 2, 145, 47, 31, 148,
643 : 140, 141, 45, 42, 8, 43, 44, 46, 2, 2,
644 : 2, 2, 2, 2, 2, 2, 2, 2, 26, 142,
645 : 36, 13, 37, 25, 51, 2, 2, 2, 2, 2,
646 : 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
647 : 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
648 : 2, 61, 2, 149, 30, 2, 146, 2, 2, 2,
649 : 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
650 : 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
651 : 2, 2, 2, 143, 29, 144, 50, 2, 2, 2,
652 : 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
653 : 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
654 : 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
655 : 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
656 : 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
657 : 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
658 : 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
659 : 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
660 : 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
661 : 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
662 : 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
663 : 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
664 : 2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
665 : 5, 6, 7, 9, 10, 11, 12, 14, 15, 16,
666 : 17, 18, 19, 20, 21, 22, 23, 24, 27, 28,
667 : 32, 33, 34, 35, 38, 39, 40, 41, 49, 52,
668 : 53, 54, 55, 56, 57, 58, 59, 60, 62, 63,
669 : 64, 65, 66, 67, 68, 69, 70, 71, 72, 73,
670 : 74, 75, 76, 77, 78, 79, 80, 81, 82, 83,
671 : 84, 85, 86, 87, 88, 89, 90, 91, 92, 93,
672 : 94, 95, 96, 97, 98, 99, 100, 101, 102, 103,
673 : 104, 105, 106, 107, 108, 109, 110, 111, 112, 113,
674 : 114, 115, 116, 117, 118, 119, 120, 121, 122, 123,
675 : 124, 125, 126, 127, 128, 129, 130, 131, 132, 133,
676 : 134, 135, 136, 137, 138, 139
677 : };
678 :
679 : #if YYDEBUG
680 : /* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in
681 : YYRHS. */
682 : static const yytype_uint16 yyprhs[] =
683 : {
684 : 0, 0, 3, 5, 6, 10, 11, 13, 15, 17,
685 : 22, 23, 27, 28, 30, 32, 34, 39, 41, 45,
686 : 46, 47, 57, 58, 59, 72, 73, 74, 82, 83,
687 : 84, 94, 95, 96, 97, 110, 111, 118, 121, 125,
688 : 128, 132, 135, 139, 143, 147, 151, 155, 157, 160,
689 : 164, 170, 171, 172, 183, 184, 185, 196, 197, 204,
690 : 206, 207, 208, 209, 210, 211, 230, 234, 236, 237,
691 : 239, 242, 243, 244, 255, 257, 261, 263, 265, 269,
692 : 271, 273, 274, 276, 277, 278, 290, 291, 300, 301,
693 : 309, 311, 314, 317, 318, 321, 323, 324, 327, 328,
694 : 331, 333, 337, 338, 341, 343, 346, 348, 353, 355,
695 : 360, 362, 367, 371, 377, 381, 386, 391, 397, 398,
696 : 399, 406, 407, 413, 415, 417, 419, 424, 425, 426,
697 : 434, 435, 436, 445, 446, 449, 450, 454, 456, 457,
698 : 460, 464, 470, 475, 480, 486, 494, 501, 502, 504,
699 : 506, 508, 509, 511, 513, 516, 520, 524, 529, 533,
700 : 535, 537, 540, 545, 549, 555, 557, 561, 564, 565,
701 : 566, 571, 574, 575, 576, 587, 589, 593, 595, 597,
702 : 598, 600, 602, 605, 607, 609, 611, 613, 615, 617,
703 : 621, 627, 629, 633, 639, 644, 648, 650, 651, 653,
704 : 654, 659, 661, 662, 670, 674, 679, 680, 688, 689,
705 : 694, 697, 701, 705, 709, 713, 717, 721, 725, 729,
706 : 733, 737, 741, 744, 747, 750, 753, 754, 759, 760,
707 : 765, 766, 771, 772, 777, 781, 785, 789, 793, 797,
708 : 801, 805, 809, 813, 817, 821, 825, 828, 831, 834,
709 : 837, 841, 845, 849, 853, 857, 861, 865, 869, 873,
710 : 877, 878, 879, 887, 889, 892, 895, 898, 901, 904,
711 : 907, 910, 913, 914, 918, 920, 925, 929, 932, 933,
712 : 939, 940, 948, 949, 957, 958, 964, 966, 968, 970,
713 : 971, 972, 979, 981, 984, 985, 988, 989, 992, 996,
714 : 997, 1001, 1003, 1005, 1007, 1009, 1011, 1013, 1015, 1017,
715 : 1019, 1021, 1024, 1027, 1032, 1034, 1038, 1040, 1042, 1044,
716 : 1046, 1050, 1054, 1058, 1059, 1062, 1063, 1065, 1071, 1075,
717 : 1079, 1081, 1083, 1085, 1087, 1088, 1091, 1092, 1095, 1096,
718 : 1097, 1105, 1107, 1110, 1111, 1112, 1117, 1118, 1123, 1124,
719 : 1126, 1129, 1133, 1135, 1137, 1139, 1142, 1144, 1149, 1154,
720 : 1156, 1158, 1163, 1164, 1166, 1168, 1169, 1172, 1177, 1182,
721 : 1184, 1186, 1190, 1192, 1195, 1199, 1201, 1203, 1204, 1210,
722 : 1211, 1212, 1215, 1221, 1225, 1229, 1231, 1238, 1243, 1248,
723 : 1251, 1254, 1257, 1260, 1263, 1266, 1269, 1272, 1275, 1278,
724 : 1281, 1284, 1285, 1287, 1288, 1294, 1298, 1302, 1309, 1313,
725 : 1315, 1317, 1319, 1324, 1329, 1332, 1335, 1340, 1343, 1346,
726 : 1348, 1349, 1354
727 : };
728 :
729 : /* YYRHS -- A `-1'-separated list of the rules' RHS. */
730 : static const yytype_int16 yyrhs[] =
731 : {
732 : 151, 0, -1, 152, -1, -1, 152, 153, 154, -1,
733 : -1, 158, -1, 190, -1, 191, -1, 115, 140, 141,
734 : 142, -1, -1, 155, 156, 157, -1, -1, 158, -1,
735 : 190, -1, 191, -1, 115, 140, 141, 142, -1, 159,
736 : -1, 143, 155, 144, -1, -1, -1, 65, 140, 279,
737 : 141, 160, 158, 161, 217, 221, -1, -1, -1, 65,
738 : 140, 279, 141, 26, 162, 155, 163, 219, 222, 68,
739 : 142, -1, -1, -1, 82, 140, 164, 279, 141, 165,
740 : 216, -1, -1, -1, 81, 166, 158, 82, 140, 167,
741 : 279, 141, 142, -1, -1, -1, -1, 84, 140, 244,
742 : 142, 168, 244, 142, 169, 244, 141, 170, 207, -1,
743 : -1, 91, 140, 279, 141, 171, 211, -1, 95, 142,
744 : -1, 95, 279, 142, -1, 96, 142, -1, 96, 279,
745 : 142, -1, 99, 142, -1, 99, 247, 142, -1, 99,
746 : 285, 142, -1, 104, 228, 142, -1, 110, 230, 142,
747 : -1, 80, 243, 142, -1, 75, -1, 279, 142, -1,
748 : 103, 189, 142, -1, 112, 140, 187, 141, 142, -1,
749 : -1, -1, 86, 140, 285, 90, 172, 206, 205, 141,
750 : 173, 208, -1, -1, -1, 86, 140, 247, 90, 174,
751 : 285, 205, 141, 175, 208, -1, -1, 88, 176, 140,
752 : 210, 141, 209, -1, 142, -1, -1, -1, -1, -1,
753 : -1, 100, 177, 143, 155, 144, 101, 140, 178, 263,
754 : 179, 73, 141, 180, 143, 155, 144, 181, 182, -1,
755 : 102, 279, 142, -1, 183, -1, -1, 184, -1, 183,
756 : 184, -1, -1, -1, 101, 140, 263, 185, 73, 141,
757 : 186, 143, 155, 144, -1, 188, -1, 187, 8, 188,
758 : -1, 285, -1, 79, -1, 140, 79, 141, -1, 193,
759 : -1, 196, -1, -1, 31, -1, -1, -1, 97, 194,
760 : 192, 71, 195, 140, 223, 141, 143, 155, 144, -1,
761 : -1, 199, 71, 200, 197, 203, 143, 231, 144, -1,
762 : -1, 201, 71, 198, 202, 143, 231, 144, -1, 116,
763 : -1, 109, 116, -1, 108, 116, -1, -1, 118, 263,
764 : -1, 117, -1, -1, 118, 204, -1, -1, 119, 204,
765 : -1, 263, -1, 204, 8, 263, -1, -1, 121, 206,
766 : -1, 285, -1, 31, 285, -1, 158, -1, 26, 155,
767 : 85, 142, -1, 158, -1, 26, 155, 87, 142, -1,
768 : 158, -1, 26, 155, 89, 142, -1, 71, 13, 273,
769 : -1, 210, 8, 71, 13, 273, -1, 143, 212, 144,
770 : -1, 143, 142, 212, 144, -1, 26, 212, 92, 142,
771 : -1, 26, 142, 212, 92, 142, -1, -1, -1, 212,
772 : 93, 279, 215, 213, 155, -1, -1, 212, 94, 215,
773 : 214, 155, -1, 26, -1, 142, -1, 158, -1, 26,
774 : 155, 83, 142, -1, -1, -1, 217, 66, 140, 279,
775 : 141, 218, 158, -1, -1, -1, 219, 66, 140, 279,
776 : 141, 26, 220, 155, -1, -1, 67, 158, -1, -1,
777 : 67, 26, 155, -1, 224, -1, -1, 225, 73, -1,
778 : 225, 31, 73, -1, 225, 31, 73, 13, 273, -1,
779 : 225, 73, 13, 273, -1, 224, 8, 225, 73, -1,
780 : 224, 8, 225, 31, 73, -1, 224, 8, 225, 31,
781 : 73, 13, 273, -1, 224, 8, 225, 73, 13, 273,
782 : -1, -1, 71, -1, 123, -1, 227, -1, -1, 247,
783 : -1, 285, -1, 31, 281, -1, 227, 8, 247, -1,
784 : 227, 8, 285, -1, 227, 8, 31, 281, -1, 228,
785 : 8, 229, -1, 229, -1, 73, -1, 145, 280, -1,
786 : 145, 143, 279, 144, -1, 230, 8, 73, -1, 230,
787 : 8, 73, 13, 273, -1, 73, -1, 73, 13, 273,
788 : -1, 231, 232, -1, -1, -1, 237, 233, 241, 142,
789 : -1, 242, 142, -1, -1, -1, 238, 97, 234, 192,
790 : 71, 235, 140, 223, 141, 236, -1, 142, -1, 143,
791 : 155, 144, -1, 239, -1, 111, -1, -1, 239, -1,
792 : 240, -1, 239, 240, -1, 105, -1, 106, -1, 107,
793 : -1, 110, -1, 109, -1, 108, -1, 241, 8, 73,
794 : -1, 241, 8, 73, 13, 273, -1, 73, -1, 73,
795 : 13, 273, -1, 242, 8, 71, 13, 273, -1, 98,
796 : 71, 13, 273, -1, 243, 8, 279, -1, 279, -1,
797 : -1, 245, -1, -1, 245, 8, 246, 279, -1, 279,
798 : -1, -1, 122, 140, 248, 305, 141, 13, 279, -1,
799 : 285, 13, 279, -1, 285, 13, 31, 285, -1, -1,
800 : 285, 13, 31, 63, 264, 249, 271, -1, -1, 63,
801 : 264, 250, 271, -1, 62, 279, -1, 285, 24, 279,
802 : -1, 285, 23, 279, -1, 285, 22, 279, -1, 285,
803 : 21, 279, -1, 285, 20, 279, -1, 285, 19, 279,
804 : -1, 285, 18, 279, -1, 285, 17, 279, -1, 285,
805 : 16, 279, -1, 285, 15, 279, -1, 285, 14, 279,
806 : -1, 283, 60, -1, 60, 283, -1, 283, 59, -1,
807 : 59, 283, -1, -1, 279, 27, 251, 279, -1, -1,
808 : 279, 28, 252, 279, -1, -1, 279, 9, 253, 279,
809 : -1, -1, 279, 11, 254, 279, -1, 279, 10, 279,
810 : -1, 279, 29, 279, -1, 279, 31, 279, -1, 279,
811 : 30, 279, -1, 279, 44, 279, -1, 279, 42, 279,
812 : -1, 279, 43, 279, -1, 279, 45, 279, -1, 279,
813 : 46, 279, -1, 279, 47, 279, -1, 279, 41, 279,
814 : -1, 279, 40, 279, -1, 42, 279, -1, 43, 279,
815 : -1, 48, 279, -1, 50, 279, -1, 279, 33, 279,
816 : -1, 279, 32, 279, -1, 279, 35, 279, -1, 279,
817 : 34, 279, -1, 279, 36, 279, -1, 279, 39, 279,
818 : -1, 279, 37, 279, -1, 279, 38, 279, -1, 279,
819 : 49, 264, -1, 140, 279, 141, -1, -1, -1, 279,
820 : 25, 255, 279, 26, 256, 279, -1, 314, -1, 58,
821 : 279, -1, 57, 279, -1, 56, 279, -1, 55, 279,
822 : -1, 54, 279, -1, 53, 279, -1, 52, 279, -1,
823 : 64, 270, -1, -1, 51, 257, 279, -1, 275, -1,
824 : 123, 140, 308, 141, -1, 146, 310, 146, -1, 12,
825 : 279, -1, -1, 71, 140, 259, 226, 141, -1, -1,
826 : 263, 139, 71, 140, 260, 226, 141, -1, -1, 263,
827 : 139, 293, 140, 261, 226, 141, -1, -1, 293, 140,
828 : 262, 226, 141, -1, 71, -1, 71, -1, 265, -1,
829 : -1, -1, 296, 120, 266, 300, 267, 268, -1, 296,
830 : -1, 268, 269, -1, -1, 120, 300, -1, -1, 140,
831 : 141, -1, 140, 279, 141, -1, -1, 140, 226, 141,
832 : -1, 69, -1, 70, -1, 79, -1, 127, -1, 128,
833 : -1, 124, -1, 125, -1, 126, -1, 272, -1, 71,
834 : -1, 42, 273, -1, 43, 273, -1, 123, 140, 276,
835 : 141, -1, 274, -1, 71, 139, 71, -1, 71, -1,
836 : 72, -1, 317, -1, 272, -1, 147, 310, 147, -1,
837 : 148, 310, 148, -1, 135, 310, 136, -1, -1, 278,
838 : 277, -1, -1, 8, -1, 278, 8, 273, 121, 273,
839 : -1, 278, 8, 273, -1, 273, 121, 273, -1, 273,
840 : -1, 280, -1, 247, -1, 285, -1, -1, 285, 282,
841 : -1, -1, 285, 284, -1, -1, -1, 295, 120, 286,
842 : 300, 287, 291, 288, -1, 295, -1, 288, 289, -1,
843 : -1, -1, 120, 300, 290, 291, -1, -1, 140, 292,
844 : 226, 141, -1, -1, 297, -1, 304, 297, -1, 263,
845 : 139, 293, -1, 296, -1, 258, -1, 297, -1, 304,
846 : 297, -1, 294, -1, 297, 61, 299, 149, -1, 297,
847 : 143, 279, 144, -1, 298, -1, 73, -1, 145, 143,
848 : 279, 144, -1, -1, 279, -1, 302, -1, -1, 293,
849 : 301, -1, 302, 61, 299, 149, -1, 302, 143, 279,
850 : 144, -1, 303, -1, 71, -1, 143, 279, 144, -1,
851 : 145, -1, 304, 145, -1, 305, 8, 306, -1, 306,
852 : -1, 285, -1, -1, 122, 140, 307, 305, 141, -1,
853 : -1, -1, 309, 277, -1, 309, 8, 279, 121, 279,
854 : -1, 309, 8, 279, -1, 279, 121, 279, -1, 279,
855 : -1, 309, 8, 279, 121, 31, 281, -1, 309, 8,
856 : 31, 281, -1, 279, 121, 31, 281, -1, 31, 281,
857 : -1, 310, 311, -1, 310, 71, -1, 310, 74, -1,
858 : 310, 78, -1, 310, 76, -1, 310, 77, -1, 310,
859 : 61, -1, 310, 149, -1, 310, 143, -1, 310, 144,
860 : -1, 310, 120, -1, -1, 73, -1, -1, 73, 61,
861 : 312, 313, 149, -1, 73, 120, 71, -1, 137, 279,
862 : 144, -1, 137, 72, 61, 279, 149, 144, -1, 138,
863 : 285, 144, -1, 71, -1, 74, -1, 73, -1, 113,
864 : 140, 315, 141, -1, 114, 140, 285, 141, -1, 7,
865 : 279, -1, 6, 279, -1, 5, 140, 279, 141, -1,
866 : 4, 279, -1, 3, 279, -1, 285, -1, -1, 315,
867 : 8, 316, 285, -1, 263, 139, 71, -1
868 : };
869 :
870 : /* YYRLINE[YYN] -- source line where rule number YYN was defined. */
871 : static const yytype_uint16 yyrline[] =
872 : {
873 : 0, 152, 152, 156, 156, 157, 162, 163, 164, 165,
874 : 170, 170, 171, 176, 177, 178, 179, 184, 188, 189,
875 : 189, 189, 190, 190, 190, 191, 191, 191, 192, 192,
876 : 192, 196, 198, 200, 193, 202, 202, 203, 204, 205,
877 : 206, 207, 208, 209, 210, 211, 212, 213, 214, 215,
878 : 216, 218, 219, 217, 222, 223, 221, 225, 225, 226,
879 : 227, 228, 229, 230, 231, 227, 233, 238, 239, 243,
880 : 244, 249, 249, 249, 254, 255, 259, 263, 264, 269,
881 : 273, 278, 279, 284, 284, 284, 290, 289, 296, 295,
882 : 305, 306, 307, 311, 312, 316, 319, 321, 324, 326,
883 : 330, 331, 335, 336, 341, 342, 346, 347, 352, 353,
884 : 358, 359, 364, 365, 370, 371, 372, 373, 378, 379,
885 : 379, 380, 380, 385, 386, 391, 392, 397, 399, 399,
886 : 403, 405, 405, 409, 411, 415, 417, 422, 423, 428,
887 : 429, 430, 431, 432, 433, 434, 435, 440, 441, 442,
888 : 447, 448, 453, 454, 455, 456, 457, 458, 462, 463,
889 : 468, 469, 470, 475, 476, 477, 478, 484, 485, 490,
890 : 490, 491, 492, 492, 492, 498, 499, 503, 504, 508,
891 : 509, 513, 514, 518, 519, 520, 521, 522, 523, 527,
892 : 528, 529, 530, 534, 535, 539, 540, 545, 546, 550,
893 : 550, 551, 555, 555, 556, 557, 558, 558, 559, 559,
894 : 560, 561, 562, 563, 564, 565, 566, 567, 568, 569,
895 : 570, 571, 572, 573, 574, 575, 576, 576, 577, 577,
896 : 578, 578, 579, 579, 580, 581, 582, 583, 584, 585,
897 : 586, 587, 588, 589, 590, 591, 592, 593, 594, 595,
898 : 596, 597, 598, 599, 600, 601, 602, 603, 604, 605,
899 : 606, 607, 606, 609, 610, 611, 612, 613, 614, 615,
900 : 616, 617, 618, 618, 619, 620, 621, 622, 626, 626,
901 : 629, 629, 632, 632, 635, 635, 641, 645, 646, 651,
902 : 652, 651, 654, 659, 660, 665, 669, 670, 671, 676,
903 : 677, 682, 683, 684, 685, 686, 687, 688, 689, 694,
904 : 695, 696, 697, 698, 699, 703, 707, 708, 709, 710,
905 : 711, 712, 713, 718, 719, 722, 724, 728, 729, 730,
906 : 731, 735, 736, 741, 746, 746, 751, 751, 756, 757,
907 : 756, 759, 763, 764, 769, 769, 773, 773, 777, 781,
908 : 782, 786, 791, 792, 797, 798, 799, 803, 804, 805,
909 : 810, 811, 815, 816, 821, 822, 822, 826, 827, 828,
910 : 832, 833, 837, 838, 842, 843, 848, 849, 849, 850,
911 : 855, 856, 860, 861, 862, 863, 864, 865, 866, 867,
912 : 871, 872, 873, 874, 875, 876, 877, 878, 879, 880,
913 : 881, 882, 889, 890, 890, 891, 892, 893, 894, 899,
914 : 900, 901, 906, 907, 908, 909, 910, 911, 912, 916,
915 : 917, 917, 921
916 : };
917 : #endif
918 :
919 : #if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
920 : /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
921 : First, the terminals, then, starting at YYNTOKENS, nonterminals. */
922 : static const char *const yytname[] =
923 : {
924 : "$end", "error", "$undefined", "T_REQUIRE_ONCE", "T_REQUIRE", "T_EVAL",
925 : "T_INCLUDE_ONCE", "T_INCLUDE", "','", "T_LOGICAL_OR", "T_LOGICAL_XOR",
926 : "T_LOGICAL_AND", "T_PRINT", "'='", "T_SR_EQUAL", "T_SL_EQUAL",
927 : "T_XOR_EQUAL", "T_OR_EQUAL", "T_AND_EQUAL", "T_MOD_EQUAL",
928 : "T_CONCAT_EQUAL", "T_DIV_EQUAL", "T_MUL_EQUAL", "T_MINUS_EQUAL",
929 : "T_PLUS_EQUAL", "'?'", "':'", "T_BOOLEAN_OR", "T_BOOLEAN_AND", "'|'",
930 : "'^'", "'&'", "T_IS_NOT_IDENTICAL", "T_IS_IDENTICAL", "T_IS_NOT_EQUAL",
931 : "T_IS_EQUAL", "'<'", "'>'", "T_IS_GREATER_OR_EQUAL",
932 : "T_IS_SMALLER_OR_EQUAL", "T_SR", "T_SL", "'+'", "'-'", "'.'", "'*'",
933 : "'/'", "'%'", "'!'", "T_INSTANCEOF", "'~'", "'@'", "T_UNSET_CAST",
934 : "T_BOOL_CAST", "T_OBJECT_CAST", "T_ARRAY_CAST", "T_STRING_CAST",
935 : "T_DOUBLE_CAST", "T_INT_CAST", "T_DEC", "T_INC", "'['", "T_CLONE",
936 : "T_NEW", "T_EXIT", "T_IF", "T_ELSEIF", "T_ELSE", "T_ENDIF", "T_LNUMBER",
937 : "T_DNUMBER", "T_STRING", "T_STRING_VARNAME", "T_VARIABLE",
938 : "T_NUM_STRING", "T_INLINE_HTML", "T_CHARACTER", "T_BAD_CHARACTER",
939 : "T_ENCAPSED_AND_WHITESPACE", "T_CONSTANT_ENCAPSED_STRING", "T_ECHO",
940 : "T_DO", "T_WHILE", "T_ENDWHILE", "T_FOR", "T_ENDFOR", "T_FOREACH",
941 : "T_ENDFOREACH", "T_DECLARE", "T_ENDDECLARE", "T_AS", "T_SWITCH",
942 : "T_ENDSWITCH", "T_CASE", "T_DEFAULT", "T_BREAK", "T_CONTINUE",
943 : "T_FUNCTION", "T_CONST", "T_RETURN", "T_TRY", "T_CATCH", "T_THROW",
944 : "T_USE", "T_GLOBAL", "T_PUBLIC", "T_PROTECTED", "T_PRIVATE", "T_FINAL",
945 : "T_ABSTRACT", "T_STATIC", "T_VAR", "T_UNSET", "T_ISSET", "T_EMPTY",
946 : "T_HALT_COMPILER", "T_CLASS", "T_INTERFACE", "T_EXTENDS", "T_IMPLEMENTS",
947 : "T_OBJECT_OPERATOR", "T_DOUBLE_ARROW", "T_LIST", "T_ARRAY", "T_CLASS_C",
948 : "T_METHOD_C", "T_FUNC_C", "T_LINE", "T_FILE", "T_COMMENT",
949 : "T_DOC_COMMENT", "T_OPEN_TAG", "T_OPEN_TAG_WITH_ECHO", "T_CLOSE_TAG",
950 : "T_WHITESPACE", "T_START_HEREDOC", "T_END_HEREDOC",
951 : "T_DOLLAR_OPEN_CURLY_BRACES", "T_CURLY_OPEN", "T_PAAMAYIM_NEKUDOTAYIM",
952 : "'('", "')'", "';'", "'{'", "'}'", "'$'", "'`'", "'\"'", "'''", "']'",
953 : "$accept", "start", "top_statement_list", "@1", "top_statement",
954 : "inner_statement_list", "@2", "inner_statement", "statement",
955 : "unticked_statement", "@3", "@4", "@5", "@6", "@7", "@8", "@9", "@10",
956 : "@11", "@12", "@13", "@14", "@15", "@16", "@17", "@18", "@19", "@20",
957 : "@21", "@22", "@23", "@24", "additional_catches",
958 : "non_empty_additional_catches", "additional_catch", "@25", "@26",
959 : "unset_variables", "unset_variable", "use_filename",
960 : "function_declaration_statement", "class_declaration_statement",
961 : "is_reference", "unticked_function_declaration_statement", "@27", "@28",
962 : "unticked_class_declaration_statement", "@29", "@30", "class_entry_type",
963 : "extends_from", "interface_entry", "interface_extends_list",
964 : "implements_list", "interface_list", "foreach_optional_arg",
965 : "foreach_variable", "for_statement", "foreach_statement",
966 : "declare_statement", "declare_list", "switch_case_list", "case_list",
967 : "@31", "@32", "case_separator", "while_statement", "elseif_list", "@33",
968 : "new_elseif_list", "@34", "else_single", "new_else_single",
969 : "parameter_list", "non_empty_parameter_list", "optional_class_type",
970 : "function_call_parameter_list", "non_empty_function_call_parameter_list",
971 : "global_var_list", "global_var", "static_var_list",
972 : "class_statement_list", "class_statement", "@35", "@36", "@37",
973 : "method_body", "variable_modifiers", "method_modifiers",
974 : "non_empty_member_modifiers", "member_modifier",
975 : "class_variable_declaration", "class_constant_declaration",
976 : "echo_expr_list", "for_expr", "non_empty_for_expr", "@38",
977 : "expr_without_variable", "@39", "@40", "@41", "@42", "@43", "@44", "@45",
978 : "@46", "@47", "@48", "function_call", "@49", "@50", "@51", "@52",
979 : "fully_qualified_class_name", "class_name_reference",
980 : "dynamic_class_name_reference", "@53", "@54",
981 : "dynamic_class_name_variable_properties",
982 : "dynamic_class_name_variable_property", "exit_expr", "ctor_arguments",
983 : "common_scalar", "static_scalar", "static_class_constant", "scalar",
984 : "static_array_pair_list", "possible_comma",
985 : "non_empty_static_array_pair_list", "expr", "r_variable", "w_variable",
986 : "@55", "rw_variable", "@56", "variable", "@57", "@58",
987 : "variable_properties", "variable_property", "@59", "method_or_not",
988 : "@60", "variable_without_objects", "static_member",
989 : "base_variable_with_function_calls", "base_variable",
990 : "reference_variable", "compound_variable", "dim_offset",
991 : "object_property", "@61", "object_dim_list", "variable_name",
992 : "simple_indirect_reference", "assignment_list",
993 : "assignment_list_element", "@62", "array_pair_list",
994 : "non_empty_array_pair_list", "encaps_list", "encaps_var", "@63",
995 : "encaps_var_offset", "internal_functions_in_yacc", "isset_variables",
996 : "@64", "class_constant", 0
997 : };
998 : #endif
999 :
1000 : # ifdef YYPRINT
1001 : /* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to
1002 : token YYLEX-NUM. */
1003 : static const yytype_uint16 yytoknum[] =
1004 : {
1005 : 0, 256, 257, 258, 259, 260, 261, 262, 44, 263,
1006 : 264, 265, 266, 61, 267, 268, 269, 270, 271, 272,
1007 : 273, 274, 275, 276, 277, 63, 58, 278, 279, 124,
1008 : 94, 38, 280, 281, 282, 283, 60, 62, 284, 285,
1009 : 286, 287, 43, 45, 46, 42, 47, 37, 33, 288,
1010 : 126, 64, 289, 290, 291, 292, 293, 294, 295, 296,
1011 : 297, 91, 298, 299, 300, 301, 302, 303, 304, 305,
1012 : 306, 307, 308, 309, 310, 311, 312, 313, 314, 315,
1013 : 316, 317, 318, 319, 320, 321, 322, 323, 324, 325,
1014 : 326, 327, 328, 329, 330, 331, 332, 333, 334, 335,
1015 : 336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
1016 : 346, 347, 348, 349, 350, 351, 352, 353, 354, 355,
1017 : 356, 357, 358, 359, 360, 361, 362, 363, 364, 365,
1018 : 366, 367, 368, 369, 370, 371, 372, 373, 374, 375,
1019 : 40, 41, 59, 123, 125, 36, 96, 34, 39, 93
1020 : };
1021 : # endif
1022 :
1023 : /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
1024 : static const yytype_uint16 yyr1[] =
1025 : {
1026 : 0, 150, 151, 153, 152, 152, 154, 154, 154, 154,
1027 : 156, 155, 155, 157, 157, 157, 157, 158, 159, 160,
1028 : 161, 159, 162, 163, 159, 164, 165, 159, 166, 167,
1029 : 159, 168, 169, 170, 159, 171, 159, 159, 159, 159,
1030 : 159, 159, 159, 159, 159, 159, 159, 159, 159, 159,
1031 : 159, 172, 173, 159, 174, 175, 159, 176, 159, 159,
1032 : 177, 178, 179, 180, 181, 159, 159, 182, 182, 183,
1033 : 183, 185, 186, 184, 187, 187, 188, 189, 189, 190,
1034 : 191, 192, 192, 194, 195, 193, 197, 196, 198, 196,
1035 : 199, 199, 199, 200, 200, 201, 202, 202, 203, 203,
1036 : 204, 204, 205, 205, 206, 206, 207, 207, 208, 208,
1037 : 209, 209, 210, 210, 211, 211, 211, 211, 212, 213,
1038 : 212, 214, 212, 215, 215, 216, 216, 217, 218, 217,
1039 : 219, 220, 219, 221, 221, 222, 222, 223, 223, 224,
1040 : 224, 224, 224, 224, 224, 224, 224, 225, 225, 225,
1041 : 226, 226, 227, 227, 227, 227, 227, 227, 228, 228,
1042 : 229, 229, 229, 230, 230, 230, 230, 231, 231, 233,
1043 : 232, 232, 234, 235, 232, 236, 236, 237, 237, 238,
1044 : 238, 239, 239, 240, 240, 240, 240, 240, 240, 241,
1045 : 241, 241, 241, 242, 242, 243, 243, 244, 244, 246,
1046 : 245, 245, 248, 247, 247, 247, 249, 247, 250, 247,
1047 : 247, 247, 247, 247, 247, 247, 247, 247, 247, 247,
1048 : 247, 247, 247, 247, 247, 247, 251, 247, 252, 247,
1049 : 253, 247, 254, 247, 247, 247, 247, 247, 247, 247,
1050 : 247, 247, 247, 247, 247, 247, 247, 247, 247, 247,
1051 : 247, 247, 247, 247, 247, 247, 247, 247, 247, 247,
1052 : 255, 256, 247, 247, 247, 247, 247, 247, 247, 247,
1053 : 247, 247, 257, 247, 247, 247, 247, 247, 259, 258,
1054 : 260, 258, 261, 258, 262, 258, 263, 264, 264, 266,
1055 : 267, 265, 265, 268, 268, 269, 270, 270, 270, 271,
1056 : 271, 272, 272, 272, 272, 272, 272, 272, 272, 273,
1057 : 273, 273, 273, 273, 273, 274, 275, 275, 275, 275,
1058 : 275, 275, 275, 276, 276, 277, 277, 278, 278, 278,
1059 : 278, 279, 279, 280, 282, 281, 284, 283, 286, 287,
1060 : 285, 285, 288, 288, 290, 289, 292, 291, 291, 293,
1061 : 293, 294, 295, 295, 296, 296, 296, 297, 297, 297,
1062 : 298, 298, 299, 299, 300, 301, 300, 302, 302, 302,
1063 : 303, 303, 304, 304, 305, 305, 306, 307, 306, 306,
1064 : 308, 308, 309, 309, 309, 309, 309, 309, 309, 309,
1065 : 310, 310, 310, 310, 310, 310, 310, 310, 310, 310,
1066 : 310, 310, 311, 312, 311, 311, 311, 311, 311, 313,
1067 : 313, 313, 314, 314, 314, 314, 314, 314, 314, 315,
1068 : 316, 315, 317
1069 : };
1070 :
1071 : /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
1072 : static const yytype_uint8 yyr2[] =
1073 : {
1074 : 0, 2, 1, 0, 3, 0, 1, 1, 1, 4,
1075 : 0, 3, 0, 1, 1, 1, 4, 1, 3, 0,
1076 : 0, 9, 0, 0, 12, 0, 0, 7, 0, 0,
1077 : 9, 0, 0, 0, 12, 0, 6, 2, 3, 2,
1078 : 3, 2, 3, 3, 3, 3, 3, 1, 2, 3,
1079 : 5, 0, 0, 10, 0, 0, 10, 0, 6, 1,
1080 : 0, 0, 0, 0, 0, 18, 3, 1, 0, 1,
1081 : 2, 0, 0, 10, 1, 3, 1, 1, 3, 1,
1082 : 1, 0, 1, 0, 0, 11, 0, 8, 0, 7,
1083 : 1, 2, 2, 0, 2, 1, 0, 2, 0, 2,
1084 : 1, 3, 0, 2, 1, 2, 1, 4, 1, 4,
1085 : 1, 4, 3, 5, 3, 4, 4, 5, 0, 0,
1086 : 6, 0, 5, 1, 1, 1, 4, 0, 0, 7,
1087 : 0, 0, 8, 0, 2, 0, 3, 1, 0, 2,
1088 : 3, 5, 4, 4, 5, 7, 6, 0, 1, 1,
1089 : 1, 0, 1, 1, 2, 3, 3, 4, 3, 1,
1090 : 1, 2, 4, 3, 5, 1, 3, 2, 0, 0,
1091 : 4, 2, 0, 0, 10, 1, 3, 1, 1, 0,
1092 : 1, 1, 2, 1, 1, 1, 1, 1, 1, 3,
1093 : 5, 1, 3, 5, 4, 3, 1, 0, 1, 0,
1094 : 4, 1, 0, 7, 3, 4, 0, 7, 0, 4,
1095 : 2, 3, 3, 3, 3, 3, 3, 3, 3, 3,
1096 : 3, 3, 2, 2, 2, 2, 0, 4, 0, 4,
1097 : 0, 4, 0, 4, 3, 3, 3, 3, 3, 3,
1098 : 3, 3, 3, 3, 3, 3, 2, 2, 2, 2,
1099 : 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
1100 : 0, 0, 7, 1, 2, 2, 2, 2, 2, 2,
1101 : 2, 2, 0, 3, 1, 4, 3, 2, 0, 5,
1102 : 0, 7, 0, 7, 0, 5, 1, 1, 1, 0,
1103 : 0, 6, 1, 2, 0, 2, 0, 2, 3, 0,
1104 : 3, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1105 : 1, 2, 2, 4, 1, 3, 1, 1, 1, 1,
1106 : 3, 3, 3, 0, 2, 0, 1, 5, 3, 3,
1107 : 1, 1, 1, 1, 0, 2, 0, 2, 0, 0,
1108 : 7, 1, 2, 0, 0, 4, 0, 4, 0, 1,
1109 : 2, 3, 1, 1, 1, 2, 1, 4, 4, 1,
1110 : 1, 4, 0, 1, 1, 0, 2, 4, 4, 1,
1111 : 1, 3, 1, 2, 3, 1, 1, 0, 5, 0,
1112 : 0, 2, 5, 3, 3, 1, 6, 4, 4, 2,
1113 : 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1114 : 2, 0, 1, 0, 5, 3, 3, 6, 3, 1,
1115 : 1, 1, 4, 4, 2, 2, 4, 2, 2, 1,
1116 : 0, 4, 3
1117 : };
1118 :
1119 : /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
1120 : STATE-NUM when YYTABLE doesn't specify something else to do. Zero
1121 : means the default is an error. */
1122 : static const yytype_uint16 yydefact[] =
1123 : {
1124 : 5, 0, 3, 1, 0, 0, 0, 0, 0, 0,
1125 : 0, 0, 0, 0, 0, 272, 0, 0, 0, 0,
1126 : 0, 0, 0, 0, 0, 0, 0, 296, 0, 301,
1127 : 302, 316, 317, 360, 47, 303, 0, 28, 0, 0,
1128 : 0, 57, 0, 0, 0, 83, 0, 60, 0, 0,
1129 : 0, 0, 0, 0, 0, 0, 0, 0, 90, 95,
1130 : 0, 0, 306, 307, 308, 304, 305, 401, 0, 59,
1131 : 12, 372, 401, 401, 401, 4, 6, 17, 7, 8,
1132 : 79, 80, 0, 0, 332, 353, 0, 319, 274, 0,
1133 : 331, 0, 333, 0, 356, 341, 352, 354, 359, 0,
1134 : 263, 318, 418, 417, 0, 415, 414, 277, 246, 247,
1135 : 248, 249, 0, 270, 269, 268, 267, 266, 265, 264,
1136 : 286, 0, 225, 336, 223, 210, 287, 0, 208, 288,
1137 : 292, 354, 0, 0, 271, 0, 278, 0, 196, 0,
1138 : 25, 197, 0, 0, 0, 37, 0, 39, 0, 81,
1139 : 41, 332, 0, 333, 0, 0, 77, 0, 0, 160,
1140 : 0, 0, 159, 92, 91, 165, 0, 0, 0, 0,
1141 : 0, 202, 380, 0, 0, 10, 0, 0, 0, 0,
1142 : 93, 88, 0, 230, 0, 232, 260, 226, 228, 0,
1143 : 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1144 : 0, 0, 0, 0, 0, 0, 0, 0, 0, 48,
1145 : 224, 222, 0, 0, 0, 0, 0, 0, 0, 0,
1146 : 0, 0, 0, 0, 337, 284, 338, 362, 0, 373,
1147 : 355, 0, 273, 0, 0, 299, 289, 355, 297, 0,
1148 : 0, 151, 0, 46, 0, 0, 0, 198, 201, 332,
1149 : 333, 0, 0, 38, 40, 82, 0, 42, 43, 12,
1150 : 66, 0, 49, 0, 161, 333, 0, 44, 0, 0,
1151 : 45, 0, 74, 76, 419, 0, 0, 0, 379, 0,
1152 : 385, 0, 325, 396, 391, 402, 392, 394, 395, 393,
1153 : 400, 322, 0, 0, 398, 399, 397, 390, 259, 18,
1154 : 0, 0, 276, 320, 321, 0, 86, 96, 422, 351,
1155 : 349, 0, 0, 234, 0, 0, 0, 0, 235, 237,
1156 : 236, 251, 250, 253, 252, 254, 256, 257, 255, 245,
1157 : 244, 239, 240, 238, 241, 242, 243, 258, 0, 204,
1158 : 221, 220, 219, 218, 217, 216, 215, 214, 213, 212,
1159 : 211, 151, 0, 363, 0, 0, 416, 0, 351, 151,
1160 : 209, 0, 298, 19, 0, 0, 150, 332, 333, 195,
1161 : 0, 0, 31, 199, 54, 51, 0, 0, 35, 84,
1162 : 10, 78, 0, 158, 0, 0, 310, 0, 309, 166,
1163 : 314, 163, 0, 0, 420, 412, 413, 9, 0, 376,
1164 : 0, 375, 389, 334, 0, 275, 326, 381, 403, 0,
1165 : 317, 0, 0, 0, 11, 13, 14, 15, 361, 286,
1166 : 94, 98, 0, 0, 280, 282, 350, 231, 233, 0,
1167 : 227, 229, 0, 205, 0, 370, 0, 365, 339, 364,
1168 : 369, 357, 358, 0, 290, 22, 0, 154, 279, 0,
1169 : 29, 26, 197, 0, 0, 0, 0, 0, 0, 0,
1170 : 0, 0, 162, 311, 312, 0, 323, 0, 75, 50,
1171 : 0, 377, 379, 0, 335, 0, 384, 0, 383, 0,
1172 : 405, 0, 406, 408, 0, 0, 0, 97, 100, 168,
1173 : 151, 151, 261, 206, 285, 0, 366, 348, 362, 0,
1174 : 300, 294, 12, 20, 0, 332, 333, 0, 0, 0,
1175 : 200, 102, 0, 102, 104, 112, 0, 12, 110, 58,
1176 : 118, 118, 36, 147, 0, 315, 330, 0, 325, 164,
1177 : 421, 379, 374, 0, 388, 387, 0, 409, 411, 410,
1178 : 0, 0, 0, 99, 168, 0, 179, 0, 0, 0,
1179 : 299, 371, 346, 343, 0, 0, 291, 10, 127, 157,
1180 : 0, 12, 125, 27, 32, 0, 0, 105, 0, 0,
1181 : 10, 118, 0, 118, 0, 148, 149, 0, 137, 0,
1182 : 61, 0, 313, 326, 324, 0, 203, 0, 382, 404,
1183 : 0, 16, 179, 101, 0, 183, 184, 185, 188, 187,
1184 : 186, 178, 89, 167, 169, 0, 177, 181, 0, 281,
1185 : 283, 262, 207, 151, 340, 367, 368, 0, 293, 130,
1186 : 133, 0, 10, 197, 103, 55, 52, 113, 0, 0,
1187 : 0, 0, 0, 0, 114, 0, 147, 0, 139, 0,
1188 : 329, 328, 378, 386, 407, 87, 0, 0, 172, 182,
1189 : 0, 171, 0, 0, 342, 295, 135, 0, 0, 21,
1190 : 30, 0, 0, 0, 0, 111, 0, 116, 0, 123,
1191 : 124, 121, 115, 12, 0, 140, 0, 62, 0, 0,
1192 : 191, 0, 81, 0, 347, 344, 0, 0, 0, 0,
1193 : 134, 126, 33, 12, 108, 56, 53, 117, 119, 12,
1194 : 10, 0, 143, 0, 142, 0, 327, 194, 0, 0,
1195 : 170, 0, 0, 348, 0, 12, 0, 0, 0, 10,
1196 : 12, 10, 85, 144, 0, 141, 0, 192, 189, 173,
1197 : 193, 345, 0, 10, 24, 128, 12, 106, 34, 0,
1198 : 10, 0, 146, 63, 0, 0, 0, 0, 10, 109,
1199 : 145, 0, 190, 147, 131, 129, 0, 12, 0, 12,
1200 : 107, 10, 0, 10, 64, 175, 12, 174, 68, 10,
1201 : 0, 65, 67, 69, 176, 0, 70, 71, 0, 0,
1202 : 72, 0, 12, 10, 73
1203 : };
1204 :
1205 : /* YYDEFGOTO[NTERM-NUM]. */
1206 : static const yytype_int16 yydefgoto[] =
1207 : {
1208 : -1, 1, 2, 4, 75, 175, 300, 414, 694, 77,
1209 : 446, 558, 502, 619, 245, 508, 139, 507, 452, 623,
1210 : 718, 459, 455, 664, 454, 663, 143, 154, 639, 705,
1211 : 751, 768, 771, 772, 773, 778, 781, 271, 272, 158,
1212 : 78, 79, 256, 80, 149, 460, 81, 421, 307, 82,
1213 : 306, 83, 423, 486, 487, 566, 513, 738, 695, 519,
1214 : 377, 522, 572, 720, 699, 671, 563, 620, 747, 656,
1215 : 759, 659, 688, 577, 578, 579, 365, 366, 161, 162,
1216 : 166, 546, 603, 647, 682, 745, 767, 604, 605, 606,
1217 : 607, 681, 608, 137, 246, 247, 453, 84, 278, 550,
1218 : 235, 316, 317, 312, 314, 315, 549, 112, 85, 241,
1219 : 490, 491, 351, 86, 128, 129, 361, 501, 556, 618,
1220 : 134, 360, 87, 389, 390, 88, 527, 407, 528, 89,
1221 : 90, 402, 474, 91, 224, 92, 352, 497, 614, 654,
1222 : 713, 553, 613, 93, 94, 95, 96, 97, 98, 354,
1223 : 438, 496, 439, 440, 99, 400, 401, 531, 281, 282,
1224 : 173, 297, 479, 540, 100, 275, 470, 101
1225 : };
1226 :
1227 : /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
1228 : STATE-NUM. */
1229 : #define YYPACT_NINF -445
1230 : static const yytype_int16 yypact[] =
1231 : {
1232 : -445, 51, 83, -445, 814, 3082, 3082, -115, 3082, 3082,
1233 : 3082, 3082, 3082, 3082, 3082, -445, 3082, 3082, 3082, 3082,
1234 : 3082, 3082, 3082, 15, 15, 3082, 28, -40, -20, -445,
1235 : -445, 159, -445, -445, -445, -445, 3082, -445, -11, -8,
1236 : 3, -445, 26, 1696, 1822, -445, 1948, -445, 3082, 24,
1237 : -37, 22, 56, 53, 52, 54, 63, 120, -445, -445,
1238 : 124, 127, -445, -445, -445, -445, -445, -445, 3082, -445,
1239 : -445, -7, -445, -445, -445, -445, -445, -445, -445, -445,
1240 : -445, -445, 119, 125, -445, -445, 130, -445, -445, 3335,
1241 : -445, 246, 1209, 139, -445, 163, -445, -50, -445, -26,
1242 : -445, -445, 2760, 2760, 3082, 2760, 2760, 3135, 64, 64,
1243 : 254, -445, 3082, -445, -445, -445, -445, -445, -445, -445,
1244 : 168, 171, -445, -445, -445, -445, 173, 175, -445, -445,
1245 : 206, -46, -26, 2074, -445, 3082, -445, 5, 2760, 1570,
1246 : -445, 3082, 3082, 194, 3082, -445, 3380, -445, 3421, 318,
1247 : -445, 212, 2760, 579, 213, 3462, -445, 279, 226, -445,
1248 : -21, 8, -445, -445, -445, 360, 10, 15, 15, 15,
1249 : 233, -445, 2200, 547, 3503, 232, 3082, 830, 654, 956,
1250 : 259, -445, 43, -445, 3082, -445, -445, -445, -445, 3082,
1251 : 3082, 3082, 3082, 3082, 3082, 3082, 3082, 3082, 3082, 3082,
1252 : 3082, 3082, 3082, 3082, 3082, 3082, 3082, 3082, 28, -445,
1253 : -445, -445, 2326, 3082, 3082, 3082, 3082, 3082, 3082, 3082,
1254 : 3082, 3082, 3082, 3082, -445, -445, -445, 3082, 3082, -7,
1255 : -49, 3544, -445, 50, -14, 238, -445, -46, -445, 3585,
1256 : 3626, 2452, 3082, -445, 297, 3082, 239, 375, 2760, 295,
1257 : 723, 316, 3667, -445, -445, -445, 317, -445, -445, -445,
1258 : -445, 265, -445, 3082, -445, -445, -37, -445, 1734, 325,
1259 : -445, -1, -445, -445, -445, 20, 269, 270, -10, 15,
1260 : 3872, 274, 403, -445, -445, 31, -445, -445, -445, -445,
1261 : -445, -445, 3208, 15, -445, -445, -445, -445, -445, -445,
1262 : 940, 1878, -445, -445, -445, 343, -445, 298, 277, 278,
1263 : -46, -26, 3082, 3011, 3082, 3082, 3082, 3082, 3943, 1562,
1264 : 1687, 1939, 1939, 1939, 1939, 718, 718, 718, 718, 358,
1265 : 358, 64, 64, 64, 254, 254, 254, -445, -3, 3135,
1266 : 3135, 3135, 3135, 3135, 3135, 3135, 3135, 3135, 3135, 3135,
1267 : 3135, 2452, 25, 2760, 271, 2004, -445, 277, -445, 2452,
1268 : -445, 25, -445, 393, 15, 281, 413, 36, 58, 2760,
1269 : 283, 3708, -445, -445, -445, -445, 411, 40, -445, -445,
1270 : 282, -445, 2130, -445, 1734, 1734, 290, 293, -445, -445,
1271 : -445, 421, 15, 294, -445, -445, -445, -445, 300, -445,
1272 : 41, -445, -445, -445, 2578, -445, 2704, -445, -445, 364,
1273 : 376, 2256, 299, 301, -445, -445, -445, -445, -445, -445,
1274 : -445, 319, 343, 302, -445, -445, -46, 2885, 3135, 2634,
1275 : 4007, 4028, 28, -445, 303, -445, 3082, -445, -445, -41,
1276 : -445, -445, -445, 305, -445, -445, 1570, -445, -445, 2830,
1277 : -445, -445, 3082, 3082, 15, 14, 1734, 371, 1066, -16,
1278 : 310, 350, -445, -445, -445, 382, 1734, 1734, -445, -445,
1279 : 15, -445, -10, 442, -445, 15, 2760, 15, 3913, 33,
1280 : -445, 3082, -445, -445, 315, 343, 321, 450, -445, -445,
1281 : 2452, 2452, -445, -445, -445, 2382, -445, 326, 3082, 3082,
1282 : -445, -445, -445, -445, 15, 45, 272, 3082, 1192, 327,
1283 : 2760, 338, 15, 338, -445, -445, 448, -445, -445, -445,
1284 : 329, 330, -445, 34, 328, -445, 346, 337, 471, -445,
1285 : -445, -10, -445, 3082, -445, -445, 2956, -445, -445, -445,
1286 : 331, 1753, 340, 450, -445, 343, 167, 344, 345, 3082,
1287 : 238, -445, -445, -445, 339, 2508, 367, 257, -445, -445,
1288 : 3749, -445, -445, -445, -445, 14, 349, -445, 351, 1734,
1289 : 402, -445, 236, -445, 157, -445, -445, 352, 486, 103,
1290 : -445, 1734, -445, 1734, -445, 46, 3135, 15, 2760, -445,
1291 : 353, -445, 211, -445, 424, -445, -445, -445, -445, -445,
1292 : -445, -445, -445, -445, -445, 399, 287, -445, 11, -445,
1293 : -445, 3967, -445, 2452, 379, -445, -445, 25, -445, -445,
1294 : 273, 361, 422, 3082, -445, -445, -445, -445, 362, 251,
1295 : 372, 3082, -12, 160, -445, 366, 44, 440, 503, 343,
1296 : -445, 396, -445, -445, -445, -445, 508, 452, -445, -445,
1297 : 455, -445, 386, 25, -445, -445, 280, 383, 1570, -445,
1298 : -445, 387, 389, 1318, 1318, -445, 390, -445, 3264, -445,
1299 : -445, -445, -445, -445, 227, 518, 1734, -445, 1734, 1734,
1300 : 520, 13, 318, 521, -445, -445, 395, 510, 469, 3082,
1301 : -445, -445, -445, -445, -445, -445, -445, -445, -445, -445,
1302 : 394, 466, 528, 1734, -445, 470, -445, -445, 1734, 473,
1303 : -445, 476, 1734, 326, 3082, -445, 407, 3790, 1444, 457,
1304 : -445, 108, -445, 537, 1734, -445, 410, -445, 539, -445,
1305 : -445, -445, 3831, 485, -445, -445, -445, -445, -445, 414,
1306 : 115, 1734, -445, -445, 1734, 423, 536, 1570, 482, -445,
1307 : -445, 425, -445, 34, -445, -445, 427, -445, 430, -445,
1308 : -445, 428, 223, 285, -445, -445, -445, -445, 474, 432,
1309 : 434, -445, 474, -445, -445, 343, -445, -445, 504, 437,
1310 : -445, 436, -445, 439, -445
1311 : };
1312 :
1313 : /* YYPGOTO[NTERM-NUM]. */
1314 : static const yytype_int16 yypgoto[] =
1315 : {
1316 : -445, -445, -445, -445, -445, -175, -445, -445, 2, -445,
1317 : -445, -445, -445, -445, -445, -445, -445, -445, -445, -445,
1318 : -445, -445, -445, -445, -445, -445, -445, -445, -445, -445,
1319 : -445, -445, -445, -445, -192, -445, -445, -445, 193, -445,
1320 : 288, 304, -95, -445, -445, -445, -445, -445, -445, -445,
1321 : -445, -445, -445, -445, 104, 77, 47, -445, -59, -445,
1322 : -445, -445, -382, -445, -445, -62, -445, -445, -445, -445,
1323 : -445, -445, -445, -144, -445, -25, -342, -445, -445, 356,
1324 : -445, 66, -445, -445, -445, -445, -445, -445, -445, -445,
1325 : 27, -445, -445, -445, -444, -445, -445, 16, -445, -445,
1326 : -445, -445, -445, -445, -445, -445, -445, -445, -445, -445,
1327 : -445, -445, -445, -23, -185, -445, -445, -445, -445, -445,
1328 : -445, 67, 92, 99, -445, -445, -445, 91, -445, 21,
1329 : 467, -306, -445, 347, -445, 222, -445, -445, -445, -445,
1330 : -445, -87, -445, -178, -445, -445, -24, -4, -445, 132,
1331 : -356, -445, -445, -445, -2, 97, 164, -445, -445, -445,
1332 : 289, -445, -445, -445, -445, -445, -445, -445
1333 : };
1334 :
1335 : /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If
1336 : positive, shift that token. If negative, reduce the rule which
1337 : number is the opposite. If zero, do what YYDEFACT says.
1338 : If YYTABLE_NINF, syntax error. */
1339 : #define YYTABLE_NINF -351
1340 : static const yytype_int16 yytable[] =
1341 : {
1342 : 121, 121, 130, 127, 309, 444, 76, 392, 509, 434,
1343 : 520, 227, 227, 242, 669, 227, 266, 443, 269, 650,
1344 : 498, 709, 131, 337, 132, 104, 102, 103, 394, 105,
1345 : 106, 107, 108, 109, 110, 111, 159, 113, 114, 115,
1346 : 116, 117, 118, 119, -152, 512, 125, 33, 457, 472,
1347 : 120, 3, 33, -155, 472, 309, 358, 138, 447, 33,
1348 : 432, 120, 151, 33, 146, 148, -153, 152, 120, 155,
1349 : 33, 212, 213, 214, 215, 216, 217, 218, 219, 220,
1350 : 221, 222, 223, -2, 380, 120, 120, 33, 33, 174,
1351 : -349, -350, 408, 228, 228, 230, 435, 228, 33, 126,
1352 : 133, 33, 499, 156, 537, 575, 538, 539, 160, 205,
1353 : 206, 207, 398, 208, 308, 575, 33, -336, -336, 229,
1354 : 135, 357, 263, 33, 71, 231, 165, 521, 237, 140,
1355 : 670, 71, 141, 232, 637, 71, 176, 121, 163, 574,
1356 : 393, 244, 71, 142, 121, 121, 121, 243, 547, 548,
1357 : 267, 409, 270, 651, 239, 710, 240, 576, 249, 71,
1358 : 71, 395, 248, 152, 157, 252, 144, 576, 436, 534,
1359 : 71, 535, 164, 71, 437, -138, 638, -152, 310, 662,
1360 : 311, 458, 473, 437, 130, 127, -155, 642, 71, 629,
1361 : 180, 633, 167, 280, 168, 71, 181, 301, 559, -153,
1362 : -122, -122, -122, 169, 131, 313, 132, -120, -120, -120,
1363 : 318, 319, 320, 321, 322, 323, 324, 325, 326, 327,
1364 : 328, 329, 330, 331, 332, 333, 334, 335, 336, 310,
1365 : 310, 311, 311, 339, 340, 341, 342, 343, 344, 345,
1366 : 346, 347, 348, 349, 350, 123, 123, 493, 353, 355,
1367 : 631, 632, -122, 631, 632, 121, 121, 367, 701, -120,
1368 : 170, 655, 152, 369, 171, 594, 371, 172, 153, 182,
1369 : 121, 652, 595, 596, 597, 598, 599, 600, 601, 225,
1370 : -156, 643, 420, 226, 382, 212, 213, 214, 215, 216,
1371 : 217, 218, 219, 220, 221, 222, 223, 685, -286, 136,
1372 : 702, 634, 415, 208, 672, 210, 211, 426, 136, 594,
1373 : 233, 602, -286, 411, 234, 121, 595, 596, 597, 598,
1374 : 599, 600, 601, -23, -23, -23, 236, 557, 630, 631,
1375 : 632, -336, -336, 427, 251, 428, 429, 430, 431, 657,
1376 : 658, 121, 570, 666, 631, 632, 686, 687, 310, 255,
1377 : 311, -132, -132, -132, 257, 645, 259, 310, 261, 311,
1378 : 388, 177, 178, 179, 250, 765, 766, 367, 262, 121,
1379 : 122, 124, 152, 268, 277, 367, 299, 305, 359, 370,
1380 : 152, 372, 265, 373, -180, 374, 622, 376, 379, 273,
1381 : 274, 276, 595, 596, 597, 598, 599, 600, 391, 488,
1382 : 202, 203, 204, 205, 206, 207, 381, 208, 130, 127,
1383 : 396, 406, 397, -156, 419, 405, 422, 424, 425, 445,
1384 : 441, 449, 448, 450, 456, 476, 461, 478, 131, 465,
1385 : 132, 121, 121, 466, 467, 480, 469, 481, 485, 437,
1386 : 471, 484, 516, 483, 494, 489, 500, 121, 503, 121,
1387 : 523, 524, 121, 525, 121, 533, 542, 495, 545, 565,
1388 : 518, 569, 488, 368, 544, 505, 552, 581, 580, 564,
1389 : 152, 571, 573, 248, 510, 437, 388, 388, 582, 583,
1390 : 589, 121, 591, 463, 464, 609, 610, 617, 615, 121,
1391 : 625, 628, 626, 635, 636, 646, 648, 644, 700, 653,
1392 : 399, 403, 541, 660, 665, 661, 367, 367, 121, 673,
1393 : 562, 152, 152, 675, 667, 412, 676, 678, 719, 353,
1394 : 555, 679, 593, 689, 721, 680, 683, 684, 560, 691,
1395 : 692, 703, 697, 708, 712, 714, 715, 716, 722, 723,
1396 : 733, 724, 121, 726, 739, 740, 728, 729, 388, 734,
1397 : 741, 743, 744, -136, 586, 515, 749, 588, 388, 388,
1398 : 433, 748, 754, 753, 121, 526, 529, 756, 757, 760,
1399 : 611, 762, 764, 368, 775, 770, 774, 779, 780, 782,
1400 : 776, 368, 761, 784, 763, 468, 403, 711, 416, 543,
1401 : 568, 769, 212, 213, 214, 215, 216, 217, 218, 219,
1402 : 220, 221, 222, 223, 417, 696, 698, 783, 283, 758,
1403 : 592, 674, 624, 310, 273, 311, 677, 612, 284, 584,
1404 : 285, 286, 383, 287, 288, 289, 731, 264, 585, 367,
1405 : 554, 0, 0, 649, 152, 0, 532, 0, -336, -336,
1406 : 0, 0, 0, 0, 248, 0, 0, 0, 0, 310,
1407 : 0, 311, 668, 0, 0, 0, 0, 0, 0, 0,
1408 : 690, 388, 0, 0, 0, 0, 0, 290, 627, 0,
1409 : 0, 506, 0, 388, 0, 388, 511, 514, 0, 0,
1410 : 640, 0, 641, 291, 292, 293, 0, 0, 0, 0,
1411 : 294, 295, 530, 0, 399, 0, 296, 403, 0, 403,
1412 : 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1413 : 717, 0, 368, 368, 0, 283, 0, 0, 0, 0,
1414 : 737, 258, 0, 0, 0, 284, 403, 285, 286, 0,
1415 : 287, 288, 289, 0, 567, 732, 212, 213, 214, 215,
1416 : 216, 217, 218, 219, 220, 221, 222, 223, 0, 755,
1417 : 0, 0, 777, 399, -351, -351, -351, -351, 200, 201,
1418 : 202, 203, 204, 205, 206, 207, 0, 208, 388, 0,
1419 : 388, 388, 0, 0, 290, 704, 0, 706, 707, 0,
1420 : 0, 0, -336, -336, 0, 0, 0, 514, 0, 0,
1421 : 0, 292, 293, 0, 0, 388, 0, 294, 295, 0,
1422 : 388, 303, 725, 296, 388, 0, 0, 727, 0, 403,
1423 : 0, 730, 0, 375, 0, 0, 388, 5, 6, 7,
1424 : 8, 9, 0, 742, 0, 0, 10, 0, 0, 0,
1425 : 0, 0, 0, 388, 0, 368, 388, 0, 0, 0,
1426 : 750, 0, 0, 752, 0, 0, 0, 0, 0, 0,
1427 : 0, 0, 0, 0, 0, 0, 11, 12, 0, 0,
1428 : 0, 0, 13, 0, 14, 15, 16, 17, 18, 19,
1429 : 20, 21, 22, 23, 24, 0, 25, 26, 27, 28,
1430 : 0, 0, 0, 29, 30, 31, 32, 33, 0, 34,
1431 : 0, 283, 0, 35, 36, 37, 38, 0, 39, 0,
1432 : 40, 284, 41, 285, 286, 42, 287, 288, 289, 43,
1433 : 44, 45, 0, 46, 47, 0, 48, 49, 50, 0,
1434 : 0, 0, 51, 52, 53, 0, 54, 55, 56, 57,
1435 : 58, 59, 0, 0, 0, 0, 60, 61, 62, 63,
1436 : 64, 65, 66, 5, 6, 7, 8, 9, 0, 67,
1437 : 290, 0, 10, 0, 68, 0, 69, 70, 0, 71,
1438 : 72, 73, 74, 0, 0, 0, 0, 292, 293, 0,
1439 : 0, 0, 0, 294, 295, 0, 302, 0, 0, 296,
1440 : 0, 0, 11, 12, 0, 0, 0, 0, 13, 0,
1441 : 14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
1442 : 24, 0, 25, 26, 27, 28, 0, 0, 0, 29,
1443 : 30, 31, 32, 33, 0, 34, 0, 283, 0, 35,
1444 : 36, 37, 38, 0, 39, 0, 40, 284, 41, 285,
1445 : 286, 42, 287, 288, 289, 43, 44, 45, 0, 46,
1446 : 47, 0, 48, 49, 50, 0, 0, 0, 51, 52,
1447 : 53, 0, 54, 55, 56, 413, 58, 59, 0, 0,
1448 : 0, 0, 60, 61, 62, 63, 64, 65, 66, 5,
1449 : 6, 7, 8, 9, 0, 67, 290, 0, 10, 0,
1450 : 68, 0, 69, 70, 0, 71, 72, 73, 74, 0,
1451 : 0, 0, 517, 292, 293, 0, 0, 0, 0, 294,
1452 : 295, 0, 0, 0, 304, 296, 0, 0, 11, 12,
1453 : 0, 0, 0, 0, 13, 0, 14, 15, 16, 17,
1454 : 18, 19, 20, 21, 22, 23, 24, 0, 25, 26,
1455 : 27, 28, 0, 0, 0, 29, 30, 31, 32, 33,
1456 : 0, 34, 0, 0, 0, 35, 36, 37, 38, 0,
1457 : 39, 0, 40, 0, 41, 0, 0, 42, 0, 0,
1458 : 0, 43, 44, 0, 0, 46, 47, 0, 48, 49,
1459 : 50, 0, 0, 0, 0, 0, 53, 0, 54, 55,
1460 : 56, 0, 0, 0, 0, 0, 0, 0, 60, 61,
1461 : 62, 63, 64, 65, 66, 5, 6, 7, 8, 9,
1462 : 0, 67, 0, 0, 10, 0, 68, 0, 69, 70,
1463 : 0, 71, 72, 73, 74, 0, 0, 0, 561, 0,
1464 : 0, 0, 212, 213, 214, 215, 216, 217, 218, 219,
1465 : 220, 221, 222, 223, 11, 12, 0, 0, 0, 0,
1466 : 13, 0, 14, 15, 16, 17, 18, 19, 20, 21,
1467 : 22, 23, 24, 0, 25, 26, 27, 28, 0, 0,
1468 : 0, 29, 30, 31, 32, 33, 0, 34, -336, -336,
1469 : 0, 35, 36, 37, 38, 0, 39, 0, 40, 0,
1470 : 41, 0, 0, 42, 0, 0, 0, 43, 44, 0,
1471 : 0, 46, 47, 0, 48, 49, 50, 0, 0, 0,
1472 : 0, 0, 53, 0, 54, 55, 56, 0, 0, 0,
1473 : 0, 0, 0, 0, 60, 61, 62, 63, 64, 65,
1474 : 66, 5, 6, 7, 8, 9, 0, 67, 0, 0,
1475 : 10, 0, 68, 0, 69, 70, 0, 71, 72, 73,
1476 : 74, 0, 0, 0, 693, 0, 0, 0, 0, 0,
1477 : 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1478 : 11, 12, 0, 0, 0, 0, 13, 0, 14, 15,
1479 : 16, 17, 18, 19, 20, 21, 22, 23, 24, 0,
1480 : 25, 26, 27, 28, 0, 0, 0, 29, 30, 31,
1481 : 32, 33, 0, 34, 0, 0, 0, 35, 36, 37,
1482 : 38, 0, 39, 0, 40, 0, 41, 0, 0, 42,
1483 : 0, 0, 0, 43, 44, 0, 0, 46, 47, 0,
1484 : 48, 49, 50, 0, 0, 0, 0, 0, 53, 0,
1485 : 54, 55, 56, 0, 0, 0, 0, 0, 0, 0,
1486 : 60, 61, 62, 63, 64, 65, 66, 5, 6, 7,
1487 : 8, 9, 0, 67, 0, 0, 10, 0, 68, 0,
1488 : 69, 70, 0, 71, 72, 73, 74, 0, 0, 0,
1489 : 736, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1490 : 0, 0, 0, 0, 0, 0, 11, 12, 0, 0,
1491 : 0, 0, 13, 0, 14, 15, 16, 17, 18, 19,
1492 : 20, 21, 22, 23, 24, 0, 25, 26, 27, 28,
1493 : 0, 0, 0, 29, 30, 31, 32, 33, 0, 34,
1494 : 0, 0, 0, 35, 36, 37, 38, 0, 39, 0,
1495 : 40, 0, 41, 0, 0, 42, 0, 0, 0, 43,
1496 : 44, 0, 0, 46, 47, 0, 48, 49, 50, 0,
1497 : 0, 0, 0, 0, 53, 0, 54, 55, 56, 0,
1498 : 0, 0, 0, 0, 0, 0, 60, 61, 62, 63,
1499 : 64, 65, 66, 5, 6, 7, 8, 9, 0, 67,
1500 : 0, 0, 10, 0, 68, 0, 69, 70, 0, 71,
1501 : 72, 73, 74, 191, 192, 193, 194, 195, 196, 197,
1502 : 198, 199, 200, 201, 202, 203, 204, 205, 206, 207,
1503 : 0, 208, 11, 12, 0, 0, 0, 0, 13, 0,
1504 : 14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
1505 : 24, 0, 25, 26, 27, 28, 0, 0, 0, 29,
1506 : 30, 31, 32, 33, 0, 34, 0, 0, 0, 35,
1507 : 36, 37, 38, 0, 39, 0, 40, 0, 41, 0,
1508 : 0, 42, 0, 0, 0, 43, 44, 0, 0, 46,
1509 : 47, 0, 48, 49, 50, 0, 0, 0, 0, 0,
1510 : 53, 0, 54, 55, 56, 0, 0, 0, 0, 0,
1511 : 0, 0, 60, 61, 62, 63, 64, 65, 66, 5,
1512 : 6, 7, 8, 9, 0, 67, 0, 0, 10, 0,
1513 : 68, 0, 69, 70, 0, 71, 72, 73, 74, 192,
1514 : 193, 194, 195, 196, 197, 198, 199, 200, 201, 202,
1515 : 203, 204, 205, 206, 207, 0, 208, 0, 11, 12,
1516 : 0, 0, 0, 0, 13, 0, 14, 15, 16, 17,
1517 : 18, 19, 20, 21, 22, 23, 24, 0, 25, 26,
1518 : 27, 0, 183, 184, 185, 29, 30, 31, 32, 33,
1519 : 0, 0, 0, 0, 0, 35, 384, 385, 186, 0,
1520 : 187, 188, 189, 190, 191, 192, 193, 194, 195, 196,
1521 : 197, 198, 199, 200, 201, 202, 203, 204, 205, 206,
1522 : 207, 0, 208, 29, 30, 386, 0, 0, 0, 55,
1523 : 56, 0, 0, 35, 0, 0, 0, 0, 60, 61,
1524 : 62, 63, 64, 65, 66, 5, 6, 7, 8, 9,
1525 : 0, 67, 0, 0, 10, 0, 68, 0, 145, 0,
1526 : 0, 71, 72, 73, 74, 0, 0, 0, 0, 0,
1527 : 0, 0, 0, 0, 0, 0, 0, 387, 62, 63,
1528 : 64, 65, 66, 0, 11, 12, 0, 0, 0, 0,
1529 : 13, 0, 14, 15, 16, 17, 18, 19, 20, 21,
1530 : 22, 23, 24, 0, 25, 26, 27, 183, 184, 185,
1531 : 0, 29, 30, 31, 32, 33, 0, 0, 0, 0,
1532 : 0, 35, 590, 186, 0, 187, 188, 189, 190, 191,
1533 : 192, 193, 194, 195, 196, 197, 198, 199, 200, 201,
1534 : 202, 203, 204, 205, 206, 207, 0, 208, 0, 0,
1535 : 0, 0, 0, 0, 0, 55, 56, 0, 0, 0,
1536 : 0, 0, 0, 0, 60, 61, 62, 63, 64, 65,
1537 : 66, 5, 6, 7, 8, 9, 0, 67, 0, 0,
1538 : 10, 0, 68, 0, 147, 0, 0, 71, 72, 73,
1539 : 74, -351, -351, -351, -351, 196, 197, 198, 199, 200,
1540 : 201, 202, 203, 204, 205, 206, 207, 0, 208, 0,
1541 : 11, 12, 0, 0, 0, 0, 13, 0, 14, 15,
1542 : 16, 17, 18, 19, 20, 21, 22, 23, 24, 0,
1543 : 25, 26, 27, 183, 184, 185, 0, 29, 30, 31,
1544 : 32, 33, 418, 0, 0, 0, 0, 35, 0, 186,
1545 : 0, 187, 188, 189, 190, 191, 192, 193, 194, 195,
1546 : 196, 197, 198, 199, 200, 201, 202, 203, 204, 205,
1547 : 206, 207, 0, 208, 0, 0, 0, 0, 0, 0,
1548 : 0, 55, 56, 0, 0, 0, 0, 0, 0, 0,
1549 : 60, 61, 62, 63, 64, 65, 66, 5, 6, 7,
1550 : 8, 9, 0, 67, 0, 0, 10, 0, 68, 0,
1551 : 150, 0, 0, 71, 72, 73, 74, 0, 0, 0,
1552 : 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1553 : 0, 0, 0, 0, 0, 0, 11, 12, 0, 0,
1554 : 0, 0, 13, 0, 14, 15, 16, 17, 18, 19,
1555 : 20, 21, 22, 23, 24, 0, 25, 26, 27, 183,
1556 : 184, 185, 0, 29, 30, 31, 32, 33, 442, 0,
1557 : 0, 0, 0, 35, 0, 186, 0, 187, 188, 189,
1558 : 190, 191, 192, 193, 194, 195, 196, 197, 198, 199,
1559 : 200, 201, 202, 203, 204, 205, 206, 207, 0, 208,
1560 : 0, 0, 0, 0, 0, 0, 0, 55, 56, 0,
1561 : 0, 0, 0, 0, 0, 0, 60, 61, 62, 63,
1562 : 64, 65, 66, 5, 6, 7, 8, 9, 0, 67,
1563 : 0, 0, 10, 0, 68, 238, 0, 0, 0, 71,
1564 : 72, 73, 74, 0, 0, 0, 0, 0, 0, 0,
1565 : 0, 279, 0, 0, 0, 0, 0, 0, 0, 0,
1566 : 0, 0, 11, 12, 0, 0, 0, 0, 13, 0,
1567 : 14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
1568 : 24, 0, 25, 26, 27, 183, 184, 185, 0, 29,
1569 : 30, 31, 32, 33, 462, 0, 0, 0, 0, 35,
1570 : 0, 186, 0, 187, 188, 189, 190, 191, 192, 193,
1571 : 194, 195, 196, 197, 198, 199, 200, 201, 202, 203,
1572 : 204, 205, 206, 207, 0, 208, 0, 0, 0, 0,
1573 : 0, 0, 0, 55, 56, 0, 0, 0, 0, 0,
1574 : 0, 0, 60, 61, 62, 63, 64, 65, 66, 5,
1575 : 6, 7, 8, 9, 0, 67, 0, 0, 10, 0,
1576 : 68, 0, 0, 0, 0, 71, 72, 73, 74, 0,
1577 : 0, 0, 0, 0, 0, 0, 0, 338, 0, 0,
1578 : 0, 0, 0, 0, 0, 0, 0, 0, 11, 12,
1579 : 0, 0, 0, 0, 13, 0, 14, 15, 16, 17,
1580 : 18, 19, 20, 21, 22, 23, 24, 0, 25, 26,
1581 : 27, 183, 184, 185, 0, 29, 30, 31, 32, 33,
1582 : 482, 0, 0, 0, 0, 35, 0, 186, 0, 187,
1583 : 188, 189, 190, 191, 192, 193, 194, 195, 196, 197,
1584 : 198, 199, 200, 201, 202, 203, 204, 205, 206, 207,
1585 : 0, 208, 0, 0, 0, 0, 0, 0, 0, 55,
1586 : 56, 0, 0, 0, 0, 0, 0, 0, 60, 61,
1587 : 62, 63, 64, 65, 66, 5, 6, 7, 8, 9,
1588 : 0, 67, 0, 0, 10, 0, 68, 0, 0, 0,
1589 : 0, 71, 72, 73, 74, 0, 0, 0, 0, 0,
1590 : 0, 0, 0, 364, 0, 0, 0, 0, 0, 0,
1591 : 0, 0, 0, 0, 11, 12, 0, 0, 0, 0,
1592 : 13, 0, 14, 15, 16, 17, 18, 19, 20, 21,
1593 : 22, 23, 24, 0, 25, 26, 27, 183, 184, 185,
1594 : 0, 29, 30, 31, 32, 33, 551, 0, 0, 0,
1595 : 0, 35, 0, 186, 0, 187, 188, 189, 190, 191,
1596 : 192, 193, 194, 195, 196, 197, 198, 199, 200, 201,
1597 : 202, 203, 204, 205, 206, 207, 0, 208, 0, 0,
1598 : 0, 0, 0, 0, 0, 55, 56, 0, 0, 0,
1599 : 0, 0, 0, 0, 60, 61, 62, 63, 64, 65,
1600 : 66, 5, 6, 7, 8, 9, 0, 67, 0, 0,
1601 : 10, 0, 68, 0, 0, 0, 0, 71, 72, 73,
1602 : 74, 0, 0, 0, 0, 0, 0, 0, 0, 475,
1603 : 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1604 : 11, 12, 0, 0, 0, 0, 13, 0, 14, 15,
1605 : 16, 17, 18, 19, 20, 21, 22, 23, 24, 0,
1606 : 25, 26, 27, 183, 184, 185, 0, 29, 30, 31,
1607 : 32, 33, 616, 0, 0, 0, 0, 35, 0, 186,
1608 : 492, 187, 188, 189, 190, 191, 192, 193, 194, 195,
1609 : 196, 197, 198, 199, 200, 201, 202, 203, 204, 205,
1610 : 206, 207, 0, 208, 0, 0, 0, 0, 0, 0,
1611 : 0, 55, 56, 0, 0, 0, 0, 0, 0, 0,
1612 : 60, 61, 62, 63, 64, 65, 66, 5, 6, 7,
1613 : 8, 9, 0, 67, 0, 0, 10, 0, 68, 0,
1614 : 0, 0, 0, 71, 72, 73, 74, 0, 0, 0,
1615 : 0, 0, 0, 0, 0, 477, 0, 0, 0, 0,
1616 : 0, 0, 0, 0, 0, 0, 11, 12, 0, 0,
1617 : 0, 0, 13, 0, 14, 15, 16, 17, 18, 19,
1618 : 20, 21, 22, 23, 24, 0, 25, 26, 27, 183,
1619 : 184, 185, 0, 29, 30, 31, 32, 33, 0, 0,
1620 : 0, 0, 0, 35, 0, 186, 0, 187, 188, 189,
1621 : 190, 191, 192, 193, 194, 195, 196, 197, 198, 199,
1622 : 200, 201, 202, 203, 204, 205, 206, 207, 0, 208,
1623 : 0, 0, 0, 0, 0, 0, 0, 55, 56, 0,
1624 : 0, 0, 0, 0, 0, 0, 60, 61, 62, 63,
1625 : 64, 65, 66, 5, 6, 7, 8, 9, 0, 67,
1626 : 0, 0, 10, 0, 68, 0, 0, 0, 0, 71,
1627 : 72, 73, 74, 0, 0, 0, 0, 0, 0, 0,
1628 : 0, 504, 0, 0, 0, 0, 0, 0, 0, 0,
1629 : 0, 0, 11, 12, 0, 0, 0, 0, 13, 0,
1630 : 14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
1631 : 24, 0, 25, 26, 27, 184, 185, 0, 0, 29,
1632 : 30, 31, 32, 33, 0, 0, 0, 0, 0, 35,
1633 : 186, 0, 187, 188, 189, 190, 191, 192, 193, 194,
1634 : 195, 196, 197, 198, 199, 200, 201, 202, 203, 204,
1635 : 205, 206, 207, 0, 208, 0, 0, 0, 0, 0,
1636 : 0, 0, 0, 55, 56, 0, 0, 0, 0, 0,
1637 : 0, 0, 60, 61, 62, 63, 64, 65, 66, 5,
1638 : 6, 7, 8, 9, 0, 67, 0, 0, 10, 0,
1639 : 68, 0, 0, 0, 0, 71, 72, 73, 74, 0,
1640 : 0, 0, 0, 0, 0, 0, 0, 587, 0, 0,
1641 : 0, 0, 0, 0, 0, 0, 0, 0, 11, 12,
1642 : 0, 0, 0, 0, 13, 0, 14, 15, 16, 17,
1643 : 18, 19, 20, 21, 22, 23, 24, 0, 25, 26,
1644 : 27, 0, 185, 0, 0, 29, 30, 31, 32, 33,
1645 : 0, 0, 0, 0, 0, 35, 186, 0, 187, 188,
1646 : 189, 190, 191, 192, 193, 194, 195, 196, 197, 198,
1647 : 199, 200, 201, 202, 203, 204, 205, 206, 207, 0,
1648 : 208, 0, 0, 0, 0, 0, 0, 0, 0, 55,
1649 : 56, 0, 0, 0, 0, 0, 0, 0, 60, 61,
1650 : 62, 63, 64, 65, 66, 5, 6, 7, 8, 9,
1651 : 0, 67, 0, 0, 10, 0, 68, 0, 0, 0,
1652 : 0, 71, 72, 73, 74, 0, 0, 0, 0, 0,
1653 : 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1654 : 0, 0, 0, 0, 11, 12, 0, 0, 0, 0,
1655 : 13, 0, 14, 15, 16, 17, 18, 19, 20, 21,
1656 : 22, 23, 24, 0, 25, 26, 27, 0, 0, 0,
1657 : 0, 29, 30, 31, 32, 33, 0, 0, 0, 0,
1658 : 186, 35, 187, 188, 189, 190, 191, 192, 193, 194,
1659 : 195, 196, 197, 198, 199, 200, 201, 202, 203, 204,
1660 : 205, 206, 207, 0, 208, 0, 0, 0, 0, 0,
1661 : 0, 0, 0, 0, 0, 55, 56, 0, 0, 0,
1662 : 0, 0, 0, 0, 60, 61, 62, 63, 64, 65,
1663 : 66, 5, 6, 7, 8, 9, 0, 67, 0, 0,
1664 : 10, 0, 68, 0, 0, 0, 0, 71, 72, 73,
1665 : 74, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1666 : 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1667 : 11, 12, 0, 0, 0, 0, 13, 0, 14, 15,
1668 : 16, 17, 18, 19, 20, 21, 22, 23, 24, 0,
1669 : 25, 26, 27, 183, 184, 185, 0, 29, 30, 31,
1670 : 410, 33, 0, 0, 0, 0, 0, 35, 0, 186,
1671 : 669, 187, 188, 189, 190, 191, 192, 193, 194, 195,
1672 : 196, 197, 198, 199, 200, 201, 202, 203, 204, 205,
1673 : 206, 207, 0, 208, 0, 0, 0, 0, 0, 0,
1674 : 0, 55, 56, 0, 0, 0, 0, 0, 0, 0,
1675 : 60, 61, 62, 63, 64, 65, 66, 0, 0, 0,
1676 : 0, 0, 0, 67, 183, 184, 185, 0, 68, 0,
1677 : 0, 0, 0, 71, 72, 73, 74, 0, 0, 0,
1678 : 186, 0, 187, 188, 189, 190, 191, 192, 193, 194,
1679 : 195, 196, 197, 198, 199, 200, 201, 202, 203, 204,
1680 : 205, 206, 207, 0, 208, 0, 0, 0, 0, 183,
1681 : 184, 185, 0, 0, 0, 0, 0, 0, 0, 0,
1682 : 0, 0, 0, 0, 0, 186, 670, 187, 188, 189,
1683 : 190, 191, 192, 193, 194, 195, 196, 197, 198, 199,
1684 : 200, 201, 202, 203, 204, 205, 206, 207, 0, 208,
1685 : 183, 184, 185, 0, 0, 0, 0, 0, 0, 0,
1686 : 0, 0, 0, 0, 0, 0, 186, 0, 187, 188,
1687 : 189, 190, 191, 192, 193, 194, 195, 196, 197, 198,
1688 : 199, 200, 201, 202, 203, 204, 205, 206, 207, 0,
1689 : 208, 183, 184, 185, 0, 0, 0, 209, 0, 0,
1690 : 0, 0, 0, 0, 0, 0, 0, 186, 0, 187,
1691 : 188, 189, 190, 191, 192, 193, 194, 195, 196, 197,
1692 : 198, 199, 200, 201, 202, 203, 204, 205, 206, 207,
1693 : 0, 208, 183, 184, 185, 0, 0, 0, 0, 0,
1694 : 0, 0, 253, 0, 0, 0, 0, 0, 186, 0,
1695 : 187, 188, 189, 190, 191, 192, 193, 194, 195, 196,
1696 : 197, 198, 199, 200, 201, 202, 203, 204, 205, 206,
1697 : 207, 0, 208, 183, 184, 185, 0, 0, 0, 0,
1698 : 0, 0, 0, 254, 0, 0, 0, 0, 0, 186,
1699 : 0, 187, 188, 189, 190, 191, 192, 193, 194, 195,
1700 : 196, 197, 198, 199, 200, 201, 202, 203, 204, 205,
1701 : 206, 207, 0, 208, 183, 184, 185, 0, 0, 0,
1702 : 0, 0, 0, 0, 260, 0, 0, 0, 0, 0,
1703 : 186, 0, 187, 188, 189, 190, 191, 192, 193, 194,
1704 : 195, 196, 197, 198, 199, 200, 201, 202, 203, 204,
1705 : 205, 206, 207, 0, 208, 183, 184, 185, 0, 0,
1706 : 0, 0, 0, 0, 298, 0, 0, 0, 0, 0,
1707 : 0, 186, 0, 187, 188, 189, 190, 191, 192, 193,
1708 : 194, 195, 196, 197, 198, 199, 200, 201, 202, 203,
1709 : 204, 205, 206, 207, 0, 208, 183, 184, 185, 0,
1710 : 0, 0, 0, 0, 0, 356, 0, 0, 0, 0,
1711 : 0, 0, 186, 0, 187, 188, 189, 190, 191, 192,
1712 : 193, 194, 195, 196, 197, 198, 199, 200, 201, 202,
1713 : 203, 204, 205, 206, 207, 0, 208, 183, 184, 185,
1714 : 0, 0, 0, 0, 0, 0, 362, 0, 0, 0,
1715 : 0, 0, 0, 186, 0, 187, 188, 189, 190, 191,
1716 : 192, 193, 194, 195, 196, 197, 198, 199, 200, 201,
1717 : 202, 203, 204, 205, 206, 207, 0, 208, 183, 184,
1718 : 185, 0, 0, 0, 0, 0, 0, 363, 0, 0,
1719 : 0, 0, 0, 0, 186, 0, 187, 188, 189, 190,
1720 : 191, 192, 193, 194, 195, 196, 197, 198, 199, 200,
1721 : 201, 202, 203, 204, 205, 206, 207, 0, 208, 183,
1722 : 184, 185, 0, 0, 0, 0, 0, 0, 378, 0,
1723 : 0, 0, 0, 0, 0, 186, 0, 187, 188, 189,
1724 : 190, 191, 192, 193, 194, 195, 196, 197, 198, 199,
1725 : 200, 201, 202, 203, 204, 205, 206, 207, 0, 208,
1726 : 183, 184, 185, 0, 0, 0, 0, 0, 0, 451,
1727 : 0, 0, 0, 0, 0, 0, 186, 0, 187, 188,
1728 : 189, 190, 191, 192, 193, 194, 195, 196, 197, 198,
1729 : 199, 200, 201, 202, 203, 204, 205, 206, 207, 0,
1730 : 208, 183, 184, 185, 0, 0, 0, 0, 0, 0,
1731 : 621, 0, 0, 0, 0, 0, 0, 186, 0, 187,
1732 : 188, 189, 190, 191, 192, 193, 194, 195, 196, 197,
1733 : 198, 199, 200, 201, 202, 203, 204, 205, 206, 207,
1734 : 0, 208, 183, 184, 185, 0, 0, 0, 0, 0,
1735 : 0, 735, 0, 0, 0, 0, 0, 0, 186, 0,
1736 : 187, 188, 189, 190, 191, 192, 193, 194, 195, 196,
1737 : 197, 198, 199, 200, 201, 202, 203, 204, 205, 206,
1738 : 207, 0, 208, 0, 0, 0, 0, 0, 0, 0,
1739 : 0, 0, 746, 190, 191, 192, 193, 194, 195, 196,
1740 : 197, 198, 199, 200, 201, 202, 203, 204, 205, 206,
1741 : 207, 0, 208, 404, 187, 188, 189, 190, 191, 192,
1742 : 193, 194, 195, 196, 197, 198, 199, 200, 201, 202,
1743 : 203, 204, 205, 206, 207, 0, 208, 0, 0, 0,
1744 : 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1745 : 0, 0, 0, 0, 536, 188, 189, 190, 191, 192,
1746 : 193, 194, 195, 196, 197, 198, 199, 200, 201, 202,
1747 : 203, 204, 205, 206, 207, 0, 208, 189, 190, 191,
1748 : 192, 193, 194, 195, 196, 197, 198, 199, 200, 201,
1749 : 202, 203, 204, 205, 206, 207, 0, 208
1750 : };
1751 :
1752 : static const yytype_int16 yycheck[] =
1753 : {
1754 : 23, 24, 26, 26, 182, 361, 4, 8, 452, 351,
1755 : 26, 61, 61, 8, 26, 61, 8, 359, 8, 8,
1756 : 61, 8, 26, 208, 26, 140, 5, 6, 8, 8,
1757 : 9, 10, 11, 12, 13, 14, 73, 16, 17, 18,
1758 : 19, 20, 21, 22, 8, 31, 25, 73, 8, 8,
1759 : 71, 0, 73, 8, 8, 233, 234, 36, 364, 73,
1760 : 63, 71, 46, 73, 43, 44, 8, 46, 71, 48,
1761 : 73, 13, 14, 15, 16, 17, 18, 19, 20, 21,
1762 : 22, 23, 24, 0, 259, 71, 71, 73, 73, 68,
1763 : 140, 140, 61, 143, 143, 99, 71, 143, 73, 71,
1764 : 140, 73, 143, 79, 71, 71, 73, 74, 145, 45,
1765 : 46, 47, 122, 49, 71, 71, 73, 59, 60, 145,
1766 : 140, 71, 143, 73, 145, 104, 73, 143, 132, 140,
1767 : 142, 145, 140, 112, 31, 145, 143, 160, 116, 521,
1768 : 141, 139, 145, 140, 167, 168, 169, 142, 490, 491,
1769 : 142, 120, 142, 142, 133, 142, 135, 123, 142, 145,
1770 : 145, 141, 141, 142, 140, 144, 140, 123, 143, 475,
1771 : 145, 477, 116, 145, 352, 141, 73, 141, 182, 623,
1772 : 182, 141, 141, 361, 208, 208, 141, 141, 145, 571,
1773 : 71, 573, 140, 172, 140, 145, 71, 176, 504, 141,
1774 : 92, 93, 94, 140, 208, 184, 208, 92, 93, 94,
1775 : 189, 190, 191, 192, 193, 194, 195, 196, 197, 198,
1776 : 199, 200, 201, 202, 203, 204, 205, 206, 207, 233,
1777 : 234, 233, 234, 212, 213, 214, 215, 216, 217, 218,
1778 : 219, 220, 221, 222, 223, 23, 24, 432, 227, 228,
1779 : 93, 94, 144, 93, 94, 278, 279, 241, 31, 144,
1780 : 140, 617, 241, 242, 140, 98, 245, 140, 46, 139,
1781 : 293, 613, 105, 106, 107, 108, 109, 110, 111, 140,
1782 : 8, 587, 305, 120, 263, 13, 14, 15, 16, 17,
1783 : 18, 19, 20, 21, 22, 23, 24, 653, 139, 140,
1784 : 73, 144, 300, 49, 144, 59, 60, 311, 140, 98,
1785 : 139, 144, 139, 292, 139, 338, 105, 106, 107, 108,
1786 : 109, 110, 111, 66, 67, 68, 120, 502, 92, 93,
1787 : 94, 59, 60, 312, 140, 314, 315, 316, 317, 66,
1788 : 67, 364, 517, 92, 93, 94, 66, 67, 352, 31,
1789 : 352, 66, 67, 68, 142, 144, 143, 361, 79, 361,
1790 : 268, 72, 73, 74, 142, 142, 143, 351, 142, 392,
1791 : 23, 24, 351, 13, 141, 359, 144, 118, 140, 82,
1792 : 359, 142, 160, 8, 97, 90, 561, 71, 71, 167,
1793 : 168, 169, 105, 106, 107, 108, 109, 110, 73, 422,
1794 : 42, 43, 44, 45, 46, 47, 141, 49, 432, 432,
1795 : 141, 8, 142, 141, 71, 141, 118, 140, 140, 26,
1796 : 149, 8, 141, 140, 13, 404, 144, 406, 432, 139,
1797 : 432, 454, 455, 140, 13, 71, 142, 61, 119, 617,
1798 : 140, 140, 71, 144, 141, 143, 141, 470, 446, 472,
1799 : 140, 101, 475, 71, 477, 13, 141, 436, 8, 121,
1800 : 458, 13, 485, 241, 143, 449, 140, 121, 140, 142,
1801 : 449, 142, 142, 452, 453, 653, 384, 385, 141, 8,
1802 : 149, 504, 142, 384, 385, 141, 141, 120, 149, 512,
1803 : 141, 89, 141, 141, 8, 71, 97, 144, 673, 120,
1804 : 278, 279, 481, 142, 142, 83, 490, 491, 531, 143,
1805 : 508, 490, 491, 73, 142, 293, 13, 121, 693, 498,
1806 : 499, 13, 545, 140, 699, 73, 71, 141, 507, 142,
1807 : 141, 13, 142, 13, 13, 140, 26, 68, 144, 73,
1808 : 715, 13, 565, 73, 87, 720, 73, 71, 456, 142,
1809 : 13, 141, 13, 68, 533, 456, 142, 536, 466, 467,
1810 : 338, 736, 26, 140, 587, 466, 467, 85, 143, 142,
1811 : 549, 141, 144, 351, 140, 101, 144, 73, 141, 143,
1812 : 772, 359, 757, 144, 759, 392, 364, 682, 300, 485,
1813 : 513, 766, 13, 14, 15, 16, 17, 18, 19, 20,
1814 : 21, 22, 23, 24, 300, 664, 668, 782, 61, 753,
1815 : 544, 636, 565, 617, 392, 617, 639, 550, 71, 528,
1816 : 73, 74, 266, 76, 77, 78, 713, 160, 531, 613,
1817 : 498, -1, -1, 606, 613, -1, 472, -1, 59, 60,
1818 : -1, -1, -1, -1, 623, -1, -1, -1, -1, 653,
1819 : -1, 653, 631, -1, -1, -1, -1, -1, -1, -1,
1820 : 658, 569, -1, -1, -1, -1, -1, 120, 569, -1,
1821 : -1, 449, -1, 581, -1, 583, 454, 455, -1, -1,
1822 : 581, -1, 583, 136, 137, 138, -1, -1, -1, -1,
1823 : 143, 144, 470, -1, 472, -1, 149, 475, -1, 477,
1824 : -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1825 : 689, -1, 490, 491, -1, 61, -1, -1, -1, -1,
1826 : 718, 142, -1, -1, -1, 71, 504, 73, 74, -1,
1827 : 76, 77, 78, -1, 512, 714, 13, 14, 15, 16,
1828 : 17, 18, 19, 20, 21, 22, 23, 24, -1, 747,
1829 : -1, -1, 775, 531, 36, 37, 38, 39, 40, 41,
1830 : 42, 43, 44, 45, 46, 47, -1, 49, 676, -1,
1831 : 678, 679, -1, -1, 120, 676, -1, 678, 679, -1,
1832 : -1, -1, 59, 60, -1, -1, -1, 565, -1, -1,
1833 : -1, 137, 138, -1, -1, 703, -1, 143, 144, -1,
1834 : 708, 147, 703, 149, 712, -1, -1, 708, -1, 587,
1835 : -1, 712, -1, 90, -1, -1, 724, 3, 4, 5,
1836 : 6, 7, -1, 724, -1, -1, 12, -1, -1, -1,
1837 : -1, -1, -1, 741, -1, 613, 744, -1, -1, -1,
1838 : 741, -1, -1, 744, -1, -1, -1, -1, -1, -1,
1839 : -1, -1, -1, -1, -1, -1, 42, 43, -1, -1,
1840 : -1, -1, 48, -1, 50, 51, 52, 53, 54, 55,
1841 : 56, 57, 58, 59, 60, -1, 62, 63, 64, 65,
1842 : -1, -1, -1, 69, 70, 71, 72, 73, -1, 75,
1843 : -1, 61, -1, 79, 80, 81, 82, -1, 84, -1,
1844 : 86, 71, 88, 73, 74, 91, 76, 77, 78, 95,
1845 : 96, 97, -1, 99, 100, -1, 102, 103, 104, -1,
1846 : -1, -1, 108, 109, 110, -1, 112, 113, 114, 115,
1847 : 116, 117, -1, -1, -1, -1, 122, 123, 124, 125,
1848 : 126, 127, 128, 3, 4, 5, 6, 7, -1, 135,
1849 : 120, -1, 12, -1, 140, -1, 142, 143, -1, 145,
1850 : 146, 147, 148, -1, -1, -1, -1, 137, 138, -1,
1851 : -1, -1, -1, 143, 144, -1, 146, -1, -1, 149,
1852 : -1, -1, 42, 43, -1, -1, -1, -1, 48, -1,
1853 : 50, 51, 52, 53, 54, 55, 56, 57, 58, 59,
1854 : 60, -1, 62, 63, 64, 65, -1, -1, -1, 69,
1855 : 70, 71, 72, 73, -1, 75, -1, 61, -1, 79,
1856 : 80, 81, 82, -1, 84, -1, 86, 71, 88, 73,
1857 : 74, 91, 76, 77, 78, 95, 96, 97, -1, 99,
1858 : 100, -1, 102, 103, 104, -1, -1, -1, 108, 109,
1859 : 110, -1, 112, 113, 114, 115, 116, 117, -1, -1,
1860 : -1, -1, 122, 123, 124, 125, 126, 127, 128, 3,
1861 : 4, 5, 6, 7, -1, 135, 120, -1, 12, -1,
1862 : 140, -1, 142, 143, -1, 145, 146, 147, 148, -1,
1863 : -1, -1, 26, 137, 138, -1, -1, -1, -1, 143,
1864 : 144, -1, -1, -1, 148, 149, -1, -1, 42, 43,
1865 : -1, -1, -1, -1, 48, -1, 50, 51, 52, 53,
1866 : 54, 55, 56, 57, 58, 59, 60, -1, 62, 63,
1867 : 64, 65, -1, -1, -1, 69, 70, 71, 72, 73,
1868 : -1, 75, -1, -1, -1, 79, 80, 81, 82, -1,
1869 : 84, -1, 86, -1, 88, -1, -1, 91, -1, -1,
1870 : -1, 95, 96, -1, -1, 99, 100, -1, 102, 103,
1871 : 104, -1, -1, -1, -1, -1, 110, -1, 112, 113,
1872 : 114, -1, -1, -1, -1, -1, -1, -1, 122, 123,
1873 : 124, 125, 126, 127, 128, 3, 4, 5, 6, 7,
1874 : -1, 135, -1, -1, 12, -1, 140, -1, 142, 143,
1875 : -1, 145, 146, 147, 148, -1, -1, -1, 26, -1,
1876 : -1, -1, 13, 14, 15, 16, 17, 18, 19, 20,
1877 : 21, 22, 23, 24, 42, 43, -1, -1, -1, -1,
1878 : 48, -1, 50, 51, 52, 53, 54, 55, 56, 57,
1879 : 58, 59, 60, -1, 62, 63, 64, 65, -1, -1,
1880 : -1, 69, 70, 71, 72, 73, -1, 75, 59, 60,
1881 : -1, 79, 80, 81, 82, -1, 84, -1, 86, -1,
1882 : 88, -1, -1, 91, -1, -1, -1, 95, 96, -1,
1883 : -1, 99, 100, -1, 102, 103, 104, -1, -1, -1,
1884 : -1, -1, 110, -1, 112, 113, 114, -1, -1, -1,
1885 : -1, -1, -1, -1, 122, 123, 124, 125, 126, 127,
1886 : 128, 3, 4, 5, 6, 7, -1, 135, -1, -1,
1887 : 12, -1, 140, -1, 142, 143, -1, 145, 146, 147,
1888 : 148, -1, -1, -1, 26, -1, -1, -1, -1, -1,
1889 : -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1890 : 42, 43, -1, -1, -1, -1, 48, -1, 50, 51,
1891 : 52, 53, 54, 55, 56, 57, 58, 59, 60, -1,
1892 : 62, 63, 64, 65, -1, -1, -1, 69, 70, 71,
1893 : 72, 73, -1, 75, -1, -1, -1, 79, 80, 81,
1894 : 82, -1, 84, -1, 86, -1, 88, -1, -1, 91,
1895 : -1, -1, -1, 95, 96, -1, -1, 99, 100, -1,
1896 : 102, 103, 104, -1, -1, -1, -1, -1, 110, -1,
1897 : 112, 113, 114, -1, -1, -1, -1, -1, -1, -1,
1898 : 122, 123, 124, 125, 126, 127, 128, 3, 4, 5,
1899 : 6, 7, -1, 135, -1, -1, 12, -1, 140, -1,
1900 : 142, 143, -1, 145, 146, 147, 148, -1, -1, -1,
1901 : 26, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1902 : -1, -1, -1, -1, -1, -1, 42, 43, -1, -1,
1903 : -1, -1, 48, -1, 50, 51, 52, 53, 54, 55,
1904 : 56, 57, 58, 59, 60, -1, 62, 63, 64, 65,
1905 : -1, -1, -1, 69, 70, 71, 72, 73, -1, 75,
1906 : -1, -1, -1, 79, 80, 81, 82, -1, 84, -1,
1907 : 86, -1, 88, -1, -1, 91, -1, -1, -1, 95,
1908 : 96, -1, -1, 99, 100, -1, 102, 103, 104, -1,
1909 : -1, -1, -1, -1, 110, -1, 112, 113, 114, -1,
1910 : -1, -1, -1, -1, -1, -1, 122, 123, 124, 125,
1911 : 126, 127, 128, 3, 4, 5, 6, 7, -1, 135,
1912 : -1, -1, 12, -1, 140, -1, 142, 143, -1, 145,
1913 : 146, 147, 148, 31, 32, 33, 34, 35, 36, 37,
1914 : 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
1915 : -1, 49, 42, 43, -1, -1, -1, -1, 48, -1,
1916 : 50, 51, 52, 53, 54, 55, 56, 57, 58, 59,
1917 : 60, -1, 62, 63, 64, 65, -1, -1, -1, 69,
1918 : 70, 71, 72, 73, -1, 75, -1, -1, -1, 79,
1919 : 80, 81, 82, -1, 84, -1, 86, -1, 88, -1,
1920 : -1, 91, -1, -1, -1, 95, 96, -1, -1, 99,
1921 : 100, -1, 102, 103, 104, -1, -1, -1, -1, -1,
1922 : 110, -1, 112, 113, 114, -1, -1, -1, -1, -1,
1923 : -1, -1, 122, 123, 124, 125, 126, 127, 128, 3,
1924 : 4, 5, 6, 7, -1, 135, -1, -1, 12, -1,
1925 : 140, -1, 142, 143, -1, 145, 146, 147, 148, 32,
1926 : 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
1927 : 43, 44, 45, 46, 47, -1, 49, -1, 42, 43,
1928 : -1, -1, -1, -1, 48, -1, 50, 51, 52, 53,
1929 : 54, 55, 56, 57, 58, 59, 60, -1, 62, 63,
1930 : 64, -1, 9, 10, 11, 69, 70, 71, 72, 73,
1931 : -1, -1, -1, -1, -1, 79, 42, 43, 25, -1,
1932 : 27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
1933 : 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
1934 : 47, -1, 49, 69, 70, 71, -1, -1, -1, 113,
1935 : 114, -1, -1, 79, -1, -1, -1, -1, 122, 123,
1936 : 124, 125, 126, 127, 128, 3, 4, 5, 6, 7,
1937 : -1, 135, -1, -1, 12, -1, 140, -1, 142, -1,
1938 : -1, 145, 146, 147, 148, -1, -1, -1, -1, -1,
1939 : -1, -1, -1, -1, -1, -1, -1, 123, 124, 125,
1940 : 126, 127, 128, -1, 42, 43, -1, -1, -1, -1,
1941 : 48, -1, 50, 51, 52, 53, 54, 55, 56, 57,
1942 : 58, 59, 60, -1, 62, 63, 64, 9, 10, 11,
1943 : -1, 69, 70, 71, 72, 73, -1, -1, -1, -1,
1944 : -1, 79, 149, 25, -1, 27, 28, 29, 30, 31,
1945 : 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
1946 : 42, 43, 44, 45, 46, 47, -1, 49, -1, -1,
1947 : -1, -1, -1, -1, -1, 113, 114, -1, -1, -1,
1948 : -1, -1, -1, -1, 122, 123, 124, 125, 126, 127,
1949 : 128, 3, 4, 5, 6, 7, -1, 135, -1, -1,
1950 : 12, -1, 140, -1, 142, -1, -1, 145, 146, 147,
1951 : 148, 32, 33, 34, 35, 36, 37, 38, 39, 40,
1952 : 41, 42, 43, 44, 45, 46, 47, -1, 49, -1,
1953 : 42, 43, -1, -1, -1, -1, 48, -1, 50, 51,
1954 : 52, 53, 54, 55, 56, 57, 58, 59, 60, -1,
1955 : 62, 63, 64, 9, 10, 11, -1, 69, 70, 71,
1956 : 72, 73, 144, -1, -1, -1, -1, 79, -1, 25,
1957 : -1, 27, 28, 29, 30, 31, 32, 33, 34, 35,
1958 : 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
1959 : 46, 47, -1, 49, -1, -1, -1, -1, -1, -1,
1960 : -1, 113, 114, -1, -1, -1, -1, -1, -1, -1,
1961 : 122, 123, 124, 125, 126, 127, 128, 3, 4, 5,
1962 : 6, 7, -1, 135, -1, -1, 12, -1, 140, -1,
1963 : 142, -1, -1, 145, 146, 147, 148, -1, -1, -1,
1964 : -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1965 : -1, -1, -1, -1, -1, -1, 42, 43, -1, -1,
1966 : -1, -1, 48, -1, 50, 51, 52, 53, 54, 55,
1967 : 56, 57, 58, 59, 60, -1, 62, 63, 64, 9,
1968 : 10, 11, -1, 69, 70, 71, 72, 73, 144, -1,
1969 : -1, -1, -1, 79, -1, 25, -1, 27, 28, 29,
1970 : 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
1971 : 40, 41, 42, 43, 44, 45, 46, 47, -1, 49,
1972 : -1, -1, -1, -1, -1, -1, -1, 113, 114, -1,
1973 : -1, -1, -1, -1, -1, -1, 122, 123, 124, 125,
1974 : 126, 127, 128, 3, 4, 5, 6, 7, -1, 135,
1975 : -1, -1, 12, -1, 140, 141, -1, -1, -1, 145,
1976 : 146, 147, 148, -1, -1, -1, -1, -1, -1, -1,
1977 : -1, 31, -1, -1, -1, -1, -1, -1, -1, -1,
1978 : -1, -1, 42, 43, -1, -1, -1, -1, 48, -1,
1979 : 50, 51, 52, 53, 54, 55, 56, 57, 58, 59,
1980 : 60, -1, 62, 63, 64, 9, 10, 11, -1, 69,
1981 : 70, 71, 72, 73, 144, -1, -1, -1, -1, 79,
1982 : -1, 25, -1, 27, 28, 29, 30, 31, 32, 33,
1983 : 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
1984 : 44, 45, 46, 47, -1, 49, -1, -1, -1, -1,
1985 : -1, -1, -1, 113, 114, -1, -1, -1, -1, -1,
1986 : -1, -1, 122, 123, 124, 125, 126, 127, 128, 3,
1987 : 4, 5, 6, 7, -1, 135, -1, -1, 12, -1,
1988 : 140, -1, -1, -1, -1, 145, 146, 147, 148, -1,
1989 : -1, -1, -1, -1, -1, -1, -1, 31, -1, -1,
1990 : -1, -1, -1, -1, -1, -1, -1, -1, 42, 43,
1991 : -1, -1, -1, -1, 48, -1, 50, 51, 52, 53,
1992 : 54, 55, 56, 57, 58, 59, 60, -1, 62, 63,
1993 : 64, 9, 10, 11, -1, 69, 70, 71, 72, 73,
1994 : 144, -1, -1, -1, -1, 79, -1, 25, -1, 27,
1995 : 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
1996 : 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
1997 : -1, 49, -1, -1, -1, -1, -1, -1, -1, 113,
1998 : 114, -1, -1, -1, -1, -1, -1, -1, 122, 123,
1999 : 124, 125, 126, 127, 128, 3, 4, 5, 6, 7,
2000 : -1, 135, -1, -1, 12, -1, 140, -1, -1, -1,
2001 : -1, 145, 146, 147, 148, -1, -1, -1, -1, -1,
2002 : -1, -1, -1, 31, -1, -1, -1, -1, -1, -1,
2003 : -1, -1, -1, -1, 42, 43, -1, -1, -1, -1,
2004 : 48, -1, 50, 51, 52, 53, 54, 55, 56, 57,
2005 : 58, 59, 60, -1, 62, 63, 64, 9, 10, 11,
2006 : -1, 69, 70, 71, 72, 73, 144, -1, -1, -1,
2007 : -1, 79, -1, 25, -1, 27, 28, 29, 30, 31,
2008 : 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
2009 : 42, 43, 44, 45, 46, 47, -1, 49, -1, -1,
2010 : -1, -1, -1, -1, -1, 113, 114, -1, -1, -1,
2011 : -1, -1, -1, -1, 122, 123, 124, 125, 126, 127,
2012 : 128, 3, 4, 5, 6, 7, -1, 135, -1, -1,
2013 : 12, -1, 140, -1, -1, -1, -1, 145, 146, 147,
2014 : 148, -1, -1, -1, -1, -1, -1, -1, -1, 31,
2015 : -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2016 : 42, 43, -1, -1, -1, -1, 48, -1, 50, 51,
2017 : 52, 53, 54, 55, 56, 57, 58, 59, 60, -1,
2018 : 62, 63, 64, 9, 10, 11, -1, 69, 70, 71,
2019 : 72, 73, 144, -1, -1, -1, -1, 79, -1, 25,
2020 : 26, 27, 28, 29, 30, 31, 32, 33, 34, 35,
2021 : 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
2022 : 46, 47, -1, 49, -1, -1, -1, -1, -1, -1,
2023 : -1, 113, 114, -1, -1, -1, -1, -1, -1, -1,
2024 : 122, 123, 124, 125, 126, 127, 128, 3, 4, 5,
2025 : 6, 7, -1, 135, -1, -1, 12, -1, 140, -1,
2026 : -1, -1, -1, 145, 146, 147, 148, -1, -1, -1,
2027 : -1, -1, -1, -1, -1, 31, -1, -1, -1, -1,
2028 : -1, -1, -1, -1, -1, -1, 42, 43, -1, -1,
2029 : -1, -1, 48, -1, 50, 51, 52, 53, 54, 55,
2030 : 56, 57, 58, 59, 60, -1, 62, 63, 64, 9,
2031 : 10, 11, -1, 69, 70, 71, 72, 73, -1, -1,
2032 : -1, -1, -1, 79, -1, 25, -1, 27, 28, 29,
2033 : 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
2034 : 40, 41, 42, 43, 44, 45, 46, 47, -1, 49,
2035 : -1, -1, -1, -1, -1, -1, -1, 113, 114, -1,
2036 : -1, -1, -1, -1, -1, -1, 122, 123, 124, 125,
2037 : 126, 127, 128, 3, 4, 5, 6, 7, -1, 135,
2038 : -1, -1, 12, -1, 140, -1, -1, -1, -1, 145,
2039 : 146, 147, 148, -1, -1, -1, -1, -1, -1, -1,
2040 : -1, 31, -1, -1, -1, -1, -1, -1, -1, -1,
2041 : -1, -1, 42, 43, -1, -1, -1, -1, 48, -1,
2042 : 50, 51, 52, 53, 54, 55, 56, 57, 58, 59,
2043 : 60, -1, 62, 63, 64, 10, 11, -1, -1, 69,
2044 : 70, 71, 72, 73, -1, -1, -1, -1, -1, 79,
2045 : 25, -1, 27, 28, 29, 30, 31, 32, 33, 34,
2046 : 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
2047 : 45, 46, 47, -1, 49, -1, -1, -1, -1, -1,
2048 : -1, -1, -1, 113, 114, -1, -1, -1, -1, -1,
2049 : -1, -1, 122, 123, 124, 125, 126, 127, 128, 3,
2050 : 4, 5, 6, 7, -1, 135, -1, -1, 12, -1,
2051 : 140, -1, -1, -1, -1, 145, 146, 147, 148, -1,
2052 : -1, -1, -1, -1, -1, -1, -1, 31, -1, -1,
2053 : -1, -1, -1, -1, -1, -1, -1, -1, 42, 43,
2054 : -1, -1, -1, -1, 48, -1, 50, 51, 52, 53,
2055 : 54, 55, 56, 57, 58, 59, 60, -1, 62, 63,
2056 : 64, -1, 11, -1, -1, 69, 70, 71, 72, 73,
2057 : -1, -1, -1, -1, -1, 79, 25, -1, 27, 28,
2058 : 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
2059 : 39, 40, 41, 42, 43, 44, 45, 46, 47, -1,
2060 : 49, -1, -1, -1, -1, -1, -1, -1, -1, 113,
2061 : 114, -1, -1, -1, -1, -1, -1, -1, 122, 123,
2062 : 124, 125, 126, 127, 128, 3, 4, 5, 6, 7,
2063 : -1, 135, -1, -1, 12, -1, 140, -1, -1, -1,
2064 : -1, 145, 146, 147, 148, -1, -1, -1, -1, -1,
2065 : -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2066 : -1, -1, -1, -1, 42, 43, -1, -1, -1, -1,
2067 : 48, -1, 50, 51, 52, 53, 54, 55, 56, 57,
2068 : 58, 59, 60, -1, 62, 63, 64, -1, -1, -1,
2069 : -1, 69, 70, 71, 72, 73, -1, -1, -1, -1,
2070 : 25, 79, 27, 28, 29, 30, 31, 32, 33, 34,
2071 : 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
2072 : 45, 46, 47, -1, 49, -1, -1, -1, -1, -1,
2073 : -1, -1, -1, -1, -1, 113, 114, -1, -1, -1,
2074 : -1, -1, -1, -1, 122, 123, 124, 125, 126, 127,
2075 : 128, 3, 4, 5, 6, 7, -1, 135, -1, -1,
2076 : 12, -1, 140, -1, -1, -1, -1, 145, 146, 147,
2077 : 148, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2078 : -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2079 : 42, 43, -1, -1, -1, -1, 48, -1, 50, 51,
2080 : 52, 53, 54, 55, 56, 57, 58, 59, 60, -1,
2081 : 62, 63, 64, 9, 10, 11, -1, 69, 70, 71,
2082 : 72, 73, -1, -1, -1, -1, -1, 79, -1, 25,
2083 : 26, 27, 28, 29, 30, 31, 32, 33, 34, 35,
2084 : 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
2085 : 46, 47, -1, 49, -1, -1, -1, -1, -1, -1,
2086 : -1, 113, 114, -1, -1, -1, -1, -1, -1, -1,
2087 : 122, 123, 124, 125, 126, 127, 128, -1, -1, -1,
2088 : -1, -1, -1, 135, 9, 10, 11, -1, 140, -1,
2089 : -1, -1, -1, 145, 146, 147, 148, -1, -1, -1,
2090 : 25, -1, 27, 28, 29, 30, 31, 32, 33, 34,
2091 : 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
2092 : 45, 46, 47, -1, 49, -1, -1, -1, -1, 9,
2093 : 10, 11, -1, -1, -1, -1, -1, -1, -1, -1,
2094 : -1, -1, -1, -1, -1, 25, 142, 27, 28, 29,
2095 : 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
2096 : 40, 41, 42, 43, 44, 45, 46, 47, -1, 49,
2097 : 9, 10, 11, -1, -1, -1, -1, -1, -1, -1,
2098 : -1, -1, -1, -1, -1, -1, 25, -1, 27, 28,
2099 : 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
2100 : 39, 40, 41, 42, 43, 44, 45, 46, 47, -1,
2101 : 49, 9, 10, 11, -1, -1, -1, 142, -1, -1,
2102 : -1, -1, -1, -1, -1, -1, -1, 25, -1, 27,
2103 : 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
2104 : 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
2105 : -1, 49, 9, 10, 11, -1, -1, -1, -1, -1,
2106 : -1, -1, 142, -1, -1, -1, -1, -1, 25, -1,
2107 : 27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
2108 : 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
2109 : 47, -1, 49, 9, 10, 11, -1, -1, -1, -1,
2110 : -1, -1, -1, 142, -1, -1, -1, -1, -1, 25,
2111 : -1, 27, 28, 29, 30, 31, 32, 33, 34, 35,
2112 : 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
2113 : 46, 47, -1, 49, 9, 10, 11, -1, -1, -1,
2114 : -1, -1, -1, -1, 142, -1, -1, -1, -1, -1,
2115 : 25, -1, 27, 28, 29, 30, 31, 32, 33, 34,
2116 : 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
2117 : 45, 46, 47, -1, 49, 9, 10, 11, -1, -1,
2118 : -1, -1, -1, -1, 141, -1, -1, -1, -1, -1,
2119 : -1, 25, -1, 27, 28, 29, 30, 31, 32, 33,
2120 : 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
2121 : 44, 45, 46, 47, -1, 49, 9, 10, 11, -1,
2122 : -1, -1, -1, -1, -1, 141, -1, -1, -1, -1,
2123 : -1, -1, 25, -1, 27, 28, 29, 30, 31, 32,
2124 : 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
2125 : 43, 44, 45, 46, 47, -1, 49, 9, 10, 11,
2126 : -1, -1, -1, -1, -1, -1, 141, -1, -1, -1,
2127 : -1, -1, -1, 25, -1, 27, 28, 29, 30, 31,
2128 : 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
2129 : 42, 43, 44, 45, 46, 47, -1, 49, 9, 10,
2130 : 11, -1, -1, -1, -1, -1, -1, 141, -1, -1,
2131 : -1, -1, -1, -1, 25, -1, 27, 28, 29, 30,
2132 : 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
2133 : 41, 42, 43, 44, 45, 46, 47, -1, 49, 9,
2134 : 10, 11, -1, -1, -1, -1, -1, -1, 141, -1,
2135 : -1, -1, -1, -1, -1, 25, -1, 27, 28, 29,
2136 : 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
2137 : 40, 41, 42, 43, 44, 45, 46, 47, -1, 49,
2138 : 9, 10, 11, -1, -1, -1, -1, -1, -1, 141,
2139 : -1, -1, -1, -1, -1, -1, 25, -1, 27, 28,
2140 : 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
2141 : 39, 40, 41, 42, 43, 44, 45, 46, 47, -1,
2142 : 49, 9, 10, 11, -1, -1, -1, -1, -1, -1,
2143 : 141, -1, -1, -1, -1, -1, -1, 25, -1, 27,
2144 : 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
2145 : 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
2146 : -1, 49, 9, 10, 11, -1, -1, -1, -1, -1,
2147 : -1, 141, -1, -1, -1, -1, -1, -1, 25, -1,
2148 : 27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
2149 : 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
2150 : 47, -1, 49, -1, -1, -1, -1, -1, -1, -1,
2151 : -1, -1, 141, 30, 31, 32, 33, 34, 35, 36,
2152 : 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
2153 : 47, -1, 49, 121, 27, 28, 29, 30, 31, 32,
2154 : 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
2155 : 43, 44, 45, 46, 47, -1, 49, -1, -1, -1,
2156 : -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2157 : -1, -1, -1, -1, 121, 28, 29, 30, 31, 32,
2158 : 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
2159 : 43, 44, 45, 46, 47, -1, 49, 29, 30, 31,
2160 : 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
2161 : 42, 43, 44, 45, 46, 47, -1, 49
2162 : };
2163 :
2164 : /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
2165 : symbol of state STATE-NUM. */
2166 : static const yytype_uint16 yystos[] =
2167 : {
2168 : 0, 151, 152, 0, 153, 3, 4, 5, 6, 7,
2169 : 12, 42, 43, 48, 50, 51, 52, 53, 54, 55,
2170 : 56, 57, 58, 59, 60, 62, 63, 64, 65, 69,
2171 : 70, 71, 72, 73, 75, 79, 80, 81, 82, 84,
2172 : 86, 88, 91, 95, 96, 97, 99, 100, 102, 103,
2173 : 104, 108, 109, 110, 112, 113, 114, 115, 116, 117,
2174 : 122, 123, 124, 125, 126, 127, 128, 135, 140, 142,
2175 : 143, 145, 146, 147, 148, 154, 158, 159, 190, 191,
2176 : 193, 196, 199, 201, 247, 258, 263, 272, 275, 279,
2177 : 280, 283, 285, 293, 294, 295, 296, 297, 298, 304,
2178 : 314, 317, 279, 279, 140, 279, 279, 279, 279, 279,
2179 : 279, 279, 257, 279, 279, 279, 279, 279, 279, 279,
2180 : 71, 263, 283, 285, 283, 279, 71, 263, 264, 265,
2181 : 296, 297, 304, 140, 270, 140, 140, 243, 279, 166,
2182 : 140, 140, 140, 176, 140, 142, 279, 142, 279, 194,
2183 : 142, 247, 279, 285, 177, 279, 79, 140, 189, 73,
2184 : 145, 228, 229, 116, 116, 73, 230, 140, 140, 140,
2185 : 140, 140, 140, 310, 279, 155, 143, 310, 310, 310,
2186 : 71, 71, 139, 9, 10, 11, 25, 27, 28, 29,
2187 : 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
2188 : 40, 41, 42, 43, 44, 45, 46, 47, 49, 142,
2189 : 59, 60, 13, 14, 15, 16, 17, 18, 19, 20,
2190 : 21, 22, 23, 24, 284, 140, 120, 61, 143, 145,
2191 : 297, 279, 279, 139, 139, 250, 120, 297, 141, 279,
2192 : 279, 259, 8, 142, 158, 164, 244, 245, 279, 247,
2193 : 285, 140, 279, 142, 142, 31, 192, 142, 142, 143,
2194 : 142, 79, 142, 143, 280, 285, 8, 142, 13, 8,
2195 : 142, 187, 188, 285, 285, 315, 285, 141, 248, 31,
2196 : 279, 308, 309, 61, 71, 73, 74, 76, 77, 78,
2197 : 120, 136, 137, 138, 143, 144, 149, 311, 141, 144,
2198 : 156, 279, 146, 147, 148, 118, 200, 198, 71, 293,
2199 : 297, 304, 253, 279, 254, 255, 251, 252, 279, 279,
2200 : 279, 279, 279, 279, 279, 279, 279, 279, 279, 279,
2201 : 279, 279, 279, 279, 279, 279, 279, 264, 31, 279,
2202 : 279, 279, 279, 279, 279, 279, 279, 279, 279, 279,
2203 : 279, 262, 286, 279, 299, 279, 141, 71, 293, 140,
2204 : 271, 266, 141, 141, 31, 226, 227, 247, 285, 279,
2205 : 82, 279, 142, 8, 90, 90, 71, 210, 141, 71,
2206 : 155, 141, 279, 229, 42, 43, 71, 123, 272, 273,
2207 : 274, 73, 8, 141, 8, 141, 141, 142, 122, 285,
2208 : 305, 306, 281, 285, 121, 141, 8, 277, 61, 120,
2209 : 72, 279, 285, 115, 157, 158, 190, 191, 144, 71,
2210 : 263, 197, 118, 202, 140, 140, 297, 279, 279, 279,
2211 : 279, 279, 63, 285, 226, 71, 143, 293, 300, 302,
2212 : 303, 149, 144, 226, 300, 26, 160, 281, 141, 8,
2213 : 140, 141, 168, 246, 174, 172, 13, 8, 141, 171,
2214 : 195, 144, 144, 273, 273, 139, 140, 13, 188, 142,
2215 : 316, 140, 8, 141, 282, 31, 279, 31, 279, 312,
2216 : 71, 61, 144, 144, 140, 119, 203, 204, 263, 143,
2217 : 260, 261, 26, 264, 141, 279, 301, 287, 61, 143,
2218 : 141, 267, 162, 158, 31, 247, 285, 167, 165, 244,
2219 : 279, 285, 31, 206, 285, 273, 71, 26, 158, 209,
2220 : 26, 143, 211, 140, 101, 71, 273, 276, 278, 273,
2221 : 285, 307, 306, 13, 281, 281, 121, 71, 73, 74,
2222 : 313, 279, 141, 204, 143, 8, 231, 226, 226, 256,
2223 : 249, 144, 140, 291, 299, 279, 268, 155, 161, 281,
2224 : 279, 26, 158, 216, 142, 121, 205, 285, 205, 13,
2225 : 155, 142, 212, 142, 212, 71, 123, 223, 224, 225,
2226 : 140, 121, 141, 8, 277, 305, 279, 31, 279, 149,
2227 : 149, 142, 231, 263, 98, 105, 106, 107, 108, 109,
2228 : 110, 111, 144, 232, 237, 238, 239, 240, 242, 141,
2229 : 141, 279, 271, 292, 288, 149, 144, 120, 269, 163,
2230 : 217, 141, 155, 169, 206, 141, 141, 273, 89, 212,
2231 : 92, 93, 94, 212, 144, 141, 8, 31, 73, 178,
2232 : 273, 273, 141, 281, 144, 144, 71, 233, 97, 240,
2233 : 8, 142, 226, 120, 289, 300, 219, 66, 67, 221,
2234 : 142, 83, 244, 175, 173, 142, 92, 142, 279, 26,
2235 : 142, 215, 144, 143, 225, 73, 13, 263, 121, 13,
2236 : 73, 241, 234, 71, 141, 300, 66, 67, 222, 140,
2237 : 158, 142, 141, 26, 158, 208, 208, 142, 215, 214,
2238 : 155, 31, 73, 13, 273, 179, 273, 273, 13, 8,
2239 : 142, 192, 13, 290, 140, 26, 68, 279, 170, 155,
2240 : 213, 155, 144, 73, 13, 273, 73, 273, 73, 71,
2241 : 273, 291, 279, 155, 142, 141, 26, 158, 207, 87,
2242 : 155, 13, 273, 141, 13, 235, 141, 218, 155, 142,
2243 : 273, 180, 273, 140, 26, 158, 85, 143, 223, 220,
2244 : 142, 155, 141, 155, 144, 142, 143, 236, 181, 155,
2245 : 101, 182, 183, 184, 144, 140, 184, 263, 185, 73,
2246 : 141, 186, 143, 155, 144
2247 : };
2248 :
2249 : #define yyerrok (yyerrstatus = 0)
2250 : #define yyclearin (yychar = YYEMPTY)
2251 : #define YYEMPTY (-2)
2252 : #define YYEOF 0
2253 :
2254 : #define YYACCEPT goto yyacceptlab
2255 : #define YYABORT goto yyabortlab
2256 : #define YYERROR goto yyerrorlab
2257 :
2258 :
2259 : /* Like YYERROR except do call yyerror. This remains here temporarily
2260 : to ease the transition to the new meaning of YYERROR, for GCC.
2261 : Once GCC version 2 has supplanted version 1, this can go. */
2262 :
2263 : #define YYFAIL goto yyerrlab
2264 :
2265 : #define YYRECOVERING() (!!yyerrstatus)
2266 :
2267 : #define YYBACKUP(Token, Value) \
2268 : do \
2269 : if (yychar == YYEMPTY && yylen == 1) \
2270 : { \
2271 : yychar = (Token); \
2272 : yylval = (Value); \
2273 : yytoken = YYTRANSLATE (yychar); \
2274 : YYPOPSTACK (1); \
2275 : goto yybackup; \
2276 : } \
2277 : else \
2278 : { \
2279 : yyerror (YY_("syntax error: cannot back up")); \
2280 : YYERROR; \
2281 : } \
2282 : while (YYID (0))
2283 :
2284 :
2285 : #define YYTERROR 1
2286 : #define YYERRCODE 256
2287 :
2288 :
2289 : /* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N].
2290 : If N is 0, then set CURRENT to the empty location which ends
2291 : the previous symbol: RHS[0] (always defined). */
2292 :
2293 : #define YYRHSLOC(Rhs, K) ((Rhs)[K])
2294 : #ifndef YYLLOC_DEFAULT
2295 : # define YYLLOC_DEFAULT(Current, Rhs, N) \
2296 : do \
2297 : if (YYID (N)) \
2298 : { \
2299 : (Current).first_line = YYRHSLOC (Rhs, 1).first_line; \
2300 : (Current).first_column = YYRHSLOC (Rhs, 1).first_column; \
2301 : (Current).last_line = YYRHSLOC (Rhs, N).last_line; \
2302 : (Current).last_column = YYRHSLOC (Rhs, N).last_column; \
2303 : } \
2304 : else \
2305 : { \
2306 : (Current).first_line = (Current).last_line = \
2307 : YYRHSLOC (Rhs, 0).last_line; \
2308 : (Current).first_column = (Current).last_column = \
2309 : YYRHSLOC (Rhs, 0).last_column; \
2310 : } \
2311 : while (YYID (0))
2312 : #endif
2313 :
2314 :
2315 : /* YY_LOCATION_PRINT -- Print the location on the stream.
2316 : This macro was not mandated originally: define only if we know
2317 : we won't break user code: when these are the locations we know. */
2318 :
2319 : #ifndef YY_LOCATION_PRINT
2320 : # if YYLTYPE_IS_TRIVIAL
2321 : # define YY_LOCATION_PRINT(File, Loc) \
2322 : fprintf (File, "%d.%d-%d.%d", \
2323 : (Loc).first_line, (Loc).first_column, \
2324 : (Loc).last_line, (Loc).last_column)
2325 : # else
2326 : # define YY_LOCATION_PRINT(File, Loc) ((void) 0)
2327 : # endif
2328 : #endif
2329 :
2330 :
2331 : /* YYLEX -- calling `yylex' with the right arguments. */
2332 :
2333 : #ifdef YYLEX_PARAM
2334 : # define YYLEX yylex (&yylval, YYLEX_PARAM)
2335 : #else
2336 : # define YYLEX yylex (&yylval)
2337 : #endif
2338 :
2339 : /* Enable debugging if requested. */
2340 : #if YYDEBUG
2341 :
2342 : # ifndef YYFPRINTF
2343 : # include <stdio.h> /* INFRINGES ON USER NAME SPACE */
2344 : # define YYFPRINTF fprintf
2345 : # endif
2346 :
2347 : # define YYDPRINTF(Args) \
2348 : do { \
2349 : if (yydebug) \
2350 : YYFPRINTF Args; \
2351 : } while (YYID (0))
2352 :
2353 : # define YY_SYMBOL_PRINT(Title, Type, Value, Location) \
2354 : do { \
2355 : if (yydebug) \
2356 : { \
2357 : YYFPRINTF (stderr, "%s ", Title); \
2358 : yy_symbol_print (stderr, \
2359 : Type, Value); \
2360 : YYFPRINTF (stderr, "\n"); \
2361 : } \
2362 : } while (YYID (0))
2363 :
2364 :
2365 : /*--------------------------------.
2366 : | Print this symbol on YYOUTPUT. |
2367 : `--------------------------------*/
2368 :
2369 : /*ARGSUSED*/
2370 : #if (defined __STDC__ || defined __C99__FUNC__ \
2371 : || defined __cplusplus || defined _MSC_VER)
2372 : static void
2373 : yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep)
2374 : #else
2375 : static void
2376 : yy_symbol_value_print (yyoutput, yytype, yyvaluep)
2377 : FILE *yyoutput;
2378 : int yytype;
2379 : YYSTYPE const * const yyvaluep;
2380 : #endif
2381 : {
2382 : if (!yyvaluep)
2383 : return;
2384 : # ifdef YYPRINT
2385 : if (yytype < YYNTOKENS)
2386 : YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
2387 : # else
2388 : YYUSE (yyoutput);
2389 : # endif
2390 : switch (yytype)
2391 : {
2392 : default:
2393 : break;
2394 : }
2395 : }
2396 :
2397 :
2398 : /*--------------------------------.
2399 : | Print this symbol on YYOUTPUT. |
2400 : `--------------------------------*/
2401 :
2402 : #if (defined __STDC__ || defined __C99__FUNC__ \
2403 : || defined __cplusplus || defined _MSC_VER)
2404 : static void
2405 : yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep)
2406 : #else
2407 : static void
2408 : yy_symbol_print (yyoutput, yytype, yyvaluep)
2409 : FILE *yyoutput;
2410 : int yytype;
2411 : YYSTYPE const * const yyvaluep;
2412 : #endif
2413 : {
2414 : if (yytype < YYNTOKENS)
2415 : YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
2416 : else
2417 : YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);
2418 :
2419 : yy_symbol_value_print (yyoutput, yytype, yyvaluep);
2420 : YYFPRINTF (yyoutput, ")");
2421 : }
2422 :
2423 : /*------------------------------------------------------------------.
2424 : | yy_stack_print -- Print the state stack from its BOTTOM up to its |
2425 : | TOP (included). |
2426 : `------------------------------------------------------------------*/
2427 :
2428 : #if (defined __STDC__ || defined __C99__FUNC__ \
2429 : || defined __cplusplus || defined _MSC_VER)
2430 : static void
2431 : yy_stack_print (yytype_int16 *bottom, yytype_int16 *top)
2432 : #else
2433 : static void
2434 : yy_stack_print (bottom, top)
2435 : yytype_int16 *bottom;
2436 : yytype_int16 *top;
2437 : #endif
2438 : {
2439 : YYFPRINTF (stderr, "Stack now");
2440 : for (; bottom <= top; ++bottom)
2441 : YYFPRINTF (stderr, " %d", *bottom);
2442 : YYFPRINTF (stderr, "\n");
2443 : }
2444 :
2445 : # define YY_STACK_PRINT(Bottom, Top) \
2446 : do { \
2447 : if (yydebug) \
2448 : yy_stack_print ((Bottom), (Top)); \
2449 : } while (YYID (0))
2450 :
2451 :
2452 : /*------------------------------------------------.
2453 : | Report that the YYRULE is going to be reduced. |
2454 : `------------------------------------------------*/
2455 :
2456 : #if (defined __STDC__ || defined __C99__FUNC__ \
2457 : || defined __cplusplus || defined _MSC_VER)
2458 : static void
2459 : yy_reduce_print (YYSTYPE *yyvsp, int yyrule)
2460 : #else
2461 : static void
2462 : yy_reduce_print (yyvsp, yyrule)
2463 : YYSTYPE *yyvsp;
2464 : int yyrule;
2465 : #endif
2466 : {
2467 : int yynrhs = yyr2[yyrule];
2468 : int yyi;
2469 : unsigned long int yylno = yyrline[yyrule];
2470 : YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n",
2471 : yyrule - 1, yylno);
2472 : /* The symbols being reduced. */
2473 : for (yyi = 0; yyi < yynrhs; yyi++)
2474 : {
2475 : fprintf (stderr, " $%d = ", yyi + 1);
2476 : yy_symbol_print (stderr, yyrhs[yyprhs[yyrule] + yyi],
2477 : &(yyvsp[(yyi + 1) - (yynrhs)])
2478 : );
2479 : fprintf (stderr, "\n");
2480 : }
2481 : }
2482 :
2483 : # define YY_REDUCE_PRINT(Rule) \
2484 : do { \
2485 : if (yydebug) \
2486 : yy_reduce_print (yyvsp, Rule); \
2487 : } while (YYID (0))
2488 :
2489 : /* Nonzero means print parse trace. It is left uninitialized so that
2490 : multiple parsers can coexist. */
2491 : int yydebug;
2492 : #else /* !YYDEBUG */
2493 : # define YYDPRINTF(Args)
2494 : # define YY_SYMBOL_PRINT(Title, Type, Value, Location)
2495 : # define YY_STACK_PRINT(Bottom, Top)
2496 : # define YY_REDUCE_PRINT(Rule)
2497 : #endif /* !YYDEBUG */
2498 :
2499 :
2500 : /* YYINITDEPTH -- initial size of the parser's stacks. */
2501 : #ifndef YYINITDEPTH
2502 : # define YYINITDEPTH 200
2503 : #endif
2504 :
2505 : /* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
2506 : if the built-in stack extension method is used).
2507 :
2508 : Do not make this value too large; the results are undefined if
2509 : YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
2510 : evaluated with infinite-precision integer arithmetic. */
2511 :
2512 : #ifndef YYMAXDEPTH
2513 : # define YYMAXDEPTH 10000
2514 : #endif
2515 :
2516 :
2517 :
2518 : #if YYERROR_VERBOSE
2519 :
2520 : # ifndef yystrlen
2521 : # if defined __GLIBC__ && defined _STRING_H
2522 : # define yystrlen strlen
2523 : # else
2524 : /* Return the length of YYSTR. */
2525 : #if (defined __STDC__ || defined __C99__FUNC__ \
2526 : || defined __cplusplus || defined _MSC_VER)
2527 : static YYSIZE_T
2528 : yystrlen (const char *yystr)
2529 : #else
2530 : static YYSIZE_T
2531 : yystrlen (yystr)
2532 : const char *yystr;
2533 : #endif
2534 : {
2535 : YYSIZE_T yylen;
2536 : for (yylen = 0; yystr[yylen]; yylen++)
2537 : continue;
2538 : return yylen;
2539 : }
2540 : # endif
2541 : # endif
2542 :
2543 : # ifndef yystpcpy
2544 : # if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
2545 : # define yystpcpy stpcpy
2546 : # else
2547 : /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
2548 : YYDEST. */
2549 : #if (defined __STDC__ || defined __C99__FUNC__ \
2550 : || defined __cplusplus || defined _MSC_VER)
2551 : static char *
2552 : yystpcpy (char *yydest, const char *yysrc)
2553 : #else
2554 : static char *
2555 : yystpcpy (yydest, yysrc)
2556 : char *yydest;
2557 : const char *yysrc;
2558 : #endif
2559 0 : {
2560 0 : char *yyd = yydest;
2561 0 : const char *yys = yysrc;
2562 :
2563 0 : while ((*yyd++ = *yys++) != '\0')
2564 : continue;
2565 :
2566 0 : return yyd - 1;
2567 : }
2568 : # endif
2569 : # endif
2570 :
2571 : # ifndef yytnamerr
2572 : /* Copy to YYRES the contents of YYSTR after stripping away unnecessary
2573 : quotes and backslashes, so that it's suitable for yyerror. The
2574 : heuristic is that double-quoting is unnecessary unless the string
2575 : contains an apostrophe, a comma, or backslash (other than
2576 : backslash-backslash). YYSTR is taken from yytname. If YYRES is
2577 : null, do not copy; instead, return the length of what the result
2578 : would have been. */
2579 : static YYSIZE_T
2580 : yytnamerr (char *yyres, const char *yystr)
2581 0 : {
2582 0 : if (*yystr == '"')
2583 : {
2584 0 : YYSIZE_T yyn = 0;
2585 0 : char const *yyp = yystr;
2586 :
2587 : for (;;)
2588 0 : switch (*++yyp)
2589 : {
2590 : case '\'':
2591 : case ',':
2592 0 : goto do_not_strip_quotes;
2593 :
2594 : case '\\':
2595 0 : if (*++yyp != '\\')
2596 0 : goto do_not_strip_quotes;
2597 : /* Fall through. */
2598 : default:
2599 0 : if (yyres)
2600 0 : yyres[yyn] = *yyp;
2601 0 : yyn++;
2602 : break;
2603 :
2604 : case '"':
2605 0 : if (yyres)
2606 0 : yyres[yyn] = '\0';
2607 0 : return yyn;
2608 0 : }
2609 0 : do_not_strip_quotes: ;
2610 : }
2611 :
2612 0 : if (! yyres)
2613 0 : return yystrlen (yystr);
2614 :
2615 0 : return yystpcpy (yyres, yystr) - yyres;
2616 : }
2617 : # endif
2618 :
2619 : /* Copy into YYRESULT an error message about the unexpected token
2620 : YYCHAR while in state YYSTATE. Return the number of bytes copied,
2621 : including the terminating null byte. If YYRESULT is null, do not
2622 : copy anything; just return the number of bytes that would be
2623 : copied. As a special case, return 0 if an ordinary "syntax error"
2624 : message will do. Return YYSIZE_MAXIMUM if overflow occurs during
2625 : size calculation. */
2626 : static YYSIZE_T
2627 : yysyntax_error (char *yyresult, int yystate, int yychar)
2628 0 : {
2629 0 : int yyn = yypact[yystate];
2630 :
2631 0 : if (! (YYPACT_NINF < yyn && yyn <= YYLAST))
2632 0 : return 0;
2633 : else
2634 : {
2635 0 : int yytype = YYTRANSLATE (yychar);
2636 0 : YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]);
2637 0 : YYSIZE_T yysize = yysize0;
2638 : YYSIZE_T yysize1;
2639 0 : int yysize_overflow = 0;
2640 : enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
2641 : char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
2642 : int yyx;
2643 :
2644 : # if 0
2645 : /* This is so xgettext sees the translatable formats that are
2646 : constructed on the fly. */
2647 : YY_("syntax error, unexpected %s");
2648 : YY_("syntax error, unexpected %s, expecting %s");
2649 : YY_("syntax error, unexpected %s, expecting %s or %s");
2650 : YY_("syntax error, unexpected %s, expecting %s or %s or %s");
2651 : YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s");
2652 : # endif
2653 : char *yyfmt;
2654 : char const *yyf;
2655 : static char const yyunexpected[] = "syntax error, unexpected %s";
2656 : static char const yyexpecting[] = ", expecting %s";
2657 : static char const yyor[] = " or %s";
2658 : char yyformat[sizeof yyunexpected
2659 : + sizeof yyexpecting - 1
2660 : + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2)
2661 : * (sizeof yyor - 1))];
2662 0 : char const *yyprefix = yyexpecting;
2663 :
2664 : /* Start YYX at -YYN if negative to avoid negative indexes in
2665 : YYCHECK. */
2666 0 : int yyxbegin = yyn < 0 ? -yyn : 0;
2667 :
2668 : /* Stay within bounds of both yycheck and yytname. */
2669 0 : int yychecklim = YYLAST - yyn + 1;
2670 0 : int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
2671 0 : int yycount = 1;
2672 :
2673 0 : yyarg[0] = yytname[yytype];
2674 0 : yyfmt = yystpcpy (yyformat, yyunexpected);
2675 :
2676 0 : for (yyx = yyxbegin; yyx < yyxend; ++yyx)
2677 0 : if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
2678 : {
2679 0 : if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
2680 : {
2681 0 : yycount = 1;
2682 0 : yysize = yysize0;
2683 0 : yyformat[sizeof yyunexpected - 1] = '\0';
2684 0 : break;
2685 : }
2686 0 : yyarg[yycount++] = yytname[yyx];
2687 0 : yysize1 = yysize + yytnamerr (0, yytname[yyx]);
2688 0 : yysize_overflow |= (yysize1 < yysize);
2689 0 : yysize = yysize1;
2690 0 : yyfmt = yystpcpy (yyfmt, yyprefix);
2691 0 : yyprefix = yyor;
2692 : }
2693 :
2694 0 : yyf = YY_(yyformat);
2695 0 : yysize1 = yysize + yystrlen (yyf);
2696 0 : yysize_overflow |= (yysize1 < yysize);
2697 0 : yysize = yysize1;
2698 :
2699 0 : if (yysize_overflow)
2700 0 : return YYSIZE_MAXIMUM;
2701 :
2702 0 : if (yyresult)
2703 : {
2704 : /* Avoid sprintf, as that infringes on the user's name space.
2705 : Don't have undefined behavior even if the translation
2706 : produced a string with the wrong number of "%s"s. */
2707 0 : char *yyp = yyresult;
2708 0 : int yyi = 0;
2709 0 : while ((*yyp = *yyf) != '\0')
2710 : {
2711 0 : if (*yyp == '%' && yyf[1] == 's' && yyi < yycount)
2712 : {
2713 0 : yyp += yytnamerr (yyp, yyarg[yyi++]);
2714 0 : yyf += 2;
2715 : }
2716 : else
2717 : {
2718 0 : yyp++;
2719 0 : yyf++;
2720 : }
2721 : }
2722 : }
2723 0 : return yysize;
2724 : }
2725 : }
2726 : #endif /* YYERROR_VERBOSE */
2727 :
2728 :
2729 : /*-----------------------------------------------.
2730 : | Release the memory associated to this symbol. |
2731 : `-----------------------------------------------*/
2732 :
2733 : /*ARGSUSED*/
2734 : #if (defined __STDC__ || defined __C99__FUNC__ \
2735 : || defined __cplusplus || defined _MSC_VER)
2736 : static void
2737 : yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep)
2738 : #else
2739 : static void
2740 : yydestruct (yymsg, yytype, yyvaluep)
2741 : const char *yymsg;
2742 : int yytype;
2743 : YYSTYPE *yyvaluep;
2744 : #endif
2745 335 : {
2746 : YYUSE (yyvaluep);
2747 :
2748 335 : if (!yymsg)
2749 0 : yymsg = "Deleting";
2750 : YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
2751 :
2752 : switch (yytype)
2753 : {
2754 :
2755 : default:
2756 : break;
2757 : }
2758 335 : }
2759 :
2760 :
2761 : /* Prevent warnings from -Wmissing-prototypes. */
2762 :
2763 : #ifdef YYPARSE_PARAM
2764 : #if defined __STDC__ || defined __cplusplus
2765 : int yyparse (void *YYPARSE_PARAM);
2766 : #else
2767 : int yyparse ();
2768 : #endif
2769 : #else /* ! YYPARSE_PARAM */
2770 : #if defined __STDC__ || defined __cplusplus
2771 : int yyparse (void);
2772 : #else
2773 : int yyparse ();
2774 : #endif
2775 : #endif /* ! YYPARSE_PARAM */
2776 :
2777 :
2778 :
2779 :
2780 :
2781 :
2782 : /*----------.
2783 : | yyparse. |
2784 : `----------*/
2785 :
2786 : #ifdef YYPARSE_PARAM
2787 : #if (defined __STDC__ || defined __C99__FUNC__ \
2788 : || defined __cplusplus || defined _MSC_VER)
2789 : int
2790 : yyparse (void *YYPARSE_PARAM)
2791 : #else
2792 : int
2793 : yyparse (YYPARSE_PARAM)
2794 : void *YYPARSE_PARAM;
2795 : #endif
2796 : #else /* ! YYPARSE_PARAM */
2797 : #if (defined __STDC__ || defined __C99__FUNC__ \
2798 : || defined __cplusplus || defined _MSC_VER)
2799 : int
2800 : yyparse (void)
2801 : #else
2802 : int
2803 : yyparse ()
2804 :
2805 : #endif
2806 : #endif
2807 335 : {
2808 : /* The look-ahead symbol. */
2809 : int yychar;
2810 :
2811 : /* The semantic value of the look-ahead symbol. */
2812 : YYSTYPE yylval;
2813 :
2814 : /* Number of syntax errors so far. */
2815 : int yynerrs;
2816 :
2817 : int yystate;
2818 : int yyn;
2819 : int yyresult;
2820 : /* Number of tokens to shift before error messages enabled. */
2821 : int yyerrstatus;
2822 : /* Look-ahead token as an internal (translated) token number. */
2823 335 : int yytoken = 0;
2824 : #if YYERROR_VERBOSE
2825 : /* Buffer for error messages, and its allocated size. */
2826 : char yymsgbuf[128];
2827 335 : char *yymsg = yymsgbuf;
2828 335 : YYSIZE_T yymsg_alloc = sizeof yymsgbuf;
2829 : #endif
2830 :
2831 : /* Three stacks and their tools:
2832 : `yyss': related to states,
2833 : `yyvs': related to semantic values,
2834 : `yyls': related to locations.
2835 :
2836 : Refer to the stacks thru separate pointers, to allow yyoverflow
2837 : to reallocate them elsewhere. */
2838 :
2839 : /* The state stack. */
2840 : yytype_int16 yyssa[YYINITDEPTH];
2841 335 : yytype_int16 *yyss = yyssa;
2842 : yytype_int16 *yyssp;
2843 :
2844 : /* The semantic value stack. */
2845 : YYSTYPE yyvsa[YYINITDEPTH];
2846 335 : YYSTYPE *yyvs = yyvsa;
2847 : YYSTYPE *yyvsp;
2848 :
2849 :
2850 :
2851 : #define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N))
2852 :
2853 335 : YYSIZE_T yystacksize = YYINITDEPTH;
2854 :
2855 : /* The variables used to return semantic value and location from the
2856 : action routines. */
2857 : YYSTYPE yyval;
2858 :
2859 :
2860 : /* The number of symbols on the RHS of the reduced rule.
2861 : Keep to zero when no symbol should be popped. */
2862 335 : int yylen = 0;
2863 :
2864 : YYDPRINTF ((stderr, "Starting parse\n"));
2865 :
2866 335 : yystate = 0;
2867 335 : yyerrstatus = 0;
2868 335 : yynerrs = 0;
2869 335 : yychar = YYEMPTY; /* Cause a token to be read. */
2870 :
2871 : /* Initialize stack pointers.
2872 : Waste one element of value and location stack
2873 : so that they stay on the same level as the state stack.
2874 : The wasted elements are never initialized. */
2875 :
2876 335 : yyssp = yyss;
2877 335 : yyvsp = yyvs;
2878 :
2879 335 : goto yysetstate;
2880 :
2881 : /*------------------------------------------------------------.
2882 : | yynewstate -- Push a new state, which is found in yystate. |
2883 : `------------------------------------------------------------*/
2884 157152 : yynewstate:
2885 : /* In all cases, when you get here, the value and location stacks
2886 : have just been pushed. So pushing a state here evens the stacks. */
2887 157152 : yyssp++;
2888 :
2889 157487 : yysetstate:
2890 157487 : *yyssp = yystate;
2891 :
2892 157487 : if (yyss + yystacksize - 1 <= yyssp)
2893 : {
2894 : /* Get the current used size of the three stacks, in elements. */
2895 0 : YYSIZE_T yysize = yyssp - yyss + 1;
2896 :
2897 : #ifdef yyoverflow
2898 : {
2899 : /* Give user a chance to reallocate the stack. Use copies of
2900 : these so that the &'s don't force the real ones into
2901 : memory. */
2902 : YYSTYPE *yyvs1 = yyvs;
2903 : yytype_int16 *yyss1 = yyss;
2904 :
2905 :
2906 : /* Each stack pointer address is followed by the size of the
2907 : data in use in that stack, in bytes. This used to be a
2908 : conditional around just the two extra args, but that might
2909 : be undefined if yyoverflow is a macro. */
2910 : yyoverflow (YY_("memory exhausted"),
2911 : &yyss1, yysize * sizeof (*yyssp),
2912 : &yyvs1, yysize * sizeof (*yyvsp),
2913 :
2914 : &yystacksize);
2915 :
2916 : yyss = yyss1;
2917 : yyvs = yyvs1;
2918 : }
2919 : #else /* no yyoverflow */
2920 : # ifndef YYSTACK_RELOCATE
2921 : goto yyexhaustedlab;
2922 : # else
2923 : /* Extend the stack our own way. */
2924 0 : if (YYMAXDEPTH <= yystacksize)
2925 0 : goto yyexhaustedlab;
2926 0 : yystacksize *= 2;
2927 0 : if (YYMAXDEPTH < yystacksize)
2928 0 : yystacksize = YYMAXDEPTH;
2929 :
2930 : {
2931 0 : yytype_int16 *yyss1 = yyss;
2932 : union yyalloc *yyptr =
2933 0 : (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
2934 0 : if (! yyptr)
2935 0 : goto yyexhaustedlab;
2936 0 : YYSTACK_RELOCATE (yyss);
2937 0 : YYSTACK_RELOCATE (yyvs);
2938 :
2939 : # undef YYSTACK_RELOCATE
2940 0 : if (yyss1 != yyssa)
2941 0 : YYSTACK_FREE (yyss1);
2942 : }
2943 : # endif
2944 : #endif /* no yyoverflow */
2945 :
2946 0 : yyssp = yyss + yysize - 1;
2947 0 : yyvsp = yyvs + yysize - 1;
2948 :
2949 :
2950 : YYDPRINTF ((stderr, "Stack size increased to %lu\n",
2951 : (unsigned long int) yystacksize));
2952 :
2953 0 : if (yyss + yystacksize - 1 <= yyssp)
2954 0 : YYABORT;
2955 : }
2956 :
2957 : YYDPRINTF ((stderr, "Entering state %d\n", yystate));
2958 :
2959 : goto yybackup;
2960 :
2961 : /*-----------.
2962 : | yybackup. |
2963 : `-----------*/
2964 157487 : yybackup:
2965 :
2966 : /* Do appropriate processing given the current state. Read a
2967 : look-ahead token if we need one and don't already have one. */
2968 :
2969 : /* First try to decide what to do without reference to look-ahead token. */
2970 157487 : yyn = yypact[yystate];
2971 157487 : if (yyn == YYPACT_NINF)
2972 73696 : goto yydefault;
2973 :
2974 : /* Not known => get a look-ahead token if don't already have one. */
2975 :
2976 : /* YYCHAR is either YYEMPTY or YYEOF or a valid look-ahead symbol. */
2977 83791 : if (yychar == YYEMPTY)
2978 : {
2979 : YYDPRINTF ((stderr, "Reading a token: "));
2980 45069 : yychar = YYLEX;
2981 : }
2982 :
2983 83791 : if (yychar <= YYEOF)
2984 : {
2985 670 : yychar = yytoken = YYEOF;
2986 : YYDPRINTF ((stderr, "Now at end of input.\n"));
2987 : }
2988 : else
2989 : {
2990 83121 : yytoken = YYTRANSLATE (yychar);
2991 : YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
2992 : }
2993 :
2994 : /* If the proper action on seeing token YYTOKEN is to reduce or to
2995 : detect an error, take that action. */
2996 83791 : yyn += yytoken;
2997 83791 : if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
2998 : goto yydefault;
2999 52026 : yyn = yytable[yyn];
3000 52026 : if (yyn <= 0)
3001 : {
3002 6957 : if (yyn == 0 || yyn == YYTABLE_NINF)
3003 : goto yyerrlab;
3004 6957 : yyn = -yyn;
3005 6957 : goto yyreduce;
3006 : }
3007 :
3008 45069 : if (yyn == YYFINAL)
3009 335 : YYACCEPT;
3010 :
3011 : /* Count tokens shifted since error; after three, turn off error
3012 : status. */
3013 44734 : if (yyerrstatus)
3014 0 : yyerrstatus--;
3015 :
3016 : /* Shift the look-ahead token. */
3017 : YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
3018 :
3019 : /* Discard the shifted token unless it is eof. */
3020 44734 : if (yychar != YYEOF)
3021 44734 : yychar = YYEMPTY;
3022 :
3023 44734 : yystate = yyn;
3024 44734 : *++yyvsp = yylval;
3025 :
3026 44734 : goto yynewstate;
3027 :
3028 :
3029 : /*-----------------------------------------------------------.
3030 : | yydefault -- do the default action for the current state. |
3031 : `-----------------------------------------------------------*/
3032 105461 : yydefault:
3033 105461 : yyn = yydefact[yystate];
3034 105461 : if (yyn == 0)
3035 0 : goto yyerrlab;
3036 : goto yyreduce;
3037 :
3038 :
3039 : /*-----------------------------.
3040 : | yyreduce -- Do a reduction. |
3041 : `-----------------------------*/
3042 112418 : yyreduce:
3043 : /* yyn is the number of a rule to reduce with. */
3044 112418 : yylen = yyr2[yyn];
3045 :
3046 : /* If YYLEN is nonzero, implement the default value of the action:
3047 : `$$ = $1'.
3048 :
3049 : Otherwise, the following line sets YYVAL to garbage.
3050 : This behavior is undocumented and Bison
3051 : users should not rely upon it. Assigning to YYVAL
3052 : unconditionally makes the parser a bit smaller, and it avoids a
3053 : GCC warning that YYVAL may be used uninitialized. */
3054 112418 : yyval = yyvsp[1-yylen];
3055 :
3056 :
3057 : YY_REDUCE_PRINT (yyn);
3058 112418 : switch (yyn)
3059 : {
3060 : case 3:
3061 : #line 156 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3062 : { zend_do_extended_info(TSRMLS_C); }
3063 : break;
3064 :
3065 : case 4:
3066 : #line 156 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3067 : { HANDLE_INTERACTIVE(); }
3068 : break;
3069 :
3070 : case 7:
3071 : #line 163 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3072 : { zend_do_early_binding(TSRMLS_C); }
3073 : break;
3074 :
3075 : case 8:
3076 : #line 164 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3077 : { zend_do_early_binding(TSRMLS_C); }
3078 : break;
3079 :
3080 : case 9:
3081 : #line 165 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3082 : { zend_do_halt_compiler_register(TSRMLS_C); YYACCEPT; }
3083 : break;
3084 :
3085 : case 10:
3086 : #line 170 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3087 : { zend_do_extended_info(TSRMLS_C); }
3088 : break;
3089 :
3090 : case 11:
3091 : #line 170 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3092 : { HANDLE_INTERACTIVE(); }
3093 : break;
3094 :
3095 : case 16:
3096 : #line 179 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3097 : { zend_error(E_COMPILE_ERROR, "__HALT_COMPILER() can only be used from the outermost scope"); }
3098 : break;
3099 :
3100 : case 17:
3101 : #line 184 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3102 : { zend_do_ticks(TSRMLS_C); }
3103 : break;
3104 :
3105 : case 19:
3106 : #line 189 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3107 : { zend_do_if_cond(&(yyvsp[(3) - (4)]), &(yyvsp[(4) - (4)]) TSRMLS_CC); }
3108 : break;
3109 :
3110 : case 20:
3111 : #line 189 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3112 : { zend_do_if_after_statement(&(yyvsp[(4) - (6)]), 1 TSRMLS_CC); }
3113 : break;
3114 :
3115 : case 21:
3116 : #line 189 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3117 : { zend_do_if_end(TSRMLS_C); }
3118 : break;
3119 :
3120 : case 22:
3121 : #line 190 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3122 : { zend_do_if_cond(&(yyvsp[(3) - (5)]), &(yyvsp[(4) - (5)]) TSRMLS_CC); }
3123 : break;
3124 :
3125 : case 23:
3126 : #line 190 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3127 : { zend_do_if_after_statement(&(yyvsp[(4) - (7)]), 1 TSRMLS_CC); }
3128 : break;
3129 :
3130 : case 24:
3131 : #line 190 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3132 : { zend_do_if_end(TSRMLS_C); }
3133 : break;
3134 :
3135 : case 25:
3136 : #line 191 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3137 : { (yyvsp[(1) - (2)]).u.opline_num = get_next_op_number(CG(active_op_array)); }
3138 : break;
3139 :
3140 : case 26:
3141 : #line 191 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3142 : { zend_do_while_cond(&(yyvsp[(4) - (5)]), &(yyvsp[(5) - (5)]) TSRMLS_CC); }
3143 : break;
3144 :
3145 : case 27:
3146 : #line 191 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3147 : { zend_do_while_end(&(yyvsp[(1) - (7)]), &(yyvsp[(5) - (7)]) TSRMLS_CC); }
3148 : break;
3149 :
3150 : case 28:
3151 : #line 192 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3152 : { (yyvsp[(1) - (1)]).u.opline_num = get_next_op_number(CG(active_op_array)); zend_do_do_while_begin(TSRMLS_C); }
3153 : break;
3154 :
3155 : case 29:
3156 : #line 192 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3157 : { (yyvsp[(5) - (5)]).u.opline_num = get_next_op_number(CG(active_op_array)); }
3158 : break;
3159 :
3160 : case 30:
3161 : #line 192 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3162 : { zend_do_do_while_end(&(yyvsp[(1) - (9)]), &(yyvsp[(5) - (9)]), &(yyvsp[(7) - (9)]) TSRMLS_CC); }
3163 : break;
3164 :
3165 : case 31:
3166 : #line 196 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3167 : { zend_do_free(&(yyvsp[(3) - (4)]) TSRMLS_CC); (yyvsp[(4) - (4)]).u.opline_num = get_next_op_number(CG(active_op_array)); }
3168 : break;
3169 :
3170 : case 32:
3171 : #line 198 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3172 : { zend_do_extended_info(TSRMLS_C); zend_do_for_cond(&(yyvsp[(6) - (7)]), &(yyvsp[(7) - (7)]) TSRMLS_CC); }
3173 : break;
3174 :
3175 : case 33:
3176 : #line 200 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3177 : { zend_do_free(&(yyvsp[(9) - (10)]) TSRMLS_CC); zend_do_for_before_statement(&(yyvsp[(4) - (10)]), &(yyvsp[(7) - (10)]) TSRMLS_CC); }
3178 : break;
3179 :
3180 : case 34:
3181 : #line 201 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3182 : { zend_do_for_end(&(yyvsp[(7) - (12)]) TSRMLS_CC); }
3183 : break;
3184 :
3185 : case 35:
3186 : #line 202 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3187 : { zend_do_switch_cond(&(yyvsp[(3) - (4)]) TSRMLS_CC); }
3188 : break;
3189 :
3190 : case 36:
3191 : #line 202 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3192 : { zend_do_switch_end(&(yyvsp[(6) - (6)]) TSRMLS_CC); }
3193 : break;
3194 :
3195 : case 37:
3196 : #line 203 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3197 : { zend_do_brk_cont(ZEND_BRK, NULL TSRMLS_CC); }
3198 : break;
3199 :
3200 : case 38:
3201 : #line 204 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3202 : { zend_do_brk_cont(ZEND_BRK, &(yyvsp[(2) - (3)]) TSRMLS_CC); }
3203 : break;
3204 :
3205 : case 39:
3206 : #line 205 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3207 : { zend_do_brk_cont(ZEND_CONT, NULL TSRMLS_CC); }
3208 : break;
3209 :
3210 : case 40:
3211 : #line 206 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3212 : { zend_do_brk_cont(ZEND_CONT, &(yyvsp[(2) - (3)]) TSRMLS_CC); }
3213 : break;
3214 :
3215 : case 41:
3216 : #line 207 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3217 : { zend_do_return(NULL, 0 TSRMLS_CC); }
3218 : break;
3219 :
3220 : case 42:
3221 : #line 208 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3222 : { zend_do_return(&(yyvsp[(2) - (3)]), 0 TSRMLS_CC); }
3223 : break;
3224 :
3225 : case 43:
3226 : #line 209 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3227 : { zend_do_return(&(yyvsp[(2) - (3)]), 1 TSRMLS_CC); }
3228 : break;
3229 :
3230 : case 47:
3231 : #line 213 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3232 : { zend_do_echo(&(yyvsp[(1) - (1)]) TSRMLS_CC); }
3233 : break;
3234 :
3235 : case 48:
3236 : #line 214 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3237 : { zend_do_free(&(yyvsp[(1) - (2)]) TSRMLS_CC); }
3238 : break;
3239 :
3240 : case 49:
3241 : #line 215 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3242 : { zend_error(E_COMPILE_ERROR,"use: Not yet supported. Please use include_once() or require_once()"); zval_dtor(&(yyvsp[(2) - (3)]).u.constant); }
3243 : break;
3244 :
3245 : case 51:
3246 : #line 218 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3247 : { zend_do_foreach_begin(&(yyvsp[(1) - (4)]), &(yyvsp[(2) - (4)]), &(yyvsp[(3) - (4)]), &(yyvsp[(4) - (4)]), 1 TSRMLS_CC); }
3248 : break;
3249 :
3250 : case 52:
3251 : #line 219 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3252 : { zend_do_foreach_cont(&(yyvsp[(1) - (8)]), &(yyvsp[(2) - (8)]), &(yyvsp[(4) - (8)]), &(yyvsp[(6) - (8)]), &(yyvsp[(7) - (8)]) TSRMLS_CC); }
3253 : break;
3254 :
3255 : case 53:
3256 : #line 220 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3257 : { zend_do_foreach_end(&(yyvsp[(1) - (10)]), &(yyvsp[(4) - (10)]) TSRMLS_CC); }
3258 : break;
3259 :
3260 : case 54:
3261 : #line 222 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3262 : { zend_do_foreach_begin(&(yyvsp[(1) - (4)]), &(yyvsp[(2) - (4)]), &(yyvsp[(3) - (4)]), &(yyvsp[(4) - (4)]), 0 TSRMLS_CC); }
3263 : break;
3264 :
3265 : case 55:
3266 : #line 223 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3267 : { zend_check_writable_variable(&(yyvsp[(6) - (8)])); zend_do_foreach_cont(&(yyvsp[(1) - (8)]), &(yyvsp[(2) - (8)]), &(yyvsp[(4) - (8)]), &(yyvsp[(6) - (8)]), &(yyvsp[(7) - (8)]) TSRMLS_CC); }
3268 : break;
3269 :
3270 : case 56:
3271 : #line 224 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3272 : { zend_do_foreach_end(&(yyvsp[(1) - (10)]), &(yyvsp[(4) - (10)]) TSRMLS_CC); }
3273 : break;
3274 :
3275 : case 57:
3276 : #line 225 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3277 : { (yyvsp[(1) - (1)]).u.opline_num = get_next_op_number(CG(active_op_array)); zend_do_declare_begin(TSRMLS_C); }
3278 : break;
3279 :
3280 : case 58:
3281 : #line 225 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3282 : { zend_do_declare_end(&(yyvsp[(1) - (6)]) TSRMLS_CC); }
3283 : break;
3284 :
3285 : case 60:
3286 : #line 227 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3287 : { zend_do_try(&(yyvsp[(1) - (1)]) TSRMLS_CC); }
3288 : break;
3289 :
3290 : case 61:
3291 : #line 228 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3292 : { zend_initialize_try_catch_element(&(yyvsp[(1) - (7)]) TSRMLS_CC); }
3293 : break;
3294 :
3295 : case 62:
3296 : #line 229 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3297 : { zend_do_first_catch(&(yyvsp[(7) - (9)]) TSRMLS_CC); }
3298 : break;
3299 :
3300 : case 63:
3301 : #line 230 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3302 : { zend_do_begin_catch(&(yyvsp[(1) - (12)]), &(yyvsp[(9) - (12)]), &(yyvsp[(11) - (12)]), 1 TSRMLS_CC); }
3303 : break;
3304 :
3305 : case 64:
3306 : #line 231 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3307 : { zend_do_end_catch(&(yyvsp[(1) - (16)]) TSRMLS_CC); }
3308 : break;
3309 :
3310 : case 65:
3311 : #line 232 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3312 : { zend_do_mark_last_catch(&(yyvsp[(7) - (18)]), &(yyvsp[(18) - (18)]) TSRMLS_CC); }
3313 : break;
3314 :
3315 : case 66:
3316 : #line 233 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3317 : { zend_do_throw(&(yyvsp[(2) - (3)]) TSRMLS_CC); }
3318 : break;
3319 :
3320 : case 67:
3321 : #line 238 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3322 : { (yyval) = (yyvsp[(1) - (1)]); }
3323 : break;
3324 :
3325 : case 68:
3326 : #line 239 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3327 : { (yyval).u.opline_num = -1; }
3328 : break;
3329 :
3330 : case 69:
3331 : #line 243 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3332 : { (yyval) = (yyvsp[(1) - (1)]); }
3333 : break;
3334 :
3335 : case 70:
3336 : #line 244 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3337 : { (yyval) = (yyvsp[(2) - (2)]); }
3338 : break;
3339 :
3340 : case 71:
3341 : #line 249 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3342 : { (yyval).u.opline_num = get_next_op_number(CG(active_op_array)); }
3343 : break;
3344 :
3345 : case 72:
3346 : #line 249 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3347 : { zend_do_begin_catch(&(yyvsp[(1) - (6)]), &(yyvsp[(3) - (6)]), &(yyvsp[(5) - (6)]), 0 TSRMLS_CC); }
3348 : break;
3349 :
3350 : case 73:
3351 : #line 249 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3352 : { zend_do_end_catch(&(yyvsp[(1) - (10)]) TSRMLS_CC); }
3353 : break;
3354 :
3355 : case 76:
3356 : #line 259 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3357 : { zend_do_end_variable_parse(BP_VAR_UNSET, 0 TSRMLS_CC); zend_do_unset(&(yyvsp[(1) - (1)]) TSRMLS_CC); }
3358 : break;
3359 :
3360 : case 77:
3361 : #line 263 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3362 : { (yyval) = (yyvsp[(1) - (1)]); }
3363 : break;
3364 :
3365 : case 78:
3366 : #line 264 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3367 : { (yyval) = (yyvsp[(2) - (3)]); }
3368 : break;
3369 :
3370 : case 79:
3371 : #line 269 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3372 : { zend_do_ticks(TSRMLS_C); }
3373 : break;
3374 :
3375 : case 80:
3376 : #line 273 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3377 : { zend_do_ticks(TSRMLS_C); }
3378 : break;
3379 :
3380 : case 81:
3381 : #line 278 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3382 : { (yyval).op_type = ZEND_RETURN_VAL; }
3383 : break;
3384 :
3385 : case 82:
3386 : #line 279 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3387 : { (yyval).op_type = ZEND_RETURN_REF; }
3388 : break;
3389 :
3390 : case 83:
3391 : #line 284 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3392 : { (yyvsp[(1) - (1)]).u.opline_num = CG(zend_lineno); }
3393 : break;
3394 :
3395 : case 84:
3396 : #line 284 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3397 : { zend_do_begin_function_declaration(&(yyvsp[(1) - (4)]), &(yyvsp[(4) - (4)]), 0, (yyvsp[(3) - (4)]).op_type, NULL TSRMLS_CC); }
3398 : break;
3399 :
3400 : case 85:
3401 : #line 285 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3402 : { zend_do_end_function_declaration(&(yyvsp[(1) - (11)]) TSRMLS_CC); }
3403 : break;
3404 :
3405 : case 86:
3406 : #line 290 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3407 : { zend_do_begin_class_declaration(&(yyvsp[(1) - (3)]), &(yyvsp[(2) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
3408 : break;
3409 :
3410 : case 87:
3411 : #line 294 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3412 : { zend_do_end_class_declaration(&(yyvsp[(1) - (8)]), &(yyvsp[(2) - (8)]) TSRMLS_CC); }
3413 : break;
3414 :
3415 : case 88:
3416 : #line 296 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3417 : { zend_do_begin_class_declaration(&(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]), NULL TSRMLS_CC); }
3418 : break;
3419 :
3420 : case 89:
3421 : #line 300 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3422 : { zend_do_end_class_declaration(&(yyvsp[(1) - (7)]), &(yyvsp[(2) - (7)]) TSRMLS_CC); }
3423 : break;
3424 :
3425 : case 90:
3426 : #line 305 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3427 : { (yyval).u.opline_num = CG(zend_lineno); (yyval).u.EA.type = 0; }
3428 : break;
3429 :
3430 : case 91:
3431 : #line 306 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3432 : { (yyval).u.opline_num = CG(zend_lineno); (yyval).u.EA.type = ZEND_ACC_EXPLICIT_ABSTRACT_CLASS; }
3433 : break;
3434 :
3435 : case 92:
3436 : #line 307 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3437 : { (yyval).u.opline_num = CG(zend_lineno); (yyval).u.EA.type = ZEND_ACC_FINAL_CLASS; }
3438 : break;
3439 :
3440 : case 93:
3441 : #line 311 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3442 : { (yyval).op_type = IS_UNUSED; }
3443 : break;
3444 :
3445 : case 94:
3446 : #line 312 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3447 : { (yyval) = (yyvsp[(2) - (2)]); }
3448 : break;
3449 :
3450 : case 95:
3451 : #line 316 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3452 : { (yyval).u.opline_num = CG(zend_lineno); (yyval).u.EA.type = ZEND_ACC_INTERFACE; }
3453 : break;
3454 :
3455 : case 100:
3456 : #line 330 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3457 : { zend_do_implements_interface(&(yyvsp[(1) - (1)]) TSRMLS_CC); }
3458 : break;
3459 :
3460 : case 101:
3461 : #line 331 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3462 : { zend_do_implements_interface(&(yyvsp[(3) - (3)]) TSRMLS_CC); }
3463 : break;
3464 :
3465 : case 102:
3466 : #line 335 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3467 : { (yyval).op_type = IS_UNUSED; }
3468 : break;
3469 :
3470 : case 103:
3471 : #line 336 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3472 : { (yyval) = (yyvsp[(2) - (2)]); }
3473 : break;
3474 :
3475 : case 104:
3476 : #line 341 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3477 : { zend_check_writable_variable(&(yyvsp[(1) - (1)])); (yyval) = (yyvsp[(1) - (1)]); }
3478 : break;
3479 :
3480 : case 105:
3481 : #line 342 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3482 : { zend_check_writable_variable(&(yyvsp[(2) - (2)])); (yyval) = (yyvsp[(2) - (2)]); (yyval).u.EA.type |= ZEND_PARSED_REFERENCE_VARIABLE; }
3483 : break;
3484 :
3485 : case 112:
3486 : #line 364 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3487 : { zend_do_declare_stmt(&(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
3488 : break;
3489 :
3490 : case 113:
3491 : #line 365 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3492 : { zend_do_declare_stmt(&(yyvsp[(3) - (5)]), &(yyvsp[(5) - (5)]) TSRMLS_CC); }
3493 : break;
3494 :
3495 : case 114:
3496 : #line 370 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3497 : { (yyval) = (yyvsp[(2) - (3)]); }
3498 : break;
3499 :
3500 : case 115:
3501 : #line 371 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3502 : { (yyval) = (yyvsp[(3) - (4)]); }
3503 : break;
3504 :
3505 : case 116:
3506 : #line 372 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3507 : { (yyval) = (yyvsp[(2) - (4)]); }
3508 : break;
3509 :
3510 : case 117:
3511 : #line 373 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3512 : { (yyval) = (yyvsp[(3) - (5)]); }
3513 : break;
3514 :
3515 : case 118:
3516 : #line 378 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3517 : { (yyval).op_type = IS_UNUSED; }
3518 : break;
3519 :
3520 : case 119:
3521 : #line 379 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3522 : { zend_do_extended_info(TSRMLS_C); zend_do_case_before_statement(&(yyvsp[(1) - (4)]), &(yyvsp[(2) - (4)]), &(yyvsp[(3) - (4)]) TSRMLS_CC); }
3523 : break;
3524 :
3525 : case 120:
3526 : #line 379 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3527 : { zend_do_case_after_statement(&(yyval), &(yyvsp[(2) - (6)]) TSRMLS_CC); (yyval).op_type = IS_CONST; }
3528 : break;
3529 :
3530 : case 121:
3531 : #line 380 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3532 : { zend_do_extended_info(TSRMLS_C); zend_do_default_before_statement(&(yyvsp[(1) - (3)]), &(yyvsp[(2) - (3)]) TSRMLS_CC); }
3533 : break;
3534 :
3535 : case 122:
3536 : #line 380 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3537 : { zend_do_case_after_statement(&(yyval), &(yyvsp[(2) - (5)]) TSRMLS_CC); (yyval).op_type = IS_CONST; }
3538 : break;
3539 :
3540 : case 128:
3541 : #line 399 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3542 : { zend_do_if_cond(&(yyvsp[(4) - (5)]), &(yyvsp[(5) - (5)]) TSRMLS_CC); }
3543 : break;
3544 :
3545 : case 129:
3546 : #line 399 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3547 : { zend_do_if_after_statement(&(yyvsp[(5) - (7)]), 0 TSRMLS_CC); }
3548 : break;
3549 :
3550 : case 131:
3551 : #line 405 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3552 : { zend_do_if_cond(&(yyvsp[(4) - (6)]), &(yyvsp[(5) - (6)]) TSRMLS_CC); }
3553 : break;
3554 :
3555 : case 132:
3556 : #line 405 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3557 : { zend_do_if_after_statement(&(yyvsp[(5) - (8)]), 0 TSRMLS_CC); }
3558 : break;
3559 :
3560 : case 139:
3561 : #line 428 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3562 : { znode tmp; fetch_simple_variable(&tmp, &(yyvsp[(2) - (2)]), 0 TSRMLS_CC); (yyval).op_type = IS_CONST; Z_LVAL((yyval).u.constant)=1; Z_TYPE((yyval).u.constant)=IS_LONG; INIT_PZVAL(&(yyval).u.constant); zend_do_receive_arg(ZEND_RECV, &tmp, &(yyval), NULL, &(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]), 0 TSRMLS_CC); }
3563 : break;
3564 :
3565 : case 140:
3566 : #line 429 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3567 : { znode tmp; fetch_simple_variable(&tmp, &(yyvsp[(3) - (3)]), 0 TSRMLS_CC); (yyval).op_type = IS_CONST; Z_LVAL((yyval).u.constant)=1; Z_TYPE((yyval).u.constant)=IS_LONG; INIT_PZVAL(&(yyval).u.constant); zend_do_receive_arg(ZEND_RECV, &tmp, &(yyval), NULL, &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]), 1 TSRMLS_CC); }
3568 : break;
3569 :
3570 : case 141:
3571 : #line 430 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3572 : { znode tmp; fetch_simple_variable(&tmp, &(yyvsp[(3) - (5)]), 0 TSRMLS_CC); (yyval).op_type = IS_CONST; Z_LVAL((yyval).u.constant)=1; Z_TYPE((yyval).u.constant)=IS_LONG; INIT_PZVAL(&(yyval).u.constant); zend_do_receive_arg(ZEND_RECV_INIT, &tmp, &(yyval), &(yyvsp[(5) - (5)]), &(yyvsp[(1) - (5)]), &(yyvsp[(3) - (5)]), 1 TSRMLS_CC); }
3573 : break;
3574 :
3575 : case 142:
3576 : #line 431 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3577 : { znode tmp; fetch_simple_variable(&tmp, &(yyvsp[(2) - (4)]), 0 TSRMLS_CC); (yyval).op_type = IS_CONST; Z_LVAL((yyval).u.constant)=1; Z_TYPE((yyval).u.constant)=IS_LONG; INIT_PZVAL(&(yyval).u.constant); zend_do_receive_arg(ZEND_RECV_INIT, &tmp, &(yyval), &(yyvsp[(4) - (4)]), &(yyvsp[(1) - (4)]), &(yyvsp[(2) - (4)]), 0 TSRMLS_CC); }
3578 : break;
3579 :
3580 : case 143:
3581 : #line 432 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3582 : { znode tmp; fetch_simple_variable(&tmp, &(yyvsp[(4) - (4)]), 0 TSRMLS_CC); (yyval)=(yyvsp[(1) - (4)]); Z_LVAL((yyval).u.constant)++; zend_do_receive_arg(ZEND_RECV, &tmp, &(yyval), NULL, &(yyvsp[(3) - (4)]), &(yyvsp[(4) - (4)]), 0 TSRMLS_CC); }
3583 : break;
3584 :
3585 : case 144:
3586 : #line 433 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3587 : { znode tmp; fetch_simple_variable(&tmp, &(yyvsp[(5) - (5)]), 0 TSRMLS_CC); (yyval)=(yyvsp[(1) - (5)]); Z_LVAL((yyval).u.constant)++; zend_do_receive_arg(ZEND_RECV, &tmp, &(yyval), NULL, &(yyvsp[(3) - (5)]), &(yyvsp[(5) - (5)]), 1 TSRMLS_CC); }
3588 : break;
3589 :
3590 : case 145:
3591 : #line 434 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3592 : { znode tmp; fetch_simple_variable(&tmp, &(yyvsp[(5) - (7)]), 0 TSRMLS_CC); (yyval)=(yyvsp[(1) - (7)]); Z_LVAL((yyval).u.constant)++; zend_do_receive_arg(ZEND_RECV_INIT, &tmp, &(yyval), &(yyvsp[(7) - (7)]), &(yyvsp[(3) - (7)]), &(yyvsp[(5) - (7)]), 1 TSRMLS_CC); }
3593 : break;
3594 :
3595 : case 146:
3596 : #line 435 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3597 : { znode tmp; fetch_simple_variable(&tmp, &(yyvsp[(4) - (6)]), 0 TSRMLS_CC); (yyval)=(yyvsp[(1) - (6)]); Z_LVAL((yyval).u.constant)++; zend_do_receive_arg(ZEND_RECV_INIT, &tmp, &(yyval), &(yyvsp[(6) - (6)]), &(yyvsp[(3) - (6)]), &(yyvsp[(4) - (6)]), 0 TSRMLS_CC); }
3598 : break;
3599 :
3600 : case 147:
3601 : #line 440 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3602 : { (yyval).op_type = IS_UNUSED; }
3603 : break;
3604 :
3605 : case 148:
3606 : #line 441 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3607 : { (yyval) = (yyvsp[(1) - (1)]); }
3608 : break;
3609 :
3610 : case 149:
3611 : #line 442 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3612 : { (yyval).op_type = IS_CONST; Z_TYPE((yyval).u.constant)=IS_NULL;}
3613 : break;
3614 :
3615 : case 150:
3616 : #line 447 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3617 : { (yyval) = (yyvsp[(1) - (1)]); }
3618 : break;
3619 :
3620 : case 151:
3621 : #line 448 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3622 : { Z_LVAL((yyval).u.constant) = 0; }
3623 : break;
3624 :
3625 : case 152:
3626 : #line 453 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3627 : { Z_LVAL((yyval).u.constant) = 1; zend_do_pass_param(&(yyvsp[(1) - (1)]), ZEND_SEND_VAL, Z_LVAL((yyval).u.constant) TSRMLS_CC); }
3628 : break;
3629 :
3630 : case 153:
3631 : #line 454 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3632 : { Z_LVAL((yyval).u.constant) = 1; zend_do_pass_param(&(yyvsp[(1) - (1)]), ZEND_SEND_VAR, Z_LVAL((yyval).u.constant) TSRMLS_CC); }
3633 : break;
3634 :
3635 : case 154:
3636 : #line 455 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3637 : { Z_LVAL((yyval).u.constant) = 1; zend_do_pass_param(&(yyvsp[(2) - (2)]), ZEND_SEND_REF, Z_LVAL((yyval).u.constant) TSRMLS_CC); }
3638 : break;
3639 :
3640 : case 155:
3641 : #line 456 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3642 : { Z_LVAL((yyval).u.constant)=Z_LVAL((yyvsp[(1) - (3)]).u.constant)+1; zend_do_pass_param(&(yyvsp[(3) - (3)]), ZEND_SEND_VAL, Z_LVAL((yyval).u.constant) TSRMLS_CC); }
3643 : break;
3644 :
3645 : case 156:
3646 : #line 457 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3647 : { Z_LVAL((yyval).u.constant)=Z_LVAL((yyvsp[(1) - (3)]).u.constant)+1; zend_do_pass_param(&(yyvsp[(3) - (3)]), ZEND_SEND_VAR, Z_LVAL((yyval).u.constant) TSRMLS_CC); }
3648 : break;
3649 :
3650 : case 157:
3651 : #line 458 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3652 : { Z_LVAL((yyval).u.constant)=Z_LVAL((yyvsp[(1) - (4)]).u.constant)+1; zend_do_pass_param(&(yyvsp[(4) - (4)]), ZEND_SEND_REF, Z_LVAL((yyval).u.constant) TSRMLS_CC); }
3653 : break;
3654 :
3655 : case 158:
3656 : #line 462 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3657 : { zend_do_fetch_global_variable(&(yyvsp[(3) - (3)]), NULL, ZEND_FETCH_GLOBAL_LOCK TSRMLS_CC); }
3658 : break;
3659 :
3660 : case 159:
3661 : #line 463 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3662 : { zend_do_fetch_global_variable(&(yyvsp[(1) - (1)]), NULL, ZEND_FETCH_GLOBAL_LOCK TSRMLS_CC); }
3663 : break;
3664 :
3665 : case 160:
3666 : #line 468 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3667 : { (yyval) = (yyvsp[(1) - (1)]); }
3668 : break;
3669 :
3670 : case 161:
3671 : #line 469 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3672 : { (yyval) = (yyvsp[(2) - (2)]); }
3673 : break;
3674 :
3675 : case 162:
3676 : #line 470 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3677 : { (yyval) = (yyvsp[(3) - (4)]); }
3678 : break;
3679 :
3680 : case 163:
3681 : #line 475 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3682 : { zend_do_fetch_static_variable(&(yyvsp[(3) - (3)]), NULL, ZEND_FETCH_STATIC TSRMLS_CC); }
3683 : break;
3684 :
3685 : case 164:
3686 : #line 476 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3687 : { zend_do_fetch_static_variable(&(yyvsp[(3) - (5)]), &(yyvsp[(5) - (5)]), ZEND_FETCH_STATIC TSRMLS_CC); }
3688 : break;
3689 :
3690 : case 165:
3691 : #line 477 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3692 : { zend_do_fetch_static_variable(&(yyvsp[(1) - (1)]), NULL, ZEND_FETCH_STATIC TSRMLS_CC); }
3693 : break;
3694 :
3695 : case 166:
3696 : #line 478 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3697 : { zend_do_fetch_static_variable(&(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]), ZEND_FETCH_STATIC TSRMLS_CC); }
3698 : break;
3699 :
3700 : case 169:
3701 : #line 490 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3702 : { CG(access_type) = Z_LVAL((yyvsp[(1) - (1)]).u.constant); }
3703 : break;
3704 :
3705 : case 172:
3706 : #line 492 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3707 : { (yyvsp[(2) - (2)]).u.opline_num = CG(zend_lineno); }
3708 : break;
3709 :
3710 : case 173:
3711 : #line 492 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3712 : { zend_do_begin_function_declaration(&(yyvsp[(2) - (5)]), &(yyvsp[(5) - (5)]), 1, (yyvsp[(4) - (5)]).op_type, &(yyvsp[(1) - (5)]) TSRMLS_CC); }
3713 : break;
3714 :
3715 : case 174:
3716 : #line 493 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3717 : { zend_do_abstract_method(&(yyvsp[(5) - (10)]), &(yyvsp[(1) - (10)]), &(yyvsp[(10) - (10)]) TSRMLS_CC); zend_do_end_function_declaration(&(yyvsp[(2) - (10)]) TSRMLS_CC); }
3718 : break;
3719 :
3720 : case 175:
3721 : #line 498 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3722 : { Z_LVAL((yyval).u.constant) = ZEND_ACC_ABSTRACT; }
3723 : break;
3724 :
3725 : case 176:
3726 : #line 499 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3727 : { Z_LVAL((yyval).u.constant) = 0; }
3728 : break;
3729 :
3730 : case 177:
3731 : #line 503 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3732 : { (yyval) = (yyvsp[(1) - (1)]); }
3733 : break;
3734 :
3735 : case 178:
3736 : #line 504 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3737 : { Z_LVAL((yyval).u.constant) = ZEND_ACC_PUBLIC; }
3738 : break;
3739 :
3740 : case 179:
3741 : #line 508 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3742 : { Z_LVAL((yyval).u.constant) = ZEND_ACC_PUBLIC; }
3743 : break;
3744 :
3745 : case 180:
3746 : #line 509 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3747 : { (yyval) = (yyvsp[(1) - (1)]); if (!(Z_LVAL((yyval).u.constant) & ZEND_ACC_PPP_MASK)) { Z_LVAL((yyval).u.constant) |= ZEND_ACC_PUBLIC; } }
3748 : break;
3749 :
3750 : case 181:
3751 : #line 513 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3752 : { (yyval) = (yyvsp[(1) - (1)]); }
3753 : break;
3754 :
3755 : case 182:
3756 : #line 514 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3757 : { Z_LVAL((yyval).u.constant) = zend_do_verify_access_types(&(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)])); }
3758 : break;
3759 :
3760 : case 183:
3761 : #line 518 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3762 : { Z_LVAL((yyval).u.constant) = ZEND_ACC_PUBLIC; }
3763 : break;
3764 :
3765 : case 184:
3766 : #line 519 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3767 : { Z_LVAL((yyval).u.constant) = ZEND_ACC_PROTECTED; }
3768 : break;
3769 :
3770 : case 185:
3771 : #line 520 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3772 : { Z_LVAL((yyval).u.constant) = ZEND_ACC_PRIVATE; }
3773 : break;
3774 :
3775 : case 186:
3776 : #line 521 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3777 : { Z_LVAL((yyval).u.constant) = ZEND_ACC_STATIC; }
3778 : break;
3779 :
3780 : case 187:
3781 : #line 522 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3782 : { Z_LVAL((yyval).u.constant) = ZEND_ACC_ABSTRACT; }
3783 : break;
3784 :
3785 : case 188:
3786 : #line 523 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3787 : { Z_LVAL((yyval).u.constant) = ZEND_ACC_FINAL; }
3788 : break;
3789 :
3790 : case 189:
3791 : #line 527 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3792 : { zend_do_declare_property(&(yyvsp[(3) - (3)]), NULL, CG(access_type) TSRMLS_CC); }
3793 : break;
3794 :
3795 : case 190:
3796 : #line 528 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3797 : { zend_do_declare_property(&(yyvsp[(3) - (5)]), &(yyvsp[(5) - (5)]), CG(access_type) TSRMLS_CC); }
3798 : break;
3799 :
3800 : case 191:
3801 : #line 529 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3802 : { zend_do_declare_property(&(yyvsp[(1) - (1)]), NULL, CG(access_type) TSRMLS_CC); }
3803 : break;
3804 :
3805 : case 192:
3806 : #line 530 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3807 : { zend_do_declare_property(&(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]), CG(access_type) TSRMLS_CC); }
3808 : break;
3809 :
3810 : case 193:
3811 : #line 534 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3812 : { zend_do_declare_class_constant(&(yyvsp[(3) - (5)]), &(yyvsp[(5) - (5)]) TSRMLS_CC); }
3813 : break;
3814 :
3815 : case 194:
3816 : #line 535 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3817 : { zend_do_declare_class_constant(&(yyvsp[(2) - (4)]), &(yyvsp[(4) - (4)]) TSRMLS_CC); }
3818 : break;
3819 :
3820 : case 195:
3821 : #line 539 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3822 : { zend_do_echo(&(yyvsp[(3) - (3)]) TSRMLS_CC); }
3823 : break;
3824 :
3825 : case 196:
3826 : #line 540 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3827 : { zend_do_echo(&(yyvsp[(1) - (1)]) TSRMLS_CC); }
3828 : break;
3829 :
3830 : case 197:
3831 : #line 545 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3832 : { (yyval).op_type = IS_CONST; Z_TYPE((yyval).u.constant) = IS_BOOL; Z_LVAL((yyval).u.constant) = 1; }
3833 : break;
3834 :
3835 : case 198:
3836 : #line 546 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3837 : { (yyval) = (yyvsp[(1) - (1)]); }
3838 : break;
3839 :
3840 : case 199:
3841 : #line 550 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3842 : { zend_do_free(&(yyvsp[(1) - (2)]) TSRMLS_CC); }
3843 : break;
3844 :
3845 : case 200:
3846 : #line 550 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3847 : { (yyval) = (yyvsp[(4) - (4)]); }
3848 : break;
3849 :
3850 : case 201:
3851 : #line 551 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3852 : { (yyval) = (yyvsp[(1) - (1)]); }
3853 : break;
3854 :
3855 : case 202:
3856 : #line 555 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3857 : { zend_do_list_init(TSRMLS_C); }
3858 : break;
3859 :
3860 : case 203:
3861 : #line 555 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3862 : { zend_do_list_end(&(yyval), &(yyvsp[(7) - (7)]) TSRMLS_CC); }
3863 : break;
3864 :
3865 : case 204:
3866 : #line 556 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3867 : { zend_check_writable_variable(&(yyvsp[(1) - (3)])); zend_do_end_variable_parse(BP_VAR_W, 0 TSRMLS_CC); zend_do_assign(&(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
3868 : break;
3869 :
3870 : case 205:
3871 : #line 557 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3872 : { zend_check_writable_variable(&(yyvsp[(1) - (4)])); zend_do_end_variable_parse(BP_VAR_W, 0 TSRMLS_CC); zend_do_end_variable_parse(BP_VAR_W, 0 TSRMLS_CC); zend_do_assign_ref(&(yyval), &(yyvsp[(1) - (4)]), &(yyvsp[(4) - (4)]) TSRMLS_CC); }
3873 : break;
3874 :
3875 : case 206:
3876 : #line 558 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3877 : { zend_error(E_STRICT, "Assigning the return value of new by reference is deprecated"); zend_check_writable_variable(&(yyvsp[(1) - (5)])); zend_do_extended_fcall_begin(TSRMLS_C); zend_do_begin_new_object(&(yyvsp[(4) - (5)]), &(yyvsp[(5) - (5)]) TSRMLS_CC); }
3878 : break;
3879 :
3880 : case 207:
3881 : #line 558 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3882 : { zend_do_end_new_object(&(yyvsp[(3) - (7)]), &(yyvsp[(4) - (7)]), &(yyvsp[(7) - (7)]) TSRMLS_CC); zend_do_extended_fcall_end(TSRMLS_C); zend_do_end_variable_parse(BP_VAR_W, 0 TSRMLS_CC); zend_do_assign_ref(&(yyval), &(yyvsp[(1) - (7)]), &(yyvsp[(3) - (7)]) TSRMLS_CC); }
3883 : break;
3884 :
3885 : case 208:
3886 : #line 559 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3887 : { zend_do_extended_fcall_begin(TSRMLS_C); zend_do_begin_new_object(&(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
3888 : break;
3889 :
3890 : case 209:
3891 : #line 559 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3892 : { zend_do_end_new_object(&(yyval), &(yyvsp[(1) - (4)]), &(yyvsp[(4) - (4)]) TSRMLS_CC); zend_do_extended_fcall_end(TSRMLS_C);}
3893 : break;
3894 :
3895 : case 210:
3896 : #line 560 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3897 : { zend_do_clone(&(yyval), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
3898 : break;
3899 :
3900 : case 211:
3901 : #line 561 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3902 : { zend_check_writable_variable(&(yyvsp[(1) - (3)])); zend_do_end_variable_parse(BP_VAR_RW, 0 TSRMLS_CC); zend_do_binary_assign_op(ZEND_ASSIGN_ADD, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
3903 : break;
3904 :
3905 : case 212:
3906 : #line 562 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3907 : { zend_check_writable_variable(&(yyvsp[(1) - (3)])); zend_do_end_variable_parse(BP_VAR_RW, 0 TSRMLS_CC); zend_do_binary_assign_op(ZEND_ASSIGN_SUB, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
3908 : break;
3909 :
3910 : case 213:
3911 : #line 563 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3912 : { zend_check_writable_variable(&(yyvsp[(1) - (3)])); zend_do_end_variable_parse(BP_VAR_RW, 0 TSRMLS_CC); zend_do_binary_assign_op(ZEND_ASSIGN_MUL, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
3913 : break;
3914 :
3915 : case 214:
3916 : #line 564 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3917 : { zend_check_writable_variable(&(yyvsp[(1) - (3)])); zend_do_end_variable_parse(BP_VAR_RW, 0 TSRMLS_CC); zend_do_binary_assign_op(ZEND_ASSIGN_DIV, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
3918 : break;
3919 :
3920 : case 215:
3921 : #line 565 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3922 : { zend_check_writable_variable(&(yyvsp[(1) - (3)])); zend_do_end_variable_parse(BP_VAR_RW, 0 TSRMLS_CC); zend_do_binary_assign_op(ZEND_ASSIGN_CONCAT, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
3923 : break;
3924 :
3925 : case 216:
3926 : #line 566 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3927 : { zend_check_writable_variable(&(yyvsp[(1) - (3)])); zend_do_end_variable_parse(BP_VAR_RW, 0 TSRMLS_CC); zend_do_binary_assign_op(ZEND_ASSIGN_MOD, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
3928 : break;
3929 :
3930 : case 217:
3931 : #line 567 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3932 : { zend_check_writable_variable(&(yyvsp[(1) - (3)])); zend_do_end_variable_parse(BP_VAR_RW, 0 TSRMLS_CC); zend_do_binary_assign_op(ZEND_ASSIGN_BW_AND, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
3933 : break;
3934 :
3935 : case 218:
3936 : #line 568 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3937 : { zend_check_writable_variable(&(yyvsp[(1) - (3)])); zend_do_end_variable_parse(BP_VAR_RW, 0 TSRMLS_CC); zend_do_binary_assign_op(ZEND_ASSIGN_BW_OR, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
3938 : break;
3939 :
3940 : case 219:
3941 : #line 569 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3942 : { zend_check_writable_variable(&(yyvsp[(1) - (3)])); zend_do_end_variable_parse(BP_VAR_RW, 0 TSRMLS_CC); zend_do_binary_assign_op(ZEND_ASSIGN_BW_XOR, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
3943 : break;
3944 :
3945 : case 220:
3946 : #line 570 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3947 : { zend_check_writable_variable(&(yyvsp[(1) - (3)])); zend_do_end_variable_parse(BP_VAR_RW, 0 TSRMLS_CC); zend_do_binary_assign_op(ZEND_ASSIGN_SL, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
3948 : break;
3949 :
3950 : case 221:
3951 : #line 571 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3952 : { zend_check_writable_variable(&(yyvsp[(1) - (3)])); zend_do_end_variable_parse(BP_VAR_RW, 0 TSRMLS_CC); zend_do_binary_assign_op(ZEND_ASSIGN_SR, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
3953 : break;
3954 :
3955 : case 222:
3956 : #line 572 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3957 : { zend_do_post_incdec(&(yyval), &(yyvsp[(1) - (2)]), ZEND_POST_INC TSRMLS_CC); }
3958 : break;
3959 :
3960 : case 223:
3961 : #line 573 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3962 : { zend_do_pre_incdec(&(yyval), &(yyvsp[(2) - (2)]), ZEND_PRE_INC TSRMLS_CC); }
3963 : break;
3964 :
3965 : case 224:
3966 : #line 574 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3967 : { zend_do_post_incdec(&(yyval), &(yyvsp[(1) - (2)]), ZEND_POST_DEC TSRMLS_CC); }
3968 : break;
3969 :
3970 : case 225:
3971 : #line 575 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3972 : { zend_do_pre_incdec(&(yyval), &(yyvsp[(2) - (2)]), ZEND_PRE_DEC TSRMLS_CC); }
3973 : break;
3974 :
3975 : case 226:
3976 : #line 576 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3977 : { zend_do_boolean_or_begin(&(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
3978 : break;
3979 :
3980 : case 227:
3981 : #line 576 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3982 : { zend_do_boolean_or_end(&(yyval), &(yyvsp[(1) - (4)]), &(yyvsp[(4) - (4)]), &(yyvsp[(2) - (4)]) TSRMLS_CC); }
3983 : break;
3984 :
3985 : case 228:
3986 : #line 577 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3987 : { zend_do_boolean_and_begin(&(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
3988 : break;
3989 :
3990 : case 229:
3991 : #line 577 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3992 : { zend_do_boolean_and_end(&(yyval), &(yyvsp[(1) - (4)]), &(yyvsp[(4) - (4)]), &(yyvsp[(2) - (4)]) TSRMLS_CC); }
3993 : break;
3994 :
3995 : case 230:
3996 : #line 578 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
3997 : { zend_do_boolean_or_begin(&(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
3998 : break;
3999 :
4000 : case 231:
4001 : #line 578 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4002 : { zend_do_boolean_or_end(&(yyval), &(yyvsp[(1) - (4)]), &(yyvsp[(4) - (4)]), &(yyvsp[(2) - (4)]) TSRMLS_CC); }
4003 : break;
4004 :
4005 : case 232:
4006 : #line 579 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4007 : { zend_do_boolean_and_begin(&(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
4008 : break;
4009 :
4010 : case 233:
4011 : #line 579 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4012 : { zend_do_boolean_and_end(&(yyval), &(yyvsp[(1) - (4)]), &(yyvsp[(4) - (4)]), &(yyvsp[(2) - (4)]) TSRMLS_CC); }
4013 : break;
4014 :
4015 : case 234:
4016 : #line 580 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4017 : { zend_do_binary_op(ZEND_BOOL_XOR, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
4018 : break;
4019 :
4020 : case 235:
4021 : #line 581 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4022 : { zend_do_binary_op(ZEND_BW_OR, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
4023 : break;
4024 :
4025 : case 236:
4026 : #line 582 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4027 : { zend_do_binary_op(ZEND_BW_AND, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
4028 : break;
4029 :
4030 : case 237:
4031 : #line 583 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4032 : { zend_do_binary_op(ZEND_BW_XOR, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
4033 : break;
4034 :
4035 : case 238:
4036 : #line 584 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4037 : { zend_do_binary_op(ZEND_CONCAT, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
4038 : break;
4039 :
4040 : case 239:
4041 : #line 585 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4042 : { zend_do_binary_op(ZEND_ADD, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
4043 : break;
4044 :
4045 : case 240:
4046 : #line 586 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4047 : { zend_do_binary_op(ZEND_SUB, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
4048 : break;
4049 :
4050 : case 241:
4051 : #line 587 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4052 : { zend_do_binary_op(ZEND_MUL, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
4053 : break;
4054 :
4055 : case 242:
4056 : #line 588 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4057 : { zend_do_binary_op(ZEND_DIV, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
4058 : break;
4059 :
4060 : case 243:
4061 : #line 589 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4062 : { zend_do_binary_op(ZEND_MOD, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
4063 : break;
4064 :
4065 : case 244:
4066 : #line 590 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4067 : { zend_do_binary_op(ZEND_SL, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
4068 : break;
4069 :
4070 : case 245:
4071 : #line 591 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4072 : { zend_do_binary_op(ZEND_SR, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
4073 : break;
4074 :
4075 : case 246:
4076 : #line 592 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4077 : { Z_LVAL((yyvsp[(1) - (2)]).u.constant)=0; Z_TYPE((yyvsp[(1) - (2)]).u.constant)=IS_LONG; (yyvsp[(1) - (2)]).op_type = IS_CONST; INIT_PZVAL(&(yyvsp[(1) - (2)]).u.constant); zend_do_binary_op(ZEND_ADD, &(yyval), &(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
4078 : break;
4079 :
4080 : case 247:
4081 : #line 593 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4082 : { Z_LVAL((yyvsp[(1) - (2)]).u.constant)=0; Z_TYPE((yyvsp[(1) - (2)]).u.constant)=IS_LONG; (yyvsp[(1) - (2)]).op_type = IS_CONST; INIT_PZVAL(&(yyvsp[(1) - (2)]).u.constant); zend_do_binary_op(ZEND_SUB, &(yyval), &(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
4083 : break;
4084 :
4085 : case 248:
4086 : #line 594 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4087 : { zend_do_unary_op(ZEND_BOOL_NOT, &(yyval), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
4088 : break;
4089 :
4090 : case 249:
4091 : #line 595 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4092 : { zend_do_unary_op(ZEND_BW_NOT, &(yyval), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
4093 : break;
4094 :
4095 : case 250:
4096 : #line 596 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4097 : { zend_do_binary_op(ZEND_IS_IDENTICAL, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
4098 : break;
4099 :
4100 : case 251:
4101 : #line 597 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4102 : { zend_do_binary_op(ZEND_IS_NOT_IDENTICAL, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
4103 : break;
4104 :
4105 : case 252:
4106 : #line 598 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4107 : { zend_do_binary_op(ZEND_IS_EQUAL, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
4108 : break;
4109 :
4110 : case 253:
4111 : #line 599 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4112 : { zend_do_binary_op(ZEND_IS_NOT_EQUAL, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
4113 : break;
4114 :
4115 : case 254:
4116 : #line 600 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4117 : { zend_do_binary_op(ZEND_IS_SMALLER, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
4118 : break;
4119 :
4120 : case 255:
4121 : #line 601 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4122 : { zend_do_binary_op(ZEND_IS_SMALLER_OR_EQUAL, &(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
4123 : break;
4124 :
4125 : case 256:
4126 : #line 602 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4127 : { zend_do_binary_op(ZEND_IS_SMALLER, &(yyval), &(yyvsp[(3) - (3)]), &(yyvsp[(1) - (3)]) TSRMLS_CC); }
4128 : break;
4129 :
4130 : case 257:
4131 : #line 603 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4132 : { zend_do_binary_op(ZEND_IS_SMALLER_OR_EQUAL, &(yyval), &(yyvsp[(3) - (3)]), &(yyvsp[(1) - (3)]) TSRMLS_CC); }
4133 : break;
4134 :
4135 : case 258:
4136 : #line 604 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4137 : { zend_do_instanceof(&(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]), 0 TSRMLS_CC); }
4138 : break;
4139 :
4140 : case 259:
4141 : #line 605 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4142 : { (yyval) = (yyvsp[(2) - (3)]); }
4143 : break;
4144 :
4145 : case 260:
4146 : #line 606 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4147 : { zend_do_begin_qm_op(&(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
4148 : break;
4149 :
4150 : case 261:
4151 : #line 607 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4152 : { zend_do_qm_true(&(yyvsp[(4) - (5)]), &(yyvsp[(2) - (5)]), &(yyvsp[(5) - (5)]) TSRMLS_CC); }
4153 : break;
4154 :
4155 : case 262:
4156 : #line 608 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4157 : { zend_do_qm_false(&(yyval), &(yyvsp[(7) - (7)]), &(yyvsp[(2) - (7)]), &(yyvsp[(5) - (7)]) TSRMLS_CC); }
4158 : break;
4159 :
4160 : case 263:
4161 : #line 609 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4162 : { (yyval) = (yyvsp[(1) - (1)]); }
4163 : break;
4164 :
4165 : case 264:
4166 : #line 610 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4167 : { zend_do_cast(&(yyval), &(yyvsp[(2) - (2)]), IS_LONG TSRMLS_CC); }
4168 : break;
4169 :
4170 : case 265:
4171 : #line 611 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4172 : { zend_do_cast(&(yyval), &(yyvsp[(2) - (2)]), IS_DOUBLE TSRMLS_CC); }
4173 : break;
4174 :
4175 : case 266:
4176 : #line 612 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4177 : { zend_do_cast(&(yyval), &(yyvsp[(2) - (2)]), IS_STRING TSRMLS_CC); }
4178 : break;
4179 :
4180 : case 267:
4181 : #line 613 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4182 : { zend_do_cast(&(yyval), &(yyvsp[(2) - (2)]), IS_ARRAY TSRMLS_CC); }
4183 : break;
4184 :
4185 : case 268:
4186 : #line 614 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4187 : { zend_do_cast(&(yyval), &(yyvsp[(2) - (2)]), IS_OBJECT TSRMLS_CC); }
4188 : break;
4189 :
4190 : case 269:
4191 : #line 615 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4192 : { zend_do_cast(&(yyval), &(yyvsp[(2) - (2)]), IS_BOOL TSRMLS_CC); }
4193 : break;
4194 :
4195 : case 270:
4196 : #line 616 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4197 : { zend_do_cast(&(yyval), &(yyvsp[(2) - (2)]), IS_NULL TSRMLS_CC); }
4198 : break;
4199 :
4200 : case 271:
4201 : #line 617 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4202 : { zend_do_exit(&(yyval), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
4203 : break;
4204 :
4205 : case 272:
4206 : #line 618 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4207 : { zend_do_begin_silence(&(yyvsp[(1) - (1)]) TSRMLS_CC); }
4208 : break;
4209 :
4210 : case 273:
4211 : #line 618 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4212 : { zend_do_end_silence(&(yyvsp[(1) - (3)]) TSRMLS_CC); (yyval) = (yyvsp[(3) - (3)]); }
4213 : break;
4214 :
4215 : case 274:
4216 : #line 619 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4217 : { (yyval) = (yyvsp[(1) - (1)]); }
4218 : break;
4219 :
4220 : case 275:
4221 : #line 620 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4222 : { (yyval) = (yyvsp[(3) - (4)]); }
4223 : break;
4224 :
4225 : case 276:
4226 : #line 621 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4227 : { zend_do_shell_exec(&(yyval), &(yyvsp[(2) - (3)]) TSRMLS_CC); }
4228 : break;
4229 :
4230 : case 277:
4231 : #line 622 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4232 : { zend_do_print(&(yyval), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
4233 : break;
4234 :
4235 : case 278:
4236 : #line 626 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4237 : { (yyvsp[(2) - (2)]).u.opline_num = zend_do_begin_function_call(&(yyvsp[(1) - (2)]) TSRMLS_CC); }
4238 : break;
4239 :
4240 : case 279:
4241 : #line 628 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4242 : { zend_do_end_function_call(&(yyvsp[(1) - (5)]), &(yyval), &(yyvsp[(4) - (5)]), 0, (yyvsp[(2) - (5)]).u.opline_num TSRMLS_CC); zend_do_extended_fcall_end(TSRMLS_C); }
4243 : break;
4244 :
4245 : case 280:
4246 : #line 629 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4247 : { zend_do_begin_class_member_function_call(&(yyvsp[(1) - (4)]), &(yyvsp[(3) - (4)]) TSRMLS_CC); }
4248 : break;
4249 :
4250 : case 281:
4251 : #line 631 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4252 : { zend_do_end_function_call(NULL, &(yyval), &(yyvsp[(6) - (7)]), 1, 1 TSRMLS_CC); zend_do_extended_fcall_end(TSRMLS_C);}
4253 : break;
4254 :
4255 : case 282:
4256 : #line 632 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4257 : { zend_do_end_variable_parse(BP_VAR_R, 0 TSRMLS_CC); zend_do_begin_class_member_function_call(&(yyvsp[(1) - (4)]), &(yyvsp[(3) - (4)]) TSRMLS_CC); }
4258 : break;
4259 :
4260 : case 283:
4261 : #line 634 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4262 : { zend_do_end_function_call(NULL, &(yyval), &(yyvsp[(6) - (7)]), 1, 1 TSRMLS_CC); zend_do_extended_fcall_end(TSRMLS_C);}
4263 : break;
4264 :
4265 : case 284:
4266 : #line 635 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4267 : { zend_do_end_variable_parse(BP_VAR_R, 0 TSRMLS_CC); zend_do_begin_dynamic_function_call(&(yyvsp[(1) - (2)]) TSRMLS_CC); }
4268 : break;
4269 :
4270 : case 285:
4271 : #line 637 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4272 : { zend_do_end_function_call(&(yyvsp[(1) - (5)]), &(yyval), &(yyvsp[(4) - (5)]), 0, 1 TSRMLS_CC); zend_do_extended_fcall_end(TSRMLS_C);}
4273 : break;
4274 :
4275 : case 286:
4276 : #line 641 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4277 : { zend_do_fetch_class(&(yyval), &(yyvsp[(1) - (1)]) TSRMLS_CC); }
4278 : break;
4279 :
4280 : case 287:
4281 : #line 645 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4282 : { zend_do_fetch_class(&(yyval), &(yyvsp[(1) - (1)]) TSRMLS_CC); }
4283 : break;
4284 :
4285 : case 288:
4286 : #line 646 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4287 : { zend_do_end_variable_parse(BP_VAR_R, 0 TSRMLS_CC); zend_do_fetch_class(&(yyval), &(yyvsp[(1) - (1)]) TSRMLS_CC); }
4288 : break;
4289 :
4290 : case 289:
4291 : #line 651 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4292 : { zend_do_push_object(&(yyvsp[(1) - (2)]) TSRMLS_CC); }
4293 : break;
4294 :
4295 : case 290:
4296 : #line 652 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4297 : { zend_do_push_object(&(yyvsp[(4) - (4)]) TSRMLS_CC); zend_do_declare_implicit_property(TSRMLS_C); }
4298 : break;
4299 :
4300 : case 291:
4301 : #line 653 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4302 : { zend_do_pop_object(&(yyval) TSRMLS_CC); (yyval).u.EA.type = ZEND_PARSED_MEMBER; }
4303 : break;
4304 :
4305 : case 292:
4306 : #line 654 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4307 : { (yyval) = (yyvsp[(1) - (1)]); }
4308 : break;
4309 :
4310 : case 295:
4311 : #line 665 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4312 : { zend_do_push_object(&(yyvsp[(2) - (2)]) TSRMLS_CC); zend_do_declare_implicit_property(TSRMLS_C); }
4313 : break;
4314 :
4315 : case 296:
4316 : #line 669 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4317 : { memset(&(yyval), 0, sizeof(znode)); (yyval).op_type = IS_UNUSED; }
4318 : break;
4319 :
4320 : case 297:
4321 : #line 670 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4322 : { memset(&(yyval), 0, sizeof(znode)); (yyval).op_type = IS_UNUSED; }
4323 : break;
4324 :
4325 : case 298:
4326 : #line 671 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4327 : { (yyval) = (yyvsp[(2) - (3)]); }
4328 : break;
4329 :
4330 : case 299:
4331 : #line 676 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4332 : { Z_LVAL((yyval).u.constant)=0; }
4333 : break;
4334 :
4335 : case 300:
4336 : #line 677 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4337 : { (yyval) = (yyvsp[(2) - (3)]); }
4338 : break;
4339 :
4340 : case 301:
4341 : #line 682 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4342 : { (yyval) = (yyvsp[(1) - (1)]); }
4343 : break;
4344 :
4345 : case 302:
4346 : #line 683 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4347 : { (yyval) = (yyvsp[(1) - (1)]); }
4348 : break;
4349 :
4350 : case 303:
4351 : #line 684 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4352 : { (yyval) = (yyvsp[(1) - (1)]); }
4353 : break;
4354 :
4355 : case 304:
4356 : #line 685 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4357 : { (yyval) = (yyvsp[(1) - (1)]); }
4358 : break;
4359 :
4360 : case 305:
4361 : #line 686 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4362 : { (yyval) = (yyvsp[(1) - (1)]); }
4363 : break;
4364 :
4365 : case 306:
4366 : #line 687 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4367 : { (yyval) = (yyvsp[(1) - (1)]); }
4368 : break;
4369 :
4370 : case 307:
4371 : #line 688 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4372 : { (yyval) = (yyvsp[(1) - (1)]); }
4373 : break;
4374 :
4375 : case 308:
4376 : #line 689 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4377 : { (yyval) = (yyvsp[(1) - (1)]); }
4378 : break;
4379 :
4380 : case 309:
4381 : #line 694 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4382 : { (yyval) = (yyvsp[(1) - (1)]); }
4383 : break;
4384 :
4385 : case 310:
4386 : #line 695 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4387 : { zend_do_fetch_constant(&(yyval), NULL, &(yyvsp[(1) - (1)]), ZEND_CT TSRMLS_CC); }
4388 : break;
4389 :
4390 : case 311:
4391 : #line 696 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4392 : { (yyval) = (yyvsp[(2) - (2)]); }
4393 : break;
4394 :
4395 : case 312:
4396 : #line 697 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4397 : { zval minus_one; Z_TYPE(minus_one) = IS_LONG; Z_LVAL(minus_one) = -1; mul_function(&(yyvsp[(2) - (2)]).u.constant, &(yyvsp[(2) - (2)]).u.constant, &minus_one TSRMLS_CC); (yyval) = (yyvsp[(2) - (2)]); }
4398 : break;
4399 :
4400 : case 313:
4401 : #line 698 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4402 : { (yyval) = (yyvsp[(3) - (4)]); Z_TYPE((yyval).u.constant) = IS_CONSTANT_ARRAY; }
4403 : break;
4404 :
4405 : case 314:
4406 : #line 699 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4407 : { (yyval) = (yyvsp[(1) - (1)]); }
4408 : break;
4409 :
4410 : case 315:
4411 : #line 703 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4412 : { zend_do_fetch_constant(&(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]), ZEND_CT TSRMLS_CC); }
4413 : break;
4414 :
4415 : case 316:
4416 : #line 707 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4417 : { zend_do_fetch_constant(&(yyval), NULL, &(yyvsp[(1) - (1)]), ZEND_RT TSRMLS_CC); }
4418 : break;
4419 :
4420 : case 317:
4421 : #line 708 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4422 : { (yyval) = (yyvsp[(1) - (1)]); }
4423 : break;
4424 :
4425 : case 318:
4426 : #line 709 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4427 : { (yyval) = (yyvsp[(1) - (1)]); }
4428 : break;
4429 :
4430 : case 319:
4431 : #line 710 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4432 : { (yyval) = (yyvsp[(1) - (1)]); }
4433 : break;
4434 :
4435 : case 320:
4436 : #line 711 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4437 : { (yyval) = (yyvsp[(2) - (3)]); }
4438 : break;
4439 :
4440 : case 321:
4441 : #line 712 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4442 : { (yyval) = (yyvsp[(2) - (3)]); }
4443 : break;
4444 :
4445 : case 322:
4446 : #line 713 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4447 : { (yyval) = (yyvsp[(2) - (3)]); zend_do_end_heredoc(TSRMLS_C); }
4448 : break;
4449 :
4450 : case 323:
4451 : #line 718 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4452 : { (yyval).op_type = IS_CONST; INIT_PZVAL(&(yyval).u.constant); array_init(&(yyval).u.constant); }
4453 : break;
4454 :
4455 : case 324:
4456 : #line 719 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4457 : { (yyval) = (yyvsp[(1) - (2)]); }
4458 : break;
4459 :
4460 : case 327:
4461 : #line 728 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4462 : { zend_do_add_static_array_element(&(yyval), &(yyvsp[(3) - (5)]), &(yyvsp[(5) - (5)])); }
4463 : break;
4464 :
4465 : case 328:
4466 : #line 729 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4467 : { zend_do_add_static_array_element(&(yyval), NULL, &(yyvsp[(3) - (3)])); }
4468 : break;
4469 :
4470 : case 329:
4471 : #line 730 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4472 : { (yyval).op_type = IS_CONST; INIT_PZVAL(&(yyval).u.constant); array_init(&(yyval).u.constant); zend_do_add_static_array_element(&(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)])); }
4473 : break;
4474 :
4475 : case 330:
4476 : #line 731 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4477 : { (yyval).op_type = IS_CONST; INIT_PZVAL(&(yyval).u.constant); array_init(&(yyval).u.constant); zend_do_add_static_array_element(&(yyval), NULL, &(yyvsp[(1) - (1)])); }
4478 : break;
4479 :
4480 : case 331:
4481 : #line 735 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4482 : { (yyval) = (yyvsp[(1) - (1)]); }
4483 : break;
4484 :
4485 : case 332:
4486 : #line 736 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4487 : { (yyval) = (yyvsp[(1) - (1)]); }
4488 : break;
4489 :
4490 : case 333:
4491 : #line 741 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4492 : { zend_do_end_variable_parse(BP_VAR_R, 0 TSRMLS_CC); (yyval) = (yyvsp[(1) - (1)]); }
4493 : break;
4494 :
4495 : case 334:
4496 : #line 746 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4497 : { zend_do_end_variable_parse(BP_VAR_W, 0 TSRMLS_CC); (yyval) = (yyvsp[(1) - (1)]); }
4498 : break;
4499 :
4500 : case 335:
4501 : #line 747 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4502 : { zend_check_writable_variable(&(yyvsp[(1) - (2)])); }
4503 : break;
4504 :
4505 : case 336:
4506 : #line 751 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4507 : { zend_do_end_variable_parse(BP_VAR_RW, 0 TSRMLS_CC); (yyval) = (yyvsp[(1) - (1)]); }
4508 : break;
4509 :
4510 : case 337:
4511 : #line 752 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4512 : { zend_check_writable_variable(&(yyvsp[(1) - (2)])); }
4513 : break;
4514 :
4515 : case 338:
4516 : #line 756 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4517 : { zend_do_push_object(&(yyvsp[(1) - (2)]) TSRMLS_CC); }
4518 : break;
4519 :
4520 : case 339:
4521 : #line 757 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4522 : { zend_do_push_object(&(yyvsp[(4) - (4)]) TSRMLS_CC); }
4523 : break;
4524 :
4525 : case 340:
4526 : #line 758 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4527 : { zend_do_pop_object(&(yyval) TSRMLS_CC); (yyval).u.EA.type = (yyvsp[(1) - (7)]).u.EA.type | ((yyvsp[(7) - (7)]).u.EA.type ? (yyvsp[(7) - (7)]).u.EA.type : (yyvsp[(6) - (7)]).u.EA.type); }
4528 : break;
4529 :
4530 : case 341:
4531 : #line 759 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4532 : { (yyval) = (yyvsp[(1) - (1)]); }
4533 : break;
4534 :
4535 : case 342:
4536 : #line 763 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4537 : { (yyval).u.EA.type = (yyvsp[(2) - (2)]).u.EA.type; }
4538 : break;
4539 :
4540 : case 343:
4541 : #line 764 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4542 : { (yyval).u.EA.type = 0; }
4543 : break;
4544 :
4545 : case 344:
4546 : #line 769 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4547 : { zend_do_push_object(&(yyvsp[(2) - (2)]) TSRMLS_CC); }
4548 : break;
4549 :
4550 : case 345:
4551 : #line 769 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4552 : { (yyval).u.EA.type = (yyvsp[(4) - (4)]).u.EA.type; }
4553 : break;
4554 :
4555 : case 346:
4556 : #line 773 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4557 : { zend_do_pop_object(&(yyvsp[(1) - (1)]) TSRMLS_CC); zend_do_begin_method_call(&(yyvsp[(1) - (1)]) TSRMLS_CC); }
4558 : break;
4559 :
4560 : case 347:
4561 : #line 775 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4562 : { zend_do_end_function_call(&(yyvsp[(1) - (4)]), &(yyval), &(yyvsp[(3) - (4)]), 1, 1 TSRMLS_CC); zend_do_extended_fcall_end(TSRMLS_C);
4563 : zend_do_push_object(&(yyval) TSRMLS_CC); (yyval).u.EA.type = ZEND_PARSED_METHOD_CALL; }
4564 : break;
4565 :
4566 : case 348:
4567 : #line 777 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4568 : { zend_do_declare_implicit_property(TSRMLS_C); (yyval).u.EA.type = ZEND_PARSED_MEMBER; }
4569 : break;
4570 :
4571 : case 349:
4572 : #line 781 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4573 : { (yyval) = (yyvsp[(1) - (1)]); }
4574 : break;
4575 :
4576 : case 350:
4577 : #line 782 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4578 : { zend_do_indirect_references(&(yyval), &(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
4579 : break;
4580 :
4581 : case 351:
4582 : #line 786 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4583 : { (yyval) = (yyvsp[(3) - (3)]); zend_do_fetch_static_member(&(yyval), &(yyvsp[(1) - (3)]) TSRMLS_CC); }
4584 : break;
4585 :
4586 : case 352:
4587 : #line 791 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4588 : { (yyval) = (yyvsp[(1) - (1)]); }
4589 : break;
4590 :
4591 : case 353:
4592 : #line 792 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4593 : { zend_do_begin_variable_parse(TSRMLS_C); (yyval) = (yyvsp[(1) - (1)]); (yyval).u.EA.type = ZEND_PARSED_FUNCTION_CALL; }
4594 : break;
4595 :
4596 : case 354:
4597 : #line 797 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4598 : { (yyval) = (yyvsp[(1) - (1)]); (yyval).u.EA.type = ZEND_PARSED_VARIABLE; }
4599 : break;
4600 :
4601 : case 355:
4602 : #line 798 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4603 : { zend_do_indirect_references(&(yyval), &(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]) TSRMLS_CC); (yyval).u.EA.type = ZEND_PARSED_VARIABLE; }
4604 : break;
4605 :
4606 : case 356:
4607 : #line 799 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4608 : { (yyval) = (yyvsp[(1) - (1)]); (yyval).u.EA.type = ZEND_PARSED_STATIC_MEMBER; }
4609 : break;
4610 :
4611 : case 357:
4612 : #line 803 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4613 : { fetch_array_dim(&(yyval), &(yyvsp[(1) - (4)]), &(yyvsp[(3) - (4)]) TSRMLS_CC); }
4614 : break;
4615 :
4616 : case 358:
4617 : #line 804 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4618 : { fetch_string_offset(&(yyval), &(yyvsp[(1) - (4)]), &(yyvsp[(3) - (4)]) TSRMLS_CC); }
4619 : break;
4620 :
4621 : case 359:
4622 : #line 805 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4623 : { zend_do_begin_variable_parse(TSRMLS_C); fetch_simple_variable(&(yyval), &(yyvsp[(1) - (1)]), 1 TSRMLS_CC); }
4624 : break;
4625 :
4626 : case 360:
4627 : #line 810 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4628 : { (yyval) = (yyvsp[(1) - (1)]); }
4629 : break;
4630 :
4631 : case 361:
4632 : #line 811 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4633 : { (yyval) = (yyvsp[(3) - (4)]); }
4634 : break;
4635 :
4636 : case 362:
4637 : #line 815 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4638 : { (yyval).op_type = IS_UNUSED; }
4639 : break;
4640 :
4641 : case 363:
4642 : #line 816 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4643 : { (yyval) = (yyvsp[(1) - (1)]); }
4644 : break;
4645 :
4646 : case 364:
4647 : #line 821 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4648 : { (yyval) = (yyvsp[(1) - (1)]); }
4649 : break;
4650 :
4651 : case 365:
4652 : #line 822 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4653 : { zend_do_end_variable_parse(BP_VAR_R, 0 TSRMLS_CC); }
4654 : break;
4655 :
4656 : case 366:
4657 : #line 822 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4658 : { znode tmp_znode; zend_do_pop_object(&tmp_znode TSRMLS_CC); zend_do_fetch_property(&(yyval), &tmp_znode, &(yyvsp[(1) - (2)]) TSRMLS_CC);}
4659 : break;
4660 :
4661 : case 367:
4662 : #line 826 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4663 : { fetch_array_dim(&(yyval), &(yyvsp[(1) - (4)]), &(yyvsp[(3) - (4)]) TSRMLS_CC); }
4664 : break;
4665 :
4666 : case 368:
4667 : #line 827 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4668 : { fetch_string_offset(&(yyval), &(yyvsp[(1) - (4)]), &(yyvsp[(3) - (4)]) TSRMLS_CC); }
4669 : break;
4670 :
4671 : case 369:
4672 : #line 828 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4673 : { znode tmp_znode; zend_do_pop_object(&tmp_znode TSRMLS_CC); zend_do_fetch_property(&(yyval), &tmp_znode, &(yyvsp[(1) - (1)]) TSRMLS_CC);}
4674 : break;
4675 :
4676 : case 370:
4677 : #line 832 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4678 : { (yyval) = (yyvsp[(1) - (1)]); }
4679 : break;
4680 :
4681 : case 371:
4682 : #line 833 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4683 : { (yyval) = (yyvsp[(2) - (3)]); }
4684 : break;
4685 :
4686 : case 372:
4687 : #line 837 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4688 : { Z_LVAL((yyval).u.constant) = 1; }
4689 : break;
4690 :
4691 : case 373:
4692 : #line 838 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4693 : { Z_LVAL((yyval).u.constant)++; }
4694 : break;
4695 :
4696 : case 376:
4697 : #line 848 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4698 : { zend_do_add_list_element(&(yyvsp[(1) - (1)]) TSRMLS_CC); }
4699 : break;
4700 :
4701 : case 377:
4702 : #line 849 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4703 : { zend_do_new_list_begin(TSRMLS_C); }
4704 : break;
4705 :
4706 : case 378:
4707 : #line 849 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4708 : { zend_do_new_list_end(TSRMLS_C); }
4709 : break;
4710 :
4711 : case 379:
4712 : #line 850 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4713 : { zend_do_add_list_element(NULL TSRMLS_CC); }
4714 : break;
4715 :
4716 : case 380:
4717 : #line 855 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4718 : { zend_do_init_array(&(yyval), NULL, NULL, 0 TSRMLS_CC); }
4719 : break;
4720 :
4721 : case 381:
4722 : #line 856 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4723 : { (yyval) = (yyvsp[(1) - (2)]); }
4724 : break;
4725 :
4726 : case 382:
4727 : #line 860 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4728 : { zend_do_add_array_element(&(yyval), &(yyvsp[(5) - (5)]), &(yyvsp[(3) - (5)]), 0 TSRMLS_CC); }
4729 : break;
4730 :
4731 : case 383:
4732 : #line 861 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4733 : { zend_do_add_array_element(&(yyval), &(yyvsp[(3) - (3)]), NULL, 0 TSRMLS_CC); }
4734 : break;
4735 :
4736 : case 384:
4737 : #line 862 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4738 : { zend_do_init_array(&(yyval), &(yyvsp[(3) - (3)]), &(yyvsp[(1) - (3)]), 0 TSRMLS_CC); }
4739 : break;
4740 :
4741 : case 385:
4742 : #line 863 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4743 : { zend_do_init_array(&(yyval), &(yyvsp[(1) - (1)]), NULL, 0 TSRMLS_CC); }
4744 : break;
4745 :
4746 : case 386:
4747 : #line 864 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4748 : { zend_do_add_array_element(&(yyval), &(yyvsp[(6) - (6)]), &(yyvsp[(3) - (6)]), 1 TSRMLS_CC); }
4749 : break;
4750 :
4751 : case 387:
4752 : #line 865 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4753 : { zend_do_add_array_element(&(yyval), &(yyvsp[(4) - (4)]), NULL, 1 TSRMLS_CC); }
4754 : break;
4755 :
4756 : case 388:
4757 : #line 866 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4758 : { zend_do_init_array(&(yyval), &(yyvsp[(4) - (4)]), &(yyvsp[(1) - (4)]), 1 TSRMLS_CC); }
4759 : break;
4760 :
4761 : case 389:
4762 : #line 867 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4763 : { zend_do_init_array(&(yyval), &(yyvsp[(2) - (2)]), NULL, 1 TSRMLS_CC); }
4764 : break;
4765 :
4766 : case 390:
4767 : #line 871 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4768 : { zend_do_end_variable_parse(BP_VAR_R, 0 TSRMLS_CC); zend_do_add_variable(&(yyval), &(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
4769 : break;
4770 :
4771 : case 391:
4772 : #line 872 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4773 : { zend_do_add_string(&(yyval), &(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
4774 : break;
4775 :
4776 : case 392:
4777 : #line 873 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4778 : { zend_do_add_string(&(yyval), &(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
4779 : break;
4780 :
4781 : case 393:
4782 : #line 874 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4783 : { zend_do_add_string(&(yyval), &(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
4784 : break;
4785 :
4786 : case 394:
4787 : #line 875 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4788 : { zend_do_add_char(&(yyval), &(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
4789 : break;
4790 :
4791 : case 395:
4792 : #line 876 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4793 : { zend_do_add_string(&(yyval), &(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
4794 : break;
4795 :
4796 : case 396:
4797 : #line 877 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4798 : { Z_LVAL((yyvsp[(2) - (2)]).u.constant) = (long) '['; zend_do_add_char(&(yyval), &(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
4799 : break;
4800 :
4801 : case 397:
4802 : #line 878 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4803 : { Z_LVAL((yyvsp[(2) - (2)]).u.constant) = (long) ']'; zend_do_add_char(&(yyval), &(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
4804 : break;
4805 :
4806 : case 398:
4807 : #line 879 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4808 : { Z_LVAL((yyvsp[(2) - (2)]).u.constant) = (long) '{'; zend_do_add_char(&(yyval), &(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
4809 : break;
4810 :
4811 : case 399:
4812 : #line 880 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4813 : { Z_LVAL((yyvsp[(2) - (2)]).u.constant) = (long) '}'; zend_do_add_char(&(yyval), &(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
4814 : break;
4815 :
4816 : case 400:
4817 : #line 881 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4818 : { znode tmp; Z_LVAL((yyvsp[(2) - (2)]).u.constant) = (long) '-'; zend_do_add_char(&tmp, &(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]) TSRMLS_CC); Z_LVAL((yyvsp[(2) - (2)]).u.constant) = (long) '>'; zend_do_add_char(&(yyval), &tmp, &(yyvsp[(2) - (2)]) TSRMLS_CC); }
4819 : break;
4820 :
4821 : case 401:
4822 : #line 882 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4823 : { zend_do_init_string(&(yyval) TSRMLS_CC); }
4824 : break;
4825 :
4826 : case 402:
4827 : #line 889 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4828 : { zend_do_begin_variable_parse(TSRMLS_C); fetch_simple_variable(&(yyval), &(yyvsp[(1) - (1)]), 1 TSRMLS_CC); }
4829 : break;
4830 :
4831 : case 403:
4832 : #line 890 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4833 : { zend_do_begin_variable_parse(TSRMLS_C); }
4834 : break;
4835 :
4836 : case 404:
4837 : #line 890 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4838 : { fetch_array_begin(&(yyval), &(yyvsp[(1) - (5)]), &(yyvsp[(4) - (5)]) TSRMLS_CC); }
4839 : break;
4840 :
4841 : case 405:
4842 : #line 891 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4843 : { zend_do_begin_variable_parse(TSRMLS_C); fetch_simple_variable(&(yyvsp[(2) - (3)]), &(yyvsp[(1) - (3)]), 1 TSRMLS_CC); zend_do_fetch_property(&(yyval), &(yyvsp[(2) - (3)]), &(yyvsp[(3) - (3)]) TSRMLS_CC); }
4844 : break;
4845 :
4846 : case 406:
4847 : #line 892 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4848 : { zend_do_begin_variable_parse(TSRMLS_C); fetch_simple_variable(&(yyval), &(yyvsp[(2) - (3)]), 1 TSRMLS_CC); }
4849 : break;
4850 :
4851 : case 407:
4852 : #line 893 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4853 : { zend_do_begin_variable_parse(TSRMLS_C); fetch_array_begin(&(yyval), &(yyvsp[(2) - (6)]), &(yyvsp[(4) - (6)]) TSRMLS_CC); }
4854 : break;
4855 :
4856 : case 408:
4857 : #line 894 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4858 : { (yyval) = (yyvsp[(2) - (3)]); }
4859 : break;
4860 :
4861 : case 409:
4862 : #line 899 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4863 : { (yyval) = (yyvsp[(1) - (1)]); }
4864 : break;
4865 :
4866 : case 410:
4867 : #line 900 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4868 : { (yyval) = (yyvsp[(1) - (1)]); }
4869 : break;
4870 :
4871 : case 411:
4872 : #line 901 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4873 : { fetch_simple_variable(&(yyval), &(yyvsp[(1) - (1)]), 1 TSRMLS_CC); }
4874 : break;
4875 :
4876 : case 412:
4877 : #line 906 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4878 : { (yyval) = (yyvsp[(3) - (4)]); }
4879 : break;
4880 :
4881 : case 413:
4882 : #line 907 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4883 : { zend_do_isset_or_isempty(ZEND_ISEMPTY, &(yyval), &(yyvsp[(3) - (4)]) TSRMLS_CC); }
4884 : break;
4885 :
4886 : case 414:
4887 : #line 908 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4888 : { zend_do_include_or_eval(ZEND_INCLUDE, &(yyval), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
4889 : break;
4890 :
4891 : case 415:
4892 : #line 909 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4893 : { zend_do_include_or_eval(ZEND_INCLUDE_ONCE, &(yyval), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
4894 : break;
4895 :
4896 : case 416:
4897 : #line 910 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4898 : { zend_do_include_or_eval(ZEND_EVAL, &(yyval), &(yyvsp[(3) - (4)]) TSRMLS_CC); }
4899 : break;
4900 :
4901 : case 417:
4902 : #line 911 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4903 : { zend_do_include_or_eval(ZEND_REQUIRE, &(yyval), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
4904 : break;
4905 :
4906 : case 418:
4907 : #line 912 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4908 : { zend_do_include_or_eval(ZEND_REQUIRE_ONCE, &(yyval), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
4909 : break;
4910 :
4911 : case 419:
4912 : #line 916 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4913 : { zend_do_isset_or_isempty(ZEND_ISSET, &(yyval), &(yyvsp[(1) - (1)]) TSRMLS_CC); }
4914 : break;
4915 :
4916 : case 420:
4917 : #line 917 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4918 : { zend_do_boolean_and_begin(&(yyvsp[(1) - (2)]), &(yyvsp[(2) - (2)]) TSRMLS_CC); }
4919 : break;
4920 :
4921 : case 421:
4922 : #line 917 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4923 : { znode tmp; zend_do_isset_or_isempty(ZEND_ISSET, &tmp, &(yyvsp[(4) - (4)]) TSRMLS_CC); zend_do_boolean_and_end(&(yyval), &(yyvsp[(1) - (4)]), &tmp, &(yyvsp[(2) - (4)]) TSRMLS_CC); }
4924 : break;
4925 :
4926 : case 422:
4927 : #line 921 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
4928 : { zend_do_fetch_constant(&(yyval), &(yyvsp[(1) - (3)]), &(yyvsp[(3) - (3)]), ZEND_RT TSRMLS_CC); }
4929 : break;
4930 :
4931 :
4932 : /* Line 1267 of yacc.c. */
4933 : #line 4934 "Zend/zend_language_parser.c"
4934 : default: break;
4935 : }
4936 : YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
4937 :
4938 112418 : YYPOPSTACK (yylen);
4939 112418 : yylen = 0;
4940 : YY_STACK_PRINT (yyss, yyssp);
4941 :
4942 112418 : *++yyvsp = yyval;
4943 :
4944 :
4945 : /* Now `shift' the result of the reduction. Determine what state
4946 : that goes to, based on the state we popped back to and the rule
4947 : number reduced by. */
4948 :
4949 112418 : yyn = yyr1[yyn];
4950 :
4951 112418 : yystate = yypgoto[yyn - YYNTOKENS] + *yyssp;
4952 134658 : if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp)
4953 22240 : yystate = yytable[yystate];
4954 : else
4955 90178 : yystate = yydefgoto[yyn - YYNTOKENS];
4956 :
4957 112418 : goto yynewstate;
4958 :
4959 :
4960 : /*------------------------------------.
4961 : | yyerrlab -- here on detecting error |
4962 : `------------------------------------*/
4963 0 : yyerrlab:
4964 : /* If not already recovering from an error, report this error. */
4965 0 : if (!yyerrstatus)
4966 : {
4967 0 : ++yynerrs;
4968 : #if ! YYERROR_VERBOSE
4969 : yyerror (YY_("syntax error"));
4970 : #else
4971 : {
4972 0 : YYSIZE_T yysize = yysyntax_error (0, yystate, yychar);
4973 0 : if (yymsg_alloc < yysize && yymsg_alloc < YYSTACK_ALLOC_MAXIMUM)
4974 : {
4975 0 : YYSIZE_T yyalloc = 2 * yysize;
4976 0 : if (! (yysize <= yyalloc && yyalloc <= YYSTACK_ALLOC_MAXIMUM))
4977 0 : yyalloc = YYSTACK_ALLOC_MAXIMUM;
4978 0 : if (yymsg != yymsgbuf)
4979 0 : YYSTACK_FREE (yymsg);
4980 0 : yymsg = (char *) YYSTACK_ALLOC (yyalloc);
4981 0 : if (yymsg)
4982 0 : yymsg_alloc = yyalloc;
4983 : else
4984 : {
4985 0 : yymsg = yymsgbuf;
4986 0 : yymsg_alloc = sizeof yymsgbuf;
4987 : }
4988 : }
4989 :
4990 0 : if (0 < yysize && yysize <= yymsg_alloc)
4991 : {
4992 0 : (void) yysyntax_error (yymsg, yystate, yychar);
4993 0 : yyerror (yymsg);
4994 : }
4995 : else
4996 : {
4997 0 : yyerror (YY_("syntax error"));
4998 0 : if (yysize != 0)
4999 0 : goto yyexhaustedlab;
5000 : }
5001 : }
5002 : #endif
5003 : }
5004 :
5005 :
5006 :
5007 0 : if (yyerrstatus == 3)
5008 : {
5009 : /* If just tried and failed to reuse look-ahead token after an
5010 : error, discard it. */
5011 :
5012 0 : if (yychar <= YYEOF)
5013 : {
5014 : /* Return failure if at end of input. */
5015 0 : if (yychar == YYEOF)
5016 0 : YYABORT;
5017 : }
5018 : else
5019 : {
5020 0 : yydestruct ("Error: discarding",
5021 : yytoken, &yylval);
5022 0 : yychar = YYEMPTY;
5023 : }
5024 : }
5025 :
5026 : /* Else will try to reuse look-ahead token after shifting the error
5027 : token. */
5028 0 : goto yyerrlab1;
5029 :
5030 :
5031 : /*---------------------------------------------------.
5032 : | yyerrorlab -- error raised explicitly by YYERROR. |
5033 : `---------------------------------------------------*/
5034 : yyerrorlab:
5035 :
5036 : /* Pacify compilers like GCC when the user code never invokes
5037 : YYERROR and the label yyerrorlab therefore never appears in user
5038 : code. */
5039 : if (/*CONSTCOND*/ 0)
5040 : goto yyerrorlab;
5041 :
5042 : /* Do not reclaim the symbols of the rule which action triggered
5043 : this YYERROR. */
5044 : YYPOPSTACK (yylen);
5045 : yylen = 0;
5046 : YY_STACK_PRINT (yyss, yyssp);
5047 : yystate = *yyssp;
5048 : goto yyerrlab1;
5049 :
5050 :
5051 : /*-------------------------------------------------------------.
5052 : | yyerrlab1 -- common code for both syntax error and YYERROR. |
5053 : `-------------------------------------------------------------*/
5054 0 : yyerrlab1:
5055 0 : yyerrstatus = 3; /* Each real token shifted decrements this. */
5056 :
5057 : for (;;)
5058 : {
5059 0 : yyn = yypact[yystate];
5060 0 : if (yyn != YYPACT_NINF)
5061 : {
5062 0 : yyn += YYTERROR;
5063 0 : if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
5064 : {
5065 0 : yyn = yytable[yyn];
5066 0 : if (0 < yyn)
5067 0 : break;
5068 : }
5069 : }
5070 :
5071 : /* Pop the current state because it cannot handle the error token. */
5072 0 : if (yyssp == yyss)
5073 0 : YYABORT;
5074 :
5075 :
5076 0 : yydestruct ("Error: popping",
5077 : yystos[yystate], yyvsp);
5078 0 : YYPOPSTACK (1);
5079 0 : yystate = *yyssp;
5080 : YY_STACK_PRINT (yyss, yyssp);
5081 0 : }
5082 :
5083 0 : if (yyn == YYFINAL)
5084 0 : YYACCEPT;
5085 :
5086 0 : *++yyvsp = yylval;
5087 :
5088 :
5089 : /* Shift the error token. */
5090 : YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
5091 :
5092 0 : yystate = yyn;
5093 0 : goto yynewstate;
5094 :
5095 :
5096 : /*-------------------------------------.
5097 : | yyacceptlab -- YYACCEPT comes here. |
5098 : `-------------------------------------*/
5099 335 : yyacceptlab:
5100 335 : yyresult = 0;
5101 335 : goto yyreturn;
5102 :
5103 : /*-----------------------------------.
5104 : | yyabortlab -- YYABORT comes here. |
5105 : `-----------------------------------*/
5106 0 : yyabortlab:
5107 0 : yyresult = 1;
5108 0 : goto yyreturn;
5109 :
5110 : #ifndef yyoverflow
5111 : /*-------------------------------------------------.
5112 : | yyexhaustedlab -- memory exhaustion comes here. |
5113 : `-------------------------------------------------*/
5114 0 : yyexhaustedlab:
5115 0 : yyerror (YY_("memory exhausted"));
5116 0 : yyresult = 2;
5117 : /* Fall through. */
5118 : #endif
5119 :
5120 335 : yyreturn:
5121 335 : if (yychar != YYEOF && yychar != YYEMPTY)
5122 0 : yydestruct ("Cleanup: discarding lookahead",
5123 : yytoken, &yylval);
5124 : /* Do not reclaim the symbols of the rule which action triggered
5125 : this YYABORT or YYACCEPT. */
5126 335 : YYPOPSTACK (yylen);
5127 : YY_STACK_PRINT (yyss, yyssp);
5128 1005 : while (yyssp != yyss)
5129 : {
5130 335 : yydestruct ("Cleanup: popping",
5131 : yystos[*yyssp], yyvsp);
5132 335 : YYPOPSTACK (1);
5133 : }
5134 : #ifndef yyoverflow
5135 335 : if (yyss != yyssa)
5136 0 : YYSTACK_FREE (yyss);
5137 : #endif
5138 : #if YYERROR_VERBOSE
5139 335 : if (yymsg != yymsgbuf)
5140 0 : YYSTACK_FREE (yymsg);
5141 : #endif
5142 : /* Make sure YYID is used. */
5143 335 : return YYID (yyresult);
5144 : }
5145 :
5146 :
5147 : #line 924 "/home/mike/cvs/php-5.2/Zend/zend_language_parser.y"
5148 :
5149 :
5150 : /*
5151 : * Local variables:
5152 : * tab-width: 4
5153 : * c-basic-offset: 4
5154 : * indent-tabs-mode: t
5155 : * End:
5156 : */
5157 :
|