/[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 705 by schoenebeck, Wed Jul 20 21:43:23 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 2.0.  */  /* 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 27 "lscp.y"  #line 31 "lscp.y"
69    
70    
71  #include "lscpparser.h"  #include "lscpparser.h"
# Line 104  int yylex(YYSTYPE* yylval) { Line 118  int yylex(YYSTYPE* yylval) {
118  # define YYERROR_VERBOSE 0  # define YYERROR_VERBOSE 0
119  #endif  #endif
120    
121  #if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)  /* Enabling the token table.  */
122    #ifndef YYTOKEN_TABLE
123    # define YYTOKEN_TABLE 0
124    #endif
125    
126    #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
127  typedef int YYSTYPE;  typedef int YYSTYPE;
128  # define yystype YYSTYPE /* obsolescent; will be withdrawn */  # define yystype YYSTYPE /* obsolescent; will be withdrawn */
129  # define YYSTYPE_IS_DECLARED 1  # define YYSTYPE_IS_DECLARED 1
# Line 116  typedef int YYSTYPE; Line 135  typedef int YYSTYPE;
135  /* Copy the second part of user declarations.  */  /* Copy the second part of user declarations.  */
136    
137    
138  /* Line 213 of yacc.c.  */  /* Line 216 of yacc.c.  */
139  #line 121 "y.tab.c"  #line 140 "y.tab.c"
140    
141    #ifdef short
142    # undef short
143    #endif
144    
145    #ifdef YYTYPE_UINT8
146    typedef YYTYPE_UINT8 yytype_uint8;
147    #else
148    typedef unsigned char yytype_uint8;
149    #endif
150    
151    #ifdef YYTYPE_INT8
152    typedef YYTYPE_INT8 yytype_int8;
153    #elif (defined __STDC__ || defined __C99__FUNC__ \
154         || defined __cplusplus || defined _MSC_VER)
155    typedef signed char yytype_int8;
156    #else
157    typedef short int yytype_int8;
158    #endif
159    
160    #ifdef YYTYPE_UINT16
161    typedef YYTYPE_UINT16 yytype_uint16;
162    #else
163    typedef unsigned short int yytype_uint16;
164    #endif
165    
166    #ifdef YYTYPE_INT16
167    typedef YYTYPE_INT16 yytype_int16;
168    #else
169    typedef short int yytype_int16;
170    #endif
171    
172  #if ! defined (yyoverflow) || YYERROR_VERBOSE  #ifndef YYSIZE_T
173    # ifdef __SIZE_TYPE__
174    #  define YYSIZE_T __SIZE_TYPE__
175    # elif defined size_t
176    #  define YYSIZE_T size_t
177    # elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \
178         || defined __cplusplus || defined _MSC_VER)
179    #  include <stddef.h> /* INFRINGES ON USER NAME SPACE */
180    #  define YYSIZE_T size_t
181    # else
182    #  define YYSIZE_T unsigned int
183    # endif
184    #endif
185    
186    #define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
187    
188  # ifndef YYFREE  #ifndef YY_
189  #  define YYFREE free  # if YYENABLE_NLS
190    #  if ENABLE_NLS
191    #   include <libintl.h> /* INFRINGES ON USER NAME SPACE */
192    #   define YY_(msgid) dgettext ("bison-runtime", msgid)
193    #  endif
194  # endif  # endif
195  # ifndef YYMALLOC  # ifndef YY_
196  #  define YYMALLOC malloc  #  define YY_(msgid) msgid
197  # endif  # endif
198    #endif
199    
200    /* Suppress unused-variable warnings by "using" E.  */
201    #if ! defined lint || defined __GNUC__
202    # define YYUSE(e) ((void) (e))
203    #else
204    # define YYUSE(e) /* empty */
205    #endif
206    
207    /* Identity function, used to suppress warnings about constant conditions.  */
208    #ifndef lint
209    # define YYID(n) (n)
210    #else
211    #if (defined __STDC__ || defined __C99__FUNC__ \
212         || defined __cplusplus || defined _MSC_VER)
213    static int
214    YYID (int i)
215    #else
216    static int
217    YYID (i)
218        int i;
219    #endif
220    {
221      return i;
222    }
223    #endif
224    
225    #if ! defined yyoverflow || YYERROR_VERBOSE
226    
227  /* The parser invokes alloca or malloc; define the necessary symbols.  */  /* The parser invokes alloca or malloc; define the necessary symbols.  */
228    
# Line 134  typedef int YYSTYPE; Line 230  typedef int YYSTYPE;
230  #  if YYSTACK_USE_ALLOCA  #  if YYSTACK_USE_ALLOCA
231  #   ifdef __GNUC__  #   ifdef __GNUC__
232  #    define YYSTACK_ALLOC __builtin_alloca  #    define YYSTACK_ALLOC __builtin_alloca
233    #   elif defined __BUILTIN_VA_ARG_INCR
234    #    include <alloca.h> /* INFRINGES ON USER NAME SPACE */
235    #   elif defined _AIX
236    #    define YYSTACK_ALLOC __alloca
237    #   elif defined _MSC_VER
238    #    include <malloc.h> /* INFRINGES ON USER NAME SPACE */
239    #    define alloca _alloca
240  #   else  #   else
241  #    define YYSTACK_ALLOC alloca  #    define YYSTACK_ALLOC alloca
242    #    if ! defined _ALLOCA_H && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
243         || defined __cplusplus || defined _MSC_VER)
244    #     include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
245    #     ifndef _STDLIB_H
246    #      define _STDLIB_H 1
247    #     endif
248    #    endif
249  #   endif  #   endif
250  #  endif  #  endif
251  # endif  # endif
252    
253  # ifdef YYSTACK_ALLOC  # ifdef YYSTACK_ALLOC
254     /* Pacify GCC's `empty if-body' warning. */     /* Pacify GCC's `empty if-body' warning.  */
255  #  define YYSTACK_FREE(Ptr) do { /* empty */; } while (0)  #  define YYSTACK_FREE(Ptr) do { /* empty */; } while (YYID (0))
256  # else  #  ifndef YYSTACK_ALLOC_MAXIMUM
257  #  if defined (__STDC__) || defined (__cplusplus)      /* The OS might guarantee only one guard page at the bottom of the stack,
258  #   include <stdlib.h> /* INFRINGES ON USER NAME SPACE */         and a page size can be as small as 4096 bytes.  So we cannot safely
259  #   define YYSIZE_T size_t         invoke alloca (N) if N exceeds 4096.  Use a slightly smaller number
260           to allow for a few compiler-allocated temporary stack slots.  */
261    #   define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */
262  #  endif  #  endif
263    # else
264  #  define YYSTACK_ALLOC YYMALLOC  #  define YYSTACK_ALLOC YYMALLOC
265  #  define YYSTACK_FREE YYFREE  #  define YYSTACK_FREE YYFREE
266    #  ifndef YYSTACK_ALLOC_MAXIMUM
267    #   define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
268    #  endif
269    #  if (defined __cplusplus && ! defined _STDLIB_H \
270           && ! ((defined YYMALLOC || defined malloc) \
271                 && (defined YYFREE || defined free)))
272    #   include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
273    #   ifndef _STDLIB_H
274    #    define _STDLIB_H 1
275    #   endif
276    #  endif
277    #  ifndef YYMALLOC
278    #   define YYMALLOC malloc
279    #   if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
280         || defined __cplusplus || defined _MSC_VER)
281    void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
282    #   endif
283    #  endif
284    #  ifndef YYFREE
285    #   define YYFREE free
286    #   if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
287         || defined __cplusplus || defined _MSC_VER)
288    void free (void *); /* INFRINGES ON USER NAME SPACE */
289    #   endif
290    #  endif
291  # endif  # endif
292  #endif /* ! defined (yyoverflow) || YYERROR_VERBOSE */  #endif /* ! defined yyoverflow || YYERROR_VERBOSE */
293    
294    
295  #if (! defined (yyoverflow) \  #if (! defined yyoverflow \
296       && (! defined (__cplusplus) \       && (! defined __cplusplus \
297           || (defined (YYSTYPE_IS_TRIVIAL) && YYSTYPE_IS_TRIVIAL)))           || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
298    
299  /* A type that is properly aligned for any stack member.  */  /* A type that is properly aligned for any stack member.  */
300  union yyalloc  union yyalloc
301  {  {
302    short int yyss;    yytype_int16 yyss;
303    YYSTYPE yyvs;    YYSTYPE yyvs;
304    };    };
305    
# Line 171  union yyalloc Line 309  union yyalloc
309  /* The size of an array large to enough to hold all stacks, each with  /* The size of an array large to enough to hold all stacks, each with
310     N elements.  */     N elements.  */
311  # define YYSTACK_BYTES(N) \  # define YYSTACK_BYTES(N) \
312       ((N) * (sizeof (short int) + sizeof (YYSTYPE))                     \       ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \
313        + YYSTACK_GAP_MAXIMUM)        + YYSTACK_GAP_MAXIMUM)
314    
315  /* Copy COUNT objects from FROM to TO.  The source and destination do  /* Copy COUNT objects from FROM to TO.  The source and destination do
316     not overlap.  */     not overlap.  */
317  # ifndef YYCOPY  # ifndef YYCOPY
318  #  if defined (__GNUC__) && 1 < __GNUC__  #  if defined __GNUC__ && 1 < __GNUC__
319  #   define YYCOPY(To, From, Count) \  #   define YYCOPY(To, From, Count) \
320        __builtin_memcpy (To, From, (Count) * sizeof (*(From)))        __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
321  #  else  #  else
322  #   define YYCOPY(To, From, Count)              \  #   define YYCOPY(To, From, Count)              \
323        do                                        \        do                                        \
324          {                                       \          {                                       \
325            register YYSIZE_T yyi;                \            YYSIZE_T yyi;                         \
326            for (yyi = 0; yyi < (Count); yyi++)   \            for (yyi = 0; yyi < (Count); yyi++)   \
327              (To)[yyi] = (From)[yyi];            \              (To)[yyi] = (From)[yyi];            \
328          }                                       \          }                                       \
329        while (0)        while (YYID (0))
330  #  endif  #  endif
331  # endif  # endif
332    
# Line 206  union yyalloc Line 344  union yyalloc
344          yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \          yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
345          yyptr += yynewbytes / sizeof (*yyptr);                          \          yyptr += yynewbytes / sizeof (*yyptr);                          \
346        }                                                                 \        }                                                                 \
347      while (0)      while (YYID (0))
   
 #endif  
348    
 #if defined (__STDC__) || defined (__cplusplus)  
    typedef signed char yysigned_char;  
 #else  
    typedef short int yysigned_char;  
