blob: d4f152ff64de00caf95b1432075b76e6322ec3f4 [file] [log] [blame]
vlmfa67ddc2004-06-03 03:38:44 +00001#define yy_create_buffer asn1p__create_buffer
2#define yy_delete_buffer asn1p__delete_buffer
3#define yy_scan_buffer asn1p__scan_buffer
4#define yy_scan_string asn1p__scan_string
5#define yy_scan_bytes asn1p__scan_bytes
6#define yy_flex_debug asn1p__flex_debug
7#define yy_init_buffer asn1p__init_buffer
8#define yy_flush_buffer asn1p__flush_buffer
9#define yy_load_buffer_state asn1p__load_buffer_state
10#define yy_switch_to_buffer asn1p__switch_to_buffer
11#define yyin asn1p_in
12#define yyleng asn1p_leng
13#define yylex asn1p_lex
14#define yyout asn1p_out
15#define yyrestart asn1p_restart
16#define yytext asn1p_text
17#define yylineno asn1p_lineno
18
vlm9283dbe2004-08-18 04:59:12 +000019#line 20 "asn1p_l.c"
vlmfa67ddc2004-06-03 03:38:44 +000020/* A lexical scanner generated by flex */
21
22/* Scanner skeleton version:
23 * $Header$
24 */
25
26#define FLEX_SCANNER
27#define YY_FLEX_MAJOR_VERSION 2
28#define YY_FLEX_MINOR_VERSION 5
29
30#include <stdio.h>
31
32
33/* cfront 1.2 defines "c_plusplus" instead of "__cplusplus" */
34#ifdef c_plusplus
35#ifndef __cplusplus
36#define __cplusplus
37#endif
38#endif
39
40
41#ifdef __cplusplus
42
43#include <stdlib.h>
44#include <unistd.h>
45
46/* Use prototypes in function declarations. */
47#define YY_USE_PROTOS
48
49/* The "const" storage-class-modifier is valid. */
50#define YY_USE_CONST
51
52#else /* ! __cplusplus */
53
54#if __STDC__
55
56#define YY_USE_PROTOS
57#define YY_USE_CONST
58
59#endif /* __STDC__ */
60#endif /* ! __cplusplus */
61
62#ifdef __TURBOC__
63 #pragma warn -rch
64 #pragma warn -use
65#include <io.h>
66#include <stdlib.h>
67#define YY_USE_CONST
68#define YY_USE_PROTOS
69#endif
70
71#ifdef YY_USE_CONST
72#define yyconst const
73#else
74#define yyconst
75#endif
76
77
78#ifdef YY_USE_PROTOS
79#define YY_PROTO(proto) proto
80#else
81#define YY_PROTO(proto) ()
82#endif
83
84/* Returned upon end-of-file. */
85#define YY_NULL 0
86
87/* Promotes a possibly negative, possibly signed char to an unsigned
88 * integer for use as an array index. If the signed char is negative,
89 * we want to instead treat it as an 8-bit unsigned char, hence the
90 * double cast.
91 */
92#define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c)
93
94/* Enter a start condition. This macro really ought to take a parameter,
95 * but we do it the disgusting crufty way forced on us by the ()-less
96 * definition of BEGIN.
97 */
98#define BEGIN yy_start = 1 + 2 *
99
100/* Translate the current start state into a value that can be later handed
101 * to BEGIN to return to the state. The YYSTATE alias is for lex
102 * compatibility.
103 */
104#define YY_START ((yy_start - 1) / 2)
105#define YYSTATE YY_START
106
107/* Action number for EOF rule of a given start state. */
108#define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)
109
110/* Special action meaning "start processing a new file". */
111#define YY_NEW_FILE yyrestart( yyin )
112
113#define YY_END_OF_BUFFER_CHAR 0
114
115/* Size of default input buffer. */
116#define YY_BUF_SIZE 16384
117
118typedef struct yy_buffer_state *YY_BUFFER_STATE;
119
120extern int yyleng;
121extern FILE *yyin, *yyout;
122
123#define EOB_ACT_CONTINUE_SCAN 0
124#define EOB_ACT_END_OF_FILE 1
125#define EOB_ACT_LAST_MATCH 2
126
127/* The funky do-while in the following #define is used to turn the definition
128 * int a single C statement (which needs a semi-colon terminator). This
129 * avoids problems with code like:
130 *
131 * if ( condition_holds )
132 * yyless( 5 );
133 * else
134 * do_something_else();
135 *
136 * Prior to using the do-while the compiler would get upset at the
137 * "else" because it interpreted the "if" statement as being all
138 * done when it reached the ';' after the yyless() call.
139 */
140
141/* Return all but the first 'n' matched characters back to the input stream. */
142
143#define yyless(n) \
144 do \
145 { \
146 /* Undo effects of setting up yytext. */ \
147 *yy_cp = yy_hold_char; \
148 YY_RESTORE_YY_MORE_OFFSET \
149 yy_c_buf_p = yy_cp = yy_bp + n - YY_MORE_ADJ; \
150 YY_DO_BEFORE_ACTION; /* set up yytext again */ \
151 } \
152 while ( 0 )
153
154#define unput(c) yyunput( c, yytext_ptr )
155
156/* The following is because we cannot portably get our hands on size_t
157 * (without autoconf's help, which isn't available because we want
158 * flex-generated scanners to compile on their own).
159 */
160typedef unsigned int yy_size_t;
161
162
163struct yy_buffer_state
164 {
165 FILE *yy_input_file;
166
167 char *yy_ch_buf; /* input buffer */
168 char *yy_buf_pos; /* current position in input buffer */
169
170 /* Size of input buffer in bytes, not including room for EOB
171 * characters.
172 */
173 yy_size_t yy_buf_size;
174
175 /* Number of characters read into yy_ch_buf, not including EOB
176 * characters.
177 */
178 int yy_n_chars;
179
180 /* Whether we "own" the buffer - i.e., we know we created it,
181 * and can realloc() it to grow it, and should free() it to
182 * delete it.
183 */
184 int yy_is_our_buffer;
185
186 /* Whether this is an "interactive" input source; if so, and
187 * if we're using stdio for input, then we want to use getc()
188 * instead of fread(), to make sure we stop fetching input after
189 * each newline.
190 */
191 int yy_is_interactive;
192
193 /* Whether we're considered to be at the beginning of a line.
194 * If so, '^' rules will be active on the next match, otherwise
195 * not.
196 */
197 int yy_at_bol;
198
199 /* Whether to try to fill the input buffer when we reach the
200 * end of it.
201 */
202 int yy_fill_buffer;
203
204 int yy_buffer_status;
205#define YY_BUFFER_NEW 0
206#define YY_BUFFER_NORMAL 1
207 /* When an EOF's been seen but there's still some text to process
208 * then we mark the buffer as YY_EOF_PENDING, to indicate that we
209 * shouldn't try reading from the input source any more. We might
210 * still have a bunch of tokens to match, though, because of
211 * possible backing-up.
212 *
213 * When we actually see the EOF, we change the status to "new"
214 * (via yyrestart()), so that the user can continue scanning by
215 * just pointing yyin at a new input file.
216 */
217#define YY_BUFFER_EOF_PENDING 2
218 };
219
220static YY_BUFFER_STATE yy_current_buffer = 0;
221
222/* We provide macros for accessing buffer states in case in the
223 * future we want to put the buffer states in a more general
224 * "scanner state".
225 */
226#define YY_CURRENT_BUFFER yy_current_buffer
227
228
229/* yy_hold_char holds the character lost when yytext is formed. */
230static char yy_hold_char;
231
232static int yy_n_chars; /* number of characters read into yy_ch_buf */
233
234
235int yyleng;
236
237/* Points to current character in buffer. */
238static char *yy_c_buf_p = (char *) 0;
239static int yy_init = 1; /* whether we need to initialize */
240static int yy_start = 0; /* start state number */
241
242/* Flag which is used to allow yywrap()'s to do buffer switches
243 * instead of setting up a fresh yyin. A bit of a hack ...
244 */
245static int yy_did_buffer_switch_on_eof;
246
247void yyrestart YY_PROTO(( FILE *input_file ));
248
249void yy_switch_to_buffer YY_PROTO(( YY_BUFFER_STATE new_buffer ));
250void yy_load_buffer_state YY_PROTO(( void ));
251YY_BUFFER_STATE yy_create_buffer YY_PROTO(( FILE *file, int size ));
252void yy_delete_buffer YY_PROTO(( YY_BUFFER_STATE b ));
253void yy_init_buffer YY_PROTO(( YY_BUFFER_STATE b, FILE *file ));
254void yy_flush_buffer YY_PROTO(( YY_BUFFER_STATE b ));
255#define YY_FLUSH_BUFFER yy_flush_buffer( yy_current_buffer )
256
257YY_BUFFER_STATE yy_scan_buffer YY_PROTO(( char *base, yy_size_t size ));
258YY_BUFFER_STATE yy_scan_string YY_PROTO(( yyconst char *yy_str ));
259YY_BUFFER_STATE yy_scan_bytes YY_PROTO(( yyconst char *bytes, int len ));
260
261static void *yy_flex_alloc YY_PROTO(( yy_size_t ));
262static void *yy_flex_realloc YY_PROTO(( void *, yy_size_t ));
263static void yy_flex_free YY_PROTO(( void * ));
264
265#define yy_new_buffer yy_create_buffer
266
267#define yy_set_interactive(is_interactive) \
268 { \
269 if ( ! yy_current_buffer ) \
270 yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE ); \
271 yy_current_buffer->yy_is_interactive = is_interactive; \
272 }
273
274#define yy_set_bol(at_bol) \
275 { \
276 if ( ! yy_current_buffer ) \
277 yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE ); \
278 yy_current_buffer->yy_at_bol = at_bol; \
279 }
280
281#define YY_AT_BOL() (yy_current_buffer->yy_at_bol)
282
283
284#define YY_USES_REJECT
285
286#define yywrap() 1
287#define YY_SKIP_YYWRAP
288
289#define FLEX_DEBUG
290typedef unsigned char YY_CHAR;
291FILE *yyin = (FILE *) 0, *yyout = (FILE *) 0;
292typedef int yy_state_type;
293
294#define FLEX_DEBUG
295extern int yylineno;
296int yylineno = 1;
297extern char *yytext;
298#define yytext_ptr yytext
299
300static yy_state_type yy_get_previous_state YY_PROTO(( void ));
301static yy_state_type yy_try_NUL_trans YY_PROTO(( yy_state_type current_state ));
302static int yy_get_next_buffer YY_PROTO(( void ));
303static void yy_fatal_error YY_PROTO(( yyconst char msg[] ));
304
305/* Done after the current pattern has been matched and before the
306 * corresponding action - sets up yytext.
307 */
308#define YY_DO_BEFORE_ACTION \
309 yytext_ptr = yy_bp; \
310 yyleng = (int) (yy_cp - yy_bp); \
311 yy_hold_char = *yy_cp; \
312 *yy_cp = '\0'; \
313 yy_c_buf_p = yy_cp;
314
vlm808411d2006-03-14 16:31:37 +0000315#define YY_NUM_RULES 137
316#define YY_END_OF_BUFFER 138
317static yyconst short int yy_acclist[1258] =
vlmfa67ddc2004-06-03 03:38:44 +0000318 { 0,
vlm808411d2006-03-14 16:31:37 +0000319 138, 136, 137, 131, 136, 137, 131, 137, 134, 136,
320 137, 19, 136, 137, 134, 136, 137, 136, 137, 134,
321 136, 137, 136, 137, 134, 136, 137, 136, 137, 33,
322 136, 137, 32, 136, 137, 134, 136, 137, 136, 137,
323 119, 120, 136, 137, 119, 120, 136, 137, 119, 120,
324 136, 137, 119, 120, 136, 137, 119, 120, 136, 137,
325 119, 120, 136, 137, 119, 120, 136, 137, 119, 120,
326 136, 137, 119, 120, 136, 137, 119, 120, 136, 137,
327 119, 120, 136, 137, 119, 120, 136, 137, 119, 120,
328 136, 137, 119, 120, 136, 137, 119, 120, 136, 137,
vlmfa67ddc2004-06-03 03:38:44 +0000329
vlm808411d2006-03-14 16:31:37 +0000330 119, 120, 136, 137, 119, 120, 136, 137, 119, 120,
331 136, 137, 119, 120, 136, 137, 118, 136, 137, 134,
332 136, 137, 9, 136, 137, 6, 137, 6, 136, 137,
333 8, 136, 137, 8, 136, 137, 11, 13, 136, 137,
334 11, 137, 13, 136, 137, 13, 136, 137, 13, 136,
335 137, 21, 136, 137, 21, 137, 22, 136, 137, 16,
336 136, 137, 16, 137, 18, 136, 137, 18, 136, 137,
337 14, 136, 137, 15, 136, 137, 25, 27, 136, 137,
338 27, 136, 137, 28, 137, 25, 26, 27, 136, 137,
339 25, 26, 27, 136, 137, 129, 136, 137, 129, 137,
vlmfa67ddc2004-06-03 03:38:44 +0000340
vlm808411d2006-03-14 16:31:37 +0000341 136, 137, 125, 136, 137, 136, 137, 136, 137, 124,
342 136, 137, 127, 136, 137, 128, 136, 137, 126, 136,
343 137, 130, 136, 137, 131, 19, 19, 116, 117, 5,
344 31, 123, 10, 32, 119, 120, 119, 120, 119, 120,
vlmb8958092006-03-06 11:28:17 +0000345 119, 120, 119, 120, 119, 120, 120, 119, 120, 119,
vlm808411d2006-03-14 16:31:37 +0000346 120, 119, 120, 119, 120, 43, 119, 120, 119, 120,
347 119, 120, 119, 120, 119, 120, 119, 120, 119, 120,
348 119, 120, 119, 120, 119, 120, 120, 120, 119, 120,
349 119, 120, 119, 120, 119, 120, 119, 120, 119, 120,
350 119, 120, 119, 120, 120, 119, 120, 119, 120, 88,
vlm2c8c44d2005-03-24 16:22:35 +0000351
vlm808411d2006-03-14 16:31:37 +0000352 119, 120, 119, 120, 120, 119, 120, 119, 120, 119,
353 120, 119, 120, 120, 119, 120, 119, 120, 119, 120,
354 119, 120, 119, 120, 119, 120, 119, 120, 119, 120,
355 120, 119, 120, 119, 120, 120, 120, 119, 120, 118,
356 9, 7, 7, 12, 21, 20, 16, 25, 25, 26,
357 25, 26, 129, 5, 124, 135, 116, 117, 31, 122,
358 121, 119, 120, 120, 119, 120, 35, 119, 120, 36,
359 119, 120, 119, 120, 119, 120, 119, 120, 40, 119,
vlmb8958092006-03-06 11:28:17 +0000360 120, 119, 120, 119, 120, 119, 120, 119, 120, 119,
vlm808411d2006-03-14 16:31:37 +0000361 120, 119, 120, 119, 120, 119, 120, 119, 120, 119,
vlm2c8c44d2005-03-24 16:22:35 +0000362
vlm808411d2006-03-14 16:31:37 +0000363 120, 57, 119, 120, 119, 120, 119, 120, 119, 120,
364 119, 120, 119, 120, 119, 120, 120, 120, 119, 120,
365 119, 120, 119, 120, 119, 120, 119, 120, 119, 120,
366 119, 120, 80, 119, 120, 81, 119, 120, 119, 120,
367 120, 119, 120, 119, 120, 119, 120, 120, 119, 120,
368 91, 119, 120, 119, 120, 119, 120, 119, 120, 120,
369 119, 120, 119, 120, 119, 120, 99, 119, 120, 119,
370 120, 119, 120, 119, 120, 119, 120, 119, 120, 119,
371 120, 120, 119, 120, 119, 120, 119, 120, 120, 120,
372 120, 119, 120, 118, 3, 17, 25, 26, 24, 25,
vlm2c8c44d2005-03-24 16:22:35 +0000373
vlm808411d2006-03-14 16:31:37 +0000374 26, 124, 116, 117, 30, 29, 2, 1, 119, 120,
375 119, 120, 119, 120, 119, 120, 119, 120, 119, 120,
376 119, 120, 119, 120, 119, 120, 119, 120, 119, 120,
377 119, 120, 119, 120, 119, 120, 119, 120, 119, 120,
378 119, 120, 119, 120, 119, 120, 119, 120, 119, 120,
379 119, 120, 65, 119, 120, 120, 120, 119, 120, 119,
380 120, 119, 120, 119, 120, 119, 120, 119, 120, 119,
381 120, 119, 120, 119, 120, 83, 119, 120, 120, 119,
382 120, 119, 120, 119, 120, 120, 119, 120, 119, 120,
383 119, 120, 119, 120, 120, 96, 119, 120, 119, 120,
384
385 119, 120, 100, 119, 120, 119, 120, 119, 120, 119,
386 120, 104, 119, 120, 106, 119, 120, 120, 119, 120,
387 119, 120, 119, 120, 119, 120, 119, 120, 120, 120,
388 120, 115, 119, 120, 3, 25, 26, 119, 120, 119,
389 120, 119, 120, 39, 119, 120, 120, 119, 120, 119,
390 120, 119, 120, 46, 119, 120, 119, 120, 119, 120,
391 119, 120, 119, 120, 119, 120, 119, 120, 119, 120,
392 119, 120, 119, 120, 119, 120, 119, 120, 119, 120,
393 119, 120, 64, 119, 120, 120, 120, 120, 119, 120,
394 119, 120, 119, 120, 119, 120, 119, 120, 119, 120,
395
396 119, 120, 119, 120, 119, 120, 119, 120, 120, 119,
397 120, 87, 119, 120, 119, 120, 120, 119, 120, 119,
398 120, 119, 120, 120, 119, 120, 119, 120, 119, 120,
399 119, 120, 120, 120, 107, 119, 120, 119, 120, 119,
400 120, 120, 119, 120, 120, 120, 120, 132, 25, 26,
401 34, 119, 120, 119, 120, 119, 120, 120, 119, 120,
402 119, 120, 45, 119, 120, 119, 120, 119, 120, 119,
403 120, 119, 120, 119, 120, 119, 120, 119, 120, 119,
404 120, 119, 120, 119, 120, 59, 119, 120, 119, 120,
405 119, 120, 119, 120, 119, 120, 120, 120, 120, 119,
406
407 120, 119, 120, 119, 120, 119, 120, 119, 120, 119,
408 120, 119, 120, 119, 120, 119, 120, 119, 120, 120,
409 85, 119, 120, 119, 120, 120, 119, 120, 119, 120,
410 119, 120, 119, 120, 120, 119, 120, 119, 120, 101,
411 119, 120, 102, 119, 120, 120, 120, 108, 119, 120,
412 119, 120, 120, 120, 120, 120, 120, 25, 26, 119,
413 120, 119, 120, 120, 42, 119, 120, 119, 120, 119,
414 120, 119, 120, 119, 120, 51, 119, 120, 52, 119,
415 120, 119, 120, 119, 120, 55, 119, 120, 119, 120,
416 119, 120, 119, 120, 61, 119, 120, 119, 120, 119,
417
418 120, 120, 120, 120, 119, 120, 119, 120, 72, 119,
419 120, 73, 119, 120, 119, 120, 119, 120, 119, 120,
420 77, 119, 120, 119, 120, 119, 120, 119, 120, 120,
421 119, 120, 120, 90, 119, 120, 119, 120, 93, 119,
422 120, 95, 119, 120, 120, 119, 120, 119, 120, 120,
423 120, 119, 120, 111, 120, 120, 120, 120, 120, 25,
424 26, 119, 120, 119, 120, 120, 119, 120, 119, 120,
425 119, 120, 119, 120, 119, 120, 54, 119, 120, 119,
426 120, 119, 120, 60, 119, 120, 119, 120, 63, 119,
427 120, 120, 120, 120, 120, 119, 120, 71, 119, 120,
428
429 74, 119, 120, 75, 119, 120, 119, 120, 119, 120,
430 120, 119, 120, 120, 89, 119, 120, 120, 119, 120,
431 120, 119, 120, 98, 119, 120, 120, 120, 119, 120,
432 120, 120, 120, 120, 25, 26, 119, 120, 38, 119,
433 120, 41, 120, 44, 119, 120, 47, 119, 120, 119,
434 120, 119, 120, 119, 120, 119, 120, 119, 120, 120,
435 120, 120, 69, 120, 119, 120, 119, 120, 119, 120,
436 120, 119, 120, 120, 120, 119, 120, 120, 103, 120,
437 120, 109, 119, 120, 120, 120, 120, 120, 133, 25,
438 119, 120, 48, 119, 120, 119, 120, 50, 119, 120,
439
440 119, 120, 119, 120, 58, 119, 120, 119, 120, 120,
441 120, 120, 70, 119, 120, 119, 120, 119, 120, 120,
442 119, 120, 120, 120, 119, 120, 120, 119, 120, 120,
443 112, 120, 120, 120, 120, 25, 37, 119, 120, 49,
444 119, 120, 53, 119, 120, 119, 120, 119, 120, 120,
445 120, 120, 119, 120, 119, 120, 120, 119, 120, 120,
446 120, 119, 120, 120, 119, 120, 120, 120, 120, 120,
447 25, 119, 120, 119, 120, 120, 120, 120, 76, 119,
448 120, 78, 119, 120, 79, 120, 119, 120, 120, 120,
449 119, 120, 120, 97, 119, 120, 120, 120, 120, 120,
450
451 25, 119, 120, 62, 119, 120, 67, 120, 120, 68,
452 120, 119, 120, 84, 120, 120, 92, 119, 120, 120,
453 105, 120, 120, 120, 114, 120, 25, 119, 120, 120,
454 82, 119, 120, 120, 120, 120, 113, 120, 25, 119,
455 120, 66, 120, 120, 94, 120, 110, 120, 25, 56,
456 119, 120, 86, 120, 23, 25, 4
vlmfa67ddc2004-06-03 03:38:44 +0000457 } ;
458
vlm808411d2006-03-14 16:31:37 +0000459static yyconst short int yy_accept[736] =
vlmfa67ddc2004-06-03 03:38:44 +0000460 { 0,
461 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
vlmb5abdc92005-07-02 21:42:40 +0000462 1, 1, 1, 1, 1, 1, 1, 2, 4, 7,
463 9, 12, 15, 18, 20, 23, 25, 28, 30, 33,
464 36, 39, 41, 45, 49, 53, 57, 61, 65, 69,
465 73, 77, 81, 85, 89, 93, 97, 101, 105, 109,
vlm177a5b62005-09-05 05:17:57 +0000466 113, 117, 120, 123, 126, 128, 131, 134, 137, 141,
467 143, 146, 149, 152, 155, 157, 160, 163, 165, 168,
vlm808411d2006-03-14 16:31:37 +0000468 171, 174, 177, 181, 184, 186, 191, 196, 199, 201,
469 203, 206, 208, 210, 213, 216, 219, 222, 225, 225,
470 226, 227, 228, 228, 229, 229, 230, 230, 230, 231,
vlmfa67ddc2004-06-03 03:38:44 +0000471
vlm808411d2006-03-14 16:31:37 +0000472 232, 233, 234, 235, 235, 235, 237, 239, 241, 243,
473 245, 247, 248, 250, 252, 254, 256, 259, 261, 263,
474 265, 267, 269, 271, 273, 275, 277, 278, 279, 281,
475 283, 285, 287, 289, 291, 293, 295, 296, 298, 300,
476 303, 305, 306, 308, 310, 312, 314, 315, 317, 319,
477 321, 323, 325, 327, 329, 331, 332, 334, 336, 337,
478 338, 340, 340, 341, 341, 341, 341, 342, 343, 344,
479 345, 346, 347, 348, 348, 349, 351, 353, 354, 355,
480 355, 356, 357, 357, 357, 358, 358, 359, 359, 359,
481 359, 359, 360, 361, 362, 364, 365, 367, 370, 373,
vlmfa67ddc2004-06-03 03:38:44 +0000482
vlm808411d2006-03-14 16:31:37 +0000483 375, 377, 377, 379, 382, 384, 386, 388, 390, 392,
484 394, 396, 398, 400, 402, 405, 407, 409, 411, 413,
485 415, 417, 418, 419, 421, 423, 425, 427, 429, 431,
486 433, 436, 439, 441, 442, 444, 446, 448, 449, 451,
487 454, 456, 458, 460, 461, 463, 465, 467, 470, 472,
488 474, 476, 478, 480, 482, 483, 485, 487, 489, 490,
489 491, 492, 494, 495, 495, 495, 496, 497, 499, 502,
490 503, 503, 504, 505, 506, 507, 508, 509, 509, 509,
vlm177a5b62005-09-05 05:17:57 +0000491 509, 511, 513, 515, 517, 519, 521, 523, 525, 527,
vlm808411d2006-03-14 16:31:37 +0000492 529, 531, 533, 535, 537, 539, 541, 543, 545, 547,
vlmfa67ddc2004-06-03 03:38:44 +0000493
vlm808411d2006-03-14 16:31:37 +0000494 549, 551, 553, 556, 557, 558, 560, 562, 564, 566,
495 568, 570, 572, 574, 576, 579, 580, 582, 584, 586,
496 587, 589, 591, 593, 595, 596, 599, 601, 603, 606,
497 608, 610, 612, 615, 618, 619, 621, 623, 625, 627,
498 629, 630, 631, 632, 635, 635, 635, 635, 635, 636,
499 638, 638, 640, 642, 644, 647, 648, 650, 652, 654,
500 657, 659, 661, 663, 665, 667, 669, 671, 673, 675,
501 677, 679, 681, 683, 686, 687, 688, 689, 691, 693,
502 695, 697, 699, 701, 703, 705, 707, 709, 710, 712,
503 715, 717, 718, 720, 720, 722, 724, 725, 727, 729,
vlmfa67ddc2004-06-03 03:38:44 +0000504
vlm808411d2006-03-14 16:31:37 +0000505 731, 733, 734, 735, 738, 740, 742, 743, 745, 746,
506 747, 748, 748, 748, 749, 751, 751, 754, 756, 758,
507 759, 761, 763, 766, 768, 770, 772, 774, 776, 778,
508 780, 782, 784, 786, 789, 791, 793, 795, 797, 798,
509 799, 800, 802, 804, 806, 808, 810, 812, 814, 816,
510 818, 820, 820, 821, 824, 826, 827, 829, 831, 833,
511 835, 836, 838, 840, 843, 846, 847, 848, 851, 853,
512 854, 855, 856, 857, 858, 858, 858, 860, 860, 862,
513 864, 865, 868, 870, 872, 874, 876, 879, 882, 884,
514 886, 889, 891, 893, 895, 898, 900, 902, 903, 904,
vlmfa67ddc2004-06-03 03:38:44 +0000515
vlm808411d2006-03-14 16:31:37 +0000516 905, 907, 909, 912, 915, 917, 919, 921, 924, 926,
517 928, 930, 931, 933, 934, 937, 939, 942, 945, 946,
518 948, 950, 951, 952, 954, 956, 957, 958, 959, 960,
519 960, 962, 962, 964, 966, 967, 969, 971, 973, 975,
520 977, 980, 982, 984, 987, 989, 992, 993, 994, 995,
521 996, 998, 1001, 1004, 1007, 1009, 1011, 1012, 1014, 1015,
522 1018, 1019, 1021, 1022, 1024, 1027, 1028, 1029, 1031, 1032,
523 1033, 1034, 1035, 1035, 1035, 1037, 1037, 1039, 1042, 1044,
524 1047, 1050, 1052, 1054, 1056, 1056, 1058, 1060, 1061, 1062,
525 1063, 1065, 1067, 1069, 1071, 1072, 1074, 1075, 1076, 1078,
vlmfa67ddc2004-06-03 03:38:44 +0000526
vlm808411d2006-03-14 16:31:37 +0000527 1079, 1079, 1081, 1082, 1085, 1086, 1087, 1088, 1089, 1089,
528 1090, 1091, 1091, 1093, 1096, 1098, 1101, 1103, 1105, 1108,
529 1110, 1111, 1112, 1113, 1116, 1118, 1120, 1121, 1123, 1124,
530 1125, 1127, 1128, 1130, 1131, 1133, 1134, 1135, 1136, 1137,
531 1137, 1140, 1143, 1146, 1148, 1150, 1151, 1152, 1153, 1155,
532 1157, 1158, 1160, 1161, 1162, 1164, 1165, 1167, 1168, 1169,
533 1170, 1171, 1172, 1172, 1174, 1176, 1177, 1178, 1179, 1182,
534 1185, 1187, 1189, 1190, 1191, 1193, 1194, 1197, 1198, 1199,
535 1200, 1201, 1202, 1202, 1204, 1207, 1209, 1210, 1212, 1214,
536 1216, 1217, 1220, 1221, 1223, 1224, 1225, 1227, 1228, 1228,
vlmb5abdc92005-07-02 21:42:40 +0000537
vlm808411d2006-03-14 16:31:37 +0000538 1230, 1231, 1234, 1235, 1236, 1237, 1239, 1240, 1240, 1242,
539 1244, 1245, 1247, 1249, 1250, 1250, 1253, 1255, 1257, 1257,
540 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257, 1257,
541 1257, 1257, 1257, 1258, 1258
vlmfa67ddc2004-06-03 03:38:44 +0000542 } ;
543
544static yyconst int yy_ec[256] =
545 { 0,
546 1, 1, 1, 1, 1, 1, 1, 1, 2, 3,
vlmb5abdc92005-07-02 21:42:40 +0000547 4, 4, 5, 1, 1, 1, 1, 1, 1, 1,
vlmfa67ddc2004-06-03 03:38:44 +0000548 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
vlmb5abdc92005-07-02 21:42:40 +0000549 1, 2, 6, 7, 1, 1, 1, 8, 9, 10,
550 10, 11, 1, 12, 13, 14, 15, 16, 17, 18,
551 18, 19, 20, 21, 18, 22, 23, 24, 25, 26,
vlm066dc102005-08-22 12:23:54 +0000552 27, 28, 1, 10, 29, 30, 31, 32, 33, 34,
553 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
554 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
vlm808411d2006-03-14 16:31:37 +0000555 55, 1, 56, 57, 1, 1, 58, 59, 60, 61,
vlmfa67ddc2004-06-03 03:38:44 +0000556
vlm808411d2006-03-14 16:31:37 +0000557 62, 63, 64, 65, 66, 67, 63, 68, 69, 70,
558 71, 72, 63, 73, 74, 75, 76, 77, 63, 78,
559 63, 79, 80, 81, 82, 1, 1, 1, 1, 1,
vlmfa67ddc2004-06-03 03:38:44 +0000560 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
561 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
562 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
563 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
564 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
565 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
566 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
567
568 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
569 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
570 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
571 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
572 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
573 1, 1, 1, 1, 1
574 } ;
575
vlm808411d2006-03-14 16:31:37 +0000576static yyconst int yy_meta[83] =
vlmfa67ddc2004-06-03 03:38:44 +0000577 { 0,
vlm808411d2006-03-14 16:31:37 +0000578 1, 2, 3, 4, 4, 1, 5, 1, 6, 1,
579 1, 1, 7, 1, 1, 8, 8, 8, 8, 8,
580 8, 8, 8, 9, 1, 1, 9, 1, 10, 10,
581 10, 10, 10, 10, 11, 11, 11, 11, 11, 11,
582 11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
583 11, 11, 11, 11, 1, 1, 1, 11, 11, 11,
584 11, 11, 11, 11, 11, 11, 11, 11, 11, 11,
585 11, 11, 11, 11, 11, 11, 11, 11, 11, 12,
586 1, 13
vlmb5abdc92005-07-02 21:42:40 +0000587 } ;
vlmfa67ddc2004-06-03 03:38:44 +0000588
vlm808411d2006-03-14 16:31:37 +0000589static yyconst short int yy_base[761] =
vlmb5abdc92005-07-02 21:42:40 +0000590 { 0,
vlm808411d2006-03-14 16:31:37 +0000591 0, 0, 80, 83, 86, 97, 92, 94, 91, 101,
592 89, 103, 185, 267, 349, 0, 1572, 1561, 119, 129,
593 1557, 1555, 423, 137, 4413, 138, 1548, 103, 4413, 156,
594 1537, 4413, 490, 184, 208, 190, 257, 285, 540, 205,
595 546, 567, 561, 277, 585, 600, 606, 631, 634, 623,
596 654, 1547, 697, 0, 4413, 4413, 1546, 1540, 4413, 4413,
597 1536, 1538, 4413, 0, 0, 1541, 0, 0, 1522, 4413,
598 4413, 4413, 0, 4413, 4413, 720, 801, 160, 199, 110,
599 4413, 1529, 1529, 1526, 4413, 4413, 4413, 4413, 1531, 203,
600 0, 1530, 1525, 1514, 86, 1510, 433, 1512, 123, 321,
vlmfa67ddc2004-06-03 03:38:44 +0000601
vlm808411d2006-03-14 16:31:37 +0000602 1506, 4413, 689, 1487, 825, 709, 710, 725, 738, 741,
603 756, 1499, 800, 806, 821, 829, 875, 878, 896, 893,
604 909, 917, 932, 938, 935, 953, 112, 157, 968, 971,
605 979, 994, 1005, 1016, 1022, 1033, 153, 1046, 1049, 1062,
606 1070, 113, 1073, 1086, 1097, 1110, 102, 1126, 1132, 1143,
607 1149, 1160, 1171, 1177, 1188, 116, 1194, 1210, 218, 242,
608 1209, 0, 1493, 1258, 1270, 1282, 0, 4413, 1491, 4413,
609 0, 4413, 0, 1476, 0, 1455, 254, 256, 4413, 0,
610 1480, 4413, 1478, 0, 1477, 0, 1476, 114, 1451, 299,
611 214, 801, 4413, 4413, 1293, 1471, 1277, 1278, 1293, 1294,
vlmfa67ddc2004-06-03 03:38:44 +0000612
vlm808411d2006-03-14 16:31:37 +0000613 1343, 1470, 1351, 1354, 1367, 1375, 1383, 1391, 1404, 1412,
614 1415, 1436, 1437, 1452, 1458, 1469, 1475, 1486, 1492, 1503,
615 1514, 243, 216, 1527, 1535, 1538, 1553, 1556, 1559, 1585,
616 1577, 1588, 1601, 251, 1609, 1622, 1630, 270, 1633, 1646,
617 1654, 1662, 1670, 240, 1683, 1686, 1694, 1707, 1715, 1723,
618 1731, 1744, 1752, 1765, 532, 1773, 1789, 1790, 104, 558,
619 223, 1805, 1462, 1848, 1856, 1461, 4413, 220, 1430, 1458,
620 1413, 1455, 1447, 4413, 4413, 4413, 4413, 315, 217, 1411,
621 1850, 1851, 1866, 1872, 1883, 1889, 1905, 1906, 1921, 1929,
622 1937, 1953, 1950, 1961, 1974, 1977, 1992, 1998, 2009, 2015,
vlmfa67ddc2004-06-03 03:38:44 +0000623
vlm808411d2006-03-14 16:31:37 +0000624 2026, 2041, 2047, 431, 533, 2058, 2064, 2079, 2080, 2095,
625 2101, 2116, 2119, 2127, 2140, 432, 2148, 2151, 2164, 559,
626 2172, 2185, 2193, 2201, 502, 2209, 2217, 2230, 2238, 2241,
627 2259, 2256, 2262, 2277, 504, 2280, 2283, 2300, 2306, 2317,
628 560, 503, 420, 2333, 2376, 2398, 2420, 2432, 1437, 303,
629 1407, 2416, 2432, 2448, 2417, 568, 2454, 2469, 2472, 2480,
630 2493, 2501, 2509, 2522, 2530, 2543, 2551, 2559, 2567, 2582,
631 2588, 2599, 2605, 2620, 534, 572, 593, 2621, 2641, 2638,
632 2659, 2658, 2674, 2680, 2691, 2704, 2715, 613, 2712, 2728,
633 2736, 570, 2744, 586, 2752, 2765, 599, 2778, 2781, 2789,
vlmfa67ddc2004-06-03 03:38:44 +0000634
vlm808411d2006-03-14 16:31:37 +0000635 2802, 595, 608, 2813, 2819, 2830, 277, 2841, 615, 587,
636 619, 759, 2884, 4413, 397, 1430, 2868, 2884, 2881, 656,
637 2892, 2905, 2908, 2925, 2931, 2942, 2948, 2963, 2969, 2986,
638 2992, 3003, 3009, 3020, 3026, 3037, 3043, 3059, 622, 682,
639 672, 3060, 3075, 3081, 3092, 3098, 3113, 3119, 3130, 3145,
640 3151, 723, 710, 3162, 3178, 711, 3175, 1401, 3186, 3199,
641 638, 3207, 3222, 3225, 3228, 728, 753, 3243, 3246, 771,
642 724, 760, 775, 776, 3294, 3306, 1399, 1408, 3290, 3303,
643 611, 3306, 3321, 3327, 3338, 3344, 3355, 3361, 3372, 3383,
644 3389, 3400, 3406, 3417, 3428, 3434, 3445, 862, 759, 782,
vlmfa67ddc2004-06-03 03:38:44 +0000645
vlm808411d2006-03-14 16:31:37 +0000646 3451, 3462, 3473, 3479, 3490, 3496, 3511, 3512, 3527, 3533,
647 1396, 819, 3544, 849, 3550, 1403, 3561, 3567, 779, 3582,
648 3588, 790, 832, 3604, 1423, 840, 634, 786, 863, 3638,
649 110, 0, 3632, 3633, 867, 3648, 3656, 3659, 3672, 3680,
650 3688, 3696, 3709, 3717, 3725, 3733, 854, 928, 855, 868,
651 3746, 3754, 3757, 3770, 3778, 3781, 766, 1396, 931, 3794,
652 899, 1389, 937, 3815, 3802, 903, 939, 3818, 900, 935,
653 942, 941, 3866, 1027, 943, 1376, 3850, 3861, 1407, 3867,
654 3878, 3884, 3899, 3900, 987, 3915, 3916, 977, 978, 1014,
655 1405, 3931, 3939, 3954, 1042, 1375, 1026, 1009, 1368, 947,
vlmfa67ddc2004-06-03 03:38:44 +0000656
vlm808411d2006-03-14 16:31:37 +0000657 643, 1395, 1059, 3955, 1061, 958, 1048, 1065, 1243, 4413,
658 1375, 1342, 3970, 3971, 3986, 3987, 4002, 1359, 4003, 4018,
659 1054, 1020, 1067, 4024, 4035, 4046, 1013, 1357, 1083, 1072,
660 1352, 1088, 1343, 1092, 1366, 1094, 1111, 1116, 1335, 1305,
661 4052, 4063, 4069, 1334, 4080, 1024, 430, 1129, 4091, 4097,
662 1144, 1338, 1135, 1140, 1326, 1121, 1315, 1152, 1154, 1148,
663 1165, 1304, 1272, 1296, 4112, 1203, 1190, 1220, 4113, 4128,
664 1328, 1292, 1251, 979, 1261, 1229, 0, 1252, 1283, 1242,
665 1284, 1265, 1249, 1263, 4129, 1260, 1197, 1256, 1215, 1212,
666 1210, 0, 1258, 1183, 1259, 1318, 1151, 1105, 1070, 1088,
vlmfa67ddc2004-06-03 03:38:44 +0000667
vlm808411d2006-03-14 16:31:37 +0000668 1270, 0, 1158, 1326, 1337, 1046, 1014, 991, 906, 901,
669 1257, 864, 861, 753, 686, 0, 712, 0, 543, 489,
670 440, 407, 376, 380, 371, 365, 271, 257, 1042, 1158,
671 135, 124, 4413, 4413, 4178, 4191, 4204, 4217, 4230, 4243,
672 4255, 4259, 4270, 4283, 4296, 4307, 4318, 4323, 4328, 4333,
673 4337, 4342, 4346, 4350, 4354, 4358, 4369, 4376, 4387, 4399
vlmb5abdc92005-07-02 21:42:40 +0000674 } ;
vlmfa67ddc2004-06-03 03:38:44 +0000675
vlm808411d2006-03-14 16:31:37 +0000676static yyconst short int yy_def[761] =
vlmb5abdc92005-07-02 21:42:40 +0000677 { 0,
vlm808411d2006-03-14 16:31:37 +0000678 734, 1, 735, 735, 735, 735, 736, 736, 737, 737,
679 738, 738, 739, 739, 734, 15, 734, 734, 734, 734,
680 734, 740, 734, 741, 734, 734, 734, 734, 734, 734,
681 734, 734, 734, 33, 33, 33, 33, 33, 33, 33,
vlmb5abdc92005-07-02 21:42:40 +0000682 33, 33, 33, 33, 33, 33, 33, 33, 33, 33,
vlm808411d2006-03-14 16:31:37 +0000683 33, 742, 734, 743, 734, 734, 734, 734, 734, 734,
684 734, 734, 734, 744, 744, 734, 745, 745, 734, 734,
685 734, 734, 746, 734, 734, 747, 747, 734, 734, 23,
686 734, 734, 734, 748, 734, 734, 734, 734, 734, 734,
687 740, 740, 734, 749, 734, 750, 741, 741, 734, 734,
vlmfa67ddc2004-06-03 03:38:44 +0000688
vlm808411d2006-03-14 16:31:37 +0000689 734, 734, 734, 734, 751, 33, 33, 33, 33, 33,
690 33, 752, 33, 33, 33, 33, 33, 33, 33, 33,
691 33, 33, 33, 33, 33, 33, 752, 752, 33, 33,
692 33, 33, 33, 33, 33, 33, 752, 33, 33, 33,
693 33, 752, 33, 33, 33, 33, 752, 33, 33, 33,
694 33, 33, 33, 33, 33, 752, 33, 33, 752, 752,
695 33, 753, 742, 734, 734, 734, 743, 734, 734, 734,
696 744, 734, 745, 734, 746, 77, 77, 734, 734, 754,
697 748, 734, 734, 755, 749, 756, 750, 734, 734, 757,
698 734, 734, 734, 734, 751, 758, 33, 33, 33, 33,
699
700 33, 758, 33, 33, 33, 33, 33, 33, 33, 33,
vlm066dc102005-08-22 12:23:54 +0000701 33, 33, 33, 33, 33, 33, 33, 33, 33, 33,
vlm808411d2006-03-14 16:31:37 +0000702 33, 752, 752, 33, 33, 33, 33, 33, 33, 33,
703 33, 33, 33, 752, 33, 33, 33, 752, 33, 33,
704 33, 33, 33, 752, 33, 33, 33, 33, 33, 33,
705 33, 33, 33, 33, 752, 33, 33, 33, 752, 752,
706 752, 33, 753, 734, 734, 734, 734, 77, 77, 754,
707 734, 755, 756, 734, 734, 734, 734, 757, 734, 734,
708 33, 33, 33, 33, 33, 33, 33, 33, 33, 33,
709 33, 33, 33, 33, 33, 33, 33, 33, 33, 33,
710
711 33, 33, 33, 752, 752, 33, 33, 33, 33, 33,
712 33, 33, 33, 33, 33, 752, 33, 33, 33, 752,
713 33, 33, 33, 33, 752, 33, 33, 33, 33, 33,
714 33, 33, 33, 33, 752, 33, 33, 33, 33, 33,
715 752, 752, 752, 33, 734, 734, 734, 734, 734, 77,
716 734, 33, 33, 33, 33, 752, 33, 33, 33, 33,
717 33, 33, 33, 33, 33, 33, 33, 33, 33, 33,
718 33, 33, 33, 33, 752, 752, 752, 33, 33, 33,
719 33, 33, 33, 33, 33, 33, 33, 752, 33, 33,
720 33, 752, 33, 195, 33, 33, 752, 33, 33, 33,
721
722 33, 752, 752, 33, 33, 33, 752, 33, 752, 752,
723 752, 734, 734, 734, 77, 734, 33, 33, 33, 752,
724 33, 33, 33, 33, 33, 33, 33, 33, 33, 33,
725 33, 33, 33, 33, 33, 33, 33, 33, 752, 752,
726 752, 33, 33, 33, 33, 33, 33, 33, 33, 33,
727 33, 195, 752, 33, 33, 752, 33, 195, 33, 33,
728 752, 33, 33, 33, 33, 752, 752, 33, 33, 752,
729 752, 752, 752, 752, 734, 734, 77, 734, 33, 33,
730 752, 33, 33, 33, 33, 33, 33, 33, 33, 33,
731 33, 33, 33, 33, 33, 33, 33, 752, 752, 752,
vlmfa67ddc2004-06-03 03:38:44 +0000732
vlmb5abdc92005-07-02 21:42:40 +0000733 33, 33, 33, 33, 33, 33, 33, 33, 33, 33,
vlm808411d2006-03-14 16:31:37 +0000734 195, 752, 33, 752, 33, 195, 33, 33, 752, 33,
735 33, 752, 752, 33, 752, 752, 752, 752, 752, 734,
736 77, 759, 33, 33, 752, 33, 33, 33, 33, 33,
737 33, 33, 33, 33, 33, 33, 752, 752, 752, 752,
738 33, 33, 33, 33, 33, 33, 752, 195, 752, 33,
739 752, 195, 752, 33, 33, 752, 752, 33, 752, 752,
740 752, 752, 734, 760, 77, 734, 33, 33, 752, 33,
741 33, 33, 33, 33, 195, 33, 33, 752, 752, 752,
742 752, 33, 33, 33, 752, 195, 752, 752, 195, 752,
vlm177a5b62005-09-05 05:17:57 +0000743
vlm808411d2006-03-14 16:31:37 +0000744 195, 752, 752, 33, 752, 752, 752, 752, 734, 734,
745 746, 734, 33, 33, 33, 33, 33, 195, 33, 33,
746 752, 752, 752, 33, 33, 33, 752, 195, 752, 752,
747 195, 752, 195, 752, 752, 752, 752, 752, 746, 734,
748 33, 33, 33, 195, 33, 752, 752, 752, 33, 33,
749 752, 195, 752, 752, 195, 752, 195, 752, 752, 752,
750 752, 746, 734, 195, 33, 752, 752, 752, 33, 33,
751 752, 195, 752, 752, 195, 752, 195, 752, 752, 752,
752 752, 746, 734, 195, 33, 752, 752, 752, 195, 752,
753 752, 195, 752, 752, 752, 752, 752, 746, 734, 195,
vlmfa67ddc2004-06-03 03:38:44 +0000754
vlm808411d2006-03-14 16:31:37 +0000755 752, 195, 752, 752, 752, 752, 746, 734, 195, 752,
756 752, 752, 752, 746, 734, 195, 752, 746, 734, 734,
757 734, 734, 734, 734, 734, 734, 734, 734, 734, 734,
758 734, 734, 734, 0, 734, 734, 734, 734, 734, 734,
759 734, 734, 734, 734, 734, 734, 734, 734, 734, 734,
760 734, 734, 734, 734, 734, 734, 734, 734, 734, 734
vlmb5abdc92005-07-02 21:42:40 +0000761 } ;
vlmfa67ddc2004-06-03 03:38:44 +0000762
vlm808411d2006-03-14 16:31:37 +0000763static yyconst short int yy_nxt[4496] =
vlmb5abdc92005-07-02 21:42:40 +0000764 { 0,
765 18, 19, 20, 19, 19, 21, 22, 23, 24, 25,
766 18, 25, 26, 27, 28, 29, 30, 30, 30, 30,
vlm066dc102005-08-22 12:23:54 +0000767 30, 30, 30, 31, 21, 32, 32, 18, 33, 34,
768 35, 36, 37, 38, 39, 40, 41, 40, 40, 40,
769 42, 43, 44, 45, 40, 46, 47, 48, 49, 50,
vlm808411d2006-03-14 16:31:37 +0000770 51, 40, 40, 40, 25, 21, 21, 52, 52, 52,
vlmb5abdc92005-07-02 21:42:40 +0000771 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
vlm808411d2006-03-14 16:31:37 +0000772 52, 52, 52, 52, 52, 52, 52, 52, 52, 53,
773 21, 25, 55, 56, 56, 55, 56, 56, 55, 56,
774 56, 68, 57, 65, 60, 57, 60, 66, 58, 55,
vlmfa67ddc2004-06-03 03:38:44 +0000775
vlm808411d2006-03-14 16:31:37 +0000776 56, 56, 61, 65, 61, 68, 62, 66, 62, 58,
777 93, 89, 69, 102, 202, 70, 202, 63, 734, 63,
778 90, 90, 90, 90, 202, 202, 69, 89, 202, 70,
779 90, 90, 90, 90, 734, 190, 733, 89, 97, 97,
780 97, 97, 95, 274, 575, 89, 89, 732, 191, 275,
781 99, 176, 97, 97, 100, 100, 100, 100, 100, 100,
782 100, 178, 178, 178, 178, 202, 734, 244, 71, 202,
783 72, 103, 103, 103, 103, 103, 103, 103, 103, 238,
784 341, 222, 71, 255, 72, 73, 74, 75, 74, 74,
785 73, 73, 73, 73, 73, 73, 73, 73, 73, 73,
vlmfa67ddc2004-06-03 03:38:44 +0000786
vlm808411d2006-03-14 16:31:37 +0000787 178, 178, 178, 178, 90, 90, 90, 90, 73, 73,
788 73, 73, 73, 106, 223, 279, 113, 77, 279, 106,
789 114, 234, 121, 106, 115, 106, 116, 106, 202, 106,
790 202, 106, 106, 106, 106, 202, 117, 106, 106, 73,
791 73, 73, 280, 118, 106, 280, 106, 119, 106, 106,
792 120, 106, 202, 106, 202, 202, 106, 178, 178, 178,
793 178, 176, 350, 202, 74, 73, 74, 73, 74, 75,
794 74, 74, 73, 73, 73, 73, 73, 73, 73, 73,
795 73, 73, 202, 259, 268, 269, 106, 305, 343, 202,
796 73, 73, 73, 73, 73, 176, 106, 122, 123, 77,
vlmfa67ddc2004-06-03 03:38:44 +0000797
vlm808411d2006-03-14 16:31:37 +0000798 106, 277, 260, 277, 304, 106, 138, 139, 124, 325,
799 140, 278, 316, 125, 106, 261, 106, 277, 106, 277,
800 141, 73, 73, 73, 106, 106, 106, 278, 106, 729,
801 126, 320, 728, 106, 415, 142, 192, 192, 192, 192,
802 192, 192, 192, 192, 176, 470, 74, 73, 74, 32,
803 78, 79, 78, 78, 32, 32, 80, 32, 32, 32,
804 81, 82, 32, 83, 32, 32, 32, 32, 32, 32,
805 32, 32, 32, 32, 32, 32, 32, 84, 84, 84,
806 84, 84, 84, 84, 84, 84, 84, 84, 84, 84,
807 84, 84, 84, 84, 84, 84, 84, 84, 84, 84,
vlmfa67ddc2004-06-03 03:38:44 +0000808
vlm808411d2006-03-14 16:31:37 +0000809 84, 84, 84, 85, 86, 32, 32, 32, 32, 32,
810 32, 32, 32, 32, 32, 32, 32, 32, 32, 32,
811 32, 32, 32, 32, 32, 32, 32, 32, 87, 32,
812 88, 89, 202, 477, 97, 97, 97, 97, 176, 727,
813 726, 188, 202, 202, 202, 725, 724, 93, 97, 97,
814 723, 94, 94, 94, 94, 94, 94, 94, 94, 94,
815 94, 94, 94, 94, 94, 94, 94, 94, 94, 94,
816 94, 94, 94, 94, 94, 94, 94, 667, 411, 95,
817 96, 96, 96, 96, 96, 96, 96, 96, 96, 96,
818 96, 96, 96, 96, 96, 96, 96, 96, 96, 96,
vlmfa67ddc2004-06-03 03:38:44 +0000819
vlm808411d2006-03-14 16:31:37 +0000820 96, 96, 105, 375, 388, 106, 106, 106, 106, 106,
821 106, 106, 106, 722, 202, 202, 202, 721, 106, 107,
822 106, 106, 106, 106, 106, 106, 106, 106, 106, 108,
823 106, 109, 106, 110, 106, 106, 106, 106, 111, 106,
824 106, 106, 106, 106, 202, 202, 202, 112, 112, 112,
825 112, 112, 112, 112, 112, 112, 112, 112, 112, 112,
826 112, 112, 112, 112, 112, 112, 112, 112, 112, 106,
827 202, 202, 202, 410, 129, 106, 397, 130, 403, 106,
828 202, 106, 202, 106, 202, 106, 131, 132, 106, 106,
829 106, 439, 133, 335, 106, 134, 106, 376, 734, 202,
vlmfa67ddc2004-06-03 03:38:44 +0000830
vlm808411d2006-03-14 16:31:37 +0000831 106, 127, 106, 135, 106, 202, 106, 202, 106, 136,
832 106, 202, 128, 143, 106, 106, 144, 720, 392, 342,
833 202, 409, 458, 202, 145, 202, 106, 202, 106, 106,
834 146, 202, 148, 106, 202, 106, 137, 440, 149, 106,
835 420, 106, 150, 106, 456, 106, 202, 106, 106, 106,
836 202, 153, 106, 151, 106, 734, 461, 147, 152, 154,
837 106, 473, 106, 106, 106, 441, 106, 466, 202, 467,
838 106, 106, 106, 106, 106, 157, 155, 106, 453, 106,
839 535, 158, 106, 106, 202, 633, 474, 472, 160, 498,
840 161, 570, 156, 106, 202, 106, 519, 106, 164, 164,
vlmfa67ddc2004-06-03 03:38:44 +0000841
vlm808411d2006-03-14 16:31:37 +0000842 164, 164, 106, 159, 103, 103, 103, 103, 103, 103,
843 103, 103, 165, 165, 165, 165, 165, 165, 166, 166,
844 175, 481, 202, 202, 202, 175, 175, 175, 175, 175,
845 175, 175, 175, 175, 175, 734, 202, 500, 106, 106,
846 202, 499, 514, 175, 175, 175, 175, 175, 106, 106,
847 106, 106, 106, 106, 106, 719, 197, 106, 106, 511,
848 412, 412, 412, 412, 198, 202, 106, 106, 106, 512,
849 106, 202, 202, 106, 175, 175, 175, 106, 202, 106,
850 106, 106, 106, 202, 200, 106, 106, 202, 202, 106,
851 199, 202, 718, 522, 202, 106, 526, 106, 202, 106,
vlmfa67ddc2004-06-03 03:38:44 +0000852
vlm808411d2006-03-14 16:31:37 +0000853 175, 175, 202, 201, 106, 549, 175, 175, 175, 175,
854 175, 175, 175, 175, 175, 175, 192, 192, 192, 192,
855 192, 192, 192, 192, 175, 175, 175, 175, 175, 106,
856 523, 202, 525, 527, 203, 106, 528, 529, 595, 106,
857 414, 106, 177, 106, 202, 106, 563, 106, 106, 106,
858 106, 550, 202, 204, 106, 175, 175, 175, 106, 566,
859 106, 202, 106, 571, 205, 559, 202, 202, 106, 106,
860 106, 206, 106, 202, 202, 202, 202, 106, 567, 202,
861 202, 175, 196, 196, 196, 196, 196, 196, 196, 196,
862 196, 196, 196, 196, 196, 196, 196, 196, 196, 196,
vlmfa67ddc2004-06-03 03:38:44 +0000863
vlm808411d2006-03-14 16:31:37 +0000864 196, 196, 196, 196, 106, 569, 207, 106, 547, 572,
865 561, 202, 202, 202, 106, 202, 106, 106, 106, 106,
866 208, 106, 106, 106, 209, 106, 106, 548, 588, 590,
867 579, 591, 106, 210, 211, 106, 106, 106, 106, 106,
868 202, 106, 212, 202, 106, 716, 213, 202, 106, 202,
869 106, 202, 106, 202, 202, 611, 106, 106, 106, 202,
870 106, 106, 214, 215, 106, 106, 602, 106, 217, 605,
871 202, 106, 598, 106, 220, 106, 106, 106, 106, 106,
872 216, 218, 106, 106, 176, 219, 106, 224, 607, 202,
873 202, 202, 106, 632, 106, 221, 106, 106, 600, 734,
vlmfa67ddc2004-06-03 03:38:44 +0000874
vlm808411d2006-03-14 16:31:37 +0000875 106, 106, 606, 225, 636, 597, 589, 106, 106, 106,
876 106, 106, 106, 603, 106, 608, 106, 618, 106, 106,
877 106, 202, 226, 106, 227, 202, 202, 106, 609, 609,
878 609, 609, 202, 106, 106, 106, 202, 106, 202, 622,
879 228, 229, 106, 730, 106, 106, 106, 230, 106, 621,
880 691, 106, 715, 106, 202, 106, 714, 106, 202, 106,
881 202, 106, 106, 232, 106, 106, 202, 231, 630, 731,
882 106, 202, 233, 202, 106, 106, 106, 202, 106, 202,
883 647, 106, 651, 235, 202, 106, 623, 106, 106, 106,
884 106, 106, 106, 666, 106, 202, 236, 106, 629, 106,
vlmfa67ddc2004-06-03 03:38:44 +0000885
vlm808411d2006-03-14 16:31:37 +0000886 202, 106, 106, 106, 202, 106, 202, 627, 610, 106,
887 106, 106, 106, 106, 106, 106, 106, 237, 106, 646,
888 239, 106, 637, 202, 635, 106, 106, 106, 202, 106,
889 709, 634, 648, 202, 106, 240, 106, 638, 106, 106,
890 106, 202, 242, 708, 654, 241, 243, 202, 653, 106,
891 707, 106, 202, 106, 245, 106, 202, 658, 106, 730,
892 202, 106, 656, 202, 202, 246, 202, 106, 659, 106,
893 202, 106, 106, 106, 106, 106, 247, 202, 106, 248,
894 106, 661, 106, 660, 106, 731, 106, 252, 106, 106,
895 106, 106, 106, 676, 250, 202, 249, 106, 668, 106,
vlmfa67ddc2004-06-03 03:38:44 +0000896
vlm808411d2006-03-14 16:31:37 +0000897 106, 251, 202, 106, 673, 674, 106, 671, 106, 202,
898 106, 253, 106, 680, 106, 202, 106, 106, 106, 106,
899 106, 678, 202, 106, 202, 106, 679, 106, 711, 106,
900 256, 106, 202, 106, 681, 106, 254, 106, 106, 106,
901 257, 202, 106, 258, 609, 609, 609, 609, 106, 106,
902 106, 106, 106, 106, 202, 687, 262, 106, 106, 164,
903 164, 164, 164, 202, 202, 701, 686, 702, 202, 202,
904 202, 202, 202, 165, 165, 165, 165, 165, 165, 166,
905 166, 264, 202, 688, 703, 166, 166, 166, 166, 166,
906 166, 166, 166, 265, 693, 202, 202, 166, 166, 166,
vlmfa67ddc2004-06-03 03:38:44 +0000907
vlm808411d2006-03-14 16:31:37 +0000908 166, 166, 166, 166, 166, 105, 106, 106, 700, 281,
909 699, 696, 698, 692, 690, 694, 106, 106, 106, 106,
910 106, 106, 106, 106, 610, 106, 106, 704, 705, 717,
911 202, 710, 106, 282, 106, 106, 106, 106, 202, 689,
912 202, 106, 106, 684, 683, 682, 677, 697, 695, 202,
913 196, 196, 196, 196, 196, 196, 196, 196, 196, 196,
914 196, 196, 196, 196, 196, 196, 196, 196, 196, 196,
915 196, 196, 106, 675, 672, 664, 663, 662, 202, 657,
916 106, 706, 106, 106, 106, 283, 106, 284, 655, 712,
917 106, 106, 106, 106, 106, 106, 106, 106, 652, 106,
vlmfa67ddc2004-06-03 03:38:44 +0000918
vlm808411d2006-03-14 16:31:37 +0000919 713, 644, 106, 640, 106, 639, 106, 202, 106, 631,
920 106, 628, 106, 285, 286, 106, 106, 202, 106, 202,
921 106, 612, 106, 106, 106, 599, 106, 288, 287, 596,
922 106, 106, 106, 106, 106, 202, 562, 558, 532, 106,
923 531, 106, 516, 106, 106, 106, 478, 106, 416, 349,
924 289, 106, 106, 106, 106, 290, 106, 351, 106, 186,
925 106, 291, 292, 106, 293, 106, 106, 184, 182, 295,
926 180, 176, 294, 349, 162, 106, 106, 106, 106, 106,
927 106, 106, 734, 202, 106, 106, 275, 106, 186, 184,
928 271, 106, 180, 106, 296, 106, 176, 106, 106, 106,
vlmfa67ddc2004-06-03 03:38:44 +0000929
vlm808411d2006-03-14 16:31:37 +0000930 106, 106, 267, 266, 106, 162, 106, 298, 106, 297,
931 106, 202, 106, 194, 106, 106, 106, 106, 106, 193,
932 189, 106, 186, 106, 301, 299, 184, 106, 300, 106,
933 183, 106, 106, 106, 106, 106, 182, 182, 180, 102,
934 106, 179, 106, 106, 106, 174, 106, 172, 102, 302,
935 170, 106, 169, 106, 303, 106, 106, 106, 168, 162,
936 104, 101, 106, 92, 106, 89, 106, 106, 106, 89,
937 106, 734, 734, 306, 106, 106, 307, 308, 106, 106,
938 309, 106, 106, 106, 734, 106, 106, 734, 106, 734,
939 734, 312, 310, 734, 106, 106, 106, 106, 106, 106,
vlmfa67ddc2004-06-03 03:38:44 +0000940
vlm808411d2006-03-14 16:31:37 +0000941 106, 106, 106, 311, 106, 313, 106, 106, 734, 734,
942 734, 734, 734, 734, 106, 734, 106, 106, 106, 734,
943 106, 734, 734, 734, 106, 106, 106, 106, 106, 106,
944 106, 106, 734, 106, 734, 734, 314, 734, 106, 734,
945 315, 317, 106, 734, 106, 734, 734, 734, 106, 106,
946 106, 106, 106, 734, 318, 734, 734, 106, 734, 106,
947 734, 106, 106, 106, 734, 106, 319, 734, 734, 106,
948 106, 106, 106, 106, 106, 106, 106, 734, 106, 734,
949 321, 106, 734, 106, 734, 106, 734, 106, 734, 106,
950 734, 106, 734, 106, 106, 106, 734, 106, 734, 106,
vlmfa67ddc2004-06-03 03:38:44 +0000951
vlm808411d2006-03-14 16:31:37 +0000952 322, 106, 106, 106, 734, 106, 734, 734, 323, 106,
953 106, 106, 106, 106, 327, 106, 734, 734, 106, 324,
954 734, 734, 326, 106, 106, 106, 106, 106, 734, 106,
955 734, 106, 734, 106, 106, 106, 106, 106, 734, 734,
956 734, 734, 328, 734, 106, 734, 106, 329, 106, 734,
957 106, 734, 106, 734, 106, 106, 106, 734, 106, 330,
958 106, 734, 106, 106, 106, 734, 106, 734, 734, 734,
959 106, 106, 106, 106, 106, 734, 734, 734, 331, 106,
960 734, 106, 734, 106, 734, 106, 734, 106, 734, 734,
961 332, 106, 106, 106, 106, 106, 734, 334, 333, 734,
vlmfa67ddc2004-06-03 03:38:44 +0000962
vlm808411d2006-03-14 16:31:37 +0000963 106, 734, 106, 734, 106, 734, 106, 734, 106, 734,
964 734, 340, 106, 106, 106, 336, 106, 337, 106, 106,
965 734, 106, 338, 734, 734, 734, 734, 734, 106, 106,
966 106, 106, 106, 106, 106, 734, 339, 106, 106, 734,
967 344, 734, 734, 734, 106, 734, 106, 734, 106, 345,
968 345, 345, 345, 106, 734, 734, 734, 347, 347, 347,
969 347, 734, 734, 346, 346, 346, 346, 346, 346, 346,
970 346, 348, 348, 348, 348, 348, 348, 348, 348, 106,
971 106, 734, 734, 734, 734, 734, 734, 353, 734, 106,
972 106, 352, 106, 106, 106, 106, 734, 734, 106, 106,
vlmfa67ddc2004-06-03 03:38:44 +0000973
vlm808411d2006-03-14 16:31:37 +0000974 734, 106, 734, 734, 734, 106, 354, 106, 734, 106,
975 734, 106, 106, 355, 106, 106, 734, 734, 106, 734,
976 106, 357, 106, 734, 106, 734, 106, 734, 106, 734,
977 106, 106, 106, 358, 106, 106, 359, 106, 734, 734,
978 734, 734, 734, 734, 106, 106, 106, 106, 106, 106,
979 106, 734, 734, 106, 106, 734, 734, 356, 106, 734,
980 106, 734, 106, 734, 106, 734, 106, 360, 106, 106,
981 106, 361, 106, 734, 734, 734, 106, 106, 106, 106,
982 106, 363, 106, 734, 362, 106, 734, 734, 734, 106,
983 106, 106, 106, 106, 106, 734, 106, 734, 364, 734,
vlmfa67ddc2004-06-03 03:38:44 +0000984
vlm808411d2006-03-14 16:31:37 +0000985 106, 106, 365, 106, 106, 366, 106, 734, 367, 106,
986 734, 734, 734, 106, 734, 106, 106, 106, 106, 734,
987 106, 106, 106, 734, 368, 106, 734, 106, 734, 734,
988 734, 106, 734, 106, 734, 106, 734, 106, 106, 106,
989 106, 369, 734, 734, 106, 370, 106, 734, 106, 734,
990 106, 734, 106, 734, 106, 106, 106, 106, 106, 734,
991 371, 734, 734, 106, 734, 106, 734, 372, 734, 106,
992 106, 373, 734, 374, 106, 734, 106, 734, 734, 734,
993 106, 734, 106, 734, 106, 734, 106, 106, 106, 106,
994 106, 734, 734, 106, 734, 106, 734, 106, 734, 106,
vlmfa67ddc2004-06-03 03:38:44 +0000995
vlm808411d2006-03-14 16:31:37 +0000996 734, 106, 734, 106, 734, 106, 106, 106, 106, 106,
997 734, 378, 106, 734, 734, 379, 734, 734, 106, 106,
998 106, 106, 106, 106, 106, 380, 734, 106, 106, 382,
999 106, 734, 377, 734, 106, 734, 106, 386, 106, 734,
1000 106, 734, 106, 381, 106, 106, 383, 734, 106, 106,
1001 384, 734, 734, 734, 734, 106, 106, 106, 106, 106,
1002 106, 385, 106, 734, 106, 734, 106, 106, 106, 106,
1003 106, 734, 734, 387, 734, 106, 734, 106, 389, 106,
1004 106, 106, 734, 106, 734, 734, 734, 106, 106, 106,
1005 106, 106, 106, 106, 106, 734, 106, 394, 390, 106,
vlmfa67ddc2004-06-03 03:38:44 +00001006
vlm808411d2006-03-14 16:31:37 +00001007 734, 106, 734, 106, 393, 106, 391, 106, 734, 734,
1008 734, 106, 106, 106, 106, 106, 734, 734, 734, 734,
1009 106, 734, 106, 734, 106, 395, 106, 734, 106, 396,
1010 106, 734, 106, 106, 106, 734, 106, 734, 106, 734,
1011 106, 106, 106, 734, 106, 734, 106, 734, 106, 106,
1012 106, 734, 106, 734, 734, 734, 106, 106, 106, 106,
1013 106, 734, 399, 734, 398, 106, 734, 106, 734, 106,
1014 106, 106, 734, 106, 734, 734, 734, 106, 106, 106,
1015 106, 106, 400, 734, 106, 106, 106, 401, 106, 106,
1016 734, 106, 734, 734, 734, 106, 734, 106, 106, 106,
vlmfa67ddc2004-06-03 03:38:44 +00001017
vlm808411d2006-03-14 16:31:37 +00001018 106, 106, 106, 106, 106, 106, 106, 106, 734, 106,
1019 106, 734, 106, 734, 734, 734, 106, 734, 106, 106,
1020 106, 404, 106, 106, 106, 106, 106, 734, 106, 106,
1021 402, 405, 406, 734, 734, 106, 734, 734, 734, 106,
1022 734, 106, 734, 106, 734, 106, 106, 106, 106, 106,
1023 734, 734, 734, 734, 106, 734, 106, 734, 106, 734,
1024 106, 734, 106, 408, 734, 106, 734, 734, 734, 734,
1025 734, 407, 106, 734, 106, 734, 106, 345, 345, 345,
1026 345, 106, 734, 734, 734, 734, 734, 734, 734, 734,
1027 734, 346, 346, 346, 346, 346, 346, 346, 346, 412,
vlmfa67ddc2004-06-03 03:38:44 +00001028
vlm808411d2006-03-14 16:31:37 +00001029 412, 412, 412, 734, 734, 734, 734, 734, 734, 413,
1030 734, 734, 734, 346, 346, 346, 346, 346, 346, 346,
1031 346, 347, 347, 347, 347, 734, 734, 734, 734, 734,
1032 734, 734, 734, 734, 734, 348, 348, 348, 348, 348,
1033 348, 348, 348, 413, 734, 106, 106, 348, 348, 348,
1034 348, 348, 348, 348, 348, 106, 106, 106, 106, 106,
1035 106, 106, 418, 417, 106, 106, 734, 734, 734, 734,
1036 734, 106, 734, 106, 734, 106, 419, 106, 734, 414,
1037 106, 734, 421, 106, 734, 734, 734, 106, 734, 106,
1038 734, 106, 734, 106, 734, 106, 106, 106, 106, 422,
vlm9283dbe2004-08-18 04:59:12 +00001039
vlm808411d2006-03-14 16:31:37 +00001040 734, 106, 106, 734, 423, 734, 734, 734, 106, 106,
1041 106, 106, 106, 106, 734, 106, 734, 106, 734, 106,
1042 106, 106, 106, 106, 734, 734, 734, 734, 106, 734,
1043 106, 734, 106, 734, 424, 734, 106, 734, 106, 734,
1044 106, 106, 106, 734, 106, 426, 425, 734, 106, 106,
1045 106, 106, 106, 734, 734, 734, 734, 106, 734, 106,
1046 734, 427, 428, 106, 734, 106, 429, 734, 734, 106,
1047 106, 106, 106, 106, 430, 734, 734, 734, 106, 734,
1048 106, 734, 106, 431, 106, 734, 106, 432, 106, 734,
1049 106, 106, 106, 734, 106, 734, 106, 734, 106, 106,
vlm2c8c44d2005-03-24 16:22:35 +00001050
vlm808411d2006-03-14 16:31:37 +00001051 106, 734, 106, 734, 433, 734, 106, 106, 106, 734,
1052 106, 106, 435, 734, 434, 106, 734, 106, 734, 734,
1053 734, 106, 734, 106, 734, 106, 734, 106, 106, 106,
1054 106, 106, 734, 734, 106, 436, 106, 734, 106, 734,
1055 106, 734, 106, 734, 106, 437, 438, 106, 106, 106,
1056 106, 734, 734, 106, 734, 734, 734, 442, 734, 106,
1057 106, 106, 106, 106, 106, 734, 734, 106, 106, 106,
1058 106, 443, 734, 444, 734, 734, 734, 106, 734, 106,
1059 106, 106, 106, 734, 106, 445, 106, 106, 106, 106,
1060 446, 734, 734, 734, 734, 734, 734, 106, 106, 447,
vlm2c8c44d2005-03-24 16:22:35 +00001061
vlm808411d2006-03-14 16:31:37 +00001062 106, 106, 106, 106, 734, 734, 106, 106, 734, 106,
1063 734, 734, 449, 106, 734, 106, 734, 106, 734, 106,
1064 106, 106, 448, 106, 451, 734, 734, 452, 106, 734,
1065 106, 734, 106, 106, 106, 734, 734, 450, 734, 106,
1066 734, 106, 734, 106, 106, 106, 734, 106, 734, 734,
1067 734, 106, 106, 106, 106, 106, 106, 106, 106, 454,
1068 106, 734, 734, 106, 734, 106, 734, 106, 734, 106,
1069 734, 106, 734, 106, 734, 106, 106, 455, 734, 106,
1070 734, 106, 734, 106, 106, 106, 734, 106, 734, 457,
1071 734, 106, 106, 459, 106, 106, 734, 734, 734, 734,
vlm2c8c44d2005-03-24 16:22:35 +00001072
vlm808411d2006-03-14 16:31:37 +00001073 106, 734, 734, 734, 106, 734, 106, 106, 106, 734,
1074 106, 734, 460, 106, 462, 734, 734, 106, 106, 106,
1075 106, 106, 463, 464, 106, 734, 106, 734, 106, 106,
1076 106, 106, 106, 734, 734, 734, 734, 106, 734, 734,
1077 734, 106, 106, 106, 734, 106, 734, 734, 106, 734,
1078 106, 468, 106, 465, 106, 734, 106, 734, 106, 106,
1079 106, 106, 106, 734, 734, 734, 734, 106, 734, 106,
1080 106, 106, 734, 106, 734, 469, 734, 734, 106, 734,
1081 106, 734, 106, 734, 106, 475, 475, 475, 475, 106,
1082 734, 734, 734, 734, 734, 734, 734, 106, 734, 476,
vlmb5abdc92005-07-02 21:42:40 +00001083
vlm808411d2006-03-14 16:31:37 +00001084 476, 476, 476, 476, 476, 476, 476, 106, 734, 106,
1085 106, 106, 479, 106, 734, 471, 106, 734, 734, 734,
1086 106, 106, 106, 106, 106, 106, 734, 106, 480, 106,
1087 734, 106, 106, 482, 106, 106, 734, 106, 734, 734,
1088 106, 734, 734, 734, 106, 734, 106, 106, 106, 106,
1089 734, 106, 483, 106, 106, 734, 106, 484, 734, 485,
1090 106, 734, 734, 734, 106, 734, 106, 734, 106, 734,
1091 106, 106, 106, 106, 106, 734, 734, 106, 734, 106,
1092 734, 106, 734, 486, 734, 106, 734, 106, 734, 106,
1093 106, 106, 106, 734, 488, 487, 106, 734, 106, 734,
vlmb5abdc92005-07-02 21:42:40 +00001094
vlm808411d2006-03-14 16:31:37 +00001095 734, 734, 106, 734, 106, 734, 106, 734, 106, 734,
1096 106, 106, 106, 734, 734, 106, 489, 106, 490, 734,
1097 734, 106, 734, 491, 734, 106, 734, 106, 734, 106,
1098 734, 106, 106, 106, 106, 106, 734, 493, 106, 734,
1099 106, 734, 106, 734, 492, 734, 106, 734, 106, 106,
1100 106, 106, 106, 734, 734, 106, 734, 106, 734, 106,
1101 734, 106, 494, 106, 734, 106, 106, 106, 106, 106,
1102 734, 734, 106, 734, 106, 734, 106, 734, 106, 496,
1103 106, 734, 106, 495, 106, 106, 106, 497, 106, 106,
1104 734, 106, 734, 501, 734, 734, 734, 734, 106, 106,
vlmb5abdc92005-07-02 21:42:40 +00001105
vlm808411d2006-03-14 16:31:37 +00001106 106, 106, 106, 106, 106, 734, 734, 106, 106, 734,
1107 106, 502, 503, 734, 106, 734, 106, 734, 106, 734,
1108 106, 106, 106, 106, 106, 734, 734, 106, 734, 106,
1109 505, 106, 734, 106, 734, 106, 734, 106, 504, 106,
1110 106, 106, 106, 506, 734, 734, 106, 734, 106, 507,
1111 734, 734, 106, 734, 106, 734, 106, 734, 106, 106,
1112 106, 106, 106, 734, 734, 734, 734, 106, 734, 106,
1113 734, 106, 734, 106, 106, 508, 734, 509, 106, 734,
1114 106, 734, 734, 734, 106, 734, 106, 734, 106, 734,
1115 106, 106, 106, 106, 106, 734, 734, 510, 734, 106,
vlmb5abdc92005-07-02 21:42:40 +00001116
vlm808411d2006-03-14 16:31:37 +00001117 734, 106, 734, 106, 106, 106, 513, 106, 734, 734,
1118 106, 734, 734, 734, 106, 106, 515, 106, 106, 106,
1119 734, 106, 734, 106, 734, 106, 106, 106, 106, 106,
1120 734, 518, 734, 517, 106, 734, 106, 734, 106, 734,
1121 106, 734, 106, 734, 734, 734, 106, 106, 106, 734,
1122 106, 106, 521, 734, 106, 106, 520, 106, 734, 734,
1123 734, 106, 734, 106, 106, 106, 106, 106, 106, 106,
1124 106, 106, 106, 106, 734, 106, 106, 734, 734, 734,
1125 734, 734, 106, 734, 106, 106, 106, 106, 734, 106,
1126 734, 106, 524, 734, 106, 475, 475, 475, 475, 734,
vlmb5abdc92005-07-02 21:42:40 +00001127
vlm808411d2006-03-14 16:31:37 +00001128 734, 734, 734, 734, 734, 734, 734, 734, 734, 476,
1129 476, 476, 476, 476, 476, 476, 476, 530, 734, 106,
1130 734, 476, 476, 476, 476, 476, 476, 476, 476, 106,
1131 734, 106, 106, 106, 734, 106, 734, 533, 106, 534,
1132 734, 734, 106, 734, 106, 106, 106, 106, 734, 106,
1133 106, 106, 734, 536, 106, 734, 106, 734, 734, 734,
1134 106, 734, 106, 734, 106, 734, 106, 106, 537, 106,
1135 106, 734, 734, 106, 538, 106, 734, 106, 734, 106,
1136 539, 106, 734, 106, 106, 106, 106, 106, 734, 734,
1137 106, 734, 106, 734, 106, 734, 106, 734, 106, 734,
vlmb5abdc92005-07-02 21:42:40 +00001138
vlm808411d2006-03-14 16:31:37 +00001139 106, 106, 106, 106, 106, 734, 734, 734, 540, 106,
1140 734, 106, 106, 106, 541, 106, 734, 734, 106, 734,
1141 106, 734, 106, 734, 106, 734, 106, 734, 106, 106,
1142 106, 106, 106, 734, 542, 106, 734, 106, 734, 106,
1143 734, 106, 734, 106, 734, 106, 106, 106, 106, 106,
1144 734, 734, 734, 543, 106, 734, 106, 106, 106, 734,
1145 106, 734, 734, 545, 544, 106, 734, 106, 734, 106,
1146 734, 106, 734, 106, 106, 106, 106, 106, 734, 734,
1147 106, 734, 106, 734, 546, 734, 106, 551, 106, 734,
1148 106, 106, 106, 106, 106, 734, 734, 734, 734, 106,
vlmb5abdc92005-07-02 21:42:40 +00001149
vlm808411d2006-03-14 16:31:37 +00001150 734, 106, 106, 106, 734, 106, 734, 734, 106, 552,
1151 106, 734, 106, 734, 106, 734, 106, 734, 106, 106,
1152 106, 106, 106, 734, 734, 106, 734, 106, 554, 106,
1153 734, 106, 734, 106, 734, 106, 553, 106, 106, 106,
1154 106, 106, 734, 734, 106, 734, 734, 734, 734, 734,
1155 106, 106, 106, 106, 106, 106, 106, 556, 555, 106,
1156 106, 734, 106, 734, 734, 734, 106, 734, 106, 734,
1157 106, 734, 106, 106, 106, 106, 106, 734, 734, 106,
1158 734, 106, 734, 560, 734, 106, 734, 106, 734, 106,
1159 106, 106, 106, 106, 734, 734, 106, 734, 106, 734,
vlmb5abdc92005-07-02 21:42:40 +00001160
vlm808411d2006-03-14 16:31:37 +00001161 106, 734, 106, 734, 106, 734, 106, 557, 106, 106,
1162 106, 106, 734, 734, 564, 106, 734, 106, 734, 734,
1163 565, 106, 734, 106, 734, 106, 734, 106, 734, 106,
1164 106, 106, 568, 106, 734, 734, 106, 734, 734, 573,
1165 573, 573, 573, 106, 734, 106, 734, 106, 734, 734,
1166 734, 734, 106, 574, 574, 574, 574, 574, 574, 574,
1167 574, 106, 106, 578, 734, 734, 734, 734, 577, 734,
1168 734, 106, 106, 106, 106, 106, 106, 106, 734, 734,
1169 106, 106, 734, 734, 734, 106, 734, 106, 106, 106,
1170 734, 106, 734, 580, 734, 106, 106, 106, 106, 106,
vlmb5abdc92005-07-02 21:42:40 +00001171
vlm808411d2006-03-14 16:31:37 +00001172 582, 106, 106, 581, 106, 734, 734, 106, 585, 106,
1173 734, 106, 734, 583, 734, 106, 734, 106, 734, 106,
1174 106, 106, 584, 106, 734, 106, 734, 106, 106, 106,
1175 734, 106, 734, 734, 734, 106, 106, 106, 106, 106,
1176 734, 586, 734, 734, 106, 734, 106, 734, 106, 734,
1177 106, 734, 106, 734, 106, 734, 106, 106, 106, 734,
1178 106, 587, 106, 734, 106, 106, 106, 734, 106, 734,
1179 734, 734, 106, 106, 106, 106, 106, 734, 592, 734,
1180 734, 106, 734, 106, 734, 106, 106, 106, 734, 106,
1181 734, 734, 734, 106, 106, 106, 106, 106, 106, 106,
vlmb5abdc92005-07-02 21:42:40 +00001182
vlm808411d2006-03-14 16:31:37 +00001183 106, 734, 106, 734, 734, 106, 734, 106, 734, 106,
1184 106, 106, 734, 106, 593, 734, 734, 106, 106, 106,
1185 106, 106, 106, 106, 106, 734, 106, 601, 594, 106,
1186 734, 106, 734, 106, 734, 106, 734, 106, 734, 734,
1187 734, 106, 106, 106, 106, 106, 734, 106, 734, 734,
1188 106, 734, 734, 734, 106, 734, 106, 604, 106, 106,
1189 734, 106, 734, 106, 734, 734, 106, 573, 573, 573,
1190 573, 734, 734, 734, 734, 734, 734, 734, 734, 106,
1191 734, 574, 574, 574, 574, 574, 574, 574, 574, 106,
1192 106, 106, 613, 106, 734, 734, 106, 734, 106, 734,
vlmb5abdc92005-07-02 21:42:40 +00001193
vlm808411d2006-03-14 16:31:37 +00001194 106, 734, 106, 734, 106, 734, 106, 106, 106, 106,
1195 106, 734, 734, 106, 734, 106, 615, 106, 734, 106,
1196 734, 106, 734, 106, 614, 106, 106, 106, 106, 106,
1197 734, 734, 106, 616, 734, 734, 734, 734, 106, 106,
1198 106, 617, 106, 106, 106, 106, 619, 106, 106, 734,
1199 734, 734, 734, 734, 106, 620, 106, 106, 106, 106,
1200 106, 734, 734, 106, 106, 734, 734, 734, 106, 734,
1201 106, 734, 106, 734, 106, 734, 624, 734, 106, 106,
1202 106, 625, 106, 106, 106, 734, 734, 106, 734, 734,
1203 626, 734, 734, 106, 106, 106, 106, 106, 106, 106,
vlmb5abdc92005-07-02 21:42:40 +00001204
vlm808411d2006-03-14 16:31:37 +00001205 106, 734, 106, 106, 734, 734, 734, 734, 734, 106,
1206 106, 641, 106, 106, 106, 106, 106, 642, 106, 106,
1207 734, 734, 734, 734, 734, 106, 106, 106, 106, 106,
1208 106, 106, 106, 734, 106, 106, 734, 734, 734, 734,
1209 734, 106, 106, 106, 106, 106, 106, 106, 643, 734,
1210 106, 106, 734, 106, 645, 734, 734, 106, 734, 106,
1211 734, 106, 734, 106, 106, 106, 106, 106, 734, 734,
1212 734, 734, 106, 734, 106, 106, 649, 734, 106, 734,
1213 734, 106, 734, 106, 734, 106, 734, 106, 650, 106,
1214 734, 106, 106, 106, 106, 106, 734, 734, 106, 734,
vlmb5abdc92005-07-02 21:42:40 +00001215
vlm808411d2006-03-14 16:31:37 +00001216 106, 734, 106, 734, 106, 734, 106, 734, 106, 106,
1217 106, 106, 106, 734, 734, 734, 734, 106, 734, 106,
1218 106, 106, 734, 106, 734, 734, 106, 665, 106, 734,
1219 106, 734, 106, 734, 106, 734, 106, 669, 670, 106,
1220 106, 106, 106, 734, 734, 106, 734, 734, 734, 734,
1221 734, 106, 106, 106, 106, 106, 106, 106, 106, 734,
1222 106, 106, 734, 734, 685, 734, 734, 106, 106, 106,
1223 106, 106, 106, 734, 734, 734, 106, 106, 54, 54,
1224 54, 54, 54, 54, 54, 54, 54, 54, 54, 54,
1225 54, 59, 59, 59, 59, 59, 59, 59, 59, 59,
1226
1227 59, 59, 59, 59, 64, 64, 64, 64, 64, 64,
1228 64, 64, 64, 64, 64, 64, 64, 67, 67, 67,
1229 67, 67, 67, 67, 67, 67, 67, 67, 67, 67,
vlmb8958092006-03-06 11:28:17 +00001230 76, 76, 76, 76, 76, 76, 76, 76, 76, 76,
vlm808411d2006-03-14 16:31:37 +00001231 76, 76, 76, 91, 91, 91, 91, 734, 91, 91,
1232 91, 91, 91, 91, 91, 91, 98, 98, 98, 734,
1233 98, 734, 98, 734, 98, 163, 163, 734, 163, 163,
1234 167, 167, 734, 734, 167, 167, 734, 167, 167, 167,
1235 167, 167, 167, 171, 171, 171, 171, 734, 171, 171,
1236 171, 171, 171, 171, 171, 171, 173, 173, 173, 173,
vlmb5abdc92005-07-02 21:42:40 +00001237
vlm808411d2006-03-14 16:31:37 +00001238 173, 173, 173, 173, 734, 173, 173, 175, 734, 734,
1239 734, 175, 175, 175, 175, 175, 175, 175, 176, 734,
1240 734, 734, 176, 176, 176, 176, 176, 176, 176, 181,
1241 181, 734, 181, 181, 185, 185, 734, 185, 185, 187,
1242 187, 734, 187, 187, 195, 734, 195, 195, 112, 112,
1243 734, 112, 112, 263, 734, 263, 263, 270, 734, 270,
1244 270, 272, 734, 272, 272, 273, 734, 273, 273, 276,
1245 276, 276, 276, 276, 276, 276, 276, 276, 276, 276,
1246 276, 276, 196, 196, 734, 196, 196, 576, 576, 734,
1247 576, 576, 576, 576, 576, 576, 576, 576, 576, 576,
vlm066dc102005-08-22 12:23:54 +00001248
vlm808411d2006-03-14 16:31:37 +00001249 574, 574, 574, 734, 734, 734, 574, 734, 734, 734,
1250 734, 574, 17, 734, 734, 734, 734, 734, 734, 734,
1251 734, 734, 734, 734, 734, 734, 734, 734, 734, 734,
1252 734, 734, 734, 734, 734, 734, 734, 734, 734, 734,
1253 734, 734, 734, 734, 734, 734, 734, 734, 734, 734,
1254 734, 734, 734, 734, 734, 734, 734, 734, 734, 734,
1255 734, 734, 734, 734, 734, 734, 734, 734, 734, 734,
1256 734, 734, 734, 734, 734, 734, 734, 734, 734, 734,
1257 734, 734, 734, 734, 734, 734, 734, 734, 734, 734,
1258 734, 734, 734, 734, 734
vlm066dc102005-08-22 12:23:54 +00001259
vlmb5abdc92005-07-02 21:42:40 +00001260 } ;
1261
vlm808411d2006-03-14 16:31:37 +00001262static yyconst short int yy_chk[4496] =
vlmb5abdc92005-07-02 21:42:40 +00001263 { 0,
1264 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1265 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1266 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1267 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1268 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1269 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1270 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1271 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
vlm808411d2006-03-14 16:31:37 +00001272 1, 1, 3, 3, 3, 4, 4, 4, 5, 5,
1273 5, 11, 3, 9, 7, 4, 8, 9, 5, 6,
vlmb5abdc92005-07-02 21:42:40 +00001274
vlm808411d2006-03-14 16:31:37 +00001275 6, 6, 7, 10, 8, 12, 7, 10, 8, 6,
1276 95, 28, 11, 28, 147, 11, 259, 7, 80, 8,
1277 19, 19, 19, 19, 127, 142, 12, 19, 156, 12,
1278 20, 20, 20, 20, 80, 99, 732, 20, 24, 24,
1279 24, 24, 95, 188, 531, 24, 26, 731, 99, 188,
1280 26, 531, 24, 24, 26, 26, 26, 26, 26, 26,
1281 26, 78, 78, 78, 78, 137, 80, 147, 11, 128,
1282 11, 30, 30, 30, 30, 30, 30, 30, 30, 142,
1283 259, 127, 12, 156, 12, 13, 13, 13, 13, 13,
1284 13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
vlmb5abdc92005-07-02 21:42:40 +00001285
vlm808411d2006-03-14 16:31:37 +00001286 79, 79, 79, 79, 90, 90, 90, 90, 13, 13,
1287 13, 13, 13, 34, 128, 191, 34, 13, 279, 36,
1288 34, 137, 36, 34, 34, 34, 34, 34, 223, 36,
1289 159, 36, 34, 36, 40, 261, 34, 35, 36, 13,
1290 13, 13, 191, 35, 40, 279, 40, 35, 40, 35,
1291 35, 35, 244, 40, 160, 222, 35, 178, 178, 178,
1292 178, 268, 268, 234, 13, 13, 13, 14, 14, 14,
1293 14, 14, 14, 14, 14, 14, 14, 14, 14, 14,
1294 14, 14, 238, 159, 177, 177, 37, 223, 261, 407,
1295 14, 14, 14, 14, 14, 177, 37, 37, 37, 14,
vlmb5abdc92005-07-02 21:42:40 +00001296
vlm808411d2006-03-14 16:31:37 +00001297 37, 190, 160, 190, 222, 37, 44, 44, 37, 244,
1298 44, 190, 234, 38, 38, 160, 44, 278, 44, 278,
1299 44, 14, 14, 14, 38, 44, 38, 278, 38, 728,
1300 38, 238, 727, 38, 350, 44, 100, 100, 100, 100,
1301 100, 100, 100, 100, 350, 407, 14, 14, 14, 15,
1302 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1303 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1304 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1305 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1306 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1307
1308 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1309 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1310 15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1311 15, 23, 343, 415, 97, 97, 97, 97, 415, 726,
1312 725, 97, 647, 304, 316, 724, 723, 23, 97, 97,
1313 722, 23, 23, 23, 23, 23, 23, 23, 23, 23,
1314 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
1315 23, 23, 23, 23, 23, 23, 23, 647, 343, 23,
vlmb5abdc92005-07-02 21:42:40 +00001316 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
1317 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
vlmb5abdc92005-07-02 21:42:40 +00001318
vlm808411d2006-03-14 16:31:37 +00001319 23, 23, 33, 304, 316, 33, 33, 33, 33, 33,
1320 33, 33, 33, 721, 325, 342, 335, 720, 33, 33,
vlmb5abdc92005-07-02 21:42:40 +00001321 33, 33, 33, 33, 33, 33, 33, 33, 33, 33,
1322 33, 33, 33, 33, 33, 33, 33, 33, 33, 33,
vlm808411d2006-03-14 16:31:37 +00001323 33, 33, 33, 33, 255, 305, 375, 33, 33, 33,
1324 33, 33, 33, 33, 33, 33, 33, 33, 33, 33,
1325 33, 33, 33, 33, 33, 33, 33, 33, 33, 39,
1326 260, 320, 341, 342, 41, 41, 325, 41, 335, 39,
1327 356, 39, 392, 39, 376, 41, 41, 41, 39, 41,
1328 43, 375, 41, 255, 41, 42, 42, 305, 394, 410,
vlmb5abdc92005-07-02 21:42:40 +00001329
vlm808411d2006-03-14 16:31:37 +00001330 43, 39, 43, 42, 43, 377, 42, 402, 42, 43,
1331 42, 397, 39, 45, 45, 42, 45, 719, 320, 260,
1332 403, 341, 394, 481, 45, 388, 45, 409, 45, 46,
1333 45, 411, 46, 45, 439, 47, 43, 376, 47, 46,
1334 356, 46, 47, 46, 392, 47, 527, 47, 46, 47,
1335 461, 48, 50, 47, 47, 601, 397, 45, 47, 48,
1336 48, 410, 50, 49, 50, 377, 50, 402, 420, 403,
1337 48, 50, 48, 49, 48, 49, 48, 49, 388, 48,
1338 481, 49, 49, 51, 441, 601, 411, 409, 50, 439,
1339 51, 527, 48, 51, 440, 51, 461, 51, 53, 53,
vlmb5abdc92005-07-02 21:42:40 +00001340
vlm808411d2006-03-14 16:31:37 +00001341 53, 53, 51, 49, 103, 103, 103, 103, 103, 103,
1342 103, 103, 53, 53, 53, 53, 53, 53, 53, 53,
1343 76, 420, 453, 456, 717, 76, 76, 76, 76, 76,
1344 76, 76, 76, 76, 76, 452, 471, 441, 106, 107,
1345 466, 440, 456, 76, 76, 76, 76, 76, 106, 107,
1346 106, 107, 106, 107, 108, 715, 107, 106, 107, 452,
1347 412, 412, 412, 412, 108, 467, 108, 109, 108, 453,
1348 110, 499, 472, 108, 76, 76, 76, 109, 557, 109,
1349 110, 109, 110, 470, 110, 111, 109, 473, 474, 110,
1350 109, 519, 714, 466, 500, 111, 471, 111, 528, 111,
vlmb5abdc92005-07-02 21:42:40 +00001351
vlm808411d2006-03-14 16:31:37 +00001352 76, 77, 522, 111, 111, 499, 77, 77, 77, 77,
1353 77, 77, 77, 77, 77, 77, 192, 192, 192, 192,
1354 192, 192, 192, 192, 77, 77, 77, 77, 77, 113,
1355 467, 512, 470, 472, 113, 114, 473, 474, 557, 113,
1356 412, 113, 77, 113, 523, 114, 519, 114, 113, 114,
1357 115, 500, 526, 114, 114, 77, 77, 77, 116, 522,
1358 115, 514, 115, 528, 115, 512, 547, 549, 116, 115,
1359 116, 116, 116, 713, 498, 529, 712, 116, 523, 535,
1360 550, 77, 105, 105, 105, 105, 105, 105, 105, 105,
1361 105, 105, 105, 105, 105, 105, 105, 105, 105, 105,
vlmb5abdc92005-07-02 21:42:40 +00001362
vlm808411d2006-03-14 16:31:37 +00001363 105, 105, 105, 105, 117, 526, 118, 118, 498, 529,
1364 514, 561, 569, 710, 117, 566, 117, 118, 117, 118,
1365 118, 118, 120, 117, 119, 119, 118, 498, 547, 549,
1366 535, 550, 120, 120, 120, 119, 120, 119, 121, 119,
1367 548, 120, 121, 559, 119, 709, 122, 570, 121, 563,
1368 121, 567, 121, 572, 571, 575, 122, 121, 122, 600,
1369 122, 123, 123, 123, 125, 122, 566, 124, 124, 569,
1370 606, 123, 561, 123, 125, 123, 125, 124, 125, 124,
1371 123, 124, 126, 125, 575, 124, 124, 129, 571, 588,
1372 589, 674, 126, 600, 126, 126, 126, 129, 563, 585,
vlmb5abdc92005-07-02 21:42:40 +00001373
vlm808411d2006-03-14 16:31:37 +00001374 130, 126, 570, 130, 606, 559, 548, 129, 131, 129,
1375 130, 129, 130, 567, 130, 572, 129, 585, 131, 130,
1376 131, 598, 131, 132, 132, 627, 590, 131, 574, 574,
1377 574, 574, 622, 132, 133, 132, 646, 132, 597, 589,
1378 132, 132, 132, 729, 133, 134, 133, 133, 133, 588,
1379 674, 135, 708, 133, 595, 134, 707, 134, 706, 134,
1380 607, 135, 136, 135, 134, 135, 621, 134, 598, 729,
1381 135, 603, 136, 605, 136, 138, 136, 608, 139, 623,
1382 622, 136, 627, 138, 630, 138, 590, 138, 139, 138,
1383 139, 140, 139, 646, 138, 629, 139, 139, 597, 141,
vlmb5abdc92005-07-02 21:42:40 +00001384
vlm808411d2006-03-14 16:31:37 +00001385 632, 140, 143, 140, 634, 140, 636, 595, 574, 141,
1386 140, 141, 143, 141, 143, 144, 143, 141, 141, 621,
1387 143, 143, 607, 637, 605, 144, 145, 144, 638, 144,
1388 700, 603, 623, 656, 144, 144, 145, 608, 145, 146,
1389 145, 648, 146, 699, 630, 145, 146, 653, 629, 146,
1390 698, 146, 654, 146, 148, 148, 651, 634, 146, 730,
1391 660, 149, 632, 697, 658, 148, 659, 148, 636, 148,
1392 703, 149, 150, 149, 148, 149, 149, 661, 151, 149,
1393 149, 638, 150, 637, 150, 730, 150, 153, 151, 152,
1394 151, 150, 151, 656, 151, 694, 150, 151, 648, 152,
vlmb5abdc92005-07-02 21:42:40 +00001395
vlm808411d2006-03-14 16:31:37 +00001396 153, 152, 667, 152, 653, 654, 154, 651, 152, 687,
1397 153, 154, 153, 660, 153, 666, 154, 155, 154, 153,
1398 154, 658, 691, 157, 690, 154, 659, 155, 703, 155,
1399 157, 155, 668, 157, 661, 157, 155, 157, 161, 158,
1400 158, 676, 157, 158, 609, 609, 609, 609, 161, 158,
1401 161, 158, 161, 158, 680, 667, 161, 161, 158, 164,
1402 164, 164, 164, 673, 678, 687, 666, 689, 688, 711,
1403 693, 695, 686, 164, 164, 164, 164, 164, 164, 164,
1404 164, 165, 701, 668, 691, 165, 165, 165, 165, 165,
1405 165, 165, 165, 166, 676, 679, 681, 166, 166, 166,
vlmb5abdc92005-07-02 21:42:40 +00001406
vlm808411d2006-03-14 16:31:37 +00001407 166, 166, 166, 166, 166, 195, 197, 198, 684, 197,
1408 683, 680, 682, 675, 673, 678, 197, 198, 197, 198,
1409 197, 198, 199, 200, 609, 197, 198, 693, 695, 711,
1410 696, 701, 199, 200, 199, 200, 199, 200, 704, 672,
1411 671, 199, 200, 664, 663, 662, 657, 681, 679, 705,
1412 195, 195, 195, 195, 195, 195, 195, 195, 195, 195,
1413 195, 195, 195, 195, 195, 195, 195, 195, 195, 195,
1414 195, 195, 201, 655, 652, 644, 640, 639, 635, 633,
1415 203, 696, 201, 204, 201, 201, 201, 203, 631, 704,
1416 203, 201, 203, 204, 203, 204, 205, 204, 628, 203,
vlmb5abdc92005-07-02 21:42:40 +00001417
vlm808411d2006-03-14 16:31:37 +00001418 705, 618, 204, 612, 206, 611, 205, 602, 205, 599,
1419 205, 596, 207, 205, 206, 205, 206, 591, 206, 579,
1420 208, 576, 207, 206, 207, 562, 207, 208, 207, 558,
1421 208, 207, 208, 209, 208, 525, 516, 511, 478, 208,
1422 477, 210, 458, 209, 211, 209, 416, 209, 351, 349,
1423 209, 210, 209, 210, 211, 210, 211, 280, 211, 273,
1424 210, 211, 211, 211, 212, 212, 213, 272, 271, 213,
1425 270, 269, 212, 266, 263, 212, 213, 212, 213, 212,
1426 213, 214, 202, 196, 212, 213, 189, 215, 187, 185,
1427 183, 214, 181, 214, 214, 214, 176, 215, 216, 215,
vlmb5abdc92005-07-02 21:42:40 +00001428
vlm808411d2006-03-14 16:31:37 +00001429 214, 215, 174, 169, 217, 163, 215, 217, 216, 216,
1430 216, 112, 216, 104, 217, 218, 217, 216, 217, 101,
1431 98, 219, 96, 217, 219, 218, 94, 218, 218, 218,
1432 93, 219, 220, 219, 218, 219, 92, 89, 84, 83,
1433 219, 82, 220, 221, 220, 69, 220, 66, 62, 220,
1434 61, 220, 58, 221, 221, 221, 224, 221, 57, 52,
1435 31, 27, 221, 22, 225, 21, 224, 226, 224, 18,
1436 224, 17, 0, 224, 225, 224, 225, 226, 225, 226,
1437 226, 226, 227, 225, 0, 228, 226, 0, 229, 0,
1438 0, 229, 227, 0, 227, 228, 227, 228, 229, 228,
vlmb5abdc92005-07-02 21:42:40 +00001439
vlm808411d2006-03-14 16:31:37 +00001440 229, 227, 229, 228, 228, 230, 231, 229, 0, 0,
1441 0, 0, 0, 0, 230, 0, 231, 232, 231, 0,
1442 231, 0, 0, 0, 230, 231, 230, 232, 230, 232,
1443 233, 232, 0, 230, 0, 0, 232, 0, 235, 0,
1444 233, 235, 233, 0, 233, 0, 0, 0, 235, 233,
1445 235, 236, 235, 0, 236, 0, 0, 235, 0, 237,
1446 0, 236, 239, 236, 0, 236, 237, 0, 0, 237,
1447 236, 237, 239, 237, 239, 240, 239, 0, 237, 0,
1448 239, 239, 0, 241, 0, 240, 0, 240, 0, 240,
1449 0, 242, 0, 241, 240, 241, 0, 241, 0, 243,
vlmb5abdc92005-07-02 21:42:40 +00001450
vlm808411d2006-03-14 16:31:37 +00001451 241, 242, 241, 242, 0, 242, 0, 0, 242, 243,
1452 242, 243, 245, 243, 246, 246, 0, 0, 243, 243,
1453 0, 0, 245, 247, 245, 246, 245, 246, 0, 246,
1454 0, 245, 0, 247, 246, 247, 248, 247, 0, 0,
1455 0, 0, 247, 0, 249, 0, 248, 249, 248, 0,
1456 248, 0, 250, 0, 249, 248, 249, 0, 249, 250,
1457 251, 0, 250, 249, 250, 0, 250, 0, 0, 0,
1458 251, 250, 251, 252, 251, 0, 0, 0, 251, 251,
1459 0, 253, 0, 252, 0, 252, 0, 252, 0, 0,
1460 252, 253, 252, 253, 254, 253, 0, 254, 253, 0,
vlmb5abdc92005-07-02 21:42:40 +00001461
vlm808411d2006-03-14 16:31:37 +00001462 253, 0, 256, 0, 254, 0, 254, 0, 254, 0,
1463 0, 258, 256, 254, 256, 256, 256, 256, 257, 258,
1464 0, 256, 256, 0, 0, 0, 0, 0, 257, 258,
1465 257, 258, 257, 258, 262, 0, 257, 257, 258, 0,
1466 262, 0, 0, 0, 262, 0, 262, 0, 262, 264,
1467 264, 264, 264, 262, 0, 0, 0, 265, 265, 265,
1468 265, 0, 0, 264, 264, 264, 264, 264, 264, 264,
1469 264, 265, 265, 265, 265, 265, 265, 265, 265, 281,
1470 282, 0, 0, 0, 0, 0, 0, 282, 0, 281,
1471 282, 281, 282, 281, 282, 283, 0, 0, 281, 282,
vlmb5abdc92005-07-02 21:42:40 +00001472
vlm808411d2006-03-14 16:31:37 +00001473 0, 284, 0, 0, 0, 283, 283, 283, 0, 283,
1474 0, 284, 285, 284, 283, 284, 0, 0, 286, 0,
1475 284, 286, 285, 0, 285, 0, 285, 0, 286, 0,
1476 286, 285, 286, 287, 287, 288, 288, 286, 0, 0,
1477 0, 0, 0, 0, 287, 288, 287, 288, 287, 288,
1478 289, 0, 0, 287, 288, 0, 0, 285, 290, 0,
1479 289, 0, 289, 0, 289, 0, 291, 289, 290, 289,
1480 290, 290, 290, 0, 0, 0, 291, 290, 291, 293,
1481 291, 292, 292, 0, 291, 291, 0, 0, 0, 293,
1482 294, 293, 292, 293, 292, 0, 292, 0, 293, 0,
vlmb5abdc92005-07-02 21:42:40 +00001483
vlm808411d2006-03-14 16:31:37 +00001484 294, 292, 294, 295, 294, 295, 296, 0, 296, 294,
1485 0, 0, 0, 295, 0, 295, 296, 295, 296, 0,
1486 296, 297, 295, 0, 297, 296, 0, 298, 0, 0,
1487 0, 297, 0, 297, 0, 297, 0, 298, 299, 298,
1488 297, 298, 0, 0, 300, 299, 298, 0, 299, 0,
1489 299, 0, 299, 0, 300, 301, 300, 299, 300, 0,
1490 300, 0, 0, 300, 0, 301, 0, 301, 0, 301,
1491 302, 301, 0, 302, 301, 0, 303, 0, 0, 0,
1492 302, 0, 302, 0, 302, 0, 303, 306, 303, 302,
1493 303, 0, 0, 307, 0, 303, 0, 306, 0, 306,
vlmb5abdc92005-07-02 21:42:40 +00001494
vlm808411d2006-03-14 16:31:37 +00001495 0, 306, 0, 307, 0, 307, 306, 307, 308, 309,
1496 0, 307, 307, 0, 0, 308, 0, 0, 308, 309,
1497 308, 309, 308, 309, 310, 309, 0, 308, 309, 311,
1498 311, 0, 306, 0, 310, 0, 310, 313, 310, 0,
1499 311, 0, 311, 310, 311, 312, 311, 0, 313, 311,
1500 312, 0, 0, 0, 0, 312, 314, 312, 313, 312,
1501 313, 312, 313, 0, 312, 0, 314, 313, 314, 315,
1502 314, 0, 0, 314, 0, 314, 0, 317, 317, 315,
1503 318, 315, 0, 315, 0, 0, 0, 317, 315, 317,
1504 318, 317, 318, 319, 318, 0, 317, 322, 318, 318,
vlmb5abdc92005-07-02 21:42:40 +00001505
vlm808411d2006-03-14 16:31:37 +00001506 0, 321, 0, 319, 321, 319, 319, 319, 0, 0,
1507 0, 321, 319, 321, 322, 321, 0, 0, 0, 0,
1508 321, 0, 323, 0, 322, 323, 322, 0, 322, 324,
1509 324, 0, 323, 322, 323, 0, 323, 0, 326, 0,
1510 324, 323, 324, 0, 324, 0, 327, 0, 326, 324,
1511 326, 0, 326, 0, 0, 0, 327, 326, 327, 328,
1512 327, 0, 328, 0, 327, 327, 0, 329, 0, 328,
1513 330, 328, 0, 328, 0, 0, 0, 329, 328, 329,
1514 330, 329, 330, 0, 330, 332, 329, 331, 331, 330,
1515 0, 333, 0, 0, 0, 332, 0, 332, 331, 332,
vlmb5abdc92005-07-02 21:42:40 +00001516
vlm808411d2006-03-14 16:31:37 +00001517 331, 333, 331, 333, 332, 333, 334, 331, 0, 336,
1518 333, 0, 337, 0, 0, 0, 334, 0, 334, 336,
1519 334, 336, 337, 336, 337, 334, 337, 0, 336, 338,
1520 332, 337, 338, 0, 0, 339, 0, 0, 0, 338,
1521 0, 338, 0, 338, 0, 339, 340, 339, 338, 339,
1522 0, 0, 0, 0, 339, 0, 340, 0, 340, 0,
1523 340, 0, 344, 340, 0, 340, 0, 0, 0, 0,
1524 0, 339, 344, 0, 344, 0, 344, 345, 345, 345,
1525 345, 344, 0, 0, 0, 0, 0, 0, 0, 0,
1526 0, 345, 345, 345, 345, 345, 345, 345, 345, 346,
vlmb5abdc92005-07-02 21:42:40 +00001527
vlm808411d2006-03-14 16:31:37 +00001528 346, 346, 346, 0, 0, 0, 0, 0, 0, 346,
1529 0, 0, 0, 346, 346, 346, 346, 346, 346, 346,
1530 346, 347, 347, 347, 347, 0, 0, 0, 0, 0,
1531 0, 0, 0, 0, 0, 347, 347, 347, 347, 347,
1532 347, 347, 347, 348, 0, 352, 355, 348, 348, 348,
1533 348, 348, 348, 348, 348, 352, 355, 352, 355, 352,
1534 355, 353, 353, 352, 352, 355, 0, 0, 0, 0,
1535 0, 353, 0, 353, 0, 353, 354, 354, 0, 346,
1536 353, 0, 357, 357, 0, 0, 0, 354, 0, 354,
1537 0, 354, 0, 357, 0, 357, 354, 357, 358, 358,
vlmb5abdc92005-07-02 21:42:40 +00001538
vlm808411d2006-03-14 16:31:37 +00001539 0, 359, 357, 0, 359, 0, 0, 0, 358, 360,
1540 358, 359, 358, 359, 0, 359, 0, 358, 0, 360,
1541 359, 360, 361, 360, 0, 0, 0, 0, 360, 0,
1542 362, 0, 361, 0, 361, 0, 361, 0, 363, 0,
1543 362, 361, 362, 0, 362, 363, 362, 0, 363, 362,
1544 363, 364, 363, 0, 0, 0, 0, 363, 0, 365,
1545 0, 364, 365, 364, 0, 364, 365, 0, 0, 365,
1546 364, 365, 366, 365, 366, 0, 0, 0, 365, 0,
1547 367, 0, 366, 367, 366, 0, 366, 367, 368, 0,
1548 367, 366, 367, 0, 367, 0, 369, 0, 368, 367,
vlmb5abdc92005-07-02 21:42:40 +00001549
vlm808411d2006-03-14 16:31:37 +00001550 368, 0, 368, 0, 368, 0, 369, 368, 369, 0,
1551 369, 370, 370, 0, 369, 369, 0, 371, 0, 0,
1552 0, 370, 0, 370, 0, 370, 0, 371, 372, 371,
1553 370, 371, 0, 0, 373, 371, 371, 0, 372, 0,
1554 372, 0, 372, 0, 373, 372, 373, 372, 373, 374,
1555 378, 0, 0, 373, 0, 0, 0, 378, 0, 374,
1556 378, 374, 378, 374, 378, 0, 0, 380, 374, 378,
1557 379, 379, 0, 379, 0, 0, 0, 380, 0, 380,
1558 379, 380, 379, 0, 379, 380, 380, 382, 381, 379,
1559 381, 0, 0, 0, 0, 0, 0, 382, 381, 382,
vlmb5abdc92005-07-02 21:42:40 +00001560
vlm808411d2006-03-14 16:31:37 +00001561 381, 382, 381, 383, 0, 0, 382, 381, 0, 384,
1562 0, 0, 384, 383, 0, 383, 0, 383, 0, 384,
1563 385, 384, 383, 384, 386, 0, 0, 387, 384, 0,
1564 385, 0, 385, 386, 385, 0, 0, 385, 0, 385,
1565 0, 389, 0, 386, 387, 386, 0, 386, 0, 0,
1566 0, 389, 386, 389, 387, 389, 387, 390, 387, 389,
1567 389, 0, 0, 387, 0, 391, 0, 390, 0, 390,
1568 0, 390, 0, 393, 0, 391, 390, 391, 0, 391,
1569 0, 395, 0, 393, 391, 393, 0, 393, 0, 393,
1570 0, 395, 393, 395, 396, 395, 0, 0, 0, 0,
vlmb5abdc92005-07-02 21:42:40 +00001571
vlm808411d2006-03-14 16:31:37 +00001572 395, 0, 0, 0, 396, 0, 396, 398, 396, 0,
1573 399, 0, 396, 396, 398, 0, 0, 398, 400, 398,
1574 399, 398, 399, 400, 399, 0, 398, 0, 400, 399,
1575 400, 401, 400, 0, 0, 0, 0, 400, 0, 0,
1576 0, 401, 404, 401, 0, 401, 0, 0, 405, 0,
1577 401, 405, 404, 401, 404, 0, 404, 0, 405, 406,
1578 405, 404, 405, 0, 0, 0, 0, 405, 0, 406,
1579 408, 406, 0, 406, 0, 406, 0, 0, 406, 0,
1580 408, 0, 408, 0, 408, 413, 413, 413, 413, 408,
1581 0, 0, 0, 0, 0, 0, 0, 417, 0, 413,
vlmb5abdc92005-07-02 21:42:40 +00001582
vlm808411d2006-03-14 16:31:37 +00001583 413, 413, 413, 413, 413, 413, 413, 417, 0, 417,
1584 419, 417, 418, 418, 0, 408, 417, 0, 0, 0,
1585 419, 421, 419, 418, 419, 418, 0, 418, 419, 419,
1586 0, 421, 418, 421, 422, 421, 0, 423, 0, 0,
1587 421, 0, 0, 0, 422, 0, 422, 423, 422, 423,
1588 0, 423, 422, 422, 424, 0, 423, 424, 0, 425,
1589 425, 0, 0, 0, 424, 0, 424, 0, 424, 0,
1590 425, 426, 425, 424, 425, 0, 0, 427, 0, 425,
1591 0, 426, 0, 426, 0, 426, 0, 427, 0, 427,
1592 426, 427, 428, 0, 428, 427, 427, 0, 429, 0,
vlmb5abdc92005-07-02 21:42:40 +00001593
vlm808411d2006-03-14 16:31:37 +00001594 0, 0, 428, 0, 428, 0, 428, 0, 429, 0,
1595 429, 428, 429, 0, 0, 430, 429, 429, 430, 0,
1596 0, 431, 0, 431, 0, 430, 0, 430, 0, 430,
1597 0, 431, 432, 431, 430, 431, 0, 433, 433, 0,
1598 431, 0, 432, 0, 432, 0, 432, 0, 433, 434,
1599 433, 432, 433, 0, 0, 435, 0, 433, 0, 434,
1600 0, 434, 435, 434, 0, 435, 436, 435, 434, 435,
1601 0, 0, 437, 0, 435, 0, 436, 0, 436, 437,
1602 436, 0, 437, 436, 437, 436, 437, 438, 438, 442,
1603 0, 437, 0, 442, 0, 0, 0, 0, 438, 442,
vlmb5abdc92005-07-02 21:42:40 +00001604
vlm808411d2006-03-14 16:31:37 +00001605 438, 442, 438, 442, 443, 0, 0, 438, 442, 0,
1606 444, 443, 444, 0, 443, 0, 443, 0, 443, 0,
1607 444, 445, 444, 443, 444, 0, 0, 446, 0, 444,
1608 446, 445, 0, 445, 0, 445, 0, 446, 445, 446,
1609 445, 446, 447, 447, 0, 0, 446, 0, 448, 448,
1610 0, 0, 447, 0, 447, 0, 447, 0, 448, 449,
1611 448, 447, 448, 0, 0, 0, 0, 448, 0, 449,
1612 0, 449, 0, 449, 450, 449, 0, 450, 449, 0,
1613 451, 0, 0, 0, 450, 0, 450, 0, 450, 0,
1614 451, 454, 451, 450, 451, 0, 0, 451, 0, 451,
vlmb5abdc92005-07-02 21:42:40 +00001615
vlm808411d2006-03-14 16:31:37 +00001616 0, 454, 0, 454, 457, 454, 455, 455, 0, 0,
1617 454, 0, 0, 0, 457, 459, 457, 455, 457, 455,
1618 0, 455, 0, 457, 0, 459, 455, 459, 460, 459,
1619 0, 460, 0, 459, 459, 0, 462, 0, 460, 0,
1620 460, 0, 460, 0, 0, 0, 462, 460, 462, 0,
1621 462, 463, 463, 0, 464, 462, 462, 465, 0, 0,
1622 0, 463, 0, 463, 464, 463, 464, 465, 464, 465,
1623 463, 465, 468, 464, 0, 469, 465, 0, 0, 0,
1624 0, 0, 468, 0, 468, 469, 468, 469, 0, 469,
1625 0, 468, 469, 0, 469, 475, 475, 475, 475, 0,
vlmb5abdc92005-07-02 21:42:40 +00001626
vlm808411d2006-03-14 16:31:37 +00001627 0, 0, 0, 0, 0, 0, 0, 0, 0, 475,
1628 475, 475, 475, 475, 475, 475, 475, 476, 0, 479,
1629 0, 476, 476, 476, 476, 476, 476, 476, 476, 479,
1630 0, 479, 480, 479, 0, 482, 0, 479, 479, 480,
1631 0, 0, 480, 0, 480, 482, 480, 482, 0, 482,
1632 483, 480, 0, 483, 482, 0, 484, 0, 0, 0,
vlmb8958092006-03-06 11:28:17 +00001633 483, 0, 483, 0, 483, 0, 484, 485, 484, 483,
vlm808411d2006-03-14 16:31:37 +00001634 484, 0, 0, 486, 485, 484, 0, 485, 0, 485,
1635 486, 485, 0, 486, 487, 486, 485, 486, 0, 0,
1636 488, 0, 486, 0, 487, 0, 487, 0, 487, 0,
vlmb5abdc92005-07-02 21:42:40 +00001637
vlm808411d2006-03-14 16:31:37 +00001638 488, 489, 488, 487, 488, 0, 0, 0, 489, 488,
1639 0, 489, 490, 489, 490, 489, 0, 0, 491, 0,
1640 489, 0, 490, 0, 490, 0, 490, 0, 491, 492,
1641 491, 490, 491, 0, 492, 493, 0, 491, 0, 492,
1642 0, 492, 0, 492, 0, 493, 494, 493, 492, 493,
1643 0, 0, 0, 493, 493, 0, 494, 495, 494, 0,
1644 494, 0, 0, 496, 494, 494, 0, 495, 0, 495,
1645 0, 495, 0, 496, 497, 496, 495, 496, 0, 0,
1646 501, 0, 496, 0, 497, 0, 497, 501, 497, 0,
1647 501, 502, 501, 497, 501, 0, 0, 0, 0, 501,
vlmb5abdc92005-07-02 21:42:40 +00001648
vlm808411d2006-03-14 16:31:37 +00001649 0, 502, 503, 502, 0, 502, 0, 0, 504, 502,
1650 502, 0, 503, 0, 503, 0, 503, 0, 504, 505,
1651 504, 503, 504, 0, 0, 506, 0, 504, 506, 505,
1652 0, 505, 0, 505, 0, 506, 505, 506, 505, 506,
1653 507, 508, 0, 0, 506, 0, 0, 0, 0, 0,
1654 507, 508, 507, 508, 507, 508, 509, 509, 507, 507,
1655 508, 0, 510, 0, 0, 0, 509, 0, 509, 0,
1656 509, 0, 510, 513, 510, 509, 510, 0, 0, 515,
1657 0, 510, 0, 513, 0, 513, 0, 513, 0, 515,
1658 517, 515, 513, 515, 0, 0, 518, 0, 515, 0,
vlmb5abdc92005-07-02 21:42:40 +00001659
vlm808411d2006-03-14 16:31:37 +00001660 517, 0, 517, 0, 517, 0, 518, 510, 518, 517,
1661 518, 520, 0, 0, 520, 518, 0, 521, 0, 0,
1662 521, 520, 0, 520, 0, 520, 0, 521, 0, 521,
1663 520, 521, 524, 524, 0, 0, 521, 0, 0, 530,
1664 530, 530, 530, 524, 0, 524, 0, 524, 0, 0,
1665 0, 0, 524, 530, 530, 530, 530, 530, 530, 530,
1666 530, 533, 534, 534, 0, 0, 0, 0, 533, 0,
1667 0, 533, 534, 533, 534, 533, 534, 536, 0, 0,
1668 533, 534, 0, 0, 0, 537, 0, 536, 538, 536,
1669 0, 536, 0, 536, 0, 537, 536, 537, 538, 537,
vlmb5abdc92005-07-02 21:42:40 +00001670
vlm808411d2006-03-14 16:31:37 +00001671 538, 539, 538, 537, 537, 0, 0, 538, 542, 540,
1672 0, 539, 0, 539, 0, 539, 0, 541, 0, 540,
1673 539, 540, 540, 540, 0, 542, 0, 541, 540, 541,
1674 0, 541, 0, 0, 0, 542, 541, 542, 543, 542,
1675 0, 543, 0, 0, 542, 0, 544, 0, 543, 0,
1676 543, 0, 543, 0, 545, 0, 544, 543, 544, 0,
1677 544, 545, 546, 0, 545, 544, 545, 0, 545, 0,
1678 0, 0, 546, 545, 546, 551, 546, 0, 551, 0,
1679 0, 546, 0, 552, 0, 551, 553, 551, 0, 551,
1680 0, 0, 0, 552, 551, 552, 553, 552, 553, 554,
vlmb5abdc92005-07-02 21:42:40 +00001681
vlm808411d2006-03-14 16:31:37 +00001682 553, 0, 552, 0, 0, 553, 0, 555, 0, 554,
1683 556, 554, 0, 554, 555, 0, 0, 555, 554, 555,
1684 556, 555, 556, 560, 556, 0, 555, 564, 556, 556,
1685 0, 565, 0, 560, 0, 560, 0, 560, 0, 0,
1686 0, 565, 560, 565, 564, 565, 0, 568, 0, 0,
1687 565, 0, 0, 0, 564, 0, 564, 568, 564, 568,
1688 0, 568, 0, 564, 0, 0, 568, 573, 573, 573,
1689 573, 0, 0, 0, 0, 0, 0, 0, 0, 577,
1690 0, 573, 573, 573, 573, 573, 573, 573, 573, 577,
1691 578, 577, 577, 577, 0, 0, 580, 0, 577, 0,
vlmb5abdc92005-07-02 21:42:40 +00001692
vlm808411d2006-03-14 16:31:37 +00001693 578, 0, 578, 0, 578, 0, 580, 581, 580, 578,
1694 580, 0, 0, 582, 0, 580, 582, 581, 0, 581,
1695 0, 581, 0, 582, 581, 582, 581, 582, 583, 584,
1696 0, 0, 582, 583, 0, 0, 0, 0, 583, 584,
1697 583, 584, 583, 584, 586, 587, 586, 583, 584, 0,
1698 0, 0, 0, 0, 586, 587, 586, 587, 586, 587,
1699 592, 0, 0, 586, 587, 0, 0, 0, 593, 0,
1700 592, 0, 592, 0, 592, 0, 592, 0, 593, 592,
1701 593, 593, 593, 594, 604, 0, 0, 593, 0, 0,
1702 594, 0, 0, 594, 604, 594, 604, 594, 604, 613,
vlmb5abdc92005-07-02 21:42:40 +00001703
vlm808411d2006-03-14 16:31:37 +00001704 614, 0, 594, 604, 0, 0, 0, 0, 0, 613,
1705 614, 613, 614, 613, 614, 615, 616, 615, 613, 614,
1706 0, 0, 0, 0, 0, 615, 616, 615, 616, 615,
1707 616, 617, 619, 0, 615, 616, 0, 0, 0, 0,
1708 0, 617, 619, 617, 619, 617, 619, 620, 617, 0,
1709 617, 619, 0, 624, 620, 0, 0, 620, 0, 620,
1710 0, 620, 0, 624, 625, 624, 620, 624, 0, 0,
1711 0, 0, 624, 0, 625, 626, 625, 0, 625, 0,
1712 0, 641, 0, 625, 0, 626, 0, 626, 626, 626,
1713 0, 641, 642, 641, 626, 641, 0, 0, 643, 0,
vlmb5abdc92005-07-02 21:42:40 +00001714
vlm808411d2006-03-14 16:31:37 +00001715 641, 0, 642, 0, 642, 0, 642, 0, 643, 645,
1716 643, 642, 643, 0, 0, 0, 0, 643, 0, 645,
1717 649, 645, 0, 645, 0, 0, 650, 645, 645, 0,
1718 649, 0, 649, 0, 649, 0, 650, 649, 650, 649,
1719 650, 665, 669, 0, 0, 650, 0, 0, 0, 0,
1720 0, 665, 669, 665, 669, 665, 669, 670, 685, 0,
1721 665, 669, 0, 0, 665, 0, 0, 670, 685, 670,
1722 685, 670, 685, 0, 0, 0, 670, 685, 735, 735,
1723 735, 735, 735, 735, 735, 735, 735, 735, 735, 735,
1724 735, 736, 736, 736, 736, 736, 736, 736, 736, 736,
vlmb5abdc92005-07-02 21:42:40 +00001725
vlmb8958092006-03-06 11:28:17 +00001726 736, 736, 736, 736, 737, 737, 737, 737, 737, 737,
vlm808411d2006-03-14 16:31:37 +00001727 737, 737, 737, 737, 737, 737, 737, 738, 738, 738,
1728 738, 738, 738, 738, 738, 738, 738, 738, 738, 738,
1729 739, 739, 739, 739, 739, 739, 739, 739, 739, 739,
1730 739, 739, 739, 740, 740, 740, 740, 0, 740, 740,
1731 740, 740, 740, 740, 740, 740, 741, 741, 741, 0,
1732 741, 0, 741, 0, 741, 742, 742, 0, 742, 742,
1733 743, 743, 0, 0, 743, 743, 0, 743, 743, 743,
1734 743, 743, 743, 744, 744, 744, 744, 0, 744, 744,
1735 744, 744, 744, 744, 744, 744, 745, 745, 745, 745,
vlm066dc102005-08-22 12:23:54 +00001736
vlm808411d2006-03-14 16:31:37 +00001737 745, 745, 745, 745, 0, 745, 745, 746, 0, 0,
1738 0, 746, 746, 746, 746, 746, 746, 746, 747, 0,
1739 0, 0, 747, 747, 747, 747, 747, 747, 747, 748,
1740 748, 0, 748, 748, 749, 749, 0, 749, 749, 750,
1741 750, 0, 750, 750, 751, 0, 751, 751, 752, 752,
1742 0, 752, 752, 753, 0, 753, 753, 754, 0, 754,
1743 754, 755, 0, 755, 755, 756, 0, 756, 756, 757,
1744 757, 757, 757, 757, 757, 757, 757, 757, 757, 757,
1745 757, 757, 758, 758, 0, 758, 758, 759, 759, 0,
1746 759, 759, 759, 759, 759, 759, 759, 759, 759, 759,
vlm066dc102005-08-22 12:23:54 +00001747
vlm808411d2006-03-14 16:31:37 +00001748 760, 760, 760, 0, 0, 0, 760, 0, 0, 0,
1749 0, 760, 734, 734, 734, 734, 734, 734, 734, 734,
1750 734, 734, 734, 734, 734, 734, 734, 734, 734, 734,
1751 734, 734, 734, 734, 734, 734, 734, 734, 734, 734,
1752 734, 734, 734, 734, 734, 734, 734, 734, 734, 734,
1753 734, 734, 734, 734, 734, 734, 734, 734, 734, 734,
1754 734, 734, 734, 734, 734, 734, 734, 734, 734, 734,
1755 734, 734, 734, 734, 734, 734, 734, 734, 734, 734,
1756 734, 734, 734, 734, 734, 734, 734, 734, 734, 734,
1757 734, 734, 734, 734, 734
1758
vlmfa67ddc2004-06-03 03:38:44 +00001759 } ;
1760
1761extern int yy_flex_debug;
1762int yy_flex_debug = 1;
1763
vlm808411d2006-03-14 16:31:37 +00001764static yyconst short int yy_rule_linenum[137] =
vlmfa67ddc2004-06-03 03:38:44 +00001765 { 0,
vlma6a84d72006-03-16 10:03:35 +00001766 95, 96, 98, 101, 103, 106, 108, 109, 110, 113,
1767 115, 116, 117, 129, 136, 143, 149, 158, 166, 174,
1768 175, 177, 196, 202, 203, 204, 205, 206, 209, 215,
1769 222, 229, 236, 243, 244, 245, 253, 254, 255, 256,
1770 257, 262, 263, 264, 265, 266, 267, 268, 269, 270,
1771 271, 272, 281, 282, 283, 284, 285, 286, 287, 288,
1772 289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
1773 299, 300, 301, 302, 303, 304, 305, 306, 307, 308,
1774 309, 310, 311, 312, 313, 314, 315, 316, 317, 318,
1775 319, 320, 321, 322, 323, 324, 325, 326, 327, 328,
vlmfa67ddc2004-06-03 03:38:44 +00001776
vlma6a84d72006-03-16 10:03:35 +00001777 329, 330, 331, 332, 333, 334, 335, 336, 337, 338,
1778 343, 344, 349, 350, 351, 354, 359, 365, 373, 383,
1779 388, 390, 391, 395, 400, 405, 411, 412, 414, 420,
1780 433, 436, 461, 505, 507, 518
vlmfa67ddc2004-06-03 03:38:44 +00001781 } ;
1782
1783static yy_state_type yy_state_buf[YY_BUF_SIZE + 2], *yy_state_ptr;
1784static char *yy_full_match;
1785static int yy_lp;
1786#define REJECT \
1787{ \
1788*yy_cp = yy_hold_char; /* undo effects of setting up yytext */ \
1789yy_cp = yy_full_match; /* restore poss. backed-over text */ \
1790++yy_lp; \
1791goto find_rule; \
1792}
1793#define yymore() yymore_used_but_not_detected
1794#define YY_MORE_ADJ 0
1795#define YY_RESTORE_YY_MORE_OFFSET
1796char *yytext;
1797#line 1 "asn1p_l.l"
1798#define INITIAL 0
1799#line 2 "asn1p_l.l"
1800
1801#include <string.h>
1802#include <errno.h>
1803#include <assert.h>
1804
1805#include "asn1parser.h"
1806#include "asn1p_y.h"
1807
1808int asn1p_lex(void);
1809void asn1p_lexer_hack_push_opaque_state(void); /* Used in .y */
1810void asn1p_lexer_hack_enable_with_syntax(void); /* Used in .y */
vlm9283dbe2004-08-18 04:59:12 +00001811void asn1p_lexer_hack_push_encoding_control(void); /* Used in .y */
vlmfa67ddc2004-06-03 03:38:44 +00001812
1813#define YY_FATAL_ERROR(msg) do { \
1814 fprintf(stderr, \
1815 "lexer error at line %d, " \
1816 "text \"%s\"\n", \
1817 yylineno, yytext); \
1818 exit(1); \
1819 } while(0)
1820
1821int asn1p_lexer_pedantic_1990 = 0;
1822int asn1p_lexer_types_year = 0;
1823int asn1p_lexer_constructs_year = 0;
vlmfa67ddc2004-06-03 03:38:44 +00001824
vlm066dc102005-08-22 12:23:54 +00001825int asn1p_as_pointer;
1826
vlma6a84d72006-03-16 10:03:35 +00001827static asn1c_integer_t _lex_atoi(const char *ptr);
1828
vlmfa67ddc2004-06-03 03:38:44 +00001829/*
1830 * Check that the type is defined in the year of the standard choosen.
1831 */
1832#define TYPE_LIFETIME(fyr, lyr) \
1833 (!asn1p_lexer_types_year \
1834 || (fyr && fyr <= asn1p_lexer_types_year) \
1835 || (lyr && lyr > asn1p_lexer_types_year))
1836
1837/*
1838 * Check the the construction (or concept, i.e. CLASS) is defined in
1839 * a given year.
1840 */
1841#define CONSTRUCT_LIFETIME(fyr, lyr) \
1842 (!asn1p_lexer_constructs_year \
1843 || (fyr && fyr <= asn1p_lexer_constructs_year) \
1844 || (lyr && lyr > asn1p_lexer_constructs_year))
1845
1846/*
vlmfa67ddc2004-06-03 03:38:44 +00001847 * Append quoted string.
1848 */
1849#define QAPPEND(text, tlen) do { \
1850 char *prev_text = asn1p_lval.tv_opaque.buf; \
1851 int prev_len = asn1p_lval.tv_opaque.len; \
1852 char *p; \
1853 \
1854 p = malloc((tlen) + prev_len + 1); \
1855 if(p == NULL) return -1; \
1856 \
1857 if(prev_text) memcpy(p, prev_text, prev_len); \
1858 memcpy(p + prev_len, text, tlen); \
1859 p[prev_len + (tlen)] = '\0'; \
1860 \
1861 free(asn1p_lval.tv_opaque.buf); \
1862 asn1p_lval.tv_opaque.buf = p; \
1863 asn1p_lval.tv_opaque.len = (tlen) + prev_len; \
1864 } while(0)
1865
1866#define YY_NEVER_INTERACTIVE 1
1867#define YY_NO_INPUT 1
vlmfa67ddc2004-06-03 03:38:44 +00001868#define YY_STACK_USED 1
1869/* Performance penalty is OK */
1870/* Controlled from within application */
1871#define dash_comment 1
1872
vlmb5abdc92005-07-02 21:42:40 +00001873#define idash_comment 2
vlmfa67ddc2004-06-03 03:38:44 +00001874
vlmb5abdc92005-07-02 21:42:40 +00001875#define cpp_comment 3
vlmfa67ddc2004-06-03 03:38:44 +00001876
vlmb5abdc92005-07-02 21:42:40 +00001877#define quoted 4
vlmfa67ddc2004-06-03 03:38:44 +00001878
vlmb5abdc92005-07-02 21:42:40 +00001879#define opaque 5
vlm9283dbe2004-08-18 04:59:12 +00001880
vlmb5abdc92005-07-02 21:42:40 +00001881#define encoding_control 6
1882
1883#define with_syntax 7
vlmfa67ddc2004-06-03 03:38:44 +00001884
1885/* Newline */
1886/* White-space */
vlma6a84d72006-03-16 10:03:35 +00001887#line 1888 "asn1p_l.c"
vlmfa67ddc2004-06-03 03:38:44 +00001888
1889/* Macros after this point can all be overridden by user definitions in
1890 * section 1.
1891 */
1892
1893#ifndef YY_SKIP_YYWRAP
1894#ifdef __cplusplus
1895extern "C" int yywrap YY_PROTO(( void ));
1896#else
1897extern int yywrap YY_PROTO(( void ));
1898#endif
1899#endif
1900
1901#ifndef YY_NO_UNPUT
1902static void yyunput YY_PROTO(( int c, char *buf_ptr ));
1903#endif
1904
1905#ifndef yytext_ptr
1906static void yy_flex_strncpy YY_PROTO(( char *, yyconst char *, int ));
1907#endif
1908
1909#ifdef YY_NEED_STRLEN
1910static int yy_flex_strlen YY_PROTO(( yyconst char * ));
1911#endif
1912
1913#ifndef YY_NO_INPUT
1914#ifdef __cplusplus
1915static int yyinput YY_PROTO(( void ));
1916#else
1917static int input YY_PROTO(( void ));
1918#endif
1919#endif
1920
1921#if YY_STACK_USED
1922static int yy_start_stack_ptr = 0;
1923static int yy_start_stack_depth = 0;
1924static int *yy_start_stack = 0;
1925#ifndef YY_NO_PUSH_STATE
1926static void yy_push_state YY_PROTO(( int new_state ));
1927#endif
1928#ifndef YY_NO_POP_STATE
1929static void yy_pop_state YY_PROTO(( void ));
1930#endif
1931#ifndef YY_NO_TOP_STATE
1932static int yy_top_state YY_PROTO(( void ));
1933#endif
1934
1935#else
1936#define YY_NO_PUSH_STATE 1
1937#define YY_NO_POP_STATE 1
1938#define YY_NO_TOP_STATE 1
1939#endif
1940
1941#ifdef YY_MALLOC_DECL
1942YY_MALLOC_DECL
1943#else
1944#if __STDC__
1945#ifndef __cplusplus
1946#include <stdlib.h>
1947#endif
1948#else
1949/* Just try to get by without declaring the routines. This will fail
1950 * miserably on non-ANSI systems for which sizeof(size_t) != sizeof(int)
1951 * or sizeof(void*) != sizeof(int).
1952 */
1953#endif
1954#endif
1955
1956/* Amount of stuff to slurp up with each read. */
1957#ifndef YY_READ_BUF_SIZE
1958#define YY_READ_BUF_SIZE 8192
1959#endif
1960
1961/* Copy whatever the last rule matched to the standard output. */
1962
1963#ifndef ECHO
1964/* This used to be an fputs(), but since the string might contain NUL's,
1965 * we now use fwrite().
1966 */
1967#define ECHO (void) fwrite( yytext, yyleng, 1, yyout )
1968#endif
1969
1970/* Gets input and stuffs it into "buf". number of characters read, or YY_NULL,
1971 * is returned in "result".
1972 */
1973#ifndef YY_INPUT
1974#define YY_INPUT(buf,result,max_size) \
1975 if ( yy_current_buffer->yy_is_interactive ) \
1976 { \
1977 int c = '*', n; \
1978 for ( n = 0; n < max_size && \
1979 (c = getc( yyin )) != EOF && c != '\n'; ++n ) \
1980 buf[n] = (char) c; \
1981 if ( c == '\n' ) \
1982 buf[n++] = (char) c; \
1983 if ( c == EOF && ferror( yyin ) ) \
1984 YY_FATAL_ERROR( "input in flex scanner failed" ); \
1985 result = n; \
1986 } \
1987 else if ( ((result = fread( buf, 1, max_size, yyin )) == 0) \
1988 && ferror( yyin ) ) \
1989 YY_FATAL_ERROR( "input in flex scanner failed" );
1990#endif
1991
1992/* No semi-colon after return; correct usage is to write "yyterminate();" -
1993 * we don't want an extra ';' after the "return" because that will cause
1994 * some compilers to complain about unreachable statements.
1995 */
1996#ifndef yyterminate
1997#define yyterminate() return YY_NULL
1998#endif
1999
2000/* Number of entries by which start-condition stack grows. */
2001#ifndef YY_START_STACK_INCR
2002#define YY_START_STACK_INCR 25
2003#endif
2004
2005/* Report a fatal error. */
2006#ifndef YY_FATAL_ERROR
2007#define YY_FATAL_ERROR(msg) yy_fatal_error( msg )
2008#endif
2009
2010/* Default declaration of generated scanner - a define so the user can
2011 * easily add parameters.
2012 */
2013#ifndef YY_DECL
2014#define YY_DECL int yylex YY_PROTO(( void ))
2015#endif
2016
2017/* Code executed at the beginning of each rule, after yytext and yyleng
2018 * have been set up.
2019 */
2020#ifndef YY_USER_ACTION
2021#define YY_USER_ACTION
2022#endif
2023
2024/* Code executed at the end of each rule. */
2025#ifndef YY_BREAK
2026#define YY_BREAK break;
2027#endif
2028
2029#define YY_RULE_SETUP \
2030 YY_USER_ACTION
2031
2032YY_DECL
2033 {
2034 register yy_state_type yy_current_state;
2035 register char *yy_cp, *yy_bp;
2036 register int yy_act;
2037
vlma6a84d72006-03-16 10:03:35 +00002038#line 93 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002039
2040
vlma6a84d72006-03-16 10:03:35 +00002041#line 2042 "asn1p_l.c"
vlmfa67ddc2004-06-03 03:38:44 +00002042
2043 if ( yy_init )
2044 {
2045 yy_init = 0;
2046
2047#ifdef YY_USER_INIT
2048 YY_USER_INIT;
2049#endif
2050
2051 if ( ! yy_start )
2052 yy_start = 1; /* first start state */
2053
2054 if ( ! yyin )
2055 yyin = stdin;
2056
2057 if ( ! yyout )
2058 yyout = stdout;
2059
2060 if ( ! yy_current_buffer )
2061 yy_current_buffer =
2062 yy_create_buffer( yyin, YY_BUF_SIZE );
2063
2064 yy_load_buffer_state();
2065 }
2066
2067 while ( 1 ) /* loops until end-of-file is reached */
2068 {
2069 yy_cp = yy_c_buf_p;
2070
2071 /* Support of yytext. */
2072 *yy_cp = yy_hold_char;
2073
2074 /* yy_bp points to the position in yy_ch_buf of the start of
2075 * the current run.
2076 */
2077 yy_bp = yy_cp;
2078
2079 yy_current_state = yy_start;
2080 yy_state_ptr = yy_state_buf;
2081 *yy_state_ptr++ = yy_current_state;
2082yy_match:
2083 do
2084 {
2085 register YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)];
2086 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
2087 {
2088 yy_current_state = (int) yy_def[yy_current_state];
vlm808411d2006-03-14 16:31:37 +00002089 if ( yy_current_state >= 735 )
vlmfa67ddc2004-06-03 03:38:44 +00002090 yy_c = yy_meta[(unsigned int) yy_c];
2091 }
2092 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
2093 *yy_state_ptr++ = yy_current_state;
2094 ++yy_cp;
2095 }
vlm808411d2006-03-14 16:31:37 +00002096 while ( yy_base[yy_current_state] != 4413 );
vlmfa67ddc2004-06-03 03:38:44 +00002097
2098yy_find_action:
2099 yy_current_state = *--yy_state_ptr;
2100 yy_lp = yy_accept[yy_current_state];
2101find_rule: /* we branch to this label when backing up */
2102 for ( ; ; ) /* until we find what rule we matched */
2103 {
2104 if ( yy_lp && yy_lp < yy_accept[yy_current_state + 1] )
2105 {
2106 yy_act = yy_acclist[yy_lp];
2107 {
2108 yy_full_match = yy_cp;
2109 break;
2110 }
2111 }
2112 --yy_cp;
2113 yy_current_state = *--yy_state_ptr;
2114 yy_lp = yy_accept[yy_current_state];
2115 }
2116
2117 YY_DO_BEFORE_ACTION;
2118
2119 if ( yy_act != YY_END_OF_BUFFER )
2120 {
2121 int yyl;
2122 for ( yyl = 0; yyl < yyleng; ++yyl )
2123 if ( yytext[yyl] == '\n' )
2124 ++yylineno;
2125 }
2126
2127do_action: /* This label is used only to access EOF actions. */
2128
2129 if ( yy_flex_debug )
2130 {
2131 if ( yy_act == 0 )
2132 fprintf( stderr, "--scanner backing up\n" );
vlm808411d2006-03-14 16:31:37 +00002133 else if ( yy_act < 137 )
vlmfa67ddc2004-06-03 03:38:44 +00002134 fprintf( stderr, "--accepting rule at line %d (\"%s\")\n",
2135 yy_rule_linenum[yy_act], yytext );
vlm808411d2006-03-14 16:31:37 +00002136 else if ( yy_act == 137 )
vlmfa67ddc2004-06-03 03:38:44 +00002137 fprintf( stderr, "--accepting default rule (\"%s\")\n",
2138 yytext );
vlm808411d2006-03-14 16:31:37 +00002139 else if ( yy_act == 138 )
vlmfa67ddc2004-06-03 03:38:44 +00002140 fprintf( stderr, "--(end of buffer or a NUL)\n" );
2141 else
2142 fprintf( stderr, "--EOF (start condition %d)\n", YY_START );
2143 }
2144
2145 switch ( yy_act )
2146 { /* beginning of action switch */
2147case 1:
vlmb5abdc92005-07-02 21:42:40 +00002148*yy_cp = yy_hold_char; /* undo effects of setting up yytext */
2149yy_c_buf_p = yy_cp -= 1;
2150YY_DO_BEFORE_ACTION; /* set up yytext again */
vlmfa67ddc2004-06-03 03:38:44 +00002151YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002152#line 95 "asn1p_l.l"
vlmb5abdc92005-07-02 21:42:40 +00002153/* Immediately terminated long comment */
2154 YY_BREAK
2155case 2:
2156*yy_cp = yy_hold_char; /* undo effects of setting up yytext */
2157yy_c_buf_p = yy_cp -= 1;
2158YY_DO_BEFORE_ACTION; /* set up yytext again */
2159YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002160#line 96 "asn1p_l.l"
vlmb5abdc92005-07-02 21:42:40 +00002161yy_push_state(idash_comment); /* Incorrect, but acceptable */
2162 YY_BREAK
2163
2164case 3:
2165YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002166#line 98 "asn1p_l.l"
vlmb5abdc92005-07-02 21:42:40 +00002167yy_pop_state(); /* Acceptable end of comment */
2168 YY_BREAK
2169
2170case 4:
2171YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002172#line 101 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002173asn1p_as_pointer = 1;
2174 YY_BREAK
2175case 5:
2176YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002177#line 103 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002178yy_push_state(dash_comment);
2179 YY_BREAK
2180
vlmb5abdc92005-07-02 21:42:40 +00002181case 6:
vlmfa67ddc2004-06-03 03:38:44 +00002182YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002183#line 106 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002184yy_pop_state();
vlmfa67ddc2004-06-03 03:38:44 +00002185 YY_BREAK
vlmb5abdc92005-07-02 21:42:40 +00002186case 7:
vlmfa67ddc2004-06-03 03:38:44 +00002187YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002188#line 108 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002189yy_pop_state(); /* End of comment */
vlmfa67ddc2004-06-03 03:38:44 +00002190 YY_BREAK
vlmb5abdc92005-07-02 21:42:40 +00002191case 8:
2192YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002193#line 109 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002194/* Eat single dash */
vlm066dc102005-08-22 12:23:54 +00002195 YY_BREAK
2196case 9:
2197YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002198#line 110 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002199/* Eat */
vlm066dc102005-08-22 12:23:54 +00002200 YY_BREAK
vlm177a5b62005-09-05 05:17:57 +00002201
vlm066dc102005-08-22 12:23:54 +00002202case 10:
2203YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002204#line 113 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002205yy_push_state(cpp_comment);
vlmb5abdc92005-07-02 21:42:40 +00002206 YY_BREAK
2207
vlm066dc102005-08-22 12:23:54 +00002208case 11:
vlmb5abdc92005-07-02 21:42:40 +00002209YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002210#line 115 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002211/* Eat */
vlmb5abdc92005-07-02 21:42:40 +00002212 YY_BREAK
vlmb5abdc92005-07-02 21:42:40 +00002213case 12:
vlmfa67ddc2004-06-03 03:38:44 +00002214YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002215#line 116 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002216yy_pop_state();
vlm066dc102005-08-22 12:23:54 +00002217 YY_BREAK
2218case 13:
2219YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002220#line 117 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002221/* Eat */
2222 YY_BREAK
2223
2224/*
2225 * This is state is being set from corresponding .y module when
2226 * higher-level data is necessary to make proper parsing of the
2227 * underlying data. Thus, we enter the <opaque> state and save
2228 * everything for later processing.
2229 */
2230
vlm177a5b62005-09-05 05:17:57 +00002231case 14:
vlmfa67ddc2004-06-03 03:38:44 +00002232YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002233#line 129 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002234{
2235 yy_push_state(opaque);
2236 asn1p_lval.tv_opaque.buf = strdup(yytext);
2237 asn1p_lval.tv_opaque.len = yyleng;
2238 return TOK_opaque;
2239 }
2240 YY_BREAK
vlm177a5b62005-09-05 05:17:57 +00002241case 15:
vlmfa67ddc2004-06-03 03:38:44 +00002242YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002243#line 136 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002244{
2245 yy_pop_state();
2246 asn1p_lval.tv_opaque.buf = strdup(yytext);
2247 asn1p_lval.tv_opaque.len = yyleng;
2248 return TOK_opaque;
2249 }
2250 YY_BREAK
vlm177a5b62005-09-05 05:17:57 +00002251case 16:
vlmfa67ddc2004-06-03 03:38:44 +00002252YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002253#line 143 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002254{
2255 asn1p_lval.tv_opaque.buf = strdup(yytext);
2256 asn1p_lval.tv_opaque.len = yyleng;
2257 return TOK_opaque;
2258 }
2259 YY_BREAK
vlm177a5b62005-09-05 05:17:57 +00002260case 17:
vlmfa67ddc2004-06-03 03:38:44 +00002261YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002262#line 149 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002263{
2264 fprintf(stderr,
2265 "ASN.1 Parser syncronization failure: "
2266 "\"%s\" at line %d must not appear "
2267 "inside value definition\n",
2268 yytext, yylineno);
2269 return -1;
2270 }
2271 YY_BREAK
vlm177a5b62005-09-05 05:17:57 +00002272case 18:
vlmfa67ddc2004-06-03 03:38:44 +00002273YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002274#line 158 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002275{
2276 asn1p_lval.tv_opaque.buf = strdup(yytext);
2277 asn1p_lval.tv_opaque.len = yyleng;
2278 return TOK_opaque;
2279 }
2280 YY_BREAK
2281
vlm177a5b62005-09-05 05:17:57 +00002282case 19:
vlmfa67ddc2004-06-03 03:38:44 +00002283YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002284#line 166 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002285{
2286 asn1p_lval.tv_opaque.buf = 0;
2287 asn1p_lval.tv_opaque.len = 0;
2288 QAPPEND(yytext+1, yyleng-1);
2289 yy_push_state(quoted);
2290 }
2291 YY_BREAK
2292
vlm177a5b62005-09-05 05:17:57 +00002293case 20:
vlmfa67ddc2004-06-03 03:38:44 +00002294YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002295#line 174 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002296{ QAPPEND(yytext, yyleng-1); } /* Add a single quote */
2297 YY_BREAK
vlm177a5b62005-09-05 05:17:57 +00002298case 21:
vlmfa67ddc2004-06-03 03:38:44 +00002299YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002300#line 175 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002301{ QAPPEND(yytext, yyleng); }
2302 YY_BREAK
vlm177a5b62005-09-05 05:17:57 +00002303case 22:
vlmfa67ddc2004-06-03 03:38:44 +00002304YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002305#line 177 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002306{
2307 yy_pop_state();
2308 /* Do not append last quote:
2309 // QAPPEND(yytext, yyleng); */
2310
2311 if(asn1p_lexer_pedantic_1990
2312 && strchr(yytext, '\n')) {
2313 fprintf(stderr, "%s: "
2314 "Newlines are prohibited by ASN.1:1990\n",
2315 asn1p_lval.tv_opaque.buf);
2316 return -1;
2317 }
2318
2319 return TOK_cstring;
2320 }
2321 YY_BREAK
2322
vlm9283dbe2004-08-18 04:59:12 +00002323
vlm177a5b62005-09-05 05:17:57 +00002324case 23:
vlmfa67ddc2004-06-03 03:38:44 +00002325YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002326#line 196 "asn1p_l.l"
vlm9283dbe2004-08-18 04:59:12 +00002327{
2328 const char *s = "ENCODING-CONTROL";
2329 const char *p = s + sizeof("ENCODING-CONTROL") - 2;
2330 for(; p >= s; p--) unput(*p);
2331 yy_pop_state();
2332 }
2333 YY_BREAK
vlm177a5b62005-09-05 05:17:57 +00002334case 24:
2335YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002336#line 202 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002337unput('D'); unput('N'); unput('E'); yy_pop_state();
2338 YY_BREAK
2339case 25:
2340YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002341#line 203 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002342
2343 YY_BREAK
vlmb5abdc92005-07-02 21:42:40 +00002344case 26:
2345YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002346#line 204 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002347
vlmb5abdc92005-07-02 21:42:40 +00002348 YY_BREAK
2349case 27:
2350YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002351#line 205 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002352/* Eat everything else */
vlm066dc102005-08-22 12:23:54 +00002353 YY_BREAK
2354case 28:
2355YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002356#line 206 "asn1p_l.l"
vlm066dc102005-08-22 12:23:54 +00002357
2358 YY_BREAK
vlm177a5b62005-09-05 05:17:57 +00002359
vlm066dc102005-08-22 12:23:54 +00002360case 29:
2361YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002362#line 209 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002363{
2364 /* " \t\r\n" weren't allowed in ASN.1:1990. */
2365 asn1p_lval.tv_str = yytext;
2366 return TOK_hstring;
2367 }
2368 YY_BREAK
vlm177a5b62005-09-05 05:17:57 +00002369case 30:
vlmfa67ddc2004-06-03 03:38:44 +00002370YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002371#line 215 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002372{
2373 /* " \t\r\n" weren't allowed in ASN.1:1990. */
2374 asn1p_lval.tv_str = strdup(yytext);
2375 return TOK_bstring;
2376 }
2377 YY_BREAK
vlm177a5b62005-09-05 05:17:57 +00002378case 31:
vlmfa67ddc2004-06-03 03:38:44 +00002379YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002380#line 222 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002381{
vlma6a84d72006-03-16 10:03:35 +00002382 asn1p_lval.a_int = _lex_atoi(yytext);
vlmfa67ddc2004-06-03 03:38:44 +00002383 if(errno == ERANGE)
2384 return -1;
2385 return TOK_number_negative;
2386 }
2387 YY_BREAK
vlm177a5b62005-09-05 05:17:57 +00002388case 32:
2389YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002390#line 229 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002391{
vlma6a84d72006-03-16 10:03:35 +00002392 asn1p_lval.a_int = _lex_atoi(yytext);
vlm177a5b62005-09-05 05:17:57 +00002393 if(errno == ERANGE)
2394 return -1;
2395 return TOK_number;
2396 }
2397 YY_BREAK
2398case 33:
2399YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002400#line 236 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002401{
vlma6a84d72006-03-16 10:03:35 +00002402 asn1p_lval.a_int = _lex_atoi(yytext);
vlm177a5b62005-09-05 05:17:57 +00002403 if(errno == ERANGE)
2404 return -1;
2405 return TOK_number;
2406 }
2407 YY_BREAK
vlm066dc102005-08-22 12:23:54 +00002408case 34:
vlmfa67ddc2004-06-03 03:38:44 +00002409YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002410#line 243 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002411return TOK_ABSENT;
2412 YY_BREAK
vlm177a5b62005-09-05 05:17:57 +00002413case 35:
vlmfa67ddc2004-06-03 03:38:44 +00002414YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002415#line 244 "asn1p_l.l"
vlmc94e28f2004-09-15 11:59:51 +00002416return TOK_ALL;
vlmfa67ddc2004-06-03 03:38:44 +00002417 YY_BREAK
vlm177a5b62005-09-05 05:17:57 +00002418case 36:
vlmfa67ddc2004-06-03 03:38:44 +00002419YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002420#line 245 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002421{
2422 /* Appeared in 1990, removed in 1997 */
2423 if(TYPE_LIFETIME(1990, 1997))
2424 return TOK_ANY;
2425 fprintf(stderr, "Keyword \"%s\" at line %d "
2426 "is obsolete\n", yytext, yylineno);
2427 REJECT;
2428 }
2429 YY_BREAK
vlm177a5b62005-09-05 05:17:57 +00002430case 37:
2431YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002432#line 253 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002433return TOK_APPLICATION;
2434 YY_BREAK
2435case 38:
2436YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002437#line 254 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002438return TOK_AUTOMATIC;
2439 YY_BREAK
vlmb5abdc92005-07-02 21:42:40 +00002440case 39:
2441YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002442#line 255 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002443return TOK_BEGIN;
vlmb5abdc92005-07-02 21:42:40 +00002444 YY_BREAK
2445case 40:
2446YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002447#line 256 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002448return TOK_BIT;
vlm066dc102005-08-22 12:23:54 +00002449 YY_BREAK
2450case 41:
2451YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002452#line 257 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002453{
2454 if(TYPE_LIFETIME(1994, 0))
2455 return TOK_BMPString;
2456 REJECT;
2457 }
2458 YY_BREAK
vlm177a5b62005-09-05 05:17:57 +00002459case 42:
2460YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002461#line 262 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002462return TOK_BOOLEAN;
2463 YY_BREAK
2464case 43:
2465YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002466#line 263 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002467return TOK_BY;
2468 YY_BREAK
vlmfa67ddc2004-06-03 03:38:44 +00002469case 44:
2470YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002471#line 264 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002472return TOK_CHARACTER;
vlmfa67ddc2004-06-03 03:38:44 +00002473 YY_BREAK
2474case 45:
2475YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002476#line 265 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002477return TOK_CHOICE;
vlm9283dbe2004-08-18 04:59:12 +00002478 YY_BREAK
2479case 46:
2480YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002481#line 266 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002482return TOK_CLASS;
vlm9283dbe2004-08-18 04:59:12 +00002483 YY_BREAK
2484case 47:
2485YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002486#line 267 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002487return TOK_COMPONENT;
vlm9283dbe2004-08-18 04:59:12 +00002488 YY_BREAK
2489case 48:
2490YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002491#line 268 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002492return TOK_COMPONENTS;
vlmb5abdc92005-07-02 21:42:40 +00002493 YY_BREAK
2494case 49:
2495YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002496#line 269 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002497return TOK_CONSTRAINED;
vlmb5abdc92005-07-02 21:42:40 +00002498 YY_BREAK
2499case 50:
2500YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002501#line 270 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002502return TOK_CONTAINING;
vlmb5abdc92005-07-02 21:42:40 +00002503 YY_BREAK
2504case 51:
2505YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002506#line 271 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002507return TOK_DEFAULT;
vlm066dc102005-08-22 12:23:54 +00002508 YY_BREAK
2509case 52:
2510YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002511#line 272 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002512{
2513 /* Appeared in 1990, removed in 1997 */
2514 if(TYPE_LIFETIME(1990, 1997))
2515 return TOK_DEFINED;
2516 fprintf(stderr, "Keyword \"%s\" at line %d "
2517 "is obsolete\n", yytext, yylineno);
2518 /* Deprecated since */
2519 REJECT;
2520 }
2521 YY_BREAK
vlm177a5b62005-09-05 05:17:57 +00002522case 53:
2523YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002524#line 281 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002525return TOK_DEFINITIONS;
2526 YY_BREAK
2527case 54:
2528YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002529#line 282 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002530return TOK_EMBEDDED;
2531 YY_BREAK
vlmfa67ddc2004-06-03 03:38:44 +00002532case 55:
2533YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002534#line 283 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002535return TOK_ENCODED;
vlmfa67ddc2004-06-03 03:38:44 +00002536 YY_BREAK
2537case 56:
2538YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002539#line 284 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002540return TOK_ENCODING_CONTROL;
vlmfa67ddc2004-06-03 03:38:44 +00002541 YY_BREAK
2542case 57:
2543YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002544#line 285 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002545return TOK_END;
vlmfa67ddc2004-06-03 03:38:44 +00002546 YY_BREAK
2547case 58:
2548YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002549#line 286 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002550return TOK_ENUMERATED;
vlmfa67ddc2004-06-03 03:38:44 +00002551 YY_BREAK
2552case 59:
2553YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002554#line 287 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002555return TOK_EXCEPT;
vlmfa67ddc2004-06-03 03:38:44 +00002556 YY_BREAK
2557case 60:
2558YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002559#line 288 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002560return TOK_EXPLICIT;
vlmfa67ddc2004-06-03 03:38:44 +00002561 YY_BREAK
2562case 61:
2563YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002564#line 289 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002565return TOK_EXPORTS;
vlmfa67ddc2004-06-03 03:38:44 +00002566 YY_BREAK
2567case 62:
2568YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002569#line 290 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002570return TOK_EXTENSIBILITY;
vlmfa67ddc2004-06-03 03:38:44 +00002571 YY_BREAK
2572case 63:
2573YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002574#line 291 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002575return TOK_EXTERNAL;
vlmfa67ddc2004-06-03 03:38:44 +00002576 YY_BREAK
2577case 64:
2578YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002579#line 292 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002580return TOK_FALSE;
vlmfa67ddc2004-06-03 03:38:44 +00002581 YY_BREAK
2582case 65:
2583YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002584#line 293 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002585return TOK_FROM;
vlmfa67ddc2004-06-03 03:38:44 +00002586 YY_BREAK
2587case 66:
2588YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002589#line 294 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002590return TOK_GeneralizedTime;
vlmfa67ddc2004-06-03 03:38:44 +00002591 YY_BREAK
2592case 67:
2593YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002594#line 295 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002595return TOK_GeneralString;
vlmfa67ddc2004-06-03 03:38:44 +00002596 YY_BREAK
2597case 68:
2598YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002599#line 296 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002600return TOK_GraphicString;
vlmfa67ddc2004-06-03 03:38:44 +00002601 YY_BREAK
2602case 69:
2603YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002604#line 297 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002605return TOK_IA5String;
vlmfa67ddc2004-06-03 03:38:44 +00002606 YY_BREAK
2607case 70:
2608YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002609#line 298 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002610return TOK_IDENTIFIER;
vlmfa67ddc2004-06-03 03:38:44 +00002611 YY_BREAK
2612case 71:
2613YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002614#line 299 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002615return TOK_IMPLICIT;
vlmfa67ddc2004-06-03 03:38:44 +00002616 YY_BREAK
2617case 72:
2618YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002619#line 300 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002620return TOK_IMPLIED;
vlmfa67ddc2004-06-03 03:38:44 +00002621 YY_BREAK
2622case 73:
2623YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002624#line 301 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002625return TOK_IMPORTS;
vlmfa67ddc2004-06-03 03:38:44 +00002626 YY_BREAK
2627case 74:
2628YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002629#line 302 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002630return TOK_INCLUDES;
vlmfa67ddc2004-06-03 03:38:44 +00002631 YY_BREAK
2632case 75:
2633YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002634#line 303 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002635return TOK_INSTANCE;
vlmfa67ddc2004-06-03 03:38:44 +00002636 YY_BREAK
2637case 76:
2638YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002639#line 304 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002640return TOK_INSTRUCTIONS;
vlmfa67ddc2004-06-03 03:38:44 +00002641 YY_BREAK
2642case 77:
2643YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002644#line 305 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002645return TOK_INTEGER;
vlmfa67ddc2004-06-03 03:38:44 +00002646 YY_BREAK
2647case 78:
2648YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002649#line 306 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002650return TOK_INTERSECTION;
vlmfa67ddc2004-06-03 03:38:44 +00002651 YY_BREAK
2652case 79:
2653YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002654#line 307 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002655return TOK_ISO646String;
vlmfa67ddc2004-06-03 03:38:44 +00002656 YY_BREAK
2657case 80:
2658YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002659#line 308 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002660return TOK_MAX;
vlmfa67ddc2004-06-03 03:38:44 +00002661 YY_BREAK
2662case 81:
2663YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002664#line 309 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002665return TOK_MIN;
vlmfa67ddc2004-06-03 03:38:44 +00002666 YY_BREAK
2667case 82:
2668YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002669#line 310 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002670return TOK_MINUS_INFINITY;
vlmfa67ddc2004-06-03 03:38:44 +00002671 YY_BREAK
2672case 83:
2673YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002674#line 311 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002675return TOK_NULL;
vlmfa67ddc2004-06-03 03:38:44 +00002676 YY_BREAK
2677case 84:
2678YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002679#line 312 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002680return TOK_NumericString;
vlmfa67ddc2004-06-03 03:38:44 +00002681 YY_BREAK
2682case 85:
2683YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002684#line 313 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002685return TOK_OBJECT;
vlmfa67ddc2004-06-03 03:38:44 +00002686 YY_BREAK
2687case 86:
2688YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002689#line 314 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002690return TOK_ObjectDescriptor;
vlmfa67ddc2004-06-03 03:38:44 +00002691 YY_BREAK
2692case 87:
2693YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002694#line 315 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002695return TOK_OCTET;
vlmfa67ddc2004-06-03 03:38:44 +00002696 YY_BREAK
2697case 88:
2698YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002699#line 316 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002700return TOK_OF;
vlmfa67ddc2004-06-03 03:38:44 +00002701 YY_BREAK
2702case 89:
2703YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002704#line 317 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002705return TOK_OPTIONAL;
vlmfa67ddc2004-06-03 03:38:44 +00002706 YY_BREAK
2707case 90:
2708YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002709#line 318 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002710return TOK_PATTERN;
vlmfa67ddc2004-06-03 03:38:44 +00002711 YY_BREAK
2712case 91:
2713YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002714#line 319 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002715return TOK_PDV;
vlmfa67ddc2004-06-03 03:38:44 +00002716 YY_BREAK
2717case 92:
2718YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002719#line 320 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002720return TOK_PLUS_INFINITY;
vlmfa67ddc2004-06-03 03:38:44 +00002721 YY_BREAK
2722case 93:
2723YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002724#line 321 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002725return TOK_PRESENT;
vlmfa67ddc2004-06-03 03:38:44 +00002726 YY_BREAK
2727case 94:
2728YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002729#line 322 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002730return TOK_PrintableString;
vlmfa67ddc2004-06-03 03:38:44 +00002731 YY_BREAK
2732case 95:
2733YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002734#line 323 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002735return TOK_PRIVATE;
vlmfa67ddc2004-06-03 03:38:44 +00002736 YY_BREAK
2737case 96:
2738YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002739#line 324 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002740return TOK_REAL;
vlmfa67ddc2004-06-03 03:38:44 +00002741 YY_BREAK
2742case 97:
2743YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002744#line 325 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002745return TOK_RELATIVE_OID;
vlmfa67ddc2004-06-03 03:38:44 +00002746 YY_BREAK
2747case 98:
2748YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002749#line 326 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002750return TOK_SEQUENCE;
vlmfa67ddc2004-06-03 03:38:44 +00002751 YY_BREAK
2752case 99:
2753YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002754#line 327 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002755return TOK_SET;
vlmfa67ddc2004-06-03 03:38:44 +00002756 YY_BREAK
2757case 100:
2758YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002759#line 328 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002760return TOK_SIZE;
vlmfa67ddc2004-06-03 03:38:44 +00002761 YY_BREAK
2762case 101:
2763YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002764#line 329 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002765return TOK_STRING;
vlmfa67ddc2004-06-03 03:38:44 +00002766 YY_BREAK
2767case 102:
2768YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002769#line 330 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002770return TOK_SYNTAX;
vlm9283dbe2004-08-18 04:59:12 +00002771 YY_BREAK
2772case 103:
2773YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002774#line 331 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002775return TOK_T61String;
vlm9283dbe2004-08-18 04:59:12 +00002776 YY_BREAK
2777case 104:
2778YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002779#line 332 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002780return TOK_TAGS;
vlm9283dbe2004-08-18 04:59:12 +00002781 YY_BREAK
2782case 105:
2783YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002784#line 333 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002785return TOK_TeletexString;
vlm9283dbe2004-08-18 04:59:12 +00002786 YY_BREAK
2787case 106:
2788YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002789#line 334 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002790return TOK_TRUE;
vlm9283dbe2004-08-18 04:59:12 +00002791 YY_BREAK
2792case 107:
2793YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002794#line 335 "asn1p_l.l"
vlmb8958092006-03-06 11:28:17 +00002795return TOK_UNION;
vlmb5abdc92005-07-02 21:42:40 +00002796 YY_BREAK
2797case 108:
2798YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002799#line 336 "asn1p_l.l"
vlmb8958092006-03-06 11:28:17 +00002800return TOK_UNIQUE;
vlmb5abdc92005-07-02 21:42:40 +00002801 YY_BREAK
2802case 109:
2803YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002804#line 337 "asn1p_l.l"
vlmb8958092006-03-06 11:28:17 +00002805return TOK_UNIVERSAL;
vlmb5abdc92005-07-02 21:42:40 +00002806 YY_BREAK
2807case 110:
2808YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002809#line 338 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002810{
2811 if(TYPE_LIFETIME(1994, 0))
2812 return TOK_UniversalString;
2813 REJECT;
2814 }
2815 YY_BREAK
vlmb8958092006-03-06 11:28:17 +00002816case 111:
vlmfa67ddc2004-06-03 03:38:44 +00002817YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002818#line 343 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002819return TOK_UTCTime;
2820 YY_BREAK
vlmb8958092006-03-06 11:28:17 +00002821case 112:
vlmfa67ddc2004-06-03 03:38:44 +00002822YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002823#line 344 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002824{
2825 if(TYPE_LIFETIME(1994, 0))
2826 return TOK_UTF8String;
2827 REJECT;
2828 }
2829 YY_BREAK
vlmb8958092006-03-06 11:28:17 +00002830case 113:
2831YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002832#line 349 "asn1p_l.l"
vlmb8958092006-03-06 11:28:17 +00002833return TOK_VideotexString;
2834 YY_BREAK
vlm177a5b62005-09-05 05:17:57 +00002835case 114:
2836YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002837#line 350 "asn1p_l.l"
vlmb8958092006-03-06 11:28:17 +00002838return TOK_VisibleString;
vlm177a5b62005-09-05 05:17:57 +00002839 YY_BREAK
2840case 115:
2841YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002842#line 351 "asn1p_l.l"
vlmb8958092006-03-06 11:28:17 +00002843return TOK_WITH;
vlm177a5b62005-09-05 05:17:57 +00002844 YY_BREAK
vlmb5abdc92005-07-02 21:42:40 +00002845case 116:
2846YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002847#line 354 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002848{
vlmfa67ddc2004-06-03 03:38:44 +00002849 asn1p_lval.tv_str = strdup(yytext);
2850 return TOK_typefieldreference;
2851 }
2852 YY_BREAK
vlmb8958092006-03-06 11:28:17 +00002853case 117:
vlmfa67ddc2004-06-03 03:38:44 +00002854YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002855#line 359 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002856{
vlmfa67ddc2004-06-03 03:38:44 +00002857 asn1p_lval.tv_str = strdup(yytext);
2858 return TOK_valuefieldreference;
2859 }
2860 YY_BREAK
vlmb8958092006-03-06 11:28:17 +00002861case 118:
vlmfa67ddc2004-06-03 03:38:44 +00002862YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002863#line 365 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002864{
vlmfa67ddc2004-06-03 03:38:44 +00002865 asn1p_lval.tv_str = strdup(yytext);
2866 return TOK_identifier;
2867 }
2868 YY_BREAK
2869/*
2870 * objectclassreference
2871 */
vlmb8958092006-03-06 11:28:17 +00002872case 119:
vlmfa67ddc2004-06-03 03:38:44 +00002873YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002874#line 373 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002875{
vlmfa67ddc2004-06-03 03:38:44 +00002876 asn1p_lval.tv_str = strdup(yytext);
vlm9283dbe2004-08-18 04:59:12 +00002877 return TOK_capitalreference;
vlmfa67ddc2004-06-03 03:38:44 +00002878 }
2879 YY_BREAK
2880/*
2881 * typereference, modulereference
2882 * NOTE: TOK_objectclassreference must be combined
2883 * with this token to produce true typereference.
2884 */
vlmb8958092006-03-06 11:28:17 +00002885case 120:
vlmfa67ddc2004-06-03 03:38:44 +00002886YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002887#line 383 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002888{
vlmfa67ddc2004-06-03 03:38:44 +00002889 asn1p_lval.tv_str = strdup(yytext);
2890 return TOK_typereference;
2891 }
2892 YY_BREAK
vlmb8958092006-03-06 11:28:17 +00002893case 121:
2894YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002895#line 388 "asn1p_l.l"
vlmb8958092006-03-06 11:28:17 +00002896return TOK_PPEQ;
2897 YY_BREAK
vlm177a5b62005-09-05 05:17:57 +00002898case 122:
vlmb5abdc92005-07-02 21:42:40 +00002899YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002900#line 390 "asn1p_l.l"
vlmb8958092006-03-06 11:28:17 +00002901return TOK_ThreeDots;
vlmfa67ddc2004-06-03 03:38:44 +00002902 YY_BREAK
vlm177a5b62005-09-05 05:17:57 +00002903case 123:
2904YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002905#line 391 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002906return TOK_TwoDots;
2907 YY_BREAK
2908
vlmb8958092006-03-06 11:28:17 +00002909case 124:
2910YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002911#line 395 "asn1p_l.l"
vlmb8958092006-03-06 11:28:17 +00002912{
vlm808411d2006-03-14 16:31:37 +00002913 asn1p_lval.tv_str = strdup(yytext);
2914 return TOK_Literal;
vlmb8958092006-03-06 11:28:17 +00002915 }
2916 YY_BREAK
vlmb5abdc92005-07-02 21:42:40 +00002917case 125:
vlmfa67ddc2004-06-03 03:38:44 +00002918YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002919#line 400 "asn1p_l.l"
vlm808411d2006-03-14 16:31:37 +00002920{
2921 asn1p_lval.tv_str = strdup(yytext);
2922 return TOK_Literal;
2923 }
2924 YY_BREAK
2925case 126:
2926YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002927#line 405 "asn1p_l.l"
vlm808411d2006-03-14 16:31:37 +00002928{
2929 yy_push_state(with_syntax);
2930 asn1p_lval.tv_str = strdup(yytext);
2931 return TOK_Literal;
2932 }
2933 YY_BREAK
2934case 127:
2935YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002936#line 411 "asn1p_l.l"
vlm808411d2006-03-14 16:31:37 +00002937return '[';
2938 YY_BREAK
2939case 128:
2940YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002941#line 412 "asn1p_l.l"
vlm808411d2006-03-14 16:31:37 +00002942return ']';
2943 YY_BREAK
2944case 129:
2945YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002946#line 414 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002947{
2948 asn1p_lval.tv_opaque.buf = strdup(yytext);
2949 asn1p_lval.tv_opaque.len = yyleng;
vlmeeb3c512006-03-16 05:11:14 +00002950 return TOK_whitespace;
vlm177a5b62005-09-05 05:17:57 +00002951 }
vlm066dc102005-08-22 12:23:54 +00002952 YY_BREAK
vlm808411d2006-03-14 16:31:37 +00002953case 130:
vlm066dc102005-08-22 12:23:54 +00002954YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002955#line 420 "asn1p_l.l"
vlm2c8c44d2005-03-24 16:22:35 +00002956{
2957 yy_pop_state();
vlm808411d2006-03-14 16:31:37 +00002958 if(YYSTATE == with_syntax) {
2959 asn1p_lval.tv_str = strdup(yytext);
2960 return TOK_Literal;
2961 } else {
2962 return '}';
2963 }
vlm2c8c44d2005-03-24 16:22:35 +00002964 }
2965 YY_BREAK
2966
vlm808411d2006-03-14 16:31:37 +00002967case 131:
vlm2c8c44d2005-03-24 16:22:35 +00002968YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002969#line 433 "asn1p_l.l"
vlm2c8c44d2005-03-24 16:22:35 +00002970/* Ignore whitespace */
2971 YY_BREAK
vlm808411d2006-03-14 16:31:37 +00002972case 132:
vlm2c8c44d2005-03-24 16:22:35 +00002973YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00002974#line 436 "asn1p_l.l"
vlm2c8c44d2005-03-24 16:22:35 +00002975{
2976 asn1c_integer_t v1 = -1, v2 = -1;
2977 char *p;
2978 for(p = yytext; *p; p++)
2979 if(*p >= '0' && *p <= '9')
vlma6a84d72006-03-16 10:03:35 +00002980 { v1 = _lex_atoi(p); break; }
vlm2c8c44d2005-03-24 16:22:35 +00002981 while(*p >= '0' && *p <= '9') p++; /* Skip digits */
2982 for(; *p; p++) if(*p >= '0' && *p <= '9')
vlma6a84d72006-03-16 10:03:35 +00002983 { v2 = _lex_atoi(p); break; }
vlm2c8c44d2005-03-24 16:22:35 +00002984 if(v1 < 0 || v1 > 7) {
2985 fprintf(stderr, "%s at line %d: X.680:2003, #37.14 "
2986 "mandates 0..7 range for Tuple's TableColumn\n",
2987 yytext, yylineno);
2988 return -1;
2989 }
2990 if(v2 < 0 || v2 > 15) {
2991 fprintf(stderr, "%s at line %d: X.680:2003, #37.14 "
2992 "mandates 0..15 range for Tuple's TableRow\n",
2993 yytext, yylineno);
2994 return -1;
2995 }
2996 asn1p_lval.a_int = (v1 << 4) + v2;
2997 return TOK_tuple;
2998 }
2999 YY_BREAK
vlm808411d2006-03-14 16:31:37 +00003000case 133:
vlm2c8c44d2005-03-24 16:22:35 +00003001YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00003002#line 461 "asn1p_l.l"
vlm2c8c44d2005-03-24 16:22:35 +00003003{
3004 asn1c_integer_t v1 = -1, v2 = -1, v3 = -1, v4 = -1;
3005 char *p;
3006 for(p = yytext; *p; p++)
3007 if(*p >= '0' && *p <= '9')
vlma6a84d72006-03-16 10:03:35 +00003008 { v1 = _lex_atoi(p); break; }
vlm2c8c44d2005-03-24 16:22:35 +00003009 while(*p >= '0' && *p <= '9') p++; /* Skip digits */
3010 for(; *p; p++) if(*p >= '0' && *p <= '9')
vlma6a84d72006-03-16 10:03:35 +00003011 { v2 = _lex_atoi(p); break; }
vlm2c8c44d2005-03-24 16:22:35 +00003012 while(*p >= '0' && *p <= '9') p++;
3013 for(; *p; p++) if(*p >= '0' && *p <= '9')
vlma6a84d72006-03-16 10:03:35 +00003014 { v3 = _lex_atoi(p); break; }
vlm2c8c44d2005-03-24 16:22:35 +00003015 while(*p >= '0' && *p <= '9') p++;
3016 for(; *p; p++) if(*p >= '0' && *p <= '9')
vlma6a84d72006-03-16 10:03:35 +00003017 { v4 = _lex_atoi(p); break; }
vlm2c8c44d2005-03-24 16:22:35 +00003018 if(v1 < 0 || v1 > 127) {
3019 fprintf(stderr, "%s at line %d: X.680:2003, #37.12 "
3020 "mandates 0..127 range for Quadruple's Group\n",
3021 yytext, yylineno);
3022 return -1;
3023 }
3024 if(v2 < 0 || v2 > 255) {
3025 fprintf(stderr, "%s at line %d: X.680:2003, #37.12 "
3026 "mandates 0..255 range for Quadruple's Plane\n",
3027 yytext, yylineno);
3028 return -1;
3029 }
3030 if(v3 < 0 || v3 > 255) {
3031 fprintf(stderr, "%s at line %d: X.680:2003, #37.12 "
3032 "mandates 0..255 range for Quadruple's Row\n",
3033 yytext, yylineno);
3034 return -1;
3035 }
3036 if(v4 < 0 || v4 > 255) {
3037 fprintf(stderr, "%s at line %d: X.680:2003, #37.12 "
3038 "mandates 0..255 range for Quadruple's Cell\n",
3039 yytext, yylineno);
3040 return -1;
3041 }
3042 asn1p_lval.a_int = (v1 << 24) | (v2 << 16) | (v3 << 8) | v4;
3043 return TOK_quadruple;
3044 }
3045 YY_BREAK
vlm808411d2006-03-14 16:31:37 +00003046case 134:
vlm2c8c44d2005-03-24 16:22:35 +00003047YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00003048#line 505 "asn1p_l.l"
vlm2c8c44d2005-03-24 16:22:35 +00003049return yytext[0];
3050 YY_BREAK
vlm808411d2006-03-14 16:31:37 +00003051case 135:
vlm2c8c44d2005-03-24 16:22:35 +00003052YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00003053#line 507 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00003054{
3055 if(TYPE_LIFETIME(1994, 0))
3056 fprintf(stderr, "ERROR: ");
3057 fprintf(stderr,
3058 "Symbol '%c' at line %d is prohibited "
3059 "by ASN.1:1994 and ASN.1:1997\n",
3060 yytext[0], yylineno);
3061 if(TYPE_LIFETIME(1994, 0))
3062 return -1;
3063 }
3064 YY_BREAK
vlm808411d2006-03-14 16:31:37 +00003065case 136:
vlm2728a8d2005-01-23 09:51:44 +00003066YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00003067#line 518 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00003068{
3069 fprintf(stderr,
3070 "Unexpected token at line %d: \"%s\"\n",
3071 yylineno, yytext);
3072 while(YYSTATE != INITIAL)
3073 yy_pop_state();
vlmc94e28f2004-09-15 11:59:51 +00003074 if(0) {
3075 yy_top_state(); /* Just to use this function. */
3076 yy_fatal_error("Parse error");
3077 }
vlmfa67ddc2004-06-03 03:38:44 +00003078 return -1;
3079}
3080 YY_BREAK
3081case YY_STATE_EOF(INITIAL):
3082case YY_STATE_EOF(dash_comment):
vlmb5abdc92005-07-02 21:42:40 +00003083case YY_STATE_EOF(idash_comment):
vlmfa67ddc2004-06-03 03:38:44 +00003084case YY_STATE_EOF(cpp_comment):
3085case YY_STATE_EOF(quoted):
3086case YY_STATE_EOF(opaque):
vlm9283dbe2004-08-18 04:59:12 +00003087case YY_STATE_EOF(encoding_control):
vlmfa67ddc2004-06-03 03:38:44 +00003088case YY_STATE_EOF(with_syntax):
vlma6a84d72006-03-16 10:03:35 +00003089#line 531 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00003090{
3091 while(YYSTATE != INITIAL)
3092 yy_pop_state();
3093 yyterminate();
3094 }
3095 YY_BREAK
vlm808411d2006-03-14 16:31:37 +00003096case 137:
vlmfa67ddc2004-06-03 03:38:44 +00003097YY_RULE_SETUP
vlma6a84d72006-03-16 10:03:35 +00003098#line 538 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00003099YY_FATAL_ERROR( "flex scanner jammed" );
3100 YY_BREAK
vlma6a84d72006-03-16 10:03:35 +00003101#line 3102 "asn1p_l.c"
vlmfa67ddc2004-06-03 03:38:44 +00003102
3103 case YY_END_OF_BUFFER:
3104 {
3105 /* Amount of text matched not including the EOB char. */
3106 int yy_amount_of_matched_text = (int) (yy_cp - yytext_ptr) - 1;
3107
3108 /* Undo the effects of YY_DO_BEFORE_ACTION. */
3109 *yy_cp = yy_hold_char;
3110 YY_RESTORE_YY_MORE_OFFSET
3111
3112 if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_NEW )
3113 {
3114 /* We're scanning a new file or input source. It's
3115 * possible that this happened because the user
3116 * just pointed yyin at a new source and called
3117 * yylex(). If so, then we have to assure
3118 * consistency between yy_current_buffer and our
3119 * globals. Here is the right place to do so, because
3120 * this is the first action (other than possibly a
3121 * back-up) that will match for the new input source.
3122 */
3123 yy_n_chars = yy_current_buffer->yy_n_chars;
3124 yy_current_buffer->yy_input_file = yyin;
3125 yy_current_buffer->yy_buffer_status = YY_BUFFER_NORMAL;
3126 }
3127
3128 /* Note that here we test for yy_c_buf_p "<=" to the position
3129 * of the first EOB in the buffer, since yy_c_buf_p will
3130 * already have been incremented past the NUL character
3131 * (since all states make transitions on EOB to the
3132 * end-of-buffer state). Contrast this with the test
3133 * in input().
3134 */
3135 if ( yy_c_buf_p <= &yy_current_buffer->yy_ch_buf[yy_n_chars] )
3136 { /* This was really a NUL. */
3137 yy_state_type yy_next_state;
3138
3139 yy_c_buf_p = yytext_ptr + yy_amount_of_matched_text;
3140
3141 yy_current_state = yy_get_previous_state();
3142
3143 /* Okay, we're now positioned to make the NUL
3144 * transition. We couldn't have
3145 * yy_get_previous_state() go ahead and do it
3146 * for us because it doesn't know how to deal
3147 * with the possibility of jamming (and we don't
3148 * want to build jamming into it because then it
3149 * will run more slowly).
3150 */
3151
3152 yy_next_state = yy_try_NUL_trans( yy_current_state );
3153
3154 yy_bp = yytext_ptr + YY_MORE_ADJ;
3155
3156 if ( yy_next_state )
3157 {
3158 /* Consume the NUL. */
3159 yy_cp = ++yy_c_buf_p;
3160 yy_current_state = yy_next_state;
3161 goto yy_match;
3162 }
3163
3164 else
3165 {
3166 yy_cp = yy_c_buf_p;
3167 goto yy_find_action;
3168 }
3169 }
3170
3171 else switch ( yy_get_next_buffer() )
3172 {
3173 case EOB_ACT_END_OF_FILE:
3174 {
3175 yy_did_buffer_switch_on_eof = 0;
3176
3177 if ( yywrap() )
3178 {
3179 /* Note: because we've taken care in
3180 * yy_get_next_buffer() to have set up
3181 * yytext, we can now set up
3182 * yy_c_buf_p so that if some total
3183 * hoser (like flex itself) wants to
3184 * call the scanner after we return the
3185 * YY_NULL, it'll still work - another
3186 * YY_NULL will get returned.
3187 */
3188 yy_c_buf_p = yytext_ptr + YY_MORE_ADJ;
3189
3190 yy_act = YY_STATE_EOF(YY_START);
3191 goto do_action;
3192 }
3193
3194 else
3195 {
3196 if ( ! yy_did_buffer_switch_on_eof )
3197 YY_NEW_FILE;
3198 }
3199 break;
3200 }
3201
3202 case EOB_ACT_CONTINUE_SCAN:
3203 yy_c_buf_p =
3204 yytext_ptr + yy_amount_of_matched_text;
3205
3206 yy_current_state = yy_get_previous_state();
3207
3208 yy_cp = yy_c_buf_p;
3209 yy_bp = yytext_ptr + YY_MORE_ADJ;
3210 goto yy_match;
3211
3212 case EOB_ACT_LAST_MATCH:
3213 yy_c_buf_p =
3214 &yy_current_buffer->yy_ch_buf[yy_n_chars];
3215
3216 yy_current_state = yy_get_previous_state();
3217
3218 yy_cp = yy_c_buf_p;
3219 yy_bp = yytext_ptr + YY_MORE_ADJ;
3220 goto yy_find_action;
3221 }
3222 break;
3223 }
3224
3225 default:
3226 YY_FATAL_ERROR(
3227 "fatal flex scanner internal error--no action found" );
3228 } /* end of action switch */
3229 } /* end of scanning one token */
3230 } /* end of yylex */
3231
3232
3233/* yy_get_next_buffer - try to read in a new buffer
3234 *
3235 * Returns a code representing an action:
3236 * EOB_ACT_LAST_MATCH -
3237 * EOB_ACT_CONTINUE_SCAN - continue scanning from current position
3238 * EOB_ACT_END_OF_FILE - end of file
3239 */
3240
3241static int yy_get_next_buffer()
3242 {
3243 register char *dest = yy_current_buffer->yy_ch_buf;
3244 register char *source = yytext_ptr;
3245 register int number_to_move, i;
3246 int ret_val;
3247
3248 if ( yy_c_buf_p > &yy_current_buffer->yy_ch_buf[yy_n_chars + 1] )
3249 YY_FATAL_ERROR(
3250 "fatal flex scanner internal error--end of buffer missed" );
3251
3252 if ( yy_current_buffer->yy_fill_buffer == 0 )
3253 { /* Don't try to fill the buffer, so this is an EOF. */
3254 if ( yy_c_buf_p - yytext_ptr - YY_MORE_ADJ == 1 )
3255 {
3256 /* We matched a single character, the EOB, so
3257 * treat this as a final EOF.
3258 */
3259 return EOB_ACT_END_OF_FILE;
3260 }
3261
3262 else
3263 {
3264 /* We matched some text prior to the EOB, first
3265 * process it.
3266 */
3267 return EOB_ACT_LAST_MATCH;
3268 }
3269 }
3270
3271 /* Try to read more data. */
3272
3273 /* First move last chars to start of buffer. */
3274 number_to_move = (int) (yy_c_buf_p - yytext_ptr) - 1;
3275
3276 for ( i = 0; i < number_to_move; ++i )
3277 *(dest++) = *(source++);
3278
3279 if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_EOF_PENDING )
3280 /* don't do the read, it's not guaranteed to return an EOF,
3281 * just force an EOF
3282 */
3283 yy_current_buffer->yy_n_chars = yy_n_chars = 0;
3284
3285 else
3286 {
3287 int num_to_read =
3288 yy_current_buffer->yy_buf_size - number_to_move - 1;
3289
3290 while ( num_to_read <= 0 )
3291 { /* Not enough room in the buffer - grow it. */
3292#ifdef YY_USES_REJECT
3293 YY_FATAL_ERROR(
3294"input buffer overflow, can't enlarge buffer because scanner uses REJECT" );
3295#else
3296
3297 /* just a shorter name for the current buffer */
3298 YY_BUFFER_STATE b = yy_current_buffer;
3299
3300 int yy_c_buf_p_offset =
3301 (int) (yy_c_buf_p - b->yy_ch_buf);
3302
3303 if ( b->yy_is_our_buffer )
3304 {
3305 int new_size = b->yy_buf_size * 2;
3306
3307 if ( new_size <= 0 )
3308 b->yy_buf_size += b->yy_buf_size / 8;
3309 else
3310 b->yy_buf_size *= 2;
3311
3312 b->yy_ch_buf = (char *)
3313 /* Include room in for 2 EOB chars. */
3314 yy_flex_realloc( (void *) b->yy_ch_buf,
3315 b->yy_buf_size + 2 );
3316 }
3317 else
3318 /* Can't grow it, we don't own it. */
3319 b->yy_ch_buf = 0;
3320
3321 if ( ! b->yy_ch_buf )
3322 YY_FATAL_ERROR(
3323 "fatal error - scanner input buffer overflow" );
3324
3325 yy_c_buf_p = &b->yy_ch_buf[yy_c_buf_p_offset];
3326
3327 num_to_read = yy_current_buffer->yy_buf_size -
3328 number_to_move - 1;
3329#endif
3330 }
3331
3332 if ( num_to_read > YY_READ_BUF_SIZE )
3333 num_to_read = YY_READ_BUF_SIZE;
3334
3335 /* Read in more data. */
3336 YY_INPUT( (&yy_current_buffer->yy_ch_buf[number_to_move]),
3337 yy_n_chars, num_to_read );
3338
3339 yy_current_buffer->yy_n_chars = yy_n_chars;
3340 }
3341
3342 if ( yy_n_chars == 0 )
3343 {
3344 if ( number_to_move == YY_MORE_ADJ )
3345 {
3346 ret_val = EOB_ACT_END_OF_FILE;
3347 yyrestart( yyin );
3348 }
3349
3350 else
3351 {
3352 ret_val = EOB_ACT_LAST_MATCH;
3353 yy_current_buffer->yy_buffer_status =
3354 YY_BUFFER_EOF_PENDING;
3355 }
3356 }
3357
3358 else
3359 ret_val = EOB_ACT_CONTINUE_SCAN;
3360
3361 yy_n_chars += number_to_move;
3362 yy_current_buffer->yy_ch_buf[yy_n_chars] = YY_END_OF_BUFFER_CHAR;
3363 yy_current_buffer->yy_ch_buf[yy_n_chars + 1] = YY_END_OF_BUFFER_CHAR;
3364
3365 yytext_ptr = &yy_current_buffer->yy_ch_buf[0];
3366
3367 return ret_val;
3368 }
3369
3370
3371/* yy_get_previous_state - get the state just before the EOB char was reached */
3372
3373static yy_state_type yy_get_previous_state()
3374 {
3375 register yy_state_type yy_current_state;
3376 register char *yy_cp;
3377
3378 yy_current_state = yy_start;
3379 yy_state_ptr = yy_state_buf;
3380 *yy_state_ptr++ = yy_current_state;
3381
3382 for ( yy_cp = yytext_ptr + YY_MORE_ADJ; yy_cp < yy_c_buf_p; ++yy_cp )
3383 {
3384 register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
3385 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
3386 {
3387 yy_current_state = (int) yy_def[yy_current_state];
vlm808411d2006-03-14 16:31:37 +00003388 if ( yy_current_state >= 735 )
vlmfa67ddc2004-06-03 03:38:44 +00003389 yy_c = yy_meta[(unsigned int) yy_c];
3390 }
3391 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
3392 *yy_state_ptr++ = yy_current_state;
3393 }
3394
3395 return yy_current_state;
3396 }
3397
3398
3399/* yy_try_NUL_trans - try to make a transition on the NUL character
3400 *
3401 * synopsis
3402 * next_state = yy_try_NUL_trans( current_state );
3403 */
3404
3405#ifdef YY_USE_PROTOS
3406static yy_state_type yy_try_NUL_trans( yy_state_type yy_current_state )
3407#else
3408static yy_state_type yy_try_NUL_trans( yy_current_state )
3409yy_state_type yy_current_state;
3410#endif
3411 {
3412 register int yy_is_jam;
3413
3414 register YY_CHAR yy_c = 1;
3415 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
3416 {
3417 yy_current_state = (int) yy_def[yy_current_state];
vlm808411d2006-03-14 16:31:37 +00003418 if ( yy_current_state >= 735 )
vlmfa67ddc2004-06-03 03:38:44 +00003419 yy_c = yy_meta[(unsigned int) yy_c];
3420 }
3421 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
vlm808411d2006-03-14 16:31:37 +00003422 yy_is_jam = (yy_current_state == 734);
vlmfa67ddc2004-06-03 03:38:44 +00003423 if ( ! yy_is_jam )
3424 *yy_state_ptr++ = yy_current_state;
3425
3426 return yy_is_jam ? 0 : yy_current_state;
3427 }
3428
3429
3430#ifndef YY_NO_UNPUT
3431#ifdef YY_USE_PROTOS
3432static void yyunput( int c, register char *yy_bp )
3433#else
3434static void yyunput( c, yy_bp )
3435int c;
3436register char *yy_bp;
3437#endif
3438 {
3439 register char *yy_cp = yy_c_buf_p;
3440
3441 /* undo effects of setting up yytext */
3442 *yy_cp = yy_hold_char;
3443
3444 if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 )
3445 { /* need to shift things up to make room */
3446 /* +2 for EOB chars. */
3447 register int number_to_move = yy_n_chars + 2;
3448 register char *dest = &yy_current_buffer->yy_ch_buf[
3449 yy_current_buffer->yy_buf_size + 2];
3450 register char *source =
3451 &yy_current_buffer->yy_ch_buf[number_to_move];
3452
3453 while ( source > yy_current_buffer->yy_ch_buf )
3454 *--dest = *--source;
3455
3456 yy_cp += (int) (dest - source);
3457 yy_bp += (int) (dest - source);
3458 yy_current_buffer->yy_n_chars =
3459 yy_n_chars = yy_current_buffer->yy_buf_size;
3460
3461 if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 )
3462 YY_FATAL_ERROR( "flex scanner push-back overflow" );
3463 }
3464
3465 *--yy_cp = (char) c;
3466
3467 if ( c == '\n' )
3468 --yylineno;
3469
3470 yytext_ptr = yy_bp;
3471 yy_hold_char = *yy_cp;
3472 yy_c_buf_p = yy_cp;
3473 }
3474#endif /* ifndef YY_NO_UNPUT */
3475
3476
3477#ifdef __cplusplus
3478static int yyinput()
3479#else
3480static int input()
3481#endif
3482 {
3483 int c;
3484
3485 *yy_c_buf_p = yy_hold_char;
3486
3487 if ( *yy_c_buf_p == YY_END_OF_BUFFER_CHAR )
3488 {
3489 /* yy_c_buf_p now points to the character we want to return.
3490 * If this occurs *before* the EOB characters, then it's a
3491 * valid NUL; if not, then we've hit the end of the buffer.
3492 */
3493 if ( yy_c_buf_p < &yy_current_buffer->yy_ch_buf[yy_n_chars] )
3494 /* This was really a NUL. */
3495 *yy_c_buf_p = '\0';
3496
3497 else
3498 { /* need more input */
3499 int offset = yy_c_buf_p - yytext_ptr;
3500 ++yy_c_buf_p;
3501
3502 switch ( yy_get_next_buffer() )
3503 {
3504 case EOB_ACT_LAST_MATCH:
3505 /* This happens because yy_g_n_b()
3506 * sees that we've accumulated a
3507 * token and flags that we need to
3508 * try matching the token before
3509 * proceeding. But for input(),
3510 * there's no matching to consider.
3511 * So convert the EOB_ACT_LAST_MATCH
3512 * to EOB_ACT_END_OF_FILE.
3513 */
3514
3515 /* Reset buffer status. */
3516 yyrestart( yyin );
3517
3518 /* fall through */
3519
3520 case EOB_ACT_END_OF_FILE:
3521 {
3522 if ( yywrap() )
3523 return EOF;
3524
3525 if ( ! yy_did_buffer_switch_on_eof )
3526 YY_NEW_FILE;
3527#ifdef __cplusplus
3528 return yyinput();
3529#else
3530 return input();
3531#endif
3532 }
3533
3534 case EOB_ACT_CONTINUE_SCAN:
3535 yy_c_buf_p = yytext_ptr + offset;
3536 break;
3537 }
3538 }
3539 }
3540
3541 c = *(unsigned char *) yy_c_buf_p; /* cast for 8-bit char's */
3542 *yy_c_buf_p = '\0'; /* preserve yytext */
3543 yy_hold_char = *++yy_c_buf_p;
3544
3545 if ( c == '\n' )
3546 ++yylineno;
3547
3548 return c;
3549 }
3550
3551
3552#ifdef YY_USE_PROTOS
3553void yyrestart( FILE *input_file )
3554#else
3555void yyrestart( input_file )
3556FILE *input_file;
3557#endif
3558 {
3559 if ( ! yy_current_buffer )
3560 yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE );
3561
3562 yy_init_buffer( yy_current_buffer, input_file );
3563 yy_load_buffer_state();
3564 }
3565
3566
3567#ifdef YY_USE_PROTOS
3568void yy_switch_to_buffer( YY_BUFFER_STATE new_buffer )
3569#else
3570void yy_switch_to_buffer( new_buffer )
3571YY_BUFFER_STATE new_buffer;
3572#endif
3573 {
3574 if ( yy_current_buffer == new_buffer )
3575 return;
3576
3577 if ( yy_current_buffer )
3578 {
3579 /* Flush out information for old buffer. */
3580 *yy_c_buf_p = yy_hold_char;
3581 yy_current_buffer->yy_buf_pos = yy_c_buf_p;
3582 yy_current_buffer->yy_n_chars = yy_n_chars;
3583 }
3584
3585 yy_current_buffer = new_buffer;
3586 yy_load_buffer_state();
3587
3588 /* We don't actually know whether we did this switch during
3589 * EOF (yywrap()) processing, but the only time this flag
3590 * is looked at is after yywrap() is called, so it's safe
3591 * to go ahead and always set it.
3592 */
3593 yy_did_buffer_switch_on_eof = 1;
3594 }
3595
3596
3597#ifdef YY_USE_PROTOS
3598void yy_load_buffer_state( void )
3599#else
3600void yy_load_buffer_state()
3601#endif
3602 {
3603 yy_n_chars = yy_current_buffer->yy_n_chars;
3604 yytext_ptr = yy_c_buf_p = yy_current_buffer->yy_buf_pos;
3605 yyin = yy_current_buffer->yy_input_file;
3606 yy_hold_char = *yy_c_buf_p;
3607 }
3608
3609
3610#ifdef YY_USE_PROTOS
3611YY_BUFFER_STATE yy_create_buffer( FILE *file, int size )
3612#else
3613YY_BUFFER_STATE yy_create_buffer( file, size )
3614FILE *file;
3615int size;
3616#endif
3617 {
3618 YY_BUFFER_STATE b;
3619
3620 b = (YY_BUFFER_STATE) yy_flex_alloc( sizeof( struct yy_buffer_state ) );
3621 if ( ! b )
3622 YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
3623
3624 b->yy_buf_size = size;
3625
3626 /* yy_ch_buf has to be 2 characters longer than the size given because
3627 * we need to put in 2 end-of-buffer characters.
3628 */
3629 b->yy_ch_buf = (char *) yy_flex_alloc( b->yy_buf_size + 2 );
3630 if ( ! b->yy_ch_buf )
3631 YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
3632
3633 b->yy_is_our_buffer = 1;
3634
3635 yy_init_buffer( b, file );
3636
3637 return b;
3638 }
3639
3640
3641#ifdef YY_USE_PROTOS
3642void yy_delete_buffer( YY_BUFFER_STATE b )
3643#else
3644void yy_delete_buffer( b )
3645YY_BUFFER_STATE b;
3646#endif
3647 {
3648 if ( ! b )
3649 return;
3650
3651 if ( b == yy_current_buffer )
3652 yy_current_buffer = (YY_BUFFER_STATE) 0;
3653
3654 if ( b->yy_is_our_buffer )
3655 yy_flex_free( (void *) b->yy_ch_buf );
3656
3657 yy_flex_free( (void *) b );
3658 }
3659
3660
3661#ifndef YY_ALWAYS_INTERACTIVE
3662#ifndef YY_NEVER_INTERACTIVE
3663extern int isatty YY_PROTO(( int ));
3664#endif
3665#endif
3666
3667#ifdef YY_USE_PROTOS
3668void yy_init_buffer( YY_BUFFER_STATE b, FILE *file )
3669#else
3670void yy_init_buffer( b, file )
3671YY_BUFFER_STATE b;
3672FILE *file;
3673#endif
3674
3675
3676 {
3677 yy_flush_buffer( b );
3678
3679 b->yy_input_file = file;
3680 b->yy_fill_buffer = 1;
3681
3682#if YY_ALWAYS_INTERACTIVE
3683 b->yy_is_interactive = 1;
3684#else
3685#if YY_NEVER_INTERACTIVE
3686 b->yy_is_interactive = 0;
3687#else
3688 b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0;
3689#endif
3690#endif
3691 }
3692
3693
3694#ifdef YY_USE_PROTOS
3695void yy_flush_buffer( YY_BUFFER_STATE b )
3696#else
3697void yy_flush_buffer( b )
3698YY_BUFFER_STATE b;
3699#endif
3700
3701 {
3702 if ( ! b )
3703 return;
3704
3705 b->yy_n_chars = 0;
3706
3707 /* We always need two end-of-buffer characters. The first causes
3708 * a transition to the end-of-buffer state. The second causes
3709 * a jam in that state.
3710 */
3711 b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR;
3712 b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR;
3713
3714 b->yy_buf_pos = &b->yy_ch_buf[0];
3715
3716 b->yy_at_bol = 1;
3717 b->yy_buffer_status = YY_BUFFER_NEW;
3718
3719 if ( b == yy_current_buffer )
3720 yy_load_buffer_state();
3721 }
3722
3723
3724#ifndef YY_NO_SCAN_BUFFER
3725#ifdef YY_USE_PROTOS
3726YY_BUFFER_STATE yy_scan_buffer( char *base, yy_size_t size )
3727#else
3728YY_BUFFER_STATE yy_scan_buffer( base, size )
3729char *base;
3730yy_size_t size;
3731#endif
3732 {
3733 YY_BUFFER_STATE b;
3734
3735 if ( size < 2 ||
3736 base[size-2] != YY_END_OF_BUFFER_CHAR ||
3737 base[size-1] != YY_END_OF_BUFFER_CHAR )
3738 /* They forgot to leave room for the EOB's. */
3739 return 0;
3740
3741 b = (YY_BUFFER_STATE) yy_flex_alloc( sizeof( struct yy_buffer_state ) );
3742 if ( ! b )
3743 YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" );
3744
3745 b->yy_buf_size = size - 2; /* "- 2" to take care of EOB's */
3746 b->yy_buf_pos = b->yy_ch_buf = base;
3747 b->yy_is_our_buffer = 0;
3748 b->yy_input_file = 0;
3749 b->yy_n_chars = b->yy_buf_size;
3750 b->yy_is_interactive = 0;
3751 b->yy_at_bol = 1;
3752 b->yy_fill_buffer = 0;
3753 b->yy_buffer_status = YY_BUFFER_NEW;
3754
3755 yy_switch_to_buffer( b );
3756
3757 return b;
3758 }
3759#endif
3760
3761
3762#ifndef YY_NO_SCAN_STRING
3763#ifdef YY_USE_PROTOS
3764YY_BUFFER_STATE yy_scan_string( yyconst char *yy_str )
3765#else
3766YY_BUFFER_STATE yy_scan_string( yy_str )
3767yyconst char *yy_str;
3768#endif
3769 {
3770 int len;
3771 for ( len = 0; yy_str[len]; ++len )
3772 ;
3773
3774 return yy_scan_bytes( yy_str, len );
3775 }
3776#endif
3777
3778
3779#ifndef YY_NO_SCAN_BYTES
3780#ifdef YY_USE_PROTOS
3781YY_BUFFER_STATE yy_scan_bytes( yyconst char *bytes, int len )
3782#else
3783YY_BUFFER_STATE yy_scan_bytes( bytes, len )
3784yyconst char *bytes;
3785int len;
3786#endif
3787 {
3788 YY_BUFFER_STATE b;
3789 char *buf;
3790 yy_size_t n;
3791 int i;
3792
3793 /* Get memory for full buffer, including space for trailing EOB's. */
3794 n = len + 2;
3795 buf = (char *) yy_flex_alloc( n );
3796 if ( ! buf )
3797 YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" );
3798
3799 for ( i = 0; i < len; ++i )
3800 buf[i] = bytes[i];
3801
3802 buf[len] = buf[len+1] = YY_END_OF_BUFFER_CHAR;
3803
3804 b = yy_scan_buffer( buf, n );
3805 if ( ! b )
3806 YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" );
3807
3808 /* It's okay to grow etc. this buffer, and we should throw it
3809 * away when we're done.
3810 */
3811 b->yy_is_our_buffer = 1;
3812
3813 return b;
3814 }
3815#endif
3816
3817
3818#ifndef YY_NO_PUSH_STATE
3819#ifdef YY_USE_PROTOS
3820static void yy_push_state( int new_state )
3821#else
3822static void yy_push_state( new_state )
3823int new_state;
3824#endif
3825 {
3826 if ( yy_start_stack_ptr >= yy_start_stack_depth )
3827 {
3828 yy_size_t new_size;
3829
3830 yy_start_stack_depth += YY_START_STACK_INCR;
3831 new_size = yy_start_stack_depth * sizeof( int );
3832
3833 if ( ! yy_start_stack )
3834 yy_start_stack = (int *) yy_flex_alloc( new_size );
3835
3836 else
3837 yy_start_stack = (int *) yy_flex_realloc(
3838 (void *) yy_start_stack, new_size );
3839
3840 if ( ! yy_start_stack )
3841 YY_FATAL_ERROR(
3842 "out of memory expanding start-condition stack" );
3843 }
3844
3845 yy_start_stack[yy_start_stack_ptr++] = YY_START;
3846
3847 BEGIN(new_state);
3848 }
3849#endif
3850
3851
3852#ifndef YY_NO_POP_STATE
3853static void yy_pop_state()
3854 {
3855 if ( --yy_start_stack_ptr < 0 )
3856 YY_FATAL_ERROR( "start-condition stack underflow" );
3857
3858 BEGIN(yy_start_stack[yy_start_stack_ptr]);
3859 }
3860#endif
3861
3862
3863#ifndef YY_NO_TOP_STATE
3864static int yy_top_state()
3865 {
3866 return yy_start_stack[yy_start_stack_ptr - 1];
3867 }
3868#endif
3869
3870#ifndef YY_EXIT_FAILURE
3871#define YY_EXIT_FAILURE 2
3872#endif
3873
3874#ifdef YY_USE_PROTOS
3875static void yy_fatal_error( yyconst char msg[] )
3876#else
3877static void yy_fatal_error( msg )
3878char msg[];
3879#endif
3880 {
3881 (void) fprintf( stderr, "%s\n", msg );
3882 exit( YY_EXIT_FAILURE );
3883 }
3884
3885
3886
3887/* Redefine yyless() so it works in section 3 code. */
3888
3889#undef yyless
3890#define yyless(n) \
3891 do \
3892 { \
3893 /* Undo effects of setting up yytext. */ \
3894 yytext[yyleng] = yy_hold_char; \
3895 yy_c_buf_p = yytext + n; \
3896 yy_hold_char = *yy_c_buf_p; \
3897 *yy_c_buf_p = '\0'; \
3898 yyleng = n; \
3899 } \
3900 while ( 0 )
3901
3902
3903/* Internal utility routines. */
3904
3905#ifndef yytext_ptr
3906#ifdef YY_USE_PROTOS
3907static void yy_flex_strncpy( char *s1, yyconst char *s2, int n )
3908#else
3909static void yy_flex_strncpy( s1, s2, n )
3910char *s1;
3911yyconst char *s2;
3912int n;
3913#endif
3914 {
3915 register int i;
3916 for ( i = 0; i < n; ++i )
3917 s1[i] = s2[i];
3918 }
3919#endif
3920
3921#ifdef YY_NEED_STRLEN
3922#ifdef YY_USE_PROTOS
3923static int yy_flex_strlen( yyconst char *s )
3924#else
3925static int yy_flex_strlen( s )
3926yyconst char *s;
3927#endif
3928 {
3929 register int n;
3930 for ( n = 0; s[n]; ++n )
3931 ;
3932
3933 return n;
3934 }
3935#endif
3936
3937
3938#ifdef YY_USE_PROTOS
3939static void *yy_flex_alloc( yy_size_t size )
3940#else
3941static void *yy_flex_alloc( size )
3942yy_size_t size;
3943#endif
3944 {
3945 return (void *) malloc( size );
3946 }
3947
3948#ifdef YY_USE_PROTOS
3949static void *yy_flex_realloc( void *ptr, yy_size_t size )
3950#else
3951static void *yy_flex_realloc( ptr, size )
3952void *ptr;
3953yy_size_t size;
3954#endif
3955 {
3956 /* The cast to (char *) in the following accommodates both
3957 * implementations that use char* generic pointers, and those
3958 * that use void* generic pointers. It works with the latter
3959 * because both ANSI C and C++ allow castless assignment from
3960 * any pointer type to void*, and deal with argument conversions
3961 * as though doing an assignment.
3962 */
3963 return (void *) realloc( (char *) ptr, size );
3964 }
3965
3966#ifdef YY_USE_PROTOS
3967static void yy_flex_free( void *ptr )
3968#else
3969static void yy_flex_free( ptr )
3970void *ptr;
3971#endif
3972 {
3973 free( ptr );
3974 }
3975
3976#if YY_MAIN
3977int main()
3978 {
3979 yylex();
3980 return 0;
3981 }
3982#endif
vlma6a84d72006-03-16 10:03:35 +00003983#line 538 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00003984
3985
3986/*
3987 * Very dirty but wonderful hack allowing to rule states from within .y file.
3988 */
vlm9283dbe2004-08-18 04:59:12 +00003989void asn1p_lexer_hack_push_opaque_state() { yy_push_state(opaque); }
vlmfa67ddc2004-06-03 03:38:44 +00003990
3991/*
3992 * Another hack which disables recognizing some tokens when inside WITH SYNTAX.
3993 */
vlm9283dbe2004-08-18 04:59:12 +00003994void asn1p_lexer_hack_enable_with_syntax() { yy_push_state(with_syntax); }
3995
3996/* Yet another */
3997void asn1p_lexer_hack_push_encoding_control() {
3998 yy_push_state(encoding_control);
vlmfa67ddc2004-06-03 03:38:44 +00003999}
4000
vlmec6acd42004-09-29 13:18:09 +00004001static asn1c_integer_t
vlma6a84d72006-03-16 10:03:35 +00004002_lex_atoi(const char *ptr) {
vlmec6acd42004-09-29 13:18:09 +00004003 asn1c_integer_t value;
vlma6a84d72006-03-16 10:03:35 +00004004 if(asn1p_atoi(ptr, &value)) {
vlmfa67ddc2004-06-03 03:38:44 +00004005 fprintf(stderr,
4006 "Value \"%s\" at line %d is too large "
vlm86912f02005-04-05 08:46:22 +00004007 "for this compiler! Please contact the asn1c author.\n",
vlmfa67ddc2004-06-03 03:38:44 +00004008 ptr, yylineno);
vlma6a84d72006-03-16 10:03:35 +00004009 errno = ERANGE;
vlmfa67ddc2004-06-03 03:38:44 +00004010 }
vlmfa67ddc2004-06-03 03:38:44 +00004011 return value;
4012}