/[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 556 by schoenebeck, Sat May 21 01:10:12 2005 UTC revision 1001 by schoenebeck, Wed Dec 27 16:17:08 2006 UTC
# Line 1  Line 1 
1  /* A Bison parser, made by GNU Bison 1.875d.  */  /* 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 214 of yacc.c.  */  /* Line 216 of yacc.c.  */
139  #line 121 "y.tab.c"  #line 140 "y.tab.c"
140    
141  #if ! defined (yyoverflow) || YYERROR_VERBOSE  #ifdef short
142    # undef short
143    #endif
144    
145  # ifndef YYFREE  #ifdef YYTYPE_UINT8
146  #  define YYFREE free  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    #define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
187    
188    #ifndef YY_
189    # 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    
229  # ifdef YYSTACK_USE_ALLOCA  # ifdef YYSTACK_USE_ALLOCA
230  #  if YYSTACK_USE_ALLOCA  #  if YYSTACK_USE_ALLOCA
 #   define YYSTACK_ALLOC alloca  
 #  endif  
 # else  
 #  if defined (alloca) || defined (_ALLOCA_H)  
 #   define YYSTACK_ALLOC alloca  
 #  else  
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
241    #    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 175  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 210  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))
   
 #endif  
348    
 #if defined (__STDC__) || defined (__cplusplus)  
    typedef signed char yysigned_char;  
 #else  
    typedef short int yysigned_char;  
349  #endif  #endif
350    
351  /* YYFINAL -- State number of the termination state. */  /* YYFINAL -- State number of the termination state.  */
352  #define YYFINAL  40  #define YYFINAL  46
353  /* YYLAST -- Last index in YYTABLE.  */  /* YYLAST -- Last index in YYTABLE.  */
354  #define YYLAST   4475  #define YYLAST   4355
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  94  #define YYNNTS  137
360  /* YYNRULES -- Number of rules. */  /* YYNRULES -- Number of rules.  */
361  #define YYNRULES  425  #define YYNRULES  522
362  /* YYNRULES -- Number of states. */  /* YYNRULES -- Number of states.  */
363  #define YYNSTATES  1172  #define YYNSTATES  1630
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,   121,   129,   139,   141,   147,   155,   165,   167,       117,   119,   121,   123,   125,   127,   129,   131,   133,   135,
413       169,   175,   181,   189,   199,   207,   217,   219,   225,   233,       137,   139,   141,   143,   145,   147,   149,   151,   153,   155,
414       239,   245,   251,   259,   269,   277,   287,   291,   295,   301,       157,   159,   161,   163,   179,   197,   215,   235,   243,   247,
415       305,   311,   315,   319,   323,   327,   331,   337,   345,   351,       251,   255,   257,   259,   265,   273,   283,   285,   291,   299,
416       361,   367,   373,   379,   385,   391,   395,   401,   403,   405,       309,   311,   313,   319,   325,   333,   343,   351,   361,   363,
417       407,   409,   411,   413,   415,   417,   423,   431,   435,   437,       369,   377,   383,   389,   395,   399,   401,   403,   407,   411,
418       439,   441,   443,   445,   447,   449,   451,   453,   455,   457,       421,   423,   429,   433,   441,   449,   459,   467,   477,   481,
419       459,   461,   463,   467,   469,   473,   477,   479,   481,   483,       489,   501,   505,   511,   515,   521,   525,   531,   539,   543,
420       485,   487,   490,   494,   499,   504,   506,   509,   511,   513,       547,   551,   555,   559,   565,   569,   573,   579,   587,   593,
421       515,   517,   519,   521,   523,   525,   527,   529,   531,   534,       603,   609,   615,   621,   627,   633,   639,   645,   651,   657,
422       537,   540,   543,   546,   549,   552,   555,   558,   560,   562,       663,   667,   673,   675,   677,   679,   681,   683,   685,   687,
423       564,   566,   568,   570,   572,   574,   576,   578,   580,   582,       689,   693,   697,   699,   703,   709,   717,   721,   723,   725,
424       584,   586,   588,   590,   592,   594,   596,   598,   600,   602,       727,   729,   731,   733,   735,   737,   739,   741,   743,   745,
425       604,   606,   608,   610,   612,   614,   616,   618,   620,   622,       747,   749,   751,   753,   755,   757,   759,   761,   763,   765,
426       624,   626,   628,   630,   632,   634,   636,   638,   640,   642,       767,   769,   771,   775,   777,   779,   781,   783,   785,   787,
427       644,   646,   648,   650,   652,   654,   656,   658,   660,   662,       789,   792,   796,   801,   806,   808,   811,   813,   815,   817,
428       664,   666,   668,   670,   672,   674,   676,   678,   680,   682,       819,   821,   823,   825,   827,   829,   831,   833,   836,   839,
429       684,   686,   688,   690,   692,   694,   696,   698,   700,   702,       842,   845,   848,   851,   854,   857,   860,   862,   864,   866,
430       704,   706,   708,   710,   712,   714,   716,   718,   720,   722,       868,   870,   872,   874,   876,   878,   880,   882,   884,   886,
431       724,   726,   728,   730,   732,   734,   736,   738,   740,   742,       888,   890,   892,   894,   896,   898,   900,   902,   904,   906,
432       744,   746,   748,   750,   752,   754,   756,   758,   760,   762,       908,   910,   912,   914,   916,   918,   920,   922,   924,   926,
433       764,   766,   768,   770,   772,   774,   776,   778,   780,   782,       928,   930,   932,   934,   936,   938,   940,   942,   944,   946,
434       784,   786,   788,   790,   792,   794,   796,   798,   800,   802,       948,   950,   952,   954,   956,   958,   960,   962,   964,   966,
435       804,   806,   808,   810,   812,   814,   816,   818,   820,   822,       968,   970,   972,   974,   976,   978,   980,   982,   984,   986,
436       824,   826,   828,   830,   832,   834,   836,   838,   840,   842,       988,   990,   992,   994,   996,   998,  1000,  1002,  1004,  1006,
437       844,   846,   848,   850,   852,   854,   856,   858,   860,   862,      1008,  1010,  1012,  1014,  1016,  1018,  1020,  1022,  1024,  1026,
438       864,   866,   868,   870,   872,   874,   876,   878,   880,   882,      1028,  1030,  1032,  1034,  1036,  1038,  1040,  1042,  1044,  1046,
439       884,   886,   888,   890,   892,   894,   896,   898,   900,   902,      1048,  1050,  1052,  1054,  1056,  1058,  1060,  1062,  1064,  1066,
440       904,   906,   908,   910,   912,   914,   916,   918,   920,   922,      1068,  1070,  1072,  1074,  1076,  1078,  1080,  1082,  1084,  1086,
441       924,   926,   928,   930,   932,   934,   936,   938,   940,   942,      1088,  1090,  1092,  1094,  1096,  1098,  1100,  1102,  1104,  1106,
442       944,   946,   948,   950,   952,   954,   956,   958,   960,   962,      1108,  1110,  1112,  1114,  1116,  1118,  1120,  1122,  1124,  1126,
443       964,   966,   968,   970,   972,   974,   976,   978,   980,   982,      1128,  1130,  1132,  1134,  1136,  1138,  1140,  1142,  1144,  1146,
444       984,   986,   988,   990,   992,   994,   996,   998,  1000,  1003,      1148,  1150,  1152,  1154,  1156,  1158,  1160,  1162,  1164,  1166,
445      1006,  1010,  1014,  1016,  1018,  1020,  1024,  1028,  1035,  1043,      1168,  1170,  1172,  1174,  1176,  1178,  1180,  1182,  1184,  1186,
446      1048,  1053,  1057,  1067,  1074,  1078,  1088,  1100,  1107,  1115,      1188,  1190,  1192,  1194,  1196,  1198,  1200,  1202,  1204,  1206,
447      1133,  1164,  1173,  1178,  1192,  1205,  1217,  1230,  1242,  1253,      1208,  1210,  1212,  1214,  1216,  1218,  1220,  1222,  1224,  1226,
448      1260,  1290,  1311,  1331,  1361,  1381,  1412,  1433,  1451,  1480,      1228,  1230,  1232,  1234,  1236,  1238,  1240,  1242,  1244,  1246,
449      1508,  1534,  1553,  1571,  1599,  1617,  1633,  1652,  1668,  1679,      1248,  1250,  1252,  1254,  1256,  1258,  1260,  1262,  1264,  1266,
450      1686,  1692,  1703,  1709,  1723,  1728      1268,  1270,  1272,  1274,  1276,  1278,  1280,  1282,  1284,  1286,
451        1288,  1290,  1292,  1294,  1296,  1298,  1300,  1302,  1305,  1308,
452        1312,  1316,  1318,  1320,  1322,  1326,  1330,  1334,  1340,  1346,
453        1353,  1361,  1366,  1371,  1375,  1380,  1388,  1398,  1405,  1409,
454        1419,  1431,  1438,  1446,  1464,  1495,  1504,  1509,  1535,  1560,
455        1584,  1607,  1633,  1658,  1680,  1701,  1715,  1728,  1740,  1753,
456        1765,  1783,  1805,  1816,  1823,  1833,  1848,  1859,  1889,  1910,
457        1930,  1960,  1980,  2011,  2032,  2050,  2079,  2107,  2133,  2152,
458        2170,  2198,  2214,  2231,  2251,  2272,  2290,  2306,  2325,  2341,
459        2352,  2360,  2369,  2376,  2383,  2388,  2393,  2399,  2410,  2416,
460        2430,  2435,  2440
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,   317,   267,   283,        -1,   300,   282,   233,    -1,   301,   282,   234,    -1,   302,
474       267,   252,    -1,   317,    -1,   320,    -1,   288,    -1,   292,       282,   280,    -1,   359,   282,   241,    -1,   289,   282,   242,
475        -1,   291,    -1,   290,    -1,   289,    -1,   318,    -1,   288,        -1,   359,    -1,   363,    -1,   303,    -1,   344,    -1,   344,
476        -1,   292,    -1,   291,    -1,   290,    -1,   289,    -1,   318,       282,   268,    -1,   308,    -1,   309,    -1,   310,    -1,   311,
477        -1,   284,    -1,   303,    -1,   309,   267,   287,   267,   259,        -1,   316,    -1,   320,    -1,   319,    -1,   318,    -1,   317,
478        -1,   308,   267,   287,   267,   259,   267,   259,    -1,   308,        -1,   312,    -1,   313,    -1,   314,    -1,   315,    -1,   360,
479       267,   287,   267,   259,   267,   259,   267,   240,    -1,   285,        -1,   321,    -1,   308,    -1,   309,    -1,   310,    -1,   311,
480        -1,   299,   267,   287,   267,   259,    -1,   298,   267,   287,        -1,   316,    -1,   320,    -1,   319,    -1,   318,    -1,   317,
481       267,   259,   267,   259,    -1,   298,   267,   287,   267,   259,        -1,   312,    -1,   313,    -1,   314,    -1,   315,    -1,   360,
482       267,   259,   267,   240,    -1,   296,    -1,   306,    -1,   297,        -1,   321,    -1,   342,   282,   258,   282,   259,   282,   260,
483       267,   287,   267,   263,    -1,   307,   267,   287,   267,   263,       282,   266,   282,   267,   282,   264,   282,   262,    -1,   342,
484        -1,   310,   267,   287,   267,   263,   267,   263,    -1,   305,       282,   258,   282,   259,   282,   260,   282,   266,   282,   267,
485       267,   287,   267,   263,   267,   263,   267,   259,    -1,   301,       282,   264,   282,   262,   282,   251,    -1,   342,   282,   258,
486       267,   287,   267,   263,   267,   263,    -1,   300,   267,   287,       282,   259,   282,   260,   282,   266,   282,   267,   282,   264,
487       267,   263,   267,   263,   267,   259,    -1,   286,    -1,   283,       282,   262,   282,   269,    -1,   342,   282,   258,   282,   259,
488       267,   287,   267,   252,    -1,   283,   267,   290,   267,   241,       282,   260,   282,   266,   282,   267,   282,   264,   282,   262,
489       267,   252,    -1,   283,   267,   291,   267,   252,    -1,   283,       282,   251,   282,   269,    -1,   342,   282,   258,   282,   259,
490       267,   292,   267,   252,    -1,   294,   267,   287,   267,   254,       282,   260,    -1,   303,   282,   263,    -1,   344,   282,   258,
491        -1,   295,   267,   263,   267,   259,     4,   256,    -1,   300,        -1,   344,   282,   294,    -1,   304,    -1,   336,    -1,   346,
492       267,   263,   267,   263,   267,   259,     4,   256,    -1,   304,       282,   307,   282,   274,    -1,   341,   282,   307,   282,   274,
493       267,   263,   267,   259,     4,   256,    -1,   305,   267,   263,       282,   274,    -1,   341,   282,   307,   282,   274,   282,   274,
494       267,   263,   267,   259,     4,   256,    -1,   283,   267,   239,       282,   246,    -1,   305,    -1,   332,   282,   307,   282,   274,
495        -1,   319,   267,   258,    -1,   297,   267,   259,   267,   240,        -1,   331,   282,   307,   282,   274,   282,   274,    -1,   331,
496        -1,   297,   267,   259,    -1,   307,   267,   259,   267,   240,       282,   307,   282,   274,   282,   274,   282,   246,    -1,   329,
497        -1,   307,   267,   259,    -1,   297,   267,   263,    -1,   307,        -1,   339,    -1,   330,   282,   307,   282,   278,    -1,   340,
498       267,   263,    -1,   293,   267,   243,    -1,   294,   267,   244,       282,   307,   282,   278,    -1,   347,   282,   307,   282,   278,
499        -1,   297,   267,   252,   267,   245,    -1,   301,   267,   252,       282,   278,    -1,   338,   282,   307,   282,   278,   282,   278,
500       267,   246,   267,   246,    -1,   302,   267,   252,   267,   247,       282,   274,    -1,   334,   282,   307,   282,   278,   282,   278,
501        -1,   313,   267,   252,   267,   245,   267,   248,   267,   249,        -1,   333,   282,   307,   282,   278,   282,   278,   282,   274,
502        -1,   307,   267,   252,   267,   245,    -1,   310,   267,   252,        -1,   306,    -1,   303,   282,   307,   282,   263,    -1,   303,
503       267,   248,    -1,   311,   267,   252,   267,   249,    -1,   312,       282,   318,   282,   247,   282,   263,    -1,   303,   282,   319,
504       267,   252,   267,   250,    -1,   314,   267,   252,   267,   251,       282,   263,    -1,   303,   282,   320,   282,   263,    -1,   324,
505        -1,   259,     4,   256,    -1,   240,   267,   259,     4,   256,       282,   307,   282,   266,    -1,   353,   282,   307,    -1,   321,
506        -1,   315,    -1,   316,    -1,   296,    -1,   306,    -1,   286,        -1,   322,    -1,   343,   282,   258,    -1,   343,   282,   294,
507        -1,   284,    -1,   303,    -1,   285,    -1,   255,   267,   253,        -1,   342,   282,   307,   282,   258,   282,   259,   282,   260,
508       267,   252,    -1,   277,   267,   255,   267,   253,   267,   252,        -1,   345,    -1,   344,   282,   307,   282,   258,    -1,   352,
509        -1,   254,   267,   252,    -1,   263,    -1,   263,    -1,   259,       282,   263,    -1,   351,   282,   307,   282,   263,   282,   265,
510        -1,   263,    -1,   263,    -1,   276,    -1,   259,    -1,   260,        -1,   328,   282,   278,   282,   274,     4,   271,    -1,   333,
511        -1,   263,    -1,   263,    -1,   263,    -1,   259,    -1,   266,       282,   278,   282,   278,   282,   274,     4,   271,    -1,   337,
512        -1,   257,    -1,   256,     5,   257,    -1,   259,    -1,     6,       282,   278,   282,   274,     4,   271,    -1,   338,   282,   278,
513       259,     6,    -1,     7,   259,     7,    -1,   263,    -1,   260,       282,   278,   282,   274,     4,   271,    -1,   303,   282,   245,
514        -1,   263,    -1,   259,    -1,   264,    -1,   259,   264,    -1,        -1,   344,   282,   361,   282,   258,   282,   268,    -1,   351,
515       261,     8,   261,    -1,     9,   261,     8,   261,    -1,    10,       282,   334,   282,   263,   282,   265,   282,   253,   282,   253,
516       261,     8,   261,    -1,   262,    -1,   261,   262,    -1,    11,        -1,   362,   282,   273,    -1,   330,   282,   274,   282,   246,
517        -1,    12,    -1,    13,    -1,    14,    -1,    15,    -1,    16,        -1,   330,   282,   274,    -1,   340,   282,   274,   282,   246,
518        -1,    17,    -1,    18,    -1,    19,    -1,    20,    -1,   262,        -1,   340,   282,   274,    -1,   351,   282,   263,   282,   261,
519        -1,    12,   261,    -1,    13,   261,    -1,    14,   261,    -1,        -1,   351,   282,   263,   282,   261,   282,   270,    -1,   303,
520        15,   261,    -1,    16,   261,    -1,    17,   261,    -1,    18,       282,   263,    -1,   343,   282,   258,    -1,   343,   282,   294,
521       261,    -1,    19,   261,    -1,    20,   261,    -1,    21,    -1,        -1,   330,   282,   278,    -1,   340,   282,   278,    -1,   351,
522        22,    -1,    23,    -1,    24,    -1,    25,    -1,    26,    -1,       282,   263,   282,   265,    -1,   323,   282,   249,    -1,   324,
523        27,    -1,    28,    -1,    29,    -1,    30,    -1,    31,    -1,       282,   250,    -1,   330,   282,   263,   282,   252,    -1,   334,
524        32,    -1,    33,    -1,    34,    -1,    35,    -1,    36,    -1,       282,   263,   282,   253,   282,   253,    -1,   335,   282,   263,
525        37,    -1,    38,    -1,    39,    -1,    40,    -1,    41,    -1,       282,   254,    -1,   350,   282,   263,   282,   252,   282,   255,
526        42,    -1,    43,    -1,    44,    -1,    45,    -1,    46,    -1,       282,   256,    -1,   340,   282,   263,   282,   252,    -1,   347,
527        47,    -1,    48,    -1,    49,    -1,    50,    -1,    51,    -1,       282,   263,   282,   255,    -1,   348,   282,   263,   282,   256,
528        52,    -1,    53,    -1,    54,    -1,    55,    -1,    56,    -1,        -1,   349,   282,   263,   282,   257,    -1,   354,   282,   263,
529        57,    -1,    58,    -1,    59,    -1,    60,    -1,    61,    -1,       282,   262,    -1,   355,   282,   263,   282,   273,    -1,   356,
530        62,    -1,    63,    -1,    64,    -1,    65,    -1,    66,    -1,       282,   263,   282,   273,    -1,   344,   282,   263,   282,   258,
531        67,    -1,    68,    -1,    69,    -1,    70,    -1,    71,    -1,        -1,   344,   282,   263,   282,   295,    -1,   344,   282,   263,
532        72,    -1,    11,    -1,    12,    -1,    13,    -1,    14,    -1,       282,   296,    -1,   274,     4,   271,    -1,   246,   282,   274,
533        15,    -1,    16,    -1,    17,    -1,    18,    -1,    19,    -1,         4,   271,    -1,   357,    -1,   358,    -1,   329,    -1,   339,
534        20,    -1,    73,    -1,     3,    -1,    74,    -1,    75,    -1,        -1,   306,    -1,   304,    -1,   336,    -1,   305,    -1,   343,
535        76,    -1,    77,    -1,    78,    -1,    79,    -1,     9,    -1,       282,   258,    -1,   343,   282,   294,    -1,   345,    -1,   352,
536        10,    -1,     8,    -1,     5,    -1,    80,    -1,    81,    -1,       282,   263,    -1,   267,   282,   264,   282,   263,    -1,   297,
537        82,    -1,    83,    -1,     4,    -1,    84,    -1,    85,    -1,       282,   267,   282,   264,   282,   263,    -1,   266,   282,   263,
538        86,    -1,    87,    -1,    88,    -1,    89,    -1,    90,    -1,        -1,   325,    -1,   326,    -1,   327,    -1,   278,    -1,   278,
539        91,    -1,    92,    -1,    93,    -1,    94,    -1,    95,    -1,        -1,   274,    -1,   278,    -1,   278,    -1,   294,    -1,   274,
540        96,    -1,    97,    -1,    98,    -1,    99,    -1,   100,    -1,        -1,   278,    -1,   278,    -1,   278,    -1,   278,    -1,   275,
541       101,    -1,   102,    -1,   103,    -1,   104,    -1,   105,    -1,        -1,   278,    -1,   278,    -1,   278,    -1,   278,    -1,   274,
542       106,    -1,   107,    -1,   108,    -1,   109,    -1,   110,    -1,        -1,   281,    -1,   281,    -1,   281,    -1,   281,    -1,   272,
543       111,    -1,   112,    -1,   113,    -1,   114,    -1,   115,    -1,        -1,   271,     5,   272,    -1,   274,    -1,   281,    -1,   278,
544       116,    -1,   117,    -1,   118,    -1,   119,    -1,   120,    -1,        -1,   275,    -1,   278,    -1,   274,    -1,   279,    -1,   274,
545       121,    -1,   122,    -1,   123,    -1,   124,    -1,   125,    -1,       279,    -1,   276,     6,   276,    -1,     7,   276,     6,   276,
546       126,    -1,   127,    -1,   128,    -1,   129,    -1,   130,    -1,        -1,     8,   276,     6,   276,    -1,   277,    -1,   276,   277,
547       131,    -1,   132,    -1,   133,    -1,   134,    -1,   135,    -1,        -1,     9,    -1,    10,    -1,    11,    -1,    12,    -1,    13,
548       136,    -1,   137,    -1,   138,    -1,   139,    -1,   140,    -1,        -1,    14,    -1,    15,    -1,    16,    -1,    17,    -1,    18,
549       141,    -1,   142,    -1,   143,    -1,   144,    -1,   145,    -1,        -1,   277,    -1,    10,   276,    -1,    11,   276,    -1,    12,
550       146,    -1,   147,    -1,   148,    -1,   149,    -1,   150,    -1,       276,    -1,    13,   276,    -1,    14,   276,    -1,    15,   276,
551       151,    -1,   152,    -1,   153,    -1,   154,    -1,   155,    -1,        -1,    16,   276,    -1,    17,   276,    -1,    18,   276,    -1,
552       156,    -1,   157,    -1,   158,    -1,   159,    -1,   160,    -1,        19,    -1,    20,    -1,    21,    -1,    22,    -1,    23,    -1,
553       161,    -1,   162,    -1,   163,    -1,   164,    -1,   165,    -1,        24,    -1,    25,    -1,    26,    -1,    27,    -1,    28,    -1,
554       166,    -1,   167,    -1,   168,    -1,   169,    -1,   170,    -1,        29,    -1,    30,    -1,    31,    -1,    32,    -1,    33,    -1,
555       171,    -1,   172,    -1,   173,    -1,   174,    -1,   175,    -1,        34,    -1,    35,    -1,    36,    -1,    37,    -1,    38,    -1,
556       176,    -1,   177,    -1,   178,    -1,   179,    -1,   180,    -1,        39,    -1,    40,    -1,    41,    -1,    42,    -1,    43,    -1,
557       181,    -1,   182,    -1,   183,    -1,   184,    -1,   185,    -1,        44,    -1,    45,    -1,    46,    -1,    47,    -1,    48,    -1,
558       186,    -1,   187,    -1,   188,    -1,   189,    -1,   190,    -1,        49,    -1,    50,    -1,    51,    -1,    52,    -1,    53,    -1,
559       191,    -1,   192,    -1,   193,    -1,   194,    -1,   195,    -1,        54,    -1,    55,    -1,    56,    -1,    57,    -1,    58,    -1,
560       196,    -1,   197,    -1,   198,    -1,   199,    -1,   200,    -1,        59,    -1,    60,    -1,    61,    -1,    62,    -1,    63,    -1,
561       201,    -1,   202,    -1,   203,    -1,   204,    -1,   205,    -1,        64,    -1,    65,    -1,    66,    -1,    67,    -1,    68,    -1,
562       206,    -1,   207,    -1,   208,    -1,   209,    -1,   210,    -1,        69,    -1,    70,    -1,     9,    -1,    10,    -1,    11,    -1,
563       211,    -1,   212,    -1,   213,    -1,   214,    -1,   215,    -1,        12,    -1,    13,    -1,    14,    -1,    15,    -1,    16,    -1,
564       216,    -1,   217,    -1,   218,    -1,   219,    -1,   220,    -1,        17,    -1,    18,    -1,    71,    -1,     3,    -1,    72,    -1,
565       221,    -1,   222,    -1,   223,    -1,   267,    -1,   259,    -1,        73,    -1,    74,    -1,    75,    -1,    76,    -1,    77,    -1,
566       265,   267,    -1,   265,   259,    -1,     6,   265,     6,    -1,         7,    -1,     8,    -1,     6,    -1,     5,    -1,    78,    -1,
567         7,   265,     7,    -1,   224,    -1,   225,    -1,   226,    -1,        79,    -1,    80,    -1,    81,    -1,     4,    -1,    82,    -1,
568        21,    24,    24,    -1,    27,    25,    40,    -1,    23,    38,        83,    -1,    84,    -1,    85,    -1,    86,    -1,    87,    -1,
569        25,    21,    40,    25,    -1,    24,    25,    39,    40,    38,        88,    -1,    89,    -1,    90,    -1,    91,    -1,    92,    -1,
570        35,    45,    -1,    32,    29,    39,    40,    -1,    32,    35,        93,    -1,    94,    -1,    95,    -1,    96,    -1,    97,    -1,
571        21,    24,    -1,    21,    32,    32,    -1,    34,    35,    34,        98,    -1,    99,    -1,   100,    -1,   101,    -1,   102,    -1,
572        91,    33,    35,    24,    21,    32,    -1,    38,    25,    33,       103,    -1,   104,    -1,   105,    -1,   106,    -1,   107,    -1,
573        35,    42,    25,    -1,    39,    25,    40,    -1,    39,    41,       108,    -1,   109,    -1,   110,    -1,   111,    -1,   112,    -1,
574        22,    39,    23,    38,    29,    22,    25,    -1,    41,    34,       113,    -1,   114,    -1,   115,    -1,   116,    -1,   117,    -1,
575        39,    41,    22,    39,    23,    38,    29,    22,    25,    -1,       118,    -1,   119,    -1,   120,    -1,   121,    -1,   122,    -1,
576        39,    25,    32,    25,    23,    40,    -1,    23,    28,    21,       123,    -1,   124,    -1,   125,    -1,   126,    -1,   127,    -1,
577        34,    34,    25,    32,    -1,    21,    42,    21,    29,    32,       128,    -1,   129,    -1,   130,    -1,   131,    -1,   132,    -1,
578        21,    22,    32,    25,    91,    25,    34,    27,    29,    34,       133,    -1,   134,    -1,   135,    -1,   136,    -1,   137,    -1,
579        25,    39,    -1,    21,    42,    21,    29,    32,    21,    22,       138,    -1,   139,    -1,   140,    -1,   141,    -1,   142,    -1,
580        32,    25,    91,    21,    41,    24,    29,    35,    91,    35,       143,    -1,   144,    -1,   145,    -1,   146,    -1,   147,    -1,
581        41,    40,    36,    41,    40,    91,    24,    38,    29,    42,       148,    -1,   149,    -1,   150,    -1,   151,    -1,   152,    -1,
582        25,    38,    39,    -1,    23,    28,    21,    34,    34,    25,       153,    -1,   154,    -1,   155,    -1,   156,    -1,   157,    -1,
583        32,    39,    -1,    29,    34,    26,    35,    -1,    23,    28,       158,    -1,   159,    -1,   160,    -1,   161,    -1,   162,    -1,
584        21,    34,    34,    25,    32,    91,    23,    35,    41,    34,       163,    -1,   164,    -1,   165,    -1,   166,    -1,   167,    -1,
585        40,    -1,    23,    28,    21,    34,    34,    25,    32,    91,       168,    -1,   169,    -1,   170,    -1,   171,    -1,   172,    -1,
586        29,    34,    26,    35,    -1,    22,    41,    26,    26,    25,       173,    -1,   174,    -1,   175,    -1,   176,    -1,   177,    -1,
587        38,    91,    26,    29,    32,    32,    -1,    39,    40,    38,       178,    -1,   179,    -1,   180,    -1,   181,    -1,   182,    -1,
588        25,    21,    33,    91,    23,    35,    41,    34,    40,    -1,       183,    -1,   184,    -1,   185,    -1,   186,    -1,   187,    -1,
589        42,    35,    29,    23,    25,    91,    23,    35,    41,    34,       188,    -1,   189,    -1,   190,    -1,   191,    -1,   192,    -1,
590        40,    -1,    29,    34,    39,    40,    38,    41,    33,    25,       193,    -1,   194,    -1,   195,    -1,   196,    -1,   197,    -1,
591        34,    40,    -1,    25,    34,    27,    29,    34,    25,    -1,       198,    -1,   199,    -1,   200,    -1,   201,    -1,   202,    -1,
592        21,    41,    24,    29,    35,    91,    35,    41,    40,    36,       203,    -1,   204,    -1,   205,    -1,   206,    -1,   207,    -1,
593        41,    40,    91,    24,    25,    42,    29,    23,    25,    91,       208,    -1,   209,    -1,   210,    -1,   211,    -1,   212,    -1,
594        36,    21,    38,    21,    33,    25,    40,    25,    38,    -1,       213,    -1,   214,    -1,   215,    -1,   216,    -1,   217,    -1,
595        21,    41,    24,    29,    35,    91,    35,    41,    40,    36,       218,    -1,   219,    -1,   220,    -1,   221,    -1,   282,    -1,
596        41,    40,    91,    24,    25,    42,    29,    23,    25,    39,       274,    -1,   280,   282,    -1,   280,   274,    -1,   222,   280,
597        -1,    21,    41,    24,    29,    35,    91,    35,    41,    40,       222,    -1,   223,   280,   223,    -1,   224,    -1,   225,    -1,
598        36,    41,    40,    91,    24,    25,    42,    29,    23,    25,       226,    -1,    19,    22,    22,    -1,    25,    23,    38,    -1,
599        -1,    21,    41,    24,    29,    35,    91,    35,    41,    40,        31,    19,    34,    -1,    39,    32,    31,    19,    34,    -1,
600        36,    41,    40,    91,    24,    38,    29,    42,    25,    38,        21,    30,    23,    19,    36,    -1,    21,    36,    23,    19,
601        91,    36,    21,    38,    21,    33,    25,    40,    25,    38,        38,    23,    -1,    22,    23,    37,    38,    36,    33,    43,
602        -1,    21,    41,    24,    29,    35,    91,    35,    41,    40,        -1,    30,    27,    37,    38,    -1,    30,    33,    19,    22,
603        36,    41,    40,    91,    24,    38,    29,    42,    25,    38,        -1,    19,    30,    30,    -1,    32,    33,    32,    23,    -1,
604        -1,    21,    41,    24,    29,    35,    91,    35,    41,    40,        22,    23,    24,    19,    39,    30,    38,    -1,    32,    33,
605        36,    41,    40,    91,    23,    28,    21,    34,    34,    25,        32,    89,    31,    33,    22,    19,    30,    -1,    36,    23,
606        32,    91,    36,    21,    38,    21,    33,    25,    40,    25,        31,    33,    40,    23,    -1,    37,    23,    38,    -1,    37,
607        38,    -1,    21,    41,    24,    29,    35,    91,    35,    41,        39,    20,    37,    21,    36,    27,    20,    23,    -1,    39,
608        40,    36,    41,    40,    91,    23,    28,    21,    34,    34,        32,    37,    39,    20,    37,    21,    36,    27,    20,    23,
609        25,    32,    -1,    21,    41,    24,    29,    35,    91,    35,        -1,    37,    23,    30,    23,    21,    38,    -1,    21,    26,
610        41,    40,    36,    41,    40,    91,    40,    45,    36,    25,        19,    32,    32,    23,    30,    -1,    19,    40,    19,    27,
611        -1,    21,    42,    21,    29,    32,    21,    22,    32,    25,        30,    19,    20,    30,    23,    89,    23,    32,    25,    27,
612        91,    33,    29,    24,    29,    91,    29,    34,    36,    41,        32,    23,    37,    -1,    19,    40,    19,    27,    30,    19,
613        40,    91,    24,    38,    29,    42,    25,    38,    39,    -1,        20,    30,    23,    89,    19,    39,    22,    27,    33,    89,
614        33,    29,    24,    29,    91,    29,    34,    36,    41,    40,        33,    39,    38,    34,    39,    38,    89,    22,    36,    27,
615        91,    24,    25,    42,    29,    23,    25,    91,    36,    21,        40,    23,    36,    37,    -1,    21,    26,    19,    32,    32,
616        38,    21,    33,    25,    40,    25,    38,    -1,    33,    29,        23,    30,    37,    -1,    27,    32,    24,    33,    -1,    19,
617        24,    29,    91,    29,    34,    36,    41,    40,    91,    36,        39,    22,    27,    33,    89,    33,    39,    38,    34,    39,
618        35,    38,    40,    91,    36,    21,    38,    21,    33,    25,        38,    89,    22,    23,    40,    27,    21,    23,    89,    21,
619        40,    25,    38,    -1,    33,    29,    24,    29,    91,    29,        33,    39,    32,    38,    -1,    19,    39,    22,    27,    33,
620        34,    36,    41,    40,    91,    24,    25,    42,    29,    23,        89,    33,    39,    38,    34,    39,    38,    89,    22,    23,
621        25,    39,    -1,    33,    29,    24,    29,    91,    29,    34,        40,    27,    21,    23,    89,    27,    32,    24,    33,    -1,
622        36,    41,    40,    91,    24,    25,    42,    29,    23,    25,        31,    27,    22,    27,    89,    27,    32,    34,    39,    38,
623        -1,    33,    29,    24,    29,    91,    29,    34,    36,    41,        89,    22,    23,    40,    27,    21,    23,    89,    21,    33,
624        40,    91,    24,    38,    29,    42,    25,    38,    91,    36,        39,    32,    38,    -1,    31,    27,    22,    27,    89,    27,
625        21,    38,    21,    33,    25,    40,    25,    38,    -1,    33,        32,    34,    39,    38,    89,    22,    23,    40,    27,    21,
626        29,    24,    29,    91,    29,    34,    36,    41,    40,    91,        23,    89,    27,    32,    24,    33,    -1,    31,    27,    22,
627        24,    38,    29,    42,    25,    38,    -1,    33,    29,    24,        27,    89,    27,    32,    37,    38,    36,    39,    31,    23,
628        29,    91,    29,    34,    36,    41,    40,    91,    36,    35,        32,    38,    89,    31,    19,    34,    89,    21,    33,    39,
629        38,    40,    -1,    33,    29,    24,    29,    91,    29,    34,        32,    38,    -1,    31,    27,    22,    27,    89,    27,    32,
630        36,    41,    40,    91,    23,    28,    21,    34,    34,    25,        37,    38,    36,    39,    31,    23,    32,    38,    89,    31,
631        32,    -1,    33,    29,    24,    29,    91,    29,    34,    36,        19,    34,    89,    27,    32,    24,    33,    -1,    31,    27,
632        41,    40,    91,    40,    45,    36,    25,    -1,    33,    29,        22,    27,    89,    27,    32,    37,    38,    36,    39,    31,
633        24,    29,    91,    29,    34,    36,    41,    40,    -1,    42,        23,    32,    38,    89,    21,    33,    39,    32,    38,    -1,
634        35,    32,    41,    33,    25,    -1,    22,    45,    40,    25,        31,    27,    22,    27,    89,    27,    32,    37,    38,    36,
635        39,    -1,    36,    25,    38,    23,    25,    34,    40,    21,        39,    31,    23,    32,    38,    89,    27,    32,    24,    33,
636        27,    25,    -1,    38,    25,    39,    25,    40,    -1,    33,        -1,    21,    26,    19,    32,    32,    23,    30,    89,    21,
637        29,    39,    23,    25,    32,    32,    21,    34,    25,    35,        33,    39,    32,    38,    -1,    21,    26,    19,    32,    32,
638        41,    39,    -1,    25,    23,    28,    35,    -1,    37,    41,        23,    30,    89,    27,    32,    24,    33,    -1,    20,    39,
639        29,    40,    -1        24,    24,    23,    36,    89,    24,    27,    30,    30,    -1,
640          37,    38,    36,    23,    19,    31,    89,    21,    33,    39,
641          32,    38,    -1,    40,    33,    27,    21,    23,    89,    21,
642          33,    39,    32,    38,    -1,    38,    33,    38,    19,    30,
643          89,    40,    33,    27,    21,    23,    89,    21,    33,    39,
644          32,    38,    -1,    38,    33,    38,    19,    30,    89,    40,
645          33,    27,    21,    23,    89,    21,    33,    39,    32,    38,
646          89,    31,    19,    42,    -1,    27,    32,    37,    38,    36,
647          39,    31,    23,    32,    38,    -1,    23,    32,    25,    27,
648          32,    23,    -1,    33,    32,    89,    22,    23,    31,    19,
649          32,    22,    -1,    33,    32,    89,    22,    23,    31,    19,
650          32,    22,    89,    26,    33,    30,    22,    -1,    34,    23,
651          36,    37,    27,    37,    38,    23,    32,    38,    -1,    19,
652          39,    22,    27,    33,    89,    33,    39,    38,    34,    39,
653          38,    89,    22,    23,    40,    27,    21,    23,    89,    34,
654          19,    36,    19,    31,    23,    38,    23,    36,    -1,    19,
655          39,    22,    27,    33,    89,    33,    39,    38,    34,    39,
656          38,    89,    22,    23,    40,    27,    21,    23,    37,    -1,
657          19,    39,    22,    27,    33,    89,    33,    39,    38,    34,
658          39,    38,    89,    22,    23,    40,    27,    21,    23,    -1,
659          19,    39,    22,    27,    33,    89,    33,    39,    38,    34,
660          39,    38,    89,    22,    36,    27,    40,    23,    36,    89,
661          34,    19,    36,    19,    31,    23,    38,    23,    36,    -1,
662          19,    39,    22,    27,    33,    89,    33,    39,    38,    34,
663          39,    38,    89,    22,    36,    27,    40,    23,    36,    -1,
664          19,    39,    22,    27,    33,    89,    33,    39,    38,    34,
665          39,    38,    89,    21,    26,    19,    32,    32,    23,    30,
666          89,    34,    19,    36,    19,    31,    23,    38,    23,    36,
667          -1,    19,    39,    22,    27,    33,    89,    33,    39,    38,
668          34,    39,    38,    89,    21,    26,    19,    32,    32,    23,
669          30,    -1,    19,    39,    22,    27,    33,    89,    33,    39,
670          38,    34,    39,    38,    89,    38,    43,    34,    23,    -1,
671          19,    40,    19,    27,    30,    19,    20,    30,    23,    89,
672          31,    27,    22,    27,    89,    27,    32,    34,    39,    38,
673          89,    22,    36,    27,    40,    23,    36,    37,    -1,    31,
674          27,    22,    27,    89,    27,    32,    34,    39,    38,    89,
675          22,    23,    40,    27,    21,    23,    89,    34,    19,    36,
676          19,    31,    23,    38,    23,    36,    -1,    31,    27,    22,
677          27,    89,    27,    32,    34,    39,    38,    89,    34,    33,
678          36,    38,    89,    34,    19,    36,    19,    31,    23,    38,
679          23,    36,    -1,    31,    27,    22,    27,    89,    27,    32,
680          34,    39,    38,    89,    22,    23,    40,    27,    21,    23,
681          37,    -1,    31,    27,    22,    27,    89,    27,    32,    34,
682          39,    38,    89,    22,    23,    40,    27,    21,    23,    -1,
683          31,    27,    22,    27,    89,    27,    32,    34,    39,    38,
684          89,    22,    36,    27,    40,    23,    36,    89,    34,    19,
685          36,    19,    31,    23,    38,    23,    36,    -1,    31,    27,
686          22,    27,    89,    27,    32,    37,    38,    36,    39,    31,
687          23,    32,    38,    -1,    31,    27,    22,    27,    89,    27,
688          32,    37,    38,    36,    39,    31,    23,    32,    38,    37,
689          -1,    31,    27,    22,    27,    89,    27,    32,    37,    38,
690          36,    39,    31,    23,    32,    38,    89,    31,    19,    34,
691          -1,    31,    27,    22,    27,    89,    27,    32,    37,    38,
692          36,    39,    31,    23,    32,    38,    89,    31,    19,    34,
693          37,    -1,    31,    27,    22,    27,    89,    27,    32,    34,
694          39,    38,    89,    22,    36,    27,    40,    23,    36,    -1,
695          31,    27,    22,    27,    89,    27,    32,    34,    39,    38,
696          89,    34,    33,    36,    38,    -1,    31,    27,    22,    27,
697          89,    27,    32,    34,    39,    38,    89,    21,    26,    19,
698          32,    32,    23,    30,    -1,    31,    27,    22,    27,    89,
699          27,    32,    34,    39,    38,    89,    38,    43,    34,    23,
700          -1,    31,    27,    22,    27,    89,    27,    32,    34,    39,
701          38,    -1,    24,    42,    89,    37,    23,    32,    22,    -1,
702          24,    42,    89,    37,    23,    32,    22,    37,    -1,    37,
703          23,    36,    40,    23,    36,    -1,    40,    33,    30,    39,
704          31,    23,    -1,    31,    39,    38,    23,    -1,    37,    33,
705          30,    33,    -1,    20,    43,    38,    23,    37,    -1,    34,
706          23,    36,    21,    23,    32,    38,    19,    25,    23,    -1,
707          36,    23,    37,    23,    38,    -1,    31,    27,    37,    21,
708          23,    30,    30,    19,    32,    23,    33,    39,    37,    -1,
709          32,    19,    31,    23,    -1,    23,    21,    26,    33,    -1,
710          35,    39,    27,    38,    -1
711  };  };
712    
713  /* YYRLINE[YYN] -- source line where rule number YYN was defined.  */  /* YYRLINE[YYN] -- source line where rule number YYN was defined.  */
714  static const unsigned short int yyrline[] =  static const yytype_uint16 yyrline[] =
715  {  {
716         0,    82,    82,    83,    86,    87,    88,    89,    92,    93,         0,    96,    96,    97,   100,   101,   102,   103,   106,   107,
717        94,    95,    96,    99,   100,   101,   102,   103,   104,   105,       108,   109,   110,   113,   114,   115,   116,   117,   118,   119,
718       106,   107,   108,   109,   110,   111,   112,   115,   116,   117,       120,   121,   122,   123,   124,   125,   126,   127,   128,   129,
719       118,   119,   120,   123,   124,   125,   126,   127,   128,   131,       132,   133,   134,   137,   138,   139,   140,   141,   142,   143,
720       132,   133,   134,   135,   136,   137,   138,   139,   140,   141,       144,   145,   146,   147,   148,   149,   150,   151,   154,   155,
721       142,   143,   144,   145,   146,   147,   148,   149,   150,   151,       156,   157,   158,   159,   160,   161,   162,   163,   164,   165,
722       152,   153,   156,   157,   158,   159,   160,   161,   164,   165,       166,   167,   168,   171,   172,   173,   174,   177,   180,   181,
723       166,   167,   170,   171,   174,   175,   178,   179,   180,   181,       182,   185,   186,   187,   188,   189,   190,   191,   192,   193,
724       182,   183,   184,   185,   186,   189,   190,   193,   194,   197,       194,   195,   196,   197,   198,   199,   200,   201,   202,   203,
725       198,   199,   200,   201,   202,   205,   206,   209,   212,   215,       204,   205,   206,   207,   208,   209,   210,   211,   212,   213,
726       218,   221,   224,   225,   228,   231,   232,   235,   238,   241,       214,   215,   216,   217,   220,   221,   222,   223,   224,   225,
727       244,   247,   248,   251,   252,   253,   254,   255,   261,   262,       226,   227,   230,   231,   232,   233,   234,   235,   238,   241,
728       265,   266,   269,   270,   271,   275,   276,   279,   280,   281,       242,   245,   246,   247,   250,   251,   254,   255,   256,   257,
729       282,   283,   284,   285,   286,   287,   288,   291,   292,   293,       258,   259,   260,   261,   262,   263,   264,   265,   266,   267,
730       294,   295,   296,   297,   298,   299,   300,   302,   302,   302,       270,   271,   274,   275,   278,   279,   280,   281,   282,   283,
731       302,   302,   302,   302,   302,   302,   302,   302,   302,   302,       284,   285,   286,   287,   290,   291,   294,   297,   298,   299,
732       302,   302,   302,   302,   302,   302,   302,   302,   302,   302,       302,   305,   308,   311,   314,   315,   318,   321,   324,   327,
733       302,   302,   302,   303,   303,   303,   303,   303,   303,   303,       330,   333,   334,   337,   340,   343,   346,   349,   352,   355,
734       303,   303,   303,   303,   303,   303,   303,   303,   303,   303,       358,   361,   362,   365,   366,   367,   368,   376,   377,   380,
735       303,   303,   303,   303,   303,   303,   303,   303,   303,   304,       381,   384,   385,   386,   390,   391,   394,   395,   396,   397,
736       304,   304,   304,   304,   304,   304,   304,   304,   304,   305,       398,   399,   400,   401,   402,   403,   406,   407,   408,   409,
737       305,   305,   305,   305,   305,   305,   305,   305,   305,   305,       410,   411,   412,   413,   414,   415,   417,   417,   417,   417,
738       305,   305,   306,   306,   306,   306,   306,   306,   306,   307,       417,   417,   417,   417,   417,   417,   417,   417,   417,   417,
739       307,   307,   307,   307,   308,   308,   308,   308,   309,   309,       417,   417,   417,   417,   417,   417,   417,   417,   417,   417,
740       309,   310,   310,   310,   311,   311,   311,   312,   312,   312,       417,   417,   418,   418,   418,   418,   418,   418,   418,   418,
741       313,   313,   313,   314,   314,   314,   315,   315,   315,   316,       418,   418,   418,   418,   418,   418,   418,   418,   418,   418,
742       316,   316,   317,   317,   317,   318,   318,   318,   319,   319,       418,   418,   418,   418,   418,   418,   418,   418,   419,   419,
743       319,   320,   320,   320,   321,   321,   321,   322,   322,   322,       419,   419,   419,   419,   419,   419,   419,   419,   420,   420,
744       323,   323,   323,   324,   324,   324,   325,   325,   325,   326,       420,   420,   420,   420,   420,   420,   420,   420,   420,   420,
745       326,   326,   327,   327,   327,   328,   328,   328,   329,   329,       420,   421,   421,   421,   421,   421,   421,   421,   422,   422,
746       329,   330,   330,   330,   331,   331,   331,   332,   332,   332,       422,   422,   422,   423,   423,   423,   423,   424,   424,   424,
747       333,   333,   333,   334,   334,   334,   335,   335,   335,   336,       425,   425,   425,   426,   426,   426,   427,   427,   427,   428,
748       336,   336,   337,   337,   337,   338,   338,   338,   339,   339,       428,   428,   429,   429,   429,   430,   430,   430,   431,   431,
749       339,   340,   340,   340,   341,   341,   341,   342,   342,   342,       431,   432,   432,   432,   433,   433,   433,   434,   434,   434,
750       343,   343,   343,   344,   344,   344,   345,   345,   345,   346,       435,   435,   435,   436,   436,   436,   437,   437,   437,   438,
751       346,   346,   347,   347,   347,   348,   348,   348,   349,   349,       438,   438,   439,   439,   439,   440,   440,   440,   441,   441,
752       349,   350,   350,   350,   351,   351,   354,   355,   356,   357,       441,   442,   442,   442,   443,   443,   443,   444,   444,   444,
753       360,   361,   367,   370,   373,   376,   379,   382,   385,   388,       445,   445,   445,   446,   446,   446,   447,   447,   447,   448,
754       391,   394,   397,   400,   403,   406,   409,   412,   415,   418,       448,   448,   449,   449,   449,   450,   450,   450,   451,   451,
755       421,   424,   427,   430,   433,   436,   439,   442,   445,   448,       451,   452,   452,   452,   453,   453,   453,   454,   454,   454,
756       451,   454,   457,   460,   463,   466,   469,   472,   475,   478,       455,   455,   455,   456,   456,   456,   457,   457,   457,   458,
757       481,   484,   487,   490,   493,   496,   499,   502,   505,   508,       458,   458,   459,   459,   459,   460,   460,   460,   461,   461,
758       511,   514,   517,   520,   523,   526       461,   462,   462,   462,   463,   463,   463,   464,   464,   464,
759         465,   465,   465,   466,   466,   469,   470,   471,   472,   475,
760         476,   482,   485,   488,   491,   494,   497,   500,   503,   506,
761         509,   512,   515,   518,   521,   524,   527,   530,   533,   536,
762         539,   542,   545,   548,   551,   554,   557,   560,   563,   566,
763         569,   572,   575,   578,   581,   584,   587,   590,   593,   596,
764         599,   602,   605,   608,   611,   614,   617,   620,   623,   626,
765         629,   632,   635,   638,   641,   644,   647,   650,   653,   656,
766         659,   662,   665,   668,   671,   674,   677,   680,   683,   686,
767         689,   692,   695,   698,   701,   704,   707,   710,   713,   716,
768         719,   722,   725
769  };  };
770  #endif  #endif
771    
772  #if YYDEBUG || YYERROR_VERBOSE  #if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
773  /* YYTNME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.  /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
774     First, the terminals, then, starting at YYNTOKENS, nonterminals. */     First, the terminals, then, starting at YYNTOKENS, nonterminals.  */
775  static const char *const yytname[] =  static const char *const yytname[] =
776  {  {
777    "$end", "error", "$undefined", "'#'", "'='", "','", "'''", "'\"'",    "$end", "error", "$undefined", "'#'", "'='", "','", "'.'", "'+'", "'-'",
778    "'.'", "'+'", "'-'", "'0'", "'1'", "'2'", "'3'", "'4'", "'5'", "'6'",    "'0'", "'1'", "'2'", "'3'", "'4'", "'5'", "'6'", "'7'", "'8'", "'9'",
779    "'7'", "'8'", "'9'", "'A'", "'B'", "'C'", "'D'", "'E'", "'F'", "'G'",    "'A'", "'B'", "'C'", "'D'", "'E'", "'F'", "'G'", "'H'", "'I'", "'J'",
780    "'H'", "'I'", "'J'", "'K'", "'L'", "'M'", "'N'", "'O'", "'P'", "'Q'",    "'K'", "'L'", "'M'", "'N'", "'O'", "'P'", "'Q'", "'R'", "'S'", "'T'",
781    "'R'", "'S'", "'T'", "'U'", "'V'", "'W'", "'X'", "'Y'", "'Z'", "'a'",    "'U'", "'V'", "'W'", "'X'", "'Y'", "'Z'", "'a'", "'b'", "'c'", "'d'",
782    "'b'", "'c'", "'d'", "'e'", "'f'", "'g'", "'h'", "'i'", "'j'", "'k'",    "'e'", "'f'", "'g'", "'h'", "'i'", "'j'", "'k'", "'l'", "'m'", "'n'",
783    "'l'", "'m'", "'n'", "'o'", "'p'", "'q'", "'r'", "'s'", "'t'", "'u'",    "'o'", "'p'", "'q'", "'r'", "'s'", "'t'", "'u'", "'v'", "'w'", "'x'",
784    "'v'", "'w'", "'x'", "'y'", "'z'", "'!'", "'$'", "'%'", "'&'", "'('",    "'y'", "'z'", "'!'", "'$'", "'%'", "'&'", "'('", "')'", "'*'", "'/'",
785    "')'", "'*'", "'/'", "':'", "';'", "'<'", "'>'", "'?'", "'@'", "'['",    "':'", "';'", "'<'", "'>'", "'?'", "'@'", "'['", "'\\\\'", "']'", "'^'",
786    "'\\\\'", "']'", "'^'", "'_'", "'{'", "'|'", "'}'", "'~'", "'\\200'",    "'_'", "'{'", "'|'", "'}'", "'~'", "'\\200'", "'\\201'", "'\\202'",
787    "'\\201'", "'\\202'", "'\\203'", "'\\204'", "'\\205'", "'\\206'",    "'\\203'", "'\\204'", "'\\205'", "'\\206'", "'\\207'", "'\\210'",
788    "'\\207'", "'\\210'", "'\\211'", "'\\212'", "'\\213'", "'\\214'",    "'\\211'", "'\\212'", "'\\213'", "'\\214'", "'\\215'", "'\\216'",
789    "'\\215'", "'\\216'", "'\\217'", "'\\220'", "'\\221'", "'\\222'",    "'\\217'", "'\\220'", "'\\221'", "'\\222'", "'\\223'", "'\\224'",
790    "'\\223'", "'\\224'", "'\\225'", "'\\226'", "'\\227'", "'\\230'",    "'\\225'", "'\\226'", "'\\227'", "'\\230'", "'\\231'", "'\\232'",
791    "'\\231'", "'\\232'", "'\\233'", "'\\234'", "'\\235'", "'\\236'",    "'\\233'", "'\\234'", "'\\235'", "'\\236'", "'\\237'", "' '", "'¡'",
792    "'\\237'", "' '", "'¡'", "'¢'", "'£'", "'¤'", "'¥'", "'¦'", "'§'", "'¨'",    "'¢'", "'£'", "'¤'", "'¥'", "'¦'", "'§'", "'¨'", "'©'", "'ª'", "'«'",
793    "'©'", "'ª'", "'«'", "'¬'", "'­'", "'®'", "'¯'", "'°'", "'±'", "'²'",    "'¬'", "'­'", "'®'", "'¯'", "'°'", "'±'", "'²'", "'³'", "'´'", "'µ'",
794    "'³'", "'´'", "'µ'", "'¶'", "'·'", "'¸'", "'¹'", "'º'", "'»'", "'¼'",    "'¶'", "'·'", "'¸'", "'¹'", "'º'", "'»'", "'¼'", "'½'", "'¾'", "'¿'",
795    "'½'", "'¾'", "'¿'", "'À'", "'Á'", "'Â'", "'Ã'", "'Ä'", "'Å'", "'Æ'",    "'À'", "'Á'", "'Â'", "'Ã'", "'Ä'", "'Å'", "'Æ'", "'Ç'", "'È'", "'É'",
796    "'Ç'", "'È'", "'É'", "'Ê'", "'Ë'", "'Ì'", "'Í'", "'Î'", "'Ï'", "'Ð'",    "'Ê'", "'Ë'", "'Ì'", "'Í'", "'Î'", "'Ï'", "'Ð'", "'Ñ'", "'Ò'", "'Ó'",
797    "'Ñ'", "'Ò'", "'Ó'", "'Ô'", "'Õ'", "'Ö'", "'×'", "'Ø'", "'Ù'", "'Ú'",    "'Ô'", "'Õ'", "'Ö'", "'×'", "'Ø'", "'Ù'", "'Ú'", "'Û'", "'Ü'", "'Ý'",
798    "'Û'", "'Ü'", "'Ý'", "'Þ'", "'ß'", "'à'", "'á'", "'â'", "'ã'", "'ä'",    "'Þ'", "'ß'", "'à'", "'á'", "'â'", "'ã'", "'ä'", "'å'", "'æ'", "'ç'",
799    "'å'", "'æ'", "'ç'", "'è'", "'é'", "'ê'", "'ë'", "'ì'", "'í'", "'î'",    "'è'", "'é'", "'ê'", "'ë'", "'ì'", "'í'", "'î'", "'ï'", "'ð'", "'ñ'",
800    "'ï'", "'ð'", "'ñ'", "'ò'", "'ó'", "'ô'", "'õ'", "'ö'", "'÷'", "'ø'",    "'ò'", "'ó'", "'ô'", "'õ'", "'ö'", "'÷'", "'ø'", "'ù'", "'ú'", "'û'",
801    "'ù'", "'ú'", "'û'", "'ü'", "'ý'", "'þ'", "'ÿ'", "' '", "'\\n'", "'\\r'",    "'ü'", "'ý'", "'þ'", "'ÿ'", "'''", "'\"'", "' '", "'\\n'", "'\\r'",
802    "$accept", "input", "line", "comment", "command", "subscribe_event",    "$accept", "input", "line", "comment", "command", "add_instruction",
803    "unsubscribe_event", "get_instruction", "set_instruction",    "subscribe_event", "unsubscribe_event", "map_instruction",
804    "create_instruction", "destroy_instruction", "load_instruction",    "unmap_instruction", "remove_instruction", "get_instruction",
805      "set_instruction", "create_instruction", "reset_instruction",
806      "clear_instruction", "destroy_instruction", "load_instruction",
807    "set_chan_instruction", "key_val_list", "buffer_size_type",    "set_chan_instruction", "key_val_list", "buffer_size_type",
808    "list_instruction", "load_instr_args", "load_engine_args",    "list_instruction", "load_instr_args", "load_engine_args",
809    "device_index", "audio_channel_index", "audio_output_type_name",    "instr_load_mode", "device_index", "audio_channel_index",
810    "midi_input_port_index", "midi_input_channel_index",    "audio_output_type_name", "midi_input_port_index",
811    "midi_input_type_name", "volume_value", "sampler_channel",    "midi_input_channel_index", "midi_input_type_name", "midi_map",
812    "instrument_index", "engine_name", "filename", "param_val_list",    "midi_bank", "midi_prog", "midi_ctrl", "volume_value", "sampler_channel",
813    "param_val", "boolean", "string", "dotnum", "digits", "digit", "number",    "instrument_index", "fx_send_id", "engine_name", "filename", "map_name",
814    "char", "text", "stringval", "SP", "LF", "CR", "ADD", "GET", "CREATE",    "entry_name", "fx_send_name", "param_val_list", "param_val", "boolean",
815    "DESTROY", "LIST", "LOAD", "ALL", "NON_MODAL", "REMOVE", "SET",    "string", "dotnum", "digits", "digit", "number", "char", "text",
816    "SUBSCRIBE", "UNSUBSCRIBE", "SELECT", "CHANNEL", "AVAILABLE_ENGINES",    "stringval", "SP", "LF", "CR", "ADD", "GET", "MAP", "UNMAP", "CLEAR",
817    "AVAILABLE_AUDIO_OUTPUT_DRIVERS", "CHANNELS", "INFO", "CHANNEL_COUNT",    "CREATE", "DESTROY", "LIST", "LOAD", "ALL", "NONE", "DEFAULT",
818    "CHANNEL_INFO", "BUFFER_FILL", "STREAM_COUNT", "VOICE_COUNT",    "NON_MODAL", "REMOVE", "SET", "SUBSCRIBE", "UNSUBSCRIBE", "SELECT",
819    "INSTRUMENT", "ENGINE", "AUDIO_OUTPUT_DEVICE_PARAMETER",    "CHANNEL", "AVAILABLE_ENGINES", "AVAILABLE_AUDIO_OUTPUT_DRIVERS",
820      "CHANNELS", "INFO", "AUDIO_OUTPUT_DEVICE_COUNT",
821      "AUDIO_OUTPUT_DEVICE_INFO", "MIDI_INPUT_DEVICE_COUNT",
822      "MIDI_INPUT_DEVICE_INFO", "MIDI_INSTRUMENT_MAP_COUNT",
823      "MIDI_INSTRUMENT_MAP_INFO", "MIDI_INSTRUMENT_COUNT",
824      "MIDI_INSTRUMENT_INFO", "CHANNEL_COUNT", "CHANNEL_INFO", "BUFFER_FILL",
825      "STREAM_COUNT", "VOICE_COUNT", "TOTAL_VOICE_COUNT",
826      "TOTAL_VOICE_COUNT_MAX", "INSTRUMENT", "ENGINE", "ON_DEMAND",
827      "ON_DEMAND_HOLD", "PERSISTENT", "AUDIO_OUTPUT_DEVICE_PARAMETER",
828    "AUDIO_OUTPUT_DEVICES", "AUDIO_OUTPUT_DEVICE",    "AUDIO_OUTPUT_DEVICES", "AUDIO_OUTPUT_DEVICE",
829    "AUDIO_OUTPUT_DRIVER_PARAMETER", "AUDIO_OUTPUT_DRIVER",    "AUDIO_OUTPUT_DRIVER_PARAMETER", "AUDIO_OUTPUT_DRIVER",
830    "AUDIO_OUTPUT_CHANNEL_PARAMETER", "AUDIO_OUTPUT_CHANNEL",    "AUDIO_OUTPUT_CHANNEL_PARAMETER", "AUDIO_OUTPUT_CHANNEL",
831    "AUDIO_OUTPUT_TYPE", "AVAILABLE_MIDI_INPUT_DRIVERS",    "AUDIO_OUTPUT_TYPE", "AVAILABLE_MIDI_INPUT_DRIVERS",
832    "MIDI_INPUT_DEVICE_PARAMETER", "MIDI_INPUT_PORT_PARAMETER",    "MIDI_INPUT_DEVICE_PARAMETER", "MIDI_INPUT_PORT_PARAMETER",
833    "MIDI_INPUT_DEVICES", "MIDI_INPUT_DEVICE", "MIDI_INPUT_DRIVER_PARAMETER",    "MIDI_INPUT_DEVICES", "MIDI_INPUT_DEVICE", "MIDI_INPUT_DRIVER_PARAMETER",
834    "MIDI_INPUT_DRIVER", "MIDI_INPUT_PORT", "MIDI_INPUT_CHANNEL",    "MIDI_INSTRUMENT", "MIDI_INSTRUMENTS", "MIDI_INSTRUMENT_MAP",
835    "MIDI_INPUT_TYPE", "MIDI_INPUT", "VOLUME", "BYTES", "PERCENTAGE",    "MIDI_INSTRUMENT_MAPS", "MIDI_INPUT_DRIVER", "MIDI_INPUT_PORT",
836    "RESET", "MISCELLANEOUS", "ECHO", "QUIT", 0    "MIDI_INPUT_CHANNEL", "MIDI_INPUT_TYPE", "MIDI_INPUT", "FX_SEND",
837      "FX_SENDS", "SERVER", "VOLUME", "MUTE", "SOLO", "BYTES", "PERCENTAGE",
838      "RESET", "MISCELLANEOUS", "NAME", "ECHO", "QUIT", 0
839  };  };
840  #endif  #endif
841    
842  # ifdef YYPRINT  # ifdef YYPRINT
843  /* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to  /* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to
844     token YYLEX-NUM.  */     token YYLEX-NUM.  */
845  static const unsigned short int yytoknum[] =  static const yytype_uint16 yytoknum[] =
846  {  {
847         0,   256,   257,    35,    61,    44,    39,    34,    46,    43,         0,   256,   257,    35,    61,    44,    46,    43,    45,    48,
848        45,    48,    49,    50,    51,    52,    53,    54,    55,    56,        49,    50,    51,    52,    53,    54,    55,    56,    57,    65,
849        57,    65,    66,    67,    68,    69,    70,    71,    72,    73,        66,    67,    68,    69,    70,    71,    72,    73,    74,    75,
850        74,    75,    76,    77,    78,    79,    80,    81,    82,    83,        76,    77,    78,    79,    80,    81,    82,    83,    84,    85,
851        84,    85,    86,    87,    88,    89,    90,    97,    98,    99,        86,    87,    88,    89,    90,    97,    98,    99,   100,   101,
852       100,   101,   102,   103,   104,   105,   106,   107,   108,   109,       102,   103,   104,   105,   106,   107,   108,   109,   110,   111,
853       110,   111,   112,   113,   114,   115,   116,   117,   118,   119,       112,   113,   114,   115,   116,   117,   118,   119,   120,   121,
854       120,   121,   122,    33,    36,    37,    38,    40,    41,    42,       122,    33,    36,    37,    38,    40,    41,    42,    47,    58,
855        47,    58,    59,    60,    62,    63,    64,    91,    92,    93,        59,    60,    62,    63,    64,    91,    92,    93,    94,    95,
856        94,    95,   123,   124,   125,   126,   128,   129,   130,   131,       123,   124,   125,   126,   128,   129,   130,   131,   132,   133,
857       132,   133,   134,   135,   136,   137,   138,   139,   140,   141,       134,   135,   136,   137,   138,   139,   140,   141,   142,   143,
858       142,   143,   144,   145,   146,   147,   148,   149,   150,   151,       144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
859       152,   153,   154,   155,   156,   157,   158,   159,   160,   161,       154,   155,   156,   157,   158,   159,   160,   161,   162,   163,
860       162,   163,   164,   165,   166,   167,   168,   169,   170,   171,       164,   165,   166,   167,   168,   169,   170,   171,   172,   173,
861       172,   173,   174,   175,   176,   177,   178,   179,   180,   181,       174,   175,   176,   177,   178,   179,   180,   181,   182,   183,
862       182,   183,   184,   185,   186,   187,   188,   189,   190,   191,       184,   185,   186,   187,   188,   189,   190,   191,   192,   193,
863       192,   193,   194,   195,   196,   197,   198,   199,   200,   201,       194,   195,   196,   197,   198,   199,   200,   201,   202,   203,
864       202,   203,   204,   205,   206,   207,   208,   209,   210,   211,       204,   205,   206,   207,   208,   209,   210,   211,   212,   213,
865       212,   213,   214,   215,   216,   217,   218,   219,   220,   221,       214,   215,   216,   217,   218,   219,   220,   221,   222,   223,
866       222,   223,   224,   225,   226,   227,   228,   229,   230,   231,       224,   225,   226,   227,   228,   229,   230,   231,   232,   233,
867       232,   233,   234,   235,   236,   237,   238,   239,   240,   241,       234,   235,   236,   237,   238,   239,   240,   241,   242,   243,
868       242,   243,   244,   245,   246,   247,   248,   249,   250,   251,       244,   245,   246,   247,   248,   249,   250,   251,   252,   253,
869       252,   253,   254,   255,    32,    10,    13       254,   255,    39,    34,    32,    10,    13
870  };  };
871  # endif  # endif
872    
873  /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */  /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
874  static const unsigned short int yyr1[] =  static const yytype_uint16 yyr1[] =
875  {  {
876         0,   227,   228,   228,   229,   229,   229,   229,   230,   230,         0,   227,   228,   228,   229,   229,   229,   229,   230,   230,
877       230,   230,   230,   231,   231,   231,   231,   231,   231,   231,       230,   230,   230,   231,   231,   231,   231,   231,   231,   231,
878       231,   231,   231,   231,   231,   231,   231,   232,   232,   232,       231,   231,   231,   231,   231,   231,   231,   231,   231,   231,
879       232,   232,   232,   233,   233,   233,   233,   233,   233,   234,       232,   232,   232,   233,   233,   233,   233,   233,   233,   233,
880       234,   234,   234,   234,   234,   234,   234,   234,   234,   234,       233,   233,   233,   233,   233,   233,   233,   233,   234,   234,
881       234,   234,   234,   234,   234,   234,   234,   234,   234,   234,       234,   234,   234,   234,   234,   234,   234,   234,   234,   234,
882       234,   234,   235,   235,   235,   235,   235,   235,   236,   236,       234,   234,   234,   235,   235,   235,   235,   236,   237,   237,
883       236,   236,   237,   237,   238,   238,   239,   239,   239,   239,       237,   238,   238,   238,   238,   238,   238,   238,   238,   238,
884       239,   239,   239,   239,   239,   240,   240,   241,   241,   242,       238,   238,   238,   238,   238,   238,   238,   238,   238,   238,
885       242,   242,   242,   242,   242,   243,   243,   244,   245,   246,       238,   238,   238,   238,   238,   238,   238,   238,   238,   238,
886       247,   248,   249,   249,   250,   251,   251,   252,   253,   254,       238,   238,   238,   238,   239,   239,   239,   239,   239,   239,
887       255,   256,   256,   257,   257,   257,   257,   257,   258,   258,       239,   239,   240,   240,   240,   240,   240,   240,   241,   242,
888       259,   259,   260,   260,   260,   261,   261,   262,   262,   262,       242,   243,   243,   243,   244,   244,   245,   245,   245,   245,
889       262,   262,   262,   262,   262,   262,   262,   263,   263,   263,       245,   245,   245,   245,   245,   245,   245,   245,   245,   245,
890       263,   263,   263,   263,   263,   263,   263,   264,   264,   264,       246,   246,   247,   247,   248,   248,   248,   248,   248,   248,
891       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       248,   248,   248,   248,   249,   249,   250,   251,   251,   251,
892       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       252,   253,   254,   255,   256,   256,   257,   258,   259,   260,
893       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       261,   262,   262,   263,   264,   265,   266,   267,   268,   269,
894       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       270,   271,   271,   272,   272,   272,   272,   273,   273,   274,
895       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       274,   275,   275,   275,   276,   276,   277,   277,   277,   277,
896       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       277,   277,   277,   277,   277,   277,   278,   278,   278,   278,
897       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       278,   278,   278,   278,   278,   278,   279,   279,   279,   279,
898       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       279,   279,   279,   279,   279,   279,   279,   279,   279,   279,
899       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       279,   279,   279,   279,   279,   279,   279,   279,   279,   279,
900       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       279,   279,   279,   279,   279,   279,   279,   279,   279,   279,
901       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       279,   279,   279,   279,   279,   279,   279,   279,   279,   279,
902       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       279,   279,   279,   279,   279,   279,   279,   279,   279,   279,
903       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       279,   279,   279,   279,   279,   279,   279,   279,   279,   279,
904       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       279,   279,   279,   279,   279,   279,   279,   279,   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,   265,   265,   265,   265,       279,   279,   279,   279,   279,   279,   279,   279,   279,   279,
913       266,   266,   267,   268,   269,   270,   271,   272,   273,   274,       279,   279,   279,   279,   279,   279,   279,   279,   279,   279,
914       275,   276,   277,   278,   279,   280,   281,   282,   283,   284,       279,   279,   279,   279,   279,   279,   279,   279,   279,   279,
915       285,   286,   287,   288,   289,   290,   291,   292,   293,   294,       279,   279,   279,   279,   279,   279,   279,   279,   279,   279,
916       295,   296,   297,   298,   299,   300,   301,   302,   303,   304,       279,   279,   279,   279,   279,   279,   279,   279,   279,   279,
917       305,   306,   307,   308,   309,   310,   311,   312,   313,   314,       279,   279,   279,   279,   279,   279,   279,   279,   279,   279,
918       315,   316,   317,   318,   319,   320       279,   279,   279,   279,   279,   279,   279,   279,   279,   279,
919         279,   279,   279,   279,   279,   280,   280,   280,   280,   281,
920         281,   282,   283,   284,   285,   286,   287,   288,   289,   290,
921         291,   292,   293,   294,   295,   296,   297,   298,   299,   300,
922         301,   302,   303,   304,   305,   306,   307,   308,   309,   310,
923         311,   312,   313,   314,   315,   316,   317,   318,   319,   320,
924         321,   322,   323,   324,   325,   326,   327,   328,   329,   330,
925         331,   332,   333,   334,   335,   336,   337,   338,   339,   340,
926         341,   342,   343,   344,   345,   346,   347,   348,   349,   350,
927         351,   352,   353,   354,   355,   356,   357,   358,   359,   360,
928         361,   362,   363
929  };  };
930    
931  /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN.  */  /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN.  */
932  static const unsigned char yyr2[] =  static const yytype_uint8 yyr2[] =
933  {  {
934         0,     2,     2,     3,     0,     1,     1,     1,     1,     2,         0,     2,     2,     3,     0,     1,     1,     1,     1,     2,
935         2,     2,     2,     3,     3,     3,     3,     3,     3,     5,         2,     2,     2,     3,     3,     3,     3,     3,     3,     3,
936         3,     3,     3,     3,     5,     1,     1,     1,     1,     1,         3,     3,     3,     3,     3,     3,     3,     3,     1,     1,
937           1,     1,     3,     1,     1,     1,     1,     1,     1,     1,
938           1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
939           1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
940           1,     1,     1,    15,    17,    17,    19,     7,     3,     3,
941           3,     1,     1,     5,     7,     9,     1,     5,     7,     9,
942           1,     1,     5,     5,     7,     9,     7,     9,     1,     5,
943           7,     5,     5,     5,     3,     1,     1,     3,     3,     9,
944           1,     5,     3,     7,     7,     9,     7,     9,     3,     7,
945          11,     3,     5,     3,     5,     3,     5,     7,     3,     3,
946           3,     3,     3,     5,     3,     3,     5,     7,     5,     9,
947           5,     5,     5,     5,     5,     5,     5,     5,     5,     5,
948           3,     5,     1,     1,     1,     1,     1,     1,     1,     1,
949           3,     3,     1,     3,     5,     7,     3,     1,     1,     1,
950         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
        1,     5,     7,     9,     1,     5,     7,     9,     1,     1,  
        5,     5,     7,     9,     7,     9,     1,     5,     7,     5,  
        5,     5,     7,     9,     7,     9,     3,     3,     5,     3,  
        5,     3,     3,     3,     3,     3,     5,     7,     5,     9,  
        5,     5,     5,     5,     5,     3,     5,     1,     1,     1,  
        1,     1,     1,     1,     1,     5,     7,     3,     1,     1,  
951         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
952         1,     1,     3,     1,     3,     3,     1,     1,     1,     1,         1,     1,     3,     1,     1,     1,     1,     1,     1,     1,
953         1,     2,     3,     4,     4,     1,     2,     1,     1,     1,         2,     3,     4,     4,     1,     2,     1,     1,     1,     1,
954         1,     1,     1,     1,     1,     1,     1,     1,     2,     2,         1,     1,     1,     1,     1,     1,     1,     2,     2,     2,
955         2,     2,     2,     2,     2,     2,     2,     1,     1,     1,         2,     2,     2,     2,     2,     2,     1,     1,     1,     1,
956         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
957         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
958         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
# Line 726  static const unsigned char yyr2[] = Line 974  static const unsigned char yyr2[] =
974         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
975         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
976         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
977         1,     1,     1,     1,     1,     1,     1,     1,     2,     2,         1,     1,     1,     1,     1,     1,     1,     2,     2,     3,
978         3,     3,     1,     1,     1,     3,     3,     6,     7,     4,         3,     1,     1,     1,     3,     3,     3,     5,     5,     6,
979         4,     3,     9,     6,     3,     9,    11,     6,     7,    17,         7,     4,     4,     3,     4,     7,     9,     6,     3,     9,
980        30,     8,     4,    13,    12,    11,    12,    11,    10,     6,        11,     6,     7,    17,    30,     8,     4,    25,    24,    23,
981        29,    20,    19,    29,    19,    30,    20,    17,    28,    27,        22,    25,    24,    21,    20,    13,    12,    11,    12,    11,
982        25,    18,    17,    27,    17,    15,    18,    15,    10,     6,        17,    21,    10,     6,     9,    14,    10,    29,    20,    19,
983         5,    10,     5,    13,     4,     4        29,    19,    30,    20,    17,    28,    27,    25,    18,    17,
984          27,    15,    16,    19,    20,    17,    15,    18,    15,    10,
985           7,     8,     6,     6,     4,     4,     5,    10,     5,    13,
986           4,     4,     4
987  };  };
988    
989  /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state  /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
990     STATE-NUM when YYTABLE doesn't specify something else to do.  Zero     STATE-NUM when YYTABLE doesn't specify something else to do.  Zero
991     means the default is an error.  */     means the default is an error.  */
992  static const unsigned short int yydefact[] =  static const yytype_uint16 yydefact[] =
993  {  {
994         0,     7,     8,     0,     0,     0,     0,     0,     0,     0,         0,     7,     8,     0,     0,     0,     0,     0,     0,     0,
995         0,     0,     0,     0,     5,     6,     0,     0,     0,     0,         0,     0,     0,     0,     0,     5,     6,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,    25,    26,     0,  
996         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
997         1,   373,   374,     2,     0,     9,   225,   220,   219,   217,         0,    28,    29,     0,     0,     0,     0,     0,     0,     0,
998       218,   127,   128,   129,   130,   131,   132,   133,   134,   135,         0,     0,     0,     0,     0,     0,     1,   442,   443,     2,
999       136,   147,   148,   149,   150,   151,   152,   153,   154,   155,         0,     9,   294,   289,   288,   286,   287,   196,   197,   198,
1000       156,   157,   158,   159,   160,   161,   162,   163,   164,   165,       199,   200,   201,   202,   203,   204,   205,   216,   217,   218,
1001       166,   167,   168,   169,   170,   171,   172,   173,   174,   175,       219,   220,   221,   222,   223,   224,   225,   226,   227,   228,
1002       176,   177,   178,   179,   180,   181,   182,   183,   184,   185,       229,   230,   231,   232,   233,   234,   235,   236,   237,   238,
1003       186,   187,   188,   189,   190,   191,   192,   193,   194,   195,       239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
1004       196,   197,   198,   209,   211,   212,   213,   214,   215,   216,       249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
1005       221,   222,   223,   224,   226,   227,   228,   229,   230,   231,       259,   260,   261,   262,   263,   264,   265,   266,   267,   278,
1006       232,   233,   234,   235,   236,   237,   238,   239,   240,   241,       280,   281,   282,   283,   284,   285,   290,   291,   292,   293,
1007       242,   243,   244,   245,   246,   247,   248,   249,   250,   251,       295,   296,   297,   298,   299,   300,   301,   302,   303,   304,
1008       252,   253,   254,   255,   256,   257,   258,   259,   260,   261,       305,   306,   307,   308,   309,   310,   311,   312,   313,   314,
1009       262,   263,   264,   265,   266,   267,   268,   269,   270,   271,       315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
1010       272,   273,   274,   275,   276,   277,   278,   279,   280,   281,       325,   326,   327,   328,   329,   330,   331,   332,   333,   334,
1011       282,   283,   284,   285,   286,   287,   288,   289,   290,   291,       335,   336,   337,   338,   339,   340,   341,   342,   343,   344,
1012       292,   293,   294,   295,   296,   297,   298,   299,   300,   301,       345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
1013       302,   303,   304,   305,   306,   307,   308,   309,   310,   311,       355,   356,   357,   358,   359,   360,   361,   362,   363,   364,
1014       312,   313,   314,   315,   316,   317,   318,   319,   320,   321,       365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
1015       322,   323,   324,   325,   326,   327,   328,   329,   330,   331,       375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
1016       332,   333,   334,   335,   336,   337,   338,   339,   340,   341,       385,   386,   387,   388,   389,   390,   391,   392,   393,   394,
1017       342,   343,   344,   345,   346,   347,   348,   349,   350,   351,       395,   396,   397,   398,   399,   400,   401,   402,   403,   404,
1018       352,   353,   354,   355,   356,   357,   358,   359,   360,   361,       405,   406,   407,   408,   409,   410,   411,   412,   413,   414,
1019       362,   363,   364,   365,   372,    12,   137,    11,   120,    10,       415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
1020         425,   426,   427,   428,   429,   430,   431,   432,   433,   434,
1021         441,    12,   206,    11,   189,    10,     0,     0,     0,     0,
1022           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1023           0,   444,     0,     0,     0,   445,     0,     0,   446,     0,
1024           0,     0,     0,   458,     0,     0,     0,     3,   196,   197,
1025         198,   199,   200,   201,   202,   203,   204,   205,   207,   194,
1026         208,   209,   210,   211,   212,   213,   214,   215,   279,   268,
1027         269,   270,   271,   272,   273,   274,   275,   276,   277,   190,
1028           0,     0,    13,    30,    31,     0,     0,     0,     0,     0,
1029           0,     0,    16,     0,    71,    76,    88,    95,    96,     0,
1030          80,     0,     0,     0,     0,     0,    72,     0,    81,     0,
1031           0,     0,     0,     0,   100,     0,     0,     0,     0,     0,
1032           0,    14,     0,    15,     0,     0,    27,     0,     0,     0,
1033           0,    17,     0,     0,     0,    18,     0,     0,     0,     0,
1034           0,     0,     0,    19,   147,   149,   146,   144,   148,   145,
1035           0,   152,     0,     0,    20,     0,     0,    21,     0,     0,
1036           0,     0,     0,    22,     0,     0,     0,     0,     0,     0,
1037           0,     0,     0,     0,     0,     0,     0,     0,     0,    23,
1038          33,    34,    35,    36,    42,    43,    44,    45,    37,    41,
1039          40,    39,    38,    47,    46,    24,    48,    49,    50,    51,
1040          57,    58,    59,    60,    52,    56,    55,    54,    53,    62,
1041          61,   436,    25,   435,    26,     0,     0,     0,     0,   451,
1042         452,   522,     0,     0,     0,     0,     0,     0,   195,     0,
1043           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1044           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1045           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1046           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1047           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1048           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1049           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1050           0,   438,   437,     0,   448,     0,     0,     0,   518,     0,
1051           0,   447,     0,     0,     0,     0,     0,    32,   178,     0,
1052         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,   375,     0,     0,   376,     0,     0,     0,     0,  
        0,     0,   384,     0,     0,     3,   127,   128,   129,   130,  
      131,   132,   133,   134,   135,   136,   138,   125,   139,   140,  
      141,   142,   143,   144,   145,   146,   210,   199,   200,   201,  
      202,   203,   204,   205,   206,   207,   208,   121,     0,    13,  
        0,     0,     0,     0,    14,     0,    39,    44,    56,     0,  
       48,     0,     0,     0,     0,     0,    40,     0,    49,     0,  
        0,     0,     0,     0,     0,    15,     0,     0,    16,     0,  
        0,     0,     0,     0,    17,    92,    94,    91,    89,    93,  
       90,     0,    18,     0,     0,     0,     0,     0,     0,    20,  
1053         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1054         0,    21,    27,    31,    30,    29,    28,    32,    22,    33,         0,     0,   197,   198,   199,   200,   201,   202,   203,   204,
1055        37,    36,    35,    34,    38,   367,    23,   366,     0,     0,       205,     0,    97,   167,    98,     0,     0,     0,     0,   102,
1056         0,   379,   380,   425,     0,     0,     0,     0,     0,   126,       173,    94,     0,     0,     0,     0,   119,   120,     0,     0,
1057           0,   113,   115,     0,   121,   122,     0,     0,     0,     0,
1058           0,   150,   151,   153,     0,     0,   124,     0,   177,     0,
1059         125,     0,   176,    68,    69,    70,     0,     0,     0,     0,
1060           0,     0,     0,   108,     0,     0,     0,     0,     0,     0,
1061         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1062           0,     0,     0,     0,   111,   188,   187,     0,     0,     0,
1063           0,     0,     0,     0,     0,   118,   449,     0,   457,   461,
1064         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1065         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1066         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,   369,   368,     0,     0,     0,  
        0,   422,     0,     0,     0,     0,     0,     0,     0,     0,  
1067         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,    69,  
       71,   128,   129,   130,   131,   132,   133,   134,   135,   136,  
       72,    73,     0,     0,     0,     0,     0,     0,     0,    74,  
        0,   110,     0,    75,     0,   109,    19,   107,     0,     0,  
        0,     0,     0,     0,    66,     0,     0,     0,     0,     0,  
        0,     0,     0,     0,     0,     0,     0,     0,    67,   119,  
      118,     0,     0,     0,     0,     0,    24,   377,     0,   383,  
      387,     0,     0,     0,     0,     0,     0,     0,     0,     0,  
1068         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1069           0,     0,     0,     0,     0,   521,     0,     0,     0,     0,
1070         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1071         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
      424,     0,     0,     0,     0,     0,     0,     0,     0,     0,  
1072         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1073         0,     0,     0,   378,     0,     0,     0,     0,     0,     0,       450,     0,     0,     0,     0,   439,   440,     0,     0,     0,
1074         0,     0,     0,    57,     0,     0,     0,    87,    88,    59,         0,     0,     0,     0,     0,     0,    89,     0,     0,     0,
1075        60,    61,    50,     0,    45,     0,     0,     0,    51,     0,       142,   143,    91,    92,    93,    82,     0,    77,     0,     0,
1076        41,     0,     0,     0,    68,     0,    70,     0,     0,     0,         0,    83,     0,     0,   453,   101,    73,     0,     0,     0,
1077         0,   370,   371,     0,     0,   108,     0,    97,     0,     0,         0,   168,     0,     0,     0,     0,     0,   112,     0,   114,
1078         116,   170,   123,   175,     0,     0,     0,     0,     0,     0,
1079           0,   174,     0,   156,     0,     0,     0,     0,     0,     0,
1080         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1081         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,   399,     0,   392,  
1082         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1083           0,     0,     0,     0,     0,     0,   483,     0,     0,   512,
1084           0,   466,     0,     0,     0,     0,     0,     0,     0,     0,
1085         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1086         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1087           0,     0,     0,     0,     0,   514,   515,     0,     0,     0,
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,   385,     0,   388,     0,     0,   388,     0,         0,     0,     0,     0,   520,     0,     0,     0,     0,     0,
1090         0,     0,    58,    46,     0,    54,     0,    42,    52,     0,         0,     0,     0,     0,     0,     0,   459,     0,   462,     0,
1091         0,     0,     0,     0,   217,   218,    85,   111,   113,   117,         0,     0,   462,   510,     0,     0,     0,     0,    90,    78,
1092         0,   125,   116,     0,     0,     0,     0,     0,    95,     0,         0,    86,     0,    74,     0,    84,   103,     0,     0,   169,
1093         0,     0,     0,     0,     0,    76,    98,     0,    99,    78,        67,     0,     0,   510,     0,     0,   286,   287,   140,   181,
1094       100,    80,    81,   101,     0,    82,   102,   103,    83,   104,       183,   186,     0,   194,   185,   184,   117,   180,     0,     0,
1095         0,     0,     0,    84,   105,   106,    62,     0,    64,     0,         0,     0,     0,     0,   154,     0,     0,     0,     0,     0,
1096         0,     0,     0,     0,     0,     0,     0,     0,   391,     0,         0,   126,   160,     0,   161,   128,   162,   130,     0,     0,
1097         137,   138,   139,   131,   163,   132,   164,   165,   133,   166,
1098           0,     0,     0,   134,   171,   172,   135,   136,   104,     0,
1099         106,     0,   109,     0,     0,     0,     0,     0,     0,     0,
1100           0,     0,     0,     0,     0,     0,     0,   465,   511,     0,
1101         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1102         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1103         0,     0,     0,     0,   419,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,   513,
        0,     0,     0,     0,     0,   386,     0,     0,     0,   420,  
        0,    47,    55,    53,    43,     0,     0,    86,   114,   115,  
        0,     0,   112,   122,     0,     0,     0,     0,    96,     0,  
        0,     0,     0,    77,   381,     0,    63,    65,     0,     0,  
1104         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1105       123,   124,     0,     0,   398,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,   460,     0,     0,
1106           0,     0,     0,     0,   516,     0,    79,    87,    85,    75,
1107          99,     0,     0,     0,     0,     0,   141,     0,     0,   182,
1108         191,     0,     0,     0,     0,     0,   155,     0,     0,     0,
1109           0,   127,     0,     0,     0,   105,   107,     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,   382,     0,     0,  
        0,     0,    79,   395,     0,     0,     0,     0,   397,     0,  
1111         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1112         0,     0,     0,     0,   418,     0,   394,     0,   396,     0,         0,   192,   193,     0,     0,     0,   482,     0,     0,     0,
1113           0,     0,     0,   454,     0,     0,     0,     0,     0,     0,
1114         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,   393,   423,     0,     0,  
        0,     0,     0,     0,     0,     0,   421,     0,     0,     0,  
1115         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1116         0,     0,     0,     0,     0,     0,     0,   415,     0,     0,         0,     0,     0,     0,   456,     0,     0,     0,     0,     0,
1117         129,     0,   110,     0,   477,     0,     0,     0,     0,     0,
1118           0,     0,   479,     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           0,     0,     0,     0,     0,   509,     0,     0,     0,     0,
1121         476,     0,     0,     0,   478,     0,     0,     0,     0,     0,
1122         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1123         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1124         0,     0,     0,     0,     0,   389,     0,   412,   414,     0,       455,     0,     0,   475,     0,     0,   519,     0,     0,     0,
1125         0,   412,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,   517,
      415,   417,     0,     0,     0,     0,     0,   411,     0,     0,  
        0,     0,     0,     0,     0,     0,     0,     0,     0,   402,  
      404,     0,     0,     0,     0,   402,     0,     0,     0,     0,  
        0,   407,     0,   406,   401,     0,     0,     0,     0,     0,  
        0,     0,     0,     0,   416,     0,     0,     0,     0,     0,  
1126         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,   406,     0,     0,     0,     0,     0,     0,     0,  
1127         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1128         0,     0,     0,     0,   410,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1129         0,     0,     0,     0,     0,     0,     0,     0,   413,     0,       506,   501,     0,   501,    63,     0,     0,     0,     0,     0,
1130       409,     0,     0,     0,   408,     0,     0,   403,     0,   400,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1131       405,   390         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1132           0,     0,     0,     0,   502,     0,     0,     0,     0,     0,
1133           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1134           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1135         463,     0,   499,   505,     0,     0,   480,     0,     0,    64,
1136          65,   179,   157,   158,   159,     0,   499,     0,     0,     0,
1137           0,     0,     0,     0,     0,     0,   506,   508,     0,     0,
1138           0,     0,     0,   480,     0,     0,     0,     0,     0,     0,
1139         498,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1140           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1141           0,     0,   503,     0,   489,   491,     0,     0,     0,     0,
1142         503,     0,     0,     0,    66,   489,     0,     0,     0,     0,
1143           0,     0,   494,     0,     0,     0,     0,     0,     0,     0,
1144         493,   488,     0,     0,     0,     0,     0,   504,     0,     0,
1145           0,     0,     0,     0,     0,   507,     0,     0,     0,     0,
1146         474,     0,     0,     0,     0,     0,     0,     0,   481,     0,
1147           0,     0,     0,     0,     0,     0,     0,     0,   473,     0,
1148           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1149           0,   493,     0,     0,     0,   470,     0,     0,     0,     0,
1150           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1151         469,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1152           0,     0,     0,     0,   468,     0,   472,     0,     0,     0,
1153           0,     0,   497,   484,     0,     0,     0,   467,   471,     0,
1154           0,     0,     0,     0,     0,   486,     0,     0,     0,     0,
1155           0,     0,   500,     0,     0,   496,     0,     0,     0,   495,
1156           0,     0,     0,   490,     0,     0,   487,   492,   464,   485
1157  };  };
1158    
1159  /* YYDEFGOTO[NTERM-NUM]. */  /* YYDEFGOTO[NTERM-NUM].  */
1160  static const short int yydefgoto[] =  static const yytype_int16 yydefgoto[] =
1161  {  {
1162        -1,    12,    13,    14,    15,   391,   398,   334,   379,   355,        -1,    13,    14,    15,    16,   342,   439,   455,   381,   383,
1163       358,   372,   534,   654,   636,   364,   519,   523,   785,   787,       417,   352,   423,   391,   474,   386,   395,   414,   663,   837,
1164       789,   792,   795,   798,   803,   526,   664,   524,   520,   766,       809,   403,   646,   650,  1419,  1021,  1023,  1025,  1033,  1035,
1165       767,   548,   768,   769,   770,   266,   527,   268,   406,   521,      1038,   612,   830,   988,   840,  1043,   619,   850,   842,   651,
1166       711,    43,    44,    16,    17,    18,    19,    20,    21,   797,       647,   577,  1420,  1006,   998,   999,   684,  1000,  1001,  1002,
1167       522,    22,    23,    24,    25,    26,   329,   336,   337,   338,       272,   620,   274,   472,  1005,   920,    49,    50,    17,    18,
1168       482,   392,   393,   394,   395,   396,   373,   339,   381,   340,        19,    20,    21,    22,    23,    24,    25,  1037,  1031,  1032,
1169       341,   342,   343,   344,   345,   537,   346,   383,   347,   348,       649,    26,    27,    28,    29,    30,   343,   354,   355,   356,
1170       349,   350,   351,   352,   540,   541,   542,   543,   637,   638,       588,   440,   441,   442,   443,   444,   445,   446,   447,   448,
1171        27,   397,   385,    28       449,   450,   451,   452,   357,   358,   415,   359,  1422,  1423,
1172        1424,   425,   360,   361,   362,   363,   364,   365,   666,   366,
1173         427,   367,   368,   369,   370,   371,   372,   344,   374,   375,
1174         376,   670,   671,   672,   377,   378,   379,   673,   674,   675,
1175         810,   811,    31,   454,   681,   431,    32
1176  };  };
1177    
1178  /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing  /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
1179     STATE-NUM.  */     STATE-NUM.  */
1180  #define YYPACT_NINF -712  #define YYPACT_NINF -1046
1181  static const short int yypact[] =  static const yytype_int16 yypact[] =
1182  {  {
1183        51,  -712,  -712,    34,    23,    75,   109,    27,    38,   111,        50, -1046, -1046,    51,    66,    54,    76,   200,   129,   111,
1184        61,    48,    95,  -192,  1598,  -712,   -92,   -92,   -92,   -92,       152,    45,   182,   177,   -95,  1932, -1046,    23,    23,    23,
1185       -92,   -92,   -92,   -92,   -92,   -92,   -92,   -92,  -712,   126,        23,    23,    23,    23,    23,    23,    23,    23,    23,    23,
1186       158,   127,   150,   153,   180,   212,    70,    -3,   220,   204,        23,    23, -1046,   272,   255,   276,   218,   273,   291,   311,
1187      -712,  -712,  -712,  -712,    19,  -712,  -712,  -712,  -712,  -712,       299,   307,   204,   142,   315,   208, -1046, -1046, -1046, -1046,
1188      -712,  -712,   216,   216,   216,   216,   216,   216,   216,   216,       114, -1046, -1046, -1046, -1046, -1046, -1046, -1046,   578,   578,
1189       216,  -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,       578,   578,   578,   578,   578,   578,   578, -1046, -1046, -1046,
1190      -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,     -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046,
1191      -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,     -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046,
1192      -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,     -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046,
1193      -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,     -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046,
1194      -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,     -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046,
1195      -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,     -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046,
1196      -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,     -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046,
1197      -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,     -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046,
1198      -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,     -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046,
1199      -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,     -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046,
1200      -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,     -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046,
1201      -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,     -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046,
1202      -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,     -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046,
1203      -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,     -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046,
1204      -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,     -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046,
1205      -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,     -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046,
1206      -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,     -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046,
1207      -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,     -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046,
1208      -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,     -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046,
1209      -712,  -712,  -712,  -712,  -712,  2705,  -712,  -712,  -712,  -712,     -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046,
1210       222,   163,    73,    73,   170,     6,   222,   164,    54,    54,     -1046,  2597, -1046, -1046, -1046, -1046,   181,   116,   305,   305,
1211      1820,   222,  -712,   225,   207,  -712,   208,   226,   211,   230,       306,   207,   207,   199,    47,   181,   198,   105,   105,  2154,
1212       241,   243,  -712,   231,   228,  -712,  -712,  -712,  -712,  -712,       319, -1046,   322,   323,   313, -1046,   321,   331, -1046,   332,
1213      -712,  -712,  -712,  -712,  -712,  -712,   216,  -712,   216,   216,       310,   348,   350, -1046,   308,   355,   336, -1046, -1046, -1046,
1214       216,   216,   216,   216,   216,   216,  -712,  -712,  -712,  -712,     -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046,   578, -1046,
1215      -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,   244,  -712,       578,   578,   578,   578,   578,   578,   578,   578, -1046, -1046,
1216        69,   245,   237,   246,  -712,   -92,  -712,  -712,  -712,   -92,     -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046,
1217      -712,   -92,   -92,   -92,   -92,   -92,  -712,   -92,  -712,   -92,       354,   349, -1046, -1046,    23,   159,   358,   353,   344,   360,
1218       -92,   -92,   -92,   233,   259,  -712,   -92,   -92,  -712,   -92,       365,   356, -1046,    23, -1046, -1046, -1046, -1046, -1046,    23,
1219       -92,    72,   261,   262,  -712,  -712,  -712,  -712,  -712,  -712,     -1046,    23,    23,    23,    23,    23, -1046,    23, -1046,    23,
1220      -712,   256,  -712,   -92,   -92,   -92,   251,   270,   265,  -712,        23,    23,    23,    23, -1046,    23,    23,    23,    23,    23,
1221       -92,   -92,   -92,   -92,   -92,   -92,   254,   269,   277,   268,       364, -1046,    23, -1046,    23,   366, -1046,    23,   357,   352,
1222       272,  -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,       371, -1046,    23,    23,    23, -1046,    23,    23,    23,   258,
1223      -712,  -712,  -712,  -712,  -712,  2705,  1820,  -712,   -92,   271,       373,   363,   379, -1046, -1046, -1046, -1046, -1046, -1046, -1046,
1224       274,  -712,  -712,  -712,   273,   276,   286,   287,   291,  -712,        23, -1046,    23,   375, -1046,    23,    23, -1046,    23,    23,
1225       293,   294,   296,   298,   297,   299,    62,   292,   292,   292,       369,   396,   391, -1046,    23,    23,    23,    23,    23,    23,
1226       292,   292,   292,   292,   292,   292,   292,   292,   301,   303,        23,    23,   380,   381,   408,   395,   397,   359,   403, -1046,
1227      2705,  2705,   267,   267,   309,   314,   316,   281,    21,  2705,     -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046,
1228       267,   317,   320,   318,    18,   267,   267,   267,   267,  2926,     -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046,
1229       323,   329,   312,   315,   325,  2705,  -712,   267,   327,   321,     -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046,
1230       330,  -712,   319,   326,   324,   332,   328,   336,   339,   346,     -1046,  2597,  2154, -1046, -1046,    23,   401,   400,   404, -1046,
1231       347,   343,   -92,   -92,   -92,   -92,   -92,   -92,   -92,   -92,     -1046, -1046,   399,   405,   420,   423,   411,   426, -1046,   428,
1232       -92,   -92,   -92,   -92,   -92,   -92,   -92,   349,   350,  1820,       429,    80,   430,   431,   434,   436,   367,   432,   419,   421,
1233      1820,   216,   216,   216,   216,   216,   216,   216,   216,   216,        63,   435,   435,   435,   435,   435,   435,   435,   435,   435,
1234      -712,  -712,   351,   348,   352,   344,  1820,  1820,   353,  -712,       435,   537,   435,   435,   435,   435,   613,   435,   442,   613,
1235       -92,  -712,   -92,  -712,   -92,  2705,  -712,  -712,   354,   355,       613,   451,   537,   452,   386,   454,  2597,  2597,   613,   613,
1236       356,   345,   358,   357,  -712,   -92,   -92,   -92,   -92,   -92,       613,   613,   455,   459,   390,   458,   537,   613,   444,     2,
1237       -92,   -92,   -92,   -92,   -92,   -92,   -92,   -92,  -712,  2705,      2597,   613,   537,   473,   470,   477,    57,   613,   613,   613,
1238      -712,   363,   360,   335,   366,   373,  -712,  -712,   359,  -712,       613,   466,   481,  2816,   479,   478,   484,    71,   468,   469,
1239      -712,   368,   375,   365,   367,   369,   371,   372,   322,   374,       482,  2597, -1046,   613, -1046,   487,   480,   488, -1046,   474,
1240       267,    37,   267,   267,  2705,   267,  2705,  2705,   267,   267,       483, -1046,   486,   485,   491,  2154,  2154, -1046, -1046,   493,
1241       267,   267,  2705,  2705,   267,   376,   333,  2705,  2705,   377,       494,   492,   498,   489,   500,   490,   495,   497,    23,    23,
1242       380,   334,   370,  1154,  1376,   381,   267,   124,   267,   382,        23,    23,    23,    23,    23,    23,    23,    23,    23,    23,
1243      -712,   340,   379,   383,   378,   267,   267,   267,   267,   267,        23,    23,   578,   578,   578,   578,   578,   578,   578,   578,
1244       267,   267,   267,   267,  2705,   267,  2705,   267,   384,   385,       578,   501, -1046, -1046, -1046,    23,    23,    23,    23, -1046,
1245       391,   397,   395,  -712,   399,   388,   398,   341,   401,   402,     -1046, -1046,   505,    23,    23,   510, -1046, -1046,   511,   503,
1246       405,   404,   400,  -712,   389,   411,   -92,  -712,  -712,  -712,       514,  2154,  2154,    23, -1046, -1046,    23,   515,   512,   506,
1247      -712,  -712,  -712,  1820,  2705,   -92,   -92,   -92,  -712,  1820,       530, -1046, -1046, -1046,   520,   526, -1046,    23, -1046,    23,
1248      2705,   -92,   361,   408,   -92,  3147,   -92,   362,   413,   410,     -1046,    23,  2597, -1046, -1046, -1046,   535,   539,   570,   559,
1249       406,  -712,  -712,   364,   -92,  -712,   -92,  -712,   393,   417,        52,   566,   571, -1046,    23,    23,    23,    23,    23,    23,
1250       419,   420,   409,   -92,   -92,   -92,   -92,   -92,   -92,   -92,        23,    23,    23,    23,    23,    23,    23,    23,    23,    23,
1251       -92,   -92,  3368,   -92,  3589,   -92,   416,   415,   424,   418,       586,    23,   567,    23, -1046,  2597, -1046,   580,   587,   582,
1252       394,   432,   429,   427,   425,   439,   430,  -712,   431,  -712,       583,   591,   592,   600,   599, -1046, -1046,   594, -1046, -1046,
1253       423,   426,   267,  2705,   267,   267,   267,  2705,   267,   433,       608,   617,   607,   551,  1488,  1710,   609,   611,   612,   614,
1254       454,  2705,  2042,   455,   434,   466,   456,   468,   267,   267,       620,   556,   624,   618,   641,   613,   112,   613,   613,  2597,
1255       467,   471,   473,   444,   477,   267,   267,  2705,   267,   267,       613,  2597,  2597,   613,   613,   613,   613,  2597,   613,   637,
1256       205,  2705,   267,   195,  2042,  2705,  2042,  2705,   445,   435,       613,  2597,   613,   613,   581,   613,   613,   584,   636,   648,
1257       474,   446,   498,  -712,   516,  -712,   499,   507,   502,   506,       585,  2597,  2597,   613,   613,   639,   643,   653,   588,   642,
1258       518,   521,  -712,  1820,   -92,  -712,   -92,  1820,  -712,   504,       647,   613,    80,   613,   649, -1046,   595,   658,   659,   645,
1259       510,  3810,  2705,  2705,   216,   216,   542,  -712,  2705,  -712,       655,   656,   613,   613,   613,   613,   613,   613,   613,   613,
1260       107,    14,  -712,   508,   502,   514,   526,   517,  -712,   -92,       613,   613,   613,   613,  2597,   613,  2597,   613,   657,   613,
1261       512,   519,   463,   527,   532,  -712,  -712,   -92,  -712,  -712,       665,   613,   660,   668,   662,   603,   672,   677,   667,   675,
1262      2705,  -712,  -712,  -712,   528,  -712,  -712,  -712,  -712,  2705,     -1046,   679,   664,   678,   676, -1046, -1046,   616,   683,   684,
1263       -92,   216,   216,  -712,  -712,  -712,   542,  4031,   542,  4252,       685,   681,   688,   687,   628,   686, -1046,   682,   697,    23,
1264       533,   472,   537,   539,   534,   543,   531,   547,  -712,   535,     -1046, -1046, -1046, -1046, -1046, -1046,  2154,  2597,    23,    23,
1265       536,   548,  2705,  2705,  2705,  2705,   538,   544,  2042,  2263,        23, -1046,  2154,    23, -1046, -1046,  2597,    23,    23,   699,
1266      2484,   141,   162,  2042,   216,   546,   549,   540,   553,   267,        23, -1046,    23,   700,   635,   701,   704,    23,  3035,    23,
1267       551,   552,   554,   545,  -712,   267,   555,   267,  2042,  2042,        23, -1046, -1046, -1046,   646,   709,   702,   711,   703,   650,
1268       559,   106,   550,   557,   556,  -712,   558,   492,   560,  -712,        23, -1046,    23, -1046,   651,   714,   716,   717,   713,   712,
1269       561,   -92,  2705,  2705,   -92,   562,   564,   542,  -712,  -712,       707,    23,    23,    23,    23,    23,    23,    23,    23,    23,
1270       216,   216,  -712,   216,   563,   565,   566,   575,  -712,   571,        23,    23,    23,  3254,    23,  3473,    23,   733,    23,   730,
1271       568,   569,   573,  -712,  -712,   -92,   542,   542,   570,   577,        23,   669,   723,   737,   735,   734,   736,   680,   689,   743,
1272       579,   589,   574,   582,   576,     5,   529,   578,   580,   567,       741,   740,   739,   742,   752,   744, -1046,   751,   745, -1046,
1273       216,   216,   581,   583,  -712,   587,   584,   585,   586,   588,       746, -1046,   738,   748,   613,  2597,   613,   613,   613,  2597,
1274       205,   592,   590,   601,   593,   603,   595,   599,   600,   606,       613,   613,   613,   747,   613,   613,   749,   754,   758,   753,
1275       613,    92,   622,   604,   621,   607,   624,  -712,   609,   115,      2597,  2376,    80,   755,   759,   768,   760,   762,   764,   613,
1276       610,   612,  -712,  -712,   616,   619,   614,   617,  -712,   591,       613,   765,   767,   769,   708, -1046, -1046,   775,   613,   613,
1277       632,   642,   635,    60,   636,   646,   594,   650,   596,   652,      2597,   613,   101,   613,   537,  2597,   613,   476,  2816,  2816,
1278       598,   653,   644,   639,   602,   641,  -712,   645,  -712,   140,      2376,  2597,  2376,  2597, -1046,    80,   777,   613,   778,   725,
1279       654,   657,   666,   655,   667,   661,   675,   677,   662,   679,       761,   784,   770,   729,   779,   799, -1046,   801, -1046,   785,
1280       664,   171,   665,   670,   669,    17,  -712,  -712,   682,    74,       787,   793,   790,   791,   115,   796,   807,   803, -1046,  2154,
1281       678,   683,   630,   696,   685,   688,  -712,   704,   701,   706,        23, -1046,    23,  2154,    23, -1046, -1046,   797,    23, -1046,
1282       703,   705,   709,   707,   695,   647,   711,   710,   697,   725,     -1046,   802,   804, -1046,   806,  3692,   578,   578,   831, -1046,
1283       708,   718,   658,   726,   723,   730,   731,   668,   715,   735,      2597, -1046,   175,    25, -1046, -1046, -1046, -1046,   805,   790,
1284       719,   739,   742,   722,   744,   668,    57,   747,   727,   733,       791,   232,   815,   808, -1046,    23,   819,   233,   756,   833,
1285       736,   748,   737,   738,   745,   751,   753,   743,   750,   759,       839, -1046, -1046,    23, -1046, -1046,  2597, -1046,   841,   809,
1286       764,   765,   768,   761,   767,   772,   770,   754,   766,   762,     -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046,  2597,
1287       776,   769,   781,   780,   774,  -712,   771,   777,   720,   785,        23,   578,   578, -1046, -1046, -1046, -1046, -1046,   831,  3911,
1288       786,  -712,   787,   777,   783,   797,   734,   805,   791,   794,       831,  4130, -1046,   780,    23,   827,   843,   781,   243,   849,
1289      -712,  -712,   804,   811,   792,   800,   796,  -712,   806,   803,       850,   840,   842,   851,   834,   838,   854, -1046, -1046,   844,
1290       818,   819,   821,   824,   814,   817,   827,   828,   822,   816,       846,   852,   845,   855,  2597,  2597,  2597,  2597,   613,   847,
1291       773,   820,   825,   836,   837,  -712,   816,   830,   775,   838,      2597,   848,   853,   856,  2376,   303,   415,  2376,   578,   861,
1292       833,  -712,   839,   778,  -712,   832,   829,   782,   840,   841,       863,   865,   857,   858,   613,   866,   867,   872,   876, -1046,
1293       778,   843,   842,   850,  -712,   847,   855,   844,   853,   864,       613,   864,   877,   613,  2376,  2376,   878,   613,   874,   860,
1294       861,   866,   867,   857,   871,   856,   802,   859,   862,   858,       221,   871,   875,   883,   884,   891,   880, -1046,   885,   886,
1295       863,   869,  -712,   865,   878,   876,   875,   881,   884,   889,       792,   888,   895,   869, -1046,   890,    23,  2597,  2597,    23,
1296       886,   891,   882,   879,   874,   880,   883,   890,   888,   896,     -1046,   901,    23,   903,   906,   904,   831,   578,   578, -1046,
1297       897,   901,   906,   909,  -712,   910,   911,   912,   899,   898,       578,   907,   908,   909,   910,   925, -1046,   913,   911,   912,
1298       903,   904,   908,   905,   913,   919,   921,   915,  -712,   924,       259, -1046,   931,   929,    23,   831,   831,   914,    23,   920,
1299      -712,   925,   914,   917,  -712,   918,   920,  -712,   922,  -712,       926,   922,   927,   924,   930,   940,   932,   949,   942,   933,
1300      -712,  -712       937,   209,   892,   941,   956,   944,   946,    80,   947,   950,
1301         899,   578,   578,   951,   902,   953, -1046,   965,   957,   915,
1302         961,   962,   966, -1046,   537,   968,   613,   970,   977,   971,
1303         987,   923,   974,   982,   984,   994,   980,   988,   983,   981,
1304         990,   996,   107,   993,   938,  1007,   997,    23,   998,   995,
1305        1009,   999,  1012,  1004, -1046,  1000,   160,  1002,  1003,  1010,
1306       -1046,  1008, -1046,  1005, -1046,  1013,  1011,  1024,  1017,  1014,
1307        1016,   963, -1046,  1027,   967,  1029,  1030,  1035,    84,  1025,
1308        1036,  1039,  1037,  1038,   613,  1040,   976,  1044,   979,  1046,
1309        1048,   985,  1049,  1042,  1041,   989,  1043,  1045,  1015,  1047,
1310       -1046,  1053,  1054,  1050, -1046,  1058,  1051,   283,  1055,  1061,
1311        1067,  1056,  1073,  1065,  1070,  1072,  1080,  1074,    23,  1075,
1312        1086,  1069,  1088,  1071,  1081,   285,  1076,  1078,  1077,   100,
1313       -1046,  1082,  1090, -1046,  1079,  1089, -1046,  1085,  1084,  1097,
1314         147,  1091,  1093,  1057,  1099,  1087,  1092,  1094,  1095, -1046,
1315        1098,   476,  1100,  1105,  1102,  1108,  1106,  1107,  1109,  1114,
1316        1113,  1110,  1060,  1118,  1117,  1111,  1062,  1129,  1126,  1119,
1317        1116,  1083,  1137,  1120,  1131,  1096,  1136,  1135,  1142,  1141,
1318        1101,    17,  1134, -1046,    23,  1130,  1128,  1148,  1133,  1149,
1319          20,  1152,  1143,  1153,  1101,   106,  1156,  1145,  1155,  1170,
1320        1154,  1171,  1104,  1163,  1146,  1165,  1172,  1158,  1173,  1166,
1321        1176,  1187,  1175,  1178, -1046,  1182,  1177,    31,  1189,  1191,
1322        1190,  1195,  1188,  1192,  1193,  1198,  1196,  1180,  1194,  1200,
1323        1202,  1201,  1204,    74,  1203,  1215,  1207,  1221,  1213,  1205,
1324       -1046,  1209,  1208,  1157,  1228,  1229,  1162,  1220,  1230,    23,
1325       -1046, -1046, -1046, -1046, -1046,  1233, -1046,  1234,  1208,  1237,
1326        1225,  1238,  1169,  1241,  1227,  1231, -1046, -1046,  1243,  1179,
1327        1232,  1235,  1247, -1046,  1236,  1239,  1246,  1240,  1242,  1245,
1328       -1046,  1244,  1250,  1253,  1248,  1183,  1252,    80,  1251,  1254,
1329        1255,  1258,  1267,  1257,  1260,  1270,  1271,  1272,   235,  1259,
1330        1273,  1262, -1046,  1269,  1263,  1186,  1268,  1265,  1282,  1285,
1331        1274,  1286,  1249,  1275, -1046, -1046,  1263,  1274,  1276,  1219,
1332        1290,  1278, -1046,  1283,  1226,  1281,  1284,  1287,  1288,  1261,
1333        1264, -1046,  1289,  1279,  1266,  1292,  1291, -1046,  1293,  1294,
1334        1297,  1264,  1295,  1298,  1302, -1046,   236,  1299,  1296,  1304,
1335       -1046,   237,  1303,  1321,  1305,  1322,  1327,  1324, -1046,  1317,
1336        1312,  1332,  1333,  1326,  1325,  1328,  1329,  1330, -1046,  1331,
1337        1334,  1335,  1323,  1280,  1336,  1337,  1338,  1346,  1339,  1342,
1338        1340, -1046,  1341,  1343,  1344, -1046,  1345,  1349,  1347,  1351,
1339        1352,  1348,  1356,  1358,  1353,  1363,  1368,  1366,  1359,  1357,
1340       -1046,  1360,  1361,  1374,  1364,  1362,  1365,  1369,  1367,  1375,
1341        1370,  1377,  1371,  1372, -1046,  1376, -1046,  1381,  1373,  1379,
1342        1392,  1393, -1046,  1310,  1380,  1394,  1396, -1046, -1046,  1397,
1343        1383,  1382,  1387,  1388,  1399, -1046,  1389,  1390,  1391,  1405,
1344        1407,  1395, -1046,  1398,  1410, -1046,  1411,  1400,  1401, -1046,
1345        1408,  1403,  1404, -1046,  1406,  1378, -1046, -1046, -1046, -1046
1346  };  };
1347    
1348  /* YYPGOTO[NTERM-NUM].  */  /* YYPGOTO[NTERM-NUM].  */
1349  static const short int yypgoto[] =  static const yytype_int16 yypgoto[] =
1350  {  {
1351      -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,     -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046,
1352      -712,  -712,  -712,  -573,  -712,  -712,  -712,  -712,  -696,   112,     -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046, -1046,  -709,
1353      -712,   104,    49,  -712,  -712,  -465,   247,   386,   387,  -711,     -1046, -1046, -1046, -1046, -1046,  -673, -1045, -1046,   338,   241,
1354       129,  -712,   331,   235,    11,   -10,   -14,   283,  -317,  -712,     -1046,  -484,  -697,  -878, -1046,   121,  -481,  -888,  -853,  -690,
1355       -13,   926,  -712,  -712,  -712,  -712,  -712,  -712,  -712,  -712,      -735,   496,   -13, -1046,  -889,   361,  -626,   256,  -919,   -39,
1356      -712,  -712,  -712,  -712,  -712,  -712,  -109,   689,   690,   698,       145,   -14,   362,  -251,  -473,   -15,  1402, -1046, -1046, -1046,
1357      -173,   692,   694,  -261,  -257,  -255,  -712,   699,  -712,   702,     -1046, -1046, -1046, -1046, -1046, -1046, -1046,  -444, -1046, -1046,
1358      -256,  -712,  -712,   700,   515,  -712,   712,  -712,   713,   714,     -1046, -1046, -1046, -1046, -1046, -1046,  -112,  1164,  1167,  1174,
1359      -252,  -712,  -712,   524,  -712,  -712,  -712,  -712,  -712,  -712,      -346,  1161,  1168,  1181,  1184,  1185,  1197,  1199,  1423,  1644,
1360      -712,   716,  -712,  -712      1866,  -257,  -240,  -239,    39, -1046, -1046,  1871, -1046, -1046,
1361       -1046, -1046,  2093,  -238, -1046, -1046,  1159,  -287, -1046,  2094,
1362       -1046,  1160,  4069,  -236, -1046,    53,  -104,  -245,  4070, -1046,
1363         916, -1046, -1046, -1046,   -85,  4071, -1046, -1046, -1046, -1046,
1364       -1046, -1046, -1046,  4067, -1046, -1046, -1046
1365  };  };
1366    
1367  /* YYTABLE[YYPACT[STATE-NUM]].  What to do in state STATE-NUM.  If  /* YYTABLE[YYPACT[STATE-NUM]].  What to do in state STATE-NUM.  If
1368     positive, shift that token.  If negative, reduce the rule which     positive, shift that token.  If negative, reduce the rule which
1369     number is the opposite.  If zero, do what YYDEFACT says.     number is the opposite.  If zero, do what YYDEFACT says.
1370     If YYTABLE_NINF, syntax error.  */     If YYTABLE_NINF, syntax error.  */
1371  #define YYTABLE_NINF -138  #define YYTABLE_NINF -207
1372  static const short int yytable[] =  static const yytype_int16 yytable[] =
1373  {  {
1374       267,   269,   556,   270,   271,   272,   273,   274,   275,   276,       275,   273,   276,   277,   278,   279,   280,   281,   282,   283,
1375       277,   278,   279,   280,   281,   656,   356,   359,   401,  -137,       284,   285,   286,   287,   288,   289,   290,   852,   578,   318,
1376       357,   360,   402,   806,   403,   808,   918,   516,   517,   291,       320,   321,   322,   323,   324,   325,   326,   327,  1044,   814,
1377       919,   332,   791,    41,    42,   371,   800,   292,   920,   531,      -206,   466,   373,   839,   645,   623,   624,   990,   626,   832,
1378       996,   947,   307,   307,   307,   307,   307,   307,   307,   307,       419,   429,  1015,   392,   396,   393,   397,   633,   467,   468,
1379       307,   532,     1,   997,     2,   518,    33,   998,    29,   634,       636,     1,   641,     2,  1384,  1151,   643,  1384,   654,   986,
1380       533,    30,    34,   306,   308,   309,   310,   311,   312,   313,       653,  1048,  1158,  1050,  1417,  1418,   648,   614,    43,     3,
1381       314,   315,     3,   635,     4,     5,   386,   387,     6,    35,       347,     4,     5,    33,   413,     6,   659,    36,   627,   758,
1382      1036,   987,    39,     7,   386,   963,    37,   388,     8,     9,         7,     8,   695,   433,    44,     9,    10,    11,   660,    12,
1383        10,   481,    11,   389,   353,    40,   390,  1037,   964,  1000,       587,   759,   642,   690,   661,  1440,    34,   662,   655,    37,
1384        31,   389,    38,   289,   390,   633,   354,   639,   640,   290,       436,  1441,    35,   438,  1054,  1442,  1385,  1281,   691,  1392,
1385       421,   422,  1001,   444,   422,   834,   943,   867,   296,   297,       308,   602,   603,   604,   605,   606,   607,   608,   609,   610,
1386       298,   299,   300,   301,   302,   303,   304,   305,   944,   889,      1282,  1333,  1257,  1028,   432,   433,   434,  1396,  1323,  1248,
1387       516,   517,   264,   667,    32,   890,    36,   886,   887,   951,        47,    48,   807,  1029,  1334,   345,   435,   346,  1335,   347,
1388       673,   674,   675,   676,   677,   678,   679,   680,   681,   870,       348,  1249,   436,   437,  1397,   438,   808,   349,    40,  1069,
1389       282,   952,   296,   297,   298,   299,   300,   301,   302,   303,        41,  1232,  1070,   350,   351,   592,   593,   594,   595,   596,
1390       304,   305,   335,   978,   979,   483,   284,   375,   380,   484,       597,   598,   599,   600,   601,   353,   615,   616,   617,   618,
1391       871,   485,   408,   296,   297,   298,   299,   300,   301,   302,      1343,   621,   302,   418,   424,    42,   387,    46,   475,   410,
1392       303,   304,   305,   283,   330,   376,   331,   328,   332,   377,       303,  1088,  1262,  1344,   308,   309,   310,   311,   312,   313,
1393       285,   361,   286,   362,   991,   992,   333,   378,   535,   593,       314,   315,   316,   317,  1263,  1136,   394,   398,   492,   493,
1394       594,   287,   538,   363,   801,   802,   296,   501,   502,   503,      1130,   430,   340,   319,   319,   319,   319,   319,   319,   319,
1395       504,   505,   506,   507,   508,   509,   296,   501,   502,   503,       319,   319,   341,   984,    45,  1155,  1156,   420,   399,   340,
1396       504,   505,   506,   507,   508,   509,   794,   296,   297,   298,       400,   421,   389,   401,   575,   576,   388,    38,  1209,   422,
1397       299,   300,   301,   302,   303,   304,   305,   752,  -137,  -137,       402,   389,  1210,    39,   806,   300,   812,   813,   390,   305,
1398      -137,   288,   293,   294,    41,   328,   409,   410,   411,   861,      1211,   301,  1161,   589,   823,   306,   825,   270,  1162,  -206,
1399       412,   413,   864,   778,   486,   487,   488,   489,   490,   491,      -206,  -206,   828,   575,   576,   294,  1495,  1534,  1539,   665,
1400       492,   493,   494,   495,   496,   414,   415,   407,   416,   418,       590,   591,  1496,  1535,  1540,   683,  1090,  1096,  1027,  1091,
1401       417,   424,   420,   423,   438,   425,    -4,    -4,   296,   501,      1064,   271,   853,  1040,   473,    -4,    -4,  1111,   292,   648,
1402       502,   503,   504,   505,   506,   507,   508,   509,   439,   445,      1112,   861,   862,   863,   864,   865,   866,   867,   868,   869,
1403       447,   446,   451,   452,   453,   460,   419,   461,   419,   419,       870,   871,   872,  1191,   291,   878,  1064,   532,   493,   293,
1404       419,   419,   419,   419,   419,   419,   462,   464,   463,   472,       880,   668,   575,   576,  1309,  1310,  1328,  1329,   664,  1137,
1405       473,   468,   469,   474,   475,   470,   471,   477,   476,   478,       667,   295,   308,   309,   310,   311,   312,   313,   314,   315,
1406       515,   481,   426,   480,   479,   497,   427,   498,   428,   429,       316,   317,  1046,  1047,   704,   705,   453,   469,   296,   491,
1407       430,   431,   432,   512,   433,   513,   434,   435,   436,   437,       297,   382,   384,   298,   299,   304,   380,   385,   500,    47,
1408       514,   528,   530,   440,   441,   265,   442,   443,   529,   551,       340,   476,   477,   482,   501,   485,   502,   503,   504,   505,
1409       552,   553,   557,   554,   555,   559,   558,   564,   620,   560,       506,   478,   507,   480,   508,   509,   510,   511,   512,   479,
1410       448,   449,   450,   562,   561,   565,   563,   454,   455,   456,       513,   514,   515,   516,   517,  1126,  1288,   519,  1129,   520,
1411       457,   458,   459,   566,   878,   567,   568,   569,   585,   586,       481,   483,   522,   484,   486,   487,   490,   526,   527,   528,
1412       589,   591,   590,   599,   592,   601,   602,   603,   595,   618,       489,   529,   530,   531,   494,   495,   496,   497,   498,   499,
1413       600,   621,   604,   466,   619,   467,   622,   624,   625,   626,      1132,   518,   559,   521,   524,   536,   523,   537,   525,   533,
1414       632,   628,   627,   670,   623,   629,   630,   671,   660,   686,       539,   540,  1044,   541,   542,   534,   535,   538,   543,   546,
1415       672,   652,   657,   631,   658,   663,   688,   668,   689,   687,       547,   548,   549,   550,   551,   552,   553,   544,   545,   554,
1416       690,   691,   695,   693,   653,   659,   692,   696,   510,   511,       555,  1138,   557,   978,   308,   309,   310,   311,   312,   313,
1417       697,   669,   694,   698,   700,   699,   701,   710,   714,   715,       314,   315,   316,   317,   556,   558,   560,   564,   565,   567,
1418       739,   544,   545,   546,   547,   550,   721,   716,   722,   723,       566,   569,  1217,   568,   570,   571,   572,   573,  1014,  1007,
1419       724,   741,   709,   713,   738,   717,   740,   743,   744,   745,       580,   574,   579,   581,   584,   585,   583,   562,  1030,   586,
1420       746,   747,   748,   750,   751,   749,   774,   811,   759,   570,       563,   582,   587,   488,   622,   488,   488,   488,   488,   488,
1421       571,   572,   573,   574,   575,   576,   577,   578,   579,   580,       488,   488,   488,   625,   628,   629,   630,   637,   638,   639,
1422       581,   582,   583,   584,   720,   742,   587,   588,   760,   776,       640,   644,   578,  1041,  1042,   308,   602,   603,   604,   605,
1423       773,   307,   307,   307,   307,   307,   307,   307,   307,   307,       606,   607,   608,   609,   610,   656,   657,   613,   680,   658,
1424       775,   777,   780,   407,   407,   781,   812,   596,   782,   597,       682,   687,   688,   689,   692,   613,   613,   693,   613,   694,
1425       784,   598,   306,   308,   309,   310,   311,   312,   313,   314,       696,   698,   699,   697,   713,   634,   635,   702,   703,   700,
1426       315,   814,   605,   606,   607,   608,   609,   610,   611,   612,       706,   707,   613,   701,   708,   709,   710,   711,   613,   714,
1427       613,   614,   615,   616,   617,   783,   810,   813,   815,   817,       712,   729,   734,   676,   677,   678,   679,   737,   738,   686,
1428       816,   818,   819,   820,   821,   826,   827,   833,   327,   835,       739,   740,   745,   747,   746,   471,   308,   602,   603,   604,
1429       836,   837,   838,   840,   842,   841,   843,   844,   852,   850,       605,   606,   607,   608,   609,   610,   611,   748,   749,   750,
1430       846,   642,   853,   851,   645,   646,   647,   648,   855,   854,       473,   473,   754,   318,   320,   321,   322,   323,   324,   325,
1431       651,   856,   857,   860,   876,   859,   858,   877,   865,   882,       326,   327,   755,   715,   716,   717,   718,   719,   720,   721,
1432       466,   466,   665,   895,   891,   866,   874,   884,   888,   881,       722,   723,   724,   725,   726,   727,   728,   308,   309,   310,
1433       875,   879,   892,   880,   894,   897,   905,   893,   898,   902,       311,   312,   313,   314,   315,   316,   317,   756,   757,   760,
1434       896,   683,   911,   685,   899,   903,   904,   906,   907,   909,       730,   731,   732,   733,   761,   778,   780,   782,   735,   736,
1435       908,   405,   912,   913,   914,   915,   916,   917,   922,   927,       785,   783,   786,  1146,   784,   787,   741,   742,   743,   788,
1436       921,   923,   925,   702,   933,   928,   930,   935,   936,   931,       789,   744,   308,   602,   603,   604,   605,   606,   607,   608,
1437       703,   934,   704,   705,   706,   938,   707,   937,   708,   939,       609,   610,   751,   339,   752,   791,   753,   790,   792,   793,
1438       941,   940,   942,   945,   946,   947,   953,   948,   949,   950,       794,   798,   797,   801,   799,   802,   800,   803,   804,   762,
1439       955,   718,   954,   719,   956,   957,   960,   958,   924,   962,       763,   764,   765,   766,   767,   768,   769,   770,   771,   772,
1440       725,   726,   727,   728,   729,   730,   731,   732,   733,   961,       773,   774,   775,   776,   777,   805,   779,   824,   781,   834,
1441       735,   965,   737,   966,   926,   968,   929,   970,   972,   973,       829,   835,   844,   833,   836,   845,   846,   847,   848,   849,
1442       974,   976,   959,   980,   977,   967,   981,   969,   327,   971,       856,   857,   854,   858,   855,   859,   860,   879,   877,   562,
1443       754,   755,   756,   975,   758,   982,   984,   983,   772,   985,       562,   882,   884,   881,   883,   885,   886,   887,   888,   889,
1444       986,   987,   771,   989,   988,   665,   990,   993,   994,   995,       890,   891,   894,   892,   648,   893,   815,   895,   896,   818,
1445       999,   786,   788,  1002,   786,   793,   796,  1003,   786,   805,       819,   820,   821,   897,   613,   898,   613,   900,   827,   901,
1446       772,  1004,   772,   771,   771,  1005,   771,  1006,  1007,  1008,       903,   831,   831,   899,   917,   902,   913,   916,   561,   841,
1447      1009,  1010,  1011,  1012,  1013,  1015,  1014,   465,  1016,  1017,       843,   919,   924,   918,   925,   923,   935,   851,   926,   928,
1448       822,   823,  1019,   824,   825,  1018,  1020,  1022,   327,  1023,       931,   932,   927,   933,   934,   936,   937,   319,   319,   319,
1449      1021,  1024,  1025,  1026,   307,   307,  1027,  1029,  1030,  1028,       319,   319,   319,   319,   319,   319,   954,   956,   958,   959,
1450       419,  1031,  1032,  1033,  1034,  1039,   839,  1035,  1038,  1040,       960,   874,   961,   876,   962,   613,   966,   963,   967,   964,
1451      1041,   499,   500,  1044,   845,   831,   832,  1042,  1047,  1043,       968,   969,   971,   973,   972,   970,   976,   974,   965,   987,
1452       525,  1048,   327,   327,  1045,  1046,  1049,   847,  1050,  1051,       993,   991,   631,   632,   977,   994,   975,   992,  1008,  1009,
1453       549,   307,   307,  1053,  1052,  1054,  1055,  1056,  1057,  1058,      1010,  1057,  1011,  1012,   904,  1013,   652,  1019,  1016,  1017,
1454      1059,  1061,  1060,  1062,  1063,  1064,  1069,  1066,   327,  1070,      1059,   905,  1018,   906,   907,   908,  1020,   909,   910,   685,
1455      1071,  1068,   831,   832,   772,  1065,  1067,  1072,   771,   772,      1053,  1055,   911,   912,  1056,   914,  1058,   915,  1060,  1061,
1456      1073,   419,   419,   771,   307,  1074,  1075,  1076,  1077,  1078,      1062,  1063,  1064,  1066,  1073,   922,  1065,  1067,  1068,  1071,
1457      1080,   788,   327,   793,   772,   772,  1079,  1082,   771,   771,      1072,   471,   471,   339,  1079,   929,  1087,   930,  1092,  1081,
1458      1081,  1084,  1083,  1085,  1086,   873,  1087,   405,   405,  1088,      1083,  1093,  1102,  1082,  1089,  1097,   938,   939,   940,   941,
1459      1089,  1090,  1091,  1092,  1093,  1094,  1096,  1098,  1099,  1102,       942,   943,   944,   945,   946,   947,   948,   949,  1095,   951,
1460       307,   307,  1100,   419,  1095,  1097,  1101,  1103,  1106,  1105,      1098,   953,  1099,   955,  1101,   957,  1108,  1109,  1113,  1106,
1461      1107,  1104,   910,  1108,  1110,  1113,  1115,  1117,  1109,  1111,      1110,  1114,  1118,  1115,  1117,  1116,  1119,  1120,  1125,  1123,
1462      1112,   900,   901,  1114,  1116,  1118,  1119,  1120,  1121,  1122,      1145,  1171,  1124,  1121,  1122,  1131,  1133,  1160,  1152,  1144,
1463       419,   419,  1123,  1125,  1124,  1127,   796,  1126,  1128,  1132,      1174,  1134,   980,   981,   982,  1135,   831,   985,   843,  1141,
1464      1133,  1129,  1130,  1131,  1134,   525,  1135,   643,   644,  1136,       989,   989,  1142,  1143,  1147,  1149,  1148,  1004,  1150,  1153,
1465      1137,  1138,  1139,   649,   650,  1140,  1142,  1141,   655,   655,      1163,  1157,  1159,  1164,  1421,  1165,   851,  1166,  1167,  1168,
1466      1143,  1144,  1148,  1145,   465,   465,   327,   327,  1146,  1147,      1170,  1169,  1175,   339,  1022,  1024,  1172,  1022,   613,  1034,
1467      1149,  1150,   327,   327,  1151,  1152,  1153,  1154,   327,  1155,      1036,  1173,  1022,  1045,   686,   686,  1004,  1176,  1004,  1178,
1468      1156,  1157,  1158,  1160,  1162,   682,  1163,   684,  1159,  1165,      1179,  1183,  1180,   843,  1187,  1185,  1184,  1188,  1186,  1189,
1469      1166,   885,  1167,  1161,  1164,  1168,  1169,   883,  1170,   932,      1192,  1190,  1193,  1195,  1197,  1199,  1198,  1085,  1086,  1200,
1470       641,  1171,   872,   365,   366,   327,   779,   327,   804,   536,       561,   561,  1201,  1203,  1074,  1075,  1202,  1076,  1077,  1078,
1471       295,   399,   367,   400,   374,     0,   368,   382,   539,     0,      1205,  1204,  1207,  1080,  1206,   652,  1208,   816,   817,  1214,
1472         0,     0,     0,     0,   666,     0,   369,     0,   370,     0,      1213,  1212,  1215,   822,  1421,  1216,  1218,   826,  1220,  1219,
1473       384,     0,     0,     0,     0,   404,     0,     0,     0,     0,      1221,  1222,  1223,   339,   339,  1224,  1225,   838,   838,  1227,
1474         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,      1094,  1228,  1085,  1086,  1226,  1229,  1231,  1234,  1100,  1233,
1475         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,      1235,  1236,  1237,  1238,   339,  1239,  1240,  1241,  1242,  1243,
1476         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,      1245,  1244,  1246,  1247,  1250,  1103,  1252,  1251,  1253,  1255,
1477         0,     0,     0,     0,   753,     0,   327,     0,   757,     0,       873,  1257,   875,  1256,  1259,  1260,  1264,  1258,  1261,  1107,
1478       327,     0,   761,     0,   327,     0,     0,     0,     0,     0,      1266,  1265,  1267,  1268,  1270,  1269,  1271,   339,  1272,  1140,
1479         0,   327,     0,     0,     0,     0,     0,     0,   790,     0,      1276,  1278,  1275,  1273,  1274,  1279,  1277,  1280,  1283,  1284,
1480         0,     0,   799,     0,     0,     0,   807,     0,   809,     0,      1285,  1287,  1286,  1289,   989,  1290,  1003,  1291,  1292,  1293,
1481         0,     0,     0,   327,     0,     0,     0,     0,     0,     0,      1004,  1294,  1296,  1004,  1295,  1297,  1304,  1305,  1299,  1307,
1482         0,     0,   327,     0,     0,     0,     0,     0,     0,     0,      1298,  1300,  1311,  1308,  1301,  1303,  1024,  1306,  1312,  1034,
1483       327,     0,   327,   829,   830,     0,     0,     0,     0,     0,      1004,  1004,  1003,  1024,  1313,  1003,  1314,  1003,  1181,  1182,
1484         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,      1315,  1316,  1317,  1319,  1302,  1318,  1320,  1322,  1323,  1324,
1485         0,     0,   327,   327,     0,     0,     0,     0,     0,     0,      1325,  1326,  1337,  1327,  1331,  1332,  1330,  1177,  1340,  1338,
1486         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,      1336,  1339,  1341,  1342,  1345,  1346,  1348,  1349,  1356,  1357,
1487         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,      1350,  1358,  1351,  1359,  1352,  1361,  1353,  1362,  1355,  1194,
1488         0,     0,     0,     0,     0,   327,   327,     0,     0,     0,      1363,   319,   319,  1196,  1366,  1360,  1347,   488,  1364,  1365,
1489         0,     0,     0,   655,   862,   863,   655,   316,    46,    47,      1367,  1369,  1370,  1371,  1368,  1373,  1375,  1372,  1377,  1379,
1490       661,     0,    48,    49,    50,   317,   318,   319,   320,   321,      1376,   979,  1380,  1381,  1382,   983,  1386,  1384,  1388,  1389,
1491       322,   323,   324,   325,   326,    61,    62,    63,    64,    65,      1391,  1393,  1374,  1390,  1395,  1398,   995,  1405,   339,   339,
1492        66,    67,    68,    69,    70,    71,    72,    73,    74,    75,      1036,  1399,  1024,  1394,   339,  1378,   319,   319,   339,  1400,
1493        76,    77,    78,    79,    80,    81,    82,    83,    84,    85,      1383,  1396,  1402,  1403,  1401,  1404,  1026,  1406,  1408,  1407,
1494        86,    87,    88,    89,    90,    91,    92,    93,    94,    95,       339,  1039,  1254,  1410,   685,   685,  1409,  1049,  1411,  1051,
1495        96,    97,    98,    99,   100,   101,   102,   103,   104,   105,      1412,  1413,  1414,  1415,  1426,  1416,  1425,  1427,  1428,  1429,
1496       106,   107,   108,   109,   110,   111,   112,   113,   114,   115,      1431,  1432,  1433,  1434,  1430,  1437,  1435,  1439,  1438,  1003,
1497       116,   117,   118,   119,   120,   121,   122,   123,   124,   125,       488,   488,  1003,   319,  1444,   339,  1447,   339,  1436,  1445,
1498       126,   127,   128,   129,   130,   131,   132,   133,   134,   135,       851,  1443,  1446,  1449,  1448,  1450,  1451,  1452,  1453,  1003,
1499       136,   137,   138,   139,   140,   141,   142,   143,   144,   145,      1003,  1454,  1455,  1456,  1458,  1459,  1460,  1461,  1463,  1462,
1500       146,   147,   148,   149,   150,   151,   152,   153,   154,   155,      1464,  1465,  1473,  1466,  1467,  1469,  1471,  1470,  1468,  1474,
1501       156,   157,   158,   159,   160,   161,   162,   163,   164,   165,      1472,  1509,  1482,  1321,  1485,  1502,  1475,  1486,  1478,  1481,
1502       166,   167,   168,   169,   170,   171,   172,   173,   174,   175,      1476,  1488,   319,   319,  1477,   488,  1479,  1480,  1483,  1487,
1503       176,   177,   178,   179,   180,   181,   182,   183,   184,   185,      1489,  1490,  1491,  1492,  1493,  1494,  1499,  1498,  1497,  1500,
1504       186,   187,   188,   189,   190,   191,   192,   193,   194,   195,      1501,  1505,  1503,  1504,  1506,  1508,  1511,  1045,  1512,  1513,
1505       196,   197,   198,   199,   200,   201,   202,   203,   204,   205,      1514,  1507,  1510,  1515,  1517,  1516,  1518,  1529,  1524,  1519,
1506       206,   207,   208,   209,   210,   211,   212,   213,   214,   215,      1537,  1520,  1527,  1523,  1530,  1533,   488,   488,  1526,  1531,
1507       216,   217,   218,   219,   220,   221,   222,   223,   224,   225,       838,  1127,  1128,   838,  1532,  1528,   652,  1541,  1536,  1387,
1508       226,   227,   228,   229,   230,   231,   232,   233,   234,   235,      1542,   339,  1538,  1543,  1544,   339,  1545,  1546,  1547,  1548,
1509       236,   237,   238,   239,   240,   241,   242,   243,   244,   245,      1521,  1549,  1550,  1522,  1558,  1525,  1551,   339,  1552,  1559,
1510       246,   247,   248,   249,   250,   251,   252,   253,   254,   255,      1553,  1554,   339,  1555,  1556,  1564,  1557,  1569,  1562,  1560,
1511       256,   257,   258,   259,   260,   261,   262,   263,   264,   316,      1574,  1567,  1561,  1572,  1575,  1576,  1563,  1565,  1566,  1577,
1512        46,    47,     0,   662,    48,    49,    50,   317,   318,   319,      1568,  1578,  1570,  1573,  1571,  1579,  1580,  1581,   339,  1582,
1513       320,   321,   322,   323,   324,   325,   326,    61,    62,    63,      1584,  1583,  1585,  1587,  1586,  1588,  1600,  1593,  1589,  1604,
1514        64,    65,    66,    67,    68,    69,    70,    71,    72,    73,      1629,   339,  1594,  1592,  1457,  1590,  1601,  1591,  1595,  1596,
1515        74,    75,    76,    77,    78,    79,    80,    81,    82,    83,      1597,   339,  1599,   339,  1598,  1602,  1603,  1606,  1605,  1607,
1516        84,    85,    86,    87,    88,    89,    90,    91,    92,    93,      1608,  1609,  1610,  1611,  1612,  1613,  1615,  1614,  1617,  1616,
1517        94,    95,    96,    97,    98,    99,   100,   101,   102,   103,      1618,  1620,  1619,  1621,  1622,  1230,  1623,  1624,  1625,  1626,
1518       104,   105,   106,   107,   108,   109,   110,   111,   112,   113,      1627,  1154,  1354,  1628,  1484,   426,   428,   404,  1139,   456,
1519       114,   115,   116,   117,   118,   119,   120,   121,   122,   123,       405,  1052,   307,     0,     0,     0,   457,   406,     0,     0,
1520       124,   125,   126,   127,   128,   129,   130,   131,   132,   133,         0,     0,   669,     0,     0,     0,  1003,     0,     0,   458,
1521       134,   135,   136,   137,   138,   139,   140,   141,   142,   143,         0,     0,   459,   460,     0,     0,     0,     0,     0,     0,
1522       144,   145,   146,   147,   148,   149,   150,   151,   152,   153,         0,     0,     0,     0,     0,   461,     0,   462,     0,   339,
1523       154,   155,   156,   157,   158,   159,   160,   161,   162,   163,       339,   328,    52,    53,    54,    55,    56,   329,   330,   331,
1524       164,   165,   166,   167,   168,   169,   170,   171,   172,   173,       332,   333,   334,   335,   336,   337,   338,    67,    68,    69,
      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,    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,  
1525        70,    71,    72,    73,    74,    75,    76,    77,    78,    79,        70,    71,    72,    73,    74,    75,    76,    77,    78,    79,
1526        80,    81,    82,    83,    84,    85,    86,    87,    88,    89,        80,    81,    82,    83,    84,    85,    86,    87,    88,    89,
1527        90,    91,    92,    93,    94,    95,    96,    97,    98,    99,        90,    91,    92,    93,    94,    95,    96,    97,    98,    99,
# Line 1226  static const short int yytable[] = Line 1541  static const short int yytable[] =
1541       230,   231,   232,   233,   234,   235,   236,   237,   238,   239,       230,   231,   232,   233,   234,   235,   236,   237,   238,   239,
1542       240,   241,   242,   243,   244,   245,   246,   247,   248,   249,       240,   241,   242,   243,   244,   245,   246,   247,   248,   249,
1543       250,   251,   252,   253,   254,   255,   256,   257,   258,   259,       250,   251,   252,   253,   254,   255,   256,   257,   258,   259,
1544       260,   261,   262,   263,   264,   316,    46,    47,   762,   763,       260,   261,   262,   263,   264,   265,   266,   267,   268,   269,
1545        48,   764,   765,    51,    52,    53,    54,    55,    56,    57,       795,   463,   270,   328,    52,    53,    54,    55,    56,   329,
1546        58,    59,    60,    61,    62,    63,    64,    65,    66,    67,       330,   331,   332,   333,   334,   335,   336,   337,   338,    67,
1547        68,    69,    70,    71,    72,    73,    74,    75,    76,    77,        68,    69,    70,    71,    72,    73,    74,    75,    76,    77,
1548        78,    79,    80,    81,    82,    83,    84,    85,    86,    87,        78,    79,    80,    81,    82,    83,    84,    85,    86,    87,
1549        88,    89,    90,    91,    92,    93,    94,    95,    96,    97,        88,    89,    90,    91,    92,    93,    94,    95,    96,    97,
# Line 1248  static const short int yytable[] = Line 1563  static const short int yytable[] =
1563       228,   229,   230,   231,   232,   233,   234,   235,   236,   237,       228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
1564       238,   239,   240,   241,   242,   243,   244,   245,   246,   247,       238,   239,   240,   241,   242,   243,   244,   245,   246,   247,
1565       248,   249,   250,   251,   252,   253,   254,   255,   256,   257,       248,   249,   250,   251,   252,   253,   254,   255,   256,   257,
1566       258,   259,   260,   261,   262,   263,   316,    46,    47,   868,       258,   259,   260,   261,   262,   263,   264,   265,   266,   267,
1567         0,    48,    49,    50,   317,   318,   319,   320,   321,   322,       268,   269,   464,   796,   270,    51,    52,    53,    54,    55,
1568       323,   324,   325,   326,    61,    62,    63,    64,    65,    66,        56,    57,    58,    59,    60,    61,    62,    63,    64,    65,
       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,   869,    48,    49,    50,   317,   318,   319,   320,   321,  
      322,   323,   324,   325,   326,    61,    62,    63,    64,    65,  
1569        66,    67,    68,    69,    70,    71,    72,    73,    74,    75,        66,    67,    68,    69,    70,    71,    72,    73,    74,    75,
1570        76,    77,    78,    79,    80,    81,    82,    83,    84,    85,        76,    77,    78,    79,    80,    81,    82,    83,    84,    85,
1571        86,    87,    88,    89,    90,    91,    92,    93,    94,    95,        86,    87,    88,    89,    90,    91,    92,    93,    94,    95,
# Line 1292  static const short int yytable[] = Line 1585  static const short int yytable[] =
1585       226,   227,   228,   229,   230,   231,   232,   233,   234,   235,       226,   227,   228,   229,   230,   231,   232,   233,   234,   235,
1586       236,   237,   238,   239,   240,   241,   242,   243,   244,   245,       236,   237,   238,   239,   240,   241,   242,   243,   244,   245,
1587       246,   247,   248,   249,   250,   251,   252,   253,   254,   255,       246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
1588       256,   257,   258,   259,   260,   261,   262,   263,   316,    46,       256,   257,   258,   259,   260,   261,   262,   263,   264,   265,
1589        47,     0,     0,    48,    49,    50,   317,   318,   319,   320,       266,   267,   268,   269,   465,   416,   270,   328,    52,    53,
1590       321,   322,   323,   324,   325,   326,    61,    62,    63,    64,        54,    55,    56,   329,   330,   331,   332,   333,   334,   335,
1591        65,    66,    67,    68,    69,    70,    71,    72,    73,    74,       336,   337,   338,    67,    68,    69,    70,    71,    72,    73,
       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,    51,    52,    53,  
       54,    55,    56,    57,    58,    59,    60,    61,    62,    63,  
       64,    65,    66,    67,    68,    69,    70,    71,    72,    73,  
1592        74,    75,    76,    77,    78,    79,    80,    81,    82,    83,        74,    75,    76,    77,    78,    79,    80,    81,    82,    83,
1593        84,    85,    86,    87,    88,    89,    90,    91,    92,    93,        84,    85,    86,    87,    88,    89,    90,    91,    92,    93,
1594        94,    95,    96,    97,    98,    99,   100,   101,   102,   103,        94,    95,    96,    97,    98,    99,   100,   101,   102,   103,
# Line 1337  static const short int yytable[] = Line 1608  static const short int yytable[] =
1608       234,   235,   236,   237,   238,   239,   240,   241,   242,   243,       234,   235,   236,   237,   238,   239,   240,   241,   242,   243,
1609       244,   245,   246,   247,   248,   249,   250,   251,   252,   253,       244,   245,   246,   247,   248,   249,   250,   251,   252,   253,
1610       254,   255,   256,   257,   258,   259,   260,   261,   262,   263,       254,   255,   256,   257,   258,   259,   260,   261,   262,   263,
1611       316,   712,    47,     0,     0,    48,    49,    50,   317,   318,       264,   265,   266,   267,   268,   269,   407,   408,   270,   328,
1612       319,   320,   321,   322,   323,   324,   325,   326,    61,    62,        52,    53,    54,   996,   997,    57,    58,    59,    60,    61,
       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,   734,    47,     0,     0,    48,    49,    50,   317,  
      318,   319,   320,   321,   322,   323,   324,   325,   326,    61,  
1613        62,    63,    64,    65,    66,    67,    68,    69,    70,    71,        62,    63,    64,    65,    66,    67,    68,    69,    70,    71,
1614        72,    73,    74,    75,    76,    77,    78,    79,    80,    81,        72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
1615        82,    83,    84,    85,    86,    87,    88,    89,    90,    91,        82,    83,    84,    85,    86,    87,    88,    89,    90,    91,
# Line 1381  static const short int yytable[] = Line 1630  static const short int yytable[] =
1630       232,   233,   234,   235,   236,   237,   238,   239,   240,   241,       232,   233,   234,   235,   236,   237,   238,   239,   240,   241,
1631       242,   243,   244,   245,   246,   247,   248,   249,   250,   251,       242,   243,   244,   245,   246,   247,   248,   249,   250,   251,
1632       252,   253,   254,   255,   256,   257,   258,   259,   260,   261,       252,   253,   254,   255,   256,   257,   258,   259,   260,   261,
1633       262,   263,   316,   736,    47,     0,     0,    48,    49,    50,       262,   263,   264,   265,   266,   267,   268,   269,   575,   576,
1634       317,   318,   319,   320,   321,   322,   323,   324,   325,   326,       328,    52,    53,    54,    55,    56,   329,   330,   331,   332,
1635        61,    62,    63,    64,    65,    66,    67,    68,    69,    70,       333,   334,   335,   336,   337,   338,    67,    68,    69,    70,
1636        71,    72,    73,    74,    75,    76,    77,    78,    79,    80,        71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
1637        81,    82,    83,    84,    85,    86,    87,    88,    89,    90,        81,    82,    83,    84,    85,    86,    87,    88,    89,    90,
1638        91,    92,    93,    94,    95,    96,    97,    98,    99,   100,        91,    92,    93,    94,    95,    96,    97,    98,    99,   100,
# Line 1403  static const short int yytable[] = Line 1652  static const short int yytable[] =
1652       231,   232,   233,   234,   235,   236,   237,   238,   239,   240,       231,   232,   233,   234,   235,   236,   237,   238,   239,   240,
1653       241,   242,   243,   244,   245,   246,   247,   248,   249,   250,       241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
1654       251,   252,   253,   254,   255,   256,   257,   258,   259,   260,       251,   252,   253,   254,   255,   256,   257,   258,   259,   260,
1655       261,   262,   263,   316,   828,    47,     0,     0,    48,    49,       261,   262,   263,   264,   265,   266,   267,   268,   269,   328,
1656        50,   317,   318,   319,   320,   321,   322,   323,   324,   325,        52,    53,    54,    55,    56,    57,    58,    59,    60,    61,
1657       326,    61,    62,    63,    64,    65,    66,    67,    68,    69,        62,    63,    64,    65,    66,    67,    68,    69,    70,    71,
1658        70,    71,    72,    73,    74,    75,    76,    77,    78,    79,        72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
1659        80,    81,    82,    83,    84,    85,    86,    87,    88,    89,        82,    83,    84,    85,    86,    87,    88,    89,    90,    91,
1660        90,    91,    92,    93,    94,    95,    96,    97,    98,    99,        92,    93,    94,    95,    96,    97,    98,    99,   100,   101,
1661       100,   101,   102,   103,   104,   105,   106,   107,   108,   109,       102,   103,   104,   105,   106,   107,   108,   109,   110,   111,
1662       110,   111,   112,   113,   114,   115,   116,   117,   118,   119,       112,   113,   114,   115,   116,   117,   118,   119,   120,   121,
1663       120,   121,   122,   123,   124,   125,   126,   127,   128,   129,       122,   123,   124,   125,   126,   127,   128,   129,   130,   131,
1664       130,   131,   132,   133,   134,   135,   136,   137,   138,   139,       132,   133,   134,   135,   136,   137,   138,   139,   140,   141,
1665       140,   141,   142,   143,   144,   145,   146,   147,   148,   149,       142,   143,   144,   145,   146,   147,   148,   149,   150,   151,
1666       150,   151,   152,   153,   154,   155,   156,   157,   158,   159,       152,   153,   154,   155,   156,   157,   158,   159,   160,   161,
1667       160,   161,   162,   163,   164,   165,   166,   167,   168,   169,       162,   163,   164,   165,   166,   167,   168,   169,   170,   171,
1668       170,   171,   172,   173,   174,   175,   176,   177,   178,   179,       172,   173,   174,   175,   176,   177,   178,   179,   180,   181,
1669       180,   181,   182,   183,   184,   185,   186,   187,   188,   189,       182,   183,   184,   185,   186,   187,   188,   189,   190,   191,
1670       190,   191,   192,   193,   194,   195,   196,   197,   198,   199,       192,   193,   194,   195,   196,   197,   198,   199,   200,   201,
1671       200,   201,   202,   203,   204,   205,   206,   207,   208,   209,       202,   203,   204,   205,   206,   207,   208,   209,   210,   211,
1672       210,   211,   212,   213,   214,   215,   216,   217,   218,   219,       212,   213,   214,   215,   216,   217,   218,   219,   220,   221,
1673       220,   221,   222,   223,   224,   225,   226,   227,   228,   229,       222,   223,   224,   225,   226,   227,   228,   229,   230,   231,
1674       230,   231,   232,   233,   234,   235,   236,   237,   238,   239,       232,   233,   234,   235,   236,   237,   238,   239,   240,   241,
1675       240,   241,   242,   243,   244,   245,   246,   247,   248,   249,       242,   243,   244,   245,   246,   247,   248,   249,   250,   251,
1676       250,   251,   252,   253,   254,   255,   256,   257,   258,   259,       252,   253,   254,   255,   256,   257,   258,   259,   260,   261,
1677       260,   261,   262,   263,   316,   848,    47,     0,     0,    48,       262,   263,   264,   265,   266,   267,   268,   269,   328,   921,
1678        49,    50,   317,   318,   319,   320,   321,   322,   323,   324,        53,    54,    55,    56,   329,   330,   331,   332,   333,   334,
1679       325,   326,    61,    62,    63,    64,    65,    66,    67,    68,       335,   336,   337,   338,    67,    68,    69,    70,    71,    72,
1680        69,    70,    71,    72,    73,    74,    75,    76,    77,    78,        73,    74,    75,    76,    77,    78,    79,    80,    81,    82,
1681        79,    80,    81,    82,    83,    84,    85,    86,    87,    88,        83,    84,    85,    86,    87,    88,    89,    90,    91,    92,
1682        89,    90,    91,    92,    93,    94,    95,    96,    97,    98,        93,    94,    95,    96,    97,    98,    99,   100,   101,   102,
1683        99,   100,   101,   102,   103,   104,   105,   106,   107,   108,       103,   104,   105,   106,   107,   108,   109,   110,   111,   112,
1684       109,   110,   111,   112,   113,   114,   115,   116,   117,   118,       113,   114,   115,   116,   117,   118,   119,   120,   121,   122,
1685       119,   120,   121,   122,   123,   124,   125,   126,   127,   128,       123,   124,   125,   126,   127,   128,   129,   130,   131,   132,
1686       129,   130,   131,   132,   133,   134,   135,   136,   137,   138,       133,   134,   135,   136,   137,   138,   139,   140,   141,   142,
1687       139,   140,   141,   142,   143,   144,   145,   146,   147,   148,       143,   144,   145,   146,   147,   148,   149,   150,   151,   152,
1688       149,   150,   151,   152,   153,   154,   155,   156,   157,   158,       153,   154,   155,   156,   157,   158,   159,   160,   161,   162,
1689       159,   160,   161,   162,   163,   164,   165,   166,   167,   168,       163,   164,   165,   166,   167,   168,   169,   170,   171,   172,
1690       169,   170,   171,   172,   173,   174,   175,   176,   177,   178,       173,   174,   175,   176,   177,   178,   179,   180,   181,   182,
1691       179,   180,   181,   182,   183,   184,   185,   186,   187,   188,       183,   184,   185,   186,   187,   188,   189,   190,   191,   192,
1692       189,   190,   191,   192,   193,   194,   195,   196,   197,   198,       193,   194,   195,   196,   197,   198,   199,   200,   201,   202,
1693       199,   200,   201,   202,   203,   204,   205,   206,   207,   208,       203,   204,   205,   206,   207,   208,   209,   210,   211,   212,
1694       209,   210,   211,   212,   213,   214,   215,   216,   217,   218,       213,   214,   215,   216,   217,   218,   219,   220,   221,   222,
1695       219,   220,   221,   222,   223,   224,   225,   226,   227,   228,       223,   224,   225,   226,   227,   228,   229,   230,   231,   232,
1696       229,   230,   231,   232,   233,   234,   235,   236,   237,   238,       233,   234,   235,   236,   237,   238,   239,   240,   241,   242,
1697       239,   240,   241,   242,   243,   244,   245,   246,   247,   248,       243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
1698       249,   250,   251,   252,   253,   254,   255,   256,   257,   258,       253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
1699       259,   260,   261,   262,   263,   316,   849,    47,     0,     0,       263,   264,   265,   266,   267,   268,   269,   328,   950,    53,
1700        48,    49,    50,   317,   318,   319,   320,   321,   322,   323,        54,    55,    56,   329,   330,   331,   332,   333,   334,   335,
1701       324,   325,   326,    61,    62,    63,    64,    65,    66,    67,       336,   337,   338,    67,    68,    69,    70,    71,    72,    73,
1702          74,    75,    76,    77,    78,    79,    80,    81,    82,    83,
1703          84,    85,    86,    87,    88,    89,    90,    91,    92,    93,
1704          94,    95,    96,    97,    98,    99,   100,   101,   102,   103,
1705         104,   105,   106,   107,   108,   109,   110,   111,   112,   113,
1706         114,   115,   116,   117,   118,   119,   120,   121,   122,   123,
1707         124,   125,   126,   127,   128,   129,   130,   131,   132,   133,
1708         134,   135,   136,   137,   138,   139,   140,   141,   142,   143,
1709         144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
1710         154,   155,   156,   157,   158,   159,   160,   161,   162,   163,
1711         164,   165,   166,   167,   168,   169,   170,   171,   172,   173,
1712         174,   175,   176,   177,   178,   179,   180,   181,   182,   183,
1713         184,   185,   186,   187,   188,   189,   190,   191,   192,   193,
1714         194,   195,   196,   197,   198,   199,   200,   201,   202,   203,
1715         204,   205,   206,   207,   208,   209,   210,   211,   212,   213,
1716         214,   215,   216,   217,   218,   219,   220,   221,   222,   223,
1717         224,   225,   226,   227,   228,   229,   230,   231,   232,   233,
1718         234,   235,   236,   237,   238,   239,   240,   241,   242,   243,
1719         244,   245,   246,   247,   248,   249,   250,   251,   252,   253,
1720         254,   255,   256,   257,   258,   259,   260,   261,   262,   263,
1721         264,   265,   266,   267,   268,   269,   328,   952,    53,    54,
1722          55,    56,   329,   330,   331,   332,   333,   334,   335,   336,
1723         337,   338,    67,    68,    69,    70,    71,    72,    73,    74,
1724          75,    76,    77,    78,    79,    80,    81,    82,    83,    84,
1725          85,    86,    87,    88,    89,    90,    91,    92,    93,    94,
1726          95,    96,    97,    98,    99,   100,   101,   102,   103,   104,
1727         105,   106,   107,   108,   109,   110,   111,   112,   113,   114,
1728         115,   116,   117,   118,   119,   120,   121,   122,   123,   124,
1729         125,   126,   127,   128,   129,   130,   131,   132,   133,   134,
1730         135,   136,   137,   138,   139,   140,   141,   142,   143,   144,
1731         145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
1732         155,   156,   157,   158,   159,   160,   161,   162,   163,   164,
1733         165,   166,   167,   168,   169,   170,   171,   172,   173,   174,
1734         175,   176,   177,   178,   179,   180,   181,   182,   183,   184,
1735         185,   186,   187,   188,   189,   190,   191,   192,   193,   194,
1736         195,   196,   197,   198,   199,   200,   201,   202,   203,   204,
1737         205,   206,   207,   208,   209,   210,   211,   212,   213,   214,
1738         215,   216,   217,   218,   219,   220,   221,   222,   223,   224,
1739         225,   226,   227,   228,   229,   230,   231,   232,   233,   234,
1740         235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
1741         245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
1742         255,   256,   257,   258,   259,   260,   261,   262,   263,   264,
1743         265,   266,   267,   268,   269,   328,  1084,    53,    54,    55,
1744          56,   329,   330,   331,   332,   333,   334,   335,   336,   337,
1745         338,    67,    68,    69,    70,    71,    72,    73,    74,    75,
1746          76,    77,    78,    79,    80,    81,    82,    83,    84,    85,
1747          86,    87,    88,    89,    90,    91,    92,    93,    94,    95,
1748          96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
1749         106,   107,   108,   109,   110,   111,   112,   113,   114,   115,
1750         116,   117,   118,   119,   120,   121,   122,   123,   124,   125,
1751         126,   127,   128,   129,   130,   131,   132,   133,   134,   135,
1752         136,   137,   138,   139,   140,   141,   142,   143,   144,   145,
1753         146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
1754         156,   157,   158,   159,   160,   161,   162,   163,   164,   165,
1755         166,   167,   168,   169,   170,   171,   172,   173,   174,   175,
1756         176,   177,   178,   179,   180,   181,   182,   183,   184,   185,
1757         186,   187,   188,   189,   190,   191,   192,   193,   194,   195,
1758         196,   197,   198,   199,   200,   201,   202,   203,   204,   205,
1759         206,   207,   208,   209,   210,   211,   212,   213,   214,   215,
1760         216,   217,   218,   219,   220,   221,   222,   223,   224,   225,
1761         226,   227,   228,   229,   230,   231,   232,   233,   234,   235,
1762         236,   237,   238,   239,   240,   241,   242,   243,   244,   245,
1763         246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
1764         256,   257,   258,   259,   260,   261,   262,   263,   264,   265,
1765         266,   267,   268,   269,   328,  1104,    53,    54,    55,    56,
1766         329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
1767          67,    68,    69,    70,    71,    72,    73,    74,    75,    76,
1768          77,    78,    79,    80,    81,    82,    83,    84,    85,    86,
1769          87,    88,    89,    90,    91,    92,    93,    94,    95,    96,
1770          97,    98,    99,   100,   101,   102,   103,   104,   105,   106,
1771         107,   108,   109,   110,   111,   112,   113,   114,   115,   116,
1772         117,   118,   119,   120,   121,   122,   123,   124,   125,   126,
1773         127,   128,   129,   130,   131,   132,   133,   134,   135,   136,
1774         137,   138,   139,   140,   141,   142,   143,   144,   145,   146,
1775         147,   148,   149,   150,   151,   152,   153,   154,   155,   156,
1776         157,   158,   159,   160,   161,   162,   163,   164,   165,   166,
1777         167,   168,   169,   170,   171,   172,   173,   174,   175,   176,
1778         177,   178,   179,   180,   181,   182,   183,   184,   185,   186,
1779         187,   188,   189,   190,   191,   192,   193,   194,   195,   196,
1780         197,   198,   199,   200,   201,   202,   203,   204,   205,   206,
1781         207,   208,   209,   210,   211,   212,   213,   214,   215,   216,
1782         217,   218,   219,   220,   221,   222,   223,   224,   225,   226,
1783         227,   228,   229,   230,   231,   232,   233,   234,   235,   236,
1784         237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
1785         247,   248,   249,   250,   251,   252,   253,   254,   255,   256,
1786         257,   258,   259,   260,   261,   262,   263,   264,   265,   266,
1787         267,   268,   269,   328,  1105,    53,    54,    55,    56,   329,
1788         330,   331,   332,   333,   334,   335,   336,   337,   338,    67,
1789        68,    69,    70,    71,    72,    73,    74,    75,    76,    77,        68,    69,    70,    71,    72,    73,    74,    75,    76,    77,
1790        78,    79,    80,    81,    82,    83,    84,    85,    86,    87,        78,    79,    80,    81,    82,    83,    84,    85,    86,    87,
1791        88,    89,    90,    91,    92,    93,    94,    95,    96,    97,        88,    89,    90,    91,    92,    93,    94,    95,    96,    97,
# Line 1469  static const short int yytable[] = Line 1805  static const short int yytable[] =
1805       228,   229,   230,   231,   232,   233,   234,   235,   236,   237,       228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
1806       238,   239,   240,   241,   242,   243,   244,   245,   246,   247,       238,   239,   240,   241,   242,   243,   244,   245,   246,   247,
1807       248,   249,   250,   251,   252,   253,   254,   255,   256,   257,       248,   249,   250,   251,   252,   253,   254,   255,   256,   257,
1808       258,   259,   260,   261,   262,   263       258,   259,   260,   261,   262,   263,   264,   265,   266,   267,
1809         268,   269,   409,   411,   412,   470
1810  };  };
1811    
1812  static const short int yycheck[] =  static const yytype_int16 yycheck[] =
1813  {  {
1814        14,    14,   467,    16,    17,    18,    19,    20,    21,    22,        15,    15,    17,    18,    19,    20,    21,    22,    23,    24,
1815        23,    24,    25,    26,    27,   588,   272,   273,   279,     5,        25,    26,    27,    28,    29,    30,    31,   752,   491,    58,
1816       272,   273,   279,   734,   279,   736,    21,     6,     7,    32,        59,    60,    61,    62,    63,    64,    65,    66,   947,   719,
1817        25,    25,   728,   225,   226,    29,   732,    40,    33,    21,         5,   288,   277,   742,    32,   519,   520,   915,   522,   736,
1818        23,    24,    52,    53,    54,    55,    56,    57,    58,    59,       285,   286,   930,   281,   282,   281,   282,   528,   288,   288,
1819        60,    33,     1,    36,     3,    34,    29,    40,    24,    22,       531,     1,   536,     3,    37,  1100,   537,    37,   542,   912,
1820        42,    38,    35,    52,    53,    54,    55,    56,    57,    58,       541,   950,  1107,   952,    33,    34,   539,   511,    23,    19,
1821        59,    60,    21,    36,    23,    24,    22,    23,    27,    41,        23,    21,    22,    22,    27,    25,    19,    23,   522,    27,
1822        23,    24,    34,    32,    22,    25,    25,    33,    37,    38,        30,    31,   563,    20,    39,    35,    36,    37,    31,    39,
1823        39,    29,    41,    39,    21,     0,    42,    40,    38,    25,        27,    39,   536,    22,    37,    21,    30,    40,   542,    23,
1824        25,    39,    41,    33,    42,   570,    33,   572,   573,    39,        37,    27,    36,    40,   957,    31,    89,    23,    37,    89,
1825        41,    42,    38,    41,    42,     8,    24,   828,    11,    12,         9,    10,    11,    12,    13,    14,    15,    16,    17,    18,
1826        13,    14,    15,    16,    17,    18,    19,    20,    36,    23,        36,    21,    22,    22,    19,    20,    21,    21,    22,    22,
1827         6,     7,   224,   598,    25,    29,    25,   848,   849,    24,       225,   226,    20,    32,    34,    19,    31,    21,    38,    23,
1828       605,   606,   607,   608,   609,   610,   611,   612,   613,     8,        24,    34,    37,    38,    38,    40,    34,    31,    19,    34,
1829        24,    36,    11,    12,    13,    14,    15,    16,    17,    18,        39,  1196,    37,    37,    38,   501,   502,   503,   504,   505,
1830        19,    20,   271,    23,    24,   426,    39,   276,   277,   426,       506,   507,   508,   509,   510,   277,   512,   513,   514,   515,
1831         8,   426,   281,    11,    12,    13,    14,    15,    16,    17,        23,   517,    30,   285,   286,    23,   280,     0,   290,   283,
1832        18,    19,    20,    25,    21,    21,    23,    23,    25,    25,        38,     6,    22,    36,     9,    10,    11,    12,    13,    14,
1833        40,    21,    39,    23,    23,    24,    33,    33,   454,   516,        15,    16,    17,    18,    34,  1084,   281,   282,    39,    40,
1834       517,    21,   454,    33,     9,    10,    11,    12,    13,    14,      1078,   286,    21,    58,    59,    60,    61,    62,    63,    64,
1835        15,    16,    17,    18,    19,    20,    11,    12,    13,    14,        65,    66,    31,   910,    32,  1104,  1105,    19,    19,    21,
1836        15,    16,    17,    18,    19,    20,    21,    11,    12,    13,        21,    23,    24,    24,   222,   223,    19,    27,    19,    31,
1837        14,    15,    16,    17,    18,    19,    20,   702,   224,   225,        31,    24,    23,    33,   715,    31,   717,   718,    31,    31,
1838       226,    29,    22,    39,   225,    23,    21,    40,    40,   822,        31,    37,    21,   500,   728,    37,   730,   224,    27,   224,
1839        24,    40,   825,   718,   427,   428,   429,   430,   431,   432,       225,   226,   733,   222,   223,    37,    21,    21,    21,   546,
1840       433,   434,   435,   436,   437,    35,    25,   280,    25,    41,       500,   500,    27,    27,    27,   552,    34,    34,   941,    37,
1841        39,    34,    28,    28,    41,    29,   225,   226,    11,    12,        37,    15,   753,   946,   289,   225,   226,    34,    23,   752,
1842        13,    14,    15,    16,    17,    18,    19,    20,    29,    28,        37,   762,   763,   764,   765,   766,   767,   768,   769,   770,
1843        34,    29,    41,    23,    29,    41,   306,    28,   308,   309,       771,   772,   773,    34,    22,   779,    37,    39,    40,    23,
1844       310,   311,   312,   313,   314,   315,    29,    35,    40,    23,       781,   546,   222,   223,    21,    22,    21,    22,   546,     6,
1845        23,    40,    38,    22,    21,    42,    40,    21,    24,    21,       546,    38,     9,    10,    11,    12,    13,    14,    15,    16,
1846        39,    29,   335,    24,    27,    24,   339,    24,   341,   342,        17,    18,   948,   949,   575,   576,   287,   288,    37,   344,
1847       343,   344,   345,    24,   347,    21,   349,   350,   351,   352,        19,   278,   279,    34,    27,    20,    31,    31,   353,   225,
1848        24,    24,    24,   356,   357,    14,   359,   360,    28,    26,        21,    19,    19,    33,   359,    37,   361,   362,   363,   364,
1849        21,    39,    25,    38,    29,    25,    35,    29,    23,    40,       365,    38,   367,    22,   369,   370,   371,   372,   373,    38,
1850       373,   374,   375,    39,    38,    29,    34,   380,   381,   382,       375,   376,   377,   378,   379,  1074,  1254,   382,  1077,   384,
1851       383,   384,   385,    34,   839,    29,    29,    34,    29,    29,        38,    23,   387,    23,    19,    39,    27,   392,   393,   394,
1852        29,    29,    34,    29,    40,    29,    41,    29,    35,    26,        26,   396,   397,   398,    26,    32,    42,    27,    23,    33,
1853        35,    25,    35,   406,    34,   408,    23,    29,    23,    34,      1080,    27,    33,    27,    42,   410,    39,   412,    27,    26,
1854        26,    32,    35,    24,    45,    34,    34,    24,    38,    25,       415,   416,  1321,   418,   419,    42,    27,    32,    39,   424,
1855        32,    35,    35,    91,    34,    34,    25,    35,    21,    34,       425,   426,   427,   428,   429,   430,   431,    21,    27,    39,
1856        25,    22,    21,    25,    91,    91,    38,    25,   442,   443,        39,     6,    27,   904,     9,    10,    11,    12,    13,    14,
1857        25,    91,    91,    29,    45,    35,    25,    29,    25,    29,        15,    16,    17,    18,    26,    38,    33,    36,    38,    40,
1858        25,   455,   456,   457,   458,   459,    29,    41,    29,    29,        36,    21,  1177,    38,    21,    34,    20,    19,   929,   922,
1859        41,    33,    91,    91,    38,    91,    32,    25,    29,    32,        19,    22,    22,    19,    22,    36,    89,   472,   942,    38,
1860        35,    22,    32,    40,    38,    34,    32,    32,    35,   482,       475,    25,    27,   318,    22,   320,   321,   322,   323,   324,
1861       483,   484,   485,   486,   487,   488,   489,   490,   491,   492,       325,   326,   327,    22,    22,    89,    22,    22,    19,    89,
1862       493,   494,   495,   496,    91,    91,   499,   500,    34,    33,        22,    37,   955,     7,     8,     9,    10,    11,    12,    13,
1863        35,   501,   502,   503,   504,   505,   506,   507,   508,   509,        14,    15,    16,    17,    18,    22,    26,   511,    32,    22,
1864        34,    33,    35,   516,   517,    34,    32,   520,    35,   522,        19,    22,    24,    19,    36,   519,   520,    38,   522,    27,
1865        33,   524,   501,   502,   503,   504,   505,   506,   507,   508,        23,    23,    38,    33,    19,   529,   530,    32,    27,    36,
1866       509,    23,   535,   536,   537,   538,   539,   540,   541,   542,        27,    27,   536,    37,    32,    27,    37,    27,   542,    32,
1867       543,   544,   545,   546,   547,    91,    91,    91,    22,    32,        40,    30,    27,   547,   548,   549,   550,    27,    27,   553,
1868        41,    39,    36,    25,    23,    41,    36,     5,   265,    41,        37,    27,    27,    37,    32,   289,     9,    10,    11,    12,
1869        36,    25,    35,    41,    91,    36,    29,    25,    21,    26,        13,    14,    15,    16,    17,    18,    19,    27,    38,    33,
1870        32,   575,    23,    91,   578,   579,   580,   581,    25,    35,       575,   576,    27,   602,   603,   604,   605,   606,   607,   608,
1871       584,    40,    25,    25,    34,    39,    41,    24,    40,    34,       609,   610,    33,   588,   589,   590,   591,   592,   593,   594,
1872       593,   594,   596,    91,    34,    41,    40,    32,    29,    35,       595,   596,   597,   598,   599,   600,   601,     9,    10,    11,
1873        41,    40,    35,    41,    36,    34,    21,    41,    36,    36,        12,    13,    14,    15,    16,    17,    18,    27,    39,    33,
1874        40,   615,    32,   617,    40,    40,    40,    36,    40,    36,       615,   616,   617,   618,    33,    19,    39,    27,   623,   624,
1875        41,   280,    35,    34,    25,    41,    34,    41,    40,    32,        27,    24,    21,  1094,    32,    23,   631,   632,   633,    19,
1876        91,    41,    41,   636,    32,    41,    40,    26,    35,    41,        21,   636,     9,    10,    11,    12,    13,    14,    15,    16,
1877       643,    41,   645,   646,   647,    40,   649,    34,   651,    40,        17,    18,   647,   271,   649,    27,   651,    43,    21,    32,
1878        34,    41,    29,    21,    40,    24,    36,    40,    24,    40,        89,    30,    33,    23,    32,    89,    32,    23,    30,   664,
1879        34,   664,    40,   666,    35,    41,    24,    40,    91,    24,       665,   666,   667,   668,   669,   670,   671,   672,   673,   674,
1880       673,   674,   675,   676,   677,   678,   679,   680,   681,    27,       675,   676,   677,   678,   679,    24,   681,    30,   683,    33,
1881       683,    35,   685,    27,    91,    25,    91,    25,    25,    35,        89,    23,    33,    89,    89,    32,    23,    89,    36,    32,
1882        41,    40,    91,    29,    39,    91,    29,    91,   405,    91,        22,    22,    33,    38,    89,    30,    30,    22,    31,   704,
1883       704,   705,   706,    91,   708,    29,    29,    42,   712,    38,       705,    23,    89,    33,    32,    23,    19,    30,    23,    20,
1884        25,    24,   712,    24,    42,   719,    42,    42,    38,    40,        36,    23,    19,    27,  1177,    89,   720,    23,    23,   723,
1885        28,   725,   726,    35,   728,   729,   730,    34,   732,   733,       724,   725,   726,    32,   728,    27,   730,    89,   732,    33,
1886       734,    91,   736,   733,   734,    29,   736,    42,    40,    25,        23,   735,   736,    36,    89,    43,    27,    27,   472,   743,
1887        29,    25,    29,    28,    25,    40,    29,   406,    91,    28,       744,    27,    23,    32,    32,    89,    23,   751,    27,    89,
1888       753,   754,    45,   756,   757,    35,    21,    29,   465,    91,        89,    27,    39,    27,    27,    33,    39,   602,   603,   604,
1889        42,    25,    29,    23,   764,   765,    25,    42,    23,    91,       605,   606,   607,   608,   609,   610,    23,    27,    89,    36,
1890       770,    42,    23,    21,    42,    38,   779,    23,    21,    36,        23,   775,    27,   777,    30,   779,    23,    31,    27,    89,
1891        34,   440,   441,    35,   787,   764,   765,    29,    25,    42,        30,    32,    20,    22,    30,    33,    38,    32,    89,    32,
1892       449,    38,   499,   500,    39,    34,    36,   800,    29,    25,        22,    32,   526,   527,    36,    32,    40,    33,    33,    30,
1893       459,   801,   802,    25,    29,    34,    29,    25,    28,    45,        22,    30,    32,    31,   809,    31,   540,    89,    33,    32,
1894        34,    25,    40,    34,    23,    25,    21,    36,   525,    23,        30,   816,    33,   818,   819,   820,    31,   822,   823,   553,
1895        23,    91,   801,   802,   828,    41,    39,    34,   828,   833,        33,    33,   827,   828,    89,   830,    32,   832,    89,    40,
1896        23,   831,   832,   833,   834,    91,    21,    36,    34,    25,        21,    20,    37,    30,    21,   840,    39,    37,    37,    33,
1897        38,   845,   549,   847,   848,   849,    25,    41,   848,   849,        23,   575,   576,   471,    37,   850,     5,   852,    23,    37,
1898        40,    38,    36,    25,    25,   834,    25,   516,   517,    25,        34,    33,    33,    39,    39,    89,   861,   862,   863,   864,
1899        36,    34,    25,    25,    32,    39,    36,    21,    21,    21,       865,   866,   867,   868,   869,   870,   871,   872,    39,   874,
1900       870,   871,    32,   873,    91,    40,    91,    34,    36,    91,        27,   876,    23,   878,    23,   880,    39,    24,    19,    89,
1901        41,    32,   885,    91,    33,    25,    21,    24,    38,    36,        89,    21,    38,    33,    23,    33,    38,    23,    23,    27,
1902        38,   870,   871,    36,    40,    21,    25,    21,    21,    32,        22,    89,    37,    39,    38,    38,    38,    27,    24,    32,
1903       900,   901,    21,    91,    38,    33,   910,    38,    40,    21,        21,    38,   906,   907,   908,    39,   910,   911,   912,    38,
1904        24,    38,    33,    38,    29,   574,    25,   576,   577,    25,       914,   915,    39,    38,    38,    33,    39,   921,    32,    32,
1905        21,    25,    21,   582,   583,    33,    42,    38,   587,   588,        39,    33,    38,    38,  1387,    32,   930,    33,    27,    39,
1906        40,    38,    25,    33,   593,   594,   643,   644,    40,    33,        34,    36,    32,   561,   938,   939,    38,   941,   942,   943,
1907        29,    25,   649,   650,    25,    25,    25,    25,   655,    40,       944,    36,   946,   947,   948,   949,   950,    36,   952,    36,
1908        42,    38,    38,    38,    25,   614,    25,   616,    40,    25,        34,    34,    38,   957,    19,    36,    38,    34,    38,    38,
1909        25,   847,    38,    40,    39,    38,    38,   845,    38,   910,        19,    39,    23,    39,    34,    33,    30,   996,   997,    32,
1910       574,    39,   833,   274,   274,   682,   719,   684,   733,   454,       704,   705,    38,    23,   979,   980,    36,   982,   983,   984,
1911        44,   279,   274,   279,   275,    -1,   274,   277,   454,    -1,        21,    39,    39,   988,    32,   719,    39,   721,   722,    23,
1912        -1,    -1,    -1,    -1,   597,    -1,   274,    -1,   274,    -1,        39,    89,    38,   727,  1457,    39,    39,   731,    89,    39,
1913       277,    -1,    -1,    -1,    -1,   279,    -1,    -1,    -1,    -1,        39,    89,    39,   631,   632,    30,    39,   741,   742,    38,
1914        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,      1015,    39,  1041,  1042,    89,    39,    38,    30,  1023,    39,
1915        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,        39,    24,    89,    39,   652,    33,    32,    23,    38,    31,
1916        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,        39,    38,    32,    27,    31,  1040,    19,    89,    31,    31,
1917        -1,    -1,    -1,    -1,   703,    -1,   753,    -1,   707,    -1,       774,    22,   776,    38,    22,    31,    34,    38,    38,  1054,
1918       757,    -1,   711,    -1,   761,    -1,    -1,    -1,    -1,    -1,        30,    38,    34,    38,    33,    32,    22,   685,    31,  1088,
1919        -1,   768,    -1,    -1,    -1,    -1,    -1,    -1,   727,    -1,        23,    22,    89,    39,    38,    25,    89,    22,    33,    23,
1920        -1,    -1,   731,    -1,    -1,    -1,   735,    -1,   737,    -1,        21,    23,    25,    23,  1078,    89,   921,    23,    89,    23,
1921        -1,    -1,    -1,   790,    -1,    -1,    -1,    -1,    -1,    -1,      1084,    23,    23,  1087,    89,    33,    23,    23,    89,    21,
1922        -1,    -1,   799,    -1,    -1,    -1,    -1,    -1,    -1,    -1,        39,    38,    27,    32,    39,    38,  1100,    37,    27,  1103,
1923       807,    -1,   809,   762,   763,    -1,    -1,    -1,    -1,    -1,      1104,  1105,   947,  1107,    27,   950,    40,   952,  1137,  1138,
1924        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,        27,    36,    32,    23,    89,    33,    32,    32,    22,    40,
1925        -1,    -1,   829,   830,    -1,    -1,    -1,    -1,    -1,    -1,        22,    40,    22,    32,    36,    38,    40,  1132,    33,    40,
1926        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,        38,    32,    38,    26,    33,    32,    27,    40,    23,    27,
1927        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,        38,    23,    38,    27,    39,    26,    38,    23,    38,  1154,
1928        -1,    -1,    -1,    -1,    -1,   862,   863,    -1,    -1,    -1,        27,   996,   997,  1158,    26,    38,    89,  1002,    38,    89,
1929        -1,    -1,    -1,   822,   823,   824,   825,     3,     4,     5,        33,    89,    23,    27,    43,    39,    19,    38,    27,    23,
1930         6,    -1,     8,     9,    10,    11,    12,    13,    14,    15,        40,   905,    27,    21,    23,   909,    32,    37,    40,    21,
1931        16,    17,    18,    19,    20,    21,    22,    23,    24,    25,        21,    19,    89,    40,    21,    19,   920,    31,   816,   817,
1932        26,    27,    28,    29,    30,    31,    32,    33,    34,    35,      1194,    36,  1196,    40,   822,    89,  1041,  1042,   826,    34,
1933        36,    37,    38,    39,    40,    41,    42,    43,    44,    45,        89,    21,    21,    89,    40,    32,   940,    32,    40,    27,
1934        46,    47,    48,    49,    50,    51,    52,    53,    54,    55,       838,   945,  1217,    37,   948,   949,    33,   951,    32,   953,
1935        56,    57,    58,    59,    60,    61,    62,    63,    64,    65,        23,    36,    34,    31,    23,    38,    27,    27,    23,    31,
1936        66,    67,    68,    69,    70,    71,    72,    73,    74,    75,        27,    23,    26,    43,    32,    23,    32,    23,    27,  1084,
1937        76,    77,    78,    79,    80,    81,    82,    83,    84,    85,      1085,  1086,  1087,  1088,    19,   873,    23,   875,    38,    32,
1938        86,    87,    88,    89,    90,    91,    92,    93,    94,    95,      1254,    38,    21,    34,    39,    37,    89,    19,    19,  1104,
1939        96,    97,    98,    99,   100,   101,   102,   103,   104,   105,      1105,    89,    32,    23,    21,    21,    19,    32,    89,    21,
1940       106,   107,   108,   109,   110,   111,   112,   113,   114,   115,        19,    34,    23,    32,    21,    33,    19,    32,    89,    23,
1941       116,   117,   118,   119,   120,   121,   122,   123,   124,   125,        34,    22,    89,  1288,    23,    89,    36,    23,    34,    31,
1942       126,   127,   128,   129,   130,   131,   132,   133,   134,   135,        38,    23,  1137,  1138,    39,  1140,    36,    34,    36,    34,
1943       136,   137,   138,   139,   140,   141,   142,   143,   144,   145,        23,    34,    32,    23,    23,    23,    34,    24,    39,    30,
1944       146,   147,   148,   149,   150,   151,   152,   153,   154,   155,        37,    19,    34,    38,    19,    19,    30,  1321,    89,    19,
1945       156,   157,   158,   159,   160,   161,   162,   163,   164,   165,        32,    37,    37,    30,    33,    89,    32,    23,    39,    32,
1946       166,   167,   168,   169,   170,   171,   172,   173,   174,   175,        24,    33,    31,    34,    27,    23,  1181,  1182,    36,    34,
1947       176,   177,   178,   179,   180,   181,   182,   183,   184,   185,      1074,  1075,  1076,  1077,    36,    42,  1080,    34,    39,  1354,
1948       186,   187,   188,   189,   190,   191,   192,   193,   194,   195,        19,   979,    38,    38,    22,   983,    19,    23,    31,    37,
1949       196,   197,   198,   199,   200,   201,   202,   203,   204,   205,        89,    19,    19,    89,    19,    89,    30,   995,    33,    36,
1950       206,   207,   208,   209,   210,   211,   212,   213,   214,   215,        32,    32,  1000,    33,    33,    19,    32,    24,    31,    89,
1951       216,   217,   218,   219,   220,   221,   222,   223,   224,     3,        19,    31,    36,    24,    22,    27,    38,    38,    36,    23,
1952         4,     5,    -1,     7,     8,     9,    10,    11,    12,    13,        39,    23,    38,    36,    39,    32,    23,    19,  1026,    23,
1953        14,    15,    16,    17,    18,    19,    20,    21,    22,    23,        33,    32,    32,    19,    33,    31,    23,    22,    36,    89,
1954        24,    25,    26,    27,    28,    29,    30,    31,    32,    33,        22,  1039,    32,    36,  1419,    40,    27,    38,    31,    38,
1955        34,    35,    36,    37,    38,    39,    40,    41,    42,    43,        38,  1049,    31,  1051,    38,    23,    23,    23,    38,    23,
1956        44,    45,    46,    47,    48,    49,    50,    51,    52,    53,        23,    38,    40,    36,    36,    26,    36,    38,    23,    38,
1957        54,    55,    56,    57,    58,    59,    60,    61,    62,    63,        23,    33,    37,    23,    23,  1194,    36,    36,    30,    36,
1958        64,    65,    66,    67,    68,    69,    70,    71,    72,    73,        36,  1103,  1321,    37,  1457,   286,   286,   283,  1087,   288,
1959        74,    75,    76,    77,    78,    79,    80,    81,    82,    83,       283,   955,    50,    -1,    -1,    -1,   288,   283,    -1,    -1,
1960        84,    85,    86,    87,    88,    89,    90,    91,    92,    93,        -1,    -1,   546,    -1,    -1,    -1,  1321,    -1,    -1,   288,
1961        94,    95,    96,    97,    98,    99,   100,   101,   102,   103,        -1,    -1,   288,   288,    -1,    -1,    -1,    -1,    -1,    -1,
1962       104,   105,   106,   107,   108,   109,   110,   111,   112,   113,        -1,    -1,    -1,    -1,    -1,   288,    -1,   288,    -1,  1127,
1963       114,   115,   116,   117,   118,   119,   120,   121,   122,   123,      1128,     3,     4,     5,     6,     7,     8,     9,    10,    11,
      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,  
1964        12,    13,    14,    15,    16,    17,    18,    19,    20,    21,        12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
1965        22,    23,    24,    25,    26,    27,    28,    29,    30,    31,        22,    23,    24,    25,    26,    27,    28,    29,    30,    31,
1966        32,    33,    34,    35,    36,    37,    38,    39,    40,    41,        32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
# Line 1656  static const short int yycheck[] = Line 1982  static const short int yycheck[] =
1982       192,   193,   194,   195,   196,   197,   198,   199,   200,   201,       192,   193,   194,   195,   196,   197,   198,   199,   200,   201,
1983       202,   203,   204,   205,   206,   207,   208,   209,   210,   211,       202,   203,   204,   205,   206,   207,   208,   209,   210,   211,
1984       212,   213,   214,   215,   216,   217,   218,   219,   220,   221,       212,   213,   214,   215,   216,   217,   218,   219,   220,   221,
1985       222,   223,   224,     3,     4,     5,    -1,    -1,     8,     9,       222,   288,   224,     3,     4,     5,     6,     7,     8,     9,
1986        10,    11,    12,    13,    14,    15,    16,    17,    18,    19,        10,    11,    12,    13,    14,    15,    16,    17,    18,    19,
1987        20,    21,    22,    23,    24,    25,    26,    27,    28,    29,        20,    21,    22,    23,    24,    25,    26,    27,    28,    29,
1988        30,    31,    32,    33,    34,    35,    36,    37,    38,    39,        30,    31,    32,    33,    34,    35,    36,    37,    38,    39,
# Line 1678  static const short int yycheck[] = Line 2004  static const short int yycheck[] =
2004       190,   191,   192,   193,   194,   195,   196,   197,   198,   199,       190,   191,   192,   193,   194,   195,   196,   197,   198,   199,
2005       200,   201,   202,   203,   204,   205,   206,   207,   208,   209,       200,   201,   202,   203,   204,   205,   206,   207,   208,   209,
2006       210,   211,   212,   213,   214,   215,   216,   217,   218,   219,       210,   211,   212,   213,   214,   215,   216,   217,   218,   219,
2007       220,   221,   222,   223,   224,     3,     4,     5,     6,     7,       220,   221,   288,   223,   224,     3,     4,     5,     6,     7,
2008         8,     9,    10,    11,    12,    13,    14,    15,    16,    17,         8,     9,    10,    11,    12,    13,    14,    15,    16,    17,
2009        18,    19,    20,    21,    22,    23,    24,    25,    26,    27,        18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
2010        28,    29,    30,    31,    32,    33,    34,    35,    36,    37,        28,    29,    30,    31,    32,    33,    34,    35,    36,    37,
# Line 1700  static const short int yycheck[] = Line 2026  static const short int yycheck[] =
2026       188,   189,   190,   191,   192,   193,   194,   195,   196,   197,       188,   189,   190,   191,   192,   193,   194,   195,   196,   197,
2027       198,   199,   200,   201,   202,   203,   204,   205,   206,   207,       198,   199,   200,   201,   202,   203,   204,   205,   206,   207,
2028       208,   209,   210,   211,   212,   213,   214,   215,   216,   217,       208,   209,   210,   211,   212,   213,   214,   215,   216,   217,
2029       218,   219,   220,   221,   222,   223,     3,     4,     5,     6,       218,   219,   220,   221,   288,   284,   224,     3,     4,     5,
2030        -1,     8,     9,    10,    11,    12,    13,    14,    15,    16,         6,     7,     8,     9,    10,    11,    12,    13,    14,    15,
       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,     7,     8,     9,    10,    11,    12,    13,    14,    15,  
2031        16,    17,    18,    19,    20,    21,    22,    23,    24,    25,        16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
2032        26,    27,    28,    29,    30,    31,    32,    33,    34,    35,        26,    27,    28,    29,    30,    31,    32,    33,    34,    35,
2033        36,    37,    38,    39,    40,    41,    42,    43,    44,    45,        36,    37,    38,    39,    40,    41,    42,    43,    44,    45,
# Line 1744  static const short int yycheck[] = Line 2048  static const short int yycheck[] =
2048       186,   187,   188,   189,   190,   191,   192,   193,   194,   195,       186,   187,   188,   189,   190,   191,   192,   193,   194,   195,
2049       196,   197,   198,   199,   200,   201,   202,   203,   204,   205,       196,   197,   198,   199,   200,   201,   202,   203,   204,   205,
2050       206,   207,   208,   209,   210,   211,   212,   213,   214,   215,       206,   207,   208,   209,   210,   211,   212,   213,   214,   215,
2051       216,   217,   218,   219,   220,   221,   222,   223,     3,     4,       216,   217,   218,   219,   220,   221,   283,   283,   224,     3,
2052         5,    -1,    -1,     8,     9,    10,    11,    12,    13,    14,         4,     5,     6,     7,     8,     9,    10,    11,    12,    13,
       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,    13,  
2053        14,    15,    16,    17,    18,    19,    20,    21,    22,    23,        14,    15,    16,    17,    18,    19,    20,    21,    22,    23,
2054        24,    25,    26,    27,    28,    29,    30,    31,    32,    33,        24,    25,    26,    27,    28,    29,    30,    31,    32,    33,
2055        34,    35,    36,    37,    38,    39,    40,    41,    42,    43,        34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
# Line 1789  static const short int yycheck[] = Line 2071  static const short int yycheck[] =
2071       194,   195,   196,   197,   198,   199,   200,   201,   202,   203,       194,   195,   196,   197,   198,   199,   200,   201,   202,   203,
2072       204,   205,   206,   207,   208,   209,   210,   211,   212,   213,       204,   205,   206,   207,   208,   209,   210,   211,   212,   213,
2073       214,   215,   216,   217,   218,   219,   220,   221,   222,   223,       214,   215,   216,   217,   218,   219,   220,   221,   222,   223,
2074         3,     4,     5,    -1,    -1,     8,     9,    10,    11,    12,         3,     4,     5,     6,     7,     8,     9,    10,    11,    12,
2075        13,    14,    15,    16,    17,    18,    19,    20,    21,    22,        13,    14,    15,    16,    17,    18,    19,    20,    21,    22,
2076        23,    24,    25,    26,    27,    28,    29,    30,    31,    32,        23,    24,    25,    26,    27,    28,    29,    30,    31,    32,
2077        33,    34,    35,    36,    37,    38,    39,    40,    41,    42,        33,    34,    35,    36,    37,    38,    39,    40,    41,    42,
# Line 1810  static const short int yycheck[] = Line 2092  static const short int yycheck[] =
2092       183,   184,   185,   186,   187,   188,   189,   190,   191,   192,       183,   184,   185,   186,   187,   188,   189,   190,   191,   192,
2093       193,   194,   195,   196,   197,   198,   199,   200,   201,   202,       193,   194,   195,   196,   197,   198,   199,   200,   201,   202,
2094       203,   204,   205,   206,   207,   208,   209,   210,   211,   212,       203,   204,   205,   206,   207,   208,   209,   210,   211,   212,
2095       213,   214,   215,   216,   217,   218,   219,   220,   221,   222,       213,   214,   215,   216,   217,   218,   219,   220,   221,     3,
2096       223,     3,     4,     5,    -1,    -1,     8,     9,    10,    11,         4,     5,     6,     7,     8,     9,    10,    11,    12,    13,
2097        12,    13,    14,    15,    16,    17,    18,    19,    20,    21,        14,    15,    16,    17,    18,    19,    20,    21,    22,    23,
2098        22,    23,    24,    25,    26,    27,    28,    29,    30,    31,        24,    25,    26,    27,    28,    29,    30,    31,    32,    33,
2099        32,    33,    34,    35,    36,    37,    38,    39,    40,    41,        34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
2100        42,    43,    44,    45,    46,    47,    48,    49,    50,    51,        44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
2101        52,    53,    54,    55,    56,    57,    58,    59,    60,    61,        54,    55,    56,    57,    58,    59,    60,    61,    62,    63,
2102        62,    63,    64,    65,    66,    67,    68,    69,    70,    71,        64,    65,    66,    67,    68,    69,    70,    71,    72,    73,
2103        72,    73,    74,    75,    76,    77,    78,    79,    80,    81,        74,    75,    76,    77,    78,    79,    80,    81,    82,    83,
2104        82,    83,    84,    85,    86,    87,    88,    89,    90,    91,        84,    85,    86,    87,    88,    89,    90,    91,    92,    93,
2105        92,    93,    94,    95,    96,    97,    98,    99,   100,   101,        94,    95,    96,    97,    98,    99,   100,   101,   102,   103,
2106       102,   103,   104,   105,   106,   107,   108,   109,   110,   111,       104,   105,   106,   107,   108,   109,   110,   111,   112,   113,
2107       112,   113,   114,   115,   116,   117,   118,   119,   120,   121,       114,   115,   116,   117,   118,   119,   120,   121,   122,   123,
2108       122,   123,   124,   125,   126,   127,   128,   129,   130,   131,       124,   125,   126,   127,   128,   129,   130,   131,   132,   133,
2109       132,   133,   134,   135,   136,   137,   138,   139,   140,   141,       134,   135,   136,   137,   138,   139,   140,   141,   142,   143,
2110       142,   143,   144,   145,   146,   147,   148,   149,   150,   151,       144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
2111       152,   153,   154,   155,   156,   157,   158,   159,   160,   161,       154,   155,   156,   157,   158,   159,   160,   161,   162,   163,
2112       162,   163,   164,   165,   166,   167,   168,   169,   170,   171,       164,   165,   166,   167,   168,   169,   170,   171,   172,   173,
2113       172,   173,   174,   175,   176,   177,   178,   179,   180,   181,       174,   175,   176,   177,   178,   179,   180,   181,   182,   183,
2114       182,   183,   184,   185,   186,   187,   188,   189,   190,   191,       184,   185,   186,   187,   188,   189,   190,   191,   192,   193,
2115       192,   193,   194,   195,   196,   197,   198,   199,   200,   201,       194,   195,   196,   197,   198,   199,   200,   201,   202,   203,
2116       202,   203,   204,   205,   206,   207,   208,   209,   210,   211,       204,   205,   206,   207,   208,   209,   210,   211,   212,   213,
2117       212,   213,   214,   215,   216,   217,   218,   219,   220,   221,       214,   215,   216,   217,   218,   219,   220,   221,     3,     4,
2118       222,   223,     3,     4,     5,    -1,    -1,     8,     9,    10,         5,     6,     7,     8,     9,    10,    11,    12,    13,    14,
2119        11,    12,    13,    14,    15,    16,    17,    18,    19,    20,        15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
2120        21,    22,    23,    24,    25,    26,    27,    28,    29,    30,        25,    26,    27,    28,    29,    30,    31,    32,    33,    34,
2121        31,    32,    33,    34,    35,    36,    37,    38,    39,    40,        35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
2122        41,    42,    43,    44,    45,    46,    47,    48,    49,    50,        45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
2123        51,    52,    53,    54,    55,    56,    57,    58,    59,    60,        55,    56,    57,    58,    59,    60,    61,    62,    63,    64,
2124        61,    62,    63,    64,    65,    66,    67,    68,    69,    70,        65,    66,    67,    68,    69,    70,    71,    72,    73,    74,
2125        71,    72,    73,    74,    75,    76,    77,    78,    79,    80,        75,    76,    77,    78,    79,    80,    81,    82,    83,    84,
2126        81,    82,    83,    84,    85,    86,    87,    88,    89,    90,        85,    86,    87,    88,    89,    90,    91,    92,    93,    94,
2127        91,    92,    93,    94,    95,    96,    97,    98,    99,   100,        95,    96,    97,    98,    99,   100,   101,   102,   103,   104,
2128       101,   102,   103,   104,   105,   106,   107,   108,   109,   110,       105,   106,   107,   108,   109,   110,   111,   112,   113,   114,
2129       111,   112,   113,   114,   115,   116,   117,   118,   119,   120,       115,   116,   117,   118,   119,   120,   121,   122,   123,   124,
2130       121,   122,   123,   124,   125,   126,   127,   128,   129,   130,       125,   126,   127,   128,   129,   130,   131,   132,   133,   134,
2131       131,   132,   133,   134,   135,   136,   137,   138,   139,   140,       135,   136,   137,   138,   139,   140,   141,   142,   143,   144,
2132       141,   142,   143,   144,   145,   146,   147,   148,   149,   150,       145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
2133       151,   152,   153,   154,   155,   156,   157,   158,   159,   160,       155,   156,   157,   158,   159,   160,   161,   162,   163,   164,
2134       161,   162,   163,   164,   165,   166,   167,   168,   169,   170,       165,   166,   167,   168,   169,   170,   171,   172,   173,   174,
2135       171,   172,   173,   174,   175,   176,   177,   178,   179,   180,       175,   176,   177,   178,   179,   180,   181,   182,   183,   184,
2136       181,   182,   183,   184,   185,   186,   187,   188,   189,   190,       185,   186,   187,   188,   189,   190,   191,   192,   193,   194,
2137       191,   192,   193,   194,   195,   196,   197,   198,   199,   200,       195,   196,   197,   198,   199,   200,   201,   202,   203,   204,
2138       201,   202,   203,   204,   205,   206,   207,   208,   209,   210,       205,   206,   207,   208,   209,   210,   211,   212,   213,   214,
2139       211,   212,   213,   214,   215,   216,   217,   218,   219,   220,       215,   216,   217,   218,   219,   220,   221,     3,     4,     5,
2140       221,   222,   223,     3,     4,     5,    -1,    -1,     8,     9,         6,     7,     8,     9,    10,    11,    12,    13,    14,    15,
2141        10,    11,    12,    13,    14,    15,    16,    17,    18,    19,        16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
2142        20,    21,    22,    23,    24,    25,    26,    27,    28,    29,        26,    27,    28,    29,    30,    31,    32,    33,    34,    35,
2143        30,    31,    32,    33,    34,    35,    36,    37,    38,    39,        36,    37,    38,    39,    40,    41,    42,    43,    44,    45,
2144        40,    41,    42,    43,    44,    45,    46,    47,    48,    49,        46,    47,    48,    49,    50,    51,    52,    53,    54,    55,
2145        50,    51,    52,    53,    54,    55,    56,    57,    58,    59,        56,    57,    58,    59,    60,    61,    62,    63,    64,    65,
2146        60,    61,    62,    63,    64,    65,    66,    67,    68,    69,        66,    67,    68,    69,    70,    71,    72,    73,    74,    75,
2147        70,    71,    72,    73,    74,    75,    76,    77,    78,    79,        76,    77,    78,    79,    80,    81,    82,    83,    84,    85,
2148        80,    81,    82,    83,    84,    85,    86,    87,    88,    89,        86,    87,    88,    89,    90,    91,    92,    93,    94,    95,
2149        90,    91,    92,    93,    94,    95,    96,    97,    98,    99,        96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
2150       100,   101,   102,   103,   104,   105,   106,   107,   108,   109,       106,   107,   108,   109,   110,   111,   112,   113,   114,   115,
2151       110,   111,   112,   113,   114,   115,   116,   117,   118,   119,       116,   117,   118,   119,   120,   121,   122,   123,   124,   125,
2152       120,   121,   122,   123,   124,   125,   126,   127,   128,   129,       126,   127,   128,   129,   130,   131,   132,   133,   134,   135,
2153       130,   131,   132,   133,   134,   135,   136,   137,   138,   139,       136,   137,   138,   139,   140,   141,   142,   143,   144,   145,
2154       140,   141,   142,   143,   144,   145,   146,   147,   148,   149,       146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
2155       150,   151,   152,   153,   154,   155,   156,   157,   158,   159,       156,   157,   158,   159,   160,   161,   162,   163,   164,   165,
2156       160,   161,   162,   163,   164,   165,   166,   167,   168,   169,       166,   167,   168,   169,   170,   171,   172,   173,   174,   175,
2157       170,   171,   172,   173,   174,   175,   176,   177,   178,   179,       176,   177,   178,   179,   180,   181,   182,   183,   184,   185,
2158       180,   181,   182,   183,   184,   185,   186,   187,   188,   189,       186,   187,   188,   189,   190,   191,   192,   193,   194,   195,
2159       190,   191,   192,   193,   194,   195,   196,   197,   198,   199,       196,   197,   198,   199,   200,   201,   202,   203,   204,   205,
2160       200,   201,   202,   203,   204,   205,   206,   207,   208,   209,       206,   207,   208,   209,   210,   211,   212,   213,   214,   215,
2161       210,   211,   212,   213,   214,   215,   216,   217,   218,   219,       216,   217,   218,   219,   220,   221,     3,     4,     5,     6,
2162       220,   221,   222,   223,     3,     4,     5,    -1,    -1,     8,         7,     8,     9,    10,    11,    12,    13,    14,    15,    16,
2163         9,    10,    11,    12,    13,    14,    15,    16,    17,    18,        17,    18,    19,    20,    21,    22,    23,    24,    25,    26,
2164        19,    20,    21,    22,    23,    24,    25,    26,    27,    28,        27,    28,    29,    30,    31,    32,    33,    34,    35,    36,
2165        29,    30,    31,    32,    33,    34,    35,    36,    37,    38,        37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
2166        39,    40,    41,    42,    43,    44,    45,    46,    47,    48,        47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
2167        49,    50,    51,    52,    53,    54,    55,    56,    57,    58,        57,    58,    59,    60,    61,    62,    63,    64,    65,    66,
2168        59,    60,    61,    62,    63,    64,    65,    66,    67,    68,        67,    68,    69,    70,    71,    72,    73,    74,    75,    76,
2169        69,    70,    71,    72,    73,    74,    75,    76,    77,    78,        77,    78,    79,    80,    81,    82,    83,    84,    85,    86,
2170        79,    80,    81,    82,    83,    84,    85,    86,    87,    88,        87,    88,    89,    90,    91,    92,    93,    94,    95,    96,
2171        89,    90,    91,    92,    93,    94,    95,    96,    97,    98,        97,    98,    99,   100,   101,   102,   103,   104,   105,   106,
2172        99,   100,   101,   102,   103,   104,   105,   106,   107,   108,       107,   108,   109,   110,   111,   112,   113,   114,   115,   116,
2173       109,   110,   111,   112,   113,   114,   115,   116,   117,   118,       117,   118,   119,   120,   121,   122,   123,   124,   125,   126,
2174       119,   120,   121,   122,   123,   124,   125,   126,   127,   128,       127,   128,   129,   130,   131,   132,   133,   134,   135,   136,
2175       129,   130,   131,   132,   133,   134,   135,   136,   137,   138,       137,   138,   139,   140,   141,   142,   143,   144,   145,   146,
2176       139,   140,   141,   142,   143,   144,   145,   146,   147,   148,       147,   148,   149,   150,   151,   152,   153,   154,   155,   156,
2177       149,   150,   151,   152,   153,   154,   155,   156,   157,   158,       157,   158,   159,   160,   161,   162,   163,   164,   165,   166,
2178       159,   160,   161,   162,   163,   164,   165,   166,   167,   168,       167,   168,   169,   170,   171,   172,   173,   174,   175,   176,
2179       169,   170,   171,   172,   173,   174,   175,   176,   177,   178,       177,   178,   179,   180,   181,   182,   183,   184,   185,   186,
2180       179,   180,   181,   182,   183,   184,   185,   186,   187,   188,       187,   188,   189,   190,   191,   192,   193,   194,   195,   196,
2181       189,   190,   191,   192,   193,   194,   195,   196,   197,   198,       197,   198,   199,   200,   201,   202,   203,   204,   205,   206,
2182       199,   200,   201,   202,   203,   204,   205,   206,   207,   208,       207,   208,   209,   210,   211,   212,   213,   214,   215,   216,
2183       209,   210,   211,   212,   213,   214,   215,   216,   217,   218,       217,   218,   219,   220,   221,     3,     4,     5,     6,     7,
      219,   220,   221,   222,   223,     3,     4,     5,    -1,    -1,  
2184         8,     9,    10,    11,    12,    13,    14,    15,    16,    17,         8,     9,    10,    11,    12,    13,    14,    15,    16,    17,
2185        18,    19,    20,    21,    22,    23,    24,    25,    26,    27,        18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
2186        28,    29,    30,    31,    32,    33,    34,    35,    36,    37,        28,    29,    30,    31,    32,    33,    34,    35,    36,    37,
# Line 1921  static const short int yycheck[] = Line 2202  static const short int yycheck[] =
2202       188,   189,   190,   191,   192,   193,   194,   195,   196,   197,       188,   189,   190,   191,   192,   193,   194,   195,   196,   197,
2203       198,   199,   200,   201,   202,   203,   204,   205,   206,   207,       198,   199,   200,   201,   202,   203,   204,   205,   206,   207,
2204       208,   209,   210,   211,   212,   213,   214,   215,   216,   217,       208,   209,   210,   211,   212,   213,   214,   215,   216,   217,
2205       218,   219,   220,   221,   222,   223       218,   219,   220,   221,     3,     4,     5,     6,     7,     8,
2206  };         9,    10,    11,    12,    13,    14,    15,    16,    17,    18,
2207          19,    20,    21,    22,    23,    24,    25,    26,    27,    28,
2208  /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing        29,    30,    31,    32,    33,    34,    35,    36,    37,    38,
2209     symbol of state STATE-NUM.  */        39,    40,    41,    42,    43,    44,    45,    46,    47,    48,
2210  static const unsigned short int yystos[] =        49,    50,    51,    52,    53,    54,    55,    56,    57,    58,
2211  {        59,    60,    61,    62,    63,    64,    65,    66,    67,    68,
2212         0,     1,     3,    21,    23,    24,    27,    32,    37,    38,        69,    70,    71,    72,    73,    74,    75,    76,    77,    78,
2213        39,    41,   228,   229,   230,   231,   270,   271,   272,   273,        79,    80,    81,    82,    83,    84,    85,    86,    87,    88,
2214       274,   275,   278,   279,   280,   281,   282,   317,   320,    24,        89,    90,    91,    92,    93,    94,    95,    96,    97,    98,
2215        38,    25,    25,    29,    35,    41,    25,    25,    41,    34,        99,   100,   101,   102,   103,   104,   105,   106,   107,   108,
2216         0,   225,   226,   268,   269,     3,     4,     5,     8,     9,       109,   110,   111,   112,   113,   114,   115,   116,   117,   118,
2217         119,   120,   121,   122,   123,   124,   125,   126,   127,   128,
2218         129,   130,   131,   132,   133,   134,   135,   136,   137,   138,
2219         139,   140,   141,   142,   143,   144,   145,   146,   147,   148,
2220         149,   150,   151,   152,   153,   154,   155,   156,   157,   158,
2221         159,   160,   161,   162,   163,   164,   165,   166,   167,   168,
2222         169,   170,   171,   172,   173,   174,   175,   176,   177,   178,
2223         179,   180,   181,   182,   183,   184,   185,   186,   187,   188,
2224         189,   190,   191,   192,   193,   194,   195,   196,   197,   198,
2225         199,   200,   201,   202,   203,   204,   205,   206,   207,   208,
2226         209,   210,   211,   212,   213,   214,   215,   216,   217,   218,
2227         219,   220,   221,     3,     4,     5,     6,     7,     8,     9,
2228        10,    11,    12,    13,    14,    15,    16,    17,    18,    19,        10,    11,    12,    13,    14,    15,    16,    17,    18,    19,
2229        20,    21,    22,    23,    24,    25,    26,    27,    28,    29,        20,    21,    22,    23,    24,    25,    26,    27,    28,    29,
2230        30,    31,    32,    33,    34,    35,    36,    37,    38,    39,        30,    31,    32,    33,    34,    35,    36,    37,    38,    39,
# Line 1954  static const unsigned short int yystos[] Line 2246  static const unsigned short int yystos[]
2246       190,   191,   192,   193,   194,   195,   196,   197,   198,   199,       190,   191,   192,   193,   194,   195,   196,   197,   198,   199,
2247       200,   201,   202,   203,   204,   205,   206,   207,   208,   209,       200,   201,   202,   203,   204,   205,   206,   207,   208,   209,
2248       210,   211,   212,   213,   214,   215,   216,   217,   218,   219,       210,   211,   212,   213,   214,   215,   216,   217,   218,   219,
2249       220,   221,   222,   223,   224,   259,   262,   263,   264,   267,       220,   221,   283,   283,   283,   288
      267,   267,   267,   267,   267,   267,   267,   267,   267,   267,  
      267,   267,    24,    25,    39,    40,    39,    21,    29,    33,  
       39,    32,    40,    22,    39,   268,    11,    12,    13,    14,  
       15,    16,    17,    18,    19,    20,   261,   262,   261,   261,  
      261,   261,   261,   261,   261,   261,     3,    11,    12,    13,  
       14,    15,    16,    17,    18,    19,    20,   264,    23,   283,  
       21,    23,    25,    33,   234,   283,   284,   285,   286,   294,  
      296,   297,   298,   299,   300,   301,   303,   305,   306,   307,  
      308,   309,   310,    21,    33,   236,   297,   307,   237,   297,  
      307,    21,    23,    33,   242,   284,   285,   286,   296,   303,  
      306,    29,   238,   293,   294,   283,    21,    25,    33,   235,  
      283,   295,   300,   304,   305,   319,    22,    23,    33,    39,  
       42,   232,   288,   289,   290,   291,   292,   318,   233,   288,  
      289,   290,   291,   292,   318,   259,   265,   267,   283,    21,  
       40,    40,    24,    40,    35,    25,    25,    39,    41,   262,  
       28,    41,    42,    28,    34,    29,   267,   267,   267,   267,  
      267,   267,   267,   267,   267,   267,   267,   267,    41,    29,  
      267,   267,   267,   267,    41,    28,    29,    34,   267,   267,  
      267,    41,    23,    29,   267,   267,   267,   267,   267,   267,  
       41,    28,    29,    40,    35,   259,   267,   267,    40,    38,  
       42,    40,    23,    23,    22,    21,    24,    21,    21,    27,  
       24,    29,   287,   290,   291,   292,   287,   287,   287,   287,  
      287,   287,   287,   287,   287,   287,   287,    24,    24,   259,  
      259,    12,    13,    14,    15,    16,    17,    18,    19,    20,  
      263,   263,    24,    21,    24,    39,     6,     7,    34,   243,  
      255,   266,   277,   244,   254,   259,   252,   263,    24,    28,  
       24,    21,    33,    42,   239,   297,   301,   302,   307,   310,  
      311,   312,   313,   314,   263,   263,   263,   263,   258,   259,  
      263,    26,    21,    39,    38,    29,   252,    25,    35,    25,  
       40,    38,    39,    34,    29,    29,    34,    29,    29,    34,  
      267,   267,   267,   267,   267,   267,   267,   267,   267,   267,  
      267,   267,   267,   267,   267,    29,    29,   267,   267,    29,  
       34,    29,    40,   265,   265,    35,   267,   267,   267,    29,  
       35,    29,    41,    29,    35,   267,   267,   267,   267,   267,  
      267,   267,   267,   267,   267,   267,   267,   267,    26,    34,  
       23,    25,    23,    45,    29,    23,    34,    35,    32,    34,  
       34,    91,    26,   252,    22,    36,   241,   315,   316,   252,  
      252,   254,   263,   259,   259,   263,   263,   263,   263,   259,  
      259,   263,    35,    91,   240,   259,   240,    35,    34,    91,  
       38,     6,     7,    34,   253,   263,   255,   252,    35,    91,  
       24,    24,    32,   252,   252,   252,   252,   252,   252,   252,  
      252,   252,   259,   263,   259,   263,    25,    34,    25,    21,  
       25,    22,    38,    25,    91,    21,    25,    25,    29,    35,  
       45,    25,   267,   267,   267,   267,   267,   267,   267,    91,  
       29,   267,     4,    91,    25,    29,    41,    91,   267,   267,  
       91,    29,    29,    29,    41,   267,   267,   267,   267,   267,  
      267,   267,   267,   267,     4,   267,     4,   267,    38,    25,  
       32,    33,    91,    25,    29,    32,    35,    22,    32,    34,  
       40,    38,   252,   259,   263,   263,   263,   259,   263,    35,  
       34,   259,     6,     7,     9,    10,   256,   257,   259,   260,  
      261,   262,   263,    35,    32,    34,    33,    33,   252,   253,  
       35,    34,    35,    91,    33,   245,   263,   246,   263,   247,  
      259,   245,   248,   263,    21,   249,   263,   276,   250,   259,  
      245,     9,    10,   251,   260,   263,   256,   259,   256,   259,  
       91,    32,    32,    91,    23,    22,    41,    32,    39,    36,  
       25,    23,   267,   267,   267,   267,    41,    36,     4,   259,  
      259,   261,   261,     5,     8,    41,    36,    25,    35,   267,  
       41,    36,    91,    29,    25,   267,    32,   267,     4,     4,  
       26,    91,    21,    23,    35,    25,    40,    25,    41,    39,  
       25,   240,   259,   259,   240,    40,    41,   256,     6,     7,  
        8,     8,   257,   261,    40,    41,    34,    24,   252,    40,  
       41,    35,    34,   246,    32,   248,   256,   256,    29,    23,  
       29,    34,    35,    41,    36,    91,    40,    34,    36,    40,  
      261,   261,    36,    40,    40,    21,    36,    40,    41,    36,  
      267,    32,    35,    34,    25,    41,    34,    41,    21,    25,  
       33,    91,    40,    41,    91,    41,    91,    32,    41,    91,  
       40,    41,   249,    32,    41,    26,    35,    34,    40,    40,  
       41,    34,    29,    24,    36,    21,    40,    24,    40,    24,  
       40,    24,    36,    36,    40,    34,    35,    41,    40,    91,  
       24,    27,    24,    25,    38,    35,    27,    91,    25,    91,  
       25,    91,    25,    35,    41,    91,    40,    39,    23,    24,  
       29,    29,    29,    42,    29,    38,    25,    24,    42,    24,  
       42,    23,    24,    42,    38,    40,    23,    36,    40,    28,  
       25,    38,    35,    34,    91,    29,    42,    40,    25,    29,  
       25,    29,    28,    25,    29,    40,    91,    28,    35,    45,  
       21,    42,    29,    91,    25,    29,    23,    25,    91,    42,  
       23,    42,    23,    21,    42,    23,    23,    40,    21,    38,  
       36,    34,    29,    42,    35,    39,    34,    25,    38,    36,  
       29,    25,    29,    25,    34,    29,    25,    28,    45,    34,  
       40,    25,    34,    23,    25,    41,    36,    39,    91,    21,  
       23,    23,    34,    23,    91,    21,    36,    34,    25,    25,  
       38,    40,    41,    36,    38,    25,    25,    25,    25,    36,  
       34,    25,    25,    32,    39,    91,    36,    40,    21,    21,  
       32,    91,    21,    34,    32,    91,    36,    41,    91,    38,  
       33,    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  
2250  };  };
2251    
2252  #if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__)  /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
2253  # define YYSIZE_T __SIZE_TYPE__     symbol of state STATE-NUM.  */
2254  #endif  static const yytype_uint16 yystos[] =
2255  #if ! defined (YYSIZE_T) && defined (size_t)  {
2256  # define YYSIZE_T size_t         0,     1,     3,    19,    21,    22,    25,    30,    31,    35,
2257  #endif        36,    37,    39,   228,   229,   230,   231,   285,   286,   287,
2258  #if ! defined (YYSIZE_T)       288,   289,   290,   291,   292,   293,   298,   299,   300,   301,
2259  # if defined (__STDC__) || defined (__cplusplus)       302,   359,   363,    22,    30,    36,    23,    23,    27,    33,
2260  #  include <stddef.h> /* INFRINGES ON USER NAME SPACE */        19,    39,    23,    23,    39,    32,     0,   225,   226,   283,
2261  #  define YYSIZE_T size_t       284,     3,     4,     5,     6,     7,     8,     9,    10,    11,
2262  # endif        12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
2263  #endif        22,    23,    24,    25,    26,    27,    28,    29,    30,    31,
2264  #if ! defined (YYSIZE_T)        32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
2265  # define YYSIZE_T unsigned int        42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
2266  #endif        52,    53,    54,    55,    56,    57,    58,    59,    60,    61,
2267          62,    63,    64,    65,    66,    67,    68,    69,    70,    71,
2268          72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
2269          82,    83,    84,    85,    86,    87,    88,    89,    90,    91,
2270          92,    93,    94,    95,    96,    97,    98,    99,   100,   101,
2271         102,   103,   104,   105,   106,   107,   108,   109,   110,   111,
2272         112,   113,   114,   115,   116,   117,   118,   119,   120,   121,
2273         122,   123,   124,   125,   126,   127,   128,   129,   130,   131,
2274         132,   133,   134,   135,   136,   137,   138,   139,   140,   141,
2275         142,   143,   144,   145,   146,   147,   148,   149,   150,   151,
2276         152,   153,   154,   155,   156,   157,   158,   159,   160,   161,
2277         162,   163,   164,   165,   166,   167,   168,   169,   170,   171,
2278         172,   173,   174,   175,   176,   177,   178,   179,   180,   181,
2279         182,   183,   184,   185,   186,   187,   188,   189,   190,   191,
2280         192,   193,   194,   195,   196,   197,   198,   199,   200,   201,
2281         202,   203,   204,   205,   206,   207,   208,   209,   210,   211,
2282         212,   213,   214,   215,   216,   217,   218,   219,   220,   221,
2283         224,   274,   277,   278,   279,   282,   282,   282,   282,   282,
2284         282,   282,   282,   282,   282,   282,   282,   282,   282,   282,
2285         282,    22,    23,    23,    37,    38,    37,    19,    34,    27,
2286          31,    37,    30,    38,    20,    31,    37,   283,     9,    10,
2287          11,    12,    13,    14,    15,    16,    17,    18,   276,   277,
2288         276,   276,   276,   276,   276,   276,   276,   276,     3,     9,
2289          10,    11,    12,    13,    14,    15,    16,    17,    18,   279,
2290          21,    31,   232,   303,   344,    19,    21,    23,    24,    31,
2291          37,    38,   238,   303,   304,   305,   306,   321,   322,   324,
2292         329,   330,   331,   332,   333,   334,   336,   338,   339,   340,
2293         341,   342,   343,   344,   345,   346,   347,   351,   352,   353,
2294          31,   235,   342,   236,   342,    31,   242,   343,    19,    24,
2295          31,   240,   330,   340,   351,   243,   330,   340,   351,    19,
2296          21,    24,    31,   248,   304,   305,   306,   329,   336,   339,
2297         343,   345,   352,    27,   244,   323,   324,   237,   303,   344,
2298          19,    23,    31,   239,   303,   328,   333,   337,   338,   344,
2299         351,   362,    19,    20,    21,    31,    37,    38,    40,   233,
2300         308,   309,   310,   311,   312,   313,   314,   315,   316,   317,
2301         318,   319,   320,   321,   360,   234,   308,   309,   310,   311,
2302         312,   313,   314,   315,   316,   317,   318,   319,   320,   321,
2303         360,   274,   280,   282,   241,   303,    19,    19,    38,    38,
2304          22,    38,    33,    23,    23,    37,    19,    39,   277,    26,
2305          27,   282,    39,    40,    26,    32,    42,    27,    23,    33,
2306         282,   282,   282,   282,   282,   282,   282,   282,   282,   282,
2307         282,   282,   282,   282,   282,   282,   282,   282,    27,   282,
2308         282,    27,   282,    39,    42,    27,   282,   282,   282,   282,
2309         282,   282,    39,    26,    42,    27,   282,   282,    32,   282,
2310         282,   282,   282,    39,    21,    27,   282,   282,   282,   282,
2311         282,   282,   282,   282,    39,    39,    26,    27,    38,    33,
2312          33,   274,   282,   282,    36,    38,    36,    40,    38,    21,
2313          21,    34,    20,    19,    22,   222,   223,   268,   281,    22,
2314          19,    19,    25,    89,    22,    36,    38,    27,   307,   318,
2315         319,   320,   307,   307,   307,   307,   307,   307,   307,   307,
2316         307,   307,    10,    11,    12,    13,    14,    15,    16,    17,
2317          18,    19,   258,   278,   294,   307,   307,   307,   307,   263,
2318         278,   307,    22,   258,   258,    22,   258,   294,    22,    89,
2319          22,   274,   274,   263,   278,   278,   263,    22,    19,    89,
2320          22,   258,   294,   263,    37,    32,   249,   267,   281,   297,
2321         250,   266,   274,   263,   258,   294,    22,    26,    22,    19,
2322          31,    37,    40,   245,   330,   334,   335,   340,   344,   347,
2323         348,   349,   350,   354,   355,   356,   278,   278,   278,   278,
2324          32,   361,    19,   334,   273,   274,   278,    22,    24,    19,
2325          22,    37,    36,    38,    27,   263,    23,    33,    23,    38,
2326          36,    37,    32,    27,   280,   280,    27,    27,    32,    27,
2327          37,    27,    40,    19,    32,   282,   282,   282,   282,   282,
2328         282,   282,   282,   282,   282,   282,   282,   282,   282,    30,
2329         282,   282,   282,   282,    27,   282,   282,    27,    27,    37,
2330          27,   282,   282,   282,   282,    27,    32,    37,    27,    38,
2331          33,   282,   282,   282,    27,    33,    27,    39,    27,    39,
2332          33,    33,   282,   282,   282,   282,   282,   282,   282,   282,
2333         282,   282,   282,   282,   282,   282,   282,   282,    19,   282,
2334          39,   282,    27,    24,    32,    27,    21,    23,    19,    21,
2335          43,    27,    21,    32,    89,   222,   223,    33,    30,    32,
2336          32,    23,    89,    23,    30,    24,   263,    20,    34,   247,
2337         357,   358,   263,   263,   266,   278,   274,   274,   278,   278,
2338         278,   278,   274,   258,    30,   258,   274,   278,   263,    89,
2339         259,   278,   259,    89,    33,    23,    89,   246,   274,   246,
2340         261,   278,   265,   278,    33,    32,    23,    89,    36,    32,
2341         264,   278,   267,   263,    33,    89,    22,    22,    38,    30,
2342          30,   263,   263,   263,   263,   263,   263,   263,   263,   263,
2343         263,   263,   263,   274,   278,   274,   278,    31,   258,    22,
2344         263,    33,    23,    32,    89,    23,    19,    30,    23,    20,
2345          36,    23,    27,    89,    19,    23,    23,    32,    27,    36,
2346          89,    33,    43,    23,   282,   282,   282,   282,   282,   282,
2347         282,   282,   282,    27,   282,   282,    27,    89,    32,    27,
2348         282,     4,   282,    89,    23,    32,    27,    39,    89,   282,
2349         282,    89,    27,    27,    27,    23,    33,    39,   282,   282,
2350         282,   282,   282,   282,   282,   282,   282,   282,   282,   282,
2351           4,   282,     4,   282,    23,   282,    27,   282,    89,    36,
2352          23,    27,    30,    31,    89,    89,    23,    27,    30,    32,
2353          33,    20,    30,    22,    32,    40,    38,    36,   263,   274,
2354         278,   278,   278,   274,   259,   278,   265,    32,   260,   278,
2355         260,    32,    33,    22,    32,   274,     7,     8,   271,   272,
2356         274,   275,   276,   277,   278,   281,   270,   281,    33,    30,
2357          22,    32,    31,    31,   263,   264,    33,    32,    33,    89,
2358          31,   252,   278,   253,   278,   254,   274,   252,    22,    32,
2359         258,   295,   296,   255,   278,   256,   278,   294,   257,   274,
2360         252,     7,     8,   262,   275,   278,   273,   273,   271,   274,
2361         271,   274,   268,    33,   265,    33,    89,    30,    32,    30,
2362          89,    40,    21,    20,    37,    39,    30,    37,    37,    34,
2363          37,    33,    23,    21,   282,   282,   282,   282,   282,    37,
2364         282,    37,    39,    34,     4,   276,   276,     5,     6,    39,
2365          34,    37,    23,    33,   282,    39,    34,    89,    27,    23,
2366         282,    23,    33,   282,     4,     4,    89,   282,    39,    24,
2367          89,    34,    37,    19,    21,    33,    33,    23,    38,    38,
2368          23,    39,    38,    27,    37,    23,   246,   274,   274,   246,
2369         260,    38,   266,    38,    38,    39,   271,     6,     6,   272,
2370         276,    38,    39,    38,    32,    22,   263,    38,    39,    33,
2371          32,   253,    24,    32,   255,   271,   271,    33,   253,    38,
2372          27,    21,    27,    39,    38,    32,    33,    27,    39,    36,
2373          34,    89,    38,    36,    21,    32,    36,   282,    36,    34,
2374          38,   276,   276,    34,    38,    36,    38,    19,    34,    38,
2375          39,    34,    19,    23,   282,    39,   282,    34,    30,    33,
2376          32,    38,    36,    23,    39,    21,    32,    39,    39,    19,
2377          23,    31,    89,    39,    23,    38,    39,   267,    39,    39,
2378          89,    39,    89,    39,    30,    39,    89,    38,    39,    39,
2379         256,    38,   253,    39,    30,    39,    24,    89,    39,    33,
2380          32,    23,    38,    31,    38,    39,    32,    27,    22,    34,
2381          31,    89,    19,    31,   282,    31,    38,    22,    38,    22,
2382          31,    38,    22,    34,    34,    38,    30,    34,    38,    32,
2383          33,    22,    31,    39,    38,    89,    23,    89,    22,    25,
2384          22,    23,    36,    33,    23,    21,    25,    23,   264,    23,
2385          89,    23,    89,    23,    23,    89,    23,    33,    39,    89,
2386          38,    39,    89,    38,    23,    23,    37,    21,    32,    21,
2387          22,    27,    27,    27,    40,    27,    36,    32,    33,    23,
2388          32,   282,    32,    22,    40,    22,    40,    32,    21,    22,
2389          40,    36,    38,    21,    34,    38,    38,    22,    40,    32,
2390          33,    38,    26,    23,    36,    33,    32,    89,    27,    40,
2391          38,    38,    39,    38,   262,    38,    23,    27,    23,    27,
2392          38,    26,    23,    27,    38,    89,    26,    33,    43,    89,
2393          23,    27,    38,    39,    89,    19,    40,    27,    89,    23,
2394          27,    21,    23,    89,    37,    89,    32,   282,    40,    21,
2395          40,    21,    89,    19,    40,    21,    21,    38,    19,    36,
2396          34,    40,    21,    89,    32,    31,    32,    27,    40,    33,
2397          37,    32,    23,    36,    34,    31,    38,    33,    34,   251,
2398         269,   281,   325,   326,   327,    27,    23,    27,    23,    31,
2399          32,    27,    23,    26,    43,    32,    38,    23,    27,    23,
2400          21,    27,    31,    38,    19,    32,    21,    23,    39,    34,
2401          37,    89,    19,    19,    89,    32,    23,   282,    21,    21,
2402          19,    32,    21,    89,    19,    34,    32,    21,    89,    33,
2403          32,    19,    34,    23,    23,    36,    38,    39,    34,    36,
2404          34,    31,    89,    36,   269,    23,    23,    34,    23,    23,
2405          34,    32,    23,    23,    23,    21,    27,    39,    24,    34,
2406          30,    37,    89,    34,    38,    19,    19,    37,    19,    22,
2407          37,    30,    89,    19,    32,    30,    89,    33,    32,    32,
2408          33,    89,    89,    34,    39,    89,    36,    31,    42,    23,
2409          27,    34,    36,    23,    21,    27,    39,    24,    38,    21,
2410          27,    34,    19,    38,    22,    19,    23,    31,    37,    19,
2411          19,    30,    33,    32,    32,    33,    33,    32,    19,    36,
2412          89,    36,    31,    38,    19,    38,    36,    31,    39,    24,
2413          38,    39,    24,    36,    19,    22,    27,    23,    23,    32,
2414          23,    19,    23,    32,    33,    32,    33,    19,    31,    36,
2415          40,    38,    36,    22,    32,    31,    38,    38,    38,    31,
2416          23,    27,    23,    23,    89,    38,    23,    23,    23,    38,
2417          40,    36,    36,    26,    38,    36,    38,    23,    23,    37,
2418          33,    23,    23,    36,    36,    30,    36,    36,    37,    22
2419    };
2420    
2421  #define yyerrok         (yyerrstatus = 0)  #define yyerrok         (yyerrstatus = 0)
2422  #define yyclearin       (yychar = YYEMPTY)  #define yyclearin       (yychar = YYEMPTY)
# Line 2089  do                                                             \ Line 2443  do                                                             \
2443        yychar = (Token);                                         \        yychar = (Token);                                         \
2444        yylval = (Value);                                         \        yylval = (Value);                                         \
2445        yytoken = YYTRANSLATE (yychar);                           \        yytoken = YYTRANSLATE (yychar);                           \
2446        YYPOPSTACK;                                               \        YYPOPSTACK (1);                                           \
2447        goto yybackup;                                            \        goto yybackup;                                            \
2448      }                                                           \      }                                                           \
2449    else                                                          \    else                                                          \
2450      {                                                           \      {                                                           \
2451        yyerror ("syntax error: cannot back up");\        yyerror (YY_("syntax error: cannot back up")); \
2452        YYERROR;                                                  \        YYERROR;                                                  \
2453      }                                                           \      }                                                           \
2454  while (0)  while (YYID (0))
2455    
2456    
2457  #define YYTERROR        1  #define YYTERROR        1
2458  #define YYERRCODE       256  #define YYERRCODE       256
2459    
 /* YYLLOC_DEFAULT -- Compute the default location (before the actions  
    are run).  */  
2460    
2461    /* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N].
2462       If N is 0, then set CURRENT to the empty location which ends
2463       the previous symbol: RHS[0] (always defined).  */
2464    
2465    #define YYRHSLOC(Rhs, K) ((Rhs)[K])
2466  #ifndef YYLLOC_DEFAULT  #ifndef YYLLOC_DEFAULT
2467  # define YYLLOC_DEFAULT(Current, Rhs, N)                \  # define YYLLOC_DEFAULT(Current, Rhs, N)                                \
2468     ((Current).first_line   = (Rhs)[1].first_line,       \      do                                                                  \
2469      (Current).first_column = (Rhs)[1].first_column,     \        if (YYID (N))                                                    \
2470      (Current).last_line    = (Rhs)[N].last_line,        \          {                                                               \
2471      (Current).last_column  = (Rhs)[N].last_column)            (Current).first_line   = YYRHSLOC (Rhs, 1).first_line;        \
2472              (Current).first_column = YYRHSLOC (Rhs, 1).first_column;      \
2473              (Current).last_line    = YYRHSLOC (Rhs, N).last_line;         \
2474              (Current).last_column  = YYRHSLOC (Rhs, N).last_column;       \
2475            }                                                               \
2476          else                                                              \
2477            {                                                               \
2478              (Current).first_line   = (Current).last_line   =              \
2479                YYRHSLOC (Rhs, 0).last_line;                                \
2480              (Current).first_column = (Current).last_column =              \
2481                YYRHSLOC (Rhs, 0).last_column;                              \
2482            }                                                               \
2483        while (YYID (0))
2484  #endif  #endif
2485    
2486    
2487    /* YY_LOCATION_PRINT -- Print the location on the stream.
2488       This macro was not mandated originally: define only if we know
2489       we won't break user code: when these are the locations we know.  */
2490    
2491    #ifndef YY_LOCATION_PRINT
2492    # if YYLTYPE_IS_TRIVIAL
2493    #  define YY_LOCATION_PRINT(File, Loc)                  \
2494         fprintf (File, "%d.%d-%d.%d",                      \
2495                  (Loc).first_line, (Loc).first_column,     \
2496                  (Loc).last_line,  (Loc).last_column)
2497    # else
2498    #  define YY_LOCATION_PRINT(File, Loc) ((void) 0)
2499    # endif
2500    #endif
2501    
2502    
2503  /* YYLEX -- calling `yylex' with the right arguments.  */  /* YYLEX -- calling `yylex' with the right arguments.  */
2504    
2505  #ifdef YYLEX_PARAM  #ifdef YYLEX_PARAM
# Line 2133  while (0) Line 2520  while (0)
2520  do {                                            \  do {                                            \
2521    if (yydebug)                                  \    if (yydebug)                                  \
2522      YYFPRINTF Args;                             \      YYFPRINTF Args;                             \
2523  } while (0)  } while (YYID (0))
2524    
2525  # define YYDSYMPRINT(Args)                      \  # define YY_SYMBOL_PRINT(Title, Type, Value, Location)                    \
2526  do {                                            \  do {                                                                      \
2527    if (yydebug)                                  \    if (yydebug)                                                            \
2528      yysymprint Args;                            \      {                                                                     \
2529  } while (0)        YYFPRINTF (stderr, "%s ", Title);                                   \
2530          yy_symbol_print (stderr,                                            \
2531                      Type, Value); \
2532          YYFPRINTF (stderr, "\n");                                           \
2533        }                                                                     \
2534    } while (YYID (0))
2535    
2536  # define YYDSYMPRINTF(Title, Token, Value, Location)            \  
2537  do {                                                            \  /*--------------------------------.
2538    if (yydebug)                                                  \  | Print this symbol on YYOUTPUT.  |
2539      {                                                           \  `--------------------------------*/
2540        YYFPRINTF (stderr, "%s ", Title);                         \  
2541        yysymprint (stderr,                                       \  /*ARGSUSED*/
2542                    Token, Value);        \  #if (defined __STDC__ || defined __C99__FUNC__ \
2543        YYFPRINTF (stderr, "\n");                                 \       || defined __cplusplus || defined _MSC_VER)
2544      }                                                           \  static void
2545  } while (0)  yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep)
2546    #else
2547    static void
2548    yy_symbol_value_print (yyoutput, yytype, yyvaluep)
2549        FILE *yyoutput;
2550        int yytype;
2551        YYSTYPE const * const yyvaluep;
2552    #endif
2553    {
2554      if (!yyvaluep)
2555        return;
2556    # ifdef YYPRINT
2557      if (yytype < YYNTOKENS)
2558        YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
2559    # else
2560      YYUSE (yyoutput);
2561    # endif
2562      switch (yytype)
2563        {
2564          default:
2565            break;
2566        }
2567    }
2568    
2569    
2570    /*--------------------------------.
2571    | Print this symbol on YYOUTPUT.  |
2572    `--------------------------------*/
2573    
2574    #if (defined __STDC__ || defined __C99__FUNC__ \
2575         || defined __cplusplus || defined _MSC_VER)
2576    static void
2577    yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep)
2578    #else
2579    static void
2580    yy_symbol_print (yyoutput, yytype, yyvaluep)
2581        FILE *yyoutput;
2582        int yytype;
2583        YYSTYPE const * const yyvaluep;
2584    #endif
2585    {
2586      if (yytype < YYNTOKENS)
2587        YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
2588      else
2589        YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);
2590    
2591      yy_symbol_value_print (yyoutput, yytype, yyvaluep);
2592      YYFPRINTF (yyoutput, ")");
2593    }
2594    
2595  /*------------------------------------------------------------------.  /*------------------------------------------------------------------.
2596  | 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 |
2597  | TOP (included).                                                   |  | TOP (included).                                                   |
2598  `------------------------------------------------------------------*/  `------------------------------------------------------------------*/
2599    
2600  #if defined (__STDC__) || defined (__cplusplus)  #if (defined __STDC__ || defined __C99__FUNC__ \
2601         || defined __cplusplus || defined _MSC_VER)
2602  static void  static void
2603  yy_stack_print (short int *bottom, short int *top)  yy_stack_print (yytype_int16 *bottom, yytype_int16 *top)
2604  #else  #else
2605  static void  static void
2606  yy_stack_print (bottom, top)  yy_stack_print (bottom, top)
2607      short int *bottom;      yytype_int16 *bottom;
2608      short int *top;      yytype_int16 *top;
2609  #endif  #endif
2610  {  {
2611    YYFPRINTF (stderr, "Stack now");    YYFPRINTF (stderr, "Stack now");
2612    for (/* Nothing. */; bottom <= top; ++bottom)    for (; bottom <= top; ++bottom)
2613      YYFPRINTF (stderr, " %d", *bottom);      YYFPRINTF (stderr, " %d", *bottom);
2614    YYFPRINTF (stderr, "\n");    YYFPRINTF (stderr, "\n");
2615  }  }
# Line 2177  yy_stack_print (bottom, top) Line 2618  yy_stack_print (bottom, top)
2618  do {                                                            \  do {                                                            \
2619    if (yydebug)                                                  \    if (yydebug)                                                  \
2620      yy_stack_print ((Bottom), (Top));                           \      yy_stack_print ((Bottom), (Top));                           \
2621  } while (0)  } while (YYID (0))
2622    
2623    
2624  /*------------------------------------------------.  /*------------------------------------------------.
2625  | Report that the YYRULE is going to be reduced.  |  | Report that the YYRULE is going to be reduced.  |
2626  `------------------------------------------------*/  `------------------------------------------------*/
2627    
2628  #if defined (__STDC__) || defined (__cplusplus)  #if (defined __STDC__ || defined __C99__FUNC__ \
2629         || defined __cplusplus || defined _MSC_VER)
2630  static void  static void
2631  yy_reduce_print (int yyrule)  yy_reduce_print (YYSTYPE *yyvsp, int yyrule)
2632  #else  #else
2633  static void  static void
2634  yy_reduce_print (yyrule)  yy_reduce_print (yyvsp, yyrule)
2635        YYSTYPE *yyvsp;
2636      int yyrule;      int yyrule;
2637  #endif  #endif
2638  {  {
2639      int yynrhs = yyr2[yyrule];
2640    int yyi;    int yyi;
2641    unsigned int yylno = yyrline[yyrule];    unsigned long int yylno = yyrline[yyrule];
2642    YYFPRINTF (stderr, "Reducing stack by rule %d (line %u), ",    YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n",
2643               yyrule - 1, yylno);               yyrule - 1, yylno);
2644    /* Print the symbols being reduced, and their result.  */    /* The symbols being reduced.  */
2645    for (yyi = yyprhs[yyrule]; 0 <= yyrhs[yyi]; yyi++)    for (yyi = 0; yyi < yynrhs; yyi++)
2646      YYFPRINTF (stderr, "%s ", yytname [yyrhs[yyi]]);      {
2647    YYFPRINTF (stderr, "-> %s\n", yytname [yyr1[yyrule]]);        fprintf (stderr, "   $%d = ", yyi + 1);
2648          yy_symbol_print (stderr, yyrhs[yyprhs[yyrule] + yyi],
2649                           &(yyvsp[(yyi + 1) - (yynrhs)])
2650                                           );
2651          fprintf (stderr, "\n");
2652        }
2653  }  }
2654    
2655  # define YY_REDUCE_PRINT(Rule)          \  # define YY_REDUCE_PRINT(Rule)          \
2656  do {                                    \  do {                                    \
2657    if (yydebug)                          \    if (yydebug)                          \
2658      yy_reduce_print (Rule);             \      yy_reduce_print (yyvsp, Rule); \
2659  } while (0)  } while (YYID (0))
2660    
2661  /* Nonzero means print parse trace.  It is left uninitialized so that  /* Nonzero means print parse trace.  It is left uninitialized so that
2662     multiple parsers can coexist.  */     multiple parsers can coexist.  */
2663  int yydebug;  int yydebug;
2664  #else /* !YYDEBUG */  #else /* !YYDEBUG */
2665  # define YYDPRINTF(Args)  # define YYDPRINTF(Args)
2666  # define YYDSYMPRINT(Args)  # define YY_SYMBOL_PRINT(Title, Type, Value, Location)
 # define YYDSYMPRINTF(Title, Token, Value, Location)  
2667  # define YY_STACK_PRINT(Bottom, Top)  # define YY_STACK_PRINT(Bottom, Top)
2668  # define YY_REDUCE_PRINT(Rule)  # define YY_REDUCE_PRINT(Rule)
2669  #endif /* !YYDEBUG */  #endif /* !YYDEBUG */
# Line 2230  int yydebug; Line 2678  int yydebug;
2678     if the built-in stack extension method is used).     if the built-in stack extension method is used).
2679    
2680     Do not make this value too large; the results are undefined if     Do not make this value too large; the results are undefined if
2681     SIZE_MAX < YYSTACK_BYTES (YYMAXDEPTH)     YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
2682     evaluated with infinite-precision integer arithmetic.  */     evaluated with infinite-precision integer arithmetic.  */
2683    
 #if defined (YYMAXDEPTH) && YYMAXDEPTH == 0  
 # undef YYMAXDEPTH  
 #endif  
   
2684  #ifndef YYMAXDEPTH  #ifndef YYMAXDEPTH
2685  # define YYMAXDEPTH 10000  # define YYMAXDEPTH 10000
2686  #endif  #endif
# Line 2246  int yydebug; Line 2690  int yydebug;
2690  #if YYERROR_VERBOSE  #if YYERROR_VERBOSE
2691    
2692  # ifndef yystrlen  # ifndef yystrlen
2693  #  if defined (__GLIBC__) && defined (_STRING_H)  #  if defined __GLIBC__ && defined _STRING_H
2694  #   define yystrlen strlen  #   define yystrlen strlen
2695  #  else  #  else
2696  /* Return the length of YYSTR.  */  /* Return the length of YYSTR.  */
2697    #if (defined __STDC__ || defined __C99__FUNC__ \
2698         || defined __cplusplus || defined _MSC_VER)
2699  static YYSIZE_T  static YYSIZE_T
 #   if defined (__STDC__) || defined (__cplusplus)  
2700  yystrlen (const char *yystr)  yystrlen (const char *yystr)
2701  #   else  #else
2702    static YYSIZE_T
2703  yystrlen (yystr)  yystrlen (yystr)
2704       const char *yystr;      const char *yystr;
2705  #   endif  #endif
2706  {  {
2707    register const char *yys = yystr;    YYSIZE_T yylen;
2708      for (yylen = 0; yystr[yylen]; yylen++)
   while (*yys++ != '\0')  
2709      continue;      continue;
2710      return yylen;
   return yys - yystr - 1;  
2711  }  }
2712  #  endif  #  endif
2713  # endif  # endif
2714    
2715  # ifndef yystpcpy  # ifndef yystpcpy
2716  #  if defined (__GLIBC__) && defined (_STRING_H) && defined (_GNU_SOURCE)  #  if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
2717  #   define yystpcpy stpcpy  #   define yystpcpy stpcpy
2718  #  else  #  else
2719  /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in  /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
2720     YYDEST.  */     YYDEST.  */
2721    #if (defined __STDC__ || defined __C99__FUNC__ \
2722         || defined __cplusplus || defined _MSC_VER)
2723  static char *  static char *
 #   if defined (__STDC__) || defined (__cplusplus)  
2724  yystpcpy (char *yydest, const char *yysrc)  yystpcpy (char *yydest, const char *yysrc)
2725  #   else  #else
2726    static char *
2727  yystpcpy (yydest, yysrc)  yystpcpy (yydest, yysrc)
2728       char *yydest;      char *yydest;
2729       const char *yysrc;      const char *yysrc;
2730  #   endif  #endif
2731  {  {
2732    register char *yyd = yydest;    char *yyd = yydest;
2733    register const char *yys = yysrc;    const char *yys = yysrc;
2734    
2735    while ((*yyd++ = *yys++) != '\0')    while ((*yyd++ = *yys++) != '\0')
2736      continue;      continue;
# Line 2294  yystpcpy (yydest, yysrc) Line 2740  yystpcpy (yydest, yysrc)
2740  #  endif  #  endif
2741  # endif  # endif
2742    
2743  #endif /* !YYERROR_VERBOSE */  # ifndef yytnamerr
2744    /* Copy to YYRES the contents of YYSTR after stripping away unnecessary
2745       quotes and backslashes, so that it's suitable for yyerror.  The
2746       heuristic is that double-quoting is unnecessary unless the string
2747       contains an apostrophe, a comma, or backslash (other than
2748       backslash-backslash).  YYSTR is taken from yytname.  If YYRES is
2749       null, do not copy; instead, return the length of what the result
2750       would have been.  */
2751    static YYSIZE_T
2752    yytnamerr (char *yyres, const char *yystr)
2753    {
2754      if (*yystr == '"')
2755        {
2756          YYSIZE_T yyn = 0;
2757          char const *yyp = yystr;
2758    
2759          for (;;)
2760            switch (*++yyp)
2761              {
2762              case '\'':
2763              case ',':
2764                goto do_not_strip_quotes;
2765    
2766              case '\\':
2767                if (*++yyp != '\\')
2768                  goto do_not_strip_quotes;
2769                /* Fall through.  */
2770              default:
2771                if (yyres)
2772                  yyres[yyn] = *yyp;
2773                yyn++;
2774                break;
2775    
2776              case '"':
2777                if (yyres)
2778                  yyres[yyn] = '\0';
2779                return yyn;
2780              }
2781        do_not_strip_quotes: ;
2782        }
2783    
2784  #if YYDEBUG    if (! yyres)
2785  /*--------------------------------.      return yystrlen (yystr);
 | Print this symbol on YYOUTPUT.  |  
 `--------------------------------*/  
2786    
2787  #if defined (__STDC__) || defined (__cplusplus)    return yystpcpy (yyres, yystr) - yyres;
2788  static void  }
2789  yysymprint (FILE *yyoutput, int yytype, YYSTYPE *yyvaluep)  # endif
2790  #else  
2791  static void  /* Copy into YYRESULT an error message about the unexpected token
2792  yysymprint (yyoutput, yytype, yyvaluep)     YYCHAR while in state YYSTATE.  Return the number of bytes copied,
2793      FILE *yyoutput;     including the terminating null byte.  If YYRESULT is null, do not
2794      int yytype;     copy anything; just return the number of bytes that would be
2795      YYSTYPE *yyvaluep;     copied.  As a special case, return 0 if an ordinary "syntax error"
2796  #endif     message will do.  Return YYSIZE_MAXIMUM if overflow occurs during
2797       size calculation.  */
2798    static YYSIZE_T
2799    yysyntax_error (char *yyresult, int yystate, int yychar)
2800  {  {
2801    /* Pacify ``unused variable'' warnings.  */    int yyn = yypact[yystate];
   (void) yyvaluep;  
2802    
2803    if (yytype < YYNTOKENS)    if (! (YYPACT_NINF < yyn && yyn <= YYLAST))
2804        return 0;
2805      else
2806      {      {
2807        YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);        int yytype = YYTRANSLATE (yychar);
2808  # ifdef YYPRINT        YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]);
2809        YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);        YYSIZE_T yysize = yysize0;
2810          YYSIZE_T yysize1;
2811          int yysize_overflow = 0;
2812          enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
2813          char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
2814          int yyx;
2815    
2816    # if 0
2817          /* This is so xgettext sees the translatable formats that are
2818             constructed on the fly.  */
2819          YY_("syntax error, unexpected %s");
2820          YY_("syntax error, unexpected %s, expecting %s");
2821          YY_("syntax error, unexpected %s, expecting %s or %s");
2822          YY_("syntax error, unexpected %s, expecting %s or %s or %s");
2823          YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s");
2824  # endif  # endif
2825      }        char *yyfmt;
2826    else        char const *yyf;
2827      YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);        static char const yyunexpected[] = "syntax error, unexpected %s";
2828          static char const yyexpecting[] = ", expecting %s";
2829          static char const yyor[] = " or %s";
2830          char yyformat[sizeof yyunexpected
2831                        + sizeof yyexpecting - 1
2832                        + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2)
2833                           * (sizeof yyor - 1))];
2834          char const *yyprefix = yyexpecting;
2835    
2836          /* Start YYX at -YYN if negative to avoid negative indexes in
2837             YYCHECK.  */
2838          int yyxbegin = yyn < 0 ? -yyn : 0;
2839    
2840          /* Stay within bounds of both yycheck and yytname.  */
2841          int yychecklim = YYLAST - yyn + 1;
2842          int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
2843          int yycount = 1;
2844    
2845          yyarg[0] = yytname[yytype];
2846          yyfmt = yystpcpy (yyformat, yyunexpected);
2847    
2848          for (yyx = yyxbegin; yyx < yyxend; ++yyx)
2849            if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
2850              {
2851                if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
2852                  {
2853                    yycount = 1;
2854                    yysize = yysize0;
2855                    yyformat[sizeof yyunexpected - 1] = '\0';
2856                    break;
2857                  }
2858                yyarg[yycount++] = yytname[yyx];
2859                yysize1 = yysize + yytnamerr (0, yytname[yyx]);
2860                yysize_overflow |= (yysize1 < yysize);
2861                yysize = yysize1;
2862                yyfmt = yystpcpy (yyfmt, yyprefix);
2863                yyprefix = yyor;
2864              }
2865    
2866          yyf = YY_(yyformat);
2867          yysize1 = yysize + yystrlen (yyf);
2868          yysize_overflow |= (yysize1 < yysize);
2869          yysize = yysize1;
2870    
2871    switch (yytype)        if (yysize_overflow)
2872      {          return YYSIZE_MAXIMUM;
2873        default:  
2874          break;        if (yyresult)
2875            {
2876              /* Avoid sprintf, as that infringes on the user's name space.
2877                 Don't have undefined behavior even if the translation
2878                 produced a string with the wrong number of "%s"s.  */
2879              char *yyp = yyresult;
2880              int yyi = 0;
2881              while ((*yyp = *yyf) != '\0')
2882                {
2883                  if (*yyp == '%' && yyf[1] == 's' && yyi < yycount)
2884                    {
2885                      yyp += yytnamerr (yyp, yyarg[yyi++]);
2886                      yyf += 2;
2887                    }
2888                  else
2889                    {
2890                      yyp++;
2891                      yyf++;
2892                    }
2893                }
2894            }
2895          return yysize;
2896      }      }
   YYFPRINTF (yyoutput, ")");  
2897  }  }
2898    #endif /* YYERROR_VERBOSE */
2899    
2900    
 #endif /* ! YYDEBUG */  
2901  /*-----------------------------------------------.  /*-----------------------------------------------.
2902  | Release the memory associated to this symbol.  |  | Release the memory associated to this symbol.  |
2903  `-----------------------------------------------*/  `-----------------------------------------------*/
2904    
2905  #if defined (__STDC__) || defined (__cplusplus)  /*ARGSUSED*/
2906    #if (defined __STDC__ || defined __C99__FUNC__ \
2907         || defined __cplusplus || defined _MSC_VER)
2908  static void  static void
2909  yydestruct (int yytype, YYSTYPE *yyvaluep)  yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep)
2910  #else  #else
2911  static void  static void
2912  yydestruct (yytype, yyvaluep)  yydestruct (yymsg, yytype, yyvaluep)
2913        const char *yymsg;
2914      int yytype;      int yytype;
2915      YYSTYPE *yyvaluep;      YYSTYPE *yyvaluep;
2916  #endif  #endif
2917  {  {
2918    /* Pacify ``unused variable'' warnings.  */    YYUSE (yyvaluep);
2919    (void) yyvaluep;  
2920      if (!yymsg)
2921        yymsg = "Deleting";
2922      YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
2923    
2924    switch (yytype)    switch (yytype)
2925      {      {
2926    
2927        default:        default:
2928          break;          break;
2929      }      }
2930  }  }
2931    
# Line 2365  yydestruct (yytype, yyvaluep) Line 2933  yydestruct (yytype, yyvaluep)
2933  /* Prevent warnings from -Wmissing-prototypes.  */  /* Prevent warnings from -Wmissing-prototypes.  */
2934    
2935  #ifdef YYPARSE_PARAM  #ifdef YYPARSE_PARAM
2936  # if defined (__STDC__) || defined (__cplusplus)  #if defined __STDC__ || defined __cplusplus
2937  int yyparse (void *YYPARSE_PARAM);  int yyparse (void *YYPARSE_PARAM);
2938  # else  #else
2939  int yyparse ();  int yyparse ();
2940  # endif  #endif
2941  #else /* ! YYPARSE_PARAM */  #else /* ! YYPARSE_PARAM */
2942  #if defined (__STDC__) || defined (__cplusplus)  #if defined __STDC__ || defined __cplusplus
2943  int yyparse (void);  int yyparse (void);
2944  #else  #else
2945  int yyparse ();  int yyparse ();
# Line 2388  int yyparse (); Line 2956  int yyparse ();
2956  `----------*/  `----------*/
2957    
2958  #ifdef YYPARSE_PARAM  #ifdef YYPARSE_PARAM
2959  # if defined (__STDC__) || defined (__cplusplus)  #if (defined __STDC__ || defined __C99__FUNC__ \
2960  int yyparse (void *YYPARSE_PARAM)       || defined __cplusplus || defined _MSC_VER)
2961  # else  int
2962  int yyparse (YYPARSE_PARAM)  yyparse (void *YYPARSE_PARAM)
2963    void *YYPARSE_PARAM;  #else
2964  # endif  int
2965    yyparse (YYPARSE_PARAM)
2966        void *YYPARSE_PARAM;
2967    #endif
2968  #else /* ! YYPARSE_PARAM */  #else /* ! YYPARSE_PARAM */
2969  #if defined (__STDC__) || defined (__cplusplus)  #if (defined __STDC__ || defined __C99__FUNC__ \
2970         || defined __cplusplus || defined _MSC_VER)
2971  int  int
2972  yyparse (void)  yyparse (void)
2973  #else  #else
# Line 2405  yyparse () Line 2977  yyparse ()
2977  #endif  #endif
2978  #endif  #endif
2979  {  {
2980    /* The lookahead symbol.  */    /* The look-ahead symbol.  */
2981  int yychar;  int yychar;
2982    
2983  /* The semantic value of the lookahead symbol.  */  /* The semantic value of the look-ahead symbol.  */
2984  YYSTYPE yylval;  YYSTYPE yylval;
2985    
2986  /* Number of syntax errors so far.  */  /* Number of syntax errors so far.  */
2987  int yynerrs;  int yynerrs;
2988    
2989    register int yystate;    int yystate;
2990    register int yyn;    int yyn;
2991    int yyresult;    int yyresult;
2992    /* Number of tokens to shift before error messages enabled.  */    /* Number of tokens to shift before error messages enabled.  */
2993    int yyerrstatus;    int yyerrstatus;
2994    /* Lookahead token as an internal (translated) token number.  */    /* Look-ahead token as an internal (translated) token number.  */
2995    int yytoken = 0;    int yytoken = 0;
2996    #if YYERROR_VERBOSE
2997      /* Buffer for error messages, and its allocated size.  */
2998      char yymsgbuf[128];
2999      char *yymsg = yymsgbuf;
3000      YYSIZE_T yymsg_alloc = sizeof yymsgbuf;
3001    #endif
3002    
3003    /* Three stacks and their tools:    /* Three stacks and their tools:
3004       `yyss': related to states,       `yyss': related to states,
# Line 2431  int yynerrs; Line 3009  int yynerrs;
3009       to reallocate them elsewhere.  */       to reallocate them elsewhere.  */
3010    
3011    /* The state stack.  */    /* The state stack.  */
3012    short int yyssa[YYINITDEPTH];    yytype_int16 yyssa[YYINITDEPTH];
3013    short int *yyss = yyssa;    yytype_int16 *yyss = yyssa;
3014    register short int *yyssp;    yytype_int16 *yyssp;
3015    
3016    /* The semantic value stack.  */    /* The semantic value stack.  */
3017    YYSTYPE yyvsa[YYINITDEPTH];    YYSTYPE yyvsa[YYINITDEPTH];
3018    YYSTYPE *yyvs = yyvsa;    YYSTYPE *yyvs = yyvsa;
3019    register YYSTYPE *yyvsp;    YYSTYPE *yyvsp;
3020    
3021    
3022    
3023  #define YYPOPSTACK   (yyvsp--, yyssp--)  #define YYPOPSTACK(N)   (yyvsp -= (N), yyssp -= (N))
3024    
3025    YYSIZE_T yystacksize = YYINITDEPTH;    YYSIZE_T yystacksize = YYINITDEPTH;
3026    
# Line 2451  int yynerrs; Line 3029  int yynerrs;
3029    YYSTYPE yyval;    YYSTYPE yyval;
3030    
3031    
3032    /* When reducing, the number of symbols on the RHS of the reduced    /* The number of symbols on the RHS of the reduced rule.
3033       rule.  */       Keep to zero when no symbol should be popped.  */
3034    int yylen;    int yylen = 0;
3035    
3036    YYDPRINTF ((stderr, "Starting parse\n"));    YYDPRINTF ((stderr, "Starting parse\n"));
3037    
# Line 2470  int yynerrs; Line 3048  int yynerrs;
3048    yyssp = yyss;    yyssp = yyss;
3049    yyvsp = yyvs;    yyvsp = yyvs;
3050    
   
3051    goto yysetstate;    goto yysetstate;
3052    
3053  /*------------------------------------------------------------.  /*------------------------------------------------------------.
# Line 2478  int yynerrs; Line 3055  int yynerrs;
3055  `------------------------------------------------------------*/  `------------------------------------------------------------*/
3056   yynewstate:   yynewstate:
3057    /* In all cases, when you get here, the value and location stacks    /* In all cases, when you get here, the value and location stacks
3058       have just been pushed. so pushing a state here evens the stacks.       have just been pushed.  So pushing a state here evens the stacks.  */
      */  
3059    yyssp++;    yyssp++;
3060    
3061   yysetstate:   yysetstate:
# Line 2492  int yynerrs; Line 3068  int yynerrs;
3068    
3069  #ifdef yyoverflow  #ifdef yyoverflow
3070        {        {
3071          /* Give user a chance to reallocate the stack. Use copies of          /* Give user a chance to reallocate the stack.  Use copies of
3072             these so that the &'s don't force the real ones into             these so that the &'s don't force the real ones into
3073             memory.  */             memory.  */
3074          YYSTYPE *yyvs1 = yyvs;          YYSTYPE *yyvs1 = yyvs;
3075          short int *yyss1 = yyss;          yytype_int16 *yyss1 = yyss;
3076    
3077    
3078          /* Each stack pointer address is followed by the size of the          /* Each stack pointer address is followed by the size of the
3079             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
3080             conditional around just the two extra args, but that might             conditional around just the two extra args, but that might
3081             be undefined if yyoverflow is a macro.  */             be undefined if yyoverflow is a macro.  */
3082          yyoverflow ("parser stack overflow",          yyoverflow (YY_("memory exhausted"),
3083                      &yyss1, yysize * sizeof (*yyssp),                      &yyss1, yysize * sizeof (*yyssp),
3084                      &yyvs1, yysize * sizeof (*yyvsp),                      &yyvs1, yysize * sizeof (*yyvsp),
3085    
# Line 2514  int yynerrs; Line 3090  int yynerrs;
3090        }        }
3091  #else /* no yyoverflow */  #else /* no yyoverflow */
3092  # ifndef YYSTACK_RELOCATE  # ifndef YYSTACK_RELOCATE
3093        goto yyoverflowlab;        goto yyexhaustedlab;
3094  # else  # else
3095        /* Extend the stack our own way.  */        /* Extend the stack our own way.  */
3096        if (YYMAXDEPTH <= yystacksize)        if (YYMAXDEPTH <= yystacksize)
3097          goto yyoverflowlab;          goto yyexhaustedlab;
3098        yystacksize *= 2;        yystacksize *= 2;
3099        if (YYMAXDEPTH < yystacksize)        if (YYMAXDEPTH < yystacksize)
3100          yystacksize = YYMAXDEPTH;          yystacksize = YYMAXDEPTH;
3101    
3102        {        {
3103          short int *yyss1 = yyss;          yytype_int16 *yyss1 = yyss;
3104          union yyalloc *yyptr =          union yyalloc *yyptr =
3105            (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));            (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
3106          if (! yyptr)          if (! yyptr)
3107            goto yyoverflowlab;            goto yyexhaustedlab;
3108          YYSTACK_RELOCATE (yyss);          YYSTACK_RELOCATE (yyss);
3109          YYSTACK_RELOCATE (yyvs);          YYSTACK_RELOCATE (yyvs);
3110    
# Line 2559  int yynerrs; Line 3135  int yynerrs;
3135  `-----------*/  `-----------*/
3136  yybackup:  yybackup:
3137    
3138  /* Do appropriate processing given the current state.  */    /* Do appropriate processing given the current state.  Read a
3139  /* Read a lookahead 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: */  
   
   /* First try to decide what to do without reference to lookahead token.  */  
3140    
3141      /* First try to decide what to do without reference to look-ahead token.  */
3142    yyn = yypact[yystate];    yyn = yypact[yystate];
3143    if (yyn == YYPACT_NINF)    if (yyn == YYPACT_NINF)
3144      goto yydefault;      goto yydefault;
3145    
3146    /* Not known => get a lookahead token if don't already have one.  */    /* Not known => get a look-ahead token if don't already have one.  */
3147    
3148    /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol.  */    /* YYCHAR is either YYEMPTY or YYEOF or a valid look-ahead symbol.  */
3149    if (yychar == YYEMPTY)    if (yychar == YYEMPTY)
3150      {      {
3151        YYDPRINTF ((stderr, "Reading a token: "));        YYDPRINTF ((stderr, "Reading a token: "));
# Line 2586  yybackup: Line 3160  yybackup:
3160    else    else
3161      {      {
3162        yytoken = YYTRANSLATE (yychar);        yytoken = YYTRANSLATE (yychar);
3163        YYDSYMPRINTF ("Next token is", yytoken, &yylval, &yylloc);        YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
3164      }      }
3165    
3166    /* If the proper action on seeing token YYTOKEN is to reduce or to    /* If the proper action on seeing token YYTOKEN is to reduce or to
# Line 2606  yybackup: Line 3180  yybackup:
3180    if (yyn == YYFINAL)    if (yyn == YYFINAL)
3181      YYACCEPT;      YYACCEPT;
3182    
   /* Shift the lookahead token.  */  
   YYDPRINTF ((stderr, "Shifting token %s, ", yytname[yytoken]));  
   
   /* Discard the token being shifted unless it is eof.  */  
   if (yychar != YYEOF)  
     yychar = YYEMPTY;  
   
   *++yyvsp = yylval;  
   
   
3183    /* Count tokens shifted since error; after three, turn off error    /* Count tokens shifted since error; after three, turn off error
3184       status.  */       status.  */
3185    if (yyerrstatus)    if (yyerrstatus)
3186      yyerrstatus--;      yyerrstatus--;
3187    
3188      /* Shift the look-ahead token.  */
3189      YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
3190    
3191      /* Discard the shifted token unless it is eof.  */
3192      if (yychar != YYEOF)
3193        yychar = YYEMPTY;
3194    
3195    yystate = yyn;    yystate = yyn;
3196      *++yyvsp = yylval;
3197    
3198    goto yynewstate;    goto yynewstate;
3199    
3200    
# Line 2657  yyreduce: Line 3230  yyreduce:
3230    switch (yyn)    switch (yyn)
3231      {      {
3232          case 4:          case 4:
3233  #line 86 "lscp.y"  #line 100 "lscp.y"
3234      { return LSCP_DONE; }      { return LSCP_DONE; }
3235      break;      break;
3236    
3237    case 5:    case 5:
3238  #line 87 "lscp.y"  #line 101 "lscp.y"
3239      { return LSCP_DONE; }      { return LSCP_DONE; }
3240      break;      break;
3241    
3242    case 6:    case 6:
3243  #line 88 "lscp.y"  #line 102 "lscp.y"
3244      { LSCPSERVER->AnswerClient(yyvsp[0].String); return LSCP_DONE; }      { LSCPSERVER->AnswerClient((yyvsp[(1) - (1)].String)); return LSCP_DONE; }
3245      break;      break;
3246    
3247    case 7:    case 7:
3248  #line 89 "lscp.y"  #line 103 "lscp.y"
3249      { 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; }
3250      break;      break;
3251    
3252    case 13:    case 13:
3253  #line 99 "lscp.y"  #line 113 "lscp.y"
3254      { yyval.String = LSCPSERVER->AddChannel();                          }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3255      break;      break;
3256    
3257    case 14:    case 14:
3258  #line 100 "lscp.y"  #line 114 "lscp.y"
3259      { yyval.String = yyvsp[0].String;                                                }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3260      break;      break;
3261    
3262    case 15:    case 15:
3263  #line 101 "lscp.y"  #line 115 "lscp.y"
3264      { yyval.String = yyvsp[0].String;                                                }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3265      break;      break;
3266    
3267    case 16:    case 16:
3268  #line 102 "lscp.y"  #line 116 "lscp.y"
3269      { yyval.String = yyvsp[0].String;                                                }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3270      break;      break;
3271    
3272    case 17:    case 17:
3273  #line 103 "lscp.y"  #line 117 "lscp.y"
3274      { yyval.String = yyvsp[0].String;                                                }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3275      break;      break;
3276    
3277    case 18:    case 18:
3278  #line 104 "lscp.y"  #line 118 "lscp.y"
3279      { yyval.String = yyvsp[0].String;                                                }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3280      break;      break;
3281    
3282    case 19:    case 19:
3283  #line 105 "lscp.y"  #line 119 "lscp.y"
3284      { yyval.String = LSCPSERVER->RemoveChannel(yyvsp[0].Number);                     }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3285      break;      break;
3286    
3287    case 20:    case 20:
3288  #line 106 "lscp.y"  #line 120 "lscp.y"
3289      { yyval.String = yyvsp[0].String;                                                }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3290      break;      break;
3291    
3292    case 21:    case 21:
3293  #line 107 "lscp.y"  #line 121 "lscp.y"
3294      { yyval.String = yyvsp[0].String;                                                }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3295      break;      break;
3296    
3297    case 22:    case 22:
3298  #line 108 "lscp.y"  #line 122 "lscp.y"
3299      { yyval.String = yyvsp[0].String;                                                }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3300      break;      break;
3301    
3302    case 23:    case 23:
3303  #line 109 "lscp.y"  #line 123 "lscp.y"
3304      { yyval.String = LSCPSERVER->QueryDatabase(yyvsp[0].String);                     }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3305      break;      break;
3306    
3307    case 24:    case 24:
3308  #line 110 "lscp.y"  #line 124 "lscp.y"
3309      { yyval.String = LSCPSERVER->ResetChannel(yyvsp[0].Number);                      }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3310      break;      break;
3311    
3312    case 25:    case 25:
3313  #line 111 "lscp.y"  #line 125 "lscp.y"
3314      { yyval.String = LSCPSERVER->ResetSampler();                        }      { (yyval.String) = LSCPSERVER->QueryDatabase((yyvsp[(3) - (3)].String));                     }
3315      break;      break;
3316    
3317    case 26:    case 26:
3318  #line 112 "lscp.y"  #line 126 "lscp.y"
3319      { LSCPSERVER->AnswerClient("Bye!\r\n"); return LSCP_QUIT; }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3320      break;      break;
3321    
3322    case 27:    case 27:
3323  #line 115 "lscp.y"  #line 127 "lscp.y"
3324      { yyval.String = LSCPSERVER->SubscribeNotification(LSCPEvent::event_channel_count); }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3325      break;      break;
3326    
3327    case 28:    case 28:
3328  #line 116 "lscp.y"  #line 128 "lscp.y"
3329      { yyval.String = LSCPSERVER->SubscribeNotification(LSCPEvent::event_voice_count);   }      { (yyval.String) = LSCPSERVER->ResetSampler();                        }
3330      break;      break;
3331    
3332    case 29:    case 29:
3333  #line 117 "lscp.y"  #line 129 "lscp.y"
3334      { yyval.String = LSCPSERVER->SubscribeNotification(LSCPEvent::event_stream_count);  }      { LSCPSERVER->AnswerClient("Bye!\r\n"); return LSCP_QUIT; }
3335      break;      break;
3336    
3337    case 30:    case 30:
3338  #line 118 "lscp.y"  #line 132 "lscp.y"
3339      { yyval.String = LSCPSERVER->SubscribeNotification(LSCPEvent::event_buffer_fill);   }      { (yyval.String) = LSCPSERVER->AddChannel();                          }
3340      break;      break;
3341    
3342    case 31:    case 31:
3343  #line 119 "lscp.y"  #line 133 "lscp.y"
3344      { yyval.String = LSCPSERVER->SubscribeNotification(LSCPEvent::event_channel_info);  }      { (yyval.String) = LSCPSERVER->AddMidiInstrumentMap();                }
3345      break;      break;
3346    
3347    case 32:    case 32:
3348  #line 120 "lscp.y"  #line 134 "lscp.y"
3349      { yyval.String = LSCPSERVER->SubscribeNotification(LSCPEvent::event_misc);          }      { (yyval.String) = LSCPSERVER->AddMidiInstrumentMap((yyvsp[(3) - (3)].String));              }
3350      break;      break;
3351    
3352    case 33:    case 33:
3353  #line 123 "lscp.y"  #line 137 "lscp.y"
3354      { yyval.String = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_channel_count); }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_audio_device_count);   }
3355      break;      break;
3356    
3357    case 34:    case 34:
3358  #line 124 "lscp.y"  #line 138 "lscp.y"
3359      { yyval.String = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_voice_count);   }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_audio_device_info);    }
3360      break;      break;
3361    
3362    case 35:    case 35:
3363  #line 125 "lscp.y"  #line 139 "lscp.y"
3364      { yyval.String = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_stream_count);  }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_midi_device_count);    }
3365      break;      break;
3366    
3367    case 36:    case 36:
3368  #line 126 "lscp.y"  #line 140 "lscp.y"
3369      { yyval.String = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_buffer_fill);   }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_midi_device_info);     }
3370      break;      break;
3371    
3372    case 37:    case 37:
3373  #line 127 "lscp.y"  #line 141 "lscp.y"
3374      { yyval.String = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_channel_info);  }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_channel_count);        }
3375      break;      break;
3376    
3377    case 38:    case 38:
3378  #line 128 "lscp.y"  #line 142 "lscp.y"
3379      { yyval.String = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_misc);          }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_voice_count);          }
3380      break;      break;
3381    
3382    case 39:    case 39:
3383  #line 131 "lscp.y"  #line 143 "lscp.y"
3384      { yyval.String = LSCPSERVER->GetAvailableEngines();                          }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_stream_count);         }
3385      break;      break;
3386    
3387    case 40:    case 40:
3388  #line 132 "lscp.y"  #line 144 "lscp.y"
3389      { yyval.String = LSCPSERVER->GetAvailableMidiInputDrivers();                 }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_buffer_fill);          }
3390      break;      break;
3391    
3392    case 41:    case 41:
3393  #line 133 "lscp.y"  #line 145 "lscp.y"
3394      { yyval.String = LSCPSERVER->GetMidiInputDriverInfo(yyvsp[0].String);                     }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_channel_info);         }
3395      break;      break;
3396    
3397    case 42:    case 42:
3398  #line 134 "lscp.y"  #line 146 "lscp.y"
3399      { yyval.String = LSCPSERVER->GetMidiInputDriverParameterInfo(yyvsp[-2].String, yyvsp[0].String);        }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_midi_instr_map_count); }
3400      break;      break;
3401    
3402    case 43:    case 43:
3403  #line 135 "lscp.y"  #line 147 "lscp.y"
3404      { yyval.String = LSCPSERVER->GetMidiInputDriverParameterInfo(yyvsp[-4].String, yyvsp[-2].String, yyvsp[0].KeyValList);    }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_midi_instr_map_info);  }
3405      break;      break;
3406    
3407    case 44:    case 44:
3408  #line 136 "lscp.y"  #line 148 "lscp.y"
3409      { yyval.String = LSCPSERVER->GetAvailableAudioOutputDrivers();               }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_midi_instr_count);     }
3410      break;      break;
3411    
3412    case 45:    case 45:
3413  #line 137 "lscp.y"  #line 149 "lscp.y"
3414      { yyval.String = LSCPSERVER->GetAudioOutputDriverInfo(yyvsp[0].String);                   }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_midi_instr_info);      }
3415      break;      break;
3416    
3417    case 46:    case 46:
3418  #line 138 "lscp.y"  #line 150 "lscp.y"
3419      { yyval.String = LSCPSERVER->GetAudioOutputDriverParameterInfo(yyvsp[-2].String, yyvsp[0].String);      }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_misc);                 }
3420      break;      break;
3421    
3422    case 47:    case 47:
3423  #line 139 "lscp.y"  #line 151 "lscp.y"
3424      { yyval.String = LSCPSERVER->GetAudioOutputDriverParameterInfo(yyvsp[-4].String, yyvsp[-2].String, yyvsp[0].KeyValList);  }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_total_voice_count);    }
3425      break;      break;
3426    
3427    case 48:    case 48:
3428  #line 140 "lscp.y"  #line 154 "lscp.y"
3429      { yyval.String = LSCPSERVER->GetAudioOutputDeviceCount();                    }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_audio_device_count);   }
3430      break;      break;
3431    
3432    case 49:    case 49:
3433  #line 141 "lscp.y"  #line 155 "lscp.y"
3434      { yyval.String = LSCPSERVER->GetMidiInputDeviceCount();                      }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_audio_device_info);    }
3435      break;      break;
3436    
3437    case 50:    case 50:
3438  #line 142 "lscp.y"  #line 156 "lscp.y"
3439      { yyval.String = LSCPSERVER->GetAudioOutputDeviceInfo(yyvsp[0].Number);                   }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_midi_device_count);    }
3440      break;      break;
3441    
3442    case 51:    case 51:
3443  #line 143 "lscp.y"  #line 157 "lscp.y"
3444      { yyval.String = LSCPSERVER->GetMidiInputDeviceInfo(yyvsp[0].Number);                     }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_midi_device_info);     }
3445      break;      break;
3446    
3447    case 52:    case 52:
3448  #line 144 "lscp.y"  #line 158 "lscp.y"
3449      { yyval.String = LSCPSERVER->GetMidiInputPortInfo(yyvsp[-2].Number, yyvsp[0].Number);                   }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_channel_count);        }
3450      break;      break;
3451    
3452    case 53:    case 53:
3453  #line 145 "lscp.y"  #line 159 "lscp.y"
3454      { yyval.String = LSCPSERVER->GetMidiInputPortParameterInfo(yyvsp[-4].Number, yyvsp[-2].Number, yyvsp[0].String);      }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_voice_count);          }
3455      break;      break;
3456    
3457    case 54:    case 54:
3458  #line 146 "lscp.y"  #line 160 "lscp.y"
3459      { yyval.String = LSCPSERVER->GetAudioOutputChannelInfo(yyvsp[-2].Number, yyvsp[0].Number);              }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_stream_count);         }
3460      break;      break;
3461    
3462    case 55:    case 55:
3463  #line 147 "lscp.y"  #line 161 "lscp.y"
3464      { yyval.String = LSCPSERVER->GetAudioOutputChannelParameterInfo(yyvsp[-4].Number, yyvsp[-2].Number, yyvsp[0].String); }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_buffer_fill);          }
3465      break;      break;
3466    
3467    case 56:    case 56:
3468  #line 148 "lscp.y"  #line 162 "lscp.y"
3469      { yyval.String = LSCPSERVER->GetChannels();                                  }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_channel_info);         }
3470      break;      break;
3471    
3472    case 57:    case 57:
3473  #line 149 "lscp.y"  #line 163 "lscp.y"
3474      { yyval.String = LSCPSERVER->GetChannelInfo(yyvsp[0].Number);                             }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_midi_instr_map_count); }
3475      break;      break;
3476    
3477    case 58:    case 58:
3478  #line 150 "lscp.y"  #line 164 "lscp.y"
3479      { yyval.String = LSCPSERVER->GetBufferFill(yyvsp[-2].FillResponse, yyvsp[0].Number);                          }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_midi_instr_map_info);  }
3480      break;      break;
3481    
3482    case 59:    case 59:
3483  #line 151 "lscp.y"  #line 165 "lscp.y"
3484      { yyval.String = LSCPSERVER->GetStreamCount(yyvsp[0].Number);                             }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_midi_instr_count);     }
3485      break;      break;
3486    
3487    case 60:    case 60:
3488  #line 152 "lscp.y"  #line 166 "lscp.y"
3489      { yyval.String = LSCPSERVER->GetVoiceCount(yyvsp[0].Number);                              }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_midi_instr_info);      }
3490      break;      break;
3491    
3492    case 61:    case 61:
3493  #line 153 "lscp.y"  #line 167 "lscp.y"
3494      { yyval.String = LSCPSERVER->GetEngineInfo(yyvsp[0].String);                              }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_misc);                 }
3495      break;      break;
3496    
3497    case 62:    case 62:
3498  #line 156 "lscp.y"  #line 168 "lscp.y"
3499      { yyval.String = LSCPSERVER->SetAudioOutputDeviceParameter(yyvsp[-4].Number, yyvsp[-2].String, yyvsp[0].String);      }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_total_voice_count);    }
3500      break;      break;
3501    
3502    case 63:    case 63:
3503  #line 157 "lscp.y"  #line 171 "lscp.y"
3504      { yyval.String = LSCPSERVER->SetAudioOutputChannelParameter(yyvsp[-6].Number, yyvsp[-4].Number, yyvsp[-2].String, 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,""); }
3505      break;      break;
3506    
3507    case 64:    case 64:
3508  #line 158 "lscp.y"  #line 172 "lscp.y"
3509      { yyval.String = LSCPSERVER->SetMidiInputDeviceParameter(yyvsp[-4].Number, yyvsp[-2].String, yyvsp[0].String);        }      { (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),""); }
3510      break;      break;
3511    
3512    case 65:    case 65:
3513  #line 159 "lscp.y"  #line 173 "lscp.y"
3514      { yyval.String = LSCPSERVER->SetMidiInputPortParameter(yyvsp[-6].Number, yyvsp[-4].Number, yyvsp[-2].String, yyvsp[0].String);      }      { (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)); }
3515      break;      break;
3516    
3517    case 66:    case 66:
3518  #line 160 "lscp.y"  #line 174 "lscp.y"
3519      { yyval.String = yyvsp[0].String;                                                         }      { (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)); }
3520      break;      break;
3521    
3522    case 67:    case 67:
3523  #line 161 "lscp.y"  #line 177 "lscp.y"
3524      { yyval.String = LSCPSERVER->SetEcho((yyparse_param_t*) yyparse_param, yyvsp[0].Dotnum);  }      { (yyval.String) = LSCPSERVER->RemoveMIDIInstrumentMapping((yyvsp[(3) - (7)].Number),(yyvsp[(5) - (7)].Number),(yyvsp[(7) - (7)].Number)); }
3525      break;      break;
3526    
3527    case 68:    case 68:
3528  #line 164 "lscp.y"  #line 180 "lscp.y"
3529      { yyval.String = LSCPSERVER->CreateAudioOutputDevice(yyvsp[-2].String,yyvsp[0].KeyValList); }      { (yyval.String) = LSCPSERVER->RemoveChannel((yyvsp[(3) - (3)].Number));             }
3530      break;      break;
3531    
3532    case 69:    case 69:
3533  #line 165 "lscp.y"  #line 181 "lscp.y"
3534      { yyval.String = LSCPSERVER->CreateAudioOutputDevice(yyvsp[0].String);    }      { (yyval.String) = LSCPSERVER->RemoveMidiInstrumentMap((yyvsp[(3) - (3)].Number));   }
3535      break;      break;
3536    
3537    case 70:    case 70:
3538  #line 166 "lscp.y"  #line 182 "lscp.y"
3539      { yyval.String = LSCPSERVER->CreateMidiInputDevice(yyvsp[-2].String,yyvsp[0].KeyValList);   }      { (yyval.String) = LSCPSERVER->RemoveAllMidiInstrumentMaps(); }
3540      break;      break;
3541    
3542    case 71:    case 71:
3543  #line 167 "lscp.y"  #line 185 "lscp.y"
3544      { yyval.String = LSCPSERVER->CreateMidiInputDevice(yyvsp[0].String);      }      { (yyval.String) = LSCPSERVER->GetAvailableEngines();                          }
3545      break;      break;
3546    
3547    case 72:    case 72:
3548  #line 170 "lscp.y"  #line 186 "lscp.y"
3549      { yyval.String = LSCPSERVER->DestroyAudioOutputDevice(yyvsp[0].Number); }      { (yyval.String) = LSCPSERVER->GetAvailableMidiInputDrivers();                 }
3550      break;      break;
3551    
3552    case 73:    case 73:
3553  #line 171 "lscp.y"  #line 187 "lscp.y"
3554      { yyval.String = LSCPSERVER->DestroyMidiInputDevice(yyvsp[0].Number);   }      { (yyval.String) = LSCPSERVER->GetMidiInputDriverInfo((yyvsp[(5) - (5)].String));                     }
3555      break;      break;
3556    
3557    case 74:    case 74:
3558  #line 174 "lscp.y"  #line 188 "lscp.y"
3559      { yyval.String = yyvsp[0].String; }      { (yyval.String) = LSCPSERVER->GetMidiInputDriverParameterInfo((yyvsp[(5) - (7)].String), (yyvsp[(7) - (7)].String));        }
3560      break;      break;
3561    
3562    case 75:    case 75:
3563  #line 175 "lscp.y"  #line 189 "lscp.y"
3564      { yyval.String = yyvsp[0].String; }      { (yyval.String) = LSCPSERVER->GetMidiInputDriverParameterInfo((yyvsp[(5) - (9)].String), (yyvsp[(7) - (9)].String), (yyvsp[(9) - (9)].KeyValList));    }
3565      break;      break;
3566    
3567    case 76:    case 76:
3568  #line 178 "lscp.y"  #line 190 "lscp.y"
3569      { yyval.String = LSCPSERVER->SetAudioOutputDevice(yyvsp[0].Number, yyvsp[-2].Number);      }      { (yyval.String) = LSCPSERVER->GetAvailableAudioOutputDrivers();               }
3570      break;      break;
3571    
3572    case 77:    case 77:
3573  #line 179 "lscp.y"  #line 191 "lscp.y"
3574      { yyval.String = LSCPSERVER->SetAudioOutputChannel(yyvsp[-2].Number, yyvsp[0].Number, yyvsp[-4].Number); }      { (yyval.String) = LSCPSERVER->GetAudioOutputDriverInfo((yyvsp[(5) - (5)].String));                   }
3575      break;      break;
3576    
3577    case 78:    case 78:
3578  #line 180 "lscp.y"  #line 192 "lscp.y"
3579      { yyval.String = LSCPSERVER->SetAudioOutputType(yyvsp[0].String, yyvsp[-2].Number);        }      { (yyval.String) = LSCPSERVER->GetAudioOutputDriverParameterInfo((yyvsp[(5) - (7)].String), (yyvsp[(7) - (7)].String));      }
3580      break;      break;
3581    
3582    case 79:    case 79:
3583  #line 181 "lscp.y"  #line 193 "lscp.y"
3584      { yyval.String = LSCPSERVER->SetMIDIInput(yyvsp[-4].Number, yyvsp[-2].Number, yyvsp[0].Number, yyvsp[-6].Number);      }      { (yyval.String) = LSCPSERVER->GetAudioOutputDriverParameterInfo((yyvsp[(5) - (9)].String), (yyvsp[(7) - (9)].String), (yyvsp[(9) - (9)].KeyValList));  }
3585      break;      break;
3586    
3587    case 80:    case 80:
3588  #line 182 "lscp.y"  #line 194 "lscp.y"
3589      { yyval.String = LSCPSERVER->SetMIDIInputDevice(yyvsp[0].Number, yyvsp[-2].Number);        }      { (yyval.String) = LSCPSERVER->GetAudioOutputDeviceCount();                    }
3590      break;      break;
3591    
3592    case 81:    case 81:
3593  #line 183 "lscp.y"  #line 195 "lscp.y"
3594      { yyval.String = LSCPSERVER->SetMIDIInputPort(yyvsp[0].Number, yyvsp[-2].Number);          }      { (yyval.String) = LSCPSERVER->GetMidiInputDeviceCount();                      }
3595      break;      break;
3596    
3597    case 82:    case 82:
3598  #line 184 "lscp.y"  #line 196 "lscp.y"
3599      { yyval.String = LSCPSERVER->SetMIDIInputChannel(yyvsp[0].Number, yyvsp[-2].Number);       }      { (yyval.String) = LSCPSERVER->GetAudioOutputDeviceInfo((yyvsp[(5) - (5)].Number));                   }
3600      break;      break;
3601    
3602    case 83:    case 83:
3603  #line 185 "lscp.y"  #line 197 "lscp.y"
3604      { yyval.String = LSCPSERVER->SetMIDIInputType(yyvsp[0].String, yyvsp[-2].Number);          }      { (yyval.String) = LSCPSERVER->GetMidiInputDeviceInfo((yyvsp[(5) - (5)].Number));                     }
3605      break;      break;
3606    
3607    case 84:    case 84:
3608  #line 186 "lscp.y"  #line 198 "lscp.y"
3609      { yyval.String = LSCPSERVER->SetVolume(yyvsp[0].Dotnum, yyvsp[-2].Number);                 }      { (yyval.String) = LSCPSERVER->GetMidiInputPortInfo((yyvsp[(5) - (7)].Number), (yyvsp[(7) - (7)].Number));                   }
3610      break;      break;
3611    
3612    case 85:    case 85:
3613  #line 189 "lscp.y"  #line 199 "lscp.y"
3614      { yyval.KeyValList[yyvsp[-2].String] = yyvsp[0].String;          }      { (yyval.String) = LSCPSERVER->GetMidiInputPortParameterInfo((yyvsp[(5) - (9)].Number), (yyvsp[(7) - (9)].Number), (yyvsp[(9) - (9)].String));      }
3615      break;      break;
3616    
3617    case 86:    case 86:
3618  #line 190 "lscp.y"  #line 200 "lscp.y"
3619      { yyval.KeyValList = yyvsp[-4].KeyValList; yyval.KeyValList[yyvsp[-2].String] = yyvsp[0].String; }      { (yyval.String) = LSCPSERVER->GetAudioOutputChannelInfo((yyvsp[(5) - (7)].Number), (yyvsp[(7) - (7)].Number));              }
3620      break;      break;
3621    
3622    case 87:    case 87:
3623  #line 193 "lscp.y"  #line 201 "lscp.y"
3624      { yyval.FillResponse = fill_response_bytes;      }      { (yyval.String) = LSCPSERVER->GetAudioOutputChannelParameterInfo((yyvsp[(5) - (9)].Number), (yyvsp[(7) - (9)].Number), (yyvsp[(9) - (9)].String)); }
3625      break;      break;
3626    
3627    case 88:    case 88:
3628  #line 194 "lscp.y"  #line 202 "lscp.y"
3629      { yyval.FillResponse = fill_response_percentage; }      { (yyval.String) = LSCPSERVER->GetChannels();                                  }
3630      break;      break;
3631    
3632    case 89:    case 89:
3633  #line 197 "lscp.y"  #line 203 "lscp.y"
3634      { yyval.String = LSCPSERVER->GetAudioOutputDevices();           }      { (yyval.String) = LSCPSERVER->GetChannelInfo((yyvsp[(5) - (5)].Number));                             }
3635      break;      break;
3636    
3637    case 90:    case 90:
3638  #line 198 "lscp.y"  #line 204 "lscp.y"
3639      { yyval.String = LSCPSERVER->GetMidiInputDevices();             }      { (yyval.String) = LSCPSERVER->GetBufferFill((yyvsp[(5) - (7)].FillResponse), (yyvsp[(7) - (7)].Number));                          }
3640      break;      break;
3641    
3642    case 91:    case 91:
3643  #line 199 "lscp.y"  #line 205 "lscp.y"
3644      { yyval.String = LSCPSERVER->ListChannels();                    }      { (yyval.String) = LSCPSERVER->GetStreamCount((yyvsp[(5) - (5)].Number));                             }
3645      break;      break;
3646    
3647    case 92:    case 92:
3648  #line 200 "lscp.y"  #line 206 "lscp.y"
3649      { yyval.String = LSCPSERVER->ListAvailableEngines();            }      { (yyval.String) = LSCPSERVER->GetVoiceCount((yyvsp[(5) - (5)].Number));                              }
3650      break;      break;
3651    
3652    case 93:    case 93:
3653  #line 201 "lscp.y"  #line 207 "lscp.y"
3654      { yyval.String = LSCPSERVER->ListAvailableMidiInputDrivers();   }      { (yyval.String) = LSCPSERVER->GetEngineInfo((yyvsp[(5) - (5)].String));                              }
3655      break;      break;
3656    
3657    case 94:    case 94:
3658  #line 202 "lscp.y"  #line 208 "lscp.y"
3659      { yyval.String = LSCPSERVER->ListAvailableAudioOutputDrivers(); }      { (yyval.String) = LSCPSERVER->GetServerInfo();                                }
3660      break;      break;
3661    
3662    case 95:    case 95:
3663  #line 205 "lscp.y"  #line 209 "lscp.y"
3664      { yyval.String = LSCPSERVER->LoadInstrument(yyvsp[-4].String, yyvsp[-2].Number, yyvsp[0].Number);       }      { (yyval.String) = LSCPSERVER->GetTotalVoiceCount();                                }
3665      break;      break;
3666    
3667    case 96:    case 96:
3668  #line 206 "lscp.y"  #line 210 "lscp.y"
3669      { yyval.String = LSCPSERVER->LoadInstrument(yyvsp[-4].String, yyvsp[-2].Number, yyvsp[0].Number, true); }      { (yyval.String) = LSCPSERVER->GetTotalVoiceCountMax();                        }
3670      break;      break;
3671    
3672    case 97:    case 97:
3673  #line 209 "lscp.y"  #line 211 "lscp.y"
3674      { yyval.String = LSCPSERVER->SetEngineType(yyvsp[-2].String, yyvsp[0].Number); }      { (yyval.String) = LSCPSERVER->GetMidiInstrumentMappings((yyvsp[(3) - (3)].Number));                  }
3675        break;
3676    
3677      case 98:
3678    #line 212 "lscp.y"
3679        { (yyval.String) = LSCPSERVER->GetAllMidiInstrumentMappings();                 }
3680        break;
3681    
3682      case 99:
3683    #line 213 "lscp.y"
3684        { (yyval.String) = LSCPSERVER->GetMidiInstrumentMapping((yyvsp[(5) - (9)].Number),(yyvsp[(7) - (9)].Number),(yyvsp[(9) - (9)].Number));             }
3685        break;
3686    
3687      case 100:
3688    #line 214 "lscp.y"
3689        { (yyval.String) = LSCPSERVER->GetMidiInstrumentMaps();                        }
3690        break;
3691    
3692      case 101:
3693    #line 215 "lscp.y"
3694        { (yyval.String) = LSCPSERVER->GetMidiInstrumentMap((yyvsp[(5) - (5)].Number));                       }
3695        break;
3696    
3697      case 102:
3698    #line 216 "lscp.y"
3699        { (yyval.String) = LSCPSERVER->GetFxSends((yyvsp[(3) - (3)].Number));                                 }
3700      break;      break;
3701    
3702    case 103:    case 103:
3703  #line 225 "lscp.y"  #line 217 "lscp.y"
3704      { yyval.Number = 16; }      { (yyval.String) = LSCPSERVER->GetFxSendInfo((yyvsp[(5) - (7)].Number),(yyvsp[(7) - (7)].Number));                           }
3705        break;
3706    
3707      case 104:
3708    #line 220 "lscp.y"
3709        { (yyval.String) = LSCPSERVER->SetAudioOutputDeviceParameter((yyvsp[(3) - (7)].Number), (yyvsp[(5) - (7)].String), (yyvsp[(7) - (7)].String));      }
3710        break;
3711    
3712      case 105:
3713    #line 221 "lscp.y"
3714        { (yyval.String) = LSCPSERVER->SetAudioOutputChannelParameter((yyvsp[(3) - (9)].Number), (yyvsp[(5) - (9)].Number), (yyvsp[(7) - (9)].String), (yyvsp[(9) - (9)].String)); }
3715      break;      break;
3716    
3717    case 106:    case 106:
3718  #line 232 "lscp.y"  #line 222 "lscp.y"
3719      { yyval.Dotnum = yyvsp[0].Number; }      { (yyval.String) = LSCPSERVER->SetMidiInputDeviceParameter((yyvsp[(3) - (7)].Number), (yyvsp[(5) - (7)].String), (yyvsp[(7) - (7)].String));        }
3720        break;
3721    
3722      case 107:
3723    #line 223 "lscp.y"
3724        { (yyval.String) = LSCPSERVER->SetMidiInputPortParameter((yyvsp[(3) - (9)].Number), (yyvsp[(5) - (9)].Number), (yyvsp[(7) - (9)].String), (yyvsp[(9) - (9)].String));      }
3725        break;
3726    
3727      case 108:
3728    #line 224 "lscp.y"
3729        { (yyval.String) = (yyvsp[(3) - (3)].String);                                                         }
3730        break;
3731    
3732      case 109:
3733    #line 225 "lscp.y"
3734        { (yyval.String) = LSCPSERVER->SetMidiInstrumentMapName((yyvsp[(5) - (7)].Number), (yyvsp[(7) - (7)].String));               }
3735        break;
3736    
3737      case 110:
3738    #line 226 "lscp.y"
3739        { (yyval.String) = LSCPSERVER->SetFxSendAudioOutputChannel((yyvsp[(5) - (11)].Number),(yyvsp[(7) - (11)].Number),(yyvsp[(9) - (11)].Number),(yyvsp[(11) - (11)].Number)); }
3740        break;
3741    
3742      case 111:
3743    #line 227 "lscp.y"
3744        { (yyval.String) = LSCPSERVER->SetEcho((yyparse_param_t*) yyparse_param, (yyvsp[(3) - (3)].Dotnum));  }
3745      break;      break;
3746    
3747    case 112:    case 112:
3748  #line 248 "lscp.y"  #line 230 "lscp.y"
3749      { yyval.String = yyvsp[-2].String + "," + yyvsp[0].String; }      { (yyval.String) = LSCPSERVER->CreateAudioOutputDevice((yyvsp[(3) - (5)].String),(yyvsp[(5) - (5)].KeyValList)); }
3750        break;
3751    
3752      case 113:
3753    #line 231 "lscp.y"
3754        { (yyval.String) = LSCPSERVER->CreateAudioOutputDevice((yyvsp[(3) - (3)].String));    }
3755      break;      break;
3756    
3757    case 114:    case 114:
3758  #line 252 "lscp.y"  #line 232 "lscp.y"
3759      { yyval.String = "\'" + yyvsp[-1].String + "\'"; }      { (yyval.String) = LSCPSERVER->CreateMidiInputDevice((yyvsp[(3) - (5)].String),(yyvsp[(5) - (5)].KeyValList));   }
3760      break;      break;
3761    
3762    case 115:    case 115:
3763  #line 253 "lscp.y"  #line 233 "lscp.y"
3764      { yyval.String = "\"" + yyvsp[-1].String + "\""; }      { (yyval.String) = LSCPSERVER->CreateMidiInputDevice((yyvsp[(3) - (3)].String));      }
3765      break;      break;
3766    
3767    case 116:    case 116:
3768  #line 254 "lscp.y"  #line 234 "lscp.y"
3769      { std::stringstream ss; ss << "\'" << yyvsp[0].Number << "\'"; yyval.String = ss.str(); }      { (yyval.String) = LSCPSERVER->CreateFxSend((yyvsp[(3) - (5)].Number),(yyvsp[(5) - (5)].Number));            }
3770      break;      break;
3771    
3772    case 117:    case 117:
3773  #line 255 "lscp.y"  #line 235 "lscp.y"
3774      { std::stringstream ss; ss << "\'" << yyvsp[0].Dotnum << "\'"; yyval.String = ss.str(); }      { (yyval.String) = LSCPSERVER->CreateFxSend((yyvsp[(3) - (7)].Number),(yyvsp[(5) - (7)].Number),(yyvsp[(7) - (7)].String)); }
3775      break;      break;
3776    
3777    case 118:    case 118:
3778  #line 261 "lscp.y"  #line 238 "lscp.y"
3779      { yyval.Dotnum = yyvsp[0].Number; }      { (yyval.String) = LSCPSERVER->ResetChannel((yyvsp[(3) - (3)].Number)); }
3780      break;      break;
3781    
3782    case 119:    case 119:
3783  #line 262 "lscp.y"  #line 241 "lscp.y"
3784      { yyval.Dotnum = -1; }      { (yyval.String) = LSCPSERVER->ClearMidiInstrumentMappings((yyvsp[(3) - (3)].Number));  }
3785      break;      break;
3786    
3787    case 120:    case 120:
3788  #line 265 "lscp.y"  #line 242 "lscp.y"
3789      { std::string s; s = yyvsp[0].Char; yyval.String = s; }      { (yyval.String) = LSCPSERVER->ClearAllMidiInstrumentMappings(); }
3790      break;      break;
3791    
3792    case 121:    case 121:
3793  #line 266 "lscp.y"  #line 245 "lscp.y"
3794      { yyval.String = yyvsp[-1].String + yyvsp[0].Char;                  }      { (yyval.String) = LSCPSERVER->DestroyAudioOutputDevice((yyvsp[(3) - (3)].Number)); }
3795      break;      break;
3796    
3797    case 122:    case 122:
3798  #line 269 "lscp.y"  #line 246 "lscp.y"
3799      { yyval.Dotnum = atof(String(yyvsp[-2].String + "." + yyvsp[0].String).c_str());                         }      { (yyval.String) = LSCPSERVER->DestroyMidiInputDevice((yyvsp[(3) - (3)].Number));   }
3800      break;      break;
3801    
3802    case 123:    case 123:
3803  #line 270 "lscp.y"  #line 247 "lscp.y"
3804      { String s = "+"; s += yyvsp[-2].String; s += "."; s += yyvsp[0].String; yyval.Dotnum = atof(s.c_str()); }      { (yyval.String) = LSCPSERVER->DestroyFxSend((yyvsp[(3) - (5)].Number),(yyvsp[(5) - (5)].Number)); }
3805      break;      break;
3806    
3807    case 124:    case 124:
3808  #line 271 "lscp.y"  #line 250 "lscp.y"
3809      { yyval.Dotnum = atof(String("-" + yyvsp[-2].String + "." + yyvsp[0].String).c_str());                   }      { (yyval.String) = (yyvsp[(3) - (3)].String); }
3810      break;      break;
3811    
3812    case 125:    case 125:
3813  #line 275 "lscp.y"  #line 251 "lscp.y"
3814      { yyval.String = yyvsp[0].Char;      }      { (yyval.String) = (yyvsp[(3) - (3)].String); }
3815      break;      break;
3816    
3817    case 126:    case 126:
3818  #line 276 "lscp.y"  #line 254 "lscp.y"
3819      { yyval.String = yyvsp[-1].String + yyvsp[0].Char; }      { (yyval.String) = LSCPSERVER->SetAudioOutputDevice((yyvsp[(5) - (5)].Number), (yyvsp[(3) - (5)].Number));      }
3820      break;      break;
3821    
3822    case 127:    case 127:
3823  #line 279 "lscp.y"  #line 255 "lscp.y"
3824      { yyval.Char = '0'; }      { (yyval.String) = LSCPSERVER->SetAudioOutputChannel((yyvsp[(5) - (7)].Number), (yyvsp[(7) - (7)].Number), (yyvsp[(3) - (7)].Number)); }
3825      break;      break;
3826    
3827    case 128:    case 128:
3828  #line 280 "lscp.y"  #line 256 "lscp.y"
3829      { yyval.Char = '1'; }      { (yyval.String) = LSCPSERVER->SetAudioOutputType((yyvsp[(5) - (5)].String), (yyvsp[(3) - (5)].Number));        }
3830      break;      break;
3831    
3832    case 129:    case 129:
3833  #line 281 "lscp.y"  #line 257 "lscp.y"
3834      { yyval.Char = '2'; }      { (yyval.String) = LSCPSERVER->SetMIDIInput((yyvsp[(5) - (9)].Number), (yyvsp[(7) - (9)].Number), (yyvsp[(9) - (9)].Number), (yyvsp[(3) - (9)].Number));      }
3835      break;      break;
3836    
3837    case 130:    case 130:
3838  #line 282 "lscp.y"  #line 258 "lscp.y"
3839      { yyval.Char = '3'; }      { (yyval.String) = LSCPSERVER->SetMIDIInputDevice((yyvsp[(5) - (5)].Number), (yyvsp[(3) - (5)].Number));        }
3840      break;      break;
3841    
3842    case 131:    case 131:
3843  #line 283 "lscp.y"  #line 259 "lscp.y"
3844      { yyval.Char = '4'; }      { (yyval.String) = LSCPSERVER->SetMIDIInputPort((yyvsp[(5) - (5)].Number), (yyvsp[(3) - (5)].Number));          }
3845      break;      break;
3846    
3847    case 132:    case 132:
3848  #line 284 "lscp.y"  #line 260 "lscp.y"
3849      { yyval.Char = '5'; }      { (yyval.String) = LSCPSERVER->SetMIDIInputChannel((yyvsp[(5) - (5)].Number), (yyvsp[(3) - (5)].Number));       }
3850      break;      break;
3851    
3852    case 133:    case 133:
3853  #line 285 "lscp.y"  #line 261 "lscp.y"
3854      { yyval.Char = '6'; }      { (yyval.String) = LSCPSERVER->SetMIDIInputType((yyvsp[(5) - (5)].String), (yyvsp[(3) - (5)].Number));          }
3855      break;      break;
3856    
3857    case 134:    case 134:
3858  #line 286 "lscp.y"  #line 262 "lscp.y"
3859      { yyval.Char = '7'; }      { (yyval.String) = LSCPSERVER->SetVolume((yyvsp[(5) - (5)].Dotnum), (yyvsp[(3) - (5)].Number));                 }
3860      break;      break;
3861    
3862    case 135:    case 135:
3863  #line 287 "lscp.y"  #line 263 "lscp.y"
3864      { yyval.Char = '8'; }      { (yyval.String) = LSCPSERVER->SetChannelMute((yyvsp[(5) - (5)].Dotnum), (yyvsp[(3) - (5)].Number));            }
3865      break;      break;
3866    
3867    case 136:    case 136:
3868  #line 288 "lscp.y"  #line 264 "lscp.y"
3869      { yyval.Char = '9'; }      { (yyval.String) = LSCPSERVER->SetChannelSolo((yyvsp[(5) - (5)].Dotnum), (yyvsp[(3) - (5)].Number));            }
3870      break;      break;
3871    
3872    case 137:    case 137:
3873  #line 291 "lscp.y"  #line 265 "lscp.y"
3874      { yyval.Number = atoi(String(1, yyvsp[0].Char).c_str());      }      { (yyval.String) = LSCPSERVER->SetChannelMap((yyvsp[(3) - (5)].Number), (yyvsp[(5) - (5)].Number));             }
3875      break;      break;
3876    
3877    case 138:    case 138:
3878  #line 292 "lscp.y"  #line 266 "lscp.y"
3879      { yyval.Number = atoi(String(String("1") + yyvsp[0].String).c_str()); }      { (yyval.String) = LSCPSERVER->SetChannelMap((yyvsp[(3) - (5)].Number), -1);             }
3880      break;      break;
3881    
3882    case 139:    case 139:
3883  #line 293 "lscp.y"  #line 267 "lscp.y"
3884      { yyval.Number = atoi(String(String("2") + yyvsp[0].String).c_str()); }      { (yyval.String) = LSCPSERVER->SetChannelMap((yyvsp[(3) - (5)].Number), -2);             }
3885      break;      break;
3886    
3887    case 140:    case 140:
3888  #line 294 "lscp.y"  #line 270 "lscp.y"
3889      { yyval.Number = atoi(String(String("3") + yyvsp[0].String).c_str()); }      { (yyval.KeyValList)[(yyvsp[(1) - (3)].String)] = (yyvsp[(3) - (3)].String);          }
3890      break;      break;
3891    
3892    case 141:    case 141:
3893  #line 295 "lscp.y"  #line 271 "lscp.y"
3894      { yyval.Number = atoi(String(String("4") + yyvsp[0].String).c_str()); }      { (yyval.KeyValList) = (yyvsp[(1) - (5)].KeyValList); (yyval.KeyValList)[(yyvsp[(3) - (5)].String)] = (yyvsp[(5) - (5)].String); }
3895      break;      break;
3896    
3897    case 142:    case 142:
3898  #line 296 "lscp.y"  #line 274 "lscp.y"
3899      { yyval.Number = atoi(String(String("5") + yyvsp[0].String).c_str()); }      { (yyval.FillResponse) = fill_response_bytes;      }
3900      break;      break;
3901    
3902    case 143:    case 143:
3903  #line 297 "lscp.y"  #line 275 "lscp.y"
3904      { yyval.Number = atoi(String(String("6") + yyvsp[0].String).c_str()); }      { (yyval.FillResponse) = fill_response_percentage; }
3905      break;      break;
3906    
3907    case 144:    case 144:
3908  #line 298 "lscp.y"  #line 278 "lscp.y"
3909      { yyval.Number = atoi(String(String("7") + yyvsp[0].String).c_str()); }      { (yyval.String) = LSCPSERVER->GetAudioOutputDevices();           }
3910      break;      break;
3911    
3912    case 145:    case 145:
3913  #line 299 "lscp.y"  #line 279 "lscp.y"
3914      { yyval.Number = atoi(String(String("8") + yyvsp[0].String).c_str()); }      { (yyval.String) = LSCPSERVER->GetMidiInputDevices();             }
3915      break;      break;
3916    
3917    case 146:    case 146:
3918  #line 300 "lscp.y"  #line 280 "lscp.y"
3919      { yyval.Number = atoi(String(String("9") + yyvsp[0].String).c_str()); }      { (yyval.String) = LSCPSERVER->ListChannels();                    }
3920      break;      break;
3921    
3922    case 147:    case 147:
3923  #line 302 "lscp.y"  #line 281 "lscp.y"
3924      { yyval.Char = 'A'; }      { (yyval.String) = LSCPSERVER->ListAvailableEngines();            }
3925      break;      break;
3926    
3927    case 148:    case 148:
3928  #line 302 "lscp.y"  #line 282 "lscp.y"
3929      { yyval.Char = 'B'; }      { (yyval.String) = LSCPSERVER->ListAvailableMidiInputDrivers();   }
3930      break;      break;
3931    
3932    case 149:    case 149:
3933  #line 302 "lscp.y"  #line 283 "lscp.y"
3934      { yyval.Char = 'C'; }      { (yyval.String) = LSCPSERVER->ListAvailableAudioOutputDrivers(); }
3935      break;      break;
3936    
3937    case 150:    case 150:
3938  #line 302 "lscp.y"  #line 284 "lscp.y"
3939      { yyval.Char = 'D'; }      { (yyval.String) = LSCPSERVER->ListMidiInstrumentMappings((yyvsp[(3) - (3)].Number));    }
3940      break;      break;
3941    
3942    case 151:    case 151:
3943  #line 302 "lscp.y"  #line 285 "lscp.y"
3944      { yyval.Char = 'E'; }      { (yyval.String) = LSCPSERVER->ListAllMidiInstrumentMappings();   }
3945      break;      break;
3946    
3947    case 152:    case 152:
3948  #line 302 "lscp.y"  #line 286 "lscp.y"
3949      { yyval.Char = 'F'; }      { (yyval.String) = LSCPSERVER->ListMidiInstrumentMaps();          }
3950      break;      break;
3951    
3952    case 153:    case 153:
3953  #line 302 "lscp.y"  #line 287 "lscp.y"
3954      { yyval.Char = 'G'; }      { (yyval.String) = LSCPSERVER->ListFxSends((yyvsp[(3) - (3)].Number));                   }
3955      break;      break;
3956    
3957    case 154:    case 154:
3958  #line 302 "lscp.y"  #line 290 "lscp.y"
3959      { yyval.Char = 'H'; }      { (yyval.String) = LSCPSERVER->LoadInstrument((yyvsp[(1) - (5)].String), (yyvsp[(3) - (5)].Number), (yyvsp[(5) - (5)].Number));       }
3960      break;      break;
3961    
3962    case 155:    case 155:
3963  #line 302 "lscp.y"  #line 291 "lscp.y"
3964      { yyval.Char = 'I'; }      { (yyval.String) = LSCPSERVER->LoadInstrument((yyvsp[(3) - (7)].String), (yyvsp[(5) - (7)].Number), (yyvsp[(7) - (7)].Number), true); }
3965      break;      break;
3966    
3967    case 156:    case 156:
3968  #line 302 "lscp.y"  #line 294 "lscp.y"
3969      { yyval.Char = 'J'; }      { (yyval.String) = LSCPSERVER->SetEngineType((yyvsp[(1) - (3)].String), (yyvsp[(3) - (3)].Number)); }
3970      break;      break;
3971    
3972    case 157:    case 157:
3973  #line 302 "lscp.y"  #line 297 "lscp.y"
3974      { yyval.Char = 'K'; }      { (yyval.LoadMode) = MidiInstrumentMapper::ON_DEMAND;      }
3975      break;      break;
3976    
3977    case 158:    case 158:
3978  #line 302 "lscp.y"  #line 298 "lscp.y"
3979      { yyval.Char = 'L'; }      { (yyval.LoadMode) = MidiInstrumentMapper::ON_DEMAND_HOLD; }
3980      break;      break;
3981    
3982    case 159:    case 159:
3983  #line 302 "lscp.y"  #line 299 "lscp.y"
3984      { yyval.Char = 'M'; }      { (yyval.LoadMode) = MidiInstrumentMapper::PERSISTENT;     }
     break;  
   
   case 160:  
 #line 302 "lscp.y"  
     { yyval.Char = 'N'; }  
     break;  
   
   case 161:  
 #line 302 "lscp.y"  
     { yyval.Char = 'O'; }  
     break;  
   
   case 162:  
 #line 302 "lscp.y"  
     { yyval.Char = 'P'; }  
     break;  
   
   case 163:  
 #line 302 "lscp.y"  
     { yyval.Char = 'Q'; }  
     break;  
   
   case 164:  
 #line 302 "lscp.y"  
     { yyval.Char = 'R'; }  
3985      break;      break;
3986    
3987    case 165:    case 165:
3988  #line 302 "lscp.y"  #line 315 "lscp.y"
3989      { yyval.Char = 'S'; }      { (yyval.Number) = 16; }
     break;  
   
   case 166:  
 #line 302 "lscp.y"  
     { yyval.Char = 'T'; }  
     break;  
   
   case 167:  
 #line 302 "lscp.y"  
     { yyval.Char = 'U'; }  
     break;  
   
   case 168:  
 #line 302 "lscp.y"  
     { yyval.Char = 'V'; }  
     break;  
   
   case 169:  
 #line 302 "lscp.y"  
     { yyval.Char = 'W'; }  
     break;  
   
   case 170:  
 #line 302 "lscp.y"  
     { yyval.Char = 'X'; }  
     break;  
   
   case 171:  
 #line 302 "lscp.y"  
     { yyval.Char = 'Y'; }  
3990      break;      break;
3991    
3992    case 172:    case 172:
3993  #line 302 "lscp.y"  #line 334 "lscp.y"
3994      { yyval.Char = 'Z'; }      { (yyval.Dotnum) = (yyvsp[(1) - (1)].Number); }
     break;  
   
   case 173:  
 #line 303 "lscp.y"  
     { yyval.Char = 'a'; }  
     break;  
   
   case 174:  
 #line 303 "lscp.y"  
     { yyval.Char = 'b'; }  
     break;  
   
   case 175:  
 #line 303 "lscp.y"  
     { yyval.Char = 'c'; }  
     break;  
   
   case 176:  
 #line 303 "lscp.y"  
     { yyval.Char = 'd'; }  
     break;  
   
   case 177:  
 #line 303 "lscp.y"  
     { yyval.Char = 'e'; }  
     break;  
   
   case 178:  
 #line 303 "lscp.y"  
     { yyval.Char = 'f'; }  
     break;  
   
   case 179:  
 #line 303 "lscp.y"  
     { yyval.Char = 'g'; }  
     break;  
   
   case 180:  
 #line 303 "lscp.y"  
     { yyval.Char = 'h'; }  
     break;  
   
   case 181:  
 #line 303 "lscp.y"  
     { yyval.Char = 'i'; }  
3995      break;      break;
3996    
3997    case 182:    case 182:
3998  #line 303 "lscp.y"  #line 362 "lscp.y"
3999      { yyval.Char = 'j'; }      { (yyval.String) = (yyvsp[(1) - (3)].String) + "," + (yyvsp[(3) - (3)].String); }
     break;  
   
   case 183:  
 #line 303 "lscp.y"  
     { yyval.Char = 'k'; }  
     break;  
   
   case 184:  
 #line 303 "lscp.y"  
     { yyval.Char = 'l'; }  
4000      break;      break;
4001    
4002    case 185:    case 185:
4003  #line 303 "lscp.y"  #line 367 "lscp.y"
4004      { yyval.Char = 'm'; }      { std::stringstream ss; ss << "\'" << (yyvsp[(1) - (1)].Number) << "\'"; (yyval.String) = ss.str(); }
4005      break;      break;
4006    
4007    case 186:    case 186:
4008  #line 303 "lscp.y"  #line 368 "lscp.y"
4009      { yyval.Char = 'n'; }      { std::stringstream ss; ss << "\'" << (yyvsp[(1) - (1)].Dotnum) << "\'"; (yyval.String) = ss.str(); }
4010      break;      break;
4011    
4012    case 187:    case 187:
4013  #line 303 "lscp.y"  #line 376 "lscp.y"
4014      { yyval.Char = 'o'; }      { (yyval.Dotnum) = (yyvsp[(1) - (1)].Number); }
4015      break;      break;
4016    
4017    case 188:    case 188:
4018  #line 303 "lscp.y"  #line 377 "lscp.y"
4019      { yyval.Char = 'p'; }      { (yyval.Dotnum) = -1; }
4020      break;      break;
4021    
4022    case 189:    case 189:
4023  #line 303 "lscp.y"  #line 380 "lscp.y"
4024      { yyval.Char = 'q'; }      { std::string s; s = (yyvsp[(1) - (1)].Char); (yyval.String) = s; }
4025      break;      break;
4026    
4027    case 190:    case 190:
4028  #line 303 "lscp.y"  #line 381 "lscp.y"
4029      { yyval.Char = 'r'; }      { (yyval.String) = (yyvsp[(1) - (2)].String) + (yyvsp[(2) - (2)].Char);                  }
4030      break;      break;
4031    
4032    case 191:    case 191:
4033  #line 303 "lscp.y"  #line 384 "lscp.y"
4034      { yyval.Char = 's'; }      { (yyval.Dotnum) = atof(String((yyvsp[(1) - (3)].String) + "." + (yyvsp[(3) - (3)].String)).c_str());                         }
4035      break;      break;
4036    
4037    case 192:    case 192:
4038  #line 303 "lscp.y"  #line 385 "lscp.y"
4039      { yyval.Char = 't'; }      { String s = "+"; s += (yyvsp[(2) - (4)].String); s += "."; s += (yyvsp[(4) - (4)].String); (yyval.Dotnum) = atof(s.c_str()); }
4040      break;      break;
4041    
4042    case 193:    case 193:
4043  #line 303 "lscp.y"  #line 386 "lscp.y"
4044      { yyval.Char = 'u'; }      { (yyval.Dotnum) = atof(String("-" + (yyvsp[(2) - (4)].String) + "." + (yyvsp[(4) - (4)].String)).c_str());                   }
4045      break;      break;
4046    
4047    case 194:    case 194:
4048  #line 303 "lscp.y"  #line 390 "lscp.y"
4049      { yyval.Char = 'v'; }      { (yyval.String) = (yyvsp[(1) - (1)].Char);      }
4050      break;      break;
4051    
4052    case 195:    case 195:
4053  #line 303 "lscp.y"  #line 391 "lscp.y"
4054      { yyval.Char = 'w'; }      { (yyval.String) = (yyvsp[(1) - (2)].String) + (yyvsp[(2) - (2)].Char); }
4055      break;      break;
4056    
4057    case 196:    case 196:
4058  #line 303 "lscp.y"  #line 394 "lscp.y"
4059      { yyval.Char = 'x'; }      { (yyval.Char) = '0'; }
4060      break;      break;
4061    
4062    case 197:    case 197:
4063  #line 303 "lscp.y"  #line 395 "lscp.y"
4064      { yyval.Char = 'y'; }      { (yyval.Char) = '1'; }
4065      break;      break;
4066    
4067    case 198:    case 198:
4068  #line 303 "lscp.y"  #line 396 "lscp.y"
4069      { yyval.Char = 'z'; }      { (yyval.Char) = '2'; }
4070      break;      break;
4071    
4072    case 199:    case 199:
4073  #line 304 "lscp.y"  #line 397 "lscp.y"
4074      { yyval.Char = '0'; }      { (yyval.Char) = '3'; }
4075      break;      break;
4076    
4077    case 200:    case 200:
4078  #line 304 "lscp.y"  #line 398 "lscp.y"
4079      { yyval.Char = '1'; }      { (yyval.Char) = '4'; }
4080      break;      break;
4081    
4082    case 201:    case 201:
4083  #line 304 "lscp.y"  #line 399 "lscp.y"
4084      { yyval.Char = '2'; }      { (yyval.Char) = '5'; }
4085      break;      break;
4086    
4087    case 202:    case 202:
4088  #line 304 "lscp.y"  #line 400 "lscp.y"
4089      { yyval.Char = '3'; }      { (yyval.Char) = '6'; }
4090      break;      break;
4091    
4092    case 203:    case 203:
4093  #line 304 "lscp.y"  #line 401 "lscp.y"
4094      { yyval.Char = '4'; }      { (yyval.Char) = '7'; }
4095      break;      break;
4096    
4097    case 204:    case 204:
4098  #line 304 "lscp.y"  #line 402 "lscp.y"
4099      { yyval.Char = '5'; }      { (yyval.Char) = '8'; }
4100      break;      break;
4101    
4102    case 205:    case 205:
4103  #line 304 "lscp.y"  #line 403 "lscp.y"
4104      { yyval.Char = '6'; }      { (yyval.Char) = '9'; }
4105      break;      break;
4106    
4107    case 206:    case 206:
4108  #line 304 "lscp.y"  #line 406 "lscp.y"
4109      { yyval.Char = '7'; }      { (yyval.Number) = atoi(String(1, (yyvsp[(1) - (1)].Char)).c_str());      }
4110      break;      break;
4111    
4112    case 207:    case 207:
4113  #line 304 "lscp.y"  #line 407 "lscp.y"
4114      { yyval.Char = '8'; }      { (yyval.Number) = atoi(String(String("1") + (yyvsp[(2) - (2)].String)).c_str()); }
4115      break;      break;
4116    
4117    case 208:    case 208:
4118  #line 304 "lscp.y"  #line 408 "lscp.y"
4119      { yyval.Char = '9'; }      { (yyval.Number) = atoi(String(String("2") + (yyvsp[(2) - (2)].String)).c_str()); }
4120      break;      break;
4121    
4122    case 209:    case 209:
4123  #line 305 "lscp.y"  #line 409 "lscp.y"
4124      { yyval.Char = '!'; }      { (yyval.Number) = atoi(String(String("3") + (yyvsp[(2) - (2)].String)).c_str()); }
4125      break;      break;
4126    
4127    case 210:    case 210:
4128  #line 305 "lscp.y"  #line 410 "lscp.y"
4129      { yyval.Char = '#'; }      { (yyval.Number) = atoi(String(String("4") + (yyvsp[(2) - (2)].String)).c_str()); }
4130      break;      break;
4131    
4132    case 211:    case 211:
4133  #line 305 "lscp.y"  #line 411 "lscp.y"
4134      { yyval.Char = '$'; }      { (yyval.Number) = atoi(String(String("5") + (yyvsp[(2) - (2)].String)).c_str()); }
4135      break;      break;
4136    
4137    case 212:    case 212:
4138  #line 305 "lscp.y"  #line 412 "lscp.y"
4139      { yyval.Char = '%'; }      { (yyval.Number) = atoi(String(String("6") + (yyvsp[(2) - (2)].String)).c_str()); }
4140      break;      break;
4141    
4142    case 213:    case 213:
4143  #line 305 "lscp.y"  #line 413 "lscp.y"
4144      { yyval.Char = '&'; }      { (yyval.Number) = atoi(String(String("7") + (yyvsp[(2) - (2)].String)).c_str()); }
4145      break;      break;
4146    
4147    case 214:    case 214:
4148  #line 305 "lscp.y"  #line 414 "lscp.y"
4149      { yyval.Char = '('; }      { (yyval.Number) = atoi(String(String("8") + (yyvsp[(2) - (2)].String)).c_str()); }
4150      break;      break;
4151    
4152    case 215:    case 215:
4153  #line 305 "lscp.y"  #line 415 "lscp.y"
4154      { yyval.Char = ')'; }      { (yyval.Number) = atoi(String(String("9") + (yyvsp[(2) - (2)].String)).c_str()); }
4155      break;      break;
4156    
4157    case 216:    case 216:
4158  #line 305 "lscp.y"  #line 417 "lscp.y"
4159      { yyval.Char = '*'; }      { (yyval.Char) = 'A'; }
4160      break;      break;
4161    
4162    case 217:    case 217:
4163  #line 305 "lscp.y"  #line 417 "lscp.y"
4164      { yyval.Char = '+'; }      { (yyval.Char) = 'B'; }
4165      break;      break;
4166    
4167    case 218:    case 218:
4168  #line 305 "lscp.y"  #line 417 "lscp.y"
4169      { yyval.Char = '-'; }      { (yyval.Char) = 'C'; }
4170      break;      break;
4171    
4172    case 219:    case 219:
4173  #line 305 "lscp.y"  #line 417 "lscp.y"
4174      { yyval.Char = '.'; }      { (yyval.Char) = 'D'; }
4175      break;      break;
4176    
4177    case 220:    case 220:
4178  #line 305 "lscp.y"  #line 417 "lscp.y"
4179      { yyval.Char = ','; }      { (yyval.Char) = 'E'; }
4180      break;      break;
4181    
4182    case 221:    case 221:
4183  #line 305 "lscp.y"  #line 417 "lscp.y"
4184      { yyval.Char = '/'; }      { (yyval.Char) = 'F'; }
4185      break;      break;
4186    
4187    case 222:    case 222:
4188  #line 306 "lscp.y"  #line 417 "lscp.y"
4189      { yyval.Char = ':'; }      { (yyval.Char) = 'G'; }
4190      break;      break;
4191    
4192    case 223:    case 223:
4193  #line 306 "lscp.y"  #line 417 "lscp.y"
4194      { yyval.Char = ';'; }      { (yyval.Char) = 'H'; }
4195      break;      break;
4196    
4197    case 224:    case 224:
4198  #line 306 "lscp.y"  #line 417 "lscp.y"
4199      { yyval.Char = '<'; }      { (yyval.Char) = 'I'; }
4200      break;      break;
4201    
4202    case 225:    case 225:
4203  #line 306 "lscp.y"  #line 417 "lscp.y"
4204      { yyval.Char = '='; }      { (yyval.Char) = 'J'; }
4205      break;      break;
4206    
4207    case 226:    case 226:
4208  #line 306 "lscp.y"  #line 417 "lscp.y"
4209      { yyval.Char = '>'; }      { (yyval.Char) = 'K'; }
4210      break;      break;
4211    
4212    case 227:    case 227:
4213  #line 306 "lscp.y"  #line 417 "lscp.y"
4214      { yyval.Char = '?'; }      { (yyval.Char) = 'L'; }
4215      break;      break;
4216    
4217    case 228:    case 228:
4218  #line 306 "lscp.y"  #line 417 "lscp.y"
4219      { yyval.Char = '@'; }      { (yyval.Char) = 'M'; }
4220      break;      break;
4221    
4222    case 229:    case 229:
4223  #line 307 "lscp.y"  #line 417 "lscp.y"
4224      { yyval.Char = '['; }      { (yyval.Char) = 'N'; }
4225      break;      break;
4226    
4227    case 230:    case 230:
4228  #line 307 "lscp.y"  #line 417 "lscp.y"
4229      { yyval.Char = '\\'; }      { (yyval.Char) = 'O'; }
4230      break;      break;
4231    
4232    case 231:    case 231:
4233  #line 307 "lscp.y"  #line 417 "lscp.y"
4234      { yyval.Char = ']'; }      { (yyval.Char) = 'P'; }
4235      break;      break;
4236    
4237    case 232:    case 232:
4238  #line 307 "lscp.y"  #line 417 "lscp.y"
4239      { yyval.Char = '^'; }      { (yyval.Char) = 'Q'; }
4240      break;      break;
4241    
4242    case 233:    case 233:
4243  #line 307 "lscp.y"  #line 417 "lscp.y"
4244      { yyval.Char = '_'; }      { (yyval.Char) = 'R'; }
4245      break;      break;
4246    
4247    case 234:    case 234:
4248  #line 308 "lscp.y"  #line 417 "lscp.y"
4249      { yyval.Char = '{'; }      { (yyval.Char) = 'S'; }
4250      break;      break;
4251    
4252    case 235:    case 235:
4253  #line 308 "lscp.y"  #line 417 "lscp.y"
4254      { yyval.Char = '|'; }      { (yyval.Char) = 'T'; }
4255      break;      break;
4256    
4257    case 236:    case 236:
4258  #line 308 "lscp.y"  #line 417 "lscp.y"
4259      { yyval.Char = '}'; }      { (yyval.Char) = 'U'; }
4260      break;      break;
4261    
4262    case 237:    case 237:
4263  #line 308 "lscp.y"  #line 417 "lscp.y"
4264      { yyval.Char = '~'; }      { (yyval.Char) = 'V'; }
4265      break;      break;
4266    
4267    case 238:    case 238:
4268  #line 309 "lscp.y"  #line 417 "lscp.y"
4269      { yyval.Char = '\200'; }      { (yyval.Char) = 'W'; }
4270      break;      break;
4271    
4272    case 239:    case 239:
4273  #line 309 "lscp.y"  #line 417 "lscp.y"
4274      { yyval.Char = '\201'; }      { (yyval.Char) = 'X'; }
4275      break;      break;
4276    
4277    case 240:    case 240:
4278  #line 309 "lscp.y"  #line 417 "lscp.y"
4279      { yyval.Char = '\202'; }      { (yyval.Char) = 'Y'; }
4280      break;      break;
4281    
4282    case 241:    case 241:
4283  #line 310 "lscp.y"  #line 417 "lscp.y"
4284      { yyval.Char = '\203'; }      { (yyval.Char) = 'Z'; }
4285      break;      break;
4286    
4287    case 242:    case 242:
4288  #line 310 "lscp.y"  #line 418 "lscp.y"
4289      { yyval.Char = '\204'; }      { (yyval.Char) = 'a'; }
4290      break;      break;
4291    
4292    case 243:    case 243:
4293  #line 310 "lscp.y"  #line 418 "lscp.y"
4294      { yyval.Char = '\205'; }      { (yyval.Char) = 'b'; }
4295      break;      break;
4296    
4297    case 244:    case 244:
4298  #line 311 "lscp.y"  #line 418 "lscp.y"
4299      { yyval.Char = '\206'; }      { (yyval.Char) = 'c'; }
4300      break;      break;
4301    
4302    case 245:    case 245:
4303  #line 311 "lscp.y"  #line 418 "lscp.y"
4304      { yyval.Char = '\207'; }      { (yyval.Char) = 'd'; }
4305      break;      break;
4306    
4307    case 246:    case 246:
4308  #line 311 "lscp.y"  #line 418 "lscp.y"
4309      { yyval.Char = '\210'; }      { (yyval.Char) = 'e'; }
4310      break;      break;
4311    
4312    case 247:    case 247:
4313  #line 312 "lscp.y"  #line 418 "lscp.y"
4314      { yyval.Char = '\211'; }      { (yyval.Char) = 'f'; }
4315      break;      break;
4316    
4317    case 248:    case 248:
4318  #line 312 "lscp.y"  #line 418 "lscp.y"
4319      { yyval.Char = '\212'; }      { (yyval.Char) = 'g'; }
4320      break;      break;
4321    
4322    case 249:    case 249:
4323  #line 312 "lscp.y"  #line 418 "lscp.y"
4324      { yyval.Char = '\213'; }      { (yyval.Char) = 'h'; }
4325      break;      break;
4326    
4327    case 250:    case 250:
4328  #line 313 "lscp.y"  #line 418 "lscp.y"
4329      { yyval.Char = '\214'; }      { (yyval.Char) = 'i'; }
4330      break;      break;
4331    
4332    case 251:    case 251:
4333  #line 313 "lscp.y"  #line 418 "lscp.y"
4334      { yyval.Char = '\215'; }      { (yyval.Char) = 'j'; }
4335      break;      break;
4336    
4337    case 252:    case 252:
4338  #line 313 "lscp.y"  #line 418 "lscp.y"
4339      { yyval.Char = '\216'; }      { (yyval.Char) = 'k'; }
4340      break;      break;
4341    
4342    case 253:    case 253:
4343  #line 314 "lscp.y"  #line 418 "lscp.y"
4344      { yyval.Char = '\217'; }      { (yyval.Char) = 'l'; }
4345      break;      break;
4346    
4347    case 254:    case 254:
4348  #line 314 "lscp.y"  #line 418 "lscp.y"
4349      { yyval.Char = '\220'; }      { (yyval.Char) = 'm'; }
4350      break;      break;
4351    
4352    case 255:    case 255:
4353  #line 314 "lscp.y"  #line 418 "lscp.y"
4354      { yyval.Char = '\221'; }      { (yyval.Char) = 'n'; }
4355      break;      break;
4356    
4357    case 256:    case 256:
4358  #line 315 "lscp.y"  #line 418 "lscp.y"
4359      { yyval.Char = '\222'; }      { (yyval.Char) = 'o'; }
4360      break;      break;
4361    
4362    case 257:    case 257:
4363  #line 315 "lscp.y"  #line 418 "lscp.y"
4364      { yyval.Char = '\223'; }      { (yyval.Char) = 'p'; }
4365      break;      break;
4366    
4367    case 258:    case 258:
4368  #line 315 "lscp.y"  #line 418 "lscp.y"
4369      { yyval.Char = '\224'; }      { (yyval.Char) = 'q'; }
4370      break;      break;
4371    
4372    case 259:    case 259:
4373  #line 316 "lscp.y"  #line 418 "lscp.y"
4374      { yyval.Char = '\225'; }      { (yyval.Char) = 'r'; }
4375      break;      break;
4376    
4377    case 260:    case 260:
4378  #line 316 "lscp.y"  #line 418 "lscp.y"
4379      { yyval.Char = '\226'; }      { (yyval.Char) = 's'; }
4380      break;      break;
4381    
4382    case 261:    case 261:
4383  #line 316 "lscp.y"  #line 418 "lscp.y"
4384      { yyval.Char = '\227'; }      { (yyval.Char) = 't'; }
4385      break;      break;
4386    
4387    case 262:    case 262:
4388  #line 317 "lscp.y"  #line 418 "lscp.y"
4389      { yyval.Char = '\230'; }      { (yyval.Char) = 'u'; }
4390      break;      break;
4391    
4392    case 263:    case 263:
4393  #line 317 "lscp.y"  #line 418 "lscp.y"
4394      { yyval.Char = '\231'; }      { (yyval.Char) = 'v'; }
4395      break;      break;
4396    
4397    case 264:    case 264:
4398  #line 317 "lscp.y"  #line 418 "lscp.y"
4399      { yyval.Char = '\232'; }      { (yyval.Char) = 'w'; }
4400      break;      break;
4401    
4402    case 265:    case 265:
4403  #line 318 "lscp.y"  #line 418 "lscp.y"
4404      { yyval.Char = '\233'; }      { (yyval.Char) = 'x'; }
4405      break;      break;
4406    
4407    case 266:    case 266:
4408  #line 318 "lscp.y"  #line 418 "lscp.y"
4409      { yyval.Char = '\234'; }      { (yyval.Char) = 'y'; }
4410      break;      break;
4411    
4412    case 267:    case 267:
4413  #line 318 "lscp.y"  #line 418 "lscp.y"
4414      { yyval.Char = '\235'; }      { (yyval.Char) = 'z'; }
4415      break;      break;
4416    
4417    case 268:    case 268:
4418  #line 319 "lscp.y"  #line 419 "lscp.y"
4419      { yyval.Char = '\236'; }      { (yyval.Char) = '0'; }
4420      break;      break;
4421    
4422    case 269:    case 269:
4423  #line 319 "lscp.y"  #line 419 "lscp.y"
4424      { yyval.Char = '\237'; }      { (yyval.Char) = '1'; }
4425      break;      break;
4426    
4427    case 270:    case 270:
4428  #line 319 "lscp.y"  #line 419 "lscp.y"
4429      { yyval.Char = '\240'; }      { (yyval.Char) = '2'; }
4430      break;      break;
4431    
4432    case 271:    case 271:
4433  #line 320 "lscp.y"  #line 419 "lscp.y"
4434      { yyval.Char = '\241'; }      { (yyval.Char) = '3'; }
4435      break;      break;
4436    
4437    case 272:    case 272:
4438  #line 320 "lscp.y"  #line 419 "lscp.y"
4439      { yyval.Char = '\242'; }      { (yyval.Char) = '4'; }
4440      break;      break;
4441    
4442    case 273:    case 273:
4443  #line 320 "lscp.y"  #line 419 "lscp.y"
4444      { yyval.Char = '\243'; }      { (yyval.Char) = '5'; }
4445      break;      break;
4446    
4447    case 274:    case 274:
4448  #line 321 "lscp.y"  #line 419 "lscp.y"
4449      { yyval.Char = '\244'; }      { (yyval.Char) = '6'; }
4450      break;      break;
4451    
4452    case 275:    case 275:
4453  #line 321 "lscp.y"  #line 419 "lscp.y"
4454      { yyval.Char = '\245'; }      { (yyval.Char) = '7'; }
4455      break;      break;
4456    
4457    case 276:    case 276:
4458  #line 321 "lscp.y"  #line 419 "lscp.y"
4459      { yyval.Char = '\246'; }      { (yyval.Char) = '8'; }
4460      break;      break;
4461    
4462    case 277:    case 277:
4463  #line 322 "lscp.y"  #line 419 "lscp.y"
4464      { yyval.Char = '\247'; }      { (yyval.Char) = '9'; }
4465      break;      break;
4466    
4467    case 278:    case 278:
4468  #line 322 "lscp.y"  #line 420 "lscp.y"
4469      { yyval.Char = '\250'; }      { (yyval.Char) = '!'; }
4470      break;      break;
4471    
4472    case 279:    case 279:
4473  #line 322 "lscp.y"  #line 420 "lscp.y"
4474      { yyval.Char = '\251'; }      { (yyval.Char) = '#'; }
4475      break;      break;
4476    
4477    case 280:    case 280:
4478  #line 323 "lscp.y"  #line 420 "lscp.y"
4479      { yyval.Char = '\252'; }      { (yyval.Char) = '$'; }
4480      break;      break;
4481    
4482    case 281:    case 281:
4483  #line 323 "lscp.y"  #line 420 "lscp.y"
4484      { yyval.Char = '\253'; }      { (yyval.Char) = '%'; }
4485      break;      break;
4486    
4487    case 282:    case 282:
4488  #line 323 "lscp.y"  #line 420 "lscp.y"
4489      { yyval.Char = '\254'; }      { (yyval.Char) = '&'; }
4490      break;      break;
4491    
4492    case 283:    case 283:
4493  #line 324 "lscp.y"  #line 420 "lscp.y"
4494      { yyval.Char = '\255'; }      { (yyval.Char) = '('; }
4495      break;      break;
4496    
4497    case 284:    case 284:
4498  #line 324 "lscp.y"  #line 420 "lscp.y"
4499      { yyval.Char = '\256'; }      { (yyval.Char) = ')'; }
4500      break;      break;
4501    
4502    case 285:    case 285:
4503  #line 324 "lscp.y"  #line 420 "lscp.y"
4504      { yyval.Char = '\257'; }      { (yyval.Char) = '*'; }
4505      break;      break;
4506    
4507    case 286:    case 286:
4508  #line 325 "lscp.y"  #line 420 "lscp.y"
4509      { yyval.Char = '\260'; }      { (yyval.Char) = '+'; }
4510      break;      break;
4511    
4512    case 287:    case 287:
4513  #line 325 "lscp.y"  #line 420 "lscp.y"
4514      { yyval.Char = '\261'; }      { (yyval.Char) = '-'; }
4515      break;      break;
4516    
4517    case 288:    case 288:
4518  #line 325 "lscp.y"  #line 420 "lscp.y"
4519      { yyval.Char = '\262'; }      { (yyval.Char) = '.'; }
4520      break;      break;
4521    
4522    case 289:    case 289:
4523  #line 326 "lscp.y"  #line 420 "lscp.y"
4524      { yyval.Char = '\263'; }      { (yyval.Char) = ','; }
4525      break;      break;
4526    
4527    case 290:    case 290:
4528  #line 326 "lscp.y"  #line 420 "lscp.y"
4529      { yyval.Char = '\264'; }      { (yyval.Char) = '/'; }
4530      break;      break;
4531    
4532    case 291:    case 291:
4533  #line 326 "lscp.y"  #line 421 "lscp.y"
4534      { yyval.Char = '\265'; }      { (yyval.Char) = ':'; }
4535      break;      break;
4536    
4537    case 292:    case 292:
4538  #line 327 "lscp.y"  #line 421 "lscp.y"
4539      { yyval.Char = '\266'; }      { (yyval.Char) = ';'; }
4540      break;      break;
4541    
4542    case 293:    case 293:
4543  #line 327 "lscp.y"  #line 421 "lscp.y"
4544      { yyval.Char = '\267'; }      { (yyval.Char) = '<'; }
4545      break;      break;
4546    
4547    case 294:    case 294:
4548  #line 327 "lscp.y"  #line 421 "lscp.y"
4549      { yyval.Char = '\270'; }      { (yyval.Char) = '='; }
4550      break;      break;
4551    
4552    case 295:    case 295:
4553  #line 328 "lscp.y"  #line 421 "lscp.y"
4554      { yyval.Char = '\271'; }      { (yyval.Char) = '>'; }
4555      break;      break;
4556    
4557    case 296:    case 296:
4558  #line 328 "lscp.y"  #line 421 "lscp.y"
4559      { yyval.Char = '\272'; }      { (yyval.Char) = '?'; }
4560      break;      break;
4561    
4562    case 297:    case 297:
4563  #line 328 "lscp.y"  #line 421 "lscp.y"
4564      { yyval.Char = '\273'; }      { (yyval.Char) = '@'; }
4565      break;      break;
4566    
4567    case 298:    case 298:
4568  #line 329 "lscp.y"  #line 422 "lscp.y"
4569      { yyval.Char = '\274'; }      { (yyval.Char) = '['; }
4570      break;      break;
4571    
4572    case 299:    case 299:
4573  #line 329 "lscp.y"  #line 422 "lscp.y"
4574      { yyval.Char = '\275'; }      { (yyval.Char) = '\\'; }
4575      break;      break;
4576    
4577    case 300:    case 300:
4578  #line 329 "lscp.y"  #line 422 "lscp.y"
4579      { yyval.Char = '\276'; }      { (yyval.Char) = ']'; }
4580      break;      break;
4581    
4582    case 301:    case 301:
4583  #line 330 "lscp.y"  #line 422 "lscp.y"
4584      { yyval.Char = '\277'; }      { (yyval.Char) = '^'; }
4585      break;      break;
4586    
4587    case 302:    case 302:
4588  #line 330 "lscp.y"  #line 422 "lscp.y"
4589      { yyval.Char = '\300'; }      { (yyval.Char) = '_'; }
4590      break;      break;
4591    
4592    case 303:    case 303:
4593  #line 330 "lscp.y"  #line 423 "lscp.y"
4594      { yyval.Char = '\301'; }      { (yyval.Char) = '{'; }
4595      break;      break;
4596    
4597    case 304:    case 304:
4598  #line 331 "lscp.y"  #line 423 "lscp.y"
4599      { yyval.Char = '\302'; }      { (yyval.Char) = '|'; }
4600      break;      break;
4601    
4602    case 305:    case 305:
4603  #line 331 "lscp.y"  #line 423 "lscp.y"
4604      { yyval.Char = '\303'; }      { (yyval.Char) = '}'; }
4605      break;      break;
4606    
4607    case 306:    case 306:
4608  #line 331 "lscp.y"  #line 423 "lscp.y"
4609      { yyval.Char = '\304'; }      { (yyval.Char) = '~'; }
4610      break;      break;
4611    
4612    case 307:    case 307:
4613  #line 332 "lscp.y"  #line 424 "lscp.y"
4614      { yyval.Char = '\305'; }      { (yyval.Char) = '\200'; }
4615      break;      break;
4616    
4617    case 308:    case 308:
4618  #line 332 "lscp.y"  #line 424 "lscp.y"
4619      { yyval.Char = '\306'; }      { (yyval.Char) = '\201'; }
4620      break;      break;
4621    
4622    case 309:    case 309:
4623  #line 332 "lscp.y"  #line 424 "lscp.y"
4624      { yyval.Char = '\307'; }      { (yyval.Char) = '\202'; }
4625      break;      break;
4626    
4627    case 310:    case 310:
4628  #line 333 "lscp.y"  #line 425 "lscp.y"
4629      { yyval.Char = '\310'; }      { (yyval.Char) = '\203'; }
4630      break;      break;
4631    
4632    case 311:    case 311:
4633  #line 333 "lscp.y"  #line 425 "lscp.y"
4634      { yyval.Char = '\311'; }      { (yyval.Char) = '\204'; }
4635      break;      break;
4636    
4637    case 312:    case 312:
4638  #line 333 "lscp.y"  #line 425 "lscp.y"
4639      { yyval.Char = '\312'; }      { (yyval.Char) = '\205'; }
4640      break;      break;
4641    
4642    case 313:    case 313:
4643  #line 334 "lscp.y"  #line 426 "lscp.y"
4644      { yyval.Char = '\313'; }      { (yyval.Char) = '\206'; }
4645      break;      break;
4646    
4647    case 314:    case 314:
4648  #line 334 "lscp.y"  #line 426 "lscp.y"
4649      { yyval.Char = '\314'; }      { (yyval.Char) = '\207'; }
4650      break;      break;
4651    
4652    case 315:    case 315:
4653  #line 334 "lscp.y"  #line 426 "lscp.y"
4654      { yyval.Char = '\315'; }      { (yyval.Char) = '\210'; }
4655      break;      break;
4656    
4657    case 316:    case 316:
4658  #line 335 "lscp.y"  #line 427 "lscp.y"
4659      { yyval.Char = '\316'; }      { (yyval.Char) = '\211'; }
4660      break;      break;
4661    
4662    case 317:    case 317:
4663  #line 335 "lscp.y"  #line 427 "lscp.y"
4664      { yyval.Char = '\317'; }      { (yyval.Char) = '\212'; }
4665      break;      break;
4666    
4667    case 318:    case 318:
4668  #line 335 "lscp.y"  #line 427 "lscp.y"
4669      { yyval.Char = '\320'; }      { (yyval.Char) = '\213'; }
4670      break;      break;
4671    
4672    case 319:    case 319:
4673  #line 336 "lscp.y"  #line 428 "lscp.y"
4674      { yyval.Char = '\321'; }      { (yyval.Char) = '\214'; }
4675      break;      break;
4676    
4677    case 320:    case 320:
4678  #line 336 "lscp.y"  #line 428 "lscp.y"
4679      { yyval.Char = '\322'; }      { (yyval.Char) = '\215'; }
4680      break;      break;
4681    
4682    case 321:    case 321:
4683  #line 336 "lscp.y"  #line 428 "lscp.y"
4684      { yyval.Char = '\323'; }      { (yyval.Char) = '\216'; }
4685      break;      break;
4686    
4687    case 322:    case 322:
4688  #line 337 "lscp.y"  #line 429 "lscp.y"
4689      { yyval.Char = '\324'; }      { (yyval.Char) = '\217'; }
4690      break;      break;
4691    
4692    case 323:    case 323:
4693  #line 337 "lscp.y"  #line 429 "lscp.y"
4694      { yyval.Char = '\325'; }      { (yyval.Char) = '\220'; }
4695      break;      break;
4696    
4697    case 324:    case 324:
4698  #line 337 "lscp.y"  #line 429 "lscp.y"
4699      { yyval.Char = '\326'; }      { (yyval.Char) = '\221'; }
4700      break;      break;
4701    
4702    case 325:    case 325:
4703  #line 338 "lscp.y"  #line 430 "lscp.y"
4704      { yyval.Char = '\327'; }      { (yyval.Char) = '\222'; }
4705      break;      break;
4706    
4707    case 326:    case 326:
4708  #line 338 "lscp.y"  #line 430 "lscp.y"
4709      { yyval.Char = '\330'; }      { (yyval.Char) = '\223'; }
4710      break;      break;
4711    
4712    case 327:    case 327:
4713  #line 338 "lscp.y"  #line 430 "lscp.y"
4714      { yyval.Char = '\331'; }      { (yyval.Char) = '\224'; }
4715      break;      break;
4716    
4717    case 328:    case 328:
4718  #line 339 "lscp.y"  #line 431 "lscp.y"
4719      { yyval.Char = '\332'; }      { (yyval.Char) = '\225'; }
4720      break;      break;
4721    
4722    case 329:    case 329:
4723  #line 339 "lscp.y"  #line 431 "lscp.y"
4724      { yyval.Char = '\333'; }      { (yyval.Char) = '\226'; }
4725      break;      break;
4726    
4727    case 330:    case 330:
4728  #line 339 "lscp.y"  #line 431 "lscp.y"
4729      { yyval.Char = '\334'; }      { (yyval.Char) = '\227'; }
4730      break;      break;
4731    
4732    case 331:    case 331:
4733  #line 340 "lscp.y"  #line 432 "lscp.y"
4734      { yyval.Char = '\335'; }      { (yyval.Char) = '\230'; }
4735      break;      break;
4736    
4737    case 332:    case 332:
4738  #line 340 "lscp.y"  #line 432 "lscp.y"
4739      { yyval.Char = '\336'; }      { (yyval.Char) = '\231'; }
4740      break;      break;
4741    
4742    case 333:    case 333:
4743  #line 340 "lscp.y"  #line 432 "lscp.y"
4744      { yyval.Char = '\337'; }      { (yyval.Char) = '\232'; }
4745      break;      break;
4746    
4747    case 334:    case 334:
4748  #line 341 "lscp.y"  #line 433 "lscp.y"
4749      { yyval.Char = '\340'; }      { (yyval.Char) = '\233'; }
4750      break;      break;
4751    
4752    case 335:    case 335:
4753  #line 341 "lscp.y"  #line 433 "lscp.y"
4754      { yyval.Char = '\341'; }      { (yyval.Char) = '\234'; }
4755      break;      break;
4756    
4757    case 336:    case 336:
4758  #line 341 "lscp.y"  #line 433 "lscp.y"
4759      { yyval.Char = '\342'; }      { (yyval.Char) = '\235'; }
4760      break;      break;
4761    
4762    case 337:    case 337:
4763  #line 342 "lscp.y"  #line 434 "lscp.y"
4764      { yyval.Char = '\343'; }      { (yyval.Char) = '\236'; }
4765      break;      break;
4766    
4767    case 338:    case 338:
4768  #line 342 "lscp.y"  #line 434 "lscp.y"
4769      { yyval.Char = '\344'; }      { (yyval.Char) = '\237'; }
4770      break;      break;
4771    
4772    case 339:    case 339:
4773  #line 342 "lscp.y"  #line 434 "lscp.y"
4774      { yyval.Char = '\345'; }      { (yyval.Char) = '\240'; }
4775      break;      break;
4776    
4777    case 340:    case 340:
4778  #line 343 "lscp.y"  #line 435 "lscp.y"
4779      { yyval.Char = '\346'; }      { (yyval.Char) = '\241'; }
4780      break;      break;
4781    
4782    case 341:    case 341:
4783  #line 343 "lscp.y"  #line 435 "lscp.y"
4784      { yyval.Char = '\347'; }      { (yyval.Char) = '\242'; }
4785      break;      break;
4786    
4787    case 342:    case 342:
4788  #line 343 "lscp.y"  #line 435 "lscp.y"
4789      { yyval.Char = '\350'; }      { (yyval.Char) = '\243'; }
4790      break;      break;
4791    
4792    case 343:    case 343:
4793  #line 344 "lscp.y"  #line 436 "lscp.y"
4794      { yyval.Char = '\351'; }      { (yyval.Char) = '\244'; }
4795      break;      break;
4796    
4797    case 344:    case 344:
4798  #line 344 "lscp.y"  #line 436 "lscp.y"
4799      { yyval.Char = '\352'; }      { (yyval.Char) = '\245'; }
4800      break;      break;
4801    
4802    case 345:    case 345:
4803  #line 344 "lscp.y"  #line 436 "lscp.y"
4804      { yyval.Char = '\353'; }      { (yyval.Char) = '\246'; }
4805      break;      break;
4806    
4807    case 346:    case 346:
4808  #line 345 "lscp.y"  #line 437 "lscp.y"
4809      { yyval.Char = '\354'; }      { (yyval.Char) = '\247'; }
4810      break;      break;
4811    
4812    case 347:    case 347:
4813  #line 345 "lscp.y"  #line 437 "lscp.y"
4814      { yyval.Char = '\355'; }      { (yyval.Char) = '\250'; }
4815      break;      break;
4816    
4817    case 348:    case 348:
4818  #line 345 "lscp.y"  #line 437 "lscp.y"
4819      { yyval.Char = '\356'; }      { (yyval.Char) = '\251'; }
4820      break;      break;
4821    
4822    case 349:    case 349:
4823  #line 346 "lscp.y"  #line 438 "lscp.y"
4824      { yyval.Char = '\357'; }      { (yyval.Char) = '\252'; }
4825      break;      break;
4826    
4827    case 350:    case 350:
4828  #line 346 "lscp.y"  #line 438 "lscp.y"
4829      { yyval.Char = '\360'; }      { (yyval.Char) = '\253'; }
4830      break;      break;
4831    
4832    case 351:    case 351:
4833  #line 346 "lscp.y"  #line 438 "lscp.y"
4834      { yyval.Char = '\361'; }      { (yyval.Char) = '\254'; }
4835      break;      break;
4836    
4837    case 352:    case 352:
4838  #line 347 "lscp.y"  #line 439 "lscp.y"
4839      { yyval.Char = '\362'; }      { (yyval.Char) = '\255'; }
4840      break;      break;
4841    
4842    case 353:    case 353:
4843  #line 347 "lscp.y"  #line 439 "lscp.y"
4844      { yyval.Char = '\363'; }      { (yyval.Char) = '\256'; }
4845      break;      break;
4846    
4847    case 354:    case 354:
4848  #line 347 "lscp.y"  #line 439 "lscp.y"
4849      { yyval.Char = '\364'; }      { (yyval.Char) = '\257'; }
4850      break;      break;
4851    
4852    case 355:    case 355:
4853  #line 348 "lscp.y"  #line 440 "lscp.y"
4854      { yyval.Char = '\365'; }      { (yyval.Char) = '\260'; }
4855      break;      break;
4856    
4857    case 356:    case 356:
4858  #line 348 "lscp.y"  #line 440 "lscp.y"
4859      { yyval.Char = '\366'; }      { (yyval.Char) = '\261'; }
4860      break;      break;
4861    
4862    case 357:    case 357:
4863  #line 348 "lscp.y"  #line 440 "lscp.y"
4864      { yyval.Char = '\367'; }      { (yyval.Char) = '\262'; }
4865      break;      break;
4866    
4867    case 358:    case 358:
4868  #line 349 "lscp.y"  #line 441 "lscp.y"
4869      { yyval.Char = '\370'; }      { (yyval.Char) = '\263'; }
4870      break;      break;
4871    
4872    case 359:    case 359:
4873  #line 349 "lscp.y"  #line 441 "lscp.y"
4874      { yyval.Char = '\371'; }      { (yyval.Char) = '\264'; }
4875      break;      break;
4876    
4877    case 360:    case 360:
4878  #line 349 "lscp.y"  #line 441 "lscp.y"
4879      { yyval.Char = '\372'; }      { (yyval.Char) = '\265'; }
4880      break;      break;
4881    
4882    case 361:    case 361:
4883  #line 350 "lscp.y"  #line 442 "lscp.y"
4884      { yyval.Char = '\373'; }      { (yyval.Char) = '\266'; }
4885      break;      break;
4886    
4887    case 362:    case 362:
4888  #line 350 "lscp.y"  #line 442 "lscp.y"
4889      { yyval.Char = '\374'; }      { (yyval.Char) = '\267'; }
4890      break;      break;
4891    
4892    case 363:    case 363:
4893  #line 350 "lscp.y"  #line 442 "lscp.y"
4894      { yyval.Char = '\375'; }      { (yyval.Char) = '\270'; }
4895      break;      break;
4896    
4897    case 364:    case 364:
4898  #line 351 "lscp.y"  #line 443 "lscp.y"
4899      { yyval.Char = '\376'; }      { (yyval.Char) = '\271'; }
4900      break;      break;
4901    
4902    case 365:    case 365:
4903  #line 351 "lscp.y"  #line 443 "lscp.y"
4904      { yyval.Char = '\377'; }      { (yyval.Char) = '\272'; }
4905      break;      break;
4906    
4907    case 366:    case 366:
4908  #line 354 "lscp.y"  #line 443 "lscp.y"
4909      { yyval.String = " ";      }      { (yyval.Char) = '\273'; }
4910        break;
4911    
4912      case 367:
4913    #line 444 "lscp.y"
4914        { (yyval.Char) = '\274'; }
4915      break;      break;
4916    
4917    case 368:    case 368:
4918  #line 356 "lscp.y"  #line 444 "lscp.y"
4919      { yyval.String = yyvsp[-1].String + " "; }      { (yyval.Char) = '\275'; }
4920      break;      break;
4921    
4922    case 369:    case 369:
4923  #line 357 "lscp.y"  #line 444 "lscp.y"
4924      { yyval.String = yyvsp[-1].String + yyvsp[0].String;  }      { (yyval.Char) = '\276'; }
4925      break;      break;
4926    
4927    case 370:    case 370:
4928  #line 360 "lscp.y"  #line 445 "lscp.y"
4929      { yyval.String = yyvsp[-1].String; }      { (yyval.Char) = '\277'; }
4930      break;      break;
4931    
4932    case 371:    case 371:
4933  #line 361 "lscp.y"  #line 445 "lscp.y"
4934      { yyval.String = yyvsp[-1].String; }      { (yyval.Char) = '\300'; }
4935      break;      break;
4936    
4937      case 372:
4938    #line 445 "lscp.y"
4939        { (yyval.Char) = '\301'; }
4940        break;
4941    
4942      }    case 373:
4943    #line 446 "lscp.y"
4944        { (yyval.Char) = '\302'; }
4945        break;
4946    
4947  /* Line 1010 of yacc.c.  */    case 374:
4948  #line 4409 "y.tab.c"  #line 446 "lscp.y"
4949        { (yyval.Char) = '\303'; }
4950    yyvsp -= yylen;      break;
   yyssp -= yylen;  
4951    
4952      case 375:
4953    #line 446 "lscp.y"
4954        { (yyval.Char) = '\304'; }
4955        break;
4956    
4957      case 376:
4958    #line 447 "lscp.y"
4959        { (yyval.Char) = '\305'; }
4960        break;
4961    
4962      case 377:
4963    #line 447 "lscp.y"
4964        { (yyval.Char) = '\306'; }
4965        break;
4966    
4967      case 378:
4968    #line 447 "lscp.y"
4969        { (yyval.Char) = '\307'; }
4970        break;
4971    
4972      case 379:
4973    #line 448 "lscp.y"
4974        { (yyval.Char) = '\310'; }
4975        break;
4976    
4977      case 380:
4978    #line 448 "lscp.y"
4979        { (yyval.Char) = '\311'; }
4980        break;
4981    
4982      case 381:
4983    #line 448 "lscp.y"
4984        { (yyval.Char) = '\312'; }
4985        break;
4986    
4987      case 382:
4988    #line 449 "lscp.y"
4989        { (yyval.Char) = '\313'; }
4990        break;
4991    
4992      case 383:
4993    #line 449 "lscp.y"
4994        { (yyval.Char) = '\314'; }
4995        break;
4996    
4997      case 384:
4998    #line 449 "lscp.y"
4999        { (yyval.Char) = '\315'; }
5000        break;
5001    
5002      case 385:
5003    #line 450 "lscp.y"
5004        { (yyval.Char) = '\316'; }
5005        break;
5006    
5007      case 386:
5008    #line 450 "lscp.y"
5009        { (yyval.Char) = '\317'; }
5010        break;
5011    
5012      case 387:
5013    #line 450 "lscp.y"
5014        { (yyval.Char) = '\320'; }
5015        break;
5016    
5017      case 388:
5018    #line 451 "lscp.y"
5019        { (yyval.Char) = '\321'; }
5020        break;
5021    
5022      case 389:
5023    #line 451 "lscp.y"
5024        { (yyval.Char) = '\322'; }
5025        break;
5026    
5027      case 390:
5028    #line 451 "lscp.y"
5029        { (yyval.Char) = '\323'; }
5030        break;
5031    
5032      case 391:
5033    #line 452 "lscp.y"
5034        { (yyval.Char) = '\324'; }
5035        break;
5036    
5037      case 392:
5038    #line 452 "lscp.y"
5039        { (yyval.Char) = '\325'; }
5040        break;
5041    
5042      case 393:
5043    #line 452 "lscp.y"
5044        { (yyval.Char) = '\326'; }
5045        break;
5046    
5047      case 394:
5048    #line 453 "lscp.y"
5049        { (yyval.Char) = '\327'; }
5050        break;
5051    
5052      case 395:
5053    #line 453 "lscp.y"
5054        { (yyval.Char) = '\330'; }
5055        break;
5056    
5057      case 396:
5058    #line 453 "lscp.y"
5059        { (yyval.Char) = '\331'; }
5060        break;
5061    
5062      case 397:
5063    #line 454 "lscp.y"
5064        { (yyval.Char) = '\332'; }
5065        break;
5066    
5067      case 398:
5068    #line 454 "lscp.y"
5069        { (yyval.Char) = '\333'; }
5070        break;
5071    
5072      case 399:
5073    #line 454 "lscp.y"
5074        { (yyval.Char) = '\334'; }
5075        break;
5076    
5077      case 400:
5078    #line 455 "lscp.y"
5079        { (yyval.Char) = '\335'; }
5080        break;
5081    
5082      case 401:
5083    #line 455 "lscp.y"
5084        { (yyval.Char) = '\336'; }
5085        break;
5086    
5087      case 402:
5088    #line 455 "lscp.y"
5089        { (yyval.Char) = '\337'; }
5090        break;
5091    
5092      case 403:
5093    #line 456 "lscp.y"
5094        { (yyval.Char) = '\340'; }
5095        break;
5096    
5097      case 404:
5098    #line 456 "lscp.y"
5099        { (yyval.Char) = '\341'; }
5100        break;
5101    
5102      case 405:
5103    #line 456 "lscp.y"
5104        { (yyval.Char) = '\342'; }
5105        break;
5106    
5107      case 406:
5108    #line 457 "lscp.y"
5109        { (yyval.Char) = '\343'; }
5110        break;
5111    
5112      case 407:
5113    #line 457 "lscp.y"
5114        { (yyval.Char) = '\344'; }
5115        break;
5116    
5117      case 408:
5118    #line 457 "lscp.y"
5119        { (yyval.Char) = '\345'; }
5120        break;
5121    
5122      case 409:
5123    #line 458 "lscp.y"
5124        { (yyval.Char) = '\346'; }
5125        break;
5126    
5127      case 410:
5128    #line 458 "lscp.y"
5129        { (yyval.Char) = '\347'; }
5130        break;
5131    
5132      case 411:
5133    #line 458 "lscp.y"
5134        { (yyval.Char) = '\350'; }
5135        break;
5136    
5137      case 412:
5138    #line 459 "lscp.y"
5139        { (yyval.Char) = '\351'; }
5140        break;
5141    
5142      case 413:
5143    #line 459 "lscp.y"
5144        { (yyval.Char) = '\352'; }
5145        break;
5146    
5147      case 414:
5148    #line 459 "lscp.y"
5149        { (yyval.Char) = '\353'; }
5150        break;
5151    
5152      case 415:
5153    #line 460 "lscp.y"
5154        { (yyval.Char) = '\354'; }
5155        break;
5156    
5157      case 416:
5158    #line 460 "lscp.y"
5159        { (yyval.Char) = '\355'; }
5160        break;
5161    
5162      case 417:
5163    #line 460 "lscp.y"
5164        { (yyval.Char) = '\356'; }
5165        break;
5166    
5167      case 418:
5168    #line 461 "lscp.y"
5169        { (yyval.Char) = '\357'; }
5170        break;
5171    
5172      case 419:
5173    #line 461 "lscp.y"
5174        { (yyval.Char) = '\360'; }
5175        break;
5176    
5177      case 420:
5178    #line 461 "lscp.y"
5179        { (yyval.Char) = '\361'; }
5180        break;
5181    
5182      case 421:
5183    #line 462 "lscp.y"
5184        { (yyval.Char) = '\362'; }
5185        break;
5186    
5187      case 422:
5188    #line 462 "lscp.y"
5189        { (yyval.Char) = '\363'; }
5190        break;
5191    
5192      case 423:
5193    #line 462 "lscp.y"
5194        { (yyval.Char) = '\364'; }
5195        break;
5196    
5197      case 424:
5198    #line 463 "lscp.y"
5199        { (yyval.Char) = '\365'; }
5200        break;
5201    
5202      case 425:
5203    #line 463 "lscp.y"
5204        { (yyval.Char) = '\366'; }
5205        break;
5206    
5207      case 426:
5208    #line 463 "lscp.y"
5209        { (yyval.Char) = '\367'; }
5210        break;
5211    
5212      case 427:
5213    #line 464 "lscp.y"
5214        { (yyval.Char) = '\370'; }
5215        break;
5216    
5217      case 428:
5218    #line 464 "lscp.y"
5219        { (yyval.Char) = '\371'; }
5220        break;
5221    
5222      case 429:
5223    #line 464 "lscp.y"
5224        { (yyval.Char) = '\372'; }
5225        break;
5226    
5227      case 430:
5228    #line 465 "lscp.y"
5229        { (yyval.Char) = '\373'; }
5230        break;
5231    
5232      case 431:
5233    #line 465 "lscp.y"
5234        { (yyval.Char) = '\374'; }
5235        break;
5236    
5237      case 432:
5238    #line 465 "lscp.y"
5239        { (yyval.Char) = '\375'; }
5240        break;
5241    
5242      case 433:
5243    #line 466 "lscp.y"
5244        { (yyval.Char) = '\376'; }
5245        break;
5246    
5247      case 434:
5248    #line 466 "lscp.y"
5249        { (yyval.Char) = '\377'; }
5250        break;
5251    
5252      case 435:
5253    #line 469 "lscp.y"
5254        { (yyval.String) = " ";      }
5255        break;
5256    
5257      case 437:
5258    #line 471 "lscp.y"
5259        { (yyval.String) = (yyvsp[(1) - (2)].String) + " "; }
5260        break;
5261    
5262      case 438:
5263    #line 472 "lscp.y"
5264        { (yyval.String) = (yyvsp[(1) - (2)].String) + (yyvsp[(2) - (2)].String);  }
5265        break;
5266    
5267      case 439:
5268    #line 475 "lscp.y"
5269        { (yyval.String) = (yyvsp[(2) - (3)].String); }
5270        break;
5271    
5272      case 440:
5273    #line 476 "lscp.y"
5274        { (yyval.String) = (yyvsp[(2) - (3)].String); }
5275        break;
5276    
5277    
5278    /* Line 1267 of yacc.c.  */
5279    #line 5280 "y.tab.c"
5280          default: break;
5281        }
5282      YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
5283    
5284      YYPOPSTACK (yylen);
5285      yylen = 0;
5286    YY_STACK_PRINT (yyss, yyssp);    YY_STACK_PRINT (yyss, yyssp);
5287    
5288    *++yyvsp = yyval;    *++yyvsp = yyval;
# Line 4439  yyerrlab: Line 5311  yyerrlab:
5311    if (!yyerrstatus)    if (!yyerrstatus)
5312      {      {
5313        ++yynerrs;        ++yynerrs;
5314  #if YYERROR_VERBOSE  #if ! YYERROR_VERBOSE
5315        yyn = yypact[yystate];        yyerror (YY_("syntax error"));
5316    #else
5317        if (YYPACT_NINF < yyn && yyn < YYLAST)        {
5318          {          YYSIZE_T yysize = yysyntax_error (0, yystate, yychar);
5319            YYSIZE_T yysize = 0;          if (yymsg_alloc < yysize && yymsg_alloc < YYSTACK_ALLOC_MAXIMUM)
5320            int yytype = YYTRANSLATE (yychar);            {
5321            const char* yyprefix;              YYSIZE_T yyalloc = 2 * yysize;
5322            char *yymsg;              if (! (yysize <= yyalloc && yyalloc <= YYSTACK_ALLOC_MAXIMUM))
5323            int yyx;                yyalloc = YYSTACK_ALLOC_MAXIMUM;
5324                if (yymsg != yymsgbuf)
5325            /* Start YYX at -YYN if negative to avoid negative indexes in                YYSTACK_FREE (yymsg);
5326               YYCHECK.  */              yymsg = (char *) YYSTACK_ALLOC (yyalloc);
5327            int yyxbegin = yyn < 0 ? -yyn : 0;              if (yymsg)
5328                  yymsg_alloc = yyalloc;
5329            /* 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)  
5330                {                {
5331                  yysize += yystrlen (yyprefix) + yystrlen (yytname [yyx]);                  yymsg = yymsgbuf;
5332                  yycount += 1;                  yymsg_alloc = sizeof yymsgbuf;
                 if (yycount == 5)  
                   {  
                     yysize = 0;  
                     break;  
                   }  
5333                }                }
5334            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]);  
5335    
5336                if (yycount < 5)          if (0 < yysize && yysize <= yymsg_alloc)
5337                  {            {
5338                    yyprefix = ", expecting ";              (void) yysyntax_error (yymsg, yystate, yychar);
5339                    for (yyx = yyxbegin; yyx < yyxend; ++yyx)              yyerror (yymsg);
5340                      if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)            }
5341                        {          else
5342                          yyp = yystpcpy (yyp, yyprefix);            {
5343                          yyp = yystpcpy (yyp, yytname[yyx]);              yyerror (YY_("syntax error"));
5344                          yyprefix = " or ";              if (yysize != 0)
5345                        }                goto yyexhaustedlab;
5346                  }            }
5347                yyerror (yymsg);        }
5348                YYSTACK_FREE (yymsg);  #endif
             }  
           else  
             yyerror ("syntax error; also virtual memory exhausted");  
         }  
       else  
 #endif /* YYERROR_VERBOSE */  
         yyerror ("syntax error");  
5349      }      }
5350    
5351    
5352    
5353    if (yyerrstatus == 3)    if (yyerrstatus == 3)
5354      {      {
5355        /* If just tried and failed to reuse lookahead token after an        /* If just tried and failed to reuse look-ahead token after an
5356           error, discard it.  */           error, discard it.  */
5357    
5358        if (yychar <= YYEOF)        if (yychar <= YYEOF)
5359          {          {
5360            /* 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.  */  
5361            if (yychar == YYEOF)            if (yychar == YYEOF)
5362               for (;;)              YYABORT;
5363                 {          }
                  YYPOPSTACK;  
                  if (yyssp == yyss)  
                    YYABORT;  
                  YYDSYMPRINTF ("Error: popping", yystos[*yyssp], yyvsp, yylsp);  
                  yydestruct (yystos[*yyssp], yyvsp);  
                }  
         }  
5364        else        else
5365          {          {
5366            YYDSYMPRINTF ("Error: discarding", yytoken, &yylval, &yylloc);            yydestruct ("Error: discarding",
5367            yydestruct (yytoken, &yylval);                        yytoken, &yylval);
5368            yychar = YYEMPTY;            yychar = YYEMPTY;
   
5369          }          }
5370      }      }
5371    
5372    /* Else will try to reuse lookahead token after shifting the error    /* Else will try to reuse look-ahead token after shifting the error
5373       token.  */       token.  */
5374    goto yyerrlab1;    goto yyerrlab1;
5375    
# Line 4541  yyerrlab: Line 5379  yyerrlab:
5379  `---------------------------------------------------*/  `---------------------------------------------------*/
5380  yyerrorlab:  yyerrorlab:
5381    
5382  #ifdef __GNUC__    /* Pacify compilers like GCC when the user code never invokes
5383    /* Pacify GCC when the user code never invokes YYERROR and the label       YYERROR and the label yyerrorlab therefore never appears in user
5384       yyerrorlab therefore never appears in user code.  */       code.  */
5385    if (0)    if (/*CONSTCOND*/ 0)
5386       goto yyerrorlab;       goto yyerrorlab;
 #endif  
5387    
5388    yyvsp -= yylen;    /* Do not reclaim the symbols of the rule which action triggered
5389    yyssp -= yylen;       this YYERROR.  */
5390      YYPOPSTACK (yylen);
5391      yylen = 0;
5392      YY_STACK_PRINT (yyss, yyssp);
5393    yystate = *yyssp;    yystate = *yyssp;
5394    goto yyerrlab1;    goto yyerrlab1;
5395    
# Line 4578  yyerrlab1: Line 5418  yyerrlab1:
5418        if (yyssp == yyss)        if (yyssp == yyss)
5419          YYABORT;          YYABORT;
5420    
5421        YYDSYMPRINTF ("Error: popping", yystos[*yyssp], yyvsp, yylsp);  
5422        yydestruct (yystos[yystate], yyvsp);        yydestruct ("Error: popping",
5423        YYPOPSTACK;                    yystos[yystate], yyvsp);
5424          YYPOPSTACK (1);
5425        yystate = *yyssp;        yystate = *yyssp;
5426        YY_STACK_PRINT (yyss, yyssp);        YY_STACK_PRINT (yyss, yyssp);
5427      }      }
# Line 4588  yyerrlab1: Line 5429  yyerrlab1:
5429    if (yyn == YYFINAL)    if (yyn == YYFINAL)
5430      YYACCEPT;      YYACCEPT;
5431    
   YYDPRINTF ((stderr, "Shifting error token, "));  
   
5432    *++yyvsp = yylval;    *++yyvsp = yylval;
5433    
5434    
5435      /* Shift the error token.  */
5436      YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
5437    
5438    yystate = yyn;    yystate = yyn;
5439    goto yynewstate;    goto yynewstate;
5440    
# Line 4612  yyabortlab: Line 5454  yyabortlab:
5454    goto yyreturn;    goto yyreturn;
5455    
5456  #ifndef yyoverflow  #ifndef yyoverflow
5457  /*----------------------------------------------.  /*-------------------------------------------------.
5458  | yyoverflowlab -- parser overflow comes here.  |  | yyexhaustedlab -- memory exhaustion comes here.  |
5459  `----------------------------------------------*/  `-------------------------------------------------*/
5460  yyoverflowlab:  yyexhaustedlab:
5461    yyerror ("parser stack overflow");    yyerror (YY_("memory exhausted"));
5462    yyresult = 2;    yyresult = 2;
5463    /* Fall through.  */    /* Fall through.  */
5464  #endif  #endif
5465    
5466  yyreturn:  yyreturn:
5467      if (yychar != YYEOF && yychar != YYEMPTY)
5468         yydestruct ("Cleanup: discarding lookahead",
5469                     yytoken, &yylval);
5470      /* Do not reclaim the symbols of the rule which action triggered
5471         this YYABORT or YYACCEPT.  */
5472      YYPOPSTACK (yylen);
5473      YY_STACK_PRINT (yyss, yyssp);
5474      while (yyssp != yyss)
5475        {
5476          yydestruct ("Cleanup: popping",
5477                      yystos[*yyssp], yyvsp);
5478          YYPOPSTACK (1);
5479        }
5480  #ifndef yyoverflow  #ifndef yyoverflow
5481    if (yyss != yyssa)    if (yyss != yyssa)
5482      YYSTACK_FREE (yyss);      YYSTACK_FREE (yyss);
5483  #endif  #endif
5484    return yyresult;  #if YYERROR_VERBOSE
5485      if (yymsg != yymsgbuf)
5486        YYSTACK_FREE (yymsg);
5487    #endif
5488      /* Make sure YYID is used.  */
5489      return YYID (yyresult);
5490  }  }
5491    
5492    
5493  #line 529 "lscp.y"  #line 728 "lscp.y"
5494    
5495    
5496  /**  /**
# Line 4648  void restart(yyparse_param_t* pparam, in Line 5508  void restart(yyparse_param_t* pparam, in
5508      ptr   = 0;      ptr   = 0;
5509  }  }
5510    
   

Legend:
Removed from v.556  
changed lines
  Added in v.1001

  ViewVC Help
Powered by ViewVC