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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 225 - (hide annotations) (download)
Sun Aug 22 14:46:47 2004 UTC (19 years, 8 months ago) by schoenebeck
File size: 173353 byte(s)
* set default volume to 1.0 in Gigasampler engine (was 0.0)
* implemented "SET CHANNEL AUDIO_OUTPUT_CHANNEL" LSCP command
* fixed "GET ENGINE INFO" LSCP command
* fixed "GET CHANNEL INFO" LSCP command
* src/network/lscp.y: fixed 'stringval' rule (returned string with formal
  apostrophes), fixed 'dotnum' rule (ignored position after decimal point)

1 schoenebeck 209 /* A Bison parser, made by GNU Bison 1.875a. */
2 schoenebeck 35
3     /* Skeleton parser for Yacc-like parsing with Bison,
4 schoenebeck 209 Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
5 schoenebeck 35
6     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
8     the Free Software Foundation; either version 2, or (at your option)
9     any later version.
10    
11     This program is distributed in the hope that it will be useful,
12     but WITHOUT ANY WARRANTY; without even the implied warranty of
13     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14     GNU General Public License for more details.
15    
16     You should have received a copy of the GNU General Public License
17     along with this program; if not, write to the Free Software
18     Foundation, Inc., 59 Temple Place - Suite 330,
19     Boston, MA 02111-1307, USA. */
20    
21     /* 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.
23     This special exception was added by the Free Software Foundation
24     in version 1.24 of Bison. */
25    
26     /* Written by Richard Stallman by simplifying the original so called
27     ``semantic'' parser. */
28    
29     /* All symbols defined below should begin with yy or YY, to avoid
30     infringing on user name space. This should be done even for local
31     variables, as they might otherwise be expanded by user macros.
32     There are some unavoidable exceptions within include files to
33     define necessary library symbols; they are noted "INFRINGES ON
34     USER NAME SPACE" below. */
35    
36     /* Identify Bison output. */
37     #define YYBISON 1
38    
39     /* Skeleton name. */
40     #define YYSKELETON_NAME "yacc.c"
41    
42     /* Pure parsers. */
43     #define YYPURE 1
44    
45     /* Using locations. */
46     #define YYLSP_NEEDED 0
47    
48    
49    
50    
51    
52    
53     /* Copy the first part of user declarations. */
54 schoenebeck 210 #line 26 "lscp.y"
55 schoenebeck 35
56    
57     #include "lscpparser.h"
58     #include "lscpserver.h"
59 senkov 170 #include "lscpevent.h"
60 schoenebeck 35
61     // to save us typing work in the rules action definitions
62     #define LSCPSERVER ((yyparse_param_t*) yyparse_param)->pServer
63    
64 schoenebeck 219 // clears input buffer
65 schoenebeck 35 void restart(yyparse_param_t* pparam, int& yychar);
66     #define RESTART restart((yyparse_param_t*) YYPARSE_PARAM, yychar)
67    
68     // we provide our own version of yyerror() so we don't have to link against the yacc library
69     void yyerror(const char* s);
70    
71 schoenebeck 219 static char buf[1024]; // input buffer to feed the parser with new characters
72     static int bytes = 0; // current number of characters in the input buffer
73     static int ptr = 0; // current position in the input buffer
74 schoenebeck 35
75 schoenebeck 219 // external reference to the function which actually reads from the socket
76     extern int GetLSCPCommand( void *buf, int max_size);
77 schoenebeck 35
78 schoenebeck 219 // custom scanner function which reads from the socket
79     int yylex(YYSTYPE* yylval) {
80     // check if we have to read new characters
81     if (ptr >= bytes) {
82     bytes = GetLSCPCommand(buf, 1023);
83     ptr = 0;
84     if (bytes < 0) {
85     bytes = 0;
86     return 0;
87     }
88     }
89     return (int) buf[ptr++];
90     }
91    
92    
93    
94 schoenebeck 35 /* Enabling traces. */
95     #ifndef YYDEBUG
96     # define YYDEBUG 0
97     #endif
98    
99     /* Enabling verbose error messages. */
100     #ifdef YYERROR_VERBOSE
101     # undef YYERROR_VERBOSE
102     # define YYERROR_VERBOSE 1
103     #else
104     # define YYERROR_VERBOSE 0
105     #endif
106    
107     #if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)
108     typedef int YYSTYPE;
109     # define yystype YYSTYPE /* obsolescent; will be withdrawn */
110     # define YYSTYPE_IS_DECLARED 1
111     # define YYSTYPE_IS_TRIVIAL 1
112     #endif
113    
114    
115    
116     /* Copy the second part of user declarations. */
117    
118    
119     /* Line 214 of yacc.c. */
120 schoenebeck 219 #line 121 "y.tab.c"
121 schoenebeck 35
122     #if ! defined (yyoverflow) || YYERROR_VERBOSE
123    
124     /* The parser invokes alloca or malloc; define the necessary symbols. */
125    
126     # if YYSTACK_USE_ALLOCA
127     # define YYSTACK_ALLOC alloca
128     # else
129     # ifndef YYSTACK_USE_ALLOCA
130     # if defined (alloca) || defined (_ALLOCA_H)
131     # define YYSTACK_ALLOC alloca
132     # else
133     # ifdef __GNUC__
134     # define YYSTACK_ALLOC __builtin_alloca
135     # endif
136     # endif
137     # endif
138     # endif
139    
140     # ifdef YYSTACK_ALLOC
141     /* Pacify GCC's `empty if-body' warning. */
142     # define YYSTACK_FREE(Ptr) do { /* empty */; } while (0)
143     # else
144     # if defined (__STDC__) || defined (__cplusplus)
145     # include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
146     # define YYSIZE_T size_t
147     # endif
148     # define YYSTACK_ALLOC malloc
149     # define YYSTACK_FREE free
150     # endif
151     #endif /* ! defined (yyoverflow) || YYERROR_VERBOSE */
152    
153    
154     #if (! defined (yyoverflow) \
155     && (! defined (__cplusplus) \
156     || (YYSTYPE_IS_TRIVIAL)))
157    
158     /* A type that is properly aligned for any stack member. */
159     union yyalloc
160     {
161     short yyss;
162     YYSTYPE yyvs;
163     };
164    
165     /* The size of the maximum gap between one aligned stack and the next. */
166     # define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
167    
168     /* The size of an array large to enough to hold all stacks, each with
169     N elements. */
170     # define YYSTACK_BYTES(N) \
171     ((N) * (sizeof (short) + sizeof (YYSTYPE)) \
172     + YYSTACK_GAP_MAXIMUM)
173    
174     /* Copy COUNT objects from FROM to TO. The source and destination do
175     not overlap. */
176     # ifndef YYCOPY
177     # if 1 < __GNUC__
178     # define YYCOPY(To, From, Count) \
179     __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
180     # else
181     # define YYCOPY(To, From, Count) \
182     do \
183     { \
184     register YYSIZE_T yyi; \
185     for (yyi = 0; yyi < (Count); yyi++) \
186     (To)[yyi] = (From)[yyi]; \
187     } \
188     while (0)
189     # endif
190     # endif
191    
192     /* Relocate STACK from its old location to the new one. The
193     local variables YYSIZE and YYSTACKSIZE give the old and new number of
194     elements in the stack, and YYPTR gives the new location of the
195     stack. Advance YYPTR to a properly aligned location for the next
196     stack. */
197     # define YYSTACK_RELOCATE(Stack) \
198     do \
199     { \
200     YYSIZE_T yynewbytes; \
201     YYCOPY (&yyptr->Stack, Stack, yysize); \
202     Stack = &yyptr->Stack; \
203     yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
204     yyptr += yynewbytes / sizeof (*yyptr); \
205     } \
206     while (0)
207    
208     #endif
209    
210     #if defined (__STDC__) || defined (__cplusplus)
211     typedef signed char yysigned_char;
212     #else
213     typedef short yysigned_char;
214     #endif
215    
216     /* YYFINAL -- State number of the termination state. */
217 schoenebeck 219 #define YYFINAL 39
218 schoenebeck 35 /* YYLAST -- Last index in YYTABLE. */
219 schoenebeck 221 #define YYLAST 3976
220 schoenebeck 35
221     /* YYNTOKENS -- Number of terminals. */
222 schoenebeck 219 #define YYNTOKENS 226
223 schoenebeck 35 /* YYNNTS -- Number of nonterminals. */
224 schoenebeck 221 #define YYNNTS 89
225 schoenebeck 35 /* YYNRULES -- Number of rules. */
226 schoenebeck 221 #define YYNRULES 412
227 schoenebeck 35 /* YYNRULES -- Number of states. */
228 schoenebeck 221 #define YYNSTATES 1132
229 schoenebeck 35
230     /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */
231     #define YYUNDEFTOK 2
232 schoenebeck 219 #define YYMAXUTOK 257
233 schoenebeck 35
234     #define YYTRANSLATE(YYX) \
235     ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
236    
237     /* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX. */
238     static const unsigned char yytranslate[] =
239     {
240     0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
241 schoenebeck 219 224, 2, 2, 225, 2, 2, 2, 2, 2, 2,
242 schoenebeck 35 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
243 schoenebeck 219 2, 2, 223, 70, 222, 3, 71, 72, 73, 221,
244     74, 75, 76, 6, 2, 7, 5, 77, 8, 9,
245     10, 11, 12, 13, 14, 15, 16, 17, 78, 79,
246     80, 4, 81, 82, 83, 18, 19, 20, 21, 22,
247     23, 24, 25, 26, 27, 28, 29, 30, 31, 32,
248     33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
249     43, 84, 85, 86, 87, 88, 2, 44, 45, 46,
250     47, 48, 49, 50, 51, 52, 53, 54, 55, 56,
251     57, 58, 59, 60, 61, 62, 63, 64, 65, 66,
252     67, 68, 69, 89, 90, 91, 92, 2, 93, 94,
253     95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
254     105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
255     115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
256     125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
257     135, 136, 137, 138, 139, 140, 141, 142, 143, 144,
258     145, 146, 147, 148, 149, 150, 151, 152, 153, 154,
259     155, 156, 157, 158, 159, 160, 161, 162, 163, 164,
260     165, 166, 167, 168, 169, 170, 171, 172, 173, 174,
261     175, 176, 177, 178, 179, 180, 181, 182, 183, 184,
262     185, 186, 187, 188, 189, 190, 191, 192, 193, 194,
263     195, 196, 197, 198, 199, 200, 201, 202, 203, 204,
264     205, 206, 207, 208, 209, 210, 211, 212, 213, 214,
265     215, 216, 217, 218, 219, 220, 1, 2
266 schoenebeck 35 };
267    
268     #if YYDEBUG
269     /* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in
270     YYRHS. */
271 schoenebeck 123 static const unsigned short yyprhs[] =
272 schoenebeck 35 {
273 schoenebeck 219 0, 0, 3, 6, 10, 11, 13, 15, 17, 19,
274     22, 25, 28, 31, 35, 39, 43, 47, 51, 55,
275     61, 65, 69, 73, 79, 81, 83, 85, 87, 89,
276     91, 93, 95, 97, 99, 101, 103, 105, 107, 109,
277     111, 117, 125, 135, 137, 143, 151, 161, 163, 165,
278     171, 177, 185, 195, 203, 213, 215, 221, 229, 235,
279     241, 247, 255, 265, 273, 283, 287, 291, 297, 301,
280     307, 311, 315, 319, 323, 327, 333, 341, 347, 357,
281     363, 369, 375, 381, 387, 391, 397, 399, 401, 403,
282     405, 407, 413, 421, 425, 427, 429, 431, 433, 435,
283     437, 439, 441, 443, 445, 447, 449, 451, 453, 455,
284     457, 459, 461, 463, 466, 470, 475, 480, 482, 485,
285     487, 489, 491, 493, 495, 497, 499, 501, 503, 505,
286     507, 510, 513, 516, 519, 522, 525, 528, 531, 534,
287     536, 538, 540, 542, 544, 546, 548, 550, 552, 554,
288     556, 558, 560, 562, 564, 566, 568, 570, 572, 574,
289     576, 578, 580, 582, 584, 586, 588, 590, 592, 594,
290     596, 598, 600, 602, 604, 606, 608, 610, 612, 614,
291     616, 618, 620, 622, 624, 626, 628, 630, 632, 634,
292     636, 638, 640, 642, 644, 646, 648, 650, 652, 654,
293     656, 658, 660, 662, 664, 666, 668, 670, 672, 674,
294     676, 678, 680, 682, 684, 686, 688, 690, 692, 694,
295     696, 698, 700, 702, 704, 706, 708, 710, 712, 714,
296     716, 718, 720, 722, 724, 726, 728, 730, 732, 734,
297     736, 738, 740, 742, 744, 746, 748, 750, 752, 754,
298     756, 758, 760, 762, 764, 766, 768, 770, 772, 774,
299     776, 778, 780, 782, 784, 786, 788, 790, 792, 794,
300     796, 798, 800, 802, 804, 806, 808, 810, 812, 814,
301     816, 818, 820, 822, 824, 826, 828, 830, 832, 834,
302     836, 838, 840, 842, 844, 846, 848, 850, 852, 854,
303     856, 858, 860, 862, 864, 866, 868, 870, 872, 874,
304     876, 878, 880, 882, 884, 886, 888, 890, 892, 894,
305     896, 898, 900, 902, 904, 906, 908, 910, 912, 914,
306     916, 918, 920, 922, 924, 926, 928, 930, 932, 934,
307     936, 938, 940, 942, 944, 946, 948, 950, 952, 954,
308 schoenebeck 221 956, 958, 960, 962, 964, 966, 968, 970, 972, 974,
309     977, 980, 984, 988, 990, 992, 994, 998, 1002, 1009,
310     1017, 1022, 1027, 1037, 1044, 1048, 1058, 1070, 1078, 1096,
311     1127, 1136, 1141, 1153, 1166, 1178, 1189, 1196, 1226, 1247,
312     1267, 1297, 1317, 1348, 1369, 1387, 1416, 1444, 1470, 1489,
313     1507, 1535, 1553, 1569, 1588, 1604, 1615, 1622, 1628, 1639,
314     1645, 1659, 1664
315 schoenebeck 35 };
316    
317     /* YYRHS -- A `-1'-separated list of the rules' RHS. */
318 schoenebeck 219 static const short yyrhs[] =
319 schoenebeck 35 {
320 schoenebeck 221 227, 0, -1, 228, 266, -1, 228, 267, 266, -1,
321 schoenebeck 219 -1, 229, -1, 230, -1, 1, -1, 3, -1, 229,
322 schoenebeck 221 3, -1, 229, 265, -1, 229, 261, -1, 229, 257,
323     -1, 268, 265, 279, -1, 269, 265, 233, -1, 270,
324     265, 235, -1, 271, 265, 236, -1, 272, 265, 241,
325     -1, 273, 265, 237, -1, 275, 265, 279, 265, 251,
326     -1, 276, 265, 234, -1, 277, 265, 231, -1, 278,
327     265, 232, -1, 311, 265, 279, 265, 251, -1, 311,
328     -1, 314, -1, 282, -1, 286, -1, 285, -1, 284,
329     -1, 283, -1, 312, -1, 282, -1, 286, -1, 285,
330     -1, 284, -1, 283, -1, 312, -1, 280, -1, 297,
331     -1, 303, 265, 283, 265, 257, -1, 302, 265, 283,
332     265, 257, 265, 257, -1, 302, 265, 283, 265, 257,
333     265, 257, 265, 239, -1, 281, -1, 293, 265, 283,
334     265, 257, -1, 292, 265, 283, 265, 257, 265, 257,
335     -1, 292, 265, 283, 265, 257, 265, 257, 265, 239,
336     -1, 290, -1, 300, -1, 291, 265, 283, 265, 261,
337     -1, 301, 265, 283, 265, 261, -1, 304, 265, 283,
338     265, 261, 265, 261, -1, 299, 265, 283, 265, 261,
339     265, 261, 265, 257, -1, 295, 265, 283, 265, 261,
340     265, 261, -1, 294, 265, 283, 265, 261, 265, 261,
341     265, 257, -1, 282, -1, 279, 265, 283, 265, 251,
342     -1, 279, 265, 284, 265, 240, 265, 251, -1, 279,
343     265, 285, 265, 251, -1, 279, 265, 286, 265, 251,
344     -1, 288, 265, 283, 265, 253, -1, 289, 265, 261,
345     265, 257, 4, 255, -1, 294, 265, 261, 265, 261,
346     265, 257, 4, 255, -1, 298, 265, 261, 265, 257,
347     4, 255, -1, 299, 265, 261, 265, 261, 265, 257,
348     4, 255, -1, 279, 265, 238, -1, 313, 265, 256,
349     -1, 291, 265, 257, 265, 239, -1, 291, 265, 257,
350     -1, 301, 265, 257, 265, 239, -1, 301, 265, 257,
351     -1, 291, 265, 261, -1, 301, 265, 261, -1, 287,
352     265, 242, -1, 288, 265, 243, -1, 291, 265, 251,
353     265, 244, -1, 295, 265, 251, 265, 245, 265, 245,
354     -1, 296, 265, 251, 265, 246, -1, 307, 265, 251,
355     265, 244, 265, 247, 265, 248, -1, 301, 265, 251,
356     265, 244, -1, 304, 265, 251, 265, 247, -1, 305,
357     265, 251, 265, 248, -1, 306, 265, 251, 265, 249,
358     -1, 308, 265, 251, 265, 250, -1, 257, 4, 255,
359     -1, 239, 265, 257, 4, 255, -1, 309, -1, 310,
360     -1, 290, -1, 300, -1, 282, -1, 254, 265, 252,
361     265, 251, -1, 274, 265, 254, 265, 252, 265, 251,
362     -1, 253, 265, 251, -1, 261, -1, 261, -1, 257,
363 schoenebeck 219 -1, 261, -1, 261, -1, 257, -1, 258, -1, 261,
364 schoenebeck 221 -1, 261, -1, 261, -1, 257, -1, 264, -1, 257,
365     -1, 264, -1, 261, -1, 258, -1, 261, -1, 257,
366 schoenebeck 219 -1, 262, -1, 257, 262, -1, 259, 5, 259, -1,
367     6, 259, 5, 259, -1, 7, 259, 5, 259, -1,
368     260, -1, 259, 260, -1, 8, -1, 9, -1, 10,
369     -1, 11, -1, 12, -1, 13, -1, 14, -1, 15,
370     -1, 16, -1, 17, -1, 260, -1, 9, 259, -1,
371     10, 259, -1, 11, 259, -1, 12, 259, -1, 13,
372     259, -1, 14, 259, -1, 15, 259, -1, 16, 259,
373     -1, 17, 259, -1, 18, -1, 19, -1, 20, -1,
374     21, -1, 22, -1, 23, -1, 24, -1, 25, -1,
375     26, -1, 27, -1, 28, -1, 29, -1, 30, -1,
376     31, -1, 32, -1, 33, -1, 34, -1, 35, -1,
377     36, -1, 37, -1, 38, -1, 39, -1, 40, -1,
378     41, -1, 42, -1, 43, -1, 44, -1, 45, -1,
379     46, -1, 47, -1, 48, -1, 49, -1, 50, -1,
380     51, -1, 52, -1, 53, -1, 54, -1, 55, -1,
381     56, -1, 57, -1, 58, -1, 59, -1, 60, -1,
382     61, -1, 62, -1, 63, -1, 64, -1, 65, -1,
383     66, -1, 67, -1, 68, -1, 69, -1, 8, -1,
384     9, -1, 10, -1, 11, -1, 12, -1, 13, -1,
385     14, -1, 15, -1, 16, -1, 17, -1, 70, -1,
386     3, -1, 71, -1, 72, -1, 73, -1, 74, -1,
387     75, -1, 76, -1, 6, -1, 7, -1, 5, -1,
388     77, -1, 78, -1, 79, -1, 80, -1, 4, -1,
389     81, -1, 82, -1, 83, -1, 84, -1, 85, -1,
390     86, -1, 87, -1, 88, -1, 89, -1, 90, -1,
391     91, -1, 92, -1, 93, -1, 94, -1, 95, -1,
392     96, -1, 97, -1, 98, -1, 99, -1, 100, -1,
393     101, -1, 102, -1, 103, -1, 104, -1, 105, -1,
394     106, -1, 107, -1, 108, -1, 109, -1, 110, -1,
395     111, -1, 112, -1, 113, -1, 114, -1, 115, -1,
396     116, -1, 117, -1, 118, -1, 119, -1, 120, -1,
397     121, -1, 122, -1, 123, -1, 124, -1, 125, -1,
398     126, -1, 127, -1, 128, -1, 129, -1, 130, -1,
399     131, -1, 132, -1, 133, -1, 134, -1, 135, -1,
400     136, -1, 137, -1, 138, -1, 139, -1, 140, -1,
401     141, -1, 142, -1, 143, -1, 144, -1, 145, -1,
402     146, -1, 147, -1, 148, -1, 149, -1, 150, -1,
403     151, -1, 152, -1, 153, -1, 154, -1, 155, -1,
404     156, -1, 157, -1, 158, -1, 159, -1, 160, -1,
405     161, -1, 162, -1, 163, -1, 164, -1, 165, -1,
406     166, -1, 167, -1, 168, -1, 169, -1, 170, -1,
407     171, -1, 172, -1, 173, -1, 174, -1, 175, -1,
408     176, -1, 177, -1, 178, -1, 179, -1, 180, -1,
409     181, -1, 182, -1, 183, -1, 184, -1, 185, -1,
410     186, -1, 187, -1, 188, -1, 189, -1, 190, -1,
411     191, -1, 192, -1, 193, -1, 194, -1, 195, -1,
412     196, -1, 197, -1, 198, -1, 199, -1, 200, -1,
413     201, -1, 202, -1, 203, -1, 204, -1, 205, -1,
414     206, -1, 207, -1, 208, -1, 209, -1, 210, -1,
415     211, -1, 212, -1, 213, -1, 214, -1, 215, -1,
416     216, -1, 217, -1, 218, -1, 219, -1, 220, -1,
417 schoenebeck 221 265, -1, 257, -1, 263, 265, -1, 263, 257, -1,
418     221, 263, 221, -1, 222, 263, 222, -1, 223, -1,
419 schoenebeck 219 224, -1, 225, -1, 18, 21, 21, -1, 24, 22,
420     37, -1, 20, 35, 22, 18, 37, 22, -1, 21,
421     22, 36, 37, 35, 32, 42, -1, 29, 26, 36,
422     37, -1, 29, 32, 18, 21, -1, 31, 32, 31,
423     88, 30, 32, 21, 18, 29, -1, 35, 22, 30,
424     32, 39, 22, -1, 36, 22, 37, -1, 36, 38,
425     19, 36, 20, 35, 26, 19, 22, -1, 38, 31,
426     36, 38, 19, 36, 20, 35, 26, 19, 22, -1,
427     20, 25, 18, 31, 31, 22, 29, -1, 18, 39,
428     18, 26, 29, 18, 19, 29, 22, 88, 22, 31,
429     24, 26, 31, 22, 36, -1, 18, 39, 18, 26,
430     29, 18, 19, 29, 22, 88, 18, 38, 21, 26,
431     32, 88, 32, 38, 37, 33, 38, 37, 88, 21,
432     35, 26, 39, 22, 35, 36, -1, 20, 25, 18,
433     31, 31, 22, 29, 36, -1, 26, 31, 23, 32,
434     -1, 19, 38, 23, 23, 22, 35, 88, 23, 26,
435     29, 29, -1, 36, 37, 35, 22, 18, 30, 88,
436     20, 32, 38, 31, 37, -1, 39, 32, 26, 20,
437     22, 88, 20, 32, 38, 31, 37, -1, 26, 31,
438     36, 37, 35, 38, 30, 22, 31, 37, -1, 22,
439     31, 24, 26, 31, 22, -1, 18, 38, 21, 26,
440     32, 88, 32, 38, 37, 33, 38, 37, 88, 21,
441     22, 39, 26, 20, 22, 88, 33, 18, 35, 18,
442     30, 22, 37, 22, 35, -1, 18, 38, 21, 26,
443     32, 88, 32, 38, 37, 33, 38, 37, 88, 21,
444     22, 39, 26, 20, 22, 36, -1, 18, 38, 21,
445     26, 32, 88, 32, 38, 37, 33, 38, 37, 88,
446     21, 22, 39, 26, 20, 22, -1, 18, 38, 21,
447     26, 32, 88, 32, 38, 37, 33, 38, 37, 88,
448     21, 35, 26, 39, 22, 35, 88, 33, 18, 35,
449     18, 30, 22, 37, 22, 35, -1, 18, 38, 21,
450     26, 32, 88, 32, 38, 37, 33, 38, 37, 88,
451     21, 35, 26, 39, 22, 35, -1, 18, 38, 21,
452     26, 32, 88, 32, 38, 37, 33, 38, 37, 88,
453     20, 25, 18, 31, 31, 22, 29, 88, 33, 18,
454     35, 18, 30, 22, 37, 22, 35, -1, 18, 38,
455     21, 26, 32, 88, 32, 38, 37, 33, 38, 37,
456     88, 20, 25, 18, 31, 31, 22, 29, -1, 18,
457     38, 21, 26, 32, 88, 32, 38, 37, 33, 38,
458     37, 88, 37, 42, 33, 22, -1, 18, 39, 18,
459     26, 29, 18, 19, 29, 22, 88, 30, 26, 21,
460     26, 88, 26, 31, 33, 38, 37, 88, 21, 35,
461     26, 39, 22, 35, 36, -1, 30, 26, 21, 26,
462     88, 26, 31, 33, 38, 37, 88, 21, 22, 39,
463     26, 20, 22, 88, 33, 18, 35, 18, 30, 22,
464     37, 22, 35, -1, 30, 26, 21, 26, 88, 26,
465     31, 33, 38, 37, 88, 33, 32, 35, 37, 88,
466     33, 18, 35, 18, 30, 22, 37, 22, 35, -1,
467     30, 26, 21, 26, 88, 26, 31, 33, 38, 37,
468     88, 21, 22, 39, 26, 20, 22, 36, -1, 30,
469     26, 21, 26, 88, 26, 31, 33, 38, 37, 88,
470     21, 22, 39, 26, 20, 22, -1, 30, 26, 21,
471     26, 88, 26, 31, 33, 38, 37, 88, 21, 35,
472     26, 39, 22, 35, 88, 33, 18, 35, 18, 30,
473     22, 37, 22, 35, -1, 30, 26, 21, 26, 88,
474     26, 31, 33, 38, 37, 88, 21, 35, 26, 39,
475     22, 35, -1, 30, 26, 21, 26, 88, 26, 31,
476     33, 38, 37, 88, 33, 32, 35, 37, -1, 30,
477     26, 21, 26, 88, 26, 31, 33, 38, 37, 88,
478     20, 25, 18, 31, 31, 22, 29, -1, 30, 26,
479     21, 26, 88, 26, 31, 33, 38, 37, 88, 37,
480     42, 33, 22, -1, 30, 26, 21, 26, 88, 26,
481     31, 33, 38, 37, -1, 39, 32, 29, 38, 30,
482     22, -1, 19, 42, 37, 22, 36, -1, 33, 22,
483     35, 20, 22, 31, 37, 18, 24, 22, -1, 35,
484     22, 36, 22, 37, -1, 30, 26, 36, 20, 22,
485     29, 29, 18, 31, 22, 32, 38, 36, -1, 22,
486     20, 25, 32, -1, 34, 38, 26, 37, -1
487 schoenebeck 35 };
488    
489     /* YYRLINE[YYN] -- source line where rule number YYN was defined. */
490 schoenebeck 219 static const unsigned short yyrline[] =
491 schoenebeck 35 {
492 schoenebeck 219 0, 81, 81, 82, 85, 86, 87, 88, 91, 92,
493     93, 94, 95, 98, 99, 100, 101, 102, 103, 104,
494     105, 106, 107, 108, 109, 110, 113, 114, 115, 116,
495     117, 118, 121, 122, 123, 124, 125, 126, 129, 130,
496 schoenebeck 210 131, 132, 133, 134, 135, 136, 137, 138, 139, 140,
497 schoenebeck 212 141, 142, 143, 144, 145, 146, 147, 148, 149, 150,
498 schoenebeck 219 151, 154, 155, 156, 157, 158, 159, 162, 163, 164,
499     165, 168, 169, 172, 173, 176, 177, 178, 179, 180,
500     181, 182, 183, 184, 187, 188, 191, 192, 195, 196,
501     197, 200, 201, 204, 207, 210, 213, 216, 219, 222,
502     225, 226, 229, 232, 235, 238, 241, 242, 243, 244,
503     250, 251, 254, 255, 258, 259, 260, 264, 265, 268,
504     269, 270, 271, 272, 273, 274, 275, 276, 277, 280,
505     281, 282, 283, 284, 285, 286, 287, 288, 289, 291,
506     291, 291, 291, 291, 291, 291, 291, 291, 291, 291,
507     291, 291, 291, 291, 291, 291, 291, 291, 291, 291,
508     291, 291, 291, 291, 291, 292, 292, 292, 292, 292,
509     292, 292, 292, 292, 292, 292, 292, 292, 292, 292,
510     292, 292, 292, 292, 292, 292, 292, 292, 292, 292,
511     292, 293, 293, 293, 293, 293, 293, 293, 293, 293,
512     293, 294, 294, 294, 294, 294, 294, 294, 294, 294,
513     294, 294, 294, 295, 295, 295, 295, 295, 295, 295,
514     296, 296, 296, 296, 296, 297, 297, 297, 297, 298,
515     298, 298, 299, 299, 299, 300, 300, 300, 301, 301,
516     301, 302, 302, 302, 303, 303, 303, 304, 304, 304,
517     305, 305, 305, 306, 306, 306, 307, 307, 307, 308,
518     308, 308, 309, 309, 309, 310, 310, 310, 311, 311,
519     311, 312, 312, 312, 313, 313, 313, 314, 314, 314,
520     315, 315, 315, 316, 316, 316, 317, 317, 317, 318,
521     318, 318, 319, 319, 319, 320, 320, 320, 321, 321,
522     321, 322, 322, 322, 323, 323, 323, 324, 324, 324,
523     325, 325, 325, 326, 326, 326, 327, 327, 327, 328,
524     328, 328, 329, 329, 329, 330, 330, 330, 331, 331,
525     331, 332, 332, 332, 333, 333, 333, 334, 334, 334,
526     335, 335, 335, 336, 336, 336, 337, 337, 337, 338,
527 schoenebeck 221 338, 338, 339, 339, 339, 340, 340, 343, 344, 345,
528     346, 349, 350, 356, 359, 362, 365, 368, 371, 374,
529     377, 380, 383, 386, 389, 392, 395, 398, 401, 404,
530     407, 410, 413, 416, 419, 422, 425, 428, 431, 434,
531     437, 440, 443, 446, 449, 452, 455, 458, 461, 464,
532     467, 470, 473, 476, 479, 482, 485, 488, 491, 494,
533     497, 500, 503
534 schoenebeck 35 };
535     #endif
536    
537     #if YYDEBUG || YYERROR_VERBOSE
538     /* YYTNME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
539     First, the terminals, then, starting at YYNTOKENS, nonterminals. */
540     static const char *const yytname[] =
541     {
542 schoenebeck 219 "$end", "error", "$undefined", "'#'", "'='", "'.'", "'+'", "'-'", "'0'",
543     "'1'", "'2'", "'3'", "'4'", "'5'", "'6'", "'7'", "'8'", "'9'", "'A'",
544     "'B'", "'C'", "'D'", "'E'", "'F'", "'G'", "'H'", "'I'", "'J'", "'K'",
545     "'L'", "'M'", "'N'", "'O'", "'P'", "'Q'", "'R'", "'S'", "'T'", "'U'",
546     "'V'", "'W'", "'X'", "'Y'", "'Z'", "'a'", "'b'", "'c'", "'d'", "'e'",
547     "'f'", "'g'", "'h'", "'i'", "'j'", "'k'", "'l'", "'m'", "'n'", "'o'",
548     "'p'", "'q'", "'r'", "'s'", "'t'", "'u'", "'v'", "'w'", "'x'", "'y'",
549     "'z'", "'!'", "'$'", "'%'", "'&'", "'('", "')'", "'*'", "'/'", "':'",
550     "';'", "'<'", "'>'", "'?'", "'@'", "'['", "'\\\\'", "']'", "'^'", "'_'",
551     "'{'", "'|'", "'}'", "'~'", "'\\200'", "'\\201'", "'\\202'", "'\\203'",
552     "'\\204'", "'\\205'", "'\\206'", "'\\207'", "'\\210'", "'\\211'",
553     "'\\212'", "'\\213'", "'\\214'", "'\\215'", "'\\216'", "'\\217'",
554     "'\\220'", "'\\221'", "'\\222'", "'\\223'", "'\\224'", "'\\225'",
555     "'\\226'", "'\\227'", "'\\230'", "'\\231'", "'\\232'", "'\\233'",
556     "'\\234'", "'\\235'", "'\\236'", "'\\237'", "'�'", "'�'", "'�'", "'�'",
557     "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'",
558     "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'",
559     "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'",
560     "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'",
561     "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'",
562     "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'",
563     "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'",
564     "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'",
565     "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'", "'�'",
566     "'�'", "'�'", "'''", "'\"'", "' '", "'\\n'", "'\\r'", "$accept",
567     "input", "line", "comment", "command", "subscribe_event",
568 senkov 155 "unsubscribe_event", "get_instruction", "set_instruction",
569     "create_instruction", "destroy_instruction", "load_instruction",
570     "set_chan_instruction", "key_val_list", "buffer_size_type",
571     "list_instruction", "load_instr_args", "load_engine_args",
572 schoenebeck 219 "device_index", "audio_channel_index", "audio_output_type_name",
573     "midi_input_port_index", "midi_input_channel_index",
574     "midi_input_type_name", "volume_value", "sampler_channel",
575     "instrument_index", "engine_name", "filename", "param_val", "boolean",
576 schoenebeck 221 "string", "dotnum", "digits", "digit", "number", "char", "text",
577     "stringval", "SP", "LF", "CR", "ADD", "GET", "CREATE", "DESTROY",
578     "LIST", "LOAD", "NON_MODAL", "REMOVE", "SET", "SUBSCRIBE",
579     "UNSUBSCRIBE", "CHANNEL", "AVAILABLE_ENGINES",
580     "AVAILABLE_AUDIO_OUTPUT_DRIVERS", "CHANNELS", "INFO", "BUFFER_FILL",
581     "STREAM_COUNT", "VOICE_COUNT", "INSTRUMENT", "ENGINE",
582     "AUDIO_OUTPUT_DEVICE_PARAMETER", "AUDIO_OUTPUT_DEVICES",
583 schoenebeck 219 "AUDIO_OUTPUT_DEVICE", "AUDIO_OUTPUT_DRIVER_PARAMETER",
584     "AUDIO_OUTPUT_DRIVER", "AUDIO_OUTPUT_CHANNEL_PARAMETER",
585     "AUDIO_OUTPUT_CHANNEL", "AUDIO_OUTPUT_TYPE",
586     "AVAILABLE_MIDI_INPUT_DRIVERS", "MIDI_INPUT_DEVICE_PARAMETER",
587     "MIDI_INPUT_PORT_PARAMETER", "MIDI_INPUT_DEVICES", "MIDI_INPUT_DEVICE",
588     "MIDI_INPUT_DRIVER_PARAMETER", "MIDI_INPUT_DRIVER", "MIDI_INPUT_PORT",
589     "MIDI_INPUT_CHANNEL", "MIDI_INPUT_TYPE", "MIDI_INPUT", "VOLUME",
590     "BYTES", "PERCENTAGE", "RESET", "MISCELLANEOUS", "ECHO", "QUIT", 0
591 schoenebeck 35 };
592     #endif
593    
594     # ifdef YYPRINT
595     /* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to
596     token YYLEX-NUM. */
597     static const unsigned short yytoknum[] =
598     {
599 schoenebeck 219 0, 256, 257, 35, 61, 46, 43, 45, 48, 49,
600     50, 51, 52, 53, 54, 55, 56, 57, 65, 66,
601     67, 68, 69, 70, 71, 72, 73, 74, 75, 76,
602     77, 78, 79, 80, 81, 82, 83, 84, 85, 86,
603     87, 88, 89, 90, 97, 98, 99, 100, 101, 102,
604     103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
605     113, 114, 115, 116, 117, 118, 119, 120, 121, 122,
606     33, 36, 37, 38, 40, 41, 42, 47, 58, 59,
607     60, 62, 63, 64, 91, 92, 93, 94, 95, 123,
608     124, 125, 126, 128, 129, 130, 131, 132, 133, 134,
609     135, 136, 137, 138, 139, 140, 141, 142, 143, 144,
610     145, 146, 147, 148, 149, 150, 151, 152, 153, 154,
611     155, 156, 157, 158, 159, 160, 161, 162, 163, 164,
612     165, 166, 167, 168, 169, 170, 171, 172, 173, 174,
613     175, 176, 177, 178, 179, 180, 181, 182, 183, 184,
614     185, 186, 187, 188, 189, 190, 191, 192, 193, 194,
615     195, 196, 197, 198, 199, 200, 201, 202, 203, 204,
616     205, 206, 207, 208, 209, 210, 211, 212, 213, 214,
617     215, 216, 217, 218, 219, 220, 221, 222, 223, 224,
618     225, 226, 227, 228, 229, 230, 231, 232, 233, 234,
619     235, 236, 237, 238, 239, 240, 241, 242, 243, 244,
620     245, 246, 247, 248, 249, 250, 251, 252, 253, 254,
621     255, 39, 34, 32, 10, 13
622 schoenebeck 35 };
623     # endif
624    
625     /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
626 schoenebeck 219 static const unsigned short yyr1[] =
627 schoenebeck 35 {
628 schoenebeck 219 0, 226, 227, 227, 228, 228, 228, 228, 229, 229,
629     229, 229, 229, 230, 230, 230, 230, 230, 230, 230,
630     230, 230, 230, 230, 230, 230, 231, 231, 231, 231,
631     231, 231, 232, 232, 232, 232, 232, 232, 233, 233,
632     233, 233, 233, 233, 233, 233, 233, 233, 233, 233,
633     233, 233, 233, 233, 233, 233, 233, 233, 233, 233,
634     233, 234, 234, 234, 234, 234, 234, 235, 235, 235,
635     235, 236, 236, 237, 237, 238, 238, 238, 238, 238,
636     238, 238, 238, 238, 239, 239, 240, 240, 241, 241,
637     241, 242, 242, 243, 244, 245, 246, 247, 248, 249,
638     250, 250, 251, 252, 253, 254, 255, 255, 255, 255,
639     256, 256, 257, 257, 258, 258, 258, 259, 259, 260,
640     260, 260, 260, 260, 260, 260, 260, 260, 260, 261,
641     261, 261, 261, 261, 261, 261, 261, 261, 261, 262,
642     262, 262, 262, 262, 262, 262, 262, 262, 262, 262,
643     262, 262, 262, 262, 262, 262, 262, 262, 262, 262,
644     262, 262, 262, 262, 262, 262, 262, 262, 262, 262,
645     262, 262, 262, 262, 262, 262, 262, 262, 262, 262,
646     262, 262, 262, 262, 262, 262, 262, 262, 262, 262,
647     262, 262, 262, 262, 262, 262, 262, 262, 262, 262,
648     262, 262, 262, 262, 262, 262, 262, 262, 262, 262,
649     262, 262, 262, 262, 262, 262, 262, 262, 262, 262,
650     262, 262, 262, 262, 262, 262, 262, 262, 262, 262,
651     262, 262, 262, 262, 262, 262, 262, 262, 262, 262,
652     262, 262, 262, 262, 262, 262, 262, 262, 262, 262,
653     262, 262, 262, 262, 262, 262, 262, 262, 262, 262,
654     262, 262, 262, 262, 262, 262, 262, 262, 262, 262,
655     262, 262, 262, 262, 262, 262, 262, 262, 262, 262,
656     262, 262, 262, 262, 262, 262, 262, 262, 262, 262,
657     262, 262, 262, 262, 262, 262, 262, 262, 262, 262,
658     262, 262, 262, 262, 262, 262, 262, 262, 262, 262,
659     262, 262, 262, 262, 262, 262, 262, 262, 262, 262,
660     262, 262, 262, 262, 262, 262, 262, 262, 262, 262,
661     262, 262, 262, 262, 262, 262, 262, 262, 262, 262,
662     262, 262, 262, 262, 262, 262, 262, 262, 262, 262,
663 schoenebeck 221 262, 262, 262, 262, 262, 262, 262, 263, 263, 263,
664     263, 264, 264, 265, 266, 267, 268, 269, 270, 271,
665     272, 273, 274, 275, 276, 277, 278, 279, 280, 281,
666     282, 283, 284, 285, 286, 287, 288, 289, 290, 291,
667     292, 293, 294, 295, 296, 297, 298, 299, 300, 301,
668     302, 303, 304, 305, 306, 307, 308, 309, 310, 311,
669     312, 313, 314
670 schoenebeck 35 };
671    
672     /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
673     static const unsigned char yyr2[] =
674     {
675 schoenebeck 219 0, 2, 2, 3, 0, 1, 1, 1, 1, 2,
676     2, 2, 2, 3, 3, 3, 3, 3, 3, 5,
677     3, 3, 3, 5, 1, 1, 1, 1, 1, 1,
678 schoenebeck 210 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
679 schoenebeck 219 5, 7, 9, 1, 5, 7, 9, 1, 1, 5,
680     5, 7, 9, 7, 9, 1, 5, 7, 5, 5,
681     5, 7, 9, 7, 9, 3, 3, 5, 3, 5,
682     3, 3, 3, 3, 3, 5, 7, 5, 9, 5,
683     5, 5, 5, 5, 3, 5, 1, 1, 1, 1,
684     1, 5, 7, 3, 1, 1, 1, 1, 1, 1,
685     1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
686     1, 1, 1, 2, 3, 4, 4, 1, 2, 1,
687     1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
688     2, 2, 2, 2, 2, 2, 2, 2, 2, 1,
689     1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
690     1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
691     1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
692     1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
693     1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
694     1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
695     1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
696     1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
697     1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
698     1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
699     1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
700     1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
701     1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
702     1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
703     1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
704     1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
705     1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
706     1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
707     1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
708     1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
709     1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
710 schoenebeck 221 1, 1, 1, 1, 1, 1, 1, 1, 1, 2,
711     2, 3, 3, 1, 1, 1, 3, 3, 6, 7,
712     4, 4, 9, 6, 3, 9, 11, 7, 17, 30,
713     8, 4, 11, 12, 11, 10, 6, 29, 20, 19,
714     29, 19, 30, 20, 17, 28, 27, 25, 18, 17,
715     27, 17, 15, 18, 15, 10, 6, 5, 10, 5,
716     13, 4, 4
717 schoenebeck 35 };
718    
719     /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
720     STATE-NUM when YYTABLE doesn't specify something else to do. Zero
721     means the default is an error. */
722 schoenebeck 219 static const unsigned short yydefact[] =
723 schoenebeck 35 {
724 schoenebeck 219 0, 7, 8, 0, 0, 0, 0, 0, 0, 0,
725     0, 0, 0, 0, 5, 6, 0, 0, 0, 0,
726     0, 0, 0, 0, 0, 0, 24, 25, 0, 0,
727     0, 0, 0, 0, 0, 0, 0, 0, 0, 1,
728 schoenebeck 221 364, 365, 2, 0, 9, 216, 211, 209, 210, 119,
729 schoenebeck 219 120, 121, 122, 123, 124, 125, 126, 127, 128, 139,
730     140, 141, 142, 143, 144, 145, 146, 147, 148, 149,
731     150, 151, 152, 153, 154, 155, 156, 157, 158, 159,
732     160, 161, 162, 163, 164, 165, 166, 167, 168, 169,
733     170, 171, 172, 173, 174, 175, 176, 177, 178, 179,
734     180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
735     190, 201, 203, 204, 205, 206, 207, 208, 212, 213,
736     214, 215, 217, 218, 219, 220, 221, 222, 223, 224,
737     225, 226, 227, 228, 229, 230, 231, 232, 233, 234,
738     235, 236, 237, 238, 239, 240, 241, 242, 243, 244,
739     245, 246, 247, 248, 249, 250, 251, 252, 253, 254,
740     255, 256, 257, 258, 259, 260, 261, 262, 263, 264,
741     265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
742     275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
743     285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
744     295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
745     305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
746     315, 316, 317, 318, 319, 320, 321, 322, 323, 324,
747     325, 326, 327, 328, 329, 330, 331, 332, 333, 334,
748     335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
749     345, 346, 347, 348, 349, 350, 351, 352, 353, 354,
750 schoenebeck 221 355, 356, 363, 12, 129, 11, 112, 10, 0, 0,
751     0, 0, 0, 0, 0, 0, 0, 0, 0, 366,
752     0, 0, 367, 0, 0, 0, 0, 0, 374, 0,
753 schoenebeck 219 0, 3, 119, 120, 121, 122, 123, 124, 125, 126,
754     127, 128, 130, 117, 131, 132, 133, 134, 135, 136,
755     137, 138, 202, 191, 192, 193, 194, 195, 196, 197,
756     198, 199, 200, 113, 0, 13, 0, 0, 0, 0,
757     14, 0, 38, 43, 55, 0, 47, 0, 0, 0,
758     0, 0, 39, 0, 48, 0, 0, 0, 0, 0,
759     0, 15, 0, 0, 16, 0, 0, 0, 0, 0,
760     17, 90, 88, 89, 0, 18, 0, 0, 0, 0,
761     0, 0, 20, 0, 0, 0, 0, 0, 0, 0,
762     0, 0, 0, 0, 21, 26, 30, 29, 28, 27,
763     31, 22, 32, 36, 35, 34, 33, 37, 0, 0,
764 schoenebeck 221 0, 370, 371, 412, 0, 0, 0, 0, 118, 0,
765 schoenebeck 123 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
766     0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
767     0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
768     0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
769 schoenebeck 221 0, 0, 0, 0, 0, 0, 0, 0, 409, 0,
770 capela 143 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
771 senkov 155 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
772 schoenebeck 219 0, 0, 0, 0, 68, 70, 120, 121, 122, 123,
773     124, 125, 126, 127, 128, 71, 72, 0, 0, 0,
774     0, 0, 0, 0, 73, 0, 105, 0, 74, 0,
775     104, 19, 102, 0, 0, 0, 0, 0, 0, 65,
776 senkov 155 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
777 schoenebeck 219 0, 0, 0, 66, 111, 110, 0, 0, 0, 0,
778 schoenebeck 221 0, 23, 368, 0, 373, 0, 0, 0, 0, 0,
779 senkov 185 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
780     0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
781 schoenebeck 221 0, 0, 0, 0, 0, 0, 0, 358, 0, 357,
782     0, 0, 0, 0, 0, 411, 0, 0, 0, 0,
783 schoenebeck 219 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
784 schoenebeck 221 0, 0, 0, 0, 381, 0, 0, 0, 369, 0,
785     0, 0, 0, 0, 0, 0, 0, 56, 0, 0,
786     0, 86, 87, 58, 59, 60, 49, 0, 44, 0,
787     0, 0, 50, 0, 40, 0, 0, 0, 67, 0,
788     69, 0, 0, 0, 0, 0, 361, 360, 359, 362,
789     0, 103, 0, 93, 0, 0, 0, 0, 0, 0,
790 schoenebeck 219 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
791     0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
792 schoenebeck 221 0, 0, 386, 0, 0, 0, 0, 0, 0, 0,
793 schoenebeck 219 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
794     0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
795     0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
796 schoenebeck 221 0, 0, 0, 0, 0, 0, 375, 0, 377, 0,
797     0, 377, 0, 0, 0, 57, 45, 0, 53, 0,
798     41, 51, 0, 0, 0, 209, 210, 84, 106, 109,
799     0, 117, 108, 107, 0, 0, 0, 0, 0, 91,
800     0, 0, 0, 0, 0, 0, 75, 94, 0, 95,
801     77, 96, 79, 80, 97, 81, 98, 82, 99, 0,
802     0, 0, 83, 100, 101, 61, 0, 63, 0, 0,
803     0, 0, 0, 0, 0, 0, 380, 0, 0, 0,
804 schoenebeck 219 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
805 schoenebeck 221 0, 0, 0, 0, 0, 0, 0, 0, 0, 406,
806     0, 0, 0, 0, 0, 0, 0, 0, 376, 0,
807     0, 0, 407, 0, 46, 54, 52, 42, 0, 0,
808     85, 0, 0, 114, 0, 0, 0, 0, 92, 0,
809     0, 0, 0, 76, 0, 62, 64, 0, 0, 0,
810     0, 0, 0, 0, 0, 0, 0, 115, 116, 0,
811     0, 385, 0, 0, 0, 0, 0, 0, 0, 0,
812 schoenebeck 219 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
813 schoenebeck 221 0, 0, 372, 0, 0, 0, 0, 78, 382, 0,
814     0, 384, 0, 0, 0, 0, 0, 0, 0, 0,
815     0, 0, 0, 0, 0, 0, 0, 405, 0, 383,
816 schoenebeck 219 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
817 schoenebeck 221 0, 0, 0, 0, 0, 0, 0, 410, 0, 0,
818     0, 0, 0, 0, 0, 0, 408, 0, 0, 0,
819 schoenebeck 219 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
820 schoenebeck 221 0, 0, 0, 0, 0, 0, 0, 402, 0, 0,
821 schoenebeck 219 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
822     0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
823     0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
824 schoenebeck 221 0, 0, 0, 0, 0, 378, 0, 399, 401, 0,
825     0, 399, 0, 0, 0, 0, 0, 0, 0, 0,
826     402, 404, 0, 0, 0, 0, 0, 398, 0, 0,
827     0, 0, 0, 0, 0, 0, 0, 0, 0, 389,
828     391, 0, 0, 0, 0, 389, 0, 0, 0, 0,
829     0, 394, 0, 393, 388, 0, 0, 0, 0, 0,
830     0, 0, 0, 0, 403, 0, 0, 0, 0, 0,
831 schoenebeck 219 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
832 schoenebeck 221 0, 0, 393, 0, 0, 0, 0, 0, 0, 0,
833 schoenebeck 219 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
834 schoenebeck 221 0, 0, 0, 0, 397, 0, 0, 0, 0, 0,
835     0, 0, 0, 0, 0, 0, 0, 0, 400, 0,
836     396, 0, 0, 0, 395, 0, 0, 390, 0, 387,
837     392, 379
838 schoenebeck 35 };
839    
840     /* YYDEFGOTO[NTERM-NUM]. */
841     static const short yydefgoto[] =
842     {
843 schoenebeck 219 -1, 12, 13, 14, 15, 384, 391, 330, 372, 351,
844 schoenebeck 221 354, 365, 519, 638, 620, 360, 504, 508, 766, 768,
845     770, 773, 775, 777, 782, 511, 650, 509, 505, 747,
846     533, 748, 749, 750, 264, 512, 266, 578, 753, 695,
847     42, 43, 16, 17, 18, 19, 20, 21, 507, 22,
848     23, 24, 25, 325, 332, 333, 334, 386, 387, 388,
849     389, 366, 335, 374, 336, 337, 338, 339, 340, 341,
850     522, 342, 376, 343, 344, 345, 346, 347, 348, 525,
851     526, 527, 528, 621, 622, 26, 390, 378, 27
852 schoenebeck 35 };
853    
854     /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
855     STATE-NUM. */
856 schoenebeck 221 #define YYPACT_NINF -698
857 schoenebeck 123 static const short yypact[] =
858 schoenebeck 35 {
859 schoenebeck 221 54, -698, -698, 32, 16, 73, 76, -2, 24, 80,
860     63, 45, 104, -196, 1568, -698, -102, -102, -102, -102,
861     -102, -102, -102, -102, -102, -102, -102, -698, 122, 155,
862     193, 212, 214, 230, 225, -5, 215, 234, 218, -698,
863     -698, -698, -698, 31, -698, -698, -698, -698, -698, -698,
864     209, 209, 209, 209, 209, 209, 209, 209, 209, -698,
865     -698, -698, -698, -698, -698, -698, -698, -698, -698, -698,
866     -698, -698, -698, -698, -698, -698, -698, -698, -698, -698,
867     -698, -698, -698, -698, -698, -698, -698, -698, -698, -698,
868     -698, -698, -698, -698, -698, -698, -698, -698, -698, -698,
869     -698, -698, -698, -698, -698, -698, -698, -698, -698, -698,
870     -698, -698, -698, -698, -698, -698, -698, -698, -698, -698,
871     -698, -698, -698, -698, -698, -698, -698, -698, -698, -698,
872     -698, -698, -698, -698, -698, -698, -698, -698, -698, -698,
873     -698, -698, -698, -698, -698, -698, -698, -698, -698, -698,
874     -698, -698, -698, -698, -698, -698, -698, -698, -698, -698,
875     -698, -698, -698, -698, -698, -698, -698, -698, -698, -698,
876     -698, -698, -698, -698, -698, -698, -698, -698, -698, -698,
877     -698, -698, -698, -698, -698, -698, -698, -698, -698, -698,
878     -698, -698, -698, -698, -698, -698, -698, -698, -698, -698,
879     -698, -698, -698, -698, -698, -698, -698, -698, -698, -698,
880     -698, -698, -698, -698, -698, -698, -698, -698, -698, -698,
881     -698, -698, -698, -698, -698, -698, -698, -698, -698, -698,
882     -698, -698, -698, -698, -698, -698, -698, -698, -698, -698,
883     -698, -698, -698, -698, -698, -698, -698, -698, -698, -698,
884     -698, -698, -698, -698, -698, -698, -698, -698, -698, -698,
885     -698, -698, -698, 2230, -698, -698, -698, -698, 236, 85,
886     93, 93, 64, 30, 236, 90, 61, 61, 236, -698,
887     239, 221, -698, 222, 240, 223, 232, 243, -698, 231,
888     224, -698, -698, -698, -698, -698, -698, -698, -698, -698,
889     -698, -698, 209, -698, 209, 209, 209, 209, 209, 209,
890     209, 209, -698, -698, -698, -698, -698, -698, -698, -698,
891     -698, -698, -698, -698, 241, -698, 101, 244, 237, 245,
892     -698, -102, -698, -698, -698, -102, -698, -102, -102, -102,
893     -102, -102, -698, -102, -698, -102, -102, -102, -102, 235,
894     246, -698, -102, -102, -698, -102, -102, 238, 249, 251,
895     -698, -698, -698, -698, 250, -698, -102, -102, -102, 242,
896     255, 256, -698, -102, -102, -102, -102, -102, -102, 247,
897     252, 258, 233, 254, -698, -698, -698, -698, -698, -698,
898     -698, -698, -698, -698, -698, -698, -698, -698, -102, 253,
899     267, -698, -698, -698, 248, 266, 268, 270, -698, 273,
900     272, 286, 287, 282, 288, 60, 281, 281, 281, 281,
901     281, 281, 281, 281, 281, 281, 281, 289, 290, 2230,
902     2230, 226, 226, 291, 295, 293, 279, -28, 2230, 226,
903     296, 283, 297, 20, 226, 226, 226, 226, 2448, 298,
904     299, 280, 285, 306, 226, 302, 305, 317, -698, 303,
905     309, 311, 320, 321, 318, 322, 324, -102, -102, -102,
906     -102, -102, -102, -102, -102, -102, -102, -102, -102, -102,
907     -102, -102, 325, 326, 1789, 1789, 209, 209, 209, 209,
908     209, 209, 209, 209, 209, -698, -698, 327, 328, 331,
909     323, 335, 1789, 1789, -698, -102, -698, -102, -698, -102,
910     2230, -698, -698, 332, 336, 343, 333, 344, 340, -698,
911     -102, -102, -102, -102, -102, -102, -102, -102, -102, -102,
912     -102, -102, -102, -698, 2230, -698, 350, 342, 356, 355,
913     358, -698, -698, 337, -698, 354, 361, 351, 352, 359,
914     360, 362, 301, 226, 1, 226, 226, 2230, 226, 2230,
915     2230, 226, 226, 226, 226, 2230, 2230, 226, 353, 304,
916     2230, 2230, 363, 365, 310, 348, 366, 2230, 1126, -698,
917     1347, 226, -74, 226, 367, -698, 312, 369, 373, 372,
918     226, 226, 226, 226, 226, 226, 226, 226, 226, 2230,
919     226, 2230, 226, 380, -698, 381, 386, 383, -698, 368,
920     371, 385, 334, 390, 387, 388, 389, -698, 370, 391,
921     -102, -698, -698, -698, -698, -698, -698, 1789, 2230, -102,
922     -102, -102, -698, 1789, 2230, -102, 338, 393, -102, 2666,
923     -102, 339, 392, 394, 378, 341, -698, 2230, -698, -698,
924     -102, -698, -102, -698, 347, 395, 397, 398, 399, -102,
925     -102, -102, -102, -102, -102, -102, -102, -102, 2884, -102,
926     3102, -102, 376, 396, 406, 357, 416, 402, 410, 408,
927     422, 413, -698, 412, 407, 411, 226, 2230, 226, 226,
928     226, 2230, 226, 415, 417, 2230, 2010, 418, 420, 421,
929     423, 424, 226, 226, 419, 439, 442, 400, 441, 226,
930     226, 2230, 226, 226, 226, 2230, 226, 199, 2010, 2230,
931     2010, 2230, 401, 446, 404, 465, -698, 467, -698, 449,
932     469, 458, 463, 499, 502, -698, 1789, -102, -698, -102,
933     1789, -698, 485, 491, 3320, 209, 209, -698, 2230, -698,
934     119, 21, -698, -698, 487, 458, 493, 505, 496, -698,
935     -102, 492, 498, 444, 503, 511, -698, -698, -102, -698,
936     -698, 2230, -698, -698, -698, -698, -698, -698, 2230, -102,
937     209, 209, -698, -698, -698, -698, 3538, -698, 3756, 512,
938     516, 517, 504, 518, 501, 519, -698, 507, 506, 521,
939     2230, 2230, 2230, 2230, 509, 513, 2010, 171, 187, 209,
940     515, 520, 508, 533, 226, 522, 523, 524, 526, -698,
941     226, 226, 2010, 2010, 534, 531, 532, 525, -698, 536,
942     477, 535, -698, 539, -102, 2230, 2230, -102, 538, 537,
943     -698, 209, 209, 209, 540, 541, 542, 557, -698, 543,
944     544, 545, 547, -698, -102, -698, -698, 548, 560, 546,
945     554, 549, 120, 510, 552, 553, 514, 209, 209, 555,
946     528, -698, 561, 556, 551, 558, 559, 226, 563, 564,
947     568, 566, 567, 562, 570, 579, 116, 588, 572, 586,
948     573, 590, -698, 575, 157, 580, 577, -698, -698, 582,
949     585, -698, 574, 603, 601, 605, 4, 595, 604, 576,
950     607, 578, 608, 581, 609, 600, 596, 583, 597, -698,
951     207, 610, 611, 615, 606, 616, 621, 613, 622, 619,
952     623, 624, 211, 626, 625, 630, 40, -698, 636, 71,
953     614, 637, 584, 644, 634, 640, -698, 657, 654, 659,
954     658, 660, 661, 662, 650, 602, 666, 665, 651, 674,
955     655, 675, 617, 687, 685, 692, 691, 627, 677, 694,
956     678, 698, 701, 681, 702, 627, 12, 703, 688, 693,
957     699, 705, 690, 700, 697, 706, 712, 704, 708, 716,
958     721, 718, 725, 707, 723, 728, 726, 710, 722, 720,
959     733, 729, 741, 740, 727, -698, 730, 732, 684, 748,
960     749, -698, 753, 732, 743, 755, 695, 760, 746, 750,
961     -698, -698, 758, 762, 747, 751, 752, -698, 754, 756,
962     763, 764, 767, 773, 768, 769, 781, 782, 776, 774,
963     735, 778, 777, 797, 798, -698, 774, 788, 736, 802,
964     790, -698, 796, 739, -698, 795, 791, 742, 799, 805,
965     739, 803, 804, 815, -698, 807, 820, 806, 823, 827,
966     819, 828, 829, 821, 830, 814, 765, 816, 822, 824,
967     825, 826, -698, 831, 841, 843, 836, 845, 846, 847,
968     848, 853, 842, 839, 838, 851, 844, 850, 852, 854,
969     856, 857, 863, 868, -698, 869, 870, 871, 858, 859,
970     862, 864, 865, 866, 867, 878, 881, 872, -698, 883,
971     -698, 884, 874, 875, -698, 876, 877, -698, 880, -698,
972     -698, -698
973 schoenebeck 35 };
974    
975     /* YYPGOTO[NTERM-NUM]. */
976 senkov 135 static const short yypgoto[] =
977 schoenebeck 35 {
978 schoenebeck 221 -698, -698, -698, -698, -698, -698, -698, -698, -698, -698,
979     -698, -698, -698, -570, -698, -698, -698, -698, -658, 87,
980     -698, 92, 37, -698, -698, -439, 219, 364, 345, -697,
981     -698, 316, 201, 13, -10, -14, 292, 425, -410, -12,
982     886, -698, -698, -698, -698, -698, -698, -698, -698, -698,
983     -698, -698, -698, -156, -698, -698, -131, -255, -242, -241,
984     -240, -698, 663, -698, 652, -254, -698, -698, 648, 489,
985     -698, -698, -698, 667, 668, -252, -698, -698, 490, -698,
986     -698, -698, -698, -698, -698, -698, 653, -698, -698
987 schoenebeck 35 };
988    
989     /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If
990     positive, shift that token. If negative, reduce the rule which
991     number is the opposite. If zero, do what YYDEFACT says.
992     If YYTABLE_NINF, syntax error. */
993 schoenebeck 219 #define YYTABLE_NINF -130
994 schoenebeck 35 static const short yytable[] =
995     {
996 schoenebeck 221 265, 640, 267, 501, 268, 269, 270, 271, 272, 273,
997     274, 275, 276, 277, 278, 541, 352, 355, 353, 356,
998     618, 785, 393, 787, 32, 286, 924, 506, 40, 41,
999     33, 287, 996, 947, 619, 394, 395, 396, 516, 925,
1000     303, 303, 303, 303, 303, 303, 303, 303, 303, 997,
1001     517, 29, 328, 28, 772, 1, 364, 2, 779, 518,
1002     956, 910, 34, 302, 304, 305, 306, 307, 308, 309,
1003     310, 311, 3, 957, 4, 5, 38, 958, 6, 379,
1004     379, 358, 357, 7, 358, 36, 380, 380, 8, 9,
1005     10, 381, 11, 960, 359, 30, 382, 382, 31, 383,
1006     383, 37, 35, 326, 39, 327, 961, 328, 369, 840,
1007     324, 349, 370, 331, 617, 329, 623, 624, 368, 373,
1008     371, 262, 398, 350, 809, 855, 856, 292, 293, 294,
1009     295, 296, 297, 298, 299, 300, 301, 906, 883, 410,
1010     411, 361, 884, 279, 653, 385, 392, 502, 503, 907,
1011     885, 659, 660, 661, 662, 663, 664, 665, 666, 667,
1012     467, 471, 472, 473, 474, 475, 476, 477, 478, 479,
1013     480, 481, 506, 468, 469, 470, 841, 280, 914, 292,
1014     293, 294, 295, 296, 297, 298, 299, 300, 301, 520,
1015     915, 523, 842, 502, 503, 292, 293, 294, 295, 296,
1016     297, 298, 299, 300, 301, 780, 781, 292, 486, 487,
1017     488, 489, 490, 491, 492, 493, 494, 292, 293, 294,
1018     295, 296, 297, 298, 299, 300, 301, 938, 939, 281,
1019     834, 951, 952, 837, 292, 486, 487, 488, 489, 490,
1020     491, 492, 493, 494, -129, -129, -129, 735, 284, 282,
1021     283, 285, 288, 289, 290, 40, 324, 399, 400, 401,
1022     403, 402, 407, 759, 404, 405, 409, 406, 413, 412,
1023     452, 414, 428, 427, 434, 441, 433, 435, -4, -4,
1024     440, 436, 442, 450, 451, 449, 453, 457, 459, 460,
1025     455, 461, 408, 462, 408, 408, 408, 408, 408, 408,
1026     408, 408, 456, 458, 463, 464, 465, 380, 514, 466,
1027     482, 483, 497, 498, 499, 500, 538, 513, 515, 415,
1028     539, 536, 537, 416, 542, 417, 418, 419, 420, 421,
1029     263, 422, 540, 423, 424, 425, 426, 543, 545, 544,
1030     429, 430, 547, 431, 432, 546, 548, 549, 551, 550,
1031     552, 568, 569, 572, 437, 438, 439, 574, 584, 573,
1032     575, 443, 444, 445, 446, 447, 448, 576, 585, 586,
1033     588, 587, 589, 603, 604, 848, 605, 606, 607, 608,
1034     609, 610, 611, 644, 612, 636, 454, 676, 613, 616,
1035     656, 614, 637, 615, 657, 641, 642, 645, 643, 654,
1036     655, 658, 672, 673, 674, 675, 677, 678, 680, 681,
1037     682, 722, 684, 685, 698, 683, 700, 495, 496, 694,
1038     699, 705, 679, 706, 707, 723, 693, 697, 727, 701,
1039     529, 530, 531, 532, 535, 704, 724, 708, 726, 728,
1040     729, 730, 731, 732, 733, 725, 734, 742, 743, 755,
1041     754, 761, 756, 757, 758, 553, 554, 555, 556, 557,
1042     558, 559, 560, 561, 562, 563, 564, 565, 566, 567,
1043     762, 765, 570, 571, 763, 790, 303, 303, 303, 303,
1044     303, 303, 303, 303, 303, 792, 793, 794, 764, 789,
1045     579, 579, 791, 581, 796, 582, 797, 583, 795, 302,
1046     304, 305, 306, 307, 308, 309, 310, 311, 590, 591,
1047     592, 593, 594, 595, 596, 597, 598, 599, 600, 601,
1048     602, 798, 799, 804, 805, 810, 811, 812, 813, 818,
1049     815, 816, 817, 819, 825, 824, 827, 826, 829, 846,
1050     828, 830, 832, 833, 626, 831, 838, 629, 630, 631,
1051     632, 839, 844, 635, 847, 323, 851, 852, 845, 849,
1052     857, 850, 858, 860, 859, 862, 648, 651, 648, 861,
1053     864, 865, 863, 869, 866, 872, 873, 878, 870, 871,
1054     876, 874, 879, 875, 880, 881, 669, 882, 671, 887,
1055     892, 888, 898, 890, 893, 895, 899, 896, 886, 900,
1056     903, 904, 889, 901, 902, 905, 908, 910, 686, 909,
1057     911, 912, 913, 916, 917, 687, 891, 688, 689, 690,
1058     918, 691, 919, 692, 921, 922, 923, 926, 927, 929,
1059     931, 933, 934, 937, 935, 946, 940, 941, 702, 894,
1060     703, 942, 944, 947, 949, 943, 962, 709, 710, 711,
1061     712, 713, 714, 715, 716, 717, 945, 719, 948, 721,
1062     954, 959, 920, 950, 928, 953, 930, 955, 963, 932,
1063     965, 936, 964, 966, 737, 738, 739, 967, 741, 968,
1064     969, 970, 752, 973, 971, 972, 751, 975, 974, 651,
1065     976, 977, 980, 979, 981, 767, 769, 978, 767, 774,
1066     776, 982, 767, 784, 752, 983, 752, 751, 751, 984,
1067     751, 985, 986, 987, 990, 988, 989, 991, 992, 993,
1068     994, 998, 995, 999, 800, 801, 1000, 802, 803, 1003,
1069     1001, 1002, 1004, 1005, 1007, 303, 303, 1006, 1014, 1008,
1070     408, 1009, 1010, 1011, 1012, 484, 485, 1013, 814, 1015,
1071     1016, 1017, 1018, 1019, 510, 1021, 820, 1020, 807, 808,
1072     1022, 1023, 1024, 1026, 534, 1025, 1029, 821, 1027, 1030,
1073     303, 303, 1028, 1031, 1032, 1033, 323, 323, 1035, 1036,
1074     1038, 1037, 1040, 1034, 1039, 1045, 1046, 1043, 1041, 1047,
1075     1042, 1044, 752, 807, 808, 1048, 751, 408, 408, 303,
1076     1050, 1049, 323, 1051, 1052, 1053, 769, 774, 752, 752,
1077     1054, 1056, 751, 751, 1057, 1058, 1059, 1060, 577, 577,
1078     1062, 1063, 843, 1055, 1061, 1064, 323, 1065, 1066, 1067,
1079     1068, 303, 303, 408, 1069, 1070, 1071, 1073, 1075, 1072,
1080     1074, 1079, 877, 1076, 1077, 1078, 1080, 1081, 1083, 1084,
1081     1082, 1086, 1087, 1085, 867, 868, 1090, 408, 408, 1092,
1082     1089, 1088, 1094, 776, 1093, 1097, 1091, 1095, 1096, 323,
1083     1098, 1099, 1100, 510, 1101, 627, 628, 1102, 1108, 1104,
1084     1105, 633, 634, 1109, 1107, 1110, 639, 639, 1103, 1106,
1085     1111, 1112, 1113, 1114, 647, 1115, 647, 1117, 1116, 1118,
1086     1122, 1120, 1119, 1123, 1121, 1125, 1126, 853, 1124, 1127,
1087     1128, 1129, 1130, 854, 897, 668, 1131, 670, 783, 323,
1088     323, 625, 760, 375, 362, 323, 323, 652, 580, 291,
1089     397, 323, 521, 524, 0, 0, 367, 0, 0, 323,
1090     363, 0, 377, 0, 0, 0, 0, 0, 0, 0,
1091 schoenebeck 219 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1092 schoenebeck 221 323, 0, 323, 0, 0, 0, 0, 0, 0, 0,
1093 schoenebeck 219 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1094     0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1095     0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1096 schoenebeck 221 0, 0, 0, 736, 0, 0, 0, 740, 0, 0,
1097     0, 744, 0, 0, 0, 0, 0, 0, 0, 0,
1098     0, 0, 0, 0, 0, 0, 0, 771, 323, 0,
1099     0, 778, 323, 0, 0, 786, 323, 788, 0, 0,
1100     323, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1101 schoenebeck 219 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1102 schoenebeck 221 0, 0, 0, 323, 0, 0, 0, 0, 0, 0,
1103     323, 0, 0, 0, 0, 0, 0, 0, 323, 0,
1104     323, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1105 schoenebeck 219 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1106     0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1107 schoenebeck 221 0, 0, 0, 0, 0, 0, 639, 835, 836, 639,
1108     0, 0, 0, 0, 0, 0, 0, 323, 323, 312,
1109     45, 46, 47, 48, 313, 314, 315, 316, 317, 318,
1110     319, 320, 321, 322, 59, 60, 61, 62, 63, 64,
1111 schoenebeck 219 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
1112     75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
1113     85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
1114     95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
1115     105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
1116     115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
1117     125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
1118     135, 136, 137, 138, 139, 140, 141, 142, 143, 144,
1119     145, 146, 147, 148, 149, 150, 151, 152, 153, 154,
1120     155, 156, 157, 158, 159, 160, 161, 162, 163, 164,
1121     165, 166, 167, 168, 169, 170, 171, 172, 173, 174,
1122     175, 176, 177, 178, 179, 180, 181, 182, 183, 184,
1123     185, 186, 187, 188, 189, 190, 191, 192, 193, 194,
1124     195, 196, 197, 198, 199, 200, 201, 202, 203, 204,
1125     205, 206, 207, 208, 209, 210, 211, 212, 213, 214,
1126     215, 216, 217, 218, 219, 220, 221, 222, 223, 224,
1127     225, 226, 227, 228, 229, 230, 231, 232, 233, 234,
1128     235, 236, 237, 238, 239, 240, 241, 242, 243, 244,
1129     245, 246, 247, 248, 249, 250, 251, 252, 253, 254,
1130 schoenebeck 221 255, 256, 257, 258, 259, 260, 261, 646, 0, 262,
1131     312, 45, 46, 47, 48, 313, 314, 315, 316, 317,
1132     318, 319, 320, 321, 322, 59, 60, 61, 62, 63,
1133     64, 65, 66, 67, 68, 69, 70, 71, 72, 73,
1134     74, 75, 76, 77, 78, 79, 80, 81, 82, 83,
1135     84, 85, 86, 87, 88, 89, 90, 91, 92, 93,
1136     94, 95, 96, 97, 98, 99, 100, 101, 102, 103,
1137     104, 105, 106, 107, 108, 109, 110, 111, 112, 113,
1138     114, 115, 116, 117, 118, 119, 120, 121, 122, 123,
1139     124, 125, 126, 127, 128, 129, 130, 131, 132, 133,
1140     134, 135, 136, 137, 138, 139, 140, 141, 142, 143,
1141     144, 145, 146, 147, 148, 149, 150, 151, 152, 153,
1142     154, 155, 156, 157, 158, 159, 160, 161, 162, 163,
1143     164, 165, 166, 167, 168, 169, 170, 171, 172, 173,
1144     174, 175, 176, 177, 178, 179, 180, 181, 182, 183,
1145     184, 185, 186, 187, 188, 189, 190, 191, 192, 193,
1146     194, 195, 196, 197, 198, 199, 200, 201, 202, 203,
1147     204, 205, 206, 207, 208, 209, 210, 211, 212, 213,
1148     214, 215, 216, 217, 218, 219, 220, 221, 222, 223,
1149     224, 225, 226, 227, 228, 229, 230, 231, 232, 233,
1150     234, 235, 236, 237, 238, 239, 240, 241, 242, 243,
1151     244, 245, 246, 247, 248, 249, 250, 251, 252, 253,
1152     254, 255, 256, 257, 258, 259, 260, 261, 0, 649,
1153     262, 44, 45, 46, 47, 48, 49, 50, 51, 52,
1154     53, 54, 55, 56, 57, 58, 59, 60, 61, 62,
1155     63, 64, 65, 66, 67, 68, 69, 70, 71, 72,
1156     73, 74, 75, 76, 77, 78, 79, 80, 81, 82,
1157     83, 84, 85, 86, 87, 88, 89, 90, 91, 92,
1158     93, 94, 95, 96, 97, 98, 99, 100, 101, 102,
1159     103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
1160     113, 114, 115, 116, 117, 118, 119, 120, 121, 122,
1161     123, 124, 125, 126, 127, 128, 129, 130, 131, 132,
1162     133, 134, 135, 136, 137, 138, 139, 140, 141, 142,
1163     143, 144, 145, 146, 147, 148, 149, 150, 151, 152,
1164     153, 154, 155, 156, 157, 158, 159, 160, 161, 162,
1165     163, 164, 165, 166, 167, 168, 169, 170, 171, 172,
1166     173, 174, 175, 176, 177, 178, 179, 180, 181, 182,
1167     183, 184, 185, 186, 187, 188, 189, 190, 191, 192,
1168     193, 194, 195, 196, 197, 198, 199, 200, 201, 202,
1169     203, 204, 205, 206, 207, 208, 209, 210, 211, 212,
1170     213, 214, 215, 216, 217, 218, 219, 220, 221, 222,
1171     223, 224, 225, 226, 227, 228, 229, 230, 231, 232,
1172     233, 234, 235, 236, 237, 238, 239, 240, 241, 242,
1173     243, 244, 245, 246, 247, 248, 249, 250, 251, 252,
1174     253, 254, 255, 256, 257, 258, 259, 260, 261, 0,
1175     0, 262, 312, 45, 46, 47, 48, 313, 314, 315,
1176     316, 317, 318, 319, 320, 321, 322, 59, 60, 61,
1177     62, 63, 64, 65, 66, 67, 68, 69, 70, 71,
1178     72, 73, 74, 75, 76, 77, 78, 79, 80, 81,
1179     82, 83, 84, 85, 86, 87, 88, 89, 90, 91,
1180     92, 93, 94, 95, 96, 97, 98, 99, 100, 101,
1181     102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
1182     112, 113, 114, 115, 116, 117, 118, 119, 120, 121,
1183     122, 123, 124, 125, 126, 127, 128, 129, 130, 131,
1184     132, 133, 134, 135, 136, 137, 138, 139, 140, 141,
1185     142, 143, 144, 145, 146, 147, 148, 149, 150, 151,
1186     152, 153, 154, 155, 156, 157, 158, 159, 160, 161,
1187     162, 163, 164, 165, 166, 167, 168, 169, 170, 171,
1188     172, 173, 174, 175, 176, 177, 178, 179, 180, 181,
1189     182, 183, 184, 185, 186, 187, 188, 189, 190, 191,
1190     192, 193, 194, 195, 196, 197, 198, 199, 200, 201,
1191     202, 203, 204, 205, 206, 207, 208, 209, 210, 211,
1192     212, 213, 214, 215, 216, 217, 218, 219, 220, 221,
1193     222, 223, 224, 225, 226, 227, 228, 229, 230, 231,
1194     232, 233, 234, 235, 236, 237, 238, 239, 240, 241,
1195     242, 243, 244, 245, 246, 247, 248, 249, 250, 251,
1196     252, 253, 254, 255, 256, 257, 258, 259, 260, 261,
1197     0, 0, 262, 312, 45, 46, 745, 746, 49, 50,
1198     51, 52, 53, 54, 55, 56, 57, 58, 59, 60,
1199     61, 62, 63, 64, 65, 66, 67, 68, 69, 70,
1200     71, 72, 73, 74, 75, 76, 77, 78, 79, 80,
1201     81, 82, 83, 84, 85, 86, 87, 88, 89, 90,
1202     91, 92, 93, 94, 95, 96, 97, 98, 99, 100,
1203     101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
1204     111, 112, 113, 114, 115, 116, 117, 118, 119, 120,
1205     121, 122, 123, 124, 125, 126, 127, 128, 129, 130,
1206     131, 132, 133, 134, 135, 136, 137, 138, 139, 140,
1207     141, 142, 143, 144, 145, 146, 147, 148, 149, 150,
1208     151, 152, 153, 154, 155, 156, 157, 158, 159, 160,
1209     161, 162, 163, 164, 165, 166, 167, 168, 169, 170,
1210     171, 172, 173, 174, 175, 176, 177, 178, 179, 180,
1211     181, 182, 183, 184, 185, 186, 187, 188, 189, 190,
1212     191, 192, 193, 194, 195, 196, 197, 198, 199, 200,
1213     201, 202, 203, 204, 205, 206, 207, 208, 209, 210,
1214     211, 212, 213, 214, 215, 216, 217, 218, 219, 220,
1215     221, 222, 223, 224, 225, 226, 227, 228, 229, 230,
1216     231, 232, 233, 234, 235, 236, 237, 238, 239, 240,
1217     241, 242, 243, 244, 245, 246, 247, 248, 249, 250,
1218     251, 252, 253, 254, 255, 256, 257, 258, 259, 260,
1219     261, 502, 503, 312, 45, 46, 47, 48, 313, 314,
1220     315, 316, 317, 318, 319, 320, 321, 322, 59, 60,
1221     61, 62, 63, 64, 65, 66, 67, 68, 69, 70,
1222     71, 72, 73, 74, 75, 76, 77, 78, 79, 80,
1223     81, 82, 83, 84, 85, 86, 87, 88, 89, 90,
1224     91, 92, 93, 94, 95, 96, 97, 98, 99, 100,
1225     101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
1226     111, 112, 113, 114, 115, 116, 117, 118, 119, 120,
1227     121, 122, 123, 124, 125, 126, 127, 128, 129, 130,
1228     131, 132, 133, 134, 135, 136, 137, 138, 139, 140,
1229     141, 142, 143, 144, 145, 146, 147, 148, 149, 150,
1230     151, 152, 153, 154, 155, 156, 157, 158, 159, 160,
1231     161, 162, 163, 164, 165, 166, 167, 168, 169, 170,
1232     171, 172, 173, 174, 175, 176, 177, 178, 179, 180,
1233     181, 182, 183, 184, 185, 186, 187, 188, 189, 190,
1234     191, 192, 193, 194, 195, 196, 197, 198, 199, 200,
1235     201, 202, 203, 204, 205, 206, 207, 208, 209, 210,
1236     211, 212, 213, 214, 215, 216, 217, 218, 219, 220,
1237     221, 222, 223, 224, 225, 226, 227, 228, 229, 230,
1238     231, 232, 233, 234, 235, 236, 237, 238, 239, 240,
1239     241, 242, 243, 244, 245, 246, 247, 248, 249, 250,
1240     251, 252, 253, 254, 255, 256, 257, 258, 259, 260,
1241     261, 312, 45, 46, 47, 48, 49, 50, 51, 52,
1242     53, 54, 55, 56, 57, 58, 59, 60, 61, 62,
1243     63, 64, 65, 66, 67, 68, 69, 70, 71, 72,
1244     73, 74, 75, 76, 77, 78, 79, 80, 81, 82,
1245     83, 84, 85, 86, 87, 88, 89, 90, 91, 92,
1246     93, 94, 95, 96, 97, 98, 99, 100, 101, 102,
1247     103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
1248     113, 114, 115, 116, 117, 118, 119, 120, 121, 122,
1249     123, 124, 125, 126, 127, 128, 129, 130, 131, 132,
1250     133, 134, 135, 136, 137, 138, 139, 140, 141, 142,
1251     143, 144, 145, 146, 147, 148, 149, 150, 151, 152,
1252     153, 154, 155, 156, 157, 158, 159, 160, 161, 162,
1253     163, 164, 165, 166, 167, 168, 169, 170, 171, 172,
1254     173, 174, 175, 176, 177, 178, 179, 180, 181, 182,
1255     183, 184, 185, 186, 187, 188, 189, 190, 191, 192,
1256     193, 194, 195, 196, 197, 198, 199, 200, 201, 202,
1257     203, 204, 205, 206, 207, 208, 209, 210, 211, 212,
1258     213, 214, 215, 216, 217, 218, 219, 220, 221, 222,
1259     223, 224, 225, 226, 227, 228, 229, 230, 231, 232,
1260     233, 234, 235, 236, 237, 238, 239, 240, 241, 242,
1261     243, 244, 245, 246, 247, 248, 249, 250, 251, 252,
1262     253, 254, 255, 256, 257, 258, 259, 260, 261, 312,
1263     696, 46, 47, 48, 313, 314, 315, 316, 317, 318,
1264 schoenebeck 219 319, 320, 321, 322, 59, 60, 61, 62, 63, 64,
1265     65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
1266     75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
1267     85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
1268     95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
1269     105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
1270     115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
1271     125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
1272     135, 136, 137, 138, 139, 140, 141, 142, 143, 144,
1273     145, 146, 147, 148, 149, 150, 151, 152, 153, 154,
1274     155, 156, 157, 158, 159, 160, 161, 162, 163, 164,
1275     165, 166, 167, 168, 169, 170, 171, 172, 173, 174,
1276     175, 176, 177, 178, 179, 180, 181, 182, 183, 184,
1277     185, 186, 187, 188, 189, 190, 191, 192, 193, 194,
1278     195, 196, 197, 198, 199, 200, 201, 202, 203, 204,
1279     205, 206, 207, 208, 209, 210, 211, 212, 213, 214,
1280     215, 216, 217, 218, 219, 220, 221, 222, 223, 224,
1281     225, 226, 227, 228, 229, 230, 231, 232, 233, 234,
1282     235, 236, 237, 238, 239, 240, 241, 242, 243, 244,
1283     245, 246, 247, 248, 249, 250, 251, 252, 253, 254,
1284 schoenebeck 221 255, 256, 257, 258, 259, 260, 261, 312, 718, 46,
1285     47, 48, 313, 314, 315, 316, 317, 318, 319, 320,
1286     321, 322, 59, 60, 61, 62, 63, 64, 65, 66,
1287     67, 68, 69, 70, 71, 72, 73, 74, 75, 76,
1288     77, 78, 79, 80, 81, 82, 83, 84, 85, 86,
1289     87, 88, 89, 90, 91, 92, 93, 94, 95, 96,
1290     97, 98, 99, 100, 101, 102, 103, 104, 105, 106,
1291     107, 108, 109, 110, 111, 112, 113, 114, 115, 116,
1292     117, 118, 119, 120, 121, 122, 123, 124, 125, 126,
1293     127, 128, 129, 130, 131, 132, 133, 134, 135, 136,
1294     137, 138, 139, 140, 141, 142, 143, 144, 145, 146,
1295     147, 148, 149, 150, 151, 152, 153, 154, 155, 156,
1296     157, 158, 159, 160, 161, 162, 163, 164, 165, 166,
1297     167, 168, 169, 170, 171, 172, 173, 174, 175, 176,
1298     177, 178, 179, 180, 181, 182, 183, 184, 185, 186,
1299     187, 188, 189, 190, 191, 192, 193, 194, 195, 196,
1300     197, 198, 199, 200, 201, 202, 203, 204, 205, 206,
1301     207, 208, 209, 210, 211, 212, 213, 214, 215, 216,
1302     217, 218, 219, 220, 221, 222, 223, 224, 225, 226,
1303     227, 228, 229, 230, 231, 232, 233, 234, 235, 236,
1304     237, 238, 239, 240, 241, 242, 243, 244, 245, 246,
1305     247, 248, 249, 250, 251, 252, 253, 254, 255, 256,
1306     257, 258, 259, 260, 261, 312, 720, 46, 47, 48,
1307     313, 314, 315, 316, 317, 318, 319, 320, 321, 322,
1308     59, 60, 61, 62, 63, 64, 65, 66, 67, 68,
1309     69, 70, 71, 72, 73, 74, 75, 76, 77, 78,
1310     79, 80, 81, 82, 83, 84, 85, 86, 87, 88,
1311     89, 90, 91, 92, 93, 94, 95, 96, 97, 98,
1312     99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
1313     109, 110, 111, 112, 113, 114, 115, 116, 117, 118,
1314     119, 120, 121, 122, 123, 124, 125, 126, 127, 128,
1315     129, 130, 131, 132, 133, 134, 135, 136, 137, 138,
1316     139, 140, 141, 142, 143, 144, 145, 146, 147, 148,
1317     149, 150, 151, 152, 153, 154, 155, 156, 157, 158,
1318     159, 160, 161, 162, 163, 164, 165, 166, 167, 168,
1319     169, 170, 171, 172, 173, 174, 175, 176, 177, 178,
1320     179, 180, 181, 182, 183, 184, 185, 186, 187, 188,
1321     189, 190, 191, 192, 193, 194, 195, 196, 197, 198,
1322     199, 200, 201, 202, 203, 204, 205, 206, 207, 208,
1323     209, 210, 211, 212, 213, 214, 215, 216, 217, 218,
1324     219, 220, 221, 222, 223, 224, 225, 226, 227, 228,
1325     229, 230, 231, 232, 233, 234, 235, 236, 237, 238,
1326     239, 240, 241, 242, 243, 244, 245, 246, 247, 248,
1327     249, 250, 251, 252, 253, 254, 255, 256, 257, 258,
1328     259, 260, 261, 312, 806, 46, 47, 48, 313, 314,
1329     315, 316, 317, 318, 319, 320, 321, 322, 59, 60,
1330     61, 62, 63, 64, 65, 66, 67, 68, 69, 70,
1331     71, 72, 73, 74, 75, 76, 77, 78, 79, 80,
1332     81, 82, 83, 84, 85, 86, 87, 88, 89, 90,
1333     91, 92, 93, 94, 95, 96, 97, 98, 99, 100,
1334     101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
1335     111, 112, 113, 114, 115, 116, 117, 118, 119, 120,
1336     121, 122, 123, 124, 125, 126, 127, 128, 129, 130,
1337     131, 132, 133, 134, 135, 136, 137, 138, 139, 140,
1338     141, 142, 143, 144, 145, 146, 147, 148, 149, 150,
1339     151, 152, 153, 154, 155, 156, 157, 158, 159, 160,
1340     161, 162, 163, 164, 165, 166, 167, 168, 169, 170,
1341     171, 172, 173, 174, 175, 176, 177, 178, 179, 180,
1342     181, 182, 183, 184, 185, 186, 187, 188, 189, 190,
1343     191, 192, 193, 194, 195, 196, 197, 198, 199, 200,
1344     201, 202, 203, 204, 205, 206, 207, 208, 209, 210,
1345     211, 212, 213, 214, 215, 216, 217, 218, 219, 220,
1346     221, 222, 223, 224, 225, 226, 227, 228, 229, 230,
1347     231, 232, 233, 234, 235, 236, 237, 238, 239, 240,
1348     241, 242, 243, 244, 245, 246, 247, 248, 249, 250,
1349     251, 252, 253, 254, 255, 256, 257, 258, 259, 260,
1350     261, 312, 822, 46, 47, 48, 313, 314, 315, 316,
1351     317, 318, 319, 320, 321, 322, 59, 60, 61, 62,
1352     63, 64, 65, 66, 67, 68, 69, 70, 71, 72,
1353     73, 74, 75, 76, 77, 78, 79, 80, 81, 82,
1354     83, 84, 85, 86, 87, 88, 89, 90, 91, 92,
1355     93, 94, 95, 96, 97, 98, 99, 100, 101, 102,
1356     103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
1357     113, 114, 115, 116, 117, 118, 119, 120, 121, 122,
1358     123, 124, 125, 126, 127, 128, 129, 130, 131, 132,
1359     133, 134, 135, 136, 137, 138, 139, 140, 141, 142,
1360     143, 144, 145, 146, 147, 148, 149, 150, 151, 152,
1361     153, 154, 155, 156, 157, 158, 159, 160, 161, 162,
1362     163, 164, 165, 166, 167, 168, 169, 170, 171, 172,
1363     173, 174, 175, 176, 177, 178, 179, 180, 181, 182,
1364     183, 184, 185, 186, 187, 188, 189, 190, 191, 192,
1365     193, 194, 195, 196, 197, 198, 199, 200, 201, 202,
1366     203, 204, 205, 206, 207, 208, 209, 210, 211, 212,
1367     213, 214, 215, 216, 217, 218, 219, 220, 221, 222,
1368     223, 224, 225, 226, 227, 228, 229, 230, 231, 232,
1369     233, 234, 235, 236, 237, 238, 239, 240, 241, 242,
1370     243, 244, 245, 246, 247, 248, 249, 250, 251, 252,
1371     253, 254, 255, 256, 257, 258, 259, 260, 261, 312,
1372     823, 46, 47, 48, 313, 314, 315, 316, 317, 318,
1373 schoenebeck 219 319, 320, 321, 322, 59, 60, 61, 62, 63, 64,
1374     65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
1375     75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
1376     85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
1377     95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
1378     105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
1379     115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
1380     125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
1381     135, 136, 137, 138, 139, 140, 141, 142, 143, 144,
1382     145, 146, 147, 148, 149, 150, 151, 152, 153, 154,
1383     155, 156, 157, 158, 159, 160, 161, 162, 163, 164,
1384     165, 166, 167, 168, 169, 170, 171, 172, 173, 174,
1385     175, 176, 177, 178, 179, 180, 181, 182, 183, 184,
1386     185, 186, 187, 188, 189, 190, 191, 192, 193, 194,
1387     195, 196, 197, 198, 199, 200, 201, 202, 203, 204,
1388     205, 206, 207, 208, 209, 210, 211, 212, 213, 214,
1389     215, 216, 217, 218, 219, 220, 221, 222, 223, 224,
1390     225, 226, 227, 228, 229, 230, 231, 232, 233, 234,
1391     235, 236, 237, 238, 239, 240, 241, 242, 243, 244,
1392     245, 246, 247, 248, 249, 250, 251, 252, 253, 254,
1393 schoenebeck 221 255, 256, 257, 258, 259, 260, 261
1394     };
1395    
1396     static const short yycheck[] =
1397     {
1398     14, 571, 14, 31, 16, 17, 18, 19, 20, 21,
1399     22, 23, 24, 25, 26, 454, 270, 271, 270, 271,
1400     19, 718, 277, 720, 26, 30, 22, 437, 224, 225,
1401     32, 36, 20, 21, 33, 277, 277, 277, 18, 35,
1402     50, 51, 52, 53, 54, 55, 56, 57, 58, 37,
1403     30, 35, 22, 21, 712, 1, 26, 3, 716, 39,
1404     20, 21, 38, 50, 51, 52, 53, 54, 55, 56,
1405     57, 58, 18, 33, 20, 21, 31, 37, 24, 19,
1406     19, 20, 18, 29, 20, 22, 26, 26, 34, 35,
1407     36, 30, 38, 22, 30, 22, 36, 36, 22, 39,
1408     39, 38, 22, 18, 0, 20, 35, 22, 18, 806,
1409     20, 18, 22, 269, 553, 30, 555, 556, 274, 275,
1410     30, 223, 278, 30, 5, 822, 823, 8, 9, 10,
1411     11, 12, 13, 14, 15, 16, 17, 21, 18, 38,
1412     39, 272, 22, 21, 583, 276, 277, 221, 222, 33,
1413     30, 590, 591, 592, 593, 594, 595, 596, 597, 598,
1414     415, 416, 417, 418, 419, 420, 421, 422, 423, 424,
1415     425, 426, 582, 415, 415, 415, 5, 22, 21, 8,
1416     9, 10, 11, 12, 13, 14, 15, 16, 17, 443,
1417     33, 443, 5, 221, 222, 8, 9, 10, 11, 12,
1418     13, 14, 15, 16, 17, 6, 7, 8, 9, 10,
1419     11, 12, 13, 14, 15, 16, 17, 8, 9, 10,
1420     11, 12, 13, 14, 15, 16, 17, 20, 21, 36,
1421     800, 20, 21, 803, 8, 9, 10, 11, 12, 13,
1422     14, 15, 16, 17, 223, 224, 225, 686, 18, 37,
1423     36, 26, 37, 19, 36, 224, 20, 18, 37, 37,
1424     37, 21, 38, 702, 32, 22, 25, 36, 31, 25,
1425     37, 26, 26, 38, 25, 20, 38, 26, 224, 225,
1426     38, 31, 26, 31, 26, 38, 32, 39, 20, 19,
1427     37, 18, 302, 21, 304, 305, 306, 307, 308, 309,
1428     310, 311, 35, 37, 18, 18, 24, 26, 25, 21,
1429     21, 21, 21, 18, 21, 36, 36, 21, 21, 331,
1430     35, 23, 23, 335, 22, 337, 338, 339, 340, 341,
1431     14, 343, 26, 345, 346, 347, 348, 32, 35, 22,
1432     352, 353, 31, 355, 356, 36, 26, 26, 26, 31,
1433     26, 26, 26, 26, 366, 367, 368, 26, 26, 31,
1434     37, 373, 374, 375, 376, 377, 378, 32, 32, 26,
1435     26, 38, 32, 23, 32, 814, 20, 22, 20, 42,
1436     26, 20, 31, 35, 32, 32, 398, 19, 29, 88,
1437     21, 31, 88, 31, 21, 32, 31, 31, 88, 32,
1438     88, 29, 22, 22, 18, 22, 35, 22, 18, 22,
1439     22, 35, 42, 22, 22, 26, 38, 431, 432, 26,
1440     26, 26, 88, 26, 26, 29, 88, 88, 26, 88,
1441     444, 445, 446, 447, 448, 88, 30, 38, 22, 29,
1442     32, 19, 29, 31, 37, 88, 35, 32, 31, 29,
1443     32, 32, 31, 30, 30, 467, 468, 469, 470, 471,
1444     472, 473, 474, 475, 476, 477, 478, 479, 480, 481,
1445     31, 30, 484, 485, 32, 29, 486, 487, 488, 489,
1446     490, 491, 492, 493, 494, 20, 19, 38, 88, 88,
1447     502, 503, 88, 505, 36, 507, 33, 509, 29, 486,
1448     487, 488, 489, 490, 491, 492, 493, 494, 520, 521,
1449     522, 523, 524, 525, 526, 527, 528, 529, 530, 531,
1450     532, 22, 20, 38, 33, 38, 33, 22, 32, 26,
1451     38, 33, 88, 22, 18, 23, 32, 20, 37, 31,
1452     22, 22, 36, 22, 558, 38, 37, 561, 562, 563,
1453     564, 38, 37, 567, 21, 263, 32, 31, 38, 37,
1454     26, 38, 31, 38, 32, 88, 578, 581, 580, 33,
1455     31, 33, 37, 33, 37, 18, 33, 29, 37, 37,
1456     33, 37, 22, 38, 38, 31, 600, 38, 602, 37,
1457     29, 38, 29, 38, 38, 37, 32, 38, 88, 31,
1458     38, 31, 88, 37, 37, 26, 18, 21, 620, 37,
1459     37, 21, 37, 33, 37, 627, 88, 629, 630, 631,
1460     38, 633, 37, 635, 21, 24, 21, 32, 24, 22,
1461     22, 22, 32, 36, 38, 22, 26, 26, 650, 88,
1462     652, 26, 26, 21, 21, 39, 32, 659, 660, 661,
1463     662, 663, 664, 665, 666, 667, 35, 669, 39, 671,
1464     35, 25, 88, 39, 88, 39, 88, 37, 31, 88,
1465     26, 88, 88, 39, 688, 689, 690, 37, 692, 22,
1466     26, 22, 696, 22, 26, 25, 696, 37, 26, 703,
1467     88, 25, 18, 42, 39, 709, 710, 32, 712, 713,
1468     714, 26, 716, 717, 718, 88, 720, 717, 718, 22,
1469     720, 26, 20, 22, 20, 88, 39, 39, 20, 18,
1470     39, 18, 20, 35, 736, 737, 33, 739, 740, 39,
1471     31, 26, 32, 36, 22, 745, 746, 31, 31, 35,
1472     750, 33, 26, 22, 26, 429, 430, 22, 760, 26,
1473     22, 25, 42, 31, 438, 22, 768, 37, 745, 746,
1474     31, 20, 22, 33, 448, 38, 18, 779, 36, 20,
1475     780, 781, 88, 20, 31, 20, 484, 485, 18, 33,
1476     22, 31, 35, 88, 22, 22, 22, 33, 37, 22,
1477     38, 35, 806, 780, 781, 22, 806, 807, 808, 809,
1478     31, 33, 510, 22, 22, 29, 820, 821, 822, 823,
1479     36, 33, 822, 823, 37, 18, 18, 29, 502, 503,
1480     18, 31, 809, 88, 88, 29, 534, 88, 33, 38,
1481     88, 841, 842, 843, 35, 30, 33, 22, 18, 35,
1482     33, 22, 854, 37, 21, 18, 18, 18, 18, 35,
1483     29, 35, 30, 88, 841, 842, 30, 867, 868, 18,
1484     35, 37, 26, 877, 21, 18, 35, 22, 22, 577,
1485     22, 18, 30, 557, 35, 559, 560, 39, 22, 35,
1486     30, 565, 566, 26, 30, 22, 570, 571, 37, 37,
1487     22, 22, 22, 22, 578, 37, 580, 35, 39, 35,
1488     22, 35, 37, 22, 37, 22, 22, 820, 36, 35,
1489     35, 35, 35, 821, 877, 599, 36, 601, 717, 627,
1490     628, 557, 703, 275, 272, 633, 634, 582, 503, 43,
1491     277, 639, 443, 443, -1, -1, 273, -1, -1, 647,
1492     272, -1, 275, -1, -1, -1, -1, -1, -1, -1,
1493     -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1494     668, -1, 670, -1, -1, -1, -1, -1, -1, -1,
1495     -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1496     -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1497     -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1498     -1, -1, -1, 687, -1, -1, -1, 691, -1, -1,
1499     -1, 695, -1, -1, -1, -1, -1, -1, -1, -1,
1500     -1, -1, -1, -1, -1, -1, -1, 711, 736, -1,
1501     -1, 715, 740, -1, -1, 719, 744, 721, -1, -1,
1502     748, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1503     -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1504     -1, -1, -1, 771, -1, -1, -1, -1, -1, -1,
1505     778, -1, -1, -1, -1, -1, -1, -1, 786, -1,
1506     788, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1507     -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1508     -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1509     -1, -1, -1, -1, -1, -1, 800, 801, 802, 803,
1510     -1, -1, -1, -1, -1, -1, -1, 835, 836, 3,
1511     4, 5, 6, 7, 8, 9, 10, 11, 12, 13,
1512     14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
1513     24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
1514     34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
1515     44, 45, 46, 47, 48, 49, 50, 51, 52, 53,
1516     54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
1517     64, 65, 66, 67, 68, 69, 70, 71, 72, 73,
1518     74, 75, 76, 77, 78, 79, 80, 81, 82, 83,
1519     84, 85, 86, 87, 88, 89, 90, 91, 92, 93,
1520     94, 95, 96, 97, 98, 99, 100, 101, 102, 103,
1521     104, 105, 106, 107, 108, 109, 110, 111, 112, 113,
1522     114, 115, 116, 117, 118, 119, 120, 121, 122, 123,
1523     124, 125, 126, 127, 128, 129, 130, 131, 132, 133,
1524     134, 135, 136, 137, 138, 139, 140, 141, 142, 143,
1525     144, 145, 146, 147, 148, 149, 150, 151, 152, 153,
1526     154, 155, 156, 157, 158, 159, 160, 161, 162, 163,
1527     164, 165, 166, 167, 168, 169, 170, 171, 172, 173,
1528     174, 175, 176, 177, 178, 179, 180, 181, 182, 183,
1529     184, 185, 186, 187, 188, 189, 190, 191, 192, 193,
1530     194, 195, 196, 197, 198, 199, 200, 201, 202, 203,
1531     204, 205, 206, 207, 208, 209, 210, 211, 212, 213,
1532     214, 215, 216, 217, 218, 219, 220, 221, -1, 223,
1533     3, 4, 5, 6, 7, 8, 9, 10, 11, 12,
1534     13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
1535     23, 24, 25, 26, 27, 28, 29, 30, 31, 32,
1536     33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
1537     43, 44, 45, 46, 47, 48, 49, 50, 51, 52,
1538     53, 54, 55, 56, 57, 58, 59, 60, 61, 62,
1539     63, 64, 65, 66, 67, 68, 69, 70, 71, 72,
1540     73, 74, 75, 76, 77, 78, 79, 80, 81, 82,
1541     83, 84, 85, 86, 87, 88, 89, 90, 91, 92,
1542     93, 94, 95, 96, 97, 98, 99, 100, 101, 102,
1543     103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
1544     113, 114, 115, 116, 117, 118, 119, 120, 121, 122,
1545     123, 124, 125, 126, 127, 128, 129, 130, 131, 132,
1546     133, 134, 135, 136, 137, 138, 139, 140, 141, 142,
1547     143, 144, 145, 146, 147, 148, 149, 150, 151, 152,
1548     153, 154, 155, 156, 157, 158, 159, 160, 161, 162,
1549     163, 164, 165, 166, 167, 168, 169, 170, 171, 172,
1550     173, 174, 175, 176, 177, 178, 179, 180, 181, 182,
1551     183, 184, 185, 186, 187, 188, 189, 190, 191, 192,
1552     193, 194, 195, 196, 197, 198, 199, 200, 201, 202,
1553     203, 204, 205, 206, 207, 208, 209, 210, 211, 212,
1554     213, 214, 215, 216, 217, 218, 219, 220, -1, 222,
1555     223, 3, 4, 5, 6, 7, 8, 9, 10, 11,
1556     12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
1557     22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
1558     32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
1559     42, 43, 44, 45, 46, 47, 48, 49, 50, 51,
1560     52, 53, 54, 55, 56, 57, 58, 59, 60, 61,
1561     62, 63, 64, 65, 66, 67, 68, 69, 70, 71,
1562     72, 73, 74, 75, 76, 77, 78, 79, 80, 81,
1563     82, 83, 84, 85, 86, 87, 88, 89, 90, 91,
1564     92, 93, 94, 95, 96, 97, 98, 99, 100, 101,
1565     102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
1566     112, 113, 114, 115, 116, 117, 118, 119, 120, 121,
1567     122, 123, 124, 125, 126, 127, 128, 129, 130, 131,
1568     132, 133, 134, 135, 136, 137, 138, 139, 140, 141,
1569     142, 143, 144, 145, 146, 147, 148, 149, 150, 151,
1570     152, 153, 154, 155, 156, 157, 158, 159, 160, 161,
1571     162, 163, 164, 165, 166, 167, 168, 169, 170, 171,
1572     172, 173, 174, 175, 176, 177, 178, 179, 180, 181,
1573     182, 183, 184, 185, 186, 187, 188, 189, 190, 191,
1574     192, 193, 194, 195, 196, 197, 198, 199, 200, 201,
1575     202, 203, 204, 205, 206, 207, 208, 209, 210, 211,
1576     212, 213, 214, 215, 216, 217, 218, 219, 220, -1,
1577     -1, 223, 3, 4, 5, 6, 7, 8, 9, 10,
1578     11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
1579     21, 22, 23, 24, 25, 26, 27, 28, 29, 30,
1580     31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
1581     41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
1582     51, 52, 53, 54, 55, 56, 57, 58, 59, 60,
1583     61, 62, 63, 64, 65, 66, 67, 68, 69, 70,
1584     71, 72, 73, 74, 75, 76, 77, 78, 79, 80,
1585     81, 82, 83, 84, 85, 86, 87, 88, 89, 90,
1586     91, 92, 93, 94, 95, 96, 97, 98, 99, 100,
1587     101, 102, 103, 104, 105, 106, 107, 108, 109, 110,
1588     111, 112, 113, 114, 115, 116, 117, 118, 119, 120,
1589     121, 122, 123, 124, 125, 126, 127, 128, 129, 130,
1590     131, 132, 133, 134, 135, 136, 137, 138, 139, 140,
1591     141, 142, 143, 144, 145, 146, 147, 148, 149, 150,
1592     151, 152, 153, 154, 155, 156, 157, 158, 159, 160,
1593     161, 162, 163, 164, 165, 166, 167, 168, 169, 170,
1594     171, 172, 173, 174, 175, 176, 177, 178, 179, 180,
1595     181, 182, 183, 184, 185, 186, 187, 188, 189, 190,
1596     191, 192, 193, 194, 195, 196, 197, 198, 199, 200,
1597     201, 202, 203, 204, 205, 206, 207, 208, 209, 210,
1598     211, 212, 213, 214, 215, 216, 217, 218, 219, 220,
1599     -1, -1, 223, 3, 4, 5, 6, 7, 8, 9,
1600     10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
1601     20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
1602     30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
1603     40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
1604     50, 51, 52, 53, 54, 55, 56, 57, 58, 59,
1605 schoenebeck 219 60, 61, 62, 63, 64, 65, 66, 67, 68, 69,
1606     70, 71, 72, 73, 74, 75, 76, 77, 78, 79,
1607     80, 81, 82, 83, 84, 85, 86, 87, 88, 89,
1608     90, 91, 92, 93, 94, 95, 96, 97, 98, 99,
1609     100, 101, 102, 103, 104, 105, 106, 107, 108, 109,
1610     110, 111, 112, 113, 114, 115, 116, 117, 118, 119,
1611     120, 121, 122, 123, 124, 125, 126, 127, 128, 129,
1612     130, 131, 132, 133, 134, 135, 136, 137, 138, 139,
1613     140, 141, 142, 143, 144, 145, 146, 147, 148, 149,
1614     150, 151, 152, 153, 154, 155, 156, 157, 158, 159,
1615     160, 161, 162, 163, 164, 165, 166, 167, 168, 169,
1616     170, 171, 172, 173, 174, 175, 176, 177, 178, 179,
1617     180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
1618     190, 191, 192, 193, 194, 195, 196, 197, 198, 199,
1619     200, 201, 202, 203, 204, 205, 206, 207, 208, 209,
1620     210, 211, 212, 213, 214, 215, 216, 217, 218, 219,
1621 schoenebeck 221 220, 221, 222, 3, 4, 5, 6, 7, 8, 9,
1622     10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
1623     20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
1624     30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
1625     40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
1626     50, 51, 52, 53, 54, 55, 56, 57, 58, 59,
1627     60, 61, 62, 63, 64, 65, 66, 67, 68, 69,
1628     70, 71, 72, 73, 74, 75, 76, 77, 78, 79,
1629     80, 81, 82, 83, 84, 85, 86, 87, 88, 89,
1630     90, 91, 92, 93, 94, 95, 96, 97, 98, 99,
1631     100, 101, 102, 103, 104, 105, 106, 107, 108, 109,
1632     110, 111, 112, 113, 114, 115, 116, 117, 118, 119,
1633     120, 121, 122, 123, 124, 125, 126, 127, 128, 129,
1634     130, 131, 132, 133, 134, 135, 136, 137, 138, 139,
1635     140, 141, 142, 143, 144, 145, 146, 147, 148, 149,
1636     150, 151, 152, 153, 154, 155, 156, 157, 158, 159,
1637     160, 161, 162, 163, 164, 165, 166, 167, 168, 169,
1638     170, 171, 172, 173, 174, 175, 176, 177, 178, 179,
1639     180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
1640     190, 191, 192, 193, 194, 195, 196, 197, 198, 199,
1641     200, 201, 202, 203, 204, 205, 206, 207, 208, 209,
1642     210, 211, 212, 213, 214, 215, 216, 217, 218, 219,
1643     220, 3, 4, 5, 6, 7, 8, 9, 10, 11,
1644     12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
1645     22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
1646     32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
1647     42, 43, 44, 45, 46, 47, 48, 49, 50, 51,
1648     52, 53, 54, 55, 56, 57, 58, 59, 60, 61,
1649 schoenebeck 219 62, 63, 64, 65, 66, 67, 68, 69, 70, 71,
1650     72, 73, 74, 75, 76, 77, 78, 79, 80, 81,
1651     82, 83, 84, 85, 86, 87, 88, 89, 90, 91,
1652     92, 93, 94, 95, 96, 97, 98, 99, 100, 101,
1653     102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
1654     112, 113, 114, 115, 116, 117, 118, 119, 120, 121,
1655     122, 123, 124, 125, 126, 127, 128, 129, 130, 131,
1656     132, 133, 134, 135, 136, 137, 138, 139, 140, 141,
1657     142, 143, 144, 145, 146, 147, 148, 149, 150, 151,
1658     152, 153, 154, 155, 156, 157, 158, 159, 160, 161,
1659     162, 163, 164, 165, 166, 167, 168, 169, 170, 171,
1660     172, 173, 174, 175, 176, 177, 178, 179, 180, 181,
1661     182, 183, 184, 185, 186, 187, 188, 189, 190, 191,
1662     192, 193, 194, 195, 196, 197, 198, 199, 200, 201,
1663     202, 203, 204, 205, 206, 207, 208, 209, 210, 211,
1664 schoenebeck 221 212, 213, 214, 215, 216, 217, 218, 219, 220, 3,
1665     4, 5, 6, 7, 8, 9, 10, 11, 12, 13,
1666     14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
1667     24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
1668     34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
1669     44, 45, 46, 47, 48, 49, 50, 51, 52, 53,
1670     54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
1671 schoenebeck 219 64, 65, 66, 67, 68, 69, 70, 71, 72, 73,
1672     74, 75, 76, 77, 78, 79, 80, 81, 82, 83,
1673     84, 85, 86, 87, 88, 89, 90, 91, 92, 93,
1674     94, 95, 96, 97, 98, 99, 100, 101, 102, 103,
1675     104, 105, 106, 107, 108, 109, 110, 111, 112, 113,
1676     114, 115, 116, 117, 118, 119, 120, 121, 122, 123,
1677     124, 125, 126, 127, 128, 129, 130, 131, 132, 133,
1678     134, 135, 136, 137, 138, 139, 140, 141, 142, 143,
1679     144, 145, 146, 147, 148, 149, 150, 151, 152, 153,
1680     154, 155, 156, 157, 158, 159, 160, 161, 162, 163,
1681     164, 165, 166, 167, 168, 169, 170, 171, 172, 173,
1682     174, 175, 176, 177, 178, 179, 180, 181, 182, 183,
1683     184, 185, 186, 187, 188, 189, 190, 191, 192, 193,
1684     194, 195, 196, 197, 198, 199, 200, 201, 202, 203,
1685     204, 205, 206, 207, 208, 209, 210, 211, 212, 213,
1686 schoenebeck 221 214, 215, 216, 217, 218, 219, 220, 3, 4, 5,
1687     6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
1688     16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
1689     26, 27, 28, 29, 30, 31, 32, 33, 34, 35,
1690     36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
1691     46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
1692     56, 57, 58, 59, 60, 61, 62, 63, 64, 65,
1693 schoenebeck 219 66, 67, 68, 69, 70, 71, 72, 73, 74, 75,
1694     76, 77, 78, 79, 80, 81, 82, 83, 84, 85,
1695     86, 87, 88, 89, 90, 91, 92, 93, 94, 95,
1696     96, 97, 98, 99, 100, 101, 102, 103, 104, 105,
1697     106, 107, 108, 109, 110, 111, 112, 113, 114, 115,
1698     116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
1699     126, 127, 128, 129, 130, 131, 132, 133, 134, 135,
1700     136, 137, 138, 139, 140, 141, 142, 143, 144, 145,
1701     146, 147, 148, 149, 150, 151, 152, 153, 154, 155,
1702     156, 157, 158, 159, 160, 161, 162, 163, 164, 165,
1703     166, 167, 168, 169, 170, 171, 172, 173, 174, 175,
1704     176, 177, 178, 179, 180, 181, 182, 183, 184, 185,
1705     186, 187, 188, 189, 190, 191, 192, 193, 194, 195,
1706     196, 197, 198, 199, 200, 201, 202, 203, 204, 205,
1707     206, 207, 208, 209, 210, 211, 212, 213, 214, 215,
1708 schoenebeck 221 216, 217, 218, 219, 220, 3, 4, 5, 6, 7,
1709     8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
1710     18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
1711     28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
1712     38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
1713     48, 49, 50, 51, 52, 53, 54, 55, 56, 57,
1714     58, 59, 60, 61, 62, 63, 64, 65, 66, 67,
1715 schoenebeck 219 68, 69, 70, 71, 72, 73, 74, 75, 76, 77,
1716     78, 79, 80, 81, 82, 83, 84, 85, 86, 87,
1717     88, 89, 90, 91, 92, 93, 94, 95, 96, 97,
1718     98, 99, 100, 101, 102, 103, 104, 105, 106, 107,
1719     108, 109, 110, 111, 112, 113, 114, 115, 116, 117,
1720     118, 119, 120, 121, 122, 123, 124, 125, 126, 127,
1721     128, 129, 130, 131, 132, 133, 134, 135, 136, 137,
1722     138, 139, 140, 141, 142, 143, 144, 145, 146, 147,
1723     148, 149, 150, 151, 152, 153, 154, 155, 156, 157,
1724     158, 159, 160, 161, 162, 163, 164, 165, 166, 167,
1725     168, 169, 170, 171, 172, 173, 174, 175, 176, 177,
1726     178, 179, 180, 181, 182, 183, 184, 185, 186, 187,
1727     188, 189, 190, 191, 192, 193, 194, 195, 196, 197,
1728     198, 199, 200, 201, 202, 203, 204, 205, 206, 207,
1729     208, 209, 210, 211, 212, 213, 214, 215, 216, 217,
1730 schoenebeck 221 218, 219, 220, 3, 4, 5, 6, 7, 8, 9,
1731     10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
1732     20, 21, 22, 23, 24, 25, 26, 27, 28, 29,
1733     30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
1734     40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
1735     50, 51, 52, 53, 54, 55, 56, 57, 58, 59,
1736 schoenebeck 219 60, 61, 62, 63, 64, 65, 66, 67, 68, 69,
1737     70, 71, 72, 73, 74, 75, 76, 77, 78, 79,
1738     80, 81, 82, 83, 84, 85, 86, 87, 88, 89,
1739     90, 91, 92, 93, 94, 95, 96, 97, 98, 99,
1740     100, 101, 102, 103, 104, 105, 106, 107, 108, 109,
1741     110, 111, 112, 113, 114, 115, 116, 117, 118, 119,
1742     120, 121, 122, 123, 124, 125, 126, 127, 128, 129,
1743     130, 131, 132, 133, 134, 135, 136, 137, 138, 139,
1744     140, 141, 142, 143, 144, 145, 146, 147, 148, 149,
1745     150, 151, 152, 153, 154, 155, 156, 157, 158, 159,
1746     160, 161, 162, 163, 164, 165, 166, 167, 168, 169,
1747     170, 171, 172, 173, 174, 175, 176, 177, 178, 179,
1748     180, 181, 182, 183, 184, 185, 186, 187, 188, 189,
1749     190, 191, 192, 193, 194, 195, 196, 197, 198, 199,
1750     200, 201, 202, 203, 204, 205, 206, 207, 208, 209,
1751     210, 211, 212, 213, 214, 215, 216, 217, 218, 219,
1752 schoenebeck 221 220, 3, 4, 5, 6, 7, 8, 9, 10, 11,
1753     12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
1754     22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
1755     32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
1756     42, 43, 44, 45, 46, 47, 48, 49, 50, 51,
1757     52, 53, 54, 55, 56, 57, 58, 59, 60, 61,
1758     62, 63, 64, 65, 66, 67, 68, 69, 70, 71,
1759     72, 73, 74, 75, 76, 77, 78, 79, 80, 81,
1760     82, 83, 84, 85, 86, 87, 88, 89, 90, 91,
1761     92, 93, 94, 95, 96, 97, 98, 99, 100, 101,
1762     102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
1763     112, 113, 114, 115, 116, 117, 118, 119, 120, 121,
1764     122, 123, 124, 125, 126, 127, 128, 129, 130, 131,
1765     132, 133, 134, 135, 136, 137, 138, 139, 140, 141,
1766     142, 143, 144, 145, 146, 147, 148, 149, 150, 151,
1767     152, 153, 154, 155, 156, 157, 158, 159, 160, 161,
1768     162, 163, 164, 165, 166, 167, 168, 169, 170, 171,
1769     172, 173, 174, 175, 176, 177, 178, 179, 180, 181,
1770     182, 183, 184, 185, 186, 187, 188, 189, 190, 191,
1771     192, 193, 194, 195, 196, 197, 198, 199, 200, 201,
1772     202, 203, 204, 205, 206, 207, 208, 209, 210, 211,
1773     212, 213, 214, 215, 216, 217, 218, 219, 220, 3,
1774 schoenebeck 219 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,
1775     14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
1776     24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
1777     34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
1778     44, 45, 46, 47, 48, 49, 50, 51, 52, 53,
1779     54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
1780     64, 65, 66, 67, 68, 69, 70, 71, 72, 73,
1781     74, 75, 76, 77, 78, 79, 80, 81, 82, 83,
1782     84, 85, 86, 87, 88, 89, 90, 91, 92, 93,
1783     94, 95, 96, 97, 98, 99, 100, 101, 102, 103,
1784     104, 105, 106, 107, 108, 109, 110, 111, 112, 113,
1785     114, 115, 116, 117, 118, 119, 120, 121, 122, 123,
1786     124, 125, 126, 127, 128, 129, 130, 131, 132, 133,
1787     134, 135, 136, 137, 138, 139, 140, 141, 142, 143,
1788     144, 145, 146, 147, 148, 149, 150, 151, 152, 153,
1789     154, 155, 156, 157, 158, 159, 160, 161, 162, 163,
1790     164, 165, 166, 167, 168, 169, 170, 171, 172, 173,
1791     174, 175, 176, 177, 178, 179, 180, 181, 182, 183,
1792     184, 185, 186, 187, 188, 189, 190, 191, 192, 193,
1793     194, 195, 196, 197, 198, 199, 200, 201, 202, 203,
1794     204, 205, 206, 207, 208, 209, 210, 211, 212, 213,
1795 schoenebeck 221 214, 215, 216, 217, 218, 219, 220
1796 schoenebeck 35 };
1797    
1798     /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
1799     symbol of state STATE-NUM. */
1800 schoenebeck 219 static const unsigned short yystos[] =
1801 schoenebeck 35 {
1802 schoenebeck 219 0, 1, 3, 18, 20, 21, 24, 29, 34, 35,
1803 schoenebeck 221 36, 38, 227, 228, 229, 230, 268, 269, 270, 271,
1804     272, 273, 275, 276, 277, 278, 311, 314, 21, 35,
1805 schoenebeck 219 22, 22, 26, 32, 38, 22, 22, 38, 31, 0,
1806 schoenebeck 221 224, 225, 266, 267, 3, 4, 5, 6, 7, 8,
1807 schoenebeck 219 9, 10, 11, 12, 13, 14, 15, 16, 17, 18,
1808     19, 20, 21, 22, 23, 24, 25, 26, 27, 28,
1809     29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
1810     39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
1811     49, 50, 51, 52, 53, 54, 55, 56, 57, 58,
1812     59, 60, 61, 62, 63, 64, 65, 66, 67, 68,
1813     69, 70, 71, 72, 73, 74, 75, 76, 77, 78,
1814     79, 80, 81, 82, 83, 84, 85, 86, 87, 88,
1815     89, 90, 91, 92, 93, 94, 95, 96, 97, 98,
1816     99, 100, 101, 102, 103, 104, 105, 106, 107, 108,
1817     109, 110, 111, 112, 113, 114, 115, 116, 117, 118,
1818     119, 120, 121, 122, 123, 124, 125, 126, 127, 128,
1819     129, 130, 131, 132, 133, 134, 135, 136, 137, 138,
1820     139, 140, 141, 142, 143, 144, 145, 146, 147, 148,
1821     149, 150, 151, 152, 153, 154, 155, 156, 157, 158,
1822     159, 160, 161, 162, 163, 164, 165, 166, 167, 168,
1823     169, 170, 171, 172, 173, 174, 175, 176, 177, 178,
1824     179, 180, 181, 182, 183, 184, 185, 186, 187, 188,
1825     189, 190, 191, 192, 193, 194, 195, 196, 197, 198,
1826     199, 200, 201, 202, 203, 204, 205, 206, 207, 208,
1827     209, 210, 211, 212, 213, 214, 215, 216, 217, 218,
1828 schoenebeck 221 219, 220, 223, 257, 260, 261, 262, 265, 265, 265,
1829     265, 265, 265, 265, 265, 265, 265, 265, 265, 21,
1830 schoenebeck 219 22, 36, 37, 36, 18, 26, 30, 36, 37, 19,
1831 schoenebeck 221 36, 266, 8, 9, 10, 11, 12, 13, 14, 15,
1832 schoenebeck 219 16, 17, 259, 260, 259, 259, 259, 259, 259, 259,
1833     259, 259, 3, 8, 9, 10, 11, 12, 13, 14,
1834 schoenebeck 221 15, 16, 17, 262, 20, 279, 18, 20, 22, 30,
1835     233, 279, 280, 281, 282, 288, 290, 291, 292, 293,
1836     294, 295, 297, 299, 300, 301, 302, 303, 304, 18,
1837     30, 235, 291, 301, 236, 291, 301, 18, 20, 30,
1838     241, 282, 290, 300, 26, 237, 287, 288, 279, 18,
1839     22, 30, 234, 279, 289, 294, 298, 299, 313, 19,
1840     26, 30, 36, 39, 231, 282, 283, 284, 285, 286,
1841     312, 232, 282, 283, 284, 285, 286, 312, 279, 18,
1842 schoenebeck 219 37, 37, 21, 37, 32, 22, 36, 38, 260, 25,
1843 schoenebeck 221 38, 39, 25, 31, 26, 265, 265, 265, 265, 265,
1844     265, 265, 265, 265, 265, 265, 265, 38, 26, 265,
1845     265, 265, 265, 38, 25, 26, 31, 265, 265, 265,
1846     38, 20, 26, 265, 265, 265, 265, 265, 265, 38,
1847     31, 26, 37, 32, 265, 37, 35, 39, 37, 20,
1848     19, 18, 21, 18, 18, 24, 21, 283, 284, 285,
1849     286, 283, 283, 283, 283, 283, 283, 283, 283, 283,
1850     283, 283, 21, 21, 257, 257, 9, 10, 11, 12,
1851 schoenebeck 219 13, 14, 15, 16, 17, 261, 261, 21, 18, 21,
1852 schoenebeck 221 36, 31, 221, 222, 242, 254, 264, 274, 243, 253,
1853 schoenebeck 219 257, 251, 261, 21, 25, 21, 18, 30, 39, 238,
1854 schoenebeck 221 291, 295, 296, 301, 304, 305, 306, 307, 308, 261,
1855 schoenebeck 219 261, 261, 261, 256, 257, 261, 23, 23, 36, 35,
1856     26, 251, 22, 32, 22, 35, 36, 31, 26, 26,
1857 schoenebeck 221 31, 26, 26, 265, 265, 265, 265, 265, 265, 265,
1858     265, 265, 265, 265, 265, 265, 265, 265, 26, 26,
1859     265, 265, 26, 31, 26, 37, 32, 257, 263, 265,
1860     263, 265, 265, 265, 26, 32, 26, 38, 26, 32,
1861     265, 265, 265, 265, 265, 265, 265, 265, 265, 265,
1862     265, 265, 265, 23, 32, 20, 22, 20, 42, 26,
1863     20, 31, 32, 29, 31, 31, 88, 251, 19, 33,
1864     240, 309, 310, 251, 251, 253, 261, 257, 257, 261,
1865     261, 261, 261, 257, 257, 261, 32, 88, 239, 257,
1866     239, 32, 31, 88, 35, 31, 221, 257, 265, 222,
1867     252, 261, 254, 251, 32, 88, 21, 21, 29, 251,
1868     251, 251, 251, 251, 251, 251, 251, 251, 257, 261,
1869     257, 261, 22, 22, 18, 22, 19, 35, 22, 88,
1870     18, 22, 22, 26, 42, 22, 265, 265, 265, 265,
1871     265, 265, 265, 88, 26, 265, 4, 88, 22, 26,
1872     38, 88, 265, 265, 88, 26, 26, 26, 38, 265,
1873     265, 265, 265, 265, 265, 265, 265, 265, 4, 265,
1874     4, 265, 35, 29, 30, 88, 22, 26, 29, 32,
1875     19, 29, 31, 37, 35, 251, 257, 261, 261, 261,
1876     257, 261, 32, 31, 257, 6, 7, 255, 257, 258,
1877     259, 260, 261, 264, 32, 29, 31, 30, 30, 251,
1878     252, 32, 31, 32, 88, 30, 244, 261, 245, 261,
1879     246, 257, 244, 247, 261, 248, 261, 249, 257, 244,
1880     6, 7, 250, 258, 261, 255, 257, 255, 257, 88,
1881     29, 88, 20, 19, 38, 29, 36, 33, 22, 20,
1882     265, 265, 265, 265, 38, 33, 4, 259, 259, 5,
1883     38, 33, 22, 32, 265, 38, 33, 88, 26, 22,
1884     265, 265, 4, 4, 23, 18, 20, 32, 22, 37,
1885     22, 38, 36, 22, 239, 257, 257, 239, 37, 38,
1886     255, 5, 5, 259, 37, 38, 31, 21, 251, 37,
1887     38, 32, 31, 245, 247, 255, 255, 26, 31, 32,
1888     38, 33, 88, 37, 31, 33, 37, 259, 259, 33,
1889     37, 37, 18, 33, 37, 38, 33, 265, 29, 22,
1890     38, 31, 38, 18, 22, 30, 88, 37, 38, 88,
1891     38, 88, 29, 38, 88, 37, 38, 248, 29, 32,
1892     31, 37, 37, 38, 31, 26, 21, 33, 18, 37,
1893     21, 37, 21, 37, 21, 33, 33, 37, 38, 37,
1894     88, 21, 24, 21, 22, 35, 32, 24, 88, 22,
1895     88, 22, 88, 22, 32, 38, 88, 36, 20, 21,
1896     26, 26, 26, 39, 26, 35, 22, 21, 39, 21,
1897     39, 20, 21, 39, 35, 37, 20, 33, 37, 25,
1898     22, 35, 32, 31, 88, 26, 39, 37, 22, 26,
1899     22, 26, 25, 22, 26, 37, 88, 25, 32, 42,
1900     18, 39, 26, 88, 22, 26, 20, 22, 88, 39,
1901     20, 39, 20, 18, 39, 20, 20, 37, 18, 35,
1902     33, 31, 26, 39, 32, 36, 31, 22, 35, 33,
1903     26, 22, 26, 22, 31, 26, 22, 25, 42, 31,
1904     37, 22, 31, 20, 22, 38, 33, 36, 88, 18,
1905     20, 20, 31, 20, 88, 18, 33, 31, 22, 22,
1906     35, 37, 38, 33, 35, 22, 22, 22, 22, 33,
1907     31, 22, 22, 29, 36, 88, 33, 37, 18, 18,
1908     29, 88, 18, 31, 29, 88, 33, 38, 88, 35,
1909     30, 33, 35, 22, 33, 18, 37, 21, 18, 22,
1910     18, 18, 29, 18, 35, 88, 35, 30, 37, 35,
1911     30, 35, 18, 21, 26, 22, 22, 18, 22, 18,
1912     30, 35, 39, 37, 35, 30, 37, 30, 22, 26,
1913     22, 22, 22, 22, 22, 37, 39, 35, 35, 37,
1914     35, 37, 22, 22, 36, 22, 22, 35, 35, 35,
1915     35, 36
1916 schoenebeck 35 };
1917    
1918     #if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__)
1919     # define YYSIZE_T __SIZE_TYPE__
1920     #endif
1921     #if ! defined (YYSIZE_T) && defined (size_t)
1922     # define YYSIZE_T size_t
1923     #endif
1924     #if ! defined (YYSIZE_T)
1925     # if defined (__STDC__) || defined (__cplusplus)
1926     # include <stddef.h> /* INFRINGES ON USER NAME SPACE */
1927     # define YYSIZE_T size_t
1928     # endif
1929     #endif
1930     #if ! defined (YYSIZE_T)
1931     # define YYSIZE_T unsigned int
1932     #endif
1933    
1934     #define yyerrok (yyerrstatus = 0)
1935     #define yyclearin (yychar = YYEMPTY)
1936     #define YYEMPTY (-2)
1937     #define YYEOF 0
1938    
1939     #define YYACCEPT goto yyacceptlab
1940     #define YYABORT goto yyabortlab
1941     #define YYERROR goto yyerrlab1
1942    
1943 senkov 170
1944 schoenebeck 35 /* Like YYERROR except do call yyerror. This remains here temporarily
1945     to ease the transition to the new meaning of YYERROR, for GCC.
1946     Once GCC version 2 has supplanted version 1, this can go. */
1947    
1948     #define YYFAIL goto yyerrlab
1949    
1950     #define YYRECOVERING() (!!yyerrstatus)
1951    
1952     #define YYBACKUP(Token, Value) \
1953     do \
1954     if (yychar == YYEMPTY && yylen == 1) \
1955     { \
1956     yychar = (Token); \
1957     yylval = (Value); \
1958     yytoken = YYTRANSLATE (yychar); \
1959     YYPOPSTACK; \
1960     goto yybackup; \
1961     } \
1962     else \
1963     { \
1964     yyerror ("syntax error: cannot back up");\
1965     YYERROR; \
1966     } \
1967     while (0)
1968    
1969     #define YYTERROR 1
1970     #define YYERRCODE 256
1971    
1972     /* YYLLOC_DEFAULT -- Compute the default location (before the actions
1973     are run). */
1974    
1975     #ifndef YYLLOC_DEFAULT
1976     # define YYLLOC_DEFAULT(Current, Rhs, N) \
1977     Current.first_line = Rhs[1].first_line; \
1978     Current.first_column = Rhs[1].first_column; \
1979     Current.last_line = Rhs[N].last_line; \
1980     Current.last_column = Rhs[N].last_column;
1981     #endif
1982    
1983     /* YYLEX -- calling `yylex' with the right arguments. */
1984    
1985     #ifdef YYLEX_PARAM
1986     # define YYLEX yylex (&yylval, YYLEX_PARAM)
1987     #else
1988     # define YYLEX yylex (&yylval)
1989     #endif
1990    
1991     /* Enable debugging if requested. */
1992     #if YYDEBUG
1993    
1994     # ifndef YYFPRINTF
1995     # include <stdio.h> /* INFRINGES ON USER NAME SPACE */
1996     # define YYFPRINTF fprintf
1997     # endif
1998    
1999     # define YYDPRINTF(Args) \
2000     do { \
2001     if (yydebug) \
2002     YYFPRINTF Args; \
2003     } while (0)
2004    
2005     # define YYDSYMPRINT(Args) \
2006     do { \
2007     if (yydebug) \
2008     yysymprint Args; \
2009     } while (0)
2010    
2011     # define YYDSYMPRINTF(Title, Token, Value, Location) \
2012     do { \
2013     if (yydebug) \
2014     { \
2015     YYFPRINTF (stderr, "%s ", Title); \
2016     yysymprint (stderr, \
2017     Token, Value); \
2018     YYFPRINTF (stderr, "\n"); \
2019     } \
2020     } while (0)
2021    
2022     /*------------------------------------------------------------------.
2023     | yy_stack_print -- Print the state stack from its BOTTOM up to its |
2024     | TOP (cinluded). |
2025     `------------------------------------------------------------------*/
2026    
2027     #if defined (__STDC__) || defined (__cplusplus)
2028     static void
2029     yy_stack_print (short *bottom, short *top)
2030     #else
2031     static void
2032     yy_stack_print (bottom, top)
2033     short *bottom;
2034     short *top;
2035     #endif
2036     {
2037     YYFPRINTF (stderr, "Stack now");
2038     for (/* Nothing. */; bottom <= top; ++bottom)
2039     YYFPRINTF (stderr, " %d", *bottom);
2040     YYFPRINTF (stderr, "\n");
2041     }
2042    
2043     # define YY_STACK_PRINT(Bottom, Top) \
2044     do { \
2045     if (yydebug) \
2046     yy_stack_print ((Bottom), (Top)); \
2047     } while (0)
2048    
2049    
2050     /*------------------------------------------------.
2051     | Report that the YYRULE is going to be reduced. |
2052     `------------------------------------------------*/
2053    
2054     #if defined (__STDC__) || defined (__cplusplus)
2055     static void
2056     yy_reduce_print (int yyrule)
2057     #else
2058     static void
2059     yy_reduce_print (yyrule)
2060     int yyrule;
2061     #endif
2062     {
2063     int yyi;
2064     unsigned int yylineno = yyrline[yyrule];
2065     YYFPRINTF (stderr, "Reducing stack by rule %d (line %u), ",
2066     yyrule - 1, yylineno);
2067     /* Print the symbols being reduced, and their result. */
2068     for (yyi = yyprhs[yyrule]; 0 <= yyrhs[yyi]; yyi++)
2069     YYFPRINTF (stderr, "%s ", yytname [yyrhs[yyi]]);
2070     YYFPRINTF (stderr, "-> %s\n", yytname [yyr1[yyrule]]);
2071     }
2072    
2073     # define YY_REDUCE_PRINT(Rule) \
2074     do { \
2075     if (yydebug) \
2076     yy_reduce_print (Rule); \
2077     } while (0)
2078    
2079     /* Nonzero means print parse trace. It is left uninitialized so that
2080     multiple parsers can coexist. */
2081     int yydebug;
2082     #else /* !YYDEBUG */
2083     # define YYDPRINTF(Args)
2084     # define YYDSYMPRINT(Args)
2085     # define YYDSYMPRINTF(Title, Token, Value, Location)
2086     # define YY_STACK_PRINT(Bottom, Top)
2087     # define YY_REDUCE_PRINT(Rule)
2088     #endif /* !YYDEBUG */
2089    
2090    
2091     /* YYINITDEPTH -- initial size of the parser's stacks. */
2092     #ifndef YYINITDEPTH
2093     # define YYINITDEPTH 200
2094     #endif
2095    
2096     /* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
2097     if the built-in stack extension method is used).
2098    
2099     Do not make this value too large; the results are undefined if
2100     SIZE_MAX < YYSTACK_BYTES (YYMAXDEPTH)
2101     evaluated with infinite-precision integer arithmetic. */
2102    
2103     #if YYMAXDEPTH == 0
2104     # undef YYMAXDEPTH
2105     #endif
2106    
2107     #ifndef YYMAXDEPTH
2108     # define YYMAXDEPTH 10000
2109     #endif
2110    
2111    
2112    
2113     #if YYERROR_VERBOSE
2114    
2115     # ifndef yystrlen
2116     # if defined (__GLIBC__) && defined (_STRING_H)
2117     # define yystrlen strlen
2118     # else
2119     /* Return the length of YYSTR. */
2120     static YYSIZE_T
2121     # if defined (__STDC__) || defined (__cplusplus)
2122     yystrlen (const char *yystr)
2123     # else
2124     yystrlen (yystr)
2125     const char *yystr;
2126     # endif
2127     {
2128     register const char *yys = yystr;
2129    
2130     while (*yys++ != '\0')
2131     continue;
2132    
2133     return yys - yystr - 1;
2134     }
2135     # endif
2136     # endif
2137    
2138     # ifndef yystpcpy
2139     # if defined (__GLIBC__) && defined (_STRING_H) && defined (_GNU_SOURCE)
2140     # define yystpcpy stpcpy
2141     # else
2142     /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
2143     YYDEST. */
2144     static char *
2145     # if defined (__STDC__) || defined (__cplusplus)
2146     yystpcpy (char *yydest, const char *yysrc)
2147     # else
2148     yystpcpy (yydest, yysrc)
2149     char *yydest;
2150     const char *yysrc;
2151     # endif
2152     {
2153     register char *yyd = yydest;
2154     register const char *yys = yysrc;
2155    
2156     while ((*yyd++ = *yys++) != '\0')
2157     continue;
2158    
2159     return yyd - 1;
2160     }
2161     # endif
2162     # endif
2163    
2164     #endif /* !YYERROR_VERBOSE */
2165    
2166    
2167    
2168     #if YYDEBUG
2169     /*--------------------------------.
2170     | Print this symbol on YYOUTPUT. |
2171     `--------------------------------*/
2172    
2173     #if defined (__STDC__) || defined (__cplusplus)
2174     static void
2175     yysymprint (FILE *yyoutput, int yytype, YYSTYPE *yyvaluep)
2176     #else
2177     static void
2178     yysymprint (yyoutput, yytype, yyvaluep)
2179     FILE *yyoutput;
2180     int yytype;
2181     YYSTYPE *yyvaluep;
2182     #endif
2183     {
2184     /* Pacify ``unused variable'' warnings. */
2185     (void) yyvaluep;
2186    
2187     if (yytype < YYNTOKENS)
2188     {
2189     YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
2190     # ifdef YYPRINT
2191     YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
2192     # endif
2193     }
2194     else
2195     YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);
2196    
2197     switch (yytype)
2198     {
2199     default:
2200     break;
2201     }
2202     YYFPRINTF (yyoutput, ")");
2203     }
2204    
2205     #endif /* ! YYDEBUG */
2206     /*-----------------------------------------------.
2207     | Release the memory associated to this symbol. |
2208     `-----------------------------------------------*/
2209    
2210     #if defined (__STDC__) || defined (__cplusplus)
2211     static void
2212     yydestruct (int yytype, YYSTYPE *yyvaluep)
2213     #else
2214     static void
2215     yydestruct (yytype, yyvaluep)
2216     int yytype;
2217     YYSTYPE *yyvaluep;
2218     #endif
2219     {
2220     /* Pacify ``unused variable'' warnings. */
2221     (void) yyvaluep;
2222    
2223     switch (yytype)
2224     {
2225    
2226     default:
2227     break;
2228     }
2229     }
2230    
2231    
2232     /* Prevent warnings from -Wmissing-prototypes. */
2233    
2234     #ifdef YYPARSE_PARAM
2235     # if defined (__STDC__) || defined (__cplusplus)
2236     int yyparse (void *YYPARSE_PARAM);
2237     # else
2238     int yyparse ();
2239     # endif
2240     #else /* ! YYPARSE_PARAM */
2241     #if defined (__STDC__) || defined (__cplusplus)
2242     int yyparse (void);
2243     #else
2244     int yyparse ();
2245     #endif
2246     #endif /* ! YYPARSE_PARAM */
2247    
2248    
2249    
2250    
2251    
2252    
2253     /*----------.
2254     | yyparse. |
2255     `----------*/
2256    
2257     #ifdef YYPARSE_PARAM
2258     # if defined (__STDC__) || defined (__cplusplus)
2259     int yyparse (void *YYPARSE_PARAM)
2260     # else
2261     int yyparse (YYPARSE_PARAM)
2262     void *YYPARSE_PARAM;
2263     # endif
2264     #else /* ! YYPARSE_PARAM */
2265     #if defined (__STDC__) || defined (__cplusplus)
2266     int
2267     yyparse (void)
2268     #else
2269     int
2270     yyparse ()
2271    
2272     #endif
2273     #endif
2274     {
2275     /* The lookahead symbol. */
2276     int yychar;
2277    
2278     /* The semantic value of the lookahead symbol. */
2279     YYSTYPE yylval;
2280    
2281     /* Number of syntax errors so far. */
2282     int yynerrs;
2283    
2284     register int yystate;
2285     register int yyn;
2286     int yyresult;
2287     /* Number of tokens to shift before error messages enabled. */
2288     int yyerrstatus;
2289     /* Lookahead token as an internal (translated) token number. */
2290     int yytoken = 0;
2291    
2292     /* Three stacks and their tools:
2293     `yyss': related to states,
2294     `yyvs': related to semantic values,
2295     `yyls': related to locations.
2296    
2297     Refer to the stacks thru separate pointers, to allow yyoverflow
2298     to reallocate them elsewhere. */
2299    
2300     /* The state stack. */
2301     short yyssa[YYINITDEPTH];
2302     short *yyss = yyssa;
2303     register short *yyssp;
2304    
2305     /* The semantic value stack. */
2306     YYSTYPE yyvsa[YYINITDEPTH];
2307     YYSTYPE *yyvs = yyvsa;
2308     register YYSTYPE *yyvsp;
2309    
2310    
2311    
2312     #define YYPOPSTACK (yyvsp--, yyssp--)
2313    
2314     YYSIZE_T yystacksize = YYINITDEPTH;
2315    
2316     /* The variables used to return semantic value and location from the
2317     action routines. */
2318     YYSTYPE yyval;
2319    
2320    
2321     /* When reducing, the number of symbols on the RHS of the reduced
2322     rule. */
2323     int yylen;
2324    
2325     YYDPRINTF ((stderr, "Starting parse\n"));
2326    
2327     yystate = 0;
2328     yyerrstatus = 0;
2329     yynerrs = 0;
2330     yychar = YYEMPTY; /* Cause a token to be read. */
2331    
2332     /* Initialize stack pointers.
2333     Waste one element of value and location stack
2334     so that they stay on the same level as the state stack.
2335     The wasted elements are never initialized. */
2336    
2337     yyssp = yyss;
2338     yyvsp = yyvs;
2339    
2340     goto yysetstate;
2341    
2342     /*------------------------------------------------------------.
2343     | yynewstate -- Push a new state, which is found in yystate. |
2344     `------------------------------------------------------------*/
2345     yynewstate:
2346     /* In all cases, when you get here, the value and location stacks
2347     have just been pushed. so pushing a state here evens the stacks.
2348     */
2349     yyssp++;
2350    
2351     yysetstate:
2352     *yyssp = yystate;
2353    
2354     if (yyss + yystacksize - 1 <= yyssp)
2355     {
2356     /* Get the current used size of the three stacks, in elements. */
2357     YYSIZE_T yysize = yyssp - yyss + 1;
2358    
2359     #ifdef yyoverflow
2360     {
2361     /* Give user a chance to reallocate the stack. Use copies of
2362     these so that the &'s don't force the real ones into
2363     memory. */
2364     YYSTYPE *yyvs1 = yyvs;
2365     short *yyss1 = yyss;
2366    
2367    
2368     /* Each stack pointer address is followed by the size of the
2369     data in use in that stack, in bytes. This used to be a
2370     conditional around just the two extra args, but that might
2371     be undefined if yyoverflow is a macro. */
2372     yyoverflow ("parser stack overflow",
2373     &yyss1, yysize * sizeof (*yyssp),
2374     &yyvs1, yysize * sizeof (*yyvsp),
2375    
2376     &yystacksize);
2377    
2378     yyss = yyss1;
2379     yyvs = yyvs1;
2380     }
2381     #else /* no yyoverflow */
2382     # ifndef YYSTACK_RELOCATE
2383     goto yyoverflowlab;
2384     # else
2385     /* Extend the stack our own way. */
2386     if (YYMAXDEPTH <= yystacksize)
2387     goto yyoverflowlab;
2388     yystacksize *= 2;
2389     if (YYMAXDEPTH < yystacksize)
2390     yystacksize = YYMAXDEPTH;
2391    
2392     {
2393     short *yyss1 = yyss;
2394     union yyalloc *yyptr =
2395     (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
2396     if (! yyptr)
2397     goto yyoverflowlab;
2398     YYSTACK_RELOCATE (yyss);
2399     YYSTACK_RELOCATE (yyvs);
2400    
2401     # undef YYSTACK_RELOCATE
2402     if (yyss1 != yyssa)
2403     YYSTACK_FREE (yyss1);
2404     }
2405     # endif
2406     #endif /* no yyoverflow */
2407    
2408     yyssp = yyss + yysize - 1;
2409     yyvsp = yyvs + yysize - 1;
2410    
2411    
2412     YYDPRINTF ((stderr, "Stack size increased to %lu\n",
2413     (unsigned long int) yystacksize));
2414    
2415     if (yyss + yystacksize - 1 <= yyssp)
2416     YYABORT;
2417     }
2418    
2419     YYDPRINTF ((stderr, "Entering state %d\n", yystate));
2420    
2421     goto yybackup;
2422    
2423     /*-----------.
2424     | yybackup. |
2425     `-----------*/
2426     yybackup:
2427    
2428     /* Do appropriate processing given the current state. */
2429     /* Read a lookahead token if we need one and don't already have one. */
2430     /* yyresume: */
2431    
2432     /* First try to decide what to do without reference to lookahead token. */
2433    
2434     yyn = yypact[yystate];
2435     if (yyn == YYPACT_NINF)
2436     goto yydefault;
2437    
2438     /* Not known => get a lookahead token if don't already have one. */
2439    
2440     /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol. */
2441     if (yychar == YYEMPTY)
2442     {
2443     YYDPRINTF ((stderr, "Reading a token: "));
2444     yychar = YYLEX;
2445     }
2446    
2447     if (yychar <= YYEOF)
2448     {
2449     yychar = yytoken = YYEOF;
2450     YYDPRINTF ((stderr, "Now at end of input.\n"));
2451     }
2452     else
2453     {
2454     yytoken = YYTRANSLATE (yychar);
2455     YYDSYMPRINTF ("Next token is", yytoken, &yylval, &yylloc);
2456     }
2457    
2458     /* If the proper action on seeing token YYTOKEN is to reduce or to
2459     detect an error, take that action. */
2460     yyn += yytoken;
2461     if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
2462     goto yydefault;
2463     yyn = yytable[yyn];
2464     if (yyn <= 0)
2465     {
2466     if (yyn == 0 || yyn == YYTABLE_NINF)
2467     goto yyerrlab;
2468     yyn = -yyn;
2469     goto yyreduce;
2470     }
2471    
2472     if (yyn == YYFINAL)
2473     YYACCEPT;
2474    
2475     /* Shift the lookahead token. */
2476     YYDPRINTF ((stderr, "Shifting token %s, ", yytname[yytoken]));
2477    
2478     /* Discard the token being shifted unless it is eof. */
2479     if (yychar != YYEOF)
2480     yychar = YYEMPTY;
2481    
2482     *++yyvsp = yylval;
2483    
2484    
2485     /* Count tokens shifted since error; after three, turn off error
2486     status. */
2487     if (yyerrstatus)
2488     yyerrstatus--;
2489    
2490     yystate = yyn;
2491     goto yynewstate;
2492    
2493    
2494     /*-----------------------------------------------------------.
2495     | yydefault -- do the default action for the current state. |
2496     `-----------------------------------------------------------*/
2497     yydefault:
2498     yyn = yydefact[yystate];
2499     if (yyn == 0)
2500     goto yyerrlab;
2501     goto yyreduce;
2502    
2503    
2504     /*-----------------------------.
2505     | yyreduce -- Do a reduction. |
2506     `-----------------------------*/
2507     yyreduce:
2508     /* yyn is the number of a rule to reduce with. */
2509     yylen = yyr2[yyn];
2510    
2511     /* If YYLEN is nonzero, implement the default value of the action:
2512     `$$ = $1'.
2513    
2514     Otherwise, the following line sets YYVAL to garbage.
2515     This behavior is undocumented and Bison
2516     users should not rely upon it. Assigning to YYVAL
2517     unconditionally makes the parser a bit smaller, and it avoids a
2518     GCC warning that YYVAL may be used uninitialized. */
2519     yyval = yyvsp[1-yylen];
2520    
2521    
2522     YY_REDUCE_PRINT (yyn);
2523     switch (yyn)
2524     {
2525 schoenebeck 219 case 4:
2526 schoenebeck 210 #line 85 "lscp.y"
2527 senkov 170 { return LSCP_DONE; }
2528     break;
2529    
2530     case 5:
2531 schoenebeck 210 #line 86 "lscp.y"
2532 schoenebeck 219 { return LSCP_DONE; }
2533 senkov 170 break;
2534    
2535     case 6:
2536 schoenebeck 210 #line 87 "lscp.y"
2537 schoenebeck 219 { LSCPSERVER->AnswerClient(yyvsp[0].String); return LSCP_DONE; }
2538 schoenebeck 35 break;
2539    
2540 schoenebeck 219 case 7:
2541     #line 88 "lscp.y"
2542     { LSCPSERVER->AnswerClient("Err:0:Unknown command.\r\n"); RESTART; return LSCP_SYNTAX_ERROR; }
2543 senkov 170 break;
2544    
2545     case 13:
2546 schoenebeck 210 #line 98 "lscp.y"
2547 schoenebeck 219 { yyval.String = LSCPSERVER->AddChannel(); }
2548 senkov 170 break;
2549    
2550 schoenebeck 111 case 14:
2551 schoenebeck 210 #line 99 "lscp.y"
2552 schoenebeck 219 { yyval.String = yyvsp[0].String; }
2553 schoenebeck 35 break;
2554    
2555 schoenebeck 111 case 15:
2556 schoenebeck 210 #line 100 "lscp.y"
2557 schoenebeck 219 { yyval.String = yyvsp[0].String; }
2558 schoenebeck 35 break;
2559    
2560 schoenebeck 111 case 16:
2561 schoenebeck 210 #line 101 "lscp.y"
2562 schoenebeck 219 { yyval.String = yyvsp[0].String; }
2563 schoenebeck 35 break;
2564    
2565 schoenebeck 111 case 17:
2566 schoenebeck 210 #line 102 "lscp.y"
2567 schoenebeck 219 { yyval.String = yyvsp[0].String; }
2568 schoenebeck 35 break;
2569    
2570 schoenebeck 111 case 18:
2571 schoenebeck 210 #line 103 "lscp.y"
2572 schoenebeck 219 { yyval.String = yyvsp[0].String; }
2573 schoenebeck 35 break;
2574    
2575 schoenebeck 111 case 19:
2576 schoenebeck 210 #line 104 "lscp.y"
2577 schoenebeck 219 { yyval.String = LSCPSERVER->RemoveChannel(yyvsp[0].Number); }
2578 schoenebeck 35 break;
2579    
2580 schoenebeck 111 case 20:
2581 schoenebeck 210 #line 105 "lscp.y"
2582 schoenebeck 219 { yyval.String = yyvsp[0].String; }
2583 schoenebeck 35 break;
2584    
2585 schoenebeck 111 case 21:
2586 schoenebeck 210 #line 106 "lscp.y"
2587 schoenebeck 219 { yyval.String = yyvsp[0].String; }
2588 schoenebeck 35 break;
2589    
2590 schoenebeck 111 case 22:
2591 schoenebeck 210 #line 107 "lscp.y"
2592 schoenebeck 219 { yyval.String = yyvsp[0].String; }
2593 schoenebeck 35 break;
2594    
2595 schoenebeck 111 case 23:
2596 schoenebeck 210 #line 108 "lscp.y"
2597 schoenebeck 219 { yyval.String = LSCPSERVER->ResetChannel(yyvsp[0].Number); }
2598 schoenebeck 35 break;
2599    
2600 schoenebeck 111 case 24:
2601 schoenebeck 212 #line 109 "lscp.y"
2602 schoenebeck 219 { yyval.String = LSCPSERVER->ResetSampler(); }
2603 schoenebeck 35 break;
2604    
2605 schoenebeck 111 case 25:
2606 schoenebeck 219 #line 110 "lscp.y"
2607     { LSCPSERVER->AnswerClient("Bye!\r\n"); return LSCP_QUIT; }
2608 schoenebeck 35 break;
2609    
2610 schoenebeck 111 case 26:
2611 schoenebeck 210 #line 113 "lscp.y"
2612 schoenebeck 219 { yyval.String = LSCPSERVER->SubscribeNotification(LSCPEvent::event_channels); }
2613 schoenebeck 35 break;
2614    
2615 schoenebeck 111 case 27:
2616 schoenebeck 210 #line 114 "lscp.y"
2617 schoenebeck 219 { yyval.String = LSCPSERVER->SubscribeNotification(LSCPEvent::event_voice_count); }
2618 schoenebeck 35 break;
2619    
2620 schoenebeck 111 case 28:
2621 schoenebeck 210 #line 115 "lscp.y"
2622 schoenebeck 219 { yyval.String = LSCPSERVER->SubscribeNotification(LSCPEvent::event_stream_count); }
2623 schoenebeck 35 break;
2624    
2625 schoenebeck 111 case 29:
2626 schoenebeck 210 #line 116 "lscp.y"
2627 schoenebeck 219 { yyval.String = LSCPSERVER->SubscribeNotification(LSCPEvent::event_buffer_fill); }
2628 schoenebeck 35 break;
2629    
2630 schoenebeck 111 case 30:
2631 schoenebeck 212 #line 117 "lscp.y"
2632 schoenebeck 219 { yyval.String = LSCPSERVER->SubscribeNotification(LSCPEvent::event_info); }
2633 schoenebeck 35 break;
2634    
2635 schoenebeck 111 case 31:
2636 schoenebeck 219 #line 118 "lscp.y"
2637     { yyval.String = LSCPSERVER->SubscribeNotification(LSCPEvent::event_misc); }
2638 schoenebeck 35 break;
2639    
2640 schoenebeck 111 case 32:
2641 schoenebeck 210 #line 121 "lscp.y"
2642 schoenebeck 219 { yyval.String = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_channels); }
2643 schoenebeck 35 break;
2644    
2645 schoenebeck 111 case 33:
2646 schoenebeck 210 #line 122 "lscp.y"
2647 schoenebeck 219 { yyval.String = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_voice_count); }
2648 schoenebeck 35 break;
2649    
2650 schoenebeck 111 case 34:
2651 schoenebeck 210 #line 123 "lscp.y"
2652 schoenebeck 219 { yyval.String = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_stream_count); }
2653 schoenebeck 35 break;
2654    
2655 schoenebeck 111 case 35:
2656 schoenebeck 210 #line 124 "lscp.y"
2657 schoenebeck 219 { yyval.String = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_buffer_fill); }
2658 schoenebeck 35 break;
2659    
2660 schoenebeck 111 case 36:
2661 schoenebeck 212 #line 125 "lscp.y"
2662 schoenebeck 219 { yyval.String = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_info); }
2663 schoenebeck 35 break;
2664    
2665 schoenebeck 111 case 37:
2666 schoenebeck 219 #line 126 "lscp.y"
2667     { yyval.String = LSCPSERVER->UnsubscribeNotification(LSCPEvent::event_misc); }
2668 schoenebeck 123 break;
2669    
2670     case 38:
2671 schoenebeck 210 #line 129 "lscp.y"
2672 schoenebeck 219 { yyval.String = LSCPSERVER->GetAvailableEngines(); }
2673 schoenebeck 123 break;
2674    
2675     case 39:
2676 schoenebeck 210 #line 130 "lscp.y"
2677 schoenebeck 219 { yyval.String = LSCPSERVER->GetAvailableMidiInputDrivers(); }
2678 schoenebeck 123 break;
2679    
2680     case 40:
2681 schoenebeck 210 #line 131 "lscp.y"
2682 schoenebeck 219 { yyval.String = LSCPSERVER->GetMidiInputDriverInfo(yyvsp[0].String); }
2683 schoenebeck 123 break;
2684    
2685     case 41:
2686 schoenebeck 210 #line 132 "lscp.y"
2687 schoenebeck 219 { yyval.String = LSCPSERVER->GetMidiInputDriverParameterInfo(yyvsp[-2].String, yyvsp[0].String); }
2688 schoenebeck 35 break;
2689    
2690 schoenebeck 123 case 42:
2691 schoenebeck 210 #line 133 "lscp.y"
2692 schoenebeck 219 { yyval.String = LSCPSERVER->GetMidiInputDriverParameterInfo(yyvsp[-4].String, yyvsp[-2].String, yyvsp[0].KeyValList); }
2693 schoenebeck 123 break;
2694    
2695     case 43:
2696 schoenebeck 210 #line 134 "lscp.y"
2697 schoenebeck 219 { yyval.String = LSCPSERVER->GetAvailableAudioOutputDrivers(); }
2698 schoenebeck 123 break;
2699    
2700     case 44:
2701 schoenebeck 210 #line 135 "lscp.y"
2702 schoenebeck 219 { yyval.String = LSCPSERVER->GetAudioOutputDriverInfo(yyvsp[0].String); }
2703 schoenebeck 35 break;
2704    
2705 schoenebeck 123 case 45:
2706 schoenebeck 210 #line 136 "lscp.y"
2707 schoenebeck 219 { yyval.String = LSCPSERVER->GetAudioOutputDriverParameterInfo(yyvsp[-2].String, yyvsp[0].String); }
2708 schoenebeck 35 break;
2709    
2710 schoenebeck 123 case 46:
2711 schoenebeck 210 #line 137 "lscp.y"
2712 schoenebeck 219 { yyval.String = LSCPSERVER->GetAudioOutputDriverParameterInfo(yyvsp[-4].String, yyvsp[-2].String, yyvsp[0].KeyValList); }
2713 schoenebeck 35 break;
2714    
2715 schoenebeck 123 case 47:
2716 schoenebeck 210 #line 138 "lscp.y"
2717 schoenebeck 219 { yyval.String = LSCPSERVER->GetAudioOutputDeviceCount(); }
2718 schoenebeck 35 break;
2719    
2720 schoenebeck 123 case 48:
2721 schoenebeck 210 #line 139 "lscp.y"
2722 schoenebeck 219 { yyval.String = LSCPSERVER->GetMidiInputDeviceCount(); }
2723 schoenebeck 35 break;
2724    
2725 schoenebeck 123 case 49:
2726 schoenebeck 210 #line 140 "lscp.y"
2727 schoenebeck 219 { yyval.String = LSCPSERVER->GetAudioOutputDeviceInfo(yyvsp[0].Number); }
2728 schoenebeck 35 break;
2729    
2730 schoenebeck 123 case 50:
2731 schoenebeck 210 #line 141 "lscp.y"
2732 schoenebeck 219 { yyval.String = LSCPSERVER->GetMidiInputDeviceInfo(yyvsp[0].Number); }
2733 schoenebeck 35 break;
2734    
2735 schoenebeck 123 case 51:
2736 schoenebeck 210 #line 142 "lscp.y"
2737 schoenebeck 219 { yyval.String = LSCPSERVER->GetMidiInputPortInfo(yyvsp[-2].Number, yyvsp[0].Number); }
2738 schoenebeck 123 break;
2739    
2740     case 52:
2741 schoenebeck 210 #line 143 "lscp.y"
2742 schoenebeck 219 { yyval.String = LSCPSERVER->GetMidiInputPortParameterInfo(yyvsp[-4].Number, yyvsp[-2].Number, yyvsp[0].String); }
2743 schoenebeck 123 break;
2744    
2745     case 53:
2746 schoenebeck 210 #line 144 "lscp.y"
2747 schoenebeck 219 { yyval.String = LSCPSERVER->GetAudioOutputChannelInfo(yyvsp[-2].Number, yyvsp[0].Number); }
2748 schoenebeck 123 break;
2749    
2750     case 54:
2751 schoenebeck 210 #line 145 "lscp.y"
2752 schoenebeck 219 { yyval.String = LSCPSERVER->GetAudioOutputChannelParameterInfo(yyvsp[-4].Number, yyvsp[-2].Number, yyvsp[0].String); }
2753 schoenebeck 123 break;
2754    
2755     case 55:
2756 schoenebeck 210 #line 146 "lscp.y"
2757 schoenebeck 219 { yyval.String = LSCPSERVER->GetChannels(); }
2758 schoenebeck 123 break;
2759    
2760     case 56:
2761 schoenebeck 210 #line 147 "lscp.y"
2762 schoenebeck 219 { yyval.String = LSCPSERVER->GetChannelInfo(yyvsp[0].Number); }
2763 schoenebeck 123 break;
2764    
2765     case 57:
2766 schoenebeck 210 #line 148 "lscp.y"
2767 schoenebeck 219 { yyval.String = LSCPSERVER->GetBufferFill(yyvsp[-2].FillResponse, yyvsp[0].Number); }
2768 schoenebeck 123 break;
2769    
2770     case 58:
2771 schoenebeck 210 #line 149 "lscp.y"
2772 schoenebeck 219 { yyval.String = LSCPSERVER->GetStreamCount(yyvsp[0].Number); }
2773 schoenebeck 123 break;
2774    
2775     case 59:
2776 schoenebeck 212 #line 150 "lscp.y"
2777 schoenebeck 219 { yyval.String = LSCPSERVER->GetVoiceCount(yyvsp[0].Number); }
2778 schoenebeck 123 break;
2779    
2780     case 60:
2781 schoenebeck 219 #line 151 "lscp.y"
2782     { yyval.String = LSCPSERVER->GetEngineInfo(yyvsp[0].String); }
2783 schoenebeck 123 break;
2784    
2785     case 61:
2786 schoenebeck 210 #line 154 "lscp.y"
2787 schoenebeck 219 { yyval.String = LSCPSERVER->SetAudioOutputDeviceParameter(yyvsp[-4].Number, yyvsp[-2].String, yyvsp[0].String); }
2788 schoenebeck 123 break;
2789    
2790     case 62:
2791 schoenebeck 210 #line 155 "lscp.y"
2792 schoenebeck 219 { yyval.String = LSCPSERVER->SetAudioOutputChannelParameter(yyvsp[-6].Number, yyvsp[-4].Number, yyvsp[-2].String, yyvsp[0].String); }
2793 schoenebeck 123 break;
2794    
2795 senkov 135 case 63:
2796 schoenebeck 210 #line 156 "lscp.y"
2797 schoenebeck 219 { yyval.String = LSCPSERVER->SetMidiInputDeviceParameter(yyvsp[-4].Number, yyvsp[-2].String, yyvsp[0].String); }
2798 senkov 135 break;
2799    
2800     case 64:
2801 schoenebeck 210 #line 157 "lscp.y"
2802 schoenebeck 219 { yyval.String = LSCPSERVER->SetMidiInputPortParameter(yyvsp[-6].Number, yyvsp[-4].Number, yyvsp[-2].String, yyvsp[0].String); }
2803 senkov 135 break;
2804    
2805 schoenebeck 123 case 65:
2806 schoenebeck 212 #line 158 "lscp.y"
2807 schoenebeck 219 { yyval.String = yyvsp[0].String; }
2808 senkov 155 break;
2809    
2810     case 66:
2811 schoenebeck 219 #line 159 "lscp.y"
2812     { yyval.String = LSCPSERVER->SetEcho((yyparse_param_t*) yyparse_param, yyvsp[0].Dotnum); }
2813 senkov 155 break;
2814    
2815     case 67:
2816 schoenebeck 210 #line 162 "lscp.y"
2817 schoenebeck 219 { yyval.String = LSCPSERVER->CreateAudioOutputDevice(yyvsp[-2].String,yyvsp[0].KeyValList); }
2818 senkov 155 break;
2819    
2820     case 68:
2821 schoenebeck 210 #line 163 "lscp.y"
2822 schoenebeck 219 { yyval.String = LSCPSERVER->CreateAudioOutputDevice(yyvsp[0].String); }
2823 schoenebeck 35 break;
2824    
2825 senkov 155 case 69:
2826 schoenebeck 212 #line 164 "lscp.y"
2827 schoenebeck 219 { yyval.String = LSCPSERVER->CreateMidiInputDevice(yyvsp[-2].String,yyvsp[0].KeyValList); }
2828 senkov 155 break;
2829    
2830     case 70:
2831 schoenebeck 219 #line 165 "lscp.y"
2832     { yyval.String = LSCPSERVER->CreateMidiInputDevice(yyvsp[0].String); }
2833 senkov 155 break;
2834    
2835     case 71:
2836 schoenebeck 212 #line 168 "lscp.y"
2837 schoenebeck 219 { yyval.String = LSCPSERVER->DestroyAudioOutputDevice(yyvsp[0].Number); }
2838 senkov 155 break;
2839    
2840     case 72:
2841 schoenebeck 219 #line 169 "lscp.y"
2842     { yyval.String = LSCPSERVER->DestroyMidiInputDevice(yyvsp[0].Number); }
2843 schoenebeck 210 break;
2844    
2845     case 73:
2846 schoenebeck 212 #line 172 "lscp.y"
2847     { yyval.String = yyvsp[0].String; }
2848 senkov 155 break;
2849    
2850 schoenebeck 210 case 74:
2851 schoenebeck 219 #line 173 "lscp.y"
2852     { yyval.String = yyvsp[0].String; }
2853 senkov 155 break;
2854    
2855 schoenebeck 210 case 75:
2856     #line 176 "lscp.y"
2857 schoenebeck 219 { yyval.String = LSCPSERVER->SetAudioOutputDevice(yyvsp[0].Number, yyvsp[-2].Number); }
2858 senkov 155 break;
2859    
2860 schoenebeck 210 case 76:
2861     #line 177 "lscp.y"
2862 schoenebeck 219 { yyval.String = LSCPSERVER->SetAudioOutputChannel(yyvsp[-2].Number, yyvsp[0].Number, yyvsp[-4].Number); }
2863 senkov 155 break;
2864    
2865 schoenebeck 210 case 77:
2866     #line 178 "lscp.y"
2867 schoenebeck 219 { yyval.String = LSCPSERVER->SetAudioOutputType(yyvsp[0].String, yyvsp[-2].Number); }
2868 schoenebeck 35 break;
2869    
2870 schoenebeck 210 case 78:
2871     #line 179 "lscp.y"
2872 schoenebeck 219 { yyval.String = LSCPSERVER->SetMIDIInput(yyvsp[-4].Number, yyvsp[-2].Number, yyvsp[0].Number, yyvsp[-6].Number); }
2873 senkov 135 break;
2874    
2875 schoenebeck 210 case 79:
2876     #line 180 "lscp.y"
2877 schoenebeck 219 { yyval.String = LSCPSERVER->SetMIDIInputDevice(yyvsp[0].Number, yyvsp[-2].Number); }
2878 capela 160 break;
2879    
2880 schoenebeck 210 case 80:
2881     #line 181 "lscp.y"
2882 schoenebeck 219 { yyval.String = LSCPSERVER->SetMIDIInputPort(yyvsp[0].Number, yyvsp[-2].Number); }
2883 capela 160 break;
2884    
2885 schoenebeck 210 case 81:
2886     #line 182 "lscp.y"
2887 schoenebeck 219 { yyval.String = LSCPSERVER->SetMIDIInputChannel(yyvsp[0].Number, yyvsp[-2].Number); }
2888 capela 160 break;
2889    
2890 schoenebeck 210 case 82:
2891 schoenebeck 212 #line 183 "lscp.y"
2892 schoenebeck 219 { yyval.String = LSCPSERVER->SetMIDIInputType(yyvsp[0].String, yyvsp[-2].Number); }
2893 capela 160 break;
2894    
2895 schoenebeck 210 case 83:
2896 schoenebeck 219 #line 184 "lscp.y"
2897     { yyval.String = LSCPSERVER->SetVolume(yyvsp[0].Dotnum, yyvsp[-2].Number); }
2898 senkov 135 break;
2899    
2900 schoenebeck 210 case 84:
2901 schoenebeck 212 #line 187 "lscp.y"
2902 schoenebeck 219 { yyval.KeyValList[yyvsp[-2].String] = yyvsp[0].String; }
2903 senkov 135 break;
2904    
2905 schoenebeck 210 case 85:
2906 schoenebeck 219 #line 188 "lscp.y"
2907     { yyval.KeyValList = yyvsp[-4].KeyValList; yyval.KeyValList[yyvsp[-2].String] = yyvsp[0].String; }
2908 senkov 135 break;
2909    
2910 schoenebeck 210 case 86:
2911 schoenebeck 212 #line 191 "lscp.y"
2912 schoenebeck 219 { yyval.FillResponse = fill_response_bytes; }
2913 senkov 135 break;
2914    
2915 schoenebeck 210 case 87:
2916 schoenebeck 219 #line 192 "lscp.y"
2917     { yyval.FillResponse = fill_response_percentage; }
2918 senkov 135 break;
2919    
2920 schoenebeck 210 case 88:
2921     #line 195 "lscp.y"
2922 schoenebeck 219 { yyval.String = LSCPSERVER->GetAudioOutputDevices(); }
2923 senkov 185 break;
2924    
2925 schoenebeck 210 case 89:
2926 schoenebeck 212 #line 196 "lscp.y"
2927 schoenebeck 219 { yyval.String = LSCPSERVER->GetMidiInputDevices(); }
2928 schoenebeck 209 break;
2929    
2930 schoenebeck 210 case 90:
2931 schoenebeck 219 #line 197 "lscp.y"
2932     { yyval.String = LSCPSERVER->ListChannels(); }
2933 schoenebeck 212 break;
2934    
2935     case 91:
2936     #line 200 "lscp.y"
2937 schoenebeck 219 { yyval.String = LSCPSERVER->LoadInstrument(yyvsp[-4].String, yyvsp[-2].Number, yyvsp[0].Number); }
2938 senkov 155 break;
2939    
2940 schoenebeck 212 case 92:
2941 schoenebeck 219 #line 201 "lscp.y"
2942     { yyval.String = LSCPSERVER->LoadInstrument(yyvsp[-4].String, yyvsp[-2].Number, yyvsp[0].Number, true); }
2943 capela 143 break;
2944    
2945 schoenebeck 219 case 93:
2946     #line 204 "lscp.y"
2947     { yyval.String = LSCPSERVER->LoadEngine(yyvsp[-2].String, yyvsp[0].Number); }
2948     break;
2949    
2950 schoenebeck 212 case 101:
2951 schoenebeck 219 #line 226 "lscp.y"
2952 senkov 135 { yyval.Dotnum = yyvsp[0].Number; }
2953     break;
2954    
2955 schoenebeck 210 case 108:
2956 schoenebeck 219 #line 243 "lscp.y"
2957     { std::stringstream ss; ss << yyvsp[0].Number; yyval.String = ss.str(); }
2958 schoenebeck 210 break;
2959    
2960     case 109:
2961 schoenebeck 219 #line 244 "lscp.y"
2962     { std::stringstream ss; ss << yyvsp[0].Dotnum; yyval.String = ss.str(); }
2963 schoenebeck 210 break;
2964    
2965     case 110:
2966 schoenebeck 219 #line 250 "lscp.y"
2967 schoenebeck 214 { yyval.Dotnum = yyvsp[0].Number; }
2968 schoenebeck 209 break;
2969    
2970 schoenebeck 210 case 111:
2971 schoenebeck 219 #line 251 "lscp.y"
2972 schoenebeck 214 { yyval.Dotnum = -1; }
2973 schoenebeck 212 break;
2974    
2975     case 112:
2976 schoenebeck 219 #line 254 "lscp.y"
2977 schoenebeck 214 { std::string s; s = yyvsp[0].Char; yyval.String = s; }
2978     break;
2979    
2980     case 113:
2981 schoenebeck 219 #line 255 "lscp.y"
2982 schoenebeck 35 { yyval.String = yyvsp[-1].String + yyvsp[0].Char; }
2983     break;
2984    
2985 schoenebeck 219 case 114:
2986     #line 258 "lscp.y"
2987 schoenebeck 225 { yyval.Dotnum = atof(String(yyvsp[-2].String + "." + yyvsp[0].String).c_str()); }
2988 schoenebeck 219 break;
2989 schoenebeck 35
2990 schoenebeck 219 case 115:
2991     #line 259 "lscp.y"
2992     { String s = "+"; s += yyvsp[-2].String; s += "."; s += yyvsp[0].String; yyval.Dotnum = atof(s.c_str()); }
2993     break;
2994    
2995     case 116:
2996     #line 260 "lscp.y"
2997     { yyval.Dotnum = atof(String("-" + yyvsp[-2].String + "." + yyvsp[0].String).c_str()); }
2998     break;
2999    
3000     case 117:
3001     #line 264 "lscp.y"
3002     { yyval.String = yyvsp[0].Char; }
3003     break;
3004    
3005     case 118:
3006     #line 265 "lscp.y"
3007     { yyval.String = yyvsp[-1].String + yyvsp[0].Char; }
3008     break;
3009    
3010     case 119:
3011     #line 268 "lscp.y"
3012     { yyval.Char = '0'; }
3013     break;
3014    
3015     case 120:
3016     #line 269 "lscp.y"
3017     { yyval.Char = '1'; }
3018     break;
3019    
3020     case 121:
3021     #line 270 "lscp.y"
3022     { yyval.Char = '2'; }
3023     break;
3024    
3025     case 122:
3026     #line 271 "lscp.y"
3027     { yyval.Char = '3'; }
3028     break;
3029    
3030     case 123:
3031     #line 272 "lscp.y"
3032     { yyval.Char = '4'; }
3033     break;
3034    
3035     case 124:
3036     #line 273 "lscp.y"
3037     { yyval.Char = '5'; }
3038     break;
3039    
3040     case 125:
3041     #line 274 "lscp.y"
3042     { yyval.Char = '6'; }
3043     break;
3044    
3045     case 126:
3046     #line 275 "lscp.y"
3047     { yyval.Char = '7'; }
3048     break;
3049    
3050     case 127:
3051     #line 276 "lscp.y"
3052     { yyval.Char = '8'; }
3053     break;
3054    
3055     case 128:
3056     #line 277 "lscp.y"
3057     { yyval.Char = '9'; }
3058     break;
3059    
3060     case 129:
3061     #line 280 "lscp.y"
3062     { yyval.Number = atoi(String(1, yyvsp[0].Char).c_str()); }
3063     break;
3064    
3065     case 130:
3066     #line 281 "lscp.y"
3067     { yyval.Number = atoi(String(String("1") + yyvsp[0].String).c_str()); }
3068     break;
3069    
3070     case 131:
3071     #line 282 "lscp.y"
3072     { yyval.Number = atoi(String(String("2") + yyvsp[0].String).c_str()); }
3073     break;
3074    
3075     case 132:
3076     #line 283 "lscp.y"
3077     { yyval.Number = atoi(String(String("3") + yyvsp[0].String).c_str()); }
3078     break;
3079    
3080     case 133:
3081     #line 284 "lscp.y"
3082     { yyval.Number = atoi(String(String("4") + yyvsp[0].String).c_str()); }
3083     break;
3084    
3085     case 134:
3086     #line 285 "lscp.y"
3087     { yyval.Number = atoi(String(String("5") + yyvsp[0].String).c_str()); }
3088     break;
3089    
3090     case 135:
3091     #line 286 "lscp.y"
3092     { yyval.Number = atoi(String(String("6") + yyvsp[0].String).c_str()); }
3093     break;
3094    
3095     case 136:
3096     #line 287 "lscp.y"
3097     { yyval.Number = atoi(String(String("7") + yyvsp[0].String).c_str()); }
3098     break;
3099    
3100     case 137:
3101     #line 288 "lscp.y"
3102     { yyval.Number = atoi(String(String("8") + yyvsp[0].String).c_str()); }
3103     break;
3104    
3105     case 138:
3106     #line 289 "lscp.y"
3107     { yyval.Number = atoi(String(String("9") + yyvsp[0].String).c_str()); }
3108     break;
3109    
3110     case 139:
3111     #line 291 "lscp.y"
3112     { yyval.Char = 'A'; }
3113     break;
3114    
3115     case 140:
3116     #line 291 "lscp.y"
3117     { yyval.Char = 'B'; }
3118     break;
3119    
3120     case 141:
3121     #line 291 "lscp.y"
3122     { yyval.Char = 'C'; }
3123     break;
3124    
3125     case 142:
3126     #line 291 "lscp.y"
3127     { yyval.Char = 'D'; }
3128     break;
3129    
3130     case 143:
3131     #line 291 "lscp.y"
3132     { yyval.Char = 'E'; }
3133     break;
3134    
3135     case 144:
3136     #line 291 "lscp.y"
3137     { yyval.Char = 'F'; }
3138     break;
3139    
3140     case 145:
3141     #line 291 "lscp.y"
3142     { yyval.Char = 'G'; }
3143     break;
3144    
3145     case 146:
3146     #line 291 "lscp.y"
3147     { yyval.Char = 'H'; }
3148     break;
3149    
3150     case 147:
3151     #line 291 "lscp.y"
3152     { yyval.Char = 'I'; }
3153     break;
3154    
3155     case 148:
3156     #line 291 "lscp.y"
3157     { yyval.Char = 'J'; }
3158     break;
3159    
3160     case 149:
3161     #line 291 "lscp.y"
3162     { yyval.Char = 'K'; }
3163     break;
3164    
3165     case 150:
3166     #line 291 "lscp.y"
3167     { yyval.Char = 'L'; }
3168     break;
3169    
3170     case 151:
3171     #line 291 "lscp.y"
3172     { yyval.Char = 'M'; }
3173     break;
3174    
3175     case 152:
3176     #line 291 "lscp.y"
3177     { yyval.Char = 'N'; }
3178     break;
3179    
3180     case 153:
3181     #line 291 "lscp.y"
3182     { yyval.Char = 'O'; }
3183     break;
3184    
3185     case 154:
3186     #line 291 "lscp.y"
3187     { yyval.Char = 'P'; }
3188     break;
3189    
3190     case 155:
3191     #line 291 "lscp.y"
3192     { yyval.Char = 'Q'; }
3193     break;
3194    
3195     case 156:
3196     #line 291 "lscp.y"
3197     { yyval.Char = 'R'; }
3198     break;
3199    
3200     case 157:
3201     #line 291 "lscp.y"
3202     { yyval.Char = 'S'; }
3203     break;
3204    
3205     case 158:
3206     #line 291 "lscp.y"
3207     { yyval.Char = 'T'; }
3208     break;
3209    
3210     case 159:
3211     #line 291 "lscp.y"
3212     { yyval.Char = 'U'; }
3213     break;
3214    
3215     case 160:
3216     #line 291 "lscp.y"
3217     { yyval.Char = 'V'; }
3218     break;
3219    
3220     case 161:
3221     #line 291 "lscp.y"
3222     { yyval.Char = 'W'; }
3223     break;
3224    
3225     case 162:
3226     #line 291 "lscp.y"
3227     { yyval.Char = 'X'; }
3228     break;
3229    
3230     case 163:
3231     #line 291 "lscp.y"
3232     { yyval.Char = 'Y'; }
3233     break;
3234    
3235     case 164:
3236     #line 291 "lscp.y"
3237     { yyval.Char = 'Z'; }
3238     break;
3239    
3240     case 165:
3241     #line 292 "lscp.y"
3242     { yyval.Char = 'a'; }
3243     break;
3244    
3245     case 166:
3246     #line 292 "lscp.y"
3247     { yyval.Char = 'b'; }
3248     break;
3249    
3250     case 167:
3251     #line 292 "lscp.y"
3252     { yyval.Char = 'c'; }
3253     break;
3254    
3255     case 168:
3256     #line 292 "lscp.y"
3257     { yyval.Char = 'd'; }
3258     break;
3259    
3260     case 169:
3261     #line 292 "lscp.y"
3262     { yyval.Char = 'e'; }
3263     break;
3264    
3265     case 170:
3266     #line 292 "lscp.y"
3267     { yyval.Char = 'f'; }
3268     break;
3269    
3270     case 171:
3271     #line 292 "lscp.y"
3272     { yyval.Char = 'g'; }
3273     break;
3274    
3275     case 172:
3276     #line 292 "lscp.y"
3277     { yyval.Char = 'h'; }
3278     break;
3279    
3280     case 173:
3281     #line 292 "lscp.y"
3282     { yyval.Char = 'i'; }
3283     break;
3284    
3285     case 174:
3286     #line 292 "lscp.y"
3287     { yyval.Char = 'j'; }
3288     break;
3289    
3290     case 175:
3291     #line 292 "lscp.y"
3292     { yyval.Char = 'k'; }
3293     break;
3294    
3295     case 176:
3296     #line 292 "lscp.y"
3297     { yyval.Char = 'l'; }
3298     break;
3299    
3300     case 177:
3301     #line 292 "lscp.y"
3302     { yyval.Char = 'm'; }
3303     break;
3304    
3305     case 178:
3306     #line 292 "lscp.y"
3307     { yyval.Char = 'n'; }
3308     break;
3309    
3310     case 179:
3311     #line 292 "lscp.y"
3312     { yyval.Char = 'o'; }
3313     break;
3314    
3315     case 180:
3316     #line 292 "lscp.y"
3317     { yyval.Char = 'p'; }
3318     break;
3319    
3320     case 181:
3321     #line 292 "lscp.y"
3322     { yyval.Char = 'q'; }
3323     break;
3324    
3325     case 182:
3326     #line 292 "lscp.y"
3327     { yyval.Char = 'r'; }
3328     break;
3329    
3330     case 183:
3331     #line 292 "lscp.y"
3332     { yyval.Char = 's'; }
3333     break;
3334    
3335     case 184:
3336     #line 292 "lscp.y"
3337     { yyval.Char = 't'; }
3338     break;
3339    
3340     case 185:
3341     #line 292 "lscp.y"
3342     { yyval.Char = 'u'; }
3343     break;
3344    
3345     case 186:
3346     #line 292 "lscp.y"
3347     { yyval.Char = 'v'; }
3348     break;
3349    
3350     case 187:
3351     #line 292 "lscp.y"
3352     { yyval.Char = 'w'; }
3353     break;
3354    
3355     case 188:
3356     #line 292 "lscp.y"
3357     { yyval.Char = 'x'; }
3358     break;
3359    
3360     case 189:
3361     #line 292 "lscp.y"
3362     { yyval.Char = 'y'; }
3363     break;
3364    
3365     case 190:
3366     #line 292 "lscp.y"
3367     { yyval.Char = 'z'; }
3368     break;
3369    
3370     case 191:
3371     #line 293 "lscp.y"
3372     { yyval.Char = '0'; }
3373     break;
3374    
3375     case 192:
3376     #line 293 "lscp.y"
3377     { yyval.Char = '1'; }
3378     break;
3379    
3380     case 193:
3381     #line 293 "lscp.y"
3382     { yyval.Char = '2'; }
3383     break;
3384    
3385     case 194:
3386     #line 293 "lscp.y"
3387     { yyval.Char = '3'; }
3388     break;
3389    
3390     case 195:
3391     #line 293 "lscp.y"
3392     { yyval.Char = '4'; }
3393     break;
3394    
3395     case 196:
3396     #line 293 "lscp.y"
3397     { yyval.Char = '5'; }
3398     break;
3399    
3400     case 197:
3401     #line 293 "lscp.y"
3402     { yyval.Char = '6'; }
3403     break;
3404    
3405     case 198:
3406     #line 293 "lscp.y"
3407     { yyval.Char = '7'; }
3408     break;
3409    
3410     case 199:
3411     #line 293 "lscp.y"
3412     { yyval.Char = '8'; }
3413     break;
3414    
3415     case 200:
3416     #line 293 "lscp.y"
3417     { yyval.Char = '9'; }
3418     break;
3419    
3420     case 201:
3421     #line 294 "lscp.y"
3422     { yyval.Char = '!'; }
3423     break;
3424    
3425     case 202:
3426     #line 294 "lscp.y"
3427     { yyval.Char = '#'; }
3428     break;
3429    
3430     case 203:
3431     #line 294 "lscp.y"
3432     { yyval.Char = '$'; }
3433     break;
3434    
3435     case 204:
3436     #line 294 "lscp.y"
3437     { yyval.Char = '%'; }
3438     break;
3439    
3440     case 205:
3441     #line 294 "lscp.y"
3442     { yyval.Char = '&'; }
3443     break;
3444    
3445     case 206:
3446     #line 294 "lscp.y"
3447     { yyval.Char = '('; }
3448     break;
3449    
3450     case 207:
3451     #line 294 "lscp.y"
3452     { yyval.Char = ')'; }
3453     break;
3454    
3455     case 208:
3456     #line 294 "lscp.y"
3457     { yyval.Char = '*'; }
3458     break;
3459    
3460     case 209:
3461     #line 294 "lscp.y"
3462     { yyval.Char = '+'; }
3463     break;
3464    
3465     case 210:
3466     #line 294 "lscp.y"
3467     { yyval.Char = '-'; }
3468     break;
3469    
3470     case 211:
3471     #line 294 "lscp.y"
3472     { yyval.Char = '.'; }
3473     break;
3474    
3475     case 212:
3476     #line 294 "lscp.y"
3477     { yyval.Char = '/'; }
3478     break;
3479    
3480     case 213:
3481     #line 295 "lscp.y"
3482     { yyval.Char = ':'; }
3483     break;
3484    
3485     case 214:
3486     #line 295 "lscp.y"
3487     { yyval.Char = ';'; }
3488     break;
3489    
3490     case 215:
3491     #line 295 "lscp.y"
3492     { yyval.Char = '<'; }
3493     break;
3494    
3495     case 216:
3496     #line 295 "lscp.y"
3497     { yyval.Char = '='; }
3498     break;
3499    
3500     case 217:
3501     #line 295 "lscp.y"
3502     { yyval.Char = '>'; }
3503     break;
3504    
3505     case 218:
3506     #line 295 "lscp.y"
3507     { yyval.Char = '?'; }
3508     break;
3509    
3510     case 219:
3511     #line 295 "lscp.y"
3512     { yyval.Char = '@'; }
3513     break;
3514    
3515     case 220:
3516     #line 296 "lscp.y"
3517     { yyval.Char = '['; }
3518     break;
3519    
3520     case 221:
3521     #line 296 "lscp.y"
3522     { yyval.Char = '\\'; }
3523     break;
3524    
3525     case 222:
3526     #line 296 "lscp.y"
3527     { yyval.Char = ']'; }
3528     break;
3529    
3530     case 223:
3531     #line 296 "lscp.y"
3532     { yyval.Char = '^'; }
3533     break;
3534    
3535     case 224:
3536     #line 296 "lscp.y"
3537     { yyval.Char = '_'; }
3538     break;
3539    
3540     case 225:
3541     #line 297 "lscp.y"
3542     { yyval.Char = '{'; }
3543     break;
3544    
3545     case 226:
3546     #line 297 "lscp.y"
3547     { yyval.Char = '|'; }
3548     break;
3549    
3550     case 227:
3551     #line 297 "lscp.y"
3552     { yyval.Char = '}'; }
3553     break;
3554    
3555     case 228:
3556     #line 297 "lscp.y"
3557     { yyval.Char = '~'; }
3558     break;
3559    
3560     case 229:
3561     #line 298 "lscp.y"
3562     { yyval.Char = '\200'; }
3563     break;
3564    
3565     case 230:
3566     #line 298 "lscp.y"
3567     { yyval.Char = '\201'; }
3568     break;
3569    
3570     case 231:
3571     #line 298 "lscp.y"
3572     { yyval.Char = '\202'; }
3573     break;
3574    
3575     case 232:
3576     #line 299 "lscp.y"
3577     { yyval.Char = '\203'; }
3578     break;
3579    
3580     case 233:
3581     #line 299 "lscp.y"
3582     { yyval.Char = '\204'; }
3583     break;
3584    
3585     case 234:
3586     #line 299 "lscp.y"
3587     { yyval.Char = '\205'; }
3588     break;
3589    
3590     case 235:
3591     #line 300 "lscp.y"
3592     { yyval.Char = '\206'; }
3593     break;
3594    
3595     case 236:
3596     #line 300 "lscp.y"
3597     { yyval.Char = '\207'; }
3598     break;
3599    
3600     case 237:
3601     #line 300 "lscp.y"
3602     { yyval.Char = '\210'; }
3603     break;
3604    
3605     case 238:
3606     #line 301 "lscp.y"
3607     { yyval.Char = '\211'; }
3608     break;
3609    
3610     case 239:
3611     #line 301 "lscp.y"
3612     { yyval.Char = '\212'; }
3613     break;
3614    
3615     case 240:
3616     #line 301 "lscp.y"
3617     { yyval.Char = '\213'; }
3618     break;
3619    
3620     case 241:
3621     #line 302 "lscp.y"
3622     { yyval.Char = '\214'; }
3623     break;
3624    
3625     case 242:
3626     #line 302 "lscp.y"
3627     { yyval.Char = '\215'; }
3628     break;
3629    
3630     case 243:
3631     #line 302 "lscp.y"
3632     { yyval.Char = '\216'; }
3633     break;
3634    
3635     case 244:
3636     #line 303 "lscp.y"
3637     { yyval.Char = '\217'; }
3638     break;
3639    
3640     case 245:
3641     #line 303 "lscp.y"
3642     { yyval.Char = '\220'; }
3643     break;
3644    
3645     case 246:
3646     #line 303 "lscp.y"
3647     { yyval.Char = '\221'; }
3648     break;
3649    
3650     case 247:
3651     #line 304 "lscp.y"
3652     { yyval.Char = '\222'; }
3653     break;
3654    
3655     case 248:
3656     #line 304 "lscp.y"
3657     { yyval.Char = '\223'; }
3658     break;
3659    
3660     case 249:
3661     #line 304 "lscp.y"
3662     { yyval.Char = '\224'; }
3663     break;
3664    
3665     case 250:
3666     #line 305 "lscp.y"
3667     { yyval.Char = '\225'; }
3668     break;
3669    
3670     case 251:
3671     #line 305 "lscp.y"
3672     { yyval.Char = '\226'; }
3673     break;
3674    
3675     case 252:
3676     #line 305 "lscp.y"
3677     { yyval.Char = '\227'; }
3678     break;
3679    
3680     case 253:
3681     #line 306 "lscp.y"
3682     { yyval.Char = '\230'; }
3683     break;
3684    
3685     case 254:
3686     #line 306 "lscp.y"
3687     { yyval.Char = '\231'; }
3688     break;
3689    
3690     case 255:
3691     #line 306 "lscp.y"
3692     { yyval.Char = '\232'; }
3693     break;
3694    
3695     case 256:
3696     #line 307 "lscp.y"
3697     { yyval.Char = '\233'; }
3698     break;
3699    
3700     case 257:
3701     #line 307 "lscp.y"
3702     { yyval.Char = '\234'; }
3703     break;
3704    
3705     case 258:
3706     #line 307 "lscp.y"
3707     { yyval.Char = '\235'; }
3708     break;
3709    
3710     case 259:
3711     #line 308 "lscp.y"
3712     { yyval.Char = '\236'; }
3713     break;
3714    
3715     case 260:
3716     #line 308 "lscp.y"
3717     { yyval.Char = '\237'; }
3718     break;
3719    
3720     case 261:
3721     #line 308 "lscp.y"
3722     { yyval.Char = '\240'; }
3723     break;
3724    
3725     case 262:
3726     #line 309 "lscp.y"
3727     { yyval.Char = '\241'; }
3728     break;
3729    
3730     case 263:
3731     #line 309 "lscp.y"
3732     { yyval.Char = '\242'; }
3733     break;
3734    
3735     case 264:
3736     #line 309 "lscp.y"
3737     { yyval.Char = '\243'; }
3738     break;
3739    
3740     case 265:
3741     #line 310 "lscp.y"
3742     { yyval.Char = '\244'; }
3743     break;
3744    
3745     case 266:
3746     #line 310 "lscp.y"
3747     { yyval.Char = '\245'; }
3748     break;
3749    
3750     case 267:
3751     #line 310 "lscp.y"
3752     { yyval.Char = '\246'; }
3753     break;
3754    
3755     case 268:
3756     #line 311 "lscp.y"
3757     { yyval.Char = '\247'; }
3758     break;
3759    
3760     case 269:
3761     #line 311 "lscp.y"
3762     { yyval.Char = '\250'; }
3763     break;
3764    
3765     case 270:
3766     #line 311 "lscp.y"
3767     { yyval.Char = '\251'; }
3768     break;
3769    
3770     case 271:
3771     #line 312 "lscp.y"
3772     { yyval.Char = '\252'; }
3773     break;
3774    
3775     case 272:
3776     #line 312 "lscp.y"
3777     { yyval.Char = '\253'; }
3778     break;
3779    
3780     case 273:
3781     #line 312 "lscp.y"
3782     { yyval.Char = '\254'; }
3783     break;
3784    
3785     case 274:
3786     #line 313 "lscp.y"
3787     { yyval.Char = '\255'; }
3788     break;
3789    
3790     case 275:
3791     #line 313 "lscp.y"
3792     { yyval.Char = '\256'; }
3793     break;
3794    
3795     case 276:
3796     #line 313 "lscp.y"
3797     { yyval.Char = '\257'; }
3798     break;
3799    
3800     case 277:
3801     #line 314 "lscp.y"
3802     { yyval.Char = '\260'; }
3803     break;
3804    
3805     case 278:
3806     #line 314 "lscp.y"
3807     { yyval.Char = '\261'; }
3808     break;
3809    
3810     case 279:
3811     #line 314 "lscp.y"
3812     { yyval.Char = '\262'; }
3813     break;
3814    
3815     case 280:
3816     #line 315 "lscp.y"
3817     { yyval.Char = '\263'; }
3818     break;
3819    
3820     case 281:
3821     #line 315 "lscp.y"
3822     { yyval.Char = '\264'; }
3823     break;
3824    
3825     case 282:
3826     #line 315 "lscp.y"
3827     { yyval.Char = '\265'; }
3828     break;
3829    
3830     case 283:
3831     #line 316 "lscp.y"
3832     { yyval.Char = '\266'; }
3833     break;
3834    
3835     case 284:
3836     #line 316 "lscp.y"
3837     { yyval.Char = '\267'; }
3838     break;
3839    
3840     case 285:
3841     #line 316 "lscp.y"
3842     { yyval.Char = '\270'; }
3843     break;
3844    
3845     case 286:
3846     #line 317 "lscp.y"
3847     { yyval.Char = '\271'; }
3848     break;
3849    
3850     case 287:
3851     #line 317 "lscp.y"
3852     { yyval.Char = '\272'; }
3853     break;
3854    
3855     case 288:
3856     #line 317 "lscp.y"
3857     { yyval.Char = '\273'; }
3858     break;
3859    
3860     case 289:
3861     #line 318 "lscp.y"
3862     { yyval.Char = '\274'; }
3863     break;
3864    
3865     case 290:
3866     #line 318 "lscp.y"
3867     { yyval.Char = '\275'; }
3868     break;
3869    
3870     case 291:
3871     #line 318 "lscp.y"
3872     { yyval.Char = '\276'; }
3873     break;
3874    
3875     case 292:
3876     #line 319 "lscp.y"
3877     { yyval.Char = '\277'; }
3878     break;
3879    
3880     case 293:
3881     #line 319 "lscp.y"
3882     { yyval.Char = '\300'; }
3883     break;
3884    
3885     case 294:
3886     #line 319 "lscp.y"
3887     { yyval.Char = '\301'; }
3888     break;
3889    
3890     case 295:
3891     #line 320 "lscp.y"
3892     { yyval.Char = '\302'; }
3893     break;
3894    
3895     case 296:
3896     #line 320 "lscp.y"
3897     { yyval.Char = '\303'; }
3898     break;
3899    
3900     case 297:
3901     #line 320 "lscp.y"
3902     { yyval.Char = '\304'; }
3903     break;
3904    
3905     case 298:
3906     #line 321 "lscp.y"
3907     { yyval.Char = '\305'; }
3908     break;
3909    
3910     case 299:
3911     #line 321 "lscp.y"
3912     { yyval.Char = '\306'; }
3913     break;
3914    
3915     case 300:
3916     #line 321 "lscp.y"
3917     { yyval.Char = '\307'; }
3918     break;
3919    
3920     case 301:
3921     #line 322 "lscp.y"
3922     { yyval.Char = '\310'; }
3923     break;
3924    
3925     case 302:
3926     #line 322 "lscp.y"
3927     { yyval.Char = '\311'; }
3928     break;
3929    
3930     case 303:
3931     #line 322 "lscp.y"
3932     { yyval.Char = '\312'; }
3933     break;
3934    
3935     case 304:
3936     #line 323 "lscp.y"
3937     { yyval.Char = '\313'; }
3938     break;
3939    
3940     case 305:
3941     #line 323 "lscp.y"
3942     { yyval.Char = '\314'; }
3943     break;
3944    
3945     case 306:
3946     #line 323 "lscp.y"
3947     { yyval.Char = '\315'; }
3948     break;
3949    
3950     case 307:
3951     #line 324 "lscp.y"
3952     { yyval.Char = '\316'; }
3953     break;
3954    
3955     case 308:
3956     #line 324 "lscp.y"
3957     { yyval.Char = '\317'; }
3958     break;
3959    
3960     case 309:
3961     #line 324 "lscp.y"
3962     { yyval.Char = '\320'; }
3963     break;
3964    
3965     case 310:
3966     #line 325 "lscp.y"
3967     { yyval.Char = '\321'; }
3968     break;
3969    
3970     case 311:
3971     #line 325 "lscp.y"
3972     { yyval.Char = '\322'; }
3973     break;
3974    
3975     case 312:
3976     #line 325 "lscp.y"
3977     { yyval.Char = '\323'; }
3978     break;
3979    
3980     case 313:
3981     #line 326 "lscp.y"
3982     { yyval.Char = '\324'; }
3983     break;
3984    
3985     case 314:
3986     #line 326 "lscp.y"
3987     { yyval.Char = '\325'; }
3988     break;
3989    
3990     case 315:
3991     #line 326 "lscp.y"
3992     { yyval.Char = '\326'; }
3993     break;
3994    
3995     case 316:
3996     #line 327 "lscp.y"
3997     { yyval.Char = '\327'; }
3998     break;
3999    
4000     case 317:
4001     #line 327 "lscp.y"
4002     { yyval.Char = '\330'; }
4003     break;
4004    
4005     case 318:
4006     #line 327 "lscp.y"
4007     { yyval.Char = '\331'; }
4008     break;
4009    
4010     case 319:
4011     #line 328 "lscp.y"
4012     { yyval.Char = '\332'; }
4013     break;
4014    
4015     case 320:
4016     #line 328 "lscp.y"
4017     { yyval.Char = '\333'; }
4018     break;
4019    
4020     case 321:
4021     #line 328 "lscp.y"
4022     { yyval.Char = '\334'; }
4023     break;
4024    
4025     case 322:
4026     #line 329 "lscp.y"
4027     { yyval.Char = '\335'; }
4028     break;
4029    
4030     case 323:
4031     #line 329 "lscp.y"
4032     { yyval.Char = '\336'; }
4033     break;
4034    
4035     case 324:
4036     #line 329 "lscp.y"
4037     { yyval.Char = '\337'; }
4038     break;
4039    
4040     case 325:
4041     #line 330 "lscp.y"
4042     { yyval.Char = '\340'; }
4043     break;
4044    
4045     case 326:
4046     #line 330 "lscp.y"
4047     { yyval.Char = '\341'; }
4048     break;
4049    
4050     case 327:
4051     #line 330 "lscp.y"
4052     { yyval.Char = '\342'; }
4053     break;
4054    
4055     case 328:
4056     #line 331 "lscp.y"
4057     { yyval.Char = '\343'; }
4058     break;
4059    
4060     case 329:
4061     #line 331 "lscp.y"
4062     { yyval.Char = '\344'; }
4063     break;
4064    
4065     case 330:
4066     #line 331 "lscp.y"
4067     { yyval.Char = '\345'; }
4068     break;
4069    
4070     case 331:
4071     #line 332 "lscp.y"
4072     { yyval.Char = '\346'; }
4073     break;
4074    
4075     case 332:
4076     #line 332 "lscp.y"
4077     { yyval.Char = '\347'; }
4078     break;
4079    
4080     case 333:
4081     #line 332 "lscp.y"
4082     { yyval.Char = '\350'; }
4083     break;
4084    
4085     case 334:
4086     #line 333 "lscp.y"
4087     { yyval.Char = '\351'; }
4088     break;
4089    
4090     case 335:
4091     #line 333 "lscp.y"
4092     { yyval.Char = '\352'; }
4093     break;
4094    
4095     case 336:
4096     #line 333 "lscp.y"
4097     { yyval.Char = '\353'; }
4098     break;
4099    
4100     case 337:
4101     #line 334 "lscp.y"
4102     { yyval.Char = '\354'; }
4103     break;
4104    
4105     case 338:
4106     #line 334 "lscp.y"
4107     { yyval.Char = '\355'; }
4108     break;
4109    
4110     case 339:
4111     #line 334 "lscp.y"
4112     { yyval.Char = '\356'; }
4113     break;
4114    
4115     case 340:
4116     #line 335 "lscp.y"
4117     { yyval.Char = '\357'; }
4118     break;
4119    
4120     case 341:
4121     #line 335 "lscp.y"
4122     { yyval.Char = '\360'; }
4123     break;
4124    
4125     case 342:
4126     #line 335 "lscp.y"
4127     { yyval.Char = '\361'; }
4128     break;
4129    
4130     case 343:
4131     #line 336 "lscp.y"
4132     { yyval.Char = '\362'; }
4133     break;
4134    
4135     case 344:
4136     #line 336 "lscp.y"
4137     { yyval.Char = '\363'; }
4138     break;
4139    
4140     case 345:
4141     #line 336 "lscp.y"
4142     { yyval.Char = '\364'; }
4143     break;
4144    
4145     case 346:
4146     #line 337 "lscp.y"
4147     { yyval.Char = '\365'; }
4148     break;
4149    
4150     case 347:
4151     #line 337 "lscp.y"
4152     { yyval.Char = '\366'; }
4153     break;
4154    
4155     case 348:
4156     #line 337 "lscp.y"
4157     { yyval.Char = '\367'; }
4158     break;
4159    
4160     case 349:
4161     #line 338 "lscp.y"
4162     { yyval.Char = '\370'; }
4163     break;
4164    
4165     case 350:
4166     #line 338 "lscp.y"
4167     { yyval.Char = '\371'; }
4168     break;
4169    
4170     case 351:
4171     #line 338 "lscp.y"
4172     { yyval.Char = '\372'; }
4173     break;
4174    
4175     case 352:
4176     #line 339 "lscp.y"
4177     { yyval.Char = '\373'; }
4178     break;
4179    
4180     case 353:
4181     #line 339 "lscp.y"
4182     { yyval.Char = '\374'; }
4183     break;
4184    
4185     case 354:
4186     #line 339 "lscp.y"
4187     { yyval.Char = '\375'; }
4188     break;
4189    
4190     case 355:
4191     #line 340 "lscp.y"
4192     { yyval.Char = '\376'; }
4193     break;
4194    
4195     case 356:
4196     #line 340 "lscp.y"
4197     { yyval.Char = '\377'; }
4198     break;
4199    
4200     case 357:
4201     #line 343 "lscp.y"
4202 schoenebeck 221 { yyval.String = " "; }
4203     break;
4204    
4205     case 359:
4206     #line 345 "lscp.y"
4207     { yyval.String = yyvsp[-1].String + " "; }
4208     break;
4209    
4210     case 360:
4211     #line 346 "lscp.y"
4212     { yyval.String = yyvsp[-1].String + yyvsp[0].String; }
4213     break;
4214    
4215     case 361:
4216     #line 349 "lscp.y"
4217 schoenebeck 225 { yyval.String = yyvsp[-1].String; }
4218 schoenebeck 219 break;
4219    
4220 schoenebeck 221 case 362:
4221     #line 350 "lscp.y"
4222 schoenebeck 225 { yyval.String = yyvsp[-1].String; }
4223 schoenebeck 219 break;
4224    
4225    
4226 schoenebeck 35 }
4227    
4228 senkov 170 /* Line 999 of yacc.c. */
4229 schoenebeck 221 #line 4230 "y.tab.c"
4230 schoenebeck 35
4231     yyvsp -= yylen;
4232     yyssp -= yylen;
4233    
4234    
4235     YY_STACK_PRINT (yyss, yyssp);
4236    
4237     *++yyvsp = yyval;
4238    
4239    
4240     /* Now `shift' the result of the reduction. Determine what state
4241     that goes to, based on the state we popped back to and the rule
4242     number reduced by. */
4243    
4244     yyn = yyr1[yyn];
4245    
4246     yystate = yypgoto[yyn - YYNTOKENS] + *yyssp;
4247     if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp)
4248     yystate = yytable[yystate];
4249     else
4250     yystate = yydefgoto[yyn - YYNTOKENS];
4251    
4252     goto yynewstate;
4253    
4254    
4255     /*------------------------------------.
4256     | yyerrlab -- here on detecting error |
4257     `------------------------------------*/
4258     yyerrlab:
4259     /* If not already recovering from an error, report this error. */
4260     if (!yyerrstatus)
4261     {
4262     ++yynerrs;
4263     #if YYERROR_VERBOSE
4264     yyn = yypact[yystate];
4265    
4266     if (YYPACT_NINF < yyn && yyn < YYLAST)
4267     {
4268     YYSIZE_T yysize = 0;
4269     int yytype = YYTRANSLATE (yychar);
4270     char *yymsg;
4271     int yyx, yycount;
4272    
4273     yycount = 0;
4274     /* Start YYX at -YYN if negative to avoid negative indexes in
4275     YYCHECK. */
4276     for (yyx = yyn < 0 ? -yyn : 0;
4277     yyx < (int) (sizeof (yytname) / sizeof (char *)); yyx++)
4278     if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
4279     yysize += yystrlen (yytname[yyx]) + 15, yycount++;
4280     yysize += yystrlen ("syntax error, unexpected ") + 1;
4281     yysize += yystrlen (yytname[yytype]);
4282     yymsg = (char *) YYSTACK_ALLOC (yysize);
4283     if (yymsg != 0)
4284     {
4285     char *yyp = yystpcpy (yymsg, "syntax error, unexpected ");
4286     yyp = yystpcpy (yyp, yytname[yytype]);
4287    
4288     if (yycount < 5)
4289     {
4290     yycount = 0;
4291     for (yyx = yyn < 0 ? -yyn : 0;
4292     yyx < (int) (sizeof (yytname) / sizeof (char *));
4293     yyx++)
4294     if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
4295     {
4296     const char *yyq = ! yycount ? ", expecting " : " or ";
4297     yyp = yystpcpy (yyp, yyq);
4298     yyp = yystpcpy (yyp, yytname[yyx]);
4299     yycount++;
4300     }
4301     }
4302     yyerror (yymsg);
4303     YYSTACK_FREE (yymsg);
4304     }
4305     else
4306     yyerror ("syntax error; also virtual memory exhausted");
4307     }
4308     else
4309     #endif /* YYERROR_VERBOSE */
4310     yyerror ("syntax error");
4311     }
4312    
4313    
4314    
4315     if (yyerrstatus == 3)
4316     {
4317     /* If just tried and failed to reuse lookahead token after an
4318     error, discard it. */
4319    
4320     /* Return failure if at end of input. */
4321     if (yychar == YYEOF)
4322     {
4323     /* Pop the error token. */
4324     YYPOPSTACK;
4325     /* Pop the rest of the stack. */
4326     while (yyss < yyssp)
4327     {
4328     YYDSYMPRINTF ("Error: popping", yystos[*yyssp], yyvsp, yylsp);
4329     yydestruct (yystos[*yyssp], yyvsp);
4330     YYPOPSTACK;
4331     }
4332     YYABORT;
4333     }
4334    
4335     YYDSYMPRINTF ("Error: discarding", yytoken, &yylval, &yylloc);
4336     yydestruct (yytoken, &yylval);
4337     yychar = YYEMPTY;
4338    
4339     }
4340    
4341     /* Else will try to reuse lookahead token after shifting the error
4342     token. */
4343 senkov 170 goto yyerrlab1;
4344 schoenebeck 35
4345    
4346     /*----------------------------------------------------.
4347     | yyerrlab1 -- error raised explicitly by an action. |
4348     `----------------------------------------------------*/
4349     yyerrlab1:
4350     yyerrstatus = 3; /* Each real token shifted decrements this. */
4351    
4352     for (;;)
4353     {
4354     yyn = yypact[yystate];
4355     if (yyn != YYPACT_NINF)
4356     {
4357     yyn += YYTERROR;
4358     if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
4359     {
4360     yyn = yytable[yyn];
4361     if (0 < yyn)
4362     break;
4363     }
4364     }
4365    
4366     /* Pop the current state because it cannot handle the error token. */
4367     if (yyssp == yyss)
4368     YYABORT;
4369    
4370     YYDSYMPRINTF ("Error: popping", yystos[*yyssp], yyvsp, yylsp);
4371     yydestruct (yystos[yystate], yyvsp);
4372     yyvsp--;
4373     yystate = *--yyssp;
4374    
4375     YY_STACK_PRINT (yyss, yyssp);
4376     }
4377    
4378     if (yyn == YYFINAL)
4379     YYACCEPT;
4380    
4381     YYDPRINTF ((stderr, "Shifting error token, "));
4382    
4383     *++yyvsp = yylval;
4384    
4385    
4386     yystate = yyn;
4387     goto yynewstate;
4388    
4389    
4390     /*-------------------------------------.
4391     | yyacceptlab -- YYACCEPT comes here. |
4392     `-------------------------------------*/
4393     yyacceptlab:
4394     yyresult = 0;
4395     goto yyreturn;
4396    
4397     /*-----------------------------------.
4398     | yyabortlab -- YYABORT comes here. |
4399     `-----------------------------------*/
4400     yyabortlab:
4401     yyresult = 1;
4402     goto yyreturn;
4403    
4404     #ifndef yyoverflow
4405     /*----------------------------------------------.
4406     | yyoverflowlab -- parser overflow comes here. |
4407     `----------------------------------------------*/
4408     yyoverflowlab:
4409     yyerror ("parser stack overflow");
4410     yyresult = 2;
4411     /* Fall through. */
4412     #endif
4413    
4414     yyreturn:
4415     #ifndef yyoverflow
4416     if (yyss != yyssa)
4417     YYSTACK_FREE (yyss);
4418     #endif
4419     return yyresult;
4420     }
4421    
4422    
4423 schoenebeck 221 #line 506 "lscp.y"
4424 schoenebeck 35
4425    
4426     /**
4427     * Will be called when an error occured (usually syntax error).
4428     */
4429     void yyerror(const char* s) {
4430     dmsg(2,("LSCPParser: %s\n", s));
4431     }
4432    
4433     /**
4434 schoenebeck 219 * Clears input buffer.
4435 schoenebeck 35 */
4436     void restart(yyparse_param_t* pparam, int& yychar) {
4437 schoenebeck 219 bytes = 0;
4438     ptr = 0;
4439 schoenebeck 35 }
4440    
4441    

  ViewVC Help
Powered by ViewVC