/[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 225 by schoenebeck, Sun Aug 22 14:46:47 2004 UTC revision 826 by schoenebeck, Sun Jan 8 20:19:49 2006 UTC
# Line 1  Line 1 
1  /* A Bison parser, made by GNU Bison 1.875a.  */  /* A Bison parser, made by GNU Bison 2.1.  */
2    
3  /* Skeleton parser for Yacc-like parsing with Bison,  /* Skeleton parser for Yacc-like parsing with Bison,
4     Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.     Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
5    
6     This program is free software; you can redistribute it and/or modify     This program is free software; you can redistribute it and/or modify
7     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 15 
15    
16     You should have received a copy of the GNU General Public License     You should have received a copy of the GNU General Public License
17     along with this program; if not, write to the Free Software     along with this program; if not, write to the Free Software
18     Foundation, Inc., 59 Temple Place - Suite 330,     Foundation, Inc., 51 Franklin Street, Fifth Floor,
19     Boston, MA 02111-1307, USA.  */     Boston, MA 02110-1301, USA.  */
20    
21  /* As a special exception, when this file is copied by Bison into a  /* As a special exception, when this file is copied by Bison into a
22     Bison output file, you may use that output file without restriction.     Bison output file, you may use that output file without restriction.
# Line 36  Line 36 
36  /* Identify Bison output.  */  /* Identify Bison output.  */
37  #define YYBISON 1  #define YYBISON 1
38    
39    /* Bison version.  */
40    #define YYBISON_VERSION "2.1"
41    
42  /* Skeleton name.  */  /* Skeleton name.  */
43  #define YYSKELETON_NAME "yacc.c"  #define YYSKELETON_NAME "yacc.c"
44    
# Line 50  Line 53 
53    
54    
55    
56    
57  /* Copy the first part of user declarations.  */  /* Copy the first part of user declarations.  */
58  #line 26 "lscp.y"  #line 27 "lscp.y"
59    
60    
61  #include "lscpparser.h"  #include "lscpparser.h"
# Line 104  int yylex(YYSTYPE* yylval) { Line 108  int yylex(YYSTYPE* yylval) {
108  # define YYERROR_VERBOSE 0  # define YYERROR_VERBOSE 0
109  #endif  #endif
110    
111    /* Enabling the token table.  */
112    #ifndef YYTOKEN_TABLE
113    # define YYTOKEN_TABLE 0
114    #endif
115    
116  #if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)  #if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)
117  typedef int YYSTYPE;  typedef int YYSTYPE;
118  # define yystype YYSTYPE /* obsolescent; will be withdrawn */  # define yystype YYSTYPE /* obsolescent; will be withdrawn */
# Line 116  typedef int YYSTYPE; Line 125  typedef int YYSTYPE;
125  /* Copy the second part of user declarations.  */  /* Copy the second part of user declarations.  */
126    
127    
128  /* Line 214 of yacc.c.  */  /* Line 219 of yacc.c.  */
129  #line 121 "y.tab.c"  #line 130 "y.tab.c"
130    
131    #if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__)
132    # define YYSIZE_T __SIZE_TYPE__
133    #endif
134    #if ! defined (YYSIZE_T) && defined (size_t)
135    # define YYSIZE_T size_t
136    #endif
137    #if ! defined (YYSIZE_T) && (defined (__STDC__) || defined (__cplusplus))
138    # include <stddef.h> /* INFRINGES ON USER NAME SPACE */
139    # define YYSIZE_T size_t
140    #endif
141    #if ! defined (YYSIZE_T)
142    # define YYSIZE_T unsigned int
143    #endif
144    
145    #ifndef YY_
146    # if YYENABLE_NLS
147    #  if ENABLE_NLS
148    #   include <libintl.h> /* INFRINGES ON USER NAME SPACE */
149    #   define YY_(msgid) dgettext ("bison-runtime", msgid)
150    #  endif
151    # endif
152    # ifndef YY_
153    #  define YY_(msgid) msgid
154    # endif
155    #endif
156    
157  #if ! defined (yyoverflow) || YYERROR_VERBOSE  #if ! defined (yyoverflow) || YYERROR_VERBOSE
158    
159  /* The parser invokes alloca or malloc; define the necessary symbols.  */  /* The parser invokes alloca or malloc; define the necessary symbols.  */
160    
161  # if YYSTACK_USE_ALLOCA  # ifdef YYSTACK_USE_ALLOCA
162  #  define YYSTACK_ALLOC alloca  #  if YYSTACK_USE_ALLOCA
163  # else  #   ifdef __GNUC__
164  #  ifndef YYSTACK_USE_ALLOCA  #    define YYSTACK_ALLOC __builtin_alloca
 #   if defined (alloca) || defined (_ALLOCA_H)  
 #    define YYSTACK_ALLOC alloca  
165  #   else  #   else
166  #    ifdef __GNUC__  #    define YYSTACK_ALLOC alloca
167  #     define YYSTACK_ALLOC __builtin_alloca  #    if defined (__STDC__) || defined (__cplusplus)
168    #     include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
169    #     define YYINCLUDED_STDLIB_H
170  #    endif  #    endif
171  #   endif  #   endif
172  #  endif  #  endif
# Line 140  typedef int YYSTYPE; Line 175  typedef int YYSTYPE;
175  # ifdef YYSTACK_ALLOC  # ifdef YYSTACK_ALLOC
176     /* Pacify GCC's `empty if-body' warning. */     /* Pacify GCC's `empty if-body' warning. */
177  #  define YYSTACK_FREE(Ptr) do { /* empty */; } while (0)  #  define YYSTACK_FREE(Ptr) do { /* empty */; } while (0)
178    #  ifndef YYSTACK_ALLOC_MAXIMUM
179        /* The OS might guarantee only one guard page at the bottom of the stack,
180           and a page size can be as small as 4096 bytes.  So we cannot safely
181           invoke alloca (N) if N exceeds 4096.  Use a slightly smaller number
182           to allow for a few compiler-allocated temporary stack slots.  */
183    #   define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2005 */
184    #  endif
185  # else  # else
186  #  if defined (__STDC__) || defined (__cplusplus)  #  define YYSTACK_ALLOC YYMALLOC
187  #   include <stdlib.h> /* INFRINGES ON USER NAME SPACE */  #  define YYSTACK_FREE YYFREE
188  #   define YYSIZE_T size_t  #  ifndef YYSTACK_ALLOC_MAXIMUM
189    #   define YYSTACK_ALLOC_MAXIMUM ((YYSIZE_T) -1)
190    #  endif
191    #  ifdef __cplusplus
192    extern "C" {
193    #  endif
194    #  ifndef YYMALLOC
195    #   define YYMALLOC malloc
196    #   if (! defined (malloc) && ! defined (YYINCLUDED_STDLIB_H) \
197            && (defined (__STDC__) || defined (__cplusplus)))
198    void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
199    #   endif
200    #  endif
201    #  ifndef YYFREE
202    #   define YYFREE free
203    #   if (! defined (free) && ! defined (YYINCLUDED_STDLIB_H) \
204            && (defined (__STDC__) || defined (__cplusplus)))
205    void free (void *); /* INFRINGES ON USER NAME SPACE */
206    #   endif
207    #  endif
208    #  ifdef __cplusplus
209    }
210  #  endif  #  endif
 #  define YYSTACK_ALLOC malloc  
 #  define YYSTACK_FREE free  
211  # endif  # endif
212  #endif /* ! defined (yyoverflow) || YYERROR_VERBOSE */  #endif /* ! defined (yyoverflow) || YYERROR_VERBOSE */
213    
214    
215  #if (! defined (yyoverflow) \  #if (! defined (yyoverflow) \
216       && (! defined (__cplusplus) \       && (! defined (__cplusplus) \
217           || (YYSTYPE_IS_TRIVIAL)))           || (defined (YYSTYPE_IS_TRIVIAL) && YYSTYPE_IS_TRIVIAL)))
218    
219  /* A type that is properly aligned for any stack member.  */  /* A type that is properly aligned for any stack member.  */
220  union yyalloc  union yyalloc
221  {  {
222    short yyss;    short int yyss;
223    YYSTYPE yyvs;    YYSTYPE yyvs;
224    };    };
225    
# Line 168  union yyalloc Line 229  union yyalloc
229  /* 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
230     N elements.  */     N elements.  */
231  # define YYSTACK_BYTES(N) \  # define YYSTACK_BYTES(N) \
232       ((N) * (sizeof (short) + sizeof (YYSTYPE))                         \       ((N) * (sizeof (short int) + sizeof (YYSTYPE))                     \
233        + YYSTACK_GAP_MAXIMUM)        + YYSTACK_GAP_MAXIMUM)
234    
235  /* Copy COUNT objects from FROM to TO.  The source and destination do  /* Copy COUNT objects from FROM to TO.  The source and destination do
236     not overlap.  */     not overlap.  */
237  # ifndef YYCOPY  # ifndef YYCOPY
238  #  if 1 < __GNUC__  #  if defined (__GNUC__) && 1 < __GNUC__
239  #   define YYCOPY(To, From, Count) \  #   define YYCOPY(To, From, Count) \
240        __builtin_memcpy (To, From, (Count) * sizeof (*(From)))        __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
241  #  else  #  else
242  #   define YYCOPY(To, From, Count)              \  #   define YYCOPY(To, From, Count)              \
243        do                                        \        do                                        \
244          {                                       \          {                                       \
245            register YYSIZE_T yyi;                \            YYSIZE_T yyi;                         \
246            for (yyi = 0; yyi < (Count); yyi++)   \            for (yyi = 0; yyi < (Count); yyi++)   \
247              (To)[yyi] = (From)[yyi];            \              (To)[yyi] = (From)[yyi];            \
248          }                                       \          }                                       \
# Line 210  union yyalloc Line 271  union yyalloc
271  #if defined (__STDC__) || defined (__cplusplus)  #if defined (__STDC__) || defined (__cplusplus)
272     typedef signed char yysigned_char;     typedef signed char yysigned_char;
273  #else  #else
274     typedef short yysigned_char;     typedef short int yysigned_char;
275  #endif  #endif
276    
277  /* YYFINAL -- State number of the termination state. */  /* YYFINAL -- State number of the termination state. */
278  #define YYFINAL  39  #define YYFINAL  40
279  /* YYLAST -- Last index in YYTABLE.  */  /* YYLAST -- Last index in YYTABLE.  */
280  #define YYLAST   3976  #define YYLAST   4080
281    
282  /* YYNTOKENS -- Number of terminals. */  /* YYNTOKENS -- Number of terminals. */
283  #define YYNTOKENS  226  #define YYNTOKENS  227
284  /* YYNNTS -- Number of nonterminals. */  /* YYNNTS -- Number of nonterminals. */
285  #define YYNNTS  89  #define YYNNTS  99
286  /* YYNRULES -- Number of rules. */  /* YYNRULES -- Number of rules. */
287  #define YYNRULES  412  #define YYNRULES  436
288  /* YYNRULES -- Number of states. */  /* YYNRULES -- Number of states. */
289  #define YYNSTATES  1132  #define YYNSTATES  1235
290    
291  /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX.  */  /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX.  */
292  #define YYUNDEFTOK  2  #define YYUNDEFTOK  2
293  #define YYMAXUTOK   257  #define YYMAXUTOK   257
294    
295  #define YYTRANSLATE(YYX)                                                \  #define YYTRANSLATE(YYX)                                                \
296    ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)    ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
297    
298  /* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX.  */  /* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX.  */
299  static const unsigned char yytranslate[] =  static const unsigned char yytranslate[] =
300  {  {
301         0,     2,     2,     2,     2,     2,     2,     2,     2,     2,         0,     2,     2,     2,     2,     2,     2,     2,     2,     2,
302       224,     2,     2,   225,     2,     2,     2,     2,     2,     2,       225,     2,     2,   226,     2,     2,     2,     2,     2,     2,
303         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,         2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
304         2,     2,   223,    70,   222,     3,    71,    72,    73,   221,         2,     2,   224,    71,   223,     3,    72,    73,    74,   222,
305        74,    75,    76,     6,     2,     7,     5,    77,     8,     9,        75,    76,    77,     7,     5,     8,     6,    78,     9,    10,
306        10,    11,    12,    13,    14,    15,    16,    17,    78,    79,        11,    12,    13,    14,    15,    16,    17,    18,    79,    80,
307        80,     4,    81,    82,    83,    18,    19,    20,    21,    22,        81,     4,    82,    83,    84,    19,    20,    21,    22,    23,
308        23,    24,    25,    26,    27,    28,    29,    30,    31,    32,        24,    25,    26,    27,    28,    29,    30,    31,    32,    33,
309        33,    34,    35,    36,    37,    38,    39,    40,    41,    42,        34,    35,    36,    37,    38,    39,    40,    41,    42,    43,
310        43,    84,    85,    86,    87,    88,     2,    44,    45,    46,        44,    85,    86,    87,    88,    89,     2,    45,    46,    47,
311        47,    48,    49,    50,    51,    52,    53,    54,    55,    56,        48,    49,    50,    51,    52,    53,    54,    55,    56,    57,
312        57,    58,    59,    60,    61,    62,    63,    64,    65,    66,        58,    59,    60,    61,    62,    63,    64,    65,    66,    67,
313        67,    68,    69,    89,    90,    91,    92,     2,    93,    94,        68,    69,    70,    90,    91,    92,    93,     2,    94,    95,
314        95,    96,    97,    98,    99,   100,   101,   102,   103,   104,        96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
315       105,   106,   107,   108,   109,   110,   111,   112,   113,   114,       106,   107,   108,   109,   110,   111,   112,   113,   114,   115,
316       115,   116,   117,   118,   119,   120,   121,   122,   123,   124,       116,   117,   118,   119,   120,   121,   122,   123,   124,   125,
317       125,   126,   127,   128,   129,   130,   131,   132,   133,   134,       126,   127,   128,   129,   130,   131,   132,   133,   134,   135,
318       135,   136,   137,   138,   139,   140,   141,   142,   143,   144,       136,   137,   138,   139,   140,   141,   142,   143,   144,   145,
319       145,   146,   147,   148,   149,   150,   151,   152,   153,   154,       146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
320       155,   156,   157,   158,   159,   160,   161,   162,   163,   164,       156,   157,   158,   159,   160,   161,   162,   163,   164,   165,
321       165,   166,   167,   168,   169,   170,   171,   172,   173,   174,       166,   167,   168,   169,   170,   171,   172,   173,   174,   175,
322       175,   176,   177,   178,   179,   180,   181,   182,   183,   184,       176,   177,   178,   179,   180,   181,   182,   183,   184,   185,
323       185,   186,   187,   188,   189,   190,   191,   192,   193,   194,       186,   187,   188,   189,   190,   191,   192,   193,   194,   195,
324       195,   196,   197,   198,   199,   200,   201,   202,   203,   204,       196,   197,   198,   199,   200,   201,   202,   203,   204,   205,
325       205,   206,   207,   208,   209,   210,   211,   212,   213,   214,       206,   207,   208,   209,   210,   211,   212,   213,   214,   215,
326       215,   216,   217,   218,   219,   220,     1,     2       216,   217,   218,   219,   220,   221,     1,     2
327  };  };
328    
329  #if YYDEBUG  #if YYDEBUG
330  /* 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
331     YYRHS.  */     YYRHS.  */
332  static const unsigned short yyprhs[] =  static const unsigned short int yyprhs[] =
333  {  {
334         0,     0,     3,     6,    10,    11,    13,    15,    17,    19,         0,     0,     3,     6,    10,    11,    13,    15,    17,    19,
335        22,    25,    28,    31,    35,    39,    43,    47,    51,    55,        22,    25,    28,    31,    35,    39,    43,    47,    51,    55,
336        61,    65,    69,    73,    79,    81,    83,    85,    87,    89,        61,    65,    69,    73,    77,    83,    85,    87,    89,    91,
337        91,    93,    95,    97,    99,   101,   103,   105,   107,   109,        93,    95,    97,    99,   101,   103,   105,   107,   109,   111,
338       111,   117,   125,   135,   137,   143,   151,   161,   163,   165,       113,   115,   117,   119,   125,   133,   143,   145,   151,   159,
339       171,   177,   185,   195,   203,   213,   215,   221,   229,   235,       169,   171,   173,   179,   185,   193,   203,   211,   221,   223,
340       241,   247,   255,   265,   273,   283,   287,   291,   297,   301,       229,   237,   243,   249,   255,   259,   261,   263,   271,   281,
341       307,   311,   315,   319,   323,   327,   333,   341,   347,   357,       289,   299,   303,   307,   313,   317,   323,   327,   331,   335,
342       363,   369,   375,   381,   387,   391,   397,   399,   401,   403,       339,   343,   349,   357,   363,   373,   379,   385,   391,   397,
343       405,   407,   413,   421,   425,   427,   429,   431,   433,   435,       403,   409,   415,   419,   425,   427,   429,   431,   433,   435,
344       437,   439,   441,   443,   445,   447,   449,   451,   453,   455,       437,   439,   441,   447,   455,   459,   461,   463,   465,   467,
345       457,   459,   461,   463,   466,   470,   475,   480,   482,   485,       469,   471,   473,   475,   477,   479,   481,   483,   485,   487,
346       487,   489,   491,   493,   495,   497,   499,   501,   503,   505,       491,   493,   495,   497,   499,   501,   503,   505,   508,   512,
347       507,   510,   513,   516,   519,   522,   525,   528,   531,   534,       517,   522,   524,   527,   529,   531,   533,   535,   537,   539,
348       536,   538,   540,   542,   544,   546,   548,   550,   552,   554,       541,   543,   545,   547,   549,   552,   555,   558,   561,   564,
349       556,   558,   560,   562,   564,   566,   568,   570,   572,   574,       567,   570,   573,   576,   578,   580,   582,   584,   586,   588,
350       576,   578,   580,   582,   584,   586,   588,   590,   592,   594,       590,   592,   594,   596,   598,   600,   602,   604,   606,   608,
351       596,   598,   600,   602,   604,   606,   608,   610,   612,   614,       610,   612,   614,   616,   618,   620,   622,   624,   626,   628,
352       616,   618,   620,   622,   624,   626,   628,   630,   632,   634,       630,   632,   634,   636,   638,   640,   642,   644,   646,   648,
353       636,   638,   640,   642,   644,   646,   648,   650,   652,   654,       650,   652,   654,   656,   658,   660,   662,   664,   666,   668,
354       656,   658,   660,   662,   664,   666,   668,   670,   672,   674,       670,   672,   674,   676,   678,   680,   682,   684,   686,   688,
355       676,   678,   680,   682,   684,   686,   688,   690,   692,   694,       690,   692,   694,   696,   698,   700,   702,   704,   706,   708,
356       696,   698,   700,   702,   704,   706,   708,   710,   712,   714,       710,   712,   714,   716,   718,   720,   722,   724,   726,   728,
357       716,   718,   720,   722,   724,   726,   728,   730,   732,   734,       730,   732,   734,   736,   738,   740,   742,   744,   746,   748,
358       736,   738,   740,   742,   744,   746,   748,   750,   752,   754,       750,   752,   754,   756,   758,   760,   762,   764,   766,   768,
359       756,   758,   760,   762,   764,   766,   768,   770,   772,   774,       770,   772,   774,   776,   778,   780,   782,   784,   786,   788,
360       776,   778,   780,   782,   784,   786,   788,   790,   792,   794,       790,   792,   794,   796,   798,   800,   802,   804,   806,   808,
361       796,   798,   800,   802,   804,   806,   808,   810,   812,   814,       810,   812,   814,   816,   818,   820,   822,   824,   826,   828,
362       816,   818,   820,   822,   824,   826,   828,   830,   832,   834,       830,   832,   834,   836,   838,   840,   842,   844,   846,   848,
363       836,   838,   840,   842,   844,   846,   848,   850,   852,   854,       850,   852,   854,   856,   858,   860,   862,   864,   866,   868,
364       856,   858,   860,   862,   864,   866,   868,   870,   872,   874,       870,   872,   874,   876,   878,   880,   882,   884,   886,   888,
365       876,   878,   880,   882,   884,   886,   888,   890,   892,   894,       890,   892,   894,   896,   898,   900,   902,   904,   906,   908,
366       896,   898,   900,   902,   904,   906,   908,   910,   912,   914,       910,   912,   914,   916,   918,   920,   922,   924,   926,   928,
367       916,   918,   920,   922,   924,   926,   928,   930,   932,   934,       930,   932,   934,   936,   938,   940,   942,   944,   946,   948,
368       936,   938,   940,   942,   944,   946,   948,   950,   952,   954,       950,   952,   954,   956,   958,   960,   962,   964,   966,   968,
369       956,   958,   960,   962,   964,   966,   968,   970,   972,   974,       970,   972,   974,   976,   978,   980,   982,   984,   986,   988,
370       977,   980,   984,   988,   990,   992,   994,   998,  1002,  1009,       990,   992,   994,   996,   998,  1000,  1002,  1004,  1006,  1008,
371      1017,  1022,  1027,  1037,  1044,  1048,  1058,  1070,  1078,  1096,      1010,  1012,  1014,  1016,  1018,  1021,  1024,  1028,  1032,  1034,
372      1127,  1136,  1141,  1153,  1166,  1178,  1189,  1196,  1226,  1247,      1036,  1038,  1042,  1046,  1053,  1061,  1066,  1071,  1075,  1085,
373      1267,  1297,  1317,  1348,  1369,  1387,  1416,  1444,  1470,  1489,      1092,  1096,  1106,  1118,  1125,  1133,  1151,  1182,  1191,  1196,
374      1507,  1535,  1553,  1569,  1588,  1604,  1615,  1622,  1628,  1639,      1210,  1223,  1235,  1248,  1260,  1278,  1300,  1311,  1318,  1348,
375      1645,  1659,  1664      1369,  1389,  1419,  1439,  1470,  1491,  1509,  1538,  1566,  1592,
376        1611,  1629,  1657,  1675,  1691,  1710,  1726,  1737,  1744,  1751,
377        1756,  1761,  1767,  1778,  1784,  1798,  1803
378  };  };
379    
380  /* YYRHS -- A `-1'-separated list of the rules' RHS. */  /* YYRHS -- A `-1'-separated list of the rules' RHS. */
381  static const short yyrhs[] =  static const short int yyrhs[] =
382  {  {
383       227,     0,    -1,   228,   266,    -1,   228,   267,   266,    -1,       228,     0,    -1,   229,   268,    -1,   229,   269,   268,    -1,
384        -1,   229,    -1,   230,    -1,     1,    -1,     3,    -1,   229,        -1,   230,    -1,   231,    -1,     1,    -1,     3,    -1,   230,
385         3,    -1,   229,   265,    -1,   229,   261,    -1,   229,   257,         3,    -1,   230,   267,    -1,   230,   263,    -1,   230,   259,
386        -1,   268,   265,   279,    -1,   269,   265,   233,    -1,   270,        -1,   270,   267,   283,    -1,   271,   267,   234,    -1,   272,
387       265,   235,    -1,   271,   265,   236,    -1,   272,   265,   241,       267,   236,    -1,   273,   267,   237,    -1,   274,   267,   242,
388        -1,   273,   265,   237,    -1,   275,   265,   279,   265,   251,        -1,   275,   267,   238,    -1,   278,   267,   283,   267,   252,
389        -1,   276,   265,   234,    -1,   277,   265,   231,    -1,   278,        -1,   279,   267,   235,    -1,   280,   267,   232,    -1,   281,
390       265,   232,    -1,   311,   265,   279,   265,   251,    -1,   311,       267,   233,    -1,   282,   267,   265,    -1,   322,   267,   283,
391        -1,   314,    -1,   282,    -1,   286,    -1,   285,    -1,   284,       267,   252,    -1,   322,    -1,   325,    -1,   288,    -1,   292,
392        -1,   283,    -1,   312,    -1,   282,    -1,   286,    -1,   285,        -1,   291,    -1,   290,    -1,   289,    -1,   323,    -1,   293,
393        -1,   284,    -1,   283,    -1,   312,    -1,   280,    -1,   297,        -1,   288,    -1,   292,    -1,   291,    -1,   290,    -1,   289,
394        -1,   303,   265,   283,   265,   257,    -1,   302,   265,   283,        -1,   323,    -1,   293,    -1,   284,    -1,   305,    -1,   311,
395       265,   257,   265,   257,    -1,   302,   265,   283,   265,   257,       267,   287,   267,   259,    -1,   310,   267,   287,   267,   259,
396       265,   257,   265,   239,    -1,   281,    -1,   293,   265,   283,       267,   259,    -1,   310,   267,   287,   267,   259,   267,   259,
397       265,   257,    -1,   292,   265,   283,   265,   257,   265,   257,       267,   240,    -1,   285,    -1,   301,   267,   287,   267,   259,
398        -1,   292,   265,   283,   265,   257,   265,   257,   265,   239,        -1,   300,   267,   287,   267,   259,   267,   259,    -1,   300,
399        -1,   290,    -1,   300,    -1,   291,   265,   283,   265,   261,       267,   287,   267,   259,   267,   259,   267,   240,    -1,   298,
400        -1,   301,   265,   283,   265,   261,    -1,   304,   265,   283,        -1,   308,    -1,   299,   267,   287,   267,   263,    -1,   309,
401       265,   261,   265,   261,    -1,   299,   265,   283,   265,   261,       267,   287,   267,   263,    -1,   312,   267,   287,   267,   263,
402       265,   261,   265,   257,    -1,   295,   265,   283,   265,   261,       267,   263,    -1,   307,   267,   287,   267,   263,   267,   263,
403       265,   261,    -1,   294,   265,   283,   265,   261,   265,   261,       267,   259,    -1,   303,   267,   287,   267,   263,   267,   263,
404       265,   257,    -1,   282,    -1,   279,   265,   283,   265,   251,        -1,   302,   267,   287,   267,   263,   267,   263,   267,   259,
405        -1,   279,   265,   284,   265,   240,   265,   251,    -1,   279,        -1,   286,    -1,   283,   267,   287,   267,   252,    -1,   283,
406       265,   285,   265,   251,    -1,   279,   265,   286,   265,   251,       267,   290,   267,   241,   267,   252,    -1,   283,   267,   291,
407        -1,   288,   265,   283,   265,   253,    -1,   289,   265,   261,       267,   252,    -1,   283,   267,   292,   267,   252,    -1,   296,
408       265,   257,     4,   255,    -1,   294,   265,   261,   265,   261,       267,   287,   267,   254,    -1,   316,   267,   287,    -1,   293,
409       265,   257,     4,   255,    -1,   298,   265,   261,   265,   257,        -1,   294,    -1,   297,   267,   263,   267,   259,     4,   256,
410         4,   255,    -1,   299,   265,   261,   265,   261,   265,   257,        -1,   302,   267,   263,   267,   263,   267,   259,     4,   256,
411         4,   255,    -1,   279,   265,   238,    -1,   313,   265,   256,        -1,   306,   267,   263,   267,   259,     4,   256,    -1,   307,
412        -1,   291,   265,   257,   265,   239,    -1,   291,   265,   257,       267,   263,   267,   263,   267,   259,     4,   256,    -1,   283,
413        -1,   301,   265,   257,   265,   239,    -1,   301,   265,   257,       267,   239,    -1,   324,   267,   258,    -1,   299,   267,   259,
414        -1,   291,   265,   261,    -1,   301,   265,   261,    -1,   287,       267,   240,    -1,   299,   267,   259,    -1,   309,   267,   259,
415       265,   242,    -1,   288,   265,   243,    -1,   291,   265,   251,       267,   240,    -1,   309,   267,   259,    -1,   299,   267,   263,
416       265,   244,    -1,   295,   265,   251,   265,   245,   265,   245,        -1,   309,   267,   263,    -1,   295,   267,   243,    -1,   296,
417        -1,   296,   265,   251,   265,   246,    -1,   307,   265,   251,       267,   244,    -1,   299,   267,   252,   267,   245,    -1,   303,
418       265,   244,   265,   247,   265,   248,    -1,   301,   265,   251,       267,   252,   267,   246,   267,   246,    -1,   304,   267,   252,
419       265,   244,    -1,   304,   265,   251,   265,   247,    -1,   305,       267,   247,    -1,   315,   267,   252,   267,   245,   267,   248,
420       265,   251,   265,   248,    -1,   306,   265,   251,   265,   249,       267,   249,    -1,   309,   267,   252,   267,   245,    -1,   312,
421        -1,   308,   265,   251,   265,   250,    -1,   257,     4,   255,       267,   252,   267,   248,    -1,   313,   267,   252,   267,   249,
422        -1,   239,   265,   257,     4,   255,    -1,   309,    -1,   310,        -1,   314,   267,   252,   267,   250,    -1,   317,   267,   252,
423        -1,   290,    -1,   300,    -1,   282,    -1,   254,   265,   252,       267,   251,    -1,   318,   267,   252,   267,   258,    -1,   319,
424       265,   251,    -1,   274,   265,   254,   265,   252,   265,   251,       267,   252,   267,   258,    -1,   259,     4,   256,    -1,   240,
425        -1,   253,   265,   251,    -1,   261,    -1,   261,    -1,   257,       267,   259,     4,   256,    -1,   320,    -1,   321,    -1,   298,
426        -1,   261,    -1,   261,    -1,   257,    -1,   258,    -1,   261,        -1,   308,    -1,   286,    -1,   284,    -1,   305,    -1,   285,
427        -1,   261,    -1,   261,    -1,   257,    -1,   264,    -1,   257,        -1,   255,   267,   253,   267,   252,    -1,   277,   267,   255,
428        -1,   264,    -1,   261,    -1,   258,    -1,   261,    -1,   257,       267,   253,   267,   252,    -1,   254,   267,   252,    -1,   263,
429        -1,   262,    -1,   257,   262,    -1,   259,     5,   259,    -1,        -1,   263,    -1,   259,    -1,   263,    -1,   263,    -1,   276,
430         6,   259,     5,   259,    -1,     7,   259,     5,   259,    -1,        -1,   259,    -1,   260,    -1,   263,    -1,   263,    -1,   263,
431       260,    -1,   259,   260,    -1,     8,    -1,     9,    -1,    10,        -1,   259,    -1,   266,    -1,   257,    -1,   256,     5,   257,
432          -1,   259,    -1,   266,    -1,   263,    -1,   260,    -1,   263,
433          -1,   259,    -1,   264,    -1,   259,   264,    -1,   261,     6,
434         261,    -1,     7,   261,     6,   261,    -1,     8,   261,     6,
435         261,    -1,   262,    -1,   261,   262,    -1,     9,    -1,    10,
436        -1,    11,    -1,    12,    -1,    13,    -1,    14,    -1,    15,        -1,    11,    -1,    12,    -1,    13,    -1,    14,    -1,    15,
437        -1,    16,    -1,    17,    -1,   260,    -1,     9,   259,    -1,        -1,    16,    -1,    17,    -1,    18,    -1,   262,    -1,    10,
438        10,   259,    -1,    11,   259,    -1,    12,   259,    -1,    13,       261,    -1,    11,   261,    -1,    12,   261,    -1,    13,   261,
439       259,    -1,    14,   259,    -1,    15,   259,    -1,    16,   259,        -1,    14,   261,    -1,    15,   261,    -1,    16,   261,    -1,
440        -1,    17,   259,    -1,    18,    -1,    19,    -1,    20,    -1,        17,   261,    -1,    18,   261,    -1,    19,    -1,    20,    -1,
441        21,    -1,    22,    -1,    23,    -1,    24,    -1,    25,    -1,        21,    -1,    22,    -1,    23,    -1,    24,    -1,    25,    -1,
442        26,    -1,    27,    -1,    28,    -1,    29,    -1,    30,    -1,        26,    -1,    27,    -1,    28,    -1,    29,    -1,    30,    -1,
443        31,    -1,    32,    -1,    33,    -1,    34,    -1,    35,    -1,        31,    -1,    32,    -1,    33,    -1,    34,    -1,    35,    -1,
# Line 380  static const short yyrhs[] = Line 447  static const short yyrhs[] =
447        51,    -1,    52,    -1,    53,    -1,    54,    -1,    55,    -1,        51,    -1,    52,    -1,    53,    -1,    54,    -1,    55,    -1,
448        56,    -1,    57,    -1,    58,    -1,    59,    -1,    60,    -1,        56,    -1,    57,    -1,    58,    -1,    59,    -1,    60,    -1,
449        61,    -1,    62,    -1,    63,    -1,    64,    -1,    65,    -1,        61,    -1,    62,    -1,    63,    -1,    64,    -1,    65,    -1,
450        66,    -1,    67,    -1,    68,    -1,    69,    -1,     8,    -1,        66,    -1,    67,    -1,    68,    -1,    69,    -1,    70,    -1,
451         9,    -1,    10,    -1,    11,    -1,    12,    -1,    13,    -1,         9,    -1,    10,    -1,    11,    -1,    12,    -1,    13,    -1,
452        14,    -1,    15,    -1,    16,    -1,    17,    -1,    70,    -1,        14,    -1,    15,    -1,    16,    -1,    17,    -1,    18,    -1,
453         3,    -1,    71,    -1,    72,    -1,    73,    -1,    74,    -1,        71,    -1,     3,    -1,    72,    -1,    73,    -1,    74,    -1,
454        75,    -1,    76,    -1,     6,    -1,     7,    -1,     5,    -1,        75,    -1,    76,    -1,    77,    -1,     7,    -1,     8,    -1,
455        77,    -1,    78,    -1,    79,    -1,    80,    -1,     4,    -1,         6,    -1,     5,    -1,    78,    -1,    79,    -1,    80,    -1,
456        81,    -1,    82,    -1,    83,    -1,    84,    -1,    85,    -1,        81,    -1,     4,    -1,    82,    -1,    83,    -1,    84,    -1,
457        86,    -1,    87,    -1,    88,    -1,    89,    -1,    90,    -1,        85,    -1,    86,    -1,    87,    -1,    88,    -1,    89,    -1,
458        91,    -1,    92,    -1,    93,    -1,    94,    -1,    95,    -1,        90,    -1,    91,    -1,    92,    -1,    93,    -1,    94,    -1,
459        96,    -1,    97,    -1,    98,    -1,    99,    -1,   100,    -1,        95,    -1,    96,    -1,    97,    -1,    98,    -1,    99,    -1,
460       101,    -1,   102,    -1,   103,    -1,   104,    -1,   105,    -1,       100,    -1,   101,    -1,   102,    -1,   103,    -1,   104,    -1,
461       106,    -1,   107,    -1,   108,    -1,   109,    -1,   110,    -1,       105,    -1,   106,    -1,   107,    -1,   108,    -1,   109,    -1,
462       111,    -1,   112,    -1,   113,    -1,   114,    -1,   115,    -1,       110,    -1,   111,    -1,   112,    -1,   113,    -1,   114,    -1,
463       116,    -1,   117,    -1,   118,    -1,   119,    -1,   120,    -1,       115,    -1,   116,    -1,   117,    -1,   118,    -1,   119,    -1,
464       121,    -1,   122,    -1,   123,    -1,   124,    -1,   125,    -1,       120,    -1,   121,    -1,   122,    -1,   123,    -1,   124,    -1,
465       126,    -1,   127,    -1,   128,    -1,   129,    -1,   130,    -1,       125,    -1,   126,    -1,   127,    -1,   128,    -1,   129,    -1,
466       131,    -1,   132,    -1,   133,    -1,   134,    -1,   135,    -1,       130,    -1,   131,    -1,   132,    -1,   133,    -1,   134,    -1,
467       136,    -1,   137,    -1,   138,    -1,   139,    -1,   140,    -1,       135,    -1,   136,    -1,   137,    -1,   138,    -1,   139,    -1,
468       141,    -1,   142,    -1,   143,    -1,   144,    -1,   145,    -1,       140,    -1,   141,    -1,   142,    -1,   143,    -1,   144,    -1,
469       146,    -1,   147,    -1,   148,    -1,   149,    -1,   150,    -1,       145,    -1,   146,    -1,   147,    -1,   148,    -1,   149,    -1,
470       151,    -1,   152,    -1,   153,    -1,   154,    -1,   155,    -1,       150,    -1,   151,    -1,   152,    -1,   153,    -1,   154,    -1,
471       156,    -1,   157,    -1,   158,    -1,   159,    -1,   160,    -1,       155,    -1,   156,    -1,   157,    -1,   158,    -1,   159,    -1,
472       161,    -1,   162,    -1,   163,    -1,   164,    -1,   165,    -1,       160,    -1,   161,    -1,   162,    -1,   163,    -1,   164,    -1,
473       166,    -1,   167,    -1,   168,    -1,   169,    -1,   170,    -1,       165,    -1,   166,    -1,   167,    -1,   168,    -1,   169,    -1,
474       171,    -1,   172,    -1,   173,    -1,   174,    -1,   175,    -1,       170,    -1,   171,    -1,   172,    -1,   173,    -1,   174,    -1,
475       176,    -1,   177,    -1,   178,    -1,   179,    -1,   180,    -1,       175,    -1,   176,    -1,   177,    -1,   178,    -1,   179,    -1,
476       181,    -1,   182,    -1,   183,    -1,   184,    -1,   185,    -1,       180,    -1,   181,    -1,   182,    -1,   183,    -1,   184,    -1,
477       186,    -1,   187,    -1,   188,    -1,   189,    -1,   190,    -1,       185,    -1,   186,    -1,   187,    -1,   188,    -1,   189,    -1,
478       191,    -1,   192,    -1,   193,    -1,   194,    -1,   195,    -1,       190,    -1,   191,    -1,   192,    -1,   193,    -1,   194,    -1,
479       196,    -1,   197,    -1,   198,    -1,   199,    -1,   200,    -1,       195,    -1,   196,    -1,   197,    -1,   198,    -1,   199,    -1,
480       201,    -1,   202,    -1,   203,    -1,   204,    -1,   205,    -1,       200,    -1,   201,    -1,   202,    -1,   203,    -1,   204,    -1,
481       206,    -1,   207,    -1,   208,    -1,   209,    -1,   210,    -1,       205,    -1,   206,    -1,   207,    -1,   208,    -1,   209,    -1,
482       211,    -1,   212,    -1,   213,    -1,   214,    -1,   215,    -1,       210,    -1,   211,    -1,   212,    -1,   213,    -1,   214,    -1,
483       216,    -1,   217,    -1,   218,    -1,   219,    -1,   220,    -1,       215,    -1,   216,    -1,   217,    -1,   218,    -1,   219,    -1,
484       265,    -1,   257,    -1,   263,   265,    -1,   263,   257,    -1,       220,    -1,   221,    -1,   267,    -1,   259,    -1,   265,   267,
485       221,   263,   221,    -1,   222,   263,   222,    -1,   223,    -1,        -1,   265,   259,    -1,   222,   265,   222,    -1,   223,   265,
486       224,    -1,   225,    -1,    18,    21,    21,    -1,    24,    22,       223,    -1,   224,    -1,   225,    -1,   226,    -1,    19,    22,
487        37,    -1,    20,    35,    22,    18,    37,    22,    -1,    21,        22,    -1,    25,    23,    38,    -1,    21,    36,    23,    19,
488        22,    36,    37,    35,    32,    42,    -1,    29,    26,    36,        38,    23,    -1,    22,    23,    37,    38,    36,    33,    43,
489        37,    -1,    29,    32,    18,    21,    -1,    31,    32,    31,        -1,    30,    27,    37,    38,    -1,    30,    33,    19,    22,
490        88,    30,    32,    21,    18,    29,    -1,    35,    22,    30,        -1,    19,    30,    30,    -1,    32,    33,    32,    89,    31,
491        32,    39,    22,    -1,    36,    22,    37,    -1,    36,    38,        33,    22,    19,    30,    -1,    36,    23,    31,    33,    40,
492        19,    36,    20,    35,    26,    19,    22,    -1,    38,    31,        23,    -1,    37,    23,    38,    -1,    37,    39,    20,    37,
493        36,    38,    19,    36,    20,    35,    26,    19,    22,    -1,        21,    36,    27,    20,    23,    -1,    39,    32,    37,    39,
494        20,    25,    18,    31,    31,    22,    29,    -1,    18,    39,        20,    37,    21,    36,    27,    20,    23,    -1,    37,    23,
495        18,    26,    29,    18,    19,    29,    22,    88,    22,    31,        30,    23,    21,    38,    -1,    21,    26,    19,    32,    32,
496        24,    26,    31,    22,    36,    -1,    18,    39,    18,    26,        23,    30,    -1,    19,    40,    19,    27,    30,    19,    20,
497        29,    18,    19,    29,    22,    88,    18,    38,    21,    26,        30,    23,    89,    23,    32,    25,    27,    32,    23,    37,
498        32,    88,    32,    38,    37,    33,    38,    37,    88,    21,        -1,    19,    40,    19,    27,    30,    19,    20,    30,    23,
499        35,    26,    39,    22,    35,    36,    -1,    20,    25,    18,        89,    19,    39,    22,    27,    33,    89,    33,    39,    38,
500        31,    31,    22,    29,    36,    -1,    26,    31,    23,    32,        34,    39,    38,    89,    22,    36,    27,    40,    23,    36,
501        -1,    19,    38,    23,    23,    22,    35,    88,    23,    26,        37,    -1,    21,    26,    19,    32,    32,    23,    30,    37,
502        29,    29,    -1,    36,    37,    35,    22,    18,    30,    88,        -1,    27,    32,    24,    33,    -1,    21,    26,    19,    32,
503        20,    32,    38,    31,    37,    -1,    39,    32,    26,    20,        32,    23,    30,    89,    21,    33,    39,    32,    38,    -1,
504        22,    88,    20,    32,    38,    31,    37,    -1,    26,    31,        21,    26,    19,    32,    32,    23,    30,    89,    27,    32,
505        36,    37,    35,    38,    30,    22,    31,    37,    -1,    22,        24,    33,    -1,    20,    39,    24,    24,    23,    36,    89,
506        31,    24,    26,    31,    22,    -1,    18,    38,    21,    26,        24,    27,    30,    30,    -1,    37,    38,    36,    23,    19,
507        32,    88,    32,    38,    37,    33,    38,    37,    88,    21,        31,    89,    21,    33,    39,    32,    38,    -1,    40,    33,
508        22,    39,    26,    20,    22,    88,    33,    18,    35,    18,        27,    21,    23,    89,    21,    33,    39,    32,    38,    -1,
509        30,    22,    37,    22,    35,    -1,    18,    38,    21,    26,        38,    33,    38,    19,    30,    89,    40,    33,    27,    21,
510        32,    88,    32,    38,    37,    33,    38,    37,    88,    21,        23,    89,    21,    33,    39,    32,    38,    -1,    38,    33,
511        22,    39,    26,    20,    22,    36,    -1,    18,    38,    21,        38,    19,    30,    89,    40,    33,    27,    21,    23,    89,
512        26,    32,    88,    32,    38,    37,    33,    38,    37,    88,        21,    33,    39,    32,    38,    89,    31,    19,    42,    -1,
513        21,    22,    39,    26,    20,    22,    -1,    18,    38,    21,        27,    32,    37,    38,    36,    39,    31,    23,    32,    38,
514        26,    32,    88,    32,    38,    37,    33,    38,    37,    88,        -1,    23,    32,    25,    27,    32,    23,    -1,    19,    39,
515        21,    35,    26,    39,    22,    35,    88,    33,    18,    35,        22,    27,    33,    89,    33,    39,    38,    34,    39,    38,
516        18,    30,    22,    37,    22,    35,    -1,    18,    38,    21,        89,    22,    23,    40,    27,    21,    23,    89,    34,    19,
517        26,    32,    88,    32,    38,    37,    33,    38,    37,    88,        36,    19,    31,    23,    38,    23,    36,    -1,    19,    39,
518        21,    35,    26,    39,    22,    35,    -1,    18,    38,    21,        22,    27,    33,    89,    33,    39,    38,    34,    39,    38,
519        26,    32,    88,    32,    38,    37,    33,    38,    37,    88,        89,    22,    23,    40,    27,    21,    23,    37,    -1,    19,
520        20,    25,    18,    31,    31,    22,    29,    88,    33,    18,        39,    22,    27,    33,    89,    33,    39,    38,    34,    39,
521        35,    18,    30,    22,    37,    22,    35,    -1,    18,    38,        38,    89,    22,    23,    40,    27,    21,    23,    -1,    19,
522        21,    26,    32,    88,    32,    38,    37,    33,    38,    37,        39,    22,    27,    33,    89,    33,    39,    38,    34,    39,
523        88,    20,    25,    18,    31,    31,    22,    29,    -1,    18,        38,    89,    22,    36,    27,    40,    23,    36,    89,    34,
524        38,    21,    26,    32,    88,    32,    38,    37,    33,    38,        19,    36,    19,    31,    23,    38,    23,    36,    -1,    19,
525        37,    88,    37,    42,    33,    22,    -1,    18,    39,    18,        39,    22,    27,    33,    89,    33,    39,    38,    34,    39,
526        26,    29,    18,    19,    29,    22,    88,    30,    26,    21,        38,    89,    22,    36,    27,    40,    23,    36,    -1,    19,
527        26,    88,    26,    31,    33,    38,    37,    88,    21,    35,        39,    22,    27,    33,    89,    33,    39,    38,    34,    39,
528        26,    39,    22,    35,    36,    -1,    30,    26,    21,    26,        38,    89,    21,    26,    19,    32,    32,    23,    30,    89,
529        88,    26,    31,    33,    38,    37,    88,    21,    22,    39,        34,    19,    36,    19,    31,    23,    38,    23,    36,    -1,
530        26,    20,    22,    88,    33,    18,    35,    18,    30,    22,        19,    39,    22,    27,    33,    89,    33,    39,    38,    34,
531        37,    22,    35,    -1,    30,    26,    21,    26,    88,    26,        39,    38,    89,    21,    26,    19,    32,    32,    23,    30,
532        31,    33,    38,    37,    88,    33,    32,    35,    37,    88,        -1,    19,    39,    22,    27,    33,    89,    33,    39,    38,
533        33,    18,    35,    18,    30,    22,    37,    22,    35,    -1,        34,    39,    38,    89,    38,    43,    34,    23,    -1,    19,
534        30,    26,    21,    26,    88,    26,    31,    33,    38,    37,        40,    19,    27,    30,    19,    20,    30,    23,    89,    31,
535        88,    21,    22,    39,    26,    20,    22,    36,    -1,    30,        27,    22,    27,    89,    27,    32,    34,    39,    38,    89,
536        26,    21,    26,    88,    26,    31,    33,    38,    37,    88,        22,    36,    27,    40,    23,    36,    37,    -1,    31,    27,
537        21,    22,    39,    26,    20,    22,    -1,    30,    26,    21,        22,    27,    89,    27,    32,    34,    39,    38,    89,    22,
538        26,    88,    26,    31,    33,    38,    37,    88,    21,    35,        23,    40,    27,    21,    23,    89,    34,    19,    36,    19,
539        26,    39,    22,    35,    88,    33,    18,    35,    18,    30,        31,    23,    38,    23,    36,    -1,    31,    27,    22,    27,
540        22,    37,    22,    35,    -1,    30,    26,    21,    26,    88,        89,    27,    32,    34,    39,    38,    89,    34,    33,    36,
541        26,    31,    33,    38,    37,    88,    21,    35,    26,    39,        38,    89,    34,    19,    36,    19,    31,    23,    38,    23,
542        22,    35,    -1,    30,    26,    21,    26,    88,    26,    31,        36,    -1,    31,    27,    22,    27,    89,    27,    32,    34,
543        33,    38,    37,    88,    33,    32,    35,    37,    -1,    30,        39,    38,    89,    22,    23,    40,    27,    21,    23,    37,
544        26,    21,    26,    88,    26,    31,    33,    38,    37,    88,        -1,    31,    27,    22,    27,    89,    27,    32,    34,    39,
545        20,    25,    18,    31,    31,    22,    29,    -1,    30,    26,        38,    89,    22,    23,    40,    27,    21,    23,    -1,    31,
546        21,    26,    88,    26,    31,    33,    38,    37,    88,    37,        27,    22,    27,    89,    27,    32,    34,    39,    38,    89,
547        42,    33,    22,    -1,    30,    26,    21,    26,    88,    26,        22,    36,    27,    40,    23,    36,    89,    34,    19,    36,
548        31,    33,    38,    37,    -1,    39,    32,    29,    38,    30,        19,    31,    23,    38,    23,    36,    -1,    31,    27,    22,
549        22,    -1,    19,    42,    37,    22,    36,    -1,    33,    22,        27,    89,    27,    32,    34,    39,    38,    89,    22,    36,
550        35,    20,    22,    31,    37,    18,    24,    22,    -1,    35,        27,    40,    23,    36,    -1,    31,    27,    22,    27,    89,
551        22,    36,    22,    37,    -1,    30,    26,    36,    20,    22,        27,    32,    34,    39,    38,    89,    34,    33,    36,    38,
552        29,    29,    18,    31,    22,    32,    38,    36,    -1,    22,        -1,    31,    27,    22,    27,    89,    27,    32,    34,    39,
553        20,    25,    32,    -1,    34,    38,    26,    37,    -1        38,    89,    21,    26,    19,    32,    32,    23,    30,    -1,
554          31,    27,    22,    27,    89,    27,    32,    34,    39,    38,
555          89,    38,    43,    34,    23,    -1,    31,    27,    22,    27,
556          89,    27,    32,    34,    39,    38,    -1,    37,    23,    36,
557          40,    23,    36,    -1,    40,    33,    30,    39,    31,    23,
558          -1,    31,    39,    38,    23,    -1,    37,    33,    30,    33,
559          -1,    20,    43,    38,    23,    37,    -1,    34,    23,    36,
560          21,    23,    32,    38,    19,    25,    23,    -1,    36,    23,
561          37,    23,    38,    -1,    31,    27,    37,    21,    23,    30,
562          30,    19,    32,    23,    33,    39,    37,    -1,    23,    21,
563          26,    33,    -1,    35,    39,    27,    38,    -1
564  };  };
565    
566  /* YYRLINE[YYN] -- source line where rule number YYN was defined.  */  /* YYRLINE[YYN] -- source line where rule number YYN was defined.  */
567  static const unsigned short yyrline[] =  static const unsigned short int yyrline[] =
568  {  {
569         0,    81,    81,    82,    85,    86,    87,    88,    91,    92,         0,    90,    90,    91,    94,    95,    96,    97,   100,   101,
570        93,    94,    95,    98,    99,   100,   101,   102,   103,   104,       102,   103,   104,   107,   108,   109,   110,   111,   112,   113,
571       105,   106,   107,   108,   109,   110,   113,   114,   115,   116,       114,   115,   116,   117,   118,   119,   120,   123,   124,   125,
572       117,   118,   121,   122,   123,   124,   125,   126,   129,   130,       126,   127,   128,   129,   132,   133,   134,   135,   136,   137,
573       131,   132,   133,   134,   135,   136,   137,   138,   139,   140,       138,   141,   142,   143,   144,   145,   146,   147,   148,   149,
574       141,   142,   143,   144,   145,   146,   147,   148,   149,   150,       150,   151,   152,   153,   154,   155,   156,   157,   158,   159,
575       151,   154,   155,   156,   157,   158,   159,   162,   163,   164,       160,   161,   162,   163,   164,   165,   166,   169,   170,   171,
576       165,   168,   169,   172,   173,   176,   177,   178,   179,   180,       172,   173,   174,   177,   178,   179,   180,   183,   184,   187,
577       181,   182,   183,   184,   187,   188,   191,   192,   195,   196,       188,   191,   192,   193,   194,   195,   196,   197,   198,   199,
578       197,   200,   201,   204,   207,   210,   213,   216,   219,   222,       200,   201,   204,   205,   208,   209,   212,   213,   214,   215,
579       225,   226,   229,   232,   235,   238,   241,   242,   243,   244,       216,   217,   220,   221,   224,   227,   230,   233,   236,   239,
580       250,   251,   254,   255,   258,   259,   260,   264,   265,   268,       240,   243,   246,   247,   250,   253,   256,   259,   262,   263,
581       269,   270,   271,   272,   273,   274,   275,   276,   277,   280,       266,   267,   268,   269,   277,   278,   281,   282,   285,   286,
582       281,   282,   283,   284,   285,   286,   287,   288,   289,   291,       287,   291,   292,   295,   296,   297,   298,   299,   300,   301,
583       291,   291,   291,   291,   291,   291,   291,   291,   291,   291,       302,   303,   304,   307,   308,   309,   310,   311,   312,   313,
584       291,   291,   291,   291,   291,   291,   291,   291,   291,   291,       314,   315,   316,   318,   318,   318,   318,   318,   318,   318,
585       291,   291,   291,   291,   291,   292,   292,   292,   292,   292,       318,   318,   318,   318,   318,   318,   318,   318,   318,   318,
586       292,   292,   292,   292,   292,   292,   292,   292,   292,   292,       318,   318,   318,   318,   318,   318,   318,   318,   318,   319,
587       292,   292,   292,   292,   292,   292,   292,   292,   292,   292,       319,   319,   319,   319,   319,   319,   319,   319,   319,   319,
588       292,   293,   293,   293,   293,   293,   293,   293,   293,   293,       319,   319,   319,   319,   319,   319,   319,   319,   319,   319,
589       293,   294,   294,   294,   294,   294,   294,   294,   294,   294,       319,   319,   319,   319,   319,   320,   320,   320,   320,   320,
590       294,   294,   294,   295,   295,   295,   295,   295,   295,   295,       320,   320,   320,   320,   320,   321,   321,   321,   321,   321,
591       296,   296,   296,   296,   296,   297,   297,   297,   297,   298,       321,   321,   321,   321,   321,   321,   321,   321,   322,   322,
592       298,   298,   299,   299,   299,   300,   300,   300,   301,   301,       322,   322,   322,   322,   322,   323,   323,   323,   323,   323,
593       301,   302,   302,   302,   303,   303,   303,   304,   304,   304,       324,   324,   324,   324,   325,   325,   325,   326,   326,   326,
594       305,   305,   305,   306,   306,   306,   307,   307,   307,   308,       327,   327,   327,   328,   328,   328,   329,   329,   329,   330,
595       308,   308,   309,   309,   309,   310,   310,   310,   311,   311,       330,   330,   331,   331,   331,   332,   332,   332,   333,   333,
596       311,   312,   312,   312,   313,   313,   313,   314,   314,   314,       333,   334,   334,   334,   335,   335,   335,   336,   336,   336,
597       315,   315,   315,   316,   316,   316,   317,   317,   317,   318,       337,   337,   337,   338,   338,   338,   339,   339,   339,   340,
598       318,   318,   319,   319,   319,   320,   320,   320,   321,   321,       340,   340,   341,   341,   341,   342,   342,   342,   343,   343,
599       321,   322,   322,   322,   323,   323,   323,   324,   324,   324,       343,   344,   344,   344,   345,   345,   345,   346,   346,   346,
600       325,   325,   325,   326,   326,   326,   327,   327,   327,   328,       347,   347,   347,   348,   348,   348,   349,   349,   349,   350,
601       328,   328,   329,   329,   329,   330,   330,   330,   331,   331,       350,   350,   351,   351,   351,   352,   352,   352,   353,   353,
602       331,   332,   332,   332,   333,   333,   333,   334,   334,   334,       353,   354,   354,   354,   355,   355,   355,   356,   356,   356,
603       335,   335,   335,   336,   336,   336,   337,   337,   337,   338,       357,   357,   357,   358,   358,   358,   359,   359,   359,   360,
604       338,   338,   339,   339,   339,   340,   340,   343,   344,   345,       360,   360,   361,   361,   361,   362,   362,   362,   363,   363,
605       346,   349,   350,   356,   359,   362,   365,   368,   371,   374,       363,   364,   364,   364,   365,   365,   365,   366,   366,   366,
606       377,   380,   383,   386,   389,   392,   395,   398,   401,   404,       367,   367,   370,   371,   372,   373,   376,   377,   383,   386,
607       407,   410,   413,   416,   419,   422,   425,   428,   431,   434,       389,   392,   395,   398,   401,   404,   407,   410,   413,   416,
608       437,   440,   443,   446,   449,   452,   455,   458,   461,   464,       419,   422,   425,   428,   431,   434,   437,   440,   443,   446,
609       467,   470,   473,   476,   479,   482,   485,   488,   491,   494,       449,   452,   455,   458,   461,   464,   467,   470,   473,   476,
610       497,   500,   503       479,   482,   485,   488,   491,   494,   497,   500,   503,   506,
611         509,   512,   515,   518,   521,   524,   527,   530,   533,   536,
612         539,   542,   545,   548,   551,   554,   557
613  };  };
614  #endif  #endif
615    
616  #if YYDEBUG || YYERROR_VERBOSE  #if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
617  /* YYTNME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.  /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
618     First, the terminals, then, starting at YYNTOKENS, nonterminals. */     First, the terminals, then, starting at YYNTOKENS, nonterminals. */
619  static const char *const yytname[] =  static const char *const yytname[] =
620  {  {
621    "$end", "error", "$undefined", "'#'", "'='", "'.'", "'+'", "'-'", "'0'",    "$end", "error", "$undefined", "'#'", "'='", "','", "'.'", "'+'", "'-'",
622    "'1'", "'2'", "'3'", "'4'", "'5'", "'6'", "'7'", "'8'", "'9'", "'A'",    "'0'", "'1'", "'2'", "'3'", "'4'", "'5'", "'6'", "'7'", "'8'", "'9'",
623    "'B'", "'C'", "'D'", "'E'", "'F'", "'G'", "'H'", "'I'", "'J'", "'K'",    "'A'", "'B'", "'C'", "'D'", "'E'", "'F'", "'G'", "'H'", "'I'", "'J'",
624    "'L'", "'M'", "'N'", "'O'", "'P'", "'Q'", "'R'", "'S'", "'T'", "'U'",    "'K'", "'L'", "'M'", "'N'", "'O'", "'P'", "'Q'", "'R'", "'S'", "'T'",
625    "'V'", "'W'", "'X'", "'Y'", "'Z'", "'a'", "'b'", "'c'", "'d'", "'e'",    "'U'", "'V'", "'W'", "'X'", "'Y'", "'Z'", "'a'", "'b'", "'c'", "'d'",
626    "'f'", "'g'", "'h'", "'i'", "'j'", "'k'", "'l'", "'m'", "'n'", "'o'",    "'e'", "'f'", "'g'", "'h'", "'i'", "'j'", "'k'", "'l'", "'m'", "'n'",
627    "'p'", "'q'", "'r'", "'s'", "'t'", "'u'", "'v'", "'w'", "'x'", "'y'",    "'o'", "'p'", "'q'", "'r'", "'s'", "'t'", "'u'", "'v'", "'w'", "'x'",
628    "'z'", "'!'", "'$'", "'%'", "'&'", "'('", "')'", "'*'", "'/'", "':'",    "'y'", "'z'", "'!'", "'$'", "'%'", "'&'", "'('", "')'", "'*'", "'/'",
629    "';'", "'<'", "'>'", "'?'", "'@'", "'['", "'\\\\'", "']'", "'^'", "'_'",    "':'", "';'", "'<'", "'>'", "'?'", "'@'", "'['", "'\\\\'", "']'", "'^'",
630    "'{'", "'|'", "'}'", "'~'", "'\\200'", "'\\201'", "'\\202'", "'\\203'",    "'_'", "'{'", "'|'", "'}'", "'~'", "'\\200'", "'\\201'", "'\\202'",
631    "'\\204'", "'\\205'", "'\\206'", "'\\207'", "'\\210'", "'\\211'",    "'\\203'", "'\\204'", "'\\205'", "'\\206'", "'\\207'", "'\\210'",
632    "'\\212'", "'\\213'", "'\\214'", "'\\215'", "'\\216'", "'\\217'",    "'\\211'", "'\\212'", "'\\213'", "'\\214'", "'\\215'", "'\\216'",
633    "'\\220'", "'\\221'", "'\\222'", "'\\223'", "'\\224'", "'\\225'",    "'\\217'", "'\\220'", "'\\221'", "'\\222'", "'\\223'", "'\\224'",
634    "'\\226'", "'\\227'", "'\\230'", "'\\231'", "'\\232'", "'\\233'",    "'\\225'", "'\\226'", "'\\227'", "'\\230'", "'\\231'", "'\\232'",
635    "'\\234'", "'\\235'", "'\\236'", "'\\237'", "' '", "'¡'", "'¢'", "'£'",    "'\\233'", "'\\234'", "'\\235'", "'\\236'", "'\\237'", "'\\240'",
636    "'¤'", "'¥'", "'¦'", "'§'", "'¨'", "'©'", "'ª'", "'«'", "'¬'", "'­'",    "'\\241'", "'\\242'", "'\\243'", "'\\244'", "'\\245'", "'\\246'",
637    "'®'", "'¯'", "'°'", "'±'", "'²'", "'³'", "'´'", "'µ'", "'¶'", "'·'",    "'\\247'", "'\\250'", "'\\251'", "'\\252'", "'\\253'", "'\\254'",
638    "'¸'", "'¹'", "'º'", "'»'", "'¼'", "'½'", "'¾'", "'¿'", "'À'", "'Á'",    "'\\255'", "'\\256'", "'\\257'", "'\\260'", "'\\261'", "'\\262'",
639    "'Â'", "'Ã'", "'Ä'", "'Å'", "'Æ'", "'Ç'", "'È'", "'É'", "'Ê'", "'Ë'",    "'\\263'", "'\\264'", "'\\265'", "'\\266'", "'\\267'", "'\\270'",
640    "'Ì'", "'Í'", "'Î'", "'Ï'", "'Ð'", "'Ñ'", "'Ò'", "'Ó'", "'Ô'", "'Õ'",    "'\\271'", "'\\272'", "'\\273'", "'\\274'", "'\\275'", "'\\276'",
641    "'Ö'", "'×'", "'Ø'", "'Ù'", "'Ú'", "'Û'", "'Ü'", "'Ý'", "'Þ'", "'ß'",    "'\\277'", "'\\300'", "'\\301'", "'\\302'", "'\\303'", "'\\304'",
642    "'à'", "'á'", "'â'", "'ã'", "'ä'", "'å'", "'æ'", "'ç'", "'è'", "'é'",    "'\\305'", "'\\306'", "'\\307'", "'\\310'", "'\\311'", "'\\312'",
643    "'ê'", "'ë'", "'ì'", "'í'", "'î'", "'ï'", "'ð'", "'ñ'", "'ò'", "'ó'",    "'\\313'", "'\\314'", "'\\315'", "'\\316'", "'\\317'", "'\\320'",
644    "'ô'", "'õ'", "'ö'", "'÷'", "'ø'", "'ù'", "'ú'", "'û'", "'ü'", "'ý'",    "'\\321'", "'\\322'", "'\\323'", "'\\324'", "'\\325'", "'\\326'",
645    "'þ'", "'ÿ'", "'''", "'\"'", "' '", "'\\n'", "'\\r'", "$accept",    "'\\327'", "'\\330'", "'\\331'", "'\\332'", "'\\333'", "'\\334'",
646    "input", "line", "comment", "command", "subscribe_event",    "'\\335'", "'\\336'", "'\\337'", "'\\340'", "'\\341'", "'\\342'",
647    "unsubscribe_event", "get_instruction", "set_instruction",    "'\\343'", "'\\344'", "'\\345'", "'\\346'", "'\\347'", "'\\350'",
648    "create_instruction", "destroy_instruction", "load_instruction",    "'\\351'", "'\\352'", "'\\353'", "'\\354'", "'\\355'", "'\\356'",
649    "set_chan_instruction", "key_val_list", "buffer_size_type",    "'\\357'", "'\\360'", "'\\361'", "'\\362'", "'\\363'", "'\\364'",
650    "list_instruction", "load_instr_args", "load_engine_args",    "'\\365'", "'\\366'", "'\\367'", "'\\370'", "'\\371'", "'\\372'",
651    "device_index", "audio_channel_index", "audio_output_type_name",    "'\\373'", "'\\374'", "'\\375'", "'\\376'", "'\\377'", "'''", "'\"'",
652    "midi_input_port_index", "midi_input_channel_index",    "' '", "'\\n'", "'\\r'", "$accept", "input", "line", "comment",
653    "midi_input_type_name", "volume_value", "sampler_channel",    "command", "subscribe_event", "unsubscribe_event", "get_instruction",
654    "instrument_index", "engine_name", "filename", "param_val", "boolean",    "set_instruction", "create_instruction", "destroy_instruction",
655    "string", "dotnum", "digits", "digit", "number", "char", "text",    "load_instruction", "set_chan_instruction", "key_val_list",
656    "stringval", "SP", "LF", "CR", "ADD", "GET", "CREATE", "DESTROY",    "buffer_size_type", "list_instruction", "load_instr_args",
657    "LIST", "LOAD", "NON_MODAL", "REMOVE", "SET", "SUBSCRIBE",    "load_engine_args", "device_index", "audio_channel_index",
658    "UNSUBSCRIBE", "CHANNEL", "AVAILABLE_ENGINES",    "audio_output_type_name", "midi_input_port_index",
659    "AVAILABLE_AUDIO_OUTPUT_DRIVERS", "CHANNELS", "INFO", "BUFFER_FILL",    "midi_input_channel_index", "midi_input_type_name", "volume_value",
660    "STREAM_COUNT", "VOICE_COUNT", "INSTRUMENT", "ENGINE",    "sampler_channel", "instrument_index", "engine_name", "filename",
661    "AUDIO_OUTPUT_DEVICE_PARAMETER", "AUDIO_OUTPUT_DEVICES",    "param_val_list", "param_val", "boolean", "string", "dotnum", "digits",
662    "AUDIO_OUTPUT_DEVICE", "AUDIO_OUTPUT_DRIVER_PARAMETER",    "digit", "number", "char", "text", "stringval", "SP", "LF", "CR", "ADD",
663    "AUDIO_OUTPUT_DRIVER", "AUDIO_OUTPUT_CHANNEL_PARAMETER",    "GET", "CREATE", "DESTROY", "LIST", "LOAD", "ALL", "NON_MODAL", "REMOVE",
664    "AUDIO_OUTPUT_CHANNEL", "AUDIO_OUTPUT_TYPE",    "SET", "SUBSCRIBE", "UNSUBSCRIBE", "SELECT", "CHANNEL",
665    "AVAILABLE_MIDI_INPUT_DRIVERS", "MIDI_INPUT_DEVICE_PARAMETER",    "AVAILABLE_ENGINES", "AVAILABLE_AUDIO_OUTPUT_DRIVERS", "CHANNELS",
666    "MIDI_INPUT_PORT_PARAMETER", "MIDI_INPUT_DEVICES", "MIDI_INPUT_DEVICE",    "INFO", "CHANNEL_COUNT", "CHANNEL_INFO", "BUFFER_FILL", "STREAM_COUNT",
667    "MIDI_INPUT_DRIVER_PARAMETER", "MIDI_INPUT_DRIVER", "MIDI_INPUT_PORT",    "VOICE_COUNT", "TOTAL_VOICE_COUNT", "TOTAL_VOICE_COUNT_MAX",
668    "MIDI_INPUT_CHANNEL", "MIDI_INPUT_TYPE", "MIDI_INPUT", "VOLUME",    "INSTRUMENT", "ENGINE", "AUDIO_OUTPUT_DEVICE_PARAMETER",
669      "AUDIO_OUTPUT_DEVICES", "AUDIO_OUTPUT_DEVICE",
670      "AUDIO_OUTPUT_DRIVER_PARAMETER", "AUDIO_OUTPUT_DRIVER",
671      "AUDIO_OUTPUT_CHANNEL_PARAMETER", "AUDIO_OUTPUT_CHANNEL",
672      "AUDIO_OUTPUT_TYPE", "AVAILABLE_MIDI_INPUT_DRIVERS",
673      "MIDI_INPUT_DEVICE_PARAMETER", "MIDI_INPUT_PORT_PARAMETER",
674      "MIDI_INPUT_DEVICES", "MIDI_INPUT_DEVICE", "MIDI_INPUT_DRIVER_PARAMETER",
675      "MIDI_INPUT_DRIVER", "MIDI_INPUT_PORT", "MIDI_INPUT_CHANNEL",
676      "MIDI_INPUT_TYPE", "MIDI_INPUT", "SERVER", "VOLUME", "MUTE", "SOLO",
677    "BYTES", "PERCENTAGE", "RESET", "MISCELLANEOUS", "ECHO", "QUIT", 0    "BYTES", "PERCENTAGE", "RESET", "MISCELLANEOUS", "ECHO", "QUIT", 0
678  };  };
679  #endif  #endif
# Line 594  static const char *const yytname[] = Line 681  static const char *const yytname[] =
681  # ifdef YYPRINT  # ifdef YYPRINT
682  /* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to  /* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to
683     token YYLEX-NUM.  */     token YYLEX-NUM.  */
684  static const unsigned short yytoknum[] =  static const unsigned short int yytoknum[] =
685  {  {
686         0,   256,   257,    35,    61,    46,    43,    45,    48,    49,         0,   256,   257,    35,    61,    44,    46,    43,    45,    48,
687        50,    51,    52,    53,    54,    55,    56,    57,    65,    66,        49,    50,    51,    52,    53,    54,    55,    56,    57,    65,
688        67,    68,    69,    70,    71,    72,    73,    74,    75,    76,        66,    67,    68,    69,    70,    71,    72,    73,    74,    75,
689        77,    78,    79,    80,    81,    82,    83,    84,    85,    86,        76,    77,    78,    79,    80,    81,    82,    83,    84,    85,
690        87,    88,    89,    90,    97,    98,    99,   100,   101,   102,        86,    87,    88,    89,    90,    97,    98,    99,   100,   101,
691       103,   104,   105,   106,   107,   108,   109,   110,   111,   112,       102,   103,   104,   105,   106,   107,   108,   109,   110,   111,
692       113,   114,   115,   116,   117,   118,   119,   120,   121,   122,       112,   113,   114,   115,   116,   117,   118,   119,   120,   121,
693        33,    36,    37,    38,    40,    41,    42,    47,    58,    59,       122,    33,    36,    37,    38,    40,    41,    42,    47,    58,
694        60,    62,    63,    64,    91,    92,    93,    94,    95,   123,        59,    60,    62,    63,    64,    91,    92,    93,    94,    95,
695       124,   125,   126,   128,   129,   130,   131,   132,   133,   134,       123,   124,   125,   126,   128,   129,   130,   131,   132,   133,
696       135,   136,   137,   138,   139,   140,   141,   142,   143,   144,       134,   135,   136,   137,   138,   139,   140,   141,   142,   143,
697       145,   146,   147,   148,   149,   150,   151,   152,   153,   154,       144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
698       155,   156,   157,   158,   159,   160,   161,   162,   163,   164,       154,   155,   156,   157,   158,   159,   160,   161,   162,   163,
699       165,   166,   167,   168,   169,   170,   171,   172,   173,   174,       164,   165,   166,   167,   168,   169,   170,   171,   172,   173,
700       175,   176,   177,   178,   179,   180,   181,   182,   183,   184,       174,   175,   176,   177,   178,   179,   180,   181,   182,   183,
701       185,   186,   187,   188,   189,   190,   191,   192,   193,   194,       184,   185,   186,   187,   188,   189,   190,   191,   192,   193,
702       195,   196,   197,   198,   199,   200,   201,   202,   203,   204,       194,   195,   196,   197,   198,   199,   200,   201,   202,   203,
703       205,   206,   207,   208,   209,   210,   211,   212,   213,   214,       204,   205,   206,   207,   208,   209,   210,   211,   212,   213,
704       215,   216,   217,   218,   219,   220,   221,   222,   223,   224,       214,   215,   216,   217,   218,   219,   220,   221,   222,   223,
705       225,   226,   227,   228,   229,   230,   231,   232,   233,   234,       224,   225,   226,   227,   228,   229,   230,   231,   232,   233,
706       235,   236,   237,   238,   239,   240,   241,   242,   243,   244,       234,   235,   236,   237,   238,   239,   240,   241,   242,   243,
707       245,   246,   247,   248,   249,   250,   251,   252,   253,   254,       244,   245,   246,   247,   248,   249,   250,   251,   252,   253,
708       255,    39,    34,    32,    10,    13       254,   255,    39,    34,    32,    10,    13
709  };  };
710  # endif  # endif
711    
712  /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */  /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
713  static const unsigned short yyr1[] =  static const unsigned short int yyr1[] =
714  {  {
715         0,   226,   227,   227,   228,   228,   228,   228,   229,   229,         0,   227,   228,   228,   229,   229,   229,   229,   230,   230,
716       229,   229,   229,   230,   230,   230,   230,   230,   230,   230,       230,   230,   230,   231,   231,   231,   231,   231,   231,   231,
717       230,   230,   230,   230,   230,   230,   231,   231,   231,   231,       231,   231,   231,   231,   231,   231,   231,   232,   232,   232,
718       231,   231,   232,   232,   232,   232,   232,   232,   233,   233,       232,   232,   232,   232,   233,   233,   233,   233,   233,   233,
719       233,   233,   233,   233,   233,   233,   233,   233,   233,   233,       233,   234,   234,   234,   234,   234,   234,   234,   234,   234,
720       233,   233,   233,   233,   233,   233,   233,   233,   233,   233,       234,   234,   234,   234,   234,   234,   234,   234,   234,   234,
721       233,   234,   234,   234,   234,   234,   234,   235,   235,   235,       234,   234,   234,   234,   234,   234,   234,   235,   235,   235,
722       235,   236,   236,   237,   237,   238,   238,   238,   238,   238,       235,   235,   235,   236,   236,   236,   236,   237,   237,   238,
723       238,   238,   238,   238,   239,   239,   240,   240,   241,   241,       238,   239,   239,   239,   239,   239,   239,   239,   239,   239,
724       241,   242,   242,   243,   244,   245,   246,   247,   248,   249,       239,   239,   240,   240,   241,   241,   242,   242,   242,   242,
725       250,   250,   251,   252,   253,   254,   255,   255,   255,   255,       242,   242,   243,   243,   244,   245,   246,   247,   248,   249,
726       256,   256,   257,   257,   258,   258,   258,   259,   259,   260,       249,   250,   251,   251,   252,   253,   254,   255,   256,   256,
727       260,   260,   260,   260,   260,   260,   260,   260,   260,   261,       257,   257,   257,   257,   258,   258,   259,   259,   260,   260,
728       261,   261,   261,   261,   261,   261,   261,   261,   261,   262,       260,   261,   261,   262,   262,   262,   262,   262,   262,   262,
729       262,   262,   262,   262,   262,   262,   262,   262,   262,   262,       262,   262,   262,   263,   263,   263,   263,   263,   263,   263,
730       262,   262,   262,   262,   262,   262,   262,   262,   262,   262,       263,   263,   263,   264,   264,   264,   264,   264,   264,   264,
731       262,   262,   262,   262,   262,   262,   262,   262,   262,   262,       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,
732       262,   262,   262,   262,   262,   262,   262,   262,   262,   262,       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,
733       262,   262,   262,   262,   262,   262,   262,   262,   262,   262,       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,
734       262,   262,   262,   262,   262,   262,   262,   262,   262,   262,       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,
735       262,   262,   262,   262,   262,   262,   262,   262,   262,   262,       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,
736       262,   262,   262,   262,   262,   262,   262,   262,   262,   262,       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,
737       262,   262,   262,   262,   262,   262,   262,   262,   262,   262,       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,
738       262,   262,   262,   262,   262,   262,   262,   262,   262,   262,       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,
739       262,   262,   262,   262,   262,   262,   262,   262,   262,   262,       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,
740       262,   262,   262,   262,   262,   262,   262,   262,   262,   262,       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,
741       262,   262,   262,   262,   262,   262,   262,   262,   262,   262,       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,
742       262,   262,   262,   262,   262,   262,   262,   262,   262,   262,       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,
743       262,   262,   262,   262,   262,   262,   262,   262,   262,   262,       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,
744       262,   262,   262,   262,   262,   262,   262,   262,   262,   262,       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,
745       262,   262,   262,   262,   262,   262,   262,   262,   262,   262,       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,
746       262,   262,   262,   262,   262,   262,   262,   262,   262,   262,       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,
747       262,   262,   262,   262,   262,   262,   262,   262,   262,   262,       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,
748       262,   262,   262,   262,   262,   262,   262,   262,   262,   262,       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,
749       262,   262,   262,   262,   262,   262,   262,   262,   262,   262,       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,
750       262,   262,   262,   262,   262,   262,   262,   263,   263,   263,       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,
751       263,   264,   264,   265,   266,   267,   268,   269,   270,   271,       264,   264,   264,   264,   264,   264,   264,   264,   264,   264,
752       272,   273,   274,   275,   276,   277,   278,   279,   280,   281,       264,   264,   265,   265,   265,   265,   266,   266,   267,   268,
753       282,   283,   284,   285,   286,   287,   288,   289,   290,   291,       269,   270,   271,   272,   273,   274,   275,   276,   277,   278,
754       292,   293,   294,   295,   296,   297,   298,   299,   300,   301,       279,   280,   281,   282,   283,   284,   285,   286,   287,   288,
755       302,   303,   304,   305,   306,   307,   308,   309,   310,   311,       289,   290,   291,   292,   293,   294,   295,   296,   297,   298,
756       312,   313,   314       299,   300,   301,   302,   303,   304,   305,   306,   307,   308,
757         309,   310,   311,   312,   313,   314,   315,   316,   317,   318,
758         319,   320,   321,   322,   323,   324,   325
759  };  };
760    
761  /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN.  */  /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN.  */
# Line 674  static const unsigned char yyr2[] = Line 763  static const unsigned char yyr2[] =
763  {  {
764         0,     2,     2,     3,     0,     1,     1,     1,     1,     2,         0,     2,     2,     3,     0,     1,     1,     1,     1,     2,
765         2,     2,     2,     3,     3,     3,     3,     3,     3,     5,         2,     2,     2,     3,     3,     3,     3,     3,     3,     5,
766         3,     3,     3,     5,     1,     1,     1,     1,     1,     1,         3,     3,     3,     3,     5,     1,     1,     1,     1,     1,
        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,  
        5,     7,     9,     1,     5,     7,     9,     1,     1,     5,  
        5,     7,     9,     7,     9,     1,     5,     7,     5,     5,  
        5,     7,     9,     7,     9,     3,     3,     5,     3,     5,  
        3,     3,     3,     3,     3,     5,     7,     5,     9,     5,  
        5,     5,     5,     5,     3,     5,     1,     1,     1,     1,  
        1,     5,     7,     3,     1,     1,     1,     1,     1,     1,  
767         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
768         1,     1,     1,     2,     3,     4,     4,     1,     2,     1,         1,     1,     1,     5,     7,     9,     1,     5,     7,     9,
769           1,     1,     5,     5,     7,     9,     7,     9,     1,     5,
770           7,     5,     5,     5,     3,     1,     1,     7,     9,     7,
771           9,     3,     3,     5,     3,     5,     3,     3,     3,     3,
772           3,     5,     7,     5,     9,     5,     5,     5,     5,     5,
773           5,     5,     3,     5,     1,     1,     1,     1,     1,     1,
774           1,     1,     5,     7,     3,     1,     1,     1,     1,     1,
775           1,     1,     1,     1,     1,     1,     1,     1,     1,     3,
776           1,     1,     1,     1,     1,     1,     1,     2,     3,     4,
777           4,     1,     2,     1,     1,     1,     1,     1,     1,     1,
778           1,     1,     1,     1,     2,     2,     2,     2,     2,     2,
779           2,     2,     2,     1,     1,     1,     1,     1,     1,     1,
780         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
        2,     2,     2,     2,     2,     2,     2,     2,     2,     1,  
781         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
782         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
783         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
# Line 706  static const unsigned char yyr2[] = Line 798  static const unsigned char yyr2[] =
798         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
799         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
800         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
801         1,     1,     1,     1,     1,     1,     1,     1,     1,     1,         1,     1,     1,     1,     2,     2,     3,     3,     1,     1,
802         1,     1,     1,     1,     1,     1,     1,     1,     1,     2,         1,     3,     3,     6,     7,     4,     4,     3,     9,     6,
803         2,     3,     3,     1,     1,     1,     3,     3,     6,     7,         3,     9,    11,     6,     7,    17,    30,     8,     4,    13,
804         4,     4,     9,     6,     3,     9,    11,     7,    17,    30,        12,    11,    12,    11,    17,    21,    10,     6,    29,    20,
805         8,     4,    11,    12,    11,    10,     6,    29,    20,    19,        19,    29,    19,    30,    20,    17,    28,    27,    25,    18,
806        29,    19,    30,    20,    17,    28,    27,    25,    18,    17,        17,    27,    17,    15,    18,    15,    10,     6,     6,     4,
807        27,    17,    15,    18,    15,    10,     6,     5,    10,     5,         4,     5,    10,     5,    13,     4,     4
       13,     4,     4  
808  };  };
809    
810  /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state  /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
811     STATE-NUM when YYTABLE doesn't specify something else to do.  Zero     STATE-NUM when YYTABLE doesn't specify something else to do.  Zero
812     means the default is an error.  */     means the default is an error.  */
813  static const unsigned short yydefact[] =  static const unsigned short int yydefact[] =
814  {  {
815         0,     7,     8,     0,     0,     0,     0,     0,     0,     0,         0,     7,     8,     0,     0,     0,     0,     0,     0,     0,
816         0,     0,     0,     0,     5,     6,     0,     0,     0,     0,         0,     0,     0,     0,     5,     6,     0,     0,     0,     0,
817         0,     0,     0,     0,     0,     0,    24,    25,     0,     0,         0,     0,     0,     0,     0,     0,     0,    25,    26,     0,
818         0,     0,     0,     0,     0,     0,     0,     0,     0,     1,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
819       364,   365,     2,     0,     9,   216,   211,   209,   210,   119,         1,   379,   380,     2,     0,     9,   231,   226,   225,   223,
820       120,   121,   122,   123,   124,   125,   126,   127,   128,   139,       224,   133,   134,   135,   136,   137,   138,   139,   140,   141,
821       140,   141,   142,   143,   144,   145,   146,   147,   148,   149,       142,   153,   154,   155,   156,   157,   158,   159,   160,   161,
822       150,   151,   152,   153,   154,   155,   156,   157,   158,   159,       162,   163,   164,   165,   166,   167,   168,   169,   170,   171,
823       160,   161,   162,   163,   164,   165,   166,   167,   168,   169,       172,   173,   174,   175,   176,   177,   178,   179,   180,   181,
824       170,   171,   172,   173,   174,   175,   176,   177,   178,   179,       182,   183,   184,   185,   186,   187,   188,   189,   190,   191,
825       180,   181,   182,   183,   184,   185,   186,   187,   188,   189,       192,   193,   194,   195,   196,   197,   198,   199,   200,   201,
826       190,   201,   203,   204,   205,   206,   207,   208,   212,   213,       202,   203,   204,   215,   217,   218,   219,   220,   221,   222,
827       214,   215,   217,   218,   219,   220,   221,   222,   223,   224,       227,   228,   229,   230,   232,   233,   234,   235,   236,   237,
828       225,   226,   227,   228,   229,   230,   231,   232,   233,   234,       238,   239,   240,   241,   242,   243,   244,   245,   246,   247,
829       235,   236,   237,   238,   239,   240,   241,   242,   243,   244,       248,   249,   250,   251,   252,   253,   254,   255,   256,   257,
830       245,   246,   247,   248,   249,   250,   251,   252,   253,   254,       258,   259,   260,   261,   262,   263,   264,   265,   266,   267,
831       255,   256,   257,   258,   259,   260,   261,   262,   263,   264,       268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
832       265,   266,   267,   268,   269,   270,   271,   272,   273,   274,       278,   279,   280,   281,   282,   283,   284,   285,   286,   287,
833       275,   276,   277,   278,   279,   280,   281,   282,   283,   284,       288,   289,   290,   291,   292,   293,   294,   295,   296,   297,
834       285,   286,   287,   288,   289,   290,   291,   292,   293,   294,       298,   299,   300,   301,   302,   303,   304,   305,   306,   307,
835       295,   296,   297,   298,   299,   300,   301,   302,   303,   304,       308,   309,   310,   311,   312,   313,   314,   315,   316,   317,
836       305,   306,   307,   308,   309,   310,   311,   312,   313,   314,       318,   319,   320,   321,   322,   323,   324,   325,   326,   327,
837       315,   316,   317,   318,   319,   320,   321,   322,   323,   324,       328,   329,   330,   331,   332,   333,   334,   335,   336,   337,
838       325,   326,   327,   328,   329,   330,   331,   332,   333,   334,       338,   339,   340,   341,   342,   343,   344,   345,   346,   347,
839       335,   336,   337,   338,   339,   340,   341,   342,   343,   344,       348,   349,   350,   351,   352,   353,   354,   355,   356,   357,
840       345,   346,   347,   348,   349,   350,   351,   352,   353,   354,       358,   359,   360,   361,   362,   363,   364,   365,   366,   367,
841       355,   356,   363,    12,   129,    11,   112,    10,     0,     0,       368,   369,   370,   371,   378,    12,   143,    11,   126,    10,
842         0,     0,     0,     0,     0,     0,     0,     0,     0,   366,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
843         0,     0,   367,     0,     0,     0,     0,     0,   374,     0,         0,     0,   381,     0,     0,   382,     0,     0,     0,     0,
844         0,     3,   119,   120,   121,   122,   123,   124,   125,   126,         0,     0,   390,     0,     0,     3,   133,   134,   135,   136,
845       127,   128,   130,   117,   131,   132,   133,   134,   135,   136,       137,   138,   139,   140,   141,   142,   144,   131,   145,   146,
846       137,   138,   202,   191,   192,   193,   194,   195,   196,   197,       147,   148,   149,   150,   151,   152,   216,   205,   206,   207,
847       198,   199,   200,   113,     0,    13,     0,     0,     0,     0,       208,   209,   210,   211,   212,   213,   214,   127,     0,    13,
848        14,     0,    38,    43,    55,     0,    47,     0,     0,     0,         0,     0,     0,     0,     0,     0,    14,     0,    41,    46,
849         0,     0,    39,     0,    48,     0,     0,     0,     0,     0,        58,    65,    66,     0,    50,     0,     0,     0,     0,     0,
850         0,    15,     0,     0,    16,     0,     0,     0,     0,     0,        42,     0,    51,     0,     0,     0,     0,     0,     0,     0,
851        17,    90,    88,    89,     0,    18,     0,     0,     0,     0,        15,     0,     0,    16,     0,     0,     0,     0,     0,    17,
852         0,     0,    20,     0,     0,     0,     0,     0,     0,     0,        99,   101,    98,    96,   100,    97,     0,    18,     0,     0,
853         0,     0,     0,     0,    21,    26,    30,    29,    28,    27,         0,     0,     0,     0,    20,     0,     0,     0,     0,     0,
854        31,    22,    32,    36,    35,    34,    33,    37,     0,     0,         0,     0,     0,     0,     0,     0,     0,    21,    27,    31,
855         0,   370,   371,   412,     0,     0,     0,     0,   118,     0,        30,    29,    28,    33,    32,    22,    34,    38,    37,    36,
856          35,    40,    39,   373,    23,   372,     0,     0,     0,   385,
857         386,   436,     0,     0,     0,     0,     0,   132,     0,     0,
858           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
859           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
860           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
861           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
862           0,     0,     0,     0,     0,     0,     0,   375,   374,     0,
863           0,     0,     0,   433,     0,     0,     0,     0,     0,     0,
864           0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
865         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
866           0,    64,     0,     0,    74,    76,   134,   135,   136,   137,
867         138,   139,   140,   141,   142,    77,    78,     0,     0,     0,
868           0,     0,     0,     0,    79,     0,   117,     0,    80,     0,
869         116,    19,   114,     0,     0,     0,     0,     0,     0,     0,
870          71,     0,     0,     0,     0,     0,     0,     0,     0,     0,
871           0,     0,     0,     0,     0,     0,    72,   125,   124,     0,
872           0,     0,     0,     0,     0,    24,   383,     0,   389,   393,
873         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
874         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
875         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,   409,     0,  
876         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
877           0,   435,     0,     0,     0,     0,     0,     0,     0,     0,
878         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
879         0,     0,     0,     0,    68,    70,   120,   121,   122,   123,         0,     0,     0,     0,     0,     0,     0,     0,     0,   384,
      124,   125,   126,   127,   128,    71,    72,     0,     0,     0,  
        0,     0,     0,     0,    73,     0,   105,     0,    74,     0,  
      104,    19,   102,     0,     0,     0,     0,     0,     0,    65,  
880         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
881         0,     0,     0,    66,   111,   110,     0,     0,     0,     0,         0,    59,     0,     0,     0,    94,    95,    61,    62,    63,
882         0,    23,   368,     0,   373,     0,     0,     0,     0,     0,        52,     0,    47,     0,     0,     0,    53,     0,    43,     0,
883           0,     0,    73,     0,    75,     0,     0,     0,     0,     0,
884         376,   377,     0,   115,     0,   104,     0,     0,     0,     0,
885         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
886         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,   358,     0,   357,  
        0,     0,     0,     0,     0,   411,     0,     0,     0,     0,  
887         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
888         0,     0,     0,     0,   381,     0,     0,     0,   369,     0,       407,     0,   427,     0,   398,     0,     0,     0,     0,     0,
        0,     0,     0,     0,     0,     0,     0,    56,     0,     0,  
        0,    86,    87,    58,    59,    60,    49,     0,    44,     0,  
        0,     0,    50,     0,    40,     0,     0,     0,    67,     0,  
       69,     0,     0,     0,     0,     0,   361,   360,   359,   362,  
        0,   103,     0,    93,     0,     0,     0,     0,     0,     0,  
889         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
890           0,     0,     0,     0,     0,     0,     0,     0,     0,   429,
891         430,     0,     0,     0,     0,     0,     0,     0,     0,     0,
892         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
893         0,     0,   386,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,   391,     0,   394,     0,     0,   394,     0,
894           0,     0,     0,    60,    48,     0,    56,     0,    44,    54,
895           0,     0,     0,   223,   224,    92,   118,   120,   123,     0,
896         131,   122,   121,     0,     0,     0,     0,     0,   102,     0,
897           0,     0,     0,     0,     0,    81,   105,     0,   106,    83,
898         107,    85,    86,   108,     0,    87,   109,   110,    88,   111,
899           0,     0,     0,    89,   112,   113,    90,    91,    67,     0,
900          69,     0,     0,     0,     0,     0,     0,     0,     0,     0,
901           0,   397,     0,     0,     0,     0,     0,     0,     0,     0,
902         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
903           0,     0,     0,     0,     0,     0,   428,     0,     0,     0,
904           0,     0,     0,     0,     0,     0,     0,     0,   392,     0,
905           0,     0,     0,   431,     0,    49,    57,    55,    45,     0,
906           0,    93,     0,     0,   119,   128,     0,     0,     0,     0,
907         103,     0,     0,     0,     0,    82,   387,     0,    68,    70,
908         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
909           0,     0,     0,     0,   129,   130,     0,     0,   406,     0,
910         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,   375,     0,   377,     0,  
        0,   377,     0,     0,     0,    57,    45,     0,    53,     0,  
       41,    51,     0,     0,     0,   209,   210,    84,   106,   109,  
        0,   117,   108,   107,     0,     0,     0,     0,     0,    91,  
        0,     0,     0,     0,     0,     0,    75,    94,     0,    95,  
       77,    96,    79,    80,    97,    81,    98,    82,    99,     0,  
        0,     0,    83,   100,   101,    61,     0,    63,     0,     0,  
        0,     0,     0,     0,     0,     0,   380,     0,     0,     0,  
911         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
912         0,     0,     0,     0,     0,     0,     0,     0,     0,   406,         0,     0,     0,   388,     0,     0,     0,     0,    84,   401,
913         0,     0,     0,     0,     0,     0,     0,     0,   376,     0,         0,     0,     0,     0,     0,   403,     0,     0,     0,     0,
        0,     0,   407,     0,    46,    54,    52,    42,     0,     0,  
       85,     0,     0,   114,     0,     0,     0,     0,    92,     0,  
        0,     0,     0,    76,     0,    62,    64,     0,     0,     0,  
        0,     0,     0,     0,     0,     0,     0,   115,   116,     0,  
        0,   385,     0,     0,     0,     0,     0,     0,     0,     0,  
914         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
915         0,     0,   372,     0,     0,     0,     0,    78,   382,     0,         0,     0,   426,     0,   400,     0,   402,     0,     0,     0,
        0,   384,     0,     0,     0,     0,     0,     0,     0,     0,  
        0,     0,     0,     0,     0,     0,     0,   405,     0,   383,  
916         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
917         0,     0,     0,     0,     0,     0,     0,   410,     0,     0,         0,     0,     0,     0,     0,     0,   399,   434,     0,     0,
918         0,     0,     0,     0,     0,     0,   408,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,   432,     0,
919         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,   402,     0,     0,  
920         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
921         423,     0,     0,     0,     0,     0,     0,     0,     0,     0,
922         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
923         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,   378,     0,   399,   401,     0,  
        0,   399,     0,     0,     0,     0,     0,     0,     0,     0,  
      402,   404,     0,     0,     0,     0,     0,   398,     0,     0,  
        0,     0,     0,     0,     0,     0,     0,     0,     0,   389,  
      391,     0,     0,     0,     0,   389,     0,     0,     0,     0,  
        0,   394,     0,   393,   388,     0,     0,     0,     0,     0,  
        0,     0,     0,     0,   403,     0,     0,     0,     0,     0,  
924         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
925         0,     0,   393,     0,     0,     0,     0,     0,     0,     0,         0,     0,   395,     0,   420,   422,     0,   404,     0,   420,
926           0,     0,     0,     0,     0,     0,     0,     0,   423,   425,
927         404,     0,     0,     0,     0,     0,   419,     0,     0,     0,
928           0,     0,     0,     0,     0,     0,     0,     0,     0,   410,
929         412,     0,     0,     0,     0,     0,   410,     0,     0,     0,
930           0,     0,   415,     0,   414,   409,     0,     0,     0,     0,
931           0,     0,     0,     0,     0,     0,   424,     0,     0,     0,
932           0,     0,     0,   405,     0,     0,     0,     0,     0,     0,
933           0,     0,     0,     0,     0,   414,     0,     0,     0,     0,
934         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
935         0,     0,     0,     0,   397,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,   418,     0,     0,
936         0,     0,     0,     0,     0,     0,     0,     0,   400,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
937       396,     0,     0,     0,   395,     0,     0,   390,     0,   387,         0,   421,     0,   417,     0,     0,     0,   416,     0,     0,
938       392,   379       411,     0,   408,   413,   396
939  };  };
940    
941  /* YYDEFGOTO[NTERM-NUM]. */  /* YYDEFGOTO[NTERM-NUM]. */
942  static const short yydefgoto[] =  static const short int yydefgoto[] =
943  {  {
944        -1,    12,    13,    14,    15,   384,   391,   330,   372,   351,        -1,    12,    13,    14,    15,   397,   405,   336,   384,   360,
945       354,   365,   519,   638,   620,   360,   504,   508,   766,   768,       363,   377,   550,   682,   664,   369,   534,   538,   825,   827,
946       770,   773,   775,   777,   782,   511,   650,   509,   505,   747,       829,   832,   835,   838,   843,   541,   692,   539,   535,   805,
947       533,   748,   749,   750,   264,   512,   266,   578,   753,   695,       806,   566,   807,   808,   809,   266,   542,   268,   414,   812,
948        42,    43,    16,    17,    18,    19,    20,    21,   507,    22,       746,    43,    44,    16,    17,    18,    19,    20,    21,   837,
949        23,    24,    25,   325,   332,   333,   334,   386,   387,   388,       537,    22,    23,    24,    25,    26,   329,   338,   339,   340,
950       389,   366,   335,   374,   336,   337,   338,   339,   340,   341,       496,   398,   399,   400,   401,   402,   341,   342,   378,   343,
951       522,   342,   376,   343,   344,   345,   346,   347,   348,   525,       386,   344,   345,   346,   347,   348,   349,   553,   350,   388,
952       526,   527,   528,   621,   622,    26,   390,   378,    27       351,   352,   353,   354,   355,   356,   556,   557,   558,   357,
953         559,   560,   561,   665,   666,    27,   404,   390,    28
954  };  };
955    
956  /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing  /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
957     STATE-NUM.  */     STATE-NUM.  */
958  #define YYPACT_NINF -698  #define YYPACT_NINF -748
959  static const short yypact[] =  static const short int yypact[] =
960  {  {
961        54,  -698,  -698,    32,    16,    73,    76,    -2,    24,    80,        56,  -748,  -748,    63,    29,    92,    99,   112,   108,   162,
962        63,    45,   104,  -196,  1568,  -698,  -102,  -102,  -102,  -102,        37,   146,   222,  -193,  1661,  -748,    25,    25,    25,    25,
963      -102,  -102,  -102,  -102,  -102,  -102,  -102,  -698,   122,   155,        25,    25,    25,    25,    25,    25,    25,    25,  -748,   228,
964       193,   212,   214,   230,   225,    -5,   215,   234,   218,  -698,       230,   214,   216,   215,   236,   232,   109,    26,   237,   219,
965      -698,  -698,  -698,    31,  -698,  -698,  -698,  -698,  -698,  -698,      -748,  -748,  -748,  -748,    38,  -748,  -748,  -748,  -748,  -748,
966       209,   209,   209,   209,   209,   209,   209,   209,   209,  -698,      -748,  -748,   274,   274,   274,   274,   274,   274,   274,   274,
967      -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,       274,  -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,
968      -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,      -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,
969      -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,      -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,
970      -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,      -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,
971      -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,      -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,
972      -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,      -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,
973      -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,      -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,
974      -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,      -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,
975      -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,      -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,
976      -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,      -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,
977      -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,      -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,
978      -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,      -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,
979      -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,      -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,
980      -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,      -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,
981      -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,      -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,
982      -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,      -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,
983      -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,      -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,
984      -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,      -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,
985      -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,      -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,
986      -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,      -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,
987      -698,  -698,  -698,  2230,  -698,  -698,  -698,  -698,   236,    85,      -748,  -748,  -748,  -748,  -748,  2326,  -748,  -748,  -748,  -748,
988        93,    93,    64,    30,   236,    90,    61,    61,   236,  -698,       241,    82,    69,    69,    90,     8,   241,    87,    59,    59,
989       239,   221,  -698,   222,   240,   223,   232,   243,  -698,   231,      1883,   241,  -748,   245,   227,  -748,   233,   244,   234,   235,
990       224,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,       247,   250,  -748,   238,   239,  -748,  -748,  -748,  -748,  -748,
991      -698,  -698,   209,  -698,   209,   209,   209,   209,   209,   209,      -748,  -748,  -748,  -748,  -748,  -748,   274,  -748,   274,   274,
992       209,   209,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,       274,   274,   274,   274,   274,   274,  -748,  -748,  -748,  -748,
993      -698,  -698,  -698,  -698,   241,  -698,   101,   244,   237,   245,      -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,   248,  -748,
994      -698,  -102,  -698,  -698,  -698,  -102,  -698,  -102,  -102,  -102,        23,   251,   261,   240,   256,   262,  -748,    25,  -748,  -748,
995      -102,  -102,  -698,  -102,  -698,  -102,  -102,  -102,  -102,   235,      -748,  -748,  -748,    25,  -748,    25,    25,    25,    25,    25,
996       246,  -698,  -102,  -102,  -698,  -102,  -102,   238,   249,   251,      -748,    25,  -748,    25,    25,    25,    25,    25,   255,   253,
997      -698,  -698,  -698,  -698,   250,  -698,  -102,  -102,  -102,   242,      -748,    25,    25,  -748,    25,    25,    43,   271,   289,  -748,
998       255,   256,  -698,  -102,  -102,  -102,  -102,  -102,  -102,   247,      -748,  -748,  -748,  -748,  -748,  -748,   285,  -748,    25,    25,
999       252,   258,   233,   254,  -698,  -698,  -698,  -698,  -698,  -698,        25,   279,   298,   293,  -748,    25,    25,    25,    25,    25,
1000      -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -102,   253,        25,   282,   296,   301,   286,   290,   292,  -748,  -748,  -748,
1001       267,  -698,  -698,  -698,   248,   266,   268,   270,  -698,   273,      -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,
1002       272,   286,   287,   282,   288,    60,   281,   281,   281,   281,      -748,  -748,  -748,  2326,  1883,  -748,    25,   291,   294,  -748,
1003       281,   281,   281,   281,   281,   281,   281,   289,   290,  2230,      -748,  -748,   287,   295,   310,   318,   321,  -748,   328,   326,
1004      2230,   226,   226,   291,   295,   293,   279,   -28,  2230,   226,       330,   333,   331,   335,   319,   320,    67,   332,   332,   332,
1005       296,   283,   297,    20,   226,   226,   226,   226,  2448,   298,       332,   332,   332,   332,   332,   332,   332,   332,   332,   338,
1006       299,   280,   285,   306,   226,   302,   305,   317,  -698,   303,       339,  2326,  2326,   297,   297,   340,   344,   343,   329,    -9,
1007       309,   311,   320,   321,   318,   322,   324,  -102,  -102,  -102,      2326,   297,   348,   345,   351,    21,   297,   297,   297,   297,
1008      -102,  -102,  -102,  -102,  -102,  -102,  -102,  -102,  -102,  -102,      2545,   356,   353,   346,   349,   352,   354,  2326,  -748,   297,
1009      -102,  -102,   325,   326,  1789,  1789,   209,   209,   209,   209,       359,   355,   361,  -748,   357,   358,   360,   364,   362,   365,
1010       209,   209,   209,   209,   209,  -698,  -698,   327,   328,   331,       366,   372,   373,   347,   367,   369,    25,    25,    25,    25,
1011       323,   335,  1789,  1789,  -698,  -102,  -698,  -102,  -698,  -102,        25,    25,    25,    25,    25,    25,    25,    25,    25,    25,
1012      2230,  -698,  -698,   332,   336,   343,   333,   344,   340,  -698,        25,  -748,   375,   379,  1883,  1883,   274,   274,   274,   274,
1013      -102,  -102,  -102,  -102,  -102,  -102,  -102,  -102,  -102,  -102,       274,   274,   274,   274,   274,  -748,  -748,   380,   376,   382,
1014      -102,  -102,  -102,  -698,  2230,  -698,   350,   342,   356,   355,       374,   377,  1883,  1883,  -748,    25,  -748,    25,  -748,    25,
1015       358,  -698,  -698,   337,  -698,   354,   361,   351,   352,   359,      2326,  -748,  -748,   384,   381,   386,   378,    85,   383,   385,
1016       360,   362,   301,   226,     1,   226,   226,  2230,   226,  2230,      -748,    25,    25,    25,    25,    25,    25,    25,    25,    25,
1017      2230,   226,   226,   226,   226,  2230,  2230,   226,   353,   304,        25,    25,    25,    25,    25,    25,  -748,  2326,  -748,   391,
1018      2230,  2230,   363,   365,   310,   348,   366,  2230,  1126,  -698,       387,   370,   397,   402,   401,  -748,  -748,   388,  -748,  -748,
1019      1347,   226,   -74,   226,   367,  -698,   312,   369,   373,   372,       396,   403,   393,   394,   363,   398,   400,   337,   405,   399,
1020       226,   226,   226,   226,   226,   226,   226,   226,   226,  2230,       409,   297,    64,   297,   297,  2326,   297,  2326,  2326,   297,
1021       226,  2230,   226,   380,  -698,   381,   386,   383,  -698,   368,       297,   297,   297,  2326,  2326,   297,   404,   368,  2326,  2326,
1022       371,   385,   334,   390,   387,   388,   389,  -698,   370,   391,       408,   406,   371,   407,   410,  1217,  1439,   297,   -59,   297,
1023      -102,  -698,  -698,  -698,  -698,  -698,  -698,  1789,  2230,  -102,       411,  -748,   389,   412,   413,   420,   415,   416,   297,   297,
1024      -102,  -102,  -698,  1789,  2230,  -102,   338,   393,  -102,  2666,       297,   297,   297,   297,   297,   297,   297,   297,   297,  2326,
1025      -102,   339,   392,   394,   378,   341,  -698,  2230,  -698,  -698,       297,  2326,   297,   424,   417,   425,   431,   421,   436,  -748,
1026      -102,  -698,  -102,  -698,   347,   395,   397,   398,   399,  -102,       441,   426,   440,   390,   445,   442,   443,   444,   432,   392,
1027      -102,  -102,  -102,  -102,  -102,  -102,  -102,  -102,  2884,  -102,       434,  -748,   427,   446,    25,  -748,  -748,  -748,  -748,  -748,
1028      3102,  -102,   376,   396,   406,   357,   416,   402,   410,   408,      -748,  1883,  2326,    25,    25,    25,  -748,  1883,  2326,    25,
1029       422,   413,  -698,   412,   407,   411,   226,  2230,   226,   226,       395,   447,    25,  2764,    25,   428,   449,   448,   437,   429,
1030       226,  2230,   226,   415,   417,  2230,  2010,   418,   420,   421,      -748,  -748,    25,  -748,    25,  -748,   430,   450,   453,   455,
1031       423,   424,   226,   226,   419,   439,   442,   400,   441,   226,       460,   467,   462,    25,    25,    25,    25,    25,    25,    25,
1032       226,  2230,   226,   226,   226,  2230,   226,   199,  2010,  2230,        25,    25,    25,    25,  2983,    25,  3202,    25,   466,   482,
1033      2010,  2230,   401,   446,   404,   465,  -698,   467,  -698,   449,       485,   489,   438,   468,   493,   496,   495,   506,   509,   525,
1034       469,   458,   463,   499,   502,  -698,  1789,  -102,  -698,  -102,      -748,   524,  -748,   433,  -748,   520,   523,   297,  2326,   297,
1035      1789,  -698,   485,   491,  3320,   209,   209,  -698,  2230,  -698,       297,   297,  2326,   297,   527,   529,  2326,  2105,   530,   532,
1036       119,    21,  -698,  -698,   487,   458,   493,   505,   496,  -698,       534,   533,   536,   297,   297,   535,   537,   538,   481,  -748,
1037      -102,   492,   498,   444,   503,   511,  -698,  -698,  -102,  -698,      -748,   541,   297,   297,  2326,   297,   297,   229,  2326,   297,
1038      -698,  2230,  -698,  -698,  -698,  -698,  -698,  -698,  2230,  -102,       189,  2545,  2545,  2105,  2326,  2105,  2326,   484,   544,   545,
1039       209,   209,  -698,  -698,  -698,  -698,  3538,  -698,  3756,   512,       487,   539,   556,  -748,   558,  -748,   542,   550,   546,   555,
1040       516,   517,   504,   518,   501,   519,  -698,   507,   506,   521,       551,   567,   571,  -748,  1883,    25,  -748,    25,  1883,  -748,
1041      2230,  2230,  2230,  2230,   509,   513,  2010,   171,   187,   209,       554,   560,  3421,   274,   274,   590,  -748,  2326,  -748,   117,
1042       515,   520,   508,   533,   226,   522,   523,   524,   526,  -698,        -1,  -748,  -748,   557,   546,   563,   575,   566,  -748,    25,
1043       226,   226,  2010,  2010,   534,   531,   532,   525,  -698,   536,       561,   568,   512,   579,   584,  -748,  -748,    25,  -748,  -748,
1044       477,   535,  -698,   539,  -102,  2230,  2230,  -102,   538,   537,      2326,  -748,  -748,  -748,   578,  -748,  -748,  -748,  -748,  2326,
1045      -698,   209,   209,   209,   540,   541,   542,   557,  -698,   543,        25,   274,   274,  -748,  -748,  -748,  -748,  -748,   590,  3640,
1046       544,   545,   547,  -698,  -102,  -698,  -698,   548,   560,   546,       590,  3859,   585,   521,   592,   591,   580,   581,   593,   577,
1047       554,   549,   120,   510,   552,   553,   514,   209,   209,   555,       594,  -748,   582,   595,   583,   596,  2326,  2326,  2326,  2326,
1048       528,  -698,   561,   556,   551,   558,   559,   226,   563,   564,       586,   588,  2105,   156,   177,  2105,   274,   587,   597,   599,
1049       568,   566,   567,   562,   570,   579,   116,   588,   572,   586,       414,   297,   600,   598,   601,   603,  -748,   297,   602,   297,
1050       573,   590,  -698,   575,   157,   580,   577,  -698,  -698,   582,      2105,  2105,   606,   154,   607,   608,   613,   604,  -748,   589,
1051       585,  -698,   574,   603,   601,   605,     4,   595,   604,   576,       540,   609,   621,  -748,   612,    25,  2326,  2326,    25,   611,
1052       607,   578,   608,   581,   609,   600,   596,   583,   597,  -698,       610,   590,   274,   274,  -748,   274,   615,   614,   616,   627,
1053       207,   610,   611,   615,   606,   616,   621,   613,   622,   619,      -748,   617,   618,   619,   623,  -748,  -748,    25,   590,   590,
1054       623,   624,   211,   626,   625,   630,    40,  -698,   636,    71,       620,   622,   629,   636,   626,   646,   637,   631,   118,   625,
1055       614,   637,   584,   644,   634,   640,  -698,   657,   654,   659,       648,   634,   635,   628,   274,   274,   638,   630,  -748,   643,
1056       658,   660,   661,   662,   650,   602,   666,   665,   651,   674,       639,   632,   641,   645,   229,   650,   647,   651,   649,   644,
1057       655,   675,   617,   687,   685,   692,   691,   627,   677,   694,       662,   652,   653,   664,   655,   661,   114,   633,   670,   667,
1058       678,   698,   701,   681,   702,   627,    12,   703,   688,   693,       685,   671,   686,  -748,   672,   116,   677,   674,  -748,  -748,
1059       699,   705,   690,   700,   697,   706,   712,   704,   708,   716,       683,   687,   679,   678,   642,  -748,   654,   701,   699,   706,
1060       721,   718,   725,   707,   723,   728,   726,   710,   722,   720,        18,   697,   711,   709,   656,   712,   657,   713,   658,   715,
1061       733,   729,   741,   740,   727,  -698,   730,   732,   684,   748,       708,   700,   665,   704,  -748,   707,  -748,   729,   155,   735,
1062       749,  -698,   753,   732,   743,   755,   695,   760,   746,   750,       739,   740,   728,   742,   734,   738,   749,   751,   736,   752,
1063      -698,  -698,   758,   762,   747,   751,   752,  -698,   754,   756,       741,   187,   745,   743,   737,    17,  -748,  -748,   747,   756,
1064       763,   764,   767,   773,   768,   769,   781,   782,   776,   774,        66,   755,   746,   702,   762,   750,   754,   757,  -748,   772,
1065       735,   778,   777,   797,   798,  -698,   774,   788,   736,   802,       770,   775,   773,   777,   781,   778,   768,   718,   783,   779,
1066       790,  -698,   796,   739,  -698,   795,   791,   742,   799,   805,       776,   774,   792,   782,   794,   744,   800,   797,   804,   803,
1067       739,   803,   804,   815,  -698,   807,   820,   806,   823,   827,       748,   795,   788,   809,   796,   813,   816,   798,   818,   748,
1068       819,   828,   829,   821,   830,   814,   765,   816,   822,   824,        15,   822,   806,   810,   811,   814,   820,   805,   815,   812,
1069       825,   826,  -698,   831,   841,   843,   836,   845,   846,   847,       819,   827,   817,   823,   821,   825,   831,   833,   845,   837,
1070       848,   853,   842,   839,   838,   851,   844,   850,   852,   854,       843,   848,   846,   835,   842,   841,   861,   847,   854,   866,
1071       856,   857,   863,   868,  -698,   869,   870,   871,   858,   859,       865,   850,  -748,   857,   855,   807,   874,   808,   873,  -748,
1072       862,   864,   865,   866,   867,   878,   881,   872,  -698,   883,       877,   855,   863,   878,   824,   881,   867,   872,  -748,  -748,
1073      -698,   884,   874,   875,  -698,   876,   877,  -698,   880,  -698,      -748,   883,   884,   875,   870,   871,  -748,   880,   876,   886,
1074      -698,  -698       892,   895,   896,   897,   887,   890,   900,   901,   879,   888,
1075         839,   898,   891,   911,   912,   914,  -748,   888,   906,   849,
1076         918,   907,  -748,   913,   852,  -748,   908,   905,   860,   910,
1077         919,   576,   852,   917,   916,   932,  -748,   922,   938,   923,
1078         940,   941,   944,  -748,   945,   949,   933,   950,   934,   885,
1079         937,   948,   942,   939,   951,  -748,   952,   957,   959,   958,
1080         961,   963,   968,   967,   973,   962,   960,   954,   964,   965,
1081         966,   969,   972,   975,   977,   976,   982,  -748,   983,   985,
1082         986,   974,   955,   979,   981,   980,   984,   987,   988,   990,
1083         989,  -748,   996,  -748,   998,   991,   992,  -748,   993,   994,
1084        -748,   995,  -748,  -748,  -748
1085  };  };
1086    
1087  /* YYPGOTO[NTERM-NUM].  */  /* YYPGOTO[NTERM-NUM].  */
1088  static const short yypgoto[] =  static const short int yypgoto[] =
1089  {  {
1090      -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,      -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,
1091      -698,  -698,  -698,  -570,  -698,  -698,  -698,  -698,  -658,    87,      -748,  -748,  -748,  -608,  -748,  -748,  -748,  -748,  -554,   113,
1092      -698,    92,    37,  -698,  -698,  -439,   219,   364,   345,  -697,      -748,   121,    68,  -748,  -748,  -477,   269,   439,   418,  -747,
1093      -698,   316,   201,    13,   -10,   -14,   292,   425,  -410,   -12,       149,  -555,   350,   263,    14,   -10,   -14,   300,  -314,  -438,
1094       886,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,  -698,       -11,   997,  -748,  -748,  -748,  -748,  -748,  -748,  -748,  -748,
1095      -698,  -698,  -698,  -156,  -698,  -698,  -131,  -255,  -242,  -241,      -748,  -748,  -748,  -748,  -748,  -748,  -247,   761,   763,   764,
1096      -240,  -698,   663,  -698,   652,  -254,  -698,  -698,   648,   489,      -211,   760,   765,  -257,  -254,  -252,   -58,  -748,  -748,   767,
1097      -698,  -698,  -698,   667,   668,  -252,  -698,  -698,   490,  -698,      -748,   766,  -255,  -748,  -748,   769,   605,  -748,   771,  -748,
1098      -698,  -698,  -698,  -698,  -698,  -698,   653,  -698,  -698       780,   784,  -253,  -748,  -748,   624,  -748,  -748,  -748,  -748,
1099        -748,  -748,  -748,  -748,  -748,  -748,   785,  -748,  -748
1100  };  };
1101    
1102  /* YYTABLE[YYPACT[STATE-NUM]].  What to do in state STATE-NUM.  If  /* YYTABLE[YYPACT[STATE-NUM]].  What to do in state STATE-NUM.  If
1103     positive, shift that token.  If negative, reduce the rule which     positive, shift that token.  If negative, reduce the rule which
1104     number is the opposite.  If zero, do what YYDEFACT says.     number is the opposite.  If zero, do what YYDEFACT says.
1105     If YYTABLE_NINF, syntax error.  */     If YYTABLE_NINF, syntax error.  */
1106  #define YYTABLE_NINF -130  #define YYTABLE_NINF -144
1107  static const short yytable[] =  static const short int yytable[] =
1108  {  {
1109       265,   640,   267,   501,   268,   269,   270,   271,   272,   273,       267,   684,   575,   269,  -143,   270,   271,   272,   273,   274,
1110       274,   275,   276,   277,   278,   541,   352,   355,   353,   356,       275,   276,   277,   278,   279,   280,   281,   361,   364,   362,
1111       618,   785,   393,   787,    32,   286,   924,   506,    40,    41,       365,   536,   408,   531,   337,   409,   848,   410,   850,   380,
1112        33,   287,   996,   947,   619,   394,   395,   396,   516,   925,       385,   332,    41,    42,   416,   376,  1092,  1039,  1048,   995,
1113       303,   303,   303,   303,   303,   303,   303,   303,   303,   997,       546,  1012,   307,   307,   307,   307,   307,   307,   307,   307,
1114       517,    29,   328,    28,   772,     1,   364,     2,   779,   518,       307,  1049,   547,  1093,  1013,  1050,   291,     1,   548,     2,
1115       956,   910,    34,   302,   304,   305,   306,   307,   308,   309,        37,   549,   429,   430,   292,    30,   306,   308,   309,   310,
1116       310,   311,     3,   957,     4,     5,    38,   958,     6,   379,       311,   312,   313,   314,   315,     3,    38,     4,     5,   391,
1117       379,   358,   357,     7,   358,    36,   380,   380,     8,     9,       392,     6,   455,   430,   662,    29,     7,   391,   358,  1053,
1118        10,   381,    11,   960,   359,    30,   382,   382,    31,   383,       393,     8,     9,    10,   495,    11,   394,   395,   663,   396,
1119       383,    37,    35,   326,    39,   327,   961,   328,   369,   840,       359,   330,  1054,   331,   394,   332,   381,   396,   328,   366,
1120       324,   349,   370,   331,   617,   329,   623,   624,   368,   373,       382,   367,   624,   333,   661,    31,   667,   668,   383,   334,
1121       371,   262,   398,   350,   809,   855,   856,   292,   293,   294,       335,   368,    32,   876,   625,   911,   296,   297,   298,   299,
1122       295,   296,   297,   298,   299,   300,   301,   906,   883,   410,       300,   301,   302,   303,   304,   305,   990,   963,   999,    33,
1123       411,   361,   884,   279,   653,   385,   392,   502,   503,   907,       289,   964,   695,   928,   929,    34,   290,    35,   991,   965,
1124       885,   659,   660,   661,   662,   663,   664,   665,   666,   667,      1000,   703,   704,   705,   706,   707,   708,   709,   710,   711,
1125       467,   471,   472,   473,   474,   475,   476,   477,   478,   479,       712,   713,   912,   532,   533,   296,   297,   298,   299,   300,
1126       480,   481,   506,   468,   469,   470,   841,   280,   914,   292,       301,   302,   303,   304,   305,   931,  1029,  1030,    39,   497,
1127       293,   294,   295,   296,   297,   298,   299,   300,   301,   520,       536,   932,   498,   913,   499,    36,   296,   297,   298,   299,
1128       915,   523,   842,   502,   503,   292,   293,   294,   295,   296,       300,   301,   302,   303,   304,   305,   841,   842,   296,   516,
1129       297,   298,   299,   300,   301,   780,   781,   292,   486,   487,       517,   518,   519,   520,   521,   522,   523,   524,  1043,  1044,
1130       488,   489,   490,   491,   492,   493,   494,   292,   293,   294,       551,   831,   554,   532,   533,   840,   846,   847,   615,   616,
1131       295,   296,   297,   298,   299,   300,   301,   938,   939,   281,       403,   411,    40,  -143,  -143,  -143,   500,   501,   502,   503,
1132       834,   951,   952,   837,   292,   486,   487,   488,   489,   490,       504,   505,   506,   507,   508,   509,   510,   511,   296,   516,
1133       491,   492,   493,   494,  -129,  -129,  -129,   735,   284,   282,       517,   518,   519,   520,   521,   522,   523,   524,   834,   264,
1134       283,   285,   288,   289,   290,    40,   324,   399,   400,   401,       282,   284,   286,   283,   285,   287,   294,   293,   905,   288,
1135       403,   402,   407,   759,   404,   405,   409,   406,   413,   412,       793,   908,   328,    41,   417,   418,   420,   433,   422,   415,
1136       452,   414,   428,   427,   434,   441,   433,   435,    -4,    -4,       423,   419,   421,   424,   428,   425,   818,   431,   426,   434,
1137       440,   436,   442,   450,   451,   449,   453,   457,   459,   460,       450,    -4,    -4,   296,   297,   298,   299,   300,   301,   302,
1138       455,   461,   408,   462,   408,   408,   408,   408,   408,   408,       303,   304,   305,   432,   449,   435,   427,   456,   427,   427,
1139       408,   408,   456,   458,   463,   464,   465,   380,   514,   466,       427,   427,   427,   427,   427,   427,   296,   516,   517,   518,
1140       482,   483,   497,   498,   499,   500,   538,   513,   515,   415,       519,   520,   521,   522,   523,   524,   457,   458,   462,   463,
1141       539,   536,   537,   416,   542,   417,   418,   419,   420,   421,       464,   471,   472,   475,   474,   476,   436,   482,   473,   480,
1142       263,   422,   540,   423,   424,   425,   426,   543,   545,   544,       481,   484,   437,   483,   438,   439,   440,   441,   442,   485,
1143       429,   430,   547,   431,   432,   546,   548,   549,   551,   550,       443,   486,   444,   445,   446,   447,   448,   487,   488,   489,
1144       552,   568,   569,   572,   437,   438,   439,   574,   584,   573,       451,   452,   490,   453,   454,   493,   491,   492,   494,   495,
1145       575,   443,   444,   445,   446,   447,   448,   576,   585,   586,       512,   513,   527,   528,   265,   529,   530,   459,   460,   461,
1146       588,   587,   589,   603,   604,   848,   605,   606,   607,   608,       543,   544,   570,   545,   465,   466,   467,   468,   469,   470,
1147       609,   610,   611,   644,   612,   636,   454,   676,   613,   616,       569,   574,   576,   571,   578,   572,   589,   588,   577,   583,
1148       656,   614,   637,   615,   657,   641,   642,   645,   643,   654,       573,   645,   584,   654,   580,   579,   582,   581,   585,   586,
1149       655,   658,   672,   673,   674,   675,   677,   678,   680,   681,       587,   590,   606,   478,   920,   479,   607,   610,   611,   612,
1150       682,   722,   684,   685,   698,   683,   700,   495,   496,   694,       614,   620,   613,   622,   621,   643,   626,   623,   627,   644,
1151       699,   705,   679,   706,   707,   723,   693,   697,   727,   701,       646,   647,   648,   650,   651,   652,   657,   653,   658,   659,
1152       529,   530,   531,   532,   535,   704,   724,   708,   726,   728,       655,   649,   656,   660,   698,   699,   919,   680,   686,   525,
1153       729,   730,   731,   732,   733,   725,   734,   742,   743,   755,       526,   685,   689,   688,   696,   701,   702,   718,   720,   719,
1154       754,   761,   756,   757,   758,   553,   554,   555,   556,   557,       721,   722,   562,   563,   564,   565,   568,   681,   700,   723,
1155       558,   559,   560,   561,   562,   563,   564,   565,   566,   567,       687,   724,   725,   726,   728,   729,   730,   734,   732,   736,
1156       762,   765,   570,   571,   763,   790,   303,   303,   303,   303,       735,   731,   749,   790,   745,   750,   751,   756,   697,   727,
1157       303,   303,   303,   303,   303,   792,   793,   794,   764,   789,       757,   733,   758,   759,   744,   591,   592,   593,   594,   595,
1158       579,   579,   791,   581,   796,   582,   797,   583,   795,   302,       596,   597,   598,   599,   600,   601,   602,   603,   604,   605,
1159       304,   305,   306,   307,   308,   309,   310,   311,   590,   591,       760,   761,   777,   608,   609,   778,   307,   307,   307,   307,
1160       592,   593,   594,   595,   596,   597,   598,   599,   600,   601,       307,   307,   307,   307,   307,   779,   783,   748,   752,   755,
1161       602,   798,   799,   804,   805,   810,   811,   812,   813,   818,       780,   415,   415,   784,   617,   785,   618,   781,   619,   787,
1162       815,   816,   817,   819,   825,   824,   827,   826,   829,   846,       306,   308,   309,   310,   311,   312,   313,   314,   315,   786,
1163       828,   830,   832,   833,   626,   831,   838,   629,   630,   631,       628,   629,   630,   631,   632,   633,   634,   635,   636,   637,
1164       632,   839,   844,   635,   847,   323,   851,   852,   845,   849,       638,   639,   640,   641,   642,   788,   789,   782,   791,   792,
1165       857,   850,   858,   860,   859,   862,   648,   651,   648,   861,       800,   801,   814,   813,   816,   327,   815,   817,   820,   821,
1166       864,   865,   863,   869,   866,   872,   873,   878,   870,   871,       823,   822,   824,   852,   853,   854,   855,   857,   858,   856,
1167       876,   874,   879,   875,   880,   881,   669,   882,   671,   887,       860,   859,   670,   861,   863,   673,   674,   675,   676,   862,
1168       892,   888,   898,   890,   893,   895,   899,   896,   886,   900,       864,   679,   865,   870,   871,   875,   877,   878,   879,   880,
1169       903,   904,   889,   901,   902,   905,   908,   910,   686,   909,       882,   884,   883,   693,   478,   478,   885,   886,   888,   892,
1170       911,   912,   913,   916,   917,   687,   891,   688,   689,   690,       893,   894,   895,   896,   897,   899,   898,   900,  1173,   904,
1171       918,   691,   919,   692,   921,   922,   923,   926,   927,   929,       903,   901,   902,   937,   909,   916,   715,   910,   717,   938,
1172       931,   933,   934,   937,   935,   946,   940,   941,   702,   894,       413,   918,   926,   930,   923,   924,   917,   922,   921,   933,
1173       703,   942,   944,   947,   949,   943,   962,   709,   710,   711,       935,   934,   940,   936,   941,   942,   949,   939,   943,   946,
1174       712,   713,   714,   715,   716,   717,   945,   719,   948,   721,       955,   950,   947,   737,   948,   956,   951,   953,   952,   958,
1175       954,   959,   920,   950,   928,   953,   930,   955,   963,   932,       738,   957,   739,   740,   741,   959,   742,   960,   743,   961,
1176       965,   936,   964,   966,   737,   738,   739,   967,   741,   968,       962,   967,   968,   973,   969,   981,   983,   971,   974,   976,
1177       969,   970,   752,   973,   971,   972,   751,   975,   974,   651,       979,   753,   982,   754,   977,   984,   980,   988,   989,   993,
1178       976,   977,   980,   979,   981,   767,   769,   978,   767,   774,       985,   986,   762,   763,   764,   765,   766,   767,   768,   769,
1179       776,   982,   767,   784,   752,   983,   752,   751,   751,   984,       770,   771,   772,   987,   774,   994,   776,   995,   997,   996,
1180       751,   985,   986,   987,   990,   988,   989,   991,   992,   993,       998,  1001,  1002,   327,   966,  1003,  1006,   970,  1005,   972,
1181       994,   998,   995,   999,   800,   801,  1000,   802,   803,  1003,      1004,   975,   992,  1009,  1010,   795,   796,   797,  1011,   799,
1182      1001,  1002,  1004,  1005,  1007,   303,   303,  1006,  1014,  1008,      1014,  1007,  1015,   811,  1016,  1018,  1020,   810,  1022,  1024,
1183       408,  1009,  1010,  1011,  1012,   484,   485,  1013,   814,  1015,       693,  1023,  1026,  1008,  1027,  1017,  1019,  1021,   826,   828,
1184      1016,  1017,  1018,  1019,   510,  1021,   820,  1020,   807,   808,      1028,   826,   833,   836,  1025,   826,   845,   568,   568,   811,
1185      1022,  1023,  1024,  1026,   534,  1025,  1029,   821,  1027,  1030,       810,   811,  1031,   810,   477,   810,  1032,  1033,  1034,  1035,
1186       303,   303,  1028,  1031,  1032,  1033,   323,   323,  1035,  1036,      1036,  1037,  1038,  1039,  1041,  1047,  1040,   327,  1056,  1046,
1187      1038,  1037,  1040,  1034,  1039,  1045,  1046,  1043,  1041,  1047,      1051,  1042,  1052,   866,   867,  1045,   868,   869,  1055,  1058,
1188      1042,  1044,   752,   807,   808,  1048,   751,   408,   408,   303,      1059,  1057,  1060,   307,   307,  1062,  1061,  1063,  1064,   427,
1189      1050,  1049,   323,  1051,  1052,  1053,   769,   774,   752,   752,      1065,   514,   515,  1066,  1067,  1068,  1069,  1070,   881,  1071,
1190      1054,  1056,   751,   751,  1057,  1058,  1059,  1060,   577,   577,       540,  1075,  1072,  1074,   327,   327,   887,   873,   874,  1073,
1191      1062,  1063,   843,  1055,  1061,  1064,   323,  1065,  1066,  1067,       567,  1077,  1076,  1079,  1080,  1081,  1082,  1084,  1085,   889,
1192      1068,   303,   303,   408,  1069,  1070,  1071,  1073,  1075,  1072,      1086,   307,   307,  1078,  1088,  1089,  1087,  1083,  1090,  1091,
1193      1074,  1079,   877,  1076,  1077,  1078,  1080,  1081,  1083,  1084,       327,  1094,  1095,  1097,  1096,  1100,  1098,  1099,  1101,  1102,
1194      1082,  1086,  1087,  1085,   867,   868,  1090,   408,   408,  1092,      1104,  1103,  1108,  1105,  1109,   873,   874,  1106,   811,  1107,
1195      1089,  1088,  1094,   776,  1093,  1097,  1091,  1095,  1096,   323,      1110,   811,   810,   427,   427,   810,   307,   327,  1111,  1112,
1196      1098,  1099,  1100,   510,  1101,   627,   628,  1102,  1108,  1104,      1113,  1114,  1115,   828,  1117,   833,   811,   811,  1116,  1118,
1197      1105,   633,   634,  1109,  1107,  1110,   639,   639,  1103,  1106,       810,   810,   413,   413,  1119,  1120,  1121,  1122,  1123,  1124,
1198      1111,  1112,  1113,  1114,   647,  1115,   647,  1117,  1116,  1118,       915,  1125,  1126,  1128,  1130,  1132,  1127,  1129,  1131,  1133,
1199      1122,  1120,  1119,  1123,  1121,  1125,  1126,   853,  1124,  1127,      1135,  1136,   307,   307,  1137,   427,  1138,  1139,  1141,  1154,
1200      1128,  1129,  1130,   854,   897,   668,  1131,   670,   783,   323,      1142,  1140,  1144,  1134,  1143,  1146,   954,  1145,  1147,  1148,
1201       323,   625,   760,   375,   362,   323,   323,   652,   580,   291,      1149,  1150,  1151,  1152,  1153,  1155,   944,   945,  1156,  1158,
1202       397,   323,   521,   524,     0,     0,   367,     0,     0,   323,      1159,  1160,  1157,  1161,   427,   427,  1162,  1164,  1163,  1165,
1203       363,     0,   377,     0,     0,     0,     0,     0,     0,     0,       836,  1167,  1168,  1166,  1169,   540,  1171,   671,   672,  1170,
1204         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,      1172,  1174,  1175,   677,   678,  1176,  1177,  1178,   683,   683,
1205       323,     0,   323,     0,     0,     0,     0,     0,     0,     0,      1181,  1179,  1180,  1185,  1183,   477,   477,  1182,  1184,  1186,
1206         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,      1187,   327,   327,  1189,  1188,  1192,  1195,   327,   327,  1190,
1207        1191,  1196,  1193,   327,  1198,  1197,  1199,  1200,  1194,   714,
1208        1201,   716,  1202,  1203,  1205,  1219,  1204,  1208,  1211,  1213,
1209         925,  1207,  1206,  1210,  1212,  1214,  1215,  1209,  1216,  1217,
1210         927,  1225,  1218,  1226,   327,  1220,   327,  1221,  1222,  1228,
1211        1223,  1229,   978,   819,   914,  1224,  1227,  1230,  1231,  1232,
1212        1233,     0,  1234,   844,   669,   370,   694,   371,   372,   406,
1213         373,   295,   379,     0,   407,   374,   387,     0,     0,     0,
1214           0,     0,     0,     0,     0,     0,     0,   389,   375,     0,
1215           0,     0,     0,     0,   412,     0,     0,     0,     0,     0,
1216         552,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1217           0,     0,     0,     0,     0,     0,     0,     0,   794,   555,
1218           0,     0,   798,     0,   327,     0,   802,     0,   327,     0,
1219           0,     0,   327,     0,     0,     0,     0,   327,     0,     0,
1220           0,     0,     0,     0,   830,     0,     0,     0,   839,     0,
1221           0,   567,   567,     0,   849,     0,   851,     0,     0,     0,
1222         327,     0,     0,     0,     0,     0,     0,     0,     0,   327,
1223           0,     0,     0,     0,     0,     0,     0,     0,     0,   327,
1224           0,   327,     0,     0,     0,     0,     0,     0,     0,     0,
1225         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1226         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,     0,   736,     0,     0,     0,   740,     0,     0,  
        0,   744,     0,     0,     0,     0,     0,     0,     0,     0,  
        0,     0,     0,     0,     0,     0,     0,   771,   323,     0,  
        0,   778,   323,     0,     0,   786,   323,   788,     0,     0,  
      323,     0,     0,     0,     0,     0,     0,     0,     0,     0,  
1227         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        0,     0,     0,   323,     0,     0,     0,     0,     0,     0,  
      323,     0,     0,     0,     0,     0,     0,     0,   323,     0,  
      323,     0,     0,     0,     0,     0,     0,     0,     0,     0,  
1228         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
1229         0,     0,     0,     0,     0,     0,     0,     0,     0,     0,         0,     0,     0,     0,     0,     0,   327,   327,     0,     0,
1230         0,     0,     0,     0,     0,     0,   639,   835,   836,   639,         0,     0,     0,     0,     0,     0,   683,   906,   907,   683,
1231         0,     0,     0,     0,     0,     0,     0,   323,   323,   312,       316,    46,    47,    48,    49,    50,   317,   318,   319,   320,
1232        45,    46,    47,    48,   313,   314,   315,   316,   317,   318,       321,   322,   323,   324,   325,   326,    61,    62,    63,    64,
      319,   320,   321,   322,    59,    60,    61,    62,    63,    64,  
1233        65,    66,    67,    68,    69,    70,    71,    72,    73,    74,        65,    66,    67,    68,    69,    70,    71,    72,    73,    74,
1234        75,    76,    77,    78,    79,    80,    81,    82,    83,    84,        75,    76,    77,    78,    79,    80,    81,    82,    83,    84,
1235        85,    86,    87,    88,    89,    90,    91,    92,    93,    94,        85,    86,    87,    88,    89,    90,    91,    92,    93,    94,
# Line 1127  static const short yytable[] = Line 1249  static const short yytable[] =
1249       225,   226,   227,   228,   229,   230,   231,   232,   233,   234,       225,   226,   227,   228,   229,   230,   231,   232,   233,   234,
1250       235,   236,   237,   238,   239,   240,   241,   242,   243,   244,       235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
1251       245,   246,   247,   248,   249,   250,   251,   252,   253,   254,       245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
1252       255,   256,   257,   258,   259,   260,   261,   646,     0,   262,       255,   256,   257,   258,   259,   260,   261,   262,   263,   690,
1253       312,    45,    46,    47,    48,   313,   314,   315,   316,   317,         0,   264,   316,    46,    47,    48,    49,    50,   317,   318,
1254       318,   319,   320,   321,   322,    59,    60,    61,    62,    63,       319,   320,   321,   322,   323,   324,   325,   326,    61,    62,
       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,     0,   649,  
      262,    44,    45,    46,    47,    48,    49,    50,    51,    52,  
       53,    54,    55,    56,    57,    58,    59,    60,    61,    62,  
1255        63,    64,    65,    66,    67,    68,    69,    70,    71,    72,        63,    64,    65,    66,    67,    68,    69,    70,    71,    72,
1256        73,    74,    75,    76,    77,    78,    79,    80,    81,    82,        73,    74,    75,    76,    77,    78,    79,    80,    81,    82,
1257        83,    84,    85,    86,    87,    88,    89,    90,    91,    92,        83,    84,    85,    86,    87,    88,    89,    90,    91,    92,
# Line 1171  static const short yytable[] = Line 1271  static const short yytable[] =
1271       223,   224,   225,   226,   227,   228,   229,   230,   231,   232,       223,   224,   225,   226,   227,   228,   229,   230,   231,   232,
1272       233,   234,   235,   236,   237,   238,   239,   240,   241,   242,       233,   234,   235,   236,   237,   238,   239,   240,   241,   242,
1273       243,   244,   245,   246,   247,   248,   249,   250,   251,   252,       243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
1274       253,   254,   255,   256,   257,   258,   259,   260,   261,     0,       253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
1275         0,   262,   312,    45,    46,    47,    48,   313,   314,   315,       263,     0,   691,   264,    45,    46,    47,    48,    49,    50,
      316,   317,   318,   319,   320,   321,   322,    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,  
        0,     0,   262,   312,    45,    46,   745,   746,    49,    50,  
1276        51,    52,    53,    54,    55,    56,    57,    58,    59,    60,        51,    52,    53,    54,    55,    56,    57,    58,    59,    60,
1277        61,    62,    63,    64,    65,    66,    67,    68,    69,    70,        61,    62,    63,    64,    65,    66,    67,    68,    69,    70,
1278        71,    72,    73,    74,    75,    76,    77,    78,    79,    80,        71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
# Line 1216  static const short yytable[] = Line 1294  static const short yytable[] =
1294       231,   232,   233,   234,   235,   236,   237,   238,   239,   240,       231,   232,   233,   234,   235,   236,   237,   238,   239,   240,
1295       241,   242,   243,   244,   245,   246,   247,   248,   249,   250,       241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
1296       251,   252,   253,   254,   255,   256,   257,   258,   259,   260,       251,   252,   253,   254,   255,   256,   257,   258,   259,   260,
1297       261,   502,   503,   312,    45,    46,    47,    48,   313,   314,       261,   262,   263,     0,     0,   264,   316,    46,    47,    48,
1298       315,   316,   317,   318,   319,   320,   321,   322,    59,    60,        49,    50,   317,   318,   319,   320,   321,   322,   323,   324,
1299        61,    62,    63,    64,    65,    66,    67,    68,    69,    70,       325,   326,    61,    62,    63,    64,    65,    66,    67,    68,
1300        71,    72,    73,    74,    75,    76,    77,    78,    79,    80,        69,    70,    71,    72,    73,    74,    75,    76,    77,    78,
1301        81,    82,    83,    84,    85,    86,    87,    88,    89,    90,        79,    80,    81,    82,    83,    84,    85,    86,    87,    88,
1302        91,    92,    93,    94,    95,    96,    97,    98,    99,   100,        89,    90,    91,    92,    93,    94,    95,    96,    97,    98,
1303       101,   102,   103,   104,   105,   106,   107,   108,   109,   110,        99,   100,   101,   102,   103,   104,   105,   106,   107,   108,
1304       111,   112,   113,   114,   115,   116,   117,   118,   119,   120,       109,   110,   111,   112,   113,   114,   115,   116,   117,   118,
1305       121,   122,   123,   124,   125,   126,   127,   128,   129,   130,       119,   120,   121,   122,   123,   124,   125,   126,   127,   128,
1306       131,   132,   133,   134,   135,   136,   137,   138,   139,   140,       129,   130,   131,   132,   133,   134,   135,   136,   137,   138,
1307       141,   142,   143,   144,   145,   146,   147,   148,   149,   150,       139,   140,   141,   142,   143,   144,   145,   146,   147,   148,
1308       151,   152,   153,   154,   155,   156,   157,   158,   159,   160,       149,   150,   151,   152,   153,   154,   155,   156,   157,   158,
1309       161,   162,   163,   164,   165,   166,   167,   168,   169,   170,       159,   160,   161,   162,   163,   164,   165,   166,   167,   168,
1310       171,   172,   173,   174,   175,   176,   177,   178,   179,   180,       169,   170,   171,   172,   173,   174,   175,   176,   177,   178,
1311       181,   182,   183,   184,   185,   186,   187,   188,   189,   190,       179,   180,   181,   182,   183,   184,   185,   186,   187,   188,
1312       191,   192,   193,   194,   195,   196,   197,   198,   199,   200,       189,   190,   191,   192,   193,   194,   195,   196,   197,   198,
1313       201,   202,   203,   204,   205,   206,   207,   208,   209,   210,       199,   200,   201,   202,   203,   204,   205,   206,   207,   208,
1314       211,   212,   213,   214,   215,   216,   217,   218,   219,   220,       209,   210,   211,   212,   213,   214,   215,   216,   217,   218,
1315       221,   222,   223,   224,   225,   226,   227,   228,   229,   230,       219,   220,   221,   222,   223,   224,   225,   226,   227,   228,
1316       231,   232,   233,   234,   235,   236,   237,   238,   239,   240,       229,   230,   231,   232,   233,   234,   235,   236,   237,   238,
1317       241,   242,   243,   244,   245,   246,   247,   248,   249,   250,       239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
1318       251,   252,   253,   254,   255,   256,   257,   258,   259,   260,       249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
1319       261,   312,    45,    46,    47,    48,    49,    50,    51,    52,       259,   260,   261,   262,   263,     0,     0,   264,   316,    46,
1320        53,    54,    55,    56,    57,    58,    59,    60,    61,    62,        47,    48,   803,   804,    51,    52,    53,    54,    55,    56,
1321        63,    64,    65,    66,    67,    68,    69,    70,    71,    72,        57,    58,    59,    60,    61,    62,    63,    64,    65,    66,
       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,   312,  
      696,    46,    47,    48,   313,   314,   315,   316,   317,   318,  
      319,   320,   321,   322,    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,   312,   718,    46,  
       47,    48,   313,   314,   315,   316,   317,   318,   319,   320,  
      321,   322,    59,    60,    61,    62,    63,    64,    65,    66,  
1322        67,    68,    69,    70,    71,    72,    73,    74,    75,    76,        67,    68,    69,    70,    71,    72,    73,    74,    75,    76,
1323        77,    78,    79,    80,    81,    82,    83,    84,    85,    86,        77,    78,    79,    80,    81,    82,    83,    84,    85,    86,
1324        87,    88,    89,    90,    91,    92,    93,    94,    95,    96,        87,    88,    89,    90,    91,    92,    93,    94,    95,    96,
# Line 1303  static const short yytable[] = Line 1338  static const short yytable[] =
1338       227,   228,   229,   230,   231,   232,   233,   234,   235,   236,       227,   228,   229,   230,   231,   232,   233,   234,   235,   236,
1339       237,   238,   239,   240,   241,   242,   243,   244,   245,   246,       237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
1340       247,   248,   249,   250,   251,   252,   253,   254,   255,   256,       247,   248,   249,   250,   251,   252,   253,   254,   255,   256,
1341       257,   258,   259,   260,   261,   312,   720,    46,    47,    48,       257,   258,   259,   260,   261,   262,   263,   532,   533,   316,
1342       313,   314,   315,   316,   317,   318,   319,   320,   321,   322,        46,    47,    48,    49,    50,   317,   318,   319,   320,   321,
1343        59,    60,    61,    62,    63,    64,    65,    66,    67,    68,       322,   323,   324,   325,   326,    61,    62,    63,    64,    65,
1344          66,    67,    68,    69,    70,    71,    72,    73,    74,    75,
1345          76,    77,    78,    79,    80,    81,    82,    83,    84,    85,
1346          86,    87,    88,    89,    90,    91,    92,    93,    94,    95,
1347          96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
1348         106,   107,   108,   109,   110,   111,   112,   113,   114,   115,
1349         116,   117,   118,   119,   120,   121,   122,   123,   124,   125,
1350         126,   127,   128,   129,   130,   131,   132,   133,   134,   135,
1351         136,   137,   138,   139,   140,   141,   142,   143,   144,   145,
1352         146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
1353         156,   157,   158,   159,   160,   161,   162,   163,   164,   165,
1354         166,   167,   168,   169,   170,   171,   172,   173,   174,   175,
1355         176,   177,   178,   179,   180,   181,   182,   183,   184,   185,
1356         186,   187,   188,   189,   190,   191,   192,   193,   194,   195,
1357         196,   197,   198,   199,   200,   201,   202,   203,   204,   205,
1358         206,   207,   208,   209,   210,   211,   212,   213,   214,   215,
1359         216,   217,   218,   219,   220,   221,   222,   223,   224,   225,
1360         226,   227,   228,   229,   230,   231,   232,   233,   234,   235,
1361         236,   237,   238,   239,   240,   241,   242,   243,   244,   245,
1362         246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
1363         256,   257,   258,   259,   260,   261,   262,   263,   316,    46,
1364          47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
1365          57,    58,    59,    60,    61,    62,    63,    64,    65,    66,
1366          67,    68,    69,    70,    71,    72,    73,    74,    75,    76,
1367          77,    78,    79,    80,    81,    82,    83,    84,    85,    86,
1368          87,    88,    89,    90,    91,    92,    93,    94,    95,    96,
1369          97,    98,    99,   100,   101,   102,   103,   104,   105,   106,
1370         107,   108,   109,   110,   111,   112,   113,   114,   115,   116,
1371         117,   118,   119,   120,   121,   122,   123,   124,   125,   126,
1372         127,   128,   129,   130,   131,   132,   133,   134,   135,   136,
1373         137,   138,   139,   140,   141,   142,   143,   144,   145,   146,
1374         147,   148,   149,   150,   151,   152,   153,   154,   155,   156,
1375         157,   158,   159,   160,   161,   162,   163,   164,   165,   166,
1376         167,   168,   169,   170,   171,   172,   173,   174,   175,   176,
1377         177,   178,   179,   180,   181,   182,   183,   184,   185,   186,
1378         187,   188,   189,   190,   191,   192,   193,   194,   195,   196,
1379         197,   198,   199,   200,   201,   202,   203,   204,   205,   206,
1380         207,   208,   209,   210,   211,   212,   213,   214,   215,   216,
1381         217,   218,   219,   220,   221,   222,   223,   224,   225,   226,
1382         227,   228,   229,   230,   231,   232,   233,   234,   235,   236,
1383         237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
1384         247,   248,   249,   250,   251,   252,   253,   254,   255,   256,
1385         257,   258,   259,   260,   261,   262,   263,   316,   747,    47,
1386          48,    49,    50,   317,   318,   319,   320,   321,   322,   323,
1387         324,   325,   326,    61,    62,    63,    64,    65,    66,    67,
1388          68,    69,    70,    71,    72,    73,    74,    75,    76,    77,
1389          78,    79,    80,    81,    82,    83,    84,    85,    86,    87,
1390          88,    89,    90,    91,    92,    93,    94,    95,    96,    97,
1391          98,    99,   100,   101,   102,   103,   104,   105,   106,   107,
1392         108,   109,   110,   111,   112,   113,   114,   115,   116,   117,
1393         118,   119,   120,   121,   122,   123,   124,   125,   126,   127,
1394         128,   129,   130,   131,   132,   133,   134,   135,   136,   137,
1395         138,   139,   140,   141,   142,   143,   144,   145,   146,   147,
1396         148,   149,   150,   151,   152,   153,   154,   155,   156,   157,
1397         158,   159,   160,   161,   162,   163,   164,   165,   166,   167,
1398         168,   169,   170,   171,   172,   173,   174,   175,   176,   177,
1399         178,   179,   180,   181,   182,   183,   184,   185,   186,   187,
1400         188,   189,   190,   191,   192,   193,   194,   195,   196,   197,
1401         198,   199,   200,   201,   202,   203,   204,   205,   206,   207,
1402         208,   209,   210,   211,   212,   213,   214,   215,   216,   217,
1403         218,   219,   220,   221,   222,   223,   224,   225,   226,   227,
1404         228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
1405         238,   239,   240,   241,   242,   243,   244,   245,   246,   247,
1406         248,   249,   250,   251,   252,   253,   254,   255,   256,   257,
1407         258,   259,   260,   261,   262,   263,   316,   773,    47,    48,
1408          49,    50,   317,   318,   319,   320,   321,   322,   323,   324,
1409         325,   326,    61,    62,    63,    64,    65,    66,    67,    68,
1410        69,    70,    71,    72,    73,    74,    75,    76,    77,    78,        69,    70,    71,    72,    73,    74,    75,    76,    77,    78,
1411        79,    80,    81,    82,    83,    84,    85,    86,    87,    88,        79,    80,    81,    82,    83,    84,    85,    86,    87,    88,
1412        89,    90,    91,    92,    93,    94,    95,    96,    97,    98,        89,    90,    91,    92,    93,    94,    95,    96,    97,    98,
# Line 1325  static const short yytable[] = Line 1426  static const short yytable[] =
1426       229,   230,   231,   232,   233,   234,   235,   236,   237,   238,       229,   230,   231,   232,   233,   234,   235,   236,   237,   238,
1427       239,   240,   241,   242,   243,   244,   245,   246,   247,   248,       239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
1428       249,   250,   251,   252,   253,   254,   255,   256,   257,   258,       249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
1429       259,   260,   261,   312,   806,    46,    47,    48,   313,   314,       259,   260,   261,   262,   263,   316,   775,    47,    48,    49,
1430       315,   316,   317,   318,   319,   320,   321,   322,    59,    60,        50,   317,   318,   319,   320,   321,   322,   323,   324,   325,
1431         326,    61,    62,    63,    64,    65,    66,    67,    68,    69,
1432          70,    71,    72,    73,    74,    75,    76,    77,    78,    79,
1433          80,    81,    82,    83,    84,    85,    86,    87,    88,    89,
1434          90,    91,    92,    93,    94,    95,    96,    97,    98,    99,
1435         100,   101,   102,   103,   104,   105,   106,   107,   108,   109,
1436         110,   111,   112,   113,   114,   115,   116,   117,   118,   119,
1437         120,   121,   122,   123,   124,   125,   126,   127,   128,   129,
1438         130,   131,   132,   133,   134,   135,   136,   137,   138,   139,
1439         140,   141,   142,   143,   144,   145,   146,   147,   148,   149,
1440         150,   151,   152,   153,   154,   155,   156,   157,   158,   159,
1441         160,   161,   162,   163,   164,   165,   166,   167,   168,   169,
1442         170,   171,   172,   173,   174,   175,   176,   177,   178,   179,
1443         180,   181,   182,   183,   184,   185,   186,   187,   188,   189,
1444         190,   191,   192,   193,   194,   195,   196,   197,   198,   199,
1445         200,   201,   202,   203,   204,   205,   206,   207,   208,   209,
1446         210,   211,   212,   213,   214,   215,   216,   217,   218,   219,
1447         220,   221,   222,   223,   224,   225,   226,   227,   228,   229,
1448         230,   231,   232,   233,   234,   235,   236,   237,   238,   239,
1449         240,   241,   242,   243,   244,   245,   246,   247,   248,   249,
1450         250,   251,   252,   253,   254,   255,   256,   257,   258,   259,
1451         260,   261,   262,   263,   316,   872,    47,    48,    49,    50,
1452         317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
1453        61,    62,    63,    64,    65,    66,    67,    68,    69,    70,        61,    62,    63,    64,    65,    66,    67,    68,    69,    70,
1454        71,    72,    73,    74,    75,    76,    77,    78,    79,    80,        71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
1455        81,    82,    83,    84,    85,    86,    87,    88,    89,    90,        81,    82,    83,    84,    85,    86,    87,    88,    89,    90,
# Line 1347  static const short yytable[] = Line 1470  static const short yytable[] =
1470       231,   232,   233,   234,   235,   236,   237,   238,   239,   240,       231,   232,   233,   234,   235,   236,   237,   238,   239,   240,
1471       241,   242,   243,   244,   245,   246,   247,   248,   249,   250,       241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
1472       251,   252,   253,   254,   255,   256,   257,   258,   259,   260,       251,   252,   253,   254,   255,   256,   257,   258,   259,   260,
1473       261,   312,   822,    46,    47,    48,   313,   314,   315,   316,       261,   262,   263,   316,   890,    47,    48,    49,    50,   317,
1474       317,   318,   319,   320,   321,   322,    59,    60,    61,    62,       318,   319,   320,   321,   322,   323,   324,   325,   326,    61,
1475          62,    63,    64,    65,    66,    67,    68,    69,    70,    71,
1476          72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
1477          82,    83,    84,    85,    86,    87,    88,    89,    90,    91,
1478          92,    93,    94,    95,    96,    97,    98,    99,   100,   101,
1479         102,   103,   104,   105,   106,   107,   108,   109,   110,   111,
1480         112,   113,   114,   115,   116,   117,   118,   119,   120,   121,
1481         122,   123,   124,   125,   126,   127,   128,   129,   130,   131,
1482         132,   133,   134,   135,   136,   137,   138,   139,   140,   141,
1483         142,   143,   144,   145,   146,   147,   148,   149,   150,   151,
1484         152,   153,   154,   155,   156,   157,   158,   159,   160,   161,
1485         162,   163,   164,   165,   166,   167,   168,   169,   170,   171,
1486         172,   173,   174,   175,   176,   177,   178,   179,   180,   181,
1487         182,   183,   184,   185,   186,   187,   188,   189,   190,   191,
1488         192,   193,   194,   195,   196,   197,   198,   199,   200,   201,
1489         202,   203,   204,   205,   206,   207,   208,   209,   210,   211,
1490         212,   213,   214,   215,   216,   217,   218,   219,   220,   221,
1491         222,   223,   224,   225,   226,   227,   228,   229,   230,   231,
1492         232,   233,   234,   235,   236,   237,   238,   239,   240,   241,
1493         242,   243,   244,   245,   246,   247,   248,   249,   250,   251,
1494         252,   253,   254,   255,   256,   257,   258,   259,   260,   261,
1495         262,   263,   316,   891,    47,    48,    49,    50,   317,   318,
1496         319,   320,   321,   322,   323,   324,   325,   326,    61,    62,
1497        63,    64,    65,    66,    67,    68,    69,    70,    71,    72,        63,    64,    65,    66,    67,    68,    69,    70,    71,    72,
1498        73,    74,    75,    76,    77,    78,    79,    80,    81,    82,        73,    74,    75,    76,    77,    78,    79,    80,    81,    82,
1499        83,    84,    85,    86,    87,    88,    89,    90,    91,    92,        83,    84,    85,    86,    87,    88,    89,    90,    91,    92,
# Line 1368  static const short yytable[] = Line 1513  static const short yytable[] =
1513       223,   224,   225,   226,   227,   228,   229,   230,   231,   232,       223,   224,   225,   226,   227,   228,   229,   230,   231,   232,
1514       233,   234,   235,   236,   237,   238,   239,   240,   241,   242,       233,   234,   235,   236,   237,   238,   239,   240,   241,   242,
1515       243,   244,   245,   246,   247,   248,   249,   250,   251,   252,       243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
1516       253,   254,   255,   256,   257,   258,   259,   260,   261,   312,       253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
1517       823,    46,    47,    48,   313,   314,   315,   316,   317,   318,       263
      319,   320,   321,   322,    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  
1518  };  };
1519    
1520  static const short yycheck[] =  static const short int yycheck[] =
1521  {  {
1522        14,   571,    14,    31,    16,    17,    18,    19,    20,    21,        14,   609,   479,    14,     5,    16,    17,    18,    19,    20,
1523        22,    23,    24,    25,    26,   454,   270,   271,   270,   271,        21,    22,    23,    24,    25,    26,    27,   272,   273,   272,
1524        19,   718,   277,   720,    26,    30,    22,   437,   224,   225,       273,   459,   279,    32,   271,   279,   773,   279,   775,   276,
1525        32,    36,    20,    21,    33,   277,   277,   277,    18,    35,       277,    23,   225,   226,   281,    27,    21,    22,    21,    22,
1526        50,    51,    52,    53,    54,    55,    56,    57,    58,    37,        19,    23,    52,    53,    54,    55,    56,    57,    58,    59,
1527        30,    35,    22,    21,   712,     1,    26,     3,   716,    39,        60,    34,    31,    38,    36,    38,    30,     1,    37,     3,
1528        20,    21,    38,    50,    51,    52,    53,    54,    55,    56,        23,    40,    39,    40,    38,    36,    52,    53,    54,    55,
1529        57,    58,    18,    33,    20,    21,    31,    37,    24,    19,        56,    57,    58,    59,    60,    19,    39,    21,    22,    20,
1530        19,    20,    18,    29,    20,    22,    26,    26,    34,    35,        21,    25,    39,    40,    20,    22,    30,    20,    19,    23,
1531        36,    30,    38,    22,    30,    22,    36,    36,    22,    39,        31,    35,    36,    37,    27,    39,    37,    38,    34,    40,
1532        39,    38,    22,    18,     0,    20,    35,    22,    18,   806,        31,    19,    36,    21,    37,    23,    19,    40,    21,    19,
1533        20,    18,    22,   269,   553,    30,   555,   556,   274,   275,        23,    21,    27,    31,   591,    23,   593,   594,    31,    37,
1534        30,   223,   278,    30,     5,   822,   823,     8,     9,    10,        38,    31,    23,     6,    39,   872,     9,    10,    11,    12,
1535        11,    12,    13,    14,    15,    16,    17,    21,    18,    38,        13,    14,    15,    16,    17,    18,    22,    19,    22,    27,
1536        39,   272,    22,    21,   583,   276,   277,   221,   222,    33,        31,    23,   619,   890,   891,    33,    37,    39,    34,    31,
1537        30,   590,   591,   592,   593,   594,   595,   596,   597,   598,        34,   628,   629,   630,   631,   632,   633,   634,   635,   636,
1538       415,   416,   417,   418,   419,   420,   421,   422,   423,   424,       637,   638,     6,   222,   223,     9,    10,    11,    12,    13,
1539       425,   426,   582,   415,   415,   415,     5,    22,    21,     8,        14,    15,    16,    17,    18,    21,    21,    22,    32,   436,
1540         9,    10,    11,    12,    13,    14,    15,    16,    17,   443,       618,    27,   436,     6,   436,    23,     9,    10,    11,    12,
1541        33,   443,     5,   221,   222,     8,     9,    10,    11,    12,        13,    14,    15,    16,    17,    18,     7,     8,     9,    10,
1542        13,    14,    15,    16,    17,     6,     7,     8,     9,    10,        11,    12,    13,    14,    15,    16,    17,    18,    21,    22,
1543        11,    12,    13,    14,    15,    16,    17,     8,     9,    10,       465,   765,   465,   222,   223,   769,   771,   772,   532,   533,
1544        11,    12,    13,    14,    15,    16,    17,    20,    21,    36,       278,   279,     0,   224,   225,   226,   437,   438,   439,   440,
1545       800,    20,    21,   803,     8,     9,    10,    11,    12,    13,       441,   442,   443,   444,   445,   446,   447,   448,     9,    10,
1546        14,    15,    16,    17,   223,   224,   225,   686,    18,    37,        11,    12,    13,    14,    15,    16,    17,    18,    19,   224,
1547        36,    26,    37,    19,    36,   224,    20,    18,    37,    37,        22,    37,    37,    23,    38,    19,    37,    20,   866,    27,
1548        37,    21,    38,   702,    32,    22,    25,    36,    31,    25,       737,   869,    21,   225,    19,    38,    22,    27,    33,   280,
1549        37,    26,    26,    38,    25,    20,    38,    26,   224,   225,        23,    38,    38,    23,    26,    37,   753,    26,    39,    23,
1550        38,    31,    26,    31,    26,    38,    32,    39,    20,    19,        27,   225,   226,     9,    10,    11,    12,    13,    14,    15,
1551        37,    18,   302,    21,   304,   305,   306,   307,   308,   309,        16,    17,    18,    32,    39,    33,   306,    26,   308,   309,
1552       310,   311,    35,    37,    18,    18,    24,    26,    25,    21,       310,   311,   312,   313,   314,   315,     9,    10,    11,    12,
1553        21,    21,    21,    18,    21,    36,    36,    21,    21,   331,        13,    14,    15,    16,    17,    18,    27,    32,    39,    21,
1554        35,    23,    23,   335,    22,   337,   338,   339,   340,   341,        27,    39,    26,    33,    38,    33,   337,    40,    27,    38,
1555        14,   343,    26,   345,   346,   347,   348,    32,    35,    22,        36,    21,   343,    38,   345,   346,   347,   348,   349,    21,
1556       352,   353,    31,   355,   356,    36,    26,    26,    26,    31,       351,    20,   353,   354,   355,   356,   357,    19,    22,    19,
1557        26,    26,    26,    26,   366,   367,   368,    26,    26,    31,       361,   362,    19,   364,   365,    36,    25,    22,    38,    27,
1558        37,   373,   374,   375,   376,   377,   378,    32,    32,    26,        22,    22,    22,    19,    14,    22,    37,   378,   379,   380,
1559        26,    38,    32,    23,    32,   814,    20,    22,    20,    42,        22,    26,    19,    22,   385,   386,   387,   388,   389,   390,
1560        26,    20,    31,    35,    32,    32,   398,    19,    29,    88,        24,    27,    23,    37,    23,    36,    19,    40,    33,    27,
1561        21,    31,    88,    31,    21,    32,    31,    31,    88,    32,        38,    21,    27,    30,    36,    38,    32,    37,    32,    27,
1562        88,    29,    22,    22,    18,    22,    35,    22,    18,    22,        27,    32,    27,   414,   881,   416,    27,    27,    32,    27,
1563        22,    35,    42,    22,    22,    26,    38,   431,   432,    26,        33,    27,    38,    27,    33,    24,    33,    39,    33,    32,
1564        26,    26,    88,    26,    26,    29,    88,    88,    26,    88,        23,    19,    21,    27,    21,    32,    89,    33,    23,    30,
1565       444,   445,   446,   447,   448,    88,    30,    38,    22,    29,        32,    43,    32,    24,    22,    22,    22,    33,    32,   453,
1566        32,    19,    29,    31,    37,    88,    35,    32,    31,    29,       454,    33,    32,    36,    33,    30,    30,    23,    23,    32,
1567        32,    32,    31,    30,    30,   467,   468,   469,   470,   471,        19,    30,   466,   467,   468,   469,   470,    89,    38,    23,
1568       472,   473,   474,   475,   476,   477,   478,   479,   480,   481,        89,    20,    36,    23,    19,    23,    23,    33,    36,    23,
1569        31,    30,   484,   485,    32,    29,   486,   487,   488,   489,        43,    27,    23,    40,    27,    27,    39,    27,    89,    89,
1570       490,   491,   492,   493,   494,    20,    19,    38,    88,    88,        27,    89,    27,    23,    89,   496,   497,   498,   499,   500,
1571       502,   503,    88,   505,    36,   507,    33,   509,    29,   486,       501,   502,   503,   504,   505,   506,   507,   508,   509,   510,
1572       487,   488,   489,   490,   491,   492,   493,   494,   520,   521,        33,    39,    36,   514,   515,    23,   516,   517,   518,   519,
1573       522,   523,   524,   525,   526,   527,   528,   529,   530,   531,       520,   521,   522,   523,   524,    30,    23,    89,    89,    89,
1574       532,    22,    20,    38,    33,    38,    33,    22,    32,    26,        31,   532,   533,    27,   535,    30,   537,    89,   539,    20,
1575        38,    33,    88,    22,    18,    23,    32,    20,    37,    31,       516,   517,   518,   519,   520,   521,   522,   523,   524,    33,
1576        22,    22,    36,    22,   558,    38,    37,   561,   562,   563,       551,   552,   553,   554,   555,   556,   557,   558,   559,   560,
1577       564,    38,    37,   567,    21,   263,    32,    31,    38,    37,       561,   562,   563,   564,   565,    30,    32,    89,    38,    36,
1578        26,    38,    31,    38,    32,    88,   578,   581,   580,    33,        33,    32,    30,    33,    31,   265,    32,    31,    33,    32,
1579        31,    33,    37,    33,    37,    18,    33,    29,    37,    37,        89,    33,    31,    89,    30,    30,    89,    21,    20,    40,
1580        33,    37,    22,    38,    38,    31,   600,    38,   602,    37,        30,    39,   596,    37,    33,   599,   600,   601,   602,    34,
1581        29,    38,    29,    38,    38,    37,    32,    38,    88,    31,        23,   605,    21,    39,    34,     5,    39,    34,    23,    33,
1582        38,    31,    88,    37,    37,    26,    18,    21,   620,    37,        39,    89,    34,   617,   615,   616,    27,    23,    30,    24,
1583        37,    21,    37,    33,    37,   627,    88,   629,   630,   631,        89,    19,    21,    33,    33,    38,    23,    23,    42,    23,
1584        38,   633,    37,   635,    21,    24,    21,    32,    24,    22,        37,    39,    27,    34,    38,    38,   640,    39,   642,    89,
1585        22,    22,    32,    36,    38,    22,    26,    26,   650,    88,       280,    32,    30,    27,    33,    32,    39,    39,    38,    32,
1586       652,    26,    26,    21,    21,    39,    32,   659,   660,   661,        27,    33,    21,    39,    32,    34,    19,    38,    38,    34,
1587       662,   663,   664,   665,   666,   667,    35,   669,    39,   671,        30,    34,    38,   664,    38,    33,    38,    34,    39,    23,
1588        35,    25,    88,    39,    88,    39,    88,    37,    31,    88,       671,    32,   673,   674,   675,    39,   677,    21,   679,    32,
1589        26,    88,    88,    39,   688,   689,   690,    37,   692,    22,        39,    23,    38,    30,    39,    24,    32,    39,    39,    38,
1590        26,    22,   696,    22,    26,    25,   696,    37,    26,   703,        30,   692,    33,   694,    39,    23,    39,    32,    27,    19,
1591        88,    25,    18,    42,    39,   709,   710,    32,   712,   713,        38,    38,   703,   704,   705,   706,   707,   708,   709,   710,
1592       714,    26,   716,   717,   718,    88,   720,   717,   718,    22,       711,   712,   713,    39,   715,    38,   717,    22,    22,    38,
1593       720,    26,    20,    22,    20,    88,    39,    39,    20,    18,        38,    34,    38,   413,    89,    32,    38,    89,    39,    89,
1594        39,    18,    20,    35,   736,   737,    33,   739,   740,    39,        33,    89,    89,    22,    25,   739,   740,   741,    22,   743,
1595        31,    26,    32,    36,    22,   745,   746,    31,    31,    35,        33,    89,    21,   747,    25,    23,    23,   747,    23,    39,
1596       750,    33,    26,    22,    26,   429,   430,    22,   760,    26,       754,    33,    38,    89,    37,    89,    89,    89,   762,   763,
1597        22,    25,    42,    31,   438,    22,   768,    37,   745,   746,        21,   765,   766,   767,    89,   769,   770,   771,   772,   773,
1598        31,    20,    22,    33,   448,    38,    18,   779,    36,    20,       770,   775,    27,   773,   414,   775,    27,    27,    40,    27,
1599       780,   781,    88,    20,    31,    20,   484,   485,    18,    33,        36,    33,    23,    22,    22,    38,    40,   477,    32,    36,
1600        22,    31,    35,    88,    22,    22,    22,    33,    37,    22,        33,    40,    26,   794,   795,    40,   797,   798,    33,    27,
1601        38,    35,   806,   780,   781,    22,   806,   807,   808,   809,        40,    89,    38,   803,   804,    23,    39,    27,    23,   809,
1602        31,    33,   510,    22,    22,    29,   820,   821,   822,   823,        27,   451,   452,    26,    23,    27,    38,    89,   819,    26,
1603        36,    33,   822,   823,    37,    18,    18,    29,   502,   503,       460,    19,    33,    39,   514,   515,   827,   803,   804,    43,
1604        18,    31,   809,    88,    88,    29,   534,    88,    33,    38,       470,    27,    40,    23,    27,    21,    23,    32,    40,   840,
1605        88,   841,   842,   843,    35,    30,    33,    22,    18,    35,        21,   841,   842,    89,    21,    19,    40,    89,    40,    21,
1606        33,    22,   854,    37,    21,    18,    18,    18,    18,    35,       540,    19,    36,    32,    34,    40,    32,    27,    33,    37,
1607        29,    35,    30,    88,   841,   842,    30,   867,   868,    18,        23,    32,    27,    36,    23,   841,   842,    34,   872,    38,
1608        35,    37,    26,   877,    21,    18,    35,    22,    22,   577,        27,   875,   872,   873,   874,   875,   876,   567,    23,    32,
1609        22,    18,    30,   557,    35,   559,   560,    39,    22,    35,        27,    23,    26,   887,    32,   889,   890,   891,    43,    38,
1610        30,   565,   566,    26,    30,    22,   570,   571,    37,    37,       890,   891,   532,   533,    23,    38,    32,    21,    23,    39,
1611        22,    22,    22,    22,   578,    37,   580,    35,    39,    35,       876,    34,    37,    19,    21,    32,    89,    89,    21,    21,
1612        22,    35,    37,    22,    37,    22,    22,   820,    36,    35,        19,    34,   912,   913,    32,   915,    23,    23,    38,    30,
1613        35,    35,    35,   821,   877,   599,    36,   601,   717,   627,        39,    36,    36,    89,    34,    23,   927,    31,    23,    23,
1614       628,   557,   703,   275,   272,   633,   634,   582,   503,    43,        23,    34,    32,    23,    23,    37,   912,   913,    89,    38,
1615       277,   639,   443,   443,    -1,    -1,   273,    -1,    -1,   647,        19,    19,    34,    19,   944,   945,    30,    19,    89,    32,
1616       272,    -1,   275,    -1,    -1,    -1,    -1,    -1,    -1,    -1,       954,    89,    34,    30,    39,   595,    36,   597,   598,    89,
1617          31,    34,    36,   603,   604,    23,    34,    19,   608,   609,
1618          19,    38,    22,    30,    19,   615,   616,    23,    19,    19,
1619          36,   671,   672,    36,    89,    36,    19,   677,   678,    31,
1620          38,    22,    31,   683,    23,    27,    23,    19,    36,   639,
1621          23,   641,    19,    31,    40,    40,    36,    31,    23,    23,
1622         887,    36,    38,    31,    27,    23,    23,    38,    23,    23,
1623         889,    23,    38,    23,   714,    36,   716,    36,    38,    23,
1624          36,    23,   954,   754,   875,    38,    37,    36,    36,    36,
1625          36,    -1,    37,   770,   595,   274,   618,   274,   274,   279,
1626         274,    44,   275,    -1,   279,   274,   277,    -1,    -1,    -1,
1627          -1,    -1,    -1,    -1,    -1,    -1,    -1,   277,   274,    -1,
1628          -1,    -1,    -1,    -1,   279,    -1,    -1,    -1,    -1,    -1,
1629         465,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
1630          -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   738,   465,
1631          -1,    -1,   742,    -1,   794,    -1,   746,    -1,   798,    -1,
1632          -1,    -1,   802,    -1,    -1,    -1,    -1,   807,    -1,    -1,
1633          -1,    -1,    -1,    -1,   764,    -1,    -1,    -1,   768,    -1,
1634          -1,   771,   772,    -1,   774,    -1,   776,    -1,    -1,    -1,
1635         830,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   839,
1636          -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   849,
1637          -1,   851,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
1638        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
      668,    -1,   670,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  
1639        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
1640        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
1641        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,        -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
1642        -1,    -1,    -1,   687,    -1,    -1,    -1,   691,    -1,    -1,        -1,    -1,    -1,    -1,    -1,    -1,   906,   907,    -1,    -1,
1643        -1,   695,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,        -1,    -1,    -1,    -1,    -1,    -1,   866,   867,   868,   869,
       -1,    -1,    -1,    -1,    -1,    -1,    -1,   711,   736,    -1,  
       -1,   715,   740,    -1,    -1,   719,   744,   721,    -1,    -1,  
      748,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  
       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  
       -1,    -1,    -1,   771,    -1,    -1,    -1,    -1,    -1,    -1,  
      778,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   786,    -1,  
      788,    -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,   800,   801,   802,   803,  
       -1,    -1,    -1,    -1,    -1,    -1,    -1,   835,   836,     3,  
        4,     5,     6,     7,     8,     9,    10,    11,    12,    13,  
       14,    15,    16,    17,    18,    19,    20,    21,    22,    23,  
       24,    25,    26,    27,    28,    29,    30,    31,    32,    33,  
       34,    35,    36,    37,    38,    39,    40,    41,    42,    43,  
       44,    45,    46,    47,    48,    49,    50,    51,    52,    53,  
       54,    55,    56,    57,    58,    59,    60,    61,    62,    63,  
       64,    65,    66,    67,    68,    69,    70,    71,    72,    73,  
       74,    75,    76,    77,    78,    79,    80,    81,    82,    83,  
       84,    85,    86,    87,    88,    89,    90,    91,    92,    93,  
       94,    95,    96,    97,    98,    99,   100,   101,   102,   103,  
      104,   105,   106,   107,   108,   109,   110,   111,   112,   113,  
      114,   115,   116,   117,   118,   119,   120,   121,   122,   123,  
      124,   125,   126,   127,   128,   129,   130,   131,   132,   133,  
      134,   135,   136,   137,   138,   139,   140,   141,   142,   143,  
      144,   145,   146,   147,   148,   149,   150,   151,   152,   153,  
      154,   155,   156,   157,   158,   159,   160,   161,   162,   163,  
      164,   165,   166,   167,   168,   169,   170,   171,   172,   173,  
      174,   175,   176,   177,   178,   179,   180,   181,   182,   183,  
      184,   185,   186,   187,   188,   189,   190,   191,   192,   193,  
      194,   195,   196,   197,   198,   199,   200,   201,   202,   203,  
      204,   205,   206,   207,   208,   209,   210,   211,   212,   213,  
      214,   215,   216,   217,   218,   219,   220,   221,    -1,   223,  
1644         3,     4,     5,     6,     7,     8,     9,    10,    11,    12,         3,     4,     5,     6,     7,     8,     9,    10,    11,    12,
1645        13,    14,    15,    16,    17,    18,    19,    20,    21,    22,        13,    14,    15,    16,    17,    18,    19,    20,    21,    22,
1646        23,    24,    25,    26,    27,    28,    29,    30,    31,    32,        23,    24,    25,    26,    27,    28,    29,    30,    31,    32,
# Line 1551  static const short yycheck[] = Line 1662  static const short yycheck[] =
1662       183,   184,   185,   186,   187,   188,   189,   190,   191,   192,       183,   184,   185,   186,   187,   188,   189,   190,   191,   192,
1663       193,   194,   195,   196,   197,   198,   199,   200,   201,   202,       193,   194,   195,   196,   197,   198,   199,   200,   201,   202,
1664       203,   204,   205,   206,   207,   208,   209,   210,   211,   212,       203,   204,   205,   206,   207,   208,   209,   210,   211,   212,
1665       213,   214,   215,   216,   217,   218,   219,   220,    -1,   222,       213,   214,   215,   216,   217,   218,   219,   220,   221,   222,
1666       223,     3,     4,     5,     6,     7,     8,     9,    10,    11,        -1,   224,     3,     4,     5,     6,     7,     8,     9,    10,
       12,    13,    14,    15,    16,    17,    18,    19,    20,    21,  
       22,    23,    24,    25,    26,    27,    28,    29,    30,    31,  
       32,    33,    34,    35,    36,    37,    38,    39,    40,    41,  
       42,    43,    44,    45,    46,    47,    48,    49,    50,    51,  
       52,    53,    54,    55,    56,    57,    58,    59,    60,    61,  
       62,    63,    64,    65,    66,    67,    68,    69,    70,    71,  
       72,    73,    74,    75,    76,    77,    78,    79,    80,    81,  
       82,    83,    84,    85,    86,    87,    88,    89,    90,    91,  
       92,    93,    94,    95,    96,    97,    98,    99,   100,   101,  
      102,   103,   104,   105,   106,   107,   108,   109,   110,   111,  
      112,   113,   114,   115,   116,   117,   118,   119,   120,   121,  
      122,   123,   124,   125,   126,   127,   128,   129,   130,   131,  
      132,   133,   134,   135,   136,   137,   138,   139,   140,   141,  
      142,   143,   144,   145,   146,   147,   148,   149,   150,   151,  
      152,   153,   154,   155,   156,   157,   158,   159,   160,   161,  
      162,   163,   164,   165,   166,   167,   168,   169,   170,   171,  
      172,   173,   174,   175,   176,   177,   178,   179,   180,   181,  
      182,   183,   184,   185,   186,   187,   188,   189,   190,   191,  
      192,   193,   194,   195,   196,   197,   198,   199,   200,   201,  
      202,   203,   204,   205,   206,   207,   208,   209,   210,   211,  
      212,   213,   214,   215,   216,   217,   218,   219,   220,    -1,  
       -1,   223,     3,     4,     5,     6,     7,     8,     9,    10,  
1667        11,    12,    13,    14,    15,    16,    17,    18,    19,    20,        11,    12,    13,    14,    15,    16,    17,    18,    19,    20,
1668        21,    22,    23,    24,    25,    26,    27,    28,    29,    30,        21,    22,    23,    24,    25,    26,    27,    28,    29,    30,
1669        31,    32,    33,    34,    35,    36,    37,    38,    39,    40,        31,    32,    33,    34,    35,    36,    37,    38,    39,    40,
# Line 1596  static const short yycheck[] = Line 1685  static const short yycheck[] =
1685       191,   192,   193,   194,   195,   196,   197,   198,   199,   200,       191,   192,   193,   194,   195,   196,   197,   198,   199,   200,
1686       201,   202,   203,   204,   205,   206,   207,   208,   209,   210,       201,   202,   203,   204,   205,   206,   207,   208,   209,   210,
1687       211,   212,   213,   214,   215,   216,   217,   218,   219,   220,       211,   212,   213,   214,   215,   216,   217,   218,   219,   220,
1688        -1,    -1,   223,     3,     4,     5,     6,     7,     8,     9,       221,    -1,   223,   224,     3,     4,     5,     6,     7,     8,
1689        10,    11,    12,    13,    14,    15,    16,    17,    18,    19,         9,    10,    11,    12,    13,    14,    15,    16,    17,    18,
1690        20,    21,    22,    23,    24,    25,    26,    27,    28,    29,        19,    20,    21,    22,    23,    24,    25,    26,    27,    28,
1691        30,    31,    32,    33,    34,    35,    36,    37,    38,    39,        29,    30,    31,    32,    33,    34,    35,    36,    37,    38,
1692        40,    41,    42,    43,    44,    45,    46,    47,    48,    49,        39,    40,    41,    42,    43,    44,    45,    46,    47,    48,
1693        50,    51,    52,    53,    54,    55,    56,    57,    58,    59,        49,    50,    51,    52,    53,    54,    55,    56,    57,    58,
1694        60,    61,    62,    63,    64,    65,    66,    67,    68,    69,        59,    60,    61,    62,    63,    64,    65,    66,    67,    68,
1695        70,    71,    72,    73,    74,    75,    76,    77,    78,    79,        69,    70,    71,    72,    73,    74,    75,    76,    77,    78,
1696        80,    81,    82,    83,    84,    85,    86,    87,    88,    89,        79,    80,    81,    82,    83,    84,    85,    86,    87,    88,
1697        90,    91,    92,    93,    94,    95,    96,    97,    98,    99,        89,    90,    91,    92,    93,    94,    95,    96,    97,    98,
1698       100,   101,   102,   103,   104,   105,   106,   107,   108,   109,        99,   100,   101,   102,   103,   104,   105,   106,   107,   108,
1699       110,   111,   112,   113,   114,   115,   116,   117,   118,   119,       109,   110,   111,   112,   113,   114,   115,   116,   117,   118,
1700       120,   121,   122,   123,   124,   125,   126,   127,   128,   129,       119,   120,   121,   122,   123,   124,   125,   126,   127,   128,
1701       130,   131,   132,   133,   134,   135,   136,   137,   138,   139,       129,   130,   131,   132,   133,   134,   135,   136,   137,   138,
1702       140,   141,   142,   143,   144,   145,   146,   147,   148,   149,       139,   140,   141,   142,   143,   144,   145,   146,   147,   148,
1703       150,   151,   152,   153,   154,   155,   156,   157,   158,   159,       149,   150,   151,   152,   153,   154,   155,   156,   157,   158,
1704       160,   161,   162,   163,   164,   165,   166,   167,   168,   169,       159,   160,   161,   162,   163,   164,   165,   166,   167,   168,
1705       170,   171,   172,   173,   174,   175,   176,   177,   178,   179,       169,   170,   171,   172,   173,   174,   175,   176,   177,   178,
1706       180,   181,   182,   183,   184,   185,   186,   187,   188,   189,       179,   180,   181,   182,   183,   184,   185,   186,   187,   188,
1707       190,   191,   192,   193,   194,   195,   196,   197,   198,   199,       189,   190,   191,   192,   193,   194,   195,   196,   197,   198,
1708       200,   201,   202,   203,   204,   205,   206,   207,   208,   209,       199,   200,   201,   202,   203,   204,   205,   206,   207,   208,
1709       210,   211,   212,   213,   214,   215,   216,   217,   218,   219,       209,   210,   211,   212,   213,   214,   215,   216,   217,   218,
1710       220,   221,   222,     3,     4,     5,     6,     7,     8,     9,       219,   220,   221,    -1,    -1,   224,     3,     4,     5,     6,
1711        10,    11,    12,    13,    14,    15,    16,    17,    18,    19,         7,     8,     9,    10,    11,    12,    13,    14,    15,    16,
1712        20,    21,    22,    23,    24,    25,    26,    27,    28,    29,        17,    18,    19,    20,    21,    22,    23,    24,    25,    26,
1713        30,    31,    32,    33,    34,    35,    36,    37,    38,    39,        27,    28,    29,    30,    31,    32,    33,    34,    35,    36,
1714        40,    41,    42,    43,    44,    45,    46,    47,    48,    49,        37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
1715        50,    51,    52,    53,    54,    55,    56,    57,    58,    59,        47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
1716        60,    61,    62,    63,    64,    65,    66,    67,    68,    69,        57,    58,    59,    60,    61,    62,    63,    64,    65,    66,
1717        70,    71,    72,    73,    74,    75,    76,    77,    78,    79,        67,    68,    69,    70,    71,    72,    73,    74,    75,    76,
1718        80,    81,    82,    83,    84,    85,    86,    87,    88,    89,        77,    78,    79,    80,    81,    82,    83,    84,    85,    86,
1719        90,    91,    92,    93,    94,    95,    96,    97,    98,    99,        87,    88,    89,    90,    91,    92,    93,    94,    95,    96,
1720       100,   101,   102,   103,   104,   105,   106,   107,   108,   109,        97,    98,    99,   100,   101,   102,   103,   104,   105,   106,
1721       110,   111,   112,   113,   114,   115,   116,   117,   118,   119,       107,   108,   109,   110,   111,   112,   113,   114,   115,   116,
1722       120,   121,   122,   123,   124,   125,   126,   127,   128,   129,       117,   118,   119,   120,   121,   122,   123,   124,   125,   126,
1723       130,   131,   132,   133,   134,   135,   136,   137,   138,   139,       127,   128,   129,   130,   131,   132,   133,   134,   135,   136,
1724       140,   141,   142,   143,   144,   145,   146,   147,   148,   149,       137,   138,   139,   140,   141,   142,   143,   144,   145,   146,
1725       150,   151,   152,   153,   154,   155,   156,   157,   158,   159,       147,   148,   149,   150,   151,   152,   153,   154,   155,   156,
1726       160,   161,   162,   163,   164,   165,   166,   167,   168,   169,       157,   158,   159,   160,   161,   162,   163,   164,   165,   166,
1727       170,   171,   172,   173,   174,   175,   176,   177,   178,   179,       167,   168,   169,   170,   171,   172,   173,   174,   175,   176,
1728       180,   181,   182,   183,   184,   185,   186,   187,   188,   189,       177,   178,   179,   180,   181,   182,   183,   184,   185,   186,
1729       190,   191,   192,   193,   194,   195,   196,   197,   198,   199,       187,   188,   189,   190,   191,   192,   193,   194,   195,   196,
1730       200,   201,   202,   203,   204,   205,   206,   207,   208,   209,       197,   198,   199,   200,   201,   202,   203,   204,   205,   206,
1731       210,   211,   212,   213,   214,   215,   216,   217,   218,   219,       207,   208,   209,   210,   211,   212,   213,   214,   215,   216,
1732       220,     3,     4,     5,     6,     7,     8,     9,    10,    11,       217,   218,   219,   220,   221,    -1,    -1,   224,     3,     4,
1733        12,    13,    14,    15,    16,    17,    18,    19,    20,    21,         5,     6,     7,     8,     9,    10,    11,    12,    13,    14,
1734        22,    23,    24,    25,    26,    27,    28,    29,    30,    31,        15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
1735        32,    33,    34,    35,    36,    37,    38,    39,    40,    41,        25,    26,    27,    28,    29,    30,    31,    32,    33,    34,
1736        42,    43,    44,    45,    46,    47,    48,    49,    50,    51,        35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
1737        52,    53,    54,    55,    56,    57,    58,    59,    60,    61,        45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
1738        62,    63,    64,    65,    66,    67,    68,    69,    70,    71,        55,    56,    57,    58,    59,    60,    61,    62,    63,    64,
1739        72,    73,    74,    75,    76,    77,    78,    79,    80,    81,        65,    66,    67,    68,    69,    70,    71,    72,    73,    74,
1740        82,    83,    84,    85,    86,    87,    88,    89,    90,    91,        75,    76,    77,    78,    79,    80,    81,    82,    83,    84,
1741        92,    93,    94,    95,    96,    97,    98,    99,   100,   101,        85,    86,    87,    88,    89,    90,    91,    92,    93,    94,
1742       102,   103,   104,   105,   106,   107,   108,   109,   110,   111,        95,    96,    97,    98,    99,   100,   101,   102,   103,   104,
1743       112,   113,   114,   115,   116,   117,   118,   119,   120,   121,       105,   106,   107,   108,   109,   110,   111,   112,   113,   114,
1744       122,   123,   124,   125,   126,   127,   128,   129,   130,   131,       115,   116,   117,   118,   119,   120,   121,   122,   123,   124,
1745       132,   133,   134,   135,   136,   137,   138,   139,   140,   141,       125,   126,   127,   128,   129,   130,   131,   132,   133,   134,
1746       142,   143,   144,   145,   146,   147,   148,   149,   150,   151,       135,   136,   137,   138,   139,   140,   141,   142,   143,   144,
1747       152,   153,   154,   155,   156,   157,   158,   159,   160,   161,       145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
1748       162,   163,   164,   165,   166,   167,   168,   169,   170,   171,       155,   156,   157,   158,   159,   160,   161,   162,   163,   164,
1749       172,   173,   174,   175,   176,   177,   178,   179,   180,   181,       165,   166,   167,   168,   169,   170,   171,   172,   173,   174,
1750       182,   183,   184,   185,   186,   187,   188,   189,   190,   191,       175,   176,   177,   178,   179,   180,   181,   182,   183,   184,
1751       192,   193,   194,   195,   196,   197,   198,   199,   200,   201,       185,   186,   187,   188,   189,   190,   191,   192,   193,   194,
1752       202,   203,   204,   205,   206,   207,   208,   209,   210,   211,       195,   196,   197,   198,   199,   200,   201,   202,   203,   204,
1753       212,   213,   214,   215,   216,   217,   218,   219,   220,     3,       205,   206,   207,   208,   209,   210,   211,   212,   213,   214,
1754         215,   216,   217,   218,   219,   220,   221,   222,   223,     3,
1755         4,     5,     6,     7,     8,     9,    10,    11,    12,    13,         4,     5,     6,     7,     8,     9,    10,    11,    12,    13,
1756        14,    15,    16,    17,    18,    19,    20,    21,    22,    23,        14,    15,    16,    17,    18,    19,    20,    21,    22,    23,
1757        24,    25,    26,    27,    28,    29,    30,    31,    32,    33,        24,    25,    26,    27,    28,    29,    30,    31,    32,    33,
# Line 1683  static const short yycheck[] = Line 1773  static const short yycheck[] =
1773       184,   185,   186,   187,   188,   189,   190,   191,   192,   193,       184,   185,   186,   187,   188,   189,   190,   191,   192,   193,
1774       194,   195,   196,   197,   198,   199,   200,   201,   202,   203,       194,   195,   196,   197,   198,   199,   200,   201,   202,   203,
1775       204,   205,   206,   207,   208,   209,   210,   211,   212,   213,       204,   205,   206,   207,   208,   209,   210,   211,   212,   213,
1776       214,   215,   216,   217,   218,   219,   220,     3,     4,     5,       214,   215,   216,   217,   218,   219,   220,   221,     3,     4,
1777           5,     6,     7,     8,     9,    10,    11,    12,    13,    14,
1778          15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
1779          25,    26,    27,    28,    29,    30,    31,    32,    33,    34,
1780          35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
1781          45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
1782          55,    56,    57,    58,    59,    60,    61,    62,    63,    64,
1783          65,    66,    67,    68,    69,    70,    71,    72,    73,    74,
1784          75,    76,    77,    78,    79,    80,    81,    82,    83,    84,
1785          85,    86,    87,    88,    89,    90,    91,    92,    93,    94,
1786          95,    96,    97,    98,    99,   100,   101,   102,   103,   104,
1787         105,   106,   107,   108,   109,   110,   111,   112,   113,   114,
1788         115,   116,   117,   118,   119,   120,   121,   122,   123,   124,
1789         125,   126,   127,   128,   129,   130,   131,   132,   133,   134,
1790         135,   136,   137,   138,   139,   140,   141,   142,   143,   144,
1791         145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
1792         155,   156,   157,   158,   159,   160,   161,   162,   163,   164,
1793         165,   166,   167,   168,   169,   170,   171,   172,   173,   174,
1794         175,   176,   177,   178,   179,   180,   181,   182,   183,   184,
1795         185,   186,   187,   188,   189,   190,   191,   192,   193,   194,
1796         195,   196,   197,   198,   199,   200,   201,   202,   203,   204,
1797         205,   206,   207,   208,   209,   210,   211,   212,   213,   214,
1798         215,   216,   217,   218,   219,   220,   221,     3,     4,     5,
1799         6,     7,     8,     9,    10,    11,    12,    13,    14,    15,         6,     7,     8,     9,    10,    11,    12,    13,    14,    15,
1800        16,    17,    18,    19,    20,    21,    22,    23,    24,    25,        16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
1801        26,    27,    28,    29,    30,    31,    32,    33,    34,    35,        26,    27,    28,    29,    30,    31,    32,    33,    34,    35,
# Line 1705  static const short yycheck[] = Line 1817  static const short yycheck[] =
1817       186,   187,   188,   189,   190,   191,   192,   193,   194,   195,       186,   187,   188,   189,   190,   191,   192,   193,   194,   195,
1818       196,   197,   198,   199,   200,   201,   202,   203,   204,   205,       196,   197,   198,   199,   200,   201,   202,   203,   204,   205,
1819       206,   207,   208,   209,   210,   211,   212,   213,   214,   215,       206,   207,   208,   209,   210,   211,   212,   213,   214,   215,
1820       216,   217,   218,   219,   220,     3,     4,     5,     6,     7,       216,   217,   218,   219,   220,   221,     3,     4,     5,     6,
1821           7,     8,     9,    10,    11,    12,    13,    14,    15,    16,
1822          17,    18,    19,    20,    21,    22,    23,    24,    25,    26,
1823          27,    28,    29,    30,    31,    32,    33,    34,    35,    36,
1824          37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
1825          47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
1826          57,    58,    59,    60,    61,    62,    63,    64,    65,    66,
1827          67,    68,    69,    70,    71,    72,    73,    74,    75,    76,
1828          77,    78,    79,    80,    81,    82,    83,    84,    85,    86,
1829          87,    88,    89,    90,    91,    92,    93,    94,    95,    96,
1830          97,    98,    99,   100,   101,   102,   103,   104,   105,   106,
1831         107,   108,   109,   110,   111,   112,   113,   114,   115,   116,
1832         117,   118,   119,   120,   121,   122,   123,   124,   125,   126,
1833         127,   128,   129,   130,   131,   132,   133,   134,   135,   136,
1834         137,   138,   139,   140,   141,   142,   143,   144,   145,   146,
1835         147,   148,   149,   150,   151,   152,   153,   154,   155,   156,
1836         157,   158,   159,   160,   161,   162,   163,   164,   165,   166,
1837         167,   168,   169,   170,   171,   172,   173,   174,   175,   176,
1838         177,   178,   179,   180,   181,   182,   183,   184,   185,   186,
1839         187,   188,   189,   190,   191,   192,   193,   194,   195,   196,
1840         197,   198,   199,   200,   201,   202,   203,   204,   205,   206,
1841         207,   208,   209,   210,   211,   212,   213,   214,   215,   216,
1842         217,   218,   219,   220,   221,     3,     4,     5,     6,     7,
1843         8,     9,    10,    11,    12,    13,    14,    15,    16,    17,         8,     9,    10,    11,    12,    13,    14,    15,    16,    17,
1844        18,    19,    20,    21,    22,    23,    24,    25,    26,    27,        18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
1845        28,    29,    30,    31,    32,    33,    34,    35,    36,    37,        28,    29,    30,    31,    32,    33,    34,    35,    36,    37,
# Line 1727  static const short yycheck[] = Line 1861  static const short yycheck[] =
1861       188,   189,   190,   191,   192,   193,   194,   195,   196,   197,       188,   189,   190,   191,   192,   193,   194,   195,   196,   197,
1862       198,   199,   200,   201,   202,   203,   204,   205,   206,   207,       198,   199,   200,   201,   202,   203,   204,   205,   206,   207,
1863       208,   209,   210,   211,   212,   213,   214,   215,   216,   217,       208,   209,   210,   211,   212,   213,   214,   215,   216,   217,
1864       218,   219,   220,     3,     4,     5,     6,     7,     8,     9,       218,   219,   220,   221,     3,     4,     5,     6,     7,     8,
1865           9,    10,    11,    12,    13,    14,    15,    16,    17,    18,
1866          19,    20,    21,    22,    23,    24,    25,    26,    27,    28,
1867          29,    30,    31,    32,    33,    34,    35,    36,    37,    38,
1868          39,    40,    41,    42,    43,    44,    45,    46,    47,    48,
1869          49,    50,    51,    52,    53,    54,    55,    56,    57,    58,
1870          59,    60,    61,    62,    63,    64,    65,    66,    67,    68,
1871          69,    70,    71,    72,    73,    74,    75,    76,    77,    78,
1872          79,    80,    81,    82,    83,    84,    85,    86,    87,    88,
1873          89,    90,    91,    92,    93,    94,    95,    96,    97,    98,
1874          99,   100,   101,   102,   103,   104,   105,   106,   107,   108,
1875         109,   110,   111,   112,   113,   114,   115,   116,   117,   118,
1876         119,   120,   121,   122,   123,   124,   125,   126,   127,   128,
1877         129,   130,   131,   132,   133,   134,   135,   136,   137,   138,
1878         139,   140,   141,   142,   143,   144,   145,   146,   147,   148,
1879         149,   150,   151,   152,   153,   154,   155,   156,   157,   158,
1880         159,   160,   161,   162,   163,   164,   165,   166,   167,   168,
1881         169,   170,   171,   172,   173,   174,   175,   176,   177,   178,
1882         179,   180,   181,   182,   183,   184,   185,   186,   187,   188,
1883         189,   190,   191,   192,   193,   194,   195,   196,   197,   198,
1884         199,   200,   201,   202,   203,   204,   205,   206,   207,   208,
1885         209,   210,   211,   212,   213,   214,   215,   216,   217,   218,
1886         219,   220,   221,     3,     4,     5,     6,     7,     8,     9,
1887        10,    11,    12,    13,    14,    15,    16,    17,    18,    19,        10,    11,    12,    13,    14,    15,    16,    17,    18,    19,
1888        20,    21,    22,    23,    24,    25,    26,    27,    28,    29,        20,    21,    22,    23,    24,    25,    26,    27,    28,    29,
1889        30,    31,    32,    33,    34,    35,    36,    37,    38,    39,        30,    31,    32,    33,    34,    35,    36,    37,    38,    39,
# Line 1749  static const short yycheck[] = Line 1905  static const short yycheck[] =
1905       190,   191,   192,   193,   194,   195,   196,   197,   198,   199,       190,   191,   192,   193,   194,   195,   196,   197,   198,   199,
1906       200,   201,   202,   203,   204,   205,   206,   207,   208,   209,       200,   201,   202,   203,   204,   205,   206,   207,   208,   209,
1907       210,   211,   212,   213,   214,   215,   216,   217,   218,   219,       210,   211,   212,   213,   214,   215,   216,   217,   218,   219,
1908       220,     3,     4,     5,     6,     7,     8,     9,    10,    11,       220,   221,     3,     4,     5,     6,     7,     8,     9,    10,
1909        12,    13,    14,    15,    16,    17,    18,    19,    20,    21,        11,    12,    13,    14,    15,    16,    17,    18,    19,    20,
1910        22,    23,    24,    25,    26,    27,    28,    29,    30,    31,        21,    22,    23,    24,    25,    26,    27,    28,    29,    30,
1911        32,    33,    34,    35,    36,    37,    38,    39,    40,    41,        31,    32,    33,    34,    35,    36,    37,    38,    39,    40,
1912        42,    43,    44,    45,    46,    47,    48,    49,    50,    51,        41,    42,    43,    44,    45,    46,    47,    48,    49,    50,
1913        52,    53,    54,    55,    56,    57,    58,    59,    60,    61,        51,    52,    53,    54,    55,    56,    57,    58,    59,    60,
1914        62,    63,    64,    65,    66,    67,    68,    69,    70,    71,        61,    62,    63,    64,    65,    66,    67,    68,    69,    70,
1915        72,    73,    74,    75,    76,    77,    78,    79,    80,    81,        71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
1916        82,    83,    84,    85,    86,    87,    88,    89,    90,    91,        81,    82,    83,    84,    85,    86,    87,    88,    89,    90,
1917        92,    93,    94,    95,    96,    97,    98,    99,   100,   101,        91,    92,    93,    94,    95,    96,    97,    98,    99,   100,
1918       102,   103,   104,   105,   106,   107,   108,   109,   110,   111,       101,   102,   103,   104,   105,   106,   107,   108,   109,   110,
1919       112,   113,   114,   115,   116,   117,   118,   119,   120,   121,       111,   112,   113,   114,   115,   116,   117,   118,   119,   120,
1920       122,   123,   124,   125,   126,   127,   128,   129,   130,   131,       121,   122,   123,   124,   125,   126,   127,   128,   129,   130,
1921       132,   133,   134,   135,   136,   137,   138,   139,   140,   141,       131,   132,   133,   134,   135,   136,   137,   138,   139,   140,
1922       142,   143,   144,   145,   146,   147,   148,   149,   150,   151,       141,   142,   143,   144,   145,   146,   147,   148,   149,   150,
1923       152,   153,   154,   155,   156,   157,   158,   159,   160,   161,       151,   152,   153,   154,   155,   156,   157,   158,   159,   160,
1924       162,   163,   164,   165,   166,   167,   168,   169,   170,   171,       161,   162,   163,   164,   165,   166,   167,   168,   169,   170,
1925       172,   173,   174,   175,   176,   177,   178,   179,   180,   181,       171,   172,   173,   174,   175,   176,   177,   178,   179,   180,
1926       182,   183,   184,   185,   186,   187,   188,   189,   190,   191,       181,   182,   183,   184,   185,   186,   187,   188,   189,   190,
1927       192,   193,   194,   195,   196,   197,   198,   199,   200,   201,       191,   192,   193,   194,   195,   196,   197,   198,   199,   200,
1928       202,   203,   204,   205,   206,   207,   208,   209,   210,   211,       201,   202,   203,   204,   205,   206,   207,   208,   209,   210,
1929       212,   213,   214,   215,   216,   217,   218,   219,   220,     3,       211,   212,   213,   214,   215,   216,   217,   218,   219,   220,
1930         4,     5,     6,     7,     8,     9,    10,    11,    12,    13,       221
       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  
1931  };  };
1932    
1933  /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing  /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
1934     symbol of state STATE-NUM.  */     symbol of state STATE-NUM.  */
1935  static const unsigned short yystos[] =  static const unsigned short int yystos[] =
1936  {  {
1937         0,     1,     3,    18,    20,    21,    24,    29,    34,    35,         0,     1,     3,    19,    21,    22,    25,    30,    35,    36,
1938        36,    38,   227,   228,   229,   230,   268,   269,   270,   271,        37,    39,   228,   229,   230,   231,   270,   271,   272,   273,
1939       272,   273,   275,   276,   277,   278,   311,   314,    21,    35,       274,   275,   278,   279,   280,   281,   282,   322,   325,    22,
1940        22,    22,    26,    32,    38,    22,    22,    38,    31,     0,        36,    23,    23,    27,    33,    39,    23,    23,    39,    32,
1941       224,   225,   266,   267,     3,     4,     5,     6,     7,     8,         0,   225,   226,   268,   269,     3,     4,     5,     6,     7,
1942         9,    10,    11,    12,    13,    14,    15,    16,    17,    18,         8,     9,    10,    11,    12,    13,    14,    15,    16,    17,
1943        19,    20,    21,    22,    23,    24,    25,    26,    27,    28,        18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
1944        29,    30,    31,    32,    33,    34,    35,    36,    37,    38,        28,    29,    30,    31,    32,    33,    34,    35,    36,    37,
1945        39,    40,    41,    42,    43,    44,    45,    46,    47,    48,        38,    39,    40,    41,    42,    43,    44,    45,    46,    47,
1946        49,    50,    51,    52,    53,    54,    55,    56,    57,    58,        48,    49,    50,    51,    52,    53,    54,    55,    56,    57,
1947        59,    60,    61,    62,    63,    64,    65,    66,    67,    68,        58,    59,    60,    61,    62,    63,    64,    65,    66,    67,
1948        69,    70,    71,    72,    73,    74,    75,    76,    77,    78,        68,    69,    70,    71,    72,    73,    74,    75,    76,    77,
1949        79,    80,    81,    82,    83,    84,    85,    86,    87,    88,        78,    79,    80,    81,    82,    83,    84,    85,    86,    87,
1950        89,    90,    91,    92,    93,    94,    95,    96,    97,    98,        88,    89,    90,    91,    92,    93,    94,    95,    96,    97,
1951        99,   100,   101,   102,   103,   104,   105,   106,   107,   108,        98,    99,   100,   101,   102,   103,   104,   105,   106,   107,
1952       109,   110,   111,   112,   113,   114,   115,   116,   117,   118,       108,   109,   110,   111,   112,   113,   114,   115,   116,   117,
1953       119,   120,   121,   122,   123,   124,   125,   126,   127,   128,       118,   119,   120,   121,   122,   123,   124,   125,   126,   127,
1954       129,   130,   131,   132,   133,   134,   135,   136,   137,   138,       128,   129,   130,   131,   132,   133,   134,   135,   136,   137,
1955       139,   140,   141,   142,   143,   144,   145,   146,   147,   148,       138,   139,   140,   141,   142,   143,   144,   145,   146,   147,
1956       149,   150,   151,   152,   153,   154,   155,   156,   157,   158,       148,   149,   150,   151,   152,   153,   154,   155,   156,   157,
1957       159,   160,   161,   162,   163,   164,   165,   166,   167,   168,       158,   159,   160,   161,   162,   163,   164,   165,   166,   167,
1958       169,   170,   171,   172,   173,   174,   175,   176,   177,   178,       168,   169,   170,   171,   172,   173,   174,   175,   176,   177,
1959       179,   180,   181,   182,   183,   184,   185,   186,   187,   188,       178,   179,   180,   181,   182,   183,   184,   185,   186,   187,
1960       189,   190,   191,   192,   193,   194,   195,   196,   197,   198,       188,   189,   190,   191,   192,   193,   194,   195,   196,   197,
1961       199,   200,   201,   202,   203,   204,   205,   206,   207,   208,       198,   199,   200,   201,   202,   203,   204,   205,   206,   207,
1962       209,   210,   211,   212,   213,   214,   215,   216,   217,   218,       208,   209,   210,   211,   212,   213,   214,   215,   216,   217,
1963       219,   220,   223,   257,   260,   261,   262,   265,   265,   265,       218,   219,   220,   221,   224,   259,   262,   263,   264,   267,
1964       265,   265,   265,   265,   265,   265,   265,   265,   265,    21,       267,   267,   267,   267,   267,   267,   267,   267,   267,   267,
1965        22,    36,    37,    36,    18,    26,    30,    36,    37,    19,       267,   267,    22,    23,    37,    38,    37,    19,    27,    31,
1966        36,   266,     8,     9,    10,    11,    12,    13,    14,    15,        37,    30,    38,    20,    37,   268,     9,    10,    11,    12,
1967        16,    17,   259,   260,   259,   259,   259,   259,   259,   259,        13,    14,    15,    16,    17,    18,   261,   262,   261,   261,
1968       259,   259,     3,     8,     9,    10,    11,    12,    13,    14,       261,   261,   261,   261,   261,   261,     3,     9,    10,    11,
1969        15,    16,    17,   262,    20,   279,    18,    20,    22,    30,        12,    13,    14,    15,    16,    17,    18,   264,    21,   283,
1970       233,   279,   280,   281,   282,   288,   290,   291,   292,   293,        19,    21,    23,    31,    37,    38,   234,   283,   284,   285,
1971       294,   295,   297,   299,   300,   301,   302,   303,   304,    18,       286,   293,   294,   296,   298,   299,   300,   301,   302,   303,
1972        30,   235,   291,   301,   236,   291,   301,    18,    20,    30,       305,   307,   308,   309,   310,   311,   312,   316,    19,    31,
1973       241,   282,   290,   300,    26,   237,   287,   288,   279,    18,       236,   299,   309,   237,   299,   309,    19,    21,    31,   242,
1974        22,    30,   234,   279,   289,   294,   298,   299,   313,    19,       284,   285,   286,   298,   305,   308,    27,   238,   295,   296,
1975        26,    30,    36,    39,   231,   282,   283,   284,   285,   286,       283,    19,    23,    31,   235,   283,   297,   302,   306,   307,
1976       312,   232,   282,   283,   284,   285,   286,   312,   279,    18,       324,    20,    21,    31,    37,    38,    40,   232,   288,   289,
1977        37,    37,    21,    37,    32,    22,    36,    38,   260,    25,       290,   291,   292,   293,   323,   233,   288,   289,   290,   291,
1978        38,    39,    25,    31,    26,   265,   265,   265,   265,   265,       292,   293,   323,   259,   265,   267,   283,    19,    38,    38,
1979       265,   265,   265,   265,   265,   265,   265,    38,    26,   265,        22,    38,    33,    23,    23,    37,    39,   262,    26,    39,
1980       265,   265,   265,    38,    25,    26,    31,   265,   265,   265,        40,    26,    32,    27,    23,    33,   267,   267,   267,   267,
1981        38,    20,    26,   265,   265,   265,   265,   265,   265,    38,       267,   267,   267,   267,   267,   267,   267,   267,   267,    39,
1982        31,    26,    37,    32,   265,    37,    35,    39,    37,    20,        27,   267,   267,   267,   267,    39,    26,    27,    32,   267,
1983        19,    18,    21,    18,    18,    24,    21,   283,   284,   285,       267,   267,    39,    21,    27,   267,   267,   267,   267,   267,
1984       286,   283,   283,   283,   283,   283,   283,   283,   283,   283,       267,    39,    26,    27,    38,    33,    33,   259,   267,   267,
1985       283,   283,    21,    21,   257,   257,     9,    10,    11,    12,        38,    36,    40,    38,    21,    21,    20,    19,    22,    19,
1986        13,    14,    15,    16,    17,   261,   261,    21,    18,    21,        19,    25,    22,    36,    38,    27,   287,   290,   291,   292,
1987        36,    31,   221,   222,   242,   254,   264,   274,   243,   253,       287,   287,   287,   287,   287,   287,   287,   287,   287,   287,
1988       257,   251,   261,    21,    25,    21,    18,    30,    39,   238,       287,   287,    22,    22,   259,   259,    10,    11,    12,    13,
1989       291,   295,   296,   301,   304,   305,   306,   307,   308,   261,        14,    15,    16,    17,    18,   263,   263,    22,    19,    22,
1990       261,   261,   261,   256,   257,   261,    23,    23,    36,    35,        37,    32,   222,   223,   243,   255,   266,   277,   244,   254,
1991        26,   251,    22,    32,    22,    35,    36,    31,    26,    26,       259,   252,   263,    22,    26,    22,    19,    31,    37,    40,
1992        31,    26,    26,   265,   265,   265,   265,   265,   265,   265,       239,   299,   303,   304,   309,   312,   313,   314,   315,   317,
1993       265,   265,   265,   265,   265,   265,   265,   265,    26,    26,       318,   319,   263,   263,   263,   263,   258,   259,   263,    24,
1994       265,   265,    26,    31,    26,    37,    32,   257,   263,   265,        19,    37,    36,    38,    27,   252,    23,    33,    23,    38,
1995       263,   265,   265,   265,    26,    32,    26,    38,    26,    32,        36,    37,    32,    27,    27,    32,    27,    27,    40,    19,
1996       265,   265,   265,   265,   265,   265,   265,   265,   265,   265,        32,   267,   267,   267,   267,   267,   267,   267,   267,   267,
1997       265,   265,   265,    23,    32,    20,    22,    20,    42,    26,       267,   267,   267,   267,   267,   267,    27,    27,   267,   267,
1998        20,    31,    32,    29,    31,    31,    88,   251,    19,    33,        27,    32,    27,    38,    33,   265,   265,   267,   267,   267,
1999       240,   309,   310,   251,   251,   253,   261,   257,   257,   261,        27,    33,    27,    39,    27,    39,    33,    33,   267,   267,
2000       261,   261,   261,   257,   257,   261,    32,    88,   239,   257,       267,   267,   267,   267,   267,   267,   267,   267,   267,   267,
2001       239,    32,    31,    88,    35,    31,   221,   257,   265,   222,       267,   267,   267,    24,    32,    21,    23,    19,    21,    43,
2002       252,   261,   254,   251,    32,    88,    21,    21,    29,   251,        27,    21,    32,    33,    30,    32,    32,    89,    23,    30,
2003       251,   251,   251,   251,   251,   251,   251,   251,   257,   261,        24,   252,    20,    34,   241,   320,   321,   252,   252,   254,
2004       257,   261,    22,    22,    18,    22,    19,    35,    22,    88,       263,   259,   259,   263,   263,   263,   263,   259,   259,   263,
2005        18,    22,    22,    26,    42,    22,   265,   265,   265,   265,        33,    89,   240,   259,   240,    33,    32,    89,    36,    32,
2006       265,   265,   265,    88,    26,   265,     4,    88,    22,    26,       222,   223,   253,   263,   255,   252,    33,    89,    22,    22,
2007        38,    88,   265,   265,    88,    26,    26,    26,    38,   265,        38,    30,    30,   252,   252,   252,   252,   252,   252,   252,
2008       265,   265,   265,   265,   265,   265,   265,   265,     4,   265,       252,   252,   252,   252,   259,   263,   259,   263,    23,    32,
2009         4,   265,    35,    29,    30,    88,    22,    26,    29,    32,        23,    19,    30,    23,    20,    36,    23,    89,    19,    23,
2010        19,    29,    31,    37,    35,   251,   257,   261,   261,   261,        23,    27,    36,    89,    33,    43,    23,   267,   267,   267,
2011       257,   261,    32,    31,   257,     6,     7,   255,   257,   258,       267,   267,   267,   267,    89,    27,   267,     4,    89,    23,
2012       259,   260,   261,   264,    32,    29,    31,    30,    30,   251,        27,    39,    89,   267,   267,    89,    27,    27,    27,    23,
2013       252,    32,    31,    32,    88,    30,   244,   261,   245,   261,        33,    39,   267,   267,   267,   267,   267,   267,   267,   267,
2014       246,   257,   244,   247,   261,   248,   261,   249,   257,   244,       267,   267,   267,     4,   267,     4,   267,    36,    23,    30,
2015         6,     7,   250,   258,   261,   255,   257,   255,   257,    88,        31,    89,    89,    23,    27,    30,    33,    20,    30,    32,
2016        29,    88,    20,    19,    38,    29,    36,    33,    22,    20,        40,    38,    36,   252,   259,   263,   263,   263,   259,   263,
2017       265,   265,   265,   265,    38,    33,     4,   259,   259,     5,        33,    32,   259,     7,     8,   256,   257,   259,   260,   261,
2018        38,    33,    22,    32,   265,    38,    33,    88,    26,    22,       262,   263,   266,    33,    30,    32,    31,    31,   252,   253,
2019       265,   265,     4,     4,    23,    18,    20,    32,    22,    37,        33,    32,    33,    89,    31,   245,   263,   246,   263,   247,
2020        22,    38,    36,    22,   239,   257,   257,   239,    37,    38,       259,   245,   248,   263,    19,   249,   263,   276,   250,   259,
2021       255,     5,     5,   259,    37,    38,    31,    21,   251,    37,       245,     7,     8,   251,   260,   263,   258,   258,   256,   259,
2022        38,    32,    31,   245,   247,   255,   255,    26,    31,    32,       256,   259,    89,    30,    30,    89,    40,    21,    20,    39,
2023        38,    33,    88,    37,    31,    33,    37,   259,   259,    33,        30,    37,    34,    33,    23,    21,   267,   267,   267,   267,
2024        37,    37,    18,    33,    37,    38,    33,   265,    29,    22,        39,    34,     4,   261,   261,     5,     6,    39,    34,    23,
2025        38,    31,    38,    18,    22,    30,    88,    37,    38,    88,        33,   267,    39,    34,    89,    27,    23,   267,    30,   267,
2026        38,    88,    29,    38,    88,    37,    38,   248,    29,    32,         4,     4,    24,    89,    19,    21,    33,    33,    23,    38,
2027        31,    37,    37,    38,    31,    26,    21,    33,    18,    37,        23,    39,    27,    37,    23,   240,   259,   259,   240,    38,
2028        21,    37,    21,    37,    21,    33,    33,    37,    38,    37,        39,   256,     6,     6,   257,   261,    38,    39,    32,    22,
2029        88,    21,    24,    21,    22,    35,    32,    24,    88,    22,       252,    38,    39,    33,    32,   246,    30,   248,   256,   256,
2030        88,    22,    88,    22,    32,    38,    88,    36,    20,    21,        27,    21,    27,    32,    33,    27,    39,    34,    89,    38,
2031        26,    26,    26,    39,    26,    35,    22,    21,    39,    21,        21,    32,    34,    38,   261,   261,    34,    38,    38,    19,
2032        39,    20,    21,    39,    35,    37,    20,    33,    37,    25,        34,    38,    39,    34,   267,    30,    33,    32,    23,    39,
2033        22,    35,    32,    31,    88,    26,    39,    37,    22,    26,        21,    32,    39,    19,    23,    31,    89,    23,    38,    39,
2034        22,    26,    25,    22,    26,    37,    88,    25,    32,    42,        89,    39,    89,    30,    39,    89,    38,    39,   249,    30,
2035        18,    39,    26,    88,    22,    26,    20,    22,    88,    39,        39,    24,    33,    32,    23,    38,    38,    39,    32,    27,
2036        20,    39,    20,    18,    39,    20,    20,    37,    18,    35,        22,    34,    89,    19,    38,    22,    38,    22,    38,    22,
2037        33,    31,    26,    39,    32,    36,    31,    22,    35,    33,        34,    34,    38,    32,    33,    39,    38,    89,    89,    22,
2038        26,    22,    26,    22,    31,    26,    22,    25,    42,    31,        25,    22,    23,    36,    33,    21,    25,    89,    23,    89,
2039        37,    22,    31,    20,    22,    38,    33,    36,    88,    18,        23,    89,    23,    33,    39,    89,    38,    37,    21,    21,
2040        20,    20,    31,    20,    88,    18,    33,    31,    22,    22,        22,    27,    27,    27,    40,    27,    36,    33,    23,    22,
2041        35,    37,    38,    33,    35,    22,    22,    22,    22,    33,        40,    22,    40,    21,    22,    40,    36,    38,    21,    34,
2042        31,    22,    22,    29,    36,    88,    33,    37,    18,    18,        38,    33,    26,    23,    36,    33,    32,    89,    27,    40,
2043        29,    88,    18,    31,    29,    88,    33,    38,    88,    35,        38,    39,    23,    27,    23,    27,    26,    23,    27,    38,
2044        30,    33,    35,    22,    33,    18,    37,    21,    18,    22,        89,    26,    33,    43,    39,    19,    40,    27,    89,    23,
2045        18,    18,    29,    18,    35,    88,    35,    30,    37,    35,        27,    21,    23,    89,    32,    40,    21,    40,    21,    19,
2046        30,    35,    18,    21,    26,    22,    22,    18,    22,    18,        40,    21,    21,    38,    19,    36,    34,    32,    32,    27,
2047        30,    35,    39,    37,    35,    30,    37,    30,    22,    26,        40,    33,    37,    32,    23,    36,    34,    38,    27,    23,
2048        22,    22,    22,    22,    22,    37,    39,    35,    35,    37,        27,    23,    32,    27,    23,    26,    43,    32,    38,    23,
2049        35,    37,    22,    22,    36,    22,    22,    35,    35,    35,        38,    32,    21,    23,    39,    34,    37,    89,    19,    89,
2050        35,    36        21,    21,    32,    21,    89,    19,    34,    32,    23,    23,
2051          36,    38,    39,    34,    36,    31,    23,    23,    23,    23,
2052          34,    32,    23,    23,    30,    37,    89,    34,    38,    19,
2053          19,    19,    30,    89,    19,    32,    30,    89,    34,    39,
2054          89,    36,    31,    42,    34,    36,    23,    34,    19,    38,
2055          22,    19,    23,    19,    19,    30,    19,    36,    89,    36,
2056          31,    38,    36,    31,    36,    19,    22,    27,    23,    23,
2057          19,    23,    19,    31,    36,    40,    38,    36,    31,    38,
2058          31,    23,    27,    23,    23,    23,    23,    23,    38,    40,
2059          36,    36,    38,    36,    38,    23,    23,    37,    23,    23,
2060          36,    36,    36,    36,    37
2061  };  };
2062    
 #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  
   
2063  #define yyerrok         (yyerrstatus = 0)  #define yyerrok         (yyerrstatus = 0)
2064  #define yyclearin       (yychar = YYEMPTY)  #define yyclearin       (yychar = YYEMPTY)
2065  #define YYEMPTY         (-2)  #define YYEMPTY         (-2)
# Line 1938  static const unsigned short yystos[] = Line 2067  static const unsigned short yystos[] =
2067    
2068  #define YYACCEPT        goto yyacceptlab  #define YYACCEPT        goto yyacceptlab
2069  #define YYABORT         goto yyabortlab  #define YYABORT         goto yyabortlab
2070  #define YYERROR         goto yyerrlab1  #define YYERROR         goto yyerrorlab
2071    
2072    
2073  /* Like YYERROR except do call yyerror.  This remains here temporarily  /* Like YYERROR except do call yyerror.  This remains here temporarily
# Line 1960  do                                                             \ Line 2089  do                                                             \
2089        goto yybackup;                                            \        goto yybackup;                                            \
2090      }                                                           \      }                                                           \
2091    else                                                          \    else                                                          \
2092      {                                                           \      {                                                           \
2093        yyerror ("syntax error: cannot back up");\        yyerror (YY_("syntax error: cannot back up")); \
2094        YYERROR;                                                  \        YYERROR;                                                  \
2095      }                                                           \      }                                                           \
2096  while (0)  while (0)
2097    
2098    
2099  #define YYTERROR        1  #define YYTERROR        1
2100  #define YYERRCODE       256  #define YYERRCODE       256
2101    
 /* YYLLOC_DEFAULT -- Compute the default location (before the actions  
    are run).  */  
2102    
2103    /* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N].
2104       If N is 0, then set CURRENT to the empty location which ends
2105       the previous symbol: RHS[0] (always defined).  */
2106    
2107    #define YYRHSLOC(Rhs, K) ((Rhs)[K])
2108  #ifndef YYLLOC_DEFAULT  #ifndef YYLLOC_DEFAULT
2109  # define YYLLOC_DEFAULT(Current, Rhs, N)         \  # define YYLLOC_DEFAULT(Current, Rhs, N)                                \
2110    Current.first_line   = Rhs[1].first_line;      \      do                                                                  \
2111    Current.first_column = Rhs[1].first_column;    \        if (N)                                                            \
2112    Current.last_line    = Rhs[N].last_line;       \          {                                                               \
2113    Current.last_column  = Rhs[N].last_column;            (Current).first_line   = YYRHSLOC (Rhs, 1).first_line;        \
2114              (Current).first_column = YYRHSLOC (Rhs, 1).first_column;      \
2115              (Current).last_line    = YYRHSLOC (Rhs, N).last_line;         \
2116              (Current).last_column  = YYRHSLOC (Rhs, N).last_column;       \
2117            }                                                               \
2118          else                                                              \
2119            {                                                               \
2120              (Current).first_line   = (Current).last_line   =              \
2121                YYRHSLOC (Rhs, 0).last_line;                                \
2122              (Current).first_column = (Current).last_column =              \
2123                YYRHSLOC (Rhs, 0).last_column;                              \
2124            }                                                               \
2125        while (0)
2126    #endif
2127    
2128    
2129    /* YY_LOCATION_PRINT -- Print the location on the stream.
2130       This macro was not mandated originally: define only if we know
2131       we won't break user code: when these are the locations we know.  */
2132    
2133    #ifndef YY_LOCATION_PRINT
2134    # if YYLTYPE_IS_TRIVIAL
2135    #  define YY_LOCATION_PRINT(File, Loc)                  \
2136         fprintf (File, "%d.%d-%d.%d",                      \
2137                  (Loc).first_line, (Loc).first_column,     \
2138                  (Loc).last_line,  (Loc).last_column)
2139    # else
2140    #  define YY_LOCATION_PRINT(File, Loc) ((void) 0)
2141    # endif
2142  #endif  #endif
2143    
2144    
2145  /* YYLEX -- calling `yylex' with the right arguments.  */  /* YYLEX -- calling `yylex' with the right arguments.  */
2146    
2147  #ifdef YYLEX_PARAM  #ifdef YYLEX_PARAM
# Line 2002  do {                                           \ Line 2164  do {                                           \
2164      YYFPRINTF Args;                             \      YYFPRINTF Args;                             \
2165  } while (0)  } while (0)
2166    
2167  # define YYDSYMPRINT(Args)                      \  # define YY_SYMBOL_PRINT(Title, Type, Value, Location)          \
 do {                                            \  
   if (yydebug)                                  \  
     yysymprint Args;                            \  
 } while (0)  
   
 # define YYDSYMPRINTF(Title, Token, Value, Location)            \  
2168  do {                                                            \  do {                                                            \
2169    if (yydebug)                                                  \    if (yydebug)                                                  \
2170      {                                                           \      {                                                           \
2171        YYFPRINTF (stderr, "%s ", Title);                         \        YYFPRINTF (stderr, "%s ", Title);                         \
2172        yysymprint (stderr,                                       \        yysymprint (stderr,                                       \
2173                    Token, Value);        \                    Type, Value); \
2174        YYFPRINTF (stderr, "\n");                                 \        YYFPRINTF (stderr, "\n");                                 \
2175      }                                                           \      }                                                           \
2176  } while (0)  } while (0)
2177    
2178  /*------------------------------------------------------------------.  /*------------------------------------------------------------------.
2179  | 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 |
2180  | TOP (cinluded).                                                   |  | TOP (included).                                                   |
2181  `------------------------------------------------------------------*/  `------------------------------------------------------------------*/
2182    
2183  #if defined (__STDC__) || defined (__cplusplus)  #if defined (__STDC__) || defined (__cplusplus)
2184  static void  static void
2185  yy_stack_print (short *bottom, short *top)  yy_stack_print (short int *bottom, short int *top)
2186  #else  #else
2187  static void  static void
2188  yy_stack_print (bottom, top)  yy_stack_print (bottom, top)
2189      short *bottom;      short int *bottom;
2190      short *top;      short int *top;
2191  #endif  #endif
2192  {  {
2193    YYFPRINTF (stderr, "Stack now");    YYFPRINTF (stderr, "Stack now");
# Line 2061  yy_reduce_print (yyrule) Line 2217  yy_reduce_print (yyrule)
2217  #endif  #endif
2218  {  {
2219    int yyi;    int yyi;
2220    unsigned int yylineno = yyrline[yyrule];    unsigned long int yylno = yyrline[yyrule];
2221    YYFPRINTF (stderr, "Reducing stack by rule %d (line %u), ",    YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu), ",
2222               yyrule - 1, yylineno);               yyrule - 1, yylno);
2223    /* Print the symbols being reduced, and their result.  */    /* Print the symbols being reduced, and their result.  */
2224    for (yyi = yyprhs[yyrule]; 0 <= yyrhs[yyi]; yyi++)    for (yyi = yyprhs[yyrule]; 0 <= yyrhs[yyi]; yyi++)
2225      YYFPRINTF (stderr, "%s ", yytname [yyrhs[yyi]]);      YYFPRINTF (stderr, "%s ", yytname[yyrhs[yyi]]);
2226    YYFPRINTF (stderr, "-> %s\n", yytname [yyr1[yyrule]]);    YYFPRINTF (stderr, "-> %s\n", yytname[yyr1[yyrule]]);
2227  }  }
2228    
2229  # define YY_REDUCE_PRINT(Rule)          \  # define YY_REDUCE_PRINT(Rule)          \
# Line 2081  do {                                   \ Line 2237  do {                                   \
2237  int yydebug;  int yydebug;
2238  #else /* !YYDEBUG */  #else /* !YYDEBUG */
2239  # define YYDPRINTF(Args)  # define YYDPRINTF(Args)
2240  # define YYDSYMPRINT(Args)  # define YY_SYMBOL_PRINT(Title, Type, Value, Location)
 # define YYDSYMPRINTF(Title, Token, Value, Location)  
2241  # define YY_STACK_PRINT(Bottom, Top)  # define YY_STACK_PRINT(Bottom, Top)
2242  # define YY_REDUCE_PRINT(Rule)  # define YY_REDUCE_PRINT(Rule)
2243  #endif /* !YYDEBUG */  #endif /* !YYDEBUG */
# Line 2097  int yydebug; Line 2252  int yydebug;
2252     if the built-in stack extension method is used).     if the built-in stack extension method is used).
2253    
2254     Do not make this value too large; the results are undefined if     Do not make this value too large; the results are undefined if
2255     SIZE_MAX < YYSTACK_BYTES (YYMAXDEPTH)     YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
2256     evaluated with infinite-precision integer arithmetic.  */     evaluated with infinite-precision integer arithmetic.  */
2257    
 #if YYMAXDEPTH == 0  
 # undef YYMAXDEPTH  
 #endif  
   
2258  #ifndef YYMAXDEPTH  #ifndef YYMAXDEPTH
2259  # define YYMAXDEPTH 10000  # define YYMAXDEPTH 10000
2260  #endif  #endif
# Line 2125  yystrlen (yystr) Line 2276  yystrlen (yystr)
2276       const char *yystr;       const char *yystr;
2277  #   endif  #   endif
2278  {  {
2279    register const char *yys = yystr;    const char *yys = yystr;
2280    
2281    while (*yys++ != '\0')    while (*yys++ != '\0')
2282      continue;      continue;
# Line 2150  yystpcpy (yydest, yysrc) Line 2301  yystpcpy (yydest, yysrc)
2301       const char *yysrc;       const char *yysrc;
2302  #   endif  #   endif
2303  {  {
2304    register char *yyd = yydest;    char *yyd = yydest;
2305    register const char *yys = yysrc;    const char *yys = yysrc;
2306    
2307    while ((*yyd++ = *yys++) != '\0')    while ((*yyd++ = *yys++) != '\0')
2308      continue;      continue;
# Line 2161  yystpcpy (yydest, yysrc) Line 2312  yystpcpy (yydest, yysrc)
2312  #  endif  #  endif
2313  # endif  # endif
2314    
2315  #endif /* !YYERROR_VERBOSE */  # ifndef yytnamerr
2316    /* Copy to YYRES the contents of YYSTR after stripping away unnecessary
2317       quotes and backslashes, so that it's suitable for yyerror.  The
2318       heuristic is that double-quoting is unnecessary unless the string
2319       contains an apostrophe, a comma, or backslash (other than
2320       backslash-backslash).  YYSTR is taken from yytname.  If YYRES is
2321       null, do not copy; instead, return the length of what the result
2322       would have been.  */
2323    static YYSIZE_T
2324    yytnamerr (char *yyres, const char *yystr)
2325    {
2326      if (*yystr == '"')
2327        {
2328          size_t yyn = 0;
2329          char const *yyp = yystr;
2330    
2331          for (;;)
2332            switch (*++yyp)
2333              {
2334              case '\'':
2335              case ',':
2336                goto do_not_strip_quotes;
2337    
2338              case '\\':
2339                if (*++yyp != '\\')
2340                  goto do_not_strip_quotes;
2341                /* Fall through.  */
2342              default:
2343                if (yyres)
2344                  yyres[yyn] = *yyp;
2345                yyn++;
2346                break;
2347    
2348              case '"':
2349                if (yyres)
2350                  yyres[yyn] = '\0';
2351                return yyn;
2352              }
2353        do_not_strip_quotes: ;
2354        }
2355    
2356      if (! yyres)
2357        return yystrlen (yystr);
2358    
2359      return yystpcpy (yyres, yystr) - yyres;
2360    }
2361    # endif
2362    
2363    #endif /* YYERROR_VERBOSE */
2364    
2365    
2366    
# Line 2185  yysymprint (yyoutput, yytype, yyvaluep) Line 2384  yysymprint (yyoutput, yytype, yyvaluep)
2384    (void) yyvaluep;    (void) yyvaluep;
2385    
2386    if (yytype < YYNTOKENS)    if (yytype < YYNTOKENS)
2387      {      YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
       YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);  
 # ifdef YYPRINT  
       YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);  
 # endif  
     }  
2388    else    else
2389      YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);      YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);
2390    
2391    
2392    # ifdef YYPRINT
2393      if (yytype < YYNTOKENS)
2394        YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
2395    # endif
2396    switch (yytype)    switch (yytype)
2397      {      {
2398        default:        default:
# Line 2209  yysymprint (yyoutput, yytype, yyvaluep) Line 2408  yysymprint (yyoutput, yytype, yyvaluep)
2408    
2409  #if defined (__STDC__) || defined (__cplusplus)  #if defined (__STDC__) || defined (__cplusplus)
2410  static void  static void
2411  yydestruct (int yytype, YYSTYPE *yyvaluep)  yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep)
2412  #else  #else
2413  static void  static void
2414  yydestruct (yytype, yyvaluep)  yydestruct (yymsg, yytype, yyvaluep)
2415        const char *yymsg;
2416      int yytype;      int yytype;
2417      YYSTYPE *yyvaluep;      YYSTYPE *yyvaluep;
2418  #endif  #endif
# Line 2220  yydestruct (yytype, yyvaluep) Line 2420  yydestruct (yytype, yyvaluep)
2420    /* Pacify ``unused variable'' warnings.  */    /* Pacify ``unused variable'' warnings.  */
2421    (void) yyvaluep;    (void) yyvaluep;
2422    
2423      if (!yymsg)
2424        yymsg = "Deleting";
2425      YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
2426    
2427    switch (yytype)    switch (yytype)
2428      {      {
2429    
# Line 2268  yyparse (void) Line 2472  yyparse (void)
2472  #else  #else
2473  int  int
2474  yyparse ()  yyparse ()
2475        ;
2476  #endif  #endif
2477  #endif  #endif
2478  {  {
2479    /* The lookahead symbol.  */    /* The look-ahead symbol.  */
2480  int yychar;  int yychar;
2481    
2482  /* The semantic value of the lookahead symbol.  */  /* The semantic value of the look-ahead symbol.  */
2483  YYSTYPE yylval;  YYSTYPE yylval;
2484    
2485  /* Number of syntax errors so far.  */  /* Number of syntax errors so far.  */
2486  int yynerrs;  int yynerrs;
2487    
2488    register int yystate;    int yystate;
2489    register int yyn;    int yyn;
2490    int yyresult;    int yyresult;
2491    /* Number of tokens to shift before error messages enabled.  */    /* Number of tokens to shift before error messages enabled.  */
2492    int yyerrstatus;    int yyerrstatus;
2493    /* Lookahead token as an internal (translated) token number.  */    /* Look-ahead token as an internal (translated) token number.  */
2494    int yytoken = 0;    int yytoken = 0;
2495    
2496    /* Three stacks and their tools:    /* Three stacks and their tools:
# Line 2298  int yynerrs; Line 2502  int yynerrs;
2502       to reallocate them elsewhere.  */       to reallocate them elsewhere.  */
2503    
2504    /* The state stack.  */    /* The state stack.  */
2505    short yyssa[YYINITDEPTH];    short int yyssa[YYINITDEPTH];
2506    short *yyss = yyssa;    short int *yyss = yyssa;
2507    register short *yyssp;    short int *yyssp;
2508    
2509    /* The semantic value stack.  */    /* The semantic value stack.  */
2510    YYSTYPE yyvsa[YYINITDEPTH];    YYSTYPE yyvsa[YYINITDEPTH];
2511    YYSTYPE *yyvs = yyvsa;    YYSTYPE *yyvs = yyvsa;
2512    register YYSTYPE *yyvsp;    YYSTYPE *yyvsp;
2513    
2514    
2515    
# Line 2362  int yynerrs; Line 2566  int yynerrs;
2566             these so that the &'s don't force the real ones into             these so that the &'s don't force the real ones into
2567             memory.  */             memory.  */
2568          YYSTYPE *yyvs1 = yyvs;          YYSTYPE *yyvs1 = yyvs;
2569          short *yyss1 = yyss;          short int *yyss1 = yyss;
2570    
2571    
2572          /* Each stack pointer address is followed by the size of the          /* Each stack pointer address is followed by the size of the
2573             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
2574             conditional around just the two extra args, but that might             conditional around just the two extra args, but that might
2575             be undefined if yyoverflow is a macro.  */             be undefined if yyoverflow is a macro.  */
2576          yyoverflow ("parser stack overflow",          yyoverflow (YY_("memory exhausted"),
2577                      &yyss1, yysize * sizeof (*yyssp),                      &yyss1, yysize * sizeof (*yyssp),
2578                      &yyvs1, yysize * sizeof (*yyvsp),                      &yyvs1, yysize * sizeof (*yyvsp),
2579    
# Line 2380  int yynerrs; Line 2584  int yynerrs;
2584        }        }
2585  #else /* no yyoverflow */  #else /* no yyoverflow */
2586  # ifndef YYSTACK_RELOCATE  # ifndef YYSTACK_RELOCATE
2587        goto yyoverflowlab;        goto yyexhaustedlab;
2588  # else  # else
2589        /* Extend the stack our own way.  */        /* Extend the stack our own way.  */
2590        if (YYMAXDEPTH <= yystacksize)        if (YYMAXDEPTH <= yystacksize)
2591          goto yyoverflowlab;          goto yyexhaustedlab;
2592        yystacksize *= 2;        yystacksize *= 2;
2593        if (YYMAXDEPTH < yystacksize)        if (YYMAXDEPTH < yystacksize)
2594          yystacksize = YYMAXDEPTH;          yystacksize = YYMAXDEPTH;
2595    
2596        {        {
2597          short *yyss1 = yyss;          short int *yyss1 = yyss;
2598          union yyalloc *yyptr =          union yyalloc *yyptr =
2599            (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));            (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
2600          if (! yyptr)          if (! yyptr)
2601            goto yyoverflowlab;            goto yyexhaustedlab;
2602          YYSTACK_RELOCATE (yyss);          YYSTACK_RELOCATE (yyss);
2603          YYSTACK_RELOCATE (yyvs);          YYSTACK_RELOCATE (yyvs);
2604    
# Line 2426  int yynerrs; Line 2630  int yynerrs;
2630  yybackup:  yybackup:
2631    
2632  /* Do appropriate processing given the current state.  */  /* Do appropriate processing given the current state.  */
2633  /* Read a lookahead token if we need one and don't already have one.  */  /* Read a look-ahead token if we need one and don't already have one.  */
2634  /* yyresume: */  /* yyresume: */
2635    
2636    /* First try to decide what to do without reference to lookahead token.  */    /* First try to decide what to do without reference to look-ahead token.  */
2637    
2638    yyn = yypact[yystate];    yyn = yypact[yystate];
2639    if (yyn == YYPACT_NINF)    if (yyn == YYPACT_NINF)
2640      goto yydefault;      goto yydefault;
2641    
2642    /* Not known => get a lookahead token if don't already have one.  */    /* Not known => get a look-ahead token if don't already have one.  */
2643    
2644    /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol.  */    /* YYCHAR is either YYEMPTY or YYEOF or a valid look-ahead symbol.  */
2645    if (yychar == YYEMPTY)    if (yychar == YYEMPTY)
2646      {      {
2647        YYDPRINTF ((stderr, "Reading a token: "));        YYDPRINTF ((stderr, "Reading a token: "));
# Line 2452  yybackup: Line 2656  yybackup:
2656    else    else
2657      {      {
2658        yytoken = YYTRANSLATE (yychar);        yytoken = YYTRANSLATE (yychar);
2659        YYDSYMPRINTF ("Next token is", yytoken, &yylval, &yylloc);        YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
2660      }      }
2661    
2662    /* If the proper action on seeing token YYTOKEN is to reduce or to    /* If the proper action on seeing token YYTOKEN is to reduce or to
# Line 2472  yybackup: Line 2676  yybackup:
2676    if (yyn == YYFINAL)    if (yyn == YYFINAL)
2677      YYACCEPT;      YYACCEPT;
2678    
2679    /* Shift the lookahead token.  */    /* Shift the look-ahead token.  */
2680    YYDPRINTF ((stderr, "Shifting token %s, ", yytname[yytoken]));    YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
2681    
2682    /* Discard the token being shifted unless it is eof.  */    /* Discard the token being shifted unless it is eof.  */
2683    if (yychar != YYEOF)    if (yychar != YYEOF)
# Line 2523  yyreduce: Line 2727  yyreduce:
2727    switch (yyn)    switch (yyn)
2728      {      {
2729          case 4:          case 4:
2730  #line 85 "lscp.y"  #line 94 "lscp.y"
2731      { return LSCP_DONE; }      { return LSCP_DONE; }
2732      break;      break;
2733    
2734    case 5:    case 5:
2735  #line 86 "lscp.y"  #line 95 "lscp.y"
2736      { return LSCP_DONE; }      { return LSCP_DONE; }
2737      break;      break;
2738    
2739    case 6:    case 6:
2740  #line 87 "lscp.y"  #line 96 "lscp.y"
2741      { LSCPSERVER->AnswerClient(yyvsp[0].String); return LSCP_DONE; }      { LSCPSERVER->AnswerClient((yyvsp[0].String)); return LSCP_DONE; }
2742      break;      break;
2743    
2744    case 7:    case 7:
2745  #line 88 "lscp.y"  #line 97 "lscp.y"
2746      { 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; }
2747      break;      break;
2748    
2749    case 13:    case 13:
2750  #line 98 "lscp.y"  #line 107 "lscp.y"
2751      { yyval.String = LSCPSERVER->AddChannel();                          }      { (yyval.String) = LSCPSERVER->AddChannel();                          }
2752      break;      break;
2753    
2754    case 14:    case 14:
2755  #line 99 "lscp.y"  #line 108 "lscp.y"
2756      { yyval.String = yyvsp[0].String;                                                }      { (yyval.String) = (yyvsp[0].String);                                                }
2757      break;      break;
2758    
2759    case 15:    case 15:
2760  #line 100 "lscp.y"  #line 109 "lscp.y"
2761      { yyval.String = yyvsp[0].String;                                                }      { (yyval.String) = (yyvsp[0].String);                                                }
2762      break;      break;
2763    
2764    case 16:    case 16:
2765  #line 101 "lscp.y"  #line 110 "lscp.y"
2766      { yyval.String = yyvsp[0].String;                                                }      { (yyval.String) = (yyvsp[0].String);                                                }
2767      break;      break;
2768    
2769    case 17:    case 17:
2770  #line 102 "lscp.y"  #line 111 "lscp.y"
2771      { yyval.String = yyvsp[0].String;                                                }      { (yyval.String) = (yyvsp[0].String);                                                }
2772      break;      break;
2773    
2774    case 18:    case 18:
2775  #line 103 "lscp.y"  #line 112 "lscp.y"
2776      { yyval.String = yyvsp[0].String;                                                }      { (yyval.String) = (yyvsp[0].String);                                                }
2777      break;      break;
2778    
2779    case 19:    case 19:
2780  #line 104 "lscp.y"  #line 113 "lscp.y"
2781      { yyval.String = LSCPSERVER->RemoveChannel(yyvsp[0].Number);                     }      { (yyval.String) = LSCPSERVER->RemoveChannel((yyvsp[0].Number));                     }
2782      break;      break;
2783    
2784    case 20:    case 20:
2785  #line 105 "lscp.y"  #line 114 "lscp.y"
2786      { yyval.String = yyvsp[0].String;                                                }      { (yyval.String) = (yyvsp[0].String);                                                }
2787      break;      break;
2788    
2789    case 21:    case 21:
2790  #line 106 "lscp.y"  #line 115 "lscp.y"
2791      { yyval.String = yyvsp[0].String;                                                }      { (yyval.String) = (yyvsp[0].String);                                                }
2792      break;      break;
2793    
2794    case 22:    case 22:
2795  #line 107 "lscp.y"  #line 116 "lscp.y"
2796      { yyval.String = yyvsp[0].String;                                                }      { (yyval.String) = (yyvsp[0].String);                                                }
2797      break;      break;
2798    
2799    case 23:    case 23:
2800  #line 108 "lscp.y"  #line 117 "lscp.y"
2801      { yyval.String = LSCPSERVER->ResetChannel(yyvsp[0].Number);                      }      { (yyval.String) = LSCPSERVER->QueryDatabase((yyvsp[0].String));                     }
2802      break;      break;
2803    
2804    case 24:    case 24:
2805  #line 109 "lscp.y"  #line 118 "lscp.y"
2806      { yyval.String = LSCPSERVER->ResetSampler();                        }      { (yyval.String) = LSCPSERVER->ResetChannel((yyvsp[0].Number));                      }
2807      break;      break;
2808    
2809    case 25:    case 25:
2810  #line 110 "lscp.y"  #line 119 "lscp.y"
2811      { LSCPSERVER->AnswerClient("Bye!\r\n"); return LSCP_QUIT; }      { (yyval.String) = LSCPSERVER->ResetSampler();                        }
2812      break;      break;
2813    
2814    case 26:    case 26:
2815  #line 113 "lscp.y"  #line 120 "lscp.y"
2816      { yyval.String = LSCPSERVER->SubscribeNotification(LSCPEvent::event_channels);     }      { LSCPSERVER->AnswerClient("Bye!\r\n"); return LSCP_QUIT; }
2817      break;      break;
2818    
2819    case 27:    case 27:
2820  #line 114 "lscp.y"  #line 123 "lscp.y"
2821      { yyval.String = LSCPSERVER->SubscribeNotification(LSCPEvent::event_voice_count);  }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_channel_count);     }
2822      break;      break;
2823    
2824    case 28:    case 28:
2825  #line 115 "lscp.y"  #line 124 "lscp.y"
2826      { yyval.String = LSCPSERVER->SubscribeNotification(LSCPEvent::event_stream_count); }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_voice_count);       }
2827      break;      break;
2828    
2829    case 29:    case 29:
2830  #line 116 "lscp.y"  #line 125 "lscp.y"
2831      { yyval.String = LSCPSERVER->SubscribeNotification(LSCPEvent::event_buffer_fill);  }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_stream_count);      }
2832      break;      break;
2833    
2834    case 30:    case 30:
2835  #line 117 "lscp.y"  #line 126 "lscp.y"
2836      { yyval.String = LSCPSERVER->SubscribeNotification(LSCPEvent::event_info);         }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_buffer_fill);       }
2837      break;      break;
2838    
2839    case 31:    case 31:
2840  #line 118 "lscp.y"  #line 127 "lscp.y"
2841      { yyval.String = LSCPSERVER->SubscribeNotification(LSCPEvent::event_misc);         }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_channel_info);      }
2842      break;      break;
2843    
2844    case 32:    case 32:
2845  #line 121 "lscp.y"  #line 128 "lscp.y"
2846      { yyval.String = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_channels);     }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_misc);              }
2847      break;      break;
2848    
2849    case 33:    case 33:
2850  #line 122 "lscp.y"  #line 129 "lscp.y"
2851      { yyval.String = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_voice_count);  }      { (yyval.String) = LSCPSERVER->SubscribeNotification(LSCPEvent::event_total_voice_count); }
2852      break;      break;
2853    
2854    case 34:    case 34:
2855  #line 123 "lscp.y"  #line 132 "lscp.y"
2856      { yyval.String = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_stream_count); }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_channel_count);     }
2857      break;      break;
2858    
2859    case 35:    case 35:
2860  #line 124 "lscp.y"  #line 133 "lscp.y"
2861      { yyval.String = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_buffer_fill);  }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_voice_count);       }
2862      break;      break;
2863    
2864    case 36:    case 36:
2865  #line 125 "lscp.y"  #line 134 "lscp.y"
2866      { yyval.String = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_info);         }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_stream_count);      }
2867      break;      break;
2868    
2869    case 37:    case 37:
2870  #line 126 "lscp.y"  #line 135 "lscp.y"
2871      { yyval.String = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_misc);         }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_buffer_fill);       }
2872      break;      break;
2873    
2874    case 38:    case 38:
2875  #line 129 "lscp.y"  #line 136 "lscp.y"
2876      { yyval.String = LSCPSERVER->GetAvailableEngines();                          }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_channel_info);      }
2877      break;      break;
2878    
2879    case 39:    case 39:
2880  #line 130 "lscp.y"  #line 137 "lscp.y"
2881      { yyval.String = LSCPSERVER->GetAvailableMidiInputDrivers();                 }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_misc);              }
2882      break;      break;
2883    
2884    case 40:    case 40:
2885  #line 131 "lscp.y"  #line 138 "lscp.y"
2886      { yyval.String = LSCPSERVER->GetMidiInputDriverInfo(yyvsp[0].String);                     }      { (yyval.String) = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_total_voice_count); }
2887      break;      break;
2888    
2889    case 41:    case 41:
2890  #line 132 "lscp.y"  #line 141 "lscp.y"
2891      { yyval.String = LSCPSERVER->GetMidiInputDriverParameterInfo(yyvsp[-2].String, yyvsp[0].String);        }      { (yyval.String) = LSCPSERVER->GetAvailableEngines();                          }
2892      break;      break;
2893    
2894    case 42:    case 42:
2895  #line 133 "lscp.y"  #line 142 "lscp.y"
2896      { yyval.String = LSCPSERVER->GetMidiInputDriverParameterInfo(yyvsp[-4].String, yyvsp[-2].String, yyvsp[0].KeyValList);    }      { (yyval.String) = LSCPSERVER->GetAvailableMidiInputDrivers();                 }
2897      break;      break;
2898    
2899    case 43:    case 43:
2900  #line 134 "lscp.y"  #line 143 "lscp.y"
2901      { yyval.String = LSCPSERVER->GetAvailableAudioOutputDrivers();               }      { (yyval.String) = LSCPSERVER->GetMidiInputDriverInfo((yyvsp[0].String));                     }
2902      break;      break;
2903    
2904    case 44:    case 44:
2905  #line 135 "lscp.y"  #line 144 "lscp.y"
2906      { yyval.String = LSCPSERVER->GetAudioOutputDriverInfo(yyvsp[0].String);                   }      { (yyval.String) = LSCPSERVER->GetMidiInputDriverParameterInfo((yyvsp[-2].String), (yyvsp[0].String));        }
2907      break;      break;
2908    
2909    case 45:    case 45:
2910  #line 136 "lscp.y"  #line 145 "lscp.y"
2911      { yyval.String = LSCPSERVER->GetAudioOutputDriverParameterInfo(yyvsp[-2].String, yyvsp[0].String);      }      { (yyval.String) = LSCPSERVER->GetMidiInputDriverParameterInfo((yyvsp[-4].String), (yyvsp[-2].String), (yyvsp[0].KeyValList));    }
2912      break;      break;
2913    
2914    case 46:    case 46:
2915  #line 137 "lscp.y"  #line 146 "lscp.y"
2916      { yyval.String = LSCPSERVER->GetAudioOutputDriverParameterInfo(yyvsp[-4].String, yyvsp[-2].String, yyvsp[0].KeyValList);  }      { (yyval.String) = LSCPSERVER->GetAvailableAudioOutputDrivers();               }
2917      break;      break;
2918    
2919    case 47:    case 47:
2920  #line 138 "lscp.y"  #line 147 "lscp.y"
2921      { yyval.String = LSCPSERVER->GetAudioOutputDeviceCount();                    }      { (yyval.String) = LSCPSERVER->GetAudioOutputDriverInfo((yyvsp[0].String));                   }
2922      break;      break;
2923    
2924    case 48:    case 48:
2925  #line 139 "lscp.y"  #line 148 "lscp.y"
2926      { yyval.String = LSCPSERVER->GetMidiInputDeviceCount();                      }      { (yyval.String) = LSCPSERVER->GetAudioOutputDriverParameterInfo((yyvsp[-2].String), (yyvsp[0].String));      }
2927      break;      break;
2928    
2929    case 49:    case 49:
2930  #line 140 "lscp.y"  #line 149 "lscp.y"
2931      { yyval.String = LSCPSERVER->GetAudioOutputDeviceInfo(yyvsp[0].Number);                   }      { (yyval.String) = LSCPSERVER->GetAudioOutputDriverParameterInfo((yyvsp[-4].String), (yyvsp[-2].String), (yyvsp[0].KeyValList));  }
2932      break;      break;
2933    
2934    case 50:    case 50:
2935  #line 141 "lscp.y"  #line 150 "lscp.y"
2936      { yyval.String = LSCPSERVER->GetMidiInputDeviceInfo(yyvsp[0].Number);                     }      { (yyval.String) = LSCPSERVER->GetAudioOutputDeviceCount();                    }
2937      break;      break;
2938    
2939    case 51:    case 51:
2940  #line 142 "lscp.y"  #line 151 "lscp.y"
2941      { yyval.String = LSCPSERVER->GetMidiInputPortInfo(yyvsp[-2].Number, yyvsp[0].Number);                   }      { (yyval.String) = LSCPSERVER->GetMidiInputDeviceCount();                      }
2942      break;      break;
2943    
2944    case 52:    case 52:
2945  #line 143 "lscp.y"  #line 152 "lscp.y"
2946      { yyval.String = LSCPSERVER->GetMidiInputPortParameterInfo(yyvsp[-4].Number, yyvsp[-2].Number, yyvsp[0].String);      }      { (yyval.String) = LSCPSERVER->GetAudioOutputDeviceInfo((yyvsp[0].Number));                   }
2947      break;      break;
2948    
2949    case 53:    case 53:
2950  #line 144 "lscp.y"  #line 153 "lscp.y"
2951      { yyval.String = LSCPSERVER->GetAudioOutputChannelInfo(yyvsp[-2].Number, yyvsp[0].Number);              }      { (yyval.String) = LSCPSERVER->GetMidiInputDeviceInfo((yyvsp[0].Number));                     }
2952      break;      break;
2953    
2954    case 54:    case 54:
2955  #line 145 "lscp.y"  #line 154 "lscp.y"
2956      { yyval.String = LSCPSERVER->GetAudioOutputChannelParameterInfo(yyvsp[-4].Number, yyvsp[-2].Number, yyvsp[0].String); }      { (yyval.String) = LSCPSERVER->GetMidiInputPortInfo((yyvsp[-2].Number), (yyvsp[0].Number));                   }
2957      break;      break;
2958    
2959    case 55:    case 55:
2960  #line 146 "lscp.y"  #line 155 "lscp.y"
2961      { yyval.String = LSCPSERVER->GetChannels();                                  }      { (yyval.String) = LSCPSERVER->GetMidiInputPortParameterInfo((yyvsp[-4].Number), (yyvsp[-2].Number), (yyvsp[0].String));      }
2962      break;      break;
2963    
2964    case 56:    case 56:
2965  #line 147 "lscp.y"  #line 156 "lscp.y"
2966      { yyval.String = LSCPSERVER->GetChannelInfo(yyvsp[0].Number);                             }      { (yyval.String) = LSCPSERVER->GetAudioOutputChannelInfo((yyvsp[-2].Number), (yyvsp[0].Number));              }
2967      break;      break;
2968    
2969    case 57:    case 57:
2970  #line 148 "lscp.y"  #line 157 "lscp.y"
2971      { yyval.String = LSCPSERVER->GetBufferFill(yyvsp[-2].FillResponse, yyvsp[0].Number);                          }      { (yyval.String) = LSCPSERVER->GetAudioOutputChannelParameterInfo((yyvsp[-4].Number), (yyvsp[-2].Number), (yyvsp[0].String)); }
2972      break;      break;
2973    
2974    case 58:    case 58:
2975  #line 149 "lscp.y"  #line 158 "lscp.y"
2976      { yyval.String = LSCPSERVER->GetStreamCount(yyvsp[0].Number);                             }      { (yyval.String) = LSCPSERVER->GetChannels();                                  }
2977      break;      break;
2978    
2979    case 59:    case 59:
2980  #line 150 "lscp.y"  #line 159 "lscp.y"
2981      { yyval.String = LSCPSERVER->GetVoiceCount(yyvsp[0].Number);                              }      { (yyval.String) = LSCPSERVER->GetChannelInfo((yyvsp[0].Number));                             }
2982      break;      break;
2983    
2984    case 60:    case 60:
2985  #line 151 "lscp.y"  #line 160 "lscp.y"
2986      { yyval.String = LSCPSERVER->GetEngineInfo(yyvsp[0].String);                              }      { (yyval.String) = LSCPSERVER->GetBufferFill((yyvsp[-2].FillResponse), (yyvsp[0].Number));                          }
2987      break;      break;
2988    
2989    case 61:    case 61:
2990  #line 154 "lscp.y"  #line 161 "lscp.y"
2991      { yyval.String = LSCPSERVER->SetAudioOutputDeviceParameter(yyvsp[-4].Number, yyvsp[-2].String, yyvsp[0].String);      }      { (yyval.String) = LSCPSERVER->GetStreamCount((yyvsp[0].Number));                             }
2992      break;      break;
2993    
2994    case 62:    case 62:
2995  #line 155 "lscp.y"  #line 162 "lscp.y"
2996      { yyval.String = LSCPSERVER->SetAudioOutputChannelParameter(yyvsp[-6].Number, yyvsp[-4].Number, yyvsp[-2].String, yyvsp[0].String); }      { (yyval.String) = LSCPSERVER->GetVoiceCount((yyvsp[0].Number));                              }
2997      break;      break;
2998    
2999    case 63:    case 63:
3000  #line 156 "lscp.y"  #line 163 "lscp.y"
3001      { yyval.String = LSCPSERVER->SetMidiInputDeviceParameter(yyvsp[-4].Number, yyvsp[-2].String, yyvsp[0].String);        }      { (yyval.String) = LSCPSERVER->GetEngineInfo((yyvsp[0].String));                              }
3002      break;      break;
3003    
3004    case 64:    case 64:
3005  #line 157 "lscp.y"  #line 164 "lscp.y"
3006      { yyval.String = LSCPSERVER->SetMidiInputPortParameter(yyvsp[-6].Number, yyvsp[-4].Number, yyvsp[-2].String, yyvsp[0].String);      }      { (yyval.String) = LSCPSERVER->GetServerInfo();                                }
3007      break;      break;
3008    
3009    case 65:    case 65:
3010  #line 158 "lscp.y"  #line 165 "lscp.y"
3011      { yyval.String = yyvsp[0].String;                                                         }      { (yyval.String) = LSCPSERVER->GetTotalVoiceCount();                                }
3012      break;      break;
3013    
3014    case 66:    case 66:
3015  #line 159 "lscp.y"  #line 166 "lscp.y"
3016      { yyval.String = LSCPSERVER->SetEcho((yyparse_param_t*) yyparse_param, yyvsp[0].Dotnum);  }      { (yyval.String) = LSCPSERVER->GetTotalVoiceCountMax();                        }
3017      break;      break;
3018    
3019    case 67:    case 67:
3020  #line 162 "lscp.y"  #line 169 "lscp.y"
3021      { yyval.String = LSCPSERVER->CreateAudioOutputDevice(yyvsp[-2].String,yyvsp[0].KeyValList); }      { (yyval.String) = LSCPSERVER->SetAudioOutputDeviceParameter((yyvsp[-4].Number), (yyvsp[-2].String), (yyvsp[0].String));      }
3022      break;      break;
3023    
3024    case 68:    case 68:
3025  #line 163 "lscp.y"  #line 170 "lscp.y"
3026      { yyval.String = LSCPSERVER->CreateAudioOutputDevice(yyvsp[0].String);    }      { (yyval.String) = LSCPSERVER->SetAudioOutputChannelParameter((yyvsp[-6].Number), (yyvsp[-4].Number), (yyvsp[-2].String), (yyvsp[0].String)); }
3027      break;      break;
3028    
3029    case 69:    case 69:
3030  #line 164 "lscp.y"  #line 171 "lscp.y"
3031      { yyval.String = LSCPSERVER->CreateMidiInputDevice(yyvsp[-2].String,yyvsp[0].KeyValList);   }      { (yyval.String) = LSCPSERVER->SetMidiInputDeviceParameter((yyvsp[-4].Number), (yyvsp[-2].String), (yyvsp[0].String));        }
3032      break;      break;
3033    
3034    case 70:    case 70:
3035  #line 165 "lscp.y"  #line 172 "lscp.y"
3036      { yyval.String = LSCPSERVER->CreateMidiInputDevice(yyvsp[0].String);      }      { (yyval.String) = LSCPSERVER->SetMidiInputPortParameter((yyvsp[-6].Number), (yyvsp[-4].Number), (yyvsp[-2].String), (yyvsp[0].String));      }
3037      break;      break;
3038    
3039    case 71:    case 71:
3040  #line 168 "lscp.y"  #line 173 "lscp.y"
3041      { yyval.String = LSCPSERVER->DestroyAudioOutputDevice(yyvsp[0].Number); }      { (yyval.String) = (yyvsp[0].String);                                                         }
3042      break;      break;
3043    
3044    case 72:    case 72:
3045  #line 169 "lscp.y"  #line 174 "lscp.y"
3046      { yyval.String = LSCPSERVER->DestroyMidiInputDevice(yyvsp[0].Number);   }      { (yyval.String) = LSCPSERVER->SetEcho((yyparse_param_t*) yyparse_param, (yyvsp[0].Dotnum));  }
3047      break;      break;
3048    
3049    case 73:    case 73:
3050  #line 172 "lscp.y"  #line 177 "lscp.y"
3051      { yyval.String = yyvsp[0].String; }      { (yyval.String) = LSCPSERVER->CreateAudioOutputDevice((yyvsp[-2].String),(yyvsp[0].KeyValList)); }
3052      break;      break;
3053    
3054    case 74:    case 74:
3055  #line 173 "lscp.y"  #line 178 "lscp.y"
3056      { yyval.String = yyvsp[0].String; }      { (yyval.String) = LSCPSERVER->CreateAudioOutputDevice((yyvsp[0].String));    }
3057      break;      break;
3058    
3059    case 75:    case 75:
3060  #line 176 "lscp.y"  #line 179 "lscp.y"
3061      { yyval.String = LSCPSERVER->SetAudioOutputDevice(yyvsp[0].Number, yyvsp[-2].Number);      }      { (yyval.String) = LSCPSERVER->CreateMidiInputDevice((yyvsp[-2].String),(yyvsp[0].KeyValList));   }
3062      break;      break;
3063    
3064    case 76:    case 76:
3065  #line 177 "lscp.y"  #line 180 "lscp.y"
3066      { yyval.String = LSCPSERVER->SetAudioOutputChannel(yyvsp[-2].Number, yyvsp[0].Number, yyvsp[-4].Number); }      { (yyval.String) = LSCPSERVER->CreateMidiInputDevice((yyvsp[0].String));      }
3067      break;      break;
3068    
3069    case 77:    case 77:
3070  #line 178 "lscp.y"  #line 183 "lscp.y"
3071      { yyval.String = LSCPSERVER->SetAudioOutputType(yyvsp[0].String, yyvsp[-2].Number);        }      { (yyval.String) = LSCPSERVER->DestroyAudioOutputDevice((yyvsp[0].Number)); }
3072      break;      break;
3073    
3074    case 78:    case 78:
3075  #line 179 "lscp.y"  #line 184 "lscp.y"
3076      { yyval.String = LSCPSERVER->SetMIDIInput(yyvsp[-4].Number, yyvsp[-2].Number, yyvsp[0].Number, yyvsp[-6].Number);      }      { (yyval.String) = LSCPSERVER->DestroyMidiInputDevice((yyvsp[0].Number));   }
3077      break;      break;
3078    
3079    case 79:    case 79:
3080  #line 180 "lscp.y"  #line 187 "lscp.y"
3081      { yyval.String = LSCPSERVER->SetMIDIInputDevice(yyvsp[0].Number, yyvsp[-2].Number);        }      { (yyval.String) = (yyvsp[0].String); }
3082      break;      break;
3083    
3084    case 80:    case 80:
3085  #line 181 "lscp.y"  #line 188 "lscp.y"
3086      { yyval.String = LSCPSERVER->SetMIDIInputPort(yyvsp[0].Number, yyvsp[-2].Number);          }      { (yyval.String) = (yyvsp[0].String); }
3087      break;      break;
3088    
3089    case 81:    case 81:
3090  #line 182 "lscp.y"  #line 191 "lscp.y"
3091      { yyval.String = LSCPSERVER->SetMIDIInputChannel(yyvsp[0].Number, yyvsp[-2].Number);       }      { (yyval.String) = LSCPSERVER->SetAudioOutputDevice((yyvsp[0].Number), (yyvsp[-2].Number));      }
3092      break;      break;
3093    
3094    case 82:    case 82:
3095  #line 183 "lscp.y"  #line 192 "lscp.y"
3096      { yyval.String = LSCPSERVER->SetMIDIInputType(yyvsp[0].String, yyvsp[-2].Number);          }      { (yyval.String) = LSCPSERVER->SetAudioOutputChannel((yyvsp[-2].Number), (yyvsp[0].Number), (yyvsp[-4].Number)); }
3097      break;      break;
3098    
3099    case 83:    case 83:
3100  #line 184 "lscp.y"  #line 193 "lscp.y"
3101      { yyval.String = LSCPSERVER->SetVolume(yyvsp[0].Dotnum, yyvsp[-2].Number);                 }      { (yyval.String) = LSCPSERVER->SetAudioOutputType((yyvsp[0].String), (yyvsp[-2].Number));        }
3102      break;      break;
3103    
3104    case 84:    case 84:
3105  #line 187 "lscp.y"  #line 194 "lscp.y"
3106      { yyval.KeyValList[yyvsp[-2].String] = yyvsp[0].String;          }      { (yyval.String) = LSCPSERVER->SetMIDIInput((yyvsp[-4].Number), (yyvsp[-2].Number), (yyvsp[0].Number), (yyvsp[-6].Number));      }
3107      break;      break;
3108    
3109    case 85:    case 85:
3110  #line 188 "lscp.y"  #line 195 "lscp.y"
3111      { yyval.KeyValList = yyvsp[-4].KeyValList; yyval.KeyValList[yyvsp[-2].String] = yyvsp[0].String; }      { (yyval.String) = LSCPSERVER->SetMIDIInputDevice((yyvsp[0].Number), (yyvsp[-2].Number));        }
3112      break;      break;
3113    
3114    case 86:    case 86:
3115  #line 191 "lscp.y"  #line 196 "lscp.y"
3116      { yyval.FillResponse = fill_response_bytes;      }      { (yyval.String) = LSCPSERVER->SetMIDIInputPort((yyvsp[0].Number), (yyvsp[-2].Number));          }
3117      break;      break;
3118    
3119    case 87:    case 87:
3120  #line 192 "lscp.y"  #line 197 "lscp.y"
3121      { yyval.FillResponse = fill_response_percentage; }      { (yyval.String) = LSCPSERVER->SetMIDIInputChannel((yyvsp[0].Number), (yyvsp[-2].Number));       }
3122      break;      break;
3123    
3124    case 88:    case 88:
3125  #line 195 "lscp.y"  #line 198 "lscp.y"
3126      { yyval.String = LSCPSERVER->GetAudioOutputDevices(); }      { (yyval.String) = LSCPSERVER->SetMIDIInputType((yyvsp[0].String), (yyvsp[-2].Number));          }
3127      break;      break;
3128    
3129    case 89:    case 89:
3130  #line 196 "lscp.y"  #line 199 "lscp.y"
3131      { yyval.String = LSCPSERVER->GetMidiInputDevices();   }      { (yyval.String) = LSCPSERVER->SetVolume((yyvsp[0].Dotnum), (yyvsp[-2].Number));                 }
3132      break;      break;
3133    
3134    case 90:    case 90:
 #line 197 "lscp.y"  
     { yyval.String = LSCPSERVER->ListChannels();          }  
     break;  
   
   case 91:  
3135  #line 200 "lscp.y"  #line 200 "lscp.y"
3136      { yyval.String = LSCPSERVER->LoadInstrument(yyvsp[-4].String, yyvsp[-2].Number, yyvsp[0].Number);       }      { (yyval.String) = LSCPSERVER->SetChannelMute((yyvsp[0].Dotnum), (yyvsp[-2].Number));            }
3137      break;      break;
3138    
3139    case 92:    case 91:
3140  #line 201 "lscp.y"  #line 201 "lscp.y"
3141      { yyval.String = LSCPSERVER->LoadInstrument(yyvsp[-4].String, yyvsp[-2].Number, yyvsp[0].Number, true); }      { (yyval.String) = LSCPSERVER->SetChannelSolo((yyvsp[0].Dotnum), (yyvsp[-2].Number));            }
3142      break;      break;
3143    
3144    case 93:    case 92:
3145  #line 204 "lscp.y"  #line 204 "lscp.y"
3146      { yyval.String = LSCPSERVER->LoadEngine(yyvsp[-2].String, yyvsp[0].Number); }      { (yyval.KeyValList)[(yyvsp[-2].String)] = (yyvsp[0].String);          }
3147      break;      break;
3148    
3149    case 101:    case 93:
3150  #line 226 "lscp.y"  #line 205 "lscp.y"
3151      { yyval.Dotnum = yyvsp[0].Number; }      { (yyval.KeyValList) = (yyvsp[-4].KeyValList); (yyval.KeyValList)[(yyvsp[-2].String)] = (yyvsp[0].String); }
3152      break;      break;
3153    
3154    case 108:    case 94:
3155  #line 243 "lscp.y"  #line 208 "lscp.y"
3156      { std::stringstream ss; ss << yyvsp[0].Number; yyval.String = ss.str(); }      { (yyval.FillResponse) = fill_response_bytes;      }
3157      break;      break;
3158    
3159    case 109:    case 95:
3160  #line 244 "lscp.y"  #line 209 "lscp.y"
3161      { std::stringstream ss; ss << yyvsp[0].Dotnum; yyval.String = ss.str(); }      { (yyval.FillResponse) = fill_response_percentage; }
3162      break;      break;
3163    
3164    case 110:    case 96:
3165  #line 250 "lscp.y"  #line 212 "lscp.y"
3166      { yyval.Dotnum = yyvsp[0].Number; }      { (yyval.String) = LSCPSERVER->GetAudioOutputDevices();           }
3167      break;      break;
3168    
3169    case 111:    case 97:
3170  #line 251 "lscp.y"  #line 213 "lscp.y"
3171      { yyval.Dotnum = -1; }      { (yyval.String) = LSCPSERVER->GetMidiInputDevices();             }
3172      break;      break;
3173    
3174    case 112:    case 98:
3175  #line 254 "lscp.y"  #line 214 "lscp.y"
3176      { std::string s; s = yyvsp[0].Char; yyval.String = s; }      { (yyval.String) = LSCPSERVER->ListChannels();                    }
3177      break;      break;
3178    
3179    case 113:    case 99:
3180  #line 255 "lscp.y"  #line 215 "lscp.y"
3181      { yyval.String = yyvsp[-1].String + yyvsp[0].Char;                  }      { (yyval.String) = LSCPSERVER->ListAvailableEngines();            }
3182      break;      break;
3183    
3184    case 114:    case 100:
3185  #line 258 "lscp.y"  #line 216 "lscp.y"
3186      { yyval.Dotnum = atof(String(yyvsp[-2].String + "." + yyvsp[0].String).c_str());                         }      { (yyval.String) = LSCPSERVER->ListAvailableMidiInputDrivers();   }
3187      break;      break;
3188    
3189    case 115:    case 101:
3190  #line 259 "lscp.y"  #line 217 "lscp.y"
3191      { String s = "+"; s += yyvsp[-2].String; s += "."; s += yyvsp[0].String; yyval.Dotnum = atof(s.c_str()); }      { (yyval.String) = LSCPSERVER->ListAvailableAudioOutputDrivers(); }
3192      break;      break;
3193    
3194    case 116:    case 102:
3195  #line 260 "lscp.y"  #line 220 "lscp.y"
3196      { yyval.Dotnum = atof(String("-" + yyvsp[-2].String + "." + yyvsp[0].String).c_str());                   }      { (yyval.String) = LSCPSERVER->LoadInstrument((yyvsp[-4].String), (yyvsp[-2].Number), (yyvsp[0].Number));       }
3197      break;      break;
3198    
3199    case 117:    case 103:
3200  #line 264 "lscp.y"  #line 221 "lscp.y"
3201      { yyval.String = yyvsp[0].Char;      }      { (yyval.String) = LSCPSERVER->LoadInstrument((yyvsp[-4].String), (yyvsp[-2].Number), (yyvsp[0].Number), true); }
3202      break;      break;
3203    
3204    case 118:    case 104:
3205  #line 265 "lscp.y"  #line 224 "lscp.y"
3206      { yyval.String = yyvsp[-1].String + yyvsp[0].Char; }      { (yyval.String) = LSCPSERVER->SetEngineType((yyvsp[-2].String), (yyvsp[0].Number)); }
3207      break;      break;
3208    
3209    case 119:    case 110:
3210  #line 268 "lscp.y"  #line 240 "lscp.y"
3211      { yyval.Char = '0'; }      { (yyval.Number) = 16; }
3212      break;      break;
3213    
3214    case 120:    case 113:
3215  #line 269 "lscp.y"  #line 247 "lscp.y"
3216      { yyval.Char = '1'; }      { (yyval.Dotnum) = (yyvsp[0].Number); }
3217      break;      break;
3218    
3219    case 121:    case 119:
3220  #line 270 "lscp.y"  #line 263 "lscp.y"
3221      { yyval.Char = '2'; }      { (yyval.String) = (yyvsp[-2].String) + "," + (yyvsp[0].String); }
3222      break;      break;
3223    
3224    case 122:    case 122:
3225  #line 271 "lscp.y"  #line 268 "lscp.y"
3226      { yyval.Char = '3'; }      { std::stringstream ss; ss << "\'" << (yyvsp[0].Number) << "\'"; (yyval.String) = ss.str(); }
3227      break;      break;
3228    
3229    case 123:    case 123:
3230  #line 272 "lscp.y"  #line 269 "lscp.y"
3231      { yyval.Char = '4'; }      { std::stringstream ss; ss << "\'" << (yyvsp[0].Dotnum) << "\'"; (yyval.String) = ss.str(); }
3232      break;      break;
3233    
3234    case 124:    case 124:
3235  #line 273 "lscp.y"  #line 277 "lscp.y"
3236      { yyval.Char = '5'; }      { (yyval.Dotnum) = (yyvsp[0].Number); }
3237      break;      break;
3238    
3239    case 125:    case 125:
3240  #line 274 "lscp.y"  #line 278 "lscp.y"
3241      { yyval.Char = '6'; }      { (yyval.Dotnum) = -1; }
3242      break;      break;
3243    
3244    case 126:    case 126:
3245  #line 275 "lscp.y"  #line 281 "lscp.y"
3246      { yyval.Char = '7'; }      { std::string s; s = (yyvsp[0].Char); (yyval.String) = s; }
3247      break;      break;
3248    
3249    case 127:    case 127:
3250  #line 276 "lscp.y"  #line 282 "lscp.y"
3251      { yyval.Char = '8'; }      { (yyval.String) = (yyvsp[-1].String) + (yyvsp[0].Char);                  }
3252      break;      break;
3253    
3254    case 128:    case 128:
3255  #line 277 "lscp.y"  #line 285 "lscp.y"
3256      { yyval.Char = '9'; }      { (yyval.Dotnum) = atof(String((yyvsp[-2].String) + "." + (yyvsp[0].String)).c_str());                         }
3257      break;      break;
3258    
3259    case 129:    case 129:
3260  #line 280 "lscp.y"  #line 286 "lscp.y"
3261      { yyval.Number = atoi(String(1, yyvsp[0].Char).c_str());      }      { String s = "+"; s += (yyvsp[-2].String); s += "."; s += (yyvsp[0].String); (yyval.Dotnum) = atof(s.c_str()); }
3262      break;      break;
3263    
3264    case 130:    case 130:
3265  #line 281 "lscp.y"  #line 287 "lscp.y"
3266      { yyval.Number = atoi(String(String("1") + yyvsp[0].String).c_str()); }      { (yyval.Dotnum) = atof(String("-" + (yyvsp[-2].String) + "." + (yyvsp[0].String)).c_str());                   }
3267      break;      break;
3268    
3269    case 131:    case 131:
3270  #line 282 "lscp.y"  #line 291 "lscp.y"
3271      { yyval.Number = atoi(String(String("2") + yyvsp[0].String).c_str()); }      { (yyval.String) = (yyvsp[0].Char);      }
3272      break;      break;
3273    
3274    case 132:    case 132:
3275  #line 283 "lscp.y"  #line 292 "lscp.y"
3276      { yyval.Number = atoi(String(String("3") + yyvsp[0].String).c_str()); }      { (yyval.String) = (yyvsp[-1].String) + (yyvsp[0].Char); }
3277      break;      break;
3278    
3279    case 133:    case 133:
3280  #line 284 "lscp.y"  #line 295 "lscp.y"
3281      { yyval.Number = atoi(String(String("4") + yyvsp[0].String).c_str()); }      { (yyval.Char) = '0'; }
3282      break;      break;
3283    
3284    case 134:    case 134:
3285  #line 285 "lscp.y"  #line 296 "lscp.y"
3286      { yyval.Number = atoi(String(String("5") + yyvsp[0].String).c_str()); }      { (yyval.Char) = '1'; }
3287      break;      break;
3288    
3289    case 135:    case 135:
3290  #line 286 "lscp.y"  #line 297 "lscp.y"
3291      { yyval.Number = atoi(String(String("6") + yyvsp[0].String).c_str()); }      { (yyval.Char) = '2'; }
3292      break;      break;
3293    
3294    case 136:    case 136:
3295  #line 287 "lscp.y"  #line 298 "lscp.y"
3296      { yyval.Number = atoi(String(String("7") + yyvsp[0].String).c_str()); }      { (yyval.Char) = '3'; }
3297      break;      break;
3298    
3299    case 137:    case 137:
3300  #line 288 "lscp.y"  #line 299 "lscp.y"
3301      { yyval.Number = atoi(String(String("8") + yyvsp[0].String).c_str()); }      { (yyval.Char) = '4'; }
3302      break;      break;
3303    
3304    case 138:    case 138:
3305  #line 289 "lscp.y"  #line 300 "lscp.y"
3306      { yyval.Number = atoi(String(String("9") + yyvsp[0].String).c_str()); }      { (yyval.Char) = '5'; }
3307      break;      break;
3308    
3309    case 139:    case 139:
3310  #line 291 "lscp.y"  #line 301 "lscp.y"
3311      { yyval.Char = 'A'; }      { (yyval.Char) = '6'; }
3312      break;      break;
3313    
3314    case 140:    case 140:
3315  #line 291 "lscp.y"  #line 302 "lscp.y"
3316      { yyval.Char = 'B'; }      { (yyval.Char) = '7'; }
3317      break;      break;
3318    
3319    case 141:    case 141:
3320  #line 291 "lscp.y"  #line 303 "lscp.y"
3321      { yyval.Char = 'C'; }      { (yyval.Char) = '8'; }
3322      break;      break;
3323    
3324    case 142:    case 142:
3325  #line 291 "lscp.y"  #line 304 "lscp.y"
3326      { yyval.Char = 'D'; }      { (yyval.Char) = '9'; }
3327      break;      break;
3328    
3329    case 143:    case 143:
3330  #line 291 "lscp.y"  #line 307 "lscp.y"
3331      { yyval.Char = 'E'; }      { (yyval.Number) = atoi(String(1, (yyvsp[0].Char)).c_str());      }
3332      break;      break;
3333    
3334    case 144:    case 144:
3335  #line 291 "lscp.y"  #line 308 "lscp.y"
3336      { yyval.Char = 'F'; }      { (yyval.Number) = atoi(String(String("1") + (yyvsp[0].String)).c_str()); }
3337      break;      break;
3338    
3339    case 145:    case 145:
3340  #line 291 "lscp.y"  #line 309 "lscp.y"
3341      { yyval.Char = 'G'; }      { (yyval.Number) = atoi(String(String("2") + (yyvsp[0].String)).c_str()); }
3342      break;      break;
3343    
3344    case 146:    case 146:
3345  #line 291 "lscp.y"  #line 310 "lscp.y"
3346      { yyval.Char = 'H'; }      { (yyval.Number) = atoi(String(String("3") + (yyvsp[0].String)).c_str()); }
3347      break;      break;
3348    
3349    case 147:    case 147:
3350  #line 291 "lscp.y"  #line 311 "lscp.y"
3351      { yyval.Char = 'I'; }      { (yyval.Number) = atoi(String(String("4") + (yyvsp[0].String)).c_str()); }
3352      break;      break;
3353    
3354    case 148:    case 148:
3355  #line 291 "lscp.y"  #line 312 "lscp.y"
3356      { yyval.Char = 'J'; }      { (yyval.Number) = atoi(String(String("5") + (yyvsp[0].String)).c_str()); }
3357      break;      break;
3358    
3359    case 149:    case 149:
3360  #line 291 "lscp.y"  #line 313 "lscp.y"
3361      { yyval.Char = 'K'; }      { (yyval.Number) = atoi(String(String("6") + (yyvsp[0].String)).c_str()); }
3362      break;      break;
3363    
3364    case 150:    case 150:
3365  #line 291 "lscp.y"  #line 314 "lscp.y"
3366      { yyval.Char = 'L'; }      { (yyval.Number) = atoi(String(String("7") + (yyvsp[0].String)).c_str()); }
3367      break;      break;
3368    
3369    case 151:    case 151:
3370  #line 291 "lscp.y"  #line 315 "lscp.y"
3371      { yyval.Char = 'M'; }      { (yyval.Number) = atoi(String(String("8") + (yyvsp[0].String)).c_str()); }
3372      break;      break;
3373    
3374    case 152:    case 152:
3375  #line 291 "lscp.y"  #line 316 "lscp.y"
3376      { yyval.Char = 'N'; }      { (yyval.Number) = atoi(String(String("9") + (yyvsp[0].String)).c_str()); }
3377      break;      break;
3378    
3379    case 153:    case 153:
3380  #line 291 "lscp.y"  #line 318 "lscp.y"
3381      { yyval.Char = 'O'; }      { (yyval.Char) = 'A'; }
3382      break;      break;
3383    
3384    case 154:    case 154:
3385  #line 291 "lscp.y"  #line 318 "lscp.y"
3386      { yyval.Char = 'P'; }      { (yyval.Char) = 'B'; }
3387      break;      break;
3388    
3389    case 155:    case 155:
3390  #line 291 "lscp.y"  #line 318 "lscp.y"
3391      { yyval.Char = 'Q'; }      { (yyval.Char) = 'C'; }
3392      break;      break;
3393    
3394    case 156:    case 156:
3395  #line 291 "lscp.y"  #line 318 "lscp.y"
3396      { yyval.Char = 'R'; }      { (yyval.Char) = 'D'; }
3397      break;      break;
3398    
3399    case 157:    case 157:
3400  #line 291 "lscp.y"  #line 318 "lscp.y"
3401      { yyval.Char = 'S'; }      { (yyval.Char) = 'E'; }
3402      break;      break;
3403    
3404    case 158:    case 158:
3405  #line 291 "lscp.y"  #line 318 "lscp.y"
3406      { yyval.Char = 'T'; }      { (yyval.Char) = 'F'; }
3407      break;      break;
3408    
3409    case 159:    case 159:
3410  #line 291 "lscp.y"  #line 318 "lscp.y"
3411      { yyval.Char = 'U'; }      { (yyval.Char) = 'G'; }
3412      break;      break;
3413    
3414    case 160:    case 160:
3415  #line 291 "lscp.y"  #line 318 "lscp.y"
3416      { yyval.Char = 'V'; }      { (yyval.Char) = 'H'; }
3417      break;      break;
3418    
3419    case 161:    case 161:
3420  #line 291 "lscp.y"  #line 318 "lscp.y"
3421      { yyval.Char = 'W'; }      { (yyval.Char) = 'I'; }
3422      break;      break;
3423    
3424    case 162:    case 162:
3425  #line 291 "lscp.y"  #line 318 "lscp.y"
3426      { yyval.Char = 'X'; }      { (yyval.Char) = 'J'; }
3427      break;      break;
3428    
3429    case 163:    case 163:
3430  #line 291 "lscp.y"  #line 318 "lscp.y"
3431      { yyval.Char = 'Y'; }      { (yyval.Char) = 'K'; }
3432      break;      break;
3433    
3434    case 164:    case 164:
3435  #line 291 "lscp.y"  #line 318 "lscp.y"
3436      { yyval.Char = 'Z'; }      { (yyval.Char) = 'L'; }
3437      break;      break;
3438    
3439    case 165:    case 165:
3440  #line 292 "lscp.y"  #line 318 "lscp.y"
3441      { yyval.Char = 'a'; }      { (yyval.Char) = 'M'; }
3442      break;      break;
3443    
3444    case 166:    case 166:
3445  #line 292 "lscp.y"  #line 318 "lscp.y"
3446      { yyval.Char = 'b'; }      { (yyval.Char) = 'N'; }
3447      break;      break;
3448    
3449    case 167:    case 167:
3450  #line 292 "lscp.y"  #line 318 "lscp.y"
3451      { yyval.Char = 'c'; }      { (yyval.Char) = 'O'; }
3452      break;      break;
3453    
3454    case 168:    case 168:
3455  #line 292 "lscp.y"  #line 318 "lscp.y"
3456      { yyval.Char = 'd'; }      { (yyval.Char) = 'P'; }
3457      break;      break;
3458    
3459    case 169:    case 169:
3460  #line 292 "lscp.y"  #line 318 "lscp.y"
3461      { yyval.Char = 'e'; }      { (yyval.Char) = 'Q'; }
3462      break;      break;
3463    
3464    case 170:    case 170:
3465  #line 292 "lscp.y"  #line 318 "lscp.y"
3466      { yyval.Char = 'f'; }      { (yyval.Char) = 'R'; }
3467      break;      break;
3468    
3469    case 171:    case 171:
3470  #line 292 "lscp.y"  #line 318 "lscp.y"
3471      { yyval.Char = 'g'; }      { (yyval.Char) = 'S'; }
3472      break;      break;
3473    
3474    case 172:    case 172:
3475  #line 292 "lscp.y"  #line 318 "lscp.y"
3476      { yyval.Char = 'h'; }      { (yyval.Char) = 'T'; }
3477      break;      break;
3478    
3479    case 173:    case 173:
3480  #line 292 "lscp.y"  #line 318 "lscp.y"
3481      { yyval.Char = 'i'; }      { (yyval.Char) = 'U'; }
3482      break;      break;
3483    
3484    case 174:    case 174:
3485  #line 292 "lscp.y"  #line 318 "lscp.y"
3486      { yyval.Char = 'j'; }      { (yyval.Char) = 'V'; }
3487      break;      break;
3488    
3489    case 175:    case 175:
3490  #line 292 "lscp.y"  #line 318 "lscp.y"
3491      { yyval.Char = 'k'; }      { (yyval.Char) = 'W'; }
3492      break;      break;
3493    
3494    case 176:    case 176:
3495  #line 292 "lscp.y"  #line 318 "lscp.y"
3496      { yyval.Char = 'l'; }      { (yyval.Char) = 'X'; }
3497      break;      break;
3498    
3499    case 177:    case 177:
3500  #line 292 "lscp.y"  #line 318 "lscp.y"
3501      { yyval.Char = 'm'; }      { (yyval.Char) = 'Y'; }
3502      break;      break;
3503    
3504    case 178:    case 178:
3505  #line 292 "lscp.y"  #line 318 "lscp.y"
3506      { yyval.Char = 'n'; }      { (yyval.Char) = 'Z'; }
3507      break;      break;
3508    
3509    case 179:    case 179:
3510  #line 292 "lscp.y"  #line 319 "lscp.y"
3511      { yyval.Char = 'o'; }      { (yyval.Char) = 'a'; }
3512      break;      break;
3513    
3514    case 180:    case 180:
3515  #line 292 "lscp.y"  #line 319 "lscp.y"
3516      { yyval.Char = 'p'; }      { (yyval.Char) = 'b'; }
3517      break;      break;
3518    
3519    case 181:    case 181:
3520  #line 292 "lscp.y"  #line 319 "lscp.y"
3521      { yyval.Char = 'q'; }      { (yyval.Char) = 'c'; }
3522      break;      break;
3523    
3524    case 182:    case 182:
3525  #line 292 "lscp.y"  #line 319 "lscp.y"
3526      { yyval.Char = 'r'; }      { (yyval.Char) = 'd'; }
3527      break;      break;
3528    
3529    case 183:    case 183:
3530  #line 292 "lscp.y"  #line 319 "lscp.y"
3531      { yyval.Char = 's'; }      { (yyval.Char) = 'e'; }
3532      break;      break;
3533    
3534    case 184:    case 184:
3535  #line 292 "lscp.y"  #line 319 "lscp.y"
3536      { yyval.Char = 't'; }      { (yyval.Char) = 'f'; }
3537      break;      break;
3538    
3539    case 185:    case 185:
3540  #line 292 "lscp.y"  #line 319 "lscp.y"
3541      { yyval.Char = 'u'; }      { (yyval.Char) = 'g'; }
3542      break;      break;
3543    
3544    case 186:    case 186:
3545  #line 292 "lscp.y"  #line 319 "lscp.y"
3546      { yyval.Char = 'v'; }      { (yyval.Char) = 'h'; }
3547      break;      break;
3548    
3549    case 187:    case 187:
3550  #line 292 "lscp.y"  #line 319 "lscp.y"
3551      { yyval.Char = 'w'; }      { (yyval.Char) = 'i'; }
3552      break;      break;
3553    
3554    case 188:    case 188:
3555  #line 292 "lscp.y"  #line 319 "lscp.y"
3556      { yyval.Char = 'x'; }      { (yyval.Char) = 'j'; }
3557      break;      break;
3558    
3559    case 189:    case 189:
3560  #line 292 "lscp.y"  #line 319 "lscp.y"
3561      { yyval.Char = 'y'; }      { (yyval.Char) = 'k'; }
3562      break;      break;
3563    
3564    case 190:    case 190:
3565  #line 292 "lscp.y"  #line 319 "lscp.y"
3566      { yyval.Char = 'z'; }      { (yyval.Char) = 'l'; }
3567      break;      break;
3568    
3569    case 191:    case 191:
3570  #line 293 "lscp.y"  #line 319 "lscp.y"
3571      { yyval.Char = '0'; }      { (yyval.Char) = 'm'; }
3572      break;      break;
3573    
3574    case 192:    case 192:
3575  #line 293 "lscp.y"  #line 319 "lscp.y"
3576      { yyval.Char = '1'; }      { (yyval.Char) = 'n'; }
3577      break;      break;
3578    
3579    case 193:    case 193:
3580  #line 293 "lscp.y"  #line 319 "lscp.y"
3581      { yyval.Char = '2'; }      { (yyval.Char) = 'o'; }
3582      break;      break;
3583    
3584    case 194:    case 194:
3585  #line 293 "lscp.y"  #line 319 "lscp.y"
3586      { yyval.Char = '3'; }      { (yyval.Char) = 'p'; }
3587      break;      break;
3588    
3589    case 195:    case 195:
3590  #line 293 "lscp.y"  #line 319 "lscp.y"
3591      { yyval.Char = '4'; }      { (yyval.Char) = 'q'; }
3592      break;      break;
3593    
3594    case 196:    case 196:
3595  #line 293 "lscp.y"  #line 319 "lscp.y"
3596      { yyval.Char = '5'; }      { (yyval.Char) = 'r'; }
3597      break;      break;
3598    
3599    case 197:    case 197:
3600  #line 293 "lscp.y"  #line 319 "lscp.y"
3601      { yyval.Char = '6'; }      { (yyval.Char) = 's'; }
3602      break;      break;
3603    
3604    case 198:    case 198:
3605  #line 293 "lscp.y"  #line 319 "lscp.y"
3606      { yyval.Char = '7'; }      { (yyval.Char) = 't'; }
3607      break;      break;
3608    
3609    case 199:    case 199:
3610  #line 293 "lscp.y"  #line 319 "lscp.y"
3611      { yyval.Char = '8'; }      { (yyval.Char) = 'u'; }
3612      break;      break;
3613    
3614    case 200:    case 200:
3615  #line 293 "lscp.y"  #line 319 "lscp.y"
3616      { yyval.Char = '9'; }      { (yyval.Char) = 'v'; }
3617      break;      break;
3618    
3619    case 201:    case 201:
3620  #line 294 "lscp.y"  #line 319 "lscp.y"
3621      { yyval.Char = '!'; }      { (yyval.Char) = 'w'; }
3622      break;      break;
3623    
3624    case 202:    case 202:
3625  #line 294 "lscp.y"  #line 319 "lscp.y"
3626      { yyval.Char = '#'; }      { (yyval.Char) = 'x'; }
3627      break;      break;
3628    
3629    case 203:    case 203:
3630  #line 294 "lscp.y"  #line 319 "lscp.y"
3631      { yyval.Char = '$'; }      { (yyval.Char) = 'y'; }
3632      break;      break;
3633    
3634    case 204:    case 204:
3635  #line 294 "lscp.y"  #line 319 "lscp.y"
3636      { yyval.Char = '%'; }      { (yyval.Char) = 'z'; }
3637      break;      break;
3638    
3639    case 205:    case 205:
3640  #line 294 "lscp.y"  #line 320 "lscp.y"
3641      { yyval.Char = '&'; }      { (yyval.Char) = '0'; }
3642      break;      break;
3643    
3644    case 206:    case 206:
3645  #line 294 "lscp.y"  #line 320 "lscp.y"
3646      { yyval.Char = '('; }      { (yyval.Char) = '1'; }
3647      break;      break;
3648    
3649    case 207:    case 207:
3650  #line 294 "lscp.y"  #line 320 "lscp.y"
3651      { yyval.Char = ')'; }      { (yyval.Char) = '2'; }
3652      break;      break;
3653    
3654    case 208:    case 208:
3655  #line 294 "lscp.y"  #line 320 "lscp.y"
3656      { yyval.Char = '*'; }      { (yyval.Char) = '3'; }
3657      break;      break;
3658    
3659    case 209:    case 209:
3660  #line 294 "lscp.y"  #line 320 "lscp.y"
3661      { yyval.Char = '+'; }      { (yyval.Char) = '4'; }
3662      break;      break;
3663    
3664    case 210:    case 210:
3665  #line 294 "lscp.y"  #line 320 "lscp.y"
3666      { yyval.Char = '-'; }      { (yyval.Char) = '5'; }
3667      break;      break;
3668    
3669    case 211:    case 211:
3670  #line 294 "lscp.y"  #line 320 "lscp.y"
3671      { yyval.Char = '.'; }      { (yyval.Char) = '6'; }
3672      break;      break;
3673    
3674    case 212:    case 212:
3675  #line 294 "lscp.y"  #line 320 "lscp.y"
3676      { yyval.Char = '/'; }      { (yyval.Char) = '7'; }
3677      break;      break;
3678    
3679    case 213:    case 213:
3680  #line 295 "lscp.y"  #line 320 "lscp.y"
3681      { yyval.Char = ':'; }      { (yyval.Char) = '8'; }
3682      break;      break;
3683    
3684    case 214:    case 214:
3685  #line 295 "lscp.y"  #line 320 "lscp.y"
3686      { yyval.Char = ';'; }      { (yyval.Char) = '9'; }
3687      break;      break;
3688    
3689    case 215:    case 215:
3690  #line 295 "lscp.y"  #line 321 "lscp.y"
3691      { yyval.Char = '<'; }      { (yyval.Char) = '!'; }
3692      break;      break;
3693    
3694    case 216:    case 216:
3695  #line 295 "lscp.y"  #line 321 "lscp.y"
3696      { yyval.Char = '='; }      { (yyval.Char) = '#'; }
3697      break;      break;
3698    
3699    case 217:    case 217:
3700  #line 295 "lscp.y"  #line 321 "lscp.y"
3701      { yyval.Char = '>'; }      { (yyval.Char) = '$'; }
3702      break;      break;
3703    
3704    case 218:    case 218:
3705  #line 295 "lscp.y"  #line 321 "lscp.y"
3706      { yyval.Char = '?'; }      { (yyval.Char) = '%'; }
3707      break;      break;
3708    
3709    case 219:    case 219:
3710  #line 295 "lscp.y"  #line 321 "lscp.y"
3711      { yyval.Char = '@'; }      { (yyval.Char) = '&'; }
3712      break;      break;
3713    
3714    case 220:    case 220:
3715  #line 296 "lscp.y"  #line 321 "lscp.y"
3716      { yyval.Char = '['; }      { (yyval.Char) = '('; }
3717      break;      break;
3718    
3719    case 221:    case 221:
3720  #line 296 "lscp.y"  #line 321 "lscp.y"
3721      { yyval.Char = '\\'; }      { (yyval.Char) = ')'; }
3722      break;      break;
3723    
3724    case 222:    case 222:
3725  #line 296 "lscp.y"  #line 321 "lscp.y"
3726      { yyval.Char = ']'; }      { (yyval.Char) = '*'; }
3727      break;      break;
3728    
3729    case 223:    case 223:
3730  #line 296 "lscp.y"  #line 321 "lscp.y"
3731      { yyval.Char = '^'; }      { (yyval.Char) = '+'; }
3732      break;      break;
3733    
3734    case 224:    case 224:
3735  #line 296 "lscp.y"  #line 321 "lscp.y"
3736      { yyval.Char = '_'; }      { (yyval.Char) = '-'; }
3737      break;      break;
3738    
3739    case 225:    case 225:
3740  #line 297 "lscp.y"  #line 321 "lscp.y"
3741      { yyval.Char = '{'; }      { (yyval.Char) = '.'; }
3742      break;      break;
3743    
3744    case 226:    case 226:
3745  #line 297 "lscp.y"  #line 321 "lscp.y"
3746      { yyval.Char = '|'; }      { (yyval.Char) = ','; }
3747      break;      break;
3748    
3749    case 227:    case 227:
3750  #line 297 "lscp.y"  #line 321 "lscp.y"
3751      { yyval.Char = '}'; }      { (yyval.Char) = '/'; }
3752      break;      break;
3753    
3754    case 228:    case 228:
3755  #line 297 "lscp.y"  #line 322 "lscp.y"
3756      { yyval.Char = '~'; }      { (yyval.Char) = ':'; }
3757      break;      break;
3758    
3759    case 229:    case 229:
3760  #line 298 "lscp.y"  #line 322 "lscp.y"
3761      { yyval.Char = '\200'; }      { (yyval.Char) = ';'; }
3762      break;      break;
3763    
3764    case 230:    case 230:
3765  #line 298 "lscp.y"  #line 322 "lscp.y"
3766      { yyval.Char = '\201'; }      { (yyval.Char) = '<'; }
3767      break;      break;
3768    
3769    case 231:    case 231:
3770  #line 298 "lscp.y"  #line 322 "lscp.y"
3771      { yyval.Char = '\202'; }      { (yyval.Char) = '='; }
3772      break;      break;
3773    
3774    case 232:    case 232:
3775  #line 299 "lscp.y"  #line 322 "lscp.y"
3776      { yyval.Char = '\203'; }      { (yyval.Char) = '>'; }
3777      break;      break;
3778    
3779    case 233:    case 233:
3780  #line 299 "lscp.y"  #line 322 "lscp.y"
3781      { yyval.Char = '\204'; }      { (yyval.Char) = '?'; }
3782      break;      break;
3783    
3784    case 234:    case 234:
3785  #line 299 "lscp.y"  #line 322 "lscp.y"
3786      { yyval.Char = '\205'; }      { (yyval.Char) = '@'; }
3787      break;      break;
3788    
3789    case 235:    case 235:
3790  #line 300 "lscp.y"  #line 323 "lscp.y"
3791      { yyval.Char = '\206'; }      { (yyval.Char) = '['; }
3792      break;      break;
3793    
3794    case 236:    case 236:
3795  #line 300 "lscp.y"  #line 323 "lscp.y"
3796      { yyval.Char = '\207'; }      { (yyval.Char) = '\\'; }
3797      break;      break;
3798    
3799    case 237:    case 237:
3800  #line 300 "lscp.y"  #line 323 "lscp.y"
3801      { yyval.Char = '\210'; }      { (yyval.Char) = ']'; }
3802      break;      break;
3803    
3804    case 238:    case 238:
3805  #line 301 "lscp.y"  #line 323 "lscp.y"
3806      { yyval.Char = '\211'; }      { (yyval.Char) = '^'; }
3807      break;      break;
3808    
3809    case 239:    case 239:
3810  #line 301 "lscp.y"  #line 323 "lscp.y"
3811      { yyval.Char = '\212'; }      { (yyval.Char) = '_'; }
3812      break;      break;
3813    
3814    case 240:    case 240:
3815  #line 301 "lscp.y"  #line 324 "lscp.y"
3816      { yyval.Char = '\213'; }      { (yyval.Char) = '{'; }
3817      break;      break;
3818    
3819    case 241:    case 241:
3820  #line 302 "lscp.y"  #line 324 "lscp.y"
3821      { yyval.Char = '\214'; }      { (yyval.Char) = '|'; }
3822      break;      break;
3823    
3824    case 242:    case 242:
3825  #line 302 "lscp.y"  #line 324 "lscp.y"
3826      { yyval.Char = '\215'; }      { (yyval.Char) = '}'; }
3827      break;      break;
3828    
3829    case 243:    case 243:
3830  #line 302 "lscp.y"  #line 324 "lscp.y"
3831      { yyval.Char = '\216'; }      { (yyval.Char) = '~'; }
3832      break;      break;
3833    
3834    case 244:    case 244:
3835  #line 303 "lscp.y"  #line 325 "lscp.y"
3836      { yyval.Char = '\217'; }      { (yyval.Char) = '\200'; }
3837      break;      break;
3838    
3839    case 245:    case 245:
3840  #line 303 "lscp.y"  #line 325 "lscp.y"
3841      { yyval.Char = '\220'; }      { (yyval.Char) = '\201'; }
3842      break;      break;
3843    
3844    case 246:    case 246:
3845  #line 303 "lscp.y"  #line 325 "lscp.y"
3846      { yyval.Char = '\221'; }      { (yyval.Char) = '\202'; }
3847      break;      break;
3848    
3849    case 247:    case 247:
3850  #line 304 "lscp.y"  #line 326 "lscp.y"
3851      { yyval.Char = '\222'; }      { (yyval.Char) = '\203'; }
3852      break;      break;
3853    
3854    case 248:    case 248:
3855  #line 304 "lscp.y"  #line 326 "lscp.y"
3856      { yyval.Char = '\223'; }      { (yyval.Char) = '\204'; }
3857      break;      break;
3858    
3859    case 249:    case 249:
3860  #line 304 "lscp.y"  #line 326 "lscp.y"
3861      { yyval.Char = '\224'; }      { (yyval.Char) = '\205'; }
3862      break;      break;
3863    
3864    case 250:    case 250:
3865  #line 305 "lscp.y"  #line 327 "lscp.y"
3866      { yyval.Char = '\225'; }      { (yyval.Char) = '\206'; }
3867      break;      break;
3868    
3869    case 251:    case 251:
3870  #line 305 "lscp.y"  #line 327 "lscp.y"
3871      { yyval.Char = '\226'; }      { (yyval.Char) = '\207'; }
3872      break;      break;
3873    
3874    case 252:    case 252:
3875  #line 305 "lscp.y"  #line 327 "lscp.y"
3876      { yyval.Char = '\227'; }      { (yyval.Char) = '\210'; }
3877      break;      break;
3878    
3879    case 253:    case 253:
3880  #line 306 "lscp.y"  #line 328 "lscp.y"
3881      { yyval.Char = '\230'; }      { (yyval.Char) = '\211'; }
3882      break;      break;
3883    
3884    case 254:    case 254:
3885  #line 306 "lscp.y"  #line 328 "lscp.y"
3886      { yyval.Char = '\231'; }      { (yyval.Char) = '\212'; }
3887      break;      break;
3888    
3889    case 255:    case 255:
3890  #line 306 "lscp.y"  #line 328 "lscp.y"
3891      { yyval.Char = '\232'; }      { (yyval.Char) = '\213'; }
3892      break;      break;
3893    
3894    case 256:    case 256:
3895  #line 307 "lscp.y"  #line 329 "lscp.y"
3896      { yyval.Char = '\233'; }      { (yyval.Char) = '\214'; }
3897      break;      break;
3898    
3899    case 257:    case 257:
3900  #line 307 "lscp.y"  #line 329 "lscp.y"
3901      { yyval.Char = '\234'; }      { (yyval.Char) = '\215'; }
3902      break;      break;
3903    
3904    case 258:    case 258:
3905  #line 307 "lscp.y"  #line 329 "lscp.y"
3906      { yyval.Char = '\235'; }      { (yyval.Char) = '\216'; }
3907      break;      break;
3908    
3909    case 259:    case 259:
3910  #line 308 "lscp.y"  #line 330 "lscp.y"
3911      { yyval.Char = '\236'; }      { (yyval.Char) = '\217'; }
3912      break;      break;
3913    
3914    case 260:    case 260:
3915  #line 308 "lscp.y"  #line 330 "lscp.y"
3916      { yyval.Char = '\237'; }      { (yyval.Char) = '\220'; }
3917      break;      break;
3918    
3919    case 261:    case 261:
3920  #line 308 "lscp.y"  #line 330 "lscp.y"
3921      { yyval.Char = '\240'; }      { (yyval.Char) = '\221'; }
3922      break;      break;
3923    
3924    case 262:    case 262:
3925  #line 309 "lscp.y"  #line 331 "lscp.y"
3926      { yyval.Char = '\241'; }      { (yyval.Char) = '\222'; }
3927      break;      break;
3928    
3929    case 263:    case 263:
3930  #line 309 "lscp.y"  #line 331 "lscp.y"
3931      { yyval.Char = '\242'; }      { (yyval.Char) = '\223'; }
3932      break;      break;
3933    
3934    case 264:    case 264:
3935  #line 309 "lscp.y"  #line 331 "lscp.y"
3936      { yyval.Char = '\243'; }      { (yyval.Char) = '\224'; }
3937      break;      break;
3938    
3939    case 265:    case 265:
3940  #line 310 "lscp.y"  #line 332 "lscp.y"
3941      { yyval.Char = '\244'; }      { (yyval.Char) = '\225'; }
3942      break;      break;
3943    
3944    case 266:    case 266:
3945  #line 310 "lscp.y"  #line 332 "lscp.y"
3946      { yyval.Char = '\245'; }      { (yyval.Char) = '\226'; }
3947      break;      break;
3948    
3949    case 267:    case 267:
3950  #line 310 "lscp.y"  #line 332 "lscp.y"
3951      { yyval.Char = '\246'; }      { (yyval.Char) = '\227'; }
3952      break;      break;
3953    
3954    case 268:    case 268:
3955  #line 311 "lscp.y"  #line 333 "lscp.y"
3956      { yyval.Char = '\247'; }      { (yyval.Char) = '\230'; }
3957      break;      break;
3958    
3959    case 269:    case 269:
3960  #line 311 "lscp.y"  #line 333 "lscp.y"
3961      { yyval.Char = '\250'; }      { (yyval.Char) = '\231'; }
3962      break;      break;
3963    
3964    case 270:    case 270:
3965  #line 311 "lscp.y"  #line 333 "lscp.y"
3966      { yyval.Char = '\251'; }      { (yyval.Char) = '\232'; }
3967      break;      break;
3968    
3969    case 271:    case 271:
3970  #line 312 "lscp.y"  #line 334 "lscp.y"
3971      { yyval.Char = '\252'; }      { (yyval.Char) = '\233'; }
3972      break;      break;
3973    
3974    case 272:    case 272:
3975  #line 312 "lscp.y"  #line 334 "lscp.y"
3976      { yyval.Char = '\253'; }      { (yyval.Char) = '\234'; }
3977      break;      break;
3978    
3979    case 273:    case 273:
3980  #line 312 "lscp.y"  #line 334 "lscp.y"
3981      { yyval.Char = '\254'; }      { (yyval.Char) = '\235'; }
3982      break;      break;
3983    
3984    case 274:    case 274:
3985  #line 313 "lscp.y"  #line 335 "lscp.y"
3986      { yyval.Char = '\255'; }      { (yyval.Char) = '\236'; }
3987      break;      break;
3988    
3989    case 275:    case 275:
3990  #line 313 "lscp.y"  #line 335 "lscp.y"
3991      { yyval.Char = '\256'; }      { (yyval.Char) = '\237'; }
3992      break;      break;
3993    
3994    case 276:    case 276:
3995  #line 313 "lscp.y"  #line 335 "lscp.y"
3996      { yyval.Char = '\257'; }      { (yyval.Char) = '\240'; }
3997      break;      break;
3998    
3999    case 277:    case 277:
4000  #line 314 "lscp.y"  #line 336 "lscp.y"
4001      { yyval.Char = '\260'; }      { (yyval.Char) = '\241'; }
4002      break;      break;
4003    
4004    case 278:    case 278:
4005  #line 314 "lscp.y"  #line 336 "lscp.y"
4006      { yyval.Char = '\261'; }      { (yyval.Char) = '\242'; }
4007      break;      break;
4008    
4009    case 279:    case 279:
4010  #line 314 "lscp.y"  #line 336 "lscp.y"
4011      { yyval.Char = '\262'; }      { (yyval.Char) = '\243'; }
4012      break;      break;
4013    
4014    case 280:    case 280:
4015  #line 315 "lscp.y"  #line 337 "lscp.y"
4016      { yyval.Char = '\263'; }      { (yyval.Char) = '\244'; }
4017      break;      break;
4018    
4019    case 281:    case 281:
4020  #line 315 "lscp.y"  #line 337 "lscp.y"
4021      { yyval.Char = '\264'; }      { (yyval.Char) = '\245'; }
4022      break;      break;
4023    
4024    case 282:    case 282:
4025  #line 315 "lscp.y"  #line 337 "lscp.y"
4026      { yyval.Char = '\265'; }      { (yyval.Char) = '\246'; }
4027      break;      break;
4028    
4029    case 283:    case 283:
4030  #line 316 "lscp.y"  #line 338 "lscp.y"
4031      { yyval.Char = '\266'; }      { (yyval.Char) = '\247'; }
4032      break;      break;
4033    
4034    case 284:    case 284:
4035  #line 316 "lscp.y"  #line 338 "lscp.y"
4036      { yyval.Char = '\267'; }      { (yyval.Char) = '\250'; }
4037      break;      break;
4038    
4039    case 285:    case 285:
4040  #line 316 "lscp.y"  #line 338 "lscp.y"
4041      { yyval.Char = '\270'; }      { (yyval.Char) = '\251'; }
4042      break;      break;
4043    
4044    case 286:    case 286:
4045  #line 317 "lscp.y"  #line 339 "lscp.y"
4046      { yyval.Char = '\271'; }      { (yyval.Char) = '\252'; }
4047      break;      break;
4048    
4049    case 287:    case 287:
4050  #line 317 "lscp.y"  #line 339 "lscp.y"
4051      { yyval.Char = '\272'; }      { (yyval.Char) = '\253'; }
4052      break;      break;
4053    
4054    case 288:    case 288:
4055  #line 317 "lscp.y"  #line 339 "lscp.y"
4056      { yyval.Char = '\273'; }      { (yyval.Char) = '\254'; }
4057      break;      break;
4058    
4059    case 289:    case 289:
4060  #line 318 "lscp.y"  #line 340 "lscp.y"
4061      { yyval.Char = '\274'; }      { (yyval.Char) = '\255'; }
4062      break;      break;
4063    
4064    case 290:    case 290:
4065  #line 318 "lscp.y"  #line 340 "lscp.y"
4066      { yyval.Char = '\275'; }      { (yyval.Char) = '\256'; }
4067      break;      break;
4068    
4069    case 291:    case 291:
4070  #line 318 "lscp.y"  #line 340 "lscp.y"
4071      { yyval.Char = '\276'; }      { (yyval.Char) = '\257'; }
4072      break;      break;
4073    
4074    case 292:    case 292:
4075  #line 319 "lscp.y"  #line 341 "lscp.y"
4076      { yyval.Char = '\277'; }      { (yyval.Char) = '\260'; }
4077      break;      break;
4078    
4079    case 293:    case 293:
4080  #line 319 "lscp.y"  #line 341 "lscp.y"
4081      { yyval.Char = '\300'; }      { (yyval.Char) = '\261'; }
4082      break;      break;
4083    
4084    case 294:    case 294:
4085  #line 319 "lscp.y"  #line 341 "lscp.y"
4086      { yyval.Char = '\301'; }      { (yyval.Char) = '\262'; }
4087      break;      break;
4088    
4089    case 295:    case 295:
4090  #line 320 "lscp.y"  #line 342 "lscp.y"
4091      { yyval.Char = '\302'; }      { (yyval.Char) = '\263'; }
4092      break;      break;
4093    
4094    case 296:    case 296:
4095  #line 320 "lscp.y"  #line 342 "lscp.y"
4096      { yyval.Char = '\303'; }      { (yyval.Char) = '\264'; }
4097      break;      break;
4098    
4099    case 297:    case 297:
4100  #line 320 "lscp.y"  #line 342 "lscp.y"
4101      { yyval.Char = '\304'; }      { (yyval.Char) = '\265'; }
4102      break;      break;
4103    
4104    case 298:    case 298:
4105  #line 321 "lscp.y"  #line 343 "lscp.y"
4106      { yyval.Char = '\305'; }      { (yyval.Char) = '\266'; }
4107      break;      break;
4108    
4109    case 299:    case 299:
4110  #line 321 "lscp.y"  #line 343 "lscp.y"
4111      { yyval.Char = '\306'; }      { (yyval.Char) = '\267'; }
4112      break;      break;
4113    
4114    case 300:    case 300:
4115  #line 321 "lscp.y"  #line 343 "lscp.y"
4116      { yyval.Char = '\307'; }      { (yyval.Char) = '\270'; }
4117      break;      break;
4118    
4119    case 301:    case 301:
4120  #line 322 "lscp.y"  #line 344 "lscp.y"
4121      { yyval.Char = '\310'; }      { (yyval.Char) = '\271'; }
4122      break;      break;
4123    
4124    case 302:    case 302:
4125  #line 322 "lscp.y"  #line 344 "lscp.y"
4126      { yyval.Char = '\311'; }      { (yyval.Char) = '\272'; }
4127      break;      break;
4128    
4129    case 303:    case 303:
4130  #line 322 "lscp.y"  #line 344 "lscp.y"
4131      { yyval.Char = '\312'; }      { (yyval.Char) = '\273'; }
4132      break;      break;
4133    
4134    case 304:    case 304:
4135  #line 323 "lscp.y"  #line 345 "lscp.y"
4136      { yyval.Char = '\313'; }      { (yyval.Char) = '\274'; }
4137      break;      break;
4138    
4139    case 305:    case 305:
4140  #line 323 "lscp.y"  #line 345 "lscp.y"
4141      { yyval.Char = '\314'; }      { (yyval.Char) = '\275'; }
4142      break;      break;
4143    
4144    case 306:    case 306:
4145  #line 323 "lscp.y"  #line 345 "lscp.y"
4146      { yyval.Char = '\315'; }      { (yyval.Char) = '\276'; }
4147      break;      break;
4148    
4149    case 307:    case 307:
4150  #line 324 "lscp.y"  #line 346 "lscp.y"
4151      { yyval.Char = '\316'; }      { (yyval.Char) = '\277'; }
4152      break;      break;
4153    
4154    case 308:    case 308:
4155  #line 324 "lscp.y"  #line 346 "lscp.y"
4156      { yyval.Char = '\317'; }      { (yyval.Char) = '\300'; }
4157      break;      break;
4158    
4159    case 309:    case 309:
4160  #line 324 "lscp.y"  #line 346 "lscp.y"
4161      { yyval.Char = '\320'; }      { (yyval.Char) = '\301'; }
4162      break;      break;
4163    
4164    case 310:    case 310:
4165  #line 325 "lscp.y"  #line 347 "lscp.y"
4166      { yyval.Char = '\321'; }      { (yyval.Char) = '\302'; }
4167      break;      break;
4168    
4169    case 311:    case 311:
4170  #line 325 "lscp.y"  #line 347 "lscp.y"
4171      { yyval.Char = '\322'; }      { (yyval.Char) = '\303'; }
4172      break;      break;
4173    
4174    case 312:    case 312:
4175  #line 325 "lscp.y"  #line 347 "lscp.y"
4176      { yyval.Char = '\323'; }      { (yyval.Char) = '\304'; }
4177      break;      break;
4178    
4179    case 313:    case 313:
4180  #line 326 "lscp.y"  #line 348 "lscp.y"
4181      { yyval.Char = '\324'; }      { (yyval.Char) = '\305'; }
4182      break;      break;
4183    
4184    case 314:    case 314:
4185  #line 326 "lscp.y"  #line 348 "lscp.y"
4186      { yyval.Char = '\325'; }      { (yyval.Char) = '\306'; }
4187      break;      break;
4188    
4189    case 315:    case 315:
4190  #line 326 "lscp.y"  #line 348 "lscp.y"
4191      { yyval.Char = '\326'; }      { (yyval.Char) = '\307'; }
4192      break;      break;
4193    
4194    case 316:    case 316:
4195  #line 327 "lscp.y"  #line 349 "lscp.y"
4196      { yyval.Char = '\327'; }      { (yyval.Char) = '\310'; }
4197      break;      break;
4198    
4199    case 317:    case 317:
4200  #line 327 "lscp.y"  #line 349 "lscp.y"
4201      { yyval.Char = '\330'; }      { (yyval.Char) = '\311'; }
4202      break;      break;
4203    
4204    case 318:    case 318:
4205  #line 327 "lscp.y"  #line 349 "lscp.y"
4206      { yyval.Char = '\331'; }      { (yyval.Char) = '\312'; }
4207      break;      break;
4208    
4209    case 319:    case 319:
4210  #line 328 "lscp.y"  #line 350 "lscp.y"
4211      { yyval.Char = '\332'; }      { (yyval.Char) = '\313'; }
4212      break;      break;
4213    
4214    case 320:    case 320:
4215  #line 328 "lscp.y"  #line 350 "lscp.y"
4216      { yyval.Char = '\333'; }      { (yyval.Char) = '\314'; }
4217      break;      break;
4218    
4219    case 321:    case 321:
4220  #line 328 "lscp.y"  #line 350 "lscp.y"
4221      { yyval.Char = '\334'; }      { (yyval.Char) = '\315'; }
4222      break;      break;
4223    
4224    case 322:    case 322:
4225  #line 329 "lscp.y"  #line 351 "lscp.y"
4226      { yyval.Char = '\335'; }      { (yyval.Char) = '\316'; }
4227      break;      break;
4228    
4229    case 323:    case 323:
4230  #line 329 "lscp.y"  #line 351 "lscp.y"
4231      { yyval.Char = '\336'; }      { (yyval.Char) = '\317'; }
4232      break;      break;
4233    
4234    case 324:    case 324:
4235  #line 329 "lscp.y"  #line 351 "lscp.y"
4236      { yyval.Char = '\337'; }      { (yyval.Char) = '\320'; }
4237      break;      break;
4238    
4239    case 325:    case 325:
4240  #line 330 "lscp.y"  #line 352 "lscp.y"
4241      { yyval.Char = '\340'; }      { (yyval.Char) = '\321'; }
4242      break;      break;
4243    
4244    case 326:    case 326:
4245  #line 330 "lscp.y"  #line 352 "lscp.y"
4246      { yyval.Char = '\341'; }      { (yyval.Char) = '\322'; }
4247      break;      break;
4248    
4249    case 327:    case 327:
4250  #line 330 "lscp.y"  #line 352 "lscp.y"
4251      { yyval.Char = '\342'; }      { (yyval.Char) = '\323'; }
4252      break;      break;
4253    
4254    case 328:    case 328:
4255  #line 331 "lscp.y"  #line 353 "lscp.y"
4256      { yyval.Char = '\343'; }      { (yyval.Char) = '\324'; }
4257      break;      break;
4258    
4259    case 329:    case 329:
4260  #line 331 "lscp.y"  #line 353 "lscp.y"
4261      { yyval.Char = '\344'; }      { (yyval.Char) = '\325'; }
4262      break;      break;
4263    
4264    case 330:    case 330:
4265  #line 331 "lscp.y"  #line 353 "lscp.y"
4266      { yyval.Char = '\345'; }      { (yyval.Char) = '\326'; }
4267      break;      break;
4268    
4269    case 331:    case 331:
4270  #line 332 "lscp.y"  #line 354 "lscp.y"
4271      { yyval.Char = '\346'; }      { (yyval.Char) = '\327'; }
4272      break;      break;
4273    
4274    case 332:    case 332:
4275  #line 332 "lscp.y"  #line 354 "lscp.y"
4276      { yyval.Char = '\347'; }      { (yyval.Char) = '\330'; }
4277      break;      break;
4278    
4279    case 333:    case 333:
4280  #line 332 "lscp.y"  #line 354 "lscp.y"
4281      { yyval.Char = '\350'; }      { (yyval.Char) = '\331'; }
4282      break;      break;
4283    
4284    case 334:    case 334:
4285  #line 333 "lscp.y"  #line 355 "lscp.y"
4286      { yyval.Char = '\351'; }      { (yyval.Char) = '\332'; }
4287      break;      break;
4288    
4289    case 335:    case 335:
4290  #line 333 "lscp.y"  #line 355 "lscp.y"
4291      { yyval.Char = '\352'; }      { (yyval.Char) = '\333'; }
4292      break;      break;
4293    
4294    case 336:    case 336:
4295  #line 333 "lscp.y"  #line 355 "lscp.y"
4296      { yyval.Char = '\353'; }      { (yyval.Char) = '\334'; }
4297      break;      break;
4298    
4299    case 337:    case 337:
4300  #line 334 "lscp.y"  #line 356 "lscp.y"
4301      { yyval.Char = '\354'; }      { (yyval.Char) = '\335'; }
4302      break;      break;
4303    
4304    case 338:    case 338:
4305  #line 334 "lscp.y"  #line 356 "lscp.y"
4306      { yyval.Char = '\355'; }      { (yyval.Char) = '\336'; }
4307      break;      break;
4308    
4309    case 339:    case 339:
4310  #line 334 "lscp.y"  #line 356 "lscp.y"
4311      { yyval.Char = '\356'; }      { (yyval.Char) = '\337'; }
4312      break;      break;
4313    
4314    case 340:    case 340:
4315  #line 335 "lscp.y"  #line 357 "lscp.y"
4316      { yyval.Char = '\357'; }      { (yyval.Char) = '\340'; }
4317      break;      break;
4318    
4319    case 341:    case 341:
4320  #line 335 "lscp.y"  #line 357 "lscp.y"
4321      { yyval.Char = '\360'; }      { (yyval.Char) = '\341'; }
4322      break;      break;
4323    
4324    case 342:    case 342:
4325  #line 335 "lscp.y"  #line 357 "lscp.y"
4326      { yyval.Char = '\361'; }      { (yyval.Char) = '\342'; }
4327      break;      break;
4328    
4329    case 343:    case 343:
4330  #line 336 "lscp.y"  #line 358 "lscp.y"
4331      { yyval.Char = '\362'; }      { (yyval.Char) = '\343'; }
4332      break;      break;
4333    
4334    case 344:    case 344:
4335  #line 336 "lscp.y"  #line 358 "lscp.y"
4336      { yyval.Char = '\363'; }      { (yyval.Char) = '\344'; }
4337      break;      break;
4338    
4339    case 345:    case 345:
4340  #line 336 "lscp.y"  #line 358 "lscp.y"
4341      { yyval.Char = '\364'; }      { (yyval.Char) = '\345'; }
4342      break;      break;
4343    
4344    case 346:    case 346:
4345  #line 337 "lscp.y"  #line 359 "lscp.y"
4346      { yyval.Char = '\365'; }      { (yyval.Char) = '\346'; }
4347      break;      break;
4348    
4349    case 347:    case 347:
4350  #line 337 "lscp.y"  #line 359 "lscp.y"
4351      { yyval.Char = '\366'; }      { (yyval.Char) = '\347'; }
4352      break;      break;
4353    
4354    case 348:    case 348:
4355  #line 337 "lscp.y"  #line 359 "lscp.y"
4356      { yyval.Char = '\367'; }      { (yyval.Char) = '\350'; }
4357      break;      break;
4358    
4359    case 349:    case 349:
4360  #line 338 "lscp.y"  #line 360 "lscp.y"
4361      { yyval.Char = '\370'; }      { (yyval.Char) = '\351'; }
4362      break;      break;
4363    
4364    case 350:    case 350:
4365  #line 338 "lscp.y"  #line 360 "lscp.y"
4366      { yyval.Char = '\371'; }      { (yyval.Char) = '\352'; }
4367      break;      break;
4368    
4369    case 351:    case 351:
4370  #line 338 "lscp.y"  #line 360 "lscp.y"
4371      { yyval.Char = '\372'; }      { (yyval.Char) = '\353'; }
4372      break;      break;
4373    
4374    case 352:    case 352:
4375  #line 339 "lscp.y"  #line 361 "lscp.y"
4376      { yyval.Char = '\373'; }      { (yyval.Char) = '\354'; }
4377      break;      break;
4378    
4379    case 353:    case 353:
4380  #line 339 "lscp.y"  #line 361 "lscp.y"
4381      { yyval.Char = '\374'; }      { (yyval.Char) = '\355'; }
4382      break;      break;
4383    
4384    case 354:    case 354:
4385  #line 339 "lscp.y"  #line 361 "lscp.y"
4386      { yyval.Char = '\375'; }      { (yyval.Char) = '\356'; }
4387      break;      break;
4388    
4389    case 355:    case 355:
4390  #line 340 "lscp.y"  #line 362 "lscp.y"
4391      { yyval.Char = '\376'; }      { (yyval.Char) = '\357'; }
4392      break;      break;
4393    
4394    case 356:    case 356:
4395  #line 340 "lscp.y"  #line 362 "lscp.y"
4396      { yyval.Char = '\377'; }      { (yyval.Char) = '\360'; }
4397      break;      break;
4398    
4399    case 357:    case 357:
4400  #line 343 "lscp.y"  #line 362 "lscp.y"
4401      { yyval.String = " ";      }      { (yyval.Char) = '\361'; }
4402        break;
4403    
4404      case 358:
4405    #line 363 "lscp.y"
4406        { (yyval.Char) = '\362'; }
4407      break;      break;
4408    
4409    case 359:    case 359:
4410  #line 345 "lscp.y"  #line 363 "lscp.y"
4411      { yyval.String = yyvsp[-1].String + " "; }      { (yyval.Char) = '\363'; }
4412      break;      break;
4413    
4414    case 360:    case 360:
4415  #line 346 "lscp.y"  #line 363 "lscp.y"
4416      { yyval.String = yyvsp[-1].String + yyvsp[0].String;  }      { (yyval.Char) = '\364'; }
4417      break;      break;
4418    
4419    case 361:    case 361:
4420  #line 349 "lscp.y"  #line 364 "lscp.y"
4421      { yyval.String = yyvsp[-1].String; }      { (yyval.Char) = '\365'; }
4422      break;      break;
4423    
4424    case 362:    case 362:
4425  #line 350 "lscp.y"  #line 364 "lscp.y"
4426      { yyval.String = yyvsp[-1].String; }      { (yyval.Char) = '\366'; }
4427        break;
4428    
4429      case 363:
4430    #line 364 "lscp.y"
4431        { (yyval.Char) = '\367'; }
4432      break;      break;
4433    
4434      case 364:
4435    #line 365 "lscp.y"
4436        { (yyval.Char) = '\370'; }
4437        break;
4438    
4439      case 365:
4440    #line 365 "lscp.y"
4441        { (yyval.Char) = '\371'; }
4442        break;
4443    
4444      case 366:
4445    #line 365 "lscp.y"
4446        { (yyval.Char) = '\372'; }
4447        break;
4448    
4449      case 367:
4450    #line 366 "lscp.y"
4451        { (yyval.Char) = '\373'; }
4452        break;
4453    
4454      case 368:
4455    #line 366 "lscp.y"
4456        { (yyval.Char) = '\374'; }
4457        break;
4458    
4459      case 369:
4460    #line 366 "lscp.y"
4461        { (yyval.Char) = '\375'; }
4462        break;
4463    
4464      case 370:
4465    #line 367 "lscp.y"
4466        { (yyval.Char) = '\376'; }
4467        break;
4468    
4469      case 371:
4470    #line 367 "lscp.y"
4471        { (yyval.Char) = '\377'; }
4472        break;
4473    
4474      case 372:
4475    #line 370 "lscp.y"
4476        { (yyval.String) = " ";      }
4477        break;
4478    
4479      case 374:
4480    #line 372 "lscp.y"
4481        { (yyval.String) = (yyvsp[-1].String) + " "; }
4482        break;
4483    
4484      case 375:
4485    #line 373 "lscp.y"
4486        { (yyval.String) = (yyvsp[-1].String) + (yyvsp[0].String);  }
4487        break;
4488    
4489      case 376:
4490    #line 376 "lscp.y"
4491        { (yyval.String) = (yyvsp[-1].String); }
4492        break;
4493    
4494      case 377:
4495    #line 377 "lscp.y"
4496        { (yyval.String) = (yyvsp[-1].String); }
4497        break;
4498    
4499    
4500          default: break;
4501      }      }
4502    
4503  /* Line 999 of yacc.c.  */  /* Line 1126 of yacc.c.  */
4504  #line 4230 "y.tab.c"  #line 4505 "y.tab.c"
4505    
4506    yyvsp -= yylen;    yyvsp -= yylen;
4507    yyssp -= yylen;    yyssp -= yylen;
# Line 4265  yyerrlab: Line 4540  yyerrlab:
4540    
4541        if (YYPACT_NINF < yyn && yyn < YYLAST)        if (YYPACT_NINF < yyn && yyn < YYLAST)
4542          {          {
           YYSIZE_T yysize = 0;  
4543            int yytype = YYTRANSLATE (yychar);            int yytype = YYTRANSLATE (yychar);
4544            char *yymsg;            YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]);
4545            int yyx, yycount;            YYSIZE_T yysize = yysize0;
4546              YYSIZE_T yysize1;
4547              int yysize_overflow = 0;
4548              char *yymsg = 0;
4549    #         define YYERROR_VERBOSE_ARGS_MAXIMUM 5
4550              char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
4551              int yyx;
4552    
4553    #if 0
4554              /* This is so xgettext sees the translatable formats that are
4555                 constructed on the fly.  */
4556              YY_("syntax error, unexpected %s");
4557              YY_("syntax error, unexpected %s, expecting %s");
4558              YY_("syntax error, unexpected %s, expecting %s or %s");
4559              YY_("syntax error, unexpected %s, expecting %s or %s or %s");
4560              YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s");
4561    #endif
4562              char *yyfmt;
4563              char const *yyf;
4564              static char const yyunexpected[] = "syntax error, unexpected %s";
4565              static char const yyexpecting[] = ", expecting %s";
4566              static char const yyor[] = " or %s";
4567              char yyformat[sizeof yyunexpected
4568                            + sizeof yyexpecting - 1
4569                            + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2)
4570                               * (sizeof yyor - 1))];
4571              char const *yyprefix = yyexpecting;
4572    
           yycount = 0;  
4573            /* Start YYX at -YYN if negative to avoid negative indexes in            /* Start YYX at -YYN if negative to avoid negative indexes in
4574               YYCHECK.  */               YYCHECK.  */
4575            for (yyx = yyn < 0 ? -yyn : 0;            int yyxbegin = yyn < 0 ? -yyn : 0;
4576                 yyx < (int) (sizeof (yytname) / sizeof (char *)); yyx++)  
4577              /* Stay within bounds of both yycheck and yytname.  */
4578              int yychecklim = YYLAST - yyn;
4579              int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
4580              int yycount = 1;
4581    
4582              yyarg[0] = yytname[yytype];
4583              yyfmt = yystpcpy (yyformat, yyunexpected);
4584    
4585              for (yyx = yyxbegin; yyx < yyxend; ++yyx)
4586              if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)              if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
4587                yysize += yystrlen (yytname[yyx]) + 15, yycount++;                {
4588            yysize += yystrlen ("syntax error, unexpected ") + 1;                  if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
4589            yysize += yystrlen (yytname[yytype]);                    {
4590            yymsg = (char *) YYSTACK_ALLOC (yysize);                      yycount = 1;
4591            if (yymsg != 0)                      yysize = yysize0;
4592                        yyformat[sizeof yyunexpected - 1] = '\0';
4593                        break;
4594                      }
4595                    yyarg[yycount++] = yytname[yyx];
4596                    yysize1 = yysize + yytnamerr (0, yytname[yyx]);
4597                    yysize_overflow |= yysize1 < yysize;
4598                    yysize = yysize1;
4599                    yyfmt = yystpcpy (yyfmt, yyprefix);
4600                    yyprefix = yyor;
4601                  }
4602    
4603              yyf = YY_(yyformat);
4604              yysize1 = yysize + yystrlen (yyf);
4605              yysize_overflow |= yysize1 < yysize;
4606              yysize = yysize1;
4607    
4608              if (!yysize_overflow && yysize <= YYSTACK_ALLOC_MAXIMUM)
4609                yymsg = (char *) YYSTACK_ALLOC (yysize);
4610              if (yymsg)
4611              {              {
4612                char *yyp = yystpcpy (yymsg, "syntax error, unexpected ");                /* Avoid sprintf, as that infringes on the user's name space.
4613                yyp = yystpcpy (yyp, yytname[yytype]);                   Don't have undefined behavior even if the translation
4614                     produced a string with the wrong number of "%s"s.  */
4615                if (yycount < 5)                char *yyp = yymsg;
4616                  int yyi = 0;
4617                  while ((*yyp = *yyf))
4618                  {                  {
4619                    yycount = 0;                    if (*yyp == '%' && yyf[1] == 's' && yyi < yycount)
4620                    for (yyx = yyn < 0 ? -yyn : 0;                      {
4621                         yyx < (int) (sizeof (yytname) / sizeof (char *));                        yyp += yytnamerr (yyp, yyarg[yyi++]);
4622                         yyx++)                        yyf += 2;
4623                      if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)                      }
4624                        {                    else
4625                          const char *yyq = ! yycount ? ", expecting " : " or ";                      {
4626                          yyp = yystpcpy (yyp, yyq);                        yyp++;
4627                          yyp = yystpcpy (yyp, yytname[yyx]);                        yyf++;
4628                          yycount++;                      }
                       }  
4629                  }                  }
4630                yyerror (yymsg);                yyerror (yymsg);
4631                YYSTACK_FREE (yymsg);                YYSTACK_FREE (yymsg);
4632              }              }
4633            else            else
4634              yyerror ("syntax error; also virtual memory exhausted");              {
4635                  yyerror (YY_("syntax error"));
4636                  goto yyexhaustedlab;
4637                }
4638          }          }
4639        else        else
4640  #endif /* YYERROR_VERBOSE */  #endif /* YYERROR_VERBOSE */
4641          yyerror ("syntax error");          yyerror (YY_("syntax error"));
4642      }      }
4643    
4644    
4645    
4646    if (yyerrstatus == 3)    if (yyerrstatus == 3)
4647      {      {
4648        /* If just tried and failed to reuse lookahead token after an        /* If just tried and failed to reuse look-ahead token after an
4649           error, discard it.  */           error, discard it.  */
4650    
4651        /* Return failure if at end of input.  */        if (yychar <= YYEOF)
       if (yychar == YYEOF)  
4652          {          {
4653            /* Pop the error token.  */            /* Return failure if at end of input.  */
4654            YYPOPSTACK;            if (yychar == YYEOF)
4655            /* Pop the rest of the stack.  */              YYABORT;
           while (yyss < yyssp)  
             {  
               YYDSYMPRINTF ("Error: popping", yystos[*yyssp], yyvsp, yylsp);  
               yydestruct (yystos[*yyssp], yyvsp);  
               YYPOPSTACK;  
             }  
           YYABORT;  
4656          }          }
4657          else
4658        YYDSYMPRINTF ("Error: discarding", yytoken, &yylval, &yylloc);          {
4659        yydestruct (yytoken, &yylval);            yydestruct ("Error: discarding", yytoken, &yylval);
4660        yychar = YYEMPTY;            yychar = YYEMPTY;
4661            }
4662      }      }
4663    
4664    /* Else will try to reuse lookahead token after shifting the error    /* Else will try to reuse look-ahead token after shifting the error
4665       token.  */       token.  */
4666    goto yyerrlab1;    goto yyerrlab1;
4667    
4668    
4669  /*----------------------------------------------------.  /*---------------------------------------------------.
4670  | yyerrlab1 -- error raised explicitly by an action.  |  | yyerrorlab -- error raised explicitly by YYERROR.  |
4671  `----------------------------------------------------*/  `---------------------------------------------------*/
4672    yyerrorlab:
4673    
4674      /* Pacify compilers like GCC when the user code never invokes
4675         YYERROR and the label yyerrorlab therefore never appears in user
4676         code.  */
4677      if (0)
4678         goto yyerrorlab;
4679    
4680    yyvsp -= yylen;
4681      yyssp -= yylen;
4682      yystate = *yyssp;
4683      goto yyerrlab1;
4684    
4685    
4686    /*-------------------------------------------------------------.
4687    | yyerrlab1 -- common code for both syntax error and YYERROR.  |
4688    `-------------------------------------------------------------*/
4689  yyerrlab1:  yyerrlab1:
4690    yyerrstatus = 3;      /* Each real token shifted decrements this.  */    yyerrstatus = 3;      /* Each real token shifted decrements this.  */
4691    
# Line 4367  yyerrlab1: Line 4707  yyerrlab1:
4707        if (yyssp == yyss)        if (yyssp == yyss)
4708          YYABORT;          YYABORT;
4709    
       YYDSYMPRINTF ("Error: popping", yystos[*yyssp], yyvsp, yylsp);  
       yydestruct (yystos[yystate], yyvsp);  
       yyvsp--;  
       yystate = *--yyssp;  
4710    
4711          yydestruct ("Error: popping", yystos[yystate], yyvsp);
4712          YYPOPSTACK;
4713          yystate = *yyssp;
4714        YY_STACK_PRINT (yyss, yyssp);        YY_STACK_PRINT (yyss, yyssp);
4715      }      }
4716    
4717    if (yyn == YYFINAL)    if (yyn == YYFINAL)
4718      YYACCEPT;      YYACCEPT;
4719    
   YYDPRINTF ((stderr, "Shifting error token, "));  
   
4720    *++yyvsp = yylval;    *++yyvsp = yylval;
4721    
4722    
4723      /* Shift the error token. */
4724      YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
4725    
4726    yystate = yyn;    yystate = yyn;
4727    goto yynewstate;    goto yynewstate;
4728    
# Line 4402  yyabortlab: Line 4742  yyabortlab:
4742    goto yyreturn;    goto yyreturn;
4743    
4744  #ifndef yyoverflow  #ifndef yyoverflow
4745  /*----------------------------------------------.  /*-------------------------------------------------.
4746  | yyoverflowlab -- parser overflow comes here.  |  | yyexhaustedlab -- memory exhaustion comes here.  |
4747  `----------------------------------------------*/  `-------------------------------------------------*/
4748  yyoverflowlab:  yyexhaustedlab:
4749    yyerror ("parser stack overflow");    yyerror (YY_("memory exhausted"));
4750    yyresult = 2;    yyresult = 2;
4751    /* Fall through.  */    /* Fall through.  */
4752  #endif  #endif
4753    
4754  yyreturn:  yyreturn:
4755      if (yychar != YYEOF && yychar != YYEMPTY)
4756         yydestruct ("Cleanup: discarding lookahead",
4757                     yytoken, &yylval);
4758      while (yyssp != yyss)
4759        {
4760          yydestruct ("Cleanup: popping",
4761                      yystos[*yyssp], yyvsp);
4762          YYPOPSTACK;
4763        }
4764  #ifndef yyoverflow  #ifndef yyoverflow
4765    if (yyss != yyssa)    if (yyss != yyssa)
4766      YYSTACK_FREE (yyss);      YYSTACK_FREE (yyss);
# Line 4420  yyreturn: Line 4769  yyreturn:
4769  }  }
4770    
4771    
4772  #line 506 "lscp.y"  #line 560 "lscp.y"
4773    
4774    
4775  /**  /**

Legend:
Removed from v.225  
changed lines
  Added in v.826

  ViewVC Help
Powered by ViewVC