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

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>