Annotation of rpl/rplawk/y.tab.c, revision 1.3

1.1       bertrand    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 0
                     57: 
                     58: /* Using locations.  */
                     59: #define YYLSP_NEEDED 0
                     60: 
                     61: 
                     62: 
                     63: /* Tokens.  */
                     64: #ifndef YYTOKENTYPE
                     65: # define YYTOKENTYPE
                     66:    /* Put the tokens into the symbol table, so that GDB and other debuggers
                     67:       know about them.  */
                     68:    enum yytokentype {
                     69:      FIRSTTOKEN = 258,
                     70:      PROGRAM = 259,
                     71:      PASTAT = 260,
                     72:      PASTAT2 = 261,
                     73:      XBEGIN = 262,
                     74:      XEND = 263,
                     75:      NL = 264,
                     76:      ARRAY = 265,
                     77:      MATCH = 266,
                     78:      NOTMATCH = 267,
                     79:      MATCHOP = 268,
                     80:      FINAL = 269,
                     81:      DOT = 270,
                     82:      ALL = 271,
                     83:      CCL = 272,
                     84:      NCCL = 273,
                     85:      CHAR = 274,
                     86:      OR = 275,
                     87:      STAR = 276,
                     88:      QUEST = 277,
                     89:      PLUS = 278,
                     90:      EMPTYRE = 279,
                     91:      AND = 280,
                     92:      BOR = 281,
                     93:      APPEND = 282,
                     94:      EQ = 283,
                     95:      GE = 284,
                     96:      GT = 285,
                     97:      LE = 286,
                     98:      LT = 287,
                     99:      NE = 288,
                    100:      IN = 289,
                    101:      ARG = 290,
                    102:      BLTIN = 291,
                    103:      BREAK = 292,
                    104:      CLOSE = 293,
                    105:      CONTINUE = 294,
                    106:      DELETE = 295,
                    107:      DO = 296,
                    108:      EXIT = 297,
                    109:      FOR = 298,
                    110:      FUNC = 299,
                    111:      SUB = 300,
                    112:      GSUB = 301,
                    113:      IF = 302,
                    114:      INDEX = 303,
                    115:      LSUBSTR = 304,
                    116:      MATCHFCN = 305,
                    117:      NEXT = 306,
                    118:      NEXTFILE = 307,
                    119:      ADD = 308,
                    120:      MINUS = 309,
                    121:      MULT = 310,
                    122:      DIVIDE = 311,
                    123:      MOD = 312,
                    124:      ASSIGN = 313,
                    125:      ASGNOP = 314,
                    126:      ADDEQ = 315,
                    127:      SUBEQ = 316,
                    128:      MULTEQ = 317,
                    129:      DIVEQ = 318,
                    130:      MODEQ = 319,
                    131:      POWEQ = 320,
                    132:      PRINT = 321,
                    133:      PRINTF = 322,
                    134:      SPRINTF = 323,
                    135:      ELSE = 324,
                    136:      INTEST = 325,
                    137:      CONDEXPR = 326,
                    138:      POSTINCR = 327,
                    139:      PREINCR = 328,
                    140:      POSTDECR = 329,
                    141:      PREDECR = 330,
                    142:      VAR = 331,
                    143:      IVAR = 332,
                    144:      VARNF = 333,
                    145:      CALL = 334,
                    146:      NUMBER = 335,
                    147:      STRING = 336,
                    148:      REGEXPR = 337,
                    149:      GETLINE = 338,
                    150:      SUBSTR = 339,
                    151:      SPLIT = 340,
                    152:      RETURN = 341,
                    153:      WHILE = 342,
                    154:      CAT = 343,
                    155:      UMINUS = 344,
                    156:      NOT = 345,
                    157:      POWER = 346,
                    158:      INCR = 347,
                    159:      DECR = 348,
                    160:      INDIRECT = 349,
                    161:      LASTTOKEN = 350
                    162:    };
                    163: #endif
                    164: /* Tokens.  */
                    165: #define FIRSTTOKEN 258
                    166: #define PROGRAM 259
                    167: #define PASTAT 260
                    168: #define PASTAT2 261
                    169: #define XBEGIN 262
                    170: #define XEND 263
                    171: #define NL 264
                    172: #define ARRAY 265
                    173: #define MATCH 266
                    174: #define NOTMATCH 267
                    175: #define MATCHOP 268
                    176: #define FINAL 269
                    177: #define DOT 270
                    178: #define ALL 271
                    179: #define CCL 272
                    180: #define NCCL 273
                    181: #define CHAR 274
                    182: #define OR 275
                    183: #define STAR 276
                    184: #define QUEST 277
                    185: #define PLUS 278
                    186: #define EMPTYRE 279
                    187: #define AND 280
                    188: #define BOR 281
                    189: #define APPEND 282
                    190: #define EQ 283
                    191: #define GE 284
                    192: #define GT 285
                    193: #define LE 286
                    194: #define LT 287
                    195: #define NE 288
                    196: #define IN 289
                    197: #define ARG 290
                    198: #define BLTIN 291
                    199: #define BREAK 292
                    200: #define CLOSE 293
                    201: #define CONTINUE 294
                    202: #define DELETE 295
                    203: #define DO 296
                    204: #define EXIT 297
                    205: #define FOR 298
                    206: #define FUNC 299
                    207: #define SUB 300
                    208: #define GSUB 301
                    209: #define IF 302
                    210: #define INDEX 303
                    211: #define LSUBSTR 304
                    212: #define MATCHFCN 305
                    213: #define NEXT 306
                    214: #define NEXTFILE 307
                    215: #define ADD 308
                    216: #define MINUS 309
                    217: #define MULT 310
                    218: #define DIVIDE 311
                    219: #define MOD 312
                    220: #define ASSIGN 313
                    221: #define ASGNOP 314
                    222: #define ADDEQ 315
                    223: #define SUBEQ 316
                    224: #define MULTEQ 317
                    225: #define DIVEQ 318
                    226: #define MODEQ 319
                    227: #define POWEQ 320
                    228: #define PRINT 321
                    229: #define PRINTF 322
                    230: #define SPRINTF 323
                    231: #define ELSE 324
                    232: #define INTEST 325
                    233: #define CONDEXPR 326
                    234: #define POSTINCR 327
                    235: #define PREINCR 328
                    236: #define POSTDECR 329
                    237: #define PREDECR 330
                    238: #define VAR 331
                    239: #define IVAR 332
                    240: #define VARNF 333
                    241: #define CALL 334
                    242: #define NUMBER 335
                    243: #define STRING 336
                    244: #define REGEXPR 337
                    245: #define GETLINE 338
                    246: #define SUBSTR 339
                    247: #define SPLIT 340
                    248: #define RETURN 341
                    249: #define WHILE 342
                    250: #define CAT 343
                    251: #define UMINUS 344
                    252: #define NOT 345
                    253: #define POWER 346
                    254: #define INCR 347
                    255: #define DECR 348
                    256: #define INDIRECT 349
                    257: #define LASTTOKEN 350
                    258: 
                    259: 
                    260: 
                    261: 
                    262: /* Copy the first part of user declarations.  */
                    263: #line 25 "awkgram.y"
                    264: 
                    265: #include <stdio.h>
                    266: #include <string.h>
                    267: #include "awk.h"
                    268: 
                    269: void checkdup(Node *list, Cell *item);
                    270: int yywrap(void) { return(1); }
                    271: 
                    272: Node   *beginloc = 0;
                    273: Node   *endloc = 0;
                    274: int    infunc  = 0;    /* = 1 if in arglist or body of func */
                    275: int    inloop  = 0;    /* = 1 if in while, for, do */
                    276: char   *curfname = 0;  /* current function name */
                    277: Node   *arglist = 0;   /* list of args for current function */
                    278: 
                    279: 
                    280: /* Enabling traces.  */
                    281: #ifndef YYDEBUG
                    282: # define YYDEBUG 0
                    283: #endif
                    284: 
                    285: /* Enabling verbose error messages.  */
                    286: #ifdef YYERROR_VERBOSE
                    287: # undef YYERROR_VERBOSE
                    288: # define YYERROR_VERBOSE 1
                    289: #else
                    290: # define YYERROR_VERBOSE 0
                    291: #endif
                    292: 
                    293: /* Enabling the token table.  */
                    294: #ifndef YYTOKEN_TABLE
                    295: # define YYTOKEN_TABLE 0
                    296: #endif
                    297: 
                    298: #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
                    299: typedef union YYSTYPE
                    300: #line 41 "awkgram.y"
                    301: {
                    302:    Node    *p;
                    303:    Cell    *cp;
                    304:    int i;
                    305:    char    *s;
                    306: }
                    307: /* Line 187 of yacc.c.  */
                    308: #line 309 "y.tab.c"
                    309:    YYSTYPE;
                    310: # define yystype YYSTYPE /* obsolescent; will be withdrawn */
                    311: # define YYSTYPE_IS_DECLARED 1
                    312: # define YYSTYPE_IS_TRIVIAL 1
                    313: #endif
                    314: 
                    315: 
                    316: 
                    317: /* Copy the second part of user declarations.  */
                    318: 
                    319: 
                    320: /* Line 216 of yacc.c.  */
                    321: #line 322 "y.tab.c"
                    322: 
                    323: #ifdef short
                    324: # undef short
                    325: #endif
                    326: 
                    327: #ifdef YYTYPE_UINT8
                    328: typedef YYTYPE_UINT8 yytype_uint8;
                    329: #else
                    330: typedef unsigned char yytype_uint8;
                    331: #endif
                    332: 
                    333: #ifdef YYTYPE_INT8
                    334: typedef YYTYPE_INT8 yytype_int8;
                    335: #elif (defined __STDC__ || defined __C99__FUNC__ \
                    336:      || defined __cplusplus || defined _MSC_VER)
                    337: typedef signed char yytype_int8;
                    338: #else
                    339: typedef short int yytype_int8;
                    340: #endif
                    341: 
                    342: #ifdef YYTYPE_UINT16
                    343: typedef YYTYPE_UINT16 yytype_uint16;
                    344: #else
                    345: typedef unsigned short int yytype_uint16;
                    346: #endif
                    347: 
                    348: #ifdef YYTYPE_INT16
                    349: typedef YYTYPE_INT16 yytype_int16;
                    350: #else
                    351: typedef short int yytype_int16;
                    352: #endif
                    353: 
                    354: #ifndef YYSIZE_T
                    355: # ifdef __SIZE_TYPE__
                    356: #  define YYSIZE_T __SIZE_TYPE__
                    357: # elif defined size_t
                    358: #  define YYSIZE_T size_t
                    359: # elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \
                    360:      || defined __cplusplus || defined _MSC_VER)
                    361: #  include <stddef.h> /* INFRINGES ON USER NAME SPACE */
                    362: #  define YYSIZE_T size_t
                    363: # else
                    364: #  define YYSIZE_T unsigned int
                    365: # endif
                    366: #endif
                    367: 
                    368: #define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
                    369: 
                    370: #ifndef YY_
                    371: # if YYENABLE_NLS
                    372: #  if ENABLE_NLS
                    373: #   include <libintl.h> /* INFRINGES ON USER NAME SPACE */
                    374: #   define YY_(msgid) dgettext ("bison-runtime", msgid)
                    375: #  endif
                    376: # endif
                    377: # ifndef YY_
                    378: #  define YY_(msgid) msgid
                    379: # endif
                    380: #endif
                    381: 
                    382: /* Suppress unused-variable warnings by "using" E.  */
                    383: #if ! defined lint || defined __GNUC__
                    384: # define YYUSE(e) ((void) (e))
                    385: #else
                    386: # define YYUSE(e) /* empty */
                    387: #endif
                    388: 
                    389: /* Identity function, used to suppress warnings about constant conditions.  */
                    390: #ifndef lint
                    391: # define YYID(n) (n)
                    392: #else
                    393: #if (defined __STDC__ || defined __C99__FUNC__ \
                    394:      || defined __cplusplus || defined _MSC_VER)
                    395: static int
                    396: YYID (int i)
                    397: #else
                    398: static int
                    399: YYID (i)
                    400:     int i;
                    401: #endif
                    402: {
                    403:   return i;
                    404: }
                    405: #endif
                    406: 
                    407: #if ! defined yyoverflow || YYERROR_VERBOSE
                    408: 
                    409: /* The parser invokes alloca or malloc; define the necessary symbols.  */
                    410: 
                    411: # ifdef YYSTACK_USE_ALLOCA
                    412: #  if YYSTACK_USE_ALLOCA
                    413: #   ifdef __GNUC__
                    414: #    define YYSTACK_ALLOC __builtin_alloca
                    415: #   elif defined __BUILTIN_VA_ARG_INCR
                    416: #    include <alloca.h> /* INFRINGES ON USER NAME SPACE */
                    417: #   elif defined _AIX
                    418: #    define YYSTACK_ALLOC __alloca
                    419: #   elif defined _MSC_VER
                    420: #    include <malloc.h> /* INFRINGES ON USER NAME SPACE */
                    421: #    define alloca _alloca
                    422: #   else
                    423: #    define YYSTACK_ALLOC alloca
                    424: #    if ! defined _ALLOCA_H && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
                    425:      || defined __cplusplus || defined _MSC_VER)
                    426: #     include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
                    427: #     ifndef _STDLIB_H
                    428: #      define _STDLIB_H 1
                    429: #     endif
                    430: #    endif
                    431: #   endif
                    432: #  endif
                    433: # endif
                    434: 
                    435: # ifdef YYSTACK_ALLOC
                    436:    /* Pacify GCC's `empty if-body' warning.  */
                    437: #  define YYSTACK_FREE(Ptr) do { /* empty */; } while (YYID (0))
                    438: #  ifndef YYSTACK_ALLOC_MAXIMUM
                    439:     /* The OS might guarantee only one guard page at the bottom of the stack,
                    440:        and a page size can be as small as 4096 bytes.  So we cannot safely
                    441:        invoke alloca (N) if N exceeds 4096.  Use a slightly smaller number
                    442:        to allow for a few compiler-allocated temporary stack slots.  */
                    443: #   define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */
                    444: #  endif
                    445: # else
                    446: #  define YYSTACK_ALLOC YYMALLOC
                    447: #  define YYSTACK_FREE YYFREE
                    448: #  ifndef YYSTACK_ALLOC_MAXIMUM
                    449: #   define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
                    450: #  endif
                    451: #  if (defined __cplusplus && ! defined _STDLIB_H \
                    452:        && ! ((defined YYMALLOC || defined malloc) \
                    453:         && (defined YYFREE || defined free)))
                    454: #   include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
                    455: #   ifndef _STDLIB_H
                    456: #    define _STDLIB_H 1
                    457: #   endif
                    458: #  endif
                    459: #  ifndef YYMALLOC
                    460: #   define YYMALLOC malloc
                    461: #   if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
                    462:      || defined __cplusplus || defined _MSC_VER)
                    463: void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
                    464: #   endif
                    465: #  endif
                    466: #  ifndef YYFREE
                    467: #   define YYFREE free
                    468: #   if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
                    469:      || defined __cplusplus || defined _MSC_VER)
                    470: void free (void *); /* INFRINGES ON USER NAME SPACE */
                    471: #   endif
                    472: #  endif
                    473: # endif
                    474: #endif /* ! defined yyoverflow || YYERROR_VERBOSE */
                    475: 
                    476: 
                    477: #if (! defined yyoverflow \
                    478:      && (! defined __cplusplus \
                    479:     || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
                    480: 
                    481: /* A type that is properly aligned for any stack member.  */
                    482: union yyalloc
                    483: {
                    484:   yytype_int16 yyss;
                    485:   YYSTYPE yyvs;
                    486:   };
                    487: 
                    488: /* The size of the maximum gap between one aligned stack and the next.  */
                    489: # define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
                    490: 
                    491: /* The size of an array large to enough to hold all stacks, each with
                    492:    N elements.  */
                    493: # define YYSTACK_BYTES(N) \
                    494:      ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \
                    495:       + YYSTACK_GAP_MAXIMUM)
                    496: 
                    497: /* Copy COUNT objects from FROM to TO.  The source and destination do
                    498:    not overlap.  */
                    499: # ifndef YYCOPY
                    500: #  if defined __GNUC__ && 1 < __GNUC__
                    501: #   define YYCOPY(To, From, Count) \
                    502:       __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
                    503: #  else
                    504: #   define YYCOPY(To, From, Count)     \
                    505:       do                   \
                    506:    {                   \
                    507:      YYSIZE_T yyi;             \
                    508:      for (yyi = 0; yyi < (Count); yyi++)   \
                    509:        (To)[yyi] = (From)[yyi];        \
                    510:    }                   \
                    511:       while (YYID (0))
                    512: #  endif
                    513: # endif
                    514: 
                    515: /* Relocate STACK from its old location to the new one.  The
                    516:    local variables YYSIZE and YYSTACKSIZE give the old and new number of
                    517:    elements in the stack, and YYPTR gives the new location of the
                    518:    stack.  Advance YYPTR to a properly aligned location for the next
                    519:    stack.  */
                    520: # define YYSTACK_RELOCATE(Stack)                   \
                    521:     do                                 \
                    522:       {                                    \
                    523:    YYSIZE_T yynewbytes;                        \
                    524:    YYCOPY (&yyptr->Stack, Stack, yysize);              \
                    525:    Stack = &yyptr->Stack;                      \
                    526:    yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
                    527:    yyptr += yynewbytes / sizeof (*yyptr);              \
                    528:       }                                    \
                    529:     while (YYID (0))
                    530: 
                    531: #endif
                    532: 
                    533: /* YYFINAL -- State number of the termination state.  */
                    534: #define YYFINAL  8
                    535: /* YYLAST -- Last index in YYTABLE.  */
                    536: #define YYLAST   4600
                    537: 
                    538: /* YYNTOKENS -- Number of terminals.  */
                    539: #define YYNTOKENS  112
                    540: /* YYNNTS -- Number of nonterminals.  */
                    541: #define YYNNTS  49
                    542: /* YYNRULES -- Number of rules.  */
                    543: #define YYNRULES  185
                    544: /* YYNRULES -- Number of states.  */
                    545: #define YYNSTATES  367
                    546: 
                    547: /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX.  */
                    548: #define YYUNDEFTOK  2
                    549: #define YYMAXUTOK   350
                    550: 
                    551: #define YYTRANSLATE(YYX)                       \
                    552:   ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
                    553: 
                    554: /* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX.  */
                    555: static const yytype_uint8 yytranslate[] =
                    556: {
                    557:        0,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    558:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    559:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    560:        2,     2,     2,     2,     2,     2,     2,   104,     2,     2,
                    561:       12,    16,   103,   101,     9,   102,     2,    15,     2,     2,
                    562:        2,     2,     2,     2,     2,     2,     2,     2,    94,    14,
                    563:        2,     2,     2,    93,     2,     2,     2,     2,     2,     2,
                    564:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    565:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    566:        2,    18,     2,    19,     2,     2,     2,     2,     2,     2,
                    567:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    568:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    569:        2,     2,     2,    11,    13,    17,     2,     2,     2,     2,
                    570:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    571:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    572:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    573:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    574:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    575:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    576:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    577:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    578:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    579:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    580:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    581:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
                    582:        2,     2,     2,     2,     2,     2,     1,     2,     3,     4,
                    583:        5,     6,     7,     8,    10,    20,    21,    22,    23,    24,
                    584:       25,    26,    27,    28,    29,    30,    31,    32,    33,    34,
                    585:       35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
                    586:       45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
                    587:       55,    56,    57,    58,    59,    60,    61,    62,    63,    64,
                    588:       65,    66,    67,    68,    69,    70,    71,    72,    73,    74,
                    589:       75,    76,    77,    78,    79,    80,    81,    82,    83,    84,
                    590:       85,    86,    87,    88,    89,    90,    91,    92,    95,    96,
                    591:       97,    98,    99,   100,   105,   106,   107,   108,   109,   110,
                    592:      111
                    593: };
                    594: 
                    595: #if YYDEBUG
                    596: /* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in
                    597:    YYRHS.  */
                    598: static const yytype_uint16 yyprhs[] =
                    599: {
                    600:        0,     0,     3,     5,     7,     9,    12,    14,    17,    19,
                    601:       22,    24,    27,    29,    32,    33,    46,    47,    58,    59,
                    602:       68,    70,    72,    77,    79,    82,    84,    87,    88,    90,
                    603:       91,    93,    94,    96,    98,   102,   104,   106,   111,   115,
                    604:      122,   126,   131,   136,   137,   147,   149,   153,   155,   159,
                    605:      163,   169,   173,   177,   181,   185,   189,   195,   198,   200,
                    606:      202,   206,   212,   216,   220,   224,   228,   232,   236,   240,
                    607:      244,   248,   252,   256,   262,   267,   271,   274,   276,   278,
                    608:      282,   286,   288,   292,   293,   295,   299,   301,   303,   305,
                    609:      307,   310,   313,   315,   318,   320,   323,   324,   329,   331,
                    610:      334,   339,   344,   349,   352,   358,   361,   363,   365,   367,
                    611:      370,   373,   376,   377,   378,   388,   392,   395,   397,   402,
                    612:      405,   409,   412,   415,   419,   422,   425,   426,   430,   433,
                    613:      435,   438,   440,   442,   447,   451,   455,   459,   463,   467,
                    614:      471,   474,   477,   480,   484,   489,   491,   495,   500,   503,
                    615:      506,   509,   512,   515,   520,   524,   527,   529,   536,   543,
                    616:      547,   554,   561,   563,   572,   581,   588,   593,   595,   602,
                    617:      609,   618,   627,   636,   643,   645,   647,   652,   654,   657,
                    618:      658,   660,   664,   666,   668,   670
                    619: };
                    620: 
                    621: /* YYRHS -- A `-1'-separated list of the rules' RHS.  */
                    622: static const yytype_int16 yyrhs[] =
                    623: {
                    624:      113,     0,    -1,   130,    -1,     1,    -1,    35,    -1,   114,
                    625:       10,    -1,    36,    -1,   115,    10,    -1,     9,    -1,   116,
                    626:       10,    -1,    51,    -1,   117,    10,    -1,    79,    -1,   118,
                    627:       10,    -1,    -1,    53,    12,   129,    14,   127,   137,    14,
                    628:      127,   129,   147,   120,   150,    -1,    -1,    53,    12,   129,
                    629:       14,    14,   127,   129,   147,   121,   150,    -1,    -1,    53,
                    630:       12,   159,    44,   159,   147,   122,   150,    -1,    86,    -1,
                    631:       89,    -1,    57,    12,   137,   147,    -1,    11,    -1,   125,
                    632:       10,    -1,    10,    -1,   126,    10,    -1,    -1,   126,    -1,
                    633:       -1,   142,    -1,    -1,   148,    -1,   128,    -1,   128,   134,
                    634:      128,    -1,   137,    -1,   131,    -1,   131,   125,   154,    17,
                    635:       -1,   131,     9,   131,    -1,   131,     9,   131,   125,   154,
                    636:       17,    -1,   125,   154,    17,    -1,     7,   125,   154,    17,
                    637:       -1,     8,   125,   154,    17,    -1,    -1,    54,   123,    12,
                    638:      158,   147,   133,   125,   154,    17,    -1,   132,    -1,   134,
                    639:      128,   132,    -1,   137,    -1,   135,   116,   137,    -1,   157,
                    640:       69,   136,    -1,   136,    93,   136,    94,   136,    -1,   136,
                    641:      115,   136,    -1,   136,   114,   136,    -1,   136,    23,   145,
                    642:       -1,   136,    23,   136,    -1,   136,    44,   159,    -1,    12,
                    643:      138,    16,    44,   159,    -1,   136,   156,    -1,   144,    -1,
                    644:      156,    -1,   157,    69,   137,    -1,   137,    93,   137,    94,
                    645:      137,    -1,   137,   115,   137,    -1,   137,   114,   137,    -1,
                    646:      137,    38,   137,    -1,   137,    39,   137,    -1,   137,    40,
                    647:      137,    -1,   137,    41,   137,    -1,   137,    42,   137,    -1,
                    648:      137,    43,   137,    -1,   137,    23,   145,    -1,   137,    23,
                    649:      137,    -1,   137,    44,   159,    -1,    12,   138,    16,    44,
                    650:      159,    -1,   137,    13,    95,   157,    -1,   137,    13,    95,
                    651:       -1,   137,   156,    -1,   144,    -1,   156,    -1,   137,   116,
                    652:      137,    -1,   138,   116,   137,    -1,   136,    -1,   139,   116,
                    653:      136,    -1,    -1,   139,    -1,    12,   138,    16,    -1,    76,
                    654:       -1,    77,    -1,    10,    -1,    14,    -1,   142,    10,    -1,
                    655:      142,    14,    -1,    17,    -1,   143,    10,    -1,   145,    -1,
                    656:      106,   144,    -1,    -1,    15,   146,    92,    15,    -1,    16,
                    657:       -1,   147,    10,    -1,   141,   140,    13,   156,    -1,   141,
                    658:      140,    37,   156,    -1,   141,   140,    40,   156,    -1,   141,
                    659:      140,    -1,    50,   159,    18,   135,    19,    -1,    50,   159,
                    660:       -1,   137,    -1,     1,    -1,   126,    -1,    14,   127,    -1,
                    661:       47,   149,    -1,    49,   149,    -1,    -1,    -1,   117,   151,
                    662:      150,   152,    99,    12,   137,    16,   149,    -1,    52,   137,
                    663:      149,    -1,    52,   149,    -1,   119,    -1,   124,   150,   118,
                    664:      150,    -1,   124,   150,    -1,   125,   154,   143,    -1,    61,
                    665:      149,    -1,    62,   149,    -1,    98,   137,   149,    -1,    98,
                    666:      149,    -1,   148,   149,    -1,    -1,   160,   153,   150,    -1,
                    667:       14,   127,    -1,   150,    -1,   154,   150,    -1,    55,    -1,
                    668:       56,    -1,   156,    15,    69,   156,    -1,   156,   101,   156,
                    669:       -1,   156,   102,   156,    -1,   156,   103,   156,    -1,   156,
                    670:       15,   156,    -1,   156,   104,   156,    -1,   156,   107,   156,
                    671:       -1,   102,   156,    -1,   101,   156,    -1,   106,   156,    -1,
                    672:       46,    12,    16,    -1,    46,    12,   135,    16,    -1,    46,
                    673:       -1,    89,    12,    16,    -1,    89,    12,   135,    16,    -1,
                    674:       48,   156,    -1,   109,   157,    -1,   108,   157,    -1,   157,
                    675:      109,    -1,   157,   108,    -1,    95,   157,    42,   156,    -1,
                    676:       95,    42,   156,    -1,    95,   157,    -1,    95,    -1,    58,
                    677:       12,   137,   116,   137,    16,    -1,    58,    12,   137,   116,
                    678:      145,    16,    -1,    12,   137,    16,    -1,    60,    12,   137,
                    679:      116,   145,    16,    -1,    60,    12,   137,   116,   137,    16,
                    680:       -1,    90,    -1,    97,    12,   137,   116,   159,   116,   137,
                    681:       16,    -1,    97,    12,   137,   116,   159,   116,   145,    16,
                    682:       -1,    97,    12,   137,   116,   159,    16,    -1,    78,    12,
                    683:      135,    16,    -1,    91,    -1,   155,    12,   145,   116,   137,
                    684:       16,    -1,   155,    12,   137,   116,   137,    16,    -1,   155,
                    685:       12,   145,   116,   137,   116,   157,    16,    -1,   155,    12,
                    686:      137,   116,   137,   116,   157,    16,    -1,    96,    12,   137,
                    687:      116,   137,   116,   137,    16,    -1,    96,    12,   137,   116,
                    688:      137,    16,    -1,   157,    -1,   159,    -1,   159,    18,   135,
                    689:       19,    -1,    87,    -1,   110,   156,    -1,    -1,    86,    -1,
                    690:      158,   116,    86,    -1,    86,    -1,    45,    -1,    88,    -1,
                    691:       99,    12,   137,   147,    -1
                    692: };
                    693: 
                    694: /* YYRLINE[YYN] -- source line where rule number YYN was defined.  */
                    695: static const yytype_uint16 yyrline[] =
                    696: {
                    697:        0,    98,    98,   100,   104,   104,   108,   108,   112,   112,
                    698:      116,   116,   120,   120,   124,   124,   126,   126,   128,   128,
                    699:      133,   134,   138,   142,   142,   146,   146,   150,   151,   155,
                    700:      156,   161,   162,   166,   167,   171,   175,   176,   177,   178,
                    701:      179,   180,   182,   184,   184,   189,   190,   194,   195,   199,
                    702:      200,   202,   204,   206,   207,   212,   213,   214,   215,   216,
                    703:      220,   221,   223,   225,   227,   228,   229,   230,   231,   232,
                    704:      233,   234,   239,   240,   241,   244,   247,   248,   249,   253,
                    705:      254,   258,   259,   263,   264,   265,   269,   269,   273,   273,
                    706:      273,   273,   277,   277,   281,   283,   287,   287,   291,   291,
                    707:      295,   298,   301,   304,   305,   306,   307,   308,   312,   313,
                    708:      317,   319,   321,   321,   321,   323,   324,   325,   326,   327,
                    709:      328,   329,   332,   335,   336,   337,   338,   338,   339,   343,
                    710:      344,   348,   348,   352,   353,   354,   355,   356,   357,   358,
                    711:      359,   360,   361,   362,   363,   364,   365,   366,   367,   368,
                    712:      369,   370,   371,   372,   373,   374,   375,   376,   378,   381,
                    713:      382,   384,   389,   390,   392,   394,   396,   397,   398,   400,
                    714:      405,   407,   412,   414,   416,   420,   421,   422,   423,   427,
                    715:      428,   429,   435,   436,   437,   442
                    716: };
                    717: #endif
                    718: 
                    719: #if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
                    720: /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
                    721:    First, the terminals, then, starting at YYNTOKENS, nonterminals.  */
                    722: static const char *const yytname[] =
                    723: {
                    724:   "$end", "error", "$undefined", "FIRSTTOKEN", "PROGRAM", "PASTAT",
                    725:   "PASTAT2", "XBEGIN", "XEND", "','", "NL", "'{'", "'('", "'|'", "';'",
                    726:   "'/'", "')'", "'}'", "'['", "']'", "ARRAY", "MATCH", "NOTMATCH",
                    727:   "MATCHOP", "FINAL", "DOT", "ALL", "CCL", "NCCL", "CHAR", "OR", "STAR",
                    728:   "QUEST", "PLUS", "EMPTYRE", "AND", "BOR", "APPEND", "EQ", "GE", "GT",
                    729:   "LE", "LT", "NE", "IN", "ARG", "BLTIN", "BREAK", "CLOSE", "CONTINUE",
                    730:   "DELETE", "DO", "EXIT", "FOR", "FUNC", "SUB", "GSUB", "IF", "INDEX",
                    731:   "LSUBSTR", "MATCHFCN", "NEXT", "NEXTFILE", "ADD", "MINUS", "MULT",
                    732:   "DIVIDE", "MOD", "ASSIGN", "ASGNOP", "ADDEQ", "SUBEQ", "MULTEQ", "DIVEQ",
                    733:   "MODEQ", "POWEQ", "PRINT", "PRINTF", "SPRINTF", "ELSE", "INTEST",
                    734:   "CONDEXPR", "POSTINCR", "PREINCR", "POSTDECR", "PREDECR", "VAR", "IVAR",
                    735:   "VARNF", "CALL", "NUMBER", "STRING", "REGEXPR", "'?'", "':'", "GETLINE",
                    736:   "SUBSTR", "SPLIT", "RETURN", "WHILE", "CAT", "'+'", "'-'", "'*'", "'%'",
                    737:   "UMINUS", "NOT", "POWER", "INCR", "DECR", "INDIRECT", "LASTTOKEN",
                    738:   "$accept", "program", "and", "bor", "comma", "do", "else", "for", "@1",
                    739:   "@2", "@3", "funcname", "if", "lbrace", "nl", "opt_nl", "opt_pst",
                    740:   "opt_simple_stmt", "pas", "pa_pat", "pa_stat", "@4", "pa_stats",
                    741:   "patlist", "ppattern", "pattern", "plist", "pplist", "prarg", "print",
                    742:   "pst", "rbrace", "re", "reg_expr", "@5", "rparen", "simple_stmt", "st",
                    743:   "stmt", "@6", "@7", "@8", "stmtlist", "subop", "term", "var", "varlist",
                    744:   "varname", "while", 0
                    745: };
                    746: #endif
                    747: 
                    748: # ifdef YYPRINT
                    749: /* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to
                    750:    token YYLEX-NUM.  */
                    751: static const yytype_uint16 yytoknum[] =
                    752: {
                    753:        0,   256,   257,   258,   259,   260,   261,   262,   263,    44,
                    754:      264,   123,    40,   124,    59,    47,    41,   125,    91,    93,
                    755:      265,   266,   267,   268,   269,   270,   271,   272,   273,   274,
                    756:      275,   276,   277,   278,   279,   280,   281,   282,   283,   284,
                    757:      285,   286,   287,   288,   289,   290,   291,   292,   293,   294,
                    758:      295,   296,   297,   298,   299,   300,   301,   302,   303,   304,
                    759:      305,   306,   307,   308,   309,   310,   311,   312,   313,   314,
                    760:      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
                    761:      325,   326,   327,   328,   329,   330,   331,   332,   333,   334,
                    762:      335,   336,   337,    63,    58,   338,   339,   340,   341,   342,
                    763:      343,    43,    45,    42,    37,   344,   345,   346,   347,   348,
                    764:      349,   350
                    765: };
                    766: # endif
                    767: 
                    768: /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
                    769: static const yytype_uint8 yyr1[] =
                    770: {
                    771:        0,   112,   113,   113,   114,   114,   115,   115,   116,   116,
                    772:      117,   117,   118,   118,   120,   119,   121,   119,   122,   119,
                    773:      123,   123,   124,   125,   125,   126,   126,   127,   127,   128,
                    774:      128,   129,   129,   130,   130,   131,   132,   132,   132,   132,
                    775:      132,   132,   132,   133,   132,   134,   134,   135,   135,   136,
                    776:      136,   136,   136,   136,   136,   136,   136,   136,   136,   136,
                    777:      137,   137,   137,   137,   137,   137,   137,   137,   137,   137,
                    778:      137,   137,   137,   137,   137,   137,   137,   137,   137,   138,
                    779:      138,   139,   139,   140,   140,   140,   141,   141,   142,   142,
                    780:      142,   142,   143,   143,   144,   144,   146,   145,   147,   147,
                    781:      148,   148,   148,   148,   148,   148,   148,   148,   149,   149,
                    782:      150,   150,   151,   152,   150,   150,   150,   150,   150,   150,
                    783:      150,   150,   150,   150,   150,   150,   153,   150,   150,   154,
                    784:      154,   155,   155,   156,   156,   156,   156,   156,   156,   156,
                    785:      156,   156,   156,   156,   156,   156,   156,   156,   156,   156,
                    786:      156,   156,   156,   156,   156,   156,   156,   156,   156,   156,
                    787:      156,   156,   156,   156,   156,   156,   156,   156,   156,   156,
                    788:      156,   156,   156,   156,   156,   157,   157,   157,   157,   158,
                    789:      158,   158,   159,   159,   159,   160
                    790: };
                    791: 
                    792: /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN.  */
                    793: static const yytype_uint8 yyr2[] =
                    794: {
                    795:        0,     2,     1,     1,     1,     2,     1,     2,     1,     2,
                    796:        1,     2,     1,     2,     0,    12,     0,    10,     0,     8,
                    797:        1,     1,     4,     1,     2,     1,     2,     0,     1,     0,
                    798:        1,     0,     1,     1,     3,     1,     1,     4,     3,     6,
                    799:        3,     4,     4,     0,     9,     1,     3,     1,     3,     3,
                    800:        5,     3,     3,     3,     3,     3,     5,     2,     1,     1,
                    801:        3,     5,     3,     3,     3,     3,     3,     3,     3,     3,
                    802:        3,     3,     3,     5,     4,     3,     2,     1,     1,     3,
                    803:        3,     1,     3,     0,     1,     3,     1,     1,     1,     1,
                    804:        2,     2,     1,     2,     1,     2,     0,     4,     1,     2,
                    805:        4,     4,     4,     2,     5,     2,     1,     1,     1,     2,
                    806:        2,     2,     0,     0,     9,     3,     2,     1,     4,     2,
                    807:        3,     2,     2,     3,     2,     2,     0,     3,     2,     1,
                    808:        2,     1,     1,     4,     3,     3,     3,     3,     3,     3,
                    809:        2,     2,     2,     3,     4,     1,     3,     4,     2,     2,
                    810:        2,     2,     2,     4,     3,     2,     1,     6,     6,     3,
                    811:        6,     6,     1,     8,     8,     6,     4,     1,     6,     6,
                    812:        8,     8,     8,     6,     1,     1,     4,     1,     2,     0,
                    813:        1,     3,     1,     1,     1,     4
                    814: };
                    815: 
                    816: /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
                    817:    STATE-NUM when YYTABLE doesn't specify something else to do.  Zero
                    818:    means the default is an error.  */
                    819: static const yytype_uint8 yydefact[] =
                    820: {
                    821:        0,     3,    88,    89,     0,    33,     2,    30,     1,     0,
                    822:        0,    23,     0,    96,   183,   145,     0,     0,   131,   132,
                    823:        0,     0,     0,   182,   177,   184,     0,   162,   167,   156,
                    824:        0,     0,     0,     0,     0,     0,     0,     0,     0,    36,
                    825:       45,    29,    35,    77,    94,     0,    78,   174,   175,    90,
                    826:       91,     0,     0,     0,     0,     0,     0,     0,     0,   148,
                    827:      174,    20,    21,     0,     0,     0,     0,     0,     0,   155,
                    828:        0,     0,   141,   140,    95,   142,   150,   149,   178,   107,
                    829:       24,    27,     0,     0,     0,    10,     0,     0,     0,     0,
                    830:        0,    86,    87,     0,     0,   112,   117,     0,     0,   106,
                    831:       83,     0,   129,     0,   126,     0,     0,    34,     0,     0,
                    832:        4,     6,     0,     0,     0,     0,     0,     0,     0,     0,
                    833:        0,     0,    76,     0,     0,     0,     0,     0,     0,     0,
                    834:        0,   152,   151,     0,     0,     0,     8,   159,     0,     0,
                    835:        0,     0,   143,     0,    47,     0,   179,     0,     0,     0,
                    836:      146,     0,   154,     0,     0,     0,    25,    28,   128,    27,
                    837:      108,   110,   111,   105,     0,   116,     0,     0,   121,   122,
                    838:        0,   124,     0,    11,     0,   119,     0,     0,    81,    84,
                    839:      103,    58,    59,   174,   125,    40,   130,     0,    38,     0,
                    840:       46,    75,    71,    70,    64,    65,    66,    67,    68,    69,
                    841:       72,     0,     5,    63,     7,    62,     0,    94,     0,   137,
                    842:      134,   135,   136,   138,   139,    60,     0,    41,    42,     9,
                    843:       79,     0,    80,    97,   144,     0,   180,     0,     0,     0,
                    844:      166,   147,   153,     0,     0,    26,   109,     0,   115,     0,
                    845:       32,   175,     0,   123,     0,   113,    12,     0,    92,   120,
                    846:        0,     0,     0,     0,     0,     0,    57,     0,     0,     0,
                    847:        0,     0,   127,     0,    37,    74,     0,     0,     0,   133,
                    848:      176,    73,    48,    98,     0,    43,     0,    94,     0,    94,
                    849:        0,     0,     0,    27,     0,    22,   185,     0,    13,   118,
                    850:       93,    85,     0,    54,    53,    55,     0,    52,    51,    82,
                    851:      100,   101,   102,    49,     0,    61,     0,     0,   181,    99,
                    852:        0,   157,   158,   161,   160,   173,     0,   165,     0,   104,
                    853:       27,     0,     0,     0,     0,     0,     0,    39,   169,     0,
                    854:      168,     0,     0,     0,     0,    94,     0,     0,    18,     0,
                    855:       56,     0,    50,     0,     0,     0,   172,   163,   164,     0,
                    856:       27,     0,     0,   171,   170,    44,    16,     0,    19,     0,
                    857:        0,     0,   114,    17,    14,     0,    15
                    858: };
                    859: 
                    860: /* YYDEFGOTO[NTERM-NUM].  */
                    861: static const yytype_int16 yydefgoto[] =
                    862: {
                    863:       -1,     4,   120,   121,   225,    95,   247,    96,   365,   360,
                    864:      351,    63,    97,    98,   160,   158,     5,   239,     6,    39,
                    865:       40,   310,    41,   143,   178,    99,    54,   179,   180,   100,
                    866:        7,   249,    43,    44,    55,   275,   101,   161,   102,   174,
                    867:      287,   187,   103,    45,    46,    47,   227,    48,   104
                    868: };
                    869: 
                    870: /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
                    871:    STATE-NUM.  */
                    872: #define YYPACT_NINF -322
                    873: static const yytype_int16 yypact[] =
                    874: {
                    875:      680,  -322,  -322,  -322,    25,  1583,  -322,    17,  -322,    34,
                    876:       34,  -322,  4136,  -322,  -322,    39,  4490,    16,  -322,  -322,
                    877:       44,    63,    74,  -322,  -322,  -322,    92,  -322,  -322,   255,
                    878:      102,   133,  4490,  4490,  4195,   -40,   -40,  4490,   811,   113,
                    879:     -322,    55,  3462,  -322,  -322,   143,    -4,   -35,    76,  -322,
                    880:     -322,   811,   811,  1674,    62,   -12,  3959,  4136,  4490,    -4,
                    881:       52,  -322,  -322,   160,  4136,  4136,  4136,  4018,  4490,    83,
                    882:     4136,  4136,    66,    66,  -322,    66,  -322,  -322,  -322,  -322,
                    883:     -322,   176,    82,    82,   -33,  -322,  2198,   188,   190,    82,
                    884:       82,  -322,  -322,  2198,   199,   178,  -322,  1424,   811,  3462,
                    885:     4254,    82,  -322,   879,  -322,  4136,   811,  1583,   117,  4136,
                    886:     -322,  -322,  4136,  4136,  4136,  4136,  4136,  4136,   -33,  4136,
                    887:     2257,  2316,    -4,  4136,  4313,  4490,  4490,  4490,  4490,  4490,
                    888:     4136,  -322,  -322,  4136,   947,  1015,  -322,  -322,  2375,   173,
                    889:     2375,   203,  -322,   124,  3462,  2643,   138,  2038,  2038,   140,
                    890:     -322,   149,    -4,  4490,  2038,  2038,  -322,   217,  -322,   176,
                    891:      217,  -322,  -322,   212,  2139,  -322,  1491,  4136,  -322,  -322,
                    892:     2139,  -322,  4136,  -322,  1424,   152,  1083,  4136,  3841,   223,
                    893:       22,  -322,    -4,    -2,  -322,  -322,  -322,  1424,    34,  1151,
                    894:     -322,   -40,  3713,  -322,  3713,  3713,  3713,  3713,  3713,  3713,
                    895:     -322,  2734,  -322,  3633,  -322,  3553,  2038,   223,  4490,    66,
                    896:      169,   169,    66,    66,    66,  3462,    21,  -322,  -322,  -322,
                    897:     3462,   -33,  3462,  -322,  -322,  2375,  -322,   154,  2375,  2375,
                    898:     -322,  -322,    -4,  2375,    31,  -322,  -322,  4136,  -322,   219,
                    899:     -322,   -11,  2825,  -322,  2825,  -322,  -322,  1220,  -322,   224,
                    900:      155,  4372,   -33,  4372,  2434,  2493,    -4,  2552,  4490,  4490,
                    901:     4490,  4372,  -322,   811,  -322,  -322,  4136,  2375,  2375,    -4,
                    902:     -322,  -322,  3462,  -322,     4,   226,  2916,   230,  3007,   231,
                    903:     1765,   189,    68,   106,   -33,   226,   226,   153,  -322,  -322,
                    904:     -322,   204,  4136,  4431,  -322,  -322,  3772,  4077,  3900,  3841,
                    905:       -4,    -4,    -4,  3841,  1288,  3462,  1856,  1947,  -322,  -322,
                    906:       34,  -322,  -322,  -322,  -322,  -322,  2375,  -322,  2375,  -322,
                    907:      176,  4136,   239,   245,   -33,   192,  4372,  -322,  -322,    56,
                    908:     -322,    56,   811,  3098,  3189,   247,  1558,  3280,   226,  4136,
                    909:     -322,   204,  3841,   250,   258,  1356,  -322,  -322,  -322,   239,
                    910:      176,  1424,  3371,  -322,  -322,  -322,   226,  1558,  -322,    82,
                    911:     1424,   239,  -322,  -322,   226,  1424,  -322
                    912: };
                    913: 
                    914: /* YYPGOTO[NTERM-NUM].  */
                    915: static const yytype_int16 yypgoto[] =
                    916: {
                    917:     -322,  -322,  -146,   -83,   200,  -322,  -322,  -322,  -322,  -322,
                    918:     -322,  -322,  -322,    19,   -80,  -153,   220,  -321,  -322,   174,
                    919:      171,  -322,  -322,   -44,    14,   526,  -174,  -322,  -322,  -322,
                    920:     -322,  -322,   -32,   -60,  -322,  -234,  -162,   -29,   -53,  -322,
                    921:     -322,  -322,   -13,  -322,   269,   -16,  -322,   -75,  -322
                    922: };
                    923: 
                    924: /* YYTABLE[YYPACT[STATE-NUM]].  What to do in state STATE-NUM.  If
                    925:    positive, shift that token.  If negative, reduce the rule which
                    926:    number is the opposite.  If zero, do what YYDEFACT says.
                    927:    If YYTABLE_NINF, syntax error.  */
                    928: #define YYTABLE_NINF -32
                    929: static const yytype_int16 yytable[] =
                    930: {
                    931:       60,   157,    74,   250,   240,    14,   236,   133,   285,   163,
                    932:      286,   124,    14,    69,   219,   349,    60,    60,    60,    76,
                    933:       77,    60,   149,   151,    38,     8,    60,    49,    51,    52,
                    934:      136,    50,   254,   284,   130,   258,   361,    60,   134,   135,
                    935:      270,   219,    60,   200,   175,    11,    23,    24,    25,   193,
                    936:      186,    56,    60,    23,   162,    25,    64,   165,   106,   259,
                    937:      168,   169,   260,   207,   171,     2,   219,   261,   181,     3,
                    938:       37,   136,   184,   131,   132,    65,    14,   136,   139,   157,
                    939:      141,   186,   186,    60,   183,   176,    66,   319,   338,   216,
                    940:      308,   241,   156,   189,   133,   255,   159,   125,   126,   127,
                    941:      128,    14,    61,   129,    67,    62,   131,   132,    60,    60,
                    942:       60,    60,    60,    60,    70,   356,   156,    23,   325,    25,
                    943:      320,   245,   105,   186,    11,   153,    38,   364,    60,    60,
                    944:      321,    60,    60,   136,   262,   238,   186,    60,    60,    60,
                    945:      224,   243,    23,    24,    25,    71,   271,   254,    60,   136,
                    946:      254,   254,   254,   254,    60,   123,   230,   254,   136,   281,
                    947:      131,   132,    60,   136,   136,   231,    37,   336,   277,   279,
                    948:      273,   291,   146,   129,   240,   265,    60,   295,    60,    60,
                    949:       60,    60,    60,    60,   124,    60,   156,    60,   173,    60,
                    950:       60,   294,    60,   282,   289,   240,   254,   357,   136,    60,
                    951:      166,   136,   167,   157,    60,   317,    60,   263,   341,   322,
                    952:      255,   172,   191,   255,   255,   255,   255,   221,   223,   181,
                    953:      255,   181,   181,   181,   226,   181,    60,   235,    60,   181,
                    954:      237,   246,   136,   283,   290,   183,   309,   183,   183,   183,
                    955:      157,   183,    60,    60,    60,   183,   312,   314,   324,   340,
                    956:      304,   186,   323,   138,   140,   273,    60,   339,   335,   255,
                    957:       60,   107,    60,   348,    60,   293,   353,   296,   297,   298,
                    958:      157,   299,   127,   128,   354,   303,   129,    60,   190,   188,
                    959:       60,    60,    60,    60,     0,    59,     0,    60,     0,    60,
                    960:       60,    60,   186,     0,   181,     0,     0,    68,   358,     0,
                    961:       14,    72,    73,    75,     0,     0,    78,   363,     0,     0,
                    962:      183,   122,   366,   343,     0,   344,     0,    60,    60,   345,
                    963:        0,    60,   122,     0,     0,     0,    60,    75,     0,   332,
                    964:      362,     0,     0,     0,     0,     0,    60,   152,     0,     0,
                    965:      342,    23,    24,    25,     0,     0,     0,   228,   229,     0,
                    966:        0,     0,     0,     0,   233,   234,     0,     0,     0,     0,
                    967:        0,     0,     0,     0,     0,    37,     0,     0,   122,   182,
                    968:        0,     0,     0,     0,     0,     0,     0,     0,     0,   257,
                    969:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
                    970:        0,     0,     0,   209,   210,   211,   212,   213,   214,     0,
                    971:        0,     0,     0,     0,     0,     0,   267,   268,     0,     0,
                    972:        0,     0,     0,   122,   122,     0,   122,   122,     0,     0,
                    973:        0,     0,   232,   122,   122,     0,     0,   274,     0,     0,
                    974:        0,     0,     0,   122,     0,     0,     0,     0,     0,   122,
                    975:        0,     0,     0,     0,     0,     0,     0,   256,     0,     0,
                    976:      140,     0,     0,     0,     0,     0,     0,     0,     0,     0,
                    977:        0,   122,     0,   122,   122,   122,   122,   122,   122,     0,
                    978:      122,     0,   122,     0,   122,   122,     0,   269,     0,     0,
                    979:      316,   318,     0,     0,   122,     0,     0,     0,     0,   122,
                    980:        0,   122,     0,     0,     0,     0,     0,     0,     0,     0,
                    981:        0,     0,     0,     0,     0,     0,   329,   331,     0,     0,
                    982:        0,   122,     0,   122,     0,     0,     0,     0,     0,     0,
                    983:      182,     0,   182,   182,   182,   140,   182,   300,   301,   302,
                    984:      182,    42,     0,     0,     0,     0,     0,     0,    53,     0,
                    985:        0,   122,     0,     0,     0,   122,     0,   122,     0,   122,
                    986:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
                    987:        0,     0,   256,     0,     0,   256,   256,   256,   256,     0,
                    988:        0,     0,   256,     0,   122,   122,   122,     0,     0,     0,
                    989:        0,     0,   144,   145,     0,     0,     0,     0,     0,     0,
                    990:      147,   148,   144,   144,     0,   182,   154,   155,     0,     0,
                    991:        0,     0,   122,   122,     0,     0,   122,     0,     0,     0,
                    992:        0,   256,   164,     0,     0,     0,     0,     0,     0,   170,
                    993:        0,   122,     0,     0,     0,     0,     0,     0,     0,     0,
                    994:        0,    42,     0,    42,     0,   192,     0,     0,   194,   195,
                    995:      196,   197,   198,   199,     0,   201,   203,   205,     0,   206,
                    996:        0,     0,     0,     0,     0,     0,   215,     0,     0,   144,
                    997:        0,     0,     0,     0,   220,     0,   222,     0,     0,     0,
                    998:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
                    999:      -29,     1,     0,     0,     0,     0,     0,   -29,   -29,     0,
                   1000:        2,   -29,   -29,   242,     3,   -29,     0,     0,   244,     0,
                   1001:        0,     0,     0,    53,     0,     0,     0,     0,     0,     0,
                   1002:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
                   1003:        0,     0,     0,     0,     0,   -29,   -29,     0,   -29,     0,
                   1004:        0,     0,     0,     0,   -29,   -29,   -29,     0,   -29,     0,
                   1005:      -29,     0,     0,     0,     0,     0,     0,     0,     0,     0,
                   1006:        0,   272,     0,     0,   276,   278,     0,     0,   -29,   280,
                   1007:        0,     0,     0,   144,     0,     0,   -29,   -29,   -29,   -29,
                   1008:      -29,   -29,     0,     0,     0,   -29,   -29,   -29,     0,     0,
                   1009:        0,   -29,   -29,     0,     0,     0,   -29,     0,   -29,   -29,
                   1010:      -29,     0,   305,   306,   307,     0,     0,     0,     0,     0,
                   1011:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
                   1012:        0,     0,    79,     0,     0,     0,     0,     0,    53,     0,
                   1013:        0,    80,    11,    12,     0,    81,    13,     0,     0,     0,
                   1014:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
                   1015:        0,     0,   333,     0,   334,     0,     0,   337,     0,     0,
                   1016:        0,     0,     0,     0,     0,     0,    14,    15,    82,    16,
                   1017:       83,    84,    85,    86,    87,   352,    18,    19,    88,    20,
                   1018:        0,    21,    89,    90,     0,     0,     0,     0,     0,     0,
                   1019:       79,     0,     0,     0,     0,     0,     0,    91,    92,    22,
                   1020:       11,    12,     0,    81,    13,     0,   185,    23,    24,    25,
                   1021:       26,    27,    28,     0,     0,     0,    29,    30,    31,    93,
                   1022:       94,     0,    32,    33,     0,     0,     0,    34,     0,    35,
                   1023:       36,    37,     0,     0,    14,    15,    82,    16,    83,    84,
                   1024:       85,    86,    87,     0,    18,    19,    88,    20,     0,    21,
                   1025:       89,    90,     0,     0,     0,     0,     0,     0,    79,     0,
                   1026:        0,     0,     0,     0,     0,    91,    92,    22,    11,    12,
                   1027:        0,    81,    13,     0,   217,    23,    24,    25,    26,    27,
                   1028:       28,     0,     0,     0,    29,    30,    31,    93,    94,     0,
                   1029:       32,    33,     0,     0,     0,    34,     0,    35,    36,    37,
                   1030:        0,     0,    14,    15,    82,    16,    83,    84,    85,    86,
                   1031:       87,     0,    18,    19,    88,    20,     0,    21,    89,    90,
                   1032:        0,     0,     0,     0,     0,     0,    79,     0,     0,     0,
                   1033:        0,     0,     0,    91,    92,    22,    11,    12,     0,    81,
                   1034:       13,     0,   218,    23,    24,    25,    26,    27,    28,     0,
                   1035:        0,     0,    29,    30,    31,    93,    94,     0,    32,    33,
                   1036:        0,     0,     0,    34,     0,    35,    36,    37,     0,     0,
                   1037:       14,    15,    82,    16,    83,    84,    85,    86,    87,     0,
                   1038:       18,    19,    88,    20,     0,    21,    89,    90,     0,     0,
                   1039:        0,     0,     0,     0,    79,     0,     0,     0,     0,     0,
                   1040:        0,    91,    92,    22,    11,    12,     0,    81,    13,     0,
                   1041:      248,    23,    24,    25,    26,    27,    28,     0,     0,     0,
                   1042:       29,    30,    31,    93,    94,     0,    32,    33,     0,     0,
                   1043:        0,    34,     0,    35,    36,    37,     0,     0,    14,    15,
                   1044:       82,    16,    83,    84,    85,    86,    87,     0,    18,    19,
                   1045:       88,    20,     0,    21,    89,    90,     0,     0,     0,     0,
                   1046:        0,     0,    79,     0,     0,     0,     0,     0,     0,    91,
                   1047:       92,    22,    11,    12,     0,    81,    13,     0,   264,    23,
                   1048:       24,    25,    26,    27,    28,     0,     0,     0,    29,    30,
                   1049:       31,    93,    94,     0,    32,    33,     0,     0,     0,    34,
                   1050:        0,    35,    36,    37,     0,     0,    14,    15,    82,    16,
                   1051:       83,    84,    85,    86,    87,     0,    18,    19,    88,    20,
                   1052:        0,    21,    89,    90,     0,     0,     0,     0,     0,     0,
                   1053:        0,    79,     0,     0,     0,     0,     0,    91,    92,    22,
                   1054:      288,    11,    12,     0,    81,    13,     0,    23,    24,    25,
                   1055:       26,    27,    28,     0,     0,     0,    29,    30,    31,    93,
                   1056:       94,     0,    32,    33,     0,     0,     0,    34,     0,    35,
                   1057:       36,    37,     0,     0,     0,    14,    15,    82,    16,    83,
                   1058:       84,    85,    86,    87,     0,    18,    19,    88,    20,     0,
                   1059:       21,    89,    90,     0,     0,     0,     0,     0,     0,    79,
                   1060:        0,     0,     0,     0,     0,     0,    91,    92,    22,    11,
                   1061:       12,     0,    81,    13,     0,   327,    23,    24,    25,    26,
                   1062:       27,    28,     0,     0,     0,    29,    30,    31,    93,    94,
                   1063:        0,    32,    33,     0,     0,     0,    34,     0,    35,    36,
                   1064:       37,     0,     0,    14,    15,    82,    16,    83,    84,    85,
                   1065:       86,    87,     0,    18,    19,    88,    20,     0,    21,    89,
                   1066:       90,     0,     0,     0,     0,     0,     0,    79,     0,     0,
                   1067:        0,     0,     0,     0,    91,    92,    22,    11,    12,     0,
                   1068:       81,    13,     0,   355,    23,    24,    25,    26,    27,    28,
                   1069:        0,     0,     0,    29,    30,    31,    93,    94,     0,    32,
                   1070:       33,     0,     0,     0,    34,     0,    35,    36,    37,     0,
                   1071:        0,    14,    15,    82,    16,    83,    84,    85,    86,    87,
                   1072:        0,    18,    19,    88,    20,     0,    21,    89,    90,     0,
                   1073:        0,     0,     0,     0,     0,    79,     0,     0,     0,     0,
                   1074:        0,     0,    91,    92,    22,    11,    12,     0,    81,    13,
                   1075:        0,     0,    23,    24,    25,    26,    27,    28,     0,     0,
                   1076:        0,    29,    30,    31,    93,    94,     0,    32,    33,     0,
                   1077:        0,     0,    34,     0,    35,    36,    37,     0,     0,    14,
                   1078:       15,    82,    16,    83,    84,    85,    86,    87,     0,    18,
                   1079:       19,    88,    20,     0,    21,    89,    90,     0,     0,     0,
                   1080:        0,     0,    79,     0,     0,     0,     0,     0,     0,     0,
                   1081:       91,    92,    22,    12,     0,   -31,    13,     0,     0,     0,
                   1082:       23,    24,    25,    26,    27,    28,     0,     0,     0,    29,
                   1083:       30,    31,    93,    94,     0,    32,    33,     0,     0,     0,
                   1084:       34,     0,    35,    36,    37,     0,    14,    15,     0,    16,
                   1085:        0,    84,     0,     0,     0,     0,    18,    19,     0,    20,
                   1086:        0,    21,     0,     0,     0,     0,     0,     0,     0,    79,
                   1087:        0,     0,     0,     0,     0,     0,     0,    91,    92,    22,
                   1088:       12,     0,     0,    13,   -31,     0,     0,    23,    24,    25,
                   1089:       26,    27,    28,     0,     0,     0,    29,    30,    31,     0,
                   1090:        9,    10,    32,    33,    11,    12,     0,    34,    13,    35,
                   1091:       36,    37,     0,    14,    15,     0,    16,     0,    84,     0,
                   1092:        0,     0,     0,    18,    19,     0,    20,     0,    21,     0,
                   1093:        0,     0,     0,     0,     0,     0,     0,     0,    14,    15,
                   1094:        0,    16,     0,     0,    91,    92,    22,    17,    18,    19,
                   1095:        0,    20,     0,    21,    23,    24,    25,    26,    27,    28,
                   1096:        0,     0,     0,    29,    30,    31,     0,     0,     0,    32,
                   1097:       33,    22,     0,     0,    34,     0,    35,    36,    37,    23,
                   1098:       24,    25,    26,    27,    28,     0,     0,     0,    29,    30,
                   1099:       31,     0,     0,   136,    32,    33,    57,   108,     0,    34,
                   1100:      137,    35,    36,    37,     0,     0,     0,   109,     0,     0,
                   1101:        0,     0,     0,     0,     0,     0,     0,     0,     0,   110,
                   1102:      111,     0,   112,   113,   114,   115,   116,   117,   118,    14,
                   1103:       15,     0,    16,     0,     0,     0,     0,     0,     0,    18,
                   1104:       19,     0,    20,     0,    21,     0,     0,     0,     0,     0,
                   1105:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
                   1106:        0,     0,    22,     0,     0,     0,     0,     0,     0,     0,
                   1107:       23,    24,    25,    26,    27,    28,     0,   119,     0,    29,
                   1108:       30,    31,     0,     0,   136,    32,    33,    57,   108,     0,
                   1109:       58,   315,    35,    36,    37,     0,     0,     0,   109,     0,
                   1110:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
                   1111:      110,   111,     0,   112,   113,   114,   115,   116,   117,   118,
                   1112:       14,    15,     0,    16,     0,     0,     0,     0,     0,     0,
                   1113:       18,    19,     0,    20,     0,    21,     0,     0,     0,     0,
                   1114:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
                   1115:        0,     0,     0,    22,     0,     0,     0,     0,     0,     0,
                   1116:        0,    23,    24,    25,    26,    27,    28,     0,   119,     0,
                   1117:       29,    30,    31,     0,     0,   136,    32,    33,    57,   108,
                   1118:        0,    58,   328,    35,    36,    37,     0,     0,     0,   109,
                   1119:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
                   1120:        0,   110,   111,     0,   112,   113,   114,   115,   116,   117,
                   1121:      118,    14,    15,     0,    16,     0,     0,     0,     0,     0,
                   1122:        0,    18,    19,     0,    20,     0,    21,     0,     0,     0,
                   1123:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
                   1124:        0,     0,     0,     0,    22,     0,     0,     0,     0,     0,
                   1125:        0,     0,    23,    24,    25,    26,    27,    28,     0,   119,
                   1126:        0,    29,    30,    31,     0,     0,   136,    32,    33,    57,
                   1127:      108,     0,    58,   330,    35,    36,    37,     0,     0,     0,
                   1128:      109,     0,     0,     0,     0,     0,     0,     0,     0,     0,
                   1129:        0,     0,   110,   111,     0,   112,   113,   114,   115,   116,
                   1130:      117,   118,    14,    15,     0,    16,     0,     0,     0,     0,
                   1131:        0,     0,    18,    19,     0,    20,     0,    21,     0,     0,
                   1132:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
                   1133:        0,     0,     0,     0,     0,    22,     0,     0,     0,     0,
                   1134:        0,     0,     0,    23,    24,    25,    26,    27,    28,     0,
                   1135:      119,     0,    29,    30,    31,     0,     0,   136,    32,    33,
                   1136:       57,   108,     0,    58,     0,    35,    36,    37,     0,     0,
                   1137:        0,   109,     0,     0,     0,     0,     0,     0,     0,     0,
                   1138:        0,     0,     0,   110,   111,     0,   112,   113,   114,   115,
                   1139:      116,   117,   118,    14,    15,     0,    16,     0,     0,     0,
                   1140:        0,     0,     0,    18,    19,     0,    20,     0,    21,     0,
                   1141:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
                   1142:        0,     0,     0,     0,     0,     0,    22,     0,     0,     0,
                   1143:        0,     0,     0,     0,    23,    24,    25,    26,    27,    28,
                   1144:        0,   119,     0,    29,    30,    31,     0,     0,     0,    32,
                   1145:       33,     0,     0,     0,    58,     0,    35,    36,    37,   156,
                   1146:        0,    57,   108,   159,     0,     0,     0,     0,     0,     0,
                   1147:        0,     0,   109,     0,     0,     0,     0,     0,     0,     0,
                   1148:        0,     0,     0,     0,   110,   111,     0,   112,   113,   114,
                   1149:      115,   116,   117,   118,    14,    15,     0,    16,     0,     0,
                   1150:        0,     0,     0,     0,    18,    19,     0,    20,     0,    21,
                   1151:        0,     0,     0,     0,     0,     0,     0,     0,   156,     0,
                   1152:       12,     0,   159,    13,     0,     0,     0,    22,     0,     0,
                   1153:        0,     0,     0,     0,     0,    23,    24,    25,    26,    27,
                   1154:       28,     0,   119,     0,    29,    30,    31,     0,     0,     0,
                   1155:       32,    33,     0,    14,    15,    58,    16,    35,    36,    37,
                   1156:        0,     0,     0,    18,    19,     0,    20,     0,    21,     0,
                   1157:        0,     0,     0,     0,     0,     0,     0,   202,     0,    12,
                   1158:        0,     0,    13,     0,     0,     0,    22,     0,     0,     0,
                   1159:        0,     0,     0,     0,    23,    24,    25,    26,    27,    28,
                   1160:        0,     0,     0,    29,    30,    31,     0,     0,     0,    32,
                   1161:       33,     0,    14,    15,    34,    16,    35,    36,    37,     0,
                   1162:        0,     0,    18,    19,     0,    20,     0,    21,     0,     0,
                   1163:        0,     0,     0,     0,     0,     0,   204,     0,    12,     0,
                   1164:        0,    13,     0,     0,     0,    22,     0,     0,     0,     0,
                   1165:        0,     0,     0,    23,    24,    25,    26,    27,    28,     0,
                   1166:        0,     0,    29,    30,    31,     0,     0,     0,    32,    33,
                   1167:        0,    14,    15,    34,    16,    35,    36,    37,     0,     0,
                   1168:        0,    18,    19,     0,    20,     0,    21,     0,     0,     0,
                   1169:        0,     0,     0,     0,     0,   219,     0,    12,     0,     0,
                   1170:       13,     0,     0,     0,    22,     0,     0,     0,     0,     0,
                   1171:        0,     0,    23,    24,    25,    26,    27,    28,     0,     0,
                   1172:        0,    29,    30,    31,     0,     0,     0,    32,    33,     0,
                   1173:       14,    15,    34,    16,    35,    36,    37,     0,     0,     0,
                   1174:       18,    19,     0,    20,     0,    21,     0,     0,     0,     0,
                   1175:        0,     0,     0,     0,   202,     0,   292,     0,     0,    13,
                   1176:        0,     0,     0,    22,     0,     0,     0,     0,     0,     0,
                   1177:        0,    23,    24,    25,    26,    27,    28,     0,     0,     0,
                   1178:       29,    30,    31,     0,     0,     0,    32,    33,     0,    14,
                   1179:       15,    34,    16,    35,    36,    37,     0,     0,     0,    18,
                   1180:       19,     0,    20,     0,    21,     0,     0,     0,     0,     0,
                   1181:        0,     0,     0,   204,     0,   292,     0,     0,    13,     0,
                   1182:        0,     0,    22,     0,     0,     0,     0,     0,     0,     0,
                   1183:       23,    24,    25,    26,    27,    28,     0,     0,     0,    29,
                   1184:       30,    31,     0,     0,     0,    32,    33,     0,    14,    15,
                   1185:       34,    16,    35,    36,    37,     0,     0,     0,    18,    19,
                   1186:        0,    20,     0,    21,     0,     0,     0,     0,     0,     0,
                   1187:        0,     0,   219,     0,   292,     0,     0,    13,     0,     0,
                   1188:        0,    22,     0,     0,     0,     0,     0,     0,     0,    23,
                   1189:       24,    25,    26,    27,    28,     0,     0,     0,    29,    30,
                   1190:       31,     0,     0,     0,    32,    33,     0,    14,    15,    34,
                   1191:       16,    35,    36,    37,     0,     0,     0,    18,    19,     0,
                   1192:       20,     0,    21,     0,     0,     0,     0,     0,     0,     0,
                   1193:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
                   1194:       22,     0,     0,     0,     0,     0,     0,     0,    23,    24,
                   1195:       25,    26,    27,    28,     0,     0,     0,    29,    30,    31,
                   1196:        0,     0,     0,    32,    33,    57,   108,     0,    34,   137,
                   1197:       35,    36,    37,     0,     0,     0,   109,     0,     0,     0,
                   1198:        0,     0,     0,     0,     0,     0,     0,     0,   110,   111,
                   1199:        0,   112,   113,   114,   115,   116,   117,   118,    14,    15,
                   1200:        0,    16,     0,     0,     0,     0,     0,     0,    18,    19,
                   1201:        0,    20,     0,    21,     0,     0,     0,     0,     0,     0,
                   1202:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
                   1203:        0,    22,     0,     0,     0,     0,     0,     0,     0,    23,
                   1204:       24,    25,    26,    27,    28,     0,   119,     0,    29,    30,
                   1205:       31,     0,     0,     0,    32,    33,    57,   108,     0,    58,
                   1206:        0,    35,    36,    37,     0,     0,     0,   109,     0,     0,
                   1207:        0,     0,     0,     0,     0,     0,     0,     0,     0,   110,
                   1208:      111,     0,   112,   113,   114,   115,   116,   117,   118,    14,
                   1209:       15,     0,    16,     0,     0,     0,     0,     0,     0,    18,
                   1210:       19,     0,    20,     0,    21,     0,     0,     0,     0,     0,
                   1211:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
                   1212:        0,     0,    22,     0,     0,     0,     0,     0,     0,     0,
                   1213:       23,    24,    25,    26,    27,    28,     0,   119,   266,    29,
                   1214:       30,    31,     0,     0,     0,    32,    33,    57,   108,     0,
                   1215:       58,   273,    35,    36,    37,     0,     0,     0,   109,     0,
                   1216:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
                   1217:      110,   111,     0,   112,   113,   114,   115,   116,   117,   118,
                   1218:       14,    15,     0,    16,     0,     0,     0,     0,     0,     0,
                   1219:       18,    19,     0,    20,     0,    21,     0,     0,     0,     0,
                   1220:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
                   1221:        0,     0,     0,    22,     0,     0,     0,     0,     0,     0,
                   1222:        0,    23,    24,    25,    26,    27,    28,     0,   119,     0,
                   1223:       29,    30,    31,     0,     0,     0,    32,    33,    57,   108,
                   1224:        0,    58,   311,    35,    36,    37,     0,     0,     0,   109,
                   1225:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
                   1226:        0,   110,   111,     0,   112,   113,   114,   115,   116,   117,
                   1227:      118,    14,    15,     0,    16,     0,     0,     0,     0,     0,
                   1228:        0,    18,    19,     0,    20,     0,    21,     0,     0,     0,
                   1229:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
                   1230:        0,     0,     0,     0,    22,     0,     0,     0,     0,     0,
                   1231:        0,     0,    23,    24,    25,    26,    27,    28,     0,   119,
                   1232:        0,    29,    30,    31,     0,     0,     0,    32,    33,    57,
                   1233:      108,     0,    58,   313,    35,    36,    37,     0,     0,     0,
                   1234:      109,     0,     0,     0,     0,     0,     0,     0,     0,     0,
                   1235:        0,     0,   110,   111,     0,   112,   113,   114,   115,   116,
                   1236:      117,   118,    14,    15,     0,    16,     0,     0,     0,     0,
                   1237:        0,     0,    18,    19,     0,    20,     0,    21,     0,     0,
                   1238:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
                   1239:        0,     0,     0,     0,     0,    22,     0,     0,     0,     0,
                   1240:        0,     0,     0,    23,    24,    25,    26,    27,    28,     0,
                   1241:      119,     0,    29,    30,    31,     0,     0,     0,    32,    33,
                   1242:       57,   108,     0,    58,   346,    35,    36,    37,     0,     0,
                   1243:        0,   109,     0,     0,     0,     0,     0,     0,     0,     0,
                   1244:        0,     0,     0,   110,   111,     0,   112,   113,   114,   115,
                   1245:      116,   117,   118,    14,    15,     0,    16,     0,     0,     0,
                   1246:        0,     0,     0,    18,    19,     0,    20,     0,    21,     0,
                   1247:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
                   1248:        0,     0,     0,     0,     0,     0,    22,     0,     0,     0,
                   1249:        0,     0,     0,     0,    23,    24,    25,    26,    27,    28,
                   1250:        0,   119,     0,    29,    30,    31,     0,     0,     0,    32,
                   1251:       33,    57,   108,     0,    58,   347,    35,    36,    37,     0,
                   1252:        0,     0,   109,     0,     0,     0,     0,     0,     0,     0,
                   1253:        0,     0,     0,     0,   110,   111,     0,   112,   113,   114,
                   1254:      115,   116,   117,   118,    14,    15,     0,    16,     0,     0,
                   1255:        0,     0,     0,     0,    18,    19,     0,    20,     0,    21,
                   1256:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
                   1257:        0,     0,     0,     0,     0,     0,     0,    22,     0,     0,
                   1258:        0,     0,     0,     0,     0,    23,    24,    25,    26,    27,
                   1259:       28,     0,   119,     0,    29,    30,    31,     0,     0,     0,
                   1260:       32,    33,    57,   108,   350,    58,     0,    35,    36,    37,
                   1261:        0,     0,     0,   109,     0,     0,     0,     0,     0,     0,
                   1262:        0,     0,     0,     0,     0,   110,   111,     0,   112,   113,
                   1263:      114,   115,   116,   117,   118,    14,    15,     0,    16,     0,
                   1264:        0,     0,     0,     0,     0,    18,    19,     0,    20,     0,
                   1265:       21,     0,     0,     0,     0,     0,     0,     0,     0,     0,
                   1266:        0,     0,     0,     0,     0,     0,     0,     0,    22,     0,
                   1267:        0,     0,     0,     0,     0,     0,    23,    24,    25,    26,
                   1268:       27,    28,     0,   119,     0,    29,    30,    31,     0,     0,
                   1269:        0,    32,    33,    57,   108,     0,    58,   359,    35,    36,
                   1270:       37,     0,     0,     0,   109,     0,     0,     0,     0,     0,
                   1271:        0,     0,     0,     0,     0,     0,   110,   111,     0,   112,
                   1272:      113,   114,   115,   116,   117,   118,    14,    15,     0,    16,
                   1273:        0,     0,     0,     0,     0,     0,    18,    19,     0,    20,
                   1274:        0,    21,     0,     0,     0,     0,     0,     0,     0,     0,
                   1275:        0,     0,     0,     0,     0,     0,     0,     0,     0,    22,
                   1276:        0,     0,     0,     0,     0,     0,     0,    23,    24,    25,
                   1277:       26,    27,    28,     0,   119,     0,    29,    30,    31,     0,
                   1278:        0,     0,    32,    33,    57,   108,     0,    58,     0,    35,
                   1279:       36,    37,     0,     0,     0,   109,     0,     0,     0,     0,
                   1280:        0,     0,     0,     0,     0,     0,     0,   110,   111,     0,
                   1281:      112,   113,   114,   115,   116,   117,   118,    14,    15,     0,
                   1282:       16,     0,     0,     0,     0,     0,     0,    18,    19,     0,
                   1283:       20,     0,    21,     0,     0,     0,     0,     0,     0,     0,
                   1284:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
                   1285:       22,     0,     0,     0,     0,     0,     0,     0,    23,    24,
                   1286:       25,    26,    27,    28,     0,   119,     0,    29,    30,    31,
                   1287:        0,     0,     0,    32,    33,    57,   108,     0,    58,     0,
                   1288:       35,    36,    37,     0,     0,     0,   109,     0,     0,     0,
                   1289:        0,     0,     0,     0,     0,     0,     0,     0,   110,     0,
                   1290:        0,   112,   113,   114,   115,   116,   117,   118,    14,    15,
                   1291:        0,    16,     0,     0,     0,     0,     0,     0,    18,    19,
                   1292:        0,    20,     0,    21,     0,     0,     0,     0,     0,     0,
                   1293:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
                   1294:        0,    22,     0,     0,     0,     0,     0,     0,     0,    23,
                   1295:       24,    25,    26,    27,    28,    57,   108,     0,    29,    30,
                   1296:       31,     0,     0,     0,    32,    33,   109,     0,     0,    58,
                   1297:        0,    35,    36,    37,     0,     0,     0,     0,     0,     0,
                   1298:        0,   112,   113,   114,   115,   116,   117,   118,    14,    15,
                   1299:        0,    16,     0,     0,     0,     0,     0,     0,    18,    19,
                   1300:        0,    20,     0,    21,     0,     0,     0,     0,     0,     0,
                   1301:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
                   1302:        0,    22,     0,     0,     0,     0,     0,     0,     0,    23,
                   1303:       24,    25,    26,    27,    28,    57,   -32,     0,    29,    30,
                   1304:       31,     0,     0,     0,    32,    33,   -32,     0,     0,    58,
                   1305:        0,    35,    36,    37,     0,     0,     0,     0,     0,     0,
                   1306:        0,   -32,   -32,   -32,   -32,   -32,   -32,   -32,    14,    15,
                   1307:        0,    16,     0,     0,     0,     0,     0,     0,    18,    19,
                   1308:        0,    20,     0,    21,     0,     0,     0,     0,     0,     0,
                   1309:        0,     0,     0,     0,    57,     0,     0,     0,     0,     0,
                   1310:        0,    22,     0,     0,     0,   251,     0,     0,     0,    23,
                   1311:       24,    25,    26,    27,    28,     0,     0,   110,   111,    30,
                   1312:       31,     0,     0,     0,    32,    33,   252,    14,    15,    58,
                   1313:       16,    35,    36,    37,     0,     0,     0,    18,    19,     0,
                   1314:       20,     0,    21,     0,     0,     0,     0,     0,     0,     0,
                   1315:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
                   1316:       22,     0,     0,    57,     0,     0,     0,     0,    23,    24,
                   1317:       25,    26,    27,    28,   251,   253,   326,    29,    30,    31,
                   1318:        0,     0,     0,    32,    33,     0,   110,   111,    58,     0,
                   1319:       35,    36,    37,     0,     0,   252,    14,    15,     0,    16,
                   1320:        0,     0,     0,     0,     0,     0,    18,    19,     0,    20,
                   1321:        0,    21,     0,     0,     0,     0,     0,     0,     0,     0,
                   1322:        0,     0,    57,     0,     0,     0,     0,     0,     0,    22,
                   1323:        0,     0,     0,   251,     0,     0,     0,    23,    24,    25,
                   1324:       26,    27,    28,     0,   253,   110,    29,    30,    31,     0,
                   1325:        0,     0,    32,    33,   252,    14,    15,    58,    16,    35,
                   1326:       36,    37,     0,     0,     0,    18,    19,     0,    20,     0,
                   1327:       21,     0,     0,     0,     0,     0,     0,     0,     0,     0,
                   1328:        0,    12,     0,     0,    13,   142,     0,     0,    22,     0,
                   1329:        0,     0,     0,     0,     0,     0,    23,    24,    25,    26,
                   1330:       27,    28,     0,     0,     0,    29,    30,    31,     0,     0,
                   1331:        0,    32,    33,     0,    14,    15,    58,    16,    35,    36,
                   1332:       37,     0,     0,     0,    18,    19,     0,    20,     0,    21,
                   1333:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
                   1334:       12,     0,     0,    13,   150,     0,     0,    22,     0,     0,
                   1335:        0,     0,     0,     0,     0,    23,    24,    25,    26,    27,
                   1336:       28,     0,     0,     0,    29,    30,    31,     0,     0,     0,
                   1337:       32,    33,     0,    14,    15,    34,    16,    35,    36,    37,
                   1338:        0,     0,     0,    18,    19,     0,    20,     0,    21,     0,
                   1339:        0,     0,     0,     0,     0,     0,     0,     0,     0,    57,
                   1340:        0,     0,     0,     0,     0,     0,    22,     0,     0,     0,
                   1341:      251,     0,     0,     0,    23,    24,    25,    26,    27,    28,
                   1342:        0,     0,     0,    29,    30,    31,     0,     0,     0,    32,
                   1343:       33,   252,    14,    15,    34,    16,    35,    36,    37,     0,
                   1344:        0,     0,    18,    19,     0,    20,     0,    21,     0,     0,
                   1345:        0,     0,     0,     0,     0,     0,     0,     0,    12,     0,
                   1346:        0,    13,     0,     0,     0,    22,     0,     0,     0,     0,
                   1347:        0,     0,     0,    23,    24,    25,    26,    27,    28,     0,
                   1348:        0,     0,    29,    30,    31,     0,     0,     0,    32,    33,
                   1349:        0,    14,    15,    58,    16,    35,    36,    37,     0,     0,
                   1350:        0,    18,    19,     0,    20,     0,    21,     0,     0,     0,
                   1351:        0,     0,     0,     0,     0,     0,     0,    57,     0,     0,
                   1352:       13,     0,     0,     0,    22,     0,     0,     0,     0,     0,
                   1353:        0,     0,    23,    24,    25,    26,    27,    28,     0,     0,
                   1354:        0,    29,    30,    31,     0,     0,     0,    32,    33,     0,
                   1355:       14,    15,    34,    16,    35,    36,    37,     0,     0,     0,
                   1356:       18,    19,     0,    20,     0,    21,     0,     0,     0,     0,
                   1357:        0,     0,     0,     0,     0,     0,   177,     0,     0,    13,
                   1358:        0,     0,     0,    22,     0,     0,     0,     0,     0,     0,
                   1359:        0,    23,    24,    25,    26,    27,    28,     0,     0,     0,
                   1360:       29,    30,    31,     0,     0,     0,    32,    33,     0,    14,
                   1361:       15,    34,    16,    35,    36,    37,     0,     0,     0,    18,
                   1362:       19,     0,    20,     0,    21,     0,     0,     0,     0,     0,
                   1363:        0,     0,     0,     0,     0,    57,     0,     0,     0,     0,
                   1364:        0,     0,    22,     0,     0,     0,     0,     0,     0,     0,
                   1365:       23,    24,    25,    26,    27,    28,     0,     0,     0,    29,
                   1366:       30,    31,     0,     0,     0,    32,    33,     0,    14,    15,
                   1367:       34,    16,    35,    36,    37,     0,     0,     0,    18,    19,
                   1368:        0,    20,     0,    21,     0,     0,     0,     0,     0,     0,
                   1369:        0,     0,   208,     0,   292,     0,     0,    13,     0,     0,
                   1370:        0,    22,     0,     0,     0,     0,     0,     0,     0,    23,
                   1371:       24,    25,    26,    27,    28,     0,     0,     0,    29,    30,
                   1372:       31,     0,     0,     0,    32,    33,     0,    14,    15,    58,
                   1373:       16,    35,    36,    37,     0,     0,     0,    18,    19,     0,
                   1374:       20,     0,    21,     0,     0,     0,     0,     0,     0,     0,
                   1375:        0,     0,     0,    57,     0,     0,     0,     0,     0,     0,
                   1376:       22,     0,     0,     0,   -32,     0,     0,     0,    23,    24,
                   1377:       25,    26,    27,    28,     0,     0,     0,    29,    30,    31,
                   1378:        0,     0,     0,    32,    33,   -32,    14,    15,    34,    16,
                   1379:       35,    36,    37,     0,     0,     0,    18,    19,     0,    20,
                   1380:        0,    21,     0,     0,     0,     0,     0,     0,     0,     0,
                   1381:        0,     0,    57,     0,     0,     0,     0,     0,     0,    22,
                   1382:        0,     0,     0,     0,     0,     0,     0,    23,    24,    25,
                   1383:       26,    27,    28,     0,     0,     0,     0,    30,    31,     0,
                   1384:        0,     0,    32,    33,     0,    14,    15,    58,    16,    35,
                   1385:       36,    37,     0,     0,     0,    18,    19,     0,    20,     0,
                   1386:       21,     0,     0,     0,     0,     0,     0,     0,     0,     0,
                   1387:        0,     0,     0,     0,     0,     0,     0,     0,    22,     0,
                   1388:        0,     0,     0,     0,     0,     0,    23,    24,    25,    26,
                   1389:       27,    28,     0,     0,     0,    29,    30,    31,     0,     0,
                   1390:        0,    32,    33,     0,     0,     0,    58,     0,    35,    36,
                   1391:       37
                   1392: };
                   1393: 
                   1394: static const yytype_int16 yycheck[] =
                   1395: {
                   1396:       16,    81,    34,   177,   166,    45,   159,    18,   242,    84,
                   1397:      244,    15,    45,    29,    10,   336,    32,    33,    34,    35,
                   1398:       36,    37,    66,    67,     5,     0,    42,    10,     9,    10,
                   1399:        9,    14,   178,    44,    69,    13,   357,    53,    51,    52,
                   1400:       19,    10,    58,   118,    97,    11,    86,    87,    88,   109,
                   1401:      103,    12,    68,    86,    83,    88,    12,    86,    39,    37,
                   1402:       89,    90,    40,   123,    93,    10,    10,    69,   100,    14,
                   1403:      110,     9,   101,   108,   109,    12,    45,     9,    16,   159,
                   1404:       92,   134,   135,    99,   100,    98,    12,    19,   322,   133,
                   1405:       86,   166,    10,   106,    18,   178,    14,   101,   102,   103,
                   1406:      104,    45,    86,   107,    12,    89,   108,   109,   124,   125,
                   1407:      126,   127,   128,   129,    12,   349,    10,    86,   292,    88,
                   1408:       14,   174,     9,   176,    11,    42,   107,   361,   144,   145,
                   1409:      283,   147,   148,     9,   187,   164,   189,   153,   154,   155,
                   1410:       16,   170,    86,    87,    88,    12,   221,   293,   164,     9,
                   1411:      296,   297,   298,   299,   170,    12,    16,   303,     9,   234,
                   1412:      108,   109,   178,     9,     9,    16,   110,   320,   228,   229,
                   1413:       16,    16,    12,   107,   336,   191,   192,   252,   194,   195,
                   1414:      196,   197,   198,   199,    15,   201,    10,   203,    10,   205,
                   1415:      206,   251,   208,   237,   247,   357,   342,   350,     9,   215,
                   1416:       12,     9,    12,   283,   220,    16,   222,   188,    16,   284,
                   1417:      293,    12,    95,   296,   297,   298,   299,    44,    15,   251,
                   1418:      303,   253,   254,   255,    86,   257,   242,    10,   244,   261,
                   1419:       18,    79,     9,    14,    10,   251,    10,   253,   254,   255,
                   1420:      320,   257,   258,   259,   260,   261,    16,    16,    44,   324,
                   1421:      263,   304,    99,    53,    54,    16,   272,    12,   318,   342,
                   1422:      276,    41,   278,    16,   280,   251,    16,   253,   254,   255,
                   1423:      350,   257,   103,   104,    16,   261,   107,   293,   107,   105,
                   1424:      296,   297,   298,   299,    -1,    16,    -1,   303,    -1,   305,
                   1425:      306,   307,   345,    -1,   326,    -1,    -1,    42,   351,    -1,
                   1426:       45,    32,    33,    34,    -1,    -1,    37,   360,    -1,    -1,
                   1427:      326,    42,   365,   329,    -1,   331,    -1,   333,   334,   332,
                   1428:       -1,   337,    53,    -1,    -1,    -1,   342,    58,    -1,   310,
                   1429:      359,    -1,    -1,    -1,    -1,    -1,   352,    68,    -1,    -1,
                   1430:      326,    86,    87,    88,    -1,    -1,    -1,   147,   148,    -1,
                   1431:       -1,    -1,    -1,    -1,   154,   155,    -1,    -1,    -1,    -1,
                   1432:       -1,    -1,    -1,    -1,    -1,   110,    -1,    -1,    99,   100,
                   1433:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   179,
                   1434:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1435:       -1,    -1,    -1,   124,   125,   126,   127,   128,   129,    -1,
                   1436:       -1,    -1,    -1,    -1,    -1,    -1,   206,   207,    -1,    -1,
                   1437:       -1,    -1,    -1,   144,   145,    -1,   147,   148,    -1,    -1,
                   1438:       -1,    -1,   153,   154,   155,    -1,    -1,   227,    -1,    -1,
                   1439:       -1,    -1,    -1,   164,    -1,    -1,    -1,    -1,    -1,   170,
                   1440:       -1,    -1,    -1,    -1,    -1,    -1,    -1,   178,    -1,    -1,
                   1441:      250,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1442:       -1,   192,    -1,   194,   195,   196,   197,   198,   199,    -1,
                   1443:      201,    -1,   203,    -1,   205,   206,    -1,   208,    -1,    -1,
                   1444:      280,   281,    -1,    -1,   215,    -1,    -1,    -1,    -1,   220,
                   1445:       -1,   222,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1446:       -1,    -1,    -1,    -1,    -1,    -1,   306,   307,    -1,    -1,
                   1447:       -1,   242,    -1,   244,    -1,    -1,    -1,    -1,    -1,    -1,
                   1448:      251,    -1,   253,   254,   255,   325,   257,   258,   259,   260,
                   1449:      261,     5,    -1,    -1,    -1,    -1,    -1,    -1,    12,    -1,
                   1450:       -1,   272,    -1,    -1,    -1,   276,    -1,   278,    -1,   280,
                   1451:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1452:       -1,    -1,   293,    -1,    -1,   296,   297,   298,   299,    -1,
                   1453:       -1,    -1,   303,    -1,   305,   306,   307,    -1,    -1,    -1,
                   1454:       -1,    -1,    56,    57,    -1,    -1,    -1,    -1,    -1,    -1,
                   1455:       64,    65,    66,    67,    -1,   326,    70,    71,    -1,    -1,
                   1456:       -1,    -1,   333,   334,    -1,    -1,   337,    -1,    -1,    -1,
                   1457:       -1,   342,    86,    -1,    -1,    -1,    -1,    -1,    -1,    93,
                   1458:       -1,   352,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1459:       -1,   105,    -1,   107,    -1,   109,    -1,    -1,   112,   113,
                   1460:      114,   115,   116,   117,    -1,   119,   120,   121,    -1,   123,
                   1461:       -1,    -1,    -1,    -1,    -1,    -1,   130,    -1,    -1,   133,
                   1462:       -1,    -1,    -1,    -1,   138,    -1,   140,    -1,    -1,    -1,
                   1463:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1464:        0,     1,    -1,    -1,    -1,    -1,    -1,     7,     8,    -1,
                   1465:       10,    11,    12,   167,    14,    15,    -1,    -1,   172,    -1,
                   1466:       -1,    -1,    -1,   177,    -1,    -1,    -1,    -1,    -1,    -1,
                   1467:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1468:       -1,    -1,    -1,    -1,    -1,    45,    46,    -1,    48,    -1,
                   1469:       -1,    -1,    -1,    -1,    54,    55,    56,    -1,    58,    -1,
                   1470:       60,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1471:       -1,   225,    -1,    -1,   228,   229,    -1,    -1,    78,   233,
                   1472:       -1,    -1,    -1,   237,    -1,    -1,    86,    87,    88,    89,
                   1473:       90,    91,    -1,    -1,    -1,    95,    96,    97,    -1,    -1,
                   1474:       -1,   101,   102,    -1,    -1,    -1,   106,    -1,   108,   109,
                   1475:      110,    -1,   266,   267,   268,    -1,    -1,    -1,    -1,    -1,
                   1476:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1477:       -1,    -1,     1,    -1,    -1,    -1,    -1,    -1,   292,    -1,
                   1478:       -1,    10,    11,    12,    -1,    14,    15,    -1,    -1,    -1,
                   1479:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1480:       -1,    -1,   316,    -1,   318,    -1,    -1,   321,    -1,    -1,
                   1481:       -1,    -1,    -1,    -1,    -1,    -1,    45,    46,    47,    48,
                   1482:       49,    50,    51,    52,    53,   339,    55,    56,    57,    58,
                   1483:       -1,    60,    61,    62,    -1,    -1,    -1,    -1,    -1,    -1,
                   1484:        1,    -1,    -1,    -1,    -1,    -1,    -1,    76,    77,    78,
                   1485:       11,    12,    -1,    14,    15,    -1,    17,    86,    87,    88,
                   1486:       89,    90,    91,    -1,    -1,    -1,    95,    96,    97,    98,
                   1487:       99,    -1,   101,   102,    -1,    -1,    -1,   106,    -1,   108,
                   1488:      109,   110,    -1,    -1,    45,    46,    47,    48,    49,    50,
                   1489:       51,    52,    53,    -1,    55,    56,    57,    58,    -1,    60,
                   1490:       61,    62,    -1,    -1,    -1,    -1,    -1,    -1,     1,    -1,
                   1491:       -1,    -1,    -1,    -1,    -1,    76,    77,    78,    11,    12,
                   1492:       -1,    14,    15,    -1,    17,    86,    87,    88,    89,    90,
                   1493:       91,    -1,    -1,    -1,    95,    96,    97,    98,    99,    -1,
                   1494:      101,   102,    -1,    -1,    -1,   106,    -1,   108,   109,   110,
                   1495:       -1,    -1,    45,    46,    47,    48,    49,    50,    51,    52,
                   1496:       53,    -1,    55,    56,    57,    58,    -1,    60,    61,    62,
                   1497:       -1,    -1,    -1,    -1,    -1,    -1,     1,    -1,    -1,    -1,
                   1498:       -1,    -1,    -1,    76,    77,    78,    11,    12,    -1,    14,
                   1499:       15,    -1,    17,    86,    87,    88,    89,    90,    91,    -1,
                   1500:       -1,    -1,    95,    96,    97,    98,    99,    -1,   101,   102,
                   1501:       -1,    -1,    -1,   106,    -1,   108,   109,   110,    -1,    -1,
                   1502:       45,    46,    47,    48,    49,    50,    51,    52,    53,    -1,
                   1503:       55,    56,    57,    58,    -1,    60,    61,    62,    -1,    -1,
                   1504:       -1,    -1,    -1,    -1,     1,    -1,    -1,    -1,    -1,    -1,
                   1505:       -1,    76,    77,    78,    11,    12,    -1,    14,    15,    -1,
                   1506:       17,    86,    87,    88,    89,    90,    91,    -1,    -1,    -1,
                   1507:       95,    96,    97,    98,    99,    -1,   101,   102,    -1,    -1,
                   1508:       -1,   106,    -1,   108,   109,   110,    -1,    -1,    45,    46,
                   1509:       47,    48,    49,    50,    51,    52,    53,    -1,    55,    56,
                   1510:       57,    58,    -1,    60,    61,    62,    -1,    -1,    -1,    -1,
                   1511:       -1,    -1,     1,    -1,    -1,    -1,    -1,    -1,    -1,    76,
                   1512:       77,    78,    11,    12,    -1,    14,    15,    -1,    17,    86,
                   1513:       87,    88,    89,    90,    91,    -1,    -1,    -1,    95,    96,
                   1514:       97,    98,    99,    -1,   101,   102,    -1,    -1,    -1,   106,
                   1515:       -1,   108,   109,   110,    -1,    -1,    45,    46,    47,    48,
                   1516:       49,    50,    51,    52,    53,    -1,    55,    56,    57,    58,
                   1517:       -1,    60,    61,    62,    -1,    -1,    -1,    -1,    -1,    -1,
                   1518:       -1,     1,    -1,    -1,    -1,    -1,    -1,    76,    77,    78,
                   1519:       10,    11,    12,    -1,    14,    15,    -1,    86,    87,    88,
                   1520:       89,    90,    91,    -1,    -1,    -1,    95,    96,    97,    98,
                   1521:       99,    -1,   101,   102,    -1,    -1,    -1,   106,    -1,   108,
                   1522:      109,   110,    -1,    -1,    -1,    45,    46,    47,    48,    49,
                   1523:       50,    51,    52,    53,    -1,    55,    56,    57,    58,    -1,
                   1524:       60,    61,    62,    -1,    -1,    -1,    -1,    -1,    -1,     1,
                   1525:       -1,    -1,    -1,    -1,    -1,    -1,    76,    77,    78,    11,
                   1526:       12,    -1,    14,    15,    -1,    17,    86,    87,    88,    89,
                   1527:       90,    91,    -1,    -1,    -1,    95,    96,    97,    98,    99,
                   1528:       -1,   101,   102,    -1,    -1,    -1,   106,    -1,   108,   109,
                   1529:      110,    -1,    -1,    45,    46,    47,    48,    49,    50,    51,
                   1530:       52,    53,    -1,    55,    56,    57,    58,    -1,    60,    61,
                   1531:       62,    -1,    -1,    -1,    -1,    -1,    -1,     1,    -1,    -1,
                   1532:       -1,    -1,    -1,    -1,    76,    77,    78,    11,    12,    -1,
                   1533:       14,    15,    -1,    17,    86,    87,    88,    89,    90,    91,
                   1534:       -1,    -1,    -1,    95,    96,    97,    98,    99,    -1,   101,
                   1535:      102,    -1,    -1,    -1,   106,    -1,   108,   109,   110,    -1,
                   1536:       -1,    45,    46,    47,    48,    49,    50,    51,    52,    53,
                   1537:       -1,    55,    56,    57,    58,    -1,    60,    61,    62,    -1,
                   1538:       -1,    -1,    -1,    -1,    -1,     1,    -1,    -1,    -1,    -1,
                   1539:       -1,    -1,    76,    77,    78,    11,    12,    -1,    14,    15,
                   1540:       -1,    -1,    86,    87,    88,    89,    90,    91,    -1,    -1,
                   1541:       -1,    95,    96,    97,    98,    99,    -1,   101,   102,    -1,
                   1542:       -1,    -1,   106,    -1,   108,   109,   110,    -1,    -1,    45,
                   1543:       46,    47,    48,    49,    50,    51,    52,    53,    -1,    55,
                   1544:       56,    57,    58,    -1,    60,    61,    62,    -1,    -1,    -1,
                   1545:       -1,    -1,     1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1546:       76,    77,    78,    12,    -1,    14,    15,    -1,    -1,    -1,
                   1547:       86,    87,    88,    89,    90,    91,    -1,    -1,    -1,    95,
                   1548:       96,    97,    98,    99,    -1,   101,   102,    -1,    -1,    -1,
                   1549:      106,    -1,   108,   109,   110,    -1,    45,    46,    -1,    48,
                   1550:       -1,    50,    -1,    -1,    -1,    -1,    55,    56,    -1,    58,
                   1551:       -1,    60,    -1,    -1,    -1,    -1,    -1,    -1,    -1,     1,
                   1552:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    76,    77,    78,
                   1553:       12,    -1,    -1,    15,    16,    -1,    -1,    86,    87,    88,
                   1554:       89,    90,    91,    -1,    -1,    -1,    95,    96,    97,    -1,
                   1555:        7,     8,   101,   102,    11,    12,    -1,   106,    15,   108,
                   1556:      109,   110,    -1,    45,    46,    -1,    48,    -1,    50,    -1,
                   1557:       -1,    -1,    -1,    55,    56,    -1,    58,    -1,    60,    -1,
                   1558:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    45,    46,
                   1559:       -1,    48,    -1,    -1,    76,    77,    78,    54,    55,    56,
                   1560:       -1,    58,    -1,    60,    86,    87,    88,    89,    90,    91,
                   1561:       -1,    -1,    -1,    95,    96,    97,    -1,    -1,    -1,   101,
                   1562:      102,    78,    -1,    -1,   106,    -1,   108,   109,   110,    86,
                   1563:       87,    88,    89,    90,    91,    -1,    -1,    -1,    95,    96,
                   1564:       97,    -1,    -1,     9,   101,   102,    12,    13,    -1,   106,
                   1565:       16,   108,   109,   110,    -1,    -1,    -1,    23,    -1,    -1,
                   1566:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    35,
                   1567:       36,    -1,    38,    39,    40,    41,    42,    43,    44,    45,
                   1568:       46,    -1,    48,    -1,    -1,    -1,    -1,    -1,    -1,    55,
                   1569:       56,    -1,    58,    -1,    60,    -1,    -1,    -1,    -1,    -1,
                   1570:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1571:       -1,    -1,    78,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1572:       86,    87,    88,    89,    90,    91,    -1,    93,    -1,    95,
                   1573:       96,    97,    -1,    -1,     9,   101,   102,    12,    13,    -1,
                   1574:      106,    16,   108,   109,   110,    -1,    -1,    -1,    23,    -1,
                   1575:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1576:       35,    36,    -1,    38,    39,    40,    41,    42,    43,    44,
                   1577:       45,    46,    -1,    48,    -1,    -1,    -1,    -1,    -1,    -1,
                   1578:       55,    56,    -1,    58,    -1,    60,    -1,    -1,    -1,    -1,
                   1579:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1580:       -1,    -1,    -1,    78,    -1,    -1,    -1,    -1,    -1,    -1,
                   1581:       -1,    86,    87,    88,    89,    90,    91,    -1,    93,    -1,
                   1582:       95,    96,    97,    -1,    -1,     9,   101,   102,    12,    13,
                   1583:       -1,   106,    16,   108,   109,   110,    -1,    -1,    -1,    23,
                   1584:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1585:       -1,    35,    36,    -1,    38,    39,    40,    41,    42,    43,
                   1586:       44,    45,    46,    -1,    48,    -1,    -1,    -1,    -1,    -1,
                   1587:       -1,    55,    56,    -1,    58,    -1,    60,    -1,    -1,    -1,
                   1588:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1589:       -1,    -1,    -1,    -1,    78,    -1,    -1,    -1,    -1,    -1,
                   1590:       -1,    -1,    86,    87,    88,    89,    90,    91,    -1,    93,
                   1591:       -1,    95,    96,    97,    -1,    -1,     9,   101,   102,    12,
                   1592:       13,    -1,   106,    16,   108,   109,   110,    -1,    -1,    -1,
                   1593:       23,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1594:       -1,    -1,    35,    36,    -1,    38,    39,    40,    41,    42,
                   1595:       43,    44,    45,    46,    -1,    48,    -1,    -1,    -1,    -1,
                   1596:       -1,    -1,    55,    56,    -1,    58,    -1,    60,    -1,    -1,
                   1597:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1598:       -1,    -1,    -1,    -1,    -1,    78,    -1,    -1,    -1,    -1,
                   1599:       -1,    -1,    -1,    86,    87,    88,    89,    90,    91,    -1,
                   1600:       93,    -1,    95,    96,    97,    -1,    -1,     9,   101,   102,
                   1601:       12,    13,    -1,   106,    -1,   108,   109,   110,    -1,    -1,
                   1602:       -1,    23,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1603:       -1,    -1,    -1,    35,    36,    -1,    38,    39,    40,    41,
                   1604:       42,    43,    44,    45,    46,    -1,    48,    -1,    -1,    -1,
                   1605:       -1,    -1,    -1,    55,    56,    -1,    58,    -1,    60,    -1,
                   1606:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1607:       -1,    -1,    -1,    -1,    -1,    -1,    78,    -1,    -1,    -1,
                   1608:       -1,    -1,    -1,    -1,    86,    87,    88,    89,    90,    91,
                   1609:       -1,    93,    -1,    95,    96,    97,    -1,    -1,    -1,   101,
                   1610:      102,    -1,    -1,    -1,   106,    -1,   108,   109,   110,    10,
                   1611:       -1,    12,    13,    14,    -1,    -1,    -1,    -1,    -1,    -1,
                   1612:       -1,    -1,    23,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1613:       -1,    -1,    -1,    -1,    35,    36,    -1,    38,    39,    40,
                   1614:       41,    42,    43,    44,    45,    46,    -1,    48,    -1,    -1,
                   1615:       -1,    -1,    -1,    -1,    55,    56,    -1,    58,    -1,    60,
                   1616:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    10,    -1,
                   1617:       12,    -1,    14,    15,    -1,    -1,    -1,    78,    -1,    -1,
                   1618:       -1,    -1,    -1,    -1,    -1,    86,    87,    88,    89,    90,
                   1619:       91,    -1,    93,    -1,    95,    96,    97,    -1,    -1,    -1,
                   1620:      101,   102,    -1,    45,    46,   106,    48,   108,   109,   110,
                   1621:       -1,    -1,    -1,    55,    56,    -1,    58,    -1,    60,    -1,
                   1622:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    10,    -1,    12,
                   1623:       -1,    -1,    15,    -1,    -1,    -1,    78,    -1,    -1,    -1,
                   1624:       -1,    -1,    -1,    -1,    86,    87,    88,    89,    90,    91,
                   1625:       -1,    -1,    -1,    95,    96,    97,    -1,    -1,    -1,   101,
                   1626:      102,    -1,    45,    46,   106,    48,   108,   109,   110,    -1,
                   1627:       -1,    -1,    55,    56,    -1,    58,    -1,    60,    -1,    -1,
                   1628:       -1,    -1,    -1,    -1,    -1,    -1,    10,    -1,    12,    -1,
                   1629:       -1,    15,    -1,    -1,    -1,    78,    -1,    -1,    -1,    -1,
                   1630:       -1,    -1,    -1,    86,    87,    88,    89,    90,    91,    -1,
                   1631:       -1,    -1,    95,    96,    97,    -1,    -1,    -1,   101,   102,
                   1632:       -1,    45,    46,   106,    48,   108,   109,   110,    -1,    -1,
                   1633:       -1,    55,    56,    -1,    58,    -1,    60,    -1,    -1,    -1,
                   1634:       -1,    -1,    -1,    -1,    -1,    10,    -1,    12,    -1,    -1,
                   1635:       15,    -1,    -1,    -1,    78,    -1,    -1,    -1,    -1,    -1,
                   1636:       -1,    -1,    86,    87,    88,    89,    90,    91,    -1,    -1,
                   1637:       -1,    95,    96,    97,    -1,    -1,    -1,   101,   102,    -1,
                   1638:       45,    46,   106,    48,   108,   109,   110,    -1,    -1,    -1,
                   1639:       55,    56,    -1,    58,    -1,    60,    -1,    -1,    -1,    -1,
                   1640:       -1,    -1,    -1,    -1,    10,    -1,    12,    -1,    -1,    15,
                   1641:       -1,    -1,    -1,    78,    -1,    -1,    -1,    -1,    -1,    -1,
                   1642:       -1,    86,    87,    88,    89,    90,    91,    -1,    -1,    -1,
                   1643:       95,    96,    97,    -1,    -1,    -1,   101,   102,    -1,    45,
                   1644:       46,   106,    48,   108,   109,   110,    -1,    -1,    -1,    55,
                   1645:       56,    -1,    58,    -1,    60,    -1,    -1,    -1,    -1,    -1,
                   1646:       -1,    -1,    -1,    10,    -1,    12,    -1,    -1,    15,    -1,
                   1647:       -1,    -1,    78,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1648:       86,    87,    88,    89,    90,    91,    -1,    -1,    -1,    95,
                   1649:       96,    97,    -1,    -1,    -1,   101,   102,    -1,    45,    46,
                   1650:      106,    48,   108,   109,   110,    -1,    -1,    -1,    55,    56,
                   1651:       -1,    58,    -1,    60,    -1,    -1,    -1,    -1,    -1,    -1,
                   1652:       -1,    -1,    10,    -1,    12,    -1,    -1,    15,    -1,    -1,
                   1653:       -1,    78,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    86,
                   1654:       87,    88,    89,    90,    91,    -1,    -1,    -1,    95,    96,
                   1655:       97,    -1,    -1,    -1,   101,   102,    -1,    45,    46,   106,
                   1656:       48,   108,   109,   110,    -1,    -1,    -1,    55,    56,    -1,
                   1657:       58,    -1,    60,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1658:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1659:       78,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    86,    87,
                   1660:       88,    89,    90,    91,    -1,    -1,    -1,    95,    96,    97,
                   1661:       -1,    -1,    -1,   101,   102,    12,    13,    -1,   106,    16,
                   1662:      108,   109,   110,    -1,    -1,    -1,    23,    -1,    -1,    -1,
                   1663:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    35,    36,
                   1664:       -1,    38,    39,    40,    41,    42,    43,    44,    45,    46,
                   1665:       -1,    48,    -1,    -1,    -1,    -1,    -1,    -1,    55,    56,
                   1666:       -1,    58,    -1,    60,    -1,    -1,    -1,    -1,    -1,    -1,
                   1667:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1668:       -1,    78,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    86,
                   1669:       87,    88,    89,    90,    91,    -1,    93,    -1,    95,    96,
                   1670:       97,    -1,    -1,    -1,   101,   102,    12,    13,    -1,   106,
                   1671:       -1,   108,   109,   110,    -1,    -1,    -1,    23,    -1,    -1,
                   1672:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    35,
                   1673:       36,    -1,    38,    39,    40,    41,    42,    43,    44,    45,
                   1674:       46,    -1,    48,    -1,    -1,    -1,    -1,    -1,    -1,    55,
                   1675:       56,    -1,    58,    -1,    60,    -1,    -1,    -1,    -1,    -1,
                   1676:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1677:       -1,    -1,    78,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1678:       86,    87,    88,    89,    90,    91,    -1,    93,    94,    95,
                   1679:       96,    97,    -1,    -1,    -1,   101,   102,    12,    13,    -1,
                   1680:      106,    16,   108,   109,   110,    -1,    -1,    -1,    23,    -1,
                   1681:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1682:       35,    36,    -1,    38,    39,    40,    41,    42,    43,    44,
                   1683:       45,    46,    -1,    48,    -1,    -1,    -1,    -1,    -1,    -1,
                   1684:       55,    56,    -1,    58,    -1,    60,    -1,    -1,    -1,    -1,
                   1685:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1686:       -1,    -1,    -1,    78,    -1,    -1,    -1,    -1,    -1,    -1,
                   1687:       -1,    86,    87,    88,    89,    90,    91,    -1,    93,    -1,
                   1688:       95,    96,    97,    -1,    -1,    -1,   101,   102,    12,    13,
                   1689:       -1,   106,    16,   108,   109,   110,    -1,    -1,    -1,    23,
                   1690:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1691:       -1,    35,    36,    -1,    38,    39,    40,    41,    42,    43,
                   1692:       44,    45,    46,    -1,    48,    -1,    -1,    -1,    -1,    -1,
                   1693:       -1,    55,    56,    -1,    58,    -1,    60,    -1,    -1,    -1,
                   1694:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1695:       -1,    -1,    -1,    -1,    78,    -1,    -1,    -1,    -1,    -1,
                   1696:       -1,    -1,    86,    87,    88,    89,    90,    91,    -1,    93,
                   1697:       -1,    95,    96,    97,    -1,    -1,    -1,   101,   102,    12,
                   1698:       13,    -1,   106,    16,   108,   109,   110,    -1,    -1,    -1,
                   1699:       23,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1700:       -1,    -1,    35,    36,    -1,    38,    39,    40,    41,    42,
                   1701:       43,    44,    45,    46,    -1,    48,    -1,    -1,    -1,    -1,
                   1702:       -1,    -1,    55,    56,    -1,    58,    -1,    60,    -1,    -1,
                   1703:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1704:       -1,    -1,    -1,    -1,    -1,    78,    -1,    -1,    -1,    -1,
                   1705:       -1,    -1,    -1,    86,    87,    88,    89,    90,    91,    -1,
                   1706:       93,    -1,    95,    96,    97,    -1,    -1,    -1,   101,   102,
                   1707:       12,    13,    -1,   106,    16,   108,   109,   110,    -1,    -1,
                   1708:       -1,    23,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1709:       -1,    -1,    -1,    35,    36,    -1,    38,    39,    40,    41,
                   1710:       42,    43,    44,    45,    46,    -1,    48,    -1,    -1,    -1,
                   1711:       -1,    -1,    -1,    55,    56,    -1,    58,    -1,    60,    -1,
                   1712:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1713:       -1,    -1,    -1,    -1,    -1,    -1,    78,    -1,    -1,    -1,
                   1714:       -1,    -1,    -1,    -1,    86,    87,    88,    89,    90,    91,
                   1715:       -1,    93,    -1,    95,    96,    97,    -1,    -1,    -1,   101,
                   1716:      102,    12,    13,    -1,   106,    16,   108,   109,   110,    -1,
                   1717:       -1,    -1,    23,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1718:       -1,    -1,    -1,    -1,    35,    36,    -1,    38,    39,    40,
                   1719:       41,    42,    43,    44,    45,    46,    -1,    48,    -1,    -1,
                   1720:       -1,    -1,    -1,    -1,    55,    56,    -1,    58,    -1,    60,
                   1721:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1722:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    78,    -1,    -1,
                   1723:       -1,    -1,    -1,    -1,    -1,    86,    87,    88,    89,    90,
                   1724:       91,    -1,    93,    -1,    95,    96,    97,    -1,    -1,    -1,
                   1725:      101,   102,    12,    13,    14,   106,    -1,   108,   109,   110,
                   1726:       -1,    -1,    -1,    23,    -1,    -1,    -1,    -1,    -1,    -1,
                   1727:       -1,    -1,    -1,    -1,    -1,    35,    36,    -1,    38,    39,
                   1728:       40,    41,    42,    43,    44,    45,    46,    -1,    48,    -1,
                   1729:       -1,    -1,    -1,    -1,    -1,    55,    56,    -1,    58,    -1,
                   1730:       60,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1731:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    78,    -1,
                   1732:       -1,    -1,    -1,    -1,    -1,    -1,    86,    87,    88,    89,
                   1733:       90,    91,    -1,    93,    -1,    95,    96,    97,    -1,    -1,
                   1734:       -1,   101,   102,    12,    13,    -1,   106,    16,   108,   109,
                   1735:      110,    -1,    -1,    -1,    23,    -1,    -1,    -1,    -1,    -1,
                   1736:       -1,    -1,    -1,    -1,    -1,    -1,    35,    36,    -1,    38,
                   1737:       39,    40,    41,    42,    43,    44,    45,    46,    -1,    48,
                   1738:       -1,    -1,    -1,    -1,    -1,    -1,    55,    56,    -1,    58,
                   1739:       -1,    60,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1740:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    78,
                   1741:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    86,    87,    88,
                   1742:       89,    90,    91,    -1,    93,    -1,    95,    96,    97,    -1,
                   1743:       -1,    -1,   101,   102,    12,    13,    -1,   106,    -1,   108,
                   1744:      109,   110,    -1,    -1,    -1,    23,    -1,    -1,    -1,    -1,
                   1745:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    35,    36,    -1,
                   1746:       38,    39,    40,    41,    42,    43,    44,    45,    46,    -1,
                   1747:       48,    -1,    -1,    -1,    -1,    -1,    -1,    55,    56,    -1,
                   1748:       58,    -1,    60,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1749:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1750:       78,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    86,    87,
                   1751:       88,    89,    90,    91,    -1,    93,    -1,    95,    96,    97,
                   1752:       -1,    -1,    -1,   101,   102,    12,    13,    -1,   106,    -1,
                   1753:      108,   109,   110,    -1,    -1,    -1,    23,    -1,    -1,    -1,
                   1754:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    35,    -1,
                   1755:       -1,    38,    39,    40,    41,    42,    43,    44,    45,    46,
                   1756:       -1,    48,    -1,    -1,    -1,    -1,    -1,    -1,    55,    56,
                   1757:       -1,    58,    -1,    60,    -1,    -1,    -1,    -1,    -1,    -1,
                   1758:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1759:       -1,    78,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    86,
                   1760:       87,    88,    89,    90,    91,    12,    13,    -1,    95,    96,
                   1761:       97,    -1,    -1,    -1,   101,   102,    23,    -1,    -1,   106,
                   1762:       -1,   108,   109,   110,    -1,    -1,    -1,    -1,    -1,    -1,
                   1763:       -1,    38,    39,    40,    41,    42,    43,    44,    45,    46,
                   1764:       -1,    48,    -1,    -1,    -1,    -1,    -1,    -1,    55,    56,
                   1765:       -1,    58,    -1,    60,    -1,    -1,    -1,    -1,    -1,    -1,
                   1766:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1767:       -1,    78,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    86,
                   1768:       87,    88,    89,    90,    91,    12,    13,    -1,    95,    96,
                   1769:       97,    -1,    -1,    -1,   101,   102,    23,    -1,    -1,   106,
                   1770:       -1,   108,   109,   110,    -1,    -1,    -1,    -1,    -1,    -1,
                   1771:       -1,    38,    39,    40,    41,    42,    43,    44,    45,    46,
                   1772:       -1,    48,    -1,    -1,    -1,    -1,    -1,    -1,    55,    56,
                   1773:       -1,    58,    -1,    60,    -1,    -1,    -1,    -1,    -1,    -1,
                   1774:       -1,    -1,    -1,    -1,    12,    -1,    -1,    -1,    -1,    -1,
                   1775:       -1,    78,    -1,    -1,    -1,    23,    -1,    -1,    -1,    86,
                   1776:       87,    88,    89,    90,    91,    -1,    -1,    35,    36,    96,
                   1777:       97,    -1,    -1,    -1,   101,   102,    44,    45,    46,   106,
                   1778:       48,   108,   109,   110,    -1,    -1,    -1,    55,    56,    -1,
                   1779:       58,    -1,    60,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1780:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1781:       78,    -1,    -1,    12,    -1,    -1,    -1,    -1,    86,    87,
                   1782:       88,    89,    90,    91,    23,    93,    94,    95,    96,    97,
                   1783:       -1,    -1,    -1,   101,   102,    -1,    35,    36,   106,    -1,
                   1784:      108,   109,   110,    -1,    -1,    44,    45,    46,    -1,    48,
                   1785:       -1,    -1,    -1,    -1,    -1,    -1,    55,    56,    -1,    58,
                   1786:       -1,    60,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1787:       -1,    -1,    12,    -1,    -1,    -1,    -1,    -1,    -1,    78,
                   1788:       -1,    -1,    -1,    23,    -1,    -1,    -1,    86,    87,    88,
                   1789:       89,    90,    91,    -1,    93,    35,    95,    96,    97,    -1,
                   1790:       -1,    -1,   101,   102,    44,    45,    46,   106,    48,   108,
                   1791:      109,   110,    -1,    -1,    -1,    55,    56,    -1,    58,    -1,
                   1792:       60,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1793:       -1,    12,    -1,    -1,    15,    16,    -1,    -1,    78,    -1,
                   1794:       -1,    -1,    -1,    -1,    -1,    -1,    86,    87,    88,    89,
                   1795:       90,    91,    -1,    -1,    -1,    95,    96,    97,    -1,    -1,
                   1796:       -1,   101,   102,    -1,    45,    46,   106,    48,   108,   109,
                   1797:      110,    -1,    -1,    -1,    55,    56,    -1,    58,    -1,    60,
                   1798:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1799:       12,    -1,    -1,    15,    16,    -1,    -1,    78,    -1,    -1,
                   1800:       -1,    -1,    -1,    -1,    -1,    86,    87,    88,    89,    90,
                   1801:       91,    -1,    -1,    -1,    95,    96,    97,    -1,    -1,    -1,
                   1802:      101,   102,    -1,    45,    46,   106,    48,   108,   109,   110,
                   1803:       -1,    -1,    -1,    55,    56,    -1,    58,    -1,    60,    -1,
                   1804:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    12,
                   1805:       -1,    -1,    -1,    -1,    -1,    -1,    78,    -1,    -1,    -1,
                   1806:       23,    -1,    -1,    -1,    86,    87,    88,    89,    90,    91,
                   1807:       -1,    -1,    -1,    95,    96,    97,    -1,    -1,    -1,   101,
                   1808:      102,    44,    45,    46,   106,    48,   108,   109,   110,    -1,
                   1809:       -1,    -1,    55,    56,    -1,    58,    -1,    60,    -1,    -1,
                   1810:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    12,    -1,
                   1811:       -1,    15,    -1,    -1,    -1,    78,    -1,    -1,    -1,    -1,
                   1812:       -1,    -1,    -1,    86,    87,    88,    89,    90,    91,    -1,
                   1813:       -1,    -1,    95,    96,    97,    -1,    -1,    -1,   101,   102,
                   1814:       -1,    45,    46,   106,    48,   108,   109,   110,    -1,    -1,
                   1815:       -1,    55,    56,    -1,    58,    -1,    60,    -1,    -1,    -1,
                   1816:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    12,    -1,    -1,
                   1817:       15,    -1,    -1,    -1,    78,    -1,    -1,    -1,    -1,    -1,
                   1818:       -1,    -1,    86,    87,    88,    89,    90,    91,    -1,    -1,
                   1819:       -1,    95,    96,    97,    -1,    -1,    -1,   101,   102,    -1,
                   1820:       45,    46,   106,    48,   108,   109,   110,    -1,    -1,    -1,
                   1821:       55,    56,    -1,    58,    -1,    60,    -1,    -1,    -1,    -1,
                   1822:       -1,    -1,    -1,    -1,    -1,    -1,    12,    -1,    -1,    15,
                   1823:       -1,    -1,    -1,    78,    -1,    -1,    -1,    -1,    -1,    -1,
                   1824:       -1,    86,    87,    88,    89,    90,    91,    -1,    -1,    -1,
                   1825:       95,    96,    97,    -1,    -1,    -1,   101,   102,    -1,    45,
                   1826:       46,   106,    48,   108,   109,   110,    -1,    -1,    -1,    55,
                   1827:       56,    -1,    58,    -1,    60,    -1,    -1,    -1,    -1,    -1,
                   1828:       -1,    -1,    -1,    -1,    -1,    12,    -1,    -1,    -1,    -1,
                   1829:       -1,    -1,    78,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1830:       86,    87,    88,    89,    90,    91,    -1,    -1,    -1,    95,
                   1831:       96,    97,    -1,    -1,    -1,   101,   102,    -1,    45,    46,
                   1832:      106,    48,   108,   109,   110,    -1,    -1,    -1,    55,    56,
                   1833:       -1,    58,    -1,    60,    -1,    -1,    -1,    -1,    -1,    -1,
                   1834:       -1,    -1,    69,    -1,    12,    -1,    -1,    15,    -1,    -1,
                   1835:       -1,    78,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    86,
                   1836:       87,    88,    89,    90,    91,    -1,    -1,    -1,    95,    96,
                   1837:       97,    -1,    -1,    -1,   101,   102,    -1,    45,    46,   106,
                   1838:       48,   108,   109,   110,    -1,    -1,    -1,    55,    56,    -1,
                   1839:       58,    -1,    60,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1840:       -1,    -1,    -1,    12,    -1,    -1,    -1,    -1,    -1,    -1,
                   1841:       78,    -1,    -1,    -1,    23,    -1,    -1,    -1,    86,    87,
                   1842:       88,    89,    90,    91,    -1,    -1,    -1,    95,    96,    97,
                   1843:       -1,    -1,    -1,   101,   102,    44,    45,    46,   106,    48,
                   1844:      108,   109,   110,    -1,    -1,    -1,    55,    56,    -1,    58,
                   1845:       -1,    60,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1846:       -1,    -1,    12,    -1,    -1,    -1,    -1,    -1,    -1,    78,
                   1847:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    86,    87,    88,
                   1848:       89,    90,    91,    -1,    -1,    -1,    -1,    96,    97,    -1,
                   1849:       -1,    -1,   101,   102,    -1,    45,    46,   106,    48,   108,
                   1850:      109,   110,    -1,    -1,    -1,    55,    56,    -1,    58,    -1,
                   1851:       60,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
                   1852:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    78,    -1,
                   1853:       -1,    -1,    -1,    -1,    -1,    -1,    86,    87,    88,    89,
                   1854:       90,    91,    -1,    -1,    -1,    95,    96,    97,    -1,    -1,
                   1855:       -1,   101,   102,    -1,    -1,    -1,   106,    -1,   108,   109,
                   1856:      110
                   1857: };
                   1858: 
                   1859: /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
                   1860:    symbol of state STATE-NUM.  */
                   1861: static const yytype_uint8 yystos[] =
                   1862: {
                   1863:        0,     1,    10,    14,   113,   128,   130,   142,     0,     7,
                   1864:        8,    11,    12,    15,    45,    46,    48,    54,    55,    56,
                   1865:       58,    60,    78,    86,    87,    88,    89,    90,    91,    95,
                   1866:       96,    97,   101,   102,   106,   108,   109,   110,   125,   131,
                   1867:      132,   134,   137,   144,   145,   155,   156,   157,   159,    10,
                   1868:       14,   125,   125,   137,   138,   146,    12,    12,   106,   156,
                   1869:      157,    86,    89,   123,    12,    12,    12,    12,    42,   157,
                   1870:       12,    12,   156,   156,   144,   156,   157,   157,   156,     1,
                   1871:       10,    14,    47,    49,    50,    51,    52,    53,    57,    61,
                   1872:       62,    76,    77,    98,    99,   117,   119,   124,   125,   137,
                   1873:      141,   148,   150,   154,   160,     9,   125,   128,    13,    23,
                   1874:       35,    36,    38,    39,    40,    41,    42,    43,    44,    93,
                   1875:      114,   115,   156,    12,    15,   101,   102,   103,   104,   107,
                   1876:       69,   108,   109,    18,   154,   154,     9,    16,   116,    16,
                   1877:      116,    92,    16,   135,   137,   137,    12,   137,   137,   135,
                   1878:       16,   135,   156,    42,   137,   137,    10,   126,   127,    14,
                   1879:      126,   149,   149,   159,   137,   149,    12,    12,   149,   149,
                   1880:      137,   149,    12,    10,   151,   150,   154,    12,   136,   139,
                   1881:      140,   144,   156,   157,   149,    17,   150,   153,   131,   154,
                   1882:      132,    95,   137,   145,   137,   137,   137,   137,   137,   137,
                   1883:      159,   137,    10,   137,    10,   137,   137,   145,    69,   156,
                   1884:      156,   156,   156,   156,   156,   137,   135,    17,    17,    10,
                   1885:      137,    44,   137,    15,    16,   116,    86,   158,   116,   116,
                   1886:       16,    16,   156,   116,   116,    10,   127,    18,   149,   129,
                   1887:      148,   159,   137,   149,   137,   150,    79,   118,    17,   143,
                   1888:      138,    23,    44,    93,   114,   115,   156,   116,    13,    37,
                   1889:       40,    69,   150,   125,    17,   157,    94,   116,   116,   156,
                   1890:       19,   159,   137,    16,   116,   147,   137,   145,   137,   145,
                   1891:      137,   159,   135,    14,    44,   147,   147,   152,    10,   150,
                   1892:       10,    16,    12,   136,   145,   159,   136,   136,   136,   136,
                   1893:      156,   156,   156,   136,   154,   137,   137,   137,    86,    10,
                   1894:      133,    16,    16,    16,    16,    16,   116,    16,   116,    19,
                   1895:       14,   127,   159,    99,    44,   138,    94,    17,    16,   116,
                   1896:       16,   116,   125,   137,   137,   145,   127,   137,   147,    12,
                   1897:      159,    16,   136,   157,   157,   154,    16,    16,    16,   129,
                   1898:       14,   122,   137,    16,    16,    17,   147,   127,   150,    16,
                   1899:      121,   129,   149,   150,   147,   120,   150
                   1900: };
                   1901: 
                   1902: #define yyerrok        (yyerrstatus = 0)
                   1903: #define yyclearin  (yychar = YYEMPTY)
                   1904: #define YYEMPTY        (-2)
                   1905: #define YYEOF      0
                   1906: 
                   1907: #define YYACCEPT   goto yyacceptlab
                   1908: #define YYABORT        goto yyabortlab
                   1909: #define YYERROR        goto yyerrorlab
                   1910: 
                   1911: 
                   1912: /* Like YYERROR except do call yyerror.  This remains here temporarily
                   1913:    to ease the transition to the new meaning of YYERROR, for GCC.
                   1914:    Once GCC version 2 has supplanted version 1, this can go.  */
                   1915: 
                   1916: #define YYFAIL     goto yyerrlab
                   1917: 
                   1918: #define YYRECOVERING()  (!!yyerrstatus)
                   1919: 
                   1920: #define YYBACKUP(Token, Value)                 \
                   1921: do                             \
                   1922:   if (yychar == YYEMPTY && yylen == 1)             \
                   1923:     {                              \
                   1924:       yychar = (Token);                        \
                   1925:       yylval = (Value);                        \
                   1926:       yytoken = YYTRANSLATE (yychar);              \
                   1927:       YYPOPSTACK (1);                      \
                   1928:       goto yybackup;                       \
                   1929:     }                              \
                   1930:   else                             \
                   1931:     {                              \
                   1932:       yyerror (YY_("syntax error: cannot back up")); \
                   1933:       YYERROR;                         \
                   1934:     }                              \
                   1935: while (YYID (0))
                   1936: 
                   1937: 
                   1938: #define YYTERROR   1
                   1939: #define YYERRCODE  256
                   1940: 
                   1941: 
                   1942: /* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N].
                   1943:    If N is 0, then set CURRENT to the empty location which ends
                   1944:    the previous symbol: RHS[0] (always defined).  */
                   1945: 
                   1946: #define YYRHSLOC(Rhs, K) ((Rhs)[K])
                   1947: #ifndef YYLLOC_DEFAULT
                   1948: # define YYLLOC_DEFAULT(Current, Rhs, N)               \
                   1949:     do                                 \
                   1950:       if (YYID (N))                                                    \
                   1951:    {                               \
                   1952:      (Current).first_line   = YYRHSLOC (Rhs, 1).first_line;    \
                   1953:      (Current).first_column = YYRHSLOC (Rhs, 1).first_column;  \
                   1954:      (Current).last_line    = YYRHSLOC (Rhs, N).last_line;     \
                   1955:      (Current).last_column  = YYRHSLOC (Rhs, N).last_column;   \
                   1956:    }                               \
                   1957:       else                             \
                   1958:    {                               \
                   1959:      (Current).first_line   = (Current).last_line   =      \
                   1960:        YYRHSLOC (Rhs, 0).last_line;                \
                   1961:      (Current).first_column = (Current).last_column =      \
                   1962:        YYRHSLOC (Rhs, 0).last_column;              \
                   1963:    }                               \
                   1964:     while (YYID (0))
                   1965: #endif
                   1966: 
                   1967: 
                   1968: /* YY_LOCATION_PRINT -- Print the location on the stream.
                   1969:    This macro was not mandated originally: define only if we know
                   1970:    we won't break user code: when these are the locations we know.  */
                   1971: 
                   1972: #ifndef YY_LOCATION_PRINT
                   1973: # if YYLTYPE_IS_TRIVIAL
                   1974: #  define YY_LOCATION_PRINT(File, Loc)         \
                   1975:      fprintf (File, "%d.%d-%d.%d",         \
                   1976:          (Loc).first_line, (Loc).first_column, \
                   1977:          (Loc).last_line,  (Loc).last_column)
                   1978: # else
                   1979: #  define YY_LOCATION_PRINT(File, Loc) ((void) 0)
                   1980: # endif
                   1981: #endif
                   1982: 
                   1983: 
                   1984: /* YYLEX -- calling `yylex' with the right arguments.  */
                   1985: 
                   1986: #ifdef YYLEX_PARAM
                   1987: # define YYLEX yylex (YYLEX_PARAM)
                   1988: #else
                   1989: # define YYLEX yylex ()
                   1990: #endif
                   1991: 
                   1992: /* Enable debugging if requested.  */
                   1993: #if YYDEBUG
                   1994: 
                   1995: # ifndef YYFPRINTF
                   1996: #  include <stdio.h> /* INFRINGES ON USER NAME SPACE */
                   1997: #  define YYFPRINTF fprintf
                   1998: # endif
                   1999: 
                   2000: # define YYDPRINTF(Args)           \
                   2001: do {                       \
                   2002:   if (yydebug)                 \
                   2003:     YYFPRINTF Args;                \
                   2004: } while (YYID (0))
                   2005: 
                   2006: # define YY_SYMBOL_PRINT(Title, Type, Value, Location)           \
                   2007: do {                                     \
                   2008:   if (yydebug)                               \
                   2009:     {                                    \
                   2010:       YYFPRINTF (stderr, "%s ", Title);                      \
                   2011:       yy_symbol_print (stderr,                       \
                   2012:          Type, Value); \
                   2013:       YYFPRINTF (stderr, "\n");                          \
                   2014:     }                                    \
                   2015: } while (YYID (0))
                   2016: 
                   2017: 
                   2018: /*--------------------------------.
                   2019: | Print this symbol on YYOUTPUT.  |
                   2020: `--------------------------------*/
                   2021: 
                   2022: /*ARGSUSED*/
                   2023: #if (defined __STDC__ || defined __C99__FUNC__ \
                   2024:      || defined __cplusplus || defined _MSC_VER)
                   2025: static void
                   2026: yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep)
                   2027: #else
                   2028: static void
                   2029: yy_symbol_value_print (yyoutput, yytype, yyvaluep)
                   2030:     FILE *yyoutput;
                   2031:     int yytype;
                   2032:     YYSTYPE const * const yyvaluep;
                   2033: #endif
                   2034: {
                   2035:   if (!yyvaluep)
                   2036:     return;
                   2037: # ifdef YYPRINT
                   2038:   if (yytype < YYNTOKENS)
                   2039:     YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
                   2040: # else
                   2041:   YYUSE (yyoutput);
                   2042: # endif
                   2043:   switch (yytype)
                   2044:     {
                   2045:       default:
                   2046:    break;
                   2047:     }
                   2048: }
                   2049: 
                   2050: 
                   2051: /*--------------------------------.
                   2052: | Print this symbol on YYOUTPUT.  |
                   2053: `--------------------------------*/
                   2054: 
                   2055: #if (defined __STDC__ || defined __C99__FUNC__ \
                   2056:      || defined __cplusplus || defined _MSC_VER)
                   2057: static void
                   2058: yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep)
                   2059: #else
                   2060: static void
                   2061: yy_symbol_print (yyoutput, yytype, yyvaluep)
                   2062:     FILE *yyoutput;
                   2063:     int yytype;
                   2064:     YYSTYPE const * const yyvaluep;
                   2065: #endif
                   2066: {
                   2067:   if (yytype < YYNTOKENS)
                   2068:     YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
                   2069:   else
                   2070:     YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);
                   2071: 
                   2072:   yy_symbol_value_print (yyoutput, yytype, yyvaluep);
                   2073:   YYFPRINTF (yyoutput, ")");
                   2074: }
                   2075: 
                   2076: /*------------------------------------------------------------------.
                   2077: | yy_stack_print -- Print the state stack from its BOTTOM up to its |
                   2078: | TOP (included).                                                   |
                   2079: `------------------------------------------------------------------*/
                   2080: 
                   2081: #if (defined __STDC__ || defined __C99__FUNC__ \
                   2082:      || defined __cplusplus || defined _MSC_VER)
                   2083: static void
                   2084: yy_stack_print (yytype_int16 *bottom, yytype_int16 *top)
                   2085: #else
                   2086: static void
                   2087: yy_stack_print (bottom, top)
                   2088:     yytype_int16 *bottom;
                   2089:     yytype_int16 *top;
                   2090: #endif
                   2091: {
                   2092:   YYFPRINTF (stderr, "Stack now");
                   2093:   for (; bottom <= top; ++bottom)
                   2094:     YYFPRINTF (stderr, " %d", *bottom);
                   2095:   YYFPRINTF (stderr, "\n");
                   2096: }
                   2097: 
                   2098: # define YY_STACK_PRINT(Bottom, Top)               \
                   2099: do {                               \
                   2100:   if (yydebug)                         \
                   2101:     yy_stack_print ((Bottom), (Top));              \
                   2102: } while (YYID (0))
                   2103: 
                   2104: 
                   2105: /*------------------------------------------------.
                   2106: | Report that the YYRULE is going to be reduced.  |
                   2107: `------------------------------------------------*/
                   2108: 
                   2109: #if (defined __STDC__ || defined __C99__FUNC__ \
                   2110:      || defined __cplusplus || defined _MSC_VER)
                   2111: static void
                   2112: yy_reduce_print (YYSTYPE *yyvsp, int yyrule)
                   2113: #else
                   2114: static void
                   2115: yy_reduce_print (yyvsp, yyrule)
                   2116:     YYSTYPE *yyvsp;
                   2117:     int yyrule;
                   2118: #endif
                   2119: {
                   2120:   int yynrhs = yyr2[yyrule];
                   2121:   int yyi;
                   2122:   unsigned long int yylno = yyrline[yyrule];
                   2123:   YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n",
                   2124:         yyrule - 1, yylno);
                   2125:   /* The symbols being reduced.  */
                   2126:   for (yyi = 0; yyi < yynrhs; yyi++)
                   2127:     {
                   2128:       fprintf (stderr, "   $%d = ", yyi + 1);
                   2129:       yy_symbol_print (stderr, yyrhs[yyprhs[yyrule] + yyi],
                   2130:               &(yyvsp[(yyi + 1) - (yynrhs)])
                   2131:                           );
                   2132:       fprintf (stderr, "\n");
                   2133:     }
                   2134: }
                   2135: 
                   2136: # define YY_REDUCE_PRINT(Rule)     \
                   2137: do {                   \
                   2138:   if (yydebug)             \
                   2139:     yy_reduce_print (yyvsp, Rule); \
                   2140: } while (YYID (0))
                   2141: 
                   2142: /* Nonzero means print parse trace.  It is left uninitialized so that
                   2143:    multiple parsers can coexist.  */
                   2144: int yydebug;
                   2145: #else /* !YYDEBUG */
                   2146: # define YYDPRINTF(Args)
                   2147: # define YY_SYMBOL_PRINT(Title, Type, Value, Location)
                   2148: # define YY_STACK_PRINT(Bottom, Top)
                   2149: # define YY_REDUCE_PRINT(Rule)
                   2150: #endif /* !YYDEBUG */
                   2151: 
                   2152: 
                   2153: /* YYINITDEPTH -- initial size of the parser's stacks.  */
                   2154: #ifndef    YYINITDEPTH
                   2155: # define YYINITDEPTH 200
                   2156: #endif
                   2157: 
                   2158: /* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
                   2159:    if the built-in stack extension method is used).
                   2160: 
                   2161:    Do not make this value too large; the results are undefined if
                   2162:    YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
                   2163:    evaluated with infinite-precision integer arithmetic.  */
                   2164: 
                   2165: #ifndef YYMAXDEPTH
                   2166: # define YYMAXDEPTH 10000
                   2167: #endif
                   2168: 
                   2169: 
                   2170: 
                   2171: #if YYERROR_VERBOSE
                   2172: 
                   2173: # ifndef yystrlen
                   2174: #  if defined __GLIBC__ && defined _STRING_H
                   2175: #   define yystrlen strlen
                   2176: #  else
                   2177: /* Return the length of YYSTR.  */
                   2178: #if (defined __STDC__ || defined __C99__FUNC__ \
                   2179:      || defined __cplusplus || defined _MSC_VER)
                   2180: static YYSIZE_T
                   2181: yystrlen (const char *yystr)
                   2182: #else
                   2183: static YYSIZE_T
                   2184: yystrlen (yystr)
                   2185:     const char *yystr;
                   2186: #endif
                   2187: {
                   2188:   YYSIZE_T yylen;
                   2189:   for (yylen = 0; yystr[yylen]; yylen++)
                   2190:     continue;
                   2191:   return yylen;
                   2192: }
                   2193: #  endif
                   2194: # endif
                   2195: 
                   2196: # ifndef yystpcpy
                   2197: #  if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
                   2198: #   define yystpcpy stpcpy
                   2199: #  else
                   2200: /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
                   2201:    YYDEST.  */
                   2202: #if (defined __STDC__ || defined __C99__FUNC__ \
                   2203:      || defined __cplusplus || defined _MSC_VER)
                   2204: static char *
                   2205: yystpcpy (char *yydest, const char *yysrc)
                   2206: #else
                   2207: static char *
                   2208: yystpcpy (yydest, yysrc)
                   2209:     char *yydest;
                   2210:     const char *yysrc;
                   2211: #endif
                   2212: {
                   2213:   char *yyd = yydest;
                   2214:   const char *yys = yysrc;
                   2215: 
                   2216:   while ((*yyd++ = *yys++) != '\0')
                   2217:     continue;
                   2218: 
                   2219:   return yyd - 1;
                   2220: }
                   2221: #  endif
                   2222: # endif
                   2223: 
                   2224: # ifndef yytnamerr
                   2225: /* Copy to YYRES the contents of YYSTR after stripping away unnecessary
                   2226:    quotes and backslashes, so that it's suitable for yyerror.  The
                   2227:    heuristic is that double-quoting is unnecessary unless the string
                   2228:    contains an apostrophe, a comma, or backslash (other than
                   2229:    backslash-backslash).  YYSTR is taken from yytname.  If YYRES is
                   2230:    null, do not copy; instead, return the length of what the result
                   2231:    would have been.  */
                   2232: static YYSIZE_T
                   2233: yytnamerr (char *yyres, const char *yystr)
                   2234: {
                   2235:   if (*yystr == '"')
                   2236:     {
                   2237:       YYSIZE_T yyn = 0;
                   2238:       char const *yyp = yystr;
                   2239: 
                   2240:       for (;;)
                   2241:    switch (*++yyp)
                   2242:      {
                   2243:      case '\'':
                   2244:      case ',':
                   2245:        goto do_not_strip_quotes;
                   2246: 
                   2247:      case '\\':
                   2248:        if (*++yyp != '\\')
                   2249:          goto do_not_strip_quotes;
                   2250:        /* Fall through.  */
                   2251:      default:
                   2252:        if (yyres)
                   2253:          yyres[yyn] = *yyp;
                   2254:        yyn++;
                   2255:        break;
                   2256: 
                   2257:      case '"':
                   2258:        if (yyres)
                   2259:          yyres[yyn] = '\0';
                   2260:        return yyn;
                   2261:      }
                   2262:     do_not_strip_quotes: ;
                   2263:     }
                   2264: 
                   2265:   if (! yyres)
                   2266:     return yystrlen (yystr);
                   2267: 
                   2268:   return yystpcpy (yyres, yystr) - yyres;
                   2269: }
                   2270: # endif
                   2271: 
                   2272: /* Copy into YYRESULT an error message about the unexpected token
                   2273:    YYCHAR while in state YYSTATE.  Return the number of bytes copied,
                   2274:    including the terminating null byte.  If YYRESULT is null, do not
                   2275:    copy anything; just return the number of bytes that would be
                   2276:    copied.  As a special case, return 0 if an ordinary "syntax error"
                   2277:    message will do.  Return YYSIZE_MAXIMUM if overflow occurs during
                   2278:    size calculation.  */
                   2279: static YYSIZE_T
                   2280: yysyntax_error (char *yyresult, int yystate, int yychar)
                   2281: {
                   2282:   int yyn = yypact[yystate];
                   2283: 
                   2284:   if (! (YYPACT_NINF < yyn && yyn <= YYLAST))
                   2285:     return 0;
                   2286:   else
                   2287:     {
                   2288:       int yytype = YYTRANSLATE (yychar);
                   2289:       YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]);
                   2290:       YYSIZE_T yysize = yysize0;
                   2291:       YYSIZE_T yysize1;
                   2292:       int yysize_overflow = 0;
                   2293:       enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
                   2294:       char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
                   2295:       int yyx;
                   2296: 
                   2297: # if 0
                   2298:       /* This is so xgettext sees the translatable formats that are
                   2299:     constructed on the fly.  */
                   2300:       YY_("syntax error, unexpected %s");
                   2301:       YY_("syntax error, unexpected %s, expecting %s");
                   2302:       YY_("syntax error, unexpected %s, expecting %s or %s");
                   2303:       YY_("syntax error, unexpected %s, expecting %s or %s or %s");
                   2304:       YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s");
                   2305: # endif
                   2306:       char *yyfmt;
                   2307:       char const *yyf;
                   2308:       static char const yyunexpected[] = "syntax error, unexpected %s";
                   2309:       static char const yyexpecting[] = ", expecting %s";
                   2310:       static char const yyor[] = " or %s";
                   2311:       char yyformat[sizeof yyunexpected
                   2312:            + sizeof yyexpecting - 1
                   2313:            + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2)
                   2314:               * (sizeof yyor - 1))];
                   2315:       char const *yyprefix = yyexpecting;
                   2316: 
                   2317:       /* Start YYX at -YYN if negative to avoid negative indexes in
                   2318:     YYCHECK.  */
                   2319:       int yyxbegin = yyn < 0 ? -yyn : 0;
                   2320: 
                   2321:       /* Stay within bounds of both yycheck and yytname.  */
                   2322:       int yychecklim = YYLAST - yyn + 1;
                   2323:       int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
                   2324:       int yycount = 1;
                   2325: 
                   2326:       yyarg[0] = yytname[yytype];
                   2327:       yyfmt = yystpcpy (yyformat, yyunexpected);
                   2328: 
                   2329:       for (yyx = yyxbegin; yyx < yyxend; ++yyx)
                   2330:    if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
                   2331:      {
                   2332:        if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
                   2333:          {
                   2334:        yycount = 1;
                   2335:        yysize = yysize0;
                   2336:        yyformat[sizeof yyunexpected - 1] = '\0';
                   2337:        break;
                   2338:          }
                   2339:        yyarg[yycount++] = yytname[yyx];
                   2340:        yysize1 = yysize + yytnamerr (0, yytname[yyx]);
                   2341:        yysize_overflow |= (yysize1 < yysize);
                   2342:        yysize = yysize1;
                   2343:        yyfmt = yystpcpy (yyfmt, yyprefix);
                   2344:        yyprefix = yyor;
                   2345:      }
                   2346: 
                   2347:       yyf = YY_(yyformat);
                   2348:       yysize1 = yysize + yystrlen (yyf);
                   2349:       yysize_overflow |= (yysize1 < yysize);
                   2350:       yysize = yysize1;
                   2351: 
                   2352:       if (yysize_overflow)
                   2353:    return YYSIZE_MAXIMUM;
                   2354: 
                   2355:       if (yyresult)
                   2356:    {
                   2357:      /* Avoid sprintf, as that infringes on the user's name space.
                   2358:         Don't have undefined behavior even if the translation
                   2359:         produced a string with the wrong number of "%s"s.  */
                   2360:      char *yyp = yyresult;
                   2361:      int yyi = 0;
                   2362:      while ((*yyp = *yyf) != '\0')
                   2363:        {
                   2364:          if (*yyp == '%' && yyf[1] == 's' && yyi < yycount)
                   2365:        {
                   2366:          yyp += yytnamerr (yyp, yyarg[yyi++]);
                   2367:          yyf += 2;
                   2368:        }
                   2369:          else
                   2370:        {
                   2371:          yyp++;
                   2372:          yyf++;
                   2373:        }
                   2374:        }
                   2375:    }
                   2376:       return yysize;
                   2377:     }
                   2378: }
                   2379: #endif /* YYERROR_VERBOSE */
                   2380: 
                   2381: 
                   2382: /*-----------------------------------------------.
                   2383: | Release the memory associated to this symbol.  |
                   2384: `-----------------------------------------------*/
                   2385: 
                   2386: /*ARGSUSED*/
                   2387: #if (defined __STDC__ || defined __C99__FUNC__ \
                   2388:      || defined __cplusplus || defined _MSC_VER)
                   2389: static void
                   2390: yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep)
                   2391: #else
                   2392: static void
                   2393: yydestruct (yymsg, yytype, yyvaluep)
                   2394:     const char *yymsg;
                   2395:     int yytype;
                   2396:     YYSTYPE *yyvaluep;
                   2397: #endif
                   2398: {
                   2399:   YYUSE (yyvaluep);
                   2400: 
                   2401:   if (!yymsg)
                   2402:     yymsg = "Deleting";
                   2403:   YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
                   2404: 
                   2405:   switch (yytype)
                   2406:     {
                   2407: 
                   2408:       default:
                   2409:    break;
                   2410:     }
                   2411: }
                   2412: 
                   2413: 
                   2414: /* Prevent warnings from -Wmissing-prototypes.  */
                   2415: 
                   2416: #ifdef YYPARSE_PARAM
                   2417: #if defined __STDC__ || defined __cplusplus
                   2418: int yyparse (void *YYPARSE_PARAM);
                   2419: #else
                   2420: int yyparse ();
                   2421: #endif
                   2422: #else /* ! YYPARSE_PARAM */
                   2423: #if defined __STDC__ || defined __cplusplus
                   2424: int yyparse (void);
                   2425: #else
                   2426: int yyparse ();
                   2427: #endif
                   2428: #endif /* ! YYPARSE_PARAM */
                   2429: 
                   2430: 
                   2431: 
                   2432: /* The look-ahead symbol.  */
                   2433: int yychar;
                   2434: 
                   2435: /* The semantic value of the look-ahead symbol.  */
                   2436: YYSTYPE yylval;
                   2437: 
                   2438: /* Number of syntax errors so far.  */
                   2439: int yynerrs;
                   2440: 
                   2441: 
                   2442: 
                   2443: /*----------.
                   2444: | yyparse.  |
                   2445: `----------*/
                   2446: 
                   2447: #ifdef YYPARSE_PARAM
                   2448: #if (defined __STDC__ || defined __C99__FUNC__ \
                   2449:      || defined __cplusplus || defined _MSC_VER)
                   2450: int
                   2451: yyparse (void *YYPARSE_PARAM)
                   2452: #else
                   2453: int
                   2454: yyparse (YYPARSE_PARAM)
                   2455:     void *YYPARSE_PARAM;
                   2456: #endif
                   2457: #else /* ! YYPARSE_PARAM */
                   2458: #if (defined __STDC__ || defined __C99__FUNC__ \
                   2459:      || defined __cplusplus || defined _MSC_VER)
                   2460: int
                   2461: yyparse (void)
                   2462: #else
                   2463: int
                   2464: yyparse ()
                   2465: 
                   2466: #endif
                   2467: #endif
                   2468: {
                   2469:   
                   2470:   int yystate;
                   2471:   int yyn;
                   2472:   int yyresult;
                   2473:   /* Number of tokens to shift before error messages enabled.  */
                   2474:   int yyerrstatus;
                   2475:   /* Look-ahead token as an internal (translated) token number.  */
                   2476:   int yytoken = 0;
                   2477: #if YYERROR_VERBOSE
                   2478:   /* Buffer for error messages, and its allocated size.  */
                   2479:   char yymsgbuf[128];
                   2480:   char *yymsg = yymsgbuf;
                   2481:   YYSIZE_T yymsg_alloc = sizeof yymsgbuf;
                   2482: #endif
                   2483: 
                   2484:   /* Three stacks and their tools:
                   2485:      `yyss': related to states,
                   2486:      `yyvs': related to semantic values,
                   2487:      `yyls': related to locations.
                   2488: 
                   2489:      Refer to the stacks thru separate pointers, to allow yyoverflow
                   2490:      to reallocate them elsewhere.  */
                   2491: 
                   2492:   /* The state stack.  */
                   2493:   yytype_int16 yyssa[YYINITDEPTH];
                   2494:   yytype_int16 *yyss = yyssa;
                   2495:   yytype_int16 *yyssp;
                   2496: 
                   2497:   /* The semantic value stack.  */
                   2498:   YYSTYPE yyvsa[YYINITDEPTH];
                   2499:   YYSTYPE *yyvs = yyvsa;
                   2500:   YYSTYPE *yyvsp;
                   2501: 
                   2502: 
                   2503: 
                   2504: #define YYPOPSTACK(N)   (yyvsp -= (N), yyssp -= (N))
                   2505: 
                   2506:   YYSIZE_T yystacksize = YYINITDEPTH;
                   2507: 
                   2508:   /* The variables used to return semantic value and location from the
                   2509:      action routines.  */
                   2510:   YYSTYPE yyval;
                   2511: 
                   2512: 
                   2513:   /* The number of symbols on the RHS of the reduced rule.
                   2514:      Keep to zero when no symbol should be popped.  */
                   2515:   int yylen = 0;
                   2516: 
                   2517:   YYDPRINTF ((stderr, "Starting parse\n"));
                   2518: 
                   2519:   yystate = 0;
                   2520:   yyerrstatus = 0;
                   2521:   yynerrs = 0;
                   2522:   yychar = YYEMPTY;        /* Cause a token to be read.  */
                   2523: 
                   2524:   /* Initialize stack pointers.
                   2525:      Waste one element of value and location stack
                   2526:      so that they stay on the same level as the state stack.
                   2527:      The wasted elements are never initialized.  */
                   2528: 
                   2529:   yyssp = yyss;
                   2530:   yyvsp = yyvs;
                   2531: 
                   2532:   goto yysetstate;
                   2533: 
                   2534: /*------------------------------------------------------------.
                   2535: | yynewstate -- Push a new state, which is found in yystate.  |
                   2536: `------------------------------------------------------------*/
                   2537:  yynewstate:
                   2538:   /* In all cases, when you get here, the value and location stacks
                   2539:      have just been pushed.  So pushing a state here evens the stacks.  */
                   2540:   yyssp++;
                   2541: 
                   2542:  yysetstate:
                   2543:   *yyssp = yystate;
                   2544: 
                   2545:   if (yyss + yystacksize - 1 <= yyssp)
                   2546:     {
                   2547:       /* Get the current used size of the three stacks, in elements.  */
                   2548:       YYSIZE_T yysize = yyssp - yyss + 1;
                   2549: 
                   2550: #ifdef yyoverflow
                   2551:       {
                   2552:    /* Give user a chance to reallocate the stack.  Use copies of
                   2553:       these so that the &'s don't force the real ones into
                   2554:       memory.  */
                   2555:    YYSTYPE *yyvs1 = yyvs;
                   2556:    yytype_int16 *yyss1 = yyss;
                   2557: 
                   2558: 
                   2559:    /* Each stack pointer address is followed by the size of the
                   2560:       data in use in that stack, in bytes.  This used to be a
                   2561:       conditional around just the two extra args, but that might
                   2562:       be undefined if yyoverflow is a macro.  */
                   2563:    yyoverflow (YY_("memory exhausted"),
                   2564:            &yyss1, yysize * sizeof (*yyssp),
                   2565:            &yyvs1, yysize * sizeof (*yyvsp),
                   2566: 
                   2567:            &yystacksize);
                   2568: 
                   2569:    yyss = yyss1;
                   2570:    yyvs = yyvs1;
                   2571:       }
                   2572: #else /* no yyoverflow */
                   2573: # ifndef YYSTACK_RELOCATE
                   2574:       goto yyexhaustedlab;
                   2575: # else
                   2576:       /* Extend the stack our own way.  */
                   2577:       if (YYMAXDEPTH <= yystacksize)
                   2578:    goto yyexhaustedlab;
                   2579:       yystacksize *= 2;
                   2580:       if (YYMAXDEPTH < yystacksize)
                   2581:    yystacksize = YYMAXDEPTH;
                   2582: 
                   2583:       {
                   2584:    yytype_int16 *yyss1 = yyss;
                   2585:    union yyalloc *yyptr =
                   2586:      (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
                   2587:    if (! yyptr)
                   2588:      goto yyexhaustedlab;
                   2589:    YYSTACK_RELOCATE (yyss);
                   2590:    YYSTACK_RELOCATE (yyvs);
                   2591: 
                   2592: #  undef YYSTACK_RELOCATE
                   2593:    if (yyss1 != yyssa)
                   2594:      YYSTACK_FREE (yyss1);
                   2595:       }
                   2596: # endif
                   2597: #endif /* no yyoverflow */
                   2598: 
                   2599:       yyssp = yyss + yysize - 1;
                   2600:       yyvsp = yyvs + yysize - 1;
                   2601: 
                   2602: 
                   2603:       YYDPRINTF ((stderr, "Stack size increased to %lu\n",
                   2604:          (unsigned long int) yystacksize));
                   2605: 
                   2606:       if (yyss + yystacksize - 1 <= yyssp)
                   2607:    YYABORT;
                   2608:     }
                   2609: 
                   2610:   YYDPRINTF ((stderr, "Entering state %d\n", yystate));
                   2611: 
                   2612:   goto yybackup;
                   2613: 
                   2614: /*-----------.
                   2615: | yybackup.  |
                   2616: `-----------*/
                   2617: yybackup:
                   2618: 
                   2619:   /* Do appropriate processing given the current state.  Read a
                   2620:      look-ahead token if we need one and don't already have one.  */
                   2621: 
                   2622:   /* First try to decide what to do without reference to look-ahead token.  */
                   2623:   yyn = yypact[yystate];
                   2624:   if (yyn == YYPACT_NINF)
                   2625:     goto yydefault;
                   2626: 
                   2627:   /* Not known => get a look-ahead token if don't already have one.  */
                   2628: 
                   2629:   /* YYCHAR is either YYEMPTY or YYEOF or a valid look-ahead symbol.  */
                   2630:   if (yychar == YYEMPTY)
                   2631:     {
                   2632:       YYDPRINTF ((stderr, "Reading a token: "));
                   2633:       yychar = YYLEX;
                   2634:     }
                   2635: 
                   2636:   if (yychar <= YYEOF)
                   2637:     {
                   2638:       yychar = yytoken = YYEOF;
                   2639:       YYDPRINTF ((stderr, "Now at end of input.\n"));
                   2640:     }
                   2641:   else
                   2642:     {
                   2643:       yytoken = YYTRANSLATE (yychar);
                   2644:       YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
                   2645:     }
                   2646: 
                   2647:   /* If the proper action on seeing token YYTOKEN is to reduce or to
                   2648:      detect an error, take that action.  */
                   2649:   yyn += yytoken;
                   2650:   if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
                   2651:     goto yydefault;
                   2652:   yyn = yytable[yyn];
                   2653:   if (yyn <= 0)
                   2654:     {
                   2655:       if (yyn == 0 || yyn == YYTABLE_NINF)
                   2656:    goto yyerrlab;
                   2657:       yyn = -yyn;
                   2658:       goto yyreduce;
                   2659:     }
                   2660: 
                   2661:   if (yyn == YYFINAL)
                   2662:     YYACCEPT;
                   2663: 
                   2664:   /* Count tokens shifted since error; after three, turn off error
                   2665:      status.  */
                   2666:   if (yyerrstatus)
                   2667:     yyerrstatus--;
                   2668: 
                   2669:   /* Shift the look-ahead token.  */
                   2670:   YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
                   2671: 
                   2672:   /* Discard the shifted token unless it is eof.  */
                   2673:   if (yychar != YYEOF)
                   2674:     yychar = YYEMPTY;
                   2675: 
                   2676:   yystate = yyn;
                   2677:   *++yyvsp = yylval;
                   2678: 
                   2679:   goto yynewstate;
                   2680: 
                   2681: 
                   2682: /*-----------------------------------------------------------.
                   2683: | yydefault -- do the default action for the current state.  |
                   2684: `-----------------------------------------------------------*/
                   2685: yydefault:
                   2686:   yyn = yydefact[yystate];
                   2687:   if (yyn == 0)
                   2688:     goto yyerrlab;
                   2689:   goto yyreduce;
                   2690: 
                   2691: 
                   2692: /*-----------------------------.
                   2693: | yyreduce -- Do a reduction.  |
                   2694: `-----------------------------*/
                   2695: yyreduce:
                   2696:   /* yyn is the number of a rule to reduce with.  */
                   2697:   yylen = yyr2[yyn];
                   2698: 
                   2699:   /* If YYLEN is nonzero, implement the default value of the action:
                   2700:      `$$ = $1'.
                   2701: 
                   2702:      Otherwise, the following line sets YYVAL to garbage.
                   2703:      This behavior is undocumented and Bison
                   2704:      users should not rely upon it.  Assigning to YYVAL
                   2705:      unconditionally makes the parser a bit smaller, and it avoids a
                   2706:      GCC warning that YYVAL may be used uninitialized.  */
                   2707:   yyval = yyvsp[1-yylen];
                   2708: 
                   2709: 
                   2710:   YY_REDUCE_PRINT (yyn);
                   2711:   switch (yyn)
                   2712:     {
                   2713:         case 2:
                   2714: #line 98 "awkgram.y"
                   2715:     { if (errorflag==0)
                   2716:            winner = (Node *)stat3(PROGRAM, beginloc, (yyvsp[(1) - (1)].p), endloc); }
                   2717:     break;
                   2718: 
                   2719:   case 3:
                   2720: #line 100 "awkgram.y"
                   2721:     { yyclearin; bracecheck(); SYNTAX("bailing out"); }
                   2722:     break;
                   2723: 
                   2724:   case 14:
                   2725: #line 124 "awkgram.y"
                   2726:     {inloop++;}
                   2727:     break;
                   2728: 
                   2729:   case 15:
                   2730: #line 125 "awkgram.y"
                   2731:     { --inloop; (yyval.p) = stat4(FOR, (yyvsp[(3) - (12)].p), notnull((yyvsp[(6) - (12)].p)), (yyvsp[(9) - (12)].p), (yyvsp[(12) - (12)].p)); }
                   2732:     break;
                   2733: 
                   2734:   case 16:
                   2735: #line 126 "awkgram.y"
                   2736:     {inloop++;}
                   2737:     break;
                   2738: 
                   2739:   case 17:
                   2740: #line 127 "awkgram.y"
                   2741:     { --inloop; (yyval.p) = stat4(FOR, (yyvsp[(3) - (10)].p), NIL, (yyvsp[(7) - (10)].p), (yyvsp[(10) - (10)].p)); }
                   2742:     break;
                   2743: 
                   2744:   case 18:
                   2745: #line 128 "awkgram.y"
                   2746:     {inloop++;}
                   2747:     break;
                   2748: 
                   2749:   case 19:
                   2750: #line 129 "awkgram.y"
                   2751:     { --inloop; (yyval.p) = stat3(IN, (yyvsp[(3) - (8)].p), makearr((yyvsp[(5) - (8)].p)), (yyvsp[(8) - (8)].p)); }
                   2752:     break;
                   2753: 
                   2754:   case 20:
                   2755: #line 133 "awkgram.y"
                   2756:     { setfname((yyvsp[(1) - (1)].cp)); }
                   2757:     break;
                   2758: 
                   2759:   case 21:
                   2760: #line 134 "awkgram.y"
                   2761:     { setfname((yyvsp[(1) - (1)].cp)); }
                   2762:     break;
                   2763: 
                   2764:   case 22:
                   2765: #line 138 "awkgram.y"
                   2766:     { (yyval.p) = notnull((yyvsp[(3) - (4)].p)); }
                   2767:     break;
                   2768: 
                   2769:   case 27:
                   2770: #line 150 "awkgram.y"
                   2771:     { (yyval.i) = 0; }
                   2772:     break;
                   2773: 
                   2774:   case 29:
                   2775: #line 155 "awkgram.y"
                   2776:     { (yyval.i) = 0; }
                   2777:     break;
                   2778: 
                   2779:   case 31:
                   2780: #line 161 "awkgram.y"
                   2781:     { (yyval.p) = 0; }
                   2782:     break;
                   2783: 
                   2784:   case 33:
                   2785: #line 166 "awkgram.y"
                   2786:     { (yyval.p) = 0; }
                   2787:     break;
                   2788: 
                   2789:   case 34:
                   2790: #line 167 "awkgram.y"
                   2791:     { (yyval.p) = (yyvsp[(2) - (3)].p); }
                   2792:     break;
                   2793: 
                   2794:   case 35:
                   2795: #line 171 "awkgram.y"
                   2796:     { (yyval.p) = notnull((yyvsp[(1) - (1)].p)); }
                   2797:     break;
                   2798: 
                   2799:   case 36:
                   2800: #line 175 "awkgram.y"
                   2801:     { (yyval.p) = stat2(PASTAT, (yyvsp[(1) - (1)].p), stat2(PRINT, rectonode(), NIL)); }
                   2802:     break;
                   2803: 
                   2804:   case 37:
                   2805: #line 176 "awkgram.y"
                   2806:     { (yyval.p) = stat2(PASTAT, (yyvsp[(1) - (4)].p), (yyvsp[(3) - (4)].p)); }
                   2807:     break;
                   2808: 
                   2809:   case 38:
                   2810: #line 177 "awkgram.y"
                   2811:     { (yyval.p) = pa2stat((yyvsp[(1) - (3)].p), (yyvsp[(3) - (3)].p), stat2(PRINT, rectonode(), NIL)); }
                   2812:     break;
                   2813: 
                   2814:   case 39:
                   2815: #line 178 "awkgram.y"
                   2816:     { (yyval.p) = pa2stat((yyvsp[(1) - (6)].p), (yyvsp[(3) - (6)].p), (yyvsp[(5) - (6)].p)); }
                   2817:     break;
                   2818: 
                   2819:   case 40:
                   2820: #line 179 "awkgram.y"
                   2821:     { (yyval.p) = stat2(PASTAT, NIL, (yyvsp[(2) - (3)].p)); }
                   2822:     break;
                   2823: 
                   2824:   case 41:
                   2825: #line 181 "awkgram.y"
                   2826:     { beginloc = linkum(beginloc, (yyvsp[(3) - (4)].p)); (yyval.p) = 0; }
                   2827:     break;
                   2828: 
                   2829:   case 42:
                   2830: #line 183 "awkgram.y"
                   2831:     { endloc = linkum(endloc, (yyvsp[(3) - (4)].p)); (yyval.p) = 0; }
                   2832:     break;
                   2833: 
                   2834:   case 43:
                   2835: #line 184 "awkgram.y"
                   2836:     {infunc++;}
                   2837:     break;
                   2838: 
                   2839:   case 44:
                   2840: #line 185 "awkgram.y"
                   2841:     { infunc--; curfname=0; defn((Cell *)(yyvsp[(2) - (9)].p), (yyvsp[(4) - (9)].p), (yyvsp[(8) - (9)].p)); (yyval.p) = 0; }
                   2842:     break;
                   2843: 
                   2844:   case 46:
                   2845: #line 190 "awkgram.y"
                   2846:     { (yyval.p) = linkum((yyvsp[(1) - (3)].p), (yyvsp[(3) - (3)].p)); }
                   2847:     break;
                   2848: 
                   2849:   case 48:
                   2850: #line 195 "awkgram.y"
                   2851:     { (yyval.p) = linkum((yyvsp[(1) - (3)].p), (yyvsp[(3) - (3)].p)); }
                   2852:     break;
                   2853: 
                   2854:   case 49:
                   2855: #line 199 "awkgram.y"
                   2856:     { (yyval.p) = op2((yyvsp[(2) - (3)].i), (yyvsp[(1) - (3)].p), (yyvsp[(3) - (3)].p)); }
                   2857:     break;
                   2858: 
                   2859:   case 50:
                   2860: #line 201 "awkgram.y"
                   2861:     { (yyval.p) = op3(CONDEXPR, notnull((yyvsp[(1) - (5)].p)), (yyvsp[(3) - (5)].p), (yyvsp[(5) - (5)].p)); }
                   2862:     break;
                   2863: 
                   2864:   case 51:
                   2865: #line 203 "awkgram.y"
                   2866:     { (yyval.p) = op2(BOR, notnull((yyvsp[(1) - (3)].p)), notnull((yyvsp[(3) - (3)].p))); }
                   2867:     break;
                   2868: 
                   2869:   case 52:
                   2870: #line 205 "awkgram.y"
                   2871:     { (yyval.p) = op2(AND, notnull((yyvsp[(1) - (3)].p)), notnull((yyvsp[(3) - (3)].p))); }
                   2872:     break;
                   2873: 
                   2874:   case 53:
                   2875: #line 206 "awkgram.y"
                   2876:     { (yyval.p) = op3((yyvsp[(2) - (3)].i), NIL, (yyvsp[(1) - (3)].p), (Node*)makedfa((yyvsp[(3) - (3)].s), 0)); }
                   2877:     break;
                   2878: 
                   2879:   case 54:
                   2880: #line 208 "awkgram.y"
                   2881:     { if (constnode((yyvsp[(3) - (3)].p)))
                   2882:            (yyval.p) = op3((yyvsp[(2) - (3)].i), NIL, (yyvsp[(1) - (3)].p), (Node*)makedfa(strnode((yyvsp[(3) - (3)].p)), 0));
                   2883:          else
                   2884:            (yyval.p) = op3((yyvsp[(2) - (3)].i), (Node *)1, (yyvsp[(1) - (3)].p), (yyvsp[(3) - (3)].p)); }
                   2885:     break;
                   2886: 
                   2887:   case 55:
                   2888: #line 212 "awkgram.y"
                   2889:     { (yyval.p) = op2(INTEST, (yyvsp[(1) - (3)].p), makearr((yyvsp[(3) - (3)].p))); }
                   2890:     break;
                   2891: 
                   2892:   case 56:
                   2893: #line 213 "awkgram.y"
                   2894:     { (yyval.p) = op2(INTEST, (yyvsp[(2) - (5)].p), makearr((yyvsp[(5) - (5)].p))); }
                   2895:     break;
                   2896: 
                   2897:   case 57:
                   2898: #line 214 "awkgram.y"
                   2899:     { (yyval.p) = op2(CAT, (yyvsp[(1) - (2)].p), (yyvsp[(2) - (2)].p)); }
                   2900:     break;
                   2901: 
                   2902:   case 60:
                   2903: #line 220 "awkgram.y"
                   2904:     { (yyval.p) = op2((yyvsp[(2) - (3)].i), (yyvsp[(1) - (3)].p), (yyvsp[(3) - (3)].p)); }
                   2905:     break;
                   2906: 
                   2907:   case 61:
                   2908: #line 222 "awkgram.y"
                   2909:     { (yyval.p) = op3(CONDEXPR, notnull((yyvsp[(1) - (5)].p)), (yyvsp[(3) - (5)].p), (yyvsp[(5) - (5)].p)); }
                   2910:     break;
                   2911: 
                   2912:   case 62:
                   2913: #line 224 "awkgram.y"
                   2914:     { (yyval.p) = op2(BOR, notnull((yyvsp[(1) - (3)].p)), notnull((yyvsp[(3) - (3)].p))); }
                   2915:     break;
                   2916: 
                   2917:   case 63:
                   2918: #line 226 "awkgram.y"
                   2919:     { (yyval.p) = op2(AND, notnull((yyvsp[(1) - (3)].p)), notnull((yyvsp[(3) - (3)].p))); }
                   2920:     break;
                   2921: 
                   2922:   case 64:
                   2923: #line 227 "awkgram.y"
                   2924:     { (yyval.p) = op2((yyvsp[(2) - (3)].i), (yyvsp[(1) - (3)].p), (yyvsp[(3) - (3)].p)); }
                   2925:     break;
                   2926: 
                   2927:   case 65:
                   2928: #line 228 "awkgram.y"
                   2929:     { (yyval.p) = op2((yyvsp[(2) - (3)].i), (yyvsp[(1) - (3)].p), (yyvsp[(3) - (3)].p)); }
                   2930:     break;
                   2931: 
                   2932:   case 66:
                   2933: #line 229 "awkgram.y"
                   2934:     { (yyval.p) = op2((yyvsp[(2) - (3)].i), (yyvsp[(1) - (3)].p), (yyvsp[(3) - (3)].p)); }
                   2935:     break;
                   2936: 
                   2937:   case 67:
                   2938: #line 230 "awkgram.y"
                   2939:     { (yyval.p) = op2((yyvsp[(2) - (3)].i), (yyvsp[(1) - (3)].p), (yyvsp[(3) - (3)].p)); }
                   2940:     break;
                   2941: 
                   2942:   case 68:
                   2943: #line 231 "awkgram.y"
                   2944:     { (yyval.p) = op2((yyvsp[(2) - (3)].i), (yyvsp[(1) - (3)].p), (yyvsp[(3) - (3)].p)); }
                   2945:     break;
                   2946: 
                   2947:   case 69:
                   2948: #line 232 "awkgram.y"
                   2949:     { (yyval.p) = op2((yyvsp[(2) - (3)].i), (yyvsp[(1) - (3)].p), (yyvsp[(3) - (3)].p)); }
                   2950:     break;
                   2951: 
                   2952:   case 70:
                   2953: #line 233 "awkgram.y"
                   2954:     { (yyval.p) = op3((yyvsp[(2) - (3)].i), NIL, (yyvsp[(1) - (3)].p), (Node*)makedfa((yyvsp[(3) - (3)].s), 0)); }
                   2955:     break;
                   2956: 
                   2957:   case 71:
                   2958: #line 235 "awkgram.y"
                   2959:     { if (constnode((yyvsp[(3) - (3)].p)))
                   2960:            (yyval.p) = op3((yyvsp[(2) - (3)].i), NIL, (yyvsp[(1) - (3)].p), (Node*)makedfa(strnode((yyvsp[(3) - (3)].p)), 0));
                   2961:          else
                   2962:            (yyval.p) = op3((yyvsp[(2) - (3)].i), (Node *)1, (yyvsp[(1) - (3)].p), (yyvsp[(3) - (3)].p)); }
                   2963:     break;
                   2964: 
                   2965:   case 72:
                   2966: #line 239 "awkgram.y"
                   2967:     { (yyval.p) = op2(INTEST, (yyvsp[(1) - (3)].p), makearr((yyvsp[(3) - (3)].p))); }
                   2968:     break;
                   2969: 
                   2970:   case 73:
                   2971: #line 240 "awkgram.y"
                   2972:     { (yyval.p) = op2(INTEST, (yyvsp[(2) - (5)].p), makearr((yyvsp[(5) - (5)].p))); }
                   2973:     break;
                   2974: 
                   2975:   case 74:
                   2976: #line 241 "awkgram.y"
                   2977:     { 
                   2978:            if (safe) SYNTAX("cmd | getline is unsafe");
                   2979:            else (yyval.p) = op3(GETLINE, (yyvsp[(4) - (4)].p), itonp((yyvsp[(2) - (4)].i)), (yyvsp[(1) - (4)].p)); }
                   2980:     break;
                   2981: 
                   2982:   case 75:
                   2983: #line 244 "awkgram.y"
                   2984:     { 
                   2985:            if (safe) SYNTAX("cmd | getline is unsafe");
                   2986:            else (yyval.p) = op3(GETLINE, (Node*)0, itonp((yyvsp[(2) - (3)].i)), (yyvsp[(1) - (3)].p)); }
                   2987:     break;
                   2988: 
                   2989:   case 76:
                   2990: #line 247 "awkgram.y"
                   2991:     { (yyval.p) = op2(CAT, (yyvsp[(1) - (2)].p), (yyvsp[(2) - (2)].p)); }
                   2992:     break;
                   2993: 
                   2994:   case 79:
                   2995: #line 253 "awkgram.y"
                   2996:     { (yyval.p) = linkum((yyvsp[(1) - (3)].p), (yyvsp[(3) - (3)].p)); }
                   2997:     break;
                   2998: 
                   2999:   case 80:
                   3000: #line 254 "awkgram.y"
                   3001:     { (yyval.p) = linkum((yyvsp[(1) - (3)].p), (yyvsp[(3) - (3)].p)); }
                   3002:     break;
                   3003: 
                   3004:   case 82:
                   3005: #line 259 "awkgram.y"
                   3006:     { (yyval.p) = linkum((yyvsp[(1) - (3)].p), (yyvsp[(3) - (3)].p)); }
                   3007:     break;
                   3008: 
                   3009:   case 83:
                   3010: #line 263 "awkgram.y"
                   3011:     { (yyval.p) = rectonode(); }
                   3012:     break;
                   3013: 
                   3014:   case 85:
                   3015: #line 265 "awkgram.y"
                   3016:     { (yyval.p) = (yyvsp[(2) - (3)].p); }
                   3017:     break;
                   3018: 
                   3019:   case 94:
                   3020: #line 282 "awkgram.y"
                   3021:     { (yyval.p) = op3(MATCH, NIL, rectonode(), (Node*)makedfa((yyvsp[(1) - (1)].s), 0)); }
                   3022:     break;
                   3023: 
                   3024:   case 95:
                   3025: #line 283 "awkgram.y"
                   3026:     { (yyval.p) = op1(NOT, notnull((yyvsp[(2) - (2)].p))); }
                   3027:     break;
                   3028: 
                   3029:   case 96:
                   3030: #line 287 "awkgram.y"
                   3031:     {startreg();}
                   3032:     break;
                   3033: 
                   3034:   case 97:
                   3035: #line 287 "awkgram.y"
                   3036:     { (yyval.s) = (yyvsp[(3) - (4)].s); }
                   3037:     break;
                   3038: 
                   3039:   case 100:
                   3040: #line 295 "awkgram.y"
                   3041:     { 
                   3042:            if (safe) SYNTAX("print | is unsafe");
                   3043:            else (yyval.p) = stat3((yyvsp[(1) - (4)].i), (yyvsp[(2) - (4)].p), itonp((yyvsp[(3) - (4)].i)), (yyvsp[(4) - (4)].p)); }
                   3044:     break;
                   3045: 
                   3046:   case 101:
                   3047: #line 298 "awkgram.y"
                   3048:     {
                   3049:            if (safe) SYNTAX("print >> is unsafe");
                   3050:            else (yyval.p) = stat3((yyvsp[(1) - (4)].i), (yyvsp[(2) - (4)].p), itonp((yyvsp[(3) - (4)].i)), (yyvsp[(4) - (4)].p)); }
                   3051:     break;
                   3052: 
                   3053:   case 102:
                   3054: #line 301 "awkgram.y"
                   3055:     {
                   3056:            if (safe) SYNTAX("print > is unsafe");
                   3057:            else (yyval.p) = stat3((yyvsp[(1) - (4)].i), (yyvsp[(2) - (4)].p), itonp((yyvsp[(3) - (4)].i)), (yyvsp[(4) - (4)].p)); }
                   3058:     break;
                   3059: 
                   3060:   case 103:
                   3061: #line 304 "awkgram.y"
                   3062:     { (yyval.p) = stat3((yyvsp[(1) - (2)].i), (yyvsp[(2) - (2)].p), NIL, NIL); }
                   3063:     break;
                   3064: 
                   3065:   case 104:
                   3066: #line 305 "awkgram.y"
                   3067:     { (yyval.p) = stat2(DELETE, makearr((yyvsp[(2) - (5)].p)), (yyvsp[(4) - (5)].p)); }
                   3068:     break;
                   3069: 
                   3070:   case 105:
                   3071: #line 306 "awkgram.y"
                   3072:     { (yyval.p) = stat2(DELETE, makearr((yyvsp[(2) - (2)].p)), 0); }
                   3073:     break;
                   3074: 
                   3075:   case 106:
                   3076: #line 307 "awkgram.y"
                   3077:     { (yyval.p) = exptostat((yyvsp[(1) - (1)].p)); }
                   3078:     break;
                   3079: 
                   3080:   case 107:
                   3081: #line 308 "awkgram.y"
                   3082:     { yyclearin; SYNTAX("illegal statement"); }
                   3083:     break;
                   3084: 
                   3085:   case 110:
                   3086: #line 317 "awkgram.y"
                   3087:     { if (!inloop) SYNTAX("break illegal outside of loops");
                   3088:                  (yyval.p) = stat1(BREAK, NIL); }
                   3089:     break;
                   3090: 
                   3091:   case 111:
                   3092: #line 319 "awkgram.y"
                   3093:     {  if (!inloop) SYNTAX("continue illegal outside of loops");
                   3094:                  (yyval.p) = stat1(CONTINUE, NIL); }
                   3095:     break;
                   3096: 
                   3097:   case 112:
                   3098: #line 321 "awkgram.y"
                   3099:     {inloop++;}
                   3100:     break;
                   3101: 
                   3102:   case 113:
                   3103: #line 321 "awkgram.y"
                   3104:     {--inloop;}
                   3105:     break;
                   3106: 
                   3107:   case 114:
                   3108: #line 322 "awkgram.y"
                   3109:     { (yyval.p) = stat2(DO, (yyvsp[(3) - (9)].p), notnull((yyvsp[(7) - (9)].p))); }
                   3110:     break;
                   3111: 
                   3112:   case 115:
                   3113: #line 323 "awkgram.y"
                   3114:     { (yyval.p) = stat1(EXIT, (yyvsp[(2) - (3)].p)); }
                   3115:     break;
                   3116: 
                   3117:   case 116:
                   3118: #line 324 "awkgram.y"
                   3119:     { (yyval.p) = stat1(EXIT, NIL); }
                   3120:     break;
                   3121: 
                   3122:   case 118:
                   3123: #line 326 "awkgram.y"
                   3124:     { (yyval.p) = stat3(IF, (yyvsp[(1) - (4)].p), (yyvsp[(2) - (4)].p), (yyvsp[(4) - (4)].p)); }
                   3125:     break;
                   3126: 
                   3127:   case 119:
                   3128: #line 327 "awkgram.y"
                   3129:     { (yyval.p) = stat3(IF, (yyvsp[(1) - (2)].p), (yyvsp[(2) - (2)].p), NIL); }
                   3130:     break;
                   3131: 
                   3132:   case 120:
                   3133: #line 328 "awkgram.y"
                   3134:     { (yyval.p) = (yyvsp[(2) - (3)].p); }
                   3135:     break;
                   3136: 
                   3137:   case 121:
                   3138: #line 329 "awkgram.y"
                   3139:     { if (infunc)
                   3140:                SYNTAX("next is illegal inside a function");
                   3141:              (yyval.p) = stat1(NEXT, NIL); }
                   3142:     break;
                   3143: 
                   3144:   case 122:
                   3145: #line 332 "awkgram.y"
                   3146:     { if (infunc)
                   3147:                SYNTAX("nextfile is illegal inside a function");
                   3148:              (yyval.p) = stat1(NEXTFILE, NIL); }
                   3149:     break;
                   3150: 
                   3151:   case 123:
                   3152: #line 335 "awkgram.y"
                   3153:     { (yyval.p) = stat1(RETURN, (yyvsp[(2) - (3)].p)); }
                   3154:     break;
                   3155: 
                   3156:   case 124:
                   3157: #line 336 "awkgram.y"
                   3158:     { (yyval.p) = stat1(RETURN, NIL); }
                   3159:     break;
                   3160: 
                   3161:   case 126:
                   3162: #line 338 "awkgram.y"
                   3163:     {inloop++;}
                   3164:     break;
                   3165: 
                   3166:   case 127:
                   3167: #line 338 "awkgram.y"
                   3168:     { --inloop; (yyval.p) = stat2(WHILE, (yyvsp[(1) - (3)].p), (yyvsp[(3) - (3)].p)); }
                   3169:     break;
                   3170: 
                   3171:   case 128:
                   3172: #line 339 "awkgram.y"
                   3173:     { (yyval.p) = 0; }
                   3174:     break;
                   3175: 
                   3176:   case 130:
                   3177: #line 344 "awkgram.y"
                   3178:     { (yyval.p) = linkum((yyvsp[(1) - (2)].p), (yyvsp[(2) - (2)].p)); }
                   3179:     break;
                   3180: 
                   3181:   case 133:
                   3182: #line 352 "awkgram.y"
                   3183:     { (yyval.p) = op2(DIVEQ, (yyvsp[(1) - (4)].p), (yyvsp[(4) - (4)].p)); }
                   3184:     break;
                   3185: 
                   3186:   case 134:
                   3187: #line 353 "awkgram.y"
                   3188:     { (yyval.p) = op2(ADD, (yyvsp[(1) - (3)].p), (yyvsp[(3) - (3)].p)); }
                   3189:     break;
                   3190: 
                   3191:   case 135:
                   3192: #line 354 "awkgram.y"
                   3193:     { (yyval.p) = op2(MINUS, (yyvsp[(1) - (3)].p), (yyvsp[(3) - (3)].p)); }
                   3194:     break;
                   3195: 
                   3196:   case 136:
                   3197: #line 355 "awkgram.y"
                   3198:     { (yyval.p) = op2(MULT, (yyvsp[(1) - (3)].p), (yyvsp[(3) - (3)].p)); }
                   3199:     break;
                   3200: 
                   3201:   case 137:
                   3202: #line 356 "awkgram.y"
                   3203:     { (yyval.p) = op2(DIVIDE, (yyvsp[(1) - (3)].p), (yyvsp[(3) - (3)].p)); }
                   3204:     break;
                   3205: 
                   3206:   case 138:
                   3207: #line 357 "awkgram.y"
                   3208:     { (yyval.p) = op2(MOD, (yyvsp[(1) - (3)].p), (yyvsp[(3) - (3)].p)); }
                   3209:     break;
                   3210: 
                   3211:   case 139:
                   3212: #line 358 "awkgram.y"
                   3213:     { (yyval.p) = op2(POWER, (yyvsp[(1) - (3)].p), (yyvsp[(3) - (3)].p)); }
                   3214:     break;
                   3215: 
                   3216:   case 140:
                   3217: #line 359 "awkgram.y"
                   3218:     { (yyval.p) = op1(UMINUS, (yyvsp[(2) - (2)].p)); }
                   3219:     break;
                   3220: 
                   3221:   case 141:
                   3222: #line 360 "awkgram.y"
                   3223:     { (yyval.p) = (yyvsp[(2) - (2)].p); }
                   3224:     break;
                   3225: 
                   3226:   case 142:
                   3227: #line 361 "awkgram.y"
                   3228:     { (yyval.p) = op1(NOT, notnull((yyvsp[(2) - (2)].p))); }
                   3229:     break;
                   3230: 
                   3231:   case 143:
                   3232: #line 362 "awkgram.y"
                   3233:     { (yyval.p) = op2(BLTIN, itonp((yyvsp[(1) - (3)].i)), rectonode()); }
                   3234:     break;
                   3235: 
                   3236:   case 144:
                   3237: #line 363 "awkgram.y"
                   3238:     { (yyval.p) = op2(BLTIN, itonp((yyvsp[(1) - (4)].i)), (yyvsp[(3) - (4)].p)); }
                   3239:     break;
                   3240: 
                   3241:   case 145:
                   3242: #line 364 "awkgram.y"
                   3243:     { (yyval.p) = op2(BLTIN, itonp((yyvsp[(1) - (1)].i)), rectonode()); }
                   3244:     break;
                   3245: 
                   3246:   case 146:
                   3247: #line 365 "awkgram.y"
                   3248:     { (yyval.p) = op2(CALL, celltonode((yyvsp[(1) - (3)].cp),CVAR), NIL); }
                   3249:     break;
                   3250: 
                   3251:   case 147:
                   3252: #line 366 "awkgram.y"
                   3253:     { (yyval.p) = op2(CALL, celltonode((yyvsp[(1) - (4)].cp),CVAR), (yyvsp[(3) - (4)].p)); }
                   3254:     break;
                   3255: 
                   3256:   case 148:
                   3257: #line 367 "awkgram.y"
                   3258:     { (yyval.p) = op1(CLOSE, (yyvsp[(2) - (2)].p)); }
                   3259:     break;
                   3260: 
                   3261:   case 149:
                   3262: #line 368 "awkgram.y"
                   3263:     { (yyval.p) = op1(PREDECR, (yyvsp[(2) - (2)].p)); }
                   3264:     break;
                   3265: 
                   3266:   case 150:
                   3267: #line 369 "awkgram.y"
                   3268:     { (yyval.p) = op1(PREINCR, (yyvsp[(2) - (2)].p)); }
                   3269:     break;
                   3270: 
                   3271:   case 151:
                   3272: #line 370 "awkgram.y"
                   3273:     { (yyval.p) = op1(POSTDECR, (yyvsp[(1) - (2)].p)); }
                   3274:     break;
                   3275: 
                   3276:   case 152:
                   3277: #line 371 "awkgram.y"
                   3278:     { (yyval.p) = op1(POSTINCR, (yyvsp[(1) - (2)].p)); }
                   3279:     break;
                   3280: 
                   3281:   case 153:
                   3282: #line 372 "awkgram.y"
                   3283:     { (yyval.p) = op3(GETLINE, (yyvsp[(2) - (4)].p), itonp((yyvsp[(3) - (4)].i)), (yyvsp[(4) - (4)].p)); }
                   3284:     break;
                   3285: 
                   3286:   case 154:
                   3287: #line 373 "awkgram.y"
                   3288:     { (yyval.p) = op3(GETLINE, NIL, itonp((yyvsp[(2) - (3)].i)), (yyvsp[(3) - (3)].p)); }
                   3289:     break;
                   3290: 
                   3291:   case 155:
                   3292: #line 374 "awkgram.y"
                   3293:     { (yyval.p) = op3(GETLINE, (yyvsp[(2) - (2)].p), NIL, NIL); }
                   3294:     break;
                   3295: 
                   3296:   case 156:
                   3297: #line 375 "awkgram.y"
                   3298:     { (yyval.p) = op3(GETLINE, NIL, NIL, NIL); }
                   3299:     break;
                   3300: 
                   3301:   case 157:
                   3302: #line 377 "awkgram.y"
                   3303:     { (yyval.p) = op2(INDEX, (yyvsp[(3) - (6)].p), (yyvsp[(5) - (6)].p)); }
                   3304:     break;
                   3305: 
                   3306:   case 158:
                   3307: #line 379 "awkgram.y"
                   3308:     { SYNTAX("index() doesn't permit regular expressions");
                   3309:          (yyval.p) = op2(INDEX, (yyvsp[(3) - (6)].p), (Node*)(yyvsp[(5) - (6)].s)); }
                   3310:     break;
                   3311: 
                   3312:   case 159:
                   3313: #line 381 "awkgram.y"
                   3314:     { (yyval.p) = (yyvsp[(2) - (3)].p); }
                   3315:     break;
                   3316: 
                   3317:   case 160:
                   3318: #line 383 "awkgram.y"
                   3319:     { (yyval.p) = op3(MATCHFCN, NIL, (yyvsp[(3) - (6)].p), (Node*)makedfa((yyvsp[(5) - (6)].s), 1)); }
                   3320:     break;
                   3321: 
                   3322:   case 161:
                   3323: #line 385 "awkgram.y"
                   3324:     { if (constnode((yyvsp[(5) - (6)].p)))
                   3325:            (yyval.p) = op3(MATCHFCN, NIL, (yyvsp[(3) - (6)].p), (Node*)makedfa(strnode((yyvsp[(5) - (6)].p)), 1));
                   3326:          else
                   3327:            (yyval.p) = op3(MATCHFCN, (Node *)1, (yyvsp[(3) - (6)].p), (yyvsp[(5) - (6)].p)); }
                   3328:     break;
                   3329: 
                   3330:   case 162:
                   3331: #line 389 "awkgram.y"
                   3332:     { (yyval.p) = celltonode((yyvsp[(1) - (1)].cp), CCON); }
                   3333:     break;
                   3334: 
                   3335:   case 163:
                   3336: #line 391 "awkgram.y"
                   3337:     { (yyval.p) = op4(SPLIT, (yyvsp[(3) - (8)].p), makearr((yyvsp[(5) - (8)].p)), (yyvsp[(7) - (8)].p), (Node*)STRING); }
                   3338:     break;
                   3339: 
                   3340:   case 164:
                   3341: #line 393 "awkgram.y"
                   3342:     { (yyval.p) = op4(SPLIT, (yyvsp[(3) - (8)].p), makearr((yyvsp[(5) - (8)].p)), (Node*)makedfa((yyvsp[(7) - (8)].s), 1), (Node *)REGEXPR); }
                   3343:     break;
                   3344: 
                   3345:   case 165:
                   3346: #line 395 "awkgram.y"
                   3347:     { (yyval.p) = op4(SPLIT, (yyvsp[(3) - (6)].p), makearr((yyvsp[(5) - (6)].p)), NIL, (Node*)STRING); }
                   3348:     break;
                   3349: 
                   3350:   case 166:
                   3351: #line 396 "awkgram.y"
                   3352:     { (yyval.p) = op1((yyvsp[(1) - (4)].i), (yyvsp[(3) - (4)].p)); }
                   3353:     break;
                   3354: 
                   3355:   case 167:
                   3356: #line 397 "awkgram.y"
                   3357:     { (yyval.p) = celltonode((yyvsp[(1) - (1)].cp), CCON); }
                   3358:     break;
                   3359: 
                   3360:   case 168:
                   3361: #line 399 "awkgram.y"
                   3362:     { (yyval.p) = op4((yyvsp[(1) - (6)].i), NIL, (Node*)makedfa((yyvsp[(3) - (6)].s), 1), (yyvsp[(5) - (6)].p), rectonode()); }
                   3363:     break;
                   3364: 
                   3365:   case 169:
                   3366: #line 401 "awkgram.y"
                   3367:     { if (constnode((yyvsp[(3) - (6)].p)))
                   3368:            (yyval.p) = op4((yyvsp[(1) - (6)].i), NIL, (Node*)makedfa(strnode((yyvsp[(3) - (6)].p)), 1), (yyvsp[(5) - (6)].p), rectonode());
                   3369:          else
                   3370:            (yyval.p) = op4((yyvsp[(1) - (6)].i), (Node *)1, (yyvsp[(3) - (6)].p), (yyvsp[(5) - (6)].p), rectonode()); }
                   3371:     break;
                   3372: 
                   3373:   case 170:
                   3374: #line 406 "awkgram.y"
                   3375:     { (yyval.p) = op4((yyvsp[(1) - (8)].i), NIL, (Node*)makedfa((yyvsp[(3) - (8)].s), 1), (yyvsp[(5) - (8)].p), (yyvsp[(7) - (8)].p)); }
                   3376:     break;
                   3377: 
                   3378:   case 171:
                   3379: #line 408 "awkgram.y"
                   3380:     { if (constnode((yyvsp[(3) - (8)].p)))
                   3381:            (yyval.p) = op4((yyvsp[(1) - (8)].i), NIL, (Node*)makedfa(strnode((yyvsp[(3) - (8)].p)), 1), (yyvsp[(5) - (8)].p), (yyvsp[(7) - (8)].p));
                   3382:          else
                   3383:            (yyval.p) = op4((yyvsp[(1) - (8)].i), (Node *)1, (yyvsp[(3) - (8)].p), (yyvsp[(5) - (8)].p), (yyvsp[(7) - (8)].p)); }
                   3384:     break;
                   3385: 
                   3386:   case 172:
                   3387: #line 413 "awkgram.y"
                   3388:     { (yyval.p) = op3(SUBSTR, (yyvsp[(3) - (8)].p), (yyvsp[(5) - (8)].p), (yyvsp[(7) - (8)].p)); }
                   3389:     break;
                   3390: 
                   3391:   case 173:
                   3392: #line 415 "awkgram.y"
                   3393:     { (yyval.p) = op3(SUBSTR, (yyvsp[(3) - (6)].p), (yyvsp[(5) - (6)].p), NIL); }
                   3394:     break;
                   3395: 
                   3396:   case 176:
                   3397: #line 421 "awkgram.y"
                   3398:     { (yyval.p) = op2(ARRAY, makearr((yyvsp[(1) - (4)].p)), (yyvsp[(3) - (4)].p)); }
                   3399:     break;
                   3400: 
                   3401:   case 177:
                   3402: #line 422 "awkgram.y"
                   3403:     { (yyval.p) = op1(INDIRECT, celltonode((yyvsp[(1) - (1)].cp), CVAR)); }
                   3404:     break;
                   3405: 
                   3406:   case 178:
                   3407: #line 423 "awkgram.y"
                   3408:     { (yyval.p) = op1(INDIRECT, (yyvsp[(2) - (2)].p)); }
                   3409:     break;
                   3410: 
                   3411:   case 179:
                   3412: #line 427 "awkgram.y"
                   3413:     { arglist = (yyval.p) = 0; }
                   3414:     break;
                   3415: 
                   3416:   case 180:
                   3417: #line 428 "awkgram.y"
                   3418:     { arglist = (yyval.p) = celltonode((yyvsp[(1) - (1)].cp),CVAR); }
                   3419:     break;
                   3420: 
                   3421:   case 181:
                   3422: #line 429 "awkgram.y"
                   3423:     {
                   3424:            checkdup((yyvsp[(1) - (3)].p), (yyvsp[(3) - (3)].cp));
                   3425:            arglist = (yyval.p) = linkum((yyvsp[(1) - (3)].p),celltonode((yyvsp[(3) - (3)].cp),CVAR)); }
                   3426:     break;
                   3427: 
                   3428:   case 182:
                   3429: #line 435 "awkgram.y"
                   3430:     { (yyval.p) = celltonode((yyvsp[(1) - (1)].cp), CVAR); }
                   3431:     break;
                   3432: 
                   3433:   case 183:
                   3434: #line 436 "awkgram.y"
                   3435:     { (yyval.p) = op1(ARG, itonp((yyvsp[(1) - (1)].i))); }
                   3436:     break;
                   3437: 
                   3438:   case 184:
                   3439: #line 437 "awkgram.y"
                   3440:     { (yyval.p) = op1(VARNF, (Node *) (yyvsp[(1) - (1)].cp)); }
                   3441:     break;
                   3442: 
                   3443:   case 185:
                   3444: #line 442 "awkgram.y"
                   3445:     { (yyval.p) = notnull((yyvsp[(3) - (4)].p)); }
                   3446:     break;
                   3447: 
                   3448: 
                   3449: /* Line 1267 of yacc.c.  */
                   3450: #line 3451 "y.tab.c"
                   3451:       default: break;
                   3452:     }
                   3453:   YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
                   3454: 
                   3455:   YYPOPSTACK (yylen);
                   3456:   yylen = 0;
                   3457:   YY_STACK_PRINT (yyss, yyssp);
                   3458: 
                   3459:   *++yyvsp = yyval;
                   3460: 
                   3461: 
                   3462:   /* Now `shift' the result of the reduction.  Determine what state
                   3463:      that goes to, based on the state we popped back to and the rule
                   3464:      number reduced by.  */
                   3465: 
                   3466:   yyn = yyr1[yyn];
                   3467: 
                   3468:   yystate = yypgoto[yyn - YYNTOKENS] + *yyssp;
                   3469:   if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp)
                   3470:     yystate = yytable[yystate];
                   3471:   else
                   3472:     yystate = yydefgoto[yyn - YYNTOKENS];
                   3473: 
                   3474:   goto yynewstate;
                   3475: 
                   3476: 
                   3477: /*------------------------------------.
                   3478: | yyerrlab -- here on detecting error |
                   3479: `------------------------------------*/
                   3480: yyerrlab:
                   3481:   /* If not already recovering from an error, report this error.  */
                   3482:   if (!yyerrstatus)
                   3483:     {
                   3484:       ++yynerrs;
                   3485: #if ! YYERROR_VERBOSE
                   3486:       yyerror (YY_("syntax error"));
                   3487: #else
                   3488:       {
                   3489:    YYSIZE_T yysize = yysyntax_error (0, yystate, yychar);
                   3490:    if (yymsg_alloc < yysize && yymsg_alloc < YYSTACK_ALLOC_MAXIMUM)
                   3491:      {
                   3492:        YYSIZE_T yyalloc = 2 * yysize;
                   3493:        if (! (yysize <= yyalloc && yyalloc <= YYSTACK_ALLOC_MAXIMUM))
                   3494:          yyalloc = YYSTACK_ALLOC_MAXIMUM;
                   3495:        if (yymsg != yymsgbuf)
                   3496:          YYSTACK_FREE (yymsg);
                   3497:        yymsg = (char *) YYSTACK_ALLOC (yyalloc);
                   3498:        if (yymsg)
                   3499:          yymsg_alloc = yyalloc;
                   3500:        else
                   3501:          {
                   3502:        yymsg = yymsgbuf;
                   3503:        yymsg_alloc = sizeof yymsgbuf;
                   3504:          }
                   3505:      }
                   3506: 
                   3507:    if (0 < yysize && yysize <= yymsg_alloc)
                   3508:      {
                   3509:        (void) yysyntax_error (yymsg, yystate, yychar);
                   3510:        yyerror (yymsg);
                   3511:      }
                   3512:    else
                   3513:      {
                   3514:        yyerror (YY_("syntax error"));
                   3515:        if (yysize != 0)
                   3516:          goto yyexhaustedlab;
                   3517:      }
                   3518:       }
                   3519: #endif
                   3520:     }
                   3521: 
                   3522: 
                   3523: 
                   3524:   if (yyerrstatus == 3)
                   3525:     {
                   3526:       /* If just tried and failed to reuse look-ahead token after an
                   3527:     error, discard it.  */
                   3528: 
                   3529:       if (yychar <= YYEOF)
                   3530:    {
                   3531:      /* Return failure if at end of input.  */
                   3532:      if (yychar == YYEOF)
                   3533:        YYABORT;
                   3534:    }
                   3535:       else
                   3536:    {
                   3537:      yydestruct ("Error: discarding",
                   3538:              yytoken, &yylval);
                   3539:      yychar = YYEMPTY;
                   3540:    }
                   3541:     }
                   3542: 
                   3543:   /* Else will try to reuse look-ahead token after shifting the error
                   3544:      token.  */
                   3545:   goto yyerrlab1;
                   3546: 
                   3547: 
                   3548: /*---------------------------------------------------.
                   3549: | yyerrorlab -- error raised explicitly by YYERROR.  |
                   3550: `---------------------------------------------------*/
                   3551: yyerrorlab:
                   3552: 
                   3553:   /* Pacify compilers like GCC when the user code never invokes
                   3554:      YYERROR and the label yyerrorlab therefore never appears in user
                   3555:      code.  */
                   3556:   if (/*CONSTCOND*/ 0)
                   3557:      goto yyerrorlab;
                   3558: 
                   3559:   /* Do not reclaim the symbols of the rule which action triggered
                   3560:      this YYERROR.  */
                   3561:   YYPOPSTACK (yylen);
                   3562:   yylen = 0;
                   3563:   YY_STACK_PRINT (yyss, yyssp);
                   3564:   yystate = *yyssp;
                   3565:   goto yyerrlab1;
                   3566: 
                   3567: 
                   3568: /*-------------------------------------------------------------.
                   3569: | yyerrlab1 -- common code for both syntax error and YYERROR.  |
                   3570: `-------------------------------------------------------------*/
                   3571: yyerrlab1:
                   3572:   yyerrstatus = 3; /* Each real token shifted decrements this.  */
                   3573: 
                   3574:   for (;;)
                   3575:     {
                   3576:       yyn = yypact[yystate];
                   3577:       if (yyn != YYPACT_NINF)
                   3578:    {
                   3579:      yyn += YYTERROR;
                   3580:      if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
                   3581:        {
                   3582:          yyn = yytable[yyn];
                   3583:          if (0 < yyn)
                   3584:        break;
                   3585:        }
                   3586:    }
                   3587: 
                   3588:       /* Pop the current state because it cannot handle the error token.  */
                   3589:       if (yyssp == yyss)
                   3590:    YYABORT;
                   3591: 
                   3592: 
                   3593:       yydestruct ("Error: popping",
                   3594:          yystos[yystate], yyvsp);
                   3595:       YYPOPSTACK (1);
                   3596:       yystate = *yyssp;
                   3597:       YY_STACK_PRINT (yyss, yyssp);
                   3598:     }
                   3599: 
                   3600:   if (yyn == YYFINAL)
                   3601:     YYACCEPT;
                   3602: 
                   3603:   *++yyvsp = yylval;
                   3604: 
                   3605: 
                   3606:   /* Shift the error token.  */
                   3607:   YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
                   3608: 
                   3609:   yystate = yyn;
                   3610:   goto yynewstate;
                   3611: 
                   3612: 
                   3613: /*-------------------------------------.
                   3614: | yyacceptlab -- YYACCEPT comes here.  |
                   3615: `-------------------------------------*/
                   3616: yyacceptlab:
                   3617:   yyresult = 0;
                   3618:   goto yyreturn;
                   3619: 
                   3620: /*-----------------------------------.
                   3621: | yyabortlab -- YYABORT comes here.  |
                   3622: `-----------------------------------*/
                   3623: yyabortlab:
                   3624:   yyresult = 1;
                   3625:   goto yyreturn;
                   3626: 
                   3627: #ifndef yyoverflow
                   3628: /*-------------------------------------------------.
                   3629: | yyexhaustedlab -- memory exhaustion comes here.  |
                   3630: `-------------------------------------------------*/
                   3631: yyexhaustedlab:
                   3632:   yyerror (YY_("memory exhausted"));
                   3633:   yyresult = 2;
                   3634:   /* Fall through.  */
                   3635: #endif
                   3636: 
                   3637: yyreturn:
                   3638:   if (yychar != YYEOF && yychar != YYEMPTY)
                   3639:      yydestruct ("Cleanup: discarding lookahead",
                   3640:         yytoken, &yylval);
                   3641:   /* Do not reclaim the symbols of the rule which action triggered
                   3642:      this YYABORT or YYACCEPT.  */
                   3643:   YYPOPSTACK (yylen);
                   3644:   YY_STACK_PRINT (yyss, yyssp);
                   3645:   while (yyssp != yyss)
                   3646:     {
                   3647:       yydestruct ("Cleanup: popping",
                   3648:          yystos[*yyssp], yyvsp);
                   3649:       YYPOPSTACK (1);
                   3650:     }
                   3651: #ifndef yyoverflow
                   3652:   if (yyss != yyssa)
                   3653:     YYSTACK_FREE (yyss);
                   3654: #endif
                   3655: #if YYERROR_VERBOSE
                   3656:   if (yymsg != yymsgbuf)
                   3657:     YYSTACK_FREE (yymsg);
                   3658: #endif
                   3659:   /* Make sure YYID is used.  */
                   3660:   return YYID (yyresult);
                   3661: }
                   3662: 
                   3663: 
                   3664: #line 445 "awkgram.y"
                   3665: 
                   3666: 
                   3667: void setfname(Cell *p)
                   3668: {
                   3669:    if (isarr(p))
                   3670:        SYNTAX("%s is an array, not a function", p->nval);
                   3671:    else if (isfcn(p))
                   3672:        SYNTAX("you can't define function %s more than once", p->nval);
                   3673:    curfname = p->nval;
                   3674: }
                   3675: 
                   3676: int constnode(Node *p)
                   3677: {
                   3678:    return isvalue(p) && ((Cell *) (p->narg[0]))->csub == CCON;
                   3679: }
                   3680: 
                   3681: char *strnode(Node *p)
                   3682: {
                   3683:    return ((Cell *)(p->narg[0]))->sval;
                   3684: }
                   3685: 
                   3686: Node *notnull(Node *n)
                   3687: {
                   3688:    switch (n->nobj) {
                   3689:    case LE: case LT: case EQ: case NE: case GT: case GE:
                   3690:    case BOR: case AND: case NOT:
                   3691:        return n;
                   3692:    default:
                   3693:        return op2(NE, n, nullnode);
                   3694:    }
                   3695: }
                   3696: 
                   3697: void checkdup(Node *vl, Cell *cp)  /* check if name already in list */
                   3698: {
                   3699:    char *s = cp->nval;
                   3700:    for ( ; vl; vl = vl->nnext) {
                   3701:        if (strcmp(s, ((Cell *)(vl->narg[0]))->nval) == 0) {
                   3702:            SYNTAX("duplicate argument %s", s);
                   3703:            break;
                   3704:        }
                   3705:    }
                   3706: }
                   3707: 

CVSweb interface <joel.bertrand@systella.fr>