349  #endif  #endif
350    
351  /* YYFINAL -- State number of the termination state. */  /* YYFINAL -- State number of the termination state.  */
352  #define YYFINAL  40  #define YYFINAL  46
353  /* YYLAST -- Last index in YYTABLE.  */  /* YYLAST -- Last index in YYTABLE.  */
354  #define YYLAST   4477  #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  97  #define YYNNTS  124
360  /* YYNRULES -- Number of rules. */  /* YYNRULES -- Number of rules.  */
361  #define YYNRULES  431  #define YYNRULES  486
362  /* YYNRULES -- Number of states. */  /* YYNRULES -- Number of states.  */
363  #define YYNSTATES  1198  #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,    73,     7,     3,    74,    75,    76,     6,         2,     2,   224,    71,   223,     3,    72,    73,    74,   222,
379        77,    78,    79,     9,     5,    10,     8,    80,    11,    12,        75,    76,    77,     7,     5,     8,     6,    78,     9,    10,
380        13,    14,    15,    16,    17,    18,    19,    20,    81,    82,        11,    12,    13,    14,    15,    16,    17,    18,    79,    80,
381        83,     4,    84,    85,    86,    21,    22,    23,    24,    25,        81,     4,    82,    83,    84,    19,    20,    21,    22,    23,
382        26,    27,    28,    29,    30,    31,    32,    33,    34,    35,        24,    25,    26,    27,    28,    29,    30,    31,    32,    33,
383        36,    37,    38,    39,    40,    41,    42,    43,    44,    45,        34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
384        46,    87,    88,    89,    90,    91,     2,    47,    48,    49,        44,    85,    86,    87,    88,    89,     2,    45,    46,    47,
385        50,    51,    52,    53,    54,    55,    56,    57,    58,    59,        48,    49,    50,    51,    52,    53,    54,    55,    56,    57,
386        60,    61,    62,    63,    64,    65,    66,    67,    68,    69,        58,    59,    60,    61,    62,    63,    64,    65,    66,    67,
387        70,    71,    72,    92,    93,    94,    95,     2,    96,    97,        68,    69,    70,    90,    91,    92,    93,     2,    94,    95,
388        98,    99,   100,   101,   102,   103,   104,   105,   106,   107,        96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
389       108,   109,   110,   111,   112,   113,   114,   115,   116,   117,       106,   107,   108,   109,   110,   111,   112,   113,   114,   115,
390       118,   119,   120,   121,   122,   123,   124,   125,   126,   127,       116,   117,   118,   119,   120,   121,   122,   123,   124,   125,
391       128,   129,   130,   131,   132,   133,   134,   135,   136,   137,       126,   127,   128,   129,   130,   131,   132,   133,   134,   135,
392       138,   139,   140,   141,   142,   143,   144,   145,   146,   147,       136,   137,   138,   139,   140,   141,   142,   143,   144,   145,
393       148,   149,   150,   151,   152,   153,   154,   155,   156,   157,       146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
394       158,   159,   160,   161,   162,   163,   164,   165,   166,   167,       156,   157,   158,   159,   160,   161,   162,   163,   164,   165,
395       168,   169,   170,   171,   172,   173,   174,   175,   176,   177,       166,   167,   168,   169,   170,   171,   172,   173,   174,   175,
396       178,   179,   180,   181,   182,   183,   184,   185,   186,   187,       176,   177,   178,   179,   180,   181,   182,   183,   184,   185,
397       188,   189,   190,   191,   192,   193,   194,   195,   196,   197,       186,   187,   188,   189,   190,   191,   192,   193,   194,   195,
398       198,   199,   200,   201,   202,   203,   204,   205,   206,   207,       196,   197,   198,   199,   200,   201,   202,   203,   204,   205,
399       208,   209,   210,   211,   212,   213,   214,   215,   216,   217,       206,   207,   208,   209,   210,   211,   212,   213,   214,   215,
400       218,   219,   220,   221,   222,   223,     1,     2       216,   217,   218,   219,   220,   221,     1,     2
401  };  };
402    
403  #if YYDEBUG  #if YYDEBUG
404  /* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in  /* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in
405     YYRHS.  */     YYRHS.  */
406  static const unsigned short int yyprhs[] =  static const yytype_uint16 yyprhs[] =
407  {  {
408         0,     0,     3,     6,    10,    11,    13,    15,    17,    19,         0,     0,     3,     6,    10,    11,    13,    15,    17,    19,
409        22,    25,    28,    31,    35,    39,    43,    47,    51,    55,        22,    25,    28,    31,    35,    39,    43,    47,    51,    55,
410        61,    65,    69,    73,    77,    83,    85,    87,    89,    91,        59,    63,    67,    71,    75,    79,    83,    87,    91,    93,
411        93,    95,    97,    99,   101,   103,   105,   107,   109,   111,        95,    97,    99,   103,   105,   107,   109,   111,   113,   115,
412       113,   115,   121,   129,   139,   141,   147,   155,   165,   167,       117,   119,   121,   123,   125,   127,   129,   131,   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,   255,   263,   273,   281,   291,   295,   299,       251,   253,   259,   267,   277,   279,   281,   287,   293,   301,
415       305,   309,   315,   319,   323,   327,   331,   335,   341,   349,       311,   319,   329,   331,   337,   345,   351,   357,   363,   367,
416       355,   365,   371,   377,   383,   389,   395,   401,   407,   411,       369,   371,   375,   379,   389,   391,   397,   405,   415,   423,
417       417,   419,   421,   423,   425,   427,   429,   431,   433,   439,       433,   437,   445,   449,   455,   459,   465,   469,   473,   477,
418       447,   451,   453,   455,   457,   459,   461,   463,   465,   467,       481,   485,   489,   493,   497,   503,   511,   517,   527,   533,
419       469,   471,   473,   475,   477,   479,   483,   485,   489,   493,       539,   545,   551,   557,   563,   569,   575,   581,   587,   591,
420       495,   497,   499,   501,   503,   506,   510,   515,   520,   522,       597,   599,   601,   603,   605,   607,   609,   611,   613,   617,
421       525,   527,   529,   531,   533,   535,   537,   539,   541,   543,       621,   623,   629,   637,   641,   643,   645,   647,   649,   651,
422       545,   547,   550,   553,   556,   559,   562,   565,   568,   571,       653,   655,   657,   659,   661,   663,   665,   667,   669,   671,
423       574,   576,   578,   580,   582,   584,   586,   588,   590,   592,       673,   675,   677,   679,   681,   683,   685,   689,   691,   693,
424       594,   596,   598,   600,   602,   604,   606,   608,   610,   612,       695,   697,   699,   701,   703,   706,   710,   715,   720,   722,
425       614,   616,   618,   620,   622,   624,   626,   628,   630,   632,       725,   727,   729,   731,   733,   735,   737,   739,   741,   743,
426       634,   636,   638,   640,   642,   644,   646,   648,   650,   652,       745,   747,   750,   753,   756,   759,   762,   765,   768,   771,
      654,   656,   658,   660,   662,   664,   666,   668,   670,   672,  
      674,   676,   678,   680,   682,   684,   686,   688,   690,   692,  
      694,   696,   698,   700,   702,   704,   706,   708,   710,   712,  
      714,   716,   718,   720,   722,   724,   726,   728,   730,   732,  
      734,   736,   738,   740,   742,   744,   746,   748,   750,   752,  
      754,   756,   758,   760,   762,   764,   766,   768,   770,   772,  
427       774,   776,   778,   780,   782,   784,   786,   788,   790,   792,       774,   776,   778,   780,   782,   784,   786,   788,   790,   792,
428       794,   796,   798,   800,   802,   804,   806,   808,   810,   812,       794,   796,   798,   800,   802,   804,   806,   808,   810,   812,
429       814,   816,   818,   820,   822,   824,   826,   828,   830,   832,       814,   816,   818,   820,   822,   824,   826,   828,   830,   832,
# Line 310  static const unsigned short int yyprhs[] Line 436  static const unsigned short int yyprhs[]
436       954,   956,   958,   960,   962,   964,   966,   968,   970,   972,       954,   956,   958,   960,   962,   964,   966,   968,   970,   972,
437       974,   976,   978,   980,   982,   984,   986,   988,   990,   992,       974,   976,   978,   980,   982,   984,   986,   988,   990,   992,
438       994,   996,   998,  1000,  1002,  1004,  1006,  1008,  1010,  1012,       994,   996,   998,  1000,  1002,  1004,  1006,  1008,  1010,  1012,
439      1014,  1016,  1019,  1022,  1026,  1030,  1032,  1034,  1036,  1040,      1014,  1016,  1018,  1020,  1022,  1024,  1026,  1028,  1030,  1032,
440      1044,  1051,  1059,  1064,  1069,  1073,  1083,  1090,  1094,  1104,      1034,  1036,  1038,  1040,  1042,  1044,  1046,  1048,  1050,  1052,
441      1116,  1123,  1131,  1149,  1180,  1189,  1194,  1208,  1221,  1233,      1054,  1056,  1058,  1060,  1062,  1064,  1066,  1068,  1070,  1072,
442      1246,  1258,  1269,  1276,  1306,  1327,  1347,  1377,  1397,  1428,      1074,  1076,  1078,  1080,  1082,  1084,  1086,  1088,  1090,  1092,
443      1449,  1467,  1496,  1524,  1550,  1569,  1587,  1615,  1633,  1649,      1094,  1096,  1098,  1100,  1102,  1104,  1106,  1108,  1110,  1112,
444      1668,  1684,  1695,  1702,  1709,  1714,  1719,  1725,  1736,  1742,      1114,  1116,  1118,  1120,  1122,  1124,  1126,  1128,  1130,  1132,
445      1756,  1761      1134,  1136,  1138,  1140,  1142,  1144,  1146,  1148,  1150,  1152,
446        1154,  1156,  1158,  1160,  1162,  1164,  1166,  1168,  1170,  1172,
447        1174,  1176,  1178,  1180,  1182,  1184,  1186,  1188,  1190,  1192,
448        1194,  1196,  1198,  1200,  1202,  1204,  1206,  1208,  1210,  1212,
449        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,   268,    -1,   229,   269,   268,    -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,   267,    -1,   230,   263,    -1,   230,   259,         3,    -1,   230,   279,    -1,   230,   275,    -1,   230,   271,
465        -1,   270,   267,   283,    -1,   271,   267,   234,    -1,   272,        -1,   282,   279,   232,    -1,   284,   279,   235,    -1,   285,
466       267,   236,    -1,   273,   267,   237,    -1,   274,   267,   242,       279,   236,    -1,   283,   279,   238,    -1,   287,   279,   240,
467        -1,   275,   267,   238,    -1,   278,   267,   283,   267,   252,        -1,   288,   279,   243,    -1,   289,   279,   248,    -1,   290,
468        -1,   279,   267,   235,    -1,   280,   267,   232,    -1,   281,       279,   244,    -1,   295,   279,   237,    -1,   296,   279,   239,
469       267,   233,    -1,   282,   267,   265,    -1,   320,   267,   283,        -1,   297,   279,   233,    -1,   298,   279,   234,    -1,   299,
470       267,   252,    -1,   320,    -1,   323,    -1,   288,    -1,   292,       279,   277,    -1,   346,   279,   241,    -1,   286,   279,   242,
471        -1,   291,    -1,   290,    -1,   289,    -1,   321,    -1,   288,        -1,   346,    -1,   350,    -1,   300,    -1,   333,    -1,   333,
472        -1,   292,    -1,   291,    -1,   290,    -1,   289,    -1,   321,       279,   266,    -1,   305,    -1,   309,    -1,   308,    -1,   307,
473        -1,   284,    -1,   303,    -1,   309,   267,   287,   267,   259,        -1,   306,    -1,   347,    -1,   310,    -1,   305,    -1,   309,
474        -1,   308,   267,   287,   267,   259,   267,   259,    -1,   308,        -1,   308,    -1,   307,    -1,   306,    -1,   347,    -1,   310,
475       267,   287,   267,   259,   267,   259,   267,   240,    -1,   285,        -1,   331,   279,   258,   279,   259,   279,   260,   279,   264,
476        -1,   299,   267,   287,   267,   259,    -1,   298,   267,   287,       279,   265,   279,   263,   279,   261,    -1,   331,   279,   258,
477       267,   259,   267,   259,    -1,   298,   267,   287,   267,   259,       279,   259,   279,   260,   279,   264,   279,   265,   279,   263,
478       267,   259,   267,   240,    -1,   296,    -1,   306,    -1,   297,       279,   261,   279,   251,    -1,   331,   279,   258,   279,   259,
479       267,   287,   267,   263,    -1,   307,   267,   287,   267,   263,       279,   260,   279,   264,   279,   265,   279,   263,   279,   261,
480        -1,   310,   267,   287,   267,   263,   267,   263,    -1,   305,       279,   267,    -1,   331,   279,   258,   279,   259,   279,   260,
481       267,   287,   267,   263,   267,   263,   267,   259,    -1,   301,       279,   264,   279,   265,   279,   263,   279,   261,   279,   251,
482       267,   287,   267,   263,   267,   263,    -1,   300,   267,   287,       279,   267,    -1,   331,   279,   258,   279,   259,   279,   260,
483       267,   263,   267,   263,   267,   259,    -1,   286,    -1,   283,        -1,   300,   279,   262,    -1,   333,   279,   258,    -1,   333,
484       267,   287,   267,   252,    -1,   283,   267,   290,   267,   241,       279,   291,    -1,   301,    -1,   325,    -1,   335,   279,   304,
485       267,   252,    -1,   283,   267,   291,   267,   252,    -1,   283,       279,   271,    -1,   330,   279,   304,   279,   271,   279,   271,
486       267,   292,   267,   252,    -1,   294,   267,   287,   267,   254,        -1,   330,   279,   304,   279,   271,   279,   271,   279,   246,
487        -1,   314,   267,   287,    -1,   295,   267,   263,   267,   259,        -1,   302,    -1,   321,   279,   304,   279,   271,    -1,   320,
488         4,   256,    -1,   300,   267,   263,   267,   263,   267,   259,       279,   304,   279,   271,   279,   271,    -1,   320,   279,   304,
489         4,   256,    -1,   304,   267,   263,   267,   259,     4,   256,       279,   271,   279,   271,   279,   246,    -1,   318,    -1,   328,
490        -1,   305,   267,   263,   267,   263,   267,   259,     4,   256,        -1,   319,   279,   304,   279,   275,    -1,   329,   279,   304,
491        -1,   283,   267,   239,    -1,   322,   267,   258,    -1,   297,       279,   275,    -1,   336,   279,   304,   279,   275,   279,   275,
492       267,   259,   267,   240,    -1,   297,   267,   259,    -1,   307,        -1,   327,   279,   304,   279,   275,   279,   275,   279,   271,
493       267,   259,   267,   240,    -1,   307,   267,   259,    -1,   297,        -1,   323,   279,   304,   279,   275,   279,   275,    -1,   322,
494       267,   263,    -1,   307,   267,   263,    -1,   293,   267,   243,       279,   304,   279,   275,   279,   275,   279,   271,    -1,   303,
495        -1,   294,   267,   244,    -1,   297,   267,   252,   267,   245,        -1,   300,   279,   304,   279,   262,    -1,   300,   279,   307,
496        -1,   301,   267,   252,   267,   246,   267,   246,    -1,   302,       279,   247,   279,   262,    -1,   300,   279,   308,   279,   262,
497       267,   252,   267,   247,    -1,   313,   267,   252,   267,   245,        -1,   300,   279,   309,   279,   262,    -1,   313,   279,   304,
498       267,   248,   267,   249,    -1,   307,   267,   252,   267,   245,       279,   264,    -1,   340,   279,   304,    -1,   310,    -1,   311,
499        -1,   310,   267,   252,   267,   248,    -1,   311,   267,   252,        -1,   332,   279,   258,    -1,   332,   279,   291,    -1,   331,
500       267,   249,    -1,   312,   267,   252,   267,   250,    -1,   315,       279,   304,   279,   258,   279,   259,   279,   260,    -1,   334,
501       267,   252,   267,   251,    -1,   316,   267,   252,   267,   258,        -1,   333,   279,   304,   279,   258,    -1,   317,   279,   275,
502        -1,   317,   267,   252,   267,   258,    -1,   259,     4,   256,       279,   271,     4,   268,    -1,   322,   279,   275,   279,   275,
503        -1,   240,   267,   259,     4,   256,    -1,   318,    -1,   319,       279,   271,     4,   268,    -1,   326,   279,   275,   279,   271,
504        -1,   296,    -1,   306,    -1,   286,    -1,   284,    -1,   303,         4,   268,    -1,   327,   279,   275,   279,   275,   279,   271,
505        -1,   285,    -1,   255,   267,   253,   267,   252,    -1,   277,         4,   268,    -1,   300,   279,   245,    -1,   333,   279,   348,
506       267,   255,   267,   253,   267,   252,    -1,   254,   267,   252,       279,   258,   279,   266,    -1,   349,   279,   270,    -1,   319,
507        -1,   263,    -1,   263,    -1,   259,    -1,   263,    -1,   263,       279,   271,   279,   246,    -1,   319,   279,   271,    -1,   329,
508        -1,   276,    -1,   259,    -1,   260,    -1,   263,    -1,   263,       279,   271,   279,   246,    -1,   329,   279,   271,    -1,   300,
509        -1,   263,    -1,   259,    -1,   266,    -1,   257,    -1,   256,       279,   262,    -1,   332,   279,   258,    -1,   332,   279,   291,
510         5,   257,    -1,   259,    -1,     6,   259,     6,    -1,     7,        -1,   319,   279,   275,    -1,   329,   279,   275,    -1,   312,
511       259,     7,    -1,   263,    -1,   260,    -1,   263,    -1,   259,       279,   249,    -1,   313,   279,   250,    -1,   319,   279,   262,
512        -1,   264,    -1,   259,   264,    -1,   261,     8,   261,    -1,       279,   252,    -1,   323,   279,   262,   279,   253,   279,   253,
513         9,   261,     8,   261,    -1,    10,   261,     8,   261,    -1,        -1,   324,   279,   262,   279,   254,    -1,   339,   279,   262,
514       262,    -1,   261,   262,    -1,    11,    -1,    12,    -1,    13,       279,   252,   279,   255,   279,   256,    -1,   329,   279,   262,
515        -1,    14,    -1,    15,    -1,    16,    -1,    17,    -1,    18,       279,   252,    -1,   336,   279,   262,   279,   255,    -1,   337,
516        -1,    19,    -1,    20,    -1,   262,    -1,    12,   261,    -1,       279,   262,   279,   256,    -1,   338,   279,   262,   279,   257,
517        13,   261,    -1,    14,   261,    -1,    15,   261,    -1,    16,        -1,   341,   279,   262,   279,   261,    -1,   342,   279,   262,
518       261,    -1,    17,   261,    -1,    18,   261,    -1,    19,   261,       279,   270,    -1,   343,   279,   262,   279,   270,    -1,   333,
519        -1,    20,   261,    -1,    21,    -1,    22,    -1,    23,    -1,       279,   262,   279,   258,    -1,   333,   279,   262,   279,   292,
520        24,    -1,    25,    -1,    26,    -1,    27,    -1,    28,    -1,        -1,   333,   279,   262,   279,   293,    -1,   271,     4,   268,
521        29,    -1,    30,    -1,    31,    -1,    32,    -1,    33,    -1,        -1,   246,   279,   271,     4,   268,    -1,   344,    -1,   345,
522        34,    -1,    35,    -1,    36,    -1,    37,    -1,    38,    -1,        -1,   318,    -1,   328,    -1,   303,    -1,   301,    -1,   325,
523        39,    -1,    40,    -1,    41,    -1,    42,    -1,    43,    -1,        -1,   302,    -1,   332,   279,   258,    -1,   332,   279,   291,
524        44,    -1,    45,    -1,    46,    -1,    47,    -1,    48,    -1,        -1,   334,    -1,   265,   279,   263,   279,   262,    -1,   294,
525        49,    -1,    50,    -1,    51,    -1,    52,    -1,    53,    -1,       279,   265,   279,   263,   279,   262,    -1,   264,   279,   262,
526        54,    -1,    55,    -1,    56,    -1,    57,    -1,    58,    -1,        -1,   314,    -1,   315,    -1,   316,    -1,   275,    -1,   275,
527        59,    -1,    60,    -1,    61,    -1,    62,    -1,    63,    -1,        -1,   271,    -1,   275,    -1,   275,    -1,   291,    -1,   271,
528        64,    -1,    65,    -1,    66,    -1,    67,    -1,    68,    -1,        -1,   275,    -1,   275,    -1,   275,    -1,   272,    -1,   275,
529        69,    -1,    70,    -1,    71,    -1,    72,    -1,    11,    -1,        -1,   275,    -1,   275,    -1,   271,    -1,   278,    -1,   278,
530        12,    -1,    13,    -1,    14,    -1,    15,    -1,    16,    -1,        -1,   278,    -1,   269,    -1,   268,     5,   269,    -1,   271,
531        17,    -1,    18,    -1,    19,    -1,    20,    -1,    73,    -1,        -1,   278,    -1,   275,    -1,   272,    -1,   275,    -1,   271,
532         3,    -1,    74,    -1,    75,    -1,    76,    -1,    77,    -1,        -1,   276,    -1,   271,   276,    -1,   273,     6,   273,    -1,
533        78,    -1,    79,    -1,     9,    -1,    10,    -1,     8,    -1,         7,   273,     6,   273,    -1,     8,   273,     6,   273,    -1,
534         5,    -1,    80,    -1,    81,    -1,    82,    -1,    83,    -1,       274,    -1,   273,   274,    -1,     9,    -1,    10,    -1,    11,
535         4,    -1,    84,    -1,    85,    -1,    86,    -1,    87,    -1,        -1,    12,    -1,    13,    -1,    14,    -1,    15,    -1,    16,
536        88,    -1,    89,    -1,    90,    -1,    91,    -1,    92,    -1,        -1,    17,    -1,    18,    -1,   274,    -1,    10,   273,    -1,
537        93,    -1,    94,    -1,    95,    -1,    96,    -1,    97,    -1,        11,   273,    -1,    12,   273,    -1,    13,   273,    -1,    14,
538        98,    -1,    99,    -1,   100,    -1,   101,    -1,   102,    -1,       273,    -1,    15,   273,    -1,    16,   273,    -1,    17,   273,
539       103,    -1,   104,    -1,   105,    -1,   106,    -1,   107,    -1,        -1,    18,   273,    -1,    19,    -1,    20,    -1,    21,    -1,
540       108,    -1,   109,    -1,   110,    -1,   111,    -1,   112,    -1,        22,    -1,    23,    -1,    24,    -1,    25,    -1,    26,    -1,
541       113,    -1,   114,    -1,   115,    -1,   116,    -1,   117,    -1,        27,    -1,    28,    -1,    29,    -1,    30,    -1,    31,    -1,
542       118,    -1,   119,    -1,   120,    -1,   121,    -1,   122,    -1,        32,    -1,    33,    -1,    34,    -1,    35,    -1,    36,    -1,
543       123,    -1,   124,    -1,   125,    -1,   126,    -1,   127,    -1,        37,    -1,    38,    -1,    39,    -1,    40,    -1,    41,    -1,
544       128,    -1,   129,    -1,   130,    -1,   131,    -1,   132,    -1,        42,    -1,    43,    -1,    44,    -1,    45,    -1,    46,    -1,
545       133,    -1,   134,    -1,   135,    -1,   136,    -1,   137,    -1,        47,    -1,    48,    -1,    49,    -1,    50,    -1,    51,    -1,
546       138,    -1,   139,    -1,   140,    -1,   141,    -1,   142,    -1,        52,    -1,    53,    -1,    54,    -1,    55,    -1,    56,    -1,
547       143,    -1,   144,    -1,   145,    -1,   146,    -1,   147,    -1,        57,    -1,    58,    -1,    59,    -1,    60,    -1,    61,    -1,
548       148,    -1,   149,    -1,   150,    -1,   151,    -1,   152,    -1,        62,    -1,    63,    -1,    64,    -1,    65,    -1,    66,    -1,
549       153,    -1,   154,    -1,   155,    -1,   156,    -1,   157,    -1,        67,    -1,    68,    -1,    69,    -1,    70,    -1,     9,    -1,
550       158,    -1,   159,    -1,   160,    -1,   161,    -1,   162,    -1,        10,    -1,    11,    -1,    12,    -1,    13,    -1,    14,    -1,
551       163,    -1,   164,    -1,   165,    -1,   166,    -1,   167,    -1,        15,    -1,    16,    -1,    17,    -1,    18,    -1,    71,    -1,
552       168,    -1,   169,    -1,   170,    -1,   171,    -1,   172,    -1,         3,    -1,    72,    -1,    73,    -1,    74,    -1,    75,    -1,
553       173,    -1,   174,    -1,   175,    -1,   176,    -1,   177,    -1,        76,    -1,    77,    -1,     7,    -1,     8,    -1,     6,    -1,
554       178,    -1,   179,    -1,   180,    -1,   181,    -1,   182,    -1,         5,    -1,    78,    -1,    79,    -1,    80,    -1,    81,    -1,
555       183,    -1,   184,    -1,   185,    -1,   186,    -1,   187,    -1,         4,    -1,    82,    -1,    83,    -1,    84,    -1,    85,    -1,
556       188,    -1,   189,    -1,   190,    -1,   191,    -1,   192,    -1,        86,    -1,    87,    -1,    88,    -1,    89,    -1,    90,    -1,
557       193,    -1,   194,    -1,   195,    -1,   196,    -1,   197,    -1,        91,    -1,    92,    -1,    93,    -1,    94,    -1,    95,    -1,
558       198,    -1,   199,    -1,   200,    -1,   201,    -1,   202,    -1,        96,    -1,    97,    -1,    98,    -1,    99,    -1,   100,    -1,
559       203,    -1,   204,    -1,   205,    -1,   206,    -1,   207,    -1,       101,    -1,   102,    -1,   103,    -1,   104,    -1,   105,    -1,
560       208,    -1,   209,    -1,   210,    -1,   211,    -1,   212,    -1,       106,    -1,   107,    -1,   108,    -1,   109,    -1,   110,    -1,
561       213,    -1,   214,    -1,   215,    -1,   216,    -1,   217,    -1,       111,    -1,   112,    -1,   113,    -1,   114,    -1,   115,    -1,
562       218,    -1,   219,    -1,   220,    -1,   221,    -1,   222,    -1,       116,    -1,   117,    -1,   118,    -1,   119,    -1,   120,    -1,
563       223,    -1,   267,    -1,   259,    -1,   265,   267,    -1,   265,       121,    -1,   122,    -1,   123,    -1,   124,    -1,   125,    -1,
564       259,    -1,     6,   265,     6,    -1,     7,   265,     7,    -1,       126,    -1,   127,    -1,   128,    -1,   129,    -1,   130,    -1,
565       224,    -1,   225,    -1,   226,    -1,    21,    24,    24,    -1,       131,    -1,   132,    -1,   133,    -1,   134,    -1,   135,    -1,
566        27,    25,    40,    -1,    23,    38,    25,    21,    40,    25,       136,    -1,   137,    -1,   138,    -1,   139,    -1,   140,    -1,
567        -1,    24,    25,    39,    40,    38,    35,    45,    -1,    32,       141,    -1,   142,    -1,   143,    -1,   144,    -1,   145,    -1,
568        29,    39,    40,    -1,    32,    35,    21,    24,    -1,    21,       146,    -1,   147,    -1,   148,    -1,   149,    -1,   150,    -1,
569        32,    32,    -1,    34,    35,    34,    91,    33,    35,    24,       151,    -1,   152,    -1,   153,    -1,   154,    -1,   155,    -1,
570        21,    32,    -1,    38,    25,    33,    35,    42,    25,    -1,       156,    -1,   157,    -1,   158,    -1,   159,    -1,   160,    -1,
571        39,    25,    40,    -1,    39,    41,    22,    39,    23,    38,       161,    -1,   162,    -1,   163,    -1,   164,    -1,   165,    -1,
572        29,    22,    25,    -1,    41,    34,    39,    41,    22,    39,       166,    -1,   167,    -1,   168,    -1,   169,    -1,   170,    -1,
573        23,    38,    29,    22,    25,    -1,    39,    25,    32,    25,       171,    -1,   172,    -1,   173,    -1,   174,    -1,   175,    -1,
574        23,    40,    -1,    23,    28,    21,    34,    34,    25,    32,       176,    -1,   177,    -1,   178,    -1,   179,    -1,   180,    -1,
575        -1,    21,    42,    21,    29,    32,    21,    22,    32,    25,       181,    -1,   182,    -1,   183,    -1,   184,    -1,   185,    -1,
576        91,    25,    34,    27,    29,    34,    25,    39,    -1,    21,       186,    -1,   187,    -1,   188,    -1,   189,    -1,   190,    -1,
577        42,    21,    29,    32,    21,    22,    32,    25,    91,    21,       191,    -1,   192,    -1,   193,    -1,   194,    -1,   195,    -1,
578        41,    24,    29,    35,    91,    35,    41,    40,    36,    41,       196,    -1,   197,    -1,   198,    -1,   199,    -1,   200,    -1,
579        40,    91,    24,    38,    29,    42,    25,    38,    39,    -1,       201,    -1,   202,    -1,   203,    -1,   204,    -1,   205,    -1,
580        23,    28,    21,    34,    34,    25,    32,    39,    -1,    29,       206,    -1,   207,    -1,   208,    -1,   209,    -1,   210,    -1,
581        34,    26,    35,    -1,    23,    28,    21,    34,    34,    25,       211,    -1,   212,    -1,   213,    -1,   214,    -1,   215,    -1,
582        32,    91,    23,    35,    41,    34,    40,    -1,    23,    28,       216,    -1,   217,    -1,   218,    -1,   219,    -1,   220,    -1,
583        21,    34,    34,    25,    32,    91,    29,    34,    26,    35,       221,    -1,   279,    -1,   271,    -1,   277,   279,    -1,   277,
584        -1,    22,    41,    26,    26,    25,    38,    91,    26,    29,       271,    -1,   222,   277,   222,    -1,   223,   277,   223,    -1,
585        32,    32,    -1,    39,    40,    38,    25,    21,    33,    91,       224,    -1,   225,    -1,   226,    -1,    19,    22,    22,    -1,
586        23,    35,    41,    34,    40,    -1,    42,    35,    29,    23,        25,    23,    38,    -1,    31,    19,    34,    -1,    39,    32,
587        25,    91,    23,    35,    41,    34,    40,    -1,    29,    34,        31,    19,    34,    -1,    21,    30,    23,    19,    36,    -1,
588        39,    40,    38,    41,    33,    25,    34,    40,    -1,    25,        21,    36,    23,    19,    38,    23,    -1,    22,    23,    37,
589        34,    27,    29,    34,    25,    -1,    21,    41,    24,    29,        38,    36,    33,    43,    -1,    30,    27,    37,    38,    -1,
590        35,    91,    35,    41,    40,    36,    41,    40,    91,    24,        30,    33,    19,    22,    -1,    19,    30,    30,    -1,    32,
591        25,    42,    29,    23,    25,    91,    36,    21,    38,    21,        33,    32,    23,    -1,    22,    23,    24,    19,    39,    30,
592        33,    25,    40,    25,    38,    -1,    21,    41,    24,    29,        38,    -1,    32,    33,    32,    89,    31,    33,    22,    19,
593        35,    91,    35,    41,    40,    36,    41,    40,    91,    24,        30,    -1,    36,    23,    31,    33,    40,    23,    -1,    37,
594        25,    42,    29,    23,    25,    39,    -1,    21,    41,    24,        23,    38,    -1,    37,    39,    20,    37,    21,    36,    27,
595        29,    35,    91,    35,    41,    40,    36,    41,    40,    91,        20,    23,    -1,    39,    32,    37,    39,    20,    37,    21,
596        24,    25,    42,    29,    23,    25,    -1,    21,    41,    24,        36,    27,    20,    23,    -1,    37,    23,    30,    23,    21,
597        29,    35,    91,    35,    41,    40,    36,    41,    40,    91,        38,    -1,    21,    26,    19,    32,    32,    23,    30,    -1,
598        24,    38,    29,    42,    25,    38,    91,    36,    21,    38,        19,    40,    19,    27,    30,    19,    20,    30,    23,    89,
599        21,    33,    25,    40,    25,    38,    -1,    21,    41,    24,        23,    32,    25,    27,    32,    23,    37,    -1,    19,    40,
600        29,    35,    91,    35,    41,    40,    36,    41,    40,    91,        19,    27,    30,    19,    20,    30,    23,    89,    19,    39,
601        24,    38,    29,    42,    25,    38,    -1,    21,    41,    24,        22,    27,    33,    89,    33,    39,    38,    34,    39,    38,
602        29,    35,    91,    35,    41,    40,    36,    41,    40,    91,        89,    22,    36,    27,    40,    23,    36,    37,    -1,    21,
603        23,    28,    21,    34,    34,    25,    32,    91,    36,    21,        26,    19,    32,    32,    23,    30,    37,    -1,    27,    32,
604        38,    21,    33,    25,    40,    25,    38,    -1,    21,    41,        24,    33,    -1,    21,    26,    19,    32,    32,    23,    30,
605        24,    29,    35,    91,    35,    41,    40,    36,    41,    40,        89,    21,    33,    39,    32,    38,    -1,    21,    26,    19,
606        91,    23,    28,    21,    34,    34,    25,    32,    -1,    21,        32,    32,    23,    30,    89,    27,    32,    24,    33,    -1,
607        41,    24,    29,    35,    91,    35,    41,    40,    36,    41,        20,    39,    24,    24,    23,    36,    89,    24,    27,    30,
608        40,    91,    40,    45,    36,    25,    -1,    21,    42,    21,        30,    -1,    37,    38,    36,    23,    19,    31,    89,    21,
609        29,    32,    21,    22,    32,    25,    91,    33,    29,    24,        33,    39,    32,    38,    -1,    40,    33,    27,    21,    23,
610        29,    91,    29,    34,    36,    41,    40,    91,    24,    38,        89,    21,    33,    39,    32,    38,    -1,    38,    33,    38,
611        29,    42,    25,    38,    39,    -1,    33,    29,    24,    29,        19,    30,    89,    40,    33,    27,    21,    23,    89,    21,
612        91,    29,    34,    36,    41,    40,    91,    24,    25,    42,        33,    39,    32,    38,    -1,    38,    33,    38,    19,    30,
613        29,    23,    25,    91,    36,    21,    38,    21,    33,    25,        89,    40,    33,    27,    21,    23,    89,    21,    33,    39,
614        40,    25,    38,    -1,    33,    29,    24,    29,    91,    29,        32,    38,    89,    31,    19,    42,    -1,    27,    32,    37,
615        34,    36,    41,    40,    91,    36,    35,    38,    40,    91,        38,    36,    39,    31,    23,    32,    38,    -1,    23,    32,
616        36,    21,    38,    21,    33,    25,    40,    25,    38,    -1,        25,    27,    32,    23,    -1,    33,    32,    89,    22,    23,
617        33,    29,    24,    29,    91,    29,    34,    36,    41,    40,        31,    19,    32,    22,    -1,    33,    32,    89,    22,    23,
618        91,    24,    25,    42,    29,    23,    25,    39,    -1,    33,        31,    19,    32,    22,    89,    26,    33,    30,    22,    -1,
619        29,    24,    29,    91,    29,    34,    36,    41,    40,    91,        34,    23,    36,    37,    27,    37,    38,    23,    32,    38,
620        24,    25,    42,    29,    23,    25,    -1,    33,    29,    24,        -1,    19,    39,    22,    27,    33,    89,    33,    39,    38,
621        29,    91,    29,    34,    36,    41,    40,    91,    24,    38,        34,    39,    38,    89,    22,    23,    40,    27,    21,    23,
622        29,    42,    25,    38,    91,    36,    21,    38,    21,    33,        89,    34,    19,    36,    19,    31,    23,    38,    23,    36,
623        25,    40,    25,    38,    -1,    33,    29,    24,    29,    91,        -1,    19,    39,    22,    27,    33,    89,    33,    39,    38,
624        29,    34,    36,    41,    40,    91,    24,    38,    29,    42,        34,    39,    38,    89,    22,    23,    40,    27,    21,    23,
625        25,    38,    -1,    33,    29,    24,    29,    91,    29,    34,        37,    -1,    19,    39,    22,    27,    33,    89,    33,    39,
626        36,    41,    40,    91,    36,    35,    38,    40,    -1,    33,        38,    34,    39,    38,    89,    22,    23,    40,    27,    21,
627        29,    24,    29,    91,    29,    34,    36,    41,    40,    91,        23,    -1,    19,    39,    22,    27,    33,    89,    33,    39,
628        23,    28,    21,    34,    34,    25,    32,    -1,    33,    29,        38,    34,    39,    38,    89,    22,    36,    27,    40,    23,
629        24,    29,    91,    29,    34,    36,    41,    40,    91,    40,        36,    89,    34,    19,    36,    19,    31,    23,    38,    23,
630        45,    36,    25,    -1,    33,    29,    24,    29,    91,    29,        36,    -1,    19,    39,    22,    27,    33,    89,    33,    39,
631        34,    36,    41,    40,    -1,    39,    25,    38,    42,    25,        38,    34,    39,    38,    89,    22,    36,    27,    40,    23,
632        38,    -1,    42,    35,    32,    41,    33,    25,    -1,    33,        36,    -1,    19,    39,    22,    27,    33,    89,    33,    39,
633        41,    40,    25,    -1,    39,    35,    32,    35,    -1,    22,        38,    34,    39,    38,    89,    21,    26,    19,    32,    32,
634        45,    40,    25,    39,    -1,    36,    25,    38,    23,    25,        23,    30,    89,    34,    19,    36,    19,    31,    23,    38,
635        34,    40,    21,    27,    25,    -1,    38,    25,    39,    25,        23,    36,    -1,    19,    39,    22,    27,    33,    89,    33,
636        40,    -1,    33,    29,    39,    23,    25,    32,    32,    21,        39,    38,    34,    39,    38,    89,    21,    26,    19,    32,
637        34,    25,    35,    41,    39,    -1,    25,    23,    28,    35,        32,    23,    30,    -1,    19,    39,    22,    27,    33,    89,
638        -1,    37,    41,    29,    40,    -1        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,    90,    90,    91,    94,    95,    96,    97,   100,   101,         0,    96,    96,    97,   100,   101,   102,   103,   106,   107,
683       102,   103,   104,   107,   108,   109,   110,   111,   112,   113,       108,   109,   110,   113,   114,   115,   116,   117,   118,   119,
684       114,   115,   116,   117,   118,   119,   120,   123,   124,   125,       120,   121,   122,   123,   124,   125,   126,   127,   128,   129,
685       126,   127,   128,   131,   132,   133,   134,   135,   136,   139,       132,   133,   134,   137,   138,   139,   140,   141,   142,   143,
686       140,   141,   142,   143,   144,   145,   146,   147,   148,   149,       146,   147,   148,   149,   150,   151,   152,   155,   156,   157,
687       150,   151,   152,   153,   154,   155,   156,   157,   158,   159,       158,   161,   164,   165,   166,   169,   170,   171,   172,   173,
688       160,   161,   162,   165,   166,   167,   168,   169,   170,   173,       174,   175,   176,   177,   178,   179,   180,   181,   182,   183,
689       174,   175,   176,   179,   180,   183,   184,   187,   188,   189,       184,   185,   186,   187,   188,   189,   190,   191,   192,   193,
690       190,   191,   192,   193,   194,   195,   196,   197,   200,   201,       194,   195,   196,   197,   198,   199,   202,   203,   204,   205,
691       204,   205,   208,   209,   210,   211,   212,   213,   216,   217,       206,   207,   208,   211,   212,   213,   214,   217,   220,   221,
692       220,   223,   226,   229,   232,   235,   236,   239,   242,   243,       224,   225,   228,   229,   232,   233,   234,   235,   236,   237,
693       246,   249,   252,   255,   258,   259,   262,   263,   264,   265,       238,   239,   240,   241,   242,   243,   244,   245,   248,   249,
694       266,   274,   275,   278,   279,   282,   283,   284,   288,   289,       252,   253,   256,   257,   258,   259,   260,   261,   262,   263,
695       292,   293,   294,   295,   296,   297,   298,   299,   300,   301,       264,   267,   268,   271,   274,   275,   276,   279,   282,   285,
696       304,   305,   306,   307,   308,   309,   310,   311,   312,   313,       288,   291,   292,   295,   298,   301,   304,   307,   308,   311,
697       315,   315,   315,   315,   315,   315,   315,   315,   315,   315,       314,   317,   320,   323,   326,   329,   330,   333,   334,   335,
698       315,   315,   315,   315,   315,   315,   315,   315,   315,   315,       336,   344,   345,   348,   349,   352,   353,   354,   358,   359,
699       315,   315,   315,   315,   315,   315,   316,   316,   316,   316,       362,   363,   364,   365,   366,   367,   368,   369,   370,   371,
700       316,   316,   316,   316,   316,   316,   316,   316,   316,   316,       374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
701       316,   316,   316,   316,   316,   316,   316,   316,   316,   316,       385,   385,   385,   385,   385,   385,   385,   385,   385,   385,
702       316,   316,   317,   317,   317,   317,   317,   317,   317,   317,       385,   385,   385,   385,   385,   385,   385,   385,   385,   385,
703       317,   317,   318,   318,   318,   318,   318,   318,   318,   318,       385,   385,   385,   385,   385,   385,   386,   386,   386,   386,
704       318,   318,   318,   318,   318,   319,   319,   319,   319,   319,       386,   386,   386,   386,   386,   386,   386,   386,   386,   386,
705       319,   319,   320,   320,   320,   320,   320,   321,   321,   321,       386,   386,   386,   386,   386,   386,   386,   386,   386,   386,
706       321,   322,   322,   322,   323,   323,   323,   324,   324,   324,       386,   386,   387,   387,   387,   387,   387,   387,   387,   387,
707       325,   325,   325,   326,   326,   326,   327,   327,   327,   328,       387,   387,   388,   388,   388,   388,   388,   388,   388,   388,
708       328,   328,   329,   329,   329,   330,   330,   330,   331,   331,       388,   388,   388,   388,   388,   389,   389,   389,   389,   389,
709       331,   332,   332,   332,   333,   333,   333,   334,   334,   334,       389,   389,   390,   390,   390,   390,   390,   391,   391,   391,
710       335,   335,   335,   336,   336,   336,   337,   337,   337,   338,       391,   392,   392,   392,   393,   393,   393,   394,   394,   394,
711       338,   338,   339,   339,   339,   340,   340,   340,   341,   341,       395,   395,   395,   396,   396,   396,   397,   397,   397,   398,
712       341,   342,   342,   342,   343,   343,   343,   344,   344,   344,       398,   398,   399,   399,   399,   400,   400,   400,   401,   401,
713       345,   345,   345,   346,   346,   346,   347,   347,   347,   348,       401,   402,   402,   402,   403,   403,   403,   404,   404,   404,
714       348,   348,   349,   349,   349,   350,   350,   350,   351,   351,       405,   405,   405,   406,   406,   406,   407,   407,   407,   408,
715       351,   352,   352,   352,   353,   353,   353,   354,   354,   354,       408,   408,   409,   409,   409,   410,   410,   410,   411,   411,
716       355,   355,   355,   356,   356,   356,   357,   357,   357,   358,       411,   412,   412,   412,   413,   413,   413,   414,   414,   414,
717       358,   358,   359,   359,   359,   360,   360,   360,   361,   361,       415,   415,   415,   416,   416,   416,   417,   417,   417,   418,
718       361,   362,   362,   362,   363,   363,   363,   364,   364,   367,       418,   418,   419,   419,   419,   420,   420,   420,   421,   421,
719       368,   369,   370,   373,   374,   380,   383,   386,   389,   392,       421,   422,   422,   422,   423,   423,   423,   424,   424,   424,
720       395,   398,   401,   404,   407,   410,   413,   416,   419,   422,       425,   425,   425,   426,   426,   426,   427,   427,   427,   428,
721       425,   428,   431,   434,   437,   440,   443,   446,   449,   452,       428,   428,   429,   429,   429,   430,   430,   430,   431,   431,
722       455,   458,   461,   464,   467,   470,   473,   476,   479,   482,       431,   432,   432,   432,   433,   433,   433,   434,   434,   437,
723       485,   488,   491,   494,   497,   500,   503,   506,   509,   512,       438,   439,   440,   443,   444,   450,   453,   456,   459,   462,
724       515,   518,   521,   524,   527,   530,   533,   536,   539,   542,       465,   468,   471,   474,   477,   480,   483,   486,   489,   492,
725       545,   548       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", "'#'", "'='", "','", "'''", "'\"'",    "$end", "error", "$undefined", "'#'", "'='", "','", "'.'", "'+'", "'-'",
740    "'.'", "'+'", "'-'", "'0'", "'1'", "'2'", "'3'", "'4'", "'5'", "'6'",    "'0'", "'1'", "'2'", "'3'", "'4'", "'5'", "'6'", "'7'", "'8'", "'9'",
741    "'7'", "'8'", "'9'", "'A'", "'B'", "'C'", "'D'", "'E'", "'F'", "'G'",    "'A'", "'B'", "'C'", "'D'", "'E'", "'F'", "'G'", "'H'", "'I'", "'J'",
742    "'H'", "'I'", "'J'", "'K'", "'L'", "'M'", "'N'", "'O'", "'P'", "'Q'",    "'K'", "'L'", "'M'", "'N'", "'O'", "'P'", "'Q'", "'R'", "'S'", "'T'",
743    "'R'", "'S'", "'T'", "'U'", "'V'", "'W'", "'X'", "'Y'", "'Z'", "'a'",    "'U'", "'V'", "'W'", "'X'", "'Y'", "'Z'", "'a'", "'b'", "'c'", "'d'",
744    "'b'", "'c'", "'d'", "'e'", "'f'", "'g'", "'h'", "'i'", "'j'", "'k'",    "'e'", "'f'", "'g'", "'h'", "'i'", "'j'", "'k'", "'l'", "'m'", "'n'",
745    "'l'", "'m'", "'n'", "'o'", "'p'", "'q'", "'r'", "'s'", "'t'", "'u'",    "'o'", "'p'", "'q'", "'r'", "'s'", "'t'", "'u'", "'v'", "'w'", "'x'",
746    "'v'", "'w'", "'x'", "'y'", "'z'", "'!'", "'$'", "'%'", "'&'", "'('",    "'y'", "'z'", "'!'", "'$'", "'%'", "'&'", "'('", "')'", "'*'", "'/'",
747    "')'", "'*'", "'/'", "':'", "';'", "'<'", "'>'", "'?'", "'@'", "'['",    "':'", "';'", "'<'", "'>'", "'?'", "'@'", "'['", "'\\\\'", "']'", "'^'",
748    "'\\\\'", "']'", "'^'", "'_'", "'{'", "'|'", "'}'", "'~'", "'\\200'",    "'_'", "'{'", "'|'", "'}'", "'~'", "'\\200'", "'\\201'", "'\\202'",
749    "'\\201'", "'\\202'", "'\\203'", "'\\204'", "'\\205'", "'\\206'",    "'\\203'", "'\\204'", "'\\205'", "'\\206'", "'\\207'", "'\\210'",
750    "'\\207'", "'\\210'", "'\\211'", "'\\212'", "'\\213'", "'\\214'",    "'\\211'", "'\\212'", "'\\213'", "'\\214'", "'\\215'", "'\\216'",
751    "'\\215'", "'\\216'", "'\\217'", "'\\220'", "'\\221'", "'\\222'",    "'\\217'", "'\\220'", "'\\221'", "'\\222'", "'\\223'", "'\\224'",
752    "'\\223'", "'\\224'", "'\\225'", "'\\226'", "'\\227'", "'\\230'",    "'\\225'", "'\\226'", "'\\227'", "'\\230'", "'\\231'", "'\\232'",
753    "'\\231'", "'\\232'", "'\\233'", "'\\234'", "'\\235'", "'\\236'",    "'\\233'", "'\\234'", "'\\235'", "'\\236'", "'\\237'", "'\\240'",
754    "'\\237'", "'\\240'", "'\\241'", "'\\242'", "'\\243'", "'\\244'",    "'\\241'", "'\\242'", "'\\243'", "'\\244'", "'\\245'", "'\\246'",
755    "'\\245'", "'\\246'", "'\\247'", "'\\250'", "'\\251'", "'\\252'",    "'\\247'", "'\\250'", "'\\251'", "'\\252'", "'\\253'", "'\\254'",
756    "'\\253'", "'\\254'", "'\\255'", "'\\256'", "'\\257'", "'\\260'",    "'\\255'", "'\\256'", "'\\257'", "'\\260'", "'\\261'", "'\\262'",
757    "'\\261'", "'\\262'", "'\\263'", "'\\264'", "'\\265'", "'\\266'",    "'\\263'", "'\\264'", "'\\265'", "'\\266'", "'\\267'", "'\\270'",
758    "'\\267'", "'\\270'", "'\\271'", "'\\272'", "'\\273'", "'\\274'",    "'\\271'", "'\\272'", "'\\273'", "'\\274'", "'\\275'", "'\\276'",
759    "'\\275'", "'\\276'", "'\\277'", "'\\300'", "'\\301'", "'\\302'",    "'\\277'", "'\\300'", "'\\301'", "'\\302'", "'\\303'", "'\\304'",
760    "'\\303'", "'\\304'", "'\\305'", "'\\306'", "'\\307'", "'\\310'",    "'\\305'", "'\\306'", "'\\307'", "'\\310'", "'\\311'", "'\\312'",
761    "'\\311'", "'\\312'", "'\\313'", "'\\314'", "'\\315'", "'\\316'",    "'\\313'", "'\\314'", "'\\315'", "'\\316'", "'\\317'", "'\\320'",
762    "'\\317'", "'\\320'", "'\\321'", "'\\322'", "'\\323'", "'\\324'",    "'\\321'", "'\\322'", "'\\323'", "'\\324'", "'\\325'", "'\\326'",
763    "'\\325'", "'\\326'", "'\\327'", "'\\330'", "'\\331'", "'\\332'",    "'\\327'", "'\\330'", "'\\331'", "'\\332'", "'\\333'", "'\\334'",
764    "'\\333'", "'\\334'", "'\\335'", "'\\336'", "'\\337'", "'\\340'",    "'\\335'", "'\\336'", "'\\337'", "'\\340'", "'\\341'", "'\\342'",
765    "'\\341'", "'\\342'", "'\\343'", "'\\344'", "'\\345'", "'\\346'",    "'\\343'", "'\\344'", "'\\345'", "'\\346'", "'\\347'", "'\\350'",
766    "'\\347'", "'\\350'", "'\\351'", "'\\352'", "'\\353'", "'\\354'",    "'\\351'", "'\\352'", "'\\353'", "'\\354'", "'\\355'", "'\\356'",
767    "'\\355'", "'\\356'", "'\\357'", "'\\360'", "'\\361'", "'\\362'",    "'\\357'", "'\\360'", "'\\361'", "'\\362'", "'\\363'", "'\\364'",
768    "'\\363'", "'\\364'", "'\\365'", "'\\366'", "'\\367'", "'\\370'",    "'\\365'", "'\\366'", "'\\367'", "'\\370'", "'\\371'", "'\\372'",
769    "'\\371'", "'\\372'", "'\\373'", "'\\374'", "'\\375'", "'\\376'",    "'\\373'", "'\\374'", "'\\375'", "'\\376'", "'\\377'", "'''", "'\"'",
770    "'\\377'", "' '", "'\\n'", "'\\r'", "$accept", "input", "line",    "' '", "'\\n'", "'\\r'", "$accept", "input", "line", "comment",
771    "comment", "command", "subscribe_event", "unsubscribe_event",    "command", "add_instruction", "subscribe_event", "unsubscribe_event",
772      "map_instruction", "unmap_instruction", "remove_instruction",
773    "get_instruction", "set_instruction", "create_instruction",    "get_instruction", "set_instruction", "create_instruction",
774    "destroy_instruction", "load_instruction", "set_chan_instruction",    "reset_instruction", "clear_instruction", "destroy_instruction",
775    "key_val_list", "buffer_size_type", "list_instruction",    "load_instruction", "set_chan_instruction", "key_val_list",
776    "load_instr_args", "load_engine_args", "device_index",    "buffer_size_type", "list_instruction", "load_instr_args",
777      "load_engine_args", "instr_load_mode", "device_index",
778    "audio_channel_index", "audio_output_type_name", "midi_input_port_index",    "audio_channel_index", "audio_output_type_name", "midi_input_port_index",
779    "midi_input_channel_index", "midi_input_type_name", "volume_value",    "midi_input_channel_index", "midi_input_type_name", "midi_map",
780    "sampler_channel", "instrument_index", "engine_name", "filename",    "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",    "param_val_list", "param_val", "boolean", "string", "dotnum", "digits",
783    "digit", "number", "char", "text", "stringval", "SP", "LF", "CR", "ADD",    "digit", "number", "char", "text", "stringval", "SP", "LF", "CR", "ADD",
784    "GET", "CREATE", "DESTROY", "LIST", "LOAD", "ALL", "NON_MODAL", "REMOVE",    "GET", "MAP", "UNMAP", "CLEAR", "CREATE", "DESTROY", "LIST", "LOAD",
785    "SET", "SUBSCRIBE", "UNSUBSCRIBE", "SELECT", "CHANNEL",    "ALL", "NONE", "DEFAULT", "NON_MODAL", "REMOVE", "SET", "SUBSCRIBE",
786    "AVAILABLE_ENGINES", "AVAILABLE_AUDIO_OUTPUT_DRIVERS", "CHANNELS",    "UNSUBSCRIBE", "SELECT", "CHANNEL", "AVAILABLE_ENGINES",
787    "INFO", "CHANNEL_COUNT", "CHANNEL_INFO", "BUFFER_FILL", "STREAM_COUNT",    "AVAILABLE_AUDIO_OUTPUT_DRIVERS", "CHANNELS", "INFO", "CHANNEL_COUNT",
788    "VOICE_COUNT", "INSTRUMENT", "ENGINE", "AUDIO_OUTPUT_DEVICE_PARAMETER",    "CHANNEL_INFO", "BUFFER_FILL", "STREAM_COUNT", "VOICE_COUNT",
789    "AUDIO_OUTPUT_DEVICES", "AUDIO_OUTPUT_DEVICE",    "TOTAL_VOICE_COUNT", "TOTAL_VOICE_COUNT_MAX", "INSTRUMENT", "ENGINE",
790    "AUDIO_OUTPUT_DRIVER_PARAMETER", "AUDIO_OUTPUT_DRIVER",    "ON_DEMAND", "ON_DEMAND_HOLD", "PERSISTENT",
791    "AUDIO_OUTPUT_CHANNEL_PARAMETER", "AUDIO_OUTPUT_CHANNEL",    "AUDIO_OUTPUT_DEVICE_PARAMETER", "AUDIO_OUTPUT_DEVICES",
792    "AUDIO_OUTPUT_TYPE", "AVAILABLE_MIDI_INPUT_DRIVERS",    "AUDIO_OUTPUT_DEVICE", "AUDIO_OUTPUT_DRIVER_PARAMETER",
793    "MIDI_INPUT_DEVICE_PARAMETER", "MIDI_INPUT_PORT_PARAMETER",    "AUDIO_OUTPUT_DRIVER", "AUDIO_OUTPUT_CHANNEL_PARAMETER",
794    "MIDI_INPUT_DEVICES", "MIDI_INPUT_DEVICE", "MIDI_INPUT_DRIVER_PARAMETER",    "AUDIO_OUTPUT_CHANNEL", "AUDIO_OUTPUT_TYPE",
795    "MIDI_INPUT_DRIVER", "MIDI_INPUT_PORT", "MIDI_INPUT_CHANNEL",    "AVAILABLE_MIDI_INPUT_DRIVERS", "MIDI_INPUT_DEVICE_PARAMETER",
796    "MIDI_INPUT_TYPE", "MIDI_INPUT", "SERVER", "VOLUME", "MUTE", "SOLO",    "MIDI_INPUT_PORT_PARAMETER", "MIDI_INPUT_DEVICES", "MIDI_INPUT_DEVICE",
797    "BYTES", "PERCENTAGE", "RESET", "MISCELLANEOUS", "ECHO", "QUIT", 0    "MIDI_INPUT_DRIVER_PARAMETER", "MIDI_INSTRUMENT", "MIDI_INSTRUMENTS",
798      "MIDI_INSTRUMENT_MAP", "MIDI_INSTRUMENT_MAPS", "MIDI_INPUT_DRIVER",
799      "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,    44,    39,    34,    46,    43,         0,   256,   257,    35,    61,    44,    46,    43,    45,    48,
811        45,    48,    49,    50,    51,    52,    53,    54,    55,    56,        49,    50,    51,    52,    53,    54,    55,    56,    57,    65,
812        57,    65,    66,    67,    68,    69,    70,    71,    72,    73,        66,    67,    68,    69,    70,    71,    72,    73,    74,    75,
813        74,    75,    76,    77,    78,    79,    80,    81,    82,    83,        76,    77,    78,    79,    80,    81,    82,    83,    84,    85,
814        84,    85,    86,    87,    88,    89,    90,    97,    98,    99,        86,    87,    88,    89,    90,    97,    98,    99,   100,   101,
815       100,   101,   102,   103,   104,   105,   106,   107,   108,   109,       102,   103,   104,   105,   106,   107,   108,   109,   110,   111,
816       110,   111,   112,   113,   114,   115,   116,   117,   118,   119,       112,   113,   114,   115,   116,   117,   118,   119,   120,   121,
817       120,   121,   122,    33,    36,    37,    38,    40,    41,    42,       122,    33,    36,    37,    38,    40,    41,    42,    47,    58,
818        47,    58,    59,    60,    62,    63,    64,    91,    92,    93,        59,    60,    62,    63,    64,    91,    92,    93,    94,    95,
819        94,    95,   123,   124,   125,   126,   128,   129,   130,   131,       123,   124,   125,   126,   128,   129,   130,   131,   132,   133,
820       132,   133,   134,   135,   136,   137,   138,   139,   140,   141,       134,   135,   136,   137,   138,   139,   140,   141,   142,   143,
821       142,   143,   144,   145,   146,   147,   148,   149,   150,   151,       144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
822       152,   153,   154,   155,   156,   157,   158,   159,   160,   161,       154,   155,   156,   157,   158,   159,   160,   161,   162,   163,
823       162,   163,   164,   165,   166,   167,   168,   169,   170,   171,       164,   165,   166,   167,   168,   169,   170,   171,   172,   173,
824       172,   173,   174,   175,   176,   177,   178,   179,   180,   181,       174,   175,   176,   177,   178,   179,   180,   181,   182,   183,
825       182,   183,   184,   185,   186,   187,   188,   189,   190,   191,       184,   185,   186,   187,   188,   189,   190,   191,   192,   193,
826       192,   193,   194,   195,   196,   197,   198,   199,   200,   201,       194,   195,   196,   197,   198,   199,   200,   201,   202,   203,
827       202,   203,   204,   205,   206,   207,   208,   209,   210,   211,       204,   205,   206,   207,   208,   209,   210,   211,   212,   213,
828       212,   213,   214,   215,   216,   217,   218,   219,   220,   221,       214,   215,   216,   217,   218,   219,   220,   221,   222,   223,
829       222,   223,   224,   225,   226,   227,   228,   229,   230,   231,       224,   225,   226,   227,   228,   229,   230,   231,   232,   233,
830       232,   233,   234,   235,   236,   237,   238,   239,   240,   241,       234,   235,   236,   237,   238,   239,   240,   241,   242,   243,
831       242,   243,   244,   245,   246,   247,   248,   249,   250,   251,       244,   245,   246,   247,   248,   249,   250,   251,   252,   253,
832       252,   253,   254,   255,    32,    10,    13       254,   255,    39,    34,    32,    10,    13
833  };  };
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,   234,   235,   235,   235,   235,   235,   235,   236,       238,   238,   238,   238,   238,   238,   238,   238,   238,   238,
846       236,   236,   236,   237,   237,   238,   238,   239,   239,   239,       238,   238,   238,   238,   238,   238,   238,   238,   238,   238,
847       239,   239,   239,   239,   239,   239,   239,   239,   240,   240,       238,   238,   238,   238,   238,   238,   239,   239,   239,   239,
848       241,   241,   242,   242,   242,   242,   242,   242,   243,   243,       239,   239,   239,   240,   240,   240,   240,   241,   242,   242,
849       244,   245,   246,   247,   248,   249,   249,   250,   251,   251,       243,   243,   244,   244,   245,   245,   245,   245,   245,   245,
850       252,   253,   254,   255,   256,   256,   257,   257,   257,   257,       245,   245,   245,   245,   245,   245,   245,   245,   246,   246,
851       257,   258,   258,   259,   259,   260,   260,   260,   261,   261,       247,   247,   248,   248,   248,   248,   248,   248,   248,   248,
852       262,   262,   262,   262,   262,   262,   262,   262,   262,   262,       248,   249,   249,   250,   251,   251,   251,   252,   253,   254,
853       263,   263,   263,   263,   263,   263,   263,   263,   263,   263,       255,   256,   256,   257,   258,   259,   260,   261,   261,   262,
854       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       263,   264,   265,   266,   267,   268,   268,   269,   269,   269,
855       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       269,   270,   270,   271,   271,   272,   272,   272,   273,   273,
856       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       274,   274,   274,   274,   274,   274,   274,   274,   274,   274,
857       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       275,   275,   275,   275,   275,   275,   275,   275,   275,   275,
858       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,
859       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,
860       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,
861       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,
862       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,
863       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,
864       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,
865       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,
866       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,
867       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,
868       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,
869       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,
870       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,
871       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,
872       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,
873       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,
874       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,
875       264,   264,   264,   264,   264,   264,   264,   264,   264,   265,       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,
876       265,   265,   265,   266,   266,   267,   268,   269,   270,   271,       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,
877       272,   273,   274,   275,   276,   277,   278,   279,   280,   281,       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,
878       282,   283,   284,   285,   286,   287,   288,   289,   290,   291,       276,   276,   276,   276,   276,   276,   276,   276,   276,   276,
879       292,   293,   294,   295,   296,   297,   298,   299,   300,   301,       276,   276,   276,   276,   276,   276,   276,   276,   276,   277,
880       302,   303,   304,   305,   306,   307,   308,   309,   310,   311,       277,   277,   277,   278,   278,   279,   280,   281,   282,   283,
881       312,   313,   314,   315,   316,   317,   318,   319,   320,   321,       284,   285,   286,   287,   288,   289,   290,   291,   292,   293,
882       322,   323       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,
        5,     5,     7,     9,     7,     9,     1,     5,     7,     5,  
        5,     5,     3,     7,     9,     7,     9,     3,     3,     5,  
        3,     5,     3,     3,     3,     3,     3,     5,     7,     5,  
        9,     5,     5,     5,     5,     5,     5,     5,     3,     5,  
        1,     1,     1,     1,     1,     1,     1,     1,     5,     7,  
        3,     1,     1,     1,     1,     1,     1,     1,     1,     1,  
        1,     1,     1,     1,     1,     3,     1,     3,     3,     1,  
909         1,     1,     1,     1,     2,     3,     4,     4,     1,     2,         1,     1,     1,     1,     2,     3,     4,     4,     1,     2,
910         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
911         1,     2,     2,     2,     2,     2,     2,     2,     2,     2,         1,     2,     2,     2,     2,     2,     2,     2,     2,     2,
# Line 736  static const unsigned char yyr2[] = Line 932  static const unsigned char yyr2[] =
932         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
933         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
934         1,     2,     2,     3,     3,     1,     1,     1,     3,     3,         1,     2,     2,     3,     3,     1,     1,     1,     3,     3,
935         6,     7,     4,     4,     3,     9,     6,     3,     9,    11,         3,     5,     5,     6,     7,     4,     4,     3,     4,     7,
936         6,     7,    17,    30,     8,     4,    13,    12,    11,    12,         9,     6,     3,     9,    11,     6,     7,    17,    30,     8,
937        11,    10,     6,    29,    20,    19,    29,    19,    30,    20,         4,    13,    12,    11,    12,    11,    17,    21,    10,     6,
938        17,    28,    27,    25,    18,    17,    27,    17,    15,    18,         9,    14,    10,    29,    20,    19,    29,    19,    30,    20,
939        15,    10,     6,     6,     4,     4,     5,    10,     5,    13,        17,    28,    27,    25,    18,    17,    27,    15,    16,    19,
940         4,     4        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,   376,   377,     2,     0,     9,   228,   223,   222,   220,         0,    28,    29,     0,     0,     0,     0,     0,     0,     0,
953       221,   130,   131,   132,   133,   134,   135,   136,   137,   138,         0,     0,     0,     0,     0,     0,     1,   416,   417,     2,
954       139,   150,   151,   152,   153,   154,   155,   156,   157,   158,         0,     9,   268,   263,   262,   260,   261,   170,   171,   172,
955       159,   160,   161,   162,   163,   164,   165,   166,   167,   168,       173,   174,   175,   176,   177,   178,   179,   190,   191,   192,
956       169,   170,   171,   172,   173,   174,   175,   176,   177,   178,       193,   194,   195,   196,   197,   198,   199,   200,   201,   202,
957       179,   180,   181,   182,   183,   184,   185,   186,   187,   188,       203,   204,   205,   206,   207,   208,   209,   210,   211,   212,
958       189,   190,   191,   192,   193,   194,   195,   196,   197,   198,       213,   214,   215,   216,   217,   218,   219,   220,   221,   222,
959       199,   200,   201,   212,   214,   215,   216,   217,   218,   219,       223,   224,   225,   226,   227,   228,   229,   230,   231,   232,
960       224,   225,   226,   227,   229,   230,   231,   232,   233,   234,       233,   234,   235,   236,   237,   238,   239,   240,   241,   252,
961       235,   236,   237,   238,   239,   240,   241,   242,   243,   244,       254,   255,   256,   257,   258,   259,   264,   265,   266,   267,
962       245,   246,   247,   248,   249,   250,   251,   252,   253,   254,       269,   270,   271,   272,   273,   274,   275,   276,   277,   278,
963       255,   256,   257,   258,   259,   260,   261,   262,   263,   264,       279,   280,   281,   282,   283,   284,   285,   286,   287,   288,
964       265,   266,   267,   268,   269,   270,   271,   272,   273,   274,       289,   290,   291,   292,   293,   294,   295,   296,   297,   298,
965       275,   276,   277,   278,   279,   280,   281,   282,   283,   284,       299,   300,   301,   302,   303,   304,   305,   306,   307,   308,
966       285,   286,   287,   288,   289,   290,   291,   292,   293,   294,       309,   310,   311,   312,   313,   314,   315,   316,   317,   318,
967       295,   296,   297,   298,   299,   300,   301,   302,   303,   304,       319,   320,   321,   322,   323,   324,   325,   326,   327,   328,
968       305,   306,   307,   308,   309,   310,   311,   312,   313,   314,       329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
969       315,   316,   317,   318,   319,   320,   321,   322,   323,   324,       339,   340,   341,   342,   343,   344,   345,   346,   347,   348,
970       325,   326,   327,   328,   329,   330,   331,   332,   333,   334,       349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
971       335,   336,   337,   338,   339,   340,   341,   342,   343,   344,       359,   360,   361,   362,   363,   364,   365,   366,   367,   368,
972       345,   346,   347,   348,   349,   350,   351,   352,   353,   354,       369,   370,   371,   372,   373,   374,   375,   376,   377,   378,
973       355,   356,   357,   358,   359,   360,   361,   362,   363,   364,       379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
974       365,   366,   367,   368,   375,    12,   140,    11,   123,    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,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1005         0,     0,   378,     0,     0,   379,     0,     0,     0,     0,         0,     0,     0,     0,     0,   171,   172,   173,   174,   175,
1006         0,     0,   387,     0,     0,     3,   130,   131,   132,   133,       176,   177,   178,   179,     0,    81,   144,    82,     0,     0,
1007       134,   135,   136,   137,   138,   139,   141,   128,   142,   143,         0,    78,     0,     0,     0,     0,    98,    99,     0,     0,
1008       144,   145,   146,   147,   148,   149,   213,   202,   203,   204,        94,    96,   100,   101,     0,     0,     0,   128,   129,     0,
1009       205,   206,   207,   208,   209,   210,   211,   124,     0,    13,         0,   102,     0,   152,     0,   103,     0,   151,    52,   149,
1010         0,     0,     0,     0,     0,    14,     0,    39,    44,    56,        53,    54,     0,     0,     0,     0,     0,     0,     0,    90,
        0,    48,     0,     0,     0,     0,     0,    40,     0,    49,  
        0,     0,     0,     0,     0,     0,     0,    15,     0,     0,  
       16,     0,     0,     0,     0,     0,    17,    95,    97,    94,  
       92,    96,    93,     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,   370,    23,   369,  
        0,     0,     0,   382,   383,   431,     0,     0,     0,     0,  
        0,   129,     0,     0,     0,     0,     0,     0,     0,     0,  
