w32tex
About: TeX Live provides a comprehensive TeX system including all the major TeX-related programs, macro packages, and fonts that are free software. Windows sources.
  Fossies Dox: w32tex-src.tar.xz  ("unofficial" and yet experimental doxygen-generated source code documentation)  

detex.c
Go to the documentation of this file.
1 /*
2  * Copyright (c) 1986-2007 Purdue University
3  * All rights reserved.
4  *
5  * Developed by: Daniel Trinkle
6  * Department of Computer Science, Purdue University
7  * http://www.cs.purdue.edu/
8  *
9  * Permission is hereby granted, free of charge, to any person obtaining
10  * a copy of this software and associated documentation files (the
11  * "Software"), to deal with the Software without restriction, including
12  * without limitation the rights to use, copy, modify, merge, publish,
13  * distribute, sublicense, and/or sell copies of the Software, and to
14  * permit persons to whom the Software is furnished to do so, subject to
15  * the following conditions:
16  *
17  * o Redistributions of source code must retain the above copyright
18  * notice, this list of conditions and the following disclaimers.
19  *
20  * o Redistributions in binary form must reproduce the above copyright
21  * notice, this list of conditions and the following disclaimers in the
22  * documentation and/or other materials provided with the distribution.
23  *
24  * o Neither the names of Daniel Trinkle, Purdue University, nor the
25  * names of its contributors may be used to endorse or promote products
26  * derived from this Software without specific prior written
27  * permission.
28  *
29  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
30  * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
31  * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
32  * IN NO EVENT SHALL THE CONTRIBUTORS OR COPYRIGHT HOLDERS BE LIABLE FOR
33  * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
34  * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
35  * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS WITH THE SOFTWARE.
36  */
37 
38 /*
39  * detex [-e environment-list] [-c] [-l] [-n] [-s] [-t] [-w] [-1] [file[.tex] ]
40  *
41  * This program is used to remove TeX or LaTeX constructs from a text
42  * file.
43  */
44 
45 #include "detex.h"
46 
47 #ifdef KPATHSEA
48 
49 #include <c-auto.h>
50 #include <kpathsea/c-auto.h>
51 #include <kpathsea/config.h>
52 #include <kpathsea/c-memstr.h>
53 #include <kpathsea/c-pathmx.h>
54 #include <kpathsea/c-std.h>
55 #include <kpathsea/tex-file.h>
56 
57 #ifdef HAVE_SYS_PARAM_H
58 #include <sys/param.h>
59 #endif
60 
61 #else /* KPATHSEA */
62 
63 #ifdef HAVE_STRING_H
64 #include <string.h>
65 #else
66 #include <strings.h>
67 #define strrchr rindex
68 #endif
69 
70 #ifdef HAVE_LIMITS_H
71 #include <limits.h>
72 #else
73 #include <sys/param.h>
74 #ifndef PATH_MAX /* for old BSD */
75 #define PATH_MAX MAXPATHLEN
76 #endif
77 #endif /* HAVE_LIMITS_H */
78 
79 #ifdef OS2
80 #include <stdlib.h>
81 #endif
82 
83 #ifdef WIN32
84 #include <fcntl.h>
85 #include <io.h>
86 #endif
87 
88 #endif /* KPATHSEA */
89 
90 #line 91 "lex.yy.c"
91 
92 #define YY_INT_ALIGNED short int
93 
94 /* A lexical scanner generated by flex */
95 
96 #define FLEX_SCANNER
97 #define YY_FLEX_MAJOR_VERSION 2
98 #define YY_FLEX_MINOR_VERSION 6
99 #define YY_FLEX_SUBMINOR_VERSION 4
100 #if YY_FLEX_SUBMINOR_VERSION > 0
101 #define FLEX_BETA
102 #endif
103 
104 /* First, we deal with platform-specific or compiler-specific issues. */
105 
106 /* begin standard C headers. */
107 #include <stdio.h>
108 #include <string.h>
109 #include <errno.h>
110 #include <stdlib.h>
111 
112 /* end standard C headers. */
113 
114 /* flex integer type definitions */
115 
116 #ifndef FLEXINT_H
117 #define FLEXINT_H
118 
119 /* C99 systems have <inttypes.h>. Non-C99 systems may or may not. */
120 
121 #if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
122 
123 /* C99 says to define __STDC_LIMIT_MACROS before including stdint.h,
124  * if you want the limit (max/min) macros for int types.
125  */
126 #ifndef __STDC_LIMIT_MACROS
127 #define __STDC_LIMIT_MACROS 1
128 #endif
129 
130 #include <inttypes.h>
131 typedef int8_t flex_int8_t;
132 typedef uint8_t flex_uint8_t;
133 typedef int16_t flex_int16_t;
134 typedef uint16_t flex_uint16_t;
135 typedef int32_t flex_int32_t;
136 typedef uint32_t flex_uint32_t;
137 #else
138 typedef signed char flex_int8_t;
139 typedef short int flex_int16_t;
140 typedef int flex_int32_t;
141 typedef unsigned char flex_uint8_t;
142 typedef unsigned short int flex_uint16_t;
143 typedef unsigned int flex_uint32_t;
144 
145 /* Limits of integral types. */
146 #ifndef INT8_MIN
147 #define INT8_MIN (-128)
148 #endif
149 #ifndef INT16_MIN
150 #define INT16_MIN (-32767-1)
151 #endif
152 #ifndef INT32_MIN
153 #define INT32_MIN (-2147483647-1)
154 #endif
155 #ifndef INT8_MAX
156 #define INT8_MAX (127)
157 #endif
158 #ifndef INT16_MAX
159 #define INT16_MAX (32767)
160 #endif
161 #ifndef INT32_MAX
162 #define INT32_MAX (2147483647)
163 #endif
164 #ifndef UINT8_MAX
165 #define UINT8_MAX (255U)
166 #endif
167 #ifndef UINT16_MAX
168 #define UINT16_MAX (65535U)
169 #endif
170 #ifndef UINT32_MAX
171 #define UINT32_MAX (4294967295U)
172 #endif
173 
174 #ifndef SIZE_MAX
175 #define SIZE_MAX (~(size_t)0)
176 #endif
177 
178 #endif /* ! C99 */
179 
180 #endif /* ! FLEXINT_H */
181 
182 /* begin standard C++ headers. */
183 
184 /* TODO: this is always defined, so inline it */
185 #define yyconst const
186 
187 #if defined(__GNUC__) && __GNUC__ >= 3
188 #define yynoreturn __attribute__((__noreturn__))
189 #else
190 #define yynoreturn
191 #endif
192 
193 /* Returned upon end-of-file. */
194 #define YY_NULL 0
195 
196 /* Promotes a possibly negative, possibly signed char to an
197  * integer in range [0..255] for use as an array index.
198  */
199 #define YY_SC_TO_UI(c) ((YY_CHAR) (c))
200 
201 /* Enter a start condition. This macro really ought to take a parameter,
202  * but we do it the disgusting crufty way forced on us by the ()-less
203  * definition of BEGIN.
204  */
205 #define BEGIN (yy_start) = 1 + 2 *
206 /* Translate the current start state into a value that can be later handed
207  * to BEGIN to return to the state. The YYSTATE alias is for lex
208  * compatibility.
209  */
210 #define YY_START (((yy_start) - 1) / 2)
211 #define YYSTATE YY_START
212 /* Action number for EOF rule of a given start state. */
213 #define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)
214 /* Special action meaning "start processing a new file". */
215 #define YY_NEW_FILE yyrestart( yyin )
216 #define YY_END_OF_BUFFER_CHAR 0
217 
218 /* Size of default input buffer. */
219 #ifndef YY_BUF_SIZE
220 #ifdef __ia64__
221 /* On IA-64, the buffer size is 16k, not 8k.
222  * Moreover, YY_BUF_SIZE is 2*YY_READ_BUF_SIZE in the general case.
223  * Ditto for the __ia64__ case accordingly.
224  */
225 #define YY_BUF_SIZE 32768
226 #else
227 #define YY_BUF_SIZE 16384
228 #endif /* __ia64__ */
229 #endif
230 
231 /* The state buf must be large enough to hold one state per character in the main buffer.
232  */
233 #define YY_STATE_BUF_SIZE ((YY_BUF_SIZE + 2) * sizeof(yy_state_type))
234 
235 #ifndef YY_TYPEDEF_YY_BUFFER_STATE
236 #define YY_TYPEDEF_YY_BUFFER_STATE
238 #endif
239 
240 #ifndef YY_TYPEDEF_YY_SIZE_T
241 #define YY_TYPEDEF_YY_SIZE_T
242 typedef size_t yy_size_t;
243 #endif
244 
245 extern int yyleng;
246 
247 extern FILE *yyin, *yyout;
248 
249 #define EOB_ACT_CONTINUE_SCAN 0
250 #define EOB_ACT_END_OF_FILE 1
251 #define EOB_ACT_LAST_MATCH 2
252 
253  #define YY_LESS_LINENO(n)
254  #define YY_LINENO_REWIND_TO(ptr)
255 
256 /* Return all but the first "n" matched characters back to the input stream. */
257 #define yyless(n) \
258  do \
259  { \
260  /* Undo effects of setting up yytext. */ \
261  int yyless_macro_arg = (n); \
262  YY_LESS_LINENO(yyless_macro_arg);\
263  *yy_cp = (yy_hold_char); \
264  YY_RESTORE_YY_MORE_OFFSET \
265  (yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \
266  YY_DO_BEFORE_ACTION; /* set up yytext again */ \
267  } \
268  while ( 0 )
269 #define unput(c) yyunput( c, (yytext_ptr) )
270 
271 #ifndef YY_STRUCT_YY_BUFFER_STATE
272 #define YY_STRUCT_YY_BUFFER_STATE
274  {
276 
277  char *yy_ch_buf; /* input buffer */
278  char *yy_buf_pos; /* current position in input buffer */
279 
280  /* Size of input buffer in bytes, not including room for EOB
281  * characters.
282  */
284 
285  /* Number of characters read into yy_ch_buf, not including EOB
286  * characters.
287  */
289 
290  /* Whether we "own" the buffer - i.e., we know we created it,
291  * and can realloc() it to grow it, and should free() it to
292  * delete it.
293  */
295 
296  /* Whether this is an "interactive" input source; if so, and
297  * if we're using stdio for input, then we want to use getc()
298  * instead of fread(), to make sure we stop fetching input after
299  * each newline.
300  */
302 
303  /* Whether we're considered to be at the beginning of a line.
304  * If so, '^' rules will be active on the next match, otherwise
305  * not.
306  */
308 
309  int yy_bs_lineno; /**< The line count. */
310  int yy_bs_column; /**< The column count. */
311 
312  /* Whether to try to fill the input buffer when we reach the
313  * end of it.
314  */
316 
318 
319 #define YY_BUFFER_NEW 0
320 #define YY_BUFFER_NORMAL 1
321  /* When an EOF's been seen but there's still some text to process
322  * then we mark the buffer as YY_EOF_PENDING, to indicate that we
323  * shouldn't try reading from the input source any more. We might
324  * still have a bunch of tokens to match, though, because of
325  * possible backing-up.
326  *
327  * When we actually see the EOF, we change the status to "new"
328  * (via yyrestart()), so that the user can continue scanning by
329  * just pointing yyin at a new input file.
330  */
331 #define YY_BUFFER_EOF_PENDING 2
332 
333  };
334 #endif /* !YY_STRUCT_YY_BUFFER_STATE */
335 
336 /* Stack of input buffers. */
337 static size_t yy_buffer_stack_top = 0; /**< index of top of stack. */
338 static size_t yy_buffer_stack_max = 0; /**< capacity of stack. */
339 static YY_BUFFER_STATE * yy_buffer_stack = NULL; /**< Stack as an array. */
340 
341 /* We provide macros for accessing buffer states in case in the
342  * future we want to put the buffer states in a more general
343  * "scanner state".
344  *
345  * Returns the top of the stack, or NULL.
346  */
347 #define YY_CURRENT_BUFFER ( (yy_buffer_stack) \
348  ? (yy_buffer_stack)[(yy_buffer_stack_top)] \
349  : NULL)
350 /* Same as previous macro, but useful when we know that the buffer stack is not
351  * NULL or when we need an lvalue. For internal use only.
352  */
353 #define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)]
354 
355 /* yy_hold_char holds the character lost when yytext is formed. */
356 static char yy_hold_char;
357 static int yy_n_chars; /* number of characters read into yy_ch_buf */
358 int yyleng;
359 
360 /* Points to current character in buffer. */
361 static char *yy_c_buf_p = NULL;
362 static int yy_init = 0; /* whether we need to initialize */
363 static int yy_start = 0; /* start state number */
364 
365 /* Flag which is used to allow yywrap()'s to do buffer switches
366  * instead of setting up a fresh yyin. A bit of a hack ...
367  */
369 
370 void yyrestart ( FILE *input_file );
371 void yy_switch_to_buffer ( YY_BUFFER_STATE new_buffer );
375 void yypush_buffer_state ( YY_BUFFER_STATE new_buffer );
376 void yypop_buffer_state ( void );
377 
378 static void yyensure_buffer_stack ( void );
379 static void yy_load_buffer_state ( void );
380 static void yy_init_buffer ( YY_BUFFER_STATE b, FILE *file );
381 #define YY_FLUSH_BUFFER yy_flush_buffer( YY_CURRENT_BUFFER )
382 
384 YY_BUFFER_STATE yy_scan_string ( const char *yy_str );
385 YY_BUFFER_STATE yy_scan_bytes ( const char *bytes, int len );
386 
387 void *yyalloc ( yy_size_t );
388 void *yyrealloc ( void *, yy_size_t );
389 void yyfree ( void * );
390 
391 #define yy_new_buffer yy_create_buffer
392 #define yy_set_interactive(is_interactive) \
393  { \
394  if ( ! YY_CURRENT_BUFFER ){ \
395  yyensure_buffer_stack (); \
396  YY_CURRENT_BUFFER_LVALUE = \
397  yy_create_buffer( yyin, YY_BUF_SIZE ); \
398  } \
399  YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \
400  }
401 #define yy_set_bol(at_bol) \
402  { \
403  if ( ! YY_CURRENT_BUFFER ){\
404  yyensure_buffer_stack (); \
405  YY_CURRENT_BUFFER_LVALUE = \
406  yy_create_buffer( yyin, YY_BUF_SIZE ); \
407  } \
408  YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \
409  }
410 #define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol)
411 
412 /* Begin user sect3 */
414 
416 
417 typedef int yy_state_type;
418 
419 extern int yylineno;
420 int yylineno = 1;
421 
422 extern char *yytext;
423 #ifdef yytext_ptr
424 #undef yytext_ptr
425 #endif
426 #define yytext_ptr yytext
427 
428 static yy_state_type yy_get_previous_state ( void );
430 static int yy_get_next_buffer ( void );
431 static void yynoreturn yy_fatal_error ( const char* msg );
432 
433 /* Done after the current pattern has been matched and before the
434  * corresponding action - sets up yytext.
435  */
436 #define YY_DO_BEFORE_ACTION \
437  (yytext_ptr) = yy_bp; \
438  yyleng = (int) (yy_cp - yy_bp); \
439  (yy_hold_char) = *yy_cp; \
440  *yy_cp = '\0'; \
441  (yy_c_buf_p) = yy_cp;
442 #define YY_NUM_RULES 174
443 #define YY_END_OF_BUFFER 175
444 /* This struct is not used in this scanner,
445  but its presence is necessary. */
447  {
450  };
451 static const flex_int16_t yy_accept[1362] =
452  { 0,
453  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
454  0, 0, 0, 0, 145, 145, 0, 0, 0, 0,
455  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
456  0, 0, 167, 167, 0, 0, 0, 0, 0, 0,
457  140, 140, 0, 0, 175, 174, 92, 91, 90, 107,
458  105, 107, 106, 107, 107, 119, 122, 121, 120, 128,
459  130, 129, 113, 110, 109, 112, 113, 113, 159, 159,
460  160, 159, 159, 108, 1, 159, 159, 159, 158, 159,
461  147, 152, 155, 147, 156, 149, 146, 145, 143, 142,
462  146, 146, 144, 12, 12, 174, 11, 12, 102, 100,
463 
464  101, 102, 102, 18, 16, 17, 15, 14, 15, 97,
465  95, 96, 97, 97, 115, 117, 116, 124, 126, 125,
466  165, 162, 163, 164, 167, 166, 171, 168, 169, 170,
467  173, 172, 6, 6, 7, 140, 44, 43, 46, 104,
468  0, 0, 0, 0, 0, 0, 0, 119, 121, 128,
469  129, 111, 0, 0, 0, 0, 0, 0, 0, 161,
470  0, 148, 103, 1, 153, 154, 150, 158, 0, 157,
471  139, 137, 132, 93, 136, 136, 136, 136, 98, 138,
472  136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
473  136, 136, 136, 136, 136, 136, 136, 136, 151, 0,
474 
475  0, 0, 145, 144, 142, 142, 0, 141, 0, 0,
476  11, 0, 0, 0, 0, 0, 99, 0, 0, 0,
477  0, 0, 0, 0, 16, 14, 0, 94, 0, 0,
478  0, 0, 0, 0, 0, 115, 116, 124, 125, 164,
479  167, 6, 0, 44, 0, 45, 0, 106, 0, 0,
480  0, 0, 0, 0, 0, 112, 0, 0, 0, 0,
481  0, 0, 0, 150, 157, 136, 136, 134, 134, 138,
482  0, 136, 136, 136, 136, 136, 136, 136, 136, 136,
483  136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
484  136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
485 
486  136, 136, 136, 136, 136, 136, 0, 0, 0, 0,
487  0, 0, 0, 0, 101, 0, 0, 0, 0, 0,
488  0, 0, 0, 96, 0, 0, 0, 0, 0, 0,
489  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
490  133, 133, 0, 138, 136, 136, 136, 136, 136, 136,
491  89, 136, 71, 136, 136, 136, 136, 136, 136, 136,
492  136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
493  136, 78, 136, 136, 136, 136, 136, 136, 136, 136,
494  136, 136, 136, 136, 136, 136, 136, 136, 136, 0,
495  0, 0, 0, 0, 0, 0, 0, 0, 0, 13,
496 
497  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
498  0, 0, 0, 0, 136, 136, 136, 136, 136, 136,
499  136, 136, 136, 67, 136, 136, 136, 136, 136, 136,
500  136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
501  136, 136, 136, 136, 136, 136, 136, 136, 57, 136,
502  136, 136, 136, 136, 136, 33, 136, 136, 136, 136,
503  136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
504  85, 136, 136, 25, 0, 0, 0, 0, 0, 0,
505  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
506  0, 0, 0, 0, 0, 0, 67, 136, 136, 136,
507 
508  136, 3, 136, 136, 136, 136, 48, 136, 136, 136,
509  136, 136, 136, 136, 136, 136, 136, 73, 127, 0,
510  0, 0, 0, 0, 74, 136, 136, 136, 136, 136,
511  136, 136, 136, 136, 136, 136, 57, 136, 136, 136,
512  136, 136, 136, 136, 136, 136, 136, 136, 131, 136,
513  136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
514  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
515  0, 0, 0, 0, 106, 0, 112, 0, 136, 136,
516  136, 136, 136, 0, 0, 136, 136, 136, 136, 136,
517  136, 136, 136, 136, 136, 136, 0, 0, 0, 0,
518 
519  0, 136, 136, 136, 0, 0, 0, 0, 0, 0,
520  0, 0, 0, 0, 0, 19, 136, 136, 136, 136,
521  136, 136, 136, 136, 136, 136, 136, 37, 136, 136,
522  136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
523  136, 136, 136, 136, 136, 136, 136, 136, 35, 136,
524  0, 0, 0, 0, 0, 136, 0, 0, 0, 0,
525  0, 101, 0, 96, 0, 0, 0, 0, 136, 136,
526  136, 136, 136, 0, 0, 64, 136, 136, 58, 136,
527  136, 136, 136, 136, 136, 136, 0, 0, 0, 0,
528  0, 0, 0, 0, 0, 0, 0, 22, 0, 0,
529 
530  0, 136, 114, 0, 19, 19, 136, 75, 136, 136,
531  136, 136, 136, 136, 76, 136, 136, 136, 136, 136,
532  136, 136, 34, 136, 59, 136, 136, 136, 136, 136,
533  136, 123, 136, 136, 136, 136, 136, 136, 0, 0,
534  0, 0, 0, 0, 0, 0, 0, 0, 0, 20,
535  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
536  0, 0, 136, 136, 136, 136, 136, 0, 136, 66,
537  58, 50, 136, 136, 136, 53, 83, 136, 0, 22,
538  22, 22, 22, 0, 0, 0, 0, 0, 136, 136,
539  136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
540 
541  36, 136, 136, 136, 136, 38, 59, 136, 136, 136,
542  136, 136, 136, 136, 136, 136, 136, 136, 136, 0,
543  20, 20, 20, 20, 0, 0, 0, 0, 0, 0,
544  0, 0, 0, 0, 0, 136, 136, 136, 136, 136,
545  0, 136, 136, 136, 136, 51, 0, 84, 0, 0,
546  22, 22, 0, 0, 0, 0, 0, 0, 0, 0,
547  0, 0, 0, 0, 136, 136, 136, 135, 136, 136,
548  136, 26, 136, 52, 77, 62, 136, 136, 39, 41,
549  136, 27, 136, 136, 136, 136, 136, 136, 136, 49,
550  136, 136, 0, 0, 20, 20, 0, 0, 0, 0,
551 
552  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
553  8, 9, 0, 4, 0, 136, 136, 136, 136, 0,
554  0, 0, 136, 136, 136, 136, 0, 0, 0, 22,
555  22, 0, 0, 0, 0, 0, 23, 72, 136, 136,
556  0, 86, 81, 136, 32, 62, 40, 136, 39, 79,
557  31, 136, 29, 136, 136, 60, 136, 136, 70, 0,
558  0, 20, 20, 0, 0, 0, 0, 0, 21, 10,
559  0, 136, 136, 136, 28, 0, 0, 0, 0, 0,
560  0, 136, 47, 136, 136, 0, 0, 0, 22, 22,
561  0, 0, 0, 0, 136, 118, 0, 136, 136, 30,
562 
563  82, 136, 60, 136, 136, 0, 0, 20, 20, 0,
564  0, 0, 0, 0, 136, 136, 80, 0, 0, 0,
565  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
566  65, 136, 136, 0, 0, 22, 22, 0, 0, 0,
567  0, 0, 0, 0, 0, 136, 135, 136, 87, 63,
568  136, 136, 0, 0, 20, 20, 0, 0, 0, 0,
569  0, 0, 0, 0, 0, 136, 136, 0, 0, 0,
570  0, 0, 24, 0, 69, 68, 0, 0, 22, 0,
571  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
572  0, 0, 0, 0, 22, 0, 0, 0, 0, 136,
573 
574  136, 63, 61, 55, 0, 0, 20, 0, 0, 0,
575  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
576  0, 0, 20, 0, 0, 0, 0, 0, 5, 136,
577  54, 0, 0, 0, 0, 0, 0, 0, 0, 0,
578  0, 0, 0, 0, 0, 0, 0, 0, 22, 0,
579  22, 22, 22, 0, 0, 0, 0, 0, 0, 0,
580  0, 136, 88, 61, 0, 0, 0, 0, 0, 0,
581  0, 0, 0, 0, 0, 0, 20, 0, 20, 20,
582  20, 0, 0, 0, 0, 0, 0, 0, 0, 56,
583  0, 0, 0, 0, 0, 2, 0, 22, 22, 22,
584 
585  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
586  0, 0, 0, 0, 0, 0, 0, 0, 0, 42,
587  0, 20, 20, 20, 0, 0, 0, 0, 0, 0,
588  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
589  0, 0, 0, 0, 0, 0, 0, 2, 22, 0,
590  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
591  0, 0, 0, 0, 0, 0, 42, 42, 20, 0,
592  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
593  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
594  0, 0, 0, 0, 22, 0, 0, 0, 0, 20,
595 
596  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
597  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
598  0, 0, 0, 22, 0, 20, 0, 0, 0, 0,
599  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
600  0, 0, 0, 0, 22, 0, 20, 0, 0, 0,
601  0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
602  0
603  } ;
604 
605 static const YY_CHAR yy_ec[256] =
606  { 0,
607  1, 1, 1, 1, 1, 1, 1, 1, 2, 3,
608  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
609  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
610  1, 4, 5, 1, 1, 6, 7, 1, 8, 9,
611  10, 11, 12, 13, 14, 15, 1, 16, 16, 16,
612  16, 16, 17, 17, 17, 17, 17, 1, 1, 18,
613  19, 20, 21, 22, 23, 24, 24, 24, 25, 24,
614  24, 24, 24, 24, 24, 26, 24, 24, 27, 24,
615  24, 24, 24, 24, 24, 24, 24, 24, 24, 24,
616  28, 29, 30, 1, 1, 31, 32, 33, 34, 35,
617 
618  36, 37, 38, 39, 40, 26, 41, 42, 43, 44,
619  45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
620  55, 56, 57, 58, 59, 60, 1, 1, 1, 1,
621  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
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, 1, 1, 1, 1, 1,
628 
629  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
630  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
631  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
632  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
633  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
634  1, 1, 1, 1, 1
635  } ;
636 
637 static const YY_CHAR yy_meta[61] =
638  { 0,
639  1, 2, 3, 2, 4, 1, 1, 5, 1, 1,
640  1, 1, 6, 7, 1, 7, 7, 1, 7, 1,
641  1, 8, 9, 9, 9, 9, 9, 1, 10, 11,
642  7, 9, 9, 9, 9, 9, 9, 9, 9, 9,
643  9, 9, 9, 9, 9, 9, 9, 9, 9, 9,
644  9, 9, 9, 9, 9, 9, 12, 1, 13, 1
645  } ;
646 
647 static const flex_int16_t yy_base[1416] =
648  { 0,
649  0, 0, 0, 1, 2, 6, 14, 26, 11, 30,
650  43, 47, 96, 0, 156, 0, 216, 0, 274, 277,
651  326, 0, 7, 8, 384, 387, 389, 392, 395, 406,
652  20, 386, 3340, 3339, 398, 409, 39, 44, 16, 35,
653  3352, 3351, 21, 25, 3366, 3371, 3371, 3371, 3371, 3371,
654  3371, 3359, 3371, 241, 3313, 0, 3371, 3360, 3371, 0,
655  3371, 3359, 3371, 3371, 3371, 3371, 272, 3310, 3371, 3358,
656  3371, 3330, 3327, 3351, 0, 3348, 3342, 3340, 24, 3345,
657  468, 3321, 403, 3371, 3371, 3371, 3371, 527, 3371, 0,
658  294, 0, 3294, 3371, 530, 533, 0, 536, 3371, 3371,
659 
660  3371, 511, 3299, 3371, 0, 3371, 3371, 3346, 3312, 3371,
661  3371, 3371, 418, 3296, 0, 3371, 3343, 0, 3371, 3342,
662  3371, 3371, 3371, 3341, 0, 3371, 3371, 3371, 3371, 3371,
663  3371, 3371, 0, 0, 3307, 3371, 0, 3371, 91, 3371,
664  3306, 3297, 3304, 3307, 3302, 3, 3304, 0, 3333, 0,
665  3332, 3371, 3298, 3289, 3296, 3299, 3294, 35, 3296, 3326,
666  3293, 3371, 3371, 0, 3371, 3371, 3312, 43, 3317, 3316,
667  3371, 3371, 3371, 3371, 0, 65, 540, 543, 3371, 271,
668  269, 16, 279, 253, 3279, 266, 372, 554, 3286, 560,
669  255, 567, 3289, 393, 572, 281, 3271, 273, 3371, 407,
670 
671  414, 425, 563, 3262, 0, 0, 558, 0, 572, 591,
672  0, 607, 3278, 3277, 3284, 3279, 3371, 3278, 3269, 3276,
673  3279, 3274, 360, 3276, 0, 3305, 3263, 3371, 3270, 3261,
674  3268, 3271, 3266, 399, 3268, 0, 3297, 0, 3296, 3371,
675  0, 0, 3254, 0, 578, 613, 3250, 3371, 3249, 3249,
676  3247, 3250, 401, 3243, 3244, 3371, 3243, 3243, 3241, 3244,
677  515, 3237, 3245, 3371, 3276, 0, 628, 633, 3371, 3255,
678  3252, 3246, 3242, 3246, 3246, 3227, 3234, 3238, 3240, 3238,
679  3227, 602, 418, 3225, 605, 3222, 3236, 3224, 3224, 3213,
680  43, 3225, 611, 3214, 3211, 3217, 3229, 551, 3228, 3223,
681 
682  3225, 3203, 3216, 3219, 3206, 537, 608, 580, 3203, 3214,
683  3207, 3217, 3201, 3201, 3371, 3200, 3200, 3198, 3201, 612,
684  3194, 3207, 3194, 3371, 3193, 3193, 3191, 3194, 616, 3187,
685  3200, 3185, 3184, 3183, 3195, 3181, 3180, 3179, 3191, 3176,
686  661, 3371, 3195, 3371, 619, 3184, 510, 3177, 3186, 3176,
687  3180, 3168, 0, 3176, 3175, 3166, 3165, 3174, 3181, 3176,
688  3169, 3174, 3158, 3164, 3171, 3170, 3169, 632, 3168, 640,
689  3154, 3160, 3165, 3160, 3167, 3162, 3143, 3154, 3145, 633,
690  3145, 3147, 633, 3142, 3142, 643, 3157, 3149, 3156, 661,
691  3128, 3134, 3131, 3117, 3125, 3108, 3107, 3104, 3116, 3371,
692 
693  3102, 3101, 3083, 3095, 682, 3080, 3078, 3066, 3033, 3032,
694  3036, 3035, 3014, 3025, 3007, 3006, 3003, 2998, 3002, 2984,
695  2983, 2972, 2965, 0, 2964, 2967, 2744, 2741, 2746, 2735,
696  2739, 2736, 2747, 2732, 2728, 2724, 2727, 694, 2734, 2742,
697  2726, 2728, 2727, 2734, 2737, 646, 2730, 2722, 2755, 2729,
698  2728, 2710, 2706, 2711, 2727, 0, 2723, 2717, 2711, 2719,
699  2709, 2714, 2718, 2711, 2718, 576, 2715, 2702, 2702, 2710,
700  0, 2694, 2705, 3371, 2690, 2691, 2700, 2703, 2684, 2693,
701  2692, 2677, 2676, 2689, 2688, 2673, 697, 700, 2677, 2671,
702  2670, 2683, 2673, 2667, 2666, 2679, 3371, 2669, 2668, 671,
703 
704  2665, 712, 2674, 2664, 2653, 2671, 2673, 2669, 2668, 2655,
705  2666, 2655, 2654, 715, 2662, 2648, 2661, 0, 0, 731,
706  709, 705, 768, 0, 0, 2647, 2658, 685, 2641, 2648,
707  2639, 2645, 2653, 2634, 2634, 2627, 3371, 2647, 2645, 2644,
708  2641, 2640, 2626, 2637, 2624, 2617, 2623, 702, 0, 2621,
709  2623, 2616, 2629, 2629, 2616, 2628, 2605, 2624, 747, 2621,
710  2619, 2622, 754, 2603, 2607, 2601, 2600, 2613, 2603, 2597,
711  2596, 2609, 763, 2608, 2607, 2594, 2604, 2592, 2588, 2587,
712  2591, 2599, 2602, 771, 775, 2590, 2594, 2589, 2578, 2579,
713  2589, 2578, 2588, 2588, 2583, 2568, 778, 771, 780, 827,
714 
715  0, 821, 2577, 2576, 783, 789, 802, 2565, 401, 2575,
716  2566, 2564, 2564, 557, 2560, 818, 2569, 2567, 2560, 2558,
717  2561, 2562, 2563, 2555, 2559, 2540, 2562, 0, 2548, 2542,
718  2546, 2557, 2556, 2534, 2542, 2542, 2541, 2545, 2546, 2545,
719  2540, 2528, 2542, 2545, 2526, 2526, 2532, 2535, 0, 2527,
720  835, 818, 810, 877, 0, 880, 855, 2528, 883, 893,
721  2525, 2528, 2516, 2526, 2514, 2512, 2508, 2506, 2516, 2514,
722  2499, 2505, 2514, 896, 2502, 0, 2498, 2509, 2532, 2487,
723  2495, 2489, 2492, 2501, 2501, 2498, 838, 824, 829, 2487,
724  618, 2497, 2488, 2482, 2481, 822, 2477, 886, 899, 902,
725 
726  931, 2472, 771, 849, 905, 936, 2488, 0, 2487, 2468,
727  2465, 2461, 2477, 2463, 0, 2465, 2460, 2449, 2469, 2458,
728  2446, 2445, 0, 2435, 2470, 2430, 2428, 2431, 2431, 2435,
729  2424, 0, 2424, 2421, 2424, 2414, 2413, 2415, 934, 852,
730  858, 2396, 881, 2391, 2366, 2375, 2375, 891, 2369, 950,
731  959, 962, 965, 968, 971, 2372, 981, 0, 2364, 2353,
732  2350, 2363, 2343, 2350, 2340, 2345, 2345, 2346, 2346, 0,
733  3371, 0, 2335, 584, 2322, 0, 0, 820, 902, 985,
734  998, 1002, 1008, 0, 975, 911, 1053, 0, 2320, 2315,
735  2309, 2311, 2303, 2310, 2300, 2305, 2294, 2290, 2300, 2296,
736 
737  0, 2288, 2287, 2275, 2274, 0, 3371, 2290, 2286, 2273,
738  2278, 2264, 2263, 238, 243, 273, 340, 383, 415, 941,
739  1018, 1030, 1034, 1063, 0, 998, 981, 1108, 0, 1021,
740  0, 1056, 500, 1079, 606, 638, 659, 643, 662, 1088,
741  687, 694, 697, 711, 718, 0, 0, 3371, 749, 749,
742  1115, 1124, 1105, 991, 1001, 766, 952, 801, 828, 872,
743  879, 996, 884, 1128, 890, 912, 913, 948, 943, 955,
744  982, 0, 975, 0, 0, 1024, 985, 1008, 1032, 0,
745  999, 0, 1013, 1014, 1023, 1027, 1039, 1028, 1025, 0,
746  1028, 1043, 1044, 1043, 1133, 1160, 1165, 1078, 1081, 1054,
747 
748  1070, 1066, 1049, 1063, 1065, 1099, 1068, 1181, 1086, 1186,
749  3371, 3371, 1189, 3371, 1079, 1085, 1089, 1104, 1107, 1192,
750  1205, 1104, 1111, 1104, 1121, 1100, 1126, 1116, 1114, 1195,
751  1210, 1152, 1226, 1233, 1240, 1160, 3371, 0, 1120, 1117,
752  1157, 0, 0, 1135, 0, 3371, 0, 1142, 3371, 0,
753  0, 1151, 0, 1156, 1159, 1199, 1175, 1161, 0, 1174,
754  1172, 1258, 1248, 1209, 1262, 1271, 1285, 1191, 3371, 3371,
755  1192, 1197, 1196, 1206, 0, 0, 1295, 1241, 1343, 0,
756  1219, 1208, 0, 1218, 1226, 1213, 1220, 1228, 1320, 1391,
757  1238, 1239, 1256, 1242, 1245, 0, 1260, 1259, 1263, 0,
758 
759  0, 1263, 3371, 1258, 1264, 1256, 1264, 1338, 1436, 1275,
760  1274, 1289, 1286, 1275, 1279, 1272, 0, 1319, 1322, 1332,
761  1281, 1309, 1297, 1296, 1307, 1310, 1320, 1309, 1369, 1312,
762  0, 1308, 1325, 1313, 1407, 1429, 1414, 1381, 1348, 1481,
763  0, 1323, 1317, 1334, 1342, 1335, 3371, 1336, 0, 1377,
764  1346, 1363, 1351, 1452, 1459, 1488, 1410, 1385, 1533, 0,
765  1360, 1362, 1419, 1437, 1497, 1370, 1393, 1477, 1500, 1537,
766  1549, 1407, 3371, 1380, 0, 0, 1595, 0, 1558, 1490,
767  1492, 1623, 0, 1495, 1502, 1506, 1389, 1444, 1407, 1429,
768  1436, 1446, 1479, 1449, 1611, 1469, 1476, 1493, 1671, 1492,
769 
770  1478, 3371, 1521, 0, 1616, 0, 1619, 1548, 1528, 1710,
771  0, 1555, 1538, 1541, 1492, 1541, 1512, 1520, 1533, 1535,
772  1552, 1535, 1633, 1534, 1538, 1551, 1758, 1639, 3371, 1552,
773  0, 1550, 1551, 1604, 1554, 1647, 0, 1662, 1600, 1630,
774  1557, 1618, 1571, 1586, 1590, 1610, 1621, 1614, 1678, 1651,
775  1687, 1690, 1699, 1615, 1693, 1764, 1745, 1700, 1702, 1803,
776  0, 1621, 0, 3371, 0, 1719, 1704, 1707, 1638, 1694,
777  1664, 1650, 1685, 1688, 1704, 1686, 1761, 1724, 1780, 1792,
778  1807, 1702, 1812, 1851, 1799, 1815, 1741, 1879, 0, 0,
779  1708, 1704, 1746, 1750, 1857, 1766, 1796, 1867, 1870, 1874,
780 
781  1927, 0, 1889, 1869, 1805, 1955, 0, 1872, 1817, 1840,
782  1725, 1774, 1742, 1742, 1745, 1749, 1814, 1754, 1895, 2004,
783  1884, 1900, 1903, 1906, 1949, 0, 2063, 1930, 1904, 2121,
784  0, 1952, 1907, 1910, 1779, 1939, 1805, 1790, 1807, 1819,
785  1926, 1829, 2067, 1828, 1841, 1934, 2169, 1908, 2070, 0,
786  1964, 1917, 1920, 1894, 1941, 1920, 1919, 1933, 1942, 1952,
787  1941, 2073, 1976, 2076, 2084, 2088, 0, 0, 2091, 0,
788  2066, 1980, 1983, 1948, 2055, 1968, 2007, 2024, 2041, 2051,
789  2050, 2100, 2083, 2137, 2146, 2172, 2048, 2204, 2220, 2197,
790  2099, 2091, 2255, 0, 2224, 2095, 2188, 2191, 2249, 2260,
791 
792  2101, 2272, 2275, 2278, 2303, 0, 2281, 2129, 2113, 2339,
793  0, 2136, 2146, 2149, 2059, 2126, 2085, 2079, 2114, 2125,
794  2153, 2131, 2308, 2387, 2355, 2429, 2362, 0, 2229, 2162,
795  2194, 2136, 2154, 2167, 2150, 2169, 2171, 2191, 2171, 2358,
796  2213, 2366, 2391, 2408, 2471, 2420, 2513, 2433, 2222, 2425,
797  2436, 2450, 2555, 2613, 2453, 2671, 2462, 2495, 2729, 2346,
798  3371, 2788, 2801, 2814, 2827, 2840, 2853, 2866, 2879, 2892,
799  2905, 2918, 2931, 2944, 2957, 2970, 2983, 2996, 3009, 3020,
800  3031, 3040, 3049, 3058, 3060, 2233, 2239, 3069, 3080, 3091,
801  3104, 3117, 3124, 3126, 3135, 2245, 2246, 2251, 3145, 2252,
802 
803  2256, 3151, 3160, 2257, 2259, 2260, 2277, 2278, 2285, 2287,
804  2288, 2290, 3173, 2291, 2293
805  } ;
806 
807 static const flex_int16_t yy_def[1416] =
808  { 0,
809  1362, 1362, 1363, 1363, 1364, 1364, 1365, 1365, 1366, 1366,
810  1367, 1367, 1361, 13, 1361, 15, 1361, 17, 1368, 1368,
811  1361, 21, 1369, 1369, 1370, 1370, 1371, 1371, 1372, 1372,
812  1373, 1373, 1374, 1374, 1375, 1375, 1376, 1376, 1377, 1377,
813  1362, 1362, 1378, 1378, 1361, 1361, 1361, 1361, 1361, 1361,
814  1361, 1361, 1361, 1361, 1361, 1379, 1361, 1361, 1361, 1380,
815  1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361,
816  1361, 1361, 1361, 1361, 1381, 1361, 1361, 1361, 1361, 1382,
817  1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1383,
818  1384, 1385, 1361, 1361, 1361, 1361, 1386, 1361, 1361, 1361,
819 
820  1361, 1361, 1361, 1361, 1387, 1361, 1361, 1361, 1361, 1361,
821  1361, 1361, 1361, 1361, 1388, 1361, 1361, 1389, 1361, 1361,
822  1361, 1361, 1361, 1361, 1390, 1361, 1361, 1361, 1361, 1361,
823  1361, 1361, 1391, 1391, 1361, 1361, 1392, 1361, 1361, 1361,
824  1361, 1361, 1361, 1361, 1361, 1361, 1361, 1379, 1361, 1380,
825  1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361,
826  1361, 1361, 1361, 1381, 1361, 1361, 1361, 1361, 1393, 1382,
827  1361, 1361, 1361, 1361, 1394, 1394, 1394, 1394, 1361, 1361,
828  1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394,
829  1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1361, 1361,
830 
831  1361, 1361, 1361, 1361, 1383, 1383, 1384, 1385, 1361, 1361,
832  1386, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361,
833  1361, 1361, 1361, 1361, 1387, 1361, 1361, 1361, 1361, 1361,
834  1361, 1361, 1361, 1361, 1361, 1388, 1361, 1389, 1361, 1361,
835  1390, 1391, 1361, 1392, 1361, 1361, 1361, 1361, 1361, 1361,
836  1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361,
837  1361, 1361, 1361, 1361, 1393, 1394, 1394, 1361, 1361, 1361,
838  1395, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394,
839  1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394,
840  1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394,
841 
842  1394, 1394, 1394, 1394, 1394, 1394, 1361, 1361, 1361, 1361,
843  1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361,
844  1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361,
845  1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361,
846  1361, 1361, 1395, 1361, 1394, 1394, 1394, 1394, 1394, 1394,
847  1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394,
848  1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394,
849  1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394,
850  1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1361,
851  1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361,
852 
853  1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361,
854  1361, 1361, 1361, 1361, 1394, 1394, 1394, 1394, 1394, 1394,
855  1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394,
856  1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394,
857  1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394,
858  1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394,
859  1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394,
860  1394, 1394, 1394, 1361, 1361, 1361, 1361, 1361, 1361, 1361,
861  1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361,
862  1361, 1361, 1361, 1361, 1361, 1361, 1361, 1394, 1394, 1394,
863 
864  1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394,
865  1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1361,
866  1361, 1361, 1361, 1396, 1394, 1394, 1394, 1394, 1394, 1394,
867  1394, 1394, 1394, 1394, 1394, 1394, 1361, 1394, 1394, 1394,
868  1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394,
869  1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394,
870  1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361,
871  1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1394, 1394,
872  1394, 1394, 1394, 1361, 1361, 1394, 1394, 1394, 1394, 1394,
873  1394, 1394, 1394, 1394, 1394, 1394, 1361, 1361, 1361, 1361,
874 
875  1397, 1394, 1394, 1394, 523, 605, 1361, 1361, 1361, 1361,
876  1361, 1361, 1361, 1361, 1361, 1396, 1394, 1394, 1394, 1394,
877  1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394,
878  1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394,
879  1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394,
880  1361, 1361, 1361, 1361, 1398, 1394, 1361, 1361, 1361, 1361,
881  1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1394, 1394,
882  1394, 1394, 1394, 1361, 1361, 1394, 1394, 1394, 1394, 1394,
883  1394, 1394, 1394, 1394, 1394, 1394, 600, 687, 1361, 1361,
884  1361, 1361, 1361, 1361, 1361, 1361, 1361, 1397, 1361, 1361,
885 
886  1361, 1394, 1394, 605, 1361, 1361, 1394, 1394, 1394, 1394,
887  1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394,
888  1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394,
889  1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 654, 739,
890  1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1398,
891  1361, 1361, 1361, 1361, 1361, 1361, 1361, 1399, 1361, 1361,
892  1361, 1361, 1394, 1394, 1394, 1394, 1394, 1361, 1394, 1394,
893  1361, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 687, 1361,
894  1361, 1397, 1397, 701, 1361, 1361, 1361, 1400, 1394, 1394,
895  1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394,
896 
897  1394, 1394, 1394, 1394, 1394, 1394, 1361, 1394, 1394, 1394,
898  1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 739,
899  1361, 1361, 1398, 1398, 753, 1361, 1361, 1361, 1401, 1361,
900  1402, 1361, 1399, 1361, 1361, 1394, 1394, 1394, 1394, 1394,
901  1361, 1394, 1394, 1394, 1394, 1394, 1403, 1361, 1361, 1361,
902  1397, 1397, 787, 853, 1361, 1361, 1361, 1361, 1361, 1361,
903  1361, 1361, 1361, 1400, 1394, 1394, 1394, 1394, 1394, 1394,
904  1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394,
905  1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394,
906  1394, 1394, 1361, 1361, 1398, 1398, 828, 897, 1361, 1361,
907 
908  1361, 1361, 1361, 1361, 1361, 1361, 1361, 1401, 1402, 1361,
909  1361, 1361, 1361, 1361, 1361, 1394, 1394, 1394, 1394, 1361,
910  1361, 1361, 1394, 1394, 1394, 1394, 1403, 1361, 1361, 1397,
911  1397, 853, 1361, 1361, 1400, 935, 1361, 1394, 1394, 1394,
912  1361, 1394, 1394, 1394, 1394, 1361, 1394, 1394, 1361, 1394,
913  1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1394, 1361,
914  1361, 1398, 1398, 897, 1361, 1361, 1401, 967, 1361, 1361,
915  1361, 1394, 1394, 1394, 1394, 921, 1361, 1361, 1361, 1404,
916  1361, 1394, 1394, 1394, 1394, 1361, 1361, 1361, 1397, 1397,
917  1361, 1361, 935, 935, 1394, 1394, 1361, 1394, 1394, 1394,
918 
919  1394, 1394, 1361, 1394, 1394, 1361, 1361, 1398, 1398, 1361,
920  1361, 967, 967, 1361, 1394, 1394, 1394, 979, 1018, 1361,
921  1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1404, 1361,
922  1394, 1394, 1394, 1361, 1361, 990, 1035, 1361, 1361, 1361,
923  1405, 1361, 1361, 935, 935, 1394, 1361, 1394, 1394, 1394,
924  1394, 1394, 1361, 1361, 1009, 1054, 1361, 1361, 1361, 1406,
925  1361, 1361, 967, 967, 1361, 1394, 1394, 1018, 1361, 1361,
926  1404, 1071, 1361, 1361, 1394, 1394, 1361, 1035, 1077, 1361,
927  1361, 1361, 1407, 1040, 1084, 1361, 1361, 1361, 1361, 1361,
928  1361, 1361, 1361, 1361, 1405, 1361, 1361, 935, 935, 1394,
929 
930  1394, 1361, 1394, 1394, 1361, 1054, 1105, 1361, 1361, 1361,
931  1408, 1059, 1112, 1361, 1361, 1361, 1361, 1361, 1361, 1361,
932  1361, 1361, 1406, 1361, 1361, 967, 967, 1361, 1361, 1394,
933  1394, 1361, 1361, 1071, 1071, 1361, 1077, 1082, 1138, 1361,
934  1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1407, 1084,
935  1361, 1361, 1405, 1361, 1361, 1099, 1155, 1361, 1361, 1361,
936  1409, 1394, 1394, 1361, 1105, 1110, 1166, 1361, 1361, 1361,
937  1361, 1361, 1361, 1361, 1361, 1361, 1408, 1112, 1361, 1361,
938  1406, 1361, 1361, 1127, 1183, 1361, 1361, 1361, 1410, 1394,
939  1361, 1361, 1071, 1071, 1361, 1361, 1138, 1361, 1361, 1405,
940 
941  1361, 1155, 1201, 1361, 1361, 1361, 1411, 1160, 1208, 1361,
942  1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1409, 1361,
943  1166, 1361, 1361, 1406, 1361, 1183, 1225, 1361, 1361, 1361,
944  1412, 1188, 1232, 1361, 1361, 1361, 1361, 1361, 1361, 1361,
945  1361, 1361, 1410, 1361, 1361, 1071, 1071, 1361, 1405, 1201,
946  1206, 1251, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361,
947  1361, 1411, 1208, 1361, 1361, 1409, 1413, 1220, 1406, 1225,
948  1230, 1271, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361,
949  1361, 1412, 1232, 1361, 1361, 1410, 1361, 1361, 1247, 1288,
950  1361, 1361, 1361, 1414, 1405, 1251, 1361, 1361, 1409, 1406,
951 
952  1271, 1361, 1361, 1410, 1361, 1288, 1305, 1361, 1361, 1361,
953  1415, 1293, 1312, 1361, 1361, 1361, 1361, 1361, 1361, 1361,
954  1361, 1361, 1414, 1405, 1409, 1406, 1410, 1305, 1310, 1329,
955  1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1415,
956  1312, 1361, 1361, 1414, 1361, 1409, 1361, 1410, 1329, 1361,
957  1361, 1414, 1409, 1410, 1414, 1361, 1225, 1414, 1414, 1307,
958  0, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361,
959  1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361,
960  1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361,
961  1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361,
962 
963  1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361,
964  1361, 1361, 1361, 1361, 1361
965  } ;
966 
967 static const flex_int16_t yy_nxt[3432] =
968  { 0,
969  1361, 1361, 48, 48, 51, 1361, 1361, 52, 51, 108,
970  108, 52, 61, 62, 61, 57, 58, 57, 134, 53,
971  53, 53, 46, 53, 53, 53, 57, 57, 58, 57,
972  54, 61, 62, 61, 54, 109, 109, 134, 57, 168,
973  168, 46, 252, 1361, 135, 64, 46, 122, 65, 64,
974  55, 273, 65, 253, 55, 274, 49, 49, 168, 168,
975  66, 66, 66, 135, 66, 66, 66, 61, 132, 61,
976  57, 67, 59, 132, 260, 67, 123, 138, 124, 139,
977  369, 138, 57, 139, 59, 261, 61, 267, 61, 267,
978  370, 68, 245, 246, 245, 68, 69, 70, 71, 72,
979 
980  73, 74, 75, 76, 69, 69, 69, 69, 77, 78,
981  69, 79, 79, 69, 69, 69, 73, 69, 80, 80,
982  80, 80, 80, 69, 81, 69, 82, 80, 80, 80,
983  80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
984  80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
985  80, 80, 83, 84, 85, 86, 87, 88, 89, 88,
986  87, 87, 87, 90, 87, 87, 87, 87, 87, 90,
987  87, 91, 91, 87, 90, 87, 87, 91, 91, 91,
988  91, 91, 91, 87, 92, 87, 90, 91, 91, 91,
989  91, 91, 91, 91, 91, 91, 91, 91, 91, 91,
990 
991  91, 91, 91, 91, 91, 91, 91, 91, 91, 91,
992  91, 91, 93, 87, 87, 87, 94, 95, 96, 95,
993  94, 94, 94, 94, 94, 94, 94, 94, 94, 94,
994  94, 94, 94, 94, 94, 94, 94, 94, 97, 97,
995  97, 97, 97, 94, 94, 94, 94, 97, 97, 97,
996  97, 97, 97, 97, 97, 97, 97, 97, 97, 97,
997  97, 97, 97, 97, 97, 97, 97, 97, 97, 97,
998  97, 97, 98, 94, 94, 94, 100, 152, 141, 100,
999  142, 270, 143, 144, 145, 887, 289, 888, 278, 146,
1000  290, 101, 101, 101, 101, 101, 101, 279, 271, 281,
1001 
1002  267, 206, 102, 272, 267, 102, 889, 206, 305, 153,
1003  282, 154, 206, 155, 156, 157, 302, 275, 276, 303,
1004  158, 306, 103, 277, 206, 103, 104, 104, 46, 104,
1005  104, 104, 104, 104, 104, 104, 104, 104, 104, 104,
1006  104, 104, 104, 104, 104, 104, 104, 104, 105, 105,
1007  105, 105, 105, 104, 104, 104, 104, 105, 105, 105,
1008  105, 105, 105, 105, 105, 105, 105, 105, 105, 105,
1009  105, 105, 105, 105, 105, 105, 105, 105, 105, 105,
1010  105, 105, 104, 104, 106, 104, 111, 890, 46, 111,
1011  116, 117, 116, 116, 117, 116, 119, 120, 119, 319,
1012 
1013  46, 112, 112, 112, 112, 112, 112, 119, 120, 119,
1014  320, 46, 113, 122, 200, 113, 200, 201, 202, 202,
1015  283, 201, 202, 202, 292, 128, 284, 228, 293, 307,
1016  307, 891, 114, 333, 705, 114, 128, 294, 328, 308,
1017  202, 202, 123, 705, 124, 116, 334, 116, 116, 329,
1018  116, 119, 892, 119, 129, 229, 130, 230, 358, 231,
1019  232, 233, 119, 359, 119, 129, 234, 130, 171, 171,
1020  309, 172, 171, 171, 173, 171, 174, 171, 171, 171,
1021  171, 171, 171, 171, 171, 171, 171, 171, 171, 175,
1022  176, 175, 175, 177, 178, 179, 180, 171, 171, 181,
1023 
1024  182, 183, 184, 185, 186, 175, 187, 188, 189, 190,
1025  175, 191, 192, 193, 175, 194, 195, 196, 197, 198,
1026  175, 175, 175, 175, 171, 171, 171, 171, 203, 912,
1027  203, 209, 209, 209, 209, 209, 209, 212, 212, 212,
1028  217, 268, 269, 268, 268, 269, 268, 337, 218, 420,
1029  219, 421, 220, 221, 222, 268, 269, 268, 422, 223,
1030  338, 268, 269, 268, 203, 206, 203, 267, 268, 269,
1031  268, 206, 213, 209, 209, 209, 206, 388, 214, 245,
1032  246, 245, 389, 204, 379, 215, 210, 216, 206, 210,
1033  705, 287, 212, 212, 212, 390, 390, 285, 269, 288,
1034 
1035  380, 269, 267, 295, 296, 297, 705, 298, 212, 212,
1036  212, 553, 269, 299, 245, 246, 245, 844, 269, 204,
1037  267, 300, 301, 307, 307, 269, 554, 213, 210, 341,
1038  342, 341, 845, 214, 268, 269, 268, 915, 361, 362,
1039  215, 355, 216, 213, 397, 356, 357, 372, 402, 214,
1040  363, 780, 415, 309, 373, 416, 215, 398, 216, 374,
1041  780, 403, 341, 342, 341, 442, 459, 443, 417, 464,
1042  418, 447, 448, 444, 460, 469, 390, 390, 465, 532,
1043  445, 466, 461, 487, 487, 487, 342, 916, 470, 449,
1044  917, 269, 918, 533, 534, 520, 520, 520, 487, 487,
1045 
1046  487, 573, 573, 573, 581, 521, 309, 521, 522, 523,
1047  523, 919, 582, 584, 584, 584, 597, 597, 597, 342,
1048  605, 605, 524, 522, 523, 523, 598, 619, 598, 599,
1049  600, 600, 520, 520, 520, 620, 639, 922, 488, 923,
1050  640, 924, 521, 601, 521, 522, 523, 523, 651, 651,
1051  651, 574, 925, 488, 641, 659, 659, 659, 652, 524,
1052  652, 653, 654, 654, 573, 573, 573, 926, 585, 606,
1053  606, 606, 584, 584, 584, 655, 674, 674, 674, 597,
1054  597, 597, 607, 523, 523, 599, 600, 600, 928, 598,
1055  929, 598, 599, 600, 600, 687, 687, 1361, 605, 605,
1056 
1057  608, 609, 610, 611, 1361, 1361, 601, 612, 790, 675,
1058  613, 933, 660, 614, 574, 791, 615, 704, 704, 706,
1059  706, 706, 699, 699, 699, 739, 739, 585, 688, 688,
1060  688, 700, 653, 654, 654, 933, 651, 651, 651, 1361,
1061  1361, 689, 600, 600, 779, 779, 652, 847, 652, 653,
1062  654, 654, 1361, 687, 687, 780, 754, 754, 754, 690,
1063  691, 692, 693, 655, 704, 704, 694, 1361, 1361, 695,
1064  933, 780, 696, 820, 820, 697, 848, 701, 740, 740,
1065  740, 751, 751, 751, 659, 659, 659, 781, 781, 781,
1066  752, 741, 654, 654, 757, 757, 757, 674, 674, 674,
1067 
1068  699, 699, 699, 699, 699, 699, 706, 706, 706, 742,
1069  743, 744, 745, 755, 821, 933, 746, 779, 779, 747,
1070  758, 933, 748, 821, 821, 749, 853, 853, 782, 933,
1071  675, 783, 784, 784, 784, 938, 753, 706, 706, 706,
1072  821, 660, 785, 939, 785, 786, 787, 787, 1361, 739,
1073  739, 822, 822, 822, 940, 701, 820, 820, 701, 788,
1074  751, 751, 751, 751, 751, 751, 825, 825, 825, 754,
1075  754, 754, 830, 830, 830, 941, 826, 942, 826, 827,
1076  828, 828, 757, 757, 757, 933, 781, 781, 781, 786,
1077  787, 787, 823, 829, 933, 824, 897, 897, 831, 781,
1078 
1079  781, 781, 943, 781, 781, 781, 1361, 1361, 758, 781,
1080  781, 781, 827, 828, 828, 753, 932, 932, 753, 822,
1081  822, 822, 830, 830, 830, 944, 755, 849, 945, 933,
1082  850, 822, 822, 822, 946, 822, 822, 822, 947, 948,
1083  849, 851, 949, 850, 782, 933, 950, 783, 831, 852,
1084  782, 951, 952, 783, 854, 854, 854, 910, 910, 910,
1085  893, 953, 954, 894, 822, 822, 822, 855, 787, 787,
1086  955, 956, 893, 895, 957, 894, 823, 958, 959, 824,
1087  913, 913, 913, 960, 961, 856, 857, 858, 859, 920,
1088  920, 920, 860, 1361, 1361, 861, 964, 964, 862, 965,
1089 
1090  965, 863, 965, 965, 896, 823, 965, 965, 824, 898,
1091  898, 898, 965, 965, 911, 970, 781, 781, 781, 1361,
1092  853, 853, 899, 828, 828, 781, 781, 781, 971, 934,
1093  934, 934, 965, 972, 822, 822, 822, 914, 973, 974,
1094  900, 901, 902, 903, 921, 975, 981, 904, 965, 982,
1095  905, 983, 984, 906, 985, 986, 907, 782, 930, 987,
1096  783, 822, 822, 822, 988, 995, 782, 932, 932, 783,
1097  935, 996, 997, 936, 931, 823, 962, 998, 824, 1361,
1098  897, 897, 966, 966, 966, 999, 937, 910, 910, 910,
1099  913, 913, 913, 920, 920, 920, 781, 781, 781, 864,
1100 
1101  1000, 994, 823, 1001, 1002, 824, 976, 976, 976, 1003,
1102  963, 781, 781, 781, 1004, 1005, 977, 1006, 977, 978,
1103  979, 979, 1007, 967, 964, 964, 968, 934, 934, 934,
1104  908, 1014, 1013, 980, 934, 934, 934, 782, 1015, 969,
1105  783, 934, 934, 934, 911, 989, 1016, 914, 921, 822,
1106  822, 822, 782, 1017, 1030, 783, 1018, 1018, 990, 822,
1107  822, 822, 1031, 966, 966, 966, 1032, 1033, 991, 848,
1108  1034, 992, 966, 966, 966, 991, 1035, 1042, 992, 993,
1109  1043, 864, 935, 1046, 937, 936, 966, 966, 966, 1047,
1110  823, 937, 1045, 824, 1048, 864, 1009, 1049, 937, 1044,
1111 
1112  823, 1050, 1051, 824, 1010, 1052, 1053, 1011, 1008, 978,
1113  979, 979, 1054, 1010, 1061, 1062, 1011, 1065, 1066, 1067,
1114  969, 781, 781, 781, 1012, 908, 1069, 967, 908, 969,
1115  968, 1069, 1063, 1361, 1018, 1018, 1064, 1361, 1361, 822,
1116  822, 822, 1069, 969, 1019, 1019, 1019, 1068, 1068, 1069,
1117  1069, 1069, 1069, 1069, 1069, 1074, 1075, 1020, 979, 979,
1118  1076, 1077, 782, 1084, 1084, 783, 1096, 1097, 1036, 1069,
1119  1070, 1070, 1070, 864, 1100, 1021, 1022, 1023, 1024, 1101,
1120  823, 864, 1025, 824, 1098, 1026, 1055, 1102, 1027, 1103,
1121  1099, 1028, 1037, 1037, 1037, 1039, 1040, 1040, 1104, 1105,
1122 
1123  1112, 1112, 1038, 1124, 1038, 1039, 1040, 1040, 1078, 1078,
1124  1078, 1071, 1125, 1130, 1072, 1037, 1037, 1037, 1038, 1041,
1125  1038, 1039, 1040, 1040, 1058, 1059, 1059, 1073, 1131, 1136,
1126  1079, 1079, 1079, 782, 1151, 1041, 783, 1056, 1056, 1056,
1127  1080, 1151, 1080, 1081, 1082, 1082, 1029, 1057, 1135, 1057,
1128  1058, 1059, 1059, 1106, 1106, 1106, 849, 1083, 908, 850,
1129  1107, 1107, 1107, 1057, 1060, 1057, 1058, 1059, 1059, 1126,
1130  1108, 1151, 1108, 1109, 1110, 1110, 908, 1151, 823, 1151,
1131  1060, 824, 1085, 1085, 1085, 1127, 1151, 1111, 1151, 1056,
1132  1056, 1056, 1068, 1068, 1151, 1086, 1040, 1040, 1128, 1128,
1133 
1134  1128, 1070, 1070, 1070, 1081, 1082, 1082, 1138, 1138, 1361,
1135  1084, 1084, 1151, 1087, 1088, 1089, 1090, 1361, 1361, 1154,
1136  1091, 1150, 1150, 1092, 1155, 1162, 1093, 1163, 1151, 1094,
1137  893, 1164, 864, 894, 1113, 1113, 1113, 1179, 1070, 1070,
1138  1070, 1156, 1132, 1166, 1166, 1133, 1179, 1114, 1059, 1059,
1139  1070, 1070, 1070, 1361, 1361, 1129, 1178, 1178, 1073, 1079,
1140  1079, 1079, 1109, 1110, 1110, 1115, 1116, 1117, 1118, 1361,
1141  1112, 1112, 1119, 1179, 1179, 1120, 1179, 1179, 1121, 1132,
1142  1179, 1122, 1133, 1179, 1182, 1179, 1183, 1190, 1134, 1191,
1143  908, 1071, 1192, 1029, 1072, 1073, 1137, 1137, 1137, 1184,
1144 
1145  849, 1179, 1198, 850, 1194, 1198, 1080, 1073, 1080, 1081,
1146  1082, 1082, 1152, 1152, 1152, 1361, 1361, 1165, 1165, 1165,
1147  1107, 1107, 1107, 1083, 1139, 1139, 1139, 1108, 1198, 1108,
1148  1109, 1110, 1110, 1198, 1180, 1180, 1180, 1140, 1082, 1082,
1149  1128, 1128, 1128, 1029, 1111, 1197, 1197, 1193, 1195, 1195,
1150  1195, 1198, 1198, 1153, 1198, 1141, 1142, 1143, 1144, 1198,
1151  1198, 893, 1145, 1201, 894, 1146, 1150, 1150, 1147, 1220,
1152  1198, 1148, 1157, 1157, 1157, 1181, 1361, 1138, 1138, 1199,
1153  1199, 1199, 1158, 1222, 1158, 1159, 1160, 1160, 1152, 1152,
1154  1152, 1152, 1152, 1152, 1202, 1202, 1202, 1129, 1222, 1161,
1155 
1156  1152, 1152, 1152, 1222, 1158, 1196, 1158, 1159, 1160, 1160,
1157  864, 1167, 1167, 1167, 1159, 1160, 1160, 1208, 1208, 1361,
1158  1361, 1161, 1221, 1221, 1168, 1110, 1110, 1222, 1222, 849,
1159  1222, 1222, 849, 1361, 1166, 1166, 1222, 1222, 1200, 1178,
1160  1178, 1153, 1169, 1170, 1171, 1172, 1157, 1157, 1157, 1173,
1161  1225, 1244, 1174, 1222, 1245, 1175, 1232, 1232, 1176, 1185,
1162  1185, 1185, 1223, 1223, 1223, 1203, 1203, 1203, 1248, 1186,
1163  1264, 1186, 1187, 1188, 1188, 1204, 1264, 1204, 1205, 1206,
1164  1206, 1180, 1180, 1180, 1264, 1029, 1189, 991, 1264, 1029,
1165  992, 1264, 1207, 1180, 1180, 1180, 1246, 908, 1247, 1264,
1166 
1167  1185, 1185, 1185, 937, 1209, 1209, 1209, 1264, 1180, 1180,
1168  1180, 1197, 1197, 1226, 1226, 1226, 1264, 1210, 1160, 1160,
1169  1251, 1251, 893, 1186, 1284, 1186, 1187, 1188, 1188, 1187,
1170  1188, 1188, 1361, 1361, 893, 1211, 1212, 1213, 1214, 1284,
1171  1189, 1010, 1215, 1284, 1011, 1216, 1224, 1264, 1217, 1181,
1172  1284, 1218, 1227, 1227, 1227, 1263, 1263, 969, 1195, 1195,
1173  1195, 1284, 1228, 1264, 1228, 1229, 1230, 1230, 1199, 1199,
1174  1199, 1199, 1199, 1199, 1284, 1152, 1152, 1152, 1287, 1231,
1175  1233, 1233, 1233, 1205, 1206, 1206, 1361, 1208, 1208, 1288,
1176  1203, 1203, 1203, 1234, 1188, 1188, 1265, 1265, 1265, 1221,
1177 
1178  1221, 1223, 1223, 1223, 1223, 1223, 1223, 1180, 1180, 1180,
1179  1248, 1235, 1236, 1237, 1238, 1196, 1153, 1249, 1239, 1271,
1180  1271, 1240, 1361, 1361, 1241, 1283, 1283, 1242, 1250, 1250,
1181  1250, 991, 1361, 1361, 992, 1296, 1296, 1266, 1204, 1297,
1182  1204, 1205, 1206, 1206, 1229, 1230, 1230, 937, 1181, 1269,
1183  1270, 1270, 1270, 937, 1297, 1207, 1252, 1252, 1252, 1284,
1184  1228, 1297, 1228, 1229, 1230, 1230, 1361, 1232, 1232, 1253,
1185  1206, 1206, 1284, 1029, 1297, 1284, 1297, 1231, 1361, 1251,
1186  1251, 1284, 1289, 1297, 1297, 1297, 1297, 1254, 1255, 1256,
1187  1257, 1263, 1263, 1302, 1258, 1361, 1361, 1259, 1301, 1301,
1188 
1189  1260, 1297, 1302, 1261, 1267, 1267, 1267, 1267, 1267, 1267,
1190  1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267, 1267,
1191  1267, 1267, 1267, 1267, 1267, 1268, 1268, 1268, 1268, 1268,
1192  1268, 1267, 1267, 1267, 1267, 1268, 1268, 1268, 1268, 1268,
1193  1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268,
1194  1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268, 1268,
1195  1302, 1267, 1267, 1267, 1227, 1227, 1227, 1302, 1285, 1285,
1196  1285, 1152, 1152, 1152, 1298, 1298, 1298, 1265, 1265, 1265,
1197  1361, 1271, 1271, 1302, 1302, 1265, 1265, 1265, 1302, 1265,
1198  1265, 1265, 1180, 1180, 1180, 1302, 1305, 1302, 1283, 1283,
1199 
1200  1302, 1303, 1303, 1303, 1342, 1010, 1312, 1312, 1011, 1286,
1201  1296, 1296, 1153, 1292, 1293, 1293, 1301, 1301, 991, 1342,
1202  1295, 969, 1272, 1272, 1272, 969, 991, 1299, 1329, 1329,
1203  1266, 937, 1342, 1181, 937, 1273, 1230, 1230, 1285, 1285,
1204  1285, 1300, 937, 1309, 1310, 1310, 937, 1285, 1285, 1285,
1205  1361, 1312, 1312, 1274, 1275, 1276, 1277, 1342, 969, 1342,
1206  1278, 1361, 1361, 1279, 1341, 1341, 1280, 1342, 1342, 1281,
1207  1290, 1290, 1290, 1285, 1285, 1285, 1342, 1361, 1361, 1010,
1208  1291, 1350, 1291, 1292, 1293, 1293, 1342, 1350, 1010, 1298,
1209  1298, 1298, 1298, 1298, 1298, 969, 1350, 1294, 1290, 1290,
1210 
1211  1290, 1350, 1342, 1350, 969, 1306, 1306, 1306, 1029, 1349,
1212  1349, 1304, 1350, 1350, 1286, 1291, 1350, 1291, 1292, 1293,
1213  1293, 1307, 1307, 1307, 1350, 1152, 1152, 1152, 1341, 1341,
1214  969, 1308, 1294, 1308, 1309, 1310, 1310, 1349, 1349, 1132,
1215  1350, 211, 1133, 1361, 1329, 1329, 937, 225, 1311, 937,
1216  1265, 1265, 1265, 616, 698, 1073, 1313, 1313, 1313, 750,
1217  864, 1180, 1180, 1180, 908, 1029, 1153, 1095, 1123, 1314,
1218  1293, 1293, 1324, 1303, 1303, 1303, 1303, 1303, 1303, 1285,
1219  1285, 1285, 1307, 1307, 1307, 1149, 1177, 1315, 1316, 1317,
1220  1318, 1266, 1325, 1219, 1319, 1243, 1262, 1320, 1282, 1323,
1221 
1222  1321, 1340, 1181, 1322, 1328, 1328, 1328, 937, 1326, 1343,
1223  1343, 1343, 886, 885, 1308, 884, 1308, 1309, 1310, 1310,
1224  1286, 1327, 883, 1132, 882, 881, 1133, 880, 879, 878,
1225  969, 1311, 877, 969, 876, 875, 969, 874, 873, 1073,
1226  1330, 1330, 1330, 872, 871, 870, 869, 1360, 1360, 1360,
1227  1344, 868, 867, 1331, 1310, 1310, 1265, 1265, 1265, 1351,
1228  1351, 1351, 866, 1285, 1285, 1285, 1073, 1343, 1343, 1343,
1229  865, 1332, 1333, 1334, 1335, 846, 843, 842, 1336, 841,
1230  840, 1337, 839, 838, 1338, 837, 836, 1339, 1345, 1345,
1231  1345, 1361, 1343, 1343, 1343, 835, 324, 1266, 1080, 315,
1232 
1233  1080, 1081, 1082, 1082, 1286, 1346, 834, 832, 1132, 1343,
1234  1343, 1343, 1348, 937, 821, 1083, 1073, 821, 821, 821,
1235  969, 1265, 1265, 1265, 1073, 821, 1351, 1351, 1351, 1153,
1236  1347, 1347, 1347, 1132, 1285, 1285, 1285, 1351, 1351, 1351,
1237  1108, 821, 1108, 1109, 1110, 1110, 819, 1352, 818, 1073,
1238  1344, 1343, 1343, 1343, 1343, 1343, 1343, 1111, 817, 816,
1239  815, 814, 1266, 1357, 1357, 1357, 1073, 813, 1353, 812,
1240  811, 1181, 1345, 1345, 1345, 1286, 810, 809, 937, 808,
1241  807, 1354, 1080, 1073, 1080, 1081, 1082, 1082, 806, 805,
1242  804, 969, 1344, 1355, 1073, 1344, 1343, 1343, 1343, 1083,
1243 
1244  803, 802, 801, 1358, 1010, 800, 799, 798, 1073, 797,
1245  796, 1073, 795, 849, 1347, 1347, 1347, 794, 793, 792,
1246  969, 789, 780, 780, 1108, 780, 1108, 1109, 1110, 1110,
1247  780, 780, 780, 778, 777, 776, 775, 1344, 774, 773,
1248  772, 1111, 771, 1359, 770, 769, 768, 767, 766, 765,
1249  764, 763, 256, 1073, 248, 893, 1356, 1356, 1356, 762,
1250  324, 761, 315, 760, 759, 756, 1204, 738, 1204, 1205,
1251  1206, 1206, 737, 736, 735, 734, 733, 732, 731, 730,
1252  729, 728, 727, 1207, 726, 725, 724, 723, 722, 721,
1253  720, 719, 718, 717, 716, 715, 714, 1266, 713, 712,
1254 
1255  711, 710, 709, 708, 707, 705, 705, 705, 705, 705,
1256  705, 703, 702, 937, 1357, 1357, 1357, 686, 685, 684,
1257  683, 682, 681, 680, 1228, 679, 1228, 1229, 1230, 1230,
1258  678, 677, 676, 673, 672, 671, 670, 669, 256, 668,
1259  248, 1231, 667, 666, 665, 324, 664, 324, 663, 315,
1260  662, 315, 661, 658, 657, 1286, 656, 650, 649, 648,
1261  647, 646, 645, 644, 643, 642, 638, 637, 636, 635,
1262  634, 969, 1356, 1356, 1356, 633, 632, 631, 630, 629,
1263  628, 627, 1204, 626, 1204, 1205, 1206, 1206, 625, 624,
1264  623, 622, 621, 618, 617, 604, 603, 602, 596, 1207,
1265 
1266  595, 594, 593, 592, 591, 590, 589, 588, 587, 586,
1267  583, 580, 579, 991, 578, 256, 577, 256, 576, 248,
1268  575, 248, 572, 571, 570, 569, 568, 567, 566, 937,
1269  1360, 1360, 1360, 565, 564, 563, 562, 561, 560, 559,
1270  1308, 558, 1308, 1309, 1310, 1310, 557, 556, 555, 552,
1271  551, 550, 549, 548, 547, 546, 545, 1311, 544, 543,
1272  542, 541, 540, 539, 538, 537, 536, 535, 531, 530,
1273  529, 1344, 528, 527, 526, 525, 519, 518, 517, 516,
1274  515, 514, 513, 512, 511, 510, 509, 1073, 46, 46,
1275  46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
1276 
1277  46, 47, 47, 47, 47, 47, 47, 47, 47, 47,
1278  47, 47, 47, 47, 50, 50, 50, 50, 50, 50,
1279  50, 50, 50, 50, 50, 50, 50, 56, 56, 56,
1280  56, 56, 56, 56, 56, 56, 56, 56, 56, 56,
1281  60, 60, 60, 60, 60, 60, 60, 60, 60, 60,
1282  60, 60, 60, 63, 63, 63, 63, 63, 63, 63,
1283  63, 63, 63, 63, 63, 63, 99, 99, 99, 99,
1284  99, 99, 99, 99, 99, 99, 99, 99, 99, 107,
1285  107, 107, 107, 107, 107, 107, 107, 107, 107, 107,
1286  107, 107, 110, 110, 110, 110, 110, 110, 110, 110,
1287 
1288  110, 110, 110, 110, 110, 115, 115, 115, 115, 115,
1289  115, 115, 115, 115, 115, 115, 115, 115, 118, 118,
1290  118, 118, 118, 118, 118, 118, 118, 118, 118, 118,
1291  118, 121, 121, 121, 121, 121, 121, 121, 121, 121,
1292  121, 121, 121, 121, 125, 125, 125, 125, 125, 125,
1293  125, 125, 125, 125, 125, 125, 125, 127, 127, 127,
1294  127, 127, 127, 127, 127, 127, 127, 127, 127, 127,
1295  131, 131, 131, 131, 131, 131, 131, 131, 131, 131,
1296  131, 131, 131, 133, 133, 133, 133, 133, 133, 133,
1297  133, 133, 133, 133, 133, 133, 137, 137, 137, 137,
1298 
1299  137, 137, 137, 137, 137, 137, 137, 137, 137, 148,
1300  508, 507, 148, 148, 506, 148, 148, 148, 148, 148,
1301  150, 505, 504, 150, 150, 150, 150, 150, 150, 150,
1302  150, 164, 164, 503, 164, 164, 164, 164, 164, 164,
1303  164, 164, 164, 164, 170, 502, 501, 500, 170, 205,
1304  499, 498, 205, 205, 205, 205, 205, 205, 205, 205,
1305  497, 205, 207, 496, 207, 207, 207, 208, 208, 236,
1306  495, 494, 236, 236, 236, 236, 236, 236, 236, 236,
1307  238, 493, 492, 238, 238, 238, 238, 238, 238, 238,
1308  238, 241, 241, 241, 241, 241, 241, 241, 241, 241,
1309 
1310  241, 491, 241, 241, 242, 242, 242, 242, 242, 242,
1311  242, 242, 242, 490, 242, 242, 242, 244, 244, 244,
1312  244, 244, 244, 244, 244, 244, 244, 244, 265, 489,
1313  486, 485, 265, 266, 266, 343, 343, 343, 343, 343,
1314  343, 343, 343, 343, 343, 343, 343, 343, 833, 484,
1315  483, 482, 481, 833, 909, 480, 479, 478, 477, 909,
1316  927, 927, 927, 927, 927, 927, 927, 927, 927, 927,
1317  476, 927, 927, 1267, 1267, 1267, 1267, 1267, 1267, 1267,
1318  1267, 1267, 1267, 1267, 475, 1267, 474, 473, 472, 471,
1319  468, 467, 463, 462, 458, 457, 456, 455, 454, 453,
1320 
1321  452, 451, 450, 446, 441, 440, 439, 438, 437, 436,
1322  435, 434, 433, 432, 431, 430, 429, 428, 427, 426,
1323  425, 424, 423, 419, 344, 414, 413, 412, 411, 410,
1324  409, 408, 407, 406, 405, 404, 324, 324, 401, 324,
1325  324, 400, 399, 315, 315, 396, 315, 315, 395, 394,
1326  393, 392, 391, 387, 386, 385, 384, 383, 382, 381,
1327  378, 377, 376, 375, 371, 368, 367, 366, 365, 364,
1328  360, 354, 353, 352, 351, 350, 349, 348, 347, 346,
1329  345, 344, 271, 1361, 340, 339, 256, 256, 336, 256,
1330  256, 335, 248, 248, 332, 248, 248, 331, 239, 237,
1331 
1332  330, 327, 326, 325, 324, 323, 322, 226, 321, 318,
1333  317, 316, 315, 314, 313, 312, 311, 310, 204, 304,
1334  291, 286, 280, 169, 169, 264, 263, 160, 262, 259,
1335  258, 257, 256, 255, 151, 149, 254, 251, 250, 249,
1336  248, 247, 243, 240, 239, 237, 235, 227, 226, 224,
1337  204, 199, 169, 167, 166, 165, 163, 162, 161, 160,
1338  159, 151, 149, 147, 140, 1361, 136, 136, 126, 126,
1339  45, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361,
1340  1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361,
1341  1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361,
1342 
1343  1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361,
1344  1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361,
1345  1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361,
1346  1361
1347  } ;
1348 
1349 static const flex_int16_t yy_chk[3432] =
1350  { 0,
1351  0, 0, 3, 4, 5, 0, 0, 5, 6, 23,
1352  24, 6, 9, 9, 9, 7, 7, 7, 39, 5,
1353  5, 5, 31, 6, 6, 6, 7, 8, 8, 8,
1354  5, 10, 10, 10, 6, 23, 24, 40, 8, 79,
1355  79, 37, 146, 0, 39, 11, 38, 31, 11, 12,
1356  5, 182, 12, 146, 6, 182, 3, 4, 168, 168,
1357  11, 11, 11, 40, 12, 12, 12, 9, 37, 9,
1358  7, 11, 7, 38, 158, 12, 31, 43, 31, 43,
1359  291, 44, 8, 44, 8, 158, 10, 176, 10, 176,
1360  291, 11, 139, 139, 139, 12, 13, 13, 13, 13,
1361 
1362  13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
1363  13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
1364  13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
1365  13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
1366  13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
1367  13, 13, 13, 13, 13, 13, 15, 15, 15, 15,
1368  15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1369  15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1370  15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1371  15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1372 
1373  15, 15, 15, 15, 15, 15, 15, 15, 15, 15,
1374  15, 15, 15, 15, 15, 15, 17, 17, 17, 17,
1375  17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
1376  17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
1377  17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
1378  17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
1379  17, 17, 17, 17, 17, 17, 17, 17, 17, 17,
1380  17, 17, 17, 17, 17, 17, 19, 67, 54, 20,
1381  54, 180, 54, 54, 54, 814, 191, 815, 184, 54,
1382  191, 19, 19, 19, 20, 20, 20, 184, 180, 186,
1383 
1384  181, 91, 19, 181, 181, 20, 816, 91, 198, 67,
1385  186, 67, 91, 67, 67, 67, 196, 183, 183, 196,
1386  67, 198, 19, 183, 91, 20, 21, 21, 21, 21,
1387  21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
1388  21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
1389  21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
1390  21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
1391  21, 21, 21, 21, 21, 21, 21, 21, 21, 21,
1392  21, 21, 21, 21, 21, 21, 25, 817, 32, 26,
1393  27, 27, 27, 28, 28, 28, 29, 29, 29, 223,
1394 
1395  35, 25, 25, 25, 26, 26, 26, 30, 30, 30,
1396  223, 36, 25, 32, 83, 26, 83, 83, 83, 83,
1397  187, 200, 200, 200, 194, 35, 187, 113, 194, 201,
1398  201, 818, 25, 253, 609, 26, 36, 194, 234, 202,
1399  202, 202, 32, 609, 32, 27, 253, 27, 28, 234,
1400  28, 29, 819, 29, 35, 113, 35, 113, 283, 113,
1401  113, 113, 30, 283, 30, 36, 113, 36, 81, 81,
1402  202, 81, 81, 81, 81, 81, 81, 81, 81, 81,
1403  81, 81, 81, 81, 81, 81, 81, 81, 81, 81,
1404  81, 81, 81, 81, 81, 81, 81, 81, 81, 81,
1405 
1406  81, 81, 81, 81, 81, 81, 81, 81, 81, 81,
1407  81, 81, 81, 81, 81, 81, 81, 81, 81, 81,
1408  81, 81, 81, 81, 81, 81, 81, 81, 88, 833,
1409  88, 95, 95, 95, 96, 96, 96, 98, 98, 98,
1410  102, 177, 177, 177, 178, 178, 178, 261, 102, 347,
1411  102, 347, 102, 102, 102, 188, 188, 188, 347, 102,
1412  261, 190, 190, 190, 203, 207, 203, 178, 192, 192,
1413  192, 207, 98, 209, 209, 209, 207, 306, 98, 245,
1414  245, 245, 306, 88, 298, 98, 95, 98, 207, 96,
1415  614, 190, 210, 210, 210, 308, 308, 188, 177, 190,
1416 
1417  298, 178, 192, 195, 195, 195, 614, 195, 212, 212,
1418  212, 466, 188, 195, 246, 246, 246, 774, 190, 203,
1419  195, 195, 195, 307, 307, 192, 466, 210, 209, 267,
1420  267, 267, 774, 210, 268, 268, 268, 835, 285, 285,
1421  210, 282, 210, 212, 320, 282, 282, 293, 329, 212,
1422  285, 691, 345, 307, 293, 345, 212, 320, 212, 293,
1423  691, 329, 341, 341, 341, 368, 380, 368, 345, 383,
1424  345, 370, 370, 368, 380, 386, 390, 390, 383, 446,
1425  368, 383, 380, 405, 405, 405, 267, 836, 386, 370,
1426  837, 268, 838, 446, 446, 438, 438, 438, 487, 487,
1427 
1428  487, 488, 488, 488, 500, 438, 390, 438, 438, 438,
1429  438, 839, 500, 502, 502, 502, 514, 514, 514, 341,
1430  522, 522, 438, 521, 521, 521, 514, 528, 514, 514,
1431  514, 514, 520, 520, 520, 528, 548, 841, 405, 842,
1432  548, 843, 520, 514, 520, 520, 520, 520, 559, 559,
1433  559, 488, 844, 487, 548, 563, 563, 563, 559, 520,
1434  559, 559, 559, 559, 573, 573, 573, 845, 502, 523,
1435  523, 523, 584, 584, 584, 559, 585, 585, 585, 597,
1436  597, 597, 523, 523, 523, 598, 598, 598, 849, 597,
1437  850, 597, 597, 597, 597, 599, 599, 605, 605, 605,
1438 
1439  523, 523, 523, 523, 606, 606, 597, 523, 703, 585,
1440  523, 856, 563, 523, 573, 703, 523, 607, 607, 616,
1441  616, 616, 602, 602, 602, 653, 653, 584, 600, 600,
1442  600, 602, 652, 652, 652, 858, 651, 651, 651, 688,
1443  688, 600, 600, 600, 689, 689, 651, 778, 651, 651,
1444  651, 651, 687, 687, 687, 696, 657, 657, 657, 600,
1445  600, 600, 600, 651, 704, 704, 600, 740, 740, 600,
1446  859, 696, 600, 741, 741, 600, 778, 602, 654, 654,
1447  654, 656, 656, 656, 659, 659, 659, 698, 698, 698,
1448  656, 654, 654, 654, 660, 660, 660, 674, 674, 674,
1449 
1450  699, 699, 699, 700, 700, 700, 705, 705, 705, 654,
1451  654, 654, 654, 657, 743, 860, 654, 779, 779, 654,
1452  660, 861, 654, 743, 748, 654, 786, 786, 698, 863,
1453  674, 698, 701, 701, 701, 865, 656, 706, 706, 706,
1454  748, 659, 701, 866, 701, 701, 701, 701, 739, 739,
1455  739, 750, 750, 750, 867, 699, 820, 820, 700, 701,
1456  751, 751, 751, 752, 752, 752, 753, 753, 753, 754,
1457  754, 754, 755, 755, 755, 868, 753, 869, 753, 753,
1458  753, 753, 757, 757, 757, 857, 780, 780, 780, 785,
1459  785, 785, 750, 753, 857, 750, 827, 827, 755, 781,
1460 
1461  781, 781, 870, 782, 782, 782, 854, 854, 757, 783,
1462  783, 783, 826, 826, 826, 751, 855, 855, 752, 821,
1463  821, 821, 830, 830, 830, 871, 754, 780, 873, 862,
1464  780, 822, 822, 822, 876, 823, 823, 823, 877, 878,
1465  781, 782, 879, 781, 782, 862, 881, 782, 830, 783,
1466  783, 883, 884, 783, 787, 787, 787, 832, 832, 832,
1467  821, 885, 886, 821, 824, 824, 824, 787, 787, 787,
1468  887, 888, 822, 823, 889, 822, 823, 891, 892, 823,
1469  834, 834, 834, 893, 894, 787, 787, 787, 787, 840,
1470  840, 840, 787, 898, 898, 787, 899, 899, 787, 900,
1471 
1472  902, 787, 903, 901, 824, 824, 904, 905, 824, 828,
1473  828, 828, 901, 907, 832, 909, 851, 851, 851, 853,
1474  853, 853, 828, 828, 828, 852, 852, 852, 915, 864,
1475  864, 864, 906, 916, 895, 895, 895, 834, 917, 918,
1476  828, 828, 828, 828, 840, 919, 922, 828, 906, 923,
1477  828, 924, 925, 828, 926, 927, 828, 851, 851, 928,
1478  851, 896, 896, 896, 929, 939, 852, 932, 932, 852,
1479  864, 940, 941, 864, 852, 895, 895, 944, 895, 897,
1480  897, 897, 908, 908, 908, 948, 864, 910, 910, 910,
1481  913, 913, 913, 920, 920, 920, 930, 930, 930, 936,
1482 
1483  952, 936, 896, 954, 955, 896, 921, 921, 921, 956,
1484  896, 931, 931, 931, 957, 958, 921, 960, 921, 921,
1485  921, 921, 961, 908, 964, 964, 908, 933, 933, 933,
1486  968, 971, 968, 921, 934, 934, 934, 930, 972, 908,
1487  930, 935, 935, 935, 910, 930, 973, 913, 920, 963,
1488  963, 963, 931, 974, 981, 931, 978, 978, 931, 962,
1489  962, 962, 982, 965, 965, 965, 984, 985, 933, 986,
1490  987, 933, 966, 966, 966, 934, 988, 991, 934, 935,
1491  992, 994, 935, 995, 933, 935, 967, 967, 967, 997,
1492  963, 934, 994, 963, 998, 993, 963, 999, 935, 993,
1493 
1494  962, 1002, 1004, 962, 965, 1005, 1006, 965, 962, 977,
1495  977, 977, 1007, 966, 1010, 1011, 966, 1014, 1015, 1016,
1496  965, 989, 989, 989, 967, 1013, 1021, 967, 1012, 966,
1497  967, 1023, 1012, 1018, 1018, 1018, 1013, 1019, 1019, 1008,
1498  1008, 1008, 1022, 967, 979, 979, 979, 1020, 1020, 1024,
1499  1025, 1022, 1026, 1027, 1028, 1030, 1032, 979, 979, 979,
1500  1033, 1034, 989, 1039, 1039, 989, 1042, 1043, 989, 1027,
1501  1029, 1029, 1029, 1044, 1046, 979, 979, 979, 979, 1048,
1502  1008, 1045, 979, 1008, 1044, 979, 1008, 1050, 979, 1051,
1503  1045, 979, 990, 990, 990, 1038, 1038, 1038, 1052, 1053,
1504 
1505  1058, 1058, 990, 1061, 990, 990, 990, 990, 1035, 1035,
1506  1035, 1029, 1062, 1066, 1029, 1037, 1037, 1037, 1035, 990,
1507  1035, 1035, 1035, 1035, 1057, 1057, 1057, 1029, 1067, 1074,
1508  1036, 1036, 1036, 990, 1087, 1035, 990, 1009, 1009, 1009,
1509  1036, 1089, 1036, 1036, 1036, 1036, 1072, 1009, 1072, 1009,
1510  1009, 1009, 1009, 1054, 1054, 1054, 1037, 1036, 1063, 1037,
1511  1055, 1055, 1055, 1054, 1009, 1054, 1054, 1054, 1054, 1063,
1512  1055, 1090, 1055, 1055, 1055, 1055, 1064, 1088, 1009, 1091,
1513  1054, 1009, 1040, 1040, 1040, 1064, 1088, 1055, 1092, 1056,
1514  1056, 1056, 1068, 1068, 1094, 1040, 1040, 1040, 1065, 1065,
1515 
1516  1065, 1069, 1069, 1069, 1080, 1080, 1080, 1081, 1081, 1084,
1517  1084, 1084, 1093, 1040, 1040, 1040, 1040, 1085, 1085, 1096,
1518  1040, 1086, 1086, 1040, 1097, 1100, 1040, 1101, 1093, 1040,
1519  1056, 1103, 1098, 1056, 1059, 1059, 1059, 1115, 1070, 1070,
1520  1070, 1098, 1069, 1109, 1109, 1069, 1117, 1059, 1059, 1059,
1521  1071, 1071, 1071, 1113, 1113, 1065, 1114, 1114, 1069, 1079,
1522  1079, 1079, 1108, 1108, 1108, 1059, 1059, 1059, 1059, 1112,
1523  1112, 1112, 1059, 1118, 1116, 1059, 1119, 1120, 1059, 1070,
1524  1122, 1059, 1070, 1116, 1124, 1121, 1125, 1130, 1071, 1132,
1525  1126, 1071, 1133, 1135, 1071, 1070, 1077, 1077, 1077, 1126,
1526 
1527  1079, 1121, 1141, 1079, 1135, 1143, 1077, 1071, 1077, 1077,
1528  1077, 1077, 1095, 1095, 1095, 1139, 1139, 1105, 1105, 1105,
1529  1107, 1107, 1107, 1077, 1082, 1082, 1082, 1105, 1144, 1105,
1530  1105, 1105, 1105, 1145, 1123, 1123, 1123, 1082, 1082, 1082,
1531  1128, 1128, 1128, 1134, 1105, 1140, 1140, 1134, 1136, 1136,
1532  1136, 1142, 1146, 1095, 1147, 1082, 1082, 1082, 1082, 1148,
1533  1142, 1107, 1082, 1154, 1107, 1082, 1150, 1150, 1082, 1162,
1534  1147, 1082, 1099, 1099, 1099, 1123, 1138, 1138, 1138, 1149,
1535  1149, 1149, 1099, 1169, 1099, 1099, 1099, 1099, 1151, 1151,
1536  1151, 1152, 1152, 1152, 1155, 1155, 1155, 1128, 1171, 1099,
1537 
1538  1153, 1153, 1153, 1172, 1155, 1136, 1155, 1155, 1155, 1155,
1539  1099, 1110, 1110, 1110, 1158, 1158, 1158, 1159, 1159, 1167,
1540  1167, 1155, 1168, 1168, 1110, 1110, 1110, 1170, 1173, 1151,
1541  1174, 1176, 1152, 1166, 1166, 1166, 1170, 1175, 1153, 1178,
1542  1178, 1153, 1110, 1110, 1110, 1110, 1157, 1157, 1157, 1110,
1543  1182, 1191, 1110, 1175, 1192, 1110, 1187, 1187, 1110, 1127,
1544  1127, 1127, 1177, 1177, 1177, 1156, 1156, 1156, 1196, 1127,
1545  1211, 1127, 1127, 1127, 1127, 1156, 1213, 1156, 1156, 1156,
1546  1156, 1179, 1179, 1179, 1214, 1193, 1127, 1157, 1215, 1194,
1547  1157, 1216, 1156, 1180, 1180, 1180, 1193, 1127, 1194, 1218,
1548 
1549  1185, 1185, 1185, 1157, 1160, 1160, 1160, 1212, 1181, 1181,
1550  1181, 1197, 1197, 1183, 1183, 1183, 1212, 1160, 1160, 1160,
1551  1205, 1205, 1179, 1183, 1235, 1183, 1183, 1183, 1183, 1186,
1552  1186, 1186, 1209, 1209, 1180, 1160, 1160, 1160, 1160, 1237,
1553  1183, 1185, 1160, 1238, 1185, 1160, 1181, 1217, 1160, 1181,
1554  1239, 1160, 1184, 1184, 1184, 1210, 1210, 1185, 1195, 1195,
1555  1195, 1240, 1184, 1217, 1184, 1184, 1184, 1184, 1198, 1198,
1556  1198, 1199, 1199, 1199, 1242, 1200, 1200, 1200, 1244, 1184,
1557  1188, 1188, 1188, 1204, 1204, 1204, 1208, 1208, 1208, 1245,
1558  1203, 1203, 1203, 1188, 1188, 1188, 1219, 1219, 1219, 1221,
1559 
1560  1221, 1222, 1222, 1222, 1223, 1223, 1223, 1224, 1224, 1224,
1561  1248, 1188, 1188, 1188, 1188, 1195, 1200, 1200, 1188, 1229,
1562  1229, 1188, 1233, 1233, 1188, 1234, 1234, 1188, 1201, 1201,
1563  1201, 1203, 1252, 1252, 1203, 1253, 1253, 1219, 1201, 1254,
1564  1201, 1201, 1201, 1201, 1228, 1228, 1228, 1203, 1224, 1224,
1565  1225, 1225, 1225, 1219, 1256, 1201, 1206, 1206, 1206, 1241,
1566  1225, 1257, 1225, 1225, 1225, 1225, 1232, 1232, 1232, 1206,
1567  1206, 1206, 1236, 1246, 1255, 1241, 1258, 1225, 1251, 1251,
1568  1251, 1236, 1246, 1255, 1259, 1260, 1261, 1206, 1206, 1206,
1569  1206, 1263, 1263, 1274, 1206, 1272, 1272, 1206, 1273, 1273,
1570 
1571  1206, 1260, 1276, 1206, 1220, 1220, 1220, 1220, 1220, 1220,
1572  1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220,
1573  1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220,
1574  1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220,
1575  1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220,
1576  1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220,
1577  1277, 1220, 1220, 1220, 1227, 1227, 1227, 1278, 1243, 1243,
1578  1243, 1249, 1249, 1249, 1262, 1262, 1262, 1264, 1264, 1264,
1579  1271, 1271, 1271, 1279, 1280, 1265, 1265, 1265, 1275, 1266,
1580  1266, 1266, 1269, 1269, 1269, 1281, 1287, 1275, 1283, 1283,
1581 
1582  1280, 1282, 1282, 1282, 1315, 1227, 1292, 1292, 1227, 1243,
1583  1296, 1296, 1249, 1291, 1291, 1291, 1301, 1301, 1264, 1317,
1584  1249, 1227, 1230, 1230, 1230, 1243, 1265, 1266, 1309, 1309,
1585  1266, 1262, 1318, 1269, 1264, 1230, 1230, 1230, 1284, 1284,
1586  1284, 1269, 1265, 1308, 1308, 1308, 1266, 1285, 1285, 1285,
1587  1312, 1312, 1312, 1230, 1230, 1230, 1230, 1319, 1282, 1316,
1588  1230, 1313, 1313, 1230, 1314, 1314, 1230, 1320, 1316, 1230,
1589  1247, 1247, 1247, 1286, 1286, 1286, 1322, 1330, 1330, 1284,
1590  1247, 1332, 1247, 1247, 1247, 1247, 1321, 1333, 1285, 1297,
1591  1297, 1297, 1298, 1298, 1298, 1284, 1333, 1247, 1290, 1290,
1592 
1593  1290, 1334, 1321, 1335, 1285, 1288, 1288, 1288, 1247, 1331,
1594  1331, 1286, 1336, 1337, 1286, 1288, 1339, 1288, 1288, 1288,
1595  1288, 1289, 1289, 1289, 1338, 1295, 1295, 1295, 1341, 1341,
1596  1286, 1289, 1288, 1289, 1289, 1289, 1289, 1349, 1349, 1290,
1597  1338, 1386, 1290, 1329, 1329, 1329, 1297, 1387, 1289, 1298,
1598  1299, 1299, 1299, 1396, 1397, 1290, 1293, 1293, 1293, 1398,
1599  1400, 1300, 1300, 1300, 1401, 1404, 1295, 1405, 1406, 1293,
1600  1293, 1293, 1295, 1302, 1302, 1302, 1303, 1303, 1303, 1304,
1601  1304, 1304, 1307, 1307, 1307, 1407, 1408, 1293, 1293, 1293,
1602  1293, 1299, 1299, 1409, 1293, 1410, 1411, 1293, 1412, 1414,
1603 
1604  1293, 1415, 1300, 1293, 1305, 1305, 1305, 1299, 1300, 1323,
1605  1323, 1323, 813, 812, 1305, 811, 1305, 1305, 1305, 1305,
1606  1304, 1304, 810, 1307, 809, 808, 1307, 805, 804, 803,
1607  1302, 1305, 802, 1303, 800, 799, 1304, 798, 797, 1307,
1608  1310, 1310, 1310, 796, 795, 794, 793, 1360, 1360, 1360,
1609  1323, 792, 791, 1310, 1310, 1310, 1325, 1325, 1325, 1340,
1610  1340, 1340, 790, 1327, 1327, 1327, 1323, 1342, 1342, 1342,
1611  789, 1310, 1310, 1310, 1310, 775, 773, 769, 1310, 768,
1612  767, 1310, 766, 765, 1310, 764, 763, 1310, 1324, 1324,
1613  1324, 1360, 1343, 1343, 1343, 762, 761, 1325, 1324, 760,
1614 
1615  1324, 1324, 1324, 1324, 1327, 1325, 759, 756, 1342, 1344,
1616  1344, 1344, 1327, 1325, 749, 1324, 1340, 747, 746, 745,
1617  1327, 1346, 1346, 1346, 1342, 744, 1350, 1350, 1350, 1324,
1618  1326, 1326, 1326, 1343, 1348, 1348, 1348, 1351, 1351, 1351,
1619  1326, 742, 1326, 1326, 1326, 1326, 738, 1344, 737, 1343,
1620  1344, 1352, 1352, 1352, 1355, 1355, 1355, 1326, 736, 735,
1621  734, 733, 1346, 1357, 1357, 1357, 1344, 731, 1346, 730,
1622  729, 1326, 1345, 1345, 1345, 1348, 728, 727, 1346, 726,
1623  725, 1348, 1345, 1350, 1345, 1345, 1345, 1345, 724, 722,
1624  721, 1348, 1352, 1352, 1351, 1355, 1358, 1358, 1358, 1345,
1625 
1626  720, 719, 718, 1355, 1357, 717, 716, 714, 1352, 713,
1627  712, 1355, 711, 1345, 1347, 1347, 1347, 710, 709, 707,
1628  1357, 702, 697, 695, 1347, 694, 1347, 1347, 1347, 1347,
1629  693, 692, 690, 686, 685, 684, 683, 1358, 682, 681,
1630  680, 1347, 679, 1358, 678, 677, 675, 673, 672, 671,
1631  670, 669, 668, 1358, 667, 1347, 1353, 1353, 1353, 666,
1632  665, 664, 663, 662, 661, 658, 1353, 650, 1353, 1353,
1633  1353, 1353, 648, 647, 646, 645, 644, 643, 642, 641,
1634  640, 639, 638, 1353, 637, 636, 635, 634, 633, 632,
1635  631, 630, 629, 627, 626, 625, 624, 1353, 623, 622,
1636 
1637  621, 620, 619, 618, 617, 615, 613, 612, 611, 610,
1638  608, 604, 603, 1353, 1354, 1354, 1354, 596, 595, 594,
1639  593, 592, 591, 590, 1354, 589, 1354, 1354, 1354, 1354,
1640  588, 587, 586, 583, 582, 581, 580, 579, 578, 577,
1641  576, 1354, 575, 574, 572, 571, 570, 569, 568, 567,
1642  566, 565, 564, 562, 561, 1354, 560, 558, 557, 556,
1643  555, 554, 553, 552, 551, 550, 547, 546, 545, 544,
1644  543, 1354, 1356, 1356, 1356, 542, 541, 540, 539, 538,
1645  536, 535, 1356, 534, 1356, 1356, 1356, 1356, 533, 532,
1646  531, 530, 529, 527, 526, 517, 516, 515, 513, 1356,
1647 
1648  512, 511, 510, 509, 508, 507, 506, 505, 504, 503,
1649  501, 499, 498, 1356, 496, 495, 494, 493, 492, 491,
1650  490, 489, 486, 485, 484, 483, 482, 481, 480, 1356,
1651  1359, 1359, 1359, 479, 478, 477, 476, 475, 473, 472,
1652  1359, 470, 1359, 1359, 1359, 1359, 469, 468, 467, 465,
1653  464, 463, 462, 461, 460, 459, 458, 1359, 457, 455,
1654  454, 453, 452, 451, 450, 449, 448, 447, 445, 444,
1655  443, 1359, 442, 441, 440, 439, 437, 436, 435, 434,
1656  433, 432, 431, 430, 429, 428, 427, 1359, 1362, 1362,
1657  1362, 1362, 1362, 1362, 1362, 1362, 1362, 1362, 1362, 1362,
1658 
1659  1362, 1363, 1363, 1363, 1363, 1363, 1363, 1363, 1363, 1363,
1660  1363, 1363, 1363, 1363, 1364, 1364, 1364, 1364, 1364, 1364,
1661  1364, 1364, 1364, 1364, 1364, 1364, 1364, 1365, 1365, 1365,
1662  1365, 1365, 1365, 1365, 1365, 1365, 1365, 1365, 1365, 1365,
1663  1366, 1366, 1366, 1366, 1366, 1366, 1366, 1366, 1366, 1366,
1664  1366, 1366, 1366, 1367, 1367, 1367, 1367, 1367, 1367, 1367,
1665  1367, 1367, 1367, 1367, 1367, 1367, 1368, 1368, 1368, 1368,
1666  1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1368, 1369,
1667  1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369, 1369,
1668  1369, 1369, 1370, 1370, 1370, 1370, 1370, 1370, 1370, 1370,
1669 
1670  1370, 1370, 1370, 1370, 1370, 1371, 1371, 1371, 1371, 1371,
1671  1371, 1371, 1371, 1371, 1371, 1371, 1371, 1371, 1372, 1372,
1672  1372, 1372, 1372, 1372, 1372, 1372, 1372, 1372, 1372, 1372,
1673  1372, 1373, 1373, 1373, 1373, 1373, 1373, 1373, 1373, 1373,
1674  1373, 1373, 1373, 1373, 1374, 1374, 1374, 1374, 1374, 1374,
1675  1374, 1374, 1374, 1374, 1374, 1374, 1374, 1375, 1375, 1375,
1676  1375, 1375, 1375, 1375, 1375, 1375, 1375, 1375, 1375, 1375,
1677  1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376,
1678  1376, 1376, 1376, 1377, 1377, 1377, 1377, 1377, 1377, 1377,
1679  1377, 1377, 1377, 1377, 1377, 1377, 1378, 1378, 1378, 1378,
1680 
1681  1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1378, 1379,
1682  426, 425, 1379, 1379, 423, 1379, 1379, 1379, 1379, 1379,
1683  1380, 422, 421, 1380, 1380, 1380, 1380, 1380, 1380, 1380,
1684  1380, 1381, 1381, 420, 1381, 1381, 1381, 1381, 1381, 1381,
1685  1381, 1381, 1381, 1381, 1382, 419, 418, 417, 1382, 1383,
1686  416, 415, 1383, 1383, 1383, 1383, 1383, 1383, 1383, 1383,
1687  414, 1383, 1384, 413, 1384, 1384, 1384, 1385, 1385, 1388,
1688  412, 411, 1388, 1388, 1388, 1388, 1388, 1388, 1388, 1388,
1689  1389, 410, 409, 1389, 1389, 1389, 1389, 1389, 1389, 1389,
1690  1389, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390, 1390,
1691 
1692  1390, 408, 1390, 1390, 1391, 1391, 1391, 1391, 1391, 1391,
1693  1391, 1391, 1391, 407, 1391, 1391, 1391, 1392, 1392, 1392,
1694  1392, 1392, 1392, 1392, 1392, 1392, 1392, 1392, 1393, 406,
1695  404, 403, 1393, 1394, 1394, 1395, 1395, 1395, 1395, 1395,
1696  1395, 1395, 1395, 1395, 1395, 1395, 1395, 1395, 1399, 402,
1697  401, 399, 398, 1399, 1402, 397, 396, 395, 394, 1402,
1698  1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403,
1699  393, 1403, 1403, 1413, 1413, 1413, 1413, 1413, 1413, 1413,
1700  1413, 1413, 1413, 1413, 392, 1413, 391, 389, 388, 387,
1701  385, 384, 382, 381, 379, 378, 377, 376, 375, 374,
1702 
1703  373, 372, 371, 369, 367, 366, 365, 364, 363, 362,
1704  361, 360, 359, 358, 357, 356, 355, 354, 352, 351,
1705  350, 349, 348, 346, 343, 340, 339, 338, 337, 336,
1706  335, 334, 333, 332, 331, 330, 328, 327, 326, 325,
1707  323, 322, 321, 319, 318, 317, 316, 314, 313, 312,
1708  311, 310, 309, 305, 304, 303, 302, 301, 300, 299,
1709  297, 296, 295, 294, 292, 290, 289, 288, 287, 286,
1710  284, 281, 280, 279, 278, 277, 276, 275, 274, 273,
1711  272, 271, 270, 265, 263, 262, 260, 259, 258, 257,
1712  255, 254, 252, 251, 250, 249, 247, 243, 239, 237,
1713 
1714  235, 233, 232, 231, 230, 229, 227, 226, 224, 222,
1715  221, 220, 219, 218, 216, 215, 214, 213, 204, 197,
1716  193, 189, 185, 170, 169, 167, 161, 160, 159, 157,
1717  156, 155, 154, 153, 151, 149, 147, 145, 144, 143,
1718  142, 141, 135, 124, 120, 117, 114, 109, 108, 103,
1719  93, 82, 80, 78, 77, 76, 74, 73, 72, 70,
1720  68, 62, 58, 55, 52, 45, 42, 41, 34, 33,
1721  1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361,
1722  1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361,
1723  1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361,
1724 
1725  1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361,
1726  1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361,
1727  1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361, 1361,
1728  1361
1729  } ;
1730 
1733 
1734 extern int yy_flex_debug;
1736 
1737 /* The intent behind this definition is that it'll catch
1738  * any uses of REJECT which flex missed.
1739  */
1740 #define REJECT reject_used_but_not_detected
1741 #define yymore() yymore_used_but_not_detected
1742 #define YY_MORE_ADJ 0
1743 #define YY_RESTORE_YY_MORE_OFFSET
1744 char *yytext;
1745 #line 1 "detex.l"
1746 
1747 #line 97 "detex.l"
1748 #undef IGNORE
1749 #undef ECHO
1750 
1751 #define LaBEGIN if (fLatex) BEGIN
1752 #define IGNORE Ignore()
1753 #define INCRLINENO IncrLineNo()
1754 #define ECHO Echo()
1755 #define NOUN if (fSpace && !fWord && !fReplace) putchar(' '); else {if (fReplace) printf("noun");}
1756 #define VERBNOUN if (fReplace) printf(" verbs noun"); /* puts a verb and a noun to make grammar checking work */
1757 #define SPACE if (!fWord) putchar(' ')
1758 #define NEWLINE LineBreak()
1759 #define LATEX fLatex=!fForcetex
1760 #define KILLARGS(x) cArgs=x; LaBEGIN LaMacro
1761 #define STRIPARGS(x) cArgs=x; LaBEGIN LaMacro2
1762 #define CITE(x) if (fLatex && !fCite) KILLARGS(x)
1763 
1764 #define NO_MALLOC_DECL
1765 
1766 void LineBreak();
1767 void Ignore();
1768 void IncrLineNo();
1769 void Echo();
1770 void AddInclude(char *sbFile);
1771 void ErrorExit(const char *sb1);
1772 void UsageExit(void);
1773 void VersionExit(void);
1774 void IncludeFile(char *sbFile);
1775 void InputFile(char *sbFile);
1776 void SetEnvIgnore(const char *sbEnvList);
1777 #ifndef KPATHSEA
1778 void SetInputPaths(void);
1779 #endif
1780 void Warning(const char *sb1, const char *sb2);
1781 int BeginEnv(const char *sbEnv);
1782 int EndEnv(const char *sbEnv);
1783 int InList(char *sbFile);
1784 int SeparateList(char *sbList, char *rgsbList[] ,char chSep, int csbMax);
1785 FILE *TexOpen(char *sbFile);
1786 char *SafeMalloc(int cch, const char *sbMessage);
1787 #ifndef KPATHSEA
1788 char *getenv();
1789 #ifndef NO_MALLOC_DECL
1790 char *malloc();
1791 #endif
1792 #ifdef OS2
1793 void yyless(int);
1794 void OS2UsageExit(void);
1795 #endif
1796 #endif /* KPATHSEA */
1797 
1798 char *rgsbEnvIgnore[MAXENVS]; /* list of environments ignored */
1799 char *rgsbIncList[MAXINCLIST]; /* list of includeonly files */
1800 char *rgsbInputPaths[MAXINPUTPATHS]; /* list of input paths in order */
1801 char sbCurrentIgnoredEnv[CCHMAXENV]; /* current environment being ignored */
1802 char *sbProgName; /* name we were invoked with */
1803 #ifndef NOFILE /* might be defined in <sys/param.h> */
1804 #define NOFILE 256
1805 #endif
1806 FILE *rgfp[NOFILE+1]; /* stack of input/include files */
1807 int cfp = 0; /* count of files in stack */
1808 int cOpenBrace = 0; /* count of `{' in <LaMacro> and <LaMacro2> */
1809 int cArgs = 0; /* argument connt in <LaArgs> */
1810 int csbEnvIgnore; /* count of environments ignored */
1811 int csbIncList = 0; /* count of includeonly files */
1812 int csbInputPaths; /* count of input paths */
1813 int fLatex = 0; /* flag to indicated delatex */
1814 int fWord = 0; /* flag for -w option */
1815 int fFollow = 1; /* flag to follow input/include */
1816 int fCite = 0; /* flag to echo \cite and \ref args */
1817 int fSpace = 0; /* flag to replace \cs with space */
1818 int fForcetex = 0; /* flag to inhibit latex mode */
1819 int fSrcLoc = 0; /* flag to display source location of original file */
1820 int fShowPictures = 0; /* flag to show picture names */
1821 int fReplace = 0; /* flag to replace envirnments with "noun" */
1822 
1824 int footnoteLevel = -100;
1825 
1826 #ifdef FLEX_SCANNER
1827 /* flex has contexts for buffers that need to be switched when file changes
1828  * otherwise output contains imported files in reverse order. Weird, but
1829  * true.
1830  */
1831 YY_BUFFER_STATE rgsb[NOFILE + 1]; /* flex context stack */
1832 char* fFileNames[NOFILE + 1]; /* names of the buffers in context stack */
1833 int fFileLines[NOFILE + 1]; /* line number in each of the context files */
1834 int fIsColumn0 = 1; /* Are we at the begining of a line? */
1835 int csb = 0; /* depth of flex context stack */
1836 #endif /* FLEX_SCANNER */
1837 
1838 #line 1839 "lex.yy.c"
1839 
1840 #line 1841 "lex.yy.c"
1841 
1842 #define INITIAL 0
1843 #define Define 1
1844 #define Display 2
1845 #define IncludeOnly 3
1846 #define Input 4
1847 #define Math 5
1848 #define Normal 6
1849 #define Control 7
1850 #define LaBegin 8
1851 #define LaDisplay 9
1852 #define LaEnd 10
1853 #define LaEnv 11
1854 #define LaFormula 12
1855 #define LaInclude 13
1856 #define LaSubfile 14
1857 #define LaMacro 15
1858 #define LaOptArg 16
1859 #define LaMacro2 17
1860 #define LaOptArg2 18
1861 #define LaVerbatim 19
1862 #define LaBreak 20
1863 #define LaPicture 21
1864 
1865 #ifndef YY_NO_UNISTD_H
1866 /* Special case for "unistd.h", since it is non-ANSI. We include it way
1867  * down here because we want the user's section 1 to have been scanned first.
1868  * The user has a chance to override it with an option.
1869  */
1870 #include <unistd.h>
1871 #endif
1872 
1873 #ifndef YY_EXTRA_TYPE
1874 #define YY_EXTRA_TYPE void *
1875 #endif
1876 
1877 static int yy_init_globals ( void );
1878 
1879 /* Accessor methods to globals.
1880  These are made visible to non-reentrant scanners for convenience. */
1881 
1882 int yylex_destroy ( void );
1883 
1884 int yyget_debug ( void );
1885 
1886 void yyset_debug ( int debug_flag );
1887 
1889 
1890 void yyset_extra ( YY_EXTRA_TYPE user_defined );
1891 
1892 FILE *yyget_in ( void );
1893 
1894 void yyset_in ( FILE * _in_str );
1895 
1896 FILE *yyget_out ( void );
1897 
1898 void yyset_out ( FILE * _out_str );
1899 
1900  int yyget_leng ( void );
1901 
1902 char *yyget_text ( void );
1903 
1904 int yyget_lineno ( void );
1905 
1906 void yyset_lineno ( int _line_number );
1907 
1908 /* Macros after this point can all be overridden by user definitions in
1909  * section 1.
1910  */
1911 
1912 #ifndef YY_SKIP_YYWRAP
1913 #ifdef __cplusplus
1914 extern "C" int yywrap ( void );
1915 #else
1916 extern int yywrap ( void );
1917 #endif
1918 #endif
1919 
1920 #ifndef YY_NO_UNPUT
1921 
1922 #endif
1923 
1924 #ifndef yytext_ptr
1925 static void yy_flex_strncpy ( char *, const char *, int );
1926 #endif
1927 
1928 #ifdef YY_NEED_STRLEN
1929 static int yy_flex_strlen ( const char * );
1930 #endif
1931 
1932 #ifndef YY_NO_INPUT
1933 #ifdef __cplusplus
1934 static int yyinput ( void );
1935 #else
1936 static int input ( void );
1937 #endif
1938 
1939 #endif
1940 
1941 /* Amount of stuff to slurp up with each read. */
1942 #ifndef YY_READ_BUF_SIZE
1943 #ifdef __ia64__
1944 /* On IA-64, the buffer size is 16k, not 8k */
1945 #define YY_READ_BUF_SIZE 16384
1946 #else
1947 #define YY_READ_BUF_SIZE 8192
1948 #endif /* __ia64__ */
1949 #endif
1950 
1951 /* Copy whatever the last rule matched to the standard output. */
1952 #ifndef ECHO
1953 /* This used to be an fputs(), but since the string might contain NUL's,
1954  * we now use fwrite().
1955  */
1956 #define ECHO do { if (fwrite( yytext, (size_t) yyleng, 1, yyout )) {} } while (0)
1957 #endif
1958 
1959 /* Gets input and stuffs it into "buf". number of characters read, or YY_NULL,
1960  * is returned in "result".
1961  */
1962 #ifndef YY_INPUT
1963 #define YY_INPUT(buf,result,max_size) \
1964  if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \
1965  { \
1966  int c = '*'; \
1967  int n; \
1968  for ( n = 0; n < max_size && \
1969  (c = getc( yyin )) != EOF && c != '\n'; ++n ) \
1970  buf[n] = (char) c; \
1971  if ( c == '\n' ) \
1972  buf[n++] = (char) c; \
1973  if ( c == EOF && ferror( yyin ) ) \
1974  YY_FATAL_ERROR( "input in flex scanner failed" ); \
1975  result = n; \
1976  } \
1977  else \
1978  { \
1979  errno=0; \
1980  while ( (result = (int) fread(buf, 1, (yy_size_t) max_size, yyin)) == 0 && ferror(yyin)) \
1981  { \
1982  if( errno != EINTR) \
1983  { \
1984  YY_FATAL_ERROR( "input in flex scanner failed" ); \
1985  break; \
1986  } \
1987  errno=0; \
1988  clearerr(yyin); \
1989  } \
1990  }\
1991 \
1992 
1993 #endif
1994 
1995 /* No semi-colon after return; correct usage is to write "yyterminate();" -
1996  * we don't want an extra ';' after the "return" because that will cause
1997  * some compilers to complain about unreachable statements.
1998  */
1999 #ifndef yyterminate
2000 #define yyterminate() return YY_NULL
2001 #endif
2002 
2003 /* Number of entries by which start-condition stack grows. */
2004 #ifndef YY_START_STACK_INCR
2005 #define YY_START_STACK_INCR 25
2006 #endif
2007 
2008 /* Report a fatal error. */
2009 #ifndef YY_FATAL_ERROR
2010 #define YY_FATAL_ERROR(msg) yy_fatal_error( msg )
2011 #endif
2012 
2013 /* end tables serialization structures and prototypes */
2014 
2015 /* Default declaration of generated scanner - a define so the user can
2016  * easily add parameters.
2017  */
2018 #ifndef YY_DECL
2019 #define YY_DECL_IS_OURS 1
2020 
2021 extern int yylex (void);
2022 
2023 #define YY_DECL int yylex (void)
2024 #endif /* !YY_DECL */
2025 
2026 /* Code executed at the beginning of each rule, after yytext and yyleng
2027  * have been set up.
2028  */
2029 #ifndef YY_USER_ACTION
2030 #define YY_USER_ACTION
2031 #endif
2032 
2033 /* Code executed at the end of each rule. */
2034 #ifndef YY_BREAK
2035 #define YY_BREAK /*LINTED*/break;
2036 #endif
2037 
2038 #define YY_RULE_SETUP \
2039  YY_USER_ACTION
2040 
2041 /** The main scanner function which does all the work.
2042  */
2044 {
2045  yy_state_type yy_current_state;
2046  char *yy_cp, *yy_bp;
2047  int yy_act;
2048 
2049  if ( !(yy_init) )
2050  {
2051  (yy_init) = 1;
2052 
2053 #ifdef YY_USER_INIT
2054  YY_USER_INIT;
2055 #endif
2056 
2057  if ( ! (yy_start) )
2058  (yy_start) = 1; /* first start state */
2059 
2060  if ( ! yyin )
2061  yyin = stdin;
2062 
2063  if ( ! yyout )
2064  yyout = stdout;
2065 
2066  if ( ! YY_CURRENT_BUFFER ) {
2070  }
2071 
2073  }
2074 
2075  {
2076 #line 208 "detex.l"
2077 
2078 #line 2079 "lex.yy.c"
2079 
2080  while ( /*CONSTCOND*/1 ) /* loops until end-of-file is reached */
2081  {
2082  yy_cp = (yy_c_buf_p);
2083 
2084  /* Support of yytext. */
2085  *yy_cp = (yy_hold_char);
2086 
2087  /* yy_bp points to the position in yy_ch_buf of the start of
2088  * the current run.
2089  */
2090  yy_bp = yy_cp;
2091 
2092  yy_current_state = (yy_start);
2093 yy_match:
2094  do
2095  {
2096  YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)] ;
2097  if ( yy_accept[yy_current_state] )
2098  {
2099  (yy_last_accepting_state) = yy_current_state;
2100  (yy_last_accepting_cpos) = yy_cp;
2101  }
2102  while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
2103  {
2104  yy_current_state = (int) yy_def[yy_current_state];
2105  if ( yy_current_state >= 1362 )
2106  yy_c = yy_meta[yy_c];
2107  }
2108  yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
2109  ++yy_cp;
2110  }
2111  while ( yy_current_state != 1361 );
2112  yy_cp = (yy_last_accepting_cpos);
2113  yy_current_state = (yy_last_accepting_state);
2114 
2115 yy_find_action:
2116  yy_act = yy_accept[yy_current_state];
2117 
2119 
2120 do_action: /* This label is used only to access EOF actions. */
2121 
2122  switch ( yy_act )
2123  { /* beginning of action switch */
2124  case 0: /* must back up */
2125  /* undo the effects of YY_DO_BEFORE_ACTION */
2126  *yy_cp = (yy_hold_char);
2127  yy_cp = (yy_last_accepting_cpos);
2128  yy_current_state = (yy_last_accepting_state);
2129  goto yy_find_action;
2130 
2131 case 1:
2133 #line 209 "detex.l"
2134 /* ignore comments */ {INCRLINENO;}
2135  YY_BREAK
2136 case 2:
2137 /* rule 2 can match eol */
2139 #line 211 "detex.l"
2140 {LATEX; IGNORE;}
2141  YY_BREAK
2142 case 3:
2144 #line 213 "detex.l"
2145 /* environment start */ {LaBEGIN LaBegin; IGNORE;}
2146  YY_BREAK
2147 case 4:
2148 /* rule 4 can match eol */
2150 #line 215 "detex.l"
2151 { if (BeginEnv("verbatim"))
2152  BEGIN LaEnv;
2153  else
2154  BEGIN LaVerbatim;
2155  IGNORE;
2156  }
2157  YY_BREAK
2158 case 5:
2159 /* rule 5 can match eol */
2161 #line 222 "detex.l"
2162 /* verbatim mode */ {BEGIN Normal; IGNORE;}
2163  YY_BREAK
2164 case 6:
2165 /* rule 6 can match eol */
2167 #line 223 "detex.l"
2168 ECHO;
2169  YY_BREAK
2170 case 7:
2172 #line 224 "detex.l"
2173 ECHO;
2174  YY_BREAK
2175 case 8:
2176 /* rule 8 can match eol */
2178 #line 226 "detex.l"
2179 { KILLARGS(1);
2180  if (BeginEnv("minipage"))
2181  BEGIN LaEnv;
2182  else
2183  BEGIN LaMacro; /* Normal; */
2184  IGNORE;
2185  }
2186  YY_BREAK
2187 case 9:
2188 /* rule 9 can match eol */
2190 #line 234 "detex.l"
2191 {
2192  if (BeginEnv("table"))
2193  BEGIN LaEnv;
2194  else
2195  BEGIN Normal;
2196  IGNORE;
2197  }
2198  YY_BREAK
2199 case 10:
2200 /* rule 10 can match eol */
2202 #line 242 "detex.l"
2203 {
2204  if (BeginEnv("figure"))
2205  BEGIN LaEnv;
2206  else
2207  BEGIN Normal;
2208  IGNORE;
2209  }
2210  YY_BREAK
2211 case 11:
2213 #line 250 "detex.l"
2214 { if (BeginEnv(yytext))
2215  BEGIN LaEnv;
2216  else
2217  BEGIN Normal;
2218  IGNORE;
2219  }
2220  YY_BREAK
2221 /*<LaBegin>"\n" NEWLINE;*/
2222 case 12:
2224 #line 257 "detex.l"
2225 {INCRLINENO;}
2226  YY_BREAK
2227 case 13:
2229 #line 259 "detex.l"
2230 /* absorb some environments */ {LaBEGIN LaEnd; IGNORE;}
2231  YY_BREAK
2232 case 14:
2233 /* rule 14 can match eol */
2235 #line 260 "detex.l"
2236 ;/*NEWLINE;*/
2237  YY_BREAK
2238 case 15:
2240 #line 261 "detex.l"
2241 {INCRLINENO;}
2242  YY_BREAK
2243 case 16:
2245 #line 263 "detex.l"
2246 /* end environment */ { if (EndEnv(yytext))
2247  BEGIN Normal;
2248  IGNORE;
2249  }
2250  YY_BREAK
2251 case 17:
2253 #line 267 "detex.l"
2254 {BEGIN LaEnv; IGNORE;}
2255  YY_BREAK
2256 /*<LaEnd>"\n" NEWLINE;*/
2257 case 18:
2259 #line 269 "detex.l"
2260 {INCRLINENO;}
2261  YY_BREAK
2262 case 19:
2263 /* rule 19 can match eol */
2265 #line 271 "detex.l"
2266 ;
2267  YY_BREAK
2268 case 20:
2269 /* rule 20 can match eol */
2271 #line 272 "detex.l"
2272 ;
2273  YY_BREAK
2274 case 21:
2275 /* rule 21 can match eol */
2277 #line 273 "detex.l"
2278 ;
2279  YY_BREAK
2280 case 22:
2281 /* rule 22 can match eol */
2283 #line 274 "detex.l"
2284 ;
2285  YY_BREAK
2286 case 23:
2287 /* rule 23 can match eol */
2289 #line 275 "detex.l"
2290 ;
2291  YY_BREAK
2292 case 24:
2293 /* rule 24 can match eol */
2295 #line 276 "detex.l"
2296 ;
2297  YY_BREAK
2298 case 25:
2300 #line 277 "detex.l"
2301 ; /* hack to fix \begin{minipage}{300pt} */
2302  YY_BREAK
2303 case 26:
2305 #line 279 "detex.l"
2306 { KILLARGS(1); }
2307  YY_BREAK
2308 case 27:
2310 #line 280 "detex.l"
2311 { KILLARGS(2); }
2312  YY_BREAK
2313 case 28:
2315 #line 281 "detex.l"
2316 { KILLARGS(2); }
2317  YY_BREAK
2318 case 29:
2320 #line 282 "detex.l"
2321 { KILLARGS(2); }
2322  YY_BREAK
2323 case 30:
2325 #line 283 "detex.l"
2326 { KILLARGS(2); }
2327  YY_BREAK
2328 case 31:
2330 #line 284 "detex.l"
2331 { KILLARGS(2); }
2332  YY_BREAK
2333 case 32:
2335 #line 285 "detex.l"
2336 { KILLARGS(1); }
2337  YY_BREAK
2338 case 33:
2340 #line 286 "detex.l"
2341 { KILLARGS(1); }
2342  YY_BREAK
2343 case 34:
2345 #line 287 "detex.l"
2346 { KILLARGS(2); }
2347  YY_BREAK
2348 case 35:
2350 #line 288 "detex.l"
2351 { KILLARGS(1); }
2352  YY_BREAK
2353 case 36:
2355 #line 289 "detex.l"
2356 { STRIPARGS(2); }
2357  YY_BREAK
2358 case 37:
2360 #line 290 "detex.l"
2361 { KILLARGS(1); }
2362  YY_BREAK
2363 case 38:
2365 #line 291 "detex.l"
2366 { STRIPARGS(2); }
2367  YY_BREAK
2368 case 39:
2370 #line 292 "detex.l"
2371 { KILLARGS(2); }
2372  YY_BREAK
2373 case 40:
2375 #line 293 "detex.l"
2376 ;
2377  YY_BREAK
2378 case 41:
2380 #line 294 "detex.l"
2381 { KILLARGS(1); }
2382  YY_BREAK
2383 case 42:
2384 /* rule 42 can match eol */
2386 #line 295 "detex.l"
2387 { LaBEGIN LaPicture; }
2388  YY_BREAK
2389 case 43:
2391 #line 297 "detex.l"
2392 ;
2393  YY_BREAK
2394 case 44:
2395 /* rule 44 can match eol */
2397 #line 298 "detex.l"
2398 { if(fShowPictures) { printf("<Picture %s>", yytext); } }
2399  YY_BREAK
2400 case 45:
2401 /* rule 45 can match eol */
2403 #line 299 "detex.l"
2404 { BEGIN Normal; INCRLINENO; }
2405  YY_BREAK
2406 case 46:
2408 #line 300 "detex.l"
2409 BEGIN Normal;
2410  YY_BREAK
2411 case 47:
2413 #line 302 "detex.l"
2414 { KILLARGS(3); }
2415  YY_BREAK
2416 case 48:
2418 #line 303 "detex.l"
2419 { KILLARGS(1); }
2420  YY_BREAK
2421 case 49:
2423 #line 304 "detex.l"
2424 { KILLARGS(2); }
2425  YY_BREAK
2426 case 50:
2428 #line 305 "detex.l"
2429 { KILLARGS(2); }
2430  YY_BREAK
2431 case 51:
2433 #line 306 "detex.l"
2434 { KILLARGS(3); }
2435  YY_BREAK
2436 case 52:
2438 #line 307 "detex.l"
2439 { KILLARGS(1); }
2440  YY_BREAK
2441 case 53:
2443 #line 308 "detex.l"
2444 { STRIPARGS(1); }
2445  YY_BREAK
2446 case 54:
2448 #line 309 "detex.l"
2449 { KILLARGS(1); }
2450  YY_BREAK
2451 case 55:
2453 #line 310 "detex.l"
2454 { KILLARGS(1); }
2455  YY_BREAK
2456 case 56:
2458 #line 311 "detex.l"
2459 { KILLARGS(3); }
2460  YY_BREAK
2461 case 57:
2463 #line 313 "detex.l"
2464 ;/*NEWLINE;*/
2465  YY_BREAK
2466 case 58:
2468 #line 314 "detex.l"
2469 ;/*NEWLINE;*/
2470  YY_BREAK
2471 case 59:
2473 #line 315 "detex.l"
2474 ;/*NEWLINE;*/
2475  YY_BREAK
2476 case 60:
2478 #line 316 "detex.l"
2479 ;/*NEWLINE;*/
2480  YY_BREAK
2481 case 61:
2483 #line 317 "detex.l"
2484 ;/*NEWLINE;*/
2485  YY_BREAK
2486 case 62:
2488 #line 318 "detex.l"
2489 ;/*NEWLINE;*/
2490  YY_BREAK
2491 case 63:
2493 #line 319 "detex.l"
2494 ;/*NEWLINE;*/
2495  YY_BREAK
2496 case 64:
2498 #line 321 "detex.l"
2499 /* ignore args */ {KILLARGS(1); IGNORE;}
2500  YY_BREAK
2501 case 65:
2503 #line 322 "detex.l"
2504 /* of these \cs */ {KILLARGS(1); IGNORE;}
2505  YY_BREAK
2506 case 66:
2508 #line 323 "detex.l"
2509 {KILLARGS(1); IGNORE;}
2510  YY_BREAK
2511 case 67:
2513 #line 324 "detex.l"
2514 {KILLARGS(1);} /* kill space before */
2515  YY_BREAK
2516 case 68:
2518 #line 325 "detex.l"
2519 {LATEX; KILLARGS(1); IGNORE;}
2520  YY_BREAK
2521 case 69:
2523 #line 326 "detex.l"
2524 {LATEX; KILLARGS(1); IGNORE;}
2525  YY_BREAK
2526 case 70:
2528 #line 327 "detex.l"
2529 {KILLARGS(1); IGNORE;}
2530  YY_BREAK
2531 case 71:
2533 #line 328 "detex.l"
2534 {KILLARGS(1); IGNORE;}
2535  YY_BREAK
2536 case 72:
2538 #line 329 "detex.l"
2539 {KILLARGS(1);}
2540  YY_BREAK
2541 case 73:
2543 #line 330 "detex.l"
2544 {KILLARGS(1);}
2545  YY_BREAK
2546 /*<Normal>"\\footnote" {KILLARGS(1); SPACE;}*/
2547 case 74:
2549 #line 332 "detex.l"
2550 {KILLARGS(1); IGNORE;}
2551  YY_BREAK
2552 case 75:
2554 #line 333 "detex.l"
2555 {CITE(1); IGNORE;}
2556  YY_BREAK
2557 case 76:
2559 #line 334 "detex.l"
2560 {CITE(1); IGNORE;}
2561  YY_BREAK
2562 case 77:
2564 #line 335 "detex.l"
2565 {KILLARGS(1); IGNORE;}
2566  YY_BREAK
2567 case 78:
2569 #line 336 "detex.l"
2570 {CITE(1); IGNORE;}
2571  YY_BREAK
2572 case 79:
2574 #line 337 "detex.l"
2575 {KILLARGS(2); IGNORE;}
2576  YY_BREAK
2577 case 80:
2579 #line 338 "detex.l"
2580 {KILLARGS(2); IGNORE;}
2581  YY_BREAK
2582 case 81:
2584 #line 339 "detex.l"
2585 { KILLARGS(1); }
2586  YY_BREAK
2587 case 82:
2589 #line 340 "detex.l"
2590 { KILLARGS(2); }
2591  YY_BREAK
2592 case 83:
2594 #line 342 "detex.l"
2595 {KILLARGS(1);}
2596  YY_BREAK
2597 case 84:
2598 /* rule 84 can match eol */
2600 #line 344 "detex.l"
2601 {
2602  putchar('(');
2604  ++currBracesLevel;
2605  }
2606  YY_BREAK
2607 case 85:
2609 #line 349 "detex.l"
2610 /* ignore \verb<ch>...<ch> */ { if (fLatex) {
2611  char verbchar, c;
2612  verbchar = input();
2613  while ((c = input()) != verbchar)
2614  /*if (c == '\n')
2615  NEWLINE;*/
2616  putchar(c);
2617  }
2618  IGNORE;
2619  }
2620  YY_BREAK
2621 case 86:
2623 #line 360 "detex.l"
2624 { LATEX; KILLARGS(2); }
2625  YY_BREAK
2626 case 87:
2628 #line 361 "detex.l"
2629 { LATEX; KILLARGS(2); }
2630  YY_BREAK
2631 case 88:
2633 #line 362 "detex.l"
2634 { LATEX; KILLARGS(3); }
2635  YY_BREAK
2636 case 89:
2638 #line 364 "detex.l"
2639 /* ignore def begin */ {BEGIN Define; IGNORE;}
2640  YY_BREAK
2641 case 90:
2643 #line 365 "detex.l"
2644 BEGIN Normal;
2645  YY_BREAK
2646 case 91:
2647 /* rule 91 can match eol */
2649 #line 366 "detex.l"
2650 NEWLINE;
2651  YY_BREAK
2652 case 92:
2654 #line 367 "detex.l"
2655 ;
2656  YY_BREAK
2657 case 93:
2659 #line 369 "detex.l"
2660 /* formula mode */ {LaBEGIN LaFormula; NOUN;}
2661  YY_BREAK
2662 case 94:
2664 #line 370 "detex.l"
2665 BEGIN Normal;
2666  YY_BREAK
2667 case 95:
2668 /* rule 95 can match eol */
2670 #line 371 "detex.l"
2671 NEWLINE;
2672  YY_BREAK
2673 case 96:
2675 #line 372 "detex.l"
2676 VERBNOUN;
2677  YY_BREAK
2678 case 97:
2680 #line 373 "detex.l"
2681 ;
2682  YY_BREAK
2683 case 98:
2685 #line 375 "detex.l"
2686 /* display mode */ {LaBEGIN LaDisplay; NOUN;}
2687  YY_BREAK
2688 case 99:
2690 #line 376 "detex.l"
2691 BEGIN Normal;
2692  YY_BREAK
2693 case 100:
2694 /* rule 100 can match eol */
2696 #line 377 "detex.l"
2697 NEWLINE;
2698  YY_BREAK
2699 case 101:
2701 #line 378 "detex.l"
2702 VERBNOUN;
2703  YY_BREAK
2704 case 102:
2706 #line 379 "detex.l"
2707 ;
2708  YY_BREAK
2709 case 103:
2711 #line 381 "detex.l"
2712 /* display mode */ {BEGIN Display; NOUN;}
2713  YY_BREAK
2714 case 104:
2716 #line 382 "detex.l"
2717 BEGIN Normal;
2718  YY_BREAK
2719 case 105:
2720 /* rule 105 can match eol */
2722 #line 383 "detex.l"
2723 NEWLINE;
2724  YY_BREAK
2725 case 106:
2727 #line 384 "detex.l"
2728 VERBNOUN;
2729  YY_BREAK
2730 case 107:
2732 #line 385 "detex.l"
2733 ;
2734  YY_BREAK
2735 case 108:
2737 #line 387 "detex.l"
2738 /* math mode */ {BEGIN Math; NOUN;}
2739  YY_BREAK
2740 case 109:
2742 #line 388 "detex.l"
2743 BEGIN Normal;
2744  YY_BREAK
2745 case 110:
2746 /* rule 110 can match eol */
2748 #line 389 "detex.l"
2749 ;
2750  YY_BREAK
2751 case 111:
2753 #line 390 "detex.l"
2754 ;
2755  YY_BREAK
2756 case 112:
2758 #line 391 "detex.l"
2759 VERBNOUN;
2760  YY_BREAK
2761 case 113:
2763 #line 392 "detex.l"
2764 ;
2765  YY_BREAK
2766 case 114:
2768 #line 394 "detex.l"
2769 /* process files */ {LaBEGIN LaInclude; IGNORE;}
2770  YY_BREAK
2771 case 115:
2773 #line 395 "detex.l"
2774 { IncludeFile(yytext);
2775  BEGIN Normal;
2776  }
2777  YY_BREAK
2778 case 116:
2779 /* rule 116 can match eol */
2781 #line 398 "detex.l"
2782 NEWLINE;
2783  YY_BREAK
2784 case 117:
2786 #line 399 "detex.l"
2787 ;
2788  YY_BREAK
2789 case 118:
2791 #line 401 "detex.l"
2793  YY_BREAK
2794 case 119:
2796 #line 402 "detex.l"
2798  YY_BREAK
2799 case 120:
2801 #line 403 "detex.l"
2802 { if (csbIncList == 0)
2803  rgsbIncList[csbIncList++] = '\0';
2804  BEGIN Normal;
2805  }
2806  YY_BREAK
2807 case 121:
2808 /* rule 121 can match eol */
2810 #line 407 "detex.l"
2811 NEWLINE;
2812  YY_BREAK
2813 case 122:
2815 #line 408 "detex.l"
2816 ;
2817  YY_BREAK
2818 case 123:
2820 #line 410 "detex.l"
2821 /* process files */ {LaBEGIN LaSubfile; IGNORE;}
2822  YY_BREAK
2823 case 124:
2825 #line 411 "detex.l"
2826 { IncludeFile(yytext);
2827  BEGIN Normal;
2828  }
2829  YY_BREAK
2830 case 125:
2831 /* rule 125 can match eol */
2833 #line 414 "detex.l"
2834 NEWLINE;
2835  YY_BREAK
2836 case 126:
2838 #line 415 "detex.l"
2839 ;
2840  YY_BREAK
2841 case 127:
2843 #line 417 "detex.l"
2844 {BEGIN Input; IGNORE;}
2845  YY_BREAK
2846 case 128:
2848 #line 418 "detex.l"
2849 { InputFile(yytext);
2850  BEGIN Normal;
2851  }
2852  YY_BREAK
2853 case 129:
2854 /* rule 129 can match eol */
2856 #line 421 "detex.l"
2857 NEWLINE;
2858  YY_BREAK
2859 case 130:
2861 #line 422 "detex.l"
2862 ;
2863  YY_BREAK
2864 /* escaping commands */
2865 case 131:
2867 #line 425 "detex.l"
2868 putchar('/');
2869  YY_BREAK
2870 case 132:
2872 #line 426 "detex.l"
2873 putchar('%');
2874  YY_BREAK
2875 case 133:
2876 /* rule 133 can match eol */
2878 #line 428 "detex.l"
2879 /* handle ligatures */ {(void)printf("%.2s", yytext+1);}
2880  YY_BREAK
2881 case 134:
2882 /* rule 134 can match eol */
2884 #line 429 "detex.l"
2885 {(void)printf("%.1s", yytext+1);}
2886  YY_BREAK
2887 case 135:
2889 #line 430 "detex.l"
2890 {NEWLINE;} /*BEGIN LaBreak;*/
2891  YY_BREAK
2892 case 136:
2894 #line 432 "detex.l"
2895 /* ignore other \cs */ {BEGIN Control; IGNORE;}
2896  YY_BREAK
2897 case 137:
2899 #line 433 "detex.l"
2900 SPACE;
2901  YY_BREAK
2902 case 138:
2903 /* rule 138 can match eol */
2905 #line 434 "detex.l"
2906 NEWLINE;
2907  YY_BREAK
2908 case 139:
2910 #line 435 "detex.l"
2911 IGNORE;
2912  YY_BREAK
2913 case 140:
2915 #line 436 "detex.l"
2916 { if (yytext==NULL || strlen(yytext)==0
2917  || atoi(yytext)>=0)
2918  NEWLINE;
2919  BEGIN Normal;
2920  }
2921  YY_BREAK
2922 case 141:
2924 #line 442 "detex.l"
2925 IGNORE;
2926  YY_BREAK
2927 case 142:
2929 #line 443 "detex.l"
2930 IGNORE;
2931  YY_BREAK
2932 case 143:
2933 /* rule 143 can match eol */
2935 #line 444 "detex.l"
2936 {BEGIN Normal; /*NEWLINE;*/}
2937  YY_BREAK
2938 case 144:
2940 #line 445 "detex.l"
2942  YY_BREAK
2943 case 145:
2945 #line 446 "detex.l"
2946 {BEGIN Normal; IGNORE;}
2947  YY_BREAK
2948 case 146:
2950 #line 447 "detex.l"
2951 {yyless(0);BEGIN Normal;}
2952  YY_BREAK
2953 case 147:
2955 #line 449 "detex.l"
2956 /* special characters */ IGNORE;
2957  YY_BREAK
2958 case 148:
2960 #line 450 "detex.l"
2961 IGNORE;
2962  YY_BREAK
2963 case 149:
2965 #line 451 "detex.l"
2966 SPACE;
2967  YY_BREAK
2968 case 150:
2970 #line 452 "detex.l"
2971 putchar('-');
2972  YY_BREAK
2973 case 151:
2975 #line 453 "detex.l"
2976 putchar('"');
2977  YY_BREAK
2978 case 152:
2980 #line 454 "detex.l"
2981 putchar('\'');
2982  YY_BREAK
2983 case 153:
2985 #line 455 "detex.l"
2986 putchar('"');
2987  YY_BREAK
2988 case 154:
2990 #line 456 "detex.l"
2991 putchar('"');
2992  YY_BREAK
2993 /* braces */
2994 case 155:
2996 #line 459 "detex.l"
2997 { ++currBracesLevel;
2998  }
2999  YY_BREAK
3000 case 156:
3002 #line 461 "detex.l"
3003 {
3004  --currBracesLevel;
3005  if (currBracesLevel == footnoteLevel) {
3006  putchar(')');
3007  footnoteLevel = -100;
3008  }
3009  }
3010  YY_BREAK
3011 case 157:
3013 #line 468 "detex.l"
3014 { if (fWord)
3015  (void)printf("%s\n", yytext);
3016  else
3017  ECHO;
3018  }
3019  YY_BREAK
3020 case 158:
3022 #line 473 "detex.l"
3023 if (!fWord) ECHO;
3024  YY_BREAK
3025 case 159:
3027 #line 474 "detex.l"
3028 { INCRLINENO; if (!fWord) ECHO; }
3029  YY_BREAK
3030 case 160:
3031 /* rule 160 can match eol */
3033 #line 475 "detex.l"
3034 { if (!fWord) NEWLINE; }
3035  YY_BREAK
3036 case 161:
3038 #line 476 "detex.l"
3039 if (!fWord) putchar('\t');
3040  YY_BREAK
3041 case 162:
3043 #line 478 "detex.l"
3044 { BEGIN LaOptArg; }
3045  YY_BREAK
3046 case 163:
3048 #line 479 "detex.l"
3049 { cOpenBrace++; }
3050  YY_BREAK
3051 case 164:
3052 /* rule 164 can match eol */
3054 #line 480 "detex.l"
3055 { cOpenBrace--; INCRLINENO;
3056  if (cOpenBrace == 0)
3057  {
3058  if (--cArgs==0)
3059  BEGIN Normal;
3060  }
3061  }
3062  YY_BREAK
3063 case 165:
3065 #line 487 "detex.l"
3066 ;
3067  YY_BREAK
3068 case 166:
3070 #line 488 "detex.l"
3071 BEGIN LaMacro;
3072  YY_BREAK
3073 case 167:
3074 /* rule 167 can match eol */
3076 #line 489 "detex.l"
3077 ;
3078  YY_BREAK
3079 case 168:
3081 #line 491 "detex.l"
3082 { BEGIN LaOptArg2; }
3083  YY_BREAK
3084 case 169:
3086 #line 492 "detex.l"
3087 { if (cOpenBrace == 0)
3088  {
3089  if (--cArgs==0)
3090  {
3091  BEGIN Normal;
3092  cOpenBrace--;
3093  }
3094  }
3095  cOpenBrace++;
3096  }
3097  YY_BREAK
3098 case 170:
3100 #line 502 "detex.l"
3101 { cOpenBrace--; }
3102  YY_BREAK
3103 case 171:
3105 #line 503 "detex.l"
3106 ;
3107  YY_BREAK
3108 case 172:
3110 #line 504 "detex.l"
3111 BEGIN LaMacro2;
3112  YY_BREAK
3113 case 173:
3115 #line 505 "detex.l"
3116 ;
3117  YY_BREAK
3118 case 174:
3120 #line 506 "detex.l"
3121 ECHO;
3122  YY_BREAK
3123 #line 3124 "lex.yy.c"
3124 case YY_STATE_EOF(INITIAL):
3125 case YY_STATE_EOF(Define):
3126 case YY_STATE_EOF(Display):
3128 case YY_STATE_EOF(Input):
3129 case YY_STATE_EOF(Math):
3130 case YY_STATE_EOF(Normal):
3131 case YY_STATE_EOF(Control):
3132 case YY_STATE_EOF(LaBegin):
3133 case YY_STATE_EOF(LaDisplay):
3134 case YY_STATE_EOF(LaEnd):
3135 case YY_STATE_EOF(LaEnv):
3136 case YY_STATE_EOF(LaFormula):
3137 case YY_STATE_EOF(LaInclude):
3138 case YY_STATE_EOF(LaSubfile):
3139 case YY_STATE_EOF(LaMacro):
3140 case YY_STATE_EOF(LaOptArg):
3141 case YY_STATE_EOF(LaMacro2):
3142 case YY_STATE_EOF(LaOptArg2):
3143 case YY_STATE_EOF(LaVerbatim):
3144 case YY_STATE_EOF(LaBreak):
3145 case YY_STATE_EOF(LaPicture):
3146  yyterminate();
3147 
3148  case YY_END_OF_BUFFER:
3149  {
3150  /* Amount of text matched not including the EOB char. */
3151  int yy_amount_of_matched_text = (int) (yy_cp - (yytext_ptr)) - 1;
3152 
3153  /* Undo the effects of YY_DO_BEFORE_ACTION. */
3154  *yy_cp = (yy_hold_char);
3156 
3157  if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW )
3158  {
3159  /* We're scanning a new file or input source. It's
3160  * possible that this happened because the user
3161  * just pointed yyin at a new source and called
3162  * yylex(). If so, then we have to assure
3163  * consistency between YY_CURRENT_BUFFER and our
3164  * globals. Here is the right place to do so, because
3165  * this is the first action (other than possibly a
3166  * back-up) that will match for the new input source.
3167  */
3168  (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
3169  YY_CURRENT_BUFFER_LVALUE->yy_input_file = yyin;
3170  YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL;
3171  }
3172 
3173  /* Note that here we test for yy_c_buf_p "<=" to the position
3174  * of the first EOB in the buffer, since yy_c_buf_p will
3175  * already have been incremented past the NUL character
3176  * (since all states make transitions on EOB to the
3177  * end-of-buffer state). Contrast this with the test
3178  * in input().
3179  */
3180  if ( (yy_c_buf_p) <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] )
3181  { /* This was really a NUL. */
3182  yy_state_type yy_next_state;
3183 
3184  (yy_c_buf_p) = (yytext_ptr) + yy_amount_of_matched_text;
3185 
3186  yy_current_state = yy_get_previous_state( );
3187 
3188  /* Okay, we're now positioned to make the NUL
3189  * transition. We couldn't have
3190  * yy_get_previous_state() go ahead and do it
3191  * for us because it doesn't know how to deal
3192  * with the possibility of jamming (and we don't
3193  * want to build jamming into it because then it
3194  * will run more slowly).
3195  */
3196 
3197  yy_next_state = yy_try_NUL_trans( yy_current_state );
3198 
3199  yy_bp = (yytext_ptr) + YY_MORE_ADJ;
3200 
3201  if ( yy_next_state )
3202  {
3203  /* Consume the NUL. */
3204  yy_cp = ++(yy_c_buf_p);
3205  yy_current_state = yy_next_state;
3206  goto yy_match;
3207  }
3208 
3209  else
3210  {
3211  yy_cp = (yy_last_accepting_cpos);
3212  yy_current_state = (yy_last_accepting_state);
3213  goto yy_find_action;
3214  }
3215  }
3216 
3217  else switch ( yy_get_next_buffer( ) )
3218  {
3219  case EOB_ACT_END_OF_FILE:
3220  {
3222 
3223  if ( yywrap( ) )
3224  {
3225  /* Note: because we've taken care in
3226  * yy_get_next_buffer() to have set up
3227  * yytext, we can now set up
3228  * yy_c_buf_p so that if some total
3229  * hoser (like flex itself) wants to
3230  * call the scanner after we return the
3231  * YY_NULL, it'll still work - another
3232  * YY_NULL will get returned.
3233  */
3235 
3236  yy_act = YY_STATE_EOF(YY_START);
3237  goto do_action;
3238  }
3239 
3240  else
3241  {
3242  if ( ! (yy_did_buffer_switch_on_eof) )
3243  YY_NEW_FILE;
3244  }
3245  break;
3246  }
3247 
3248  case EOB_ACT_CONTINUE_SCAN:
3249  (yy_c_buf_p) =
3250  (yytext_ptr) + yy_amount_of_matched_text;
3251 
3252  yy_current_state = yy_get_previous_state( );
3253 
3254  yy_cp = (yy_c_buf_p);
3255  yy_bp = (yytext_ptr) + YY_MORE_ADJ;
3256  goto yy_match;
3257 
3258  case EOB_ACT_LAST_MATCH:
3259  (yy_c_buf_p) =
3260  &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)];
3261 
3262  yy_current_state = yy_get_previous_state( );
3263 
3264  yy_cp = (yy_c_buf_p);
3265  yy_bp = (yytext_ptr) + YY_MORE_ADJ;
3266  goto yy_find_action;
3267  }
3268  break;
3269  }
3270 
3271  default:
3273  "fatal flex scanner internal error--no action found" );
3274  } /* end of action switch */
3275  } /* end of scanning one token */
3276  } /* end of user's declarations */
3277 } /* end of yylex */
3278 
3279 /* yy_get_next_buffer - try to read in a new buffer
3280  *
3281  * Returns a code representing an action:
3282  * EOB_ACT_LAST_MATCH -
3283  * EOB_ACT_CONTINUE_SCAN - continue scanning from current position
3284  * EOB_ACT_END_OF_FILE - end of file
3285  */
3286 static int yy_get_next_buffer (void)
3287 {
3288  char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf;
3289  char *source = (yytext_ptr);
3290  int number_to_move, i;
3291  int ret_val;
3292 
3293  if ( (yy_c_buf_p) > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] )
3295  "fatal flex scanner internal error--end of buffer missed" );
3296 
3297  if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 )
3298  { /* Don't try to fill the buffer, so this is an EOF. */
3299  if ( (yy_c_buf_p) - (yytext_ptr) - YY_MORE_ADJ == 1 )
3300  {
3301  /* We matched a single character, the EOB, so
3302  * treat this as a final EOF.
3303  */
3304  return EOB_ACT_END_OF_FILE;
3305  }
3306 
3307  else
3308  {
3309  /* We matched some text prior to the EOB, first
3310  * process it.
3311  */
3312  return EOB_ACT_LAST_MATCH;
3313  }
3314  }
3315 
3316  /* Try to read more data. */
3317 
3318  /* First move last chars to start of buffer. */
3319  number_to_move = (int) ((yy_c_buf_p) - (yytext_ptr) - 1);
3320 
3321  for ( i = 0; i < number_to_move; ++i )
3322  *(dest++) = *(source++);
3323 
3324  if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING )
3325  /* don't do the read, it's not guaranteed to return an EOF,
3326  * just force an EOF
3327  */
3328  YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars) = 0;
3329 
3330  else
3331  {
3332  int num_to_read =
3333  YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1;
3334 
3335  while ( num_to_read <= 0 )
3336  { /* Not enough room in the buffer - grow it. */
3337 
3338  /* just a shorter name for the current buffer */
3340 
3341  int yy_c_buf_p_offset =
3342  (int) ((yy_c_buf_p) - b->yy_ch_buf);
3343 
3344  if ( b->yy_is_our_buffer )
3345  {
3346  int new_size = b->yy_buf_size * 2;
3347 
3348  if ( new_size <= 0 )
3349  b->yy_buf_size += b->yy_buf_size / 8;
3350  else
3351  b->yy_buf_size *= 2;
3352 
3353  b->yy_ch_buf = (char *)
3354  /* Include room in for 2 EOB chars. */
3355  yyrealloc( (void *) b->yy_ch_buf,
3356  (yy_size_t) (b->yy_buf_size + 2) );
3357  }
3358  else
3359  /* Can't grow it, we don't own it. */
3360  b->yy_ch_buf = NULL;
3361 
3362  if ( ! b->yy_ch_buf )
3364  "fatal error - scanner input buffer overflow" );
3365 
3366  (yy_c_buf_p) = &b->yy_ch_buf[yy_c_buf_p_offset];
3367 
3368  num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size -
3369  number_to_move - 1;
3370 
3371  }
3372 
3373  if ( num_to_read > YY_READ_BUF_SIZE )
3374  num_to_read = YY_READ_BUF_SIZE;
3375 
3376  /* Read in more data. */
3377  YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]),
3378  (yy_n_chars), num_to_read );
3379 
3380  YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
3381  }
3382 
3383  if ( (yy_n_chars) == 0 )
3384  {
3385  if ( number_to_move == YY_MORE_ADJ )
3386  {
3387  ret_val = EOB_ACT_END_OF_FILE;
3388  yyrestart( yyin );
3389  }
3390 
3391  else
3392  {
3393  ret_val = EOB_ACT_LAST_MATCH;
3394  YY_CURRENT_BUFFER_LVALUE->yy_buffer_status =
3396  }
3397  }
3398 
3399  else
3400  ret_val = EOB_ACT_CONTINUE_SCAN;
3401 
3402  if (((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) {
3403  /* Extend the array by 50%, plus the number we really need. */
3404  int new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1);
3405  YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) yyrealloc(
3406  (void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf, (yy_size_t) new_size );
3407  if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )
3408  YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" );
3409  /* "- 2" to take care of EOB's */
3410  YY_CURRENT_BUFFER_LVALUE->yy_buf_size = (int) (new_size - 2);
3411  }
3412 
3413  (yy_n_chars) += number_to_move;
3416 
3417  (yytext_ptr) = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0];
3418 
3419  return ret_val;
3420 }
3421 
3422 /* yy_get_previous_state - get the state just before the EOB char was reached */
3423 
3425 {
3426  yy_state_type yy_current_state;
3427  char *yy_cp;
3428 
3429  yy_current_state = (yy_start);
3430 
3431  for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp )
3432  {
3433  YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
3434  if ( yy_accept[yy_current_state] )
3435  {
3436  (yy_last_accepting_state) = yy_current_state;
3437  (yy_last_accepting_cpos) = yy_cp;
3438  }
3439  while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
3440  {
3441  yy_current_state = (int) yy_def[yy_current_state];
3442  if ( yy_current_state >= 1362 )
3443  yy_c = yy_meta[yy_c];
3444  }
3445  yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
3446  }
3447 
3448  return yy_current_state;
3449 }
3450 
3451 /* yy_try_NUL_trans - try to make a transition on the NUL character
3452  *
3453  * synopsis
3454  * next_state = yy_try_NUL_trans( current_state );
3455  */
3456  static yy_state_type yy_try_NUL_trans (yy_state_type yy_current_state )
3457 {
3458  int yy_is_jam;
3459  char *yy_cp = (yy_c_buf_p);
3460 
3461  YY_CHAR yy_c = 1;
3462  if ( yy_accept[yy_current_state] )
3463  {
3464  (yy_last_accepting_state) = yy_current_state;
3465  (yy_last_accepting_cpos) = yy_cp;
3466  }
3467  while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
3468  {
3469  yy_current_state = (int) yy_def[yy_current_state];
3470  if ( yy_current_state >= 1362 )
3471  yy_c = yy_meta[yy_c];
3472  }
3473  yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c];
3474  yy_is_jam = (yy_current_state == 1361);
3475 
3476  return yy_is_jam ? 0 : yy_current_state;
3477 }
3478 
3479 #ifndef YY_NO_UNPUT
3480 
3481 #endif
3482 
3483 #ifndef YY_NO_INPUT
3484 #ifdef __cplusplus
3485  static int yyinput (void)
3486 #else
3487  static int input (void)
3488 #endif
3489 
3490 {
3491  int c;
3492 
3493  *(yy_c_buf_p) = (yy_hold_char);
3494 
3495  if ( *(yy_c_buf_p) == YY_END_OF_BUFFER_CHAR )
3496  {
3497  /* yy_c_buf_p now points to the character we want to return.
3498  * If this occurs *before* the EOB characters, then it's a
3499  * valid NUL; if not, then we've hit the end of the buffer.
3500  */
3501  if ( (yy_c_buf_p) < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] )
3502  /* This was really a NUL. */
3503  *(yy_c_buf_p) = '\0';
3504 
3505  else
3506  { /* need more input */
3507  int offset = (int) ((yy_c_buf_p) - (yytext_ptr));
3508  ++(yy_c_buf_p);
3509 
3510  switch ( yy_get_next_buffer( ) )
3511  {
3512  case EOB_ACT_LAST_MATCH:
3513  /* This happens because yy_g_n_b()
3514  * sees that we've accumulated a
3515  * token and flags that we need to
3516  * try matching the token before
3517  * proceeding. But for input(),
3518  * there's no matching to consider.
3519  * So convert the EOB_ACT_LAST_MATCH
3520  * to EOB_ACT_END_OF_FILE.
3521  */
3522 
3523  /* Reset buffer status. */
3524  yyrestart( yyin );
3525 
3526  /*FALLTHROUGH*/
3527 
3528  case EOB_ACT_END_OF_FILE:
3529  {
3530  if ( yywrap( ) )
3531  return 0;
3532 
3533  if ( ! (yy_did_buffer_switch_on_eof) )
3534  YY_NEW_FILE;
3535 #ifdef __cplusplus
3536  return yyinput();
3537 #else
3538  return input();
3539 #endif
3540  }
3541 
3542  case EOB_ACT_CONTINUE_SCAN:
3543  (yy_c_buf_p) = (yytext_ptr) + offset;
3544  break;
3545  }
3546  }
3547  }
3548 
3549  c = *(unsigned char *) (yy_c_buf_p); /* cast for 8-bit char's */
3550  *(yy_c_buf_p) = '\0'; /* preserve yytext */
3551  (yy_hold_char) = *++(yy_c_buf_p);
3552 
3553  return c;
3554 }
3555 #endif /* ifndef YY_NO_INPUT */
3556 
3557 /** Immediately switch to a different input stream.
3558  * @param input_file A readable stream.
3559  *
3560  * @note This function does not reset the start condition to @c INITIAL .
3561  */
3563 {
3564 
3565  if ( ! YY_CURRENT_BUFFER ){
3569  }
3570 
3573 }
3574 
3575 /** Switch to a different input buffer.
3576  * @param new_buffer The new input buffer.
3577  *
3578  */
3580 {
3581 
3582  /* TODO. We should be able to replace this entire function body
3583  * with
3584  * yypop_buffer_state();
3585  * yypush_buffer_state(new_buffer);
3586  */
3588  if ( YY_CURRENT_BUFFER == new_buffer )
3589  return;
3590 
3591  if ( YY_CURRENT_BUFFER )
3592  {
3593  /* Flush out information for old buffer. */
3594  *(yy_c_buf_p) = (yy_hold_char);
3595  YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);
3596  YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
3597  }
3598 
3599  YY_CURRENT_BUFFER_LVALUE = new_buffer;
3601 
3602  /* We don't actually know whether we did this switch during
3603  * EOF (yywrap()) processing, but the only time this flag
3604  * is looked at is after yywrap() is called, so it's safe
3605  * to go ahead and always set it.
3606  */
3608 }
3609 
3610 static void yy_load_buffer_state (void)
3611 {
3612  (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
3613  (yytext_ptr) = (yy_c_buf_p) = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos;
3614  yyin = YY_CURRENT_BUFFER_LVALUE->yy_input_file;
3615  (yy_hold_char) = *(yy_c_buf_p);
3616 }
3617 
3618 /** Allocate and initialize an input buffer state.
3619  * @param file A readable stream.
3620  * @param size The character buffer size in bytes. When in doubt, use @c YY_BUF_SIZE.
3621  *
3622  * @return the allocated buffer state.
3623  */
3625 {
3627 
3628  b = (YY_BUFFER_STATE) yyalloc( sizeof( struct yy_buffer_state ) );
3629  if ( ! b )
3630  YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
3631 
3632  b->yy_buf_size = size;
3633 
3634  /* yy_ch_buf has to be 2 characters longer than the size given because
3635  * we need to put in 2 end-of-buffer characters.
3636  */
3637  b->yy_ch_buf = (char *) yyalloc( (yy_size_t) (b->yy_buf_size + 2) );
3638  if ( ! b->yy_ch_buf )
3639  YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
3640 
3641  b->yy_is_our_buffer = 1;
3642 
3643  yy_init_buffer( b, file );
3644 
3645  return b;
3646 }
3647 
3648 /** Destroy the buffer.
3649  * @param b a buffer created with yy_create_buffer()
3650  *
3651  */
3653 {
3654 
3655  if ( ! b )
3656  return;
3657 
3658  if ( b == YY_CURRENT_BUFFER ) /* Not sure if we should pop here. */
3660 
3661  if ( b->yy_is_our_buffer )
3662  yyfree( (void *) b->yy_ch_buf );
3663 
3664  yyfree( (void *) b );
3665 }
3666 
3667 /* Initializes or reinitializes a buffer.
3668  * This function is sometimes called more than once on the same buffer,
3669  * such as during a yyrestart() or at EOF.
3670  */
3672 
3673 {
3674  int oerrno = errno;
3675 
3676  yy_flush_buffer( b );
3677 
3678  b->yy_input_file = file;
3679  b->yy_fill_buffer = 1;
3680 
3681  /* If b is the current buffer, then yy_init_buffer was _probably_
3682  * called from yyrestart() or through yy_get_next_buffer.
3683  * In that case, we don't want to reset the lineno or column.
3684  */
3685  if (b != YY_CURRENT_BUFFER){
3686  b->yy_bs_lineno = 1;
3687  b->yy_bs_column = 0;
3688  }
3689 
3690  b->yy_is_interactive = 0;
3691 
3692  errno = oerrno;
3693 }
3694 
3695 /** Discard all buffered characters. On the next scan, YY_INPUT will be called.
3696  * @param b the buffer state to be flushed, usually @c YY_CURRENT_BUFFER.
3697  *
3698  */
3700 {
3701  if ( ! b )
3702  return;
3703 
3704  b->yy_n_chars = 0;
3705 
3706  /* We always need two end-of-buffer characters. The first causes
3707  * a transition to the end-of-buffer state. The second causes
3708  * a jam in that state.
3709  */
3710  b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR;
3711  b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR;
3712 
3713  b->yy_buf_pos = &b->yy_ch_buf[0];
3714 
3715  b->yy_at_bol = 1;
3716  b->yy_buffer_status = YY_BUFFER_NEW;
3717 
3718  if ( b == YY_CURRENT_BUFFER )
3720 }
3721 
3722 /** Pushes the new state onto the stack. The new state becomes
3723  * the current state. This function will allocate the stack
3724  * if necessary.
3725  * @param new_buffer The new state.
3726  *
3727  */
3729 {
3730  if (new_buffer == NULL)
3731  return;
3732 
3734 
3735  /* This block is copied from yy_switch_to_buffer. */
3736  if ( YY_CURRENT_BUFFER )
3737  {
3738  /* Flush out information for old buffer. */
3739  *(yy_c_buf_p) = (yy_hold_char);
3740  YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);
3741  YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
3742  }
3743 
3744  /* Only push if top exists. Otherwise, replace top. */
3745  if (YY_CURRENT_BUFFER)
3746  (yy_buffer_stack_top)++;
3747  YY_CURRENT_BUFFER_LVALUE = new_buffer;
3748 
3749  /* copied from yy_switch_to_buffer. */
3752 }
3753 
3754 /** Removes and deletes the top of the stack, if present.
3755  * The next element becomes the new top.
3756  *
3757  */
3759 {
3760  if (!YY_CURRENT_BUFFER)
3761  return;
3762 
3765  if ((yy_buffer_stack_top) > 0)
3766  --(yy_buffer_stack_top);
3767 
3768  if (YY_CURRENT_BUFFER) {
3771  }
3772 }
3773 
3774 /* Allocates the stack if it does not exist.
3775  * Guarantees space for at least one push.
3776  */
3777 static void yyensure_buffer_stack (void)
3778 {
3779  yy_size_t num_to_alloc;
3780 
3781  if (!(yy_buffer_stack)) {
3782 
3783  /* First allocation is just for 2 elements, since we don't know if this
3784  * scanner will even need a stack. We use 2 instead of 1 to avoid an
3785  * immediate realloc on the next call.
3786  */
3787  num_to_alloc = 1; /* After all that talk, this was set to 1 anyways... */
3789  (num_to_alloc * sizeof(struct yy_buffer_state*)
3790  );
3791  if ( ! (yy_buffer_stack) )
3792  YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" );
3793 
3794  memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*));
3795 
3796  (yy_buffer_stack_max) = num_to_alloc;
3797  (yy_buffer_stack_top) = 0;
3798  return;
3799  }
3800 
3801  if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){
3802 
3803  /* Increase the buffer to prepare for a possible push. */
3804  yy_size_t grow_size = 8 /* arbitrary grow size */;
3805 
3806  num_to_alloc = (yy_buffer_stack_max) + grow_size;
3808  ((yy_buffer_stack),
3809  num_to_alloc * sizeof(struct yy_buffer_state*)
3810  );
3811  if ( ! (yy_buffer_stack) )
3812  YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" );
3813 
3814  /* zero only the new slots.*/
3815  memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*));
3816  (yy_buffer_stack_max) = num_to_alloc;
3817  }
3818 }
3819 
3820 /** Setup the input buffer state to scan directly from a user-specified character buffer.
3821  * @param base the character buffer
3822  * @param size the size in bytes of the character buffer
3823  *
3824  * @return the newly allocated buffer state object.
3825  */
3827 {
3829 
3830  if ( size < 2 ||
3833  /* They forgot to leave room for the EOB's. */
3834  return NULL;
3835 
3836  b = (YY_BUFFER_STATE) yyalloc( sizeof( struct yy_buffer_state ) );
3837  if ( ! b )
3838  YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" );
3839 
3840  b->yy_buf_size = (int) (size - 2); /* "- 2" to take care of EOB's */
3841  b->yy_buf_pos = b->yy_ch_buf = base;
3842  b->yy_is_our_buffer = 0;
3843  b->yy_input_file = NULL;
3844  b->yy_n_chars = b->yy_buf_size;
3845  b->yy_is_interactive = 0;
3846  b->yy_at_bol = 1;
3847  b->yy_fill_buffer = 0;
3848  b->yy_buffer_status = YY_BUFFER_NEW;
3849 
3851 
3852  return b;
3853 }
3854 
3855 /** Setup the input buffer state to scan a string. The next call to yylex() will
3856  * scan from a @e copy of @a str.
3857  * @param yystr a NUL-terminated string to scan
3858  *
3859  * @return the newly allocated buffer state object.
3860  * @note If you want to scan bytes that may contain NUL values, then use
3861  * yy_scan_bytes() instead.
3862  */
3863 YY_BUFFER_STATE yy_scan_string (const char * yystr )
3864 {
3865 
3866  return yy_scan_bytes( yystr, (int) strlen(yystr) );
3867 }
3868 
3869 /** Setup the input buffer state to scan the given bytes. The next call to yylex() will
3870  * scan from a @e copy of @a bytes.
3871  * @param yybytes the byte buffer to scan
3872  * @param _yybytes_len the number of bytes in the buffer pointed to by @a bytes.
3873  *
3874  * @return the newly allocated buffer state object.
3875  */
3876 YY_BUFFER_STATE yy_scan_bytes (const char * yybytes, int _yybytes_len )
3877 {
3879  char *buf;
3880  yy_size_t n;
3881  int i;
3882 
3883  /* Get memory for full buffer, including space for trailing EOB's. */
3884  n = (yy_size_t) (_yybytes_len + 2);
3885  buf = (char *) yyalloc( n );
3886  if ( ! buf )
3887  YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" );
3888 
3889  for ( i = 0; i < _yybytes_len; ++i )
3890  buf[i] = yybytes[i];
3891 
3892  buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR;
3893 
3894  b = yy_scan_buffer( buf, n );
3895  if ( ! b )
3896  YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" );
3897 
3898  /* It's okay to grow etc. this buffer, and we should throw it
3899  * away when we're done.
3900  */
3901  b->yy_is_our_buffer = 1;
3902 
3903  return b;
3904 }
3905 
3906 #ifndef YY_EXIT_FAILURE
3907 #define YY_EXIT_FAILURE 2
3908 #endif
3909 
3910 static void yynoreturn yy_fatal_error (const char* msg )
3911 {
3912  fprintf( stderr, "%s\n", msg );
3913  exit( YY_EXIT_FAILURE );
3914 }
3915 
3916 /* Redefine yyless() so it works in section 3 code. */
3917 
3918 #undef yyless
3919 #define yyless(n) \
3920  do \
3921  { \
3922  /* Undo effects of setting up yytext. */ \
3923  int yyless_macro_arg = (n); \
3924  YY_LESS_LINENO(yyless_macro_arg);\
3925  yytext[yyleng] = (yy_hold_char); \
3926  (yy_c_buf_p) = yytext + yyless_macro_arg; \
3927  (yy_hold_char) = *(yy_c_buf_p); \
3928  *(yy_c_buf_p) = '\0'; \
3929  yyleng = yyless_macro_arg; \
3930  } \
3931  while ( 0 )
3932 
3933 /* Accessor methods (get/set functions) to struct members. */
3934 
3935 /** Get the current line number.
3936  *
3937  */
3938 int yyget_lineno (void)
3939 {
3940 
3941  return yylineno;
3942 }
3943 
3944 /** Get the input stream.
3945  *
3946  */
3948 {
3949  return yyin;
3950 }
3951 
3952 /** Get the output stream.
3953  *
3954  */
3956 {
3957  return yyout;
3958 }
3959 
3960 /** Get the length of the current token.
3961  *
3962  */
3963 int yyget_leng (void)
3964 {
3965  return yyleng;
3966 }
3967 
3968 /** Get the current token.
3969  *
3970  */
3971 
3972 char *yyget_text (void)
3973 {
3974  return yytext;
3975 }
3976 
3977 /** Set the current line number.
3978  * @param _line_number line number
3979  *
3980  */
3981 void yyset_lineno (int _line_number )
3982 {
3983 
3984  yylineno = _line_number;
3985 }
3986 
3987 /** Set the input stream. This does not discard the current
3988  * input buffer.
3989  * @param _in_str A readable stream.
3990  *
3991  * @see yy_switch_to_buffer
3992  */
3993 void yyset_in (FILE * _in_str )
3994 {
3995  yyin = _in_str ;
3996 }
3997 
3998 void yyset_out (FILE * _out_str )
3999 {
4000  yyout = _out_str ;
4001 }
4002 
4003 int yyget_debug (void)
4004 {
4005  return yy_flex_debug;
4006 }
4007 
4008 void yyset_debug (int _bdebug )
4009 {
4010  yy_flex_debug = _bdebug ;
4011 }
4012 
4013 static int yy_init_globals (void)
4014 {
4015  /* Initialization is the same as for the non-reentrant scanner.
4016  * This function is called from yylex_destroy(), so don't allocate here.
4017  */
4018 
4019  (yy_buffer_stack) = NULL;
4020  (yy_buffer_stack_top) = 0;
4021  (yy_buffer_stack_max) = 0;
4022  (yy_c_buf_p) = NULL;
4023  (yy_init) = 0;
4024  (yy_start) = 0;
4025 
4026 /* Defined in main.c */
4027 #ifdef YY_STDINIT
4028  yyin = stdin;
4029  yyout = stdout;
4030 #else
4031  yyin = NULL;
4032  yyout = NULL;
4033 #endif
4034 
4035  /* For future reference: Set errno on error, since we are called by
4036  * yylex_init()
4037  */
4038  return 0;
4039 }
4040 
4041 /* yylex_destroy is for both reentrant and non-reentrant scanners. */
4042 int yylex_destroy (void)
4043 {
4044 
4045  /* Pop the buffer stack, destroying each element. */
4046  while(YY_CURRENT_BUFFER){
4050  }
4051 
4052  /* Destroy the stack itself. */
4053  yyfree((yy_buffer_stack) );
4054  (yy_buffer_stack) = NULL;
4055 
4056  /* Reset the globals. This is important in a non-reentrant scanner so the next time
4057  * yylex() is called, initialization will occur. */
4058  yy_init_globals( );
4059 
4060  return 0;
4061 }
4062 
4063 /*
4064  * Internal utility routines.
4065  */
4066 
4067 #ifndef yytext_ptr
4068 static void yy_flex_strncpy (char* s1, const char * s2, int n )
4069 {
4070 
4071  int i;
4072  for ( i = 0; i < n; ++i )
4073  s1[i] = s2[i];
4074 }
4075 #endif
4076 
4077 #ifdef YY_NEED_STRLEN
4078 static int yy_flex_strlen (const char * s )
4079 {
4080  int n;
4081  for ( n = 0; s[n]; ++n )
4082  ;
4083 
4084  return n;
4085 }
4086 #endif
4087 
4089 {
4090  return malloc(size);
4091 }
4092 
4093 void *yyrealloc (void * ptr, yy_size_t size )
4094 {
4095 
4096  /* The cast to (char *) in the following accommodates both
4097  * implementations that use char* generic pointers, and those
4098  * that use void* generic pointers. It works with the latter
4099  * because both ANSI C and C++ allow castless assignment from
4100  * any pointer type to void*, and deal with argument conversions
4101  * as though doing an assignment.
4102  */
4103  return realloc(ptr, size);
4104 }
4105 
4106 void yyfree (void * ptr )
4107 {
4108  free( (char *) ptr ); /* see yyrealloc() for (char *) cast */
4109 }
4110 
4111 #define YYTABLES_NAME "yytables"
4112 
4113 #line 506 "detex.l"
4114 
4115 
4116 /******
4117 ** main --
4118 ** Set sbProgName to the base of arg 0.
4119 ** Set the input paths.
4120 ** Check for options
4121 ** -c echo LaTeX \cite, \ref, and \pageref values
4122 ** -e <env-list> list of LaTeX environments to ignore
4123 ** -l force latex mode
4124 ** -n do not follow \input and \include
4125 ** -s replace control sequences with space
4126 ** -t force tex mode
4127 ** -w word only output
4128 ** -1 output some location information
4129 ** Set the list of LaTeX environments to ignore.
4130 ** Process each input file.
4131 ** If no input files are specified on the command line, process stdin.
4132 ******/
4133 
4134 int
4135 main(int cArgs, char *rgsbArgs[])
4136 {
4137  char *pch, sbBadOpt[2];
4138  const char *sbEnvList = DEFAULTENV;
4139  int fSawFile = 0, iArgs = 1;
4140 
4141  /* get base name and decide what we are doing, detex or delatex */
4142 #ifdef OS2
4143  char drive[_MAX_DRIVE], dir[_MAX_DIR];
4144  char fname[_MAX_FNAME], ext[_MAX_EXT];
4145 #ifdef __EMX__
4146  _wildcard(&cArgs, &rgsbArgs);
4147  _response(&cArgs, &rgsbArgs);
4148 #endif
4149  _splitpath (rgsbArgs[0], drive, dir, fname, ext);
4150  sbProgName = strlwr(fname);
4151 #elif defined(KPATHSEA)
4152  kpse_set_program_name (rgsbArgs[0], NULL);
4154 #else
4155  if ((sbProgName = strrchr(rgsbArgs[0], '/')) != NULL)
4156  sbProgName++;
4157  else
4158  sbProgName = rgsbArgs[0];
4159 #endif
4160  if (strcmp("delatex",sbProgName) == 0)
4161  fLatex = 1;
4162 
4163 #ifndef KPATHSEA
4164  /* set rgsbInputPaths for use with TexOpen() */
4165  SetInputPaths();
4166 #endif
4167 
4168  /* process command line options */
4169  while (iArgs < cArgs && *(pch = rgsbArgs[iArgs]) == CHOPT) {
4170  while (*++pch)
4171  switch (*pch) {
4172  case CHCITEOPT:
4173  fCite = 1;
4174  break;
4175  case CHENVOPT:
4176  if (++iArgs >= cArgs) {
4177  ErrorExit("-e option requires an argument");
4178  }
4179  sbEnvList = rgsbArgs[iArgs];
4180  break;
4181  case CHLATEXOPT:
4182  fLatex = 1;
4183  break;
4184  case CHNOFOLLOWOPT:
4185  fFollow = 0;
4186  break;
4187  case CHSPACEOPT:
4188  fSpace = 1;
4189  break;
4190  case CHTEXOPT:
4191  fForcetex = 1;
4192  break;
4193  case CHWORDOPT:
4194  fWord = 1;
4195  break;
4196  case CHREPLACE:
4197  fReplace = 1;
4198  break;
4199  case CHVERSIONOPT:
4200  VersionExit();
4201  break;
4202  case CHSRCLOC:
4203  fSrcLoc = 1;
4204  break;
4205  default:
4206  sbBadOpt[0] = *pch;
4207  sbBadOpt[1] = '\0';
4208  Warning("unknown option ignored -", sbBadOpt);
4209  UsageExit();
4210  }
4211  iArgs++;
4212  }
4213  SetEnvIgnore(sbEnvList);
4214 
4215 #ifdef WIN32
4216  _setmode(fileno(stdout), _O_BINARY);
4217 #endif
4218 
4219  /* process input files */
4220  for (; iArgs < cArgs; iArgs++) {
4221  fSawFile++;
4222  if ((yyin = TexOpen(rgsbArgs[iArgs])) == NULL) {
4223  Warning("can't open file", rgsbArgs[iArgs]);
4224  continue;;
4225  }
4226  fFileNames[csb] = rgsbArgs[iArgs];
4227  fFileLines[csb] = 1;
4228  BEGIN Normal;
4229  (void)yylex();
4230  }
4231 
4232  /* if there were no input files, assume stdin */
4233  if (!fSawFile) {
4234  yyin = stdin;
4235 #ifdef OS2
4236  if (isatty(fileno(stdin)))
4237  OS2UsageExit();
4238 #endif
4239  BEGIN Normal;
4240  (void)yylex();
4241  }
4242 #ifndef FLEX_SCANNER
4243  if (YYSTATE != Normal)
4244  ErrorExit("input contains an unterminated mode or environment");
4245 #endif
4246  return(0);
4247 }
4248 
4249 #ifdef FLEX_SCANNER
4250 #undef yywrap
4251 #endif
4252 
4253 /******
4254 ** yywrap -- handles EOF for lex. Check to see if the stack of open files
4255 ** has anything on it. If it does, set yyin to the to value. If not
4256 ** return the termination signal for lex.
4257 ******/
4258 
4259 int
4260 yywrap(void)
4261 {
4262  (void)fclose(yyin);
4263 #ifdef FLEX_SCANNER
4264  /* Pop context state */
4265  if (csb > 0) {
4266  free(fFileNames[csb]);
4269  }
4270 #endif /* FLEX_SCANNER */
4271  if (cfp > 0) {
4272  yyin = rgfp[--cfp];
4273  return(0);
4274  }
4275  return(1);
4276 }
4277 
4278 #ifdef OS2
4279 
4280 /******
4281 ** yyless -- return characters to the input stream. Some systems don't have
4282 ** a yyless routine
4283 ******/
4284 
4285 void
4286 yyless(int n)
4287 {
4288  int i = strlen(yytext);
4289 
4290  while (i > n) unput(yytext[--i]);
4291  yytext[yyleng = n] = '\0';
4292 }
4293 #endif
4294 
4295 /******
4296 ** PrintPrefix -- In case fSrcLoc is 1 and we are about to
4297 ** print the first column of a line, we want to output the location of
4298 ** that line in the original LaTeX document it came from.
4299 ******/
4300 
4301 void
4303 {
4304  if (fSrcLoc && fIsColumn0) {
4305  printf("%s:%d: ", fFileNames[csb], fFileLines[csb]);
4306  fIsColumn0 = 0;
4307  }
4308 }
4309 
4310 /******
4311 ** LineBreak -- choses the proper way to break a line. If '-1' option is
4312 ** enabled we also want to output some source location information.
4313 ******/
4314 
4315 void
4317 {
4318  if (fWord) return;
4319  PrintPrefix();
4320  putchar('\n');
4321  fFileLines[csb]++; fIsColumn0=1;
4322 }
4323 
4324 /******
4325 ** Echo -- If we are at column 0 and have specified '-1'; output
4326 ** the source location information.
4327 ******/
4328 
4329 void
4331 {
4332  PrintPrefix();
4333  fprintf(yyout, "%s", yytext);
4334 }
4335 
4336 /******
4337 ** IncrLineNo -- Increase the correct linenumber counter and
4338 ** reset the the 'fIsColumn0' to true.
4339 ******/
4340 
4341 void
4343 {
4344  char *c;
4345  for (c=yytext; *c != '\0'; c++) {
4346  if (*c == '\n') {
4347  fFileLines[csb]++; fIsColumn0=1;
4348  }
4349  }
4350 }
4351 
4352 /******
4353 ** Ignore -- Since we might need to track source location information we
4354 ** cannot just ignore text. We must at least increase the linenumber counter.
4355 ******/
4356 
4357 void
4359 {
4360  IncrLineNo();
4361  if (fSpace && !fWord) putchar(' ');
4362 }
4363 
4364 /******
4365 ** SetEnvIgnore -- sets rgsbEnvIgnore to the values indicated by the
4366 ** sbEnvList.
4367 ******/
4368 
4369 void
4370 SetEnvIgnore(const char *sbEnvList)
4371 {
4372  char *sb;
4373  sb = SafeMalloc(strlen(sbEnvList) + 1, "malloc for SetEnvIgnore failed");
4374  (void) strcpy(sb, sbEnvList);
4375 
4376 
4378  if (csbEnvIgnore == my_ERROR)
4379  ErrorExit("The environment list contains too many environments");
4380 }
4381 
4382 /******
4383 ** BeginEnv -- checks to see if sbEnv is in the list rgsbEnvIgnore. If it
4384 ** is, sbCurrentIgnoredEnv is set to sbEnv.
4385 ******/
4386 
4387 int
4388 BeginEnv(const char *sbEnv)
4389 {
4390  int i;
4391 
4392  if (!fLatex) return(0);
4393  for (i = 0; i < csbEnvIgnore; ++i)
4394  if (strcmp(sbEnv, rgsbEnvIgnore[i]) == 0) {
4395  (void)strcpy(sbCurrentIgnoredEnv, sbEnv);
4396  return(1);
4397  }
4398  return(0);
4399 }
4400 
4401 /******
4402 ** EndEnv -- checks to see if sbEnv is the current environment being ignored.
4403 ******/
4404 
4405 int
4406 EndEnv(const char *sbEnv)
4407 {
4408  if (!fLatex) return(0);
4409  if (strcmp(sbEnv, sbCurrentIgnoredEnv) == 0)
4410  return(1);
4411  return(0);
4412 }
4413 
4414 /******
4415 ** InputFile -- push the current yyin and open sbFile. If the open fails,
4416 ** the sbFile is ignored.
4417 ******/
4418 
4419 
4420 void
4421 InputFile(char *sbFile)
4422 {
4423  FILE *TexOpen();
4424 
4425  if (!fFollow)
4426  return;
4427  rgfp[cfp++] = yyin;
4428  if ((yyin = TexOpen(sbFile)) == NULL) {
4429  Warning("can't open \\input file", sbFile);
4430  yyin = rgfp[--cfp];
4431  return;
4432  }
4433 #ifdef FLEX_SCANNER
4434  rgsb[csb++] = YY_CURRENT_BUFFER;
4435  fFileLines[csb] = 1;
4436  fFileNames[csb] = strdup(sbFile);
4438 #endif /* FLEX_SCANNER */
4439 }
4440 
4441 /******
4442 ** IncludeFile -- if sbFile is not in the rgsbIncList, push current yyin
4443 ** and open sbFile. If the open fails, the sbFile is ignored.
4444 ******/
4445 
4446 void
4447 IncludeFile(char *sbFile)
4448 {
4449  FILE *TexOpen();
4450 
4451  if (!fFollow)
4452  return;
4453  if (!InList(sbFile))
4454  return;
4455  rgfp[cfp++] = yyin;
4456  if ((yyin = TexOpen(sbFile)) == NULL) {
4457  Warning("can't open \\include file", sbFile);
4458  yyin = rgfp[--cfp];
4459  return;
4460  }
4461 #ifdef FLEX_SCANNER
4462  rgsb[csb++] = YY_CURRENT_BUFFER;
4463  fFileLines[csb] = 1;
4464  fFileNames[csb] = strdup(sbFile);
4466 #endif /* FLEX_SCANNER */
4467 }
4468 
4469 /******
4470 ** AddInclude -- adds sbFile to the rgsbIncList and increments csbIncList.
4471 ** If the include list is too long, sbFile is ignored.
4472 ******/
4473 
4474 void
4475 AddInclude(char *sbFile)
4476 {
4477  if (!fFollow)
4478  return;
4479  if (csbIncList >= MAXINCLIST)
4480  Warning("\\includeonly list is too long, ignoring", sbFile);
4481  rgsbIncList[csbIncList] = SafeMalloc(strlen(sbFile) + 1, "malloc for AddInclude failed");
4482  (void)strcpy(rgsbIncList[csbIncList++], sbFile);
4483 }
4484 
4485 /******
4486 ** InList -- checks to see if sbFile is in the rgsbIncList. If there is
4487 ** no list, all files are assumed to be "in the list".
4488 ******/
4489 
4490 int
4491 InList(char *sbFile)
4492 {
4493  char *pch, sbBase[PATH_MAX];
4494  int i;
4495 
4496  if (csbIncList == 0) /* no list */
4497  return(1);
4498  (void)strcpy(sbBase, sbFile);
4499  if ((pch = strrchr(sbBase, '.')) != NULL)
4500  *pch = '\0';
4501  i = 0;
4502  while ((i < csbIncList) && rgsbIncList[i])
4503  if (strcmp(rgsbIncList[i++], sbBase) == 0)
4504  return(1);
4505  return(0);
4506 }
4507 
4508 #ifndef KPATHSEA
4509 /******
4510 ** SetInputPaths -- sets rgsbInputPaths to the values indicated by the
4511 ** TEXINPUTS environment variable if set or else DEFAULTINPUTS. If
4512 ** the user's TEXINPUTS has a leading ':' prepend the DEFAULTINPUTS
4513 ** to the path, if there is a trailing ':' append the DEFAULTINPUTS.
4514 ** This is consistent with the most recent TeX. However, this
4515 ** routine does not honor the '//' construct (expand subdirs).
4516 ******/
4517 
4518 void
4520 {
4521  const char *sb;
4522  char *sbPaths;
4523  int cchDefaults, cchPaths;
4524 
4525  cchDefaults = strlen(DEFAULTINPUTS);
4526 #ifdef OS2
4527  if ((sb = getenv("TEXINPUT")) == NULL)
4528 #endif
4529  if ((sb = getenv("TEXINPUTS")) == NULL)
4530  sb = DEFAULTINPUTS;
4531  cchPaths = strlen(sb);
4532  if (sb[0] == CHPATHSEP)
4533  cchPaths += cchDefaults;
4534  if (sb[strlen(sb) - 1] == CHPATHSEP)
4535  cchPaths += cchDefaults;
4536  sbPaths = SafeMalloc(cchPaths + 1, "malloc for SetInputPaths failed");
4537  sbPaths[0] = '\0';
4538  if (sb[0] == CHPATHSEP)
4539  (void)strcat(sbPaths, DEFAULTINPUTS);
4540  (void)strcat(sbPaths, sb);
4541  if (sb[strlen(sb) - 1] == CHPATHSEP)
4542  (void)strcat(sbPaths, DEFAULTINPUTS);
4543 
4545  if (csbInputPaths == my_ERROR)
4546 #ifdef OS2
4547  ErrorExit("TEXINPUT(S) environment variable has too many paths");
4548 #else
4549  ErrorExit("TEXINPUTS environment variable has too many paths");
4550 #endif
4551 }
4552 #endif
4553 
4554 /******
4555 ** SeparateList -- takes a chSep separated list sbList, replaces the
4556 ** chSep's with NULLs and sets rgsbList[i] to the beginning of
4557 ** the ith word in sbList. The number of words is returned. A
4558 ** my_ERROR is returned if there are more than csbMax words.
4559 ******/
4560 
4561 int
4562 SeparateList(char *sbList, char *rgsbList[], char chSep, int csbMax)
4563 {
4564  int csbList = 0;
4565 
4566  while (sbList && *sbList && csbList < csbMax) {
4567  rgsbList[csbList++] = sbList;
4568  if ((sbList = strchr(sbList, chSep))) {
4569  *sbList++ = '\0';
4570  }
4571  }
4572  return(sbList && *sbList ? my_ERROR : csbList);
4573 }
4574 
4575 /******
4576 ** TexOpen -- tries to open sbFile in each of the rgsbInputPaths in turn.
4577 ** For each input path the following order is used:
4578 ** file.tex - must be as named, if not there go to the next path
4579 ** file.ext - random extension, try it
4580 ** file - base name, add .tex and try it
4581 ** file - try it as is
4582 ** Notice that if file exists in the first path and file.tex exists in
4583 ** one of the other paths, file in the first path is what is opened.
4584 ** If the sbFile begins with a '/', no paths are searched.
4585 ******/
4586 
4587 FILE *
4588 TexOpen(char *sbFile)
4589 {
4590  char *sbNew;
4591 #ifndef KPATHSEA
4592  char *pch;
4593  FILE *fp;
4594  int iPath;
4595  static char sbFullPath[PATH_MAX];
4596 
4597  for (iPath = 0; iPath < csbInputPaths; iPath++) {
4598 #ifdef OS2
4599  if (*sbFile == '/' || *sbFile == '\\' || strchr(sbFile, ':')) { /* absolute path */
4600 #else
4601  if (*sbFile == '/') { /* absolute path */
4602 #endif
4603  (void)snprintf(sbFullPath, PATH_MAX-1, "%s", sbFile);
4604  iPath = csbInputPaths; /* only check once */
4605  } else {
4606  (void)snprintf(sbFullPath, PATH_MAX-1, "%s/%s", rgsbInputPaths[iPath], sbFile);
4607  }
4608 #ifdef OS2
4609  pch = sbFullPath;
4610  while (pch = strchr(pch, '\\')) {
4611  *pch = '/';
4612  }
4613 #endif
4614 
4615  /* If sbFile ends in .tex then it must be there */
4616  if ((pch = strrchr(sbFullPath, '.')) != NULL
4617  && (strcmp(pch, ".tex") == 0)) {
4618  if ((fp = fopen(sbFullPath, "r")) != NULL)
4619  return(fp);
4620  else
4621  continue;
4622  }
4623 
4624  /* if .<ext> then try to open it. the '.' represents */
4625  /* the beginning of an extension if it is not the first */
4626  /* character and it does not follow a '.' or a '/' */
4627  if (pch != NULL && pch > &(sbFullPath[0])
4628  && *(pch - 1) != '.' && *(pch - 1) != '/'
4629  && (fp = fopen(sbFullPath, "r")) != NULL) {
4630  return(fp);
4631  }
4632 
4633  /* just base name, add .tex to the name */
4634  sbNew = SafeMalloc(strlen(sbFullPath) + 5, "malloc for TexOpen failed");
4635  (void)strcpy(sbNew, sbFullPath);
4636  (void)strcat(sbNew, ".tex");
4637  if ((fp = fopen(sbNew, "r")) != NULL) {
4638  free(sbNew);
4639  return(fp);
4640  }
4641  free(sbNew);
4642 
4643  /* try sbFile regardless */
4644  if ((fp = fopen(sbFullPath, "r")) != NULL)
4645  return(fp);
4646  }
4647  return NULL;
4648 #else
4649  sbNew = kpse_find_file (sbFile, kpse_tex_format, false);
4650 
4651  if (sbNew == NULL)
4652  return NULL;
4653 
4654  return fopen (sbNew, "r");
4655 #endif
4656 }
4657 
4658 /******
4659 ** SafeMalloc -- wrapper around malloc() to check for failure.
4660 ******/
4661 
4662 char *
4663 SafeMalloc(int cch, const char *sbMessage)
4664 {
4665  char *sb;
4666 
4667  if ((sb = (char *)malloc((unsigned)cch)) == NULL)
4668  ErrorExit(sbMessage);
4669  return(sb);
4670 }
4671 
4672 /******
4673 ** Warning -- print a warning message preceded by the program name.
4674 ******/
4675 
4676 void
4677 Warning(const char *sb1, const char *sb2)
4678 {
4679  (void)fprintf(stderr, "%s: warning: %s %s\n", sbProgName, sb1, sb2);
4680 }
4681 
4682 /******
4683 ** ErrorExit -- print an error message preceded by the program name.
4684 ** Stdout is flushed and detex exits.
4685 ******/
4686 
4687 void
4688 ErrorExit(const char *sb1)
4689 {
4690  (void)fflush(stdout);
4691  (void)fprintf(stderr, "%s: error: %s\n", sbProgName, sb1);
4692  exit(1);
4693 }
4694 
4695 /******
4696 ** UsageExit -- print usage message and exit.
4697 ******/
4698 
4699 void
4701 {
4702  (void)printf("\n%s [ -clnrstw1 ] [ -e environment-list ] [ filename[.tex] ... ]\n",
4703  sbProgName);
4704  puts(" -c echo LaTeX \\cite, \\ref, and \\pageref values\n \
4705 -e <env-list> list of LaTeX environments to ignore\n \
4706 -l force latex mode\n \
4707 -n do not follow \\input, \\include and \\subfile\n \
4708 -r replace math with \"noun\" and \"noun verbs noun\" to preserve grammar\n \
4709 -s replace control sequences with space\n \
4710 -t force tex mode\n \
4711 -w word only output\n \
4712 -1 outputs the original file name and line number in the beginning of each line\n \
4713 -v show program version and exit");
4714  exit(0);
4715 }
4716 
4717 /******
4718 ** VersionExit -- print version and exit.
4719 ******/
4720 
4721 void
4723 {
4724  (void)printf("\nOpenDetex version %s\nhttps://github.com/pkubowicz/opendetex\n",
4725  VERSION);
4726  exit(0);
4727 }
4728 
return _Result< 0 ? -1 :_Result;} #line 1069 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vsnwprintf_s_l(wchar_t *const _Buffer, size_t const _BufferCount, size_t const _MaxCount, wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vsnwprintf_s((*__local_stdio_printf_options()), _Buffer, _BufferCount, _MaxCount, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1091 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vsnwprintf_s(wchar_t *const _Buffer, size_t const _BufferCount, size_t const _MaxCount, wchar_t const *const _Format, va_list _ArgList) { return _vsnwprintf_s_l(_Buffer, _BufferCount, _MaxCount, _Format,((void *) 0), _ArgList);} #line 1108 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_snwprintf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _snwprintf(wchar_t *_Buffer, size_t _BufferCount, wchar_t const *_Format,...);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_vsnwprintf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _vsnwprintf(wchar_t *_Buffer, size_t _BufferCount, wchar_t const *_Format, va_list _Args);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_vsnwprintf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _vsnwprintf(wchar_t *_Buffer, size_t _BufferCount, wchar_t const *_Format, va_list _ArgList) { return _vsnwprintf_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);} #line 1133 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vswprintf_c_l(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vswprintf((*__local_stdio_printf_options()), _Buffer, _BufferCount, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1163 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vswprintf_c(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, va_list _ArgList) { return _vswprintf_c_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);} #line 1179 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vswprintf_l(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { return _vswprintf_c_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);} #line 1196 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl __vswprintf_l(wchar_t *const _Buffer, wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { return _vswprintf_l(_Buffer,(size_t) -1, _Format, _Locale, _ArgList);} #line 1212 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vswprintf(wchar_t *const _Buffer, wchar_t const *const _Format, va_list _ArgList) { return _vswprintf_l(_Buffer,(size_t) -1, _Format,((void *) 0), _ArgList);} #line 1227 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl vswprintf(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, va_list _ArgList) { return _vswprintf_c_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);} #line 1243 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vswprintf_s_l(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vswprintf_s((*__local_stdio_printf_options()), _Buffer, _BufferCount, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1264 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl vswprintf_s(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, va_list _ArgList) { return _vswprintf_s_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);} #line 1281 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" #line 1283 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vswprintf_p_l(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vswprintf_p((*__local_stdio_printf_options()), _Buffer, _BufferCount, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1312 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vswprintf_p(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, va_list _ArgList) { return _vswprintf_p_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);} #line 1328 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vscwprintf_l(wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vswprintf((*__local_stdio_printf_options())|(1ULL<< 1),((void *) 0), 0, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1347 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vscwprintf(wchar_t const *const _Format, va_list _ArgList) { return _vscwprintf_l(_Format,((void *) 0), _ArgList);} #line 1361 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vscwprintf_p_l(wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vswprintf_p((*__local_stdio_printf_options())|(1ULL<< 1),((void *) 0), 0, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1380 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vscwprintf_p(wchar_t const *const _Format, va_list _ArgList) { return _vscwprintf_p_l(_Format,((void *) 0), _ArgList);} #line 1394 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl __swprintf_l(wchar_t *const _Buffer, wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=__vswprintf_l(_Buffer, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1414 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _swprintf_l(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswprintf_c_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1435 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _swprintf(wchar_t *const _Buffer, wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=__vswprintf_l(_Buffer, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1454 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl swprintf(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswprintf_c_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1474 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "__swprintf_l_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl __swprintf_l(wchar_t *_Buffer, wchar_t const *_Format, _locale_t _Locale,...);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_vswprintf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl __vswprintf_l(wchar_t *_Buffer, wchar_t const *_Format, _locale_t _Locale, va_list _Args);__declspec(deprecated("This function or variable may be unsafe. Consider using " "swprintf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _swprintf(wchar_t *_Buffer, wchar_t const *_Format,...);__declspec(deprecated("This function or variable may be unsafe. Consider using " "vswprintf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _vswprintf(wchar_t *_Buffer, wchar_t const *_Format, va_list _Args);__inline int __cdecl _swprintf_s_l(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswprintf_s_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1511 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl swprintf_s(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswprintf_s_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1532 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" #line 1534 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _swprintf_p_l(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswprintf_p_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1562 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _swprintf_p(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswprintf_p_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1582 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _swprintf_c_l(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswprintf_c_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1603 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _swprintf_c(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswprintf_c_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1623 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_snwprintf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _snwprintf_l(wchar_t *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnwprintf_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1646 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _snwprintf(wchar_t *_Buffer, size_t _BufferCount, wchar_t const *_Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnwprintf_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1668 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _snwprintf_s_l(wchar_t *const _Buffer, size_t const _BufferCount, size_t const _MaxCount, wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnwprintf_s_l(_Buffer, _BufferCount, _MaxCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1690 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _snwprintf_s(wchar_t *const _Buffer, size_t const _BufferCount, size_t const _MaxCount, wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnwprintf_s_l(_Buffer, _BufferCount, _MaxCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1711 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _scwprintf_l(wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vscwprintf_l(_Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1737 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _scwprintf(wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vscwprintf_l(_Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1755 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _scwprintf_p_l(wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vscwprintf_p_l(_Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1774 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _scwprintf_p(wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vscwprintf_p_l(_Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1792 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" #pragma warning(push) #pragma warning(disable:4141 6054) #pragma warning(pop) #line 1856 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" int __cdecl __stdio_common_vswscanf(unsigned __int64 _Options, wchar_t const *_Buffer, size_t _BufferCount, wchar_t const *_Format, _locale_t _Locale, va_list _ArgList);__inline int __cdecl _vswscanf_l(wchar_t const *const _Buffer, wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { return __stdio_common_vswscanf((*__local_stdio_scanf_options()), _Buffer,(size_t) -1, _Format, _Locale, _ArgList);} #line 1897 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl vswscanf(wchar_t const *_Buffer, wchar_t const *_Format, va_list _ArgList) { return _vswscanf_l(_Buffer, _Format,((void *) 0), _ArgList);} #line 1912 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vswscanf_s_l(wchar_t const *const _Buffer, wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { return __stdio_common_vswscanf((*__local_stdio_scanf_options())|(1ULL<< 0), _Buffer,(size_t) -1, _Format, _Locale, _ArgList);} #line 1930 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl vswscanf_s(wchar_t const *const _Buffer, wchar_t const *const _Format, va_list _ArgList) { return _vswscanf_s_l(_Buffer, _Format,((void *) 0), _ArgList);} #line 1947 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" #line 1949 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_vsnwscanf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _vsnwscanf_l(wchar_t const *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { return __stdio_common_vswscanf((*__local_stdio_scanf_options()), _Buffer, _BufferCount, _Format, _Locale, _ArgList);} #line 1976 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _vsnwscanf_s_l(wchar_t const *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale, va_list _ArgList) { return __stdio_common_vswscanf((*__local_stdio_scanf_options())|(1ULL<< 0), _Buffer, _BufferCount, _Format, _Locale, _ArgList);} #line 1995 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_swscanf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _swscanf_l(wchar_t const *const _Buffer, wchar_t const *const _Format, _locale_t _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswscanf_l(_Buffer, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2015 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "swscanf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl swscanf(wchar_t const *const _Buffer, wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswscanf_l(_Buffer, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2034 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _swscanf_s_l(wchar_t const *const _Buffer, wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswscanf_s_l(_Buffer, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2054 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl swscanf_s(wchar_t const *const _Buffer, wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vswscanf_s_l(_Buffer, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2075 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" #line 2077 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_snwscanf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _snwscanf_l(wchar_t const *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnwscanf_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2100 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_snwscanf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _snwscanf(wchar_t const *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnwscanf_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2122 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _snwscanf_s_l(wchar_t const *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnwscanf_s_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2143 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __inline int __cdecl _snwscanf_s(wchar_t const *const _Buffer, size_t const _BufferCount, wchar_t const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnwscanf_s_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2163 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstdio.h" __pragma(pack(pop))#pragma warning(pop) #pragma warning(push)#pragma warning(disable:4324 4514 4574 4710 4793 4820 4995 4996 28719 28726 28727) __pragma(pack(push, 8)) typedef __int64 fpos_t;errno_t __cdecl _get_stream_buffer_pointers(FILE *_Stream, char ***_Base, char ***_Pointer, int **_Count);errno_t __cdecl clearerr_s(FILE *_Stream);errno_t __cdecl fopen_s(FILE **_Stream, char const *_FileName, char const *_Mode);size_t __cdecl fread_s(void *_Buffer, size_t _BufferSize, size_t _ElementSize, size_t _ElementCount, FILE *_Stream);errno_t __cdecl freopen_s(FILE **_Stream, char const *_FileName, char const *_Mode, FILE *_OldStream);char *__cdecl gets_s(char *_Buffer, rsize_t _Size);errno_t __cdecl tmpfile_s(FILE **_Stream);errno_t __cdecl tmpnam_s(char *_Buffer, rsize_t _Size);#line 145 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" void __cdecl clearerr(FILE *_Stream);int __cdecl fclose(FILE *_Stream);int __cdecl _fcloseall(void);FILE *__cdecl _fdopen(int _FileHandle, char const *_Mode);int __cdecl feof(FILE *_Stream);int __cdecl ferror(FILE *_Stream);int __cdecl fflush(FILE *_Stream);int __cdecl fgetc(FILE *_Stream);int __cdecl _fgetchar(void);int __cdecl fgetpos(FILE *_Stream, fpos_t *_Position);char *__cdecl fgets(char *_Buffer, int _MaxCount, FILE *_Stream);int __cdecl _fileno(FILE *_Stream);int __cdecl _flushall(void);__declspec(deprecated("This function or variable may be unsafe. Consider using " "fopen_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) FILE *__cdecl fopen(char const *_FileName, char const *_Mode);int __cdecl fputc(int _Character, FILE *_Stream);int __cdecl _fputchar(int _Character);int __cdecl fputs(char const *_Buffer, FILE *_Stream);size_t __cdecl fread(void *_Buffer, size_t _ElementSize, size_t _ElementCount, FILE *_Stream);__declspec(deprecated("This function or variable may be unsafe. Consider using " "freopen_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) FILE *__cdecl freopen(char const *_FileName, char const *_Mode, FILE *_Stream);FILE *__cdecl _fsopen(char const *_FileName, char const *_Mode, int _ShFlag);int __cdecl fsetpos(FILE *_Stream, fpos_t const *_Position);int __cdecl fseek(FILE *_Stream, long _Offset, int _Origin);int __cdecl _fseeki64(FILE *_Stream, __int64 _Offset, int _Origin);long __cdecl ftell(FILE *_Stream);__int64 __cdecl _ftelli64(FILE *_Stream);size_t __cdecl fwrite(void const *_Buffer, size_t _ElementSize, size_t _ElementCount, FILE *_Stream);int __cdecl getc(FILE *_Stream);int __cdecl getchar(void);int __cdecl _getmaxstdio(void);int __cdecl _getw(FILE *_Stream);void __cdecl perror(char const *_ErrorMessage);int __cdecl _pclose(FILE *_Stream);FILE *__cdecl _popen(char const *_Command, char const *_Mode);#line 344 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" int __cdecl putc(int _Character, FILE *_Stream);int __cdecl putchar(int _Character);int __cdecl puts(char const *_Buffer);int __cdecl _putw(int _Word, FILE *_Stream);int __cdecl remove(char const *_FileName);int __cdecl rename(char const *_OldFileName, char const *_NewFileName);int __cdecl _unlink(char const *_FileName);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_unlink" ". See online help for details.")) int __cdecl unlink(char const *_FileName);#line 391 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" void __cdecl rewind(FILE *_Stream);int __cdecl _rmtmp(void);__declspec(deprecated("This function or variable may be unsafe. Consider using " "setvbuf" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) void __cdecl setbuf(FILE *_Stream, char *_Buffer);int __cdecl _setmaxstdio(int _Maximum);int __cdecl setvbuf(FILE *_Stream, char *_Buffer, int _Mode, size_t _Size);__declspec(allocator) char *__cdecl _tempnam(char const *_DirectoryName, char const *_FilePrefix);__declspec(deprecated("This function or variable may be unsafe. Consider using " "tmpfile_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) FILE *__cdecl tmpfile(void);__declspec(deprecated("This function or variable may be unsafe. Consider using " "tmpnam_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl tmpnam(char *_Buffer);int __cdecl ungetc(int _Character, FILE *_Stream);void __cdecl _lock_file(FILE *_Stream);void __cdecl _unlock_file(FILE *_Stream);int __cdecl _fclose_nolock(FILE *_Stream);int __cdecl _fflush_nolock(FILE *_Stream);int __cdecl _fgetc_nolock(FILE *_Stream);int __cdecl _fputc_nolock(int _Character, FILE *_Stream);size_t __cdecl _fread_nolock(void *_Buffer, size_t _ElementSize, size_t _ElementCount, FILE *_Stream);size_t __cdecl _fread_nolock_s(void *_Buffer, size_t _BufferSize, size_t _ElementSize, size_t _ElementCount, FILE *_Stream);int __cdecl _fseek_nolock(FILE *_Stream, long _Offset, int _Origin);int __cdecl _fseeki64_nolock(FILE *_Stream, __int64 _Offset, int _Origin);long __cdecl _ftell_nolock(FILE *_Stream);__int64 __cdecl _ftelli64_nolock(FILE *_Stream);size_t __cdecl _fwrite_nolock(void const *_Buffer, size_t _ElementSize, size_t _ElementCount, FILE *_Stream);int __cdecl _getc_nolock(FILE *_Stream);int __cdecl _putc_nolock(int _Character, FILE *_Stream);int __cdecl _ungetc_nolock(int _Character, FILE *_Stream);int *__cdecl __p__commode(void);#line 596 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" int __cdecl __stdio_common_vfprintf(unsigned __int64 _Options, FILE *_Stream, char const *_Format, _locale_t _Locale, va_list _ArgList);int __cdecl __stdio_common_vfprintf_s(unsigned __int64 _Options, FILE *_Stream, char const *_Format, _locale_t _Locale, va_list _ArgList);int __cdecl __stdio_common_vfprintf_p(unsigned __int64 _Options, FILE *_Stream, char const *_Format, _locale_t _Locale, va_list _ArgList);__inline int __cdecl _vfprintf_l(FILE *const _Stream, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return __stdio_common_vfprintf((*__local_stdio_printf_options()), _Stream, _Format, _Locale, _ArgList);} #line 648 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vfprintf(FILE *const _Stream, char const *const _Format, va_list _ArgList) { return _vfprintf_l(_Stream, _Format,((void *) 0), _ArgList);} #line 662 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vfprintf_s_l(FILE *const _Stream, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return __stdio_common_vfprintf_s((*__local_stdio_printf_options()), _Stream, _Format, _Locale, _ArgList);} #line 677 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vfprintf_s(FILE *const _Stream, char const *const _Format, va_list _ArgList) { return _vfprintf_s_l(_Stream, _Format,((void *) 0), _ArgList);} #line 693 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 695 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vfprintf_p_l(FILE *const _Stream, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return __stdio_common_vfprintf_p((*__local_stdio_printf_options()), _Stream, _Format, _Locale, _ArgList);} #line 710 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vfprintf_p(FILE *const _Stream, char const *const _Format, va_list _ArgList) { return _vfprintf_p_l(_Stream, _Format,((void *) 0), _ArgList);} #line 724 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vprintf_l(char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return _vfprintf_l((__acrt_iob_func(1)), _Format, _Locale, _ArgList);} #line 738 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vprintf(char const *const _Format, va_list _ArgList) { return _vfprintf_l((__acrt_iob_func(1)), _Format,((void *) 0), _ArgList);} #line 751 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vprintf_s_l(char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return _vfprintf_s_l((__acrt_iob_func(1)), _Format, _Locale, _ArgList);} #line 765 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vprintf_s(char const *const _Format, va_list _ArgList) { return _vfprintf_s_l((__acrt_iob_func(1)), _Format,((void *) 0), _ArgList);} #line 780 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 782 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vprintf_p_l(char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return _vfprintf_p_l((__acrt_iob_func(1)), _Format, _Locale, _ArgList);} #line 796 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vprintf_p(char const *const _Format, va_list _ArgList) { return _vfprintf_p_l((__acrt_iob_func(1)), _Format,((void *) 0), _ArgList);} #line 809 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _fprintf_l(FILE *const _Stream, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_l(_Stream, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 828 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl fprintf(FILE *const _Stream, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_l(_Stream, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 846 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" int __cdecl _set_printf_count_output(int _Value);int __cdecl _get_printf_count_output(void);__inline int __cdecl _fprintf_s_l(FILE *const _Stream, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_s_l(_Stream, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 871 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl fprintf_s(FILE *const _Stream, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_s_l(_Stream, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 891 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 893 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _fprintf_p_l(FILE *const _Stream, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_p_l(_Stream, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 912 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _fprintf_p(FILE *const _Stream, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_p_l(_Stream, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 930 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _printf_l(char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_l((__acrt_iob_func(1)), _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 948 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl printf(char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_l((__acrt_iob_func(1)), _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 965 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _printf_s_l(char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_s_l((__acrt_iob_func(1)), _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 983 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl printf_s(char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_s_l((__acrt_iob_func(1)), _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1002 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 1004 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _printf_p_l(char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_p_l((__acrt_iob_func(1)), _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1022 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _printf_p(char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfprintf_p_l((__acrt_iob_func(1)), _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1039 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" int __cdecl __stdio_common_vfscanf(unsigned __int64 _Options, FILE *_Stream, char const *_Format, _locale_t _Locale, va_list _Arglist);__inline int __cdecl _vfscanf_l(FILE *const _Stream, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return __stdio_common_vfscanf((*__local_stdio_scanf_options()), _Stream, _Format, _Locale, _ArgList);} #line 1070 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vfscanf(FILE *const _Stream, char const *const _Format, va_list _ArgList) { return _vfscanf_l(_Stream, _Format,((void *) 0), _ArgList);} #line 1084 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vfscanf_s_l(FILE *const _Stream, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return __stdio_common_vfscanf((*__local_stdio_scanf_options())|(1ULL<< 0), _Stream, _Format, _Locale, _ArgList);} #line 1101 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vfscanf_s(FILE *const _Stream, char const *const _Format, va_list _ArgList) { return _vfscanf_s_l(_Stream, _Format,((void *) 0), _ArgList);} #line 1118 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 1120 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vscanf_l(char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return _vfscanf_l((__acrt_iob_func(0)), _Format, _Locale, _ArgList);} #line 1134 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vscanf(char const *const _Format, va_list _ArgList) { return _vfscanf_l((__acrt_iob_func(0)), _Format,((void *) 0), _ArgList);} #line 1147 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vscanf_s_l(char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return _vfscanf_s_l((__acrt_iob_func(0)), _Format, _Locale, _ArgList);} #line 1161 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vscanf_s(char const *const _Format, va_list _ArgList) { return _vfscanf_s_l((__acrt_iob_func(0)), _Format,((void *) 0), _ArgList);} #line 1176 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 1178 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_fscanf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _fscanf_l(FILE *const _Stream, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfscanf_l(_Stream, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1197 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "fscanf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl fscanf(FILE *const _Stream, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfscanf_l(_Stream, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1215 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _fscanf_s_l(FILE *const _Stream, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfscanf_s_l(_Stream, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1234 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl fscanf_s(FILE *const _Stream, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfscanf_s_l(_Stream, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1254 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 1256 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_scanf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _scanf_l(char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfscanf_l((__acrt_iob_func(0)), _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1274 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "scanf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl scanf(char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfscanf_l((__acrt_iob_func(0)), _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1291 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _scanf_s_l(char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfscanf_s_l((__acrt_iob_func(0)), _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1309 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl scanf_s(char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vfscanf_s_l((__acrt_iob_func(0)), _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1328 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 1330 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" int __cdecl __stdio_common_vsprintf(unsigned __int64 _Options, char *_Buffer, size_t _BufferCount, char const *_Format, _locale_t _Locale, va_list _ArgList);int __cdecl __stdio_common_vsprintf_s(unsigned __int64 _Options, char *_Buffer, size_t _BufferCount, char const *_Format, _locale_t _Locale, va_list _ArgList);int __cdecl __stdio_common_vsnprintf_s(unsigned __int64 _Options, char *_Buffer, size_t _BufferCount, size_t _MaxCount, char const *_Format, _locale_t _Locale, va_list _ArgList);int __cdecl __stdio_common_vsprintf_p(unsigned __int64 _Options, char *_Buffer, size_t _BufferCount, char const *_Format, _locale_t _Locale, va_list _ArgList);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_vsnprintf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _vsnprintf_l(char *const _Buffer, size_t const _BufferCount, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vsprintf((*__local_stdio_printf_options())|(1ULL<< 0), _Buffer, _BufferCount, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1399 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vsnprintf(char *const _Buffer, size_t const _BufferCount, char const *const _Format, va_list _ArgList) { return _vsnprintf_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);} #line 1415 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vsnprintf(char *const _Buffer, size_t const _BufferCount, char const *const _Format, va_list _ArgList) { int const _Result=__stdio_common_vsprintf((*__local_stdio_printf_options())|(1ULL<< 1), _Buffer, _BufferCount, _Format,((void *) 0), _ArgList);return _Result< 0 ? -1 :_Result;} #line 1446 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_vsprintf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _vsprintf_l(char *const _Buffer, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return _vsnprintf_l(_Buffer,(size_t) -1, _Format, _Locale, _ArgList);} #line 1462 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "vsprintf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl vsprintf(char *const _Buffer, char const *const _Format, va_list _ArgList) { return _vsnprintf_l(_Buffer,(size_t) -1, _Format,((void *) 0), _ArgList);} #line 1477 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vsprintf_s_l(char *const _Buffer, size_t const _BufferCount, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vsprintf_s((*__local_stdio_printf_options()), _Buffer, _BufferCount, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1498 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vsprintf_s(char *const _Buffer, size_t const _BufferCount, char const *const _Format, va_list _ArgList) { return _vsprintf_s_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);} #line 1516 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 1526 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vsprintf_p_l(char *const _Buffer, size_t const _BufferCount, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vsprintf_p((*__local_stdio_printf_options()), _Buffer, _BufferCount, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1547 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vsprintf_p(char *const _Buffer, size_t const _BufferCount, char const *const _Format, va_list _ArgList) { return _vsprintf_p_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);} #line 1563 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vsnprintf_s_l(char *const _Buffer, size_t const _BufferCount, size_t const _MaxCount, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vsnprintf_s((*__local_stdio_printf_options()), _Buffer, _BufferCount, _MaxCount, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1585 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vsnprintf_s(char *const _Buffer, size_t const _BufferCount, size_t const _MaxCount, char const *const _Format, va_list _ArgList) { return _vsnprintf_s_l(_Buffer, _BufferCount, _MaxCount, _Format,((void *) 0), _ArgList);} #line 1602 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vsnprintf_s(char *const _Buffer, size_t const _BufferCount, size_t const _MaxCount, char const *const _Format, va_list _ArgList) { return _vsnprintf_s_l(_Buffer, _BufferCount, _MaxCount, _Format,((void *) 0), _ArgList);} #line 1630 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 1641 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vscprintf_l(char const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vsprintf((*__local_stdio_printf_options())|(1ULL<< 1),((void *) 0), 0, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1659 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vscprintf(char const *const _Format, va_list _ArgList) { return _vscprintf_l(_Format,((void *) 0), _ArgList);} #line 1672 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vscprintf_p_l(char const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vsprintf_p((*__local_stdio_printf_options())|(1ULL<< 1),((void *) 0), 0, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1690 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vscprintf_p(char const *const _Format, va_list _ArgList) { return _vscprintf_p_l(_Format,((void *) 0), _ArgList);} #line 1703 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vsnprintf_c_l(char *const _Buffer, size_t const _BufferCount, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { int const _Result=__stdio_common_vsprintf((*__local_stdio_printf_options()), _Buffer, _BufferCount, _Format, _Locale, _ArgList);return _Result< 0 ? -1 :_Result;} #line 1723 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vsnprintf_c(char *const _Buffer, size_t const _BufferCount, char const *const _Format, va_list _ArgList) { return _vsnprintf_c_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);} #line 1739 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_sprintf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _sprintf_l(char *const _Buffer, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsprintf_l(_Buffer, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1761 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl sprintf(char *const _Buffer, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsprintf_l(_Buffer, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1782 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "sprintf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) int __cdecl sprintf(char *_Buffer, char const *_Format,...);__declspec(deprecated("This function or variable may be unsafe. Consider using " "vsprintf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) int __cdecl vsprintf(char *_Buffer, char const *_Format, va_list _Args);__inline int __cdecl _sprintf_s_l(char *const _Buffer, size_t const _BufferCount, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsprintf_s_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1810 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl sprintf_s(char *const _Buffer, size_t const _BufferCount, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsprintf_s_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1832 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 1834 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _sprintf_p_l(char *const _Buffer, size_t const _BufferCount, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsprintf_p_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1862 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _sprintf_p(char *const _Buffer, size_t const _BufferCount, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsprintf_p_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1882 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_snprintf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _snprintf_l(char *const _Buffer, size_t const _BufferCount, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnprintf_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1905 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl snprintf(char *const _Buffer, size_t const _BufferCount, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=vsnprintf(_Buffer, _BufferCount, _Format, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1936 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _snprintf(char *const _Buffer, size_t const _BufferCount, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnprintf(_Buffer, _BufferCount, _Format, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1956 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_snprintf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) int __cdecl _snprintf(char *_Buffer, size_t _BufferCount, char const *_Format,...);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_vsnprintf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) int __cdecl _vsnprintf(char *_Buffer, size_t _BufferCount, char const *_Format, va_list _Args);__inline int __cdecl _snprintf_c_l(char *const _Buffer, size_t const _BufferCount, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnprintf_c_l(_Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 1986 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _snprintf_c(char *const _Buffer, size_t const _BufferCount, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnprintf_c_l(_Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2006 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _snprintf_s_l(char *const _Buffer, size_t const _BufferCount, size_t const _MaxCount, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnprintf_s_l(_Buffer, _BufferCount, _MaxCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2028 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _snprintf_s(char *const _Buffer, size_t const _BufferCount, size_t const _MaxCount, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsnprintf_s_l(_Buffer, _BufferCount, _MaxCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2049 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _scprintf_l(char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vscprintf_l(_Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2075 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _scprintf(char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vscprintf_l(_Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2092 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _scprintf_p_l(char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vscprintf_p_l(_Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2110 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _scprintf_p(char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vscprintf_p(_Format, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2127 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" int __cdecl __stdio_common_vsscanf(unsigned __int64 _Options, char const *_Buffer, size_t _BufferCount, char const *_Format, _locale_t _Locale, va_list _ArgList);__inline int __cdecl _vsscanf_l(char const *const _Buffer, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return __stdio_common_vsscanf((*__local_stdio_scanf_options()), _Buffer,(size_t) -1, _Format, _Locale, _ArgList);} #line 2158 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl vsscanf(char const *const _Buffer, char const *const _Format, va_list _ArgList) { return _vsscanf_l(_Buffer, _Format,((void *) 0), _ArgList);} #line 2172 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _vsscanf_s_l(char const *const _Buffer, char const *const _Format, _locale_t const _Locale, va_list _ArgList) { return __stdio_common_vsscanf((*__local_stdio_scanf_options())|(1ULL<< 0), _Buffer,(size_t) -1, _Format, _Locale, _ArgList);} #line 2189 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #pragma warning(push) #pragma warning(disable:6530) __inline int __cdecl vsscanf_s(char const *const _Buffer, char const *const _Format, va_list _ArgList) { return _vsscanf_s_l(_Buffer, _Format,((void *) 0), _ArgList);} #line 2208 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #pragma warning(pop) #line 2219 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_sscanf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _sscanf_l(char const *const _Buffer, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsscanf_l(_Buffer, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2238 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "sscanf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl sscanf(char const *const _Buffer, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsscanf_l(_Buffer, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2256 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _sscanf_s_l(char const *const _Buffer, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=_vsscanf_s_l(_Buffer, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2275 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl sscanf_s(char const *const _Buffer, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=vsscanf_s(_Buffer, _Format, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2297 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #line 2299 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #pragma warning(push) #pragma warning(disable:6530) __declspec(deprecated("This function or variable may be unsafe. Consider using " "_snscanf_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _snscanf_l(char const *const _Buffer, size_t const _BufferCount, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=__stdio_common_vsscanf((*__local_stdio_scanf_options()), _Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2326 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "_snscanf_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) __inline int __cdecl _snscanf(char const *const _Buffer, size_t const _BufferCount, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=__stdio_common_vsscanf((*__local_stdio_scanf_options()), _Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2349 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _snscanf_s_l(char const *const _Buffer, size_t const _BufferCount, char const *const _Format, _locale_t const _Locale,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Locale))+((sizeof(_Locale)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=__stdio_common_vsscanf((*__local_stdio_scanf_options())|(1ULL<< 0), _Buffer, _BufferCount, _Format, _Locale, _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2374 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" __inline int __cdecl _snscanf_s(char const *const _Buffer, size_t const _BufferCount, char const *const _Format,...) { int _Result;va_list _ArgList;((void)(_ArgList=(va_list)(&(_Format))+((sizeof(_Format)+sizeof(int) - 1) &~(sizeof(int) - 1)))) ;_Result=__stdio_common_vsscanf((*__local_stdio_scanf_options())|(1ULL<< 0), _Buffer, _BufferCount, _Format,((void *) 0), _ArgList);((void)(_ArgList=(va_list) 0)) ;return _Result;} #line 2397 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h" #pragma warning(pop) __declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_tempnam" ". See online help for details.")) char *__cdecl tempnam(char const *_Directory, char const *_FilePrefix);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_fcloseall" ". See online help for details.")) int __cdecl fcloseall(void);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_fdopen" ". See online help for details.")) FILE *__cdecl fdopen(int _FileHandle, char const *_Format);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_fgetchar" ". See online help for details.")) int __cdecl fgetchar(void);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_fileno" ". See online help for details.")) int __cdecl fileno(FILE *_Stream);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_flushall" ". See online help for details.")) int __cdecl flushall(void);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_fputchar" ". See online help for details.")) int __cdecl fputchar(int _Ch);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_getw" ". See online help for details.")) int __cdecl getw(FILE *_Stream);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_putw" ". See online help for details.")) int __cdecl putw(int _Ch, FILE *_Stream);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_rmtmp" ". See online help for details.")) int __cdecl rmtmp(void);#line 2441 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\stdio.h"__pragma(pack(pop))#pragma warning(pop) #pragma once#pragma once#pragma once#pragma once#pragma warning(push)#pragma warning(disable:4324 4514 4574 4710 4793 4820 4995 4996 28719 28726 28727) __pragma(pack(push, 8)) int *__cdecl _errno(void);errno_t __cdecl _set_errno(int _Value);errno_t __cdecl _get_errno(int *_Value);unsigned long *__cdecl __doserrno(void);errno_t __cdecl _set_doserrno(unsigned long _Value);errno_t __cdecl _get_doserrno(unsigned long *_Value);__pragma(pack(pop))#pragma warning(pop) #pragma once#pragma warning(push)#pragma warning(disable:4514 4820) __pragma(pack(push, 8)) void *__cdecl memchr(void const *_Buf, int _Val, size_t _MaxCount);int __cdecl memcmp(void const *_Buf1, void const *_Buf2, size_t _Size);void *__cdecl memcpy(void *_Dst, void const *_Src, size_t _Size);void *__cdecl memmove(void *_Dst, void const *_Src, size_t _Size);void *__cdecl memset(void *_Dst, int _Val, size_t _Size);char *__cdecl strchr(char const *_Str, int _Val);char *__cdecl strrchr(char const *_Str, int _Ch);char *__cdecl strstr(char const *_Str, char const *_SubStr);wchar_t *__cdecl wcschr(wchar_t const *_Str, wchar_t _Ch);wchar_t *__cdecl wcsrchr(wchar_t const *_Str, wchar_t _Ch);wchar_t *__cdecl wcsstr(wchar_t const *_Str, wchar_t const *_SubStr);__pragma(pack(pop))#pragma warning(pop) #pragma warning(push)#pragma warning(disable:4324 4514 4574 4710 4793 4820 4995 4996 28719 28726 28727) __pragma(pack(push, 8)) static __inline errno_t __cdecl memcpy_s(void *const _Destination, rsize_t const _DestinationSize, void const *const _Source, rsize_t const _SourceSize) { if(_SourceSize==0) { return 0;} { int _Expr_val=!!(_Destination !=((void *) 0));if(!(_Expr_val)) {(*_errno())=22;_invalid_parameter_noinfo();return 22;} } ;if(_Source==((void *) 0)||_DestinationSize< _SourceSize) { memset(_Destination, 0, _DestinationSize);{ int _Expr_val=!!(_Source !=((void *) 0));if(!(_Expr_val)) {(*_errno())=22;_invalid_parameter_noinfo();return 22;} } ;{ int _Expr_val=!!(_DestinationSize >=_SourceSize);if(!(_Expr_val)) {(*_errno())=34;_invalid_parameter_noinfo();return 34;} } ;return 22 ;} memcpy(_Destination, _Source, _SourceSize);return 0;} static __inline errno_t __cdecl memmove_s(void *const _Destination, rsize_t const _DestinationSize, void const *const _Source, rsize_t const _SourceSize) { if(_SourceSize==0) { return 0;} { int _Expr_val=!!(_Destination !=((void *) 0));if(!(_Expr_val)) {(*_errno())=22;_invalid_parameter_noinfo();return 22;} } ;{ int _Expr_val=!!(_Source !=((void *) 0));if(!(_Expr_val)) {(*_errno())=22;_invalid_parameter_noinfo();return 22;} } ;{ int _Expr_val=!!(_DestinationSize >=_SourceSize);if(!(_Expr_val)) {(*_errno())=34;_invalid_parameter_noinfo();return 34;} } ;memmove(_Destination, _Source, _SourceSize);return 0;}#pragma warning(pop) __pragma(pack(pop))#pragma warning(push)#pragma warning(disable:4324 4514 4574 4710 4793 4820 4995 4996 28719 28726 28727) __pragma(pack(push, 8)) int __cdecl _memicmp(void const *_Buf1, void const *_Buf2, size_t _Size);int __cdecl _memicmp_l(void const *_Buf1, void const *_Buf2, size_t _Size, _locale_t _Locale);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_memccpy" ". See online help for details.")) void *__cdecl memccpy(void *_Dst, void const *_Src, int _Val, size_t _Size);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_memicmp" ". See online help for details.")) int __cdecl memicmp(void const *_Buf1, void const *_Buf2, size_t _Size);__pragma(pack(pop))#pragma warning(pop) #pragma once#pragma warning(push)#pragma warning(disable:4324 4514 4574 4710 4793 4820 4995 4996 28719 28726 28727) __pragma(pack(push, 8)) errno_t __cdecl wcscat_s(wchar_t *_Destination, rsize_t _SizeInWords, wchar_t const *_Source);errno_t __cdecl wcscpy_s(wchar_t *_Destination, rsize_t _SizeInWords, wchar_t const *_Source);errno_t __cdecl wcsncat_s(wchar_t *_Destination, rsize_t _SizeInWords, wchar_t const *_Source, rsize_t _MaxCount);errno_t __cdecl wcsncpy_s(wchar_t *_Destination, rsize_t _SizeInWords, wchar_t const *_Source, rsize_t _MaxCount);wchar_t *__cdecl wcstok_s(wchar_t *_String, wchar_t const *_Delimiter, wchar_t **_Context);__declspec(allocator) wchar_t *__cdecl _wcsdup(wchar_t const *_String);__declspec(deprecated("This function or variable may be unsafe. Consider using " "wcscat_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl wcscat(wchar_t *_Destination, wchar_t const *_Source);int __cdecl wcscmp(wchar_t const *_String1, wchar_t const *_String2);__declspec(deprecated("This function or variable may be unsafe. Consider using " "wcscpy_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl wcscpy(wchar_t *_Destination, wchar_t const *_Source);size_t __cdecl wcscspn(wchar_t const *_String, wchar_t const *_Control);size_t __cdecl wcslen(wchar_t const *_String);size_t __cdecl wcsnlen(wchar_t const *_Source, size_t _MaxCount);static __inline size_t __cdecl wcsnlen_s(wchar_t const *_Source, size_t _MaxCount) { return(_Source==0) ? 0 :wcsnlen(_Source, _MaxCount);}__declspec(deprecated("This function or variable may be unsafe. Consider using " "wcsncat_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl wcsncat(wchar_t *_Destination, wchar_t const *_Source, size_t _Count);int __cdecl wcsncmp(wchar_t const *_String1, wchar_t const *_String2, size_t _MaxCount);__declspec(deprecated("This function or variable may be unsafe. Consider using " "wcsncpy_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl wcsncpy(wchar_t *_Destination, wchar_t const *_Source, size_t _Count);wchar_t *__cdecl wcspbrk(wchar_t const *_String, wchar_t const *_Control);size_t __cdecl wcsspn(wchar_t const *_String, wchar_t const *_Control);__declspec(deprecated("This function or variable may be unsafe. Consider using " "wcstok_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl wcstok(wchar_t *_String, wchar_t const *_Delimiter, wchar_t **_Context);#line 237 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\corecrt_wstring.h" __declspec(deprecated("This function or variable may be unsafe. Consider using " "wcstok_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) static __inline wchar_t *__cdecl _wcstok(wchar_t *const _String, wchar_t const *const _Delimiter) { return wcstok(_String, _Delimiter, 0);} __declspec(deprecated("This function or variable may be unsafe. Consider using " "_wcserror_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl _wcserror(int _ErrorNumber);errno_t __cdecl _wcserror_s(wchar_t *_Buffer, size_t _SizeInWords, int _ErrorNumber);__declspec(deprecated("This function or variable may be unsafe. Consider using " "__wcserror_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl __wcserror(wchar_t const *_String);errno_t __cdecl __wcserror_s(wchar_t *_Buffer, size_t _SizeInWords, wchar_t const *_ErrorMessage);int __cdecl _wcsicmp(wchar_t const *_String1, wchar_t const *_String2);int __cdecl _wcsicmp_l(wchar_t const *_String1, wchar_t const *_String2, _locale_t _Locale);int __cdecl _wcsnicmp(wchar_t const *_String1, wchar_t const *_String2, size_t _MaxCount);int __cdecl _wcsnicmp_l(wchar_t const *_String1, wchar_t const *_String2, size_t _MaxCount, _locale_t _Locale);errno_t __cdecl _wcsnset_s(wchar_t *_Destination, size_t _SizeInWords, wchar_t _Value, size_t _MaxCount);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_wcsnset_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl _wcsnset(wchar_t *_String, wchar_t _Value, size_t _MaxCount);wchar_t *__cdecl _wcsrev(wchar_t *_String);errno_t __cdecl _wcsset_s(wchar_t *_Destination, size_t _SizeInWords, wchar_t _Value);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_wcsset_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl _wcsset(wchar_t *_String, wchar_t _Value);errno_t __cdecl _wcslwr_s(wchar_t *_String, size_t _SizeInWords);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_wcslwr_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl _wcslwr(wchar_t *_String);errno_t __cdecl _wcslwr_s_l(wchar_t *_String, size_t _SizeInWords, _locale_t _Locale);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_wcslwr_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl _wcslwr_l(wchar_t *_String, _locale_t _Locale);errno_t __cdecl _wcsupr_s(wchar_t *_String, size_t _Size);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_wcsupr_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl _wcsupr(wchar_t *_String);errno_t __cdecl _wcsupr_s_l(wchar_t *_String, size_t _Size, _locale_t _Locale);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_wcsupr_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) wchar_t *__cdecl _wcsupr_l(wchar_t *_String, _locale_t _Locale);size_t __cdecl wcsxfrm(wchar_t *_Destination, wchar_t const *_Source, size_t _MaxCount);size_t __cdecl _wcsxfrm_l(wchar_t *_Destination, wchar_t const *_Source, size_t _MaxCount, _locale_t _Locale);int __cdecl wcscoll(wchar_t const *_String1, wchar_t const *_String2);int __cdecl _wcscoll_l(wchar_t const *_String1, wchar_t const *_String2, _locale_t _Locale);int __cdecl _wcsicoll(wchar_t const *_String1, wchar_t const *_String2);int __cdecl _wcsicoll_l(wchar_t const *_String1, wchar_t const *_String2, _locale_t _Locale);int __cdecl _wcsncoll(wchar_t const *_String1, wchar_t const *_String2, size_t _MaxCount);int __cdecl _wcsncoll_l(wchar_t const *_String1, wchar_t const *_String2, size_t _MaxCount, _locale_t _Locale);int __cdecl _wcsnicoll(wchar_t const *_String1, wchar_t const *_String2, size_t _MaxCount);int __cdecl _wcsnicoll_l(wchar_t const *_String1, wchar_t const *_String2, size_t _MaxCount, _locale_t _Locale);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_wcsdup" ". See online help for details.")) wchar_t *__cdecl wcsdup(wchar_t const *_String);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_wcsicmp" ". See online help for details.")) int __cdecl wcsicmp(wchar_t const *_String1, wchar_t const *_String2);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_wcsnicmp" ". See online help for details.")) int __cdecl wcsnicmp(wchar_t const *_String1, wchar_t const *_String2, size_t _MaxCount);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_wcsnset" ". See online help for details.")) wchar_t *__cdecl wcsnset(wchar_t *_String, wchar_t _Value, size_t _MaxCount);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_wcsrev" ". See online help for details.")) wchar_t *__cdecl wcsrev(wchar_t *_String);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_wcsset" ". See online help for details.")) wchar_t *__cdecl wcsset(wchar_t *_String, wchar_t _Value);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_wcslwr" ". See online help for details.")) wchar_t *__cdecl wcslwr(wchar_t *_String);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_wcsupr" ". See online help for details.")) wchar_t *__cdecl wcsupr(wchar_t *_String);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_wcsicoll" ". See online help for details.")) int __cdecl wcsicoll(wchar_t const *_String1, wchar_t const *_String2);__pragma(pack(pop))#pragma warning(pop) #pragma warning(push)#pragma warning(disable:4324 4514 4574 4710 4793 4820 4995 4996 28719 28726 28727) __pragma(pack(push, 8)) errno_t __cdecl strcpy_s(char *_Destination, rsize_t _SizeInBytes, char const *_Source);errno_t __cdecl strcat_s(char *_Destination, rsize_t _SizeInBytes, char const *_Source);errno_t __cdecl strerror_s(char *_Buffer, size_t _SizeInBytes, int _ErrorNumber);errno_t __cdecl strncat_s(char *_Destination, rsize_t _SizeInBytes, char const *_Source, rsize_t _MaxCount);errno_t __cdecl strncpy_s(char *_Destination, rsize_t _SizeInBytes, char const *_Source, rsize_t _MaxCount);char *__cdecl strtok_s(char *_String, char const *_Delimiter, char **_Context);void *__cdecl _memccpy(void *_Dst, void const *_Src, int _Val, size_t _MaxCount);__declspec(deprecated("This function or variable may be unsafe. Consider using " "strcat_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl strcat(char *_Destination, char const *_Source);int __cdecl strcmp(char const *_Str1, char const *_Str2);int __cdecl _strcmpi(char const *_String1, char const *_String2);int __cdecl strcoll(char const *_String1, char const *_String2);int __cdecl _strcoll_l(char const *_String1, char const *_String2, _locale_t _Locale);__declspec(deprecated("This function or variable may be unsafe. Consider using " "strcpy_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl strcpy(char *_Destination, char const *_Source);size_t __cdecl strcspn(char const *_Str, char const *_Control);__declspec(allocator) char *__cdecl _strdup(char const *_Source);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_strerror_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl _strerror(char const *_ErrorMessage);errno_t __cdecl _strerror_s(char *_Buffer, size_t _SizeInBytes, char const *_ErrorMessage);__declspec(deprecated("This function or variable may be unsafe. Consider using " "strerror_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl strerror(int _ErrorMessage);int __cdecl _stricmp(char const *_String1, char const *_String2);int __cdecl _stricoll(char const *_String1, char const *_String2);int __cdecl _stricoll_l(char const *_String1, char const *_String2, _locale_t _Locale);int __cdecl _stricmp_l(char const *_String1, char const *_String2, _locale_t _Locale);size_t __cdecl strlen(char const *_Str);errno_t __cdecl _strlwr_s(char *_String, size_t _Size);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_strlwr_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl _strlwr(char *_String);errno_t __cdecl _strlwr_s_l(char *_String, size_t _Size, _locale_t _Locale);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_strlwr_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl _strlwr_l(char *_String, _locale_t _Locale);__declspec(deprecated("This function or variable may be unsafe. Consider using " "strncat_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl strncat(char *_Destination, char const *_Source, size_t _Count);int __cdecl strncmp(char const *_Str1, char const *_Str2, size_t _MaxCount);int __cdecl _strnicmp(char const *_String1, char const *_String2, size_t _MaxCount);int __cdecl _strnicmp_l(char const *_String1, char const *_String2, size_t _MaxCount, _locale_t _Locale);int __cdecl _strnicoll(char const *_String1, char const *_String2, size_t _MaxCount);int __cdecl _strnicoll_l(char const *_String1, char const *_String2, size_t _MaxCount, _locale_t _Locale);int __cdecl _strncoll(char const *_String1, char const *_String2, size_t _MaxCount);int __cdecl _strncoll_l(char const *_String1, char const *_String2, size_t _MaxCount, _locale_t _Locale);size_t __cdecl __strncnt(char const *_String, size_t _Count);__declspec(deprecated("This function or variable may be unsafe. Consider using " "strncpy_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl strncpy(char *_Destination, char const *_Source, size_t _Count);size_t __cdecl strnlen(char const *_String, size_t _MaxCount);static __inline size_t __cdecl strnlen_s(char const *_String, size_t _MaxCount) { return _String==0 ? 0 :strnlen(_String, _MaxCount);} errno_t __cdecl _strnset_s(char *_String, size_t _SizeInBytes, int _Value, size_t _MaxCount);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_strnset_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl _strnset(char *_Destination, int _Value, size_t _Count);char *__cdecl strpbrk(char const *_Str, char const *_Control);char *__cdecl _strrev(char *_Str);errno_t __cdecl _strset_s(char *_Destination, size_t _DestinationSize, int _Value);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_strset_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl _strset(char *_Destination, int _Value);size_t __cdecl strspn(char const *_Str, char const *_Control);__declspec(deprecated("This function or variable may be unsafe. Consider using " "strtok_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl strtok(char *_String, char const *_Delimiter);errno_t __cdecl _strupr_s(char *_String, size_t _Size);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_strupr_s" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl _strupr(char *_String);errno_t __cdecl _strupr_s_l(char *_String, size_t _Size, _locale_t _Locale);__declspec(deprecated("This function or variable may be unsafe. Consider using " "_strupr_s_l" " instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. " "See online help for details.")) char *__cdecl _strupr_l(char *_String, _locale_t _Locale);size_t __cdecl strxfrm(char *_Destination, char const *_Source, size_t _MaxCount);size_t __cdecl _strxfrm_l(char *_Destination, char const *_Source, size_t _MaxCount, _locale_t _Locale);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_strdup" ". See online help for details.")) char *__cdecl strdup(char const *_String);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_strcmpi" ". See online help for details.")) int __cdecl strcmpi(char const *_String1, char const *_String2);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_stricmp" ". See online help for details.")) int __cdecl stricmp(char const *_String1, char const *_String2);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_strlwr" ". See online help for details.")) char *__cdecl strlwr(char *_String);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_strnicmp" ". See online help for details.")) int __cdecl strnicmp(char const *_String1, char const *_String2, size_t _MaxCount);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_strnset" ". See online help for details.")) char *__cdecl strnset(char *_String, int _Value, size_t _MaxCount);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_strrev" ". See online help for details.")) char *__cdecl strrev(char *_String);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_strset" ". See online help for details.")) char *__cdecl strset(char *_String, int _Value);__declspec(deprecated("The POSIX name for this item is deprecated. Instead, use the ISO C " "and C++ conformant name: " "_strupr" ". See online help for details.")) char *__cdecl strupr(char *_String);__pragma(pack(pop))#pragma warning(pop) #pragma once#pragma warning(push)#pragma warning(disable:4514 4820) __pragma(pack(push, 8)) __pragma(pack(pop))#pragma warning(pop) #pragma once#pragma warning(push)#pragma warning(disable:4324 4514 4574 4710 4793 4820 4995 4996 28719 28726 28727) typedef unsigned short _ino_t;typedef _ino_t ino_t;#line 24 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\sys/types.h" typedef unsigned int _dev_t;typedef _dev_t dev_t;#line 36 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\sys/types.h" typedef long _off_t;typedef _off_t off_t;#line 48 "C:/Program Files (x86)/Windows Kits/10/include/10.0.19041.0/ucrt\\sys/types.h"#pragma warning(pop) typedef char *sds;#pragma pack(push, 1) struct sdshdr5 { unsigned char flags;char buf[];};struct sdshdr8 { uint8_t len;uint8_t alloc;unsigned char flags;char buf[];};struct sdshdr16 { uint16_t len;uint16_t alloc;unsigned char flags;char buf[];};struct sdshdr32 { uint32_t len;uint32_t alloc;unsigned char flags;char buf[];};struct sdshdr64 { uint64_t len;uint64_t alloc;unsigned char flags;char buf[];};#pragma pack(pop) static inline size_t sdslen(const sds s) { unsigned char flags=s[-1];switch(flags &7) { case 0 :return((flags) >> 3) ;case 1 :return((struct sdshdr8 *)((s) -(sizeof(struct sdshdr8)))) ->len;case 2 :return((struct sdshdr16 *)((s) -(sizeof(struct sdshdr16)))) ->len;case 3 :return((struct sdshdr32 *)((s) -(sizeof(struct sdshdr32)))) ->len;case 4 :return((struct sdshdr64 *)((s) -(sizeof(struct sdshdr64)))) ->len;} return 0;}static inline size_t sdsavail(const sds s) { unsigned char flags=s[-1];switch(flags &7) { case 0 :{ return 0;} case 1 :{ struct sdshdr8 *sh=(void *)((s) -(sizeof(struct sdshdr8)));;return sh->alloc - sh->len;} case 2 :{ struct sdshdr16 *sh=(void *)((s) -(sizeof(struct sdshdr16)));;return sh->alloc - sh->len;} case 3 :{ struct sdshdr32 *sh=(void *)((s) -(sizeof(struct sdshdr32)));;return sh->alloc - sh->len;} case 4 :{ struct sdshdr64 *sh=(void *)((s) -(sizeof(struct sdshdr64)));;return sh->alloc - sh->len;} } return 0;}static inline void sdssetlen(sds s, size_t newlen) { unsigned char flags=s[-1];switch(flags &7) { case 0 :{ unsigned char *fp=((unsigned char *) s) - 1;*fp=0|(newlen<< 3);} break;case 1 :((struct sdshdr8 *)((s) -(sizeof(struct sdshdr8)))) ->len=(uint8_t) newlen;break;case 2 :((struct sdshdr16 *)((s) -(sizeof(struct sdshdr16)))) ->len=(uint16_t) newlen;break;case 3 :((struct sdshdr32 *)((s) -(sizeof(struct sdshdr32)))) -> len
Definition: CPAL.d:15583
#define strdup
Definition: Utility.h:167
#define strlwr
Definition: Utility.h:162
#define n
Definition: t4ht.c:1290
#define b
Definition: jpegint.h:372
#define free(a)
Definition: decNumber.cpp:310
void LineBreak()
Definition: detex.c:4316
int fSpace
Definition: detex.c:1817
#define YY_NEW_FILE
Definition: detex.c:215
int cOpenBrace
Definition: detex.c:1808
#define CITE(x)
Definition: detex.c:1762
#define IncludeOnly
Definition: detex.c:1845
char * sbProgName
Definition: detex.c:1802
unsigned char flex_uint8_t
Definition: detex.c:141
int currBracesLevel
Definition: detex.c:1823
#define VERBNOUN
Definition: detex.c:1756
static char yy_hold_char
Definition: detex.c:356
void yyset_in(FILE *_in_str)
Definition: detex.c:3993
void PrintPrefix()
Definition: detex.c:4302
int cfp
Definition: detex.c:1807
#define LaPicture
Definition: detex.c:1863
static int input(void)
Definition: detex.c:3487
#define STRIPARGS(x)
Definition: detex.c:1761
#define LaFormula
Definition: detex.c:1854
int yyleng
Definition: detex.c:358
int footnoteLevel
Definition: detex.c:1824
char * rgsbInputPaths[10]
Definition: detex.c:1800
int csb
Definition: detex.c:1835
#define LaMacro2
Definition: detex.c:1859
static yy_state_type yy_last_accepting_state
Definition: detex.c:1731
int csbIncList
Definition: detex.c:1811
#define INCRLINENO
Definition: detex.c:1753
static const YY_CHAR yy_meta[61]
Definition: detex.c:637
#define YY_EXTRA_TYPE
Definition: detex.c:1874
YY_BUFFER_STATE rgsb[256+1]
Definition: detex.c:1831
FILE * yyout
Definition: detex.c:247
static int yy_start
Definition: detex.c:363
short int flex_int16_t
Definition: detex.c:139
static void yyensure_buffer_stack(void)
Definition: detex.c:3777
void yy_flush_buffer(YY_BUFFER_STATE b)
Definition: detex.c:3699
void yy_switch_to_buffer(YY_BUFFER_STATE new_buffer)
Definition: detex.c:3579
FILE * TexOpen(char *sbFile)
Definition: detex.c:4588
char * rgsbEnvIgnore[25]
Definition: detex.c:1798
#define LaBreak
Definition: detex.c:1862
#define YYSTATE
Definition: detex.c:211
static YY_BUFFER_STATE * yy_buffer_stack
Definition: detex.c:339
#define LATEX
Definition: detex.c:1759
unsigned int flex_uint32_t
Definition: detex.c:143
int yyget_lineno(void)
Definition: detex.c:3938
static const flex_int16_t yy_base[1416]
Definition: detex.c:647
static int yy_get_next_buffer(void)
Definition: detex.c:3286
#define YY_BREAK
Definition: detex.c:2035
static size_t yy_buffer_stack_max
Definition: detex.c:338
#define unput(c)
Definition: detex.c:269
void ErrorExit(const char *sb1)
Definition: detex.c:4688
#define yynoreturn
Definition: detex.c:190
static yy_state_type yy_try_NUL_trans(yy_state_type current_state)
Definition: detex.c:3456
FILE * yyin
Definition: detex.c:415
static const flex_int16_t yy_chk[3432]
Definition: detex.c:1349
void Echo()
Definition: detex.c:4330
void yypush_buffer_state(YY_BUFFER_STATE new_buffer)
Definition: detex.c:3728
int yyget_debug(void)
Definition: detex.c:4003
struct yy_buffer_state * YY_BUFFER_STATE
Definition: detex.c:237
#define Control
Definition: detex.c:1849
#define LaBegin
Definition: detex.c:1850
#define YY_BUFFER_NEW
Definition: detex.c:319
#define LaEnd
Definition: detex.c:1852
#define LaSubfile
Definition: detex.c:1856
#define YY_RESTORE_YY_MORE_OFFSET
Definition: detex.c:1743
int fFollow
Definition: detex.c:1815
static int yy_did_buffer_switch_on_eof
Definition: detex.c:368
static int yy_init_globals(void)
Definition: detex.c:4013
static const flex_int16_t yy_def[1416]
Definition: detex.c:807
YY_BUFFER_STATE yy_create_buffer(FILE *file, int size)
Definition: detex.c:3624
int fIsColumn0
Definition: detex.c:1834
int yylineno
Definition: detex.c:420
#define SPACE
Definition: detex.c:1757
#define YY_BUFFER_NORMAL
Definition: detex.c:320
void yypop_buffer_state(void)
Definition: detex.c:3758
int csbEnvIgnore
Definition: detex.c:1810
int fShowPictures
Definition: detex.c:1820
void UsageExit(void)
Definition: detex.c:4700
#define YY_MORE_ADJ
Definition: detex.c:1742
#define YY_RULE_SETUP
Definition: detex.c:2038
void SetEnvIgnore(const char *sbEnvList)
Definition: detex.c:4370
void IncludeFile(char *sbFile)
Definition: detex.c:4447
void yyfree(void *)
Definition: detex.c:4106
static const flex_int16_t yy_nxt[3432]
Definition: detex.c:967
int yy_flex_debug
Definition: detex.c:1735
#define yytext_ptr
Definition: detex.c:426
int SeparateList(char *sbList, char *rgsbList[], char chSep, int csbMax)
Definition: detex.c:4562
signed char flex_int8_t
Definition: detex.c:138
int fWord
Definition: detex.c:1814
void * yyalloc(yy_size_t)
Definition: detex.c:4088
#define EOB_ACT_END_OF_FILE
Definition: detex.c:250
#define Display
Definition: detex.c:1844
static void yy_fatal_error(const char *msg)
Definition: detex.c:3910
#define NEWLINE
Definition: detex.c:1758
#define NOFILE
Definition: detex.c:1804
#define YY_CURRENT_BUFFER_LVALUE
Definition: detex.c:353
int yyget_leng(void)
Definition: detex.c:3963
int flex_int32_t
Definition: detex.c:140
#define KILLARGS(x)
Definition: detex.c:1760
void AddInclude(char *sbFile)
Definition: detex.c:4475
#define LaMacro
Definition: detex.c:1857
#define Normal
Definition: detex.c:1848
void yyset_extra(void *user_defined)
int fCite
Definition: detex.c:1816
#define YY_START
Definition: detex.c:210
int fReplace
Definition: detex.c:1821
#define NOUN
Definition: detex.c:1755
#define LaBEGIN
Definition: detex.c:1751
void InputFile(char *sbFile)
Definition: detex.c:4421
int fLatex
Definition: detex.c:1813
FILE * rgfp[256+1]
Definition: detex.c:1806
char * rgsbIncList[40]
Definition: detex.c:1799
int yylex(void)
Definition: detex.c:2043
int yywrap(void)
Definition: detex.c:4260
int yy_state_type
Definition: detex.c:417
void * yyget_extra(void)
#define YY_CURRENT_BUFFER
Definition: detex.c:347
int BeginEnv(const char *sbEnv)
Definition: detex.c:4388
#define INITIAL
Definition: detex.c:1842
void SetInputPaths(void)
Definition: detex.c:4519
int cArgs
Definition: detex.c:1809
static int yy_n_chars
Definition: detex.c:357
#define YY_READ_BUF_SIZE
Definition: detex.c:1947
YY_BUFFER_STATE yy_scan_string(const char *yy_str)
Definition: detex.c:3863
#define IGNORE
Definition: detex.c:1752
#define YY_INPUT(buf, result, max_size)
Definition: detex.c:1963
#define ECHO
Definition: detex.c:1754
#define Define
Definition: detex.c:1843
void VersionExit(void)
Definition: detex.c:4722
#define YY_END_OF_BUFFER
Definition: detex.c:443
#define YY_STATE_EOF(state)
Definition: detex.c:213
int yylex_destroy(void)
Definition: detex.c:4042
void yyrestart(FILE *input_file)
Definition: detex.c:3562
#define BEGIN
Definition: detex.c:205
#define YY_END_OF_BUFFER_CHAR
Definition: detex.c:216
#define strrchr
Definition: detex.c:67
int fSrcLoc
Definition: detex.c:1819
void * yyrealloc(void *, yy_size_t)
Definition: detex.c:4093
#define LaOptArg2
Definition: detex.c:1860
#define YY_FATAL_ERROR(msg)
Definition: detex.c:2010
#define yyterminate()
Definition: detex.c:2000
unsigned short int flex_uint16_t
Definition: detex.c:142
void yyset_debug(int debug_flag)
Definition: detex.c:4008
static void yy_load_buffer_state(void)
Definition: detex.c:3610
char * yyget_text(void)
Definition: detex.c:3972
void yyset_lineno(int _line_number)
Definition: detex.c:3981
YY_BUFFER_STATE yy_scan_bytes(const char *bytes, int len)
Definition: detex.c:3876
flex_uint8_t YY_CHAR
Definition: detex.c:413
#define YY_DO_BEFORE_ACTION
Definition: detex.c:436
void Ignore()
Definition: detex.c:4358
#define LaDisplay
Definition: detex.c:1851
#define LaEnv
Definition: detex.c:1853
int InList(char *sbFile)
Definition: detex.c:4491
#define EOB_ACT_LAST_MATCH
Definition: detex.c:251
static const flex_int16_t yy_accept[1362]
Definition: detex.c:451
int fFileLines[256+1]
Definition: detex.c:1833
size_t yy_size_t
Definition: detex.c:242
#define YY_BUFFER_EOF_PENDING
Definition: detex.c:331
int csbInputPaths
Definition: detex.c:1812
#define LaVerbatim
Definition: detex.c:1861
static yy_state_type yy_get_previous_state(void)
Definition: detex.c:3424
void yyset_out(FILE *_out_str)
Definition: detex.c:3998
void Warning(const char *sb1, const char *sb2)
Definition: detex.c:4677
char * SafeMalloc(int cch, const char *sbMessage)
Definition: detex.c:4663
char * yytext
Definition: detex.c:1744
static const YY_CHAR yy_ec[256]
Definition: detex.c:605
static char * yy_c_buf_p
Definition: detex.c:361
int EndEnv(const char *sbEnv)
Definition: detex.c:4406
#define EOB_ACT_CONTINUE_SCAN
Definition: detex.c:249
#define Math
Definition: detex.c:1847
FILE * yyget_out(void)
Definition: detex.c:3955
static size_t yy_buffer_stack_top
Definition: detex.c:337
#define YY_DECL
Definition: detex.c:2023
#define yyless(n)
Definition: detex.c:3919
#define PATH_MAX
Definition: detex.c:75
void yy_delete_buffer(YY_BUFFER_STATE b)
Definition: detex.c:3652
#define YY_BUF_SIZE
Definition: detex.c:227
#define YY_EXIT_FAILURE
Definition: detex.c:3907
static int yy_init
Definition: detex.c:362
char sbCurrentIgnoredEnv[100]
Definition: detex.c:1801
char * getenv()
FILE * yyget_in(void)
Definition: detex.c:3947
#define LaInclude
Definition: detex.c:1855
int fForcetex
Definition: detex.c:1818
#define YY_SC_TO_UI(c)
Definition: detex.c:199
static void yy_init_buffer(YY_BUFFER_STATE b, FILE *file)
Definition: detex.c:3671
#define LaOptArg
Definition: detex.c:1858
void IncrLineNo()
Definition: detex.c:4342
YY_BUFFER_STATE yy_scan_buffer(char *base, yy_size_t size)
Definition: detex.c:3826
int main(int cArgs, char *rgsbArgs[])
Definition: detex.c:4135
static char * yy_last_accepting_cpos
Definition: detex.c:1732
#define Input
Definition: detex.c:1846
char * fFileNames[256+1]
Definition: detex.c:1832
#define CHENVSEP
Definition: detex.h:67
#define DEFAULTINPUTS
Definition: detex.h:59
#define CHPATHSEP
Definition: detex.h:60
#define MAXENVS
Definition: detex.h:68
#define CHWORDOPT
Definition: detex.h:82
#define CHSRCLOC
Definition: detex.h:83
#define DEFAULTENV
Definition: detex.h:66
#define CHTEXOPT
Definition: detex.h:81
#define CCHMAXENV
Definition: detex.h:69
#define CHLATEXOPT
Definition: detex.h:78
#define MAXINPUTPATHS
Definition: detex.h:64
#define my_ERROR
Definition: detex.h:87
#define MAXINCLIST
Definition: detex.h:52
#define CHOPT
Definition: detex.h:75
#define CHCITEOPT
Definition: detex.h:76
#define CHNOFOLLOWOPT
Definition: detex.h:79
#define CHVERSIONOPT
Definition: detex.h:85
#define CHSPACEOPT
Definition: detex.h:80
#define CHREPLACE
Definition: detex.h:84
#define CHENVOPT
Definition: detex.h:77
#define fopen
Definition: xxstdio.h:21
#define fflush
Definition: xxstdio.h:24
int strcmp()
Definition: coll.cpp:143
int printf()
char * strcpy()
struct internal_state current_state
integer debug_flag
Definition: dvips.c:241
static void
Definition: fpif.c:118
#define s
Definition: afcover.h:80
@ VERSION
Definition: genrb.cpp:69
#define c(n)
Definition: gpos-common.c:150
int base
Definition: gsftopk.c:1502
#define strchr
Definition: gsftopk.c:59
#define NULL
Definition: ftobjs.h:61
small capitals from c petite p scientific i
Definition: afcover.h:80
void exit()
signed short int16_t
Definition: stdint.h:76
unsigned short uint16_t
Definition: stdint.h:79
unsigned int uint32_t
Definition: stdint.h:80
signed int int32_t
Definition: stdint.h:77
unsigned char uint8_t
Definition: stdint.h:78
signed char int8_t
Definition: stdint.h:75
int atoi(const char *)
int errno
#define buf
#define fclose
Definition: debug.h:100
#define kpse_program_name
Definition: types.h:322
@ kpse_tex_format
Definition: types.h:129
#define fileno
Definition: win32lib.h:72
#define isatty
Definition: win32lib.h:80
#define fprintf
Definition: mendex.h:64
#define malloc
Definition: alloca.c:91
#define dest
#define snprintf
Definition: snprintf.c:41
#define _O_BINARY
Definition: lfs.c:127
#define realloc
Definition: glob.c:206
set set set set set set set set set set set set set set set set set set set set *set set set macro pixldst op &r &cond WK op &r &cond WK op &r &cond WK else op &m &cond &ia op &r &cond WK else op &m &cond &ia elseif elseif else error unsupported base if elseif elseif else error unsupported unaligned pixldst unaligned endm macro pixst base base else pixldst base endif endm macro PF ptr
#define fp
static void yy_flex_strncpy(char *, char *, int)
Definition: pl-lexer.c:3346
char * fname
Definition: plain2.c:121
static int size
Definition: ppmlabel.c:24
static int offset
Definition: ppmtogif.c:642
bstring c int memset(void *s, int c, int length)
static long bytes
Definition: psutil.c:35
#define dir
Definition: filedef.h:30
Definition: texview.c:48
Definition: sh.h:1345
char * yy_ch_buf
Definition: detex.c:277
int yy_bs_column
Definition: detex.c:310
FILE * yy_input_file
Definition: detex.c:275
int yy_buf_size
Definition: detex.c:283
int yy_fill_buffer
Definition: detex.c:315
int yy_buffer_status
Definition: detex.c:317
int yy_is_our_buffer
Definition: detex.c:294
int yy_bs_lineno
Definition: detex.c:309
char * yy_buf_pos
Definition: detex.c:278
int yy_at_bol
Definition: detex.c:307
int yy_is_interactive
Definition: detex.c:301
int yy_n_chars
Definition: detex.c:288
flex_int32_t yy_verify
Definition: detex.c:448
flex_int32_t yy_nxt
Definition: detex.c:449
#define FILE
Definition: t1stdio.h:34
s1
Definition: t4ht.c:1059
char * s2
Definition: t4ht.c:1062
char * ext
Definition: t4ht.c:938
*job_name strlen((char *) job_name) - 4)
char * file
Definition: t4ht.c:931
return() int(((double) *(font_tbl[cur_fnt].wtbl+(int)(*(font_tbl[cur_fnt].char_wi+(int)(ch - font_tbl[cur_fnt].char_f)% 256)))/(double)(1L<< 20)) *(double) font_tbl[cur_fnt].scale)
char verbchar[2]
Definition: vlna.c:397
static void new_size(int size, int block)
Definition: gc.c:702