Crossfire Server, Trunk
loader.c
Go to the documentation of this file.
1 
2 #line 3 "loader.c"
3 
4 #define YY_INT_ALIGNED short int
5 
6 /* A lexical scanner generated by flex */
7 
8 #define FLEX_SCANNER
9 #define YY_FLEX_MAJOR_VERSION 2
10 #define YY_FLEX_MINOR_VERSION 6
11 #define YY_FLEX_SUBMINOR_VERSION 4
12 #if YY_FLEX_SUBMINOR_VERSION > 0
13 #define FLEX_BETA
14 #endif
15 
16 /* First, we deal with platform-specific or compiler-specific issues. */
17 
18 /* begin standard C headers. */
19 #include <stdio.h>
20 #include <string.h>
21 #include <errno.h>
22 #include <stdlib.h>
23 
24 /* end standard C headers. */
25 
26 /* flex integer type definitions */
27 
28 #ifndef FLEXINT_H
29 #define FLEXINT_H
30 
31 /* C99 systems have <inttypes.h>. Non-C99 systems may or may not. */
32 
33 #if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
34 
35 /* C99 says to define __STDC_LIMIT_MACROS before including stdint.h,
36  * if you want the limit (max/min) macros for int types.
37  */
38 #ifndef __STDC_LIMIT_MACROS
39 #define __STDC_LIMIT_MACROS 1
40 #endif
41 
42 #include <inttypes.h>
43 typedef int8_t flex_int8_t;
44 typedef uint8_t flex_uint8_t;
45 typedef int16_t flex_int16_t;
46 typedef uint16_t flex_uint16_t;
47 typedef int32_t flex_int32_t;
48 typedef uint32_t flex_uint32_t;
49 #else
50 typedef signed char flex_int8_t;
51 typedef short int flex_int16_t;
52 typedef int flex_int32_t;
53 typedef unsigned char flex_uint8_t;
54 typedef unsigned short int flex_uint16_t;
55 typedef unsigned int flex_uint32_t;
56 
57 /* Limits of integral types. */
58 #ifndef INT8_MIN
59 #define INT8_MIN (-128)
60 #endif
61 #ifndef INT16_MIN
62 #define INT16_MIN (-32767-1)
63 #endif
64 #ifndef INT32_MIN
65 #define INT32_MIN (-2147483647-1)
66 #endif
67 #ifndef INT8_MAX
68 #define INT8_MAX (127)
69 #endif
70 #ifndef INT16_MAX
71 #define INT16_MAX (32767)
72 #endif
73 #ifndef INT32_MAX
74 #define INT32_MAX (2147483647)
75 #endif
76 #ifndef UINT8_MAX
77 #define UINT8_MAX (255U)
78 #endif
79 #ifndef UINT16_MAX
80 #define UINT16_MAX (65535U)
81 #endif
82 #ifndef UINT32_MAX
83 #define UINT32_MAX (4294967295U)
84 #endif
85 
86 #ifndef SIZE_MAX
87 #define SIZE_MAX (~(size_t)0)
88 #endif
89 
90 #endif /* ! C99 */
91 
92 #endif /* ! FLEXINT_H */
93 
94 /* begin standard C++ headers. */
95 
96 /* TODO: this is always defined, so inline it */
97 #define yyconst const
98 
99 #if defined(__GNUC__) && __GNUC__ >= 3
100 #define yynoreturn __attribute__((__noreturn__))
101 #else
102 #define yynoreturn
103 #endif
104 
105 /* Returned upon end-of-file. */
106 #define YY_NULL 0
107 
108 /* Promotes a possibly negative, possibly signed char to an
109  * integer in range [0..255] for use as an array index.
110  */
111 #define YY_SC_TO_UI(c) ((YY_CHAR) (c))
112 
113 /* Enter a start condition. This macro really ought to take a parameter,
114  * but we do it the disgusting crufty way forced on us by the ()-less
115  * definition of BEGIN.
116  */
117 #define BEGIN (yy_start) = 1 + 2 *
118 /* Translate the current start state into a value that can be later handed
119  * to BEGIN to return to the state. The YYSTATE alias is for lex
120  * compatibility.
121  */
122 #define YY_START (((yy_start) - 1) / 2)
123 #define YYSTATE YY_START
124 /* Action number for EOF rule of a given start state. */
125 #define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)
126 /* Special action meaning "start processing a new file". */
127 #define YY_NEW_FILE yyrestart( yyin )
128 #define YY_END_OF_BUFFER_CHAR 0
129 
130 /* Size of default input buffer. */
131 #ifndef YY_BUF_SIZE
132 #ifdef __ia64__
133 /* On IA-64, the buffer size is 16k, not 8k.
134  * Moreover, YY_BUF_SIZE is 2*YY_READ_BUF_SIZE in the general case.
135  * Ditto for the __ia64__ case accordingly.
136  */
137 #define YY_BUF_SIZE 32768
138 #else
139 #define YY_BUF_SIZE 16384
140 #endif /* __ia64__ */
141 #endif
142 
143 /* The state buf must be large enough to hold one state per character in the main buffer.
144  */
145 #define YY_STATE_BUF_SIZE ((YY_BUF_SIZE + 2) * sizeof(yy_state_type))
146 
147 #ifndef YY_TYPEDEF_YY_BUFFER_STATE
148 #define YY_TYPEDEF_YY_BUFFER_STATE
150 #endif
151 
152 #ifndef YY_TYPEDEF_YY_SIZE_T
153 #define YY_TYPEDEF_YY_SIZE_T
154 typedef size_t yy_size_t;
155 #endif
156 
157 extern int yyleng;
158 
159 extern FILE *yyin, *yyout;
160 
161 #define EOB_ACT_CONTINUE_SCAN 0
162 #define EOB_ACT_END_OF_FILE 1
163 #define EOB_ACT_LAST_MATCH 2
164 
165  #define YY_LESS_LINENO(n)
166  #define YY_LINENO_REWIND_TO(ptr)
167 
168 /* Return all but the first "n" matched characters back to the input stream. */
169 #define yyless(n) \
170  do \
171  { \
172  /* Undo effects of setting up yytext. */ \
173  int yyless_macro_arg = (n); \
174  YY_LESS_LINENO(yyless_macro_arg);\
175  *yy_cp = (yy_hold_char); \
176  YY_RESTORE_YY_MORE_OFFSET \
177  (yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \
178  YY_DO_BEFORE_ACTION; /* set up yytext again */ \
179  } \
180  while ( 0 )
181 #define unput(c) yyunput( c, (yytext_ptr) )
182 
183 #ifndef YY_STRUCT_YY_BUFFER_STATE
184 #define YY_STRUCT_YY_BUFFER_STATE
186  {
188 
189  char *yy_ch_buf; /* input buffer */
190  char *yy_buf_pos; /* current position in input buffer */
191 
192  /* Size of input buffer in bytes, not including room for EOB
193  * characters.
194  */
196 
197  /* Number of characters read into yy_ch_buf, not including EOB
198  * characters.
199  */
201 
202  /* Whether we "own" the buffer - i.e., we know we created it,
203  * and can realloc() it to grow it, and should free() it to
204  * delete it.
205  */
207 
208  /* Whether this is an "interactive" input source; if so, and
209  * if we're using stdio for input, then we want to use getc()
210  * instead of fread(), to make sure we stop fetching input after
211  * each newline.
212  */
214 
215  /* Whether we're considered to be at the beginning of a line.
216  * If so, '^' rules will be active on the next match, otherwise
217  * not.
218  */
220 
224  /* Whether to try to fill the input buffer when we reach the
225  * end of it.
226  */
228 
230 
231 #define YY_BUFFER_NEW 0
232 #define YY_BUFFER_NORMAL 1
233  /* When an EOF's been seen but there's still some text to process
234  * then we mark the buffer as YY_EOF_PENDING, to indicate that we
235  * shouldn't try reading from the input source any more. We might
236  * still have a bunch of tokens to match, though, because of
237  * possible backing-up.
238  *
239  * When we actually see the EOF, we change the status to "new"
240  * (via yyrestart()), so that the user can continue scanning by
241  * just pointing yyin at a new input file.
242  */
243 #define YY_BUFFER_EOF_PENDING 2
244 
245  };
246 #endif /* !YY_STRUCT_YY_BUFFER_STATE */
247 
248 /* Stack of input buffers. */
249 static size_t yy_buffer_stack_top = 0;
250 static size_t yy_buffer_stack_max = 0;
253 /* We provide macros for accessing buffer states in case in the
254  * future we want to put the buffer states in a more general
255  * "scanner state".
256  *
257  * Returns the top of the stack, or NULL.
258  */
259 #define YY_CURRENT_BUFFER ( (yy_buffer_stack) \
260  ? (yy_buffer_stack)[(yy_buffer_stack_top)] \
261  : NULL)
262 /* Same as previous macro, but useful when we know that the buffer stack is not
263  * NULL or when we need an lvalue. For internal use only.
264  */
265 #define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)]
266 
267 /* yy_hold_char holds the character lost when yytext is formed. */
268 static char yy_hold_char;
269 static int yy_n_chars; /* number of characters read into yy_ch_buf */
270 int yyleng;
271 
272 /* Points to current character in buffer. */
273 static char *yy_c_buf_p = NULL;
274 static int yy_init = 0; /* whether we need to initialize */
275 static int yy_start = 0; /* start state number */
276 
277 /* Flag which is used to allow yywrap()'s to do buffer switches
278  * instead of setting up a fresh yyin. A bit of a hack ...
279  */
281 
282 void yyrestart ( FILE *input_file );
283 void yy_switch_to_buffer ( YY_BUFFER_STATE new_buffer );
284 YY_BUFFER_STATE yy_create_buffer ( FILE *file, int size );
287 void yypush_buffer_state ( YY_BUFFER_STATE new_buffer );
288 void yypop_buffer_state ( void );
289 
290 static void yyensure_buffer_stack ( void );
291 static void yy_load_buffer_state ( void );
292 static void yy_init_buffer ( YY_BUFFER_STATE b, FILE *file );
293 #define YY_FLUSH_BUFFER yy_flush_buffer( YY_CURRENT_BUFFER )
294 
295 YY_BUFFER_STATE yy_scan_buffer ( char *base, yy_size_t size );
296 YY_BUFFER_STATE yy_scan_string ( const char *yy_str );
297 YY_BUFFER_STATE yy_scan_bytes ( const char *bytes, int len );
298 
299 void *yyalloc ( yy_size_t );
300 void *yyrealloc ( void *, yy_size_t );
301 void yyfree ( void * );
302 
303 #define yy_new_buffer yy_create_buffer
304 #define yy_set_interactive(is_interactive) \
305  { \
306  if ( ! YY_CURRENT_BUFFER ){ \
307  yyensure_buffer_stack (); \
308  YY_CURRENT_BUFFER_LVALUE = \
309  yy_create_buffer( yyin, YY_BUF_SIZE ); \
310  } \
311  YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \
312  }
313 #define yy_set_bol(at_bol) \
314  { \
315  if ( ! YY_CURRENT_BUFFER ){\
316  yyensure_buffer_stack (); \
317  YY_CURRENT_BUFFER_LVALUE = \
318  yy_create_buffer( yyin, YY_BUF_SIZE ); \
319  } \
320  YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \
321  }
322 #define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol)
323 
324 /* Begin user sect3 */
325 
326 #define yywrap() (/*CONSTCOND*/1)
327 #define YY_SKIP_YYWRAP
329 
330 FILE *yyin = NULL, *yyout = NULL;
331 
332 typedef int yy_state_type;
333 
334 extern int yylineno;
335 int yylineno = 1;
336 
337 extern char *yytext;
338 #ifdef yytext_ptr
339 #undef yytext_ptr
340 #endif
341 #define yytext_ptr yytext
342 
343 static yy_state_type yy_get_previous_state ( void );
344 static yy_state_type yy_try_NUL_trans ( yy_state_type current_state );
345 static int yy_get_next_buffer ( void );
346 static void yynoreturn yy_fatal_error ( const char* msg );
347 
348 /* Done after the current pattern has been matched and before the
349  * corresponding action - sets up yytext.
350  */
351 #define YY_DO_BEFORE_ACTION \
352  (yytext_ptr) = yy_bp; \
353  yyleng = (int) (yy_cp - yy_bp); \
354  (yy_hold_char) = *yy_cp; \
355  *yy_cp = '\0'; \
356  (yy_c_buf_p) = yy_cp;
357 #define YY_NUM_RULES 229
358 #define YY_END_OF_BUFFER 230
359 /* This struct is not used in this scanner,
360  but its presence is necessary. */
362  {
365  };
366 static const flex_int16_t yy_accept[2079] =
367  { 0,
368  228, 228, 3, 3, 6, 6, 0, 0, 230, 228,
369  226, 228, 228, 228, 228, 228, 228, 228, 228, 228,
370  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
371  228, 228, 228, 228, 228, 228, 3, 3, 3, 6,
372  6, 6, 229, 229, 228, 228, 227, 228, 226, 228,
373  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
374  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
375  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
376  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
377  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
378 
379  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
380  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
381  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
382  228, 228, 3, 3, 3, 3, 6, 6, 6, 6,
383  0, 226, 228, 228, 228, 228, 228, 228, 228, 228,
384  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
385  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
386  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
387  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
388  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
389 
390  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
391  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
392  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
393  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
394  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
395  228, 228, 52, 52, 228, 53, 53, 3, 6, 51,
396  51, 228, 228, 228, 228, 228, 228, 228, 228, 228,
397  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
398  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
399  228, 228, 228, 228, 20, 228, 228, 228, 228, 228,
400 
401  228, 228, 228, 228, 228, 228, 39, 39, 228, 228,
402  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
403  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
404  228, 228, 228, 228, 228, 228, 228, 228, 228, 1,
405  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
406  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
407  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
408  228, 228, 228, 41, 41, 228, 228, 228, 228, 228,
409  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
410  228, 228, 228, 228, 228, 50, 50, 228, 228, 228,
411 
412  228, 228, 228, 3, 6, 228, 228, 228, 228, 228,
413  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
414  228, 228, 228, 228, 228, 228, 228, 228, 228, 36,
415  36, 228, 228, 34, 34, 228, 228, 228, 228, 228,
416  49, 49, 228, 228, 33, 33, 228, 228, 228, 45,
417  45, 228, 228, 228, 228, 228, 228, 228, 228, 228,
418  228, 228, 37, 37, 228, 228, 228, 228, 228, 228,
419  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
420  228, 228, 228, 228, 4, 228, 228, 228, 228, 228,
421  228, 228, 228, 228, 228, 19, 228, 228, 228, 228,
422 
423  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
424  228, 228, 228, 228, 228, 228, 228, 228, 38, 38,
425  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
426  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
427  228, 32, 32, 228, 228, 228, 228, 228, 228, 228,
428  228, 228, 228, 228, 228, 228, 228, 228, 228, 35,
429  35, 114, 114, 228, 3, 6, 228, 228, 228, 228,
430  228, 15, 15, 228, 228, 228, 228, 228, 228, 228,
431  217, 228, 228, 228, 228, 228, 228, 228, 228, 228,
432  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
433 
434  228, 228, 228, 228, 228, 31, 31, 48, 48, 228,
435  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
436  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
437  228, 228, 228, 228, 228, 228, 228, 228, 228, 119,
438  119, 228, 228, 228, 228, 228, 228, 228, 228, 228,
439  228, 228, 228, 228, 8, 8, 228, 228, 228, 228,
440  228, 228, 228, 228, 228, 228, 228, 54, 54, 228,
441  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
442  13, 13, 228, 228, 228, 228, 228, 228, 228, 228,
443  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
444 
445  228, 228, 228, 228, 228, 228, 228, 228, 228, 57,
446  57, 228, 228, 228, 228, 228, 228, 228, 228, 228,
447  228, 228, 3, 6, 228, 71, 71, 228, 228, 228,
448  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
449  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
450  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
451  228, 228, 228, 228, 228, 228, 228, 43, 43, 228,
452  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
453  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
454  228, 228, 228, 228, 55, 55, 228, 69, 69, 228,
455 
456  228, 228, 228, 40, 40, 42, 42, 228, 228, 228,
457  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
458  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
459  228, 228, 228, 228, 228, 228, 228, 228, 228, 219,
460  219, 228, 228, 228, 228, 228, 228, 228, 11, 11,
461  228, 142, 142, 228, 228, 228, 228, 25, 25, 228,
462  228, 228, 228, 70, 70, 228, 228, 228, 30, 30,
463  228, 228, 228, 228, 228, 228, 228, 61, 61, 228,
464  228, 228, 228, 228, 138, 138, 3, 2, 6, 228,
465  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
466 
467  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
468  228, 228, 228, 228, 228, 228, 228, 228, 228, 178,
469  178, 228, 179, 179, 228, 228, 228, 228, 188, 188,
470  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
471  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
472  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
473  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
474  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
475  228, 228, 228, 7, 7, 228, 228, 228, 228, 228,
476  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
477 
478  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
479  228, 228, 228, 228, 228, 228, 109, 109, 228, 228,
480  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
481  228, 228, 228, 228, 228, 108, 108, 189, 189, 73,
482  73, 228, 228, 228, 228, 62, 62, 228, 6, 5,
483  228, 228, 228, 228, 72, 72, 228, 228, 228, 228,
484  228, 205, 205, 180, 180, 228, 228, 209, 209, 228,
485  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
486  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
487  228, 228, 228, 228, 228, 228, 228, 228, 228, 104,
488 
489  104, 228, 228, 228, 228, 228, 228, 228, 228, 228,
490  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
491  228, 228, 228, 22, 22, 228, 228, 228, 228, 228,
492  228, 85, 85, 228, 228, 228, 81, 81, 228, 228,
493  228, 9, 9, 86, 86, 228, 228, 126, 126, 228,
494  228, 75, 75, 228, 228, 228, 204, 204, 228, 228,
495  228, 228, 228, 228, 228, 228, 121, 121, 228, 228,
496  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
497  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
498  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
499 
500  14, 14, 228, 228, 228, 228, 228, 228, 228, 228,
501  176, 176, 58, 58, 228, 228, 228, 228, 228, 115,
502  115, 228, 228, 228, 228, 228, 228, 228, 16, 16,
503  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
504  96, 96, 228, 228, 228, 228, 228, 228, 228, 228,
505  228, 63, 63, 228, 102, 102, 228, 228, 175, 175,
506  228, 228, 228, 228, 228, 218, 218, 228, 228, 89,
507  89, 228, 228, 228, 228, 228, 228, 228, 228, 199,
508  199, 228, 228, 139, 139, 193, 193, 228, 228, 228,
509  228, 194, 194, 228, 228, 228, 228, 228, 24, 24,
510 
511  228, 228, 140, 140, 228, 228, 59, 59, 228, 44,
512  44, 228, 228, 82, 82, 228, 228, 228, 228, 228,
513  228, 228, 113, 113, 228, 203, 203, 228, 228, 228,
514  228, 228, 228, 228, 228, 47, 47, 228, 228, 228,
515  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
516  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
517  228, 228, 228, 228, 228, 228, 228, 228, 228, 120,
518  120, 228, 228, 228, 228, 228, 228, 228, 228, 228,
519  228, 228, 228, 94, 94, 228, 228, 228, 228, 228,
520  228, 18, 18, 228, 228, 228, 228, 228, 228, 228,
521 
522  228, 228, 228, 228, 207, 207, 228, 228, 228, 228,
523  228, 228, 228, 228, 228, 228, 228, 228, 177, 177,
524  125, 125, 228, 228, 56, 56, 228, 228, 90, 90,
525  228, 228, 228, 228, 228, 228, 68, 68, 228, 228,
526  228, 228, 228, 92, 92, 228, 228, 192, 192, 228,
527  228, 228, 228, 228, 21, 21, 228, 215, 215, 228,
528  228, 228, 83, 83, 228, 228, 80, 80, 87, 87,
529  88, 88, 228, 228, 228, 228, 228, 228, 225, 225,
530  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
531  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
532 
533  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
534  228, 228, 228, 228, 228, 228, 228, 29, 29, 228,
535  228, 228, 228, 103, 103, 228, 228, 118, 118, 46,
536  46, 228, 228, 228, 228, 228, 228, 124, 124, 228,
537  64, 64, 228, 93, 93, 228, 106, 106, 228, 228,
538  208, 208, 228, 228, 228, 228, 228, 228, 228, 228,
539  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
540  228, 228, 228, 228, 228, 100, 100, 191, 191, 228,
541  228, 228, 228, 228, 99, 99, 122, 122, 228, 228,
542  228, 23, 23, 228, 228, 79, 79, 78, 78, 228,
543 
544  174, 174, 228, 228, 228, 228, 17, 17, 228, 228,
545  228, 228, 228, 228, 228, 101, 101, 228, 228, 228,
546  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
547  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
548  228, 228, 228, 228, 228, 228, 228, 214, 214, 228,
549  228, 26, 26, 228, 105, 105, 228, 228, 211, 211,
550  228, 127, 127, 228, 228, 10, 10, 228, 228, 228,
551  228, 228, 228, 228, 133, 133, 228, 228, 228, 228,
552  228, 228, 228, 228, 228, 216, 216, 12, 12, 228,
553  228, 228, 228, 198, 198, 228, 228, 228, 228, 74,
554 
555  74, 228, 201, 201, 228, 98, 98, 228, 228, 228,
556  228, 228, 228, 228, 228, 141, 141, 144, 144, 228,
557  228, 67, 67, 228, 202, 202, 228, 228, 228, 228,
558  153, 153, 228, 228, 228, 151, 151, 228, 228, 228,
559  228, 228, 228, 228, 161, 161, 149, 149, 228, 228,
560  228, 228, 228, 228, 228, 228, 228, 158, 158, 228,
561  228, 228, 228, 213, 213, 228, 143, 143, 228, 228,
562  228, 228, 228, 228, 228, 186, 186, 228, 228, 228,
563  228, 228, 228, 136, 136, 228, 228, 228, 228, 212,
564  212, 228, 228, 221, 221, 228, 228, 228, 228, 228,
565 
566  228, 228, 223, 223, 117, 117, 228, 183, 183, 228,
567  228, 60, 60, 228, 228, 228, 228, 65, 65, 228,
568  228, 228, 228, 228, 169, 169, 228, 165, 165, 228,
569  228, 164, 164, 228, 228, 154, 154, 228, 228, 228,
570  228, 228, 228, 148, 148, 228, 228, 228, 228, 228,
571  181, 181, 228, 224, 224, 110, 110, 228, 28, 28,
572  228, 228, 228, 228, 228, 228, 206, 206, 228, 228,
573  132, 132, 228, 228, 185, 185, 228, 228, 228, 228,
574  107, 107, 123, 123, 137, 137, 228, 228, 228, 184,
575  184, 182, 182, 228, 228, 116, 116, 228, 97, 97,
576 
577  66, 66, 228, 228, 228, 112, 112, 228, 228, 228,
578  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
579  157, 157, 228, 228, 95, 95, 228, 228, 228, 228,
580  228, 130, 130, 210, 210, 228, 134, 134, 131, 131,
581  129, 129, 135, 135, 228, 228, 228, 228, 228, 228,
582  190, 190, 228, 197, 197, 228, 220, 220, 228, 228,
583  228, 228, 163, 163, 172, 172, 228, 228, 228, 228,
584  228, 228, 228, 228, 228, 228, 228, 228, 228, 228,
585  173, 173, 200, 200, 228, 228, 228, 228, 195, 195,
586  228, 228, 128, 128, 111, 111, 228, 228, 228, 228,
587 
588  156, 156, 167, 167, 168, 168, 170, 170, 228, 159,
589  159, 147, 147, 228, 228, 228, 228, 145, 145, 228,
590  228, 76, 76, 228, 187, 187, 196, 196, 228, 228,
591  152, 152, 228, 228, 228, 228, 228, 228, 228, 228,
592  228, 222, 222, 84, 84, 228, 228, 228, 228, 228,
593  228, 228, 27, 27, 228, 77, 77, 228, 228, 150,
594  150, 228, 160, 160, 155, 155, 91, 91, 146, 146,
595  162, 162, 166, 166, 228, 171, 171, 0
596  } ;
597 
598 static const YY_CHAR yy_ec[256] =
599  { 0,
600  1, 1, 1, 1, 1, 1, 1, 1, 2, 3,
601  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
602  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
603  1, 2, 1, 1, 4, 5, 1, 1, 1, 1,
604  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
605  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
606  1, 1, 1, 1, 6, 7, 8, 9, 10, 11,
607  12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
608  22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
609  1, 1, 1, 32, 33, 1, 34, 35, 36, 37,
610 
611  38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
612  48, 49, 50, 51, 52, 53, 54, 55, 56, 57,
613  58, 59, 1, 1, 1, 1, 1, 1, 1, 1,
614  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
615  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
616  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
617  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
618  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
619  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
620  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
621 
622  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
623  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
624  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
625  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
626  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
627  1, 1, 1, 1, 1
628  } ;
629 
630 static const YY_CHAR yy_meta[60] =
631  { 0,
632  1, 1, 2, 1, 1, 1, 1, 1, 1, 1,
633  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
634  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
635  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
636  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
637  1, 1, 1, 1, 1, 1, 1, 1, 1
638  } ;
639 
640 static const flex_int16_t yy_base[2419] =
641  { 0,
642  0, 32, 89, 90, 91, 92, 93, 94, 3794, 0,
643  3795, 3790, 0, 123, 89, 172, 129, 171, 113, 128,
644  180, 172, 82, 224, 187, 217, 229, 239, 178, 280,
645  325, 163, 98, 285, 118, 3790, 0, 4, 156, 0,
646  5, 186, 3795, 6, 0, 3788, 3795, 10, 0, 250,
647  227, 228, 222, 249, 236, 254, 299, 294, 271, 317,
648  277, 278, 291, 307, 297, 315, 323, 324, 335, 342,
649  331, 345, 334, 342, 338, 340, 355, 338, 340, 3788,
650  356, 370, 3756, 360, 351, 354, 359, 376, 368, 384,
651  414, 377, 389, 385, 379, 3755, 388, 394, 400, 399,
652 
653  403, 393, 398, 414, 399, 434, 423, 429, 445, 442,
654  442, 454, 437, 433, 476, 467, 454, 460, 443, 444,
655  462, 461, 498, 473, 478, 474, 3785, 502, 482, 3784,
656  497, 3783, 0, 11, 0, 500, 0, 12, 0, 506,
657  16, 3795, 3782, 503, 493, 504, 507, 512, 514, 523,
658  510, 514, 514, 515, 534, 516, 3750, 526, 526, 552,
659  545, 557, 536, 537, 561, 3780, 554, 559, 544, 17,
660  571, 562, 566, 568, 574, 553, 577, 3748, 579, 3778,
661  568, 3777, 587, 624, 573, 567, 573, 595, 601, 606,
662  602, 611, 617, 3745, 618, 630, 610, 626, 628, 20,
663 
664  630, 620, 677, 636, 638, 3744, 621, 647, 638, 666,
665  661, 663, 668, 3774, 677, 681, 674, 678, 3742, 671,
666  3741, 679, 667, 689, 675, 684, 686, 3771, 696, 693,
667  717, 704, 3770, 688, 694, 711, 724, 731, 729, 731,
668  734, 724, 741, 3738, 722, 3737, 3767, 728, 738, 734,
669  3766, 3765, 0, 3764, 722, 0, 3763, 735, 737, 0,
670  3762, 728, 747, 753, 746, 3761, 750, 754, 3729, 3728,
671  753, 742, 753, 3727, 790, 743, 770, 3757, 780, 774,
672  3756, 769, 786, 794, 792, 783, 3755, 795, 789, 3754,
673  800, 784, 790, 22, 3795, 3753, 789, 3752, 3751, 798,
674 
675  795, 795, 3719, 812, 802, 823, 0, 3749, 815, 3748,
676  824, 832, 832, 835, 848, 838, 842, 844, 846, 836,
677  858, 3716, 843, 3715, 846, 841, 24, 3745, 858, 3713,
678  850, 846, 847, 850, 852, 849, 26, 3712, 28, 3795,
679  261, 852, 856, 890, 890, 899, 893, 892, 3742, 902,
680  898, 3710, 889, 897, 898, 3709, 3708, 3707, 3737, 3736,
681  896, 908, 909, 896, 915, 912, 917, 908, 912, 906,
682  3704, 903, 920, 0, 3734, 921, 909, 928, 927, 950,
683  944, 3733, 933, 3701, 954, 949, 943, 3731, 956, 963,
684  944, 957, 964, 963, 946, 0, 3730, 955, 963, 3698,
685 
686  3728, 3727, 953, 954, 959, 975, 3726, 957, 959, 974,
687  3725, 979, 970, 981, 984, 970, 998, 992, 0, 1011,
688  1013, 1002, 1003, 1017, 1004, 1015, 1002, 1013, 1009, 0,
689  3724, 1015, 1005, 0, 3723, 1007, 1024, 1019, 1025, 1017,
690  0, 3722, 1029, 1019, 0, 3721, 1015, 1027, 1019, 0,
691  3720, 1026, 3719, 3718, 1037, 1043, 1043, 1049, 3717, 1063,
692  1067, 1062, 0, 3716, 1064, 1059, 1066, 1067, 1068, 1057,
693  1064, 1068, 1074, 1064, 1065, 1079, 1065, 1071, 1072, 3684,
694  1110, 3714, 1090, 105, 3795, 3713, 3712, 1083, 1092, 1085,
695  1096, 3711, 3710, 1095, 108, 3795, 1157, 3709, 1107, 1123,
696 
697  1106, 1114, 1117, 1109, 1127, 1132, 1127, 1132, 3708, 1118,
698  1130, 1139, 3676, 1140, 1117, 1170, 1142, 1132, 0, 3706,
699  3705, 1143, 284, 1170, 1159, 1157, 1178, 1169, 1171, 3704,
700  1175, 3703, 1177, 1183, 3671, 1195, 1173, 3670, 1189, 3700,
701  1176, 0, 3699, 1181, 1194, 3698, 3666, 1182, 3696, 1188,
702  1205, 1207, 1210, 1200, 3695, 1211, 1213, 1208, 1228, 0,
703  3694, 0, 3693, 3692, 1223, 1214, 1213, 3691, 1226, 1220,
704  1234, 0, 3690, 1236, 1224, 1229, 1230, 1236, 1245, 1228,
705  0, 1232, 1233, 1241, 1243, 1247, 1247, 1256, 1265, 1266,
706  1262, 1273, 1269, 3658, 1279, 1265, 1272, 3688, 3656, 3686,
707 
708  1284, 1280, 1276, 3654, 3684, 0, 3683, 0, 3682, 1280,
709  1274, 3650, 1294, 3680, 1296, 1289, 1295, 1300, 1300, 1292,
710  1292, 1295, 1297, 1295, 1303, 1310, 1306, 1310, 1322, 1322,
711  1328, 1321, 1337, 1340, 1324, 1339, 1329, 3679, 1325, 0,
712  3678, 3677, 1334, 1326, 1352, 1353, 3676, 3675, 1339, 1346,
713  1347, 1357, 1354, 1336, 0, 3674, 1350, 1353, 1376, 1379,
714  1366, 3642, 1374, 1377, 1380, 1394, 1391, 0, 3672, 3671,
715  1377, 1378, 1399, 1376, 1377, 1384, 1401, 1402, 1385, 1396,
716  0, 3670, 1405, 3669, 1400, 1395, 3637, 1416, 3667, 1393,
717  1397, 3666, 1414, 3665, 1407, 1424, 1424, 3664, 1426, 1430,
718 
719  1425, 1431, 3663, 1443, 1447, 1438, 3662, 1449, 1438, 0,
720  3661, 1452, 3660, 3659, 3658, 1445, 3657, 1434, 1441, 3656,
721  1446, 3655, 110, 1458, 1460, 0, 3654, 1453, 1465, 1465,
722  3653, 1453, 1449, 1462, 1461, 1462, 3652, 3651, 1474, 1466,
723  3650, 3618, 1491, 1491, 1477, 1485, 3617, 3616, 1493, 3615,
724  1497, 1506, 1504, 1504, 1505, 3645, 1498, 3644, 1504, 1500,
725  1502, 1511, 3643, 1493, 1504, 1520, 1520, 0, 3642, 1523,
726  3641, 1520, 1518, 1520, 1532, 1530, 1535, 1538, 1530, 1525,
727  1531, 1530, 1555, 3609, 1542, 1558, 1541, 1553, 1545, 1567,
728  1549, 1570, 1571, 3639, 0, 3638, 1568, 0, 3637, 1552,
729 
730  1570, 1565, 1575, 0, 3636, 0, 3635, 3634, 1570, 1568,
731  1579, 3633, 1571, 1586, 1573, 3632, 3631, 1587, 1588, 3630,
732  1582, 1601, 3629, 1594, 1595, 1595, 3628, 3627, 1592, 1598,
733  3595, 1614, 1600, 1607, 1606, 1608, 3625, 1605, 1614, 0,
734  3624, 1613, 1629, 1671, 1605, 3623, 1608, 1624, 0, 3622,
735  3621, 0, 3620, 1614, 1640, 1721, 1719, 0, 3619, 1723,
736  1715, 1710, 1710, 0, 3618, 3617, 3616, 1709, 0, 3615,
737  1709, 1729, 1716, 3614, 3613, 3612, 1716, 0, 3611, 3610,
738  1712, 1719, 3609, 1723, 0, 3608, 112, 3795, 114, 3576,
739  1726, 1736, 1736, 3606, 3605, 1727, 1729, 1733, 1734, 3604,
740 
741  3603, 1742, 3571, 3601, 1747, 1737, 1739, 1726, 3600, 1743,
742  1780, 3599, 1763, 3598, 1770, 1760, 3597, 1782, 1769, 0,
743  3596, 1787, 0, 3595, 1783, 1776, 1632, 1776, 0, 3594,
744  3593, 1774, 1775, 1785, 1770, 3592, 1791, 1792, 1795, 1781,
745  3591, 1801, 1786, 3590, 3589, 1804, 1792, 1805, 1787, 3588,
746  1833, 1833, 1834, 1822, 1834, 3587, 1839, 1831, 3586, 3585,
747  1835, 1827, 1849, 3584, 3583, 1832, 1845, 3582, 3581, 1826,
748  1830, 1846, 3580, 3579, 1841, 1848, 3578, 1842, 3577, 3576,
749  3544, 3574, 1848, 0, 3573, 3572, 1855, 1854, 1852, 1855,
750  1839, 1852, 1857, 3571, 3570, 1859, 1859, 1889, 1880, 1882,
751 
752  1893, 1885, 1897, 1895, 1887, 1898, 1900, 1891, 1895, 1901,
753  1910, 1941, 1904, 1896, 1913, 3569, 0, 3568, 1911, 1901,
754  3567, 1925, 1947, 1929, 1951, 1947, 1947, 1946, 1948, 3566,
755  3565, 1945, 1944, 3564, 1942, 0, 3563, 0, 3562, 0,
756  3561, 1957, 3560, 1947, 1948, 0, 3559, 1953, 150, 3795,
757  1951, 3558, 1963, 1959, 0, 3557, 3556, 1964, 1949, 1947,
758  1964, 0, 3555, 0, 3554, 1951, 1956, 0, 3553, 1958,
759  1981, 1996, 3552, 3551, 1991, 1988, 1992, 2007, 2007, 2004,
760  3550, 2002, 3549, 2003, 1997, 3548, 3547, 3546, 2004, 2010,
761  3545, 3544, 2007, 2009, 3543, 3542, 2009, 2002, 3510, 0,
762 
763  3540, 2020, 3539, 2021, 2022, 3538, 2026, 2014, 3537, 3536,
764  2028, 3535, 2019, 2016, 3534, 3533, 2024, 2035, 2042, 2053,
765  3532, 2058, 3531, 0, 3530, 3529, 2045, 3528, 3527, 2064,
766  3526, 0, 3525, 2043, 2056, 3524, 0, 3523, 2071, 2064,
767  3522, 0, 3521, 0, 3520, 3519, 3518, 0, 3517, 2071,
768  3516, 0, 3515, 2064, 3514, 2054, 0, 3513, 2072, 2068,
769  2065, 3512, 2064, 2074, 2068, 3511, 0, 3510, 2068, 2061,
770  2075, 2078, 2077, 2071, 2079, 2087, 2084, 2109, 2106, 2116,
771  2100, 2120, 2117, 2122, 2107, 2113, 2125, 2118, 2111, 2127,
772  2127, 2117, 2111, 2128, 2124, 2122, 2140, 3509, 2137, 2134,
773 
774  0, 3508, 3507, 2139, 2147, 2140, 2146, 3506, 2161, 2158,
775  0, 3505, 0, 3504, 3503, 3502, 3501, 2166, 2162, 0,
776  3500, 2172, 2173, 2154, 2167, 3499, 3498, 2159, 0, 3497,
777  3496, 2179, 3495, 2180, 3494, 2170, 2174, 3493, 2187, 3492,
778  0, 3491, 3459, 2176, 2167, 2177, 2178, 2175, 2186, 2187,
779  2196, 0, 3489, 2185, 0, 3488, 2186, 2195, 0, 3487,
780  3486, 3485, 2203, 2205, 3484, 0, 3483, 2207, 2225, 0,
781  3482, 3481, 2215, 2212, 2230, 3480, 3479, 3478, 2229, 0,
782  3477, 2222, 2221, 0, 3476, 0, 3475, 2225, 3474, 2234,
783  3473, 0, 3472, 3471, 3470, 2221, 2236, 2239, 0, 3469,
784 
785  3468, 3467, 0, 3466, 2234, 3465, 0, 3464, 2231, 0,
786  3463, 3462, 3461, 0, 3460, 3459, 2229, 3458, 3457, 3456,
787  3455, 2221, 0, 3454, 2243, 0, 3453, 2240, 2240, 3452,
788  2237, 3451, 2249, 2251, 2244, 0, 3450, 2245, 2261, 2272,
789  3449, 2266, 2281, 2283, 2274, 2286, 2275, 2287, 2287, 2281,
790  2276, 2285, 2293, 2290, 2297, 2283, 2297, 2284, 2288, 2280,
791  2302, 2303, 2300, 2309, 2292, 2293, 2297, 2308, 2318, 0,
792  3448, 2323, 2340, 3447, 3446, 2331, 2341, 3445, 3444, 2333,
793  3443, 3442, 3441, 0, 3440, 2324, 2327, 3439, 2344, 3438,
794  3406, 0, 3436, 3435, 3434, 3433, 2338, 3432, 2348, 3431,
795 
796  2348, 2339, 3430, 2352, 0, 3429, 2352, 2342, 3428, 2351,
797  2352, 2345, 2356, 2351, 2348, 2360, 3396, 3426, 0, 3425,
798  0, 3424, 3423, 2348, 0, 3422, 2363, 2363, 0, 3421,
799  2355, 3420, 2363, 2387, 2392, 3419, 0, 3418, 3417, 3416,
800  2394, 3415, 2395, 0, 3414, 3413, 3412, 0, 3411, 3410,
801  2396, 2398, 2402, 3409, 0, 3408, 2403, 0, 3407, 2402,
802  3406, 3405, 0, 3404, 2403, 3403, 0, 3402, 0, 3401,
803  0, 3400, 2404, 2405, 3399, 3398, 3397, 2396, 0, 3396,
804  2408, 3395, 2408, 3394, 2401, 2406, 3393, 2397, 2405, 3392,
805  2415, 2415, 2402, 3391, 2401, 2403, 2416, 2427, 2433, 2432,
806 
807  2433, 3390, 3389, 2434, 2440, 2433, 2439, 3357, 2455, 2447,
808  2452, 2448, 3387, 3355, 2449, 2460, 2454, 0, 3385, 3384,
809  3383, 2462, 3382, 0, 3381, 3380, 3379, 0, 3378, 0,
810  3377, 2463, 3345, 3375, 2465, 3374, 2454, 0, 3373, 3372,
811  0, 3371, 2466, 0, 3370, 3369, 0, 3368, 2461, 2454,
812  0, 3367, 2465, 2476, 2457, 3366, 2474, 3365, 2468, 2476,
813  2478, 2487, 3364, 2491, 3363, 3362, 3361, 2502, 2494, 2495,
814  3360, 2491, 2497, 2508, 2518, 0, 3359, 0, 3358, 3357,
815  3356, 3355, 3354, 3353, 0, 3352, 0, 3351, 2516, 3350,
816  2509, 0, 3349, 2510, 3348, 0, 3347, 0, 3346, 2509,
817 
818  0, 3345, 2506, 2511, 3344, 3343, 0, 3342, 2508, 3341,
819  3340, 2523, 3339, 2523, 2524, 0, 3338, 2522, 2520, 3337,
820  3336, 2521, 3335, 3334, 2515, 2530, 3333, 2516, 2525, 3332,
821  2528, 3331, 3330, 2550, 2542, 2551, 2553, 2549, 3329, 2544,
822  2567, 2557, 3328, 2552, 2561, 3327, 2571, 0, 3326, 3325,
823  3324, 0, 3323, 3322, 0, 3321, 3320, 2562, 0, 3319,
824  2581, 0, 3318, 2558, 2575, 0, 3317, 2568, 3316, 2571,
825  2566, 3315, 2567, 2569, 0, 3314, 3313, 3312, 2576, 2585,
826  3311, 2576, 3310, 2590, 2567, 0, 3309, 0, 3308, 3307,
827  2594, 3306, 3305, 0, 3304, 3303, 2587, 2594, 2598, 0,
828 
829  3302, 3301, 0, 3300, 3299, 0, 3298, 3297, 3296, 3295,
830  2616, 3294, 2621, 96, 2603, 0, 101, 0, 103, 116,
831  148, 0, 152, 154, 0, 155, 2610, 2607, 2614, 156,
832  0, 158, 160, 2615, 163, 0, 193, 2620, 2613, 197,
833  2627, 2628, 200, 2626, 0, 229, 0, 244, 2627, 2632,
834  2620, 2638, 2620, 245, 2615, 2642, 258, 0, 265, 2630,
835  2632, 310, 311, 0, 400, 405, 0, 409, 463, 2632,
836  489, 2635, 2629, 2644, 2638, 0, 600, 619, 620, 622,
837  2651, 665, 706, 0, 883, 1092, 1093, 1133, 1134, 0,
838  1147, 2656, 2663, 0, 1151, 2669, 1152, 1198, 1642, 2667,
839 
840  2668, 2666, 0, 1645, 0, 1646, 1648, 0, 1649, 1654,
841  1657, 0, 1665, 2670, 1666, 1668, 1756, 0, 1917, 2074,
842  2663, 2584, 2680, 2690, 0, 2691, 2688, 0, 2694, 2677,
843  2674, 0, 2697, 2698, 2699, 0, 2700, 2696, 2680, 2683,
844  2698, 2691, 2699, 0, 2715, 2709, 2703, 2719, 2714, 2718,
845  0, 2725, 2726, 0, 2727, 0, 2728, 2698, 0, 2736,
846  2729, 2727, 2731, 2740, 2741, 2742, 0, 2743, 2744, 2747,
847  0, 2748, 2751, 2752, 0, 2753, 2754, 2748, 2750, 2749,
848  0, 2758, 0, 2759, 0, 2760, 2746, 2762, 2746, 0,
849  2764, 0, 2768, 2769, 2747, 0, 2771, 2772, 0, 2773,
850 
851  0, 2774, 2775, 2776, 2777, 0, 2778, 2756, 2763, 2762,
852  2782, 2786, 2775, 2788, 2790, 2792, 2793, 2790, 2795, 2796,
853  0, 2797, 2791, 2790, 0, 2801, 2792, 2794, 2804, 2801,
854  2806, 0, 2810, 0, 2811, 2812, 0, 2813, 0, 2814,
855  0, 2816, 0, 2817, 2800, 2819, 2799, 2821, 2823, 2824,
856  0, 2825, 2798, 0, 2829, 2832, 0, 2834, 2835, 2824,
857  2837, 2830, 0, 2839, 0, 2840, 2818, 2842, 2843, 2844,
858  2845, 2832, 2849, 2850, 2847, 2840, 2845, 2832, 2856, 2835,
859  0, 2858, 0, 2859, 2844, 2861, 2862, 2863, 0, 2865,
860  2867, 2868, 0, 2870, 0, 2871, 2854, 2873, 2859, 2848,
861 
862  0, 2877, 0, 2878, 0, 2882, 0, 2884, 2874, 0,
863  2887, 0, 2889, 2883, 2885, 2875, 2893, 0, 2894, 2887,
864  2896, 0, 2897, 2898, 0, 2899, 0, 2901, 2903, 2888,
865  0, 2906, 2892, 2908, 2892, 2910, 2911, 2912, 2913, 2915,
866  2916, 0, 2917, 0, 2921, 2922, 2924, 2925, 2916, 2927,
867  2928, 2929, 0, 2930, 2931, 0, 2932, 2934, 2936, 0,
868  2938, 2939, 0, 2940, 0, 2941, 0, 2942, 0, 2943,
869  0, 2944, 0, 2945, 2946, 0, 2947, 3795, 2956, 2958,
870  2960, 2962, 2949, 2964, 2950, 2951, 2952, 2953, 2954, 2966,
871  2967, 2968, 2969, 2970, 2971, 2972, 2973, 2974, 2975, 2976,
872 
873  2977, 2978, 2979, 2980, 2981, 2982, 2983, 2984, 2985, 2986,
874  2987, 2988, 2989, 2990, 2991, 2992, 2993, 2994, 2995, 2996,
875  2997, 2998, 2999, 3000, 3001, 3002, 3003, 3004, 3005, 3006,
876  3007, 3008, 3009, 3010, 3011, 3012, 3013, 3014, 3015, 3016,
877  3017, 3018, 3019, 3020, 3021, 3022, 3023, 3024, 3025, 3026,
878  3027, 3028, 3029, 3030, 3031, 3032, 3033, 3034, 3035, 3036,
879  3037, 3038, 3039, 3040, 3041, 3042, 3043, 3044, 3045, 3046,
880  3047, 3048, 3049, 3050, 3051, 3052, 3053, 3054, 3055, 3056,
881  3057, 3058, 3059, 3060, 3061, 3062, 3063, 3064, 3065, 3066,
882  3067, 3068, 3069, 3070, 3071, 3072, 3073, 3074, 3075, 3076,
883 
884  3077, 3078, 3079, 3080, 3081, 3082, 3083, 3084, 3085, 3086,
885  3087, 3088, 3089, 3090, 3091, 3092, 3093, 3094, 3095, 3096,
886  3097, 3098, 3099, 3100, 3101, 3102, 3103, 3104, 3105, 3106,
887  3107, 3108, 3109, 3110, 3111, 3112, 3113, 3114, 3115, 3116,
888  3117, 3118, 3119, 3120, 3121, 3122, 3123, 3124, 3125, 3126,
889  3127, 3128, 3129, 3130, 3131, 3132, 3133, 3134, 3135, 3136,
890  3137, 3138, 3139, 3140, 3141, 3142, 3143, 3144, 3145, 3146,
891  3147, 3148, 3149, 3150, 3151, 3152, 3153, 3154, 3155, 3156,
892  3157, 3158, 3159, 3160, 3161, 3162, 3163, 3164, 3165, 3166,
893  3167, 3168, 3169, 3170, 3171, 3172, 3173, 3174, 3175, 3176,
894 
895  3177, 3178, 3179, 3180, 3181, 3182, 3183, 3184, 3185, 3186,
896  3187, 3188, 3189, 3190, 3191, 3192, 3193, 3194, 3195, 3196,
897  3197, 3198, 3199, 3200, 3201, 3202, 3203, 3204, 3205, 3206,
898  3207, 3208, 3209, 3210, 3211, 3212, 3213, 3214, 3215, 3216,
899  3217, 3218, 3219, 3220, 3221, 3222, 3223, 3224, 3225, 3226,
900  3227, 3228, 3229, 3230, 3231, 3232, 3233, 3234, 3235, 3236,
901  3237, 3238, 3239, 3240, 3241, 3242, 3243, 3244, 3245, 3246,
902  3247, 3248, 3249, 3250, 3251, 3252, 3253, 3254, 3255, 3256,
903  3257, 3258, 3259, 3260, 3261, 3262, 3263, 3264, 3265, 3266,
904  3267, 3268, 3269, 3270, 3271, 3272, 3273, 3274, 3275, 3276,
905 
906  3277, 3278, 3279, 3280, 3281, 3282, 3283, 3284, 3285, 3286,
907  3287, 3288, 3289, 3290, 3291, 3292, 3293, 3294
908  } ;
909 
910 static const flex_int16_t yy_def[2419] =
911  { 0,
912  2079, 2078, 2080, 2080, 2081, 2081, 2082, 2082, 2078, 2083,
913  2078, 2084, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
914  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
915  2083, 2083, 2083, 2083, 2083, 2083, 2085, 2085, 2085, 2086,
916  2086, 2086, 2078, 2078, 2083, 2084, 2078, 2083, 2083, 2083,
917  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
918  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
919  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
920  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
921  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
922 
923  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
924  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
925  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2087,
926  2083, 2088, 2085, 2085, 2085, 2085, 2086, 2086, 2086, 2086,
927  2078, 2078, 2089, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
928  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
929  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
930  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2090,
931  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
932  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
933 
934  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
935  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
936  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2091, 2083, 2083,
937  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
938  2083, 2083, 2083, 2083, 2083, 2083, 2092, 2083, 2083, 2083,
939  2083, 2083, 2087, 2087, 2083, 2088, 2088, 2085, 2086, 2089,
940  2089, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
941  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2093, 2083, 2083,
942  2094, 2083, 2083, 2083, 2083, 2083, 2095, 2083, 2083, 2096,
943  2083, 2083, 2083, 2083, 2078, 2097, 2083, 2083, 2083, 2083,
944 
945  2083, 2083, 2083, 2083, 2083, 2083, 2090, 2090, 2083, 2098,
946  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
947  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
948  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2078,
949  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
950  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2099, 2083,
951  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
952  2083, 2083, 2083, 2091, 2091, 2083, 2083, 2083, 2083, 2083,
953  2083, 2100, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
954  2083, 2083, 2083, 2083, 2083, 2092, 2092, 2083, 2083, 2083,
955 
956  2101, 2102, 2083, 2085, 2086, 2083, 2083, 2083, 2083, 2083,
957  2103, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2104, 2083,
958  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2093,
959  2093, 2083, 2083, 2094, 2094, 2083, 2083, 2083, 2083, 2083,
960  2095, 2095, 2083, 2083, 2096, 2096, 2083, 2083, 2083, 2097,
961  2097, 2083, 2105, 2106, 2083, 2083, 2083, 2083, 2083, 2083,
962  2083, 2083, 2098, 2098, 2083, 2083, 2083, 2083, 2083, 2083,
963  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
964  2083, 2083, 2083, 2083, 2078, 2107, 2083, 2083, 2083, 2083,
965  2083, 2083, 2083, 2083, 2083, 2078, 2083, 2108, 2083, 2083,
966 
967  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2109, 2083,
968  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2099, 2099,
969  2110, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
970  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
971  2083, 2100, 2100, 2083, 2083, 2083, 2083, 2083, 2111, 2083,
972  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2101,
973  2101, 2102, 2102, 2083, 2085, 2086, 2083, 2112, 2083, 2083,
974  2083, 2103, 2103, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
975  2104, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
976  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
977 
978  2083, 2083, 2083, 2083, 2083, 2105, 2105, 2106, 2106, 2083,
979  2083, 2083, 2083, 2113, 2083, 2083, 2083, 2083, 2083, 2083,
980  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
981  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2114, 2083, 2107,
982  2107, 2115, 2083, 2083, 2083, 2083, 2116, 2117, 2083, 2083,
983  2083, 2083, 2083, 2083, 2108, 2108, 2083, 2083, 2083, 2083,
984  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2109, 2109, 2083,
985  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
986  2110, 2110, 2083, 2118, 2083, 2083, 2083, 2083, 2083, 2083,
987  2083, 2119, 2083, 2120, 2083, 2083, 2083, 2121, 2083, 2083,
988 
989  2083, 2083, 2122, 2083, 2083, 2083, 2123, 2083, 2083, 2111,
990  2111, 2083, 2083, 2083, 2083, 2083, 2124, 2083, 2083, 2083,
991  2083, 2125, 2085, 2086, 2083, 2112, 2112, 2083, 2083, 2083,
992  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
993  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
994  2083, 2083, 2083, 2083, 2083, 2126, 2083, 2127, 2083, 2083,
995  2083, 2083, 2128, 2083, 2083, 2083, 2083, 2113, 2113, 2083,
996  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
997  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
998  2083, 2083, 2083, 2083, 2114, 2114, 2083, 2115, 2115, 2083,
999 
1000  2083, 2083, 2083, 2116, 2116, 2117, 2117, 2083, 2083, 2083,
1001  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
1002  2083, 2083, 2083, 2083, 2083, 2083, 2129, 2083, 2083, 2083,
1003  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2118,
1004  2118, 2083, 2083, 2078, 2083, 2130, 2083, 2083, 2119, 2119,
1005  2083, 2120, 2120, 2083, 2083, 2083, 2083, 2121, 2121, 2083,
1006  2083, 2083, 2083, 2122, 2122, 2083, 2083, 2083, 2123, 2123,
1007  2083, 2083, 2083, 2131, 2132, 2133, 2083, 2124, 2124, 2083,
1008  2083, 2083, 2134, 2083, 2125, 2125, 2085, 2078, 2086, 2083,
1009  2083, 2083, 2083, 2135, 2083, 2083, 2083, 2083, 2083, 2136,
1010 
1011  2137, 2083, 2083, 2138, 2083, 2083, 2083, 2083, 2083, 2083,
1012  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2126,
1013  2126, 2083, 2127, 2127, 2083, 2083, 2083, 2083, 2128, 2128,
1014  2083, 2083, 2083, 2083, 2083, 2139, 2083, 2083, 2083, 2083,
1015  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
1016  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2140, 2083,
1017  2083, 2083, 2083, 2083, 2141, 2083, 2083, 2083, 2142, 2083,
1018  2083, 2083, 2143, 2144, 2083, 2083, 2145, 2083, 2083, 2146,
1019  2083, 2083, 2083, 2129, 2129, 2147, 2083, 2083, 2083, 2083,
1020  2083, 2083, 2083, 2083, 2148, 2083, 2083, 2083, 2083, 2083,
1021 
1022  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
1023  2083, 2083, 2083, 2083, 2083, 2083, 2130, 2130, 2083, 2083,
1024  2149, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2150,
1025  2151, 2083, 2083, 2083, 2083, 2131, 2131, 2132, 2132, 2133,
1026  2133, 2083, 2152, 2083, 2083, 2134, 2134, 2083, 2086, 2078,
1027  2083, 2083, 2083, 2083, 2135, 2135, 2153, 2083, 2083, 2083,
1028  2083, 2136, 2136, 2137, 2137, 2083, 2083, 2138, 2138, 2083,
1029  2083, 2083, 2083, 2154, 2083, 2083, 2083, 2083, 2083, 2083,
1030  2155, 2083, 2156, 2083, 2083, 2157, 2083, 2083, 2083, 2083,
1031  2083, 2158, 2083, 2083, 2159, 2083, 2083, 2083, 2083, 2139,
1032 
1033  2139, 2083, 2083, 2083, 2083, 2160, 2083, 2083, 2161, 2162,
1034  2083, 2083, 2083, 2083, 2163, 2083, 2083, 2083, 2083, 2083,
1035  2164, 2083, 2083, 2165, 2165, 2166, 2083, 2083, 2167, 2083,
1036  2168, 2169, 2169, 2083, 2083, 2170, 2171, 2171, 2083, 2083,
1037  2083, 2172, 2172, 2173, 2173, 2083, 2083, 2174, 2174, 2083,
1038  2175, 2176, 2176, 2083, 2177, 2083, 2178, 2178, 2083, 2083,
1039  2083, 2083, 2083, 2083, 2083, 2179, 2180, 2180, 2083, 2083,
1040  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
1041  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
1042  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2181, 2083, 2083,
1043 
1044  2182, 2182, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
1045  2183, 2183, 2184, 2184, 2083, 2083, 2185, 2083, 2083, 2186,
1046  2186, 2083, 2083, 2083, 2083, 2187, 2083, 2083, 2188, 2188,
1047  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2189,
1048  2190, 2190, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
1049  2083, 2191, 2191, 2083, 2192, 2192, 2083, 2083, 2193, 2193,
1050  2194, 2195, 2083, 2083, 2196, 2197, 2197, 2083, 2083, 2198,
1051  2198, 2199, 2083, 2083, 2083, 2083, 2200, 2083, 2083, 2201,
1052  2201, 2083, 2083, 2202, 2202, 2203, 2203, 2083, 2204, 2083,
1053  2083, 2205, 2205, 2206, 2083, 2083, 2083, 2083, 2207, 2207,
1054 
1055  2083, 2208, 2209, 2209, 2083, 2210, 2211, 2211, 2083, 2212,
1056  2212, 2083, 2083, 2213, 2213, 2214, 2083, 2083, 2215, 2216,
1057  2217, 2083, 2218, 2218, 2083, 2219, 2219, 2083, 2083, 2083,
1058  2083, 2220, 2083, 2083, 2083, 2221, 2221, 2083, 2083, 2083,
1059  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
1060  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
1061  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2222,
1062  2222, 2083, 2083, 2223, 2083, 2083, 2083, 2083, 2224, 2083,
1063  2083, 2225, 2226, 2227, 2227, 2083, 2083, 2083, 2083, 2083,
1064  2083, 2228, 2228, 2229, 2083, 2230, 2083, 2231, 2083, 2232,
1065 
1066  2083, 2083, 2233, 2083, 2234, 2234, 2083, 2083, 2083, 2083,
1067  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2235, 2235,
1068  2236, 2236, 2083, 2083, 2237, 2237, 2083, 2083, 2238, 2238,
1069  2083, 2083, 2083, 2083, 2083, 2239, 2240, 2240, 2241, 2083,
1070  2083, 2083, 2083, 2242, 2242, 2083, 2243, 2244, 2244, 2245,
1071  2083, 2083, 2083, 2246, 2247, 2247, 2083, 2248, 2248, 2083,
1072  2249, 2250, 2251, 2251, 2083, 2252, 2253, 2253, 2254, 2254,
1073  2255, 2255, 2083, 2083, 2083, 2083, 2256, 2083, 2257, 2257,
1074  2083, 2083, 2083, 2083, 2083, 2083, 2258, 2083, 2083, 2083,
1075  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
1076 
1077  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
1078  2083, 2083, 2083, 2083, 2083, 2083, 2083, 2259, 2259, 2260,
1079  2083, 2083, 2261, 2262, 2262, 2083, 2263, 2264, 2264, 2265,
1080  2265, 2083, 2083, 2266, 2083, 2267, 2083, 2268, 2268, 2269,
1081  2270, 2270, 2083, 2271, 2271, 2083, 2272, 2272, 2083, 2083,
1082  2273, 2273, 2083, 2083, 2083, 2274, 2083, 2083, 2083, 2083,
1083  2083, 2083, 2083, 2083, 2275, 2276, 2083, 2083, 2083, 2083,
1084  2277, 2083, 2083, 2083, 2083, 2278, 2278, 2279, 2279, 2280,
1085  2083, 2281, 2083, 2282, 2283, 2283, 2284, 2284, 2083, 2083,
1086  2083, 2285, 2285, 2083, 2083, 2286, 2286, 2287, 2287, 2083,
1087 
1088  2288, 2288, 2083, 2083, 2289, 2290, 2291, 2291, 2083, 2083,
1089  2292, 2083, 2293, 2083, 2083, 2294, 2294, 2083, 2083, 2295,
1090  2083, 2083, 2083, 2296, 2083, 2083, 2083, 2083, 2083, 2083,
1091  2083, 2297, 2298, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
1092  2083, 2083, 2299, 2083, 2083, 2083, 2083, 2300, 2300, 2301,
1093  2083, 2302, 2302, 2303, 2304, 2304, 2083, 2083, 2305, 2305,
1094  2083, 2306, 2306, 2083, 2083, 2307, 2307, 2083, 2308, 2083,
1095  2083, 2083, 2083, 2083, 2309, 2309, 2083, 2310, 2083, 2083,
1096  2083, 2083, 2311, 2083, 2083, 2312, 2312, 2313, 2313, 2314,
1097  2083, 2083, 2083, 2315, 2315, 2083, 2083, 2083, 2083, 2316,
1098 
1099  2316, 2317, 2318, 2318, 2319, 2320, 2320, 2083, 2321, 2083,
1100  2083, 2322, 2083, 2083, 2083, 2323, 2323, 2324, 2324, 2083,
1101  2325, 2326, 2326, 2083, 2327, 2327, 2083, 2083, 2083, 2083,
1102  2328, 2328, 2329, 2083, 2330, 2331, 2331, 2083, 2083, 2332,
1103  2083, 2083, 2333, 2083, 2334, 2334, 2335, 2335, 2083, 2083,
1104  2083, 2083, 2083, 2336, 2083, 2083, 2083, 2337, 2337, 2083,
1105  2083, 2338, 2083, 2339, 2339, 2340, 2341, 2341, 2342, 2083,
1106  2343, 2083, 2083, 2083, 2083, 2344, 2344, 2083, 2083, 2345,
1107  2083, 2083, 2346, 2347, 2347, 2083, 2083, 2348, 2083, 2349,
1108  2349, 2083, 2083, 2350, 2350, 2083, 2351, 2352, 2353, 2083,
1109 
1110  2083, 2083, 2354, 2354, 2355, 2355, 2356, 2357, 2357, 2358,
1111  2083, 2359, 2359, 2083, 2360, 2083, 2361, 2362, 2362, 2363,
1112  2083, 2083, 2083, 2364, 2365, 2365, 2083, 2366, 2366, 2083,
1113  2083, 2367, 2367, 2083, 2083, 2368, 2368, 2083, 2083, 2083,
1114  2083, 2083, 2083, 2369, 2369, 2083, 2083, 2370, 2083, 2083,
1115  2371, 2371, 2372, 2373, 2373, 2342, 2342, 2083, 2343, 2343,
1116  2083, 2083, 2083, 2083, 2374, 2375, 2376, 2376, 2083, 2377,
1117  2378, 2378, 2379, 2380, 2381, 2381, 2382, 2083, 2083, 2083,
1118  2383, 2383, 2384, 2384, 2385, 2385, 2083, 2083, 2083, 2356,
1119  2356, 2358, 2358, 2386, 2083, 2360, 2360, 2387, 2361, 2361,
1120 
1121  2363, 2363, 2083, 2388, 2083, 2364, 2364, 2083, 2083, 2083,
1122  2389, 2390, 2083, 2083, 2083, 2083, 2083, 2083, 2083, 2083,
1123  2370, 2370, 2083, 2083, 2372, 2372, 2083, 2083, 2083, 2083,
1124  2391, 2374, 2374, 2375, 2375, 2392, 2377, 2377, 2379, 2379,
1125  2380, 2380, 2382, 2382, 2083, 2083, 2083, 2083, 2393, 2083,
1126  2386, 2386, 2083, 2387, 2387, 2394, 2388, 2388, 2395, 2083,
1127  2083, 2083, 2389, 2389, 2390, 2390, 2083, 2396, 2397, 2398,
1128  2399, 2083, 2400, 2401, 2083, 2083, 2083, 2083, 2402, 2083,
1129  2391, 2391, 2392, 2392, 2083, 2403, 2083, 2404, 2393, 2393,
1130  2405, 2083, 2394, 2394, 2395, 2395, 2083, 2406, 2083, 2083,
1131 
1132  2396, 2396, 2397, 2397, 2398, 2398, 2399, 2399, 2083, 2400,
1133  2400, 2401, 2401, 2083, 2083, 2083, 2083, 2402, 2402, 2083,
1134  2083, 2403, 2403, 2407, 2404, 2404, 2405, 2405, 2408, 2083,
1135  2406, 2406, 2083, 2083, 2083, 2083, 2083, 2083, 2409, 2083,
1136  2410, 2407, 2407, 2408, 2408, 2083, 2083, 2411, 2083, 2412,
1137  2413, 2414, 2409, 2409, 2415, 2410, 2410, 2416, 2417, 2411,
1138  2411, 2083, 2412, 2412, 2413, 2413, 2414, 2414, 2415, 2415,
1139  2416, 2416, 2417, 2417, 2418, 2418, 2418, 0, 2078, 2078,
1140  2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078,
1141  2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078,
1142 
1143  2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078,
1144  2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078,
1145  2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078,
1146  2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078,
1147  2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078,
1148  2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078,
1149  2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078,
1150  2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078,
1151  2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078,
1152  2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078,
1153 
1154  2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078,
1155  2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078,
1156  2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078,
1157  2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078,
1158  2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078,
1159  2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078,
1160  2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078,
1161  2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078,
1162  2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078,
1163  2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078,
1164 
1165  2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078,
1166  2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078,
1167  2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078,
1168  2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078,
1169  2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078,
1170  2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078,
1171  2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078,
1172  2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078,
1173  2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078,
1174  2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078,
1175 
1176  2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078,
1177  2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078
1178  } ;
1179 
1180 static const flex_int16_t yy_nxt[3855] =
1181  { 0,
1182  2078, 48, 11, 12, 49, 134, 138, 141, 135, 139,
1183  142, 48, 134, 138, 49, 135, 139, 141, 294, 295,
1184  142, 339, 340, 294, 295, 484, 485, 495, 496, 339,
1185  340, 13, 10, 10, 11, 12, 10, 14, 15, 16,
1186  17, 18, 19, 20, 21, 22, 10, 23, 24, 25,
1187  26, 27, 28, 10, 29, 30, 31, 32, 33, 34,
1188  35, 36, 10, 13, 10, 14, 15, 16, 17, 18,
1189  19, 20, 21, 22, 10, 23, 24, 25, 26, 27,
1190  28, 10, 29, 30, 31, 32, 33, 34, 35, 36,
1191  10, 11, 11, 11, 11, 11, 11, 1815, 57, 39,
1192 
1193  85, 42, 1717, 125, 1719, 58, 484, 485, 59, 495,
1194  496, 887, 888, 887, 888, 1049, 1050, 1817, 72, 130,
1195  38, 38, 41, 41, 44, 44, 57, 39, 85, 42,
1196  50, 125, 73, 58, 65, 74, 59, 75, 66, 51,
1197  131, 52, 67, 53, 76, 54, 72, 55, 56, 1819,
1198  77, 1049, 1050, 1723, 68, 1820, 1726, 1824, 50, 1732,
1199  73, 1826, 65, 74, 1829, 75, 66, 51, 131, 52,
1200  67, 53, 76, 54, 136, 55, 56, 60, 77, 69,
1201  81, 123, 68, 106, 61, 78, 124, 107, 62, 70,
1202  82, 63, 91, 79, 1737, 83, 84, 64, 1833, 71,
1203 
1204  80, 1837, 136, 108, 140, 60, 92, 69, 81, 123,
1205  93, 106, 61, 78, 124, 107, 62, 70, 82, 63,
1206  91, 79, 94, 83, 84, 64, 95, 71, 80, 86,
1207  1746, 108, 140, 87, 92, 98, 96, 88, 93, 97,
1208  145, 146, 147, 89, 102, 1748, 1845, 99, 103, 90,
1209  94, 143, 104, 100, 95, 101, 148, 86, 105, 1848,
1210  150, 87, 498, 98, 96, 88, 1759, 97, 145, 146,
1211  147, 89, 102, 149, 144, 99, 103, 90, 151, 156,
1212  104, 100, 160, 101, 148, 684, 105, 109, 150, 110,
1213  126, 161, 127, 499, 128, 111, 112, 113, 129, 114,
1214 
1215  115, 149, 144, 154, 116, 117, 151, 156, 152, 162,
1216  160, 1852, 1853, 155, 165, 109, 685, 110, 126, 161,
1217  127, 153, 128, 111, 112, 113, 129, 114, 115, 163,
1218  164, 154, 116, 117, 118, 157, 152, 162, 119, 158,
1219  159, 155, 165, 166, 120, 167, 168, 121, 169, 153,
1220  170, 171, 172, 173, 122, 174, 175, 163, 164, 176,
1221  177, 178, 118, 157, 179, 181, 119, 158, 159, 185,
1222  186, 166, 120, 167, 168, 121, 169, 187, 170, 171,
1223  172, 173, 122, 174, 175, 188, 189, 176, 177, 178,
1224  190, 191, 179, 181, 182, 197, 183, 185, 186, 198,
1225 
1226  200, 1765, 201, 199, 202, 187, 1855, 204, 205, 206,
1227  1768, 208, 209, 188, 189, 210, 207, 211, 190, 191,
1228  212, 213, 182, 197, 183, 192, 214, 198, 200, 193,
1229  201, 199, 202, 217, 194, 204, 205, 206, 195, 208,
1230  209, 215, 196, 210, 207, 211, 218, 219, 212, 213,
1231  220, 221, 216, 192, 214, 222, 226, 193, 227, 223,
1232  234, 217, 194, 224, 1857, 235, 195, 236, 237, 215,
1233  196, 238, 231, 225, 218, 219, 232, 228, 220, 221,
1234  216, 239, 244, 222, 226, 229, 227, 223, 234, 233,
1235  1860, 224, 230, 235, 245, 236, 237, 246, 250, 238,
1236 
1237  231, 225, 255, 240, 232, 251, 241, 248, 258, 239,
1238  244, 242, 252, 229, 259, 249, 262, 233, 243, 263,
1239  230, 264, 245, 265, 266, 246, 250, 267, 268, 269,
1240  255, 240, 270, 251, 241, 248, 258, 271, 272, 242,
1241  252, 273, 259, 249, 262, 274, 243, 263, 276, 264,
1242  277, 265, 266, 278, 280, 267, 268, 269, 281, 285,
1243  270, 286, 287, 291, 292, 271, 272, 282, 293, 273,
1244  279, 298, 296, 274, 299, 283, 276, 300, 277, 288,
1245  303, 284, 280, 301, 304, 306, 309, 285, 297, 286,
1246  322, 291, 292, 289, 323, 282, 293, 324, 279, 298,
1247 
1248  311, 1777, 299, 283, 325, 300, 302, 288, 303, 284,
1249  326, 301, 304, 306, 309, 327, 297, 328, 322, 312,
1250  1865, 1866, 323, 1868, 329, 324, 330, 332, 311, 313,
1251  314, 315, 325, 336, 316, 337, 317, 338, 326, 341,
1252  318, 333, 334, 327, 342, 328, 349, 350, 319, 320,
1253  352, 321, 329, 335, 330, 332, 353, 313, 314, 315,
1254  354, 336, 316, 337, 317, 338, 1870, 341, 318, 333,
1255  334, 355, 342, 356, 349, 350, 319, 320, 352, 321,
1256  357, 335, 343, 358, 353, 344, 360, 345, 354, 361,
1257  363, 364, 362, 366, 346, 368, 369, 347, 370, 355,
1258 
1259  348, 356, 371, 372, 373, 376, 377, 1872, 357, 381,
1260  343, 358, 383, 344, 360, 345, 384, 361, 363, 364,
1261  362, 366, 346, 368, 369, 347, 370, 385, 348, 386,
1262  371, 372, 373, 376, 377, 378, 387, 381, 388, 379,
1263  383, 380, 389, 390, 384, 391, 392, 394, 398, 399,
1264  400, 403, 404, 405, 406, 385, 407, 386, 408, 410,
1265  412, 413, 416, 378, 387, 417, 388, 379, 418, 380,
1266  389, 390, 428, 391, 392, 394, 398, 399, 400, 403,
1267  404, 405, 406, 429, 407, 409, 408, 410, 412, 413,
1268  416, 432, 433, 417, 436, 437, 418, 420, 421, 438,
1269 
1270  428, 439, 440, 422, 443, 423, 444, 447, 448, 449,
1271  424, 429, 425, 426, 452, 427, 455, 456, 457, 432,
1272  433, 459, 436, 437, 460, 420, 421, 438, 461, 439,
1273  440, 422, 443, 423, 444, 447, 448, 449, 424, 462,
1274  425, 426, 452, 427, 455, 456, 457, 465, 466, 459,
1275  467, 468, 460, 470, 471, 472, 461, 473, 474, 476,
1276  469, 480, 482, 477, 483, 487, 489, 462, 490, 491,
1277  492, 475, 493, 494, 500, 465, 466, 478, 467, 468,
1278  501, 470, 471, 472, 1785, 473, 474, 476, 469, 480,
1279  482, 477, 483, 487, 489, 502, 490, 491, 492, 475,
1280 
1281  493, 494, 500, 504, 505, 478, 506, 507, 501, 510,
1282  511, 513, 503, 514, 515, 522, 508, 523, 524, 525,
1283  526, 527, 528, 502, 530, 531, 532, 534, 535, 536,
1284  529, 504, 505, 537, 506, 507, 538, 510, 511, 513,
1285  503, 514, 515, 522, 508, 523, 524, 525, 526, 527,
1286  528, 539, 530, 531, 532, 534, 535, 536, 529, 540,
1287  541, 537, 544, 546, 538, 547, 548, 550, 551, 552,
1288  553, 554, 555, 556, 557, 558, 564, 565, 566, 539,
1289  567, 569, 570, 571, 574, 575, 576, 540, 541, 577,
1290  544, 546, 578, 547, 548, 550, 551, 552, 553, 554,
1291 
1292  555, 556, 557, 558, 564, 565, 566, 579, 567, 569,
1293  570, 571, 574, 575, 576, 580, 582, 577, 584, 585,
1294  578, 586, 587, 588, 589, 590, 591, 592, 593, 594,
1295  595, 596, 597, 598, 599, 579, 583, 600, 601, 602,
1296  603, 604, 605, 580, 582, 610, 584, 585, 611, 586,
1297  587, 588, 589, 590, 591, 592, 593, 594, 595, 596,
1298  597, 598, 599, 612, 583, 600, 601, 602, 603, 604,
1299  605, 613, 615, 610, 616, 617, 611, 618, 619, 620,
1300  621, 622, 623, 624, 625, 626, 627, 628, 629, 630,
1301  631, 612, 632, 1873, 1874, 639, 643, 644, 645, 613,
1302 
1303  615, 646, 616, 617, 649, 618, 619, 620, 621, 622,
1304  623, 624, 625, 626, 627, 628, 629, 630, 631, 634,
1305  632, 635, 636, 639, 643, 644, 645, 657, 658, 646,
1306  659, 660, 649, 637, 1876, 1877, 661, 662, 663, 664,
1307  665, 666, 670, 671, 672, 674, 675, 634, 1791, 635,
1308  636, 679, 1795, 1882, 667, 657, 658, 680, 659, 660,
1309  683, 637, 650, 651, 661, 662, 663, 664, 665, 666,
1310  670, 671, 672, 674, 675, 676, 652, 686, 677, 679,
1311  653, 654, 667, 687, 688, 680, 689, 690, 683, 691,
1312  650, 651, 678, 693, 695, 696, 698, 700, 702, 1884,
1313 
1314  704, 705, 706, 676, 652, 686, 677, 709, 653, 654,
1315  712, 687, 688, 713, 689, 690, 714, 691, 715, 716,
1316  678, 693, 695, 696, 718, 700, 702, 699, 704, 705,
1317  706, 719, 720, 721, 723, 709, 724, 725, 712, 728,
1318  729, 713, 731, 732, 714, 730, 715, 716, 733, 735,
1319  736, 737, 718, 738, 739, 740, 734, 741, 742, 719,
1320  720, 721, 723, 743, 724, 725, 744, 728, 729, 745,
1321  731, 732, 746, 730, 747, 748, 733, 735, 736, 737,
1322  749, 738, 739, 740, 750, 741, 742, 751, 753, 754,
1323  755, 743, 759, 760, 744, 761, 764, 745, 765, 767,
1324 
1325  746, 770, 747, 748, 771, 772, 773, 774, 749, 775,
1326  776, 777, 750, 778, 779, 751, 753, 754, 755, 780,
1327  759, 760, 781, 761, 764, 782, 765, 767, 783, 770,
1328  784, 785, 771, 772, 773, 774, 786, 775, 776, 777,
1329  787, 778, 779, 788, 789, 791, 792, 780, 793, 794,
1330  781, 797, 800, 782, 790, 801, 783, 802, 784, 785,
1331  803, 808, 809, 810, 786, 815, 816, 811, 787, 817,
1332  813, 788, 789, 791, 792, 812, 793, 794, 814, 797,
1333  800, 818, 790, 801, 819, 802, 820, 822, 803, 808,
1334  809, 810, 823, 815, 816, 811, 824, 817, 813, 825,
1335 
1336  826, 828, 829, 812, 830, 831, 814, 832, 833, 818,
1337  834, 835, 819, 836, 820, 822, 837, 842, 838, 843,
1338  823, 845, 847, 848, 824, 851, 854, 825, 826, 828,
1339  829, 857, 830, 831, 855, 832, 833, 839, 834, 835,
1340  856, 836, 860, 861, 837, 842, 838, 843, 862, 845,
1341  847, 848, 863, 851, 854, 866, 867, 868, 871, 857,
1342  872, 873, 855, 877, 880, 881, 884, 889, 856, 890,
1343  860, 861, 891, 882, 892, 893, 862, 895, 896, 897,
1344  863, 898, 899, 866, 867, 868, 871, 902, 872, 873,
1345  903, 877, 880, 881, 884, 889, 906, 890, 907, 908,
1346 
1347  891, 909, 892, 893, 912, 895, 896, 897, 914, 898,
1348  899, 915, 917, 918, 919, 902, 922, 925, 903, 926,
1349  927, 928, 931, 932, 906, 933, 907, 908, 934, 909,
1350  916, 935, 912, 937, 938, 939, 914, 940, 941, 915,
1351  917, 918, 919, 942, 922, 925, 943, 926, 927, 928,
1352  931, 932, 944, 933, 945, 946, 934, 947, 916, 935,
1353  948, 937, 938, 939, 950, 940, 941, 951, 952, 953,
1354  954, 942, 955, 956, 943, 957, 958, 960, 961, 962,
1355  944, 963, 945, 946, 964, 947, 966, 967, 948, 968,
1356  970, 971, 950, 972, 975, 951, 952, 953, 954, 976,
1357 
1358  955, 956, 978, 957, 958, 960, 961, 962, 979, 963,
1359  981, 982, 964, 983, 966, 967, 987, 968, 970, 971,
1360  988, 972, 975, 990, 991, 992, 993, 976, 994, 996,
1361  978, 997, 998, 1092, 1016, 1019, 979, 1020, 981, 982,
1362  1022, 983, 999, 1886, 987, 1023, 1804, 1806, 988, 1891,
1363  1809, 990, 991, 992, 993, 1893, 994, 996, 1894, 997,
1364  998, 1000, 1016, 1019, 1093, 1020, 1813, 1897, 1022, 1898,
1365  999, 45, 45, 1023, 45, 45, 1001, 1002, 1003, 1004,
1366  1005, 1006, 1007, 1008, 1009, 45, 45, 1010, 1011, 45,
1367  45, 1012, 45, 45, 1013, 1014, 45, 45, 1015, 45,
1368 
1369  45, 45, 45, 45, 1001, 1002, 1003, 1004, 1005, 1006,
1370  1007, 1008, 1009, 45, 45, 1010, 1011, 45, 45, 1012,
1371  45, 45, 1013, 1014, 45, 45, 1015, 45, 45, 45,
1372  1024, 1025, 1026, 1027, 1028, 1029, 1032, 1033, 1034, 1035,
1373  1042, 1044, 1045, 1048, 1052, 1053, 1054, 1058, 1059, 1060,
1374  1061, 1066, 1070, 1071, 1072, 1073, 1075, 1900, 1024, 1025,
1375  1026, 1027, 1028, 1029, 1032, 1033, 1034, 1035, 1042, 1044,
1376  1045, 1048, 1052, 1053, 1054, 1058, 1059, 1060, 1061, 1066,
1377  1070, 1071, 1072, 1073, 1075, 1076, 1077, 1082, 1084, 1085,
1378  1087, 1088, 1089, 1090, 1091, 1094, 1096, 1097, 1098, 1099,
1379 
1380  1102, 1103, 1078, 1079, 1104, 1105, 1107, 1080, 1108, 1111,
1381  1112, 1113, 1114, 1076, 1077, 1082, 1084, 1085, 1087, 1088,
1382  1089, 1090, 1091, 1094, 1096, 1097, 1098, 1099, 1102, 1103,
1383  1078, 1079, 1104, 1105, 1107, 1080, 1108, 1111, 1112, 1113,
1384  1114, 1116, 1117, 1118, 1119, 1120, 1122, 1123, 1127, 1128,
1385  1129, 1134, 1135, 1139, 1140, 1141, 1146, 1147, 1150, 1156,
1386  1159, 1160, 1161, 1162, 1163, 1164, 1165, 1130, 1169, 1116,
1387  1117, 1118, 1119, 1120, 1122, 1123, 1127, 1128, 1170, 1134,
1388  1135, 1139, 1140, 1141, 1146, 1147, 1150, 1156, 1159, 1160,
1389  1161, 1162, 1163, 1164, 1165, 1130, 1169, 1171, 1172, 1173,
1390 
1391  1175, 1176, 1177, 1183, 1180, 1174, 1170, 1184, 1181, 1178,
1392  1188, 1185, 1186, 1189, 1190, 1191, 1179, 1182, 1819, 1187,
1393  1195, 1196, 1197, 1199, 1200, 1171, 1172, 1173, 1175, 1176,
1394  1177, 1183, 1180, 1174, 1203, 1184, 1181, 1178, 1188, 1185,
1395  1186, 1189, 1190, 1191, 1179, 1182, 1192, 1187, 1195, 1196,
1396  1197, 1199, 1200, 1193, 1204, 1205, 1206, 1207, 1208, 1209,
1397  1194, 1210, 1203, 1215, 1216, 1218, 1219, 1222, 1223, 1224,
1398  1225, 1227, 1228, 1231, 1192, 1232, 1233, 1234, 1235, 1236,
1399  1237, 1193, 1204, 1205, 1206, 1207, 1208, 1209, 1194, 1210,
1400  1238, 1215, 1216, 1218, 1219, 1222, 1223, 1224, 1225, 1227,
1401 
1402  1228, 1231, 1239, 1232, 1233, 1234, 1235, 1236, 1237, 1243,
1403  1244, 1245, 1246, 1251, 1248, 1254, 1257, 1258, 1238, 1249,
1404  1247, 1263, 1250, 1264, 1268, 1269, 1273, 1274, 1276, 1278,
1405  1239, 1279, 1282, 1283, 1288, 1290, 1291, 1243, 1244, 1245,
1406  1246, 1251, 1248, 1254, 1257, 1258, 1295, 1249, 1247, 1263,
1407  1250, 1264, 1268, 1269, 1273, 1274, 1276, 1278, 1296, 1279,
1408  1282, 1283, 1288, 1290, 1291, 1297, 1298, 1301, 1305, 1309,
1409  1312, 1313, 1316, 1318, 1295, 1902, 1322, 1325, 1328, 1329,
1410  1330, 1331, 1333, 1334, 1335, 1338, 1296, 1339, 1340, 1341,
1411  1342, 1343, 1344, 1297, 1298, 1301, 1305, 1309, 1312, 1313,
1412 
1413  1345, 1318, 1346, 1317, 1322, 1325, 1328, 1329, 1330, 1331,
1414  1333, 1334, 1335, 1338, 1347, 1339, 1340, 1341, 1342, 1343,
1415  1344, 1351, 1348, 1353, 1349, 1354, 1355, 1356, 1345, 1357,
1416  1346, 1350, 1358, 1359, 1360, 1361, 1352, 1362, 1363, 1364,
1417  1365, 1366, 1347, 1367, 1368, 1369, 1372, 1373, 1375, 1351,
1418  1348, 1353, 1349, 1354, 1355, 1356, 1376, 1357, 1377, 1350,
1419  1358, 1359, 1360, 1361, 1352, 1362, 1363, 1364, 1365, 1366,
1420  1378, 1367, 1368, 1369, 1372, 1373, 1375, 1380, 1381, 1386,
1421  1387, 1388, 1389, 1390, 1376, 1391, 1377, 1395, 1397, 1399,
1422  1401, 1402, 1404, 1408, 1409, 1410, 1411, 1412, 1378, 1413,
1423 
1424  1414, 1415, 1416, 1417, 1418, 1380, 1381, 1386, 1387, 1388,
1425  1389, 1390, 1423, 1391, 1424, 1395, 1397, 1399, 1401, 1402,
1426  1404, 1408, 1409, 1410, 1411, 1412, 1427, 1413, 1414, 1415,
1427  1416, 1417, 1418, 1428, 1431, 1432, 1433, 1440, 1441, 1442,
1428  1423, 1443, 1424, 1446, 1451, 1452, 1453, 1457, 1460, 1465,
1429  1473, 1474, 1475, 1434, 1427, 1476, 1478, 1435, 1481, 1482,
1430  1483, 1428, 1431, 1432, 1433, 1440, 1441, 1442, 1484, 1443,
1431  1485, 1446, 1451, 1452, 1453, 1457, 1460, 1465, 1473, 1474,
1432  1475, 1434, 1486, 1476, 1478, 1435, 1481, 1482, 1483, 1488,
1433  1489, 1490, 1491, 1492, 1493, 1494, 1484, 1495, 1485, 1496,
1434 
1435  1497, 1498, 1499, 1500, 1501, 1502, 1503, 1504, 1505, 1506,
1436  1486, 1507, 1508, 1509, 1510, 1511, 1512, 1488, 1489, 1490,
1437  1491, 1492, 1493, 1494, 1513, 1495, 1514, 1496, 1497, 1498,
1438  1499, 1500, 1501, 1502, 1503, 1504, 1505, 1506, 1515, 1507,
1439  1508, 1509, 1510, 1511, 1512, 1516, 1517, 1521, 1522, 1526,
1440  1532, 1533, 1513, 1535, 1514, 1543, 1546, 1549, 1550, 1553,
1441  1554, 1555, 1557, 1558, 1559, 1560, 1515, 1561, 1562, 1563,
1442  1567, 1568, 1569, 1516, 1517, 1521, 1522, 1526, 1532, 1533,
1443  1570, 1535, 1572, 1543, 1546, 1549, 1550, 1553, 1554, 1555,
1444  1557, 1558, 1559, 1560, 1573, 1561, 1562, 1563, 1567, 1568,
1445 
1446  1569, 1575, 1574, 1581, 1583, 1589, 1590, 1591, 1570, 1594,
1447  1572, 1595, 1600, 1603, 1604, 1609, 1610, 1612, 1614, 1615,
1448  1618, 1619, 1573, 1621, 1622, 1623, 1625, 1626, 1627, 1575,
1449  1574, 1581, 1583, 1589, 1590, 1591, 1628, 1594, 1629, 1595,
1450  1600, 1603, 1604, 1609, 1610, 1612, 1614, 1615, 1618, 1619,
1451  1630, 1621, 1622, 1623, 1625, 1626, 1627, 1631, 1634, 1635,
1452  1636, 1637, 1639, 1640, 1628, 1641, 1629, 1642, 1645, 1646,
1453  1647, 1651, 1657, 1661, 1664, 1668, 1665, 1670, 1630, 1671,
1454  1672, 1673, 1674, 1677, 1679, 1631, 1634, 1635, 1636, 1637,
1455  1639, 1640, 1680, 1641, 1681, 1642, 1645, 1646, 1647, 1651,
1456 
1457  1657, 1661, 1664, 1668, 1665, 1670, 1682, 1671, 1672, 1673,
1458  1674, 1677, 1679, 1684, 1685, 1691, 1692, 1693, 1696, 1697,
1459  1680, 1698, 1681, 1699, 1708, 1710, 1711, 1713, 1714, 1715,
1460  1720, 1724, 1727, 1728, 1682, 1729, 1730, 1734, 1738, 1739,
1461  1741, 1684, 1685, 1691, 1692, 1693, 1696, 1697, 1742, 1698,
1462  1744, 1699, 1708, 1710, 1711, 1713, 1714, 1715, 1720, 1724,
1463  1727, 1728, 1749, 1729, 1730, 1734, 1738, 1739, 1741, 1750,
1464  1751, 1752, 1753, 1755, 1756, 1757, 1742, 1760, 1744, 1761,
1465  1763, 1770, 1771, 1773, 1774, 1904, 1775, 1778, 1779, 1781,
1466  1749, 1782, 1786, 1787, 1789, 1792, 1793, 1750, 1751, 1752,
1467 
1468  1753, 1755, 1756, 1757, 1796, 1760, 1800, 1761, 1763, 1770,
1469  1801, 1773, 1774, 1772, 1775, 1778, 1779, 1781, 1802, 1782,
1470  1786, 1787, 1789, 1792, 1793, 1811, 1814, 1816, 1821, 1822,
1471  1823, 1827, 1796, 1830, 1800, 1831, 1834, 1835, 1801, 1838,
1472  1839, 1840, 1841, 1842, 1843, 1846, 1802, 1847, 1849, 1850,
1473  1858, 1861, 1862, 1811, 1814, 1816, 1821, 1822, 1823, 1827,
1474  1863, 1830, 1864, 1831, 1834, 1835, 1869, 1838, 1839, 1840,
1475  1841, 1842, 1843, 1846, 1878, 1847, 1849, 1850, 1858, 1861,
1476  1862, 1879, 1880, 1887, 1888, 1889, 1895, 1903, 1863, 1905,
1477  1864, 1907, 1826, 1908, 1869, 1829, 1909, 1910, 1833, 1911,
1478 
1479  1912, 1837, 1878, 1913, 1914, 1915, 1916, 1917, 1918, 1879,
1480  1880, 1887, 1888, 1889, 1895, 1903, 1845, 1905, 1919, 1920,
1481  1922, 1908, 1923, 1924, 1909, 1910, 1852, 1926, 1855, 1857,
1482  1927, 1913, 1914, 1915, 1916, 1917, 1918, 1860, 1928, 1929,
1483  1930, 1931, 1933, 1935, 1868, 1936, 1919, 1920, 1938, 1872,
1484  1923, 1924, 1940, 1942, 1876, 1944, 1945, 1946, 1947, 1882,
1485  1884, 1886, 1948, 1949, 1950, 1891, 1928, 1929, 1930, 1893,
1486  1952, 1953, 1897, 1955, 1900, 1902, 1956, 1958, 1959, 1907,
1487  1960, 1961, 1962, 1964, 1945, 1946, 1947, 1966, 1967, 1968,
1488  1948, 1969, 1950, 1970, 1971, 1972, 1973, 1974, 1922, 1953,
1489 
1490  1975, 1976, 1926, 1977, 1978, 1979, 1980, 1982, 1960, 1961,
1491  1962, 1933, 1935, 1984, 1938, 1940, 1967, 1942, 1944, 1985,
1492  1986, 1987, 1988, 1972, 1990, 1991, 1952, 1992, 1975, 1976,
1493  1955, 1977, 1978, 1994, 1980, 1958, 1996, 1997, 1998, 1999,
1494  1964, 1966, 2000, 2002, 2004, 2006, 2008, 1985, 2009, 1987,
1495  2011, 2013, 2014, 2015, 2016, 1992, 2017, 2019, 2020, 1982,
1496  1984, 2021, 2023, 2024, 2026, 1997, 1990, 1999, 2028, 2029,
1497  2000, 1994, 1996, 2030, 2032, 2033, 2009, 2034, 2002, 2004,
1498  2014, 2015, 2016, 2006, 2017, 2008, 2020, 2035, 2011, 2021,
1499  2013, 2036, 2037, 2038, 2039, 2019, 2040, 2041, 2023, 2043,
1500 
1501  2026, 2030, 2028, 2033, 2045, 2034, 2046, 2032, 2047, 2048,
1502  2049, 2050, 2051, 2052, 2054, 2035, 2055, 2057, 2043, 2036,
1503  2037, 2038, 2045, 2058, 2040, 2059, 2061, 2062, 2064, 2066,
1504  2068, 2054, 2070, 2057, 2046, 2072, 2047, 2074, 2049, 2061,
1505  2075, 2064, 2066, 2068, 2070, 2072, 2074, 2077, 2077, 45,
1506  133, 137, 253, 256, 260, 2062, 10, 10, 37, 37,
1507  40, 40, 43, 43, 46, 46, 307, 374, 396, 430,
1508  434, 441, 445, 450, 463, 519, 542, 560, 562, 572,
1509  581, 606, 608, 640, 655, 668, 681, 710, 726, 768,
1510  795, 798, 804, 806, 840, 849, 852, 858, 864, 869,
1511 
1512  878, 885, 920, 923, 929, 984, 1017, 1036, 1038, 1040,
1513  1046, 1055, 1062, 1064, 1068, 1100, 1124, 1132, 1137, 1142,
1514  1144, 1148, 1152, 1157, 1167, 1201, 1211, 1213, 1220, 1229,
1515  1241, 1252, 1255, 1259, 1266, 1270, 1280, 1284, 1286, 1292,
1516  1299, 1124, 1303, 1307, 1310, 1132, 1314, 1137, 1142, 1144,
1517  1148, 1323, 1152, 1326, 1157, 1336, 1167, 1370, 1201, 1211,
1518  1213, 1384, 1220, 1392, 1229, 1405, 1241, 1252, 1255, 1259,
1519  1419, 1421, 1425, 1266, 1270, 1429, 1437, 1280, 1284, 1286,
1520  1444, 1292, 1448, 1299, 1455, 1303, 1458, 1307, 1310, 1314,
1521  1463, 1467, 1469, 1471, 1323, 1326, 1479, 1336, 1370, 1518,
1522 
1523  1524, 1528, 1530, 1384, 1392, 1538, 1541, 1544, 1547, 1551,
1524  1405, 1419, 1421, 1425, 1429, 1576, 1437, 1578, 1444, 1585,
1525  1448, 1587, 1592, 1455, 1458, 1596, 1598, 1463, 1601, 1467,
1526  1469, 1471, 1607, 1479, 1616, 1518, 1648, 1652, 1524, 1655,
1527  1528, 1530, 1659, 1662, 1538, 1666, 1541, 1544, 1547, 1551,
1528  1675, 1686, 1688, 1694, 1576, 1578, 1700, 1703, 1706, 1585,
1529  1587, 1592, 1596, 1598, 1601, 1716, 1718, 1607, 1722, 1725,
1530  1616, 1731, 1736, 1745, 1747, 1758, 1648, 1764, 1652, 1767,
1531  1655, 1659, 1662, 1666, 1776, 1675, 1784, 1790, 1686, 1688,
1532  1794, 1694, 1700, 1803, 1703, 1805, 1706, 1808, 1812, 1716,
1533 
1534  1718, 1818, 1722, 1725, 1731, 1825, 1828, 1736, 1832, 1836,
1535  1745, 1747, 1844, 1758, 1851, 1764, 1854, 1767, 1856, 1859,
1536  1776, 1867, 1871, 1784, 1875, 1790, 1794, 1881, 1883, 1885,
1537  1803, 1805, 1890, 1808, 1892, 1812, 1896, 1899, 1818, 1901,
1538  1906, 1825, 1828, 1832, 1836, 1844, 1921, 1851, 1925, 1854,
1539  1932, 1934, 1867, 1937, 1871, 1939, 1941, 1875, 1943, 1881,
1540  1883, 1885, 1951, 1954, 1957, 1963, 1965, 1981, 1983, 1989,
1541  1993, 1995, 2001, 2003, 2005, 2007, 2010, 2012, 2018, 2022,
1542  2025, 2027, 2031, 2042, 2044, 2053, 2056, 2060, 2063, 2065,
1543  2067, 2069, 2071, 2073, 2076, 1813, 1810, 1809, 1807, 1707,
1544 
1545  1806, 1704, 1804, 1701, 1799, 1695, 1798, 1797, 1795, 1689,
1546  1687, 1791, 1788, 1785, 1783, 1676, 1780, 1777, 1667, 1663,
1547  1660, 1769, 1656, 1768, 1653, 1766, 1765, 1649, 1762, 1759,
1548  1754, 1748, 1746, 1743, 1740, 1737, 1735, 1733, 1732, 1617,
1549  1726, 1723, 1721, 1608, 1719, 1717, 1602, 1599, 1597, 1712,
1550  1593, 1709, 1588, 1586, 1707, 1705, 1704, 1702, 1701, 1579,
1551  1577, 1695, 1690, 1689, 1687, 1683, 1678, 1676, 1552, 1548,
1552  1669, 1545, 1542, 1667, 1539, 1663, 1660, 1658, 1531, 1529,
1553  1656, 1654, 1525, 1653, 1650, 1649, 1519, 1644, 1643, 1638,
1554  1633, 1632, 1624, 1620, 1617, 1613, 1611, 1480, 1608, 1606,
1555 
1556  1605, 1472, 1470, 1468, 1602, 1464, 1599, 1597, 1459, 1456,
1557  1593, 1588, 1449, 1586, 1584, 1445, 1582, 1580, 1579, 1438,
1558  1577, 1571, 1430, 1426, 1566, 1422, 1420, 1565, 1564, 1556,
1559  1406, 1552, 1548, 1545, 1542, 1540, 1539, 1393, 1537, 1536,
1560  1534, 1385, 1531, 1529, 1527, 1525, 1523, 1520, 1519, 1371,
1561  1487, 1337, 1480, 1477, 1327, 1324, 1472, 1470, 1468, 1466,
1562  1464, 1315, 1462, 1461, 1311, 1308, 1459, 1304, 1456, 1454,
1563  1300, 1450, 1449, 1293, 1447, 1445, 1287, 1285, 1281, 1439,
1564  1438, 1436, 1430, 1271, 1267, 1426, 1422, 1420, 1260, 1256,
1565  1253, 1407, 1242, 1406, 1403, 1400, 1398, 1396, 1230, 1394,
1566 
1567  1393, 1221, 1385, 1383, 1382, 1214, 1212, 1379, 1374, 1202,
1568  1371, 1168, 1337, 1332, 1158, 1327, 1153, 1324, 1149, 1321,
1569  1320, 1145, 1143, 1319, 1138, 1315, 1133, 1311, 1308, 1306,
1570  1304, 1125, 1302, 1300, 1294, 1293, 1289, 1287, 1285, 1281,
1571  1277, 1101, 1275, 1272, 1271, 1267, 1265, 1262, 1261, 1260,
1572  1256, 1253, 1242, 1240, 1069, 1065, 1063, 1230, 1056, 1226,
1573  1047, 1221, 1041, 1039, 1037, 1217, 1214, 1212, 1202, 1018,
1574  1198, 1168, 1166, 1158, 985, 1155, 1154, 1153, 1151, 1149,
1575  1145, 1143, 1138, 1136, 1133, 1131, 1126, 1125, 1121, 1115,
1576  1110, 1109, 1106, 1101, 1095, 930, 924, 921, 1086, 1083,
1577 
1578  1081, 1074, 1069, 1067, 1065, 1063, 1057, 1056, 1051, 886,
1579  1047, 1043, 879, 1041, 1039, 1037, 870, 1031, 1030, 865,
1580  859, 853, 1021, 850, 1018, 841, 995, 989, 986, 985,
1581  980, 977, 974, 973, 969, 965, 807, 805, 799, 796,
1582  959, 949, 936, 769, 930, 924, 921, 913, 911, 910,
1583  905, 904, 901, 900, 894, 727, 886, 883, 879, 876,
1584  875, 874, 711, 870, 865, 859, 853, 850, 846, 844,
1585  841, 682, 827, 669, 821, 656, 807, 805, 799, 641,
1586  796, 769, 766, 609, 607, 763, 762, 758, 757, 756,
1587  752, 573, 727, 722, 563, 561, 717, 711, 708, 707,
1588 
1589  543, 703, 701, 697, 694, 692, 682, 520, 673, 669,
1590  656, 648, 647, 642, 641, 638, 633, 464, 614, 609,
1591  607, 451, 446, 442, 435, 431, 573, 568, 563, 561,
1592  559, 397, 549, 545, 543, 375, 533, 521, 520, 518,
1593  517, 516, 512, 509, 497, 488, 486, 481, 479, 464,
1594  308, 458, 454, 453, 451, 446, 442, 435, 431, 419,
1595  415, 414, 411, 261, 257, 254, 402, 401, 397, 395,
1596  393, 382, 375, 367, 365, 359, 351, 331, 310, 308,
1597  305, 290, 275, 261, 257, 254, 247, 203, 184, 180,
1598  47, 132, 47, 2078, 9, 2078, 2078, 2078, 2078, 2078,
1599 
1600  2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078,
1601  2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078,
1602  2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078,
1603  2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078,
1604  2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078,
1605  2078, 2078, 2078, 2078
1606  } ;
1607 
1608 static const flex_int16_t yy_chk[3855] =
1609  { 0,
1610  0, 13, 1, 1, 13, 38, 41, 44, 38, 41,
1611  44, 48, 134, 138, 48, 134, 138, 141, 170, 170,
1612  141, 200, 200, 294, 294, 327, 327, 337, 337, 339,
1613  339, 1, 2, 2, 2, 2, 2, 2, 2, 2,
1614  2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1615  2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1616  2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1617  2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1618  2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1619  2, 3, 4, 5, 6, 7, 8, 1714, 15, 4,
1620 
1621  23, 6, 1717, 33, 1719, 15, 484, 484, 15, 495,
1622  495, 723, 723, 887, 887, 889, 889, 1720, 19, 35,
1623  3, 4, 5, 6, 7, 8, 15, 4, 23, 6,
1624  14, 33, 19, 15, 17, 19, 15, 20, 17, 14,
1625  35, 14, 17, 14, 20, 14, 19, 14, 14, 1721,
1626  20, 1049, 1049, 1723, 17, 1724, 1726, 1730, 14, 1732,
1627  19, 1733, 17, 19, 1735, 20, 17, 14, 35, 14,
1628  17, 14, 20, 14, 39, 14, 14, 16, 20, 18,
1629  22, 32, 17, 29, 16, 21, 32, 29, 16, 18,
1630  22, 16, 25, 21, 1737, 22, 22, 16, 1740, 18,
1631 
1632  21, 1743, 39, 29, 42, 16, 25, 18, 22, 32,
1633  25, 29, 16, 21, 32, 29, 16, 18, 22, 16,
1634  25, 21, 26, 22, 22, 16, 26, 18, 21, 24,
1635  1746, 29, 42, 24, 25, 27, 26, 24, 25, 26,
1636  51, 52, 53, 24, 28, 1748, 1754, 27, 28, 24,
1637  26, 50, 28, 27, 26, 27, 54, 24, 28, 1757,
1638  55, 24, 341, 27, 26, 24, 1759, 26, 51, 52,
1639  53, 24, 28, 54, 50, 27, 28, 24, 56, 59,
1640  28, 27, 61, 27, 54, 523, 28, 30, 55, 30,
1641  34, 62, 34, 341, 34, 30, 30, 30, 34, 30,
1642 
1643  30, 54, 50, 58, 30, 30, 56, 59, 57, 63,
1644  61, 1762, 1763, 58, 65, 30, 523, 30, 34, 62,
1645  34, 57, 34, 30, 30, 30, 34, 30, 30, 64,
1646  64, 58, 30, 30, 31, 60, 57, 63, 31, 60,
1647  60, 58, 65, 66, 31, 67, 68, 31, 69, 57,
1648  70, 71, 72, 73, 31, 74, 75, 64, 64, 76,
1649  77, 78, 31, 60, 79, 81, 31, 60, 60, 84,
1650  85, 66, 31, 67, 68, 31, 69, 86, 70, 71,
1651  72, 73, 31, 74, 75, 87, 88, 76, 77, 78,
1652  89, 90, 79, 81, 82, 92, 82, 84, 85, 92,
1653 
1654  93, 1765, 94, 92, 95, 86, 1766, 97, 98, 99,
1655  1768, 100, 101, 87, 88, 102, 99, 102, 89, 90,
1656  103, 104, 82, 92, 82, 91, 105, 92, 93, 91,
1657  94, 92, 95, 107, 91, 97, 98, 99, 91, 100,
1658  101, 106, 91, 102, 99, 102, 107, 108, 103, 104,
1659  109, 110, 106, 91, 105, 111, 113, 91, 114, 112,
1660  117, 107, 91, 112, 1769, 118, 91, 119, 120, 106,
1661  91, 121, 116, 112, 107, 108, 116, 115, 109, 110,
1662  106, 122, 124, 111, 113, 115, 114, 112, 117, 116,
1663  1771, 112, 115, 118, 125, 119, 120, 126, 129, 121,
1664 
1665  116, 112, 131, 123, 116, 129, 123, 128, 136, 122,
1666  124, 123, 129, 115, 140, 128, 144, 116, 123, 145,
1667  115, 146, 125, 147, 148, 126, 129, 149, 150, 151,
1668  131, 123, 152, 129, 123, 128, 136, 153, 154, 123,
1669  129, 155, 140, 128, 144, 156, 123, 145, 158, 146,
1670  159, 147, 148, 160, 161, 149, 150, 151, 162, 163,
1671  152, 164, 165, 167, 168, 153, 154, 162, 169, 155,
1672  160, 172, 171, 156, 173, 162, 158, 174, 159, 165,
1673  176, 162, 161, 175, 177, 179, 181, 163, 171, 164,
1674  185, 167, 168, 165, 186, 162, 169, 187, 160, 172,
1675 
1676  183, 1777, 173, 162, 188, 174, 175, 165, 176, 162,
1677  189, 175, 177, 179, 181, 190, 171, 191, 185, 183,
1678  1778, 1779, 186, 1780, 192, 187, 193, 195, 183, 184,
1679  184, 184, 188, 197, 184, 198, 184, 199, 189, 201,
1680  184, 196, 196, 190, 202, 191, 204, 205, 184, 184,
1681  207, 184, 192, 196, 193, 195, 208, 184, 184, 184,
1682  209, 197, 184, 198, 184, 199, 1782, 201, 184, 196,
1683  196, 210, 202, 211, 204, 205, 184, 184, 207, 184,
1684  212, 196, 203, 213, 208, 203, 215, 203, 209, 216,
1685  217, 218, 216, 220, 203, 222, 223, 203, 224, 210,
1686 
1687  203, 211, 225, 226, 227, 229, 230, 1783, 212, 232,
1688  203, 213, 234, 203, 215, 203, 235, 216, 217, 218,
1689  216, 220, 203, 222, 223, 203, 224, 236, 203, 237,
1690  225, 226, 227, 229, 230, 231, 238, 232, 239, 231,
1691  234, 231, 240, 241, 235, 242, 243, 245, 248, 249,
1692  250, 255, 258, 259, 262, 236, 263, 237, 264, 265,
1693  267, 268, 271, 231, 238, 272, 239, 231, 273, 231,
1694  240, 241, 276, 242, 243, 245, 248, 249, 250, 255,
1695  258, 259, 262, 277, 263, 264, 264, 265, 267, 268,
1696  271, 279, 280, 272, 282, 283, 273, 275, 275, 284,
1697 
1698  276, 285, 286, 275, 288, 275, 289, 291, 292, 293,
1699  275, 277, 275, 275, 297, 275, 300, 301, 302, 279,
1700  280, 304, 282, 283, 305, 275, 275, 284, 306, 285,
1701  286, 275, 288, 275, 289, 291, 292, 293, 275, 309,
1702  275, 275, 297, 275, 300, 301, 302, 311, 312, 304,
1703  313, 314, 305, 315, 316, 317, 306, 318, 319, 320,
1704  314, 323, 325, 321, 326, 329, 331, 309, 332, 333,
1705  334, 319, 335, 336, 342, 311, 312, 321, 313, 314,
1706  343, 315, 316, 317, 1785, 318, 319, 320, 314, 323,
1707  325, 321, 326, 329, 331, 344, 332, 333, 334, 319,
1708 
1709  335, 336, 342, 345, 346, 321, 347, 348, 343, 350,
1710  351, 353, 344, 354, 355, 361, 348, 362, 363, 364,
1711  365, 366, 367, 344, 368, 369, 370, 372, 373, 376,
1712  367, 345, 346, 377, 347, 348, 378, 350, 351, 353,
1713  344, 354, 355, 361, 348, 362, 363, 364, 365, 366,
1714  367, 379, 368, 369, 370, 372, 373, 376, 367, 380,
1715  381, 377, 383, 385, 378, 386, 387, 389, 390, 391,
1716  392, 393, 394, 395, 398, 399, 403, 404, 405, 379,
1717  406, 408, 409, 410, 412, 413, 414, 380, 381, 415,
1718  383, 385, 416, 386, 387, 389, 390, 391, 392, 393,
1719 
1720  394, 395, 398, 399, 403, 404, 405, 417, 406, 408,
1721  409, 410, 412, 413, 414, 418, 420, 415, 421, 422,
1722  416, 423, 424, 425, 426, 427, 428, 429, 432, 433,
1723  436, 437, 438, 439, 440, 417, 420, 443, 444, 447,
1724  448, 449, 452, 418, 420, 455, 421, 422, 456, 423,
1725  424, 425, 426, 427, 428, 429, 432, 433, 436, 437,
1726  438, 439, 440, 457, 420, 443, 444, 447, 448, 449,
1727  452, 458, 460, 455, 461, 462, 456, 465, 466, 467,
1728  468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
1729  478, 457, 479, 1786, 1787, 483, 488, 489, 490, 458,
1730 
1731  460, 491, 461, 462, 494, 465, 466, 467, 468, 469,
1732  470, 471, 472, 473, 474, 475, 476, 477, 478, 481,
1733  479, 481, 481, 483, 488, 489, 490, 499, 500, 491,
1734  501, 502, 494, 481, 1788, 1789, 503, 504, 505, 506,
1735  507, 508, 510, 511, 512, 514, 515, 481, 1791, 481,
1736  481, 517, 1795, 1797, 508, 499, 500, 518, 501, 502,
1737  522, 481, 497, 497, 503, 504, 505, 506, 507, 508,
1738  510, 511, 512, 514, 515, 516, 497, 524, 516, 517,
1739  497, 497, 508, 525, 526, 518, 527, 528, 522, 529,
1740  497, 497, 516, 531, 533, 534, 536, 537, 539, 1798,
1741 
1742  541, 544, 545, 516, 497, 524, 516, 548, 497, 497,
1743  550, 525, 526, 551, 527, 528, 552, 529, 553, 554,
1744  516, 531, 533, 534, 556, 537, 539, 536, 541, 544,
1745  545, 557, 558, 559, 565, 548, 566, 567, 550, 569,
1746  570, 551, 571, 574, 552, 570, 553, 554, 575, 576,
1747  577, 578, 556, 579, 580, 582, 575, 583, 584, 557,
1748  558, 559, 565, 585, 566, 567, 586, 569, 570, 587,
1749  571, 574, 588, 570, 589, 590, 575, 576, 577, 578,
1750  591, 579, 580, 582, 592, 583, 584, 593, 595, 596,
1751  597, 585, 601, 602, 586, 603, 610, 587, 611, 613,
1752 
1753  588, 615, 589, 590, 616, 617, 618, 619, 591, 620,
1754  621, 622, 592, 623, 624, 593, 595, 596, 597, 625,
1755  601, 602, 626, 603, 610, 627, 611, 613, 628, 615,
1756  629, 630, 616, 617, 618, 619, 631, 620, 621, 622,
1757  632, 623, 624, 633, 633, 634, 635, 625, 636, 637,
1758  626, 639, 643, 627, 633, 644, 628, 645, 629, 630,
1759  646, 649, 650, 651, 631, 654, 657, 652, 632, 658,
1760  653, 633, 633, 634, 635, 652, 636, 637, 653, 639,
1761  643, 659, 633, 644, 660, 645, 661, 663, 646, 649,
1762  650, 651, 664, 654, 657, 652, 665, 658, 653, 666,
1763 
1764  667, 671, 672, 652, 673, 674, 653, 675, 676, 659,
1765  677, 678, 660, 679, 661, 663, 680, 685, 683, 686,
1766  664, 688, 690, 691, 665, 693, 695, 666, 667, 671,
1767  672, 697, 673, 674, 696, 675, 676, 683, 677, 678,
1768  696, 679, 699, 700, 680, 685, 683, 686, 701, 688,
1769  690, 691, 702, 693, 695, 704, 705, 706, 708, 697,
1770  709, 712, 696, 716, 718, 719, 721, 724, 696, 725,
1771  699, 700, 728, 719, 729, 730, 701, 732, 733, 734,
1772  702, 735, 736, 704, 705, 706, 708, 739, 709, 712,
1773  740, 716, 718, 719, 721, 724, 743, 725, 744, 745,
1774 
1775  728, 746, 729, 730, 749, 732, 733, 734, 751, 735,
1776  736, 752, 753, 754, 755, 739, 757, 759, 740, 760,
1777  761, 762, 764, 765, 743, 766, 744, 745, 767, 746,
1778  752, 770, 749, 772, 773, 774, 751, 775, 776, 752,
1779  753, 754, 755, 777, 757, 759, 778, 760, 761, 762,
1780  764, 765, 779, 766, 780, 781, 767, 782, 752, 770,
1781  783, 772, 773, 774, 785, 775, 776, 786, 787, 788,
1782  789, 777, 790, 791, 778, 792, 793, 797, 800, 801,
1783  779, 802, 780, 781, 803, 782, 809, 810, 783, 811,
1784  813, 814, 785, 815, 818, 786, 787, 788, 789, 819,
1785 
1786  790, 791, 821, 792, 793, 797, 800, 801, 822, 802,
1787  824, 825, 803, 826, 809, 810, 829, 811, 813, 814,
1788  830, 815, 818, 832, 833, 834, 835, 819, 836, 838,
1789  821, 839, 842, 927, 845, 847, 822, 848, 824, 825,
1790  854, 826, 843, 1799, 829, 855, 1804, 1806, 830, 1807,
1791  1809, 832, 833, 834, 835, 1810, 836, 838, 1811, 839,
1792  842, 843, 845, 847, 927, 848, 1813, 1815, 854, 1816,
1793  843, 844, 844, 855, 844, 844, 844, 844, 844, 844,
1794  844, 844, 844, 844, 844, 844, 844, 844, 844, 844,
1795  844, 844, 844, 844, 844, 844, 844, 844, 844, 844,
1796 
1797  844, 844, 844, 844, 844, 844, 844, 844, 844, 844,
1798  844, 844, 844, 844, 844, 844, 844, 844, 844, 844,
1799  844, 844, 844, 844, 844, 844, 844, 844, 844, 844,
1800  856, 857, 860, 861, 862, 863, 868, 871, 872, 873,
1801  877, 881, 882, 884, 891, 892, 893, 896, 897, 898,
1802  899, 902, 905, 906, 907, 908, 910, 1817, 856, 857,
1803  860, 861, 862, 863, 868, 871, 872, 873, 877, 881,
1804  882, 884, 891, 892, 893, 896, 897, 898, 899, 902,
1805  905, 906, 907, 908, 910, 911, 911, 913, 915, 916,
1806  918, 919, 922, 925, 926, 928, 932, 933, 934, 935,
1807 
1808  937, 938, 911, 911, 939, 940, 942, 911, 943, 946,
1809  947, 948, 949, 911, 911, 913, 915, 916, 918, 919,
1810  922, 925, 926, 928, 932, 933, 934, 935, 937, 938,
1811  911, 911, 939, 940, 942, 911, 943, 946, 947, 948,
1812  949, 951, 952, 953, 954, 955, 957, 958, 961, 962,
1813  963, 966, 967, 970, 971, 972, 975, 976, 978, 983,
1814  987, 988, 989, 990, 991, 992, 993, 963, 996, 951,
1815  952, 953, 954, 955, 957, 958, 961, 962, 997, 966,
1816  967, 970, 971, 972, 975, 976, 978, 983, 987, 988,
1817  989, 990, 991, 992, 993, 963, 996, 998, 999, 1000,
1818 
1819  1001, 1002, 1003, 1005, 1004, 1000, 997, 1006, 1004, 1003,
1820  1008, 1006, 1007, 1009, 1010, 1011, 1003, 1004, 1819, 1007,
1821  1013, 1014, 1015, 1019, 1020, 998, 999, 1000, 1001, 1002,
1822  1003, 1005, 1004, 1000, 1022, 1006, 1004, 1003, 1008, 1006,
1823  1007, 1009, 1010, 1011, 1003, 1004, 1012, 1007, 1013, 1014,
1824  1015, 1019, 1020, 1012, 1023, 1024, 1025, 1026, 1027, 1028,
1825  1012, 1029, 1022, 1032, 1033, 1035, 1042, 1044, 1045, 1048,
1826  1051, 1053, 1054, 1058, 1012, 1059, 1060, 1061, 1066, 1067,
1827  1070, 1012, 1023, 1024, 1025, 1026, 1027, 1028, 1012, 1029,
1828  1071, 1032, 1033, 1035, 1042, 1044, 1045, 1048, 1051, 1053,
1829 
1830  1054, 1058, 1072, 1059, 1060, 1061, 1066, 1067, 1070, 1075,
1831  1076, 1077, 1078, 1080, 1079, 1082, 1084, 1085, 1071, 1079,
1832  1078, 1089, 1079, 1090, 1093, 1094, 1097, 1098, 1102, 1104,
1833  1072, 1105, 1107, 1108, 1111, 1113, 1114, 1075, 1076, 1077,
1834  1078, 1080, 1079, 1082, 1084, 1085, 1117, 1079, 1078, 1089,
1835  1079, 1090, 1093, 1094, 1097, 1098, 1102, 1104, 1118, 1105,
1836  1107, 1108, 1111, 1113, 1114, 1119, 1120, 1122, 1127, 1130,
1837  1134, 1135, 1139, 1140, 1117, 1820, 1150, 1154, 1156, 1159,
1838  1160, 1161, 1163, 1164, 1165, 1169, 1118, 1170, 1171, 1172,
1839  1173, 1174, 1175, 1119, 1120, 1122, 1127, 1130, 1134, 1135,
1840 
1841  1176, 1140, 1177, 1139, 1150, 1154, 1156, 1159, 1160, 1161,
1842  1163, 1164, 1165, 1169, 1178, 1170, 1171, 1172, 1173, 1174,
1843  1175, 1180, 1179, 1181, 1179, 1182, 1183, 1184, 1176, 1185,
1844  1177, 1179, 1186, 1187, 1188, 1189, 1180, 1190, 1191, 1192,
1845  1193, 1194, 1178, 1195, 1196, 1197, 1199, 1200, 1204, 1180,
1846  1179, 1181, 1179, 1182, 1183, 1184, 1205, 1185, 1206, 1179,
1847  1186, 1187, 1188, 1189, 1180, 1190, 1191, 1192, 1193, 1194,
1848  1207, 1195, 1196, 1197, 1199, 1200, 1204, 1209, 1210, 1218,
1849  1219, 1222, 1223, 1224, 1205, 1225, 1206, 1228, 1232, 1234,
1850  1236, 1237, 1239, 1244, 1245, 1246, 1247, 1248, 1207, 1249,
1851 
1852  1250, 1251, 1254, 1257, 1258, 1209, 1210, 1218, 1219, 1222,
1853  1223, 1224, 1263, 1225, 1264, 1228, 1232, 1234, 1236, 1237,
1854  1239, 1244, 1245, 1246, 1247, 1248, 1268, 1249, 1250, 1251,
1855  1254, 1257, 1258, 1269, 1273, 1274, 1275, 1279, 1282, 1283,
1856  1263, 1288, 1264, 1290, 1296, 1297, 1298, 1305, 1309, 1317,
1857  1322, 1325, 1328, 1275, 1268, 1329, 1331, 1275, 1333, 1334,
1858  1335, 1269, 1273, 1274, 1275, 1279, 1282, 1283, 1338, 1288,
1859  1339, 1290, 1296, 1297, 1298, 1305, 1309, 1317, 1322, 1325,
1860  1328, 1275, 1340, 1329, 1331, 1275, 1333, 1334, 1335, 1342,
1861  1343, 1344, 1345, 1346, 1347, 1348, 1338, 1349, 1339, 1350,
1862 
1863  1351, 1352, 1353, 1354, 1355, 1356, 1357, 1358, 1359, 1360,
1864  1340, 1361, 1362, 1363, 1364, 1365, 1366, 1342, 1343, 1344,
1865  1345, 1346, 1347, 1348, 1367, 1349, 1368, 1350, 1351, 1352,
1866  1353, 1354, 1355, 1356, 1357, 1358, 1359, 1360, 1369, 1361,
1867  1362, 1363, 1364, 1365, 1366, 1372, 1373, 1376, 1377, 1380,
1868  1386, 1387, 1367, 1389, 1368, 1397, 1399, 1401, 1402, 1404,
1869  1407, 1408, 1410, 1411, 1412, 1413, 1369, 1414, 1415, 1416,
1870  1424, 1427, 1428, 1372, 1373, 1376, 1377, 1380, 1386, 1387,
1871  1431, 1389, 1433, 1397, 1399, 1401, 1402, 1404, 1407, 1408,
1872  1410, 1411, 1412, 1413, 1434, 1414, 1415, 1416, 1424, 1427,
1873 
1874  1428, 1435, 1434, 1441, 1443, 1451, 1452, 1453, 1431, 1457,
1875  1433, 1460, 1465, 1473, 1474, 1478, 1481, 1483, 1485, 1486,
1876  1488, 1489, 1434, 1491, 1492, 1493, 1495, 1496, 1497, 1435,
1877  1434, 1441, 1443, 1451, 1452, 1453, 1498, 1457, 1499, 1460,
1878  1465, 1473, 1474, 1478, 1481, 1483, 1485, 1486, 1488, 1489,
1879  1500, 1491, 1492, 1493, 1495, 1496, 1497, 1501, 1504, 1505,
1880  1506, 1507, 1509, 1510, 1498, 1511, 1499, 1512, 1515, 1516,
1881  1517, 1522, 1532, 1535, 1537, 1543, 1537, 1549, 1500, 1550,
1882  1553, 1554, 1555, 1557, 1559, 1501, 1504, 1505, 1506, 1507,
1883  1509, 1510, 1560, 1511, 1561, 1512, 1515, 1516, 1517, 1522,
1884 
1885  1532, 1535, 1537, 1543, 1537, 1549, 1562, 1550, 1553, 1554,
1886  1555, 1557, 1559, 1564, 1564, 1568, 1569, 1570, 1572, 1573,
1887  1560, 1574, 1561, 1575, 1589, 1591, 1594, 1600, 1603, 1604,
1888  1609, 1612, 1614, 1615, 1562, 1618, 1619, 1622, 1625, 1626,
1889  1628, 1564, 1564, 1568, 1569, 1570, 1572, 1573, 1629, 1574,
1890  1631, 1575, 1589, 1591, 1594, 1600, 1603, 1604, 1609, 1612,
1891  1614, 1615, 1634, 1618, 1619, 1622, 1625, 1626, 1628, 1635,
1892  1636, 1637, 1638, 1640, 1641, 1642, 1629, 1644, 1631, 1645,
1893  1647, 1658, 1661, 1664, 1665, 1822, 1668, 1670, 1671, 1673,
1894  1634, 1674, 1679, 1680, 1682, 1684, 1685, 1635, 1636, 1637,
1895 
1896  1638, 1640, 1641, 1642, 1691, 1644, 1697, 1645, 1647, 1658,
1897  1698, 1664, 1665, 1661, 1668, 1670, 1671, 1673, 1699, 1674,
1898  1679, 1680, 1682, 1684, 1685, 1711, 1713, 1715, 1727, 1728,
1899  1729, 1734, 1691, 1738, 1697, 1739, 1741, 1742, 1698, 1744,
1900  1749, 1750, 1751, 1752, 1753, 1755, 1699, 1756, 1760, 1761,
1901  1770, 1772, 1773, 1711, 1713, 1715, 1727, 1728, 1729, 1734,
1902  1774, 1738, 1775, 1739, 1741, 1742, 1781, 1744, 1749, 1750,
1903  1751, 1752, 1753, 1755, 1792, 1756, 1760, 1761, 1770, 1772,
1904  1773, 1793, 1796, 1800, 1801, 1802, 1814, 1821, 1774, 1823,
1905  1775, 1824, 1826, 1827, 1781, 1829, 1830, 1831, 1833, 1834,
1906 
1907  1835, 1837, 1792, 1838, 1839, 1840, 1841, 1842, 1843, 1793,
1908  1796, 1800, 1801, 1802, 1814, 1821, 1845, 1823, 1846, 1847,
1909  1848, 1827, 1849, 1850, 1830, 1831, 1852, 1853, 1855, 1857,
1910  1858, 1838, 1839, 1840, 1841, 1842, 1843, 1860, 1861, 1862,
1911  1863, 1864, 1865, 1866, 1868, 1869, 1846, 1847, 1870, 1872,
1912  1849, 1850, 1873, 1874, 1876, 1877, 1878, 1879, 1880, 1882,
1913  1884, 1886, 1887, 1888, 1889, 1891, 1861, 1862, 1863, 1893,
1914  1894, 1895, 1897, 1898, 1900, 1902, 1903, 1904, 1905, 1907,
1915  1908, 1909, 1910, 1911, 1878, 1879, 1880, 1912, 1913, 1914,
1916  1887, 1915, 1889, 1916, 1917, 1918, 1919, 1920, 1922, 1895,
1917 
1918  1923, 1924, 1926, 1927, 1928, 1929, 1930, 1931, 1908, 1909,
1919  1910, 1933, 1935, 1936, 1938, 1940, 1913, 1942, 1944, 1945,
1920  1946, 1947, 1948, 1918, 1949, 1950, 1952, 1953, 1923, 1924,
1921  1955, 1927, 1928, 1956, 1930, 1958, 1959, 1960, 1961, 1962,
1922  1964, 1966, 1967, 1968, 1969, 1970, 1971, 1945, 1972, 1947,
1923  1973, 1974, 1975, 1976, 1977, 1953, 1978, 1979, 1980, 1982,
1924  1984, 1985, 1986, 1987, 1988, 1960, 1990, 1962, 1991, 1992,
1925  1967, 1994, 1996, 1997, 1998, 1999, 1972, 2000, 2002, 2004,
1926  1975, 1976, 1977, 2006, 1978, 2008, 1980, 2009, 2011, 1985,
1927  2013, 2014, 2015, 2016, 2017, 2019, 2020, 2021, 2023, 2024,
1928 
1929  2026, 1997, 2028, 1999, 2029, 2000, 2030, 2032, 2033, 2034,
1930  2035, 2036, 2037, 2038, 2039, 2009, 2040, 2041, 2043, 2014,
1931  2015, 2016, 2045, 2046, 2020, 2047, 2048, 2049, 2050, 2051,
1932  2052, 2054, 2055, 2057, 2030, 2058, 2033, 2059, 2035, 2061,
1933  2062, 2064, 2066, 2068, 2070, 2072, 2074, 2075, 2077, 2083,
1934  2085, 2086, 2087, 2088, 2089, 2049, 2079, 2079, 2080, 2080,
1935  2081, 2081, 2082, 2082, 2084, 2084, 2090, 2091, 2092, 2093,
1936  2094, 2095, 2096, 2097, 2098, 2099, 2100, 2101, 2102, 2103,
1937  2104, 2105, 2106, 2107, 2108, 2109, 2110, 2111, 2112, 2113,
1938  2114, 2115, 2116, 2117, 2118, 2119, 2120, 2121, 2122, 2123,
1939 
1940  2124, 2125, 2126, 2127, 2128, 2129, 2130, 2131, 2132, 2133,
1941  2134, 2135, 2136, 2137, 2138, 2139, 2140, 2141, 2142, 2143,
1942  2144, 2145, 2146, 2147, 2148, 2149, 2150, 2151, 2152, 2153,
1943  2154, 2155, 2156, 2157, 2158, 2159, 2160, 2161, 2162, 2163,
1944  2164, 2165, 2166, 2167, 2168, 2169, 2170, 2171, 2172, 2173,
1945  2174, 2175, 2176, 2177, 2178, 2179, 2180, 2181, 2182, 2183,
1946  2184, 2185, 2186, 2187, 2188, 2189, 2190, 2191, 2192, 2193,
1947  2194, 2195, 2196, 2197, 2198, 2199, 2200, 2201, 2202, 2203,
1948  2204, 2205, 2206, 2207, 2208, 2209, 2210, 2211, 2212, 2213,
1949  2214, 2215, 2216, 2217, 2218, 2219, 2220, 2221, 2222, 2223,
1950 
1951  2224, 2225, 2226, 2227, 2228, 2229, 2230, 2231, 2232, 2233,
1952  2234, 2235, 2236, 2237, 2238, 2239, 2240, 2241, 2242, 2243,
1953  2244, 2245, 2246, 2247, 2248, 2249, 2250, 2251, 2252, 2253,
1954  2254, 2255, 2256, 2257, 2258, 2259, 2260, 2261, 2262, 2263,
1955  2264, 2265, 2266, 2267, 2268, 2269, 2270, 2271, 2272, 2273,
1956  2274, 2275, 2276, 2277, 2278, 2279, 2280, 2281, 2282, 2283,
1957  2284, 2285, 2286, 2287, 2288, 2289, 2290, 2291, 2292, 2293,
1958  2294, 2295, 2296, 2297, 2298, 2299, 2300, 2301, 2302, 2303,
1959  2304, 2305, 2306, 2307, 2308, 2309, 2310, 2311, 2312, 2313,
1960  2314, 2315, 2316, 2317, 2318, 2319, 2320, 2321, 2322, 2323,
1961 
1962  2324, 2325, 2326, 2327, 2328, 2329, 2330, 2331, 2332, 2333,
1963  2334, 2335, 2336, 2337, 2338, 2339, 2340, 2341, 2342, 2343,
1964  2344, 2345, 2346, 2347, 2348, 2349, 2350, 2351, 2352, 2353,
1965  2354, 2355, 2356, 2357, 2358, 2359, 2360, 2361, 2362, 2363,
1966  2364, 2365, 2366, 2367, 2368, 2369, 2370, 2371, 2372, 2373,
1967  2374, 2375, 2376, 2377, 2378, 2379, 2380, 2381, 2382, 2383,
1968  2384, 2385, 2386, 2387, 2388, 2389, 2390, 2391, 2392, 2393,
1969  2394, 2395, 2396, 2397, 2398, 2399, 2400, 2401, 2402, 2403,
1970  2404, 2405, 2406, 2407, 2408, 2409, 2410, 2411, 2412, 2413,
1971  2414, 2415, 2416, 2417, 2418, 1712, 1710, 1709, 1708, 1707,
1972 
1973  1705, 1704, 1702, 1701, 1696, 1695, 1693, 1692, 1690, 1689,
1974  1687, 1683, 1681, 1678, 1677, 1676, 1672, 1669, 1667, 1663,
1975  1660, 1657, 1656, 1654, 1653, 1651, 1650, 1649, 1646, 1643,
1976  1639, 1633, 1632, 1630, 1627, 1624, 1623, 1621, 1620, 1617,
1977  1613, 1611, 1610, 1608, 1606, 1605, 1602, 1599, 1597, 1595,
1978  1593, 1590, 1588, 1586, 1584, 1583, 1582, 1581, 1580, 1579,
1979  1577, 1571, 1567, 1566, 1565, 1563, 1558, 1556, 1552, 1548,
1980  1546, 1545, 1542, 1540, 1539, 1536, 1534, 1533, 1531, 1529,
1981  1527, 1526, 1525, 1523, 1521, 1520, 1519, 1514, 1513, 1508,
1982  1503, 1502, 1494, 1490, 1487, 1484, 1482, 1480, 1477, 1476,
1983 
1984  1475, 1472, 1470, 1468, 1466, 1464, 1462, 1461, 1459, 1456,
1985  1454, 1450, 1449, 1447, 1446, 1445, 1442, 1440, 1439, 1438,
1986  1436, 1432, 1430, 1426, 1423, 1422, 1420, 1418, 1417, 1409,
1987  1406, 1403, 1400, 1398, 1396, 1395, 1394, 1393, 1391, 1390,
1988  1388, 1385, 1383, 1382, 1381, 1379, 1378, 1375, 1374, 1371,
1989  1341, 1337, 1332, 1330, 1327, 1324, 1321, 1320, 1319, 1318,
1990  1316, 1315, 1313, 1312, 1311, 1308, 1306, 1304, 1302, 1301,
1991  1300, 1295, 1294, 1293, 1291, 1289, 1287, 1285, 1281, 1278,
1992  1277, 1276, 1272, 1271, 1267, 1265, 1262, 1261, 1260, 1256,
1993  1253, 1243, 1242, 1240, 1238, 1235, 1233, 1231, 1230, 1227,
1994 
1995  1226, 1221, 1217, 1216, 1215, 1214, 1212, 1208, 1203, 1202,
1996  1198, 1168, 1166, 1162, 1158, 1155, 1153, 1151, 1149, 1147,
1997  1146, 1145, 1143, 1141, 1138, 1136, 1133, 1131, 1129, 1128,
1998  1126, 1125, 1123, 1121, 1116, 1115, 1112, 1110, 1109, 1106,
1999  1103, 1101, 1099, 1096, 1095, 1092, 1091, 1088, 1087, 1086,
2000  1083, 1081, 1074, 1073, 1069, 1065, 1063, 1057, 1056, 1052,
2001  1047, 1043, 1041, 1039, 1037, 1034, 1031, 1030, 1021, 1018,
2002  1016, 995, 994, 986, 985, 982, 981, 980, 979, 977,
2003  974, 973, 969, 968, 965, 964, 960, 959, 956, 950,
2004  945, 944, 941, 936, 931, 930, 924, 921, 917, 914,
2005 
2006  912, 909, 904, 903, 901, 900, 895, 894, 890, 886,
2007  883, 880, 879, 876, 875, 874, 870, 867, 866, 865,
2008  859, 853, 851, 850, 846, 841, 837, 831, 828, 827,
2009  823, 820, 817, 816, 812, 808, 807, 805, 799, 796,
2010  794, 784, 771, 769, 763, 758, 756, 750, 748, 747,
2011  742, 741, 738, 737, 731, 727, 722, 720, 717, 715,
2012  714, 713, 711, 707, 703, 698, 694, 692, 689, 687,
2013  684, 682, 670, 669, 662, 656, 648, 647, 642, 641,
2014  638, 614, 612, 609, 607, 605, 604, 600, 599, 598,
2015  594, 573, 568, 564, 563, 561, 555, 549, 547, 546,
2016 
2017  543, 540, 538, 535, 532, 530, 521, 520, 513, 509,
2018  498, 493, 492, 487, 486, 482, 480, 464, 459, 454,
2019  453, 451, 446, 442, 435, 431, 411, 407, 402, 401,
2020  400, 397, 388, 384, 382, 375, 371, 360, 359, 358,
2021  357, 356, 352, 349, 338, 330, 328, 324, 322, 310,
2022  308, 303, 299, 298, 296, 290, 287, 281, 278, 274,
2023  270, 269, 266, 261, 257, 254, 252, 251, 247, 246,
2024  244, 233, 228, 221, 219, 214, 206, 194, 182, 180,
2025  178, 166, 157, 143, 132, 130, 127, 96, 83, 80,
2026  46, 36, 12, 9, 2078, 2078, 2078, 2078, 2078, 2078,
2027 
2028  2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078,
2029  2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078,
2030  2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078,
2031  2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078,
2032  2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078, 2078,
2033  2078, 2078, 2078, 2078
2034  } ;
2035 
2038 
2039 extern int yy_flex_debug;
2041 
2042 /* The intent behind this definition is that it'll catch
2043  * any uses of REJECT which flex missed.
2044  */
2045 #define REJECT reject_used_but_not_detected
2046 #define yymore() yymore_used_but_not_detected
2047 #define YY_MORE_ADJ 0
2048 #define YY_RESTORE_YY_MORE_OFFSET
2049 char *yytext;
2050 #line 1 "loader.l"
2051 #line 2 "loader.l"
2052 /*
2053  * Crossfire -- cooperative multi-player graphical RPG and adventure game
2054  *
2055  * Copyright (c) 1999-2014 Mark Wedel and the Crossfire Development Team
2056  * Copyright (c) 1992 Frank Tore Johansen
2057  *
2058  * Crossfire is free software and comes with ABSOLUTELY NO WARRANTY. You are
2059  * welcome to redistribute it under certain conditions. For details, please
2060  * see COPYING and LICENSE.
2061  *
2062  * The authors can be reached via e-mail at <crossfire@metalforge.org>.
2063  */
2064 
2065 #include "global.h"
2066 
2067 #include <ctype.h>
2068 
2069 #include "loader.h"
2070 #include "newserver.h"
2071 #include "sproto.h"
2072 #include "stringbuffer.h"
2073 
2074 #define YY_DECL int lex_load(int *depth, object **items, int maxdepth, int map_flags, int linemode, int *ismore)
2075 
2076 static char *yval(void);
2077 
2078 static int lex_error;
2079 static char msgbuf[HUGE_BUF];
2080 size_t msglen = 0, total_msglen = 0;
2081 static char lorebuf[HUGE_BUF];
2082 
2084 #define SET_OR_CLEAR_FLAG(op, flag, val) \
2085  { if (val) SET_FLAG(op, flag); else CLEAR_FLAG(op, flag); }
2086 
2087 #define SET_RESIST(op, type, val) op->resist[type] = val;
2088 
2089 
2091 #define IVAL atoi(yval())
2092 
2093 #define FVAL atof(yval())
2094 extern int arch_init;
2095 extern int artifact_init;
2096 
2102 static bool seen_object = false;
2103 
2110 static void reverse_ob_inv(object *op) {
2111  object *prev = NULL;
2112  object *curr = op->inv;
2113  object *next;
2114  while (curr != NULL) {
2115  next = curr->below;
2116  curr->below = prev;
2117  curr->above = next;
2118  prev = curr;
2119  curr = next;
2120  }
2121  op->inv = prev;
2122 }
2123 
2128 static void reverse_ob_key_values(object *op) {
2129  key_value *prev = NULL;
2130  key_value *curr = op->key_values;
2131  key_value *next;
2132  while (curr != NULL) {
2133  next = curr->next;
2134  curr->next = prev;
2135  prev = curr;
2136  curr = next;
2137  }
2138  op->key_values = prev;
2139 }
2140 
2149 static void set_body_info(object *op, char *params) {
2150  int i;
2151  char *cp;
2152 
2153  /* go to first space character */
2154  for (cp = params; !isspace(*cp); cp++)
2155  ;
2156 
2157  *cp++ = 0; /* null it out */
2158 
2159  for (i = 0; i < NUM_BODY_LOCATIONS; i++) {
2160  if (!strcmp(params, body_locations[i].save_name)) {
2161  op->body_info[i] = atoi(cp);
2162  return; /* Only one line passed in params */
2163  }
2164  }
2165  LOG(llevError, "set_body_info called with bogus params: %s\n", params);
2166 }
2167 
2177 static void check_loaded_object(object *op) {
2178  if (artifact_init)
2179  /* Artifacts are special beasts, let's not check them. */
2180  return;
2181 
2182  if (!is_type_valid(op->type)) {
2183  LOG(llevError, "Invalid type %d for %s\n", op->type, op->arch ? op->arch->name : op->name);
2184  op->type = 0;
2185  }
2186 
2187  /* We do some specialized handling to handle legacy cases of name_pl.
2188  * If the object doesn't have a name_pl, we just use the object name -
2189  * this isn't perfect (things won't be properly pluralized), but works to
2190  * that degree (5 heart is still quite understandable). But the case we
2191  * also have to catch is if this object is not using the normal name for
2192  * the object. In that case, we also want to use the loaded name.
2193  * Otherwise, what happens is that the the plural name will lose
2194  * information (appear as just 'hearts' and not 'goblins heart')
2195  */
2196  if (op->arch && op->name != op->arch->clone.name && op->name_pl == op->arch->clone.name_pl) {
2197  if (op->name_pl) {
2198  free_string(op->name_pl);
2199  op->name_pl = NULL;
2200  }
2201  }
2202  if (!op->name_pl && op->name)
2203  op->name_pl = add_string(op->name);
2204 
2205  /* objects now have a materialname. try to patch it in */
2206  if (!(IS_WEAPON(op) && op->level > 0)) {
2208  }
2209  /* only do these when program is first run - a bit
2210  * excessive to do this at every run - most of this is
2211  * really just to catch any errors - program will still run, but
2212  * not in the ideal fashion.
2213  */
2214  if ((op->type == WEAPON || op->type == BOW) && arch_init) {
2215  if (!op->skill) {
2216  LOG(llevError, "Weapon %s lacks a skill.\n", op->name);
2217  } else if ((!strcmp(op->skill, "one handed weapons") && op->body_info[1] != -1) ||
2218  (!strcmp(op->skill, "two handed weapons") && op->body_info[1] != -2)) {
2219  LOG(llevError, "weapon %s arm usage does not match skill: %d, %s\n", op->name, op->body_info[1], op->skill);
2220  }
2221  }
2222 
2223  /* spellbooks & runes use slaying. But not to arch name, but to spell name */
2224  if ((op->type == SPELLBOOK || op->type == RUNE) && op->slaying && !op->inv && !arch_init) {
2225  object *tmp;
2226 
2229  op->randomitems = NULL; /* So another spell isn't created for this object */
2230  /* without this, value is all screwed up */
2231  op->value = op->arch->clone.value*op->inv->value;
2232  }
2233 
2234  if (QUERY_FLAG(op, FLAG_MONSTER)) {
2235  if (op->stats.hp > op->stats.maxhp)
2236  LOG(llevDebug, "Monster %s has hp set higher than maxhp (%d>%d)\n", op->name, op->stats.hp, op->stats.maxhp);
2237  }
2239  || op->type == CREATOR
2240  || op->type == CONVERTER) {
2241  /* Object will duplicate its content as part of the
2242  * generation process. To do this, we must flag inventory
2243  * so it remains unevaluated concerning the randomitems and
2244  * the living (a demonlord shouldn't cast from inside generator!)
2245  */
2247  }
2248 
2249  /* if the item is identified, ensure we got the correct face */
2252 
2253  /* Here we'll handle custom monsters. In order to handle them correctly, especially in the fix_object
2254  * method, we'll create a new temporary archetype containing defined values.
2255  * Of course this doesn't apply when loading archetypes or artifacts.
2256  */
2257  if (arch_init == 0
2259  && op->arch
2260  && !object_can_merge(op, &op->arch->clone)) {
2262  temp->reference_count++;
2263  temp->name = add_string(op->arch->name);
2264  temp->tail_x = op->arch->tail_x;
2265  temp->tail_y = op->arch->tail_y;
2266  object_copy(op, &temp->clone);
2267  temp->clone.inv = NULL;
2268  temp->clone.env = NULL;
2269  temp->clone.x = 0;
2270  temp->clone.y = 0;
2271  temp->clone.map = NULL;
2272  if (FABS(temp->clone.speed) > MIN_ACTIVE_SPEED) {
2273  /* Clone has a speed, so need to clear that because it isn't on a map.
2274  * But we need to keep the value, because otherwise the customized object
2275  * will have no speed (fix_player() will use the 0 value). So set it
2276  * to zero, call object_update_speed() to remove it from active list, then
2277  * set its speed back to the original.
2278  */
2279  temp->clone.speed = 0;
2280  object_update_speed(&temp->clone);
2281  temp->clone.speed = op->speed;
2282  }
2283 
2284  temp->more = op->arch->more;
2285  op->arch = temp;
2286  /* LOG(llevDebug, "created temporary archetype for %s at %d,%d\n", op->name, op->x, op->y); */
2287  }
2288 }
2289 
2300 static void add_key_value(object *op) {
2301  char *key = NULL;
2302  char *value = NULL;
2303  char *cp;
2304  char *end;
2305 
2306  /* First, skip over leading whitespace. */
2307  for (cp = yytext; isspace(*cp); cp++) {
2308  ;
2309  }
2310 
2311  key = cp;
2312 
2313  /* Now look for the end of the key/field name. */
2314  for (; !isspace(*cp); cp++) {
2315  if (*cp == '\0') {
2316  /* Oops, ran out of string! Set the key with an empty value. */
2317  object_set_value(op, key, NULL, TRUE);
2318  return;
2319  }
2320  }
2321 
2322  if (*cp == '\0') {
2323  object_set_value(op, key, NULL, TRUE);
2324  return;
2325  }
2326 
2327  /* Chop off the key, and start at the next character. */
2328  *cp = '\0';
2329  cp++;
2330  if (*cp == '\0') {
2331  /* Was followed by one space? */
2332  object_set_value(op, key, NULL, TRUE);
2333  return;
2334  }
2335 
2336  /* Now looking for the value. Skip over whitespace. */
2337  for (; isspace(*cp); cp++) {
2338  if (*cp == '\0') {
2339  /* Guess not. */
2340  object_set_value(op, key, NULL, TRUE);
2341  return;
2342  }
2343  }
2344 
2345  value = cp;
2346 
2347  /* Got last character before null and strip
2348  * off tailing whitespace
2349  */
2350  for (end = value+(strlen(cp)-1); isspace(*end); end--) {
2351  if (end == value) {
2352  /* *blink blink* Still no value? */
2353  object_set_value(op, key, NULL, TRUE);
2354  return;
2355  }
2356  *end = '\0';
2357  }
2359 }
2360 
2371 static void set_move(MoveType *mt, char *params, const char *prefix) {
2372  char *str;
2373  int i, negate;
2374 
2375  if (isdigit(*params)) {
2376  *mt = atoi(params);
2377  } else {
2378  *mt = 0;
2379  for (str = strtok(params, " "); str; str = strtok(NULL, " ")) {
2380  negate = 0;
2381  if (!strcasecmp(str, "all"))
2382  *mt |= MOVE_ALL;
2383  else {
2384  if (*str == '-') {
2385  negate = 1;
2386  str++;
2387  }
2388  for (i = 0; move_name[i] != NULL; i++) {
2389  if (!strcasecmp(move_name[i], str)) {
2390  if (negate) {
2391  *mt &= ~(1<<i);
2392  } else {
2393  *mt |= (1<<i);
2394  }
2395  break;
2396  }
2397  }
2398  if (move_name[i] == NULL) {
2399  /* fly is a special case - covers both fly_low and
2400  * fly_high - since it doesn't match to a specific
2401  * single bit, have to special case it.
2402  */
2403  if (!strcasecmp(str, "flying")) {
2404  if (negate) {
2405  *mt &= ~MOVE_FLYING;
2406  } else {
2407  *mt |= MOVE_FLYING;
2408  }
2409  } else {
2410  LOG(llevDebug, "common/loader.l: set_move(%s) - unknown move string '%s'\n", prefix, str);
2411  }
2412  }
2413  } /* Else not all move types */
2414  } /* for strtok */
2415  } /* Else not a numeric value */
2416 }
2417 
2418 #line 2419 "loader.c"
2419 
2420 /* Don't have to link with -lfl with this */
2421 /* need yy_push_state, yy_pop_state */
2422 /* those functions are unused, not sure of compatibility with Flex versions. */
2423 #define YY_NO_INPUT 1
2424 #line 2425 "loader.c"
2425 
2426 #define INITIAL 0
2427 #define MESSAGE 1
2428 #define LORE 2
2429 #define SCRIPT 3
2430 
2431 #ifndef YY_NO_UNISTD_H
2432 /* Special case for "unistd.h", since it is non-ANSI. We include it way
2433  * down here because we want the user's section 1 to have been scanned first.
2434  * The user has a chance to override it with an option.
2435  */
2436 #include <unistd.h>
2437 #endif
2438 
2439 #ifndef YY_EXTRA_TYPE
2440 #define YY_EXTRA_TYPE void *
2441 #endif
2442 
2443 static int yy_init_globals ( void );
2444 
2445 /* Accessor methods to globals.
2446  These are made visible to non-reentrant scanners for convenience. */
2447 
2448 int yylex_destroy ( void );
2449 
2450 int yyget_debug ( void );
2451 
2452 void yyset_debug ( int debug_flag );
2453 
2454 YY_EXTRA_TYPE yyget_extra ( void );
2455 
2456 void yyset_extra ( YY_EXTRA_TYPE user_defined );
2457 
2458 FILE *yyget_in ( void );
2459 
2460 void yyset_in ( FILE * _in_str );
2461 
2462 FILE *yyget_out ( void );
2463 
2464 void yyset_out ( FILE * _out_str );
2465 
2466  int yyget_leng ( void );
2467 
2468 char *yyget_text ( void );
2469 
2470 int yyget_lineno ( void );
2471 
2472 void yyset_lineno ( int _line_number );
2473 
2474 /* Macros after this point can all be overridden by user definitions in
2475  * section 1.
2476  */
2477 
2478 #ifndef YY_SKIP_YYWRAP
2479 #ifdef __cplusplus
2480 extern "C" int yywrap ( void );
2481 #else
2482 extern int yywrap ( void );
2483 #endif
2484 #endif
2485 
2486 #ifndef YY_NO_UNPUT
2487 
2488 #endif
2489 
2490 #ifndef yytext_ptr
2491 static void yy_flex_strncpy ( char *, const char *, int );
2492 #endif
2493 
2494 #ifdef YY_NEED_STRLEN
2495 static int yy_flex_strlen ( const char * );
2496 #endif
2497 
2498 #ifndef YY_NO_INPUT
2499 #ifdef __cplusplus
2500 static int yyinput ( void );
2501 #else
2502 static int input ( void );
2503 #endif
2504 
2505 #endif
2506 
2507  static int yy_start_stack_ptr = 0;
2508  static int yy_start_stack_depth = 0;
2509  static int *yy_start_stack = NULL;
2510 
2511  static void yy_push_state ( int _new_state );
2512 
2513  static void yy_pop_state ( void );
2514 
2515 /* Amount of stuff to slurp up with each read. */
2516 #ifndef YY_READ_BUF_SIZE
2517 #ifdef __ia64__
2518 /* On IA-64, the buffer size is 16k, not 8k */
2519 #define YY_READ_BUF_SIZE 16384
2520 #else
2521 #define YY_READ_BUF_SIZE 8192
2522 #endif /* __ia64__ */
2523 #endif
2524 
2525 /* Copy whatever the last rule matched to the standard output. */
2526 #ifndef ECHO
2527 /* This used to be an fputs(), but since the string might contain NUL's,
2528  * we now use fwrite().
2529  */
2530 #define ECHO do { if (fwrite( yytext, (size_t) yyleng, 1, yyout )) {} } while (0)
2531 #endif
2532 
2533 /* Gets input and stuffs it into "buf". number of characters read, or YY_NULL,
2534  * is returned in "result".
2535  */
2536 #ifndef YY_INPUT
2537 #define YY_INPUT(buf,result,max_size) \
2538  if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \
2539  { \
2540  int c = '*'; \
2541  int n; \
2542  for ( n = 0; n < max_size && \
2543  (c = getc( yyin )) != EOF && c != '\n'; ++n ) \
2544  buf[n] = (char) c; \
2545  if ( c == '\n' ) \
2546  buf[n++] = (char) c; \
2547  if ( c == EOF && ferror( yyin ) ) \
2548  YY_FATAL_ERROR( "input in flex scanner failed" ); \
2549  result = n; \
2550  } \
2551  else \
2552  { \
2553  errno=0; \
2554  while ( (result = (int) fread(buf, 1, (yy_size_t) max_size, yyin)) == 0 && ferror(yyin)) \
2555  { \
2556  if( errno != EINTR) \
2557  { \
2558  YY_FATAL_ERROR( "input in flex scanner failed" ); \
2559  break; \
2560  } \
2561  errno=0; \
2562  clearerr(yyin); \
2563  } \
2564  }\
2565 \
2566 
2567 #endif
2568 
2569 /* No semi-colon after return; correct usage is to write "yyterminate();" -
2570  * we don't want an extra ';' after the "return" because that will cause
2571  * some compilers to complain about unreachable statements.
2572  */
2573 #ifndef yyterminate
2574 #define yyterminate() return YY_NULL
2575 #endif
2576 
2577 /* Number of entries by which start-condition stack grows. */
2578 #ifndef YY_START_STACK_INCR
2579 #define YY_START_STACK_INCR 25
2580 #endif
2581 
2582 /* Report a fatal error. */
2583 #ifndef YY_FATAL_ERROR
2584 #define YY_FATAL_ERROR(msg) yy_fatal_error( msg )
2585 #endif
2586 
2587 /* end tables serialization structures and prototypes */
2588 
2589 /* Default declaration of generated scanner - a define so the user can
2590  * easily add parameters.
2591  */
2592 #ifndef YY_DECL
2593 #define YY_DECL_IS_OURS 1
2594 
2595 extern int yylex (void);
2596 
2597 #define YY_DECL int yylex (void)
2598 #endif /* !YY_DECL */
2599 
2600 /* Code executed at the beginning of each rule, after yytext and yyleng
2601  * have been set up.
2602  */
2603 #ifndef YY_USER_ACTION
2604 #define YY_USER_ACTION
2605 #endif
2606 
2607 /* Code executed at the end of each rule. */
2608 #ifndef YY_BREAK
2609 #define YY_BREAK /*LINTED*/break;
2610 #endif
2611 
2612 #define YY_RULE_SETUP \
2613  if ( yyleng > 0 ) \
2614  YY_CURRENT_BUFFER_LVALUE->yy_at_bol = \
2615  (yytext[yyleng - 1] == '\n'); \
2616  YY_USER_ACTION
2617 
2620 YY_DECL
2622  yy_state_type yy_current_state;
2623  char *yy_cp, *yy_bp;
2624  int yy_act;
2625 
2626  if ( !(yy_init) )
2627  {
2628  (yy_init) = 1;
2629 
2630 #ifdef YY_USER_INIT
2631  YY_USER_INIT;
2632 #endif
2633 
2634  if ( ! (yy_start) )
2635  (yy_start) = 1; /* first start state */
2636 
2637  if ( ! yyin )
2638  yyin = stdin;
2639 
2640  if ( ! yyout )
2641  yyout = stdout;
2642 
2643  if ( ! YY_CURRENT_BUFFER ) {
2647  }
2648 
2650  }
2651 
2652  {
2653 #line 389 "loader.l"
2654 
2655 
2656 
2657 #line 393 "loader.l"
2658 /* Declare some local variables */
2659  object *op = items[*depth];
2660  lex_error = 0;
2661 
2662 
2663 
2664 #line 2665 "loader.c"
2665 
2666  while ( /*CONSTCOND*/1 ) /* loops until end-of-file is reached */
2667  {
2668  yy_cp = (yy_c_buf_p);
2669 
2670  /* Support of yytext. */
2671  *yy_cp = (yy_hold_char);
2672 
2673  /* yy_bp points to the position in yy_ch_buf of the start of
2674  * the current run.
2675  */
2676  yy_bp = yy_cp;
2677 
2678  yy_current_state = (yy_start);
2679  yy_current_state += YY_AT_BOL();
2680 yy_match:
2681  do
2682  {
2683  YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)] ;
2684  if ( yy_accept[yy_current_state] )
2685  {
2686  (yy_last_accepting_state) = yy_current_state;
2688  }
2689  while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
2690  {
2691  yy_current_state = (int) yy_def[yy_current_state];
2692  if ( yy_current_state >= 2079 )
2693  yy_c = yy_meta[yy_c];
2694  }
2695  yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
2696  ++yy_cp;
2697  }
2698  while ( yy_current_state != 2078 );
2700  yy_current_state = (yy_last_accepting_state);
2701 
2702 yy_find_action:
2703  yy_act = yy_accept[yy_current_state];
2704 
2706 
2707 do_action: /* This label is used only to access EOF actions. */
2708 
2709  switch ( yy_act )
2710  { /* beginning of action switch */
2711  case 0: /* must back up */
2712  /* undo the effects of YY_DO_BEFORE_ACTION */
2713  *yy_cp = (yy_hold_char);
2715  yy_current_state = (yy_last_accepting_state);
2716  goto yy_find_action;
2717 
2718 case 1:
2719 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
2720 (yy_c_buf_p) = yy_cp -= 1;
2721 YY_DO_BEFORE_ACTION; /* set up yytext again */
2723 #line 399 "loader.l"
2724 { BEGIN(MESSAGE); msgbuf[0] = '\0'; msglen = 0; total_msglen = 0;}
2725  YY_BREAK
2726 case 2:
2727 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
2728 (yy_c_buf_p) = yy_cp -= 1;
2729 YY_DO_BEFORE_ACTION; /* set up yytext again */
2731 #line 400 "loader.l"
2732 { BEGIN(INITIAL);
2734  /* Just print a warning so we can be reasonably safe
2735  * about not overflowing the buffer.
2736  */
2737  if (total_msglen > (HUGE_BUF / 2))
2738  LOG(llevDebug,
2739  "warning: msg in '%s' on %s is very long (%lu "
2740  "characters)\n",
2741  op->name,
2742  op->map != NULL ? op->map->path : "no map",
2743  (unsigned long)total_msglen);
2744  }
2745  YY_BREAK
2746 case 3:
2748 #line 413 "loader.l"
2750  safe_strcat(msgbuf, "\n", &msglen, HUGE_BUF);
2751  total_msglen += strlen(yytext)+1;
2752  }
2753  YY_BREAK
2754 case 4:
2755 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
2756 (yy_c_buf_p) = yy_cp -= 1;
2757 YY_DO_BEFORE_ACTION; /* set up yytext again */
2759 #line 418 "loader.l"
2760 { BEGIN(LORE); lorebuf[0] = '\0'; }
2761  YY_BREAK
2762 case 5:
2763 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
2764 (yy_c_buf_p) = yy_cp -= 1;
2765 YY_DO_BEFORE_ACTION; /* set up yytext again */
2767 #line 419 "loader.l"
2768 { BEGIN(INITIAL);
2769  op->lore = add_string(lorebuf);
2770  /* Just print a warning so we can be reasonably safe
2771  * about not overflowing the buffer.
2772  */
2773  if (strlen(op->lore) > (HUGE_BUF/2))
2774  LOG(llevDebug, "\n\tWarning lore length > %d (max allowed=%d): %lu\n>%.80s<\n",
2775  HUGE_BUF/2, HUGE_BUF, (unsigned long)strlen(op->lore), op->lore);
2776  }
2777  YY_BREAK
2778 case 6:
2780 #line 428 "loader.l"
2781 { strcat(lorebuf, yytext); strcat(lorebuf, "\n"); }
2782  YY_BREAK
2783 case 7:
2785 #line 430 "loader.l"
2786 {
2787  char *yv = yval();
2788 
2789  if (*yv == '\0') {
2790  LOG(llevError, "Object lacks name.\n");
2791  return LL_IGNORED;
2792  }
2793  if (seen_object) {
2794  LOG(llevError, "An object started before the 'end' of object %s.\n", (op->arch && op->arch->name) ? op->arch->name : "(no name)");
2795  }
2796  if (op->arch != NULL)
2797  op->arch->name = add_string(yv);
2798  op->name = add_string(yv);
2799  seen_object = true;
2800  }
2801  YY_BREAK
2802 case 8:
2804 #line 446 "loader.l"
2805 {
2806  char *yv = yval();
2807 
2808  if (*yv == '\0')
2809  LOG(llevError, "Name without val\n");
2810  else
2811  FREE_AND_COPY(op->name, yv);
2812  }
2813  YY_BREAK
2814 case 9:
2816 #line 454 "loader.l"
2817 {
2818  char *yv = yval();
2819 
2820  if (*yv == '\0')
2821  LOG(llevError, "Name without val\n");
2822  else
2823  FREE_AND_COPY(op->name_pl, yv);
2824  }
2825  YY_BREAK
2826 case 10:
2828 #line 462 "loader.l"
2829 {
2830  char *yv = yval();
2831 
2832  if (*yv == '\0')
2833  LOG(llevError, "Anim suffix without val\n");
2834  else
2835  FREE_AND_COPY(op->anim_suffix, yv);
2836  }
2837  YY_BREAK
2838 case 11:
2840 #line 470 "loader.l"
2841 FREE_AND_COPY(op->skill, yval());
2842  YY_BREAK
2843 case 12:
2845 #line 471 "loader.l"
2846 {
2847  char *yv = yval();
2848 
2849  if (*yv == '\0')
2850  LOG(llevError, "Custom name without val\n");
2851  else
2852  FREE_AND_COPY(op->custom_name, yv);
2853  }
2854  YY_BREAK
2855 case 13:
2857 #line 479 "loader.l"
2858 FREE_AND_COPY(op->race, yval());
2859  YY_BREAK
2860 case 14:
2862 #line 480 "loader.l"
2863 FREE_AND_COPY(op->slaying, yval());
2864  YY_BREAK
2865 case 15:
2867 #line 481 "loader.l"
2868 {
2869  if (op->arch) {
2870  /*
2871  Here an object must be inserted into another object,
2872  during archetypes, artifact or map loading.
2873 
2874  The logic is as follow:
2875  - in linemode, we are loading artifacts, so just
2876  increase depth, next calls will work on object
2877  in inventory, and insertion in previous object done
2878  in the "end" part
2879  - when not in linemode, two cases:
2880  - arch_init is not set, then we are loading a map
2881  - arch_init is set, we are loading archetypes,
2882  discard the object, it'll be handled in a second pass
2883  */
2884  object *tmp;
2885  char *yv = yval();
2886 
2887  tmp = object_new();
2888  tmp->arch = find_archetype(yv);
2889  object_copy(&tmp->arch->clone, tmp);
2890  strcpy(msgbuf, "");
2891  strcpy(lorebuf, "");
2892  msglen = 0;
2893  total_msglen = 0;
2894  (*depth)++;
2895  items[*depth] = tmp;
2896  if (linemode == 0) {
2897  lex_load(depth, items, maxdepth, map_flags, linemode, ismore);
2898  (*depth)--;
2900  }
2901  } else {
2902  /* Here we are loading an object in a map, on a spot, not
2903  * in another object's inventory */
2904  char *yv = yval();
2905 
2906  op->arch = find_archetype(yv);
2907  object_copy(&op->arch->clone, op);
2908  }
2909  }
2910  YY_BREAK
2911 case 16:
2913 #line 523 "loader.l"
2914 {
2915  const char *yv = yval();
2916  const artifact *art = find_artifact(op, yv);
2917  if (art == NULL) {
2918  LOG(llevError, "can't find artifact %s [%d]\n for loading", yv, op->type);
2919  } else {
2921  }
2922  }
2923  YY_BREAK
2924 case 17:
2926 #line 533 "loader.l"
2927 op->other_arch = find_archetype(yval());
2928  YY_BREAK
2929 case 18:
2931 #line 534 "loader.l"
2932 {
2933  if (strcmp (yval(), "NONE") == 0) {
2934  op->animation = NULL;
2936  } else {
2937  op->animation = find_animation (yval());
2939  }
2940  }
2941  YY_BREAK
2942 case 19:
2943 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
2944 (yy_c_buf_p) = yy_cp -= 1;
2945 YY_DO_BEFORE_ACTION; /* set up yytext again */
2947 #line 544 "loader.l"
2948 { /* We need to record that this is a multipart object,
2949  * so the calling function can glue things back together
2950  */
2951  if ((*depth) > 0) {
2952  LOG(llevError, "Got 'more' in depth %d (object %s)\n", *depth, items[*depth]->name);
2953  }
2954  (*ismore) = 1;
2955  }
2956  YY_BREAK
2957 case 20:
2958 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
2959 (yy_c_buf_p) = yy_cp -= 1;
2960 YY_DO_BEFORE_ACTION; /* set up yytext again */
2962 #line 553 "loader.l"
2963 {
2964  seen_object = false;
2966  reverse_ob_inv(op);
2968  if (linemode) {
2969  /* Linemode is only set for artifact loading. */
2970  if ((*depth) > 0) {
2971  /* Object we finished is in another object's inventory */
2972  object_insert_in_ob(items[*depth], items[(*depth)-1]);
2973  }
2974  return LL_NORMAL;
2975  }
2976  if (*ismore)
2977  return LL_MORE;
2978  else
2979  return LL_NORMAL;
2980  }
2981  YY_BREAK
2982 case 21:
2984 #line 571 "loader.l"
2985 op->last_heal = IVAL;
2986  YY_BREAK
2987 case 22:
2989 #line 572 "loader.l"
2990 op->last_sp = IVAL;
2991  YY_BREAK
2992 case 23:
2994 #line 573 "loader.l"
2995 op->last_grace = IVAL;
2996  YY_BREAK
2997 case 24:
2999 #line 574 "loader.l"
3000 op->last_eat = IVAL;
3001  YY_BREAK
3002 case 25:
3004 #line 575 "loader.l"
3005 {
3006  op->speed = FVAL;
3007  if (!(map_flags&MAP_STYLE)) {
3008  if (op->speed < 0) {
3009  op->speed_left = op->speed_left-RANDOM()%100/100.0;
3010  op->speed = -op->speed; // Make this always positive
3011  }
3013  }
3014  }
3015  YY_BREAK
3016 case 26:
3018 #line 585 "loader.l"
3019 op->speed_left = FVAL;
3020  YY_BREAK
3021 case 27:
3023 #line 587 "loader.l"
3024 op->weapon_speed_left = FVAL;
3025  YY_BREAK
3026 case 28:
3028 #line 588 "loader.l"
3029 op->weapon_speed = FVAL;
3030  YY_BREAK
3031 case 29:
3033 #line 590 "loader.l"
3034 {
3035  op->move_slow |= MOVE_WALK;
3036  op->move_slow_penalty = FVAL;
3037  }
3038  YY_BREAK
3039 case 30:
3041 #line 594 "loader.l"
3042 {
3043  char *y = yval();
3044 
3045  if (*y == '\0')
3046  LOG(llevError, "Title without value.\n");
3047  else
3048  FREE_AND_COPY(op->title, y);
3049  }
3050  YY_BREAK
3051 case 31:
3053 #line 603 "loader.l"
3054 {
3055  op->face = find_face(yval());
3056  }
3057  YY_BREAK
3058 case 32:
3060 #line 606 "loader.l"
3061 op->stats.Str = IVAL;
3062  YY_BREAK
3063 case 33:
3065 #line 607 "loader.l"
3066 op->stats.Dex = IVAL;
3067  YY_BREAK
3068 case 34:
3070 #line 608 "loader.l"
3071 op->stats.Con = IVAL;
3072  YY_BREAK
3073 case 35:
3075 #line 609 "loader.l"
3076 op->stats.Wis = IVAL;
3077  YY_BREAK
3078 case 36:
3080 #line 610 "loader.l"
3081 op->stats.Cha = IVAL;
3082  YY_BREAK
3083 case 37:
3085 #line 611 "loader.l"
3086 op->stats.Int = IVAL;
3087  YY_BREAK
3088 case 38:
3090 #line 612 "loader.l"
3091 op->stats.Pow = IVAL;
3092  YY_BREAK
3093 case 39:
3095 #line 613 "loader.l"
3096 op->stats.hp = IVAL;
3097  YY_BREAK
3098 case 40:
3100 #line 614 "loader.l"
3101 op->stats.maxhp = IVAL;
3102  YY_BREAK
3103 case 41:
3105 #line 615 "loader.l"
3106 op->stats.sp = IVAL;
3107  YY_BREAK
3108 case 42:
3110 #line 616 "loader.l"
3111 op->stats.maxsp = IVAL;
3112  YY_BREAK
3113 case 43:
3115 #line 617 "loader.l"
3116 op->stats.grace = IVAL;
3117  YY_BREAK
3118 case 44:
3120 #line 618 "loader.l"
3121 op->stats.maxgrace = IVAL;
3122  YY_BREAK
3123 case 45:
3125 #line 619 "loader.l"
3126 op->stats.exp = atoll(yval());
3127  YY_BREAK
3128 case 46:
3130 #line 620 "loader.l"
3131 op->total_exp = atoll(yval());
3132  YY_BREAK
3133 case 47:
3135 #line 621 "loader.l"
3136 op->total_exp = (atoll(yval()) * 100 / settings.permanent_exp_ratio);
3137  YY_BREAK
3138 case 48:
3140 #line 622 "loader.l"
3141 op->stats.food = IVAL;
3142  YY_BREAK
3143 case 49:
3145 #line 623 "loader.l"
3146 op->stats.dam = IVAL;
3147  YY_BREAK
3148 case 50:
3150 #line 624 "loader.l"
3151 op->stats.wc = IVAL;
3152  YY_BREAK
3153 case 51:
3155 #line 625 "loader.l"
3156 op->stats.ac = IVAL;
3157  YY_BREAK
3158 case 52:
3160 #line 626 "loader.l"
3161 { op->x = IVAL; op->ox= op->x; }
3162  YY_BREAK
3163 case 53:
3165 #line 627 "loader.l"
3166 { op->y = IVAL; op->oy= op->y; }
3167  YY_BREAK
3168 case 54:
3170 #line 628 "loader.l"
3171 op->nrof= atol(yval());
3172  YY_BREAK
3173 case 55:
3175 #line 629 "loader.l"
3176 op->level = IVAL;
3177  YY_BREAK
3178 case 56:
3180 #line 630 "loader.l"
3181 op->direction = IVAL;
3182  YY_BREAK
3183 case 57:
3185 #line 631 "loader.l"
3186 op->type = IVAL;
3187  YY_BREAK
3188 case 58:
3190 #line 632 "loader.l"
3191 op->subtype = IVAL;
3192  YY_BREAK
3193 case 59:
3195 #line 633 "loader.l"
3196 op->material = IVAL;
3197  YY_BREAK
3198 case 60:
3200 #line 634 "loader.l"
3201 {
3202  char *yv = yval();
3203 
3204  if (*yv == '\0')
3205  LOG(llevError, "Materialname without val\n");
3206  else
3207  FREE_AND_COPY(op->materialname, yv);
3208  }
3209  YY_BREAK
3210 case 61:
3212 #line 643 "loader.l"
3213 op->value = IVAL;
3214  YY_BREAK
3215 case 62:
3217 #line 644 "loader.l"
3218 {
3219  op->weight = atol(yval());
3220  if (op->weight == 0) {
3222  }
3223  }
3224  YY_BREAK
3225 case 63:
3227 #line 650 "loader.l"
3228 op->carrying = atol(yval());
3229  YY_BREAK
3230 case 64:
3232 #line 651 "loader.l"
3233 op->attacktype = IVAL;
3234  YY_BREAK
3235 case 65:
3237 #line 652 "loader.l"
3238 op->path_attuned = IVAL;
3239  YY_BREAK
3240 case 66:
3242 #line 653 "loader.l"
3243 op->path_repelled = IVAL;
3244  YY_BREAK
3245 case 67:
3247 #line 654 "loader.l"
3248 op->path_denied = IVAL;
3249  YY_BREAK
3250 case 68:
3252 #line 655 "loader.l"
3253 op->invisible = IVAL;
3254  YY_BREAK
3255 case 69:
3257 #line 656 "loader.l"
3258 op->magic = IVAL;
3259  YY_BREAK
3260 case 70:
3262 #line 657 "loader.l"
3263 op->state = IVAL;
3264  YY_BREAK
3265 case 71:
3267 #line 658 "loader.l"
3269  YY_BREAK
3270 case 72:
3272 #line 659 "loader.l"
3274  YY_BREAK
3275 case 73:
3277 #line 660 "loader.l"
3279  YY_BREAK
3280 case 74:
3282 #line 661 "loader.l"
3284  YY_BREAK
3285 case 75:
3287 #line 662 "loader.l"
3289  YY_BREAK
3290 case 76:
3292 #line 663 "loader.l"
3294  YY_BREAK
3295 case 77:
3297 #line 664 "loader.l"
3299  YY_BREAK
3300  /* These are the new values */
3301 
3302 case 78:
3304 #line 668 "loader.l"
3305 set_move(&op->move_block, yval(), "block");
3306  YY_BREAK
3307 case 79:
3309 #line 669 "loader.l"
3310 set_move(&op->move_allow, yval(), "allow");
3311  YY_BREAK
3312 case 80:
3314 #line 670 "loader.l"
3315 set_move(&op->move_type, yval(), "type");
3316  YY_BREAK
3317 case 81:
3319 #line 671 "loader.l"
3320 set_move(&op->move_on, yval(), "on");
3321  YY_BREAK
3322 case 82:
3324 #line 672 "loader.l"
3325 set_move(&op->move_off, yval(), "off");
3326  YY_BREAK
3327 case 83:
3329 #line 673 "loader.l"
3330 set_move(&op->move_slow, yval(), "slow");
3331  YY_BREAK
3332 case 84:
3334 #line 674 "loader.l"
3335 op->move_slow_penalty = FVAL;
3336  YY_BREAK
3337 case 85:
3339 #line 677 "loader.l"
3341  YY_BREAK
3342 case 86:
3344 #line 678 "loader.l"
3346  YY_BREAK
3347 case 87:
3349 #line 679 "loader.l"
3351  YY_BREAK
3352 case 88:
3354 #line 680 "loader.l"
3356  YY_BREAK
3357 case 89:
3359 #line 681 "loader.l"
3360 {
3361  if (IVAL) {
3363  if (op->type != PLAYER && !arch_init) {
3364  LOG(llevDebug, " Adding friendly object %s.\n", op->name);
3366  }
3367  }
3368  else
3370  }
3371  YY_BREAK
3372 case 90:
3374 #line 692 "loader.l"
3376  YY_BREAK
3377 case 91:
3379 #line 693 "loader.l"
3381  YY_BREAK
3382 case 92:
3384 #line 694 "loader.l"
3386  YY_BREAK
3387 case 93:
3389 #line 695 "loader.l"
3391  YY_BREAK
3392 case 94:
3394 #line 696 "loader.l"
3396  YY_BREAK
3397 case 95:
3399 #line 697 "loader.l"
3401  YY_BREAK
3402 case 96:
3404 #line 698 "loader.l"
3406  YY_BREAK
3407 case 97:
3409 #line 699 "loader.l"
3411  YY_BREAK
3412 case 98:
3414 #line 700 "loader.l"
3416  YY_BREAK
3417 case 99:
3419 #line 701 "loader.l"
3421  YY_BREAK
3422 case 100:
3424 #line 702 "loader.l"
3425 {
3426  if (IVAL) {
3428  }
3429  else
3431  }
3432  YY_BREAK
3433 case 101:
3435 #line 709 "loader.l"
3437  YY_BREAK
3438 case 102:
3440 #line 710 "loader.l"
3442  YY_BREAK
3443 case 103:
3445 #line 711 "loader.l"
3447  YY_BREAK
3448 case 104:
3450 #line 712 "loader.l"
3452  YY_BREAK
3453 case 105:
3455 #line 713 "loader.l"
3457  YY_BREAK
3458 case 106:
3460 #line 714 "loader.l"
3462  YY_BREAK
3463 case 107:
3465 #line 715 "loader.l"
3466 { /* This field is used by Gridarta, so it's not an error. */ }
3467  YY_BREAK
3468 case 108:
3470 #line 716 "loader.l"
3472  YY_BREAK
3473 case 109:
3475 #line 717 "loader.l"
3477  YY_BREAK
3478 case 110:
3480 #line 718 "loader.l"
3482  YY_BREAK
3483 case 111:
3485 #line 719 "loader.l"
3487  YY_BREAK
3488 case 112:
3490 #line 720 "loader.l"
3492  YY_BREAK
3493 case 113:
3495 #line 721 "loader.l"
3497  YY_BREAK
3498 case 114:
3500 #line 722 "loader.l"
3501 {
3502  if (IVAL) {
3503  SET_FLAG(op, FLAG_WIZ);
3507  } else {
3511  }
3512  }
3513  YY_BREAK
3514 case 115:
3516 #line 734 "loader.l"
3518  YY_BREAK
3519 case 116:
3521 #line 735 "loader.l"
3523  YY_BREAK
3524 case 117:
3526 #line 736 "loader.l"
3528  YY_BREAK
3529 case 118:
3531 #line 737 "loader.l"
3533  YY_BREAK
3534 case 119:
3536 #line 738 "loader.l"
3537 op->stats.luck = IVAL;
3538  YY_BREAK
3539 case 120:
3541 #line 739 "loader.l"
3542 op->run_away = IVAL;
3543  YY_BREAK
3544 case 121:
3546 #line 740 "loader.l"
3547 op->pick_up = IVAL;
3548  YY_BREAK
3549 case 122:
3551 #line 741 "loader.l"
3552 op->item_power = IVAL;
3553  YY_BREAK
3554 case 123:
3556 #line 742 "loader.l"
3557 op->gen_sp_armour = IVAL;
3558  YY_BREAK
3559 case 124:
3561 #line 743 "loader.l"
3562 op->anim_speed = IVAL;
3563  YY_BREAK
3564 case 125:
3566 #line 744 "loader.l"
3567 op->weight_limit = IVAL;
3568  YY_BREAK
3569 case 126:
3571 #line 745 "loader.l"
3573  YY_BREAK
3574 case 127:
3576 #line 746 "loader.l"
3577 op->will_apply = IVAL;
3578  YY_BREAK
3579 case 128:
3581 #line 747 "loader.l"
3583  YY_BREAK
3584 case 129:
3586 #line 748 "loader.l"
3588  YY_BREAK
3589 case 130:
3591 #line 749 "loader.l"
3593  YY_BREAK
3594 case 131:
3596 #line 750 "loader.l"
3598  YY_BREAK
3599 case 132:
3601 #line 751 "loader.l"
3603  YY_BREAK
3604 case 133:
3606 #line 752 "loader.l"
3608  YY_BREAK
3609 case 134:
3611 #line 753 "loader.l"
3613  YY_BREAK
3614 case 135:
3616 #line 754 "loader.l"
3618  YY_BREAK
3619 case 136:
3621 #line 755 "loader.l"
3623  YY_BREAK
3624 case 137:
3626 #line 756 "loader.l"
3628  YY_BREAK
3629 case 138:
3631 #line 757 "loader.l"
3633  YY_BREAK
3634 case 139:
3636 #line 758 "loader.l"
3638  YY_BREAK
3639 case 140:
3641 #line 759 "loader.l"
3643  YY_BREAK
3644 case 141:
3646 #line 760 "loader.l"
3648  YY_BREAK
3649 case 142:
3651 #line 761 "loader.l"
3653  YY_BREAK
3654 case 143:
3656 #line 762 "loader.l"
3658  YY_BREAK
3659 case 144:
3661 #line 763 "loader.l"
3663  YY_BREAK
3664 case 145:
3666 #line 765 "loader.l"
3668  YY_BREAK
3669 case 146:
3671 #line 766 "loader.l"
3673  YY_BREAK
3674 /* Start of various attacktypes */
3675 case 147:
3677 #line 769 "loader.l"
3679  YY_BREAK
3680 case 148:
3682 #line 770 "loader.l"
3684  YY_BREAK
3685 case 149:
3687 #line 771 "loader.l"
3689  YY_BREAK
3690 case 150:
3692 #line 772 "loader.l"
3694  YY_BREAK
3695 case 151:
3697 #line 773 "loader.l"
3699  YY_BREAK
3700 case 152:
3702 #line 774 "loader.l"
3704  YY_BREAK
3705 case 153:
3707 #line 775 "loader.l"
3709  YY_BREAK
3710 case 154:
3712 #line 776 "loader.l"
3714  YY_BREAK
3715 case 155:
3717 #line 777 "loader.l"
3719  YY_BREAK
3720 case 156:
3722 #line 778 "loader.l"
3724  YY_BREAK
3725 case 157:
3727 #line 779 "loader.l"
3729  YY_BREAK
3730 case 158:
3732 #line 780 "loader.l"
3734  YY_BREAK
3735 case 159:
3737 #line 781 "loader.l"
3739  YY_BREAK
3740 case 160:
3742 #line 782 "loader.l"
3744  YY_BREAK
3745 case 161:
3747 #line 783 "loader.l"
3749  YY_BREAK
3750 case 162:
3752 #line 784 "loader.l"
3754  YY_BREAK
3755 case 163:
3757 #line 785 "loader.l"
3759  YY_BREAK
3760 case 164:
3762 #line 786 "loader.l"
3764  YY_BREAK
3765 case 165:
3767 #line 787 "loader.l"
3769  YY_BREAK
3770 case 166:
3772 #line 788 "loader.l"
3774  YY_BREAK
3775 case 167:
3777 #line 789 "loader.l"
3779  YY_BREAK
3780 case 168:
3782 #line 790 "loader.l"
3784  YY_BREAK
3785 case 169:
3787 #line 791 "loader.l"
3789  YY_BREAK
3790 case 170:
3792 #line 792 "loader.l"
3794  YY_BREAK
3795 case 171:
3797 #line 793 "loader.l"
3799  YY_BREAK
3800 case 172:
3802 #line 794 "loader.l"
3804  YY_BREAK
3805 case 173:
3807 #line 795 "loader.l"
3808 op->attack_movement = IVAL;
3809  YY_BREAK
3810 case 174:
3812 #line 796 "loader.l"
3813 op->move_status = IVAL;
3814  YY_BREAK
3815 case 175:
3817 #line 797 "loader.l"
3819  YY_BREAK
3820 case 176:
3822 #line 798 "loader.l"
3824  YY_BREAK
3825 case 177:
3827 #line 799 "loader.l"
3828 add_button_link(op, op->map, IVAL);
3829  YY_BREAK
3830 case 178:
3832 #line 800 "loader.l"
3834  YY_BREAK
3835 case 179:
3837 #line 801 "loader.l"
3839  YY_BREAK
3840 case 180:
3842 #line 802 "loader.l"
3844  YY_BREAK
3845 case 181:
3847 #line 803 "loader.l"
3849  YY_BREAK
3850 case 182:
3852 #line 804 "loader.l"
3854  YY_BREAK
3855 case 183:
3857 #line 805 "loader.l"
3859  YY_BREAK
3860 case 184:
3862 #line 806 "loader.l"
3864  YY_BREAK
3865 case 185:
3867 #line 807 "loader.l"
3869  YY_BREAK
3870 case 186:
3872 #line 808 "loader.l"
3874  YY_BREAK
3875 case 187:
3877 #line 809 "loader.l"
3879  YY_BREAK
3880 case 188:
3882 #line 810 "loader.l"
3883 op->expmul = FVAL;
3884  YY_BREAK
3885 case 189:
3887 #line 811 "loader.l"
3889  YY_BREAK
3890 case 190:
3892 #line 812 "loader.l"
3894  YY_BREAK
3895 case 191:
3897 #line 813 "loader.l"
3899  YY_BREAK
3900 case 192:
3902 #line 814 "loader.l"
3904  YY_BREAK
3905 case 193:
3907 #line 815 "loader.l"
3909  YY_BREAK
3910 case 194:
3912 #line 816 "loader.l"
3914  YY_BREAK
3915 case 195:
3917 #line 817 "loader.l"
3919  YY_BREAK
3920 case 196:
3922 #line 818 "loader.l"
3924  YY_BREAK
3925 case 197:
3927 #line 819 "loader.l"
3929  YY_BREAK
3930 case 198:
3932 #line 820 "loader.l"
3933 op->glow_radius = IVAL;
3934  YY_BREAK
3935 case 199:
3937 #line 821 "loader.l"
3939  YY_BREAK
3940 case 200:
3942 #line 822 "loader.l"
3944  YY_BREAK
3945 case 201:
3947 #line 823 "loader.l"
3949  YY_BREAK
3950 case 202:
3952 #line 824 "loader.l"
3953 op->randomitems = find_treasurelist(yval());
3954  YY_BREAK
3955 case 203:
3957 #line 825 "loader.l"
3959  YY_BREAK
3960 case 204:
3962 #line 826 "loader.l"
3964  YY_BREAK
3965 case 205:
3967 #line 827 "loader.l"
3969  YY_BREAK
3970 case 206:
3972 #line 829 "loader.l"
3973 { /* Some archetypes have these values in them */ }
3974  YY_BREAK
3975 case 207:
3977 #line 830 "loader.l"
3978 { /* Probably the pupland archetypes - I imagined */ }
3979  YY_BREAK
3980 case 208:
3982 #line 831 "loader.l"
3983 { /* That these are for the new combat code */ }
3984  YY_BREAK
3985 case 209:
3987 #line 832 "loader.l"
3988 { /* just ignore for now */ }
3989  YY_BREAK
3990 case 210:
3992 #line 833 "loader.l"
3993 { }
3994  YY_BREAK
3995 case 211:
3997 #line 834 "loader.l"
3998 op->weapontype = IVAL;
3999  YY_BREAK
4000 case 212:
4002 #line 835 "loader.l"
4003 op->casting_time = FVAL;
4004  YY_BREAK
4005 case 213:
4007 #line 836 "loader.l"
4008 op->smoothlevel = IVAL;
4009  YY_BREAK
4010 case 214:
4012 #line 837 "loader.l"
4013 {
4015  char *p = strchr(yval(), ' ');
4016  if (!p)
4017  continue;
4018 
4019  *p = '\0';
4020  Face *regular = (Face *)find_face(yval());
4021  Face *smoothed = (Face *)find_face(p + 1);
4022  regular->smoothface = smoothed;
4023  }
4024  YY_BREAK
4025 case 215:
4027 #line 848 "loader.l"
4028 {
4029  if (IVAL)
4030  op->map_layer = IVAL;
4031  else {
4032  int i;
4033  char *cp = yval();
4034 
4035  for (i = 0; i < MAP_LAYERS; i++) {
4036  if (!strcasecmp(cp, map_layer_name[i])) {
4037  op->map_layer = i;
4038  break;
4039  }
4040  }
4041  if (i == MAP_LAYERS) {
4042  LOG(llevError, "Invalid map_layer name found: %s\n", cp);
4043  }
4044  }
4045  }
4046  YY_BREAK
4047 case 216:
4049 #line 866 "loader.l"
4050 op->client_type = IVAL;
4051  YY_BREAK
4052 case 217:
4054 #line 867 "loader.l"
4056  YY_BREAK
4057 case 218:
4059 #line 868 "loader.l"
4060 op->duration = IVAL;
4061  YY_BREAK
4062 case 219:
4064 #line 869 "loader.l"
4065 op->range = IVAL;
4066  YY_BREAK
4067 case 220:
4069 #line 870 "loader.l"
4070 op->range_modifier = IVAL;
4071  YY_BREAK
4072 case 221:
4074 #line 871 "loader.l"
4075 op->dam_modifier = IVAL;
4076  YY_BREAK
4077 case 222:
4079 #line 872 "loader.l"
4080 op->duration_modifier = IVAL;
4081  YY_BREAK
4082 case 223:
4084 #line 873 "loader.l"
4086  YY_BREAK
4087 case 224:
4089 #line 874 "loader.l"
4090 op->sound_chance = IVAL;
4091  YY_BREAK
4092 case 225:
4094 #line 875 "loader.l"
4096  YY_BREAK
4097 case 226:
4098 /* rule 226 can match eol */
4100 #line 877 "loader.l"
4101 { /* ignore empty lines, newlines we don't do above */ }
4102  YY_BREAK
4103 case 227:
4104 /* rule 227 can match eol */
4106 #line 878 "loader.l"
4107 { }
4108  YY_BREAK
4109 case YY_STATE_EOF(INITIAL):
4110 case YY_STATE_EOF(MESSAGE):
4111 case YY_STATE_EOF(LORE):
4112 case YY_STATE_EOF(SCRIPT):
4113 #line 880 "loader.l"
4114 { /* If we got an error, return the error. Otherwise, return that we got EOF */
4115  if (lex_error != 0)
4116  return lex_error;
4117  else
4118  return LL_EOF;
4119  }
4120  YY_BREAK
4121 case 228:
4123 #line 886 "loader.l"
4124 { add_key_value(op); }
4125  YY_BREAK
4126 case 229:
4128 #line 887 "loader.l"
4129 ECHO;
4130  YY_BREAK
4131 #line 4132 "loader.c"
4132 
4133  case YY_END_OF_BUFFER:
4134  {
4135  /* Amount of text matched not including the EOB char. */
4136  int yy_amount_of_matched_text = (int) (yy_cp - (yytext_ptr)) - 1;
4137 
4138  /* Undo the effects of YY_DO_BEFORE_ACTION. */
4139  *yy_cp = (yy_hold_char);
4141 
4142  if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW )
4143  {
4144  /* We're scanning a new file or input source. It's
4145  * possible that this happened because the user
4146  * just pointed yyin at a new source and called
4147  * yylex(). If so, then we have to assure
4148  * consistency between YY_CURRENT_BUFFER and our
4149  * globals. Here is the right place to do so, because
4150  * this is the first action (other than possibly a
4151  * back-up) that will match for the new input source.
4152  */
4153  (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
4154  YY_CURRENT_BUFFER_LVALUE->yy_input_file = yyin;
4155  YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL;
4156  }
4157 
4158  /* Note that here we test for yy_c_buf_p "<=" to the position
4159  * of the first EOB in the buffer, since yy_c_buf_p will
4160  * already have been incremented past the NUL character
4161  * (since all states make transitions on EOB to the
4162  * end-of-buffer state). Contrast this with the test
4163  * in input().
4164  */
4165  if ( (yy_c_buf_p) <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] )
4166  { /* This was really a NUL. */
4167  yy_state_type yy_next_state;
4168 
4169  (yy_c_buf_p) = (yytext_ptr) + yy_amount_of_matched_text;
4170 
4171  yy_current_state = yy_get_previous_state( );
4172 
4173  /* Okay, we're now positioned to make the NUL
4174  * transition. We couldn't have
4175  * yy_get_previous_state() go ahead and do it
4176  * for us because it doesn't know how to deal
4177  * with the possibility of jamming (and we don't
4178  * want to build jamming into it because then it
4179  * will run more slowly).
4180  */
4181 
4182  yy_next_state = yy_try_NUL_trans( yy_current_state );
4183 
4185 
4186  if ( yy_next_state )
4187  {
4188  /* Consume the NUL. */
4189  yy_cp = ++(yy_c_buf_p);
4190  yy_current_state = yy_next_state;
4191  goto yy_match;
4192  }
4193 
4194  else
4195  {
4197  yy_current_state = (yy_last_accepting_state);
4198  goto yy_find_action;
4199  }
4200  }
4201 
4202  else switch ( yy_get_next_buffer( ) )
4203  {
4204  case EOB_ACT_END_OF_FILE:
4205  {
4207 
4208  if ( yywrap( ) )
4209  {
4210  /* Note: because we've taken care in
4211  * yy_get_next_buffer() to have set up
4212  * yytext, we can now set up
4213  * yy_c_buf_p so that if some total
4214  * hoser (like flex itself) wants to
4215  * call the scanner after we return the
4216  * YY_NULL, it'll still work - another
4217  * YY_NULL will get returned.
4218  */
4220 
4222  goto do_action;
4223  }
4224 
4225  else
4226  {
4227  if ( ! (yy_did_buffer_switch_on_eof) )
4228  YY_NEW_FILE;
4229  }
4230  break;
4231  }
4232 
4233  case EOB_ACT_CONTINUE_SCAN:
4234  (yy_c_buf_p) =
4235  (yytext_ptr) + yy_amount_of_matched_text;
4236 
4237  yy_current_state = yy_get_previous_state( );
4238 
4239  yy_cp = (yy_c_buf_p);
4241  goto yy_match;
4242 
4243  case EOB_ACT_LAST_MATCH:
4244  (yy_c_buf_p) =
4245  &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)];
4246 
4247  yy_current_state = yy_get_previous_state( );
4248 
4249  yy_cp = (yy_c_buf_p);
4251  goto yy_find_action;
4252  }
4253  break;
4254  }
4255 
4256  default:
4258  "fatal flex scanner internal error--no action found" );
4259  } /* end of action switch */
4260  } /* end of scanning one token */
4261  } /* end of user's declarations */
4262 } /* end of yylex */
4263 
4264 /* yy_get_next_buffer - try to read in a new buffer
4265  *
4266  * Returns a code representing an action:
4267  * EOB_ACT_LAST_MATCH -
4268  * EOB_ACT_CONTINUE_SCAN - continue scanning from current position
4269  * EOB_ACT_END_OF_FILE - end of file
4270  */
4271 static int yy_get_next_buffer (void)
4272 {
4273  char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf;
4274  char *source = (yytext_ptr);
4275  int number_to_move, i;
4276  int ret_val;
4277 
4278  if ( (yy_c_buf_p) > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] )
4280  "fatal flex scanner internal error--end of buffer missed" );
4281 
4282  if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 )
4283  { /* Don't try to fill the buffer, so this is an EOF. */
4284  if ( (yy_c_buf_p) - (yytext_ptr) - YY_MORE_ADJ == 1 )
4285  {
4286  /* We matched a single character, the EOB, so
4287  * treat this as a final EOF.
4288  */
4289  return EOB_ACT_END_OF_FILE;
4290  }
4291 
4292  else
4293  {
4294  /* We matched some text prior to the EOB, first
4295  * process it.
4296  */
4297  return EOB_ACT_LAST_MATCH;
4298  }
4299  }
4300 
4301  /* Try to read more data. */
4302 
4303  /* First move last chars to start of buffer. */
4304  number_to_move = (int) ((yy_c_buf_p) - (yytext_ptr) - 1);
4305 
4306  for ( i = 0; i < number_to_move; ++i )
4307  *(dest++) = *(source++);
4308 
4309  if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING )
4310  /* don't do the read, it's not guaranteed to return an EOF,
4311  * just force an EOF
4312  */
4313  YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars) = 0;
4314 
4315  else
4316  {
4317  int num_to_read =
4318  YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1;
4319 
4320  while ( num_to_read <= 0 )
4321  { /* Not enough room in the buffer - grow it. */
4322 
4323  /* just a shorter name for the current buffer */
4325 
4326  int yy_c_buf_p_offset =
4327  (int) ((yy_c_buf_p) - b->yy_ch_buf);
4328 
4329  if ( b->yy_is_our_buffer )
4330  {
4331  int new_size = b->yy_buf_size * 2;
4332 
4333  if ( new_size <= 0 )
4334  b->yy_buf_size += b->yy_buf_size / 8;
4335  else
4336  b->yy_buf_size *= 2;
4337 
4338  b->yy_ch_buf = (char *)
4339  /* Include room in for 2 EOB chars. */
4340  yyrealloc( (void *) b->yy_ch_buf,
4341  (yy_size_t) (b->yy_buf_size + 2) );
4342  }
4343  else
4344  /* Can't grow it, we don't own it. */
4345  b->yy_ch_buf = NULL;
4346 
4347  if ( ! b->yy_ch_buf )
4349  "fatal error - scanner input buffer overflow" );
4350 
4351  (yy_c_buf_p) = &b->yy_ch_buf[yy_c_buf_p_offset];
4352 
4353  num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size -
4354  number_to_move - 1;
4355 
4356  }
4357 
4358  if ( num_to_read > YY_READ_BUF_SIZE )
4359  num_to_read = YY_READ_BUF_SIZE;
4360 
4361  /* Read in more data. */
4362  YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]),
4363  (yy_n_chars), num_to_read );
4364 
4365  YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
4366  }
4367 
4368  if ( (yy_n_chars) == 0 )
4369  {
4370  if ( number_to_move == YY_MORE_ADJ )
4371  {
4372  ret_val = EOB_ACT_END_OF_FILE;
4373  yyrestart( yyin );
4374  }
4375 
4376  else
4377  {
4378  ret_val = EOB_ACT_LAST_MATCH;
4379  YY_CURRENT_BUFFER_LVALUE->yy_buffer_status =
4381  }
4382  }
4383 
4384  else
4385  ret_val = EOB_ACT_CONTINUE_SCAN;
4386 
4387  if (((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) {
4388  /* Extend the array by 50%, plus the number we really need. */
4389  int new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1);
4390  YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) yyrealloc(
4391  (void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf, (yy_size_t) new_size );
4392  if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )
4393  YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" );
4394  /* "- 2" to take care of EOB's */
4395  YY_CURRENT_BUFFER_LVALUE->yy_buf_size = (int) (new_size - 2);
4396  }
4397 
4398  (yy_n_chars) += number_to_move;
4401 
4402  (yytext_ptr) = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0];
4403 
4404  return ret_val;
4405 }
4406 
4407 /* yy_get_previous_state - get the state just before the EOB char was reached */
4408 
4410 {
4411  yy_state_type yy_current_state;
4412  char *yy_cp;
4413 
4414  yy_current_state = (yy_start);
4415  yy_current_state += YY_AT_BOL();
4416 
4417  for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp )
4418  {
4419  YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
4420  if ( yy_accept[yy_current_state] )
4421  {
4422  (yy_last_accepting_state) = yy_current_state;
4424  }
4425  while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
4426  {
4427  yy_current_state = (int) yy_def[yy_current_state];
4428  if ( yy_current_state >= 2079 )
4429  yy_c = yy_meta[yy_c];
4430  }
4431  yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
4432  }
4433 
4434  return yy_current_state;
4435 }
4436 
4437 /* yy_try_NUL_trans - try to make a transition on the NUL character
4438  *
4439  * synopsis
4440  * next_state = yy_try_NUL_trans( current_state );
4441  */
4442  static yy_state_type yy_try_NUL_trans (yy_state_type yy_current_state )
4443 {
4444  int yy_is_jam;
4445  char *yy_cp = (yy_c_buf_p);
4446 
4447  YY_CHAR yy_c = 1;
4448  if ( yy_accept[yy_current_state] )
4449  {
4450  (yy_last_accepting_state) = yy_current_state;
4452  }
4453  while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
4454  {
4455  yy_current_state = (int) yy_def[yy_current_state];
4456  if ( yy_current_state >= 2079 )
4457  yy_c = yy_meta[yy_c];
4458  }
4459  yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
4460  yy_is_jam = (yy_current_state == 2078);
4461 
4462  return yy_is_jam ? 0 : yy_current_state;
4463 }
4464 
4465 #ifndef YY_NO_UNPUT
4466 
4467 #endif
4468 
4469 #ifndef YY_NO_INPUT
4470 #ifdef __cplusplus
4471  static int yyinput (void)
4472 #else
4473  static int input (void)
4474 #endif
4475 
4476 {
4477  int c;
4478 
4479  *(yy_c_buf_p) = (yy_hold_char);
4480 
4481  if ( *(yy_c_buf_p) == YY_END_OF_BUFFER_CHAR )
4482  {
4483  /* yy_c_buf_p now points to the character we want to return.
4484  * If this occurs *before* the EOB characters, then it's a
4485  * valid NUL; if not, then we've hit the end of the buffer.
4486  */
4487  if ( (yy_c_buf_p) < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] )
4488  /* This was really a NUL. */
4489  *(yy_c_buf_p) = '\0';
4490 
4491  else
4492  { /* need more input */
4493  int offset = (int) ((yy_c_buf_p) - (yytext_ptr));
4494  ++(yy_c_buf_p);
4495 
4496  switch ( yy_get_next_buffer( ) )
4497  {
4498  case EOB_ACT_LAST_MATCH:
4499  /* This happens because yy_g_n_b()
4500  * sees that we've accumulated a
4501  * token and flags that we need to
4502  * try matching the token before
4503  * proceeding. But for input(),
4504  * there's no matching to consider.
4505  * So convert the EOB_ACT_LAST_MATCH
4506  * to EOB_ACT_END_OF_FILE.
4507  */
4508 
4509  /* Reset buffer status. */
4510  yyrestart( yyin );
4511 
4512  /*FALLTHROUGH*/
4513 
4514  case EOB_ACT_END_OF_FILE:
4515  {
4516  if ( yywrap( ) )
4517  return 0;
4518 
4519  if ( ! (yy_did_buffer_switch_on_eof) )
4520  YY_NEW_FILE;
4521 #ifdef __cplusplus
4522  return yyinput();
4523 #else
4524  return input();
4525 #endif
4526  }
4527 
4528  case EOB_ACT_CONTINUE_SCAN:
4529  (yy_c_buf_p) = (yytext_ptr) + offset;
4530  break;
4531  }
4532  }
4533  }
4534 
4535  c = *(unsigned char *) (yy_c_buf_p); /* cast for 8-bit char's */
4536  *(yy_c_buf_p) = '\0'; /* preserve yytext */
4537  (yy_hold_char) = *++(yy_c_buf_p);
4538 
4539  YY_CURRENT_BUFFER_LVALUE->yy_at_bol = (c == '\n');
4540 
4541  return c;
4542 }
4543 #endif /* ifndef YY_NO_INPUT */
4544 
4550  void yyrestart (FILE * input_file )
4551 {
4552 
4553  if ( ! YY_CURRENT_BUFFER ){
4557  }
4558 
4559  yy_init_buffer( YY_CURRENT_BUFFER, input_file );
4561 }
4562 
4568 {
4569 
4570  /* TODO. We should be able to replace this entire function body
4571  * with
4572  * yypop_buffer_state();
4573  * yypush_buffer_state(new_buffer);
4574  */
4576  if ( YY_CURRENT_BUFFER == new_buffer )
4577  return;
4578 
4579  if ( YY_CURRENT_BUFFER )
4580  {
4581  /* Flush out information for old buffer. */
4582  *(yy_c_buf_p) = (yy_hold_char);
4583  YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);
4584  YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
4585  }
4586 
4587  YY_CURRENT_BUFFER_LVALUE = new_buffer;
4589 
4590  /* We don't actually know whether we did this switch during
4591  * EOF (yywrap()) processing, but the only time this flag
4592  * is looked at is after yywrap() is called, so it's safe
4593  * to go ahead and always set it.
4594  */
4596 }
4597 
4598 static void yy_load_buffer_state (void)
4599 {
4600  (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
4601  (yytext_ptr) = (yy_c_buf_p) = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos;
4602  yyin = YY_CURRENT_BUFFER_LVALUE->yy_input_file;
4603  (yy_hold_char) = *(yy_c_buf_p);
4604 }
4605 
4613 {
4615 
4616  b = (YY_BUFFER_STATE) yyalloc( sizeof( struct yy_buffer_state ) );
4617  if ( ! b )
4618  YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
4619 
4620  b->yy_buf_size = size;
4621 
4622  /* yy_ch_buf has to be 2 characters longer than the size given because
4623  * we need to put in 2 end-of-buffer characters.
4624  */
4625  b->yy_ch_buf = (char *) yyalloc( (yy_size_t) (b->yy_buf_size + 2) );
4626  if ( ! b->yy_ch_buf )
4627  YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
4628 
4629  b->yy_is_our_buffer = 1;
4630 
4631  yy_init_buffer( b, file );
4632 
4633  return b;
4634 }
4635 
4641 {
4642 
4643  if ( ! b )
4644  return;
4645 
4646  if ( b == YY_CURRENT_BUFFER ) /* Not sure if we should pop here. */
4648 
4649  if ( b->yy_is_our_buffer )
4650  yyfree( (void *) b->yy_ch_buf );
4651 
4652  yyfree( (void *) b );
4653 }
4654 
4655 /* Initializes or reinitializes a buffer.
4656  * This function is sometimes called more than once on the same buffer,
4657  * such as during a yyrestart() or at EOF.
4658  */
4659  static void yy_init_buffer (YY_BUFFER_STATE b, FILE * file )
4660 
4661 {
4662  int oerrno = errno;
4663 
4664  yy_flush_buffer( b );
4665 
4666  b->yy_input_file = file;
4667  b->yy_fill_buffer = 1;
4668 
4669  /* If b is the current buffer, then yy_init_buffer was _probably_
4670  * called from yyrestart() or through yy_get_next_buffer.
4671  * In that case, we don't want to reset the lineno or column.
4672  */
4673  if (b != YY_CURRENT_BUFFER){
4674  b->yy_bs_lineno = 1;
4675  b->yy_bs_column = 0;
4676  }
4677 
4678  b->yy_is_interactive = file ? (isatty( fileno(file) ) > 0) : 0;
4679 
4680  errno = oerrno;
4681 }
4682 
4688 {
4689  if ( ! b )
4690  return;
4691 
4692  b->yy_n_chars = 0;
4693 
4694  /* We always need two end-of-buffer characters. The first causes
4695  * a transition to the end-of-buffer state. The second causes
4696  * a jam in that state.
4697  */
4698  b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR;
4699  b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR;
4700 
4701  b->yy_buf_pos = &b->yy_ch_buf[0];
4702 
4703  b->yy_at_bol = 1;
4704  b->yy_buffer_status = YY_BUFFER_NEW;
4705 
4706  if ( b == YY_CURRENT_BUFFER )
4708 }
4709 
4717 {
4718  if (new_buffer == NULL)
4719  return;
4720 
4722 
4723  /* This block is copied from yy_switch_to_buffer. */
4724  if ( YY_CURRENT_BUFFER )
4725  {
4726  /* Flush out information for old buffer. */
4727  *(yy_c_buf_p) = (yy_hold_char);
4728  YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);
4729  YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
4730  }
4731 
4732  /* Only push if top exists. Otherwise, replace top. */
4733  if (YY_CURRENT_BUFFER)
4734  (yy_buffer_stack_top)++;
4735  YY_CURRENT_BUFFER_LVALUE = new_buffer;
4736 
4737  /* copied from yy_switch_to_buffer. */
4740 }
4741 
4747 {
4748  if (!YY_CURRENT_BUFFER)
4749  return;
4750 
4752  YY_CURRENT_BUFFER_LVALUE = NULL;
4753  if ((yy_buffer_stack_top) > 0)
4754  --(yy_buffer_stack_top);
4755 
4756  if (YY_CURRENT_BUFFER) {
4759  }
4760 }
4761 
4762 /* Allocates the stack if it does not exist.
4763  * Guarantees space for at least one push.
4764  */
4765 static void yyensure_buffer_stack (void)
4766 {
4767  yy_size_t num_to_alloc;
4768 
4769  if (!(yy_buffer_stack)) {
4770 
4771  /* First allocation is just for 2 elements, since we don't know if this
4772  * scanner will even need a stack. We use 2 instead of 1 to avoid an
4773  * immediate realloc on the next call.
4774  */
4775  num_to_alloc = 1; /* After all that talk, this was set to 1 anyways... */
4777  (num_to_alloc * sizeof(struct yy_buffer_state*)
4778  );
4779  if ( ! (yy_buffer_stack) )
4780  YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" );
4781 
4782  memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*));
4783 
4784  (yy_buffer_stack_max) = num_to_alloc;
4785  (yy_buffer_stack_top) = 0;
4786  return;
4787  }
4788 
4789  if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){
4790 
4791  /* Increase the buffer to prepare for a possible push. */
4792  yy_size_t grow_size = 8 /* arbitrary grow size */;
4793 
4794  num_to_alloc = (yy_buffer_stack_max) + grow_size;
4796  ((yy_buffer_stack),
4797  num_to_alloc * sizeof(struct yy_buffer_state*)
4798  );
4799  if ( ! (yy_buffer_stack) )
4800  YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" );
4801 
4802  /* zero only the new slots.*/
4803  memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*));
4804  (yy_buffer_stack_max) = num_to_alloc;
4805  }
4806 }
4807 
4815 {
4817 
4818  if ( size < 2 ||
4819  base[size-2] != YY_END_OF_BUFFER_CHAR ||
4820  base[size-1] != YY_END_OF_BUFFER_CHAR )
4821  /* They forgot to leave room for the EOB's. */
4822  return NULL;
4823 
4824  b = (YY_BUFFER_STATE) yyalloc( sizeof( struct yy_buffer_state ) );
4825  if ( ! b )
4826  YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" );
4827 
4828  b->yy_buf_size = (int) (size - 2); /* "- 2" to take care of EOB's */
4829  b->yy_buf_pos = b->yy_ch_buf = base;
4830  b->yy_is_our_buffer = 0;
4831  b->yy_input_file = NULL;
4832  b->yy_n_chars = b->yy_buf_size;
4833  b->yy_is_interactive = 0;
4834  b->yy_at_bol = 1;
4835  b->yy_fill_buffer = 0;
4836  b->yy_buffer_status = YY_BUFFER_NEW;
4837 
4839 
4840  return b;
4841 }
4842 
4851 YY_BUFFER_STATE yy_scan_string (const char * yystr )
4852 {
4853 
4854  return yy_scan_bytes( yystr, (int) strlen(yystr) );
4855 }
4856 
4864 YY_BUFFER_STATE yy_scan_bytes (const char * yybytes, int _yybytes_len )
4865 {
4867  char *buf;
4868  yy_size_t n;
4869  int i;
4870 
4871  /* Get memory for full buffer, including space for trailing EOB's. */
4872  n = (yy_size_t) (_yybytes_len + 2);
4873  buf = (char *) yyalloc( n );
4874  if ( ! buf )
4875  YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" );
4876 
4877  for ( i = 0; i < _yybytes_len; ++i )
4878  buf[i] = yybytes[i];
4879 
4880  buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR;
4881 
4882  b = yy_scan_buffer( buf, n );
4883  if ( ! b )
4884  YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" );
4885 
4886  /* It's okay to grow etc. this buffer, and we should throw it
4887  * away when we're done.
4888  */
4889  b->yy_is_our_buffer = 1;
4890 
4891  return b;
4892 }
4893 
4894  static void yy_push_state (int _new_state )
4895 {
4897  {
4898  yy_size_t new_size;
4899 
4901  new_size = (yy_size_t) (yy_start_stack_depth) * sizeof( int );
4902 
4903  if ( ! (yy_start_stack) )
4904  (yy_start_stack) = (int *) yyalloc( new_size );
4905 
4906  else
4907  (yy_start_stack) = (int *) yyrealloc(
4908  (void *) (yy_start_stack), new_size );
4909 
4910  if ( ! (yy_start_stack) )
4911  YY_FATAL_ERROR( "out of memory expanding start-condition stack" );
4912  }
4913 
4915 
4916  BEGIN(_new_state);
4917 }
4918 
4919  static void yy_pop_state (void)
4920 {
4921  if ( --(yy_start_stack_ptr) < 0 )
4922  YY_FATAL_ERROR( "start-condition stack underflow" );
4923 
4925 }
4926 
4927 #ifndef YY_EXIT_FAILURE
4928 #define YY_EXIT_FAILURE 2
4929 #endif
4930 
4931 static void yynoreturn yy_fatal_error (const char* msg )
4932 {
4933  fprintf( stderr, "%s\n", msg );
4934  exit( YY_EXIT_FAILURE );
4935 }
4936 
4937 /* Redefine yyless() so it works in section 3 code. */
4938 
4939 #undef yyless
4940 #define yyless(n) \
4941  do \
4942  { \
4943  /* Undo effects of setting up yytext. */ \
4944  int yyless_macro_arg = (n); \
4945  YY_LESS_LINENO(yyless_macro_arg);\
4946  yytext[yyleng] = (yy_hold_char); \
4947  (yy_c_buf_p) = yytext + yyless_macro_arg; \
4948  (yy_hold_char) = *(yy_c_buf_p); \
4949  *(yy_c_buf_p) = '\0'; \
4950  yyleng = yyless_macro_arg; \
4951  } \
4952  while ( 0 )
4953 
4954 /* Accessor methods (get/set functions) to struct members. */
4955 
4959 int yyget_lineno (void)
4960 {
4961 
4962  return yylineno;
4963 }
4964 
4968 FILE *yyget_in (void)
4969 {
4970  return yyin;
4971 }
4972 
4976 FILE *yyget_out (void)
4977 {
4978  return yyout;
4979 }
4980 
4984 int yyget_leng (void)
4985 {
4986  return yyleng;
4987 }
4988 
4993 char *yyget_text (void)
4994 {
4995  return yytext;
4996 }
4997 
5002 void yyset_lineno (int _line_number )
5003 {
5004 
5005  yylineno = _line_number;
5006 }
5007 
5014 void yyset_in (FILE * _in_str )
5015 {
5016  yyin = _in_str ;
5017 }
5018 
5019 void yyset_out (FILE * _out_str )
5020 {
5021  yyout = _out_str ;
5022 }
5023 
5024 int yyget_debug (void)
5025 {
5026  return yy_flex_debug;
5027 }
5028 
5029 void yyset_debug (int _bdebug )
5030 {
5031  yy_flex_debug = _bdebug ;
5032 }
5033 
5034 static int yy_init_globals (void)
5035 {
5036  /* Initialization is the same as for the non-reentrant scanner.
5037  * This function is called from yylex_destroy(), so don't allocate here.
5038  */
5039 
5040  (yy_buffer_stack) = NULL;
5041  (yy_buffer_stack_top) = 0;
5042  (yy_buffer_stack_max) = 0;
5043  (yy_c_buf_p) = NULL;
5044  (yy_init) = 0;
5045  (yy_start) = 0;
5046 
5047  (yy_start_stack_ptr) = 0;
5048  (yy_start_stack_depth) = 0;
5049  (yy_start_stack) = NULL;
5050 
5051 /* Defined in main.c */
5052 #ifdef YY_STDINIT
5053  yyin = stdin;
5054  yyout = stdout;
5055 #else
5056  yyin = NULL;
5057  yyout = NULL;
5058 #endif
5059 
5060  /* For future reference: Set errno on error, since we are called by
5061  * yylex_init()
5062  */
5063  return 0;
5064 }
5065 
5066 /* yylex_destroy is for both reentrant and non-reentrant scanners. */
5067 int yylex_destroy (void)
5068 {
5069 
5070  /* Pop the buffer stack, destroying each element. */
5071  while(YY_CURRENT_BUFFER){
5073  YY_CURRENT_BUFFER_LVALUE = NULL;
5075  }
5076 
5077  /* Destroy the stack itself. */
5078  yyfree((yy_buffer_stack) );
5079  (yy_buffer_stack) = NULL;
5080 
5081  /* Destroy the start condition stack. */
5082  yyfree( (yy_start_stack) );
5083  (yy_start_stack) = NULL;
5084 
5085  /* Reset the globals. This is important in a non-reentrant scanner so the next time
5086  * yylex() is called, initialization will occur. */
5087  yy_init_globals( );
5088 
5089  return 0;
5090 }
5091 
5092 /*
5093  * Internal utility routines.
5094  */
5095 
5096 #ifndef yytext_ptr
5097 static void yy_flex_strncpy (char* s1, const char * s2, int n )
5098 {
5099 
5100  int i;
5101  for ( i = 0; i < n; ++i )
5102  s1[i] = s2[i];
5103 }
5104 #endif
5105 
5106 #ifdef YY_NEED_STRLEN
5107 static int yy_flex_strlen (const char * s )
5108 {
5109  int n;
5110  for ( n = 0; s[n]; ++n )
5111  ;
5112 
5113  return n;
5114 }
5115 #endif
5116 
5117 void *yyalloc (yy_size_t size )
5118 {
5119  return malloc(size);
5120 }
5121 
5122 void *yyrealloc (void * ptr, yy_size_t size )
5123 {
5124 
5125  /* The cast to (char *) in the following accommodates both
5126  * implementations that use char* generic pointers, and those
5127  * that use void* generic pointers. It works with the latter
5128  * because both ANSI C and C++ allow castless assignment from
5129  * any pointer type to void*, and deal with argument conversions
5130  * as though doing an assignment.
5131  */
5132  return realloc(ptr, size);
5133 }
5134 
5135 void yyfree (void * ptr )
5136 {
5137  free( (char *) ptr ); /* see yyrealloc() for (char *) cast */
5138 }
5139 
5140 #define YYTABLES_NAME "yytables"
5141 
5142 #line 887 "loader.l"
5143 
5144 
5153 static char *yval(void)
5154 {
5155  static char em[] = "";
5156  char *cp, *end;
5157 
5158  /* First skip over start of line, like animation or name */
5159  for (cp = yytext; *cp != ' '; cp++) {
5160  if (*cp == '\0') {
5161  return em;
5162  }
5163  }
5164 
5165  /* Skip over whitespace */
5166  for (; *cp == ' '; cp++) {
5167  if (*cp == '\0') {
5168  return em;
5169  }
5170  }
5171  /* Got last character before null and strip
5172  * off tailing whitespace
5173  */
5174  for (end = cp+strlen(cp)-1; *end == ' '; end--) {
5175  if (end == cp)
5176  return em;
5177  *end = '\0';
5178  }
5179  return cp;
5180 }
5181 
5205 int load_object(FILE *fp, object *op, int bufstate, int map_flags) {
5206  int retval;
5207  char inbuf[VERY_BIG_BUF];
5208 #define MAXDEPTH 10
5209  object *items[MAXDEPTH];
5210  int depth = 0, ismore = 0;
5211 
5212  items[0] = op,
5213  strcpy(msgbuf, "");
5214  msglen = 0;
5215  total_msglen = 0;
5216  strcpy(lorebuf, "");
5217  if (bufstate == LO_NEWFILE || bufstate == LO_NOREAD) {
5218  /* LOG(llevDebug, "Switching lex buffers\n");*/
5221  if (bufstate == LO_NOREAD)
5222  return LL_NORMAL;
5223  } else if (bufstate == LO_LINEMODE) {
5224  YY_BUFFER_STATE yybufstate;
5226  while (fgets(inbuf, VERY_BIG_BUF-3, fp)) {
5227  yybufstate = yy_scan_string(inbuf);
5228  retval = lex_load(&depth, items, MAXDEPTH, map_flags, 1, &ismore);
5229  yy_delete_buffer(yybufstate);
5230  if (retval == LL_NORMAL) {
5231  if (depth == 0)
5232  return retval;
5233  else
5234  depth--;
5235  }
5236  }
5237  LOG(llevDebug, "Got eof while scanning strings\n");
5238  return LL_EOF;
5239  }
5240 
5241  retval = lex_load(&depth, items, MAXDEPTH, map_flags, 0, &ismore);
5242 
5243 /* LOG(llevDebug, " load completed, object=%s\n", op->name);*/
5244  return retval;
5245 }
5246 
5255 int load_object_from_reader(BufferReader *reader, object *op, int map_flags) {
5256  int retval;
5257  object *items[MAXDEPTH];
5258  int depth = 0, ismore = 0;
5259  char buf[HUGE_BUF];
5260 
5261  items[0] = op,
5262  strcpy(msgbuf, "");
5263  msglen = 0;
5264  total_msglen = 0;
5265  strcpy(lorebuf, "");
5266 
5267  YY_BUFFER_STATE yybufstate;
5270 
5271  while (bufferreader_get_line(reader, buf, sizeof(buf)) != NULL) {
5272  yybufstate = yy_scan_string(buf);
5273  retval = lex_load(&depth, items, MAXDEPTH, map_flags, 1, &ismore);
5274  yy_delete_buffer(yybufstate);
5275  if (retval == LL_NORMAL || retval == LL_MORE) {
5276  if (depth == 0) {
5277  yy_pop_state();
5278  return ismore ? LL_MORE : LL_NORMAL;
5279  } else
5280  depth--;
5281  }
5282  }
5283  if (depth > 0) {
5284  LOG(llevError, "Got eof while scanning strings\n");
5285  }
5286  yy_pop_state();
5287  return LL_EOF;
5288 }
5289 
5306 int set_variable(object *op, const char *buf) {
5307  YY_BUFFER_STATE yybufstate, yycurbuf = YY_CURRENT_BUFFER;
5308  int retval, depth, ismore = 0;
5309  object *items[MAXDEPTH];
5310 
5311  strcpy(msgbuf, "");
5312  msglen = 0;
5313  total_msglen = 0;
5314  strcpy(lorebuf, "");
5315  items[0] = op;
5316  depth = 0;
5318  yybufstate = yy_scan_string(buf);
5319  retval = lex_load(&depth, items, MAXDEPTH, 0, 0, &ismore);
5320  if (yycurbuf) {
5321  yy_switch_to_buffer(yycurbuf);
5322  }
5323  yy_delete_buffer(yybufstate);
5324  yy_pop_state();
5325  return retval;
5326 }
5327 
5328 /* Start of C code */
5329 
5333 void free_loader(void) {
5335 
5336  /* Comment out this yylex_destroy(), as it results in link errors
5337  * on linux
5338  */
5339 /* yylex_destroy();*/
5340 }
5341 
flex_int32_t
int flex_int32_t
Definition: loader.c:52
yynoreturn
#define yynoreturn
Definition: loader.c:102
FLAG_USE_BOW
#define FLAG_USE_BOW
Definition: define.h:293
check_loaded_object
static void check_loaded_object(object *op)
Definition: loader.c:2177
give.next
def next
Definition: give.py:44
Face
Definition: face.h:14
Face::smoothface
Face * smoothface
Definition: face.h:18
PLAYER
@ PLAYER
Definition: object.h:112
ATNR_PARALYZE
#define ATNR_PARALYZE
Definition: attack.h:61
global.h
FLAG_NEUTRAL
#define FLAG_NEUTRAL
Definition: define.h:354
ATNR_CANCELLATION
#define ATNR_CANCELLATION
Definition: attack.h:64
castle_read.prefix
string prefix
Definition: castle_read.py:31
settings
struct Settings settings
Definition: init.cpp:139
SCRIPT
#define SCRIPT
Definition: loader.c:2429
yy_c_buf_p
static char * yy_c_buf_p
Definition: loader.c:273
yyfree
void yyfree(void *)
Definition: loader.c:5135
NUM_BODY_LOCATIONS
#define NUM_BODY_LOCATIONS
Definition: object.h:15
ATNR_INTERNAL
#define ATNR_INTERNAL
Definition: attack.h:72
FLAG_STAND_STILL
#define FLAG_STAND_STILL
Definition: define.h:308
FLAG_CONFUSED
#define FLAG_CONFUSED
Definition: define.h:311
BOW
@ BOW
Definition: object.h:123
find_artifact
const artifact * find_artifact(const object *op, const char *name)
Definition: artifact.cpp:589
llevError
@ llevError
Definition: logger.h:11
object_set_flag_inv
void object_set_flag_inv(object *op, int flag)
Definition: object.cpp:3235
FABS
#define FABS(x)
Definition: define.h:22
FLAG_CLIENT_ANIM_RANDOM
#define FLAG_CLIENT_ANIM_RANDOM
Definition: define.h:241
total_msglen
size_t total_msglen
Definition: loader.c:2080
MOVE_ALL
#define MOVE_ALL
Definition: define.h:398
FLAG_USE_RING
#define FLAG_USE_RING
Definition: define.h:297
LOG
void LOG(LogLevel logLevel, const char *format,...)
Definition: logger.cpp:51
FLAG_UNDEAD
#define FLAG_UNDEAD
Definition: define.h:270
FLAG_OVERLAY_FLOOR
#define FLAG_OVERLAY_FLOOR
Definition: define.h:255
SET_FLAG
#define SET_FLAG(xyz, p)
Definition: define.h:224
yyget_debug
int yyget_debug(void)
Definition: loader.c:5024
FLAG_GENERATOR
#define FLAG_GENERATOR
Definition: define.h:248
yy_trans_info
Definition: loader.c:361
load_object
int load_object(FILE *fp, object *op, int bufstate, int map_flags)
Definition: loader.c:5205
YY_SC_TO_UI
#define YY_SC_TO_UI(c)
Definition: loader.c:111
ATNR_ACID
#define ATNR_ACID
Definition: attack.h:55
safe_strcat
void safe_strcat(char *dest, const char *orig, size_t *curlen, size_t maxlen)
Definition: porting.cpp:202
FLAG_STARTEQUIP
#define FLAG_STARTEQUIP
Definition: define.h:268
QUERY_FLAG
#define QUERY_FLAG(xyz, p)
Definition: define.h:226
FLAG_REFL_MISSILE
#define FLAG_REFL_MISSILE
Definition: define.h:273
load_object_from_reader
int load_object_from_reader(BufferReader *reader, object *op, int map_flags)
Definition: loader.c:5255
get_archetype_struct
archetype * get_archetype_struct(void)
Definition: arch.cpp:195
FLAG_CONTENT_ON_GEN
#define FLAG_CONTENT_ON_GEN
Definition: define.h:365
yy_start_stack_depth
static int yy_start_stack_depth
Definition: loader.c:2508
yyensure_buffer_stack
static void yyensure_buffer_stack(void)
Definition: loader.c:4765
yy_buffer_state::yy_input_file
FILE * yy_input_file
Definition: loader.c:187
FLAG_IS_TURNABLE
#define FLAG_IS_TURNABLE
Definition: define.h:256
FLAG_SEE_IN_DARK
#define FLAG_SEE_IN_DARK
Definition: define.h:337
Settings::permanent_exp_ratio
uint8_t permanent_exp_ratio
Definition: global.h:258
c
static event_registration c
Definition: citylife.cpp:425
YY_CHAR
flex_uint8_t YY_CHAR
Definition: loader.c:328
reverse_ob_inv
static void reverse_ob_inv(object *op)
Definition: loader.c:2110
LL_IGNORED
#define LL_IGNORED
Definition: loader.h:9
yyset_extra
void yyset_extra(YY_EXTRA_TYPE user_defined)
yy_size_t
size_t yy_size_t
Definition: loader.c:154
yy_pop_state
static void yy_pop_state(void)
Definition: loader.c:4919
FLAG_UNIQUE
#define FLAG_UNIQUE
Definition: define.h:287
YY_CURRENT_BUFFER_LVALUE
#define YY_CURRENT_BUFFER_LVALUE
Definition: loader.c:265
yypush_buffer_state
void yypush_buffer_state(YY_BUFFER_STATE new_buffer)
Definition: loader.c:4716
yylineno
int yylineno
Definition: loader.c:335
give_artifact_abilities
void give_artifact_abilities(object *op, const object *artifact)
Definition: artifact.cpp:230
yy_buffer_state
Definition: loader.c:185
key_value
Definition: object.h:42
WEAPON
@ WEAPON
Definition: object.h:124
MoveType
unsigned char MoveType
Definition: define.h:417
flex_uint32_t
unsigned int flex_uint32_t
Definition: loader.c:55
artifact::item
object * item
Definition: artifact.h:15
YY_BUFFER_EOF_PENDING
#define YY_BUFFER_EOF_PENDING
Definition: loader.c:243
ATNR_SLOW
#define ATNR_SLOW
Definition: attack.h:60
yy_try_NUL_trans
static yy_state_type yy_try_NUL_trans(yy_state_type current_state)
Definition: loader.c:4442
FLAG_SEE_INVISIBLE
#define FLAG_SEE_INVISIBLE
Definition: define.h:253
mad_mage_user.file
file
Definition: mad_mage_user.py:15
YY_RESTORE_YY_MORE_OFFSET
#define YY_RESTORE_YY_MORE_OFFSET
Definition: loader.c:2048
ATNR_GODPOWER
#define ATNR_GODPOWER
Definition: attack.h:69
MAP_LAYERS
#define MAP_LAYERS
Definition: map.h:32
yy_bp
char * yy_bp
Definition: loader.c:2623
msgbuf
static char msgbuf[HUGE_BUF]
Definition: loader.c:2079
FLAG_WIZCAST
#define FLAG_WIZCAST
Definition: define.h:289
RUNE
@ RUNE
Definition: object.h:245
set_materialname
void set_materialname(object *op)
Definition: utils.cpp:297
object_copy
void object_copy(const object *src_ob, object *dest_ob)
Definition: object.cpp:1192
ATNR_DISEASE
#define ATNR_DISEASE
Definition: attack.h:74
FLAG_SCARED
#define FLAG_SCARED
Definition: define.h:271
find_treasurelist
treasurelist * find_treasurelist(const char *name)
Definition: assets.cpp:249
Ice.tmp
int tmp
Definition: Ice.py:207
FLAG_ONE_HIT
#define FLAG_ONE_HIT
Definition: define.h:343
YY_AT_BOL
#define YY_AT_BOL()
Definition: loader.c:322
FLAG_ONLY_ATTACK
#define FLAG_ONLY_ATTACK
Definition: define.h:310
CREATOR
@ CREATOR
Definition: object.h:147
FLAG_BLESSED
#define FLAG_BLESSED
Definition: define.h:369
FLAG_READY_SCROLL
#define FLAG_READY_SCROLL
Definition: define.h:324
SET_OR_CLEAR_FLAG
#define SET_OR_CLEAR_FLAG(op, flag, val)
Definition: loader.c:2084
FLAG_NO_MAGIC
#define FLAG_NO_MAGIC
Definition: define.h:276
yy_meta
static const YY_CHAR yy_meta[60]
Definition: loader.c:630
ATNR_PHYSICAL
#define ATNR_PHYSICAL
Definition: attack.h:49
yy_create_buffer
YY_BUFFER_STATE yy_create_buffer(FILE *file, int size)
Definition: loader.c:4612
YY_CURRENT_BUFFER
#define YY_CURRENT_BUFFER
Definition: loader.c:259
LO_NEWFILE
#define LO_NEWFILE
Definition: loader.h:17
yy_push_state
static void yy_push_state(int _new_state)
Definition: loader.c:4894
FLAG_BLOCKSVIEW
#define FLAG_BLOCKSVIEW
Definition: define.h:269
ATNR_TURN_UNDEAD
#define ATNR_TURN_UNDEAD
Definition: attack.h:62
yyset_debug
void yyset_debug(int debug_flag)
Definition: loader.c:5029
yytext_ptr
#define yytext_ptr
Definition: loader.c:341
yy_scan_bytes
YY_BUFFER_STATE yy_scan_bytes(const char *bytes, int len)
Definition: loader.c:4864
yy_state_type
int yy_state_type
Definition: loader.c:332
yy_buffer_state::yy_at_bol
int yy_at_bol
Definition: loader.c:219
FLAG_INV_LOCKED
#define FLAG_INV_LOCKED
Definition: define.h:329
set_variable
int set_variable(object *op, const char *buf)
Definition: loader.c:5306
FLAG_APPLIED
#define FLAG_APPLIED
Definition: define.h:235
FLAG_STEALTH
#define FLAG_STEALTH
Definition: define.h:312
find_face
const Face * find_face(const char *name)
Definition: assets.cpp:282
FLAG_BLIND
#define FLAG_BLIND
Definition: define.h:336
buf
StringBuffer * buf
Definition: readable.cpp:1552
yyalloc
void * yyalloc(yy_size_t)
Definition: loader.c:5117
FLAG_ACTIVATE_ON_PUSH
#define FLAG_ACTIVATE_ON_PUSH
Definition: define.h:362
object_insert_in_ob
object * object_insert_in_ob(object *op, object *where)
Definition: object.cpp:2853
INITIAL
#define INITIAL
Definition: loader.c:2426
object::above
object * above
Definition: object.h:296
HUGE_BUF
#define HUGE_BUF
Definition: define.h:37
yy_hold_char
static char yy_hold_char
Definition: loader.c:268
FLAG_NO_PICK
#define FLAG_NO_PICK
Definition: define.h:239
ATNR_CONFUSION
#define ATNR_CONFUSION
Definition: attack.h:54
YY_EXTRA_TYPE
#define YY_EXTRA_TYPE
Definition: loader.c:2440
yy_buffer_state::yy_is_our_buffer
int yy_is_our_buffer
Definition: loader.c:206
ATNR_HOLYWORD
#define ATNR_HOLYWORD
Definition: attack.h:70
MAP_STYLE
#define MAP_STYLE
Definition: map.h:95
YY_READ_BUF_SIZE
#define YY_READ_BUF_SIZE
Definition: loader.c:2521
bufferreader_get_line
char * bufferreader_get_line(BufferReader *br, char *buffer, size_t length)
Definition: bufferreader.cpp:119
FLAG_ALIVE
#define FLAG_ALIVE
Definition: define.h:230
LO_NOREAD
#define LO_NOREAD
Definition: loader.h:18
FLAG_IS_A_TEMPLATE
#define FLAG_IS_A_TEMPLATE
Definition: define.h:366
yy_buffer_stack
static YY_BUFFER_STATE * yy_buffer_stack
Definition: loader.c:251
yy_last_accepting_cpos
static char * yy_last_accepting_cpos
Definition: loader.c:2037
ATNR_BLIND
#define ATNR_BLIND
Definition: attack.h:71
stringbuffer.h
FLAG_NO_ATTACK
#define FLAG_NO_ATTACK
Definition: define.h:355
FLAG_TEAR_DOWN
#define FLAG_TEAR_DOWN
Definition: define.h:279
YY_EXIT_FAILURE
#define YY_EXIT_FAILURE
Definition: loader.c:4928
yy_init_globals
static int yy_init_globals(void)
Definition: loader.c:5034
yy_ec
static const YY_CHAR yy_ec[256]
Definition: loader.c:598
yval
static char * yval(void)
Definition: loader.c:5153
arch_init
int arch_init
FLAG_WAS_WIZ
#define FLAG_WAS_WIZ
Definition: define.h:234
key_value::next
key_value * next
Definition: object.h:45
YY_RULE_SETUP
#define YY_RULE_SETUP
Definition: loader.c:2612
yy_nxt
static const flex_int16_t yy_nxt[3855]
Definition: loader.c:1180
yy_flush_buffer
void yy_flush_buffer(YY_BUFFER_STATE b)
Definition: loader.c:4687
yy_chk
static const flex_int16_t yy_chk[3855]
Definition: loader.c:1608
FLAG_USE_RANGE
#define FLAG_USE_RANGE
Definition: define.h:292
YY_NEW_FILE
#define YY_NEW_FILE
Definition: loader.c:127
FLAG_KNOWN_BLESSED
#define FLAG_KNOWN_BLESSED
Definition: define.h:370
MOVE_WALK
#define MOVE_WALK
Definition: define.h:392
FLAG_KNOWN_CURSED
#define FLAG_KNOWN_CURSED
Definition: define.h:320
flex_int16_t
short int flex_int16_t
Definition: loader.c:51
add_string
sstring add_string(const char *str)
Definition: shstr.cpp:124
yy_start
static int yy_start
Definition: loader.c:275
yylex
#define yylex
Definition: reader.c:23
yy_buffer_state::yy_fill_buffer
int yy_fill_buffer
Definition: loader.c:227
lorebuf
static char lorebuf[HUGE_BUF]
Definition: loader.c:2081
yy_fatal_error
static void yynoreturn yy_fatal_error(const char *msg)
Definition: loader.c:4931
YY_INPUT
#define YY_INPUT(buf, result, max_size)
Definition: loader.c:2537
object::below
object * below
Definition: object.h:295
make_face_from_files.str
str
Definition: make_face_from_files.py:30
YY_BUF_SIZE
#define YY_BUF_SIZE
Definition: loader.c:139
BEGIN
#define BEGIN
Definition: loader.c:117
yy_buffer_stack_max
static size_t yy_buffer_stack_max
Definition: loader.c:250
SET_RESIST
#define SET_RESIST(op, type, val)
Definition: loader.c:2087
ECHO
#define ECHO
Definition: loader.c:2530
FLAG_MAKE_INVIS
#define FLAG_MAKE_INVIS
Definition: define.h:328
navar-midane_pickup.msg
list msg
Definition: navar-midane_pickup.py:13
MOVE_FLYING
#define MOVE_FLYING
Definition: define.h:395
YY_DECL
#define YY_DECL
Definition: loader.c:2074
object_update_speed
void object_update_speed(object *op)
Definition: object.cpp:1349
FLAG_NO_DAMAGE
#define FLAG_NO_DAMAGE
Definition: define.h:356
FREE_AND_COPY
#define FREE_AND_COPY(sv, nv)
Definition: global.h:204
yy_load_buffer_state
static void yy_load_buffer_state(void)
Definition: loader.c:4598
Ice.b
b
Definition: Ice.py:48
yy_buffer_state::yy_buf_size
int yy_buf_size
Definition: loader.c:195
FLAG_IS_WOODED
#define FLAG_IS_WOODED
Definition: define.h:330
is_type_valid
int is_type_valid(uint8_t type)
Definition: arch_types_valid.c:17
yy_cp
char * yy_cp
Definition: loader.c:2623
CONVERTER
@ CONVERTER
Definition: object.h:221
FLAG_DAMNED
#define FLAG_DAMNED
Definition: define.h:317
yy_base
static const flex_int16_t yy_base[2419]
Definition: loader.c:640
yy_buffer_state::yy_ch_buf
char * yy_ch_buf
Definition: loader.c:189
ATNR_DRAIN
#define ATNR_DRAIN
Definition: attack.h:56
yy_n_chars
static int yy_n_chars
Definition: loader.c:269
FLAG_PARALYZED
#define FLAG_PARALYZED
Definition: define.h:371
yyrealloc
void * yyrealloc(void *, yy_size_t)
Definition: loader.c:5122
FLAG_USE_SHIELD
#define FLAG_USE_SHIELD
Definition: define.h:237
FLAG_WIZPASS
#define FLAG_WIZPASS
Definition: define.h:314
FLAG_CAN_ROLL
#define FLAG_CAN_ROLL
Definition: define.h:254
yy_start_stack_ptr
static int yy_start_stack_ptr
Definition: loader.c:2507
FLAG_UNAGGRESSIVE
#define FLAG_UNAGGRESSIVE
Definition: define.h:272
ATNR_COUNTERSPELL
#define ATNR_COUNTERSPELL
Definition: attack.h:68
yyget_text
char * yyget_text(void)
Definition: loader.c:4993
body_locations
body_locations_struct body_locations[NUM_BODY_LOCATIONS]
Definition: item.cpp:54
archetype
Definition: object.h:474
ATNR_POISON
#define ATNR_POISON
Definition: attack.h:59
FLAG_USE_WEAPON
#define FLAG_USE_WEAPON
Definition: define.h:296
sproto.h
FLAG_NO_DROP
#define FLAG_NO_DROP
Definition: define.h:288
ATNR_DEATH
#define ATNR_DEATH
Definition: attack.h:66
flex_uint8_t
unsigned char flex_uint8_t
Definition: loader.c:53
FLAG_CAN_USE_SKILL
#define FLAG_CAN_USE_SKILL
Definition: define.h:321
yywrap
#define yywrap()
Definition: loader.c:326
FLAG_NO_STEAL
#define FLAG_NO_STEAL
Definition: define.h:342
YY_END_OF_BUFFER_CHAR
#define YY_END_OF_BUFFER_CHAR
Definition: loader.c:128
yylex_destroy
int yylex_destroy(void)
Definition: loader.c:5067
add_button_link
void add_button_link(object *button, mapstruct *map, int connected)
Definition: button.cpp:656
YY_DO_BEFORE_ACTION
#define YY_DO_BEFORE_ACTION
Definition: loader.c:351
FLAG_SPLITTING
#define FLAG_SPLITTING
Definition: define.h:266
FLAG_MONSTER
#define FLAG_MONSTER
Definition: define.h:245
FLAG_RANDOM_MOVE
#define FLAG_RANDOM_MOVE
Definition: define.h:309
FLAG_HITBACK
#define FLAG_HITBACK
Definition: define.h:267
YY_BUFFER_NEW
#define YY_BUFFER_NEW
Definition: loader.c:231
move_name
const char *const move_name[]
Definition: object.cpp:4828
object_new
object * object_new(void)
Definition: object.cpp:1273
yy_init
static int yy_init
Definition: loader.c:274
IS_WEAPON
#define IS_WEAPON(op)
Definition: define.h:163
free_string
void free_string(sstring str)
Definition: shstr.cpp:280
yyget_extra
YY_EXTRA_TYPE yyget_extra(void)
RANDOM
#define RANDOM()
Definition: define.h:644
free_loader
void free_loader(void)
Definition: loader.c:5333
ATNR_FIRE
#define ATNR_FIRE
Definition: attack.h:51
FLAG_CLIENT_ANIM_SYNC
#define FLAG_CLIENT_ANIM_SYNC
Definition: define.h:240
YY_FATAL_ERROR
#define YY_FATAL_ERROR(msg)
Definition: loader.c:2584
FLAG_KNOWN_MAGICAL
#define FLAG_KNOWN_MAGICAL
Definition: define.h:319
msglen
size_t msglen
Definition: loader.c:2080
yy_init_buffer
static void yy_init_buffer(YY_BUFFER_STATE b, FILE *file)
Definition: loader.c:4659
yy_scan_string
YY_BUFFER_STATE yy_scan_string(const char *yy_str)
Definition: loader.c:4851
FLAG_READY_SKILL
#define FLAG_READY_SKILL
Definition: define.h:333
FLAG_READY_BOW
#define FLAG_READY_BOW
Definition: define.h:299
yyget_leng
int yyget_leng(void)
Definition: loader.c:4984
FLAG_REFL_SPELL
#define FLAG_REFL_SPELL
Definition: define.h:275
FLAG_WIZ
#define FLAG_WIZ
Definition: define.h:231
MAXDEPTH
#define MAXDEPTH
yyset_out
void yyset_out(FILE *_out_str)
Definition: loader.c:5019
lex_error
static int lex_error
Definition: loader.c:2078
yy_delete_buffer
void yy_delete_buffer(YY_BUFFER_STATE b)
Definition: loader.c:4640
FLAG_FRIENDLY
#define FLAG_FRIENDLY
Definition: define.h:246
yy_buffer_state::yy_buffer_status
int yy_buffer_status
Definition: loader.c:229
ATNR_CHAOS
#define ATNR_CHAOS
Definition: attack.h:67
yy_buffer_state::yy_buf_pos
char * yy_buf_pos
Definition: loader.c:190
EOB_ACT_END_OF_FILE
#define EOB_ACT_END_OF_FILE
Definition: loader.c:162
yy_accept
static const flex_int16_t yy_accept[2079]
Definition: loader.c:366
flex_int8_t
signed char flex_int8_t
Definition: loader.c:50
yyrestart
void yyrestart(FILE *input_file)
Definition: loader.c:4550
add_friendly_object
void add_friendly_object(object *op)
Definition: friend.cpp:32
yy_trans_info::yy_nxt
flex_int32_t yy_nxt
Definition: loader.c:364
ATNR_DEPLETE
#define ATNR_DEPLETE
Definition: attack.h:65
FLAG_USE_ARMOUR
#define FLAG_USE_ARMOUR
Definition: define.h:295
FLAG_CAST_SPELL
#define FLAG_CAST_SPELL
Definition: define.h:290
FLAG_IS_BUILDABLE
#define FLAG_IS_BUILDABLE
Definition: define.h:367
create_archetype_by_object_name
object * create_archetype_by_object_name(const char *name)
Definition: arch.cpp:116
newserver.h
LO_LINEMODE
#define LO_LINEMODE
Definition: loader.h:16
yy_trans_info::yy_verify
flex_int32_t yy_verify
Definition: loader.c:363
yyset_lineno
void yyset_lineno(int _line_number)
Definition: loader.c:5002
give.op
op
Definition: give.py:33
yy_buffer_state::yy_bs_column
int yy_bs_column
Definition: loader.c:222
autojail.value
value
Definition: autojail.py:6
FLAG_AUTO_APPLY
#define FLAG_AUTO_APPLY
Definition: define.h:250
yy_buffer_state::yy_n_chars
int yy_n_chars
Definition: loader.c:200
find_archetype
archetype * find_archetype(const char *name)
Definition: assets.cpp:266
yypop_buffer_state
void yypop_buffer_state(void)
Definition: loader.c:4746
FLAG_ACTIVATE_ON_RELEASE
#define FLAG_ACTIVATE_ON_RELEASE
Definition: define.h:363
yyout
FILE * yyout
Definition: loader.c:159
convert.dest
dest
Definition: convert.py:25
object_set_msg
void object_set_msg(object *op, const char *msg)
Definition: object.cpp:4807
FLAG_REFLECTING
#define FLAG_REFLECTING
Definition: define.h:262
reverse_ob_key_values
static void reverse_ob_key_values(object *op)
Definition: loader.c:2128
ATNR_MAGIC
#define ATNR_MAGIC
Definition: attack.h:50
FLAG_NO_FIX_PLAYER
#define FLAG_NO_FIX_PLAYER
Definition: define.h:277
roll-o-matic.params
params
Definition: roll-o-matic.py:193
yy_buffer_state::yy_is_interactive
int yy_is_interactive
Definition: loader.c:213
yyleng
int yyleng
Definition: loader.c:270
diamondslots.y
y
Definition: diamondslots.py:16
FLAG_BEEN_APPLIED
#define FLAG_BEEN_APPLIED
Definition: define.h:323
yyget_in
FILE * yyget_in(void)
Definition: loader.c:4968
CLEAR_FLAG
#define CLEAR_FLAG(xyz, p)
Definition: define.h:225
yy_buffer_stack_top
static size_t yy_buffer_stack_top
Definition: loader.c:249
set_move
static void set_move(MoveType *mt, char *params, const char *prefix)
Definition: loader.c:2371
yy_scan_buffer
YY_BUFFER_STATE yy_scan_buffer(char *base, yy_size_t size)
Definition: loader.c:4814
find_animation
Animations * find_animation(const char *name)
Definition: assets.cpp:274
yy_last_accepting_state
static yy_state_type yy_last_accepting_state
Definition: loader.c:2036
yyget_lineno
int yyget_lineno(void)
Definition: loader.c:4959
object_give_identified_properties
void object_give_identified_properties(object *op)
Definition: item.cpp:1360
yyin
FILE * yyin
Definition: loader.c:330
yy_switch_to_buffer
void yy_switch_to_buffer(YY_BUFFER_STATE new_buffer)
Definition: loader.c:4567
ATNR_WEAPONMAGIC
#define ATNR_WEAPONMAGIC
Definition: attack.h:57
EOB_ACT_CONTINUE_SCAN
#define EOB_ACT_CONTINUE_SCAN
Definition: loader.c:161
strcasecmp
int strcasecmp(const char *s1, const char *s2)
castle_read.key
key
Definition: castle_read.py:64
make_face_from_files.int
int
Definition: make_face_from_files.py:32
MIN_ACTIVE_SPEED
#define MIN_ACTIVE_SPEED
Definition: define.h:639
FLAG_IS_USED_UP
#define FLAG_IS_USED_UP
Definition: define.h:260
FLAG_ANIMATE
#define FLAG_ANIMATE
Definition: define.h:242
seen_object
static bool seen_object
Definition: loader.c:2102
loader.h
yy_get_previous_state
static yy_state_type yy_get_previous_state(void)
Definition: loader.c:4409
FLAG_SEE_ANYWHERE
#define FLAG_SEE_ANYWHERE
Definition: define.h:318
FLAG_BERSERK
#define FLAG_BERSERK
Definition: define.h:352
FLAG_IS_HILLY
#define FLAG_IS_HILLY
Definition: define.h:332
IVAL
#define IVAL
Definition: loader.c:2091
FLAG_TREASURE
#define FLAG_TREASURE
Definition: define.h:251
YY_STATE_EOF
#define YY_STATE_EOF(state)
Definition: loader.c:125
yy_flex_debug
int yy_flex_debug
Definition: loader.c:2040
FLAG_UNPAID
#define FLAG_UNPAID
Definition: define.h:236
FLAG_NO_STRENGTH
#define FLAG_NO_STRENGTH
Definition: define.h:306
yy_def
static const flex_int16_t yy_def[2419]
Definition: loader.c:910
YY_BUFFER_STATE
struct yy_buffer_state * YY_BUFFER_STATE
Definition: loader.c:149
LL_NORMAL
#define LL_NORMAL
Definition: loader.h:12
yy_get_next_buffer
static int yy_get_next_buffer(void)
Definition: loader.c:4271
VERY_BIG_BUF
#define VERY_BIG_BUF
Definition: define.h:36
YY_MORE_ADJ
#define YY_MORE_ADJ
Definition: loader.c:2047
ATNR_GHOSTHIT
#define ATNR_GHOSTHIT
Definition: attack.h:58
ATNR_COLD
#define ATNR_COLD
Definition: attack.h:53
FLAG_XRAYS
#define FLAG_XRAYS
Definition: define.h:300
YY_END_OF_BUFFER
#define YY_END_OF_BUFFER
Definition: loader.c:358
yyset_in
void yyset_in(FILE *_in_str)
Definition: loader.c:5014
MESSAGE
#define MESSAGE
Definition: loader.c:2427
EOB_ACT_LAST_MATCH
#define EOB_ACT_LAST_MATCH
Definition: loader.c:163
artifact
Definition: artifact.h:14
object_set_value
int object_set_value(object *op, const char *key, const char *value, int add_key)
Definition: object.cpp:4495
artifact_init
int artifact_init
FLAG_IS_LIGHTABLE
#define FLAG_IS_LIGHTABLE
Definition: define.h:278
FLAG_IS_CAULDRON
#define FLAG_IS_CAULDRON
Definition: define.h:338
yyget_out
FILE * yyget_out(void)
Definition: loader.c:4976
TRUE
#define TRUE
Definition: compat.h:11
FLAG_CHANGING
#define FLAG_CHANGING
Definition: define.h:263
ATNR_ELECTRICITY
#define ATNR_ELECTRICITY
Definition: attack.h:52
set_body_info
static void set_body_info(object *op, char *params)
Definition: loader.c:2149
FLAG_READY_WEAPON
#define FLAG_READY_WEAPON
Definition: define.h:334
guildbuy.temp
def temp
Definition: guildbuy.py:26
FLAG_NO_SKILL_IDENT
#define FLAG_NO_SKILL_IDENT
Definition: define.h:335
FLAG_USE_SCROLL
#define FLAG_USE_SCROLL
Definition: define.h:291
FLAG_CURSED
#define FLAG_CURSED
Definition: define.h:316
ATNR_LIFE_STEALING
#define ATNR_LIFE_STEALING
Definition: attack.h:73
YY_BREAK
#define YY_BREAK
Definition: loader.c:2609
BufferReader
Definition: bufferreader.cpp:21
flex_uint16_t
unsigned short int flex_uint16_t
Definition: loader.c:54
FLAG_IS_THROWN
#define FLAG_IS_THROWN
Definition: define.h:249
FLAG_SLEEP
#define FLAG_SLEEP
Definition: define.h:307
YY_START
#define YY_START
Definition: loader.c:122
SPELLBOOK
@ SPELLBOOK
Definition: object.h:208
map_layer_name
const char *const map_layer_name[MAP_LAYERS]
Definition: map.cpp:45
yy_start_stack
static int * yy_start_stack
Definition: loader.c:2509
yytext
char * yytext
Definition: loader.c:2049
add_key_value
static void add_key_value(object *op)
Definition: loader.c:2300
FLAG_IS_WATER
#define FLAG_IS_WATER
Definition: define.h:364
yy_buffer_state::yy_bs_lineno
int yy_bs_lineno
Definition: loader.c:221
yy_act
int yy_act
Definition: loader.c:2624
object_can_merge
int object_can_merge(object *ob1, object *ob2)
Definition: object.cpp:433
llevDebug
@ llevDebug
Definition: logger.h:13
FLAG_LIFESAVE
#define FLAG_LIFESAVE
Definition: define.h:305
FLAG_IS_FLOOR
#define FLAG_IS_FLOOR
Definition: define.h:302
yy_did_buffer_switch_on_eof
static int yy_did_buffer_switch_on_eof
Definition: loader.c:280
FLAG_IDENTIFIED
#define FLAG_IDENTIFIED
Definition: define.h:261
give.name
name
Definition: give.py:27
LL_MORE
#define LL_MORE
Definition: loader.h:11
YY_START_STACK_INCR
#define YY_START_STACK_INCR
Definition: loader.c:2579
FVAL
#define FVAL
Definition: loader.c:2093
ATNR_FEAR
#define ATNR_FEAR
Definition: attack.h:63
YY_BUFFER_NORMAL
#define YY_BUFFER_NORMAL
Definition: loader.c:232
LL_EOF
#define LL_EOF
Definition: loader.h:10
LORE
#define LORE
Definition: loader.c:2428