blob: 899f4d2c5241e1cb1d22d27553cb84e35c3475a1 [file] [log] [blame]
/* A Bison parser, made by GNU Bison 1.875d. */
/* Skeleton parser for Yacc-like parsing with Bison, Copyright (C) 1984,
1989, 1990, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
/* As a special exception, when this file is copied by Bison into a
Bison output file, you may use that output file without restriction.
This special exception was added by the Free Software Foundation
in version 1.24 of Bison. */
/* Written by Richard Stallman by simplifying the original so called
``semantic'' parser. */
/* All symbols defined below should begin with yy or YY, to avoid
infringing on user name space. This should be done even for local
variables, as they might otherwise be expanded by user macros.
There are some unavoidable exceptions within include files to
define necessary library symbols; they are noted "INFRINGES ON
USER NAME SPACE" below. */
/* turn off some warning as this is generated code */
#if defined(_MSC_VER)
# pragma warning ( disable : 4702 ) /* unreachable code */
#endif
/* Identify Bison output. */
#define YYBISON 1
/* Skeleton name. */
#define YYSKELETON_NAME "yacc.c"
/* Pure parsers. */
#define YYPURE 1
/* Using locations. */
#define YYLSP_NEEDED 0
/* If NAME_PREFIX is specified substitute the variables and functions
names. */
#define yyparse cmDependsJava_yyparse
#define yylex cmDependsJava_yylex
#define yyerror cmDependsJava_yyerror
#define yylval cmDependsJava_yylval
#define yychar cmDependsJava_yychar
#define yydebug cmDependsJava_yydebug
#define yynerrs cmDependsJava_yynerrs
/* Tokens. */
#ifndef YYTOKENTYPE
# define YYTOKENTYPE
/* Put the tokens into the symbol table, so that GDB and other debuggers
know about them. */
enum yytokentype {
jp_ABSTRACT = 258,
jp_ASSERT = 259,
jp_BOOLEAN_TYPE = 260,
jp_BREAK = 261,
jp_BYTE_TYPE = 262,
jp_CASE = 263,
jp_CATCH = 264,
jp_CHAR_TYPE = 265,
jp_CLASS = 266,
jp_CONTINUE = 267,
jp_DEFAULT = 268,
jp_DO = 269,
jp_DOUBLE_TYPE = 270,
jp_ELSE = 271,
jp_EXTENDS = 272,
jp_FINAL = 273,
jp_FINALLY = 274,
jp_FLOAT_TYPE = 275,
jp_FOR = 276,
jp_IF = 277,
jp_IMPLEMENTS = 278,
jp_IMPORT = 279,
jp_INSTANCEOF = 280,
jp_INT_TYPE = 281,
jp_INTERFACE = 282,
jp_LONG_TYPE = 283,
jp_NATIVE = 284,
jp_NEW = 285,
jp_PACKAGE = 286,
jp_PRIVATE = 287,
jp_PROTECTED = 288,
jp_PUBLIC = 289,
jp_RETURN = 290,
jp_SHORT_TYPE = 291,
jp_STATIC = 292,
jp_STRICTFP = 293,
jp_SUPER = 294,
jp_SWITCH = 295,
jp_SYNCHRONIZED = 296,
jp_THIS = 297,
jp_THROW = 298,
jp_THROWS = 299,
jp_TRANSIENT = 300,
jp_TRY = 301,
jp_VOID = 302,
jp_VOLATILE = 303,
jp_WHILE = 304,
jp_BOOLEANLITERAL = 305,
jp_CHARACTERLITERAL = 306,
jp_DECIMALINTEGERLITERAL = 307,
jp_FLOATINGPOINTLITERAL = 308,
jp_HEXINTEGERLITERAL = 309,
jp_NULLLITERAL = 310,
jp_STRINGLITERAL = 311,
jp_NAME = 312,
jp_AND = 313,
jp_ANDAND = 314,
jp_ANDEQUALS = 315,
jp_BRACKETEND = 316,
jp_BRACKETSTART = 317,
jp_CARROT = 318,
jp_CARROTEQUALS = 319,
jp_COLON = 320,
jp_COMMA = 321,
jp_CURLYEND = 322,
jp_CURLYSTART = 323,
jp_DIVIDE = 324,
jp_DIVIDEEQUALS = 325,
jp_DOLLAR = 326,
jp_DOT = 327,
jp_EQUALS = 328,
jp_EQUALSEQUALS = 329,
jp_EXCLAMATION = 330,
jp_EXCLAMATIONEQUALS = 331,
jp_GREATER = 332,
jp_GTEQUALS = 333,
jp_GTGT = 334,
jp_GTGTEQUALS = 335,
jp_GTGTGT = 336,
jp_GTGTGTEQUALS = 337,
jp_LESLESEQUALS = 338,
jp_LESSTHAN = 339,
jp_LTEQUALS = 340,
jp_LTLT = 341,
jp_MINUS = 342,
jp_MINUSEQUALS = 343,
jp_MINUSMINUS = 344,
jp_PAREEND = 345,
jp_PARESTART = 346,
jp_PERCENT = 347,
jp_PERCENTEQUALS = 348,
jp_PIPE = 349,
jp_PIPEEQUALS = 350,
jp_PIPEPIPE = 351,
jp_PLUS = 352,
jp_PLUSEQUALS = 353,
jp_PLUSPLUS = 354,
jp_QUESTION = 355,
jp_SEMICOL = 356,
jp_TILDE = 357,
jp_TIMES = 358,
jp_TIMESEQUALS = 359,
jp_ERROR = 360
};
#endif
#define jp_ABSTRACT 258
#define jp_ASSERT 259
#define jp_BOOLEAN_TYPE 260
#define jp_BREAK 261
#define jp_BYTE_TYPE 262
#define jp_CASE 263
#define jp_CATCH 264
#define jp_CHAR_TYPE 265
#define jp_CLASS 266
#define jp_CONTINUE 267
#define jp_DEFAULT 268
#define jp_DO 269
#define jp_DOUBLE_TYPE 270
#define jp_ELSE 271
#define jp_EXTENDS 272
#define jp_FINAL 273
#define jp_FINALLY 274
#define jp_FLOAT_TYPE 275
#define jp_FOR 276
#define jp_IF 277
#define jp_IMPLEMENTS 278
#define jp_IMPORT 279
#define jp_INSTANCEOF 280
#define jp_INT_TYPE 281
#define jp_INTERFACE 282
#define jp_LONG_TYPE 283
#define jp_NATIVE 284
#define jp_NEW 285
#define jp_PACKAGE 286
#define jp_PRIVATE 287
#define jp_PROTECTED 288
#define jp_PUBLIC 289
#define jp_RETURN 290
#define jp_SHORT_TYPE 291
#define jp_STATIC 292
#define jp_STRICTFP 293
#define jp_SUPER 294
#define jp_SWITCH 295
#define jp_SYNCHRONIZED 296
#define jp_THIS 297
#define jp_THROW 298
#define jp_THROWS 299
#define jp_TRANSIENT 300
#define jp_TRY 301
#define jp_VOID 302
#define jp_VOLATILE 303
#define jp_WHILE 304
#define jp_BOOLEANLITERAL 305
#define jp_CHARACTERLITERAL 306
#define jp_DECIMALINTEGERLITERAL 307
#define jp_FLOATINGPOINTLITERAL 308
#define jp_HEXINTEGERLITERAL 309
#define jp_NULLLITERAL 310
#define jp_STRINGLITERAL 311
#define jp_NAME 312
#define jp_AND 313
#define jp_ANDAND 314
#define jp_ANDEQUALS 315
#define jp_BRACKETEND 316
#define jp_BRACKETSTART 317
#define jp_CARROT 318
#define jp_CARROTEQUALS 319
#define jp_COLON 320
#define jp_COMMA 321
#define jp_CURLYEND 322
#define jp_CURLYSTART 323
#define jp_DIVIDE 324
#define jp_DIVIDEEQUALS 325
#define jp_DOLLAR 326
#define jp_DOT 327
#define jp_EQUALS 328
#define jp_EQUALSEQUALS 329
#define jp_EXCLAMATION 330
#define jp_EXCLAMATIONEQUALS 331
#define jp_GREATER 332
#define jp_GTEQUALS 333
#define jp_GTGT 334
#define jp_GTGTEQUALS 335
#define jp_GTGTGT 336
#define jp_GTGTGTEQUALS 337
#define jp_LESLESEQUALS 338
#define jp_LESSTHAN 339
#define jp_LTEQUALS 340
#define jp_LTLT 341
#define jp_MINUS 342
#define jp_MINUSEQUALS 343
#define jp_MINUSMINUS 344
#define jp_PAREEND 345
#define jp_PARESTART 346
#define jp_PERCENT 347
#define jp_PERCENTEQUALS 348
#define jp_PIPE 349
#define jp_PIPEEQUALS 350
#define jp_PIPEPIPE 351
#define jp_PLUS 352
#define jp_PLUSEQUALS 353
#define jp_PLUSPLUS 354
#define jp_QUESTION 355
#define jp_SEMICOL 356
#define jp_TILDE 357
#define jp_TIMES 358
#define jp_TIMESEQUALS 359
#define jp_ERROR 360
/* Copy the first part of user declarations. */
#line 1 "cmDependsJavaParser.y"
/*============================================================================
CMake - Cross Platform Makefile Generator
Copyright 2000-2009 Kitware, Inc., Insight Software Consortium
Distributed under the OSI-approved BSD License (the "License");
see accompanying file Copyright.txt for details.
This software is distributed WITHOUT ANY WARRANTY; without even the
implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
See the License for more information.
============================================================================*/
/*
This file must be translated to C and modified to build everywhere.
Run bison like this:
bison --yacc --name-prefix=cmDependsJava_yy
--defines=cmDependsJavaParserTokens.h -ocmDependsJavaParser.cxx
cmDependsJavaParser.y
Modify cmDependsJavaParser.c:
- remove TABs
*/
/* Configure the parser to use a lexer object. */
#define YYPARSE_PARAM yyscanner
#define YYLEX_PARAM yyscanner
#define YYERROR_VERBOSE 1
#define cmDependsJava_yyerror(x) \
cmDependsJavaError(yyscanner, x)
#define yyGetParser (cmDependsJava_yyget_extra(yyscanner))
/*-------------------------------------------------------------------------*/
#include "cmDependsJavaParserHelper.h" /* Interface to parser object. */
#include "cmDependsJavaLexer.h" /* Interface to lexer object. */
#include "cmDependsJavaParserTokens.h" /* Need YYSTYPE for YY_DECL. */
/* Forward declare the lexer entry point. */
YY_DECL;
/* Internal utility functions. */
static void cmDependsJavaError(yyscan_t yyscanner, const char* message);
#define YYDEBUG 1
#define YYMAXDEPTH 1000000
#define jpCheckEmpty(cnt) yyGetParser->CheckEmpty(__LINE__, cnt, yyvsp);
#define jpElementStart(cnt) yyGetParser->PrepareElement(&yyval)
#define jpStoreClass(str) \
yyGetParser->AddClassFound(str); yyGetParser->DeallocateParserType(&(str))
/* Disable some warnings in the generated code. */
#ifdef _MSC_VER
# pragma warning (disable: 4102) /* Unused goto label. */
# pragma warning (disable: 4065) /* Switch statement contains default but
no case. */
#endif
/* Enabling traces. */
#ifndef YYDEBUG
# define YYDEBUG 0
#endif
/* Enabling verbose error messages. */
#ifdef YYERROR_VERBOSE
# undef YYERROR_VERBOSE
# define YYERROR_VERBOSE 1
#else
# define YYERROR_VERBOSE 0
#endif
#if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)
typedef int YYSTYPE;
# define yystype YYSTYPE /* obsolescent; will be withdrawn */
# define YYSTYPE_IS_DECLARED 1
# define YYSTYPE_IS_TRIVIAL 1
#endif
/* Copy the second part of user declarations. */
/* Line 214 of yacc.c. */
#line 372 "cmDependsJavaParser.cxx"
#if ! defined (yyoverflow) || YYERROR_VERBOSE
# ifndef YYFREE
# define YYFREE free
# endif
# ifndef YYMALLOC
# define YYMALLOC malloc
# endif
/* The parser invokes alloca or malloc; define the necessary symbols. */
# ifdef YYSTACK_USE_ALLOCA
# if YYSTACK_USE_ALLOCA
# define YYSTACK_ALLOC alloca
# endif
# else
# if defined (alloca) || defined (_ALLOCA_H)
# define YYSTACK_ALLOC alloca
# else
# ifdef __GNUC__
# define YYSTACK_ALLOC __builtin_alloca
# endif
# endif
# endif
# ifdef YYSTACK_ALLOC
/* Pacify GCC's `empty if-body' warning. */
# define YYSTACK_FREE(Ptr) do { /* empty */; } while (0)
# else
# if defined (__STDC__) || defined (__cplusplus)
# include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
# define YYSIZE_T size_t
# endif
# define YYSTACK_ALLOC YYMALLOC
# define YYSTACK_FREE YYFREE
# endif
#endif /* ! defined (yyoverflow) || YYERROR_VERBOSE */
#if (! defined (yyoverflow) \
&& (! defined (__cplusplus) \
|| (defined (YYSTYPE_IS_TRIVIAL) && YYSTYPE_IS_TRIVIAL)))
/* A type that is properly aligned for any stack member. */
union yyalloc
{
short int yyss;
YYSTYPE yyvs;
};
/* The size of the maximum gap between one aligned stack and the next. */
# define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
/* The size of an array large to enough to hold all stacks, each with
N elements. */
# define YYSTACK_BYTES(N) \
((N) * (sizeof (short int) + sizeof (YYSTYPE)) \
+ YYSTACK_GAP_MAXIMUM)
/* Copy COUNT objects from FROM to TO. The source and destination do
not overlap. */
# ifndef YYCOPY
# if defined (__GNUC__) && 1 < __GNUC__
# define YYCOPY(To, From, Count) \
__builtin_memcpy (To, From, (Count) * sizeof (*(From)))
# else
# define YYCOPY(To, From, Count) \
do \
{ \
YYSIZE_T yyi; \
for (yyi = 0; yyi < (Count); yyi++) \
(To)[yyi] = (From)[yyi]; \
} \
while (0)
# endif
# endif
/* Relocate STACK from its old location to the new one. The
local variables YYSIZE and YYSTACKSIZE give the old and new number of
elements in the stack, and YYPTR gives the new location of the
stack. Advance YYPTR to a properly aligned location for the next
stack. */
# define YYSTACK_RELOCATE(Stack) \
do \
{ \
YYSIZE_T yynewbytes; \
YYCOPY (&yyptr->Stack, Stack, yysize); \
Stack = &yyptr->Stack; \
yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
yyptr += yynewbytes / sizeof (*yyptr); \
} \
while (0)
#endif
#if defined (__STDC__) || defined (__cplusplus)
typedef signed char yysigned_char;
#else
typedef short int yysigned_char;
#endif
/* YYFINAL -- State number of the termination state. */
#define YYFINAL 23
/* YYLAST -- Last index in YYTABLE. */
#define YYLAST 2215
/* YYNTOKENS -- Number of terminals. */
#define YYNTOKENS 106
/* YYNNTS -- Number of nonterminals. */
#define YYNNTS 158
/* YYNRULES -- Number of rules. */
#define YYNRULES 351
/* YYNRULES -- Number of states. */
#define YYNSTATES 575
/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */
#define YYUNDEFTOK 2
#define YYMAXUTOK 360
#define YYTRANSLATE(YYX) \
((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
/* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX. */
static const unsigned char yytranslate[] =
{
0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
105
};
#if YYDEBUG
/* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in
YYRHS. */
static const unsigned short int yyprhs[] =
{
0, 0, 3, 5, 7, 9, 11, 13, 15, 17,
19, 21, 23, 25, 27, 29, 31, 33, 35, 37,
39, 41, 43, 45, 47, 49, 51, 54, 57, 59,
61, 63, 65, 68, 72, 76, 80, 84, 86, 88,
92, 93, 95, 96, 99, 100, 103, 107, 109, 111,
115, 121, 123, 125, 127, 129, 132, 134, 136, 138,
140, 142, 144, 146, 148, 150, 152, 154, 158, 161,
165, 169, 174, 175, 177, 180, 183, 185, 189, 193,
194, 197, 199, 201, 203, 205, 207, 209, 214, 216,
220, 222, 226, 228, 232, 234, 236, 239, 242, 246,
251, 256, 257, 259, 264, 268, 269, 271, 273, 277,
281, 284, 286, 290, 292, 295, 300, 306, 311, 316,
317, 320, 326, 332, 336, 340, 341, 343, 346, 350,
354, 355, 358, 360, 362, 364, 367, 369, 372, 374,
377, 379, 382, 386, 387, 389, 392, 394, 398, 402,
403, 405, 407, 410, 412, 414, 416, 419, 423, 426,
428, 430, 432, 434, 436, 438, 440, 442, 444, 446,
448, 450, 452, 454, 456, 458, 460, 462, 464, 466,
468, 470, 472, 474, 478, 482, 485, 487, 489, 491,
493, 495, 497, 499, 505, 513, 521, 527, 532, 533,
535, 536, 539, 542, 544, 547, 551, 554, 560, 566,
574, 584, 585, 587, 588, 590, 600, 601, 603, 605,
607, 609, 611, 615, 619, 625, 629, 630, 632, 636,
640, 644, 650, 654, 659, 660, 662, 664, 667, 673,
676, 678, 680, 682, 684, 688, 690, 692, 694, 696,
703, 704, 706, 707, 709, 711, 715, 720, 725, 730,
735, 736, 738, 740, 743, 747, 750, 754, 758, 762,
766, 770, 775, 782, 789, 796, 801, 806, 808, 810,
814, 816, 818, 821, 824, 826, 828, 831, 834, 836,
839, 842, 844, 847, 850, 852, 858, 863, 869, 871,
875, 879, 883, 885, 889, 893, 895, 899, 903, 907,
909, 913, 917, 921, 925, 929, 931, 935, 939, 941,
945, 947, 951, 953, 957, 959, 963, 965, 969, 971,
977, 979, 981, 985, 987, 989, 991, 993, 995, 997,
999, 1001, 1003, 1005, 1007, 1009, 1011, 1013, 1015, 1017,
1019, 1021
};
/* YYRHS -- A `-1'-separated list of the rules' RHS. */
static const short int yyrhs[] =
{
107, 0, -1, 122, -1, 109, -1, 53, -1, 50,
-1, 51, -1, 56, -1, 55, -1, 52, -1, 54,
-1, 111, -1, 112, -1, 7, -1, 36, -1, 26,
-1, 28, -1, 10, -1, 20, -1, 15, -1, 5,
-1, 113, -1, 116, -1, 117, -1, 113, -1, 113,
-1, 111, 234, -1, 117, 234, -1, 118, -1, 120,
-1, 119, -1, 57, -1, 71, 57, -1, 117, 72,
119, -1, 117, 72, 11, -1, 117, 72, 42, -1,
121, 72, 11, -1, 111, -1, 47, -1, 123, 124,
125, -1, -1, 126, -1, -1, 124, 127, -1, -1,
125, 130, -1, 31, 117, 101, -1, 128, -1, 129,
-1, 24, 117, 101, -1, 24, 117, 72, 103, 101,
-1, 134, -1, 165, -1, 101, -1, 132, -1, 131,
132, -1, 34, -1, 33, -1, 32, -1, 37, -1,
3, -1, 18, -1, 29, -1, 41, -1, 45, -1,
48, -1, 38, -1, 135, 11, 119, -1, 133, 139,
-1, 133, 137, 139, -1, 133, 136, 139, -1, 133,
136, 137, 139, -1, -1, 131, -1, 17, 114, -1,
23, 138, -1, 115, -1, 138, 66, 115, -1, 68,
140, 67, -1, -1, 140, 141, -1, 142, -1, 158,
-1, 159, -1, 130, -1, 143, -1, 148, -1, 135,
110, 144, 101, -1, 145, -1, 144, 66, 145, -1,
146, -1, 146, 73, 147, -1, 119, -1, 146, 62,
61, -1, 261, -1, 174, -1, 149, 101, -1, 149,
157, -1, 149, 157, 101, -1, 135, 110, 151, 150,
-1, 135, 47, 151, 150, -1, -1, 155, -1, 119,
91, 152, 90, -1, 151, 62, 61, -1, -1, 153,
-1, 154, -1, 153, 66, 154, -1, 135, 110, 146,
-1, 44, 156, -1, 114, -1, 156, 66, 114, -1,
177, -1, 37, 177, -1, 135, 160, 150, 161, -1,
135, 160, 150, 161, 101, -1, 118, 91, 152, 90,
-1, 68, 162, 178, 67, -1, -1, 162, 163, -1,
42, 91, 228, 90, 101, -1, 39, 91, 228, 90,
101, -1, 135, 27, 119, -1, 164, 166, 168, -1,
-1, 167, -1, 17, 115, -1, 167, 66, 115, -1,
68, 169, 67, -1, -1, 169, 170, -1, 171, -1,
172, -1, 134, -1, 134, 101, -1, 165, -1, 165,
101, -1, 143, -1, 149, 173, -1, 101, -1, 173,
101, -1, 68, 175, 67, -1, -1, 176, -1, 176,
66, -1, 147, -1, 176, 66, 147, -1, 68, 178,
67, -1, -1, 179, -1, 180, -1, 179, 180, -1,
181, -1, 183, -1, 134, -1, 182, 101, -1, 131,
110, 144, -1, 110, 144, -1, 185, -1, 187, -1,
191, -1, 192, -1, 201, -1, 204, -1, 185, -1,
188, -1, 193, -1, 202, -1, 207, -1, 177, -1,
186, -1, 189, -1, 194, -1, 203, -1, 213, -1,
215, -1, 216, -1, 218, -1, 217, -1, 219, -1,
212, -1, 101, -1, 119, 65, 183, -1, 119, 65,
184, -1, 190, 101, -1, 258, -1, 242, -1, 243,
-1, 239, -1, 240, -1, 236, -1, 226, -1, 22,
91, 261, 90, 183, -1, 22, 91, 261, 90, 184,
16, 183, -1, 22, 91, 261, 90, 184, 16, 184,
-1, 40, 91, 261, 90, 195, -1, 68, 197, 196,
67, -1, -1, 199, -1, -1, 197, 198, -1, 199,
179, -1, 200, -1, 199, 200, -1, 8, 262, 65,
-1, 13, 65, -1, 49, 91, 261, 90, 183, -1,
49, 91, 261, 90, 184, -1, 14, 183, 49, 91,
261, 90, 101, -1, 21, 91, 206, 101, 208, 101,
205, 90, 183, -1, -1, 210, -1, -1, 209, -1,
21, 91, 206, 101, 208, 101, 205, 90, 184, -1,
-1, 261, -1, 211, -1, 182, -1, 211, -1, 190,
-1, 211, 66, 190, -1, 4, 261, 101, -1, 4,
261, 65, 261, 101, -1, 6, 214, 101, -1, -1,
119, -1, 12, 214, 101, -1, 35, 208, 101, -1,
43, 261, 101, -1, 41, 91, 261, 90, 177, -1,
46, 177, 221, -1, 46, 177, 220, 223, -1, -1,
221, -1, 222, -1, 221, 222, -1, 9, 91, 154,
90, 177, -1, 19, 177, -1, 225, -1, 230, -1,
108, -1, 42, -1, 91, 261, 90, -1, 226, -1,
235, -1, 236, -1, 237, -1, 263, 114, 91, 228,
90, 227, -1, -1, 139, -1, -1, 229, -1, 261,
-1, 229, 66, 261, -1, 263, 111, 232, 231, -1,
263, 113, 232, 231, -1, 263, 111, 234, 174, -1,
263, 113, 234, 174, -1, -1, 234, -1, 233, -1,
232, 233, -1, 62, 261, 61, -1, 62, 61, -1,
234, 62, 61, -1, 224, 72, 119, -1, 39, 72,
119, -1, 42, 72, 119, -1, 224, 72, 42, -1,
117, 91, 228, 90, -1, 224, 72, 119, 91, 228,
90, -1, 39, 72, 119, 91, 228, 90, -1, 42,
72, 119, 91, 228, 90, -1, 117, 62, 261, 61,
-1, 225, 62, 261, 61, -1, 224, -1, 117, -1,
116, 72, 11, -1, 239, -1, 240, -1, 238, 99,
-1, 238, 89, -1, 242, -1, 243, -1, 97, 241,
-1, 87, 241, -1, 244, -1, 99, 241, -1, 89,
241, -1, 238, -1, 102, 241, -1, 75, 241, -1,
245, -1, 91, 111, 231, 90, 241, -1, 91, 261,
90, 244, -1, 91, 117, 234, 90, 244, -1, 241,
-1, 246, 103, 241, -1, 246, 69, 241, -1, 246,
92, 241, -1, 246, -1, 247, 97, 246, -1, 247,
87, 246, -1, 247, -1, 248, 86, 247, -1, 248,
79, 247, -1, 248, 81, 247, -1, 248, -1, 249,
84, 248, -1, 249, 77, 248, -1, 249, 85, 248,
-1, 249, 78, 248, -1, 249, 25, 112, -1, 249,
-1, 250, 74, 249, -1, 250, 76, 249, -1, 250,
-1, 251, 58, 250, -1, 251, -1, 252, 63, 251,
-1, 252, -1, 253, 94, 252, -1, 253, -1, 254,
59, 253, -1, 254, -1, 255, 96, 254, -1, 255,
-1, 255, 100, 261, 65, 256, -1, 256, -1, 258,
-1, 259, 260, 257, -1, 117, -1, 235, -1, 237,
-1, 73, -1, 104, -1, 70, -1, 93, -1, 98,
-1, 88, -1, 83, -1, 80, -1, 82, -1, 60,
-1, 64, -1, 95, -1, 257, -1, 261, -1, 30,
-1, 117, 72, 30, -1
};
/* YYRLINE[YYN] -- source line where rule number YYN was defined. */
static const unsigned short int yyrline[] =
{
0, 191, 191, 200, 208, 216, 224, 232, 240, 249,
257, 266, 274, 283, 288, 293, 298, 303, 308, 313,
318, 324, 332, 341, 351, 360, 369, 377, 387, 393,
400, 407, 413, 420, 429, 439, 449, 458, 466, 475,
484, 490, 499, 505, 514, 520, 529, 541, 549, 558,
570, 583, 591, 599, 608, 616, 625, 625, 625, 626,
627, 627, 627, 627, 627, 627, 628, 631, 641, 650,
659, 668, 678, 684, 693, 702, 711, 719, 728, 737,
743, 752, 760, 768, 776, 785, 793, 802, 808, 816,
825, 833, 842, 851, 860, 868, 877, 885, 893, 902,
911, 921, 928, 938, 948, 955, 962, 965, 971, 981,
991, 1001, 1007, 1017, 1027, 1037, 1046, 1056, 1067, 1077,
1084, 1094, 1103, 1113, 1122, 1132, 1138, 1148, 1157, 1167,
1177, 1184, 1193, 1202, 1211, 1220, 1228, 1237, 1246, 1256,
1266, 1275, 1285, 1295, 1302, 1311, 1321, 1330, 1340, 1349,
1356, 1366, 1375, 1385, 1394, 1403, 1413, 1423, 1432, 1442,
1451, 1460, 1469, 1478, 1487, 1497, 1506, 1515, 1524, 1533,
1543, 1552, 1561, 1570, 1579, 1588, 1597, 1606, 1615, 1624,
1633, 1642, 1652, 1662, 1673, 1683, 1693, 1702, 1711, 1720,
1729, 1738, 1747, 1757, 1767, 1777, 1787, 1794, 1801, 1808,
1818, 1825, 1835, 1845, 1854, 1864, 1873, 1883, 1890, 1897,
1904, 1912, 1919, 1929, 1936, 1946, 1956, 1963, 1973, 1982,
1992, 2002, 2011, 2021, 2030, 2040, 2051, 2058, 2065, 2076,
2086, 2096, 2106, 2115, 2125, 2132, 2142, 2151, 2161, 2168,
2178, 2187, 2197, 2206, 2212, 2221, 2230, 2239, 2248, 2258,
2268, 2275, 2285, 2292, 2302, 2311, 2321, 2330, 2339, 2348,
2358, 2365, 2375, 2384, 2394, 2404, 2410, 2417, 2427, 2437,
2447, 2458, 2468, 2479, 2489, 2500, 2510, 2520, 2529, 2538,
2547, 2556, 2566, 2576, 2586, 2595, 2604, 2613, 2622, 2632,
2642, 2652, 2661, 2670, 2679, 2689, 2698, 2707, 2714, 2723,
2732, 2741, 2751, 2760, 2769, 2779, 2788, 2797, 2806, 2816,
2825, 2834, 2843, 2852, 2861, 2871, 2880, 2889, 2899, 2908,
2918, 2927, 2937, 2946, 2956, 2965, 2975, 2984, 2994, 3003,
3013, 3022, 3032, 3042, 3052, 3061, 3071, 3080, 3089, 3098,
3107, 3116, 3125, 3134, 3143, 3152, 3161, 3170, 3180, 3190,
3200, 3209
};
#endif
#if YYDEBUG || YYERROR_VERBOSE
/* YYTNME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
First, the terminals, then, starting at YYNTOKENS, nonterminals. */
static const char *const yytname[] =
{
"$end", "error", "$undefined", "jp_ABSTRACT", "jp_ASSERT",
"jp_BOOLEAN_TYPE", "jp_BREAK", "jp_BYTE_TYPE", "jp_CASE", "jp_CATCH",
"jp_CHAR_TYPE", "jp_CLASS", "jp_CONTINUE", "jp_DEFAULT", "jp_DO",
"jp_DOUBLE_TYPE", "jp_ELSE", "jp_EXTENDS", "jp_FINAL", "jp_FINALLY",
"jp_FLOAT_TYPE", "jp_FOR", "jp_IF", "jp_IMPLEMENTS", "jp_IMPORT",
"jp_INSTANCEOF", "jp_INT_TYPE", "jp_INTERFACE", "jp_LONG_TYPE",
"jp_NATIVE", "jp_NEW", "jp_PACKAGE", "jp_PRIVATE", "jp_PROTECTED",
"jp_PUBLIC", "jp_RETURN", "jp_SHORT_TYPE", "jp_STATIC", "jp_STRICTFP",
"jp_SUPER", "jp_SWITCH", "jp_SYNCHRONIZED", "jp_THIS", "jp_THROW",
"jp_THROWS", "jp_TRANSIENT", "jp_TRY", "jp_VOID", "jp_VOLATILE",
"jp_WHILE", "jp_BOOLEANLITERAL", "jp_CHARACTERLITERAL",
"jp_DECIMALINTEGERLITERAL", "jp_FLOATINGPOINTLITERAL",
"jp_HEXINTEGERLITERAL", "jp_NULLLITERAL", "jp_STRINGLITERAL", "jp_NAME",
"jp_AND", "jp_ANDAND", "jp_ANDEQUALS", "jp_BRACKETEND",
"jp_BRACKETSTART", "jp_CARROT", "jp_CARROTEQUALS", "jp_COLON",
"jp_COMMA", "jp_CURLYEND", "jp_CURLYSTART", "jp_DIVIDE",
"jp_DIVIDEEQUALS", "jp_DOLLAR", "jp_DOT", "jp_EQUALS", "jp_EQUALSEQUALS",
"jp_EXCLAMATION", "jp_EXCLAMATIONEQUALS", "jp_GREATER", "jp_GTEQUALS",
"jp_GTGT", "jp_GTGTEQUALS", "jp_GTGTGT", "jp_GTGTGTEQUALS",
"jp_LESLESEQUALS", "jp_LESSTHAN", "jp_LTEQUALS", "jp_LTLT", "jp_MINUS",
"jp_MINUSEQUALS", "jp_MINUSMINUS", "jp_PAREEND", "jp_PARESTART",
"jp_PERCENT", "jp_PERCENTEQUALS", "jp_PIPE", "jp_PIPEEQUALS",
"jp_PIPEPIPE", "jp_PLUS", "jp_PLUSEQUALS", "jp_PLUSPLUS", "jp_QUESTION",
"jp_SEMICOL", "jp_TILDE", "jp_TIMES", "jp_TIMESEQUALS", "jp_ERROR",
"$accept", "Goal", "Literal", "IntegerLiteral", "Type", "PrimitiveType",
"ReferenceType", "ClassOrInterfaceType", "ClassType", "InterfaceType",
"ArrayType", "Name", "SimpleName", "Identifier", "QualifiedName",
"SimpleType", "CompilationUnit", "PackageDeclarationopt",
"ImportDeclarations", "TypeDeclarations", "PackageDeclaration",
"ImportDeclaration", "SingleTypeImportDeclaration",
"TypeImportOnDemandDeclaration", "TypeDeclaration", "Modifiers",
"Modifier", "ClassHeader", "ClassDeclaration", "Modifiersopt", "Super",
"Interfaces", "InterfaceTypeList", "ClassBody", "ClassBodyDeclarations",
"ClassBodyDeclaration", "ClassMemberDeclaration", "FieldDeclaration",
"VariableDeclarators", "VariableDeclarator", "VariableDeclaratorId",
"VariableInitializer", "MethodDeclaration", "MethodHeader", "Throwsopt",
"MethodDeclarator", "FormalParameterListopt", "FormalParameterList",
"FormalParameter", "Throws", "ClassTypeList", "MethodBody",
"StaticInitializer", "ConstructorDeclaration", "ConstructorDeclarator",
"ConstructorBody", "ExplicitConstructorInvocationopt",
"ExplicitConstructorInvocation", "InterfaceHeader",
"InterfaceDeclaration", "ExtendsInterfacesopt", "ExtendsInterfaces",
"InterfaceBody", "InterfaceMemberDeclarations",
"InterfaceMemberDeclaration", "ConstantDeclaration",
"AbstractMethodDeclaration", "Semicols", "ArrayInitializer",
"VariableInitializersOptional", "VariableInitializers", "Block",
"BlockStatementsopt", "BlockStatements", "BlockStatement",
"LocalVariableDeclarationStatement", "LocalVariableDeclaration",
"Statement", "StatementNoShortIf",
"StatementWithoutTrailingSubstatement", "EmptyStatement",
"LabeledStatement", "LabeledStatementNoShortIf", "ExpressionStatement",
"StatementExpression", "IfThenStatement", "IfThenElseStatement",
"IfThenElseStatementNoShortIf", "SwitchStatement", "SwitchBlock",
"SwitchLabelsopt", "SwitchBlockStatementGroups",
"SwitchBlockStatementGroup", "SwitchLabels", "SwitchLabel",
"WhileStatement", "WhileStatementNoShortIf", "DoStatement",
"ForStatement", "ForUpdateopt", "ForInitopt", "ForStatementNoShortIf",
"Expressionopt", "ForInit", "ForUpdate", "StatementExpressionList",
"AssertStatement", "BreakStatement", "Identifieropt",
"ContinueStatement", "ReturnStatement", "ThrowStatement",
"SynchronizedStatement", "TryStatement", "Catchesopt", "Catches",
"CatchClause", "Finally", "Primary", "PrimaryNoNewArray",
"ClassInstanceCreationExpression", "ClassBodyOpt", "ArgumentListopt",
"ArgumentList", "ArrayCreationExpression", "Dimsopt", "DimExprs",
"DimExpr", "Dims", "FieldAccess", "MethodInvocation", "ArrayAccess",
"PostfixExpression", "PostIncrementExpression",
"PostDecrementExpression", "UnaryExpression", "PreIncrementExpression",
"PreDecrementExpression", "UnaryExpressionNotPlusMinus",
"CastExpression", "MultiplicativeExpression", "AdditiveExpression",
"ShiftExpression", "RelationalExpression", "EqualityExpression",
"AndExpression", "ExclusiveOrExpression", "InclusiveOrExpression",
"ConditionalAndExpression", "ConditionalOrExpression",
"ConditionalExpression", "AssignmentExpression", "Assignment",
"LeftHandSide", "AssignmentOperator", "Expression", "ConstantExpression",
"New", 0
};
#endif
# ifdef YYPRINT
/* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to
token YYLEX-NUM. */
static const unsigned short int yytoknum[] =
{
0, 256, 257, 258, 259, 260, 261, 262, 263, 264,
265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
315, 316, 317, 318, 319, 320, 321, 322, 323, 324,
325, 326, 327, 328, 329, 330, 331, 332, 333, 334,
335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
345, 346, 347, 348, 349, 350, 351, 352, 353, 354,
355, 356, 357, 358, 359, 360
};
# endif
/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
static const unsigned short int yyr1[] =
{
0, 106, 107, 108, 108, 108, 108, 108, 108, 109,
109, 110, 110, 111, 111, 111, 111, 111, 111, 111,
111, 112, 112, 113, 114, 115, 116, 116, 117, 117,
118, 119, 119, 120, 120, 120, 120, 121, 121, 122,
123, 123, 124, 124, 125, 125, 126, 127, 127, 128,
129, 130, 130, 130, 131, 131, 132, 132, 132, 132,
132, 132, 132, 132, 132, 132, 132, 133, 134, 134,
134, 134, 135, 135, 136, 137, 138, 138, 139, 140,
140, 141, 141, 141, 141, 142, 142, 143, 144, 144,
145, 145, 146, 146, 147, 147, 148, 148, 148, 149,
149, 150, 150, 151, 151, 152, 152, 153, 153, 154,
155, 156, 156, 157, 158, 159, 159, 160, 161, 162,
162, 163, 163, 164, 165, 166, 166, 167, 167, 168,
169, 169, 170, 170, 170, 170, 170, 170, 171, 172,
173, 173, 174, 175, 175, 175, 176, 176, 177, 178,
178, 179, 179, 180, 180, 180, 181, 182, 182, 183,
183, 183, 183, 183, 183, 184, 184, 184, 184, 184,
185, 185, 185, 185, 185, 185, 185, 185, 185, 185,
185, 185, 186, 187, 188, 189, 190, 190, 190, 190,
190, 190, 190, 191, 192, 193, 194, 195, 196, 196,
197, 197, 198, 199, 199, 200, 200, 201, 202, 203,
204, 205, 205, 206, 206, 207, 208, 208, 209, 209,
210, 211, 211, 212, 212, 213, 214, 214, 215, 216,
217, 218, 219, 219, 220, 220, 221, 221, 222, 223,
224, 224, 225, 225, 225, 225, 225, 225, 225, 226,
227, 227, 228, 228, 229, 229, 230, 230, 230, 230,
231, 231, 232, 232, 233, 234, 234, 235, 235, 235,
235, 236, 236, 236, 236, 237, 237, 238, 238, 238,
238, 238, 239, 240, 241, 241, 241, 241, 241, 242,
243, 244, 244, 244, 244, 245, 245, 245, 246, 246,
246, 246, 247, 247, 247, 248, 248, 248, 248, 249,
249, 249, 249, 249, 249, 250, 250, 250, 251, 251,
252, 252, 253, 253, 254, 254, 255, 255, 256, 256,
257, 257, 258, 259, 259, 259, 260, 260, 260, 260,
260, 260, 260, 260, 260, 260, 260, 260, 261, 262,
263, 263
};
/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
static const unsigned char yyr2[] =
{
0, 2, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 2, 2, 1, 1,
1, 1, 2, 3, 3, 3, 3, 1, 1, 3,
0, 1, 0, 2, 0, 2, 3, 1, 1, 3,
5, 1, 1, 1, 1, 2, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 3, 2, 3,
3, 4, 0, 1, 2, 2, 1, 3, 3, 0,
2, 1, 1, 1, 1, 1, 1, 4, 1, 3,
1, 3, 1, 3, 1, 1, 2, 2, 3, 4,
4, 0, 1, 4, 3, 0, 1, 1, 3, 3,
2, 1, 3, 1, 2, 4, 5, 4, 4, 0,
2, 5, 5, 3, 3, 0, 1, 2, 3, 3,
0, 2, 1, 1, 1, 2, 1, 2, 1, 2,
1, 2, 3, 0, 1, 2, 1, 3, 3, 0,
1, 1, 2, 1, 1, 1, 2, 3, 2, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 3, 3, 2, 1, 1, 1, 1,
1, 1, 1, 5, 7, 7, 5, 4, 0, 1,
0, 2, 2, 1, 2, 3, 2, 5, 5, 7,
9, 0, 1, 0, 1, 9, 0, 1, 1, 1,
1, 1, 3, 3, 5, 3, 0, 1, 3, 3,
3, 5, 3, 4, 0, 1, 1, 2, 5, 2,
1, 1, 1, 1, 3, 1, 1, 1, 1, 6,
0, 1, 0, 1, 1, 3, 4, 4, 4, 4,
0, 1, 1, 2, 3, 2, 3, 3, 3, 3,
3, 4, 6, 6, 6, 4, 4, 1, 1, 3,
1, 1, 2, 2, 1, 1, 2, 2, 1, 2,
2, 1, 2, 2, 1, 5, 4, 5, 1, 3,
3, 3, 1, 3, 3, 1, 3, 3, 3, 1,
3, 3, 3, 3, 3, 1, 3, 3, 1, 3,
1, 3, 1, 3, 1, 3, 1, 3, 1, 5,
1, 1, 3, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 3
};
/* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
STATE-NUM when YYTABLE doesn't specify something else to do. Zero
means the default is an error. */
static const unsigned short int yydefact[] =
{
40, 0, 0, 2, 42, 41, 20, 13, 17, 19,
18, 15, 16, 14, 38, 31, 0, 37, 0, 28,
30, 29, 0, 1, 44, 32, 0, 46, 0, 0,
72, 43, 47, 48, 34, 35, 33, 36, 0, 60,
61, 62, 58, 57, 56, 59, 66, 63, 64, 65,
53, 45, 73, 54, 0, 51, 0, 125, 52, 0,
49, 55, 0, 0, 79, 0, 0, 68, 0, 0,
0, 0, 126, 0, 24, 74, 23, 25, 76, 75,
72, 0, 70, 69, 67, 123, 127, 130, 124, 0,
50, 0, 59, 78, 84, 0, 80, 81, 85, 86,
0, 82, 83, 71, 72, 128, 77, 72, 114, 38,
0, 11, 12, 21, 22, 23, 28, 101, 96, 97,
113, 129, 134, 0, 138, 0, 136, 131, 132, 133,
0, 226, 226, 0, 0, 0, 350, 216, 0, 0,
63, 243, 0, 0, 0, 5, 6, 9, 4, 10,
8, 7, 0, 0, 0, 182, 242, 3, 0, 22,
333, 30, 73, 155, 0, 170, 0, 72, 151, 153,
0, 154, 159, 171, 160, 172, 0, 161, 162, 173,
163, 174, 164, 181, 175, 176, 177, 179, 178, 180,
277, 240, 245, 241, 246, 247, 248, 0, 189, 190,
187, 188, 186, 0, 0, 0, 101, 92, 0, 88,
90, 101, 0, 26, 27, 72, 0, 0, 102, 98,
135, 140, 139, 137, 0, 0, 0, 0, 0, 37,
0, 278, 245, 247, 291, 280, 281, 298, 284, 285,
288, 294, 302, 305, 309, 315, 318, 320, 322, 324,
326, 328, 330, 348, 331, 0, 227, 0, 0, 0,
0, 213, 0, 0, 217, 0, 0, 0, 0, 0,
234, 0, 278, 246, 248, 290, 0, 289, 92, 158,
0, 0, 0, 252, 0, 0, 148, 152, 156, 185,
0, 0, 283, 282, 345, 346, 338, 336, 343, 344,
342, 341, 339, 347, 340, 337, 0, 37, 24, 0,
72, 0, 100, 0, 87, 0, 0, 99, 265, 0,
0, 0, 106, 107, 111, 110, 119, 115, 141, 293,
287, 37, 278, 0, 286, 292, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 223, 225,
228, 0, 0, 219, 221, 0, 214, 218, 0, 229,
268, 0, 0, 269, 230, 0, 0, 232, 236, 0,
244, 279, 0, 351, 0, 253, 254, 183, 157, 270,
267, 0, 332, 0, 260, 262, 0, 260, 0, 252,
0, 104, 89, 93, 143, 91, 95, 94, 266, 0,
117, 72, 0, 72, 116, 0, 26, 27, 244, 300,
301, 299, 304, 303, 307, 308, 306, 314, 311, 313,
310, 312, 316, 317, 319, 321, 323, 325, 327, 0,
0, 0, 216, 0, 0, 252, 0, 0, 252, 72,
0, 233, 237, 0, 275, 271, 0, 252, 276, 0,
256, 263, 261, 258, 257, 259, 0, 103, 146, 0,
144, 109, 108, 112, 0, 243, 120, 0, 0, 0,
296, 0, 224, 0, 0, 222, 0, 0, 0, 30,
193, 0, 159, 166, 167, 168, 169, 0, 200, 196,
231, 0, 0, 239, 207, 255, 0, 264, 250, 142,
145, 252, 252, 118, 295, 297, 329, 0, 211, 213,
0, 0, 0, 0, 273, 198, 274, 0, 272, 251,
249, 147, 0, 0, 209, 0, 212, 220, 0, 0,
0, 184, 194, 0, 0, 0, 201, 72, 203, 238,
0, 0, 0, 216, 0, 0, 349, 0, 206, 197,
202, 204, 122, 121, 210, 0, 0, 208, 205, 211,
0, 0, 195, 0, 215
};
/* YYDEFGOTO[NTERM-NUM]. */
static const short int yydefgoto[] =
{
-1, 2, 156, 157, 158, 229, 112, 113, 75, 78,
230, 231, 19, 20, 21, 22, 3, 4, 24, 30,
5, 31, 32, 33, 51, 52, 53, 54, 163, 164,
65, 66, 79, 67, 80, 96, 97, 98, 208, 209,
210, 405, 99, 100, 217, 206, 321, 322, 323, 218,
325, 119, 101, 102, 117, 327, 413, 476, 57, 58,
71, 72, 88, 104, 127, 128, 129, 222, 406, 469,
470, 165, 166, 167, 168, 169, 170, 171, 491, 172,
173, 174, 493, 175, 176, 177, 178, 494, 179, 499,
545, 525, 546, 547, 548, 180, 495, 181, 182, 535,
365, 496, 263, 366, 536, 367, 183, 184, 257, 185,
186, 187, 188, 189, 376, 377, 378, 451, 190, 191,
232, 530, 384, 385, 193, 415, 394, 395, 214, 194,
233, 196, 234, 235, 236, 237, 238, 239, 240, 241,
242, 243, 244, 245, 246, 247, 248, 249, 250, 251,
252, 253, 254, 203, 306, 386, 557, 204
};
/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
STATE-NUM. */
#define YYPACT_NINF -503
static const short int yypact[] =
{
159, 1039, 236, -503, -503, -503, -503, -503, -503, -503,
-503, -503, -503, -503, -503, -503, 186, -503, 56, -503,
-503, -503, 178, -503, 35, -503, 21, -503, 248, 1039,
273, -503, -503, -503, -503, -503, -503, -503, 78, -503,
-503, -503, -503, -503, -503, -503, -503, -503, -503, -503,
-503, -503, 2088, -503, 32, -503, 16, 245, -503, 28,
-503, -503, 1039, 1039, -503, 80, 206, -503, 129, 129,
1039, 221, 228, 194, -503, -503, 225, -503, -503, 234,
164, 206, -503, -503, -503, -503, -503, -503, -503, 1039,
-503, 1039, 233, -503, -503, 739, -503, -503, -503, -503,
-49, -503, -503, -503, 1116, -503, -503, 1276, -503, 129,
129, 40, -503, -503, -503, 122, 212, 265, -503, 215,
-503, -503, 219, 739, -503, 222, 224, -503, -503, -503,
1820, 129, 129, 1627, 237, 238, -503, 1820, 241, 239,
242, 283, 1820, 233, 266, -503, -503, -503, -503, -503,
-503, -503, 1820, 1820, 1820, -503, -503, -503, 129, 284,
476, 293, 2067, -503, 349, -503, 296, 1366, -503, -503,
264, -503, -503, -503, -503, -503, 268, -503, -503, -503,
-503, -503, -503, -503, -503, -503, -503, -503, -503, -503,
294, 305, 72, -503, 2070, 88, 2084, 121, 130, 148,
-503, -503, -503, 2111, 1039, 281, 133, 281, -25, -503,
126, 133, 314, 315, 315, 921, 1039, 308, -503, -503,
-503, -503, 277, -503, 1820, 1820, 1820, 1820, 1820, 317,
284, 545, -503, -503, 121, -503, -503, -503, -503, -503,
-503, -503, 73, 124, 163, 59, 196, 323, 319, 290,
324, 18, -503, -503, -503, -30, -503, 285, 286, 242,
342, 1941, 1820, 291, -503, 129, 1820, 1820, 129, 292,
385, 1820, 96, -503, -503, -503, 310, -503, -503, 329,
387, 1085, 3, 1820, 1627, 129, -503, -503, -503, -503,
175, 1820, -503, -503, -503, -503, -503, -503, -503, -503,
-503, -503, -503, -503, -503, -503, 1820, 339, 339, 311,
921, 343, -503, 129, -503, 344, 1766, -503, -503, 346,
1039, 313, 347, -503, -503, 353, -503, 307, -503, -503,
-503, 6, 545, 326, -503, -503, 1820, 1820, 1820, 1820,
1820, 1820, 1820, 1820, 1039, 1820, 1820, 1820, 1820, 1820,
1820, 1820, 1820, 1820, 1820, 1820, 1820, 1820, -503, -503,
-503, 330, 2067, -503, -503, 327, -503, 354, 334, -503,
345, 335, 340, 348, -503, 351, 416, 232, -503, 356,
-503, -503, 376, -503, 357, 377, -503, -503, 329, -503,
358, 390, -503, 1085, 339, -503, 154, 339, 154, 1820,
362, -503, -503, -503, 1766, -503, -503, -503, -503, 129,
-503, 2088, 1039, 1456, -503, 363, 70, 93, 1874, -503,
-503, -503, 73, 73, 124, 124, 124, -503, 163, 163,
163, 163, 59, 59, 196, 323, 319, 290, 324, 383,
360, 1820, 1820, 1995, 1699, 1820, 386, 233, 1820, 2088,
233, -503, -503, 1627, -503, -503, 1820, 1820, -503, 394,
-503, -503, 315, -503, -503, -503, 369, -503, -503, 396,
404, 410, -503, -503, 26, 113, -503, 407, 1820, 1874,
-503, 1820, -503, 391, 374, -503, 393, 395, 397, 411,
-503, 466, 471, -503, -503, -503, -503, 399, -503, -503,
-503, 400, 401, -503, -503, -503, 402, -503, 206, -503,
1766, 1820, 1820, -503, -503, -503, -503, 403, 1995, 1941,
1820, 1820, 1699, 1627, -503, 34, -503, 233, -503, -503,
-503, -503, 405, 412, -503, 413, -503, 354, 406, 418,
421, -503, -503, 1820, 429, 430, -503, 1186, -503, -503,
419, 422, 1627, 1820, 1699, 1699, -503, 447, -503, -503,
1555, -503, -503, -503, -503, 423, 497, -503, -503, 1995,
1699, 432, -503, 1699, -503
};
/* YYPGOTO[NTERM-NUM]. */
static const short int yypgoto[] =
{
-503, -503, -503, -503, -85, 2, 181, -41, -198, -45,
-87, -1, 431, 14, -503, -503, -503, -503, -503, -503,
-503, -503, -503, -503, 448, -81, -47, -503, 7, -23,
-503, 462, -503, -64, -503, -503, -503, 425, -146, 217,
123, -391, -503, 427, -101, 424, 230, -503, -360, -503,
-503, -503, -503, -503, -503, -503, -503, -503, -503, 439,
-503, -503, -503, -503, -503, -503, -503, -503, -110, -503,
-503, -77, 138, -12, -163, -503, -250, -13, -421, -414,
-503, -503, -503, -503, -252, -503, -503, -503, -503, -503,
-503, -503, -503, -503, 5, -503, -503, -503, -503, -16,
36, -503, -418, -503, -503, -502, -503, -503, 440, -503,
-503, -503, -503, -503, -503, -503, 179, -503, -503, -503,
-54, -503, -341, -503, -503, -149, 255, -136, 102, 652,
101, 688, 145, 157, 201, -98, 289, 338, -384, -503,
-59, -58, -92, -57, 213, 226, 218, 223, 227, -503,
95, 274, 350, -503, -503, 660, -503, -503
};
/* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If
positive, shift that token. If negative, reduce the rule which
number is the opposite. If zero, do what YYDEFACT says.
If YYTABLE_NINF, syntax error. */
#define YYTABLE_NINF -336
static const short int yytable[] =
{
18, 82, 83, 17, 287, 61, 309, 56, 114, 364,
110, 363, 279, 468, 34, 108, 537, 103, 324, 107,
159, 74, 77, 120, 484, 86, 162, 68, 38, 77,
492, 17, 34, 383, 480, 357, 114, 55, 110, 34,
36, 313, 543, 69, 105, 35, 106, 544, 77, 62,
77, 472, 118, 192, 275, 63, 277, 95, 466, 29,
15, 76, 76, 35, 17, 17, 270, 537, 212, 76,
35, 358, 17, 36, 16, 114, 314, 285, 15, 192,
159, 123, 84, 85, 344, 15, 162, 55, 76, 502,
76, 17, 16, 17, 115, 515, -260, 111, 265, 16,
64, 541, 212, 63, 497, 312, 160, 501, 492, 111,
317, 122, -37, 192, 355, 61, 506, 511, 356, 531,
260, 161, 115, 205, 207, 111, 329, 330, 26, 334,
335, 73, 319, 566, 567, 565, 345, 346, -192, 388,
492, 492, 336, 347, 348, 256, 256, 161, 64, 572,
59, 272, 574, 272, -191, 319, 492, 27, 281, 492,
-261, 115, -192, 308, 111, 337, 160, 39, 282, 111,
532, 533, 278, -192, 159, 74, 338, 216, -191, 60,
362, 161, 40, 479, 212, 268, 15, 283, 315, -191,
1, 485, 320, 41, 26, 311, 42, 43, 44, 316,
16, 92, 46, 76, 512, 47, 307, 192, 195, 48,
292, 339, 49, 213, 473, 76, 319, 389, 17, -280,
293, 340, 404, 272, 272, 332, 272, 272, 331, -280,
192, 93, 15, 114, 195, 409, 23, -281, 419, 420,
421, 375, 341, 25, 342, 460, 16, -281, 464, 343,
28, -235, 197, 428, 429, 430, 431, 114, 461, 37,
160, 461, 70, 111, 198, 50, 364, 364, 195, 363,
349, 387, 350, -39, 64, 114, 39, 285, 197, 370,
422, 423, 373, 424, 425, 426, 463, 320, 465, 87,
198, 40, 432, 433, 89, 90, 36, 26, 161, 278,
91, 107, 41, 215, 390, 42, 43, 44, 199, 216,
45, 46, 197, 265, 47, 61, 219, 364, 48, 115,
220, 49, 111, 221, 198, 223, 159, 278, 261, 262,
266, 213, 162, 267, 199, 272, 272, 272, 272, 272,
272, 272, 272, 115, 272, 272, 272, 272, 272, 272,
272, 272, 272, 272, 272, 268, 280, 271, 284, 192,
68, 115, 195, 286, 111, 288, 290, 291, 199, 289,
500, 74, 310, 503, 50, 318, 326, 319, 328, 212,
514, 351, 352, 354, 353, 195, 359, 360, 320, 192,
192, 361, 369, 374, 375, 313, 200, 287, 381, 192,
380, 393, 399, 410, 401, 403, 197, 408, 414, 396,
398, 76, 160, 411, 17, 111, 418, 272, 198, 412,
443, 441, 200, 278, 444, 446, 320, 161, 442, 197,
447, 490, 159, 416, 417, 450, 445, 454, 362, 448,
504, 198, 449, 456, 529, 201, 453, 455, 481, 457,
549, 458, 467, 478, 498, 507, 200, 202, 489, 508,
159, 482, 199, 509, 192, 192, 162, 161, 192, 192,
510, 201, 315, 159, 513, 518, 522, 272, 272, 162,
272, 517, 523, 202, 519, 199, 520, -165, 521, 524,
526, 527, 528, 192, 558, 550, 462, 559, 192, 462,
192, 192, 551, 552, 534, 201, 192, 553, 554, 387,
542, 555, 568, 570, 195, 192, 192, 202, 160, 192,
562, 111, 573, 563, 569, 427, 116, 81, 94, 124,
402, 125, 471, -23, 211, 560, 489, 161, 281, 564,
400, 490, 504, 126, 195, 195, 160, -23, 282, 111,
200, 477, 561, 571, 195, 538, 452, 542, 197, 160,
564, 161, 111, 397, 434, -278, 161, 283, 489, 489,
198, 436, 258, 200, 161, -278, 516, 437, 435, 0,
392, 0, 438, 0, 489, 0, 0, 489, 197, 197,
0, 0, 0, 0, 0, 0, 0, 0, 197, 201,
198, 198, 0, 0, 0, -333, 0, 281, 0, -333,
198, 202, 0, 0, 199, -333, 0, 282, -333, 195,
195, 0, 201, 195, 195, -333, 0, -333, -333, 0,
0, 0, 0, -333, 202, 0, 283, 0, -333, 0,
-333, 0, 0, -333, 199, 199, 0, 0, 195, -333,
0, 0, 0, 195, 199, 195, 195, 0, 0, 0,
0, 195, 0, 197, 197, 0, 0, 197, 197, 0,
195, 195, 0, 0, 195, 198, 198, 0, 0, 198,
198, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 197, 0, 0, 0, 0, 197, 0, 197,
197, 0, 200, 0, 198, 197, 0, 0, 0, 198,
0, 198, 198, 0, 197, 197, 0, 198, 197, 199,
199, 0, 0, 199, 199, 0, 198, 198, 0, 0,
198, 0, 200, 200, 0, 0, 0, 0, 0, 0,
0, 0, 200, 0, 6, 0, 7, 0, 199, 8,
68, 201, 0, 199, 9, 199, 199, 0, 0, 10,
0, 199, 0, 202, 0, 11, 69, 12, 0, 0,
199, 199, 0, 0, 199, 13, 0, 0, 0, 0,
0, 201, 201, 0, 0, 0, 109, 0, 0, 0,
255, 201, 0, 202, 202, 0, 15, 264, 0, 0,
0, 0, 269, 202, 273, 0, 273, 200, 200, 0,
16, 200, 200, 276, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 200, 0, 0, 0,
274, 200, 274, 200, 200, 0, 0, 0, 0, 200,
0, 0, 0, 0, 0, 0, 201, 201, 200, 200,
201, 201, 200, 0, 0, 0, 0, 0, 202, 202,
0, 0, 202, 202, 0, 0, 273, 273, 0, 273,
273, 0, 0, 0, 0, 201, 333, 0, 0, 0,
201, 0, 201, 201, 0, 0, 0, 202, 201, 0,
0, 0, 202, 0, 202, 202, 0, 201, 201, 0,
202, 201, 274, 274, 0, 274, 274, 0, 0, 202,
202, 0, 368, 202, 39, 0, 371, 372, 0, 0,
0, 379, 0, 0, 0, 0, 0, 0, 0, 40,
0, 382, 0, 0, 0, 0, 0, 0, 0, 0,
41, 391, 0, 42, 43, 44, 0, 0, 45, 46,
0, 0, 47, 0, 0, 0, 48, 0, 0, 49,
0, 0, 0, 0, 0, 0, 407, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 273, 273,
273, 273, 273, 273, 273, 273, 0, 273, 273, 273,
273, 273, 273, 273, 273, 273, 273, 273, 0, 0,
0, -105, 0, 0, 0, 0, 439, 440, 0, 0,
0, 0, 0, 0, 274, 274, 274, 274, 274, 274,
274, 274, 0, 274, 274, 274, 274, 274, 274, 274,
274, 274, 274, 274, 6, 0, 7, 0, 0, 8,
0, 0, 0, 459, 9, 0, 0, 0, 0, 10,
0, 0, 0, 0, 407, 11, 0, 12, 0, 0,
273, 0, 0, 0, 0, 13, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 14, 0, 0, 0,
6, 0, 7, 0, 0, 8, 15, 0, 0, 0,
9, 483, 264, 0, 0, 10, 274, 0, 0, 0,
16, 11, 0, 12, 0, 136, 505, 0, 0, 39,
0, 13, 0, 0, 138, 0, 0, 141, 0, 0,
273, 273, 14, 273, 40, 145, 146, 147, 148, 149,
150, 151, 15, 0, 0, 41, 318, 0, 42, 43,
44, 0, 0, 45, 46, 0, 16, 47, 0, 0,
224, 48, 0, 0, 49, 0, 274, 274, 0, 274,
407, 0, 225, 0, 152, 0, 226, 0, 0, 0,
539, 540, 227, 121, 154, 0, 0, 228, 0, 39,
130, 6, 131, 7, 543, 0, 8, 0, 132, 544,
133, 9, 0, 556, 40, 0, 10, 134, 135, 0,
0, 0, 11, 264, 12, 41, 136, 0, 42, 43,
44, 137, 13, 45, 46, 138, 139, 140, 141, 142,
0, 48, 143, 14, 49, 144, 145, 146, 147, 148,
149, 150, 151, 15, 0, 0, 0, 0, 0, 0,
0, 0, 0, -199, 107, 0, 0, 16, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 152, 0, 153, 0, 39,
130, 6, 131, 7, 0, 154, 8, 155, 132, 0,
133, 9, 0, 0, 40, 0, 10, 134, 135, 0,
0, 0, 11, 0, 12, 41, 136, 0, 42, 43,
44, 137, 13, 45, 46, 138, 139, 140, 141, 142,
0, 48, 143, 14, 49, 144, 145, 146, 147, 148,
149, 150, 151, 15, 0, 0, 0, 0, 0, 0,
0, 0, 0, -149, 107, 0, 0, 16, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 152, 0, 153, 0, 39,
130, 6, 131, 7, 0, 154, 8, 155, 132, 0,
133, 9, 0, 0, 40, 0, 10, 134, 135, 0,
0, 0, 11, 0, 12, 41, 136, 0, 42, 43,
44, 137, 13, 45, 46, 138, 139, 140, 141, 142,
0, 48, 143, 14, 49, 144, 145, 146, 147, 148,
149, 150, 151, 15, 0, 0, 0, 0, 0, 0,
0, 0, 0, -150, 107, 0, 0, 16, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 152, 0, 153, 0, 39,
130, 6, 131, 7, 0, 154, 8, 155, 132, 0,
133, 9, 0, 0, 40, 0, 10, 134, 135, 0,
0, 0, 11, 0, 12, 41, 136, 0, 42, 43,
44, 137, 13, 45, 46, 474, 139, 140, 475, 142,
0, 48, 143, 14, 49, 144, 145, 146, 147, 148,
149, 150, 151, 15, 0, 0, 0, 0, 0, 0,
0, 0, 0, -149, 107, 0, 0, 16, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 152, 0, 153, 0, 0,
0, 0, 0, 0, 0, 154, 0, 155, 39, 130,
6, 131, 7, 0, 0, 8, -72, 132, 0, 133,
9, 0, 0, 40, 0, 10, 134, 135, 0, 0,
0, 11, 0, 12, 41, 136, 0, 42, 43, 44,
137, 13, 45, 46, 138, 139, 140, 141, 142, 0,
48, 143, 14, 49, 144, 145, 146, 147, 148, 149,
150, 151, 15, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 107, 0, 0, 16, 0, 0, 0,
0, 130, 6, 131, 7, 0, 0, 8, 0, 132,
0, 133, 9, 0, 152, 0, 153, 10, 134, 135,
0, 0, 0, 11, 154, 12, 155, 136, 0, 0,
0, 0, 137, 13, 0, 0, 138, 139, 259, 141,
142, 0, 0, 143, 14, 0, 144, 145, 146, 147,
148, 149, 150, 151, 15, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 107, 0, 0, 16, 0,
0, 0, 0, 130, 6, 131, 7, 0, 0, 8,
0, 132, 0, 133, 9, 0, 152, 0, 153, 10,
486, 487, 0, 0, 0, 11, 154, 12, 155, 136,
0, 0, 0, 0, 137, 13, 0, 0, 138, 139,
259, 141, 142, 0, 0, 143, 14, 0, 488, 145,
146, 147, 148, 149, 150, 151, 15, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 107, 0, 0,
16, 6, 0, 7, 0, 0, 8, 0, 0, 0,
0, 9, 0, 0, 0, 0, 10, 0, 152, 0,
153, 0, 11, 0, 12, 0, 136, 0, 154, 0,
155, 0, 13, 0, 0, 138, 0, 0, 141, 0,
0, 0, 0, 14, 0, 0, 145, 146, 147, 148,
149, 150, 151, 15, 0, 6, 0, 7, 0, 0,
8, 0, 0, 0, 404, 9, 0, 16, 0, 0,
10, 224, 0, 0, 0, 0, 11, 0, 12, 0,
136, 0, 0, 225, 0, 152, 13, 226, 0, 138,
0, 0, 141, 227, 0, 154, 0, 14, 228, 0,
145, 146, 147, 148, 149, 150, 151, 15, 0, 6,
0, 7, 0, 0, 8, 0, 0, 0, 0, 9,
0, 16, 0, 0, 10, 224, 0, 0, 0, 0,
11, 0, 12, 0, 136, 0, 0, 225, 0, 152,
13, 226, 0, 138, 0, 0, 141, 227, 0, 154,
0, 14, 228, 0, 145, 146, 147, 148, 149, 150,
151, 15, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 39, 16, 6, 0, 7, 224,
0, 8, 0, 0, 0, 0, 9, 0, 0, 40,
0, 10, 0, 0, 0, 226, 0, 11, 0, 12,
41, 136, 0, 42, 43, 44, 228, 13, 45, 46,
138, 0, 47, 141, 0, 0, 48, 0, 14, 49,
0, 145, 146, 147, 148, 149, 150, 151, 15, 0,
6, 0, 7, 0, 0, 8, 0, 0, 0, 0,
9, 0, 16, 0, 0, 10, 0, 0, 0, 0,
0, 11, 0, 12, 0, 136, 0, 0, 0, 0,
152, 13, 153, 0, 138, 0, 0, 141, 0, 0,
154, 0, 14, 0, 0, 145, 146, 147, 148, 149,
150, 151, 15, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 16, 0, 0, 0,
39, 0, 6, 0, 7, 0, 0, 8, 0, 0,
0, 0, 9, 0, 152, 40, 153, 10, 0, 0,
0, 39, 0, 11, 154, 12, 41, 0, 0, 42,
43, 44, 0, 13, 45, 46, 40, 0, 47, 0,
0, 0, 48, 0, 14, 49, 0, 41, 0, 0,
42, 43, 44, 0, 15, 45, 46, 0, 0, 47,
-334, 0, 0, 48, -334, 0, 49, 0, 16, 0,
-334, 0, 0, -334, -335, 0, 0, 0, -335, 0,
-334, 0, -334, -334, -335, 0, 0, -335, -334, 0,
0, 0, 0, -334, -335, -334, -335, -335, -334, 0,
0, 294, -335, 0, -334, 295, 0, -335, 0, -335,
0, 296, -335, 0, 297, 0, 0, 0, -335, 0,
0, 298, 0, 299, 300, 0, 0, 0, 0, 301,
0, 0, 0, 0, 302, 0, 303, 0, 0, 304,
0, 0, 0, 0, 0, 305
};
static const short int yycheck[] =
{
1, 65, 66, 1, 167, 52, 204, 30, 95, 261,
95, 261, 158, 404, 11, 92, 518, 81, 216, 68,
107, 62, 63, 100, 442, 70, 107, 11, 29, 70,
444, 29, 11, 30, 418, 65, 123, 30, 123, 11,
26, 66, 8, 27, 89, 42, 91, 13, 89, 17,
91, 411, 101, 107, 152, 23, 154, 80, 399, 24,
57, 62, 63, 42, 62, 63, 143, 569, 62, 70,
42, 101, 70, 59, 71, 162, 101, 162, 57, 133,
167, 104, 68, 69, 25, 57, 167, 80, 89, 449,
91, 89, 71, 91, 95, 479, 90, 95, 72, 71,
68, 522, 62, 23, 445, 206, 107, 448, 522, 107,
211, 104, 72, 167, 96, 162, 457, 91, 100, 510,
133, 107, 123, 109, 110, 123, 224, 225, 72, 227,
228, 103, 62, 554, 555, 553, 77, 78, 66, 285,
554, 555, 69, 84, 85, 131, 132, 133, 68, 570,
72, 152, 573, 154, 66, 62, 570, 101, 62, 573,
90, 162, 90, 204, 162, 92, 167, 3, 72, 167,
511, 512, 158, 101, 261, 216, 103, 44, 90, 101,
261, 167, 18, 90, 62, 72, 57, 91, 62, 101,
31, 443, 215, 29, 72, 62, 32, 33, 34, 73,
71, 37, 38, 204, 91, 41, 204, 261, 107, 45,
89, 87, 48, 111, 412, 216, 62, 42, 216, 89,
99, 97, 68, 224, 225, 226, 227, 228, 226, 99,
284, 67, 57, 320, 133, 320, 0, 89, 336, 337,
338, 9, 79, 57, 81, 394, 71, 99, 397, 86,
72, 19, 107, 345, 346, 347, 348, 344, 394, 11,
261, 397, 17, 261, 107, 101, 518, 519, 167, 519,
74, 284, 76, 0, 68, 362, 3, 362, 133, 265,
339, 340, 268, 341, 342, 343, 396, 310, 398, 68,
133, 18, 349, 350, 66, 101, 282, 72, 284, 285,
66, 68, 29, 91, 290, 32, 33, 34, 107, 44,
37, 38, 167, 72, 41, 362, 101, 569, 45, 320,
101, 48, 320, 101, 167, 101, 413, 313, 91, 91,
91, 229, 413, 91, 133, 336, 337, 338, 339, 340,
341, 342, 343, 344, 345, 346, 347, 348, 349, 350,
351, 352, 353, 354, 355, 72, 72, 91, 65, 413,
11, 362, 261, 67, 362, 101, 72, 62, 167, 101,
447, 412, 91, 450, 101, 61, 68, 62, 101, 62,
478, 58, 63, 59, 94, 284, 101, 101, 411, 443,
444, 49, 101, 101, 9, 66, 107, 560, 11, 453,
90, 62, 91, 90, 61, 61, 261, 61, 101, 307,
308, 412, 413, 66, 412, 413, 90, 418, 261, 66,
66, 91, 133, 409, 90, 90, 449, 413, 101, 284,
90, 444, 519, 331, 332, 19, 91, 61, 519, 91,
453, 284, 91, 66, 508, 107, 90, 90, 65, 91,
527, 61, 90, 90, 68, 61, 167, 107, 444, 90,
547, 101, 261, 67, 518, 519, 547, 453, 522, 523,
66, 133, 62, 560, 67, 101, 65, 478, 479, 560,
481, 90, 16, 133, 91, 284, 91, 16, 91, 90,
90, 90, 90, 547, 65, 90, 394, 67, 552, 397,
554, 555, 90, 90, 101, 167, 560, 101, 90, 522,
523, 90, 65, 16, 413, 569, 570, 167, 519, 573,
101, 519, 90, 101, 101, 344, 95, 65, 80, 104,
313, 104, 409, 57, 110, 547, 522, 523, 62, 552,
310, 554, 555, 104, 443, 444, 547, 71, 72, 547,
261, 413, 547, 569, 453, 519, 377, 570, 413, 560,
573, 547, 560, 308, 351, 89, 552, 91, 554, 555,
413, 353, 132, 284, 560, 99, 481, 354, 352, -1,
306, -1, 355, -1, 570, -1, -1, 573, 443, 444,
-1, -1, -1, -1, -1, -1, -1, -1, 453, 261,
443, 444, -1, -1, -1, 60, -1, 62, -1, 64,
453, 261, -1, -1, 413, 70, -1, 72, 73, 518,
519, -1, 284, 522, 523, 80, -1, 82, 83, -1,
-1, -1, -1, 88, 284, -1, 91, -1, 93, -1,
95, -1, -1, 98, 443, 444, -1, -1, 547, 104,
-1, -1, -1, 552, 453, 554, 555, -1, -1, -1,
-1, 560, -1, 518, 519, -1, -1, 522, 523, -1,
569, 570, -1, -1, 573, 518, 519, -1, -1, 522,
523, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 547, -1, -1, -1, -1, 552, -1, 554,
555, -1, 413, -1, 547, 560, -1, -1, -1, 552,
-1, 554, 555, -1, 569, 570, -1, 560, 573, 518,
519, -1, -1, 522, 523, -1, 569, 570, -1, -1,
573, -1, 443, 444, -1, -1, -1, -1, -1, -1,
-1, -1, 453, -1, 5, -1, 7, -1, 547, 10,
11, 413, -1, 552, 15, 554, 555, -1, -1, 20,
-1, 560, -1, 413, -1, 26, 27, 28, -1, -1,
569, 570, -1, -1, 573, 36, -1, -1, -1, -1,
-1, 443, 444, -1, -1, -1, 47, -1, -1, -1,
130, 453, -1, 443, 444, -1, 57, 137, -1, -1,
-1, -1, 142, 453, 152, -1, 154, 518, 519, -1,
71, 522, 523, 153, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 547, -1, -1, -1,
152, 552, 154, 554, 555, -1, -1, -1, -1, 560,
-1, -1, -1, -1, -1, -1, 518, 519, 569, 570,
522, 523, 573, -1, -1, -1, -1, -1, 518, 519,
-1, -1, 522, 523, -1, -1, 224, 225, -1, 227,
228, -1, -1, -1, -1, 547, 226, -1, -1, -1,
552, -1, 554, 555, -1, -1, -1, 547, 560, -1,
-1, -1, 552, -1, 554, 555, -1, 569, 570, -1,
560, 573, 224, 225, -1, 227, 228, -1, -1, 569,
570, -1, 262, 573, 3, -1, 266, 267, -1, -1,
-1, 271, -1, -1, -1, -1, -1, -1, -1, 18,
-1, 281, -1, -1, -1, -1, -1, -1, -1, -1,