Changeset 3149a5 in git for Singular/grammar.cc


Ignore:
Timestamp:
Nov 6, 2009, 7:53:58 PM (14 years ago)
Author:
Hans Schönemann <hannes@…>
Branches:
(u'spielwiese', '8e0ad00ce244dfd0756200662572aef8402f13d5')
Children:
bfa2deb0033ef0679fd34718a46b524db667a98a
Parents:
822e655d18d08e0974d10c5f667eba284bff1e0a
Message:
*hannes: new command: farey

git-svn-id: file:///usr/local/Singular/svn/trunk@12256 2c84dea3-7e68-4137-9b89-c4e89433aadc
File:
1 edited

Legend:

Unmodified
Added
Removed
  • Singular/grammar.cc

    r822e655 r3149a5  
    1 
    2 /*  A Bison parser, made from grammar.y
    3     by GNU Bison version 1.28  */
    4 
    5 #define YYBISON 1  /* Identify Bison output.  */
    6 
    7 #define DOTDOT  257
    8 #define EQUAL_EQUAL     258
    9 #define GE      259
    10 #define LE      260
    11 #define MINUSMINUS      261
    12 #define NOT     262
    13 #define NOTEQUAL        263
    14 #define PLUSPLUS        264
    15 #define COLONCOLON      265
    16 #define GRING_CMD       266
    17 #define INTMAT_CMD      267
    18 #define PROC_CMD        268
    19 #define RING_CMD        269
    20 #define BEGIN_RING      270
    21 #define IDEAL_CMD       271
    22 #define MAP_CMD 272
    23 #define MATRIX_CMD      273
    24 #define MODUL_CMD       274
    25 #define NUMBER_CMD      275
    26 #define POLY_CMD        276
    27 #define RESOLUTION_CMD  277
    28 #define VECTOR_CMD      278
    29 #define BETTI_CMD       279
    30 #define COEFFS_CMD      280
    31 #define COEF_CMD        281
    32 #define CONTRACT_CMD    282
    33 #define DEGREE_CMD      283
    34 #define DEG_CMD 284
    35 #define DIFF_CMD        285
    36 #define DIM_CMD 286
    37 #define DIVISION_CMD    287
    38 #define ELIMINATION_CMD 288
    39 #define E_CMD   289
    40 #define FETCH_CMD       290
    41 #define FREEMODULE_CMD  291
    42 #define KEEPRING_CMD    292
    43 #define HILBERT_CMD     293
    44 #define HOMOG_CMD       294
    45 #define IMAP_CMD        295
    46 #define INDEPSET_CMD    296
    47 #define INTERRED_CMD    297
    48 #define INTERSECT_CMD   298
    49 #define JACOB_CMD       299
    50 #define JET_CMD 300
    51 #define KBASE_CMD       301
    52 #define KOSZUL_CMD      302
    53 #define LEADCOEF_CMD    303
    54 #define LEADEXP_CMD     304
    55 #define LEAD_CMD        305
    56 #define LEADMONOM_CMD   306
    57 #define LIFTSTD_CMD     307
    58 #define LIFT_CMD        308
    59 #define MAXID_CMD       309
    60 #define MINBASE_CMD     310
    61 #define MINOR_CMD       311
    62 #define MINRES_CMD      312
    63 #define MODULO_CMD      313
    64 #define MRES_CMD        314
    65 #define MULTIPLICITY_CMD        315
    66 #define ORD_CMD 316
    67 #define PAR_CMD 317
    68 #define PARDEG_CMD      318
    69 #define PREIMAGE_CMD    319
    70 #define QUOTIENT_CMD    320
    71 #define QHWEIGHT_CMD    321
    72 #define REDUCE_CMD      322
    73 #define REGULARITY_CMD  323
    74 #define RES_CMD 324
    75 #define SIMPLIFY_CMD    325
    76 #define SORTVEC_CMD     326
    77 #define SRES_CMD        327
    78 #define STD_CMD 328
    79 #define SUBST_CMD       329
    80 #define SYZYGY_CMD      330
    81 #define VAR_CMD 331
    82 #define VDIM_CMD        332
    83 #define WEDGE_CMD       333
    84 #define WEIGHT_CMD      334
    85 #define VALTVARS        335
    86 #define VMAXDEG 336
    87 #define VMAXMULT        337
    88 #define VNOETHER        338
    89 #define VMINPOLY        339
    90 #define END_RING        340
    91 #define CMD_1   341
    92 #define CMD_2   342
    93 #define CMD_3   343
    94 #define CMD_12  344
    95 #define CMD_13  345
    96 #define CMD_23  346
    97 #define CMD_123 347
    98 #define CMD_M   348
    99 #define ROOT_DECL       349
    100 #define ROOT_DECL_LIST  350
    101 #define RING_DECL       351
    102 #define EXAMPLE_CMD     352
    103 #define EXPORT_CMD      353
    104 #define HELP_CMD        354
    105 #define KILL_CMD        355
    106 #define LIB_CMD 356
    107 #define LISTVAR_CMD     357
    108 #define SETRING_CMD     358
    109 #define TYPE_CMD        359
    110 #define STRINGTOK       360
    111 #define BLOCKTOK        361
    112 #define INT_CONST       362
    113 #define UNKNOWN_IDENT   363
    114 #define RINGVAR 364
    115 #define PROC_DEF        365
    116 #define BREAK_CMD       366
    117 #define CONTINUE_CMD    367
    118 #define ELSE_CMD        368
    119 #define EVAL    369
    120 #define QUOTE   370
    121 #define FOR_CMD 371
    122 #define IF_CMD  372
    123 #define SYS_BREAK       373
    124 #define WHILE_CMD       374
    125 #define RETURN  375
    126 #define PARAMETER       376
    127 #define SYSVAR  377
    128 #define UMINUS  378
    129 
     1/* A Bison parser, made by GNU Bison 2.3.  */
     2
     3/* Skeleton implementation for Bison's Yacc-like parsers in C
     4
     5   Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006
     6   Free Software Foundation, Inc.
     7
     8   This program is free software; you can redistribute it and/or modify
     9   it under the terms of the GNU General Public License as published by
     10   the Free Software Foundation; either version 2, or (at your option)
     11   any later version.
     12
     13   This program is distributed in the hope that it will be useful,
     14   but WITHOUT ANY WARRANTY; without even the implied warranty of
     15   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
     16   GNU General Public License for more details.
     17
     18   You should have received a copy of the GNU General Public License
     19   along with this program; if not, write to the Free Software
     20   Foundation, Inc., 51 Franklin Street, Fifth Floor,
     21   Boston, MA 02110-1301, USA.  */
     22
     23/* As a special exception, you may create a larger work that contains
     24   part or all of the Bison parser skeleton and distribute that work
     25   under terms of your choice, so long as that work isn't itself a
     26   parser generator using the skeleton or a modified version thereof
     27   as a parser skeleton.  Alternatively, if you modify or redistribute
     28   the parser skeleton itself, you may (at your option) remove this
     29   special exception, which will cause the skeleton and the resulting
     30   Bison output files to be licensed under the GNU General Public
     31   License without this special exception.
     32
     33   This special exception was added by the Free Software Foundation in
     34   version 2.2 of Bison.  */
     35
     36/* C LALR(1) parser skeleton written by Richard Stallman, by
     37   simplifying the original so-called "semantic" parser.  */
     38
     39/* All symbols defined below should begin with yy or YY, to avoid
     40   infringing on user name space.  This should be done even for local
     41   variables, as they might otherwise be expanded by user macros.
     42   There are some unavoidable exceptions within include files to
     43   define necessary library symbols; they are noted "INFRINGES ON
     44   USER NAME SPACE" below.  */
     45
     46/* Identify Bison output.  */
     47#define YYBISON 1
     48
     49/* Bison version.  */
     50#define YYBISON_VERSION "2.3"
     51
     52/* Skeleton name.  */
     53#define YYSKELETON_NAME "yacc.c"
     54
     55/* Pure parsers.  */
     56#define YYPURE 1
     57
     58/* Using locations.  */
     59#define YYLSP_NEEDED 0
     60
     61
     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     DOTDOT = 258,
     70     EQUAL_EQUAL = 259,
     71     GE = 260,
     72     LE = 261,
     73     MINUSMINUS = 262,
     74     NOT = 263,
     75     NOTEQUAL = 264,
     76     PLUSPLUS = 265,
     77     COLONCOLON = 266,
     78     GRING_CMD = 267,
     79     INTMAT_CMD = 268,
     80     PROC_CMD = 269,
     81     RING_CMD = 270,
     82     BEGIN_RING = 271,
     83     IDEAL_CMD = 272,
     84     MAP_CMD = 273,
     85     MATRIX_CMD = 274,
     86     MODUL_CMD = 275,
     87     NUMBER_CMD = 276,
     88     POLY_CMD = 277,
     89     RESOLUTION_CMD = 278,
     90     VECTOR_CMD = 279,
     91     BETTI_CMD = 280,
     92     CHINREM_CMD = 281,
     93     COEFFS_CMD = 282,
     94     COEF_CMD = 283,
     95     CONTRACT_CMD = 284,
     96     DEGREE_CMD = 285,
     97     DEG_CMD = 286,
     98     DIFF_CMD = 287,
     99     DIM_CMD = 288,
     100     DIVISION_CMD = 289,
     101     ELIMINATION_CMD = 290,
     102     E_CMD = 291,
     103     FAREY_CMD = 292,
     104     FETCH_CMD = 293,
     105     FREEMODULE_CMD = 294,
     106     KEEPRING_CMD = 295,
     107     HILBERT_CMD = 296,
     108     HOMOG_CMD = 297,
     109     IMAP_CMD = 298,
     110     INDEPSET_CMD = 299,
     111     INTERRED_CMD = 300,
     112     INTERSECT_CMD = 301,
     113     JACOB_CMD = 302,
     114     JET_CMD = 303,
     115     KBASE_CMD = 304,
     116     KOSZUL_CMD = 305,
     117     LEADCOEF_CMD = 306,
     118     LEADEXP_CMD = 307,
     119     LEAD_CMD = 308,
     120     LEADMONOM_CMD = 309,
     121     LIFTSTD_CMD = 310,
     122     LIFT_CMD = 311,
     123     MAXID_CMD = 312,
     124     MINBASE_CMD = 313,
     125     MINOR_CMD = 314,
     126     MINRES_CMD = 315,
     127     MODULO_CMD = 316,
     128     MRES_CMD = 317,
     129     MULTIPLICITY_CMD = 318,
     130     ORD_CMD = 319,
     131     PAR_CMD = 320,
     132     PARDEG_CMD = 321,
     133     PREIMAGE_CMD = 322,
     134     QUOTIENT_CMD = 323,
     135     QHWEIGHT_CMD = 324,
     136     REDUCE_CMD = 325,
     137     REGULARITY_CMD = 326,
     138     RES_CMD = 327,
     139     SIMPLIFY_CMD = 328,
     140     SORTVEC_CMD = 329,
     141     SRES_CMD = 330,
     142     STD_CMD = 331,
     143     SUBST_CMD = 332,
     144     SYZYGY_CMD = 333,
     145     VAR_CMD = 334,
     146     VDIM_CMD = 335,
     147     WEDGE_CMD = 336,
     148     WEIGHT_CMD = 337,
     149     VALTVARS = 338,
     150     VMAXDEG = 339,
     151     VMAXMULT = 340,
     152     VNOETHER = 341,
     153     VMINPOLY = 342,
     154     END_RING = 343,
     155     CMD_1 = 344,
     156     CMD_2 = 345,
     157     CMD_3 = 346,
     158     CMD_12 = 347,
     159     CMD_13 = 348,
     160     CMD_23 = 349,
     161     CMD_123 = 350,
     162     CMD_M = 351,
     163     ROOT_DECL = 352,
     164     ROOT_DECL_LIST = 353,
     165     RING_DECL = 354,
     166     EXAMPLE_CMD = 355,
     167     EXPORT_CMD = 356,
     168     HELP_CMD = 357,
     169     KILL_CMD = 358,
     170     LIB_CMD = 359,
     171     LISTVAR_CMD = 360,
     172     SETRING_CMD = 361,
     173     TYPE_CMD = 362,
     174     STRINGTOK = 363,
     175     BLOCKTOK = 364,
     176     INT_CONST = 365,
     177     UNKNOWN_IDENT = 366,
     178     RINGVAR = 367,
     179     PROC_DEF = 368,
     180     BREAK_CMD = 369,
     181     CONTINUE_CMD = 370,
     182     ELSE_CMD = 371,
     183     EVAL = 372,
     184     QUOTE = 373,
     185     FOR_CMD = 374,
     186     IF_CMD = 375,
     187     SYS_BREAK = 376,
     188     WHILE_CMD = 377,
     189     RETURN = 378,
     190     PARAMETER = 379,
     191     SYSVAR = 380,
     192     UMINUS = 381
     193   };
     194#endif
     195/* Tokens.  */
     196#define DOTDOT 258
     197#define EQUAL_EQUAL 259
     198#define GE 260
     199#define LE 261
     200#define MINUSMINUS 262
     201#define NOT 263
     202#define NOTEQUAL 264
     203#define PLUSPLUS 265
     204#define COLONCOLON 266
     205#define GRING_CMD 267
     206#define INTMAT_CMD 268
     207#define PROC_CMD 269
     208#define RING_CMD 270
     209#define BEGIN_RING 271
     210#define IDEAL_CMD 272
     211#define MAP_CMD 273
     212#define MATRIX_CMD 274
     213#define MODUL_CMD 275
     214#define NUMBER_CMD 276
     215#define POLY_CMD 277
     216#define RESOLUTION_CMD 278
     217#define VECTOR_CMD 279
     218#define BETTI_CMD 280
     219#define CHINREM_CMD 281
     220#define COEFFS_CMD 282
     221#define COEF_CMD 283
     222#define CONTRACT_CMD 284
     223#define DEGREE_CMD 285
     224#define DEG_CMD 286
     225#define DIFF_CMD 287
     226#define DIM_CMD 288
     227#define DIVISION_CMD 289
     228#define ELIMINATION_CMD 290
     229#define E_CMD 291
     230#define FAREY_CMD 292
     231#define FETCH_CMD 293
     232#define FREEMODULE_CMD 294
     233#define KEEPRING_CMD 295
     234#define HILBERT_CMD 296
     235#define HOMOG_CMD 297
     236#define IMAP_CMD 298
     237#define INDEPSET_CMD 299
     238#define INTERRED_CMD 300
     239#define INTERSECT_CMD 301
     240#define JACOB_CMD 302
     241#define JET_CMD 303
     242#define KBASE_CMD 304
     243#define KOSZUL_CMD 305
     244#define LEADCOEF_CMD 306
     245#define LEADEXP_CMD 307
     246#define LEAD_CMD 308
     247#define LEADMONOM_CMD 309
     248#define LIFTSTD_CMD 310
     249#define LIFT_CMD 311
     250#define MAXID_CMD 312
     251#define MINBASE_CMD 313
     252#define MINOR_CMD 314
     253#define MINRES_CMD 315
     254#define MODULO_CMD 316
     255#define MRES_CMD 317
     256#define MULTIPLICITY_CMD 318
     257#define ORD_CMD 319
     258#define PAR_CMD 320
     259#define PARDEG_CMD 321
     260#define PREIMAGE_CMD 322
     261#define QUOTIENT_CMD 323
     262#define QHWEIGHT_CMD 324
     263#define REDUCE_CMD 325
     264#define REGULARITY_CMD 326
     265#define RES_CMD 327
     266#define SIMPLIFY_CMD 328
     267#define SORTVEC_CMD 329
     268#define SRES_CMD 330
     269#define STD_CMD 331
     270#define SUBST_CMD 332
     271#define SYZYGY_CMD 333
     272#define VAR_CMD 334
     273#define VDIM_CMD 335
     274#define WEDGE_CMD 336
     275#define WEIGHT_CMD 337
     276#define VALTVARS 338
     277#define VMAXDEG 339
     278#define VMAXMULT 340
     279#define VNOETHER 341
     280#define VMINPOLY 342
     281#define END_RING 343
     282#define CMD_1 344
     283#define CMD_2 345
     284#define CMD_3 346
     285#define CMD_12 347
     286#define CMD_13 348
     287#define CMD_23 349
     288#define CMD_123 350
     289#define CMD_M 351
     290#define ROOT_DECL 352
     291#define ROOT_DECL_LIST 353
     292#define RING_DECL 354
     293#define EXAMPLE_CMD 355
     294#define EXPORT_CMD 356
     295#define HELP_CMD 357
     296#define KILL_CMD 358
     297#define LIB_CMD 359
     298#define LISTVAR_CMD 360
     299#define SETRING_CMD 361
     300#define TYPE_CMD 362
     301#define STRINGTOK 363
     302#define BLOCKTOK 364
     303#define INT_CONST 365
     304#define UNKNOWN_IDENT 366
     305#define RINGVAR 367
     306#define PROC_DEF 368
     307#define BREAK_CMD 369
     308#define CONTINUE_CMD 370
     309#define ELSE_CMD 371
     310#define EVAL 372
     311#define QUOTE 373
     312#define FOR_CMD 374
     313#define IF_CMD 375
     314#define SYS_BREAK 376
     315#define WHILE_CMD 377
     316#define RETURN 378
     317#define PARAMETER 379
     318#define SYSVAR 380
     319#define UMINUS 381
     320
     321
     322
     323
     324/* Copy the first part of user declarations.  */
    130325#line 8 "grammar.y"
    131326
     
    310505}
    311506
     507
     508
     509/* Enabling traces.  */
    312510#ifndef YYDEBUG
    313 #define YYDEBUG 1
    314 #endif
    315 
    316 #include <stdio.h>
    317 
    318 #ifndef __cplusplus
    319 #ifndef __STDC__
    320 #define const
    321 #endif
    322 #endif
    323 
    324 
    325 
    326 #define YYFINAL         369
    327 #define YYFLAG          -32768
    328 #define YYNTBASE        142
    329 
    330 #define YYTRANSLATE(x) ((unsigned)(x) <= 378 ? yytranslate[x] : 185)
    331 
    332 static const short yytranslate[] = {     0,
    333      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
    334      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
    335      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
    336      2,     2,     2,     2,     2,     2,     2,   135,     2,   139,
    337    140,   137,   127,   133,   128,     2,   129,     2,     2,     2,
    338      2,     2,     2,     2,     2,     2,     2,   136,   134,   125,
    339    124,   126,     2,     2,     2,     2,     2,     2,     2,     2,
    340      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
    341      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
    342    130,     2,   131,   132,     2,   141,     2,     2,     2,     2,
    343      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
    344      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
    345      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
    346      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
    347      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
    348      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
    349      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
    350      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
    351      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
    352      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
    353      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
    354      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
    355      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
    356      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
    357      2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
    358      2,     2,     2,     2,     2,     1,     3,     4,     5,     6,
    359      7,     8,     9,    10,    11,    12,    13,    14,    15,    16,
    360     17,    18,    19,    20,    21,    22,    23,    24,    25,    26,
    361     27,    28,    29,    30,    31,    32,    33,    34,    35,    36,
    362     37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
    363     47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
    364     57,    58,    59,    60,    61,    62,    63,    64,    65,    66,
    365     67,    68,    69,    70,    71,    72,    73,    74,    75,    76,
    366     77,    78,    79,    80,    81,    82,    83,    84,    85,    86,
    367     87,    88,    89,    90,    91,    92,    93,    94,    95,    96,
    368     97,    98,    99,   100,   101,   102,   103,   104,   105,   106,
    369    107,   108,   109,   110,   111,   112,   113,   114,   115,   116,
    370    117,   118,   119,   120,   121,   122,   123,   138
     511# define YYDEBUG 1
     512#endif
     513
     514/* Enabling verbose error messages.  */
     515#ifdef YYERROR_VERBOSE
     516# undef YYERROR_VERBOSE
     517# define YYERROR_VERBOSE 1
     518#else
     519# define YYERROR_VERBOSE 0
     520#endif
     521
     522/* Enabling the token table.  */
     523#ifndef YYTOKEN_TABLE
     524# define YYTOKEN_TABLE 0
     525#endif
     526
     527#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
     528typedef int YYSTYPE;
     529# define yystype YYSTYPE /* obsolescent; will be withdrawn */
     530# define YYSTYPE_IS_DECLARED 1
     531# define YYSTYPE_IS_TRIVIAL 1
     532#endif
     533
     534
     535
     536/* Copy the second part of user declarations.  */
     537
     538
     539/* Line 216 of yacc.c.  */
     540#line 541 "grammar.cc"
     541
     542#ifdef short
     543# undef short
     544#endif
     545
     546#ifdef YYTYPE_UINT8
     547typedef YYTYPE_UINT8 yytype_uint8;
     548#else
     549typedef unsigned char yytype_uint8;
     550#endif
     551
     552#ifdef YYTYPE_INT8
     553typedef YYTYPE_INT8 yytype_int8;
     554#elif (defined __STDC__ || defined __C99__FUNC__ \
     555     || defined __cplusplus || defined _MSC_VER)
     556typedef signed char yytype_int8;
     557#else
     558typedef short int yytype_int8;
     559#endif
     560
     561#ifdef YYTYPE_UINT16
     562typedef YYTYPE_UINT16 yytype_uint16;
     563#else
     564typedef unsigned short int yytype_uint16;
     565#endif
     566
     567#ifdef YYTYPE_INT16
     568typedef YYTYPE_INT16 yytype_int16;
     569#else
     570typedef short int yytype_int16;
     571#endif
     572
     573#ifndef YYSIZE_T
     574# ifdef __SIZE_TYPE__
     575#  define YYSIZE_T __SIZE_TYPE__
     576# elif defined size_t
     577#  define YYSIZE_T size_t
     578# elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \
     579     || defined __cplusplus || defined _MSC_VER)
     580#  include <stddef.h> /* INFRINGES ON USER NAME SPACE */
     581#  define YYSIZE_T size_t
     582# else
     583#  define YYSIZE_T unsigned int
     584# endif
     585#endif
     586
     587#define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
     588
     589#ifndef YY_
     590# if YYENABLE_NLS
     591#  if ENABLE_NLS
     592#   include <libintl.h> /* INFRINGES ON USER NAME SPACE */
     593#   define YY_(msgid) dgettext ("bison-runtime", msgid)
     594#  endif
     595# endif
     596# ifndef YY_
     597#  define YY_(msgid) msgid
     598# endif
     599#endif
     600
     601/* Suppress unused-variable warnings by "using" E.  */
     602#if ! defined lint || defined __GNUC__
     603# define YYUSE(e) ((void) (e))
     604#else
     605# define YYUSE(e) /* empty */
     606#endif
     607
     608/* Identity function, used to suppress warnings about constant conditions.  */
     609#ifndef lint
     610# define YYID(n) (n)
     611#else
     612#if (defined __STDC__ || defined __C99__FUNC__ \
     613     || defined __cplusplus || defined _MSC_VER)
     614static int
     615YYID (int i)
     616#else
     617static int
     618YYID (i)
     619    int i;
     620#endif
     621{
     622  return i;
     623}
     624#endif
     625
     626#if ! defined yyoverflow || YYERROR_VERBOSE
     627
     628/* The parser invokes alloca or malloc; define the necessary symbols.  */
     629
     630# ifdef YYSTACK_USE_ALLOCA
     631#  if YYSTACK_USE_ALLOCA
     632#   ifdef __GNUC__
     633#    define YYSTACK_ALLOC __builtin_alloca
     634#   elif defined __BUILTIN_VA_ARG_INCR
     635#    include <alloca.h> /* INFRINGES ON USER NAME SPACE */
     636#   elif defined _AIX
     637#    define YYSTACK_ALLOC __alloca
     638#   elif defined _MSC_VER
     639#    include <malloc.h> /* INFRINGES ON USER NAME SPACE */
     640#    define alloca _alloca
     641#   else
     642#    define YYSTACK_ALLOC alloca
     643#    if ! defined _ALLOCA_H && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
     644     || defined __cplusplus || defined _MSC_VER)
     645#     include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
     646#     ifndef _STDLIB_H
     647#      define _STDLIB_H 1
     648#     endif
     649#    endif
     650#   endif
     651#  endif
     652# endif
     653
     654# ifdef YYSTACK_ALLOC
     655   /* Pacify GCC's `empty if-body' warning.  */
     656#  define YYSTACK_FREE(Ptr) do { /* empty */; } while (YYID (0))
     657#  ifndef YYSTACK_ALLOC_MAXIMUM
     658    /* The OS might guarantee only one guard page at the bottom of the stack,
     659       and a page size can be as small as 4096 bytes.  So we cannot safely
     660       invoke alloca (N) if N exceeds 4096.  Use a slightly smaller number
     661       to allow for a few compiler-allocated temporary stack slots.  */
     662#   define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */
     663#  endif
     664# else
     665#  define YYSTACK_ALLOC YYMALLOC
     666#  define YYSTACK_FREE YYFREE
     667#  ifndef YYSTACK_ALLOC_MAXIMUM
     668#   define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
     669#  endif
     670#  if (defined __cplusplus && ! defined _STDLIB_H \
     671       && ! ((defined YYMALLOC || defined malloc) \
     672             && (defined YYFREE || defined free)))
     673#   include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
     674#   ifndef _STDLIB_H
     675#    define _STDLIB_H 1
     676#   endif
     677#  endif
     678#  ifndef YYMALLOC
     679#   define YYMALLOC malloc
     680#   if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
     681     || defined __cplusplus || defined _MSC_VER)
     682void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
     683#   endif
     684#  endif
     685#  ifndef YYFREE
     686#   define YYFREE free
     687#   if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
     688     || defined __cplusplus || defined _MSC_VER)
     689void free (void *); /* INFRINGES ON USER NAME SPACE */
     690#   endif
     691#  endif
     692# endif
     693#endif /* ! defined yyoverflow || YYERROR_VERBOSE */
     694
     695
     696#if (! defined yyoverflow \
     697     && (! defined __cplusplus \
     698         || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
     699
     700/* A type that is properly aligned for any stack member.  */
     701union yyalloc
     702{
     703  yytype_int16 yyss;
     704  YYSTYPE yyvs;
     705  };
     706
     707/* The size of the maximum gap between one aligned stack and the next.  */
     708# define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
     709
     710/* The size of an array large to enough to hold all stacks, each with
     711   N elements.  */
     712# define YYSTACK_BYTES(N) \
     713     ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \
     714      + YYSTACK_GAP_MAXIMUM)
     715
     716/* Copy COUNT objects from FROM to TO.  The source and destination do
     717   not overlap.  */
     718# ifndef YYCOPY
     719#  if defined __GNUC__ && 1 < __GNUC__
     720#   define YYCOPY(To, From, Count) \
     721      __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
     722#  else
     723#   define YYCOPY(To, From, Count)              \
     724      do                                        \
     725        {                                       \
     726          YYSIZE_T yyi;                         \
     727          for (yyi = 0; yyi < (Count); yyi++)   \
     728            (To)[yyi] = (From)[yyi];            \
     729        }                                       \
     730      while (YYID (0))
     731#  endif
     732# endif
     733
     734/* Relocate STACK from its old location to the new one.  The
     735   local variables YYSIZE and YYSTACKSIZE give the old and new number of
     736   elements in the stack, and YYPTR gives the new location of the
     737   stack.  Advance YYPTR to a properly aligned location for the next
     738   stack.  */
     739# define YYSTACK_RELOCATE(Stack)                                        \
     740    do                                                                  \
     741      {                                                                 \
     742        YYSIZE_T yynewbytes;                                            \
     743        YYCOPY (&yyptr->Stack, Stack, yysize);                          \
     744        Stack = &yyptr->Stack;                                          \
     745        yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
     746        yyptr += yynewbytes / sizeof (*yyptr);                          \
     747      }                                                                 \
     748    while (YYID (0))
     749
     750#endif
     751
     752/* YYFINAL -- State number of the termination state.  */
     753#define YYFINAL  2
     754/* YYLAST -- Last index in YYTABLE.  */
     755#define YYLAST   1881
     756
     757/* YYNTOKENS -- Number of terminals.  */
     758#define YYNTOKENS  144
     759/* YYNNTS -- Number of nonterminals.  */
     760#define YYNNTS  44
     761/* YYNRULES -- Number of rules.  */
     762#define YYNRULES  167
     763/* YYNRULES -- Number of states.  */
     764#define YYNSTATES  369
     765
     766/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX.  */
     767#define YYUNDEFTOK  2
     768#define YYMAXUTOK   381
     769
     770#define YYTRANSLATE(YYX)                                                \
     771  ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
     772
     773/* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX.  */
     774static const yytype_uint8 yytranslate[] =
     775{
     776       0,     2,     2,     2,     2,     2,     2,     2,     2,     2,
     777       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
     778       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
     779       2,     2,     2,     2,     2,     2,     2,     2,   137,     2,
     780     141,   142,   139,   129,   135,   130,     2,   131,     2,     2,
     781       2,     2,     2,     2,     2,     2,     2,     2,   138,   136,
     782     127,   126,   128,     2,     2,     2,     2,     2,     2,     2,
     783       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
     784       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
     785       2,   132,     2,   133,   134,     2,   143,     2,     2,     2,
     786       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
     787       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
     788       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
     789       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
     790       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
     791       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
     792       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
     793       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
     794       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
     795       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
     796       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
     797       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
     798       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
     799       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
     800       2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
     801       2,     2,     2,     2,     2,     2,     1,     2,     3,     4,
     802       5,     6,     7,     8,     9,    10,    11,    12,    13,    14,
     803      15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
     804      25,    26,    27,    28,    29,    30,    31,    32,    33,    34,
     805      35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
     806      45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
     807      55,    56,    57,    58,    59,    60,    61,    62,    63,    64,
     808      65,    66,    67,    68,    69,    70,    71,    72,    73,    74,
     809      75,    76,    77,    78,    79,    80,    81,    82,    83,    84,
     810      85,    86,    87,    88,    89,    90,    91,    92,    93,    94,
     811      95,    96,    97,    98,    99,   100,   101,   102,   103,   104,
     812     105,   106,   107,   108,   109,   110,   111,   112,   113,   114,
     813     115,   116,   117,   118,   119,   120,   121,   122,   123,   124,
     814     125,   140
    371815};
    372816
    373 #if YYDEBUG != 0
    374 static const short yyprhs[] = {     0,
    375      0,     1,     4,     6,     9,    12,    14,    16,    18,    21,
    376     23,    25,    27,    29,    31,    33,    35,    37,    40,    42,
    377     44,    46,    48,    50,    52,    54,    56,    58,    61,    63,
    378     65,    69,    73,    78,    82,    84,    86,    88,    92,    94,
    379     96,    98,   102,   109,   114,   119,   124,   128,   133,   138,
    380    142,   147,   154,   163,   170,   179,   184,   189,   196,   201,
    381    208,   217,   226,   230,   235,   244,   249,   258,   263,   272,
    382    277,   281,   287,   288,   294,   297,   299,   302,   305,   309,
    383    313,   317,   321,   325,   329,   333,   337,   341,   345,   348,
    384    351,   354,   357,   359,   363,   365,   367,   370,   373,   376,
    385    379,   388,   391,   400,   403,   407,   410,   412,   414,   420,
    386    422,   424,   429,   431,   435,   437,   441,   443,   444,   449,
    387    453,   456,   460,   463,   466,   470,   475,   480,   485,   490,
    388    495,   500,   505,   510,   515,   522,   529,   536,   543,   550,
    389    557,   564,   571,   575,   577,   586,   589,   592,   594,   596,
    390    599,   602,   604,   610,   613,   619,   621,   623,   627,   633,
    391    637,   641,   646,   649,   652,   657
     817#if YYDEBUG
     818/* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in
     819   YYRHS.  */
     820static const yytype_uint16 yyprhs[] =
     821{
     822       0,     0,     3,     4,     7,     9,    12,    15,    17,    19,
     823      21,    24,    26,    28,    30,    32,    34,    36,    38,    40,
     824      43,    45,    47,    49,    51,    53,    55,    57,    59,    61,
     825      64,    66,    68,    72,    76,    81,    85,    87,    89,    91,
     826      95,    97,    99,   101,   105,   112,   117,   122,   127,   131,
     827     136,   141,   145,   150,   157,   166,   173,   182,   187,   192,
     828     199,   204,   211,   220,   229,   233,   238,   247,   252,   261,
     829     266,   275,   280,   284,   290,   291,   297,   300,   302,   305,
     830     308,   312,   316,   320,   324,   328,   332,   336,   340,   344,
     831     348,   351,   354,   357,   360,   362,   366,   368,   370,   373,
     832     376,   379,   382,   391,   394,   403,   406,   410,   413,   415,
     833     417,   423,   425,   427,   432,   434,   438,   440,   444,   446,
     834     447,   452,   456,   459,   463,   466,   469,   473,   478,   483,
     835     488,   493,   498,   503,   508,   513,   518,   525,   532,   539,
     836     546,   553,   560,   567,   574,   578,   580,   589,   592,   595,
     837     597,   599,   602,   605,   607,   613,   616,   622,   624,   626,
     838     630,   636,   640,   644,   649,   652,   655,   660
    392839};
    393840
    394 static const short yyrhs[] = {    -1,
    395    142,   143,     0,   144,     0,   146,   134,     0,   158,   134,
    396      0,   184,     0,   119,     0,   134,     0,     1,   134,     0,
    397    179,     0,   180,     0,   145,     0,   181,     0,   182,     0,
    398    166,     0,   168,     0,   169,     0,    98,   107,     0,   147,
    399      0,   170,     0,   171,     0,   172,     0,   183,     0,   174,
    400      0,   175,     0,   177,     0,   178,     0,   155,   149,     0,
    401    110,     0,   156,     0,   148,    11,   148,     0,   148,   139,
    402    140,     0,   148,   139,   149,   140,     0,   130,   149,   131,
    403      0,   108,     0,   123,     0,   159,     0,   149,   133,   150,
    404      0,   150,     0,   154,     0,   148,     0,   139,   149,   140,
    405      0,   150,   130,   150,   133,   150,   131,     0,   150,   130,
    406    150,   131,     0,    95,   139,   150,   140,     0,    96,   139,
    407    149,   140,     0,    96,   139,   140,     0,    97,   139,   150,
    408    140,     0,   157,   139,   149,   140,     0,   157,   139,   140,
    409      0,    87,   139,   150,   140,     0,    88,   139,   150,   133,
    410    150,   140,     0,    89,   139,   150,   133,   150,   133,   150,
    411    140,     0,    92,   139,   150,   133,   150,   140,     0,    92,
    412    139,   150,   133,   150,   133,   150,   140,     0,    90,   139,
    413    150,   140,     0,    91,   139,   150,   140,     0,    90,   139,
    414    150,   133,   150,   140,     0,    93,   139,   150,   140,     0,
    415     93,   139,   150,   133,   150,   140,     0,    91,   139,   150,
    416    133,   150,   133,   150,   140,     0,    93,   139,   150,   133,
    417    150,   133,   150,   140,     0,    94,   139,   140,     0,    94,
    418    139,   149,   140,     0,    19,   139,   150,   133,   150,   133,
    419    150,   140,     0,    19,   139,   150,   140,     0,    13,   139,
    420    150,   133,   150,   133,   150,   140,     0,    13,   139,   150,
    421    140,     0,    15,   139,   160,   133,   160,   133,   164,   140,
    422      0,    15,   139,   150,   140,     0,   152,   150,   153,     0,
    423    152,   150,   124,   150,   153,     0,     0,   115,   139,   151,
    424    150,   140,     0,   116,   139,     0,   140,     0,   150,    10,
    425      0,   150,     7,     0,   150,   127,   150,     0,   150,   128,
    426    150,     0,   150,   129,   150,     0,   150,   132,   150,     0,
    427    150,   125,   150,     0,   150,   135,   150,     0,   150,     9,
    428    150,     0,   150,     4,   150,     0,   150,     3,   150,     0,
    429    150,   136,   150,     0,     8,   150,     0,   128,   150,     0,
    430    158,   165,     0,   149,   124,     0,   109,     0,   141,   150,
    431    141,     0,    17,     0,    20,     0,    95,   148,     0,    96,
    432    148,     0,    97,   148,     0,   157,   148,     0,    19,   148,
    433    130,   150,   131,   130,   150,   131,     0,    19,   148,     0,
    434     13,   148,   130,   150,   131,   130,   150,   131,     0,    13,
    435    148,     0,   158,   133,   148,     0,    14,   148,     0,   106,
    436      0,   150,     0,   139,   150,   133,   149,   140,     0,   109,
    437      0,   161,     0,   161,   139,   149,   140,     0,   162,     0,
    438    162,   133,   163,     0,   162,     0,   139,   163,   140,     0,
    439    124,     0,     0,   125,   159,   167,   134,     0,   100,   106,
    440    134,     0,   100,   134,     0,    98,   106,   134,     0,    99,
    441    149,     0,   101,   148,     0,   171,   133,   148,     0,   103,
    442    139,    95,   140,     0,   103,   139,    96,   140,     0,   103,
    443    139,    97,   140,     0,   103,   139,   157,   140,     0,   103,
    444    139,    15,   140,     0,   103,   139,    19,   140,     0,   103,
    445    139,    13,   140,     0,   103,   139,    14,   140,     0,   103,
    446    139,   148,   140,     0,   103,   139,   148,   133,    95,   140,
    447      0,   103,   139,   148,   133,    96,   140,     0,   103,   139,
    448    148,   133,    97,   140,     0,   103,   139,   148,   133,   157,
    449    140,     0,   103,   139,   148,   133,    15,   140,     0,   103,
    450    139,   148,   133,    19,   140,     0,   103,   139,   148,   133,
    451     13,   140,     0,   103,   139,   148,   133,    14,   140,     0,
    452    103,   139,   140,     0,    15,     0,   173,   148,   165,   160,
    453    133,   160,   133,   164,     0,   173,   148,     0,   123,   159,
    454      0,   104,     0,    38,     0,   176,   150,     0,   105,   150,
    455      0,   149,     0,   118,   139,   150,   140,   107,     0,   114,
    456    107,     0,   118,   139,   150,   140,   112,     0,   112,     0,
    457    113,     0,   120,   106,   107,     0,   117,   106,   106,   106,
    458    107,     0,    14,   156,   107,     0,   111,   106,   107,     0,
    459    111,   106,   106,   107,     0,   122,   158,     0,   122,   150,
    460      0,   121,   139,   149,   140,     0,   121,   139,   140,     0
     841/* YYRHS -- A `-1'-separated list of the rules' RHS.  */
     842static const yytype_int16 yyrhs[] =
     843{
     844     145,     0,    -1,    -1,   145,   146,    -1,   147,    -1,   149,
     845     136,    -1,   161,   136,    -1,   187,    -1,   121,    -1,   136,
     846      -1,     1,   136,    -1,   182,    -1,   183,    -1,   148,    -1,
     847     184,    -1,   185,    -1,   169,    -1,   171,    -1,   172,    -1,
     848     100,   109,    -1,   150,    -1,   173,    -1,   174,    -1,   175,
     849      -1,   186,    -1,   177,    -1,   178,    -1,   180,    -1,   181,
     850      -1,   158,   152,    -1,   112,    -1,   159,    -1,   151,    11,
     851     151,    -1,   151,   141,   142,    -1,   151,   141,   152,   142,
     852      -1,   132,   152,   133,    -1,   110,    -1,   125,    -1,   162,
     853      -1,   152,   135,   153,    -1,   153,    -1,   157,    -1,   151,
     854      -1,   141,   152,   142,    -1,   153,   132,   153,   135,   153,
     855     133,    -1,   153,   132,   153,   133,    -1,    97,   141,   153,
     856     142,    -1,    98,   141,   152,   142,    -1,    98,   141,   142,
     857      -1,    99,   141,   153,   142,    -1,   160,   141,   152,   142,
     858      -1,   160,   141,   142,    -1,    89,   141,   153,   142,    -1,
     859      90,   141,   153,   135,   153,   142,    -1,    91,   141,   153,
     860     135,   153,   135,   153,   142,    -1,    94,   141,   153,   135,
     861     153,   142,    -1,    94,   141,   153,   135,   153,   135,   153,
     862     142,    -1,    92,   141,   153,   142,    -1,    93,   141,   153,
     863     142,    -1,    92,   141,   153,   135,   153,   142,    -1,    95,
     864     141,   153,   142,    -1,    95,   141,   153,   135,   153,   142,
     865      -1,    93,   141,   153,   135,   153,   135,   153,   142,    -1,
     866      95,   141,   153,   135,   153,   135,   153,   142,    -1,    96,
     867     141,   142,    -1,    96,   141,   152,   142,    -1,    19,   141,
     868     153,   135,   153,   135,   153,   142,    -1,    19,   141,   153,
     869     142,    -1,    13,   141,   153,   135,   153,   135,   153,   142,
     870      -1,    13,   141,   153,   142,    -1,    15,   141,   163,   135,
     871     163,   135,   167,   142,    -1,    15,   141,   153,   142,    -1,
     872     155,   153,   156,    -1,   155,   153,   126,   153,   156,    -1,
     873      -1,   117,   141,   154,   153,   142,    -1,   118,   141,    -1,
     874     142,    -1,   153,    10,    -1,   153,     7,    -1,   153,   129,
     875     153,    -1,   153,   130,   153,    -1,   153,   131,   153,    -1,
     876     153,   134,   153,    -1,   153,   127,   153,    -1,   153,   137,
     877     153,    -1,   153,     9,   153,    -1,   153,     4,   153,    -1,
     878     153,     3,   153,    -1,   153,   138,   153,    -1,     8,   153,
     879      -1,   130,   153,    -1,   161,   168,    -1,   152,   126,    -1,
     880     111,    -1,   143,   153,   143,    -1,    17,    -1,    20,    -1,
     881      97,   151,    -1,    98,   151,    -1,    99,   151,    -1,   160,
     882     151,    -1,    19,   151,   132,   153,   133,   132,   153,   133,
     883      -1,    19,   151,    -1,    13,   151,   132,   153,   133,   132,
     884     153,   133,    -1,    13,   151,    -1,   161,   135,   151,    -1,
     885      14,   151,    -1,   108,    -1,   153,    -1,   141,   153,   135,
     886     152,   142,    -1,   111,    -1,   164,    -1,   164,   141,   152,
     887     142,    -1,   165,    -1,   165,   135,   166,    -1,   165,    -1,
     888     141,   166,   142,    -1,   126,    -1,    -1,   127,   162,   170,
     889     136,    -1,   102,   108,   136,    -1,   102,   136,    -1,   100,
     890     108,   136,    -1,   101,   152,    -1,   103,   151,    -1,   174,
     891     135,   151,    -1,   105,   141,    97,   142,    -1,   105,   141,
     892      98,   142,    -1,   105,   141,    99,   142,    -1,   105,   141,
     893     160,   142,    -1,   105,   141,    15,   142,    -1,   105,   141,
     894      19,   142,    -1,   105,   141,    13,   142,    -1,   105,   141,
     895      14,   142,    -1,   105,   141,   151,   142,    -1,   105,   141,
     896     151,   135,    97,   142,    -1,   105,   141,   151,   135,    98,
     897     142,    -1,   105,   141,   151,   135,    99,   142,    -1,   105,
     898     141,   151,   135,   160,   142,    -1,   105,   141,   151,   135,
     899      15,   142,    -1,   105,   141,   151,   135,    19,   142,    -1,
     900     105,   141,   151,   135,    13,   142,    -1,   105,   141,   151,
     901     135,    14,   142,    -1,   105,   141,   142,    -1,    15,    -1,
     902     176,   151,   168,   163,   135,   163,   135,   167,    -1,   176,
     903     151,    -1,   125,   162,    -1,   106,    -1,    40,    -1,   179,
     904     153,    -1,   107,   153,    -1,   152,    -1,   120,   141,   153,
     905     142,   109,    -1,   116,   109,    -1,   120,   141,   153,   142,
     906     114,    -1,   114,    -1,   115,    -1,   122,   108,   109,    -1,
     907     119,   108,   108,   108,   109,    -1,    14,   159,   109,    -1,
     908     113,   108,   109,    -1,   113,   108,   108,   109,    -1,   124,
     909     161,    -1,   124,   153,    -1,   123,   141,   152,   142,    -1,
     910     123,   141,   142,    -1
    461911};
    462912
    463 #endif
    464 
    465 #if YYDEBUG != 0
    466 static const short yyrline[] = { 0,
    467    366,   368,   402,   404,   406,   408,   412,   417,   419,   467,
    468    468,   469,   470,   471,   472,   473,   474,   478,   481,   482,
    469    483,   484,   485,   486,   487,   488,   489,   492,   498,   504,
    470    508,   512,   516,   536,   564,   588,   594,   602,   614,   620,
    471    625,   626,   627,   631,   635,   639,   643,   647,   651,   655,
    472    659,   663,   667,   671,   675,   679,   683,   687,   691,   695,
    473    699,   703,   707,   711,   715,   719,   723,   727,   731,   735,
    474    739,   743,   760,   766,   778,   786,   794,   799,   803,   807,
    475    811,   815,   819,   823,   827,   831,   835,   839,   843,   850,
    476    856,   858,   876,   878,   889,   890,   894,   900,   905,   909,
    477    913,   929,   933,   949,   963,   984,   991,   995,   997,  1010,
    478   1018,  1028,  1072,  1074,  1082,  1084,  1090,  1101,  1106,  1109,
    479   1115,  1121,  1129,  1141,  1158,  1176,  1181,  1185,  1190,  1194,
    480   1198,  1202,  1206,  1210,  1215,  1221,  1227,  1233,  1239,  1245,
    481   1251,  1257,  1269,  1275,  1279,  1318,  1327,  1341,  1341,  1343,
    482   1419,  1426,  1455,  1468,  1485,  1494,  1499,  1506,  1518,  1537,
    483   1549,  1569,  1592,  1599,  1610,  1618
     913/* YYRLINE[YYN] -- source line where rule number YYN was defined.  */
     914static const yytype_uint16 yyrline[] =
     915{
     916       0,   368,   368,   370,   405,   406,   408,   410,   414,   419,
     917     421,   469,   470,   471,   472,   473,   474,   475,   476,   480,
     918     483,   484,   485,   486,   487,   488,   489,   490,   491,   494,
     919     501,   506,   510,   514,   518,   538,   566,   590,   596,   605,
     920     616,   622,   627,   628,   629,   633,   637,   641,   645,   649,
     921     653,   657,   661,   665,   669,   673,   677,   681,   685,   689,
     922     693,   697,   701,   705,   709,   713,   717,   721,   725,   729,
     923     733,   737,   741,   745,   763,   762,   780,   788,   797,   801,
     924     805,   809,   813,   817,   821,   825,   829,   833,   837,   841,
     925     845,   852,   859,   860,   879,   880,   892,   892,   897,   902,
     926     907,   911,   915,   931,   935,   951,   965,   986,   994,   998,
     927     999,  1013,  1021,  1030,  1075,  1076,  1085,  1086,  1092,  1105,
     928    1104,  1112,  1117,  1124,  1132,  1144,  1160,  1179,  1183,  1187,
     929    1192,  1196,  1200,  1204,  1208,  1212,  1217,  1223,  1229,  1235,
     930    1241,  1247,  1253,  1259,  1271,  1278,  1282,  1320,  1330,  1343,
     931    1343,  1346,  1422,  1428,  1457,  1470,  1487,  1496,  1501,  1509,
     932    1521,  1540,  1551,  1571,  1595,  1601,  1613,  1620
    484933};
    485934#endif
    486935
    487 
    488 #if YYDEBUG != 0 || defined (YYERROR_VERBOSE)
    489 
    490 static const char * const yytname[] = {   "$","error","$undefined.","DOTDOT",
    491 "EQUAL_EQUAL","GE","LE","MINUSMINUS","NOT","NOTEQUAL","PLUSPLUS","COLONCOLON",
    492 "GRING_CMD","INTMAT_CMD","PROC_CMD","RING_CMD","BEGIN_RING","IDEAL_CMD","MAP_CMD",
    493 "MATRIX_CMD","MODUL_CMD","NUMBER_CMD","POLY_CMD","RESOLUTION_CMD","VECTOR_CMD",
    494 "BETTI_CMD","COEFFS_CMD","COEF_CMD","CONTRACT_CMD","DEGREE_CMD","DEG_CMD","DIFF_CMD",
    495 "DIM_CMD","DIVISION_CMD","ELIMINATION_CMD","E_CMD","FETCH_CMD","FREEMODULE_CMD",
    496 "KEEPRING_CMD","HILBERT_CMD","HOMOG_CMD","IMAP_CMD","INDEPSET_CMD","INTERRED_CMD",
    497 "INTERSECT_CMD","JACOB_CMD","JET_CMD","KBASE_CMD","KOSZUL_CMD","LEADCOEF_CMD",
    498 "LEADEXP_CMD","LEAD_CMD","LEADMONOM_CMD","LIFTSTD_CMD","LIFT_CMD","MAXID_CMD",
    499 "MINBASE_CMD","MINOR_CMD","MINRES_CMD","MODULO_CMD","MRES_CMD","MULTIPLICITY_CMD",
    500 "ORD_CMD","PAR_CMD","PARDEG_CMD","PREIMAGE_CMD","QUOTIENT_CMD","QHWEIGHT_CMD",
    501 "REDUCE_CMD","REGULARITY_CMD","RES_CMD","SIMPLIFY_CMD","SORTVEC_CMD","SRES_CMD",
    502 "STD_CMD","SUBST_CMD","SYZYGY_CMD","VAR_CMD","VDIM_CMD","WEDGE_CMD","WEIGHT_CMD",
    503 "VALTVARS","VMAXDEG","VMAXMULT","VNOETHER","VMINPOLY","END_RING","CMD_1","CMD_2",
    504 "CMD_3","CMD_12","CMD_13","CMD_23","CMD_123","CMD_M","ROOT_DECL","ROOT_DECL_LIST",
    505 "RING_DECL","EXAMPLE_CMD","EXPORT_CMD","HELP_CMD","KILL_CMD","LIB_CMD","LISTVAR_CMD",
    506 "SETRING_CMD","TYPE_CMD","STRINGTOK","BLOCKTOK","INT_CONST","UNKNOWN_IDENT",
    507 "RINGVAR","PROC_DEF","BREAK_CMD","CONTINUE_CMD","ELSE_CMD","EVAL","QUOTE","FOR_CMD",
    508 "IF_CMD","SYS_BREAK","WHILE_CMD","RETURN","PARAMETER","SYSVAR","'='","'<'","'>'",
    509 "'+'","'-'","'/'","'['","']'","'^'","','","';'","'&'","':'","'*'","UMINUS","'('",
    510 "')'","'`'","lines","pprompt","flowctrl","example_dummy","command","assign",
    511 "elemexpr","exprlist","expr","@1","quote_start","quote_end","expr_arithmetic",
    512 "left_value","extendedid","currring_lists","declare_ip_variable","stringexpr",
    513 "rlist","ordername","orderelem","OrderingList","ordering","cmdeq","filecmd",
    514 "@2","helpcmd","examplecmd","exportcmd","killcmd","listcmd","ringcmd1","ringcmd",
    515 "scriptcmd","setrings","setringcmd","typecmd","ifcmd","whilecmd","forcmd","proccmd",
    516 "parametercmd","returncmd", NULL
     936#if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
     937/* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
     938   First, the terminals, then, starting at YYNTOKENS, nonterminals.  */
     939static const char *const yytname[] =
     940{
     941  "$end", "error", "$undefined", "DOTDOT", "EQUAL_EQUAL", "GE", "LE",
     942  "MINUSMINUS", "NOT", "NOTEQUAL", "PLUSPLUS", "COLONCOLON", "GRING_CMD",
     943  "INTMAT_CMD", "PROC_CMD", "RING_CMD", "BEGIN_RING", "IDEAL_CMD",
     944  "MAP_CMD", "MATRIX_CMD", "MODUL_CMD", "NUMBER_CMD", "POLY_CMD",
     945  "RESOLUTION_CMD", "VECTOR_CMD", "BETTI_CMD", "CHINREM_CMD", "COEFFS_CMD",
     946  "COEF_CMD", "CONTRACT_CMD", "DEGREE_CMD", "DEG_CMD", "DIFF_CMD",
     947  "DIM_CMD", "DIVISION_CMD", "ELIMINATION_CMD", "E_CMD", "FAREY_CMD",
     948  "FETCH_CMD", "FREEMODULE_CMD", "KEEPRING_CMD", "HILBERT_CMD",
     949  "HOMOG_CMD", "IMAP_CMD", "INDEPSET_CMD", "INTERRED_CMD", "INTERSECT_CMD",
     950  "JACOB_CMD", "JET_CMD", "KBASE_CMD", "KOSZUL_CMD", "LEADCOEF_CMD",
     951  "LEADEXP_CMD", "LEAD_CMD", "LEADMONOM_CMD", "LIFTSTD_CMD", "LIFT_CMD",
     952  "MAXID_CMD", "MINBASE_CMD", "MINOR_CMD", "MINRES_CMD", "MODULO_CMD",
     953  "MRES_CMD", "MULTIPLICITY_CMD", "ORD_CMD", "PAR_CMD", "PARDEG_CMD",
     954  "PREIMAGE_CMD", "QUOTIENT_CMD", "QHWEIGHT_CMD", "REDUCE_CMD",
     955  "REGULARITY_CMD", "RES_CMD", "SIMPLIFY_CMD", "SORTVEC_CMD", "SRES_CMD",
     956  "STD_CMD", "SUBST_CMD", "SYZYGY_CMD", "VAR_CMD", "VDIM_CMD", "WEDGE_CMD",
     957  "WEIGHT_CMD", "VALTVARS", "VMAXDEG", "VMAXMULT", "VNOETHER", "VMINPOLY",
     958  "END_RING", "CMD_1", "CMD_2", "CMD_3", "CMD_12", "CMD_13", "CMD_23",
     959  "CMD_123", "CMD_M", "ROOT_DECL", "ROOT_DECL_LIST", "RING_DECL",
     960  "EXAMPLE_CMD", "EXPORT_CMD", "HELP_CMD", "KILL_CMD", "LIB_CMD",
     961  "LISTVAR_CMD", "SETRING_CMD", "TYPE_CMD", "STRINGTOK", "BLOCKTOK",
     962  "INT_CONST", "UNKNOWN_IDENT", "RINGVAR", "PROC_DEF", "BREAK_CMD",
     963  "CONTINUE_CMD", "ELSE_CMD", "EVAL", "QUOTE", "FOR_CMD", "IF_CMD",
     964  "SYS_BREAK", "WHILE_CMD", "RETURN", "PARAMETER", "SYSVAR", "'='", "'<'",
     965  "'>'", "'+'", "'-'", "'/'", "'['", "']'", "'^'", "','", "';'", "'&'",
     966  "':'", "'*'", "UMINUS", "'('", "')'", "'`'", "$accept", "lines",
     967  "pprompt", "flowctrl", "example_dummy", "command", "assign", "elemexpr",
     968  "exprlist", "expr", "@1", "quote_start", "quote_end", "expr_arithmetic",
     969  "left_value", "extendedid", "currring_lists", "declare_ip_variable",
     970  "stringexpr", "rlist", "ordername", "orderelem", "OrderingList",
     971  "ordering", "cmdeq", "filecmd", "@2", "helpcmd", "examplecmd",
     972  "exportcmd", "killcmd", "listcmd", "ringcmd1", "ringcmd", "scriptcmd",
     973  "setrings", "setringcmd", "typecmd", "ifcmd", "whilecmd", "forcmd",
     974  "proccmd", "parametercmd", "returncmd", 0
    517975};
    518976#endif
    519977
    520 static const short yyr1[] = {     0,
    521    142,   142,   143,   143,   143,   143,   143,   143,   143,   144,
    522    144,   144,   144,   144,   144,   144,   144,   145,   146,   146,
    523    146,   146,   146,   146,   146,   146,   146,   147,   148,   148,
    524    148,   148,   148,   148,   148,   148,   148,   149,   149,   150,
    525    150,   150,   150,   150,   150,   150,   150,   150,   150,   150,
    526    150,   150,   150,   150,   150,   150,   150,   150,   150,   150,
    527    150,   150,   150,   150,   150,   150,   150,   150,   150,   150,
    528    150,   150,   151,   150,   152,   153,   154,   154,   154,   154,
    529    154,   154,   154,   154,   154,   154,   154,   154,   154,   154,
    530    155,   155,   156,   156,   157,   157,   158,   158,   158,   158,
    531    158,   158,   158,   158,   158,   158,   159,   160,   160,   161,
    532    162,   162,   163,   163,   164,   164,   165,   167,   166,   168,
    533    168,   169,   170,   171,   171,   172,   172,   172,   172,   172,
    534    172,   172,   172,   172,   172,   172,   172,   172,   172,   172,
    535    172,   172,   172,   173,   174,   174,   175,   176,   176,   177,
    536    178,   178,   179,   179,   179,   179,   179,   180,   181,   182,
    537    182,   182,   183,   183,   184,   184
     978# ifdef YYPRINT
     979/* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to
     980   token YYLEX-NUM.  */
     981static const yytype_uint16 yytoknum[] =
     982{
     983       0,   256,   257,   258,   259,   260,   261,   262,   263,   264,
     984     265,   266,   267,   268,   269,   270,   271,   272,   273,   274,
     985     275,   276,   277,   278,   279,   280,   281,   282,   283,   284,
     986     285,   286,   287,   288,   289,   290,   291,   292,   293,   294,
     987     295,   296,   297,   298,   299,   300,   301,   302,   303,   304,
     988     305,   306,   307,   308,   309,   310,   311,   312,   313,   314,
     989     315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
     990     325,   326,   327,   328,   329,   330,   331,   332,   333,   334,
     991     335,   336,   337,   338,   339,   340,   341,   342,   343,   344,
     992     345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
     993     355,   356,   357,   358,   359,   360,   361,   362,   363,   364,
     994     365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
     995     375,   376,   377,   378,   379,   380,    61,    60,    62,    43,
     996      45,    47,    91,    93,    94,    44,    59,    38,    58,    42,
     997     381,    40,    41,    96
    538998};
    539 
    540 static const short yyr2[] = {     0,
    541      0,     2,     1,     2,     2,     1,     1,     1,     2,     1,
    542      1,     1,     1,     1,     1,     1,     1,     2,     1,     1,
    543      1,     1,     1,     1,     1,     1,     1,     2,     1,     1,
    544      3,     3,     4,     3,     1,     1,     1,     3,     1,     1,
    545      1,     3,     6,     4,     4,     4,     3,     4,     4,     3,
    546      4,     6,     8,     6,     8,     4,     4,     6,     4,     6,
    547      8,     8,     3,     4,     8,     4,     8,     4,     8,     4,
    548      3,     5,     0,     5,     2,     1,     2,     2,     3,     3,
    549      3,     3,     3,     3,     3,     3,     3,     3,     2,     2,
    550      2,     2,     1,     3,     1,     1,     2,     2,     2,     2,
    551      8,     2,     8,     2,     3,     2,     1,     1,     5,     1,
    552      1,     4,     1,     3,     1,     3,     1,     0,     4,     3,
    553      2,     3,     2,     2,     3,     4,     4,     4,     4,     4,
    554      4,     4,     4,     4,     6,     6,     6,     6,     6,     6,
    555      6,     6,     3,     1,     8,     2,     2,     1,     1,     2,
    556      2,     1,     5,     2,     5,     1,     1,     3,     5,     3,
    557      3,     4,     2,     2,     4,     3
     999# endif
     1000
     1001/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
     1002static const yytype_uint8 yyr1[] =
     1003{
     1004       0,   144,   145,   145,   146,   146,   146,   146,   146,   146,
     1005     146,   147,   147,   147,   147,   147,   147,   147,   147,   148,
     1006     149,   149,   149,   149,   149,   149,   149,   149,   149,   150,
     1007     151,   151,   151,   151,   151,   151,   151,   151,   151,   152,
     1008     152,   153,   153,   153,   153,   153,   153,   153,   153,   153,
     1009     153,   153,   153,   153,   153,   153,   153,   153,   153,   153,
     1010     153,   153,   153,   153,   153,   153,   153,   153,   153,   153,
     1011     153,   153,   153,   153,   154,   153,   155,   156,   157,   157,
     1012     157,   157,   157,   157,   157,   157,   157,   157,   157,   157,
     1013     157,   157,   158,   158,   159,   159,   160,   160,   161,   161,
     1014     161,   161,   161,   161,   161,   161,   161,   161,   162,   163,
     1015     163,   164,   165,   165,   166,   166,   167,   167,   168,   170,
     1016     169,   171,   171,   172,   173,   174,   174,   175,   175,   175,
     1017     175,   175,   175,   175,   175,   175,   175,   175,   175,   175,
     1018     175,   175,   175,   175,   175,   176,   177,   177,   178,   179,
     1019     179,   180,   181,   181,   182,   182,   182,   182,   182,   183,
     1020     184,   185,   185,   185,   186,   186,   187,   187
    5581021};
    5591022
    560 static const short yydefact[] = {     1,
    561      0,     0,     0,     0,     0,   144,    95,     0,    96,   149,
    562      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    563      0,     0,     0,     0,     0,     0,   148,     0,   107,    35,
    564     93,    29,     0,   156,   157,     0,     0,     0,     0,     0,
    565      7,     0,     0,     0,    36,     0,     0,     0,     8,     0,
    566      0,     2,     3,    12,     0,    19,    41,   152,    39,     0,
    567     40,     0,    30,     0,     0,    37,    15,    16,    17,    20,
    568     21,    22,     0,    24,    25,     0,    26,    27,    10,    11,
    569     13,    14,    23,     6,     9,     0,     0,     0,     0,     0,
    570      0,    36,    89,     0,     0,   104,   106,    30,     0,     0,
    571    102,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    572     97,     0,    98,     0,    99,     0,    18,   123,     0,   121,
    573    124,     0,   151,     0,   154,    73,    75,     0,     0,     0,
    574      0,     0,   164,   163,   147,   118,    90,     0,     0,     0,
    575      4,     0,     0,    92,     0,     0,     0,    78,     0,    77,
    576      0,     0,     0,     0,     0,     0,     0,     0,     0,    28,
    577      0,   100,   117,     0,     5,    91,     0,   146,   150,     0,
    578      0,   160,     0,   108,     0,     0,     0,     0,     0,     0,
    579      0,     0,     0,     0,    63,     0,     0,    47,     0,     0,
    580    122,   120,     0,     0,     0,     0,     0,     0,     0,   143,
    581      0,     0,     0,   161,     0,     0,     0,   158,   166,     0,
    582      0,    34,    42,    94,    31,    32,     0,    38,    87,    86,
    583     85,    83,    79,    80,    81,     0,    82,    84,    88,     0,
    584     76,    71,    50,     0,   105,   125,     0,     0,    68,     0,
    585     39,    70,     0,     0,    66,     0,    51,     0,     0,     0,
    586     56,     0,    57,     0,     0,    59,    64,    45,    46,    48,
    587    132,   133,   130,   131,   126,   127,   128,     0,   134,   129,
    588    162,     0,     0,     0,   165,   119,    33,    44,     0,     0,
    589     49,   108,     0,     0,     0,     0,     0,     0,     0,     0,
    590      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    591      0,     0,     0,    74,   159,   153,   155,     0,    72,     0,
    592      0,     0,     0,     0,     0,     0,    52,     0,    58,     0,
    593      0,    54,     0,    60,   141,   142,   139,   140,   135,   136,
    594    137,   138,    43,     0,     0,     0,   109,   110,     0,   111,
    595    115,     0,     0,     0,     0,     0,     0,     0,     0,    67,
    596    103,   113,     0,     0,    69,    65,   101,    53,    61,    55,
    597     62,   145,     0,   116,     0,   114,   112,     0,     0
     1023/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN.  */
     1024static const yytype_uint8 yyr2[] =
     1025{
     1026       0,     2,     0,     2,     1,     2,     2,     1,     1,     1,
     1027       2,     1,     1,     1,     1,     1,     1,     1,     1,     2,
     1028       1,     1,     1,     1,     1,     1,     1,     1,     1,     2,
     1029       1,     1,     3,     3,     4,     3,     1,     1,     1,     3,
     1030       1,     1,     1,     3,     6,     4,     4,     4,     3,     4,
     1031       4,     3,     4,     6,     8,     6,     8,     4,     4,     6,
     1032       4,     6,     8,     8,     3,     4,     8,     4,     8,     4,
     1033       8,     4,     3,     5,     0,     5,     2,     1,     2,     2,
     1034       3,     3,     3,     3,     3,     3,     3,     3,     3,     3,
     1035       2,     2,     2,     2,     1,     3,     1,     1,     2,     2,
     1036       2,     2,     8,     2,     8,     2,     3,     2,     1,     1,
     1037       5,     1,     1,     4,     1,     3,     1,     3,     1,     0,
     1038       4,     3,     2,     3,     2,     2,     3,     4,     4,     4,
     1039       4,     4,     4,     4,     4,     4,     6,     6,     6,     6,
     1040       6,     6,     6,     6,     3,     1,     8,     2,     2,     1,
     1041       1,     2,     2,     1,     5,     2,     5,     1,     1,     3,
     1042       5,     3,     3,     4,     2,     2,     4,     3
    5981043};
    5991044
    600 static const short yydefgoto[] = {     1,
    601     52,    53,    54,    55,    56,    57,   139,    59,   205,    60,
    602    232,    61,    62,    63,    94,    65,    66,   175,   340,   341,
    603    353,   342,   166,    67,   211,    68,    69,    70,    71,    72,
    604     73,    74,    75,    76,    77,    78,    79,    80,    81,    82,
    605     83,    84
     1045/* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
     1046   STATE-NUM when YYTABLE doesn't specify something else to do.  Zero
     1047   means the default is an error.  */
     1048static const yytype_uint8 yydefact[] =
     1049{
     1050       2,     0,     1,     0,     0,     0,     0,   145,    96,     0,
     1051      97,   150,     0,     0,     0,     0,     0,     0,     0,     0,
     1052       0,     0,     0,     0,     0,     0,     0,     0,   149,     0,
     1053     108,    36,    94,    30,     0,   157,   158,     0,     0,     0,
     1054       0,     0,     8,     0,     0,     0,    37,     0,     0,     0,
     1055       9,     0,     0,     3,     4,    13,     0,    20,    42,   153,
     1056      40,     0,    41,     0,    31,     0,     0,    38,    16,    17,
     1057      18,    21,    22,    23,     0,    25,    26,     0,    27,    28,
     1058      11,    12,    14,    15,    24,     7,    10,     0,     0,     0,
     1059       0,     0,     0,    37,    90,     0,     0,   105,   107,    31,
     1060       0,     0,   103,     0,     0,     0,     0,     0,     0,     0,
     1061       0,     0,    98,     0,    99,     0,   100,     0,    19,   124,
     1062       0,   122,   125,     0,   152,     0,   155,    74,    76,     0,
     1063       0,     0,     0,     0,   165,   164,   148,   119,    91,     0,
     1064       0,     0,     5,     0,     0,    93,     0,     0,     0,    79,
     1065       0,    78,     0,     0,     0,     0,     0,     0,     0,     0,
     1066       0,    29,     0,   101,   118,     0,     6,    92,     0,   147,
     1067     151,     0,     0,   161,     0,   109,     0,     0,     0,     0,
     1068       0,     0,     0,     0,     0,     0,    64,     0,     0,    48,
     1069       0,     0,   123,   121,     0,     0,     0,     0,     0,     0,
     1070       0,   144,     0,     0,     0,   162,     0,     0,     0,   159,
     1071     167,     0,     0,    35,    43,    95,    32,    33,     0,    39,
     1072      88,    87,    86,    84,    80,    81,    82,     0,    83,    85,
     1073      89,     0,    77,    72,    51,     0,   106,   126,     0,     0,
     1074      69,     0,    40,    71,     0,     0,    67,     0,    52,     0,
     1075       0,     0,    57,     0,    58,     0,     0,    60,    65,    46,
     1076      47,    49,   133,   134,   131,   132,   127,   128,   129,     0,
     1077     135,   130,   163,     0,     0,     0,   166,   120,    34,    45,
     1078       0,     0,    50,   109,     0,     0,     0,     0,     0,     0,
     1079       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     1080       0,     0,     0,     0,     0,    75,   160,   154,   156,     0,
     1081      73,     0,     0,     0,     0,     0,     0,     0,    53,     0,
     1082      59,     0,     0,    55,     0,    61,   142,   143,   140,   141,
     1083     136,   137,   138,   139,    44,     0,     0,     0,   110,   111,
     1084       0,   112,   116,     0,     0,     0,     0,     0,     0,     0,
     1085       0,    68,   104,   114,     0,     0,    70,    66,   102,    54,
     1086      62,    56,    63,   146,     0,   117,     0,   115,   113
    6061087};
    6071088
    608 static const short yypact[] = {-32768,
    609    276,  -125,  1218,   631,   214,  -111,-32768,   800,-32768,-32768,
    610    -62,   -59,   -55,   -54,   -51,   -48,   -42,   -41,   805,   876,
    611    931,   -52,  1218,  -105,   214,   -40,-32768,  1218,-32768,-32768,
    612 -32768,-32768,   -19,-32768,-32768,    -7,   -38,   -37,     0,   -34,
    613 -32768,     6,   -25,   882,    13,    13,  1218,  1218,-32768,  1218,
    614   1218,-32768,-32768,-32768,    11,-32768,    -5,  -119,  1632,  1218,
    615 -32768,  1218,-32768,   988,  -108,-32768,-32768,-32768,-32768,-32768,
    616    -18,-32768,   214,-32768,-32768,  1218,-32768,-32768,-32768,-32768,
    617 -32768,-32768,-32768,-32768,-32768,    27,  -111,    29,    38,    41,
    618     54,-32768,    60,    55,  1218,     9,    -5,    39,  1273,  1218,
    619     20,  1218,  1218,  1218,  1218,  1218,  1218,  1218,   937,  1218,
    620     -5,   994,    -5,  1218,    -5,    23,-32768,    65,    69,-32768,
    621     -5,  1706,  1632,   -35,-32768,-32768,-32768,    46,  1218,    98,
    622   1049,   214,  1632,    73,-32768,-32768,    60,   -65,  -103,     8,
    623 -32768,   214,  1106,-32768,  1218,  1218,  1218,-32768,  1218,-32768,
    624   1218,  1218,  1218,  1218,  1218,  1218,  1218,  1218,    72,    65,
    625   1161,    -5,-32768,   214,-32768,-32768,   214,    -8,  1632,    86,
    626   1218,-32768,  1218,   443,    76,   100,  1218,   473,  1328,  1340,
    627    175,   309,  1368,   339,-32768,   -98,   487,-32768,   -92,   501,
    628 -32768,-32768,    70,    77,    80,    84,    91,    99,   101,-32768,
    629     48,   102,   131,-32768,  1218,   140,   515,-32768,-32768,   -90,
    630    117,-32768,-32768,-32768,-32768,-32768,   -88,  1632,  1644,   463,
    631    463,    26,   227,   227,    60,  1313,    -3,  1656,   227,  1218,
    632 -32768,-32768,-32768,   -84,    -5,    -5,  1273,  1218,-32768,  1383,
    633   1395,-32768,  1273,  1218,-32768,  1412,-32768,  1218,  1218,  1218,
    634 -32768,  1218,-32768,  1218,  1218,-32768,-32768,-32768,-32768,-32768,
    635 -32768,-32768,-32768,-32768,-32768,-32768,-32768,   230,-32768,-32768,
    636 -32768,   552,   145,   -49,-32768,-32768,-32768,-32768,  1218,   577,
    637 -32768,  1632,   120,  1424,   124,  1218,   125,  1474,   127,   649,
    638   1558,   663,  1570,   404,   418,   119,   123,   129,   134,   138,
    639    139,   141,   142,-32768,-32768,-32768,-32768,  1582,-32768,  1273,
    640   1218,  1218,   -80,  -107,  1218,  1218,-32768,  1218,-32768,  1218,
    641   1218,-32768,  1218,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
    642 -32768,-32768,-32768,   132,   686,  1608,-32768,-32768,   151,   144,
    643 -32768,   146,   711,  1620,   725,   739,   753,   797,  -107,-32768,
    644 -32768,   147,   148,  1218,-32768,-32768,-32768,-32768,-32768,-32768,
    645 -32768,-32768,   151,-32768,   -76,-32768,-32768,   264,-32768
     1089/* YYDEFGOTO[NTERM-NUM].  */
     1090static const yytype_int16 yydefgoto[] =
     1091{
     1092      -1,     1,    53,    54,    55,    56,    57,    58,   140,    60,
     1093     206,    61,   233,    62,    63,    64,    95,    66,    67,   176,
     1094     341,   342,   354,   343,   167,    68,   212,    69,    70,    71,
     1095      72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
     1096      82,    83,    84,    85
    6461097};
    6471098
    648 static const short yypgoto[] = {-32768,
    649 -32768,-32768,-32768,-32768,-32768,    19,    -1,    18,-32768,-32768,
    650     -9,-32768,-32768,   282,     7,   248,    28,  -224,-32768,  -329,
    651    -69,   -50,   130,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
    652 -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
    653 -32768,-32768
     1099/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
     1100   STATE-NUM.  */
     1101#define YYPACT_NINF -336
     1102static const yytype_int16 yypact[] =
     1103{
     1104    -336,   277,  -336,  -134,  1241,   -76,   216,  -103,  -336,   104,
     1105    -336,  -336,   -82,   -69,   -52,   -43,   -37,   -34,   -33,   -31,
     1106     837,   888,   951,   -12,  1241,   -99,   216,   -30,  -336,  1241,
     1107    -336,  -336,  -336,  -336,   -81,  -336,  -336,   -67,   -28,   -26,
     1108      43,   -25,  -336,    45,    17,   893,    52,    52,  1241,  1241,
     1109    -336,  1241,  1241,  -336,  -336,  -336,    27,  -336,     9,  -114,
     1110    1661,  1241,  -336,  1241,  -336,  1007,   -53,  -336,  -336,  -336,
     1111    -336,  -336,    24,  -336,   216,  -336,  -336,  1241,  -336,  -336,
     1112    -336,  -336,  -336,  -336,  -336,  -336,  -336,    26,  -103,    28,
     1113      38,    50,    58,  -336,    61,    63,  1241,     0,     9,    77,
     1114    1299,  1241,    15,  1241,  1241,  1241,  1241,  1241,  1241,  1241,
     1115     957,  1241,     9,  1013,     9,  1241,     9,    70,  -336,    72,
     1116      74,  -336,     9,  1738,  1661,    -7,  -336,  -336,  -336,   103,
     1117    1241,   108,  1071,   216,  1661,    83,  -336,  -336,    61,   -45,
     1118    -128,    51,  -336,   216,  1127,  -336,  1241,  1241,  1241,  -336,
     1119    1241,  -336,  1241,  1241,  1241,  1241,  1241,  1241,  1241,  1241,
     1120      71,    72,  1185,     9,  -336,   216,  -336,  -336,   216,     8,
     1121    1661,    96,  1241,  -336,  1241,   490,    84,   296,  1241,   504,
     1122    1353,  1365,   312,   340,  1396,   354,  -336,   -92,   518,  -336,
     1123     -91,   543,  -336,  -336,    78,    79,    80,    90,    93,   101,
     1124     109,  -336,     4,   111,   137,  -336,  1241,   142,   557,  -336,
     1125    -336,   -89,   116,  -336,  -336,  -336,  -336,  -336,   -78,  1661,
     1126    1673,   110,   110,     6,    23,    23,    61,  1338,    -4,  1685,
     1127      23,  1241,  -336,  -336,  -336,   -66,     9,     9,  1299,  1241,
     1128    -336,  1411,  1423,  -336,  1299,  1241,  -336,  1440,  -336,  1241,
     1129    1241,  1241,  -336,  1241,  -336,  1241,  1241,  -336,  -336,  -336,
     1130    -336,  -336,  -336,  -336,  -336,  -336,  -336,  -336,  -336,   760,
     1131    -336,  -336,  -336,   584,   145,   -23,  -336,  -336,  -336,  -336,
     1132    1241,   598,  -336,  1661,   120,  1452,   126,  1241,   124,  1501,
     1133     128,   654,  1588,   693,  1600,   407,   448,   119,   122,   123,
     1134     130,   133,   138,   139,   140,  -336,  -336,  -336,  -336,  1612,
     1135    -336,  1299,  1241,  1241,   -50,  -110,  1241,  1241,  -336,  1241,
     1136    -336,  1241,  1241,  -336,  1241,  -336,  -336,  -336,  -336,  -336,
     1137    -336,  -336,  -336,  -336,  -336,   131,   734,  1637,  -336,  -336,
     1138     159,   143,  -336,   141,   748,  1649,   762,   790,   804,   829,
     1139    -110,  -336,  -336,   144,   146,  1241,  -336,  -336,  -336,  -336,
     1140    -336,  -336,  -336,  -336,   159,  -336,   -48,  -336,  -336
    6541141};
    6551142
    656 
    657 #define YYLAST          1847
    658 
    659 
    660 static const short yytable[] = {    58,
    661    119,   338,   142,   148,   144,   142,   150,    64,    85,   352,
    662    146,   147,   283,   145,   148,   163,   149,   150,   287,   142,
    663     93,   118,    96,    97,   164,   165,   101,    99,   120,   145,
    664    142,   339,   148,   352,   145,   150,   213,   111,   113,   115,
    665    145,   257,   145,   121,   145,   123,   138,   259,   145,   275,
    666     64,   277,   145,   116,   117,   281,   145,   306,   142,   337,
    667    160,   133,   307,   367,   137,   212,   148,   145,   140,   150,
    668    203,   204,   135,   136,   146,   147,   102,   159,   148,   103,
    669    149,   150,   162,   104,   105,   334,   124,   106,   146,   147,
    670    107,   168,   148,   169,   149,   150,   108,   109,   122,   125,
    671    126,   127,   146,   147,   129,   128,   148,   186,   149,   150,
    672    189,   130,   170,   131,   167,   163,   174,   176,    29,   178,
    673    179,   180,   181,   182,   183,   184,   155,   187,   202,   210,
    674    143,   190,   151,   143,   152,   153,   154,   155,   171,   156,
    675    201,   217,   157,   158,   141,   172,   207,   143,   214,   177,
    676     97,   206,   152,   153,   154,   155,   191,   156,   143,   234,
    677    215,   158,   218,   219,   220,    95,   221,   100,   222,   223,
    678    224,   225,   226,   227,   228,   229,   110,   146,   147,   112,
    679    268,   148,   235,   149,   150,   236,   143,   269,   240,   155,
    680    241,   156,   114,   161,   246,   230,   151,   145,   152,   153,
    681    154,   155,   192,   156,   208,   164,   157,   158,   243,   261,
    682    151,   231,   152,   153,   154,   155,   262,   156,   238,   263,
    683    157,   158,   272,   264,   151,   239,   152,   153,   154,   155,
    684    265,   156,   244,   148,   157,   158,   150,   271,   266,   245,
    685    267,   270,   296,   297,   298,   273,     7,   280,   299,     9,
    686    276,   305,   310,   312,   282,   284,   316,   314,   325,   338,
    687    282,   288,   326,   369,   349,   290,   291,   292,   327,   293,
    688    309,   294,   295,   328,   303,   368,     2,   329,   330,   363,
    689    331,   332,   354,     3,   313,   355,    98,   364,     4,     5,
    690      6,   134,     7,   366,     8,     9,   308,   237,   362,   151,
    691      0,   152,   153,   154,   155,     0,   156,   250,     0,   157,
    692    158,   146,   147,    10,   251,   148,     0,   149,   150,    29,
    693      0,    30,    31,    32,   300,   301,   302,   282,   335,   336,
    694      0,     0,   343,   344,     0,   345,    92,   346,   347,     0,
    695    348,   146,   147,    48,     0,   148,     0,   149,   150,     0,
    696      0,     0,   365,     0,    51,   154,   155,     0,   156,     0,
    697      0,     0,    11,    12,    13,    14,    15,    16,    17,    18,
    698     19,    20,    21,    22,    23,    24,    25,     0,    26,    27,
    699     28,    29,     0,    30,    31,    32,    33,    34,    35,    36,
    700     37,    38,    39,    40,    41,    42,    43,    44,    45,     0,
    701     46,     0,     0,    47,     0,    48,   146,   147,     0,    49,
    702    148,     0,   149,   150,    50,     0,    51,     0,     0,     0,
    703    146,   147,     0,     0,   148,     0,   149,   150,     0,     0,
    704      0,     0,     0,   151,     0,   152,   153,   154,   155,     0,
    705    156,   252,     0,   157,   158,   146,   147,     0,   253,   148,
    706      0,   149,   150,     0,     0,     0,     0,     0,     0,     0,
    707      0,     0,     0,   151,     0,   152,   153,   154,   155,   148,
    708    156,   255,   150,   157,   158,   146,   147,     0,   256,   148,
    709      0,   149,   150,     0,     0,     0,     0,     0,     0,   146,
    710    147,     0,     0,   148,     0,   149,   150,     0,     0,     0,
    711      0,     0,     0,   146,   147,     0,     0,   148,     0,   149,
    712    150,     0,     0,     0,     0,     0,     0,   146,   147,     0,
    713      0,   148,     0,   149,   150,     0,     0,     0,   151,     0,
    714    152,   153,   154,   155,     0,   156,   321,     0,   157,   158,
    715      0,     0,   151,   322,   152,   153,   154,   155,     0,   156,
    716    323,     0,   157,   158,   146,   147,     0,   324,   148,     0,
    717    149,   150,     0,     0,     0,     0,     0,   151,     0,   152,
    718    153,   154,   155,     0,   156,     0,     0,   157,   158,   146,
    719    147,     0,   242,   148,     0,   149,   150,   151,     0,   152,
    720    153,   154,   155,     0,   156,     0,     0,   151,   158,   152,
    721    153,   154,   155,     0,   156,     0,     0,   157,   158,     0,
    722      0,   151,   247,   152,   153,   154,   155,     0,   156,     0,
    723      0,   157,   158,     0,     0,   151,   258,   152,   153,   154,
    724    155,     0,   156,     0,     0,   157,   158,     0,     0,   151,
    725    260,   152,   153,   154,   155,     0,   156,     0,     0,   157,
    726    158,   146,   147,     0,   274,   148,     0,   149,   150,     0,
    727      0,     0,     0,     0,     0,   146,   147,     0,     0,   148,
    728      0,   149,   150,     0,     0,     0,   151,     0,   152,   153,
    729    154,   155,     0,   156,     0,     0,   157,   158,   146,   147,
    730      0,   304,   148,     0,   149,   150,     0,     0,     0,     0,
    731      0,   151,     0,   152,   153,   154,   155,     0,   156,     0,
    732      0,   157,   158,   146,   147,     0,   231,   148,     0,   149,
    733    150,     0,     0,     0,     0,     0,     0,   146,   147,     0,
    734      0,   148,     0,   149,   150,     0,    29,     0,    30,    31,
    735     32,   146,   147,     0,     0,   148,     0,   149,   150,     0,
    736      0,     0,     0,    92,     0,   146,   147,     0,     0,   148,
    737     48,   149,   150,     0,     0,     0,     0,     0,     0,    95,
    738      0,    51,     0,   151,     0,   152,   153,   154,   155,     0,
    739    156,     0,     0,   157,   158,     0,     0,   151,   317,   152,
    740    153,   154,   155,     0,   156,     0,     0,   157,   158,   146,
    741    147,     0,   319,   148,     0,   149,   150,     0,     0,     0,
    742    151,     0,   152,   153,   154,   155,     0,   156,     0,     0,
    743    157,   158,     0,     0,     0,   350,     0,     0,     0,     0,
    744      0,     0,     0,     0,     0,   151,     0,   152,   153,   154,
    745    155,     0,   156,     0,     0,   157,   158,     0,     0,   151,
    746    356,   152,   153,   154,   155,     0,   156,     0,     0,   157,
    747    158,     0,     0,   151,   358,   152,   153,   154,   155,     0,
    748    156,     0,     0,   157,   158,     0,     0,   151,   359,   152,
    749    153,   154,   155,     0,   156,     0,     0,   157,   158,     3,
    750      0,     0,   360,     0,     4,   132,    87,     0,     7,     0,
    751      8,     9,     0,     0,     0,    29,     0,    30,    31,    32,
    752     29,     0,    30,    31,    32,     0,     0,     0,     0,     0,
    753      0,   151,    92,   152,   153,   154,   155,    92,   156,    48,
    754      0,   157,   158,     0,    48,     0,   361,     0,   100,     0,
    755     51,     0,     0,   110,     3,    51,     0,     0,     0,    86,
    756      0,    87,     0,     7,     0,    88,     9,     0,     0,     0,
    757      0,     0,     0,     0,     0,     0,     0,     0,    11,    12,
    758     13,    14,    15,    16,    17,    18,    19,    20,    21,     0,
    759      0,    29,     0,    30,    31,    32,     0,    29,     0,    30,
    760     31,    32,     0,     0,     0,     0,    37,    38,    92,     0,
    761      0,     3,     0,     0,    92,    48,    86,     0,    87,    47,
    762      7,    48,    88,     9,   112,     0,    51,     0,     0,     0,
    763     50,     0,    51,    11,    12,    13,    14,    15,    16,    17,
    764     18,    89,    90,    91,     0,     0,    29,     0,    30,    31,
    765     32,     0,    29,     0,    30,    31,    32,     0,     0,     0,
    766      0,    37,    38,    92,     0,     0,     3,     0,     0,    92,
    767     48,    86,     0,    87,    47,     7,    48,    88,     9,   114,
    768      0,    51,     0,     0,     0,    50,   185,    51,     0,     0,
    769     11,    12,    13,    14,    15,    16,    17,    18,    89,    90,
    770     91,     0,     0,    29,     0,    30,    31,    32,     0,    29,
    771      0,    30,    31,    32,     0,     0,     0,     0,    37,    38,
    772     92,     0,     0,     3,     0,     0,    92,    48,    86,     0,
    773     87,    47,     7,    48,    88,     9,   161,     0,    51,     0,
    774      0,     0,    50,   188,    51,    11,    12,    13,    14,    15,
    775     16,    17,    18,    89,    90,    91,     0,     0,     0,     0,
    776      0,     0,     0,     0,    29,     0,    30,    31,    32,     0,
    777      0,     0,     0,    37,    38,     0,     0,     0,     3,     0,
    778      0,    92,     0,    86,     0,    87,    47,     7,    48,    88,
    779      9,     0,     0,     0,     0,     0,     0,    50,   209,    51,
    780      0,     0,    11,    12,    13,    14,    15,    16,    17,    18,
    781     89,    90,    91,     0,     0,     0,     0,     0,     0,     0,
    782      0,    29,     0,    30,    31,    32,     0,     0,     0,     0,
    783     37,    38,     0,     0,     0,     3,     0,     0,    92,     0,
    784     86,     0,    87,    47,     7,    48,    88,     9,     0,     0,
    785      0,     0,     0,     0,    50,   216,    51,    11,    12,    13,
    786     14,    15,    16,    17,    18,    89,    90,    91,     0,     0,
    787      0,     0,     0,     0,     0,     0,    29,     0,    30,    31,
    788     32,     0,     0,     0,     0,    37,    38,     0,     0,     0,
    789      3,     0,     0,    92,     0,    86,     0,    87,    47,     7,
    790     48,    88,     9,     0,     0,     0,     0,     0,     0,    50,
    791    233,    51,     0,     0,    11,    12,    13,    14,    15,    16,
    792     17,    18,    89,    90,    91,   146,   147,     0,     0,   148,
    793      0,   149,   150,    29,     0,    30,    31,    32,     0,     0,
    794    146,   147,    37,    38,   148,     0,   149,   150,     0,     0,
    795     92,     0,   146,   147,     0,    47,   148,    48,   149,   150,
    796      0,     0,     0,     0,     0,     0,    50,     0,    51,    11,
    797     12,    13,    14,    15,    16,    17,    18,    89,    90,    91,
    798    146,   147,     0,     0,   148,     0,   149,   150,    29,     0,
    799     30,    31,    32,     0,     0,   146,   147,    37,    38,   148,
    800      0,   149,   150,     0,     0,    92,     0,   146,   147,     0,
    801     47,   148,    48,   149,   150,     0,     0,     0,     0,     0,
    802      0,   173,     0,    51,   146,   147,     0,     0,   148,     0,
    803    149,   150,     0,     0,     0,     0,   146,   147,     0,     0,
    804    148,     0,   149,   150,     0,     0,     0,   151,     0,   152,
    805    153,   154,   155,   278,   156,   279,     0,   157,   158,     0,
    806      0,     0,   151,     0,   152,   153,   154,   155,     0,   156,
    807    248,     0,   157,   158,   151,     0,   152,   153,   154,   155,
    808      0,   156,   249,     0,   157,   158,   146,   147,     0,     0,
    809    148,     0,   149,   150,     0,     0,     0,     0,     0,     0,
    810      0,     0,   151,     0,   152,   153,   154,   155,     0,   156,
    811    254,     0,   157,   158,     0,     0,     0,   151,     0,   152,
    812    153,   154,   155,   285,   156,     0,     0,   157,   158,   151,
    813      0,   152,   153,   154,   155,     0,   156,   286,     0,   157,
    814    158,     0,     0,     0,     0,     0,   151,     0,   152,   153,
    815    154,   155,   289,   156,     0,     0,   157,   158,   151,     0,
    816    152,   153,   154,   155,     0,   156,   311,     0,   157,   158,
    817    146,   147,     0,     0,   148,     0,   149,   150,     0,     0,
    818      0,     0,   146,   147,     0,     0,   148,     0,   149,   150,
    819      0,     0,     0,     0,   146,   147,     0,     0,   148,     0,
    820    149,   150,     0,     0,     0,     0,     0,     0,   151,     0,
    821    152,   153,   154,   155,     0,   156,   315,     0,   157,   158,
    822    146,   147,     0,     0,   148,     0,   149,   150,     0,     0,
    823      0,     0,   146,   147,     0,     0,   148,     0,   149,   150,
    824      0,     0,     0,     0,   146,   147,     0,     0,   148,     0,
    825    149,   150,     0,     0,     0,     0,-32768,   147,     0,     0,
    826    148,     0,   149,   150,     0,     0,     0,     0,     0,   147,
    827      0,     0,   148,     0,   149,   150,     0,     0,     0,     0,
    828      0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    829      0,     0,   151,     0,   152,   153,   154,   155,     0,   156,
    830    318,     0,   157,   158,   151,     0,   152,   153,   154,   155,
    831      0,   156,   320,     0,   157,   158,   151,     0,   152,   153,
    832    154,   155,   333,   156,     0,     0,   157,   158,   193,   194,
    833    195,     0,     7,     0,   196,     9,     0,     0,     0,     0,
    834      0,     0,   151,     0,   152,   153,   154,   155,   351,   156,
    835      0,     0,   157,   158,   151,     0,   152,   153,   154,   155,
    836    357,   156,     0,     0,   157,   158,   151,     0,   152,   153,
    837    154,   155,     0,   156,     0,     0,   157,   158,   151,     0,
    838    152,   153,   154,   155,     0,   156,     0,     0,   157,   158,
    839    151,     0,   152,   153,   154,   155,     0,   156,     0,     0,
    840      0,   158,     0,     0,     0,     0,     0,     0,     0,     0,
    841    197,   198,   199,     0,     0,     0,     0,     0,     0,     0,
    842      0,    29,     0,    30,    31,    32,     0,     0,     0,     0,
    843      0,     0,     0,     0,     0,     0,     0,     0,    92,     0,
    844      0,     0,     0,     0,     0,    48,     0,     0,     0,     0,
    845      0,     0,     0,     0,     0,   200,    51
     1143/* YYPGOTO[NTERM-NUM].  */
     1144static const yytype_int16 yypgoto[] =
     1145{
     1146    -336,  -336,  -336,  -336,  -336,  -336,  -336,    19,    -1,    18,
     1147    -336,  -336,    12,  -336,  -336,   281,     7,   244,   -29,  -234,
     1148    -336,  -335,   -63,   -55,   135,  -336,  -336,  -336,  -336,  -336,
     1149    -336,  -336,  -336,  -336,  -336,  -336,  -336,  -336,  -336,  -336,
     1150    -336,  -336,  -336,  -336
    8461151};
    8471152
    848 static const short yycheck[] = {     1,
    849    106,   109,    11,     7,   124,    11,    10,     1,   134,   339,
    850      3,     4,   237,   133,     7,   124,     9,    10,   243,    11,
    851      3,    23,     4,     5,   133,   134,     8,   139,   134,   133,
    852     11,   139,     7,   363,   133,    10,   140,    19,    20,    21,
    853    133,   140,   133,    25,   133,    28,    48,   140,   133,   140,
    854     44,   140,   133,   106,   107,   140,   133,   107,    11,   140,
    855     62,    44,   112,   140,    47,   131,     7,   133,    51,    10,
    856    106,   107,    45,    46,     3,     4,   139,    60,     7,   139,
    857      9,    10,    64,   139,   139,   310,   106,   139,     3,     4,
    858    139,    73,     7,    76,     9,    10,   139,   139,   139,   107,
    859    139,   139,     3,     4,   139,   106,     7,   109,     9,    10,
    860    112,   106,    95,   139,   133,   124,    99,   100,   106,   102,
    861    103,   104,   105,   106,   107,   108,   130,   110,   122,   131,
    862    139,   114,   125,   139,   127,   128,   129,   130,   130,   132,
    863    122,   143,   135,   136,   134,   107,   129,   139,   141,   130,
    864    132,   106,   127,   128,   129,   130,   134,   132,   139,   161,
    865    142,   136,   145,   146,   147,   139,   149,   139,   151,   152,
    866    153,   154,   155,   156,   157,   158,   139,     3,     4,   139,
    867    133,     7,   164,     9,    10,   167,   139,   140,   171,   130,
    868    173,   132,   139,   139,   177,   124,   125,   133,   127,   128,
    869    129,   130,   134,   132,   107,   133,   135,   136,   133,   140,
    870    125,   140,   127,   128,   129,   130,   140,   132,   133,   140,
    871    135,   136,   205,   140,   125,   140,   127,   128,   129,   130,
    872    140,   132,   133,     7,   135,   136,    10,   107,   140,   140,
    873    140,   140,    13,    14,    15,   106,    17,   230,    19,    20,
    874    134,   107,   133,   130,   237,   238,   130,   133,   140,   109,
    875    243,   244,   140,     0,   133,   248,   249,   250,   140,   252,
    876    280,   254,   255,   140,   268,     0,     1,   140,   140,   133,
    877    140,   140,   139,     8,   286,   140,     5,   140,    13,    14,
    878     15,    44,    17,   363,    19,    20,   279,   168,   349,   125,
    879     -1,   127,   128,   129,   130,    -1,   132,   133,    -1,   135,
    880    136,     3,     4,    38,   140,     7,    -1,     9,    10,   106,
    881     -1,   108,   109,   110,    95,    96,    97,   310,   311,   312,
    882     -1,    -1,   315,   316,    -1,   318,   123,   320,   321,    -1,
    883    323,     3,     4,   130,    -1,     7,    -1,     9,    10,    -1,
    884     -1,    -1,   354,    -1,   141,   129,   130,    -1,   132,    -1,
    885     -1,    -1,    87,    88,    89,    90,    91,    92,    93,    94,
    886     95,    96,    97,    98,    99,   100,   101,    -1,   103,   104,
    887    105,   106,    -1,   108,   109,   110,   111,   112,   113,   114,
    888    115,   116,   117,   118,   119,   120,   121,   122,   123,    -1,
    889    125,    -1,    -1,   128,    -1,   130,     3,     4,    -1,   134,
    890      7,    -1,     9,    10,   139,    -1,   141,    -1,    -1,    -1,
    891      3,     4,    -1,    -1,     7,    -1,     9,    10,    -1,    -1,
    892     -1,    -1,    -1,   125,    -1,   127,   128,   129,   130,    -1,
    893    132,   133,    -1,   135,   136,     3,     4,    -1,   140,     7,
    894     -1,     9,    10,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    895     -1,    -1,    -1,   125,    -1,   127,   128,   129,   130,     7,
    896    132,   133,    10,   135,   136,     3,     4,    -1,   140,     7,
    897     -1,     9,    10,    -1,    -1,    -1,    -1,    -1,    -1,     3,
    898      4,    -1,    -1,     7,    -1,     9,    10,    -1,    -1,    -1,
    899     -1,    -1,    -1,     3,     4,    -1,    -1,     7,    -1,     9,
    900     10,    -1,    -1,    -1,    -1,    -1,    -1,     3,     4,    -1,
    901     -1,     7,    -1,     9,    10,    -1,    -1,    -1,   125,    -1,
    902    127,   128,   129,   130,    -1,   132,   133,    -1,   135,   136,
    903     -1,    -1,   125,   140,   127,   128,   129,   130,    -1,   132,
    904    133,    -1,   135,   136,     3,     4,    -1,   140,     7,    -1,
    905      9,    10,    -1,    -1,    -1,    -1,    -1,   125,    -1,   127,
    906    128,   129,   130,    -1,   132,    -1,    -1,   135,   136,     3,
    907      4,    -1,   140,     7,    -1,     9,    10,   125,    -1,   127,
    908    128,   129,   130,    -1,   132,    -1,    -1,   125,   136,   127,
    909    128,   129,   130,    -1,   132,    -1,    -1,   135,   136,    -1,
    910     -1,   125,   140,   127,   128,   129,   130,    -1,   132,    -1,
    911     -1,   135,   136,    -1,    -1,   125,   140,   127,   128,   129,
    912    130,    -1,   132,    -1,    -1,   135,   136,    -1,    -1,   125,
    913    140,   127,   128,   129,   130,    -1,   132,    -1,    -1,   135,
    914    136,     3,     4,    -1,   140,     7,    -1,     9,    10,    -1,
    915     -1,    -1,    -1,    -1,    -1,     3,     4,    -1,    -1,     7,
    916     -1,     9,    10,    -1,    -1,    -1,   125,    -1,   127,   128,
    917    129,   130,    -1,   132,    -1,    -1,   135,   136,     3,     4,
    918     -1,   140,     7,    -1,     9,    10,    -1,    -1,    -1,    -1,
    919     -1,   125,    -1,   127,   128,   129,   130,    -1,   132,    -1,
    920     -1,   135,   136,     3,     4,    -1,   140,     7,    -1,     9,
    921     10,    -1,    -1,    -1,    -1,    -1,    -1,     3,     4,    -1,
    922     -1,     7,    -1,     9,    10,    -1,   106,    -1,   108,   109,
    923    110,     3,     4,    -1,    -1,     7,    -1,     9,    10,    -1,
    924     -1,    -1,    -1,   123,    -1,     3,     4,    -1,    -1,     7,
    925    130,     9,    10,    -1,    -1,    -1,    -1,    -1,    -1,   139,
    926     -1,   141,    -1,   125,    -1,   127,   128,   129,   130,    -1,
    927    132,    -1,    -1,   135,   136,    -1,    -1,   125,   140,   127,
    928    128,   129,   130,    -1,   132,    -1,    -1,   135,   136,     3,
    929      4,    -1,   140,     7,    -1,     9,    10,    -1,    -1,    -1,
    930    125,    -1,   127,   128,   129,   130,    -1,   132,    -1,    -1,
    931    135,   136,    -1,    -1,    -1,   140,    -1,    -1,    -1,    -1,
    932     -1,    -1,    -1,    -1,    -1,   125,    -1,   127,   128,   129,
    933    130,    -1,   132,    -1,    -1,   135,   136,    -1,    -1,   125,
    934    140,   127,   128,   129,   130,    -1,   132,    -1,    -1,   135,
    935    136,    -1,    -1,   125,   140,   127,   128,   129,   130,    -1,
    936    132,    -1,    -1,   135,   136,    -1,    -1,   125,   140,   127,
    937    128,   129,   130,    -1,   132,    -1,    -1,   135,   136,     8,
    938     -1,    -1,   140,    -1,    13,    14,    15,    -1,    17,    -1,
    939     19,    20,    -1,    -1,    -1,   106,    -1,   108,   109,   110,
    940    106,    -1,   108,   109,   110,    -1,    -1,    -1,    -1,    -1,
    941     -1,   125,   123,   127,   128,   129,   130,   123,   132,   130,
    942     -1,   135,   136,    -1,   130,    -1,   140,    -1,   139,    -1,
    943    141,    -1,    -1,   139,     8,   141,    -1,    -1,    -1,    13,
    944     -1,    15,    -1,    17,    -1,    19,    20,    -1,    -1,    -1,
    945     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    87,    88,
    946     89,    90,    91,    92,    93,    94,    95,    96,    97,    -1,
    947     -1,   106,    -1,   108,   109,   110,    -1,   106,    -1,   108,
    948    109,   110,    -1,    -1,    -1,    -1,   115,   116,   123,    -1,
    949     -1,     8,    -1,    -1,   123,   130,    13,    -1,    15,   128,
    950     17,   130,    19,    20,   139,    -1,   141,    -1,    -1,    -1,
    951    139,    -1,   141,    87,    88,    89,    90,    91,    92,    93,
    952     94,    95,    96,    97,    -1,    -1,   106,    -1,   108,   109,
    953    110,    -1,   106,    -1,   108,   109,   110,    -1,    -1,    -1,
    954     -1,   115,   116,   123,    -1,    -1,     8,    -1,    -1,   123,
    955    130,    13,    -1,    15,   128,    17,   130,    19,    20,   139,
    956     -1,   141,    -1,    -1,    -1,   139,   140,   141,    -1,    -1,
    957     87,    88,    89,    90,    91,    92,    93,    94,    95,    96,
    958     97,    -1,    -1,   106,    -1,   108,   109,   110,    -1,   106,
    959     -1,   108,   109,   110,    -1,    -1,    -1,    -1,   115,   116,
    960    123,    -1,    -1,     8,    -1,    -1,   123,   130,    13,    -1,
    961     15,   128,    17,   130,    19,    20,   139,    -1,   141,    -1,
    962     -1,    -1,   139,   140,   141,    87,    88,    89,    90,    91,
    963     92,    93,    94,    95,    96,    97,    -1,    -1,    -1,    -1,
    964     -1,    -1,    -1,    -1,   106,    -1,   108,   109,   110,    -1,
    965     -1,    -1,    -1,   115,   116,    -1,    -1,    -1,     8,    -1,
    966     -1,   123,    -1,    13,    -1,    15,   128,    17,   130,    19,
    967     20,    -1,    -1,    -1,    -1,    -1,    -1,   139,   140,   141,
    968     -1,    -1,    87,    88,    89,    90,    91,    92,    93,    94,
    969     95,    96,    97,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    970     -1,   106,    -1,   108,   109,   110,    -1,    -1,    -1,    -1,
    971    115,   116,    -1,    -1,    -1,     8,    -1,    -1,   123,    -1,
    972     13,    -1,    15,   128,    17,   130,    19,    20,    -1,    -1,
    973     -1,    -1,    -1,    -1,   139,   140,   141,    87,    88,    89,
    974     90,    91,    92,    93,    94,    95,    96,    97,    -1,    -1,
    975     -1,    -1,    -1,    -1,    -1,    -1,   106,    -1,   108,   109,
    976    110,    -1,    -1,    -1,    -1,   115,   116,    -1,    -1,    -1,
    977      8,    -1,    -1,   123,    -1,    13,    -1,    15,   128,    17,
    978    130,    19,    20,    -1,    -1,    -1,    -1,    -1,    -1,   139,
    979    140,   141,    -1,    -1,    87,    88,    89,    90,    91,    92,
    980     93,    94,    95,    96,    97,     3,     4,    -1,    -1,     7,
    981     -1,     9,    10,   106,    -1,   108,   109,   110,    -1,    -1,
    982      3,     4,   115,   116,     7,    -1,     9,    10,    -1,    -1,
    983    123,    -1,     3,     4,    -1,   128,     7,   130,     9,    10,
    984     -1,    -1,    -1,    -1,    -1,    -1,   139,    -1,   141,    87,
    985     88,    89,    90,    91,    92,    93,    94,    95,    96,    97,
    986      3,     4,    -1,    -1,     7,    -1,     9,    10,   106,    -1,
    987    108,   109,   110,    -1,    -1,     3,     4,   115,   116,     7,
    988     -1,     9,    10,    -1,    -1,   123,    -1,     3,     4,    -1,
    989    128,     7,   130,     9,    10,    -1,    -1,    -1,    -1,    -1,
    990     -1,   139,    -1,   141,     3,     4,    -1,    -1,     7,    -1,
    991      9,    10,    -1,    -1,    -1,    -1,     3,     4,    -1,    -1,
    992      7,    -1,     9,    10,    -1,    -1,    -1,   125,    -1,   127,
    993    128,   129,   130,   131,   132,   133,    -1,   135,   136,    -1,
    994     -1,    -1,   125,    -1,   127,   128,   129,   130,    -1,   132,
    995    133,    -1,   135,   136,   125,    -1,   127,   128,   129,   130,
    996     -1,   132,   133,    -1,   135,   136,     3,     4,    -1,    -1,
    997      7,    -1,     9,    10,    -1,    -1,    -1,    -1,    -1,    -1,
    998     -1,    -1,   125,    -1,   127,   128,   129,   130,    -1,   132,
    999    133,    -1,   135,   136,    -1,    -1,    -1,   125,    -1,   127,
    1000    128,   129,   130,   131,   132,    -1,    -1,   135,   136,   125,
    1001     -1,   127,   128,   129,   130,    -1,   132,   133,    -1,   135,
    1002    136,    -1,    -1,    -1,    -1,    -1,   125,    -1,   127,   128,
    1003    129,   130,   131,   132,    -1,    -1,   135,   136,   125,    -1,
    1004    127,   128,   129,   130,    -1,   132,   133,    -1,   135,   136,
    1005      3,     4,    -1,    -1,     7,    -1,     9,    10,    -1,    -1,
    1006     -1,    -1,     3,     4,    -1,    -1,     7,    -1,     9,    10,
    1007     -1,    -1,    -1,    -1,     3,     4,    -1,    -1,     7,    -1,
    1008      9,    10,    -1,    -1,    -1,    -1,    -1,    -1,   125,    -1,
    1009    127,   128,   129,   130,    -1,   132,   133,    -1,   135,   136,
    1010      3,     4,    -1,    -1,     7,    -1,     9,    10,    -1,    -1,
    1011     -1,    -1,     3,     4,    -1,    -1,     7,    -1,     9,    10,
    1012     -1,    -1,    -1,    -1,     3,     4,    -1,    -1,     7,    -1,
    1013      9,    10,    -1,    -1,    -1,    -1,     3,     4,    -1,    -1,
    1014      7,    -1,     9,    10,    -1,    -1,    -1,    -1,    -1,     4,
    1015     -1,    -1,     7,    -1,     9,    10,    -1,    -1,    -1,    -1,
    1016     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    1017     -1,    -1,   125,    -1,   127,   128,   129,   130,    -1,   132,
    1018    133,    -1,   135,   136,   125,    -1,   127,   128,   129,   130,
    1019     -1,   132,   133,    -1,   135,   136,   125,    -1,   127,   128,
    1020    129,   130,   131,   132,    -1,    -1,   135,   136,    13,    14,
    1021     15,    -1,    17,    -1,    19,    20,    -1,    -1,    -1,    -1,
    1022     -1,    -1,   125,    -1,   127,   128,   129,   130,   131,   132,
    1023     -1,    -1,   135,   136,   125,    -1,   127,   128,   129,   130,
    1024    131,   132,    -1,    -1,   135,   136,   125,    -1,   127,   128,
    1025    129,   130,    -1,   132,    -1,    -1,   135,   136,   125,    -1,
    1026    127,   128,   129,   130,    -1,   132,    -1,    -1,   135,   136,
    1027    125,    -1,   127,   128,   129,   130,    -1,   132,    -1,    -1,
    1028     -1,   136,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    1029     95,    96,    97,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
    1030     -1,   106,    -1,   108,   109,   110,    -1,    -1,    -1,    -1,
    1031     -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   123,    -1,
    1032     -1,    -1,    -1,    -1,    -1,   130,    -1,    -1,    -1,    -1,
    1033     -1,    -1,    -1,    -1,    -1,   140,   141
     1153/* YYTABLE[YYPACT[STATE-NUM]].  What to do in state STATE-NUM.  If
     1154   positive, shift that token.  If negative, reduce the rule which
     1155   number is the opposite.  If zero, do what YYDEFACT says.
     1156   If YYTABLE_NINF, syntax error.  */
     1157#define YYTABLE_NINF -1
     1158static const yytype_int16 yytable[] =
     1159{
     1160      59,   339,    86,   149,   284,   353,   151,   146,    65,   120,
     1161     288,   143,   145,   149,   214,   143,   151,   136,   137,   143,
     1162     143,   146,    94,   119,    97,    98,   143,   125,   102,   353,
     1163     149,   340,    30,   151,    31,    32,    33,   121,   100,   112,
     1164     114,   116,   126,   146,   146,   122,   146,   124,   139,    93,
     1165     258,   260,    65,   276,   147,   148,    49,   146,   149,   103,
     1166     150,   151,   161,   134,   278,    96,   138,    52,   149,   146,
     1167     141,   151,   104,   164,   147,   148,   282,   335,   149,   160,
     1168     150,   151,   165,   166,   163,   146,   307,   146,   213,   105,
     1169     146,   308,   338,   169,   368,   170,   117,   118,   106,   147,
     1170     148,   204,   205,   149,   107,   150,   151,   108,   109,   187,
     1171     110,   123,   190,   127,   171,   128,   130,   149,   175,   177,
     1172     151,   179,   180,   181,   182,   183,   184,   185,   156,   188,
     1173     203,   211,   172,   191,   164,   153,   154,   155,   156,   269,
     1174     157,   144,   202,   218,   159,   144,   270,   178,   208,   144,
     1175     144,   129,    98,   131,   155,   156,   144,   157,   132,   168,
     1176      30,   235,   216,   142,   219,   220,   221,    96,   222,   101,
     1177     223,   224,   225,   226,   227,   228,   229,   230,   152,   111,
     1178     153,   154,   155,   156,   236,   157,   173,   237,   158,   159,
     1179     241,   113,   242,   156,   215,   157,   247,   231,   152,   115,
     1180     153,   154,   155,   156,   162,   157,   192,   146,   158,   159,
     1181     193,   207,    30,   232,    31,    32,    33,   209,   165,   244,
     1182     262,   263,   264,   152,   273,   153,   154,   155,   156,    93,
     1183     157,   239,   265,   158,   159,   266,    49,   152,   240,   153,
     1184     154,   155,   156,   267,   157,   101,   272,    52,   159,   281,
     1185     274,   268,   277,   271,   306,   311,   283,   285,   313,   315,
     1186     317,   326,   283,   289,   327,   328,   350,   291,   292,   293,
     1187     339,   294,   329,   295,   296,   330,   304,     2,     3,   364,
     1188     331,   332,   333,   356,   355,     4,   314,    99,   365,   135,
     1189       5,     6,     7,   310,     8,   363,     9,    10,   309,   147,
     1190     148,   367,     0,   149,   238,   150,   151,     0,     0,     0,
     1191       0,     0,     0,     0,     0,   147,   148,    11,     0,   149,
     1192       0,   150,   151,     0,    30,     0,    31,    32,    33,   283,
     1193     336,   337,     0,     0,   344,   345,     0,   346,     0,   347,
     1194     348,    93,   349,   147,   148,     0,     0,   149,    49,   150,
     1195     151,     0,     0,     0,   366,     0,     0,   147,   148,    52,
     1196       0,   149,     0,   150,   151,     0,    12,    13,    14,    15,
     1197      16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
     1198      26,     0,    27,    28,    29,    30,     0,    31,    32,    33,
     1199      34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
     1200      44,    45,    46,     0,    47,     0,     0,    48,     0,    49,
     1201     147,   148,     0,    50,   149,     0,   150,   151,    51,     0,
     1202      52,     0,     0,   152,     0,   153,   154,   155,   156,     0,
     1203     157,   245,     0,   158,   159,     0,     0,     0,   246,   152,
     1204       0,   153,   154,   155,   156,     0,   157,   251,     0,   158,
     1205     159,   147,   148,     0,   252,   149,     0,   150,   151,     0,
     1206       0,     0,     0,     0,     0,     0,     0,   152,     0,   153,
     1207     154,   155,   156,     0,   157,   253,     0,   158,   159,     0,
     1208       0,   152,   254,   153,   154,   155,   156,     0,   157,   256,
     1209       0,   158,   159,   147,   148,     0,   257,   149,     0,   150,
     1210     151,     0,     0,     0,     0,     0,     0,   147,   148,     0,
     1211       0,   149,     0,   150,   151,     0,     0,     0,     0,     0,
     1212       0,   147,   148,     0,     0,   149,     0,   150,   151,     0,
     1213       0,     0,     0,     0,   152,     0,   153,   154,   155,   156,
     1214       0,   157,   322,     0,   158,   159,   147,   148,     0,   323,
     1215     149,     0,   150,   151,     0,     0,     0,     0,     0,     0,
     1216     147,   148,     0,     0,   149,     0,   150,   151,     0,     0,
     1217       0,     0,     0,     0,     0,   152,     0,   153,   154,   155,
     1218     156,     0,   157,   324,     0,   158,   159,   147,   148,     0,
     1219     325,   149,     0,   150,   151,     0,     0,     0,     0,     0,
     1220       0,   147,   148,     0,     0,   149,     0,   150,   151,     0,
     1221       0,     0,     0,     0,     0,     0,     0,   152,     0,   153,
     1222     154,   155,   156,     0,   157,     0,     0,   158,   159,     0,
     1223       0,   152,   243,   153,   154,   155,   156,     0,   157,     0,
     1224       0,   158,   159,     0,     0,   152,   248,   153,   154,   155,
     1225     156,     0,   157,     0,     0,   158,   159,   147,   148,     0,
     1226     259,   149,     0,   150,   151,     0,     0,     0,     0,     0,
     1227     152,     0,   153,   154,   155,   156,     0,   157,     0,     0,
     1228     158,   159,     0,     0,   152,   261,   153,   154,   155,   156,
     1229       0,   157,     0,     0,   158,   159,   147,   148,     0,   275,
     1230     149,     0,   150,   151,     0,     0,     0,     0,     0,     0,
     1231       0,   152,     0,   153,   154,   155,   156,     0,   157,     0,
     1232       0,   158,   159,     0,     0,   152,   305,   153,   154,   155,
     1233     156,     0,   157,     0,     0,   158,   159,   147,   148,     0,
     1234     232,   149,     0,   150,   151,     0,     0,     0,     0,     0,
     1235       0,   147,   148,     0,     0,   149,     0,   150,   151,     0,
     1236       0,     0,     0,     0,     0,   147,   148,     0,     0,   149,
     1237       0,   150,   151,   297,   298,   299,     0,     8,     0,   300,
     1238      10,   152,     0,   153,   154,   155,   156,     0,   157,     0,
     1239       0,   158,   159,   147,   148,     0,   318,   149,     0,   150,
     1240     151,     0,     0,     0,     0,     0,     0,   147,   148,     0,
     1241       0,   149,     0,   150,   151,     0,     0,     0,     0,     0,
     1242     152,     0,   153,   154,   155,   156,     0,   157,     0,     0,
     1243     158,   159,   147,   148,     0,   320,   149,     0,   150,   151,
     1244       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     1245       0,     0,     0,     0,     0,     0,     0,   301,   302,   303,
     1246       0,   152,     0,   153,   154,   155,   156,     0,   157,     0,
     1247       0,   158,   159,     0,     0,   152,   351,   153,   154,   155,
     1248     156,     0,   157,     0,     0,   158,   159,     0,     0,   152,
     1249     357,   153,   154,   155,   156,     0,   157,     0,     0,   158,
     1250     159,     4,     0,     0,   359,     0,     5,   133,    88,     0,
     1251       8,     0,     9,    10,     0,     0,     0,   152,     0,   153,
     1252     154,   155,   156,     0,   157,     0,     0,   158,   159,     0,
     1253       0,   152,   360,   153,   154,   155,   156,     0,   157,     0,
     1254       0,   158,   159,     0,     0,    30,   361,    31,    32,    33,
     1255       0,     0,     0,     0,     0,     0,   152,     0,   153,   154,
     1256     155,   156,    93,   157,     0,     4,   158,   159,     0,    49,
     1257      87,   362,    88,     0,     8,     0,    89,    10,   111,     0,
     1258      52,     0,    12,    13,    14,    15,    16,    17,    18,    19,
     1259      20,    21,    22,     0,     0,     0,    30,     0,    31,    32,
     1260      33,    30,     0,    31,    32,    33,     0,     0,     0,     0,
     1261      38,    39,     0,    93,     0,     0,     0,     0,    93,     0,
     1262      49,     4,     0,    48,     0,    49,    87,     0,    88,   113,
     1263       8,    52,    89,    10,    51,     0,    52,     0,     0,     0,
     1264       0,     0,     0,     0,     0,     0,    12,    13,    14,    15,
     1265      16,    17,    18,    19,    90,    91,    92,     0,     0,    30,
     1266       0,    31,    32,    33,     0,    30,     0,    31,    32,    33,
     1267       0,     0,     0,     0,    38,    39,    93,     0,     0,     4,
     1268       0,     0,    93,    49,    87,     0,    88,    48,     8,    49,
     1269      89,    10,   115,     0,    52,     0,     0,     0,    51,   186,
     1270      52,     0,    12,    13,    14,    15,    16,    17,    18,    19,
     1271      90,    91,    92,     0,     0,    30,     0,    31,    32,    33,
     1272       0,    30,     0,    31,    32,    33,     0,     0,     0,     0,
     1273      38,    39,    93,     0,     0,     4,     0,     0,    93,    49,
     1274      87,     0,    88,    48,     8,    49,    89,    10,   162,     0,
     1275      52,     0,     0,     0,    51,   189,    52,     0,     0,     0,
     1276      12,    13,    14,    15,    16,    17,    18,    19,    90,    91,
     1277      92,     0,     0,     0,     0,     0,     0,     0,     0,    30,
     1278       0,    31,    32,    33,     0,     0,     0,     0,    38,    39,
     1279       0,     0,     0,     4,     0,     0,    93,     0,    87,     0,
     1280      88,    48,     8,    49,    89,    10,     0,     0,     0,     0,
     1281       0,     0,    51,   210,    52,     0,    12,    13,    14,    15,
     1282      16,    17,    18,    19,    90,    91,    92,     0,     0,     0,
     1283       0,     0,     0,     0,     0,    30,     0,    31,    32,    33,
     1284       0,     0,     0,     0,    38,    39,     0,     0,     0,     4,
     1285       0,     0,    93,     0,    87,     0,    88,    48,     8,    49,
     1286      89,    10,     0,     0,     0,     0,     0,     0,    51,   217,
     1287      52,     0,     0,     0,    12,    13,    14,    15,    16,    17,
     1288      18,    19,    90,    91,    92,     0,     0,     0,     0,     0,
     1289       0,     0,     0,    30,     0,    31,    32,    33,     0,     0,
     1290       0,     0,    38,    39,     0,     0,     0,     4,     0,     0,
     1291      93,     0,    87,     0,    88,    48,     8,    49,    89,    10,
     1292       0,     0,     0,     0,     0,     0,    51,   234,    52,     0,
     1293      12,    13,    14,    15,    16,    17,    18,    19,    90,    91,
     1294      92,   147,   148,     0,     0,   149,     0,   150,   151,    30,
     1295       0,    31,    32,    33,     0,     0,   147,   148,    38,    39,
     1296     149,     0,   150,   151,     0,     0,    93,     0,   147,   148,
     1297       0,    48,   149,    49,   150,   151,     0,     0,     0,     0,
     1298       0,     0,    51,     0,    52,     0,     0,     0,    12,    13,
     1299      14,    15,    16,    17,    18,    19,    90,    91,    92,   147,
     1300     148,     0,     0,   149,     0,   150,   151,    30,     0,    31,
     1301      32,    33,     0,     0,   147,   148,    38,    39,   149,     0,
     1302     150,   151,     0,     0,    93,     0,   147,   148,     0,    48,
     1303     149,    49,   150,   151,     0,     0,     0,     0,     0,     0,
     1304     174,     0,    52,   147,   148,     0,     0,   149,     0,   150,
     1305     151,     0,     0,     0,     0,   147,   148,     0,     0,   149,
     1306       0,   150,   151,     0,     0,   152,     0,   153,   154,   155,
     1307     156,   279,   157,   280,     0,   158,   159,     0,     0,     0,
     1308     152,     0,   153,   154,   155,   156,     0,   157,   249,     0,
     1309     158,   159,   152,     0,   153,   154,   155,   156,     0,   157,
     1310     250,     0,   158,   159,   147,   148,     0,     0,   149,     0,
     1311     150,   151,     0,     0,     0,     0,     0,     0,     0,     0,
     1312       0,     0,     0,   152,     0,   153,   154,   155,   156,     0,
     1313     157,   255,     0,   158,   159,     0,     0,     0,   152,     0,
     1314     153,   154,   155,   156,   286,   157,     0,     0,   158,   159,
     1315     152,     0,   153,   154,   155,   156,     0,   157,   287,     0,
     1316     158,   159,     0,     0,     0,     0,     0,   152,     0,   153,
     1317     154,   155,   156,   290,   157,     0,     0,   158,   159,   152,
     1318       0,   153,   154,   155,   156,     0,   157,   312,     0,   158,
     1319     159,   147,   148,     0,     0,   149,     0,   150,   151,     0,
     1320       0,     0,     0,   147,   148,     0,     0,   149,     0,   150,
     1321     151,     0,     0,     0,     0,   147,   148,     0,     0,   149,
     1322       0,   150,   151,     0,     0,     0,     0,     0,   152,     0,
     1323     153,   154,   155,   156,     0,   157,   316,     0,   158,   159,
     1324     147,   148,     0,     0,   149,     0,   150,   151,     0,     0,
     1325       0,     0,   147,   148,     0,     0,   149,     0,   150,   151,
     1326       0,     0,     0,     0,   147,   148,     0,     0,   149,     0,
     1327     150,   151,     0,     0,     0,     0,    -1,   148,     0,     0,
     1328     149,     0,   150,   151,     0,     0,     0,     0,     0,   148,
     1329       0,     0,   149,     0,   150,   151,     0,     0,     0,     0,
     1330       0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     1331       0,     0,     0,     0,     0,   152,     0,   153,   154,   155,
     1332     156,     0,   157,   319,     0,   158,   159,   152,     0,   153,
     1333     154,   155,   156,     0,   157,   321,     0,   158,   159,   152,
     1334       0,   153,   154,   155,   156,   334,   157,     0,     0,   158,
     1335     159,   194,   195,   196,     0,     8,     0,   197,    10,     0,
     1336       0,     0,     0,     0,   152,     0,   153,   154,   155,   156,
     1337     352,   157,     0,     0,   158,   159,   152,     0,   153,   154,
     1338     155,   156,   358,   157,     0,     0,   158,   159,   152,     0,
     1339     153,   154,   155,   156,     0,   157,     0,     0,   158,   159,
     1340     152,     0,   153,   154,   155,   156,     0,   157,     0,     0,
     1341     158,   159,   152,     0,   153,   154,   155,   156,     0,   157,
     1342       0,     0,     0,   159,     0,     0,     0,     0,     0,     0,
     1343       0,     0,     0,     0,     0,   198,   199,   200,     0,     0,
     1344       0,     0,     0,     0,     0,     0,    30,     0,    31,    32,
     1345      33,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     1346       0,     0,     0,    93,     0,     0,     0,     0,     0,     0,
     1347      49,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     1348     201,    52
    10341349};
    1035 #define YYPURE 1
    1036 
    1037 /* -*-C-*-  Note some compilers choke on comments on `#line' lines.  */
    1038 #line 3 "/usr/lib/bison.simple"
    1039 /* This file comes from bison-1.28.  */
    1040 
    1041 /* Skeleton output parser for bison,
    1042    Copyright (C) 1984, 1989, 1990 Free Software Foundation, Inc.
    1043 
    1044    This program is free software; you can redistribute it and/or modify
    1045    it under the terms of the GNU General Public License as published by
    1046    the Free Software Foundation; either version 2, or (at your option)
    1047    any later version.
    1048 
    1049    This program is distributed in the hope that it will be useful,
    1050    but WITHOUT ANY WARRANTY; without even the implied warranty of
    1051    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    1052    GNU General Public License for more details.
    1053 
    1054    You should have received a copy of the GNU General Public License
    1055    along with this program; if not, write to the Free Software
    1056    Foundation, Inc., 59 Temple Place - Suite 330,
    1057    Boston, MA 02111-1307, USA.  */
    1058 
    1059 /* As a special exception, when this file is copied by Bison into a
    1060    Bison output file, you may use that output file without restriction.
    1061    This special exception was added by the Free Software Foundation
    1062    in version 1.24 of Bison.  */
    1063 
    1064 /* This is the parser code that is written into each bison parser
    1065   when the %semantic_parser declaration is not specified in the grammar.
    1066   It was written by Richard Stallman by simplifying the hairy parser
    1067   used when %semantic_parser is specified.  */
    1068 
    1069 #ifndef YYSTACK_USE_ALLOCA
    1070 #ifdef alloca
    1071 #define YYSTACK_USE_ALLOCA
    1072 #else /* alloca not defined */
    1073 #ifdef __GNUC__
    1074 #define YYSTACK_USE_ALLOCA
    1075 #define alloca __builtin_alloca
    1076 #else /* not GNU C.  */
    1077 #if (!defined (__STDC__) && defined (sparc)) || defined (__sparc__) || defined (__sparc) || defined (__sgi) || (defined (__sun) && defined (__i386))
    1078 #define YYSTACK_USE_ALLOCA
    1079 #include <alloca.h>
    1080 #else /* not sparc */
    1081 /* We think this test detects Watcom and Microsoft C.  */
    1082 /* This used to test MSDOS, but that is a bad idea
    1083    since that symbol is in the user namespace.  */
    1084 #if (defined (_MSDOS) || defined (_MSDOS_)) && !defined (__TURBOC__)
    1085 #if 0 /* No need for malloc.h, which pollutes the namespace;
    1086          instead, just don't use alloca.  */
    1087 #include <malloc.h>
    1088 #endif
    1089 #else /* not MSDOS, or __TURBOC__ */
    1090 #if defined(_AIX)
    1091 /* I don't know what this was needed for, but it pollutes the namespace.
    1092    So I turned it off.   rms, 2 May 1997.  */
    1093 /* #include <malloc.h>  */
    1094  #pragma alloca
    1095 #define YYSTACK_USE_ALLOCA
    1096 #else /* not MSDOS, or __TURBOC__, or _AIX */
    1097 #if 0
    1098 #ifdef __hpux /* haible@ilog.fr says this works for HPUX 9.05 and up,
    1099                  and on HPUX 10.  Eventually we can turn this on.  */
    1100 #define YYSTACK_USE_ALLOCA
    1101 #define alloca __builtin_alloca
    1102 #endif /* __hpux */
    1103 #endif
    1104 #endif /* not _AIX */
    1105 #endif /* not MSDOS, or __TURBOC__ */
    1106 #endif /* not sparc */
    1107 #endif /* not GNU C */
    1108 #endif /* alloca not defined */
    1109 #endif /* YYSTACK_USE_ALLOCA not defined */
    1110 
    1111 #ifdef YYSTACK_USE_ALLOCA
    1112 #define YYSTACK_ALLOC alloca
    1113 #else
    1114 #define YYSTACK_ALLOC malloc
    1115 #endif
    1116 
    1117 /* Note: there must be only one dollar sign in this file.
    1118    It is replaced by the list of actions, each action
    1119    as one case of the switch.  */
     1350
     1351static const yytype_int16 yycheck[] =
     1352{
     1353       1,   111,   136,     7,   238,   340,    10,   135,     1,   108,
     1354     244,    11,   126,     7,   142,    11,    10,    46,    47,    11,
     1355      11,   135,     4,    24,     5,     6,    11,   108,     9,   364,
     1356       7,   141,   108,    10,   110,   111,   112,   136,   141,    20,
     1357      21,    22,   109,   135,   135,    26,   135,    29,    49,   125,
     1358     142,   142,    45,   142,     3,     4,   132,   135,     7,   141,
     1359       9,    10,    63,    45,   142,   141,    48,   143,     7,   135,
     1360      52,    10,   141,   126,     3,     4,   142,   311,     7,    61,
     1361       9,    10,   135,   136,    65,   135,   109,   135,   133,   141,
     1362     135,   114,   142,    74,   142,    77,   108,   109,   141,     3,
     1363       4,   108,   109,     7,   141,     9,    10,   141,   141,   110,
     1364     141,   141,   113,   141,    96,   141,   141,     7,   100,   101,
     1365      10,   103,   104,   105,   106,   107,   108,   109,   132,   111,
     1366     123,   132,   132,   115,   126,   129,   130,   131,   132,   135,
     1367     134,   141,   123,   144,   138,   141,   142,   132,   130,   141,
     1368     141,   108,   133,   108,   131,   132,   141,   134,   141,   135,
     1369     108,   162,   143,   136,   146,   147,   148,   141,   150,   141,
     1370     152,   153,   154,   155,   156,   157,   158,   159,   127,   141,
     1371     129,   130,   131,   132,   165,   134,   109,   168,   137,   138,
     1372     172,   141,   174,   132,   143,   134,   178,   126,   127,   141,
     1373     129,   130,   131,   132,   141,   134,   136,   135,   137,   138,
     1374     136,   108,   108,   142,   110,   111,   112,   109,   135,   135,
     1375     142,   142,   142,   127,   206,   129,   130,   131,   132,   125,
     1376     134,   135,   142,   137,   138,   142,   132,   127,   142,   129,
     1377     130,   131,   132,   142,   134,   141,   109,   143,   138,   231,
     1378     108,   142,   136,   142,   109,   135,   238,   239,   132,   135,
     1379     132,   142,   244,   245,   142,   142,   135,   249,   250,   251,
     1380     111,   253,   142,   255,   256,   142,   269,     0,     1,   135,
     1381     142,   142,   142,   142,   141,     8,   287,     6,   142,    45,
     1382      13,    14,    15,   281,    17,   350,    19,    20,   280,     3,
     1383       4,   364,    -1,     7,   169,     9,    10,    -1,    -1,    -1,
     1384      -1,    -1,    -1,    -1,    -1,     3,     4,    40,    -1,     7,
     1385      -1,     9,    10,    -1,   108,    -1,   110,   111,   112,   311,
     1386     312,   313,    -1,    -1,   316,   317,    -1,   319,    -1,   321,
     1387     322,   125,   324,     3,     4,    -1,    -1,     7,   132,     9,
     1388      10,    -1,    -1,    -1,   355,    -1,    -1,     3,     4,   143,
     1389      -1,     7,    -1,     9,    10,    -1,    89,    90,    91,    92,
     1390      93,    94,    95,    96,    97,    98,    99,   100,   101,   102,
     1391     103,    -1,   105,   106,   107,   108,    -1,   110,   111,   112,
     1392     113,   114,   115,   116,   117,   118,   119,   120,   121,   122,
     1393     123,   124,   125,    -1,   127,    -1,    -1,   130,    -1,   132,
     1394       3,     4,    -1,   136,     7,    -1,     9,    10,   141,    -1,
     1395     143,    -1,    -1,   127,    -1,   129,   130,   131,   132,    -1,
     1396     134,   135,    -1,   137,   138,    -1,    -1,    -1,   142,   127,
     1397      -1,   129,   130,   131,   132,    -1,   134,   135,    -1,   137,
     1398     138,     3,     4,    -1,   142,     7,    -1,     9,    10,    -1,
     1399      -1,    -1,    -1,    -1,    -1,    -1,    -1,   127,    -1,   129,
     1400     130,   131,   132,    -1,   134,   135,    -1,   137,   138,    -1,
     1401      -1,   127,   142,   129,   130,   131,   132,    -1,   134,   135,
     1402      -1,   137,   138,     3,     4,    -1,   142,     7,    -1,     9,
     1403      10,    -1,    -1,    -1,    -1,    -1,    -1,     3,     4,    -1,
     1404      -1,     7,    -1,     9,    10,    -1,    -1,    -1,    -1,    -1,
     1405      -1,     3,     4,    -1,    -1,     7,    -1,     9,    10,    -1,
     1406      -1,    -1,    -1,    -1,   127,    -1,   129,   130,   131,   132,
     1407      -1,   134,   135,    -1,   137,   138,     3,     4,    -1,   142,
     1408       7,    -1,     9,    10,    -1,    -1,    -1,    -1,    -1,    -1,
     1409       3,     4,    -1,    -1,     7,    -1,     9,    10,    -1,    -1,
     1410      -1,    -1,    -1,    -1,    -1,   127,    -1,   129,   130,   131,
     1411     132,    -1,   134,   135,    -1,   137,   138,     3,     4,    -1,
     1412     142,     7,    -1,     9,    10,    -1,    -1,    -1,    -1,    -1,
     1413      -1,     3,     4,    -1,    -1,     7,    -1,     9,    10,    -1,
     1414      -1,    -1,    -1,    -1,    -1,    -1,    -1,   127,    -1,   129,
     1415     130,   131,   132,    -1,   134,    -1,    -1,   137,   138,    -1,
     1416      -1,   127,   142,   129,   130,   131,   132,    -1,   134,    -1,
     1417      -1,   137,   138,    -1,    -1,   127,   142,   129,   130,   131,
     1418     132,    -1,   134,    -1,    -1,   137,   138,     3,     4,    -1,
     1419     142,     7,    -1,     9,    10,    -1,    -1,    -1,    -1,    -1,
     1420     127,    -1,   129,   130,   131,   132,    -1,   134,    -1,    -1,
     1421     137,   138,    -1,    -1,   127,   142,   129,   130,   131,   132,
     1422      -1,   134,    -1,    -1,   137,   138,     3,     4,    -1,   142,
     1423       7,    -1,     9,    10,    -1,    -1,    -1,    -1,    -1,    -1,
     1424      -1,   127,    -1,   129,   130,   131,   132,    -1,   134,    -1,
     1425      -1,   137,   138,    -1,    -1,   127,   142,   129,   130,   131,
     1426     132,    -1,   134,    -1,    -1,   137,   138,     3,     4,    -1,
     1427     142,     7,    -1,     9,    10,    -1,    -1,    -1,    -1,    -1,
     1428      -1,     3,     4,    -1,    -1,     7,    -1,     9,    10,    -1,
     1429      -1,    -1,    -1,    -1,    -1,     3,     4,    -1,    -1,     7,
     1430      -1,     9,    10,    13,    14,    15,    -1,    17,    -1,    19,
     1431      20,   127,    -1,   129,   130,   131,   132,    -1,   134,    -1,
     1432      -1,   137,   138,     3,     4,    -1,   142,     7,    -1,     9,
     1433      10,    -1,    -1,    -1,    -1,    -1,    -1,     3,     4,    -1,
     1434      -1,     7,    -1,     9,    10,    -1,    -1,    -1,    -1,    -1,
     1435     127,    -1,   129,   130,   131,   132,    -1,   134,    -1,    -1,
     1436     137,   138,     3,     4,    -1,   142,     7,    -1,     9,    10,
     1437      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     1438      -1,    -1,    -1,    -1,    -1,    -1,    -1,    97,    98,    99,
     1439      -1,   127,    -1,   129,   130,   131,   132,    -1,   134,    -1,
     1440      -1,   137,   138,    -1,    -1,   127,   142,   129,   130,   131,
     1441     132,    -1,   134,    -1,    -1,   137,   138,    -1,    -1,   127,
     1442     142,   129,   130,   131,   132,    -1,   134,    -1,    -1,   137,
     1443     138,     8,    -1,    -1,   142,    -1,    13,    14,    15,    -1,
     1444      17,    -1,    19,    20,    -1,    -1,    -1,   127,    -1,   129,
     1445     130,   131,   132,    -1,   134,    -1,    -1,   137,   138,    -1,
     1446      -1,   127,   142,   129,   130,   131,   132,    -1,   134,    -1,
     1447      -1,   137,   138,    -1,    -1,   108,   142,   110,   111,   112,
     1448      -1,    -1,    -1,    -1,    -1,    -1,   127,    -1,   129,   130,
     1449     131,   132,   125,   134,    -1,     8,   137,   138,    -1,   132,
     1450      13,   142,    15,    -1,    17,    -1,    19,    20,   141,    -1,
     1451     143,    -1,    89,    90,    91,    92,    93,    94,    95,    96,
     1452      97,    98,    99,    -1,    -1,    -1,   108,    -1,   110,   111,
     1453     112,   108,    -1,   110,   111,   112,    -1,    -1,    -1,    -1,
     1454     117,   118,    -1,   125,    -1,    -1,    -1,    -1,   125,    -1,
     1455     132,     8,    -1,   130,    -1,   132,    13,    -1,    15,   141,
     1456      17,   143,    19,    20,   141,    -1,   143,    -1,    -1,    -1,
     1457      -1,    -1,    -1,    -1,    -1,    -1,    89,    90,    91,    92,
     1458      93,    94,    95,    96,    97,    98,    99,    -1,    -1,   108,
     1459      -1,   110,   111,   112,    -1,   108,    -1,   110,   111,   112,
     1460      -1,    -1,    -1,    -1,   117,   118,   125,    -1,    -1,     8,
     1461      -1,    -1,   125,   132,    13,    -1,    15,   130,    17,   132,
     1462      19,    20,   141,    -1,   143,    -1,    -1,    -1,   141,   142,
     1463     143,    -1,    89,    90,    91,    92,    93,    94,    95,    96,
     1464      97,    98,    99,    -1,    -1,   108,    -1,   110,   111,   112,
     1465      -1,   108,    -1,   110,   111,   112,    -1,    -1,    -1,    -1,
     1466     117,   118,   125,    -1,    -1,     8,    -1,    -1,   125,   132,
     1467      13,    -1,    15,   130,    17,   132,    19,    20,   141,    -1,
     1468     143,    -1,    -1,    -1,   141,   142,   143,    -1,    -1,    -1,
     1469      89,    90,    91,    92,    93,    94,    95,    96,    97,    98,
     1470      99,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   108,
     1471      -1,   110,   111,   112,    -1,    -1,    -1,    -1,   117,   118,
     1472      -1,    -1,    -1,     8,    -1,    -1,   125,    -1,    13,    -1,
     1473      15,   130,    17,   132,    19,    20,    -1,    -1,    -1,    -1,
     1474      -1,    -1,   141,   142,   143,    -1,    89,    90,    91,    92,
     1475      93,    94,    95,    96,    97,    98,    99,    -1,    -1,    -1,
     1476      -1,    -1,    -1,    -1,    -1,   108,    -1,   110,   111,   112,
     1477      -1,    -1,    -1,    -1,   117,   118,    -1,    -1,    -1,     8,
     1478      -1,    -1,   125,    -1,    13,    -1,    15,   130,    17,   132,
     1479      19,    20,    -1,    -1,    -1,    -1,    -1,    -1,   141,   142,
     1480     143,    -1,    -1,    -1,    89,    90,    91,    92,    93,    94,
     1481      95,    96,    97,    98,    99,    -1,    -1,    -1,    -1,    -1,
     1482      -1,    -1,    -1,   108,    -1,   110,   111,   112,    -1,    -1,
     1483      -1,    -1,   117,   118,    -1,    -1,    -1,     8,    -1,    -1,
     1484     125,    -1,    13,    -1,    15,   130,    17,   132,    19,    20,
     1485      -1,    -1,    -1,    -1,    -1,    -1,   141,   142,   143,    -1,
     1486      89,    90,    91,    92,    93,    94,    95,    96,    97,    98,
     1487      99,     3,     4,    -1,    -1,     7,    -1,     9,    10,   108,
     1488      -1,   110,   111,   112,    -1,    -1,     3,     4,   117,   118,
     1489       7,    -1,     9,    10,    -1,    -1,   125,    -1,     3,     4,
     1490      -1,   130,     7,   132,     9,    10,    -1,    -1,    -1,    -1,
     1491      -1,    -1,   141,    -1,   143,    -1,    -1,    -1,    89,    90,
     1492      91,    92,    93,    94,    95,    96,    97,    98,    99,     3,
     1493       4,    -1,    -1,     7,    -1,     9,    10,   108,    -1,   110,
     1494     111,   112,    -1,    -1,     3,     4,   117,   118,     7,    -1,
     1495       9,    10,    -1,    -1,   125,    -1,     3,     4,    -1,   130,
     1496       7,   132,     9,    10,    -1,    -1,    -1,    -1,    -1,    -1,
     1497     141,    -1,   143,     3,     4,    -1,    -1,     7,    -1,     9,
     1498      10,    -1,    -1,    -1,    -1,     3,     4,    -1,    -1,     7,
     1499      -1,     9,    10,    -1,    -1,   127,    -1,   129,   130,   131,
     1500     132,   133,   134,   135,    -1,   137,   138,    -1,    -1,    -1,
     1501     127,    -1,   129,   130,   131,   132,    -1,   134,   135,    -1,
     1502     137,   138,   127,    -1,   129,   130,   131,   132,    -1,   134,
     1503     135,    -1,   137,   138,     3,     4,    -1,    -1,     7,    -1,
     1504       9,    10,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     1505      -1,    -1,    -1,   127,    -1,   129,   130,   131,   132,    -1,
     1506     134,   135,    -1,   137,   138,    -1,    -1,    -1,   127,    -1,
     1507     129,   130,   131,   132,   133,   134,    -1,    -1,   137,   138,
     1508     127,    -1,   129,   130,   131,   132,    -1,   134,   135,    -1,
     1509     137,   138,    -1,    -1,    -1,    -1,    -1,   127,    -1,   129,
     1510     130,   131,   132,   133,   134,    -1,    -1,   137,   138,   127,
     1511      -1,   129,   130,   131,   132,    -1,   134,   135,    -1,   137,
     1512     138,     3,     4,    -1,    -1,     7,    -1,     9,    10,    -1,
     1513      -1,    -1,    -1,     3,     4,    -1,    -1,     7,    -1,     9,
     1514      10,    -1,    -1,    -1,    -1,     3,     4,    -1,    -1,     7,
     1515      -1,     9,    10,    -1,    -1,    -1,    -1,    -1,   127,    -1,
     1516     129,   130,   131,   132,    -1,   134,   135,    -1,   137,   138,
     1517       3,     4,    -1,    -1,     7,    -1,     9,    10,    -1,    -1,
     1518      -1,    -1,     3,     4,    -1,    -1,     7,    -1,     9,    10,
     1519      -1,    -1,    -1,    -1,     3,     4,    -1,    -1,     7,    -1,
     1520       9,    10,    -1,    -1,    -1,    -1,     3,     4,    -1,    -1,
     1521       7,    -1,     9,    10,    -1,    -1,    -1,    -1,    -1,     4,
     1522      -1,    -1,     7,    -1,     9,    10,    -1,    -1,    -1,    -1,
     1523      -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     1524      -1,    -1,    -1,    -1,    -1,   127,    -1,   129,   130,   131,
     1525     132,    -1,   134,   135,    -1,   137,   138,   127,    -1,   129,
     1526     130,   131,   132,    -1,   134,   135,    -1,   137,   138,   127,
     1527      -1,   129,   130,   131,   132,   133,   134,    -1,    -1,   137,
     1528     138,    13,    14,    15,    -1,    17,    -1,    19,    20,    -1,
     1529      -1,    -1,    -1,    -1,   127,    -1,   129,   130,   131,   132,
     1530     133,   134,    -1,    -1,   137,   138,   127,    -1,   129,   130,
     1531     131,   132,   133,   134,    -1,    -1,   137,   138,   127,    -1,
     1532     129,   130,   131,   132,    -1,   134,    -1,    -1,   137,   138,
     1533     127,    -1,   129,   130,   131,   132,    -1,   134,    -1,    -1,
     1534     137,   138,   127,    -1,   129,   130,   131,   132,    -1,   134,
     1535      -1,    -1,    -1,   138,    -1,    -1,    -1,    -1,    -1,    -1,
     1536      -1,    -1,    -1,    -1,    -1,    97,    98,    99,    -1,    -1,
     1537      -1,    -1,    -1,    -1,    -1,    -1,   108,    -1,   110,   111,
     1538     112,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     1539      -1,    -1,    -1,   125,    -1,    -1,    -1,    -1,    -1,    -1,
     1540     132,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
     1541     142,   143
     1542};
     1543
     1544/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
     1545   symbol of state STATE-NUM.  */
     1546static const yytype_uint8 yystos[] =
     1547{
     1548       0,   145,     0,     1,     8,    13,    14,    15,    17,    19,
     1549      20,    40,    89,    90,    91,    92,    93,    94,    95,    96,
     1550      97,    98,    99,   100,   101,   102,   103,   105,   106,   107,
     1551     108,   110,   111,   112,   113,   114,   115,   116,   117,   118,
     1552     119,   120,   121,   122,   123,   124,   125,   127,   130,   132,
     1553     136,   141,   143,   146,   147,   148,   149,   150,   151,   152,
     1554     153,   155,   157,   158,   159,   160,   161,   162,   169,   171,
     1555     172,   173,   174,   175,   176,   177,   178,   179,   180,   181,
     1556     182,   183,   184,   185,   186,   187,   136,    13,    15,    19,
     1557      97,    98,    99,   125,   153,   160,   141,   151,   151,   159,
     1558     141,   141,   151,   141,   141,   141,   141,   141,   141,   141,
     1559     141,   141,   151,   141,   151,   141,   151,   108,   109,   152,
     1560     108,   136,   151,   141,   153,   108,   109,   141,   141,   108,
     1561     141,   108,   141,    14,   153,   161,   162,   162,   153,   152,
     1562     152,   153,   136,    11,   141,   126,   135,     3,     4,     7,
     1563       9,    10,   127,   129,   130,   131,   132,   134,   137,   138,
     1564     153,   152,   141,   151,   126,   135,   136,   168,   135,   151,
     1565     153,   153,   132,   109,   141,   153,   163,   153,   132,   153,
     1566     153,   153,   153,   153,   153,   153,   142,   152,   153,   142,
     1567     152,   153,   136,   136,    13,    14,    15,    19,    97,    98,
     1568      99,   142,   151,   160,   108,   109,   154,   108,   153,   109,
     1569     142,   152,   170,   133,   142,   143,   151,   142,   152,   153,
     1570     153,   153,   153,   153,   153,   153,   153,   153,   153,   153,
     1571     153,   126,   142,   156,   142,   152,   151,   151,   168,   135,
     1572     142,   153,   153,   142,   135,   135,   142,   153,   142,   135,
     1573     135,   135,   142,   135,   142,   135,   135,   142,   142,   142,
     1574     142,   142,   142,   142,   142,   142,   142,   142,   142,   135,
     1575     142,   142,   109,   153,   108,   142,   142,   136,   142,   133,
     1576     135,   153,   142,   153,   163,   153,   133,   135,   163,   153,
     1577     133,   153,   153,   153,   153,   153,   153,    13,    14,    15,
     1578      19,    97,    98,    99,   160,   142,   109,   109,   114,   153,
     1579     156,   135,   135,   132,   152,   135,   135,   132,   142,   135,
     1580     142,   135,   135,   142,   135,   142,   142,   142,   142,   142,
     1581     142,   142,   142,   142,   133,   163,   153,   153,   142,   111,
     1582     141,   164,   165,   167,   153,   153,   153,   153,   153,   153,
     1583     135,   142,   133,   165,   166,   141,   142,   142,   133,   142,
     1584     142,   142,   142,   167,   135,   142,   152,   166,   142
     1585};
    11201586
    11211587#define yyerrok         (yyerrstatus = 0)
    11221588#define yyclearin       (yychar = YYEMPTY)
    1123 #define YYEMPTY         -2
     1589#define YYEMPTY         (-2)
    11241590#define YYEOF           0
     1591
    11251592#define YYACCEPT        goto yyacceptlab
    1126 #define YYABORT         goto yyabortlab
    1127 #define YYERROR         goto yyerrlab1
    1128 /* Like YYERROR except do call yyerror.
    1129    This remains here temporarily to ease the
    1130    transition to the new meaning of YYERROR, for GCC.
     1593#define YYABORT         goto yyabortlab
     1594#define YYERROR         goto yyerrorlab
     1595
     1596
     1597/* Like YYERROR except do call yyerror.  This remains here temporarily
     1598   to ease the transition to the new meaning of YYERROR, for GCC.
    11311599   Once GCC version 2 has supplanted version 1, this can go.  */
     1600
    11321601#define YYFAIL          goto yyerrlab
     1602
    11331603#define YYRECOVERING()  (!!yyerrstatus)
    1134 #define YYBACKUP(token, value) \
     1604
     1605#define YYBACKUP(Token, Value)                                  \
    11351606do                                                              \
    11361607  if (yychar == YYEMPTY && yylen == 1)                          \
    1137     { yychar = (token), yylval = (value);                       \
    1138       yychar1 = YYTRANSLATE (yychar);                           \
    1139       YYPOPSTACK;                                               \
     1608    {                                                           \
     1609      yychar = (Token);                                         \
     1610      yylval = (Value);                                         \
     1611      yytoken = YYTRANSLATE (yychar);                           \
     1612      YYPOPSTACK (1);                                           \
    11401613      goto yybackup;                                            \
    11411614    }                                                           \
    11421615  else                                                          \
    1143     { yyerror ("syntax error: cannot back up"); YYERROR; }      \
    1144 while (0)
     1616    {                                                           \
     1617      yyerror (YY_("syntax error: cannot back up")); \
     1618      YYERROR;                                                  \
     1619    }                                                           \
     1620while (YYID (0))
     1621
    11451622
    11461623#define YYTERROR        1
    11471624#define YYERRCODE       256
    11481625
    1149 #ifndef YYPURE
    1150 #define YYLEX           yylex()
    1151 #endif
    1152 
    1153 #ifdef YYPURE
    1154 #ifdef YYLSP_NEEDED
     1626
     1627/* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N].
     1628   If N is 0, then set CURRENT to the empty location which ends
     1629   the previous symbol: RHS[0] (always defined).  */
     1630
     1631#define YYRHSLOC(Rhs, K) ((Rhs)[K])
     1632#ifndef YYLLOC_DEFAULT
     1633# define YYLLOC_DEFAULT(Current, Rhs, N)                                \
     1634    do                                                                  \
     1635      if (YYID (N))                                                    \
     1636        {                                                               \
     1637          (Current).first_line   = YYRHSLOC (Rhs, 1).first_line;        \
     1638          (Current).first_column = YYRHSLOC (Rhs, 1).first_column;      \
     1639          (Current).last_line    = YYRHSLOC (Rhs, N).last_line;         \
     1640          (Current).last_column  = YYRHSLOC (Rhs, N).last_column;       \
     1641        }                                                               \
     1642      else                                                              \
     1643        {                                                               \
     1644          (Current).first_line   = (Current).last_line   =              \
     1645            YYRHSLOC (Rhs, 0).last_line;                                \
     1646          (Current).first_column = (Current).last_column =              \
     1647            YYRHSLOC (Rhs, 0).last_column;                              \
     1648        }                                                               \
     1649    while (YYID (0))
     1650#endif
     1651
     1652
     1653/* YY_LOCATION_PRINT -- Print the location on the stream.
     1654   This macro was not mandated originally: define only if we know
     1655   we won't break user code: when these are the locations we know.  */
     1656
     1657#ifndef YY_LOCATION_PRINT
     1658# if YYLTYPE_IS_TRIVIAL
     1659#  define YY_LOCATION_PRINT(File, Loc)                  \
     1660     fprintf (File, "%d.%d-%d.%d",                      \
     1661              (Loc).first_line, (Loc).first_column,     \
     1662              (Loc).last_line,  (Loc).last_column)
     1663# else
     1664#  define YY_LOCATION_PRINT(File, Loc) ((void) 0)
     1665# endif
     1666#endif
     1667
     1668
     1669/* YYLEX -- calling `yylex' with the right arguments.  */
     1670
    11551671#ifdef YYLEX_PARAM
    1156 #define YYLEX           yylex(&yylval, &yylloc, YYLEX_PARAM)
     1672# define YYLEX yylex (&yylval, YYLEX_PARAM)
    11571673#else
    1158 #define YYLEX           yylex(&yylval, &yylloc)
    1159 #endif
    1160 #else /* not YYLSP_NEEDED */
    1161 #ifdef YYLEX_PARAM
    1162 #define YYLEX           yylex(&yylval, YYLEX_PARAM)
     1674# define YYLEX yylex (&yylval)
     1675#endif
     1676
     1677/* Enable debugging if requested.  */
     1678#if YYDEBUG
     1679
     1680# ifndef YYFPRINTF
     1681#  include <stdio.h> /* INFRINGES ON USER NAME SPACE */
     1682#  define YYFPRINTF fprintf
     1683# endif
     1684
     1685# define YYDPRINTF(Args)                        \
     1686do {                                            \
     1687  if (yydebug)                                  \
     1688    YYFPRINTF Args;                             \
     1689} while (YYID (0))
     1690
     1691# define YY_SYMBOL_PRINT(Title, Type, Value, Location)                    \
     1692do {                                                                      \
     1693  if (yydebug)                                                            \
     1694    {                                                                     \
     1695      YYFPRINTF (stderr, "%s ", Title);                                   \
     1696      yy_symbol_print (stderr,                                            \
     1697                  Type, Value); \
     1698      YYFPRINTF (stderr, "\n");                                           \
     1699    }                                                                     \
     1700} while (YYID (0))
     1701
     1702
     1703/*--------------------------------.
     1704| Print this symbol on YYOUTPUT.  |
     1705`--------------------------------*/
     1706
     1707/*ARGSUSED*/
     1708#if (defined __STDC__ || defined __C99__FUNC__ \
     1709     || defined __cplusplus || defined _MSC_VER)
     1710static void
     1711yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep)
    11631712#else
    1164 #define YYLEX           yylex(&yylval)
    1165 #endif
    1166 #endif /* not YYLSP_NEEDED */
    1167 #endif
    1168 
    1169 /* If nonreentrant, generate the variables here */
    1170 
    1171 #ifndef YYPURE
    1172 
    1173 int     yychar;                 /*  the lookahead symbol                */
    1174 YYSTYPE yylval;                 /*  the semantic value of the           */
    1175                                 /*  lookahead symbol                    */
    1176 
    1177 #ifdef YYLSP_NEEDED
    1178 YYLTYPE yylloc;                 /*  location data for the lookahead     */
    1179                                 /*  symbol                              */
    1180 #endif
    1181 
    1182 int yynerrs;                    /*  number of parse errors so far       */
    1183 #endif  /* not YYPURE */
    1184 
    1185 #if YYDEBUG != 0
    1186 int yydebug;                    /*  nonzero means print parse trace     */
    1187 /* Since this is uninitialized, it does not stop multiple parsers
    1188    from coexisting.  */
    1189 #endif
    1190 
    1191 /*  YYINITDEPTH indicates the initial size of the parser's stacks       */
    1192 
     1713static void
     1714yy_symbol_value_print (yyoutput, yytype, yyvaluep)
     1715    FILE *yyoutput;
     1716    int yytype;
     1717    YYSTYPE const * const yyvaluep;
     1718#endif
     1719{
     1720  if (!yyvaluep)
     1721    return;
     1722# ifdef YYPRINT
     1723  if (yytype < YYNTOKENS)
     1724    YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
     1725# else
     1726  YYUSE (yyoutput);
     1727# endif
     1728  switch (yytype)
     1729    {
     1730      default:
     1731        break;
     1732    }
     1733}
     1734
     1735
     1736/*--------------------------------.
     1737| Print this symbol on YYOUTPUT.  |
     1738`--------------------------------*/
     1739
     1740#if (defined __STDC__ || defined __C99__FUNC__ \
     1741     || defined __cplusplus || defined _MSC_VER)
     1742static void
     1743yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep)
     1744#else
     1745static void
     1746yy_symbol_print (yyoutput, yytype, yyvaluep)
     1747    FILE *yyoutput;
     1748    int yytype;
     1749    YYSTYPE const * const yyvaluep;
     1750#endif
     1751{
     1752  if (yytype < YYNTOKENS)
     1753    YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
     1754  else
     1755    YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);
     1756
     1757  yy_symbol_value_print (yyoutput, yytype, yyvaluep);
     1758  YYFPRINTF (yyoutput, ")");
     1759}
     1760
     1761/*------------------------------------------------------------------.
     1762| yy_stack_print -- Print the state stack from its BOTTOM up to its |
     1763| TOP (included).                                                   |
     1764`------------------------------------------------------------------*/
     1765
     1766#if (defined __STDC__ || defined __C99__FUNC__ \
     1767     || defined __cplusplus || defined _MSC_VER)
     1768static void
     1769yy_stack_print (yytype_int16 *bottom, yytype_int16 *top)
     1770#else
     1771static void
     1772yy_stack_print (bottom, top)
     1773    yytype_int16 *bottom;
     1774    yytype_int16 *top;
     1775#endif
     1776{
     1777  YYFPRINTF (stderr, "Stack now");
     1778  for (; bottom <= top; ++bottom)
     1779    YYFPRINTF (stderr, " %d", *bottom);
     1780  YYFPRINTF (stderr, "\n");
     1781}
     1782
     1783# define YY_STACK_PRINT(Bottom, Top)                            \
     1784do {                                                            \
     1785  if (yydebug)                                                  \
     1786    yy_stack_print ((Bottom), (Top));                           \
     1787} while (YYID (0))
     1788
     1789
     1790/*------------------------------------------------.
     1791| Report that the YYRULE is going to be reduced.  |
     1792`------------------------------------------------*/
     1793
     1794#if (defined __STDC__ || defined __C99__FUNC__ \
     1795     || defined __cplusplus || defined _MSC_VER)
     1796static void
     1797yy_reduce_print (YYSTYPE *yyvsp, int yyrule)
     1798#else
     1799static void
     1800yy_reduce_print (yyvsp, yyrule)
     1801    YYSTYPE *yyvsp;
     1802    int yyrule;
     1803#endif
     1804{
     1805  int yynrhs = yyr2[yyrule];
     1806  int yyi;
     1807  unsigned long int yylno = yyrline[yyrule];
     1808  YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n",
     1809             yyrule - 1, yylno);
     1810  /* The symbols being reduced.  */
     1811  for (yyi = 0; yyi < yynrhs; yyi++)
     1812    {
     1813      fprintf (stderr, "   $%d = ", yyi + 1);
     1814      yy_symbol_print (stderr, yyrhs[yyprhs[yyrule] + yyi],
     1815                       &(yyvsp[(yyi + 1) - (yynrhs)])
     1816                                       );
     1817      fprintf (stderr, "\n");
     1818    }
     1819}
     1820
     1821# define YY_REDUCE_PRINT(Rule)          \
     1822do {                                    \
     1823  if (yydebug)                          \
     1824    yy_reduce_print (yyvsp, Rule); \
     1825} while (YYID (0))
     1826
     1827/* Nonzero means print parse trace.  It is left uninitialized so that
     1828   multiple parsers can coexist.  */
     1829int yydebug;
     1830#else /* !YYDEBUG */
     1831# define YYDPRINTF(Args)
     1832# define YY_SYMBOL_PRINT(Title, Type, Value, Location)
     1833# define YY_STACK_PRINT(Bottom, Top)
     1834# define YY_REDUCE_PRINT(Rule)
     1835#endif /* !YYDEBUG */
     1836
     1837
     1838/* YYINITDEPTH -- initial size of the parser's stacks.  */
    11931839#ifndef YYINITDEPTH
    1194 #define YYINITDEPTH 200
    1195 #endif
    1196 
    1197 /*  YYMAXDEPTH is the maximum size the stacks can grow to
    1198     (effective only if the built-in stack extension method is used).  */
    1199 
    1200 #if YYMAXDEPTH == 0
    1201 #undef YYMAXDEPTH
    1202 #endif
     1840# define YYINITDEPTH 200
     1841#endif
     1842
     1843/* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
     1844   if the built-in stack extension method is used).
     1845
     1846   Do not make this value too large; the results are undefined if
     1847   YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
     1848   evaluated with infinite-precision integer arithmetic.  */
    12031849
    12041850#ifndef YYMAXDEPTH
    1205 #define YYMAXDEPTH 10000
    1206 #endif
    1207 
    1208 
    1209 /* Define __yy_memcpy.  Note that the size argument
    1210    should be passed with type unsigned int, because that is what the non-GCC
    1211    definitions require.  With GCC, __builtin_memcpy takes an arg
    1212    of type size_t, but it can handle unsigned int.  */
    1213 
    1214 #if __GNUC__ > 1                /* GNU C and GNU C++ define this.  */
    1215 #define __yy_memcpy(TO,FROM,COUNT)      __builtin_memcpy(TO,FROM,COUNT)
    1216 #else                           /* not GNU C or C++ */
    1217 #ifndef __cplusplus
    1218 
    1219 /* This is the most reliable way to avoid incompatibilities
    1220    in available built-in functions on various systems.  */
     1851# define YYMAXDEPTH 10000
     1852#endif
     1853
     1854
     1855
     1856
     1857#if YYERROR_VERBOSE
     1858
     1859# ifndef yystrlen
     1860#  if defined __GLIBC__ && defined _STRING_H
     1861#   define yystrlen strlen
     1862#  else
     1863/* Return the length of YYSTR.  */
     1864#if (defined __STDC__ || defined __C99__FUNC__ \
     1865     || defined __cplusplus || defined _MSC_VER)
     1866static YYSIZE_T
     1867yystrlen (const char *yystr)
     1868#else
     1869static YYSIZE_T
     1870yystrlen (yystr)
     1871    const char *yystr;
     1872#endif
     1873{
     1874  YYSIZE_T yylen;
     1875  for (yylen = 0; yystr[yylen]; yylen++)
     1876    continue;
     1877  return yylen;
     1878}
     1879#  endif
     1880# endif
     1881
     1882# ifndef yystpcpy
     1883#  if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
     1884#   define yystpcpy stpcpy
     1885#  else
     1886/* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
     1887   YYDEST.  */
     1888#if (defined __STDC__ || defined __C99__FUNC__ \
     1889     || defined __cplusplus || defined _MSC_VER)
     1890static char *
     1891yystpcpy (char *yydest, const char *yysrc)
     1892#else
     1893static char *
     1894yystpcpy (yydest, yysrc)
     1895    char *yydest;
     1896    const char *yysrc;
     1897#endif
     1898{
     1899  char *yyd = yydest;
     1900  const char *yys = yysrc;
     1901
     1902  while ((*yyd++ = *yys++) != '\0')
     1903    continue;
     1904
     1905  return yyd - 1;
     1906}
     1907#  endif
     1908# endif
     1909
     1910# ifndef yytnamerr
     1911/* Copy to YYRES the contents of YYSTR after stripping away unnecessary
     1912   quotes and backslashes, so that it's suitable for yyerror.  The
     1913   heuristic is that double-quoting is unnecessary unless the string
     1914   contains an apostrophe, a comma, or backslash (other than
     1915   backslash-backslash).  YYSTR is taken from yytname.  If YYRES is
     1916   null, do not copy; instead, return the length of what the result
     1917   would have been.  */
     1918static YYSIZE_T
     1919yytnamerr (char *yyres, const char *yystr)
     1920{
     1921  if (*yystr == '"')
     1922    {
     1923      YYSIZE_T yyn = 0;
     1924      char const *yyp = yystr;
     1925
     1926      for (;;)
     1927        switch (*++yyp)
     1928          {
     1929          case '\'':
     1930          case ',':
     1931            goto do_not_strip_quotes;
     1932
     1933          case '\\':
     1934            if (*++yyp != '\\')
     1935              goto do_not_strip_quotes;
     1936            /* Fall through.  */
     1937          default:
     1938            if (yyres)
     1939              yyres[yyn] = *yyp;
     1940            yyn++;
     1941            break;
     1942
     1943          case '"':
     1944            if (yyres)
     1945              yyres[yyn] = '\0';
     1946            return yyn;
     1947          }
     1948    do_not_strip_quotes: ;
     1949    }
     1950
     1951  if (! yyres)
     1952    return yystrlen (yystr);
     1953
     1954  return yystpcpy (yyres, yystr) - yyres;
     1955}
     1956# endif
     1957
     1958/* Copy into YYRESULT an error message about the unexpected token
     1959   YYCHAR while in state YYSTATE.  Return the number of bytes copied,
     1960   including the terminating null byte.  If YYRESULT is null, do not
     1961   copy anything; just return the number of bytes that would be
     1962   copied.  As a special case, return 0 if an ordinary "syntax error"
     1963   message will do.  Return YYSIZE_MAXIMUM if overflow occurs during
     1964   size calculation.  */
     1965static YYSIZE_T
     1966yysyntax_error (char *yyresult, int yystate, int yychar)
     1967{
     1968  int yyn = yypact[yystate];
     1969
     1970  if (! (YYPACT_NINF < yyn && yyn <= YYLAST))
     1971    return 0;
     1972  else
     1973    {
     1974      int yytype = YYTRANSLATE (yychar);
     1975      YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]);
     1976      YYSIZE_T yysize = yysize0;
     1977      YYSIZE_T yysize1;
     1978      int yysize_overflow = 0;
     1979      enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
     1980      char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
     1981      int yyx;
     1982
     1983# if 0
     1984      /* This is so xgettext sees the translatable formats that are
     1985         constructed on the fly.  */
     1986      YY_("syntax error, unexpected %s");
     1987      YY_("syntax error, unexpected %s, expecting %s");
     1988      YY_("syntax error, unexpected %s, expecting %s or %s");
     1989      YY_("syntax error, unexpected %s, expecting %s or %s or %s");
     1990      YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s");
     1991# endif
     1992      char *yyfmt;
     1993      char const *yyf;
     1994      static char const yyunexpected[] = "syntax error, unexpected %s";
     1995      static char const yyexpecting[] = ", expecting %s";
     1996      static char const yyor[] = " or %s";
     1997      char yyformat[sizeof yyunexpected
     1998                    + sizeof yyexpecting - 1
     1999                    + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2)
     2000                       * (sizeof yyor - 1))];
     2001      char const *yyprefix = yyexpecting;
     2002
     2003      /* Start YYX at -YYN if negative to avoid negative indexes in
     2004         YYCHECK.  */
     2005      int yyxbegin = yyn < 0 ? -yyn : 0;
     2006
     2007      /* Stay within bounds of both yycheck and yytname.  */
     2008      int yychecklim = YYLAST - yyn + 1;
     2009      int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
     2010      int yycount = 1;
     2011
     2012      yyarg[0] = yytname[yytype];
     2013      yyfmt = yystpcpy (yyformat, yyunexpected);
     2014
     2015      for (yyx = yyxbegin; yyx < yyxend; ++yyx)
     2016        if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
     2017          {
     2018            if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
     2019              {
     2020                yycount = 1;
     2021                yysize = yysize0;
     2022                yyformat[sizeof yyunexpected - 1] = '\0';
     2023                break;
     2024              }
     2025            yyarg[yycount++] = yytname[yyx];
     2026            yysize1 = yysize + yytnamerr (0, yytname[yyx]);
     2027            yysize_overflow |= (yysize1 < yysize);
     2028            yysize = yysize1;
     2029            yyfmt = yystpcpy (yyfmt, yyprefix);
     2030            yyprefix = yyor;
     2031          }
     2032
     2033      yyf = YY_(yyformat);
     2034      yysize1 = yysize + yystrlen (yyf);
     2035      yysize_overflow |= (yysize1 < yysize);
     2036      yysize = yysize1;
     2037
     2038      if (yysize_overflow)
     2039        return YYSIZE_MAXIMUM;
     2040
     2041      if (yyresult)
     2042        {
     2043          /* Avoid sprintf, as that infringes on the user's name space.
     2044             Don't have undefined behavior even if the translation
     2045             produced a string with the wrong number of "%s"s.  */
     2046          char *yyp = yyresult;
     2047          int yyi = 0;
     2048          while ((*yyp = *yyf) != '\0')
     2049            {
     2050              if (*yyp == '%' && yyf[1] == 's' && yyi < yycount)
     2051                {
     2052                  yyp += yytnamerr (yyp, yyarg[yyi++]);
     2053                  yyf += 2;
     2054                }
     2055              else
     2056                {
     2057                  yyp++;
     2058                  yyf++;
     2059                }
     2060            }
     2061        }
     2062      return yysize;
     2063    }
     2064}
     2065#endif /* YYERROR_VERBOSE */
     2066
     2067
     2068
     2069/*-----------------------------------------------.
     2070| Release the memory associated to this symbol.  |
     2071`-----------------------------------------------*/
     2072
     2073/*ARGSUSED*/
     2074#if (defined __STDC__ || defined __C99__FUNC__ \
     2075     || defined __cplusplus || defined _MSC_VER)
    12212076static void
    1222 __yy_memcpy (to, from, count)
    1223      char *to;
    1224      char *from;
    1225      unsigned int count;
     2077yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep)
     2078#else
     2079static void
     2080yydestruct (yymsg, yytype, yyvaluep)
     2081    const char *yymsg;
     2082    int yytype;
     2083    YYSTYPE *yyvaluep;
     2084#endif
    12262085{
    1227   register char *f = from;
    1228   register char *t = to;
    1229   register int i = count;
    1230 
    1231   while (i-- > 0)
    1232     *t++ = *f++;
     2086  YYUSE (yyvaluep);
     2087
     2088  if (!yymsg)
     2089    yymsg = "Deleting";
     2090  YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
     2091
     2092  switch (yytype)
     2093    {
     2094
     2095      default:
     2096        break;
     2097    }
    12332098}
    12342099
    1235 #else /* __cplusplus */
    1236 
    1237 /* This is the most reliable way to avoid incompatibilities
    1238    in available built-in functions on various systems.  */
    1239 static void
    1240 __yy_memcpy (char *to, char *from, unsigned int count)
     2100
     2101
     2102/* Prevent warnings from -Wmissing-prototypes.  */
     2103
     2104#ifdef YYPARSE_PARAM
     2105#if defined __STDC__ || defined __cplusplus
     2106int yyparse (void *YYPARSE_PARAM);
     2107#else
     2108int yyparse ();
     2109#endif
     2110#else /* ! YYPARSE_PARAM */
     2111#if defined __STDC__ || defined __cplusplus
     2112int yyparse (void);
     2113#else
     2114int yyparse ();
     2115#endif
     2116#endif /* ! YYPARSE_PARAM */
     2117
     2118
     2119
     2120
     2121
     2122
     2123/*----------.
     2124| yyparse.  |
     2125`----------*/
     2126
     2127#ifdef YYPARSE_PARAM
     2128#if (defined __STDC__ || defined __C99__FUNC__ \
     2129     || defined __cplusplus || defined _MSC_VER)
     2130int
     2131yyparse (void *YYPARSE_PARAM)
     2132#else
     2133int
     2134yyparse (YYPARSE_PARAM)
     2135    void *YYPARSE_PARAM;
     2136#endif
     2137#else /* ! YYPARSE_PARAM */
     2138#if (defined __STDC__ || defined __C99__FUNC__ \
     2139     || defined __cplusplus || defined _MSC_VER)
     2140int
     2141yyparse (void)
     2142#else
     2143int
     2144yyparse ()
     2145
     2146#endif
     2147#endif
    12412148{
    1242   register char *t = to;
    1243   register char *f = from;
    1244   register int i = count;
    1245 
    1246   while (i-- > 0)
    1247     *t++ = *f++;
    1248 }
    1249 
    1250 #endif
    1251 #endif
    1252 
    1253 
    1254 #line 217 "/usr/lib/bison.simple"
    1255 
    1256 /* The user can define YYPARSE_PARAM as the name of an argument to be passed
    1257    into yyparse.  The argument should have type void *.
    1258    It should actually point to an object.
    1259    Grammar actions can access the variable by casting it
    1260    to the proper pointer type.  */
    1261 
    1262 #ifdef YYPARSE_PARAM
    1263 #ifdef __cplusplus
    1264 #define YYPARSE_PARAM_ARG void *YYPARSE_PARAM
    1265 #define YYPARSE_PARAM_DECL
    1266 #else /* not __cplusplus */
    1267 #define YYPARSE_PARAM_ARG YYPARSE_PARAM
    1268 #define YYPARSE_PARAM_DECL void *YYPARSE_PARAM;
    1269 #endif /* not __cplusplus */
    1270 #else /* not YYPARSE_PARAM */
    1271 #define YYPARSE_PARAM_ARG
    1272 #define YYPARSE_PARAM_DECL
    1273 #endif /* not YYPARSE_PARAM */
    1274 
    1275 /* Prevent warning if -Wstrict-prototypes.  */
    1276 #ifdef __GNUC__
    1277 #ifdef YYPARSE_PARAM
    1278 int yyparse (void *);
    1279 #else
    1280 int yyparse (void);
    1281 #endif
    1282 #endif
    1283 
    1284 int
    1285 yyparse(YYPARSE_PARAM_ARG)
    1286      YYPARSE_PARAM_DECL
    1287 {
    1288   register int yystate;
    1289   register int yyn;
    1290   register short *yyssp;
    1291   register YYSTYPE *yyvsp;
    1292   int yyerrstatus;      /*  number of tokens to shift before error messages enabled */
    1293   int yychar1 = 0;              /*  lookahead token as an internal (translated) token number */
    1294 
    1295   short yyssa[YYINITDEPTH];     /*  the state stack                     */
    1296   YYSTYPE yyvsa[YYINITDEPTH];   /*  the semantic value stack            */
    1297 
    1298   short *yyss = yyssa;          /*  refer to the stacks thru separate pointers */
    1299   YYSTYPE *yyvs = yyvsa;        /*  to allow yyoverflow to reallocate them elsewhere */
    1300 
    1301 #ifdef YYLSP_NEEDED
    1302   YYLTYPE yylsa[YYINITDEPTH];   /*  the location stack                  */
    1303   YYLTYPE *yyls = yylsa;
    1304   YYLTYPE *yylsp;
    1305 
    1306 #define YYPOPSTACK   (yyvsp--, yyssp--, yylsp--)
    1307 #else
    1308 #define YYPOPSTACK   (yyvsp--, yyssp--)
    1309 #endif
    1310 
    1311   int yystacksize = YYINITDEPTH;
    1312   int yyfree_stacks = 0;
    1313 
    1314 #ifdef YYPURE
    1315   int yychar;
    1316   YYSTYPE yylval;
    1317   int yynerrs;
    1318 #ifdef YYLSP_NEEDED
    1319   YYLTYPE yylloc;
    1320 #endif
    1321 #endif
    1322 
    1323   YYSTYPE yyval;                /*  the variable used to return         */
    1324                                 /*  semantic values from the action     */
    1325                                 /*  routines                            */
    1326 
    1327   int yylen;
    1328 
    1329 #if YYDEBUG != 0
    1330   if (yydebug)
    1331     fprintf(stderr, "Starting parse\n");
    1332 #endif
     2149  /* The look-ahead symbol.  */
     2150int yychar;
     2151
     2152/* The semantic value of the look-ahead symbol.  */
     2153YYSTYPE yylval;
     2154
     2155/* Number of syntax errors so far.  */
     2156int yynerrs;
     2157
     2158  int yystate;
     2159  int yyn;
     2160  int yyresult;
     2161  /* Number of tokens to shift before error messages enabled.  */
     2162  int yyerrstatus;
     2163  /* Look-ahead token as an internal (translated) token number.  */
     2164  int yytoken = 0;
     2165#if YYERROR_VERBOSE
     2166  /* Buffer for error messages, and its allocated size.  */
     2167  char yymsgbuf[128];
     2168  char *yymsg = yymsgbuf;
     2169  YYSIZE_T yymsg_alloc = sizeof yymsgbuf;
     2170#endif
     2171
     2172  /* Three stacks and their tools:
     2173     `yyss': related to states,
     2174     `yyvs': related to semantic values,
     2175     `yyls': related to locations.
     2176
     2177     Refer to the stacks thru separate pointers, to allow yyoverflow
     2178     to reallocate them elsewhere.  */
     2179
     2180  /* The state stack.  */
     2181  yytype_int16 yyssa[YYINITDEPTH];
     2182  yytype_int16 *yyss = yyssa;
     2183  yytype_int16 *yyssp;
     2184
     2185  /* The semantic value stack.  */
     2186  YYSTYPE yyvsa[YYINITDEPTH];
     2187  YYSTYPE *yyvs = yyvsa;
     2188  YYSTYPE *yyvsp;
     2189
     2190
     2191
     2192#define YYPOPSTACK(N)   (yyvsp -= (N), yyssp -= (N))
     2193
     2194  YYSIZE_T yystacksize = YYINITDEPTH;
     2195
     2196  /* The variables used to return semantic value and location from the
     2197     action routines.  */
     2198  YYSTYPE yyval;
     2199
     2200
     2201  /* The number of symbols on the RHS of the reduced rule.
     2202     Keep to zero when no symbol should be popped.  */
     2203  int yylen = 0;
     2204
     2205  YYDPRINTF ((stderr, "Starting parse\n"));
    13332206
    13342207  yystate = 0;
     
    13422215     The wasted elements are never initialized.  */
    13432216
    1344   yyssp = yyss - 1;
     2217  yyssp = yyss;
    13452218  yyvsp = yyvs;
    1346 #ifdef YYLSP_NEEDED
    1347   yylsp = yyls;
    1348 #endif
    1349 
    1350 /* Push a new state, which is found in  yystate  .  */
    1351 /* In all cases, when you get here, the value and location stacks
    1352    have just been pushed. so pushing a state here evens the stacks.  */
    1353 yynewstate:
    1354 
    1355   *++yyssp = yystate;
    1356 
    1357   if (yyssp >= yyss + yystacksize - 1)
    1358     {
    1359       /* Give user a chance to reallocate the stack */
    1360       /* Use copies of these so that the &'s don't force the real ones into memory. */
    1361       YYSTYPE *yyvs1 = yyvs;
    1362       short *yyss1 = yyss;
    1363 #ifdef YYLSP_NEEDED
    1364       YYLTYPE *yyls1 = yyls;
    1365 #endif
    1366 
     2219
     2220  goto yysetstate;
     2221
     2222/*------------------------------------------------------------.
     2223| yynewstate -- Push a new state, which is found in yystate.  |
     2224`------------------------------------------------------------*/
     2225 yynewstate:
     2226  /* In all cases, when you get here, the value and location stacks
     2227     have just been pushed.  So pushing a state here evens the stacks.  */
     2228  yyssp++;
     2229
     2230 yysetstate:
     2231  *yyssp = yystate;
     2232
     2233  if (yyss + yystacksize - 1 <= yyssp)
     2234    {
    13672235      /* Get the current used size of the three stacks, in elements.  */
    1368       int size = yyssp - yyss + 1;
     2236      YYSIZE_T yysize = yyssp - yyss + 1;
    13692237
    13702238#ifdef yyoverflow
    1371       /* Each stack pointer address is followed by the size of
    1372          the data in use in that stack, in bytes.  */
    1373 #ifdef YYLSP_NEEDED
    1374       /* This used to be a conditional around just the two extra args,
    1375          but that might be undefined if yyoverflow is a macro.  */
    1376       yyoverflow("parser stack overflow",
    1377                  &yyss1, size * sizeof (*yyssp),
    1378                  &yyvs1, size * sizeof (*yyvsp),
    1379                  &yyls1, size * sizeof (*yylsp),
    1380                  &yystacksize);
    1381 #else
    1382       yyoverflow("parser stack overflow",
    1383                  &yyss1, size * sizeof (*yyssp),
    1384                  &yyvs1, size * sizeof (*yyvsp),
    1385                  &yystacksize);
    1386 #endif
    1387 
    1388       yyss = yyss1; yyvs = yyvs1;
    1389 #ifdef YYLSP_NEEDED
    1390       yyls = yyls1;
    1391 #endif
     2239      {
     2240        /* Give user a chance to reallocate the stack.  Use copies of
     2241           these so that the &'s don't force the real ones into
     2242           memory.  */
     2243        YYSTYPE *yyvs1 = yyvs;
     2244        yytype_int16 *yyss1 = yyss;
     2245
     2246
     2247        /* Each stack pointer address is followed by the size of the
     2248           data in use in that stack, in bytes.  This used to be a
     2249           conditional around just the two extra args, but that might
     2250           be undefined if yyoverflow is a macro.  */
     2251        yyoverflow (YY_("memory exhausted"),
     2252                    &yyss1, yysize * sizeof (*yyssp),
     2253                    &yyvs1, yysize * sizeof (*yyvsp),
     2254
     2255                    &yystacksize);
     2256
     2257        yyss = yyss1;
     2258        yyvs = yyvs1;
     2259      }
    13922260#else /* no yyoverflow */
     2261# ifndef YYSTACK_RELOCATE
     2262      goto yyexhaustedlab;
     2263# else
    13932264      /* Extend the stack our own way.  */
    1394       if (yystacksize >= YYMAXDEPTH)
    1395         {
    1396           yyerror("parser stack overflow");
    1397           if (yyfree_stacks)
    1398             {
    1399               free (yyss);
    1400               free (yyvs);
    1401 #ifdef YYLSP_NEEDED
    1402               free (yyls);
    1403 #endif
    1404             }
    1405           return 2;
    1406         }
     2265      if (YYMAXDEPTH <= yystacksize)
     2266        goto yyexhaustedlab;
    14072267      yystacksize *= 2;
    1408       if (yystacksize > YYMAXDEPTH)
     2268      if (YYMAXDEPTH < yystacksize)
    14092269        yystacksize = YYMAXDEPTH;
    1410 #ifndef YYSTACK_USE_ALLOCA
    1411       yyfree_stacks = 1;
    1412 #endif
    1413       yyss = (short *) YYSTACK_ALLOC (yystacksize * sizeof (*yyssp));
    1414       __yy_memcpy ((char *)yyss, (char *)yyss1,
    1415                    size * (unsigned int) sizeof (*yyssp));
    1416       yyvs = (YYSTYPE *) YYSTACK_ALLOC (yystacksize * sizeof (*yyvsp));
    1417       __yy_memcpy ((char *)yyvs, (char *)yyvs1,
    1418                    size * (unsigned int) sizeof (*yyvsp));
    1419 #ifdef YYLSP_NEEDED
    1420       yyls = (YYLTYPE *) YYSTACK_ALLOC (yystacksize * sizeof (*yylsp));
    1421       __yy_memcpy ((char *)yyls, (char *)yyls1,
    1422                    size * (unsigned int) sizeof (*yylsp));
    1423 #endif
     2270
     2271      {
     2272        yytype_int16 *yyss1 = yyss;
     2273        union yyalloc *yyptr =
     2274          (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
     2275        if (! yyptr)
     2276          goto yyexhaustedlab;
     2277        YYSTACK_RELOCATE (yyss);
     2278        YYSTACK_RELOCATE (yyvs);
     2279
     2280#  undef YYSTACK_RELOCATE
     2281        if (yyss1 != yyssa)
     2282          YYSTACK_FREE (yyss1);
     2283      }
     2284# endif
    14242285#endif /* no yyoverflow */
    14252286
    1426       yyssp = yyss + size - 1;
    1427       yyvsp = yyvs + size - 1;
    1428 #ifdef YYLSP_NEEDED
    1429       yylsp = yyls + size - 1;
    1430 #endif
    1431 
    1432 #if YYDEBUG != 0
    1433       if (yydebug)
    1434         fprintf(stderr, "Stack size increased to %d\n", yystacksize);
    1435 #endif
    1436 
    1437       if (yyssp >= yyss + yystacksize - 1)
     2287      yyssp = yyss + yysize - 1;
     2288      yyvsp = yyvs + yysize - 1;
     2289
     2290
     2291      YYDPRINTF ((stderr, "Stack size increased to %lu\n",
     2292                  (unsigned long int) yystacksize));
     2293
     2294      if (yyss + yystacksize - 1 <= yyssp)
    14382295        YYABORT;
    14392296    }
    14402297
    1441 #if YYDEBUG != 0
    1442   if (yydebug)
    1443     fprintf(stderr, "Entering state %d\n", yystate);
    1444 #endif
     2298  YYDPRINTF ((stderr, "Entering state %d\n", yystate));
    14452299
    14462300  goto yybackup;
    1447  yybackup:
    1448 
    1449 /* Do appropriate processing given the current state.  */
    1450 /* Read a lookahead token if we need one and don't already have one.  */
    1451 /* yyresume: */
    1452 
    1453   /* First try to decide what to do without reference to lookahead token.  */
    1454 
     2301
     2302/*-----------.
     2303| yybackup.  |
     2304`-----------*/
     2305yybackup:
     2306
     2307  /* Do appropriate processing given the current state.  Read a
     2308     look-ahead token if we need one and don't already have one.  */
     2309
     2310  /* First try to decide what to do without reference to look-ahead token.  */
    14552311  yyn = yypact[yystate];
    1456   if (yyn == YYFLAG)
     2312  if (yyn == YYPACT_NINF)
    14572313    goto yydefault;
    14582314
    1459   /* Not known => get a lookahead token if don't already have one.  */
    1460 
    1461   /* yychar is either YYEMPTY or YYEOF
    1462      or a valid token in external form.  */
    1463 
     2315  /* Not known => get a look-ahead token if don't already have one.  */
     2316
     2317  /* YYCHAR is either YYEMPTY or YYEOF or a valid look-ahead symbol.  */
    14642318  if (yychar == YYEMPTY)
    14652319    {
    1466 #if YYDEBUG != 0
    1467       if (yydebug)
    1468         fprintf(stderr, "Reading a token: ");
    1469 #endif
     2320      YYDPRINTF ((stderr, "Reading a token: "));
    14702321      yychar = YYLEX;
    14712322    }
    14722323
    1473   /* Convert token to internal form (in yychar1) for indexing tables with */
    1474 
    1475   if (yychar <= 0)              /* This means end of input. */
    1476     {
    1477       yychar1 = 0;
    1478       yychar = YYEOF;           /* Don't call YYLEX any more */
    1479 
    1480 #if YYDEBUG != 0
    1481       if (yydebug)
    1482         fprintf(stderr, "Now at end of input.\n");
    1483 #endif
     2324  if (yychar <= YYEOF)
     2325    {
     2326      yychar = yytoken = YYEOF;
     2327      YYDPRINTF ((stderr, "Now at end of input.\n"));
    14842328    }
    14852329  else
    14862330    {
    1487       yychar1 = YYTRANSLATE(yychar);
    1488 
    1489 #if YYDEBUG != 0
    1490       if (yydebug)
    1491         {
    1492           fprintf (stderr, "Next token is %d (%s", yychar, yytname[yychar1]);
    1493           /* Give the individual parser a way to print the precise meaning
    1494              of a token, for further debugging info.  */
    1495 #ifdef YYPRINT
    1496           YYPRINT (stderr, yychar, yylval);
    1497 #endif
    1498           fprintf (stderr, ")\n");
    1499         }
    1500 #endif
     2331      yytoken = YYTRANSLATE (yychar);
     2332      YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
    15012333    }
    15022334
    1503   yyn += yychar1;
    1504   if (yyn < 0 || yyn > YYLAST || yycheck[yyn] != yychar1)
     2335  /* If the proper action on seeing token YYTOKEN is to reduce or to
     2336     detect an error, take that action.  */
     2337  yyn += yytoken;
     2338  if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
    15052339    goto yydefault;
    1506 
    15072340  yyn = yytable[yyn];
    1508 
    1509   /* yyn is what to do for this token type in this state.
    1510      Negative => reduce, -yyn is rule number.
    1511      Positive => shift, yyn is new state.
    1512        New state is final state => don't bother to shift,
    1513        just return success.
    1514      0, or most negative number => error.  */
    1515 
    1516   if (yyn < 0)
    1517     {
    1518       if (yyn == YYFLAG)
     2341  if (yyn <= 0)
     2342    {
     2343      if (yyn == 0 || yyn == YYTABLE_NINF)
    15192344        goto yyerrlab;
    15202345      yyn = -yyn;
    15212346      goto yyreduce;
    15222347    }
    1523   else if (yyn == 0)
    1524     goto yyerrlab;
    15252348
    15262349  if (yyn == YYFINAL)
    15272350    YYACCEPT;
    15282351
    1529   /* Shift the lookahead token.  */
    1530 
    1531 #if YYDEBUG != 0
    1532   if (yydebug)
    1533     fprintf(stderr, "Shifting token %d (%s), ", yychar, yytname[yychar1]);
    1534 #endif
    1535 
    1536   /* Discard the token being shifted unless it is eof.  */
     2352  /* Count tokens shifted since error; after three, turn off error
     2353     status.  */
     2354  if (yyerrstatus)
     2355    yyerrstatus--;
     2356
     2357  /* Shift the look-ahead token.  */
     2358  YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
     2359
     2360  /* Discard the shifted token unless it is eof.  */
    15372361  if (yychar != YYEOF)
    15382362    yychar = YYEMPTY;
    15392363
     2364  yystate = yyn;
    15402365  *++yyvsp = yylval;
    1541 #ifdef YYLSP_NEEDED
    1542   *++yylsp = yylloc;
    1543 #endif
    1544 
    1545   /* count tokens shifted since error; after three, turn off error status.  */
    1546   if (yyerrstatus) yyerrstatus--;
    1547 
    1548   yystate = yyn;
     2366
    15492367  goto yynewstate;
    15502368
    1551 /* Do the default action for the current state.  */
     2369
     2370/*-----------------------------------------------------------.
     2371| yydefault -- do the default action for the current state.  |
     2372`-----------------------------------------------------------*/
    15522373yydefault:
    1553 
    15542374  yyn = yydefact[yystate];
    15552375  if (yyn == 0)
    15562376    goto yyerrlab;
    1557 
    1558 /* Do a reduction.  yyn is the number of a rule to reduce with.  */
     2377  goto yyreduce;
     2378
     2379
     2380/*-----------------------------.
     2381| yyreduce -- Do a reduction.  |
     2382`-----------------------------*/
    15592383yyreduce:
     2384  /* yyn is the number of a rule to reduce with.  */
    15602385  yylen = yyr2[yyn];
    1561   if (yylen > 0)
    1562     yyval = yyvsp[1-yylen]; /* implement default value of the action */
    1563 
    1564 #if YYDEBUG != 0
    1565   if (yydebug)
    1566     {
    1567       int i;
    1568 
    1569       fprintf (stderr, "Reducing via rule %d (line %d), ",
    1570                yyn, yyrline[yyn]);
    1571 
    1572       /* Print the symbols being reduced, and their result.  */
    1573       for (i = yyprhs[yyn]; yyrhs[i] > 0; i++)
    1574         fprintf (stderr, "%s ", yytname[yyrhs[i]]);
    1575       fprintf (stderr, " -> %s\n", yytname[yyr1[yyn]]);
    1576     }
    1577 #endif
    1578 
    1579 
    1580   switch (yyn) {
    1581 
    1582 case 2:
    1583 #line 369 "grammar.y"
    1584 {
     2386
     2387  /* If YYLEN is nonzero, implement the default value of the action:
     2388     `$$ = $1'.
     2389
     2390     Otherwise, the following line sets YYVAL to garbage.
     2391     This behavior is undocumented and Bison
     2392     users should not rely upon it.  Assigning to YYVAL
     2393     unconditionally makes the parser a bit smaller, and it avoids a
     2394     GCC warning that YYVAL may be used uninitialized.  */
     2395  yyval = yyvsp[1-yylen];
     2396
     2397
     2398  YY_REDUCE_PRINT (yyn);
     2399  switch (yyn)
     2400    {
     2401        case 3:
     2402#line 371 "grammar.y"
     2403    {
    15852404            if (timerv)
    15862405            {
     
    16122431            lastreserved = currid = NULL;
    16132432            expected_parms = siCntrlc = FALSE;
    1614           ;
    1615     break;}
    1616 case 4:
    1617 #line 405 "grammar.y"
    1618 {currentVoice->ifsw=0;;
    1619     break;}
    1620 case 5:
     2433          ;}
     2434    break;
     2435
     2436  case 5:
    16212437#line 407 "grammar.y"
    1622 { yyvsp[-1].lv.CleanUp(); currentVoice->ifsw=0;;
    1623     break;}
    1624 case 6:
     2438    {currentVoice->ifsw=0;;}
     2439    break;
     2440
     2441  case 6:
    16252442#line 409 "grammar.y"
    1626 {
     2443    { (yyvsp[(1) - (2)].lv).CleanUp(); currentVoice->ifsw=0;;}
     2444    break;
     2445
     2446  case 7:
     2447#line 411 "grammar.y"
     2448    {
    16272449            YYACCEPT;
    1628           ;
    1629     break;}
    1630 case 7:
    1631 #line 413 "grammar.y"
    1632 {
     2450          ;}
     2451    break;
     2452
     2453  case 8:
     2454#line 415 "grammar.y"
     2455    {
    16332456            currentVoice->ifsw=0;
    16342457            iiDebug();
    1635           ;
    1636     break;}
    1637 case 8:
    1638 #line 418 "grammar.y"
    1639 {currentVoice->ifsw=0;;
    1640     break;}
    1641 case 9:
     2458          ;}
     2459    break;
     2460
     2461  case 9:
    16422462#line 420 "grammar.y"
    1643 {
     2463    {currentVoice->ifsw=0;;}
     2464    break;
     2465
     2466  case 10:
     2467#line 422 "grammar.y"
     2468    {
    16442469            #ifdef SIQ
    16452470            siq=0;
     
    16492474            if (inerror)
    16502475            {
    1651               if ((inerror!=3) && (yyvsp[-1].i<UMINUS) && (yyvsp[-1].i>' '))
     2476              if ((inerror!=3) && ((yyvsp[(1) - (2)]).i<UMINUS) && ((yyvsp[(1) - (2)]).i>' '))
    16522477              {
    16532478                // 1: yyerror called
     
    16552480                // 3: error rule put token+\n
    16562481                inerror=3;
    1657                 Print(" error at token `%s`\n",iiTwoOps(yyvsp[-1].i));
     2482                Print(" error at token `%s`\n",iiTwoOps((yyvsp[(1) - (2)]).i));
    16582483              }
    16592484            }
     
    16852510            if (sdb_flags &2) sdb_flags=1;
    16862511#endif
    1687           ;
    1688     break;}
    1689 case 17:
    1690 #line 475 "grammar.y"
    1691 {if (currentVoice!=NULL) currentVoice->ifsw=0;;
    1692     break;}
    1693 case 18:
    1694 #line 478 "grammar.y"
    1695 { omFree((ADDRESS)yyvsp[0].name); ;
    1696     break;}
    1697 case 28:
    1698 #line 493 "grammar.y"
    1699 {
    1700             if(iiAssign(&yyvsp[-1].lv,&yyvsp[0].lv)) YYERROR;
    1701           ;
    1702     break;}
    1703 case 29:
    1704 #line 500 "grammar.y"
    1705 {
     2512          ;}
     2513    break;
     2514
     2515  case 18:
     2516#line 477 "grammar.y"
     2517    {if (currentVoice!=NULL) currentVoice->ifsw=0;;}
     2518    break;
     2519
     2520  case 19:
     2521#line 480 "grammar.y"
     2522    { omFree((ADDRESS)(yyvsp[(2) - (2)].name)); ;}
     2523    break;
     2524
     2525  case 29:
     2526#line 495 "grammar.y"
     2527    {
     2528            if(iiAssign(&(yyvsp[(1) - (2)].lv),&(yyvsp[(2) - (2)].lv))) YYERROR;
     2529          ;}
     2530    break;
     2531
     2532  case 30:
     2533#line 502 "grammar.y"
     2534    {
    17062535            if (currRing==NULL) MYYERROR("no ring active");
    1707             syMake(&yyval.lv,omStrDup(yyvsp[0].name));
    1708           ;
    1709     break;}
    1710 case 30:
    1711 #line 505 "grammar.y"
    1712 {
    1713             syMake(&yyval.lv,yyvsp[0].name);
    1714           ;
    1715     break;}
    1716 case 31:
    1717 #line 509 "grammar.y"
    1718 {
    1719             if(iiExprArith2(&yyval.lv, &yyvsp[-2].lv, COLONCOLON, &yyvsp[0].lv)) YYERROR;
    1720           ;
    1721     break;}
    1722 case 32:
    1723 #line 513 "grammar.y"
    1724 {
    1725             if(iiExprArith1(&yyval.lv,&yyvsp[-2].lv,'(')) YYERROR;
    1726           ;
    1727     break;}
    1728 case 33:
    1729 #line 517 "grammar.y"
    1730 {
    1731             if (yyvsp[-3].lv.rtyp==LIB_CMD)
     2536            syMake(&(yyval.lv),omStrDup((yyvsp[(1) - (1)].name)));
     2537          ;}
     2538    break;
     2539
     2540  case 31:
     2541#line 507 "grammar.y"
     2542    {
     2543            syMake(&(yyval.lv),(yyvsp[(1) - (1)].name));
     2544          ;}
     2545    break;
     2546
     2547  case 32:
     2548#line 511 "grammar.y"
     2549    {
     2550            if(iiExprArith2(&(yyval.lv), &(yyvsp[(1) - (3)].lv), COLONCOLON, &(yyvsp[(3) - (3)].lv))) YYERROR;
     2551          ;}
     2552    break;
     2553
     2554  case 33:
     2555#line 515 "grammar.y"
     2556    {
     2557            if(iiExprArith1(&(yyval.lv),&(yyvsp[(1) - (3)].lv),'(')) YYERROR;
     2558          ;}
     2559    break;
     2560
     2561  case 34:
     2562#line 519 "grammar.y"
     2563    {
     2564            if ((yyvsp[(1) - (4)].lv).rtyp==LIB_CMD)
    17322565            {
    1733               if(iiExprArith1(&yyval.lv,&yyvsp[-1].lv,LIB_CMD)) YYERROR;
     2566              if(iiExprArith1(&(yyval.lv),&(yyvsp[(3) - (4)].lv),LIB_CMD)) YYERROR;
    17342567            }
    17352568            else
    17362569            {
    1737               if (yyvsp[-3].lv.Typ()==UNKNOWN)
     2570              if ((yyvsp[(1) - (4)].lv).Typ()==UNKNOWN)
    17382571              {
    1739                 if(iiExprArith2(&yyval.lv,&yyvsp[-3].lv,'(',&yyvsp[-1].lv)) YYERROR;
     2572                if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (4)].lv),'(',&(yyvsp[(3) - (4)].lv))) YYERROR;
    17402573              }
    17412574              else
    17422575              {
    1743                 yyvsp[-3].lv.next=(leftv)omAllocBin(sleftv_bin);
    1744                 memcpy(yyvsp[-3].lv.next,&yyvsp[-1].lv,sizeof(sleftv));
    1745                 if(iiExprArithM(&yyval.lv,&yyvsp[-3].lv,'(')) YYERROR;
     2576                (yyvsp[(1) - (4)].lv).next=(leftv)omAllocBin(sleftv_bin);
     2577                memcpy((yyvsp[(1) - (4)].lv).next,&(yyvsp[(3) - (4)].lv),sizeof(sleftv));
     2578                if(iiExprArithM(&(yyval.lv),&(yyvsp[(1) - (4)].lv),'(')) YYERROR;
    17462579              }
    17472580            }
    1748           ;
    1749     break;}
    1750 case 34:
    1751 #line 537 "grammar.y"
    1752 {
     2581          ;}
     2582    break;
     2583
     2584  case 35:
     2585#line 539 "grammar.y"
     2586    {
    17532587            if (currRingHdl==NULL) MYYERROR("no ring active");
    17542588            int j = 0;
    1755             memset(&yyval.lv,0,sizeof(sleftv));
    1756             yyval.lv.rtyp=VECTOR_CMD;
    1757             leftv v = &yyvsp[-1].lv;
     2589            memset(&(yyval.lv),0,sizeof(sleftv));
     2590            (yyval.lv).rtyp=VECTOR_CMD;
     2591            leftv v = &(yyvsp[(2) - (3)].lv);
    17582592            while (v!=NULL)
    17592593            {
     
    17642598              if((i==0) || (iiConvert(t /*v->Typ()*/,POLY_CMD,i,v,&tmp)))
    17652599              {
    1766                 pDelete((poly *)&yyval.lv.data);
    1767                 yyvsp[-1].lv.CleanUp();
     2600                pDelete((poly *)&(yyval.lv).data);
     2601                (yyvsp[(2) - (3)].lv).CleanUp();
    17682602                MYYERROR("expected '[poly,...'");
    17692603              }
    17702604              poly p = (poly)tmp.CopyD(POLY_CMD);
    17712605              pSetCompP(p,++j);
    1772               yyval.lv.data = (void *)pAdd((poly)yyval.lv.data,p);
     2606              (yyval.lv).data = (void *)pAdd((poly)(yyval.lv).data,p);
    17732607              v->next=tmp.next;tmp.next=NULL;
    17742608              tmp.CleanUp();
    17752609              v=v->next;
    17762610            }
    1777             yyvsp[-1].lv.CleanUp();
    1778           ;
    1779     break;}
    1780 case 35:
    1781 #line 565 "grammar.y"
    1782 {
    1783             memset(&yyval.lv,0,sizeof(yyval.lv));
    1784             int i = atoi(yyvsp[0].name);
     2611            (yyvsp[(2) - (3)].lv).CleanUp();
     2612          ;}
     2613    break;
     2614
     2615  case 36:
     2616#line 567 "grammar.y"
     2617    {
     2618            memset(&(yyval.lv),0,sizeof((yyval.lv)));
     2619            int i = atoi((yyvsp[(1) - (1)].name));
    17852620            /*remember not to omFree($1)
    17862621            *because it is a part of the scanner buffer*/
    1787             yyval.lv.rtyp  = INT_CMD;
    1788             yyval.lv.data = (void *)(long)i;
     2622            (yyval.lv).rtyp  = INT_CMD;
     2623            (yyval.lv).data = (void *)(long)i;
    17892624
    17902625            /* check: out of range input */
    1791             int l = strlen(yyvsp[0].name)+2;
     2626            int l = strlen((yyvsp[(1) - (1)].name))+2;
    17922627            number n;
    17932628            if (l >= MAX_INT_LEN)
     
    17952630              char tmp[MAX_INT_LEN+5];
    17962631              sprintf(tmp,"%d",i);
    1797               if (strcmp(tmp,yyvsp[0].name)!=0)
     2632              if (strcmp(tmp,(yyvsp[(1) - (1)].name))!=0)
    17982633              {
    1799                 nlRead(yyvsp[0].name,&n);
    1800                 yyval.lv.rtyp=BIGINT_CMD;
    1801                 yyval.lv.data = n;
     2634                nlRead((yyvsp[(1) - (1)].name),&n);
     2635                (yyval.lv).rtyp=BIGINT_CMD;
     2636                (yyval.lv).data = n;
    18022637              }
    18032638            }
    1804           ;
    1805     break;}
    1806 case 36:
    1807 #line 589 "grammar.y"
    1808 {
    1809             memset(&yyval.lv,0,sizeof(yyval.lv));
    1810             yyval.lv.rtyp = yyvsp[0].i;
    1811             yyval.lv.data = yyval.lv.Data();
    1812           ;
    1813     break;}
    1814 case 37:
    1815 #line 595 "grammar.y"
    1816 {
    1817             memset(&yyval.lv,0,sizeof(yyval.lv));
    1818             yyval.lv.rtyp  = STRING_CMD;
    1819             yyval.lv.data = yyvsp[0].name;
    1820           ;
    1821     break;}
    1822 case 38:
    1823 #line 604 "grammar.y"
    1824 {
    1825             leftv v = &yyvsp[-2].lv;
     2639          ;}
     2640    break;
     2641
     2642  case 37:
     2643#line 591 "grammar.y"
     2644    {
     2645            memset(&(yyval.lv),0,sizeof((yyval.lv)));
     2646            (yyval.lv).rtyp = (yyvsp[(1) - (1)].i);
     2647            (yyval.lv).data = (yyval.lv).Data();
     2648          ;}
     2649    break;
     2650
     2651  case 38:
     2652#line 597 "grammar.y"
     2653    {
     2654            memset(&(yyval.lv),0,sizeof((yyval.lv)));
     2655            (yyval.lv).rtyp  = STRING_CMD;
     2656            (yyval.lv).data = (yyvsp[(1) - (1)].name);
     2657          ;}
     2658    break;
     2659
     2660  case 39:
     2661#line 606 "grammar.y"
     2662    {
     2663            leftv v = &(yyvsp[(1) - (3)].lv);
    18262664            while (v->next!=NULL)
    18272665            {
     
    18292667            }
    18302668            v->next = (leftv)omAllocBin(sleftv_bin);
    1831             memcpy(v->next,&(yyvsp[0].lv),sizeof(sleftv));
    1832             yyval.lv = yyvsp[-2].lv;
    1833           ;
    1834     break;}
    1835 case 39:
    1836 #line 615 "grammar.y"
    1837 {
    1838             yyval.lv = yyvsp[0].lv;
    1839           ;
    1840     break;}
    1841 case 40:
    1842 #line 621 "grammar.y"
    1843 {
     2669            memcpy(v->next,&((yyvsp[(3) - (3)].lv)),sizeof(sleftv));
     2670            (yyval.lv) = (yyvsp[(1) - (3)].lv);
     2671          ;}
     2672    break;
     2673
     2674  case 40:
     2675#line 617 "grammar.y"
     2676    {
     2677            (yyval.lv) = (yyvsp[(1) - (1)].lv);
     2678          ;}
     2679    break;
     2680
     2681  case 41:
     2682#line 623 "grammar.y"
     2683    {
    18442684            /*if ($1.typ == eunknown) YYERROR;*/
    1845             yyval.lv = yyvsp[0].lv;
    1846           ;
    1847     break;}
    1848 case 41:
    1849 #line 625 "grammar.y"
    1850 { yyval.lv = yyvsp[0].lv; ;
    1851     break;}
    1852 case 42:
    1853 #line 626 "grammar.y"
    1854 { yyval.lv = yyvsp[-1].lv; ;
    1855     break;}
    1856 case 43:
     2685            (yyval.lv) = (yyvsp[(1) - (1)].lv);
     2686          ;}
     2687    break;
     2688
     2689  case 42:
     2690#line 627 "grammar.y"
     2691    { (yyval.lv) = (yyvsp[(1) - (1)].lv); ;}
     2692    break;
     2693
     2694  case 43:
    18572695#line 628 "grammar.y"
    1858 {
    1859             if(iiExprArith3(&yyval.lv,'[',&yyvsp[-5].lv,&yyvsp[-3].lv,&yyvsp[-1].lv)) YYERROR;
    1860           ;
    1861     break;}
    1862 case 44:
    1863 #line 632 "grammar.y"
    1864 {
    1865             if(iiExprArith2(&yyval.lv,&yyvsp[-3].lv,'[',&yyvsp[-1].lv)) YYERROR;
    1866           ;
    1867     break;}
    1868 case 45:
    1869 #line 636 "grammar.y"
    1870 {
    1871             if(iiExprArith1(&yyval.lv,&yyvsp[-1].lv,yyvsp[-3].i)) YYERROR;
    1872           ;
    1873     break;}
    1874 case 46:
    1875 #line 640 "grammar.y"
    1876 {
    1877             if(iiExprArithM(&yyval.lv,&yyvsp[-1].lv,yyvsp[-3].i)) YYERROR;
    1878           ;
    1879     break;}
    1880 case 47:
    1881 #line 644 "grammar.y"
    1882 {
    1883             if(iiExprArithM(&yyval.lv,NULL,yyvsp[-2].i)) YYERROR;
    1884           ;
    1885     break;}
    1886 case 48:
    1887 #line 648 "grammar.y"
    1888 {
    1889             if(iiExprArith1(&yyval.lv,&yyvsp[-1].lv,yyvsp[-3].i)) YYERROR;
    1890           ;
    1891     break;}
    1892 case 49:
    1893 #line 652 "grammar.y"
    1894 {
    1895             if(iiExprArithM(&yyval.lv,&yyvsp[-1].lv,yyvsp[-3].i)) YYERROR;
    1896           ;
    1897     break;}
    1898 case 50:
    1899 #line 656 "grammar.y"
    1900 {
    1901             if(iiExprArithM(&yyval.lv,NULL,yyvsp[-2].i)) YYERROR;
    1902           ;
    1903     break;}
    1904 case 51:
    1905 #line 660 "grammar.y"
    1906 {
    1907             if(iiExprArith1(&yyval.lv,&yyvsp[-1].lv,yyvsp[-3].i)) YYERROR;
    1908           ;
    1909     break;}
    1910 case 52:
    1911 #line 664 "grammar.y"
    1912 {
    1913             if(iiExprArith2(&yyval.lv,&yyvsp[-3].lv,yyvsp[-5].i,&yyvsp[-1].lv,TRUE)) YYERROR;
    1914           ;
    1915     break;}
    1916 case 53:
    1917 #line 668 "grammar.y"
    1918 {
    1919             if(iiExprArith3(&yyval.lv,yyvsp[-7].i,&yyvsp[-5].lv,&yyvsp[-3].lv,&yyvsp[-1].lv)) YYERROR;
    1920           ;
    1921     break;}
    1922 case 54:
    1923 #line 672 "grammar.y"
    1924 {
    1925             if(iiExprArith2(&yyval.lv,&yyvsp[-3].lv,yyvsp[-5].i,&yyvsp[-1].lv,TRUE)) YYERROR;
    1926           ;
    1927     break;}
    1928 case 55:
    1929 #line 676 "grammar.y"
    1930 {
    1931             if(iiExprArith3(&yyval.lv,yyvsp[-7].i,&yyvsp[-5].lv,&yyvsp[-3].lv,&yyvsp[-1].lv)) YYERROR;
    1932           ;
    1933     break;}
    1934 case 56:
    1935 #line 680 "grammar.y"
    1936 {
    1937             if(iiExprArith1(&yyval.lv,&yyvsp[-1].lv,yyvsp[-3].i)) YYERROR;
    1938           ;
    1939     break;}
    1940 case 57:
    1941 #line 684 "grammar.y"
    1942 {
    1943             if(iiExprArith1(&yyval.lv,&yyvsp[-1].lv,yyvsp[-3].i)) YYERROR;
    1944           ;
    1945     break;}
    1946 case 58:
    1947 #line 688 "grammar.y"
    1948 {
    1949             if(iiExprArith2(&yyval.lv,&yyvsp[-3].lv,yyvsp[-5].i,&yyvsp[-1].lv,TRUE)) YYERROR;
    1950           ;
    1951     break;}
    1952 case 59:
    1953 #line 692 "grammar.y"
    1954 {
    1955             if(iiExprArith1(&yyval.lv,&yyvsp[-1].lv,yyvsp[-3].i)) YYERROR;
    1956           ;
    1957     break;}
    1958 case 60:
    1959 #line 696 "grammar.y"
    1960 {
    1961             if(iiExprArith2(&yyval.lv,&yyvsp[-3].lv,yyvsp[-5].i,&yyvsp[-1].lv,TRUE)) YYERROR;
    1962           ;
    1963     break;}
    1964 case 61:
    1965 #line 700 "grammar.y"
    1966 {
    1967             if(iiExprArith3(&yyval.lv,yyvsp[-7].i,&yyvsp[-5].lv,&yyvsp[-3].lv,&yyvsp[-1].lv)) YYERROR;
    1968           ;
    1969     break;}
    1970 case 62:
    1971 #line 704 "grammar.y"
    1972 {
    1973             if(iiExprArith3(&yyval.lv,yyvsp[-7].i,&yyvsp[-5].lv,&yyvsp[-3].lv,&yyvsp[-1].lv)) YYERROR;
    1974           ;
    1975     break;}
    1976 case 63:
    1977 #line 708 "grammar.y"
    1978 {
    1979             if(iiExprArithM(&yyval.lv,NULL,yyvsp[-2].i)) YYERROR;
    1980           ;
    1981     break;}
    1982 case 64:
    1983 #line 712 "grammar.y"
    1984 {
    1985             if(iiExprArithM(&yyval.lv,&yyvsp[-1].lv,yyvsp[-3].i)) YYERROR;
    1986           ;
    1987     break;}
    1988 case 65:
    1989 #line 716 "grammar.y"
    1990 {
    1991             if(iiExprArith3(&yyval.lv,MATRIX_CMD,&yyvsp[-5].lv,&yyvsp[-3].lv,&yyvsp[-1].lv)) YYERROR;
    1992           ;
    1993     break;}
    1994 case 66:
    1995 #line 720 "grammar.y"
    1996 {
    1997             if(iiExprArith1(&yyval.lv,&yyvsp[-1].lv,MATRIX_CMD)) YYERROR;
    1998           ;
    1999     break;}
    2000 case 67:
    2001 #line 724 "grammar.y"
    2002 {
    2003             if(iiExprArith3(&yyval.lv,INTMAT_CMD,&yyvsp[-5].lv,&yyvsp[-3].lv,&yyvsp[-1].lv)) YYERROR;
    2004           ;
    2005     break;}
    2006 case 68:
    2007 #line 728 "grammar.y"
    2008 {
    2009             if(iiExprArith1(&yyval.lv,&yyvsp[-1].lv,INTMAT_CMD)) YYERROR;
    2010           ;
    2011     break;}
    2012 case 69:
    2013 #line 732 "grammar.y"
    2014 {
    2015             if(iiExprArith3(&yyval.lv,RING_CMD,&yyvsp[-5].lv,&yyvsp[-3].lv,&yyvsp[-1].lv)) YYERROR;
    2016           ;
    2017     break;}
    2018 case 70:
    2019 #line 736 "grammar.y"
    2020 {
    2021             if(iiExprArith1(&yyval.lv,&yyvsp[-1].lv,RING_CMD)) YYERROR;
    2022           ;
    2023     break;}
    2024 case 71:
    2025 #line 740 "grammar.y"
    2026 {
    2027             yyval.lv=yyvsp[-1].lv;
    2028           ;
    2029     break;}
    2030 case 72:
    2031 #line 744 "grammar.y"
    2032 {
     2696    { (yyval.lv) = (yyvsp[(2) - (3)].lv); ;}
     2697    break;
     2698
     2699  case 44:
     2700#line 630 "grammar.y"
     2701    {
     2702            if(iiExprArith3(&(yyval.lv),'[',&(yyvsp[(1) - (6)].lv),&(yyvsp[(3) - (6)].lv),&(yyvsp[(5) - (6)].lv))) YYERROR;
     2703          ;}
     2704    break;
     2705
     2706  case 45:
     2707#line 634 "grammar.y"
     2708    {
     2709            if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (4)].lv),'[',&(yyvsp[(3) - (4)].lv))) YYERROR;
     2710          ;}
     2711    break;
     2712
     2713  case 46:
     2714#line 638 "grammar.y"
     2715    {
     2716            if(iiExprArith1(&(yyval.lv),&(yyvsp[(3) - (4)].lv),(yyvsp[(1) - (4)].i))) YYERROR;
     2717          ;}
     2718    break;
     2719
     2720  case 47:
     2721#line 642 "grammar.y"
     2722    {
     2723            if(iiExprArithM(&(yyval.lv),&(yyvsp[(3) - (4)].lv),(yyvsp[(1) - (4)].i))) YYERROR;
     2724          ;}
     2725    break;
     2726
     2727  case 48:
     2728#line 646 "grammar.y"
     2729    {
     2730            if(iiExprArithM(&(yyval.lv),NULL,(yyvsp[(1) - (3)].i))) YYERROR;
     2731          ;}
     2732    break;
     2733
     2734  case 49:
     2735#line 650 "grammar.y"
     2736    {
     2737            if(iiExprArith1(&(yyval.lv),&(yyvsp[(3) - (4)].lv),(yyvsp[(1) - (4)].i))) YYERROR;
     2738          ;}
     2739    break;
     2740
     2741  case 50:
     2742#line 654 "grammar.y"
     2743    {
     2744            if(iiExprArithM(&(yyval.lv),&(yyvsp[(3) - (4)].lv),(yyvsp[(1) - (4)].i))) YYERROR;
     2745          ;}
     2746    break;
     2747
     2748  case 51:
     2749#line 658 "grammar.y"
     2750    {
     2751            if(iiExprArithM(&(yyval.lv),NULL,(yyvsp[(1) - (3)].i))) YYERROR;
     2752          ;}
     2753    break;
     2754
     2755  case 52:
     2756#line 662 "grammar.y"
     2757    {
     2758            if(iiExprArith1(&(yyval.lv),&(yyvsp[(3) - (4)].lv),(yyvsp[(1) - (4)].i))) YYERROR;
     2759          ;}
     2760    break;
     2761
     2762  case 53:
     2763#line 666 "grammar.y"
     2764    {
     2765            if(iiExprArith2(&(yyval.lv),&(yyvsp[(3) - (6)].lv),(yyvsp[(1) - (6)].i),&(yyvsp[(5) - (6)].lv),TRUE)) YYERROR;
     2766          ;}
     2767    break;
     2768
     2769  case 54:
     2770#line 670 "grammar.y"
     2771    {
     2772            if(iiExprArith3(&(yyval.lv),(yyvsp[(1) - (8)].i),&(yyvsp[(3) - (8)].lv),&(yyvsp[(5) - (8)].lv),&(yyvsp[(7) - (8)].lv))) YYERROR;
     2773          ;}
     2774    break;
     2775
     2776  case 55:
     2777#line 674 "grammar.y"
     2778    {
     2779            if(iiExprArith2(&(yyval.lv),&(yyvsp[(3) - (6)].lv),(yyvsp[(1) - (6)].i),&(yyvsp[(5) - (6)].lv),TRUE)) YYERROR;
     2780          ;}
     2781    break;
     2782
     2783  case 56:
     2784#line 678 "grammar.y"
     2785    {
     2786            if(iiExprArith3(&(yyval.lv),(yyvsp[(1) - (8)].i),&(yyvsp[(3) - (8)].lv),&(yyvsp[(5) - (8)].lv),&(yyvsp[(7) - (8)].lv))) YYERROR;
     2787          ;}
     2788    break;
     2789
     2790  case 57:
     2791#line 682 "grammar.y"
     2792    {
     2793            if(iiExprArith1(&(yyval.lv),&(yyvsp[(3) - (4)].lv),(yyvsp[(1) - (4)].i))) YYERROR;
     2794          ;}
     2795    break;
     2796
     2797  case 58:
     2798#line 686 "grammar.y"
     2799    {
     2800            if(iiExprArith1(&(yyval.lv),&(yyvsp[(3) - (4)].lv),(yyvsp[(1) - (4)].i))) YYERROR;
     2801          ;}
     2802    break;
     2803
     2804  case 59:
     2805#line 690 "grammar.y"
     2806    {
     2807            if(iiExprArith2(&(yyval.lv),&(yyvsp[(3) - (6)].lv),(yyvsp[(1) - (6)].i),&(yyvsp[(5) - (6)].lv),TRUE)) YYERROR;
     2808          ;}
     2809    break;
     2810
     2811  case 60:
     2812#line 694 "grammar.y"
     2813    {
     2814            if(iiExprArith1(&(yyval.lv),&(yyvsp[(3) - (4)].lv),(yyvsp[(1) - (4)].i))) YYERROR;
     2815          ;}
     2816    break;
     2817
     2818  case 61:
     2819#line 698 "grammar.y"
     2820    {
     2821            if(iiExprArith2(&(yyval.lv),&(yyvsp[(3) - (6)].lv),(yyvsp[(1) - (6)].i),&(yyvsp[(5) - (6)].lv),TRUE)) YYERROR;
     2822          ;}
     2823    break;
     2824
     2825  case 62:
     2826#line 702 "grammar.y"
     2827    {
     2828            if(iiExprArith3(&(yyval.lv),(yyvsp[(1) - (8)].i),&(yyvsp[(3) - (8)].lv),&(yyvsp[(5) - (8)].lv),&(yyvsp[(7) - (8)].lv))) YYERROR;
     2829          ;}
     2830    break;
     2831
     2832  case 63:
     2833#line 706 "grammar.y"
     2834    {
     2835            if(iiExprArith3(&(yyval.lv),(yyvsp[(1) - (8)].i),&(yyvsp[(3) - (8)].lv),&(yyvsp[(5) - (8)].lv),&(yyvsp[(7) - (8)].lv))) YYERROR;
     2836          ;}
     2837    break;
     2838
     2839  case 64:
     2840#line 710 "grammar.y"
     2841    {
     2842            if(iiExprArithM(&(yyval.lv),NULL,(yyvsp[(1) - (3)].i))) YYERROR;
     2843          ;}
     2844    break;
     2845
     2846  case 65:
     2847#line 714 "grammar.y"
     2848    {
     2849            if(iiExprArithM(&(yyval.lv),&(yyvsp[(3) - (4)].lv),(yyvsp[(1) - (4)].i))) YYERROR;
     2850          ;}
     2851    break;
     2852
     2853  case 66:
     2854#line 718 "grammar.y"
     2855    {
     2856            if(iiExprArith3(&(yyval.lv),MATRIX_CMD,&(yyvsp[(3) - (8)].lv),&(yyvsp[(5) - (8)].lv),&(yyvsp[(7) - (8)].lv))) YYERROR;
     2857          ;}
     2858    break;
     2859
     2860  case 67:
     2861#line 722 "grammar.y"
     2862    {
     2863            if(iiExprArith1(&(yyval.lv),&(yyvsp[(3) - (4)].lv),MATRIX_CMD)) YYERROR;
     2864          ;}
     2865    break;
     2866
     2867  case 68:
     2868#line 726 "grammar.y"
     2869    {
     2870            if(iiExprArith3(&(yyval.lv),INTMAT_CMD,&(yyvsp[(3) - (8)].lv),&(yyvsp[(5) - (8)].lv),&(yyvsp[(7) - (8)].lv))) YYERROR;
     2871          ;}
     2872    break;
     2873
     2874  case 69:
     2875#line 730 "grammar.y"
     2876    {
     2877            if(iiExprArith1(&(yyval.lv),&(yyvsp[(3) - (4)].lv),INTMAT_CMD)) YYERROR;
     2878          ;}
     2879    break;
     2880
     2881  case 70:
     2882#line 734 "grammar.y"
     2883    {
     2884            if(iiExprArith3(&(yyval.lv),RING_CMD,&(yyvsp[(3) - (8)].lv),&(yyvsp[(5) - (8)].lv),&(yyvsp[(7) - (8)].lv))) YYERROR;
     2885          ;}
     2886    break;
     2887
     2888  case 71:
     2889#line 738 "grammar.y"
     2890    {
     2891            if(iiExprArith1(&(yyval.lv),&(yyvsp[(3) - (4)].lv),RING_CMD)) YYERROR;
     2892          ;}
     2893    break;
     2894
     2895  case 72:
     2896#line 742 "grammar.y"
     2897    {
     2898            (yyval.lv)=(yyvsp[(2) - (3)].lv);
     2899          ;}
     2900    break;
     2901
     2902  case 73:
     2903#line 746 "grammar.y"
     2904    {
    20332905            #ifdef SIQ
    20342906            siq++;
    20352907            if (siq>0)
    2036             { if (iiExprArith2(&yyval.lv,&yyvsp[-3].lv,'=',&yyvsp[-1].lv)) YYERROR; }
     2908            { if (iiExprArith2(&(yyval.lv),&(yyvsp[(2) - (5)].lv),'=',&(yyvsp[(4) - (5)].lv))) YYERROR; }
    20372909            else
    20382910            #endif
    20392911            {
    2040               memset(&yyval.lv,0,sizeof(yyval.lv));
    2041               yyval.lv.rtyp=NONE;
    2042               if (iiAssign(&yyvsp[-3].lv,&yyvsp[-1].lv)) YYERROR;
     2912              memset(&(yyval.lv),0,sizeof((yyval.lv)));
     2913              (yyval.lv).rtyp=NONE;
     2914              if (iiAssign(&(yyvsp[(2) - (5)].lv),&(yyvsp[(4) - (5)].lv))) YYERROR;
    20432915            }
    20442916            #ifdef SIQ
    20452917            siq--;
    20462918            #endif
    2047           ;
    2048     break;}
    2049 case 73:
    2050 #line 761 "grammar.y"
    2051 {
     2919          ;}
     2920    break;
     2921
     2922  case 74:
     2923#line 763 "grammar.y"
     2924    {
    20522925            #ifdef SIQ
    20532926            siq--;
    20542927            #endif
    2055           ;
    2056     break;}
    2057 case 74:
    2058 #line 767 "grammar.y"
    2059 {
     2928          ;}
     2929    break;
     2930
     2931  case 75:
     2932#line 769 "grammar.y"
     2933    {
    20602934            #ifdef SIQ
    2061             if (siq<=0) yyvsp[-1].lv.Eval();
     2935            if (siq<=0) (yyvsp[(4) - (5)].lv).Eval();
    20622936            #endif
    2063             yyval.lv=yyvsp[-1].lv;
     2937            (yyval.lv)=(yyvsp[(4) - (5)].lv);
    20642938            #ifdef SIQ
    20652939            siq++;
    20662940            #endif
    2067           ;
    2068     break;}
    2069 case 75:
    2070 #line 779 "grammar.y"
    2071 {
     2941          ;}
     2942    break;
     2943
     2944  case 76:
     2945#line 781 "grammar.y"
     2946    {
    20722947            #ifdef SIQ
    20732948            siq++;
    20742949            #endif
    2075           ;
    2076     break;}
    2077 case 76:
    2078 #line 787 "grammar.y"
    2079 {
     2950          ;}
     2951    break;
     2952
     2953  case 77:
     2954#line 789 "grammar.y"
     2955    {
    20802956            #ifdef SIQ
    20812957            siq--;
    20822958            #endif
    2083           ;
    2084     break;}
    2085 case 77:
    2086 #line 796 "grammar.y"
    2087 {
    2088             if(iiExprArith1(&yyval.lv,&yyvsp[-1].lv,PLUSPLUS)) YYERROR;
    2089           ;
    2090     break;}
    2091 case 78:
    2092 #line 800 "grammar.y"
    2093 {
    2094             if(iiExprArith1(&yyval.lv,&yyvsp[-1].lv,MINUSMINUS)) YYERROR;
    2095           ;
    2096     break;}
    2097 case 79:
    2098 #line 804 "grammar.y"
    2099 {
    2100             if(iiExprArith2(&yyval.lv,&yyvsp[-2].lv,'+',&yyvsp[0].lv)) YYERROR;
    2101           ;
    2102     break;}
    2103 case 80:
    2104 #line 808 "grammar.y"
    2105 {
    2106             if(iiExprArith2(&yyval.lv,&yyvsp[-2].lv,'-',&yyvsp[0].lv)) YYERROR;
    2107           ;
    2108     break;}
    2109 case 81:
    2110 #line 812 "grammar.y"
    2111 {
    2112             if(iiExprArith2(&yyval.lv,&yyvsp[-2].lv,yyvsp[-1].i,&yyvsp[0].lv)) YYERROR;
    2113           ;
    2114     break;}
    2115 case 82:
    2116 #line 816 "grammar.y"
    2117 {
    2118             if(iiExprArith2(&yyval.lv,&yyvsp[-2].lv,'^',&yyvsp[0].lv)) YYERROR;
    2119           ;
    2120     break;}
    2121 case 83:
    2122 #line 820 "grammar.y"
    2123 {
    2124             if(iiExprArith2(&yyval.lv,&yyvsp[-2].lv,yyvsp[-1].i,&yyvsp[0].lv)) YYERROR;
    2125           ;
    2126     break;}
    2127 case 84:
    2128 #line 824 "grammar.y"
    2129 {
    2130             if(iiExprArith2(&yyval.lv,&yyvsp[-2].lv,yyvsp[-1].i,&yyvsp[0].lv)) YYERROR;
    2131           ;
    2132     break;}
    2133 case 85:
    2134 #line 828 "grammar.y"
    2135 {
    2136             if(iiExprArith2(&yyval.lv,&yyvsp[-2].lv,NOTEQUAL,&yyvsp[0].lv)) YYERROR;
    2137           ;
    2138     break;}
    2139 case 86:
    2140 #line 832 "grammar.y"
    2141 {
    2142             if(iiExprArith2(&yyval.lv,&yyvsp[-2].lv,EQUAL_EQUAL,&yyvsp[0].lv)) YYERROR;
    2143           ;
    2144     break;}
    2145 case 87:
    2146 #line 836 "grammar.y"
    2147 {
    2148             if(iiExprArith2(&yyval.lv,&yyvsp[-2].lv,DOTDOT,&yyvsp[0].lv)) YYERROR;
    2149           ;
    2150     break;}
    2151 case 88:
    2152 #line 840 "grammar.y"
    2153 {
    2154             if(iiExprArith2(&yyval.lv,&yyvsp[-2].lv,':',&yyvsp[0].lv)) YYERROR;
    2155           ;
    2156     break;}
    2157 case 89:
    2158 #line 844 "grammar.y"
    2159 {
    2160             memset(&yyval.lv,0,sizeof(yyval.lv));
    2161             int i; TESTSETINT(yyvsp[0].lv,i);
    2162             yyval.lv.rtyp  = INT_CMD;
    2163             yyval.lv.data = (void *)(long)(i == 0 ? 1 : 0);
    2164           ;
    2165     break;}
    2166 case 90:
    2167 #line 851 "grammar.y"
    2168 {
    2169             if(iiExprArith1(&yyval.lv,&yyvsp[0].lv,'-')) YYERROR;
    2170           ;
    2171     break;}
    2172 case 91:
    2173 #line 857 "grammar.y"
    2174 { yyval.lv = yyvsp[-1].lv; ;
    2175     break;}
    2176 case 92:
     2959          ;}
     2960    break;
     2961
     2962  case 78:
     2963#line 798 "grammar.y"
     2964    {
     2965            if(iiExprArith1(&(yyval.lv),&(yyvsp[(1) - (2)].lv),PLUSPLUS)) YYERROR;
     2966          ;}
     2967    break;
     2968
     2969  case 79:
     2970#line 802 "grammar.y"
     2971    {
     2972            if(iiExprArith1(&(yyval.lv),&(yyvsp[(1) - (2)].lv),MINUSMINUS)) YYERROR;
     2973          ;}
     2974    break;
     2975
     2976  case 80:
     2977#line 806 "grammar.y"
     2978    {
     2979            if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),'+',&(yyvsp[(3) - (3)].lv))) YYERROR;
     2980          ;}
     2981    break;
     2982
     2983  case 81:
     2984#line 810 "grammar.y"
     2985    {
     2986            if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),'-',&(yyvsp[(3) - (3)].lv))) YYERROR;
     2987          ;}
     2988    break;
     2989
     2990  case 82:
     2991#line 814 "grammar.y"
     2992    {
     2993            if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),(yyvsp[(2) - (3)].i),&(yyvsp[(3) - (3)].lv))) YYERROR;
     2994          ;}
     2995    break;
     2996
     2997  case 83:
     2998#line 818 "grammar.y"
     2999    {
     3000            if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),'^',&(yyvsp[(3) - (3)].lv))) YYERROR;
     3001          ;}
     3002    break;
     3003
     3004  case 84:
     3005#line 822 "grammar.y"
     3006    {
     3007            if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),(yyvsp[(2) - (3)].i),&(yyvsp[(3) - (3)].lv))) YYERROR;
     3008          ;}
     3009    break;
     3010
     3011  case 85:
     3012#line 826 "grammar.y"
     3013    {
     3014            if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),(yyvsp[(2) - (3)].i),&(yyvsp[(3) - (3)].lv))) YYERROR;
     3015          ;}
     3016    break;
     3017
     3018  case 86:
     3019#line 830 "grammar.y"
     3020    {
     3021            if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),NOTEQUAL,&(yyvsp[(3) - (3)].lv))) YYERROR;
     3022          ;}
     3023    break;
     3024
     3025  case 87:
     3026#line 834 "grammar.y"
     3027    {
     3028            if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),EQUAL_EQUAL,&(yyvsp[(3) - (3)].lv))) YYERROR;
     3029          ;}
     3030    break;
     3031
     3032  case 88:
     3033#line 838 "grammar.y"
     3034    {
     3035            if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),DOTDOT,&(yyvsp[(3) - (3)].lv))) YYERROR;
     3036          ;}
     3037    break;
     3038
     3039  case 89:
     3040#line 842 "grammar.y"
     3041    {
     3042            if(iiExprArith2(&(yyval.lv),&(yyvsp[(1) - (3)].lv),':',&(yyvsp[(3) - (3)].lv))) YYERROR;
     3043          ;}
     3044    break;
     3045
     3046  case 90:
     3047#line 846 "grammar.y"
     3048    {
     3049            memset(&(yyval.lv),0,sizeof((yyval.lv)));
     3050            int i; TESTSETINT((yyvsp[(2) - (2)].lv),i);
     3051            (yyval.lv).rtyp  = INT_CMD;
     3052            (yyval.lv).data = (void *)(long)(i == 0 ? 1 : 0);
     3053          ;}
     3054    break;
     3055
     3056  case 91:
     3057#line 853 "grammar.y"
     3058    {
     3059            if(iiExprArith1(&(yyval.lv),&(yyvsp[(2) - (2)].lv),'-')) YYERROR;
     3060          ;}
     3061    break;
     3062
     3063  case 92:
    21773064#line 859 "grammar.y"
    2178 {
    2179             if (yyvsp[-1].lv.rtyp==0)
     3065    { (yyval.lv) = (yyvsp[(1) - (2)].lv); ;}
     3066    break;
     3067
     3068  case 93:
     3069#line 861 "grammar.y"
     3070    {
     3071            if ((yyvsp[(1) - (2)].lv).rtyp==0)
    21803072            {
    2181               Werror("`%s` is undefined",yyvsp[-1].lv.Fullname());
     3073              Werror("`%s` is undefined",(yyvsp[(1) - (2)].lv).Fullname());
    21823074              YYERROR;
    21833075            }
    2184             else if ((yyvsp[-1].lv.rtyp==MODUL_CMD)
     3076            else if (((yyvsp[(1) - (2)].lv).rtyp==MODUL_CMD)
    21853077            // matrix m; m[2]=...
    2186             && (yyvsp[-1].lv.e!=NULL) && (yyvsp[-1].lv.e->next==NULL))
     3078            && ((yyvsp[(1) - (2)].lv).e!=NULL) && ((yyvsp[(1) - (2)].lv).e->next==NULL))
    21873079            {
    21883080              MYYERROR("matrix must have 2 indices");
    21893081            }
    2190             yyval.lv = yyvsp[-1].lv;
    2191           ;
    2192     break;}
    2193 case 94:
    2194 #line 879 "grammar.y"
    2195 {
    2196             if (yyvsp[-1].lv.Typ()!=STRING_CMD)
     3082            (yyval.lv) = (yyvsp[(1) - (2)].lv);
     3083          ;}
     3084    break;
     3085
     3086  case 95:
     3087#line 881 "grammar.y"
     3088    {
     3089            if ((yyvsp[(2) - (3)].lv).Typ()!=STRING_CMD)
    21973090            {
    21983091              MYYERROR("string expression expected");
    21993092            }
    2200             yyval.name = (char *)yyvsp[-1].lv.CopyD(STRING_CMD);
    2201             yyvsp[-1].lv.CleanUp();
    2202           ;
    2203     break;}
    2204 case 97:
    2205 #line 896 "grammar.y"
    2206 {
    2207             if (iiDeclCommand(&yyval.lv,&yyvsp[0].lv,myynest,yyvsp[-1].i,&(yyvsp[0].lv.req_packhdl->idroot)))
     3093            (yyval.name) = (char *)(yyvsp[(2) - (3)].lv).CopyD(STRING_CMD);
     3094            (yyvsp[(2) - (3)].lv).CleanUp();
     3095          ;}
     3096    break;
     3097
     3098  case 98:
     3099#line 898 "grammar.y"
     3100    {
     3101            if (iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (2)].lv),myynest,(yyvsp[(1) - (2)].i),&((yyvsp[(2) - (2)].lv).req_packhdl->idroot)))
    22083102              YYERROR;
    2209           ;
    2210     break;}
    2211 case 98:
    2212 #line 901 "grammar.y"
    2213 {
    2214             if (iiDeclCommand(&yyval.lv,&yyvsp[0].lv,myynest,yyvsp[-1].i,&(yyvsp[0].lv.req_packhdl->idroot)))
     3103          ;}
     3104    break;
     3105
     3106  case 99:
     3107#line 903 "grammar.y"
     3108    {
     3109            if (iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (2)].lv),myynest,(yyvsp[(1) - (2)].i),&((yyvsp[(2) - (2)].lv).req_packhdl->idroot)))
    22153110              YYERROR;
    2216           ;
    2217     break;}
    2218 case 99:
    2219 #line 906 "grammar.y"
    2220 {
    2221             if (iiDeclCommand(&yyval.lv,&yyvsp[0].lv,myynest,yyvsp[-1].i,&(currRing->idroot), TRUE)) YYERROR;
    2222           ;
    2223     break;}
    2224 case 100:
    2225 #line 910 "grammar.y"
    2226 {
    2227             if (iiDeclCommand(&yyval.lv,&yyvsp[0].lv,myynest,yyvsp[-1].i,&(currRing->idroot), TRUE)) YYERROR;
    2228           ;
    2229     break;}
    2230 case 101:
    2231 #line 914 "grammar.y"
    2232 {
    2233             if (iiDeclCommand(&yyval.lv,&yyvsp[-6].lv,myynest,yyvsp[-7].i,&(currRing->idroot), TRUE)) YYERROR;
    2234             int r; TESTSETINT(yyvsp[-4].lv,r);
    2235             int c; TESTSETINT(yyvsp[-1].lv,c);
     3111          ;}
     3112    break;
     3113
     3114  case 100:
     3115#line 908 "grammar.y"
     3116    {
     3117            if (iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (2)].lv),myynest,(yyvsp[(1) - (2)].i),&(currRing->idroot), TRUE)) YYERROR;
     3118          ;}
     3119    break;
     3120
     3121  case 101:
     3122#line 912 "grammar.y"
     3123    {
     3124            if (iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (2)].lv),myynest,(yyvsp[(1) - (2)].i),&(currRing->idroot), TRUE)) YYERROR;
     3125          ;}
     3126    break;
     3127
     3128  case 102:
     3129#line 916 "grammar.y"
     3130    {
     3131            if (iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (8)].lv),myynest,(yyvsp[(1) - (8)].i),&(currRing->idroot), TRUE)) YYERROR;
     3132            int r; TESTSETINT((yyvsp[(4) - (8)].lv),r);
     3133            int c; TESTSETINT((yyvsp[(7) - (8)].lv),c);
    22363134            if (r < 1)
    22373135              MYYERROR("rows must be greater than 0");
    22383136            if (c < 0)
    22393137              MYYERROR("cols must be greater than -1");
    2240             leftv v=&yyval.lv;
     3138            leftv v=&(yyval.lv);
    22413139            //while (v->next!=NULL) { v=v->next; }
    22423140            idhdl h=(idhdl)v->data;
     
    22443142            IDMATRIX(h) = mpNew(r,c);
    22453143            if (IDMATRIX(h)==NULL) YYERROR;
    2246           ;
    2247     break;}
    2248 case 102:
    2249 #line 930 "grammar.y"
    2250 {
    2251             if (iiDeclCommand(&yyval.lv,&yyvsp[0].lv,myynest,yyvsp[-1].i,&(currRing->idroot), TRUE)) YYERROR;
    2252           ;
    2253     break;}
    2254 case 103:
    2255 #line 934 "grammar.y"
    2256 {
    2257             int r; TESTSETINT(yyvsp[-4].lv,r);
    2258             int c; TESTSETINT(yyvsp[-1].lv,c);
     3144          ;}
     3145    break;
     3146
     3147  case 103:
     3148#line 932 "grammar.y"
     3149    {
     3150            if (iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (2)].lv),myynest,(yyvsp[(1) - (2)].i),&(currRing->idroot), TRUE)) YYERROR;
     3151          ;}
     3152    break;
     3153
     3154  case 104:
     3155#line 936 "grammar.y"
     3156    {
     3157            int r; TESTSETINT((yyvsp[(4) - (8)].lv),r);
     3158            int c; TESTSETINT((yyvsp[(7) - (8)].lv),c);
    22593159            if (r < 1)
    22603160              MYYERROR("rows must be greater than 0");
    22613161            if (c < 0)
    22623162              MYYERROR("cols must be greater than -1");
    2263             if (iiDeclCommand(&yyval.lv,&yyvsp[-6].lv,myynest,yyvsp[-7].i,&(yyvsp[-6].lv.req_packhdl->idroot)))
     3163            if (iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (8)].lv),myynest,(yyvsp[(1) - (8)].i),&((yyvsp[(2) - (8)].lv).req_packhdl->idroot)))
    22643164              YYERROR;
    2265             leftv v=&yyval.lv;
     3165            leftv v=&(yyval.lv);
    22663166            idhdl h=(idhdl)v->data;
    22673167            delete IDINTVEC(h);
    22683168            IDINTVEC(h) = new intvec(r,c,0);
    22693169            if (IDINTVEC(h)==NULL) YYERROR;
    2270           ;
    2271     break;}
    2272 case 104:
    2273 #line 950 "grammar.y"
    2274 {
    2275             if (iiDeclCommand(&yyval.lv,&yyvsp[0].lv,myynest,yyvsp[-1].i,&(yyvsp[0].lv.req_packhdl->idroot)))
     3170          ;}
     3171    break;
     3172
     3173  case 105:
     3174#line 952 "grammar.y"
     3175    {
     3176            if (iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (2)].lv),myynest,(yyvsp[(1) - (2)].i),&((yyvsp[(2) - (2)].lv).req_packhdl->idroot)))
    22763177              YYERROR;
    2277             leftv v=&yyval.lv;
     3178            leftv v=&(yyval.lv);
    22783179            idhdl h;
    22793180            do
     
    22843185               v=v->next;
    22853186            } while (v!=NULL);
    2286           ;
    2287     break;}
    2288 case 105:
    2289 #line 964 "grammar.y"
    2290 {
    2291             int t=yyvsp[-2].lv.Typ();
     3187          ;}
     3188    break;
     3189
     3190  case 106:
     3191#line 966 "grammar.y"
     3192    {
     3193            int t=(yyvsp[(1) - (3)].lv).Typ();
    22923194            sleftv r;
    22933195            memset(&r,0,sizeof(sleftv));
    22943196            if ((BEGIN_RING<t) && (t<END_RING))
    22953197            {
    2296               if (iiDeclCommand(&r,&yyvsp[0].lv,myynest,t,&(currRing->idroot), TRUE))
     3198              if (iiDeclCommand(&r,&(yyvsp[(3) - (3)].lv),myynest,t,&(currRing->idroot), TRUE))
    22973199                YYERROR;
    22983200            }
    22993201            else
    23003202            {
    2301               if (iiDeclCommand(&r,&yyvsp[0].lv,myynest,t,&(yyvsp[0].lv.req_packhdl->idroot)))
     3203              if (iiDeclCommand(&r,&(yyvsp[(3) - (3)].lv),myynest,t,&((yyvsp[(3) - (3)].lv).req_packhdl->idroot)))
    23023204                YYERROR;
    23033205            }
    2304             leftv v=&yyvsp[-2].lv;
     3206            leftv v=&(yyvsp[(1) - (3)].lv);
    23053207            while (v->next!=NULL) v=v->next;
    23063208            v->next=(leftv)omAllocBin(sleftv_bin);
    23073209            memcpy(v->next,&r,sizeof(sleftv));
    2308             yyval.lv=yyvsp[-2].lv;
    2309           ;
    2310     break;}
    2311 case 106:
    2312 #line 985 "grammar.y"
    2313 {
    2314             if (iiDeclCommand(&yyval.lv,&yyvsp[0].lv,myynest,yyvsp[-1].i,&(yyvsp[0].lv.req_packhdl->idroot)))
     3210            (yyval.lv)=(yyvsp[(1) - (3)].lv);
     3211          ;}
     3212    break;
     3213
     3214  case 107:
     3215#line 987 "grammar.y"
     3216    {
     3217            if (iiDeclCommand(&(yyval.lv),&(yyvsp[(2) - (2)].lv),myynest,(yyvsp[(1) - (2)].i),&((yyvsp[(2) - (2)].lv).req_packhdl->idroot)))
    23153218              YYERROR;
    2316           ;
    2317     break;}
    2318 case 109:
    2319 #line 998 "grammar.y"
    2320 {
    2321             leftv v = &yyvsp[-3].lv;
     3219          ;}
     3220    break;
     3221
     3222  case 110:
     3223#line 1000 "grammar.y"
     3224    {
     3225            leftv v = &(yyvsp[(2) - (5)].lv);
    23223226            while (v->next!=NULL)
    23233227            {
     
    23253229            }
    23263230            v->next = (leftv)omAllocBin(sleftv_bin);
    2327             memcpy(v->next,&(yyvsp[-1].lv),sizeof(sleftv));
    2328             yyval.lv = yyvsp[-3].lv;
    2329           ;
    2330     break;}
    2331 case 110:
    2332 #line 1012 "grammar.y"
    2333 {
     3231            memcpy(v->next,&((yyvsp[(4) - (5)].lv)),sizeof(sleftv));
     3232            (yyval.lv) = (yyvsp[(2) - (5)].lv);
     3233          ;}
     3234    break;
     3235
     3236  case 111:
     3237#line 1014 "grammar.y"
     3238    {
    23343239          // let rInit take care of any errors
    2335           yyval.i=rOrderName(yyvsp[0].name);
    2336         ;
    2337     break;}
    2338 case 111:
    2339 #line 1020 "grammar.y"
    2340 {
    2341             memset(&yyval.lv,0,sizeof(yyval.lv));
     3240          (yyval.i)=rOrderName((yyvsp[(1) - (1)].name));
     3241        ;}
     3242    break;
     3243
     3244  case 112:
     3245#line 1022 "grammar.y"
     3246    {
     3247            memset(&(yyval.lv),0,sizeof((yyval.lv)));
    23423248            intvec *iv = new intvec(2);
    23433249            (*iv)[0] = 1;
    2344             (*iv)[1] = yyvsp[0].i;
    2345             yyval.lv.rtyp = INTVEC_CMD;
    2346             yyval.lv.data = (void *)iv;
    2347           ;
    2348     break;}
    2349 case 112:
    2350 #line 1029 "grammar.y"
    2351 {
    2352             memset(&yyval.lv,0,sizeof(yyval.lv));
    2353             leftv sl = &yyvsp[-1].lv;
     3250            (*iv)[1] = (yyvsp[(1) - (1)].i);
     3251            (yyval.lv).rtyp = INTVEC_CMD;
     3252            (yyval.lv).data = (void *)iv;
     3253          ;}
     3254    break;
     3255
     3256  case 113:
     3257#line 1031 "grammar.y"
     3258    {
     3259            memset(&(yyval.lv),0,sizeof((yyval.lv)));
     3260            leftv sl = &(yyvsp[(3) - (4)].lv);
    23543261            int slLength;
    23553262            {
     
    23583265              intvec *iv = new intvec(l);
    23593266              (*iv)[0] = slLength;
    2360               (*iv)[1] = yyvsp[-3].i;
     3267              (*iv)[1] = (yyvsp[(1) - (4)].i);
    23613268
    23623269              int i = 2;
     
    23803287                {
    23813288                  delete iv;
    2382                   yyvsp[-1].lv.CleanUp();
     3289                  (yyvsp[(3) - (4)].lv).CleanUp();
    23833290                  MYYERROR("wrong type in ordering");
    23843291                }
    23853292                sl = sl->next;
    23863293              }
    2387               yyval.lv.rtyp = INTVEC_CMD;
    2388               yyval.lv.data = (void *)iv;
     3294              (yyval.lv).rtyp = INTVEC_CMD;
     3295              (yyval.lv).data = (void *)iv;
    23893296            }
    2390             yyvsp[-1].lv.CleanUp();
    2391           ;
    2392     break;}
    2393 case 114:
    2394 #line 1075 "grammar.y"
    2395 {
    2396             yyval.lv = yyvsp[-2].lv;
    2397             yyval.lv.next = (sleftv *)omAllocBin(sleftv_bin);
    2398             memcpy(yyval.lv.next,&yyvsp[0].lv,sizeof(sleftv));
    2399           ;
    2400     break;}
    2401 case 116:
    2402 #line 1085 "grammar.y"
    2403 {
    2404             yyval.lv = yyvsp[-1].lv;
    2405           ;
    2406     break;}
    2407 case 117:
    2408 #line 1091 "grammar.y"
    2409 {
     3297            (yyvsp[(3) - (4)].lv).CleanUp();
     3298          ;}
     3299    break;
     3300
     3301  case 115:
     3302#line 1077 "grammar.y"
     3303    {
     3304            (yyval.lv) = (yyvsp[(1) - (3)].lv);
     3305            (yyval.lv).next = (sleftv *)omAllocBin(sleftv_bin);
     3306            memcpy((yyval.lv).next,&(yyvsp[(3) - (3)].lv),sizeof(sleftv));
     3307          ;}
     3308    break;
     3309
     3310  case 117:
     3311#line 1087 "grammar.y"
     3312    {
     3313            (yyval.lv) = (yyvsp[(2) - (3)].lv);
     3314          ;}
     3315    break;
     3316
     3317  case 118:
     3318#line 1093 "grammar.y"
     3319    {
    24103320            expected_parms = TRUE;
    2411           ;
    2412     break;}
    2413 case 118:
    2414 #line 1103 "grammar.y"
    2415 { if (yyvsp[-1].i != '<') YYERROR;
    2416             if((feFilePending=feFopen(yyvsp[0].name,"r",NULL,TRUE))==NULL) YYERROR; ;
    2417     break;}
    2418 case 119:
    2419 #line 1106 "grammar.y"
    2420 { newFile(yyvsp[-2].name,feFilePending); ;
    2421     break;}
    2422 case 120:
    2423 #line 1111 "grammar.y"
    2424 {
    2425             feHelp(yyvsp[-1].name);
    2426             omFree((ADDRESS)yyvsp[-1].name);
    2427           ;
    2428     break;}
    2429 case 121:
    2430 #line 1116 "grammar.y"
    2431 {
     3321          ;}
     3322    break;
     3323
     3324  case 119:
     3325#line 1105 "grammar.y"
     3326    { if ((yyvsp[(1) - (2)].i) != '<') YYERROR;
     3327            if((feFilePending=feFopen((yyvsp[(2) - (2)].name),"r",NULL,TRUE))==NULL) YYERROR; ;}
     3328    break;
     3329
     3330  case 120:
     3331#line 1108 "grammar.y"
     3332    { newFile((yyvsp[(2) - (4)].name),feFilePending); ;}
     3333    break;
     3334
     3335  case 121:
     3336#line 1113 "grammar.y"
     3337    {
     3338            feHelp((yyvsp[(2) - (3)].name));
     3339            omFree((ADDRESS)(yyvsp[(2) - (3)].name));
     3340          ;}
     3341    break;
     3342
     3343  case 122:
     3344#line 1118 "grammar.y"
     3345    {
    24323346            feHelp(NULL);
    2433           ;
    2434     break;}
    2435 case 122:
    2436 #line 1123 "grammar.y"
    2437 {
    2438             singular_example(yyvsp[-1].name);
    2439             omFree((ADDRESS)yyvsp[-1].name);
    2440           ;
    2441     break;}
    2442 case 123:
    2443 #line 1131 "grammar.y"
    2444 {
    2445           if (basePack!=yyvsp[0].lv.req_packhdl)
     3347          ;}
     3348    break;
     3349
     3350  case 123:
     3351#line 1125 "grammar.y"
     3352    {
     3353            singular_example((yyvsp[(2) - (3)].name));
     3354            omFree((ADDRESS)(yyvsp[(2) - (3)].name));
     3355          ;}
     3356    break;
     3357
     3358  case 124:
     3359#line 1133 "grammar.y"
     3360    {
     3361          if (basePack!=(yyvsp[(2) - (2)].lv).req_packhdl)
    24463362          {
    2447             if(iiExport(&yyvsp[0].lv,0,currPackHdl)) YYERROR;
     3363            if(iiExport(&(yyvsp[(2) - (2)].lv),0,currPackHdl)) YYERROR;
    24483364          }
    24493365          else
    2450             if (iiExport(&yyvsp[0].lv,0)) YYERROR;
    2451         ;
    2452     break;}
    2453 case 124:
    2454 #line 1143 "grammar.y"
    2455 {
    2456           leftv v=&yyvsp[0].lv;
     3366            if (iiExport(&(yyvsp[(2) - (2)].lv),0)) YYERROR;
     3367        ;}
     3368    break;
     3369
     3370  case 125:
     3371#line 1145 "grammar.y"
     3372    {
     3373          leftv v=&(yyvsp[(2) - (2)].lv);
    24573374          if (v->rtyp!=IDHDL)
    24583375          {
     
    24673384            killhdl((idhdl)v->data,v->req_packhdl);
    24683385          }
    2469         ;
    2470     break;}
    2471 case 125:
    2472 #line 1159 "grammar.y"
    2473 {
    2474           leftv v=&yyvsp[0].lv;
     3386        ;}
     3387    break;
     3388
     3389  case 126:
     3390#line 1161 "grammar.y"
     3391    {
     3392          leftv v=&(yyvsp[(3) - (3)].lv);
    24753393          if (v->rtyp!=IDHDL)
    24763394          {
     
    24853403            killhdl((idhdl)v->data,v->req_packhdl);
    24863404          }
    2487         ;
    2488     break;}
    2489 case 126:
    2490 #line 1178 "grammar.y"
    2491 {
    2492             list_cmd(yyvsp[-1].i,NULL,"// ",TRUE);
    2493           ;
    2494     break;}
    2495 case 127:
    2496 #line 1182 "grammar.y"
    2497 {
    2498             list_cmd(yyvsp[-1].i,NULL,"// ",TRUE);
    2499           ;
    2500     break;}
    2501 case 128:
    2502 #line 1186 "grammar.y"
    2503 {
    2504             if (yyvsp[-1].i==QRING_CMD) yyvsp[-1].i=RING_CMD;
    2505             list_cmd(yyvsp[-1].i,NULL,"// ",TRUE);
    2506           ;
    2507     break;}
    2508 case 129:
    2509 #line 1191 "grammar.y"
    2510 {
    2511             list_cmd(yyvsp[-1].i,NULL,"// ",TRUE);
    2512           ;
    2513     break;}
    2514 case 130:
    2515 #line 1195 "grammar.y"
    2516 {
     3405        ;}
     3406    break;
     3407
     3408  case 127:
     3409#line 1180 "grammar.y"
     3410    {
     3411            list_cmd((yyvsp[(3) - (4)].i),NULL,"// ",TRUE);
     3412          ;}
     3413    break;
     3414
     3415  case 128:
     3416#line 1184 "grammar.y"
     3417    {
     3418            list_cmd((yyvsp[(3) - (4)].i),NULL,"// ",TRUE);
     3419          ;}
     3420    break;
     3421
     3422  case 129:
     3423#line 1188 "grammar.y"
     3424    {
     3425            if ((yyvsp[(3) - (4)].i)==QRING_CMD) (yyvsp[(3) - (4)].i)=RING_CMD;
     3426            list_cmd((yyvsp[(3) - (4)].i),NULL,"// ",TRUE);
     3427          ;}
     3428    break;
     3429
     3430  case 130:
     3431#line 1193 "grammar.y"
     3432    {
     3433            list_cmd((yyvsp[(3) - (4)].i),NULL,"// ",TRUE);
     3434          ;}
     3435    break;
     3436
     3437  case 131:
     3438#line 1197 "grammar.y"
     3439    {
    25173440            list_cmd(RING_CMD,NULL,"// ",TRUE);
    2518           ;
    2519     break;}
    2520 case 131:
    2521 #line 1199 "grammar.y"
    2522 {
     3441          ;}
     3442    break;
     3443
     3444  case 132:
     3445#line 1201 "grammar.y"
     3446    {
    25233447            list_cmd(MATRIX_CMD,NULL,"// ",TRUE);
    2524            ;
    2525     break;}
    2526 case 132:
    2527 #line 1203 "grammar.y"
    2528 {
     3448           ;}
     3449    break;
     3450
     3451  case 133:
     3452#line 1205 "grammar.y"
     3453    {
    25293454            list_cmd(INTMAT_CMD,NULL,"// ",TRUE);
    2530           ;
    2531     break;}
    2532 case 133:
    2533 #line 1207 "grammar.y"
    2534 {
     3455          ;}
     3456    break;
     3457
     3458  case 134:
     3459#line 1209 "grammar.y"
     3460    {
    25353461            list_cmd(PROC_CMD,NULL,"// ",TRUE);
    2536           ;
    2537     break;}
    2538 case 134:
    2539 #line 1211 "grammar.y"
    2540 {
    2541             list_cmd(0,yyvsp[-1].lv.Fullname(),"// ",TRUE);
    2542             yyvsp[-1].lv.CleanUp();
    2543           ;
    2544     break;}
    2545 case 135:
    2546 #line 1216 "grammar.y"
    2547 {
    2548             if(yyvsp[-3].lv.Typ() == PACKAGE_CMD)
    2549               list_cmd(yyvsp[-1].i,NULL,"// ",TRUE);
    2550             yyvsp[-3].lv.CleanUp();
    2551           ;
    2552     break;}
    2553 case 136:
    2554 #line 1222 "grammar.y"
    2555 {
    2556             if(yyvsp[-3].lv.Typ() == PACKAGE_CMD)
    2557               list_cmd(yyvsp[-1].i,NULL,"// ",TRUE);
    2558             yyvsp[-3].lv.CleanUp();
    2559           ;
    2560     break;}
    2561 case 137:
    2562 #line 1228 "grammar.y"
    2563 {
    2564             if(yyvsp[-3].lv.Typ() == PACKAGE_CMD)
    2565               list_cmd(yyvsp[-1].i,NULL,"// ",TRUE);
    2566             yyvsp[-3].lv.CleanUp();
    2567           ;
    2568     break;}
    2569 case 138:
    2570 #line 1234 "grammar.y"
    2571 {
    2572             if(yyvsp[-3].lv.Typ() == PACKAGE_CMD)
    2573               list_cmd(yyvsp[-1].i,NULL,"// ",TRUE);
    2574             yyvsp[-3].lv.CleanUp();
    2575           ;
    2576     break;}
    2577 case 139:
    2578 #line 1240 "grammar.y"
    2579 {
    2580             if(yyvsp[-3].lv.Typ() == PACKAGE_CMD)
    2581               list_cmd(yyvsp[-1].i,NULL,"// ",TRUE);
    2582             yyvsp[-3].lv.CleanUp();
    2583           ;
    2584     break;}
    2585 case 140:
    2586 #line 1246 "grammar.y"
    2587 {
    2588             if(yyvsp[-3].lv.Typ() == PACKAGE_CMD)
    2589               list_cmd(yyvsp[-1].i,NULL,"// ",TRUE);
    2590             yyvsp[-3].lv.CleanUp();
    2591           ;
    2592     break;}
    2593 case 141:
    2594 #line 1252 "grammar.y"
    2595 {
    2596             if(yyvsp[-3].lv.Typ() == PACKAGE_CMD)
    2597               list_cmd(yyvsp[-1].i,NULL,"// ",TRUE);
    2598             yyvsp[-3].lv.CleanUp();
    2599           ;
    2600     break;}
    2601 case 142:
    2602 #line 1258 "grammar.y"
    2603 {
    2604             if(yyvsp[-3].lv.Typ() == PACKAGE_CMD)
    2605               list_cmd(yyvsp[-1].i,NULL,"// ",TRUE);
    2606             yyvsp[-3].lv.CleanUp();
    2607           ;
    2608     break;}
    2609 case 143:
    2610 #line 1270 "grammar.y"
    2611 {
     3462          ;}
     3463    break;
     3464
     3465  case 135:
     3466#line 1213 "grammar.y"
     3467    {
     3468            list_cmd(0,(yyvsp[(3) - (4)].lv).Fullname(),"// ",TRUE);
     3469            (yyvsp[(3) - (4)].lv).CleanUp();
     3470          ;}
     3471    break;
     3472
     3473  case 136:
     3474#line 1218 "grammar.y"
     3475    {
     3476            if((yyvsp[(3) - (6)].lv).Typ() == PACKAGE_CMD)
     3477              list_cmd((yyvsp[(5) - (6)].i),NULL,"// ",TRUE);
     3478            (yyvsp[(3) - (6)].lv).CleanUp();
     3479          ;}
     3480    break;
     3481
     3482  case 137:
     3483#line 1224 "grammar.y"
     3484    {
     3485            if((yyvsp[(3) - (6)].lv).Typ() == PACKAGE_CMD)
     3486              list_cmd((yyvsp[(5) - (6)].i),NULL,"// ",TRUE);
     3487            (yyvsp[(3) - (6)].lv).CleanUp();
     3488          ;}
     3489    break;
     3490
     3491  case 138:
     3492#line 1230 "grammar.y"
     3493    {
     3494            if((yyvsp[(3) - (6)].lv).Typ() == PACKAGE_CMD)
     3495              list_cmd((yyvsp[(5) - (6)].i),NULL,"// ",TRUE);
     3496            (yyvsp[(3) - (6)].lv).CleanUp();
     3497          ;}
     3498    break;
     3499
     3500  case 139:
     3501#line 1236 "grammar.y"
     3502    {
     3503            if((yyvsp[(3) - (6)].lv).Typ() == PACKAGE_CMD)
     3504              list_cmd((yyvsp[(5) - (6)].i),NULL,"// ",TRUE);
     3505            (yyvsp[(3) - (6)].lv).CleanUp();
     3506          ;}
     3507    break;
     3508
     3509  case 140:
     3510#line 1242 "grammar.y"
     3511    {
     3512            if((yyvsp[(3) - (6)].lv).Typ() == PACKAGE_CMD)
     3513              list_cmd((yyvsp[(5) - (6)].i),NULL,"// ",TRUE);
     3514            (yyvsp[(3) - (6)].lv).CleanUp();
     3515          ;}
     3516    break;
     3517
     3518  case 141:
     3519#line 1248 "grammar.y"
     3520    {
     3521            if((yyvsp[(3) - (6)].lv).Typ() == PACKAGE_CMD)
     3522              list_cmd((yyvsp[(5) - (6)].i),NULL,"// ",TRUE);
     3523            (yyvsp[(3) - (6)].lv).CleanUp();
     3524          ;}
     3525    break;
     3526
     3527  case 142:
     3528#line 1254 "grammar.y"
     3529    {
     3530            if((yyvsp[(3) - (6)].lv).Typ() == PACKAGE_CMD)
     3531              list_cmd((yyvsp[(5) - (6)].i),NULL,"// ",TRUE);
     3532            (yyvsp[(3) - (6)].lv).CleanUp();
     3533          ;}
     3534    break;
     3535
     3536  case 143:
     3537#line 1260 "grammar.y"
     3538    {
     3539            if((yyvsp[(3) - (6)].lv).Typ() == PACKAGE_CMD)
     3540              list_cmd((yyvsp[(5) - (6)].i),NULL,"// ",TRUE);
     3541            (yyvsp[(3) - (6)].lv).CleanUp();
     3542          ;}
     3543    break;
     3544
     3545  case 144:
     3546#line 1272 "grammar.y"
     3547    {
    26123548            list_cmd(-1,NULL,"// ",TRUE);
    2613           ;
    2614     break;}
    2615 case 144:
    2616 #line 1276 "grammar.y"
    2617 { yyInRingConstruction = TRUE; ;
    2618     break;}
    2619 case 145:
    2620 #line 1285 "grammar.y"
    2621 {
    2622             const char *ring_name = yyvsp[-6].lv.name;
     3549          ;}
     3550    break;
     3551
     3552  case 145:
     3553#line 1278 "grammar.y"
     3554    { yyInRingConstruction = TRUE; ;}
     3555    break;
     3556
     3557  case 146:
     3558#line 1287 "grammar.y"
     3559    {
     3560            const char *ring_name = (yyvsp[(2) - (8)].lv).name;
    26233561            ring b=
    2624             rInit(&yyvsp[-4].lv,            /* characteristik and list of parameters*/
    2625                   &yyvsp[-2].lv,            /* names of ringvariables */
    2626                   &yyvsp[0].lv);            /* ordering */
     3562            rInit(&(yyvsp[(4) - (8)].lv),            /* characteristik and list of parameters*/
     3563                  &(yyvsp[(6) - (8)].lv),            /* names of ringvariables */
     3564                  &(yyvsp[(8) - (8)].lv));            /* ordering */
    26273565            idhdl newRingHdl=NULL;
    26283566
     
    26303568            {
    26313569                newRingHdl=enterid(ring_name, myynest, RING_CMD,
    2632                                    &(yyvsp[-6].lv.req_packhdl->idroot));
    2633               yyvsp[-6].lv.CleanUp();
     3570                                   &((yyvsp[(2) - (8)].lv).req_packhdl->idroot));
     3571              (yyvsp[(2) - (8)].lv).CleanUp();
    26343572              if (newRingHdl!=NULL)
    26353573              {
     
    26513589              rSetHdl(newRingHdl);
    26523590            }
    2653           ;
    2654     break;}
    2655 case 146:
    2656 #line 1319 "grammar.y"
    2657 {
    2658             const char *ring_name = yyvsp[0].lv.name;
     3591          ;}
     3592    break;
     3593
     3594  case 147:
     3595#line 1321 "grammar.y"
     3596    {
     3597            const char *ring_name = (yyvsp[(2) - (2)].lv).name;
    26593598            if (!inerror) rDefault(ring_name);
    26603599            yyInRingConstruction = FALSE;
    2661             yyvsp[0].lv.CleanUp();
    2662           ;
    2663     break;}
    2664 case 147:
    2665 #line 1329 "grammar.y"
    2666 {
    2667             if ((yyvsp[-1].i!=LIB_CMD)||(iiLibCmd(yyvsp[0].name,TRUE,TRUE,TRUE)))
     3600            (yyvsp[(2) - (2)].lv).CleanUp();
     3601          ;}
     3602    break;
     3603
     3604  case 148:
     3605#line 1331 "grammar.y"
     3606    {
     3607            if (((yyvsp[(1) - (2)].i)!=LIB_CMD)||(iiLibCmd((yyvsp[(2) - (2)].name),TRUE,TRUE,TRUE)))
    26683608            //if ($1==LIB_CMD)
    26693609            //{