1011         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         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,
1016         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,     0,     0,   372,  
      371,     0,     0,     0,     0,   428,     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,     0,    62,     0,     0,    70,    72,   131,   132,   133,         0,   485,     0,     0,     0,     0,     0,     0,     0,     0,
      134,   135,   136,   137,   138,   139,    73,    74,     0,     0,  
        0,     0,     0,     0,     0,    75,     0,   113,     0,    76,  
        0,   112,    19,   110,     0,     0,     0,     0,     0,     0,  
        0,    67,     0,     0,     0,     0,     0,     0,     0,     0,  
        0,     0,     0,     0,     0,     0,     0,    68,   122,   121,  
        0,     0,     0,     0,     0,    24,   380,     0,   386,   390,  
1020         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     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,
1029         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
      430,     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,     0,   381,     0,     0,         0,     0,     0,     0,     0,     0,   449,     0,   476,     0,
1032         0,     0,     0,     0,     0,     0,     0,     0,    57,     0,       440,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,    90,    91,    59,    60,    61,    50,     0,    45,  
        0,     0,     0,    51,     0,    41,     0,     0,     0,    69,  
        0,    71,     0,     0,     0,     0,   373,   374,     0,     0,  
      111,     0,   100,     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,
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,     0,     0,   402,     0,   422,   395,       478,   479,     0,     0,     0,     0,     0,     0,     0,     0,
1036           0,     0,     0,     0,     0,     0,     0,     0,     0,   484,
1037           0,     0,     0,     0,     0,     0,     0,   433,     0,   436,
1038           0,     0,     0,   436,     0,     0,     0,     0,    74,    62,
1039           0,    70,     0,    58,     0,    68,     0,     0,   146,    51,
1040           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         0,     0,     0,     0,   424,   425,     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,     0,     0,     0,     0,     0,   388,     0,   391,         0,     0,   434,     0,     0,     0,     0,     0,     0,   480,
1052         0,     0,   391,     0,     0,     0,    58,    46,     0,    54,         0,    63,    71,    69,    59,    83,     0,     0,     0,     0,
1053         0,    42,    52,     0,     0,     0,     0,     0,   220,   221,         0,   119,     0,     0,   156,   165,     0,     0,     0,     0,
1054        88,   114,   116,   120,     0,   128,   119,     0,     0,     0,         0,   132,     0,     0,     0,     0,   105,     0,     0,     0,
1055         0,     0,    98,     0,     0,     0,     0,     0,     0,    77,        87,    89,     0,     0,     0,     0,     0,     0,     0,     0,
      101,     0,   102,    79,   103,    81,    82,   104,     0,    83,  
      105,   106,    84,   107,     0,     0,     0,    85,   108,   109,  
       86,    87,    63,     0,    65,     0,     0,     0,     0,     0,  
        0,     0,     0,     0,   394,     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       423,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,   430,
1061         0,   389,     0,     0,     0,   426,     0,    47,    55,    53,         0,     0,     0,     0,     0,   107,   443,     0,     0,     0,
1062        43,     0,     0,    89,   117,   118,     0,     0,   115,   125,         0,     0,   445,     0,     0,     0,     0,     0,     0,     0,
        0,     0,     0,     0,    99,     0,     0,     0,     0,    78,  
      384,     0,    64,    66,     0,     0,     0,     0,     0,     0,  
        0,     0,     0,     0,     0,     0,   126,   127,     0,     0,  
      401,     0,     0,     0,     0,     0,     0,     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,   385,     0,     0,     0,     0,    80,   398,         0,     0,     0,     0,     0,   475,     0,     0,   442,     0,
1065         0,     0,     0,     0,   400,     0,     0,     0,     0,     0,       444,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1066         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1067       421,     0,   397,     0,   399,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,   429,   441,   483,     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,   396,   429,     0,     0,     0,     0,     0,     0,         0,   481,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,   427,     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,   418,     0,     0,     0,     0,     0,     0,         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,
1076         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1077         0,   392,     0,   415,   417,     0,     0,   415,     0,     0,         0,   437,     0,   465,   471,     0,     0,   446,     0,     0,
1078         0,     0,     0,     0,     0,     0,   418,   420,     0,     0,        48,    49,   154,   134,   135,   136,     0,   465,     0,     0,
1079         0,     0,     0,   414,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,   472,   474,   446,
1080         0,     0,     0,     0,     0,   405,   407,     0,     0,     0,         0,     0,     0,     0,     0,     0,   464,     0,     0,     0,
        0,   405,     0,     0,     0,     0,     0,   410,     0,   409,  
      404,     0,     0,     0,     0,     0,     0,     0,     0,     0,  
      419,     0,     0,     0,     0,     0,     0,     0,     0,     0,  
        0,     0,     0,     0,     0,     0,     0,     0,   409,     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,   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       413,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,   459,     0,     0,     0,     0,     0,     0,
