/[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 411 by schoenebeck, Sat Feb 26 02:01:14 2005 UTC revision 973 by schoenebeck, Fri Dec 15 21:40:27 2006 UTC
# Line 1  Line 1 
1  /* A Bison parser, made by GNU Bison 1.875d.  */  /* A Bison parser, made by GNU Bison 2.2.  */
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.2"
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 26 "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    #ifdef short
142    # undef short
143    #endif
144    
145  #if ! defined (yyoverflow) || YYERROR_VERBOSE  #ifdef YYTYPE_UINT8
146    typedef YYTYPE_UINT8 yytype_uint8;
147    #else
148    typedef unsigned char yytype_uint8;
149    #endif
150    
151    #ifdef YYTYPE_INT8
152    typedef YYTYPE_INT8 yytype_int8;
153    #elif (defined __STDC__ || defined __C99__FUNC__ \
154         || defined __cplusplus || defined _MSC_VER)
155    typedef signed char yytype_int8;
156    #else
157    typedef short int yytype_int8;
158    #endif
159    
160    #ifdef YYTYPE_UINT16
161    typedef YYTYPE_UINT16 yytype_uint16;
162    #else
163    typedef unsigned short int yytype_uint16;
164    #endif
165    
166    #ifdef YYTYPE_INT16
167    typedef YYTYPE_INT16 yytype_int16;
168    #else
169    typedef short int yytype_int16;
170    #endif
171    
172  # ifndef YYFREE  #ifndef YYSIZE_T
173  #  define YYFREE free  # 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))
348    
349  #endif  #endif
350    
351  #if defined (__STDC__) || defined (__cplusplus)  /* YYFINAL -- State number of the termination state.  */
352     typedef signed char yysigned_char;  #define YYFINAL  46
 #else  
    typedef short int yysigned_char;  
 #endif  
   
 /* YYFINAL -- State number of the termination state. */  
 #define YYFINAL  40  
353  /* YYLAST -- Last index in YYTABLE.  */  /* YYLAST -- Last index in YYTABLE.  */
354  #define YYLAST   3997  #define YYLAST   4282
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  91  #define YYNNTS  124
360  /* YYNRULES -- Number of rules. */  /* YYNRULES -- Number of rules.  */
361  #define YYNRULES  417  #define YYNRULES  486
362  /* YYNRULES -- Number of states. */  /* YYNRULES -- Number of states.  */
363  #define YYNSTATES  1144  #define YYNSTATES  1455
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,    70,   223,     3,    71,    72,    73,   222,         2,     2,   224,    71,   223,     3,    72,    73,    74,   222,
379        74,    75,    76,     6,    77,     7,     5,    78,     8,     9,        75,    76,    77,     7,     5,     8,     6,    78,     9,    10,
380        10,    11,    12,    13,    14,    15,    16,    17,    79,    80,        11,    12,    13,    14,    15,    16,    17,    18,    79,    80,
381        81,     4,    82,    83,    84,    18,    19,    20,    21,    22,        81,     4,    82,    83,    84,    19,    20,    21,    22,    23,
382        23,    24,    25,    26,    27,    28,    29,    30,    31,    32,        24,    25,    26,    27,    28,    29,    30,    31,    32,    33,
383        33,    34,    35,    36,    37,    38,    39,    40,    41,    42,        34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
384        43,    85,    86,    87,    88,    89,     2,    44,    45,    46,        44,    85,    86,    87,    88,    89,     2,    45,    46,    47,
385        47,    48,    49,    50,    51,    52,    53,    54,    55,    56,        48,    49,    50,    51,    52,    53,    54,    55,    56,    57,
386        57,    58,    59,    60,    61,    62,    63,    64,    65,    66,        58,    59,    60,    61,    62,    63,    64,    65,    66,    67,
387        67,    68,    69,    90,    91,    92,    93,     2,    94,    95,        68,    69,    70,    90,    91,    92,    93,     2,    94,    95,
388        96,    97,    98,    99,   100,   101,   102,   103,   104,   105,        96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
389       106,   107,   108,   109,   110,   111,   112,   113,   114,   115,       106,   107,   108,   109,   110,   111,   112,   113,   114,   115,
390       116,   117,   118,   119,   120,   121,   122,   123,   124,   125,       116,   117,   118,   119,   120,   121,   122,   123,   124,   125,
# Line 275  static const unsigned char yytranslate[] Line 403  static const unsigned char yytranslate[]
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,   147,   165,
413       169,   175,   181,   189,   199,   207,   217,   219,   225,   233,       183,   203,   211,   215,   219,   223,   225,   227,   233,   241,
414       239,   245,   251,   259,   269,   277,   287,   291,   295,   301,       251,   253,   259,   267,   277,   279,   281,   287,   293,   301,
415       305,   311,   315,   319,   323,   327,   331,   337,   345,   351,       311,   319,   329,   331,   337,   345,   351,   357,   363,   367,
416       361,   367,   373,   379,   385,   391,   395,   401,   403,   405,       369,   371,   375,   379,   389,   391,   397,   405,   415,   423,
417       407,   409,   411,   417,   425,   429,   431,   433,   435,   437,       433,   437,   445,   449,   455,   459,   465,   469,   473,   477,
418       439,   441,   443,   445,   447,   449,   451,   453,   455,   457,       481,   485,   489,   493,   497,   503,   511,   517,   527,   533,
419       459,   461,   463,   465,   467,   469,   472,   476,   481,   486,       539,   545,   551,   557,   563,   569,   575,   581,   587,   591,
420       488,   491,   493,   495,   497,   499,   501,   503,   505,   507,       597,   599,   601,   603,   605,   607,   609,   611,   613,   617,
421       509,   511,   513,   516,   519,   522,   525,   528,   531,   534,       621,   623,   629,   637,   641,   643,   645,   647,   649,   651,
422       537,   540,   542,   544,   546,   548,   550,   552,   554,   556,       653,   655,   657,   659,   661,   663,   665,   667,   669,   671,
423       558,   560,   562,   564,   566,   568,   570,   572,   574,   576,       673,   675,   677,   679,   681,   683,   685,   689,   691,   693,
424       578,   580,   582,   584,   586,   588,   590,   592,   594,   596,       695,   697,   699,   701,   703,   706,   710,   715,   720,   722,
425       598,   600,   602,   604,   606,   608,   610,   612,   614,   616,       725,   727,   729,   731,   733,   735,   737,   739,   741,   743,
426       618,   620,   622,   624,   626,   628,   630,   632,   634,   636,       745,   747,   750,   753,   756,   759,   762,   765,   768,   771,
427       638,   640,   642,   644,   646,   648,   650,   652,   654,   656,       774,   776,   778,   780,   782,   784,   786,   788,   790,   792,
428       658,   660,   662,   664,   666,   668,   670,   672,   674,   676,       794,   796,   798,   800,   802,   804,   806,   808,   810,   812,
429       678,   680,   682,   684,   686,   688,   690,   692,   694,   696,       814,   816,   818,   820,   822,   824,   826,   828,   830,   832,
430       698,   700,   702,   704,   706,   708,   710,   712,   714,   716,       834,   836,   838,   840,   842,   844,   846,   848,   850,   852,
431       718,   720,   722,   724,   726,   728,   730,   732,   734,   736,       854,   856,   858,   860,   862,   864,   866,   868,   870,   872,
432       738,   740,   742,   744,   746,   748,   750,   752,   754,   756,       874,   876,   878,   880,   882,   884,   886,   888,   890,   892,
433       758,   760,   762,   764,   766,   768,   770,   772,   774,   776,       894,   896,   898,   900,   902,   904,   906,   908,   910,   912,
434       778,   780,   782,   784,   786,   788,   790,   792,   794,   796,       914,   916,   918,   920,   922,   924,   926,   928,   930,   932,
435       798,   800,   802,   804,   806,   808,   810,   812,   814,   816,       934,   936,   938,   940,   942,   944,   946,   948,   950,   952,
436       818,   820,   822,   824,   826,   828,   830,   832,   834,   836,       954,   956,   958,   960,   962,   964,   966,   968,   970,   972,
437       838,   840,   842,   844,   846,   848,   850,   852,   854,   856,       974,   976,   978,   980,   982,   984,   986,   988,   990,   992,
438       858,   860,   862,   864,   866,   868,   870,   872,   874,   876,       994,   996,   998,  1000,  1002,  1004,  1006,  1008,  1010,  1012,
439       878,   880,   882,   884,   886,   888,   890,   892,   894,   896,      1014,  1016,  1018,  1020,  1022,  1024,  1026,  1028,  1030,  1032,
440       898,   900,   902,   904,   906,   908,   910,   912,   914,   916,      1034,  1036,  1038,  1040,  1042,  1044,  1046,  1048,  1050,  1052,
441       918,   920,   922,   924,   926,   928,   930,   932,   934,   936,      1054,  1056,  1058,  1060,  1062,  1064,  1066,  1068,  1070,  1072,
442       938,   940,   942,   944,   946,   948,   950,   952,   954,   956,      1074,  1076,  1078,  1080,  1082,  1084,  1086,  1088,  1090,  1092,
443       958,   960,   962,   964,   966,   968,   970,   972,   974,   976,      1094,  1096,  1098,  1100,  1102,  1104,  1106,  1108,  1110,  1112,
444       978,   980,   982,   985,   988,   992,   996,   998,  1000,  1002,      1114,  1116,  1118,  1120,  1122,  1124,  1126,  1128,  1130,  1132,
445      1006,  1010,  1017,  1025,  1030,  1035,  1039,  1049,  1056,  1060,      1134,  1136,  1138,  1140,  1142,  1144,  1146,  1148,  1150,  1152,
446      1070,  1082,  1089,  1097,  1115,  1146,  1155,  1160,  1172,  1185,      1154,  1156,  1158,  1160,  1162,  1164,  1166,  1168,  1170,  1172,
447      1197,  1208,  1215,  1245,  1266,  1286,  1316,  1336,  1367,  1388,      1174,  1176,  1178,  1180,  1182,  1184,  1186,  1188,  1190,  1192,
448      1406,  1435,  1463,  1489,  1508,  1526,  1554,  1572,  1588,  1607,      1194,  1196,  1198,  1200,  1202,  1204,  1206,  1208,  1210,  1212,
449      1623,  1634,  1641,  1647,  1658,  1664,  1678,  1683      1214,  1216,  1219,  1222,  1226,  1230,  1232,  1234,  1236,  1240,
450        1244,  1248,  1254,  1260,  1267,  1275,  1280,  1285,  1289,  1294,
451        1302,  1312,  1319,  1323,  1333,  1345,  1352,  1360,  1378,  1409,
452        1418,  1423,  1437,  1450,  1462,  1475,  1487,  1505,  1527,  1538,
453        1545,  1555,  1570,  1581,  1611,  1632,  1652,  1682,  1702,  1733,
454        1754,  1772,  1801,  1829,  1855,  1874,  1892,  1920,  1936,  1953,
455        1973,  1994,  2012,  2028,  2047,  2063,  2074,  2081,  2088,  2093,
456        2098,  2104,  2115,  2121,  2135,  2140,  2145
457  };  };
458    
459  /* YYRHS -- A `-1'-separated list of the rules' RHS. */  /* YYRHS -- A `-1'-separated list of the rules' RHS.  */
460  static const short int yyrhs[] =  static const yytype_int16 yyrhs[] =
461  {  {
462       228,     0,    -1,   229,   267,    -1,   229,   268,   267,    -1,       228,     0,    -1,   229,   280,    -1,   229,   281,   280,    -1,
463        -1,   230,    -1,   231,    -1,     1,    -1,     3,    -1,   230,        -1,   230,    -1,   231,    -1,     1,    -1,     3,    -1,   230,
464         3,    -1,   230,   266,    -1,   230,   262,    -1,   230,   258,         3,    -1,   230,   279,    -1,   230,   275,    -1,   230,   271,
465        -1,   269,   266,   282,    -1,   270,   266,   234,    -1,   271,        -1,   282,   279,   232,    -1,   284,   279,   235,    -1,   285,
466       266,   236,    -1,   272,   266,   237,    -1,   273,   266,   242,       279,   236,    -1,   283,   279,   238,    -1,   287,   279,   240,
467        -1,   274,   266,   238,    -1,   277,   266,   282,   266,   252,        -1,   288,   279,   243,    -1,   289,   279,   248,    -1,   290,
468        -1,   278,   266,   235,    -1,   279,   266,   232,    -1,   280,       279,   244,    -1,   295,   279,   237,    -1,   296,   279,   239,
469       266,   233,    -1,   281,   266,   264,    -1,   314,   266,   282,        -1,   297,   279,   233,    -1,   298,   279,   234,    -1,   299,
470       266,   252,    -1,   314,    -1,   317,    -1,   285,    -1,   289,       279,   277,    -1,   346,   279,   241,    -1,   286,   279,   242,
471        -1,   288,    -1,   287,    -1,   286,    -1,   315,    -1,   285,        -1,   346,    -1,   350,    -1,   300,    -1,   333,    -1,   333,
472        -1,   289,    -1,   288,    -1,   287,    -1,   286,    -1,   315,       279,   266,    -1,   305,    -1,   309,    -1,   308,    -1,   307,
473        -1,   283,    -1,   300,    -1,   306,   266,   286,   266,   258,        -1,   306,    -1,   347,    -1,   310,    -1,   305,    -1,   309,
474        -1,   305,   266,   286,   266,   258,   266,   258,    -1,   305,        -1,   308,    -1,   307,    -1,   306,    -1,   347,    -1,   310,
475       266,   286,   266,   258,   266,   258,   266,   240,    -1,   284,        -1,   331,   279,   258,   279,   259,   279,   260,   279,   264,
476        -1,   296,   266,   286,   266,   258,    -1,   295,   266,   286,       279,   265,   279,   263,   279,   261,    -1,   331,   279,   258,
477       266,   258,   266,   258,    -1,   295,   266,   286,   266,   258,       279,   259,   279,   260,   279,   264,   279,   265,   279,   263,
478       266,   258,   266,   240,    -1,   293,    -1,   303,    -1,   294,       279,   261,   279,   251,    -1,   331,   279,   258,   279,   259,
479       266,   286,   266,   262,    -1,   304,   266,   286,   266,   262,       279,   260,   279,   264,   279,   265,   279,   263,   279,   261,
480        -1,   307,   266,   286,   266,   262,   266,   262,    -1,   302,       279,   267,    -1,   331,   279,   258,   279,   259,   279,   260,
481       266,   286,   266,   262,   266,   262,   266,   258,    -1,   298,       279,   264,   279,   265,   279,   263,   279,   261,   279,   251,
482       266,   286,   266,   262,   266,   262,    -1,   297,   266,   286,       279,   267,    -1,   331,   279,   258,   279,   259,   279,   260,
483       266,   262,   266,   262,   266,   258,    -1,   285,    -1,   282,        -1,   300,   279,   262,    -1,   333,   279,   258,    -1,   333,
484       266,   286,   266,   252,    -1,   282,   266,   287,   266,   241,       279,   291,    -1,   301,    -1,   325,    -1,   335,   279,   304,
485       266,   252,    -1,   282,   266,   288,   266,   252,    -1,   282,       279,   271,    -1,   330,   279,   304,   279,   271,   279,   271,
486       266,   289,   266,   252,    -1,   291,   266,   286,   266,   254,        -1,   330,   279,   304,   279,   271,   279,   271,   279,   246,
487        -1,   292,   266,   262,   266,   258,     4,   256,    -1,   297,        -1,   302,    -1,   321,   279,   304,   279,   271,    -1,   320,
488       266,   262,   266,   262,   266,   258,     4,   256,    -1,   301,       279,   304,   279,   271,   279,   271,    -1,   320,   279,   304,
489       266,   262,   266,   258,     4,   256,    -1,   302,   266,   262,       279,   271,   279,   271,   279,   246,    -1,   318,    -1,   328,
490       266,   262,   266,   258,     4,   256,    -1,   282,   266,   239,        -1,   319,   279,   304,   279,   275,    -1,   329,   279,   304,
491        -1,   316,   266,   257,    -1,   294,   266,   258,   266,   240,       279,   275,    -1,   336,   279,   304,   279,   275,   279,   275,
492        -1,   294,   266,   258,    -1,   304,   266,   258,   266,   240,        -1,   327,   279,   304,   279,   275,   279,   275,   279,   271,
493        -1,   304,   266,   258,    -1,   294,   266,   262,    -1,   304,        -1,   323,   279,   304,   279,   275,   279,   275,    -1,   322,
494       266,   262,    -1,   290,   266,   243,    -1,   291,   266,   244,       279,   304,   279,   275,   279,   275,   279,   271,    -1,   303,
495        -1,   294,   266,   252,   266,   245,    -1,   298,   266,   252,        -1,   300,   279,   304,   279,   262,    -1,   300,   279,   307,
496       266,   246,   266,   246,    -1,   299,   266,   252,   266,   247,       279,   247,   279,   262,    -1,   300,   279,   308,   279,   262,
497        -1,   310,   266,   252,   266,   245,   266,   248,   266,   249,        -1,   300,   279,   309,   279,   262,    -1,   313,   279,   304,
498        -1,   304,   266,   252,   266,   245,    -1,   307,   266,   252,       279,   264,    -1,   340,   279,   304,    -1,   310,    -1,   311,
499       266,   248,    -1,   308,   266,   252,   266,   249,    -1,   309,        -1,   332,   279,   258,    -1,   332,   279,   291,    -1,   331,
500       266,   252,   266,   250,    -1,   311,   266,   252,   266,   251,       279,   304,   279,   258,   279,   259,   279,   260,    -1,   334,
501        -1,   258,     4,   256,    -1,   240,   266,   258,     4,   256,        -1,   333,   279,   304,   279,   258,    -1,   317,   279,   275,
502        -1,   312,    -1,   313,    -1,   293,    -1,   303,    -1,   285,       279,   271,     4,   268,    -1,   322,   279,   275,   279,   275,
503        -1,   255,   266,   253,   266,   252,    -1,   276,   266,   255,       279,   271,     4,   268,    -1,   326,   279,   275,   279,   271,
504       266,   253,   266,   252,    -1,   254,   266,   252,    -1,   262,         4,   268,    -1,   327,   279,   275,   279,   275,   279,   271,
505        -1,   262,    -1,   258,    -1,   262,    -1,   262,    -1,   275,         4,   268,    -1,   300,   279,   245,    -1,   333,   279,   348,
506        -1,   258,    -1,   259,    -1,   262,    -1,   262,    -1,   262,       279,   258,   279,   266,    -1,   349,   279,   270,    -1,   319,
507        -1,   258,    -1,   265,    -1,   258,    -1,   265,    -1,   262,       279,   271,   279,   246,    -1,   319,   279,   271,    -1,   329,
508        -1,   259,    -1,   262,    -1,   258,    -1,   263,    -1,   258,       279,   271,   279,   246,    -1,   329,   279,   271,    -1,   300,
509       263,    -1,   260,     5,   260,    -1,     6,   260,     5,   260,       279,   262,    -1,   332,   279,   258,    -1,   332,   279,   291,
510        -1,     7,   260,     5,   260,    -1,   261,    -1,   260,   261,        -1,   319,   279,   275,    -1,   329,   279,   275,    -1,   312,
511        -1,     8,    -1,     9,    -1,    10,    -1,    11,    -1,    12,       279,   249,    -1,   313,   279,   250,    -1,   319,   279,   262,
512        -1,    13,    -1,    14,    -1,    15,    -1,    16,    -1,    17,       279,   252,    -1,   323,   279,   262,   279,   253,   279,   253,
513        -1,   261,    -1,     9,   260,    -1,    10,   260,    -1,    11,        -1,   324,   279,   262,   279,   254,    -1,   339,   279,   262,
514       260,    -1,    12,   260,    -1,    13,   260,    -1,    14,   260,       279,   252,   279,   255,   279,   256,    -1,   329,   279,   262,
515        -1,    15,   260,    -1,    16,   260,    -1,    17,   260,    -1,       279,   252,    -1,   336,   279,   262,   279,   255,    -1,   337,
516        18,    -1,    19,    -1,    20,    -1,    21,    -1,    22,    -1,       279,   262,   279,   256,    -1,   338,   279,   262,   279,   257,
517        23,    -1,    24,    -1,    25,    -1,    26,    -1,    27,    -1,        -1,   341,   279,   262,   279,   261,    -1,   342,   279,   262,
518        28,    -1,    29,    -1,    30,    -1,    31,    -1,    32,    -1,       279,   270,    -1,   343,   279,   262,   279,   270,    -1,   333,
519        33,    -1,    34,    -1,    35,    -1,    36,    -1,    37,    -1,       279,   262,   279,   258,    -1,   333,   279,   262,   279,   292,
520        38,    -1,    39,    -1,    40,    -1,    41,    -1,    42,    -1,        -1,   333,   279,   262,   279,   293,    -1,   271,     4,   268,
521        43,    -1,    44,    -1,    45,    -1,    46,    -1,    47,    -1,        -1,   246,   279,   271,     4,   268,    -1,   344,    -1,   345,
522        48,    -1,    49,    -1,    50,    -1,    51,    -1,    52,    -1,        -1,   318,    -1,   328,    -1,   303,    -1,   301,    -1,   325,
523        53,    -1,    54,    -1,    55,    -1,    56,    -1,    57,    -1,        -1,   302,    -1,   332,   279,   258,    -1,   332,   279,   291,
524        58,    -1,    59,    -1,    60,    -1,    61,    -1,    62,    -1,        -1,   334,    -1,   265,   279,   263,   279,   262,    -1,   294,
525        63,    -1,    64,    -1,    65,    -1,    66,    -1,    67,    -1,       279,   265,   279,   263,   279,   262,    -1,   264,   279,   262,
526        68,    -1,    69,    -1,     8,    -1,     9,    -1,    10,    -1,        -1,   314,    -1,   315,    -1,   316,    -1,   275,    -1,   275,
527        11,    -1,    12,    -1,    13,    -1,    14,    -1,    15,    -1,        -1,   271,    -1,   275,    -1,   275,    -1,   291,    -1,   271,
528        16,    -1,    17,    -1,    70,    -1,     3,    -1,    71,    -1,        -1,   275,    -1,   275,    -1,   275,    -1,   272,    -1,   275,
529        72,    -1,    73,    -1,    74,    -1,    75,    -1,    76,    -1,        -1,   275,    -1,   275,    -1,   271,    -1,   278,    -1,   278,
530         6,    -1,     7,    -1,     5,    -1,    77,    -1,    78,    -1,        -1,   278,    -1,   269,    -1,   268,     5,   269,    -1,   271,
531        79,    -1,    80,    -1,    81,    -1,     4,    -1,    82,    -1,        -1,   278,    -1,   275,    -1,   272,    -1,   275,    -1,   271,
532        83,    -1,    84,    -1,    85,    -1,    86,    -1,    87,    -1,        -1,   276,    -1,   271,   276,    -1,   273,     6,   273,    -1,
533        88,    -1,    89,    -1,    90,    -1,    91,    -1,    92,    -1,         7,   273,     6,   273,    -1,     8,   273,     6,   273,    -1,
534        93,    -1,    94,    -1,    95,    -1,    96,    -1,    97,    -1,       274,    -1,   273,   274,    -1,     9,    -1,    10,    -1,    11,
535        98,    -1,    99,    -1,   100,    -1,   101,    -1,   102,    -1,        -1,    12,    -1,    13,    -1,    14,    -1,    15,    -1,    16,
536       103,    -1,   104,    -1,   105,    -1,   106,    -1,   107,    -1,        -1,    17,    -1,    18,    -1,   274,    -1,    10,   273,    -1,
537       108,    -1,   109,    -1,   110,    -1,   111,    -1,   112,    -1,        11,   273,    -1,    12,   273,    -1,    13,   273,    -1,    14,
538       113,    -1,   114,    -1,   115,    -1,   116,    -1,   117,    -1,       273,    -1,    15,   273,    -1,    16,   273,    -1,    17,   273,
539       118,    -1,   119,    -1,   120,    -1,   121,    -1,   122,    -1,        -1,    18,   273,    -1,    19,    -1,    20,    -1,    21,    -1,
540       123,    -1,   124,    -1,   125,    -1,   126,    -1,   127,    -1,        22,    -1,    23,    -1,    24,    -1,    25,    -1,    26,    -1,
541       128,    -1,   129,    -1,   130,    -1,   131,    -1,   132,    -1,        27,    -1,    28,    -1,    29,    -1,    30,    -1,    31,    -1,
542       133,    -1,   134,    -1,   135,    -1,   136,    -1,   137,    -1,        32,    -1,    33,    -1,    34,    -1,    35,    -1,    36,    -1,
543       138,    -1,   139,    -1,   140,    -1,   141,    -1,   142,    -1,        37,    -1,    38,    -1,    39,    -1,    40,    -1,    41,    -1,
544       143,    -1,   144,    -1,   145,    -1,   146,    -1,   147,    -1,        42,    -1,    43,    -1,    44,    -1,    45,    -1,    46,    -1,
545       148,    -1,   149,    -1,   150,    -1,   151,    -1,   152,    -1,        47,    -1,    48,    -1,    49,    -1,    50,    -1,    51,    -1,
546       153,    -1,   154,    -1,   155,    -1,   156,    -1,   157,    -1,        52,    -1,    53,    -1,    54,    -1,    55,    -1,    56,    -1,
547       158,    -1,   159,    -1,   160,    -1,   161,    -1,   162,    -1,        57,    -1,    58,    -1,    59,    -1,    60,    -1,    61,    -1,
548       163,    -1,   164,    -1,   165,    -1,   166,    -1,   167,    -1,        62,    -1,    63,    -1,    64,    -1,    65,    -1,    66,    -1,
549       168,    -1,   169,    -1,   170,    -1,   171,    -1,   172,    -1,        67,    -1,    68,    -1,    69,    -1,    70,    -1,     9,    -1,
550       173,    -1,   174,    -1,   175,    -1,   176,    -1,   177,    -1,        10,    -1,    11,    -1,    12,    -1,    13,    -1,    14,    -1,
551       178,    -1,   179,    -1,   180,    -1,   181,    -1,   182,    -1,        15,    -1,    16,    -1,    17,    -1,    18,    -1,    71,    -1,
552       183,    -1,   184,    -1,   185,    -1,   186,    -1,   187,    -1,         3,    -1,    72,    -1,    73,    -1,    74,    -1,    75,    -1,
553       188,    -1,   189,    -1,   190,    -1,   191,    -1,   192,    -1,        76,    -1,    77,    -1,     7,    -1,     8,    -1,     6,    -1,
554       193,    -1,   194,    -1,   195,    -1,   196,    -1,   197,    -1,         5,    -1,    78,    -1,    79,    -1,    80,    -1,    81,    -1,
555       198,    -1,   199,    -1,   200,    -1,   201,    -1,   202,    -1,         4,    -1,    82,    -1,    83,    -1,    84,    -1,    85,    -1,
556       203,    -1,   204,    -1,   205,    -1,   206,    -1,   207,    -1,        86,    -1,    87,    -1,    88,    -1,    89,    -1,    90,    -1,
557       208,    -1,   209,    -1,   210,    -1,   211,    -1,   212,    -1,        91,    -1,    92,    -1,    93,    -1,    94,    -1,    95,    -1,
558       213,    -1,   214,    -1,   215,    -1,   216,    -1,   217,    -1,        96,    -1,    97,    -1,    98,    -1,    99,    -1,   100,    -1,
559       218,    -1,   219,    -1,   220,    -1,   221,    -1,   266,    -1,       101,    -1,   102,    -1,   103,    -1,   104,    -1,   105,    -1,
560       258,    -1,   264,   266,    -1,   264,   258,    -1,   222,   264,       106,    -1,   107,    -1,   108,    -1,   109,    -1,   110,    -1,
561       222,    -1,   223,   264,   223,    -1,   224,    -1,   225,    -1,       111,    -1,   112,    -1,   113,    -1,   114,    -1,   115,    -1,
562       226,    -1,    18,    21,    21,    -1,    24,    22,    37,    -1,       116,    -1,   117,    -1,   118,    -1,   119,    -1,   120,    -1,
563        20,    35,    22,    18,    37,    22,    -1,    21,    22,    36,       121,    -1,   122,    -1,   123,    -1,   124,    -1,   125,    -1,
564        37,    35,    32,    42,    -1,    29,    26,    36,    37,    -1,       126,    -1,   127,    -1,   128,    -1,   129,    -1,   130,    -1,
565        29,    32,    18,    21,    -1,    18,    29,    29,    -1,    31,       131,    -1,   132,    -1,   133,    -1,   134,    -1,   135,    -1,
566        32,    31,    89,    30,    32,    21,    18,    29,    -1,    35,       136,    -1,   137,    -1,   138,    -1,   139,    -1,   140,    -1,
567        22,    30,    32,    39,    22,    -1,    36,    22,    37,    -1,       141,    -1,   142,    -1,   143,    -1,   144,    -1,   145,    -1,
568        36,    38,    19,    36,    20,    35,    26,    19,    22,    -1,       146,    -1,   147,    -1,   148,    -1,   149,    -1,   150,    -1,
569        38,    31,    36,    38,    19,    36,    20,    35,    26,    19,       151,    -1,   152,    -1,   153,    -1,   154,    -1,   155,    -1,
570        22,    -1,    36,    22,    29,    22,    20,    37,    -1,    20,       156,    -1,   157,    -1,   158,    -1,   159,    -1,   160,    -1,
571        25,    18,    31,    31,    22,    29,    -1,    18,    39,    18,       161,    -1,   162,    -1,   163,    -1,   164,    -1,   165,    -1,
572        26,    29,    18,    19,    29,    22,    89,    22,    31,    24,       166,    -1,   167,    -1,   168,    -1,   169,    -1,   170,    -1,
573        26,    31,    22,    36,    -1,    18,    39,    18,    26,    29,       171,    -1,   172,    -1,   173,    -1,   174,    -1,   175,    -1,
574        18,    19,    29,    22,    89,    18,    38,    21,    26,    32,       176,    -1,   177,    -1,   178,    -1,   179,    -1,   180,    -1,
575        89,    32,    38,    37,    33,    38,    37,    89,    21,    35,       181,    -1,   182,    -1,   183,    -1,   184,    -1,   185,    -1,
576        26,    39,    22,    35,    36,    -1,    20,    25,    18,    31,       186,    -1,   187,    -1,   188,    -1,   189,    -1,   190,    -1,
577        31,    22,    29,    36,    -1,    26,    31,    23,    32,    -1,       191,    -1,   192,    -1,   193,    -1,   194,    -1,   195,    -1,
578        19,    38,    23,    23,    22,    35,    89,    23,    26,    29,       196,    -1,   197,    -1,   198,    -1,   199,    -1,   200,    -1,
579        29,    -1,    36,    37,    35,    22,    18,    30,    89,    20,       201,    -1,   202,    -1,   203,    -1,   204,    -1,   205,    -1,
580        32,    38,    31,    37,    -1,    39,    32,    26,    20,    22,       206,    -1,   207,    -1,   208,    -1,   209,    -1,   210,    -1,
581        89,    20,    32,    38,    31,    37,    -1,    26,    31,    36,       211,    -1,   212,    -1,   213,    -1,   214,    -1,   215,    -1,
582        37,    35,    38,    30,    22,    31,    37,    -1,    22,    31,       216,    -1,   217,    -1,   218,    -1,   219,    -1,   220,    -1,
583        24,    26,    31,    22,    -1,    18,    38,    21,    26,    32,       221,    -1,   279,    -1,   271,    -1,   277,   279,    -1,   277,
584        89,    32,    38,    37,    33,    38,    37,    89,    21,    22,       271,    -1,   222,   277,   222,    -1,   223,   277,   223,    -1,
585        39,    26,    20,    22,    89,    33,    18,    35,    18,    30,       224,    -1,   225,    -1,   226,    -1,    19,    22,    22,    -1,
586        22,    37,    22,    35,    -1,    18,    38,    21,    26,    32,        25,    23,    38,    -1,    31,    19,    34,    -1,    39,    32,
587        89,    32,    38,    37,    33,    38,    37,    89,    21,    22,        31,    19,    34,    -1,    21,    30,    23,    19,    36,    -1,
588        39,    26,    20,    22,    36,    -1,    18,    38,    21,    26,        21,    36,    23,    19,    38,    23,    -1,    22,    23,    37,
589        32,    89,    32,    38,    37,    33,    38,    37,    89,    21,        38,    36,    33,    43,    -1,    30,    27,    37,    38,    -1,
590        22,    39,    26,    20,    22,    -1,    18,    38,    21,    26,        30,    33,    19,    22,    -1,    19,    30,    30,    -1,    32,
591        32,    89,    32,    38,    37,    33,    38,    37,    89,    21,        33,    32,    23,    -1,    22,    23,    24,    19,    39,    30,
592        35,    26,    39,    22,    35,    89,    33,    18,    35,    18,        38,    -1,    32,    33,    32,    89,    31,    33,    22,    19,
593        30,    22,    37,    22,    35,    -1,    18,    38,    21,    26,        30,    -1,    36,    23,    31,    33,    40,    23,    -1,    37,
594        32,    89,    32,    38,    37,    33,    38,    37,    89,    21,        23,    38,    -1,    37,    39,    20,    37,    21,    36,    27,
595        35,    26,    39,    22,    35,    -1,    18,    38,    21,    26,        20,    23,    -1,    39,    32,    37,    39,    20,    37,    21,
596        32,    89,    32,    38,    37,    33,    38,    37,    89,    20,        36,    27,    20,    23,    -1,    37,    23,    30,    23,    21,
597        25,    18,    31,    31,    22,    29,    89,    33,    18,    35,        38,    -1,    21,    26,    19,    32,    32,    23,    30,    -1,
598        18,    30,    22,    37,    22,    35,    -1,    18,    38,    21,        19,    40,    19,    27,    30,    19,    20,    30,    23,    89,
599        26,    32,    89,    32,    38,    37,    33,    38,    37,    89,        23,    32,    25,    27,    32,    23,    37,    -1,    19,    40,
600        20,    25,    18,    31,    31,    22,    29,    -1,    18,    38,        19,    27,    30,    19,    20,    30,    23,    89,    19,    39,
601        21,    26,    32,    89,    32,    38,    37,    33,    38,    37,        22,    27,    33,    89,    33,    39,    38,    34,    39,    38,
602        89,    37,    42,    33,    22,    -1,    18,    39,    18,    26,        89,    22,    36,    27,    40,    23,    36,    37,    -1,    21,
603        29,    18,    19,    29,    22,    89,    30,    26,    21,    26,        26,    19,    32,    32,    23,    30,    37,    -1,    27,    32,
604        89,    26,    31,    33,    38,    37,    89,    21,    35,    26,        24,    33,    -1,    21,    26,    19,    32,    32,    23,    30,
605        39,    22,    35,    36,    -1,    30,    26,    21,    26,    89,        89,    21,    33,    39,    32,    38,    -1,    21,    26,    19,
606        26,    31,    33,    38,    37,    89,    21,    22,    39,    26,        32,    32,    23,    30,    89,    27,    32,    24,    33,    -1,
607        20,    22,    89,    33,    18,    35,    18,    30,    22,    37,        20,    39,    24,    24,    23,    36,    89,    24,    27,    30,
608        22,    35,    -1,    30,    26,    21,    26,    89,    26,    31,        30,    -1,    37,    38,    36,    23,    19,    31,    89,    21,
609        33,    38,    37,    89,    33,    32,    35,    37,    89,    33,        33,    39,    32,    38,    -1,    40,    33,    27,    21,    23,
610        18,    35,    18,    30,    22,    37,    22,    35,    -1,    30,        89,    21,    33,    39,    32,    38,    -1,    38,    33,    38,
611        26,    21,    26,    89,    26,    31,    33,    38,    37,    89,        19,    30,    89,    40,    33,    27,    21,    23,    89,    21,
612        21,    22,    39,    26,    20,    22,    36,    -1,    30,    26,        33,    39,    32,    38,    -1,    38,    33,    38,    19,    30,
613        21,    26,    89,    26,    31,    33,    38,    37,    89,    21,        89,    40,    33,    27,    21,    23,    89,    21,    33,    39,
614        22,    39,    26,    20,    22,    -1,    30,    26,    21,    26,        32,    38,    89,    31,    19,    42,    -1,    27,    32,    37,
615        89,    26,    31,    33,    38,    37,    89,    21,    35,    26,        38,    36,    39,    31,    23,    32,    38,    -1,    23,    32,
616        39,    22,    35,    89,    33,    18,    35,    18,    30,    22,        25,    27,    32,    23,    -1,    33,    32,    89,    22,    23,
617        37,    22,    35,    -1,    30,    26,    21,    26,    89,    26,        31,    19,    32,    22,    -1,    33,    32,    89,    22,    23,
618        31,    33,    38,    37,    89,    21,    35,    26,    39,    22,        31,    19,    32,    22,    89,    26,    33,    30,    22,    -1,
619        35,    -1,    30,    26,    21,    26,    89,    26,    31,    33,        34,    23,    36,    37,    27,    37,    38,    23,    32,    38,
620        38,    37,    89,    33,    32,    35,    37,    -1,    30,    26,        -1,    19,    39,    22,    27,    33,    89,    33,    39,    38,
621        21,    26,    89,    26,    31,    33,    38,    37,    89,    20,        34,    39,    38,    89,    22,    23,    40,    27,    21,    23,
622        25,    18,    31,    31,    22,    29,    -1,    30,    26,    21,        89,    34,    19,    36,    19,    31,    23,    38,    23,    36,
623        26,    89,    26,    31,    33,    38,    37,    89,    37,    42,        -1,    19,    39,    22,    27,    33,    89,    33,    39,    38,
624        33,    22,    -1,    30,    26,    21,    26,    89,    26,    31,        34,    39,    38,    89,    22,    23,    40,    27,    21,    23,
625        33,    38,    37,    -1,    39,    32,    29,    38,    30,    22,        37,    -1,    19,    39,    22,    27,    33,    89,    33,    39,
626        -1,    19,    42,    37,    22,    36,    -1,    33,    22,    35,        38,    34,    39,    38,    89,    22,    23,    40,    27,    21,
627        20,    22,    31,    37,    18,    24,    22,    -1,    35,    22,        23,    -1,    19,    39,    22,    27,    33,    89,    33,    39,
628        36,    22,    37,    -1,    30,    26,    36,    20,    22,    29,        38,    34,    39,    38,    89,    22,    36,    27,    40,    23,
629        29,    18,    31,    22,    32,    38,    36,    -1,    22,    20,        36,    89,    34,    19,    36,    19,    31,    23,    38,    23,
630        25,    32,    -1,    34,    38,    26,    37,    -1        36,    -1,    19,    39,    22,    27,    33,    89,    33,    39,
631          38,    34,    39,    38,    89,    22,    36,    27,    40,    23,
632          36,    -1,    19,    39,    22,    27,    33,    89,    33,    39,
633          38,    34,    39,    38,    89,    21,    26,    19,    32,    32,
634          23,    30,    89,    34,    19,    36,    19,    31,    23,    38,
635          23,    36,    -1,    19,    39,    22,    27,    33,    89,    33,
636          39,    38,    34,    39,    38,    89,    21,    26,    19,    32,
637          32,    23,    30,    -1,    19,    39,    22,    27,    33,    89,
638          33,    39,    38,    34,    39,    38,    89,    38,    43,    34,
639          23,    -1,    19,    40,    19,    27,    30,    19,    20,    30,
640          23,    89,    31,    27,    22,    27,    89,    27,    32,    34,
641          39,    38,    89,    22,    36,    27,    40,    23,    36,    37,
642          -1,    31,    27,    22,    27,    89,    27,    32,    34,    39,
643          38,    89,    22,    23,    40,    27,    21,    23,    89,    34,
644          19,    36,    19,    31,    23,    38,    23,    36,    -1,    31,
645          27,    22,    27,    89,    27,    32,    34,    39,    38,    89,
646          34,    33,    36,    38,    89,    34,    19,    36,    19,    31,
647          23,    38,    23,    36,    -1,    31,    27,    22,    27,    89,
648          27,    32,    34,    39,    38,    89,    22,    23,    40,    27,
649          21,    23,    37,    -1,    31,    27,    22,    27,    89,    27,
650          32,    34,    39,    38,    89,    22,    23,    40,    27,    21,
651          23,    -1,    31,    27,    22,    27,    89,    27,    32,    34,
652          39,    38,    89,    22,    36,    27,    40,    23,    36,    89,
653          34,    19,    36,    19,    31,    23,    38,    23,    36,    -1,
654          31,    27,    22,    27,    89,    27,    32,    37,    38,    36,
655          39,    31,    23,    32,    38,    -1,    31,    27,    22,    27,
656          89,    27,    32,    37,    38,    36,    39,    31,    23,    32,
657          38,    37,    -1,    31,    27,    22,    27,    89,    27,    32,
658          37,    38,    36,    39,    31,    23,    32,    38,    89,    31,
659          19,    34,    -1,    31,    27,    22,    27,    89,    27,    32,
660          37,    38,    36,    39,    31,    23,    32,    38,    89,    31,
661          19,    34,    37,    -1,    31,    27,    22,    27,    89,    27,
662          32,    34,    39,    38,    89,    22,    36,    27,    40,    23,
663          36,    -1,    31,    27,    22,    27,    89,    27,    32,    34,
664          39,    38,    89,    34,    33,    36,    38,    -1,    31,    27,
665          22,    27,    89,    27,    32,    34,    39,    38,    89,    21,
666          26,    19,    32,    32,    23,    30,    -1,    31,    27,    22,
667          27,    89,    27,    32,    34,    39,    38,    89,    38,    43,
668          34,    23,    -1,    31,    27,    22,    27,    89,    27,    32,
669          34,    39,    38,    -1,    37,    23,    36,    40,    23,    36,
670          -1,    40,    33,    30,    39,    31,    23,    -1,    31,    39,
671          38,    23,    -1,    37,    33,    30,    33,    -1,    20,    43,
672          38,    23,    37,    -1,    34,    23,    36,    21,    23,    32,
673          38,    19,    25,    23,    -1,    36,    23,    37,    23,    38,
674          -1,    31,    27,    37,    21,    23,    30,    30,    19,    32,
675          23,    33,    39,    37,    -1,    32,    19,    31,    23,    -1,
676          23,    21,    26,    33,    -1,    35,    39,    27,    38,    -1
677  };  };
678    
679  /* YYRLINE[YYN] -- source line where rule number YYN was defined.  */  /* YYRLINE[YYN] -- source line where rule number YYN was defined.  */
680  static const unsigned short int yyrline[] =  static const yytype_uint16 yyrline[] =
681  {  {
682         0,    81,    81,    82,    85,    86,    87,    88,    91,    92,         0,    96,    96,    97,   100,   101,   102,   103,   106,   107,
683        93,    94,    95,    98,    99,   100,   101,   102,   103,   104,       108,   109,   110,   113,   114,   115,   116,   117,   118,   119,
684       105,   106,   107,   108,   109,   110,   111,   114,   115,   116,       120,   121,   122,   123,   124,   125,   126,   127,   128,   129,
685       117,   118,   119,   122,   123,   124,   125,   126,   127,   130,       132,   133,   134,   137,   138,   139,   140,   141,   142,   143,
686       131,   132,   133,   134,   135,   136,   137,   138,   139,   140,       146,   147,   148,   149,   150,   151,   152,   155,   156,   157,
687       141,   142,   143,   144,   145,   146,   147,   148,   149,   150,       158,   161,   164,   165,   166,   169,   170,   171,   172,   173,
688       151,   152,   155,   156,   157,   158,   159,   160,   163,   164,       174,   175,   176,   177,   178,   179,   180,   181,   182,   183,
689       165,   166,   169,   170,   173,   174,   177,   178,   179,   180,       184,   185,   186,   187,   188,   189,   190,   191,   192,   193,
690       181,   182,   183,   184,   185,   188,   189,   192,   193,   196,       194,   195,   196,   197,   198,   199,   202,   203,   204,   205,
691       197,   198,   201,   202,   205,   208,   211,   214,   217,   220,       206,   207,   208,   211,   212,   213,   214,   217,   220,   221,
692       221,   224,   227,   228,   231,   234,   237,   240,   243,   244,       224,   225,   228,   229,   232,   233,   234,   235,   236,   237,
693       245,   246,   252,   253,   256,   257,   260,   261,   262,   266,       238,   239,   240,   241,   242,   243,   244,   245,   248,   249,
694       267,   270,   271,   272,   273,   274,   275,   276,   277,   278,       252,   253,   256,   257,   258,   259,   260,   261,   262,   263,
695       279,   282,   283,   284,   285,   286,   287,   288,   289,   290,       264,   267,   268,   271,   274,   275,   276,   279,   282,   285,
696       291,   293,   293,   293,   293,   293,   293,   293,   293,   293,       288,   291,   292,   295,   298,   301,   304,   307,   308,   311,
697       293,   293,   293,   293,   293,   293,   293,   293,   293,   293,       314,   317,   320,   323,   326,   329,   330,   333,   334,   335,
698       293,   293,   293,   293,   293,   293,   293,   294,   294,   294,       336,   344,   345,   348,   349,   352,   353,   354,   358,   359,
699       294,   294,   294,   294,   294,   294,   294,   294,   294,   294,       362,   363,   364,   365,   366,   367,   368,   369,   370,   371,
700       294,   294,   294,   294,   294,   294,   294,   294,   294,   294,       374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
701       294,   294,   294,   295,   295,   295,   295,   295,   295,   295,       385,   385,   385,   385,   385,   385,   385,   385,   385,   385,
702       295,   295,   295,   296,   296,   296,   296,   296,   296,   296,       385,   385,   385,   385,   385,   385,   385,   385,   385,   385,
703       296,   296,   296,   296,   296,   296,   297,   297,   297,   297,       385,   385,   385,   385,   385,   385,   386,   386,   386,   386,
704       297,   297,   297,   298,   298,   298,   298,   298,   299,   299,       386,   386,   386,   386,   386,   386,   386,   386,   386,   386,
705       299,   299,   300,   300,   300,   301,   301,   301,   302,   302,       386,   386,   386,   386,   386,   386,   386,   386,   386,   386,
706       302,   303,   303,   303,   304,   304,   304,   305,   305,   305,       386,   386,   387,   387,   387,   387,   387,   387,   387,   387,
707       306,   306,   306,   307,   307,   307,   308,   308,   308,   309,       387,   387,   388,   388,   388,   388,   388,   388,   388,   388,
708       309,   309,   310,   310,   310,   311,   311,   311,   312,   312,       388,   388,   388,   388,   388,   389,   389,   389,   389,   389,
709       312,   313,   313,   313,   314,   314,   314,   315,   315,   315,       389,   389,   390,   390,   390,   390,   390,   391,   391,   391,
710       316,   316,   316,   317,   317,   317,   318,   318,   318,   319,       391,   392,   392,   392,   393,   393,   393,   394,   394,   394,
711       319,   319,   320,   320,   320,   321,   321,   321,   322,   322,       395,   395,   395,   396,   396,   396,   397,   397,   397,   398,
712       322,   323,   323,   323,   324,   324,   324,   325,   325,   325,       398,   398,   399,   399,   399,   400,   400,   400,   401,   401,
713       326,   326,   326,   327,   327,   327,   328,   328,   328,   329,       401,   402,   402,   402,   403,   403,   403,   404,   404,   404,
714       329,   329,   330,   330,   330,   331,   331,   331,   332,   332,       405,   405,   405,   406,   406,   406,   407,   407,   407,   408,
715       332,   333,   333,   333,   334,   334,   334,   335,   335,   335,       408,   408,   409,   409,   409,   410,   410,   410,   411,   411,
716       336,   336,   336,   337,   337,   337,   338,   338,   338,   339,       411,   412,   412,   412,   413,   413,   413,   414,   414,   414,
717       339,   339,   340,   340,   340,   341,   341,   341,   342,   342,       415,   415,   415,   416,   416,   416,   417,   417,   417,   418,
718       345,   346,   347,   348,   351,   352,   358,   361,   364,   367,       418,   418,   419,   419,   419,   420,   420,   420,   421,   421,
719       370,   373,   376,   379,   382,   385,   388,   391,   394,   397,       421,   422,   422,   422,   423,   423,   423,   424,   424,   424,
720       400,   403,   406,   409,   412,   415,   418,   421,   424,   427,       425,   425,   425,   426,   426,   426,   427,   427,   427,   428,
721       430,   433,   436,   439,   442,   445,   448,   451,   454,   457,       428,   428,   429,   429,   429,   430,   430,   430,   431,   431,
722       460,   463,   466,   469,   472,   475,   478,   481,   484,   487,       431,   432,   432,   432,   433,   433,   433,   434,   434,   437,
723       490,   493,   496,   499,   502,   505,   508,   511       438,   439,   440,   443,   444,   450,   453,   456,   459,   462,
724         465,   468,   471,   474,   477,   480,   483,   486,   489,   492,
725         495,   498,   501,   504,   507,   510,   513,   516,   519,   522,
726         525,   528,   531,   534,   537,   540,   543,   546,   549,   552,
727         555,   558,   561,   564,   567,   570,   573,   576,   579,   582,
728         585,   588,   591,   594,   597,   600,   603,   606,   609,   612,
729         615,   618,   621,   624,   627,   630,   633,   636,   639,   642,
730         645,   648,   651,   654,   657,   660,   663
731  };  };
732  #endif  #endif
733    
734  #if YYDEBUG || YYERROR_VERBOSE  #if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
735  /* YYTNME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.  /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
736     First, the terminals, then, starting at YYNTOKENS, nonterminals. */     First, the terminals, then, starting at YYNTOKENS, nonterminals.  */
737  static const char *const yytname[] =  static const char *const yytname[] =
738  {  {
739    "$end", "error", "$undefined", "'#'", "'='", "'.'", "'+'", "'-'", "'0'",    "$end", "error", "$undefined", "'#'", "'='", "','", "'.'", "'+'", "'-'",
740    "'1'", "'2'", "'3'", "'4'", "'5'", "'6'", "'7'", "'8'", "'9'", "'A'",    "'0'", "'1'", "'2'", "'3'", "'4'", "'5'", "'6'", "'7'", "'8'", "'9'",
741    "'B'", "'C'", "'D'", "'E'", "'F'", "'G'", "'H'", "'I'", "'J'", "'K'",    "'A'", "'B'", "'C'", "'D'", "'E'", "'F'", "'G'", "'H'", "'I'", "'J'",
742    "'L'", "'M'", "'N'", "'O'", "'P'", "'Q'", "'R'", "'S'", "'T'", "'U'",    "'K'", "'L'", "'M'", "'N'", "'O'", "'P'", "'Q'", "'R'", "'S'", "'T'",
743    "'V'", "'W'", "'X'", "'Y'", "'Z'", "'a'", "'b'", "'c'", "'d'", "'e'",    "'U'", "'V'", "'W'", "'X'", "'Y'", "'Z'", "'a'", "'b'", "'c'", "'d'",
744    "'f'", "'g'", "'h'", "'i'", "'j'", "'k'", "'l'", "'m'", "'n'", "'o'",    "'e'", "'f'", "'g'", "'h'", "'i'", "'j'", "'k'", "'l'", "'m'", "'n'",
745    "'p'", "'q'", "'r'", "'s'", "'t'", "'u'", "'v'", "'w'", "'x'", "'y'",    "'o'", "'p'", "'q'", "'r'", "'s'", "'t'", "'u'", "'v'", "'w'", "'x'",
746    "'z'", "'!'", "'$'", "'%'", "'&'", "'('", "')'", "'*'", "','", "'/'",    "'y'", "'z'", "'!'", "'$'", "'%'", "'&'", "'('", "')'", "'*'", "'/'",
747    "':'", "';'", "'<'", "'>'", "'?'", "'@'", "'['", "'\\\\'", "']'", "'^'",    "':'", "';'", "'<'", "'>'", "'?'", "'@'", "'['", "'\\\\'", "']'", "'^'",
748    "'_'", "'{'", "'|'", "'}'", "'~'", "'\\200'", "'\\201'", "'\\202'",    "'_'", "'{'", "'|'", "'}'", "'~'", "'\\200'", "'\\201'", "'\\202'",
749    "'\\203'", "'\\204'", "'\\205'", "'\\206'", "'\\207'", "'\\210'",    "'\\203'", "'\\204'", "'\\205'", "'\\206'", "'\\207'", "'\\210'",
750    "'\\211'", "'\\212'", "'\\213'", "'\\214'", "'\\215'", "'\\216'",    "'\\211'", "'\\212'", "'\\213'", "'\\214'", "'\\215'", "'\\216'",
751    "'\\217'", "'\\220'", "'\\221'", "'\\222'", "'\\223'", "'\\224'",    "'\\217'", "'\\220'", "'\\221'", "'\\222'", "'\\223'", "'\\224'",
752    "'\\225'", "'\\226'", "'\\227'", "'\\230'", "'\\231'", "'\\232'",    "'\\225'", "'\\226'", "'\\227'", "'\\230'", "'\\231'", "'\\232'",
753    "'\\233'", "'\\234'", "'\\235'", "'\\236'", "'\\237'", "' '", "'¡'",    "'\\233'", "'\\234'", "'\\235'", "'\\236'", "'\\237'", "'\\240'",
754    "'¢'", "'£'", "'¤'", "'¥'", "'¦'", "'§'", "'¨'", "'©'", "'ª'", "'«'",    "'\\241'", "'\\242'", "'\\243'", "'\\244'", "'\\245'", "'\\246'",
755    "'¬'", "'­'", "'®'", "'¯'", "'°'", "'±'", "'²'", "'³'", "'´'", "'µ'",    "'\\247'", "'\\250'", "'\\251'", "'\\252'", "'\\253'", "'\\254'",
756    "'¶'", "'·'", "'¸'", "'¹'", "'º'", "'»'", "'¼'", "'½'", "'¾'", "'¿'",    "'\\255'", "'\\256'", "'\\257'", "'\\260'", "'\\261'", "'\\262'",
757    "'À'", "'Á'", "'Â'", "'Ã'", "'Ä'", "'Å'", "'Æ'", "'Ç'", "'È'", "'É'",    "'\\263'", "'\\264'", "'\\265'", "'\\266'", "'\\267'", "'\\270'",
758    "'Ê'", "'Ë'", "'Ì'", "'Í'", "'Î'", "'Ï'", "'Ð'", "'Ñ'", "'Ò'", "'Ó'",    "'\\271'", "'\\272'", "'\\273'", "'\\274'", "'\\275'", "'\\276'",
759    "'Ô'", "'Õ'", "'Ö'", "'×'", "'Ø'", "'Ù'", "'Ú'", "'Û'", "'Ü'", "'Ý'",    "'\\277'", "'\\300'", "'\\301'", "'\\302'", "'\\303'", "'\\304'",
760    "'Þ'", "'ß'", "'à'", "'á'", "'â'", "'ã'", "'ä'", "'å'", "'æ'", "'ç'",    "'\\305'", "'\\306'", "'\\307'", "'\\310'", "'\\311'", "'\\312'",
761    "'è'", "'é'", "'ê'", "'ë'", "'ì'", "'í'", "'î'", "'ï'", "'ð'", "'ñ'",    "'\\313'", "'\\314'", "'\\315'", "'\\316'", "'\\317'", "'\\320'",
762    "'ò'", "'ó'", "'ô'", "'õ'", "'ö'", "'÷'", "'ø'", "'ù'", "'ú'", "'û'",    "'\\321'", "'\\322'", "'\\323'", "'\\324'", "'\\325'", "'\\326'",
763    "'ü'", "'ý'", "'þ'", "'ÿ'", "'''", "'\"'", "' '", "'\\n'", "'\\r'",    "'\\327'", "'\\330'", "'\\331'", "'\\332'", "'\\333'", "'\\334'",
764    "$accept", "input", "line", "comment", "command", "subscribe_event",    "'\\335'", "'\\336'", "'\\337'", "'\\340'", "'\\341'", "'\\342'",
765    "unsubscribe_event", "get_instruction", "set_instruction",    "'\\343'", "'\\344'", "'\\345'", "'\\346'", "'\\347'", "'\\350'",
766    "create_instruction", "destroy_instruction", "load_instruction",    "'\\351'", "'\\352'", "'\\353'", "'\\354'", "'\\355'", "'\\356'",
767    "set_chan_instruction", "key_val_list", "buffer_size_type",    "'\\357'", "'\\360'", "'\\361'", "'\\362'", "'\\363'", "'\\364'",
768    "list_instruction", "load_instr_args", "load_engine_args",    "'\\365'", "'\\366'", "'\\367'", "'\\370'", "'\\371'", "'\\372'",
769    "device_index", "audio_channel_index", "audio_output_type_name",    "'\\373'", "'\\374'", "'\\375'", "'\\376'", "'\\377'", "'''", "'\"'",
770    "midi_input_port_index", "midi_input_channel_index",    "' '", "'\\n'", "'\\r'", "$accept", "input", "line", "comment",
771    "midi_input_type_name", "volume_value", "sampler_channel",    "command", "add_instruction", "subscribe_event", "unsubscribe_event",
772    "instrument_index", "engine_name", "filename", "param_val", "boolean",    "map_instruction", "unmap_instruction", "remove_instruction",
773    "string", "dotnum", "digits", "digit", "number", "char", "text",    "get_instruction", "set_instruction", "create_instruction",
774    "stringval", "SP", "LF", "CR", "ADD", "GET", "CREATE", "DESTROY", "LIST",    "reset_instruction", "clear_instruction", "destroy_instruction",
775    "LOAD", "ALL", "NON_MODAL", "REMOVE", "SET", "SUBSCRIBE", "UNSUBSCRIBE",    "load_instruction", "set_chan_instruction", "key_val_list",
776    "SELECT", "CHANNEL", "AVAILABLE_ENGINES",    "buffer_size_type", "list_instruction", "load_instr_args",
777    "AVAILABLE_AUDIO_OUTPUT_DRIVERS", "CHANNELS", "INFO", "BUFFER_FILL",    "load_engine_args", "instr_load_mode", "device_index",
778    "STREAM_COUNT", "VOICE_COUNT", "INSTRUMENT", "ENGINE",    "audio_channel_index", "audio_output_type_name", "midi_input_port_index",
779      "midi_input_channel_index", "midi_input_type_name", "midi_map",
780      "midi_bank", "midi_prog", "volume_value", "sampler_channel",
781      "instrument_index", "engine_name", "filename", "map_name", "entry_name",
782      "param_val_list", "param_val", "boolean", "string", "dotnum", "digits",
783      "digit", "number", "char", "text", "stringval", "SP", "LF", "CR", "ADD",
784      "GET", "MAP", "UNMAP", "CLEAR", "CREATE", "DESTROY", "LIST", "LOAD",
785      "ALL", "NONE", "DEFAULT", "NON_MODAL", "REMOVE", "SET", "SUBSCRIBE",
786      "UNSUBSCRIBE", "SELECT", "CHANNEL", "AVAILABLE_ENGINES",
787      "AVAILABLE_AUDIO_OUTPUT_DRIVERS", "CHANNELS", "INFO", "CHANNEL_COUNT",
788      "CHANNEL_INFO", "BUFFER_FILL", "STREAM_COUNT", "VOICE_COUNT",
789      "TOTAL_VOICE_COUNT", "TOTAL_VOICE_COUNT_MAX", "INSTRUMENT", "ENGINE",
790      "ON_DEMAND", "ON_DEMAND_HOLD", "PERSISTENT",
791    "AUDIO_OUTPUT_DEVICE_PARAMETER", "AUDIO_OUTPUT_DEVICES",    "AUDIO_OUTPUT_DEVICE_PARAMETER", "AUDIO_OUTPUT_DEVICES",
792    "AUDIO_OUTPUT_DEVICE", "AUDIO_OUTPUT_DRIVER_PARAMETER",    "AUDIO_OUTPUT_DEVICE", "AUDIO_OUTPUT_DRIVER_PARAMETER",
793    "AUDIO_OUTPUT_DRIVER", "AUDIO_OUTPUT_CHANNEL_PARAMETER",    "AUDIO_OUTPUT_DRIVER", "AUDIO_OUTPUT_CHANNEL_PARAMETER",
794    "AUDIO_OUTPUT_CHANNEL", "AUDIO_OUTPUT_TYPE",    "AUDIO_OUTPUT_CHANNEL", "AUDIO_OUTPUT_TYPE",
795    "AVAILABLE_MIDI_INPUT_DRIVERS", "MIDI_INPUT_DEVICE_PARAMETER",    "AVAILABLE_MIDI_INPUT_DRIVERS", "MIDI_INPUT_DEVICE_PARAMETER",
796    "MIDI_INPUT_PORT_PARAMETER", "MIDI_INPUT_DEVICES", "MIDI_INPUT_DEVICE",    "MIDI_INPUT_PORT_PARAMETER", "MIDI_INPUT_DEVICES", "MIDI_INPUT_DEVICE",
797    "MIDI_INPUT_DRIVER_PARAMETER", "MIDI_INPUT_DRIVER", "MIDI_INPUT_PORT",    "MIDI_INPUT_DRIVER_PARAMETER", "MIDI_INSTRUMENT", "MIDI_INSTRUMENTS",
798    "MIDI_INPUT_CHANNEL", "MIDI_INPUT_TYPE", "MIDI_INPUT", "VOLUME", "BYTES",    "MIDI_INSTRUMENT_MAP", "MIDI_INSTRUMENT_MAPS", "MIDI_INPUT_DRIVER",
799    "PERCENTAGE", "RESET", "MISCELLANEOUS", "ECHO", "QUIT", 0    "MIDI_INPUT_PORT", "MIDI_INPUT_CHANNEL", "MIDI_INPUT_TYPE", "MIDI_INPUT",
800      "SERVER", "VOLUME", "MUTE", "SOLO", "BYTES", "PERCENTAGE", "RESET",
801      "MISCELLANEOUS", "NAME", "ECHO", "QUIT", 0
802  };  };
803  #endif  #endif
804    
805  # ifdef YYPRINT  # ifdef YYPRINT
806  /* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to  /* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to
807     token YYLEX-NUM.  */     token YYLEX-NUM.  */
808  static const unsigned short int yytoknum[] =  static const yytype_uint16 yytoknum[] =
809  {  {
810         0,   256,   257,    35,    61,    46,    43,    45,    48,    49,         0,   256,   257,    35,    61,    44,    46,    43,    45,    48,
811        50,    51,    52,    53,    54,    55,    56,    57,    65,    66,        49,    50,    51,    52,    53,    54,    55,    56,    57,    65,
812        67,    68,    69,    70,    71,    72,    73,    74,    75,    76,        66,    67,    68,    69,    70,    71,    72,    73,    74,    75,
813        77,    78,    79,    80,    81,    82,    83,    84,    85,    86,        76,    77,    78,    79,    80,    81,    82,    83,    84,    85,
814        87,    88,    89,    90,    97,    98,    99,   100,   101,   102,        86,    87,    88,    89,    90,    97,    98,    99,   100,   101,
815       103,   104,   105,   106,   107,   108,   109,   110,   111,   112,       102,   103,   104,   105,   106,   107,   108,   109,   110,   111,
816       113,   114,   115,   116,   117,   118,   119,   120,   121,   122,       112,   113,   114,   115,   116,   117,   118,   119,   120,   121,
817        33,    36,    37,    38,    40,    41,    42,    44,    47,    58,       122,    33,    36,    37,    38,    40,    41,    42,    47,    58,
818        59,    60,    62,    63,    64,    91,    92,    93,    94,    95,        59,    60,    62,    63,    64,    91,    92,    93,    94,    95,
819       123,   124,   125,   126,   128,   129,   130,   131,   132,   133,       123,   124,   125,   126,   128,   129,   130,   131,   132,   133,
820       134,   135,   136,   137,   138,   139,   140,   141,   142,   143,       134,   135,   136,   137,   138,   139,   140,   141,   142,   143,
# Line 632  static const unsigned short int yytoknum Line 834  static const unsigned short int yytoknum
834  # endif  # endif
835    
836  /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */  /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
837  static const unsigned short int yyr1[] =  static const yytype_uint16 yyr1[] =
838  {  {
839         0,   227,   228,   228,   229,   229,   229,   229,   230,   230,         0,   227,   228,   228,   229,   229,   229,   229,   230,   230,
840       230,   230,   230,   231,   231,   231,   231,   231,   231,   231,       230,   230,   230,   231,   231,   231,   231,   231,   231,   231,
841       231,   231,   231,   231,   231,   231,   231,   232,   232,   232,       231,   231,   231,   231,   231,   231,   231,   231,   231,   231,
842       232,   232,   232,   233,   233,   233,   233,   233,   233,   234,       232,   232,   232,   233,   233,   233,   233,   233,   233,   233,
843       234,   234,   234,   234,   234,   234,   234,   234,   234,   234,       234,   234,   234,   234,   234,   234,   234,   235,   235,   235,
844       234,   234,   234,   234,   234,   234,   234,   234,   234,   234,       235,   236,   237,   237,   237,   238,   238,   238,   238,   238,
845       234,   234,   235,   235,   235,   235,   235,   235,   236,   236,       238,   238,   238,   238,   238,   238,   238,   238,   238,   238,
846       236,   236,   237,   237,   238,   238,   239,   239,   239,   239,       238,   238,   238,   238,   238,   238,   238,   238,   238,   238,
847       239,   239,   239,   239,   239,   240,   240,   241,   241,   242,       238,   238,   238,   238,   238,   238,   239,   239,   239,   239,
848       242,   242,   243,   243,   244,   245,   246,   247,   248,   249,       239,   239,   239,   240,   240,   240,   240,   241,   242,   242,
849       249,   250,   251,   251,   252,   253,   254,   255,   256,   256,       243,   243,   244,   244,   245,   245,   245,   245,   245,   245,
850       256,   256,   257,   257,   258,   258,   259,   259,   259,   260,       245,   245,   245,   245,   245,   245,   245,   245,   246,   246,
851       260,   261,   261,   261,   261,   261,   261,   261,   261,   261,       247,   247,   248,   248,   248,   248,   248,   248,   248,   248,
852       261,   262,   262,   262,   262,   262,   262,   262,   262,   262,       248,   249,   249,   250,   251,   251,   251,   252,   253,   254,
853       262,   263,   263,   263,   263,   263,   263,   263,   263,   263,       255,   256,   256,   257,   258,   259,   260,   261,   261,   262,
854       263,   263,   263,   263,   263,   263,   263,   263,   263,   263,       263,   264,   265,   266,   267,   268,   268,   269,   269,   269,
855       263,   263,   263,   263,   263,   263,   263,   263,   263,   263,       269,   270,   270,   271,   271,   272,   272,   272,   273,   273,
856       263,   263,   263,   263,   263,   263,   263,   263,   263,   263,       274,   274,   274,   274,   274,   274,   274,   274,   274,   274,
857       263,   263,   263,   263,   263,   263,   263,   263,   263,   263,       275,   275,   275,   275,   275,   275,   275,   275,   275,   275,
858       263,   263,   263,   263,   263,   263,   263,   263,   263,   263,       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,
859       263,   263,   263,   263,   263,   263,   263,   263,   263,   263,       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,
860       263,   263,   263,   263,   263,   263,   263,   263,   263,   263,       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,
861       263,   263,   263,   263,   263,   263,   263,   263,   263,   263,       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,
862       263,   263,   263,   263,   263,   263,   263,   263,   263,   263,       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,
863       263,   263,   263,   263,   263,   263,   263,   263,   263,   263,       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,
864       263,   263,   263,   263,   263,   263,   263,   263,   263,   263,       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,
865       263,   263,   263,   263,   263,   263,   263,   263,   263,   263,       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,
866       263,   263,   263,   263,   263,   263,   263,   263,   263,   263,       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,
867       263,   263,   263,   263,   263,   263,   263,   263,   263,   263,       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,
868       263,   263,   263,   263,   263,   263,   263,   263,   263,   263,       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,
869       263,   263,   263,   263,   263,   263,   263,   263,   263,   263,       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,
870       263,   263,   263,   263,   263,   263,   263,   263,   263,   263,       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,
871       263,   263,   263,   263,   263,   263,   263,   263,   263,   263,       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,
872       263,   263,   263,   263,   263,   263,   263,   263,   263,   263,       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,
873       263,   263,   263,   263,   263,   263,   263,   263,   263,   263,       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,
874       263,   263,   263,   263,   263,   263,   263,   263,   263,   263,       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,
875       264,   264,   264,   264,   265,   265,   266,   267,   268,   269,       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,
876       270,   271,   272,   273,   274,   275,   276,   277,   278,   279,       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,
877       280,   281,   282,   283,   284,   285,   286,   287,   288,   289,       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,
878       290,   291,   292,   293,   294,   295,   296,   297,   298,   299,       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,
879       300,   301,   302,   303,   304,   305,   306,   307,   308,   309,       276,   276,   276,   276,   276,   276,   276,   276,   276,   277,
880       310,   311,   312,   313,   314,   315,   316,   317       277,   277,   277,   278,   278,   279,   280,   281,   282,   283,
881         284,   285,   286,   287,   288,   289,   290,   291,   292,   293,
882         294,   295,   296,   297,   298,   299,   300,   301,   302,   303,
883         304,   305,   306,   307,   308,   309,   310,   311,   312,   313,
884         314,   315,   316,   317,   318,   319,   320,   321,   322,   323,
885         324,   325,   326,   327,   328,   329,   330,   331,   332,   333,
886         334,   335,   336,   337,   338,   339,   340,   341,   342,   343,
887         344,   345,   346,   347,   348,   349,   350
888  };  };
889    
890  /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN.  */  /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN.  */
891  static const unsigned char yyr2[] =  static const yytype_uint8 yyr2[] =
892  {  {
893         0,     2,     2,     3,     0,     1,     1,     1,     1,     2,         0,     2,     2,     3,     0,     1,     1,     1,     1,     2,
894         2,     2,     2,     3,     3,     3,     3,     3,     3,     5,         2,     2,     2,     3,     3,     3,     3,     3,     3,     3,
895         3,     3,     3,     3,     5,     1,     1,     1,     1,     1,         3,     3,     3,     3,     3,     3,     3,     3,     1,     1,
896           1,     1,     3,     1,     1,     1,     1,     1,     1,     1,
897           1,     1,     1,     1,     1,     1,     1,    15,    17,    17,
898          19,     7,     3,     3,     3,     1,     1,     5,     7,     9,
899           1,     5,     7,     9,     1,     1,     5,     5,     7,     9,
900           7,     9,     1,     5,     7,     5,     5,     5,     3,     1,
901           1,     3,     3,     9,     1,     5,     7,     9,     7,     9,
902           3,     7,     3,     5,     3,     5,     3,     3,     3,     3,
903           3,     3,     3,     3,     5,     7,     5,     9,     5,     5,
904           5,     5,     5,     5,     5,     5,     5,     5,     3,     5,
905           1,     1,     1,     1,     1,     1,     1,     1,     3,     3,
906           1,     5,     7,     3,     1,     1,     1,     1,     1,     1,
907         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
908         1,     5,     7,     9,     1,     5,     7,     9,     1,     1,         1,     1,     1,     1,     1,     1,     3,     1,     1,     1,
909         5,     5,     7,     9,     7,     9,     1,     5,     7,     5,         1,     1,     1,     1,     2,     3,     4,     4,     1,     2,
        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,     5,     7,     3,     1,     1,     1,     1,     1,  
910         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
911         1,     1,     1,     1,     1,     2,     3,     4,     4,     1,         1,     2,     2,     2,     2,     2,     2,     2,     2,     2,
        2,     1,     1,     1,     1,     1,     1,     1,     1,     1,  
        1,     1,     2,     2,     2,     2,     2,     2,     2,     2,  
        2,     1,     1,     1,     1,     1,     1,     1,     1,     1,  
912         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
913         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
914         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
# Line 717  static const unsigned char yyr2[] = Line 930  static const unsigned char yyr2[] =
930         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
931         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
932         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
933         1,     1,     2,     2,     3,     3,     1,     1,     1,     3,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
934         3,     6,     7,     4,     4,     3,     9,     6,     3,     9,         1,     2,     2,     3,     3,     1,     1,     1,     3,     3,
935        11,     6,     7,    17,    30,     8,     4,    11,    12,    11,         3,     5,     5,     6,     7,     4,     4,     3,     4,     7,
936        10,     6,    29,    20,    19,    29,    19,    30,    20,    17,         9,     6,     3,     9,    11,     6,     7,    17,    30,     8,
937        28,    27,    25,    18,    17,    27,    17,    15,    18,    15,         4,    13,    12,    11,    12,    11,    17,    21,    10,     6,
938        10,     6,     5,    10,     5,    13,     4,     4         9,    14,    10,    29,    20,    19,    29,    19,    30,    20,
939          17,    28,    27,    25,    18,    17,    27,    15,    16,    19,
940          20,    17,    15,    18,    15,    10,     6,     6,     4,     4,
941           5,    10,     5,    13,     4,     4,     4
942  };  };
943    
944  /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state  /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
945     STATE-NUM when YYTABLE doesn't specify something else to do.  Zero     STATE-NUM when YYTABLE doesn't specify something else to do.  Zero
946     means the default is an error.  */     means the default is an error.  */
947  static const unsigned short int yydefact[] =  static const yytype_uint16 yydefact[] =
948  {  {
949         0,     7,     8,     0,     0,     0,     0,     0,     0,     0,         0,     7,     8,     0,     0,     0,     0,     0,     0,     0,
950         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,  
951         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
952         1,   367,   368,     2,     0,     9,   219,   213,   211,   212,         0,    28,    29,     0,     0,     0,     0,     0,     0,     0,
953       121,   122,   123,   124,   125,   126,   127,   128,   129,   130,         0,     0,     0,     0,     0,     0,     1,   416,   417,     2,
954       141,   142,   143,   144,   145,   146,   147,   148,   149,   150,         0,     9,   268,   263,   262,   260,   261,   170,   171,   172,
955       151,   152,   153,   154,   155,   156,   157,   158,   159,   160,       173,   174,   175,   176,   177,   178,   179,   190,   191,   192,
956       161,   162,   163,   164,   165,   166,   167,   168,   169,   170,       193,   194,   195,   196,   197,   198,   199,   200,   201,   202,
957       171,   172,   173,   174,   175,   176,   177,   178,   179,   180,       203,   204,   205,   206,   207,   208,   209,   210,   211,   212,
958       181,   182,   183,   184,   185,   186,   187,   188,   189,   190,       213,   214,   215,   216,   217,   218,   219,   220,   221,   222,
959       191,   192,   203,   205,   206,   207,   208,   209,   210,   214,       223,   224,   225,   226,   227,   228,   229,   230,   231,   232,
960       215,   216,   217,   218,   220,   221,   222,   223,   224,   225,       233,   234,   235,   236,   237,   238,   239,   240,   241,   252,
961       226,   227,   228,   229,   230,   231,   232,   233,   234,   235,       254,   255,   256,   257,   258,   259,   264,   265,   266,   267,
962       236,   237,   238,   239,   240,   241,   242,   243,   244,   245,       269,   270,   271,   272,   273,   274,   275,   276,   277,   278,
963       246,   247,   248,   249,   250,   251,   252,   253,   254,   255,       279,   280,   281,   282,   283,   284,   285,   286,   287,   288,
964       256,   257,   258,   259,   260,   261,   262,   263,   264,   265,       289,   290,   291,   292,   293,   294,   295,   296,   297,   298,
965       266,   267,   268,   269,   270,   271,   272,   273,   274,   275,       299,   300,   301,   302,   303,   304,   305,   306,   307,   308,
966       276,   277,   278,   279,   280,   281,   282,   283,   284,   285,       309,   310,   311,   312,   313,   314,   315,   316,   317,   318,
967       286,   287,   288,   289,   290,   291,   292,   293,   294,   295,       319,   320,   321,   322,   323,   324,   325,   326,   327,   328,
968       296,   297,   298,   299,   300,   301,   302,   303,   304,   305,       329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
969       306,   307,   308,   309,   310,   311,   312,   313,   314,   315,       339,   340,   341,   342,   343,   344,   345,   346,   347,   348,
970       316,   317,   318,   319,   320,   321,   322,   323,   324,   325,       349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
971       326,   327,   328,   329,   330,   331,   332,   333,   334,   335,       359,   360,   361,   362,   363,   364,   365,   366,   367,   368,
972       336,   337,   338,   339,   340,   341,   342,   343,   344,   345,       369,   370,   371,   372,   373,   374,   375,   376,   377,   378,
973       346,   347,   348,   349,   350,   351,   352,   353,   354,   355,       379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
974       356,   357,   358,   359,   366,    12,   131,    11,   114,    10,       389,   390,   391,   392,   393,   394,   395,   396,   397,   398,
975         399,   400,   401,   402,   403,   404,   405,   406,   407,   408,
976         415,    12,   180,    11,   163,    10,     0,     0,     0,     0,
977           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
978           0,   418,     0,     0,     0,   419,     0,     0,   420,     0,
979           0,     0,     0,   432,     0,     0,     0,     3,   170,   171,
980         172,   173,   174,   175,   176,   177,   178,   179,   181,   168,
981         182,   183,   184,   185,   186,   187,   188,   189,   253,   242,
982         243,   244,   245,   246,   247,   248,   249,   250,   251,   164,
983           0,     0,    13,    30,    31,     0,     0,     0,     0,     0,
984           0,    16,     0,    55,    60,    72,    79,    80,     0,    64,
985           0,     0,     0,     0,     0,    56,     0,    65,     0,     0,
986           0,     0,     0,    84,     0,     0,     0,     0,    14,     0,
987          15,     0,     0,    27,     0,     0,     0,    17,     0,     0,
988          18,     0,     0,     0,     0,     0,    19,   125,   127,   124,
989         122,   126,   123,     0,   130,     0,    20,     0,     0,    21,
990           0,     0,     0,     0,     0,    22,     0,     0,     0,     0,
991           0,     0,     0,     0,     0,     0,     0,     0,     0,    23,
992          33,    37,    36,    35,    34,    39,    38,    24,    40,    44,
993          43,    42,    41,    46,    45,   410,    25,   409,    26,     0,
994           0,     0,     0,   425,   426,   486,     0,     0,     0,     0,
995           0,     0,   169,     0,     0,     0,     0,     0,     0,     0,
996           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
997           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
998           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
999           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1000           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1001           0,     0,     0,     0,     0,   412,   411,     0,   422,     0,
1002           0,     0,   482,     0,     0,   421,     0,     0,     0,     0,
1003           0,    32,   153,     0,     0,     0,     0,     0,     0,     0,
1004           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1005           0,     0,     0,     0,     0,   171,   172,   173,   174,   175,
1006         176,   177,   178,   179,     0,    81,   144,    82,     0,     0,
1007           0,    78,     0,     0,     0,     0,    98,    99,     0,     0,
1008          94,    96,   100,   101,     0,     0,     0,   128,   129,     0,
1009           0,   102,     0,   152,     0,   103,     0,   151,    52,   149,
1010          53,    54,     0,     0,     0,     0,     0,     0,     0,    90,
1011           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1012           0,     0,     0,     0,     0,     0,     0,     0,    92,   162,
1013         161,     0,     0,     0,     0,     0,     0,    97,   423,     0,
1014         431,   435,     0,     0,     0,     0,     0,     0,     0,     0,
1015         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,   369,     0,     0,   370,     0,     0,     0,     0,  
        0,     0,   378,     0,     0,     3,   121,   122,   123,   124,  
      125,   126,   127,   128,   129,   130,   132,   119,   133,   134,  
      135,   136,   137,   138,   139,   140,   204,   193,   194,   195,  
      196,   197,   198,   199,   200,   201,   202,   115,     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,    91,    89,    90,     0,    18,  
        0,     0,     0,     0,     0,     0,    20,     0,     0,     0,  
        0,     0,     0,     0,     0,     0,     0,     0,    21,    27,  
       31,    30,    29,    28,    32,    22,    33,    37,    36,    35,  
       34,    38,   361,    23,   360,     0,     0,     0,   373,   374,  
      417,     0,     0,     0,     0,     0,   120,     0,     0,     0,  
1016         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1017         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1018         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1019           0,   485,     0,     0,     0,     0,     0,     0,     0,     0,
1020         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,   363,   362,     0,     0,     0,     0,   414,     0,  
1021         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1022           0,     0,   424,     0,     0,     0,     0,   413,   414,     0,
1023           0,     0,     0,     0,     0,     0,     0,    73,     0,     0,
1024           0,   120,   121,    75,    76,    77,    66,     0,    61,     0,
1025           0,     0,    67,     0,     0,   427,    85,    57,     0,     0,
1026           0,   145,     0,     0,     0,     0,    93,     0,    95,     0,
1027           0,     0,     0,     0,     0,   150,     0,   133,     0,     0,
1028         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,   122,   123,   124,  
      125,   126,   127,   128,   129,   130,    72,    73,     0,     0,  
        0,     0,     0,     0,     0,    74,     0,   107,     0,    75,  
        0,   106,    19,   104,     0,     0,     0,     0,     0,     0,  
       66,     0,     0,     0,     0,     0,     0,     0,     0,     0,  
        0,     0,     0,     0,    67,   113,   112,     0,     0,     0,  
        0,     0,    24,   371,     0,   377,   381,     0,     0,     0,  
1029         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1030         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1031           0,     0,     0,     0,     0,     0,   449,     0,   476,     0,
1032         440,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1033         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,   416,     0,     0,     0,     0,  
1034         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1035         0,     0,     0,     0,   386,     0,     0,     0,   372,     0,       478,   479,     0,     0,     0,     0,     0,     0,     0,     0,
1036         0,     0,     0,     0,     0,     0,     0,    57,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,   484,
1037         0,    87,    88,    59,    60,    61,    50,     0,    45,     0,         0,     0,     0,     0,     0,     0,     0,   433,     0,   436,
1038         0,     0,    51,     0,    41,     0,     0,     0,    68,     0,         0,     0,     0,   436,     0,     0,     0,     0,    74,    62,
1039        70,     0,     0,     0,     0,     0,   364,   365,     0,   105,         0,    70,     0,    58,     0,    68,     0,     0,   146,    51,
1040         0,    94,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,   260,   261,   118,   155,   157,   160,
1041           0,   168,   159,   158,     0,     0,     0,     0,     0,   131,
1042           0,     0,     0,     0,     0,     0,   104,   137,     0,   138,
1043         106,   139,   108,     0,     0,   115,   116,   117,   109,   140,
1044         110,   141,   142,   111,   143,     0,     0,     0,   112,   147,
1045         148,   113,   114,    86,     0,    88,     0,    91,     0,     0,
1046           0,     0,     0,     0,     0,     0,     0,     0,   439,     0,
1047         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1048         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1049       391,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,   477,
1050         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1051           0,     0,   434,     0,     0,     0,     0,     0,     0,   480,
1052           0,    63,    71,    69,    59,    83,     0,     0,     0,     0,
1053           0,   119,     0,     0,   156,   165,     0,     0,     0,     0,
1054           0,   132,     0,     0,     0,     0,   105,     0,     0,     0,
1055          87,    89,     0,     0,     0,     0,     0,     0,     0,     0,
1056         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1057           0,   166,   167,     0,     0,     0,   448,     0,     0,     0,
1058           0,     0,     0,   428,     0,     0,     0,     0,     0,     0,
1059         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1060         0,     0,     0,     0,   379,     0,   382,     0,     0,   382,         0,     0,     0,     0,     0,     0,     0,     0,     0,   430,
1061         0,     0,     0,    58,    46,     0,    54,     0,    42,    52,         0,     0,     0,     0,     0,   107,   443,     0,     0,     0,
1062         0,     0,     0,   211,   212,    85,   108,   111,     0,   119,         0,     0,   445,     0,     0,     0,     0,     0,     0,     0,
      110,   109,     0,     0,     0,     0,     0,    92,     0,     0,  
        0,     0,     0,     0,    76,    95,     0,    96,    78,    97,  
       80,    81,    98,     0,    82,    99,   100,    83,   101,     0,  
        0,     0,    84,   102,   103,    62,     0,    64,     0,     0,  
        0,     0,     0,     0,     0,     0,   385,     0,     0,     0,  
1063         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1064         0,     0,     0,     0,     0,     0,     0,     0,     0,   411,         0,     0,     0,     0,     0,   475,     0,     0,   442,     0,
1065         0,     0,     0,     0,     0,     0,     0,     0,     0,   380,       444,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,     0,   412,     0,    47,    55,    53,    43,     0,  
        0,    86,     0,     0,   116,     0,     0,     0,     0,    93,  
        0,     0,     0,     0,    77,   375,     0,    63,    65,     0,  
        0,     0,     0,     0,     0,     0,     0,     0,     0,   117,  
      118,     0,     0,   390,     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,
1067         0,     0,     0,     0,   376,     0,     0,     0,     0,    79,         0,     0,     0,     0,     0,     0,   429,   441,   483,     0,
      387,     0,     0,   389,     0,     0,     0,     0,     0,     0,  
        0,     0,     0,     0,     0,     0,     0,     0,     0,   410,  
        0,   388,     0,     0,     0,     0,     0,     0,     0,     0,  
        0,     0,     0,     0,     0,     0,     0,     0,     0,   415,  
        0,     0,     0,     0,     0,     0,     0,     0,   413,     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,     0,     0,     0,     0,   407,         0,   481,     0,     0,     0,     0,     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,   472,   467,
1072           0,   467,    47,     0,     0,     0,     0,     0,     0,     0,
1073         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1074           0,     0,     0,     0,     0,     0,     0,     0,   468,     0,
1075         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,   383,     0,   404,  
      406,     0,     0,   404,     0,     0,     0,     0,     0,     0,  
        0,     0,   407,   409,     0,     0,     0,     0,     0,   403,  
1076         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1077         0,   394,   396,     0,     0,     0,     0,   394,     0,     0,         0,   437,     0,   465,   471,     0,     0,   446,     0,     0,
1078         0,     0,     0,   399,     0,   398,   393,     0,     0,     0,        48,    49,   154,   134,   135,   136,     0,   465,     0,     0,
1079         0,     0,     0,     0,     0,     0,   408,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,   472,   474,   446,
1080           0,     0,     0,     0,     0,     0,   464,     0,     0,     0,
1081         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1082         0,     0,     0,     0,   398,     0,     0,     0,     0,     0,         0,     0,     0,   469,     0,   455,   457,     0,     0,     0,
1083           0,   469,     0,     0,     0,    50,   455,     0,     0,     0,
1084           0,     0,     0,   460,     0,   459,   454,     0,     0,     0,
1085           0,     0,   470,     0,     0,     0,     0,     0,     0,     0,
1086         473,     0,     0,     0,     0,     0,     0,   447,     0,     0,
1087         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1088         0,     0,     0,     0,     0,     0,   402,     0,     0,     0,         0,     0,     0,   459,     0,     0,     0,     0,     0,     0,
1089         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1090       405,     0,   401,     0,     0,     0,   400,     0,     0,   395,         0,     0,     0,     0,     0,     0,     0,     0,     0,   463,
1091         0,   392,   397,   384       450,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1092         452,     0,     0,     0,     0,     0,     0,   466,     0,     0,
1093         462,     0,     0,     0,   461,     0,     0,     0,   456,     0,
1094           0,   453,   458,   438,   451
1095  };  };
1096    
1097  /* YYDEFGOTO[NTERM-NUM]. */  /* YYDEFGOTO[NTERM-NUM].  */
1098  static const short int yydefgoto[] =  static const yytype_int16 yydefgoto[] =
1099  {  {
1100        -1,    12,    13,    14,    15,   388,   395,   334,   376,   355,        -1,    13,    14,    15,    16,   342,   429,   437,   378,   380,
1101       358,   369,   530,   648,   630,   364,   515,   519,   774,   776,       409,   351,   415,   387,   448,   383,   390,   406,   619,   776,
1102       778,   781,   784,   787,   792,   522,   658,   520,   516,   755,       750,   396,   601,   605,  1290,   936,   938,   940,   948,   950,
1103       544,   756,   757,   758,   266,   523,   268,   403,   761,   703,       953,   575,   770,   907,   958,   608,   784,   606,   602,   541,
1104        43,    44,    16,    17,    18,    19,    20,    21,   786,   518,      1291,   916,   917,   638,   918,   919,   920,   272,   609,   274,
1105        22,    23,    24,    25,    26,   329,   336,   337,   338,   390,       446,   923,   847,    49,    50,    17,    18,    19,    20,    21,
1106       391,   392,   393,   370,   339,   378,   340,   341,   342,   343,        22,    23,    24,    25,   952,   946,   947,   604,    26,    27,
1107       344,   345,   533,   346,   380,   347,   348,   349,   350,   351,        28,    29,    30,   343,   353,   354,   355,   551,   430,   431,
1108       352,   536,   537,   538,   539,   631,   632,    27,   394,   382,       432,   433,   434,   356,   357,   407,   358,  1293,  1294,  1295,
1109        28       417,   359,   360,   361,   362,   363,   364,   622,   365,   419,
1110         366,   367,   368,   369,   370,   371,   344,   373,   374,   375,
1111         626,   627,   628,   376,   629,   630,   631,   751,   752,    31,
1112         436,   637,   422,    32
1113  };  };
1114    
1115  /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing  /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
1116     STATE-NUM.  */     STATE-NUM.  */
1117  #define YYPACT_NINF -705  #define YYPACT_NINF -841
1118  static const short int yypact[] =  static const yytype_int16 yypact[] =
1119  {  {
1120        55,  -705,  -705,    12,    25,    33,    80,    31,    39,    82,        64,  -841,  -841,    52,   167,    92,   120,   177,   126,   132,
1121         1,   101,   109,  -173,  1578,  -705,   -64,   -64,   -64,   -64,       189,    59,   168,   228,    37,  1863,  -841,    16,    16,    16,
1122       -64,   -64,   -64,   -64,   -64,   -64,   -64,   -64,  -705,   182,        16,    16,    16,    16,    16,    16,    16,    16,    16,    16,
1123       171,   194,   207,   209,   228,   221,    97,    -1,   252,   234,        16,    16,  -841,   243,   237,   252,   274,   242,   275,   298,
1124      -705,  -705,  -705,  -705,    47,  -705,  -705,  -705,  -705,  -705,       296,   304,   178,   137,   312,   198,  -841,  -841,  -841,  -841,
1125      -705,   241,   241,   241,   241,   241,   241,   241,   241,   241,       108,  -841,  -841,  -841,  -841,  -841,  -841,  -841,   238,   238,
1126      -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,       238,   238,   238,   238,   238,   238,   238,  -841,  -841,  -841,
1127      -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1128      -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1129      -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1130      -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1131      -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1132      -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1133      -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1134      -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1135      -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1136      -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1137      -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1138      -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1139      -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1140      -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1141      -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1142      -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1143      -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1144      -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1145      -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1146      -705,  -705,  -705,  -705,  -705,  2243,  -705,  -705,  -705,  -705,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1147       253,     7,    78,    78,    65,   200,   253,   106,    62,    62,      -841,  2528,  -841,  -841,  -841,  -841,   117,   109,   303,   303,
1148      1800,   253,  -705,   256,   238,  -705,   239,   257,   240,   247,       305,   100,   100,   174,    70,   117,   147,   104,   104,  2085,
1149       260,   261,  -705,   248,   249,  -705,  -705,  -705,  -705,  -705,       314,  -841,   319,   320,   302,  -841,   306,   330,  -841,   327,
1150      -705,  -705,  -705,  -705,  -705,  -705,   241,  -705,   241,   241,       309,   335,   344,  -841,   331,   351,   332,  -841,  -841,  -841,
1151       241,   241,   241,   241,   241,   241,  -705,  -705,  -705,  -705,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,   238,  -841,
1152      -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,   263,  -705,       238,   238,   238,   238,   238,   238,   238,   238,  -841,  -841,
1153        96,   264,   254,   265,  -705,   -64,  -705,  -705,  -705,   -64,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1154      -705,   -64,   -64,   -64,   -64,   -64,  -705,   -64,  -705,   -64,       346,   348,  -841,  -841,    16,   229,   363,   358,   364,   371,
1155       -64,   -64,   -64,   255,   266,  -705,   -64,   -64,  -705,   -64,       365,  -841,    16,  -841,  -841,  -841,  -841,  -841,    16,  -841,
1156       -64,   259,   269,   280,  -705,  -705,  -705,  -705,   276,  -705,        16,    16,    16,    16,    16,  -841,    16,  -841,    16,    16,
1157       -64,   -64,   -64,   270,   275,   283,  -705,   -64,   -64,   -64,        16,    16,    16,  -841,    16,    16,    16,   372,  -841,    16,
1158       -64,   -64,   -64,   272,   281,   285,   278,   258,  -705,  -705,      -841,    16,   373,  -841,    16,   370,   381,  -841,    16,    16,
1159      -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,      -841,    16,    16,   231,   384,   385,  -841,  -841,  -841,  -841,
1160      -705,  -705,  2243,  1800,  -705,   -64,   279,   282,  -705,  -705,      -841,  -841,  -841,    16,  -841,   379,  -841,    16,    16,  -841,
1161      -705,   274,   284,   294,   298,   267,  -705,   301,   299,   304,        16,    16,   374,   393,   388,  -841,    16,    16,    16,    16,
1162       305,   302,   306,    61,   303,   303,   303,   303,   303,   303,        16,    16,    16,   377,   391,   405,   395,   402,   403,  -841,
1163       303,   303,   303,   303,   303,   314,   321,  2243,  2243,   251,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1164       251,   322,   307,   326,   308,   -27,  2243,   251,   329,   327,      -841,  -841,  -841,  -841,  -841,  2528,  2085,  -841,  -841,    16,
1165       330,    20,   251,   251,   251,   251,  2462,   331,   332,   317,       401,   400,   404,  -841,  -841,  -841,   399,   406,   420,   421,
1166       328,   338,  2243,  -705,   251,   334,   325,   336,  -705,   335,       411,   439,  -841,   441,   436,    55,   440,   442,   444,   443,
1167       339,   337,   344,   350,   351,   347,   353,   354,   -64,   -64,       445,   428,   427,    50,   446,   446,   446,   446,   446,   446,
1168       -64,   -64,   -64,   -64,   -64,   -64,   -64,   -64,   -64,   -64,       446,   446,   446,   446,   438,   446,   446,   446,   446,   447,
1169       -64,   -64,   -64,   355,   356,  1800,  1800,   241,   241,   241,       369,   369,   449,   438,   450,   452,  2528,  2528,   369,   369,
1170       241,   241,   241,   241,   241,   241,  -705,  -705,   357,   358,       453,   459,   458,   438,   429,    11,  2528,   369,   438,   460,
1171       359,   349,   333,  1800,  1800,  -705,   -64,  -705,   -64,  -705,       455,   461,    83,   369,   369,   369,   369,   454,  2747,   463,
1172       -64,  2243,  -705,  -705,   361,   352,   362,   360,   364,   363,       469,   456,   462,   457,   464,  2528,  -841,   369,  -841,   467,
1173      -705,   -64,   -64,   -64,   -64,   -64,   -64,   -64,   -64,   -64,       470,   473,  -841,   468,   471,  -841,   472,   465,   478,  2085,
1174       -64,   -64,   -64,   -64,  -705,  2243,  -705,   368,   365,   373,      2085,  -841,  -841,   481,   483,   479,   486,   487,   475,   497,
1175       374,   379,  -705,  -705,   366,  -705,  -705,   375,   380,   371,       485,    16,    16,    16,    16,    16,    16,    16,    16,    16,
1176       372,   376,   378,   381,   318,   251,    21,   251,   251,  2243,        16,    16,    16,    16,    16,   238,   238,   238,   238,   238,
1177       251,  2243,  2243,   251,   251,   251,   251,  2243,  2243,   251,       238,   238,   238,   238,   488,  -841,  -841,  -841,    16,    16,
1178       382,   324,  2243,  2243,   383,   385,   340,   384,   386,  1134,        16,  -841,   492,    16,    16,   493,  -841,  -841,   494,   495,
1179      1356,   251,   -44,   251,   388,  -705,   341,   389,   390,   377,      2085,  2085,  -841,  -841,   496,   503,   523,  -841,  -841,   513,
1180       251,   251,   251,   251,   251,   251,   251,   251,   251,  2243,       528,  -841,    16,  -841,    16,  -841,    16,  2528,  -841,  -841,
1181       251,  2243,   251,   396,  -705,   399,   404,   401,  -705,   405,      -841,  -841,   535,   533,   540,   531,   110,   538,   539,  -841,
1182       392,   406,   342,   414,   411,   412,   409,  -705,   394,   415,        16,    16,    16,    16,    16,    16,    16,    16,    16,    16,
1183       -64,  -705,  -705,  -705,  -705,  -705,  -705,  1800,  2243,   -64,        16,    16,    16,    16,    16,    16,   554,    16,  -841,  2528,
1184       -64,   -64,  -705,  1800,  2243,   -64,   367,   417,   -64,  2681,      -841,   550,   545,   558,   557,   562,   561,  -841,  -841,   541,
1185       -64,   369,   422,   419,   408,   370,  -705,  -705,   -64,  -705,      -841,  -841,   556,   564,   560,   499,  1419,  1641,   553,   563,
1186       -64,  -705,   393,   421,   423,   424,   410,   -64,   -64,   -64,       565,   566,   501,   571,   569,   572,   369,   102,   369,   369,
1187       -64,   -64,   -64,   -64,   -64,   -64,  2900,   -64,  3119,   -64,      2528,   369,  2528,  2528,   369,   369,   369,   369,  2528,   369,
1188       416,   425,   427,   397,   430,   429,   431,   432,   434,   433,       570,   369,  2528,   369,   506,   369,   369,   512,   588,   514,
1189      -705,   435,   426,   448,   251,  2243,   251,   251,   251,  2243,      2528,  2528,   590,   592,   515,   589,   594,   369,    55,   369,
1190       251,   464,   466,  2243,  2022,   467,   436,   469,   468,   471,       595,  -841,   542,   580,   605,   591,   600,   602,   369,   369,
1191       251,   251,   472,   475,   476,   444,   489,   251,   251,  2243,       369,   369,   369,   369,   369,   369,   369,   369,   369,   369,
1192       251,   251,   225,  2243,   251,   201,  2022,  2243,  2022,  2243,      2528,   369,  2528,   369,   603,   369,   610,   604,   612,   618,
1193       445,   506,   447,   441,  -705,   518,  -705,   500,   510,   504,       608,   616,  -841,   623,   609,   621,   619,  -841,  -841,   559,
1194       508,   521,   524,  -705,  1800,   -64,  -705,   -64,  1800,  -705,       628,   626,   627,   624,   617,   567,   622,  -841,   611,   629,
1195       507,   513,  3338,   241,   241,  -705,  2243,  -705,   105,   -34,        16,  -841,  -841,  -841,  -841,  -841,  -841,  2085,  2528,    16,
1196      -705,  -705,   509,   504,   515,   527,   519,  -705,   -64,   512,        16,    16,  -841,  2085,    16,  -841,  -841,  2528,    16,   631,
1197       520,   463,   528,   533,  -705,  -705,   -64,  -705,  -705,  2243,        16,  -841,    16,   632,   575,   639,    16,  2966,    16,   579,
1198      -705,  -705,  -705,   529,  -705,  -705,  -705,  -705,  2243,   -64,       647,   646,   635,   586,    16,  -841,    16,  -841,   587,   650,
1199       241,   241,  -705,  -705,  -705,  -705,  3557,  -705,  3776,   534,       651,   652,   657,   648,   643,    16,    16,    16,    16,    16,
1200       545,   544,   535,   546,   532,   548,  -705,   536,   530,   549,        16,    16,    16,    16,    16,    16,    16,  3185,    16,  3404,
1201      2243,  2243,  2243,  2243,   538,   542,  2022,   142,   172,   241,        16,   661,    16,   649,   663,   658,   656,   601,   606,   666,
1202       539,   543,   541,   552,   251,   547,   550,   551,   554,  -705,       664,   662,   665,   660,   674,   668,  -841,   667,  -841,   670,
1203       251,   553,   251,  2022,  2022,   560,   556,   557,   555,  -705,      -841,   675,   669,   369,  2528,   369,   369,   369,  2528,   369,
1204       558,   501,   562,  -705,   561,   -64,  2243,  2243,   -64,   564,       369,   671,   369,   369,   672,   673,   676,  2528,  2307,   679,
1205       563,  -705,   241,   241,   241,   568,   565,   567,   576,  -705,       684,   683,   685,   686,   369,   369,   688,   687,   689,   607,
1206       572,   569,   570,   574,  -705,  -705,   -64,  -705,  -705,   566,      -841,  -841,   692,   369,   369,  2528,   369,    95,   369,   438,
1207       587,   573,   579,   575,   176,   523,   577,   578,   526,   241,      2528,   369,   412,  2747,  2747,  2307,  2528,  2307,  2528,  -841,
1208       241,   580,   531,  -705,   588,   583,   559,   585,   586,   225,        55,   613,   694,   695,   637,   678,   680,  -841,   707,  -841,
1209       594,   593,   596,   598,   599,   595,   600,   611,    90,   620,       691,   690,   700,   696,   135,   698,   677,   711,  -841,  2085,
1210       602,   619,   604,   621,  -705,   606,   104,   612,   607,  -705,        16,  -841,    16,  2085,    16,  -841,   697,    16,  -841,  -841,
1211      -705,   608,   613,  -705,   581,   630,   628,   632,    64,   622,       699,   701,   703,  3623,   238,   238,   733,  -841,  2528,  -841,
1212       631,   582,   643,   584,   645,   589,   647,   640,   636,   591,       173,    33,  -841,  -841,   702,   696,   162,   716,   710,  -841,
1213       639,  -705,   128,   650,   651,   655,   646,   661,   653,   667,        16,   708,   202,   681,   723,   728,  -841,  -841,    16,  -841,
1214       670,   654,   671,   656,   181,   657,   663,   662,    41,  -705,      -841,  2528,  -841,   731,   725,  -841,  -841,  -841,  -841,  -841,
1215       675,    72,   669,   674,   624,   676,   678,   672,  -705,   697,      -841,  -841,  -841,  -841,  2528,    16,   238,   238,  -841,  -841,
1216       694,   699,   696,   698,   702,   701,   688,   641,   703,   700,      -841,  -841,  -841,   733,  3842,   733,  4061,  -841,   732,   705,
1217       687,   713,   706,   709,   649,   718,   715,   722,   724,   658,       740,   739,   729,   730,   738,   726,   727,   743,  -841,   734,
1218       710,   730,   712,   732,   735,   716,   734,   658,    14,   738,       736,   741,   735,   744,  2528,  2528,  2528,  2528,   369,   737,
1219       723,   726,   731,   737,   725,   736,   739,   740,   748,   741,      2528,   754,   758,   759,  2307,   285,   310,  2307,   238,   761,
1220       744,   756,   752,   757,   762,   754,   760,   765,   763,   747,       762,   764,   745,   756,   369,   765,   766,   746,   768,  -841,
1221       759,   755,   769,   764,   773,   772,   758,  -705,   766,   761,       369,   752,   772,   369,  2307,  2307,   779,   210,   775,   777,
1222       711,   783,   785,  -705,   790,   761,   780,   792,   728,   795,       781,   773,  -841,   778,   782,   722,   780,   783,   792,  -841,
1223       781,   784,  -705,  -705,   799,   803,   791,   793,   789,  -705,       785,    16,  2528,  2528,    16,  -841,   784,    16,   791,   796,
1224       796,   798,   806,   809,   812,   813,   805,   808,   818,   819,       793,   733,   238,   238,  -841,   238,   801,   799,   803,   802,
1225       816,   810,   767,   814,   811,   831,   832,  -705,   810,   822,       823,  -841,   809,   806,   776,   204,  -841,   826,   824,    16,
1226       768,   834,   823,  -705,   824,   770,  -705,   825,   826,   771,       733,   733,   816,   815,   819,   833,   825,   841,   834,   828,
1227       827,   833,   770,   828,   836,   845,  -705,   835,   854,   837,       829,   175,   789,   830,   842,   832,   835,    55,   840,   843,
1228       852,   858,   855,   860,   861,   851,   863,   847,   794,   849,       794,   238,   238,   851,   804,   852,  -841,   850,   855,   807,
1229       856,   848,   853,   857,  -705,   862,   871,   869,   865,   874,       857,   860,   861,  -841,   438,   873,   865,   847,   839,   874,
1230       876,   875,   877,   884,   873,   872,   870,   867,   881,   878,       882,   869,   877,   871,   872,   878,   846,   139,   881,   827,
1231       880,   888,   889,   893,   900,   901,  -705,   902,   903,   905,       894,   888,    16,   889,   883,   900,   886,   903,   895,  -841,
1232       891,   890,   895,   896,   898,   904,   899,   911,   915,   906,       891,   158,   896,   893,   902,  -841,  -841,   901,   905,   897,
1233      -705,   916,  -705,   918,   908,   909,  -705,   910,   912,  -705,       904,   845,  -841,   912,   856,   917,   916,   925,    93,   915,
1234       913,  -705,  -705,  -705       927,   930,   928,   929,   369,   931,   875,   937,   876,   938,
1235         939,   879,   940,   933,   934,   880,   941,   943,  -841,   935,
1236        -841,   946,   945,   251,   951,   955,   957,   947,   959,   952,
1237         958,   956,   968,   960,    16,   961,   972,   962,   973,   965,
1238         966,   271,   967,   974,   970,    54,  -841,  -841,  -841,   964,
1239         971,   466,   103,   978,   980,   924,   987,   975,   979,   981,
1240         977,  -841,   982,   412,   983,   995,   996,  1001,   998,   988,
1241        1002,  1004,  1005,   993,   944,  1008,  1003,   992,   999,   948,
1242        1020,  1000,  1014,   963,  1022,  1019,  1026,  1025,   969,    29,
1243        1017,  -841,    16,  1013,  1011,  1032,  1015,  1033,    32,  1037,
1244        1021,  1036,   969,   112,  1040,  1024,  1028,  1031,  1035,  1039,
1245        1041,  1027,  1042,  1044,  1045,  1046,  1043,  1038,  -841,  1047,
1246        1048,    22,  1049,  1050,  1055,  1060,  1054,  1057,  1063,  1068,
1247        1066,  1051,  1061,  1058,  1072,  1062,  1079,  1067,  1081,  1082,
1248        1069,  -841,  1073,  1074,  1023,  1087,  1091,  1029,  1083,  1094,
1249          16,  -841,  -841,  -841,  -841,  -841,  1098,  -841,  1099,  1074,
1250        1104,  1092,  1105,  1052,  1106,  1093,  1096,  -841,  -841,  -841,
1251        1095,  1108,  1109,  1097,  1100,  1101,  -841,  1102,  1103,  1110,
1252        1111,  1056,  1107,    55,  1112,  1114,  1113,  1123,  1125,  1115,
1253        1118,  1129,  1131,  -841,  1126,  1120,  1071,  1121,  1124,  1139,
1254        1142,  1128,  1144,  1145,  1132,  -841,  -841,  1120,  1128,  1136,
1255        1084,  1149,  1138,  -841,  1141,  1085,  -841,  1143,  1133,  1086,
1256        1140,  1147,  -841,  1137,  1157,  1154,  1085,  1148,  1150,  1160,
1257        -841,  1151,  1165,  1152,  1166,  1168,  1169,  -841,  1162,  1158,
1258        1172,  1175,  1167,  1177,  1163,  1116,  1164,  1170,  1171,  1179,
1259        1173,  1176,  1182,  -841,  1178,  1183,  1181,  1180,  1185,  1192,
1260        1184,  1195,  1200,  1198,  1203,  1193,  1187,  1186,  1189,  1194,
1261        1206,  1197,  1201,  1196,  1202,  1208,  1209,  1212,  1214,  -841,
1262        1153,  1205,  1215,  1216,  1217,  1207,  1204,  1210,  1211,  1223,
1263        -841,  1213,  1218,  1219,  1227,  1229,  1221,  -841,  1220,  1232,
1264        -841,  1233,  1224,  1226,  -841,  1174,  1228,  1230,  -841,  1222,
1265        1241,  -841,  -841,  -841,  -841
1266  };  };
1267    
1268  /* YYPGOTO[NTERM-NUM].  */  /* YYPGOTO[NTERM-NUM].  */
1269  static const short int yypgoto[] =  static const yytype_int16 yypgoto[] =
1270  {  {
1271      -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1272      -705,  -705,  -705,  -582,  -705,  -705,  -705,  -705,  -497,  -427,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -674,
1273      -705,   114,    52,  -705,  -705,  -462,   199,   387,   391,  -704,      -841,  -841,  -841,  -841,  -841,  -793,   124,  -841,   254,   176,
1274      -705,   323,   223,    13,   -10,   -14,   277,  -293,  -419,   -11,      -841,  -449,  -626,  -780,    38,  -492,  -826,  -640,  -680,   392,
1275       907,  -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,  -705,       -55,  -813,   277,  -569,   431,  -840,   -13,   -39,   -14,   307,
1276      -705,  -705,  -705,  -705,  -705,   -52,  -705,  -705,   -74,  -262,      -233,  -437,   -15,  1231,  -841,  -841,  -841,  -841,  -841,  -841,
1277      -249,  -248,  -247,  -705,   677,  -705,   680,  -254,  -705,  -705,      -841,  -841,  -841,  -841,  -412,  -841,  -841,  -841,  -841,  -841,
1278       673,   511,  -705,  -705,  -705,   681,   683,  -252,  -705,  -705,      -841,  -841,  -841,  -206,   994,   997,  1006,  -323,   991,  1007,
1279       514,  -705,  -705,  -705,  -705,  -705,  -705,  -705,   682,  -705,      -231,  -230,  -227,    21,  -841,  -841,  1009,  -841,  -841,  -841,
1280      -705      -841,  1016,  -248,  -841,  -841,   990,   770,  -841,  1030,  -841,
1281        1012,  1034,  -245,  -841,    36,   -69,  -246,  1053,  -841,   771,
1282        -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1283        1018,  -841,  -841,  -841
1284  };  };
1285    
1286  /* YYTABLE[YYPACT[STATE-NUM]].  What to do in state STATE-NUM.  If  /* YYTABLE[YYPACT[STATE-NUM]].  What to do in state STATE-NUM.  If
1287     positive, shift that token.  If negative, reduce the rule which     positive, shift that token.  If negative, reduce the rule which
1288     number is the opposite.  If zero, do what YYDEFACT says.     number is the opposite.  If zero, do what YYDEFACT says.
1289     If YYTABLE_NINF, syntax error.  */     If YYTABLE_NINF, syntax error.  */
1290  #define YYTABLE_NINF -132  #define YYTABLE_NINF -181
1291  static const short int yytable[] =  static const yytype_int16 yytable[] =
1292  {  {
1293       267,   650,   552,   269,   512,   270,   271,   272,   273,   274,       275,   273,   276,   277,   278,   279,   280,   281,   282,   283,
1294       275,   276,   277,   278,   279,   280,   281,   397,   356,   359,       284,   285,   286,   287,   288,   289,   290,   778,   786,   319,
1295       357,   360,   795,    37,   797,   330,   517,   331,   291,   332,       319,   319,   319,   319,   319,   319,   319,   319,   542,   930,
1296       398,   399,   400,    29,  1008,   959,   292,   333,   527,    38,       755,   372,   959,   388,   391,   647,   389,   392,  -180,   411,
1297       628,   307,   307,   307,   307,   307,   307,   307,   307,   307,       421,   583,   584,   600,   586,   318,   320,   321,   322,   323,
1298       528,  1009,    41,    42,   629,    31,     1,    33,     2,   529,       324,   325,   326,   327,   597,  1288,  1289,   440,   441,   610,
1299        30,   968,   922,    34,   306,   308,   309,   310,   311,   312,       772,   442,   963,   909,   965,     1,  1258,     2,   603,  1258,
1300       313,   314,   315,     3,   969,     4,     5,    35,   970,     6,       423,   352,   577,   942,    33,  1215,  1147,   550,   955,   410,
1301       383,   383,   362,   361,     7,   362,   936,   384,   384,     8,       416,   587,    43,     3,   449,     4,     5,   426,  1216,     6,
1302         9,    10,   385,    11,   972,   363,   353,   386,   386,   937,       428,   598,  1217,   347,     7,     8,   611,   405,    44,     9,
1303       387,   387,    32,   627,    36,   633,   634,   973,   354,    40,        10,    11,   615,    12,   308,   565,   566,   567,   568,   569,
1304       819,   918,   851,   296,   297,   298,   299,   300,   301,   302,       570,   571,   572,   573,   616,    36,  1167,   943,  1259,   385,
1305       303,   304,   305,   919,   373,   926,   328,   289,   374,   867,       617,  1266,   748,   618,   423,   424,  1221,   944,   345,  1168,
1306       868,   661,    39,   290,   418,   419,   375,   927,   667,   668,       346,   386,   347,  1270,  1205,   425,   749,   704,   340,  1222,
1307       669,   670,   671,   672,   673,   674,   675,   852,   950,   951,       348,   426,   427,    37,   428,    40,   349,   350,   341,   705,
1308       296,   297,   298,   299,   300,   301,   302,   303,   304,   305,      1271,   555,   556,   557,   558,   559,   560,   561,   562,   563,
1309       264,   478,   482,   483,   484,   485,   486,   487,   488,   489,       564,  1138,   578,   579,   580,   581,   412,   302,   340,   979,
1310       490,   491,   492,   517,   479,   480,   481,   853,   513,   514,       413,    41,   980,  1139,   747,   303,   753,   754,   414,   998,
1311       296,   297,   298,   299,   300,   301,   302,   303,   304,   305,      1152,  1041,   308,   309,   310,   311,   312,   313,   314,   315,
1312      -131,  -131,  -131,   283,   895,   513,   514,   531,   896,   534,       316,   317,  1153,   393,  1104,   394,  1000,    34,  1105,  1001,
1313       365,   963,   964,   282,   389,   396,   897,   790,   791,   296,        45,  1060,  1061,    35,    38,   395,  1106,   787,  1035,   300,
1314       497,   498,   499,   500,   501,   502,   503,   504,   505,   335,        39,   384,    42,   904,   403,   301,   795,   796,   797,   798,
1315       589,   590,   332,   780,   372,   377,   368,   789,   845,   405,       799,   800,   801,   802,   803,   804,   805,   806,    46,   305,
1316       284,   848,   743,   296,   497,   498,   499,   500,   501,   502,       764,  1063,   766,   539,   540,   306,  1006,  1064,  1091,   975,
1317       503,   504,   505,   783,   285,   286,   287,   288,   767,   296,       270,   975,   552,   553,   539,   540,   554,   308,   309,   310,
1318       297,   298,   299,   300,   301,   302,   303,   304,   305,   296,       311,   312,   313,   314,   315,   316,   317,  -180,  -180,  -180,
1319       497,   498,   499,   500,   501,   502,   503,   504,   505,   404,       292,   603,    47,    48,   620,   291,   624,   623,   466,   467,
1320       294,   293,    41,   328,   406,   407,   408,   410,   409,   411,       500,   467,  1191,  1192,   447,   293,   812,   539,   540,   462,
1321        -4,    -4,   412,   413,   414,   421,   471,   415,   417,   420,       295,   462,   462,   462,   462,   462,   462,   462,   462,    -4,
1322       461,   422,   436,   435,   442,   449,   416,   441,   416,   416,        -4,  1042,  1210,  1211,   308,   309,   310,   311,   312,   313,
1323       416,   416,   416,   416,   416,   416,   443,   444,   448,   450,       314,   315,   316,   317,   961,   962,   656,   657,   435,   443,
1324       457,   459,   458,   467,   469,   460,   465,   466,   470,   472,      1031,   294,   296,  1034,   379,   381,  1043,   297,  1174,   308,
1325       473,   468,   474,   475,   423,   509,   476,   477,   424,   384,       309,   310,   311,   312,   313,   314,   315,   316,   317,   465,
1326       425,   426,   427,   428,   429,   493,   430,   265,   431,   432,       298,   299,   304,    47,   377,   340,   382,   473,   450,   451,
1327       433,   434,   494,   508,   511,   437,   438,   510,   439,   440,       452,   898,   456,   474,   453,   475,   476,   477,   478,   479,
1328       524,   526,   525,   549,   547,   548,   553,   554,   555,   445,      1037,   480,   454,   481,   482,   483,   484,   485,   457,   486,
1329       446,   447,   859,   550,   551,   588,   451,   452,   453,   454,       487,   488,   929,   959,   490,   455,   491,   458,   459,   493,
1330       455,   456,   556,   558,   557,   559,   560,   561,   562,   563,       460,   461,   463,   496,   497,   464,   498,   499,   308,   565,
1331       564,   580,   581,   584,   595,   586,   587,   594,   596,   585,       566,   567,   568,   569,   570,   571,   572,   573,   503,   468,
1332       598,   613,   463,   615,   464,   599,   616,   614,   597,   617,       469,   470,   505,   506,   471,   507,   508,  1112,   472,   489,
1333       620,   619,   621,   864,   622,   623,   666,   626,   618,   624,       492,   512,   513,   514,   515,   516,   517,   518,   495,   494,
1334       664,   665,   625,   647,   646,   651,   652,   655,   680,   654,       501,   504,   502,   509,   510,   511,   519,   520,   945,   956,
1335       662,   681,   682,   683,   684,   506,   507,   685,   686,   653,       957,   308,   565,   566,   567,   568,   569,   570,   571,   572,
1336       663,   687,   688,   689,   690,   691,   692,   693,   540,   541,       573,   526,   521,   522,   527,   523,   524,   528,   529,   531,
1337       542,   543,   546,   702,   706,   707,   708,   713,   716,   714,       530,   533,   534,   542,   532,   535,   271,   308,   565,   566,
1338       715,   730,   734,   738,   731,   735,   701,   732,   705,   709,       567,   568,   569,   570,   571,   572,   573,   574,   538,   536,
1339       736,   802,   739,   741,   737,   763,   740,   565,   566,   567,       537,   544,   543,   545,   548,   549,   599,   547,   546,   582,
1340       568,   569,   570,   571,   572,   573,   574,   575,   576,   577,       576,   585,   588,   550,   589,   594,   576,   576,   595,   576,
1341       578,   579,   712,   742,   582,   583,   733,   307,   307,   307,       596,   613,   612,   614,   592,   593,   636,   641,   642,   576,
1342       307,   307,   307,   307,   307,   307,   750,   751,   765,   762,       648,   646,  1220,   643,   576,   645,   650,   654,   644,   632,
1343       764,   766,   404,   404,   769,   591,   770,   592,   771,   593,       633,   634,   635,   649,   640,   655,   651,   652,   658,   653,
1344       306,   308,   309,   310,   311,   312,   313,   314,   315,   773,       659,   660,  1051,   661,   662,   663,   664,   665,   680,   684,
1345       600,   601,   602,   603,   604,   605,   606,   607,   608,   609,       687,   688,   689,   692,   447,   447,   319,   319,   319,   319,
1346       610,   611,   612,   772,   799,   800,   801,   803,   804,   805,       319,   319,   319,   319,   319,   693,   666,   667,   668,   669,
1347       806,   807,   327,   808,   809,   814,   815,   820,   821,   822,       670,   671,   672,   673,   674,   675,   676,   677,   678,   679,
1348       825,   823,   827,   826,   828,   829,   636,   835,   831,   639,       694,   695,   318,   320,   321,   322,   323,   324,   325,   326,
1349       640,   641,   642,   836,   837,   645,   843,   838,   839,   840,       327,   696,   700,   681,   682,   683,   701,   702,   685,   686,
1350       841,   844,   857,   858,   842,   849,   855,   659,   463,   463,       703,   706,   707,   724,   726,   690,   691,   727,   339,   728,
1351       850,   856,   865,   862,   860,   863,   869,   870,   861,   871,       729,   730,   731,   733,   732,   734,   739,   697,   736,   698,
1352       874,   873,   876,   872,   884,   890,   677,   877,   679,   875,       743,   699,   735,   740,   744,   769,   746,   741,   742,   745,
1353       878,   881,   882,   402,   883,   885,   886,   888,   887,   891,       765,   773,   790,   775,   781,   708,   709,   710,   711,   712,
1354       893,   892,   898,   894,   899,   901,   900,   904,   902,   694,       713,   714,   715,   716,   717,   718,   719,   720,   721,   722,
1355       903,   905,   907,   910,   908,   911,   695,   912,   696,   697,       723,   774,   725,   779,   780,   782,   783,   791,   788,   792,
1356       698,   916,   699,   915,   700,   913,   914,   917,   920,   921,       793,   789,   794,   813,   811,   815,   814,   816,   817,   818,
1357       922,   923,   924,   925,   929,   928,   930,   710,   906,   711,       603,   526,   526,   819,   821,   820,   822,   824,   823,   825,
1358       931,   933,   934,   935,   938,   939,   717,   718,   719,   720,       826,   827,   832,   828,   831,   830,   829,   756,   841,   844,
1359       721,   722,   723,   724,   725,   941,   727,   943,   729,   945,       759,   760,   761,   762,   845,   576,   846,   576,   849,   768,
1360       932,   940,   946,   942,   947,   949,   952,   953,   944,   327,       850,   771,   771,   851,   852,   853,   856,   857,   858,   859,
1361       948,   954,   745,   746,   747,   955,   749,   956,   957,   958,       860,   861,   862,   785,   879,   881,   882,   884,   883,   887,
1362       760,   959,   961,   960,   759,   962,   965,   659,   966,   967,       885,   888,   889,   891,   892,   886,   934,   890,   893,   894,
1363       971,   974,   977,   775,   777,   975,   775,   782,   785,   979,       982,   973,   968,   906,   910,   897,   911,   808,   912,   810,
1364       775,   794,   760,   976,   760,   759,   759,   978,   759,   980,       895,   576,   924,   896,   925,   926,   927,   928,   972,   932,
1365       981,   982,   983,   984,   985,   987,   462,   986,   989,   991,       445,   931,   933,   935,   969,   970,   971,   974,   975,   976,
1366       988,   992,   990,   810,   811,   994,   812,   813,   995,   327,       977,   981,   983,   978,   989,   833,   991,   993,   997,  1002,
1367       996,   997,   998,   307,   307,   993,   999,  1000,   416,  1001,       992,   999,   834,  1003,   835,   836,   837,  1005,   838,   839,
1368      1002,  1003,  1004,  1005,  1007,  1006,  1010,   824,  1011,  1012,      1008,  1009,   339,   840,  1011,   842,  1016,   843,  1012,  1018,
1369       495,   496,  1013,  1014,  1015,   830,   817,   818,  1016,   521,      1019,  1022,  1020,  1021,  1023,  1024,  1025,  1030,  1028,   854,
1370      1019,  1018,   327,   327,  1023,  1017,  1020,  1021,   832,   545,      1007,   855,  1029,  1026,  1027,  1036,  1057,  1049,  1050,  1054,
1371       307,   307,  1022,  1024,  1025,  1026,  1027,  1028,  1029,  1030,       863,   864,   865,   866,   867,   868,   869,   870,   871,   872,
1372      1031,  1033,  1032,  1035,  1036,  1034,  1037,  1039,   327,  1038,       873,   874,  1038,   876,  1017,   878,  1039,   880,  1040,  1046,
1373      1040,  1041,   760,   817,   818,  1042,   759,   416,   416,   307,      1055,  1047,  1048,  1052,  1058,  1053,  1062,  1065,  1067,   921,
1374      1043,  1044,  1045,  1047,  1048,  1049,   777,  1046,   782,   760,      1066,  1071,  1068,  1074,  1069,  1090,  1070,  1075,  1072,  1073,
1375       760,  1050,   327,   759,   759,  1051,  1052,  1054,  1057,  1055,      1076,   900,   901,   902,  1292,   771,   905,  1078,   908,   908,
1376      1053,  1058,   854,  1056,  1059,  1060,   402,   402,  1061,  1062,      1079,  1080,   339,   921,   922,  1083,   921,  1084,   921,  1085,
1377      1063,  1064,   307,   307,   416,  1065,  1066,  1068,  1069,  1070,      1086,   785,  1087,  1088,  1089,  1092,  1095,  1093,  1096,   937,
1378      1071,  1072,  1074,  1076,  1075,   889,  1067,  1073,  1078,  1077,       939,  1097,   937,   576,   949,   951,  1098,   937,   960,   640,
1379      1080,  1083,  1081,  1082,  1079,   879,   880,  1085,  1086,   416,       640,   922,  1100,   922,  1099,  1109,  1101,  1102,  1103,  1108,
1380       416,  1084,  1087,  1089,  1088,   785,  1090,  1091,  1092,  1093,      1110,  1128,  1129,  1137,  1111,   319,   319,   525,  1107,  1113,
1381      1094,  1095,  1096,  1097,  1098,  1100,  1099,  1102,  1101,  1104,      1119,   462,  1114,  1115,   984,   985,  1292,   986,   987,   988,
1382      1105,  1106,   521,  1109,   637,   638,  1107,  1103,  1108,  1110,      1116,  1118,   990,  1117,  1120,  1122,  1121,   339,   339,  1123,
1383       643,   644,  1111,  1112,  1115,   649,   649,  1113,  1117,  1114,      1124,   995,   996,  1126,  1127,  1131,  1130,  1132,  1133,  1134,
1384       768,  1120,   462,   462,   327,   327,  1116,  1118,  1119,  1121,      1136,  1135,  1140,  1142,   339,  1004,  1141,   319,   319,  1143,
1385       327,   327,  1122,  1123,  1124,  1125,   327,  1126,  1127,  1128,      1145,  1146,  1147,  1010,  1148,  1149,  1150,   590,   591,  1151,
1386      1129,  1130,   676,  1134,   678,  1131,  1133,  1135,  1137,  1132,      1154,  1155,  1156,  1157,  1161,  1162,  1159,   607,  1158,  1164,
1387      1138,   909,  1136,  1139,  1140,  1141,   866,  1142,   793,  1143,      1013,  1165,  1160,   995,   996,  1163,   339,  1166,  1169,   639,
1388       379,   295,   371,   327,   366,   327,   635,   367,   381,     0,      1170,  1171,  1173,  1172,  1175,   921,   462,   462,   921,   319,
1389         0,   401,   532,     0,     0,   535,     0,     0,     0,     0,      1177,  1179,  1180,  1182,  1176,  1178,  1183,  1189,  1181,  1185,
1390         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,       445,   445,  1188,  1184,   908,   921,   921,  1190,  1193,  1186,
1391         0,     0,     0,   660,     0,     0,     0,     0,     0,     0,       922,  1187,  1194,   922,  1195,  1045,  1197,  1196,  1198,  1200,
1392         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,      1199,  1201,  1202,  1204,  1205,  1207,   939,  1218,  1209,   949,
1393         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,       922,   922,  1206,   319,   319,  1208,   462,  1212,  1214,  1219,
1394         0,     0,     0,     0,     0,     0,     0,     0,   744,     0,      1213,  1223,  1224,  1225,  1226,  1227,  1230,  1228,  1234,  1229,
1395         0,   327,   748,     0,     0,   327,   752,     0,     0,   327,      1231,  1233,  1077,  1235,  1236,  1237,  1238,  1240,  1239,  1081,
1396         0,     0,     0,   327,     0,     0,     0,     0,     0,     0,      1082,  1242,  1241,  1243,  1244,  1246,  1245,  1248,  1247,  1249,
1397         0,     0,   779,     0,     0,     0,   788,     0,     0,     0,      1250,  1251,   462,   462,  1094,  1253,  1254,  1255,  1256,  1260,
1398       796,     0,   798,     0,     0,     0,   327,     0,     0,     0,      1258,  1262,  1252,  1263,  1265,  1264,  1267,  1269,  1257,  1272,
1399         0,     0,     0,     0,     0,   327,     0,     0,     0,     0,      1273,  1268,  1274,  1275,   339,   339,  1276,  1279,  1278,  1283,
1400         0,     0,     0,   327,     0,   327,     0,     0,     0,     0,       339,  1277,  1285,  1297,   339,  1280,  1296,  1282,  1286,  1284,
1401         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,       951,  1281,  1298,  1299,   339,  1300,  1287,   525,   525,  1301,
1402         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,      1302,  1303,  1304,  1306,  1305,  1308,  1307,  1144,  1310,  1311,
1403         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,      1309,   607,  1312,   757,   758,  1313,  1318,  1315,  1314,   763,
1404         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,      1319,  1316,  1317,   767,   339,  1321,   339,  1322,  1320,  1324,
1405         0,     0,     0,   327,   327,     0,     0,     0,     0,     0,      1325,   777,   777,  1326,  1327,  1330,  1328,  1331,  1332,  1333,
1406         0,     0,     0,   649,   846,   847,   649,   316,    46,    47,       785,  1334,  1335,  1336,  1056,  1346,  1339,  1347,  1337,  1340,
1407        48,    49,   317,   318,   319,   320,   321,   322,   323,   324,      1338,  1329,  1342,  1344,  1341,  1343,  1349,  1348,  1350,  1351,
1408       325,   326,    60,    61,    62,    63,    64,    65,    66,    67,      1352,   807,  1353,   809,  1354,  1358,  1355,  1356,  1360,  1203,
1409        68,    69,    70,    71,    72,    73,    74,    75,    76,    77,      1357,  1361,  1359,  1363,   921,  1362,  1366,  1364,  1368,  1365,
1410        78,    79,    80,    81,    82,    83,    84,    85,    86,    87,      1369,  1370,  1373,  1367,  1371,  1374,  1375,  1372,  1376,  1377,
1411        88,    89,    90,    91,    92,    93,    94,    95,    96,    97,      1378,  1379,  1380,  1382,  1384,  1383,  1381,  1387,  1386,   960,
1412        98,    99,   100,   101,   102,   103,   104,   105,   106,   107,      1385,  1391,  1388,  1389,  1392,  1390,  1394,  1393,  1400,  1395,
1413       108,   109,   110,   111,   112,   113,   114,   115,   116,   117,      1397,  1398,  1405,  1406,  1450,  1396,   339,  1407,  1408,  1399,
1414       118,   119,   120,   121,   122,   123,   124,   125,   126,   127,       339,  1401,  1402,  1403,  1404,  1409,  1410,  1261,  1411,  1412,
1415       128,   129,   130,   131,   132,   133,   134,   135,   136,   137,       339,  1413,  1414,  1416,  1415,   339,  1417,  1418,  1420,  1421,
1416       138,   139,   140,   141,   142,   143,   144,   145,   146,   147,      1419,  1425,  1422,  1424,  1423,  1427,  1426,  1428,  1431,  1432,
1417       148,   149,   150,   151,   152,   153,   154,   155,   156,   157,      1433,  1232,  1429,  1430,  1435,  1434,  1436,  1437,   339,  1438,
1418       158,   159,   160,   161,   162,   163,   164,   165,   166,   167,      1442,  1439,  1443,  1445,  1440,  1446,  1447,  1441,  1444,  1453,
1419       168,   169,   170,   171,   172,   173,   174,   175,   176,   177,      1448,   339,  1449,  1454,  1451,   899,  1452,  1059,  1345,   903,
1420       178,   179,   180,   181,   182,   183,   184,   185,   186,   187,      1125,   339,   967,   339,  1044,  1323,   418,   397,   913,   438,
1421       188,   189,   190,   191,   192,   193,   194,   195,   196,   197,       398,   307,   621,   625,     0,     0,     0,     0,     0,   399,
1422       198,   199,   200,   201,   202,   203,   204,   205,   206,   207,         0,     0,     0,   408,     0,   439,   941,     0,   420,   400,
1423       208,   209,   210,   211,   212,   213,   214,   215,   216,   217,         0,   954,     0,     0,   639,   639,   444,   964,     0,   966,
1424       218,   219,   220,   221,   222,   223,   224,   225,   226,   227,         0,     0,     0,   401,     0,     0,     0,   402,     0,     0,
1425       228,   229,   230,   231,   232,   233,   234,   235,   236,   237,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1426       238,   239,   240,   241,   242,   243,   244,   245,   246,   247,         0,     0,     0,     0,     0,     0,   404,     0,     0,   339,
1427       248,   249,   250,   251,   252,   253,   254,   255,   256,   257,       339,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1428       258,   259,   260,   261,   262,   263,   656,     0,   264,   316,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1429        46,    47,    48,    49,   317,   318,   319,   320,   321,   322,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1430       323,   324,   325,   326,    60,    61,    62,    63,    64,    65,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1431        66,    67,    68,    69,    70,    71,    72,    73,    74,    75,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1432        76,    77,    78,    79,    80,    81,    82,    83,    84,    85,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1433        86,    87,    88,    89,    90,    91,    92,    93,    94,    95,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1434        96,    97,    98,    99,   100,   101,   102,   103,   104,   105,         0,     0,     0,     0,     0,   777,  1032,  1033,   777,     0,
1435       106,   107,   108,   109,   110,   111,   112,   113,   114,   115,         0,   607,   328,    52,    53,    54,    55,    56,   329,   330,
1436       116,   117,   118,   119,   120,   121,   122,   123,   124,   125,       331,   332,   333,   334,   335,   336,   337,   338,    67,    68,
      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,     0,   657,  
      264,    45,    46,    47,    48,    49,    50,    51,    52,    53,  
       54,    55,    56,    57,    58,    59,    60,    61,    62,    63,  
       64,    65,    66,    67,    68,    69,    70,    71,    72,    73,  
       74,    75,    76,    77,    78,    79,    80,    81,    82,    83,  
       84,    85,    86,    87,    88,    89,    90,    91,    92,    93,  
       94,    95,    96,    97,    98,    99,   100,   101,   102,   103,  
      104,   105,   106,   107,   108,   109,   110,   111,   112,   113,  
      114,   115,   116,   117,   118,   119,   120,   121,   122,   123,  
      124,   125,   126,   127,   128,   129,   130,   131,   132,   133,  
      134,   135,   136,   137,   138,   139,   140,   141,   142,   143,  
      144,   145,   146,   147,   148,   149,   150,   151,   152,   153,  
      154,   155,   156,   157,   158,   159,   160,   161,   162,   163,  
      164,   165,   166,   167,   168,   169,   170,   171,   172,   173,  
      174,   175,   176,   177,   178,   179,   180,   181,   182,   183,  
      184,   185,   186,   187,   188,   189,   190,   191,   192,   193,  
      194,   195,   196,   197,   198,   199,   200,   201,   202,   203,  
      204,   205,   206,   207,   208,   209,   210,   211,   212,   213,  
      214,   215,   216,   217,   218,   219,   220,   221,   222,   223,  
      224,   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,  
        0,     0,   264,   316,    46,    47,    48,    49,   317,   318,  
      319,   320,   321,   322,   323,   324,   325,   326,    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,     0,     0,   264,   316,    46,    47,   753,   754,  
       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,   513,   514,   316,    46,    47,    48,  
       49,   317,   318,   319,   320,   321,   322,   323,   324,   325,  
      326,    60,    61,    62,    63,    64,    65,    66,    67,    68,  
1437        69,    70,    71,    72,    73,    74,    75,    76,    77,    78,        69,    70,    71,    72,    73,    74,    75,    76,    77,    78,
1438        79,    80,    81,    82,    83,    84,    85,    86,    87,    88,        79,    80,    81,    82,    83,    84,    85,    86,    87,    88,
1439        89,    90,    91,    92,    93,    94,    95,    96,    97,    98,        89,    90,    91,    92,    93,    94,    95,    96,    97,    98,
# Line 1252  static const short int yytable[] = Line 1453  static const short int yytable[] =
1453       229,   230,   231,   232,   233,   234,   235,   236,   237,   238,       229,   230,   231,   232,   233,   234,   235,   236,   237,   238,
1454       239,   240,   241,   242,   243,   244,   245,   246,   247,   248,       239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
1455       249,   250,   251,   252,   253,   254,   255,   256,   257,   258,       249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
1456       259,   260,   261,   262,   263,   316,    46,    47,    48,    49,       259,   260,   261,   262,   263,   264,   265,   266,   267,   268,
1457        50,    51,    52,    53,    54,    55,    56,    57,    58,    59,       269,   737,     0,   270,   328,    52,    53,    54,    55,    56,
1458        60,    61,    62,    63,    64,    65,    66,    67,    68,    69,       329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
1459          67,    68,    69,    70,    71,    72,    73,    74,    75,    76,
1460          77,    78,    79,    80,    81,    82,    83,    84,    85,    86,
1461          87,    88,    89,    90,    91,    92,    93,    94,    95,    96,
1462          97,    98,    99,   100,   101,   102,   103,   104,   105,   106,
1463         107,   108,   109,   110,   111,   112,   113,   114,   115,   116,
1464         117,   118,   119,   120,   121,   122,   123,   124,   125,   126,
1465         127,   128,   129,   130,   131,   132,   133,   134,   135,   136,
1466         137,   138,   139,   140,   141,   142,   143,   144,   145,   146,
1467         147,   148,   149,   150,   151,   152,   153,   154,   155,   156,
1468         157,   158,   159,   160,   161,   162,   163,   164,   165,   166,
1469         167,   168,   169,   170,   171,   172,   173,   174,   175,   176,
1470         177,   178,   179,   180,   181,   182,   183,   184,   185,   186,
1471         187,   188,   189,   190,   191,   192,   193,   194,   195,   196,
1472         197,   198,   199,   200,   201,   202,   203,   204,   205,   206,
1473         207,   208,   209,   210,   211,   212,   213,   214,   215,   216,
1474         217,   218,   219,   220,   221,   222,   223,   224,   225,   226,
1475         227,   228,   229,   230,   231,   232,   233,   234,   235,   236,
1476         237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
1477         247,   248,   249,   250,   251,   252,   253,   254,   255,   256,
1478         257,   258,   259,   260,   261,   262,   263,   264,   265,   266,
1479         267,   268,   269,     0,   738,   270,    51,    52,    53,    54,
1480          55,    56,    57,    58,    59,    60,    61,    62,    63,    64,
1481          65,    66,    67,    68,    69,    70,    71,    72,    73,    74,
1482          75,    76,    77,    78,    79,    80,    81,    82,    83,    84,
1483          85,    86,    87,    88,    89,    90,    91,    92,    93,    94,
1484          95,    96,    97,    98,    99,   100,   101,   102,   103,   104,
1485         105,   106,   107,   108,   109,   110,   111,   112,   113,   114,
1486         115,   116,   117,   118,   119,   120,   121,   122,   123,   124,
1487         125,   126,   127,   128,   129,   130,   131,   132,   133,   134,
1488         135,   136,   137,   138,   139,   140,   141,   142,   143,   144,
1489         145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
1490         155,   156,   157,   158,   159,   160,   161,   162,   163,   164,
1491         165,   166,   167,   168,   169,   170,   171,   172,   173,   174,
1492         175,   176,   177,   178,   179,   180,   181,   182,   183,   184,
1493         185,   186,   187,   188,   189,   190,   191,   192,   193,   194,
1494         195,   196,   197,   198,   199,   200,   201,   202,   203,   204,
1495         205,   206,   207,   208,   209,   210,   211,   212,   213,   214,
1496         215,   216,   217,   218,   219,   220,   221,   222,   223,   224,
1497         225,   226,   227,   228,   229,   230,   231,   232,   233,   234,
1498         235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
1499         245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
1500         255,   256,   257,   258,   259,   260,   261,   262,   263,   264,
1501         265,   266,   267,   268,   269,     0,     0,   270,   328,    52,
1502          53,    54,    55,    56,   329,   330,   331,   332,   333,   334,
1503         335,   336,   337,   338,    67,    68,    69,    70,    71,    72,
1504          73,    74,    75,    76,    77,    78,    79,    80,    81,    82,
1505          83,    84,    85,    86,    87,    88,    89,    90,    91,    92,
1506          93,    94,    95,    96,    97,    98,    99,   100,   101,   102,
1507         103,   104,   105,   106,   107,   108,   109,   110,   111,   112,
1508         113,   114,   115,   116,   117,   118,   119,   120,   121,   122,
1509         123,   124,   125,   126,   127,   128,   129,   130,   131,   132,
1510         133,   134,   135,   136,   137,   138,   139,   140,   141,   142,
1511         143,   144,   145,   146,   147,   148,   149,   150,   151,   152,
1512         153,   154,   155,   156,   157,   158,   159,   160,   161,   162,
1513         163,   164,   165,   166,   167,   168,   169,   170,   171,   172,
1514         173,   174,   175,   176,   177,   178,   179,   180,   181,   182,
1515         183,   184,   185,   186,   187,   188,   189,   190,   191,   192,
1516         193,   194,   195,   196,   197,   198,   199,   200,   201,   202,
1517         203,   204,   205,   206,   207,   208,   209,   210,   211,   212,
1518         213,   214,   215,   216,   217,   218,   219,   220,   221,   222,
1519         223,   224,   225,   226,   227,   228,   229,   230,   231,   232,
1520         233,   234,   235,   236,   237,   238,   239,   240,   241,   242,
1521         243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
1522         253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
1523         263,   264,   265,   266,   267,   268,   269,     0,     0,   270,
1524         328,    52,    53,    54,   914,   915,    57,    58,    59,    60,
1525          61,    62,    63,    64,    65,    66,    67,    68,    69,    70,
1526          71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
1527          81,    82,    83,    84,    85,    86,    87,    88,    89,    90,
1528          91,    92,    93,    94,    95,    96,    97,    98,    99,   100,
1529         101,   102,   103,   104,   105,   106,   107,   108,   109,   110,
1530         111,   112,   113,   114,   115,   116,   117,   118,   119,   120,
1531         121,   122,   123,   124,   125,   126,   127,   128,   129,   130,
1532         131,   132,   133,   134,   135,   136,   137,   138,   139,   140,
1533         141,   142,   143,   144,   145,   146,   147,   148,   149,   150,
1534         151,   152,   153,   154,   155,   156,   157,   158,   159,   160,
1535         161,   162,   163,   164,   165,   166,   167,   168,   169,   170,
1536         171,   172,   173,   174,   175,   176,   177,   178,   179,   180,
1537         181,   182,   183,   184,   185,   186,   187,   188,   189,   190,
1538         191,   192,   193,   194,   195,   196,   197,   198,   199,   200,
1539         201,   202,   203,   204,   205,   206,   207,   208,   209,   210,
1540         211,   212,   213,   214,   215,   216,   217,   218,   219,   220,
1541         221,   222,   223,   224,   225,   226,   227,   228,   229,   230,
1542         231,   232,   233,   234,   235,   236,   237,   238,   239,   240,
1543         241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
1544         251,   252,   253,   254,   255,   256,   257,   258,   259,   260,
1545         261,   262,   263,   264,   265,   266,   267,   268,   269,   539,
1546         540,   328,    52,    53,    54,    55,    56,   329,   330,   331,
1547         332,   333,   334,   335,   336,   337,   338,    67,    68,    69,
1548        70,    71,    72,    73,    74,    75,    76,    77,    78,    79,        70,    71,    72,    73,    74,    75,    76,    77,    78,    79,
1549        80,    81,    82,    83,    84,    85,    86,    87,    88,    89,        80,    81,    82,    83,    84,    85,    86,    87,    88,    89,
1550        90,    91,    92,    93,    94,    95,    96,    97,    98,    99,        90,    91,    92,    93,    94,    95,    96,    97,    98,    99,
# Line 1274  static const short int yytable[] = Line 1564  static const short int yytable[] =
1564       230,   231,   232,   233,   234,   235,   236,   237,   238,   239,       230,   231,   232,   233,   234,   235,   236,   237,   238,   239,
1565       240,   241,   242,   243,   244,   245,   246,   247,   248,   249,       240,   241,   242,   243,   244,   245,   246,   247,   248,   249,
1566       250,   251,   252,   253,   254,   255,   256,   257,   258,   259,       250,   251,   252,   253,   254,   255,   256,   257,   258,   259,
1567       260,   261,   262,   263,   316,   704,    47,    48,    49,   317,       260,   261,   262,   263,   264,   265,   266,   267,   268,   269,
1568       318,   319,   320,   321,   322,   323,   324,   325,   326,    60,       328,    52,    53,    54,    55,    56,    57,    58,    59,    60,
1569        61,    62,    63,    64,    65,    66,    67,    68,    69,    70,        61,    62,    63,    64,    65,    66,    67,    68,    69,    70,
1570        71,    72,    73,    74,    75,    76,    77,    78,    79,    80,        71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
1571        81,    82,    83,    84,    85,    86,    87,    88,    89,    90,        81,    82,    83,    84,    85,    86,    87,    88,    89,    90,
# Line 1296  static const short int yytable[] = Line 1586  static const short int yytable[] =
1586       231,   232,   233,   234,   235,   236,   237,   238,   239,   240,       231,   232,   233,   234,   235,   236,   237,   238,   239,   240,
1587       241,   242,   243,   244,   245,   246,   247,   248,   249,   250,       241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
1588       251,   252,   253,   254,   255,   256,   257,   258,   259,   260,       251,   252,   253,   254,   255,   256,   257,   258,   259,   260,
1589       261,   262,   263,   316,   726,    47,    48,    49,   317,   318,       261,   262,   263,   264,   265,   266,   267,   268,   269,   328,
1590       319,   320,   321,   322,   323,   324,   325,   326,    60,    61,       848,    53,    54,    55,    56,   329,   330,   331,   332,   333,
1591        62,    63,    64,    65,    66,    67,    68,    69,    70,    71,       334,   335,   336,   337,   338,    67,    68,    69,    70,    71,
1592        72,    73,    74,    75,    76,    77,    78,    79,    80,    81,        72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
1593        82,    83,    84,    85,    86,    87,    88,    89,    90,    91,        82,    83,    84,    85,    86,    87,    88,    89,    90,    91,
1594        92,    93,    94,    95,    96,    97,    98,    99,   100,   101,        92,    93,    94,    95,    96,    97,    98,    99,   100,   101,
# Line 1318  static const short int yytable[] = Line 1608  static const short int yytable[] =
1608       232,   233,   234,   235,   236,   237,   238,   239,   240,   241,       232,   233,   234,   235,   236,   237,   238,   239,   240,   241,
1609       242,   243,   244,   245,   246,   247,   248,   249,   250,   251,       242,   243,   244,   245,   246,   247,   248,   249,   250,   251,
1610       252,   253,   254,   255,   256,   257,   258,   259,   260,   261,       252,   253,   254,   255,   256,   257,   258,   259,   260,   261,
1611       262,   263,   316,   728,    47,    48,    49,   317,   318,   319,       262,   263,   264,   265,   266,   267,   268,   269,   328,   875,
1612       320,   321,   322,   323,   324,   325,   326,    60,    61,    62,        53,    54,    55,    56,   329,   330,   331,   332,   333,   334,
1613        63,    64,    65,    66,    67,    68,    69,    70,    71,    72,       335,   336,   337,   338,    67,    68,    69,    70,    71,    72,
1614        73,    74,    75,    76,    77,    78,    79,    80,    81,    82,        73,    74,    75,    76,    77,    78,    79,    80,    81,    82,
1615        83,    84,    85,    86,    87,    88,    89,    90,    91,    92,        83,    84,    85,    86,    87,    88,    89,    90,    91,    92,
1616        93,    94,    95,    96,    97,    98,    99,   100,   101,   102,        93,    94,    95,    96,    97,    98,    99,   100,   101,   102,
# Line 1340  static const short int yytable[] = Line 1630  static const short int yytable[] =
1630       233,   234,   235,   236,   237,   238,   239,   240,   241,   242,       233,   234,   235,   236,   237,   238,   239,   240,   241,   242,
1631       243,   244,   245,   246,   247,   248,   249,   250,   251,   252,       243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
1632       253,   254,   255,   256,   257,   258,   259,   260,   261,   262,       253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
1633       263,   316,   816,    47,    48,    49,   317,   318,   319,   320,       263,   264,   265,   266,   267,   268,   269,   328,   877,    53,
1634       321,   322,   323,   324,   325,   326,    60,    61,    62,    63,        54,    55,    56,   329,   330,   331,   332,   333,   334,   335,
1635        64,    65,    66,    67,    68,    69,    70,    71,    72,    73,       336,   337,   338,    67,    68,    69,    70,    71,    72,    73,
1636        74,    75,    76,    77,    78,    79,    80,    81,    82,    83,        74,    75,    76,    77,    78,    79,    80,    81,    82,    83,
1637        84,    85,    86,    87,    88,    89,    90,    91,    92,    93,        84,    85,    86,    87,    88,    89,    90,    91,    92,    93,
1638        94,    95,    96,    97,    98,    99,   100,   101,   102,   103,        94,    95,    96,    97,    98,    99,   100,   101,   102,   103,
# Line 1362  static const short int yytable[] = Line 1652  static const short int yytable[] =
1652       234,   235,   236,   237,   238,   239,   240,   241,   242,   243,       234,   235,   236,   237,   238,   239,   240,   241,   242,   243,
1653       244,   245,   246,   247,   248,   249,   250,   251,   252,   253,       244,   245,   246,   247,   248,   249,   250,   251,   252,   253,
1654       254,   255,   256,   257,   258,   259,   260,   261,   262,   263,       254,   255,   256,   257,   258,   259,   260,   261,   262,   263,
1655       316,   833,    47,    48,    49,   317,   318,   319,   320,   321,       264,   265,   266,   267,   268,   269,   328,   994,    53,    54,
1656       322,   323,   324,   325,   326,    60,    61,    62,    63,    64,        55,    56,   329,   330,   331,   332,   333,   334,   335,   336,
1657        65,    66,    67,    68,    69,    70,    71,    72,    73,    74,       337,   338,    67,    68,    69,    70,    71,    72,    73,    74,
1658        75,    76,    77,    78,    79,    80,    81,    82,    83,    84,        75,    76,    77,    78,    79,    80,    81,    82,    83,    84,
1659        85,    86,    87,    88,    89,    90,    91,    92,    93,    94,        85,    86,    87,    88,    89,    90,    91,    92,    93,    94,
1660        95,    96,    97,    98,    99,   100,   101,   102,   103,   104,        95,    96,    97,    98,    99,   100,   101,   102,   103,   104,
# Line 1383  static const short int yytable[] = Line 1673  static const short int yytable[] =
1673       225,   226,   227,   228,   229,   230,   231,   232,   233,   234,       225,   226,   227,   228,   229,   230,   231,   232,   233,   234,
1674       235,   236,   237,   238,   239,   240,   241,   242,   243,   244,       235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
1675       245,   246,   247,   248,   249,   250,   251,   252,   253,   254,       245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
1676       255,   256,   257,   258,   259,   260,   261,   262,   263,   316,       255,   256,   257,   258,   259,   260,   261,   262,   263,   264,
1677       834,    47,    48,    49,   317,   318,   319,   320,   321,   322,       265,   266,   267,   268,   269,   328,  1014,    53,    54,    55,
1678       323,   324,   325,   326,    60,    61,    62,    63,    64,    65,        56,   329,   330,   331,   332,   333,   334,   335,   336,   337,
1679        66,    67,    68,    69,    70,    71,    72,    73,    74,    75,       338,    67,    68,    69,    70,    71,    72,    73,    74,    75,
1680        76,    77,    78,    79,    80,    81,    82,    83,    84,    85,        76,    77,    78,    79,    80,    81,    82,    83,    84,    85,
1681        86,    87,    88,    89,    90,    91,    92,    93,    94,    95,        86,    87,    88,    89,    90,    91,    92,    93,    94,    95,
1682        96,    97,    98,    99,   100,   101,   102,   103,   104,   105,        96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
# Line 1405  static const short int yytable[] = Line 1695  static const short int yytable[] =
1695       226,   227,   228,   229,   230,   231,   232,   233,   234,   235,       226,   227,   228,   229,   230,   231,   232,   233,   234,   235,
1696       236,   237,   238,   239,   240,   241,   242,   243,   244,   245,       236,   237,   238,   239,   240,   241,   242,   243,   244,   245,
1697       246,   247,   248,   249,   250,   251,   252,   253,   254,   255,       246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
1698       256,   257,   258,   259,   260,   261,   262,   263       256,   257,   258,   259,   260,   261,   262,   263,   264,   265,
1699  };       266,   267,   268,   269,   328,  1015,    53,    54,    55,    56,
1700         329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
 static const short int yycheck[] =  
 {  
       14,   583,   464,    14,    31,    16,    17,    18,    19,    20,  
       21,    22,    23,    24,    25,    26,    27,   279,   272,   273,  
      272,   273,   726,    22,   728,    18,   445,    20,    29,    22,  
      279,   279,   279,    21,    20,    21,    37,    30,    18,    38,  
       19,    51,    52,    53,    54,    55,    56,    57,    58,    59,  
       30,    37,   225,   226,    33,    22,     1,    26,     3,    39,  
       35,    20,    21,    32,    51,    52,    53,    54,    55,    56,  
       57,    58,    59,    18,    33,    20,    21,    38,    37,    24,  
       19,    19,    20,    18,    29,    20,    22,    26,    26,    34,  
       35,    36,    30,    38,    22,    30,    18,    36,    36,    35,  
       39,    39,    22,   565,    22,   567,   568,    35,    30,     0,  
        5,    21,   816,     8,     9,    10,    11,    12,    13,    14,  
       15,    16,    17,    33,    18,    21,    20,    30,    22,   833,  
      834,   593,    31,    36,    38,    39,    30,    33,   600,   601,  
      602,   603,   604,   605,   606,   607,   608,     5,    20,    21,  
        8,     9,    10,    11,    12,    13,    14,    15,    16,    17,  
      224,   423,   424,   425,   426,   427,   428,   429,   430,   431,  
      432,   433,   434,   592,   423,   423,   423,     5,   222,   223,  
        8,     9,    10,    11,    12,    13,    14,    15,    16,    17,  
      224,   225,   226,    22,    18,   222,   223,   451,    22,   451,  
      274,    20,    21,    21,   278,   279,    30,     6,     7,     8,  
        9,    10,    11,    12,    13,    14,    15,    16,    17,   271,  
      513,   514,    22,   720,   276,   277,    26,   724,   810,   281,  
       36,   813,   694,     8,     9,    10,    11,    12,    13,    14,  
       15,    16,    17,    18,    37,    36,    18,    26,   710,     8,  
        9,    10,    11,    12,    13,    14,    15,    16,    17,     8,  
        9,    10,    11,    12,    13,    14,    15,    16,    17,   280,  
       36,    19,   225,    20,    18,    37,    37,    37,    21,    32,  
      225,   226,    22,    22,    36,    31,    19,    38,    25,    25,  
       32,    26,    26,    38,    25,    20,   306,    38,   308,   309,  
      310,   311,   312,   313,   314,   315,    26,    31,    38,    26,  
       38,    26,    31,    39,    20,    37,    37,    35,    20,    18,  
       21,    37,    18,    18,   335,    18,    24,    21,   339,    26,  
      341,   342,   343,   344,   345,    21,   347,    14,   349,   350,  
      351,   352,    21,    21,    36,   356,   357,    21,   359,   360,  
       21,    21,    25,    36,    23,    23,    22,    32,    22,   370,  
      371,   372,   824,    35,    26,    32,   377,   378,   379,   380,  
      381,   382,    37,    36,    35,    31,    26,    26,    31,    26,  
       26,    26,    26,    26,    32,    26,    37,    26,    26,    31,  
       26,    23,   403,    20,   405,    32,    22,    32,    38,    20,  
       20,    26,    31,   830,    32,    29,    29,    89,    42,    31,  
       21,    21,    31,    89,    32,    32,    31,    31,    22,    35,  
       32,    22,    18,    22,    19,   439,   440,    35,    22,    89,  
       89,    89,    18,    22,    22,    26,    42,    22,   452,   453,  
      454,   455,   456,    26,    22,    26,    38,    26,    38,    26,  
       26,    35,    22,    19,    29,    26,    89,    30,    89,    89,  
       29,    20,    29,    37,    32,    29,    31,   478,   479,   480,  
      481,   482,   483,   484,   485,   486,   487,   488,   489,   490,  
      491,   492,    89,    35,   495,   496,    89,   497,   498,   499,  
      500,   501,   502,   503,   504,   505,    32,    31,    30,    32,  
       31,    30,   513,   514,    32,   516,    31,   518,    32,   520,  
      497,   498,   499,   500,   501,   502,   503,   504,   505,    30,  
      531,   532,   533,   534,   535,   536,   537,   538,   539,   540,  
      541,   542,   543,    89,    89,    29,    89,    19,    38,    29,  
       36,    33,   265,    22,    20,    38,    33,    38,    33,    22,  
       38,    32,    89,    33,    26,    22,   570,    23,    29,   573,  
      574,   575,   576,    18,    20,   579,    36,    32,    22,    37,  
       22,    22,    31,    21,    38,    37,    37,   591,   589,   590,  
       38,    38,    29,    32,    37,    31,    26,    31,    38,    32,  
       89,    33,    31,    38,    18,    29,   610,    33,   612,    37,  
       37,    33,    37,   280,    37,    33,    37,    33,    38,    22,  
       31,    38,    89,    38,    37,    89,    38,    29,    38,   630,  
       89,    38,    37,    29,    38,    32,   637,    31,   639,   640,  
      641,    31,   643,    38,   645,    37,    37,    26,    18,    37,  
       21,    37,    21,    37,    37,    33,    38,   658,    89,   660,  
       37,    21,    24,    21,    32,    24,   667,   668,   669,   670,  
      671,   672,   673,   674,   675,    22,   677,    22,   679,    22,  
       89,    89,    32,    89,    38,    36,    26,    26,    89,   402,  
       89,    26,   696,   697,   698,    39,   700,    26,    35,    22,  
      704,    21,    21,    39,   704,    39,    39,   711,    35,    37,  
       25,    32,    26,   717,   718,    31,   720,   721,   722,    37,  
      724,   725,   726,    89,   728,   725,   726,    39,   728,    22,  
       26,    22,    26,    25,    22,    37,   403,    26,    25,    42,  
       89,    18,    32,   744,   745,    26,   747,   748,    89,   462,  
       22,    26,    20,   753,   754,    39,    22,    89,   758,    39,  
       20,    39,    20,    18,    20,    39,    18,   768,    35,    33,  
      437,   438,    31,    26,    39,   776,   753,   754,    32,   446,  
       22,    31,   495,   496,    22,    36,    35,    33,   789,   456,  
      790,   791,    26,    26,    22,    31,    26,    22,    25,    42,  
       31,    22,    37,    20,    22,    31,    38,    36,   521,    33,  
       89,    18,   816,   790,   791,    20,   816,   817,   818,   819,  
       20,    31,    20,    18,    33,    31,   830,    89,   832,   833,  
      834,    22,   545,   833,   834,    22,    35,    38,    22,    33,  
       37,    22,   819,    35,    22,    22,   513,   514,    33,    31,  
       22,    22,   852,   853,   854,    29,    36,    33,    37,    18,  
       18,    29,    18,    29,    31,   866,    89,    89,    33,    89,  
       89,    33,    35,    30,    38,   852,   853,    22,    33,   879,  
      880,    35,    18,    21,    37,   889,    18,    22,    18,    18,  
       29,    18,    35,    89,    35,    37,    30,    30,    35,    18,  
       21,    26,   569,    18,   571,   572,    22,    35,    22,    22,  
      577,   578,    18,    30,    37,   582,   583,    35,    30,    39,  
      711,    22,   589,   590,   637,   638,    35,    37,    30,    26,  
      643,   644,    22,    22,    22,    22,   649,    22,    37,    39,  
       35,    35,   609,    22,   611,    37,    37,    22,    22,    35,  
       22,   889,    36,    35,    35,    35,   832,    35,   725,    36,  
      277,    44,   275,   676,   274,   678,   569,   274,   277,    -1,  
       -1,   279,   451,    -1,    -1,   451,    -1,    -1,    -1,    -1,  
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  
       -1,    -1,    -1,   592,    -1,    -1,    -1,    -1,    -1,    -1,  
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   695,    -1,  
       -1,   744,   699,    -1,    -1,   748,   703,    -1,    -1,   752,  
       -1,    -1,    -1,   756,    -1,    -1,    -1,    -1,    -1,    -1,  
       -1,    -1,   719,    -1,    -1,    -1,   723,    -1,    -1,    -1,  
      727,    -1,   729,    -1,    -1,    -1,   779,    -1,    -1,    -1,  
       -1,    -1,    -1,    -1,    -1,   788,    -1,    -1,    -1,    -1,  
       -1,    -1,    -1,   796,    -1,   798,    -1,    -1,    -1,    -1,  
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  
       -1,    -1,    -1,   846,   847,    -1,    -1,    -1,    -1,    -1,  
       -1,    -1,    -1,   810,   811,   812,   813,     3,     4,     5,  
        6,     7,     8,     9,    10,    11,    12,    13,    14,    15,  
       16,    17,    18,    19,    20,    21,    22,    23,    24,    25,  
       26,    27,    28,    29,    30,    31,    32,    33,    34,    35,  
       36,    37,    38,    39,    40,    41,    42,    43,    44,    45,  
       46,    47,    48,    49,    50,    51,    52,    53,    54,    55,  
       56,    57,    58,    59,    60,    61,    62,    63,    64,    65,  
       66,    67,    68,    69,    70,    71,    72,    73,    74,    75,  
       76,    77,    78,    79,    80,    81,    82,    83,    84,    85,  
       86,    87,    88,    89,    90,    91,    92,    93,    94,    95,  
       96,    97,    98,    99,   100,   101,   102,   103,   104,   105,  
      106,   107,   108,   109,   110,   111,   112,   113,   114,   115,  
      116,   117,   118,   119,   120,   121,   122,   123,   124,   125,  
      126,   127,   128,   129,   130,   131,   132,   133,   134,   135,  
      136,   137,   138,   139,   140,   141,   142,   143,   144,   145,  
      146,   147,   148,   149,   150,   151,   152,   153,   154,   155,  
      156,   157,   158,   159,   160,   161,   162,   163,   164,   165,  
      166,   167,   168,   169,   170,   171,   172,   173,   174,   175,  
      176,   177,   178,   179,   180,   181,   182,   183,   184,   185,  
      186,   187,   188,   189,   190,   191,   192,   193,   194,   195,  
      196,   197,   198,   199,   200,   201,   202,   203,   204,   205,  
      206,   207,   208,   209,   210,   211,   212,   213,   214,   215,  
      216,   217,   218,   219,   220,   221,   222,    -1,   224,     3,  
        4,     5,     6,     7,     8,     9,    10,    11,    12,    13,  
       14,    15,    16,    17,    18,    19,    20,    21,    22,    23,  
       24,    25,    26,    27,    28,    29,    30,    31,    32,    33,  
       34,    35,    36,    37,    38,    39,    40,    41,    42,    43,  
       44,    45,    46,    47,    48,    49,    50,    51,    52,    53,  
       54,    55,    56,    57,    58,    59,    60,    61,    62,    63,  
       64,    65,    66,    67,    68,    69,    70,    71,    72,    73,  
       74,    75,    76,    77,    78,    79,    80,    81,    82,    83,  
       84,    85,    86,    87,    88,    89,    90,    91,    92,    93,  
       94,    95,    96,    97,    98,    99,   100,   101,   102,   103,  
      104,   105,   106,   107,   108,   109,   110,   111,   112,   113,  
      114,   115,   116,   117,   118,   119,   120,   121,   122,   123,  
      124,   125,   126,   127,   128,   129,   130,   131,   132,   133,  
      134,   135,   136,   137,   138,   139,   140,   141,   142,   143,  
      144,   145,   146,   147,   148,   149,   150,   151,   152,   153,  
      154,   155,   156,   157,   158,   159,   160,   161,   162,   163,  
      164,   165,   166,   167,   168,   169,   170,   171,   172,   173,  
      174,   175,   176,   177,   178,   179,   180,   181,   182,   183,  
      184,   185,   186,   187,   188,   189,   190,   191,   192,   193,  
      194,   195,   196,   197,   198,   199,   200,   201,   202,   203,  
      204,   205,   206,   207,   208,   209,   210,   211,   212,   213,  
      214,   215,   216,   217,   218,   219,   220,   221,    -1,   223,  
      224,     3,     4,     5,     6,     7,     8,     9,    10,    11,  
       12,    13,    14,    15,    16,    17,    18,    19,    20,    21,  
       22,    23,    24,    25,    26,    27,    28,    29,    30,    31,  
       32,    33,    34,    35,    36,    37,    38,    39,    40,    41,  
       42,    43,    44,    45,    46,    47,    48,    49,    50,    51,  
       52,    53,    54,    55,    56,    57,    58,    59,    60,    61,  
       62,    63,    64,    65,    66,    67,    68,    69,    70,    71,  
       72,    73,    74,    75,    76,    77,    78,    79,    80,    81,  
       82,    83,    84,    85,    86,    87,    88,    89,    90,    91,  
       92,    93,    94,    95,    96,    97,    98,    99,   100,   101,  
      102,   103,   104,   105,   106,   107,   108,   109,   110,   111,  
      112,   113,   114,   115,   116,   117,   118,   119,   120,   121,  
      122,   123,   124,   125,   126,   127,   128,   129,   130,   131,  
      132,   133,   134,   135,   136,   137,   138,   139,   140,   141,  
      142,   143,   144,   145,   146,   147,   148,   149,   150,   151,  
      152,   153,   154,   155,   156,   157,   158,   159,   160,   161,  
      162,   163,   164,   165,   166,   167,   168,   169,   170,   171,  
      172,   173,   174,   175,   176,   177,   178,   179,   180,   181,  
      182,   183,   184,   185,   186,   187,   188,   189,   190,   191,  
      192,   193,   194,   195,   196,   197,   198,   199,   200,   201,  
      202,   203,   204,   205,   206,   207,   208,   209,   210,   211,  
      212,   213,   214,   215,   216,   217,   218,   219,   220,   221,  
       -1,    -1,   224,     3,     4,     5,     6,     7,     8,     9,  
       10,    11,    12,    13,    14,    15,    16,    17,    18,    19,  
       20,    21,    22,    23,    24,    25,    26,    27,    28,    29,  
       30,    31,    32,    33,    34,    35,    36,    37,    38,    39,  
       40,    41,    42,    43,    44,    45,    46,    47,    48,    49,  
       50,    51,    52,    53,    54,    55,    56,    57,    58,    59,  
       60,    61,    62,    63,    64,    65,    66,    67,    68,    69,  
       70,    71,    72,    73,    74,    75,    76,    77,    78,    79,  
       80,    81,    82,    83,    84,    85,    86,    87,    88,    89,  
       90,    91,    92,    93,    94,    95,    96,    97,    98,    99,  
      100,   101,   102,   103,   104,   105,   106,   107,   108,   109,  
      110,   111,   112,   113,   114,   115,   116,   117,   118,   119,  
      120,   121,   122,   123,   124,   125,   126,   127,   128,   129,  
      130,   131,   132,   133,   134,   135,   136,   137,   138,   139,  
      140,   141,   142,   143,   144,   145,   146,   147,   148,   149,  
      150,   151,   152,   153,   154,   155,   156,   157,   158,   159,  
      160,   161,   162,   163,   164,   165,   166,   167,   168,   169,  
      170,   171,   172,   173,   174,   175,   176,   177,   178,   179,  
      180,   181,   182,   183,   184,   185,   186,   187,   188,   189,  
      190,   191,   192,   193,   194,   195,   196,   197,   198,   199,  
      200,   201,   202,   203,   204,   205,   206,   207,   208,   209,  
      210,   211,   212,   213,   214,   215,   216,   217,   218,   219,  
      220,   221,    -1,    -1,   224,     3,     4,     5,     6,     7,  
        8,     9,    10,    11,    12,    13,    14,    15,    16,    17,  
       18,    19,    20,    21,    22,    23,    24,    25,    26,    27,  
       28,    29,    30,    31,    32,    33,    34,    35,    36,    37,  
       38,    39,    40,    41,    42,    43,    44,    45,    46,    47,  
       48,    49,    50,    51,    52,    53,    54,    55,    56,    57,  
       58,    59,    60,    61,    62,    63,    64,    65,    66,    67,  
       68,    69,    70,    71,    72,    73,    74,    75,    76,    77,  
       78,    79,    80,    81,    82,    83,    84,    85,    86,    87,  
       88,    89,    90,    91,    92,    93,    94,    95,    96,    97,  
       98,    99,   100,   101,   102,   103,   104,   105,   106,   107,  
      108,   109,   110,   111,   112,   113,   114,   115,   116,   117,  
      118,   119,   120,   121,   122,   123,   124,   125,   126,   127,  
      128,   129,   130,   131,   132,   133,   134,   135,   136,   137,  
      138,   139,   140,   141,   142,   143,   144,   145,   146,   147,  
      148,   149,   150,   151,   152,   153,   154,   155,   156,   157,  
      158,   159,   160,   161,   162,   163,   164,   165,   166,   167,  
      168,   169,   170,   171,   172,   173,   174,   175,   176,   177,  
      178,   179,   180,   181,   182,   183,   184,   185,   186,   187,  
      188,   189,   190,   191,   192,   193,   194,   195,   196,   197,  
      198,   199,   200,   201,   202,   203,   204,   205,   206,   207,  
      208,   209,   210,   211,   212,   213,   214,   215,   216,   217,  
      218,   219,   220,   221,   222,   223,     3,     4,     5,     6,  
        7,     8,     9,    10,    11,    12,    13,    14,    15,    16,  
       17,    18,    19,    20,    21,    22,    23,    24,    25,    26,  
       27,    28,    29,    30,    31,    32,    33,    34,    35,    36,  
       37,    38,    39,    40,    41,    42,    43,    44,    45,    46,  
       47,    48,    49,    50,    51,    52,    53,    54,    55,    56,  
       57,    58,    59,    60,    61,    62,    63,    64,    65,    66,  
1701        67,    68,    69,    70,    71,    72,    73,    74,    75,    76,        67,    68,    69,    70,    71,    72,    73,    74,    75,    76,
1702        77,    78,    79,    80,    81,    82,    83,    84,    85,    86,        77,    78,    79,    80,    81,    82,    83,    84,    85,    86,
1703        87,    88,    89,    90,    91,    92,    93,    94,    95,    96,        87,    88,    89,    90,    91,    92,    93,    94,    95,    96,
# Line 1656  static const short int yycheck[] = Line 1713  static const short int yycheck[] =
1713       187,   188,   189,   190,   191,   192,   193,   194,   195,   196,       187,   188,   189,   190,   191,   192,   193,   194,   195,   196,
1714       197,   198,   199,   200,   201,   202,   203,   204,   205,   206,       197,   198,   199,   200,   201,   202,   203,   204,   205,   206,
1715       207,   208,   209,   210,   211,   212,   213,   214,   215,   216,       207,   208,   209,   210,   211,   212,   213,   214,   215,   216,
1716       217,   218,   219,   220,   221,     3,     4,     5,     6,     7,       217,   218,   219,   220,   221,   222,   223,   224,   225,   226,
1717         227,   228,   229,   230,   231,   232,   233,   234,   235,   236,
1718         237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
1719         247,   248,   249,   250,   251,   252,   253,   254,   255,   256,
1720         257,   258,   259,   260,   261,   262,   263,   264,   265,   266,
1721         267,   268,   269
1722    };
1723    
1724    static const yytype_int16 yycheck[] =
1725    {
1726          15,    15,    17,    18,    19,    20,    21,    22,    23,    24,
1727          25,    26,    27,    28,    29,    30,    31,   691,   698,    58,
1728          59,    60,    61,    62,    63,    64,    65,    66,   465,   855,
1729         670,   277,   872,   281,   282,   527,   281,   282,     5,   285,
1730         286,   490,   491,    32,   493,    58,    59,    60,    61,    62,
1731          63,    64,    65,    66,   503,    33,    34,   288,   288,   508,
1732         686,   288,   875,   843,   877,     1,    37,     3,   505,    37,
1733          20,   277,   484,   866,    22,    21,    22,    27,   871,   285,
1734         286,   493,    23,    19,   290,    21,    22,    37,    34,    25,
1735          40,   503,    38,    23,    30,    31,   508,    27,    39,    35,
1736          36,    37,    19,    39,     9,    10,    11,    12,    13,    14,
1737          15,    16,    17,    18,    31,    23,    23,    22,    89,    19,
1738          37,    89,    20,    40,    20,    21,    23,    32,    19,    36,
1739          21,    31,    23,    21,    22,    31,    34,    27,    21,    36,
1740          31,    37,    38,    23,    40,    19,    37,    38,    31,    39,
1741          38,   474,   475,   476,   477,   478,   479,   480,   481,   482,
1742         483,    22,   485,   486,   487,   488,    19,    30,    21,    34,
1743          23,    39,    37,    34,   666,    38,   668,   669,    31,     6,
1744          22,   994,     9,    10,    11,    12,    13,    14,    15,    16,
1745          17,    18,    34,    19,    19,    21,    34,    30,    23,    37,
1746          32,  1014,  1015,    36,    27,    31,    31,   699,   988,    31,
1747          33,   280,    23,   839,   283,    37,   708,   709,   710,   711,
1748         712,   713,   714,   715,   716,   717,   718,   719,     0,    31,
1749         679,    21,   681,   222,   223,    37,    34,    27,    34,    37,
1750         224,    37,   473,   473,   222,   223,   473,     9,    10,    11,
1751          12,    13,    14,    15,    16,    17,    18,   224,   225,   226,
1752          23,   698,   225,   226,   512,    22,   512,   512,    39,    40,
1753          39,    40,    21,    22,   289,    23,   725,   222,   223,   318,
1754          38,   320,   321,   322,   323,   324,   325,   326,   327,   225,
1755         226,     6,    21,    22,     9,    10,    11,    12,    13,    14,
1756          15,    16,    17,    18,   873,   874,   539,   540,   287,   288,
1757         984,    37,    37,   987,   278,   279,     6,    19,  1144,     9,
1758          10,    11,    12,    13,    14,    15,    16,    17,    18,   344,
1759          34,    27,    20,   225,    31,    21,    31,   352,    19,    19,
1760          38,   833,    33,   358,    38,   360,   361,   362,   363,   364,
1761         990,   366,    22,   368,   369,   370,   371,   372,    23,   374,
1762         375,   376,   854,  1203,   379,    38,   381,    23,    37,   384,
1763          19,    39,    26,   388,   389,    27,   391,   392,     9,    10,
1764          11,    12,    13,    14,    15,    16,    17,    18,   403,    26,
1765          32,    27,   407,   408,    23,   410,   411,  1077,    33,    27,
1766          27,   416,   417,   418,   419,   420,   421,   422,    27,    39,
1767          26,    32,    27,    39,    21,    27,    39,    26,   867,     7,
1768         8,     9,    10,    11,    12,    13,    14,    15,    16,    17,         8,     9,    10,    11,    12,    13,    14,    15,    16,    17,
1769        18,    19,    20,    21,    22,    23,    24,    25,    26,    27,        18,   446,    27,    38,   449,    33,    33,    36,    38,    40,
1770        28,    29,    30,    31,    32,    33,    34,    35,    36,    37,        36,    21,    21,   880,    38,    34,    15,     9,    10,    11,
1771        38,    39,    40,    41,    42,    43,    44,    45,    46,    47,        12,    13,    14,    15,    16,    17,    18,    19,    22,    20,
1772        48,    49,    50,    51,    52,    53,    54,    55,    56,    57,        19,    19,    22,    19,    36,    38,    37,    22,    25,    22,
1773        58,    59,    60,    61,    62,    63,    64,    65,    66,    67,       484,    22,    22,    27,    22,    22,   490,   491,    19,   493,
1774        68,    69,    70,    71,    72,    73,    74,    75,    76,    77,        22,    26,    22,    22,   498,   499,    32,    24,    19,   503,
1775        78,    79,    80,    81,    82,    83,    84,    85,    86,    87,        23,    27,    26,    37,   508,    38,    23,    32,    36,   513,
1776        88,    89,    90,    91,    92,    93,    94,    95,    96,    97,       514,   515,   516,    33,   518,    27,    38,    36,    27,    37,
1777        98,    99,   100,   101,   102,   103,   104,   105,   106,   107,        27,    32,  1004,    27,    27,    40,    19,    32,    30,    27,
1778       108,   109,   110,   111,   112,   113,   114,   115,   116,   117,        27,    27,    27,    27,   539,   540,   565,   566,   567,   568,
1779       118,   119,   120,   121,   122,   123,   124,   125,   126,   127,       569,   570,   571,   572,   573,    32,   551,   552,   553,   554,
1780       128,   129,   130,   131,   132,   133,   134,   135,   136,   137,       555,   556,   557,   558,   559,   560,   561,   562,   563,   564,
1781       138,   139,   140,   141,   142,   143,   144,   145,   146,   147,        27,    38,   565,   566,   567,   568,   569,   570,   571,   572,
1782       148,   149,   150,   151,   152,   153,   154,   155,   156,   157,       573,    33,    27,   578,   579,   580,    33,    27,   583,   584,
1783       158,   159,   160,   161,   162,   163,   164,   165,   166,   167,        39,    33,    33,    19,    24,   590,   591,    32,   271,    21,
1784       168,   169,   170,   171,   172,   173,   174,   175,   176,   177,        23,    19,    21,    27,    43,    21,    33,   602,    89,   604,
1785       178,   179,   180,   181,   182,   183,   184,   185,   186,   187,        89,   606,    32,    30,    23,    89,    24,    32,    32,    30,
1786       188,   189,   190,   191,   192,   193,   194,   195,   196,   197,        30,    89,    22,    89,    89,   620,   621,   622,   623,   624,
1787       198,   199,   200,   201,   202,   203,   204,   205,   206,   207,       625,   626,   627,   628,   629,   630,   631,   632,   633,   634,
1788       208,   209,   210,   211,   212,   213,   214,   215,   216,   217,       635,    33,   637,    33,    32,    36,    32,    22,    33,    38,
1789       218,   219,   220,   221,     3,     4,     5,     6,     7,     8,        30,    89,    30,    23,    31,    23,    32,    19,    30,    23,
1790         9,    10,    11,    12,    13,    14,    15,    16,    17,    18,      1077,   656,   657,    20,    23,    36,    27,    19,    89,    23,
1791        19,    20,    21,    22,    23,    24,    25,    26,    27,    28,        23,    27,    23,    36,    43,    33,    89,   671,    27,    27,
1792        29,    30,    31,    32,    33,    34,    35,    36,    37,    38,       674,   675,   676,   677,    89,   679,    27,   681,    89,   683,
1793        39,    40,    41,    42,    43,    44,    45,    46,    47,    48,        23,   685,   686,    27,    39,    89,    89,    27,    27,    27,
1794        49,    50,    51,    52,    53,    54,    55,    56,    57,    58,        23,    33,    39,   697,    23,    36,    23,    31,    30,    23,
1795        59,    60,    61,    62,    63,    64,    65,    66,    67,    68,        89,    27,    30,    33,    20,    89,    89,    32,    30,    32,
1796        69,    70,    71,    72,    73,    74,    75,    76,    77,    78,        23,    21,    89,    32,    32,    36,    33,   721,    32,   723,
1797        79,    80,    81,    82,    83,    84,    85,    86,    87,    88,        40,   725,    33,    38,    30,    32,    31,    31,    40,    32,
1798        89,    90,    91,    92,    93,    94,    95,    96,    97,    98,       289,    33,    33,    31,    30,    30,    89,    20,    37,    39,
1799        99,   100,   101,   102,   103,   104,   105,   106,   107,   108,        30,    33,    21,    37,    37,   750,    37,    34,     5,    23,
1800       109,   110,   111,   112,   113,   114,   115,   116,   117,   118,        39,    39,   757,    33,   759,   760,   761,    39,   763,   764,
1801       119,   120,   121,   122,   123,   124,   125,   126,   127,   128,        27,    23,   445,   768,    23,   770,    24,   772,    33,    19,
1802       129,   130,   131,   132,   133,   134,   135,   136,   137,   138,        21,    23,    33,    33,    38,    38,    23,    23,    27,   784,
1803       139,   140,   141,   142,   143,   144,   145,   146,   147,   148,        89,   786,    37,    39,    38,    38,    24,    32,    22,    33,
1804       149,   150,   151,   152,   153,   154,   155,   156,   157,   158,       795,   796,   797,   798,   799,   800,   801,   802,   803,   804,
1805       159,   160,   161,   162,   163,   164,   165,   166,   167,   168,       805,   806,    38,   808,    89,   810,    38,   812,    39,    38,
1806       169,   170,   171,   172,   173,   174,   175,   176,   177,   178,        32,    39,    38,    38,    32,    39,    27,    32,    27,   848,
1807       179,   180,   181,   182,   183,   184,   185,   186,   187,   188,        33,    89,    39,    21,    36,    39,    34,    32,    38,    36,
1808       189,   190,   191,   192,   193,   194,   195,   196,   197,   198,        36,   835,   836,   837,  1261,   839,   840,    36,   842,   843,
1809       199,   200,   201,   202,   203,   204,   205,   206,   207,   208,        34,    38,   525,   872,   848,    34,   875,    38,   877,    36,
1810       209,   210,   211,   212,   213,   214,   215,   216,   217,   218,        38,   855,    19,    34,    38,    19,    30,    23,    33,   863,
1811       219,   220,   221,     3,     4,     5,     6,     7,     8,     9,       864,    32,   866,   867,   868,   869,    23,   871,   872,   873,
1812        10,    11,    12,    13,    14,    15,    16,    17,    18,    19,       874,   875,    21,   877,    39,    23,    32,    39,    39,    39,
1813        20,    21,    22,    23,    24,    25,    26,    27,    28,    29,        38,    24,    33,    27,    39,   914,   915,   446,    89,    39,
1814        30,    31,    32,    33,    34,    35,    36,    37,    38,    39,        30,   920,    39,    89,   899,   900,  1323,   902,   903,   904,
1815        40,    41,    42,    43,    44,    45,    46,    47,    48,    49,        39,    39,   907,    89,    39,    38,    89,   590,   591,    39,
1816        50,    51,    52,    53,    54,    55,    56,    57,    58,    59,        39,   914,   915,    30,    39,    23,    32,    38,    31,    38,
1817        60,    61,    62,    63,    64,    65,    66,    67,    68,    69,        32,    39,    31,    19,   607,   930,    89,   956,   957,    31,
1818        70,    71,    72,    73,    74,    75,    76,    77,    78,    79,        31,    38,    22,   938,    38,    22,    31,   496,   497,    38,
1819        80,    81,    82,    83,    84,    85,    86,    87,    88,    89,        34,    38,    30,    32,    89,    23,    39,   506,    33,    22,
1820        90,    91,    92,    93,    94,    95,    96,    97,    98,    99,       955,    25,    38,   956,   957,    89,   639,    22,    33,   518,
1821       100,   101,   102,   103,   104,   105,   106,   107,   108,   109,        23,    21,    23,    25,    23,   994,   995,   996,   997,   998,
1822       110,   111,   112,   113,   114,   115,   116,   117,   118,   119,        23,    23,    23,    23,    89,    89,    33,    21,    89,    89,
1823       120,   121,   122,   123,   124,   125,   126,   127,   128,   129,       539,   540,    37,    39,   988,  1014,  1015,    32,    27,    38,
1824       130,   131,   132,   133,   134,   135,   136,   137,   138,   139,       994,    38,    27,   997,    27,   998,    27,    40,    36,    33,
1825       140,   141,   142,   143,   144,   145,   146,   147,   148,   149,        32,    23,    32,    32,    22,    22,  1010,    33,    32,  1013,
1826       150,   151,   152,   153,   154,   155,   156,   157,   158,   159,      1014,  1015,    40,  1042,  1043,    40,  1045,    40,    38,    38,
1827       160,   161,   162,   163,   164,   165,   166,   167,   168,   169,        36,    33,    32,    89,    27,    40,    39,    38,    23,    38,
1828       170,   171,   172,   173,   174,   175,   176,   177,   178,   179,        38,    38,  1037,    27,    23,    27,    38,    23,    26,  1042,
1829       180,   181,   182,   183,   184,   185,   186,   187,   188,   189,      1043,    38,    27,    89,    26,    43,    33,    89,    39,    19,
1830       190,   191,   192,   193,   194,   195,   196,   197,   198,   199,        40,    27,  1081,  1082,  1059,    23,    27,    21,    23,    32,
1831       200,   201,   202,   203,   204,   205,   206,   207,   208,   209,        37,    40,    89,    21,    21,    40,    19,    21,    89,    19,
1832       210,   211,   212,   213,   214,   215,   216,   217,   218,   219,        36,    40,    34,    32,   757,   758,    31,    40,    27,    23,
1833       220,   221,     3,     4,     5,     6,     7,     8,     9,    10,       763,    32,    34,    23,   767,    33,    27,    32,    31,    36,
1834        1094,    37,    27,    23,   777,    31,    38,   656,   657,    32,
1835          27,    23,    26,    32,    43,    23,    38,  1112,    19,    32,
1836          38,   670,    21,   672,   673,    23,    19,    34,    39,   678,
1837          19,    37,    89,   682,   807,    32,   809,    23,    89,    21,
1838          21,   690,   691,    19,    32,    19,    21,    34,    32,    34,
1839        1144,    23,    23,    36,  1010,    23,    34,    23,    38,    36,
1840          39,    89,    31,    36,    34,    89,    23,    34,    23,    34,
1841          32,   720,    23,   722,    23,    34,    30,    37,    19,  1174,
1842          89,    19,    38,    19,  1203,    37,    30,    22,    19,    37,
1843          32,    30,    39,    89,    89,    89,    36,    34,    31,    42,
1844          23,    27,    34,    23,    19,    34,    36,    19,    22,  1203,
1845          38,    19,    23,    31,    19,    37,    19,    30,    19,    36,
1846          36,    31,    19,    22,    30,    89,   899,    27,    23,    38,
1847         903,    38,    36,    31,    36,    23,    32,  1232,    23,    19,
1848         913,    23,    19,    36,    31,   918,    40,    38,    22,    32,
1849          36,    23,    31,    31,    38,    23,    27,    23,    23,    23,
1850          23,  1203,    89,    38,    40,    38,    36,    36,   941,    26,
1851          23,    38,    23,    33,    36,    23,    23,    38,    37,    37,
1852          36,   954,    36,    22,    36,   834,    36,  1013,  1323,   838,
1853        1094,   964,   880,   966,   997,  1290,   286,   283,   847,   288,
1854         283,    50,   512,   512,    -1,    -1,    -1,    -1,    -1,   283,
1855          -1,    -1,    -1,   284,    -1,   288,   865,    -1,   286,   283,
1856          -1,   870,    -1,    -1,   873,   874,   288,   876,    -1,   878,
1857          -1,    -1,    -1,   283,    -1,    -1,    -1,   283,    -1,    -1,
1858          -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
1859          -1,    -1,    -1,    -1,    -1,    -1,   283,    -1,    -1,  1032,
1860        1033,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
1861          -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
1862          -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
1863          -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
1864          -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
1865          -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
1866          -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
1867          -1,    -1,    -1,    -1,    -1,   984,   985,   986,   987,    -1,
1868          -1,   990,     3,     4,     5,     6,     7,     8,     9,    10,
1869        11,    12,    13,    14,    15,    16,    17,    18,    19,    20,        11,    12,    13,    14,    15,    16,    17,    18,    19,    20,
1870        21,    22,    23,    24,    25,    26,    27,    28,    29,    30,        21,    22,    23,    24,    25,    26,    27,    28,    29,    30,
1871        31,    32,    33,    34,    35,    36,    37,    38,    39,    40,        31,    32,    33,    34,    35,    36,    37,    38,    39,    40,
# Line 1744  static const short int yycheck[] = Line 1887  static const short int yycheck[] =
1887       191,   192,   193,   194,   195,   196,   197,   198,   199,   200,       191,   192,   193,   194,   195,   196,   197,   198,   199,   200,
1888       201,   202,   203,   204,   205,   206,   207,   208,   209,   210,       201,   202,   203,   204,   205,   206,   207,   208,   209,   210,
1889       211,   212,   213,   214,   215,   216,   217,   218,   219,   220,       211,   212,   213,   214,   215,   216,   217,   218,   219,   220,
1890       221,     3,     4,     5,     6,     7,     8,     9,    10,    11,       221,   222,    -1,   224,     3,     4,     5,     6,     7,     8,
1891           9,    10,    11,    12,    13,    14,    15,    16,    17,    18,
1892          19,    20,    21,    22,    23,    24,    25,    26,    27,    28,
1893          29,    30,    31,    32,    33,    34,    35,    36,    37,    38,
1894          39,    40,    41,    42,    43,    44,    45,    46,    47,    48,
1895          49,    50,    51,    52,    53,    54,    55,    56,    57,    58,
1896          59,    60,    61,    62,    63,    64,    65,    66,    67,    68,
1897          69,    70,    71,    72,    73,    74,    75,    76,    77,    78,
1898          79,    80,    81,    82,    83,    84,    85,    86,    87,    88,
1899          89,    90,    91,    92,    93,    94,    95,    96,    97,    98,
1900          99,   100,   101,   102,   103,   104,   105,   106,   107,   108,
1901         109,   110,   111,   112,   113,   114,   115,   116,   117,   118,
1902         119,   120,   121,   122,   123,   124,   125,   126,   127,   128,
1903         129,   130,   131,   132,   133,   134,   135,   136,   137,   138,
1904         139,   140,   141,   142,   143,   144,   145,   146,   147,   148,
1905         149,   150,   151,   152,   153,   154,   155,   156,   157,   158,
1906         159,   160,   161,   162,   163,   164,   165,   166,   167,   168,
1907         169,   170,   171,   172,   173,   174,   175,   176,   177,   178,
1908         179,   180,   181,   182,   183,   184,   185,   186,   187,   188,
1909         189,   190,   191,   192,   193,   194,   195,   196,   197,   198,
1910         199,   200,   201,   202,   203,   204,   205,   206,   207,   208,
1911         209,   210,   211,   212,   213,   214,   215,   216,   217,   218,
1912         219,   220,   221,    -1,   223,   224,     3,     4,     5,     6,
1913           7,     8,     9,    10,    11,    12,    13,    14,    15,    16,
1914          17,    18,    19,    20,    21,    22,    23,    24,    25,    26,
1915          27,    28,    29,    30,    31,    32,    33,    34,    35,    36,
1916          37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
1917          47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
1918          57,    58,    59,    60,    61,    62,    63,    64,    65,    66,
1919          67,    68,    69,    70,    71,    72,    73,    74,    75,    76,
1920          77,    78,    79,    80,    81,    82,    83,    84,    85,    86,
1921          87,    88,    89,    90,    91,    92,    93,    94,    95,    96,
1922          97,    98,    99,   100,   101,   102,   103,   104,   105,   106,
1923         107,   108,   109,   110,   111,   112,   113,   114,   115,   116,
1924         117,   118,   119,   120,   121,   122,   123,   124,   125,   126,
1925         127,   128,   129,   130,   131,   132,   133,   134,   135,   136,
1926         137,   138,   139,   140,   141,   142,   143,   144,   145,   146,
1927         147,   148,   149,   150,   151,   152,   153,   154,   155,   156,
1928         157,   158,   159,   160,   161,   162,   163,   164,   165,   166,
1929         167,   168,   169,   170,   171,   172,   173,   174,   175,   176,
1930         177,   178,   179,   180,   181,   182,   183,   184,   185,   186,
1931         187,   188,   189,   190,   191,   192,   193,   194,   195,   196,
1932         197,   198,   199,   200,   201,   202,   203,   204,   205,   206,
1933         207,   208,   209,   210,   211,   212,   213,   214,   215,   216,
1934         217,   218,   219,   220,   221,    -1,    -1,   224,     3,     4,
1935           5,     6,     7,     8,     9,    10,    11,    12,    13,    14,
1936          15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
1937          25,    26,    27,    28,    29,    30,    31,    32,    33,    34,
1938          35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
1939          45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
1940          55,    56,    57,    58,    59,    60,    61,    62,    63,    64,
1941          65,    66,    67,    68,    69,    70,    71,    72,    73,    74,
1942          75,    76,    77,    78,    79,    80,    81,    82,    83,    84,
1943          85,    86,    87,    88,    89,    90,    91,    92,    93,    94,
1944          95,    96,    97,    98,    99,   100,   101,   102,   103,   104,
1945         105,   106,   107,   108,   109,   110,   111,   112,   113,   114,
1946         115,   116,   117,   118,   119,   120,   121,   122,   123,   124,
1947         125,   126,   127,   128,   129,   130,   131,   132,   133,   134,
1948         135,   136,   137,   138,   139,   140,   141,   142,   143,   144,
1949         145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
1950         155,   156,   157,   158,   159,   160,   161,   162,   163,   164,
1951         165,   166,   167,   168,   169,   170,   171,   172,   173,   174,
1952         175,   176,   177,   178,   179,   180,   181,   182,   183,   184,
1953         185,   186,   187,   188,   189,   190,   191,   192,   193,   194,
1954         195,   196,   197,   198,   199,   200,   201,   202,   203,   204,
1955         205,   206,   207,   208,   209,   210,   211,   212,   213,   214,
1956         215,   216,   217,   218,   219,   220,   221,    -1,    -1,   224,
1957           3,     4,     5,     6,     7,     8,     9,    10,    11,    12,
1958          13,    14,    15,    16,    17,    18,    19,    20,    21,    22,
1959          23,    24,    25,    26,    27,    28,    29,    30,    31,    32,
1960          33,    34,    35,    36,    37,    38,    39,    40,    41,    42,
1961          43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
1962          53,    54,    55,    56,    57,    58,    59,    60,    61,    62,
1963          63,    64,    65,    66,    67,    68,    69,    70,    71,    72,
1964          73,    74,    75,    76,    77,    78,    79,    80,    81,    82,
1965          83,    84,    85,    86,    87,    88,    89,    90,    91,    92,
1966          93,    94,    95,    96,    97,    98,    99,   100,   101,   102,
1967         103,   104,   105,   106,   107,   108,   109,   110,   111,   112,
1968         113,   114,   115,   116,   117,   118,   119,   120,   121,   122,
1969         123,   124,   125,   126,   127,   128,   129,   130,   131,   132,
1970         133,   134,   135,   136,   137,   138,   139,   140,   141,   142,
1971         143,   144,   145,   146,   147,   148,   149,   150,   151,   152,
1972         153,   154,   155,   156,   157,   158,   159,   160,   161,   162,
1973         163,   164,   165,   166,   167,   168,   169,   170,   171,   172,
1974         173,   174,   175,   176,   177,   178,   179,   180,   181,   182,
1975         183,   184,   185,   186,   187,   188,   189,   190,   191,   192,
1976         193,   194,   195,   196,   197,   198,   199,   200,   201,   202,
1977         203,   204,   205,   206,   207,   208,   209,   210,   211,   212,
1978         213,   214,   215,   216,   217,   218,   219,   220,   221,   222,
1979         223,     3,     4,     5,     6,     7,     8,     9,    10,    11,
1980        12,    13,    14,    15,    16,    17,    18,    19,    20,    21,        12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
1981        22,    23,    24,    25,    26,    27,    28,    29,    30,    31,        22,    23,    24,    25,    26,    27,    28,    29,    30,    31,
1982        32,    33,    34,    35,    36,    37,    38,    39,    40,    41,        32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
# Line 1809  static const short int yycheck[] = Line 2041  static const short int yycheck[] =
2041       184,   185,   186,   187,   188,   189,   190,   191,   192,   193,       184,   185,   186,   187,   188,   189,   190,   191,   192,   193,
2042       194,   195,   196,   197,   198,   199,   200,   201,   202,   203,       194,   195,   196,   197,   198,   199,   200,   201,   202,   203,
2043       204,   205,   206,   207,   208,   209,   210,   211,   212,   213,       204,   205,   206,   207,   208,   209,   210,   211,   212,   213,
2044       214,   215,   216,   217,   218,   219,   220,   221       214,   215,   216,   217,   218,   219,   220,   221,     3,     4,
2045  };         5,     6,     7,     8,     9,    10,    11,    12,    13,    14,
2046          15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
2047  /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing        25,    26,    27,    28,    29,    30,    31,    32,    33,    34,
2048     symbol of state STATE-NUM.  */        35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
2049  static const unsigned short int yystos[] =        45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
2050  {        55,    56,    57,    58,    59,    60,    61,    62,    63,    64,
2051         0,     1,     3,    18,    20,    21,    24,    29,    34,    35,        65,    66,    67,    68,    69,    70,    71,    72,    73,    74,
2052        36,    38,   228,   229,   230,   231,   269,   270,   271,   272,        75,    76,    77,    78,    79,    80,    81,    82,    83,    84,
2053       273,   274,   277,   278,   279,   280,   281,   314,   317,    21,        85,    86,    87,    88,    89,    90,    91,    92,    93,    94,
2054        35,    22,    22,    26,    32,    38,    22,    22,    38,    31,        95,    96,    97,    98,    99,   100,   101,   102,   103,   104,
2055         0,   225,   226,   267,   268,     3,     4,     5,     6,     7,       105,   106,   107,   108,   109,   110,   111,   112,   113,   114,
2056         115,   116,   117,   118,   119,   120,   121,   122,   123,   124,
2057         125,   126,   127,   128,   129,   130,   131,   132,   133,   134,
2058         135,   136,   137,   138,   139,   140,   141,   142,   143,   144,
2059         145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
2060         155,   156,   157,   158,   159,   160,   161,   162,   163,   164,
2061         165,   166,   167,   168,   169,   170,   171,   172,   173,   174,
2062         175,   176,   177,   178,   179,   180,   181,   182,   183,   184,
2063         185,   186,   187,   188,   189,   190,   191,   192,   193,   194,
2064         195,   196,   197,   198,   199,   200,   201,   202,   203,   204,
2065         205,   206,   207,   208,   209,   210,   211,   212,   213,   214,
2066         215,   216,   217,   218,   219,   220,   221,     3,     4,     5,
2067           6,     7,     8,     9,    10,    11,    12,    13,    14,    15,
2068          16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
2069          26,    27,    28,    29,    30,    31,    32,    33,    34,    35,
2070          36,    37,    38,    39,    40,    41,    42,    43,    44,    45,
2071          46,    47,    48,    49,    50,    51,    52,    53,    54,    55,
2072          56,    57,    58,    59,    60,    61,    62,    63,    64,    65,
2073          66,    67,    68,    69,    70,    71,    72,    73,    74,    75,
2074          76,    77,    78,    79,    80,    81,    82,    83,    84,    85,
2075          86,    87,    88,    89,    90,    91,    92,    93,    94,    95,
2076          96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
2077         106,   107,   108,   109,   110,   111,   112,   113,   114,   115,
2078         116,   117,   118,   119,   120,   121,   122,   123,   124,   125,
2079         126,   127,   128,   129,   130,   131,   132,   133,   134,   135,
2080         136,   137,   138,   139,   140,   141,   142,   143,   144,   145,
2081         146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
2082         156,   157,   158,   159,   160,   161,   162,   163,   164,   165,
2083         166,   167,   168,   169,   170,   171,   172,   173,   174,   175,
2084         176,   177,   178,   179,   180,   181,   182,   183,   184,   185,
2085         186,   187,   188,   189,   190,   191,   192,   193,   194,   195,
2086         196,   197,   198,   199,   200,   201,   202,   203,   204,   205,
2087         206,   207,   208,   209,   210,   211,   212,   213,   214,   215,
2088         216,   217,   218,   219,   220,   221,     3,     4,     5,     6,
2089           7,     8,     9,    10,    11,    12,    13,    14,    15,    16,
2090          17,    18,    19,    20,    21,    22,    23,    24,    25,    26,
2091          27,    28,    29,    30,    31,    32,    33,    34,    35,    36,
2092          37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
2093          47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
2094          57,    58,    59,    60,    61,    62,    63,    64,    65,    66,
2095          67,    68,    69,    70,    71,    72,    73,    74,    75,    76,
2096          77,    78,    79,    80,    81,    82,    83,    84,    85,    86,
2097          87,    88,    89,    90,    91,    92,    93,    94,    95,    96,
2098          97,    98,    99,   100,   101,   102,   103,   104,   105,   106,
2099         107,   108,   109,   110,   111,   112,   113,   114,   115,   116,
2100         117,   118,   119,   120,   121,   122,   123,   124,   125,   126,
2101         127,   128,   129,   130,   131,   132,   133,   134,   135,   136,
2102         137,   138,   139,   140,   141,   142,   143,   144,   145,   146,
2103         147,   148,   149,   150,   151,   152,   153,   154,   155,   156,
2104         157,   158,   159,   160,   161,   162,   163,   164,   165,   166,
2105         167,   168,   169,   170,   171,   172,   173,   174,   175,   176,
2106         177,   178,   179,   180,   181,   182,   183,   184,   185,   186,
2107         187,   188,   189,   190,   191,   192,   193,   194,   195,   196,
2108         197,   198,   199,   200,   201,   202,   203,   204,   205,   206,
2109         207,   208,   209,   210,   211,   212,   213,   214,   215,   216,
2110         217,   218,   219,   220,   221,     3,     4,     5,     6,     7,
2111         8,     9,    10,    11,    12,    13,    14,    15,    16,    17,         8,     9,    10,    11,    12,    13,    14,    15,    16,    17,
2112        18,    19,    20,    21,    22,    23,    24,    25,    26,    27,        18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
2113        28,    29,    30,    31,    32,    33,    34,    35,    36,    37,        28,    29,    30,    31,    32,    33,    34,    35,    36,    37,
# Line 1842  static const unsigned short int yystos[] Line 2129  static const unsigned short int yystos[]
2129       188,   189,   190,   191,   192,   193,   194,   195,   196,   197,       188,   189,   190,   191,   192,   193,   194,   195,   196,   197,
2130       198,   199,   200,   201,   202,   203,   204,   205,   206,   207,       198,   199,   200,   201,   202,   203,   204,   205,   206,   207,
2131       208,   209,   210,   211,   212,   213,   214,   215,   216,   217,       208,   209,   210,   211,   212,   213,   214,   215,   216,   217,
2132       218,   219,   220,   221,   224,   258,   261,   262,   263,   266,       218,   219,   220,   221,     3,     4,     5,     6,     7,     8,
2133       266,   266,   266,   266,   266,   266,   266,   266,   266,   266,         9,    10,    11,    12,    13,    14,    15,    16,    17,    18,
2134       266,   266,    21,    22,    36,    37,    36,    18,    26,    30,        19,    20,    21,    22,    23,    24,    25,    26,    27,    28,
2135        36,    29,    37,    19,    36,   267,     8,     9,    10,    11,        29,    30,    31,    32,    33,    34,    35,    36,    37,    38,
2136        12,    13,    14,    15,    16,    17,   260,   261,   260,   260,        39,    40,    41,    42,    43,    44,    45,    46,    47,    48,
2137       260,   260,   260,   260,   260,   260,     3,     8,     9,    10,        49,    50,    51,    52,    53,    54,    55,    56,    57,    58,
2138        11,    12,    13,    14,    15,    16,    17,   263,    20,   282,        59,    60,    61,    62,    63,    64,    65,    66,    67,    68,
2139        18,    20,    22,    30,   234,   282,   283,   284,   285,   291,        69,    70,    71,    72,    73,    74,    75,    76,    77,    78,
2140       293,   294,   295,   296,   297,   298,   300,   302,   303,   304,        79,    80,    81,    82,    83,    84,    85,    86,    87,    88,
2141       305,   306,   307,    18,    30,   236,   294,   304,   237,   294,        89,    90,    91,    92,    93,    94,    95,    96,    97,    98,
2142       304,    18,    20,    30,   242,   285,   293,   303,    26,   238,        99,   100,   101,   102,   103,   104,   105,   106,   107,   108,
2143       290,   291,   282,    18,    22,    30,   235,   282,   292,   297,       109,   110,   111,   112,   113,   114,   115,   116,   117,   118,
2144       301,   302,   316,    19,    26,    30,    36,    39,   232,   285,       119,   120,   121,   122,   123,   124,   125,   126,   127,   128,
2145       286,   287,   288,   289,   315,   233,   285,   286,   287,   288,       129,   130,   131,   132,   133,   134,   135,   136,   137,   138,
2146       289,   315,   258,   264,   266,   282,    18,    37,    37,    21,       139,   140,   141,   142,   143,   144,   145,   146,   147,   148,
2147        37,    32,    22,    22,    36,    38,   261,    25,    38,    39,       149,   150,   151,   152,   153,   154,   155,   156,   157,   158,
2148        25,    31,    26,   266,   266,   266,   266,   266,   266,   266,       159,   160,   161,   162,   163,   164,   165,   166,   167,   168,
2149       266,   266,   266,   266,   266,    38,    26,   266,   266,   266,       169,   170,   171,   172,   173,   174,   175,   176,   177,   178,
2150       266,    38,    25,    26,    31,   266,   266,   266,    38,    20,       179,   180,   181,   182,   183,   184,   185,   186,   187,   188,
2151        26,   266,   266,   266,   266,   266,   266,    38,    31,    26,       189,   190,   191,   192,   193,   194,   195,   196,   197,   198,
2152        37,    32,   258,   266,   266,    37,    35,    39,    37,    20,       199,   200,   201,   202,   203,   204,   205,   206,   207,   208,
2153        20,    19,    18,    21,    18,    18,    24,    21,   286,   287,       209,   210,   211,   212,   213,   214,   215,   216,   217,   218,
2154       288,   289,   286,   286,   286,   286,   286,   286,   286,   286,       219,   220,   221
      286,   286,   286,    21,    21,   258,   258,     9,    10,    11,  
       12,    13,    14,    15,    16,    17,   262,   262,    21,    18,  
       21,    36,    31,   222,   223,   243,   255,   265,   276,   244,  
      254,   258,   252,   262,    21,    25,    21,    18,    30,    39,  
      239,   294,   298,   299,   304,   307,   308,   309,   310,   311,  
      262,   262,   262,   262,   257,   258,   262,    23,    23,    36,  
       35,    26,   252,    22,    32,    22,    37,    35,    36,    31,  
       26,    26,    31,    26,    26,   266,   266,   266,   266,   266,  
      266,   266,   266,   266,   266,   266,   266,   266,   266,   266,  
       26,    26,   266,   266,    26,    31,    26,    37,    32,   264,  
      264,   266,   266,   266,    26,    32,    26,    38,    26,    32,  
      266,   266,   266,   266,   266,   266,   266,   266,   266,   266,  
      266,   266,   266,    23,    32,    20,    22,    20,    42,    26,  
       20,    31,    32,    29,    31,    31,    89,   252,    19,    33,  
      241,   312,   313,   252,   252,   254,   262,   258,   258,   262,  
      262,   262,   262,   258,   258,   262,    32,    89,   240,   258,  
      240,    32,    31,    89,    35,    31,   222,   223,   253,   262,  
      255,   252,    32,    89,    21,    21,    29,   252,   252,   252,  
      252,   252,   252,   252,   252,   252,   258,   262,   258,   262,  
       22,    22,    18,    22,    19,    35,    22,    89,    18,    22,  
       22,    26,    42,    22,   266,   266,   266,   266,   266,   266,  
      266,    89,    26,   266,     4,    89,    22,    26,    38,    89,  
      266,   266,    89,    26,    26,    26,    38,   266,   266,   266,  
      266,   266,   266,   266,   266,   266,     4,   266,     4,   266,  
       35,    29,    30,    89,    22,    26,    29,    32,    19,    29,  
       31,    37,    35,   252,   258,   262,   262,   262,   258,   262,  
       32,    31,   258,     6,     7,   256,   258,   259,   260,   261,  
      262,   265,    32,    29,    31,    30,    30,   252,   253,    32,  
       31,    32,    89,    30,   245,   262,   246,   262,   247,   258,  
      245,   248,   262,    18,   249,   262,   275,   250,   258,   245,  
        6,     7,   251,   259,   262,   256,   258,   256,   258,    89,  
       29,    89,    20,    19,    38,    29,    36,    33,    22,    20,  
      266,   266,   266,   266,    38,    33,     4,   260,   260,     5,  
       38,    33,    22,    32,   266,    38,    33,    89,    26,    22,  
      266,    29,   266,     4,     4,    23,    18,    20,    32,    22,  
       37,    22,    38,    36,    22,   240,   258,   258,   240,    37,  
       38,   256,     5,     5,   260,    37,    38,    31,    21,   252,  
       37,    38,    32,    31,   246,    29,   248,   256,   256,    26,  
       31,    32,    38,    33,    89,    37,    31,    33,    37,   260,  
      260,    33,    37,    37,    18,    33,    37,    38,    33,   266,  
       29,    22,    38,    31,    38,    18,    22,    30,    89,    37,  
       38,    89,    38,    89,    29,    38,    89,    37,    38,   249,  
       29,    32,    31,    37,    37,    38,    31,    26,    21,    33,  
       18,    37,    21,    37,    21,    37,    21,    33,    33,    37,  
       38,    37,    89,    21,    24,    21,    22,    35,    32,    24,  
       89,    22,    89,    22,    89,    22,    32,    38,    89,    36,  
       20,    21,    26,    26,    26,    39,    26,    35,    22,    21,  
       39,    21,    39,    20,    21,    39,    35,    37,    20,    33,  
       37,    25,    22,    35,    32,    31,    89,    26,    39,    37,  
       22,    26,    22,    26,    25,    22,    26,    37,    89,    25,  
       32,    42,    18,    39,    26,    89,    22,    26,    20,    22,  
       89,    39,    20,    39,    20,    18,    39,    20,    20,    37,  
       18,    35,    33,    31,    26,    39,    32,    36,    31,    22,  
       35,    33,    26,    22,    26,    22,    31,    26,    22,    25,  
       42,    31,    37,    22,    31,    20,    22,    38,    33,    36,  
       89,    18,    20,    20,    31,    20,    89,    18,    33,    31,  
       22,    22,    35,    37,    38,    33,    35,    22,    22,    22,  
       22,    33,    31,    22,    22,    29,    36,    89,    33,    37,  
       18,    18,    29,    89,    18,    31,    29,    89,    33,    38,  
       89,    35,    30,    33,    35,    22,    33,    18,    37,    21,  
       18,    22,    18,    18,    29,    18,    35,    89,    35,    30,  
       37,    35,    30,    35,    18,    21,    26,    22,    22,    18,  
       22,    18,    30,    35,    39,    37,    35,    30,    37,    30,  
       22,    26,    22,    22,    22,    22,    22,    37,    39,    35,  
       35,    37,    35,    37,    22,    22,    36,    22,    22,    35,  
       35,    35,    35,    36  
2155  };  };
2156    
2157  #if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__)  /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
2158  # define YYSIZE_T __SIZE_TYPE__     symbol of state STATE-NUM.  */
2159  #endif  static const yytype_uint16 yystos[] =
2160  #if ! defined (YYSIZE_T) && defined (size_t)  {
2161  # define YYSIZE_T size_t         0,     1,     3,    19,    21,    22,    25,    30,    31,    35,
2162  #endif        36,    37,    39,   228,   229,   230,   231,   282,   283,   284,
2163  #if ! defined (YYSIZE_T)       285,   286,   287,   288,   289,   290,   295,   296,   297,   298,
2164  # if defined (__STDC__) || defined (__cplusplus)       299,   346,   350,    22,    30,    36,    23,    23,    27,    33,
2165  #  include <stddef.h> /* INFRINGES ON USER NAME SPACE */        19,    39,    23,    23,    39,    32,     0,   225,   226,   280,
2166  #  define YYSIZE_T size_t       281,     3,     4,     5,     6,     7,     8,     9,    10,    11,
2167  # endif        12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
2168  #endif        22,    23,    24,    25,    26,    27,    28,    29,    30,    31,
2169  #if ! defined (YYSIZE_T)        32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
2170  # define YYSIZE_T unsigned int        42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
2171  #endif        52,    53,    54,    55,    56,    57,    58,    59,    60,    61,
2172          62,    63,    64,    65,    66,    67,    68,    69,    70,    71,
2173          72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
2174          82,    83,    84,    85,    86,    87,    88,    89,    90,    91,
2175          92,    93,    94,    95,    96,    97,    98,    99,   100,   101,
2176         102,   103,   104,   105,   106,   107,   108,   109,   110,   111,
2177         112,   113,   114,   115,   116,   117,   118,   119,   120,   121,
2178         122,   123,   124,   125,   126,   127,   128,   129,   130,   131,
2179         132,   133,   134,   135,   136,   137,   138,   139,   140,   141,
2180         142,   143,   144,   145,   146,   147,   148,   149,   150,   151,
2181         152,   153,   154,   155,   156,   157,   158,   159,   160,   161,
2182         162,   163,   164,   165,   166,   167,   168,   169,   170,   171,
2183         172,   173,   174,   175,   176,   177,   178,   179,   180,   181,
2184         182,   183,   184,   185,   186,   187,   188,   189,   190,   191,
2185         192,   193,   194,   195,   196,   197,   198,   199,   200,   201,
2186         202,   203,   204,   205,   206,   207,   208,   209,   210,   211,
2187         212,   213,   214,   215,   216,   217,   218,   219,   220,   221,
2188         224,   271,   274,   275,   276,   279,   279,   279,   279,   279,
2189         279,   279,   279,   279,   279,   279,   279,   279,   279,   279,
2190         279,    22,    23,    23,    37,    38,    37,    19,    34,    27,
2191          31,    37,    30,    38,    20,    31,    37,   280,     9,    10,
2192          11,    12,    13,    14,    15,    16,    17,    18,   273,   274,
2193         273,   273,   273,   273,   273,   273,   273,   273,     3,     9,
2194          10,    11,    12,    13,    14,    15,    16,    17,    18,   276,
2195          21,    31,   232,   300,   333,    19,    21,    23,    31,    37,
2196          38,   238,   300,   301,   302,   303,   310,   311,   313,   318,
2197         319,   320,   321,   322,   323,   325,   327,   328,   329,   330,
2198         331,   332,   333,   334,   335,   336,   340,    31,   235,   331,
2199         236,   331,    31,   242,   332,    19,    31,   240,   319,   329,
2200         243,   319,   329,    19,    21,    31,   248,   301,   302,   303,
2201         318,   325,   328,   332,   334,    27,   244,   312,   313,   237,
2202         300,   333,    19,    23,    31,   239,   300,   317,   322,   326,
2203         327,   333,   349,    20,    21,    31,    37,    38,    40,   233,
2204         305,   306,   307,   308,   309,   310,   347,   234,   305,   306,
2205         307,   308,   309,   310,   347,   271,   277,   279,   241,   300,
2206          19,    19,    38,    38,    22,    38,    33,    23,    23,    37,
2207          19,    39,   274,    26,    27,   279,    39,    40,    26,    32,
2208          27,    23,    33,   279,   279,   279,   279,   279,   279,   279,
2209         279,   279,   279,   279,   279,   279,   279,   279,   279,    27,
2210         279,   279,    27,   279,    39,    27,   279,   279,   279,   279,
2211          39,    26,    27,   279,    32,   279,   279,   279,   279,    39,
2212          21,    27,   279,   279,   279,   279,   279,   279,   279,    39,
2213          26,    27,    38,    33,    33,   271,   279,   279,    36,    38,
2214          36,    40,    38,    21,    21,    34,    20,    19,    22,   222,
2215         223,   266,   278,    22,    19,    19,    25,    22,    36,    38,
2216          27,   304,   307,   308,   309,   304,   304,   304,   304,   304,
2217         304,   304,   304,   304,   304,    10,    11,    12,    13,    14,
2218          15,    16,    17,    18,    19,   258,   275,   291,   304,   304,
2219         304,   304,    22,   258,   258,    22,   258,   291,    22,    22,
2220         271,   271,   275,   275,    22,    19,    22,   258,   291,    37,
2221          32,   249,   265,   278,   294,   250,   264,   271,   262,   275,
2222         258,   291,    22,    26,    22,    19,    31,    37,    40,   245,
2223         319,   323,   324,   329,   333,   336,   337,   338,   339,   341,
2224         342,   343,   275,   275,   275,   275,    32,   348,   270,   271,
2225         275,    24,    19,    37,    36,    38,    27,   262,    23,    33,
2226          23,    38,    36,    37,    32,    27,   277,   277,    27,    27,
2227          32,    27,    27,    40,    19,    32,   279,   279,   279,   279,
2228         279,   279,   279,   279,   279,   279,   279,   279,   279,   279,
2229          30,   279,   279,   279,    27,   279,   279,    27,    27,    27,
2230         279,   279,    27,    32,    27,    38,    33,   279,   279,   279,
2231          27,    33,    27,    39,    27,    39,    33,    33,   279,   279,
2232         279,   279,   279,   279,   279,   279,   279,   279,   279,   279,
2233         279,   279,   279,   279,    19,   279,    24,    32,    21,    23,
2234          19,    21,    43,    27,    21,    32,    89,   222,   223,    33,
2235          30,    32,    32,    89,    23,    30,    24,   262,    20,    34,
2236         247,   344,   345,   262,   262,   264,   275,   271,   271,   275,
2237         275,   275,   275,   271,   258,    30,   258,   271,   275,    89,
2238         259,   275,   259,    89,    33,    89,   246,   271,   246,    33,
2239          32,    89,    36,    32,   263,   275,   265,   262,    33,    89,
2240          22,    22,    38,    30,    30,   262,   262,   262,   262,   262,
2241         262,   262,   262,   262,   262,   262,   262,   271,   275,   271,
2242         275,    31,   258,    23,    32,    23,    19,    30,    23,    20,
2243          36,    23,    27,    89,    19,    23,    23,    27,    36,    89,
2244          33,    43,    23,   279,   279,   279,   279,   279,   279,   279,
2245         279,    27,   279,   279,    27,    89,    27,   279,     4,    89,
2246          23,    27,    39,    89,   279,   279,    89,    27,    27,    27,
2247          23,    33,    39,   279,   279,   279,   279,   279,   279,   279,
2248         279,   279,   279,   279,   279,     4,   279,     4,   279,    23,
2249         279,    36,    23,    30,    31,    89,    89,    23,    27,    30,
2250          32,    33,    20,    30,    32,    40,    38,    36,   262,   271,
2251         275,   275,   275,   271,   259,   275,    32,   260,   275,   260,
2252          32,    33,    32,   271,     7,     8,   268,   269,   271,   272,
2253         273,   274,   275,   278,    33,    30,    32,    31,    31,   262,
2254         263,    33,    32,    33,    89,    31,   252,   275,   253,   275,
2255         254,   271,   252,    22,    32,   258,   292,   293,   255,   275,
2256         256,   275,   291,   257,   271,   252,     7,     8,   261,   272,
2257         275,   270,   270,   268,   271,   268,   271,   266,    89,    30,
2258          30,    89,    40,    21,    20,    37,    39,    30,    37,    34,
2259          37,    33,    23,    21,   279,   279,   279,   279,   279,    37,
2260         279,    37,    39,    34,     4,   273,   273,     5,     6,    39,
2261          34,    37,    23,    33,   279,    39,    34,    89,    27,    23,
2262         279,    23,    33,   279,     4,     4,    24,    89,    19,    21,
2263          33,    33,    23,    38,    38,    23,    39,    38,    27,    37,
2264          23,   246,   271,   271,   246,   260,    38,   264,    38,    38,
2265          39,   268,     6,     6,   269,   273,    38,    39,    38,    32,
2266          22,   262,    38,    39,    33,    32,   253,    24,    32,   255,
2267         268,   268,    27,    21,    27,    32,    33,    27,    39,    36,
2268          34,    89,    38,    36,    21,    32,    36,   279,    36,    34,
2269          38,   273,   273,    34,    38,    36,    38,    19,    34,    38,
2270          39,    34,    19,    23,   279,    30,    33,    32,    23,    39,
2271          21,    32,    39,    39,    19,    23,    31,    89,    39,    23,
2272          38,    39,   265,    39,    39,    89,    39,    89,    39,    30,
2273          39,    89,    38,    39,    39,   256,    30,    39,    24,    33,
2274          32,    23,    38,    31,    38,    39,    32,    27,    22,    34,
2275          31,    89,    19,    31,   279,    31,    38,    22,    38,    22,
2276          31,    38,    22,    34,    34,    38,    30,    32,    33,    39,
2277          38,    89,    23,    89,    22,    25,    22,    23,    36,    33,
2278          23,    21,    25,    23,   263,    23,    89,    23,    89,    23,
2279          23,    89,    23,    33,    39,    89,    38,    38,    37,    21,
2280          32,    21,    22,    27,    27,    27,    40,    27,    36,    32,
2281          33,    23,    32,   279,    32,    22,    40,    22,    40,    32,
2282          21,    22,    40,    36,    38,    21,    34,    38,    33,    38,
2283          26,    23,    36,    33,    32,    89,    27,    40,    38,    38,
2284          39,    38,   261,    38,    23,    27,    23,    27,    38,    26,
2285          23,    27,    38,    89,    26,    33,    43,    39,    89,    19,
2286          40,    27,    89,    23,    27,    21,    23,    89,    37,    89,
2287          32,   279,    40,    21,    40,    21,    89,    19,    40,    21,
2288          21,    38,    19,    36,    34,    32,    31,    32,    27,    40,
2289          33,    37,    32,    23,    36,    34,    31,    38,    33,    34,
2290         251,   267,   278,   314,   315,   316,    27,    23,    27,    23,
2291          31,    32,    27,    23,    26,    43,    32,    38,    23,    38,
2292          19,    32,    21,    23,    39,    34,    37,    89,    19,    19,
2293          89,    32,    23,   279,    21,    21,    19,    32,    21,    89,
2294          19,    34,    32,    34,    23,    23,    36,    38,    39,    34,
2295          36,    34,    31,    89,    36,   267,    23,    23,    34,    23,
2296          23,    34,    32,    23,    23,    30,    37,    89,    34,    38,
2297          19,    19,    37,    19,    22,    37,    30,    89,    19,    32,
2298          30,    89,    34,    39,    89,    36,    31,    42,    23,    27,
2299          34,    36,    23,    34,    19,    38,    22,    19,    23,    31,
2300          37,    19,    19,    30,    19,    36,    89,    36,    31,    38,
2301          19,    38,    36,    31,    36,    19,    22,    27,    23,    23,
2302          32,    23,    19,    23,    19,    31,    36,    40,    38,    36,
2303          22,    32,    31,    38,    31,    23,    27,    23,    23,    89,
2304          38,    23,    23,    23,    38,    40,    36,    36,    26,    38,
2305          36,    38,    23,    23,    37,    33,    23,    23,    36,    36,
2306          30,    36,    36,    37,    22
2307    };
2308    
2309  #define yyerrok         (yyerrstatus = 0)  #define yyerrok         (yyerrstatus = 0)
2310  #define yyclearin       (yychar = YYEMPTY)  #define yyclearin       (yychar = YYEMPTY)
# Line 1974  do                                                             \ Line 2331  do                                                             \
2331        yychar = (Token);                                         \        yychar = (Token);                                         \
2332        yylval = (Value);                                         \        yylval = (Value);                                         \
2333        yytoken = YYTRANSLATE (yychar);                           \        yytoken = YYTRANSLATE (yychar);                           \
2334        YYPOPSTACK;                                               \        YYPOPSTACK (1);                                           \
2335        goto yybackup;                                            \        goto yybackup;                                            \
2336      }                                                           \      }                                                           \
2337    else                                                          \    else                                                          \
2338      {                                                           \      {                                                           \
2339        yyerror ("syntax error: cannot back up");\        yyerror (YY_("syntax error: cannot back up")); \
2340        YYERROR;                                                  \        YYERROR;                                                  \
2341      }                                                           \      }                                                           \
2342  while (0)  while (YYID (0))
2343    
2344    
2345  #define YYTERROR        1  #define YYTERROR        1
2346  #define YYERRCODE       256  #define YYERRCODE       256
2347    
 /* YYLLOC_DEFAULT -- Compute the default location (before the actions  
    are run).  */  
2348    
2349    /* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N].
2350       If N is 0, then set CURRENT to the empty location which ends
2351       the previous symbol: RHS[0] (always defined).  */
2352    
2353    #define YYRHSLOC(Rhs, K) ((Rhs)[K])
2354  #ifndef YYLLOC_DEFAULT  #ifndef YYLLOC_DEFAULT
2355  # define YYLLOC_DEFAULT(Current, Rhs, N)                \  # define YYLLOC_DEFAULT(Current, Rhs, N)                                \
2356     ((Current).first_line   = (Rhs)[1].first_line,       \      do                                                                  \
2357      (Current).first_column = (Rhs)[1].first_column,     \        if (YYID (N))                                                    \
2358      (Current).last_line    = (Rhs)[N].last_line,        \          {                                                               \
2359      (Current).last_column  = (Rhs)[N].last_column)            (Current).first_line   = YYRHSLOC (Rhs, 1).first_line;        \
2360              (Current).first_column = YYRHSLOC (Rhs, 1).first_column;      \
2361              (Current).last_line    = YYRHSLOC (Rhs, N).last_line;         \
2362              (Current).last_column  = YYRHSLOC (Rhs, N).last_column;       \
2363            }                                                               \
2364          else                                                              \
2365            {                                                               \
2366              (Current).first_line   = (Current).last_line   =              \
2367                YYRHSLOC (Rhs, 0).last_line;                                \
2368              (Current).first_column = (Current).last_column =              \
2369                YYRHSLOC (Rhs, 0).last_column;                              \
2370            }                                                               \
2371        while (YYID (0))
2372    #endif
2373    
2374    
2375    /* YY_LOCATION_PRINT -- Print the location on the stream.
2376       This macro was not mandated originally: define only if we know
2377       we won't break user code: when these are the locations we know.  */
2378    
2379    #ifndef YY_LOCATION_PRINT
2380    # if YYLTYPE_IS_TRIVIAL
2381    #  define YY_LOCATION_PRINT(File, Loc)                  \
2382         fprintf (File, "%d.%d-%d.%d",                      \
2383                  (Loc).first_line, (Loc).first_column,     \
2384                  (Loc).last_line,  (Loc).last_column)
2385    # else
2386    #  define YY_LOCATION_PRINT(File, Loc) ((void) 0)
2387    # endif
2388  #endif  #endif
2389    
2390    
2391  /* YYLEX -- calling `yylex' with the right arguments.  */  /* YYLEX -- calling `yylex' with the right arguments.  */
2392    
2393  #ifdef YYLEX_PARAM  #ifdef YYLEX_PARAM
# Line 2018  while (0) Line 2408  while (0)
2408  do {                                            \  do {                                            \
2409    if (yydebug)                                  \    if (yydebug)                                  \
2410      YYFPRINTF Args;                             \      YYFPRINTF Args;                             \
2411  } while (0)  } while (YYID (0))
2412    
2413  # define YYDSYMPRINT(Args)                      \  # define YY_SYMBOL_PRINT(Title, Type, Value, Location)                    \
2414  do {                                            \  do {                                                                      \
2415    if (yydebug)                                  \    if (yydebug)                                                            \
2416      yysymprint Args;                            \      {                                                                     \
2417  } while (0)        YYFPRINTF (stderr, "%s ", Title);                                   \
2418          yy_symbol_print (stderr,                                            \
2419                      Type, Value); \
2420          YYFPRINTF (stderr, "\n");                                           \
2421        }                                                                     \
2422    } while (YYID (0))
2423    
2424    
2425    /*--------------------------------.
2426    | Print this symbol on YYOUTPUT.  |
2427    `--------------------------------*/
2428    
2429    /*ARGSUSED*/
2430    #if (defined __STDC__ || defined __C99__FUNC__ \
2431         || defined __cplusplus || defined _MSC_VER)
2432    static void
2433    yy_symbol_value_print (FILE *yyoutput, int yytype, const YYSTYPE * const yyvaluep)
2434    #else
2435    static void
2436    yy_symbol_value_print (yyoutput, yytype, yyvaluep)
2437        FILE *yyoutput;
2438        int yytype;
2439        const YYSTYPE * const yyvaluep;
2440    #endif
2441    {
2442      if (!yyvaluep)
2443        return;
2444    # ifdef YYPRINT
2445      if (yytype < YYNTOKENS)
2446        YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
2447    # else
2448      YYUSE (yyoutput);
2449    # endif
2450      switch (yytype)
2451        {
2452          default:
2453            break;
2454        }
2455    }
2456    
2457  # define YYDSYMPRINTF(Title, Token, Value, Location)            \  
2458  do {                                                            \  /*--------------------------------.
2459    if (yydebug)                                                  \  | Print this symbol on YYOUTPUT.  |
2460      {                                                           \  `--------------------------------*/
2461        YYFPRINTF (stderr, "%s ", Title);                         \  
2462        yysymprint (stderr,                                       \  #if (defined __STDC__ || defined __C99__FUNC__ \
2463                    Token, Value);        \       || defined __cplusplus || defined _MSC_VER)
2464        YYFPRINTF (stderr, "\n");                                 \  static void
2465      }                                                           \  yy_symbol_print (FILE *yyoutput, int yytype, const YYSTYPE * const yyvaluep)
2466  } while (0)  #else
2467    static void
2468    yy_symbol_print (yyoutput, yytype, yyvaluep)
2469        FILE *yyoutput;
2470        int yytype;
2471        const YYSTYPE * const yyvaluep;
2472    #endif
2473    {
2474      if (yytype < YYNTOKENS)
2475        YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
2476      else
2477        YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);
2478    
2479      yy_symbol_value_print (yyoutput, yytype, yyvaluep);
2480      YYFPRINTF (yyoutput, ")");
2481    }
2482    
2483  /*------------------------------------------------------------------.  /*------------------------------------------------------------------.
2484  | 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 |
2485  | TOP (included).                                                   |  | TOP (included).                                                   |
2486  `------------------------------------------------------------------*/  `------------------------------------------------------------------*/
2487    
2488  #if defined (__STDC__) || defined (__cplusplus)  #if (defined __STDC__ || defined __C99__FUNC__ \
2489         || defined __cplusplus || defined _MSC_VER)
2490  static void  static void
2491  yy_stack_print (short int *bottom, short int *top)  yy_stack_print (yytype_int16 *bottom, yytype_int16 *top)
2492  #else  #else
2493  static void  static void
2494  yy_stack_print (bottom, top)  yy_stack_print (bottom, top)
2495      short int *bottom;      yytype_int16 *bottom;
2496      short int *top;      yytype_int16 *top;
2497  #endif  #endif
2498  {  {
2499    YYFPRINTF (stderr, "Stack now");    YYFPRINTF (stderr, "Stack now");
2500    for (/* Nothing. */; bottom <= top; ++bottom)    for (; bottom <= top; ++bottom)
2501      YYFPRINTF (stderr, " %d", *bottom);      YYFPRINTF (stderr, " %d", *bottom);
2502    YYFPRINTF (stderr, "\n");    YYFPRINTF (stderr, "\n");
2503  }  }
# Line 2062  yy_stack_print (bottom, top) Line 2506  yy_stack_print (bottom, top)
2506  do {                                                            \  do {                                                            \
2507    if (yydebug)                                                  \    if (yydebug)                                                  \
2508      yy_stack_print ((Bottom), (Top));                           \      yy_stack_print ((Bottom), (Top));                           \
2509  } while (0)  } while (YYID (0))
2510    
2511    
2512  /*------------------------------------------------.  /*------------------------------------------------.
2513  | Report that the YYRULE is going to be reduced.  |  | Report that the YYRULE is going to be reduced.  |
2514  `------------------------------------------------*/  `------------------------------------------------*/
2515    
2516  #if defined (__STDC__) || defined (__cplusplus)  #if (defined __STDC__ || defined __C99__FUNC__ \
2517         || defined __cplusplus || defined _MSC_VER)
2518  static void  static void
2519  yy_reduce_print (int yyrule)  yy_reduce_print (YYSTYPE *yyvsp,
2520                       int yyrule)
2521  #else  #else
2522  static void  static void
2523  yy_reduce_print (yyrule)  yy_reduce_print (yyvsp, yyrule
2524      int yyrule;                     )
2525        YYSTYPE *yyvsp;
2526        
2527                       int yyrule;
2528  #endif  #endif
2529  {  {
2530      int yynrhs = yyr2[yyrule];
2531    int yyi;    int yyi;
2532    unsigned int yylno = yyrline[yyrule];    unsigned long int yylno = yyrline[yyrule];
2533    YYFPRINTF (stderr, "Reducing stack by rule %d (line %u), ",    YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n",
2534               yyrule - 1, yylno);               yyrule - 1, yylno);
2535    /* Print the symbols being reduced, and their result.  */    /* The symbols being reduced.  */
2536    for (yyi = yyprhs[yyrule]; 0 <= yyrhs[yyi]; yyi++)    for (yyi = 0; yyi < yynrhs; yyi++)
2537      YYFPRINTF (stderr, "%s ", yytname [yyrhs[yyi]]);      {
2538    YYFPRINTF (stderr, "-> %s\n", yytname [yyr1[yyrule]]);        fprintf (stderr, "   $%d = ", yyi + 1);
2539          yy_symbol_print (stderr, yyrhs[yyprhs[yyrule] + yyi],
2540                           &(yyvsp[(yyi + 1) - (yynrhs)])
2541                                           );
2542          fprintf (stderr, "\n");
2543        }
2544  }  }
2545    
2546  # define YY_REDUCE_PRINT(Rule)          \  # define YY_REDUCE_PRINT(Rule)          \
2547  do {                                    \  do {                                    \
2548    if (yydebug)                          \    if (yydebug)                          \
2549      yy_reduce_print (Rule);             \      yy_reduce_print (yyvsp, Rule); \
2550  } while (0)  } while (YYID (0))
2551    
2552  /* Nonzero means print parse trace.  It is left uninitialized so that  /* Nonzero means print parse trace.  It is left uninitialized so that
2553     multiple parsers can coexist.  */     multiple parsers can coexist.  */
2554  int yydebug;  int yydebug;
2555  #else /* !YYDEBUG */  #else /* !YYDEBUG */
2556  # define YYDPRINTF(Args)  # define YYDPRINTF(Args)
2557  # define YYDSYMPRINT(Args)  # define YY_SYMBOL_PRINT(Title, Type, Value, Location)
 # define YYDSYMPRINTF(Title, Token, Value, Location)  
2558  # define YY_STACK_PRINT(Bottom, Top)  # define YY_STACK_PRINT(Bottom, Top)
2559  # define YY_REDUCE_PRINT(Rule)  # define YY_REDUCE_PRINT(Rule)
2560  #endif /* !YYDEBUG */  #endif /* !YYDEBUG */
# Line 2115  int yydebug; Line 2569  int yydebug;
2569     if the built-in stack extension method is used).     if the built-in stack extension method is used).
2570    
2571     Do not make this value too large; the results are undefined if     Do not make this value too large; the results are undefined if
2572     SIZE_MAX < YYSTACK_BYTES (YYMAXDEPTH)     YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
2573     evaluated with infinite-precision integer arithmetic.  */     evaluated with infinite-precision integer arithmetic.  */
2574    
 #if defined (YYMAXDEPTH) && YYMAXDEPTH == 0  
 # undef YYMAXDEPTH  
 #endif  
   
2575  #ifndef YYMAXDEPTH  #ifndef YYMAXDEPTH
2576  # define YYMAXDEPTH 10000  # define YYMAXDEPTH 10000
2577  #endif  #endif
# Line 2131  int yydebug; Line 2581  int yydebug;
2581  #if YYERROR_VERBOSE  #if YYERROR_VERBOSE
2582    
2583  # ifndef yystrlen  # ifndef yystrlen
2584  #  if defined (__GLIBC__) && defined (_STRING_H)  #  if defined __GLIBC__ && defined _STRING_H
2585  #   define yystrlen strlen  #   define yystrlen strlen
2586  #  else  #  else
2587  /* Return the length of YYSTR.  */  /* Return the length of YYSTR.  */
2588    #if (defined __STDC__ || defined __C99__FUNC__ \
2589         || defined __cplusplus || defined _MSC_VER)
2590  static YYSIZE_T  static YYSIZE_T
 #   if defined (__STDC__) || defined (__cplusplus)  
2591  yystrlen (const char *yystr)  yystrlen (const char *yystr)
2592  #   else  #else
2593    static YYSIZE_T
2594  yystrlen (yystr)  yystrlen (yystr)
2595       const char *yystr;      const char *yystr;
2596  #   endif  #endif
2597  {  {
2598    register const char *yys = yystr;    YYSIZE_T yylen;
2599      for (yylen = 0; yystr[yylen]; yylen++)
   while (*yys++ != '\0')  
2600      continue;      continue;
2601      return yylen;
   return yys - yystr - 1;  
2602  }  }
2603  #  endif  #  endif
2604  # endif  # endif
2605    
2606  # ifndef yystpcpy  # ifndef yystpcpy
2607  #  if defined (__GLIBC__) && defined (_STRING_H) && defined (_GNU_SOURCE)  #  if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
2608  #   define yystpcpy stpcpy  #   define yystpcpy stpcpy
2609  #  else  #  else
2610  /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in  /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
2611     YYDEST.  */     YYDEST.  */
2612    #if (defined __STDC__ || defined __C99__FUNC__ \
2613         || defined __cplusplus || defined _MSC_VER)
2614  static char *  static char *
 #   if defined (__STDC__) || defined (__cplusplus)  
2615  yystpcpy (char *yydest, const char *yysrc)  yystpcpy (char *yydest, const char *yysrc)
2616  #   else  #else
2617    static char *
2618  yystpcpy (yydest, yysrc)  yystpcpy (yydest, yysrc)
2619       char *yydest;      char *yydest;
2620       const char *yysrc;      const char *yysrc;
2621  #   endif  #endif
2622  {  {
2623    register char *yyd = yydest;    char *yyd = yydest;
2624    register const char *yys = yysrc;    const char *yys = yysrc;
2625    
2626    while ((*yyd++ = *yys++) != '\0')    while ((*yyd++ = *yys++) != '\0')
2627      continue;      continue;
# Line 2179  yystpcpy (yydest, yysrc) Line 2631  yystpcpy (yydest, yysrc)
2631  #  endif  #  endif
2632  # endif  # endif
2633    
2634  #endif /* !YYERROR_VERBOSE */  # ifndef yytnamerr
2635    /* Copy to YYRES the contents of YYSTR after stripping away unnecessary
2636       quotes and backslashes, so that it's suitable for yyerror.  The
2637       heuristic is that double-quoting is unnecessary unless the string
2638       contains an apostrophe, a comma, or backslash (other than
2639       backslash-backslash).  YYSTR is taken from yytname.  If YYRES is
2640       null, do not copy; instead, return the length of what the result
2641       would have been.  */
2642    static YYSIZE_T
2643    yytnamerr (char *yyres, const char *yystr)
2644    {
2645      if (*yystr == '"')
2646        {
2647          YYSIZE_T yyn = 0;
2648          char const *yyp = yystr;
2649    
2650          for (;;)
2651            switch (*++yyp)
2652              {
2653              case '\'':
2654              case ',':
2655                goto do_not_strip_quotes;
2656    
2657              case '\\':
2658                if (*++yyp != '\\')
2659                  goto do_not_strip_quotes;
2660                /* Fall through.  */
2661              default:
2662                if (yyres)
2663                  yyres[yyn] = *yyp;
2664                yyn++;
2665                break;
2666    
2667              case '"':
2668                if (yyres)
2669                  yyres[yyn] = '\0';
2670                return yyn;
2671              }
2672        do_not_strip_quotes: ;
2673        }
2674    
2675  #if YYDEBUG    if (! yyres)
2676  /*--------------------------------.      return yystrlen (yystr);
 | Print this symbol on YYOUTPUT.  |  
 `--------------------------------*/  
2677    
2678  #if defined (__STDC__) || defined (__cplusplus)    return yystpcpy (yyres, yystr) - yyres;
2679  static void  }
2680  yysymprint (FILE *yyoutput, int yytype, YYSTYPE *yyvaluep)  # endif
2681  #else  
2682  static void  /* Copy into YYRESULT an error message about the unexpected token
2683  yysymprint (yyoutput, yytype, yyvaluep)     YYCHAR while in state YYSTATE.  Return the number of bytes copied,
2684      FILE *yyoutput;     including the terminating null byte.  If YYRESULT is null, do not
2685      int yytype;     copy anything; just return the number of bytes that would be
2686      YYSTYPE *yyvaluep;     copied.  As a special case, return 0 if an ordinary "syntax error"
2687  #endif     message will do.  Return YYSIZE_MAXIMUM if overflow occurs during
2688       size calculation.  */
2689    static YYSIZE_T
2690    yysyntax_error (char *yyresult, int yystate, int yychar)
2691  {  {
2692    /* Pacify ``unused variable'' warnings.  */    int yyn = yypact[yystate];
   (void) yyvaluep;  
2693    
2694    if (yytype < YYNTOKENS)    if (! (YYPACT_NINF < yyn && yyn <= YYLAST))
2695        return 0;
2696      else
2697      {      {
2698        YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);        int yytype = YYTRANSLATE (yychar);
2699  # ifdef YYPRINT        YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]);
2700        YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);        YYSIZE_T yysize = yysize0;
2701          YYSIZE_T yysize1;
2702          int yysize_overflow = 0;
2703          enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
2704          char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
2705          int yyx;
2706    
2707    # if 0
2708          /* This is so xgettext sees the translatable formats that are
2709             constructed on the fly.  */
2710          YY_("syntax error, unexpected %s");
2711          YY_("syntax error, unexpected %s, expecting %s");
2712          YY_("syntax error, unexpected %s, expecting %s or %s");
2713          YY_("syntax error, unexpected %s, expecting %s or %s or %s");
2714          YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s");
2715  # endif  # endif
2716      }        char *yyfmt;
2717    else        char const *yyf;
2718      YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);        static char const yyunexpected[] = "syntax error, unexpected %s";
2719          static char const yyexpecting[] = ", expecting %s";
2720          static char const yyor[] = " or %s";
2721          char yyformat[sizeof yyunexpected
2722                        + sizeof yyexpecting - 1
2723                        + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2)
2724                           * (sizeof yyor - 1))];
2725          char const *yyprefix = yyexpecting;
2726    
2727          /* Start YYX at -YYN if negative to avoid negative indexes in
2728             YYCHECK.  */
2729          int yyxbegin = yyn < 0 ? -yyn : 0;
2730    
2731          /* Stay within bounds of both yycheck and yytname.  */
2732          int yychecklim = YYLAST - yyn + 1;
2733          int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
2734          int yycount = 1;
2735    
2736          yyarg[0] = yytname[yytype];
2737          yyfmt = yystpcpy (yyformat, yyunexpected);
2738    
2739          for (yyx = yyxbegin; yyx < yyxend; ++yyx)
2740            if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
2741              {
2742                if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
2743                  {
2744                    yycount = 1;
2745                    yysize = yysize0;
2746                    yyformat[sizeof yyunexpected - 1] = '\0';
2747                    break;
2748                  }
2749                yyarg[yycount++] = yytname[yyx];
2750                yysize1 = yysize + yytnamerr (0, yytname[yyx]);
2751                yysize_overflow |= (yysize1 < yysize);
2752                yysize = yysize1;
2753                yyfmt = yystpcpy (yyfmt, yyprefix);
2754                yyprefix = yyor;
2755              }
2756    
2757          yyf = YY_(yyformat);
2758          yysize1 = yysize + yystrlen (yyf);
2759          yysize_overflow |= (yysize1 < yysize);
2760          yysize = yysize1;
2761    
2762    switch (yytype)        if (yysize_overflow)
2763      {          return YYSIZE_MAXIMUM;
2764        default:  
2765          break;        if (yyresult)
2766            {
2767              /* Avoid sprintf, as that infringes on the user's name space.
2768                 Don't have undefined behavior even if the translation
2769                 produced a string with the wrong number of "%s"s.  */
2770              char *yyp = yyresult;
2771              int yyi = 0;
2772              while ((*yyp = *yyf) != '\0')
2773                {
2774                  if (*yyp == '%' && yyf[1] == 's' && yyi < yycount)
2775                    {
2776                      yyp += yytnamerr (yyp, yyarg[yyi++]);
2777                      yyf += 2;
2778                    }
2779                  else
2780                    {
2781                      yyp++;
2782                      yyf++;
2783                    }
2784                }
2785            }
2786          return yysize;
2787      }      }
   YYFPRINTF (yyoutput, ")");  
2788  }  }
2789    #endif /* YYERROR_VERBOSE */
2790    
2791    
 #endif /* ! YYDEBUG */  
2792  /*-----------------------------------------------.  /*-----------------------------------------------.
2793  | Release the memory associated to this symbol.  |  | Release the memory associated to this symbol.  |
2794  `-----------------------------------------------*/  `-----------------------------------------------*/
2795    
2796  #if defined (__STDC__) || defined (__cplusplus)  /*ARGSUSED*/
2797    #if (defined __STDC__ || defined __C99__FUNC__ \
2798         || defined __cplusplus || defined _MSC_VER)
2799  static void  static void
2800  yydestruct (int yytype, YYSTYPE *yyvaluep)  yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep)
2801  #else  #else
2802  static void  static void
2803  yydestruct (yytype, yyvaluep)  yydestruct (yymsg, yytype, yyvaluep)
2804        const char *yymsg;
2805      int yytype;      int yytype;
2806      YYSTYPE *yyvaluep;      YYSTYPE *yyvaluep;
2807  #endif  #endif
2808  {  {
2809    /* Pacify ``unused variable'' warnings.  */    YYUSE (yyvaluep);
2810    (void) yyvaluep;  
2811      if (!yymsg)
2812        yymsg = "Deleting";
2813      YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
2814    
2815    switch (yytype)    switch (yytype)
2816      {      {
2817    
2818        default:        default:
2819          break;          break;
2820      }      }
2821  }  }
2822    
# Line 2250  yydestruct (yytype, yyvaluep) Line 2824  yydestruct (yytype, yyvaluep)
2824  /* Prevent warnings from -Wmissing-prototypes.  */  /* Prevent warnings from -Wmissing-prototypes.  */
2825    
2826  #ifdef YYPARSE_PARAM  #ifdef YYPARSE_PARAM
2827  # if defined (__STDC__) || defined (__cplusplus)  #if defined __STDC__ || defined __cplusplus
2828  int yyparse (void *YYPARSE_PARAM);  int yyparse (void *YYPARSE_PARAM);
2829  # else  #else
2830  int yyparse ();  int yyparse ();
2831  # endif  #endif
2832  #else /* ! YYPARSE_PARAM */  #else /* ! YYPARSE_PARAM */
2833  #if defined (__STDC__) || defined (__cplusplus)  #if defined __STDC__ || defined __cplusplus
2834  int yyparse (void);  int yyparse (void);
2835  #else  #else
2836  int yyparse ();  int yyparse ();
# Line 2273  int yyparse (); Line 2847  int yyparse ();
2847  `----------*/  `----------*/
2848    
2849  #ifdef YYPARSE_PARAM  #ifdef YYPARSE_PARAM
2850  # if defined (__STDC__) || defined (__cplusplus)  #if (defined __STDC__ || defined __C99__FUNC__ \
2851  int yyparse (void *YYPARSE_PARAM)       || defined __cplusplus || defined _MSC_VER)
2852  # else  int
2853  int yyparse (YYPARSE_PARAM)  yyparse (void *YYPARSE_PARAM)
2854    void *YYPARSE_PARAM;  #else
2855  # endif  int
2856    yyparse (YYPARSE_PARAM)
2857        void *YYPARSE_PARAM;
2858    #endif
2859  #else /* ! YYPARSE_PARAM */  #else /* ! YYPARSE_PARAM */
2860  #if defined (__STDC__) || defined (__cplusplus)  #if (defined __STDC__ || defined __C99__FUNC__ \
2861         || defined __cplusplus || defined _MSC_VER)
2862  int  int
2863  yyparse (void)  yyparse (void)
2864  #else  #else
# Line 2290  yyparse () Line 2868  yyparse ()
2868  #endif  #endif
2869  #endif  #endif
2870  {  {
2871    /* The lookahead symbol.  */    /* The look-ahead symbol.  */
2872  int yychar;  int yychar;
2873    
2874  /* The semantic value of the lookahead symbol.  */  /* The semantic value of the look-ahead symbol.  */
2875  YYSTYPE yylval;  YYSTYPE yylval;
2876    
2877  /* Number of syntax errors so far.  */  /* Number of syntax errors so far.  */
2878  int yynerrs;  int yynerrs;
2879    
2880    register int yystate;    int yystate;
2881    register int yyn;    int yyn;
2882    int yyresult;    int yyresult;
2883    /* Number of tokens to shift before error messages enabled.  */    /* Number of tokens to shift before error messages enabled.  */
2884    int yyerrstatus;    int yyerrstatus;
2885    /* Lookahead token as an internal (translated) token number.  */    /* Look-ahead token as an internal (translated) token number.  */
2886    int yytoken = 0;    int yytoken = 0;
2887    #if YYERROR_VERBOSE
2888      /* Buffer for error messages, and its allocated size.  */
2889      char yymsgbuf[128];
2890      char *yymsg = yymsgbuf;
2891      YYSIZE_T yymsg_alloc = sizeof yymsgbuf;
2892    #endif
2893    
2894    /* Three stacks and their tools:    /* Three stacks and their tools:
2895       `yyss': related to states,       `yyss': related to states,
# Line 2316  int yynerrs; Line 2900  int yynerrs;
2900       to reallocate them elsewhere.  */       to reallocate them elsewhere.  */
2901    
2902    /* The state stack.  */    /* The state stack.  */
2903    short int yyssa[YYINITDEPTH];    yytype_int16 yyssa[YYINITDEPTH];
2904    short int *yyss = yyssa;    yytype_int16 *yyss = yyssa;
2905    register short int *yyssp;    yytype_int16 *yyssp;
2906    
2907    /* The semantic value stack.  */    /* The semantic value stack.  */
2908    YYSTYPE yyvsa[YYINITDEPTH];    YYSTYPE yyvsa[YYINITDEPTH];
2909    YYSTYPE *yyvs = yyvsa;    YYSTYPE *yyvs = yyvsa;
2910    register YYSTYPE *yyvsp;    YYSTYPE *yyvsp;
2911    
2912    
2913    
2914  #define YYPOPSTACK   (yyvsp--, yyssp--)  #define YYPOPSTACK(N)   (yyvsp -= (N), yyssp -= (N))
2915    
2916    YYSIZE_T yystacksize = YYINITDEPTH;    YYSIZE_T yystacksize = YYINITDEPTH;
2917    
# Line 2336  int yynerrs; Line 2920  int yynerrs;
2920    YYSTYPE yyval;    YYSTYPE yyval;
2921    
2922    
2923    /* When reducing, the number of symbols on the RHS of the reduced    /* The number of symbols on the RHS of the reduced rule.
2924       rule.  */       Keep to zero when no symbol should be popped.  */
2925    int yylen;    int yylen = 0;
2926    
2927    YYDPRINTF ((stderr, "Starting parse\n"));    YYDPRINTF ((stderr, "Starting parse\n"));
2928    
# Line 2355  int yynerrs; Line 2939  int yynerrs;
2939    yyssp = yyss;    yyssp = yyss;
2940    yyvsp = yyvs;    yyvsp = yyvs;
2941    
   
2942    goto yysetstate;    goto yysetstate;
2943    
2944  /*------------------------------------------------------------.  /*------------------------------------------------------------.
# Line 2363  int yynerrs; Line 2946  int yynerrs;
2946  `------------------------------------------------------------*/  `------------------------------------------------------------*/
2947   yynewstate:   yynewstate:
2948    /* In all cases, when you get here, the value and location stacks    /* In all cases, when you get here, the value and location stacks
2949       have just been pushed. so pushing a state here evens the stacks.       have just been pushed.  So pushing a state here evens the stacks.  */
      */  
2950    yyssp++;    yyssp++;
2951    
2952   yysetstate:   yysetstate:
# Line 2377  int yynerrs; Line 2959  int yynerrs;
2959    
2960  #ifdef yyoverflow  #ifdef yyoverflow
2961        {        {
2962          /* Give user a chance to reallocate the stack. Use copies of          /* Give user a chance to reallocate the stack.  Use copies of
2963             these so that the &'s don't force the real ones into             these so that the &'s don't force the real ones into
2964             memory.  */             memory.  */
2965          YYSTYPE *yyvs1 = yyvs;          YYSTYPE *yyvs1 = yyvs;
2966          short int *yyss1 = yyss;          yytype_int16 *yyss1 = yyss;
2967    
2968    
2969          /* Each stack pointer address is followed by the size of the          /* Each stack pointer address is followed by the size of the
2970             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
2971             conditional around just the two extra args, but that might             conditional around just the two extra args, but that might
2972             be undefined if yyoverflow is a macro.  */             be undefined if yyoverflow is a macro.  */
2973          yyoverflow ("parser stack overflow",          yyoverflow (YY_("memory exhausted"),
2974                      &yyss1, yysize * sizeof (*yyssp),                      &yyss1, yysize * sizeof (*yyssp),
2975                      &yyvs1, yysize * sizeof (*yyvsp),                      &yyvs1, yysize * sizeof (*yyvsp),
2976    
# Line 2399  int yynerrs; Line 2981  int yynerrs;
2981        }        }
2982  #else /* no yyoverflow */  #else /* no yyoverflow */
2983  # ifndef YYSTACK_RELOCATE  # ifndef YYSTACK_RELOCATE
2984        goto yyoverflowlab;        goto yyexhaustedlab;
2985  # else  # else
2986        /* Extend the stack our own way.  */        /* Extend the stack our own way.  */
2987        if (YYMAXDEPTH <= yystacksize)        if (YYMAXDEPTH <= yystacksize)
2988          goto yyoverflowlab;          goto yyexhaustedlab;
2989        yystacksize *= 2;        yystacksize *= 2;
2990        if (YYMAXDEPTH < yystacksize)        if (YYMAXDEPTH < yystacksize)
2991          yystacksize = YYMAXDEPTH;          yystacksize = YYMAXDEPTH;
2992    
2993        {        {
2994          short int *yyss1 = yyss;          yytype_int16 *yyss1 = yyss;
2995          union yyalloc *yyptr =          union yyalloc *yyptr =
2996            (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));            (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
2997          if (! yyptr)          if (! yyptr)
2998            goto yyoverflowlab;            goto yyexhaustedlab;
2999          YYSTACK_RELOCATE (yyss);          YYSTACK_RELOCATE (yyss);
3000          YYSTACK_RELOCATE (yyvs);          YYSTACK_RELOCATE (yyvs);
3001    
# Line 2444  int yynerrs; Line 3026  int yynerrs;
3026  `-----------*/  `-----------*/
3027  yybackup:  yybackup:
3028    
3029  /* Do appropriate processing given the current state.  */    /* Do appropriate processing given the current state.  Read a
3030  /* 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.  */  
3031    
3032      /* First try to decide what to do without reference to look-ahead token.  */
3033    yyn = yypact[yystate];    yyn = yypact[yystate];
3034    if (yyn == YYPACT_NINF)    if (yyn == YYPACT_NINF)
3035      goto yydefault;      goto yydefault;
3036    
3037    /* 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.  */
3038    
3039    /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol.  */    /* YYCHAR is either YYEMPTY or YYEOF or a valid look-ahead symbol.  */
3040    if (yychar == YYEMPTY)    if (yychar == YYEMPTY)
3041      {      {
3042        YYDPRINTF ((stderr, "Reading a token: "));        YYDPRINTF ((stderr, "Reading a token: "));
# Line 2471  yybackup: Line 3051  yybackup:
3051    else    else
3052      {      {
3053        yytoken = YYTRANSLATE (yychar);        yytoken = YYTRANSLATE (yychar);
3054        YYDSYMPRINTF ("Next token is", yytoken, &yylval, &yylloc);        YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
3055      }      }
3056    
3057    /* 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 2491  yybackup: Line 3071  yybackup:
3071    if (yyn == YYFINAL)    if (yyn == YYFINAL)
3072      YYACCEPT;      YYACCEPT;
3073    
   /* 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;  
   
   
3074    /* Count tokens shifted since error; after three, turn off error    /* Count tokens shifted since error; after three, turn off error
3075       status.  */       status.  */
3076    if (yyerrstatus)    if (yyerrstatus)
3077      yyerrstatus--;      yyerrstatus--;
3078    
3079      /* Shift the look-ahead token.  */
3080      YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
3081    
3082      /* Discard the shifted token unless it is eof.  */
3083      if (yychar != YYEOF)
3084        yychar = YYEMPTY;
3085    
3086    yystate = yyn;    yystate = yyn;
3087      *++yyvsp = yylval;
3088    
3089    goto yynewstate;    goto yynewstate;
3090    
3091    
# Line 2542  yyreduce: Line 3121  yyreduce:
3121    switch (yyn)    switch (yyn)
3122      {      {
3123          case 4:          case 4:
3124  #line 85 "lscp.y"  #line 100 "lscp.y"
3125      { return LSCP_DONE; }      { return LSCP_DONE; }
3126      break;      break;
3127    
3128    case 5:    case 5:
3129  #line 86 "lscp.y"  #line 101 "lscp.y"
3130      { return LSCP_DONE; }      { return LSCP_DONE; }
3131      break;      break;
3132    
3133    case 6:    case 6:
3134  #line 87 "lscp.y"  #line 102 "lscp.y"
3135      { LSCPSERVER->AnswerClient(yyvsp[0].String); return LSCP_DONE; }      { LSCPSERVER->AnswerClient((yyvsp[(1) - (1)].String)); return LSCP_DONE; }
3136      break;      break;
3137    
3138    case 7:    case 7:
3139  #line 88 "lscp.y"  #line 103 "lscp.y"
3140      { 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; }
3141      break;      break;
3142    
3143    case 13:    case 13:
3144  #line 98 "lscp.y"  #line 113 "lscp.y"
3145      { yyval.String = LSCPSERVER->AddChannel();                          }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3146      break;      break;
3147    
3148    case 14:    case 14:
3149  #line 99 "lscp.y"  #line 114 "lscp.y"
3150      { yyval.String = yyvsp[0].String;                                                }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3151      break;      break;
3152    
3153    case 15:    case 15:
3154  #line 100 "lscp.y"  #line 115 "lscp.y"
3155      { yyval.String = yyvsp[0].String;                                                }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3156      break;      break;
3157    
3158    case 16:    case 16:
3159  #line 101 "lscp.y"  #line 116 "lscp.y"
3160      { yyval.String = yyvsp[0].String;                                                }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3161      break;      break;
3162    
3163    case 17:    case 17:
3164  #line 102 "lscp.y"  #line 117 "lscp.y"
3165      { yyval.String = yyvsp[0].String;                                                }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3166      break;      break;
3167    
3168    case 18:    case 18:
3169  #line 103 "lscp.y"  #line 118 "lscp.y"
3170      { yyval.String = yyvsp[0].String;                                                }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3171      break;      break;
3172    
3173    case 19:    case 19:
3174  #line 104 "lscp.y"  #line 119 "lscp.y"
3175      { yyval.String = LSCPSERVER->RemoveChannel(yyvsp[0].Number);                     }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3176      break;      break;
3177    
3178    case 20:    case 20:
3179  #line 105 "lscp.y"  #line 120 "lscp.y"
3180      { yyval.String = yyvsp[0].String;                                                }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3181      break;      break;
3182    
3183    case 21:    case 21:
3184  #line 106 "lscp.y"  #line 121 "lscp.y"
3185      { yyval.String = yyvsp[0].String;                                                }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3186      break;      break;
3187    
3188    case 22:    case 22:
3189  #line 107 "lscp.y"  #line 122 "lscp.y"
3190      { yyval.String = yyvsp[0].String;                                                }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3191      break;      break;
3192    
3193    case 23:    case 23:
3194  #line 108 "lscp.y"  #line 123 "lscp.y"
3195      { yyval.String = LSCPSERVER->QueryDatabase(yyvsp[0].String);                     }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3196      break;      break;
3197    
3198    case 24:    case 24:
3199  #line 109 "lscp.y"  #line 124 "lscp.y"
3200      { yyval.String = LSCPSERVER->ResetChannel(yyvsp[0].Number);                      }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3201      break;      break;
3202    
3203    case 25:    case 25:
3204  #line 110 "lscp.y"  #line 125 "lscp.y"
3205      { yyval.String = LSCPSERVER->ResetSampler();                        }      { (yyval.String) = LSCPSERVER->QueryDatabase((yyvsp[(3) - (3)].String));                     }
3206      break;      break;
3207    
3208    case 26:    case 26:
3209  #line 111 "lscp.y"  #line 126 "lscp.y"
3210      { LSCPSERVER->AnswerClient("Bye!\r\n"); return LSCP_QUIT; }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3211      break;      break;
3212    
3213    case 27:    case 27:
3214  #line 114 "lscp.y"  #line 127 "lscp.y"
3215      { yyval.String = LSCPSERVER->SubscribeNotification(LSCPEvent::event_channels);     }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3216      break;      break;
3217    
3218    case 28:    case 28:
3219  #line 115 "lscp.y"  #line 128 "lscp.y"
3220      { yyval.String = LSCPSERVER->SubscribeNotification(LSCPEvent::event_voice_count);  }      { (yyval.String) = LSCPSERVER->ResetSampler();                        }
3221      break;      break;
3222    
3223    case 29:    case 29:
3224  #line 116 "lscp.y"  #line 129 "lscp.y"
3225      { yyval.String = LSCPSERVER->SubscribeNotification(LSCPEvent::event_stream_count); }      { LSCPSERVER->AnswerClient("Bye!\r\n"); return LSCP_QUIT; }
3226      break;      break;
3227    
3228    case 30:    case 30:
3229  #line 117 "lscp.y"  #line 132 "lscp.y"
3230      { yyval.String = LSCPSERVER->SubscribeNotification(LSCPEvent::event_buffer_fill);  }      { (yyval.String) = LSCPSERVER->AddChannel();                          }
3231      break;      break;
3232    
3233    case 31:    case 31:
3234  #line 118 "lscp.y"  #line 133 "lscp.y"
3235      { yyval.String = LSCPSERVER->SubscribeNotification(LSCPEvent::event_info);         }      { (yyval.String) = LSCPSERVER->AddMidiInstrumentMap();                }
3236      break;      break;
3237    
3238    case 32:    case 32:
3239  #line 119 "lscp.y"  #line 134 "lscp.y"
3240      { yyval.String = LSCPSERVER->SubscribeNotification(LSCPEvent::event_misc);         }      { (yyval.String) = LSCPSERVER->AddMidiInstrumentMap((yyvsp[(3) - (3)].String));              }
3241      break;      break;
3242    
3243    case 33:    case 33:
3244  #line 122 "lscp.y"  #line 137 "lscp.y"
3245      { yyval.String = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_channels);     }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_channel_count);     }
3246      break;      break;
3247    
3248    case 34:    case 34:
3249  #line 123 "lscp.y"  #line 138 "lscp.y"
3250      { yyval.String = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_voice_count);  }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_voice_count);       }
3251      break;      break;
3252    
3253    case 35:    case 35:
3254  #line 124 "lscp.y"  #line 139 "lscp.y"
3255      { yyval.String = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_stream_count); }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_stream_count);      }
3256      break;      break;
3257    
3258    case 36:    case 36:
3259  #line 125 "lscp.y"  #line 140 "lscp.y"
3260      { yyval.String = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_buffer_fill);  }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_buffer_fill);       }
3261      break;      break;
3262    
3263    case 37:    case 37:
3264  #line 126 "lscp.y"  #line 141 "lscp.y"
3265      { yyval.String = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_info);         }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_channel_info);      }
3266      break;      break;
3267    
3268    case 38:    case 38:
3269  #line 127 "lscp.y"  #line 142 "lscp.y"
3270      { yyval.String = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_misc);         }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_misc);              }
3271      break;      break;
3272    
3273    case 39:    case 39:
3274  #line 130 "lscp.y"  #line 143 "lscp.y"
3275      { yyval.String = LSCPSERVER->GetAvailableEngines();                          }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_total_voice_count); }
3276      break;      break;
3277    
3278    case 40:    case 40:
3279  #line 131 "lscp.y"  #line 146 "lscp.y"
3280      { yyval.String = LSCPSERVER->GetAvailableMidiInputDrivers();                 }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_channel_count);     }
3281      break;      break;
3282    
3283    case 41:    case 41:
3284  #line 132 "lscp.y"  #line 147 "lscp.y"
3285      { yyval.String = LSCPSERVER->GetMidiInputDriverInfo(yyvsp[0].String);                     }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_voice_count);       }
3286      break;      break;
3287    
3288    case 42:    case 42:
3289  #line 133 "lscp.y"  #line 148 "lscp.y"
3290      { yyval.String = LSCPSERVER->GetMidiInputDriverParameterInfo(yyvsp[-2].String, yyvsp[0].String);        }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_stream_count);      }
3291      break;      break;
3292    
3293    case 43:    case 43:
3294  #line 134 "lscp.y"  #line 149 "lscp.y"
3295      { yyval.String = LSCPSERVER->GetMidiInputDriverParameterInfo(yyvsp[-4].String, yyvsp[-2].String, yyvsp[0].KeyValList);    }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_buffer_fill);       }
3296      break;      break;
3297    
3298    case 44:    case 44:
3299  #line 135 "lscp.y"  #line 150 "lscp.y"
3300      { yyval.String = LSCPSERVER->GetAvailableAudioOutputDrivers();               }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_channel_info);      }
3301      break;      break;
3302    
3303    case 45:    case 45:
3304  #line 136 "lscp.y"  #line 151 "lscp.y"
3305      { yyval.String = LSCPSERVER->GetAudioOutputDriverInfo(yyvsp[0].String);                   }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_misc);              }
3306      break;      break;
3307    
3308    case 46:    case 46:
3309  #line 137 "lscp.y"  #line 152 "lscp.y"
3310      { yyval.String = LSCPSERVER->GetAudioOutputDriverParameterInfo(yyvsp[-2].String, yyvsp[0].String);      }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_total_voice_count); }
3311      break;      break;
3312    
3313    case 47:    case 47:
3314  #line 138 "lscp.y"  #line 155 "lscp.y"
3315      { yyval.String = LSCPSERVER->GetAudioOutputDriverParameterInfo(yyvsp[-4].String, yyvsp[-2].String, yyvsp[0].KeyValList);  }      { (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,""); }
3316      break;      break;
3317    
3318    case 48:    case 48:
3319  #line 139 "lscp.y"  #line 156 "lscp.y"
3320      { yyval.String = LSCPSERVER->GetAudioOutputDeviceCount();                    }      { (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),""); }
3321      break;      break;
3322    
3323    case 49:    case 49:
3324  #line 140 "lscp.y"  #line 157 "lscp.y"
3325      { yyval.String = LSCPSERVER->GetMidiInputDeviceCount();                      }      { (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)); }
3326      break;      break;
3327    
3328    case 50:    case 50:
3329  #line 141 "lscp.y"  #line 158 "lscp.y"
3330      { yyval.String = LSCPSERVER->GetAudioOutputDeviceInfo(yyvsp[0].Number);                   }      { (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)); }
3331      break;      break;
3332    
3333    case 51:    case 51:
3334  #line 142 "lscp.y"  #line 161 "lscp.y"
3335      { yyval.String = LSCPSERVER->GetMidiInputDeviceInfo(yyvsp[0].Number);                     }      { (yyval.String) = LSCPSERVER->RemoveMIDIInstrumentMapping((yyvsp[(3) - (7)].Number),(yyvsp[(5) - (7)].Number),(yyvsp[(7) - (7)].Number)); }
3336      break;      break;
3337    
3338    case 52:    case 52:
3339  #line 143 "lscp.y"  #line 164 "lscp.y"
3340      { yyval.String = LSCPSERVER->GetMidiInputPortInfo(yyvsp[-2].Number, yyvsp[0].Number);                   }      { (yyval.String) = LSCPSERVER->RemoveChannel((yyvsp[(3) - (3)].Number));             }
3341      break;      break;
3342    
3343    case 53:    case 53:
3344  #line 144 "lscp.y"  #line 165 "lscp.y"
3345      { yyval.String = LSCPSERVER->GetMidiInputPortParameterInfo(yyvsp[-4].Number, yyvsp[-2].Number, yyvsp[0].String);      }      { (yyval.String) = LSCPSERVER->RemoveMidiInstrumentMap((yyvsp[(3) - (3)].Number));   }
3346      break;      break;
3347    
3348    case 54:    case 54:
3349  #line 145 "lscp.y"  #line 166 "lscp.y"
3350      { yyval.String = LSCPSERVER->GetAudioOutputChannelInfo(yyvsp[-2].Number, yyvsp[0].Number);              }      { (yyval.String) = LSCPSERVER->RemoveAllMidiInstrumentMaps(); }
3351      break;      break;
3352    
3353    case 55:    case 55:
3354  #line 146 "lscp.y"  #line 169 "lscp.y"
3355      { yyval.String = LSCPSERVER->GetAudioOutputChannelParameterInfo(yyvsp[-4].Number, yyvsp[-2].Number, yyvsp[0].String); }      { (yyval.String) = LSCPSERVER->GetAvailableEngines();                          }
3356      break;      break;
3357    
3358    case 56:    case 56:
3359  #line 147 "lscp.y"  #line 170 "lscp.y"
3360      { yyval.String = LSCPSERVER->GetChannels();                                  }      { (yyval.String) = LSCPSERVER->GetAvailableMidiInputDrivers();                 }
3361      break;      break;
3362    
3363    case 57:    case 57:
3364  #line 148 "lscp.y"  #line 171 "lscp.y"
3365      { yyval.String = LSCPSERVER->GetChannelInfo(yyvsp[0].Number);                             }      { (yyval.String) = LSCPSERVER->GetMidiInputDriverInfo((yyvsp[(5) - (5)].String));                     }
3366      break;      break;
3367    
3368    case 58:    case 58:
3369  #line 149 "lscp.y"  #line 172 "lscp.y"
3370      { yyval.String = LSCPSERVER->GetBufferFill(yyvsp[-2].FillResponse, yyvsp[0].Number);                          }      { (yyval.String) = LSCPSERVER->GetMidiInputDriverParameterInfo((yyvsp[(5) - (7)].String), (yyvsp[(7) - (7)].String));        }
3371      break;      break;
3372    
3373    case 59:    case 59:
3374  #line 150 "lscp.y"  #line 173 "lscp.y"
3375      { yyval.String = LSCPSERVER->GetStreamCount(yyvsp[0].Number);                             }      { (yyval.String) = LSCPSERVER->GetMidiInputDriverParameterInfo((yyvsp[(5) - (9)].String), (yyvsp[(7) - (9)].String), (yyvsp[(9) - (9)].KeyValList));    }
3376      break;      break;
3377    
3378    case 60:    case 60:
3379  #line 151 "lscp.y"  #line 174 "lscp.y"
3380      { yyval.String = LSCPSERVER->GetVoiceCount(yyvsp[0].Number);                              }      { (yyval.String) = LSCPSERVER->GetAvailableAudioOutputDrivers();               }
3381      break;      break;
3382    
3383    case 61:    case 61:
3384  #line 152 "lscp.y"  #line 175 "lscp.y"
3385      { yyval.String = LSCPSERVER->GetEngineInfo(yyvsp[0].String);                              }      { (yyval.String) = LSCPSERVER->GetAudioOutputDriverInfo((yyvsp[(5) - (5)].String));                   }
3386      break;      break;
3387    
3388    case 62:    case 62:
3389  #line 155 "lscp.y"  #line 176 "lscp.y"
3390      { yyval.String = LSCPSERVER->SetAudioOutputDeviceParameter(yyvsp[-4].Number, yyvsp[-2].String, yyvsp[0].String);      }      { (yyval.String) = LSCPSERVER->GetAudioOutputDriverParameterInfo((yyvsp[(5) - (7)].String), (yyvsp[(7) - (7)].String));      }
3391      break;      break;
3392    
3393    case 63:    case 63:
3394  #line 156 "lscp.y"  #line 177 "lscp.y"
3395      { yyval.String = LSCPSERVER->SetAudioOutputChannelParameter(yyvsp[-6].Number, yyvsp[-4].Number, yyvsp[-2].String, yyvsp[0].String); }      { (yyval.String) = LSCPSERVER->GetAudioOutputDriverParameterInfo((yyvsp[(5) - (9)].String), (yyvsp[(7) - (9)].String), (yyvsp[(9) - (9)].KeyValList));  }
3396      break;      break;
3397    
3398    case 64:    case 64:
3399  #line 157 "lscp.y"  #line 178 "lscp.y"
3400      { yyval.String = LSCPSERVER->SetMidiInputDeviceParameter(yyvsp[-4].Number, yyvsp[-2].String, yyvsp[0].String);        }      { (yyval.String) = LSCPSERVER->GetAudioOutputDeviceCount();                    }
3401      break;      break;
3402    
3403    case 65:    case 65:
3404  #line 158 "lscp.y"  #line 179 "lscp.y"
3405      { yyval.String = LSCPSERVER->SetMidiInputPortParameter(yyvsp[-6].Number, yyvsp[-4].Number, yyvsp[-2].String, yyvsp[0].String);      }      { (yyval.String) = LSCPSERVER->GetMidiInputDeviceCount();                      }
3406      break;      break;
3407    
3408    case 66:    case 66:
3409  #line 159 "lscp.y"  #line 180 "lscp.y"
3410      { yyval.String = yyvsp[0].String;                                                         }      { (yyval.String) = LSCPSERVER->GetAudioOutputDeviceInfo((yyvsp[(5) - (5)].Number));                   }
3411      break;      break;
3412    
3413    case 67:    case 67:
3414  #line 160 "lscp.y"  #line 181 "lscp.y"
3415      { yyval.String = LSCPSERVER->SetEcho((yyparse_param_t*) yyparse_param, yyvsp[0].Dotnum);  }      { (yyval.String) = LSCPSERVER->GetMidiInputDeviceInfo((yyvsp[(5) - (5)].Number));                     }
3416      break;      break;
3417    
3418    case 68:    case 68:
3419  #line 163 "lscp.y"  #line 182 "lscp.y"
3420      { yyval.String = LSCPSERVER->CreateAudioOutputDevice(yyvsp[-2].String,yyvsp[0].KeyValList); }      { (yyval.String) = LSCPSERVER->GetMidiInputPortInfo((yyvsp[(5) - (7)].Number), (yyvsp[(7) - (7)].Number));                   }
3421      break;      break;
3422    
3423    case 69:    case 69:
3424  #line 164 "lscp.y"  #line 183 "lscp.y"
3425      { yyval.String = LSCPSERVER->CreateAudioOutputDevice(yyvsp[0].String);    }      { (yyval.String) = LSCPSERVER->GetMidiInputPortParameterInfo((yyvsp[(5) - (9)].Number), (yyvsp[(7) - (9)].Number), (yyvsp[(9) - (9)].String));      }
3426      break;      break;
3427    
3428    case 70:    case 70:
3429  #line 165 "lscp.y"  #line 184 "lscp.y"
3430      { yyval.String = LSCPSERVER->CreateMidiInputDevice(yyvsp[-2].String,yyvsp[0].KeyValList);   }      { (yyval.String) = LSCPSERVER->GetAudioOutputChannelInfo((yyvsp[(5) - (7)].Number), (yyvsp[(7) - (7)].Number));              }
3431      break;      break;
3432    
3433    case 71:    case 71:
3434  #line 166 "lscp.y"  #line 185 "lscp.y"
3435      { yyval.String = LSCPSERVER->CreateMidiInputDevice(yyvsp[0].String);      }      { (yyval.String) = LSCPSERVER->GetAudioOutputChannelParameterInfo((yyvsp[(5) - (9)].Number), (yyvsp[(7) - (9)].Number), (yyvsp[(9) - (9)].String)); }
3436      break;      break;
3437    
3438    case 72:    case 72:
3439  #line 169 "lscp.y"  #line 186 "lscp.y"
3440      { yyval.String = LSCPSERVER->DestroyAudioOutputDevice(yyvsp[0].Number); }      { (yyval.String) = LSCPSERVER->GetChannels();                                  }
3441      break;      break;
3442    
3443    case 73:    case 73:
3444  #line 170 "lscp.y"  #line 187 "lscp.y"
3445      { yyval.String = LSCPSERVER->DestroyMidiInputDevice(yyvsp[0].Number);   }      { (yyval.String) = LSCPSERVER->GetChannelInfo((yyvsp[(5) - (5)].Number));                             }
3446      break;      break;
3447    
3448    case 74:    case 74:
3449  #line 173 "lscp.y"  #line 188 "lscp.y"
3450      { yyval.String = yyvsp[0].String; }      { (yyval.String) = LSCPSERVER->GetBufferFill((yyvsp[(5) - (7)].FillResponse), (yyvsp[(7) - (7)].Number));                          }
3451      break;      break;
3452    
3453    case 75:    case 75:
3454  #line 174 "lscp.y"  #line 189 "lscp.y"
3455      { yyval.String = yyvsp[0].String; }      { (yyval.String) = LSCPSERVER->GetStreamCount((yyvsp[(5) - (5)].Number));                             }
3456      break;      break;
3457    
3458    case 76:    case 76:
3459  #line 177 "lscp.y"  #line 190 "lscp.y"
3460      { yyval.String = LSCPSERVER->SetAudioOutputDevice(yyvsp[0].Number, yyvsp[-2].Number);      }      { (yyval.String) = LSCPSERVER->GetVoiceCount((yyvsp[(5) - (5)].Number));                              }
3461      break;      break;
3462    
3463    case 77:    case 77:
3464  #line 178 "lscp.y"  #line 191 "lscp.y"
3465      { yyval.String = LSCPSERVER->SetAudioOutputChannel(yyvsp[-2].Number, yyvsp[0].Number, yyvsp[-4].Number); }      { (yyval.String) = LSCPSERVER->GetEngineInfo((yyvsp[(5) - (5)].String));                              }
3466      break;      break;
3467    
3468    case 78:    case 78:
3469  #line 179 "lscp.y"  #line 192 "lscp.y"
3470      { yyval.String = LSCPSERVER->SetAudioOutputType(yyvsp[0].String, yyvsp[-2].Number);        }      { (yyval.String) = LSCPSERVER->GetServerInfo();                                }
3471      break;      break;
3472    
3473    case 79:    case 79:
3474  #line 180 "lscp.y"  #line 193 "lscp.y"
3475      { yyval.String = LSCPSERVER->SetMIDIInput(yyvsp[-4].Number, yyvsp[-2].Number, yyvsp[0].Number, yyvsp[-6].Number);      }      { (yyval.String) = LSCPSERVER->GetTotalVoiceCount();                                }
3476      break;      break;
3477    
3478    case 80:    case 80:
3479  #line 181 "lscp.y"  #line 194 "lscp.y"
3480      { yyval.String = LSCPSERVER->SetMIDIInputDevice(yyvsp[0].Number, yyvsp[-2].Number);        }      { (yyval.String) = LSCPSERVER->GetTotalVoiceCountMax();                        }
3481      break;      break;
3482    
3483    case 81:    case 81:
3484  #line 182 "lscp.y"  #line 195 "lscp.y"
3485      { yyval.String = LSCPSERVER->SetMIDIInputPort(yyvsp[0].Number, yyvsp[-2].Number);          }      { (yyval.String) = LSCPSERVER->GetMidiInstrumentMappings((yyvsp[(3) - (3)].Number));                  }
3486      break;      break;
3487    
3488    case 82:    case 82:
3489  #line 183 "lscp.y"  #line 196 "lscp.y"
3490      { yyval.String = LSCPSERVER->SetMIDIInputChannel(yyvsp[0].Number, yyvsp[-2].Number);       }      { (yyval.String) = LSCPSERVER->GetAllMidiInstrumentMappings();                 }
3491      break;      break;
3492    
3493    case 83:    case 83:
3494  #line 184 "lscp.y"  #line 197 "lscp.y"
3495      { yyval.String = LSCPSERVER->SetMIDIInputType(yyvsp[0].String, yyvsp[-2].Number);          }      { (yyval.String) = LSCPSERVER->GetMidiInstrumentMapping((yyvsp[(5) - (9)].Number),(yyvsp[(7) - (9)].Number),(yyvsp[(9) - (9)].Number));             }
3496      break;      break;
3497    
3498    case 84:    case 84:
3499  #line 185 "lscp.y"  #line 198 "lscp.y"
3500      { yyval.String = LSCPSERVER->SetVolume(yyvsp[0].Dotnum, yyvsp[-2].Number);                 }      { (yyval.String) = LSCPSERVER->GetMidiInstrumentMaps();                        }
3501      break;      break;
3502    
3503    case 85:    case 85:
3504  #line 188 "lscp.y"  #line 199 "lscp.y"
3505      { yyval.KeyValList[yyvsp[-2].String] = yyvsp[0].String;          }      { (yyval.String) = LSCPSERVER->GetMidiInstrumentMap((yyvsp[(5) - (5)].Number));                       }
3506      break;      break;
3507    
3508    case 86:    case 86:
3509  #line 189 "lscp.y"  #line 202 "lscp.y"
3510      { yyval.KeyValList = yyvsp[-4].KeyValList; yyval.KeyValList[yyvsp[-2].String] = yyvsp[0].String; }      { (yyval.String) = LSCPSERVER->SetAudioOutputDeviceParameter((yyvsp[(3) - (7)].Number), (yyvsp[(5) - (7)].String), (yyvsp[(7) - (7)].String));      }
3511      break;      break;
3512    
3513    case 87:    case 87:
3514  #line 192 "lscp.y"  #line 203 "lscp.y"
3515      { yyval.FillResponse = fill_response_bytes;      }      { (yyval.String) = LSCPSERVER->SetAudioOutputChannelParameter((yyvsp[(3) - (9)].Number), (yyvsp[(5) - (9)].Number), (yyvsp[(7) - (9)].String), (yyvsp[(9) - (9)].String)); }
3516      break;      break;
3517    
3518    case 88:    case 88:
3519  #line 193 "lscp.y"  #line 204 "lscp.y"
3520      { yyval.FillResponse = fill_response_percentage; }      { (yyval.String) = LSCPSERVER->SetMidiInputDeviceParameter((yyvsp[(3) - (7)].Number), (yyvsp[(5) - (7)].String), (yyvsp[(7) - (7)].String));        }
3521      break;      break;
3522    
3523    case 89:    case 89:
3524  #line 196 "lscp.y"  #line 205 "lscp.y"
3525      { yyval.String = LSCPSERVER->GetAudioOutputDevices(); }      { (yyval.String) = LSCPSERVER->SetMidiInputPortParameter((yyvsp[(3) - (9)].Number), (yyvsp[(5) - (9)].Number), (yyvsp[(7) - (9)].String), (yyvsp[(9) - (9)].String));      }
3526      break;      break;
3527    
3528    case 90:    case 90:
3529  #line 197 "lscp.y"  #line 206 "lscp.y"
3530      { yyval.String = LSCPSERVER->GetMidiInputDevices();   }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                         }
3531      break;      break;
3532    
3533    case 91:    case 91:
3534  #line 198 "lscp.y"  #line 207 "lscp.y"
3535      { yyval.String = LSCPSERVER->ListChannels();          }      { (yyval.String) = LSCPSERVER->SetMidiInstrumentMapName((yyvsp[(5) - (7)].Number), (yyvsp[(7) - (7)].String));               }
3536      break;      break;
3537    
3538    case 92:    case 92:
3539  #line 201 "lscp.y"  #line 208 "lscp.y"
3540      { yyval.String = LSCPSERVER->LoadInstrument(yyvsp[-4].String, yyvsp[-2].Number, yyvsp[0].Number);       }      { (yyval.String) = LSCPSERVER->SetEcho((yyparse_param_t*) yyparse_param, (yyvsp[(3) - (3)].Dotnum));  }
3541      break;      break;
3542    
3543    case 93:    case 93:
3544  #line 202 "lscp.y"  #line 211 "lscp.y"
3545      { yyval.String = LSCPSERVER->LoadInstrument(yyvsp[-4].String, yyvsp[-2].Number, yyvsp[0].Number, true); }      { (yyval.String) = LSCPSERVER->CreateAudioOutputDevice((yyvsp[(3) - (5)].String),(yyvsp[(5) - (5)].KeyValList)); }
3546      break;      break;
3547    
3548    case 94:    case 94:
3549  #line 205 "lscp.y"  #line 212 "lscp.y"
3550      { yyval.String = LSCPSERVER->SetEngineType(yyvsp[-2].String, yyvsp[0].Number); }      { (yyval.String) = LSCPSERVER->CreateAudioOutputDevice((yyvsp[(3) - (3)].String));    }
3551      break;      break;
3552    
3553    case 100:    case 95:
3554    #line 213 "lscp.y"
3555        { (yyval.String) = LSCPSERVER->CreateMidiInputDevice((yyvsp[(3) - (5)].String),(yyvsp[(5) - (5)].KeyValList));   }
3556        break;
3557    
3558      case 96:
3559    #line 214 "lscp.y"
3560        { (yyval.String) = LSCPSERVER->CreateMidiInputDevice((yyvsp[(3) - (3)].String));      }
3561        break;
3562    
3563      case 97:
3564    #line 217 "lscp.y"
3565        { (yyval.String) = LSCPSERVER->ResetChannel((yyvsp[(3) - (3)].Number)); }
3566        break;
3567    
3568      case 98:
3569    #line 220 "lscp.y"
3570        { (yyval.String) = LSCPSERVER->ClearMidiInstrumentMappings((yyvsp[(3) - (3)].Number));  }
3571        break;
3572    
3573      case 99:
3574  #line 221 "lscp.y"  #line 221 "lscp.y"
3575      { yyval.Number = 16; }      { (yyval.String) = LSCPSERVER->ClearAllMidiInstrumentMappings(); }
3576      break;      break;
3577    
3578    case 103:    case 100:
3579    #line 224 "lscp.y"
3580        { (yyval.String) = LSCPSERVER->DestroyAudioOutputDevice((yyvsp[(3) - (3)].Number)); }
3581        break;
3582    
3583      case 101:
3584    #line 225 "lscp.y"
3585        { (yyval.String) = LSCPSERVER->DestroyMidiInputDevice((yyvsp[(3) - (3)].Number));   }
3586        break;
3587    
3588      case 102:
3589  #line 228 "lscp.y"  #line 228 "lscp.y"
3590      { yyval.Dotnum = yyvsp[0].Number; }      { (yyval.String) = (yyvsp[(3) - (3)].String); }
3591        break;
3592    
3593      case 103:
3594    #line 229 "lscp.y"
3595        { (yyval.String) = (yyvsp[(3) - (3)].String); }
3596        break;
3597    
3598      case 104:
3599    #line 232 "lscp.y"
3600        { (yyval.String) = LSCPSERVER->SetAudioOutputDevice((yyvsp[(5) - (5)].Number), (yyvsp[(3) - (5)].Number));      }
3601        break;
3602    
3603      case 105:
3604    #line 233 "lscp.y"
3605        { (yyval.String) = LSCPSERVER->SetAudioOutputChannel((yyvsp[(5) - (7)].Number), (yyvsp[(7) - (7)].Number), (yyvsp[(3) - (7)].Number)); }
3606        break;
3607    
3608      case 106:
3609    #line 234 "lscp.y"
3610        { (yyval.String) = LSCPSERVER->SetAudioOutputType((yyvsp[(5) - (5)].String), (yyvsp[(3) - (5)].Number));        }
3611        break;
3612    
3613      case 107:
3614    #line 235 "lscp.y"
3615        { (yyval.String) = LSCPSERVER->SetMIDIInput((yyvsp[(5) - (9)].Number), (yyvsp[(7) - (9)].Number), (yyvsp[(9) - (9)].Number), (yyvsp[(3) - (9)].Number));      }
3616        break;
3617    
3618      case 108:
3619    #line 236 "lscp.y"
3620        { (yyval.String) = LSCPSERVER->SetMIDIInputDevice((yyvsp[(5) - (5)].Number), (yyvsp[(3) - (5)].Number));        }
3621        break;
3622    
3623      case 109:
3624    #line 237 "lscp.y"
3625        { (yyval.String) = LSCPSERVER->SetMIDIInputPort((yyvsp[(5) - (5)].Number), (yyvsp[(3) - (5)].Number));          }
3626      break;      break;
3627    
3628    case 110:    case 110:
3629  #line 245 "lscp.y"  #line 238 "lscp.y"
3630      { std::stringstream ss; ss << yyvsp[0].Number; yyval.String = ss.str(); }      { (yyval.String) = LSCPSERVER->SetMIDIInputChannel((yyvsp[(5) - (5)].Number), (yyvsp[(3) - (5)].Number));       }
3631      break;      break;
3632    
3633    case 111:    case 111:
3634  #line 246 "lscp.y"  #line 239 "lscp.y"
3635      { std::stringstream ss; ss << yyvsp[0].Dotnum; yyval.String = ss.str(); }      { (yyval.String) = LSCPSERVER->SetMIDIInputType((yyvsp[(5) - (5)].String), (yyvsp[(3) - (5)].Number));          }
3636      break;      break;
3637    
3638    case 112:    case 112:
3639  #line 252 "lscp.y"  #line 240 "lscp.y"
3640      { yyval.Dotnum = yyvsp[0].Number; }      { (yyval.String) = LSCPSERVER->SetVolume((yyvsp[(5) - (5)].Dotnum), (yyvsp[(3) - (5)].Number));                 }
3641      break;      break;
3642    
3643    case 113:    case 113:
3644  #line 253 "lscp.y"  #line 241 "lscp.y"
3645      { yyval.Dotnum = -1; }      { (yyval.String) = LSCPSERVER->SetChannelMute((yyvsp[(5) - (5)].Dotnum), (yyvsp[(3) - (5)].Number));            }
3646      break;      break;
3647    
3648    case 114:    case 114:
3649  #line 256 "lscp.y"  #line 242 "lscp.y"
3650      { std::string s; s = yyvsp[0].Char; yyval.String = s; }      { (yyval.String) = LSCPSERVER->SetChannelSolo((yyvsp[(5) - (5)].Dotnum), (yyvsp[(3) - (5)].Number));            }
3651      break;      break;
3652    
3653    case 115:    case 115:
3654  #line 257 "lscp.y"  #line 243 "lscp.y"
3655      { yyval.String = yyvsp[-1].String + yyvsp[0].Char;                  }      { (yyval.String) = LSCPSERVER->SetChannelMap((yyvsp[(3) - (5)].Number), (yyvsp[(5) - (5)].Number));             }
3656      break;      break;
3657    
3658    case 116:    case 116:
3659  #line 260 "lscp.y"  #line 244 "lscp.y"
3660      { yyval.Dotnum = atof(String(yyvsp[-2].String + "." + yyvsp[0].String).c_str());                         }      { (yyval.String) = LSCPSERVER->SetChannelMap((yyvsp[(3) - (5)].Number), -1);             }
3661      break;      break;
3662    
3663    case 117:    case 117:
3664  #line 261 "lscp.y"  #line 245 "lscp.y"
3665      { String s = "+"; s += yyvsp[-2].String; s += "."; s += yyvsp[0].String; yyval.Dotnum = atof(s.c_str()); }      { (yyval.String) = LSCPSERVER->SetChannelMap((yyvsp[(3) - (5)].Number), -2);             }
3666      break;      break;
3667    
3668    case 118:    case 118:
3669  #line 262 "lscp.y"  #line 248 "lscp.y"
3670      { yyval.Dotnum = atof(String("-" + yyvsp[-2].String + "." + yyvsp[0].String).c_str());                   }      { (yyval.KeyValList)[(yyvsp[(1) - (3)].String)] = (yyvsp[(3) - (3)].String);          }
3671      break;      break;
3672    
3673    case 119:    case 119:
3674  #line 266 "lscp.y"  #line 249 "lscp.y"
3675      { yyval.String = yyvsp[0].Char;      }      { (yyval.KeyValList) = (yyvsp[(1) - (5)].KeyValList); (yyval.KeyValList)[(yyvsp[(3) - (5)].String)] = (yyvsp[(5) - (5)].String); }
3676      break;      break;
3677    
3678    case 120:    case 120:
3679  #line 267 "lscp.y"  #line 252 "lscp.y"
3680      { yyval.String = yyvsp[-1].String + yyvsp[0].Char; }      { (yyval.FillResponse) = fill_response_bytes;      }
3681      break;      break;
3682    
3683    case 121:    case 121:
3684  #line 270 "lscp.y"  #line 253 "lscp.y"
3685      { yyval.Char = '0'; }      { (yyval.FillResponse) = fill_response_percentage; }
3686      break;      break;
3687    
3688    case 122:    case 122:
3689  #line 271 "lscp.y"  #line 256 "lscp.y"
3690      { yyval.Char = '1'; }      { (yyval.String) = LSCPSERVER->GetAudioOutputDevices();           }
3691      break;      break;
3692    
3693    case 123:    case 123:
3694  #line 272 "lscp.y"  #line 257 "lscp.y"
3695      { yyval.Char = '2'; }      { (yyval.String) = LSCPSERVER->GetMidiInputDevices();             }
3696      break;      break;
3697    
3698    case 124:    case 124:
3699  #line 273 "lscp.y"  #line 258 "lscp.y"
3700      { yyval.Char = '3'; }      { (yyval.String) = LSCPSERVER->ListChannels();                    }
3701      break;      break;
3702    
3703    case 125:    case 125:
3704  #line 274 "lscp.y"  #line 259 "lscp.y"
3705      { yyval.Char = '4'; }      { (yyval.String) = LSCPSERVER->ListAvailableEngines();            }
3706      break;      break;
3707    
3708    case 126:    case 126:
3709  #line 275 "lscp.y"  #line 260 "lscp.y"
3710      { yyval.Char = '5'; }      { (yyval.String) = LSCPSERVER->ListAvailableMidiInputDrivers();   }
3711      break;      break;
3712    
3713    case 127:    case 127:
3714  #line 276 "lscp.y"  #line 261 "lscp.y"
3715      { yyval.Char = '6'; }      { (yyval.String) = LSCPSERVER->ListAvailableAudioOutputDrivers(); }
3716      break;      break;
3717    
3718    case 128:    case 128:
3719  #line 277 "lscp.y"  #line 262 "lscp.y"
3720      { yyval.Char = '7'; }      { (yyval.String) = LSCPSERVER->ListMidiInstrumentMappings((yyvsp[(3) - (3)].Number));    }
3721      break;      break;
3722    
3723    case 129:    case 129:
3724  #line 278 "lscp.y"  #line 263 "lscp.y"
3725      { yyval.Char = '8'; }      { (yyval.String) = LSCPSERVER->ListAllMidiInstrumentMappings();   }
3726      break;      break;
3727    
3728    case 130:    case 130:
3729  #line 279 "lscp.y"  #line 264 "lscp.y"
3730      { yyval.Char = '9'; }      { (yyval.String) = LSCPSERVER->ListMidiInstrumentMaps();          }
3731      break;      break;
3732    
3733    case 131:    case 131:
3734  #line 282 "lscp.y"  #line 267 "lscp.y"
3735      { yyval.Number = atoi(String(1, yyvsp[0].Char).c_str());      }      { (yyval.String) = LSCPSERVER->LoadInstrument((yyvsp[(1) - (5)].String), (yyvsp[(3) - (5)].Number), (yyvsp[(5) - (5)].Number));       }
3736      break;      break;
3737    
3738    case 132:    case 132:
3739  #line 283 "lscp.y"  #line 268 "lscp.y"
3740      { yyval.Number = atoi(String(String("1") + yyvsp[0].String).c_str()); }      { (yyval.String) = LSCPSERVER->LoadInstrument((yyvsp[(3) - (7)].String), (yyvsp[(5) - (7)].Number), (yyvsp[(7) - (7)].Number), true); }
3741      break;      break;
3742    
3743    case 133:    case 133:
3744  #line 284 "lscp.y"  #line 271 "lscp.y"
3745      { yyval.Number = atoi(String(String("2") + yyvsp[0].String).c_str()); }      { (yyval.String) = LSCPSERVER->SetEngineType((yyvsp[(1) - (3)].String), (yyvsp[(3) - (3)].Number)); }
3746      break;      break;
3747    
3748    case 134:    case 134:
3749  #line 285 "lscp.y"  #line 274 "lscp.y"
3750      { yyval.Number = atoi(String(String("3") + yyvsp[0].String).c_str()); }      { (yyval.LoadMode) = MidiInstrumentMapper::ON_DEMAND;      }
3751      break;      break;
3752    
3753    case 135:    case 135:
3754  #line 286 "lscp.y"  #line 275 "lscp.y"
3755      { yyval.Number = atoi(String(String("4") + yyvsp[0].String).c_str()); }      { (yyval.LoadMode) = MidiInstrumentMapper::ON_DEMAND_HOLD; }
3756      break;      break;
3757    
3758    case 136:    case 136:
3759  #line 287 "lscp.y"  #line 276 "lscp.y"
3760      { yyval.Number = atoi(String(String("5") + yyvsp[0].String).c_str()); }      { (yyval.LoadMode) = MidiInstrumentMapper::PERSISTENT;     }
     break;  
   
   case 137:  
 #line 288 "lscp.y"  
     { yyval.Number = atoi(String(String("6") + yyvsp[0].String).c_str()); }  
     break;  
   
   case 138:  
 #line 289 "lscp.y"  
     { yyval.Number = atoi(String(String("7") + yyvsp[0].String).c_str()); }  
     break;  
   
   case 139:  
 #line 290 "lscp.y"  
     { yyval.Number = atoi(String(String("8") + yyvsp[0].String).c_str()); }  
     break;  
   
   case 140:  
 #line 291 "lscp.y"  
     { yyval.Number = atoi(String(String("9") + yyvsp[0].String).c_str()); }  
     break;  
   
   case 141:  
 #line 293 "lscp.y"  
     { yyval.Char = 'A'; }  
3761      break;      break;
3762    
3763    case 142:    case 142:
3764  #line 293 "lscp.y"  #line 292 "lscp.y"
3765      { yyval.Char = 'B'; }      { (yyval.Number) = 16; }
     break;  
   
   case 143:  
 #line 293 "lscp.y"  
     { yyval.Char = 'C'; }  
     break;  
   
   case 144:  
 #line 293 "lscp.y"  
     { yyval.Char = 'D'; }  
     break;  
   
   case 145:  
 #line 293 "lscp.y"  
     { yyval.Char = 'E'; }  
     break;  
   
   case 146:  
 #line 293 "lscp.y"  
     { yyval.Char = 'F'; }  
     break;  
   
   case 147:  
 #line 293 "lscp.y"  
     { yyval.Char = 'G'; }  
3766      break;      break;
3767    
3768    case 148:    case 148:
3769  #line 293 "lscp.y"  #line 308 "lscp.y"
3770      { yyval.Char = 'H'; }      { (yyval.Dotnum) = (yyvsp[(1) - (1)].Number); }
     break;  
   
   case 149:  
 #line 293 "lscp.y"  
     { yyval.Char = 'I'; }  
     break;  
   
   case 150:  
 #line 293 "lscp.y"  
     { yyval.Char = 'J'; }  
     break;  
   
   case 151:  
 #line 293 "lscp.y"  
     { yyval.Char = 'K'; }  
     break;  
   
   case 152:  
 #line 293 "lscp.y"  
     { yyval.Char = 'L'; }  
     break;  
   
   case 153:  
 #line 293 "lscp.y"  
     { yyval.Char = 'M'; }  
     break;  
   
   case 154:  
 #line 293 "lscp.y"  
     { yyval.Char = 'N'; }  
     break;  
   
   case 155:  
 #line 293 "lscp.y"  
     { yyval.Char = 'O'; }  
3771      break;      break;
3772    
3773    case 156:    case 156:
3774  #line 293 "lscp.y"  #line 330 "lscp.y"
3775      { yyval.Char = 'P'; }      { (yyval.String) = (yyvsp[(1) - (3)].String) + "," + (yyvsp[(3) - (3)].String); }
     break;  
   
   case 157:  
 #line 293 "lscp.y"  
     { yyval.Char = 'Q'; }  
     break;  
   
   case 158:  
 #line 293 "lscp.y"  
     { yyval.Char = 'R'; }  
3776      break;      break;
3777    
3778    case 159:    case 159:
3779  #line 293 "lscp.y"  #line 335 "lscp.y"
3780      { yyval.Char = 'S'; }      { std::stringstream ss; ss << "\'" << (yyvsp[(1) - (1)].Number) << "\'"; (yyval.String) = ss.str(); }
3781      break;      break;
3782    
3783    case 160:    case 160:
3784  #line 293 "lscp.y"  #line 336 "lscp.y"
3785      { yyval.Char = 'T'; }      { std::stringstream ss; ss << "\'" << (yyvsp[(1) - (1)].Dotnum) << "\'"; (yyval.String) = ss.str(); }
3786      break;      break;
3787    
3788    case 161:    case 161:
3789  #line 293 "lscp.y"  #line 344 "lscp.y"
3790      { yyval.Char = 'U'; }      { (yyval.Dotnum) = (yyvsp[(1) - (1)].Number); }
3791      break;      break;
3792    
3793    case 162:    case 162:
3794  #line 293 "lscp.y"  #line 345 "lscp.y"
3795      { yyval.Char = 'V'; }      { (yyval.Dotnum) = -1; }
3796      break;      break;
3797    
3798    case 163:    case 163:
3799  #line 293 "lscp.y"  #line 348 "lscp.y"
3800      { yyval.Char = 'W'; }      { std::string s; s = (yyvsp[(1) - (1)].Char); (yyval.String) = s; }
3801      break;      break;
3802    
3803    case 164:    case 164:
3804  #line 293 "lscp.y"  #line 349 "lscp.y"
3805      { yyval.Char = 'X'; }      { (yyval.String) = (yyvsp[(1) - (2)].String) + (yyvsp[(2) - (2)].Char);                  }
3806      break;      break;
3807    
3808    case 165:    case 165:
3809  #line 293 "lscp.y"  #line 352 "lscp.y"
3810      { yyval.Char = 'Y'; }      { (yyval.Dotnum) = atof(String((yyvsp[(1) - (3)].String) + "." + (yyvsp[(3) - (3)].String)).c_str());                         }
3811      break;      break;
3812    
3813    case 166:    case 166:
3814  #line 293 "lscp.y"  #line 353 "lscp.y"
3815      { yyval.Char = 'Z'; }      { String s = "+"; s += (yyvsp[(2) - (4)].String); s += "."; s += (yyvsp[(4) - (4)].String); (yyval.Dotnum) = atof(s.c_str()); }
3816      break;      break;
3817    
3818    case 167:    case 167:
3819  #line 294 "lscp.y"  #line 354 "lscp.y"
3820      { yyval.Char = 'a'; }      { (yyval.Dotnum) = atof(String("-" + (yyvsp[(2) - (4)].String) + "." + (yyvsp[(4) - (4)].String)).c_str());                   }
3821      break;      break;
3822    
3823    case 168:    case 168:
3824  #line 294 "lscp.y"  #line 358 "lscp.y"
3825      { yyval.Char = 'b'; }      { (yyval.String) = (yyvsp[(1) - (1)].Char);      }
3826      break;      break;
3827    
3828    case 169:    case 169:
3829  #line 294 "lscp.y"  #line 359 "lscp.y"
3830      { yyval.Char = 'c'; }      { (yyval.String) = (yyvsp[(1) - (2)].String) + (yyvsp[(2) - (2)].Char); }
3831      break;      break;
3832    
3833    case 170:    case 170:
3834  #line 294 "lscp.y"  #line 362 "lscp.y"
3835      { yyval.Char = 'd'; }      { (yyval.Char) = '0'; }
3836      break;      break;
3837    
3838    case 171:    case 171:
3839  #line 294 "lscp.y"  #line 363 "lscp.y"
3840      { yyval.Char = 'e'; }      { (yyval.Char) = '1'; }
3841      break;      break;
3842    
3843    case 172:    case 172:
3844  #line 294 "lscp.y"  #line 364 "lscp.y"
3845      { yyval.Char = 'f'; }      { (yyval.Char) = '2'; }
3846      break;      break;
3847    
3848    case 173:    case 173:
3849  #line 294 "lscp.y"  #line 365 "lscp.y"
3850      { yyval.Char = 'g'; }      { (yyval.Char) = '3'; }
3851      break;      break;
3852    
3853    case 174:    case 174:
3854  #line 294 "lscp.y"  #line 366 "lscp.y"
3855      { yyval.Char = 'h'; }      { (yyval.Char) = '4'; }
3856      break;      break;
3857    
3858    case 175:    case 175:
3859  #line 294 "lscp.y"  #line 367 "lscp.y"
3860      { yyval.Char = 'i'; }      { (yyval.Char) = '5'; }
3861      break;      break;
3862    
3863    case 176:    case 176:
3864  #line 294 "lscp.y"  #line 368 "lscp.y"
3865      { yyval.Char = 'j'; }      { (yyval.Char) = '6'; }
3866      break;      break;
3867    
3868    case 177:    case 177:
3869  #line 294 "lscp.y"  #line 369 "lscp.y"
3870      { yyval.Char = 'k'; }      { (yyval.Char) = '7'; }
3871      break;      break;
3872    
3873    case 178:    case 178:
3874  #line 294 "lscp.y"  #line 370 "lscp.y"
3875      { yyval.Char = 'l'; }      { (yyval.Char) = '8'; }
3876      break;      break;
3877    
3878    case 179:    case 179:
3879  #line 294 "lscp.y"  #line 371 "lscp.y"
3880      { yyval.Char = 'm'; }      { (yyval.Char) = '9'; }
3881      break;      break;
3882    
3883    case 180:    case 180:
3884  #line 294 "lscp.y"  #line 374 "lscp.y"
3885      { yyval.Char = 'n'; }      { (yyval.Number) = atoi(String(1, (yyvsp[(1) - (1)].Char)).c_str());      }
3886      break;      break;
3887    
3888    case 181:    case 181:
3889  #line 294 "lscp.y"  #line 375 "lscp.y"
3890      { yyval.Char = 'o'; }      { (yyval.Number) = atoi(String(String("1") + (yyvsp[(2) - (2)].String)).c_str()); }
3891      break;      break;
3892    
3893    case 182:    case 182:
3894  #line 294 "lscp.y"  #line 376 "lscp.y"
3895      { yyval.Char = 'p'; }      { (yyval.Number) = atoi(String(String("2") + (yyvsp[(2) - (2)].String)).c_str()); }
3896      break;      break;
3897    
3898    case 183:    case 183:
3899  #line 294 "lscp.y"  #line 377 "lscp.y"
3900      { yyval.Char = 'q'; }      { (yyval.Number) = atoi(String(String("3") + (yyvsp[(2) - (2)].String)).c_str()); }
3901      break;      break;
3902    
3903    case 184:    case 184:
3904  #line 294 "lscp.y"  #line 378 "lscp.y"
3905      { yyval.Char = 'r'; }      { (yyval.Number) = atoi(String(String("4") + (yyvsp[(2) - (2)].String)).c_str()); }
3906      break;      break;
3907    
3908    case 185:    case 185:
3909  #line 294 "lscp.y"  #line 379 "lscp.y"
3910      { yyval.Char = 's'; }      { (yyval.Number) = atoi(String(String("5") + (yyvsp[(2) - (2)].String)).c_str()); }
3911      break;      break;
3912    
3913    case 186:    case 186:
3914  #line 294 "lscp.y"  #line 380 "lscp.y"
3915      { yyval.Char = 't'; }      { (yyval.Number) = atoi(String(String("6") + (yyvsp[(2) - (2)].String)).c_str()); }
3916      break;      break;
3917    
3918    case 187:    case 187:
3919  #line 294 "lscp.y"  #line 381 "lscp.y"
3920      { yyval.Char = 'u'; }      { (yyval.Number) = atoi(String(String("7") + (yyvsp[(2) - (2)].String)).c_str()); }
3921      break;      break;
3922    
3923    case 188:    case 188:
3924  #line 294 "lscp.y"  #line 382 "lscp.y"
3925      { yyval.Char = 'v'; }      { (yyval.Number) = atoi(String(String("8") + (yyvsp[(2) - (2)].String)).c_str()); }
3926      break;      break;
3927    
3928    case 189:    case 189:
3929  #line 294 "lscp.y"  #line 383 "lscp.y"
3930      { yyval.Char = 'w'; }      { (yyval.Number) = atoi(String(String("9") + (yyvsp[(2) - (2)].String)).c_str()); }
3931      break;      break;
3932    
3933    case 190:    case 190:
3934  #line 294 "lscp.y"  #line 385 "lscp.y"
3935      { yyval.Char = 'x'; }      { (yyval.Char) = 'A'; }
3936      break;      break;
3937    
3938    case 191:    case 191:
3939  #line 294 "lscp.y"  #line 385 "lscp.y"
3940      { yyval.Char = 'y'; }      { (yyval.Char) = 'B'; }
3941      break;      break;
3942    
3943    case 192:    case 192:
3944  #line 294 "lscp.y"  #line 385 "lscp.y"
3945      { yyval.Char = 'z'; }      { (yyval.Char) = 'C'; }
3946      break;      break;
3947    
3948    case 193:    case 193:
3949  #line 295 "lscp.y"  #line 385 "lscp.y"
3950      { yyval.Char = '0'; }      { (yyval.Char) = 'D'; }
3951      break;      break;
3952    
3953    case 194:    case 194:
3954  #line 295 "lscp.y"  #line 385 "lscp.y"
3955      { yyval.Char = '1'; }      { (yyval.Char) = 'E'; }
3956      break;      break;
3957    
3958    case 195:    case 195:
3959  #line 295 "lscp.y"  #line 385 "lscp.y"
3960      { yyval.Char = '2'; }      { (yyval.Char) = 'F'; }
3961      break;      break;
3962    
3963    case 196:    case 196:
3964  #line 295 "lscp.y"  #line 385 "lscp.y"
3965      { yyval.Char = '3'; }      { (yyval.Char) = 'G'; }
3966      break;      break;
3967    
3968    case 197:    case 197:
3969  #line 295 "lscp.y"  #line 385 "lscp.y"
3970      { yyval.Char = '4'; }      { (yyval.Char) = 'H'; }
3971      break;      break;
3972    
3973    case 198:    case 198:
3974  #line 295 "lscp.y"  #line 385 "lscp.y"
3975      { yyval.Char = '5'; }      { (yyval.Char) = 'I'; }
3976      break;      break;
3977    
3978    case 199:    case 199:
3979  #line 295 "lscp.y"  #line 385 "lscp.y"
3980      { yyval.Char = '6'; }      { (yyval.Char) = 'J'; }
3981      break;      break;
3982    
3983    case 200:    case 200:
3984  #line 295 "lscp.y"  #line 385 "lscp.y"
3985      { yyval.Char = '7'; }      { (yyval.Char) = 'K'; }
3986      break;      break;
3987    
3988    case 201:    case 201:
3989  #line 295 "lscp.y"  #line 385 "lscp.y"
3990      { yyval.Char = '8'; }      { (yyval.Char) = 'L'; }
3991      break;      break;
3992    
3993    case 202:    case 202:
3994  #line 295 "lscp.y"  #line 385 "lscp.y"
3995      { yyval.Char = '9'; }      { (yyval.Char) = 'M'; }
3996      break;      break;
3997    
3998    case 203:    case 203:
3999  #line 296 "lscp.y"  #line 385 "lscp.y"
4000      { yyval.Char = '!'; }      { (yyval.Char) = 'N'; }
4001      break;      break;
4002    
4003    case 204:    case 204:
4004  #line 296 "lscp.y"  #line 385 "lscp.y"
4005      { yyval.Char = '#'; }      { (yyval.Char) = 'O'; }
4006      break;      break;
4007    
4008    case 205:    case 205:
4009  #line 296 "lscp.y"  #line 385 "lscp.y"
4010      { yyval.Char = '$'; }      { (yyval.Char) = 'P'; }
4011      break;      break;
4012    
4013    case 206:    case 206:
4014  #line 296 "lscp.y"  #line 385 "lscp.y"
4015      { yyval.Char = '%'; }      { (yyval.Char) = 'Q'; }
4016      break;      break;
4017    
4018    case 207:    case 207:
4019  #line 296 "lscp.y"  #line 385 "lscp.y"
4020      { yyval.Char = '&'; }      { (yyval.Char) = 'R'; }
4021      break;      break;
4022    
4023    case 208:    case 208:
4024  #line 296 "lscp.y"  #line 385 "lscp.y"
4025      { yyval.Char = '('; }      { (yyval.Char) = 'S'; }
4026      break;      break;
4027    
4028    case 209:    case 209:
4029  #line 296 "lscp.y"  #line 385 "lscp.y"
4030      { yyval.Char = ')'; }      { (yyval.Char) = 'T'; }
4031      break;      break;
4032    
4033    case 210:    case 210:
4034  #line 296 "lscp.y"  #line 385 "lscp.y"
4035      { yyval.Char = '*'; }      { (yyval.Char) = 'U'; }
4036      break;      break;
4037    
4038    case 211:    case 211:
4039  #line 296 "lscp.y"  #line 385 "lscp.y"
4040      { yyval.Char = '+'; }      { (yyval.Char) = 'V'; }
4041      break;      break;
4042    
4043    case 212:    case 212:
4044  #line 296 "lscp.y"  #line 385 "lscp.y"
4045      { yyval.Char = '-'; }      { (yyval.Char) = 'W'; }
4046      break;      break;
4047    
4048    case 213:    case 213:
4049  #line 296 "lscp.y"  #line 385 "lscp.y"
4050      { yyval.Char = '.'; }      { (yyval.Char) = 'X'; }
4051      break;      break;
4052    
4053    case 214:    case 214:
4054  #line 296 "lscp.y"  #line 385 "lscp.y"
4055      { yyval.Char = ','; }      { (yyval.Char) = 'Y'; }
4056      break;      break;
4057    
4058    case 215:    case 215:
4059  #line 296 "lscp.y"  #line 385 "lscp.y"
4060      { yyval.Char = '/'; }      { (yyval.Char) = 'Z'; }
4061      break;      break;
4062    
4063    case 216:    case 216:
4064  #line 297 "lscp.y"  #line 386 "lscp.y"
4065      { yyval.Char = ':'; }      { (yyval.Char) = 'a'; }
4066      break;      break;
4067    
4068    case 217:    case 217:
4069  #line 297 "lscp.y"  #line 386 "lscp.y"
4070      { yyval.Char = ';'; }      { (yyval.Char) = 'b'; }
4071      break;      break;
4072    
4073    case 218:    case 218:
4074  #line 297 "lscp.y"  #line 386 "lscp.y"
4075      { yyval.Char = '<'; }      { (yyval.Char) = 'c'; }
4076      break;      break;
4077    
4078    case 219:    case 219:
4079  #line 297 "lscp.y"  #line 386 "lscp.y"
4080      { yyval.Char = '='; }      { (yyval.Char) = 'd'; }
4081      break;      break;
4082    
4083    case 220:    case 220:
4084  #line 297 "lscp.y"  #line 386 "lscp.y"
4085      { yyval.Char = '>'; }      { (yyval.Char) = 'e'; }
4086      break;      break;
4087    
4088    case 221:    case 221:
4089  #line 297 "lscp.y"  #line 386 "lscp.y"
4090      { yyval.Char = '?'; }      { (yyval.Char) = 'f'; }
4091      break;      break;
4092    
4093    case 222:    case 222:
4094  #line 297 "lscp.y"  #line 386 "lscp.y"
4095      { yyval.Char = '@'; }      { (yyval.Char) = 'g'; }
4096      break;      break;
4097    
4098    case 223:    case 223:
4099  #line 298 "lscp.y"  #line 386 "lscp.y"
4100      { yyval.Char = '['; }      { (yyval.Char) = 'h'; }
4101      break;      break;
4102    
4103    case 224:    case 224:
4104  #line 298 "lscp.y"  #line 386 "lscp.y"
4105      { yyval.Char = '\\'; }      { (yyval.Char) = 'i'; }
4106      break;      break;
4107    
4108    case 225:    case 225:
4109  #line 298 "lscp.y"  #line 386 "lscp.y"
4110      { yyval.Char = ']'; }      { (yyval.Char) = 'j'; }
4111      break;      break;
4112    
4113    case 226:    case 226:
4114  #line 298 "lscp.y"  #line 386 "lscp.y"
4115      { yyval.Char = '^'; }      { (yyval.Char) = 'k'; }
4116      break;      break;
4117    
4118    case 227:    case 227:
4119  #line 298 "lscp.y"  #line 386 "lscp.y"
4120      { yyval.Char = '_'; }      { (yyval.Char) = 'l'; }
4121      break;      break;
4122    
4123    case 228:    case 228:
4124  #line 299 "lscp.y"  #line 386 "lscp.y"
4125      { yyval.Char = '{'; }      { (yyval.Char) = 'm'; }
4126      break;      break;
4127    
4128    case 229:    case 229:
4129  #line 299 "lscp.y"  #line 386 "lscp.y"
4130      { yyval.Char = '|'; }      { (yyval.Char) = 'n'; }
4131      break;      break;
4132    
4133    case 230:    case 230:
4134  #line 299 "lscp.y"  #line 386 "lscp.y"
4135      { yyval.Char = '}'; }      { (yyval.Char) = 'o'; }
4136      break;      break;
4137    
4138    case 231:    case 231:
4139  #line 299 "lscp.y"  #line 386 "lscp.y"
4140      { yyval.Char = '~'; }      { (yyval.Char) = 'p'; }
4141      break;      break;
4142    
4143    case 232:    case 232:
4144  #line 300 "lscp.y"  #line 386 "lscp.y"
4145      { yyval.Char = '\200'; }      { (yyval.Char) = 'q'; }
4146      break;      break;
4147    
4148    case 233:    case 233:
4149  #line 300 "lscp.y"  #line 386 "lscp.y"
4150      { yyval.Char = '\201'; }      { (yyval.Char) = 'r'; }
4151      break;      break;
4152    
4153    case 234:    case 234:
4154  #line 300 "lscp.y"  #line 386 "lscp.y"
4155      { yyval.Char = '\202'; }      { (yyval.Char) = 's'; }
4156      break;      break;
4157    
4158    case 235:    case 235:
4159  #line 301 "lscp.y"  #line 386 "lscp.y"
4160      { yyval.Char = '\203'; }      { (yyval.Char) = 't'; }
4161      break;      break;
4162    
4163    case 236:    case 236:
4164  #line 301 "lscp.y"  #line 386 "lscp.y"
4165      { yyval.Char = '\204'; }      { (yyval.Char) = 'u'; }
4166      break;      break;
4167    
4168    case 237:    case 237:
4169  #line 301 "lscp.y"  #line 386 "lscp.y"
4170      { yyval.Char = '\205'; }      { (yyval.Char) = 'v'; }
4171      break;      break;
4172    
4173    case 238:    case 238:
4174  #line 302 "lscp.y"  #line 386 "lscp.y"
4175      { yyval.Char = '\206'; }      { (yyval.Char) = 'w'; }
4176      break;      break;
4177    
4178    case 239:    case 239:
4179  #line 302 "lscp.y"  #line 386 "lscp.y"
4180      { yyval.Char = '\207'; }      { (yyval.Char) = 'x'; }
4181      break;      break;
4182    
4183    case 240:    case 240:
4184  #line 302 "lscp.y"  #line 386 "lscp.y"
4185      { yyval.Char = '\210'; }      { (yyval.Char) = 'y'; }
4186      break;      break;
4187    
4188    case 241:    case 241:
4189  #line 303 "lscp.y"  #line 386 "lscp.y"
4190      { yyval.Char = '\211'; }      { (yyval.Char) = 'z'; }
4191      break;      break;
4192    
4193    case 242:    case 242:
4194  #line 303 "lscp.y"  #line 387 "lscp.y"
4195      { yyval.Char = '\212'; }      { (yyval.Char) = '0'; }
4196      break;      break;
4197    
4198    case 243:    case 243:
4199  #line 303 "lscp.y"  #line 387 "lscp.y"
4200      { yyval.Char = '\213'; }      { (yyval.Char) = '1'; }
4201      break;      break;
4202    
4203    case 244:    case 244:
4204  #line 304 "lscp.y"  #line 387 "lscp.y"
4205      { yyval.Char = '\214'; }      { (yyval.Char) = '2'; }
4206      break;      break;
4207    
4208    case 245:    case 245:
4209  #line 304 "lscp.y"  #line 387 "lscp.y"
4210      { yyval.Char = '\215'; }      { (yyval.Char) = '3'; }
4211      break;      break;
4212    
4213    case 246:    case 246:
4214  #line 304 "lscp.y"  #line 387 "lscp.y"
4215      { yyval.Char = '\216'; }      { (yyval.Char) = '4'; }
4216      break;      break;
4217    
4218    case 247:    case 247:
4219  #line 305 "lscp.y"  #line 387 "lscp.y"
4220      { yyval.Char = '\217'; }      { (yyval.Char) = '5'; }
4221      break;      break;
4222    
4223    case 248:    case 248:
4224  #line 305 "lscp.y"  #line 387 "lscp.y"
4225      { yyval.Char = '\220'; }      { (yyval.Char) = '6'; }
4226      break;      break;
4227    
4228    case 249:    case 249:
4229  #line 305 "lscp.y"  #line 387 "lscp.y"
4230      { yyval.Char = '\221'; }      { (yyval.Char) = '7'; }
4231      break;      break;
4232    
4233    case 250:    case 250:
4234  #line 306 "lscp.y"  #line 387 "lscp.y"
4235      { yyval.Char = '\222'; }      { (yyval.Char) = '8'; }
4236      break;      break;
4237    
4238    case 251:    case 251:
4239  #line 306 "lscp.y"  #line 387 "lscp.y"
4240      { yyval.Char = '\223'; }      { (yyval.Char) = '9'; }
4241      break;      break;
4242    
4243    case 252:    case 252:
4244  #line 306 "lscp.y"  #line 388 "lscp.y"
4245      { yyval.Char = '\224'; }      { (yyval.Char) = '!'; }
4246      break;      break;
4247    
4248    case 253:    case 253:
4249  #line 307 "lscp.y"  #line 388 "lscp.y"
4250      { yyval.Char = '\225'; }      { (yyval.Char) = '#'; }
4251      break;      break;
4252    
4253    case 254:    case 254:
4254  #line 307 "lscp.y"  #line 388 "lscp.y"
4255      { yyval.Char = '\226'; }      { (yyval.Char) = '$'; }
4256      break;      break;
4257    
4258    case 255:    case 255:
4259  #line 307 "lscp.y"  #line 388 "lscp.y"
4260      { yyval.Char = '\227'; }      { (yyval.Char) = '%'; }
4261      break;      break;
4262    
4263    case 256:    case 256:
4264  #line 308 "lscp.y"  #line 388 "lscp.y"
4265      { yyval.Char = '\230'; }      { (yyval.Char) = '&'; }
4266      break;      break;
4267    
4268    case 257:    case 257:
4269  #line 308 "lscp.y"  #line 388 "lscp.y"
4270      { yyval.Char = '\231'; }      { (yyval.Char) = '('; }
4271      break;      break;
4272    
4273    case 258:    case 258:
4274  #line 308 "lscp.y"  #line 388 "lscp.y"
4275      { yyval.Char = '\232'; }      { (yyval.Char) = ')'; }
4276      break;      break;
4277    
4278    case 259:    case 259:
4279  #line 309 "lscp.y"  #line 388 "lscp.y"
4280      { yyval.Char = '\233'; }      { (yyval.Char) = '*'; }
4281      break;      break;
4282    
4283    case 260:    case 260:
4284  #line 309 "lscp.y"  #line 388 "lscp.y"
4285      { yyval.Char = '\234'; }      { (yyval.Char) = '+'; }
4286      break;      break;
4287    
4288    case 261:    case 261:
4289  #line 309 "lscp.y"  #line 388 "lscp.y"
4290      { yyval.Char = '\235'; }      { (yyval.Char) = '-'; }
4291      break;      break;
4292    
4293    case 262:    case 262:
4294  #line 310 "lscp.y"  #line 388 "lscp.y"
4295      { yyval.Char = '\236'; }      { (yyval.Char) = '.'; }
4296      break;      break;
4297    
4298    case 263:    case 263:
4299  #line 310 "lscp.y"  #line 388 "lscp.y"
4300      { yyval.Char = '\237'; }      { (yyval.Char) = ','; }
4301      break;      break;
4302    
4303    case 264:    case 264:
4304  #line 310 "lscp.y"  #line 388 "lscp.y"
4305      { yyval.Char = '\240'; }      { (yyval.Char) = '/'; }
4306      break;      break;
4307    
4308    case 265:    case 265:
4309  #line 311 "lscp.y"  #line 389 "lscp.y"
4310      { yyval.Char = '\241'; }      { (yyval.Char) = ':'; }
4311      break;      break;
4312    
4313    case 266:    case 266:
4314  #line 311 "lscp.y"  #line 389 "lscp.y"
4315      { yyval.Char = '\242'; }      { (yyval.Char) = ';'; }
4316      break;      break;
4317    
4318    case 267:    case 267:
4319  #line 311 "lscp.y"  #line 389 "lscp.y"
4320      { yyval.Char = '\243'; }      { (yyval.Char) = '<'; }
4321      break;      break;
4322    
4323    case 268:    case 268:
4324  #line 312 "lscp.y"  #line 389 "lscp.y"
4325      { yyval.Char = '\244'; }      { (yyval.Char) = '='; }
4326      break;      break;
4327    
4328    case 269:    case 269:
4329  #line 312 "lscp.y"  #line 389 "lscp.y"
4330      { yyval.Char = '\245'; }      { (yyval.Char) = '>'; }
4331      break;      break;
4332    
4333    case 270:    case 270:
4334  #line 312 "lscp.y"  #line 389 "lscp.y"
4335      { yyval.Char = '\246'; }      { (yyval.Char) = '?'; }
4336      break;      break;
4337    
4338    case 271:    case 271:
4339  #line 313 "lscp.y"  #line 389 "lscp.y"
4340      { yyval.Char = '\247'; }      { (yyval.Char) = '@'; }
4341      break;      break;
4342    
4343    case 272:    case 272:
4344  #line 313 "lscp.y"  #line 390 "lscp.y"
4345      { yyval.Char = '\250'; }      { (yyval.Char) = '['; }
4346      break;      break;
4347    
4348    case 273:    case 273:
4349  #line 313 "lscp.y"  #line 390 "lscp.y"
4350      { yyval.Char = '\251'; }      { (yyval.Char) = '\\'; }
4351      break;      break;
4352    
4353    case 274:    case 274:
4354  #line 314 "lscp.y"  #line 390 "lscp.y"
4355      { yyval.Char = '\252'; }      { (yyval.Char) = ']'; }
4356      break;      break;
4357    
4358    case 275:    case 275:
4359  #line 314 "lscp.y"  #line 390 "lscp.y"
4360      { yyval.Char = '\253'; }      { (yyval.Char) = '^'; }
4361      break;      break;
4362    
4363    case 276:    case 276:
4364  #line 314 "lscp.y"  #line 390 "lscp.y"
4365      { yyval.Char = '\254'; }      { (yyval.Char) = '_'; }
4366      break;      break;
4367    
4368    case 277:    case 277:
4369  #line 315 "lscp.y"  #line 391 "lscp.y"
4370      { yyval.Char = '\255'; }      { (yyval.Char) = '{'; }
4371      break;      break;
4372    
4373    case 278:    case 278:
4374  #line 315 "lscp.y"  #line 391 "lscp.y"
4375      { yyval.Char = '\256'; }      { (yyval.Char) = '|'; }
4376      break;      break;
4377    
4378    case 279:    case 279:
4379  #line 315 "lscp.y"  #line 391 "lscp.y"
4380      { yyval.Char = '\257'; }      { (yyval.Char) = '}'; }
4381      break;      break;
4382    
4383    case 280:    case 280:
4384  #line 316 "lscp.y"  #line 391 "lscp.y"
4385      { yyval.Char = '\260'; }      { (yyval.Char) = '~'; }
4386      break;      break;
4387    
4388    case 281:    case 281:
4389  #line 316 "lscp.y"  #line 392 "lscp.y"
4390      { yyval.Char = '\261'; }      { (yyval.Char) = '\200'; }
4391      break;      break;
4392    
4393    case 282:    case 282:
4394  #line 316 "lscp.y"  #line 392 "lscp.y"
4395      { yyval.Char = '\262'; }      { (yyval.Char) = '\201'; }
4396      break;      break;
4397    
4398    case 283:    case 283:
4399  #line 317 "lscp.y"  #line 392 "lscp.y"
4400      { yyval.Char = '\263'; }      { (yyval.Char) = '\202'; }
4401      break;      break;
4402    
4403    case 284:    case 284:
4404  #line 317 "lscp.y"  #line 393 "lscp.y"
4405      { yyval.Char = '\264'; }      { (yyval.Char) = '\203'; }
4406      break;      break;
4407    
4408    case 285:    case 285:
4409  #line 317 "lscp.y"  #line 393 "lscp.y"
4410      { yyval.Char = '\265'; }      { (yyval.Char) = '\204'; }
4411      break;      break;
4412    
4413    case 286:    case 286:
4414  #line 318 "lscp.y"  #line 393 "lscp.y"
4415      { yyval.Char = '\266'; }      { (yyval.Char) = '\205'; }
4416      break;      break;
4417    
4418    case 287:    case 287:
4419  #line 318 "lscp.y"  #line 394 "lscp.y"
4420      { yyval.Char = '\267'; }      { (yyval.Char) = '\206'; }
4421      break;      break;
4422    
4423    case 288:    case 288:
4424  #line 318 "lscp.y"  #line 394 "lscp.y"
4425      { yyval.Char = '\270'; }      { (yyval.Char) = '\207'; }
4426      break;      break;
4427    
4428    case 289:    case 289:
4429  #line 319 "lscp.y"  #line 394 "lscp.y"
4430      { yyval.Char = '\271'; }      { (yyval.Char) = '\210'; }
4431      break;      break;
4432    
4433    case 290:    case 290:
4434  #line 319 "lscp.y"  #line 395 "lscp.y"
4435      { yyval.Char = '\272'; }      { (yyval.Char) = '\211'; }
4436      break;      break;
4437    
4438    case 291:    case 291:
4439  #line 319 "lscp.y"  #line 395 "lscp.y"
4440      { yyval.Char = '\273'; }      { (yyval.Char) = '\212'; }
4441      break;      break;
4442    
4443    case 292:    case 292:
4444  #line 320 "lscp.y"  #line 395 "lscp.y"
4445      { yyval.Char = '\274'; }      { (yyval.Char) = '\213'; }
4446      break;      break;
4447    
4448    case 293:    case 293:
4449  #line 320 "lscp.y"  #line 396 "lscp.y"
4450      { yyval.Char = '\275'; }      { (yyval.Char) = '\214'; }
4451      break;      break;
4452    
4453    case 294:    case 294:
4454  #line 320 "lscp.y"  #line 396 "lscp.y"
4455      { yyval.Char = '\276'; }      { (yyval.Char) = '\215'; }
4456      break;      break;
4457    
4458    case 295:    case 295:
4459  #line 321 "lscp.y"  #line 396 "lscp.y"
4460      { yyval.Char = '\277'; }      { (yyval.Char) = '\216'; }
4461      break;      break;
4462    
4463    case 296:    case 296:
4464  #line 321 "lscp.y"  #line 397 "lscp.y"
4465      { yyval.Char = '\300'; }      { (yyval.Char) = '\217'; }
4466      break;      break;
4467    
4468    case 297:    case 297:
4469  #line 321 "lscp.y"  #line 397 "lscp.y"
4470      { yyval.Char = '\301'; }      { (yyval.Char) = '\220'; }
4471      break;      break;
4472    
4473    case 298:    case 298:
4474  #line 322 "lscp.y"  #line 397 "lscp.y"
4475      { yyval.Char = '\302'; }      { (yyval.Char) = '\221'; }
4476      break;      break;
4477    
4478    case 299:    case 299:
4479  #line 322 "lscp.y"  #line 398 "lscp.y"
4480      { yyval.Char = '\303'; }      { (yyval.Char) = '\222'; }
4481      break;      break;
4482    
4483    case 300:    case 300:
4484  #line 322 "lscp.y"  #line 398 "lscp.y"
4485      { yyval.Char = '\304'; }      { (yyval.Char) = '\223'; }
4486      break;      break;
4487    
4488    case 301:    case 301:
4489  #line 323 "lscp.y"  #line 398 "lscp.y"
4490      { yyval.Char = '\305'; }      { (yyval.Char) = '\224'; }
4491      break;      break;
4492    
4493    case 302:    case 302:
4494  #line 323 "lscp.y"  #line 399 "lscp.y"
4495      { yyval.Char = '\306'; }      { (yyval.Char) = '\225'; }
4496      break;      break;
4497    
4498    case 303:    case 303:
4499  #line 323 "lscp.y"  #line 399 "lscp.y"
4500      { yyval.Char = '\307'; }      { (yyval.Char) = '\226'; }
4501      break;      break;
4502    
4503    case 304:    case 304:
4504  #line 324 "lscp.y"  #line 399 "lscp.y"
4505      { yyval.Char = '\310'; }      { (yyval.Char) = '\227'; }
4506      break;      break;
4507    
4508    case 305:    case 305:
4509  #line 324 "lscp.y"  #line 400 "lscp.y"
4510      { yyval.Char = '\311'; }      { (yyval.Char) = '\230'; }
4511      break;      break;
4512    
4513    case 306:    case 306:
4514  #line 324 "lscp.y"  #line 400 "lscp.y"
4515      { yyval.Char = '\312'; }      { (yyval.Char) = '\231'; }
4516      break;      break;
4517    
4518    case 307:    case 307:
4519  #line 325 "lscp.y"  #line 400 "lscp.y"
4520      { yyval.Char = '\313'; }      { (yyval.Char) = '\232'; }
4521      break;      break;
4522    
4523    case 308:    case 308:
4524  #line 325 "lscp.y"  #line 401 "lscp.y"
4525      { yyval.Char = '\314'; }      { (yyval.Char) = '\233'; }
4526      break;      break;
4527    
4528    case 309:    case 309:
4529  #line 325 "lscp.y"  #line 401 "lscp.y"
4530      { yyval.Char = '\315'; }      { (yyval.Char) = '\234'; }
4531      break;      break;
4532    
4533    case 310:    case 310:
4534  #line 326 "lscp.y"  #line 401 "lscp.y"
4535      { yyval.Char = '\316'; }      { (yyval.Char) = '\235'; }
4536      break;      break;
4537    
4538    case 311:    case 311:
4539  #line 326 "lscp.y"  #line 402 "lscp.y"
4540      { yyval.Char = '\317'; }      { (yyval.Char) = '\236'; }
4541      break;      break;
4542    
4543    case 312:    case 312:
4544  #line 326 "lscp.y"  #line 402 "lscp.y"
4545      { yyval.Char = '\320'; }      { (yyval.Char) = '\237'; }
4546      break;      break;
4547    
4548    case 313:    case 313:
4549  #line 327 "lscp.y"  #line 402 "lscp.y"
4550      { yyval.Char = '\321'; }      { (yyval.Char) = '\240'; }
4551      break;      break;
4552    
4553    case 314:    case 314:
4554  #line 327 "lscp.y"  #line 403 "lscp.y"
4555      { yyval.Char = '\322'; }      { (yyval.Char) = '\241'; }
4556      break;      break;
4557    
4558    case 315:    case 315:
4559  #line 327 "lscp.y"  #line 403 "lscp.y"
4560      { yyval.Char = '\323'; }      { (yyval.Char) = '\242'; }
4561      break;      break;
4562    
4563    case 316:    case 316:
4564  #line 328 "lscp.y"  #line 403 "lscp.y"
4565      { yyval.Char = '\324'; }      { (yyval.Char) = '\243'; }
4566      break;      break;
4567    
4568    case 317:    case 317:
4569  #line 328 "lscp.y"  #line 404 "lscp.y"
4570      { yyval.Char = '\325'; }      { (yyval.Char) = '\244'; }
4571      break;      break;
4572    
4573    case 318:    case 318:
4574  #line 328 "lscp.y"  #line 404 "lscp.y"
4575      { yyval.Char = '\326'; }      { (yyval.Char) = '\245'; }
4576      break;      break;
4577    
4578    case 319:    case 319:
4579  #line 329 "lscp.y"  #line 404 "lscp.y"
4580      { yyval.Char = '\327'; }      { (yyval.Char) = '\246'; }
4581      break;      break;
4582    
4583    case 320:    case 320:
4584  #line 329 "lscp.y"  #line 405 "lscp.y"
4585      { yyval.Char = '\330'; }      { (yyval.Char) = '\247'; }
4586      break;      break;
4587    
4588    case 321:    case 321:
4589  #line 329 "lscp.y"  #line 405 "lscp.y"
4590      { yyval.Char = '\331'; }      { (yyval.Char) = '\250'; }
4591      break;      break;
4592    
4593    case 322:    case 322:
4594  #line 330 "lscp.y"  #line 405 "lscp.y"
4595      { yyval.Char = '\332'; }      { (yyval.Char) = '\251'; }
4596      break;      break;
4597    
4598    case 323:    case 323:
4599  #line 330 "lscp.y"  #line 406 "lscp.y"
4600      { yyval.Char = '\333'; }      { (yyval.Char) = '\252'; }
4601      break;      break;
4602    
4603    case 324:    case 324:
4604  #line 330 "lscp.y"  #line 406 "lscp.y"
4605      { yyval.Char = '\334'; }      { (yyval.Char) = '\253'; }
4606      break;      break;
4607    
4608    case 325:    case 325:
4609  #line 331 "lscp.y"  #line 406 "lscp.y"
4610      { yyval.Char = '\335'; }      { (yyval.Char) = '\254'; }
4611      break;      break;
4612    
4613    case 326:    case 326:
4614  #line 331 "lscp.y"  #line 407 "lscp.y"
4615      { yyval.Char = '\336'; }      { (yyval.Char) = '\255'; }
4616      break;      break;
4617    
4618    case 327:    case 327:
4619  #line 331 "lscp.y"  #line 407 "lscp.y"
4620      { yyval.Char = '\337'; }      { (yyval.Char) = '\256'; }
4621      break;      break;
4622    
4623    case 328:    case 328:
4624  #line 332 "lscp.y"  #line 407 "lscp.y"
4625      { yyval.Char = '\340'; }      { (yyval.Char) = '\257'; }
4626      break;      break;
4627    
4628    case 329:    case 329:
4629  #line 332 "lscp.y"  #line 408 "lscp.y"
4630      { yyval.Char = '\341'; }      { (yyval.Char) = '\260'; }
4631      break;      break;
4632    
4633    case 330:    case 330:
4634  #line 332 "lscp.y"  #line 408 "lscp.y"
4635      { yyval.Char = '\342'; }      { (yyval.Char) = '\261'; }
4636      break;      break;
4637    
4638    case 331:    case 331:
4639  #line 333 "lscp.y"  #line 408 "lscp.y"
4640      { yyval.Char = '\343'; }      { (yyval.Char) = '\262'; }
4641      break;      break;
4642    
4643    case 332:    case 332:
4644  #line 333 "lscp.y"  #line 409 "lscp.y"
4645      { yyval.Char = '\344'; }      { (yyval.Char) = '\263'; }
4646      break;      break;
4647    
4648    case 333:    case 333:
4649  #line 333 "lscp.y"  #line 409 "lscp.y"
4650      { yyval.Char = '\345'; }      { (yyval.Char) = '\264'; }
4651      break;      break;
4652    
4653    case 334:    case 334:
4654  #line 334 "lscp.y"  #line 409 "lscp.y"
4655      { yyval.Char = '\346'; }      { (yyval.Char) = '\265'; }
4656      break;      break;
4657    
4658    case 335:    case 335:
4659  #line 334 "lscp.y"  #line 410 "lscp.y"
4660      { yyval.Char = '\347'; }      { (yyval.Char) = '\266'; }
4661      break;      break;
4662    
4663    case 336:    case 336:
4664  #line 334 "lscp.y"  #line 410 "lscp.y"
4665      { yyval.Char = '\350'; }      { (yyval.Char) = '\267'; }
4666      break;      break;
4667    
4668    case 337:    case 337:
4669  #line 335 "lscp.y"  #line 410 "lscp.y"
4670      { yyval.Char = '\351'; }      { (yyval.Char) = '\270'; }
4671      break;      break;
4672    
4673    case 338:    case 338:
4674  #line 335 "lscp.y"  #line 411 "lscp.y"
4675      { yyval.Char = '\352'; }      { (yyval.Char) = '\271'; }
4676      break;      break;
4677    
4678    case 339:    case 339:
4679  #line 335 "lscp.y"  #line 411 "lscp.y"
4680      { yyval.Char = '\353'; }      { (yyval.Char) = '\272'; }
4681      break;      break;
4682    
4683    case 340:    case 340:
4684  #line 336 "lscp.y"  #line 411 "lscp.y"
4685      { yyval.Char = '\354'; }      { (yyval.Char) = '\273'; }
4686      break;      break;
4687    
4688    case 341:    case 341:
4689  #line 336 "lscp.y"  #line 412 "lscp.y"
4690      { yyval.Char = '\355'; }      { (yyval.Char) = '\274'; }
4691      break;      break;
4692    
4693    case 342:    case 342:
4694  #line 336 "lscp.y"  #line 412 "lscp.y"
4695      { yyval.Char = '\356'; }      { (yyval.Char) = '\275'; }
4696      break;      break;
4697    
4698    case 343:    case 343:
4699  #line 337 "lscp.y"  #line 412 "lscp.y"
4700      { yyval.Char = '\357'; }      { (yyval.Char) = '\276'; }
4701      break;      break;
4702    
4703    case 344:    case 344:
4704  #line 337 "lscp.y"  #line 413 "lscp.y"
4705      { yyval.Char = '\360'; }      { (yyval.Char) = '\277'; }
4706      break;      break;
4707    
4708    case 345:    case 345:
4709  #line 337 "lscp.y"  #line 413 "lscp.y"
4710      { yyval.Char = '\361'; }      { (yyval.Char) = '\300'; }
4711      break;      break;
4712    
4713    case 346:    case 346:
4714  #line 338 "lscp.y"  #line 413 "lscp.y"
4715      { yyval.Char = '\362'; }      { (yyval.Char) = '\301'; }
4716      break;      break;
4717    
4718    case 347:    case 347:
4719  #line 338 "lscp.y"  #line 414 "lscp.y"
4720      { yyval.Char = '\363'; }      { (yyval.Char) = '\302'; }
4721      break;      break;
4722    
4723    case 348:    case 348:
4724  #line 338 "lscp.y"  #line 414 "lscp.y"
4725      { yyval.Char = '\364'; }      { (yyval.Char) = '\303'; }
4726      break;      break;
4727    
4728    case 349:    case 349:
4729  #line 339 "lscp.y"  #line 414 "lscp.y"
4730      { yyval.Char = '\365'; }      { (yyval.Char) = '\304'; }
4731      break;      break;
4732    
4733    case 350:    case 350:
4734  #line 339 "lscp.y"  #line 415 "lscp.y"
4735      { yyval.Char = '\366'; }      { (yyval.Char) = '\305'; }
4736      break;      break;
4737    
4738    case 351:    case 351:
4739  #line 339 "lscp.y"  #line 415 "lscp.y"
4740      { yyval.Char = '\367'; }      { (yyval.Char) = '\306'; }
4741      break;      break;
4742    
4743    case 352:    case 352:
4744  #line 340 "lscp.y"  #line 415 "lscp.y"
4745      { yyval.Char = '\370'; }      { (yyval.Char) = '\307'; }
4746      break;      break;
4747    
4748    case 353:    case 353:
4749  #line 340 "lscp.y"  #line 416 "lscp.y"
4750      { yyval.Char = '\371'; }      { (yyval.Char) = '\310'; }
4751      break;      break;
4752    
4753    case 354:    case 354:
4754  #line 340 "lscp.y"  #line 416 "lscp.y"
4755      { yyval.Char = '\372'; }      { (yyval.Char) = '\311'; }
4756      break;      break;
4757    
4758    case 355:    case 355:
4759  #line 341 "lscp.y"  #line 416 "lscp.y"
4760      { yyval.Char = '\373'; }      { (yyval.Char) = '\312'; }
4761      break;      break;
4762    
4763    case 356:    case 356:
4764  #line 341 "lscp.y"  #line 417 "lscp.y"
4765      { yyval.Char = '\374'; }      { (yyval.Char) = '\313'; }
4766      break;      break;
4767    
4768    case 357:    case 357:
4769  #line 341 "lscp.y"  #line 417 "lscp.y"
4770      { yyval.Char = '\375'; }      { (yyval.Char) = '\314'; }
4771      break;      break;
4772    
4773    case 358:    case 358:
4774  #line 342 "lscp.y"  #line 417 "lscp.y"
4775      { yyval.Char = '\376'; }      { (yyval.Char) = '\315'; }
4776      break;      break;
4777    
4778    case 359:    case 359:
4779  #line 342 "lscp.y"  #line 418 "lscp.y"
4780      { yyval.Char = '\377'; }      { (yyval.Char) = '\316'; }
4781      break;      break;
4782    
4783    case 360:    case 360:
4784  #line 345 "lscp.y"  #line 418 "lscp.y"
4785      { yyval.String = " ";      }      { (yyval.Char) = '\317'; }
4786        break;
4787    
4788      case 361:
4789    #line 418 "lscp.y"
4790        { (yyval.Char) = '\320'; }
4791      break;      break;
4792    
4793    case 362:    case 362:
4794  #line 347 "lscp.y"  #line 419 "lscp.y"
4795      { yyval.String = yyvsp[-1].String + " "; }      { (yyval.Char) = '\321'; }
4796      break;      break;
4797    
4798    case 363:    case 363:
4799  #line 348 "lscp.y"  #line 419 "lscp.y"
4800      { yyval.String = yyvsp[-1].String + yyvsp[0].String;  }      { (yyval.Char) = '\322'; }
4801      break;      break;
4802    
4803    case 364:    case 364:
4804  #line 351 "lscp.y"  #line 419 "lscp.y"
4805      { yyval.String = yyvsp[-1].String; }      { (yyval.Char) = '\323'; }
4806      break;      break;
4807    
4808    case 365:    case 365:
4809  #line 352 "lscp.y"  #line 420 "lscp.y"
4810      { yyval.String = yyvsp[-1].String; }      { (yyval.Char) = '\324'; }
4811      break;      break;
4812    
4813      case 366:
4814    #line 420 "lscp.y"
4815        { (yyval.Char) = '\325'; }
4816        break;
4817    
4818      }    case 367:
4819    #line 420 "lscp.y"
4820        { (yyval.Char) = '\326'; }
4821        break;
4822    
4823  /* Line 1010 of yacc.c.  */    case 368:
4824  #line 4264 "y.tab.c"  #line 421 "lscp.y"
4825        { (yyval.Char) = '\327'; }
4826    yyvsp -= yylen;      break;
4827    yyssp -= yylen;  
4828      case 369:
4829    #line 421 "lscp.y"
4830        { (yyval.Char) = '\330'; }
4831        break;
4832    
4833      case 370:
4834    #line 421 "lscp.y"
4835        { (yyval.Char) = '\331'; }
4836        break;
4837    
4838      case 371:
4839    #line 422 "lscp.y"
4840        { (yyval.Char) = '\332'; }
4841        break;
4842    
4843      case 372:
4844    #line 422 "lscp.y"
4845        { (yyval.Char) = '\333'; }
4846        break;
4847    
4848      case 373:
4849    #line 422 "lscp.y"
4850        { (yyval.Char) = '\334'; }
4851        break;
4852    
4853      case 374:
4854    #line 423 "lscp.y"
4855        { (yyval.Char) = '\335'; }
4856        break;
4857    
4858      case 375:
4859    #line 423 "lscp.y"
4860        { (yyval.Char) = '\336'; }
4861        break;
4862    
4863      case 376:
4864    #line 423 "lscp.y"
4865        { (yyval.Char) = '\337'; }
4866        break;
4867    
4868      case 377:
4869    #line 424 "lscp.y"
4870        { (yyval.Char) = '\340'; }
4871        break;
4872    
4873      case 378:
4874    #line 424 "lscp.y"
4875        { (yyval.Char) = '\341'; }
4876        break;
4877    
4878      case 379:
4879    #line 424 "lscp.y"
4880        { (yyval.Char) = '\342'; }
4881        break;
4882    
4883      case 380:
4884    #line 425 "lscp.y"
4885        { (yyval.Char) = '\343'; }
4886        break;
4887    
4888      case 381:
4889    #line 425 "lscp.y"
4890        { (yyval.Char) = '\344'; }
4891        break;
4892    
4893      case 382:
4894    #line 425 "lscp.y"
4895        { (yyval.Char) = '\345'; }
4896        break;
4897    
4898      case 383:
4899    #line 426 "lscp.y"
4900        { (yyval.Char) = '\346'; }
4901        break;
4902    
4903      case 384:
4904    #line 426 "lscp.y"
4905        { (yyval.Char) = '\347'; }
4906        break;
4907    
4908      case 385:
4909    #line 426 "lscp.y"
4910        { (yyval.Char) = '\350'; }
4911        break;
4912    
4913      case 386:
4914    #line 427 "lscp.y"
4915        { (yyval.Char) = '\351'; }
4916        break;
4917    
4918      case 387:
4919    #line 427 "lscp.y"
4920        { (yyval.Char) = '\352'; }
4921        break;
4922    
4923      case 388:
4924    #line 427 "lscp.y"
4925        { (yyval.Char) = '\353'; }
4926        break;
4927    
4928      case 389:
4929    #line 428 "lscp.y"
4930        { (yyval.Char) = '\354'; }
4931        break;
4932    
4933      case 390:
4934    #line 428 "lscp.y"
4935        { (yyval.Char) = '\355'; }
4936        break;
4937    
4938      case 391:
4939    #line 428 "lscp.y"
4940        { (yyval.Char) = '\356'; }
4941        break;
4942    
4943      case 392:
4944    #line 429 "lscp.y"
4945        { (yyval.Char) = '\357'; }
4946        break;
4947    
4948      case 393:
4949    #line 429 "lscp.y"
4950        { (yyval.Char) = '\360'; }
4951        break;
4952    
4953      case 394:
4954    #line 429 "lscp.y"
4955        { (yyval.Char) = '\361'; }
4956        break;
4957    
4958      case 395:
4959    #line 430 "lscp.y"
4960        { (yyval.Char) = '\362'; }
4961        break;
4962    
4963      case 396:
4964    #line 430 "lscp.y"
4965        { (yyval.Char) = '\363'; }
4966        break;
4967    
4968      case 397:
4969    #line 430 "lscp.y"
4970        { (yyval.Char) = '\364'; }
4971        break;
4972    
4973      case 398:
4974    #line 431 "lscp.y"
4975        { (yyval.Char) = '\365'; }
4976        break;
4977    
4978      case 399:
4979    #line 431 "lscp.y"
4980        { (yyval.Char) = '\366'; }
4981        break;
4982    
4983      case 400:
4984    #line 431 "lscp.y"
4985        { (yyval.Char) = '\367'; }
4986        break;
4987    
4988      case 401:
4989    #line 432 "lscp.y"
4990        { (yyval.Char) = '\370'; }
4991        break;
4992    
4993      case 402:
4994    #line 432 "lscp.y"
4995        { (yyval.Char) = '\371'; }
4996        break;
4997    
4998      case 403:
4999    #line 432 "lscp.y"
5000        { (yyval.Char) = '\372'; }
5001        break;
5002    
5003      case 404:
5004    #line 433 "lscp.y"
5005        { (yyval.Char) = '\373'; }
5006        break;
5007    
5008      case 405:
5009    #line 433 "lscp.y"
5010        { (yyval.Char) = '\374'; }
5011        break;
5012    
5013      case 406:
5014    #line 433 "lscp.y"
5015        { (yyval.Char) = '\375'; }
5016        break;
5017    
5018      case 407:
5019    #line 434 "lscp.y"
5020        { (yyval.Char) = '\376'; }
5021        break;
5022    
5023      case 408:
5024    #line 434 "lscp.y"
5025        { (yyval.Char) = '\377'; }
5026        break;
5027    
5028      case 409:
5029    #line 437 "lscp.y"
5030        { (yyval.String) = " ";      }
5031        break;
5032    
5033      case 411:
5034    #line 439 "lscp.y"
5035        { (yyval.String) = (yyvsp[(1) - (2)].String) + " "; }
5036        break;
5037    
5038      case 412:
5039    #line 440 "lscp.y"
5040        { (yyval.String) = (yyvsp[(1) - (2)].String) + (yyvsp[(2) - (2)].String);  }
5041        break;
5042    
5043      case 413:
5044    #line 443 "lscp.y"
5045        { (yyval.String) = (yyvsp[(2) - (3)].String); }
5046        break;
5047    
5048      case 414:
5049    #line 444 "lscp.y"
5050        { (yyval.String) = (yyvsp[(2) - (3)].String); }
5051        break;
5052    
5053    
5054    /* Line 1267 of yacc.c.  */
5055    #line 5056 "y.tab.c"
5056          default: break;
5057        }
5058      YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
5059    
5060      YYPOPSTACK (yylen);
5061      yylen = 0;
5062    YY_STACK_PRINT (yyss, yyssp);    YY_STACK_PRINT (yyss, yyssp);
5063    
5064    *++yyvsp = yyval;    *++yyvsp = yyval;
# Line 4294  yyerrlab: Line 5087  yyerrlab:
5087    if (!yyerrstatus)    if (!yyerrstatus)
5088      {      {
5089        ++yynerrs;        ++yynerrs;
5090  #if YYERROR_VERBOSE  #if ! YYERROR_VERBOSE
5091        yyn = yypact[yystate];        yyerror (YY_("syntax error"));
5092    #else
5093        if (YYPACT_NINF < yyn && yyn < YYLAST)        {
5094          {          YYSIZE_T yysize = yysyntax_error (0, yystate, yychar);
5095            YYSIZE_T yysize = 0;          if (yymsg_alloc < yysize && yymsg_alloc < YYSTACK_ALLOC_MAXIMUM)
5096            int yytype = YYTRANSLATE (yychar);            {
5097            const char* yyprefix;              YYSIZE_T yyalloc = 2 * yysize;
5098            char *yymsg;              if (! (yysize <= yyalloc && yyalloc <= YYSTACK_ALLOC_MAXIMUM))
5099            int yyx;                yyalloc = YYSTACK_ALLOC_MAXIMUM;
5100                if (yymsg != yymsgbuf)
5101            /* Start YYX at -YYN if negative to avoid negative indexes in                YYSTACK_FREE (yymsg);
5102               YYCHECK.  */              yymsg = (char *) YYSTACK_ALLOC (yyalloc);
5103            int yyxbegin = yyn < 0 ? -yyn : 0;              if (yymsg)
5104                  yymsg_alloc = yyalloc;
5105            /* 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)  
5106                {                {
5107                  yysize += yystrlen (yyprefix) + yystrlen (yytname [yyx]);                  yymsg = yymsgbuf;
5108                  yycount += 1;                  yymsg_alloc = sizeof yymsgbuf;
                 if (yycount == 5)  
                   {  
                     yysize = 0;  
                     break;  
                   }  
5109                }                }
5110            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]);  
5111    
5112                if (yycount < 5)          if (0 < yysize && yysize <= yymsg_alloc)
5113                  {            {
5114                    yyprefix = ", expecting ";              (void) yysyntax_error (yymsg, yystate, yychar);
5115                    for (yyx = yyxbegin; yyx < yyxend; ++yyx)              yyerror (yymsg);
5116                      if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)            }
5117                        {          else
5118                          yyp = yystpcpy (yyp, yyprefix);            {
5119                          yyp = yystpcpy (yyp, yytname[yyx]);              yyerror (YY_("syntax error"));
5120                          yyprefix = " or ";              if (yysize != 0)
5121                        }                goto yyexhaustedlab;
5122                  }            }
5123                yyerror (yymsg);        }
5124                YYSTACK_FREE (yymsg);  #endif
             }  
           else  
             yyerror ("syntax error; also virtual memory exhausted");  
         }  
       else  
 #endif /* YYERROR_VERBOSE */  
         yyerror ("syntax error");  
5125      }      }
5126    
5127    
5128    
5129    if (yyerrstatus == 3)    if (yyerrstatus == 3)
5130      {      {
5131        /* If just tried and failed to reuse lookahead token after an        /* If just tried and failed to reuse look-ahead token after an
5132           error, discard it.  */           error, discard it.  */
5133    
5134        if (yychar <= YYEOF)        if (yychar <= YYEOF)
5135          {          {
5136            /* 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.  */  
5137            if (yychar == YYEOF)            if (yychar == YYEOF)
5138               for (;;)              YYABORT;
5139                 {          }
                  YYPOPSTACK;  
                  if (yyssp == yyss)  
                    YYABORT;  
                  YYDSYMPRINTF ("Error: popping", yystos[*yyssp], yyvsp, yylsp);  
                  yydestruct (yystos[*yyssp], yyvsp);  
                }  
         }  
5140        else        else
5141          {          {
5142            YYDSYMPRINTF ("Error: discarding", yytoken, &yylval, &yylloc);            yydestruct ("Error: discarding",
5143            yydestruct (yytoken, &yylval);                        yytoken, &yylval);
5144            yychar = YYEMPTY;            yychar = YYEMPTY;
   
5145          }          }
5146      }      }
5147    
5148    /* Else will try to reuse lookahead token after shifting the error    /* Else will try to reuse look-ahead token after shifting the error
5149       token.  */       token.  */
5150    goto yyerrlab1;    goto yyerrlab1;
5151    
# Line 4396  yyerrlab: Line 5155  yyerrlab:
5155  `---------------------------------------------------*/  `---------------------------------------------------*/
5156  yyerrorlab:  yyerrorlab:
5157    
5158  #ifdef __GNUC__    /* Pacify compilers like GCC when the user code never invokes
5159    /* Pacify GCC when the user code never invokes YYERROR and the label       YYERROR and the label yyerrorlab therefore never appears in user
5160       yyerrorlab therefore never appears in user code.  */       code.  */
5161    if (0)    if (/*CONSTCOND*/ 0)
5162       goto yyerrorlab;       goto yyerrorlab;
 #endif  
5163    
5164    yyvsp -= yylen;    /* Do not reclaim the symbols of the rule which action triggered
5165    yyssp -= yylen;       this YYERROR.  */
5166      YYPOPSTACK (yylen);
5167      yylen = 0;
5168      YY_STACK_PRINT (yyss, yyssp);
5169    yystate = *yyssp;    yystate = *yyssp;
5170    goto yyerrlab1;    goto yyerrlab1;
5171    
# Line 4433  yyerrlab1: Line 5194  yyerrlab1:
5194        if (yyssp == yyss)        if (yyssp == yyss)
5195          YYABORT;          YYABORT;
5196    
5197        YYDSYMPRINTF ("Error: popping", yystos[*yyssp], yyvsp, yylsp);  
5198        yydestruct (yystos[yystate], yyvsp);        yydestruct ("Error: popping",
5199        YYPOPSTACK;                    yystos[yystate], yyvsp);
5200          YYPOPSTACK (1);
5201        yystate = *yyssp;        yystate = *yyssp;
5202        YY_STACK_PRINT (yyss, yyssp);        YY_STACK_PRINT (yyss, yyssp);
5203      }      }
# Line 4443  yyerrlab1: Line 5205  yyerrlab1:
5205    if (yyn == YYFINAL)    if (yyn == YYFINAL)
5206      YYACCEPT;      YYACCEPT;
5207    
   YYDPRINTF ((stderr, "Shifting error token, "));  
   
5208    *++yyvsp = yylval;    *++yyvsp = yylval;
5209    
5210    
5211      /* Shift the error token.  */
5212      YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
5213    
5214    yystate = yyn;    yystate = yyn;
5215    goto yynewstate;    goto yynewstate;
5216    
# Line 4467  yyabortlab: Line 5230  yyabortlab:
5230    goto yyreturn;    goto yyreturn;
5231    
5232  #ifndef yyoverflow  #ifndef yyoverflow
5233  /*----------------------------------------------.  /*-------------------------------------------------.
5234  | yyoverflowlab -- parser overflow comes here.  |  | yyexhaustedlab -- memory exhaustion comes here.  |
5235  `----------------------------------------------*/  `-------------------------------------------------*/
5236  yyoverflowlab:  yyexhaustedlab:
5237    yyerror ("parser stack overflow");    yyerror (YY_("memory exhausted"));
5238    yyresult = 2;    yyresult = 2;
5239    /* Fall through.  */    /* Fall through.  */
5240  #endif  #endif
5241    
5242  yyreturn:  yyreturn:
5243      if (yychar != YYEOF && yychar != YYEMPTY)
5244         yydestruct ("Cleanup: discarding lookahead",
5245                     yytoken, &yylval);
5246      /* Do not reclaim the symbols of the rule which action triggered
5247         this YYABORT or YYACCEPT.  */
5248      YYPOPSTACK (yylen);
5249      YY_STACK_PRINT (yyss, yyssp);
5250      while (yyssp != yyss)
5251        {
5252          yydestruct ("Cleanup: popping",
5253                      yystos[*yyssp], yyvsp);
5254          YYPOPSTACK (1);
5255        }
5256  #ifndef yyoverflow  #ifndef yyoverflow
5257    if (yyss != yyssa)    if (yyss != yyssa)
5258      YYSTACK_FREE (yyss);      YYSTACK_FREE (yyss);
5259  #endif  #endif
5260    #if YYERROR_VERBOSE
5261      if (yymsg != yymsgbuf)
5262        YYSTACK_FREE (yymsg);
5263    #endif
5264    return yyresult;    return yyresult;
5265  }  }
5266    
5267    
5268  #line 514 "lscp.y"  #line 666 "lscp.y"
5269    
5270    
5271  /**  /**
# Line 4503  void restart(yyparse_param_t* pparam, in Line 5283  void restart(yyparse_param_t* pparam, in
5283      ptr   = 0;      ptr   = 0;
5284  }  }
5285    
   

Legend:
Removed from v.411  
changed lines
  Added in v.973

  ViewVC Help
Powered by ViewVC