blob: 4ba1ec16eeb9bd7af627213b6afc52b12b4b9db4 [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
vlmb8958092006-03-06 11:28:17 +0000315#define YY_NUM_RULES 133
316#define YY_END_OF_BUFFER 134
317static yyconst short int yy_acclist[1240] =
vlmfa67ddc2004-06-03 03:38:44 +0000318 { 0,
vlmb8958092006-03-06 11:28:17 +0000319 134, 132, 133, 127, 132, 133, 127, 133, 130, 132,
320 133, 19, 132, 133, 130, 132, 133, 132, 133, 130,
321 132, 133, 132, 133, 130, 132, 133, 132, 133, 33,
322 132, 133, 32, 132, 133, 130, 132, 133, 132, 133,
323 119, 120, 132, 133, 119, 120, 132, 133, 119, 120,
324 132, 133, 119, 120, 132, 133, 119, 120, 132, 133,
325 119, 120, 132, 133, 119, 120, 132, 133, 119, 120,
326 132, 133, 119, 120, 132, 133, 119, 120, 132, 133,
327 119, 120, 132, 133, 119, 120, 132, 133, 119, 120,
328 132, 133, 119, 120, 132, 133, 119, 120, 132, 133,
vlmfa67ddc2004-06-03 03:38:44 +0000329
vlmb8958092006-03-06 11:28:17 +0000330 119, 120, 132, 133, 119, 120, 132, 133, 119, 120,
331 132, 133, 119, 120, 132, 133, 118, 132, 133, 130,
332 132, 133, 9, 132, 133, 6, 133, 6, 132, 133,
333 8, 132, 133, 8, 132, 133, 11, 13, 132, 133,
334 11, 133, 13, 132, 133, 13, 132, 133, 13, 132,
335 133, 21, 132, 133, 21, 133, 22, 132, 133, 16,
336 132, 133, 16, 133, 18, 132, 133, 18, 132, 133,
337 14, 132, 133, 15, 132, 133, 25, 27, 132, 133,
338 27, 132, 133, 28, 133, 25, 26, 27, 132, 133,
339 25, 26, 27, 132, 133, 124, 132, 133, 125, 132,
vlmfa67ddc2004-06-03 03:38:44 +0000340
vlmb8958092006-03-06 11:28:17 +0000341 133, 125, 133, 132, 133, 126, 132, 133, 127, 19,
342 19, 116, 117, 5, 31, 123, 10, 32, 119, 120,
343 119, 120, 119, 120, 119, 120, 119, 120, 119, 120,
344 120, 119, 120, 119, 120, 119, 120, 119, 120, 43,
345 119, 120, 119, 120, 119, 120, 119, 120, 119, 120,
346 119, 120, 119, 120, 119, 120, 119, 120, 119, 120,
347 120, 120, 119, 120, 119, 120, 119, 120, 119, 120,
348 119, 120, 119, 120, 119, 120, 119, 120, 120, 119,
349 120, 119, 120, 88, 119, 120, 119, 120, 120, 119,
350 120, 119, 120, 119, 120, 119, 120, 120, 119, 120,
vlmfa67ddc2004-06-03 03:38:44 +0000351
vlmb8958092006-03-06 11:28:17 +0000352 119, 120, 119, 120, 119, 120, 119, 120, 119, 120,
353 119, 120, 119, 120, 120, 119, 120, 119, 120, 120,
354 120, 119, 120, 118, 9, 7, 7, 12, 21, 20,
355 16, 25, 25, 26, 25, 26, 124, 125, 131, 116,
356 117, 31, 122, 121, 119, 120, 120, 119, 120, 35,
357 119, 120, 36, 119, 120, 119, 120, 119, 120, 119,
358 120, 40, 119, 120, 119, 120, 119, 120, 119, 120,
359 119, 120, 119, 120, 119, 120, 119, 120, 119, 120,
360 119, 120, 119, 120, 57, 119, 120, 119, 120, 119,
361 120, 119, 120, 119, 120, 119, 120, 119, 120, 120,
vlmfa67ddc2004-06-03 03:38:44 +0000362
vlmb8958092006-03-06 11:28:17 +0000363 120, 119, 120, 119, 120, 119, 120, 119, 120, 119,
364 120, 119, 120, 119, 120, 80, 119, 120, 81, 119,
365 120, 119, 120, 120, 119, 120, 119, 120, 119, 120,
366 120, 119, 120, 91, 119, 120, 119, 120, 119, 120,
367 119, 120, 120, 119, 120, 119, 120, 119, 120, 99,
368 119, 120, 119, 120, 119, 120, 119, 120, 119, 120,
369 119, 120, 119, 120, 120, 119, 120, 119, 120, 119,
370 120, 120, 120, 120, 119, 120, 118, 3, 17, 25,
371 26, 24, 25, 26, 116, 117, 30, 29, 2, 1,
372 119, 120, 119, 120, 119, 120, 119, 120, 119, 120,
vlmfa67ddc2004-06-03 03:38:44 +0000373
vlmb8958092006-03-06 11:28:17 +0000374 119, 120, 119, 120, 119, 120, 119, 120, 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, 65, 119, 120, 120, 120, 119,
378 120, 119, 120, 119, 120, 119, 120, 119, 120, 119,
379 120, 119, 120, 119, 120, 119, 120, 83, 119, 120,
380 120, 119, 120, 119, 120, 119, 120, 120, 119, 120,
381 119, 120, 119, 120, 119, 120, 120, 96, 119, 120,
382 119, 120, 119, 120, 100, 119, 120, 119, 120, 119,
383 120, 119, 120, 104, 119, 120, 106, 119, 120, 120,
vlmfa67ddc2004-06-03 03:38:44 +0000384
vlmb8958092006-03-06 11:28:17 +0000385 119, 120, 119, 120, 119, 120, 119, 120, 119, 120,
386 120, 120, 120, 115, 119, 120, 3, 25, 26, 119,
387 120, 119, 120, 119, 120, 39, 119, 120, 120, 119,
388 120, 119, 120, 119, 120, 46, 119, 120, 119, 120,
389 119, 120, 119, 120, 119, 120, 119, 120, 119, 120,
390 119, 120, 119, 120, 119, 120, 119, 120, 119, 120,
391 119, 120, 119, 120, 64, 119, 120, 120, 120, 120,
392 119, 120, 119, 120, 119, 120, 119, 120, 119, 120,
393 119, 120, 119, 120, 119, 120, 119, 120, 119, 120,
394 120, 119, 120, 87, 119, 120, 119, 120, 120, 119,
vlm2c8c44d2005-03-24 16:22:35 +0000395
vlmb8958092006-03-06 11:28:17 +0000396 120, 119, 120, 119, 120, 120, 119, 120, 119, 120,
397 119, 120, 119, 120, 120, 120, 107, 119, 120, 119,
398 120, 119, 120, 120, 119, 120, 120, 120, 120, 128,
399 25, 26, 34, 119, 120, 119, 120, 119, 120, 120,
400 119, 120, 119, 120, 45, 119, 120, 119, 120, 119,
401 120, 119, 120, 119, 120, 119, 120, 119, 120, 119,
402 120, 119, 120, 119, 120, 119, 120, 59, 119, 120,
403 119, 120, 119, 120, 119, 120, 119, 120, 120, 120,
404 120, 119, 120, 119, 120, 119, 120, 119, 120, 119,
405 120, 119, 120, 119, 120, 119, 120, 119, 120, 119,
vlm2c8c44d2005-03-24 16:22:35 +0000406
vlmb8958092006-03-06 11:28:17 +0000407 120, 120, 85, 119, 120, 119, 120, 120, 119, 120,
408 119, 120, 119, 120, 119, 120, 120, 119, 120, 119,
409 120, 101, 119, 120, 102, 119, 120, 120, 120, 108,
410 119, 120, 119, 120, 120, 120, 120, 120, 120, 25,
411 26, 119, 120, 119, 120, 120, 42, 119, 120, 119,
412 120, 119, 120, 119, 120, 119, 120, 51, 119, 120,
413 52, 119, 120, 119, 120, 119, 120, 55, 119, 120,
414 119, 120, 119, 120, 119, 120, 61, 119, 120, 119,
415 120, 119, 120, 120, 120, 120, 119, 120, 119, 120,
416 72, 119, 120, 73, 119, 120, 119, 120, 119, 120,
vlm2c8c44d2005-03-24 16:22:35 +0000417
vlmb8958092006-03-06 11:28:17 +0000418 119, 120, 77, 119, 120, 119, 120, 119, 120, 119,
419 120, 120, 119, 120, 120, 90, 119, 120, 119, 120,
420 93, 119, 120, 95, 119, 120, 120, 119, 120, 119,
421 120, 120, 120, 119, 120, 111, 120, 120, 120, 120,
422 120, 25, 26, 119, 120, 119, 120, 120, 119, 120,
423 119, 120, 119, 120, 119, 120, 119, 120, 54, 119,
424 120, 119, 120, 119, 120, 60, 119, 120, 119, 120,
425 63, 119, 120, 120, 120, 120, 120, 119, 120, 71,
426 119, 120, 74, 119, 120, 75, 119, 120, 119, 120,
427 119, 120, 120, 119, 120, 120, 89, 119, 120, 120,
vlm2c8c44d2005-03-24 16:22:35 +0000428
vlmb8958092006-03-06 11:28:17 +0000429 119, 120, 120, 119, 120, 98, 119, 120, 120, 120,
430 119, 120, 120, 120, 120, 120, 25, 26, 119, 120,
431 38, 119, 120, 41, 120, 44, 119, 120, 47, 119,
432 120, 119, 120, 119, 120, 119, 120, 119, 120, 119,
433 120, 120, 120, 120, 69, 120, 119, 120, 119, 120,
434 119, 120, 120, 119, 120, 120, 120, 119, 120, 120,
435 103, 120, 120, 109, 119, 120, 120, 120, 120, 120,
436 129, 25, 119, 120, 48, 119, 120, 119, 120, 50,
437 119, 120, 119, 120, 119, 120, 58, 119, 120, 119,
438 120, 120, 120, 120, 70, 119, 120, 119, 120, 119,
vlm2c8c44d2005-03-24 16:22:35 +0000439
vlmb8958092006-03-06 11:28:17 +0000440 120, 120, 119, 120, 120, 120, 119, 120, 120, 119,
441 120, 120, 112, 120, 120, 120, 120, 25, 37, 119,
442 120, 49, 119, 120, 53, 119, 120, 119, 120, 119,
443 120, 120, 120, 120, 119, 120, 119, 120, 120, 119,
444 120, 120, 120, 119, 120, 120, 119, 120, 120, 120,
445 120, 120, 25, 119, 120, 119, 120, 120, 120, 120,
446 76, 119, 120, 78, 119, 120, 79, 120, 119, 120,
447 120, 120, 119, 120, 120, 97, 119, 120, 120, 120,
448 120, 120, 25, 119, 120, 62, 119, 120, 67, 120,
449 120, 68, 120, 119, 120, 84, 120, 120, 92, 119,
vlm2c8c44d2005-03-24 16:22:35 +0000450
vlmb8958092006-03-06 11:28:17 +0000451 120, 120, 105, 120, 120, 120, 114, 120, 25, 119,
452 120, 120, 82, 119, 120, 120, 120, 120, 113, 120,
453 25, 119, 120, 66, 120, 120, 94, 120, 110, 120,
454 25, 56, 119, 120, 86, 120, 23, 25, 4
vlmfa67ddc2004-06-03 03:38:44 +0000455 } ;
456
vlmb8958092006-03-06 11:28:17 +0000457static yyconst short int yy_accept[727] =
vlmfa67ddc2004-06-03 03:38:44 +0000458 { 0,
459 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
vlmb5abdc92005-07-02 21:42:40 +0000460 1, 1, 1, 1, 1, 1, 1, 2, 4, 7,
461 9, 12, 15, 18, 20, 23, 25, 28, 30, 33,
462 36, 39, 41, 45, 49, 53, 57, 61, 65, 69,
463 73, 77, 81, 85, 89, 93, 97, 101, 105, 109,
vlm177a5b62005-09-05 05:17:57 +0000464 113, 117, 120, 123, 126, 128, 131, 134, 137, 141,
465 143, 146, 149, 152, 155, 157, 160, 163, 165, 168,
466 171, 174, 177, 181, 184, 186, 191, 196, 199, 202,
467 204, 206, 209, 209, 210, 211, 212, 212, 213, 213,
468 214, 214, 214, 215, 216, 217, 218, 219, 219, 219,
vlmfa67ddc2004-06-03 03:38:44 +0000469
vlm177a5b62005-09-05 05:17:57 +0000470 221, 223, 225, 227, 229, 231, 232, 234, 236, 238,
471 240, 243, 245, 247, 249, 251, 253, 255, 257, 259,
472 261, 262, 263, 265, 267, 269, 271, 273, 275, 277,
473 279, 280, 282, 284, 287, 289, 290, 292, 294, 296,
474 298, 299, 301, 303, 305, 307, 309, 311, 313, 315,
vlmb8958092006-03-06 11:28:17 +0000475 316, 318, 320, 321, 322, 324, 324, 325, 325, 325,
476 325, 326, 327, 328, 329, 330, 331, 332, 332, 333,
477 335, 337, 338, 339, 340, 340, 340, 341, 341, 342,
478 342, 342, 342, 342, 343, 344, 345, 347, 348, 350,
479 353, 356, 358, 360, 360, 362, 365, 367, 369, 371,
vlmfa67ddc2004-06-03 03:38:44 +0000480
vlmb8958092006-03-06 11:28:17 +0000481 373, 375, 377, 379, 381, 383, 385, 388, 390, 392,
482 394, 396, 398, 400, 401, 402, 404, 406, 408, 410,
483 412, 414, 416, 419, 422, 424, 425, 427, 429, 431,
484 432, 434, 437, 439, 441, 443, 444, 446, 448, 450,
485 453, 455, 457, 459, 461, 463, 465, 466, 468, 470,
486 472, 473, 474, 475, 477, 478, 478, 478, 479, 480,
487 482, 485, 485, 486, 487, 488, 489, 490, 491, 491,
488 491, 491, 493, 495, 497, 499, 501, 503, 505, 507,
vlm177a5b62005-09-05 05:17:57 +0000489 509, 511, 513, 515, 517, 519, 521, 523, 525, 527,
vlmb8958092006-03-06 11:28:17 +0000490 529, 531, 533, 535, 538, 539, 540, 542, 544, 546,
vlmfa67ddc2004-06-03 03:38:44 +0000491
vlmb8958092006-03-06 11:28:17 +0000492 548, 550, 552, 554, 556, 558, 561, 562, 564, 566,
493 568, 569, 571, 573, 575, 577, 578, 581, 583, 585,
494 588, 590, 592, 594, 597, 600, 601, 603, 605, 607,
495 609, 611, 612, 613, 614, 617, 617, 617, 617, 617,
496 618, 620, 620, 622, 624, 626, 629, 630, 632, 634,
497 636, 639, 641, 643, 645, 647, 649, 651, 653, 655,
498 657, 659, 661, 663, 665, 668, 669, 670, 671, 673,
499 675, 677, 679, 681, 683, 685, 687, 689, 691, 692,
500 694, 697, 699, 700, 702, 702, 704, 706, 707, 709,
501 711, 713, 715, 716, 717, 720, 722, 724, 725, 727,
vlmfa67ddc2004-06-03 03:38:44 +0000502
vlmb8958092006-03-06 11:28:17 +0000503 728, 729, 730, 730, 730, 731, 733, 733, 736, 738,
504 740, 741, 743, 745, 748, 750, 752, 754, 756, 758,
505 760, 762, 764, 766, 768, 771, 773, 775, 777, 779,
506 780, 781, 782, 784, 786, 788, 790, 792, 794, 796,
507 798, 800, 802, 802, 803, 806, 808, 809, 811, 813,
508 815, 817, 818, 820, 822, 825, 828, 829, 830, 833,
509 835, 836, 837, 838, 839, 840, 840, 840, 842, 842,
510 844, 846, 847, 850, 852, 854, 856, 858, 861, 864,
511 866, 868, 871, 873, 875, 877, 880, 882, 884, 885,
512 886, 887, 889, 891, 894, 897, 899, 901, 903, 906,
vlmfa67ddc2004-06-03 03:38:44 +0000513
vlmb8958092006-03-06 11:28:17 +0000514 908, 910, 912, 913, 915, 916, 919, 921, 924, 927,
515 928, 930, 932, 933, 934, 936, 938, 939, 940, 941,
516 942, 942, 944, 944, 946, 948, 949, 951, 953, 955,
517 957, 959, 962, 964, 966, 969, 971, 974, 975, 976,
518 977, 978, 980, 983, 986, 989, 991, 993, 994, 996,
519 997, 1000, 1001, 1003, 1004, 1006, 1009, 1010, 1011, 1013,
520 1014, 1015, 1016, 1017, 1017, 1017, 1019, 1019, 1021, 1024,
521 1026, 1029, 1032, 1034, 1036, 1038, 1038, 1040, 1042, 1043,
522 1044, 1045, 1047, 1049, 1051, 1053, 1054, 1056, 1057, 1058,
523 1060, 1061, 1061, 1063, 1064, 1067, 1068, 1069, 1070, 1071,
vlmfa67ddc2004-06-03 03:38:44 +0000524
vlmb8958092006-03-06 11:28:17 +0000525 1071, 1072, 1073, 1073, 1075, 1078, 1080, 1083, 1085, 1087,
526 1090, 1092, 1093, 1094, 1095, 1098, 1100, 1102, 1103, 1105,
527 1106, 1107, 1109, 1110, 1112, 1113, 1115, 1116, 1117, 1118,
528 1119, 1119, 1122, 1125, 1128, 1130, 1132, 1133, 1134, 1135,
529 1137, 1139, 1140, 1142, 1143, 1144, 1146, 1147, 1149, 1150,
530 1151, 1152, 1153, 1154, 1154, 1156, 1158, 1159, 1160, 1161,
531 1164, 1167, 1169, 1171, 1172, 1173, 1175, 1176, 1179, 1180,
532 1181, 1182, 1183, 1184, 1184, 1186, 1189, 1191, 1192, 1194,
533 1196, 1198, 1199, 1202, 1203, 1205, 1206, 1207, 1209, 1210,
534 1210, 1212, 1213, 1216, 1217, 1218, 1219, 1221, 1222, 1222,
vlmb5abdc92005-07-02 21:42:40 +0000535
vlmb8958092006-03-06 11:28:17 +0000536 1224, 1226, 1227, 1229, 1231, 1232, 1232, 1235, 1237, 1239,
537 1239, 1239, 1239, 1239, 1239, 1239, 1239, 1239, 1239, 1239,
538 1239, 1239, 1239, 1239, 1240, 1240
vlmfa67ddc2004-06-03 03:38:44 +0000539 } ;
540
541static yyconst int yy_ec[256] =
542 { 0,
543 1, 1, 1, 1, 1, 1, 1, 1, 2, 3,
vlmb5abdc92005-07-02 21:42:40 +0000544 4, 4, 5, 1, 1, 1, 1, 1, 1, 1,
vlmfa67ddc2004-06-03 03:38:44 +0000545 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
vlmb5abdc92005-07-02 21:42:40 +0000546 1, 2, 6, 7, 1, 1, 1, 8, 9, 10,
547 10, 11, 1, 12, 13, 14, 15, 16, 17, 18,
548 18, 19, 20, 21, 18, 22, 23, 24, 25, 26,
vlm066dc102005-08-22 12:23:54 +0000549 27, 28, 1, 10, 29, 30, 31, 32, 33, 34,
550 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
551 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
552 10, 1, 55, 56, 1, 1, 57, 58, 59, 60,
vlmfa67ddc2004-06-03 03:38:44 +0000553
vlm066dc102005-08-22 12:23:54 +0000554 61, 62, 63, 64, 65, 66, 62, 67, 68, 69,
555 70, 71, 62, 72, 73, 74, 75, 76, 62, 77,
556 62, 78, 79, 80, 81, 1, 1, 1, 1, 1,
vlmfa67ddc2004-06-03 03:38:44 +0000557 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
558 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
559 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
560 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
565 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
566 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
567 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
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
571 } ;
572
vlm066dc102005-08-22 12:23:54 +0000573static yyconst int yy_meta[82] =
vlmfa67ddc2004-06-03 03:38:44 +0000574 { 0,
vlm177a5b62005-09-05 05:17:57 +0000575 1, 2, 3, 4, 4, 1, 5, 6, 7, 1,
576 1, 1, 8, 1, 1, 9, 9, 9, 9, 9,
577 9, 9, 9, 10, 1, 1, 10, 1, 11, 11,
578 11, 11, 11, 11, 12, 12, 12, 12, 12, 12,
579 12, 12, 12, 12, 12, 12, 12, 12, 12, 12,
580 12, 12, 12, 12, 1, 1, 12, 12, 12, 12,
581 12, 12, 12, 12, 12, 12, 12, 12, 12, 12,
582 12, 12, 12, 12, 12, 12, 12, 12, 13, 1,
583 14
vlmb5abdc92005-07-02 21:42:40 +0000584 } ;
vlmfa67ddc2004-06-03 03:38:44 +0000585
vlmb8958092006-03-06 11:28:17 +0000586static yyconst short int yy_base[752] =
vlmb5abdc92005-07-02 21:42:40 +0000587 { 0,
vlm177a5b62005-09-05 05:17:57 +0000588 0, 0, 79, 82, 85, 96, 91, 93, 90, 100,
vlmb8958092006-03-06 11:28:17 +0000589 88, 102, 183, 264, 120, 133, 1529, 1519, 140, 148,
590 1518, 1516, 337, 156, 4350, 157, 1507, 102, 4350, 201,
591 1495, 4350, 403, 200, 263, 281, 206, 287, 452, 90,
vlm177a5b62005-09-05 05:17:57 +0000592 308, 458, 185, 474, 496, 497, 514, 531, 534, 549,
vlmb8958092006-03-06 11:28:17 +0000593 557, 1505, 605, 0, 4350, 4350, 1504, 1503, 4350, 4350,
594 1500, 1503, 4350, 0, 0, 1492, 0, 0, 1472, 4350,
595 4350, 4350, 0, 4350, 4350, 628, 708, 0, 200, 278,
596 276, 4350, 1488, 356, 0, 1486, 1484, 1465, 91, 1464,
597 642, 1466, 101, 644, 1457, 4350, 652, 1442, 732, 646,
vlmfa67ddc2004-06-03 03:38:44 +0000598
vlmb8958092006-03-06 11:28:17 +0000599 647, 662, 698, 663, 697, 1454, 713, 726, 729, 737,
vlm177a5b62005-09-05 05:17:57 +0000600 781, 784, 802, 799, 815, 823, 838, 844, 841, 859,
601 187, 97, 874, 877, 885, 900, 911, 922, 928, 939,
602 158, 952, 955, 968, 976, 169, 979, 992, 1003, 1016,
vlmb8958092006-03-06 11:28:17 +0000603 219, 1032, 1038, 1049, 1055, 1066, 1077, 1083, 1094, 241,
604 1100, 1116, 239, 274, 1115, 0, 1453, 1164, 1176, 1188,
605 0, 4350, 1452, 4350, 0, 4350, 0, 1437, 0, 1416,
606 322, 0, 425, 4350, 1443, 0, 1441, 0, 1440, 110,
607 1415, 297, 119, 1154, 4350, 4350, 1199, 1434, 1183, 1184,
608 1199, 1200, 1248, 1432, 1256, 1259, 1272, 1280, 1288, 1296,
vlmfa67ddc2004-06-03 03:38:44 +0000609
vlmb8958092006-03-06 11:28:17 +0000610 1309, 1317, 1320, 1341, 1342, 1357, 1363, 1374, 1380, 1391,
611 1397, 1408, 1419, 200, 215, 1432, 1440, 1443, 1458, 1461,
612 1464, 1490, 1482, 1493, 1506, 281, 1514, 1527, 1535, 302,
613 1538, 1551, 1559, 1567, 1575, 244, 1588, 1591, 1599, 1612,
614 1620, 1628, 1636, 1649, 1657, 1670, 445, 1678, 1694, 1695,
615 155, 470, 352, 1710, 1431, 1753, 1761, 1430, 4350, 113,
616 1400, 1381, 1419, 1415, 4350, 4350, 4350, 4350, 486, 293,
617 1379, 1755, 1756, 1771, 1777, 1788, 1794, 1810, 1811, 1826,
618 1834, 1842, 1858, 1855, 1866, 1879, 1882, 1897, 1903, 1914,
619 1920, 1931, 1946, 1952, 246, 232, 1963, 1969, 1984, 1985,
vlmfa67ddc2004-06-03 03:38:44 +0000620
vlmb8958092006-03-06 11:28:17 +0000621 2000, 2006, 2021, 2024, 2032, 2045, 418, 2053, 2056, 2069,
622 105, 2077, 2090, 2098, 2106, 446, 2114, 2122, 2135, 2143,
623 2146, 2164, 2161, 2167, 2182, 496, 2185, 2188, 2203, 2209,
624 2220, 472, 322, 193, 2226, 2274, 2296, 2318, 2330, 1412,
625 309, 1377, 2314, 2329, 2345, 2342, 471, 2363, 2366, 2369,
626 2384, 2387, 2395, 2408, 2416, 2429, 2440, 2446, 2457, 2468,
627 2483, 2489, 2500, 2506, 2521, 498, 484, 497, 2522, 2542,
628 2539, 2560, 2559, 2575, 2581, 2592, 2605, 2616, 516, 2613,
629 2629, 2637, 521, 2645, 480, 2653, 2666, 502, 2679, 2682,
630 2690, 2703, 540, 535, 2714, 2720, 2731, 522, 2742, 544,
vlmfa67ddc2004-06-03 03:38:44 +0000631
vlmb8958092006-03-06 11:28:17 +0000632 537, 499, 677, 2785, 4350, 563, 1400, 2769, 2785, 2782,
633 552, 2793, 2806, 2809, 2826, 2832, 2843, 2849, 2864, 2870,
634 2887, 2893, 2904, 2910, 2921, 2927, 2938, 2944, 2960, 618,
635 559, 635, 2961, 2976, 2982, 2993, 2999, 3014, 3020, 3031,
636 3046, 3052, 620, 571, 3063, 3079, 296, 3076, 1369, 3087,
637 3100, 591, 3108, 3123, 3126, 3129, 665, 508, 3144, 3147,
638 589, 688, 711, 700, 759, 3195, 3207, 1367, 1377, 3191,
639 3204, 685, 3207, 3222, 3228, 3239, 3245, 3256, 3262, 3273,
640 3284, 3290, 3301, 3307, 3318, 3329, 3335, 3346, 684, 573,
641 713, 3352, 3363, 3374, 3380, 3391, 3397, 3412, 3413, 3428,
vlmfa67ddc2004-06-03 03:38:44 +0000642
vlmb8958092006-03-06 11:28:17 +0000643 3434, 1360, 697, 3445, 774, 3451, 1364, 3462, 3473, 716,
644 3479, 3494, 804, 772, 3500, 1383, 841, 575, 739, 805,
645 3543, 780, 0, 3537, 3538, 799, 3553, 3561, 3564, 3577,
646 3585, 3593, 3601, 3614, 3622, 3630, 3638, 763, 834, 821,
647 837, 3651, 3659, 3662, 3675, 3683, 3686, 825, 1361, 848,
648 3699, 823, 1357, 863, 3720, 3707, 896, 864, 3723, 866,
649 853, 885, 915, 3771, 1035, 120, 1346, 3755, 3766, 1376,
650 3772, 3783, 3789, 3804, 3805, 926, 3820, 3821, 878, 900,
651 930, 1375, 3836, 3844, 3859, 898, 1343, 933, 932, 1337,
652 920, 313, 1364, 943, 3860, 923, 960, 952, 963, 1232,
vlmfa67ddc2004-06-03 03:38:44 +0000653
vlmb8958092006-03-06 11:28:17 +0000654 4350, 1345, 1313, 3875, 3876, 3891, 3892, 3907, 1320, 3908,
655 3923, 965, 845, 998, 3929, 3940, 3951, 924, 1313, 1001,
656 987, 1317, 974, 1315, 1037, 1335, 1016, 1042, 1044, 1303,
657 1273, 3957, 3968, 3974, 1301, 3985, 962, 1057, 1000, 3996,
658 4002, 1098, 1305, 1031, 1064, 1293, 1079, 1295, 1051, 1118,
659 1126, 1109, 1283, 1245, 1263, 4017, 1099, 1166, 1139, 4018,
660 4033, 1296, 1239, 1140, 1062, 1231, 1188, 0, 1232, 1239,
661 1225, 1268, 1235, 1221, 1209, 4034, 1241, 1060, 1234, 1193,
662 1207, 1141, 0, 1237, 1206, 1238, 1272, 1205, 1171, 1075,
663 1092, 1128, 0, 1209, 1302, 1310, 1075, 1041, 1010, 1027,
vlmfa67ddc2004-06-03 03:38:44 +0000664
vlmb8958092006-03-06 11:28:17 +0000665 1041, 1208, 1038, 971, 940, 791, 0, 843, 0, 691,
666 590, 542, 569, 452, 454, 434, 412, 357, 267, 296,
667 697, 150, 118, 4350, 4350, 4083, 4097, 4111, 4125, 4139,
668 4153, 4167, 4180, 4184, 4196, 4210, 4224, 4236, 4248, 4260,
669 4265, 4270, 4274, 4279, 4283, 4287, 4291, 4303, 4310, 4322,
670 4335
vlmb5abdc92005-07-02 21:42:40 +0000671 } ;
vlmfa67ddc2004-06-03 03:38:44 +0000672
vlmb8958092006-03-06 11:28:17 +0000673static yyconst short int yy_def[752] =
vlmb5abdc92005-07-02 21:42:40 +0000674 { 0,
vlmb8958092006-03-06 11:28:17 +0000675 725, 1, 726, 726, 726, 726, 727, 727, 728, 728,
676 729, 729, 730, 730, 731, 731, 725, 725, 725, 725,
677 725, 732, 725, 733, 725, 725, 725, 725, 725, 725,
678 725, 725, 725, 33, 33, 33, 33, 33, 33, 33,
vlmb5abdc92005-07-02 21:42:40 +0000679 33, 33, 33, 33, 33, 33, 33, 33, 33, 33,
vlmb8958092006-03-06 11:28:17 +0000680 33, 734, 725, 735, 725, 725, 725, 725, 725, 725,
681 725, 725, 725, 736, 736, 725, 737, 737, 725, 725,
682 725, 725, 738, 725, 725, 739, 739, 740, 725, 725,
683 23, 725, 725, 725, 732, 732, 725, 741, 725, 742,
684 733, 733, 725, 725, 725, 725, 725, 725, 743, 33,
vlmfa67ddc2004-06-03 03:38:44 +0000685
vlmb8958092006-03-06 11:28:17 +0000686 33, 33, 33, 33, 33, 744, 33, 33, 33, 33,
vlm066dc102005-08-22 12:23:54 +0000687 33, 33, 33, 33, 33, 33, 33, 33, 33, 33,
vlmb8958092006-03-06 11:28:17 +0000688 744, 744, 33, 33, 33, 33, 33, 33, 33, 33,
689 744, 33, 33, 33, 33, 744, 33, 33, 33, 33,
690 744, 33, 33, 33, 33, 33, 33, 33, 33, 744,
691 33, 33, 744, 744, 33, 745, 734, 725, 725, 725,
692 735, 725, 725, 725, 736, 725, 737, 725, 738, 77,
693 77, 740, 725, 725, 725, 746, 741, 747, 742, 725,
694 725, 748, 725, 725, 725, 725, 743, 749, 33, 33,
695 33, 33, 33, 749, 33, 33, 33, 33, 33, 33,
vlmfa67ddc2004-06-03 03:38:44 +0000696
vlmb5abdc92005-07-02 21:42:40 +0000697 33, 33, 33, 33, 33, 33, 33, 33, 33, 33,
vlmb8958092006-03-06 11:28:17 +0000698 33, 33, 33, 744, 744, 33, 33, 33, 33, 33,
699 33, 33, 33, 33, 33, 744, 33, 33, 33, 744,
700 33, 33, 33, 33, 33, 744, 33, 33, 33, 33,
701 33, 33, 33, 33, 33, 33, 744, 33, 33, 33,
702 744, 744, 744, 33, 745, 725, 725, 725, 725, 77,
703 77, 725, 746, 747, 725, 725, 725, 725, 748, 725,
704 725, 33, 33, 33, 33, 33, 33, 33, 33, 33,
vlmb5abdc92005-07-02 21:42:40 +0000705 33, 33, 33, 33, 33, 33, 33, 33, 33, 33,
vlmb8958092006-03-06 11:28:17 +0000706 33, 33, 33, 33, 744, 744, 33, 33, 33, 33,
vlm177a5b62005-09-05 05:17:57 +0000707
vlmb8958092006-03-06 11:28:17 +0000708 33, 33, 33, 33, 33, 33, 744, 33, 33, 33,
709 744, 33, 33, 33, 33, 744, 33, 33, 33, 33,
710 33, 33, 33, 33, 33, 744, 33, 33, 33, 33,
711 33, 744, 744, 744, 33, 725, 725, 725, 725, 725,
712 77, 725, 33, 33, 33, 33, 744, 33, 33, 33,
vlmb5abdc92005-07-02 21:42:40 +0000713 33, 33, 33, 33, 33, 33, 33, 33, 33, 33,
vlmb8958092006-03-06 11:28:17 +0000714 33, 33, 33, 33, 33, 744, 744, 744, 33, 33,
715 33, 33, 33, 33, 33, 33, 33, 33, 744, 33,
716 33, 33, 744, 33, 187, 33, 33, 744, 33, 33,
717 33, 33, 744, 744, 33, 33, 33, 744, 33, 744,
vlmfa67ddc2004-06-03 03:38:44 +0000718
vlmb8958092006-03-06 11:28:17 +0000719 744, 744, 725, 725, 725, 77, 725, 33, 33, 33,
720 744, 33, 33, 33, 33, 33, 33, 33, 33, 33,
721 33, 33, 33, 33, 33, 33, 33, 33, 33, 744,
722 744, 744, 33, 33, 33, 33, 33, 33, 33, 33,
723 33, 33, 187, 744, 33, 33, 744, 33, 187, 33,
724 33, 744, 33, 33, 33, 33, 744, 744, 33, 33,
725 744, 744, 744, 744, 744, 725, 725, 77, 725, 33,
726 33, 744, 33, 33, 33, 33, 33, 33, 33, 33,
727 33, 33, 33, 33, 33, 33, 33, 33, 744, 744,
728 744, 33, 33, 33, 33, 33, 33, 33, 33, 33,
vlm066dc102005-08-22 12:23:54 +0000729
vlmb8958092006-03-06 11:28:17 +0000730 33, 187, 744, 33, 744, 33, 187, 33, 33, 744,
731 33, 33, 744, 744, 33, 744, 744, 744, 744, 744,
732 725, 77, 750, 33, 33, 744, 33, 33, 33, 33,
733 33, 33, 33, 33, 33, 33, 33, 744, 744, 744,
734 744, 33, 33, 33, 33, 33, 33, 744, 187, 744,
735 33, 744, 187, 744, 33, 33, 744, 744, 33, 744,
736 744, 744, 744, 725, 751, 77, 725, 33, 33, 744,
737 33, 33, 33, 33, 33, 187, 33, 33, 744, 744,
738 744, 744, 33, 33, 33, 744, 187, 744, 744, 187,
739 744, 187, 744, 744, 33, 744, 744, 744, 744, 725,
vlmfa67ddc2004-06-03 03:38:44 +0000740
vlmb8958092006-03-06 11:28:17 +0000741 725, 738, 725, 33, 33, 33, 33, 33, 187, 33,
742 33, 744, 744, 744, 33, 33, 33, 744, 187, 744,
743 744, 187, 744, 187, 744, 744, 744, 744, 744, 738,
744 725, 33, 33, 33, 187, 33, 744, 744, 744, 33,
745 33, 744, 187, 744, 744, 187, 744, 187, 744, 744,
746 744, 744, 738, 725, 187, 33, 744, 744, 744, 33,
747 33, 744, 187, 744, 744, 187, 744, 187, 744, 744,
748 744, 744, 738, 725, 187, 33, 744, 744, 744, 187,
749 744, 744, 187, 744, 744, 744, 744, 744, 738, 725,
750 187, 744, 187, 744, 744, 744, 744, 738, 725, 187,
vlmfa67ddc2004-06-03 03:38:44 +0000751
vlmb8958092006-03-06 11:28:17 +0000752 744, 744, 744, 744, 738, 725, 187, 744, 738, 725,
753 725, 725, 725, 725, 725, 725, 725, 725, 725, 725,
754 725, 725, 725, 725, 0, 725, 725, 725, 725, 725,
755 725, 725, 725, 725, 725, 725, 725, 725, 725, 725,
756 725, 725, 725, 725, 725, 725, 725, 725, 725, 725,
757 725
vlmb5abdc92005-07-02 21:42:40 +0000758 } ;
vlmfa67ddc2004-06-03 03:38:44 +0000759
vlmb8958092006-03-06 11:28:17 +0000760static yyconst short int yy_nxt[4432] =
vlmb5abdc92005-07-02 21:42:40 +0000761 { 0,
762 18, 19, 20, 19, 19, 21, 22, 23, 24, 25,
763 18, 25, 26, 27, 28, 29, 30, 30, 30, 30,
vlm066dc102005-08-22 12:23:54 +0000764 30, 30, 30, 31, 21, 32, 32, 18, 33, 34,
765 35, 36, 37, 38, 39, 40, 41, 40, 40, 40,
766 42, 43, 44, 45, 40, 46, 47, 48, 49, 50,
767 51, 40, 40, 40, 21, 21, 52, 52, 52, 52,
vlmb5abdc92005-07-02 21:42:40 +0000768 52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
vlm066dc102005-08-22 12:23:54 +0000769 52, 52, 52, 52, 52, 52, 52, 52, 53, 21,
770 25, 55, 56, 56, 55, 56, 56, 55, 56, 56,
vlm177a5b62005-09-05 05:17:57 +0000771 68, 57, 65, 60, 57, 60, 66, 58, 55, 56,
vlmfa67ddc2004-06-03 03:38:44 +0000772
vlmb8958092006-03-06 11:28:17 +0000773 56, 61, 65, 61, 68, 62, 66, 62, 58, 194,
774 83, 69, 96, 182, 70, 87, 63, 194, 63, 100,
775 270, 79, 80, 79, 79, 69, 183, 81, 70, 100,
776 724, 100, 602, 100, 79, 80, 79, 79, 100, 265,
777 81, 84, 84, 84, 84, 266, 89, 271, 83, 84,
778 84, 84, 84, 215, 170, 341, 83, 91, 91, 91,
779 91, 170, 723, 383, 83, 83, 71, 194, 72, 93,
780 194, 91, 91, 94, 94, 94, 94, 94, 94, 94,
781 71, 194, 72, 73, 74, 75, 74, 74, 73, 73,
782 73, 73, 73, 73, 73, 73, 73, 73, 32, 194,
vlmfa67ddc2004-06-03 03:38:44 +0000783
vlmb8958092006-03-06 11:28:17 +0000784 82, 173, 173, 173, 173, 194, 73, 73, 73, 73,
785 73, 32, 194, 82, 100, 77, 97, 97, 97, 97,
786 97, 97, 97, 97, 100, 226, 100, 194, 100, 100,
787 332, 194, 107, 130, 230, 100, 108, 73, 73, 100,
788 109, 100, 110, 100, 194, 100, 116, 117, 100, 100,
789 402, 194, 111, 194, 100, 214, 194, 118, 194, 131,
790 295, 74, 73, 74, 73, 74, 75, 74, 74, 73,
791 73, 73, 73, 73, 73, 73, 73, 73, 73, 173,
792 173, 173, 173, 236, 725, 296, 194, 73, 73, 73,
793 73, 73, 100, 194, 270, 367, 77, 721, 112, 268,
vlmfa67ddc2004-06-03 03:38:44 +0000794
vlmb8958092006-03-06 11:28:17 +0000795 725, 268, 113, 251, 100, 114, 100, 247, 194, 269,
796 100, 100, 316, 115, 194, 119, 100, 366, 73, 73,
797 100, 271, 100, 722, 100, 725, 100, 505, 100, 100,
798 100, 725, 120, 252, 194, 100, 123, 100, 720, 124,
799 406, 307, 74, 73, 74, 83, 253, 100, 125, 126,
800 170, 100, 260, 261, 127, 624, 100, 84, 84, 84,
801 84, 87, 311, 170, 194, 88, 88, 88, 88, 88,
vlm177a5b62005-09-05 05:17:57 +0000802 88, 88, 88, 88, 88, 88, 88, 88, 88, 88,
803 88, 88, 88, 88, 88, 88, 88, 88, 88, 88,
vlmb8958092006-03-06 11:28:17 +0000804 88, 401, 89, 90, 90, 90, 90, 90, 90, 90,
vlmfa67ddc2004-06-03 03:38:44 +0000805
vlm177a5b62005-09-05 05:17:57 +0000806 90, 90, 90, 90, 90, 90, 90, 90, 90, 90,
vlmb8958092006-03-06 11:28:17 +0000807 90, 90, 90, 90, 90, 99, 334, 719, 100, 100,
808 100, 100, 100, 100, 100, 100, 173, 173, 173, 173,
809 194, 100, 101, 100, 100, 100, 100, 100, 100, 100,
vlm177a5b62005-09-05 05:17:57 +0000810 100, 100, 102, 100, 103, 100, 104, 100, 100, 100,
vlmb8958092006-03-06 11:28:17 +0000811 100, 105, 100, 100, 100, 100, 100, 194, 194, 106,
vlm177a5b62005-09-05 05:17:57 +0000812 106, 106, 106, 106, 106, 106, 106, 106, 106, 106,
813 106, 106, 106, 106, 106, 106, 106, 106, 106, 106,
vlmb8958092006-03-06 11:28:17 +0000814 106, 100, 194, 194, 194, 718, 128, 100, 268, 379,
815 268, 100, 725, 100, 129, 100, 194, 100, 269, 100,
vlmfa67ddc2004-06-03 03:38:44 +0000816
vlmb8958092006-03-06 11:28:17 +0000817 100, 100, 717, 132, 133, 326, 100, 134, 194, 194,
818 194, 194, 121, 100, 194, 100, 449, 135, 716, 388,
819 194, 715, 100, 122, 137, 100, 100, 138, 194, 142,
820 333, 136, 400, 194, 194, 139, 100, 100, 100, 100,
821 100, 140, 411, 100, 100, 100, 143, 194, 431, 194,
822 144, 147, 194, 100, 430, 100, 194, 100, 452, 148,
823 100, 145, 100, 100, 194, 465, 146, 141, 432, 394,
824 100, 194, 100, 100, 100, 151, 149, 100, 100, 100,
825 444, 152, 100, 194, 514, 194, 100, 194, 100, 461,
826 100, 150, 100, 155, 447, 458, 100, 100, 100, 468,
vlmfa67ddc2004-06-03 03:38:44 +0000827
vlmb8958092006-03-06 11:28:17 +0000828 100, 194, 153, 194, 170, 100, 158, 158, 158, 158,
829 464, 457, 714, 154, 713, 463, 472, 490, 712, 540,
830 159, 159, 159, 159, 159, 159, 160, 160, 169, 503,
831 194, 561, 725, 169, 169, 169, 169, 169, 169, 169,
832 169, 169, 169, 91, 91, 91, 91, 194, 510, 516,
833 180, 169, 169, 169, 169, 169, 502, 91, 91, 184,
834 184, 184, 184, 184, 184, 184, 184, 97, 97, 97,
835 97, 97, 97, 97, 97, 100, 100, 194, 403, 403,
836 403, 403, 169, 169, 489, 100, 100, 100, 100, 100,
837 100, 100, 100, 189, 100, 100, 194, 194, 721, 491,
vlmfa67ddc2004-06-03 03:38:44 +0000838
vlmb8958092006-03-06 11:28:17 +0000839 194, 190, 100, 100, 100, 100, 192, 169, 169, 194,
840 100, 100, 194, 169, 169, 169, 169, 169, 169, 169,
841 169, 169, 169, 194, 722, 194, 100, 100, 194, 513,
842 538, 169, 169, 169, 169, 169, 100, 100, 100, 100,
843 100, 100, 100, 550, 193, 100, 100, 195, 539, 171,
844 191, 194, 100, 526, 100, 100, 100, 405, 100, 517,
845 519, 100, 169, 169, 711, 100, 100, 100, 100, 100,
846 100, 194, 197, 196, 100, 194, 100, 100, 100, 198,
847 100, 541, 554, 518, 194, 100, 194, 169, 188, 188,
848 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
vlmfa67ddc2004-06-03 03:38:44 +0000849
vlmb8958092006-03-06 11:28:17 +0000850 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
851 100, 194, 199, 100, 566, 562, 194, 194, 558, 520,
852 100, 170, 100, 100, 100, 100, 200, 100, 100, 100,
853 201, 100, 100, 194, 552, 194, 579, 194, 100, 202,
854 203, 100, 100, 100, 100, 100, 194, 100, 204, 194,
855 100, 563, 205, 194, 100, 194, 100, 194, 100, 710,
856 194, 570, 100, 100, 100, 194, 100, 100, 206, 207,
857 100, 100, 557, 100, 209, 194, 194, 100, 194, 100,
858 212, 100, 100, 100, 100, 100, 208, 210, 100, 100,
859 194, 211, 100, 216, 581, 589, 586, 194, 100, 582,
vlmfa67ddc2004-06-03 03:38:44 +0000860
vlmb8958092006-03-06 11:28:17 +0000861 100, 213, 100, 100, 638, 560, 100, 100, 194, 217,
862 194, 580, 194, 100, 100, 100, 100, 100, 100, 597,
863 100, 588, 100, 591, 100, 100, 100, 194, 218, 100,
864 219, 598, 194, 100, 596, 194, 194, 594, 725, 100,
865 100, 100, 194, 100, 194, 194, 220, 221, 100, 612,
866 100, 100, 100, 222, 100, 194, 609, 100, 593, 100,
867 613, 100, 618, 100, 194, 100, 623, 100, 100, 224,
868 100, 100, 194, 223, 194, 194, 100, 194, 225, 709,
869 100, 100, 100, 194, 100, 626, 194, 100, 599, 227,
870 621, 100, 642, 100, 100, 100, 100, 100, 100, 194,
vlmfa67ddc2004-06-03 03:38:44 +0000871
vlmb8958092006-03-06 11:28:17 +0000872 100, 614, 228, 100, 620, 100, 627, 100, 100, 100,
873 194, 100, 194, 194, 625, 100, 100, 100, 100, 100,
874 100, 100, 100, 229, 100, 628, 231, 100, 194, 637,
875 657, 100, 100, 100, 629, 100, 600, 600, 600, 600,
876 100, 232, 100, 194, 100, 100, 100, 647, 234, 194,
877 194, 233, 235, 194, 194, 100, 194, 100, 645, 100,
878 237, 100, 639, 194, 100, 644, 707, 100, 659, 194,
879 706, 238, 194, 100, 194, 100, 194, 100, 100, 100,
880 100, 100, 239, 705, 100, 240, 100, 194, 100, 650,
881 100, 194, 100, 244, 100, 100, 100, 100, 100, 664,
vlmfa67ddc2004-06-03 03:38:44 +0000882
vlmb8958092006-03-06 11:28:17 +0000883 242, 649, 241, 100, 658, 100, 100, 243, 652, 100,
884 194, 194, 100, 651, 100, 601, 100, 245, 100, 669,
885 100, 194, 100, 100, 100, 100, 100, 692, 665, 100,
886 194, 100, 682, 100, 700, 100, 248, 100, 194, 100,
887 194, 100, 246, 100, 100, 100, 249, 699, 100, 250,
888 667, 194, 194, 194, 100, 100, 100, 100, 100, 100,
889 662, 677, 254, 100, 100, 158, 158, 158, 158, 184,
890 184, 184, 184, 184, 184, 184, 184, 672, 194, 159,
891 159, 159, 159, 159, 159, 160, 160, 256, 701, 670,
892 671, 160, 160, 160, 160, 160, 160, 160, 160, 257,
vlmfa67ddc2004-06-03 03:38:44 +0000893
vlmb8958092006-03-06 11:28:17 +0000894 194, 679, 681, 160, 160, 160, 160, 160, 160, 160,
895 160, 99, 100, 100, 694, 272, 698, 194, 194, 194,
896 194, 194, 100, 100, 100, 100, 100, 100, 100, 100,
897 678, 100, 100, 600, 600, 600, 600, 194, 100, 273,
898 100, 100, 100, 100, 194, 693, 194, 100, 100, 194,
899 194, 194, 684, 194, 691, 188, 188, 188, 188, 188,
900 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
901 188, 188, 188, 188, 188, 188, 188, 100, 702, 708,
902 194, 690, 689, 683, 194, 100, 680, 100, 100, 100,
903 274, 100, 275, 687, 685, 100, 100, 100, 100, 100,
vlmfa67ddc2004-06-03 03:38:44 +0000904
vlmb8958092006-03-06 11:28:17 +0000905 100, 100, 100, 686, 100, 695, 696, 100, 194, 100,
906 675, 100, 601, 100, 194, 100, 674, 100, 276, 277,
907 100, 100, 194, 100, 673, 100, 668, 100, 100, 100,
908 688, 100, 279, 278, 697, 100, 100, 100, 100, 100,
909 666, 663, 655, 654, 100, 653, 100, 194, 100, 100,
910 100, 648, 100, 646, 643, 280, 100, 100, 100, 100,
911 281, 100, 635, 100, 703, 100, 282, 283, 100, 284,
912 100, 100, 704, 631, 286, 630, 194, 285, 622, 619,
913 100, 100, 100, 100, 100, 100, 100, 194, 194, 100,
914 100, 603, 100, 590, 587, 194, 100, 553, 100, 287,
vlmfa67ddc2004-06-03 03:38:44 +0000915
vlmb8958092006-03-06 11:28:17 +0000916 100, 549, 100, 100, 100, 100, 100, 523, 522, 100,
917 507, 100, 289, 100, 288, 100, 469, 100, 407, 100,
918 100, 100, 100, 100, 340, 342, 100, 178, 100, 292,
919 290, 176, 100, 291, 100, 174, 100, 100, 100, 100,
920 100, 170, 340, 156, 725, 100, 194, 100, 100, 100,
921 266, 100, 178, 176, 293, 262, 100, 170, 100, 294,
922 100, 100, 100, 259, 258, 156, 194, 100, 186, 100,
923 185, 100, 100, 100, 181, 100, 178, 176, 297, 100,
924 100, 298, 299, 100, 100, 300, 100, 100, 100, 175,
925 100, 100, 174, 100, 174, 168, 303, 301, 166, 100,
vlmfa67ddc2004-06-03 03:38:44 +0000926
vlmb8958092006-03-06 11:28:17 +0000927 100, 100, 100, 100, 100, 100, 100, 100, 302, 100,
928 304, 100, 100, 96, 164, 163, 162, 156, 98, 100,
929 95, 100, 100, 100, 86, 100, 83, 83, 725, 100,
930 100, 100, 100, 100, 100, 100, 100, 725, 100, 725,
931 725, 305, 725, 100, 725, 306, 308, 100, 725, 100,
932 725, 725, 725, 100, 100, 100, 100, 100, 725, 309,
933 725, 725, 100, 725, 100, 725, 100, 100, 100, 725,
934 100, 310, 725, 725, 100, 100, 100, 100, 100, 100,
935 100, 100, 725, 100, 725, 312, 100, 725, 100, 725,
936 100, 725, 100, 725, 100, 725, 100, 725, 100, 100,
vlmfa67ddc2004-06-03 03:38:44 +0000937
vlmb8958092006-03-06 11:28:17 +0000938 100, 725, 100, 725, 100, 313, 100, 100, 100, 725,
939 100, 725, 725, 314, 100, 100, 100, 100, 100, 318,
940 100, 725, 725, 100, 315, 725, 725, 317, 100, 100,
941 100, 100, 100, 725, 100, 725, 100, 725, 100, 100,
942 100, 100, 100, 725, 725, 725, 725, 319, 725, 100,
943 725, 100, 320, 100, 725, 100, 725, 100, 725, 100,
944 100, 100, 725, 100, 321, 100, 725, 100, 100, 100,
945 725, 100, 725, 725, 725, 100, 100, 100, 100, 100,
946 725, 725, 725, 322, 100, 725, 100, 725, 100, 725,
947 100, 725, 100, 725, 725, 323, 100, 100, 100, 100,
vlmfa67ddc2004-06-03 03:38:44 +0000948
vlmb8958092006-03-06 11:28:17 +0000949 100, 725, 325, 324, 725, 100, 725, 100, 725, 100,
950 725, 100, 725, 100, 725, 725, 331, 100, 100, 100,
951 327, 100, 328, 100, 100, 725, 100, 329, 725, 725,
952 725, 725, 725, 100, 100, 100, 100, 100, 100, 100,
953 725, 330, 100, 100, 725, 335, 725, 725, 725, 100,
954 725, 100, 725, 100, 336, 336, 336, 336, 100, 725,
955 725, 725, 338, 338, 338, 338, 725, 725, 337, 337,
956 337, 337, 337, 337, 337, 337, 339, 339, 339, 339,
957 339, 339, 339, 339, 100, 100, 725, 725, 725, 725,
958 725, 725, 344, 725, 100, 100, 343, 100, 100, 100,
vlmfa67ddc2004-06-03 03:38:44 +0000959
vlmb8958092006-03-06 11:28:17 +0000960 100, 725, 725, 100, 100, 725, 100, 725, 725, 725,
961 100, 345, 100, 725, 100, 725, 100, 100, 346, 100,
962 100, 725, 725, 100, 725, 100, 348, 100, 725, 100,
963 725, 100, 725, 100, 725, 100, 100, 100, 349, 100,
964 100, 350, 100, 725, 725, 725, 725, 725, 725, 100,
965 100, 100, 100, 100, 100, 100, 725, 725, 100, 100,
966 725, 347, 725, 100, 725, 100, 725, 100, 725, 100,
967 725, 100, 351, 100, 100, 100, 352, 100, 725, 725,
968 725, 100, 100, 100, 100, 100, 354, 100, 725, 353,
969 100, 725, 725, 725, 100, 100, 100, 100, 100, 100,
vlmfa67ddc2004-06-03 03:38:44 +0000970
vlmb8958092006-03-06 11:28:17 +0000971 725, 100, 725, 355, 725, 100, 100, 356, 100, 100,
972 357, 100, 725, 358, 100, 725, 725, 725, 100, 725,
973 100, 100, 100, 100, 725, 100, 100, 100, 725, 359,
974 100, 725, 100, 725, 725, 725, 100, 725, 100, 725,
975 100, 725, 100, 100, 100, 100, 360, 725, 725, 100,
976 361, 100, 725, 100, 725, 100, 725, 100, 725, 100,
977 100, 100, 100, 100, 725, 362, 725, 725, 100, 725,
978 100, 725, 363, 725, 100, 100, 364, 725, 365, 100,
979 725, 100, 725, 725, 725, 100, 725, 100, 725, 100,
980 725, 100, 100, 100, 100, 100, 725, 725, 100, 725,
vlmfa67ddc2004-06-03 03:38:44 +0000981
vlmb8958092006-03-06 11:28:17 +0000982 100, 725, 100, 725, 100, 725, 100, 725, 100, 725,
983 100, 100, 100, 100, 100, 725, 369, 100, 725, 725,
984 370, 725, 725, 100, 100, 100, 100, 100, 100, 100,
985 371, 725, 100, 100, 373, 100, 368, 725, 725, 100,
986 725, 100, 377, 100, 725, 100, 725, 100, 372, 100,
987 100, 374, 725, 100, 100, 375, 725, 725, 725, 725,
988 100, 100, 100, 100, 100, 100, 376, 100, 725, 100,
989 725, 100, 100, 100, 100, 100, 725, 725, 378, 725,
990 100, 725, 100, 380, 100, 100, 100, 725, 100, 725,
991 725, 725, 100, 100, 100, 100, 100, 100, 100, 100,
vlmfa67ddc2004-06-03 03:38:44 +0000992
vlmb8958092006-03-06 11:28:17 +0000993 725, 100, 385, 381, 100, 725, 100, 725, 100, 384,
994 100, 382, 100, 725, 725, 725, 100, 100, 100, 100,
995 100, 725, 725, 725, 725, 100, 725, 100, 725, 100,
996 386, 100, 725, 100, 387, 100, 725, 100, 100, 100,
997 725, 100, 725, 100, 725, 100, 100, 100, 725, 100,
998 725, 100, 725, 100, 100, 100, 725, 100, 725, 725,
999 725, 100, 100, 100, 100, 100, 725, 390, 725, 389,
1000 100, 725, 100, 725, 100, 100, 100, 725, 100, 725,
1001 725, 725, 100, 100, 100, 100, 100, 391, 725, 100,
1002 100, 100, 392, 100, 100, 725, 100, 725, 725, 725,
vlmfa67ddc2004-06-03 03:38:44 +00001003
vlmb8958092006-03-06 11:28:17 +00001004 100, 725, 100, 100, 100, 100, 100, 100, 100, 100,
1005 100, 100, 100, 725, 100, 100, 725, 100, 725, 725,
1006 725, 100, 725, 100, 100, 100, 395, 100, 100, 100,
1007 100, 100, 100, 100, 393, 397, 396, 725, 100, 725,
1008 725, 725, 100, 725, 100, 725, 100, 725, 100, 100,
1009 100, 100, 100, 725, 725, 100, 725, 100, 725, 100,
1010 725, 100, 725, 100, 725, 100, 399, 100, 100, 100,
1011 725, 725, 725, 398, 100, 336, 336, 336, 336, 725,
1012 725, 725, 725, 725, 725, 725, 725, 725, 725, 337,
1013 337, 337, 337, 337, 337, 337, 337, 403, 403, 403,
vlmfa67ddc2004-06-03 03:38:44 +00001014
vlmb8958092006-03-06 11:28:17 +00001015 403, 725, 725, 725, 725, 725, 725, 404, 725, 725,
1016 725, 337, 337, 337, 337, 337, 337, 337, 337, 338,
1017 338, 338, 338, 725, 725, 725, 725, 725, 725, 725,
1018 725, 725, 725, 339, 339, 339, 339, 339, 339, 339,
1019 339, 404, 725, 100, 725, 339, 339, 339, 339, 339,
1020 339, 339, 339, 100, 725, 100, 725, 100, 100, 409,
1021 725, 408, 100, 725, 725, 725, 725, 725, 100, 725,
1022 100, 100, 100, 410, 100, 725, 405, 100, 725, 725,
1023 725, 100, 725, 100, 100, 100, 100, 725, 100, 725,
1024 100, 412, 100, 100, 725, 100, 413, 725, 100, 725,
vlmfa67ddc2004-06-03 03:38:44 +00001025
vlmb8958092006-03-06 11:28:17 +00001026 725, 414, 100, 725, 100, 100, 100, 100, 100, 100,
1027 100, 100, 100, 100, 100, 725, 100, 100, 725, 725,
1028 725, 725, 725, 100, 100, 100, 100, 100, 415, 725,
1029 100, 725, 100, 725, 100, 100, 100, 100, 100, 725,
1030 416, 725, 725, 100, 417, 100, 725, 100, 725, 100,
1031 725, 100, 725, 725, 725, 418, 100, 100, 100, 100,
1032 725, 419, 725, 725, 100, 420, 725, 725, 100, 100,
1033 100, 421, 100, 725, 725, 100, 725, 100, 422, 100,
1034 725, 100, 423, 100, 725, 100, 100, 100, 100, 100,
1035 725, 725, 725, 725, 100, 725, 100, 100, 100, 725,
vlm9283dbe2004-08-18 04:59:12 +00001036
vlmb8958092006-03-06 11:28:17 +00001037 100, 725, 424, 725, 725, 100, 725, 100, 725, 100,
1038 725, 100, 100, 426, 725, 425, 100, 725, 100, 725,
1039 725, 725, 100, 725, 100, 725, 100, 725, 100, 100,
1040 100, 100, 100, 725, 725, 100, 427, 100, 725, 100,
1041 725, 100, 725, 100, 725, 100, 428, 429, 100, 100,
1042 100, 100, 725, 725, 100, 725, 725, 725, 433, 725,
1043 100, 100, 100, 100, 100, 100, 725, 725, 100, 100,
1044 100, 100, 434, 725, 435, 725, 725, 725, 100, 725,
1045 100, 100, 100, 100, 725, 100, 436, 100, 100, 100,
1046 100, 437, 725, 725, 725, 725, 725, 725, 100, 100,
vlm2c8c44d2005-03-24 16:22:35 +00001047
vlmb8958092006-03-06 11:28:17 +00001048 438, 100, 100, 100, 100, 725, 725, 100, 100, 725,
1049 100, 725, 725, 440, 100, 725, 100, 725, 100, 725,
1050 100, 100, 100, 439, 100, 442, 725, 725, 443, 100,
1051 725, 100, 725, 100, 100, 100, 725, 725, 441, 725,
1052 100, 725, 100, 725, 100, 100, 100, 725, 100, 725,
1053 725, 725, 100, 100, 100, 100, 100, 100, 100, 100,
1054 445, 100, 725, 725, 100, 725, 100, 725, 100, 725,
1055 100, 725, 100, 725, 100, 725, 100, 100, 446, 725,
1056 100, 725, 100, 725, 100, 100, 100, 725, 100, 725,
1057 448, 725, 100, 100, 450, 100, 100, 725, 725, 725,
vlm2c8c44d2005-03-24 16:22:35 +00001058
vlmb8958092006-03-06 11:28:17 +00001059 725, 100, 725, 725, 725, 100, 725, 100, 100, 100,
1060 725, 100, 725, 451, 100, 453, 725, 725, 100, 100,
1061 100, 100, 100, 454, 455, 100, 725, 100, 725, 100,
1062 100, 100, 100, 100, 725, 725, 725, 725, 100, 725,
1063 725, 725, 100, 100, 100, 725, 100, 725, 725, 100,
1064 725, 100, 459, 100, 456, 100, 725, 100, 725, 100,
1065 100, 100, 100, 100, 725, 725, 725, 725, 100, 725,
1066 100, 100, 100, 725, 100, 725, 460, 725, 725, 100,
1067 725, 100, 725, 100, 725, 100, 466, 466, 466, 466,
1068 100, 725, 725, 725, 725, 725, 725, 725, 100, 725,
vlm2c8c44d2005-03-24 16:22:35 +00001069
vlmb8958092006-03-06 11:28:17 +00001070 467, 467, 467, 467, 467, 467, 467, 467, 100, 725,
1071 100, 100, 100, 470, 100, 462, 725, 100, 725, 725,
1072 725, 100, 100, 100, 100, 100, 100, 725, 100, 471,
1073 100, 725, 100, 100, 473, 100, 100, 725, 100, 725,
1074 725, 100, 725, 725, 725, 100, 725, 100, 100, 100,
1075 100, 725, 100, 474, 100, 100, 725, 100, 475, 725,
1076 476, 100, 725, 725, 725, 100, 725, 100, 725, 100,
1077 725, 100, 100, 100, 100, 100, 725, 725, 100, 725,
1078 100, 725, 100, 725, 477, 725, 100, 725, 100, 725,
1079 100, 100, 100, 100, 725, 479, 478, 100, 725, 100,
vlmb5abdc92005-07-02 21:42:40 +00001080
vlmb8958092006-03-06 11:28:17 +00001081 725, 725, 725, 100, 725, 100, 725, 100, 725, 100,
1082 725, 100, 100, 100, 725, 725, 100, 480, 100, 481,
1083 725, 725, 100, 725, 482, 725, 100, 725, 100, 725,
1084 100, 725, 100, 100, 100, 100, 100, 725, 484, 100,
1085 725, 100, 725, 100, 725, 483, 725, 100, 725, 100,
1086 100, 100, 100, 100, 725, 725, 100, 725, 100, 725,
1087 100, 725, 100, 485, 100, 725, 100, 100, 100, 100,
1088 100, 725, 725, 100, 725, 100, 725, 100, 725, 100,
1089 487, 100, 725, 100, 486, 100, 100, 100, 488, 100,
1090 100, 725, 100, 725, 492, 725, 725, 725, 725, 100,
vlmb5abdc92005-07-02 21:42:40 +00001091
vlmb8958092006-03-06 11:28:17 +00001092 100, 100, 100, 100, 100, 100, 725, 725, 100, 100,
1093 725, 100, 493, 494, 725, 100, 725, 100, 725, 100,
1094 725, 100, 100, 100, 100, 100, 725, 725, 100, 725,
1095 100, 496, 100, 725, 100, 725, 100, 725, 100, 495,
1096 100, 100, 100, 100, 497, 725, 725, 100, 725, 100,
1097 498, 725, 725, 100, 725, 100, 725, 100, 725, 100,
1098 100, 100, 100, 100, 725, 725, 725, 725, 100, 725,
1099 100, 725, 100, 725, 100, 100, 499, 725, 500, 100,
1100 725, 100, 725, 725, 725, 100, 725, 100, 725, 100,
1101 725, 100, 100, 100, 100, 100, 725, 725, 501, 725,
vlmb5abdc92005-07-02 21:42:40 +00001102
vlmb8958092006-03-06 11:28:17 +00001103 100, 725, 100, 725, 100, 100, 100, 504, 100, 725,
1104 725, 100, 725, 725, 725, 100, 100, 506, 100, 100,
1105 100, 725, 100, 725, 100, 725, 100, 100, 100, 100,
1106 100, 725, 509, 725, 508, 100, 725, 100, 725, 100,
1107 725, 100, 725, 100, 725, 725, 725, 100, 100, 100,
1108 725, 100, 100, 512, 725, 100, 100, 511, 100, 725,
1109 725, 725, 100, 725, 100, 100, 100, 100, 100, 100,
1110 100, 100, 100, 100, 100, 725, 100, 100, 725, 725,
1111 725, 725, 725, 100, 725, 100, 100, 100, 100, 725,
1112 100, 725, 100, 515, 725, 100, 466, 466, 466, 466,
vlmb5abdc92005-07-02 21:42:40 +00001113
vlmb8958092006-03-06 11:28:17 +00001114 725, 725, 725, 725, 725, 725, 725, 725, 725, 725,
1115 467, 467, 467, 467, 467, 467, 467, 467, 521, 725,
1116 100, 725, 467, 467, 467, 467, 467, 467, 467, 467,
1117 100, 725, 100, 100, 100, 725, 100, 725, 524, 100,
1118 525, 725, 725, 100, 725, 100, 100, 100, 100, 725,
1119 100, 100, 100, 725, 527, 100, 725, 100, 725, 725,
1120 725, 100, 725, 100, 725, 100, 725, 100, 100, 528,
1121 100, 100, 725, 725, 100, 529, 100, 725, 100, 725,
1122 100, 530, 100, 725, 100, 100, 100, 100, 100, 725,
1123 725, 100, 725, 100, 725, 100, 725, 100, 725, 100,
vlmb5abdc92005-07-02 21:42:40 +00001124
vlmb8958092006-03-06 11:28:17 +00001125 725, 100, 100, 100, 100, 100, 725, 725, 725, 531,
1126 100, 725, 100, 100, 100, 532, 100, 725, 725, 100,
1127 725, 100, 725, 100, 725, 100, 725, 100, 725, 100,
1128 100, 100, 100, 100, 725, 533, 100, 725, 100, 725,
1129 100, 725, 100, 725, 100, 725, 100, 100, 100, 100,
1130 100, 725, 725, 725, 534, 100, 725, 100, 100, 100,
1131 725, 100, 725, 725, 536, 535, 100, 725, 100, 725,
1132 100, 725, 100, 725, 100, 100, 100, 100, 100, 725,
1133 725, 100, 725, 100, 725, 537, 725, 100, 542, 100,
1134 725, 100, 100, 100, 100, 100, 725, 725, 725, 725,
vlmb5abdc92005-07-02 21:42:40 +00001135
vlmb8958092006-03-06 11:28:17 +00001136 100, 725, 100, 100, 100, 725, 100, 725, 725, 100,
1137 543, 100, 725, 100, 725, 100, 725, 100, 725, 100,
1138 100, 100, 100, 100, 725, 725, 100, 725, 100, 545,
1139 100, 725, 100, 725, 100, 725, 100, 544, 100, 100,
1140 100, 100, 100, 725, 725, 100, 725, 725, 725, 725,
1141 725, 100, 100, 100, 100, 100, 100, 100, 547, 546,
1142 100, 100, 725, 100, 725, 725, 725, 100, 725, 100,
1143 725, 100, 725, 100, 100, 100, 100, 100, 725, 725,
1144 100, 725, 100, 725, 551, 725, 100, 725, 100, 725,
1145 100, 100, 100, 100, 100, 725, 725, 725, 725, 100,
vlmb5abdc92005-07-02 21:42:40 +00001146
vlmb8958092006-03-06 11:28:17 +00001147 725, 100, 100, 100, 725, 100, 725, 548, 100, 725,
1148 100, 555, 100, 725, 100, 725, 100, 725, 100, 725,
1149 100, 100, 100, 100, 725, 725, 556, 100, 559, 100,
1150 725, 725, 725, 100, 725, 100, 725, 100, 725, 100,
1151 725, 100, 100, 100, 564, 564, 564, 564, 100, 725,
1152 725, 725, 725, 725, 725, 725, 725, 725, 565, 565,
1153 565, 565, 565, 565, 565, 565, 100, 100, 569, 725,
1154 725, 725, 725, 568, 725, 725, 100, 100, 100, 100,
1155 100, 100, 100, 725, 725, 100, 100, 725, 725, 725,
1156 100, 725, 100, 100, 100, 725, 100, 725, 571, 725,
vlmb5abdc92005-07-02 21:42:40 +00001157
vlmb8958092006-03-06 11:28:17 +00001158 100, 100, 100, 100, 100, 573, 100, 100, 572, 100,
1159 725, 725, 100, 576, 100, 725, 100, 725, 574, 725,
1160 100, 725, 100, 725, 100, 100, 100, 575, 100, 725,
1161 100, 725, 100, 100, 100, 725, 100, 725, 725, 725,
1162 100, 100, 100, 100, 100, 725, 577, 725, 725, 100,
1163 725, 100, 725, 100, 725, 100, 725, 100, 725, 100,
1164 725, 100, 100, 100, 725, 100, 578, 100, 725, 100,
1165 100, 100, 725, 100, 725, 725, 725, 100, 100, 100,
1166 100, 100, 725, 583, 725, 725, 100, 725, 100, 725,
1167 100, 100, 100, 725, 100, 725, 725, 725, 100, 100,
vlmb5abdc92005-07-02 21:42:40 +00001168
vlmb8958092006-03-06 11:28:17 +00001169 100, 100, 100, 100, 100, 100, 725, 100, 725, 725,
1170 100, 725, 100, 725, 100, 100, 100, 725, 100, 584,
1171 725, 725, 100, 100, 100, 100, 100, 100, 100, 100,
1172 725, 100, 592, 585, 100, 725, 100, 725, 100, 725,
1173 100, 725, 100, 725, 725, 725, 100, 100, 100, 100,
1174 100, 725, 100, 725, 725, 100, 725, 725, 725, 100,
1175 725, 100, 595, 100, 100, 725, 100, 725, 100, 725,
1176 725, 100, 564, 564, 564, 564, 725, 725, 725, 725,
1177 725, 725, 725, 725, 100, 725, 565, 565, 565, 565,
1178 565, 565, 565, 565, 100, 100, 100, 604, 100, 725,
vlmb5abdc92005-07-02 21:42:40 +00001179
vlmb8958092006-03-06 11:28:17 +00001180 725, 100, 725, 100, 725, 100, 725, 100, 725, 100,
1181 725, 100, 100, 100, 100, 100, 725, 725, 100, 725,
1182 100, 606, 100, 725, 100, 725, 100, 725, 100, 605,
1183 100, 100, 100, 100, 100, 725, 725, 100, 607, 725,
1184 725, 725, 725, 100, 100, 100, 608, 100, 100, 100,
1185 100, 610, 100, 100, 725, 725, 725, 725, 725, 100,
1186 611, 100, 100, 100, 100, 100, 725, 725, 100, 100,
1187 725, 725, 725, 100, 725, 100, 725, 100, 725, 100,
1188 725, 615, 725, 100, 100, 100, 616, 100, 100, 100,
1189 725, 725, 100, 725, 725, 617, 725, 725, 100, 100,
vlmb5abdc92005-07-02 21:42:40 +00001190
vlmb8958092006-03-06 11:28:17 +00001191 100, 100, 100, 100, 100, 100, 725, 100, 100, 725,
1192 725, 725, 725, 725, 100, 100, 632, 100, 100, 100,
1193 100, 100, 633, 100, 100, 725, 725, 725, 725, 725,
1194 100, 100, 100, 100, 100, 100, 100, 100, 725, 100,
1195 100, 725, 725, 725, 725, 725, 100, 100, 100, 100,
1196 100, 100, 100, 634, 725, 100, 100, 725, 100, 636,
1197 725, 725, 100, 725, 100, 725, 100, 725, 100, 100,
1198 100, 100, 100, 725, 725, 725, 725, 100, 725, 100,
1199 100, 640, 725, 100, 725, 725, 100, 725, 100, 725,
1200 100, 725, 100, 641, 100, 725, 100, 100, 100, 100,
vlmb5abdc92005-07-02 21:42:40 +00001201
vlmb8958092006-03-06 11:28:17 +00001202 100, 725, 725, 100, 725, 100, 725, 100, 725, 100,
1203 725, 100, 725, 100, 100, 100, 100, 100, 725, 725,
1204 725, 725, 100, 725, 100, 100, 100, 725, 100, 725,
1205 725, 100, 656, 100, 725, 100, 725, 100, 725, 100,
1206 725, 100, 660, 661, 100, 100, 100, 100, 725, 725,
1207 100, 725, 725, 725, 725, 725, 100, 100, 100, 100,
1208 100, 100, 100, 100, 725, 100, 100, 725, 725, 676,
1209 725, 725, 100, 100, 100, 100, 100, 100, 725, 725,
1210 725, 100, 100, 54, 54, 54, 54, 54, 54, 54,
1211 54, 54, 54, 54, 54, 54, 54, 59, 59, 59,
vlmb5abdc92005-07-02 21:42:40 +00001212
vlmb8958092006-03-06 11:28:17 +00001213 59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
1214 59, 64, 64, 64, 64, 64, 64, 64, 64, 64,
1215 64, 64, 64, 64, 64, 67, 67, 67, 67, 67,
1216 67, 67, 67, 67, 67, 67, 67, 67, 67, 76,
1217 76, 76, 76, 76, 76, 76, 76, 76, 76, 76,
1218 76, 76, 76, 78, 78, 78, 78, 78, 78, 78,
1219 78, 78, 78, 78, 78, 78, 78, 85, 85, 85,
1220 85, 725, 85, 85, 85, 85, 85, 85, 85, 85,
1221 85, 92, 92, 92, 725, 725, 92, 725, 92, 725,
1222 92, 157, 157, 725, 157, 157, 161, 161, 725, 725,
vlmb5abdc92005-07-02 21:42:40 +00001223
vlmb8958092006-03-06 11:28:17 +00001224 161, 161, 161, 725, 161, 161, 161, 161, 161, 161,
1225 165, 165, 165, 165, 725, 165, 165, 165, 165, 165,
1226 165, 165, 165, 165, 167, 167, 167, 167, 167, 167,
1227 167, 167, 167, 725, 167, 167, 169, 725, 725, 725,
1228 169, 169, 169, 169, 169, 169, 169, 169, 170, 725,
1229 725, 725, 170, 170, 170, 170, 170, 170, 170, 170,
1230 172, 725, 725, 725, 172, 725, 172, 172, 172, 172,
1231 172, 172, 177, 177, 725, 177, 177, 179, 179, 725,
1232 179, 179, 187, 725, 187, 187, 106, 106, 725, 106,
1233 106, 255, 725, 255, 255, 263, 725, 263, 263, 264,
vlm066dc102005-08-22 12:23:54 +00001234
vlmb8958092006-03-06 11:28:17 +00001235 725, 264, 264, 267, 267, 267, 267, 267, 267, 267,
1236 267, 267, 267, 267, 267, 267, 267, 188, 188, 725,
1237 188, 188, 567, 567, 725, 567, 567, 567, 567, 567,
1238 567, 567, 567, 567, 567, 567, 565, 565, 565, 725,
1239 725, 725, 725, 565, 725, 725, 725, 725, 565, 17,
1240 725, 725, 725, 725, 725, 725, 725, 725, 725, 725,
1241 725, 725, 725, 725, 725, 725, 725, 725, 725, 725,
1242 725, 725, 725, 725, 725, 725, 725, 725, 725, 725,
1243 725, 725, 725, 725, 725, 725, 725, 725, 725, 725,
1244 725, 725, 725, 725, 725, 725, 725, 725, 725, 725,
vlm066dc102005-08-22 12:23:54 +00001245
vlmb8958092006-03-06 11:28:17 +00001246 725, 725, 725, 725, 725, 725, 725, 725, 725, 725,
1247 725, 725, 725, 725, 725, 725, 725, 725, 725, 725,
1248 725, 725, 725, 725, 725, 725, 725, 725, 725, 725,
1249 725
vlmb5abdc92005-07-02 21:42:40 +00001250 } ;
1251
vlmb8958092006-03-06 11:28:17 +00001252static yyconst short int yy_chk[4432] =
vlmb5abdc92005-07-02 21:42:40 +00001253 { 0,
1254 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1255 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1256 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1257 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1258 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1259 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1260 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1261 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
vlm066dc102005-08-22 12:23:54 +00001262 1, 3, 3, 3, 4, 4, 4, 5, 5, 5,
vlm177a5b62005-09-05 05:17:57 +00001263 11, 3, 9, 7, 4, 8, 9, 5, 6, 6,
vlmb5abdc92005-07-02 21:42:40 +00001264
vlm177a5b62005-09-05 05:17:57 +00001265 6, 7, 10, 8, 12, 7, 10, 8, 6, 122,
vlmb8958092006-03-06 11:28:17 +00001266 28, 11, 28, 93, 11, 89, 7, 311, 8, 40,
1267 183, 15, 15, 15, 15, 12, 93, 15, 12, 40,
1268 723, 40, 566, 40, 16, 16, 16, 16, 40, 180,
1269 16, 19, 19, 19, 19, 180, 89, 183, 19, 20,
1270 20, 20, 20, 122, 260, 260, 20, 24, 24, 24,
1271 24, 566, 722, 311, 24, 26, 11, 251, 11, 26,
vlm177a5b62005-09-05 05:17:57 +00001272 131, 24, 24, 26, 26, 26, 26, 26, 26, 26,
1273 12, 136, 12, 13, 13, 13, 13, 13, 13, 13,
1274 13, 13, 13, 13, 13, 13, 13, 13, 15, 121,
vlmb5abdc92005-07-02 21:42:40 +00001275
vlmb8958092006-03-06 11:28:17 +00001276 15, 79, 79, 79, 79, 334, 13, 13, 13, 13,
1277 13, 16, 214, 16, 43, 13, 30, 30, 30, 30,
1278 30, 30, 30, 30, 43, 131, 43, 215, 43, 34,
1279 251, 141, 34, 43, 136, 37, 34, 13, 13, 34,
1280 34, 34, 34, 34, 296, 37, 37, 37, 34, 37,
1281 334, 153, 34, 150, 37, 121, 236, 37, 295, 43,
1282 214, 13, 13, 13, 14, 14, 14, 14, 14, 14,
vlm177a5b62005-09-05 05:17:57 +00001283 14, 14, 14, 14, 14, 14, 14, 14, 14, 80,
vlmb8958092006-03-06 11:28:17 +00001284 80, 80, 80, 141, 81, 215, 154, 14, 14, 14,
1285 14, 14, 35, 226, 270, 296, 14, 720, 35, 182,
vlmb5abdc92005-07-02 21:42:40 +00001286
vlmb8958092006-03-06 11:28:17 +00001287 81, 182, 35, 153, 35, 35, 35, 150, 447, 182,
1288 36, 35, 236, 36, 230, 38, 38, 295, 14, 14,
1289 36, 270, 36, 720, 36, 592, 38, 447, 38, 36,
1290 38, 81, 38, 154, 333, 38, 41, 41, 719, 41,
1291 341, 226, 14, 14, 14, 23, 154, 41, 41, 41,
1292 341, 41, 171, 171, 41, 592, 41, 84, 84, 84,
1293 84, 23, 230, 171, 253, 23, 23, 23, 23, 23,
vlmb5abdc92005-07-02 21:42:40 +00001294 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
1295 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
vlmb8958092006-03-06 11:28:17 +00001296 23, 333, 23, 23, 23, 23, 23, 23, 23, 23,
vlmb5abdc92005-07-02 21:42:40 +00001297
1298 23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
vlmb8958092006-03-06 11:28:17 +00001299 23, 23, 23, 23, 23, 33, 253, 718, 33, 33,
1300 33, 33, 33, 33, 33, 33, 173, 173, 173, 173,
1301 307, 33, 33, 33, 33, 33, 33, 33, 33, 33,
vlm177a5b62005-09-05 05:17:57 +00001302 33, 33, 33, 33, 33, 33, 33, 33, 33, 33,
vlmb8958092006-03-06 11:28:17 +00001303 33, 33, 33, 33, 33, 33, 33, 247, 316, 33,
vlmb5abdc92005-07-02 21:42:40 +00001304 33, 33, 33, 33, 33, 33, 33, 33, 33, 33,
1305 33, 33, 33, 33, 33, 33, 33, 33, 33, 33,
vlmb8958092006-03-06 11:28:17 +00001306 33, 39, 252, 347, 332, 717, 42, 42, 269, 307,
1307 269, 39, 385, 39, 42, 39, 367, 42, 269, 42,
vlmb5abdc92005-07-02 21:42:40 +00001308
vlmb8958092006-03-06 11:28:17 +00001309 39, 42, 716, 44, 44, 247, 42, 44, 326, 368,
1310 366, 402, 39, 44, 388, 44, 385, 44, 715, 316,
1311 458, 714, 44, 39, 45, 45, 46, 45, 379, 46,
1312 252, 44, 332, 383, 398, 45, 46, 45, 46, 45,
1313 46, 45, 347, 47, 45, 46, 47, 394, 367, 401,
1314 47, 48, 393, 47, 366, 47, 400, 47, 388, 48,
1315 48, 47, 47, 49, 411, 402, 47, 45, 368, 326,
1316 48, 431, 48, 49, 48, 49, 48, 49, 50, 48,
1317 379, 49, 49, 444, 458, 490, 51, 518, 50, 398,
1318 50, 48, 50, 51, 383, 394, 51, 50, 51, 406,
vlmb5abdc92005-07-02 21:42:40 +00001319
vlmb8958092006-03-06 11:28:17 +00001320 51, 461, 49, 452, 406, 51, 53, 53, 53, 53,
1321 401, 393, 713, 50, 712, 400, 411, 431, 711, 490,
1322 53, 53, 53, 53, 53, 53, 53, 53, 76, 444,
1323 430, 518, 443, 76, 76, 76, 76, 76, 76, 76,
1324 76, 76, 76, 91, 91, 91, 91, 432, 452, 461,
1325 91, 76, 76, 76, 76, 76, 443, 91, 91, 94,
vlm177a5b62005-09-05 05:17:57 +00001326 94, 94, 94, 94, 94, 94, 94, 97, 97, 97,
vlmb8958092006-03-06 11:28:17 +00001327 97, 97, 97, 97, 97, 100, 101, 457, 403, 403,
1328 403, 403, 76, 76, 430, 100, 101, 100, 101, 100,
1329 101, 102, 104, 101, 100, 101, 489, 472, 721, 432,
vlmb5abdc92005-07-02 21:42:40 +00001330
vlmb8958092006-03-06 11:28:17 +00001331 462, 102, 104, 102, 104, 102, 104, 76, 77, 503,
1332 102, 104, 464, 77, 77, 77, 77, 77, 77, 77,
1333 77, 77, 77, 463, 721, 491, 105, 103, 510, 457,
1334 489, 77, 77, 77, 77, 77, 105, 103, 105, 103,
1335 105, 103, 107, 503, 105, 105, 103, 107, 489, 77,
1336 103, 519, 107, 472, 107, 108, 107, 403, 109, 462,
1337 464, 107, 77, 77, 710, 108, 110, 108, 109, 108,
1338 109, 465, 109, 108, 108, 538, 110, 109, 110, 110,
1339 110, 491, 510, 463, 514, 110, 505, 77, 99, 99,
vlm177a5b62005-09-05 05:17:57 +00001340 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
vlmb5abdc92005-07-02 21:42:40 +00001341
vlm177a5b62005-09-05 05:17:57 +00001342 99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
vlmb8958092006-03-06 11:28:17 +00001343 111, 526, 112, 112, 522, 519, 513, 520, 514, 465,
1344 111, 522, 111, 112, 111, 112, 112, 112, 114, 111,
1345 113, 113, 112, 540, 505, 552, 538, 548, 114, 114,
1346 114, 113, 114, 113, 115, 113, 539, 114, 115, 541,
1347 113, 520, 116, 517, 115, 708, 115, 613, 115, 706,
1348 550, 526, 116, 115, 116, 561, 116, 117, 117, 117,
1349 119, 116, 513, 118, 118, 554, 558, 117, 560, 117,
vlm177a5b62005-09-05 05:17:57 +00001350 119, 117, 119, 118, 119, 118, 117, 118, 120, 119,
vlmb8958092006-03-06 11:28:17 +00001351 579, 118, 118, 123, 540, 552, 548, 562, 120, 541,
vlmb5abdc92005-07-02 21:42:40 +00001352
vlmb8958092006-03-06 11:28:17 +00001353 120, 120, 120, 123, 613, 517, 124, 120, 557, 124,
1354 586, 539, 580, 123, 125, 123, 124, 123, 124, 561,
1355 124, 550, 123, 554, 125, 124, 125, 563, 125, 126,
1356 126, 562, 591, 125, 560, 596, 618, 558, 576, 126,
1357 127, 126, 581, 126, 589, 588, 126, 126, 126, 579,
1358 127, 128, 127, 127, 127, 594, 576, 129, 557, 127,
1359 580, 128, 586, 128, 598, 128, 591, 129, 130, 129,
1360 128, 129, 597, 128, 637, 599, 129, 612, 130, 705,
1361 130, 132, 130, 704, 133, 596, 623, 130, 563, 132,
1362 589, 132, 618, 132, 133, 132, 133, 134, 133, 621,
vlmb5abdc92005-07-02 21:42:40 +00001363
vlmb8958092006-03-06 11:28:17 +00001364 132, 581, 133, 133, 588, 135, 597, 134, 137, 134,
1365 614, 134, 639, 620, 594, 135, 134, 135, 137, 135,
1366 137, 138, 137, 135, 135, 598, 137, 137, 627, 612,
1367 637, 138, 139, 138, 599, 138, 565, 565, 565, 565,
1368 138, 138, 139, 644, 139, 140, 139, 623, 140, 625,
1369 703, 139, 140, 701, 628, 140, 629, 140, 621, 140,
1370 142, 142, 614, 649, 140, 620, 700, 143, 639, 638,
1371 699, 142, 678, 142, 665, 142, 645, 143, 144, 143,
1372 142, 143, 143, 698, 145, 143, 143, 697, 144, 627,
1373 144, 647, 144, 147, 145, 146, 145, 144, 145, 644,
vlmb5abdc92005-07-02 21:42:40 +00001374
vlmb8958092006-03-06 11:28:17 +00001375 145, 625, 144, 145, 638, 146, 147, 146, 629, 146,
1376 642, 657, 148, 628, 146, 565, 147, 148, 147, 649,
1377 147, 652, 148, 149, 148, 147, 148, 678, 645, 151,
1378 650, 148, 665, 149, 691, 149, 151, 149, 651, 151,
1379 692, 151, 149, 151, 155, 152, 152, 690, 151, 152,
1380 647, 659, 664, 682, 155, 152, 155, 152, 155, 152,
1381 642, 657, 155, 155, 152, 158, 158, 158, 158, 184,
1382 184, 184, 184, 184, 184, 184, 184, 652, 658, 158,
1383 158, 158, 158, 158, 158, 158, 158, 159, 692, 650,
1384 651, 159, 159, 159, 159, 159, 159, 159, 159, 160,
vlmb5abdc92005-07-02 21:42:40 +00001385
vlmb8958092006-03-06 11:28:17 +00001386 667, 659, 664, 160, 160, 160, 160, 160, 160, 160,
1387 160, 187, 189, 190, 682, 189, 689, 688, 685, 681,
1388 702, 694, 189, 190, 189, 190, 189, 190, 191, 192,
1389 658, 189, 190, 600, 600, 600, 600, 671, 191, 192,
1390 191, 192, 191, 192, 669, 680, 679, 191, 192, 684,
1391 686, 670, 667, 677, 675, 187, 187, 187, 187, 187,
1392 187, 187, 187, 187, 187, 187, 187, 187, 187, 187,
1393 187, 187, 187, 187, 187, 187, 187, 193, 694, 702,
1394 672, 674, 673, 666, 687, 195, 663, 193, 196, 193,
1395 193, 193, 195, 671, 669, 195, 193, 195, 196, 195,
vlmb5abdc92005-07-02 21:42:40 +00001396
vlmb8958092006-03-06 11:28:17 +00001397 196, 197, 196, 670, 195, 684, 686, 196, 662, 198,
1398 655, 197, 600, 197, 695, 197, 654, 199, 197, 198,
1399 197, 198, 696, 198, 653, 200, 648, 199, 198, 199,
1400 672, 199, 200, 199, 687, 200, 199, 200, 201, 200,
1401 646, 643, 635, 631, 200, 630, 202, 626, 201, 203,
1402 201, 624, 201, 622, 619, 201, 202, 201, 202, 203,
1403 202, 203, 609, 203, 695, 202, 203, 203, 203, 204,
1404 204, 205, 696, 603, 205, 602, 593, 204, 590, 587,
1405 204, 205, 204, 205, 204, 205, 206, 582, 570, 204,
1406 205, 567, 207, 553, 549, 516, 206, 507, 206, 206,
vlmb5abdc92005-07-02 21:42:40 +00001407
vlmb8958092006-03-06 11:28:17 +00001408 206, 502, 207, 208, 207, 206, 207, 469, 468, 209,
1409 449, 207, 209, 208, 208, 208, 407, 208, 342, 209,
1410 210, 209, 208, 209, 340, 271, 211, 264, 209, 211,
1411 210, 263, 210, 210, 210, 262, 211, 212, 211, 210,
1412 211, 261, 258, 255, 194, 211, 188, 212, 213, 212,
1413 181, 212, 179, 177, 212, 175, 212, 170, 213, 213,
1414 213, 216, 213, 168, 163, 157, 106, 213, 98, 217,
1415 95, 216, 218, 216, 92, 216, 90, 88, 216, 217,
1416 216, 217, 218, 217, 218, 218, 218, 219, 217, 87,
1417 220, 218, 86, 221, 83, 69, 221, 219, 66, 219,
vlmb5abdc92005-07-02 21:42:40 +00001418
vlmb8958092006-03-06 11:28:17 +00001419 220, 219, 220, 221, 220, 221, 219, 221, 220, 220,
1420 222, 223, 221, 62, 61, 58, 57, 52, 31, 222,
1421 27, 223, 224, 223, 22, 223, 21, 18, 17, 222,
1422 223, 222, 224, 222, 224, 225, 224, 0, 222, 0,
1423 0, 224, 0, 227, 0, 225, 227, 225, 0, 225,
1424 0, 0, 0, 227, 225, 227, 228, 227, 0, 228,
1425 0, 0, 227, 0, 229, 0, 228, 231, 228, 0,
1426 228, 229, 0, 0, 229, 228, 229, 231, 229, 231,
1427 232, 231, 0, 229, 0, 231, 231, 0, 233, 0,
1428 232, 0, 232, 0, 232, 0, 234, 0, 233, 232,
vlmb5abdc92005-07-02 21:42:40 +00001429
vlmb8958092006-03-06 11:28:17 +00001430 233, 0, 233, 0, 235, 233, 234, 233, 234, 0,
1431 234, 0, 0, 234, 235, 234, 235, 237, 235, 238,
1432 238, 0, 0, 235, 235, 0, 0, 237, 239, 237,
1433 238, 237, 238, 0, 238, 0, 237, 0, 239, 238,
1434 239, 240, 239, 0, 0, 0, 0, 239, 0, 241,
1435 0, 240, 241, 240, 0, 240, 0, 242, 0, 241,
1436 240, 241, 0, 241, 242, 243, 0, 242, 241, 242,
1437 0, 242, 0, 0, 0, 243, 242, 243, 244, 243,
1438 0, 0, 0, 243, 243, 0, 245, 0, 244, 0,
1439 244, 0, 244, 0, 0, 244, 245, 244, 245, 246,
vlmb5abdc92005-07-02 21:42:40 +00001440
vlmb8958092006-03-06 11:28:17 +00001441 245, 0, 246, 245, 0, 245, 0, 248, 0, 246,
1442 0, 246, 0, 246, 0, 0, 250, 248, 246, 248,
1443 248, 248, 248, 249, 250, 0, 248, 248, 0, 0,
1444 0, 0, 0, 249, 250, 249, 250, 249, 250, 254,
1445 0, 249, 249, 250, 0, 254, 0, 0, 0, 254,
1446 0, 254, 0, 254, 256, 256, 256, 256, 254, 0,
1447 0, 0, 257, 257, 257, 257, 0, 0, 256, 256,
1448 256, 256, 256, 256, 256, 256, 257, 257, 257, 257,
1449 257, 257, 257, 257, 272, 273, 0, 0, 0, 0,
1450 0, 0, 273, 0, 272, 273, 272, 273, 272, 273,
vlmb5abdc92005-07-02 21:42:40 +00001451
vlmb8958092006-03-06 11:28:17 +00001452 274, 0, 0, 272, 273, 0, 275, 0, 0, 0,
1453 274, 274, 274, 0, 274, 0, 275, 276, 275, 274,
1454 275, 0, 0, 277, 0, 275, 277, 276, 0, 276,
1455 0, 276, 0, 277, 0, 277, 276, 277, 278, 278,
1456 279, 279, 277, 0, 0, 0, 0, 0, 0, 278,
1457 279, 278, 279, 278, 279, 280, 0, 0, 278, 279,
1458 0, 276, 0, 281, 0, 280, 0, 280, 0, 280,
1459 0, 282, 280, 281, 280, 281, 281, 281, 0, 0,
1460 0, 282, 281, 282, 284, 282, 283, 283, 0, 282,
1461 282, 0, 0, 0, 284, 285, 284, 283, 284, 283,
vlmb5abdc92005-07-02 21:42:40 +00001462
vlmb8958092006-03-06 11:28:17 +00001463 0, 283, 0, 284, 0, 285, 283, 285, 286, 285,
1464 286, 287, 0, 287, 285, 0, 0, 0, 286, 0,
1465 286, 287, 286, 287, 0, 287, 288, 286, 0, 288,
1466 287, 0, 289, 0, 0, 0, 288, 0, 288, 0,
1467 288, 0, 289, 290, 289, 288, 289, 0, 0, 291,
1468 290, 289, 0, 290, 0, 290, 0, 290, 0, 291,
1469 292, 291, 290, 291, 0, 291, 0, 0, 291, 0,
1470 292, 0, 292, 0, 292, 293, 292, 0, 293, 292,
1471 0, 294, 0, 0, 0, 293, 0, 293, 0, 293,
1472 0, 294, 297, 294, 293, 294, 0, 0, 298, 0,
vlmb5abdc92005-07-02 21:42:40 +00001473
vlmb8958092006-03-06 11:28:17 +00001474 294, 0, 297, 0, 297, 0, 297, 0, 298, 0,
1475 298, 297, 298, 299, 300, 0, 298, 298, 0, 0,
1476 299, 0, 0, 299, 300, 299, 300, 299, 300, 301,
1477 300, 0, 299, 300, 302, 302, 297, 0, 0, 301,
1478 0, 301, 304, 301, 0, 302, 0, 302, 301, 302,
1479 303, 302, 0, 304, 302, 303, 0, 0, 0, 0,
1480 303, 305, 303, 304, 303, 304, 303, 304, 0, 303,
1481 0, 305, 304, 305, 306, 305, 0, 0, 305, 0,
1482 305, 0, 308, 308, 306, 309, 306, 0, 306, 0,
1483 0, 0, 308, 306, 308, 309, 308, 309, 310, 309,
vlmb5abdc92005-07-02 21:42:40 +00001484
vlmb8958092006-03-06 11:28:17 +00001485 0, 308, 313, 309, 309, 0, 312, 0, 310, 312,
1486 310, 310, 310, 0, 0, 0, 312, 310, 312, 313,
1487 312, 0, 0, 0, 0, 312, 0, 314, 0, 313,
1488 314, 313, 0, 313, 315, 315, 0, 314, 313, 314,
1489 0, 314, 0, 317, 0, 315, 314, 315, 0, 315,
1490 0, 318, 0, 317, 315, 317, 0, 317, 0, 0,
1491 0, 318, 317, 318, 319, 318, 0, 319, 0, 318,
1492 318, 0, 320, 0, 319, 321, 319, 0, 319, 0,
1493 0, 0, 320, 319, 320, 321, 320, 321, 0, 321,
1494 323, 320, 322, 322, 321, 0, 324, 0, 0, 0,
vlmb5abdc92005-07-02 21:42:40 +00001495
vlmb8958092006-03-06 11:28:17 +00001496 323, 0, 323, 322, 323, 322, 324, 322, 324, 323,
1497 324, 325, 322, 0, 327, 324, 0, 328, 0, 0,
1498 0, 325, 0, 325, 327, 325, 327, 328, 327, 328,
1499 325, 328, 329, 327, 323, 329, 328, 0, 330, 0,
1500 0, 0, 329, 0, 329, 0, 329, 0, 330, 331,
1501 330, 329, 330, 0, 0, 335, 0, 330, 0, 331,
1502 0, 331, 0, 331, 0, 335, 331, 335, 331, 335,
1503 0, 0, 0, 330, 335, 336, 336, 336, 336, 0,
1504 0, 0, 0, 0, 0, 0, 0, 0, 0, 336,
1505 336, 336, 336, 336, 336, 336, 336, 337, 337, 337,
vlmb5abdc92005-07-02 21:42:40 +00001506
vlmb8958092006-03-06 11:28:17 +00001507 337, 0, 0, 0, 0, 0, 0, 337, 0, 0,
1508 0, 337, 337, 337, 337, 337, 337, 337, 337, 338,
1509 338, 338, 338, 0, 0, 0, 0, 0, 0, 0,
1510 0, 0, 0, 338, 338, 338, 338, 338, 338, 338,
1511 338, 339, 0, 343, 0, 339, 339, 339, 339, 339,
1512 339, 339, 339, 343, 0, 343, 0, 343, 344, 344,
1513 0, 343, 343, 0, 0, 0, 0, 0, 344, 0,
1514 344, 346, 344, 345, 345, 0, 337, 344, 0, 0,
1515 0, 346, 0, 346, 345, 346, 345, 0, 345, 0,
1516 346, 348, 348, 345, 0, 349, 349, 0, 350, 0,
vlmb5abdc92005-07-02 21:42:40 +00001517
vlmb8958092006-03-06 11:28:17 +00001518 0, 350, 348, 0, 348, 349, 348, 349, 350, 349,
1519 350, 348, 350, 351, 349, 0, 352, 350, 0, 0,
1520 0, 0, 0, 351, 353, 351, 352, 351, 352, 0,
1521 352, 0, 351, 0, 353, 352, 353, 354, 353, 0,
1522 353, 0, 0, 353, 354, 355, 0, 354, 0, 354,
1523 0, 354, 0, 0, 0, 355, 354, 355, 356, 355,
1524 0, 356, 0, 0, 355, 356, 0, 0, 356, 357,
1525 356, 357, 356, 0, 0, 358, 0, 356, 358, 357,
1526 0, 357, 358, 357, 0, 358, 359, 358, 357, 358,
1527 0, 0, 0, 0, 358, 0, 359, 360, 359, 0,
vlmb5abdc92005-07-02 21:42:40 +00001528
vlmb8958092006-03-06 11:28:17 +00001529 359, 0, 359, 0, 0, 359, 0, 360, 0, 360,
1530 0, 360, 361, 361, 0, 360, 360, 0, 362, 0,
1531 0, 0, 361, 0, 361, 0, 361, 0, 362, 363,
1532 362, 361, 362, 0, 0, 364, 362, 362, 0, 363,
1533 0, 363, 0, 363, 0, 364, 363, 364, 363, 364,
1534 365, 369, 0, 0, 364, 0, 0, 0, 369, 0,
1535 365, 369, 365, 369, 365, 369, 0, 0, 371, 365,
1536 369, 370, 370, 0, 370, 0, 0, 0, 371, 0,
1537 371, 370, 371, 370, 0, 370, 371, 371, 373, 372,
1538 370, 372, 0, 0, 0, 0, 0, 0, 373, 372,
vlmb5abdc92005-07-02 21:42:40 +00001539
vlmb8958092006-03-06 11:28:17 +00001540 373, 372, 373, 372, 374, 0, 0, 373, 372, 0,
1541 375, 0, 0, 375, 374, 0, 374, 0, 374, 0,
1542 375, 376, 375, 374, 375, 377, 0, 0, 378, 375,
1543 0, 376, 0, 376, 377, 376, 0, 0, 376, 0,
1544 376, 0, 380, 0, 377, 378, 377, 0, 377, 0,
1545 0, 0, 380, 377, 380, 378, 380, 378, 381, 378,
1546 380, 380, 0, 0, 378, 0, 382, 0, 381, 0,
1547 381, 0, 381, 0, 384, 0, 382, 381, 382, 0,
1548 382, 0, 386, 0, 384, 382, 384, 0, 384, 0,
1549 384, 0, 386, 384, 386, 387, 386, 0, 0, 0,
vlmb5abdc92005-07-02 21:42:40 +00001550
vlmb8958092006-03-06 11:28:17 +00001551 0, 386, 0, 0, 0, 387, 0, 387, 389, 387,
1552 0, 390, 0, 387, 387, 389, 0, 0, 389, 391,
1553 389, 390, 389, 390, 391, 390, 0, 389, 0, 391,
1554 390, 391, 392, 391, 0, 0, 0, 0, 391, 0,
1555 0, 0, 392, 395, 392, 0, 392, 0, 0, 396,
1556 0, 392, 396, 395, 392, 395, 0, 395, 0, 396,
1557 397, 396, 395, 396, 0, 0, 0, 0, 396, 0,
1558 397, 399, 397, 0, 397, 0, 397, 0, 0, 397,
1559 0, 399, 0, 399, 0, 399, 404, 404, 404, 404,
1560 399, 0, 0, 0, 0, 0, 0, 0, 408, 0,
vlmb5abdc92005-07-02 21:42:40 +00001561
vlmb8958092006-03-06 11:28:17 +00001562 404, 404, 404, 404, 404, 404, 404, 404, 408, 0,
1563 408, 410, 408, 409, 409, 399, 0, 408, 0, 0,
1564 0, 410, 412, 410, 409, 410, 409, 0, 409, 410,
1565 410, 0, 412, 409, 412, 413, 412, 0, 414, 0,
1566 0, 412, 0, 0, 0, 413, 0, 413, 414, 413,
1567 414, 0, 414, 413, 413, 415, 0, 414, 415, 0,
1568 416, 416, 0, 0, 0, 415, 0, 415, 0, 415,
1569 0, 416, 417, 416, 415, 416, 0, 0, 418, 0,
1570 416, 0, 417, 0, 417, 0, 417, 0, 418, 0,
1571 418, 417, 418, 419, 0, 419, 418, 418, 0, 420,
vlmb5abdc92005-07-02 21:42:40 +00001572
vlmb8958092006-03-06 11:28:17 +00001573 0, 0, 0, 419, 0, 419, 0, 419, 0, 420,
1574 0, 420, 419, 420, 0, 0, 421, 420, 420, 421,
1575 0, 0, 422, 0, 422, 0, 421, 0, 421, 0,
1576 421, 0, 422, 423, 422, 421, 422, 0, 424, 424,
1577 0, 422, 0, 423, 0, 423, 0, 423, 0, 424,
1578 425, 424, 423, 424, 0, 0, 426, 0, 424, 0,
1579 425, 0, 425, 426, 425, 0, 426, 427, 426, 425,
1580 426, 0, 0, 428, 0, 426, 0, 427, 0, 427,
1581 428, 427, 0, 428, 427, 428, 427, 428, 429, 429,
1582 433, 0, 428, 0, 433, 0, 0, 0, 0, 429,
vlmb5abdc92005-07-02 21:42:40 +00001583
vlmb8958092006-03-06 11:28:17 +00001584 433, 429, 433, 429, 433, 434, 0, 0, 429, 433,
1585 0, 435, 434, 435, 0, 434, 0, 434, 0, 434,
1586 0, 435, 436, 435, 434, 435, 0, 0, 437, 0,
1587 435, 437, 436, 0, 436, 0, 436, 0, 437, 436,
1588 437, 436, 437, 438, 438, 0, 0, 437, 0, 439,
1589 439, 0, 0, 438, 0, 438, 0, 438, 0, 439,
1590 440, 439, 438, 439, 0, 0, 0, 0, 439, 0,
1591 440, 0, 440, 0, 440, 441, 440, 0, 441, 440,
1592 0, 442, 0, 0, 0, 441, 0, 441, 0, 441,
1593 0, 442, 445, 442, 441, 442, 0, 0, 442, 0,
vlmb5abdc92005-07-02 21:42:40 +00001594
vlmb8958092006-03-06 11:28:17 +00001595 442, 0, 445, 0, 445, 448, 445, 446, 446, 0,
1596 0, 445, 0, 0, 0, 448, 450, 448, 446, 448,
1597 446, 0, 446, 0, 448, 0, 450, 446, 450, 451,
1598 450, 0, 451, 0, 450, 450, 0, 453, 0, 451,
1599 0, 451, 0, 451, 0, 0, 0, 453, 451, 453,
1600 0, 453, 454, 454, 0, 455, 453, 453, 456, 0,
1601 0, 0, 454, 0, 454, 455, 454, 455, 456, 455,
1602 456, 454, 456, 459, 455, 0, 460, 456, 0, 0,
1603 0, 0, 0, 459, 0, 459, 460, 459, 460, 0,
1604 460, 0, 459, 460, 0, 460, 466, 466, 466, 466,
vlmb5abdc92005-07-02 21:42:40 +00001605
vlmb8958092006-03-06 11:28:17 +00001606 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1607 466, 466, 466, 466, 466, 466, 466, 466, 467, 0,
1608 470, 0, 467, 467, 467, 467, 467, 467, 467, 467,
1609 470, 0, 470, 471, 470, 0, 473, 0, 470, 470,
1610 471, 0, 0, 471, 0, 471, 473, 471, 473, 0,
1611 473, 474, 471, 0, 474, 473, 0, 475, 0, 0,
1612 0, 474, 0, 474, 0, 474, 0, 475, 476, 475,
1613 474, 475, 0, 0, 477, 476, 475, 0, 476, 0,
1614 476, 477, 476, 0, 477, 478, 477, 476, 477, 0,
1615 0, 479, 0, 477, 0, 478, 0, 478, 0, 478,
vlmb5abdc92005-07-02 21:42:40 +00001616
vlmb8958092006-03-06 11:28:17 +00001617 0, 479, 480, 479, 478, 479, 0, 0, 0, 480,
1618 479, 0, 480, 481, 480, 481, 480, 0, 0, 482,
1619 0, 480, 0, 481, 0, 481, 0, 481, 0, 482,
1620 483, 482, 481, 482, 0, 483, 484, 0, 482, 0,
1621 483, 0, 483, 0, 483, 0, 484, 485, 484, 483,
1622 484, 0, 0, 0, 484, 484, 0, 485, 486, 485,
1623 0, 485, 0, 0, 487, 485, 485, 0, 486, 0,
1624 486, 0, 486, 0, 487, 488, 487, 486, 487, 0,
1625 0, 492, 0, 487, 0, 488, 0, 488, 492, 488,
1626 0, 492, 493, 492, 488, 492, 0, 0, 0, 0,
vlmb5abdc92005-07-02 21:42:40 +00001627
vlmb8958092006-03-06 11:28:17 +00001628 492, 0, 493, 494, 493, 0, 493, 0, 0, 495,
1629 493, 493, 0, 494, 0, 494, 0, 494, 0, 495,
1630 496, 495, 494, 495, 0, 0, 497, 0, 495, 497,
1631 496, 0, 496, 0, 496, 0, 497, 496, 497, 496,
1632 497, 498, 499, 0, 0, 497, 0, 0, 0, 0,
1633 0, 498, 499, 498, 499, 498, 499, 500, 500, 498,
1634 498, 499, 0, 501, 0, 0, 0, 500, 0, 500,
1635 0, 500, 0, 501, 504, 501, 500, 501, 0, 0,
1636 506, 0, 501, 0, 504, 0, 504, 0, 504, 0,
1637 506, 508, 506, 504, 506, 0, 0, 0, 0, 506,
vlmb5abdc92005-07-02 21:42:40 +00001638
vlmb8958092006-03-06 11:28:17 +00001639 0, 508, 509, 508, 0, 508, 0, 501, 511, 0,
1640 508, 511, 509, 0, 509, 0, 509, 0, 511, 0,
1641 511, 509, 511, 512, 0, 0, 512, 511, 515, 515,
1642 0, 0, 0, 512, 0, 512, 0, 512, 0, 515,
1643 0, 515, 512, 515, 521, 521, 521, 521, 515, 0,
1644 0, 0, 0, 0, 0, 0, 0, 0, 521, 521,
1645 521, 521, 521, 521, 521, 521, 524, 525, 525, 0,
1646 0, 0, 0, 524, 0, 0, 524, 525, 524, 525,
1647 524, 525, 527, 0, 0, 524, 525, 0, 0, 0,
1648 528, 0, 527, 529, 527, 0, 527, 0, 527, 0,
vlmb5abdc92005-07-02 21:42:40 +00001649
vlmb8958092006-03-06 11:28:17 +00001650 528, 527, 528, 529, 528, 529, 530, 529, 528, 528,
1651 0, 0, 529, 533, 531, 0, 530, 0, 530, 0,
1652 530, 0, 532, 0, 531, 530, 531, 531, 531, 0,
1653 533, 0, 532, 531, 532, 0, 532, 0, 0, 0,
1654 533, 532, 533, 534, 533, 0, 534, 0, 0, 533,
1655 0, 535, 0, 534, 0, 534, 0, 534, 0, 536,
1656 0, 535, 534, 535, 0, 535, 536, 537, 0, 536,
1657 535, 536, 0, 536, 0, 0, 0, 537, 536, 537,
1658 542, 537, 0, 542, 0, 0, 537, 0, 543, 0,
1659 542, 544, 542, 0, 542, 0, 0, 0, 543, 542,
vlmb5abdc92005-07-02 21:42:40 +00001660
vlmb8958092006-03-06 11:28:17 +00001661 543, 544, 543, 544, 545, 544, 0, 543, 0, 0,
1662 544, 0, 546, 0, 545, 547, 545, 0, 545, 546,
1663 0, 0, 546, 545, 546, 547, 546, 547, 551, 547,
1664 0, 546, 555, 547, 547, 0, 556, 0, 551, 0,
1665 551, 0, 551, 0, 0, 0, 556, 551, 556, 555,
1666 556, 0, 559, 0, 0, 556, 0, 0, 0, 555,
1667 0, 555, 559, 555, 559, 0, 559, 0, 555, 0,
1668 0, 559, 564, 564, 564, 564, 0, 0, 0, 0,
1669 0, 0, 0, 0, 568, 0, 564, 564, 564, 564,
1670 564, 564, 564, 564, 568, 569, 568, 568, 568, 0,
vlmb5abdc92005-07-02 21:42:40 +00001671
vlmb8958092006-03-06 11:28:17 +00001672 0, 571, 0, 568, 0, 569, 0, 569, 0, 569,
1673 0, 571, 572, 571, 569, 571, 0, 0, 573, 0,
1674 571, 573, 572, 0, 572, 0, 572, 0, 573, 572,
1675 573, 572, 573, 574, 575, 0, 0, 573, 574, 0,
1676 0, 0, 0, 574, 575, 574, 575, 574, 575, 577,
1677 578, 577, 574, 575, 0, 0, 0, 0, 0, 577,
1678 578, 577, 578, 577, 578, 583, 0, 0, 577, 578,
1679 0, 0, 0, 584, 0, 583, 0, 583, 0, 583,
1680 0, 583, 0, 584, 583, 584, 584, 584, 585, 595,
1681 0, 0, 584, 0, 0, 585, 0, 0, 585, 595,
vlmb5abdc92005-07-02 21:42:40 +00001682
vlmb8958092006-03-06 11:28:17 +00001683 585, 595, 585, 595, 604, 605, 0, 585, 595, 0,
1684 0, 0, 0, 0, 604, 605, 604, 605, 604, 605,
1685 606, 607, 606, 604, 605, 0, 0, 0, 0, 0,
1686 606, 607, 606, 607, 606, 607, 608, 610, 0, 606,
1687 607, 0, 0, 0, 0, 0, 608, 610, 608, 610,
1688 608, 610, 611, 608, 0, 608, 610, 0, 615, 611,
1689 0, 0, 611, 0, 611, 0, 611, 0, 615, 616,
1690 615, 611, 615, 0, 0, 0, 0, 615, 0, 616,
1691 617, 616, 0, 616, 0, 0, 632, 0, 616, 0,
1692 617, 0, 617, 617, 617, 0, 632, 633, 632, 617,
vlmb5abdc92005-07-02 21:42:40 +00001693
vlmb8958092006-03-06 11:28:17 +00001694 632, 0, 0, 634, 0, 632, 0, 633, 0, 633,
1695 0, 633, 0, 634, 636, 634, 633, 634, 0, 0,
1696 0, 0, 634, 0, 636, 640, 636, 0, 636, 0,
1697 0, 641, 636, 636, 0, 640, 0, 640, 0, 640,
1698 0, 641, 640, 641, 640, 641, 656, 660, 0, 0,
1699 641, 0, 0, 0, 0, 0, 656, 660, 656, 660,
1700 656, 660, 661, 676, 0, 656, 660, 0, 0, 656,
1701 0, 0, 661, 676, 661, 676, 661, 676, 0, 0,
1702 0, 661, 676, 726, 726, 726, 726, 726, 726, 726,
1703 726, 726, 726, 726, 726, 726, 726, 727, 727, 727,
vlmb5abdc92005-07-02 21:42:40 +00001704
vlmb8958092006-03-06 11:28:17 +00001705 727, 727, 727, 727, 727, 727, 727, 727, 727, 727,
1706 727, 728, 728, 728, 728, 728, 728, 728, 728, 728,
1707 728, 728, 728, 728, 728, 729, 729, 729, 729, 729,
1708 729, 729, 729, 729, 729, 729, 729, 729, 729, 730,
1709 730, 730, 730, 730, 730, 730, 730, 730, 730, 730,
1710 730, 730, 730, 731, 731, 731, 731, 731, 731, 731,
1711 731, 731, 731, 731, 731, 731, 731, 732, 732, 732,
1712 732, 0, 732, 732, 732, 732, 732, 732, 732, 732,
1713 732, 733, 733, 733, 0, 0, 733, 0, 733, 0,
1714 733, 734, 734, 0, 734, 734, 735, 735, 0, 0,
vlmb5abdc92005-07-02 21:42:40 +00001715
vlmb8958092006-03-06 11:28:17 +00001716 735, 735, 735, 0, 735, 735, 735, 735, 735, 735,
1717 736, 736, 736, 736, 0, 736, 736, 736, 736, 736,
1718 736, 736, 736, 736, 737, 737, 737, 737, 737, 737,
1719 737, 737, 737, 0, 737, 737, 738, 0, 0, 0,
1720 738, 738, 738, 738, 738, 738, 738, 738, 739, 0,
1721 0, 0, 739, 739, 739, 739, 739, 739, 739, 739,
1722 740, 0, 0, 0, 740, 0, 740, 740, 740, 740,
1723 740, 740, 741, 741, 0, 741, 741, 742, 742, 0,
1724 742, 742, 743, 0, 743, 743, 744, 744, 0, 744,
1725 744, 745, 0, 745, 745, 746, 0, 746, 746, 747,
vlm066dc102005-08-22 12:23:54 +00001726
vlmb8958092006-03-06 11:28:17 +00001727 0, 747, 747, 748, 748, 748, 748, 748, 748, 748,
1728 748, 748, 748, 748, 748, 748, 748, 749, 749, 0,
1729 749, 749, 750, 750, 0, 750, 750, 750, 750, 750,
1730 750, 750, 750, 750, 750, 750, 751, 751, 751, 0,
1731 0, 0, 0, 751, 0, 0, 0, 0, 751, 725,
1732 725, 725, 725, 725, 725, 725, 725, 725, 725, 725,
1733 725, 725, 725, 725, 725, 725, 725, 725, 725, 725,
1734 725, 725, 725, 725, 725, 725, 725, 725, 725, 725,
1735 725, 725, 725, 725, 725, 725, 725, 725, 725, 725,
1736 725, 725, 725, 725, 725, 725, 725, 725, 725, 725,
vlm066dc102005-08-22 12:23:54 +00001737
vlmb8958092006-03-06 11:28:17 +00001738 725, 725, 725, 725, 725, 725, 725, 725, 725, 725,
1739 725, 725, 725, 725, 725, 725, 725, 725, 725, 725,
1740 725, 725, 725, 725, 725, 725, 725, 725, 725, 725,
1741 725
vlmfa67ddc2004-06-03 03:38:44 +00001742 } ;
1743
1744extern int yy_flex_debug;
1745int yy_flex_debug = 1;
1746
vlmb8958092006-03-06 11:28:17 +00001747static yyconst short int yy_rule_linenum[133] =
vlmfa67ddc2004-06-03 03:38:44 +00001748 { 0,
vlm177a5b62005-09-05 05:17:57 +00001749 94, 95, 97, 100, 102, 105, 107, 108, 109, 112,
1750 114, 115, 116, 128, 135, 142, 148, 157, 165, 173,
1751 174, 176, 195, 201, 202, 203, 204, 205, 208, 214,
vlmb8958092006-03-06 11:28:17 +00001752 221, 228, 235, 242, 243, 244, 252, 253, 254, 255,
1753 256, 261, 262, 263, 264, 265, 266, 267, 268, 269,
1754 270, 271, 280, 281, 282, 283, 284, 285, 286, 287,
1755 288, 289, 290, 291, 292, 293, 294, 295, 296, 297,
1756 298, 299, 300, 301, 302, 303, 304, 305, 306, 307,
1757 308, 309, 310, 311, 312, 313, 314, 315, 316, 317,
1758 318, 319, 320, 321, 322, 323, 324, 325, 326, 327,
vlmfa67ddc2004-06-03 03:38:44 +00001759
vlmb8958092006-03-06 11:28:17 +00001760 328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
1761 342, 343, 348, 349, 350, 353, 358, 364, 372, 382,
1762 387, 389, 390, 394, 400, 406, 414, 417, 442, 486,
1763 488, 499
vlmfa67ddc2004-06-03 03:38:44 +00001764 } ;
1765
1766static yy_state_type yy_state_buf[YY_BUF_SIZE + 2], *yy_state_ptr;
1767static char *yy_full_match;
1768static int yy_lp;
1769#define REJECT \
1770{ \
1771*yy_cp = yy_hold_char; /* undo effects of setting up yytext */ \
1772yy_cp = yy_full_match; /* restore poss. backed-over text */ \
1773++yy_lp; \
1774goto find_rule; \
1775}
1776#define yymore() yymore_used_but_not_detected
1777#define YY_MORE_ADJ 0
1778#define YY_RESTORE_YY_MORE_OFFSET
1779char *yytext;
1780#line 1 "asn1p_l.l"
1781#define INITIAL 0
1782#line 2 "asn1p_l.l"
1783
1784#include <string.h>
1785#include <errno.h>
1786#include <assert.h>
1787
1788#include "asn1parser.h"
1789#include "asn1p_y.h"
1790
1791int asn1p_lex(void);
1792void asn1p_lexer_hack_push_opaque_state(void); /* Used in .y */
1793void asn1p_lexer_hack_enable_with_syntax(void); /* Used in .y */
vlm9283dbe2004-08-18 04:59:12 +00001794void asn1p_lexer_hack_push_encoding_control(void); /* Used in .y */
vlmfa67ddc2004-06-03 03:38:44 +00001795
1796#define YY_FATAL_ERROR(msg) do { \
1797 fprintf(stderr, \
1798 "lexer error at line %d, " \
1799 "text \"%s\"\n", \
1800 yylineno, yytext); \
1801 exit(1); \
1802 } while(0)
1803
1804int asn1p_lexer_pedantic_1990 = 0;
1805int asn1p_lexer_types_year = 0;
1806int asn1p_lexer_constructs_year = 0;
vlmec6acd42004-09-29 13:18:09 +00001807static asn1c_integer_t asn1p_atoi(char *ptr); /* errno is either 0 or ERANGE */
vlmfa67ddc2004-06-03 03:38:44 +00001808
vlm066dc102005-08-22 12:23:54 +00001809int asn1p_as_pointer;
1810
vlmfa67ddc2004-06-03 03:38:44 +00001811/*
1812 * Check that the type is defined in the year of the standard choosen.
1813 */
1814#define TYPE_LIFETIME(fyr, lyr) \
1815 (!asn1p_lexer_types_year \
1816 || (fyr && fyr <= asn1p_lexer_types_year) \
1817 || (lyr && lyr > asn1p_lexer_types_year))
1818
1819/*
1820 * Check the the construction (or concept, i.e. CLASS) is defined in
1821 * a given year.
1822 */
1823#define CONSTRUCT_LIFETIME(fyr, lyr) \
1824 (!asn1p_lexer_constructs_year \
1825 || (fyr && fyr <= asn1p_lexer_constructs_year) \
1826 || (lyr && lyr > asn1p_lexer_constructs_year))
1827
1828/*
vlmfa67ddc2004-06-03 03:38:44 +00001829 * Append quoted string.
1830 */
1831#define QAPPEND(text, tlen) do { \
1832 char *prev_text = asn1p_lval.tv_opaque.buf; \
1833 int prev_len = asn1p_lval.tv_opaque.len; \
1834 char *p; \
1835 \
1836 p = malloc((tlen) + prev_len + 1); \
1837 if(p == NULL) return -1; \
1838 \
1839 if(prev_text) memcpy(p, prev_text, prev_len); \
1840 memcpy(p + prev_len, text, tlen); \
1841 p[prev_len + (tlen)] = '\0'; \
1842 \
1843 free(asn1p_lval.tv_opaque.buf); \
1844 asn1p_lval.tv_opaque.buf = p; \
1845 asn1p_lval.tv_opaque.len = (tlen) + prev_len; \
1846 } while(0)
1847
1848#define YY_NEVER_INTERACTIVE 1
1849#define YY_NO_INPUT 1
vlmfa67ddc2004-06-03 03:38:44 +00001850#define YY_STACK_USED 1
1851/* Performance penalty is OK */
1852/* Controlled from within application */
1853#define dash_comment 1
1854
vlmb5abdc92005-07-02 21:42:40 +00001855#define idash_comment 2
vlmfa67ddc2004-06-03 03:38:44 +00001856
vlmb5abdc92005-07-02 21:42:40 +00001857#define cpp_comment 3
vlmfa67ddc2004-06-03 03:38:44 +00001858
vlmb5abdc92005-07-02 21:42:40 +00001859#define quoted 4
vlmfa67ddc2004-06-03 03:38:44 +00001860
vlmb5abdc92005-07-02 21:42:40 +00001861#define opaque 5
vlm9283dbe2004-08-18 04:59:12 +00001862
vlmb5abdc92005-07-02 21:42:40 +00001863#define encoding_control 6
1864
1865#define with_syntax 7
vlmfa67ddc2004-06-03 03:38:44 +00001866
1867/* Newline */
1868/* White-space */
vlmb8958092006-03-06 11:28:17 +00001869#line 1870 "asn1p_l.c"
vlmfa67ddc2004-06-03 03:38:44 +00001870
1871/* Macros after this point can all be overridden by user definitions in
1872 * section 1.
1873 */
1874
1875#ifndef YY_SKIP_YYWRAP
1876#ifdef __cplusplus
1877extern "C" int yywrap YY_PROTO(( void ));
1878#else
1879extern int yywrap YY_PROTO(( void ));
1880#endif
1881#endif
1882
1883#ifndef YY_NO_UNPUT
1884static void yyunput YY_PROTO(( int c, char *buf_ptr ));
1885#endif
1886
1887#ifndef yytext_ptr
1888static void yy_flex_strncpy YY_PROTO(( char *, yyconst char *, int ));
1889#endif
1890
1891#ifdef YY_NEED_STRLEN
1892static int yy_flex_strlen YY_PROTO(( yyconst char * ));
1893#endif
1894
1895#ifndef YY_NO_INPUT
1896#ifdef __cplusplus
1897static int yyinput YY_PROTO(( void ));
1898#else
1899static int input YY_PROTO(( void ));
1900#endif
1901#endif
1902
1903#if YY_STACK_USED
1904static int yy_start_stack_ptr = 0;
1905static int yy_start_stack_depth = 0;
1906static int *yy_start_stack = 0;
1907#ifndef YY_NO_PUSH_STATE
1908static void yy_push_state YY_PROTO(( int new_state ));
1909#endif
1910#ifndef YY_NO_POP_STATE
1911static void yy_pop_state YY_PROTO(( void ));
1912#endif
1913#ifndef YY_NO_TOP_STATE
1914static int yy_top_state YY_PROTO(( void ));
1915#endif
1916
1917#else
1918#define YY_NO_PUSH_STATE 1
1919#define YY_NO_POP_STATE 1
1920#define YY_NO_TOP_STATE 1
1921#endif
1922
1923#ifdef YY_MALLOC_DECL
1924YY_MALLOC_DECL
1925#else
1926#if __STDC__
1927#ifndef __cplusplus
1928#include <stdlib.h>
1929#endif
1930#else
1931/* Just try to get by without declaring the routines. This will fail
1932 * miserably on non-ANSI systems for which sizeof(size_t) != sizeof(int)
1933 * or sizeof(void*) != sizeof(int).
1934 */
1935#endif
1936#endif
1937
1938/* Amount of stuff to slurp up with each read. */
1939#ifndef YY_READ_BUF_SIZE
1940#define YY_READ_BUF_SIZE 8192
1941#endif
1942
1943/* Copy whatever the last rule matched to the standard output. */
1944
1945#ifndef ECHO
1946/* This used to be an fputs(), but since the string might contain NUL's,
1947 * we now use fwrite().
1948 */
1949#define ECHO (void) fwrite( yytext, yyleng, 1, yyout )
1950#endif
1951
1952/* Gets input and stuffs it into "buf". number of characters read, or YY_NULL,
1953 * is returned in "result".
1954 */
1955#ifndef YY_INPUT
1956#define YY_INPUT(buf,result,max_size) \
1957 if ( yy_current_buffer->yy_is_interactive ) \
1958 { \
1959 int c = '*', n; \
1960 for ( n = 0; n < max_size && \
1961 (c = getc( yyin )) != EOF && c != '\n'; ++n ) \
1962 buf[n] = (char) c; \
1963 if ( c == '\n' ) \
1964 buf[n++] = (char) c; \
1965 if ( c == EOF && ferror( yyin ) ) \
1966 YY_FATAL_ERROR( "input in flex scanner failed" ); \
1967 result = n; \
1968 } \
1969 else if ( ((result = fread( buf, 1, max_size, yyin )) == 0) \
1970 && ferror( yyin ) ) \
1971 YY_FATAL_ERROR( "input in flex scanner failed" );
1972#endif
1973
1974/* No semi-colon after return; correct usage is to write "yyterminate();" -
1975 * we don't want an extra ';' after the "return" because that will cause
1976 * some compilers to complain about unreachable statements.
1977 */
1978#ifndef yyterminate
1979#define yyterminate() return YY_NULL
1980#endif
1981
1982/* Number of entries by which start-condition stack grows. */
1983#ifndef YY_START_STACK_INCR
1984#define YY_START_STACK_INCR 25
1985#endif
1986
1987/* Report a fatal error. */
1988#ifndef YY_FATAL_ERROR
1989#define YY_FATAL_ERROR(msg) yy_fatal_error( msg )
1990#endif
1991
1992/* Default declaration of generated scanner - a define so the user can
1993 * easily add parameters.
1994 */
1995#ifndef YY_DECL
1996#define YY_DECL int yylex YY_PROTO(( void ))
1997#endif
1998
1999/* Code executed at the beginning of each rule, after yytext and yyleng
2000 * have been set up.
2001 */
2002#ifndef YY_USER_ACTION
2003#define YY_USER_ACTION
2004#endif
2005
2006/* Code executed at the end of each rule. */
2007#ifndef YY_BREAK
2008#define YY_BREAK break;
2009#endif
2010
2011#define YY_RULE_SETUP \
2012 YY_USER_ACTION
2013
2014YY_DECL
2015 {
2016 register yy_state_type yy_current_state;
2017 register char *yy_cp, *yy_bp;
2018 register int yy_act;
2019
vlm066dc102005-08-22 12:23:54 +00002020#line 92 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002021
2022
vlmb8958092006-03-06 11:28:17 +00002023#line 2024 "asn1p_l.c"
vlmfa67ddc2004-06-03 03:38:44 +00002024
2025 if ( yy_init )
2026 {
2027 yy_init = 0;
2028
2029#ifdef YY_USER_INIT
2030 YY_USER_INIT;
2031#endif
2032
2033 if ( ! yy_start )
2034 yy_start = 1; /* first start state */
2035
2036 if ( ! yyin )
2037 yyin = stdin;
2038
2039 if ( ! yyout )
2040 yyout = stdout;
2041
2042 if ( ! yy_current_buffer )
2043 yy_current_buffer =
2044 yy_create_buffer( yyin, YY_BUF_SIZE );
2045
2046 yy_load_buffer_state();
2047 }
2048
2049 while ( 1 ) /* loops until end-of-file is reached */
2050 {
2051 yy_cp = yy_c_buf_p;
2052
2053 /* Support of yytext. */
2054 *yy_cp = yy_hold_char;
2055
2056 /* yy_bp points to the position in yy_ch_buf of the start of
2057 * the current run.
2058 */
2059 yy_bp = yy_cp;
2060
2061 yy_current_state = yy_start;
2062 yy_state_ptr = yy_state_buf;
2063 *yy_state_ptr++ = yy_current_state;
2064yy_match:
2065 do
2066 {
2067 register YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)];
2068 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
2069 {
2070 yy_current_state = (int) yy_def[yy_current_state];
vlmb8958092006-03-06 11:28:17 +00002071 if ( yy_current_state >= 726 )
vlmfa67ddc2004-06-03 03:38:44 +00002072 yy_c = yy_meta[(unsigned int) yy_c];
2073 }
2074 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
2075 *yy_state_ptr++ = yy_current_state;
2076 ++yy_cp;
2077 }
vlmb8958092006-03-06 11:28:17 +00002078 while ( yy_base[yy_current_state] != 4350 );
vlmfa67ddc2004-06-03 03:38:44 +00002079
2080yy_find_action:
2081 yy_current_state = *--yy_state_ptr;
2082 yy_lp = yy_accept[yy_current_state];
2083find_rule: /* we branch to this label when backing up */
2084 for ( ; ; ) /* until we find what rule we matched */
2085 {
2086 if ( yy_lp && yy_lp < yy_accept[yy_current_state + 1] )
2087 {
2088 yy_act = yy_acclist[yy_lp];
2089 {
2090 yy_full_match = yy_cp;
2091 break;
2092 }
2093 }
2094 --yy_cp;
2095 yy_current_state = *--yy_state_ptr;
2096 yy_lp = yy_accept[yy_current_state];
2097 }
2098
2099 YY_DO_BEFORE_ACTION;
2100
2101 if ( yy_act != YY_END_OF_BUFFER )
2102 {
2103 int yyl;
2104 for ( yyl = 0; yyl < yyleng; ++yyl )
2105 if ( yytext[yyl] == '\n' )
2106 ++yylineno;
2107 }
2108
2109do_action: /* This label is used only to access EOF actions. */
2110
2111 if ( yy_flex_debug )
2112 {
2113 if ( yy_act == 0 )
2114 fprintf( stderr, "--scanner backing up\n" );
vlmb8958092006-03-06 11:28:17 +00002115 else if ( yy_act < 133 )
vlmfa67ddc2004-06-03 03:38:44 +00002116 fprintf( stderr, "--accepting rule at line %d (\"%s\")\n",
2117 yy_rule_linenum[yy_act], yytext );
vlmb8958092006-03-06 11:28:17 +00002118 else if ( yy_act == 133 )
vlmfa67ddc2004-06-03 03:38:44 +00002119 fprintf( stderr, "--accepting default rule (\"%s\")\n",
2120 yytext );
vlmb8958092006-03-06 11:28:17 +00002121 else if ( yy_act == 134 )
vlmfa67ddc2004-06-03 03:38:44 +00002122 fprintf( stderr, "--(end of buffer or a NUL)\n" );
2123 else
2124 fprintf( stderr, "--EOF (start condition %d)\n", YY_START );
2125 }
2126
2127 switch ( yy_act )
2128 { /* beginning of action switch */
2129case 1:
vlmb5abdc92005-07-02 21:42:40 +00002130*yy_cp = yy_hold_char; /* undo effects of setting up yytext */
2131yy_c_buf_p = yy_cp -= 1;
2132YY_DO_BEFORE_ACTION; /* set up yytext again */
vlmfa67ddc2004-06-03 03:38:44 +00002133YY_RULE_SETUP
vlm066dc102005-08-22 12:23:54 +00002134#line 94 "asn1p_l.l"
vlmb5abdc92005-07-02 21:42:40 +00002135/* Immediately terminated long comment */
2136 YY_BREAK
2137case 2:
2138*yy_cp = yy_hold_char; /* undo effects of setting up yytext */
2139yy_c_buf_p = yy_cp -= 1;
2140YY_DO_BEFORE_ACTION; /* set up yytext again */
2141YY_RULE_SETUP
vlm066dc102005-08-22 12:23:54 +00002142#line 95 "asn1p_l.l"
vlmb5abdc92005-07-02 21:42:40 +00002143yy_push_state(idash_comment); /* Incorrect, but acceptable */
2144 YY_BREAK
2145
2146case 3:
2147YY_RULE_SETUP
vlm066dc102005-08-22 12:23:54 +00002148#line 97 "asn1p_l.l"
vlmb5abdc92005-07-02 21:42:40 +00002149yy_pop_state(); /* Acceptable end of comment */
2150 YY_BREAK
2151
2152case 4:
2153YY_RULE_SETUP
vlm066dc102005-08-22 12:23:54 +00002154#line 100 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002155asn1p_as_pointer = 1;
2156 YY_BREAK
2157case 5:
2158YY_RULE_SETUP
2159#line 102 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002160yy_push_state(dash_comment);
2161 YY_BREAK
2162
vlmb5abdc92005-07-02 21:42:40 +00002163case 6:
vlmfa67ddc2004-06-03 03:38:44 +00002164YY_RULE_SETUP
vlm066dc102005-08-22 12:23:54 +00002165#line 105 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002166yy_pop_state();
vlmfa67ddc2004-06-03 03:38:44 +00002167 YY_BREAK
vlmb5abdc92005-07-02 21:42:40 +00002168case 7:
vlmfa67ddc2004-06-03 03:38:44 +00002169YY_RULE_SETUP
vlm177a5b62005-09-05 05:17:57 +00002170#line 107 "asn1p_l.l"
2171yy_pop_state(); /* End of comment */
vlmfa67ddc2004-06-03 03:38:44 +00002172 YY_BREAK
vlmb5abdc92005-07-02 21:42:40 +00002173case 8:
2174YY_RULE_SETUP
vlm177a5b62005-09-05 05:17:57 +00002175#line 108 "asn1p_l.l"
2176/* Eat single dash */
vlm066dc102005-08-22 12:23:54 +00002177 YY_BREAK
2178case 9:
2179YY_RULE_SETUP
vlm177a5b62005-09-05 05:17:57 +00002180#line 109 "asn1p_l.l"
2181/* Eat */
vlm066dc102005-08-22 12:23:54 +00002182 YY_BREAK
vlm177a5b62005-09-05 05:17:57 +00002183
vlm066dc102005-08-22 12:23:54 +00002184case 10:
2185YY_RULE_SETUP
vlm177a5b62005-09-05 05:17:57 +00002186#line 112 "asn1p_l.l"
2187yy_push_state(cpp_comment);
vlmb5abdc92005-07-02 21:42:40 +00002188 YY_BREAK
2189
vlm066dc102005-08-22 12:23:54 +00002190case 11:
vlmb5abdc92005-07-02 21:42:40 +00002191YY_RULE_SETUP
vlm177a5b62005-09-05 05:17:57 +00002192#line 114 "asn1p_l.l"
2193/* Eat */
vlmb5abdc92005-07-02 21:42:40 +00002194 YY_BREAK
vlmb5abdc92005-07-02 21:42:40 +00002195case 12:
vlmfa67ddc2004-06-03 03:38:44 +00002196YY_RULE_SETUP
vlm177a5b62005-09-05 05:17:57 +00002197#line 115 "asn1p_l.l"
2198yy_pop_state();
vlm066dc102005-08-22 12:23:54 +00002199 YY_BREAK
2200case 13:
2201YY_RULE_SETUP
vlm177a5b62005-09-05 05:17:57 +00002202#line 116 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002203/* Eat */
2204 YY_BREAK
2205
2206/*
2207 * This is state is being set from corresponding .y module when
2208 * higher-level data is necessary to make proper parsing of the
2209 * underlying data. Thus, we enter the <opaque> state and save
2210 * everything for later processing.
2211 */
2212
vlm177a5b62005-09-05 05:17:57 +00002213case 14:
vlmfa67ddc2004-06-03 03:38:44 +00002214YY_RULE_SETUP
vlm177a5b62005-09-05 05:17:57 +00002215#line 128 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002216{
2217 yy_push_state(opaque);
2218 asn1p_lval.tv_opaque.buf = strdup(yytext);
2219 asn1p_lval.tv_opaque.len = yyleng;
2220 return TOK_opaque;
2221 }
2222 YY_BREAK
vlm177a5b62005-09-05 05:17:57 +00002223case 15:
vlmfa67ddc2004-06-03 03:38:44 +00002224YY_RULE_SETUP
vlm177a5b62005-09-05 05:17:57 +00002225#line 135 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002226{
2227 yy_pop_state();
2228 asn1p_lval.tv_opaque.buf = strdup(yytext);
2229 asn1p_lval.tv_opaque.len = yyleng;
2230 return TOK_opaque;
2231 }
2232 YY_BREAK
vlm177a5b62005-09-05 05:17:57 +00002233case 16:
vlmfa67ddc2004-06-03 03:38:44 +00002234YY_RULE_SETUP
vlm177a5b62005-09-05 05:17:57 +00002235#line 142 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002236{
2237 asn1p_lval.tv_opaque.buf = strdup(yytext);
2238 asn1p_lval.tv_opaque.len = yyleng;
2239 return TOK_opaque;
2240 }
2241 YY_BREAK
vlm177a5b62005-09-05 05:17:57 +00002242case 17:
vlmfa67ddc2004-06-03 03:38:44 +00002243YY_RULE_SETUP
vlm177a5b62005-09-05 05:17:57 +00002244#line 148 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002245{
2246 fprintf(stderr,
2247 "ASN.1 Parser syncronization failure: "
2248 "\"%s\" at line %d must not appear "
2249 "inside value definition\n",
2250 yytext, yylineno);
2251 return -1;
2252 }
2253 YY_BREAK
vlm177a5b62005-09-05 05:17:57 +00002254case 18:
vlmfa67ddc2004-06-03 03:38:44 +00002255YY_RULE_SETUP
vlm177a5b62005-09-05 05:17:57 +00002256#line 157 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002257{
2258 asn1p_lval.tv_opaque.buf = strdup(yytext);
2259 asn1p_lval.tv_opaque.len = yyleng;
2260 return TOK_opaque;
2261 }
2262 YY_BREAK
2263
vlm177a5b62005-09-05 05:17:57 +00002264case 19:
vlmfa67ddc2004-06-03 03:38:44 +00002265YY_RULE_SETUP
vlm177a5b62005-09-05 05:17:57 +00002266#line 165 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002267{
2268 asn1p_lval.tv_opaque.buf = 0;
2269 asn1p_lval.tv_opaque.len = 0;
2270 QAPPEND(yytext+1, yyleng-1);
2271 yy_push_state(quoted);
2272 }
2273 YY_BREAK
2274
vlm177a5b62005-09-05 05:17:57 +00002275case 20:
vlmfa67ddc2004-06-03 03:38:44 +00002276YY_RULE_SETUP
vlm177a5b62005-09-05 05:17:57 +00002277#line 173 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002278{ QAPPEND(yytext, yyleng-1); } /* Add a single quote */
2279 YY_BREAK
vlm177a5b62005-09-05 05:17:57 +00002280case 21:
vlmfa67ddc2004-06-03 03:38:44 +00002281YY_RULE_SETUP
vlm177a5b62005-09-05 05:17:57 +00002282#line 174 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002283{ QAPPEND(yytext, yyleng); }
2284 YY_BREAK
vlm177a5b62005-09-05 05:17:57 +00002285case 22:
vlmfa67ddc2004-06-03 03:38:44 +00002286YY_RULE_SETUP
vlm177a5b62005-09-05 05:17:57 +00002287#line 176 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002288{
2289 yy_pop_state();
2290 /* Do not append last quote:
2291 // QAPPEND(yytext, yyleng); */
2292
2293 if(asn1p_lexer_pedantic_1990
2294 && strchr(yytext, '\n')) {
2295 fprintf(stderr, "%s: "
2296 "Newlines are prohibited by ASN.1:1990\n",
2297 asn1p_lval.tv_opaque.buf);
2298 return -1;
2299 }
2300
2301 return TOK_cstring;
2302 }
2303 YY_BREAK
2304
vlm9283dbe2004-08-18 04:59:12 +00002305
vlm177a5b62005-09-05 05:17:57 +00002306case 23:
vlmfa67ddc2004-06-03 03:38:44 +00002307YY_RULE_SETUP
vlm177a5b62005-09-05 05:17:57 +00002308#line 195 "asn1p_l.l"
vlm9283dbe2004-08-18 04:59:12 +00002309{
2310 const char *s = "ENCODING-CONTROL";
2311 const char *p = s + sizeof("ENCODING-CONTROL") - 2;
2312 for(; p >= s; p--) unput(*p);
2313 yy_pop_state();
2314 }
2315 YY_BREAK
vlm177a5b62005-09-05 05:17:57 +00002316case 24:
2317YY_RULE_SETUP
2318#line 201 "asn1p_l.l"
2319unput('D'); unput('N'); unput('E'); yy_pop_state();
2320 YY_BREAK
2321case 25:
2322YY_RULE_SETUP
2323#line 202 "asn1p_l.l"
2324
2325 YY_BREAK
vlmb5abdc92005-07-02 21:42:40 +00002326case 26:
2327YY_RULE_SETUP
vlm177a5b62005-09-05 05:17:57 +00002328#line 203 "asn1p_l.l"
2329
vlmb5abdc92005-07-02 21:42:40 +00002330 YY_BREAK
2331case 27:
2332YY_RULE_SETUP
vlm177a5b62005-09-05 05:17:57 +00002333#line 204 "asn1p_l.l"
2334/* Eat everything else */
vlm066dc102005-08-22 12:23:54 +00002335 YY_BREAK
2336case 28:
2337YY_RULE_SETUP
vlm177a5b62005-09-05 05:17:57 +00002338#line 205 "asn1p_l.l"
vlm066dc102005-08-22 12:23:54 +00002339
2340 YY_BREAK
vlm177a5b62005-09-05 05:17:57 +00002341
vlm066dc102005-08-22 12:23:54 +00002342case 29:
2343YY_RULE_SETUP
vlm177a5b62005-09-05 05:17:57 +00002344#line 208 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002345{
2346 /* " \t\r\n" weren't allowed in ASN.1:1990. */
2347 asn1p_lval.tv_str = yytext;
2348 return TOK_hstring;
2349 }
2350 YY_BREAK
vlm177a5b62005-09-05 05:17:57 +00002351case 30:
vlmfa67ddc2004-06-03 03:38:44 +00002352YY_RULE_SETUP
vlm177a5b62005-09-05 05:17:57 +00002353#line 214 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002354{
2355 /* " \t\r\n" weren't allowed in ASN.1:1990. */
2356 asn1p_lval.tv_str = strdup(yytext);
2357 return TOK_bstring;
2358 }
2359 YY_BREAK
vlm177a5b62005-09-05 05:17:57 +00002360case 31:
vlmfa67ddc2004-06-03 03:38:44 +00002361YY_RULE_SETUP
vlm177a5b62005-09-05 05:17:57 +00002362#line 221 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002363{
2364 asn1p_lval.a_int = asn1p_atoi(yytext);
2365 if(errno == ERANGE)
2366 return -1;
2367 return TOK_number_negative;
2368 }
2369 YY_BREAK
vlm177a5b62005-09-05 05:17:57 +00002370case 32:
2371YY_RULE_SETUP
2372#line 228 "asn1p_l.l"
2373{
2374 asn1p_lval.a_int = asn1p_atoi(yytext);
2375 if(errno == ERANGE)
2376 return -1;
2377 return TOK_number;
2378 }
2379 YY_BREAK
2380case 33:
2381YY_RULE_SETUP
2382#line 235 "asn1p_l.l"
2383{
2384 asn1p_lval.a_int = asn1p_atoi(yytext);
2385 if(errno == ERANGE)
2386 return -1;
2387 return TOK_number;
2388 }
2389 YY_BREAK
vlm066dc102005-08-22 12:23:54 +00002390case 34:
vlmfa67ddc2004-06-03 03:38:44 +00002391YY_RULE_SETUP
vlm177a5b62005-09-05 05:17:57 +00002392#line 242 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002393return TOK_ABSENT;
2394 YY_BREAK
vlm177a5b62005-09-05 05:17:57 +00002395case 35:
vlmfa67ddc2004-06-03 03:38:44 +00002396YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002397#line 243 "asn1p_l.l"
vlmc94e28f2004-09-15 11:59:51 +00002398return TOK_ALL;
vlmfa67ddc2004-06-03 03:38:44 +00002399 YY_BREAK
vlm177a5b62005-09-05 05:17:57 +00002400case 36:
vlmfa67ddc2004-06-03 03:38:44 +00002401YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002402#line 244 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002403{
2404 /* Appeared in 1990, removed in 1997 */
2405 if(TYPE_LIFETIME(1990, 1997))
2406 return TOK_ANY;
2407 fprintf(stderr, "Keyword \"%s\" at line %d "
2408 "is obsolete\n", yytext, yylineno);
2409 REJECT;
2410 }
2411 YY_BREAK
vlm177a5b62005-09-05 05:17:57 +00002412case 37:
2413YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002414#line 252 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002415return TOK_APPLICATION;
2416 YY_BREAK
2417case 38:
2418YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002419#line 253 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002420return TOK_AUTOMATIC;
2421 YY_BREAK
vlmb5abdc92005-07-02 21:42:40 +00002422case 39:
2423YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002424#line 254 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002425return TOK_BEGIN;
vlmb5abdc92005-07-02 21:42:40 +00002426 YY_BREAK
2427case 40:
2428YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002429#line 255 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002430return TOK_BIT;
vlm066dc102005-08-22 12:23:54 +00002431 YY_BREAK
2432case 41:
2433YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002434#line 256 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002435{
2436 if(TYPE_LIFETIME(1994, 0))
2437 return TOK_BMPString;
2438 REJECT;
2439 }
2440 YY_BREAK
vlm177a5b62005-09-05 05:17:57 +00002441case 42:
2442YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002443#line 261 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002444return TOK_BOOLEAN;
2445 YY_BREAK
2446case 43:
2447YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002448#line 262 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002449return TOK_BY;
2450 YY_BREAK
vlmfa67ddc2004-06-03 03:38:44 +00002451case 44:
2452YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002453#line 263 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002454return TOK_CHARACTER;
vlmfa67ddc2004-06-03 03:38:44 +00002455 YY_BREAK
2456case 45:
2457YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002458#line 264 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002459return TOK_CHOICE;
vlm9283dbe2004-08-18 04:59:12 +00002460 YY_BREAK
2461case 46:
2462YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002463#line 265 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002464return TOK_CLASS;
vlm9283dbe2004-08-18 04:59:12 +00002465 YY_BREAK
2466case 47:
2467YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002468#line 266 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002469return TOK_COMPONENT;
vlm9283dbe2004-08-18 04:59:12 +00002470 YY_BREAK
2471case 48:
2472YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002473#line 267 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002474return TOK_COMPONENTS;
vlmb5abdc92005-07-02 21:42:40 +00002475 YY_BREAK
2476case 49:
2477YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002478#line 268 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002479return TOK_CONSTRAINED;
vlmb5abdc92005-07-02 21:42:40 +00002480 YY_BREAK
2481case 50:
2482YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002483#line 269 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002484return TOK_CONTAINING;
vlmb5abdc92005-07-02 21:42:40 +00002485 YY_BREAK
2486case 51:
2487YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002488#line 270 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002489return TOK_DEFAULT;
vlm066dc102005-08-22 12:23:54 +00002490 YY_BREAK
2491case 52:
2492YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002493#line 271 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002494{
2495 /* Appeared in 1990, removed in 1997 */
2496 if(TYPE_LIFETIME(1990, 1997))
2497 return TOK_DEFINED;
2498 fprintf(stderr, "Keyword \"%s\" at line %d "
2499 "is obsolete\n", yytext, yylineno);
2500 /* Deprecated since */
2501 REJECT;
2502 }
2503 YY_BREAK
vlm177a5b62005-09-05 05:17:57 +00002504case 53:
2505YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002506#line 280 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002507return TOK_DEFINITIONS;
2508 YY_BREAK
2509case 54:
2510YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002511#line 281 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002512return TOK_EMBEDDED;
2513 YY_BREAK
vlmfa67ddc2004-06-03 03:38:44 +00002514case 55:
2515YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002516#line 282 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002517return TOK_ENCODED;
vlmfa67ddc2004-06-03 03:38:44 +00002518 YY_BREAK
2519case 56:
2520YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002521#line 283 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002522return TOK_ENCODING_CONTROL;
vlmfa67ddc2004-06-03 03:38:44 +00002523 YY_BREAK
2524case 57:
2525YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002526#line 284 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002527return TOK_END;
vlmfa67ddc2004-06-03 03:38:44 +00002528 YY_BREAK
2529case 58:
2530YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002531#line 285 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002532return TOK_ENUMERATED;
vlmfa67ddc2004-06-03 03:38:44 +00002533 YY_BREAK
2534case 59:
2535YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002536#line 286 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002537return TOK_EXCEPT;
vlmfa67ddc2004-06-03 03:38:44 +00002538 YY_BREAK
2539case 60:
2540YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002541#line 287 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002542return TOK_EXPLICIT;
vlmfa67ddc2004-06-03 03:38:44 +00002543 YY_BREAK
2544case 61:
2545YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002546#line 288 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002547return TOK_EXPORTS;
vlmfa67ddc2004-06-03 03:38:44 +00002548 YY_BREAK
2549case 62:
2550YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002551#line 289 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002552return TOK_EXTENSIBILITY;
vlmfa67ddc2004-06-03 03:38:44 +00002553 YY_BREAK
2554case 63:
2555YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002556#line 290 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002557return TOK_EXTERNAL;
vlmfa67ddc2004-06-03 03:38:44 +00002558 YY_BREAK
2559case 64:
2560YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002561#line 291 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002562return TOK_FALSE;
vlmfa67ddc2004-06-03 03:38:44 +00002563 YY_BREAK
2564case 65:
2565YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002566#line 292 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002567return TOK_FROM;
vlmfa67ddc2004-06-03 03:38:44 +00002568 YY_BREAK
2569case 66:
2570YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002571#line 293 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002572return TOK_GeneralizedTime;
vlmfa67ddc2004-06-03 03:38:44 +00002573 YY_BREAK
2574case 67:
2575YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002576#line 294 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002577return TOK_GeneralString;
vlmfa67ddc2004-06-03 03:38:44 +00002578 YY_BREAK
2579case 68:
2580YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002581#line 295 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002582return TOK_GraphicString;
vlmfa67ddc2004-06-03 03:38:44 +00002583 YY_BREAK
2584case 69:
2585YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002586#line 296 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002587return TOK_IA5String;
vlmfa67ddc2004-06-03 03:38:44 +00002588 YY_BREAK
2589case 70:
2590YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002591#line 297 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002592return TOK_IDENTIFIER;
vlmfa67ddc2004-06-03 03:38:44 +00002593 YY_BREAK
2594case 71:
2595YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002596#line 298 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002597return TOK_IMPLICIT;
vlmfa67ddc2004-06-03 03:38:44 +00002598 YY_BREAK
2599case 72:
2600YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002601#line 299 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002602return TOK_IMPLIED;
vlmfa67ddc2004-06-03 03:38:44 +00002603 YY_BREAK
2604case 73:
2605YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002606#line 300 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002607return TOK_IMPORTS;
vlmfa67ddc2004-06-03 03:38:44 +00002608 YY_BREAK
2609case 74:
2610YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002611#line 301 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002612return TOK_INCLUDES;
vlmfa67ddc2004-06-03 03:38:44 +00002613 YY_BREAK
2614case 75:
2615YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002616#line 302 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002617return TOK_INSTANCE;
vlmfa67ddc2004-06-03 03:38:44 +00002618 YY_BREAK
2619case 76:
2620YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002621#line 303 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002622return TOK_INSTRUCTIONS;
vlmfa67ddc2004-06-03 03:38:44 +00002623 YY_BREAK
2624case 77:
2625YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002626#line 304 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002627return TOK_INTEGER;
vlmfa67ddc2004-06-03 03:38:44 +00002628 YY_BREAK
2629case 78:
2630YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002631#line 305 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002632return TOK_INTERSECTION;
vlmfa67ddc2004-06-03 03:38:44 +00002633 YY_BREAK
2634case 79:
2635YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002636#line 306 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002637return TOK_ISO646String;
vlmfa67ddc2004-06-03 03:38:44 +00002638 YY_BREAK
2639case 80:
2640YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002641#line 307 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002642return TOK_MAX;
vlmfa67ddc2004-06-03 03:38:44 +00002643 YY_BREAK
2644case 81:
2645YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002646#line 308 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002647return TOK_MIN;
vlmfa67ddc2004-06-03 03:38:44 +00002648 YY_BREAK
2649case 82:
2650YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002651#line 309 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002652return TOK_MINUS_INFINITY;
vlmfa67ddc2004-06-03 03:38:44 +00002653 YY_BREAK
2654case 83:
2655YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002656#line 310 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002657return TOK_NULL;
vlmfa67ddc2004-06-03 03:38:44 +00002658 YY_BREAK
2659case 84:
2660YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002661#line 311 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002662return TOK_NumericString;
vlmfa67ddc2004-06-03 03:38:44 +00002663 YY_BREAK
2664case 85:
2665YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002666#line 312 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002667return TOK_OBJECT;
vlmfa67ddc2004-06-03 03:38:44 +00002668 YY_BREAK
2669case 86:
2670YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002671#line 313 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002672return TOK_ObjectDescriptor;
vlmfa67ddc2004-06-03 03:38:44 +00002673 YY_BREAK
2674case 87:
2675YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002676#line 314 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002677return TOK_OCTET;
vlmfa67ddc2004-06-03 03:38:44 +00002678 YY_BREAK
2679case 88:
2680YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002681#line 315 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002682return TOK_OF;
vlmfa67ddc2004-06-03 03:38:44 +00002683 YY_BREAK
2684case 89:
2685YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002686#line 316 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002687return TOK_OPTIONAL;
vlmfa67ddc2004-06-03 03:38:44 +00002688 YY_BREAK
2689case 90:
2690YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002691#line 317 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002692return TOK_PATTERN;
vlmfa67ddc2004-06-03 03:38:44 +00002693 YY_BREAK
2694case 91:
2695YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002696#line 318 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002697return TOK_PDV;
vlmfa67ddc2004-06-03 03:38:44 +00002698 YY_BREAK
2699case 92:
2700YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002701#line 319 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002702return TOK_PLUS_INFINITY;
vlmfa67ddc2004-06-03 03:38:44 +00002703 YY_BREAK
2704case 93:
2705YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002706#line 320 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002707return TOK_PRESENT;
vlmfa67ddc2004-06-03 03:38:44 +00002708 YY_BREAK
2709case 94:
2710YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002711#line 321 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002712return TOK_PrintableString;
vlmfa67ddc2004-06-03 03:38:44 +00002713 YY_BREAK
2714case 95:
2715YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002716#line 322 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002717return TOK_PRIVATE;
vlmfa67ddc2004-06-03 03:38:44 +00002718 YY_BREAK
2719case 96:
2720YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002721#line 323 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002722return TOK_REAL;
vlmfa67ddc2004-06-03 03:38:44 +00002723 YY_BREAK
2724case 97:
2725YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002726#line 324 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002727return TOK_RELATIVE_OID;
vlmfa67ddc2004-06-03 03:38:44 +00002728 YY_BREAK
2729case 98:
2730YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002731#line 325 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002732return TOK_SEQUENCE;
vlmfa67ddc2004-06-03 03:38:44 +00002733 YY_BREAK
2734case 99:
2735YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002736#line 326 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002737return TOK_SET;
vlmfa67ddc2004-06-03 03:38:44 +00002738 YY_BREAK
2739case 100:
2740YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002741#line 327 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002742return TOK_SIZE;
vlmfa67ddc2004-06-03 03:38:44 +00002743 YY_BREAK
2744case 101:
2745YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002746#line 328 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002747return TOK_STRING;
vlmfa67ddc2004-06-03 03:38:44 +00002748 YY_BREAK
2749case 102:
2750YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002751#line 329 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002752return TOK_SYNTAX;
vlm9283dbe2004-08-18 04:59:12 +00002753 YY_BREAK
2754case 103:
2755YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002756#line 330 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002757return TOK_T61String;
vlm9283dbe2004-08-18 04:59:12 +00002758 YY_BREAK
2759case 104:
2760YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002761#line 331 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002762return TOK_TAGS;
vlm9283dbe2004-08-18 04:59:12 +00002763 YY_BREAK
2764case 105:
2765YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002766#line 332 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002767return TOK_TeletexString;
vlm9283dbe2004-08-18 04:59:12 +00002768 YY_BREAK
2769case 106:
2770YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002771#line 333 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002772return TOK_TRUE;
vlm9283dbe2004-08-18 04:59:12 +00002773 YY_BREAK
2774case 107:
2775YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002776#line 334 "asn1p_l.l"
2777return TOK_UNION;
vlmb5abdc92005-07-02 21:42:40 +00002778 YY_BREAK
2779case 108:
2780YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002781#line 335 "asn1p_l.l"
2782return TOK_UNIQUE;
vlmb5abdc92005-07-02 21:42:40 +00002783 YY_BREAK
2784case 109:
2785YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002786#line 336 "asn1p_l.l"
2787return TOK_UNIVERSAL;
vlmb5abdc92005-07-02 21:42:40 +00002788 YY_BREAK
2789case 110:
2790YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002791#line 337 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002792{
2793 if(TYPE_LIFETIME(1994, 0))
2794 return TOK_UniversalString;
2795 REJECT;
2796 }
2797 YY_BREAK
vlmb8958092006-03-06 11:28:17 +00002798case 111:
vlmfa67ddc2004-06-03 03:38:44 +00002799YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002800#line 342 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002801return TOK_UTCTime;
2802 YY_BREAK
vlmb8958092006-03-06 11:28:17 +00002803case 112:
vlmfa67ddc2004-06-03 03:38:44 +00002804YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002805#line 343 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002806{
2807 if(TYPE_LIFETIME(1994, 0))
2808 return TOK_UTF8String;
2809 REJECT;
2810 }
2811 YY_BREAK
vlmb8958092006-03-06 11:28:17 +00002812case 113:
2813YY_RULE_SETUP
2814#line 348 "asn1p_l.l"
2815return TOK_VideotexString;
2816 YY_BREAK
vlm177a5b62005-09-05 05:17:57 +00002817case 114:
2818YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002819#line 349 "asn1p_l.l"
2820return TOK_VisibleString;
vlm177a5b62005-09-05 05:17:57 +00002821 YY_BREAK
2822case 115:
2823YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002824#line 350 "asn1p_l.l"
2825return TOK_WITH;
vlm177a5b62005-09-05 05:17:57 +00002826 YY_BREAK
vlmb5abdc92005-07-02 21:42:40 +00002827case 116:
2828YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002829#line 353 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002830{
vlmfa67ddc2004-06-03 03:38:44 +00002831 asn1p_lval.tv_str = strdup(yytext);
2832 return TOK_typefieldreference;
2833 }
2834 YY_BREAK
vlmb8958092006-03-06 11:28:17 +00002835case 117:
vlmfa67ddc2004-06-03 03:38:44 +00002836YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002837#line 358 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002838{
vlmfa67ddc2004-06-03 03:38:44 +00002839 asn1p_lval.tv_str = strdup(yytext);
2840 return TOK_valuefieldreference;
2841 }
2842 YY_BREAK
vlmb8958092006-03-06 11:28:17 +00002843case 118:
vlmfa67ddc2004-06-03 03:38:44 +00002844YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002845#line 364 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002846{
vlmfa67ddc2004-06-03 03:38:44 +00002847 asn1p_lval.tv_str = strdup(yytext);
2848 return TOK_identifier;
2849 }
2850 YY_BREAK
2851/*
2852 * objectclassreference
2853 */
vlmb8958092006-03-06 11:28:17 +00002854case 119:
vlmfa67ddc2004-06-03 03:38:44 +00002855YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002856#line 372 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002857{
vlmfa67ddc2004-06-03 03:38:44 +00002858 asn1p_lval.tv_str = strdup(yytext);
vlm9283dbe2004-08-18 04:59:12 +00002859 return TOK_capitalreference;
vlmfa67ddc2004-06-03 03:38:44 +00002860 }
2861 YY_BREAK
2862/*
2863 * typereference, modulereference
2864 * NOTE: TOK_objectclassreference must be combined
2865 * with this token to produce true typereference.
2866 */
vlmb8958092006-03-06 11:28:17 +00002867case 120:
vlmfa67ddc2004-06-03 03:38:44 +00002868YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002869#line 382 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00002870{
vlmfa67ddc2004-06-03 03:38:44 +00002871 asn1p_lval.tv_str = strdup(yytext);
2872 return TOK_typereference;
2873 }
2874 YY_BREAK
vlmb8958092006-03-06 11:28:17 +00002875case 121:
2876YY_RULE_SETUP
2877#line 387 "asn1p_l.l"
2878return TOK_PPEQ;
2879 YY_BREAK
vlm177a5b62005-09-05 05:17:57 +00002880case 122:
vlmb5abdc92005-07-02 21:42:40 +00002881YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002882#line 389 "asn1p_l.l"
2883return TOK_ThreeDots;
vlmfa67ddc2004-06-03 03:38:44 +00002884 YY_BREAK
vlm177a5b62005-09-05 05:17:57 +00002885case 123:
2886YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002887#line 390 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002888return TOK_TwoDots;
2889 YY_BREAK
2890
vlmb8958092006-03-06 11:28:17 +00002891case 124:
2892YY_RULE_SETUP
2893#line 394 "asn1p_l.l"
2894{
2895 asn1p_lval.tv_opaque.buf = strdup(yytext);
2896 asn1p_lval.tv_opaque.len = yyleng;
2897 return TOK_opaque;
2898 }
2899 YY_BREAK
vlmb5abdc92005-07-02 21:42:40 +00002900case 125:
vlmfa67ddc2004-06-03 03:38:44 +00002901YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002902#line 400 "asn1p_l.l"
vlm177a5b62005-09-05 05:17:57 +00002903{
2904 asn1p_lval.tv_opaque.buf = strdup(yytext);
2905 asn1p_lval.tv_opaque.len = yyleng;
2906 return TOK_opaque;
2907 }
vlm066dc102005-08-22 12:23:54 +00002908 YY_BREAK
2909case 126:
2910YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002911#line 406 "asn1p_l.l"
vlm2c8c44d2005-03-24 16:22:35 +00002912{
2913 yy_pop_state();
2914 return '}';
2915 }
2916 YY_BREAK
2917
vlmb8958092006-03-06 11:28:17 +00002918case 127:
vlm2c8c44d2005-03-24 16:22:35 +00002919YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002920#line 414 "asn1p_l.l"
vlm2c8c44d2005-03-24 16:22:35 +00002921/* Ignore whitespace */
2922 YY_BREAK
vlmb8958092006-03-06 11:28:17 +00002923case 128:
vlm2c8c44d2005-03-24 16:22:35 +00002924YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002925#line 417 "asn1p_l.l"
vlm2c8c44d2005-03-24 16:22:35 +00002926{
2927 asn1c_integer_t v1 = -1, v2 = -1;
2928 char *p;
2929 for(p = yytext; *p; p++)
2930 if(*p >= '0' && *p <= '9')
2931 { v1 = asn1p_atoi(p); break; }
2932 while(*p >= '0' && *p <= '9') p++; /* Skip digits */
2933 for(; *p; p++) if(*p >= '0' && *p <= '9')
2934 { v2 = asn1p_atoi(p); break; }
2935 if(v1 < 0 || v1 > 7) {
2936 fprintf(stderr, "%s at line %d: X.680:2003, #37.14 "
2937 "mandates 0..7 range for Tuple's TableColumn\n",
2938 yytext, yylineno);
2939 return -1;
2940 }
2941 if(v2 < 0 || v2 > 15) {
2942 fprintf(stderr, "%s at line %d: X.680:2003, #37.14 "
2943 "mandates 0..15 range for Tuple's TableRow\n",
2944 yytext, yylineno);
2945 return -1;
2946 }
2947 asn1p_lval.a_int = (v1 << 4) + v2;
2948 return TOK_tuple;
2949 }
2950 YY_BREAK
vlmb8958092006-03-06 11:28:17 +00002951case 129:
vlm2c8c44d2005-03-24 16:22:35 +00002952YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002953#line 442 "asn1p_l.l"
vlm2c8c44d2005-03-24 16:22:35 +00002954{
2955 asn1c_integer_t v1 = -1, v2 = -1, v3 = -1, v4 = -1;
2956 char *p;
2957 for(p = yytext; *p; p++)
2958 if(*p >= '0' && *p <= '9')
2959 { v1 = asn1p_atoi(p); break; }
2960 while(*p >= '0' && *p <= '9') p++; /* Skip digits */
2961 for(; *p; p++) if(*p >= '0' && *p <= '9')
2962 { v2 = asn1p_atoi(p); break; }
2963 while(*p >= '0' && *p <= '9') p++;
2964 for(; *p; p++) if(*p >= '0' && *p <= '9')
2965 { v3 = asn1p_atoi(p); break; }
2966 while(*p >= '0' && *p <= '9') p++;
2967 for(; *p; p++) if(*p >= '0' && *p <= '9')
2968 { v4 = asn1p_atoi(p); break; }
2969 if(v1 < 0 || v1 > 127) {
2970 fprintf(stderr, "%s at line %d: X.680:2003, #37.12 "
2971 "mandates 0..127 range for Quadruple's Group\n",
2972 yytext, yylineno);
2973 return -1;
2974 }
2975 if(v2 < 0 || v2 > 255) {
2976 fprintf(stderr, "%s at line %d: X.680:2003, #37.12 "
2977 "mandates 0..255 range for Quadruple's Plane\n",
2978 yytext, yylineno);
2979 return -1;
2980 }
2981 if(v3 < 0 || v3 > 255) {
2982 fprintf(stderr, "%s at line %d: X.680:2003, #37.12 "
2983 "mandates 0..255 range for Quadruple's Row\n",
2984 yytext, yylineno);
2985 return -1;
2986 }
2987 if(v4 < 0 || v4 > 255) {
2988 fprintf(stderr, "%s at line %d: X.680:2003, #37.12 "
2989 "mandates 0..255 range for Quadruple's Cell\n",
2990 yytext, yylineno);
2991 return -1;
2992 }
2993 asn1p_lval.a_int = (v1 << 24) | (v2 << 16) | (v3 << 8) | v4;
2994 return TOK_quadruple;
2995 }
2996 YY_BREAK
vlmb8958092006-03-06 11:28:17 +00002997case 130:
vlm2c8c44d2005-03-24 16:22:35 +00002998YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00002999#line 486 "asn1p_l.l"
vlm2c8c44d2005-03-24 16:22:35 +00003000return yytext[0];
3001 YY_BREAK
vlmb8958092006-03-06 11:28:17 +00003002case 131:
vlm2c8c44d2005-03-24 16:22:35 +00003003YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00003004#line 488 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00003005{
3006 if(TYPE_LIFETIME(1994, 0))
3007 fprintf(stderr, "ERROR: ");
3008 fprintf(stderr,
3009 "Symbol '%c' at line %d is prohibited "
3010 "by ASN.1:1994 and ASN.1:1997\n",
3011 yytext[0], yylineno);
3012 if(TYPE_LIFETIME(1994, 0))
3013 return -1;
3014 }
3015 YY_BREAK
vlmb8958092006-03-06 11:28:17 +00003016case 132:
vlm2728a8d2005-01-23 09:51:44 +00003017YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00003018#line 499 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00003019{
3020 fprintf(stderr,
3021 "Unexpected token at line %d: \"%s\"\n",
3022 yylineno, yytext);
3023 while(YYSTATE != INITIAL)
3024 yy_pop_state();
vlmc94e28f2004-09-15 11:59:51 +00003025 if(0) {
3026 yy_top_state(); /* Just to use this function. */
3027 yy_fatal_error("Parse error");
3028 }
vlmfa67ddc2004-06-03 03:38:44 +00003029 return -1;
3030}
3031 YY_BREAK
3032case YY_STATE_EOF(INITIAL):
3033case YY_STATE_EOF(dash_comment):
vlmb5abdc92005-07-02 21:42:40 +00003034case YY_STATE_EOF(idash_comment):
vlmfa67ddc2004-06-03 03:38:44 +00003035case YY_STATE_EOF(cpp_comment):
3036case YY_STATE_EOF(quoted):
3037case YY_STATE_EOF(opaque):
vlm9283dbe2004-08-18 04:59:12 +00003038case YY_STATE_EOF(encoding_control):
vlmfa67ddc2004-06-03 03:38:44 +00003039case YY_STATE_EOF(with_syntax):
vlmb8958092006-03-06 11:28:17 +00003040#line 512 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00003041{
3042 while(YYSTATE != INITIAL)
3043 yy_pop_state();
3044 yyterminate();
3045 }
3046 YY_BREAK
vlmb8958092006-03-06 11:28:17 +00003047case 133:
vlmfa67ddc2004-06-03 03:38:44 +00003048YY_RULE_SETUP
vlmb8958092006-03-06 11:28:17 +00003049#line 519 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00003050YY_FATAL_ERROR( "flex scanner jammed" );
3051 YY_BREAK
vlmb8958092006-03-06 11:28:17 +00003052#line 3053 "asn1p_l.c"
vlmfa67ddc2004-06-03 03:38:44 +00003053
3054 case YY_END_OF_BUFFER:
3055 {
3056 /* Amount of text matched not including the EOB char. */
3057 int yy_amount_of_matched_text = (int) (yy_cp - yytext_ptr) - 1;
3058
3059 /* Undo the effects of YY_DO_BEFORE_ACTION. */
3060 *yy_cp = yy_hold_char;
3061 YY_RESTORE_YY_MORE_OFFSET
3062
3063 if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_NEW )
3064 {
3065 /* We're scanning a new file or input source. It's
3066 * possible that this happened because the user
3067 * just pointed yyin at a new source and called
3068 * yylex(). If so, then we have to assure
3069 * consistency between yy_current_buffer and our
3070 * globals. Here is the right place to do so, because
3071 * this is the first action (other than possibly a
3072 * back-up) that will match for the new input source.
3073 */
3074 yy_n_chars = yy_current_buffer->yy_n_chars;
3075 yy_current_buffer->yy_input_file = yyin;
3076 yy_current_buffer->yy_buffer_status = YY_BUFFER_NORMAL;
3077 }
3078
3079 /* Note that here we test for yy_c_buf_p "<=" to the position
3080 * of the first EOB in the buffer, since yy_c_buf_p will
3081 * already have been incremented past the NUL character
3082 * (since all states make transitions on EOB to the
3083 * end-of-buffer state). Contrast this with the test
3084 * in input().
3085 */
3086 if ( yy_c_buf_p <= &yy_current_buffer->yy_ch_buf[yy_n_chars] )
3087 { /* This was really a NUL. */
3088 yy_state_type yy_next_state;
3089
3090 yy_c_buf_p = yytext_ptr + yy_amount_of_matched_text;
3091
3092 yy_current_state = yy_get_previous_state();
3093
3094 /* Okay, we're now positioned to make the NUL
3095 * transition. We couldn't have
3096 * yy_get_previous_state() go ahead and do it
3097 * for us because it doesn't know how to deal
3098 * with the possibility of jamming (and we don't
3099 * want to build jamming into it because then it
3100 * will run more slowly).
3101 */
3102
3103 yy_next_state = yy_try_NUL_trans( yy_current_state );
3104
3105 yy_bp = yytext_ptr + YY_MORE_ADJ;
3106
3107 if ( yy_next_state )
3108 {
3109 /* Consume the NUL. */
3110 yy_cp = ++yy_c_buf_p;
3111 yy_current_state = yy_next_state;
3112 goto yy_match;
3113 }
3114
3115 else
3116 {
3117 yy_cp = yy_c_buf_p;
3118 goto yy_find_action;
3119 }
3120 }
3121
3122 else switch ( yy_get_next_buffer() )
3123 {
3124 case EOB_ACT_END_OF_FILE:
3125 {
3126 yy_did_buffer_switch_on_eof = 0;
3127
3128 if ( yywrap() )
3129 {
3130 /* Note: because we've taken care in
3131 * yy_get_next_buffer() to have set up
3132 * yytext, we can now set up
3133 * yy_c_buf_p so that if some total
3134 * hoser (like flex itself) wants to
3135 * call the scanner after we return the
3136 * YY_NULL, it'll still work - another
3137 * YY_NULL will get returned.
3138 */
3139 yy_c_buf_p = yytext_ptr + YY_MORE_ADJ;
3140
3141 yy_act = YY_STATE_EOF(YY_START);
3142 goto do_action;
3143 }
3144
3145 else
3146 {
3147 if ( ! yy_did_buffer_switch_on_eof )
3148 YY_NEW_FILE;
3149 }
3150 break;
3151 }
3152
3153 case EOB_ACT_CONTINUE_SCAN:
3154 yy_c_buf_p =
3155 yytext_ptr + yy_amount_of_matched_text;
3156
3157 yy_current_state = yy_get_previous_state();
3158
3159 yy_cp = yy_c_buf_p;
3160 yy_bp = yytext_ptr + YY_MORE_ADJ;
3161 goto yy_match;
3162
3163 case EOB_ACT_LAST_MATCH:
3164 yy_c_buf_p =
3165 &yy_current_buffer->yy_ch_buf[yy_n_chars];
3166
3167 yy_current_state = yy_get_previous_state();
3168
3169 yy_cp = yy_c_buf_p;
3170 yy_bp = yytext_ptr + YY_MORE_ADJ;
3171 goto yy_find_action;
3172 }
3173 break;
3174 }
3175
3176 default:
3177 YY_FATAL_ERROR(
3178 "fatal flex scanner internal error--no action found" );
3179 } /* end of action switch */
3180 } /* end of scanning one token */
3181 } /* end of yylex */
3182
3183
3184/* yy_get_next_buffer - try to read in a new buffer
3185 *
3186 * Returns a code representing an action:
3187 * EOB_ACT_LAST_MATCH -
3188 * EOB_ACT_CONTINUE_SCAN - continue scanning from current position
3189 * EOB_ACT_END_OF_FILE - end of file
3190 */
3191
3192static int yy_get_next_buffer()
3193 {
3194 register char *dest = yy_current_buffer->yy_ch_buf;
3195 register char *source = yytext_ptr;
3196 register int number_to_move, i;
3197 int ret_val;
3198
3199 if ( yy_c_buf_p > &yy_current_buffer->yy_ch_buf[yy_n_chars + 1] )
3200 YY_FATAL_ERROR(
3201 "fatal flex scanner internal error--end of buffer missed" );
3202
3203 if ( yy_current_buffer->yy_fill_buffer == 0 )
3204 { /* Don't try to fill the buffer, so this is an EOF. */
3205 if ( yy_c_buf_p - yytext_ptr - YY_MORE_ADJ == 1 )
3206 {
3207 /* We matched a single character, the EOB, so
3208 * treat this as a final EOF.
3209 */
3210 return EOB_ACT_END_OF_FILE;
3211 }
3212
3213 else
3214 {
3215 /* We matched some text prior to the EOB, first
3216 * process it.
3217 */
3218 return EOB_ACT_LAST_MATCH;
3219 }
3220 }
3221
3222 /* Try to read more data. */
3223
3224 /* First move last chars to start of buffer. */
3225 number_to_move = (int) (yy_c_buf_p - yytext_ptr) - 1;
3226
3227 for ( i = 0; i < number_to_move; ++i )
3228 *(dest++) = *(source++);
3229
3230 if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_EOF_PENDING )
3231 /* don't do the read, it's not guaranteed to return an EOF,
3232 * just force an EOF
3233 */
3234 yy_current_buffer->yy_n_chars = yy_n_chars = 0;
3235
3236 else
3237 {
3238 int num_to_read =
3239 yy_current_buffer->yy_buf_size - number_to_move - 1;
3240
3241 while ( num_to_read <= 0 )
3242 { /* Not enough room in the buffer - grow it. */
3243#ifdef YY_USES_REJECT
3244 YY_FATAL_ERROR(
3245"input buffer overflow, can't enlarge buffer because scanner uses REJECT" );
3246#else
3247
3248 /* just a shorter name for the current buffer */
3249 YY_BUFFER_STATE b = yy_current_buffer;
3250
3251 int yy_c_buf_p_offset =
3252 (int) (yy_c_buf_p - b->yy_ch_buf);
3253
3254 if ( b->yy_is_our_buffer )
3255 {
3256 int new_size = b->yy_buf_size * 2;
3257
3258 if ( new_size <= 0 )
3259 b->yy_buf_size += b->yy_buf_size / 8;
3260 else
3261 b->yy_buf_size *= 2;
3262
3263 b->yy_ch_buf = (char *)
3264 /* Include room in for 2 EOB chars. */
3265 yy_flex_realloc( (void *) b->yy_ch_buf,
3266 b->yy_buf_size + 2 );
3267 }
3268 else
3269 /* Can't grow it, we don't own it. */
3270 b->yy_ch_buf = 0;
3271
3272 if ( ! b->yy_ch_buf )
3273 YY_FATAL_ERROR(
3274 "fatal error - scanner input buffer overflow" );
3275
3276 yy_c_buf_p = &b->yy_ch_buf[yy_c_buf_p_offset];
3277
3278 num_to_read = yy_current_buffer->yy_buf_size -
3279 number_to_move - 1;
3280#endif
3281 }
3282
3283 if ( num_to_read > YY_READ_BUF_SIZE )
3284 num_to_read = YY_READ_BUF_SIZE;
3285
3286 /* Read in more data. */
3287 YY_INPUT( (&yy_current_buffer->yy_ch_buf[number_to_move]),
3288 yy_n_chars, num_to_read );
3289
3290 yy_current_buffer->yy_n_chars = yy_n_chars;
3291 }
3292
3293 if ( yy_n_chars == 0 )
3294 {
3295 if ( number_to_move == YY_MORE_ADJ )
3296 {
3297 ret_val = EOB_ACT_END_OF_FILE;
3298 yyrestart( yyin );
3299 }
3300
3301 else
3302 {
3303 ret_val = EOB_ACT_LAST_MATCH;
3304 yy_current_buffer->yy_buffer_status =
3305 YY_BUFFER_EOF_PENDING;
3306 }
3307 }
3308
3309 else
3310 ret_val = EOB_ACT_CONTINUE_SCAN;
3311
3312 yy_n_chars += number_to_move;
3313 yy_current_buffer->yy_ch_buf[yy_n_chars] = YY_END_OF_BUFFER_CHAR;
3314 yy_current_buffer->yy_ch_buf[yy_n_chars + 1] = YY_END_OF_BUFFER_CHAR;
3315
3316 yytext_ptr = &yy_current_buffer->yy_ch_buf[0];
3317
3318 return ret_val;
3319 }
3320
3321
3322/* yy_get_previous_state - get the state just before the EOB char was reached */
3323
3324static yy_state_type yy_get_previous_state()
3325 {
3326 register yy_state_type yy_current_state;
3327 register char *yy_cp;
3328
3329 yy_current_state = yy_start;
3330 yy_state_ptr = yy_state_buf;
3331 *yy_state_ptr++ = yy_current_state;
3332
3333 for ( yy_cp = yytext_ptr + YY_MORE_ADJ; yy_cp < yy_c_buf_p; ++yy_cp )
3334 {
3335 register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
3336 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
3337 {
3338 yy_current_state = (int) yy_def[yy_current_state];
vlmb8958092006-03-06 11:28:17 +00003339 if ( yy_current_state >= 726 )
vlmfa67ddc2004-06-03 03:38:44 +00003340 yy_c = yy_meta[(unsigned int) yy_c];
3341 }
3342 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
3343 *yy_state_ptr++ = yy_current_state;
3344 }
3345
3346 return yy_current_state;
3347 }
3348
3349
3350/* yy_try_NUL_trans - try to make a transition on the NUL character
3351 *
3352 * synopsis
3353 * next_state = yy_try_NUL_trans( current_state );
3354 */
3355
3356#ifdef YY_USE_PROTOS
3357static yy_state_type yy_try_NUL_trans( yy_state_type yy_current_state )
3358#else
3359static yy_state_type yy_try_NUL_trans( yy_current_state )
3360yy_state_type yy_current_state;
3361#endif
3362 {
3363 register int yy_is_jam;
3364
3365 register YY_CHAR yy_c = 1;
3366 while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
3367 {
3368 yy_current_state = (int) yy_def[yy_current_state];
vlmb8958092006-03-06 11:28:17 +00003369 if ( yy_current_state >= 726 )
vlmfa67ddc2004-06-03 03:38:44 +00003370 yy_c = yy_meta[(unsigned int) yy_c];
3371 }
3372 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
vlmb8958092006-03-06 11:28:17 +00003373 yy_is_jam = (yy_current_state == 725);
vlmfa67ddc2004-06-03 03:38:44 +00003374 if ( ! yy_is_jam )
3375 *yy_state_ptr++ = yy_current_state;
3376
3377 return yy_is_jam ? 0 : yy_current_state;
3378 }
3379
3380
3381#ifndef YY_NO_UNPUT
3382#ifdef YY_USE_PROTOS
3383static void yyunput( int c, register char *yy_bp )
3384#else
3385static void yyunput( c, yy_bp )
3386int c;
3387register char *yy_bp;
3388#endif
3389 {
3390 register char *yy_cp = yy_c_buf_p;
3391
3392 /* undo effects of setting up yytext */
3393 *yy_cp = yy_hold_char;
3394
3395 if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 )
3396 { /* need to shift things up to make room */
3397 /* +2 for EOB chars. */
3398 register int number_to_move = yy_n_chars + 2;
3399 register char *dest = &yy_current_buffer->yy_ch_buf[
3400 yy_current_buffer->yy_buf_size + 2];
3401 register char *source =
3402 &yy_current_buffer->yy_ch_buf[number_to_move];
3403
3404 while ( source > yy_current_buffer->yy_ch_buf )
3405 *--dest = *--source;
3406
3407 yy_cp += (int) (dest - source);
3408 yy_bp += (int) (dest - source);
3409 yy_current_buffer->yy_n_chars =
3410 yy_n_chars = yy_current_buffer->yy_buf_size;
3411
3412 if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 )
3413 YY_FATAL_ERROR( "flex scanner push-back overflow" );
3414 }
3415
3416 *--yy_cp = (char) c;
3417
3418 if ( c == '\n' )
3419 --yylineno;
3420
3421 yytext_ptr = yy_bp;
3422 yy_hold_char = *yy_cp;
3423 yy_c_buf_p = yy_cp;
3424 }
3425#endif /* ifndef YY_NO_UNPUT */
3426
3427
3428#ifdef __cplusplus
3429static int yyinput()
3430#else
3431static int input()
3432#endif
3433 {
3434 int c;
3435
3436 *yy_c_buf_p = yy_hold_char;
3437
3438 if ( *yy_c_buf_p == YY_END_OF_BUFFER_CHAR )
3439 {
3440 /* yy_c_buf_p now points to the character we want to return.
3441 * If this occurs *before* the EOB characters, then it's a
3442 * valid NUL; if not, then we've hit the end of the buffer.
3443 */
3444 if ( yy_c_buf_p < &yy_current_buffer->yy_ch_buf[yy_n_chars] )
3445 /* This was really a NUL. */
3446 *yy_c_buf_p = '\0';
3447
3448 else
3449 { /* need more input */
3450 int offset = yy_c_buf_p - yytext_ptr;
3451 ++yy_c_buf_p;
3452
3453 switch ( yy_get_next_buffer() )
3454 {
3455 case EOB_ACT_LAST_MATCH:
3456 /* This happens because yy_g_n_b()
3457 * sees that we've accumulated a
3458 * token and flags that we need to
3459 * try matching the token before
3460 * proceeding. But for input(),
3461 * there's no matching to consider.
3462 * So convert the EOB_ACT_LAST_MATCH
3463 * to EOB_ACT_END_OF_FILE.
3464 */
3465
3466 /* Reset buffer status. */
3467 yyrestart( yyin );
3468
3469 /* fall through */
3470
3471 case EOB_ACT_END_OF_FILE:
3472 {
3473 if ( yywrap() )
3474 return EOF;
3475
3476 if ( ! yy_did_buffer_switch_on_eof )
3477 YY_NEW_FILE;
3478#ifdef __cplusplus
3479 return yyinput();
3480#else
3481 return input();
3482#endif
3483 }
3484
3485 case EOB_ACT_CONTINUE_SCAN:
3486 yy_c_buf_p = yytext_ptr + offset;
3487 break;
3488 }
3489 }
3490 }
3491
3492 c = *(unsigned char *) yy_c_buf_p; /* cast for 8-bit char's */
3493 *yy_c_buf_p = '\0'; /* preserve yytext */
3494 yy_hold_char = *++yy_c_buf_p;
3495
3496 if ( c == '\n' )
3497 ++yylineno;
3498
3499 return c;
3500 }
3501
3502
3503#ifdef YY_USE_PROTOS
3504void yyrestart( FILE *input_file )
3505#else
3506void yyrestart( input_file )
3507FILE *input_file;
3508#endif
3509 {
3510 if ( ! yy_current_buffer )
3511 yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE );
3512
3513 yy_init_buffer( yy_current_buffer, input_file );
3514 yy_load_buffer_state();
3515 }
3516
3517
3518#ifdef YY_USE_PROTOS
3519void yy_switch_to_buffer( YY_BUFFER_STATE new_buffer )
3520#else
3521void yy_switch_to_buffer( new_buffer )
3522YY_BUFFER_STATE new_buffer;
3523#endif
3524 {
3525 if ( yy_current_buffer == new_buffer )
3526 return;
3527
3528 if ( yy_current_buffer )
3529 {
3530 /* Flush out information for old buffer. */
3531 *yy_c_buf_p = yy_hold_char;
3532 yy_current_buffer->yy_buf_pos = yy_c_buf_p;
3533 yy_current_buffer->yy_n_chars = yy_n_chars;
3534 }
3535
3536 yy_current_buffer = new_buffer;
3537 yy_load_buffer_state();
3538
3539 /* We don't actually know whether we did this switch during
3540 * EOF (yywrap()) processing, but the only time this flag
3541 * is looked at is after yywrap() is called, so it's safe
3542 * to go ahead and always set it.
3543 */
3544 yy_did_buffer_switch_on_eof = 1;
3545 }
3546
3547
3548#ifdef YY_USE_PROTOS
3549void yy_load_buffer_state( void )
3550#else
3551void yy_load_buffer_state()
3552#endif
3553 {
3554 yy_n_chars = yy_current_buffer->yy_n_chars;
3555 yytext_ptr = yy_c_buf_p = yy_current_buffer->yy_buf_pos;
3556 yyin = yy_current_buffer->yy_input_file;
3557 yy_hold_char = *yy_c_buf_p;
3558 }
3559
3560
3561#ifdef YY_USE_PROTOS
3562YY_BUFFER_STATE yy_create_buffer( FILE *file, int size )
3563#else
3564YY_BUFFER_STATE yy_create_buffer( file, size )
3565FILE *file;
3566int size;
3567#endif
3568 {
3569 YY_BUFFER_STATE b;
3570
3571 b = (YY_BUFFER_STATE) yy_flex_alloc( sizeof( struct yy_buffer_state ) );
3572 if ( ! b )
3573 YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
3574
3575 b->yy_buf_size = size;
3576
3577 /* yy_ch_buf has to be 2 characters longer than the size given because
3578 * we need to put in 2 end-of-buffer characters.
3579 */
3580 b->yy_ch_buf = (char *) yy_flex_alloc( b->yy_buf_size + 2 );
3581 if ( ! b->yy_ch_buf )
3582 YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
3583
3584 b->yy_is_our_buffer = 1;
3585
3586 yy_init_buffer( b, file );
3587
3588 return b;
3589 }
3590
3591
3592#ifdef YY_USE_PROTOS
3593void yy_delete_buffer( YY_BUFFER_STATE b )
3594#else
3595void yy_delete_buffer( b )
3596YY_BUFFER_STATE b;
3597#endif
3598 {
3599 if ( ! b )
3600 return;
3601
3602 if ( b == yy_current_buffer )
3603 yy_current_buffer = (YY_BUFFER_STATE) 0;
3604
3605 if ( b->yy_is_our_buffer )
3606 yy_flex_free( (void *) b->yy_ch_buf );
3607
3608 yy_flex_free( (void *) b );
3609 }
3610
3611
3612#ifndef YY_ALWAYS_INTERACTIVE
3613#ifndef YY_NEVER_INTERACTIVE
3614extern int isatty YY_PROTO(( int ));
3615#endif
3616#endif
3617
3618#ifdef YY_USE_PROTOS
3619void yy_init_buffer( YY_BUFFER_STATE b, FILE *file )
3620#else
3621void yy_init_buffer( b, file )
3622YY_BUFFER_STATE b;
3623FILE *file;
3624#endif
3625
3626
3627 {
3628 yy_flush_buffer( b );
3629
3630 b->yy_input_file = file;
3631 b->yy_fill_buffer = 1;
3632
3633#if YY_ALWAYS_INTERACTIVE
3634 b->yy_is_interactive = 1;
3635#else
3636#if YY_NEVER_INTERACTIVE
3637 b->yy_is_interactive = 0;
3638#else
3639 b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0;
3640#endif
3641#endif
3642 }
3643
3644
3645#ifdef YY_USE_PROTOS
3646void yy_flush_buffer( YY_BUFFER_STATE b )
3647#else
3648void yy_flush_buffer( b )
3649YY_BUFFER_STATE b;
3650#endif
3651
3652 {
3653 if ( ! b )
3654 return;
3655
3656 b->yy_n_chars = 0;
3657
3658 /* We always need two end-of-buffer characters. The first causes
3659 * a transition to the end-of-buffer state. The second causes
3660 * a jam in that state.
3661 */
3662 b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR;
3663 b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR;
3664
3665 b->yy_buf_pos = &b->yy_ch_buf[0];
3666
3667 b->yy_at_bol = 1;
3668 b->yy_buffer_status = YY_BUFFER_NEW;
3669
3670 if ( b == yy_current_buffer )
3671 yy_load_buffer_state();
3672 }
3673
3674
3675#ifndef YY_NO_SCAN_BUFFER
3676#ifdef YY_USE_PROTOS
3677YY_BUFFER_STATE yy_scan_buffer( char *base, yy_size_t size )
3678#else
3679YY_BUFFER_STATE yy_scan_buffer( base, size )
3680char *base;
3681yy_size_t size;
3682#endif
3683 {
3684 YY_BUFFER_STATE b;
3685
3686 if ( size < 2 ||
3687 base[size-2] != YY_END_OF_BUFFER_CHAR ||
3688 base[size-1] != YY_END_OF_BUFFER_CHAR )
3689 /* They forgot to leave room for the EOB's. */
3690 return 0;
3691
3692 b = (YY_BUFFER_STATE) yy_flex_alloc( sizeof( struct yy_buffer_state ) );
3693 if ( ! b )
3694 YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" );
3695
3696 b->yy_buf_size = size - 2; /* "- 2" to take care of EOB's */
3697 b->yy_buf_pos = b->yy_ch_buf = base;
3698 b->yy_is_our_buffer = 0;
3699 b->yy_input_file = 0;
3700 b->yy_n_chars = b->yy_buf_size;
3701 b->yy_is_interactive = 0;
3702 b->yy_at_bol = 1;
3703 b->yy_fill_buffer = 0;
3704 b->yy_buffer_status = YY_BUFFER_NEW;
3705
3706 yy_switch_to_buffer( b );
3707
3708 return b;
3709 }
3710#endif
3711
3712
3713#ifndef YY_NO_SCAN_STRING
3714#ifdef YY_USE_PROTOS
3715YY_BUFFER_STATE yy_scan_string( yyconst char *yy_str )
3716#else
3717YY_BUFFER_STATE yy_scan_string( yy_str )
3718yyconst char *yy_str;
3719#endif
3720 {
3721 int len;
3722 for ( len = 0; yy_str[len]; ++len )
3723 ;
3724
3725 return yy_scan_bytes( yy_str, len );
3726 }
3727#endif
3728
3729
3730#ifndef YY_NO_SCAN_BYTES
3731#ifdef YY_USE_PROTOS
3732YY_BUFFER_STATE yy_scan_bytes( yyconst char *bytes, int len )
3733#else
3734YY_BUFFER_STATE yy_scan_bytes( bytes, len )
3735yyconst char *bytes;
3736int len;
3737#endif
3738 {
3739 YY_BUFFER_STATE b;
3740 char *buf;
3741 yy_size_t n;
3742 int i;
3743
3744 /* Get memory for full buffer, including space for trailing EOB's. */
3745 n = len + 2;
3746 buf = (char *) yy_flex_alloc( n );
3747 if ( ! buf )
3748 YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" );
3749
3750 for ( i = 0; i < len; ++i )
3751 buf[i] = bytes[i];
3752
3753 buf[len] = buf[len+1] = YY_END_OF_BUFFER_CHAR;
3754
3755 b = yy_scan_buffer( buf, n );
3756 if ( ! b )
3757 YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" );
3758
3759 /* It's okay to grow etc. this buffer, and we should throw it
3760 * away when we're done.
3761 */
3762 b->yy_is_our_buffer = 1;
3763
3764 return b;
3765 }
3766#endif
3767
3768
3769#ifndef YY_NO_PUSH_STATE
3770#ifdef YY_USE_PROTOS
3771static void yy_push_state( int new_state )
3772#else
3773static void yy_push_state( new_state )
3774int new_state;
3775#endif
3776 {
3777 if ( yy_start_stack_ptr >= yy_start_stack_depth )
3778 {
3779 yy_size_t new_size;
3780
3781 yy_start_stack_depth += YY_START_STACK_INCR;
3782 new_size = yy_start_stack_depth * sizeof( int );
3783
3784 if ( ! yy_start_stack )
3785 yy_start_stack = (int *) yy_flex_alloc( new_size );
3786
3787 else
3788 yy_start_stack = (int *) yy_flex_realloc(
3789 (void *) yy_start_stack, new_size );
3790
3791 if ( ! yy_start_stack )
3792 YY_FATAL_ERROR(
3793 "out of memory expanding start-condition stack" );
3794 }
3795
3796 yy_start_stack[yy_start_stack_ptr++] = YY_START;
3797
3798 BEGIN(new_state);
3799 }
3800#endif
3801
3802
3803#ifndef YY_NO_POP_STATE
3804static void yy_pop_state()
3805 {
3806 if ( --yy_start_stack_ptr < 0 )
3807 YY_FATAL_ERROR( "start-condition stack underflow" );
3808
3809 BEGIN(yy_start_stack[yy_start_stack_ptr]);
3810 }
3811#endif
3812
3813
3814#ifndef YY_NO_TOP_STATE
3815static int yy_top_state()
3816 {
3817 return yy_start_stack[yy_start_stack_ptr - 1];
3818 }
3819#endif
3820
3821#ifndef YY_EXIT_FAILURE
3822#define YY_EXIT_FAILURE 2
3823#endif
3824
3825#ifdef YY_USE_PROTOS
3826static void yy_fatal_error( yyconst char msg[] )
3827#else
3828static void yy_fatal_error( msg )
3829char msg[];
3830#endif
3831 {
3832 (void) fprintf( stderr, "%s\n", msg );
3833 exit( YY_EXIT_FAILURE );
3834 }
3835
3836
3837
3838/* Redefine yyless() so it works in section 3 code. */
3839
3840#undef yyless
3841#define yyless(n) \
3842 do \
3843 { \
3844 /* Undo effects of setting up yytext. */ \
3845 yytext[yyleng] = yy_hold_char; \
3846 yy_c_buf_p = yytext + n; \
3847 yy_hold_char = *yy_c_buf_p; \
3848 *yy_c_buf_p = '\0'; \
3849 yyleng = n; \
3850 } \
3851 while ( 0 )
3852
3853
3854/* Internal utility routines. */
3855
3856#ifndef yytext_ptr
3857#ifdef YY_USE_PROTOS
3858static void yy_flex_strncpy( char *s1, yyconst char *s2, int n )
3859#else
3860static void yy_flex_strncpy( s1, s2, n )
3861char *s1;
3862yyconst char *s2;
3863int n;
3864#endif
3865 {
3866 register int i;
3867 for ( i = 0; i < n; ++i )
3868 s1[i] = s2[i];
3869 }
3870#endif
3871
3872#ifdef YY_NEED_STRLEN
3873#ifdef YY_USE_PROTOS
3874static int yy_flex_strlen( yyconst char *s )
3875#else
3876static int yy_flex_strlen( s )
3877yyconst char *s;
3878#endif
3879 {
3880 register int n;
3881 for ( n = 0; s[n]; ++n )
3882 ;
3883
3884 return n;
3885 }
3886#endif
3887
3888
3889#ifdef YY_USE_PROTOS
3890static void *yy_flex_alloc( yy_size_t size )
3891#else
3892static void *yy_flex_alloc( size )
3893yy_size_t size;
3894#endif
3895 {
3896 return (void *) malloc( size );
3897 }
3898
3899#ifdef YY_USE_PROTOS
3900static void *yy_flex_realloc( void *ptr, yy_size_t size )
3901#else
3902static void *yy_flex_realloc( ptr, size )
3903void *ptr;
3904yy_size_t size;
3905#endif
3906 {
3907 /* The cast to (char *) in the following accommodates both
3908 * implementations that use char* generic pointers, and those
3909 * that use void* generic pointers. It works with the latter
3910 * because both ANSI C and C++ allow castless assignment from
3911 * any pointer type to void*, and deal with argument conversions
3912 * as though doing an assignment.
3913 */
3914 return (void *) realloc( (char *) ptr, size );
3915 }
3916
3917#ifdef YY_USE_PROTOS
3918static void yy_flex_free( void *ptr )
3919#else
3920static void yy_flex_free( ptr )
3921void *ptr;
3922#endif
3923 {
3924 free( ptr );
3925 }
3926
3927#if YY_MAIN
3928int main()
3929 {
3930 yylex();
3931 return 0;
3932 }
3933#endif
vlmb8958092006-03-06 11:28:17 +00003934#line 519 "asn1p_l.l"
vlmfa67ddc2004-06-03 03:38:44 +00003935
3936
3937/*
3938 * Very dirty but wonderful hack allowing to rule states from within .y file.
3939 */
vlm9283dbe2004-08-18 04:59:12 +00003940void asn1p_lexer_hack_push_opaque_state() { yy_push_state(opaque); }
vlmfa67ddc2004-06-03 03:38:44 +00003941
3942/*
3943 * Another hack which disables recognizing some tokens when inside WITH SYNTAX.
3944 */
vlm9283dbe2004-08-18 04:59:12 +00003945void asn1p_lexer_hack_enable_with_syntax() { yy_push_state(with_syntax); }
3946
3947/* Yet another */
3948void asn1p_lexer_hack_push_encoding_control() {
3949 yy_push_state(encoding_control);
vlmfa67ddc2004-06-03 03:38:44 +00003950}
3951
vlmec6acd42004-09-29 13:18:09 +00003952static asn1c_integer_t
vlmfa67ddc2004-06-03 03:38:44 +00003953asn1p_atoi(char *ptr) {
vlmec6acd42004-09-29 13:18:09 +00003954 asn1c_integer_t value;
vlmfa67ddc2004-06-03 03:38:44 +00003955 errno = 0; /* Clear the error code */
3956
3957 if(sizeof(value) <= sizeof(int)) {
3958 value = strtol(ptr, 0, 10);
3959 } else {
3960#ifdef HAVE_STRTOIMAX
3961 value = strtoimax(ptr, 0, 10);
3962#elif HAVE_STRTOLL
3963 value = strtoll(ptr, 0, 10);
3964#else
3965 value = strtol(ptr, 0, 10);
3966#endif
3967 }
3968
3969 if(errno == ERANGE) {
3970 fprintf(stderr,
3971 "Value \"%s\" at line %d is too large "
vlm86912f02005-04-05 08:46:22 +00003972 "for this compiler! Please contact the asn1c author.\n",
vlmfa67ddc2004-06-03 03:38:44 +00003973 ptr, yylineno);
3974 errno = ERANGE; /* Restore potentially clobbered errno */
3975 }
3976
3977 return value;
3978}
3979