1089         0,     0,     0,     0,   416,     0,   412,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1090       411,     0,     0,   406,     0,   403,   408,   393         0,     0,     0,     0,     0,     0,     0,     0,     0,   463,
1091         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,   393,   400,   335,   381,   357,        -1,    13,    14,    15,    16,   342,   429,   437,   378,   380,
1101       360,   374,   541,   669,   651,   366,   525,   529,   809,   811,       409,   351,   415,   387,   448,   383,   390,   406,   619,   776,
1102       813,   816,   819,   822,   827,   532,   679,   530,   526,   790,       750,   396,   601,   605,  1290,   936,   938,   940,   948,   950,
1103       791,   557,   792,   793,   794,   266,   533,   268,   408,   527,       953,   575,   770,   907,   958,   608,   784,   606,   602,   541,
1104       731,    43,    44,    16,    17,    18,    19,    20,    21,   821,      1291,   916,   917,   638,   918,   919,   920,   272,   609,   274,
1105       528,    22,    23,    24,    25,    26,   329,   337,   338,   339,       446,   923,   847,    49,    50,    17,    18,    19,    20,    21,
1106       487,   394,   395,   396,   397,   398,   375,   340,   383,   341,        22,    23,    24,    25,   952,   946,   947,   604,    26,    27,
1107       342,   343,   344,   345,   346,   544,   347,   385,   348,   349,        28,    29,    30,   343,   353,   354,   355,   551,   430,   431,
1108       350,   351,   352,   353,   547,   548,   549,   354,   550,   551,       432,   433,   434,   356,   357,   407,   358,  1293,  1294,  1295,
1109       552,   652,   653,    27,   399,   387,    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 -735  #define YYPACT_NINF -841
1118  static const short int yypact[] =  static const yytype_int16 yypact[] =
1119  {  {
1120        51,  -735,  -735,     9,    20,    36,    92,     5,    95,   137,        64,  -841,  -841,    52,   167,    92,   120,   177,   126,   132,
1121         0,   104,   185,  -194,  1600,  -735,   -38,   -38,   -38,   -38,       189,    59,   168,   228,    37,  1863,  -841,    16,    16,    16,
1122       -38,   -38,   -38,   -38,   -38,   -38,   -38,   -38,  -735,   173,        16,    16,    16,    16,    16,    16,    16,    16,    16,    16,
1123       180,   162,   167,   169,   188,   221,    -4,    -2,   229,   213,        16,    16,  -841,   243,   237,   252,   274,   242,   275,   298,
1124      -735,  -735,  -735,  -735,    39,  -735,  -735,  -735,  -735,  -735,       296,   304,   178,   137,   312,   198,  -841,  -841,  -841,  -841,
1125      -735,  -735,   243,   243,   243,   243,   243,   243,   243,   243,       108,  -841,  -841,  -841,  -841,  -841,  -841,  -841,   238,   238,
1126       243,  -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,       238,   238,   238,   238,   238,   238,   238,  -841,  -841,  -841,
1127      -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1128      -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1129      -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1130      -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1131      -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1132      -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1133      -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1134      -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1135      -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1136      -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1137      -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1138      -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1139      -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1140      -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1141      -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1142      -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1143      -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1144      -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1145      -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1146      -735,  -735,  -735,  -735,  -735,  2707,  -735,  -735,  -735,  -735,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1147       247,    77,    86,    86,    76,    83,   247,   177,    54,    54,      -841,  2528,  -841,  -841,  -841,  -841,   117,   109,   303,   303,
1148      1822,   247,  -735,   245,   231,  -735,   232,   249,   234,   240,       305,   100,   100,   174,    70,   117,   147,   104,   104,  2085,
1149       263,   264,  -735,   251,   250,  -735,  -735,  -735,  -735,  -735,       314,  -841,   319,   320,   302,  -841,   306,   330,  -841,   327,
1150      -735,  -735,  -735,  -735,  -735,  -735,   243,  -735,   243,   243,       309,   335,   344,  -841,   331,   351,   332,  -841,  -841,  -841,
1151       243,   243,   243,   243,   243,   243,  -735,  -735,  -735,  -735,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,   238,  -841,
1152      -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,   265,  -735,       238,   238,   238,   238,   238,   238,   238,   238,  -841,  -841,
1153        38,   266,   258,   268,   270,  -735,   -38,  -735,  -735,  -735,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1154       -38,  -735,   -38,   -38,   -38,   -38,   -38,  -735,   -38,  -735,       346,   348,  -841,  -841,    16,   229,   363,   358,   364,   371,
1155       -38,   -38,   -38,   -38,   -38,   269,   277,  -735,   -38,   -38,       365,  -841,    16,  -841,  -841,  -841,  -841,  -841,    16,  -841,
1156      -735,   -38,   -38,    44,   279,   280,  -735,  -735,  -735,  -735,        16,    16,    16,    16,    16,  -841,    16,  -841,    16,    16,
1157      -735,  -735,  -735,   274,  -735,   -38,   -38,   -38,   271,   288,        16,    16,    16,  -841,    16,    16,    16,   372,  -841,    16,
1158       284,  -735,   -38,   -38,   -38,   -38,   -38,   -38,   273,   287,      -841,    16,   373,  -841,    16,   370,   381,  -841,    16,    16,
1159       289,   276,   282,  -735,  -735,  -735,  -735,  -735,  -735,  -735,      -841,    16,    16,   231,   384,   385,  -841,  -841,  -841,  -841,
1160      -735,  -735,  -735,  -735,  -735,  -735,  -735,  2707,  1822,  -735,      -841,  -841,  -841,    16,  -841,   379,  -841,    16,    16,  -841,
1161       -38,   285,   281,  -735,  -735,  -735,   278,   286,   299,   301,        16,    16,   374,   393,   388,  -841,    16,    16,    16,    16,
1162       306,  -735,   313,   312,   321,   322,   317,   323,   314,    62,        16,    16,    16,   377,   391,   405,   395,   402,   403,  -841,
1163       324,   324,   324,   324,   324,   324,   324,   324,   324,   324,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1164       324,   324,   326,   327,  2707,  2707,   267,   267,   330,   334,      -841,  -841,  -841,  -841,  -841,  2528,  2085,  -841,  -841,    16,
1165       332,   318,    21,  2707,   267,   335,   333,   336,    18,   267,       401,   400,   404,  -841,  -841,  -841,   399,   406,   420,   421,
1166       267,   267,   267,  2928,   339,   337,   328,   338,   346,  2707,       411,   439,  -841,   441,   436,    55,   440,   442,   444,   443,
1167      -735,   267,   341,   342,   343,  -735,   340,   344,   345,   347,       445,   428,   427,    50,   446,   446,   446,   446,   446,   446,
1168       349,   350,   351,   354,   357,   348,   353,   -38,   -38,   -38,       446,   446,   446,   446,   438,   446,   446,   446,   446,   447,
1169       -38,   -38,   -38,   -38,   -38,   -38,   -38,   -38,   -38,   -38,       369,   369,   449,   438,   450,   452,  2528,  2528,   369,   369,
1170       -38,   -38,  -735,   359,   360,  1822,  1822,   243,   243,   243,       453,   459,   458,   438,   429,    11,  2528,   369,   438,   460,
1171       243,   243,   243,   243,   243,   243,  -735,  -735,   362,   358,       455,   461,    83,   369,   369,   369,   369,   454,  2747,   463,
1172       364,   361,  1822,  1822,   363,  -735,   -38,  -735,   -38,  -735,       469,   456,   462,   457,   464,  2528,  -841,   369,  -841,   467,
1173       -38,  2707,  -735,  -735,   365,   367,   370,   366,    74,   369,       470,   473,  -841,   468,   471,  -841,   472,   465,   478,  2085,
1174       371,  -735,   -38,   -38,   -38,   -38,   -38,   -38,   -38,   -38,      2085,  -841,  -841,   481,   483,   479,   486,   487,   475,   497,
1175       -38,   -38,   -38,   -38,   -38,   -38,   -38,  -735,  2707,  -735,       485,    16,    16,    16,    16,    16,    16,    16,    16,    16,
1176       374,   375,   382,   383,   387,  -735,  -735,   368,  -735,  -735,        16,    16,    16,    16,    16,   238,   238,   238,   238,   238,
1177       385,   388,   378,   380,   384,   386,   389,   331,   392,   393,       238,   238,   238,   238,   488,  -841,  -841,  -841,    16,    16,
1178       267,    37,   267,   267,  2707,   267,  2707,  2707,   267,   267,        16,  -841,   492,    16,    16,   493,  -841,  -841,   494,   495,
1179       267,   267,  2707,  2707,   267,   390,   352,  2707,  2707,   391,      2085,  2085,  -841,  -841,   496,   503,   523,  -841,  -841,   513,
1180       394,   372,   396,  1156,  1378,   395,   267,   154,   267,   400,       528,  -841,    16,  -841,    16,  -841,    16,  2528,  -841,  -841,
1181      -735,   373,   397,   403,   398,   399,   404,   267,   267,   267,      -841,  -841,   535,   533,   540,   531,   110,   538,   539,  -841,
1182       267,   267,   267,   267,   267,   267,   267,   267,  2707,   267,        16,    16,    16,    16,    16,    16,    16,    16,    16,    16,
1183      2707,   267,   405,   406,   412,   418,   416,  -735,   402,   413,        16,    16,    16,    16,    16,    16,   554,    16,  -841,  2528,
1184       417,   376,   423,   425,   427,   424,   419,   420,  -735,   409,      -841,   550,   545,   558,   557,   562,   561,  -841,  -841,   541,
1185       431,   -38,  -735,  -735,  -735,  -735,  -735,  -735,  1822,  2707,      -841,  -841,   556,   564,   560,   499,  1419,  1641,   553,   563,
1186       -38,   -38,   -38,  -735,  1822,  2707,   -38,   377,   429,   -38,       565,   566,   501,   571,   569,   572,   369,   102,   369,   369,
1187      3149,   -38,   379,   434,   432,   421,  -735,  -735,   381,   -38,      2528,   369,  2528,  2528,   369,   369,   369,   369,  2528,   369,
1188      -735,   -38,  -735,   415,   436,   437,   440,   435,   438,   430,       570,   369,  2528,   369,   506,   369,   369,   512,   588,   514,
1189       -38,   -38,   -38,   -38,   -38,   -38,   -38,   -38,   -38,   -38,      2528,  2528,   590,   592,   515,   589,   594,   369,    55,   369,
1190       -38,  3370,   -38,  3591,   -38,   451,   465,   459,   461,   453,       595,  -841,   542,   580,   605,   591,   600,   602,   369,   369,
1191       470,   467,   475,   473,   489,   480,  -735,   482,  -735,  -735,       369,   369,   369,   369,   369,   369,   369,   369,   369,   369,
1192       474,   490,   267,  2707,   267,   267,   267,  2707,   267,   492,      2528,   369,  2528,   369,   603,   369,   610,   604,   612,   618,
1193       512,  2707,  2044,   513,   515,   516,   518,   519,   267,   267,       608,   616,  -841,   623,   609,   621,   619,  -841,  -841,   559,
1194       514,   520,   521,   462,  -735,  -735,   522,   267,   267,  2707,       628,   626,   627,   624,   617,   567,   622,  -841,   611,   629,
1195       267,   267,   228,  2707,   267,   203,  2928,  2928,  2044,  2707,        16,  -841,  -841,  -841,  -841,  -841,  -841,  2085,  2528,    16,
1196      2044,  2707,   466,   526,   527,   469,   538,  -735,   540,  -735,        16,    16,  -841,  2085,    16,  -841,  -841,  2528,    16,   631,
1197       523,   531,   528,   529,   541,   545,  -735,  1822,   -38,  -735,        16,  -841,    16,   632,   575,   639,    16,  2966,    16,   579,
1198       -38,  1822,  -735,   532,   533,  3812,  2707,  2707,   243,   243,       647,   646,   635,   586,    16,  -841,    16,  -841,   587,   650,
1199       565,  -735,  2707,  -735,   113,    12,  -735,   537,   528,   536,       651,   652,   657,   648,   643,    16,    16,    16,    16,    16,
1200       554,   546,  -735,   -38,   542,   548,   491,   556,   561,  -735,        16,    16,    16,    16,    16,    16,    16,  3185,    16,  3404,
1201      -735,   -38,  -735,  -735,  2707,  -735,  -735,  -735,   557,  -735,        16,   661,    16,   649,   663,   658,   656,   601,   606,   666,
1202      -735,  -735,  -735,  2707,   -38,   243,   243,  -735,  -735,  -735,       664,   662,   665,   660,   674,   668,  -841,   667,  -841,   670,
1203      -735,  -735,   565,  4033,   565,  4254,   562,   502,   573,   572,      -841,   675,   669,   369,  2528,   369,   369,   369,  2528,   369,
1204       563,   571,   559,   575,  -735,   560,   558,   577,  2707,  2707,       369,   671,   369,   369,   672,   673,   676,  2528,  2307,   679,
1205      2707,  2707,   564,   567,  2044,  2265,  2486,   163,   176,  2044,       684,   683,   685,   686,   369,   369,   688,   687,   689,   607,
1206       243,   566,   568,   569,   581,   267,   570,   578,   576,   579,      -841,  -841,   692,   369,   369,  2528,   369,    95,   369,   438,
1207      -735,   267,   580,   267,  2044,  2044,   585,    33,   582,   583,      2528,   369,   412,  2747,  2747,  2307,  2528,  2307,  2528,  -841,
1208       584,  -735,   586,   530,   587,  -735,   589,   -38,  2707,  2707,        55,   613,   694,   695,   637,   678,   680,  -841,   707,  -841,
1209       -38,   588,   590,   565,  -735,  -735,   243,   243,  -735,   243,       691,   690,   700,   696,   135,   698,   677,   711,  -841,  2085,
1210       592,   591,   593,   599,  -735,   596,   594,   595,   601,  -735,        16,  -841,    16,  2085,    16,  -841,   697,    16,  -841,  -841,
1211      -735,   -38,   565,   565,   597,   600,   605,   615,   609,   607,       699,   701,   703,  3623,   238,   238,   733,  -841,  2528,  -841,
1212       611,   178,   535,   602,   613,   555,   243,   243,   614,   574,       173,    33,  -841,  -841,   702,   696,   162,   716,   710,  -841,
1213      -735,   624,   616,   603,   618,   619,   228,   627,   620,   636,        16,   708,   202,   681,   723,   728,  -841,  -841,    16,  -841,
1214       628,   630,   631,   632,   626,   639,   641,    99,   653,   635,      -841,  2528,  -841,   731,   725,  -841,  -841,  -841,  -841,  -841,
1215       652,   648,   666,  -735,   655,   110,   656,   657,  -735,  -735,      -841,  -841,  -841,  -841,  2528,    16,   238,   238,  -841,  -841,
1216       659,   663,   658,   660,  -735,   610,   678,   676,   680,    56,      -841,  -841,  -841,   733,  3842,   733,  4061,  -841,   732,   705,
1217       670,   679,   617,   682,   622,   684,   625,   692,   685,   683,       740,   739,   729,   730,   738,   726,   727,   743,  -841,   734,
1218       637,   681,  -735,   687,  -735,   121,   690,   694,   698,   688,       736,   741,   735,   744,  2528,  2528,  2528,  2528,   369,   737,
1219       700,   693,   707,   711,   697,   723,   712,   141,   713,   715,      2528,   754,   758,   759,  2307,   285,   310,  2307,   238,   761,
1220       709,    82,  -735,  -735,   728,    57,   722,   724,   668,   732,       762,   764,   745,   756,   369,   765,   766,   746,   768,  -841,
1221       720,   726,  -735,   738,   740,   746,   743,   745,   749,   747,       369,   752,   772,   369,  2307,  2307,   779,   210,   775,   777,
1222       735,   686,   752,   748,   736,   761,   744,   756,   696,   763,       781,   773,  -841,   778,   782,   722,   780,   783,   792,  -841,
1223       760,   768,   767,   702,   753,   771,   759,   781,   784,   764,       785,    16,  2528,  2528,    16,  -841,   784,    16,   791,   796,
1224       786,   702,    13,   789,   769,   776,   779,   785,   775,   783,       793,   733,   238,   238,  -841,   238,   801,   799,   803,   802,
1225       780,   787,   795,   788,   791,   793,   798,   796,   799,   794,       823,  -841,   809,   806,   776,   204,  -841,   826,   824,    16,
1226       802,   807,   805,   790,   800,   803,   813,   808,   823,   826,       733,   733,   816,   815,   819,   833,   825,   841,   834,   828,
1227       811,  -735,   817,   815,   765,   834,   835,  -735,   839,   815,       829,   175,   789,   830,   842,   832,   835,    55,   840,   843,
1228       829,   843,   777,   846,   833,   836,  -735,  -735,   847,   848,       794,   238,   238,   851,   804,   852,  -841,   850,   855,   807,
1229       837,   838,   840,  -735,   841,   842,   849,   851,   854,   857,       857,   860,   861,  -841,   438,   873,   865,   847,   839,   874,
1230       852,   850,   858,   860,   863,   853,   806,   865,   856,   869,       882,   869,   877,   871,   872,   878,   846,   139,   881,   827,
1231       881,  -735,   853,   871,   818,   885,   878,  -735,   882,   822,       894,   888,    16,   889,   883,   900,   886,   903,   895,  -841,
1232      -735,   884,   877,   830,   886,   892,   822,   890,   889,   903,       891,   158,   896,   893,   902,  -841,  -841,   901,   905,   897,
1233      -735,   893,   910,   894,   908,   912,   911,   917,   918,   909,       904,   845,  -841,   912,   856,   917,   916,   925,    93,   915,
1234       919,   904,   855,   905,   914,   913,   906,   915,  -735,   907,       927,   930,   928,   929,   369,   931,   875,   937,   876,   938,
1235       928,   926,   922,   929,   930,   935,   932,   937,   927,   921,       939,   879,   940,   933,   934,   880,   941,   943,  -841,   935,
1236       920,   923,   931,   933,   924,   934,   940,   939,   945,   947,      -841,   946,   945,   251,   951,   955,   957,   947,   959,   952,
1237      -735,   949,   950,   951,   938,   941,   942,   943,   944,   948,       958,   956,   968,   960,    16,   961,   972,   962,   973,   965,
1238       952,   954,   957,   946,  -735,   962,  -735,   963,   953,   958,       966,   271,   967,   974,   970,    54,  -841,  -841,  -841,   964,
1239      -735,   959,   960,  -735,   956,  -735,  -735,  -735       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      -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,
1272      -735,  -735,  -735,  -583,  -735,  -735,  -735,  -735,  -591,  -453,      -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -841,  -674,
1273      -735,   116,    41,  -735,  -735,  -469,   260,   422,   401,  -734,      -841,  -841,  -841,  -841,  -841,  -793,   124,  -841,   254,   176,
1274       131,  -589,   307,   246,    11,   -10,   -14,   138,  -353,  -735,      -841,  -449,  -626,  -780,    38,  -492,  -826,  -640,  -680,   392,
1275       -13,   961,  -735,  -735,  -735,  -735,  -735,  -735,  -735,  -735,       -55,  -813,   277,  -569,   431,  -840,   -13,   -39,   -14,   307,
1276      -735,  -735,  -735,  -735,  -735,  -735,  -134,   729,   730,   733,      -233,  -437,   -15,  1231,  -841,  -841,  -841,  -841,  -841,  -841,
1277      -206,   721,   731,  -263,  -257,  -256,  -735,   727,  -735,   737,      -841,  -841,  -841,  -841,  -412,  -841,  -841,  -841,  -841,  -841,
1278      -254,  -735,  -735,   739,   551,  -735,   741,  -735,   742,   750,      -841,  -841,  -841,  -206,   994,   997,  1006,  -323,   991,  1007,
1279      -252,  -735,  -735,   604,  -735,  -735,  -735,  -735,  -735,  -735,      -231,  -230,  -227,    21,  -841,  -841,  1009,  -841,  -841,  -841,
1280      -735,  -735,  -735,  -735,   734,  -735,  -735      -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 -141  #define YYTABLE_NINF -181
1291  static const short int yytable[] =  static const yytype_int16 yytable[] =
1292  {  {
1293       267,   269,   565,   270,   271,   272,   273,   274,   275,   276,       275,   273,   276,   277,   278,   279,   280,   281,   282,   283,
1294       277,   278,   279,   280,   281,   671,   403,  -140,   358,   361,       284,   285,   286,   287,   288,   289,   290,   778,   786,   319,
1295       359,   362,   404,   405,   832,    37,   834,   522,   523,   289,       319,   319,   319,   319,   319,   319,   319,   319,   542,   930,
1296       291,    41,    42,    29,    33,   290,  1062,  1013,   292,   537,       755,   372,   959,   388,   391,   647,   389,   392,  -180,   411,
1297        34,    38,   307,   307,   307,   307,   307,   307,   307,   307,       421,   583,   584,   600,   586,   318,   320,   321,   322,   323,
1298       307,   538,     1,  1063,     2,   524,   915,   539,    30,   649,       324,   325,   326,   327,   597,  1288,  1289,   440,   441,   610,
1299       540,    31,   916,   306,   308,   309,   310,   311,   312,   313,       772,   442,   963,   909,   965,     1,  1258,     2,   603,  1258,
1300       314,   315,     3,   650,     4,     5,   388,   389,     6,   423,       423,   352,   577,   942,    33,  1215,  1147,   550,   955,   410,
1301       424,   989,  1026,     7,   388,   448,   424,   390,     8,     9,       416,   587,    43,     3,   449,     4,     5,   426,  1216,     6,
1302        10,   486,    11,   391,   990,  1027,   392,   363,   330,   364,       428,   598,  1217,   347,     7,     8,   611,   405,    44,     9,
1303       331,   391,   332,   613,   392,  1022,   973,   355,   332,   365,        10,    11,   615,    12,   308,   565,   566,   567,   568,   569,
1304       333,   648,   373,   654,   655,   614,   334,    32,  1023,   356,       570,   571,   572,   573,   616,    36,  1167,   943,  1259,   385,
1305       893,   860,  1024,   969,   296,   297,   298,   299,   300,   301,       617,  1266,   748,   618,   423,   424,  1221,   944,   345,  1168,
1306       302,   303,   304,   305,   977,   970,    35,   336,    39,   682,       346,   386,   347,  1270,  1205,   425,   749,   704,   340,  1222,
1307       912,   913,   377,   382,  1004,  1005,   978,   410,   690,   691,       348,   426,   427,    37,   428,    40,   349,   350,   341,   705,
1308       692,   693,   694,   695,   696,   697,   698,   699,   700,   815,      1271,   555,   556,   557,   558,   559,   560,   561,   562,   563,
1309       522,   523,    36,   824,  1017,  1018,   488,   830,   831,   603,       564,  1138,   578,   579,   580,   581,   412,   302,   340,   979,
1310       604,   896,   489,   490,   296,   297,   298,   299,   300,   301,       413,    41,   980,  1139,   747,   303,   753,   754,   414,   998,
1311       302,   303,   304,   305,   897,    40,   264,   296,   297,   298,      1152,  1041,   308,   309,   310,   311,   312,   313,   314,   315,
1312       299,   300,   301,   302,   303,   304,   305,   282,   378,   944,       316,   317,  1153,   393,  1104,   394,  1000,    34,  1105,  1001,
1313       328,   284,   379,   945,   542,   283,   545,   285,   286,   287,        45,  1060,  1061,    35,    38,   395,  1106,   787,  1035,   300,
1314       380,   946,   825,   826,   296,   507,   508,   509,   510,   511,        39,   384,    42,   904,   403,   301,   795,   796,   797,   798,
1315       512,   513,   514,   515,   491,   492,   493,   494,   495,   496,       799,   800,   801,   802,   803,   804,   805,   806,    46,   305,
1316       497,   498,   499,   500,   501,   502,  -140,  -140,  -140,   296,       764,  1063,   766,   539,   540,   306,  1006,  1064,  1091,   975,
1317       507,   508,   509,   510,   511,   512,   513,   514,   515,   818,       270,   975,   552,   553,   539,   540,   554,   308,   309,   310,
1318       288,   293,   294,   776,   296,   297,   298,   299,   300,   301,       311,   312,   313,   314,   315,   316,   317,  -180,  -180,  -180,
1319       302,   303,   304,   305,    41,   887,   411,   409,   890,   802,       292,   603,    47,    48,   620,   291,   624,   623,   466,   467,
1320       328,   412,   413,   414,   415,   416,    -4,    -4,   296,   507,       500,   467,  1191,  1192,   447,   293,   812,   539,   540,   462,
1321       508,   509,   510,   511,   512,   513,   514,   515,   417,   418,       295,   462,   462,   462,   462,   462,   462,   462,   462,    -4,
1322       419,   420,   426,   422,   425,   428,   421,   427,   421,   421,        -4,  1042,  1210,  1211,   308,   309,   310,   311,   312,   313,
1323       421,   421,   421,   421,   421,   421,   443,   449,   451,   450,       314,   315,   316,   317,   961,   962,   656,   657,   435,   443,
1324       442,   456,   455,   457,   464,   465,   467,   468,   466,   473,      1031,   294,   296,  1034,   379,   381,  1043,   297,  1174,   308,
1325       474,   265,   476,   429,   477,   472,   475,   430,   478,   431,       309,   310,   311,   312,   313,   314,   315,   316,   317,   465,
1326       432,   433,   434,   435,   479,   436,   480,   437,   438,   439,       298,   299,   304,    47,   377,   340,   382,   473,   450,   451,
1327       440,   441,   481,   482,   483,   444,   445,   484,   446,   447,       452,   898,   456,   474,   453,   475,   476,   477,   478,   479,
1328       503,   504,   485,   486,   518,   519,   520,   521,   561,   534,      1037,   480,   454,   481,   482,   483,   484,   485,   457,   486,
1329       536,   535,   452,   453,   454,   560,   566,   562,   568,   458,       487,   488,   929,   959,   490,   455,   491,   458,   459,   493,
1330       459,   460,   461,   462,   463,   564,   563,   567,   573,   574,       460,   461,   463,   496,   497,   464,   498,   499,   308,   565,
1331       569,   572,   570,   576,   571,   575,   577,   579,   595,   596,       566,   567,   568,   569,   570,   571,   572,   573,   503,   468,
1332       578,   599,   600,   601,   609,   470,   904,   471,   605,   611,       469,   470,   505,   506,   471,   507,   508,  1112,   472,   489,
1333       632,   602,   610,   327,   615,   634,   616,   612,   635,   633,       492,   512,   513,   514,   515,   516,   517,   518,   495,   494,
1334       636,   639,   640,   637,   638,   641,   642,   646,   909,   647,       501,   504,   502,   509,   510,   511,   519,   520,   945,   956,
1335       643,   685,   645,   644,   710,   667,   672,   686,   673,   678,       957,   308,   565,   566,   567,   568,   569,   570,   571,   572,
1336       705,   688,   516,   517,   675,   683,   689,   707,   687,   708,       573,   526,   521,   522,   527,   523,   524,   528,   529,   531,
1337       706,   709,   712,   668,   714,   553,   554,   555,   556,   559,       530,   533,   534,   542,   532,   535,   271,   308,   565,   566,
1338       715,   711,   716,   717,   720,   719,   721,   718,   730,   734,       567,   568,   569,   570,   571,   572,   573,   574,   538,   536,
1339       744,   735,   736,   674,   684,   741,   742,   713,   729,   743,       537,   544,   543,   545,   548,   549,   599,   547,   546,   582,
1340       733,   746,   737,   745,   580,   581,   582,   583,   584,   585,       576,   585,   588,   550,   589,   594,   576,   576,   595,   576,
1341       586,   587,   588,   589,   590,   591,   592,   593,   594,   762,       596,   613,   612,   614,   592,   593,   636,   641,   642,   576,
1342       763,   764,   597,   598,   765,   767,   768,   307,   307,   307,       648,   646,  1220,   643,   576,   645,   650,   654,   644,   632,
1343       307,   307,   307,   307,   307,   307,   740,   769,   770,   409,       633,   634,   635,   649,   640,   655,   651,   652,   658,   653,
1344       409,   771,   772,   606,   774,   607,   773,   608,   306,   308,       659,   660,  1051,   661,   662,   663,   664,   665,   680,   684,
1345       309,   310,   311,   312,   313,   314,   315,   783,   775,   617,       687,   688,   689,   692,   447,   447,   319,   319,   319,   319,
1346       618,   619,   620,   621,   622,   623,   624,   625,   626,   627,       319,   319,   319,   319,   319,   693,   666,   667,   668,   669,
1347       628,   629,   630,   631,   766,   327,   784,   798,   797,   804,       670,   671,   672,   673,   674,   675,   676,   677,   678,   679,
1348       799,   800,   801,   807,   805,   808,   806,   836,   837,   838,       694,   695,   318,   320,   321,   322,   323,   324,   325,   326,
1349       839,   840,   841,   843,   842,   845,   846,   844,   847,   853,       327,   696,   700,   681,   682,   683,   701,   702,   685,   686,
1350       859,   657,   862,   852,   660,   661,   662,   663,   861,   863,       703,   706,   707,   724,   726,   690,   691,   727,   339,   728,
1351       666,   864,   868,   866,   867,   869,   870,   407,   876,   872,       729,   730,   731,   733,   732,   734,   739,   697,   736,   698,
1352       470,   470,   680,   877,   878,   879,   881,   885,   880,   882,       743,   699,   735,   740,   744,   769,   746,   741,   742,   745,
1353       883,   884,   886,   902,   891,   903,   900,   327,   892,   901,       765,   773,   790,   775,   781,   708,   709,   710,   711,   712,
1354       905,   907,   910,   908,   914,   702,   917,   704,   918,   906,       713,   714,   715,   716,   717,   718,   719,   720,   721,   722,
1355       931,   921,   920,   923,   924,   919,   947,   922,   928,   937,       723,   774,   725,   779,   780,   782,   783,   791,   788,   792,
1356       925,   929,   932,   930,   933,   938,   934,   935,   722,   939,       793,   789,   794,   813,   811,   815,   814,   816,   817,   818,
1357       940,   942,   948,   327,   327,   723,   950,   724,   725,   726,       603,   526,   526,   819,   821,   820,   822,   824,   823,   825,
1358       941,   727,   943,   728,   949,   951,   953,   954,   956,   959,       826,   827,   832,   828,   831,   830,   829,   756,   841,   844,
1359       957,   960,   961,   962,   963,   952,   738,   966,   739,   327,       759,   760,   761,   762,   845,   576,   846,   576,   849,   768,
1360       968,   964,   965,   967,   971,   972,   973,   747,   748,   749,       850,   771,   771,   851,   852,   853,   856,   857,   858,   859,
1361       750,   751,   752,   753,   754,   755,   756,   757,   974,   759,       860,   861,   862,   785,   879,   881,   882,   884,   883,   887,
1362       975,   761,   979,   981,   955,   976,   327,   980,   982,   983,       885,   888,   889,   891,   892,   886,   934,   890,   893,   894,
1363       984,   985,   986,   987,   988,   991,   992,   994,   993,   996,       982,   973,   968,   906,   910,   897,   911,   808,   912,   810,
1364       778,   779,   780,   995,   782,   469,   997,   998,   796,  1006,       895,   576,   924,   896,   925,   926,   927,   928,   972,   932,
1365       999,  1002,   795,  1007,  1000,   680,  1003,  1008,  1001,  1010,       445,   931,   933,   935,   969,   970,   971,   974,   975,   976,
1366      1009,  1011,  1012,   810,   812,  1013,   810,   817,   820,  1014,       977,   981,   983,   978,   989,   833,   991,   993,   997,  1002,
1367       810,   829,   559,   559,   796,   795,   796,  1015,   795,  1021,       992,   999,   834,  1003,   835,   836,   837,  1005,   838,   839,
1368       795,   505,   506,  1020,  1016,  1019,  1025,  1028,  1029,  1030,      1008,  1009,   339,   840,  1011,   842,  1016,   843,  1012,  1018,
1369       531,  1031,  1032,  1034,   848,   849,  1033,   850,   851,  1035,      1019,  1022,  1020,  1021,  1023,  1024,  1025,  1030,  1028,   854,
1370       558,  1036,  1037,  1038,  1039,  1041,  1040,  1042,   307,   307,      1007,   855,  1029,  1026,  1027,  1036,  1057,  1049,  1050,  1054,
1371      1043,  1045,  1046,  1044,   421,  1048,  1047,  1049,  1050,  1051,       863,   864,   865,   866,   867,   868,   869,   870,   871,   872,
1372       865,  1052,  1053,  1054,  1056,  1055,   327,   327,   871,   857,       873,   874,  1038,   876,  1017,   878,  1039,   880,  1040,  1046,
1373       858,  1057,   327,   327,  1058,  1059,  1060,  1065,   327,  1061,      1055,  1047,  1048,  1052,  1058,  1053,  1062,  1065,  1067,   921,
1374      1064,   873,  1066,  1067,  1068,   307,   307,  1069,  1070,  1071,      1066,  1071,  1068,  1074,  1069,  1090,  1070,  1075,  1072,  1073,
1375      1073,  1072,  1076,  1077,  1079,  1078,  1074,  1075,  1080,   407,      1076,   900,   901,   902,  1292,   771,   905,  1078,   908,   908,
1376       407,  1081,  1082,  1083,  1085,  1084,   857,   858,  1087,   327,      1079,  1080,   339,   921,   922,  1083,   921,  1084,   921,  1085,
1377       796,   327,  1088,  1086,   795,   796,  1089,   421,   421,   795,      1086,   785,  1087,  1088,  1089,  1092,  1095,  1093,  1096,   937,
1378       307,  1090,  1091,  1092,  1093,  1095,  1094,   812,  1096,   817,       939,  1097,   937,   576,   949,   951,  1098,   937,   960,   640,
1379       796,   796,  1097,  1098,   795,   795,  1099,  1101,  1100,  1102,       640,   922,  1100,   922,  1099,  1109,  1101,  1102,  1103,  1108,
1380      1103,   899,  1104,  1105,  1111,  1106,  1112,  1109,  1107,  1113,      1110,  1128,  1129,  1137,  1111,   319,   319,   525,  1107,  1113,
1381      1110,  1108,  1114,  1117,  1116,  1118,   307,   307,  1115,   421,      1119,   462,  1114,  1115,   984,   985,  1292,   986,   987,   988,
1382      1124,   531,  1120,   658,   659,  1119,  1123,  1121,   936,   664,      1116,  1118,   990,  1117,  1120,  1122,  1121,   339,   339,  1123,
1383       665,  1122,  1125,  1126,   670,   670,  1128,   926,   927,  1127,      1124,   995,   996,  1126,  1127,  1131,  1130,  1132,  1133,  1134,
1384       469,   469,  1129,  1131,  1130,   327,   421,   421,  1133,   327,      1136,  1135,  1140,  1142,   339,  1004,  1141,   319,   319,  1143,
1385      1132,  1134,   820,   327,  1135,  1136,  1137,  1138,  1139,  1140,      1145,  1146,  1147,  1010,  1148,  1149,  1150,   590,   591,  1151,
1386       327,  1141,  1143,  1144,  1142,   701,  1145,   703,  1146,  1147,      1154,  1155,  1156,  1157,  1161,  1162,  1159,   607,  1158,  1164,
1387      1149,  1148,  1150,  1152,  1155,  1157,  1151,  1153,  1156,  1158,      1013,  1165,  1160,   995,   996,  1163,   339,  1166,  1169,   639,
1388      1159,  1160,   327,  1154,  1161,  1162,  1163,  1164,  1165,  1167,      1170,  1171,  1173,  1172,  1175,   921,   462,   462,   921,   319,
1389      1166,   327,  1168,  1169,  1172,  1174,  1171,  1173,  1175,  1170,      1177,  1179,  1180,  1182,  1176,  1178,  1183,  1189,  1181,  1185,
1390      1176,   327,  1177,   327,  1178,  1179,  1180,   958,  1181,  1188,       445,   445,  1188,  1184,   908,   921,   921,  1190,  1193,  1186,
1391      1183,  1184,  1189,  1182,  1185,  1190,  1186,  1191,  1192,   911,       922,  1187,  1194,   922,  1195,  1045,  1197,  1196,  1198,  1200,
1392       898,  1193,  1187,   327,   327,  1197,  1194,  1195,  1196,   803,      1199,  1201,  1202,  1204,  1205,  1207,   939,  1218,  1209,   949,
1393       401,   828,   376,   367,   368,   295,   656,   369,   681,   543,       922,   922,  1206,   319,   319,  1208,   462,  1212,  1214,  1219,
1394       402,   370,     0,   406,     0,   371,   384,     0,     0,   386,      1213,  1223,  1224,  1225,  1226,  1227,  1230,  1228,  1234,  1229,
1395         0,     0,     0,     0,   372,     0,   327,   327,     0,     0,      1231,  1233,  1077,  1235,  1236,  1237,  1238,  1240,  1239,  1081,
1396       777,     0,     0,     0,   781,     0,     0,     0,   785,     0,      1082,  1242,  1241,  1243,  1244,  1246,  1245,  1248,  1247,  1249,
1397         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,      1250,  1251,   462,   462,  1094,  1253,  1254,  1255,  1256,  1260,
1398         0,     0,     0,     0,     0,     0,   814,     0,     0,     0,      1258,  1262,  1252,  1263,  1265,  1264,  1267,  1269,  1257,  1272,
1399       823,     0,   546,   558,   558,     0,   833,     0,   835,     0,      1273,  1268,  1274,  1275,   339,   339,  1276,  1279,  1278,  1283,
1400         0,     0,     0,     0,     0,     0,     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,   855,   856,     0,     0,     0,     0,     0,      1302,  1303,  1304,  1306,  1305,  1308,  1307,  1144,  1310,  1311,
1403        1309,   607,  1312,   757,   758,  1313,  1318,  1315,  1314,   763,
1404        1319,  1316,  1317,   767,   339,  1321,   339,  1322,  1320,  1324,
1405        1325,   777,   777,  1326,  1327,  1330,  1328,  1331,  1332,  1333,
1406         785,  1334,  1335,  1336,  1056,  1346,  1339,  1347,  1337,  1340,
1407        1338,  1329,  1342,  1344,  1341,  1343,  1349,  1348,  1350,  1351,
1408        1352,   807,  1353,   809,  1354,  1358,  1355,  1356,  1360,  1203,
1409        1357,  1361,  1359,  1363,   921,  1362,  1366,  1364,  1368,  1365,
1410        1369,  1370,  1373,  1367,  1371,  1374,  1375,  1372,  1376,  1377,
1411        1378,  1379,  1380,  1382,  1384,  1383,  1381,  1387,  1386,   960,
1412        1385,  1391,  1388,  1389,  1392,  1390,  1394,  1393,  1400,  1395,
1413        1397,  1398,  1405,  1406,  1450,  1396,   339,  1407,  1408,  1399,
1414         339,  1401,  1402,  1403,  1404,  1409,  1410,  1261,  1411,  1412,
1415         339,  1413,  1414,  1416,  1415,   339,  1417,  1418,  1420,  1421,
1416        1419,  1425,  1422,  1424,  1423,  1427,  1426,  1428,  1431,  1432,
1417        1433,  1232,  1429,  1430,  1435,  1434,  1436,  1437,   339,  1438,
1418        1442,  1439,  1443,  1445,  1440,  1446,  1447,  1441,  1444,  1453,
1419        1448,   339,  1449,  1454,  1451,   899,  1452,  1059,  1345,   903,
1420        1125,   339,   967,   339,  1044,  1323,   418,   397,   913,   438,
1421         398,   307,   621,   625,     0,     0,     0,     0,     0,   399,
1422           0,     0,     0,   408,     0,   439,   941,     0,   420,   400,
1423           0,   954,     0,     0,   639,   639,   444,   964,     0,   966,
1424           0,     0,     0,   401,     0,     0,     0,   402,     0,     0,
1425         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1426           0,     0,     0,     0,     0,     0,   404,     0,     0,   339,
1427         339,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1428         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1429         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1430         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1431         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1432         0,     0,     0,     0,     0,   670,   888,   889,   670,   316,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1433        46,    47,   676,     0,    48,    49,    50,   317,   318,   319,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1434       320,   321,   322,   323,   324,   325,   326,    61,    62,    63,         0,     0,     0,     0,     0,   777,  1032,  1033,   777,     0,
1435        64,    65,    66,    67,    68,    69,    70,    71,    72,    73,         0,   607,   328,    52,    53,    54,    55,    56,   329,   330,
1436        74,    75,    76,    77,    78,    79,    80,    81,    82,    83,       331,   332,   333,   334,   335,   336,   337,   338,    67,    68,
1437        84,    85,    86,    87,    88,    89,    90,    91,    92,    93,        69,    70,    71,    72,    73,    74,    75,    76,    77,    78,
1438        94,    95,    96,    97,    98,    99,   100,   101,   102,   103,        79,    80,    81,    82,    83,    84,    85,    86,    87,    88,
1439       104,   105,   106,   107,   108,   109,   110,   111,   112,   113,        89,    90,    91,    92,    93,    94,    95,    96,    97,    98,
1440       114,   115,   116,   117,   118,   119,   120,   121,   122,   123,        99,   100,   101,   102,   103,   104,   105,   106,   107,   108,
1441       124,   125,   126,   127,   128,   129,   130,   131,   132,   133,       109,   110,   111,   112,   113,   114,   115,   116,   117,   118,
1442       134,   135,   136,   137,   138,   139,   140,   141,   142,   143,       119,   120,   121,   122,   123,   124,   125,   126,   127,   128,
1443       144,   145,   146,   147,   148,   149,   150,   151,   152,   153,       129,   130,   131,   132,   133,   134,   135,   136,   137,   138,
1444       154,   155,   156,   157,   158,   159,   160,   161,   162,   163,       139,   140,   141,   142,   143,   144,   145,   146,   147,   148,
1445       164,   165,   166,   167,   168,   169,   170,   171,   172,   173,       149,   150,   151,   152,   153,   154,   155,   156,   157,   158,
1446       174,   175,   176,   177,   178,   179,   180,   181,   182,   183,       159,   160,   161,   162,   163,   164,   165,   166,   167,   168,
1447       184,   185,   186,   187,   188,   189,   190,   191,   192,   193,       169,   170,   171,   172,   173,   174,   175,   176,   177,   178,
1448       194,   195,   196,   197,   198,   199,   200,   201,   202,   203,       179,   180,   181,   182,   183,   184,   185,   186,   187,   188,
1449       204,   205,   206,   207,   208,   209,   210,   211,   212,   213,       189,   190,   191,   192,   193,   194,   195,   196,   197,   198,
1450       214,   215,   216,   217,   218,   219,   220,   221,   222,   223,       199,   200,   201,   202,   203,   204,   205,   206,   207,   208,
1451       224,   225,   226,   227,   228,   229,   230,   231,   232,   233,       209,   210,   211,   212,   213,   214,   215,   216,   217,   218,
1452       234,   235,   236,   237,   238,   239,   240,   241,   242,   243,       219,   220,   221,   222,   223,   224,   225,   226,   227,   228,
1453       244,   245,   246,   247,   248,   249,   250,   251,   252,   253,       229,   230,   231,   232,   233,   234,   235,   236,   237,   238,
1454       254,   255,   256,   257,   258,   259,   260,   261,   262,   263,       239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
1455       264,   316,    46,    47,     0,   677,    48,    49,    50,   317,       249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
1456       318,   319,   320,   321,   322,   323,   324,   325,   326,    61,       259,   260,   261,   262,   263,   264,   265,   266,   267,   268,
1457        62,    63,    64,    65,    66,    67,    68,    69,    70,    71,       269,   737,     0,   270,   328,    52,    53,    54,    55,    56,
1458        72,    73,    74,    75,    76,    77,    78,    79,    80,    81,       329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
1459        82,    83,    84,    85,    86,    87,    88,    89,    90,    91,        67,    68,    69,    70,    71,    72,    73,    74,    75,    76,
1460        92,    93,    94,    95,    96,    97,    98,    99,   100,   101,        77,    78,    79,    80,    81,    82,    83,    84,    85,    86,
1461       102,   103,   104,   105,   106,   107,   108,   109,   110,   111,        87,    88,    89,    90,    91,    92,    93,    94,    95,    96,
1462       112,   113,   114,   115,   116,   117,   118,   119,   120,   121,        97,    98,    99,   100,   101,   102,   103,   104,   105,   106,
1463       122,   123,   124,   125,   126,   127,   128,   129,   130,   131,       107,   108,   109,   110,   111,   112,   113,   114,   115,   116,
1464       132,   133,   134,   135,   136,   137,   138,   139,   140,   141,       117,   118,   119,   120,   121,   122,   123,   124,   125,   126,
1465       142,   143,   144,   145,   146,   147,   148,   149,   150,   151,       127,   128,   129,   130,   131,   132,   133,   134,   135,   136,
1466       152,   153,   154,   155,   156,   157,   158,   159,   160,   161,       137,   138,   139,   140,   141,   142,   143,   144,   145,   146,
1467       162,   163,   164,   165,   166,   167,   168,   169,   170,   171,       147,   148,   149,   150,   151,   152,   153,   154,   155,   156,
1468       172,   173,   174,   175,   176,   177,   178,   179,   180,   181,       157,   158,   159,   160,   161,   162,   163,   164,   165,   166,
1469       182,   183,   184,   185,   186,   187,   188,   189,   190,   191,       167,   168,   169,   170,   171,   172,   173,   174,   175,   176,
1470       192,   193,   194,   195,   196,   197,   198,   199,   200,   201,       177,   178,   179,   180,   181,   182,   183,   184,   185,   186,
1471       202,   203,   204,   205,   206,   207,   208,   209,   210,   211,       187,   188,   189,   190,   191,   192,   193,   194,   195,   196,
1472       212,   213,   214,   215,   216,   217,   218,   219,   220,   221,       197,   198,   199,   200,   201,   202,   203,   204,   205,   206,
1473       222,   223,   224,   225,   226,   227,   228,   229,   230,   231,       207,   208,   209,   210,   211,   212,   213,   214,   215,   216,
1474       232,   233,   234,   235,   236,   237,   238,   239,   240,   241,       217,   218,   219,   220,   221,   222,   223,   224,   225,   226,
1475       242,   243,   244,   245,   246,   247,   248,   249,   250,   251,       227,   228,   229,   230,   231,   232,   233,   234,   235,   236,
1476       252,   253,   254,   255,   256,   257,   258,   259,   260,   261,       237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
1477       262,   263,   264,    45,    46,    47,     0,     0,    48,    49,       247,   248,   249,   250,   251,   252,   253,   254,   255,   256,
1478        50,    51,    52,    53,    54,    55,    56,    57,    58,    59,       257,   258,   259,   260,   261,   262,   263,   264,   265,   266,
1479        60,    61,    62,    63,    64,    65,    66,    67,    68,    69,       267,   268,   269,     0,   738,   270,    51,    52,    53,    54,
1480        70,    71,    72,    73,    74,    75,    76,    77,    78,    79,        55,    56,    57,    58,    59,    60,    61,    62,    63,    64,
       80,    81,    82,    83,    84,    85,    86,    87,    88,    89,  
       90,    91,    92,    93,    94,    95,    96,    97,    98,    99,  
      100,   101,   102,   103,   104,   105,   106,   107,   108,   109,  
      110,   111,   112,   113,   114,   115,   116,   117,   118,   119,  
      120,   121,   122,   123,   124,   125,   126,   127,   128,   129,  
      130,   131,   132,   133,   134,   135,   136,   137,   138,   139,  
      140,   141,   142,   143,   144,   145,   146,   147,   148,   149,  
      150,   151,   152,   153,   154,   155,   156,   157,   158,   159,  
      160,   161,   162,   163,   164,   165,   166,   167,   168,   169,  
      170,   171,   172,   173,   174,   175,   176,   177,   178,   179,  
      180,   181,   182,   183,   184,   185,   186,   187,   188,   189,  
      190,   191,   192,   193,   194,   195,   196,   197,   198,   199,  
      200,   201,   202,   203,   204,   205,   206,   207,   208,   209,  
      210,   211,   212,   213,   214,   215,   216,   217,   218,   219,  
      220,   221,   222,   223,   224,   225,   226,   227,   228,   229,  
      230,   231,   232,   233,   234,   235,   236,   237,   238,   239,  
      240,   241,   242,   243,   244,   245,   246,   247,   248,   249,  
      250,   251,   252,   253,   254,   255,   256,   257,   258,   259,  
      260,   261,   262,   263,   264,   316,    46,    47,     0,     0,  
       48,    49,    50,   317,   318,   319,   320,   321,   322,   323,  
      324,   325,   326,    61,    62,    63,    64,    65,    66,    67,  
       68,    69,    70,    71,    72,    73,    74,    75,    76,    77,  
       78,    79,    80,    81,    82,    83,    84,    85,    86,    87,  
       88,    89,    90,    91,    92,    93,    94,    95,    96,    97,  
       98,    99,   100,   101,   102,   103,   104,   105,   106,   107,  
      108,   109,   110,   111,   112,   113,   114,   115,   116,   117,  
      118,   119,   120,   121,   122,   123,   124,   125,   126,   127,  
      128,   129,   130,   131,   132,   133,   134,   135,   136,   137,  
      138,   139,   140,   141,   142,   143,   144,   145,   146,   147,  
      148,   149,   150,   151,   152,   153,   154,   155,   156,   157,  
      158,   159,   160,   161,   162,   163,   164,   165,   166,   167,  
      168,   169,   170,   171,   172,   173,   174,   175,   176,   177,  
      178,   179,   180,   181,   182,   183,   184,   185,   186,   187,  
      188,   189,   190,   191,   192,   193,   194,   195,   196,   197,  
      198,   199,   200,   201,   202,   203,   204,   205,   206,   207,  
      208,   209,   210,   211,   212,   213,   214,   215,   216,   217,  
      218,   219,   220,   221,   222,   223,   224,   225,   226,   227,  
      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,  
      238,   239,   240,   241,   242,   243,   244,   245,   246,   247,  
      248,   249,   250,   251,   252,   253,   254,   255,   256,   257,  
      258,   259,   260,   261,   262,   263,   264,   316,    46,    47,  
      786,   787,    48,   788,   789,    51,    52,    53,    54,    55,  
       56,    57,    58,    59,    60,    61,    62,    63,    64,    65,  
       66,    67,    68,    69,    70,    71,    72,    73,    74,    75,  
       76,    77,    78,    79,    80,    81,    82,    83,    84,    85,  
       86,    87,    88,    89,    90,    91,    92,    93,    94,    95,  
       96,    97,    98,    99,   100,   101,   102,   103,   104,   105,  
      106,   107,   108,   109,   110,   111,   112,   113,   114,   115,  
      116,   117,   118,   119,   120,   121,   122,   123,   124,   125,  
      126,   127,   128,   129,   130,   131,   132,   133,   134,   135,  
      136,   137,   138,   139,   140,   141,   142,   143,   144,   145,  
      146,   147,   148,   149,   150,   151,   152,   153,   154,   155,  
      156,   157,   158,   159,   160,   161,   162,   163,   164,   165,  
      166,   167,   168,   169,   170,   171,   172,   173,   174,   175,  
      176,   177,   178,   179,   180,   181,   182,   183,   184,   185,  
      186,   187,   188,   189,   190,   191,   192,   193,   194,   195,  
      196,   197,   198,   199,   200,   201,   202,   203,   204,   205,  
      206,   207,   208,   209,   210,   211,   212,   213,   214,   215,  
      216,   217,   218,   219,   220,   221,   222,   223,   224,   225,  
      226,   227,   228,   229,   230,   231,   232,   233,   234,   235,  
      236,   237,   238,   239,   240,   241,   242,   243,   244,   245,  
      246,   247,   248,   249,   250,   251,   252,   253,   254,   255,  
      256,   257,   258,   259,   260,   261,   262,   263,   316,    46,  
       47,   894,     0,    48,    49,    50,   317,   318,   319,   320,  
      321,   322,   323,   324,   325,   326,    61,    62,    63,    64,  
1481        65,    66,    67,    68,    69,    70,    71,    72,    73,    74,        65,    66,    67,    68,    69,    70,    71,    72,    73,    74,
1482        75,    76,    77,    78,    79,    80,    81,    82,    83,    84,        75,    76,    77,    78,    79,    80,    81,    82,    83,    84,
1483        85,    86,    87,    88,    89,    90,    91,    92,    93,    94,        85,    86,    87,    88,    89,    90,    91,    92,    93,    94,
# Line 1283  static const short int yytable[] = Line 1497  static const short int yytable[] =
1497       225,   226,   227,   228,   229,   230,   231,   232,   233,   234,       225,   226,   227,   228,   229,   230,   231,   232,   233,   234,
1498       235,   236,   237,   238,   239,   240,   241,   242,   243,   244,       235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
1499       245,   246,   247,   248,   249,   250,   251,   252,   253,   254,       245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
1500       255,   256,   257,   258,   259,   260,   261,   262,   263,   316,       255,   256,   257,   258,   259,   260,   261,   262,   263,   264,
1501        46,    47,     0,   895,    48,    49,    50,   317,   318,   319,       265,   266,   267,   268,   269,     0,     0,   270,   328,    52,
1502       320,   321,   322,   323,   324,   325,   326,    61,    62,    63,        53,    54,    55,    56,   329,   330,   331,   332,   333,   334,
1503        64,    65,    66,    67,    68,    69,    70,    71,    72,    73,       335,   336,   337,   338,    67,    68,    69,    70,    71,    72,
       74,    75,    76,    77,    78,    79,    80,    81,    82,    83,  
       84,    85,    86,    87,    88,    89,    90,    91,    92,    93,  
       94,    95,    96,    97,    98,    99,   100,   101,   102,   103,  
      104,   105,   106,   107,   108,   109,   110,   111,   112,   113,  
      114,   115,   116,   117,   118,   119,   120,   121,   122,   123,  
      124,   125,   126,   127,   128,   129,   130,   131,   132,   133,  
      134,   135,   136,   137,   138,   139,   140,   141,   142,   143,  
      144,   145,   146,   147,   148,   149,   150,   151,   152,   153,  
      154,   155,   156,   157,   158,   159,   160,   161,   162,   163,  
      164,   165,   166,   167,   168,   169,   170,   171,   172,   173,  
      174,   175,   176,   177,   178,   179,   180,   181,   182,   183,  
      184,   185,   186,   187,   188,   189,   190,   191,   192,   193,  
      194,   195,   196,   197,   198,   199,   200,   201,   202,   203,  
      204,   205,   206,   207,   208,   209,   210,   211,   212,   213,  
      214,   215,   216,   217,   218,   219,   220,   221,   222,   223,  
      224,   225,   226,   227,   228,   229,   230,   231,   232,   233,  
      234,   235,   236,   237,   238,   239,   240,   241,   242,   243,  
      244,   245,   246,   247,   248,   249,   250,   251,   252,   253,  
      254,   255,   256,   257,   258,   259,   260,   261,   262,   263,  
      316,    46,    47,     0,     0,    48,    49,    50,   317,   318,  
      319,   320,   321,   322,   323,   324,   325,   326,    61,    62,  
       63,    64,    65,    66,    67,    68,    69,    70,    71,    72,  
1504        73,    74,    75,    76,    77,    78,    79,    80,    81,    82,        73,    74,    75,    76,    77,    78,    79,    80,    81,    82,
1505        83,    84,    85,    86,    87,    88,    89,    90,    91,    92,        83,    84,    85,    86,    87,    88,    89,    90,    91,    92,
1506        93,    94,    95,    96,    97,    98,    99,   100,   101,   102,        93,    94,    95,    96,    97,    98,    99,   100,   101,   102,
# Line 1328  static const short int yytable[] = Line 1520  static const short int yytable[] =
1520       233,   234,   235,   236,   237,   238,   239,   240,   241,   242,       233,   234,   235,   236,   237,   238,   239,   240,   241,   242,
1521       243,   244,   245,   246,   247,   248,   249,   250,   251,   252,       243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
1522       253,   254,   255,   256,   257,   258,   259,   260,   261,   262,       253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
1523       263,   316,    46,    47,     0,     0,    48,    49,    50,    51,       263,   264,   265,   266,   267,   268,   269,     0,     0,   270,
1524        52,    53,    54,    55,    56,    57,    58,    59,    60,    61,       328,    52,    53,    54,   914,   915,    57,    58,    59,    60,
       62,    63,    64,    65,    66,    67,    68,    69,    70,    71,  
       72,    73,    74,    75,    76,    77,    78,    79,    80,    81,  
       82,    83,    84,    85,    86,    87,    88,    89,    90,    91,  
       92,    93,    94,    95,    96,    97,    98,    99,   100,   101,  
      102,   103,   104,   105,   106,   107,   108,   109,   110,   111,  
      112,   113,   114,   115,   116,   117,   118,   119,   120,   121,  
      122,   123,   124,   125,   126,   127,   128,   129,   130,   131,  
      132,   133,   134,   135,   136,   137,   138,   139,   140,   141,  
      142,   143,   144,   145,   146,   147,   148,   149,   150,   151,  
      152,   153,   154,   155,   156,   157,   158,   159,   160,   161,  
      162,   163,   164,   165,   166,   167,   168,   169,   170,   171,  
      172,   173,   174,   175,   176,   177,   178,   179,   180,   181,  
      182,   183,   184,   185,   186,   187,   188,   189,   190,   191,  
      192,   193,   194,   195,   196,   197,   198,   199,   200,   201,  
      202,   203,   204,   205,   206,   207,   208,   209,   210,   211,  
      212,   213,   214,   215,   216,   217,   218,   219,   220,   221,  
      222,   223,   224,   225,   226,   227,   228,   229,   230,   231,  
      232,   233,   234,   235,   236,   237,   238,   239,   240,   241,  
      242,   243,   244,   245,   246,   247,   248,   249,   250,   251,  
      252,   253,   254,   255,   256,   257,   258,   259,   260,   261,  
      262,   263,   316,   732,    47,     0,     0,    48,    49,    50,  
      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,  
1525        61,    62,    63,    64,    65,    66,    67,    68,    69,    70,        61,    62,    63,    64,    65,    66,    67,    68,    69,    70,
1526        71,    72,    73,    74,    75,    76,    77,    78,    79,    80,        71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
1527        81,    82,    83,    84,    85,    86,    87,    88,    89,    90,        81,    82,    83,    84,    85,    86,    87,    88,    89,    90,
# Line 1372  static const short int yytable[] = Line 1542  static const short int yytable[] =
1542       231,   232,   233,   234,   235,   236,   237,   238,   239,   240,       231,   232,   233,   234,   235,   236,   237,   238,   239,   240,
1543       241,   242,   243,   244,   245,   246,   247,   248,   249,   250,       241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
1544       251,   252,   253,   254,   255,   256,   257,   258,   259,   260,       251,   252,   253,   254,   255,   256,   257,   258,   259,   260,
1545       261,   262,   263,   316,   758,    47,     0,     0,    48,    49,       261,   262,   263,   264,   265,   266,   267,   268,   269,   539,
1546        50,   317,   318,   319,   320,   321,   322,   323,   324,   325,       540,   328,    52,    53,    54,    55,    56,   329,   330,   331,
1547       326,    61,    62,    63,    64,    65,    66,    67,    68,    69,       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 1394  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,   760,    47,     0,     0,    48,       260,   261,   262,   263,   264,   265,   266,   267,   268,   269,
1568        49,    50,   317,   318,   319,   320,   321,   322,   323,   324,       328,    52,    53,    54,    55,    56,    57,    58,    59,    60,
1569       325,   326,    61,    62,    63,    64,    65,    66,    67,    68,        61,    62,    63,    64,    65,    66,    67,    68,    69,    70,
1570          71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
1571          81,    82,    83,    84,    85,    86,    87,    88,    89,    90,
1572          91,    92,    93,    94,    95,    96,    97,    98,    99,   100,
1573         101,   102,   103,   104,   105,   106,   107,   108,   109,   110,
1574         111,   112,   113,   114,   115,   116,   117,   118,   119,   120,
1575         121,   122,   123,   124,   125,   126,   127,   128,   129,   130,
1576         131,   132,   133,   134,   135,   136,   137,   138,   139,   140,
1577         141,   142,   143,   144,   145,   146,   147,   148,   149,   150,
1578         151,   152,   153,   154,   155,   156,   157,   158,   159,   160,
1579         161,   162,   163,   164,   165,   166,   167,   168,   169,   170,
1580         171,   172,   173,   174,   175,   176,   177,   178,   179,   180,
1581         181,   182,   183,   184,   185,   186,   187,   188,   189,   190,
1582         191,   192,   193,   194,   195,   196,   197,   198,   199,   200,
1583         201,   202,   203,   204,   205,   206,   207,   208,   209,   210,
1584         211,   212,   213,   214,   215,   216,   217,   218,   219,   220,
1585         221,   222,   223,   224,   225,   226,   227,   228,   229,   230,
1586         231,   232,   233,   234,   235,   236,   237,   238,   239,   240,
1587         241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
1588         251,   252,   253,   254,   255,   256,   257,   258,   259,   260,
1589         261,   262,   263,   264,   265,   266,   267,   268,   269,   328,
1590         848,    53,    54,    55,    56,   329,   330,   331,   332,   333,
1591         334,   335,   336,   337,   338,    67,    68,    69,    70,    71,
1592          72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
1593          82,    83,    84,    85,    86,    87,    88,    89,    90,    91,
1594          92,    93,    94,    95,    96,    97,    98,    99,   100,   101,
1595         102,   103,   104,   105,   106,   107,   108,   109,   110,   111,
1596         112,   113,   114,   115,   116,   117,   118,   119,   120,   121,
1597         122,   123,   124,   125,   126,   127,   128,   129,   130,   131,
1598         132,   133,   134,   135,   136,   137,   138,   139,   140,   141,
1599         142,   143,   144,   145,   146,   147,   148,   149,   150,   151,
1600         152,   153,   154,   155,   156,   157,   158,   159,   160,   161,
1601         162,   163,   164,   165,   166,   167,   168,   169,   170,   171,
1602         172,   173,   174,   175,   176,   177,   178,   179,   180,   181,
1603         182,   183,   184,   185,   186,   187,   188,   189,   190,   191,
1604         192,   193,   194,   195,   196,   197,   198,   199,   200,   201,
1605         202,   203,   204,   205,   206,   207,   208,   209,   210,   211,
1606         212,   213,   214,   215,   216,   217,   218,   219,   220,   221,
1607         222,   223,   224,   225,   226,   227,   228,   229,   230,   231,
1608         232,   233,   234,   235,   236,   237,   238,   239,   240,   241,
1609         242,   243,   244,   245,   246,   247,   248,   249,   250,   251,
1610         252,   253,   254,   255,   256,   257,   258,   259,   260,   261,
1611         262,   263,   264,   265,   266,   267,   268,   269,   328,   875,
1612          53,    54,    55,    56,   329,   330,   331,   332,   333,   334,
1613         335,   336,   337,   338,    67,    68,    69,    70,    71,    72,
1614          73,    74,    75,    76,    77,    78,    79,    80,    81,    82,
1615          83,    84,    85,    86,    87,    88,    89,    90,    91,    92,
1616          93,    94,    95,    96,    97,    98,    99,   100,   101,   102,
1617         103,   104,   105,   106,   107,   108,   109,   110,   111,   112,
1618         113,   114,   115,   116,   117,   118,   119,   120,   121,   122,
1619         123,   124,   125,   126,   127,   128,   129,   130,   131,   132,
1620         133,   134,   135,   136,   137,   138,   139,   140,   141,   142,
1621         143,   144,   145,   146,   147,   148,   149,   150,   151,   152,
1622         153,   154,   155,   156,   157,   158,   159,   160,   161,   162,
1623         163,   164,   165,   166,   167,   168,   169,   170,   171,   172,
1624         173,   174,   175,   176,   177,   178,   179,   180,   181,   182,
1625         183,   184,   185,   186,   187,   188,   189,   190,   191,   192,
1626         193,   194,   195,   196,   197,   198,   199,   200,   201,   202,
1627         203,   204,   205,   206,   207,   208,   209,   210,   211,   212,
1628         213,   214,   215,   216,   217,   218,   219,   220,   221,   222,
1629         223,   224,   225,   226,   227,   228,   229,   230,   231,   232,
1630         233,   234,   235,   236,   237,   238,   239,   240,   241,   242,
1631         243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
1632         253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
1633         263,   264,   265,   266,   267,   268,   269,   328,   877,    53,
1634          54,    55,    56,   329,   330,   331,   332,   333,   334,   335,
1635         336,   337,   338,    67,    68,    69,    70,    71,    72,    73,
1636          74,    75,    76,    77,    78,    79,    80,    81,    82,    83,
1637          84,    85,    86,    87,    88,    89,    90,    91,    92,    93,
1638          94,    95,    96,    97,    98,    99,   100,   101,   102,   103,
1639         104,   105,   106,   107,   108,   109,   110,   111,   112,   113,
1640         114,   115,   116,   117,   118,   119,   120,   121,   122,   123,
1641         124,   125,   126,   127,   128,   129,   130,   131,   132,   133,
1642         134,   135,   136,   137,   138,   139,   140,   141,   142,   143,
1643         144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
1644         154,   155,   156,   157,   158,   159,   160,   161,   162,   163,
1645         164,   165,   166,   167,   168,   169,   170,   171,   172,   173,
1646         174,   175,   176,   177,   178,   179,   180,   181,   182,   183,
1647         184,   185,   186,   187,   188,   189,   190,   191,   192,   193,
1648         194,   195,   196,   197,   198,   199,   200,   201,   202,   203,
1649         204,   205,   206,   207,   208,   209,   210,   211,   212,   213,
1650         214,   215,   216,   217,   218,   219,   220,   221,   222,   223,
1651         224,   225,   226,   227,   228,   229,   230,   231,   232,   233,
1652         234,   235,   236,   237,   238,   239,   240,   241,   242,   243,
1653         244,   245,   246,   247,   248,   249,   250,   251,   252,   253,
1654         254,   255,   256,   257,   258,   259,   260,   261,   262,   263,
1655         264,   265,   266,   267,   268,   269,   328,   994,    53,    54,
1656          55,    56,   329,   330,   331,   332,   333,   334,   335,   336,
1657         337,   338,    67,    68,    69,    70,    71,    72,    73,    74,
1658          75,    76,    77,    78,    79,    80,    81,    82,    83,    84,
1659          85,    86,    87,    88,    89,    90,    91,    92,    93,    94,
1660          95,    96,    97,    98,    99,   100,   101,   102,   103,   104,
1661         105,   106,   107,   108,   109,   110,   111,   112,   113,   114,
1662         115,   116,   117,   118,   119,   120,   121,   122,   123,   124,
1663         125,   126,   127,   128,   129,   130,   131,   132,   133,   134,
1664         135,   136,   137,   138,   139,   140,   141,   142,   143,   144,
1665         145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
1666         155,   156,   157,   158,   159,   160,   161,   162,   163,   164,
1667         165,   166,   167,   168,   169,   170,   171,   172,   173,   174,
1668         175,   176,   177,   178,   179,   180,   181,   182,   183,   184,
1669         185,   186,   187,   188,   189,   190,   191,   192,   193,   194,
1670         195,   196,   197,   198,   199,   200,   201,   202,   203,   204,
1671         205,   206,   207,   208,   209,   210,   211,   212,   213,   214,
1672         215,   216,   217,   218,   219,   220,   221,   222,   223,   224,
1673         225,   226,   227,   228,   229,   230,   231,   232,   233,   234,
1674         235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
1675         245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
1676         255,   256,   257,   258,   259,   260,   261,   262,   263,   264,
1677         265,   266,   267,   268,   269,   328,  1014,    53,    54,    55,
1678          56,   329,   330,   331,   332,   333,   334,   335,   336,   337,
1679         338,    67,    68,    69,    70,    71,    72,    73,    74,    75,
1680          76,    77,    78,    79,    80,    81,    82,    83,    84,    85,
1681          86,    87,    88,    89,    90,    91,    92,    93,    94,    95,
1682          96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
1683         106,   107,   108,   109,   110,   111,   112,   113,   114,   115,
1684         116,   117,   118,   119,   120,   121,   122,   123,   124,   125,
1685         126,   127,   128,   129,   130,   131,   132,   133,   134,   135,
1686         136,   137,   138,   139,   140,   141,   142,   143,   144,   145,
1687         146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
1688         156,   157,   158,   159,   160,   161,   162,   163,   164,   165,
1689         166,   167,   168,   169,   170,   171,   172,   173,   174,   175,
1690         176,   177,   178,   179,   180,   181,   182,   183,   184,   185,
1691         186,   187,   188,   189,   190,   191,   192,   193,   194,   195,
1692         196,   197,   198,   199,   200,   201,   202,   203,   204,   205,
1693         206,   207,   208,   209,   210,   211,   212,   213,   214,   215,
1694         216,   217,   218,   219,   220,   221,   222,   223,   224,   225,
1695         226,   227,   228,   229,   230,   231,   232,   233,   234,   235,
1696         236,   237,   238,   239,   240,   241,   242,   243,   244,   245,
1697         246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
1698         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,
1701          67,    68,    69,    70,    71,    72,    73,    74,    75,    76,
1702          77,    78,    79,    80,    81,    82,    83,    84,    85,    86,
1703          87,    88,    89,    90,    91,    92,    93,    94,    95,    96,
1704          97,    98,    99,   100,   101,   102,   103,   104,   105,   106,
1705         107,   108,   109,   110,   111,   112,   113,   114,   115,   116,
1706         117,   118,   119,   120,   121,   122,   123,   124,   125,   126,
1707         127,   128,   129,   130,   131,   132,   133,   134,   135,   136,
1708         137,   138,   139,   140,   141,   142,   143,   144,   145,   146,
1709         147,   148,   149,   150,   151,   152,   153,   154,   155,   156,
1710         157,   158,   159,   160,   161,   162,   163,   164,   165,   166,
1711         167,   168,   169,   170,   171,   172,   173,   174,   175,   176,
1712         177,   178,   179,   180,   181,   182,   183,   184,   185,   186,
1713         187,   188,   189,   190,   191,   192,   193,   194,   195,   196,
1714         197,   198,   199,   200,   201,   202,   203,   204,   205,   206,
1715         207,   208,   209,   210,   211,   212,   213,   214,   215,   216,
1716         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,
1769          18,   446,    27,    38,   449,    33,    33,    36,    38,    40,
1770          36,    21,    21,   880,    38,    34,    15,     9,    10,    11,
1771          12,    13,    14,    15,    16,    17,    18,    19,    22,    20,
1772          19,    19,    22,    19,    36,    38,    37,    22,    25,    22,
1773         484,    22,    22,    27,    22,    22,   490,   491,    19,   493,
1774          22,    26,    22,    22,   498,   499,    32,    24,    19,   503,
1775          23,    27,    26,    37,   508,    38,    23,    32,    36,   513,
1776         514,   515,   516,    33,   518,    27,    38,    36,    27,    37,
1777          27,    32,  1004,    27,    27,    40,    19,    32,    30,    27,
1778          27,    27,    27,    27,   539,   540,   565,   566,   567,   568,
1779         569,   570,   571,   572,   573,    32,   551,   552,   553,   554,
1780         555,   556,   557,   558,   559,   560,   561,   562,   563,   564,
1781          27,    38,   565,   566,   567,   568,   569,   570,   571,   572,
1782         573,    33,    27,   578,   579,   580,    33,    27,   583,   584,
1783          39,    33,    33,    19,    24,   590,   591,    32,   271,    21,
1784          23,    19,    21,    27,    43,    21,    33,   602,    89,   604,
1785          89,   606,    32,    30,    23,    89,    24,    32,    32,    30,
1786          30,    89,    22,    89,    89,   620,   621,   622,   623,   624,
1787         625,   626,   627,   628,   629,   630,   631,   632,   633,   634,
1788         635,    33,   637,    33,    32,    36,    32,    22,    33,    38,
1789          30,    89,    30,    23,    31,    23,    32,    19,    30,    23,
1790        1077,   656,   657,    20,    23,    36,    27,    19,    89,    23,
1791          23,    27,    23,    36,    43,    33,    89,   671,    27,    27,
1792         674,   675,   676,   677,    89,   679,    27,   681,    89,   683,
1793          23,   685,   686,    27,    39,    89,    89,    27,    27,    27,
1794          23,    33,    39,   697,    23,    36,    23,    31,    30,    23,
1795          89,    27,    30,    33,    20,    89,    89,    32,    30,    32,
1796          23,    21,    89,    32,    32,    36,    33,   721,    32,   723,
1797          40,   725,    33,    38,    30,    32,    31,    31,    40,    32,
1798         289,    33,    33,    31,    30,    30,    89,    20,    37,    39,
1799          30,    33,    21,    37,    37,   750,    37,    34,     5,    23,
1800          39,    39,   757,    33,   759,   760,   761,    39,   763,   764,
1801          27,    23,   445,   768,    23,   770,    24,   772,    33,    19,
1802          21,    23,    33,    33,    38,    38,    23,    23,    27,   784,
1803          89,   786,    37,    39,    38,    38,    24,    32,    22,    33,
1804         795,   796,   797,   798,   799,   800,   801,   802,   803,   804,
1805         805,   806,    38,   808,    89,   810,    38,   812,    39,    38,
1806          32,    39,    38,    38,    32,    39,    27,    32,    27,   848,
1807          33,    89,    39,    21,    36,    39,    34,    32,    38,    36,
1808          36,   835,   836,   837,  1261,   839,   840,    36,   842,   843,
1809          34,    38,   525,   872,   848,    34,   875,    38,   877,    36,
1810          38,   855,    19,    34,    38,    19,    30,    23,    33,   863,
1811         864,    32,   866,   867,   868,   869,    23,   871,   872,   873,
1812         874,   875,    21,   877,    39,    23,    32,    39,    39,    39,
1813          38,    24,    33,    27,    39,   914,   915,   446,    89,    39,
1814          30,   920,    39,    89,   899,   900,  1323,   902,   903,   904,
1815          39,    39,   907,    89,    39,    38,    89,   590,   591,    39,
1816          39,   914,   915,    30,    39,    23,    32,    38,    31,    38,
1817          32,    39,    31,    19,   607,   930,    89,   956,   957,    31,
1818          31,    38,    22,   938,    38,    22,    31,   496,   497,    38,
1819          34,    38,    30,    32,    89,    23,    39,   506,    33,    22,
1820         955,    25,    38,   956,   957,    89,   639,    22,    33,   518,
1821          23,    21,    23,    25,    23,   994,   995,   996,   997,   998,
1822          23,    23,    23,    23,    89,    89,    33,    21,    89,    89,
1823         539,   540,    37,    39,   988,  1014,  1015,    32,    27,    38,
1824         994,    38,    27,   997,    27,   998,    27,    40,    36,    33,
1825          32,    23,    32,    32,    22,    22,  1010,    33,    32,  1013,
1826        1014,  1015,    40,  1042,  1043,    40,  1045,    40,    38,    38,
1827          36,    33,    32,    89,    27,    40,    39,    38,    23,    38,
1828          38,    38,  1037,    27,    23,    27,    38,    23,    26,  1042,
1829        1043,    38,    27,    89,    26,    43,    33,    89,    39,    19,
1830          40,    27,  1081,  1082,  1059,    23,    27,    21,    23,    32,
1831          37,    40,    89,    21,    21,    40,    19,    21,    89,    19,
1832          36,    40,    34,    32,   757,   758,    31,    40,    27,    23,
1833         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,
1870          21,    22,    23,    24,    25,    26,    27,    28,    29,    30,
1871          31,    32,    33,    34,    35,    36,    37,    38,    39,    40,
1872          41,    42,    43,    44,    45,    46,    47,    48,    49,    50,
1873          51,    52,    53,    54,    55,    56,    57,    58,    59,    60,
1874          61,    62,    63,    64,    65,    66,    67,    68,    69,    70,
1875          71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
1876          81,    82,    83,    84,    85,    86,    87,    88,    89,    90,
1877          91,    92,    93,    94,    95,    96,    97,    98,    99,   100,
1878         101,   102,   103,   104,   105,   106,   107,   108,   109,   110,
1879         111,   112,   113,   114,   115,   116,   117,   118,   119,   120,
1880         121,   122,   123,   124,   125,   126,   127,   128,   129,   130,
1881         131,   132,   133,   134,   135,   136,   137,   138,   139,   140,
1882         141,   142,   143,   144,   145,   146,   147,   148,   149,   150,
1883         151,   152,   153,   154,   155,   156,   157,   158,   159,   160,
1884         161,   162,   163,   164,   165,   166,   167,   168,   169,   170,
1885         171,   172,   173,   174,   175,   176,   177,   178,   179,   180,
1886         181,   182,   183,   184,   185,   186,   187,   188,   189,   190,
1887         191,   192,   193,   194,   195,   196,   197,   198,   199,   200,
1888         201,   202,   203,   204,   205,   206,   207,   208,   209,   210,
1889         211,   212,   213,   214,   215,   216,   217,   218,   219,   220,
1890         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,        69,    70,    71,    72,    73,    74,    75,    76,    77,    78,
1898        79,    80,    81,    82,    83,    84,    85,    86,    87,    88,        79,    80,    81,    82,    83,    84,    85,    86,    87,    88,
1899        89,    90,    91,    92,    93,    94,    95,    96,    97,    98,        89,    90,    91,    92,    93,    94,    95,    96,    97,    98,
# Line 1412  static const short int yytable[] = Line 1909  static const short int yytable[] =
1909       189,   190,   191,   192,   193,   194,   195,   196,   197,   198,       189,   190,   191,   192,   193,   194,   195,   196,   197,   198,
1910       199,   200,   201,   202,   203,   204,   205,   206,   207,   208,       199,   200,   201,   202,   203,   204,   205,   206,   207,   208,
1911       209,   210,   211,   212,   213,   214,   215,   216,   217,   218,       209,   210,   211,   212,   213,   214,   215,   216,   217,   218,
1912       219,   220,   221,   222,   223,   224,   225,   226,   227,   228,       219,   220,   221,    -1,   223,   224,     3,     4,     5,     6,
1913       229,   230,   231,   232,   233,   234,   235,   236,   237,   238,         7,     8,     9,    10,    11,    12,    13,    14,    15,    16,
1914       239,   240,   241,   242,   243,   244,   245,   246,   247,   248,        17,    18,    19,    20,    21,    22,    23,    24,    25,    26,
1915       249,   250,   251,   252,   253,   254,   255,   256,   257,   258,        27,    28,    29,    30,    31,    32,    33,    34,    35,    36,
1916       259,   260,   261,   262,   263,   316,   854,    47,     0,     0,        37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
1917        48,    49,    50,   317,   318,   319,   320,   321,   322,   323,        47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
1918       324,   325,   326,    61,    62,    63,    64,    65,    66,    67,        57,    58,    59,    60,    61,    62,    63,    64,    65,    66,
       68,    69,    70,    71,    72,    73,    74,    75,    76,    77,  
       78,    79,    80,    81,    82,    83,    84,    85,    86,    87,  
       88,    89,    90,    91,    92,    93,    94,    95,    96,    97,  
       98,    99,   100,   101,   102,   103,   104,   105,   106,   107,  
      108,   109,   110,   111,   112,   113,   114,   115,   116,   117,  
      118,   119,   120,   121,   122,   123,   124,   125,   126,   127,  
      128,   129,   130,   131,   132,   133,   134,   135,   136,   137,  
      138,   139,   140,   141,   142,   143,   144,   145,   146,   147,  
      148,   149,   150,   151,   152,   153,   154,   155,   156,   157,  
      158,   159,   160,   161,   162,   163,   164,   165,   166,   167,  
      168,   169,   170,   171,   172,   173,   174,   175,   176,   177,  
      178,   179,   180,   181,   182,   183,   184,   185,   186,   187,  
      188,   189,   190,   191,   192,   193,   194,   195,   196,   197,  
      198,   199,   200,   201,   202,   203,   204,   205,   206,   207,  
      208,   209,   210,   211,   212,   213,   214,   215,   216,   217,  
      218,   219,   220,   221,   222,   223,   224,   225,   226,   227,  
      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,  
      238,   239,   240,   241,   242,   243,   244,   245,   246,   247,  
      248,   249,   250,   251,   252,   253,   254,   255,   256,   257,  
      258,   259,   260,   261,   262,   263,   316,   874,    47,     0,  
        0,    48,    49,    50,   317,   318,   319,   320,   321,   322,  
      323,   324,   325,   326,    61,    62,    63,    64,    65,    66,  
1919        67,    68,    69,    70,    71,    72,    73,    74,    75,    76,        67,    68,    69,    70,    71,    72,    73,    74,    75,    76,
1920        77,    78,    79,    80,    81,    82,    83,    84,    85,    86,        77,    78,    79,    80,    81,    82,    83,    84,    85,    86,
1921        87,    88,    89,    90,    91,    92,    93,    94,    95,    96,        87,    88,    89,    90,    91,    92,    93,    94,    95,    96,
# Line 1456  static const short int yytable[] = Line 1931  static const short int yytable[] =
1931       187,   188,   189,   190,   191,   192,   193,   194,   195,   196,       187,   188,   189,   190,   191,   192,   193,   194,   195,   196,
1932       197,   198,   199,   200,   201,   202,   203,   204,   205,   206,       197,   198,   199,   200,   201,   202,   203,   204,   205,   206,
1933       207,   208,   209,   210,   211,   212,   213,   214,   215,   216,       207,   208,   209,   210,   211,   212,   213,   214,   215,   216,
1934       217,   218,   219,   220,   221,   222,   223,   224,   225,   226,       217,   218,   219,   220,   221,    -1,    -1,   224,     3,     4,
1935       227,   228,   229,   230,   231,   232,   233,   234,   235,   236,         5,     6,     7,     8,     9,    10,    11,    12,    13,    14,
      237,   238,   239,   240,   241,   242,   243,   244,   245,   246,  
      247,   248,   249,   250,   251,   252,   253,   254,   255,   256,  
      257,   258,   259,   260,   261,   262,   263,   316,   875,    47,  
        0,     0,    48,    49,    50,   317,   318,   319,   320,   321,  
      322,   323,   324,   325,   326,    61,    62,    63,    64,    65,  
       66,    67,    68,    69,    70,    71,    72,    73,    74,    75,  
       76,    77,    78,    79,    80,    81,    82,    83,    84,    85,  
       86,    87,    88,    89,    90,    91,    92,    93,    94,    95,  
       96,    97,    98,    99,   100,   101,   102,   103,   104,   105,  
      106,   107,   108,   109,   110,   111,   112,   113,   114,   115,  
      116,   117,   118,   119,   120,   121,   122,   123,   124,   125,  
      126,   127,   128,   129,   130,   131,   132,   133,   134,   135,  
      136,   137,   138,   139,   140,   141,   142,   143,   144,   145,  
      146,   147,   148,   149,   150,   151,   152,   153,   154,   155,  
      156,   157,   158,   159,   160,   161,   162,   163,   164,   165,  
      166,   167,   168,   169,   170,   171,   172,   173,   174,   175,  
      176,   177,   178,   179,   180,   181,   182,   183,   184,   185,  
      186,   187,   188,   189,   190,   191,   192,   193,   194,   195,  
      196,   197,   198,   199,   200,   201,   202,   203,   204,   205,  
      206,   207,   208,   209,   210,   211,   212,   213,   214,   215,  
      216,   217,   218,   219,   220,   221,   222,   223,   224,   225,  
      226,   227,   228,   229,   230,   231,   232,   233,   234,   235,  
      236,   237,   238,   239,   240,   241,   242,   243,   244,   245,  
      246,   247,   248,   249,   250,   251,   252,   253,   254,   255,  
      256,   257,   258,   259,   260,   261,   262,   263  
 };  
   
 static const short int yycheck[] =  
 {  
       14,    14,   471,    16,    17,    18,    19,    20,    21,    22,  
       23,    24,    25,    26,    27,   598,   279,     5,   272,   273,  
      272,   273,   279,   279,   758,    25,   760,     6,     7,    33,  
       32,   225,   226,    24,    29,    39,    23,    24,    40,    21,  
       35,    41,    52,    53,    54,    55,    56,    57,    58,    59,  
       60,    33,     1,    40,     3,    34,    23,    39,    38,    22,  
       42,    25,    29,    52,    53,    54,    55,    56,    57,    58,  
       59,    60,    21,    36,    23,    24,    22,    23,    27,    41,  
       42,    25,    25,    32,    22,    41,    42,    33,    37,    38,  
       39,    29,    41,    39,    38,    38,    42,    21,    21,    23,  
       23,    39,    25,    29,    42,    23,    24,    21,    25,    33,  
       33,   580,    29,   582,   583,    41,    39,    25,    36,    33,  
      854,     8,    40,    24,    11,    12,    13,    14,    15,    16,  
       17,    18,    19,    20,    24,    36,    41,   271,    34,   608,  
      874,   875,   276,   277,    23,    24,    36,   281,   617,   618,  
      619,   620,   621,   622,   623,   624,   625,   626,   627,   750,  
        6,     7,    25,   754,    23,    24,   429,   756,   757,   522,  
      523,     8,   429,   429,    11,    12,    13,    14,    15,    16,  
       17,    18,    19,    20,     8,     0,   224,    11,    12,    13,  
       14,    15,    16,    17,    18,    19,    20,    24,    21,    21,  
       23,    39,    25,    25,   458,    25,   458,    40,    39,    21,  
       33,    33,     9,    10,    11,    12,    13,    14,    15,    16,  
       17,    18,    19,    20,   430,   431,   432,   433,   434,   435,  
      436,   437,   438,   439,   440,   441,   224,   225,   226,    11,  
       12,    13,    14,    15,    16,    17,    18,    19,    20,    21,  
       29,    22,    39,   722,    11,    12,    13,    14,    15,    16,  
       17,    18,    19,    20,   225,   848,    21,   280,   851,   738,  
       23,    40,    40,    24,    40,    35,   225,   226,    11,    12,  
       13,    14,    15,    16,    17,    18,    19,    20,    25,    25,  
       39,    41,    34,    28,    28,    25,   306,    29,   308,   309,  
      310,   311,   312,   313,   314,   315,    29,    28,    34,    29,  
       41,    23,    41,    29,    41,    28,    40,    35,    29,    38,  
       42,    14,    23,   336,    23,    40,    40,   340,    22,   342,  
      343,   344,   345,   346,    21,   348,    24,   350,   351,   352,  
      353,   354,    21,    21,    27,   358,   359,    24,   361,   362,  
       24,    24,    38,    29,    24,    21,    24,    39,    21,    24,  
       24,    28,   375,   376,   377,    26,    25,    39,    25,   382,  
      383,   384,   385,   386,   387,    29,    38,    35,    29,    29,  
       40,    34,    38,    29,    39,    34,    29,    34,    29,    29,  
       42,    29,    34,    29,    29,   408,   865,   410,    35,    29,  
       26,    40,    35,   265,    35,    23,    35,    41,    25,    34,  
       23,    23,    34,    45,    29,    35,    32,    25,   871,    26,  
       34,    24,    91,    34,    22,    35,    35,    24,    34,    34,  
       25,    32,   446,   447,    38,    35,    32,    25,    40,    21,  
       34,    25,    25,    91,    21,   459,   460,   461,   462,   463,  
       25,    38,    25,    29,    45,    35,    25,    38,    29,    25,  
       25,    29,    41,    91,    91,    29,    29,    91,    91,    29,  
       91,    41,    91,    35,   487,   488,   489,   490,   491,   492,  
      493,   494,   495,   496,   497,   498,   499,   500,   501,    38,  
       25,    32,   505,   506,    33,    25,    29,   507,   508,   509,  
      510,   511,   512,   513,   514,   515,    91,    32,    35,   522,  
      523,    22,    32,   526,    40,   528,    34,   530,   507,   508,  
      509,   510,   511,   512,   513,   514,   515,    35,    38,   542,  
      543,   544,   545,   546,   547,   548,   549,   550,   551,   552,  
      553,   554,   555,   556,    91,   407,    34,    32,    35,    35,  
       34,    33,    33,    91,    34,    33,    35,    91,    32,    32,  
       91,    23,    22,    32,    41,    36,    25,    39,    23,    36,  
        5,   585,    36,    41,   588,   589,   590,   591,    41,    25,  
      594,    35,    91,    41,    36,    29,    25,   280,    26,    32,  
      603,   604,   606,    91,    21,    23,    25,    39,    35,    40,  
       25,    41,    25,    34,    40,    24,    40,   469,    41,    41,  
       40,    35,    32,    34,    29,   629,    34,   631,    35,    41,  
       21,    91,    36,    34,    36,    41,    91,    40,    36,    32,  
       40,    40,    36,    40,    40,    35,    41,    36,   651,    34,  
       25,    34,    40,   505,   506,   658,    91,   660,   661,   662,  
       41,   664,    41,   666,    41,    41,    32,    41,    40,    32,  
       41,    41,    26,    35,    34,    91,   679,    41,   681,   531,  
       29,    40,    40,    34,    21,    40,    24,   690,   691,   692,  
      693,   694,   695,   696,   697,   698,   699,   700,    40,   702,  
       24,   704,    36,    34,    91,    40,   558,    40,    35,    41,  
       40,    91,    24,    27,    24,    35,    27,    25,    91,    25,  
      724,   725,   726,    91,   728,   408,    91,    25,   732,    29,  
       35,    40,   732,    29,    41,   739,    39,    29,    91,    29,  
       42,    38,    25,   747,   748,    24,   750,   751,   752,    42,  
      754,   755,   756,   757,   758,   755,   760,    24,   758,    40,  
      760,   444,   445,    38,    42,    42,    28,    35,    34,    91,  
      453,    29,    42,    25,   777,   778,    40,   780,   781,    29,  
      463,    25,    29,    28,    25,    40,    29,    91,   788,   789,  
       28,    45,    21,    35,   794,    29,    42,    91,    25,    29,  
      803,    23,    25,    91,    23,    42,   658,   659,   811,   788,  
      789,    42,   664,   665,    23,    21,    42,    38,   670,    23,  
       21,   824,    36,    34,    29,   825,   826,    42,    35,    39,  
       25,    34,    29,    25,    25,    29,    38,    36,    34,   522,  
      523,    29,    25,    28,    34,    45,   825,   826,    25,   701,  
      854,   703,    34,    40,   854,   859,    23,   857,   858,   859,  
      860,    25,    41,    36,    39,    21,    91,   871,    23,   873,  
      874,   875,    23,    34,   874,   875,    23,    21,    91,    36,  
       34,   860,    25,    25,    25,    38,    25,    36,    40,    25,  
       38,    41,    25,    25,    34,    25,   896,   897,    36,   899,  
       21,   584,    39,   586,   587,    32,    40,    91,   911,   592,  
      593,    36,    21,    32,   597,   598,    21,   896,   897,    91,  
      603,   604,    34,    91,    32,   777,   926,   927,    41,   781,  
       36,    91,   936,   785,    38,    33,    36,    38,    25,    36,  
      792,    21,    24,    21,    40,   628,    25,   630,    21,    21,  
       21,    32,    38,    38,    38,    38,    91,    33,    33,    21,  
       24,    29,   814,    40,    25,    25,    21,    25,    21,    38,  
       33,   823,    42,    40,    40,    25,    33,    33,    29,    38,  
       25,   833,    25,   835,    25,    25,    25,   936,    40,    25,  
       38,    38,    25,    42,    40,    39,    38,    25,    25,   873,  
      859,    38,    40,   855,   856,    39,    38,    38,    38,   739,  
      279,   755,   275,   274,   274,    44,   584,   274,   607,   458,  
      279,   274,    -1,   279,    -1,   274,   277,    -1,    -1,   277,  
       -1,    -1,    -1,    -1,   274,    -1,   888,   889,    -1,    -1,  
      723,    -1,    -1,    -1,   727,    -1,    -1,    -1,   731,    -1,  
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  
       -1,    -1,    -1,    -1,    -1,    -1,   749,    -1,    -1,    -1,  
      753,    -1,   458,   756,   757,    -1,   759,    -1,   761,    -1,  
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  
       -1,    -1,    -1,   786,   787,    -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,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  
       -1,    -1,    -1,    -1,    -1,   848,   849,   850,   851,     3,  
        4,     5,     6,    -1,     8,     9,    10,    11,    12,    13,  
       14,    15,    16,    17,    18,    19,    20,    21,    22,    23,  
       24,    25,    26,    27,    28,    29,    30,    31,    32,    33,  
       34,    35,    36,    37,    38,    39,    40,    41,    42,    43,  
       44,    45,    46,    47,    48,    49,    50,    51,    52,    53,  
       54,    55,    56,    57,    58,    59,    60,    61,    62,    63,  
       64,    65,    66,    67,    68,    69,    70,    71,    72,    73,  
       74,    75,    76,    77,    78,    79,    80,    81,    82,    83,  
       84,    85,    86,    87,    88,    89,    90,    91,    92,    93,  
       94,    95,    96,    97,    98,    99,   100,   101,   102,   103,  
      104,   105,   106,   107,   108,   109,   110,   111,   112,   113,  
      114,   115,   116,   117,   118,   119,   120,   121,   122,   123,  
      124,   125,   126,   127,   128,   129,   130,   131,   132,   133,  
      134,   135,   136,   137,   138,   139,   140,   141,   142,   143,  
      144,   145,   146,   147,   148,   149,   150,   151,   152,   153,  
      154,   155,   156,   157,   158,   159,   160,   161,   162,   163,  
      164,   165,   166,   167,   168,   169,   170,   171,   172,   173,  
      174,   175,   176,   177,   178,   179,   180,   181,   182,   183,  
      184,   185,   186,   187,   188,   189,   190,   191,   192,   193,  
      194,   195,   196,   197,   198,   199,   200,   201,   202,   203,  
      204,   205,   206,   207,   208,   209,   210,   211,   212,   213,  
      214,   215,   216,   217,   218,   219,   220,   221,   222,   223,  
      224,     3,     4,     5,    -1,     7,     8,     9,    10,    11,  
       12,    13,    14,    15,    16,    17,    18,    19,    20,    21,  
       22,    23,    24,    25,    26,    27,    28,    29,    30,    31,  
       32,    33,    34,    35,    36,    37,    38,    39,    40,    41,  
       42,    43,    44,    45,    46,    47,    48,    49,    50,    51,  
       52,    53,    54,    55,    56,    57,    58,    59,    60,    61,  
       62,    63,    64,    65,    66,    67,    68,    69,    70,    71,  
       72,    73,    74,    75,    76,    77,    78,    79,    80,    81,  
       82,    83,    84,    85,    86,    87,    88,    89,    90,    91,  
       92,    93,    94,    95,    96,    97,    98,    99,   100,   101,  
      102,   103,   104,   105,   106,   107,   108,   109,   110,   111,  
      112,   113,   114,   115,   116,   117,   118,   119,   120,   121,  
      122,   123,   124,   125,   126,   127,   128,   129,   130,   131,  
      132,   133,   134,   135,   136,   137,   138,   139,   140,   141,  
      142,   143,   144,   145,   146,   147,   148,   149,   150,   151,  
      152,   153,   154,   155,   156,   157,   158,   159,   160,   161,  
      162,   163,   164,   165,   166,   167,   168,   169,   170,   171,  
      172,   173,   174,   175,   176,   177,   178,   179,   180,   181,  
      182,   183,   184,   185,   186,   187,   188,   189,   190,   191,  
      192,   193,   194,   195,   196,   197,   198,   199,   200,   201,  
      202,   203,   204,   205,   206,   207,   208,   209,   210,   211,  
      212,   213,   214,   215,   216,   217,   218,   219,   220,   221,  
      222,   223,   224,     3,     4,     5,    -1,    -1,     8,     9,  
       10,    11,    12,    13,    14,    15,    16,    17,    18,    19,  
       20,    21,    22,    23,    24,    25,    26,    27,    28,    29,  
       30,    31,    32,    33,    34,    35,    36,    37,    38,    39,  
       40,    41,    42,    43,    44,    45,    46,    47,    48,    49,  
       50,    51,    52,    53,    54,    55,    56,    57,    58,    59,  
       60,    61,    62,    63,    64,    65,    66,    67,    68,    69,  
       70,    71,    72,    73,    74,    75,    76,    77,    78,    79,  
       80,    81,    82,    83,    84,    85,    86,    87,    88,    89,  
       90,    91,    92,    93,    94,    95,    96,    97,    98,    99,  
      100,   101,   102,   103,   104,   105,   106,   107,   108,   109,  
      110,   111,   112,   113,   114,   115,   116,   117,   118,   119,  
      120,   121,   122,   123,   124,   125,   126,   127,   128,   129,  
      130,   131,   132,   133,   134,   135,   136,   137,   138,   139,  
      140,   141,   142,   143,   144,   145,   146,   147,   148,   149,  
      150,   151,   152,   153,   154,   155,   156,   157,   158,   159,  
      160,   161,   162,   163,   164,   165,   166,   167,   168,   169,  
      170,   171,   172,   173,   174,   175,   176,   177,   178,   179,  
      180,   181,   182,   183,   184,   185,   186,   187,   188,   189,  
      190,   191,   192,   193,   194,   195,   196,   197,   198,   199,  
      200,   201,   202,   203,   204,   205,   206,   207,   208,   209,  
      210,   211,   212,   213,   214,   215,   216,   217,   218,   219,  
      220,   221,   222,   223,   224,     3,     4,     5,    -1,    -1,  
        8,     9,    10,    11,    12,    13,    14,    15,    16,    17,  
       18,    19,    20,    21,    22,    23,    24,    25,    26,    27,  
       28,    29,    30,    31,    32,    33,    34,    35,    36,    37,  
       38,    39,    40,    41,    42,    43,    44,    45,    46,    47,  
       48,    49,    50,    51,    52,    53,    54,    55,    56,    57,  
       58,    59,    60,    61,    62,    63,    64,    65,    66,    67,  
       68,    69,    70,    71,    72,    73,    74,    75,    76,    77,  
       78,    79,    80,    81,    82,    83,    84,    85,    86,    87,  
       88,    89,    90,    91,    92,    93,    94,    95,    96,    97,  
       98,    99,   100,   101,   102,   103,   104,   105,   106,   107,  
      108,   109,   110,   111,   112,   113,   114,   115,   116,   117,  
      118,   119,   120,   121,   122,   123,   124,   125,   126,   127,  
      128,   129,   130,   131,   132,   133,   134,   135,   136,   137,  
      138,   139,   140,   141,   142,   143,   144,   145,   146,   147,  
      148,   149,   150,   151,   152,   153,   154,   155,   156,   157,  
      158,   159,   160,   161,   162,   163,   164,   165,   166,   167,  
      168,   169,   170,   171,   172,   173,   174,   175,   176,   177,  
      178,   179,   180,   181,   182,   183,   184,   185,   186,   187,  
      188,   189,   190,   191,   192,   193,   194,   195,   196,   197,  
      198,   199,   200,   201,   202,   203,   204,   205,   206,   207,  
      208,   209,   210,   211,   212,   213,   214,   215,   216,   217,  
      218,   219,   220,   221,   222,   223,   224,     3,     4,     5,  
        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,    -1,     8,     9,    10,    11,    12,    13,    14,  
1936        15,    16,    17,    18,    19,    20,    21,    22,    23,    24,        15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
1937        25,    26,    27,    28,    29,    30,    31,    32,    33,    34,        25,    26,    27,    28,    29,    30,    31,    32,    33,    34,
1938        35,    36,    37,    38,    39,    40,    41,    42,    43,    44,        35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
# Line 1735  static const short int yycheck[] = Line 1953  static const short int yycheck[] =
1953       185,   186,   187,   188,   189,   190,   191,   192,   193,   194,       185,   186,   187,   188,   189,   190,   191,   192,   193,   194,
1954       195,   196,   197,   198,   199,   200,   201,   202,   203,   204,       195,   196,   197,   198,   199,   200,   201,   202,   203,   204,
1955       205,   206,   207,   208,   209,   210,   211,   212,   213,   214,       205,   206,   207,   208,   209,   210,   211,   212,   213,   214,
1956       215,   216,   217,   218,   219,   220,   221,   222,   223,     3,       215,   216,   217,   218,   219,   220,   221,    -1,    -1,   224,
1957         4,     5,    -1,     7,     8,     9,    10,    11,    12,    13,         3,     4,     5,     6,     7,     8,     9,    10,    11,    12,
       14,    15,    16,    17,    18,    19,    20,    21,    22,    23,  
       24,    25,    26,    27,    28,    29,    30,    31,    32,    33,  
       34,    35,    36,    37,    38,    39,    40,    41,    42,    43,  
       44,    45,    46,    47,    48,    49,    50,    51,    52,    53,  
       54,    55,    56,    57,    58,    59,    60,    61,    62,    63,  
       64,    65,    66,    67,    68,    69,    70,    71,    72,    73,  
       74,    75,    76,    77,    78,    79,    80,    81,    82,    83,  
       84,    85,    86,    87,    88,    89,    90,    91,    92,    93,  
       94,    95,    96,    97,    98,    99,   100,   101,   102,   103,  
      104,   105,   106,   107,   108,   109,   110,   111,   112,   113,  
      114,   115,   116,   117,   118,   119,   120,   121,   122,   123,  
      124,   125,   126,   127,   128,   129,   130,   131,   132,   133,  
      134,   135,   136,   137,   138,   139,   140,   141,   142,   143,  
      144,   145,   146,   147,   148,   149,   150,   151,   152,   153,  
      154,   155,   156,   157,   158,   159,   160,   161,   162,   163,  
      164,   165,   166,   167,   168,   169,   170,   171,   172,   173,  
      174,   175,   176,   177,   178,   179,   180,   181,   182,   183,  
      184,   185,   186,   187,   188,   189,   190,   191,   192,   193,  
      194,   195,   196,   197,   198,   199,   200,   201,   202,   203,  
      204,   205,   206,   207,   208,   209,   210,   211,   212,   213,  
      214,   215,   216,   217,   218,   219,   220,   221,   222,   223,  
        3,     4,     5,    -1,    -1,     8,     9,    10,    11,    12,  
1958        13,    14,    15,    16,    17,    18,    19,    20,    21,    22,        13,    14,    15,    16,    17,    18,    19,    20,    21,    22,
1959        23,    24,    25,    26,    27,    28,    29,    30,    31,    32,        23,    24,    25,    26,    27,    28,    29,    30,    31,    32,
1960        33,    34,    35,    36,    37,    38,    39,    40,    41,    42,        33,    34,    35,    36,    37,    38,    39,    40,    41,    42,
# Line 1780  static const short int yycheck[] = Line 1976  static const short int yycheck[] =
1976       193,   194,   195,   196,   197,   198,   199,   200,   201,   202,       193,   194,   195,   196,   197,   198,   199,   200,   201,   202,
1977       203,   204,   205,   206,   207,   208,   209,   210,   211,   212,       203,   204,   205,   206,   207,   208,   209,   210,   211,   212,
1978       213,   214,   215,   216,   217,   218,   219,   220,   221,   222,       213,   214,   215,   216,   217,   218,   219,   220,   221,   222,
1979       223,     3,     4,     5,    -1,    -1,     8,     9,    10,    11,       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 1802  static const short int yycheck[] = Line 1998  static const short int yycheck[] =
1998       192,   193,   194,   195,   196,   197,   198,   199,   200,   201,       192,   193,   194,   195,   196,   197,   198,   199,   200,   201,
1999       202,   203,   204,   205,   206,   207,   208,   209,   210,   211,       202,   203,   204,   205,   206,   207,   208,   209,   210,   211,
2000       212,   213,   214,   215,   216,   217,   218,   219,   220,   221,       212,   213,   214,   215,   216,   217,   218,   219,   220,   221,
2001       222,   223,     3,     4,     5,    -1,    -1,     8,     9,    10,         3,     4,     5,     6,     7,     8,     9,    10,    11,    12,
2002        11,    12,    13,    14,    15,    16,    17,    18,    19,    20,        13,    14,    15,    16,    17,    18,    19,    20,    21,    22,
2003        21,    22,    23,    24,    25,    26,    27,    28,    29,    30,        23,    24,    25,    26,    27,    28,    29,    30,    31,    32,
2004        31,    32,    33,    34,    35,    36,    37,    38,    39,    40,        33,    34,    35,    36,    37,    38,    39,    40,    41,    42,
2005        41,    42,    43,    44,    45,    46,    47,    48,    49,    50,        43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
2006        51,    52,    53,    54,    55,    56,    57,    58,    59,    60,        53,    54,    55,    56,    57,    58,    59,    60,    61,    62,
2007        61,    62,    63,    64,    65,    66,    67,    68,    69,    70,        63,    64,    65,    66,    67,    68,    69,    70,    71,    72,
2008        71,    72,    73,    74,    75,    76,    77,    78,    79,    80,        73,    74,    75,    76,    77,    78,    79,    80,    81,    82,
2009        81,    82,    83,    84,    85,    86,    87,    88,    89,    90,        83,    84,    85,    86,    87,    88,    89,    90,    91,    92,
2010        91,    92,    93,    94,    95,    96,    97,    98,    99,   100,        93,    94,    95,    96,    97,    98,    99,   100,   101,   102,
2011       101,   102,   103,   104,   105,   106,   107,   108,   109,   110,       103,   104,   105,   106,   107,   108,   109,   110,   111,   112,
2012       111,   112,   113,   114,   115,   116,   117,   118,   119,   120,       113,   114,   115,   116,   117,   118,   119,   120,   121,   122,
2013       121,   122,   123,   124,   125,   126,   127,   128,   129,   130,       123,   124,   125,   126,   127,   128,   129,   130,   131,   132,
2014       131,   132,   133,   134,   135,   136,   137,   138,   139,   140,       133,   134,   135,   136,   137,   138,   139,   140,   141,   142,
2015       141,   142,   143,   144,   145,   146,   147,   148,   149,   150,       143,   144,   145,   146,   147,   148,   149,   150,   151,   152,
2016       151,   152,   153,   154,   155,   156,   157,   158,   159,   160,       153,   154,   155,   156,   157,   158,   159,   160,   161,   162,
2017       161,   162,   163,   164,   165,   166,   167,   168,   169,   170,       163,   164,   165,   166,   167,   168,   169,   170,   171,   172,
2018       171,   172,   173,   174,   175,   176,   177,   178,   179,   180,       173,   174,   175,   176,   177,   178,   179,   180,   181,   182,
2019       181,   182,   183,   184,   185,   186,   187,   188,   189,   190,       183,   184,   185,   186,   187,   188,   189,   190,   191,   192,
2020       191,   192,   193,   194,   195,   196,   197,   198,   199,   200,       193,   194,   195,   196,   197,   198,   199,   200,   201,   202,
2021       201,   202,   203,   204,   205,   206,   207,   208,   209,   210,       203,   204,   205,   206,   207,   208,   209,   210,   211,   212,
2022       211,   212,   213,   214,   215,   216,   217,   218,   219,   220,       213,   214,   215,   216,   217,   218,   219,   220,   221,     3,
2023       221,   222,   223,     3,     4,     5,    -1,    -1,     8,     9,         4,     5,     6,     7,     8,     9,    10,    11,    12,    13,
2024        10,    11,    12,    13,    14,    15,    16,    17,    18,    19,        14,    15,    16,    17,    18,    19,    20,    21,    22,    23,
2025        20,    21,    22,    23,    24,    25,    26,    27,    28,    29,        24,    25,    26,    27,    28,    29,    30,    31,    32,    33,
2026        30,    31,    32,    33,    34,    35,    36,    37,    38,    39,        34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
2027        40,    41,    42,    43,    44,    45,    46,    47,    48,    49,        44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
2028        50,    51,    52,    53,    54,    55,    56,    57,    58,    59,        54,    55,    56,    57,    58,    59,    60,    61,    62,    63,
2029        60,    61,    62,    63,    64,    65,    66,    67,    68,    69,        64,    65,    66,    67,    68,    69,    70,    71,    72,    73,
2030        70,    71,    72,    73,    74,    75,    76,    77,    78,    79,        74,    75,    76,    77,    78,    79,    80,    81,    82,    83,
2031        80,    81,    82,    83,    84,    85,    86,    87,    88,    89,        84,    85,    86,    87,    88,    89,    90,    91,    92,    93,
2032        90,    91,    92,    93,    94,    95,    96,    97,    98,    99,        94,    95,    96,    97,    98,    99,   100,   101,   102,   103,
2033       100,   101,   102,   103,   104,   105,   106,   107,   108,   109,       104,   105,   106,   107,   108,   109,   110,   111,   112,   113,
2034       110,   111,   112,   113,   114,   115,   116,   117,   118,   119,       114,   115,   116,   117,   118,   119,   120,   121,   122,   123,
2035       120,   121,   122,   123,   124,   125,   126,   127,   128,   129,       124,   125,   126,   127,   128,   129,   130,   131,   132,   133,
2036       130,   131,   132,   133,   134,   135,   136,   137,   138,   139,       134,   135,   136,   137,   138,   139,   140,   141,   142,   143,
2037       140,   141,   142,   143,   144,   145,   146,   147,   148,   149,       144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
2038       150,   151,   152,   153,   154,   155,   156,   157,   158,   159,       154,   155,   156,   157,   158,   159,   160,   161,   162,   163,
2039       160,   161,   162,   163,   164,   165,   166,   167,   168,   169,       164,   165,   166,   167,   168,   169,   170,   171,   172,   173,
2040       170,   171,   172,   173,   174,   175,   176,   177,   178,   179,       174,   175,   176,   177,   178,   179,   180,   181,   182,   183,
2041       180,   181,   182,   183,   184,   185,   186,   187,   188,   189,       184,   185,   186,   187,   188,   189,   190,   191,   192,   193,
2042       190,   191,   192,   193,   194,   195,   196,   197,   198,   199,       194,   195,   196,   197,   198,   199,   200,   201,   202,   203,
2043       200,   201,   202,   203,   204,   205,   206,   207,   208,   209,       204,   205,   206,   207,   208,   209,   210,   211,   212,   213,
2044       210,   211,   212,   213,   214,   215,   216,   217,   218,   219,       214,   215,   216,   217,   218,   219,   220,   221,     3,     4,
2045       220,   221,   222,   223,     3,     4,     5,    -1,    -1,     8,         5,     6,     7,     8,     9,    10,    11,    12,    13,    14,
2046         9,    10,    11,    12,    13,    14,    15,    16,    17,    18,        15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
2047        19,    20,    21,    22,    23,    24,    25,    26,    27,    28,        25,    26,    27,    28,    29,    30,    31,    32,    33,    34,
2048        29,    30,    31,    32,    33,    34,    35,    36,    37,    38,        35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
2049        39,    40,    41,    42,    43,    44,    45,    46,    47,    48,        45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
2050        49,    50,    51,    52,    53,    54,    55,    56,    57,    58,        55,    56,    57,    58,    59,    60,    61,    62,    63,    64,
2051        59,    60,    61,    62,    63,    64,    65,    66,    67,    68,        65,    66,    67,    68,    69,    70,    71,    72,    73,    74,
2052        69,    70,    71,    72,    73,    74,    75,    76,    77,    78,        75,    76,    77,    78,    79,    80,    81,    82,    83,    84,
2053        79,    80,    81,    82,    83,    84,    85,    86,    87,    88,        85,    86,    87,    88,    89,    90,    91,    92,    93,    94,
2054        89,    90,    91,    92,    93,    94,    95,    96,    97,    98,        95,    96,    97,    98,    99,   100,   101,   102,   103,   104,
2055        99,   100,   101,   102,   103,   104,   105,   106,   107,   108,       105,   106,   107,   108,   109,   110,   111,   112,   113,   114,
2056       109,   110,   111,   112,   113,   114,   115,   116,   117,   118,       115,   116,   117,   118,   119,   120,   121,   122,   123,   124,
2057       119,   120,   121,   122,   123,   124,   125,   126,   127,   128,       125,   126,   127,   128,   129,   130,   131,   132,   133,   134,
2058       129,   130,   131,   132,   133,   134,   135,   136,   137,   138,       135,   136,   137,   138,   139,   140,   141,   142,   143,   144,
2059       139,   140,   141,   142,   143,   144,   145,   146,   147,   148,       145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
2060       149,   150,   151,   152,   153,   154,   155,   156,   157,   158,       155,   156,   157,   158,   159,   160,   161,   162,   163,   164,
2061       159,   160,   161,   162,   163,   164,   165,   166,   167,   168,       165,   166,   167,   168,   169,   170,   171,   172,   173,   174,
2062       169,   170,   171,   172,   173,   174,   175,   176,   177,   178,       175,   176,   177,   178,   179,   180,   181,   182,   183,   184,
2063       179,   180,   181,   182,   183,   184,   185,   186,   187,   188,       185,   186,   187,   188,   189,   190,   191,   192,   193,   194,
2064       189,   190,   191,   192,   193,   194,   195,   196,   197,   198,       195,   196,   197,   198,   199,   200,   201,   202,   203,   204,
2065       199,   200,   201,   202,   203,   204,   205,   206,   207,   208,       205,   206,   207,   208,   209,   210,   211,   212,   213,   214,
2066       209,   210,   211,   212,   213,   214,   215,   216,   217,   218,       215,   216,   217,   218,   219,   220,   221,     3,     4,     5,
2067       219,   220,   221,   222,   223,     3,     4,     5,    -1,    -1,         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 1890  static const short int yycheck[] = Line 2129  static const short int yycheck[] =
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,   222,   223,     3,     4,     5,    -1,       218,   219,   220,   221,     3,     4,     5,     6,     7,     8,
2133        -1,     8,     9,    10,    11,    12,    13,    14,    15,    16,         9,    10,    11,    12,    13,    14,    15,    16,    17,    18,
2134        17,    18,    19,    20,    21,    22,    23,    24,    25,    26,        19,    20,    21,    22,    23,    24,    25,    26,    27,    28,
2135        27,    28,    29,    30,    31,    32,    33,    34,    35,    36,        29,    30,    31,    32,    33,    34,    35,    36,    37,    38,
2136        37,    38,    39,    40,    41,    42,    43,    44,    45,    46,        39,    40,    41,    42,    43,    44,    45,    46,    47,    48,
2137        47,    48,    49,    50,    51,    52,    53,    54,    55,    56,        49,    50,    51,    52,    53,    54,    55,    56,    57,    58,
2138        57,    58,    59,    60,    61,    62,    63,    64,    65,    66,        59,    60,    61,    62,    63,    64,    65,    66,    67,    68,
2139        67,    68,    69,    70,    71,    72,    73,    74,    75,    76,        69,    70,    71,    72,    73,    74,    75,    76,    77,    78,
2140        77,    78,    79,    80,    81,    82,    83,    84,    85,    86,        79,    80,    81,    82,    83,    84,    85,    86,    87,    88,
2141        87,    88,    89,    90,    91,    92,    93,    94,    95,    96,        89,    90,    91,    92,    93,    94,    95,    96,    97,    98,
2142        97,    98,    99,   100,   101,   102,   103,   104,   105,   106,        99,   100,   101,   102,   103,   104,   105,   106,   107,   108,
2143       107,   108,   109,   110,   111,   112,   113,   114,   115,   116,       109,   110,   111,   112,   113,   114,   115,   116,   117,   118,
2144       117,   118,   119,   120,   121,   122,   123,   124,   125,   126,       119,   120,   121,   122,   123,   124,   125,   126,   127,   128,
2145       127,   128,   129,   130,   131,   132,   133,   134,   135,   136,       129,   130,   131,   132,   133,   134,   135,   136,   137,   138,
2146       137,   138,   139,   140,   141,   142,   143,   144,   145,   146,       139,   140,   141,   142,   143,   144,   145,   146,   147,   148,
2147       147,   148,   149,   150,   151,   152,   153,   154,   155,   156,       149,   150,   151,   152,   153,   154,   155,   156,   157,   158,
2148       157,   158,   159,   160,   161,   162,   163,   164,   165,   166,       159,   160,   161,   162,   163,   164,   165,   166,   167,   168,
2149       167,   168,   169,   170,   171,   172,   173,   174,   175,   176,       169,   170,   171,   172,   173,   174,   175,   176,   177,   178,
2150       177,   178,   179,   180,   181,   182,   183,   184,   185,   186,       179,   180,   181,   182,   183,   184,   185,   186,   187,   188,
2151       187,   188,   189,   190,   191,   192,   193,   194,   195,   196,       189,   190,   191,   192,   193,   194,   195,   196,   197,   198,
2152       197,   198,   199,   200,   201,   202,   203,   204,   205,   206,       199,   200,   201,   202,   203,   204,   205,   206,   207,   208,
2153       207,   208,   209,   210,   211,   212,   213,   214,   215,   216,       209,   210,   211,   212,   213,   214,   215,   216,   217,   218,
2154       217,   218,   219,   220,   221,   222,   223,     3,     4,     5,       219,   220,   221
       -1,    -1,     8,     9,    10,    11,    12,    13,    14,    15,  
       16,    17,    18,    19,    20,    21,    22,    23,    24,    25,  
       26,    27,    28,    29,    30,    31,    32,    33,    34,    35,  
       36,    37,    38,    39,    40,    41,    42,    43,    44,    45,  
       46,    47,    48,    49,    50,    51,    52,    53,    54,    55,  
       56,    57,    58,    59,    60,    61,    62,    63,    64,    65,  
       66,    67,    68,    69,    70,    71,    72,    73,    74,    75,  
       76,    77,    78,    79,    80,    81,    82,    83,    84,    85,  
       86,    87,    88,    89,    90,    91,    92,    93,    94,    95,  
       96,    97,    98,    99,   100,   101,   102,   103,   104,   105,  
      106,   107,   108,   109,   110,   111,   112,   113,   114,   115,  
      116,   117,   118,   119,   120,   121,   122,   123,   124,   125,  
      126,   127,   128,   129,   130,   131,   132,   133,   134,   135,  
      136,   137,   138,   139,   140,   141,   142,   143,   144,   145,  
      146,   147,   148,   149,   150,   151,   152,   153,   154,   155,  
      156,   157,   158,   159,   160,   161,   162,   163,   164,   165,  
      166,   167,   168,   169,   170,   171,   172,   173,   174,   175,  
      176,   177,   178,   179,   180,   181,   182,   183,   184,   185,  
      186,   187,   188,   189,   190,   191,   192,   193,   194,   195,  
      196,   197,   198,   199,   200,   201,   202,   203,   204,   205,  
      206,   207,   208,   209,   210,   211,   212,   213,   214,   215,  
      216,   217,   218,   219,   220,   221,   222,   223  
2155  };  };
2156    
2157  /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing  /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
2158     symbol of state STATE-NUM.  */     symbol of state STATE-NUM.  */
2159  static const unsigned short int yystos[] =  static const yytype_uint16 yystos[] =
2160  {  {
2161         0,     1,     3,    21,    23,    24,    27,    32,    37,    38,         0,     1,     3,    19,    21,    22,    25,    30,    31,    35,
2162        39,    41,   228,   229,   230,   231,   270,   271,   272,   273,        36,    37,    39,   228,   229,   230,   231,   282,   283,   284,
2163       274,   275,   278,   279,   280,   281,   282,   320,   323,    24,       285,   286,   287,   288,   289,   290,   295,   296,   297,   298,
2164        38,    25,    25,    29,    35,    41,    25,    25,    41,    34,       299,   346,   350,    22,    30,    36,    23,    23,    27,    33,
2165         0,   225,   226,   268,   269,     3,     4,     5,     8,     9,        19,    39,    23,    23,    39,    32,     0,   225,   226,   280,
2166        10,    11,    12,    13,    14,    15,    16,    17,    18,    19,       281,     3,     4,     5,     6,     7,     8,     9,    10,    11,
2167        20,    21,    22,    23,    24,    25,    26,    27,    28,    29,        12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
2168        30,    31,    32,    33,    34,    35,    36,    37,    38,    39,        22,    23,    24,    25,    26,    27,    28,    29,    30,    31,
2169        40,    41,    42,    43,    44,    45,    46,    47,    48,    49,        32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
2170        50,    51,    52,    53,    54,    55,    56,    57,    58,    59,        42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
2171        60,    61,    62,    63,    64,    65,    66,    67,    68,    69,        52,    53,    54,    55,    56,    57,    58,    59,    60,    61,
2172        70,    71,    72,    73,    74,    75,    76,    77,    78,    79,        62,    63,    64,    65,    66,    67,    68,    69,    70,    71,
2173        80,    81,    82,    83,    84,    85,    86,    87,    88,    89,        72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
2174        90,    91,    92,    93,    94,    95,    96,    97,    98,    99,        82,    83,    84,    85,    86,    87,    88,    89,    90,    91,
2175       100,   101,   102,   103,   104,   105,   106,   107,   108,   109,        92,    93,    94,    95,    96,    97,    98,    99,   100,   101,
2176       110,   111,   112,   113,   114,   115,   116,   117,   118,   119,       102,   103,   104,   105,   106,   107,   108,   109,   110,   111,
2177       120,   121,   122,   123,   124,   125,   126,   127,   128,   129,       112,   113,   114,   115,   116,   117,   118,   119,   120,   121,
2178       130,   131,   132,   133,   134,   135,   136,   137,   138,   139,       122,   123,   124,   125,   126,   127,   128,   129,   130,   131,
2179       140,   141,   142,   143,   144,   145,   146,   147,   148,   149,       132,   133,   134,   135,   136,   137,   138,   139,   140,   141,
2180       150,   151,   152,   153,   154,   155,   156,   157,   158,   159,       142,   143,   144,   145,   146,   147,   148,   149,   150,   151,
2181       160,   161,   162,   163,   164,   165,   166,   167,   168,   169,       152,   153,   154,   155,   156,   157,   158,   159,   160,   161,
2182       170,   171,   172,   173,   174,   175,   176,   177,   178,   179,       162,   163,   164,   165,   166,   167,   168,   169,   170,   171,
2183       180,   181,   182,   183,   184,   185,   186,   187,   188,   189,       172,   173,   174,   175,   176,   177,   178,   179,   180,   181,
2184       190,   191,   192,   193,   194,   195,   196,   197,   198,   199,       182,   183,   184,   185,   186,   187,   188,   189,   190,   191,
2185       200,   201,   202,   203,   204,   205,   206,   207,   208,   209,       192,   193,   194,   195,   196,   197,   198,   199,   200,   201,
2186       210,   211,   212,   213,   214,   215,   216,   217,   218,   219,       202,   203,   204,   205,   206,   207,   208,   209,   210,   211,
2187       220,   221,   222,   223,   224,   259,   262,   263,   264,   267,       212,   213,   214,   215,   216,   217,   218,   219,   220,   221,
2188       267,   267,   267,   267,   267,   267,   267,   267,   267,   267,       224,   271,   274,   275,   276,   279,   279,   279,   279,   279,
2189       267,   267,    24,    25,    39,    40,    39,    21,    29,    33,       279,   279,   279,   279,   279,   279,   279,   279,   279,   279,
2190        39,    32,    40,    22,    39,   268,    11,    12,    13,    14,       279,    22,    23,    23,    37,    38,    37,    19,    34,    27,
2191        15,    16,    17,    18,    19,    20,   261,   262,   261,   261,        31,    37,    30,    38,    20,    31,    37,   280,     9,    10,
2192       261,   261,   261,   261,   261,   261,     3,    11,    12,    13,        11,    12,    13,    14,    15,    16,    17,    18,   273,   274,
2193        14,    15,    16,    17,    18,    19,    20,   264,    23,   283,       273,   273,   273,   273,   273,   273,   273,   273,     3,     9,
2194        21,    23,    25,    33,    39,   234,   283,   284,   285,   286,        10,    11,    12,    13,    14,    15,    16,    17,    18,   276,
2195       294,   296,   297,   298,   299,   300,   301,   303,   305,   306,        21,    31,   232,   300,   333,    19,    21,    23,    31,    37,
2196       307,   308,   309,   310,   314,    21,    33,   236,   297,   307,        38,   238,   300,   301,   302,   303,   310,   311,   313,   318,
2197       237,   297,   307,    21,    23,    33,   242,   284,   285,   286,       319,   320,   321,   322,   323,   325,   327,   328,   329,   330,
2198       296,   303,   306,    29,   238,   293,   294,   283,    21,    25,       331,   332,   333,   334,   335,   336,   340,    31,   235,   331,
2199        33,   235,   283,   295,   300,   304,   305,   322,    22,    23,       236,   331,    31,   242,   332,    19,    31,   240,   319,   329,
2200        33,    39,    42,   232,   288,   289,   290,   291,   292,   321,       243,   319,   329,    19,    21,    31,   248,   301,   302,   303,
2201       233,   288,   289,   290,   291,   292,   321,   259,   265,   267,       318,   325,   328,   332,   334,    27,   244,   312,   313,   237,
2202       283,    21,    40,    40,    24,    40,    35,    25,    25,    39,       300,   333,    19,    23,    31,   239,   300,   317,   322,   326,
2203        41,   262,    28,    41,    42,    28,    34,    29,    25,   267,       327,   333,   349,    20,    21,    31,    37,    38,    40,   233,
2204       267,   267,   267,   267,   267,   267,   267,   267,   267,   267,       305,   306,   307,   308,   309,   310,   347,   234,   305,   306,
2205       267,   267,    41,    29,   267,   267,   267,   267,    41,    28,       307,   308,   309,   310,   347,   271,   277,   279,   241,   300,
2206        29,    34,   267,   267,   267,    41,    23,    29,   267,   267,        19,    19,    38,    38,    22,    38,    33,    23,    23,    37,
2207       267,   267,   267,   267,    41,    28,    29,    40,    35,   259,        19,    39,   274,    26,    27,   279,    39,    40,    26,    32,
2208       267,   267,    40,    38,    42,    40,    23,    23,    22,    21,        27,    23,    33,   279,   279,   279,   279,   279,   279,   279,
2209        24,    21,    21,    27,    24,    38,    29,   287,   290,   291,       279,   279,   279,   279,   279,   279,   279,   279,   279,    27,
2210       292,   287,   287,   287,   287,   287,   287,   287,   287,   287,       279,   279,    27,   279,    39,    27,   279,   279,   279,   279,
2211       287,   287,   287,    24,    24,   259,   259,    12,    13,    14,        39,    26,    27,   279,    32,   279,   279,   279,   279,    39,
2212        15,    16,    17,    18,    19,    20,   263,   263,    24,    21,        21,    27,   279,   279,   279,   279,   279,   279,   279,    39,
2213        24,    39,     6,     7,    34,   243,   255,   266,   277,   244,        26,    27,    38,    33,    33,   271,   279,   279,    36,    38,
2214       254,   259,   252,   263,    24,    28,    24,    21,    33,    39,        36,    40,    38,    21,    21,    34,    20,    19,    22,   222,
2215        42,   239,   297,   301,   302,   307,   310,   311,   312,   313,       223,   266,   278,    22,    19,    19,    25,    22,    36,    38,
2216       315,   316,   317,   263,   263,   263,   263,   258,   259,   263,        27,   304,   307,   308,   309,   304,   304,   304,   304,   304,
2217        26,    21,    39,    38,    29,   252,    25,    35,    25,    40,       304,   304,   304,   304,   304,    10,    11,    12,    13,    14,
2218        38,    39,    34,    29,    29,    34,    29,    29,    42,    34,        15,    16,    17,    18,    19,   258,   275,   291,   304,   304,
2219       267,   267,   267,   267,   267,   267,   267,   267,   267,   267,       304,   304,    22,   258,   258,    22,   258,   291,    22,    22,
2220       267,   267,   267,   267,   267,    29,    29,   267,   267,    29,       271,   271,   275,   275,    22,    19,    22,   258,   291,    37,
2221        34,    29,    40,   265,   265,    35,   267,   267,   267,    29,        32,   249,   265,   278,   294,   250,   264,   271,   262,   275,
2222        35,    29,    41,    29,    41,    35,    35,   267,   267,   267,       258,   291,    22,    26,    22,    19,    31,    37,    40,   245,
2223       267,   267,   267,   267,   267,   267,   267,   267,   267,   267,       319,   323,   324,   329,   333,   336,   337,   338,   339,   341,
2224       267,   267,    26,    34,    23,    25,    23,    45,    29,    23,       342,   343,   275,   275,   275,   275,    32,   348,   270,   271,
2225        34,    35,    32,    34,    34,    91,    25,    26,   252,    22,       275,    24,    19,    37,    36,    38,    27,   262,    23,    33,
2226        36,   241,   318,   319,   252,   252,   254,   263,   259,   259,        23,    38,    36,    37,    32,    27,   277,   277,    27,    27,
2227       263,   263,   263,   263,   259,   259,   263,    35,    91,   240,        32,    27,    27,    40,    19,    32,   279,   279,   279,   279,
2228       259,   240,    35,    34,    91,    38,     6,     7,    34,   253,       279,   279,   279,   279,   279,   279,   279,   279,   279,   279,
2229       263,   255,   252,    35,    91,    24,    24,    40,    32,    32,        30,   279,   279,   279,    27,   279,   279,    27,    27,    27,
2230       252,   252,   252,   252,   252,   252,   252,   252,   252,   252,       279,   279,    27,    32,    27,    38,    33,   279,   279,   279,
2231       252,   259,   263,   259,   263,    25,    34,    25,    21,    25,        27,    33,    27,    39,    27,    39,    33,    33,   279,   279,
2232        22,    38,    25,    91,    21,    25,    25,    29,    38,    35,       279,   279,   279,   279,   279,   279,   279,   279,   279,   279,
2233        45,    25,   267,   267,   267,   267,   267,   267,   267,    91,       279,   279,   279,   279,    19,   279,    24,    32,    21,    23,
2234        29,   267,     4,    91,    25,    29,    41,    91,   267,   267,        19,    21,    43,    27,    21,    32,    89,   222,   223,    33,
2235        91,    29,    29,    29,    25,    35,    41,   267,   267,   267,        30,    32,    32,    89,    23,    30,    24,   262,    20,    34,
2236       267,   267,   267,   267,   267,   267,   267,   267,     4,   267,       247,   344,   345,   262,   262,   264,   275,   271,   271,   275,
2237         4,   267,    38,    25,    32,    33,    91,    25,    29,    32,       275,   275,   275,   271,   258,    30,   258,   271,   275,    89,
2238        35,    22,    32,    34,    40,    38,   252,   259,   263,   263,       259,   275,   259,    89,    33,    89,   246,   271,   246,    33,
2239       263,   259,   263,    35,    34,   259,     6,     7,     9,    10,        32,    89,    36,    32,   263,   275,   265,   262,    33,    89,
2240       256,   257,   259,   260,   261,   262,   263,    35,    32,    34,        22,    22,    38,    30,    30,   262,   262,   262,   262,   262,
2241        33,    33,   252,   253,    35,    34,    35,    91,    33,   245,       262,   262,   262,   262,   262,   262,   262,   271,   275,   271,
2242       263,   246,   263,   247,   259,   245,   248,   263,    21,   249,       275,    31,   258,    23,    32,    23,    19,    30,    23,    20,
2243       263,   276,   250,   259,   245,     9,    10,   251,   260,   263,        36,    23,    27,    89,    19,    23,    23,    27,    36,    89,
2244       258,   258,   256,   259,   256,   259,    91,    32,    32,    91,        33,    43,    23,   279,   279,   279,   279,   279,   279,   279,
2245        23,    22,    41,    32,    39,    36,    25,    23,   267,   267,       279,    27,   279,   279,    27,    89,    27,   279,     4,    89,
2246       267,   267,    41,    36,     4,   259,   259,   261,   261,     5,        23,    27,    39,    89,   279,   279,    89,    27,    27,    27,
2247         8,    41,    36,    25,    35,   267,    41,    36,    91,    29,        23,    33,    39,   279,   279,   279,   279,   279,   279,   279,
2248        25,   267,    32,   267,     4,     4,    26,    91,    21,    23,       279,   279,   279,   279,   279,     4,   279,     4,   279,    23,
2249        35,    25,    40,    25,    41,    39,    25,   240,   259,   259,       279,    36,    23,    30,    31,    89,    89,    23,    27,    30,
2250       240,    40,    41,   256,     6,     7,     8,     8,   257,   261,        32,    33,    20,    30,    32,    40,    38,    36,   262,   271,
2251        40,    41,    34,    24,   252,    40,    41,    35,    34,   246,       275,   275,   275,   271,   259,   275,    32,   260,   275,   260,
2252        32,   248,   256,   256,    29,    23,    29,    34,    35,    41,        32,    33,    32,   271,     7,     8,   268,   269,   271,   272,
2253        36,    91,    40,    34,    36,    40,   261,   261,    36,    40,       273,   274,   275,   278,    33,    30,    32,    31,    31,   262,
2254        40,    21,    36,    40,    41,    36,   267,    32,    35,    34,       263,    33,    32,    33,    89,    31,   252,   275,   253,   275,
2255        25,    41,    34,    41,    21,    25,    33,    91,    40,    41,       254,   271,   252,    22,    32,   258,   292,   293,   255,   275,
2256        91,    41,    91,    32,    41,    91,    40,    41,   249,    32,       256,   275,   291,   257,   271,   252,     7,     8,   261,   272,
2257        41,    26,    35,    34,    40,    40,    41,    34,    29,    24,       275,   270,   270,   268,   271,   268,   271,   266,    89,    30,
2258        36,    21,    40,    24,    40,    24,    40,    24,    36,    36,        30,    89,    40,    21,    20,    37,    39,    30,    37,    34,
2259        40,    34,    35,    41,    40,    91,    24,    27,    24,    25,        37,    33,    23,    21,   279,   279,   279,   279,   279,    37,
2260        38,    35,    27,    91,    25,    91,    25,    91,    25,    35,       279,    37,    39,    34,     4,   273,   273,     5,     6,    39,
2261        41,    91,    40,    39,    23,    24,    29,    29,    29,    42,        34,    37,    23,    33,   279,    39,    34,    89,    27,    23,
2262        29,    38,    25,    24,    42,    24,    42,    23,    24,    42,       279,    23,    33,   279,     4,     4,    24,    89,    19,    21,
2263        38,    40,    23,    36,    40,    28,    25,    38,    35,    34,        33,    33,    23,    38,    38,    23,    39,    38,    27,    37,
2264        91,    29,    42,    40,    25,    29,    25,    29,    28,    25,        23,   246,   271,   271,   246,   260,    38,   264,    38,    38,
2265        29,    40,    91,    28,    35,    45,    21,    42,    29,    91,        39,   268,     6,     6,   269,   273,    38,    39,    38,    32,
2266        25,    29,    23,    25,    91,    42,    23,    42,    23,    21,        22,   262,    38,    39,    33,    32,   253,    24,    32,   255,
2267        42,    23,    23,    40,    21,    38,    36,    34,    29,    42,       268,   268,    27,    21,    27,    32,    33,    27,    39,    36,
2268        35,    39,    34,    25,    38,    36,    29,    25,    29,    25,        34,    89,    38,    36,    21,    32,    36,   279,    36,    34,
2269        34,    29,    25,    28,    45,    34,    40,    25,    34,    23,        38,   273,   273,    34,    38,    36,    38,    19,    34,    38,
2270        25,    41,    36,    39,    91,    21,    23,    23,    34,    23,        39,    34,    19,    23,   279,    30,    33,    32,    23,    39,
2271        91,    21,    36,    34,    25,    25,    38,    40,    41,    36,        21,    32,    39,    39,    19,    23,    31,    89,    39,    23,
2272        38,    25,    25,    25,    25,    36,    34,    25,    25,    32,        38,    39,   265,    39,    39,    89,    39,    89,    39,    30,
2273        39,    91,    36,    40,    21,    21,    32,    91,    21,    34,        39,    89,    38,    39,    39,   256,    30,    39,    24,    33,
2274        32,    91,    36,    41,    91,    38,    33,    36,    38,    25,        32,    23,    38,    31,    38,    39,    32,    27,    22,    34,
2275        36,    21,    40,    24,    21,    25,    21,    21,    32,    21,        31,    89,    19,    31,   279,    31,    38,    22,    38,    22,
2276        38,    91,    38,    33,    40,    38,    33,    38,    21,    24,        31,    38,    22,    34,    34,    38,    30,    32,    33,    39,
2277        29,    25,    25,    21,    25,    21,    33,    38,    42,    40,        38,    89,    23,    89,    22,    25,    22,    23,    36,    33,
2278        38,    33,    40,    33,    25,    29,    25,    25,    25,    25,        23,    21,    25,    23,   263,    23,    89,    23,    89,    23,
2279        25,    40,    42,    38,    38,    40,    38,    40,    25,    25,        23,    89,    23,    33,    39,    89,    38,    38,    37,    21,
2280        39,    25,    25,    38,    38,    38,    38,    39        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    
 #if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__)  
 # define YYSIZE_T __SIZE_TYPE__  
 #endif  
 #if ! defined (YYSIZE_T) && defined (size_t)  
 # define YYSIZE_T size_t  
 #endif  
 #if ! defined (YYSIZE_T)  
 # if defined (__STDC__) || defined (__cplusplus)  
 #  include <stddef.h> /* INFRINGES ON USER NAME SPACE */  
 #  define YYSIZE_T size_t  
 # endif  
 #endif  
 #if ! defined (YYSIZE_T)  
 # define YYSIZE_T unsigned int  
 #endif  
   
2309  #define yyerrok         (yyerrstatus = 0)  #define yyerrok         (yyerrstatus = 0)
2310  #define yyclearin       (yychar = YYEMPTY)  #define yyclearin       (yychar = YYEMPTY)
2311  #define YYEMPTY         (-2)  #define YYEMPTY         (-2)
# Line 2104  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
# Line 2127  while (0) Line 2354  while (0)
2354  #ifndef YYLLOC_DEFAULT  #ifndef YYLLOC_DEFAULT
2355  # define YYLLOC_DEFAULT(Current, Rhs, N)                                \  # define YYLLOC_DEFAULT(Current, Rhs, N)                                \
2356      do                                                                  \      do                                                                  \
2357        if (N)                                                            \        if (YYID (N))                                                    \
2358          {                                                               \          {                                                               \
2359            (Current).first_line   = YYRHSLOC (Rhs, 1).first_line;        \            (Current).first_line   = YYRHSLOC (Rhs, 1).first_line;        \
2360            (Current).first_column = YYRHSLOC (Rhs, 1).first_column;      \            (Current).first_column = YYRHSLOC (Rhs, 1).first_column;      \
# Line 2141  while (0) Line 2368  while (0)
2368            (Current).first_column = (Current).last_column =              \            (Current).first_column = (Current).last_column =              \
2369              YYRHSLOC (Rhs, 0).last_column;                              \              YYRHSLOC (Rhs, 0).last_column;                              \
2370          }                                                               \          }                                                               \
2371      while (0)      while (YYID (0))
2372  #endif  #endif
2373    
2374    
# Line 2153  while (0) Line 2380  while (0)
2380  # if YYLTYPE_IS_TRIVIAL  # if YYLTYPE_IS_TRIVIAL
2381  #  define YY_LOCATION_PRINT(File, Loc)                  \  #  define YY_LOCATION_PRINT(File, Loc)                  \
2382       fprintf (File, "%d.%d-%d.%d",                      \       fprintf (File, "%d.%d-%d.%d",                      \
2383                (Loc).first_line, (Loc).first_column,     \                (Loc).first_line, (Loc).first_column,     \
2384                (Loc).last_line,  (Loc).last_column)                (Loc).last_line,  (Loc).last_column)
2385  # else  # else
2386  #  define YY_LOCATION_PRINT(File, Loc) ((void) 0)  #  define YY_LOCATION_PRINT(File, Loc) ((void) 0)
2387  # endif  # endif
# Line 2181  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 YY_SYMBOL_PRINT(Title, Type, Value, Location)          \  # define YY_SYMBOL_PRINT(Title, Type, Value, Location)                    \
2414  do {                                                            \  do {                                                                      \
2415    if (yydebug)                                                  \    if (yydebug)                                                            \
2416      {                                                           \      {                                                                     \
2417        YYFPRINTF (stderr, "%s ", Title);                         \        YYFPRINTF (stderr, "%s ", Title);                                   \
2418        yysymprint (stderr,                                       \        yy_symbol_print (stderr,                                            \
2419                    Type, Value); \                    Type, Value); \
2420        YYFPRINTF (stderr, "\n");                                 \        YYFPRINTF (stderr, "\n");                                           \
2421      }                                                           \      }                                                                     \
2422  } while (0)  } 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    
2458    /*--------------------------------.
2459    | Print this symbol on YYOUTPUT.  |
2460    `--------------------------------*/
2461    
2462    #if (defined __STDC__ || defined __C99__FUNC__ \
2463         || defined __cplusplus || defined _MSC_VER)
2464    static void
2465    yy_symbol_print (FILE *yyoutput, int yytype, const YYSTYPE * const yyvaluep)
2466    #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 2219  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.  */
# Line 2271  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    
2575  #ifndef YYMAXDEPTH  #ifndef YYMAXDEPTH
# Line 2283  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 2331  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      YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);      return 0;
2696    else    else
2697      YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);      {
2698          int yytype = YYTRANSLATE (yychar);
2699          YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]);
2700          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
2716          char *yyfmt;
2717          char const *yyf;
2718          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          if (yysize_overflow)
2763            return YYSIZE_MAXIMUM;
2764    
2765  # ifdef YYPRINT        if (yyresult)
2766    if (yytype < YYNTOKENS)          {
2767      YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);            /* Avoid sprintf, as that infringes on the user's name space.
2768  # endif               Don't have undefined behavior even if the translation
2769    switch (yytype)               produced a string with the wrong number of "%s"s.  */
2770      {            char *yyp = yyresult;
2771        default:            int yyi = 0;
2772          break;            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 (const char *yymsg, int yytype, YYSTYPE *yyvaluep)  yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep)
2801  #else  #else
# Line 2388  yydestruct (yymsg, yytype, yyvaluep) Line 2806  yydestruct (yymsg, yytype, yyvaluep)
2806      YYSTYPE *yyvaluep;      YYSTYPE *yyvaluep;
2807  #endif  #endif
2808  {  {
2809    /* Pacify ``unused variable'' warnings.  */    YYUSE (yyvaluep);
   (void) yyvaluep;  
2810    
2811    if (!yymsg)    if (!yymsg)
2812      yymsg = "Deleting";      yymsg = "Deleting";
# Line 2399  yydestruct (yymsg, yytype, yyvaluep) Line 2816  yydestruct (yymsg, yytype, yyvaluep)
2816      {      {
2817    
2818        default:        default:
2819          break;          break;
2820      }      }
2821  }  }
2822    
# Line 2407  yydestruct (yymsg, yytype, yyvaluep) Line 2824  yydestruct (yymsg, 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 2430  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 2456  YYSTYPE yylval; Line 2877  YYSTYPE yylval;
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    /* Look-ahead 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 2473  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 2493  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 2512  int yynerrs; Line 2939  int yynerrs;
2939    yyssp = yyss;    yyssp = yyss;
2940    yyvsp = yyvs;    yyvsp = yyvs;
2941    
   
   yyvsp[0] = yylval;  
   
2942    goto yysetstate;    goto yysetstate;
2943    
2944  /*------------------------------------------------------------.  /*------------------------------------------------------------.
# Line 2522  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 2536  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 2558  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 2603  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 look-ahead token if we need one and don't already have one.  */       look-ahead token if we need one and don't already have one.  */
 /* yyresume: */  
3031    
3032    /* First try to decide what to do without reference to look-ahead token.  */    /* First try to decide what to do without reference to look-ahead token.  */
   
3033    yyn = yypact[yystate];    yyn = yypact[yystate];
3034    if (yyn == YYPACT_NINF)    if (yyn == YYPACT_NINF)
3035      goto yydefault;      goto yydefault;
# Line 2650  yybackup: Line 3071  yybackup:
3071    if (yyn == YYFINAL)    if (yyn == YYFINAL)
3072      YYACCEPT;      YYACCEPT;
3073    
3074      /* Count tokens shifted since error; after three, turn off error
3075         status.  */
3076      if (yyerrstatus)
3077        yyerrstatus--;
3078    
3079    /* Shift the look-ahead token.  */    /* Shift the look-ahead token.  */
3080    YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);    YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
3081    
3082    /* Discard the token being shifted unless it is eof.  */    /* Discard the shifted token unless it is eof.  */
3083    if (yychar != YYEOF)    if (yychar != YYEOF)
3084      yychar = YYEMPTY;      yychar = YYEMPTY;
3085    
3086      yystate = yyn;
3087    *++yyvsp = yylval;    *++yyvsp = yylval;
3088    
   
   /* Count tokens shifted since error; after three, turn off error  
      status.  */  
   if (yyerrstatus)  
     yyerrstatus--;  
   
   yystate = yyn;  
