/[svn]/linuxsampler/trunk/src/network/lscpparser.cpp
ViewVC logotype

Diff of /linuxsampler/trunk/src/network/lscpparser.cpp

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 778 by iliev, Fri Sep 23 06:58:26 2005 UTC revision 1005 by schoenebeck, Fri Dec 29 20:06:14 2006 UTC
# Line 1  Line 1 
1  /* A Bison parser, made by GNU Bison 2.0.  */  /* A Bison parser, made by GNU Bison 2.3.  */
2    
3  /* Skeleton parser for Yacc-like parsing with Bison,  /* Skeleton implementation for Bison's Yacc-like parsers in C
4     Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.  
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     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     it under the terms of the GNU General Public License as published by
# Line 15  Line 17 
17    
18     You should have received a copy of the GNU General Public License     You should have received a copy of the GNU General Public License
19     along with this program; if not, write to the Free Software     along with this program; if not, write to the Free Software
20     Foundation, Inc., 59 Temple Place - Suite 330,     Foundation, Inc., 51 Franklin Street, Fifth Floor,
21     Boston, MA 02111-1307, USA.  */     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  /* As a special exception, when this file is copied by Bison into a     This special exception was added by the Free Software Foundation in
34     Bison output file, you may use that output file without restriction.     version 2.2 of Bison.  */
    This special exception was added by the Free Software Foundation  
    in version 1.24 of Bison.  */  
35    
36  /* Written by Richard Stallman by simplifying the original so called  /* C LALR(1) parser skeleton written by Richard Stallman, by
37     ``semantic'' parser.  */     simplifying the original so-called "semantic" parser.  */
38    
39  /* All symbols defined below should begin with yy or YY, to avoid  /* 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     infringing on user name space.  This should be done even for local
# Line 36  Line 46 
46  /* Identify Bison output.  */  /* Identify Bison output.  */
47  #define YYBISON 1  #define YYBISON 1
48    
49    /* Bison version.  */
50    #define YYBISON_VERSION "2.3"
51    
52  /* Skeleton name.  */  /* Skeleton name.  */
53  #define YYSKELETON_NAME "yacc.c"  #define YYSKELETON_NAME "yacc.c"
54    
# Line 50  Line 63 
63    
64    
65    
66    
67  /* Copy the first part of user declarations.  */  /* Copy the first part of user declarations.  */
68  #line 27 "lscp.y"  #line 31 "lscp.y"
69    
70    
71  #include "lscpparser.h"  #include "lscpparser.h"
# Line 104  int yylex(YYSTYPE* yylval) { Line 118  int yylex(YYSTYPE* yylval) {
118  # define YYERROR_VERBOSE 0  # define YYERROR_VERBOSE 0
119  #endif  #endif
120    
121  #if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)  /* Enabling the token table.  */
122    #ifndef YYTOKEN_TABLE
123    # define YYTOKEN_TABLE 0
124    #endif
125    
126    #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
127  typedef int YYSTYPE;  typedef int YYSTYPE;
128  # define yystype YYSTYPE /* obsolescent; will be withdrawn */  # define yystype YYSTYPE /* obsolescent; will be withdrawn */
129  # define YYSTYPE_IS_DECLARED 1  # define YYSTYPE_IS_DECLARED 1
# Line 116  typedef int YYSTYPE; Line 135  typedef int YYSTYPE;
135  /* Copy the second part of user declarations.  */  /* Copy the second part of user declarations.  */
136    
137    
138  /* Line 213 of yacc.c.  */  /* Line 216 of yacc.c.  */
139  #line 121 "y.tab.c"  #line 140 "y.tab.c"
140    
141    #ifdef short
142    # undef short
143    #endif
144    
145    #ifdef YYTYPE_UINT8
146    typedef YYTYPE_UINT8 yytype_uint8;
147    #else
148    typedef unsigned char yytype_uint8;
149    #endif
150    
151    #ifdef YYTYPE_INT8
152    typedef YYTYPE_INT8 yytype_int8;
153    #elif (defined __STDC__ || defined __C99__FUNC__ \
154         || defined __cplusplus || defined _MSC_VER)
155    typedef signed char yytype_int8;
156    #else
157    typedef short int yytype_int8;
158    #endif
159    
160    #ifdef YYTYPE_UINT16
161    typedef YYTYPE_UINT16 yytype_uint16;
162    #else
163    typedef unsigned short int yytype_uint16;
164    #endif
165    
166    #ifdef YYTYPE_INT16
167    typedef YYTYPE_INT16 yytype_int16;
168    #else
169    typedef short int yytype_int16;
170    #endif
171    
172    #ifndef YYSIZE_T
173    # ifdef __SIZE_TYPE__
174    #  define YYSIZE_T __SIZE_TYPE__
175    # elif defined size_t
176    #  define YYSIZE_T size_t
177    # elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \
178         || defined __cplusplus || defined _MSC_VER)
179    #  include <stddef.h> /* INFRINGES ON USER NAME SPACE */
180    #  define YYSIZE_T size_t
181    # else
182    #  define YYSIZE_T unsigned int
183    # endif
184    #endif
185    
186  #if ! defined (yyoverflow) || YYERROR_VERBOSE  #define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
187    
188  # ifndef YYFREE  #ifndef YY_
189  #  define YYFREE free  # if YYENABLE_NLS
190    #  if ENABLE_NLS
191    #   include <libintl.h> /* INFRINGES ON USER NAME SPACE */
192    #   define YY_(msgid) dgettext ("bison-runtime", msgid)
193    #  endif
194  # endif  # endif
195  # ifndef YYMALLOC  # ifndef YY_
196  #  define YYMALLOC malloc  #  define YY_(msgid) msgid
197  # endif  # endif
198    #endif
199    
200    /* Suppress unused-variable warnings by "using" E.  */
201    #if ! defined lint || defined __GNUC__
202    # define YYUSE(e) ((void) (e))
203    #else
204    # define YYUSE(e) /* empty */
205    #endif
206    
207    /* Identity function, used to suppress warnings about constant conditions.  */
208    #ifndef lint
209    # define YYID(n) (n)
210    #else
211    #if (defined __STDC__ || defined __C99__FUNC__ \
212         || defined __cplusplus || defined _MSC_VER)
213    static int
214    YYID (int i)
215    #else
216    static int
217    YYID (i)
218        int i;
219    #endif
220    {
221      return i;
222    }
223    #endif
224    
225    #if ! defined yyoverflow || YYERROR_VERBOSE
226    
227  /* The parser invokes alloca or malloc; define the necessary symbols.  */  /* The parser invokes alloca or malloc; define the necessary symbols.  */
228    
# Line 134  typedef int YYSTYPE; Line 230  typedef int YYSTYPE;
230  #  if YYSTACK_USE_ALLOCA  #  if YYSTACK_USE_ALLOCA
231  #   ifdef __GNUC__  #   ifdef __GNUC__
232  #    define YYSTACK_ALLOC __builtin_alloca  #    define YYSTACK_ALLOC __builtin_alloca
233    #   elif defined __BUILTIN_VA_ARG_INCR
234    #    include <alloca.h> /* INFRINGES ON USER NAME SPACE */
235    #   elif defined _AIX
236    #    define YYSTACK_ALLOC __alloca
237    #   elif defined _MSC_VER
238    #    include <malloc.h> /* INFRINGES ON USER NAME SPACE */
239    #    define alloca _alloca
240  #   else  #   else
241  #    define YYSTACK_ALLOC alloca  #    define YYSTACK_ALLOC alloca
242    #    if ! defined _ALLOCA_H && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
243         || defined __cplusplus || defined _MSC_VER)
244    #     include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
245    #     ifndef _STDLIB_H
246    #      define _STDLIB_H 1
247    #     endif
248    #    endif
249  #   endif  #   endif
250  #  endif  #  endif
251  # endif  # endif
252    
253  # ifdef YYSTACK_ALLOC  # ifdef YYSTACK_ALLOC
254     /* Pacify GCC's `empty if-body' warning. */     /* Pacify GCC's `empty if-body' warning.  */
255  #  define YYSTACK_FREE(Ptr) do { /* empty */; } while (0)  #  define YYSTACK_FREE(Ptr) do { /* empty */; } while (YYID (0))
256  # else  #  ifndef YYSTACK_ALLOC_MAXIMUM
257  #  if defined (__STDC__) || defined (__cplusplus)      /* The OS might guarantee only one guard page at the bottom of the stack,
258  #   include <stdlib.h> /* INFRINGES ON USER NAME SPACE */         and a page size can be as small as 4096 bytes.  So we cannot safely
259  #   define YYSIZE_T size_t         invoke alloca (N) if N exceeds 4096.  Use a slightly smaller number
260           to allow for a few compiler-allocated temporary stack slots.  */
261    #   define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */
262  #  endif  #  endif
263    # else
264  #  define YYSTACK_ALLOC YYMALLOC  #  define YYSTACK_ALLOC YYMALLOC
265  #  define YYSTACK_FREE YYFREE  #  define YYSTACK_FREE YYFREE
266    #  ifndef YYSTACK_ALLOC_MAXIMUM
267    #   define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
268    #  endif
269    #  if (defined __cplusplus && ! defined _STDLIB_H \
270           && ! ((defined YYMALLOC || defined malloc) \
271                 && (defined YYFREE || defined free)))
272    #   include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
273    #   ifndef _STDLIB_H
274    #    define _STDLIB_H 1
275    #   endif
276    #  endif
277    #  ifndef YYMALLOC
278    #   define YYMALLOC malloc
279    #   if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
280         || defined __cplusplus || defined _MSC_VER)
281    void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
282    #   endif
283    #  endif
284    #  ifndef YYFREE
285    #   define YYFREE free
286    #   if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
287         || defined __cplusplus || defined _MSC_VER)
288    void free (void *); /* INFRINGES ON USER NAME SPACE */
289    #   endif
290    #  endif
291  # endif  # endif
292  #endif /* ! defined (yyoverflow) || YYERROR_VERBOSE */  #endif /* ! defined yyoverflow || YYERROR_VERBOSE */
293    
294    
295  #if (! defined (yyoverflow) \  #if (! defined yyoverflow \
296       && (! defined (__cplusplus) \       && (! defined __cplusplus \
297           || (defined (YYSTYPE_IS_TRIVIAL) && YYSTYPE_IS_TRIVIAL)))           || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
298    
299  /* A type that is properly aligned for any stack member.  */  /* A type that is properly aligned for any stack member.  */
300  union yyalloc  union yyalloc
301  {  {
302    short int yyss;    yytype_int16 yyss;
303    YYSTYPE yyvs;    YYSTYPE yyvs;
304    };    };
305    
# Line 171  union yyalloc Line 309  union yyalloc
309  /* The size of an array large to enough to hold all stacks, each with  /* The size of an array large to enough to hold all stacks, each with
310     N elements.  */     N elements.  */
311  # define YYSTACK_BYTES(N) \  # define YYSTACK_BYTES(N) \
312       ((N) * (sizeof (short int) + sizeof (YYSTYPE))                     \       ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \
313        + YYSTACK_GAP_MAXIMUM)        + YYSTACK_GAP_MAXIMUM)
314    
315  /* Copy COUNT objects from FROM to TO.  The source and destination do  /* Copy COUNT objects from FROM to TO.  The source and destination do
316     not overlap.  */     not overlap.  */
317  # ifndef YYCOPY  # ifndef YYCOPY
318  #  if defined (__GNUC__) && 1 < __GNUC__  #  if defined __GNUC__ && 1 < __GNUC__
319  #   define YYCOPY(To, From, Count) \  #   define YYCOPY(To, From, Count) \
320        __builtin_memcpy (To, From, (Count) * sizeof (*(From)))        __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
321  #  else  #  else
322  #   define YYCOPY(To, From, Count)              \  #   define YYCOPY(To, From, Count)              \
323        do                                        \        do                                        \
324          {                                       \          {                                       \
325            register YYSIZE_T yyi;                \            YYSIZE_T yyi;                         \
326            for (yyi = 0; yyi < (Count); yyi++)   \            for (yyi = 0; yyi < (Count); yyi++)   \
327              (To)[yyi] = (From)[yyi];            \              (To)[yyi] = (From)[yyi];            \
328          }                                       \          }                                       \
329        while (0)        while (YYID (0))
330  #  endif  #  endif
331  # endif  # endif
332    
# Line 206  union yyalloc Line 344  union yyalloc
344          yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \          yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
345          yyptr += yynewbytes / sizeof (*yyptr);                          \          yyptr += yynewbytes / sizeof (*yyptr);                          \
346        }                                                                 \        }                                                                 \
347      while (0)      while (YYID (0))
348    
349  #endif  #endif
350    
351  #if defined (__STDC__) || defined (__cplusplus)  /* YYFINAL -- State number of the termination state.  */
352     typedef signed char yysigned_char;  #define YYFINAL  46
 #else  
    typedef short int yysigned_char;  
 #endif  
   
 /* YYFINAL -- State number of the termination state. */  
 #define YYFINAL  40  
353  /* YYLAST -- Last index in YYTABLE.  */  /* YYLAST -- Last index in YYTABLE.  */
354  #define YYLAST   4527  #define YYLAST   4418
355    
356  /* YYNTOKENS -- Number of terminals. */  /* YYNTOKENS -- Number of terminals.  */
357  #define YYNTOKENS  227  #define YYNTOKENS  227
358  /* YYNNTS -- Number of nonterminals. */  /* YYNNTS -- Number of nonterminals.  */
359  #define YYNNTS  99  #define YYNNTS  137
360  /* YYNRULES -- Number of rules. */  /* YYNRULES -- Number of rules.  */
361  #define YYNRULES  437  #define YYNRULES  524
362  /* YYNRULES -- Number of states. */  /* YYNRULES -- Number of states.  */
363  #define YYNSTATES  1240  #define YYNSTATES  1634
364    
365  /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX.  */  /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX.  */
366  #define YYUNDEFTOK  2  #define YYUNDEFTOK  2
367  #define YYMAXUTOK   257  #define YYMAXUTOK   257
368    
369  #define YYTRANSLATE(YYX)                                                \  #define YYTRANSLATE(YYX)                                                \
370    ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)    ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
371    
372  /* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX.  */  /* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX.  */
373  static const unsigned char yytranslate[] =  static const yytype_uint8 yytranslate[] =
374  {  {
375         0,     2,     2,     2,     2,     2,     2,     2,     2,     2,         0,     2,     2,     2,     2,     2,     2,     2,     2,     2,
376       225,     2,     2,   226,     2,     2,     2,     2,     2,     2,       225,     2,     2,   226,     2,     2,     2,     2,     2,     2,
377         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
378         2,     2,   224,    73,     7,     3,    74,    75,    76,     6,         2,     2,   224,    71,   223,     3,    72,    73,    74,   222,
379        77,    78,    79,     9,     5,    10,     8,    80,    11,    12,        75,    76,    77,     7,     5,     8,     6,    78,     9,    10,
380        13,    14,    15,    16,    17,    18,    19,    20,    81,    82,        11,    12,    13,    14,    15,    16,    17,    18,    79,    80,
381        83,     4,    84,    85,    86,    21,    22,    23,    24,    25,        81,     4,    82,    83,    84,    19,    20,    21,    22,    23,
382        26,    27,    28,    29,    30,    31,    32,    33,    34,    35,        24,    25,    26,    27,    28,    29,    30,    31,    32,    33,
383        36,    37,    38,    39,    40,    41,    42,    43,    44,    45,        34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
384        46,    87,    88,    89,    90,    91,     2,    47,    48,    49,        44,    85,    86,    87,    88,    89,     2,    45,    46,    47,
385        50,    51,    52,    53,    54,    55,    56,    57,    58,    59,        48,    49,    50,    51,    52,    53,    54,    55,    56,    57,
386        60,    61,    62,    63,    64,    65,    66,    67,    68,    69,        58,    59,    60,    61,    62,    63,    64,    65,    66,    67,
387        70,    71,    72,    92,    93,    94,    95,     2,    96,    97,        68,    69,    70,    90,    91,    92,    93,     2,    94,    95,
388        98,    99,   100,   101,   102,   103,   104,   105,   106,   107,        96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
389       108,   109,   110,   111,   112,   113,   114,   115,   116,   117,       106,   107,   108,   109,   110,   111,   112,   113,   114,   115,
390       118,   119,   120,   121,   122,   123,   124,   125,   126,   127,       116,   117,   118,   119,   120,   121,   122,   123,   124,   125,
391       128,   129,   130,   131,   132,   133,   134,   135,   136,   137,       126,   127,   128,   129,   130,   131,   132,   133,   134,   135,
392       138,   139,   140,   141,   142,   143,   144,   145,   146,   147,       136,   137,   138,   139,   140,   141,   142,   143,   144,   145,
393       148,   149,   150,   151,   152,   153,   154,   155,   156,   157,       146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
394       158,   159,   160,   161,   162,   163,   164,   165,   166,   167,       156,   157,   158,   159,   160,   161,   162,   163,   164,   165,
395       168,   169,   170,   171,   172,   173,   174,   175,   176,   177,       166,   167,   168,   169,   170,   171,   172,   173,   174,   175,
396       178,   179,   180,   181,   182,   183,   184,   185,   186,   187,       176,   177,   178,   179,   180,   181,   182,   183,   184,   185,
397       188,   189,   190,   191,   192,   193,   194,   195,   196,   197,       186,   187,   188,   189,   190,   191,   192,   193,   194,   195,
398       198,   199,   200,   201,   202,   203,   204,   205,   206,   207,       196,   197,   198,   199,   200,   201,   202,   203,   204,   205,
399       208,   209,   210,   211,   212,   213,   214,   215,   216,   217,       206,   207,   208,   209,   210,   211,   212,   213,   214,   215,
400       218,   219,   220,   221,   222,   223,     1,     2       216,   217,   218,   219,   220,   221,     1,     2
401  };  };
402    
403  #if YYDEBUG  #if YYDEBUG
404  /* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in  /* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in
405     YYRHS.  */     YYRHS.  */
406  static const unsigned short int yyprhs[] =  static const yytype_uint16 yyprhs[] =
407  {  {
408         0,     0,     3,     6,    10,    11,    13,    15,    17,    19,         0,     0,     3,     6,    10,    11,    13,    15,    17,    19,
409        22,    25,    28,    31,    35,    39,    43,    47,    51,    55,        22,    25,    28,    31,    35,    39,    43,    47,    51,    55,
410        61,    65,    69,    73,    77,    83,    85,    87,    89,    91,        59,    63,    67,    71,    75,    79,    83,    87,    91,    93,
411        93,    95,    97,    99,   101,   103,   105,   107,   109,   111,        95,    97,    99,   103,   105,   107,   109,   111,   113,   115,
412       113,   115,   117,   119,   125,   133,   143,   145,   151,   159,       117,   119,   121,   123,   125,   127,   129,   131,   133,   135,
413       169,   171,   173,   179,   185,   193,   203,   211,   221,   223,       137,   139,   141,   143,   145,   147,   149,   151,   153,   155,
414       229,   237,   243,   249,   255,   259,   261,   263,   271,   281,       157,   159,   161,   163,   179,   197,   215,   235,   243,   247,
415       289,   299,   303,   307,   313,   317,   323,   327,   331,   335,       251,   255,   257,   259,   265,   273,   283,   285,   291,   299,
416       339,   343,   349,   357,   363,   373,   379,   385,   391,   397,       309,   311,   313,   319,   325,   333,   343,   351,   361,   363,
417       403,   409,   415,   419,   425,   427,   429,   431,   433,   435,       369,   377,   383,   389,   395,   399,   401,   403,   407,   411,
418       437,   439,   441,   447,   455,   459,   461,   463,   465,   467,       421,   423,   429,   433,   441,   443,   451,   461,   469,   479,
419       469,   471,   473,   475,   477,   479,   481,   483,   485,   487,       483,   491,   503,   507,   511,   517,   521,   527,   531,   537,
420       491,   493,   497,   501,   503,   505,   507,   509,   511,   514,       545,   549,   553,   557,   561,   565,   571,   575,   579,   585,
421       518,   523,   528,   530,   533,   535,   537,   539,   541,   543,       593,   599,   609,   615,   621,   627,   633,   639,   645,   651,
422       545,   547,   549,   551,   553,   555,   558,   561,   564,   567,       657,   663,   669,   673,   679,   681,   683,   685,   687,   689,
423       570,   573,   576,   579,   582,   584,   586,   588,   590,   592,       691,   693,   695,   699,   703,   705,   709,   715,   723,   727,
424       594,   596,   598,   600,   602,   604,   606,   608,   610,   612,       729,   731,   733,   735,   737,   739,   741,   743,   745,   747,
425       614,   616,   618,   620,   622,   624,   626,   628,   630,   632,       749,   751,   753,   755,   757,   759,   761,   763,   765,   767,
426       634,   636,   638,   640,   642,   644,   646,   648,   650,   652,       769,   771,   773,   775,   777,   781,   783,   785,   787,   789,
427       654,   656,   658,   660,   662,   664,   666,   668,   670,   672,       791,   793,   795,   798,   802,   807,   812,   814,   817,   819,
428       674,   676,   678,   680,   682,   684,   686,   688,   690,   692,       821,   823,   825,   827,   829,   831,   833,   835,   837,   839,
429       694,   696,   698,   700,   702,   704,   706,   708,   710,   712,       842,   845,   848,   851,   854,   857,   860,   863,   866,   868,
430       714,   716,   718,   720,   722,   724,   726,   728,   730,   732,       870,   872,   874,   876,   878,   880,   882,   884,   886,   888,
431       734,   736,   738,   740,   742,   744,   746,   748,   750,   752,       890,   892,   894,   896,   898,   900,   902,   904,   906,   908,
432       754,   756,   758,   760,   762,   764,   766,   768,   770,   772,       910,   912,   914,   916,   918,   920,   922,   924,   926,   928,
433       774,   776,   778,   780,   782,   784,   786,   788,   790,   792,       930,   932,   934,   936,   938,   940,   942,   944,   946,   948,
434       794,   796,   798,   800,   802,   804,   806,   808,   810,   812,       950,   952,   954,   956,   958,   960,   962,   964,   966,   968,
435       814,   816,   818,   820,   822,   824,   826,   828,   830,   832,       970,   972,   974,   976,   978,   980,   982,   984,   986,   988,
436       834,   836,   838,   840,   842,   844,   846,   848,   850,   852,       990,   992,   994,   996,   998,  1000,  1002,  1004,  1006,  1008,
437       854,   856,   858,   860,   862,   864,   866,   868,   870,   872,      1010,  1012,  1014,  1016,  1018,  1020,  1022,  1024,  1026,  1028,
438       874,   876,   878,   880,   882,   884,   886,   888,   890,   892,      1030,  1032,  1034,  1036,  1038,  1040,  1042,  1044,  1046,  1048,
439       894,   896,   898,   900,   902,   904,   906,   908,   910,   912,      1050,  1052,  1054,  1056,  1058,  1060,  1062,  1064,  1066,  1068,
440       914,   916,   918,   920,   922,   924,   926,   928,   930,   932,      1070,  1072,  1074,  1076,  1078,  1080,  1082,  1084,  1086,  1088,
441       934,   936,   938,   940,   942,   944,   946,   948,   950,   952,      1090,  1092,  1094,  1096,  1098,  1100,  1102,  1104,  1106,  1108,
442       954,   956,   958,   960,   962,   964,   966,   968,   970,   972,      1110,  1112,  1114,  1116,  1118,  1120,  1122,  1124,  1126,  1128,
443       974,   976,   978,   980,   982,   984,   986,   988,   990,   992,      1130,  1132,  1134,  1136,  1138,  1140,  1142,  1144,  1146,  1148,
444       994,   996,   998,  1000,  1002,  1004,  1006,  1008,  1010,  1012,      1150,  1152,  1154,  1156,  1158,  1160,  1162,  1164,  1166,  1168,
445      1014,  1016,  1018,  1020,  1022,  1024,  1027,  1030,  1034,  1038,      1170,  1172,  1174,  1176,  1178,  1180,  1182,  1184,  1186,  1188,
446      1040,  1042,  1044,  1048,  1052,  1059,  1067,  1072,  1077,  1081,      1190,  1192,  1194,  1196,  1198,  1200,  1202,  1204,  1206,  1208,
447      1091,  1098,  1102,  1112,  1124,  1131,  1139,  1157,  1188,  1197,      1210,  1212,  1214,  1216,  1218,  1220,  1222,  1224,  1226,  1228,
448      1202,  1216,  1229,  1241,  1254,  1266,  1284,  1306,  1317,  1324,      1230,  1232,  1234,  1236,  1238,  1240,  1242,  1244,  1246,  1248,
449      1354,  1375,  1395,  1425,  1445,  1476,  1497,  1515,  1544,  1572,      1250,  1252,  1254,  1256,  1258,  1260,  1262,  1264,  1266,  1268,
450      1598,  1617,  1635,  1663,  1681,  1697,  1716,  1732,  1743,  1750,      1270,  1272,  1274,  1276,  1278,  1280,  1282,  1284,  1286,  1288,
451      1757,  1762,  1767,  1773,  1784,  1790,  1804,  1809      1290,  1292,  1294,  1296,  1298,  1300,  1302,  1304,  1306,  1308,
452        1311,  1314,  1318,  1322,  1324,  1326,  1328,  1332,  1336,  1340,
453        1346,  1352,  1359,  1367,  1372,  1377,  1381,  1386,  1394,  1404,
454        1411,  1415,  1425,  1437,  1444,  1452,  1470,  1501,  1510,  1515,
455        1541,  1566,  1590,  1613,  1639,  1664,  1686,  1707,  1721,  1734,
456        1746,  1759,  1771,  1789,  1811,  1822,  1829,  1839,  1854,  1865,
457        1895,  1916,  1936,  1966,  1986,  2017,  2038,  2056,  2085,  2113,
458        2139,  2158,  2176,  2204,  2220,  2237,  2257,  2278,  2296,  2312,
459        2331,  2347,  2358,  2366,  2375,  2382,  2389,  2394,  2399,  2405,
460        2416,  2422,  2436,  2441,  2446
461  };  };
462    
463  /* YYRHS -- A `-1'-separated list of the rules' RHS. */  /* YYRHS -- A `-1'-separated list of the rules' RHS.  */
464  static const short int yyrhs[] =  static const yytype_int16 yyrhs[] =
465  {  {
466       228,     0,    -1,   229,   268,    -1,   229,   269,   268,    -1,       228,     0,    -1,   229,   283,    -1,   229,   284,   283,    -1,
467        -1,   230,    -1,   231,    -1,     1,    -1,     3,    -1,   230,        -1,   230,    -1,   231,    -1,     1,    -1,     3,    -1,   230,
468         3,    -1,   230,   267,    -1,   230,   263,    -1,   230,   259,         3,    -1,   230,   282,    -1,   230,   278,    -1,   230,   274,
469        -1,   270,   267,   283,    -1,   271,   267,   234,    -1,   272,        -1,   285,   282,   232,    -1,   287,   282,   235,    -1,   288,
470       267,   236,    -1,   273,   267,   237,    -1,   274,   267,   242,       282,   236,    -1,   286,   282,   238,    -1,   290,   282,   240,
471        -1,   275,   267,   238,    -1,   278,   267,   283,   267,   252,        -1,   291,   282,   243,    -1,   292,   282,   248,    -1,   293,
472        -1,   279,   267,   235,    -1,   280,   267,   232,    -1,   281,       282,   244,    -1,   298,   282,   237,    -1,   299,   282,   239,
473       267,   233,    -1,   282,   267,   265,    -1,   322,   267,   283,        -1,   300,   282,   233,    -1,   301,   282,   234,    -1,   302,
474       267,   252,    -1,   322,    -1,   325,    -1,   288,    -1,   292,       282,   280,    -1,   359,   282,   241,    -1,   289,   282,   242,
475        -1,   291,    -1,   290,    -1,   289,    -1,   323,    -1,   293,        -1,   359,    -1,   363,    -1,   303,    -1,   344,    -1,   344,
476        -1,   288,    -1,   292,    -1,   291,    -1,   290,    -1,   289,       282,   268,    -1,   308,    -1,   309,    -1,   310,    -1,   311,
477        -1,   323,    -1,   293,    -1,   284,    -1,   305,    -1,   311,        -1,   316,    -1,   320,    -1,   319,    -1,   318,    -1,   317,
478       267,   287,   267,   259,    -1,   310,   267,   287,   267,   259,        -1,   312,    -1,   313,    -1,   314,    -1,   315,    -1,   360,
479       267,   259,    -1,   310,   267,   287,   267,   259,   267,   259,        -1,   321,    -1,   308,    -1,   309,    -1,   310,    -1,   311,
480       267,   240,    -1,   285,    -1,   301,   267,   287,   267,   259,        -1,   316,    -1,   320,    -1,   319,    -1,   318,    -1,   317,
481        -1,   300,   267,   287,   267,   259,   267,   259,    -1,   300,        -1,   312,    -1,   313,    -1,   314,    -1,   315,    -1,   360,
482       267,   287,   267,   259,   267,   259,   267,   240,    -1,   298,        -1,   321,    -1,   342,   282,   258,   282,   259,   282,   260,
483        -1,   308,    -1,   299,   267,   287,   267,   263,    -1,   309,       282,   266,   282,   267,   282,   264,   282,   262,    -1,   342,
484       267,   287,   267,   263,    -1,   312,   267,   287,   267,   263,       282,   258,   282,   259,   282,   260,   282,   266,   282,   267,
485       267,   263,    -1,   307,   267,   287,   267,   263,   267,   263,       282,   264,   282,   262,   282,   251,    -1,   342,   282,   258,
486       267,   259,    -1,   303,   267,   287,   267,   263,   267,   263,       282,   259,   282,   260,   282,   266,   282,   267,   282,   264,
487        -1,   302,   267,   287,   267,   263,   267,   263,   267,   259,       282,   262,   282,   269,    -1,   342,   282,   258,   282,   259,
488        -1,   286,    -1,   283,   267,   287,   267,   252,    -1,   283,       282,   260,   282,   266,   282,   267,   282,   264,   282,   262,
489       267,   290,   267,   241,   267,   252,    -1,   283,   267,   291,       282,   251,   282,   269,    -1,   342,   282,   258,   282,   259,
490       267,   252,    -1,   283,   267,   292,   267,   252,    -1,   296,       282,   260,    -1,   303,   282,   263,    -1,   344,   282,   258,
491       267,   287,   267,   254,    -1,   316,   267,   287,    -1,   293,        -1,   344,   282,   294,    -1,   304,    -1,   336,    -1,   346,
492        -1,   294,    -1,   297,   267,   263,   267,   259,     4,   256,       282,   307,   282,   274,    -1,   341,   282,   307,   282,   274,
493        -1,   302,   267,   263,   267,   263,   267,   259,     4,   256,       282,   274,    -1,   341,   282,   307,   282,   274,   282,   274,
494        -1,   306,   267,   263,   267,   259,     4,   256,    -1,   307,       282,   246,    -1,   305,    -1,   332,   282,   307,   282,   274,
495       267,   263,   267,   263,   267,   259,     4,   256,    -1,   283,        -1,   331,   282,   307,   282,   274,   282,   274,    -1,   331,
496       267,   239,    -1,   324,   267,   258,    -1,   299,   267,   259,       282,   307,   282,   274,   282,   274,   282,   246,    -1,   329,
497       267,   240,    -1,   299,   267,   259,    -1,   309,   267,   259,        -1,   339,    -1,   330,   282,   307,   282,   278,    -1,   340,
498       267,   240,    -1,   309,   267,   259,    -1,   299,   267,   263,       282,   307,   282,   278,    -1,   347,   282,   307,   282,   278,
499        -1,   309,   267,   263,    -1,   295,   267,   243,    -1,   296,       282,   278,    -1,   338,   282,   307,   282,   278,   282,   278,
500       267,   244,    -1,   299,   267,   252,   267,   245,    -1,   303,       282,   274,    -1,   334,   282,   307,   282,   278,   282,   278,
501       267,   252,   267,   246,   267,   246,    -1,   304,   267,   252,        -1,   333,   282,   307,   282,   278,   282,   278,   282,   274,
502       267,   247,    -1,   315,   267,   252,   267,   245,   267,   248,        -1,   306,    -1,   303,   282,   307,   282,   263,    -1,   303,
503       267,   249,    -1,   309,   267,   252,   267,   245,    -1,   312,       282,   318,   282,   247,   282,   263,    -1,   303,   282,   319,
504       267,   252,   267,   248,    -1,   313,   267,   252,   267,   249,       282,   263,    -1,   303,   282,   320,   282,   263,    -1,   324,
505        -1,   314,   267,   252,   267,   250,    -1,   317,   267,   252,       282,   307,   282,   266,    -1,   353,   282,   307,    -1,   321,
506       267,   251,    -1,   318,   267,   252,   267,   258,    -1,   319,        -1,   322,    -1,   343,   282,   258,    -1,   343,   282,   294,
507       267,   252,   267,   258,    -1,   259,     4,   256,    -1,   240,        -1,   342,   282,   307,   282,   258,   282,   259,   282,   260,
508       267,   259,     4,   256,    -1,   320,    -1,   321,    -1,   298,        -1,   345,    -1,   344,   282,   307,   282,   258,    -1,   352,
509        -1,   308,    -1,   286,    -1,   284,    -1,   305,    -1,   285,       282,   263,    -1,   351,   282,   307,   282,   263,   282,   265,
510        -1,   255,   267,   253,   267,   252,    -1,   277,   267,   255,        -1,   354,    -1,   328,   282,   278,   282,   274,     4,   271,
511       267,   253,   267,   252,    -1,   254,   267,   252,    -1,   263,        -1,   333,   282,   278,   282,   278,   282,   274,     4,   271,
512        -1,   263,    -1,   259,    -1,   263,    -1,   263,    -1,   276,        -1,   337,   282,   278,   282,   274,     4,   271,    -1,   338,
513        -1,   259,    -1,   260,    -1,   263,    -1,   263,    -1,   263,       282,   278,   282,   278,   282,   274,     4,   271,    -1,   303,
514        -1,   259,    -1,   266,    -1,   257,    -1,   256,     5,   257,       282,   245,    -1,   344,   282,   361,   282,   258,   282,   268,
515        -1,   259,    -1,     6,   259,     6,    -1,     7,   259,     7,        -1,   351,   282,   334,   282,   263,   282,   265,   282,   253,
516        -1,   263,    -1,   260,    -1,   263,    -1,   259,    -1,   264,       282,   253,    -1,   362,   282,   273,    -1,   354,   282,   262,
517        -1,   259,   264,    -1,   261,     8,   261,    -1,     9,   261,        -1,   330,   282,   274,   282,   246,    -1,   330,   282,   274,
518         8,   261,    -1,    10,   261,     8,   261,    -1,   262,    -1,        -1,   340,   282,   274,   282,   246,    -1,   340,   282,   274,
519       261,   262,    -1,    11,    -1,    12,    -1,    13,    -1,    14,        -1,   351,   282,   263,   282,   261,    -1,   351,   282,   263,
520        -1,    15,    -1,    16,    -1,    17,    -1,    18,    -1,    19,       282,   261,   282,   270,    -1,   303,   282,   263,    -1,   343,
521        -1,    20,    -1,   262,    -1,    12,   261,    -1,    13,   261,       282,   258,    -1,   343,   282,   294,    -1,   330,   282,   278,
522        -1,    14,   261,    -1,    15,   261,    -1,    16,   261,    -1,        -1,   340,   282,   278,    -1,   351,   282,   263,   282,   265,
523        17,   261,    -1,    18,   261,    -1,    19,   261,    -1,    20,        -1,   323,   282,   249,    -1,   324,   282,   250,    -1,   330,
524       261,    -1,    21,    -1,    22,    -1,    23,    -1,    24,    -1,       282,   263,   282,   252,    -1,   334,   282,   263,   282,   253,
525        25,    -1,    26,    -1,    27,    -1,    28,    -1,    29,    -1,       282,   253,    -1,   335,   282,   263,   282,   254,    -1,   350,
526        30,    -1,    31,    -1,    32,    -1,    33,    -1,    34,    -1,       282,   263,   282,   252,   282,   255,   282,   256,    -1,   340,
527        35,    -1,    36,    -1,    37,    -1,    38,    -1,    39,    -1,       282,   263,   282,   252,    -1,   347,   282,   263,   282,   255,
528        40,    -1,    41,    -1,    42,    -1,    43,    -1,    44,    -1,        -1,   348,   282,   263,   282,   256,    -1,   349,   282,   263,
529        45,    -1,    46,    -1,    47,    -1,    48,    -1,    49,    -1,       282,   257,    -1,   354,   282,   263,   282,   262,    -1,   355,
530        50,    -1,    51,    -1,    52,    -1,    53,    -1,    54,    -1,       282,   263,   282,   273,    -1,   356,   282,   263,   282,   273,
531        55,    -1,    56,    -1,    57,    -1,    58,    -1,    59,    -1,        -1,   344,   282,   263,   282,   258,    -1,   344,   282,   263,
532        60,    -1,    61,    -1,    62,    -1,    63,    -1,    64,    -1,       282,   295,    -1,   344,   282,   263,   282,   296,    -1,   274,
533        65,    -1,    66,    -1,    67,    -1,    68,    -1,    69,    -1,         4,   271,    -1,   246,   282,   274,     4,   271,    -1,   357,
534        70,    -1,    71,    -1,    72,    -1,    11,    -1,    12,    -1,        -1,   358,    -1,   329,    -1,   339,    -1,   306,    -1,   304,
535        13,    -1,    14,    -1,    15,    -1,    16,    -1,    17,    -1,        -1,   336,    -1,   305,    -1,   343,   282,   258,    -1,   343,
536        18,    -1,    19,    -1,    20,    -1,    73,    -1,     3,    -1,       282,   294,    -1,   345,    -1,   352,   282,   263,    -1,   267,
537        74,    -1,    75,    -1,    76,    -1,    77,    -1,    78,    -1,       282,   264,   282,   263,    -1,   297,   282,   267,   282,   264,
538        79,    -1,     9,    -1,    10,    -1,     8,    -1,     5,    -1,       282,   263,    -1,   266,   282,   263,    -1,   325,    -1,   326,
539        80,    -1,    81,    -1,    82,    -1,    83,    -1,     4,    -1,        -1,   327,    -1,   278,    -1,   278,    -1,   274,    -1,   278,
540        84,    -1,    85,    -1,    86,    -1,    87,    -1,    88,    -1,        -1,   278,    -1,   294,    -1,   274,    -1,   278,    -1,   278,
541        89,    -1,    90,    -1,    91,    -1,    92,    -1,    93,    -1,        -1,   278,    -1,   278,    -1,   275,    -1,   278,    -1,   278,
542        94,    -1,    95,    -1,    96,    -1,    97,    -1,    98,    -1,        -1,   278,    -1,   278,    -1,   274,    -1,   281,    -1,   281,
543        99,    -1,   100,    -1,   101,    -1,   102,    -1,   103,    -1,        -1,   281,    -1,   281,    -1,   272,    -1,   271,     5,   272,
544       104,    -1,   105,    -1,   106,    -1,   107,    -1,   108,    -1,        -1,   274,    -1,   281,    -1,   278,    -1,   275,    -1,   278,
545       109,    -1,   110,    -1,   111,    -1,   112,    -1,   113,    -1,        -1,   274,    -1,   279,    -1,   274,   279,    -1,   276,     6,
546       114,    -1,   115,    -1,   116,    -1,   117,    -1,   118,    -1,       276,    -1,     7,   276,     6,   276,    -1,     8,   276,     6,
547       119,    -1,   120,    -1,   121,    -1,   122,    -1,   123,    -1,       276,    -1,   277,    -1,   276,   277,    -1,     9,    -1,    10,
548       124,    -1,   125,    -1,   126,    -1,   127,    -1,   128,    -1,        -1,    11,    -1,    12,    -1,    13,    -1,    14,    -1,    15,
549       129,    -1,   130,    -1,   131,    -1,   132,    -1,   133,    -1,        -1,    16,    -1,    17,    -1,    18,    -1,   277,    -1,    10,
550       134,    -1,   135,    -1,   136,    -1,   137,    -1,   138,    -1,       276,    -1,    11,   276,    -1,    12,   276,    -1,    13,   276,
551       139,    -1,   140,    -1,   141,    -1,   142,    -1,   143,    -1,        -1,    14,   276,    -1,    15,   276,    -1,    16,   276,    -1,
552       144,    -1,   145,    -1,   146,    -1,   147,    -1,   148,    -1,        17,   276,    -1,    18,   276,    -1,    19,    -1,    20,    -1,
553       149,    -1,   150,    -1,   151,    -1,   152,    -1,   153,    -1,        21,    -1,    22,    -1,    23,    -1,    24,    -1,    25,    -1,
554       154,    -1,   155,    -1,   156,    -1,   157,    -1,   158,    -1,        26,    -1,    27,    -1,    28,    -1,    29,    -1,    30,    -1,
555       159,    -1,   160,    -1,   161,    -1,   162,    -1,   163,    -1,        31,    -1,    32,    -1,    33,    -1,    34,    -1,    35,    -1,
556       164,    -1,   165,    -1,   166,    -1,   167,    -1,   168,    -1,        36,    -1,    37,    -1,    38,    -1,    39,    -1,    40,    -1,
557       169,    -1,   170,    -1,   171,    -1,   172,    -1,   173,    -1,        41,    -1,    42,    -1,    43,    -1,    44,    -1,    45,    -1,
558       174,    -1,   175,    -1,   176,    -1,   177,    -1,   178,    -1,        46,    -1,    47,    -1,    48,    -1,    49,    -1,    50,    -1,
559       179,    -1,   180,    -1,   181,    -1,   182,    -1,   183,    -1,        51,    -1,    52,    -1,    53,    -1,    54,    -1,    55,    -1,
560       184,    -1,   185,    -1,   186,    -1,   187,    -1,   188,    -1,        56,    -1,    57,    -1,    58,    -1,    59,    -1,    60,    -1,
561       189,    -1,   190,    -1,   191,    -1,   192,    -1,   193,    -1,        61,    -1,    62,    -1,    63,    -1,    64,    -1,    65,    -1,
562       194,    -1,   195,    -1,   196,    -1,   197,    -1,   198,    -1,        66,    -1,    67,    -1,    68,    -1,    69,    -1,    70,    -1,
563       199,    -1,   200,    -1,   201,    -1,   202,    -1,   203,    -1,         9,    -1,    10,    -1,    11,    -1,    12,    -1,    13,    -1,
564       204,    -1,   205,    -1,   206,    -1,   207,    -1,   208,    -1,        14,    -1,    15,    -1,    16,    -1,    17,    -1,    18,    -1,
565       209,    -1,   210,    -1,   211,    -1,   212,    -1,   213,    -1,        71,    -1,     3,    -1,    72,    -1,    73,    -1,    74,    -1,
566       214,    -1,   215,    -1,   216,    -1,   217,    -1,   218,    -1,        75,    -1,    76,    -1,    77,    -1,     7,    -1,     8,    -1,
567       219,    -1,   220,    -1,   221,    -1,   222,    -1,   223,    -1,         6,    -1,     5,    -1,    78,    -1,    79,    -1,    80,    -1,
568       267,    -1,   259,    -1,   265,   267,    -1,   265,   259,    -1,        81,    -1,     4,    -1,    82,    -1,    83,    -1,    84,    -1,
569         6,   265,     6,    -1,     7,   265,     7,    -1,   224,    -1,        85,    -1,    86,    -1,    87,    -1,    88,    -1,    89,    -1,
570       225,    -1,   226,    -1,    21,    24,    24,    -1,    27,    25,        90,    -1,    91,    -1,    92,    -1,    93,    -1,    94,    -1,
571        40,    -1,    23,    38,    25,    21,    40,    25,    -1,    24,        95,    -1,    96,    -1,    97,    -1,    98,    -1,    99,    -1,
572        25,    39,    40,    38,    35,    45,    -1,    32,    29,    39,       100,    -1,   101,    -1,   102,    -1,   103,    -1,   104,    -1,
573        40,    -1,    32,    35,    21,    24,    -1,    21,    32,    32,       105,    -1,   106,    -1,   107,    -1,   108,    -1,   109,    -1,
574        -1,    34,    35,    34,    91,    33,    35,    24,    21,    32,       110,    -1,   111,    -1,   112,    -1,   113,    -1,   114,    -1,
575        -1,    38,    25,    33,    35,    42,    25,    -1,    39,    25,       115,    -1,   116,    -1,   117,    -1,   118,    -1,   119,    -1,
576        40,    -1,    39,    41,    22,    39,    23,    38,    29,    22,       120,    -1,   121,    -1,   122,    -1,   123,    -1,   124,    -1,
577        25,    -1,    41,    34,    39,    41,    22,    39,    23,    38,       125,    -1,   126,    -1,   127,    -1,   128,    -1,   129,    -1,
578        29,    22,    25,    -1,    39,    25,    32,    25,    23,    40,       130,    -1,   131,    -1,   132,    -1,   133,    -1,   134,    -1,
579        -1,    23,    28,    21,    34,    34,    25,    32,    -1,    21,       135,    -1,   136,    -1,   137,    -1,   138,    -1,   139,    -1,
580        42,    21,    29,    32,    21,    22,    32,    25,    91,    25,       140,    -1,   141,    -1,   142,    -1,   143,    -1,   144,    -1,
581        34,    27,    29,    34,    25,    39,    -1,    21,    42,    21,       145,    -1,   146,    -1,   147,    -1,   148,    -1,   149,    -1,
582        29,    32,    21,    22,    32,    25,    91,    21,    41,    24,       150,    -1,   151,    -1,   152,    -1,   153,    -1,   154,    -1,
583        29,    35,    91,    35,    41,    40,    36,    41,    40,    91,       155,    -1,   156,    -1,   157,    -1,   158,    -1,   159,    -1,
584        24,    38,    29,    42,    25,    38,    39,    -1,    23,    28,       160,    -1,   161,    -1,   162,    -1,   163,    -1,   164,    -1,
585        21,    34,    34,    25,    32,    39,    -1,    29,    34,    26,       165,    -1,   166,    -1,   167,    -1,   168,    -1,   169,    -1,
586        35,    -1,    23,    28,    21,    34,    34,    25,    32,    91,       170,    -1,   171,    -1,   172,    -1,   173,    -1,   174,    -1,
587        23,    35,    41,    34,    40,    -1,    23,    28,    21,    34,       175,    -1,   176,    -1,   177,    -1,   178,    -1,   179,    -1,
588        34,    25,    32,    91,    29,    34,    26,    35,    -1,    22,       180,    -1,   181,    -1,   182,    -1,   183,    -1,   184,    -1,
589        41,    26,    26,    25,    38,    91,    26,    29,    32,    32,       185,    -1,   186,    -1,   187,    -1,   188,    -1,   189,    -1,
590        -1,    39,    40,    38,    25,    21,    33,    91,    23,    35,       190,    -1,   191,    -1,   192,    -1,   193,    -1,   194,    -1,
591        41,    34,    40,    -1,    42,    35,    29,    23,    25,    91,       195,    -1,   196,    -1,   197,    -1,   198,    -1,   199,    -1,
592        23,    35,    41,    34,    40,    -1,    40,    35,    40,    21,       200,    -1,   201,    -1,   202,    -1,   203,    -1,   204,    -1,
593        32,    91,    42,    35,    29,    23,    25,    91,    23,    35,       205,    -1,   206,    -1,   207,    -1,   208,    -1,   209,    -1,
594        41,    34,    40,    -1,    40,    35,    40,    21,    32,    91,       210,    -1,   211,    -1,   212,    -1,   213,    -1,   214,    -1,
595        42,    35,    29,    23,    25,    91,    23,    35,    41,    34,       215,    -1,   216,    -1,   217,    -1,   218,    -1,   219,    -1,
596        40,    91,    33,    21,    44,    -1,    29,    34,    39,    40,       220,    -1,   221,    -1,   282,    -1,   274,    -1,   280,   282,
597        38,    41,    33,    25,    34,    40,    -1,    25,    34,    27,        -1,   280,   274,    -1,   222,   280,   222,    -1,   223,   280,
598        29,    34,    25,    -1,    21,    41,    24,    29,    35,    91,       223,    -1,   224,    -1,   225,    -1,   226,    -1,    19,    22,
599        35,    41,    40,    36,    41,    40,    91,    24,    25,    42,        22,    -1,    25,    23,    38,    -1,    31,    19,    34,    -1,
600        29,    23,    25,    91,    36,    21,    38,    21,    33,    25,        39,    32,    31,    19,    34,    -1,    21,    30,    23,    19,
601        40,    25,    38,    -1,    21,    41,    24,    29,    35,    91,        36,    -1,    21,    36,    23,    19,    38,    23,    -1,    22,
602        35,    41,    40,    36,    41,    40,    91,    24,    25,    42,        23,    37,    38,    36,    33,    43,    -1,    30,    27,    37,
603        29,    23,    25,    39,    -1,    21,    41,    24,    29,    35,        38,    -1,    30,    33,    19,    22,    -1,    19,    30,    30,
604        91,    35,    41,    40,    36,    41,    40,    91,    24,    25,        -1,    32,    33,    32,    23,    -1,    22,    23,    24,    19,
605        42,    29,    23,    25,    -1,    21,    41,    24,    29,    35,        39,    30,    38,    -1,    32,    33,    32,    89,    31,    33,
606        91,    35,    41,    40,    36,    41,    40,    91,    24,    38,        22,    19,    30,    -1,    36,    23,    31,    33,    40,    23,
607        29,    42,    25,    38,    91,    36,    21,    38,    21,    33,        -1,    37,    23,    38,    -1,    37,    39,    20,    37,    21,
608        25,    40,    25,    38,    -1,    21,    41,    24,    29,    35,        36,    27,    20,    23,    -1,    39,    32,    37,    39,    20,
609        91,    35,    41,    40,    36,    41,    40,    91,    24,    38,        37,    21,    36,    27,    20,    23,    -1,    37,    23,    30,
610        29,    42,    25,    38,    -1,    21,    41,    24,    29,    35,        23,    21,    38,    -1,    21,    26,    19,    32,    32,    23,
611        91,    35,    41,    40,    36,    41,    40,    91,    23,    28,        30,    -1,    19,    40,    19,    27,    30,    19,    20,    30,
612        21,    34,    34,    25,    32,    91,    36,    21,    38,    21,        23,    89,    23,    32,    25,    27,    32,    23,    37,    -1,
613        33,    25,    40,    25,    38,    -1,    21,    41,    24,    29,        19,    40,    19,    27,    30,    19,    20,    30,    23,    89,
614        35,    91,    35,    41,    40,    36,    41,    40,    91,    23,        19,    39,    22,    27,    33,    89,    33,    39,    38,    34,
615        28,    21,    34,    34,    25,    32,    -1,    21,    41,    24,        39,    38,    89,    22,    36,    27,    40,    23,    36,    37,
616        29,    35,    91,    35,    41,    40,    36,    41,    40,    91,        -1,    21,    26,    19,    32,    32,    23,    30,    37,    -1,
617        40,    45,    36,    25,    -1,    21,    42,    21,    29,    32,        27,    32,    24,    33,    -1,    19,    39,    22,    27,    33,
618        21,    22,    32,    25,    91,    33,    29,    24,    29,    91,        89,    33,    39,    38,    34,    39,    38,    89,    22,    23,
619        29,    34,    36,    41,    40,    91,    24,    38,    29,    42,        40,    27,    21,    23,    89,    21,    33,    39,    32,    38,
620        25,    38,    39,    -1,    33,    29,    24,    29,    91,    29,        -1,    19,    39,    22,    27,    33,    89,    33,    39,    38,
621        34,    36,    41,    40,    91,    24,    25,    42,    29,    23,        34,    39,    38,    89,    22,    23,    40,    27,    21,    23,
622        25,    91,    36,    21,    38,    21,    33,    25,    40,    25,        89,    27,    32,    24,    33,    -1,    31,    27,    22,    27,
623        38,    -1,    33,    29,    24,    29,    91,    29,    34,    36,        89,    27,    32,    34,    39,    38,    89,    22,    23,    40,
624        41,    40,    91,    36,    35,    38,    40,    91,    36,    21,        27,    21,    23,    89,    21,    33,    39,    32,    38,    -1,
625        38,    21,    33,    25,    40,    25,    38,    -1,    33,    29,        31,    27,    22,    27,    89,    27,    32,    34,    39,    38,
626        24,    29,    91,    29,    34,    36,    41,    40,    91,    24,        89,    22,    23,    40,    27,    21,    23,    89,    27,    32,
627        25,    42,    29,    23,    25,    39,    -1,    33,    29,    24,        24,    33,    -1,    31,    27,    22,    27,    89,    27,    32,
628        29,    91,    29,    34,    36,    41,    40,    91,    24,    25,        37,    38,    36,    39,    31,    23,    32,    38,    89,    31,
629        42,    29,    23,    25,    -1,    33,    29,    24,    29,    91,        19,    34,    89,    21,    33,    39,    32,    38,    -1,    31,
630        29,    34,    36,    41,    40,    91,    24,    38,    29,    42,        27,    22,    27,    89,    27,    32,    37,    38,    36,    39,
631        25,    38,    91,    36,    21,    38,    21,    33,    25,    40,        31,    23,    32,    38,    89,    31,    19,    34,    89,    27,
632        25,    38,    -1,    33,    29,    24,    29,    91,    29,    34,        32,    24,    33,    -1,    31,    27,    22,    27,    89,    27,
633        36,    41,    40,    91,    24,    38,    29,    42,    25,    38,        32,    37,    38,    36,    39,    31,    23,    32,    38,    89,
634        -1,    33,    29,    24,    29,    91,    29,    34,    36,    41,        21,    33,    39,    32,    38,    -1,    31,    27,    22,    27,
635        40,    91,    36,    35,    38,    40,    -1,    33,    29,    24,        89,    27,    32,    37,    38,    36,    39,    31,    23,    32,
636        29,    91,    29,    34,    36,    41,    40,    91,    23,    28,        38,    89,    27,    32,    24,    33,    -1,    21,    26,    19,
637        21,    34,    34,    25,    32,    -1,    33,    29,    24,    29,        32,    32,    23,    30,    89,    21,    33,    39,    32,    38,
638        91,    29,    34,    36,    41,    40,    91,    40,    45,    36,        -1,    21,    26,    19,    32,    32,    23,    30,    89,    27,
639        25,    -1,    33,    29,    24,    29,    91,    29,    34,    36,        32,    24,    33,    -1,    20,    39,    24,    24,    23,    36,
640        41,    40,    -1,    39,    25,    38,    42,    25,    38,    -1,        89,    24,    27,    30,    30,    -1,    37,    38,    36,    23,
641        42,    35,    32,    41,    33,    25,    -1,    33,    41,    40,        19,    31,    89,    21,    33,    39,    32,    38,    -1,    40,
642        25,    -1,    39,    35,    32,    35,    -1,    22,    45,    40,        33,    27,    21,    23,    89,    21,    33,    39,    32,    38,
643        25,    39,    -1,    36,    25,    38,    23,    25,    34,    40,        -1,    38,    33,    38,    19,    30,    89,    40,    33,    27,
644        21,    27,    25,    -1,    38,    25,    39,    25,    40,    -1,        21,    23,    89,    21,    33,    39,    32,    38,    -1,    38,
645        33,    29,    39,    23,    25,    32,    32,    21,    34,    25,        33,    38,    19,    30,    89,    40,    33,    27,    21,    23,
646        35,    41,    39,    -1,    25,    23,    28,    35,    -1,    37,        89,    21,    33,    39,    32,    38,    89,    31,    19,    42,
647        41,    29,    40,    -1        -1,    27,    32,    37,    38,    36,    39,    31,    23,    32,
648          38,    -1,    23,    32,    25,    27,    32,    23,    -1,    33,
649          32,    89,    22,    23,    31,    19,    32,    22,    -1,    33,
650          32,    89,    22,    23,    31,    19,    32,    22,    89,    26,
651          33,    30,    22,    -1,    34,    23,    36,    37,    27,    37,
652          38,    23,    32,    38,    -1,    19,    39,    22,    27,    33,
653          89,    33,    39,    38,    34,    39,    38,    89,    22,    23,
654          40,    27,    21,    23,    89,    34,    19,    36,    19,    31,
655          23,    38,    23,    36,    -1,    19,    39,    22,    27,    33,
656          89,    33,    39,    38,    34,    39,    38,    89,    22,    23,
657          40,    27,    21,    23,    37,    -1,    19,    39,    22,    27,
658          33,    89,    33,    39,    38,    34,    39,    38,    89,    22,
659          23,    40,    27,    21,    23,    -1,    19,    39,    22,    27,
660          33,    89,    33,    39,    38,    34,    39,    38,    89,    22,
661          36,    27,    40,    23,    36,    89,    34,    19,    36,    19,
662          31,    23,    38,    23,    36,    -1,    19,    39,    22,    27,
663          33,    89,    33,    39,    38,    34,    39,    38,    89,    22,
664          36,    27,    40,    23,    36,    -1,    19,    39,    22,    27,
665          33,    89,    33,    39,    38,    34,    39,    38,    89,    21,
666          26,    19,    32,    32,    23,    30,    89,    34,    19,    36,
667          19,    31,    23,    38,    23,    36,    -1,    19,    39,    22,
668          27,    33,    89,    33,    39,    38,    34,    39,    38,    89,
669          21,    26,    19,    32,    32,    23,    30,    -1,    19,    39,
670          22,    27,    33,    89,    33,    39,    38,    34,    39,    38,
671          89,    38,    43,    34,    23,    -1,    19,    40,    19,    27,
672          30,    19,    20,    30,    23,    89,    31,    27,    22,    27,
673          89,    27,    32,    34,    39,    38,    89,    22,    36,    27,
674          40,    23,    36,    37,    -1,    31,    27,    22,    27,    89,
675          27,    32,    34,    39,    38,    89,    22,    23,    40,    27,
676          21,    23,    89,    34,    19,    36,    19,    31,    23,    38,
677          23,    36,    -1,    31,    27,    22,    27,    89,    27,    32,
678          34,    39,    38,    89,    34,    33,    36,    38,    89,    34,
679          19,    36,    19,    31,    23,    38,    23,    36,    -1,    31,
680          27,    22,    27,    89,    27,    32,    34,    39,    38,    89,
681          22,    23,    40,    27,    21,    23,    37,    -1,    31,    27,
682          22,    27,    89,    27,    32,    34,    39,    38,    89,    22,
683          23,    40,    27,    21,    23,    -1,    31,    27,    22,    27,
684          89,    27,    32,    34,    39,    38,    89,    22,    36,    27,
685          40,    23,    36,    89,    34,    19,    36,    19,    31,    23,
686          38,    23,    36,    -1,    31,    27,    22,    27,    89,    27,
687          32,    37,    38,    36,    39,    31,    23,    32,    38,    -1,
688          31,    27,    22,    27,    89,    27,    32,    37,    38,    36,
689          39,    31,    23,    32,    38,    37,    -1,    31,    27,    22,
690          27,    89,    27,    32,    37,    38,    36,    39,    31,    23,
691          32,    38,    89,    31,    19,    34,    -1,    31,    27,    22,
692          27,    89,    27,    32,    37,    38,    36,    39,    31,    23,
693          32,    38,    89,    31,    19,    34,    37,    -1,    31,    27,
694          22,    27,    89,    27,    32,    34,    39,    38,    89,    22,
695          36,    27,    40,    23,    36,    -1,    31,    27,    22,    27,
696          89,    27,    32,    34,    39,    38,    89,    34,    33,    36,
697          38,    -1,    31,    27,    22,    27,    89,    27,    32,    34,
698          39,    38,    89,    21,    26,    19,    32,    32,    23,    30,
699          -1,    31,    27,    22,    27,    89,    27,    32,    34,    39,
700          38,    89,    38,    43,    34,    23,    -1,    31,    27,    22,
701          27,    89,    27,    32,    34,    39,    38,    -1,    24,    42,
702          89,    37,    23,    32,    22,    -1,    24,    42,    89,    37,
703          23,    32,    22,    37,    -1,    37,    23,    36,    40,    23,
704          36,    -1,    40,    33,    30,    39,    31,    23,    -1,    31,
705          39,    38,    23,    -1,    37,    33,    30,    33,    -1,    20,
706          43,    38,    23,    37,    -1,    34,    23,    36,    21,    23,
707          32,    38,    19,    25,    23,    -1,    36,    23,    37,    23,
708          38,    -1,    31,    27,    37,    21,    23,    30,    30,    19,
709          32,    23,    33,    39,    37,    -1,    32,    19,    31,    23,
710          -1,    23,    21,    26,    33,    -1,    35,    39,    27,    38,
711          -1
712  };  };
713    
714  /* YYRLINE[YYN] -- source line where rule number YYN was defined.  */  /* YYRLINE[YYN] -- source line where rule number YYN was defined.  */
715  static const unsigned short int yyrline[] =  static const yytype_uint16 yyrline[] =
716  {  {
717         0,    90,    90,    91,    94,    95,    96,    97,   100,   101,         0,    96,    96,    97,   100,   101,   102,   103,   106,   107,
718       102,   103,   104,   107,   108,   109,   110,   111,   112,   113,       108,   109,   110,   113,   114,   115,   116,   117,   118,   119,
719       114,   115,   116,   117,   118,   119,   120,   123,   124,   125,       120,   121,   122,   123,   124,   125,   126,   127,   128,   129,
720       126,   127,   128,   129,   132,   133,   134,   135,   136,   137,       132,   133,   134,   137,   138,   139,   140,   141,   142,   143,
721       138,   141,   142,   143,   144,   145,   146,   147,   148,   149,       144,   145,   146,   147,   148,   149,   150,   151,   154,   155,
722       150,   151,   152,   153,   154,   155,   156,   157,   158,   159,       156,   157,   158,   159,   160,   161,   162,   163,   164,   165,
723       160,   161,   162,   163,   164,   165,   166,   169,   170,   171,       166,   167,   168,   171,   172,   173,   174,   177,   180,   181,
724       172,   173,   174,   177,   178,   179,   180,   183,   184,   187,       182,   185,   186,   187,   188,   189,   190,   191,   192,   193,
725       188,   191,   192,   193,   194,   195,   196,   197,   198,   199,       194,   195,   196,   197,   198,   199,   200,   201,   202,   203,
726       200,   201,   204,   205,   208,   209,   212,   213,   214,   215,       204,   205,   206,   207,   208,   209,   210,   211,   212,   213,
727       216,   217,   220,   221,   224,   227,   230,   233,   236,   239,       214,   215,   216,   217,   218,   221,   222,   223,   224,   225,
728       240,   243,   246,   247,   250,   253,   256,   259,   262,   263,       226,   227,   228,   229,   232,   233,   234,   235,   236,   237,
729       266,   267,   268,   269,   270,   278,   279,   282,   283,   286,       240,   243,   244,   247,   248,   249,   252,   253,   256,   257,
730       287,   288,   292,   293,   296,   297,   298,   299,   300,   301,       258,   259,   260,   261,   262,   263,   264,   265,   266,   267,
731       302,   303,   304,   305,   308,   309,   310,   311,   312,   313,       268,   269,   272,   273,   276,   277,   280,   281,   282,   283,
732       314,   315,   316,   317,   319,   319,   319,   319,   319,   319,       284,   285,   286,   287,   288,   289,   292,   293,   296,   299,
733       319,   319,   319,   319,   319,   319,   319,   319,   319,   319,       300,   301,   304,   307,   310,   313,   316,   317,   320,   323,
734       319,   319,   319,   319,   319,   319,   319,   319,   319,   319,       326,   329,   332,   335,   336,   339,   342,   345,   348,   351,
735       320,   320,   320,   320,   320,   320,   320,   320,   320,   320,       354,   357,   360,   363,   364,   367,   368,   369,   370,   378,
736       320,   320,   320,   320,   320,   320,   320,   320,   320,   320,       379,   382,   383,   386,   387,   388,   392,   393,   396,   397,
737       320,   320,   320,   320,   320,   320,   321,   321,   321,   321,       398,   399,   400,   401,   402,   403,   404,   405,   408,   409,
738       321,   321,   321,   321,   321,   321,   322,   322,   322,   322,       410,   411,   412,   413,   414,   415,   416,   417,   419,   419,
739       322,   322,   322,   322,   322,   322,   322,   322,   322,   323,       419,   419,   419,   419,   419,   419,   419,   419,   419,   419,
740       323,   323,   323,   323,   323,   323,   324,   324,   324,   324,       419,   419,   419,   419,   419,   419,   419,   419,   419,   419,
741       324,   325,   325,   325,   325,   326,   326,   326,   327,   327,       419,   419,   419,   419,   420,   420,   420,   420,   420,   420,
742       327,   328,   328,   328,   329,   329,   329,   330,   330,   330,       420,   420,   420,   420,   420,   420,   420,   420,   420,   420,
743       331,   331,   331,   332,   332,   332,   333,   333,   333,   334,       420,   420,   420,   420,   420,   420,   420,   420,   420,   420,
744       334,   334,   335,   335,   335,   336,   336,   336,   337,   337,       421,   421,   421,   421,   421,   421,   421,   421,   421,   421,
745       337,   338,   338,   338,   339,   339,   339,   340,   340,   340,       422,   422,   422,   422,   422,   422,   422,   422,   422,   422,
746       341,   341,   341,   342,   342,   342,   343,   343,   343,   344,       422,   422,   422,   423,   423,   423,   423,   423,   423,   423,
747       344,   344,   345,   345,   345,   346,   346,   346,   347,   347,       424,   424,   424,   424,   424,   425,   425,   425,   425,   426,
748       347,   348,   348,   348,   349,   349,   349,   350,   350,   350,       426,   426,   427,   427,   427,   428,   428,   428,   429,   429,
749       351,   351,   351,   352,   352,   352,   353,   353,   353,   354,       429,   430,   430,   430,   431,   431,   431,   432,   432,   432,
750       354,   354,   355,   355,   355,   356,   356,   356,   357,   357,       433,   433,   433,   434,   434,   434,   435,   435,   435,   436,
751       357,   358,   358,   358,   359,   359,   359,   360,   360,   360,       436,   436,   437,   437,   437,   438,   438,   438,   439,   439,
752       361,   361,   361,   362,   362,   362,   363,   363,   363,   364,       439,   440,   440,   440,   441,   441,   441,   442,   442,   442,
753       364,   364,   365,   365,   365,   366,   366,   366,   367,   367,       443,   443,   443,   444,   444,   444,   445,   445,   445,   446,
754       367,   368,   368,   371,   372,   373,   374,   377,   378,   384,       446,   446,   447,   447,   447,   448,   448,   448,   449,   449,
755       387,   390,   393,   396,   399,   402,   405,   408,   411,   414,       449,   450,   450,   450,   451,   451,   451,   452,   452,   452,
756       417,   420,   423,   426,   429,   432,   435,   438,   441,   444,       453,   453,   453,   454,   454,   454,   455,   455,   455,   456,
757       447,   450,   453,   456,   459,   462,   465,   468,   471,   474,       456,   456,   457,   457,   457,   458,   458,   458,   459,   459,
758       477,   480,   483,   486,   489,   492,   495,   498,   501,   504,       459,   460,   460,   460,   461,   461,   461,   462,   462,   462,
759       507,   510,   513,   516,   519,   522,   525,   528,   531,   534,       463,   463,   463,   464,   464,   464,   465,   465,   465,   466,
760       537,   540,   543,   546,   549,   552,   555,   558       466,   466,   467,   467,   467,   468,   468,   471,   472,   473,
761         474,   477,   478,   484,   487,   490,   493,   496,   499,   502,
762         505,   508,   511,   514,   517,   520,   523,   526,   529,   532,
763         535,   538,   541,   544,   547,   550,   553,   556,   559,   562,
764         565,   568,   571,   574,   577,   580,   583,   586,   589,   592,
765         595,   598,   601,   604,   607,   610,   613,   616,   619,   622,
766         625,   628,   631,   634,   637,   640,   643,   646,   649,   652,
767         655,   658,   661,   664,   667,   670,   673,   676,   679,   682,
768         685,   688,   691,   694,   697,   700,   703,   706,   709,   712,
769         715,   718,   721,   724,   727
770  };  };
771  #endif  #endif
772    
773  #if YYDEBUG || YYERROR_VERBOSE  #if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
774  /* YYTNME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.  /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
775     First, the terminals, then, starting at YYNTOKENS, nonterminals. */     First, the terminals, then, starting at YYNTOKENS, nonterminals.  */
776  static const char *const yytname[] =  static const char *const yytname[] =
777  {  {
778    "$end", "error", "$undefined", "'#'", "'='", "','", "'''", "'\"'",    "$end", "error", "$undefined", "'#'", "'='", "','", "'.'", "'+'", "'-'",
779    "'.'", "'+'", "'-'", "'0'", "'1'", "'2'", "'3'", "'4'", "'5'", "'6'",    "'0'", "'1'", "'2'", "'3'", "'4'", "'5'", "'6'", "'7'", "'8'", "'9'",
780    "'7'", "'8'", "'9'", "'A'", "'B'", "'C'", "'D'", "'E'", "'F'", "'G'",    "'A'", "'B'", "'C'", "'D'", "'E'", "'F'", "'G'", "'H'", "'I'", "'J'",
781    "'H'", "'I'", "'J'", "'K'", "'L'", "'M'", "'N'", "'O'", "'P'", "'Q'",    "'K'", "'L'", "'M'", "'N'", "'O'", "'P'", "'Q'", "'R'", "'S'", "'T'",
782    "'R'", "'S'", "'T'", "'U'", "'V'", "'W'", "'X'", "'Y'", "'Z'", "'a'",    "'U'", "'V'", "'W'", "'X'", "'Y'", "'Z'", "'a'", "'b'", "'c'", "'d'",
783    "'b'", "'c'", "'d'", "'e'", "'f'", "'g'", "'h'", "'i'", "'j'", "'k'",    "'e'", "'f'", "'g'", "'h'", "'i'", "'j'", "'k'", "'l'", "'m'", "'n'",
784    "'l'", "'m'", "'n'", "'o'", "'p'", "'q'", "'r'", "'s'", "'t'", "'u'",    "'o'", "'p'", "'q'", "'r'", "'s'", "'t'", "'u'", "'v'", "'w'", "'x'",
785    "'v'", "'w'", "'x'", "'y'", "'z'", "'!'", "'$'", "'%'", "'&'", "'('",    "'y'", "'z'", "'!'", "'$'", "'%'", "'&'", "'('", "')'", "'*'", "'/'",
786    "')'", "'*'", "'/'", "':'", "';'", "'<'", "'>'", "'?'", "'@'", "'['",    "':'", "';'", "'<'", "'>'", "'?'", "'@'", "'['", "'\\\\'", "']'", "'^'",
787    "'\\\\'", "']'", "'^'", "'_'", "'{'", "'|'", "'}'", "'~'", "'\\200'",    "'_'", "'{'", "'|'", "'}'", "'~'", "'\\200'", "'\\201'", "'\\202'",
788    "'\\201'", "'\\202'", "'\\203'", "'\\204'", "'\\205'", "'\\206'",    "'\\203'", "'\\204'", "'\\205'", "'\\206'", "'\\207'", "'\\210'",
789    "'\\207'", "'\\210'", "'\\211'", "'\\212'", "'\\213'", "'\\214'",    "'\\211'", "'\\212'", "'\\213'", "'\\214'", "'\\215'", "'\\216'",
790    "'\\215'", "'\\216'", "'\\217'", "'\\220'", "'\\221'", "'\\222'",    "'\\217'", "'\\220'", "'\\221'", "'\\222'", "'\\223'", "'\\224'",
791    "'\\223'", "'\\224'", "'\\225'", "'\\226'", "'\\227'", "'\\230'",    "'\\225'", "'\\226'", "'\\227'", "'\\230'", "'\\231'", "'\\232'",
792    "'\\231'", "'\\232'", "'\\233'", "'\\234'", "'\\235'", "'\\236'",    "'\\233'", "'\\234'", "'\\235'", "'\\236'", "'\\237'", "'\\240'",
793    "'\\237'", "' '", "'¡'", "'¢'", "'£'", "'¤'", "'¥'", "'¦'", "'§'", "'¨'",    "'\\241'", "'\\242'", "'\\243'", "'\\244'", "'\\245'", "'\\246'",
794    "'©'", "'ª'", "'«'", "'¬'", "'­'", "'®'", "'¯'", "'°'", "'±'", "'²'",    "'\\247'", "'\\250'", "'\\251'", "'\\252'", "'\\253'", "'\\254'",
795    "'³'", "'´'", "'µ'", "'¶'", "'·'", "'¸'", "'¹'", "'º'", "'»'", "'¼'",    "'\\255'", "'\\256'", "'\\257'", "'\\260'", "'\\261'", "'\\262'",
796    "'½'", "'¾'", "'¿'", "'À'", "'Á'", "'Â'", "'Ã'", "'Ä'", "'Å'", "'Æ'",    "'\\263'", "'\\264'", "'\\265'", "'\\266'", "'\\267'", "'\\270'",
797    "'Ç'", "'È'", "'É'", "'Ê'", "'Ë'", "'Ì'", "'Í'", "'Î'", "'Ï'", "'Ð'",    "'\\271'", "'\\272'", "'\\273'", "'\\274'", "'\\275'", "'\\276'",
798    "'Ñ'", "'Ò'", "'Ó'", "'Ô'", "'Õ'", "'Ö'", "'×'", "'Ø'", "'Ù'", "'Ú'",    "'\\277'", "'\\300'", "'\\301'", "'\\302'", "'\\303'", "'\\304'",
799    "'Û'", "'Ü'", "'Ý'", "'Þ'", "'ß'", "'à'", "'á'", "'â'", "'ã'", "'ä'",    "'\\305'", "'\\306'", "'\\307'", "'\\310'", "'\\311'", "'\\312'",
800    "'å'", "'æ'", "'ç'", "'è'", "'é'", "'ê'", "'ë'", "'ì'", "'í'", "'î'",    "'\\313'", "'\\314'", "'\\315'", "'\\316'", "'\\317'", "'\\320'",
801    "'ï'", "'ð'", "'ñ'", "'ò'", "'ó'", "'ô'", "'õ'", "'ö'", "'÷'", "'ø'",    "'\\321'", "'\\322'", "'\\323'", "'\\324'", "'\\325'", "'\\326'",
802    "'ù'", "'ú'", "'û'", "'ü'", "'ý'", "'þ'", "'ÿ'", "' '", "'\\n'", "'\\r'",    "'\\327'", "'\\330'", "'\\331'", "'\\332'", "'\\333'", "'\\334'",
803    "$accept", "input", "line", "comment", "command", "subscribe_event",    "'\\335'", "'\\336'", "'\\337'", "'\\340'", "'\\341'", "'\\342'",
804    "unsubscribe_event", "get_instruction", "set_instruction",    "'\\343'", "'\\344'", "'\\345'", "'\\346'", "'\\347'", "'\\350'",
805    "create_instruction", "destroy_instruction", "load_instruction",    "'\\351'", "'\\352'", "'\\353'", "'\\354'", "'\\355'", "'\\356'",
806    "set_chan_instruction", "key_val_list", "buffer_size_type",    "'\\357'", "'\\360'", "'\\361'", "'\\362'", "'\\363'", "'\\364'",
807    "list_instruction", "load_instr_args", "load_engine_args",    "'\\365'", "'\\366'", "'\\367'", "'\\370'", "'\\371'", "'\\372'",
808    "device_index", "audio_channel_index", "audio_output_type_name",    "'\\373'", "'\\374'", "'\\375'", "'\\376'", "'\\377'", "'''", "'\"'",
809    "midi_input_port_index", "midi_input_channel_index",    "' '", "'\\n'", "'\\r'", "$accept", "input", "line", "comment",
810    "midi_input_type_name", "volume_value", "sampler_channel",    "command", "add_instruction", "subscribe_event", "unsubscribe_event",
811    "instrument_index", "engine_name", "filename", "param_val_list",    "map_instruction", "unmap_instruction", "remove_instruction",
812    "param_val", "boolean", "string", "dotnum", "digits", "digit", "number",    "get_instruction", "set_instruction", "create_instruction",
813    "char", "text", "stringval", "SP", "LF", "CR", "ADD", "GET", "CREATE",    "reset_instruction", "clear_instruction", "destroy_instruction",
814    "DESTROY", "LIST", "LOAD", "ALL", "NON_MODAL", "REMOVE", "SET",    "load_instruction", "set_chan_instruction", "key_val_list",
815    "SUBSCRIBE", "UNSUBSCRIBE", "SELECT", "CHANNEL", "AVAILABLE_ENGINES",    "buffer_size_type", "list_instruction", "load_instr_args",
816    "AVAILABLE_AUDIO_OUTPUT_DRIVERS", "CHANNELS", "INFO", "CHANNEL_COUNT",    "load_engine_args", "instr_load_mode", "device_index",
817    "CHANNEL_INFO", "BUFFER_FILL", "STREAM_COUNT", "VOICE_COUNT",    "audio_channel_index", "audio_output_type_name", "midi_input_port_index",
818    "TOTAL_VOICE_COUNT", "TOTAL_VOICE_COUNT_MAX", "INSTRUMENT", "ENGINE",    "midi_input_channel_index", "midi_input_type_name", "midi_map",
819    "AUDIO_OUTPUT_DEVICE_PARAMETER", "AUDIO_OUTPUT_DEVICES",    "midi_bank", "midi_prog", "midi_ctrl", "volume_value", "sampler_channel",
820    "AUDIO_OUTPUT_DEVICE", "AUDIO_OUTPUT_DRIVER_PARAMETER",    "instrument_index", "fx_send_id", "engine_name", "filename", "map_name",
821    "AUDIO_OUTPUT_DRIVER", "AUDIO_OUTPUT_CHANNEL_PARAMETER",    "entry_name", "fx_send_name", "param_val_list", "param_val", "boolean",
822    "AUDIO_OUTPUT_CHANNEL", "AUDIO_OUTPUT_TYPE",    "string", "dotnum", "digits", "digit", "number", "char", "text",
823    "AVAILABLE_MIDI_INPUT_DRIVERS", "MIDI_INPUT_DEVICE_PARAMETER",    "stringval", "SP", "LF", "CR", "ADD", "GET", "MAP", "UNMAP", "CLEAR",
824    "MIDI_INPUT_PORT_PARAMETER", "MIDI_INPUT_DEVICES", "MIDI_INPUT_DEVICE",    "CREATE", "DESTROY", "LIST", "LOAD", "ALL", "NONE", "DEFAULT",
825    "MIDI_INPUT_DRIVER_PARAMETER", "MIDI_INPUT_DRIVER", "MIDI_INPUT_PORT",    "NON_MODAL", "REMOVE", "SET", "SUBSCRIBE", "UNSUBSCRIBE", "SELECT",
826    "MIDI_INPUT_CHANNEL", "MIDI_INPUT_TYPE", "MIDI_INPUT", "SERVER",    "CHANNEL", "AVAILABLE_ENGINES", "AVAILABLE_AUDIO_OUTPUT_DRIVERS",
827    "VOLUME", "MUTE", "SOLO", "BYTES", "PERCENTAGE", "RESET",    "CHANNELS", "INFO", "AUDIO_OUTPUT_DEVICE_COUNT",
828    "MISCELLANEOUS", "ECHO", "QUIT", 0    "AUDIO_OUTPUT_DEVICE_INFO", "MIDI_INPUT_DEVICE_COUNT",
829      "MIDI_INPUT_DEVICE_INFO", "MIDI_INSTRUMENT_MAP_COUNT",
830      "MIDI_INSTRUMENT_MAP_INFO", "MIDI_INSTRUMENT_COUNT",
831      "MIDI_INSTRUMENT_INFO", "CHANNEL_COUNT", "CHANNEL_INFO", "BUFFER_FILL",
832      "STREAM_COUNT", "VOICE_COUNT", "TOTAL_VOICE_COUNT",
833      "TOTAL_VOICE_COUNT_MAX", "INSTRUMENT", "ENGINE", "ON_DEMAND",
834      "ON_DEMAND_HOLD", "PERSISTENT", "AUDIO_OUTPUT_DEVICE_PARAMETER",
835      "AUDIO_OUTPUT_DEVICES", "AUDIO_OUTPUT_DEVICE",
836      "AUDIO_OUTPUT_DRIVER_PARAMETER", "AUDIO_OUTPUT_DRIVER",
837      "AUDIO_OUTPUT_CHANNEL_PARAMETER", "AUDIO_OUTPUT_CHANNEL",
838      "AUDIO_OUTPUT_TYPE", "AVAILABLE_MIDI_INPUT_DRIVERS",
839      "MIDI_INPUT_DEVICE_PARAMETER", "MIDI_INPUT_PORT_PARAMETER",
840      "MIDI_INPUT_DEVICES", "MIDI_INPUT_DEVICE", "MIDI_INPUT_DRIVER_PARAMETER",
841      "MIDI_INSTRUMENT", "MIDI_INSTRUMENTS", "MIDI_INSTRUMENT_MAP",
842      "MIDI_INSTRUMENT_MAPS", "MIDI_INPUT_DRIVER", "MIDI_INPUT_PORT",
843      "MIDI_INPUT_CHANNEL", "MIDI_INPUT_TYPE", "MIDI_INPUT", "FX_SEND",
844      "FX_SENDS", "SERVER", "VOLUME", "MUTE", "SOLO", "BYTES", "PERCENTAGE",
845      "RESET", "MISCELLANEOUS", "NAME", "ECHO", "QUIT", 0
846  };  };
847  #endif  #endif
848    
849  # ifdef YYPRINT  # ifdef YYPRINT
850  /* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to  /* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to
851     token YYLEX-NUM.  */     token YYLEX-NUM.  */
852  static const unsigned short int yytoknum[] =  static const yytype_uint16 yytoknum[] =
853  {  {
854         0,   256,   257,    35,    61,    44,    39,    34,    46,    43,         0,   256,   257,    35,    61,    44,    46,    43,    45,    48,
855        45,    48,    49,    50,    51,    52,    53,    54,    55,    56,        49,    50,    51,    52,    53,    54,    55,    56,    57,    65,
856        57,    65,    66,    67,    68,    69,    70,    71,    72,    73,        66,    67,    68,    69,    70,    71,    72,    73,    74,    75,
857        74,    75,    76,    77,    78,    79,    80,    81,    82,    83,        76,    77,    78,    79,    80,    81,    82,    83,    84,    85,
858        84,    85,    86,    87,    88,    89,    90,    97,    98,    99,        86,    87,    88,    89,    90,    97,    98,    99,   100,   101,
859       100,   101,   102,   103,   104,   105,   106,   107,   108,   109,       102,   103,   104,   105,   106,   107,   108,   109,   110,   111,
860       110,   111,   112,   113,   114,   115,   116,   117,   118,   119,       112,   113,   114,   115,   116,   117,   118,   119,   120,   121,
861       120,   121,   122,    33,    36,    37,    38,    40,    41,    42,       122,    33,    36,    37,    38,    40,    41,    42,    47,    58,
862        47,    58,    59,    60,    62,    63,    64,    91,    92,    93,        59,    60,    62,    63,    64,    91,    92,    93,    94,    95,
863        94,    95,   123,   124,   125,   126,   128,   129,   130,   131,       123,   124,   125,   126,   128,   129,   130,   131,   132,   133,
864       132,   133,   134,   135,   136,   137,   138,   139,   140,   141,       134,   135,   136,   137,   138,   139,   140,   141,   142,   143,
865       142,   143,   144,   145,   146,   147,   148,   149,   150,   151,       144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
866       152,   153,   154,   155,   156,   157,   158,   159,   160,   161,       154,   155,   156,   157,   158,   159,   160,   161,   162,   163,
867       162,   163,   164,   165,   166,   167,   168,   169,   170,   171,       164,   165,   166,   167,   168,   169,   170,   171,   172,   173,
868       172,   173,   174,   175,   176,   177,   178,   179,   180,   181,       174,   175,   176,   177,   178,   179,   180,   181,   182,   183,
869       182,   183,   184,   185,   186,   187,   188,   189,   190,   191,       184,   185,   186,   187,   188,   189,   190,   191,   192,   193,
870       192,   193,   194,   195,   196,   197,   198,   199,   200,   201,       194,   195,   196,   197,   198,   199,   200,   201,   202,   203,
871       202,   203,   204,   205,   206,   207,   208,   209,   210,   211,       204,   205,   206,   207,   208,   209,   210,   211,   212,   213,
872       212,   213,   214,   215,   216,   217,   218,   219,   220,   221,       214,   215,   216,   217,   218,   219,   220,   221,   222,   223,
873       222,   223,   224,   225,   226,   227,   228,   229,   230,   231,       224,   225,   226,   227,   228,   229,   230,   231,   232,   233,
874       232,   233,   234,   235,   236,   237,   238,   239,   240,   241,       234,   235,   236,   237,   238,   239,   240,   241,   242,   243,
875       242,   243,   244,   245,   246,   247,   248,   249,   250,   251,       244,   245,   246,   247,   248,   249,   250,   251,   252,   253,
876       252,   253,   254,   255,    32,    10,    13       254,   255,    39,    34,    32,    10,    13
877  };  };
878  # endif  # endif
879    
880  /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */  /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
881  static const unsigned short int yyr1[] =  static const yytype_uint16 yyr1[] =
882  {  {
883         0,   227,   228,   228,   229,   229,   229,   229,   230,   230,         0,   227,   228,   228,   229,   229,   229,   229,   230,   230,
884       230,   230,   230,   231,   231,   231,   231,   231,   231,   231,       230,   230,   230,   231,   231,   231,   231,   231,   231,   231,
885       231,   231,   231,   231,   231,   231,   231,   232,   232,   232,       231,   231,   231,   231,   231,   231,   231,   231,   231,   231,
886       232,   232,   232,   232,   233,   233,   233,   233,   233,   233,       232,   232,   232,   233,   233,   233,   233,   233,   233,   233,
887       233,   234,   234,   234,   234,   234,   234,   234,   234,   234,       233,   233,   233,   233,   233,   233,   233,   233,   234,   234,
888       234,   234,   234,   234,   234,   234,   234,   234,   234,   234,       234,   234,   234,   234,   234,   234,   234,   234,   234,   234,
889       234,   234,   234,   234,   234,   234,   234,   235,   235,   235,       234,   234,   234,   235,   235,   235,   235,   236,   237,   237,
890       235,   235,   235,   236,   236,   236,   236,   237,   237,   238,       237,   238,   238,   238,   238,   238,   238,   238,   238,   238,
891       238,   239,   239,   239,   239,   239,   239,   239,   239,   239,       238,   238,   238,   238,   238,   238,   238,   238,   238,   238,
892       239,   239,   240,   240,   241,   241,   242,   242,   242,   242,       238,   238,   238,   238,   238,   238,   238,   238,   238,   238,
893       242,   242,   243,   243,   244,   245,   246,   247,   248,   249,       238,   238,   238,   238,   238,   239,   239,   239,   239,   239,
894       249,   250,   251,   251,   252,   253,   254,   255,   256,   256,       239,   239,   239,   239,   240,   240,   240,   240,   240,   240,
895       257,   257,   257,   257,   257,   258,   258,   259,   259,   260,       241,   242,   242,   243,   243,   243,   244,   244,   245,   245,
896       260,   260,   261,   261,   262,   262,   262,   262,   262,   262,       245,   245,   245,   245,   245,   245,   245,   245,   245,   245,
897       262,   262,   262,   262,   263,   263,   263,   263,   263,   263,       245,   245,   246,   246,   247,   247,   248,   248,   248,   248,
898       263,   263,   263,   263,   264,   264,   264,   264,   264,   264,       248,   248,   248,   248,   248,   248,   249,   249,   250,   251,
899       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       251,   251,   252,   253,   254,   255,   256,   256,   257,   258,
900       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       259,   260,   261,   262,   262,   263,   264,   265,   266,   267,
901       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       268,   269,   270,   271,   271,   272,   272,   272,   272,   273,
902       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       273,   274,   274,   275,   275,   275,   276,   276,   277,   277,
903       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       277,   277,   277,   277,   277,   277,   277,   277,   278,   278,
904       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       278,   278,   278,   278,   278,   278,   278,   278,   279,   279,
905       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       279,   279,   279,   279,   279,   279,   279,   279,   279,   279,
906       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       279,   279,   279,   279,   279,   279,   279,   279,   279,   279,
907       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       279,   279,   279,   279,   279,   279,   279,   279,   279,   279,
908       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       279,   279,   279,   279,   279,   279,   279,   279,   279,   279,
909       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       279,   279,   279,   279,   279,   279,   279,   279,   279,   279,
910       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       279,   279,   279,   279,   279,   279,   279,   279,   279,   279,
911       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       279,   279,   279,   279,   279,   279,   279,   279,   279,   279,
912       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       279,   279,   279,   279,   279,   279,   279,   279,   279,   279,
913       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       279,   279,   279,   279,   279,   279,   279,   279,   279,   279,
914       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       279,   279,   279,   279,   279,   279,   279,   279,   279,   279,
915       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       279,   279,   279,   279,   279,   279,   279,   279,   279,   279,
916       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       279,   279,   279,   279,   279,   279,   279,   279,   279,   279,
917       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       279,   279,   279,   279,   279,   279,   279,   279,   279,   279,
918       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       279,   279,   279,   279,   279,   279,   279,   279,   279,   279,
919       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       279,   279,   279,   279,   279,   279,   279,   279,   279,   279,
920       264,   264,   264,   265,   265,   265,   265,   266,   266,   267,       279,   279,   279,   279,   279,   279,   279,   279,   279,   279,
921       268,   269,   270,   271,   272,   273,   274,   275,   276,   277,       279,   279,   279,   279,   279,   279,   279,   279,   279,   279,
922       278,   279,   280,   281,   282,   283,   284,   285,   286,   287,       279,   279,   279,   279,   279,   279,   279,   279,   279,   279,
923       288,   289,   290,   291,   292,   293,   294,   295,   296,   297,       279,   279,   279,   279,   279,   279,   279,   279,   279,   279,
924       298,   299,   300,   301,   302,   303,   304,   305,   306,   307,       279,   279,   279,   279,   279,   279,   279,   279,   279,   279,
925       308,   309,   310,   311,   312,   313,   314,   315,   316,   317,       279,   279,   279,   279,   279,   279,   279,   279,   279,   279,
926       318,   319,   320,   321,   322,   323,   324,   325       279,   279,   279,   279,   279,   279,   279,   280,   280,   280,
927         280,   281,   281,   282,   283,   284,   285,   286,   287,   288,
928         289,   290,   291,   292,   293,   294,   295,   296,   297,   298,
929         299,   300,   301,   302,   303,   304,   305,   306,   307,   308,
930         309,   310,   311,   312,   313,   314,   315,   316,   317,   318,
931         319,   320,   321,   322,   323,   324,   325,   326,   327,   328,
932         329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
933         339,   340,   341,   342,   343,   344,   345,   346,   347,   348,
934         349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
935         359,   360,   361,   362,   363
936  };  };
937    
938  /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN.  */  /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN.  */
939  static const unsigned char yyr2[] =  static const yytype_uint8 yyr2[] =
940  {  {
941         0,     2,     2,     3,     0,     1,     1,     1,     1,     2,         0,     2,     2,     3,     0,     1,     1,     1,     1,     2,
942         2,     2,     2,     3,     3,     3,     3,     3,     3,     5,         2,     2,     2,     3,     3,     3,     3,     3,     3,     3,
943         3,     3,     3,     3,     5,     1,     1,     1,     1,     1,         3,     3,     3,     3,     3,     3,     3,     3,     1,     1,
944           1,     1,     3,     1,     1,     1,     1,     1,     1,     1,
945           1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
946         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
947         1,     1,     1,     5,     7,     9,     1,     5,     7,     9,         1,     1,     1,    15,    17,    17,    19,     7,     3,     3,
948           3,     1,     1,     5,     7,     9,     1,     5,     7,     9,
949         1,     1,     5,     5,     7,     9,     7,     9,     1,     5,         1,     1,     5,     5,     7,     9,     7,     9,     1,     5,
950         7,     5,     5,     5,     3,     1,     1,     7,     9,     7,         7,     5,     5,     5,     3,     1,     1,     3,     3,     9,
951         9,     3,     3,     5,     3,     5,     3,     3,     3,     3,         1,     5,     3,     7,     1,     7,     9,     7,     9,     3,
952         3,     5,     7,     5,     9,     5,     5,     5,     5,     5,         7,    11,     3,     3,     5,     3,     5,     3,     5,     7,
953           3,     3,     3,     3,     3,     5,     3,     3,     5,     7,
954           5,     9,     5,     5,     5,     5,     5,     5,     5,     5,
955         5,     5,     3,     5,     1,     1,     1,     1,     1,     1,         5,     5,     3,     5,     1,     1,     1,     1,     1,     1,
956         1,     1,     5,     7,     3,     1,     1,     1,     1,     1,         1,     1,     3,     3,     1,     3,     5,     7,     3,     1,
957         1,     1,     1,     1,     1,     1,     1,     1,     1,     3,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
958         1,     3,     3,     1,     1,     1,     1,     1,     2,     3,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
959         4,     4,     1,     2,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     3,     1,     1,     1,     1,     1,
960         1,     1,     1,     1,     1,     2,     2,     2,     2,     2,         1,     1,     2,     3,     4,     4,     1,     2,     1,     1,
961         2,     2,     2,     2,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     1,     1,     1,     1,     1,     2,
962           2,     2,     2,     2,     2,     2,     2,     2,     1,     1,
963         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
964         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
965         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
# Line 735  static const unsigned char yyr2[] = Line 981  static const unsigned char yyr2[] =
981         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
982         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
983         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
984         1,     1,     1,     1,     1,     2,     2,     3,     3,     1,         1,     1,     1,     1,     1,     1,     1,     1,     1,     2,
985         1,     1,     3,     3,     6,     7,     4,     4,     3,     9,         2,     3,     3,     1,     1,     1,     3,     3,     3,     5,
986         6,     3,     9,    11,     6,     7,    17,    30,     8,     4,         5,     6,     7,     4,     4,     3,     4,     7,     9,     6,
987        13,    12,    11,    12,    11,    17,    21,    10,     6,    29,         3,     9,    11,     6,     7,    17,    30,     8,     4,    25,
988          24,    23,    22,    25,    24,    21,    20,    13,    12,    11,
989          12,    11,    17,    21,    10,     6,     9,    14,    10,    29,
990        20,    19,    29,    19,    30,    20,    17,    28,    27,    25,        20,    19,    29,    19,    30,    20,    17,    28,    27,    25,
991        18,    17,    27,    17,    15,    18,    15,    10,     6,     6,        18,    17,    27,    15,    16,    19,    20,    17,    15,    18,
992         4,     4,     5,    10,     5,    13,     4,     4        15,    10,     7,     8,     6,     6,     4,     4,     5,    10,
993           5,    13,     4,     4,     4
994  };  };
995    
996  /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state  /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
997     STATE-NUM when YYTABLE doesn't specify something else to do.  Zero     STATE-NUM when YYTABLE doesn't specify something else to do.  Zero
998     means the default is an error.  */     means the default is an error.  */
999  static const unsigned short int yydefact[] =  static const yytype_uint16 yydefact[] =
1000  {  {
1001         0,     7,     8,     0,     0,     0,     0,     0,     0,     0,         0,     7,     8,     0,     0,     0,     0,     0,     0,     0,
1002         0,     0,     0,     0,     5,     6,     0,     0,     0,     0,         0,     0,     0,     0,     0,     5,     6,     0,     0,     0,
1003         0,     0,     0,     0,     0,     0,     0,    25,    26,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1004           0,    28,    29,     0,     0,     0,     0,     0,     0,     0,
1005           0,     0,     0,     0,     0,     0,     1,   444,   445,     2,
1006           0,     9,   296,   291,   290,   288,   289,   198,   199,   200,
1007         201,   202,   203,   204,   205,   206,   207,   218,   219,   220,
1008         221,   222,   223,   224,   225,   226,   227,   228,   229,   230,
1009         231,   232,   233,   234,   235,   236,   237,   238,   239,   240,
1010         241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
1011         251,   252,   253,   254,   255,   256,   257,   258,   259,   260,
1012         261,   262,   263,   264,   265,   266,   267,   268,   269,   280,
1013         282,   283,   284,   285,   286,   287,   292,   293,   294,   295,
1014         297,   298,   299,   300,   301,   302,   303,   304,   305,   306,
1015         307,   308,   309,   310,   311,   312,   313,   314,   315,   316,
1016         317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
1017         327,   328,   329,   330,   331,   332,   333,   334,   335,   336,
1018         337,   338,   339,   340,   341,   342,   343,   344,   345,   346,
1019         347,   348,   349,   350,   351,   352,   353,   354,   355,   356,
1020         357,   358,   359,   360,   361,   362,   363,   364,   365,   366,
1021         367,   368,   369,   370,   371,   372,   373,   374,   375,   376,
1022         377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
1023         387,   388,   389,   390,   391,   392,   393,   394,   395,   396,
1024         397,   398,   399,   400,   401,   402,   403,   404,   405,   406,
1025         407,   408,   409,   410,   411,   412,   413,   414,   415,   416,
1026         417,   418,   419,   420,   421,   422,   423,   424,   425,   426,
1027         427,   428,   429,   430,   431,   432,   433,   434,   435,   436,
1028         443,    12,   208,    11,   191,    10,     0,     0,     0,     0,
1029           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1030           0,   446,     0,     0,     0,   447,     0,     0,   448,     0,
1031           0,     0,     0,   460,     0,     0,     0,     3,   198,   199,
1032         200,   201,   202,   203,   204,   205,   206,   207,   209,   196,
1033         210,   211,   212,   213,   214,   215,   216,   217,   281,   270,
1034         271,   272,   273,   274,   275,   276,   277,   278,   279,   192,
1035           0,     0,    13,    30,    31,     0,     0,     0,     0,     0,
1036           0,     0,     0,    16,     0,    71,    76,    88,    95,    96,
1037           0,    80,     0,     0,     0,     0,     0,    72,     0,    81,
1038           0,     0,     0,     0,     0,   100,     0,     0,     0,     0,
1039           0,   104,     0,    14,     0,    15,     0,     0,    27,     0,
1040           0,     0,     0,    17,     0,     0,     0,    18,     0,     0,
1041           0,     0,     0,     0,     0,    19,   149,   151,   148,   146,
1042         150,   147,     0,   154,     0,     0,    20,     0,     0,    21,
1043           0,     0,     0,     0,     0,    22,     0,     0,     0,     0,
1044           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1045           0,     0,    23,    33,    34,    35,    36,    42,    43,    44,
1046          45,    37,    41,    40,    39,    38,    47,    46,    24,    48,
1047          49,    50,    51,    57,    58,    59,    60,    52,    56,    55,
1048          54,    53,    62,    61,   438,    25,   437,    26,     0,     0,
1049           0,     0,   453,   454,   524,     0,     0,     0,     0,     0,
1050           0,   197,     0,     0,     0,     0,     0,     0,     0,     0,
1051           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1052           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1053         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        1,   380,   381,     2,     0,     9,   232,   227,   226,   224,  
      225,   134,   135,   136,   137,   138,   139,   140,   141,   142,  
      143,   154,   155,   156,   157,   158,   159,   160,   161,   162,  
      163,   164,   165,   166,   167,   168,   169,   170,   171,   172,  
      173,   174,   175,   176,   177,   178,   179,   180,   181,   182,  
      183,   184,   185,   186,   187,   188,   189,   190,   191,   192,  
      193,   194,   195,   196,   197,   198,   199,   200,   201,   202,  
      203,   204,   205,   216,   218,   219,   220,   221,   222,   223,  
      228,   229,   230,   231,   233,   234,   235,   236,   237,   238,  
      239,   240,   241,   242,   243,   244,   245,   246,   247,   248,  
      249,   250,   251,   252,   253,   254,   255,   256,   257,   258,  
      259,   260,   261,   262,   263,   264,   265,   266,   267,   268,  
      269,   270,   271,   272,   273,   274,   275,   276,   277,   278,  
      279,   280,   281,   282,   283,   284,   285,   286,   287,   288,  
      289,   290,   291,   292,   293,   294,   295,   296,   297,   298,  
      299,   300,   301,   302,   303,   304,   305,   306,   307,   308,  
      309,   310,   311,   312,   313,   314,   315,   316,   317,   318,  
      319,   320,   321,   322,   323,   324,   325,   326,   327,   328,  
      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,  
      339,   340,   341,   342,   343,   344,   345,   346,   347,   348,  
      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,  
      359,   360,   361,   362,   363,   364,   365,   366,   367,   368,  
      369,   370,   371,   372,   379,    12,   144,    11,   127,    10,  
1054         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,   382,     0,     0,   383,     0,     0,     0,     0,  
        0,     0,   391,     0,     0,     3,   134,   135,   136,   137,  
      138,   139,   140,   141,   142,   143,   145,   132,   146,   147,  
      148,   149,   150,   151,   152,   153,   217,   206,   207,   208,  
      209,   210,   211,   212,   213,   214,   215,   128,     0,    13,  
        0,     0,     0,     0,     0,     0,    14,     0,    41,    46,  
       58,    65,    66,     0,    50,     0,     0,     0,     0,     0,  
       42,     0,    51,     0,     0,     0,     0,     0,     0,     0,  
       15,     0,     0,    16,     0,     0,     0,     0,     0,    17,  
       99,   101,    98,    96,   100,    97,     0,    18,     0,     0,  
        0,     0,     0,     0,    20,     0,     0,     0,     0,     0,  
        0,     0,     0,     0,     0,     0,     0,    21,    27,    31,  
       30,    29,    28,    33,    32,    22,    34,    38,    37,    36,  
       35,    40,    39,   374,    23,   373,     0,     0,     0,   386,  
      387,   437,     0,     0,     0,     0,     0,   133,     0,     0,  
1055         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1056         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1057           0,     0,     0,     0,     0,     0,   440,   439,     0,   450,
1058           0,     0,     0,   520,     0,     0,   449,     0,     0,     0,
1059           0,     0,    32,   180,     0,     0,     0,     0,     0,     0,
1060         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1061           0,     0,     0,     0,     0,     0,     0,     0,   199,   200,
1062         201,   202,   203,   204,   205,   206,   207,     0,    97,   169,
1063          98,     0,     0,     0,     0,   102,   175,    94,     0,     0,
1064           0,     0,   121,   122,     0,     0,     0,   115,   117,     0,
1065         123,   124,     0,     0,     0,     0,     0,   152,   153,   155,
1066           0,     0,   126,     0,   179,     0,   127,     0,   178,    68,
1067          69,    70,     0,     0,     0,     0,     0,     0,   109,     0,
1068         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,   376,   375,     0,  
        0,     0,     0,   434,     0,     0,     0,     0,     0,     0,  
1069         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1070           0,   113,   173,     0,   196,   174,   112,   190,   189,     0,
1071           0,     0,     0,     0,     0,     0,     0,   120,   451,     0,
1072         459,   463,     0,     0,     0,     0,     0,     0,     0,     0,
1073         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,    64,     0,     0,    74,    76,   135,   136,   137,   138,  
      139,   140,   141,   142,   143,    77,    78,     0,     0,     0,  
        0,     0,     0,     0,    79,     0,   117,     0,    80,     0,  
      116,    19,   114,     0,     0,     0,     0,     0,     0,     0,  
       71,     0,     0,     0,     0,     0,     0,     0,     0,     0,  
        0,     0,     0,     0,     0,     0,    72,   126,   125,     0,  
        0,     0,     0,     0,     0,    24,   384,     0,   390,   394,  
1074         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1075         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1076         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1077           0,     0,     0,     0,     0,     0,     0,     0,   523,     0,
1078         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,   436,     0,     0,     0,     0,     0,     0,     0,     0,  
1079         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,   385,  
1080         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1081         0,    59,     0,     0,     0,    94,    95,    61,    62,    63,         0,     0,     0,     0,     0,   452,     0,     0,     0,     0,
1082        52,     0,    47,     0,     0,     0,    53,     0,    43,     0,       441,   442,     0,     0,     0,     0,     0,     0,     0,     0,
1083         0,     0,    73,     0,    75,     0,     0,     0,     0,   377,         0,     0,    89,     0,     0,     0,   144,   145,    91,    92,
1084       378,     0,     0,   115,     0,   104,     0,     0,     0,     0,        93,    82,     0,    77,     0,     0,     0,    83,     0,     0,
1085         455,   101,    73,     0,     0,     0,     0,   170,     0,     0,
1086           0,     0,     0,   114,     0,   116,   118,   172,   125,   177,
1087           0,     0,     0,     0,     0,     0,     0,   176,     0,   158,
1088         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1089         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1090           0,     0,     0,     0,     0,     0,     0,     0,   193,     0,
1091         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1092       408,     0,   428,     0,   399,     0,     0,     0,     0,     0,         0,     0,     0,     0,   485,     0,     0,   514,     0,   515,
1093         468,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1094         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,   430,  
      431,     0,     0,     0,     0,     0,     0,     0,     0,     0,  
1095         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1096         0,     0,     0,   392,     0,   395,     0,     0,   395,     0,         0,     0,     0,     0,   516,   517,     0,     0,     0,     0,
        0,     0,     0,    60,    48,     0,    56,     0,    44,    54,  
        0,     0,     0,     0,     0,   224,   225,    92,   118,   120,  
      124,     0,   132,   123,     0,     0,     0,     0,     0,   102,  
        0,     0,     0,     0,     0,     0,    81,   105,     0,   106,  
       83,   107,    85,    86,   108,     0,    87,   109,   110,    88,  
      111,     0,     0,     0,    89,   112,   113,    90,    91,    67,  
        0,    69,     0,     0,     0,     0,     0,     0,     0,     0,  
        0,     0,   398,     0,     0,     0,     0,     0,     0,     0,  
1097         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1098         0,     0,     0,     0,     0,     0,     0,     0,     0,   429,         0,     0,   522,     0,     0,     0,   194,   195,     0,     0,
1099           0,     0,     0,     0,     0,     0,   461,     0,   464,     0,
1100           0,     0,   464,   512,     0,     0,     0,     0,    90,    78,
1101           0,    86,     0,    74,     0,    84,   103,     0,     0,   171,
1102          67,     0,     0,   512,     0,     0,   288,   289,   142,   183,
1103         185,   188,   187,   186,   119,   182,     0,     0,     0,     0,
1104           0,     0,   156,     0,     0,     0,     0,     0,   128,   162,
1105           0,   163,   130,   164,   132,     0,     0,   139,   140,   141,
1106         133,   165,   134,   166,   167,   135,   168,     0,   136,   137,
1107         138,   105,     0,   107,     0,   110,     0,     0,     0,     0,
1108         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1109         0,   393,     0,     0,     0,     0,   432,     0,    49,    57,       467,   513,     0,     0,     0,     0,     0,     0,     0,     0,
       55,    45,     0,     0,    93,   121,   122,     0,     0,   119,  
      129,     0,     0,     0,     0,   103,     0,     0,     0,     0,  
       82,   388,     0,    68,    70,     0,     0,     0,     0,     0,  
        0,     0,     0,     0,     0,     0,     0,     0,     0,   130,  
      131,     0,     0,   407,     0,     0,     0,     0,     0,     0,  
1110         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,   389,     0,  
        0,     0,     0,    84,   402,     0,     0,     0,     0,     0,  
      404,     0,     0,     0,     0,     0,     0,     0,     0,     0,  
        0,     0,     0,     0,     0,     0,     0,   427,     0,   401,  
        0,   403,     0,     0,     0,     0,     0,     0,     0,     0,  
1111         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,   400,   435,     0,     0,     0,     0,     0,     0,     0,  
        0,     0,     0,   433,     0,     0,     0,     0,     0,     0,  
1112         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1113         0,     0,     0,     0,     0,   424,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,   462,     0,     0,     0,
1114           0,     0,     0,   518,     0,    79,    87,    85,    75,    99,
1115           0,     0,     0,     0,     0,   143,   184,     0,     0,     0,
1116           0,     0,   157,     0,     0,     0,     0,   129,     0,     0,
1117           0,   106,   108,     0,     0,     0,     0,     0,     0,     0,
1118         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1119         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1120         484,     0,     0,     0,     0,     0,     0,   456,     0,     0,
1121         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,   396,     0,   421,  
      423,     0,   405,     0,   421,     0,     0,     0,     0,     0,  
        0,     0,     0,   424,   426,   405,     0,     0,     0,     0,  
        0,   420,     0,     0,     0,     0,     0,     0,     0,     0,  
        0,     0,     0,     0,   411,   413,     0,     0,     0,     0,  
        0,   411,     0,     0,     0,     0,     0,   416,     0,   415,  
      410,     0,     0,     0,     0,     0,     0,     0,     0,     0,  
        0,   425,     0,     0,     0,     0,     0,     0,   406,     0,  
1122         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1123       415,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,   458,     0,
1124           0,     0,     0,     0,   131,     0,   111,     0,   479,     0,
1125           0,     0,     0,     0,     0,     0,   481,     0,     0,     0,
1126         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1127         0,     0,   419,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,   511,
1128         0,     0,     0,     0,     0,     0,   422,     0,   418,     0,         0,     0,     0,     0,   478,     0,     0,     0,   480,     0,
1129         0,     0,   417,     0,     0,   412,     0,   409,   414,   397         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1130           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1131           0,     0,     0,     0,   457,     0,     0,   477,     0,     0,
1132         521,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1133           0,     0,     0,   519,     0,     0,     0,     0,     0,     0,
1134           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1135           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1136           0,     0,     0,     0,   508,   503,     0,   503,    63,     0,
1137           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1138           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1139           0,     0,     0,     0,     0,     0,     0,     0,   504,     0,
1140           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1141           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1142           0,     0,     0,     0,   465,     0,   501,   507,     0,     0,
1143         482,     0,     0,    64,    65,   181,   159,   160,   161,     0,
1144         501,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1145         508,   510,     0,     0,     0,     0,     0,   482,     0,     0,
1146           0,     0,     0,     0,   500,     0,     0,     0,     0,     0,
1147           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1148           0,     0,     0,     0,     0,     0,   505,     0,   491,   493,
1149           0,     0,     0,     0,   505,     0,     0,     0,    66,   491,
1150           0,     0,     0,     0,     0,     0,   496,     0,     0,     0,
1151           0,     0,     0,     0,   495,   490,     0,     0,     0,     0,
1152           0,   506,     0,     0,     0,     0,     0,     0,     0,   509,
1153           0,     0,     0,     0,   476,     0,     0,     0,     0,     0,
1154           0,     0,   483,     0,     0,     0,     0,     0,     0,     0,
1155           0,     0,   475,     0,     0,     0,     0,     0,     0,     0,
1156           0,     0,     0,     0,     0,   495,     0,     0,     0,   472,
1157           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1158           0,     0,     0,     0,   471,     0,     0,     0,     0,     0,
1159           0,     0,     0,     0,     0,     0,     0,     0,   470,     0,
1160         474,     0,     0,     0,     0,     0,   499,   486,     0,     0,
1161           0,   469,   473,     0,     0,     0,     0,     0,     0,   488,
1162           0,     0,     0,     0,     0,     0,   502,     0,     0,   498,
1163           0,     0,     0,   497,     0,     0,     0,   492,     0,     0,
1164         489,   494,   466,   487
1165  };  };
1166    
1167  /* YYDEFGOTO[NTERM-NUM]. */  /* YYDEFGOTO[NTERM-NUM].  */
1168  static const short int yydefgoto[] =  static const yytype_int16 yydefgoto[] =
1169  {  {
1170        -1,    12,    13,    14,    15,   397,   405,   336,   384,   360,        -1,    13,    14,    15,    16,   342,   442,   458,   383,   385,
1171       363,   377,   550,   682,   664,   369,   534,   538,   826,   828,       419,   353,   425,   393,   477,   388,   397,   416,   668,   853,
1172       830,   833,   836,   839,   844,   541,   692,   539,   535,   807,       825,   405,   652,   656,  1423,  1038,  1040,  1042,  1050,  1052,
1173       808,   566,   809,   810,   811,   266,   542,   268,   414,   536,      1055,   618,   846,  1008,   856,   691,   625,   866,   858,   657,
1174       746,    43,    44,    16,    17,    18,    19,    20,    21,   838,       653,   582,  1424,  1024,  1018,  1019,   696,  1020,  1021,   693,
1175       537,    22,    23,    24,    25,    26,   329,   338,   339,   340,       272,   626,   274,   475,  1023,   939,    49,    50,    17,    18,
1176       496,   398,   399,   400,   401,   402,   341,   342,   378,   343,        19,    20,    21,    22,    23,    24,    25,  1054,  1048,  1049,
1177       386,   344,   345,   346,   347,   348,   349,   553,   350,   388,       655,    26,    27,    28,    29,    30,   343,   355,   356,   357,
1178       351,   352,   353,   354,   355,   356,   556,   557,   558,   357,       594,   443,   444,   445,   446,   447,   448,   449,   450,   451,
1179       559,   560,   561,   665,   666,    27,   404,   390,    28       452,   453,   454,   455,   358,   359,   417,   360,  1426,  1427,
1180        1428,   427,   361,   362,   363,   364,   365,   366,   671,   367,
1181         429,   368,   369,   370,   371,   372,   373,   344,   375,   376,
1182         377,   675,   676,   677,   378,   379,   380,   381,   679,   680,
1183         826,   827,    31,   457,   686,   434,    32
1184  };  };
1185    
1186  /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing  /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
1187     STATE-NUM.  */     STATE-NUM.  */
1188  #define YYPACT_NINF -750  #define YYPACT_NINF -1041
1189  static const short int yypact[] =  static const yytype_int16 yypact[] =
1190  {  {
1191        53,  -750,  -750,     7,    -5,    33,    50,     3,    43,   121,        42, -1041, -1041,   126,    57,    66,    97,   110,   188,   118,
1192         0,   104,   150,  -105,  1650,  -750,   -47,   -47,   -47,   -47,       186,   106,   184,   223,    26,  1999, -1041,    16,    16,    16,
1193       -47,   -47,   -47,   -47,   -47,   -47,   -47,   -47,  -750,   187,        16,    16,    16,    16,    16,    16,    16,    16,    16,    16,
1194       206,   193,   209,   194,   229,   222,    76,    -3,   230,   216,        16,    16, -1041,   232,   246,   277,   222,   284,   267,   309,
1195      -750,  -750,  -750,  -750,    31,  -750,  -750,  -750,  -750,  -750,       304,   314,   152,    88,   322,   204, -1041, -1041, -1041, -1041,
1196      -750,  -750,   269,   269,   269,   269,   269,   269,   269,   269,       119, -1041, -1041, -1041, -1041, -1041, -1041, -1041,   279,   279,
1197       269,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,       279,   279,   279,   279,   279,   279,   279, -1041, -1041, -1041,
1198      -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,     -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041,
1199      -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,     -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041,
1200      -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,     -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041,
1201      -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,     -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041,
1202      -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,     -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041,
1203      -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,     -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041,
1204      -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,     -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041,
1205      -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,     -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041,
1206      -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,     -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041,
1207      -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,     -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041,
1208      -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,     -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041,
1209      -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,     -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041,
1210      -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,     -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041,
1211      -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,     -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041,
1212      -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,     -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041,
1213      -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,     -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041,
1214      -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,     -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041,
1215      -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,     -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041,
1216      -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,     -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041,
1217      -750,  -750,  -750,  -750,  -750,  2757,  -750,  -750,  -750,  -750,     -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041,
1218       234,    72,    65,    65,    80,     5,   234,    85,    39,    39,     -1041,  2664, -1041, -1041, -1041, -1041,   200,   104,   312,   312,
1219      1872,   234,  -750,   238,   221,  -750,   223,   240,   225,   227,       315,   189,   189,   132,   165,   200,   115,    93,    93,  2221,
1220       241,   243,  -750,   231,   228,  -750,  -750,  -750,  -750,  -750,       331, -1041,   335,   341,   328, -1041,   330,   350, -1041,   337,
1221      -750,  -750,  -750,  -750,  -750,  -750,   269,  -750,   269,   269,       340,   353,   354, -1041,   345,   367,   348, -1041, -1041, -1041,
1222       269,   269,   269,   269,   269,   269,  -750,  -750,  -750,  -750,     -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041,   279, -1041,
1223      -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,   244,  -750,       279,   279,   279,   279,   279,   279,   279,   279, -1041, -1041,
1224       122,   245,   237,   246,   265,   256,  -750,   -47,  -750,  -750,     -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041,
1225      -750,  -750,  -750,   -47,  -750,   -47,   -47,   -47,   -47,   -47,       362,   363, -1041, -1041,    16,   225,   365,   360,   351,   368,
1226      -750,   -47,  -750,   -47,   -47,   -47,   -47,   -47,   251,   264,       371,   374,   375, -1041,    16, -1041, -1041, -1041, -1041, -1041,
1227      -750,   -47,   -47,  -750,   -47,   -47,   134,   266,   268,  -750,        16, -1041,    16,    16,    16,    16,    16, -1041,    16, -1041,
1228      -750,  -750,  -750,  -750,  -750,  -750,   261,  -750,   -47,   -47,        16,    16,    16,    16,    16, -1041,    16,    16,    16,    16,
1229       -47,   275,   294,   289,  -750,   -47,   -47,   -47,   -47,   -47,        16, -1041,   369, -1041,    16, -1041,    16,   373, -1041,    16,
1230       -47,   278,   292,   293,   281,   288,   290,  -750,  -750,  -750,       359,   378,   377, -1041,    16,    16,    16, -1041,    16,    16,
1231      -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,        16,   266,   383,   394,   410, -1041, -1041, -1041, -1041, -1041,
1232      -750,  -750,  -750,  2757,  1872,  -750,   -47,   286,   291,  -750,     -1041, -1041,    16, -1041,    16,   406, -1041,    16,    16, -1041,
1233      -750,  -750,   285,   297,   305,   316,   323,  -750,   325,   326,        16,    16,   401,   380,   414, -1041,    16,    16,    16,    16,
1234       332,   333,   320,   331,   318,   319,    60,   328,   328,   328,        16,    16,    16,    16,    16,   403,   404,   384,   417,   407,
1235       328,   328,   328,   328,   328,   328,   328,   328,   328,   334,       428,   429, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041,
1236       336,  2757,  2757,   295,   295,   337,   341,   339,   329,    21,     -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041,
1237      2757,   295,   340,   342,   345,    18,   295,   295,   295,   295,     -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041,
1238      2978,   352,   350,   343,   346,   347,   351,  2757,  -750,   295,     -1041, -1041, -1041, -1041,  2664,  2221, -1041, -1041,    16,   430,
1239       354,   348,   356,  -750,   349,   353,   355,   358,   357,   359,       426,   444, -1041, -1041, -1041,   425,   443,   461,   462,   451,
1240       361,   364,   367,   360,   369,   363,   -47,   -47,   -47,   -47,       467, -1041,   470,   468,    98,   469,   473,   474,   471,   408,
1241       -47,   -47,   -47,   -47,   -47,   -47,   -47,   -47,   -47,   -47,       476,   459,   465,   472,   127,   477,   477,   477,   477,   477,
1242       -47,  -750,   370,   371,  1872,  1872,   269,   269,   269,   269,       477,   477,   477,   477,   477,   536,   477,   477,   477,   477,
1243       269,   269,   269,   269,   269,  -750,  -750,   375,   372,   376,       619,   477,   478,   619,   619,   483,   536,   484,   418,   486,
1244       368,  1872,  1872,   374,  -750,   -47,  -750,   -47,  -750,   -47,      2664,  2664,   619,   619,   619,   619,   489,   480,   424,   492,
1245      2757,  -750,  -750,   381,   377,   382,   344,    78,   378,   379,       536,   619,   481,    24,  2664,   619,   536,   493,   495,   500,
1246      -750,   -47,   -47,   -47,   -47,   -47,   -47,   -47,   -47,   -47,       121,   619,   619,   619,   619,   491,   505,   440,  2883,   503,
1247       -47,   -47,   -47,   -47,   -47,   -47,  -750,  2757,  -750,   389,       504,   508,    53,   494,   496,   502,  2664, -1041,   619, -1041,
1248       383,   393,   373,   397,   396,  -750,  -750,   380,  -750,  -750,       510,   498,   512, -1041,   518,   506, -1041,   499,   509,   530,
1249       391,   398,   388,   392,   394,   390,   395,   366,   403,   399,      2221,  2221, -1041, -1041,   531,   532,   528,   534,   525,   537,
1250       404,   295,    37,   295,   295,  2757,   295,  2757,  2757,   295,       523,   548,   538,   546,    16,    16,    16,    16,    16,    16,
1251       295,   295,   295,  2757,  2757,   295,   400,   384,  2757,  2757,        16,    16,    16,    16,    16,    16,    16,    16,   279,   279,
1252       401,   407,   385,   405,  1206,  1428,   408,   295,   176,   295,       279,   279,   279,   279,   279,   279,   279,   563, -1041, -1041,
1253       402,  -750,   386,   409,   410,   406,   412,   413,   295,   295,     -1041,    16,    16,    16,    16, -1041, -1041, -1041,   567,    16,
1254       295,   295,   295,   295,   295,   295,   295,   295,   295,  2757,        16,   568, -1041, -1041,   569,   573,   584,  2221,  2221,    16,
1255       295,  2757,   295,   422,   414,   424,   411,   418,   426,  -750,     -1041, -1041,    16,   585,   581,   580,   591, -1041, -1041, -1041,
1256       416,   420,   434,   387,   439,   436,   437,   435,   425,   429,       582,   586, -1041,    16, -1041,    16, -1041,    16,  2664, -1041,
1257       430,  -750,   421,   442,   -47,  -750,  -750,  -750,  -750,  -750,     -1041, -1041,   594,   592,   599,   600,   167,   610, -1041,    16,
1258      -750,  1872,  2757,   -47,   -47,   -47,  -750,  1872,  2757,   -47,        16,    16,    16,    16,    16,    16,    16,    16,    16,    16,
1259       432,   440,   -47,  3199,   -47,   445,   443,   441,   431,  -750,        16,    16,    16,    16,    16,   625,    16,   606,    16,   279,
1260      -750,   446,   -47,  -750,   -47,  -750,   462,   444,   450,   451,       279, -1041, -1041,   187,    31, -1041, -1041,  2664, -1041,   620,
1261       449,   447,   457,   -47,   -47,   -47,   -47,   -47,   -47,   -47,       622,   616,   624,   631,   647,   653,   654, -1041, -1041,   633,
1262       -47,   -47,   -47,   -47,  3420,   -47,  3641,   -47,   433,   456,     -1041, -1041,   650,   659,   642,   593,  1555,  1777,   648,   655,
1263       467,   470,   463,   464,   475,   476,   472,   480,   494,   485,       651,   652,   663,   598,   665,   660,   658,   668,   619,    75,
1264      -750,   487,  -750,   483,  -750,   516,   519,   295,  2757,   295,       619,   619,  2664,   619,  2664,  2664,   619,   619,   619,   619,
1265       295,   295,  2757,   295,   523,   525,  2757,  2094,   526,   528,      2664,   619,   664,   619,  2664,   619,   619,   604,   619,   619,
1266       530,   529,   532,   295,   295,   531,   533,   534,   477,  -750,       607,   662,   674,   609,  2664,  2664,   619,   619,   666,   671,
1267      -750,   537,   295,   295,  2757,   295,   295,   226,  2757,   295,       677,   615,   669,   675,   619,    98,   619,   673, -1041,   621,
1268       185,  2978,  2978,  2094,  2757,  2094,  2757,   481,   539,   541,       686,   687,   676,   681,   619,   619,   619,   619,   619,   619,
1269       484,   535,   551,  -750,   554,  -750,   538,   546,   542,   544,       619,   619,   619,   619,   619,   619,  2664,   619,  2664,   619,
1270       548,   559,   566,  -750,  1872,   -47,  -750,   -47,  1872,  -750,       682,   619,   690,   619,   301,   416,   279,   683,   692,   685,
1271       549,   556,  3862,  2757,  2757,   269,   269,   588,  -750,  2757,       629,   697,   702,   698,   707, -1041,   712,   700,   710,   711,
1272      -750,   114,    10,  -750,   553,   542,   560,   570,   563,  -750,     -1041, -1041,   656,   718,   716,   717,   709,   719,   708,   670,
1273       -47,   558,   564,   513,   576,   581,  -750,  -750,   -47,  -750,       724,   715, -1041,   706,   728,    16, -1041, -1041, -1041, -1041,
1274      -750,  2757,  -750,  -750,  -750,   575,  -750,  -750,  -750,  -750,     -1041, -1041,  2221,  2664,    16,    16,    16, -1041,  2221,    16,
1275      2757,   -47,   269,   269,  -750,  -750,  -750,  -750,  -750,   588,     -1041, -1041,  2664,    16,    16,   725,    16, -1041,    16,   730,
1276      4083,   588,  4304,   582,   518,   589,   590,   577,   579,   586,       672,   726,   733,    16,  3102,    16,    16, -1041, -1041, -1041,
1277       578,   591,  -750,   574,   592,   580,   595,  2757,  2757,  2757,       678,   739,   731,   737,   727,   679,    16, -1041,    16, -1041,
1278      2757,   583,   584,  2094,  2315,  2536,   154,   173,  2094,   269,       680,   738,   743,   744,   749,   741,    16,    16,    16,    16,
1279       587,   593,   596,   598,   295,   597,   594,   601,   599,  -750,        16,    16,    16,    16,    16,    16,    16,    16,  3321,    16,
1280       295,   585,   295,  2094,  2094,   600,   118,   604,   605,   602,      3540,    16,   753,    16,   751,    16,   279,   279,   279,   691,
1281       603,  -750,   606,   550,   607,   609,  -750,   611,   -47,  2757,       745,   756,   755,   754,   757,   701,   703,   763,   760,   759,
1282      2757,   -47,   610,   608,   588,  -750,  -750,   269,   269,  -750,       761,   758,   774,   766, -1041,   776,   767, -1041,   762, -1041,
1283       269,   613,   612,   614,   618,  -750,   617,   615,   616,   620,     -1041,   765,   764,   619,  2664,   619,   619,   619,  2664,   619,
1284      -750,  -750,   -47,   588,   588,   627,   628,   631,   625,   626,       619,   619,   769,   619,   619,   772,   773,   783,   775,  2664,
1285       645,   635,   629,   115,   552,   646,   632,   633,   619,   269,      2443,    98,   778,   779,   786,   780,   782,   784,   619,   619,
1286       269,   634,   621,  -750,   641,   636,   622,   638,   639,   226,       781,   790,   785,   736, -1041, -1041,   619,   619,  2664,   619,
1287       644,   642,   656,   649,   651,   661,   647,   648,   660,   655,        89,   619,   536,  2664,   619,   440,  2883,  2883,  2443,  2664,
1288       674,    99,   623,   684,   666,   683,   668,   685,  -750,   675,      2443,  2664, -1041,    98,   793,   619,   279,   279,   794,   746,
1289       113,   680,   677,  -750,  -750,   686,   687,   678,   681,   637,       800,   802,   806,   748,   792,   795, -1041,   818, -1041,   803,
1290      -750,   643,   694,   696,   700,    15,   695,   709,   708,   650,       804,   809,   805,   807,   196,   812,   823,   826, -1041,  2221,
1291       711,   652,   713,   653,   714,   707,   704,   659,   706,  -750,        16, -1041,    16,  2221,    16, -1041, -1041,   811,    16, -1041,
1292       715,  -750,   724,   183,   733,   735,   737,   725,   741,   734,     -1041,   813,   810, -1041,   825,  3759,   279,   279,   847, -1041,
1293       736,   748,   750,   738,   752,   744,   202,   746,   740,   739,      2664, -1041, -1041, -1041, -1041, -1041,   821,   805,   807,   229,
1294        64,  -750,  -750,   754,   755,    58,   756,   758,   699,   764,       850,   844, -1041,    16,   840,   236,   798,   854, -1041, -1041,
1295       757,   760,   753,  -750,   772,   769,   777,   774,   776,   780,        16, -1041, -1041,  2664, -1041,   859,   851, -1041, -1041, -1041,
1296       779,   766,   718,   782,   783,   775,   770,   793,   781,   790,     -1041, -1041, -1041, -1041, -1041, -1041,  2664,    16, -1041, -1041,
1297       730,   797,   795,   802,   801,   743,   796,   785,   806,   789,     -1041,   847,  3978,   847,  4197, -1041,   799,    16,   852,   865,
1298       812,   815,   798,   814,   743,    12,   818,   803,   807,   808,       801,   242,   864,   871,   860,   861,   872,   858,   863,   874,
1299       810,   816,   804,   817,   811,   813,   826,   819,   820,   821,     -1041, -1041,   866,   868,   875,   862,   880,  2664,  2664,  2664,
1300       829,   830,   831,   837,   836,   842,   847,   845,   832,   840,      2664,   619,   869,  2664,   870,   883,   879,  2443,  2443,   884,
1301       835,   856,   846,   848,   862,   863,   850,  -750,   851,   853,       885,   889,   877,   876,   619,   891,   892,   890,   878,   619,
1302       805,   868,   809,   870,  -750,   871,   853,   861,   874,   822,       908,   901,   619,  2443,  2443,   905,   619,   902,   914,    67,
1303       877,   865,   869,  -750,  -750,  -750,   879,   880,   864,   859,       910,   906,   923,   924,   931,   920, -1041,   926,   929,   815,
1304       875,  -750,   873,   884,   878,   881,   892,   893,   898,   888,       922,   928,   944, -1041,   934,    16,  2664,  2664,    16, -1041,
1305       896,   902,   908,   903,   895,   852,   900,   897,   917,   920,       932,    16,   933,   936,   935,   847, -1041,   937,   940,   938,
1306       921,  -750,   895,   912,   855,   926,   914,  -750,   918,   858,       941,   948, -1041,   946,   943,   947,   265, -1041,   953,   952,
1307      -750,   915,   911,   866,   916,   922,   909,   858,   923,   924,        16,   847,   847,   951,    16,   949,   961,   959,   950,   958,
1308       935,  -750,   925,   942,   927,   940,   944,   941,  -750,   947,       962,   974,   960,   979,   969,   963,   964,   191,   918,   970,
1309       950,   945,   951,   936,   882,   946,   949,   938,   948,   952,       987,   973,   975,    98,   976,   977,   930,   978,   939,   981,
1310      -750,   953,   958,   956,   954,   962,   963,   968,   965,   971,     -1041,   982,   984,   942,   983,   985,   988, -1041,   536,   991,
1311       960,   957,   955,   959,   964,   961,   966,   967,   973,   972,       619,   993,   996,   994,   989,   945,   997,  1002,   998,  1014,
1312       978,   979,  -750,   980,   982,   983,   969,   974,   975,   977,      1000,  1008,  1003,  1001,  1011,  1019,   193,  1016,   965,  1029,
1313       970,   981,   984,   986,   992,   987,  -750,   993,  -750,   995,      1020,    16,  1022,  1018,  1038,  1023,  1040,  1032, -1041,  1026,
1314       985,   989,  -750,   990,   991,  -750,   994,  -750,  -750,  -750       195,  1031,  1028,  1037, -1041,  1034, -1041,  1041, -1041,  1043,
1315        1036,  1048,  1045,  1033,  1042,   992, -1041,  1055,   999,  1060,
1316        1061,  1063,    61,  1054,  1066,  1069,  1067,  1068,   619,  1070,
1317        1005,  1073,  1012,  1074,  1080,  1015,  1083,  1075,  1071,  1024,
1318        1076,  1072,  1027,  1077, -1041,  1086,  1089,  1081, -1041,  1096,
1319        1087,   302,  1093,  1094,  1095,  1084,  1098,  1091,  1097,  1090,
1320        1105,  1099,    16,  1100,  1108,  1101,  1111,  1102,  1103,   305,
1321        1104,  1107,  1109,   128, -1041,  1110,  1112, -1041,  1106,  1118,
1322       -1041,  1119,  1113,  1114,    96,  1120,  1122,  1047,  1128,  1116,
1323        1121,  1123,  1124, -1041,  1126,   440,  1127,  1115,  1130,  1135,
1324        1133,  1129,  1136,  1143,  1141,  1131,  1050,  1144,  1138,  1132,
1325        1085,  1149,  1146,  1139,  1137,  1125,  1159,  1142,  1152,  1134,
1326        1160,  1158,  1166,  1165,  1140,    28,  1157, -1041,    16,  1153,
1327        1151,  1171,  1154,  1172,    33,  1176,  1161,  1179,  1140,    70,
1328        1178,  1167,  1168,  1184,  1169,  1186,  1145,  1180,  1182,  1183,
1329        1190,  1170,  1188,  1174,  1192,  1199,  1189,  1193, -1041,  1195,
1330        1197,    49,  1201,  1207,  1204,  1210,  1205,  1206,  1212,  1217,
1331        1215,  1200,  1213,  1208,  1219,  1220,  1225,   205,  1211,  1232,
1332        1221,  1233,  1234,  1216, -1041,  1222,  1224,  1173,  1239,  1240,
1333        1175,  1231,  1242,    16, -1041, -1041, -1041, -1041, -1041,  1245,
1334       -1041,  1246,  1224,  1249,  1237,  1250,  1181,  1253,  1241,  1244,
1335       -1041, -1041,  1257,  1185,  1247,  1251,  1263, -1041,  1252,  1261,
1336        1264,  1254,  1255,  1256, -1041,  1258,  1260,  1265,  1266,  1202,
1337        1262,    98,  1271,  1277,  1267,  1279,  1280,  1270,  1273,  1283,
1338        1284,  1285,   138,  1274,  1286,  1275, -1041,  1259,  1278,  1223,
1339        1282,  1276,  1269,  1298,  1281,  1300,  1299,  1287, -1041, -1041,
1340        1278,  1281,  1290,  1236,  1303,  1291, -1041,  1296,  1238,  1295,
1341        1297,  1301,  1302,  1243,  1248, -1041,  1304,  1292,  1268,  1294,
1342        1305, -1041,  1306,  1311,  1312,  1248,  1307,  1308,  1317, -1041,
1343         197,  1310,  1318,  1309, -1041,   216,  1316,  1326,  1313,  1324,
1344        1333,  1332, -1041,  1325,  1321,  1340,  1341,  1331,  1329,  1334,
1345        1335,  1330, -1041,  1336,  1338,  1345,  1337,  1288,  1339,  1343,
1346        1327,  1349,  1342,  1346,  1347, -1041,  1344,  1348,  1351, -1041,
1347        1352,  1355,  1350,  1357,  1359,  1358,  1361,  1364,  1362,  1367,
1348        1374,  1372,  1365,  1363, -1041,  1366,  1368,  1380,  1369,  1370,
1349        1371,  1375,  1373,  1382,  1378,  1376,  1377,  1379, -1041,  1381,
1350       -1041,  1383,  1389,  1391,  1393,  1397, -1041,  1353,  1385,  1398,
1351        1401, -1041, -1041,  1402,  1388,  1392,  1400,  1403,  1408, -1041,
1352        1390,  1404,  1399,  1406,  1415,  1407, -1041,  1410,  1418, -1041,
1353        1422,  1411,  1412, -1041,  1416,  1413,  1414, -1041,  1417,  1429,
1354       -1041, -1041, -1041, -1041
1355  };  };
1356    
1357  /* YYPGOTO[NTERM-NUM].  */  /* YYPGOTO[NTERM-NUM].  */
1358  static const short int yypgoto[] =  static const yytype_int16 yypgoto[] =
1359  {  {
1360      -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,     -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041,
1361      -750,  -750,  -750,  -593,  -750,  -750,  -750,  -750,  -626,  -467,     -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041, -1041,  -720,
1362      -750,  -268,    62,  -750,  -750,  -477,   242,   427,   417,  -749,     -1041, -1041, -1041, -1041, -1041,  -774, -1040, -1041,    25,   173,
1363       147,  -563,   317,   260,    11,   -10,   -14,   298,  -304,  -750,     -1041,  -466,  -690,  -872, -1041,  -936,  -307,  -918,  -860,  -715,
1364       -13,   988,  -750,  -750,  -750,  -750,  -750,  -750,  -750,  -750,      -737,   432,   -59, -1041,  -902,   355,  -636,   464,  -530,   -11,
1365      -750,  -750,  -750,  -750,  -750,  -750,   -23,   762,   763,   765,       -40,   -14,   217,  -248,  -457,   -15,  1405, -1041, -1041, -1041,
1366      -224,   759,   761,  -258,  -257,  -256,   -49,  -750,  -750,   767,     -1041, -1041, -1041, -1041, -1041, -1041, -1041,  -430, -1041, -1041,
1367      -750,   771,  -255,  -750,  -750,   773,   569,  -750,   778,  -750,     -1041, -1041, -1041, -1041, -1041, -1041,   -99,  1177,  1187,  1191,
1368       784,   786,  -253,  -750,  -750,   630,  -750,  -750,  -750,  -750,      -337,  1164,  1194,  1196,  1198,  1203,  1209,  1214,  1218,  1226,
1369      -750,  -750,  -750,  -750,  -750,  -750,   768,  -750,  -750      1227,  -246,  -244,  -242,    47, -1041, -1041,  1228, -1041, -1041,
1370       -1041, -1041,  1230,  -249, -1041, -1041,  1235,  -308, -1041,  1272,
1371       -1041,  1492,  1716,  -241, -1041,    58,   -30,  -247,  1938, -1041,
1372         907, -1041, -1041, -1041,   -37,  1939, -1041,  -252, -1041, -1041,
1373       -1041, -1041, -1041,  1229, -1041, -1041, -1041
1374  };  };
1375    
1376  /* YYTABLE[YYPACT[STATE-NUM]].  What to do in state STATE-NUM.  If  /* YYTABLE[YYPACT[STATE-NUM]].  What to do in state STATE-NUM.  If
1377     positive, shift that token.  If negative, reduce the rule which     positive, shift that token.  If negative, reduce the rule which
1378     number is the opposite.  If zero, do what YYDEFACT says.     number is the opposite.  If zero, do what YYDEFACT says.
1379     If YYTABLE_NINF, syntax error.  */     If YYTABLE_NINF, syntax error.  */
1380  #define YYTABLE_NINF -145  #define YYTABLE_NINF -209
1381  static const short int yytable[] =  static const yytype_int16 yytable[] =
1382  {  {
1383       267,   269,   575,   270,   271,   272,   273,   274,   275,   276,       275,   273,   276,   277,   278,   279,   280,   281,   282,   283,
1384       277,   278,   279,   280,   281,  -144,   684,   361,   364,   362,       284,   285,   286,   287,   288,   289,   290,   830,   319,   319,
1385       365,   408,   409,   410,   849,    37,   851,   531,   532,   291,       319,   319,   319,   319,   319,   319,   319,   692,   868,  1058,
1386       332,    29,    33,    30,   376,  1097,  1044,   292,    34,   546,       374,  1033,   394,   398,   433,   855,  -208,   583,   421,   431,
1387      1017,    38,   307,   307,   307,   307,   307,   307,   307,   307,       395,   399,   469,     1,   470,     2,   471,   318,   320,   321,
1388       307,   547,  1098,  1018,     1,   533,     2,   548,    31,   662,       322,   323,   324,   325,   326,   327,   651,   629,   630,   848,
1389       549,   391,   392,   306,   308,   309,   310,   311,   312,   313,       632,     3,  1010,     4,     5,  1388,  1061,     6,  1063,  1157,
1390       314,   315,   393,   663,     3,    32,     4,     5,   394,   395,      1388,  1006,     7,     8,   647,   702,  1164,     9,    10,    11,
1391         6,   396,   391,  1058,    35,     7,   358,  1053,  1000,   495,       660,    12,  1421,  1422,  1285,   620,   654,    34,  1167,    36,
1392         8,     9,    10,   330,    11,   331,  1059,   332,   359,   394,       703,  1400,  1327,    35,  1168,   823,   633,  1286,   308,   608,
1393      1054,   366,   396,   367,  1055,   333,   381,   624,   328,   289,       609,   610,   611,   612,   613,   614,   615,   616,  1401,   824,
1394       382,   334,   335,   368,   661,   290,   667,   668,   383,   625,       648,  1045,   435,   436,   437,  1067,   661,  1389,   302,  1347,
1395        41,    42,   879,   995,   914,   296,   297,   298,   299,   300,        37,  1046,  1396,   345,   438,   346,   303,   347,   348,    43,
1396       301,   302,   303,   304,   305,   996,   968,  1004,    39,   832,       439,   440,  1348,   441,   422,   349,   340,    38,   423,   391,
1397       969,   936,   695,   841,   933,   934,    36,   937,   970,  1005,       665,   350,   351,    39,   352,    44,   424,   436,    33,  1337,
1398        40,   703,   704,   705,   706,   707,   708,   709,   710,   711,      1261,   401,   666,   402,   593,   352,   403,    41,   667,  1499,
1399       712,   713,   917,   429,   430,   296,   297,   298,   299,   300,      1236,   352,  1338,   404,   439,  1500,  1339,   441,   598,   599,
1400       301,   302,   303,   304,   305,   455,   430,   264,   497,   498,       600,   601,   602,   603,   604,   605,   606,   607,   354,   621,
1401       499,   918,   531,   532,   296,   297,   298,   299,   300,   301,       622,   623,   624,   300,   627,  1044,   420,   426,   347,   301,
1402       302,   303,   304,   305,   842,   843,   296,   516,   517,   518,      1057,   478,   415,   796,   771,  1145,   308,   309,   310,   311,
1403       519,   520,   521,   522,   523,   524,  1034,  1035,   847,   848,       312,   313,   314,   315,   316,   317,   772,    40,   390,    42,
1404       551,   282,   554,   500,   501,   502,   503,   504,   505,   506,      1213,  1161,  1162,   391,  1214,  1252,    45,  1266,  1538,  1139,
1405       507,   508,   509,   510,   511,  1048,  1049,   614,   615,   403,       392,   340,  1215,    46,  1539,   639,  1444,  1253,   642,  1267,
1406       411,   283,   284,   286,  -144,  -144,  -144,   296,   516,   517,      1082,   341,  1445,  1083,   649,   305,  1446,  1543,   659,  1004,
1407       518,   519,   520,   521,   522,   523,   524,   835,   337,   285,       270,   306,   670,  1544,   396,   400,   580,   581,   688,   432,
1408       287,   288,   293,   380,   385,   294,    41,   328,   416,   417,       389,    47,    48,   412,   291,  -208,  -208,  -208,   595,   294,
1409       793,   418,   422,   419,   420,   421,   423,   415,   424,   426,       596,   707,   597,  1100,   495,   496,  1101,    -4,    -4,   292,
1410       425,   432,   428,   431,   908,   433,   819,   911,    -4,    -4,      1106,   580,   581,  1077,   476,   839,  1120,   841,   491,  1121,
1411       296,   297,   298,   299,   300,   301,   302,   303,   304,   305,       491,   491,   491,   491,   491,   491,   491,   491,   308,   309,
1412       434,   435,   449,   450,   456,   458,   427,   457,   427,   427,       310,   311,   312,   313,   314,   315,   316,   317,   678,  1195,
1413       427,   427,   427,   427,   427,   427,   296,   516,   517,   518,       293,   669,  1077,   673,   296,   536,   496,   896,   654,   672,
1414       519,   520,   521,   522,   523,   524,   462,   463,   464,   471,       308,   309,   310,   311,   312,   313,   314,   315,   316,   317,
1415       472,   474,   473,   475,   436,   476,   480,   482,   484,   481,       580,   581,   295,  1313,  1314,   893,  1332,  1333,   297,   494,
1416       437,   265,   438,   439,   440,   441,   442,   483,   443,   485,      1059,  1060,   716,   717,   456,   472,   384,   386,   298,   504,
1417       444,   445,   446,   447,   448,   486,   487,   491,   451,   452,      1292,   299,   304,   382,    47,   505,   387,   506,   507,   508,
1418       488,   453,   454,   489,   490,   492,   493,   495,   512,   494,       509,   510,   340,   511,   479,   512,   513,   514,   515,   516,
1419       513,   527,   528,   529,   543,   459,   460,   461,   530,   545,       480,   517,   518,   519,   520,   521,   481,  1135,   482,   523,
1420       544,   570,   465,   466,   467,   468,   469,   470,   569,   576,      1138,   524,   483,   485,   526,   484,   486,   487,  1141,   530,
1421       574,   578,   571,   577,   572,   623,   583,   573,   584,   579,       531,   532,   488,   533,   534,   535,   489,   490,   492,  1358,
1422       589,   580,   582,   586,   581,   585,   587,   590,   646,   606,       493,   497,   498,   499,   501,   500,   522,   540,   527,   541,
1423       607,   478,   588,   479,   610,   612,   611,   925,   613,   616,       525,   548,   543,   544,   529,   545,   546,   502,   503,   537,
1424       620,   622,   621,   626,   627,   643,   645,   644,   647,   648,       561,   550,   551,   552,   553,   554,   555,   556,   557,   558,
1425       650,   651,   652,   930,   655,   649,   654,   653,   658,   656,       528,   822,   897,   828,   829,   308,   309,   310,   311,   312,
1426       660,   659,   721,   698,   699,   680,   685,   696,   724,   525,       313,   314,   315,   316,   317,   692,   538,   539,   542,   844,
1427       526,   686,   691,   688,   701,   702,   700,   718,   719,   720,       547,   549,   559,   560,   562,   563,  1221,   689,   690,   308,
1428       722,   723,   562,   563,   564,   565,   568,   657,   725,   726,       608,   609,   610,   611,   612,   613,   614,   615,   616,   869,
1429       728,   729,   730,   732,   731,   734,   735,   736,   749,   745,       567,   564,   565,   568,   570,   572,   569,   876,   877,   878,
1430       750,   777,   751,   756,   759,   681,   687,   697,   727,   757,       879,   880,   881,   882,   883,   884,   885,   886,   887,   271,
1431       758,   778,   760,   591,   592,   593,   594,   595,   596,   597,       571,   573,   574,   575,  1025,   576,   895,   577,   339,   578,
1432       598,   599,   600,   601,   602,   603,   604,   605,   761,   779,       579,   584,   585,   586,  1047,   590,   587,   588,   589,   644,
1433       783,   608,   609,   780,   785,   784,   307,   307,   307,   307,       628,   619,   592,   591,   593,   631,   634,   635,   636,   619,
1434       307,   307,   307,   307,   307,   786,   787,   788,   415,   415,       619,   643,   619,   645,   646,   662,   583,   694,   650,   640,
1435       733,   789,   617,   744,   618,   790,   619,   306,   308,   309,       641,   663,   664,   685,   687,   699,   619,   701,   700,   706,
1436       310,   311,   312,   313,   314,   315,   748,   752,   628,   629,       704,   709,   619,   708,   705,   710,   713,   681,   682,   683,
1437       630,   631,   632,   633,   634,   635,   636,   637,   638,   639,       684,   714,   712,   695,   698,   308,   608,   609,   610,   611,
1438       640,   641,   642,   755,   781,   782,   791,   792,   800,   801,       612,   613,   614,   615,   616,   617,   711,   715,   718,   719,
1439       815,   814,   817,   327,   816,   818,   821,   822,   824,   823,       720,   721,   722,   724,   723,   476,   476,   725,   319,   319,
1440       825,   854,   853,   855,   858,   856,   859,   857,   861,   860,       319,   319,   319,   319,   319,   319,   319,   726,   727,   728,
1441       863,   862,   670,   864,   865,   673,   674,   675,   676,   866,       729,   730,   731,   732,   733,   734,   735,   736,   737,   738,
1442       871,   679,   872,   878,   880,   882,   881,   413,   883,   885,       739,   740,   741,   742,   747,   750,   751,   318,   320,   321,
1443       886,   478,   478,   693,   887,   888,   889,   891,   895,   896,       322,   323,   324,   325,   326,   327,   743,   744,   745,   746,
1444       897,   901,   899,   898,   900,   904,   903,   931,   902,   906,       752,   753,   758,   759,   748,   749,   998,   760,   761,   763,
1445       907,   905,   924,   912,   932,   913,   715,   921,   717,   935,       762,   767,   754,   755,   756,   768,   769,   757,   308,   608,
1446       923,   940,   945,   929,   922,   927,   928,   926,   938,   954,       609,   610,   611,   612,   613,   614,   615,   616,   764,   770,
1447       939,   943,   942,   971,   941,   946,   947,   944,   948,   951,       765,  1032,   766,   773,   790,   792,   798,   797,   799,   319,
1448       963,   737,   952,   955,   953,   956,   958,   957,   738,   960,       319,   800,   801,   491,   774,   775,   776,   777,   778,   779,
1449       739,   740,   741,   961,   742,   962,   743,   964,   965,   966,       780,   781,   782,   783,   784,   785,   786,   787,   788,   789,
1450       967,   972,   973,   978,   974,   976,   984,   979,   981,   753,       802,   791,   803,   793,   808,   804,   805,   806,   794,   795,
1451       982,   754,   986,   985,   987,   988,   989,   990,   991,   993,       807,   812,   809,   814,   815,   813,   816,   817,   818,   820,
1452       762,   763,   764,   765,   766,   767,   768,   769,   770,   771,       819,   339,   821,   845,   840,   850,   849,   851,   852,   860,
1453       772,   992,   774,   994,   776,   998,   999,  1000,  1001,  1002,       862,   567,   567,   861,   863,   864,   870,   865,   872,   873,
1454       975,   327,   977,   980,   997,  1003,  1006,  1007,  1014,  1010,       871,   875,   894,   892,   874,   900,   899,   901,   902,   831,
1455      1008,  1011,  1009,  1015,  1016,   795,   796,   797,  1012,   799,       903,   904,   834,   835,   836,   837,   654,   619,   905,   619,
1456      1019,   477,  1020,   813,  1013,  1021,  1023,   812,  1025,  1027,       906,   843,   907,   909,   847,   847,   908,   912,   910,   913,
1457       693,  1022,  1028,  1024,  1026,  1029,  1031,  1033,   827,   829,       914,   915,   857,   859,   917,   911,   916,   919,   920,   921,
1458      1030,   827,   834,   837,  1032,   827,   846,   568,   568,   813,       867,   922,   932,   474,   491,   491,   319,   935,   937,   918,
1459       812,   813,  1036,   812,  1037,   812,  1038,  1039,   514,   515,       938,   936,   943,   944,   945,   951,   946,   942,   947,   950,
1460      1040,  1042,  1041,  1043,  1044,   327,  1046,   540,  1051,  1052,       952,   953,   954,   889,   955,   891,   972,   619,   974,   980,
1461      1045,   867,   868,  1057,   869,   870,  1047,   567,  1050,  1056,       978,   979,   981,   339,   982,   898,   986,   987,   983,   988,
1462      1062,  1060,  1061,  1063,  1066,   307,   307,  1067,  1068,  1064,       984,   990,   985,   989,   991,   692,   992,  1152,   993,   994,
1463      1065,   427,  1069,  1070,  1071,  1072,  1074,   884,  1073,  1075,       997,  1007,   995,   996,  1011,  1013,  1012,  1014,  1028,  1027,
1464      1076,  1079,   327,   327,  1080,   890,   876,   877,  1077,  1082,       923,  1026,  1029,  1030,  1034,  1031,  1075,   924,  1036,   925,
1465      1078,  1083,  1084,  1081,  1085,  1086,  1087,  1090,   892,  1091,       926,   927,  1035,   928,   929,  1037,  1066,  1068,   930,   931,
1466      1089,  1092,   307,   307,  1088,  1093,  1094,  1096,   327,  1099,      1070,   933,  1074,   934,  1071,  1069,  1072,  1073,  1076,  1079,
1467      1095,  1100,  1102,  1101,  1103,  1104,  1105,  1108,   413,   413,      1077,   941,  1080,  1078,  1081,  1084,  1085,  1086,  1092,  1095,
1468      1107,  1109,  1106,   876,   877,  1114,  1111,  1110,  1113,   813,      1094,   948,  1098,   949,   339,   339,   319,   319,   491,  1096,
1469      1115,  1112,  1116,   812,   813,   327,   427,   427,   812,   307,      1099,   956,   957,   958,   959,   960,   961,   962,   963,   964,
1470      1117,  1118,  1119,  1120,  1122,  1123,   829,  1121,   834,   813,       965,   966,   967,  1102,   969,   339,   971,  1103,   973,  1105,
1471       813,  1124,  1126,   812,   812,  1127,  1125,  1130,  1128,  1133,       975,  1108,  1110,  1122,  1111,   976,   977,  1107,  1115,  1118,
1472       920,  1129,  1131,  1135,  1136,  1137,  1132,  1138,  1140,  1146,      1119,  1117,  1123,  1124,  1125,  1126,  1127,  1129,  1151,  1133,
1473      1134,  1141,  1145,  1142,  1143,  1144,  1151,   307,   307,  1148,       694,  1128,  1132,  1134,  1177,  1130,  1131,  1140,  1142,  1150,
1474       427,  1150,   540,  1139,   671,   672,  1147,  1152,  1153,   959,      1156,  1000,  1001,  1002,   339,   847,  1005,   859,  1144,  1009,
1475       677,   678,  1149,  1154,  1155,   683,   683,  1157,   949,   950,      1009,  1143,  1147,  1155,  1148,   694,  1022,  1149,   694,  1153,
1476      1156,   477,   477,  1158,  1160,  1159,  1162,  1163,  1164,   427,       694,  1154,  1158,  1159,  1425,   867,   491,   491,  1163,   566,
1477       427,  1165,  1166,  1161,  1167,   837,  1168,  1169,  1170,  1172,      1165,  1166,  1039,  1041,  1170,  1039,   619,  1051,  1053,  1169,
1478      1171,  1173,  1174,  1178,  1176,  1177,   714,  1175,   716,  1179,      1039,   695,   698,   698,  1022,  1171,  1022,  1172,  1173,  1174,
1479      1181,  1182,  1180,  1183,  1185,  1186,  1187,  1184,  1188,   327,      1178,   859,  1175,  1176,  1179,  1180,  1181,  1191,  1182,  1184,
1480       327,  1189,  1191,  1193,  1192,   327,   327,  1190,  1196,  1200,      1185,  1187,  1196,  1186,  1189,  1197,   319,   319,  1188,  1190,
1481      1201,   327,  1195,  1202,  1194,  1198,  1197,  1203,  1204,  1205,      1192,  1193,  1204,  1201,  1087,  1088,  1194,  1089,  1090,  1091,
1482      1206,  1199,  1207,  1208,  1213,  1209,   820,  1210,  1216,  1211,      1199,  1202,  1203,  1093,   637,   638,  1205,  1207,  1206,  1208,
1483      1215,  1217,  1212,  1218,  1219,  1220,  1214,  1221,  1222,  1223,      1209,  1210,  1211,  1212,  1425,   794,   795,  1216,   658,  1217,
1484      1227,  1230,   327,  1225,   327,  1226,  1224,  1231,  1233,  1228,      1218,  1219,  1228,  1240,  1220,  1222,  1223,  1225,  1104,  1224,
1485      1234,   983,   669,  1235,  1229,   919,  1232,  1236,  1237,  1238,      1227,  1231,   697,  1229,  1232,  1109,  1238,  1233,  1226,  1235,
1486       845,     0,   295,  1239,   552,   694,   370,   371,   406,   372,      1244,  1230,  1237,  1239,  1241,  1243,  1242,  1245,  1246,  1247,
1487       407,     0,   379,     0,     0,   373,     0,   412,     0,     0,      1249,  1248,  1112,  1250,   474,   474,  1251,  1254,  1256,   339,
1488       387,     0,   374,     0,     0,   794,     0,     0,     0,   798,       339,  1257,  1116,  1259,  1255,   339,  1260,   694,   694,   339,
1489       375,   389,     0,   802,     0,     0,     0,     0,     0,     0,      1261,  1262,  1263,  1264,  1265,  1268,  1269,  1270,  1271,  1274,
1490         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,      1275,   339,  1277,   694,   694,  1273,  1276,  1009,  1280,  1272,
1491         0,   831,     0,     0,     0,   840,     0,     0,   567,   567,      1278,  1279,  1282,  1022,  1022,  1284,  1283,  1287,  1281,  1288,
1492         0,   850,   327,   852,     0,   555,   327,     0,     0,     0,      1289,  1291,  1290,  1293,  1294,  1041,  1295,  1297,  1051,  1022,
1493       327,     0,     0,     0,     0,     0,     0,   327,     0,     0,      1022,  1296,  1041,  1298,  1299,   339,  1300,   339,  1301,  1308,
1494         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,      1302,  1305,  1309,  1303,  1304,  1307,  1306,  1311,  1310,  1312,
1495       874,   875,     0,     0,     0,     0,     0,     0,     0,   327,      1315,  1316,  1317,  1322,  1318,  1319,  1183,  1320,  1323,  1321,
1496         0,     0,     0,     0,     0,     0,     0,     0,   327,     0,      1327,  1324,  1326,  1329,  1341,  1331,  1351,  1160,  1360,  1369,
1497         0,     0,     0,     0,     0,     0,     0,     0,   327,     0,      1346,  1328,  1330,  1335,  1334,  1198,  1342,  1336,  1340,  1200,
1498       327,     0,     0,     0,     0,     0,     0,     0,     0,     0,      1343,  1345,  1344,  1349,  1350,  1352,  1353,  1361,  1362,  1354,
1499         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,      1363,  1355,  1365,  1356,  1357,  1359,  1366,  1364,  1367,  1368,
1500         0,     0,   327,   327,     0,     0,     0,     0,     0,     0,      1370,  1371,  1374,  1375,  1373,  1372,  1377,  1376,  1379,  1381,
1501         0,     0,     0,     0,   683,   909,   910,   683,     0,     0,       566,   566,  1380,  1383,  1053,  1384,  1041,  1385,  1386,  1390,
1502         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,      1388,  1392,  1393,  1395,  1394,  1397,   658,  1402,   832,   833,
1503         0,     0,     0,     0,     0,     0,     0,   327,   327,   316,      1399,  1398,  1404,  1403,   838,  1400,  1258,  1406,   842,  1405,
1504        46,    47,   689,     0,    48,    49,    50,   317,   318,   319,      1412,  1414,  1408,  1409,  1378,  1410,   339,  1411,   854,   854,
1505       320,   321,   322,   323,   324,   325,   326,    61,    62,    63,       339,  1413,  1416,  1382,  1415,  1417,  1419,  1418,  1429,  1387,
1506        64,    65,    66,    67,    68,    69,    70,    71,    72,    73,      1430,  1431,   339,  1432,  1407,  1420,  1433,   339,  1434,  1435,
1507        74,    75,    76,    77,    78,    79,    80,    81,    82,    83,      1436,  1437,  1441,  1438,   867,  1439,  1440,  1442,  1443,  1447,
1508        84,    85,    86,    87,    88,    89,    90,    91,    92,    93,       888,  1448,   890,  1449,  1450,  1452,  1453,  1451,  1456,  1457,
1509        94,    95,    96,    97,    98,    99,   100,   101,   102,   103,       339,  1454,  1455,  1459,  1458,  1460,  1462,  1463,  1464,  1465,
1510       104,   105,   106,   107,   108,   109,   110,   111,   112,   113,      1467,  1466,  1468,   339,  1472,  1469,  1470,  1325,  1471,   339,
1511       114,   115,   116,   117,   118,   119,   120,   121,   122,   123,      1473,   339,  1475,  1474,  1477,   694,  1476,  1478,  1509,  1504,
1512       124,   125,   126,   127,   128,   129,   130,   131,   132,   133,      1479,  1486,  1482,  1480,  1489,  1481,  1483,  1485,  1487,  1484,
1513       134,   135,   136,   137,   138,   139,   140,   141,   142,   143,      1490,  1491,  1492,  1493,  1494,  1495,  1496,  1497,  1498,  1503,
1514       144,   145,   146,   147,   148,   149,   150,   151,   152,   153,      1502,   695,  1506,  1501,  1508,  1505,  1507,  1510,  1511,  1512,
1515       154,   155,   156,   157,   158,   159,   160,   161,   162,   163,      1515,  1513,  1517,  1518,  1514,  1516,  1519,  1520,  1521,  1522,
1516       164,   165,   166,   167,   168,   169,   170,   171,   172,   173,      1530,  1528,  1525,  1523,  1533,  1524,  1531,  1526,  1527,  1534,
1517       174,   175,   176,   177,   178,   179,   180,   181,   182,   183,      1537,  1535,  1541,  1391,  1536,  1546,  1548,  1542,  1532,  1540,
1518       184,   185,   186,   187,   188,   189,   190,   191,   192,   193,      1545,  1547,  1549,   339,   339,  1550,  1551,  1529,  1552,  1553,
1519       194,   195,   196,   197,   198,   199,   200,   201,   202,   203,      1554,  1555,  1556,  1559,  1562,  1567,  1557,  1558,  1568,  1560,
1520       204,   205,   206,   207,   208,   209,   210,   211,   212,   213,      1561,  1234,  1573,  1563,  1566,  1565,  1578,  1564,  1571,  1576,
1521       214,   215,   216,   217,   218,   219,   220,   221,   222,   223,      1569,  1579,  1570,  1572,  1581,  1580,  1577,  1582,   999,  1574,
1522       224,   225,   226,   227,   228,   229,   230,   231,   232,   233,      1584,  1575,  1003,  1585,  1583,  1586,  1588,  1587,  1589,  1591,
1523       234,   235,   236,   237,   238,   239,   240,   241,   242,   243,      1592,  1590,  1488,  1015,  1597,  1065,  1593,  1599,  1461,  1596,
1524       244,   245,   246,   247,   248,   249,   250,   251,   252,   253,      1598,  1594,  1604,  1595,  1603,  1600,  1606,  1601,  1605,  1602,
1525       254,   255,   256,   257,   258,   259,   260,   261,   262,   263,      1607,  1610,  1043,  1609,  1611,  1612,  1613,  1056,  1618,  1621,
1526       264,   316,    46,    47,     0,   690,    48,    49,    50,   317,       697,   697,  1614,  1062,  1617,  1064,  1615,  1620,  1622,  1616,
1527       318,   319,   320,   321,   322,   323,   324,   325,   326,    61,      1619,  1625,  1608,  1624,  1623,  1626,  1629,  1627,  1628,  1630,
1528        62,    63,    64,    65,    66,    67,    68,    69,    70,    71,      1631,  1633,   459,  1146,  1632,   307,     0,   674,     0,     0,
1529        72,    73,    74,    75,    76,    77,    78,    79,    80,    81,       406,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1530        82,    83,    84,    85,    86,    87,    88,    89,    90,    91,       407,     0,     0,     0,   408,     0,     0,     0,     0,     0,
1531        92,    93,    94,    95,    96,    97,    98,    99,   100,   101,         0,     0,   460,     0,   461,     0,   462,     0,     0,     0,
1532       102,   103,   104,   105,   106,   107,   108,   109,   110,   111,         0,   463,     0,     0,     0,     0,     0,   464,     0,     0,
1533       112,   113,   114,   115,   116,   117,   118,   119,   120,   121,         0,     0,   465,     0,     0,     0,   466,     0,     0,     0,
1534       122,   123,   124,   125,   126,   127,   128,   129,   130,   131,         0,     0,   418,   409,   467,   468,     0,   473,     0,     0,
1535       132,   133,   134,   135,   136,   137,   138,   139,   140,   141,         0,   428,     0,     0,     0,     0,     0,     0,     0,     0,
1536       142,   143,   144,   145,   146,   147,   148,   149,   150,   151,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1537       152,   153,   154,   155,   156,   157,   158,   159,   160,   161,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1538       162,   163,   164,   165,   166,   167,   168,   169,   170,   171,         0,   854,  1136,  1137,   854,   410,     0,   658,   328,    52,
1539       172,   173,   174,   175,   176,   177,   178,   179,   180,   181,        53,    54,    55,    56,   329,   330,   331,   332,   333,   334,
1540       182,   183,   184,   185,   186,   187,   188,   189,   190,   191,       335,   336,   337,   338,    67,    68,    69,    70,    71,    72,
      192,   193,   194,   195,   196,   197,   198,   199,   200,   201,  
      202,   203,   204,   205,   206,   207,   208,   209,   210,   211,  
      212,   213,   214,   215,   216,   217,   218,   219,   220,   221,  
      222,   223,   224,   225,   226,   227,   228,   229,   230,   231,  
      232,   233,   234,   235,   236,   237,   238,   239,   240,   241,  
      242,   243,   244,   245,   246,   247,   248,   249,   250,   251,  
      252,   253,   254,   255,   256,   257,   258,   259,   260,   261,  
      262,   263,   264,    45,    46,    47,     0,     0,    48,    49,  
       50,    51,    52,    53,    54,    55,    56,    57,    58,    59,  
       60,    61,    62,    63,    64,    65,    66,    67,    68,    69,  
       70,    71,    72,    73,    74,    75,    76,    77,    78,    79,  
       80,    81,    82,    83,    84,    85,    86,    87,    88,    89,  
       90,    91,    92,    93,    94,    95,    96,    97,    98,    99,  
      100,   101,   102,   103,   104,   105,   106,   107,   108,   109,  
      110,   111,   112,   113,   114,   115,   116,   117,   118,   119,  
      120,   121,   122,   123,   124,   125,   126,   127,   128,   129,  
      130,   131,   132,   133,   134,   135,   136,   137,   138,   139,  
      140,   141,   142,   143,   144,   145,   146,   147,   148,   149,  
      150,   151,   152,   153,   154,   155,   156,   157,   158,   159,  
      160,   161,   162,   163,   164,   165,   166,   167,   168,   169,  
      170,   171,   172,   173,   174,   175,   176,   177,   178,   179,  
      180,   181,   182,   183,   184,   185,   186,   187,   188,   189,  
      190,   191,   192,   193,   194,   195,   196,   197,   198,   199,  
      200,   201,   202,   203,   204,   205,   206,   207,   208,   209,  
      210,   211,   212,   213,   214,   215,   216,   217,   218,   219,  
      220,   221,   222,   223,   224,   225,   226,   227,   228,   229,  
      230,   231,   232,   233,   234,   235,   236,   237,   238,   239,  
      240,   241,   242,   243,   244,   245,   246,   247,   248,   249,  
      250,   251,   252,   253,   254,   255,   256,   257,   258,   259,  
      260,   261,   262,   263,   264,   316,    46,    47,     0,     0,  
       48,    49,    50,   317,   318,   319,   320,   321,   322,   323,  
      324,   325,   326,    61,    62,    63,    64,    65,    66,    67,  
       68,    69,    70,    71,    72,    73,    74,    75,    76,    77,  
       78,    79,    80,    81,    82,    83,    84,    85,    86,    87,  
       88,    89,    90,    91,    92,    93,    94,    95,    96,    97,  
       98,    99,   100,   101,   102,   103,   104,   105,   106,   107,  
      108,   109,   110,   111,   112,   113,   114,   115,   116,   117,  
      118,   119,   120,   121,   122,   123,   124,   125,   126,   127,  
      128,   129,   130,   131,   132,   133,   134,   135,   136,   137,  
      138,   139,   140,   141,   142,   143,   144,   145,   146,   147,  
      148,   149,   150,   151,   152,   153,   154,   155,   156,   157,  
      158,   159,   160,   161,   162,   163,   164,   165,   166,   167,  
      168,   169,   170,   171,   172,   173,   174,   175,   176,   177,  
      178,   179,   180,   181,   182,   183,   184,   185,   186,   187,  
      188,   189,   190,   191,   192,   193,   194,   195,   196,   197,  
      198,   199,   200,   201,   202,   203,   204,   205,   206,   207,  
      208,   209,   210,   211,   212,   213,   214,   215,   216,   217,  
      218,   219,   220,   221,   222,   223,   224,   225,   226,   227,  
      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,  
      238,   239,   240,   241,   242,   243,   244,   245,   246,   247,  
      248,   249,   250,   251,   252,   253,   254,   255,   256,   257,  
      258,   259,   260,   261,   262,   263,   264,   316,    46,    47,  
      803,   804,    48,   805,   806,    51,    52,    53,    54,    55,  
       56,    57,    58,    59,    60,    61,    62,    63,    64,    65,  
       66,    67,    68,    69,    70,    71,    72,    73,    74,    75,  
       76,    77,    78,    79,    80,    81,    82,    83,    84,    85,  
       86,    87,    88,    89,    90,    91,    92,    93,    94,    95,  
       96,    97,    98,    99,   100,   101,   102,   103,   104,   105,  
      106,   107,   108,   109,   110,   111,   112,   113,   114,   115,  
      116,   117,   118,   119,   120,   121,   122,   123,   124,   125,  
      126,   127,   128,   129,   130,   131,   132,   133,   134,   135,  
      136,   137,   138,   139,   140,   141,   142,   143,   144,   145,  
      146,   147,   148,   149,   150,   151,   152,   153,   154,   155,  
      156,   157,   158,   159,   160,   161,   162,   163,   164,   165,  
      166,   167,   168,   169,   170,   171,   172,   173,   174,   175,  
      176,   177,   178,   179,   180,   181,   182,   183,   184,   185,  
      186,   187,   188,   189,   190,   191,   192,   193,   194,   195,  
      196,   197,   198,   199,   200,   201,   202,   203,   204,   205,  
      206,   207,   208,   209,   210,   211,   212,   213,   214,   215,  
      216,   217,   218,   219,   220,   221,   222,   223,   224,   225,  
      226,   227,   228,   229,   230,   231,   232,   233,   234,   235,  
      236,   237,   238,   239,   240,   241,   242,   243,   244,   245,  
      246,   247,   248,   249,   250,   251,   252,   253,   254,   255,  
      256,   257,   258,   259,   260,   261,   262,   263,   316,    46,  
       47,   915,     0,    48,    49,    50,   317,   318,   319,   320,  
      321,   322,   323,   324,   325,   326,    61,    62,    63,    64,  
       65,    66,    67,    68,    69,    70,    71,    72,    73,    74,  
       75,    76,    77,    78,    79,    80,    81,    82,    83,    84,  
       85,    86,    87,    88,    89,    90,    91,    92,    93,    94,  
       95,    96,    97,    98,    99,   100,   101,   102,   103,   104,  
      105,   106,   107,   108,   109,   110,   111,   112,   113,   114,  
      115,   116,   117,   118,   119,   120,   121,   122,   123,   124,  
      125,   126,   127,   128,   129,   130,   131,   132,   133,   134,  
      135,   136,   137,   138,   139,   140,   141,   142,   143,   144,  
      145,   146,   147,   148,   149,   150,   151,   152,   153,   154,  
      155,   156,   157,   158,   159,   160,   161,   162,   163,   164,  
      165,   166,   167,   168,   169,   170,   171,   172,   173,   174,  
      175,   176,   177,   178,   179,   180,   181,   182,   183,   184,  
      185,   186,   187,   188,   189,   190,   191,   192,   193,   194,  
      195,   196,   197,   198,   199,   200,   201,   202,   203,   204,  
      205,   206,   207,   208,   209,   210,   211,   212,   213,   214,  
      215,   216,   217,   218,   219,   220,   221,   222,   223,   224,  
      225,   226,   227,   228,   229,   230,   231,   232,   233,   234,  
      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,  
      245,   246,   247,   248,   249,   250,   251,   252,   253,   254,  
      255,   256,   257,   258,   259,   260,   261,   262,   263,   316,  
       46,    47,     0,   916,    48,    49,    50,   317,   318,   319,  
      320,   321,   322,   323,   324,   325,   326,    61,    62,    63,  
       64,    65,    66,    67,    68,    69,    70,    71,    72,    73,  
       74,    75,    76,    77,    78,    79,    80,    81,    82,    83,  
       84,    85,    86,    87,    88,    89,    90,    91,    92,    93,  
       94,    95,    96,    97,    98,    99,   100,   101,   102,   103,  
      104,   105,   106,   107,   108,   109,   110,   111,   112,   113,  
      114,   115,   116,   117,   118,   119,   120,   121,   122,   123,  
      124,   125,   126,   127,   128,   129,   130,   131,   132,   133,  
      134,   135,   136,   137,   138,   139,   140,   141,   142,   143,  
      144,   145,   146,   147,   148,   149,   150,   151,   152,   153,  
      154,   155,   156,   157,   158,   159,   160,   161,   162,   163,  
      164,   165,   166,   167,   168,   169,   170,   171,   172,   173,  
      174,   175,   176,   177,   178,   179,   180,   181,   182,   183,  
      184,   185,   186,   187,   188,   189,   190,   191,   192,   193,  
      194,   195,   196,   197,   198,   199,   200,   201,   202,   203,  
      204,   205,   206,   207,   208,   209,   210,   211,   212,   213,  
      214,   215,   216,   217,   218,   219,   220,   221,   222,   223,  
      224,   225,   226,   227,   228,   229,   230,   231,   232,   233,  
      234,   235,   236,   237,   238,   239,   240,   241,   242,   243,  
      244,   245,   246,   247,   248,   249,   250,   251,   252,   253,  
      254,   255,   256,   257,   258,   259,   260,   261,   262,   263,  
      316,    46,    47,     0,     0,    48,    49,    50,   317,   318,  
      319,   320,   321,   322,   323,   324,   325,   326,    61,    62,  
       63,    64,    65,    66,    67,    68,    69,    70,    71,    72,  
1541        73,    74,    75,    76,    77,    78,    79,    80,    81,    82,        73,    74,    75,    76,    77,    78,    79,    80,    81,    82,
1542        83,    84,    85,    86,    87,    88,    89,    90,    91,    92,        83,    84,    85,    86,    87,    88,    89,    90,    91,    92,
1543        93,    94,    95,    96,    97,    98,    99,   100,   101,   102,        93,    94,    95,    96,    97,    98,    99,   100,   101,   102,
# Line 1341  static const short int yytable[] = Line 1557  static const short int yytable[] =
1557       233,   234,   235,   236,   237,   238,   239,   240,   241,   242,       233,   234,   235,   236,   237,   238,   239,   240,   241,   242,
1558       243,   244,   245,   246,   247,   248,   249,   250,   251,   252,       243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
1559       253,   254,   255,   256,   257,   258,   259,   260,   261,   262,       253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
1560       263,   316,    46,    47,     0,     0,    48,    49,    50,    51,       263,   264,   265,   266,   267,   268,   269,   810,   430,   270,
1561        52,    53,    54,    55,    56,    57,    58,    59,    60,    61,       328,    52,    53,    54,    55,    56,   329,   330,   331,   332,
1562        62,    63,    64,    65,    66,    67,    68,    69,    70,    71,       333,   334,   335,   336,   337,   338,    67,    68,    69,    70,
       72,    73,    74,    75,    76,    77,    78,    79,    80,    81,  
       82,    83,    84,    85,    86,    87,    88,    89,    90,    91,  
       92,    93,    94,    95,    96,    97,    98,    99,   100,   101,  
      102,   103,   104,   105,   106,   107,   108,   109,   110,   111,  
      112,   113,   114,   115,   116,   117,   118,   119,   120,   121,  
      122,   123,   124,   125,   126,   127,   128,   129,   130,   131,  
      132,   133,   134,   135,   136,   137,   138,   139,   140,   141,  
      142,   143,   144,   145,   146,   147,   148,   149,   150,   151,  
      152,   153,   154,   155,   156,   157,   158,   159,   160,   161,  
      162,   163,   164,   165,   166,   167,   168,   169,   170,   171,  
      172,   173,   174,   175,   176,   177,   178,   179,   180,   181,  
      182,   183,   184,   185,   186,   187,   188,   189,   190,   191,  
      192,   193,   194,   195,   196,   197,   198,   199,   200,   201,  
      202,   203,   204,   205,   206,   207,   208,   209,   210,   211,  
      212,   213,   214,   215,   216,   217,   218,   219,   220,   221,  
      222,   223,   224,   225,   226,   227,   228,   229,   230,   231,  
      232,   233,   234,   235,   236,   237,   238,   239,   240,   241,  
      242,   243,   244,   245,   246,   247,   248,   249,   250,   251,  
      252,   253,   254,   255,   256,   257,   258,   259,   260,   261,  
      262,   263,   316,   747,    47,     0,     0,    48,    49,    50,  
      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,  
       61,    62,    63,    64,    65,    66,    67,    68,    69,    70,  
1563        71,    72,    73,    74,    75,    76,    77,    78,    79,    80,        71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
1564        81,    82,    83,    84,    85,    86,    87,    88,    89,    90,        81,    82,    83,    84,    85,    86,    87,    88,    89,    90,
1565        91,    92,    93,    94,    95,    96,    97,    98,    99,   100,        91,    92,    93,    94,    95,    96,    97,    98,    99,   100,
# Line 1385  static const short int yytable[] = Line 1579  static const short int yytable[] =
1579       231,   232,   233,   234,   235,   236,   237,   238,   239,   240,       231,   232,   233,   234,   235,   236,   237,   238,   239,   240,
1580       241,   242,   243,   244,   245,   246,   247,   248,   249,   250,       241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
1581       251,   252,   253,   254,   255,   256,   257,   258,   259,   260,       251,   252,   253,   254,   255,   256,   257,   258,   259,   260,
1582       261,   262,   263,   316,   773,    47,     0,     0,    48,    49,       261,   262,   263,   264,   265,   266,   267,   268,   269,   411,
1583        50,   317,   318,   319,   320,   321,   322,   323,   324,   325,       811,   270,    51,    52,    53,    54,    55,    56,    57,    58,
1584       326,    61,    62,    63,    64,    65,    66,    67,    68,    69,        59,    60,    61,    62,    63,    64,    65,    66,    67,    68,
       70,    71,    72,    73,    74,    75,    76,    77,    78,    79,  
       80,    81,    82,    83,    84,    85,    86,    87,    88,    89,  
       90,    91,    92,    93,    94,    95,    96,    97,    98,    99,  
      100,   101,   102,   103,   104,   105,   106,   107,   108,   109,  
      110,   111,   112,   113,   114,   115,   116,   117,   118,   119,  
      120,   121,   122,   123,   124,   125,   126,   127,   128,   129,  
      130,   131,   132,   133,   134,   135,   136,   137,   138,   139,  
      140,   141,   142,   143,   144,   145,   146,   147,   148,   149,  
      150,   151,   152,   153,   154,   155,   156,   157,   158,   159,  
      160,   161,   162,   163,   164,   165,   166,   167,   168,   169,  
      170,   171,   172,   173,   174,   175,   176,   177,   178,   179,  
      180,   181,   182,   183,   184,   185,   186,   187,   188,   189,  
      190,   191,   192,   193,   194,   195,   196,   197,   198,   199,  
      200,   201,   202,   203,   204,   205,   206,   207,   208,   209,  
      210,   211,   212,   213,   214,   215,   216,   217,   218,   219,  
      220,   221,   222,   223,   224,   225,   226,   227,   228,   229,  
      230,   231,   232,   233,   234,   235,   236,   237,   238,   239,  
      240,   241,   242,   243,   244,   245,   246,   247,   248,   249,  
      250,   251,   252,   253,   254,   255,   256,   257,   258,   259,  
      260,   261,   262,   263,   316,   775,    47,     0,     0,    48,  
       49,    50,   317,   318,   319,   320,   321,   322,   323,   324,  
      325,   326,    61,    62,    63,    64,    65,    66,    67,    68,  
1585        69,    70,    71,    72,    73,    74,    75,    76,    77,    78,        69,    70,    71,    72,    73,    74,    75,    76,    77,    78,
1586        79,    80,    81,    82,    83,    84,    85,    86,    87,    88,        79,    80,    81,    82,    83,    84,    85,    86,    87,    88,
1587        89,    90,    91,    92,    93,    94,    95,    96,    97,    98,        89,    90,    91,    92,    93,    94,    95,    96,    97,    98,
# Line 1429  static const short int yytable[] = Line 1601  static const short int yytable[] =
1601       229,   230,   231,   232,   233,   234,   235,   236,   237,   238,       229,   230,   231,   232,   233,   234,   235,   236,   237,   238,
1602       239,   240,   241,   242,   243,   244,   245,   246,   247,   248,       239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
1603       249,   250,   251,   252,   253,   254,   255,   256,   257,   258,       249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
1604       259,   260,   261,   262,   263,   316,   873,    47,     0,     0,       259,   260,   261,   262,   263,   264,   265,   266,   267,   268,
1605        48,    49,    50,   317,   318,   319,   320,   321,   322,   323,       269,   413,   414,   270,   328,    52,    53,    54,    55,    56,
1606       324,   325,   326,    61,    62,    63,    64,    65,    66,    67,       329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
       68,    69,    70,    71,    72,    73,    74,    75,    76,    77,  
       78,    79,    80,    81,    82,    83,    84,    85,    86,    87,  
       88,    89,    90,    91,    92,    93,    94,    95,    96,    97,  
       98,    99,   100,   101,   102,   103,   104,   105,   106,   107,  
      108,   109,   110,   111,   112,   113,   114,   115,   116,   117,  
      118,   119,   120,   121,   122,   123,   124,   125,   126,   127,  
      128,   129,   130,   131,   132,   133,   134,   135,   136,   137,  
      138,   139,   140,   141,   142,   143,   144,   145,   146,   147,  
      148,   149,   150,   151,   152,   153,   154,   155,   156,   157,  
      158,   159,   160,   161,   162,   163,   164,   165,   166,   167,  
      168,   169,   170,   171,   172,   173,   174,   175,   176,   177,  
      178,   179,   180,   181,   182,   183,   184,   185,   186,   187,  
      188,   189,   190,   191,   192,   193,   194,   195,   196,   197,  
      198,   199,   200,   201,   202,   203,   204,   205,   206,   207,  
      208,   209,   210,   211,   212,   213,   214,   215,   216,   217,  
      218,   219,   220,   221,   222,   223,   224,   225,   226,   227,  
      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,  
      238,   239,   240,   241,   242,   243,   244,   245,   246,   247,  
      248,   249,   250,   251,   252,   253,   254,   255,   256,   257,  
      258,   259,   260,   261,   262,   263,   316,   893,    47,     0,  
        0,    48,    49,    50,   317,   318,   319,   320,   321,   322,  
      323,   324,   325,   326,    61,    62,    63,    64,    65,    66,  
1607        67,    68,    69,    70,    71,    72,    73,    74,    75,    76,        67,    68,    69,    70,    71,    72,    73,    74,    75,    76,
1608        77,    78,    79,    80,    81,    82,    83,    84,    85,    86,        77,    78,    79,    80,    81,    82,    83,    84,    85,    86,
1609        87,    88,    89,    90,    91,    92,    93,    94,    95,    96,        87,    88,    89,    90,    91,    92,    93,    94,    95,    96,
# Line 1473  static const short int yytable[] = Line 1623  static const short int yytable[] =
1623       227,   228,   229,   230,   231,   232,   233,   234,   235,   236,       227,   228,   229,   230,   231,   232,   233,   234,   235,   236,
1624       237,   238,   239,   240,   241,   242,   243,   244,   245,   246,       237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
1625       247,   248,   249,   250,   251,   252,   253,   254,   255,   256,       247,   248,   249,   250,   251,   252,   253,   254,   255,   256,
1626       257,   258,   259,   260,   261,   262,   263,   316,   894,    47,       257,   258,   259,   260,   261,   262,   263,   264,   265,   266,
1627         0,     0,    48,    49,    50,   317,   318,   319,   320,   321,       267,   268,   269,     0,     0,   270,   328,    52,    53,    54,
1628       322,   323,   324,   325,   326,    61,    62,    63,    64,    65,      1016,  1017,    57,    58,    59,    60,    61,    62,    63,    64,
1629        66,    67,    68,    69,    70,    71,    72,    73,    74,    75,        65,    66,    67,    68,    69,    70,    71,    72,    73,    74,
1630          75,    76,    77,    78,    79,    80,    81,    82,    83,    84,
1631          85,    86,    87,    88,    89,    90,    91,    92,    93,    94,
1632          95,    96,    97,    98,    99,   100,   101,   102,   103,   104,
1633         105,   106,   107,   108,   109,   110,   111,   112,   113,   114,
1634         115,   116,   117,   118,   119,   120,   121,   122,   123,   124,
1635         125,   126,   127,   128,   129,   130,   131,   132,   133,   134,
1636         135,   136,   137,   138,   139,   140,   141,   142,   143,   144,
1637         145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
1638         155,   156,   157,   158,   159,   160,   161,   162,   163,   164,
1639         165,   166,   167,   168,   169,   170,   171,   172,   173,   174,
1640         175,   176,   177,   178,   179,   180,   181,   182,   183,   184,
1641         185,   186,   187,   188,   189,   190,   191,   192,   193,   194,
1642         195,   196,   197,   198,   199,   200,   201,   202,   203,   204,
1643         205,   206,   207,   208,   209,   210,   211,   212,   213,   214,
1644         215,   216,   217,   218,   219,   220,   221,   222,   223,   224,
1645         225,   226,   227,   228,   229,   230,   231,   232,   233,   234,
1646         235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
1647         245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
1648         255,   256,   257,   258,   259,   260,   261,   262,   263,   264,
1649         265,   266,   267,   268,   269,   580,   581,   328,    52,    53,
1650          54,    55,    56,   329,   330,   331,   332,   333,   334,   335,
1651         336,   337,   338,    67,    68,    69,    70,    71,    72,    73,
1652          74,    75,    76,    77,    78,    79,    80,    81,    82,    83,
1653          84,    85,    86,    87,    88,    89,    90,    91,    92,    93,
1654          94,    95,    96,    97,    98,    99,   100,   101,   102,   103,
1655         104,   105,   106,   107,   108,   109,   110,   111,   112,   113,
1656         114,   115,   116,   117,   118,   119,   120,   121,   122,   123,
1657         124,   125,   126,   127,   128,   129,   130,   131,   132,   133,
1658         134,   135,   136,   137,   138,   139,   140,   141,   142,   143,
1659         144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
1660         154,   155,   156,   157,   158,   159,   160,   161,   162,   163,
1661         164,   165,   166,   167,   168,   169,   170,   171,   172,   173,
1662         174,   175,   176,   177,   178,   179,   180,   181,   182,   183,
1663         184,   185,   186,   187,   188,   189,   190,   191,   192,   193,
1664         194,   195,   196,   197,   198,   199,   200,   201,   202,   203,
1665         204,   205,   206,   207,   208,   209,   210,   211,   212,   213,
1666         214,   215,   216,   217,   218,   219,   220,   221,   222,   223,
1667         224,   225,   226,   227,   228,   229,   230,   231,   232,   233,
1668         234,   235,   236,   237,   238,   239,   240,   241,   242,   243,
1669         244,   245,   246,   247,   248,   249,   250,   251,   252,   253,
1670         254,   255,   256,   257,   258,   259,   260,   261,   262,   263,
1671         264,   265,   266,   267,   268,   269,   328,    52,    53,    54,
1672          55,    56,    57,    58,    59,    60,    61,    62,    63,    64,
1673          65,    66,    67,    68,    69,    70,    71,    72,    73,    74,
1674          75,    76,    77,    78,    79,    80,    81,    82,    83,    84,
1675          85,    86,    87,    88,    89,    90,    91,    92,    93,    94,
1676          95,    96,    97,    98,    99,   100,   101,   102,   103,   104,
1677         105,   106,   107,   108,   109,   110,   111,   112,   113,   114,
1678         115,   116,   117,   118,   119,   120,   121,   122,   123,   124,
1679         125,   126,   127,   128,   129,   130,   131,   132,   133,   134,
1680         135,   136,   137,   138,   139,   140,   141,   142,   143,   144,
1681         145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
1682         155,   156,   157,   158,   159,   160,   161,   162,   163,   164,
1683         165,   166,   167,   168,   169,   170,   171,   172,   173,   174,
1684         175,   176,   177,   178,   179,   180,   181,   182,   183,   184,
1685         185,   186,   187,   188,   189,   190,   191,   192,   193,   194,
1686         195,   196,   197,   198,   199,   200,   201,   202,   203,   204,
1687         205,   206,   207,   208,   209,   210,   211,   212,   213,   214,
1688         215,   216,   217,   218,   219,   220,   221,   222,   223,   224,
1689         225,   226,   227,   228,   229,   230,   231,   232,   233,   234,
1690         235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
1691         245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
1692         255,   256,   257,   258,   259,   260,   261,   262,   263,   264,
1693         265,   266,   267,   268,   269,   328,   940,    53,    54,    55,
1694          56,   329,   330,   331,   332,   333,   334,   335,   336,   337,
1695         338,    67,    68,    69,    70,    71,    72,    73,    74,    75,
1696        76,    77,    78,    79,    80,    81,    82,    83,    84,    85,        76,    77,    78,    79,    80,    81,    82,    83,    84,    85,
1697        86,    87,    88,    89,    90,    91,    92,    93,    94,    95,        86,    87,    88,    89,    90,    91,    92,    93,    94,    95,
1698        96,    97,    98,    99,   100,   101,   102,   103,   104,   105,        96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
# Line 1495  static const short int yytable[] = Line 1711  static const short int yytable[] =
1711       226,   227,   228,   229,   230,   231,   232,   233,   234,   235,       226,   227,   228,   229,   230,   231,   232,   233,   234,   235,
1712       236,   237,   238,   239,   240,   241,   242,   243,   244,   245,       236,   237,   238,   239,   240,   241,   242,   243,   244,   245,
1713       246,   247,   248,   249,   250,   251,   252,   253,   254,   255,       246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
1714       256,   257,   258,   259,   260,   261,   262,   263       256,   257,   258,   259,   260,   261,   262,   263,   264,   265,
1715  };       266,   267,   268,   269,   328,   968,    53,    54,    55,    56,
1716         329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
1717  static const short int yycheck[] =        67,    68,    69,    70,    71,    72,    73,    74,    75,    76,
1718  {        77,    78,    79,    80,    81,    82,    83,    84,    85,    86,
1719        14,    14,   479,    16,    17,    18,    19,    20,    21,    22,        87,    88,    89,    90,    91,    92,    93,    94,    95,    96,
1720        23,    24,    25,    26,    27,     5,   609,   272,   273,   272,        97,    98,    99,   100,   101,   102,   103,   104,   105,   106,
1721       273,   279,   279,   279,   773,    25,   775,     6,     7,    32,       107,   108,   109,   110,   111,   112,   113,   114,   115,   116,
1722        25,    24,    29,    38,    29,    23,    24,    40,    35,    21,       117,   118,   119,   120,   121,   122,   123,   124,   125,   126,
1723        25,    41,    52,    53,    54,    55,    56,    57,    58,    59,       127,   128,   129,   130,   131,   132,   133,   134,   135,   136,
1724        60,    33,    40,    38,     1,    34,     3,    39,    25,    22,       137,   138,   139,   140,   141,   142,   143,   144,   145,   146,
1725        42,    22,    23,    52,    53,    54,    55,    56,    57,    58,       147,   148,   149,   150,   151,   152,   153,   154,   155,   156,
1726        59,    60,    33,    36,    21,    25,    23,    24,    39,    40,       157,   158,   159,   160,   161,   162,   163,   164,   165,   166,
1727        27,    42,    22,    25,    41,    32,    21,    23,    24,    29,       167,   168,   169,   170,   171,   172,   173,   174,   175,   176,
1728        37,    38,    39,    21,    41,    23,    38,    25,    33,    39,       177,   178,   179,   180,   181,   182,   183,   184,   185,   186,
1729        36,    21,    42,    23,    40,    33,    21,    29,    23,    33,       187,   188,   189,   190,   191,   192,   193,   194,   195,   196,
1730        25,    39,    40,    33,   591,    39,   593,   594,    33,    41,       197,   198,   199,   200,   201,   202,   203,   204,   205,   206,
1731       225,   226,     8,    24,   873,    11,    12,    13,    14,    15,       207,   208,   209,   210,   211,   212,   213,   214,   215,   216,
1732        16,    17,    18,    19,    20,    36,    21,    24,    34,   765,       217,   218,   219,   220,   221,   222,   223,   224,   225,   226,
1733        25,    23,   619,   769,   893,   894,    25,    29,    33,    36,       227,   228,   229,   230,   231,   232,   233,   234,   235,   236,
1734         0,   628,   629,   630,   631,   632,   633,   634,   635,   636,       237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
1735       637,   638,     8,    41,    42,    11,    12,    13,    14,    15,       247,   248,   249,   250,   251,   252,   253,   254,   255,   256,
1736        16,    17,    18,    19,    20,    41,    42,   224,   436,   436,       257,   258,   259,   260,   261,   262,   263,   264,   265,   266,
1737       436,     8,     6,     7,    11,    12,    13,    14,    15,    16,       267,   268,   269,   328,   970,    53,    54,    55,    56,   329,
1738        17,    18,    19,    20,     9,    10,    11,    12,    13,    14,       330,   331,   332,   333,   334,   335,   336,   337,   338,    67,
       15,    16,    17,    18,    19,    20,    23,    24,   771,   772,  
      465,    24,   465,   437,   438,   439,   440,   441,   442,   443,  
      444,   445,   446,   447,   448,    23,    24,   531,   532,   278,  
      279,    25,    39,    39,   224,   225,   226,    11,    12,    13,  
       14,    15,    16,    17,    18,    19,    20,    21,   271,    40,  
       21,    29,    22,   276,   277,    39,   225,    23,   281,    21,  
      737,    40,    35,    40,    24,    40,    25,   280,    25,    41,  
       39,    34,    28,    28,   867,    29,   753,   870,   225,   226,  
       11,    12,    13,    14,    15,    16,    17,    18,    19,    20,  
       25,    35,    41,    29,    28,    34,   306,    29,   308,   309,  
      310,   311,   312,   313,   314,   315,    11,    12,    13,    14,  
       15,    16,    17,    18,    19,    20,    41,    23,    29,    41,  
       28,    40,    29,    35,   337,    35,    40,    42,    23,    38,  
      343,    14,   345,   346,   347,   348,   349,    40,   351,    23,  
      353,   354,   355,   356,   357,    22,    21,    27,   361,   362,  
       24,   364,   365,    21,    21,    24,    38,    29,    24,    40,  
       24,    24,    21,    24,    24,   378,   379,   380,    39,    24,  
       28,    21,   385,   386,   387,   388,   389,   390,    26,    25,  
       29,    25,    39,    35,    38,    41,    29,    40,    29,    40,  
       21,    38,    34,    29,    39,    34,    29,    34,    25,    29,  
       29,   414,    42,   416,    29,    29,    34,   884,    40,    35,  
       29,    29,    35,    35,    35,    26,    23,    34,    21,    23,  
       29,    23,    34,   890,    34,    45,    32,    35,    25,    34,  
       26,    32,    21,    24,    24,    35,    35,    35,    22,   453,  
      454,    34,    34,    38,    32,    32,    40,    25,    34,    25,  
       32,    25,   466,   467,   468,   469,   470,    91,    38,    25,  
       21,    25,    25,    38,    29,    35,    45,    25,    25,    29,  
       29,    38,    41,    29,    25,    91,    91,    91,    91,    29,  
       29,    25,    35,   496,   497,   498,   499,   500,   501,   502,  
      503,   504,   505,   506,   507,   508,   509,   510,    41,    32,  
       25,   514,   515,    33,    32,    29,   516,   517,   518,   519,  
      520,   521,   522,   523,   524,    35,    22,    32,   531,   532,  
       91,    34,   535,    91,   537,    42,   539,   516,   517,   518,  
      519,   520,   521,   522,   523,   524,    91,    91,   551,   552,  
      553,   554,   555,   556,   557,   558,   559,   560,   561,   562,  
      563,   564,   565,    91,    91,    91,    40,    38,    35,    34,  
       32,    35,    33,   265,    34,    33,    35,    34,    91,    35,  
       33,    32,    91,    32,    23,    91,    22,    42,    32,    41,  
       36,    39,   596,    35,    25,   599,   600,   601,   602,    23,  
       41,   605,    36,     5,    41,    25,    36,   280,    35,    41,  
       36,   614,   615,   617,    91,    29,    25,    32,    26,    91,  
       21,    25,    35,    23,    35,    41,    25,    32,    40,    39,  
       25,    29,    24,    40,   892,    41,   640,    40,   642,    29,  
       34,    29,    23,    34,    41,    41,    35,    40,    34,    21,  
       35,    91,    36,    91,    41,    34,    36,    40,    40,    36,  
       25,   664,    40,    36,    40,    40,    36,    41,   671,    32,  
      673,   674,   675,    35,   677,    34,   679,    41,    23,    34,  
       41,    25,    40,    32,    41,    41,    32,    41,    40,   692,  
       41,   694,    26,    41,    35,    34,    25,    40,    40,    34,  
      703,   704,   705,   706,   707,   708,   709,   710,   711,   712,  
      713,    41,   715,    29,   717,    21,    40,    24,    40,    24,  
       91,   413,    91,    91,    91,    40,    36,    40,    24,    41,  
       34,    40,    35,    27,    24,   739,   740,   741,    91,   743,  
       35,   414,    23,   747,    91,    27,    25,   747,    25,    25,  
      754,    91,    35,    91,    91,    41,    40,    23,   762,   763,  
       91,   765,   766,   767,    39,   769,   770,   771,   772,   773,  
      770,   775,    29,   773,    29,   775,    29,    42,   451,   452,  
       29,    35,    38,    25,    24,   477,    24,   460,    38,    40,  
       42,   794,   795,    28,   797,   798,    42,   470,    42,    35,  
       91,    35,    34,    29,    41,   805,   806,    25,    29,    42,  
       40,   811,    25,    29,    28,    25,    40,   820,    29,    91,  
       28,    41,   514,   515,    21,   828,   805,   806,    35,    29,  
       45,    91,    25,    42,    29,    23,    25,    42,   841,    23,  
       34,    42,   842,   843,    91,    23,    21,    23,   540,    21,  
       42,    38,    34,    36,    34,    29,    42,    34,   531,   532,  
       39,    25,    35,   842,   843,    25,    36,    38,    29,   873,  
       29,    40,    25,   873,   878,   567,   876,   877,   878,   879,  
       34,    29,    25,    28,    34,    40,   890,    45,   892,   893,  
      894,    25,    34,   893,   894,    23,    40,    36,    25,    21,  
      879,    41,    39,    23,    23,    34,    91,    23,    21,    40,  
       91,    36,    38,    34,    25,    25,    25,   917,   918,    36,  
      920,    33,   595,    91,   597,   598,    41,    25,    25,   932,  
      603,   604,    38,    25,    36,   608,   609,    25,   917,   918,  
       34,   614,   615,    25,    39,    32,    36,    40,    21,   949,  
      950,    21,    21,    91,    32,   959,    91,    21,    34,    91,  
       32,    36,    41,    44,    38,    33,   639,    91,   641,    36,  
       25,    36,    38,    21,    24,    21,    25,    40,    21,   671,  
      672,    21,    21,    91,    38,   677,   678,    32,    40,    21,  
       24,   683,    33,    29,    38,    33,    38,    25,    25,    21,  
       25,    38,    21,    33,    33,    38,   754,    42,    25,    40,  
       33,    29,    38,    25,    25,    25,    40,    25,    25,    40,  
       40,    25,   714,    38,   716,    38,    42,    25,    25,    38,  
       25,   959,   595,    38,    40,   878,    39,    38,    38,    38,  
      770,    -1,    44,    39,   465,   618,   274,   274,   279,   274,  
      279,    -1,   275,    -1,    -1,   274,    -1,   279,    -1,    -1,  
      277,    -1,   274,    -1,    -1,   738,    -1,    -1,    -1,   742,  
      274,   277,    -1,   746,    -1,    -1,    -1,    -1,    -1,    -1,  
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  
       -1,   764,    -1,    -1,    -1,   768,    -1,    -1,   771,   772,  
       -1,   774,   794,   776,    -1,   465,   798,    -1,    -1,    -1,  
      802,    -1,    -1,    -1,    -1,    -1,    -1,   809,    -1,    -1,  
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  
      803,   804,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   831,  
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   840,    -1,  
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   850,    -1,  
      852,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  
       -1,    -1,   874,   875,    -1,    -1,    -1,    -1,    -1,    -1,  
       -1,    -1,    -1,    -1,   867,   868,   869,   870,    -1,    -1,  
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  
       -1,    -1,    -1,    -1,    -1,    -1,    -1,   909,   910,     3,  
        4,     5,     6,    -1,     8,     9,    10,    11,    12,    13,  
       14,    15,    16,    17,    18,    19,    20,    21,    22,    23,  
       24,    25,    26,    27,    28,    29,    30,    31,    32,    33,  
       34,    35,    36,    37,    38,    39,    40,    41,    42,    43,  
       44,    45,    46,    47,    48,    49,    50,    51,    52,    53,  
       54,    55,    56,    57,    58,    59,    60,    61,    62,    63,  
       64,    65,    66,    67,    68,    69,    70,    71,    72,    73,  
       74,    75,    76,    77,    78,    79,    80,    81,    82,    83,  
       84,    85,    86,    87,    88,    89,    90,    91,    92,    93,  
       94,    95,    96,    97,    98,    99,   100,   101,   102,   103,  
      104,   105,   106,   107,   108,   109,   110,   111,   112,   113,  
      114,   115,   116,   117,   118,   119,   120,   121,   122,   123,  
      124,   125,   126,   127,   128,   129,   130,   131,   132,   133,  
      134,   135,   136,   137,   138,   139,   140,   141,   142,   143,  
      144,   145,   146,   147,   148,   149,   150,   151,   152,   153,  
      154,   155,   156,   157,   158,   159,   160,   161,   162,   163,  
      164,   165,   166,   167,   168,   169,   170,   171,   172,   173,  
      174,   175,   176,   177,   178,   179,   180,   181,   182,   183,  
      184,   185,   186,   187,   188,   189,   190,   191,   192,   193,  
      194,   195,   196,   197,   198,   199,   200,   201,   202,   203,  
      204,   205,   206,   207,   208,   209,   210,   211,   212,   213,  
      214,   215,   216,   217,   218,   219,   220,   221,   222,   223,  
      224,     3,     4,     5,    -1,     7,     8,     9,    10,    11,  
       12,    13,    14,    15,    16,    17,    18,    19,    20,    21,  
       22,    23,    24,    25,    26,    27,    28,    29,    30,    31,  
       32,    33,    34,    35,    36,    37,    38,    39,    40,    41,  
       42,    43,    44,    45,    46,    47,    48,    49,    50,    51,  
       52,    53,    54,    55,    56,    57,    58,    59,    60,    61,  
       62,    63,    64,    65,    66,    67,    68,    69,    70,    71,  
       72,    73,    74,    75,    76,    77,    78,    79,    80,    81,  
       82,    83,    84,    85,    86,    87,    88,    89,    90,    91,  
       92,    93,    94,    95,    96,    97,    98,    99,   100,   101,  
      102,   103,   104,   105,   106,   107,   108,   109,   110,   111,  
      112,   113,   114,   115,   116,   117,   118,   119,   120,   121,  
      122,   123,   124,   125,   126,   127,   128,   129,   130,   131,  
      132,   133,   134,   135,   136,   137,   138,   139,   140,   141,  
      142,   143,   144,   145,   146,   147,   148,   149,   150,   151,  
      152,   153,   154,   155,   156,   157,   158,   159,   160,   161,  
      162,   163,   164,   165,   166,   167,   168,   169,   170,   171,  
      172,   173,   174,   175,   176,   177,   178,   179,   180,   181,  
      182,   183,   184,   185,   186,   187,   188,   189,   190,   191,  
      192,   193,   194,   195,   196,   197,   198,   199,   200,   201,  
      202,   203,   204,   205,   206,   207,   208,   209,   210,   211,  
      212,   213,   214,   215,   216,   217,   218,   219,   220,   221,  
      222,   223,   224,     3,     4,     5,    -1,    -1,     8,     9,  
       10,    11,    12,    13,    14,    15,    16,    17,    18,    19,  
       20,    21,    22,    23,    24,    25,    26,    27,    28,    29,  
       30,    31,    32,    33,    34,    35,    36,    37,    38,    39,  
       40,    41,    42,    43,    44,    45,    46,    47,    48,    49,  
       50,    51,    52,    53,    54,    55,    56,    57,    58,    59,  
       60,    61,    62,    63,    64,    65,    66,    67,    68,    69,  
       70,    71,    72,    73,    74,    75,    76,    77,    78,    79,  
       80,    81,    82,    83,    84,    85,    86,    87,    88,    89,  
       90,    91,    92,    93,    94,    95,    96,    97,    98,    99,  
      100,   101,   102,   103,   104,   105,   106,   107,   108,   109,  
      110,   111,   112,   113,   114,   115,   116,   117,   118,   119,  
      120,   121,   122,   123,   124,   125,   126,   127,   128,   129,  
      130,   131,   132,   133,   134,   135,   136,   137,   138,   139,  
      140,   141,   142,   143,   144,   145,   146,   147,   148,   149,  
      150,   151,   152,   153,   154,   155,   156,   157,   158,   159,  
      160,   161,   162,   163,   164,   165,   166,   167,   168,   169,  
      170,   171,   172,   173,   174,   175,   176,   177,   178,   179,  
      180,   181,   182,   183,   184,   185,   186,   187,   188,   189,  
      190,   191,   192,   193,   194,   195,   196,   197,   198,   199,  
      200,   201,   202,   203,   204,   205,   206,   207,   208,   209,  
      210,   211,   212,   213,   214,   215,   216,   217,   218,   219,  
      220,   221,   222,   223,   224,     3,     4,     5,    -1,    -1,  
        8,     9,    10,    11,    12,    13,    14,    15,    16,    17,  
       18,    19,    20,    21,    22,    23,    24,    25,    26,    27,  
       28,    29,    30,    31,    32,    33,    34,    35,    36,    37,  
       38,    39,    40,    41,    42,    43,    44,    45,    46,    47,  
       48,    49,    50,    51,    52,    53,    54,    55,    56,    57,  
       58,    59,    60,    61,    62,    63,    64,    65,    66,    67,  
1739        68,    69,    70,    71,    72,    73,    74,    75,    76,    77,        68,    69,    70,    71,    72,    73,    74,    75,    76,    77,
1740        78,    79,    80,    81,    82,    83,    84,    85,    86,    87,        78,    79,    80,    81,    82,    83,    84,    85,    86,    87,
1741        88,    89,    90,    91,    92,    93,    94,    95,    96,    97,        88,    89,    90,    91,    92,    93,    94,    95,    96,    97,
# Line 1709  static const short int yycheck[] = Line 1751  static const short int yycheck[] =
1751       188,   189,   190,   191,   192,   193,   194,   195,   196,   197,       188,   189,   190,   191,   192,   193,   194,   195,   196,   197,
1752       198,   199,   200,   201,   202,   203,   204,   205,   206,   207,       198,   199,   200,   201,   202,   203,   204,   205,   206,   207,
1753       208,   209,   210,   211,   212,   213,   214,   215,   216,   217,       208,   209,   210,   211,   212,   213,   214,   215,   216,   217,
1754       218,   219,   220,   221,   222,   223,   224,     3,     4,     5,       218,   219,   220,   221,   222,   223,   224,   225,   226,   227,
1755         6,     7,     8,     9,    10,    11,    12,    13,    14,    15,       228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
1756        16,    17,    18,    19,    20,    21,    22,    23,    24,    25,       238,   239,   240,   241,   242,   243,   244,   245,   246,   247,
1757        26,    27,    28,    29,    30,    31,    32,    33,    34,    35,       248,   249,   250,   251,   252,   253,   254,   255,   256,   257,
1758        36,    37,    38,    39,    40,    41,    42,    43,    44,    45,       258,   259,   260,   261,   262,   263,   264,   265,   266,   267,
1759        46,    47,    48,    49,    50,    51,    52,    53,    54,    55,       268,   269,   328,  1097,    53,    54,    55,    56,   329,   330,
1760        56,    57,    58,    59,    60,    61,    62,    63,    64,    65,       331,   332,   333,   334,   335,   336,   337,   338,    67,    68,
1761        66,    67,    68,    69,    70,    71,    72,    73,    74,    75,        69,    70,    71,    72,    73,    74,    75,    76,    77,    78,
1762        76,    77,    78,    79,    80,    81,    82,    83,    84,    85,        79,    80,    81,    82,    83,    84,    85,    86,    87,    88,
1763        86,    87,    88,    89,    90,    91,    92,    93,    94,    95,        89,    90,    91,    92,    93,    94,    95,    96,    97,    98,
1764        96,    97,    98,    99,   100,   101,   102,   103,   104,   105,        99,   100,   101,   102,   103,   104,   105,   106,   107,   108,
1765       106,   107,   108,   109,   110,   111,   112,   113,   114,   115,       109,   110,   111,   112,   113,   114,   115,   116,   117,   118,
1766       116,   117,   118,   119,   120,   121,   122,   123,   124,   125,       119,   120,   121,   122,   123,   124,   125,   126,   127,   128,
1767       126,   127,   128,   129,   130,   131,   132,   133,   134,   135,       129,   130,   131,   132,   133,   134,   135,   136,   137,   138,
1768       136,   137,   138,   139,   140,   141,   142,   143,   144,   145,       139,   140,   141,   142,   143,   144,   145,   146,   147,   148,
1769       146,   147,   148,   149,   150,   151,   152,   153,   154,   155,       149,   150,   151,   152,   153,   154,   155,   156,   157,   158,
1770       156,   157,   158,   159,   160,   161,   162,   163,   164,   165,       159,   160,   161,   162,   163,   164,   165,   166,   167,   168,
1771       166,   167,   168,   169,   170,   171,   172,   173,   174,   175,       169,   170,   171,   172,   173,   174,   175,   176,   177,   178,
1772       176,   177,   178,   179,   180,   181,   182,   183,   184,   185,       179,   180,   181,   182,   183,   184,   185,   186,   187,   188,
1773       186,   187,   188,   189,   190,   191,   192,   193,   194,   195,       189,   190,   191,   192,   193,   194,   195,   196,   197,   198,
1774       196,   197,   198,   199,   200,   201,   202,   203,   204,   205,       199,   200,   201,   202,   203,   204,   205,   206,   207,   208,
1775       206,   207,   208,   209,   210,   211,   212,   213,   214,   215,       209,   210,   211,   212,   213,   214,   215,   216,   217,   218,
1776       216,   217,   218,   219,   220,   221,   222,   223,     3,     4,       219,   220,   221,   222,   223,   224,   225,   226,   227,   228,
1777         5,     6,    -1,     8,     9,    10,    11,    12,    13,    14,       229,   230,   231,   232,   233,   234,   235,   236,   237,   238,
1778         239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
1779         249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
1780         259,   260,   261,   262,   263,   264,   265,   266,   267,   268,
1781         269,   328,  1113,    53,    54,    55,    56,   329,   330,   331,
1782         332,   333,   334,   335,   336,   337,   338,    67,    68,    69,
1783          70,    71,    72,    73,    74,    75,    76,    77,    78,    79,
1784          80,    81,    82,    83,    84,    85,    86,    87,    88,    89,
1785          90,    91,    92,    93,    94,    95,    96,    97,    98,    99,
1786         100,   101,   102,   103,   104,   105,   106,   107,   108,   109,
1787         110,   111,   112,   113,   114,   115,   116,   117,   118,   119,
1788         120,   121,   122,   123,   124,   125,   126,   127,   128,   129,
1789         130,   131,   132,   133,   134,   135,   136,   137,   138,   139,
1790         140,   141,   142,   143,   144,   145,   146,   147,   148,   149,
1791         150,   151,   152,   153,   154,   155,   156,   157,   158,   159,
1792         160,   161,   162,   163,   164,   165,   166,   167,   168,   169,
1793         170,   171,   172,   173,   174,   175,   176,   177,   178,   179,
1794         180,   181,   182,   183,   184,   185,   186,   187,   188,   189,
1795         190,   191,   192,   193,   194,   195,   196,   197,   198,   199,
1796         200,   201,   202,   203,   204,   205,   206,   207,   208,   209,
1797         210,   211,   212,   213,   214,   215,   216,   217,   218,   219,
1798         220,   221,   222,   223,   224,   225,   226,   227,   228,   229,
1799         230,   231,   232,   233,   234,   235,   236,   237,   238,   239,
1800         240,   241,   242,   243,   244,   245,   246,   247,   248,   249,
1801         250,   251,   252,   253,   254,   255,   256,   257,   258,   259,
1802         260,   261,   262,   263,   264,   265,   266,   267,   268,   269,
1803         328,  1114,    53,    54,    55,    56,   329,   330,   331,   332,
1804         333,   334,   335,   336,   337,   338,    67,    68,    69,    70,
1805          71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
1806          81,    82,    83,    84,    85,    86,    87,    88,    89,    90,
1807          91,    92,    93,    94,    95,    96,    97,    98,    99,   100,
1808         101,   102,   103,   104,   105,   106,   107,   108,   109,   110,
1809         111,   112,   113,   114,   115,   116,   117,   118,   119,   120,
1810         121,   122,   123,   124,   125,   126,   127,   128,   129,   130,
1811         131,   132,   133,   134,   135,   136,   137,   138,   139,   140,
1812         141,   142,   143,   144,   145,   146,   147,   148,   149,   150,
1813         151,   152,   153,   154,   155,   156,   157,   158,   159,   160,
1814         161,   162,   163,   164,   165,   166,   167,   168,   169,   170,
1815         171,   172,   173,   174,   175,   176,   177,   178,   179,   180,
1816         181,   182,   183,   184,   185,   186,   187,   188,   189,   190,
1817         191,   192,   193,   194,   195,   196,   197,   198,   199,   200,
1818         201,   202,   203,   204,   205,   206,   207,   208,   209,   210,
1819         211,   212,   213,   214,   215,   216,   217,   218,   219,   220,
1820         221,   222,   223,   224,   225,   226,   227,   228,   229,   230,
1821         231,   232,   233,   234,   235,   236,   237,   238,   239,   240,
1822         241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
1823         251,   252,   253,   254,   255,   256,   257,   258,   259,   260,
1824         261,   262,   263,   264,   265,   266,   267,   268,   269
1825    };
1826    
1827    static const yytype_int16 yycheck[] =
1828    {
1829          15,    15,    17,    18,    19,    20,    21,    22,    23,    24,
1830          25,    26,    27,    28,    29,    30,    31,   732,    58,    59,
1831          60,    61,    62,    63,    64,    65,    66,   557,   765,   965,
1832         277,   949,   281,   282,   286,   755,     5,   494,   285,   286,
1833         281,   282,   288,     1,   288,     3,   288,    58,    59,    60,
1834          61,    62,    63,    64,    65,    66,    32,   523,   524,   749,
1835         526,    19,   934,    21,    22,    37,   968,    25,   970,  1109,
1836          37,   931,    30,    31,   540,    22,  1116,    35,    36,    37,
1837         546,    39,    33,    34,    23,   515,   543,    30,    21,    23,
1838          37,    21,    22,    36,    27,    20,   526,    36,     9,    10,
1839          11,    12,    13,    14,    15,    16,    17,    18,    38,    34,
1840         540,    22,    19,    20,    21,   975,   546,    89,    30,    23,
1841          23,    32,    89,    19,    31,    21,    38,    23,    24,    23,
1842          37,    38,    36,    40,    19,    31,    21,    27,    23,    24,
1843          19,    37,    38,    33,    40,    39,    31,    20,    22,    21,
1844          22,    19,    31,    21,    27,    40,    24,    39,    37,    21,
1845        1200,    40,    34,    31,    37,    27,    38,    40,   505,   506,
1846         507,   508,   509,   510,   511,   512,   513,   514,   277,   516,
1847         517,   518,   519,    31,   521,   959,   285,   286,    23,    37,
1848         964,   290,    27,     6,    27,  1097,     9,    10,    11,    12,
1849          13,    14,    15,    16,    17,    18,    39,    19,    19,    23,
1850          19,  1113,  1114,    24,    23,    22,    32,    22,    21,  1091,
1851          31,    21,    31,     0,    27,   532,    21,    34,   535,    34,
1852          34,    31,    27,    37,   541,    31,    31,    21,   545,   929,
1853         224,    37,   550,    27,   281,   282,   222,   223,   556,   286,
1854         280,   225,   226,   283,    22,   224,   225,   226,   504,    37,
1855         504,   568,   504,    34,    39,    40,    37,   225,   226,    23,
1856          34,   222,   223,    37,   289,   741,    34,   743,   318,    37,
1857         320,   321,   322,   323,   324,   325,   326,   327,     9,    10,
1858          11,    12,    13,    14,    15,    16,    17,    18,   550,    34,
1859          23,   550,    37,   550,    37,    39,    40,     6,   765,   550,
1860           9,    10,    11,    12,    13,    14,    15,    16,    17,    18,
1861         222,   223,    38,    21,    22,   791,    21,    22,    19,   344,
1862         966,   967,   580,   581,   287,   288,   278,   279,    34,   354,
1863        1258,    27,    20,    31,   225,   360,    31,   362,   363,   364,
1864         365,   366,    21,   368,    19,   370,   371,   372,   373,   374,
1865          19,   376,   377,   378,   379,   380,    38,  1087,    38,   384,
1866        1090,   386,    22,    33,   389,    38,    23,    23,  1093,   394,
1867         395,   396,    37,   398,   399,   400,    19,    39,    26,  1325,
1868          27,    26,    32,    42,    23,    27,    27,   412,    39,   414,
1869          27,    21,   417,   418,    27,   420,   421,    33,    33,    26,
1870          26,   426,   427,   428,   429,   430,   431,   432,   433,   434,
1871          42,   728,     6,   730,   731,     9,    10,    11,    12,    13,
1872          14,    15,    16,    17,    18,   965,    42,    27,    32,   746,
1873          39,    27,    39,    39,    27,    38,  1183,     7,     8,     9,
1874          10,    11,    12,    13,    14,    15,    16,    17,    18,   766,
1875         475,    33,    33,   478,    38,    40,    36,   774,   775,   776,
1876         777,   778,   779,   780,   781,   782,   783,   784,   785,    15,
1877          36,    38,    21,    21,   941,    34,   793,    20,   271,    19,
1878          22,    22,    19,    19,   960,    36,    25,    89,    22,    19,
1879          22,   515,    30,    38,    27,    22,    22,    89,    22,   523,
1880         524,    22,   526,    89,    22,    22,   973,   557,    37,   533,
1881         534,    26,    22,    32,    19,    22,   540,    19,    24,    27,
1882          36,    33,   546,    23,    38,    23,    37,   551,   552,   553,
1883         554,    32,    36,   557,   558,     9,    10,    11,    12,    13,
1884          14,    15,    16,    17,    18,    19,    38,    27,    27,    27,
1885          32,    27,    37,    40,    27,   580,   581,    19,   608,   609,
1886         610,   611,   612,   613,   614,   615,   616,    39,    32,   594,
1887         595,   596,   597,   598,   599,   600,   601,   602,   603,   604,
1888         605,   606,   607,    30,    27,    27,    27,   608,   609,   610,
1889         611,   612,   613,   614,   615,   616,   621,   622,   623,   624,
1890          37,    27,    27,    32,   629,   630,   923,    37,    27,    33,
1891          38,    27,   637,   638,   639,    33,    27,   642,     9,    10,
1892          11,    12,    13,    14,    15,    16,    17,    18,   653,    39,
1893         655,   948,   657,    33,    19,    39,    24,    27,    32,   689,
1894         690,    27,    21,   693,   669,   670,   671,   672,   673,   674,
1895         675,   676,   677,   678,   679,   680,   681,   682,   683,   684,
1896          23,   686,    19,   688,    32,    21,    43,    27,   689,   690,
1897          21,    33,    89,    32,    32,    30,    23,    89,    23,    31,
1898          30,   474,    24,    89,    30,    33,    89,    23,    89,    33,
1899          23,   716,   717,    32,    89,    36,    33,    32,    22,    22,
1900          89,    30,    22,    31,    38,    23,    33,    32,    89,   733,
1901          23,    19,   736,   737,   738,   739,  1183,   741,    30,   743,
1902          23,   745,    20,    23,   748,   749,    36,    19,    27,    23,
1903          23,    32,   756,   757,    36,    89,    27,    23,    33,    43,
1904         764,    23,    27,   289,   794,   795,   796,    27,    32,    89,
1905          27,    89,    23,    32,    27,    27,    39,    89,    89,    89,
1906          27,    27,    23,   787,    33,   789,    23,   791,    27,    23,
1907          89,    36,    27,   566,    30,   796,    23,    27,    31,    30,
1908          89,    33,    89,    32,    20,  1325,    30,  1104,    22,    32,
1909          36,    32,    40,    38,    32,    22,    33,    32,    22,    30,
1910         825,    33,    32,    31,    33,    31,    21,   832,    33,   834,
1911         835,   836,    32,   838,   839,    89,    33,    33,   843,   844,
1912          30,   846,    40,   848,    32,    89,    30,    89,    20,    30,
1913          37,   856,    37,    39,    37,    33,    23,    21,    37,    39,
1914          37,   866,     5,   868,   637,   638,   896,   897,   898,    34,
1915          39,   876,   877,   878,   879,   880,   881,   882,   883,   884,
1916         885,   886,   887,    23,   889,   658,   891,    33,   893,    39,
1917         895,    27,    23,    19,    33,   896,   897,    89,    89,    24,
1918          89,    39,    21,    33,    33,    23,    38,    23,    22,    37,
1919         940,    38,    27,    23,    89,    39,    38,    38,    38,    32,
1920          32,   925,   926,   927,   697,   929,   930,   931,    39,   933,
1921         934,    38,    38,    33,    39,   965,   940,    38,   968,    38,
1922         970,    39,    24,    32,  1391,   949,   976,   977,    33,   475,
1923          38,    27,   956,   957,    38,   959,   960,   961,   962,    39,
1924         964,   965,   966,   967,   968,    32,   970,    33,    27,    39,
1925          38,   975,    36,    34,    36,    21,    32,    19,    36,    36,
1926          34,    34,    19,    38,    36,    23,  1016,  1017,    38,    38,
1927          34,    38,    32,    34,   999,  1000,    39,  1002,  1003,  1004,
1928          39,    30,    33,  1008,   530,   531,    38,    23,    36,    39,
1929          21,    32,    39,    39,  1461,  1016,  1017,    89,   544,    39,
1930          23,    38,    30,    24,    39,    39,    39,    39,  1033,    89,
1931          39,    38,   558,    39,    39,  1040,    30,    39,    89,    38,
1932          32,    89,    39,    39,    89,    33,    39,    23,    38,    31,
1933          39,    38,  1057,    32,   580,   581,    27,    31,    19,   832,
1934         833,    31,  1067,    31,    89,   838,    38,  1097,  1098,   842,
1935          22,    38,    22,    31,    38,    34,    38,    30,    34,    33,
1936          22,   854,    39,  1113,  1114,    32,    31,  1091,    23,    38,
1937          38,    89,    22,  1097,  1098,    22,    25,    33,    89,    23,
1938          21,    23,    25,    23,    89,  1109,    23,    23,  1112,  1113,
1939        1114,    89,  1116,    23,    89,   888,    23,   890,    33,    23,
1940          39,    39,    23,    89,    38,    38,    89,    21,    37,    32,
1941          27,    27,    27,    33,    40,    27,  1141,    36,    23,    32,
1942          22,    32,    32,    22,    22,    32,    89,  1112,    23,    89,
1943          26,    40,    40,    36,    40,  1160,    40,    38,    38,  1164,
1944          32,    38,    33,    33,    32,    27,    40,    27,    23,    38,
1945          27,    38,    26,    39,    38,    38,    23,    38,    27,    38,
1946          26,    33,    23,    27,    89,    43,    39,    38,    19,    27,
1947         716,   717,    40,    23,  1198,    27,  1200,    21,    23,    32,
1948          37,    40,    21,    21,    40,    19,   732,    19,   734,   735,
1949          21,    40,    34,    36,   740,    21,  1221,    21,   744,    40,
1950          40,    37,    32,    31,    89,    32,   999,    27,   754,   755,
1951        1003,    33,    23,    89,    32,    36,    31,    34,    27,    89,
1952          23,    27,  1015,    23,    89,    38,    31,  1020,    32,    27,
1953          23,    26,    23,    43,  1258,    32,    38,    27,    23,    38,
1954         786,    19,   788,    32,    21,    39,    34,    23,    19,    19,
1955        1043,    37,    89,    32,    89,    23,    21,    21,    19,    32,
1956          89,    21,    19,  1056,    89,    34,    32,  1292,    21,  1062,
1957          33,  1064,    19,    32,    23,  1325,    34,    23,    19,    30,
1958          36,    89,    34,    38,    23,    39,    36,    31,    36,    34,
1959          23,    34,    23,    23,    34,    32,    23,    23,    23,    34,
1960          24,  1325,    89,    39,    38,    37,    34,    19,    37,    19,
1961          30,    22,    19,    32,    37,    89,    30,    89,    33,    32,
1962          36,    39,    89,    32,    23,    33,    31,    89,    34,    27,
1963          23,    34,    24,  1358,    36,    19,    22,    38,    42,    39,
1964          34,    38,    19,  1136,  1137,    23,    31,    89,    37,    19,
1965          19,    30,    33,    33,    19,    38,    32,    32,    19,    33,
1966          32,  1198,    24,    36,    31,    36,    19,    89,    31,    24,
1967          38,    22,    36,    39,    23,    27,    36,    23,   924,    38,
1968          23,    39,   928,    19,    32,    23,    33,    32,    32,    19,
1969          31,    33,  1461,   939,    22,   973,    36,    31,  1423,    36,
1970          32,    40,    23,    38,    31,    38,    23,    38,    27,    38,
1971          23,    23,   958,    38,    23,    23,    38,   963,    38,    23,
1972         966,   967,    40,   969,    26,   971,    36,    38,    23,    36,
1973          36,    23,    89,    33,    37,    23,    30,    36,    36,    36,
1974          36,    22,   288,  1098,    37,    50,    -1,   550,    -1,    -1,
1975         283,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
1976         283,    -1,    -1,    -1,   283,    -1,    -1,    -1,    -1,    -1,
1977          -1,    -1,   288,    -1,   288,    -1,   288,    -1,    -1,    -1,
1978          -1,   288,    -1,    -1,    -1,    -1,    -1,   288,    -1,    -1,
1979          -1,    -1,   288,    -1,    -1,    -1,   288,    -1,    -1,    -1,
1980          -1,    -1,   284,   283,   288,   288,    -1,   288,    -1,    -1,
1981          -1,   286,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
1982          -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
1983          -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
1984          -1,  1087,  1088,  1089,  1090,   283,    -1,  1093,     3,     4,
1985           5,     6,     7,     8,     9,    10,    11,    12,    13,    14,
1986        15,    16,    17,    18,    19,    20,    21,    22,    23,    24,        15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
1987        25,    26,    27,    28,    29,    30,    31,    32,    33,    34,        25,    26,    27,    28,    29,    30,    31,    32,    33,    34,
1988        35,    36,    37,    38,    39,    40,    41,    42,    43,    44,        35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
# Line 1753  static const short int yycheck[] = Line 2003  static const short int yycheck[] =
2003       185,   186,   187,   188,   189,   190,   191,   192,   193,   194,       185,   186,   187,   188,   189,   190,   191,   192,   193,   194,
2004       195,   196,   197,   198,   199,   200,   201,   202,   203,   204,       195,   196,   197,   198,   199,   200,   201,   202,   203,   204,
2005       205,   206,   207,   208,   209,   210,   211,   212,   213,   214,       205,   206,   207,   208,   209,   210,   211,   212,   213,   214,
2006       215,   216,   217,   218,   219,   220,   221,   222,   223,     3,       215,   216,   217,   218,   219,   220,   221,   222,   286,   224,
2007         4,     5,    -1,     7,     8,     9,    10,    11,    12,    13,         3,     4,     5,     6,     7,     8,     9,    10,    11,    12,
       14,    15,    16,    17,    18,    19,    20,    21,    22,    23,  
       24,    25,    26,    27,    28,    29,    30,    31,    32,    33,  
       34,    35,    36,    37,    38,    39,    40,    41,    42,    43,  
       44,    45,    46,    47,    48,    49,    50,    51,    52,    53,  
       54,    55,    56,    57,    58,    59,    60,    61,    62,    63,  
       64,    65,    66,    67,    68,    69,    70,    71,    72,    73,  
       74,    75,    76,    77,    78,    79,    80,    81,    82,    83,  
       84,    85,    86,    87,    88,    89,    90,    91,    92,    93,  
       94,    95,    96,    97,    98,    99,   100,   101,   102,   103,  
      104,   105,   106,   107,   108,   109,   110,   111,   112,   113,  
      114,   115,   116,   117,   118,   119,   120,   121,   122,   123,  
      124,   125,   126,   127,   128,   129,   130,   131,   132,   133,  
      134,   135,   136,   137,   138,   139,   140,   141,   142,   143,  
      144,   145,   146,   147,   148,   149,   150,   151,   152,   153,  
      154,   155,   156,   157,   158,   159,   160,   161,   162,   163,  
      164,   165,   166,   167,   168,   169,   170,   171,   172,   173,  
      174,   175,   176,   177,   178,   179,   180,   181,   182,   183,  
      184,   185,   186,   187,   188,   189,   190,   191,   192,   193,  
      194,   195,   196,   197,   198,   199,   200,   201,   202,   203,  
      204,   205,   206,   207,   208,   209,   210,   211,   212,   213,  
      214,   215,   216,   217,   218,   219,   220,   221,   222,   223,  
        3,     4,     5,    -1,    -1,     8,     9,    10,    11,    12,  
2008        13,    14,    15,    16,    17,    18,    19,    20,    21,    22,        13,    14,    15,    16,    17,    18,    19,    20,    21,    22,
2009        23,    24,    25,    26,    27,    28,    29,    30,    31,    32,        23,    24,    25,    26,    27,    28,    29,    30,    31,    32,
2010        33,    34,    35,    36,    37,    38,    39,    40,    41,    42,        33,    34,    35,    36,    37,    38,    39,    40,    41,    42,
# Line 1797  static const short int yycheck[] = Line 2025  static const short int yycheck[] =
2025       183,   184,   185,   186,   187,   188,   189,   190,   191,   192,       183,   184,   185,   186,   187,   188,   189,   190,   191,   192,
2026       193,   194,   195,   196,   197,   198,   199,   200,   201,   202,       193,   194,   195,   196,   197,   198,   199,   200,   201,   202,
2027       203,   204,   205,   206,   207,   208,   209,   210,   211,   212,       203,   204,   205,   206,   207,   208,   209,   210,   211,   212,
2028       213,   214,   215,   216,   217,   218,   219,   220,   221,   222,       213,   214,   215,   216,   217,   218,   219,   220,   221,   283,
2029       223,     3,     4,     5,    -1,    -1,     8,     9,    10,    11,       223,   224,     3,     4,     5,     6,     7,     8,     9,    10,
       12,    13,    14,    15,    16,    17,    18,    19,    20,    21,  
       22,    23,    24,    25,    26,    27,    28,    29,    30,    31,  
       32,    33,    34,    35,    36,    37,    38,    39,    40,    41,  
       42,    43,    44,    45,    46,    47,    48,    49,    50,    51,  
       52,    53,    54,    55,    56,    57,    58,    59,    60,    61,  
       62,    63,    64,    65,    66,    67,    68,    69,    70,    71,  
       72,    73,    74,    75,    76,    77,    78,    79,    80,    81,  
       82,    83,    84,    85,    86,    87,    88,    89,    90,    91,  
       92,    93,    94,    95,    96,    97,    98,    99,   100,   101,  
      102,   103,   104,   105,   106,   107,   108,   109,   110,   111,  
      112,   113,   114,   115,   116,   117,   118,   119,   120,   121,  
      122,   123,   124,   125,   126,   127,   128,   129,   130,   131,  
      132,   133,   134,   135,   136,   137,   138,   139,   140,   141,  
      142,   143,   144,   145,   146,   147,   148,   149,   150,   151,  
      152,   153,   154,   155,   156,   157,   158,   159,   160,   161,  
      162,   163,   164,   165,   166,   167,   168,   169,   170,   171,  
      172,   173,   174,   175,   176,   177,   178,   179,   180,   181,  
      182,   183,   184,   185,   186,   187,   188,   189,   190,   191,  
      192,   193,   194,   195,   196,   197,   198,   199,   200,   201,  
      202,   203,   204,   205,   206,   207,   208,   209,   210,   211,  
      212,   213,   214,   215,   216,   217,   218,   219,   220,   221,  
      222,   223,     3,     4,     5,    -1,    -1,     8,     9,    10,  
2030        11,    12,    13,    14,    15,    16,    17,    18,    19,    20,        11,    12,    13,    14,    15,    16,    17,    18,    19,    20,
2031        21,    22,    23,    24,    25,    26,    27,    28,    29,    30,        21,    22,    23,    24,    25,    26,    27,    28,    29,    30,
2032        31,    32,    33,    34,    35,    36,    37,    38,    39,    40,        31,    32,    33,    34,    35,    36,    37,    38,    39,    40,
# Line 1842  static const short int yycheck[] = Line 2048  static const short int yycheck[] =
2048       191,   192,   193,   194,   195,   196,   197,   198,   199,   200,       191,   192,   193,   194,   195,   196,   197,   198,   199,   200,
2049       201,   202,   203,   204,   205,   206,   207,   208,   209,   210,       201,   202,   203,   204,   205,   206,   207,   208,   209,   210,
2050       211,   212,   213,   214,   215,   216,   217,   218,   219,   220,       211,   212,   213,   214,   215,   216,   217,   218,   219,   220,
2051       221,   222,   223,     3,     4,     5,    -1,    -1,     8,     9,       221,   283,   283,   224,     3,     4,     5,     6,     7,     8,
       10,    11,    12,    13,    14,    15,    16,    17,    18,    19,  
       20,    21,    22,    23,    24,    25,    26,    27,    28,    29,  
       30,    31,    32,    33,    34,    35,    36,    37,    38,    39,  
       40,    41,    42,    43,    44,    45,    46,    47,    48,    49,  
       50,    51,    52,    53,    54,    55,    56,    57,    58,    59,  
       60,    61,    62,    63,    64,    65,    66,    67,    68,    69,  
       70,    71,    72,    73,    74,    75,    76,    77,    78,    79,  
       80,    81,    82,    83,    84,    85,    86,    87,    88,    89,  
       90,    91,    92,    93,    94,    95,    96,    97,    98,    99,  
      100,   101,   102,   103,   104,   105,   106,   107,   108,   109,  
      110,   111,   112,   113,   114,   115,   116,   117,   118,   119,  
      120,   121,   122,   123,   124,   125,   126,   127,   128,   129,  
      130,   131,   132,   133,   134,   135,   136,   137,   138,   139,  
      140,   141,   142,   143,   144,   145,   146,   147,   148,   149,  
      150,   151,   152,   153,   154,   155,   156,   157,   158,   159,  
      160,   161,   162,   163,   164,   165,   166,   167,   168,   169,  
      170,   171,   172,   173,   174,   175,   176,   177,   178,   179,  
      180,   181,   182,   183,   184,   185,   186,   187,   188,   189,  
      190,   191,   192,   193,   194,   195,   196,   197,   198,   199,  
      200,   201,   202,   203,   204,   205,   206,   207,   208,   209,  
      210,   211,   212,   213,   214,   215,   216,   217,   218,   219,  
      220,   221,   222,   223,     3,     4,     5,    -1,    -1,     8,  
2052         9,    10,    11,    12,    13,    14,    15,    16,    17,    18,         9,    10,    11,    12,    13,    14,    15,    16,    17,    18,
2053        19,    20,    21,    22,    23,    24,    25,    26,    27,    28,        19,    20,    21,    22,    23,    24,    25,    26,    27,    28,
2054        29,    30,    31,    32,    33,    34,    35,    36,    37,    38,        29,    30,    31,    32,    33,    34,    35,    36,    37,    38,
# Line 1886  static const short int yycheck[] = Line 2070  static const short int yycheck[] =
2070       189,   190,   191,   192,   193,   194,   195,   196,   197,   198,       189,   190,   191,   192,   193,   194,   195,   196,   197,   198,
2071       199,   200,   201,   202,   203,   204,   205,   206,   207,   208,       199,   200,   201,   202,   203,   204,   205,   206,   207,   208,
2072       209,   210,   211,   212,   213,   214,   215,   216,   217,   218,       209,   210,   211,   212,   213,   214,   215,   216,   217,   218,
2073       219,   220,   221,   222,   223,     3,     4,     5,    -1,    -1,       219,   220,   221,    -1,    -1,   224,     3,     4,     5,     6,
2074         8,     9,    10,    11,    12,    13,    14,    15,    16,    17,         7,     8,     9,    10,    11,    12,    13,    14,    15,    16,
       18,    19,    20,    21,    22,    23,    24,    25,    26,    27,  
       28,    29,    30,    31,    32,    33,    34,    35,    36,    37,  
       38,    39,    40,    41,    42,    43,    44,    45,    46,    47,  
       48,    49,    50,    51,    52,    53,    54,    55,    56,    57,  
       58,    59,    60,    61,    62,    63,    64,    65,    66,    67,  
       68,    69,    70,    71,    72,    73,    74,    75,    76,    77,  
       78,    79,    80,    81,    82,    83,    84,    85,    86,    87,  
       88,    89,    90,    91,    92,    93,    94,    95,    96,    97,  
       98,    99,   100,   101,   102,   103,   104,   105,   106,   107,  
      108,   109,   110,   111,   112,   113,   114,   115,   116,   117,  
      118,   119,   120,   121,   122,   123,   124,   125,   126,   127,  
      128,   129,   130,   131,   132,   133,   134,   135,   136,   137,  
      138,   139,   140,   141,   142,   143,   144,   145,   146,   147,  
      148,   149,   150,   151,   152,   153,   154,   155,   156,   157,  
      158,   159,   160,   161,   162,   163,   164,   165,   166,   167,  
      168,   169,   170,   171,   172,   173,   174,   175,   176,   177,  
      178,   179,   180,   181,   182,   183,   184,   185,   186,   187,  
      188,   189,   190,   191,   192,   193,   194,   195,   196,   197,  
      198,   199,   200,   201,   202,   203,   204,   205,   206,   207,  
      208,   209,   210,   211,   212,   213,   214,   215,   216,   217,  
      218,   219,   220,   221,   222,   223,     3,     4,     5,    -1,  
       -1,     8,     9,    10,    11,    12,    13,    14,    15,    16,  
2075        17,    18,    19,    20,    21,    22,    23,    24,    25,    26,        17,    18,    19,    20,    21,    22,    23,    24,    25,    26,
2076        27,    28,    29,    30,    31,    32,    33,    34,    35,    36,        27,    28,    29,    30,    31,    32,    33,    34,    35,    36,
2077        37,    38,    39,    40,    41,    42,    43,    44,    45,    46,        37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
# Line 1931  static const short int yycheck[] = Line 2093  static const short int yycheck[] =
2093       197,   198,   199,   200,   201,   202,   203,   204,   205,   206,       197,   198,   199,   200,   201,   202,   203,   204,   205,   206,
2094       207,   208,   209,   210,   211,   212,   213,   214,   215,   216,       207,   208,   209,   210,   211,   212,   213,   214,   215,   216,
2095       217,   218,   219,   220,   221,   222,   223,     3,     4,     5,       217,   218,   219,   220,   221,   222,   223,     3,     4,     5,
2096        -1,    -1,     8,     9,    10,    11,    12,    13,    14,    15,         6,     7,     8,     9,    10,    11,    12,    13,    14,    15,
2097        16,    17,    18,    19,    20,    21,    22,    23,    24,    25,        16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
2098        26,    27,    28,    29,    30,    31,    32,    33,    34,    35,        26,    27,    28,    29,    30,    31,    32,    33,    34,    35,
2099        36,    37,    38,    39,    40,    41,    42,    43,    44,    45,        36,    37,    38,    39,    40,    41,    42,    43,    44,    45,
# Line 1952  static const short int yycheck[] = Line 2114  static const short int yycheck[] =
2114       186,   187,   188,   189,   190,   191,   192,   193,   194,   195,       186,   187,   188,   189,   190,   191,   192,   193,   194,   195,
2115       196,   197,   198,   199,   200,   201,   202,   203,   204,   205,       196,   197,   198,   199,   200,   201,   202,   203,   204,   205,
2116       206,   207,   208,   209,   210,   211,   212,   213,   214,   215,       206,   207,   208,   209,   210,   211,   212,   213,   214,   215,
2117       216,   217,   218,   219,   220,   221,   222,   223       216,   217,   218,   219,   220,   221,     3,     4,     5,     6,
2118  };         7,     8,     9,    10,    11,    12,    13,    14,    15,    16,
2119          17,    18,    19,    20,    21,    22,    23,    24,    25,    26,
2120  /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing        27,    28,    29,    30,    31,    32,    33,    34,    35,    36,
2121     symbol of state STATE-NUM.  */        37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
2122  static const unsigned short int yystos[] =        47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
2123  {        57,    58,    59,    60,    61,    62,    63,    64,    65,    66,
2124         0,     1,     3,    21,    23,    24,    27,    32,    37,    38,        67,    68,    69,    70,    71,    72,    73,    74,    75,    76,
2125        39,    41,   228,   229,   230,   231,   270,   271,   272,   273,        77,    78,    79,    80,    81,    82,    83,    84,    85,    86,
2126       274,   275,   278,   279,   280,   281,   282,   322,   325,    24,        87,    88,    89,    90,    91,    92,    93,    94,    95,    96,
2127        38,    25,    25,    29,    35,    41,    25,    25,    41,    34,        97,    98,    99,   100,   101,   102,   103,   104,   105,   106,
2128         0,   225,   226,   268,   269,     3,     4,     5,     8,     9,       107,   108,   109,   110,   111,   112,   113,   114,   115,   116,
2129         117,   118,   119,   120,   121,   122,   123,   124,   125,   126,
2130         127,   128,   129,   130,   131,   132,   133,   134,   135,   136,
2131         137,   138,   139,   140,   141,   142,   143,   144,   145,   146,
2132         147,   148,   149,   150,   151,   152,   153,   154,   155,   156,
2133         157,   158,   159,   160,   161,   162,   163,   164,   165,   166,
2134         167,   168,   169,   170,   171,   172,   173,   174,   175,   176,
2135         177,   178,   179,   180,   181,   182,   183,   184,   185,   186,
2136         187,   188,   189,   190,   191,   192,   193,   194,   195,   196,
2137         197,   198,   199,   200,   201,   202,   203,   204,   205,   206,
2138         207,   208,   209,   210,   211,   212,   213,   214,   215,   216,
2139         217,   218,   219,   220,   221,     3,     4,     5,     6,     7,
2140           8,     9,    10,    11,    12,    13,    14,    15,    16,    17,
2141          18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
2142          28,    29,    30,    31,    32,    33,    34,    35,    36,    37,
2143          38,    39,    40,    41,    42,    43,    44,    45,    46,    47,
2144          48,    49,    50,    51,    52,    53,    54,    55,    56,    57,
2145          58,    59,    60,    61,    62,    63,    64,    65,    66,    67,
2146          68,    69,    70,    71,    72,    73,    74,    75,    76,    77,
2147          78,    79,    80,    81,    82,    83,    84,    85,    86,    87,
2148          88,    89,    90,    91,    92,    93,    94,    95,    96,    97,
2149          98,    99,   100,   101,   102,   103,   104,   105,   106,   107,
2150         108,   109,   110,   111,   112,   113,   114,   115,   116,   117,
2151         118,   119,   120,   121,   122,   123,   124,   125,   126,   127,
2152         128,   129,   130,   131,   132,   133,   134,   135,   136,   137,
2153         138,   139,   140,   141,   142,   143,   144,   145,   146,   147,
2154         148,   149,   150,   151,   152,   153,   154,   155,   156,   157,
2155         158,   159,   160,   161,   162,   163,   164,   165,   166,   167,
2156         168,   169,   170,   171,   172,   173,   174,   175,   176,   177,
2157         178,   179,   180,   181,   182,   183,   184,   185,   186,   187,
2158         188,   189,   190,   191,   192,   193,   194,   195,   196,   197,
2159         198,   199,   200,   201,   202,   203,   204,   205,   206,   207,
2160         208,   209,   210,   211,   212,   213,   214,   215,   216,   217,
2161         218,   219,   220,   221,     3,     4,     5,     6,     7,     8,
2162           9,    10,    11,    12,    13,    14,    15,    16,    17,    18,
2163          19,    20,    21,    22,    23,    24,    25,    26,    27,    28,
2164          29,    30,    31,    32,    33,    34,    35,    36,    37,    38,
2165          39,    40,    41,    42,    43,    44,    45,    46,    47,    48,
2166          49,    50,    51,    52,    53,    54,    55,    56,    57,    58,
2167          59,    60,    61,    62,    63,    64,    65,    66,    67,    68,
2168          69,    70,    71,    72,    73,    74,    75,    76,    77,    78,
2169          79,    80,    81,    82,    83,    84,    85,    86,    87,    88,
2170          89,    90,    91,    92,    93,    94,    95,    96,    97,    98,
2171          99,   100,   101,   102,   103,   104,   105,   106,   107,   108,
2172         109,   110,   111,   112,   113,   114,   115,   116,   117,   118,
2173         119,   120,   121,   122,   123,   124,   125,   126,   127,   128,
2174         129,   130,   131,   132,   133,   134,   135,   136,   137,   138,
2175         139,   140,   141,   142,   143,   144,   145,   146,   147,   148,
2176         149,   150,   151,   152,   153,   154,   155,   156,   157,   158,
2177         159,   160,   161,   162,   163,   164,   165,   166,   167,   168,
2178         169,   170,   171,   172,   173,   174,   175,   176,   177,   178,
2179         179,   180,   181,   182,   183,   184,   185,   186,   187,   188,
2180         189,   190,   191,   192,   193,   194,   195,   196,   197,   198,
2181         199,   200,   201,   202,   203,   204,   205,   206,   207,   208,
2182         209,   210,   211,   212,   213,   214,   215,   216,   217,   218,
2183         219,   220,   221,     3,     4,     5,     6,     7,     8,     9,
2184        10,    11,    12,    13,    14,    15,    16,    17,    18,    19,        10,    11,    12,    13,    14,    15,    16,    17,    18,    19,
2185        20,    21,    22,    23,    24,    25,    26,    27,    28,    29,        20,    21,    22,    23,    24,    25,    26,    27,    28,    29,
2186        30,    31,    32,    33,    34,    35,    36,    37,    38,    39,        30,    31,    32,    33,    34,    35,    36,    37,    38,    39,
# Line 1985  static const unsigned short int yystos[] Line 2202  static const unsigned short int yystos[]
2202       190,   191,   192,   193,   194,   195,   196,   197,   198,   199,       190,   191,   192,   193,   194,   195,   196,   197,   198,   199,
2203       200,   201,   202,   203,   204,   205,   206,   207,   208,   209,       200,   201,   202,   203,   204,   205,   206,   207,   208,   209,
2204       210,   211,   212,   213,   214,   215,   216,   217,   218,   219,       210,   211,   212,   213,   214,   215,   216,   217,   218,   219,
2205       220,   221,   222,   223,   224,   259,   262,   263,   264,   267,       220,   221,     3,     4,     5,     6,     7,     8,     9,    10,
2206       267,   267,   267,   267,   267,   267,   267,   267,   267,   267,        11,    12,    13,    14,    15,    16,    17,    18,    19,    20,
2207       267,   267,    24,    25,    39,    40,    39,    21,    29,    33,        21,    22,    23,    24,    25,    26,    27,    28,    29,    30,
2208        39,    32,    40,    22,    39,   268,    11,    12,    13,    14,        31,    32,    33,    34,    35,    36,    37,    38,    39,    40,
2209        15,    16,    17,    18,    19,    20,   261,   262,   261,   261,        41,    42,    43,    44,    45,    46,    47,    48,    49,    50,
2210       261,   261,   261,   261,   261,   261,     3,    11,    12,    13,        51,    52,    53,    54,    55,    56,    57,    58,    59,    60,
2211        14,    15,    16,    17,    18,    19,    20,   264,    23,   283,        61,    62,    63,    64,    65,    66,    67,    68,    69,    70,
2212        21,    23,    25,    33,    39,    40,   234,   283,   284,   285,        71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
2213       286,   293,   294,   296,   298,   299,   300,   301,   302,   303,        81,    82,    83,    84,    85,    86,    87,    88,    89,    90,
2214       305,   307,   308,   309,   310,   311,   312,   316,    21,    33,        91,    92,    93,    94,    95,    96,    97,    98,    99,   100,
2215       236,   299,   309,   237,   299,   309,    21,    23,    33,   242,       101,   102,   103,   104,   105,   106,   107,   108,   109,   110,
2216       284,   285,   286,   298,   305,   308,    29,   238,   295,   296,       111,   112,   113,   114,   115,   116,   117,   118,   119,   120,
2217       283,    21,    25,    33,   235,   283,   297,   302,   306,   307,       121,   122,   123,   124,   125,   126,   127,   128,   129,   130,
2218       324,    22,    23,    33,    39,    40,    42,   232,   288,   289,       131,   132,   133,   134,   135,   136,   137,   138,   139,   140,
2219       290,   291,   292,   293,   323,   233,   288,   289,   290,   291,       141,   142,   143,   144,   145,   146,   147,   148,   149,   150,
2220       292,   293,   323,   259,   265,   267,   283,    21,    40,    40,       151,   152,   153,   154,   155,   156,   157,   158,   159,   160,
2221        24,    40,    35,    25,    25,    39,    41,   262,    28,    41,       161,   162,   163,   164,   165,   166,   167,   168,   169,   170,
2222        42,    28,    34,    29,    25,    35,   267,   267,   267,   267,       171,   172,   173,   174,   175,   176,   177,   178,   179,   180,
2223       267,   267,   267,   267,   267,   267,   267,   267,   267,    41,       181,   182,   183,   184,   185,   186,   187,   188,   189,   190,
2224        29,   267,   267,   267,   267,    41,    28,    29,    34,   267,       191,   192,   193,   194,   195,   196,   197,   198,   199,   200,
2225       267,   267,    41,    23,    29,   267,   267,   267,   267,   267,       201,   202,   203,   204,   205,   206,   207,   208,   209,   210,
2226       267,    41,    28,    29,    40,    35,    35,   259,   267,   267,       211,   212,   213,   214,   215,   216,   217,   218,   219,   220,
2227        40,    38,    42,    40,    23,    23,    22,    21,    24,    21,       221,     3,     4,     5,     6,     7,     8,     9,    10,    11,
2228        21,    27,    24,    38,    40,    29,   287,   290,   291,   292,        12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
2229       287,   287,   287,   287,   287,   287,   287,   287,   287,   287,        22,    23,    24,    25,    26,    27,    28,    29,    30,    31,
2230       287,   287,    24,    24,   259,   259,    12,    13,    14,    15,        32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
2231        16,    17,    18,    19,    20,   263,   263,    24,    21,    24,        42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
2232        39,     6,     7,    34,   243,   255,   266,   277,   244,   254,        52,    53,    54,    55,    56,    57,    58,    59,    60,    61,
2233       259,   252,   263,    24,    28,    24,    21,    33,    39,    42,        62,    63,    64,    65,    66,    67,    68,    69,    70,    71,
2234       239,   299,   303,   304,   309,   312,   313,   314,   315,   317,        72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
2235       318,   319,   263,   263,   263,   263,   258,   259,   263,    26,        82,    83,    84,    85,    86,    87,    88,    89,    90,    91,
2236        21,    39,    38,    40,    29,   252,    25,    35,    25,    40,        92,    93,    94,    95,    96,    97,    98,    99,   100,   101,
2237        38,    39,    34,    29,    29,    34,    29,    29,    42,    21,       102,   103,   104,   105,   106,   107,   108,   109,   110,   111,
2238        34,   267,   267,   267,   267,   267,   267,   267,   267,   267,       112,   113,   114,   115,   116,   117,   118,   119,   120,   121,
2239       267,   267,   267,   267,   267,   267,    29,    29,   267,   267,       122,   123,   124,   125,   126,   127,   128,   129,   130,   131,
2240        29,    34,    29,    40,   265,   265,    35,   267,   267,   267,       132,   133,   134,   135,   136,   137,   138,   139,   140,   141,
2241        29,    35,    29,    41,    29,    41,    35,    35,   267,   267,       142,   143,   144,   145,   146,   147,   148,   149,   150,   151,
2242       267,   267,   267,   267,   267,   267,   267,   267,   267,   267,       152,   153,   154,   155,   156,   157,   158,   159,   160,   161,
2243       267,   267,   267,    26,    34,    23,    25,    21,    23,    45,       162,   163,   164,   165,   166,   167,   168,   169,   170,   171,
2244        29,    23,    34,    35,    32,    34,    34,    91,    25,    32,       172,   173,   174,   175,   176,   177,   178,   179,   180,   181,
2245        26,   252,    22,    36,   241,   320,   321,   252,   252,   254,       182,   183,   184,   185,   186,   187,   188,   189,   190,   191,
2246       263,   259,   259,   263,   263,   263,   263,   259,   259,   263,       192,   193,   194,   195,   196,   197,   198,   199,   200,   201,
2247        35,    91,   240,   259,   240,    35,    34,    91,    38,     6,       202,   203,   204,   205,   206,   207,   208,   209,   210,   211,
2248         7,    34,   253,   263,   255,   252,    35,    91,    24,    24,       212,   213,   214,   215,   216,   217,   218,   219,   220,   221,
2249        40,    32,    32,   252,   252,   252,   252,   252,   252,   252,         3,     4,     5,     6,     7,     8,     9,    10,    11,    12,
2250       252,   252,   252,   252,   259,   263,   259,   263,    25,    34,        13,    14,    15,    16,    17,    18,    19,    20,    21,    22,
2251        25,    21,    32,    25,    22,    38,    25,    91,    21,    25,        23,    24,    25,    26,    27,    28,    29,    30,    31,    32,
2252        25,    29,    38,    91,    35,    45,    25,   267,   267,   267,        33,    34,    35,    36,    37,    38,    39,    40,    41,    42,
2253       267,   267,   267,   267,    91,    29,   267,     4,    91,    25,        43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
2254        29,    41,    91,   267,   267,    91,    29,    29,    29,    25,        53,    54,    55,    56,    57,    58,    59,    60,    61,    62,
2255        35,    41,   267,   267,   267,   267,   267,   267,   267,   267,        63,    64,    65,    66,    67,    68,    69,    70,    71,    72,
2256       267,   267,   267,     4,   267,     4,   267,    38,    25,    32,        73,    74,    75,    76,    77,    78,    79,    80,    81,    82,
2257        33,    91,    91,    25,    29,    32,    35,    22,    32,    34,        83,    84,    85,    86,    87,    88,    89,    90,    91,    92,
2258        42,    40,    38,   252,   259,   263,   263,   263,   259,   263,        93,    94,    95,    96,    97,    98,    99,   100,   101,   102,
2259        35,    34,   259,     6,     7,     9,    10,   256,   257,   259,       103,   104,   105,   106,   107,   108,   109,   110,   111,   112,
2260       260,   261,   262,   263,    35,    32,    34,    33,    33,   252,       113,   114,   115,   116,   117,   118,   119,   120,   121,   122,
2261       253,    35,    34,    35,    91,    33,   245,   263,   246,   263,       123,   124,   125,   126,   127,   128,   129,   130,   131,   132,
2262       247,   259,   245,   248,   263,    21,   249,   263,   276,   250,       133,   134,   135,   136,   137,   138,   139,   140,   141,   142,
2263       259,   245,     9,    10,   251,   260,   263,   258,   258,   256,       143,   144,   145,   146,   147,   148,   149,   150,   151,   152,
2264       259,   256,   259,    91,    32,    32,    91,    42,    23,    22,       153,   154,   155,   156,   157,   158,   159,   160,   161,   162,
2265        41,    32,    39,    36,    35,    25,    23,   267,   267,   267,       163,   164,   165,   166,   167,   168,   169,   170,   171,   172,
2266       267,    41,    36,     4,   259,   259,   261,   261,     5,     8,       173,   174,   175,   176,   177,   178,   179,   180,   181,   182,
2267        41,    36,    25,    35,   267,    41,    36,    91,    29,    25,       183,   184,   185,   186,   187,   188,   189,   190,   191,   192,
2268       267,    32,   267,     4,     4,    26,    91,    21,    23,    35,       193,   194,   195,   196,   197,   198,   199,   200,   201,   202,
2269        35,    25,    40,    25,    41,    29,    39,    25,   240,   259,       203,   204,   205,   206,   207,   208,   209,   210,   211,   212,
2270       259,   240,    40,    41,   256,     6,     7,     8,     8,   257,       213,   214,   215,   216,   217,   218,   219,   220,   221
      261,    40,    41,    34,    24,   252,    40,    41,    35,    34,  
      246,    32,   248,   256,   256,    29,    23,    29,    34,    35,  
       29,    41,    36,    91,    40,    23,    34,    36,    40,   261,  
      261,    36,    40,    40,    21,    36,    40,    41,    36,   267,  
       32,    35,    34,    25,    41,    23,    34,    41,    21,    25,  
       33,    91,    25,    40,    41,    91,    41,    91,    32,    41,  
       91,    40,    41,   249,    32,    41,    26,    35,    34,    25,  
       40,    40,    41,    34,    29,    24,    36,    91,    21,    40,  
       24,    40,    24,    40,    24,    36,    36,    40,    34,    35,  
       41,    40,    91,    91,    24,    27,    24,    25,    38,    35,  
       23,    27,    91,    25,    91,    25,    91,    25,    35,    41,  
       91,    40,    39,    23,    23,    24,    29,    29,    29,    42,  
       29,    38,    35,    25,    24,    42,    24,    42,    23,    24,  
       42,    38,    40,    23,    36,    40,    35,    28,    25,    38,  
       35,    34,    91,    29,    42,    40,    41,    25,    29,    25,  
       29,    28,    25,    29,    40,    91,    28,    35,    45,    41,  
       21,    42,    29,    91,    25,    29,    23,    25,    91,    34,  
       42,    23,    42,    23,    21,    42,    23,    23,    40,    21,  
       38,    36,    34,    34,    29,    42,    35,    39,    34,    25,  
       38,    36,    40,    29,    25,    29,    25,    34,    29,    25,  
       28,    45,    34,    40,    25,    40,    34,    23,    25,    41,  
       36,    39,    91,    21,    91,    23,    23,    34,    23,    91,  
       21,    36,    34,    25,    25,    38,    40,    41,    36,    38,  
       33,    25,    25,    25,    25,    36,    34,    25,    25,    32,  
       39,    91,    36,    40,    21,    21,    21,    32,    91,    21,  
       34,    32,    91,    36,    41,    91,    38,    33,    44,    36,  
       38,    25,    36,    21,    40,    24,    21,    25,    21,    21,  
       32,    21,    38,    91,    38,    33,    40,    38,    33,    38,  
       21,    24,    29,    25,    25,    21,    25,    21,    33,    38,  
       42,    40,    38,    33,    40,    33,    25,    29,    25,    25,  
       25,    25,    25,    40,    42,    38,    38,    40,    38,    40,  
       25,    25,    39,    25,    25,    38,    38,    38,    38,    39  
2271  };  };
2272    
2273  #if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__)  /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
2274  # define YYSIZE_T __SIZE_TYPE__     symbol of state STATE-NUM.  */
2275  #endif  static const yytype_uint16 yystos[] =
2276  #if ! defined (YYSIZE_T) && defined (size_t)  {
2277  # define YYSIZE_T size_t         0,     1,     3,    19,    21,    22,    25,    30,    31,    35,
2278  #endif        36,    37,    39,   228,   229,   230,   231,   285,   286,   287,
2279  #if ! defined (YYSIZE_T)       288,   289,   290,   291,   292,   293,   298,   299,   300,   301,
2280  # if defined (__STDC__) || defined (__cplusplus)       302,   359,   363,    22,    30,    36,    23,    23,    27,    33,
2281  #  include <stddef.h> /* INFRINGES ON USER NAME SPACE */        19,    39,    23,    23,    39,    32,     0,   225,   226,   283,
2282  #  define YYSIZE_T size_t       284,     3,     4,     5,     6,     7,     8,     9,    10,    11,
2283  # endif        12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
2284  #endif        22,    23,    24,    25,    26,    27,    28,    29,    30,    31,
2285  #if ! defined (YYSIZE_T)        32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
2286  # define YYSIZE_T unsigned int        42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
2287  #endif        52,    53,    54,    55,    56,    57,    58,    59,    60,    61,
2288          62,    63,    64,    65,    66,    67,    68,    69,    70,    71,
2289          72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
2290          82,    83,    84,    85,    86,    87,    88,    89,    90,    91,
2291          92,    93,    94,    95,    96,    97,    98,    99,   100,   101,
2292         102,   103,   104,   105,   106,   107,   108,   109,   110,   111,
2293         112,   113,   114,   115,   116,   117,   118,   119,   120,   121,
2294         122,   123,   124,   125,   126,   127,   128,   129,   130,   131,
2295         132,   133,   134,   135,   136,   137,   138,   139,   140,   141,
2296         142,   143,   144,   145,   146,   147,   148,   149,   150,   151,
2297         152,   153,   154,   155,   156,   157,   158,   159,   160,   161,
2298         162,   163,   164,   165,   166,   167,   168,   169,   170,   171,
2299         172,   173,   174,   175,   176,   177,   178,   179,   180,   181,
2300         182,   183,   184,   185,   186,   187,   188,   189,   190,   191,
2301         192,   193,   194,   195,   196,   197,   198,   199,   200,   201,
2302         202,   203,   204,   205,   206,   207,   208,   209,   210,   211,
2303         212,   213,   214,   215,   216,   217,   218,   219,   220,   221,
2304         224,   274,   277,   278,   279,   282,   282,   282,   282,   282,
2305         282,   282,   282,   282,   282,   282,   282,   282,   282,   282,
2306         282,    22,    23,    23,    37,    38,    37,    19,    34,    27,
2307          31,    37,    30,    38,    20,    31,    37,   283,     9,    10,
2308          11,    12,    13,    14,    15,    16,    17,    18,   276,   277,
2309         276,   276,   276,   276,   276,   276,   276,   276,     3,     9,
2310          10,    11,    12,    13,    14,    15,    16,    17,    18,   279,
2311          21,    31,   232,   303,   344,    19,    21,    23,    24,    31,
2312          37,    38,    40,   238,   303,   304,   305,   306,   321,   322,
2313         324,   329,   330,   331,   332,   333,   334,   336,   338,   339,
2314         340,   341,   342,   343,   344,   345,   346,   347,   351,   352,
2315         353,   354,    31,   235,   342,   236,   342,    31,   242,   343,
2316          19,    24,    31,   240,   330,   340,   351,   243,   330,   340,
2317         351,    19,    21,    24,    31,   248,   304,   305,   306,   329,
2318         336,   339,   343,   345,   352,    27,   244,   323,   324,   237,
2319         303,   344,    19,    23,    31,   239,   303,   328,   333,   337,
2320         338,   344,   351,   354,   362,    19,    20,    21,    31,    37,
2321          38,    40,   233,   308,   309,   310,   311,   312,   313,   314,
2322         315,   316,   317,   318,   319,   320,   321,   360,   234,   308,
2323         309,   310,   311,   312,   313,   314,   315,   316,   317,   318,
2324         319,   320,   321,   360,   274,   280,   282,   241,   303,    19,
2325          19,    38,    38,    22,    38,    33,    23,    23,    37,    19,
2326          39,   277,    26,    27,   282,    39,    40,    26,    32,    42,
2327          27,    23,    33,    33,   282,   282,   282,   282,   282,   282,
2328         282,   282,   282,   282,   282,   282,   282,   282,   282,   282,
2329         282,   282,    27,   282,   282,    27,   282,    39,    42,    27,
2330         282,   282,   282,   282,   282,   282,    39,    26,    42,    27,
2331         282,   282,    32,   282,   282,   282,   282,    39,    21,    27,
2332         282,   282,   282,   282,   282,   282,   282,   282,   282,    39,
2333          39,    26,    27,    38,    33,    33,   274,   282,   282,    36,
2334          38,    36,    40,    38,    21,    21,    34,    20,    19,    22,
2335         222,   223,   268,   281,    22,    19,    19,    25,    89,    22,
2336          36,    38,    30,    27,   307,   318,   319,   320,   307,   307,
2337         307,   307,   307,   307,   307,   307,   307,   307,    10,    11,
2338          12,    13,    14,    15,    16,    17,    18,    19,   258,   278,
2339         294,   307,   307,   307,   307,   263,   278,   307,    22,   258,
2340         258,    22,   258,   294,    22,    89,    22,   274,   274,   263,
2341         278,   278,   263,    22,    19,    89,    22,   258,   294,   263,
2342          37,    32,   249,   267,   281,   297,   250,   266,   274,   263,
2343         258,   294,    22,    26,    22,    19,    31,    37,   245,   330,
2344         334,   335,   340,   344,   347,   348,   349,   350,   354,   355,
2345         356,   278,   278,   278,   278,    32,   361,    19,   334,     7,
2346           8,   262,   275,   276,   277,   278,   273,   274,   278,    22,
2347          24,    19,    22,    37,    36,    38,    27,   263,    23,    33,
2348          23,    38,    36,    37,    32,    27,   280,   280,    27,    27,
2349          32,    27,    37,    27,    40,    19,    39,    32,   282,   282,
2350         282,   282,   282,   282,   282,   282,   282,   282,   282,   282,
2351         282,   282,    30,   282,   282,   282,   282,    27,   282,   282,
2352          27,    27,    37,    27,   282,   282,   282,   282,    27,    32,
2353          37,    27,    38,    33,   282,   282,   282,    27,    33,    27,
2354          39,    27,    39,    33,   282,   282,   282,   282,   282,   282,
2355         282,   282,   282,   282,   282,   282,   282,   282,   282,   282,
2356          19,   282,    39,   282,   276,   276,     6,    27,    24,    32,
2357          27,    21,    23,    19,    21,    43,    27,    21,    32,    89,
2358         222,   223,    33,    30,    32,    32,    23,    89,    23,    30,
2359          31,    24,   263,    20,    34,   247,   357,   358,   263,   263,
2360         266,   278,   274,   274,   278,   278,   278,   278,   274,   258,
2361          30,   258,   274,   278,   263,    89,   259,   278,   259,    89,
2362          33,    23,    89,   246,   274,   246,   261,   278,   265,   278,
2363          33,    32,    23,    89,    36,    32,   264,   278,   267,   263,
2364          33,    89,    22,    22,    38,    30,   263,   263,   263,   263,
2365         263,   263,   263,   263,   263,   263,   263,   263,   274,   278,
2366         274,   278,    31,   258,    22,   263,     6,     6,   276,    33,
2367          23,    32,    89,    23,    19,    30,    23,    20,    36,    23,
2368          27,    89,    19,    23,    23,    32,    27,    36,    89,    23,
2369          33,    43,    23,   282,   282,   282,   282,   282,   282,   282,
2370         282,   282,    27,   282,   282,    27,    89,    32,    27,   282,
2371           4,   282,    89,    23,    32,    27,    39,    89,   282,   282,
2372          89,    27,    27,    27,    23,    33,   282,   282,   282,   282,
2373         282,   282,   282,   282,   282,   282,   282,   282,     4,   282,
2374           4,   282,    23,   282,    27,   282,   276,   276,    89,    36,
2375          23,    27,    30,    31,    89,    89,    23,    27,    30,    32,
2376          33,    20,    30,    22,    32,    40,    38,    36,   263,   274,
2377         278,   278,   278,   274,   259,   278,   265,    32,   260,   278,
2378         260,    32,    33,    22,    32,   274,     7,     8,   271,   272,
2379         274,   275,   278,   281,   270,   281,    33,    30,    22,    32,
2380          31,    31,   263,   264,    33,    32,    33,    89,   252,   278,
2381         253,   278,   254,   274,   252,    22,    32,   258,   295,   296,
2382         255,   278,   256,   278,   294,   257,   274,   252,   262,   273,
2383         273,   271,   274,   271,   274,   268,    33,   265,    33,    89,
2384          30,    32,    30,    89,    40,    21,    20,    37,    39,    30,
2385          37,    37,    34,    37,    33,    23,    21,   282,   282,   282,
2386         282,   282,    37,   282,    37,    39,    34,     4,     5,    39,
2387          34,    37,    23,    33,   282,    39,    34,    89,    27,   282,
2388          23,    33,   282,     4,     4,    89,   282,    39,    24,    89,
2389          34,    37,    19,    21,    33,    33,    23,    38,    38,    23,
2390          39,    38,    27,    37,    23,   246,   274,   274,   246,   260,
2391          38,   266,    38,    38,    39,   271,   272,    38,    39,    38,
2392          32,    22,   263,    38,    39,    33,    32,   253,    24,    32,
2393         255,   271,   271,    33,   253,    38,    27,    21,    27,    39,
2394          38,    32,    33,    27,    39,    36,    34,    89,    38,    36,
2395          21,    32,    36,   282,    36,    34,    38,    34,    38,    36,
2396          38,    19,    34,    38,    39,    34,    19,    23,   282,    39,
2397         282,    34,    30,    33,    32,    38,    36,    23,    39,    21,
2398          32,    39,    39,    19,    23,    31,    89,    39,    23,    38,
2399          39,   267,    39,    39,    89,    39,    89,    39,    30,    39,
2400          89,    38,    39,    39,   256,    38,   253,    39,    30,    39,
2401          24,    89,    39,    33,    32,    23,    38,    31,    38,    39,
2402          32,    27,    22,    34,    31,    89,    19,    31,   282,    31,
2403          38,    22,    38,    22,    31,    38,    22,    34,    34,    38,
2404          30,    34,    38,    32,    33,    22,    31,    39,    38,    89,
2405          23,    89,    22,    25,    22,    23,    36,    33,    23,    21,
2406          25,    23,   264,    23,    89,    23,    89,    23,    23,    89,
2407          23,    33,    39,    89,    38,    39,    89,    38,    23,    23,
2408          37,    21,    32,    21,    22,    27,    27,    27,    40,    27,
2409          36,    32,    33,    23,    32,   282,    32,    22,    40,    22,
2410          40,    32,    21,    22,    40,    36,    38,    21,    34,    38,
2411          38,    22,    40,    32,    33,    38,    26,    23,    36,    33,
2412          32,    89,    27,    40,    38,    38,    39,    38,   262,    38,
2413          23,    27,    23,    27,    38,    26,    23,    27,    38,    89,
2414          26,    33,    43,    89,    23,    27,    38,    39,    89,    19,
2415          40,    27,    89,    23,    27,    21,    23,    89,    37,    89,
2416          32,   282,    40,    21,    40,    21,    89,    19,    40,    21,
2417          21,    38,    19,    36,    34,    40,    21,    89,    32,    31,
2418          32,    27,    40,    33,    37,    32,    23,    36,    34,    31,
2419          38,    33,    34,   251,   269,   281,   325,   326,   327,    27,
2420          23,    27,    23,    31,    32,    27,    23,    26,    43,    32,
2421          38,    23,    27,    23,    21,    27,    31,    38,    19,    32,
2422          21,    23,    39,    34,    37,    89,    19,    19,    89,    32,
2423          23,   282,    21,    21,    19,    32,    21,    89,    19,    34,
2424          32,    21,    89,    33,    32,    19,    34,    23,    23,    36,
2425          38,    39,    34,    36,    34,    31,    89,    36,   269,    23,
2426          23,    34,    23,    23,    34,    32,    23,    23,    23,    21,
2427          27,    39,    24,    34,    30,    37,    89,    34,    38,    19,
2428          19,    37,    19,    22,    37,    30,    89,    19,    32,    30,
2429          89,    33,    32,    32,    33,    89,    89,    34,    39,    89,
2430          36,    31,    42,    23,    27,    34,    36,    23,    21,    27,
2431          39,    24,    38,    21,    27,    34,    19,    38,    22,    19,
2432          23,    31,    37,    19,    19,    30,    33,    32,    32,    33,
2433          33,    32,    19,    36,    89,    36,    31,    38,    19,    38,
2434          36,    31,    39,    24,    38,    39,    24,    36,    19,    22,
2435          27,    23,    23,    32,    23,    19,    23,    32,    33,    32,
2436          33,    19,    31,    36,    40,    38,    36,    22,    32,    31,
2437          38,    38,    38,    31,    23,    27,    23,    23,    89,    38,
2438          23,    23,    23,    38,    40,    36,    36,    26,    38,    36,
2439          38,    23,    23,    37,    33,    23,    23,    36,    36,    30,
2440          36,    36,    37,    22
2441    };
2442    
2443  #define yyerrok         (yyerrstatus = 0)  #define yyerrok         (yyerrstatus = 0)
2444  #define yyclearin       (yychar = YYEMPTY)  #define yyclearin       (yychar = YYEMPTY)
# Line 2126  do                                                             \ Line 2465  do                                                             \
2465        yychar = (Token);                                         \        yychar = (Token);                                         \
2466        yylval = (Value);                                         \        yylval = (Value);                                         \
2467        yytoken = YYTRANSLATE (yychar);                           \        yytoken = YYTRANSLATE (yychar);                           \
2468        YYPOPSTACK;                                               \        YYPOPSTACK (1);                                           \
2469        goto yybackup;                                            \        goto yybackup;                                            \
2470      }                                                           \      }                                                           \
2471    else                                                          \    else                                                          \
2472      {                                                           \      {                                                           \
2473        yyerror ("syntax error: cannot back up");\        yyerror (YY_("syntax error: cannot back up")); \
2474        YYERROR;                                                  \        YYERROR;                                                  \
2475      }                                                           \      }                                                           \
2476  while (0)  while (YYID (0))
2477    
2478    
2479  #define YYTERROR        1  #define YYTERROR        1
# Line 2149  while (0) Line 2488  while (0)
2488  #ifndef YYLLOC_DEFAULT  #ifndef YYLLOC_DEFAULT
2489  # define YYLLOC_DEFAULT(Current, Rhs, N)                                \  # define YYLLOC_DEFAULT(Current, Rhs, N)                                \
2490      do                                                                  \      do                                                                  \
2491        if (N)                                                            \        if (YYID (N))                                                    \
2492          {                                                               \          {                                                               \
2493            (Current).first_line   = YYRHSLOC (Rhs, 1).first_line;        \            (Current).first_line   = YYRHSLOC (Rhs, 1).first_line;        \
2494            (Current).first_column = YYRHSLOC (Rhs, 1).first_column;      \            (Current).first_column = YYRHSLOC (Rhs, 1).first_column;      \
# Line 2163  while (0) Line 2502  while (0)
2502            (Current).first_column = (Current).last_column =              \            (Current).first_column = (Current).last_column =              \
2503              YYRHSLOC (Rhs, 0).last_column;                              \              YYRHSLOC (Rhs, 0).last_column;                              \
2504          }                                                               \          }                                                               \
2505      while (0)      while (YYID (0))
2506  #endif  #endif
2507    
2508    
# Line 2175  while (0) Line 2514  while (0)
2514  # if YYLTYPE_IS_TRIVIAL  # if YYLTYPE_IS_TRIVIAL
2515  #  define YY_LOCATION_PRINT(File, Loc)                  \  #  define YY_LOCATION_PRINT(File, Loc)                  \
2516       fprintf (File, "%d.%d-%d.%d",                      \       fprintf (File, "%d.%d-%d.%d",                      \
2517                (Loc).first_line, (Loc).first_column,     \                (Loc).first_line, (Loc).first_column,     \
2518                (Loc).last_line,  (Loc).last_column)                (Loc).last_line,  (Loc).last_column)
2519  # else  # else
2520  #  define YY_LOCATION_PRINT(File, Loc) ((void) 0)  #  define YY_LOCATION_PRINT(File, Loc) ((void) 0)
2521  # endif  # endif
# Line 2203  while (0) Line 2542  while (0)
2542  do {                                            \  do {                                            \
2543    if (yydebug)                                  \    if (yydebug)                                  \
2544      YYFPRINTF Args;                             \      YYFPRINTF Args;                             \
2545  } while (0)  } while (YYID (0))
2546    
2547  # define YY_SYMBOL_PRINT(Title, Type, Value, Location)          \  # define YY_SYMBOL_PRINT(Title, Type, Value, Location)                    \
2548  do {                                                            \  do {                                                                      \
2549    if (yydebug)                                                  \    if (yydebug)                                                            \
2550      {                                                           \      {                                                                     \
2551        YYFPRINTF (stderr, "%s ", Title);                         \        YYFPRINTF (stderr, "%s ", Title);                                   \
2552        yysymprint (stderr,                                       \        yy_symbol_print (stderr,                                            \
2553                    Type, Value); \                    Type, Value); \
2554        YYFPRINTF (stderr, "\n");                                 \        YYFPRINTF (stderr, "\n");                                           \
2555      }                                                           \      }                                                                     \
2556  } while (0)  } while (YYID (0))
2557    
2558    
2559    /*--------------------------------.
2560    | Print this symbol on YYOUTPUT.  |
2561    `--------------------------------*/
2562    
2563    /*ARGSUSED*/
2564    #if (defined __STDC__ || defined __C99__FUNC__ \
2565         || defined __cplusplus || defined _MSC_VER)
2566    static void
2567    yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep)
2568    #else
2569    static void
2570    yy_symbol_value_print (yyoutput, yytype, yyvaluep)
2571        FILE *yyoutput;
2572        int yytype;
2573        YYSTYPE const * const yyvaluep;
2574    #endif
2575    {
2576      if (!yyvaluep)
2577        return;
2578    # ifdef YYPRINT
2579      if (yytype < YYNTOKENS)
2580        YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
2581    # else
2582      YYUSE (yyoutput);
2583    # endif
2584      switch (yytype)
2585        {
2586          default:
2587            break;
2588        }
2589    }
2590    
2591    
2592    /*--------------------------------.
2593    | Print this symbol on YYOUTPUT.  |
2594    `--------------------------------*/
2595    
2596    #if (defined __STDC__ || defined __C99__FUNC__ \
2597         || defined __cplusplus || defined _MSC_VER)
2598    static void
2599    yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep)
2600    #else
2601    static void
2602    yy_symbol_print (yyoutput, yytype, yyvaluep)
2603        FILE *yyoutput;
2604        int yytype;
2605        YYSTYPE const * const yyvaluep;
2606    #endif
2607    {
2608      if (yytype < YYNTOKENS)
2609        YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
2610      else
2611        YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);
2612    
2613      yy_symbol_value_print (yyoutput, yytype, yyvaluep);
2614      YYFPRINTF (yyoutput, ")");
2615    }
2616    
2617  /*------------------------------------------------------------------.  /*------------------------------------------------------------------.
2618  | yy_stack_print -- Print the state stack from its BOTTOM up to its |  | yy_stack_print -- Print the state stack from its BOTTOM up to its |
2619  | TOP (included).                                                   |  | TOP (included).                                                   |
2620  `------------------------------------------------------------------*/  `------------------------------------------------------------------*/
2621    
2622  #if defined (__STDC__) || defined (__cplusplus)  #if (defined __STDC__ || defined __C99__FUNC__ \
2623         || defined __cplusplus || defined _MSC_VER)
2624  static void  static void
2625  yy_stack_print (short int *bottom, short int *top)  yy_stack_print (yytype_int16 *bottom, yytype_int16 *top)
2626  #else  #else
2627  static void  static void
2628  yy_stack_print (bottom, top)  yy_stack_print (bottom, top)
2629      short int *bottom;      yytype_int16 *bottom;
2630      short int *top;      yytype_int16 *top;
2631  #endif  #endif
2632  {  {
2633    YYFPRINTF (stderr, "Stack now");    YYFPRINTF (stderr, "Stack now");
2634    for (/* Nothing. */; bottom <= top; ++bottom)    for (; bottom <= top; ++bottom)
2635      YYFPRINTF (stderr, " %d", *bottom);      YYFPRINTF (stderr, " %d", *bottom);
2636    YYFPRINTF (stderr, "\n");    YYFPRINTF (stderr, "\n");
2637  }  }
# Line 2241  yy_stack_print (bottom, top) Line 2640  yy_stack_print (bottom, top)
2640  do {                                                            \  do {                                                            \
2641    if (yydebug)                                                  \    if (yydebug)                                                  \
2642      yy_stack_print ((Bottom), (Top));                           \      yy_stack_print ((Bottom), (Top));                           \
2643  } while (0)  } while (YYID (0))
2644    
2645    
2646  /*------------------------------------------------.  /*------------------------------------------------.
2647  | Report that the YYRULE is going to be reduced.  |  | Report that the YYRULE is going to be reduced.  |
2648  `------------------------------------------------*/  `------------------------------------------------*/
2649    
2650  #if defined (__STDC__) || defined (__cplusplus)  #if (defined __STDC__ || defined __C99__FUNC__ \
2651         || defined __cplusplus || defined _MSC_VER)
2652  static void  static void
2653  yy_reduce_print (int yyrule)  yy_reduce_print (YYSTYPE *yyvsp, int yyrule)
2654  #else  #else
2655  static void  static void
2656  yy_reduce_print (yyrule)  yy_reduce_print (yyvsp, yyrule)
2657        YYSTYPE *yyvsp;
2658      int yyrule;      int yyrule;
2659  #endif  #endif
2660  {  {
2661      int yynrhs = yyr2[yyrule];
2662    int yyi;    int yyi;
2663    unsigned int yylno = yyrline[yyrule];    unsigned long int yylno = yyrline[yyrule];
2664    YYFPRINTF (stderr, "Reducing stack by rule %d (line %u), ",    YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n",
2665               yyrule - 1, yylno);               yyrule - 1, yylno);
2666    /* Print the symbols being reduced, and their result.  */    /* The symbols being reduced.  */
2667    for (yyi = yyprhs[yyrule]; 0 <= yyrhs[yyi]; yyi++)    for (yyi = 0; yyi < yynrhs; yyi++)
2668      YYFPRINTF (stderr, "%s ", yytname [yyrhs[yyi]]);      {
2669    YYFPRINTF (stderr, "-> %s\n", yytname [yyr1[yyrule]]);        fprintf (stderr, "   $%d = ", yyi + 1);
2670          yy_symbol_print (stderr, yyrhs[yyprhs[yyrule] + yyi],
2671                           &(yyvsp[(yyi + 1) - (yynrhs)])
2672                                           );
2673          fprintf (stderr, "\n");
2674        }
2675  }  }
2676    
2677  # define YY_REDUCE_PRINT(Rule)          \  # define YY_REDUCE_PRINT(Rule)          \
2678  do {                                    \  do {                                    \
2679    if (yydebug)                          \    if (yydebug)                          \
2680      yy_reduce_print (Rule);             \      yy_reduce_print (yyvsp, Rule); \
2681  } while (0)  } while (YYID (0))
2682    
2683  /* Nonzero means print parse trace.  It is left uninitialized so that  /* Nonzero means print parse trace.  It is left uninitialized so that
2684     multiple parsers can coexist.  */     multiple parsers can coexist.  */
# Line 2293  int yydebug; Line 2700  int yydebug;
2700     if the built-in stack extension method is used).     if the built-in stack extension method is used).
2701    
2702     Do not make this value too large; the results are undefined if     Do not make this value too large; the results are undefined if
2703     SIZE_MAX < YYSTACK_BYTES (YYMAXDEPTH)     YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
2704     evaluated with infinite-precision integer arithmetic.  */     evaluated with infinite-precision integer arithmetic.  */
2705    
2706  #ifndef YYMAXDEPTH  #ifndef YYMAXDEPTH
# Line 2305  int yydebug; Line 2712  int yydebug;
2712  #if YYERROR_VERBOSE  #if YYERROR_VERBOSE
2713    
2714  # ifndef yystrlen  # ifndef yystrlen
2715  #  if defined (__GLIBC__) && defined (_STRING_H)  #  if defined __GLIBC__ && defined _STRING_H
2716  #   define yystrlen strlen  #   define yystrlen strlen
2717  #  else  #  else
2718  /* Return the length of YYSTR.  */  /* Return the length of YYSTR.  */
2719    #if (defined __STDC__ || defined __C99__FUNC__ \
2720         || defined __cplusplus || defined _MSC_VER)
2721  static YYSIZE_T  static YYSIZE_T
 #   if defined (__STDC__) || defined (__cplusplus)  
2722  yystrlen (const char *yystr)  yystrlen (const char *yystr)
2723  #   else  #else
2724    static YYSIZE_T
2725  yystrlen (yystr)  yystrlen (yystr)
2726       const char *yystr;      const char *yystr;
2727  #   endif  #endif
2728  {  {
2729    register const char *yys = yystr;    YYSIZE_T yylen;
2730      for (yylen = 0; yystr[yylen]; yylen++)
   while (*yys++ != '\0')  
2731      continue;      continue;
2732      return yylen;
   return yys - yystr - 1;  
2733  }  }
2734  #  endif  #  endif
2735  # endif  # endif
2736    
2737  # ifndef yystpcpy  # ifndef yystpcpy
2738  #  if defined (__GLIBC__) && defined (_STRING_H) && defined (_GNU_SOURCE)  #  if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
2739  #   define yystpcpy stpcpy  #   define yystpcpy stpcpy
2740  #  else  #  else
2741  /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in  /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
2742     YYDEST.  */     YYDEST.  */
2743    #if (defined __STDC__ || defined __C99__FUNC__ \
2744         || defined __cplusplus || defined _MSC_VER)
2745  static char *  static char *
 #   if defined (__STDC__) || defined (__cplusplus)  
2746  yystpcpy (char *yydest, const char *yysrc)  yystpcpy (char *yydest, const char *yysrc)
2747  #   else  #else
2748    static char *
2749  yystpcpy (yydest, yysrc)  yystpcpy (yydest, yysrc)
2750       char *yydest;      char *yydest;
2751       const char *yysrc;      const char *yysrc;
2752  #   endif  #endif
2753  {  {
2754    register char *yyd = yydest;    char *yyd = yydest;
2755    register const char *yys = yysrc;    const char *yys = yysrc;
2756    
2757    while ((*yyd++ = *yys++) != '\0')    while ((*yyd++ = *yys++) != '\0')
2758      continue;      continue;
# Line 2353  yystpcpy (yydest, yysrc) Line 2762  yystpcpy (yydest, yysrc)
2762  #  endif  #  endif
2763  # endif  # endif
2764    
2765  #endif /* !YYERROR_VERBOSE */  # ifndef yytnamerr
2766    /* Copy to YYRES the contents of YYSTR after stripping away unnecessary
2767       quotes and backslashes, so that it's suitable for yyerror.  The
2768       heuristic is that double-quoting is unnecessary unless the string
2769       contains an apostrophe, a comma, or backslash (other than
2770       backslash-backslash).  YYSTR is taken from yytname.  If YYRES is
2771       null, do not copy; instead, return the length of what the result
2772       would have been.  */
2773    static YYSIZE_T
2774    yytnamerr (char *yyres, const char *yystr)
2775    {
2776      if (*yystr == '"')
2777        {
2778          YYSIZE_T yyn = 0;
2779          char const *yyp = yystr;
2780    
2781          for (;;)
2782            switch (*++yyp)
2783              {
2784              case '\'':
2785              case ',':
2786                goto do_not_strip_quotes;
2787    
2788              case '\\':
2789                if (*++yyp != '\\')
2790                  goto do_not_strip_quotes;
2791                /* Fall through.  */
2792              default:
2793                if (yyres)
2794                  yyres[yyn] = *yyp;
2795                yyn++;
2796                break;
2797    
2798              case '"':
2799                if (yyres)
2800                  yyres[yyn] = '\0';
2801                return yyn;
2802              }
2803        do_not_strip_quotes: ;
2804        }
2805    
2806  #if YYDEBUG    if (! yyres)
2807  /*--------------------------------.      return yystrlen (yystr);
 | Print this symbol on YYOUTPUT.  |  
 `--------------------------------*/  
2808    
2809  #if defined (__STDC__) || defined (__cplusplus)    return yystpcpy (yyres, yystr) - yyres;
2810  static void  }
2811  yysymprint (FILE *yyoutput, int yytype, YYSTYPE *yyvaluep)  # endif
2812  #else  
2813  static void  /* Copy into YYRESULT an error message about the unexpected token
2814  yysymprint (yyoutput, yytype, yyvaluep)     YYCHAR while in state YYSTATE.  Return the number of bytes copied,
2815      FILE *yyoutput;     including the terminating null byte.  If YYRESULT is null, do not
2816      int yytype;     copy anything; just return the number of bytes that would be
2817      YYSTYPE *yyvaluep;     copied.  As a special case, return 0 if an ordinary "syntax error"
2818  #endif     message will do.  Return YYSIZE_MAXIMUM if overflow occurs during
2819       size calculation.  */
2820    static YYSIZE_T
2821    yysyntax_error (char *yyresult, int yystate, int yychar)
2822  {  {
2823    /* Pacify ``unused variable'' warnings.  */    int yyn = yypact[yystate];
   (void) yyvaluep;  
2824    
2825    if (yytype < YYNTOKENS)    if (! (YYPACT_NINF < yyn && yyn <= YYLAST))
2826      YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);      return 0;
2827    else    else
2828      YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);      {
2829          int yytype = YYTRANSLATE (yychar);
2830          YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]);
2831          YYSIZE_T yysize = yysize0;
2832          YYSIZE_T yysize1;
2833          int yysize_overflow = 0;
2834          enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
2835          char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
2836          int yyx;
2837    
2838    # if 0
2839          /* This is so xgettext sees the translatable formats that are
2840             constructed on the fly.  */
2841          YY_("syntax error, unexpected %s");
2842          YY_("syntax error, unexpected %s, expecting %s");
2843          YY_("syntax error, unexpected %s, expecting %s or %s");
2844          YY_("syntax error, unexpected %s, expecting %s or %s or %s");
2845          YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s");
2846    # endif
2847          char *yyfmt;
2848          char const *yyf;
2849          static char const yyunexpected[] = "syntax error, unexpected %s";
2850          static char const yyexpecting[] = ", expecting %s";
2851          static char const yyor[] = " or %s";
2852          char yyformat[sizeof yyunexpected
2853                        + sizeof yyexpecting - 1
2854                        + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2)
2855                           * (sizeof yyor - 1))];
2856          char const *yyprefix = yyexpecting;
2857    
2858          /* Start YYX at -YYN if negative to avoid negative indexes in
2859             YYCHECK.  */
2860          int yyxbegin = yyn < 0 ? -yyn : 0;
2861    
2862          /* Stay within bounds of both yycheck and yytname.  */
2863          int yychecklim = YYLAST - yyn + 1;
2864          int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
2865          int yycount = 1;
2866    
2867          yyarg[0] = yytname[yytype];
2868          yyfmt = yystpcpy (yyformat, yyunexpected);
2869    
2870          for (yyx = yyxbegin; yyx < yyxend; ++yyx)
2871            if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
2872              {
2873                if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
2874                  {
2875                    yycount = 1;
2876                    yysize = yysize0;
2877                    yyformat[sizeof yyunexpected - 1] = '\0';
2878                    break;
2879                  }
2880                yyarg[yycount++] = yytname[yyx];
2881                yysize1 = yysize + yytnamerr (0, yytname[yyx]);
2882                yysize_overflow |= (yysize1 < yysize);
2883                yysize = yysize1;
2884                yyfmt = yystpcpy (yyfmt, yyprefix);
2885                yyprefix = yyor;
2886              }
2887    
2888          yyf = YY_(yyformat);
2889          yysize1 = yysize + yystrlen (yyf);
2890          yysize_overflow |= (yysize1 < yysize);
2891          yysize = yysize1;
2892    
2893          if (yysize_overflow)
2894            return YYSIZE_MAXIMUM;
2895    
2896  # ifdef YYPRINT        if (yyresult)
2897    if (yytype < YYNTOKENS)          {
2898      YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);            /* Avoid sprintf, as that infringes on the user's name space.
2899  # endif               Don't have undefined behavior even if the translation
2900    switch (yytype)               produced a string with the wrong number of "%s"s.  */
2901      {            char *yyp = yyresult;
2902        default:            int yyi = 0;
2903          break;            while ((*yyp = *yyf) != '\0')
2904                {
2905                  if (*yyp == '%' && yyf[1] == 's' && yyi < yycount)
2906                    {
2907                      yyp += yytnamerr (yyp, yyarg[yyi++]);
2908                      yyf += 2;
2909                    }
2910                  else
2911                    {
2912                      yyp++;
2913                      yyf++;
2914                    }
2915                }
2916            }
2917          return yysize;
2918      }      }
   YYFPRINTF (yyoutput, ")");  
2919  }  }
2920    #endif /* YYERROR_VERBOSE */
2921    
2922    
 #endif /* ! YYDEBUG */  
2923  /*-----------------------------------------------.  /*-----------------------------------------------.
2924  | Release the memory associated to this symbol.  |  | Release the memory associated to this symbol.  |
2925  `-----------------------------------------------*/  `-----------------------------------------------*/
2926    
2927  #if defined (__STDC__) || defined (__cplusplus)  /*ARGSUSED*/
2928    #if (defined __STDC__ || defined __C99__FUNC__ \
2929         || defined __cplusplus || defined _MSC_VER)
2930  static void  static void
2931  yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep)  yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep)
2932  #else  #else
# Line 2410  yydestruct (yymsg, yytype, yyvaluep) Line 2937  yydestruct (yymsg, yytype, yyvaluep)
2937      YYSTYPE *yyvaluep;      YYSTYPE *yyvaluep;
2938  #endif  #endif
2939  {  {
2940    /* Pacify ``unused variable'' warnings.  */    YYUSE (yyvaluep);
   (void) yyvaluep;  
2941    
2942    if (!yymsg)    if (!yymsg)
2943      yymsg = "Deleting";      yymsg = "Deleting";
# Line 2421  yydestruct (yymsg, yytype, yyvaluep) Line 2947  yydestruct (yymsg, yytype, yyvaluep)
2947      {      {
2948    
2949        default:        default:
2950          break;          break;
2951      }      }
2952  }  }
2953    
# Line 2429  yydestruct (yymsg, yytype, yyvaluep) Line 2955  yydestruct (yymsg, yytype, yyvaluep)
2955  /* Prevent warnings from -Wmissing-prototypes.  */  /* Prevent warnings from -Wmissing-prototypes.  */
2956    
2957  #ifdef YYPARSE_PARAM  #ifdef YYPARSE_PARAM
2958  # if defined (__STDC__) || defined (__cplusplus)  #if defined __STDC__ || defined __cplusplus
2959  int yyparse (void *YYPARSE_PARAM);  int yyparse (void *YYPARSE_PARAM);
2960  # else  #else
2961  int yyparse ();  int yyparse ();
2962  # endif  #endif
2963  #else /* ! YYPARSE_PARAM */  #else /* ! YYPARSE_PARAM */
2964  #if defined (__STDC__) || defined (__cplusplus)  #if defined __STDC__ || defined __cplusplus
2965  int yyparse (void);  int yyparse (void);
2966  #else  #else
2967  int yyparse ();  int yyparse ();
# Line 2452  int yyparse (); Line 2978  int yyparse ();
2978  `----------*/  `----------*/
2979    
2980  #ifdef YYPARSE_PARAM  #ifdef YYPARSE_PARAM
2981  # if defined (__STDC__) || defined (__cplusplus)  #if (defined __STDC__ || defined __C99__FUNC__ \
2982  int yyparse (void *YYPARSE_PARAM)       || defined __cplusplus || defined _MSC_VER)
2983  # else  int
2984  int yyparse (YYPARSE_PARAM)  yyparse (void *YYPARSE_PARAM)
2985    void *YYPARSE_PARAM;  #else
2986  # endif  int
2987    yyparse (YYPARSE_PARAM)
2988        void *YYPARSE_PARAM;
2989    #endif
2990  #else /* ! YYPARSE_PARAM */  #else /* ! YYPARSE_PARAM */
2991  #if defined (__STDC__) || defined (__cplusplus)  #if (defined __STDC__ || defined __C99__FUNC__ \
2992         || defined __cplusplus || defined _MSC_VER)
2993  int  int
2994  yyparse (void)  yyparse (void)
2995  #else  #else
# Line 2478  YYSTYPE yylval; Line 3008  YYSTYPE yylval;
3008  /* Number of syntax errors so far.  */  /* Number of syntax errors so far.  */
3009  int yynerrs;  int yynerrs;
3010    
3011    register int yystate;    int yystate;
3012    register int yyn;    int yyn;
3013    int yyresult;    int yyresult;
3014    /* Number of tokens to shift before error messages enabled.  */    /* Number of tokens to shift before error messages enabled.  */
3015    int yyerrstatus;    int yyerrstatus;
3016    /* Look-ahead token as an internal (translated) token number.  */    /* Look-ahead token as an internal (translated) token number.  */
3017    int yytoken = 0;    int yytoken = 0;
3018    #if YYERROR_VERBOSE
3019      /* Buffer for error messages, and its allocated size.  */
3020      char yymsgbuf[128];
3021      char *yymsg = yymsgbuf;
3022      YYSIZE_T yymsg_alloc = sizeof yymsgbuf;
3023    #endif
3024    
3025    /* Three stacks and their tools:    /* Three stacks and their tools:
3026       `yyss': related to states,       `yyss': related to states,
# Line 2495  int yynerrs; Line 3031  int yynerrs;
3031       to reallocate them elsewhere.  */       to reallocate them elsewhere.  */
3032    
3033    /* The state stack.  */    /* The state stack.  */
3034    short int yyssa[YYINITDEPTH];    yytype_int16 yyssa[YYINITDEPTH];
3035    short int *yyss = yyssa;    yytype_int16 *yyss = yyssa;
3036    register short int *yyssp;    yytype_int16 *yyssp;
3037    
3038    /* The semantic value stack.  */    /* The semantic value stack.  */
3039    YYSTYPE yyvsa[YYINITDEPTH];    YYSTYPE yyvsa[YYINITDEPTH];
3040    YYSTYPE *yyvs = yyvsa;    YYSTYPE *yyvs = yyvsa;
3041    register YYSTYPE *yyvsp;    YYSTYPE *yyvsp;
3042    
3043    
3044    
3045  #define YYPOPSTACK   (yyvsp--, yyssp--)  #define YYPOPSTACK(N)   (yyvsp -= (N), yyssp -= (N))
3046    
3047    YYSIZE_T yystacksize = YYINITDEPTH;    YYSIZE_T yystacksize = YYINITDEPTH;
3048    
# Line 2515  int yynerrs; Line 3051  int yynerrs;
3051    YYSTYPE yyval;    YYSTYPE yyval;
3052    
3053    
3054    /* When reducing, the number of symbols on the RHS of the reduced    /* The number of symbols on the RHS of the reduced rule.
3055       rule.  */       Keep to zero when no symbol should be popped.  */
3056    int yylen;    int yylen = 0;
3057    
3058    YYDPRINTF ((stderr, "Starting parse\n"));    YYDPRINTF ((stderr, "Starting parse\n"));
3059    
# Line 2534  int yynerrs; Line 3070  int yynerrs;
3070    yyssp = yyss;    yyssp = yyss;
3071    yyvsp = yyvs;    yyvsp = yyvs;
3072    
   
   yyvsp[0] = yylval;  
   
3073    goto yysetstate;    goto yysetstate;
3074    
3075  /*------------------------------------------------------------.  /*------------------------------------------------------------.
# Line 2544  int yynerrs; Line 3077  int yynerrs;
3077  `------------------------------------------------------------*/  `------------------------------------------------------------*/
3078   yynewstate:   yynewstate:
3079    /* In all cases, when you get here, the value and location stacks    /* In all cases, when you get here, the value and location stacks
3080       have just been pushed. so pushing a state here evens the stacks.       have just been pushed.  So pushing a state here evens the stacks.  */
      */  
3081    yyssp++;    yyssp++;
3082    
3083   yysetstate:   yysetstate:
# Line 2558  int yynerrs; Line 3090  int yynerrs;
3090    
3091  #ifdef yyoverflow  #ifdef yyoverflow
3092        {        {
3093          /* Give user a chance to reallocate the stack. Use copies of          /* Give user a chance to reallocate the stack.  Use copies of
3094             these so that the &'s don't force the real ones into             these so that the &'s don't force the real ones into
3095             memory.  */             memory.  */
3096          YYSTYPE *yyvs1 = yyvs;          YYSTYPE *yyvs1 = yyvs;
3097          short int *yyss1 = yyss;          yytype_int16 *yyss1 = yyss;
3098    
3099    
3100          /* Each stack pointer address is followed by the size of the          /* Each stack pointer address is followed by the size of the
3101             data in use in that stack, in bytes.  This used to be a             data in use in that stack, in bytes.  This used to be a
3102             conditional around just the two extra args, but that might             conditional around just the two extra args, but that might
3103             be undefined if yyoverflow is a macro.  */             be undefined if yyoverflow is a macro.  */
3104          yyoverflow ("parser stack overflow",          yyoverflow (YY_("memory exhausted"),
3105                      &yyss1, yysize * sizeof (*yyssp),                      &yyss1, yysize * sizeof (*yyssp),
3106                      &yyvs1, yysize * sizeof (*yyvsp),                      &yyvs1, yysize * sizeof (*yyvsp),
3107    
# Line 2580  int yynerrs; Line 3112  int yynerrs;
3112        }        }
3113  #else /* no yyoverflow */  #else /* no yyoverflow */
3114  # ifndef YYSTACK_RELOCATE  # ifndef YYSTACK_RELOCATE
3115        goto yyoverflowlab;        goto yyexhaustedlab;
3116  # else  # else
3117        /* Extend the stack our own way.  */        /* Extend the stack our own way.  */
3118        if (YYMAXDEPTH <= yystacksize)        if (YYMAXDEPTH <= yystacksize)
3119          goto yyoverflowlab;          goto yyexhaustedlab;
3120        yystacksize *= 2;        yystacksize *= 2;
3121        if (YYMAXDEPTH < yystacksize)        if (YYMAXDEPTH < yystacksize)
3122          yystacksize = YYMAXDEPTH;          yystacksize = YYMAXDEPTH;
3123    
3124        {        {
3125          short int *yyss1 = yyss;          yytype_int16 *yyss1 = yyss;
3126          union yyalloc *yyptr =          union yyalloc *yyptr =
3127            (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));            (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
3128          if (! yyptr)          if (! yyptr)
3129            goto yyoverflowlab;            goto yyexhaustedlab;
3130          YYSTACK_RELOCATE (yyss);          YYSTACK_RELOCATE (yyss);
3131          YYSTACK_RELOCATE (yyvs);          YYSTACK_RELOCATE (yyvs);
3132    
# Line 2625  int yynerrs; Line 3157  int yynerrs;
3157  `-----------*/  `-----------*/
3158  yybackup:  yybackup:
3159    
3160  /* Do appropriate processing given the current state.  */    /* Do appropriate processing given the current state.  Read a
3161  /* Read a look-ahead token if we need one and don't already have one.  */       look-ahead token if we need one and don't already have one.  */
 /* yyresume: */  
3162    
3163    /* First try to decide what to do without reference to look-ahead token.  */    /* First try to decide what to do without reference to look-ahead token.  */
   
3164    yyn = yypact[yystate];    yyn = yypact[yystate];
3165    if (yyn == YYPACT_NINF)    if (yyn == YYPACT_NINF)
3166      goto yydefault;      goto yydefault;
# Line 2672  yybackup: Line 3202  yybackup:
3202    if (yyn == YYFINAL)    if (yyn == YYFINAL)
3203      YYACCEPT;      YYACCEPT;
3204    
3205      /* Count tokens shifted since error; after three, turn off error
3206         status.  */
3207      if (yyerrstatus)
3208        yyerrstatus--;
3209    
3210    /* Shift the look-ahead token.  */    /* Shift the look-ahead token.  */
3211    YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);    YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
3212    
3213    /* Discard the token being shifted unless it is eof.  */    /* Discard the shifted token unless it is eof.  */
3214    if (yychar != YYEOF)    if (yychar != YYEOF)
3215      yychar = YYEMPTY;      yychar = YYEMPTY;
3216    
3217      yystate = yyn;
3218    *++yyvsp = yylval;    *++yyvsp = yylval;
3219    
   
   /* Count tokens shifted since error; after three, turn off error  
      status.  */  
   if (yyerrstatus)  
     yyerrstatus--;  
   
   yystate = yyn;  
3220    goto yynewstate;    goto yynewstate;
3221    
3222    
# Line 2723  yyreduce: Line 3252  yyreduce:
3252    switch (yyn)    switch (yyn)
3253      {      {
3254          case 4:          case 4:
3255  #line 94 "lscp.y"  #line 100 "lscp.y"
3256      { return LSCP_DONE; }      { return LSCP_DONE; }
3257      break;      break;
3258    
3259    case 5:    case 5:
3260  #line 95 "lscp.y"  #line 101 "lscp.y"
3261      { return LSCP_DONE; }      { return LSCP_DONE; }
3262      break;      break;
3263    
3264    case 6:    case 6:
3265  #line 96 "lscp.y"  #line 102 "lscp.y"
3266      { LSCPSERVER->AnswerClient((yyvsp[0].String)); return LSCP_DONE; }      { LSCPSERVER->AnswerClient((yyvsp[(1) - (1)].String)); return LSCP_DONE; }
3267      break;      break;
3268    
3269    case 7:    case 7:
3270  #line 97 "lscp.y"  #line 103 "lscp.y"
3271      { LSCPSERVER->AnswerClient("ERR:0:Unknown command.\r\n"); RESTART; return LSCP_SYNTAX_ERROR; }      { LSCPSERVER->AnswerClient("ERR:0:Unknown command.\r\n"); RESTART; return LSCP_SYNTAX_ERROR; }
3272      break;      break;
3273    
3274    case 13:    case 13:
3275  #line 107 "lscp.y"  #line 113 "lscp.y"
3276      { (yyval.String) = LSCPSERVER->AddChannel();                          }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3277      break;      break;
3278    
3279    case 14:    case 14:
3280  #line 108 "lscp.y"  #line 114 "lscp.y"
3281      { (yyval.String) = (yyvsp[0].String);                                                }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3282      break;      break;
3283    
3284    case 15:    case 15:
3285  #line 109 "lscp.y"  #line 115 "lscp.y"
3286      { (yyval.String) = (yyvsp[0].String);                                                }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3287      break;      break;
3288    
3289    case 16:    case 16:
3290  #line 110 "lscp.y"  #line 116 "lscp.y"
3291      { (yyval.String) = (yyvsp[0].String);                                                }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3292      break;      break;
3293    
3294    case 17:    case 17:
3295  #line 111 "lscp.y"  #line 117 "lscp.y"
3296      { (yyval.String) = (yyvsp[0].String);                                                }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3297      break;      break;
3298    
3299    case 18:    case 18:
3300  #line 112 "lscp.y"  #line 118 "lscp.y"
3301      { (yyval.String) = (yyvsp[0].String);                                                }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3302      break;      break;
3303    
3304    case 19:    case 19:
3305  #line 113 "lscp.y"  #line 119 "lscp.y"
3306      { (yyval.String) = LSCPSERVER->RemoveChannel((yyvsp[0].Number));                     }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3307      break;      break;
3308    
3309    case 20:    case 20:
3310  #line 114 "lscp.y"  #line 120 "lscp.y"
3311      { (yyval.String) = (yyvsp[0].String);                                                }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3312      break;      break;
3313    
3314    case 21:    case 21:
3315  #line 115 "lscp.y"  #line 121 "lscp.y"
3316      { (yyval.String) = (yyvsp[0].String);                                                }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3317      break;      break;
3318    
3319    case 22:    case 22:
3320  #line 116 "lscp.y"  #line 122 "lscp.y"
3321      { (yyval.String) = (yyvsp[0].String);                                                }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3322      break;      break;
3323    
3324    case 23:    case 23:
3325  #line 117 "lscp.y"  #line 123 "lscp.y"
3326      { (yyval.String) = LSCPSERVER->QueryDatabase((yyvsp[0].String));                     }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3327      break;      break;
3328    
3329    case 24:    case 24:
3330  #line 118 "lscp.y"  #line 124 "lscp.y"
3331      { (yyval.String) = LSCPSERVER->ResetChannel((yyvsp[0].Number));                      }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3332      break;      break;
3333    
3334    case 25:    case 25:
3335  #line 119 "lscp.y"  #line 125 "lscp.y"
3336      { (yyval.String) = LSCPSERVER->ResetSampler();                        }      { (yyval.String) = LSCPSERVER->QueryDatabase((yyvsp[(3) - (3)].String));                     }
3337      break;      break;
3338    
3339    case 26:    case 26:
3340  #line 120 "lscp.y"  #line 126 "lscp.y"
3341      { LSCPSERVER->AnswerClient("Bye!\r\n"); return LSCP_QUIT; }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3342      break;      break;
3343    
3344    case 27:    case 27:
3345  #line 123 "lscp.y"  #line 127 "lscp.y"
3346      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_channel_count);     }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3347      break;      break;
3348    
3349    case 28:    case 28:
3350  #line 124 "lscp.y"  #line 128 "lscp.y"
3351      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_voice_count);       }      { (yyval.String) = LSCPSERVER->ResetSampler();                        }
3352      break;      break;
3353    
3354    case 29:    case 29:
3355  #line 125 "lscp.y"  #line 129 "lscp.y"
3356      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_stream_count);      }      { LSCPSERVER->AnswerClient("Bye!\r\n"); return LSCP_QUIT; }
3357      break;      break;
3358    
3359    case 30:    case 30:
3360  #line 126 "lscp.y"  #line 132 "lscp.y"
3361      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_buffer_fill);       }      { (yyval.String) = LSCPSERVER->AddChannel();                          }
3362      break;      break;
3363    
3364    case 31:    case 31:
3365  #line 127 "lscp.y"  #line 133 "lscp.y"
3366      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_channel_info);      }      { (yyval.String) = LSCPSERVER->AddMidiInstrumentMap();                }
3367      break;      break;
3368    
3369    case 32:    case 32:
3370  #line 128 "lscp.y"  #line 134 "lscp.y"
3371      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_misc);              }      { (yyval.String) = LSCPSERVER->AddMidiInstrumentMap((yyvsp[(3) - (3)].String));              }
3372      break;      break;
3373    
3374    case 33:    case 33:
3375  #line 129 "lscp.y"  #line 137 "lscp.y"
3376      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_total_voice_count); }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_audio_device_count);   }
3377      break;      break;
3378    
3379    case 34:    case 34:
3380  #line 132 "lscp.y"  #line 138 "lscp.y"
3381      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_channel_count);     }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_audio_device_info);    }
3382      break;      break;
3383    
3384    case 35:    case 35:
3385  #line 133 "lscp.y"  #line 139 "lscp.y"
3386      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_voice_count);       }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_midi_device_count);    }
3387      break;      break;
3388    
3389    case 36:    case 36:
3390  #line 134 "lscp.y"  #line 140 "lscp.y"
3391      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_stream_count);      }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_midi_device_info);     }
3392      break;      break;
3393    
3394    case 37:    case 37:
3395  #line 135 "lscp.y"  #line 141 "lscp.y"
3396      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_buffer_fill);       }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_channel_count);        }
3397      break;      break;
3398    
3399    case 38:    case 38:
3400  #line 136 "lscp.y"  #line 142 "lscp.y"
3401      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_channel_info);      }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_voice_count);          }
3402      break;      break;
3403    
3404    case 39:    case 39:
3405  #line 137 "lscp.y"  #line 143 "lscp.y"
3406      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_misc);              }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_stream_count);         }
3407      break;      break;
3408    
3409    case 40:    case 40:
3410  #line 138 "lscp.y"  #line 144 "lscp.y"
3411      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_total_voice_count); }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_buffer_fill);          }
3412      break;      break;
3413    
3414    case 41:    case 41:
3415  #line 141 "lscp.y"  #line 145 "lscp.y"
3416      { (yyval.String) = LSCPSERVER->GetAvailableEngines();                          }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_channel_info);         }
3417      break;      break;
3418    
3419    case 42:    case 42:
3420  #line 142 "lscp.y"  #line 146 "lscp.y"
3421      { (yyval.String) = LSCPSERVER->GetAvailableMidiInputDrivers();                 }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_midi_instr_map_count); }
3422      break;      break;
3423    
3424    case 43:    case 43:
3425  #line 143 "lscp.y"  #line 147 "lscp.y"
3426      { (yyval.String) = LSCPSERVER->GetMidiInputDriverInfo((yyvsp[0].String));                     }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_midi_instr_map_info);  }
3427      break;      break;
3428    
3429    case 44:    case 44:
3430  #line 144 "lscp.y"  #line 148 "lscp.y"
3431      { (yyval.String) = LSCPSERVER->GetMidiInputDriverParameterInfo((yyvsp[-2].String), (yyvsp[0].String));        }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_midi_instr_count);     }
3432      break;      break;
3433    
3434    case 45:    case 45:
3435  #line 145 "lscp.y"  #line 149 "lscp.y"
3436      { (yyval.String) = LSCPSERVER->GetMidiInputDriverParameterInfo((yyvsp[-4].String), (yyvsp[-2].String), (yyvsp[0].KeyValList));    }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_midi_instr_info);      }
3437      break;      break;
3438    
3439    case 46:    case 46:
3440  #line 146 "lscp.y"  #line 150 "lscp.y"
3441      { (yyval.String) = LSCPSERVER->GetAvailableAudioOutputDrivers();               }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_misc);                 }
3442      break;      break;
3443    
3444    case 47:    case 47:
3445  #line 147 "lscp.y"  #line 151 "lscp.y"
3446      { (yyval.String) = LSCPSERVER->GetAudioOutputDriverInfo((yyvsp[0].String));                   }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_total_voice_count);    }
3447      break;      break;
3448    
3449    case 48:    case 48:
3450  #line 148 "lscp.y"  #line 154 "lscp.y"
3451      { (yyval.String) = LSCPSERVER->GetAudioOutputDriverParameterInfo((yyvsp[-2].String), (yyvsp[0].String));      }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_audio_device_count);   }
3452      break;      break;
3453    
3454    case 49:    case 49:
3455  #line 149 "lscp.y"  #line 155 "lscp.y"
3456      { (yyval.String) = LSCPSERVER->GetAudioOutputDriverParameterInfo((yyvsp[-4].String), (yyvsp[-2].String), (yyvsp[0].KeyValList));  }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_audio_device_info);    }
3457      break;      break;
3458    
3459    case 50:    case 50:
3460  #line 150 "lscp.y"  #line 156 "lscp.y"
3461      { (yyval.String) = LSCPSERVER->GetAudioOutputDeviceCount();                    }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_midi_device_count);    }
3462      break;      break;
3463    
3464    case 51:    case 51:
3465  #line 151 "lscp.y"  #line 157 "lscp.y"
3466      { (yyval.String) = LSCPSERVER->GetMidiInputDeviceCount();                      }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_midi_device_info);     }
3467      break;      break;
3468    
3469    case 52:    case 52:
3470  #line 152 "lscp.y"  #line 158 "lscp.y"
3471      { (yyval.String) = LSCPSERVER->GetAudioOutputDeviceInfo((yyvsp[0].Number));                   }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_channel_count);        }
3472      break;      break;
3473    
3474    case 53:    case 53:
3475  #line 153 "lscp.y"  #line 159 "lscp.y"
3476      { (yyval.String) = LSCPSERVER->GetMidiInputDeviceInfo((yyvsp[0].Number));                     }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_voice_count);          }
3477      break;      break;
3478    
3479    case 54:    case 54:
3480  #line 154 "lscp.y"  #line 160 "lscp.y"
3481      { (yyval.String) = LSCPSERVER->GetMidiInputPortInfo((yyvsp[-2].Number), (yyvsp[0].Number));                   }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_stream_count);         }
3482      break;      break;
3483    
3484    case 55:    case 55:
3485  #line 155 "lscp.y"  #line 161 "lscp.y"
3486      { (yyval.String) = LSCPSERVER->GetMidiInputPortParameterInfo((yyvsp[-4].Number), (yyvsp[-2].Number), (yyvsp[0].String));      }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_buffer_fill);          }
3487      break;      break;
3488    
3489    case 56:    case 56:
3490  #line 156 "lscp.y"  #line 162 "lscp.y"
3491      { (yyval.String) = LSCPSERVER->GetAudioOutputChannelInfo((yyvsp[-2].Number), (yyvsp[0].Number));              }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_channel_info);         }
3492      break;      break;
3493    
3494    case 57:    case 57:
3495  #line 157 "lscp.y"  #line 163 "lscp.y"
3496      { (yyval.String) = LSCPSERVER->GetAudioOutputChannelParameterInfo((yyvsp[-4].Number), (yyvsp[-2].Number), (yyvsp[0].String)); }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_midi_instr_map_count); }
3497      break;      break;
3498    
3499    case 58:    case 58:
3500  #line 158 "lscp.y"  #line 164 "lscp.y"
3501      { (yyval.String) = LSCPSERVER->GetChannels();                                  }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_midi_instr_map_info);  }
3502      break;      break;
3503    
3504    case 59:    case 59:
3505  #line 159 "lscp.y"  #line 165 "lscp.y"
3506      { (yyval.String) = LSCPSERVER->GetChannelInfo((yyvsp[0].Number));                             }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_midi_instr_count);     }
3507      break;      break;
3508    
3509    case 60:    case 60:
3510  #line 160 "lscp.y"  #line 166 "lscp.y"
3511      { (yyval.String) = LSCPSERVER->GetBufferFill((yyvsp[-2].FillResponse), (yyvsp[0].Number));                          }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_midi_instr_info);      }
3512      break;      break;
3513    
3514    case 61:    case 61:
3515  #line 161 "lscp.y"  #line 167 "lscp.y"
3516      { (yyval.String) = LSCPSERVER->GetStreamCount((yyvsp[0].Number));                             }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_misc);                 }
3517      break;      break;
3518    
3519    case 62:    case 62:
3520  #line 162 "lscp.y"  #line 168 "lscp.y"
3521      { (yyval.String) = LSCPSERVER->GetVoiceCount((yyvsp[0].Number));                              }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_total_voice_count);    }
3522      break;      break;
3523    
3524    case 63:    case 63:
3525  #line 163 "lscp.y"  #line 171 "lscp.y"
3526      { (yyval.String) = LSCPSERVER->GetEngineInfo((yyvsp[0].String));                              }      { (yyval.String) = LSCPSERVER->AddOrReplaceMIDIInstrumentMapping((yyvsp[(3) - (15)].Number),(yyvsp[(5) - (15)].Number),(yyvsp[(7) - (15)].Number),(yyvsp[(9) - (15)].String),(yyvsp[(11) - (15)].String),(yyvsp[(13) - (15)].Number),(yyvsp[(15) - (15)].Dotnum),MidiInstrumentMapper::VOID,""); }
3527      break;      break;
3528    
3529    case 64:    case 64:
3530  #line 164 "lscp.y"  #line 172 "lscp.y"
3531      { (yyval.String) = LSCPSERVER->GetServerInfo();                                }      { (yyval.String) = LSCPSERVER->AddOrReplaceMIDIInstrumentMapping((yyvsp[(3) - (17)].Number),(yyvsp[(5) - (17)].Number),(yyvsp[(7) - (17)].Number),(yyvsp[(9) - (17)].String),(yyvsp[(11) - (17)].String),(yyvsp[(13) - (17)].Number),(yyvsp[(15) - (17)].Dotnum),(yyvsp[(17) - (17)].LoadMode),""); }
3532      break;      break;
3533    
3534    case 65:    case 65:
3535  #line 165 "lscp.y"  #line 173 "lscp.y"
3536      { (yyval.String) = LSCPSERVER->GetTotalVoiceCount();                                }      { (yyval.String) = LSCPSERVER->AddOrReplaceMIDIInstrumentMapping((yyvsp[(3) - (17)].Number),(yyvsp[(5) - (17)].Number),(yyvsp[(7) - (17)].Number),(yyvsp[(9) - (17)].String),(yyvsp[(11) - (17)].String),(yyvsp[(13) - (17)].Number),(yyvsp[(15) - (17)].Dotnum),MidiInstrumentMapper::VOID,(yyvsp[(17) - (17)].String)); }
3537      break;      break;
3538    
3539    case 66:    case 66:
3540  #line 166 "lscp.y"  #line 174 "lscp.y"
3541      { (yyval.String) = LSCPSERVER->GetTotalVoiceCountMax();                        }      { (yyval.String) = LSCPSERVER->AddOrReplaceMIDIInstrumentMapping((yyvsp[(3) - (19)].Number),(yyvsp[(5) - (19)].Number),(yyvsp[(7) - (19)].Number),(yyvsp[(9) - (19)].String),(yyvsp[(11) - (19)].String),(yyvsp[(13) - (19)].Number),(yyvsp[(15) - (19)].Dotnum),(yyvsp[(17) - (19)].LoadMode),(yyvsp[(19) - (19)].String)); }
3542      break;      break;
3543    
3544    case 67:    case 67:
3545  #line 169 "lscp.y"  #line 177 "lscp.y"
3546      { (yyval.String) = LSCPSERVER->SetAudioOutputDeviceParameter((yyvsp[-4].Number), (yyvsp[-2].String), (yyvsp[0].String));      }      { (yyval.String) = LSCPSERVER->RemoveMIDIInstrumentMapping((yyvsp[(3) - (7)].Number),(yyvsp[(5) - (7)].Number),(yyvsp[(7) - (7)].Number)); }
3547      break;      break;
3548    
3549    case 68:    case 68:
3550  #line 170 "lscp.y"  #line 180 "lscp.y"
3551      { (yyval.String) = LSCPSERVER->SetAudioOutputChannelParameter((yyvsp[-6].Number), (yyvsp[-4].Number), (yyvsp[-2].String), (yyvsp[0].String)); }      { (yyval.String) = LSCPSERVER->RemoveChannel((yyvsp[(3) - (3)].Number));             }
3552      break;      break;
3553    
3554    case 69:    case 69:
3555  #line 171 "lscp.y"  #line 181 "lscp.y"
3556      { (yyval.String) = LSCPSERVER->SetMidiInputDeviceParameter((yyvsp[-4].Number), (yyvsp[-2].String), (yyvsp[0].String));        }      { (yyval.String) = LSCPSERVER->RemoveMidiInstrumentMap((yyvsp[(3) - (3)].Number));   }
3557      break;      break;
3558    
3559    case 70:    case 70:
3560  #line 172 "lscp.y"  #line 182 "lscp.y"
3561      { (yyval.String) = LSCPSERVER->SetMidiInputPortParameter((yyvsp[-6].Number), (yyvsp[-4].Number), (yyvsp[-2].String), (yyvsp[0].String));      }      { (yyval.String) = LSCPSERVER->RemoveAllMidiInstrumentMaps(); }
3562      break;      break;
3563    
3564    case 71:    case 71:
3565  #line 173 "lscp.y"  #line 185 "lscp.y"
3566      { (yyval.String) = (yyvsp[0].String);                                                         }      { (yyval.String) = LSCPSERVER->GetAvailableEngines();                          }
3567      break;      break;
3568    
3569    case 72:    case 72:
3570  #line 174 "lscp.y"  #line 186 "lscp.y"
3571      { (yyval.String) = LSCPSERVER->SetEcho((yyparse_param_t*) yyparse_param, (yyvsp[0].Dotnum));  }      { (yyval.String) = LSCPSERVER->GetAvailableMidiInputDrivers();                 }
3572      break;      break;
3573    
3574    case 73:    case 73:
3575  #line 177 "lscp.y"  #line 187 "lscp.y"
3576      { (yyval.String) = LSCPSERVER->CreateAudioOutputDevice((yyvsp[-2].String),(yyvsp[0].KeyValList)); }      { (yyval.String) = LSCPSERVER->GetMidiInputDriverInfo((yyvsp[(5) - (5)].String));                     }
3577      break;      break;
3578    
3579    case 74:    case 74:
3580  #line 178 "lscp.y"  #line 188 "lscp.y"
3581      { (yyval.String) = LSCPSERVER->CreateAudioOutputDevice((yyvsp[0].String));    }      { (yyval.String) = LSCPSERVER->GetMidiInputDriverParameterInfo((yyvsp[(5) - (7)].String), (yyvsp[(7) - (7)].String));        }
3582      break;      break;
3583    
3584    case 75:    case 75:
3585  #line 179 "lscp.y"  #line 189 "lscp.y"
3586      { (yyval.String) = LSCPSERVER->CreateMidiInputDevice((yyvsp[-2].String),(yyvsp[0].KeyValList));   }      { (yyval.String) = LSCPSERVER->GetMidiInputDriverParameterInfo((yyvsp[(5) - (9)].String), (yyvsp[(7) - (9)].String), (yyvsp[(9) - (9)].KeyValList));    }
3587      break;      break;
3588    
3589    case 76:    case 76:
3590  #line 180 "lscp.y"  #line 190 "lscp.y"
3591      { (yyval.String) = LSCPSERVER->CreateMidiInputDevice((yyvsp[0].String));      }      { (yyval.String) = LSCPSERVER->GetAvailableAudioOutputDrivers();               }
3592      break;      break;
3593    
3594    case 77:    case 77:
3595  #line 183 "lscp.y"  #line 191 "lscp.y"
3596      { (yyval.String) = LSCPSERVER->DestroyAudioOutputDevice((yyvsp[0].Number)); }      { (yyval.String) = LSCPSERVER->GetAudioOutputDriverInfo((yyvsp[(5) - (5)].String));                   }
3597      break;      break;
3598    
3599    case 78:    case 78:
3600  #line 184 "lscp.y"  #line 192 "lscp.y"
3601      { (yyval.String) = LSCPSERVER->DestroyMidiInputDevice((yyvsp[0].Number));   }      { (yyval.String) = LSCPSERVER->GetAudioOutputDriverParameterInfo((yyvsp[(5) - (7)].String), (yyvsp[(7) - (7)].String));      }
3602      break;      break;
3603    
3604    case 79:    case 79:
3605  #line 187 "lscp.y"  #line 193 "lscp.y"
3606      { (yyval.String) = (yyvsp[0].String); }      { (yyval.String) = LSCPSERVER->GetAudioOutputDriverParameterInfo((yyvsp[(5) - (9)].String), (yyvsp[(7) - (9)].String), (yyvsp[(9) - (9)].KeyValList));  }
3607      break;      break;
3608    
3609    case 80:    case 80:
3610  #line 188 "lscp.y"  #line 194 "lscp.y"
3611      { (yyval.String) = (yyvsp[0].String); }      { (yyval.String) = LSCPSERVER->GetAudioOutputDeviceCount();                    }
3612      break;      break;
3613    
3614    case 81:    case 81:
3615  #line 191 "lscp.y"  #line 195 "lscp.y"
3616      { (yyval.String) = LSCPSERVER->SetAudioOutputDevice((yyvsp[0].Number), (yyvsp[-2].Number));      }      { (yyval.String) = LSCPSERVER->GetMidiInputDeviceCount();                      }
3617      break;      break;
3618    
3619    case 82:    case 82:
3620  #line 192 "lscp.y"  #line 196 "lscp.y"
3621      { (yyval.String) = LSCPSERVER->SetAudioOutputChannel((yyvsp[-2].Number), (yyvsp[0].Number), (yyvsp[-4].Number)); }      { (yyval.String) = LSCPSERVER->GetAudioOutputDeviceInfo((yyvsp[(5) - (5)].Number));                   }
3622      break;      break;
3623    
3624    case 83:    case 83:
3625  #line 193 "lscp.y"  #line 197 "lscp.y"
3626      { (yyval.String) = LSCPSERVER->SetAudioOutputType((yyvsp[0].String), (yyvsp[-2].Number));        }      { (yyval.String) = LSCPSERVER->GetMidiInputDeviceInfo((yyvsp[(5) - (5)].Number));                     }
3627      break;      break;
3628    
3629    case 84:    case 84:
3630  #line 194 "lscp.y"  #line 198 "lscp.y"
3631      { (yyval.String) = LSCPSERVER->SetMIDIInput((yyvsp[-4].Number), (yyvsp[-2].Number), (yyvsp[0].Number), (yyvsp[-6].Number));      }      { (yyval.String) = LSCPSERVER->GetMidiInputPortInfo((yyvsp[(5) - (7)].Number), (yyvsp[(7) - (7)].Number));                   }
3632      break;      break;
3633    
3634    case 85:    case 85:
3635  #line 195 "lscp.y"  #line 199 "lscp.y"
3636      { (yyval.String) = LSCPSERVER->SetMIDIInputDevice((yyvsp[0].Number), (yyvsp[-2].Number));        }      { (yyval.String) = LSCPSERVER->GetMidiInputPortParameterInfo((yyvsp[(5) - (9)].Number), (yyvsp[(7) - (9)].Number), (yyvsp[(9) - (9)].String));      }
3637      break;      break;
3638    
3639    case 86:    case 86:
3640  #line 196 "lscp.y"  #line 200 "lscp.y"
3641      { (yyval.String) = LSCPSERVER->SetMIDIInputPort((yyvsp[0].Number), (yyvsp[-2].Number));          }      { (yyval.String) = LSCPSERVER->GetAudioOutputChannelInfo((yyvsp[(5) - (7)].Number), (yyvsp[(7) - (7)].Number));              }
3642      break;      break;
3643    
3644    case 87:    case 87:
3645  #line 197 "lscp.y"  #line 201 "lscp.y"
3646      { (yyval.String) = LSCPSERVER->SetMIDIInputChannel((yyvsp[0].Number), (yyvsp[-2].Number));       }      { (yyval.String) = LSCPSERVER->GetAudioOutputChannelParameterInfo((yyvsp[(5) - (9)].Number), (yyvsp[(7) - (9)].Number), (yyvsp[(9) - (9)].String)); }
3647      break;      break;
3648    
3649    case 88:    case 88:
3650  #line 198 "lscp.y"  #line 202 "lscp.y"
3651      { (yyval.String) = LSCPSERVER->SetMIDIInputType((yyvsp[0].String), (yyvsp[-2].Number));          }      { (yyval.String) = LSCPSERVER->GetChannels();                                  }
3652      break;      break;
3653    
3654    case 89:    case 89:
3655  #line 199 "lscp.y"  #line 203 "lscp.y"
3656      { (yyval.String) = LSCPSERVER->SetVolume((yyvsp[0].Dotnum), (yyvsp[-2].Number));                 }      { (yyval.String) = LSCPSERVER->GetChannelInfo((yyvsp[(5) - (5)].Number));                             }
3657      break;      break;
3658    
3659    case 90:    case 90:
3660  #line 200 "lscp.y"  #line 204 "lscp.y"
3661      { (yyval.String) = LSCPSERVER->SetChannelMute((yyvsp[0].Dotnum), (yyvsp[-2].Number));            }      { (yyval.String) = LSCPSERVER->GetBufferFill((yyvsp[(5) - (7)].FillResponse), (yyvsp[(7) - (7)].Number));                          }
3662      break;      break;
3663    
3664    case 91:    case 91:
3665  #line 201 "lscp.y"  #line 205 "lscp.y"
3666      { (yyval.String) = LSCPSERVER->SetChannelSolo((yyvsp[0].Dotnum), (yyvsp[-2].Number));            }      { (yyval.String) = LSCPSERVER->GetStreamCount((yyvsp[(5) - (5)].Number));                             }
3667      break;      break;
3668    
3669    case 92:    case 92:
3670  #line 204 "lscp.y"  #line 206 "lscp.y"
3671      { (yyval.KeyValList)[(yyvsp[-2].String)] = (yyvsp[0].String);          }      { (yyval.String) = LSCPSERVER->GetVoiceCount((yyvsp[(5) - (5)].Number));                              }
3672      break;      break;
3673    
3674    case 93:    case 93:
3675  #line 205 "lscp.y"  #line 207 "lscp.y"
3676      { (yyval.KeyValList) = (yyvsp[-4].KeyValList); (yyval.KeyValList)[(yyvsp[-2].String)] = (yyvsp[0].String); }      { (yyval.String) = LSCPSERVER->GetEngineInfo((yyvsp[(5) - (5)].String));                              }
3677      break;      break;
3678    
3679    case 94:    case 94:
3680  #line 208 "lscp.y"  #line 208 "lscp.y"
3681      { (yyval.FillResponse) = fill_response_bytes;      }      { (yyval.String) = LSCPSERVER->GetServerInfo();                                }
3682      break;      break;
3683    
3684    case 95:    case 95:
3685  #line 209 "lscp.y"  #line 209 "lscp.y"
3686      { (yyval.FillResponse) = fill_response_percentage; }      { (yyval.String) = LSCPSERVER->GetTotalVoiceCount();                                }
3687      break;      break;
3688    
3689    case 96:    case 96:
3690  #line 212 "lscp.y"  #line 210 "lscp.y"
3691      { (yyval.String) = LSCPSERVER->GetAudioOutputDevices();           }      { (yyval.String) = LSCPSERVER->GetTotalVoiceCountMax();                        }
3692      break;      break;
3693    
3694    case 97:    case 97:
3695  #line 213 "lscp.y"  #line 211 "lscp.y"
3696      { (yyval.String) = LSCPSERVER->GetMidiInputDevices();             }      { (yyval.String) = LSCPSERVER->GetMidiInstrumentMappings((yyvsp[(3) - (3)].Number));                  }
3697      break;      break;
3698    
3699    case 98:    case 98:
3700  #line 214 "lscp.y"  #line 212 "lscp.y"
3701      { (yyval.String) = LSCPSERVER->ListChannels();                    }      { (yyval.String) = LSCPSERVER->GetAllMidiInstrumentMappings();                 }
3702      break;      break;
3703    
3704    case 99:    case 99:
3705  #line 215 "lscp.y"  #line 213 "lscp.y"
3706      { (yyval.String) = LSCPSERVER->ListAvailableEngines();            }      { (yyval.String) = LSCPSERVER->GetMidiInstrumentMapping((yyvsp[(5) - (9)].Number),(yyvsp[(7) - (9)].Number),(yyvsp[(9) - (9)].Number));             }
3707      break;      break;
3708    
3709    case 100:    case 100:
3710  #line 216 "lscp.y"  #line 214 "lscp.y"
3711      { (yyval.String) = LSCPSERVER->ListAvailableMidiInputDrivers();   }      { (yyval.String) = LSCPSERVER->GetMidiInstrumentMaps();                        }
3712      break;      break;
3713    
3714    case 101:    case 101:
3715  #line 217 "lscp.y"  #line 215 "lscp.y"
3716      { (yyval.String) = LSCPSERVER->ListAvailableAudioOutputDrivers(); }      { (yyval.String) = LSCPSERVER->GetMidiInstrumentMap((yyvsp[(5) - (5)].Number));                       }
3717      break;      break;
3718    
3719    case 102:    case 102:
3720  #line 220 "lscp.y"  #line 216 "lscp.y"
3721      { (yyval.String) = LSCPSERVER->LoadInstrument((yyvsp[-4].String), (yyvsp[-2].Number), (yyvsp[0].Number));       }      { (yyval.String) = LSCPSERVER->GetFxSends((yyvsp[(3) - (3)].Number));                                 }
3722      break;      break;
3723    
3724    case 103:    case 103:
3725  #line 221 "lscp.y"  #line 217 "lscp.y"
3726      { (yyval.String) = LSCPSERVER->LoadInstrument((yyvsp[-4].String), (yyvsp[-2].Number), (yyvsp[0].Number), true); }      { (yyval.String) = LSCPSERVER->GetFxSendInfo((yyvsp[(5) - (7)].Number),(yyvsp[(7) - (7)].Number));                           }
3727      break;      break;
3728    
3729    case 104:    case 104:
3730    #line 218 "lscp.y"
3731        { (yyval.String) = LSCPSERVER->GetGlobalVolume();                              }
3732        break;
3733    
3734      case 105:
3735    #line 221 "lscp.y"
3736        { (yyval.String) = LSCPSERVER->SetAudioOutputDeviceParameter((yyvsp[(3) - (7)].Number), (yyvsp[(5) - (7)].String), (yyvsp[(7) - (7)].String));      }
3737        break;
3738    
3739      case 106:
3740    #line 222 "lscp.y"
3741        { (yyval.String) = LSCPSERVER->SetAudioOutputChannelParameter((yyvsp[(3) - (9)].Number), (yyvsp[(5) - (9)].Number), (yyvsp[(7) - (9)].String), (yyvsp[(9) - (9)].String)); }
3742        break;
3743    
3744      case 107:
3745    #line 223 "lscp.y"
3746        { (yyval.String) = LSCPSERVER->SetMidiInputDeviceParameter((yyvsp[(3) - (7)].Number), (yyvsp[(5) - (7)].String), (yyvsp[(7) - (7)].String));        }
3747        break;
3748    
3749      case 108:
3750  #line 224 "lscp.y"  #line 224 "lscp.y"
3751      { (yyval.String) = LSCPSERVER->SetEngineType((yyvsp[-2].String), (yyvsp[0].Number)); }      { (yyval.String) = LSCPSERVER->SetMidiInputPortParameter((yyvsp[(3) - (9)].Number), (yyvsp[(5) - (9)].Number), (yyvsp[(7) - (9)].String), (yyvsp[(9) - (9)].String));      }
3752        break;
3753    
3754      case 109:
3755    #line 225 "lscp.y"
3756        { (yyval.String) = (yyvsp[(3) - (3)].String);                                                         }
3757      break;      break;
3758    
3759    case 110:    case 110:
3760  #line 240 "lscp.y"  #line 226 "lscp.y"
3761      { (yyval.Number) = 16; }      { (yyval.String) = LSCPSERVER->SetMidiInstrumentMapName((yyvsp[(5) - (7)].Number), (yyvsp[(7) - (7)].String));               }
3762        break;
3763    
3764      case 111:
3765    #line 227 "lscp.y"
3766        { (yyval.String) = LSCPSERVER->SetFxSendAudioOutputChannel((yyvsp[(5) - (11)].Number),(yyvsp[(7) - (11)].Number),(yyvsp[(9) - (11)].Number),(yyvsp[(11) - (11)].Number)); }
3767        break;
3768    
3769      case 112:
3770    #line 228 "lscp.y"
3771        { (yyval.String) = LSCPSERVER->SetEcho((yyparse_param_t*) yyparse_param, (yyvsp[(3) - (3)].Dotnum));  }
3772      break;      break;
3773    
3774    case 113:    case 113:
3775  #line 247 "lscp.y"  #line 229 "lscp.y"
3776      { (yyval.Dotnum) = (yyvsp[0].Number); }      { (yyval.String) = LSCPSERVER->SetGlobalVolume((yyvsp[(3) - (3)].Dotnum));                            }
3777        break;
3778    
3779      case 114:
3780    #line 232 "lscp.y"
3781        { (yyval.String) = LSCPSERVER->CreateAudioOutputDevice((yyvsp[(3) - (5)].String),(yyvsp[(5) - (5)].KeyValList)); }
3782        break;
3783    
3784      case 115:
3785    #line 233 "lscp.y"
3786        { (yyval.String) = LSCPSERVER->CreateAudioOutputDevice((yyvsp[(3) - (3)].String));    }
3787        break;
3788    
3789      case 116:
3790    #line 234 "lscp.y"
3791        { (yyval.String) = LSCPSERVER->CreateMidiInputDevice((yyvsp[(3) - (5)].String),(yyvsp[(5) - (5)].KeyValList));   }
3792        break;
3793    
3794      case 117:
3795    #line 235 "lscp.y"
3796        { (yyval.String) = LSCPSERVER->CreateMidiInputDevice((yyvsp[(3) - (3)].String));      }
3797        break;
3798    
3799      case 118:
3800    #line 236 "lscp.y"
3801        { (yyval.String) = LSCPSERVER->CreateFxSend((yyvsp[(3) - (5)].Number),(yyvsp[(5) - (5)].Number));            }
3802      break;      break;
3803    
3804    case 119:    case 119:
3805  #line 263 "lscp.y"  #line 237 "lscp.y"
3806      { (yyval.String) = (yyvsp[-2].String) + "," + (yyvsp[0].String); }      { (yyval.String) = LSCPSERVER->CreateFxSend((yyvsp[(3) - (7)].Number),(yyvsp[(5) - (7)].Number),(yyvsp[(7) - (7)].String)); }
3807        break;
3808    
3809      case 120:
3810    #line 240 "lscp.y"
3811        { (yyval.String) = LSCPSERVER->ResetChannel((yyvsp[(3) - (3)].Number)); }
3812      break;      break;
3813    
3814    case 121:    case 121:
3815  #line 267 "lscp.y"  #line 243 "lscp.y"
3816      { (yyval.String) = "\'" + (yyvsp[-1].String) + "\'"; }      { (yyval.String) = LSCPSERVER->ClearMidiInstrumentMappings((yyvsp[(3) - (3)].Number));  }
3817      break;      break;
3818    
3819    case 122:    case 122:
3820  #line 268 "lscp.y"  #line 244 "lscp.y"
3821      { (yyval.String) = "\"" + (yyvsp[-1].String) + "\""; }      { (yyval.String) = LSCPSERVER->ClearAllMidiInstrumentMappings(); }
3822      break;      break;
3823    
3824    case 123:    case 123:
3825  #line 269 "lscp.y"  #line 247 "lscp.y"
3826      { std::stringstream ss; ss << "\'" << (yyvsp[0].Number) << "\'"; (yyval.String) = ss.str(); }      { (yyval.String) = LSCPSERVER->DestroyAudioOutputDevice((yyvsp[(3) - (3)].Number)); }
3827      break;      break;
3828    
3829    case 124:    case 124:
3830  #line 270 "lscp.y"  #line 248 "lscp.y"
3831      { std::stringstream ss; ss << "\'" << (yyvsp[0].Dotnum) << "\'"; (yyval.String) = ss.str(); }      { (yyval.String) = LSCPSERVER->DestroyMidiInputDevice((yyvsp[(3) - (3)].Number));   }
3832      break;      break;
3833    
3834    case 125:    case 125:
3835  #line 278 "lscp.y"  #line 249 "lscp.y"
3836      { (yyval.Dotnum) = (yyvsp[0].Number); }      { (yyval.String) = LSCPSERVER->DestroyFxSend((yyvsp[(3) - (5)].Number),(yyvsp[(5) - (5)].Number)); }
3837      break;      break;
3838    
3839    case 126:    case 126:
3840  #line 279 "lscp.y"  #line 252 "lscp.y"
3841      { (yyval.Dotnum) = -1; }      { (yyval.String) = (yyvsp[(3) - (3)].String); }
3842      break;      break;
3843    
3844    case 127:    case 127:
3845  #line 282 "lscp.y"  #line 253 "lscp.y"
3846      { std::string s; s = (yyvsp[0].Char); (yyval.String) = s; }      { (yyval.String) = (yyvsp[(3) - (3)].String); }
3847      break;      break;
3848    
3849    case 128:    case 128:
3850  #line 283 "lscp.y"  #line 256 "lscp.y"
3851      { (yyval.String) = (yyvsp[-1].String) + (yyvsp[0].Char);                  }      { (yyval.String) = LSCPSERVER->SetAudioOutputDevice((yyvsp[(5) - (5)].Number), (yyvsp[(3) - (5)].Number));      }
3852      break;      break;
3853    
3854    case 129:    case 129:
3855  #line 286 "lscp.y"  #line 257 "lscp.y"
3856      { (yyval.Dotnum) = atof(String((yyvsp[-2].String) + "." + (yyvsp[0].String)).c_str());                         }      { (yyval.String) = LSCPSERVER->SetAudioOutputChannel((yyvsp[(5) - (7)].Number), (yyvsp[(7) - (7)].Number), (yyvsp[(3) - (7)].Number)); }
3857      break;      break;
3858    
3859    case 130:    case 130:
3860  #line 287 "lscp.y"  #line 258 "lscp.y"
3861      { String s = "+"; s += (yyvsp[-2].String); s += "."; s += (yyvsp[0].String); (yyval.Dotnum) = atof(s.c_str()); }      { (yyval.String) = LSCPSERVER->SetAudioOutputType((yyvsp[(5) - (5)].String), (yyvsp[(3) - (5)].Number));        }
3862      break;      break;
3863    
3864    case 131:    case 131:
3865  #line 288 "lscp.y"  #line 259 "lscp.y"
3866      { (yyval.Dotnum) = atof(String("-" + (yyvsp[-2].String) + "." + (yyvsp[0].String)).c_str());                   }      { (yyval.String) = LSCPSERVER->SetMIDIInput((yyvsp[(5) - (9)].Number), (yyvsp[(7) - (9)].Number), (yyvsp[(9) - (9)].Number), (yyvsp[(3) - (9)].Number));      }
3867      break;      break;
3868    
3869    case 132:    case 132:
3870  #line 292 "lscp.y"  #line 260 "lscp.y"
3871      { (yyval.String) = (yyvsp[0].Char);      }      { (yyval.String) = LSCPSERVER->SetMIDIInputDevice((yyvsp[(5) - (5)].Number), (yyvsp[(3) - (5)].Number));        }
3872      break;      break;
3873    
3874    case 133:    case 133:
3875  #line 293 "lscp.y"  #line 261 "lscp.y"
3876      { (yyval.String) = (yyvsp[-1].String) + (yyvsp[0].Char); }      { (yyval.String) = LSCPSERVER->SetMIDIInputPort((yyvsp[(5) - (5)].Number), (yyvsp[(3) - (5)].Number));          }
3877      break;      break;
3878    
3879    case 134:    case 134:
3880  #line 296 "lscp.y"  #line 262 "lscp.y"
3881      { (yyval.Char) = '0'; }      { (yyval.String) = LSCPSERVER->SetMIDIInputChannel((yyvsp[(5) - (5)].Number), (yyvsp[(3) - (5)].Number));       }
3882      break;      break;
3883    
3884    case 135:    case 135:
3885  #line 297 "lscp.y"  #line 263 "lscp.y"
3886      { (yyval.Char) = '1'; }      { (yyval.String) = LSCPSERVER->SetMIDIInputType((yyvsp[(5) - (5)].String), (yyvsp[(3) - (5)].Number));          }
3887      break;      break;
3888    
3889    case 136:    case 136:
3890  #line 298 "lscp.y"  #line 264 "lscp.y"
3891      { (yyval.Char) = '2'; }      { (yyval.String) = LSCPSERVER->SetVolume((yyvsp[(5) - (5)].Dotnum), (yyvsp[(3) - (5)].Number));                 }
3892      break;      break;
3893    
3894    case 137:    case 137:
3895  #line 299 "lscp.y"  #line 265 "lscp.y"
3896      { (yyval.Char) = '3'; }      { (yyval.String) = LSCPSERVER->SetChannelMute((yyvsp[(5) - (5)].Dotnum), (yyvsp[(3) - (5)].Number));            }
3897      break;      break;
3898    
3899    case 138:    case 138:
3900  #line 300 "lscp.y"  #line 266 "lscp.y"
3901      { (yyval.Char) = '4'; }      { (yyval.String) = LSCPSERVER->SetChannelSolo((yyvsp[(5) - (5)].Dotnum), (yyvsp[(3) - (5)].Number));            }
3902      break;      break;
3903    
3904    case 139:    case 139:
3905  #line 301 "lscp.y"  #line 267 "lscp.y"
3906      { (yyval.Char) = '5'; }      { (yyval.String) = LSCPSERVER->SetChannelMap((yyvsp[(3) - (5)].Number), (yyvsp[(5) - (5)].Number));             }
3907      break;      break;
3908    
3909    case 140:    case 140:
3910  #line 302 "lscp.y"  #line 268 "lscp.y"
3911      { (yyval.Char) = '6'; }      { (yyval.String) = LSCPSERVER->SetChannelMap((yyvsp[(3) - (5)].Number), -1);             }
3912      break;      break;
3913    
3914    case 141:    case 141:
3915  #line 303 "lscp.y"  #line 269 "lscp.y"
3916      { (yyval.Char) = '7'; }      { (yyval.String) = LSCPSERVER->SetChannelMap((yyvsp[(3) - (5)].Number), -2);             }
3917      break;      break;
3918    
3919    case 142:    case 142:
3920  #line 304 "lscp.y"  #line 272 "lscp.y"
3921      { (yyval.Char) = '8'; }      { (yyval.KeyValList)[(yyvsp[(1) - (3)].String)] = (yyvsp[(3) - (3)].String);          }
3922      break;      break;
3923    
3924    case 143:    case 143:
3925  #line 305 "lscp.y"  #line 273 "lscp.y"
3926      { (yyval.Char) = '9'; }      { (yyval.KeyValList) = (yyvsp[(1) - (5)].KeyValList); (yyval.KeyValList)[(yyvsp[(3) - (5)].String)] = (yyvsp[(5) - (5)].String); }
3927      break;      break;
3928    
3929    case 144:    case 144:
3930  #line 308 "lscp.y"  #line 276 "lscp.y"
3931      { (yyval.Number) = atoi(String(1, (yyvsp[0].Char)).c_str());      }      { (yyval.FillResponse) = fill_response_bytes;      }
3932      break;      break;
3933    
3934    case 145:    case 145:
3935  #line 309 "lscp.y"  #line 277 "lscp.y"
3936      { (yyval.Number) = atoi(String(String("1") + (yyvsp[0].String)).c_str()); }      { (yyval.FillResponse) = fill_response_percentage; }
3937      break;      break;
3938    
3939    case 146:    case 146:
3940  #line 310 "lscp.y"  #line 280 "lscp.y"
3941      { (yyval.Number) = atoi(String(String("2") + (yyvsp[0].String)).c_str()); }      { (yyval.String) = LSCPSERVER->GetAudioOutputDevices();           }
3942      break;      break;
3943    
3944    case 147:    case 147:
3945  #line 311 "lscp.y"  #line 281 "lscp.y"
3946      { (yyval.Number) = atoi(String(String("3") + (yyvsp[0].String)).c_str()); }      { (yyval.String) = LSCPSERVER->GetMidiInputDevices();             }
3947      break;      break;
3948    
3949    case 148:    case 148:
3950  #line 312 "lscp.y"  #line 282 "lscp.y"
3951      { (yyval.Number) = atoi(String(String("4") + (yyvsp[0].String)).c_str()); }      { (yyval.String) = LSCPSERVER->ListChannels();                    }
3952      break;      break;
3953    
3954    case 149:    case 149:
3955  #line 313 "lscp.y"  #line 283 "lscp.y"
3956      { (yyval.Number) = atoi(String(String("5") + (yyvsp[0].String)).c_str()); }      { (yyval.String) = LSCPSERVER->ListAvailableEngines();            }
3957      break;      break;
3958    
3959    case 150:    case 150:
3960  #line 314 "lscp.y"  #line 284 "lscp.y"
3961      { (yyval.Number) = atoi(String(String("6") + (yyvsp[0].String)).c_str()); }      { (yyval.String) = LSCPSERVER->ListAvailableMidiInputDrivers();   }
3962      break;      break;
3963    
3964    case 151:    case 151:
3965  #line 315 "lscp.y"  #line 285 "lscp.y"
3966      { (yyval.Number) = atoi(String(String("7") + (yyvsp[0].String)).c_str()); }      { (yyval.String) = LSCPSERVER->ListAvailableAudioOutputDrivers(); }
3967      break;      break;
3968    
3969    case 152:    case 152:
3970  #line 316 "lscp.y"  #line 286 "lscp.y"
3971      { (yyval.Number) = atoi(String(String("8") + (yyvsp[0].String)).c_str()); }      { (yyval.String) = LSCPSERVER->ListMidiInstrumentMappings((yyvsp[(3) - (3)].Number));    }
3972      break;      break;
3973    
3974    case 153:    case 153:
3975  #line 317 "lscp.y"  #line 287 "lscp.y"
3976      { (yyval.Number) = atoi(String(String("9") + (yyvsp[0].String)).c_str()); }      { (yyval.String) = LSCPSERVER->ListAllMidiInstrumentMappings();   }
3977      break;      break;
3978    
3979    case 154:    case 154:
3980  #line 319 "lscp.y"  #line 288 "lscp.y"
3981      { (yyval.Char) = 'A'; }      { (yyval.String) = LSCPSERVER->ListMidiInstrumentMaps();          }
3982      break;      break;
3983    
3984    case 155:    case 155:
3985  #line 319 "lscp.y"  #line 289 "lscp.y"
3986      { (yyval.Char) = 'B'; }      { (yyval.String) = LSCPSERVER->ListFxSends((yyvsp[(3) - (3)].Number));                   }
3987      break;      break;
3988    
3989    case 156:    case 156:
3990  #line 319 "lscp.y"  #line 292 "lscp.y"
3991      { (yyval.Char) = 'C'; }      { (yyval.String) = LSCPSERVER->LoadInstrument((yyvsp[(1) - (5)].String), (yyvsp[(3) - (5)].Number), (yyvsp[(5) - (5)].Number));       }
3992      break;      break;
3993    
3994    case 157:    case 157:
3995  #line 319 "lscp.y"  #line 293 "lscp.y"
3996      { (yyval.Char) = 'D'; }      { (yyval.String) = LSCPSERVER->LoadInstrument((yyvsp[(3) - (7)].String), (yyvsp[(5) - (7)].Number), (yyvsp[(7) - (7)].Number), true); }
3997      break;      break;
3998    
3999    case 158:    case 158:
4000  #line 319 "lscp.y"  #line 296 "lscp.y"
4001      { (yyval.Char) = 'E'; }      { (yyval.String) = LSCPSERVER->SetEngineType((yyvsp[(1) - (3)].String), (yyvsp[(3) - (3)].Number)); }
4002      break;      break;
4003    
4004    case 159:    case 159:
4005  #line 319 "lscp.y"  #line 299 "lscp.y"
4006      { (yyval.Char) = 'F'; }      { (yyval.LoadMode) = MidiInstrumentMapper::ON_DEMAND;      }
4007      break;      break;
4008    
4009    case 160:    case 160:
4010  #line 319 "lscp.y"  #line 300 "lscp.y"
4011      { (yyval.Char) = 'G'; }      { (yyval.LoadMode) = MidiInstrumentMapper::ON_DEMAND_HOLD; }
4012      break;      break;
4013    
4014    case 161:    case 161:
4015  #line 319 "lscp.y"  #line 301 "lscp.y"
4016        { (yyval.LoadMode) = MidiInstrumentMapper::PERSISTENT;     }
4017        break;
4018    
4019      case 167:
4020    #line 317 "lscp.y"
4021        { (yyval.Number) = 16; }
4022        break;
4023    
4024      case 174:
4025    #line 336 "lscp.y"
4026        { (yyval.Dotnum) = (yyvsp[(1) - (1)].Number); }
4027        break;
4028    
4029      case 184:
4030    #line 364 "lscp.y"
4031        { (yyval.String) = (yyvsp[(1) - (3)].String) + "," + (yyvsp[(3) - (3)].String); }
4032        break;
4033    
4034      case 187:
4035    #line 369 "lscp.y"
4036        { std::stringstream ss; ss << "\'" << (yyvsp[(1) - (1)].Number) << "\'"; (yyval.String) = ss.str(); }
4037        break;
4038    
4039      case 188:
4040    #line 370 "lscp.y"
4041        { std::stringstream ss; ss << "\'" << (yyvsp[(1) - (1)].Dotnum) << "\'"; (yyval.String) = ss.str(); }
4042        break;
4043    
4044      case 189:
4045    #line 378 "lscp.y"
4046        { (yyval.Dotnum) = (yyvsp[(1) - (1)].Number); }
4047        break;
4048    
4049      case 190:
4050    #line 379 "lscp.y"
4051        { (yyval.Dotnum) = -1; }
4052        break;
4053    
4054      case 191:
4055    #line 382 "lscp.y"
4056        { std::string s; s = (yyvsp[(1) - (1)].Char); (yyval.String) = s; }
4057        break;
4058    
4059      case 192:
4060    #line 383 "lscp.y"
4061        { (yyval.String) = (yyvsp[(1) - (2)].String) + (yyvsp[(2) - (2)].Char);                  }
4062        break;
4063    
4064      case 193:
4065    #line 386 "lscp.y"
4066        { (yyval.Dotnum) = atof(String((yyvsp[(1) - (3)].String) + "." + (yyvsp[(3) - (3)].String)).c_str());                         }
4067        break;
4068    
4069      case 194:
4070    #line 387 "lscp.y"
4071        { String s = "+"; s += (yyvsp[(2) - (4)].String); s += "."; s += (yyvsp[(4) - (4)].String); (yyval.Dotnum) = atof(s.c_str()); }
4072        break;
4073    
4074      case 195:
4075    #line 388 "lscp.y"
4076        { (yyval.Dotnum) = atof(String("-" + (yyvsp[(2) - (4)].String) + "." + (yyvsp[(4) - (4)].String)).c_str());                   }
4077        break;
4078    
4079      case 196:
4080    #line 392 "lscp.y"
4081        { (yyval.String) = (yyvsp[(1) - (1)].Char);      }
4082        break;
4083    
4084      case 197:
4085    #line 393 "lscp.y"
4086        { (yyval.String) = (yyvsp[(1) - (2)].String) + (yyvsp[(2) - (2)].Char); }
4087        break;
4088    
4089      case 198:
4090    #line 396 "lscp.y"
4091        { (yyval.Char) = '0'; }
4092        break;
4093    
4094      case 199:
4095    #line 397 "lscp.y"
4096        { (yyval.Char) = '1'; }
4097        break;
4098    
4099      case 200:
4100    #line 398 "lscp.y"
4101        { (yyval.Char) = '2'; }
4102        break;
4103    
4104      case 201:
4105    #line 399 "lscp.y"
4106        { (yyval.Char) = '3'; }
4107        break;
4108    
4109      case 202:
4110    #line 400 "lscp.y"
4111        { (yyval.Char) = '4'; }
4112        break;
4113    
4114      case 203:
4115    #line 401 "lscp.y"
4116        { (yyval.Char) = '5'; }
4117        break;
4118    
4119      case 204:
4120    #line 402 "lscp.y"
4121        { (yyval.Char) = '6'; }
4122        break;
4123    
4124      case 205:
4125    #line 403 "lscp.y"
4126        { (yyval.Char) = '7'; }
4127        break;
4128    
4129      case 206:
4130    #line 404 "lscp.y"
4131        { (yyval.Char) = '8'; }
4132        break;
4133    
4134      case 207:
4135    #line 405 "lscp.y"
4136        { (yyval.Char) = '9'; }
4137        break;
4138    
4139      case 208:
4140    #line 408 "lscp.y"
4141        { (yyval.Number) = atoi(String(1, (yyvsp[(1) - (1)].Char)).c_str());      }
4142        break;
4143    
4144      case 209:
4145    #line 409 "lscp.y"
4146        { (yyval.Number) = atoi(String(String("1") + (yyvsp[(2) - (2)].String)).c_str()); }
4147        break;
4148    
4149      case 210:
4150    #line 410 "lscp.y"
4151        { (yyval.Number) = atoi(String(String("2") + (yyvsp[(2) - (2)].String)).c_str()); }
4152        break;
4153    
4154      case 211:
4155    #line 411 "lscp.y"
4156        { (yyval.Number) = atoi(String(String("3") + (yyvsp[(2) - (2)].String)).c_str()); }
4157        break;
4158    
4159      case 212:
4160    #line 412 "lscp.y"
4161        { (yyval.Number) = atoi(String(String("4") + (yyvsp[(2) - (2)].String)).c_str()); }
4162        break;
4163    
4164      case 213:
4165    #line 413 "lscp.y"
4166        { (yyval.Number) = atoi(String(String("5") + (yyvsp[(2) - (2)].String)).c_str()); }
4167        break;
4168    
4169      case 214:
4170    #line 414 "lscp.y"
4171        { (yyval.Number) = atoi(String(String("6") + (yyvsp[(2) - (2)].String)).c_str()); }
4172        break;
4173    
4174      case 215:
4175    #line 415 "lscp.y"
4176        { (yyval.Number) = atoi(String(String("7") + (yyvsp[(2) - (2)].String)).c_str()); }
4177        break;
4178    
4179      case 216:
4180    #line 416 "lscp.y"
4181        { (yyval.Number) = atoi(String(String("8") + (yyvsp[(2) - (2)].String)).c_str()); }
4182        break;
4183    
4184      case 217:
4185    #line 417 "lscp.y"
4186        { (yyval.Number) = atoi(String(String("9") + (yyvsp[(2) - (2)].String)).c_str()); }
4187        break;
4188    
4189      case 218:
4190    #line 419 "lscp.y"
4191        { (yyval.Char) = 'A'; }
4192        break;
4193    
4194      case 219:
4195    #line 419 "lscp.y"
4196        { (yyval.Char) = 'B'; }
4197        break;
4198    
4199      case 220:
4200    #line 419 "lscp.y"
4201        { (yyval.Char) = 'C'; }
4202        break;
4203    
4204      case 221:
4205    #line 419 "lscp.y"
4206        { (yyval.Char) = 'D'; }
4207        break;
4208    
4209      case 222:
4210    #line 419 "lscp.y"
4211        { (yyval.Char) = 'E'; }
4212        break;
4213    
4214      case 223:
4215    #line 419 "lscp.y"
4216        { (yyval.Char) = 'F'; }
4217        break;
4218    
4219      case 224:
4220    #line 419 "lscp.y"
4221        { (yyval.Char) = 'G'; }
4222        break;
4223    
4224      case 225:
4225    #line 419 "lscp.y"
4226      { (yyval.Char) = 'H'; }      { (yyval.Char) = 'H'; }
4227      break;      break;
4228    
4229    case 162:    case 226:
4230  #line 319 "lscp.y"  #line 419 "lscp.y"
4231      { (yyval.Char) = 'I'; }      { (yyval.Char) = 'I'; }
4232      break;      break;
4233    
4234    case 163:    case 227:
4235  #line 319 "lscp.y"  #line 419 "lscp.y"
4236      { (yyval.Char) = 'J'; }      { (yyval.Char) = 'J'; }
4237      break;      break;
4238    
4239    case 164:    case 228:
4240  #line 319 "lscp.y"  #line 419 "lscp.y"
4241      { (yyval.Char) = 'K'; }      { (yyval.Char) = 'K'; }
4242      break;      break;
4243    
4244    case 165:    case 229:
4245  #line 319 "lscp.y"  #line 419 "lscp.y"
4246      { (yyval.Char) = 'L'; }      { (yyval.Char) = 'L'; }
4247      break;      break;
4248    
4249    case 166:    case 230:
4250  #line 319 "lscp.y"  #line 419 "lscp.y"
4251      { (yyval.Char) = 'M'; }      { (yyval.Char) = 'M'; }
4252      break;      break;
4253    
4254    case 167:    case 231:
4255  #line 319 "lscp.y"  #line 419 "lscp.y"
4256      { (yyval.Char) = 'N'; }      { (yyval.Char) = 'N'; }
4257      break;      break;
4258    
4259    case 168:    case 232:
4260  #line 319 "lscp.y"  #line 419 "lscp.y"
4261      { (yyval.Char) = 'O'; }      { (yyval.Char) = 'O'; }
4262      break;      break;
4263    
4264    case 169:    case 233:
4265  #line 319 "lscp.y"  #line 419 "lscp.y"
4266      { (yyval.Char) = 'P'; }      { (yyval.Char) = 'P'; }
4267      break;      break;
4268    
4269    case 170:    case 234:
4270  #line 319 "lscp.y"  #line 419 "lscp.y"
4271      { (yyval.Char) = 'Q'; }      { (yyval.Char) = 'Q'; }
4272      break;      break;
4273    
4274    case 171:    case 235:
4275  #line 319 "lscp.y"  #line 419 "lscp.y"
4276      { (yyval.Char) = 'R'; }      { (yyval.Char) = 'R'; }
4277      break;      break;
4278    
4279    case 172:    case 236:
4280  #line 319 "lscp.y"  #line 419 "lscp.y"
4281      { (yyval.Char) = 'S'; }      { (yyval.Char) = 'S'; }
4282      break;      break;
4283    
4284    case 173:    case 237:
4285  #line 319 "lscp.y"  #line 419 "lscp.y"
4286      { (yyval.Char) = 'T'; }      { (yyval.Char) = 'T'; }
4287      break;      break;
4288    
4289    case 174:    case 238:
4290  #line 319 "lscp.y"  #line 419 "lscp.y"
4291      { (yyval.Char) = 'U'; }      { (yyval.Char) = 'U'; }
4292      break;      break;
4293    
4294    case 175:    case 239:
4295  #line 319 "lscp.y"  #line 419 "lscp.y"
4296      { (yyval.Char) = 'V'; }      { (yyval.Char) = 'V'; }
4297      break;      break;
4298    
4299    case 176:    case 240:
4300  #line 319 "lscp.y"  #line 419 "lscp.y"
4301      { (yyval.Char) = 'W'; }      { (yyval.Char) = 'W'; }
4302      break;      break;
4303    
4304    case 177:    case 241:
4305  #line 319 "lscp.y"  #line 419 "lscp.y"
4306      { (yyval.Char) = 'X'; }      { (yyval.Char) = 'X'; }
4307      break;      break;
4308    
4309    case 178:    case 242:
4310  #line 319 "lscp.y"  #line 419 "lscp.y"
4311      { (yyval.Char) = 'Y'; }      { (yyval.Char) = 'Y'; }
4312      break;      break;
4313    
4314    case 179:    case 243:
4315  #line 319 "lscp.y"  #line 419 "lscp.y"
4316      { (yyval.Char) = 'Z'; }      { (yyval.Char) = 'Z'; }
4317      break;      break;
4318    
4319    case 180:    case 244:
4320  #line 320 "lscp.y"  #line 420 "lscp.y"
4321      { (yyval.Char) = 'a'; }      { (yyval.Char) = 'a'; }
4322      break;      break;
4323    
4324    case 181:    case 245:
4325  #line 320 "lscp.y"  #line 420 "lscp.y"
4326      { (yyval.Char) = 'b'; }      { (yyval.Char) = 'b'; }
4327      break;      break;
4328    
4329    case 182:    case 246:
4330  #line 320 "lscp.y"  #line 420 "lscp.y"
4331      { (yyval.Char) = 'c'; }      { (yyval.Char) = 'c'; }
4332      break;      break;
4333    
4334    case 183:    case 247:
4335  #line 320 "lscp.y"  #line 420 "lscp.y"
4336      { (yyval.Char) = 'd'; }      { (yyval.Char) = 'd'; }
4337      break;      break;
4338    
4339    case 184:    case 248:
4340  #line 320 "lscp.y"  #line 420 "lscp.y"
4341      { (yyval.Char) = 'e'; }      { (yyval.Char) = 'e'; }
4342      break;      break;
4343    
4344    case 185:    case 249:
4345  #line 320 "lscp.y"  #line 420 "lscp.y"
4346      { (yyval.Char) = 'f'; }      { (yyval.Char) = 'f'; }
4347      break;      break;
4348    
4349    case 186:    case 250:
4350  #line 320 "lscp.y"  #line 420 "lscp.y"
4351      { (yyval.Char) = 'g'; }      { (yyval.Char) = 'g'; }
4352      break;      break;
4353    
4354    case 187:    case 251:
4355  #line 320 "lscp.y"  #line 420 "lscp.y"
4356      { (yyval.Char) = 'h'; }      { (yyval.Char) = 'h'; }
4357      break;      break;
4358    
4359    case 188:    case 252:
4360  #line 320 "lscp.y"  #line 420 "lscp.y"
4361      { (yyval.Char) = 'i'; }      { (yyval.Char) = 'i'; }
4362      break;      break;
4363    
4364    case 189:    case 253:
4365  #line 320 "lscp.y"  #line 420 "lscp.y"
4366      { (yyval.Char) = 'j'; }      { (yyval.Char) = 'j'; }
4367      break;      break;
4368    
4369    case 190:    case 254:
4370  #line 320 "lscp.y"  #line 420 "lscp.y"
4371      { (yyval.Char) = 'k'; }      { (yyval.Char) = 'k'; }
4372      break;      break;
4373    
4374    case 191:    case 255:
4375  #line 320 "lscp.y"  #line 420 "lscp.y"
4376      { (yyval.Char) = 'l'; }      { (yyval.Char) = 'l'; }
4377      break;      break;
4378    
4379    case 192:    case 256:
4380  #line 320 "lscp.y"  #line 420 "lscp.y"
4381      { (yyval.Char) = 'm'; }      { (yyval.Char) = 'm'; }
4382      break;      break;
4383    
4384    case 193:    case 257:
4385  #line 320 "lscp.y"  #line 420 "lscp.y"
4386      { (yyval.Char) = 'n'; }      { (yyval.Char) = 'n'; }
4387      break;      break;
4388    
4389    case 194:    case 258:
4390  #line 320 "lscp.y"  #line 420 "lscp.y"
4391      { (yyval.Char) = 'o'; }      { (yyval.Char) = 'o'; }
4392      break;      break;
4393    
4394    case 195:    case 259:
4395  #line 320 "lscp.y"  #line 420 "lscp.y"
4396      { (yyval.Char) = 'p'; }      { (yyval.Char) = 'p'; }
4397      break;      break;
4398    
4399    case 196:    case 260:
4400  #line 320 "lscp.y"  #line 420 "lscp.y"
4401      { (yyval.Char) = 'q'; }      { (yyval.Char) = 'q'; }
4402      break;      break;
4403    
4404    case 197:    case 261:
4405  #line 320 "lscp.y"  #line 420 "lscp.y"
4406      { (yyval.Char) = 'r'; }      { (yyval.Char) = 'r'; }
4407      break;      break;
4408    
4409    case 198:    case 262:
4410  #line 320 "lscp.y"  #line 420 "lscp.y"
4411      { (yyval.Char) = 's'; }      { (yyval.Char) = 's'; }
4412      break;      break;
4413    
4414    case 199:    case 263:
4415  #line 320 "lscp.y"  #line 420 "lscp.y"
4416      { (yyval.Char) = 't'; }      { (yyval.Char) = 't'; }
4417      break;      break;
4418    
4419    case 200:    case 264:
4420  #line 320 "lscp.y"  #line 420 "lscp.y"
4421      { (yyval.Char) = 'u'; }      { (yyval.Char) = 'u'; }
4422      break;      break;
4423    
4424    case 201:    case 265:
4425  #line 320 "lscp.y"  #line 420 "lscp.y"
4426      { (yyval.Char) = 'v'; }      { (yyval.Char) = 'v'; }
4427      break;      break;
4428    
4429    case 202:    case 266:
4430  #line 320 "lscp.y"  #line 420 "lscp.y"
4431      { (yyval.Char) = 'w'; }      { (yyval.Char) = 'w'; }
4432      break;      break;
4433    
4434    case 203:    case 267:
4435  #line 320 "lscp.y"  #line 420 "lscp.y"
4436      { (yyval.Char) = 'x'; }      { (yyval.Char) = 'x'; }
4437      break;      break;
4438    
4439    case 204:    case 268:
4440  #line 320 "lscp.y"  #line 420 "lscp.y"
4441      { (yyval.Char) = 'y'; }      { (yyval.Char) = 'y'; }
4442      break;      break;
4443    
4444    case 205:    case 269:
4445  #line 320 "lscp.y"  #line 420 "lscp.y"
4446      { (yyval.Char) = 'z'; }      { (yyval.Char) = 'z'; }
4447      break;      break;
4448    
4449    case 206:    case 270:
4450  #line 321 "lscp.y"  #line 421 "lscp.y"
4451      { (yyval.Char) = '0'; }      { (yyval.Char) = '0'; }
4452      break;      break;
4453    
4454    case 207:    case 271:
4455  #line 321 "lscp.y"  #line 421 "lscp.y"
4456      { (yyval.Char) = '1'; }      { (yyval.Char) = '1'; }
4457      break;      break;
4458    
4459    case 208:    case 272:
4460  #line 321 "lscp.y"  #line 421 "lscp.y"
4461      { (yyval.Char) = '2'; }      { (yyval.Char) = '2'; }
4462      break;      break;
4463    
4464    case 209:    case 273:
4465  #line 321 "lscp.y"  #line 421 "lscp.y"
4466      { (yyval.Char) = '3'; }      { (yyval.Char) = '3'; }
4467      break;      break;
4468    
4469    case 210:    case 274:
4470  #line 321 "lscp.y"  #line 421 "lscp.y"
4471      { (yyval.Char) = '4'; }      { (yyval.Char) = '4'; }
4472      break;      break;
4473    
4474    case 211:    case 275:
4475  #line 321 "lscp.y"  #line 421 "lscp.y"
4476      { (yyval.Char) = '5'; }      { (yyval.Char) = '5'; }
4477      break;      break;
4478    
4479    case 212:    case 276:
4480  #line 321 "lscp.y"  #line 421 "lscp.y"
4481      { (yyval.Char) = '6'; }      { (yyval.Char) = '6'; }
4482      break;      break;
4483    
4484    case 213:    case 277:
4485  #line 321 "lscp.y"  #line 421 "lscp.y"
4486      { (yyval.Char) = '7'; }      { (yyval.Char) = '7'; }
4487      break;      break;
4488    
4489    case 214:    case 278:
4490  #line 321 "lscp.y"  #line 421 "lscp.y"
4491      { (yyval.Char) = '8'; }      { (yyval.Char) = '8'; }
4492      break;      break;
4493    
4494    case 215:    case 279:
4495  #line 321 "lscp.y"  #line 421 "lscp.y"
4496      { (yyval.Char) = '9'; }      { (yyval.Char) = '9'; }
4497      break;      break;
4498    
4499    case 216:    case 280:
4500  #line 322 "lscp.y"  #line 422 "lscp.y"
4501      { (yyval.Char) = '!'; }      { (yyval.Char) = '!'; }
4502      break;      break;
4503    
4504    case 217:    case 281:
4505  #line 322 "lscp.y"  #line 422 "lscp.y"
4506      { (yyval.Char) = '#'; }      { (yyval.Char) = '#'; }
4507      break;      break;
4508    
4509    case 218:    case 282:
4510  #line 322 "lscp.y"  #line 422 "lscp.y"
4511      { (yyval.Char) = '$'; }      { (yyval.Char) = '$'; }
4512      break;      break;
4513    
4514    case 219:    case 283:
4515  #line 322 "lscp.y"  #line 422 "lscp.y"
4516      { (yyval.Char) = '%'; }      { (yyval.Char) = '%'; }
4517      break;      break;
4518    
4519    case 220:    case 284:
4520  #line 322 "lscp.y"  #line 422 "lscp.y"
4521      { (yyval.Char) = '&'; }      { (yyval.Char) = '&'; }
4522      break;      break;
4523    
4524    case 221:    case 285:
4525  #line 322 "lscp.y"  #line 422 "lscp.y"
4526      { (yyval.Char) = '('; }      { (yyval.Char) = '('; }
4527      break;      break;
4528    
4529    case 222:    case 286:
4530  #line 322 "lscp.y"  #line 422 "lscp.y"
4531      { (yyval.Char) = ')'; }      { (yyval.Char) = ')'; }
4532      break;      break;
4533    
4534    case 223:    case 287:
4535  #line 322 "lscp.y"  #line 422 "lscp.y"
4536      { (yyval.Char) = '*'; }      { (yyval.Char) = '*'; }
4537      break;      break;
4538    
4539    case 224:    case 288:
4540  #line 322 "lscp.y"  #line 422 "lscp.y"
4541      { (yyval.Char) = '+'; }      { (yyval.Char) = '+'; }
4542      break;      break;
4543    
4544    case 225:    case 289:
4545  #line 322 "lscp.y"  #line 422 "lscp.y"
4546      { (yyval.Char) = '-'; }      { (yyval.Char) = '-'; }
4547      break;      break;
4548    
4549    case 226:    case 290:
4550  #line 322 "lscp.y"  #line 422 "lscp.y"
4551      { (yyval.Char) = '.'; }      { (yyval.Char) = '.'; }
4552      break;      break;
4553    
4554    case 227:    case 291:
4555  #line 322 "lscp.y"  #line 422 "lscp.y"
4556      { (yyval.Char) = ','; }      { (yyval.Char) = ','; }
4557      break;      break;
4558    
4559    case 228:    case 292:
4560  #line 322 "lscp.y"  #line 422 "lscp.y"
4561      { (yyval.Char) = '/'; }      { (yyval.Char) = '/'; }
4562      break;      break;
4563    
4564    case 229:    case 293:
4565  #line 323 "lscp.y"  #line 423 "lscp.y"
4566      { (yyval.Char) = ':'; }      { (yyval.Char) = ':'; }
4567      break;      break;
4568    
4569    case 230:    case 294:
4570  #line 323 "lscp.y"  #line 423 "lscp.y"
4571      { (yyval.Char) = ';'; }      { (yyval.Char) = ';'; }
4572      break;      break;
4573    
4574    case 231:    case 295:
4575  #line 323 "lscp.y"  #line 423 "lscp.y"
4576      { (yyval.Char) = '<'; }      { (yyval.Char) = '<'; }
4577      break;      break;
4578    
4579    case 232:    case 296:
4580  #line 323 "lscp.y"  #line 423 "lscp.y"
4581      { (yyval.Char) = '='; }      { (yyval.Char) = '='; }
4582      break;      break;
4583    
4584    case 233:    case 297:
4585  #line 323 "lscp.y"  #line 423 "lscp.y"
4586      { (yyval.Char) = '>'; }      { (yyval.Char) = '>'; }
4587      break;      break;
4588    
4589    case 234:    case 298:
4590  #line 323 "lscp.y"  #line 423 "lscp.y"
4591      { (yyval.Char) = '?'; }      { (yyval.Char) = '?'; }
4592      break;      break;
4593    
4594    case 235:    case 299:
4595  #line 323 "lscp.y"  #line 423 "lscp.y"
4596      { (yyval.Char) = '@'; }      { (yyval.Char) = '@'; }
4597      break;      break;
4598    
4599    case 236:    case 300:
4600  #line 324 "lscp.y"  #line 424 "lscp.y"
4601      { (yyval.Char) = '['; }      { (yyval.Char) = '['; }
4602      break;      break;
4603    
4604    case 237:    case 301:
4605  #line 324 "lscp.y"  #line 424 "lscp.y"
4606      { (yyval.Char) = '\\'; }      { (yyval.Char) = '\\'; }
4607      break;      break;
4608    
4609    case 238:    case 302:
4610  #line 324 "lscp.y"  #line 424 "lscp.y"
4611      { (yyval.Char) = ']'; }      { (yyval.Char) = ']'; }
4612      break;      break;
4613    
4614    case 239:    case 303:
4615  #line 324 "lscp.y"  #line 424 "lscp.y"
4616      { (yyval.Char) = '^'; }      { (yyval.Char) = '^'; }
4617      break;      break;
4618    
4619    case 240:    case 304:
4620  #line 324 "lscp.y"  #line 424 "lscp.y"
4621      { (yyval.Char) = '_'; }      { (yyval.Char) = '_'; }
4622      break;      break;
4623    
4624    case 241:    case 305:
4625  #line 325 "lscp.y"  #line 425 "lscp.y"
4626      { (yyval.Char) = '{'; }      { (yyval.Char) = '{'; }
4627      break;      break;
4628    
4629    case 242:    case 306:
4630  #line 325 "lscp.y"  #line 425 "lscp.y"
4631      { (yyval.Char) = '|'; }      { (yyval.Char) = '|'; }
4632      break;      break;
4633    
4634    case 243:    case 307:
4635  #line 325 "lscp.y"  #line 425 "lscp.y"
4636      { (yyval.Char) = '}'; }      { (yyval.Char) = '}'; }
4637      break;      break;
4638    
4639    case 244:    case 308:
4640  #line 325 "lscp.y"  #line 425 "lscp.y"
4641      { (yyval.Char) = '~'; }      { (yyval.Char) = '~'; }
4642      break;      break;
4643    
4644    case 245:    case 309:
4645  #line 326 "lscp.y"  #line 426 "lscp.y"
4646      { (yyval.Char) = '\200'; }      { (yyval.Char) = '\200'; }
4647      break;      break;
4648    
4649    case 246:    case 310:
4650  #line 326 "lscp.y"  #line 426 "lscp.y"
4651      { (yyval.Char) = '\201'; }      { (yyval.Char) = '\201'; }
4652      break;      break;
4653    
4654    case 247:    case 311:
4655  #line 326 "lscp.y"  #line 426 "lscp.y"
4656      { (yyval.Char) = '\202'; }      { (yyval.Char) = '\202'; }
4657      break;      break;
4658    
4659    case 248:    case 312:
4660  #line 327 "lscp.y"  #line 427 "lscp.y"
4661      { (yyval.Char) = '\203'; }      { (yyval.Char) = '\203'; }
4662      break;      break;
4663    
4664    case 249:    case 313:
4665  #line 327 "lscp.y"  #line 427 "lscp.y"
4666      { (yyval.Char) = '\204'; }      { (yyval.Char) = '\204'; }
4667      break;      break;
4668    
4669    case 250:    case 314:
4670  #line 327 "lscp.y"  #line 427 "lscp.y"
4671      { (yyval.Char) = '\205'; }      { (yyval.Char) = '\205'; }
4672      break;      break;
4673    
4674    case 251:    case 315:
4675  #line 328 "lscp.y"  #line 428 "lscp.y"
4676      { (yyval.Char) = '\206'; }      { (yyval.Char) = '\206'; }
4677      break;      break;
4678    
4679    case 252:    case 316:
4680  #line 328 "lscp.y"  #line 428 "lscp.y"
4681      { (yyval.Char) = '\207'; }      { (yyval.Char) = '\207'; }
4682      break;      break;
4683    
4684    case 253:    case 317:
4685  #line 328 "lscp.y"  #line 428 "lscp.y"
4686      { (yyval.Char) = '\210'; }      { (yyval.Char) = '\210'; }
4687      break;      break;
4688    
4689    case 254:    case 318:
4690  #line 329 "lscp.y"  #line 429 "lscp.y"
4691      { (yyval.Char) = '\211'; }      { (yyval.Char) = '\211'; }
4692      break;      break;
4693    
4694    case 255:    case 319:
4695  #line 329 "lscp.y"  #line 429 "lscp.y"
4696      { (yyval.Char) = '\212'; }      { (yyval.Char) = '\212'; }
4697      break;      break;
4698    
4699    case 256:    case 320:
4700  #line 329 "lscp.y"  #line 429 "lscp.y"
4701      { (yyval.Char) = '\213'; }      { (yyval.Char) = '\213'; }
4702      break;      break;
4703    
4704    case 257:    case 321:
4705  #line 330 "lscp.y"  #line 430 "lscp.y"
4706      { (yyval.Char) = '\214'; }      { (yyval.Char) = '\214'; }
4707      break;      break;
4708    
4709    case 258:    case 322:
4710  #line 330 "lscp.y"  #line 430 "lscp.y"
4711      { (yyval.Char) = '\215'; }      { (yyval.Char) = '\215'; }
4712      break;      break;
4713    
4714    case 259:    case 323:
4715  #line 330 "lscp.y"  #line 430 "lscp.y"
4716      { (yyval.Char) = '\216'; }      { (yyval.Char) = '\216'; }
4717      break;      break;
4718    
4719    case 260:    case 324:
4720  #line 331 "lscp.y"  #line 431 "lscp.y"
4721      { (yyval.Char) = '\217'; }      { (yyval.Char) = '\217'; }
4722      break;      break;
4723    
4724    case 261:    case 325:
4725  #line 331 "lscp.y"  #line 431 "lscp.y"
4726      { (yyval.Char) = '\220'; }      { (yyval.Char) = '\220'; }
4727      break;      break;
4728    
4729    case 262:    case 326:
4730  #line 331 "lscp.y"  #line 431 "lscp.y"
4731      { (yyval.Char) = '\221'; }      { (yyval.Char) = '\221'; }
4732      break;      break;
4733    
4734    case 263:    case 327:
4735  #line 332 "lscp.y"  #line 432 "lscp.y"
4736      { (yyval.Char) = '\222'; }      { (yyval.Char) = '\222'; }
4737      break;      break;
4738    
4739    case 264:    case 328:
4740  #line 332 "lscp.y"  #line 432 "lscp.y"
4741      { (yyval.Char) = '\223'; }      { (yyval.Char) = '\223'; }
4742      break;      break;
4743    
4744    case 265:    case 329:
4745  #line 332 "lscp.y"  #line 432 "lscp.y"
4746      { (yyval.Char) = '\224'; }      { (yyval.Char) = '\224'; }
4747      break;      break;
4748    
4749    case 266:    case 330:
4750  #line 333 "lscp.y"  #line 433 "lscp.y"
4751      { (yyval.Char) = '\225'; }      { (yyval.Char) = '\225'; }
4752      break;      break;
4753    
4754    case 267:    case 331:
4755  #line 333 "lscp.y"  #line 433 "lscp.y"
4756      { (yyval.Char) = '\226'; }      { (yyval.Char) = '\226'; }
4757      break;      break;
4758    
4759    case 268:    case 332:
4760  #line 333 "lscp.y"  #line 433 "lscp.y"
4761      { (yyval.Char) = '\227'; }      { (yyval.Char) = '\227'; }
4762      break;      break;
4763    
4764    case 269:    case 333:
4765  #line 334 "lscp.y"  #line 434 "lscp.y"
4766      { (yyval.Char) = '\230'; }      { (yyval.Char) = '\230'; }
4767      break;      break;
4768    
4769    case 270:    case 334:
4770  #line 334 "lscp.y"  #line 434 "lscp.y"
4771      { (yyval.Char) = '\231'; }      { (yyval.Char) = '\231'; }
4772      break;      break;
4773    
4774    case 271:    case 335:
4775  #line 334 "lscp.y"  #line 434 "lscp.y"
4776      { (yyval.Char) = '\232'; }      { (yyval.Char) = '\232'; }
4777      break;      break;
4778    
4779    case 272:    case 336:
4780  #line 335 "lscp.y"  #line 435 "lscp.y"
4781      { (yyval.Char) = '\233'; }      { (yyval.Char) = '\233'; }
4782      break;      break;
4783    
4784    case 273:    case 337:
4785  #line 335 "lscp.y"  #line 435 "lscp.y"
4786      { (yyval.Char) = '\234'; }      { (yyval.Char) = '\234'; }
4787      break;      break;
4788    
4789    case 274:    case 338:
4790  #line 335 "lscp.y"  #line 435 "lscp.y"
4791      { (yyval.Char) = '\235'; }      { (yyval.Char) = '\235'; }
4792      break;      break;
4793    
4794    case 275:    case 339:
4795  #line 336 "lscp.y"  #line 436 "lscp.y"
4796      { (yyval.Char) = '\236'; }      { (yyval.Char) = '\236'; }
4797      break;      break;
4798    
4799    case 276:    case 340:
4800  #line 336 "lscp.y"  #line 436 "lscp.y"
4801      { (yyval.Char) = '\237'; }      { (yyval.Char) = '\237'; }
4802      break;      break;
4803    
4804    case 277:    case 341:
4805  #line 336 "lscp.y"  #line 436 "lscp.y"
4806      { (yyval.Char) = '\240'; }      { (yyval.Char) = '\240'; }
4807      break;      break;
4808    
4809    case 278:    case 342:
4810  #line 337 "lscp.y"  #line 437 "lscp.y"
4811      { (yyval.Char) = '\241'; }      { (yyval.Char) = '\241'; }
4812      break;      break;
4813    
4814    case 279:    case 343:
4815  #line 337 "lscp.y"  #line 437 "lscp.y"
4816      { (yyval.Char) = '\242'; }      { (yyval.Char) = '\242'; }
4817      break;      break;
4818    
4819    case 280:    case 344:
4820  #line 337 "lscp.y"  #line 437 "lscp.y"
4821      { (yyval.Char) = '\243'; }      { (yyval.Char) = '\243'; }
4822      break;      break;
4823    
4824    case 281:    case 345:
4825  #line 338 "lscp.y"  #line 438 "lscp.y"
4826      { (yyval.Char) = '\244'; }      { (yyval.Char) = '\244'; }
4827      break;      break;
4828    
4829    case 282:    case 346:
4830  #line 338 "lscp.y"  #line 438 "lscp.y"
4831      { (yyval.Char) = '\245'; }      { (yyval.Char) = '\245'; }
4832      break;      break;
4833    
4834    case 283:    case 347:
4835  #line 338 "lscp.y"  #line 438 "lscp.y"
4836      { (yyval.Char) = '\246'; }      { (yyval.Char) = '\246'; }
4837      break;      break;
4838    
4839    case 284:    case 348:
4840  #line 339 "lscp.y"  #line 439 "lscp.y"
4841      { (yyval.Char) = '\247'; }      { (yyval.Char) = '\247'; }
4842      break;      break;
4843    
4844    case 285:    case 349:
4845  #line 339 "lscp.y"  #line 439 "lscp.y"
4846      { (yyval.Char) = '\250'; }      { (yyval.Char) = '\250'; }
4847      break;      break;
4848    
4849    case 286:    case 350:
4850  #line 339 "lscp.y"  #line 439 "lscp.y"
4851      { (yyval.Char) = '\251'; }      { (yyval.Char) = '\251'; }
4852      break;      break;
4853    
4854    case 287:    case 351:
4855  #line 340 "lscp.y"  #line 440 "lscp.y"
4856      { (yyval.Char) = '\252'; }      { (yyval.Char) = '\252'; }
4857      break;      break;
4858    
4859    case 288:    case 352:
4860  #line 340 "lscp.y"  #line 440 "lscp.y"
4861      { (yyval.Char) = '\253'; }      { (yyval.Char) = '\253'; }
4862      break;      break;
4863    
4864    case 289:    case 353:
4865  #line 340 "lscp.y"  #line 440 "lscp.y"
4866      { (yyval.Char) = '\254'; }      { (yyval.Char) = '\254'; }
4867      break;      break;
4868    
4869    case 290:    case 354:
4870  #line 341 "lscp.y"  #line 441 "lscp.y"
4871      { (yyval.Char) = '\255'; }      { (yyval.Char) = '\255'; }
4872      break;      break;
4873    
4874    case 291:    case 355:
4875  #line 341 "lscp.y"  #line 441 "lscp.y"
4876      { (yyval.Char) = '\256'; }      { (yyval.Char) = '\256'; }
4877      break;      break;
4878    
4879    case 292:    case 356:
4880  #line 341 "lscp.y"  #line 441 "lscp.y"
4881      { (yyval.Char) = '\257'; }      { (yyval.Char) = '\257'; }
4882      break;      break;
4883    
4884    case 293:    case 357:
4885  #line 342 "lscp.y"  #line 442 "lscp.y"
4886      { (yyval.Char) = '\260'; }      { (yyval.Char) = '\260'; }
4887      break;      break;
4888    
4889    case 294:    case 358:
4890  #line 342 "lscp.y"  #line 442 "lscp.y"
4891      { (yyval.Char) = '\261'; }      { (yyval.Char) = '\261'; }
4892      break;      break;
4893    
4894    case 295:    case 359:
4895  #line 342 "lscp.y"  #line 442 "lscp.y"
4896      { (yyval.Char) = '\262'; }      { (yyval.Char) = '\262'; }
4897      break;      break;
4898    
4899    case 296:    case 360:
4900  #line 343 "lscp.y"  #line 443 "lscp.y"
4901      { (yyval.Char) = '\263'; }      { (yyval.Char) = '\263'; }
4902      break;      break;
4903    
4904    case 297:    case 361:
4905  #line 343 "lscp.y"  #line 443 "lscp.y"
4906      { (yyval.Char) = '\264'; }      { (yyval.Char) = '\264'; }
4907      break;      break;
4908    
4909    case 298:    case 362:
4910  #line 343 "lscp.y"  #line 443 "lscp.y"
4911      { (yyval.Char) = '\265'; }      { (yyval.Char) = '\265'; }
4912      break;      break;
4913    
4914    case 299:    case 363:
4915  #line 344 "lscp.y"  #line 444 "lscp.y"
4916      { (yyval.Char) = '\266'; }      { (yyval.Char) = '\266'; }
4917      break;      break;
4918    
4919    case 300:    case 364:
4920  #line 344 "lscp.y"  #line 444 "lscp.y"
4921      { (yyval.Char) = '\267'; }      { (yyval.Char) = '\267'; }
4922      break;      break;
4923    
4924    case 301:    case 365:
4925  #line 344 "lscp.y"  #line 444 "lscp.y"
4926      { (yyval.Char) = '\270'; }      { (yyval.Char) = '\270'; }
4927      break;      break;
4928    
4929    case 302:    case 366:
4930  #line 345 "lscp.y"  #line 445 "lscp.y"
4931      { (yyval.Char) = '\271'; }      { (yyval.Char) = '\271'; }
4932      break;      break;
4933    
4934    case 303:    case 367:
4935  #line 345 "lscp.y"  #line 445 "lscp.y"
4936      { (yyval.Char) = '\272'; }      { (yyval.Char) = '\272'; }
4937      break;      break;
4938    
4939    case 304:    case 368:
4940  #line 345 "lscp.y"  #line 445 "lscp.y"
4941      { (yyval.Char) = '\273'; }      { (yyval.Char) = '\273'; }
4942      break;      break;
4943    
4944    case 305:    case 369:
4945  #line 346 "lscp.y"  #line 446 "lscp.y"
4946      { (yyval.Char) = '\274'; }      { (yyval.Char) = '\274'; }
4947      break;      break;
4948    
4949    case 306:    case 370:
4950  #line 346 "lscp.y"  #line 446 "lscp.y"
4951      { (yyval.Char) = '\275'; }      { (yyval.Char) = '\275'; }
4952      break;      break;
4953    
4954    case 307:    case 371:
4955  #line 346 "lscp.y"  #line 446 "lscp.y"
4956      { (yyval.Char) = '\276'; }      { (yyval.Char) = '\276'; }
4957      break;      break;
4958    
4959    case 308:    case 372:
4960  #line 347 "lscp.y"  #line 447 "lscp.y"
4961      { (yyval.Char) = '\277'; }      { (yyval.Char) = '\277'; }
4962      break;      break;
4963    
4964    case 309:    case 373:
4965  #line 347 "lscp.y"  #line 447 "lscp.y"
4966      { (yyval.Char) = '\300'; }      { (yyval.Char) = '\300'; }
4967      break;      break;
4968    
4969    case 310:    case 374:
4970  #line 347 "lscp.y"  #line 447 "lscp.y"
4971      { (yyval.Char) = '\301'; }      { (yyval.Char) = '\301'; }
4972      break;      break;
4973    
4974    case 311:    case 375:
4975  #line 348 "lscp.y"  #line 448 "lscp.y"
4976      { (yyval.Char) = '\302'; }      { (yyval.Char) = '\302'; }
4977      break;      break;
4978    
4979    case 312:    case 376:
4980  #line 348 "lscp.y"  #line 448 "lscp.y"
4981      { (yyval.Char) = '\303'; }      { (yyval.Char) = '\303'; }
4982      break;      break;
4983    
4984    case 313:    case 377:
4985  #line 348 "lscp.y"  #line 448 "lscp.y"
4986      { (yyval.Char) = '\304'; }      { (yyval.Char) = '\304'; }
4987      break;      break;
4988    
4989    case 314:    case 378:
4990  #line 349 "lscp.y"  #line 449 "lscp.y"
4991      { (yyval.Char) = '\305'; }      { (yyval.Char) = '\305'; }
4992      break;      break;
4993    
4994    case 315:    case 379:
4995  #line 349 "lscp.y"  #line 449 "lscp.y"
4996      { (yyval.Char) = '\306'; }      { (yyval.Char) = '\306'; }
4997      break;      break;
4998    
4999    case 316:    case 380:
5000  #line 349 "lscp.y"  #line 449 "lscp.y"
5001      { (yyval.Char) = '\307'; }      { (yyval.Char) = '\307'; }
5002      break;      break;
5003    
5004    case 317:    case 381:
5005  #line 350 "lscp.y"  #line 450 "lscp.y"
5006      { (yyval.Char) = '\310'; }      { (yyval.Char) = '\310'; }
5007      break;      break;
5008    
5009    case 318:    case 382:
5010  #line 350 "lscp.y"  #line 450 "lscp.y"
5011      { (yyval.Char) = '\311'; }      { (yyval.Char) = '\311'; }
5012      break;      break;
5013    
5014    case 319:    case 383:
5015  #line 350 "lscp.y"  #line 450 "lscp.y"
5016      { (yyval.Char) = '\312'; }      { (yyval.Char) = '\312'; }
5017      break;      break;
5018    
5019    case 320:    case 384:
5020  #line 351 "lscp.y"  #line 451 "lscp.y"
5021      { (yyval.Char) = '\313'; }      { (yyval.Char) = '\313'; }
5022      break;      break;
5023    
5024    case 321:    case 385:
5025  #line 351 "lscp.y"  #line 451 "lscp.y"
5026      { (yyval.Char) = '\314'; }      { (yyval.Char) = '\314'; }
5027      break;      break;
5028    
5029    case 322:    case 386:
5030  #line 351 "lscp.y"  #line 451 "lscp.y"
5031      { (yyval.Char) = '\315'; }      { (yyval.Char) = '\315'; }
5032      break;      break;
5033    
5034    case 323:    case 387:
5035  #line 352 "lscp.y"  #line 452 "lscp.y"
5036      { (yyval.Char) = '\316'; }      { (yyval.Char) = '\316'; }
5037      break;      break;
5038    
5039    case 324:    case 388:
5040  #line 352 "lscp.y"  #line 452 "lscp.y"
5041      { (yyval.Char) = '\317'; }      { (yyval.Char) = '\317'; }
5042      break;      break;
5043    
5044    case 325:    case 389:
5045  #line 352 "lscp.y"  #line 452 "lscp.y"
5046      { (yyval.Char) = '\320'; }      { (yyval.Char) = '\320'; }
5047      break;      break;
5048    
5049    case 326:    case 390:
5050  #line 353 "lscp.y"  #line 453 "lscp.y"
5051      { (yyval.Char) = '\321'; }      { (yyval.Char) = '\321'; }
5052      break;      break;
5053    
5054    case 327:    case 391:
5055  #line 353 "lscp.y"  #line 453 "lscp.y"
5056      { (yyval.Char) = '\322'; }      { (yyval.Char) = '\322'; }
5057      break;      break;
5058    
5059    case 328:    case 392:
5060  #line 353 "lscp.y"  #line 453 "lscp.y"
5061      { (yyval.Char) = '\323'; }      { (yyval.Char) = '\323'; }
5062      break;      break;
5063    
5064    case 329:    case 393:
5065  #line 354 "lscp.y"  #line 454 "lscp.y"
5066      { (yyval.Char) = '\324'; }      { (yyval.Char) = '\324'; }
5067      break;      break;
5068    
5069    case 330:    case 394:
5070  #line 354 "lscp.y"  #line 454 "lscp.y"
5071      { (yyval.Char) = '\325'; }      { (yyval.Char) = '\325'; }
5072      break;      break;
5073    
5074    case 331:    case 395:
5075  #line 354 "lscp.y"  #line 454 "lscp.y"
5076      { (yyval.Char) = '\326'; }      { (yyval.Char) = '\326'; }
5077      break;      break;
5078    
5079    case 332:    case 396:
5080  #line 355 "lscp.y"  #line 455 "lscp.y"
5081      { (yyval.Char) = '\327'; }      { (yyval.Char) = '\327'; }
5082      break;      break;
5083    
5084    case 333:    case 397:
5085  #line 355 "lscp.y"  #line 455 "lscp.y"
5086      { (yyval.Char) = '\330'; }      { (yyval.Char) = '\330'; }
5087      break;      break;
5088    
5089    case 334:    case 398:
5090  #line 355 "lscp.y"  #line 455 "lscp.y"
5091      { (yyval.Char) = '\331'; }      { (yyval.Char) = '\331'; }
5092      break;      break;
5093    
5094    case 335:    case 399:
5095  #line 356 "lscp.y"  #line 456 "lscp.y"
5096      { (yyval.Char) = '\332'; }      { (yyval.Char) = '\332'; }
5097      break;      break;
5098    
5099    case 336:    case 400:
5100  #line 356 "lscp.y"  #line 456 "lscp.y"
5101      { (yyval.Char) = '\333'; }      { (yyval.Char) = '\333'; }
5102      break;      break;
5103    
5104    case 337:    case 401:
5105  #line 356 "lscp.y"  #line 456 "lscp.y"
5106      { (yyval.Char) = '\334'; }      { (yyval.Char) = '\334'; }
5107      break;      break;
5108    
5109    case 338:    case 402:
5110  #line 357 "lscp.y"  #line 457 "lscp.y"
5111      { (yyval.Char) = '\335'; }      { (yyval.Char) = '\335'; }
5112      break;      break;
5113    
5114    case 339:    case 403:
5115  #line 357 "lscp.y"  #line 457 "lscp.y"
5116      { (yyval.Char) = '\336'; }      { (yyval.Char) = '\336'; }
5117      break;      break;
5118    
5119    case 340:    case 404:
5120  #line 357 "lscp.y"  #line 457 "lscp.y"
5121      { (yyval.Char) = '\337'; }      { (yyval.Char) = '\337'; }
5122      break;      break;
5123    
5124    case 341:    case 405:
5125  #line 358 "lscp.y"  #line 458 "lscp.y"
5126      { (yyval.Char) = '\340'; }      { (yyval.Char) = '\340'; }
5127      break;      break;
5128    
5129    case 342:    case 406:
5130  #line 358 "lscp.y"  #line 458 "lscp.y"
5131      { (yyval.Char) = '\341'; }      { (yyval.Char) = '\341'; }
5132      break;      break;
5133    
5134    case 343:    case 407:
5135  #line 358 "lscp.y"  #line 458 "lscp.y"
5136      { (yyval.Char) = '\342'; }      { (yyval.Char) = '\342'; }
5137      break;      break;
5138    
5139    case 344:    case 408:
5140  #line 359 "lscp.y"  #line 459 "lscp.y"
5141      { (yyval.Char) = '\343'; }      { (yyval.Char) = '\343'; }
5142      break;      break;
5143    
5144    case 345:    case 409:
5145  #line 359 "lscp.y"  #line 459 "lscp.y"
5146      { (yyval.Char) = '\344'; }      { (yyval.Char) = '\344'; }
5147      break;      break;
5148    
5149    case 346:    case 410:
5150  #line 359 "lscp.y"  #line 459 "lscp.y"
5151      { (yyval.Char) = '\345'; }      { (yyval.Char) = '\345'; }
5152      break;      break;
5153    
5154    case 347:    case 411:
5155  #line 360 "lscp.y"  #line 460 "lscp.y"
5156      { (yyval.Char) = '\346'; }      { (yyval.Char) = '\346'; }
5157      break;      break;
5158    
5159    case 348:    case 412:
5160  #line 360 "lscp.y"  #line 460 "lscp.y"
5161      { (yyval.Char) = '\347'; }      { (yyval.Char) = '\347'; }
5162      break;      break;
5163    
5164    case 349:    case 413:
5165  #line 360 "lscp.y"  #line 460 "lscp.y"
5166      { (yyval.Char) = '\350'; }      { (yyval.Char) = '\350'; }
5167      break;      break;
5168    
5169    case 350:    case 414:
5170  #line 361 "lscp.y"  #line 461 "lscp.y"
5171      { (yyval.Char) = '\351'; }      { (yyval.Char) = '\351'; }
5172      break;      break;
5173    
5174    case 351:    case 415:
5175  #line 361 "lscp.y"  #line 461 "lscp.y"
5176      { (yyval.Char) = '\352'; }      { (yyval.Char) = '\352'; }
5177      break;      break;
5178    
5179    case 352:    case 416:
5180  #line 361 "lscp.y"  #line 461 "lscp.y"
5181      { (yyval.Char) = '\353'; }      { (yyval.Char) = '\353'; }
5182      break;      break;
5183    
5184    case 353:    case 417:
5185  #line 362 "lscp.y"  #line 462 "lscp.y"
5186      { (yyval.Char) = '\354'; }      { (yyval.Char) = '\354'; }
5187      break;      break;
5188    
5189    case 354:    case 418:
5190  #line 362 "lscp.y"  #line 462 "lscp.y"
5191      { (yyval.Char) = '\355'; }      { (yyval.Char) = '\355'; }
5192      break;      break;
5193    
5194    case 355:    case 419:
5195  #line 362 "lscp.y"  #line 462 "lscp.y"
5196      { (yyval.Char) = '\356'; }      { (yyval.Char) = '\356'; }
5197      break;      break;
5198    
5199    case 356:    case 420:
5200  #line 363 "lscp.y"  #line 463 "lscp.y"
5201      { (yyval.Char) = '\357'; }      { (yyval.Char) = '\357'; }
5202      break;      break;
5203    
5204    case 357:    case 421:
5205  #line 363 "lscp.y"  #line 463 "lscp.y"
5206      { (yyval.Char) = '\360'; }      { (yyval.Char) = '\360'; }
5207      break;      break;
5208    
5209    case 358:    case 422:
5210  #line 363 "lscp.y"  #line 463 "lscp.y"
5211      { (yyval.Char) = '\361'; }      { (yyval.Char) = '\361'; }
5212      break;      break;
5213    
5214    case 359:    case 423:
5215  #line 364 "lscp.y"  #line 464 "lscp.y"
5216      { (yyval.Char) = '\362'; }      { (yyval.Char) = '\362'; }
5217      break;      break;
5218    
5219    case 360:    case 424:
5220  #line 364 "lscp.y"  #line 464 "lscp.y"
5221      { (yyval.Char) = '\363'; }      { (yyval.Char) = '\363'; }
5222      break;      break;
5223    
5224    case 361:    case 425:
5225  #line 364 "lscp.y"  #line 464 "lscp.y"
5226      { (yyval.Char) = '\364'; }      { (yyval.Char) = '\364'; }
5227      break;      break;
5228    
5229    case 362:    case 426:
5230  #line 365 "lscp.y"  #line 465 "lscp.y"
5231      { (yyval.Char) = '\365'; }      { (yyval.Char) = '\365'; }
5232      break;      break;
5233    
5234    case 363:    case 427:
5235  #line 365 "lscp.y"  #line 465 "lscp.y"
5236      { (yyval.Char) = '\366'; }      { (yyval.Char) = '\366'; }
5237      break;      break;
5238    
5239    case 364:    case 428:
5240  #line 365 "lscp.y"  #line 465 "lscp.y"
5241      { (yyval.Char) = '\367'; }      { (yyval.Char) = '\367'; }
5242      break;      break;
5243    
5244    case 365:    case 429:
5245  #line 366 "lscp.y"  #line 466 "lscp.y"
5246      { (yyval.Char) = '\370'; }      { (yyval.Char) = '\370'; }
5247      break;      break;
5248    
5249    case 366:    case 430:
5250  #line 366 "lscp.y"  #line 466 "lscp.y"
5251      { (yyval.Char) = '\371'; }      { (yyval.Char) = '\371'; }
5252      break;      break;
5253    
5254    case 367:    case 431:
5255  #line 366 "lscp.y"  #line 466 "lscp.y"
5256      { (yyval.Char) = '\372'; }      { (yyval.Char) = '\372'; }
5257      break;      break;
5258    
5259    case 368:    case 432:
5260  #line 367 "lscp.y"  #line 467 "lscp.y"
5261      { (yyval.Char) = '\373'; }      { (yyval.Char) = '\373'; }
5262      break;      break;
5263    
5264    case 369:    case 433:
5265  #line 367 "lscp.y"  #line 467 "lscp.y"
5266      { (yyval.Char) = '\374'; }      { (yyval.Char) = '\374'; }
5267      break;      break;
5268    
5269    case 370:    case 434:
5270  #line 367 "lscp.y"  #line 467 "lscp.y"
5271      { (yyval.Char) = '\375'; }      { (yyval.Char) = '\375'; }
5272      break;      break;
5273    
5274    case 371:    case 435:
5275  #line 368 "lscp.y"  #line 468 "lscp.y"
5276      { (yyval.Char) = '\376'; }      { (yyval.Char) = '\376'; }
5277      break;      break;
5278    
5279    case 372:    case 436:
5280  #line 368 "lscp.y"  #line 468 "lscp.y"
5281      { (yyval.Char) = '\377'; }      { (yyval.Char) = '\377'; }
5282      break;      break;
5283    
5284    case 373:    case 437:
5285  #line 371 "lscp.y"  #line 471 "lscp.y"
5286      { (yyval.String) = " ";      }      { (yyval.String) = " ";      }
5287      break;      break;
5288    
5289    case 375:    case 439:
5290  #line 373 "lscp.y"  #line 473 "lscp.y"
5291      { (yyval.String) = (yyvsp[-1].String) + " "; }      { (yyval.String) = (yyvsp[(1) - (2)].String) + " "; }
5292      break;      break;
5293    
5294    case 376:    case 440:
5295  #line 374 "lscp.y"  #line 474 "lscp.y"
5296      { (yyval.String) = (yyvsp[-1].String) + (yyvsp[0].String);  }      { (yyval.String) = (yyvsp[(1) - (2)].String) + (yyvsp[(2) - (2)].String);  }
5297      break;      break;
5298    
5299    case 377:    case 441:
5300  #line 377 "lscp.y"  #line 477 "lscp.y"
5301      { (yyval.String) = (yyvsp[-1].String); }      { (yyval.String) = (yyvsp[(2) - (3)].String); }
5302      break;      break;
5303    
5304    case 378:    case 442:
5305  #line 378 "lscp.y"  #line 478 "lscp.y"
5306      { (yyval.String) = (yyvsp[-1].String); }      { (yyval.String) = (yyvsp[(2) - (3)].String); }
5307      break;      break;
5308    
5309    
5310    /* Line 1267 of yacc.c.  */
5311    #line 5312 "y.tab.c"
5312          default: break;
5313      }      }
5314      YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
5315    
5316  /* Line 1037 of yacc.c.  */    YYPOPSTACK (yylen);
5317  #line 4510 "y.tab.c"    yylen = 0;
   
   yyvsp -= yylen;  
   yyssp -= yylen;  
   
   
5318    YY_STACK_PRINT (yyss, yyssp);    YY_STACK_PRINT (yyss, yyssp);
5319    
5320    *++yyvsp = yyval;    *++yyvsp = yyval;
# Line 4540  yyerrlab: Line 5343  yyerrlab:
5343    if (!yyerrstatus)    if (!yyerrstatus)
5344      {      {
5345        ++yynerrs;        ++yynerrs;
5346  #if YYERROR_VERBOSE  #if ! YYERROR_VERBOSE
5347        yyn = yypact[yystate];        yyerror (YY_("syntax error"));
5348    #else
5349        if (YYPACT_NINF < yyn && yyn < YYLAST)        {
5350          {          YYSIZE_T yysize = yysyntax_error (0, yystate, yychar);
5351            YYSIZE_T yysize = 0;          if (yymsg_alloc < yysize && yymsg_alloc < YYSTACK_ALLOC_MAXIMUM)
5352            int yytype = YYTRANSLATE (yychar);            {
5353            const char* yyprefix;              YYSIZE_T yyalloc = 2 * yysize;
5354            char *yymsg;              if (! (yysize <= yyalloc && yyalloc <= YYSTACK_ALLOC_MAXIMUM))
5355            int yyx;                yyalloc = YYSTACK_ALLOC_MAXIMUM;
5356                if (yymsg != yymsgbuf)
5357            /* Start YYX at -YYN if negative to avoid negative indexes in                YYSTACK_FREE (yymsg);
5358               YYCHECK.  */              yymsg = (char *) YYSTACK_ALLOC (yyalloc);
5359            int yyxbegin = yyn < 0 ? -yyn : 0;              if (yymsg)
5360                  yymsg_alloc = yyalloc;
5361            /* Stay within bounds of both yycheck and yytname.  */              else
           int yychecklim = YYLAST - yyn;  
           int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;  
           int yycount = 0;  
   
           yyprefix = ", expecting ";  
           for (yyx = yyxbegin; yyx < yyxend; ++yyx)  
             if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)  
5362                {                {
5363                  yysize += yystrlen (yyprefix) + yystrlen (yytname [yyx]);                  yymsg = yymsgbuf;
5364                  yycount += 1;                  yymsg_alloc = sizeof yymsgbuf;
                 if (yycount == 5)  
                   {  
                     yysize = 0;  
                     break;  
                   }  
5365                }                }
5366            yysize += (sizeof ("syntax error, unexpected ")            }
                      + yystrlen (yytname[yytype]));  
           yymsg = (char *) YYSTACK_ALLOC (yysize);  
           if (yymsg != 0)  
             {  
               char *yyp = yystpcpy (yymsg, "syntax error, unexpected ");  
               yyp = yystpcpy (yyp, yytname[yytype]);  
5367    
5368                if (yycount < 5)          if (0 < yysize && yysize <= yymsg_alloc)
5369                  {            {
5370                    yyprefix = ", expecting ";              (void) yysyntax_error (yymsg, yystate, yychar);
5371                    for (yyx = yyxbegin; yyx < yyxend; ++yyx)              yyerror (yymsg);
5372                      if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)            }
5373                        {          else
5374                          yyp = yystpcpy (yyp, yyprefix);            {
5375                          yyp = yystpcpy (yyp, yytname[yyx]);              yyerror (YY_("syntax error"));
5376                          yyprefix = " or ";              if (yysize != 0)
5377                        }                goto yyexhaustedlab;
5378                  }            }
5379                yyerror (yymsg);        }
5380                YYSTACK_FREE (yymsg);  #endif
             }  
           else  
             yyerror ("syntax error; also virtual memory exhausted");  
         }  
       else  
 #endif /* YYERROR_VERBOSE */  
         yyerror ("syntax error");  
5381      }      }
5382    
5383    
# Line 4610  yyerrlab: Line 5388  yyerrlab:
5388           error, discard it.  */           error, discard it.  */
5389    
5390        if (yychar <= YYEOF)        if (yychar <= YYEOF)
5391          {          {
5392            /* If at end of input, pop the error token,            /* Return failure if at end of input.  */
              then the rest of the stack, then return failure.  */  
5393            if (yychar == YYEOF)            if (yychar == YYEOF)
5394               for (;;)              YYABORT;
5395                 {          }
   
                  YYPOPSTACK;  
                  if (yyssp == yyss)  
                    YYABORT;  
                  yydestruct ("Error: popping",  
                              yystos[*yyssp], yyvsp);  
                }  
         }  
5396        else        else
5397          {          {
5398            yydestruct ("Error: discarding", yytoken, &yylval);            yydestruct ("Error: discarding",
5399                          yytoken, &yylval);
5400            yychar = YYEMPTY;            yychar = YYEMPTY;
5401          }          }
5402      }      }
# Line 4641  yyerrlab: Line 5411  yyerrlab:
5411  `---------------------------------------------------*/  `---------------------------------------------------*/
5412  yyerrorlab:  yyerrorlab:
5413    
5414  #ifdef __GNUC__    /* Pacify compilers like GCC when the user code never invokes
5415    /* Pacify GCC when the user code never invokes YYERROR and the label       YYERROR and the label yyerrorlab therefore never appears in user
5416       yyerrorlab therefore never appears in user code.  */       code.  */
5417    if (0)    if (/*CONSTCOND*/ 0)
5418       goto yyerrorlab;       goto yyerrorlab;
 #endif  
5419    
5420  yyvsp -= yylen;    /* Do not reclaim the symbols of the rule which action triggered
5421    yyssp -= yylen;       this YYERROR.  */
5422      YYPOPSTACK (yylen);
5423      yylen = 0;
5424      YY_STACK_PRINT (yyss, yyssp);
5425    yystate = *yyssp;    yystate = *yyssp;
5426    goto yyerrlab1;    goto yyerrlab1;
5427    
# Line 4679  yyerrlab1: Line 5451  yyerrlab1:
5451          YYABORT;          YYABORT;
5452    
5453    
5454        yydestruct ("Error: popping", yystos[yystate], yyvsp);        yydestruct ("Error: popping",
5455        YYPOPSTACK;                    yystos[yystate], yyvsp);
5456          YYPOPSTACK (1);
5457        yystate = *yyssp;        yystate = *yyssp;
5458        YY_STACK_PRINT (yyss, yyssp);        YY_STACK_PRINT (yyss, yyssp);
5459      }      }
# Line 4691  yyerrlab1: Line 5464  yyerrlab1:
5464    *++yyvsp = yylval;    *++yyvsp = yylval;
5465    
5466    
5467    /* Shift the error token. */    /* Shift the error token.  */
5468    YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);    YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
5469    
5470    yystate = yyn;    yystate = yyn;
# Line 4709  yyacceptlab: Line 5482  yyacceptlab:
5482  | yyabortlab -- YYABORT comes here.  |  | yyabortlab -- YYABORT comes here.  |
5483  `-----------------------------------*/  `-----------------------------------*/
5484  yyabortlab:  yyabortlab:
   yydestruct ("Error: discarding lookahead",  
               yytoken, &yylval);  
   yychar = YYEMPTY;  
5485    yyresult = 1;    yyresult = 1;
5486    goto yyreturn;    goto yyreturn;
5487    
5488  #ifndef yyoverflow  #ifndef yyoverflow
5489  /*----------------------------------------------.  /*-------------------------------------------------.
5490  | yyoverflowlab -- parser overflow comes here.  |  | yyexhaustedlab -- memory exhaustion comes here.  |
5491  `----------------------------------------------*/  `-------------------------------------------------*/
5492  yyoverflowlab:  yyexhaustedlab:
5493    yyerror ("parser stack overflow");    yyerror (YY_("memory exhausted"));
5494    yyresult = 2;    yyresult = 2;
5495    /* Fall through.  */    /* Fall through.  */
5496  #endif  #endif
5497    
5498  yyreturn:  yyreturn:
5499      if (yychar != YYEOF && yychar != YYEMPTY)
5500         yydestruct ("Cleanup: discarding lookahead",
5501                     yytoken, &yylval);
5502      /* Do not reclaim the symbols of the rule which action triggered
5503         this YYABORT or YYACCEPT.  */
5504      YYPOPSTACK (yylen);
5505      YY_STACK_PRINT (yyss, yyssp);
5506      while (yyssp != yyss)
5507        {
5508          yydestruct ("Cleanup: popping",
5509                      yystos[*yyssp], yyvsp);
5510          YYPOPSTACK (1);
5511        }
5512  #ifndef yyoverflow  #ifndef yyoverflow
5513    if (yyss != yyssa)    if (yyss != yyssa)
5514      YYSTACK_FREE (yyss);      YYSTACK_FREE (yyss);
5515  #endif  #endif
5516    return yyresult;  #if YYERROR_VERBOSE
5517      if (yymsg != yymsgbuf)
5518        YYSTACK_FREE (yymsg);
5519    #endif
5520      /* Make sure YYID is used.  */
5521      return YYID (yyresult);
5522  }  }
5523    
5524    
5525  #line 561 "lscp.y"  #line 730 "lscp.y"
5526    
5527    
5528  /**  /**
# Line 4752  void restart(yyparse_param_t* pparam, in Line 5540  void restart(yyparse_param_t* pparam, in
5540      ptr   = 0;      ptr   = 0;
5541  }  }
5542    
   

Legend:
Removed from v.778  
changed lines
  Added in v.1005

  ViewVC Help
Powered by ViewVC