3089    goto yynewstate;    goto yynewstate;
3090    
3091    
# Line 2701  yyreduce: Line 3121  yyreduce:
3121    switch (yyn)    switch (yyn)
3122      {      {
3123          case 4:          case 4:
3124  #line 94 "lscp.y"  #line 100 "lscp.y"
3125      { return LSCP_DONE; }      { return LSCP_DONE; }
3126      break;      break;
3127    
3128    case 5:    case 5:
3129  #line 95 "lscp.y"  #line 101 "lscp.y"
3130      { return LSCP_DONE; }      { return LSCP_DONE; }
3131      break;      break;
3132    
3133    case 6:    case 6:
3134  #line 96 "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 97 "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 107 "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 108 "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 109 "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 110 "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 111 "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 112 "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 113 "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 114 "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 115 "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 116 "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 117 "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 118 "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 119 "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 120 "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 123 "lscp.y"  #line 127 "lscp.y"
3215      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_channel_count); }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                }
3216      break;      break;
3217    
3218    case 28:    case 28:
3219  #line 124 "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 125 "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 126 "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 127 "lscp.y"  #line 133 "lscp.y"
3235      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_channel_info);  }      { (yyval.String) = LSCPSERVER->AddMidiInstrumentMap();                }
3236      break;      break;
3237    
3238    case 32:    case 32:
3239  #line 128 "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 131 "lscp.y"  #line 137 "lscp.y"
3245      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_channel_count); }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_channel_count);     }
3246      break;      break;
3247    
3248    case 34:    case 34:
3249  #line 132 "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 133 "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 134 "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 135 "lscp.y"  #line 141 "lscp.y"
3265      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_channel_info);  }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_channel_info);      }
3266      break;      break;
3267    
3268    case 38:    case 38:
3269  #line 136 "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 139 "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 140 "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 141 "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 142 "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 143 "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 144 "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 145 "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 146 "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 147 "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 148 "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 149 "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 150 "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 151 "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 152 "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 153 "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 154 "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 155 "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 156 "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 157 "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 158 "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 159 "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 160 "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 161 "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 162 "lscp.y"  #line 176 "lscp.y"
3390      { (yyval.String) = LSCPSERVER->GetServerInfo();                                }      { (yyval.String) = LSCPSERVER->GetAudioOutputDriverParameterInfo((yyvsp[(5) - (7)].String), (yyvsp[(7) - (7)].String));      }
3391      break;      break;
3392    
3393    case 63:    case 63:
3394  #line 165 "lscp.y"  #line 177 "lscp.y"
3395      { (yyval.String) = LSCPSERVER->SetAudioOutputDeviceParameter((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 166 "lscp.y"  #line 178 "lscp.y"
3400      { (yyval.String) = LSCPSERVER->SetAudioOutputChannelParameter((yyvsp[-6].Number), (yyvsp[-4].Number), (yyvsp[-2].String), (yyvsp[0].String)); }      { (yyval.String) = LSCPSERVER->GetAudioOutputDeviceCount();                    }
3401      break;      break;
3402    
3403    case 65:    case 65:
3404  #line 167 "lscp.y"  #line 179 "lscp.y"
3405      { (yyval.String) = LSCPSERVER->SetMidiInputDeviceParameter((yyvsp[-4].Number), (yyvsp[-2].String), (yyvsp[0].String));        }      { (yyval.String) = LSCPSERVER->GetMidiInputDeviceCount();                      }
3406      break;      break;
3407    
3408    case 66:    case 66:
3409  #line 168 "lscp.y"  #line 180 "lscp.y"
3410      { (yyval.String) = LSCPSERVER->SetMidiInputPortParameter((yyvsp[-6].Number), (yyvsp[-4].Number), (yyvsp[-2].String), (yyvsp[0].String));      }      { (yyval.String) = LSCPSERVER->GetAudioOutputDeviceInfo((yyvsp[(5) - (5)].Number));                   }
3411      break;      break;
3412    
3413    case 67:    case 67:
3414  #line 169 "lscp.y"  #line 181 "lscp.y"
3415      { (yyval.String) = (yyvsp[0].String);                                                         }      { (yyval.String) = LSCPSERVER->GetMidiInputDeviceInfo((yyvsp[(5) - (5)].Number));                     }
3416      break;      break;
3417    
3418    case 68:    case 68:
3419  #line 170 "lscp.y"  #line 182 "lscp.y"
3420      { (yyval.String) = LSCPSERVER->SetEcho((yyparse_param_t*) yyparse_param, (yyvsp[0].Dotnum));  }      { (yyval.String) = LSCPSERVER->GetMidiInputPortInfo((yyvsp[(5) - (7)].Number), (yyvsp[(7) - (7)].Number));                   }
3421      break;      break;
3422    
3423    case 69:    case 69:
3424  #line 173 "lscp.y"  #line 183 "lscp.y"
3425      { (yyval.String) = LSCPSERVER->CreateAudioOutputDevice((yyvsp[-2].String),(yyvsp[0].KeyValList)); }      { (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 174 "lscp.y"  #line 184 "lscp.y"
3430      { (yyval.String) = LSCPSERVER->CreateAudioOutputDevice((yyvsp[0].String));    }      { (yyval.String) = LSCPSERVER->GetAudioOutputChannelInfo((yyvsp[(5) - (7)].Number), (yyvsp[(7) - (7)].Number));              }
3431      break;      break;
3432    
3433    case 71:    case 71:
3434  #line 175 "lscp.y"  #line 185 "lscp.y"
3435      { (yyval.String) = LSCPSERVER->CreateMidiInputDevice((yyvsp[-2].String),(yyvsp[0].KeyValList));   }      { (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 176 "lscp.y"  #line 186 "lscp.y"
3440      { (yyval.String) = LSCPSERVER->CreateMidiInputDevice((yyvsp[0].String));      }      { (yyval.String) = LSCPSERVER->GetChannels();                                  }
3441      break;      break;
3442    
3443    case 73:    case 73:
3444  #line 179 "lscp.y"  #line 187 "lscp.y"
3445      { (yyval.String) = LSCPSERVER->DestroyAudioOutputDevice((yyvsp[0].Number)); }      { (yyval.String) = LSCPSERVER->GetChannelInfo((yyvsp[(5) - (5)].Number));                             }
3446      break;      break;
3447    
3448    case 74:    case 74:
3449  #line 180 "lscp.y"  #line 188 "lscp.y"
3450      { (yyval.String) = LSCPSERVER->DestroyMidiInputDevice((yyvsp[0].Number));   }      { (yyval.String) = LSCPSERVER->GetBufferFill((yyvsp[(5) - (7)].FillResponse), (yyvsp[(7) - (7)].Number));                          }
3451      break;      break;
3452    
3453    case 75:    case 75:
3454  #line 183 "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 184 "lscp.y"  #line 190 "lscp.y"
3460      { (yyval.String) = (yyvsp[0].String); }      { (yyval.String) = LSCPSERVER->GetVoiceCount((yyvsp[(5) - (5)].Number));                              }
3461      break;      break;
3462    
3463    case 77:    case 77:
3464  #line 187 "lscp.y"  #line 191 "lscp.y"
3465      { (yyval.String) = LSCPSERVER->SetAudioOutputDevice((yyvsp[0].Number), (yyvsp[-2].Number));      }      { (yyval.String) = LSCPSERVER->GetEngineInfo((yyvsp[(5) - (5)].String));                              }
3466      break;      break;
3467    
3468    case 78:    case 78:
3469  #line 188 "lscp.y"  #line 192 "lscp.y"
3470      { (yyval.String) = LSCPSERVER->SetAudioOutputChannel((yyvsp[-2].Number), (yyvsp[0].Number), (yyvsp[-4].Number)); }      { (yyval.String) = LSCPSERVER->GetServerInfo();                                }
3471      break;      break;
3472    
3473    case 79:    case 79:
3474  #line 189 "lscp.y"  #line 193 "lscp.y"
3475      { (yyval.String) = LSCPSERVER->SetAudioOutputType((yyvsp[0].String), (yyvsp[-2].Number));        }      { (yyval.String) = LSCPSERVER->GetTotalVoiceCount();                                }
3476      break;      break;
3477    
3478    case 80:    case 80:
3479  #line 190 "lscp.y"  #line 194 "lscp.y"
3480      { (yyval.String) = LSCPSERVER->SetMIDIInput((yyvsp[-4].Number), (yyvsp[-2].Number), (yyvsp[0].Number), (yyvsp[-6].Number));      }      { (yyval.String) = LSCPSERVER->GetTotalVoiceCountMax();                        }
3481      break;      break;
3482    
3483    case 81:    case 81:
3484  #line 191 "lscp.y"  #line 195 "lscp.y"
3485      { (yyval.String) = LSCPSERVER->SetMIDIInputDevice((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 192 "lscp.y"  #line 196 "lscp.y"
3490      { (yyval.String) = LSCPSERVER->SetMIDIInputPort((yyvsp[0].Number), (yyvsp[-2].Number));          }      { (yyval.String) = LSCPSERVER->GetAllMidiInstrumentMappings();                 }
3491      break;      break;
3492    
3493    case 83:    case 83:
3494  #line 193 "lscp.y"  #line 197 "lscp.y"
3495      { (yyval.String) = LSCPSERVER->SetMIDIInputChannel((yyvsp[0].Number), (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 194 "lscp.y"  #line 198 "lscp.y"
3500      { (yyval.String) = LSCPSERVER->SetMIDIInputType((yyvsp[0].String), (yyvsp[-2].Number));          }      { (yyval.String) = LSCPSERVER->GetMidiInstrumentMaps();                        }
3501      break;      break;
3502    
3503    case 85:    case 85:
3504  #line 195 "lscp.y"  #line 199 "lscp.y"
3505      { (yyval.String) = LSCPSERVER->SetVolume((yyvsp[0].Dotnum), (yyvsp[-2].Number));                 }      { (yyval.String) = LSCPSERVER->GetMidiInstrumentMap((yyvsp[(5) - (5)].Number));                       }
3506      break;      break;
3507    
3508    case 86:    case 86:
3509  #line 196 "lscp.y"  #line 202 "lscp.y"
3510      { (yyval.String) = LSCPSERVER->SetChannelMute((yyvsp[0].Dotnum), (yyvsp[-2].Number));            }      { (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 197 "lscp.y"  #line 203 "lscp.y"
3515      { (yyval.String) = LSCPSERVER->SetChannelSolo((yyvsp[0].Dotnum), (yyvsp[-2].Number));            }      { (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 200 "lscp.y"  #line 204 "lscp.y"
3520      { (yyval.KeyValList)[(yyvsp[-2].String)] = (yyvsp[0].String);          }      { (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 201 "lscp.y"  #line 205 "lscp.y"
3525      { (yyval.KeyValList) = (yyvsp[-4].KeyValList); (yyval.KeyValList)[(yyvsp[-2].String)] = (yyvsp[0].String); }      { (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 204 "lscp.y"  #line 206 "lscp.y"
3530      { (yyval.FillResponse) = fill_response_bytes;      }      { (yyval.String) = (yyvsp[(3) - (3)].String);                                                         }
3531      break;      break;
3532    
3533    case 91:    case 91:
3534  #line 205 "lscp.y"  #line 207 "lscp.y"
3535      { (yyval.FillResponse) = fill_response_percentage; }      { (yyval.String) = LSCPSERVER->SetMidiInstrumentMapName((yyvsp[(5) - (7)].Number), (yyvsp[(7) - (7)].String));               }
3536      break;      break;
3537    
3538    case 92:    case 92:
3539  #line 208 "lscp.y"  #line 208 "lscp.y"
3540      { (yyval.String) = LSCPSERVER->GetAudioOutputDevices();           }      { (yyval.String) = LSCPSERVER->SetEcho((yyparse_param_t*) yyparse_param, (yyvsp[(3) - (3)].Dotnum));  }
3541      break;      break;
3542    
3543    case 93:    case 93:
3544  #line 209 "lscp.y"  #line 211 "lscp.y"
3545      { (yyval.String) = LSCPSERVER->GetMidiInputDevices();             }      { (yyval.String) = LSCPSERVER->CreateAudioOutputDevice((yyvsp[(3) - (5)].String),(yyvsp[(5) - (5)].KeyValList)); }
3546      break;      break;
3547    
3548    case 94:    case 94:
3549  #line 210 "lscp.y"  #line 212 "lscp.y"
3550      { (yyval.String) = LSCPSERVER->ListChannels();                    }      { (yyval.String) = LSCPSERVER->CreateAudioOutputDevice((yyvsp[(3) - (3)].String));    }
3551      break;      break;
3552    
3553    case 95:    case 95:
3554  #line 211 "lscp.y"  #line 213 "lscp.y"
3555      { (yyval.String) = LSCPSERVER->ListAvailableEngines();            }      { (yyval.String) = LSCPSERVER->CreateMidiInputDevice((yyvsp[(3) - (5)].String),(yyvsp[(5) - (5)].KeyValList));   }
3556      break;      break;
3557    
3558    case 96:    case 96:
3559  #line 212 "lscp.y"  #line 214 "lscp.y"
3560      { (yyval.String) = LSCPSERVER->ListAvailableMidiInputDrivers();   }      { (yyval.String) = LSCPSERVER->CreateMidiInputDevice((yyvsp[(3) - (3)].String));      }
3561      break;      break;
3562    
3563    case 97:    case 97:
3564  #line 213 "lscp.y"  #line 217 "lscp.y"
3565      { (yyval.String) = LSCPSERVER->ListAvailableAudioOutputDrivers(); }      { (yyval.String) = LSCPSERVER->ResetChannel((yyvsp[(3) - (3)].Number)); }
3566      break;      break;
3567    
3568    case 98:    case 98:
3569  #line 216 "lscp.y"  #line 220 "lscp.y"
3570      { (yyval.String) = LSCPSERVER->LoadInstrument((yyvsp[-4].String), (yyvsp[-2].Number), (yyvsp[0].Number));       }      { (yyval.String) = LSCPSERVER->ClearMidiInstrumentMappings((yyvsp[(3) - (3)].Number));  }
3571      break;      break;
3572    
3573    case 99:    case 99:
3574  #line 217 "lscp.y"  #line 221 "lscp.y"
3575      { (yyval.String) = LSCPSERVER->LoadInstrument((yyvsp[-4].String), (yyvsp[-2].Number), (yyvsp[0].Number), true); }      { (yyval.String) = LSCPSERVER->ClearAllMidiInstrumentMappings(); }
3576      break;      break;
3577    
3578    case 100:    case 100:
3579  #line 220 "lscp.y"  #line 224 "lscp.y"
3580      { (yyval.String) = LSCPSERVER->SetEngineType((yyvsp[-2].String), (yyvsp[0].Number)); }      { (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"
3590        { (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;      break;
3607    
3608    case 106:    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"  #line 236 "lscp.y"
3620      { (yyval.Number) = 16; }      { (yyval.String) = LSCPSERVER->SetMIDIInputDevice((yyvsp[(5) - (5)].Number), (yyvsp[(3) - (5)].Number));        }
3621      break;      break;
3622    
3623    case 109:    case 109:
3624  #line 243 "lscp.y"  #line 237 "lscp.y"
3625      { (yyval.Dotnum) = (yyvsp[0].Number); }      { (yyval.String) = LSCPSERVER->SetMIDIInputPort((yyvsp[(5) - (5)].Number), (yyvsp[(3) - (5)].Number));          }
3626        break;
3627    
3628      case 110:
3629    #line 238 "lscp.y"
3630        { (yyval.String) = LSCPSERVER->SetMIDIInputChannel((yyvsp[(5) - (5)].Number), (yyvsp[(3) - (5)].Number));       }
3631        break;
3632    
3633      case 111:
3634    #line 239 "lscp.y"
3635        { (yyval.String) = LSCPSERVER->SetMIDIInputType((yyvsp[(5) - (5)].String), (yyvsp[(3) - (5)].Number));          }
3636        break;
3637    
3638      case 112:
3639    #line 240 "lscp.y"
3640        { (yyval.String) = LSCPSERVER->SetVolume((yyvsp[(5) - (5)].Dotnum), (yyvsp[(3) - (5)].Number));                 }
3641        break;
3642    
3643      case 113:
3644    #line 241 "lscp.y"
3645        { (yyval.String) = LSCPSERVER->SetChannelMute((yyvsp[(5) - (5)].Dotnum), (yyvsp[(3) - (5)].Number));            }
3646        break;
3647    
3648      case 114:
3649    #line 242 "lscp.y"
3650        { (yyval.String) = LSCPSERVER->SetChannelSolo((yyvsp[(5) - (5)].Dotnum), (yyvsp[(3) - (5)].Number));            }
3651      break;      break;
3652    
3653    case 115:    case 115:
3654  #line 259 "lscp.y"  #line 243 "lscp.y"
3655      { (yyval.String) = (yyvsp[-2].String) + "," + (yyvsp[0].String); }      { (yyval.String) = LSCPSERVER->SetChannelMap((yyvsp[(3) - (5)].Number), (yyvsp[(5) - (5)].Number));             }
3656        break;
3657    
3658      case 116:
3659    #line 244 "lscp.y"
3660        { (yyval.String) = LSCPSERVER->SetChannelMap((yyvsp[(3) - (5)].Number), -1);             }
3661      break;      break;
3662    
3663    case 117:    case 117:
3664  #line 263 "lscp.y"  #line 245 "lscp.y"
3665      { (yyval.String) = "\'" + (yyvsp[-1].String) + "\'"; }      { (yyval.String) = LSCPSERVER->SetChannelMap((yyvsp[(3) - (5)].Number), -2);             }
3666      break;      break;
3667    
3668    case 118:    case 118:
3669  #line 264 "lscp.y"  #line 248 "lscp.y"
3670      { (yyval.String) = "\"" + (yyvsp[-1].String) + "\""; }      { (yyval.KeyValList)[(yyvsp[(1) - (3)].String)] = (yyvsp[(3) - (3)].String);          }
3671      break;      break;
3672    
3673    case 119:    case 119:
3674  #line 265 "lscp.y"  #line 249 "lscp.y"
3675      { std::stringstream ss; ss << "\'" << (yyvsp[0].Number) << "\'"; (yyval.String) = ss.str(); }      { (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 266 "lscp.y"  #line 252 "lscp.y"
3680      { std::stringstream ss; ss << "\'" << (yyvsp[0].Dotnum) << "\'"; (yyval.String) = ss.str(); }      { (yyval.FillResponse) = fill_response_bytes;      }
3681      break;      break;
3682    
3683    case 121:    case 121:
3684  #line 274 "lscp.y"  #line 253 "lscp.y"
3685      { (yyval.Dotnum) = (yyvsp[0].Number); }      { (yyval.FillResponse) = fill_response_percentage; }
3686      break;      break;
3687    
3688    case 122:    case 122:
3689  #line 275 "lscp.y"  #line 256 "lscp.y"
3690      { (yyval.Dotnum) = -1; }      { (yyval.String) = LSCPSERVER->GetAudioOutputDevices();           }
3691      break;      break;
3692    
3693    case 123:    case 123:
3694  #line 278 "lscp.y"  #line 257 "lscp.y"
3695      { std::string s; s = (yyvsp[0].Char); (yyval.String) = s; }      { (yyval.String) = LSCPSERVER->GetMidiInputDevices();             }
3696      break;      break;
3697    
3698    case 124:    case 124:
3699  #line 279 "lscp.y"  #line 258 "lscp.y"
3700      { (yyval.String) = (yyvsp[-1].String) + (yyvsp[0].Char);                  }      { (yyval.String) = LSCPSERVER->ListChannels();                    }
3701      break;      break;
3702    
3703    case 125:    case 125:
3704  #line 282 "lscp.y"  #line 259 "lscp.y"
3705      { (yyval.Dotnum) = atof(String((yyvsp[-2].String) + "." + (yyvsp[0].String)).c_str());                         }      { (yyval.String) = LSCPSERVER->ListAvailableEngines();            }
3706      break;      break;
3707    
3708    case 126:    case 126:
3709  #line 283 "lscp.y"  #line 260 "lscp.y"
3710      { String s = "+"; s += (yyvsp[-2].String); s += "."; s += (yyvsp[0].String); (yyval.Dotnum) = atof(s.c_str()); }      { (yyval.String) = LSCPSERVER->ListAvailableMidiInputDrivers();   }
3711      break;      break;
3712    
3713    case 127:    case 127:
3714  #line 284 "lscp.y"  #line 261 "lscp.y"
3715      { (yyval.Dotnum) = atof(String("-" + (yyvsp[-2].String) + "." + (yyvsp[0].String)).c_str());                   }      { (yyval.String) = LSCPSERVER->ListAvailableAudioOutputDrivers(); }
3716      break;      break;
3717    
3718    case 128:    case 128:
3719  #line 288 "lscp.y"  #line 262 "lscp.y"
3720      { (yyval.String) = (yyvsp[0].Char);      }      { (yyval.String) = LSCPSERVER->ListMidiInstrumentMappings((yyvsp[(3) - (3)].Number));    }
3721      break;      break;
3722    
3723    case 129:    case 129:
3724  #line 289 "lscp.y"  #line 263 "lscp.y"
3725      { (yyval.String) = (yyvsp[-1].String) + (yyvsp[0].Char); }      { (yyval.String) = LSCPSERVER->ListAllMidiInstrumentMappings();   }
3726      break;      break;
3727    
3728    case 130:    case 130:
3729    #line 264 "lscp.y"
3730        { (yyval.String) = LSCPSERVER->ListMidiInstrumentMaps();          }
3731        break;
3732    
3733      case 131:
3734    #line 267 "lscp.y"
3735        { (yyval.String) = LSCPSERVER->LoadInstrument((yyvsp[(1) - (5)].String), (yyvsp[(3) - (5)].Number), (yyvsp[(5) - (5)].Number));       }
3736        break;
3737    
3738      case 132:
3739    #line 268 "lscp.y"
3740        { (yyval.String) = LSCPSERVER->LoadInstrument((yyvsp[(3) - (7)].String), (yyvsp[(5) - (7)].Number), (yyvsp[(7) - (7)].Number), true); }
3741        break;
3742    
3743      case 133:
3744    #line 271 "lscp.y"
3745        { (yyval.String) = LSCPSERVER->SetEngineType((yyvsp[(1) - (3)].String), (yyvsp[(3) - (3)].Number)); }
3746        break;
3747    
3748      case 134:
3749    #line 274 "lscp.y"
3750        { (yyval.LoadMode) = MidiInstrumentMapper::ON_DEMAND;      }
3751        break;
3752    
3753      case 135:
3754    #line 275 "lscp.y"
3755        { (yyval.LoadMode) = MidiInstrumentMapper::ON_DEMAND_HOLD; }
3756        break;
3757    
3758      case 136:
3759    #line 276 "lscp.y"
3760        { (yyval.LoadMode) = MidiInstrumentMapper::PERSISTENT;     }
3761        break;
3762    
3763      case 142:
3764  #line 292 "lscp.y"  #line 292 "lscp.y"
3765        { (yyval.Number) = 16; }
3766        break;
3767    
3768      case 148:
3769    #line 308 "lscp.y"
3770        { (yyval.Dotnum) = (yyvsp[(1) - (1)].Number); }
3771        break;
3772    
3773      case 156:
3774    #line 330 "lscp.y"
3775        { (yyval.String) = (yyvsp[(1) - (3)].String) + "," + (yyvsp[(3) - (3)].String); }
3776        break;
3777    
3778      case 159:
3779    #line 335 "lscp.y"
3780        { std::stringstream ss; ss << "\'" << (yyvsp[(1) - (1)].Number) << "\'"; (yyval.String) = ss.str(); }
3781        break;
3782    
3783      case 160:
3784    #line 336 "lscp.y"
3785        { std::stringstream ss; ss << "\'" << (yyvsp[(1) - (1)].Dotnum) << "\'"; (yyval.String) = ss.str(); }
3786        break;
3787    
3788      case 161:
3789    #line 344 "lscp.y"
3790        { (yyval.Dotnum) = (yyvsp[(1) - (1)].Number); }
3791        break;
3792    
3793      case 162:
3794    #line 345 "lscp.y"
3795        { (yyval.Dotnum) = -1; }
3796        break;
3797    
3798      case 163:
3799    #line 348 "lscp.y"
3800        { std::string s; s = (yyvsp[(1) - (1)].Char); (yyval.String) = s; }
3801        break;
3802    
3803      case 164:
3804    #line 349 "lscp.y"
3805        { (yyval.String) = (yyvsp[(1) - (2)].String) + (yyvsp[(2) - (2)].Char);                  }
3806        break;
3807    
3808      case 165:
3809    #line 352 "lscp.y"
3810        { (yyval.Dotnum) = atof(String((yyvsp[(1) - (3)].String) + "." + (yyvsp[(3) - (3)].String)).c_str());                         }
3811        break;
3812    
3813      case 166:
3814    #line 353 "lscp.y"
3815        { String s = "+"; s += (yyvsp[(2) - (4)].String); s += "."; s += (yyvsp[(4) - (4)].String); (yyval.Dotnum) = atof(s.c_str()); }
3816        break;
3817    
3818      case 167:
3819    #line 354 "lscp.y"
3820        { (yyval.Dotnum) = atof(String("-" + (yyvsp[(2) - (4)].String) + "." + (yyvsp[(4) - (4)].String)).c_str());                   }
3821        break;
3822    
3823      case 168:
3824    #line 358 "lscp.y"
3825        { (yyval.String) = (yyvsp[(1) - (1)].Char);      }
3826        break;
3827    
3828      case 169:
3829    #line 359 "lscp.y"
3830        { (yyval.String) = (yyvsp[(1) - (2)].String) + (yyvsp[(2) - (2)].Char); }
3831        break;
3832    
3833      case 170:
3834    #line 362 "lscp.y"
3835      { (yyval.Char) = '0'; }      { (yyval.Char) = '0'; }
3836      break;      break;
3837    
3838    case 131:    case 171:
3839  #line 293 "lscp.y"  #line 363 "lscp.y"
3840      { (yyval.Char) = '1'; }      { (yyval.Char) = '1'; }
3841      break;      break;
3842    
3843    case 132:    case 172:
3844  #line 294 "lscp.y"  #line 364 "lscp.y"
3845      { (yyval.Char) = '2'; }      { (yyval.Char) = '2'; }
3846      break;      break;
3847    
3848    case 133:    case 173:
3849  #line 295 "lscp.y"  #line 365 "lscp.y"
3850      { (yyval.Char) = '3'; }      { (yyval.Char) = '3'; }
3851      break;      break;
3852    
3853    case 134:    case 174:
3854  #line 296 "lscp.y"  #line 366 "lscp.y"
3855      { (yyval.Char) = '4'; }      { (yyval.Char) = '4'; }
3856      break;      break;
3857    
3858    case 135:    case 175:
3859  #line 297 "lscp.y"  #line 367 "lscp.y"
3860      { (yyval.Char) = '5'; }      { (yyval.Char) = '5'; }
3861      break;      break;
3862    
3863    case 136:    case 176:
3864  #line 298 "lscp.y"  #line 368 "lscp.y"
3865      { (yyval.Char) = '6'; }      { (yyval.Char) = '6'; }
3866      break;      break;
3867    
3868    case 137:    case 177:
3869  #line 299 "lscp.y"  #line 369 "lscp.y"
3870      { (yyval.Char) = '7'; }      { (yyval.Char) = '7'; }
3871      break;      break;
3872    
3873    case 138:    case 178:
3874  #line 300 "lscp.y"  #line 370 "lscp.y"
3875      { (yyval.Char) = '8'; }      { (yyval.Char) = '8'; }
3876      break;      break;
3877    
3878    case 139:    case 179:
3879  #line 301 "lscp.y"  #line 371 "lscp.y"
3880      { (yyval.Char) = '9'; }      { (yyval.Char) = '9'; }
3881      break;      break;
3882    
3883    case 140:    case 180:
3884  #line 304 "lscp.y"  #line 374 "lscp.y"
3885      { (yyval.Number) = atoi(String(1, (yyvsp[0].Char)).c_str());      }      { (yyval.Number) = atoi(String(1, (yyvsp[(1) - (1)].Char)).c_str());      }
3886      break;      break;
3887    
3888    case 141:    case 181:
3889  #line 305 "lscp.y"  #line 375 "lscp.y"
3890      { (yyval.Number) = atoi(String(String("1") + (yyvsp[0].String)).c_str()); }      { (yyval.Number) = atoi(String(String("1") + (yyvsp[(2) - (2)].String)).c_str()); }
3891      break;      break;
3892    
3893    case 142:    case 182:
3894  #line 306 "lscp.y"  #line 376 "lscp.y"
3895      { (yyval.Number) = atoi(String(String("2") + (yyvsp[0].String)).c_str()); }      { (yyval.Number) = atoi(String(String("2") + (yyvsp[(2) - (2)].String)).c_str()); }
3896      break;      break;
3897    
3898    case 143:    case 183:
3899  #line 307 "lscp.y"  #line 377 "lscp.y"
3900      { (yyval.Number) = atoi(String(String("3") + (yyvsp[0].String)).c_str()); }      { (yyval.Number) = atoi(String(String("3") + (yyvsp[(2) - (2)].String)).c_str()); }
3901      break;      break;
3902    
3903    case 144:    case 184:
3904  #line 308 "lscp.y"  #line 378 "lscp.y"
3905      { (yyval.Number) = atoi(String(String("4") + (yyvsp[0].String)).c_str()); }      { (yyval.Number) = atoi(String(String("4") + (yyvsp[(2) - (2)].String)).c_str()); }
3906      break;      break;
3907    
3908    case 145:    case 185:
3909  #line 309 "lscp.y"  #line 379 "lscp.y"
3910      { (yyval.Number) = atoi(String(String("5") + (yyvsp[0].String)).c_str()); }      { (yyval.Number) = atoi(String(String("5") + (yyvsp[(2) - (2)].String)).c_str()); }
3911      break;      break;
3912    
3913    case 146:    case 186:
3914  #line 310 "lscp.y"  #line 380 "lscp.y"
3915      { (yyval.Number) = atoi(String(String("6") + (yyvsp[0].String)).c_str()); }      { (yyval.Number) = atoi(String(String("6") + (yyvsp[(2) - (2)].String)).c_str()); }
3916      break;      break;
3917    
3918    case 147:    case 187:
3919  #line 311 "lscp.y"  #line 381 "lscp.y"
3920      { (yyval.Number) = atoi(String(String("7") + (yyvsp[0].String)).c_str()); }      { (yyval.Number) = atoi(String(String("7") + (yyvsp[(2) - (2)].String)).c_str()); }
3921      break;      break;
3922    
3923    case 148:    case 188:
3924  #line 312 "lscp.y"  #line 382 "lscp.y"
3925      { (yyval.Number) = atoi(String(String("8") + (yyvsp[0].String)).c_str()); }      { (yyval.Number) = atoi(String(String("8") + (yyvsp[(2) - (2)].String)).c_str()); }
3926      break;      break;
3927    
3928    case 149:    case 189:
3929  #line 313 "lscp.y"  #line 383 "lscp.y"
3930      { (yyval.Number) = atoi(String(String("9") + (yyvsp[0].String)).c_str()); }      { (yyval.Number) = atoi(String(String("9") + (yyvsp[(2) - (2)].String)).c_str()); }
3931      break;      break;
3932    
3933    case 150:    case 190:
3934  #line 315 "lscp.y"  #line 385 "lscp.y"
3935      { (yyval.Char) = 'A'; }      { (yyval.Char) = 'A'; }
3936      break;      break;
3937    
3938    case 151:    case 191:
3939  #line 315 "lscp.y"  #line 385 "lscp.y"
3940      { (yyval.Char) = 'B'; }      { (yyval.Char) = 'B'; }
3941      break;      break;
3942    
3943    case 152:    case 192:
3944  #line 315 "lscp.y"  #line 385 "lscp.y"
3945      { (yyval.Char) = 'C'; }      { (yyval.Char) = 'C'; }
3946      break;      break;
3947    
3948    case 153:    case 193:
3949  #line 315 "lscp.y"  #line 385 "lscp.y"
3950      { (yyval.Char) = 'D'; }      { (yyval.Char) = 'D'; }
3951      break;      break;
3952    
3953    case 154:    case 194:
3954  #line 315 "lscp.y"  #line 385 "lscp.y"
3955      { (yyval.Char) = 'E'; }      { (yyval.Char) = 'E'; }
3956      break;      break;
3957    
3958    case 155:    case 195:
3959  #line 315 "lscp.y"  #line 385 "lscp.y"
3960      { (yyval.Char) = 'F'; }      { (yyval.Char) = 'F'; }
3961      break;      break;
3962    
3963    case 156:    case 196:
3964  #line 315 "lscp.y"  #line 385 "lscp.y"
3965      { (yyval.Char) = 'G'; }      { (yyval.Char) = 'G'; }
3966      break;      break;
3967    
3968    case 157:    case 197:
3969  #line 315 "lscp.y"  #line 385 "lscp.y"
3970      { (yyval.Char) = 'H'; }      { (yyval.Char) = 'H'; }
3971      break;      break;
3972    
3973    case 158:    case 198:
3974  #line 315 "lscp.y"  #line 385 "lscp.y"
3975      { (yyval.Char) = 'I'; }      { (yyval.Char) = 'I'; }
3976      break;      break;
3977    
3978    case 159:    case 199:
3979  #line 315 "lscp.y"  #line 385 "lscp.y"
3980      { (yyval.Char) = 'J'; }      { (yyval.Char) = 'J'; }
3981      break;      break;
3982    
3983    case 160:    case 200:
3984  #line 315 "lscp.y"  #line 385 "lscp.y"
3985      { (yyval.Char) = 'K'; }      { (yyval.Char) = 'K'; }
3986      break;      break;
3987    
3988    case 161:    case 201:
3989  #line 315 "lscp.y"  #line 385 "lscp.y"
3990      { (yyval.Char) = 'L'; }      { (yyval.Char) = 'L'; }
3991      break;      break;
3992    
3993    case 162:    case 202:
3994  #line 315 "lscp.y"  #line 385 "lscp.y"
3995      { (yyval.Char) = 'M'; }      { (yyval.Char) = 'M'; }
3996      break;      break;
3997    
3998    case 163:    case 203:
3999  #line 315 "lscp.y"  #line 385 "lscp.y"
4000      { (yyval.Char) = 'N'; }      { (yyval.Char) = 'N'; }
4001      break;      break;
4002    
4003    case 164:    case 204:
4004  #line 315 "lscp.y"  #line 385 "lscp.y"
4005      { (yyval.Char) = 'O'; }      { (yyval.Char) = 'O'; }
4006      break;      break;
4007    
4008    case 165:    case 205:
4009  #line 315 "lscp.y"  #line 385 "lscp.y"
4010      { (yyval.Char) = 'P'; }      { (yyval.Char) = 'P'; }
4011      break;      break;
4012    
4013    case 166:    case 206:
4014  #line 315 "lscp.y"  #line 385 "lscp.y"
4015      { (yyval.Char) = 'Q'; }      { (yyval.Char) = 'Q'; }
4016      break;      break;
4017    
4018    case 167:    case 207:
4019  #line 315 "lscp.y"  #line 385 "lscp.y"
4020      { (yyval.Char) = 'R'; }      { (yyval.Char) = 'R'; }
4021      break;      break;
4022    
4023    case 168:    case 208:
4024  #line 315 "lscp.y"  #line 385 "lscp.y"
4025      { (yyval.Char) = 'S'; }      { (yyval.Char) = 'S'; }
4026      break;      break;
4027    
4028    case 169:    case 209:
4029  #line 315 "lscp.y"  #line 385 "lscp.y"
4030      { (yyval.Char) = 'T'; }      { (yyval.Char) = 'T'; }
4031      break;      break;
4032    
4033    case 170:    case 210:
4034  #line 315 "lscp.y"  #line 385 "lscp.y"
4035      { (yyval.Char) = 'U'; }      { (yyval.Char) = 'U'; }
4036      break;      break;
4037    
4038    case 171:    case 211:
4039  #line 315 "lscp.y"  #line 385 "lscp.y"
4040      { (yyval.Char) = 'V'; }      { (yyval.Char) = 'V'; }
4041      break;      break;
4042    
4043    case 172:    case 212:
4044  #line 315 "lscp.y"  #line 385 "lscp.y"
4045      { (yyval.Char) = 'W'; }      { (yyval.Char) = 'W'; }
4046      break;      break;
4047    
4048    case 173:    case 213:
4049  #line 315 "lscp.y"  #line 385 "lscp.y"
4050      { (yyval.Char) = 'X'; }      { (yyval.Char) = 'X'; }
4051      break;      break;
4052    
4053    case 174:    case 214:
4054  #line 315 "lscp.y"  #line 385 "lscp.y"
4055      { (yyval.Char) = 'Y'; }      { (yyval.Char) = 'Y'; }
4056      break;      break;
4057    
4058    case 175:    case 215:
4059  #line 315 "lscp.y"  #line 385 "lscp.y"
4060      { (yyval.Char) = 'Z'; }      { (yyval.Char) = 'Z'; }
4061      break;      break;
4062    
4063    case 176:    case 216:
4064  #line 316 "lscp.y"  #line 386 "lscp.y"
4065      { (yyval.Char) = 'a'; }      { (yyval.Char) = 'a'; }
4066      break;      break;
4067    
4068    case 177:    case 217:
4069  #line 316 "lscp.y"  #line 386 "lscp.y"
4070      { (yyval.Char) = 'b'; }      { (yyval.Char) = 'b'; }
4071      break;      break;
4072    
4073    case 178:    case 218:
4074  #line 316 "lscp.y"  #line 386 "lscp.y"
4075      { (yyval.Char) = 'c'; }      { (yyval.Char) = 'c'; }
4076      break;      break;
4077    
4078    case 179:    case 219:
4079  #line 316 "lscp.y"  #line 386 "lscp.y"
4080      { (yyval.Char) = 'd'; }      { (yyval.Char) = 'd'; }
4081      break;      break;
4082    
4083    case 180:    case 220:
4084  #line 316 "lscp.y"  #line 386 "lscp.y"
4085      { (yyval.Char) = 'e'; }      { (yyval.Char) = 'e'; }
4086      break;      break;
4087    
4088    case 181:    case 221:
4089  #line 316 "lscp.y"  #line 386 "lscp.y"
4090      { (yyval.Char) = 'f'; }      { (yyval.Char) = 'f'; }
4091      break;      break;
4092    
4093    case 182:    case 222:
4094  #line 316 "lscp.y"  #line 386 "lscp.y"
4095      { (yyval.Char) = 'g'; }      { (yyval.Char) = 'g'; }
4096      break;      break;
4097    
4098    case 183:    case 223:
4099  #line 316 "lscp.y"  #line 386 "lscp.y"
4100      { (yyval.Char) = 'h'; }      { (yyval.Char) = 'h'; }
4101      break;      break;
4102    
4103    case 184:    case 224:
4104  #line 316 "lscp.y"  #line 386 "lscp.y"
4105      { (yyval.Char) = 'i'; }      { (yyval.Char) = 'i'; }
4106      break;      break;
4107    
4108    case 185:    case 225:
4109  #line 316 "lscp.y"  #line 386 "lscp.y"
4110      { (yyval.Char) = 'j'; }      { (yyval.Char) = 'j'; }
4111      break;      break;
4112    
4113    case 186:    case 226:
4114  #line 316 "lscp.y"  #line 386 "lscp.y"
4115      { (yyval.Char) = 'k'; }      { (yyval.Char) = 'k'; }
4116      break;      break;
4117    
4118    case 187:    case 227:
4119  #line 316 "lscp.y"  #line 386 "lscp.y"
4120      { (yyval.Char) = 'l'; }      { (yyval.Char) = 'l'; }
4121      break;      break;
4122    
4123    case 188:    case 228:
4124  #line 316 "lscp.y"  #line 386 "lscp.y"
4125      { (yyval.Char) = 'm'; }      { (yyval.Char) = 'm'; }
4126      break;      break;
4127    
4128    case 189:    case 229:
4129  #line 316 "lscp.y"  #line 386 "lscp.y"
4130      { (yyval.Char) = 'n'; }      { (yyval.Char) = 'n'; }
4131      break;      break;
4132    
4133    case 190:    case 230:
4134  #line 316 "lscp.y"  #line 386 "lscp.y"
4135      { (yyval.Char) = 'o'; }      { (yyval.Char) = 'o'; }
4136      break;      break;
4137    
4138    case 191:    case 231:
4139  #line 316 "lscp.y"  #line 386 "lscp.y"
4140      { (yyval.Char) = 'p'; }      { (yyval.Char) = 'p'; }
4141      break;      break;
4142    
4143    case 192:    case 232:
4144  #line 316 "lscp.y"  #line 386 "lscp.y"
4145      { (yyval.Char) = 'q'; }      { (yyval.Char) = 'q'; }
4146      break;      break;
4147    
4148    case 193:    case 233:
4149  #line 316 "lscp.y"  #line 386 "lscp.y"
4150      { (yyval.Char) = 'r'; }      { (yyval.Char) = 'r'; }
4151      break;      break;
4152    
4153    case 194:    case 234:
4154  #line 316 "lscp.y"  #line 386 "lscp.y"
4155      { (yyval.Char) = 's'; }      { (yyval.Char) = 's'; }
4156      break;      break;
4157    
4158    case 195:    case 235:
4159  #line 316 "lscp.y"  #line 386 "lscp.y"
4160      { (yyval.Char) = 't'; }      { (yyval.Char) = 't'; }
4161      break;      break;
4162    
4163    case 196:    case 236:
4164  #line 316 "lscp.y"  #line 386 "lscp.y"
4165      { (yyval.Char) = 'u'; }      { (yyval.Char) = 'u'; }
4166      break;      break;
4167    
4168    case 197:    case 237:
4169  #line 316 "lscp.y"  #line 386 "lscp.y"
4170      { (yyval.Char) = 'v'; }      { (yyval.Char) = 'v'; }
4171      break;      break;
4172    
4173    case 198:    case 238:
4174  #line 316 "lscp.y"  #line 386 "lscp.y"
4175      { (yyval.Char) = 'w'; }      { (yyval.Char) = 'w'; }
4176      break;      break;
4177    
4178    case 199:    case 239:
4179  #line 316 "lscp.y"  #line 386 "lscp.y"
4180      { (yyval.Char) = 'x'; }      { (yyval.Char) = 'x'; }
4181      break;      break;
4182    
4183    case 200:    case 240:
4184  #line 316 "lscp.y"  #line 386 "lscp.y"
4185      { (yyval.Char) = 'y'; }      { (yyval.Char) = 'y'; }
4186      break;      break;
4187    
4188    case 201:    case 241:
4189  #line 316 "lscp.y"  #line 386 "lscp.y"
4190      { (yyval.Char) = 'z'; }      { (yyval.Char) = 'z'; }
4191      break;      break;
4192    
4193    case 202:    case 242:
4194  #line 317 "lscp.y"  #line 387 "lscp.y"
4195      { (yyval.Char) = '0'; }      { (yyval.Char) = '0'; }
4196      break;      break;
4197    
4198    case 203:    case 243:
4199  #line 317 "lscp.y"  #line 387 "lscp.y"
4200      { (yyval.Char) = '1'; }      { (yyval.Char) = '1'; }
4201      break;      break;
4202    
4203    case 204:    case 244:
4204  #line 317 "lscp.y"  #line 387 "lscp.y"
4205      { (yyval.Char) = '2'; }      { (yyval.Char) = '2'; }
4206      break;      break;
4207    
4208    case 205:    case 245:
4209  #line 317 "lscp.y"  #line 387 "lscp.y"
4210      { (yyval.Char) = '3'; }      { (yyval.Char) = '3'; }
4211      break;      break;
4212    
4213    case 206:    case 246:
4214  #line 317 "lscp.y"  #line 387 "lscp.y"
4215      { (yyval.Char) = '4'; }      { (yyval.Char) = '4'; }
4216      break;      break;
4217    
4218    case 207:    case 247:
4219  #line 317 "lscp.y"  #line 387 "lscp.y"
4220      { (yyval.Char) = '5'; }      { (yyval.Char) = '5'; }
4221      break;      break;
4222    
4223    case 208:    case 248:
4224  #line 317 "lscp.y"  #line 387 "lscp.y"
4225      { (yyval.Char) = '6'; }      { (yyval.Char) = '6'; }
4226      break;      break;
4227    
4228    case 209:    case 249:
4229  #line 317 "lscp.y"  #line 387 "lscp.y"
4230      { (yyval.Char) = '7'; }      { (yyval.Char) = '7'; }
4231      break;      break;
4232    
4233    case 210:    case 250:
4234  #line 317 "lscp.y"  #line 387 "lscp.y"
4235      { (yyval.Char) = '8'; }      { (yyval.Char) = '8'; }
4236      break;      break;
4237    
4238    case 211:    case 251:
4239  #line 317 "lscp.y"  #line 387 "lscp.y"
4240      { (yyval.Char) = '9'; }      { (yyval.Char) = '9'; }
4241      break;      break;
4242    
4243    case 212:    case 252:
4244  #line 318 "lscp.y"  #line 388 "lscp.y"
4245      { (yyval.Char) = '!'; }      { (yyval.Char) = '!'; }
4246      break;      break;
4247    
4248    case 213:    case 253:
4249  #line 318 "lscp.y"  #line 388 "lscp.y"
4250      { (yyval.Char) = '#'; }      { (yyval.Char) = '#'; }
4251      break;      break;
4252    
4253    case 214:    case 254:
4254  #line 318 "lscp.y"  #line 388 "lscp.y"
4255      { (yyval.Char) = '$'; }      { (yyval.Char) = '$'; }
4256      break;      break;
4257    
4258    case 215:    case 255:
4259  #line 318 "lscp.y"  #line 388 "lscp.y"
4260      { (yyval.Char) = '%'; }      { (yyval.Char) = '%'; }
4261      break;      break;
4262    
4263    case 216:    case 256:
4264  #line 318 "lscp.y"  #line 388 "lscp.y"
4265      { (yyval.Char) = '&'; }      { (yyval.Char) = '&'; }
4266      break;      break;
4267    
4268    case 217:    case 257:
4269  #line 318 "lscp.y"  #line 388 "lscp.y"
4270      { (yyval.Char) = '('; }      { (yyval.Char) = '('; }
4271      break;      break;
4272    
4273    case 218:    case 258:
4274  #line 318 "lscp.y"  #line 388 "lscp.y"
4275      { (yyval.Char) = ')'; }      { (yyval.Char) = ')'; }
4276      break;      break;
4277    
4278    case 219:    case 259:
4279  #line 318 "lscp.y"  #line 388 "lscp.y"
4280      { (yyval.Char) = '*'; }      { (yyval.Char) = '*'; }
4281      break;      break;
4282    
4283    case 220:    case 260:
4284  #line 318 "lscp.y"  #line 388 "lscp.y"
4285      { (yyval.Char) = '+'; }      { (yyval.Char) = '+'; }
4286      break;      break;
4287    
4288    case 221:    case 261:
4289  #line 318 "lscp.y"  #line 388 "lscp.y"
4290      { (yyval.Char) = '-'; }      { (yyval.Char) = '-'; }
4291      break;      break;
4292    
4293    case 222:    case 262:
4294  #line 318 "lscp.y"  #line 388 "lscp.y"
4295      { (yyval.Char) = '.'; }      { (yyval.Char) = '.'; }
4296      break;      break;
4297    
4298    case 223:    case 263:
4299  #line 318 "lscp.y"  #line 388 "lscp.y"
4300      { (yyval.Char) = ','; }      { (yyval.Char) = ','; }
4301      break;      break;
4302    
4303    case 224:    case 264:
4304  #line 318 "lscp.y"  #line 388 "lscp.y"
4305      { (yyval.Char) = '/'; }      { (yyval.Char) = '/'; }
4306      break;      break;
4307    
4308    case 225:    case 265:
4309  #line 319 "lscp.y"  #line 389 "lscp.y"
4310      { (yyval.Char) = ':'; }      { (yyval.Char) = ':'; }
4311      break;      break;
4312    
4313    case 226:    case 266:
4314  #line 319 "lscp.y"  #line 389 "lscp.y"
4315      { (yyval.Char) = ';'; }      { (yyval.Char) = ';'; }
4316      break;      break;
4317    
4318    case 227:    case 267:
4319  #line 319 "lscp.y"  #line 389 "lscp.y"
4320      { (yyval.Char) = '<'; }      { (yyval.Char) = '<'; }
4321      break;      break;
4322    
4323    case 228:    case 268:
4324  #line 319 "lscp.y"  #line 389 "lscp.y"
4325      { (yyval.Char) = '='; }      { (yyval.Char) = '='; }
4326      break;      break;
4327    
4328    case 229:    case 269:
4329  #line 319 "lscp.y"  #line 389 "lscp.y"
4330      { (yyval.Char) = '>'; }      { (yyval.Char) = '>'; }
4331      break;      break;
4332    
4333    case 230:    case 270:
4334  #line 319 "lscp.y"  #line 389 "lscp.y"
4335      { (yyval.Char) = '?'; }      { (yyval.Char) = '?'; }
4336      break;      break;
4337    
4338    case 231:    case 271:
4339  #line 319 "lscp.y"  #line 389 "lscp.y"
4340      { (yyval.Char) = '@'; }      { (yyval.Char) = '@'; }
4341      break;      break;
4342    
4343    case 232:    case 272:
4344  #line 320 "lscp.y"  #line 390 "lscp.y"
4345      { (yyval.Char) = '['; }      { (yyval.Char) = '['; }
4346      break;      break;
4347    
4348    case 233:    case 273:
4349  #line 320 "lscp.y"  #line 390 "lscp.y"
4350      { (yyval.Char) = '\\'; }      { (yyval.Char) = '\\'; }
4351      break;      break;
4352    
4353    case 234:    case 274:
4354  #line 320 "lscp.y"  #line 390 "lscp.y"
4355      { (yyval.Char) = ']'; }      { (yyval.Char) = ']'; }
4356      break;      break;
4357    
4358    case 235:    case 275:
4359  #line 320 "lscp.y"  #line 390 "lscp.y"
4360      { (yyval.Char) = '^'; }      { (yyval.Char) = '^'; }
4361      break;      break;
4362    
4363    case 236:    case 276:
4364  #line 320 "lscp.y"  #line 390 "lscp.y"
4365      { (yyval.Char) = '_'; }      { (yyval.Char) = '_'; }
4366      break;      break;
4367    
4368    case 237:    case 277:
4369  #line 321 "lscp.y"  #line 391 "lscp.y"
4370      { (yyval.Char) = '{'; }      { (yyval.Char) = '{'; }
4371      break;      break;
4372    
4373    case 238:    case 278:
4374  #line 321 "lscp.y"  #line 391 "lscp.y"
4375      { (yyval.Char) = '|'; }      { (yyval.Char) = '|'; }
4376      break;      break;
4377    
4378    case 239:    case 279:
4379  #line 321 "lscp.y"  #line 391 "lscp.y"
4380      { (yyval.Char) = '}'; }      { (yyval.Char) = '}'; }
4381      break;      break;
4382    
4383    case 240:    case 280:
4384  #line 321 "lscp.y"  #line 391 "lscp.y"
4385      { (yyval.Char) = '~'; }      { (yyval.Char) = '~'; }
4386      break;      break;
4387    
4388    case 241:    case 281:
4389  #line 322 "lscp.y"  #line 392 "lscp.y"
4390      { (yyval.Char) = '\200'; }      { (yyval.Char) = '\200'; }
4391      break;      break;
4392    
4393    case 242:    case 282:
4394  #line 322 "lscp.y"  #line 392 "lscp.y"
4395      { (yyval.Char) = '\201'; }      { (yyval.Char) = '\201'; }
4396      break;      break;
4397    
4398    case 243:    case 283:
4399  #line 322 "lscp.y"  #line 392 "lscp.y"
4400      { (yyval.Char) = '\202'; }      { (yyval.Char) = '\202'; }
4401      break;      break;
4402    
4403    case 244:    case 284:
4404  #line 323 "lscp.y"  #line 393 "lscp.y"
4405      { (yyval.Char) = '\203'; }      { (yyval.Char) = '\203'; }
4406      break;      break;
4407    
4408    case 245:    case 285:
4409  #line 323 "lscp.y"  #line 393 "lscp.y"
4410      { (yyval.Char) = '\204'; }      { (yyval.Char) = '\204'; }
4411      break;      break;
4412    
4413    case 246:    case 286:
4414  #line 323 "lscp.y"  #line 393 "lscp.y"
4415      { (yyval.Char) = '\205'; }      { (yyval.Char) = '\205'; }
4416      break;      break;
4417    
4418    case 247:    case 287:
4419  #line 324 "lscp.y"  #line 394 "lscp.y"
4420      { (yyval.Char) = '\206'; }      { (yyval.Char) = '\206'; }
4421      break;      break;
4422    
4423    case 248:    case 288:
4424  #line 324 "lscp.y"  #line 394 "lscp.y"
4425      { (yyval.Char) = '\207'; }      { (yyval.Char) = '\207'; }
4426      break;      break;
4427    
4428    case 249:    case 289:
4429  #line 324 "lscp.y"  #line 394 "lscp.y"
4430      { (yyval.Char) = '\210'; }      { (yyval.Char) = '\210'; }
4431      break;      break;
4432    
4433    case 250:    case 290:
4434  #line 325 "lscp.y"  #line 395 "lscp.y"
4435      { (yyval.Char) = '\211'; }      { (yyval.Char) = '\211'; }
4436      break;      break;
4437    
4438    case 251:    case 291:
4439  #line 325 "lscp.y"  #line 395 "lscp.y"
4440      { (yyval.Char) = '\212'; }      { (yyval.Char) = '\212'; }
4441      break;      break;
4442    
4443    case 252:    case 292:
4444  #line 325 "lscp.y"  #line 395 "lscp.y"
4445      { (yyval.Char) = '\213'; }      { (yyval.Char) = '\213'; }
4446      break;      break;
4447    
4448    case 253:    case 293:
4449  #line 326 "lscp.y"  #line 396 "lscp.y"
4450      { (yyval.Char) = '\214'; }      { (yyval.Char) = '\214'; }
4451      break;      break;
4452    
4453    case 254:    case 294:
4454  #line 326 "lscp.y"  #line 396 "lscp.y"
4455      { (yyval.Char) = '\215'; }      { (yyval.Char) = '\215'; }
4456      break;      break;
4457    
4458    case 255:    case 295:
4459  #line 326 "lscp.y"  #line 396 "lscp.y"
4460      { (yyval.Char) = '\216'; }      { (yyval.Char) = '\216'; }
4461      break;      break;
4462    
4463    case 256:    case 296:
4464  #line 327 "lscp.y"  #line 397 "lscp.y"
4465      { (yyval.Char) = '\217'; }      { (yyval.Char) = '\217'; }
4466      break;      break;
4467    
4468    case 257:    case 297:
4469  #line 327 "lscp.y"  #line 397 "lscp.y"
4470      { (yyval.Char) = '\220'; }      { (yyval.Char) = '\220'; }
4471      break;      break;
4472    
4473    case 258:    case 298:
4474  #line 327 "lscp.y"  #line 397 "lscp.y"
4475      { (yyval.Char) = '\221'; }      { (yyval.Char) = '\221'; }
4476      break;      break;
4477    
4478    case 259:    case 299:
4479  #line 328 "lscp.y"  #line 398 "lscp.y"
4480      { (yyval.Char) = '\222'; }      { (yyval.Char) = '\222'; }
4481      break;      break;
4482    
4483    case 260:    case 300:
4484  #line 328 "lscp.y"  #line 398 "lscp.y"
4485      { (yyval.Char) = '\223'; }      { (yyval.Char) = '\223'; }
4486      break;      break;
4487    
4488    case 261:    case 301:
4489  #line 328 "lscp.y"  #line 398 "lscp.y"
4490      { (yyval.Char) = '\224'; }      { (yyval.Char) = '\224'; }
4491      break;      break;
4492    
4493    case 262:    case 302:
4494  #line 329 "lscp.y"  #line 399 "lscp.y"
4495      { (yyval.Char) = '\225'; }      { (yyval.Char) = '\225'; }
4496      break;      break;
4497    
4498    case 263:    case 303:
4499  #line 329 "lscp.y"  #line 399 "lscp.y"
4500      { (yyval.Char) = '\226'; }      { (yyval.Char) = '\226'; }
4501      break;      break;
4502    
4503    case 264:    case 304:
4504  #line 329 "lscp.y"  #line 399 "lscp.y"
4505      { (yyval.Char) = '\227'; }      { (yyval.Char) = '\227'; }
4506      break;      break;
4507    
4508    case 265:    case 305:
4509  #line 330 "lscp.y"  #line 400 "lscp.y"
4510      { (yyval.Char) = '\230'; }      { (yyval.Char) = '\230'; }
4511      break;      break;
4512    
4513    case 266:    case 306:
4514  #line 330 "lscp.y"  #line 400 "lscp.y"
4515      { (yyval.Char) = '\231'; }      { (yyval.Char) = '\231'; }
4516      break;      break;
4517    
4518    case 267:    case 307:
4519  #line 330 "lscp.y"  #line 400 "lscp.y"
4520      { (yyval.Char) = '\232'; }      { (yyval.Char) = '\232'; }
4521      break;      break;
4522    
4523    case 268:    case 308:
4524  #line 331 "lscp.y"  #line 401 "lscp.y"
4525      { (yyval.Char) = '\233'; }      { (yyval.Char) = '\233'; }
4526      break;      break;
4527    
4528    case 269:    case 309:
4529  #line 331 "lscp.y"  #line 401 "lscp.y"
4530      { (yyval.Char) = '\234'; }      { (yyval.Char) = '\234'; }
4531      break;      break;
4532    
4533    case 270:    case 310:
4534  #line 331 "lscp.y"  #line 401 "lscp.y"
4535      { (yyval.Char) = '\235'; }      { (yyval.Char) = '\235'; }
4536      break;      break;
4537    
4538    case 271:    case 311:
4539  #line 332 "lscp.y"  #line 402 "lscp.y"
4540      { (yyval.Char) = '\236'; }      { (yyval.Char) = '\236'; }
4541      break;      break;
4542    
4543    case 272:    case 312:
4544  #line 332 "lscp.y"  #line 402 "lscp.y"
4545      { (yyval.Char) = '\237'; }      { (yyval.Char) = '\237'; }
4546      break;      break;
4547    
4548    case 273:    case 313:
4549  #line 332 "lscp.y"  #line 402 "lscp.y"
4550      { (yyval.Char) = '\240'; }      { (yyval.Char) = '\240'; }
4551      break;      break;
4552    
4553    case 274:    case 314:
4554  #line 333 "lscp.y"  #line 403 "lscp.y"
4555      { (yyval.Char) = '\241'; }      { (yyval.Char) = '\241'; }
4556      break;      break;
4557    
4558    case 275:    case 315:
4559  #line 333 "lscp.y"  #line 403 "lscp.y"
4560      { (yyval.Char) = '\242'; }      { (yyval.Char) = '\242'; }
4561      break;      break;
4562    
4563    case 276:    case 316:
4564  #line 333 "lscp.y"  #line 403 "lscp.y"
4565      { (yyval.Char) = '\243'; }      { (yyval.Char) = '\243'; }
4566      break;      break;
4567    
4568    case 277:    case 317:
4569  #line 334 "lscp.y"  #line 404 "lscp.y"
4570      { (yyval.Char) = '\244'; }      { (yyval.Char) = '\244'; }
4571      break;      break;
4572    
4573    case 278:    case 318:
4574  #line 334 "lscp.y"  #line 404 "lscp.y"
4575      { (yyval.Char) = '\245'; }      { (yyval.Char) = '\245'; }
4576      break;      break;
4577    
4578    case 279:    case 319:
4579  #line 334 "lscp.y"  #line 404 "lscp.y"
4580      { (yyval.Char) = '\246'; }      { (yyval.Char) = '\246'; }
4581      break;      break;
4582    
4583    case 280:    case 320:
4584  #line 335 "lscp.y"  #line 405 "lscp.y"
4585      { (yyval.Char) = '\247'; }      { (yyval.Char) = '\247'; }
4586      break;      break;
4587    
4588    case 281:    case 321:
4589  #line 335 "lscp.y"  #line 405 "lscp.y"
4590      { (yyval.Char) = '\250'; }      { (yyval.Char) = '\250'; }
4591      break;      break;
4592    
4593    case 282:    case 322:
4594  #line 335 "lscp.y"  #line 405 "lscp.y"
4595      { (yyval.Char) = '\251'; }      { (yyval.Char) = '\251'; }
4596      break;      break;
4597    
4598    case 283:    case 323:
4599  #line 336 "lscp.y"  #line 406 "lscp.y"
4600      { (yyval.Char) = '\252'; }      { (yyval.Char) = '\252'; }
4601      break;      break;
4602    
4603    case 284:    case 324:
4604  #line 336 "lscp.y"  #line 406 "lscp.y"
4605      { (yyval.Char) = '\253'; }      { (yyval.Char) = '\253'; }
4606      break;      break;
4607    
4608    case 285:    case 325:
4609  #line 336 "lscp.y"  #line 406 "lscp.y"
4610      { (yyval.Char) = '\254'; }      { (yyval.Char) = '\254'; }
4611      break;      break;
4612    
4613    case 286:    case 326:
4614  #line 337 "lscp.y"  #line 407 "lscp.y"
4615      { (yyval.Char) = '\255'; }      { (yyval.Char) = '\255'; }
4616      break;      break;
4617    
4618    case 287:    case 327:
4619  #line 337 "lscp.y"  #line 407 "lscp.y"
4620      { (yyval.Char) = '\256'; }      { (yyval.Char) = '\256'; }
4621      break;      break;
4622    
4623    case 288:    case 328:
4624  #line 337 "lscp.y"  #line 407 "lscp.y"
4625      { (yyval.Char) = '\257'; }      { (yyval.Char) = '\257'; }
4626      break;      break;
4627    
4628    case 289:    case 329:
4629  #line 338 "lscp.y"  #line 408 "lscp.y"
4630      { (yyval.Char) = '\260'; }      { (yyval.Char) = '\260'; }
4631      break;      break;
4632    
4633    case 290:    case 330:
4634  #line 338 "lscp.y"  #line 408 "lscp.y"
4635      { (yyval.Char) = '\261'; }      { (yyval.Char) = '\261'; }
4636      break;      break;
4637    
4638    case 291:    case 331:
4639  #line 338 "lscp.y"  #line 408 "lscp.y"
4640      { (yyval.Char) = '\262'; }      { (yyval.Char) = '\262'; }
4641      break;      break;
4642    
4643    case 292:    case 332:
4644  #line 339 "lscp.y"  #line 409 "lscp.y"
4645      { (yyval.Char) = '\263'; }      { (yyval.Char) = '\263'; }
4646      break;      break;
4647    
4648    case 293:    case 333:
4649  #line 339 "lscp.y"  #line 409 "lscp.y"
4650      { (yyval.Char) = '\264'; }      { (yyval.Char) = '\264'; }
4651      break;      break;
4652    
4653    case 294:    case 334:
4654  #line 339 "lscp.y"  #line 409 "lscp.y"
4655      { (yyval.Char) = '\265'; }      { (yyval.Char) = '\265'; }
4656      break;      break;
4657    
4658    case 295:    case 335:
4659  #line 340 "lscp.y"  #line 410 "lscp.y"
4660      { (yyval.Char) = '\266'; }      { (yyval.Char) = '\266'; }
4661      break;      break;
4662    
4663    case 296:    case 336:
4664  #line 340 "lscp.y"  #line 410 "lscp.y"
4665      { (yyval.Char) = '\267'; }      { (yyval.Char) = '\267'; }
4666      break;      break;
4667    
4668    case 297:    case 337:
4669  #line 340 "lscp.y"  #line 410 "lscp.y"
4670      { (yyval.Char) = '\270'; }      { (yyval.Char) = '\270'; }
4671      break;      break;
4672    
4673    case 298:    case 338:
4674  #line 341 "lscp.y"  #line 411 "lscp.y"
4675      { (yyval.Char) = '\271'; }      { (yyval.Char) = '\271'; }
4676      break;      break;
4677    
4678    case 299:    case 339:
4679  #line 341 "lscp.y"  #line 411 "lscp.y"
4680      { (yyval.Char) = '\272'; }      { (yyval.Char) = '\272'; }
4681      break;      break;
4682    
4683    case 300:    case 340:
4684  #line 341 "lscp.y"  #line 411 "lscp.y"
4685      { (yyval.Char) = '\273'; }      { (yyval.Char) = '\273'; }
4686      break;      break;
4687    
4688    case 301:    case 341:
4689  #line 342 "lscp.y"  #line 412 "lscp.y"
4690      { (yyval.Char) = '\274'; }      { (yyval.Char) = '\274'; }
4691      break;      break;
4692    
4693    case 302:    case 342:
4694  #line 342 "lscp.y"  #line 412 "lscp.y"
4695      { (yyval.Char) = '\275'; }      { (yyval.Char) = '\275'; }
4696      break;      break;
4697    
4698    case 303:    case 343:
4699  #line 342 "lscp.y"  #line 412 "lscp.y"
4700      { (yyval.Char) = '\276'; }      { (yyval.Char) = '\276'; }
4701      break;      break;
4702    
4703    case 304:    case 344:
4704  #line 343 "lscp.y"  #line 413 "lscp.y"
4705      { (yyval.Char) = '\277'; }      { (yyval.Char) = '\277'; }
4706      break;      break;
4707    
4708    case 305:    case 345:
4709  #line 343 "lscp.y"  #line 413 "lscp.y"
4710      { (yyval.Char) = '\300'; }      { (yyval.Char) = '\300'; }
4711      break;      break;
4712    
4713    case 306:    case 346:
4714  #line 343 "lscp.y"  #line 413 "lscp.y"
4715      { (yyval.Char) = '\301'; }      { (yyval.Char) = '\301'; }
4716      break;      break;
4717    
4718    case 307:    case 347:
4719  #line 344 "lscp.y"  #line 414 "lscp.y"
4720      { (yyval.Char) = '\302'; }      { (yyval.Char) = '\302'; }
4721      break;      break;
4722    
4723    case 308:    case 348:
4724  #line 344 "lscp.y"  #line 414 "lscp.y"
4725      { (yyval.Char) = '\303'; }      { (yyval.Char) = '\303'; }
4726      break;      break;
4727    
4728    case 309:    case 349:
4729  #line 344 "lscp.y"  #line 414 "lscp.y"
4730      { (yyval.Char) = '\304'; }      { (yyval.Char) = '\304'; }
4731      break;      break;
4732    
4733    case 310:    case 350:
4734  #line 345 "lscp.y"  #line 415 "lscp.y"
4735      { (yyval.Char) = '\305'; }      { (yyval.Char) = '\305'; }
4736      break;      break;
4737    
4738    case 311:    case 351:
4739  #line 345 "lscp.y"  #line 415 "lscp.y"
4740      { (yyval.Char) = '\306'; }      { (yyval.Char) = '\306'; }
4741      break;      break;
4742    
4743    case 312:    case 352:
4744  #line 345 "lscp.y"  #line 415 "lscp.y"
4745      { (yyval.Char) = '\307'; }      { (yyval.Char) = '\307'; }
4746      break;      break;
4747    
4748    case 313:    case 353:
4749  #line 346 "lscp.y"  #line 416 "lscp.y"
4750      { (yyval.Char) = '\310'; }      { (yyval.Char) = '\310'; }
4751      break;      break;
4752    
4753    case 314:    case 354:
4754  #line 346 "lscp.y"  #line 416 "lscp.y"
4755      { (yyval.Char) = '\311'; }      { (yyval.Char) = '\311'; }
4756      break;      break;
4757    
4758    case 315:    case 355:
4759  #line 346 "lscp.y"  #line 416 "lscp.y"
4760      { (yyval.Char) = '\312'; }      { (yyval.Char) = '\312'; }
4761      break;      break;
4762    
4763    case 316:    case 356:
4764  #line 347 "lscp.y"  #line 417 "lscp.y"
4765      { (yyval.Char) = '\313'; }      { (yyval.Char) = '\313'; }
4766      break;      break;
4767    
4768    case 317:    case 357:
4769  #line 347 "lscp.y"  #line 417 "lscp.y"
4770      { (yyval.Char) = '\314'; }      { (yyval.Char) = '\314'; }
4771      break;      break;
4772    
4773    case 318:    case 358:
4774  #line 347 "lscp.y"  #line 417 "lscp.y"
4775      { (yyval.Char) = '\315'; }      { (yyval.Char) = '\315'; }
4776      break;      break;
4777    
4778    case 319:    case 359:
4779  #line 348 "lscp.y"  #line 418 "lscp.y"
4780      { (yyval.Char) = '\316'; }      { (yyval.Char) = '\316'; }
4781      break;      break;
4782    
4783    case 320:    case 360:
4784  #line 348 "lscp.y"  #line 418 "lscp.y"
4785      { (yyval.Char) = '\317'; }      { (yyval.Char) = '\317'; }
4786      break;      break;
4787    
4788    case 321:    case 361:
4789  #line 348 "lscp.y"  #line 418 "lscp.y"
4790      { (yyval.Char) = '\320'; }      { (yyval.Char) = '\320'; }
4791      break;      break;
4792    
4793    case 322:    case 362:
4794  #line 349 "lscp.y"  #line 419 "lscp.y"
4795      { (yyval.Char) = '\321'; }      { (yyval.Char) = '\321'; }
4796      break;      break;
4797    
4798    case 323:    case 363:
4799  #line 349 "lscp.y"  #line 419 "lscp.y"
4800      { (yyval.Char) = '\322'; }      { (yyval.Char) = '\322'; }
4801      break;      break;
4802    
4803    case 324:    case 364:
4804  #line 349 "lscp.y"  #line 419 "lscp.y"
4805      { (yyval.Char) = '\323'; }      { (yyval.Char) = '\323'; }
4806      break;      break;
4807    
4808    case 325:    case 365:
4809  #line 350 "lscp.y"  #line 420 "lscp.y"
4810      { (yyval.Char) = '\324'; }      { (yyval.Char) = '\324'; }
4811      break;      break;
4812    
4813    case 326:    case 366:
4814  #line 350 "lscp.y"  #line 420 "lscp.y"
4815      { (yyval.Char) = '\325'; }      { (yyval.Char) = '\325'; }
4816      break;      break;
4817    
4818    case 327:    case 367:
4819  #line 350 "lscp.y"  #line 420 "lscp.y"
4820      { (yyval.Char) = '\326'; }      { (yyval.Char) = '\326'; }
4821      break;      break;
4822    
4823    case 328:    case 368:
4824  #line 351 "lscp.y"  #line 421 "lscp.y"
4825      { (yyval.Char) = '\327'; }      { (yyval.Char) = '\327'; }
4826      break;      break;
4827    
4828    case 329:    case 369:
4829  #line 351 "lscp.y"  #line 421 "lscp.y"
4830      { (yyval.Char) = '\330'; }      { (yyval.Char) = '\330'; }
4831      break;      break;
4832    
4833    case 330:    case 370:
4834  #line 351 "lscp.y"  #line 421 "lscp.y"
4835      { (yyval.Char) = '\331'; }      { (yyval.Char) = '\331'; }
4836      break;      break;
4837    
4838    case 331:    case 371:
4839  #line 352 "lscp.y"  #line 422 "lscp.y"
4840      { (yyval.Char) = '\332'; }      { (yyval.Char) = '\332'; }
4841      break;      break;
4842    
4843    case 332:    case 372:
4844  #line 352 "lscp.y"  #line 422 "lscp.y"
4845      { (yyval.Char) = '\333'; }      { (yyval.Char) = '\333'; }
4846      break;      break;
4847    
4848    case 333:    case 373:
4849  #line 352 "lscp.y"  #line 422 "lscp.y"
4850      { (yyval.Char) = '\334'; }      { (yyval.Char) = '\334'; }
4851      break;      break;
4852    
4853    case 334:    case 374:
4854  #line 353 "lscp.y"  #line 423 "lscp.y"
4855      { (yyval.Char) = '\335'; }      { (yyval.Char) = '\335'; }
4856      break;      break;
4857    
4858    case 335:    case 375:
4859  #line 353 "lscp.y"  #line 423 "lscp.y"
4860      { (yyval.Char) = '\336'; }      { (yyval.Char) = '\336'; }
4861      break;      break;
4862    
4863    case 336:    case 376:
4864  #line 353 "lscp.y"  #line 423 "lscp.y"
4865      { (yyval.Char) = '\337'; }      { (yyval.Char) = '\337'; }
4866      break;      break;
4867    
4868    case 337:    case 377:
4869  #line 354 "lscp.y"  #line 424 "lscp.y"
4870      { (yyval.Char) = '\340'; }      { (yyval.Char) = '\340'; }
4871      break;      break;
4872    
4873    case 338:    case 378:
4874  #line 354 "lscp.y"  #line 424 "lscp.y"
4875      { (yyval.Char) = '\341'; }      { (yyval.Char) = '\341'; }
4876      break;      break;
4877    
4878    case 339:    case 379:
4879  #line 354 "lscp.y"  #line 424 "lscp.y"
4880      { (yyval.Char) = '\342'; }      { (yyval.Char) = '\342'; }
4881      break;      break;
4882    
4883    case 340:    case 380:
4884  #line 355 "lscp.y"  #line 425 "lscp.y"
4885      { (yyval.Char) = '\343'; }      { (yyval.Char) = '\343'; }
4886      break;      break;
4887    
4888    case 341:    case 381:
4889  #line 355 "lscp.y"  #line 425 "lscp.y"
4890      { (yyval.Char) = '\344'; }      { (yyval.Char) = '\344'; }
4891      break;      break;
4892    
4893    case 342:    case 382:
4894  #line 355 "lscp.y"  #line 425 "lscp.y"
4895      { (yyval.Char) = '\345'; }      { (yyval.Char) = '\345'; }
4896      break;      break;
4897    
4898    case 343:    case 383:
4899  #line 356 "lscp.y"  #line 426 "lscp.y"
4900      { (yyval.Char) = '\346'; }      { (yyval.Char) = '\346'; }
4901      break;      break;
4902    
4903    case 344:    case 384:
4904  #line 356 "lscp.y"  #line 426 "lscp.y"
4905      { (yyval.Char) = '\347'; }      { (yyval.Char) = '\347'; }
4906      break;      break;
4907    
4908    case 345:    case 385:
4909  #line 356 "lscp.y"  #line 426 "lscp.y"
4910      { (yyval.Char) = '\350'; }      { (yyval.Char) = '\350'; }
4911      break;      break;
4912    
4913    case 346:    case 386:
4914  #line 357 "lscp.y"  #line 427 "lscp.y"
4915      { (yyval.Char) = '\351'; }      { (yyval.Char) = '\351'; }
4916      break;      break;
4917    
4918    case 347:    case 387:
4919  #line 357 "lscp.y"  #line 427 "lscp.y"
4920      { (yyval.Char) = '\352'; }      { (yyval.Char) = '\352'; }
4921      break;      break;
4922    
4923    case 348:    case 388:
4924  #line 357 "lscp.y"  #line 427 "lscp.y"
4925      { (yyval.Char) = '\353'; }      { (yyval.Char) = '\353'; }
4926      break;      break;
4927    
4928    case 349:    case 389:
4929  #line 358 "lscp.y"  #line 428 "lscp.y"
4930      { (yyval.Char) = '\354'; }      { (yyval.Char) = '\354'; }
4931      break;      break;
4932    
4933    case 350:    case 390:
4934  #line 358 "lscp.y"  #line 428 "lscp.y"
4935      { (yyval.Char) = '\355'; }      { (yyval.Char) = '\355'; }
4936      break;      break;
4937    
4938    case 351:    case 391:
4939  #line 358 "lscp.y"  #line 428 "lscp.y"
4940      { (yyval.Char) = '\356'; }      { (yyval.Char) = '\356'; }
4941      break;      break;
4942    
4943    case 352:    case 392:
4944  #line 359 "lscp.y"  #line 429 "lscp.y"
4945      { (yyval.Char) = '\357'; }      { (yyval.Char) = '\357'; }
4946      break;      break;
4947    
4948    case 353:    case 393:
4949  #line 359 "lscp.y"  #line 429 "lscp.y"
4950      { (yyval.Char) = '\360'; }      { (yyval.Char) = '\360'; }
4951      break;      break;
4952    
4953    case 354:    case 394:
4954  #line 359 "lscp.y"  #line 429 "lscp.y"
4955      { (yyval.Char) = '\361'; }      { (yyval.Char) = '\361'; }
4956      break;      break;
4957    
4958    case 355:    case 395:
4959  #line 360 "lscp.y"  #line 430 "lscp.y"
4960      { (yyval.Char) = '\362'; }      { (yyval.Char) = '\362'; }
4961      break;      break;
4962    
4963    case 356:    case 396:
4964  #line 360 "lscp.y"  #line 430 "lscp.y"
4965      { (yyval.Char) = '\363'; }      { (yyval.Char) = '\363'; }
4966      break;      break;
4967    
4968    case 357:    case 397:
4969  #line 360 "lscp.y"  #line 430 "lscp.y"
4970      { (yyval.Char) = '\364'; }      { (yyval.Char) = '\364'; }
4971      break;      break;
4972    
4973    case 358:    case 398:
4974  #line 361 "lscp.y"  #line 431 "lscp.y"
4975      { (yyval.Char) = '\365'; }      { (yyval.Char) = '\365'; }
4976      break;      break;
4977    
4978    case 359:    case 399:
4979  #line 361 "lscp.y"  #line 431 "lscp.y"
4980      { (yyval.Char) = '\366'; }      { (yyval.Char) = '\366'; }
4981      break;      break;
4982    
4983    case 360:    case 400:
4984  #line 361 "lscp.y"  #line 431 "lscp.y"
4985      { (yyval.Char) = '\367'; }      { (yyval.Char) = '\367'; }
4986      break;      break;
4987    
4988    case 361:    case 401:
4989  #line 362 "lscp.y"  #line 432 "lscp.y"
4990      { (yyval.Char) = '\370'; }      { (yyval.Char) = '\370'; }
4991      break;      break;
4992    
4993    case 362:    case 402:
4994  #line 362 "lscp.y"  #line 432 "lscp.y"
4995      { (yyval.Char) = '\371'; }      { (yyval.Char) = '\371'; }
4996      break;      break;
4997    
4998    case 363:    case 403:
4999  #line 362 "lscp.y"  #line 432 "lscp.y"
5000      { (yyval.Char) = '\372'; }      { (yyval.Char) = '\372'; }
5001      break;      break;
5002    
5003    case 364:    case 404:
5004  #line 363 "lscp.y"  #line 433 "lscp.y"
5005      { (yyval.Char) = '\373'; }      { (yyval.Char) = '\373'; }
5006      break;      break;
5007    
5008    case 365:    case 405:
5009  #line 363 "lscp.y"  #line 433 "lscp.y"
5010      { (yyval.Char) = '\374'; }      { (yyval.Char) = '\374'; }
5011      break;      break;
5012    
5013    case 366:    case 406:
5014  #line 363 "lscp.y"  #line 433 "lscp.y"
5015      { (yyval.Char) = '\375'; }      { (yyval.Char) = '\375'; }
5016      break;      break;
5017    
5018    case 367:    case 407:
5019  #line 364 "lscp.y"  #line 434 "lscp.y"
5020      { (yyval.Char) = '\376'; }      { (yyval.Char) = '\376'; }
5021      break;      break;
5022    
5023    case 368:    case 408:
5024  #line 364 "lscp.y"  #line 434 "lscp.y"
5025      { (yyval.Char) = '\377'; }      { (yyval.Char) = '\377'; }
5026      break;      break;
5027    
5028    case 369:    case 409:
5029  #line 367 "lscp.y"  #line 437 "lscp.y"
5030      { (yyval.String) = " ";      }      { (yyval.String) = " ";      }
5031      break;      break;
5032    
5033    case 371:    case 411:
5034  #line 369 "lscp.y"  #line 439 "lscp.y"
5035      { (yyval.String) = (yyvsp[-1].String) + " "; }      { (yyval.String) = (yyvsp[(1) - (2)].String) + " "; }
5036      break;      break;
5037    
5038    case 372:    case 412:
5039  #line 370 "lscp.y"  #line 440 "lscp.y"
5040      { (yyval.String) = (yyvsp[-1].String) + (yyvsp[0].String);  }      { (yyval.String) = (yyvsp[(1) - (2)].String) + (yyvsp[(2) - (2)].String);  }
5041      break;      break;
5042    
5043    case 373:    case 413:
5044  #line 373 "lscp.y"  #line 443 "lscp.y"
5045      { (yyval.String) = (yyvsp[-1].String); }      { (yyval.String) = (yyvsp[(2) - (3)].String); }
5046      break;      break;
5047    
5048    case 374:    case 414:
5049  #line 374 "lscp.y"  #line 444 "lscp.y"
5050      { (yyval.String) = (yyvsp[-1].String); }      { (yyval.String) = (yyvsp[(2) - (3)].String); }
5051      break;      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  /* Line 1037 of yacc.c.  */    YYPOPSTACK (yylen);
5061  #line 4468 "y.tab.c"    yylen = 0;
   
   yyvsp -= yylen;  
   yyssp -= yylen;  
   
   
5062    YY_STACK_PRINT (yyss, yyssp);    YY_STACK_PRINT (yyss, yyssp);
5063    
5064    *++yyvsp = yyval;    *++yyvsp = yyval;
# Line 4498  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    
# Line 4568  yyerrlab: Line 5132  yyerrlab:
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;  
                  yydestruct ("Error: popping",  
                              yystos[*yyssp], yyvsp);  
                }  
         }  
5140        else        else
5141          {          {
5142            yydestruct ("Error: discarding", yytoken, &yylval);            yydestruct ("Error: discarding",
5143                          yytoken, &yylval);
5144            yychar = YYEMPTY;            yychar = YYEMPTY;
5145          }          }
5146      }      }
# Line 4599  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 4637  yyerrlab1: Line 5195  yyerrlab1:
5195          YYABORT;          YYABORT;
5196    
5197    
5198        yydestruct ("Error: popping", 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 4649  yyerrlab1: Line 5208  yyerrlab1:
5208    *++yyvsp = yylval;    *++yyvsp = yylval;
5209    
5210    
5211    /* Shift the error token. */    /* Shift the error token.  */
5212    YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);    YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
5213    
5214    yystate = yyn;    yystate = yyn;
# Line 4667  yyacceptlab: Line 5226  yyacceptlab:
5226  | yyabortlab -- YYABORT comes here.  |  | yyabortlab -- YYABORT comes here.  |
5227  `-----------------------------------*/  `-----------------------------------*/
5228  yyabortlab:  yyabortlab:
   yydestruct ("Error: discarding lookahead",  
               yytoken, &yylval);  
   yychar = YYEMPTY;  
5229    yyresult = 1;    yyresult = 1;
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 551 "lscp.y"  #line 666 "lscp.y"
5269    
5270    
5271  /**  /**
# Line 4710  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.705  
changed lines
  Added in v.973

  ViewVC Help
Powered by ViewVC