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)  

lacheck.c
Go to the documentation of this file.
1 
2 #line 3 "../../../utils/lacheck/lacheck.c"
3 
4 #define YY_INT_ALIGNED short int
5 
6 /* A lexical scanner generated by flex */
7 
8 #define FLEX_SCANNER
9 #define YY_FLEX_MAJOR_VERSION 2
10 #define YY_FLEX_MINOR_VERSION 6
11 #define YY_FLEX_SUBMINOR_VERSION 0
12 #if YY_FLEX_SUBMINOR_VERSION > 0
13 #define FLEX_BETA
14 #endif
15 
16 /* First, we deal with platform-specific or compiler-specific issues. */
17 
18 /* begin standard C headers. */
19 #include <stdio.h>
20 #include <string.h>
21 #include <errno.h>
22 #include <stdlib.h>
23 
24 /* end standard C headers. */
25 
26 /* flex integer type definitions */
27 
28 #ifndef FLEXINT_H
29 #define FLEXINT_H
30 
31 /* C99 systems have <inttypes.h>. Non-C99 systems may or may not. */
32 
33 #if defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
34 
35 /* C99 says to define __STDC_LIMIT_MACROS before including stdint.h,
36  * if you want the limit (max/min) macros for int types.
37  */
38 #ifndef __STDC_LIMIT_MACROS
39 #define __STDC_LIMIT_MACROS 1
40 #endif
41 
42 #include <inttypes.h>
43 typedef int8_t flex_int8_t;
44 typedef uint8_t flex_uint8_t;
45 typedef int16_t flex_int16_t;
46 typedef uint16_t flex_uint16_t;
47 typedef int32_t flex_int32_t;
48 typedef uint32_t flex_uint32_t;
49 #else
50 typedef signed char flex_int8_t;
51 typedef short int flex_int16_t;
52 typedef int flex_int32_t;
53 typedef unsigned char flex_uint8_t;
54 typedef unsigned short int flex_uint16_t;
55 typedef unsigned int flex_uint32_t;
56 
57 /* Limits of integral types. */
58 #ifndef INT8_MIN
59 #define INT8_MIN (-128)
60 #endif
61 #ifndef INT16_MIN
62 #define INT16_MIN (-32767-1)
63 #endif
64 #ifndef INT32_MIN
65 #define INT32_MIN (-2147483647-1)
66 #endif
67 #ifndef INT8_MAX
68 #define INT8_MAX (127)
69 #endif
70 #ifndef INT16_MAX
71 #define INT16_MAX (32767)
72 #endif
73 #ifndef INT32_MAX
74 #define INT32_MAX (2147483647)
75 #endif
76 #ifndef UINT8_MAX
77 #define UINT8_MAX (255U)
78 #endif
79 #ifndef UINT16_MAX
80 #define UINT16_MAX (65535U)
81 #endif
82 #ifndef UINT32_MAX
83 #define UINT32_MAX (4294967295U)
84 #endif
85 
86 #endif /* ! C99 */
87 
88 #endif /* ! FLEXINT_H */
89 
90 #ifdef __cplusplus
91 
92 /* The "const" storage-class-modifier is valid. */
93 #define YY_USE_CONST
94 
95 #else /* ! __cplusplus */
96 
97 /* C99 requires __STDC__ to be defined as 1. */
98 #if defined (__STDC__)
99 
100 #define YY_USE_CONST
101 
102 #endif /* defined (__STDC__) */
103 #endif /* ! __cplusplus */
104 
105 #ifdef YY_USE_CONST
106 #define yyconst const
107 #else
108 #define yyconst
109 #endif
110 
111 /* Returned upon end-of-file. */
112 #define YY_NULL 0
113 
114 /* Promotes a possibly negative, possibly signed char to an unsigned
115  * integer for use as an array index. If the signed char is negative,
116  * we want to instead treat it as an 8-bit unsigned char, hence the
117  * double cast.
118  */
119 #define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c)
120 
121 /* Enter a start condition. This macro really ought to take a parameter,
122  * but we do it the disgusting crufty way forced on us by the ()-less
123  * definition of BEGIN.
124  */
125 #define BEGIN (yy_start) = 1 + 2 *
126 
127 /* Translate the current start state into a value that can be later handed
128  * to BEGIN to return to the state. The YYSTATE alias is for lex
129  * compatibility.
130  */
131 #define YY_START (((yy_start) - 1) / 2)
132 #define YYSTATE YY_START
133 
134 /* Action number for EOF rule of a given start state. */
135 #define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)
136 
137 /* Special action meaning "start processing a new file". */
138 #define YY_NEW_FILE yyrestart(yyin )
139 
140 #define YY_END_OF_BUFFER_CHAR 0
141 
142 /* Size of default input buffer. */
143 #ifndef YY_BUF_SIZE
144 #ifdef __ia64__
145 /* On IA-64, the buffer size is 16k, not 8k.
146  * Moreover, YY_BUF_SIZE is 2*YY_READ_BUF_SIZE in the general case.
147  * Ditto for the __ia64__ case accordingly.
148  */
149 #define YY_BUF_SIZE 32768
150 #else
151 #define YY_BUF_SIZE 16384
152 #endif /* __ia64__ */
153 #endif
154 
155 /* The state buf must be large enough to hold one state per character in the main buffer.
156  */
157 #define YY_STATE_BUF_SIZE ((YY_BUF_SIZE + 2) * sizeof(yy_state_type))
158 
159 #ifndef YY_TYPEDEF_YY_BUFFER_STATE
160 #define YY_TYPEDEF_YY_BUFFER_STATE
162 #endif
163 
164 #ifndef YY_TYPEDEF_YY_SIZE_T
165 #define YY_TYPEDEF_YY_SIZE_T
166 typedef size_t yy_size_t;
167 #endif
168 
169 extern yy_size_t yyleng;
170 
171 extern FILE *yyin, *yyout;
172 
173 #define EOB_ACT_CONTINUE_SCAN 0
174 #define EOB_ACT_END_OF_FILE 1
175 #define EOB_ACT_LAST_MATCH 2
176 
177  #define YY_LESS_LINENO(n)
178  #define YY_LINENO_REWIND_TO(ptr)
179 
180 /* Return all but the first "n" matched characters back to the input stream. */
181 #define yyless(n) \
182  do \
183  { \
184  /* Undo effects of setting up yytext. */ \
185  int yyless_macro_arg = (n); \
186  YY_LESS_LINENO(yyless_macro_arg);\
187  *yy_cp = (yy_hold_char); \
188  YY_RESTORE_YY_MORE_OFFSET \
189  (yy_c_buf_p) = yy_cp = yy_bp + yyless_macro_arg - YY_MORE_ADJ; \
190  YY_DO_BEFORE_ACTION; /* set up yytext again */ \
191  } \
192  while ( 0 )
193 
194 #define unput(c) yyunput( c, (yytext_ptr) )
195 
196 #ifndef YY_STRUCT_YY_BUFFER_STATE
197 #define YY_STRUCT_YY_BUFFER_STATE
198 struct yy_buffer_state
199  {
201 
202  char *yy_ch_buf; /* input buffer */
203  char *yy_buf_pos; /* current position in input buffer */
204 
205  /* Size of input buffer in bytes, not including room for EOB
206  * characters.
207  */
209 
210  /* Number of characters read into yy_ch_buf, not including EOB
211  * characters.
212  */
214 
215  /* Whether we "own" the buffer - i.e., we know we created it,
216  * and can realloc() it to grow it, and should free() it to
217  * delete it.
218  */
219  int yy_is_our_buffer;
220 
221  /* Whether this is an "interactive" input source; if so, and
222  * if we're using stdio for input, then we want to use getc()
223  * instead of fread(), to make sure we stop fetching input after
224  * each newline.
225  */
226  int yy_is_interactive;
227 
228  /* Whether we're considered to be at the beginning of a line.
229  * If so, '^' rules will be active on the next match, otherwise
230  * not.
231  */
232  int yy_at_bol;
233 
234  int yy_bs_lineno; /**< The line count. */
235  int yy_bs_column; /**< The column count. */
236 
237  /* Whether to try to fill the input buffer when we reach the
238  * end of it.
239  */
240  int yy_fill_buffer;
241 
242  int yy_buffer_status;
243 
244 #define YY_BUFFER_NEW 0
245 #define YY_BUFFER_NORMAL 1
246  /* When an EOF's been seen but there's still some text to process
247  * then we mark the buffer as YY_EOF_PENDING, to indicate that we
248  * shouldn't try reading from the input source any more. We might
249  * still have a bunch of tokens to match, though, because of
250  * possible backing-up.
251  *
252  * When we actually see the EOF, we change the status to "new"
253  * (via yyrestart()), so that the user can continue scanning by
254  * just pointing yyin at a new input file.
255  */
256 #define YY_BUFFER_EOF_PENDING 2
257 
258  };
259 #endif /* !YY_STRUCT_YY_BUFFER_STATE */
260 
261 /* Stack of input buffers. */
262 static size_t yy_buffer_stack_top = 0; /**< index of top of stack. */
263 static size_t yy_buffer_stack_max = 0; /**< capacity of stack. */
264 static YY_BUFFER_STATE * yy_buffer_stack = 0; /**< Stack as an array. */
265 
266 /* We provide macros for accessing buffer states in case in the
267  * future we want to put the buffer states in a more general
268  * "scanner state".
269  *
270  * Returns the top of the stack, or NULL.
271  */
272 #define YY_CURRENT_BUFFER ( (yy_buffer_stack) \
273  ? (yy_buffer_stack)[(yy_buffer_stack_top)] \
274  : NULL)
275 
276 /* Same as previous macro, but useful when we know that the buffer stack is not
277  * NULL or when we need an lvalue. For internal use only.
278  */
279 #define YY_CURRENT_BUFFER_LVALUE (yy_buffer_stack)[(yy_buffer_stack_top)]
280 
281 /* yy_hold_char holds the character lost when yytext is formed. */
282 static char yy_hold_char;
283 static yy_size_t yy_n_chars; /* number of characters read into yy_ch_buf */
285 
286 /* Points to current character in buffer. */
287 static char *yy_c_buf_p = (char *) 0;
288 static int yy_init = 0; /* whether we need to initialize */
289 static int yy_start = 0; /* start state number */
290 
291 /* Flag which is used to allow yywrap()'s to do buffer switches
292  * instead of setting up a fresh yyin. A bit of a hack ...
293  */
295 
296 void yyrestart (FILE *input_file );
297 void yy_switch_to_buffer (YY_BUFFER_STATE new_buffer );
301 void yypush_buffer_state (YY_BUFFER_STATE new_buffer );
302 void yypop_buffer_state (void );
303 
304 static void yyensure_buffer_stack (void );
305 static void yy_load_buffer_state (void );
306 static void yy_init_buffer (YY_BUFFER_STATE b,FILE *file );
307 
308 #define YY_FLUSH_BUFFER yy_flush_buffer(YY_CURRENT_BUFFER )
309 
311 YY_BUFFER_STATE yy_scan_string (yyconst char *yy_str );
313 
314 void *yyalloc (yy_size_t );
315 void *yyrealloc (void *,yy_size_t );
316 void yyfree (void * );
317 
318 #define yy_new_buffer yy_create_buffer
319 
320 #define yy_set_interactive(is_interactive) \
321  { \
322  if ( ! YY_CURRENT_BUFFER ){ \
323  yyensure_buffer_stack (); \
324  YY_CURRENT_BUFFER_LVALUE = \
325  yy_create_buffer(yyin,YY_BUF_SIZE ); \
326  } \
327  YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \
328  }
329 
330 #define yy_set_bol(at_bol) \
331  { \
332  if ( ! YY_CURRENT_BUFFER ){\
333  yyensure_buffer_stack (); \
334  YY_CURRENT_BUFFER_LVALUE = \
335  yy_create_buffer(yyin,YY_BUF_SIZE ); \
336  } \
337  YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \
338  }
339 
340 #define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol)
341 
342 /* Begin user sect3 */
343 
344 typedef unsigned char YY_CHAR;
345 
346 FILE *yyin = (FILE *) 0, *yyout = (FILE *) 0;
347 
348 typedef int yy_state_type;
349 
350 extern int yylineno;
351 
352 int yylineno = 1;
353 
354 extern char *yytext;
355 #ifdef yytext_ptr
356 #undef yytext_ptr
357 #endif
358 #define yytext_ptr yytext
359 
360 static yy_state_type yy_get_previous_state (void );
362 static int yy_get_next_buffer (void );
363 #if defined(__GNUC__) && __GNUC__ >= 3
364 __attribute__((__noreturn__))
365 #endif
366 static void yy_fatal_error (yyconst char msg[] );
367 
368 /* Done after the current pattern has been matched and before the
369  * corresponding action - sets up yytext.
370  */
371 #define YY_DO_BEFORE_ACTION \
372  (yytext_ptr) = yy_bp; \
373  yyleng = (size_t) (yy_cp - yy_bp); \
374  (yy_hold_char) = *yy_cp; \
375  *yy_cp = '\0'; \
376  (yy_c_buf_p) = yy_cp;
377 
378 #define YY_NUM_RULES 89
379 #define YY_END_OF_BUFFER 90
380 /* This struct is not used in this scanner,
381  but its presence is necessary. */
382 struct yy_trans_info
383  {
386  };
388  { 0,
389  90, 88, 89, 88, 89, 4, 89, 88, 89, 44,
390  88, 89, 82, 88, 89, 88, 89, 88, 89, 88,
391  89, 88, 89, 88, 89, 9, 88, 89, 10, 88,
392  89, 88, 89, 88, 89, 88, 89, 88, 89, 88,
393  89, 88, 89, 50, 89, 89, 50, 89, 60, 89,
394  60, 89, 53, 89, 52, 53, 89, 54, 89, 53,
395  89, 86, 89, 86, 89, 89, 84, 89, 83, 89,
396  84, 89, 57, 89, 56, 89, 57, 89, 32, 89,
397  4, 89, 32, 89, 32, 89, 30, 32, 89, 31,
398  32, 89, 42, 89, 41, 42, 89, 42, 89, 36,
399 
400  89, 36, 89, 36, 89, 34, 36, 89, 35, 36,
401  89, 27, 89, 25, 27, 89, 4, 25, 89, 13,
402  27, 89, 27, 89, 13, 27, 89, 24, 27, 89,
403  24, 27, 89, 13, 27, 89, 27, 89, 13, 27,
404  89, 9, 27, 89, 11, 27, 89, 26, 27, 89,
405  12, 27, 89, 12, 27, 89, 27, 89, 27, 89,
406  12, 27, 89, 27, 89, 12, 27, 89, 10, 27,
407  89, 81, 64, 43, 45, 3, 80, 7, 2, 37,
408  38, 17, 39, 1, 40, 5, 6,16446, 8, 64,
409  80,16446, 50, 1, 50, 60, 1, 60, 1, 86,
410 
411  1, 86, 81, 13, 13, 13, 80, 13, 18, 13,
412  12, 12, 12, 16, 12, 79,16445, 3, 67, 69,
413  16447,16446, 78, 78, 78, 14, 69,16447,16446, 79,
414  16445, 13,16447, 12,16447,16461,16461, 15,16445, 3,
415  3,16461,16461, 78, 78, 74, 74, 78, 22, 22,
416  78, 19, 19, 78, 8254, 25,16445, 23, 68, 68,
417  8269, 68, 68, 8253, 68, 3, 68, 8269, 8255, 59,
418  58, 8, 64, 68, 68, 68, 68, 72, 3, 3,
419  68, 75, 75, 75, 78, 75, 75, 55, 55, 55,
420  78, 55, 68, 68, 68, 71, 3, 68, 3, 49,
421 
422  48, 9, 28, 10, 85, 75, 76, 76, 76, 78,
423  76, 76, 68, 30, 31, 34, 35, 9, 11, 10,
424  3, 65, 76, 3, 70, 66, 66, 66, 3, 66,
425  47, 47, 78, 87, 78, 87, 29, 66, 73, 3,
426  66, 66, 66, 3, 46, 46, 78, 3, 20, 20,
427  78, 21, 51, 33
428  } ;
429 
431  { 0,
432  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
433  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
434  1, 1, 1, 1, 1, 1, 1, 2, 4, 6,
435  8, 10, 13, 16, 18, 20, 22, 24, 26, 29,
436  32, 34, 36, 38, 40, 42, 44, 46, 47, 49,
437  51, 53, 55, 58, 60, 62, 64, 66, 67, 69,
438  71, 73, 75, 77, 79, 81, 83, 85, 87, 90,
439  93, 95, 98, 100, 102, 104, 106, 109, 112, 114,
440  117, 120, 123, 125, 128, 131, 134, 137, 139, 142,
441  145, 148, 151, 154, 157, 159, 161, 164, 166, 169,
442 
443  172, 172, 172, 172, 172, 173, 173, 173, 173, 173,
444  173, 173, 173, 174, 174, 174, 175, 175, 176, 176,
445  177, 177, 177, 177, 177, 177, 177, 177, 178, 178,
446  179, 180, 181, 182, 183, 183, 183, 184, 185, 186,
447  186, 186, 186, 186, 186, 186, 186, 186, 186, 186,
448  186, 186, 186, 186, 186, 186, 186, 187, 188, 189,
449  189, 190, 191, 191, 191, 191, 191, 191, 191, 191,
450  191, 192, 192, 193, 193, 194, 196, 197, 199, 200,
451  200, 201, 203, 203, 203, 203, 203, 204, 204, 204,
452  204, 204, 205, 206, 208, 209, 210, 210, 210, 210,
453 
454  210, 210, 210, 210, 211, 212, 213, 214, 215, 215,
455  215, 216, 216, 216, 216, 216, 216, 216, 216, 216,
456  216, 216, 216, 216, 216, 216, 216, 217, 217, 217,
457  217, 217, 217, 217, 217, 217, 217, 218, 218, 218,
458  218, 219, 219, 219, 219, 219, 219, 219, 219, 219,
459  219, 219, 219, 219, 219, 219, 220, 220, 220, 220,
460  221, 222, 223, 224, 225, 226, 226, 226, 226, 226,
461  226, 226, 226, 226, 226, 226, 226, 226, 226, 226,
462  226, 226, 226, 226, 226, 226, 226, 226, 226, 226,
463  226, 226, 226, 226, 226, 226, 226, 226, 226, 226,
464 
465  226, 226, 226, 226, 226, 226, 226, 226, 226, 226,
466  226, 226, 226, 227, 228, 229, 230, 230, 230, 230,
467  230, 230, 230, 230, 230, 230, 230, 231, 231, 231,
468  231, 232, 234, 234, 234, 234, 234, 234, 234, 234,
469  234, 236, 236, 236, 236, 236, 236, 236, 236, 236,
470  236, 236, 236, 237, 238, 238, 238, 238, 238, 239,
471  239, 239, 239, 239, 239, 239, 239, 240, 240, 240,
472  240, 240, 240, 240, 240, 241, 241, 241, 241, 242,
473  242, 242, 242, 242, 243, 244, 244, 244, 244, 244,
474  244, 244, 244, 244, 244, 244, 244, 244, 244, 244,
475 
476  245, 246, 246, 246, 246, 246, 246, 246, 246, 246,
477  246, 246, 247, 249, 249, 249, 249, 249, 249, 249,
478  249, 249, 250, 252, 252, 252, 252, 252, 252, 252,
479  253, 255, 255, 255, 255, 255, 255, 255, 255, 255,
480  255, 255, 255, 255, 255, 255, 255, 255, 256, 256,
481  256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
482  256, 256, 256, 256, 256, 256, 256, 256, 256, 256,
483  256, 256, 257, 258, 258, 258, 258, 258, 259, 259,
484  259, 259, 259, 259, 259, 259, 259, 259, 260, 260,
485  260, 261, 261, 261, 261, 262, 262, 262, 262, 262,
486 
487  262, 262, 262, 262, 262, 262, 262, 263, 264, 264,
488  264, 264, 264, 264, 265, 265, 265, 265, 265, 265,
489  266, 266, 267, 267, 268, 268, 268, 268, 269, 269,
490  269, 269, 269, 269, 269, 269, 269, 269, 269, 269,
491  269, 269, 269, 270, 270, 270, 270, 270, 270, 270,
492  270, 270, 270, 270, 270, 270, 270, 270, 270, 270,
493  270, 270, 270, 271, 271, 271, 271, 272, 272, 272,
494  272, 272, 272, 272, 272, 272, 272, 272, 272, 272,
495  272, 272, 272, 272, 272, 272, 272, 273, 274, 274,
496  274, 274, 274, 274, 274, 274, 275, 276, 276, 276,
497 
498  276, 276, 276, 276, 276, 276, 276, 276, 276, 276,
499  276, 276, 276, 276, 276, 276, 276, 276, 276, 276,
500  276, 276, 276, 277, 277, 277, 277, 277, 277, 277,
501  277, 277, 277, 277, 277, 278, 278, 279, 279, 279,
502  279, 279, 280, 281, 281, 281, 282, 282, 282, 282,
503  282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
504  282, 282, 282, 282, 282, 282, 282, 282, 282, 282,
505  282, 282, 282, 282, 282, 282, 282, 282, 282, 283,
506  284, 284, 286, 287, 288, 288, 288, 288, 288, 288,
507  288, 288, 288, 288, 289, 290, 292, 293, 293, 293,
508 
509  293, 293, 293, 293, 294, 294, 294, 294, 294, 294,
510  294, 294, 294, 294, 294, 294, 294, 294, 294, 294,
511  294, 295, 295, 295, 295, 295, 295, 295, 296, 296,
512  296, 297, 298, 298, 299, 300, 300, 300, 300, 300,
513  300, 300, 300, 300, 300, 300, 301, 301, 301, 302,
514  303, 303, 303, 303, 303, 303, 304, 304, 304, 305,
515  305, 305, 305, 305, 306, 306, 307, 307, 307, 307,
516  307, 307, 308, 309, 309, 311, 312, 313, 313, 313,
517  313, 314, 314, 314, 315, 316, 317, 318, 319, 320,
518  320, 321, 321, 321, 321, 321, 321, 321, 321, 322,
519 
520  322, 322, 322, 322, 322, 323, 323, 323, 323, 323,
521  323, 323, 323, 323, 323, 323, 323, 323, 323, 323,
522  323, 323, 324, 324, 324, 324, 324, 324, 324, 324,
523  324, 324, 324, 324, 324, 324, 325, 325, 325, 325,
524  325, 325, 325, 325, 325, 325, 325, 325, 325, 325,
525  325, 326, 326, 326, 326, 326, 326, 326, 326, 326,
526  326, 326, 326, 327, 327, 327, 328, 328, 328, 328,
527  328, 329, 329, 330, 330, 331, 331, 331, 331, 331,
528  331, 331, 331, 331, 331, 331, 331, 332, 334, 335,
529  337, 337, 337, 337, 337, 337, 338, 338, 338, 338,
530 
531  338, 338, 338, 338, 339, 339, 339, 340, 341, 341,
532  341, 342, 342, 342, 342, 342, 342, 342, 342, 342,
533  342, 342, 342, 342, 342, 342, 342, 342, 342, 343,
534  343, 343, 343, 343, 344, 345, 345, 345, 345, 345,
535  345, 345, 346, 348, 348, 348, 348, 348, 348, 348,
536  348, 349, 349, 349, 349, 350, 352, 352, 353, 353,
537  354, 354, 354, 354, 354, 355, 355
538  } ;
539 
540 static yyconst YY_CHAR yy_ec[256] =
541  { 0,
542  1, 1, 1, 1, 1, 1, 1, 1, 2, 3,
543  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
544  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
545  1, 4, 5, 6, 6, 7, 8, 6, 9, 10,
546  11, 12, 13, 14, 15, 16, 17, 18, 18, 18,
547  18, 18, 18, 18, 18, 18, 18, 19, 20, 6,
548  6, 6, 21, 22, 23, 23, 23, 23, 23, 23,
549  23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
550  23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
551  24, 25, 26, 6, 1, 27, 28, 29, 30, 31,
552 
553  32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
554  42, 43, 37, 44, 45, 46, 47, 48, 49, 50,
555  51, 37, 52, 1, 53, 54, 1, 1, 1, 1,
556  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
557  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
558  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
559  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
560  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
561  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
562  1, 1, 1, 1, 1, 1, 55, 55, 1, 1,
563 
564  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
565  1, 1, 1, 1, 1, 55, 1, 1, 1, 1,
566  1, 1, 1, 1, 1, 1, 1, 1, 56, 56,
567  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
568  1, 1, 1, 1, 1, 1, 1, 56, 1, 1,
569  1, 1, 1, 1, 1
570  } ;
571 
572 static yyconst YY_CHAR yy_meta[57] =
573  { 0,
574  1, 2, 3, 2, 4, 1, 5, 6, 7, 8,
575  8, 1, 1, 9, 1, 10, 1, 8, 8, 8,
576  11, 12, 13, 1, 14, 1, 15, 16, 16, 16,
577  16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
578  16, 16, 16, 16, 16, 16, 16, 16, 16, 16,
579  16, 17, 18, 19, 20, 21
580  } ;
581 
583  { 0,
584  0, 56, 110, 111, 112, 113, 115, 117, 118, 119,
585  5100, 5099, 120, 121, 122, 123, 124, 126, 134, 136,
586  150, 159, 212, 0, 268, 0, 5123, 155, 323, 179,
587  179, 180, 171, 378, 181, 361, 410, 373, 187, 184,
588  462, 405, 465, 478, 515, 360, 0, 5126, 5097, 0,
589  5096, 5126, 5126, 5126, 167, 0, 5091, 5077, 5126, 5126,
590  5069, 5126, 5126, 5066, 5126, 5126, 5070, 470, 5126, 5126,
591  5126, 5126, 5045, 5126, 5015, 475, 5126, 5126, 315, 570,
592  624, 388, 472, 397, 322, 569, 675, 714, 758, 507,
593  324, 585, 463, 583, 589, 593, 809, 373, 860, 385,
594 
595  618, 612, 660, 667, 657, 0, 914, 688, 701, 940,
596  968, 4996, 5126, 704, 719, 5126, 571, 5126, 4973, 5126,
597  712, 1012, 784, 745, 779, 4931, 817, 5126, 596, 5126,
598  5126, 5126, 5126, 5126, 4922, 4891, 5126, 814, 5126, 462,
599  474, 853, 545, 860, 384, 467, 109, 491, 369, 645,
600  711, 558, 614, 570, 134, 697, 5126, 5126, 801, 891,
601  4863, 4842, 987, 865, 901, 1018, 4815, 412, 1035, 759,
602  1043, 792, 1067, 838, 0, 0, 0, 0, 5126, 4725,
603  0, 0, 4726, 4669, 4640, 4637, 5126, 0, 4631, 619,
604  766, 727, 1114, 731, 685, 5126, 4585, 391, 4552, 4549,
605 
606  4507, 462, 4503, 823, 787, 1115, 837, 5126, 597, 4472,
607  895, 1059, 1130, 1010, 4431, 4421, 4384, 4377, 4346, 4327,
608  4307, 4279, 0, 1139, 4287, 4255, 1169, 1150, 1196, 1209,
609  1249, 4241, 4240, 4213, 128, 693, 934, 1304, 4209, 1230,
610  1311, 1189, 1314, 536, 170, 468, 509, 382, 434, 627,
611  565, 841, 0, 1143, 1335, 5126, 1326, 1241, 4220, 5126,
612  990, 1003, 4228, 4227, 4226, 729, 743, 855, 877, 651,
613  774, 813, 788, 884, 1372, 785, 1128, 900, 313, 1104,
614  1428, 780, 1037, 925, 864, 1138, 1484, 178, 931, 1033,
615  1105, 1185, 981, 803, 977, 976, 1051, 1014, 1162, 891,
616 
617  1062, 1233, 600, 1248, 0, 0, 1050, 0, 4230, 1539,
618  1564, 1335, 5126, 1549, 1580, 1589, 1595, 1598, 1622, 4230,
619  4214, 4199, 4198, 4193, 4192, 4232, 4221, 1101, 1308, 1621,
620  1555, 1605, 4180, 4179, 0, 0, 4172, 4136, 4131, 4107,
621  1677, 4104, 0, 4086, 1310, 0, 4113, 1684, 1691, 1350,
622  1697, 4078, 1271, 1542, 4075, 4047, 4087, 0, 5126, 1721,
623  1731, 0, 1741, 1748, 1775, 1698, 1755, 4047, 4054, 4058,
624  1761, 1800, 4013, 1703, 1745, 4021, 1162, 1807, 1810, 1791,
625  1803, 1834, 1216, 1559, 1837, 1542, 1142, 0, 3964, 3995,
626  1695, 0, 1840, 3966, 87, 3960, 3952, 1843, 1681, 3971,
627 
628  3968, 1103, 1173, 1013, 1188, 576, 1194, 1288, 1099, 1205,
629  1220, 5126, 3967, 1591, 1294, 1854, 1331, 930, 1335, 1325,
630  1279, 5126, 3966, 1859, 1526, 1582, 1219, 1052, 1528, 5126,
631  3965, 1563, 1593, 1838, 1319, 1607, 1599, 1732, 1719, 1699,
632  1705, 1652, 1716, 689, 1653, 1869, 1880, 5126, 1883, 1874,
633  3982, 3981, 3955, 3979, 1897, 0, 1900, 1913, 1938, 1914,
634  1963, 1970, 1973, 1981, 1997, 3965, 1905, 3938, 3937, 3936,
635  3935, 2024, 1933, 2005, 2012, 3934, 3933, 5126, 3942, 3913,
636  3860, 3835, 3821, 3822, 0, 3830, 3856, 5126, 1760, 3843,
637  3842, 1945, 3810, 1917, 5126, 3815, 3810, 2048, 3845, 2055,
638 
639  1847, 0, 1754, 3844, 2040, 3831, 2064, 2070, 3798, 0,
640  3813, 2078, 2088, 5126, 2096, 3809, 3838, 1845, 3818, 3813,
641  2009, 1898, 1546, 1817, 2103, 1827, 2106, 3812, 1874, 1793,
642  3811, 2114, 0, 1989, 3809, 3769, 3770, 3772, 3767, 3760,
643  2121, 2110, 5126, 2125, 1832, 1902, 1939, 1804, 1852, 2134,
644  980, 1856, 2180, 1910, 1812, 2138, 0, 1937, 1946, 1280,
645  1974, 2235, 5126, 3802, 1874, 2014, 5126, 2053, 2040, 1936,
646  1972, 2287, 1982, 2061, 1668, 2019, 2048, 2079, 2098, 2066,
647  2097, 2113, 2104, 2343, 2109, 2151, 3796, 3795, 3772, 2238,
648  0, 1980, 3798, 2245, 3782, 2248, 2254, 2398, 2401, 2408,
649 
650  2411, 2416, 3747, 3747, 3742, 3736, 3735, 2426, 2435, 2442,
651  3713, 3708, 3715, 3725, 3716, 2447, 3695, 3713, 3732, 2497,
652  3720, 3730, 3725, 3681, 3679, 3695, 2500, 3690, 3678, 3714,
653  2507, 2516, 3702, 3712, 3710, 3669, 5126, 3677, 2525, 0,
654  3705, 2532, 3691, 2143, 3701, 3696, 2000, 2405, 2144, 2152,
655  3695, 2541, 3651, 3645, 3650, 3654, 3640, 2535, 2055, 2557,
656  2222, 2139, 2142, 2238, 3650, 2147, 3628, 2140, 3648, 2232,
657  2223, 3671, 2240, 2405, 2144, 2245, 2549, 2395, 5126, 2602,
658  0, 3650, 3646, 2560, 2385, 2410, 2247, 2418, 2419, 2250,
659  2253, 2653, 2572, 5126, 3650, 3639, 3637, 3624, 3649, 2579,
660 
661  2603, 3635, 3639, 3624, 2708, 3589, 3563, 3557, 3542, 3537,
662  2711, 3536, 3535, 3521, 3528, 2718, 3517, 3520, 2441, 3555,
663  3550, 2721, 3507, 3511, 3278, 2724, 3313, 3312, 2748, 3272,
664  5126, 2446, 3310, 3309, 2751, 470, 1999, 2503, 2722, 3266,
665  3278, 3264, 2762, 2485, 2766, 5126, 3304, 2129, 5126, 3284,
666  2494, 2145, 2420, 2499, 2545, 5126, 2548, 2556, 3283, 2525,
667  2551, 2249, 2564, 5126, 2817, 0, 2433, 2516, 2547, 2413,
668  2567, 5126, 2864, 0, 3282, 3281, 2776, 3257, 2786, 3297,
669  3296, 2789, 3254, 5126, 5126, 5126, 5126, 5126, 5126, 3252,
670  5126, 3251, 2506, 2758, 3250, 3249, 2801, 3247, 2594, 2813,
671 
672  2736, 2741, 3247, 2829, 5126, 2820, 3288, 2571, 2562, 2581,
673  2590, 2578, 2695, 2594, 2914, 3237, 3286, 2256, 2723, 2736,
674  2921, 0, 3245, 2843, 3258, 3251, 3250, 3270, 2853, 2844,
675  3250, 3246, 3186, 2615, 2926, 2933, 2936, 2795, 2793, 2866,
676  0, 2929, 3184, 2739, 3176, 2788, 2973, 3029, 2696, 3157,
677  5126, 0, 2716, 2831, 2778, 3084, 3151, 3110, 3131, 3105,
678  3104, 3102, 5126, 2851, 3114, 3113, 3087, 3080, 3088, 0,
679  3098, 2945, 3085, 2838, 2874, 3092, 2804, 2935, 0, 2915,
680  2968, 2927, 2926, 2853, 2844, 2800, 5126, 2861, 5126, 2790,
681  2848, 2777, 3070, 3075, 2696, 5126, 0, 0, 2688, 2579,
682 
683  2577, 2601, 2552, 2471, 2386, 2303, 5126, 2271, 2946, 2129,
684  2094, 2846, 2469, 2035, 3100, 1880, 1802, 1758, 1728, 3136,
685  3076, 2773, 2853, 1679, 1661, 1602, 1590, 1566, 1364, 3191,
686  1330, 1199, 1212, 1174, 3194, 2887, 3097, 3106, 912, 923,
687  752, 5126, 744, 2940, 3219, 614, 0, 0, 3097, 485,
688  3098, 3273, 348, 3085, 5126, 308, 155, 5126, 3255, 5126,
689  3256, 0, 75, 0, 0, 5126, 3318, 3339, 3360, 3381,
690  3402, 3423, 3444, 3465, 3486, 3507, 3528, 3541, 3561, 3582,
691  3603, 3624, 3644, 3662, 3680, 3698, 3716, 3736, 3757, 3777,
692  3188, 3193, 3797, 3818, 3833, 3845, 3866, 3887, 3908, 3929,
693 
694  3950, 3195, 3970, 3979, 4000, 4021, 4042, 4063, 4072, 4093,
695  4114, 4135, 4156, 4177, 4198, 4218, 4238, 4259, 4280, 4301,
696  4322, 3201, 4343, 4364, 4385, 4406, 4427, 4448, 4469, 4490,
697  4511, 4532, 4553, 4574, 4595, 4616, 4637, 4658, 4679, 3267,
698  4700, 4721, 4742, 4763, 4784, 4805, 4826, 4847, 4868, 4889,
699  4910, 4931, 4952, 4973, 4994, 5015, 5036, 5057, 5078, 2951,
700  5099
701  } ;
702 
704  { 0,
705  966, 966, 967, 967, 968, 968, 969, 969, 970, 970,
706  971, 971, 972, 972, 973, 973, 974, 974, 975, 975,
707  976, 976, 966, 23, 966, 25, 966, 966, 966, 29,
708  966, 966, 977, 966, 966, 978, 966, 978, 966, 966,
709  966, 979, 979, 979, 966, 45, 980, 966, 980, 981,
710  981, 966, 966, 966, 966, 982, 982, 966, 966, 966,
711  966, 966, 966, 966, 966, 966, 977, 966, 966, 966,
712  966, 966, 966, 966, 977, 966, 966, 966, 966, 983,
713  983, 984, 977, 984, 966, 966, 985, 966, 985, 966,
714  966, 966, 986, 986, 966, 966, 987, 88, 987, 966,
715 
716  966, 966, 966, 966, 988, 989, 990, 988, 988, 966,
717  966, 110, 966, 966, 966, 966, 111, 966, 977, 966,
718  977, 977, 966, 966, 117, 966, 978, 966, 127, 966,
719  966, 966, 966, 966, 991, 992, 966, 966, 966, 992,
720  992, 992, 992, 992, 992, 992, 992, 992, 992, 992,
721  992, 992, 992, 992, 992, 992, 966, 966, 993, 127,
722  966, 966, 966, 966, 979, 979, 117, 117, 979, 45,
723  979, 45, 966, 45, 980, 980, 981, 981, 966, 966,
724  982, 982, 966, 966, 966, 966, 966, 994, 995, 996,
725  996, 984, 89, 984, 89, 966, 966, 966, 966, 966,
726 
727  966, 966, 966, 89, 986, 99, 99, 966, 966, 966,
728  99, 966, 997, 966, 966, 966, 966, 966, 966, 966,
729  966, 966, 998, 966, 966, 966, 990, 966, 999, 966,
730  966, 110, 110, 966, 966, 966, 231, 966, 966, 977,
731  966, 1000, 977, 977, 977, 977, 977, 977, 977, 977,
732  977, 966, 1001, 966, 966, 966, 966, 966, 966, 966,
733  966, 966, 1002, 991, 1002, 992, 992, 992, 992, 992,
734  992, 992, 992, 992, 966, 992, 992, 992, 992, 992,
735  966, 992, 992, 992, 992, 992, 966, 992, 992, 992,
736  992, 992, 992, 992, 992, 992, 992, 992, 992, 992,
737 
738  1003, 1003, 1004, 1004, 1005, 1006, 966, 1007, 966, 966,
739  1008, 966, 966, 979, 979, 979, 1003, 1003, 966, 319,
740  966, 966, 966, 966, 966, 966, 995, 1009, 996, 996,
741  1009, 984, 966, 966, 1010, 1011, 966, 966, 966, 966,
742  986, 966, 1012, 966, 966, 1013, 966, 997, 997, 966,
743  966, 966, 966, 966, 966, 966, 966, 1014, 966, 231,
744  966, 1015, 997, 1016, 999, 966, 1016, 966, 966, 966,
745  1017, 1017, 966, 977, 966, 1018, 977, 1019, 997, 1019,
746  977, 977, 977, 977, 977, 977, 977, 1020, 966, 966,
747  966, 1021, 966, 966, 966, 966, 966, 966, 966, 1022,
748 
749  1022, 992, 992, 992, 992, 992, 992, 992, 992, 992,
750  992, 966, 1022, 992, 992, 992, 992, 992, 992, 992,
751  992, 966, 1022, 992, 992, 992, 992, 992, 992, 966,
752  1022, 992, 992, 992, 992, 992, 992, 992, 992, 992,
753  992, 992, 992, 992, 992, 1003, 1003, 966, 1003, 1004,
754  966, 966, 966, 966, 966, 1023, 997, 979, 1008, 966,
755  966, 966, 1003, 1003, 1003, 319, 966, 966, 966, 966,
756  966, 1009, 966, 1017, 1017, 966, 966, 966, 966, 966,
757  966, 966, 966, 966, 1024, 966, 966, 966, 997, 1025,
758  966, 997, 966, 966, 966, 966, 966, 966, 966, 966,
759 
760  966, 1026, 966, 966, 997, 1027, 1016, 1016, 966, 1028,
761  966, 1017, 1017, 966, 1017, 966, 1029, 977, 977, 977,
762  1019, 997, 1030, 977, 1019, 977, 977, 977, 977, 977,
763  966, 966, 1031, 966, 966, 966, 966, 966, 966, 966,
764  966, 966, 966, 966, 992, 992, 992, 992, 992, 992,
765  992, 992, 966, 992, 992, 966, 1032, 992, 992, 992,
766  992, 966, 966, 1033, 992, 992, 966, 992, 992, 992,
767  992, 966, 992, 992, 992, 992, 992, 992, 992, 992,
768  992, 992, 992, 966, 992, 1003, 966, 966, 966, 966,
769  1034, 966, 966, 997, 1035, 979, 979, 966, 966, 966,
770 
771  1003, 966, 966, 966, 966, 966, 966, 1017, 1017, 1017,
772  966, 966, 966, 966, 966, 584, 966, 966, 966, 966,
773  1036, 966, 966, 966, 966, 966, 966, 966, 966, 966,
774  966, 966, 1037, 966, 966, 966, 966, 966, 1017, 1038,
775  977, 966, 966, 1039, 977, 977, 977, 977, 977, 966,
776  966, 966, 966, 966, 966, 966, 966, 966, 992, 992,
777  992, 992, 992, 992, 553, 992, 1032, 992, 553, 992,
778  992, 1033, 992, 992, 992, 992, 992, 992, 966, 572,
779  680, 1040, 992, 680, 992, 992, 992, 992, 992, 992,
780  992, 966, 992, 966, 616, 1040, 992, 966, 966, 966,
781 
782  966, 1041, 966, 966, 966, 966, 966, 966, 966, 966,
783  1017, 966, 966, 966, 966, 966, 966, 966, 966, 966,
784  966, 997, 966, 966, 966, 966, 966, 966, 997, 966,
785  966, 966, 977, 977, 997, 977, 977, 977, 966, 966,
786  966, 966, 966, 992, 966, 966, 1042, 992, 966, 992,
787  992, 992, 992, 992, 992, 966, 992, 992, 992, 992,
788  992, 992, 992, 966, 1043, 1044, 992, 992, 992, 992,
789  992, 966, 692, 773, 1040, 992, 773, 966, 966, 966,
790  966, 997, 966, 966, 966, 966, 966, 966, 966, 966,
791  966, 966, 997, 1045, 966, 966, 997, 966, 997, 1046,
792 
793  977, 977, 966, 966, 966, 966, 1042, 992, 992, 992,
794  992, 992, 992, 992, 1043, 1047, 966, 992, 992, 992,
795  992, 1048, 966, 997, 966, 966, 966, 966, 1045, 966,
796  966, 966, 966, 977, 1046, 1045, 977, 977, 977, 966,
797  1049, 966, 966, 966, 966, 992, 966, 966, 992, 1047,
798  966, 680, 992, 992, 992, 966, 1050, 966, 966, 966,
799  966, 966, 966, 1045, 1051, 966, 1045, 966, 966, 1052,
800  977, 1046, 1045, 1053, 977, 1046, 977, 977, 1054, 966,
801  966, 966, 966, 966, 966, 992, 966, 1040, 966, 1040,
802  992, 992, 992, 992, 1050, 966, 1055, 773, 966, 966,
803 
804  966, 1056, 966, 966, 966, 966, 966, 966, 1057, 977,
805  977, 977, 977, 966, 966, 966, 966, 966, 966, 966,
806  992, 992, 992, 1055, 966, 966, 966, 966, 966, 1045,
807  966, 966, 977, 977, 1045, 977, 977, 966, 966, 966,
808  966, 966, 1040, 992, 966, 966, 1058, 1059, 1045, 966,
809  1045, 977, 966, 992, 966, 1040, 966, 966, 992, 966,
810  992, 1060, 1060, 1061, 1061, 0, 966, 966, 966, 966,
811  966, 966, 966, 966, 966, 966, 966, 966, 966, 966,
812  966, 966, 966, 966, 966, 966, 966, 966, 966, 966,
813  966, 966, 966, 966, 966, 966, 966, 966, 966, 966,
814 
815  966, 966, 966, 966, 966, 966, 966, 966, 966, 966,
816  966, 966, 966, 966, 966, 966, 966, 966, 966, 966,
817  966, 966, 966, 966, 966, 966, 966, 966, 966, 966,
818  966, 966, 966, 966, 966, 966, 966, 966, 966, 966,
819  966, 966, 966, 966, 966, 966, 966, 966, 966, 966,
820  966, 966, 966, 966, 966, 966, 966, 966, 966, 966,
821  966
822  } ;
823 
825  { 0,
826  28, 29, 30, 29, 31, 28, 32, 33, 28, 28,
827  28, 28, 34, 28, 34, 35, 28, 28, 28, 28,
828  31, 28, 36, 28, 37, 28, 28, 38, 38, 38,
829  38, 38, 38, 38, 38, 38, 38, 38, 38, 38,
830  38, 38, 38, 38, 38, 38, 38, 38, 38, 38,
831  38, 39, 40, 41, 36, 38, 28, 29, 30, 29,
832  42, 28, 32, 33, 43, 43, 43, 28, 34, 43,
833  34, 44, 28, 43, 43, 43, 42, 28, 45, 28,
834  37, 28, 43, 46, 46, 46, 46, 46, 46, 46,
835  46, 46, 46, 46, 46, 46, 46, 46, 46, 46,
836 
837  46, 46, 46, 46, 46, 46, 46, 39, 40, 41,
838  45, 46, 48, 48, 48, 48, 53, 54, 53, 54,
839  48, 48, 60, 60, 63, 63, 66, 964, 66, 537,
840  265, 67, 538, 67, 49, 49, 51, 51, 72, 55,
841  72, 55, 57, 57, 61, 61, 64, 64, 68, 72,
842  68, 72, 66, 285, 72, 265, 72, 75, 73, 369,
843  73, 66, 48, 48, 48, 48, 75, 353, 101, 298,
844  48, 48, 120, 120, 76, 69, 70, 69, 70, 102,
845  114, 115, 114, 76, 121, 116, 118, 116, 161, 161,
846  161, 179, 101, 101, 101, 122, 126, 101, 180, 265,
847 
848  101, 77, 78, 117, 102, 117, 432, 960, 102, 384,
849  77, 78, 79, 80, 81, 80, 82, 79, 79, 83,
850  84, 84, 84, 79, 79, 85, 79, 86, 79, 84,
851  84, 84, 82, 79, 87, 79, 88, 79, 84, 89,
852  89, 89, 89, 89, 89, 89, 89, 89, 89, 89,
853  89, 89, 89, 89, 89, 89, 89, 89, 89, 89,
854  89, 89, 89, 90, 91, 92, 87, 89, 79, 80,
855  81, 80, 93, 79, 79, 83, 79, 94, 94, 79,
856  79, 79, 79, 95, 79, 94, 94, 94, 96, 79,
857  97, 79, 98, 79, 79, 99, 99, 99, 99, 99,
858 
859  99, 99, 99, 99, 99, 99, 99, 99, 99, 99,
860  99, 99, 99, 99, 99, 99, 99, 99, 99, 90,
861  100, 92, 97, 99, 103, 104, 103, 105, 101, 400,
862  106, 107, 108, 108, 265, 101, 109, 101, 105, 102,
863  108, 108, 108, 105, 420, 110, 102, 111, 102, 108,
864  112, 112, 112, 112, 112, 112, 112, 112, 112, 112,
865  112, 112, 112, 112, 112, 112, 112, 112, 112, 112,
866  112, 112, 112, 112, 101, 173, 113, 110, 112, 123,
867  123, 123, 174, 127, 120, 102, 101, 128, 159, 208,
868  265, 101, 805, 124, 116, 160, 288, 102, 101, 128,
869 
870  289, 101, 125, 966, 209, 265, 164, 164, 164, 102,
871  101, 116, 117, 210, 174, 127, 130, 131, 166, 132,
872  133, 102, 966, 387, 334, 284, 134, 160, 313, 167,
873  335, 135, 136, 137, 138, 139, 120, 140, 141, 142,
874  143, 144, 145, 146, 147, 148, 136, 136, 149, 136,
875  150, 151, 152, 153, 154, 155, 136, 156, 136, 146,
876  136, 157, 158, 162, 162, 162, 164, 164, 164, 116,
877  120, 966, 120, 384, 120, 101, 101, 131, 166, 164,
878  164, 164, 131, 265, 116, 121, 163, 117, 265, 168,
879  266, 166, 267, 169, 179, 265, 122, 279, 183, 179,
880 
881  336, 184, 167, 185, 339, 268, 186, 269, 161, 161,
882  161, 120, 265, 385, 800, 113, 164, 164, 164, 165,
883  101, 157, 158, 165, 165, 165, 157, 158, 166, 353,
884  165, 286, 165, 165, 165, 165, 287, 170, 120, 168,
885  386, 171, 172, 172, 172, 172, 172, 172, 172, 172,
886  172, 172, 172, 172, 172, 172, 172, 172, 172, 172,
887  172, 172, 172, 172, 172, 172, 265, 120, 384, 170,
888  172, 103, 104, 103, 187, 116, 277, 188, 189, 265,
889  278, 116, 101, 101, 126, 187, 162, 162, 162, 966,
890  187, 265, 190, 117, 111, 116, 101, 265, 101, 116,
891 
892  966, 294, 101, 966, 126, 549, 101, 102, 287, 163,
893  384, 262, 297, 117, 220, 221, 966, 117, 160, 212,
894  212, 212, 303, 113, 190, 114, 115, 114, 187, 120,
895  342, 188, 189, 213, 328, 265, 343, 101, 113, 187,
896  215, 329, 214, 216, 187, 295, 190, 217, 111, 296,
897  160, 218, 219, 957, 303, 220, 221, 222, 224, 224,
898  224, 103, 104, 103, 187, 385, 265, 223, 114, 115,
899  114, 187, 265, 329, 223, 187, 290, 113, 190, 192,
900  187, 225, 187, 192, 192, 192, 291, 187, 101, 224,
901  224, 224, 192, 192, 192, 192, 406, 193, 966, 102,
902 
903  262, 194, 228, 228, 228, 114, 115, 114, 187, 966,
904  265, 223, 225, 240, 241, 240, 229, 584, 265, 187,
905  238, 238, 238, 187, 187, 230, 223, 242, 299, 193,
906  196, 354, 265, 966, 187, 370, 243, 966, 138, 187,
907  966, 300, 197, 239, 966, 198, 255, 255, 255, 199,
908  265, 966, 200, 292, 201, 966, 293, 256, 202, 256,
909  124, 203, 192, 315, 265, 400, 192, 192, 192, 257,
910  402, 101, 165, 159, 315, 192, 192, 192, 192, 315,
911  204, 331, 102, 309, 194, 252, 252, 252, 329, 966,
912  403, 253, 258, 966, 258, 265, 805, 258, 258, 124,
913 
914  966, 265, 301, 302, 301, 165, 265, 316, 254, 265,
915  424, 966, 204, 205, 174, 407, 309, 259, 205, 205,
916  329, 261, 101, 303, 265, 415, 205, 205, 205, 409,
917  966, 206, 261, 102, 265, 128, 966, 261, 966, 127,
918  408, 966, 215, 128, 439, 216, 174, 966, 388, 217,
919  966, 165, 262, 218, 219, 303, 124, 220, 221, 222,
920  174, 966, 309, 206, 205, 389, 164, 164, 164, 205,
921  205, 127, 308, 101, 265, 159, 265, 205, 205, 205,
922  270, 265, 211, 271, 102, 265, 128, 272, 404, 309,
923  279, 273, 174, 280, 274, 966, 275, 276, 265, 281,
924 
925  282, 427, 164, 164, 164, 265, 966, 966, 966, 283,
926  966, 966, 265, 160, 211, 224, 224, 224, 108, 966,
927  405, 265, 107, 108, 108, 309, 410, 108, 445, 108,
928  411, 108, 108, 108, 108, 371, 372, 371, 225, 418,
929  108, 224, 224, 224, 108, 160, 265, 419, 108, 108,
930  108, 265, 265, 108, 953, 231, 805, 108, 108, 108,
931  108, 559, 232, 433, 225, 426, 108, 233, 233, 233,
932  233, 233, 233, 233, 233, 233, 233, 233, 233, 233,
933  233, 233, 233, 233, 233, 233, 233, 233, 233, 233,
934  233, 398, 399, 398, 232, 233, 215, 265, 265, 216,
935 
936  234, 265, 265, 217, 301, 302, 301, 218, 219, 441,
937  663, 235, 236, 222, 120, 215, 438, 440, 216, 310,
938  310, 310, 217, 351, 966, 351, 218, 219, 351, 351,
939  220, 307, 222, 311, 265, 265, 164, 164, 164, 352,
940  244, 966, 312, 245, 164, 164, 164, 246, 547, 966,
941  314, 247, 248, 443, 265, 249, 250, 251, 265, 309,
942  345, 345, 345, 446, 447, 446, 346, 309, 317, 318,
943  317, 165, 265, 265, 213, 165, 165, 165, 442, 425,
944  165, 434, 165, 214, 165, 165, 165, 165, 354, 319,
945  569, 309, 453, 165, 320, 320, 320, 320, 320, 320,
946 
947  320, 320, 320, 320, 320, 320, 320, 320, 320, 320,
948  320, 320, 320, 320, 320, 320, 320, 320, 332, 341,
949  265, 319, 320, 190, 265, 265, 265, 966, 966, 261,
950  261, 348, 348, 348, 332, 261, 193, 206, 966, 966,
951  224, 224, 224, 552, 120, 349, 358, 421, 435, 265,
952  545, 361, 361, 361, 350, 190, 258, 362, 258, 265,
953  416, 258, 258, 225, 120, 213, 417, 428, 193, 206,
954  224, 224, 224, 108, 230, 520, 951, 108, 108, 108,
955  429, 259, 108, 265, 108, 530, 108, 108, 108, 108,
956  378, 379, 378, 225, 265, 108, 347, 363, 363, 363,
957 
958  546, 347, 347, 347, 380, 444, 265, 347, 347, 265,
959  347, 365, 347, 381, 951, 265, 436, 347, 120, 347,
960  366, 347, 351, 437, 351, 359, 265, 351, 351, 548,
961  353, 374, 375, 374, 449, 302, 449, 376, 352, 550,
962  265, 265, 252, 252, 252, 242, 526, 347, 347, 347,
963  224, 224, 224, 108, 243, 553, 124, 108, 108, 108,
964  554, 553, 108, 159, 108, 254, 108, 108, 108, 108,
965  303, 110, 494, 225, 494, 108, 112, 112, 112, 112,
966  112, 112, 112, 112, 112, 112, 112, 112, 112, 112,
967  112, 112, 112, 112, 112, 112, 112, 112, 112, 112,
968 
969  265, 265, 303, 110, 112, 238, 238, 238, 187, 265,
970  670, 223, 345, 345, 345, 265, 120, 485, 346, 187,
971  561, 555, 495, 966, 187, 213, 213, 382, 239, 382,
972  329, 551, 382, 382, 486, 214, 391, 391, 391, 393,
973  265, 393, 392, 383, 393, 393, 265, 256, 351, 256,
974  351, 313, 265, 351, 351, 394, 265, 416, 575, 257,
975  558, 950, 329, 492, 352, 492, 949, 395, 492, 492,
976  560, 396, 412, 412, 412, 412, 412, 412, 412, 412,
977  412, 412, 412, 412, 412, 412, 412, 412, 412, 412,
978  412, 412, 412, 413, 136, 412, 412, 412, 412, 136,
979 
980  136, 414, 136, 136, 136, 136, 136, 136, 136, 136,
981  136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
982  136, 136, 136, 412, 412, 412, 412, 412, 422, 422,
983  422, 422, 422, 422, 422, 422, 422, 422, 422, 422,
984  422, 422, 422, 422, 422, 422, 422, 422, 422, 423,
985  136, 422, 422, 422, 422, 136, 136, 136, 136, 136,
986  136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
987  136, 136, 136, 136, 136, 136, 136, 136, 136, 422,
988  422, 422, 422, 422, 430, 430, 430, 430, 430, 430,
989  430, 430, 430, 430, 430, 430, 430, 430, 430, 430,
990 
991  430, 430, 430, 430, 430, 431, 136, 430, 430, 430,
992  430, 136, 136, 136, 136, 136, 136, 136, 136, 136,
993  136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
994  136, 136, 136, 136, 136, 430, 430, 430, 430, 430,
995  455, 455, 455, 494, 120, 494, 456, 265, 120, 265,
996  164, 164, 164, 568, 213, 966, 474, 475, 474, 646,
997  527, 120, 527, 312, 347, 457, 457, 457, 949, 347,
998  347, 347, 529, 309, 570, 347, 347, 190, 347, 459,
999  347, 461, 462, 461, 265, 347, 966, 347, 460, 347,
1000  317, 318, 317, 495, 571, 966, 463, 464, 463, 465,
1001 
1002  318, 465, 308, 265, 309, 308, 398, 399, 398, 190,
1003  528, 966, 265, 309, 265, 347, 347, 347, 966, 309,
1004  265, 948, 309, 164, 164, 164, 165, 553, 265, 966,
1005  165, 165, 165, 947, 553, 165, 473, 165, 572, 165,
1006  165, 165, 165, 329, 319, 577, 309, 576, 165, 466,
1007  466, 466, 466, 466, 466, 466, 466, 466, 466, 466,
1008  466, 466, 466, 466, 466, 466, 466, 466, 466, 466,
1009  466, 466, 466, 265, 265, 329, 319, 466, 398, 399,
1010  398, 582, 544, 966, 544, 489, 489, 489, 585, 265,
1011  966, 490, 348, 348, 348, 687, 946, 491, 345, 345,
1012 
1013  345, 966, 533, 543, 491, 120, 349, 256, 350, 256,
1014  517, 492, 213, 492, 359, 350, 492, 492, 242, 534,
1015  265, 214, 500, 500, 500, 105, 265, 518, 106, 107,
1016  580, 857, 224, 224, 224, 543, 105, 265, 502, 581,
1017  265, 105, 505, 505, 505, 501, 213, 583, 506, 224,
1018  224, 224, 485, 265, 491, 503, 371, 372, 371, 941,
1019  213, 507, 512, 513, 512, 366, 579, 621, 358, 486,
1020  359, 578, 225, 491, 113, 347, 363, 363, 363, 225,
1021  347, 347, 347, 352, 966, 225, 347, 347, 508, 347,
1022  365, 347, 378, 379, 378, 120, 347, 940, 347, 366,
1023 
1024  347, 515, 372, 515, 524, 120, 380, 358, 521, 522,
1025  521, 489, 489, 489, 523, 381, 525, 490, 525, 120,
1026  524, 525, 525, 491, 225, 265, 347, 347, 347, 120,
1027  520, 381, 649, 265, 350, 374, 375, 374, 527, 120,
1028  527, 391, 391, 391, 541, 542, 541, 120, 939, 242,
1029  661, 666, 256, 265, 256, 556, 556, 556, 243, 265,
1030  562, 563, 562, 553, 257, 543, 564, 573, 647, 574,
1031  446, 447, 446, 265, 383, 265, 120, 265, 557, 234,
1032  265, 586, 302, 586, 586, 447, 586, 664, 528, 262,
1033  628, 629, 565, 662, 566, 265, 303, 543, 164, 164,
1034 
1035  164, 594, 594, 594, 591, 621, 602, 595, 602, 648,
1036  567, 491, 213, 491, 164, 164, 164, 673, 494, 966,
1037  494, 592, 966, 265, 460, 805, 596, 492, 303, 492,
1038  313, 265, 492, 492, 474, 475, 474, 309, 347, 457,
1039  457, 457, 659, 347, 347, 347, 489, 489, 489, 347,
1040  347, 597, 347, 459, 347, 665, 603, 265, 265, 347,
1041  265, 347, 460, 347, 598, 599, 598, 265, 495, 350,
1042  308, 600, 164, 600, 463, 464, 463, 308, 668, 660,
1043  308, 677, 601, 318, 601, 543, 669, 309, 308, 347,
1044  347, 347, 543, 265, 309, 265, 313, 309, 601, 464,
1045 
1046  601, 120, 120, 265, 308, 309, 608, 609, 608, 352,
1047  678, 643, 966, 610, 475, 610, 644, 543, 394, 966,
1048  671, 309, 524, 685, 543, 500, 500, 500, 187, 966,
1049  395, 188, 189, 119, 396, 265, 966, 938, 801, 187,
1050  265, 632, 632, 632, 187, 736, 190, 633, 501, 500,
1051  500, 500, 187, 491, 674, 223, 500, 500, 500, 187,
1052  688, 265, 223, 187, 225, 224, 224, 224, 187, 265,
1053  187, 224, 224, 224, 265, 187, 265, 113, 190, 512,
1054  513, 512, 265, 507, 744, 358, 676, 265, 225, 639,
1055  372, 639, 550, 675, 225, 358, 935, 639, 513, 639,
1056 
1057  265, 686, 225, 358, 521, 522, 521, 527, 120, 527,
1058  689, 658, 225, 658, 691, 252, 252, 252, 265, 265,
1059  225, 253, 541, 542, 541, 265, 544, 381, 544, 124,
1060  265, 935, 543, 690, 265, 123, 123, 123, 254, 556,
1061  556, 556, 692, 543, 693, 120, 120, 543, 550, 124,
1062  265, 553, 586, 447, 586, 265, 734, 528, 254, 388,
1063  265, 265, 557, 265, 543, 265, 265, 124, 265, 751,
1064  757, 738, 808, 752, 762, 543, 389, 553, 553, 543,
1065  412, 412, 412, 412, 412, 412, 412, 412, 412, 412,
1066  412, 412, 412, 412, 412, 412, 412, 412, 412, 412,
1067 
1068  412, 413, 136, 412, 412, 412, 412, 136, 136, 136,
1069  136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
1070  136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
1071  136, 412, 412, 412, 412, 412, 562, 563, 562, 164,
1072  164, 164, 564, 265, 265, 308, 701, 701, 701, 164,
1073  164, 164, 702, 265, 966, 164, 164, 164, 491, 265,
1074  966, 265, 309, 553, 750, 759, 265, 596, 265, 309,
1075  265, 265, 309, 753, 265, 763, 814, 265, 309, 754,
1076  771, 760, 573, 853, 863, 769, 567, 679, 680, 681,
1077  680, 679, 679, 679, 679, 679, 679, 679, 679, 679,
1078 
1079  679, 679, 679, 679, 679, 679, 679, 679, 682, 683,
1080  679, 684, 679, 679, 683, 683, 683, 683, 683, 683,
1081  683, 683, 683, 683, 683, 683, 683, 683, 683, 683,
1082  683, 683, 683, 683, 683, 683, 683, 683, 679, 679,
1083  679, 679, 679, 694, 694, 932, 694, 694, 694, 694,
1084  694, 694, 694, 694, 695, 694, 694, 694, 694, 694,
1085  694, 694, 694, 694, 696, 697, 694, 694, 694, 694,
1086  697, 697, 697, 697, 697, 697, 697, 697, 697, 697,
1087  697, 697, 697, 697, 697, 697, 697, 697, 697, 697,
1088  697, 697, 697, 697, 694, 694, 694, 694, 694, 598,
1089 
1090  599, 598, 705, 164, 705, 308, 265, 120, 308, 600,
1091  164, 600, 601, 464, 601, 308, 265, 602, 308, 602,
1092  543, 931, 309, 543, 767, 309, 265, 608, 609, 608,
1093  543, 265, 309, 966, 265, 309, 711, 475, 711, 265,
1094  265, 265, 966, 711, 609, 711, 765, 761, 485, 966,
1095  966, 737, 543, 485, 265, 543, 213, 768, 553, 966,
1096  553, 213, 543, 550, 770, 486, 966, 603, 694, 694,
1097  486, 120, 818, 930, 694, 694, 694, 694, 694, 694,
1098  694, 694, 694, 694, 694, 694, 694, 694, 694, 694,
1099  694, 694, 694, 694, 694, 694, 694, 694, 345, 345,
1100 
1101  345, 224, 224, 224, 346, 120, 265, 358, 361, 361,
1102  361, 937, 213, 621, 362, 265, 553, 224, 224, 224,
1103  265, 214, 213, 358, 225, 553, 639, 513, 639, 488,
1104  966, 230, 358, 345, 345, 345, 658, 265, 658, 346,
1105  225, 802, 391, 391, 391, 809, 265, 213, 392, 225,
1106  764, 819, 764, 256, 930, 256, 214, 543, 745, 746,
1107  745, 679, 966, 679, 747, 257, 265, 679, 265, 265,
1108  265, 812, 265, 162, 162, 162, 810, 265, 265, 553,
1109  455, 455, 455, 265, 679, 265, 456, 811, 265, 543,
1110  748, 820, 265, 265, 213, 677, 778, 813, 821, 265,
1111 
1112  764, 621, 265, 312, 164, 164, 164, 553, 749, 766,
1113  308, 265, 846, 553, 929, 265, 488, 120, 966, 927,
1114  847, 926, 553, 679, 679, 113, 849, 309, 871, 679,
1115  679, 679, 679, 679, 679, 679, 679, 679, 679, 679,
1116  679, 679, 679, 679, 679, 679, 679, 679, 679, 679,
1117  679, 679, 679, 772, 773, 774, 773, 772, 772, 772,
1118  772, 772, 772, 772, 772, 772, 772, 772, 772, 772,
1119  772, 772, 772, 772, 775, 776, 772, 777, 772, 772,
1120  776, 776, 776, 776, 776, 776, 776, 776, 776, 776,
1121  776, 776, 776, 776, 776, 776, 776, 776, 776, 776,
1122 
1123  776, 776, 776, 776, 772, 772, 772, 772, 772, 705,
1124  164, 705, 711, 609, 711, 308, 265, 265, 966, 162,
1125  162, 162, 489, 489, 489, 224, 224, 224, 490, 533,
1126  543, 502, 309, 925, 256, 966, 256, 265, 120, 213,
1127  848, 891, 778, 120, 265, 350, 534, 896, 503, 505,
1128  505, 505, 489, 489, 489, 506, 892, 265, 490, 829,
1129  829, 829, 543, 804, 804, 804, 854, 745, 746, 745,
1130  855, 113, 366, 747, 805, 350, 805, 772, 966, 772,
1131  838, 883, 830, 772, 884, 839, 806, 164, 164, 164,
1132  594, 594, 594, 591, 265, 120, 595, 120, 265, 265,
1133 
1134  772, 213, 632, 632, 632, 894, 120, 821, 633, 265,
1135  592, 400, 944, 460, 835, 836, 835, 749, 816, 816,
1136  816, 265, 816, 816, 816, 225, 877, 878, 816, 816,
1137  840, 840, 840, 842, 886, 842, 841, 837, 842, 842,
1138  120, 805, 920, 805, 701, 701, 701, 912, 120, 843,
1139  702, 911, 265, 806, 864, 864, 864, 867, 902, 867,
1140  865, 844, 867, 867, 866, 845, 866, 309, 816, 265,
1141  816, 822, 893, 879, 265, 966, 120, 830, 805, 921,
1142  805, 936, 400, 919, 945, 772, 772, 871, 918, 120,
1143  880, 772, 772, 772, 772, 772, 772, 772, 772, 772,
1144 
1145  772, 772, 772, 772, 772, 772, 772, 772, 772, 772,
1146  772, 772, 772, 772, 772, 816, 816, 816, 952, 816,
1147  816, 816, 856, 856, 856, 816, 816, 872, 873, 872,
1148  840, 840, 840, 874, 864, 864, 864, 120, 120, 875,
1149  865, 805, 265, 805, 843, 857, 866, 908, 120, 876,
1150  837, 876, 909, 806, 876, 876, 844, 830, 875, 934,
1151  845, 265, 913, 963, 917, 816, 963, 816, 916, 119,
1152  915, 954, 858, 887, 887, 887, 887, 887, 887, 887,
1153  887, 887, 887, 887, 887, 887, 887, 887, 887, 887,
1154  887, 887, 887, 887, 888, 136, 887, 887, 887, 887,
1155 
1156  136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
1157  136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
1158  136, 136, 136, 136, 887, 887, 887, 887, 887, 889,
1159  889, 889, 889, 889, 889, 889, 889, 889, 889, 889,
1160  889, 889, 889, 889, 889, 889, 889, 889, 889, 889,
1161  890, 136, 889, 889, 889, 889, 136, 136, 136, 136,
1162  136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
1163  136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
1164  889, 889, 889, 889, 889, 856, 856, 856, 864, 864,
1165  864, 265, 902, 872, 873, 872, 265, 265, 866, 120,
1166 
1167  120, 840, 840, 840, 902, 902, 265, 841, 857, 966,
1168  922, 830, 805, 879, 805, 906, 837, 923, 805, 553,
1169  805, 966, 966, 905, 806, 959, 863, 904, 384, 901,
1170  880, 900, 899, 898, 897, 858, 942, 942, 942, 942,
1171  942, 942, 942, 942, 942, 942, 942, 942, 942, 942,
1172  942, 942, 942, 942, 942, 942, 942, 943, 136, 942,
1173  942, 942, 942, 136, 136, 136, 136, 136, 136, 136,
1174  136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
1175  136, 136, 136, 136, 136, 136, 136, 942, 942, 942,
1176  942, 942, 864, 864, 864, 864, 864, 864, 865, 264,
1177 
1178  264, 865, 896, 264, 136, 136, 401, 401, 136, 851,
1179  401, 885, 401, 401, 882, 830, 401, 870, 830, 955,
1180  955, 955, 955, 955, 955, 955, 955, 955, 955, 955,
1181  955, 955, 955, 955, 955, 955, 955, 955, 955, 955,
1182  956, 136, 955, 955, 955, 955, 136, 136, 136, 136,
1183  136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
1184  136, 136, 136, 136, 136, 136, 136, 136, 136, 136,
1185  955, 955, 955, 955, 955, 120, 265, 265, 401, 401,
1186  869, 868, 401, 863, 862, 861, 860, 453, 852, 851,
1187  746, 256, 833, 832, 831, 827, 826, 825, 824, 824,
1188 
1189  961, 823, 265, 400, 265, 265, 746, 962, 256, 803,
1190  256, 799, 799, 798, 797, 797, 796, 384, 47, 47,
1191  47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
1192  47, 47, 47, 47, 47, 47, 47, 47, 47, 50,
1193  50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
1194  50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
1195  52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
1196  52, 52, 52, 52, 52, 52, 52, 52, 52, 52,
1197  52, 56, 56, 56, 56, 56, 56, 56, 56, 56,
1198  56, 56, 56, 56, 56, 56, 56, 56, 56, 56,
1199 
1200  56, 56, 48, 48, 48, 48, 48, 48, 48, 48,
1201  48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
1202  48, 48, 48, 59, 59, 59, 59, 59, 59, 59,
1203  59, 59, 59, 59, 59, 59, 59, 59, 59, 59,
1204  59, 59, 59, 59, 62, 62, 62, 62, 62, 62,
1205  62, 62, 62, 62, 62, 62, 62, 62, 62, 62,
1206  62, 62, 62, 62, 62, 65, 65, 65, 65, 65,
1207  65, 65, 65, 65, 65, 65, 65, 65, 65, 65,
1208  65, 65, 65, 65, 65, 65, 71, 71, 71, 71,
1209  71, 71, 71, 71, 71, 71, 71, 71, 71, 71,
1210 
1211  71, 71, 71, 71, 71, 71, 71, 74, 74, 74,
1212  74, 74, 74, 74, 74, 74, 74, 74, 74, 74,
1213  74, 74, 74, 74, 74, 74, 74, 74, 119, 119,
1214  119, 119, 119, 119, 119, 119, 119, 119, 119, 119,
1215  119, 119, 119, 119, 119, 119, 119, 119, 119, 129,
1216  795, 794, 793, 129, 129, 129, 129, 793, 792, 791,
1217  129, 129, 165, 165, 165, 165, 790, 165, 165, 165,
1218  165, 165, 765, 165, 165, 165, 165, 789, 788, 787,
1219  165, 165, 175, 175, 786, 175, 175, 175, 175, 175,
1220  175, 175, 175, 175, 175, 175, 175, 175, 175, 785,
1221 
1222  175, 175, 175, 177, 177, 784, 177, 177, 177, 177,
1223  177, 177, 177, 177, 177, 177, 177, 177, 177, 177,
1224  783, 177, 177, 177, 181, 181, 782, 181, 181, 181,
1225  181, 181, 181, 181, 181, 181, 181, 181, 181, 181,
1226  181, 782, 181, 181, 181, 191, 191, 191, 781, 191,
1227  191, 779, 191, 191, 191, 113, 191, 191, 265, 191,
1228  400, 694, 191, 191, 191, 192, 192, 265, 192, 192,
1229  192, 400, 192, 563, 192, 192, 192, 192, 758, 756,
1230  755, 192, 192, 195, 743, 742, 195, 195, 195, 741,
1231  195, 740, 195, 195, 195, 195, 256, 739, 735, 195,
1232 
1233  195, 205, 205, 735, 488, 205, 205, 732, 113, 730,
1234  205, 205, 729, 205, 729, 728, 726, 205, 205, 207,
1235  370, 369, 725, 207, 207, 724, 723, 722, 207, 207,
1236  207, 207, 722, 721, 719, 207, 207, 108, 108, 108,
1237  718, 717, 108, 108, 108, 108, 108, 716, 108, 108,
1238  108, 108, 715, 714, 713, 108, 108, 226, 226, 712,
1239  226, 226, 226, 226, 226, 226, 226, 226, 226, 226,
1240  226, 226, 226, 226, 226, 226, 226, 226, 227, 227,
1241  227, 710, 709, 227, 227, 227, 227, 227, 708, 227,
1242  227, 227, 227, 707, 706, 704, 227, 227, 304, 304,
1243 
1244  700, 698, 306, 305, 563, 657, 656, 655, 654, 304,
1245  653, 652, 304, 650, 120, 120, 304, 304, 326, 326,
1246  642, 326, 326, 326, 326, 326, 326, 326, 326, 326,
1247  326, 326, 326, 326, 326, 326, 326, 326, 326, 327,
1248  120, 640, 638, 636, 635, 327, 631, 627, 327, 626,
1249  625, 624, 327, 327, 330, 488, 623, 330, 620, 352,
1250  330, 618, 617, 616, 330, 330, 347, 347, 347, 347,
1251  347, 347, 347, 347, 347, 347, 347, 347, 347, 347,
1252  347, 347, 347, 347, 347, 347, 347, 357, 357, 615,
1253  357, 357, 357, 357, 357, 357, 357, 357, 357, 357,
1254 
1255  357, 357, 357, 357, 357, 357, 357, 357, 364, 364,
1256  364, 364, 364, 364, 364, 364, 364, 364, 364, 364,
1257  364, 364, 364, 364, 364, 364, 364, 364, 364, 377,
1258  377, 377, 377, 377, 377, 377, 377, 377, 377, 377,
1259  377, 377, 377, 377, 377, 377, 377, 377, 377, 377,
1260  390, 390, 614, 390, 390, 390, 390, 390, 390, 390,
1261  390, 390, 390, 390, 390, 390, 390, 390, 390, 390,
1262  390, 448, 448, 613, 612, 611, 607, 606, 605, 604,
1263  316, 590, 589, 588, 587, 448, 400, 400, 400, 400,
1264  448, 450, 400, 540, 450, 539, 536, 532, 450, 450,
1265 
1266  451, 451, 259, 451, 451, 451, 451, 451, 451, 451,
1267  451, 451, 451, 451, 451, 451, 451, 451, 451, 451,
1268  451, 452, 452, 120, 452, 452, 452, 452, 452, 452,
1269  452, 452, 452, 452, 452, 452, 452, 452, 452, 452,
1270  452, 452, 454, 454, 516, 454, 454, 454, 454, 454,
1271  454, 454, 454, 454, 454, 454, 454, 454, 454, 454,
1272  454, 454, 454, 458, 458, 458, 458, 458, 458, 458,
1273  458, 458, 458, 458, 458, 458, 458, 458, 458, 458,
1274  458, 458, 458, 458, 191, 511, 510, 191, 509, 498,
1275  497, 191, 191, 478, 478, 478, 478, 478, 478, 478,
1276 
1277  478, 478, 478, 478, 478, 496, 478, 478, 493, 478,
1278  478, 478, 478, 478, 430, 430, 430, 430, 430, 430,
1279  430, 430, 430, 430, 430, 430, 488, 430, 430, 484,
1280  430, 430, 430, 430, 430, 422, 422, 422, 422, 422,
1281  422, 422, 422, 422, 422, 422, 422, 483, 422, 422,
1282  482, 422, 422, 422, 422, 422, 487, 487, 481, 487,
1283  487, 487, 487, 487, 487, 487, 487, 487, 487, 487,
1284  487, 487, 487, 487, 487, 487, 487, 499, 499, 480,
1285  499, 499, 499, 499, 499, 499, 499, 499, 499, 499,
1286  499, 499, 499, 499, 499, 499, 499, 499, 504, 504,
1287 
1288  479, 504, 504, 504, 504, 504, 504, 504, 504, 504,
1289  504, 504, 504, 504, 504, 504, 504, 504, 504, 108,
1290  108, 108, 477, 476, 108, 108, 108, 108, 108, 966,
1291  108, 108, 108, 108, 472, 471, 470, 108, 108, 514,
1292  514, 469, 468, 514, 467, 173, 313, 400, 263, 400,
1293  397, 514, 373, 514, 368, 367, 108, 360, 514, 519,
1294  519, 519, 519, 519, 519, 519, 519, 519, 519, 519,
1295  519, 519, 519, 519, 519, 519, 519, 519, 519, 519,
1296  377, 377, 377, 377, 377, 377, 377, 377, 377, 377,
1297  377, 377, 377, 377, 377, 377, 377, 377, 377, 377,
1298 
1299  377, 531, 531, 359, 531, 531, 531, 531, 531, 531,
1300  531, 531, 531, 531, 531, 531, 531, 531, 531, 531,
1301  531, 531, 535, 535, 353, 535, 535, 535, 535, 535,
1302  535, 535, 535, 535, 535, 535, 535, 535, 535, 535,
1303  535, 535, 535, 593, 593, 354, 593, 593, 593, 593,
1304  593, 593, 593, 593, 593, 593, 593, 593, 593, 593,
1305  593, 593, 593, 593, 619, 619, 353, 619, 619, 619,
1306  619, 619, 619, 619, 619, 619, 619, 619, 619, 619,
1307  619, 619, 619, 619, 619, 622, 622, 356, 622, 622,
1308  622, 622, 622, 622, 622, 622, 622, 622, 622, 622,
1309 
1310  622, 622, 622, 622, 622, 622, 630, 630, 355, 630,
1311  630, 630, 630, 630, 630, 630, 630, 630, 630, 630,
1312  630, 630, 630, 630, 630, 630, 630, 634, 634, 354,
1313  634, 634, 634, 634, 634, 634, 634, 634, 634, 634,
1314  634, 634, 634, 634, 634, 634, 634, 634, 637, 637,
1315  637, 637, 637, 637, 637, 637, 637, 637, 637, 637,
1316  353, 637, 637, 353, 637, 637, 637, 637, 637, 641,
1317  641, 641, 641, 641, 641, 641, 641, 641, 641, 641,
1318  641, 641, 641, 641, 641, 641, 641, 641, 641, 641,
1319  645, 645, 645, 645, 645, 645, 645, 645, 645, 645,
1320 
1321  645, 645, 645, 645, 645, 645, 645, 645, 645, 645,
1322  645, 651, 651, 344, 651, 651, 651, 651, 651, 651,
1323  651, 651, 651, 651, 651, 651, 651, 651, 651, 651,
1324  651, 651, 667, 667, 340, 667, 667, 667, 667, 667,
1325  667, 667, 667, 667, 667, 667, 667, 667, 338, 667,
1326  667, 667, 667, 672, 672, 672, 672, 672, 672, 672,
1327  672, 672, 672, 672, 672, 672, 672, 672, 672, 672,
1328  672, 672, 672, 672, 699, 699, 337, 699, 699, 699,
1329  699, 699, 699, 699, 699, 699, 699, 699, 699, 699,
1330  699, 699, 699, 699, 699, 703, 703, 336, 703, 703,
1331 
1332  703, 703, 703, 703, 703, 703, 703, 703, 703, 703,
1333  703, 703, 703, 703, 703, 703, 720, 720, 333, 720,
1334  720, 720, 720, 720, 720, 720, 720, 720, 720, 720,
1335  720, 720, 720, 720, 720, 720, 720, 727, 727, 189,
1336  727, 727, 727, 727, 727, 727, 727, 727, 727, 727,
1337  727, 727, 727, 727, 727, 727, 727, 727, 731, 731,
1338  731, 731, 731, 731, 731, 731, 731, 731, 731, 731,
1339  325, 731, 731, 324, 731, 731, 731, 731, 731, 733,
1340  733, 733, 733, 733, 733, 733, 733, 733, 733, 733,
1341  733, 733, 733, 733, 733, 733, 733, 733, 733, 733,
1342 
1343  780, 780, 323, 780, 780, 780, 780, 780, 780, 780,
1344  780, 780, 780, 780, 780, 780, 780, 780, 780, 780,
1345  780, 807, 807, 807, 807, 807, 807, 807, 807, 807,
1346  807, 807, 807, 807, 807, 807, 807, 807, 807, 807,
1347  807, 807, 815, 815, 815, 815, 815, 815, 815, 815,
1348  815, 815, 815, 815, 815, 815, 815, 815, 815, 322,
1349  815, 815, 815, 817, 817, 321, 817, 817, 817, 817,
1350  817, 817, 817, 817, 817, 817, 817, 817, 817, 817,
1351  817, 817, 817, 817, 828, 828, 828, 828, 828, 828,
1352  828, 828, 828, 828, 828, 828, 828, 828, 828, 828,
1353 
1354  828, 828, 828, 828, 828, 834, 834, 834, 834, 834,
1355  834, 834, 834, 834, 834, 834, 834, 834, 834, 834,
1356  834, 834, 834, 834, 834, 834, 850, 850, 850, 850,
1357  850, 313, 850, 850, 850, 850, 850, 850, 850, 850,
1358  850, 850, 850, 850, 850, 850, 850, 859, 859, 306,
1359  859, 859, 859, 859, 859, 859, 859, 859, 859, 859,
1360  859, 859, 859, 859, 859, 859, 859, 859, 881, 881,
1361  305, 881, 881, 881, 881, 881, 881, 881, 881, 881,
1362  881, 881, 881, 881, 881, 881, 881, 881, 881, 895,
1363  895, 895, 895, 895, 895, 895, 895, 895, 895, 895,
1364 
1365  895, 895, 895, 895, 895, 895, 895, 895, 895, 895,
1366  903, 903, 265, 903, 903, 903, 903, 903, 903, 903,
1367  903, 903, 903, 903, 903, 903, 903, 903, 903, 903,
1368  903, 907, 907, 907, 907, 907, 907, 907, 907, 907,
1369  907, 907, 907, 263, 907, 907, 260, 907, 907, 907,
1370  907, 907, 910, 910, 910, 910, 910, 910, 910, 910,
1371  910, 910, 910, 910, 910, 910, 910, 910, 910, 910,
1372  910, 910, 910, 914, 914, 120, 914, 914, 914, 914,
1373  914, 914, 914, 914, 914, 914, 914, 914, 914, 914,
1374  914, 914, 914, 914, 924, 924, 924, 924, 924, 924,
1375 
1376  924, 924, 924, 924, 924, 924, 924, 924, 924, 924,
1377  924, 237, 924, 924, 924, 928, 928, 120, 928, 928,
1378  928, 928, 928, 928, 928, 928, 928, 928, 928, 928,
1379  928, 928, 928, 928, 928, 928, 933, 933, 933, 933,
1380  933, 933, 933, 933, 933, 933, 933, 933, 933, 933,
1381  933, 933, 933, 933, 933, 933, 933, 958, 958, 958,
1382  958, 958, 958, 958, 958, 958, 958, 958, 958, 179,
1383  958, 958, 120, 958, 958, 958, 958, 958, 955, 955,
1384  955, 955, 955, 955, 955, 955, 955, 955, 955, 955,
1385  179, 955, 955, 179, 955, 955, 955, 955, 955, 965,
1386 
1387  965, 179, 965, 965, 965, 965, 965, 965, 965, 965,
1388  965, 965, 965, 965, 965, 182, 965, 965, 965, 965,
1389  178, 176, 966, 58, 58, 27, 966, 966, 966, 966,
1390  966, 966, 966, 966, 966, 966, 966, 966, 966, 966,
1391  966, 966, 966, 966, 966, 966, 966, 966, 966, 966,
1392  966, 966, 966, 966, 966, 966, 966, 966, 966, 966,
1393  966, 966, 966, 966, 966, 966, 966, 966, 966, 966,
1394  966, 966, 966, 966, 966, 966, 966, 966, 966, 966,
1395  966, 966
1396  } ;
1397 
1399  { 0,
1400  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1401  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1402  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1403  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1404  1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1405  1, 1, 1, 1, 1, 1, 2, 2, 2, 2,
1406  2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1407  2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1408  2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1409  2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1410 
1411  2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1412  2, 2, 3, 4, 5, 6, 7, 7, 8, 8,
1413  9, 10, 13, 14, 15, 16, 17, 963, 18, 395,
1414  147, 17, 395, 18, 3, 4, 5, 6, 19, 7,
1415  20, 8, 9, 10, 13, 14, 15, 16, 17, 19,
1416  18, 20, 21, 147, 19, 155, 20, 21, 19, 235,
1417  20, 22, 3, 4, 5, 6, 22, 235, 28, 155,
1418  9, 10, 245, 33, 21, 17, 17, 18, 18, 28,
1419  30, 30, 30, 22, 33, 31, 32, 35, 39, 39,
1420  39, 55, 31, 32, 35, 33, 35, 40, 55, 288,
1421 
1422  39, 21, 21, 31, 32, 35, 288, 957, 40, 245,
1423  22, 22, 23, 23, 23, 23, 23, 23, 23, 23,
1424  23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
1425  23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
1426  23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
1427  23, 23, 23, 23, 23, 23, 23, 23, 23, 23,
1428  23, 23, 23, 23, 23, 23, 23, 23, 25, 25,
1429  25, 25, 25, 25, 25, 25, 25, 25, 25, 25,
1430  25, 25, 25, 25, 25, 25, 25, 25, 25, 25,
1431  25, 25, 25, 25, 25, 25, 25, 25, 25, 25,
1432 
1433  25, 25, 25, 25, 25, 25, 25, 25, 25, 25,
1434  25, 25, 25, 25, 25, 25, 25, 25, 25, 25,
1435  25, 25, 25, 25, 29, 29, 29, 29, 79, 956,
1436  29, 29, 29, 29, 279, 85, 29, 91, 29, 79,
1437  29, 29, 29, 29, 279, 29, 85, 29, 91, 29,
1438  29, 29, 29, 29, 29, 29, 29, 29, 29, 29,
1439  29, 29, 29, 29, 29, 29, 29, 29, 29, 29,
1440  29, 29, 29, 29, 36, 46, 29, 29, 29, 34,
1441  34, 34, 46, 36, 248, 36, 38, 36, 38, 98,
1442  149, 34, 953, 34, 82, 38, 149, 38, 100, 38,
1443 
1444  149, 82, 34, 84, 98, 145, 42, 42, 42, 100,
1445  84, 42, 82, 98, 46, 36, 37, 37, 42, 37,
1446  37, 84, 168, 248, 198, 145, 37, 38, 168, 42,
1447  198, 37, 37, 37, 37, 37, 249, 37, 37, 37,
1448  37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
1449  37, 37, 37, 37, 37, 37, 37, 37, 37, 37,
1450  37, 37, 37, 41, 41, 41, 43, 43, 43, 93,
1451  246, 43, 736, 249, 83, 41, 93, 68, 43, 44,
1452  44, 44, 76, 140, 44, 83, 41, 93, 146, 43,
1453  140, 44, 140, 44, 68, 141, 83, 146, 68, 76,
1454 
1455  202, 68, 44, 76, 202, 141, 76, 141, 90, 90,
1456  90, 247, 148, 246, 736, 41, 45, 45, 45, 45,
1457  90, 68, 68, 45, 45, 45, 76, 76, 45, 950,
1458  45, 148, 45, 45, 45, 45, 148, 45, 244, 45,
1459  247, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1460  45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
1461  45, 45, 45, 45, 45, 45, 143, 251, 244, 45,
1462  45, 80, 80, 80, 80, 86, 143, 80, 80, 152,
1463  143, 117, 86, 80, 86, 80, 92, 92, 92, 94,
1464  80, 154, 80, 86, 80, 95, 94, 406, 92, 96,
1465 
1466  129, 152, 95, 117, 95, 406, 96, 94, 154, 92,
1467  251, 129, 154, 95, 117, 117, 129, 96, 129, 101,
1468  101, 101, 303, 80, 80, 81, 81, 81, 81, 250,
1469  209, 81, 81, 101, 190, 153, 209, 81, 92, 81,
1470  102, 190, 101, 102, 81, 153, 81, 102, 81, 153,
1471  129, 102, 102, 946, 303, 102, 102, 102, 105, 105,
1472  105, 103, 103, 103, 103, 250, 150, 103, 104, 104,
1473  104, 104, 270, 190, 104, 103, 150, 81, 81, 87,
1474  103, 105, 104, 87, 87, 87, 150, 104, 87, 108,
1475  108, 108, 87, 87, 87, 87, 270, 87, 195, 87,
1476 
1477  195, 87, 109, 109, 109, 114, 114, 114, 114, 195,
1478  444, 114, 108, 121, 121, 121, 109, 444, 156, 114,
1479  115, 115, 115, 115, 114, 109, 115, 121, 156, 87,
1480  88, 236, 151, 192, 115, 236, 121, 194, 88, 115,
1481  192, 156, 88, 115, 194, 88, 124, 124, 124, 88,
1482  266, 192, 88, 151, 88, 194, 151, 124, 88, 124,
1483  124, 88, 89, 170, 267, 943, 89, 89, 89, 124,
1484  266, 89, 170, 89, 170, 89, 89, 89, 89, 170,
1485  89, 191, 89, 170, 89, 123, 123, 123, 191, 125,
1486  267, 123, 125, 205, 125, 271, 941, 125, 125, 123,
1487 
1488  205, 282, 159, 159, 159, 172, 276, 172, 123, 273,
1489  282, 205, 89, 97, 172, 271, 172, 125, 97, 97,
1490  191, 127, 97, 159, 294, 276, 97, 97, 97, 273,
1491  127, 97, 127, 97, 272, 97, 204, 127, 204, 127,
1492  272, 127, 138, 127, 294, 138, 172, 204, 252, 138,
1493  207, 174, 207, 138, 138, 159, 252, 138, 138, 138,
1494  174, 207, 174, 97, 99, 252, 164, 164, 164, 99,
1495  99, 127, 164, 99, 142, 99, 268, 99, 99, 99,
1496  142, 144, 99, 142, 99, 285, 99, 142, 268, 164,
1497  144, 142, 174, 144, 142, 160, 142, 142, 269, 144,
1498 
1499  144, 285, 165, 165, 165, 274, 160, 165, 211, 144,
1500  211, 160, 300, 160, 99, 107, 107, 107, 107, 211,
1501  269, 278, 107, 107, 107, 165, 274, 107, 300, 107,
1502  274, 107, 107, 107, 107, 237, 237, 237, 107, 278,
1503  107, 110, 110, 110, 110, 160, 284, 278, 110, 110,
1504  110, 418, 289, 110, 940, 110, 939, 110, 110, 110,
1505  110, 418, 110, 289, 110, 284, 110, 110, 110, 110,
1506  110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
1507  110, 110, 110, 110, 110, 110, 110, 110, 110, 110,
1508  110, 261, 261, 261, 110, 110, 111, 296, 295, 111,
1509 
1510  111, 551, 293, 111, 262, 262, 262, 111, 111, 296,
1511  551, 111, 111, 111, 122, 163, 293, 295, 163, 166,
1512  166, 166, 163, 214, 166, 214, 163, 163, 214, 214,
1513  163, 163, 163, 166, 404, 298, 169, 169, 169, 214,
1514  122, 169, 166, 122, 171, 171, 171, 122, 404, 171,
1515  169, 122, 122, 298, 290, 122, 122, 122, 283, 169,
1516  212, 212, 212, 301, 301, 301, 212, 171, 173, 173,
1517  173, 173, 297, 428, 212, 173, 173, 173, 297, 283,
1518  173, 290, 173, 212, 173, 173, 173, 173, 307, 173,
1519  428, 173, 307, 173, 173, 173, 173, 173, 173, 173,
1520 
1521  173, 173, 173, 173, 173, 173, 173, 173, 173, 173,
1522  173, 173, 173, 173, 173, 173, 173, 173, 193, 206,
1523  409, 173, 173, 328, 402, 280, 291, 193, 206, 193,
1524  206, 213, 213, 213, 193, 206, 193, 206, 193, 206,
1525  224, 224, 224, 409, 387, 213, 224, 280, 291, 277,
1526  402, 228, 228, 228, 213, 328, 254, 228, 254, 286,
1527  277, 254, 254, 224, 377, 228, 277, 286, 193, 206,
1528  227, 227, 227, 227, 228, 377, 934, 227, 227, 227,
1529  286, 254, 227, 299, 227, 387, 227, 227, 227, 227,
1530  242, 242, 242, 227, 403, 227, 229, 229, 229, 229,
1531 
1532  403, 229, 229, 229, 242, 299, 292, 229, 229, 405,
1533  229, 229, 229, 242, 933, 407, 292, 229, 383, 229,
1534  229, 229, 230, 292, 230, 230, 410, 230, 230, 405,
1535  932, 240, 240, 240, 302, 302, 302, 240, 230, 407,
1536  427, 411, 258, 258, 258, 240, 383, 229, 229, 229,
1537  231, 231, 231, 231, 240, 410, 258, 231, 231, 231,
1538  411, 427, 231, 304, 231, 258, 231, 231, 231, 231,
1539  304, 231, 353, 231, 353, 231, 231, 231, 231, 231,
1540  231, 231, 231, 231, 231, 231, 231, 231, 231, 231,
1541  231, 231, 231, 231, 231, 231, 231, 231, 231, 231,
1542 
1543  421, 560, 304, 231, 231, 238, 238, 238, 238, 408,
1544  560, 238, 241, 241, 241, 415, 243, 345, 241, 238,
1545  421, 415, 353, 329, 238, 345, 241, 243, 238, 243,
1546  329, 408, 243, 243, 345, 241, 255, 255, 255, 257,
1547  435, 257, 255, 243, 257, 257, 420, 255, 312, 255,
1548  312, 312, 417, 312, 312, 257, 419, 420, 435, 255,
1549  417, 931, 329, 350, 312, 350, 929, 257, 350, 350,
1550  419, 257, 275, 275, 275, 275, 275, 275, 275, 275,
1551  275, 275, 275, 275, 275, 275, 275, 275, 275, 275,
1552  275, 275, 275, 275, 275, 275, 275, 275, 275, 275,
1553 
1554  275, 275, 275, 275, 275, 275, 275, 275, 275, 275,
1555  275, 275, 275, 275, 275, 275, 275, 275, 275, 275,
1556  275, 275, 275, 275, 275, 275, 275, 275, 281, 281,
1557  281, 281, 281, 281, 281, 281, 281, 281, 281, 281,
1558  281, 281, 281, 281, 281, 281, 281, 281, 281, 281,
1559  281, 281, 281, 281, 281, 281, 281, 281, 281, 281,
1560  281, 281, 281, 281, 281, 281, 281, 281, 281, 281,
1561  281, 281, 281, 281, 281, 281, 281, 281, 281, 281,
1562  281, 281, 281, 281, 287, 287, 287, 287, 287, 287,
1563  287, 287, 287, 287, 287, 287, 287, 287, 287, 287,
1564 
1565  287, 287, 287, 287, 287, 287, 287, 287, 287, 287,
1566  287, 287, 287, 287, 287, 287, 287, 287, 287, 287,
1567  287, 287, 287, 287, 287, 287, 287, 287, 287, 287,
1568  287, 287, 287, 287, 287, 287, 287, 287, 287, 287,
1569  310, 310, 310, 354, 386, 354, 310, 425, 523, 429,
1570  314, 314, 314, 425, 310, 314, 331, 331, 331, 523,
1571  384, 384, 384, 310, 311, 311, 311, 311, 928, 311,
1572  311, 311, 386, 314, 429, 311, 311, 331, 311, 311,
1573  311, 315, 315, 315, 432, 311, 315, 311, 311, 311,
1574  316, 316, 316, 354, 432, 316, 317, 317, 317, 318,
1575 
1576  318, 318, 317, 426, 315, 318, 332, 332, 332, 331,
1577  384, 332, 414, 316, 433, 311, 311, 311, 332, 317,
1578  437, 927, 318, 319, 319, 319, 319, 426, 436, 332,
1579  319, 319, 319, 926, 414, 319, 330, 319, 433, 319,
1580  319, 319, 319, 330, 319, 437, 319, 436, 319, 319,
1581  319, 319, 319, 319, 319, 319, 319, 319, 319, 319,
1582  319, 319, 319, 319, 319, 319, 319, 319, 319, 319,
1583  319, 319, 319, 442, 445, 330, 319, 319, 341, 341,
1584  341, 442, 399, 341, 399, 348, 348, 348, 445, 575,
1585  341, 348, 349, 349, 349, 575, 925, 348, 351, 351,
1586 
1587  351, 341, 391, 399, 349, 374, 349, 391, 348, 391,
1588  374, 366, 351, 366, 366, 349, 366, 366, 374, 391,
1589  440, 351, 360, 360, 360, 360, 441, 374, 360, 360,
1590  440, 924, 361, 361, 361, 399, 360, 443, 361, 441,
1591  439, 360, 363, 363, 363, 360, 361, 443, 363, 364,
1592  364, 364, 375, 438, 363, 361, 367, 367, 367, 919,
1593  375, 364, 371, 371, 371, 363, 439, 489, 371, 375,
1594  503, 438, 364, 489, 360, 365, 365, 365, 365, 367,
1595  365, 365, 365, 503, 489, 371, 365, 365, 365, 365,
1596  365, 365, 380, 380, 380, 530, 365, 918, 365, 365,
1597 
1598  365, 372, 372, 372, 380, 381, 380, 372, 378, 378,
1599  378, 379, 379, 379, 378, 380, 381, 379, 381, 524,
1600  378, 381, 381, 379, 372, 548, 365, 365, 365, 526,
1601  524, 378, 530, 555, 379, 382, 382, 382, 385, 385,
1602  385, 393, 393, 393, 398, 398, 398, 518, 917, 382,
1603  548, 555, 393, 545, 393, 416, 416, 416, 382, 434,
1604  424, 424, 424, 545, 393, 398, 424, 434, 526, 434,
1605  446, 446, 446, 549, 518, 416, 529, 552, 416, 501,
1606  424, 447, 447, 447, 449, 449, 449, 552, 385, 450,
1607  501, 501, 424, 549, 424, 565, 450, 398, 455, 455,
1608 
1609  455, 457, 457, 457, 455, 522, 467, 457, 467, 529,
1610  424, 522, 455, 457, 458, 458, 458, 565, 494, 458,
1611  494, 455, 522, 546, 457, 916, 458, 460, 450, 460,
1612  460, 554, 460, 460, 473, 473, 473, 458, 459, 459,
1613  459, 459, 546, 459, 459, 459, 492, 492, 492, 459,
1614  459, 459, 459, 459, 459, 554, 467, 570, 558, 459,
1615  547, 459, 459, 459, 461, 461, 461, 559, 494, 492,
1616  461, 462, 462, 462, 463, 463, 463, 462, 558, 547,
1617  463, 570, 464, 464, 464, 461, 559, 461, 464, 459,
1618  459, 459, 462, 571, 462, 561, 592, 463, 465, 465,
1619 
1620  465, 737, 647, 573, 465, 464, 474, 474, 474, 592,
1621  571, 521, 474, 475, 475, 475, 521, 461, 534, 475,
1622  561, 465, 521, 573, 462, 472, 472, 472, 472, 474,
1623  534, 472, 472, 521, 534, 566, 475, 914, 737, 472,
1624  576, 505, 505, 505, 472, 647, 472, 505, 472, 498,
1625  498, 498, 498, 505, 566, 498, 500, 500, 500, 500,
1626  576, 569, 500, 498, 505, 507, 507, 507, 498, 577,
1627  500, 508, 508, 508, 568, 500, 659, 472, 472, 512,
1628  512, 512, 574, 508, 659, 512, 569, 580, 507, 513,
1629  513, 513, 577, 568, 508, 513, 911, 515, 515, 515,
1630 
1631  578, 574, 512, 515, 525, 525, 525, 527, 527, 527,
1632  578, 542, 513, 542, 580, 532, 532, 532, 581, 579,
1633  515, 532, 541, 541, 541, 583, 544, 525, 544, 532,
1634  585, 910, 542, 579, 582, 550, 550, 550, 532, 556,
1635  556, 556, 581, 541, 582, 644, 649, 544, 583, 550,
1636  748, 585, 586, 586, 586, 550, 644, 527, 550, 650,
1637  662, 668, 556, 663, 542, 675, 752, 650, 666, 662,
1638  668, 649, 748, 663, 675, 541, 650, 752, 666, 544,
1639  553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
1640  553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
1641 
1642  553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
1643  553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
1644  553, 553, 553, 553, 553, 553, 553, 553, 553, 553,
1645  553, 553, 553, 553, 553, 553, 562, 562, 562, 590,
1646  590, 590, 562, 661, 671, 590, 594, 594, 594, 596,
1647  596, 596, 594, 670, 596, 597, 597, 597, 594, 664,
1648  597, 673, 590, 670, 661, 671, 676, 597, 687, 594,
1649  762, 690, 596, 664, 691, 676, 762, 818, 597, 664,
1650  690, 673, 691, 818, 908, 687, 562, 572, 572, 572,
1651  572, 572, 572, 572, 572, 572, 572, 572, 572, 572,
1652 
1653  572, 572, 572, 572, 572, 572, 572, 572, 572, 572,
1654  572, 572, 572, 572, 572, 572, 572, 572, 572, 572,
1655  572, 572, 572, 572, 572, 572, 572, 572, 572, 572,
1656  572, 572, 572, 572, 572, 572, 572, 572, 572, 572,
1657  572, 572, 572, 584, 584, 906, 584, 584, 584, 584,
1658  584, 584, 584, 584, 584, 584, 584, 584, 584, 584,
1659  584, 584, 584, 584, 584, 584, 584, 584, 584, 584,
1660  584, 584, 584, 584, 584, 584, 584, 584, 584, 584,
1661  584, 584, 584, 584, 584, 584, 584, 584, 584, 584,
1662  584, 584, 584, 584, 584, 584, 584, 584, 584, 598,
1663 
1664  598, 598, 599, 599, 599, 598, 685, 648, 599, 600,
1665  600, 600, 601, 601, 601, 600, 678, 602, 601, 602,
1666  598, 905, 598, 599, 685, 599, 674, 608, 608, 608,
1667  600, 686, 600, 608, 770, 601, 609, 609, 609, 688,
1668  689, 753, 609, 610, 610, 610, 678, 674, 719, 610,
1669  608, 648, 598, 732, 767, 599, 719, 686, 770, 609,
1670  753, 732, 600, 689, 688, 719, 610, 602, 616, 616,
1671  732, 913, 767, 904, 616, 616, 616, 616, 616, 616,
1672  616, 616, 616, 616, 616, 616, 616, 616, 616, 616,
1673  616, 616, 616, 616, 616, 616, 616, 616, 620, 620,
1674 
1675  620, 627, 627, 627, 620, 738, 744, 627, 631, 631,
1676  631, 913, 620, 793, 631, 751, 744, 632, 632, 632,
1677  754, 620, 631, 632, 627, 751, 639, 639, 639, 632,
1678  793, 631, 639, 642, 642, 642, 658, 768, 658, 642,
1679  632, 738, 652, 652, 652, 754, 760, 642, 652, 639,
1680  677, 768, 677, 652, 903, 652, 642, 658, 660, 660,
1681  660, 684, 684, 684, 660, 652, 755, 684, 769, 757,
1682  677, 760, 761, 693, 693, 693, 755, 758, 660, 757,
1683  700, 700, 700, 809, 684, 763, 700, 758, 771, 658,
1684  660, 769, 808, 693, 700, 763, 693, 761, 771, 812,
1685 
1686  677, 799, 810, 700, 701, 701, 701, 809, 660, 680,
1687  701, 811, 808, 810, 902, 814, 701, 834, 799, 901,
1688  812, 900, 811, 680, 680, 693, 814, 701, 834, 680,
1689  680, 680, 680, 680, 680, 680, 680, 680, 680, 680,
1690  680, 680, 680, 680, 680, 680, 680, 680, 680, 680,
1691  680, 680, 680, 692, 692, 692, 692, 692, 692, 692,
1692  692, 692, 692, 692, 692, 692, 692, 692, 692, 692,
1693  692, 692, 692, 692, 692, 692, 692, 692, 692, 692,
1694  692, 692, 692, 692, 692, 692, 692, 692, 692, 692,
1695  692, 692, 692, 692, 692, 692, 692, 692, 692, 692,
1696 
1697  692, 692, 692, 692, 692, 692, 692, 692, 692, 705,
1698  705, 705, 711, 711, 711, 705, 813, 849, 711, 716,
1699  716, 716, 722, 722, 722, 726, 726, 726, 722, 739,
1700  705, 726, 705, 899, 739, 711, 739, 853, 801, 726,
1701  813, 849, 716, 802, 819, 722, 739, 895, 726, 729,
1702  729, 729, 735, 735, 735, 729, 853, 820, 735, 794,
1703  794, 794, 705, 743, 743, 743, 819, 745, 745, 745,
1704  820, 716, 729, 745, 743, 735, 743, 777, 777, 777,
1705  801, 844, 794, 777, 844, 802, 743, 779, 779, 779,
1706  782, 782, 782, 779, 922, 839, 782, 838, 892, 855,
1707 
1708  777, 779, 797, 797, 797, 855, 877, 892, 797, 846,
1709  779, 890, 922, 782, 800, 800, 800, 745, 765, 765,
1710  765, 886, 765, 765, 765, 797, 838, 839, 765, 765,
1711  804, 804, 804, 806, 846, 806, 804, 800, 806, 806,
1712  874, 804, 886, 804, 824, 824, 824, 877, 912, 806,
1713  824, 874, 854, 804, 829, 829, 829, 830, 864, 830,
1714  829, 806, 830, 830, 864, 806, 829, 824, 765, 891,
1715  765, 773, 854, 840, 923, 864, 875, 829, 840, 891,
1716  840, 912, 888, 885, 923, 773, 773, 875, 884, 936,
1717  840, 773, 773, 773, 773, 773, 773, 773, 773, 773,
1718 
1719  773, 773, 773, 773, 773, 773, 773, 773, 773, 773,
1720  773, 773, 773, 773, 773, 815, 815, 815, 936, 815,
1721  815, 815, 821, 821, 821, 815, 815, 835, 835, 835,
1722  842, 842, 842, 835, 836, 836, 836, 878, 837, 835,
1723  836, 842, 821, 842, 880, 821, 836, 872, 909, 837,
1724  835, 837, 872, 842, 837, 837, 880, 836, 872, 909,
1725  880, 944, 878, 1060, 883, 815, 1060, 815, 882, 872,
1726  881, 944, 821, 847, 847, 847, 847, 847, 847, 847,
1727  847, 847, 847, 847, 847, 847, 847, 847, 847, 847,
1728  847, 847, 847, 847, 847, 847, 847, 847, 847, 847,
1729 
1730  847, 847, 847, 847, 847, 847, 847, 847, 847, 847,
1731  847, 847, 847, 847, 847, 847, 847, 847, 847, 847,
1732  847, 847, 847, 847, 847, 847, 847, 847, 847, 848,
1733  848, 848, 848, 848, 848, 848, 848, 848, 848, 848,
1734  848, 848, 848, 848, 848, 848, 848, 848, 848, 848,
1735  848, 848, 848, 848, 848, 848, 848, 848, 848, 848,
1736  848, 848, 848, 848, 848, 848, 848, 848, 848, 848,
1737  848, 848, 848, 848, 848, 848, 848, 848, 848, 848,
1738  848, 848, 848, 848, 848, 856, 856, 856, 867, 867,
1739  867, 893, 873, 876, 876, 876, 894, 921, 873, 937,
1740 
1741  871, 915, 915, 915, 949, 951, 954, 915, 856, 873,
1742  893, 867, 915, 938, 915, 869, 876, 894, 938, 921,
1743  938, 949, 951, 868, 915, 954, 866, 865, 937, 862,
1744  938, 861, 860, 859, 858, 856, 920, 920, 920, 920,
1745  920, 920, 920, 920, 920, 920, 920, 920, 920, 920,
1746  920, 920, 920, 920, 920, 920, 920, 920, 920, 920,
1747  920, 920, 920, 920, 920, 920, 920, 920, 920, 920,
1748  920, 920, 920, 920, 920, 920, 920, 920, 920, 920,
1749  920, 920, 920, 920, 920, 920, 920, 920, 920, 920,
1750  920, 920, 930, 930, 930, 935, 935, 935, 930, 991,
1751 
1752  991, 935, 857, 991, 992, 992, 1002, 1002, 992, 850,
1753  1002, 845, 1022, 1022, 843, 930, 1022, 833, 935, 945,
1754  945, 945, 945, 945, 945, 945, 945, 945, 945, 945,
1755  945, 945, 945, 945, 945, 945, 945, 945, 945, 945,
1756  945, 945, 945, 945, 945, 945, 945, 945, 945, 945,
1757  945, 945, 945, 945, 945, 945, 945, 945, 945, 945,
1758  945, 945, 945, 945, 945, 945, 945, 945, 945, 945,
1759  945, 945, 945, 945, 945, 952, 959, 961, 1040, 1040,
1760  832, 831, 1040, 828, 827, 826, 825, 823, 817, 816,
1761  807, 803, 798, 796, 795, 792, 790, 783, 781, 780,
1762 
1763  959, 778, 776, 775, 759, 750, 747, 961, 742, 741,
1764  740, 734, 733, 730, 728, 727, 725, 952, 967, 967,
1765  967, 967, 967, 967, 967, 967, 967, 967, 967, 967,
1766  967, 967, 967, 967, 967, 967, 967, 967, 967, 968,
1767  968, 968, 968, 968, 968, 968, 968, 968, 968, 968,
1768  968, 968, 968, 968, 968, 968, 968, 968, 968, 968,
1769  969, 969, 969, 969, 969, 969, 969, 969, 969, 969,
1770  969, 969, 969, 969, 969, 969, 969, 969, 969, 969,
1771  969, 970, 970, 970, 970, 970, 970, 970, 970, 970,
1772  970, 970, 970, 970, 970, 970, 970, 970, 970, 970,
1773 
1774  970, 970, 971, 971, 971, 971, 971, 971, 971, 971,
1775  971, 971, 971, 971, 971, 971, 971, 971, 971, 971,
1776  971, 971, 971, 972, 972, 972, 972, 972, 972, 972,
1777  972, 972, 972, 972, 972, 972, 972, 972, 972, 972,
1778  972, 972, 972, 972, 973, 973, 973, 973, 973, 973,
1779  973, 973, 973, 973, 973, 973, 973, 973, 973, 973,
1780  973, 973, 973, 973, 973, 974, 974, 974, 974, 974,
1781  974, 974, 974, 974, 974, 974, 974, 974, 974, 974,
1782  974, 974, 974, 974, 974, 974, 975, 975, 975, 975,
1783  975, 975, 975, 975, 975, 975, 975, 975, 975, 975,
1784 
1785  975, 975, 975, 975, 975, 975, 975, 976, 976, 976,
1786  976, 976, 976, 976, 976, 976, 976, 976, 976, 976,
1787  976, 976, 976, 976, 976, 976, 976, 976, 977, 977,
1788  977, 977, 977, 977, 977, 977, 977, 977, 977, 977,
1789  977, 977, 977, 977, 977, 977, 977, 977, 977, 978,
1790  724, 723, 721, 978, 978, 978, 978, 720, 718, 717,
1791  978, 978, 979, 979, 979, 979, 715, 979, 979, 979,
1792  979, 979, 714, 979, 979, 979, 979, 713, 712, 710,
1793  979, 979, 980, 980, 709, 980, 980, 980, 980, 980,
1794  980, 980, 980, 980, 980, 980, 980, 980, 980, 708,
1795 
1796  980, 980, 980, 981, 981, 707, 981, 981, 981, 981,
1797  981, 981, 981, 981, 981, 981, 981, 981, 981, 981,
1798  706, 981, 981, 981, 982, 982, 704, 982, 982, 982,
1799  982, 982, 982, 982, 982, 982, 982, 982, 982, 982,
1800  982, 703, 982, 982, 982, 983, 983, 983, 702, 983,
1801  983, 699, 983, 983, 983, 698, 983, 983, 697, 983,
1802  696, 695, 983, 983, 983, 984, 984, 683, 984, 984,
1803  984, 682, 984, 672, 984, 984, 984, 984, 669, 667,
1804  665, 984, 984, 985, 657, 656, 985, 985, 985, 655,
1805  985, 654, 985, 985, 985, 985, 653, 651, 646, 985,
1806 
1807  985, 986, 986, 645, 643, 986, 986, 641, 638, 636,
1808  986, 986, 635, 986, 634, 633, 630, 986, 986, 987,
1809  629, 628, 626, 987, 987, 625, 624, 623, 987, 987,
1810  987, 987, 622, 621, 619, 987, 987, 988, 988, 988,
1811  618, 617, 988, 988, 988, 988, 988, 615, 988, 988,
1812  988, 988, 614, 613, 612, 988, 988, 989, 989, 611,
1813  989, 989, 989, 989, 989, 989, 989, 989, 989, 989,
1814  989, 989, 989, 989, 989, 989, 989, 989, 990, 990,
1815  990, 607, 606, 990, 990, 990, 990, 990, 605, 990,
1816  990, 990, 990, 604, 603, 595, 990, 990, 993, 993,
1817 
1818  593, 589, 588, 587, 564, 540, 539, 538, 537, 993,
1819  536, 535, 993, 531, 528, 520, 993, 993, 994, 994,
1820  519, 994, 994, 994, 994, 994, 994, 994, 994, 994,
1821  994, 994, 994, 994, 994, 994, 994, 994, 994, 995,
1822  517, 516, 511, 509, 506, 995, 504, 499, 995, 497,
1823  496, 493, 995, 995, 996, 491, 490, 996, 487, 486,
1824  996, 484, 483, 482, 996, 996, 997, 997, 997, 997,
1825  997, 997, 997, 997, 997, 997, 997, 997, 997, 997,
1826  997, 997, 997, 997, 997, 997, 997, 998, 998, 481,
1827  998, 998, 998, 998, 998, 998, 998, 998, 998, 998,
1828 
1829  998, 998, 998, 998, 998, 998, 998, 998, 999, 999,
1830  999, 999, 999, 999, 999, 999, 999, 999, 999, 999,
1831  999, 999, 999, 999, 999, 999, 999, 999, 999, 1000,
1832  1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000,
1833  1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000, 1000,
1834  1001, 1001, 480, 1001, 1001, 1001, 1001, 1001, 1001, 1001,
1835  1001, 1001, 1001, 1001, 1001, 1001, 1001, 1001, 1001, 1001,
1836  1001, 1003, 1003, 479, 477, 476, 471, 470, 469, 468,
1837  466, 454, 453, 452, 451, 1003, 431, 423, 413, 401,
1838  1003, 1004, 400, 397, 1004, 396, 394, 390, 1004, 1004,
1839 
1840  1005, 1005, 389, 1005, 1005, 1005, 1005, 1005, 1005, 1005,
1841  1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005, 1005,
1842  1005, 1006, 1006, 376, 1006, 1006, 1006, 1006, 1006, 1006,
1843  1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006, 1006,
1844  1006, 1006, 1007, 1007, 373, 1007, 1007, 1007, 1007, 1007,
1845  1007, 1007, 1007, 1007, 1007, 1007, 1007, 1007, 1007, 1007,
1846  1007, 1007, 1007, 1008, 1008, 1008, 1008, 1008, 1008, 1008,
1847  1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008, 1008,
1848  1008, 1008, 1008, 1008, 1009, 370, 369, 1009, 368, 357,
1849  356, 1009, 1009, 1010, 1010, 1010, 1010, 1010, 1010, 1010,
1850 
1851  1010, 1010, 1010, 1010, 1010, 355, 1010, 1010, 352, 1010,
1852  1010, 1010, 1010, 1010, 1011, 1011, 1011, 1011, 1011, 1011,
1853  1011, 1011, 1011, 1011, 1011, 1011, 347, 1011, 1011, 344,
1854  1011, 1011, 1011, 1011, 1011, 1012, 1012, 1012, 1012, 1012,
1855  1012, 1012, 1012, 1012, 1012, 1012, 1012, 342, 1012, 1012,
1856  340, 1012, 1012, 1012, 1012, 1012, 1013, 1013, 339, 1013,
1857  1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013, 1013,
1858  1013, 1013, 1013, 1013, 1013, 1013, 1013, 1014, 1014, 338,
1859  1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014,
1860  1014, 1014, 1014, 1014, 1014, 1014, 1014, 1014, 1015, 1015,
1861 
1862  337, 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015,
1863  1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1015, 1016,
1864  1016, 1016, 334, 333, 1016, 1016, 1016, 1016, 1016, 327,
1865  1016, 1016, 1016, 1016, 326, 325, 324, 1016, 1016, 1017,
1866  1017, 323, 322, 1017, 321, 320, 309, 265, 264, 263,
1867  259, 1017, 239, 1017, 234, 233, 232, 226, 1017, 1018,
1868  1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018,
1869  1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018, 1018,
1870  1019, 1019, 1019, 1019, 1019, 1019, 1019, 1019, 1019, 1019,
1871  1019, 1019, 1019, 1019, 1019, 1019, 1019, 1019, 1019, 1019,
1872 
1873  1019, 1020, 1020, 225, 1020, 1020, 1020, 1020, 1020, 1020,
1874  1020, 1020, 1020, 1020, 1020, 1020, 1020, 1020, 1020, 1020,
1875  1020, 1020, 1021, 1021, 222, 1021, 1021, 1021, 1021, 1021,
1876  1021, 1021, 1021, 1021, 1021, 1021, 1021, 1021, 1021, 1021,
1877  1021, 1021, 1021, 1023, 1023, 221, 1023, 1023, 1023, 1023,
1878  1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023,
1879  1023, 1023, 1023, 1023, 1024, 1024, 220, 1024, 1024, 1024,
1880  1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
1881  1024, 1024, 1024, 1024, 1024, 1025, 1025, 219, 1025, 1025,
1882  1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025, 1025,
1883 
1884  1025, 1025, 1025, 1025, 1025, 1025, 1026, 1026, 218, 1026,
1885  1026, 1026, 1026, 1026, 1026, 1026, 1026, 1026, 1026, 1026,
1886  1026, 1026, 1026, 1026, 1026, 1026, 1026, 1027, 1027, 217,
1887  1027, 1027, 1027, 1027, 1027, 1027, 1027, 1027, 1027, 1027,
1888  1027, 1027, 1027, 1027, 1027, 1027, 1027, 1027, 1028, 1028,
1889  1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028, 1028,
1890  216, 1028, 1028, 215, 1028, 1028, 1028, 1028, 1028, 1029,
1891  1029, 1029, 1029, 1029, 1029, 1029, 1029, 1029, 1029, 1029,
1892  1029, 1029, 1029, 1029, 1029, 1029, 1029, 1029, 1029, 1029,
1893  1030, 1030, 1030, 1030, 1030, 1030, 1030, 1030, 1030, 1030,
1894 
1895  1030, 1030, 1030, 1030, 1030, 1030, 1030, 1030, 1030, 1030,
1896  1030, 1031, 1031, 210, 1031, 1031, 1031, 1031, 1031, 1031,
1897  1031, 1031, 1031, 1031, 1031, 1031, 1031, 1031, 1031, 1031,
1898  1031, 1031, 1032, 1032, 203, 1032, 1032, 1032, 1032, 1032,
1899  1032, 1032, 1032, 1032, 1032, 1032, 1032, 1032, 201, 1032,
1900  1032, 1032, 1032, 1033, 1033, 1033, 1033, 1033, 1033, 1033,
1901  1033, 1033, 1033, 1033, 1033, 1033, 1033, 1033, 1033, 1033,
1902  1033, 1033, 1033, 1033, 1034, 1034, 200, 1034, 1034, 1034,
1903  1034, 1034, 1034, 1034, 1034, 1034, 1034, 1034, 1034, 1034,
1904  1034, 1034, 1034, 1034, 1034, 1035, 1035, 199, 1035, 1035,
1905 
1906  1035, 1035, 1035, 1035, 1035, 1035, 1035, 1035, 1035, 1035,
1907  1035, 1035, 1035, 1035, 1035, 1035, 1036, 1036, 197, 1036,
1908  1036, 1036, 1036, 1036, 1036, 1036, 1036, 1036, 1036, 1036,
1909  1036, 1036, 1036, 1036, 1036, 1036, 1036, 1037, 1037, 189,
1910  1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037,
1911  1037, 1037, 1037, 1037, 1037, 1037, 1037, 1037, 1038, 1038,
1912  1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038, 1038,
1913  186, 1038, 1038, 185, 1038, 1038, 1038, 1038, 1038, 1039,
1914  1039, 1039, 1039, 1039, 1039, 1039, 1039, 1039, 1039, 1039,
1915  1039, 1039, 1039, 1039, 1039, 1039, 1039, 1039, 1039, 1039,
1916 
1917  1041, 1041, 184, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
1918  1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
1919  1041, 1042, 1042, 1042, 1042, 1042, 1042, 1042, 1042, 1042,
1920  1042, 1042, 1042, 1042, 1042, 1042, 1042, 1042, 1042, 1042,
1921  1042, 1042, 1043, 1043, 1043, 1043, 1043, 1043, 1043, 1043,
1922  1043, 1043, 1043, 1043, 1043, 1043, 1043, 1043, 1043, 183,
1923  1043, 1043, 1043, 1044, 1044, 180, 1044, 1044, 1044, 1044,
1924  1044, 1044, 1044, 1044, 1044, 1044, 1044, 1044, 1044, 1044,
1925  1044, 1044, 1044, 1044, 1045, 1045, 1045, 1045, 1045, 1045,
1926  1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045, 1045,
1927 
1928  1045, 1045, 1045, 1045, 1045, 1046, 1046, 1046, 1046, 1046,
1929  1046, 1046, 1046, 1046, 1046, 1046, 1046, 1046, 1046, 1046,
1930  1046, 1046, 1046, 1046, 1046, 1046, 1047, 1047, 1047, 1047,
1931  1047, 167, 1047, 1047, 1047, 1047, 1047, 1047, 1047, 1047,
1932  1047, 1047, 1047, 1047, 1047, 1047, 1047, 1048, 1048, 162,
1933  1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048,
1934  1048, 1048, 1048, 1048, 1048, 1048, 1048, 1048, 1049, 1049,
1935  161, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
1936  1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1049, 1050,
1937  1050, 1050, 1050, 1050, 1050, 1050, 1050, 1050, 1050, 1050,
1938 
1939  1050, 1050, 1050, 1050, 1050, 1050, 1050, 1050, 1050, 1050,
1940  1051, 1051, 136, 1051, 1051, 1051, 1051, 1051, 1051, 1051,
1941  1051, 1051, 1051, 1051, 1051, 1051, 1051, 1051, 1051, 1051,
1942  1051, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052, 1052,
1943  1052, 1052, 1052, 135, 1052, 1052, 126, 1052, 1052, 1052,
1944  1052, 1052, 1053, 1053, 1053, 1053, 1053, 1053, 1053, 1053,
1945  1053, 1053, 1053, 1053, 1053, 1053, 1053, 1053, 1053, 1053,
1946  1053, 1053, 1053, 1054, 1054, 119, 1054, 1054, 1054, 1054,
1947  1054, 1054, 1054, 1054, 1054, 1054, 1054, 1054, 1054, 1054,
1948  1054, 1054, 1054, 1054, 1055, 1055, 1055, 1055, 1055, 1055,
1949 
1950  1055, 1055, 1055, 1055, 1055, 1055, 1055, 1055, 1055, 1055,
1951  1055, 112, 1055, 1055, 1055, 1056, 1056, 75, 1056, 1056,
1952  1056, 1056, 1056, 1056, 1056, 1056, 1056, 1056, 1056, 1056,
1953  1056, 1056, 1056, 1056, 1056, 1056, 1057, 1057, 1057, 1057,
1954  1057, 1057, 1057, 1057, 1057, 1057, 1057, 1057, 1057, 1057,
1955  1057, 1057, 1057, 1057, 1057, 1057, 1057, 1058, 1058, 1058,
1956  1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 1058, 73,
1957  1058, 1058, 67, 1058, 1058, 1058, 1058, 1058, 1059, 1059,
1958  1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059,
1959  64, 1059, 1059, 61, 1059, 1059, 1059, 1059, 1059, 1061,
1960 
1961  1061, 58, 1061, 1061, 1061, 1061, 1061, 1061, 1061, 1061,
1962  1061, 1061, 1061, 1061, 1061, 57, 1061, 1061, 1061, 1061,
1963  51, 49, 27, 12, 11, 966, 966, 966, 966, 966,
1964  966, 966, 966, 966, 966, 966, 966, 966, 966, 966,
1965  966, 966, 966, 966, 966, 966, 966, 966, 966, 966,
1966  966, 966, 966, 966, 966, 966, 966, 966, 966, 966,
1967  966, 966, 966, 966, 966, 966, 966, 966, 966, 966,
1968  966, 966, 966, 966, 966, 966, 966, 966, 966, 966,
1969  966, 966
1970  } ;
1971 
1972 extern int yy_flex_debug;
1974 
1976 static char *yy_full_match;
1977 static int yy_lp;
1979 static int yy_full_lp;
1980 static int *yy_full_state;
1981 #define YY_TRAILING_MASK 0x2000
1982 #define YY_TRAILING_HEAD_MASK 0x4000
1983 #define REJECT \
1984 { \
1985 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */ \
1986 yy_cp = (yy_full_match); /* restore poss. backed-over text */ \
1987 (yy_lp) = (yy_full_lp); /* restore orig. accepting pos. */ \
1988 (yy_state_ptr) = (yy_full_state); /* restore orig. state */ \
1989 yy_current_state = *(yy_state_ptr); /* restore curr. state */ \
1990 ++(yy_lp); \
1991 goto find_rule; \
1992 }
1993 
1994 #define yymore() yymore_used_but_not_detected
1995 #define YY_MORE_ADJ 0
1996 #define YY_RESTORE_YY_MORE_OFFSET
1997 char *yytext;
1998 #line 1 "../../../utils/lacheck/lacheck.l"
1999 /* $Id: lacheck.l 51590 2019-07-09 15:26:51Z karl $
2000  *
2001  * lacheck.lex - A consistency checker checker for LaTeX documents
2002  *
2003  * Copyright (C) 1991, 1992 Kresten Krab Thorup.
2004  * Copyright (C) 1993 --- 1998 Per Abrahamsen.
2005  * Copyright (C) 2019 Karl Berry.
2006  *
2007  * This program is free software; you can redistribute it and/or modify
2008  * it under the terms of the GNU General Public License as published by
2009  * the Free Software Foundation; either version 1, or (at your option)
2010  * any later version.
2011  *
2012  * This program is distributed in the hope that it will be useful,
2013  * but WITHOUT ANY WARRANTY; without even the implied warranty of
2014  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
2015  * GNU General Public License for more details.
2016  *
2017  * You should have received a copy of the GNU General Public License
2018  * along with this program. If not, see <https://www.gnu.org/licenses/>.
2019  *
2020  * original Revision: 1.26 $
2021  * Author : Kresten Krab Thorup
2022  * Created On : Sun May 26 18:11:58 1991
2023  *
2024  * HISTORY
2025  * 08-Jul-2019 Karl Berry
2026  * Separate patterns for \def vs. \newcommand. Report from Zayd Hammoudeh,
2027  * https://tug.org/pipermail/tex-live/2019-January/043083.html.
2028  * Update version number (now 1.29), contact info.
2029  * 07-Mar-1998 Per Abrahamsen
2030  * Added return to yywrap. Patch by Fabrice POPINEAU
2031  * <popineau@esemetz.ese-metz.fr>.
2032  * 14-Jan-1998 Per Abrahamsen
2033  * Added GPL blurp.
2034  * 27-Oct-1997 Per Abrahamsen
2035  * Count newline after newenvironment and newcommand.
2036  * 12-Jan-1996 Per Abrahamsen
2037  * \\} used not to end a group in definitions. Reported by Piet
2038  * van Oostrum <piet@cs.ruu.nl>.
2039  * 03-Jan-1995 Per Abrahamsen
2040  * Fix bug which prevented detection of multiple illegal characters
2041  * in labels. Reported by eeide@jaguar.cs.utah.edu (Eric Eide).
2042  * 30-Jul-1994 Per Abrahamsen
2043  * Define dummy yywrap so we no longer depend on `libl.a'.
2044  * 26-Apr-1994 Per Abrahamsen
2045  * Removed a few warnings, by Richard Lloyd <R.K.Lloyd@csc.liv.ac.uk>.
2046  * 23-Apr-1994 Per Abrahamsen
2047  * Changed all `%i' to `%d' for VMS portability. Reported by
2048  * Stephen Harker <PHS172M@vaxc.cc.monash.edu.au>.
2049  * 16-Feb-1994 Per Abrahamsen
2050  * Try file name with `.tex' appended before trying it bare. This
2051  * will make the case where a directory and a TeX file share the
2052  * same name work.
2053  * 19-Jan-1994 Per Abrahamsen
2054  * Comments don't imply whitespace. Pointed out by Jacco van
2055  * Ossenbruggen <jrvosse@cs.vu.nl>.
2056  * 14-Jan-1994 Per Abrahamsen
2057  * Don't complain about \ref at the beginning of a paragraph.
2058  * Suggested by Jean-Marc Lasgouttes <Jean-Marc.Lasgouttes@inria.fr>.
2059  * 11-Jan-1994 Per Abrahamsen
2060  * Added version string to usage message. Suggested by Uwe Bonnes
2061  * <bon@LTE.E-TECHNIK.uni-erlangen.de> .
2062  * 04-Jan-1994 Per Abrahamsen
2063  * Warn about newlines in \verb. Suggested by Mark Burton
2064  * <markb@ordern.demon.co.uk>. The LaTeX Book agrees (p. 168).
2065  * 10-Sep-1993 Per Abrahamsen
2066  * Removed complain about missing ~ before \cite. Requested by
2067  * Nelson H. F. Beebe <beebe@math.utah.edu>. The LaTeX Book seems
2068  * to agree.
2069  * 03-Sep-1993 Per Abrahamsen
2070  * Check for illegal characters in labels.
2071  * 16-Aug-1993 Per Abrahamsen
2072  * Recognize \endinput. Suggested by Stefan Farestam
2073  * <Stefan.Farestam@cerfacs.fr>.
2074  * 13-Aug-1993 Per Abrahamsen
2075  * } was eaten after display math. Reported by Eckhard Rüggeberg
2076  * <eckhard@ts.go.dlr.de>.
2077  * 13-Aug-1993 Per Abrahamsen
2078  * Recognize \verb*. Reported by Eckhard Rüggeberg
2079  * <eckhard@ts.go.dlr.de>.
2080  * 08-Aug-1993 Per Abrahamsen
2081  * Better catch begin and end without arguments.
2082  * 08-Aug-1993 Per Abrahamsen
2083  * Removed free(NULL) as reported by Darrel R. Hankerson
2084  * <hankedr@mail.auburn.edu>.
2085  * 08-Aug-1993 Per Abrahamsen
2086  * Removed declaration of realloc for some C compilers. Reported by
2087  * Darrel R. Hankerson <hankedr@mail.auburn.edu>
2088  * 30-Jul-1993 Per Abrahamsen
2089  * Added check for italic correction after normal text.
2090  * 29-Jul-1993 Per Abrahamsen
2091  * Added cast for (char*) malloc as suggested by John Interrante
2092  * <interran@uluru.Stanford.EDU>.
2093  * 29-Jul-1993 Per Abrahamsen
2094  * Added check for missing and extra italic correction.
2095  * 29-Jul-1993 Per Abrahamsen
2096  * Made line number counting more reliable (but it still needs a rewrite)!
2097  * 28-Jul-1993 Per Abrahamsen
2098  * Added check for italic correction before point or comma.
2099  * 6-Jun-1992 Kresten Krab Thorup
2100  * Last Modified: Sat Jun 6 16:37:44 1992 #48 (Kresten Krab Thorup)
2101  * Added test for whitespace before punctuation mark
2102  * 17-Dec-1991 (Last Mod: Tue Dec 17 21:01:24 1991 #41) Kresten Krab Thorup
2103  * Added 'word word` and missing ~ before cite and ref
2104  * 18-Jun-1991 (Last Mod: Tue Jun 18 19:20:43 1991 #17) Kresten Krab Thorup
2105  * Added check (or rather management) for \newenvironment and
2106  * \newcommand - as suggested by Per Abrahamsen abrham@hugin.dk
2107  * 30-May-1991 (Last Mod: Thu May 30 02:22:33 1991 #15) Kresten Krab Thorup
2108  * Added check for `$${punct}' and `{punct}$' constructions
2109  * 30-May-1991 (Last Mod: Wed May 29 10:31:35 1991 #6) Kresten Krab Thorup
2110  * Improved (dynamic) stack management from Andreas Stolcke ...
2111  * <stolcke@ICSI.Berkeley.EDU>
2112  * 26-May-1991 Kresten Krab Thorup
2113  * Initial distribution version.
2114  */
2115 #line 121 "../../../utils/lacheck/lacheck.l"
2116 
2117 #include <stdio.h>
2118 #include <string.h>
2119 
2120 /* #include <sys/param.h> */
2121 
2122 /* extern char *realloc(); */
2123 
2124 #ifdef NEED_STRSTR
2125 char *strstr();
2126 #endif
2127 
2128 #define GROUP_STACK_SIZE 10
2129 #define INPUT_STACK_SIZE 10
2130 
2131 #define PROGNAME "LaCheck"
2132 
2133  /* macros */
2134 
2135 #define CG_NAME gstack[gstackp-1].s_name
2136 #define CG_TYPE gstack[gstackp-1].s_type
2137 #define CG_LINE gstack[gstackp-1].s_line
2138 #define CG_ITALIC gstack[gstackp-1].italic
2139 #define CG_FILE gstack[gstackp-1].s_file
2140 
2141 void pop(void);
2142 void push(const char *p_name, int p_type, int p_line);
2143 void linecount(void);
2144 void g_checkend(int n);
2145 void e_checkend(int n, char *name);
2146 void f_checkend(char *name);
2147 void input_file(char *file_nam);
2148 void print_bad_match(char *end_command, int type);
2149 int check_top_level_end(char *end_command, int type);
2150 
2151  /* global variables */
2152 
2153 int line_count = 1;
2154 int warn_count = 0;
2157 
2158  /* the group stack */
2159 
2160 typedef struct tex_group
2161  {
2162  char *s_name;
2163  int s_type;
2164  int s_line;
2165  int italic;
2166  char *s_file;
2168 
2171 int gstackp = 0;
2172 
2173 typedef struct input_
2174  {
2176  char *name;
2177  int linenum;
2179 
2182 int istackp = 0;
2183 
2184 int def_count = 0;
2185 
2186 
2187 
2188 #line 2189 "../../../utils/lacheck/lacheck.c"
2189 
2190 #define INITIAL 0
2191 #define B_ENVIRONMENT 1
2192 #define E_ENVIRONMENT 2
2193 #define VERBATIM 3
2194 #define INCLUDE 4
2195 #define MATH 5
2196 #define COMMENT 6
2197 #define VERB 7
2198 #define DEF 8
2199 #define AFTER_DISPLAY 9
2200 #define ENV_DEF 10
2201 #define ICOR 11
2202 #define GETICOR 12
2203 
2204 #ifndef YY_NO_UNISTD_H
2205 /* Special case for "unistd.h", since it is non-ANSI. We include it way
2206  * down here because we want the user's section 1 to have been scanned first.
2207  * The user has a chance to override it with an option.
2208  */
2209 #include <unistd.h>
2210 #endif
2211 
2212 #ifndef YY_EXTRA_TYPE
2213 #define YY_EXTRA_TYPE void *
2214 #endif
2215 
2216 static int yy_init_globals (void );
2217 
2218 /* Accessor methods to globals.
2219  These are made visible to non-reentrant scanners for convenience. */
2220 
2221 int yylex_destroy (void );
2222 
2223 int yyget_debug (void );
2224 
2225 void yyset_debug (int debug_flag );
2226 
2228 
2229 void yyset_extra (YY_EXTRA_TYPE user_defined );
2230 
2231 FILE *yyget_in (void );
2232 
2233 void yyset_in (FILE * _in_str );
2234 
2235 FILE *yyget_out (void );
2236 
2237 void yyset_out (FILE * _out_str );
2238 
2239 yy_size_t yyget_leng (void );
2240 
2241 char *yyget_text (void );
2242 
2243 int yyget_lineno (void );
2244 
2245 void yyset_lineno (int _line_number );
2246 
2247 /* Macros after this point can all be overridden by user definitions in
2248  * section 1.
2249  */
2250 
2251 #ifndef YY_SKIP_YYWRAP
2252 #ifdef __cplusplus
2253 extern "C" int yywrap (void );
2254 #else
2255 extern int yywrap (void );
2256 #endif
2257 #endif
2258 
2259 #ifndef YY_NO_UNPUT
2260 
2261  static void yyunput (int c,char *buf_ptr );
2262 
2263 #endif
2264 
2265 #ifndef yytext_ptr
2266 static void yy_flex_strncpy (char *,yyconst char *,int );
2267 #endif
2268 
2269 #ifdef YY_NEED_STRLEN
2270 static int yy_flex_strlen (yyconst char * );
2271 #endif
2272 
2273 #ifndef YY_NO_INPUT
2274 
2275 #ifdef __cplusplus
2276 static int yyinput (void );
2277 #else
2278 static int input (void );
2279 #endif
2280 
2281 #endif
2282 
2283 /* Amount of stuff to slurp up with each read. */
2284 #ifndef YY_READ_BUF_SIZE
2285 #ifdef __ia64__
2286 /* On IA-64, the buffer size is 16k, not 8k */
2287 #define YY_READ_BUF_SIZE 16384
2288 #else
2289 #define YY_READ_BUF_SIZE 8192
2290 #endif /* __ia64__ */
2291 #endif
2292 
2293 /* Copy whatever the last rule matched to the standard output. */
2294 #ifndef ECHO
2295 /* This used to be an fputs(), but since the string might contain NUL's,
2296  * we now use fwrite().
2297  */
2298 #define ECHO do { if (fwrite( yytext, yyleng, 1, yyout )) {} } while (0)
2299 #endif
2300 
2301 /* Gets input and stuffs it into "buf". number of characters read, or YY_NULL,
2302  * is returned in "result".
2303  */
2304 #ifndef YY_INPUT
2305 #define YY_INPUT(buf,result,max_size) \
2306  if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \
2307  { \
2308  int c = '*'; \
2309  size_t n; \
2310  for ( n = 0; n < max_size && \
2311  (c = getc( yyin )) != EOF && c != '\n'; ++n ) \
2312  buf[n] = (char) c; \
2313  if ( c == '\n' ) \
2314  buf[n++] = (char) c; \
2315  if ( c == EOF && ferror( yyin ) ) \
2316  YY_FATAL_ERROR( "input in flex scanner failed" ); \
2317  result = n; \
2318  } \
2319  else \
2320  { \
2321  errno=0; \
2322  while ( (result = fread(buf, 1, max_size, yyin))==0 && ferror(yyin)) \
2323  { \
2324  if( errno != EINTR) \
2325  { \
2326  YY_FATAL_ERROR( "input in flex scanner failed" ); \
2327  break; \
2328  } \
2329  errno=0; \
2330  clearerr(yyin); \
2331  } \
2332  }\
2333 \
2334 
2335 #endif
2336 
2337 /* No semi-colon after return; correct usage is to write "yyterminate();" -
2338  * we don't want an extra ';' after the "return" because that will cause
2339  * some compilers to complain about unreachable statements.
2340  */
2341 #ifndef yyterminate
2342 #define yyterminate() return YY_NULL
2343 #endif
2344 
2345 /* Number of entries by which start-condition stack grows. */
2346 #ifndef YY_START_STACK_INCR
2347 #define YY_START_STACK_INCR 25
2348 #endif
2349 
2350 /* Report a fatal error. */
2351 #ifndef YY_FATAL_ERROR
2352 #define YY_FATAL_ERROR(msg) yy_fatal_error( msg )
2353 #endif
2354 
2355 /* end tables serialization structures and prototypes */
2356 
2357 /* Default declaration of generated scanner - a define so the user can
2358  * easily add parameters.
2359  */
2360 #ifndef YY_DECL
2361 #define YY_DECL_IS_OURS 1
2362 
2363 extern int yylex (void);
2364 
2365 #define YY_DECL int yylex (void)
2366 #endif /* !YY_DECL */
2367 
2368 /* Code executed at the beginning of each rule, after yytext and yyleng
2369  * have been set up.
2370  */
2371 #ifndef YY_USER_ACTION
2372 #define YY_USER_ACTION
2373 #endif
2374 
2375 /* Code executed at the end of each rule. */
2376 #ifndef YY_BREAK
2377 #define YY_BREAK /*LINTED*/break;
2378 #endif
2379 
2380 #define YY_RULE_SETUP \
2381  if ( yyleng > 0 ) \
2382  YY_CURRENT_BUFFER_LVALUE->yy_at_bol = \
2383  (yytext[yyleng - 1] == '\n'); \
2384  YY_USER_ACTION
2385 
2386 /** The main scanner function which does all the work.
2387  */
2389 {
2390  yy_state_type yy_current_state;
2391  char *yy_cp, *yy_bp;
2392  int yy_act;
2393 
2394  if ( !(yy_init) )
2395  {
2396  (yy_init) = 1;
2397 
2398 #ifdef YY_USER_INIT
2399  YY_USER_INIT;
2400 #endif
2401 
2402  /* Create the reject buffer large enough to save one state per allowed character. */
2403  if ( ! (yy_state_buf) )
2405  if ( ! (yy_state_buf) )
2406  YY_FATAL_ERROR( "out of dynamic memory in yylex()" );
2407 
2408  if ( ! (yy_start) )
2409  (yy_start) = 1; /* first start state */
2410 
2411  if ( ! yyin )
2412  yyin = stdin;
2413 
2414  if ( ! yyout )
2415  yyout = stdout;
2416 
2417  if ( ! YY_CURRENT_BUFFER ) {
2421  }
2422 
2424  }
2425 
2426  {
2427 #line 236 "../../../utils/lacheck/lacheck.l"
2428 
2429 
2430 #line 2431 "../../../utils/lacheck/lacheck.c"
2431 
2432  while ( /*CONSTCOND*/1 ) /* loops until end-of-file is reached */
2433  {
2434  yy_cp = (yy_c_buf_p);
2435 
2436  /* Support of yytext. */
2437  *yy_cp = (yy_hold_char);
2438 
2439  /* yy_bp points to the position in yy_ch_buf of the start of
2440  * the current run.
2441  */
2442  yy_bp = yy_cp;
2443 
2444  yy_current_state = (yy_start);
2445  yy_current_state += YY_AT_BOL();
2446 
2447  (yy_state_ptr) = (yy_state_buf);
2448  *(yy_state_ptr)++ = yy_current_state;
2449 
2450 yy_match:
2451  do
2452  {
2453  YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)] ;
2454  while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
2455  {
2456  yy_current_state = (int) yy_def[yy_current_state];
2457  if ( yy_current_state >= 967 )
2458  yy_c = yy_meta[(unsigned int) yy_c];
2459  }
2460  yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
2461  *(yy_state_ptr)++ = yy_current_state;
2462  ++yy_cp;
2463  }
2464  while ( yy_current_state != 966 );
2465 
2466 yy_find_action:
2467  yy_current_state = *--(yy_state_ptr);
2468  (yy_lp) = yy_accept[yy_current_state];
2469 find_rule: /* we branch to this label when backing up */
2470  for ( ; ; ) /* until we find what rule we matched */
2471  {
2472  if ( (yy_lp) && (yy_lp) < yy_accept[yy_current_state + 1] )
2473  {
2474  yy_act = yy_acclist[(yy_lp)];
2475  if ( yy_act & YY_TRAILING_HEAD_MASK ||
2477  {
2478  if ( yy_act == (yy_looking_for_trail_begin) )
2479  {
2481  yy_act &= ~~YY_TRAILING_HEAD_MASK;
2482  break;
2483  }
2484  }
2485  else if ( yy_act & YY_TRAILING_MASK )
2486  {
2489  }
2490  else
2491  {
2492  (yy_full_match) = yy_cp;
2494  (yy_full_lp) = (yy_lp);
2495  break;
2496  }
2497  ++(yy_lp);
2498  goto find_rule;
2499  }
2500  --yy_cp;
2501  yy_current_state = *--(yy_state_ptr);
2502  (yy_lp) = yy_accept[yy_current_state];
2503  }
2504 
2506 
2507 do_action: /* This label is used only to access EOF actions. */
2508 
2509  switch ( yy_act )
2510  { /* beginning of action switch */
2511 case 1:
2513 #line 238 "../../../utils/lacheck/lacheck.l"
2514 { ; }
2515  YY_BREAK
2516 case 2:
2518 #line 240 "../../../utils/lacheck/lacheck.l"
2519 { ; }
2520  YY_BREAK
2521 case 3:
2522 /* rule 3 can match eol */
2524 #line 242 "../../../utils/lacheck/lacheck.l"
2525 { line_count++; }
2526  YY_BREAK
2527 case 4:
2528 /* rule 4 can match eol */
2530 #line 244 "../../../utils/lacheck/lacheck.l"
2531 { line_count++; }
2532  YY_BREAK
2533 case 5:
2535 #line 246 "../../../utils/lacheck/lacheck.l"
2536 { ; }
2537  YY_BREAK
2538 case 6:
2540 #line 248 "../../../utils/lacheck/lacheck.l"
2541 { ; }
2542  YY_BREAK
2543 case 7:
2545 #line 250 "../../../utils/lacheck/lacheck.l"
2546 { ; }
2547  YY_BREAK
2548 case 8:
2549 /* rule 8 can match eol */
2551 #line 252 "../../../utils/lacheck/lacheck.l"
2552 {
2553  if (CG_TYPE != 4 && CG_TYPE != 5) {
2554  if (!(CG_TYPE == 2 && strstr(CG_NAME, "array"))) {
2555  printf( "\"%s\", line %d: possible unwanted space at \"{\"\n",
2556  file_name, line_count);
2557  ++warn_count ;
2558  }
2559  }
2560  push( "{", 0, line_count);
2561  linecount();
2562  }
2563  YY_BREAK
2564 case 9:
2566 #line 264 "../../../utils/lacheck/lacheck.l"
2567 { push( "{", 0, line_count);}
2568  YY_BREAK
2569 case 10:
2571 #line 266 "../../../utils/lacheck/lacheck.l"
2572 {
2573  {
2574  int italic = CG_ITALIC;
2575  g_checkend(0);
2576  if (italic && !CG_ITALIC)
2577  BEGIN(GETICOR) ;
2578  else
2579  BEGIN(INITIAL);
2580  }}
2581  YY_BREAK
2582 case 11:
2584 #line 276 "../../../utils/lacheck/lacheck.l"
2585 { g_checkend(0); }
2586  YY_BREAK
2587 case 12:
2589 #line 278 "../../../utils/lacheck/lacheck.l"
2590 {
2591  {
2592  if (!CG_ITALIC)
2593  {
2594  printf("\"%s\", line %d: you may need a \\/ before \"%s\"\n",
2596  ++warn_count;
2597  }
2598  BEGIN(INITIAL);
2599  }}
2600  YY_BREAK
2601 case 13:
2603 #line 289 "../../../utils/lacheck/lacheck.l"
2604 {
2605  {
2606  if (CG_ITALIC)
2607  {
2608  printf("\"%s\", line %d: \\/ not needed before italic text \"%s\"\n",
2610  ++warn_count;
2611  }
2612  BEGIN(INITIAL);
2613  }}
2614  YY_BREAK
2615 case 14:
2616 /* rule 14 can match eol */
2617 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
2618 YY_LINENO_REWIND_TO(yy_cp - 2);
2619 (yy_c_buf_p) = yy_cp -= 2;
2620 YY_DO_BEFORE_ACTION; /* set up yytext again */
2622 #line 300 "../../../utils/lacheck/lacheck.l"
2623 {
2624  {
2625  linecount();
2626  if (!CG_ITALIC)
2627  {
2628  printf("\"%s\", line %d: \\/ not needed after non-italic text \"%s\"\n",
2630  ++warn_count;
2631  }
2632  }}
2633  YY_BREAK
2634 case 15:
2635 /* rule 15 can match eol */
2636 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
2637 YY_LINENO_REWIND_TO(yy_cp - 2);
2638 (yy_c_buf_p) = yy_cp -= 2;
2639 YY_DO_BEFORE_ACTION; /* set up yytext again */
2641 #line 311 "../../../utils/lacheck/lacheck.l"
2642 {
2643  {
2644  linecount();
2645  if (!CG_ITALIC)
2646  {
2647  printf("\"%s\", line %d: \\/ is not needed after non-italic \"%s\"\n",
2649  ++warn_count;
2650  }
2651  }}
2652  YY_BREAK
2653 case 16:
2655 #line 322 "../../../utils/lacheck/lacheck.l"
2656 { BEGIN(INITIAL); }
2657  YY_BREAK
2658 case 17:
2660 #line 324 "../../../utils/lacheck/lacheck.l"
2661 { BEGIN(ICOR); }
2662  YY_BREAK
2663 case 18:
2665 #line 326 "../../../utils/lacheck/lacheck.l"
2666 {
2667  {
2668  printf("\"%s\", line %d: double \\/ found \"%s\"\n",
2670  ++warn_count;
2671  BEGIN(ICOR);
2672  }}
2673  YY_BREAK
2674 case 19:
2675 /* rule 19 can match eol */
2676 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
2677 YY_LINENO_REWIND_TO(yy_cp - 1);
2678 (yy_c_buf_p) = yy_cp -= 1;
2679 YY_DO_BEFORE_ACTION; /* set up yytext again */
2681 #line 334 "../../../utils/lacheck/lacheck.l"
2682 { CG_ITALIC = 1; }
2683  YY_BREAK
2684 case 20:
2685 /* rule 20 can match eol */
2686 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
2687 YY_LINENO_REWIND_TO(yy_bp + 12);
2688 (yy_c_buf_p) = yy_cp = yy_bp + 12;
2689 YY_DO_BEFORE_ACTION; /* set up yytext again */
2691 #line 336 "../../../utils/lacheck/lacheck.l"
2692 {
2693  {
2694  if(CG_ITALIC)
2695  BEGIN(GETICOR);
2696  else
2697  BEGIN(INITIAL);
2698  CG_ITALIC = 0;
2699  }}
2700  YY_BREAK
2701 case 21:
2702 /* rule 21 can match eol */
2703 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
2704 YY_LINENO_REWIND_TO(yy_bp + 12);
2705 (yy_c_buf_p) = yy_cp = yy_bp + 12;
2706 YY_DO_BEFORE_ACTION; /* set up yytext again */
2708 #line 345 "../../../utils/lacheck/lacheck.l"
2709 { CG_ITALIC = 0; }
2710  YY_BREAK
2711 case 22:
2712 /* rule 22 can match eol */
2713 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
2714 YY_LINENO_REWIND_TO(yy_bp + 3);
2715 (yy_c_buf_p) = yy_cp = yy_bp + 3;
2716 YY_DO_BEFORE_ACTION; /* set up yytext again */
2718 #line 347 "../../../utils/lacheck/lacheck.l"
2719 {
2720  {
2721  if(CG_ITALIC)
2722  BEGIN(GETICOR);
2723  else
2724  BEGIN(INITIAL);
2725  CG_ITALIC = !CG_ITALIC;
2726  }}
2727  YY_BREAK
2728 case 23:
2729 /* rule 23 can match eol */
2730 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
2731 YY_LINENO_REWIND_TO(yy_bp + 3);
2732 (yy_c_buf_p) = yy_cp = yy_bp + 3;
2733 YY_DO_BEFORE_ACTION; /* set up yytext again */
2735 #line 356 "../../../utils/lacheck/lacheck.l"
2736 { CG_ITALIC = !CG_ITALIC; }
2737  YY_BREAK
2738 case 24:
2740 #line 358 "../../../utils/lacheck/lacheck.l"
2741 {
2742  {
2743  printf("\"%s\", line %d: do not use \\/ before \"%s\"\n",
2745  ++warn_count;
2746  BEGIN(INITIAL);
2747  }}
2748  YY_BREAK
2749 case 25:
2750 /* rule 25 can match eol */
2752 #line 366 "../../../utils/lacheck/lacheck.l"
2753 { ; }
2754  YY_BREAK
2755 case 26:
2757 #line 368 "../../../utils/lacheck/lacheck.l"
2758 { ; }
2759  YY_BREAK
2760 case 27:
2762 #line 370 "../../../utils/lacheck/lacheck.l"
2763 {
2764  {
2765  unput(yytext[0]);
2766  BEGIN(INITIAL);
2767  }}
2768  YY_BREAK
2769 /* \def can be followed by whitespace, then the \ to start the control
2770  sequence, then more or less anything up to the { starting the
2771  replacement text, which we assume is on the same line. (All this
2772  could be changed in TeX, with catcodes etc., but we can't try to
2773  handle that.) */
2774 case 28:
2775 /* rule 28 can match eol */
2777 #line 381 "../../../utils/lacheck/lacheck.l"
2778 BEGIN(DEF);
2779  YY_BREAK
2780 /* \newcommand{\foo}{...} or \newcommand\foo{...}
2781  (or \renewcommand or \providecommand).
2782  To allow for arbitrary control sequence names, we match
2783  the braced name as anything not containing a }.
2784  To handle optional argument specifications, we assume the { is on
2785  the same line as the csname.
2786  We don't do anything with the definitions; the only purpose is to
2787  count braces. */
2788 case 29:
2789 /* rule 29 can match eol */
2791 #line 391 "../../../utils/lacheck/lacheck.l"
2792 BEGIN(DEF);
2793  YY_BREAK
2794 /* Pre-2019 rule was (see test-def.tex):
2795  "\\"[exg]?(def|newcommand)[^\n\{]+ BEGIN(DEF);
2796  */
2797 case 30:
2799 #line 397 "../../../utils/lacheck/lacheck.l"
2800 { ++def_count; }
2801  YY_BREAK
2802 case 31:
2804 #line 399 "../../../utils/lacheck/lacheck.l"
2805 { --def_count;
2806  if(def_count == 0)
2807  BEGIN(INITIAL); }
2808  YY_BREAK
2809 case 32:
2811 #line 403 "../../../utils/lacheck/lacheck.l"
2812 { ; }
2813  YY_BREAK
2814 case 33:
2816 #line 405 "../../../utils/lacheck/lacheck.l"
2817 BEGIN(ENV_DEF);
2818  YY_BREAK
2819 case 34:
2821 #line 407 "../../../utils/lacheck/lacheck.l"
2822 { ++def_count; }
2823  YY_BREAK
2824 case 35:
2826 #line 409 "../../../utils/lacheck/lacheck.l"
2827 { --def_count;
2828  if(def_count == 0)
2829  BEGIN(DEF); }
2830  YY_BREAK
2831 case 36:
2833 #line 413 "../../../utils/lacheck/lacheck.l"
2834 { ; }
2835  YY_BREAK
2836 case 37:
2838 #line 415 "../../../utils/lacheck/lacheck.l"
2839 {
2840  if(CG_TYPE == 4 || CG_TYPE == 5)
2842  else
2843  {
2844  push( yytext, 4, line_count);
2845  }}
2846  YY_BREAK
2847 case 38:
2849 #line 423 "../../../utils/lacheck/lacheck.l"
2850 { g_checkend(4); }
2851  YY_BREAK
2852 case 39:
2854 #line 425 "../../../utils/lacheck/lacheck.l"
2855 {
2856  if(CG_TYPE == 4 || CG_TYPE == 5)
2858  else
2859  {
2860  push( yytext, 5, line_count);
2861  }}
2862  YY_BREAK
2863 case 40:
2865 #line 434 "../../../utils/lacheck/lacheck.l"
2867  YY_BREAK
2868 case 41:
2870 #line 436 "../../../utils/lacheck/lacheck.l"
2871 {
2872 
2873  printf( "\"%s\", line %d: punctuation mark \"%s\" should be placed before end of displaymath\n",
2875  ++warn_count ;
2876 
2877  BEGIN(INITIAL); }
2878  YY_BREAK
2879 case 42:
2880 /* rule 42 can match eol */
2882 #line 444 "../../../utils/lacheck/lacheck.l"
2883 { unput(yytext[0]); BEGIN(INITIAL); }
2884  YY_BREAK
2885 case 43:
2886 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
2887 (yy_c_buf_p) = yy_cp = yy_bp + 1;
2888 YY_DO_BEFORE_ACTION; /* set up yytext again */
2890 #line 446 "../../../utils/lacheck/lacheck.l"
2891 { if (CG_TYPE == 4)
2892  {
2893  printf( "\"%s\", line %d: punctuation mark \"%s\" should be placed after end of math mode\n",
2895  ++warn_count ;
2896  BEGIN(INITIAL);
2897  }}
2898  YY_BREAK
2899 case 44:
2901 #line 454 "../../../utils/lacheck/lacheck.l"
2902 {
2903 
2904  if(CG_TYPE == 5)
2905  print_bad_match(yytext, 4);
2906  else
2907 
2908  if(CG_TYPE == 4)
2909  {
2910  e_checkend(4, yytext);
2911  }
2912  else
2913  {
2914  push( yytext, 4, line_count);
2915  }}
2916  YY_BREAK
2917 case 45:
2919 #line 470 "../../../utils/lacheck/lacheck.l"
2920 {
2921 
2922  if(CG_TYPE == 4)
2924  else
2925 
2926  if(CG_TYPE == 5)
2927  {
2928  e_checkend(5, yytext);
2930  }
2931  else
2932  {
2933  push( yytext, 5, line_count);
2934  }}
2935  YY_BREAK
2936 case 46:
2937 /* rule 46 can match eol */
2938 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
2939 YY_LINENO_REWIND_TO(yy_bp + 11);
2940 (yy_c_buf_p) = yy_cp = yy_bp + 11;
2941 YY_DO_BEFORE_ACTION; /* set up yytext again */
2943 #line 486 "../../../utils/lacheck/lacheck.l"
2944 {
2945  {
2946  push("\\begingroup", 1, line_count);
2947  }}
2948  YY_BREAK
2949 case 47:
2950 /* rule 47 can match eol */
2951 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
2952 YY_LINENO_REWIND_TO(yy_bp + 9);
2953 (yy_c_buf_p) = yy_cp = yy_bp + 9;
2954 YY_DO_BEFORE_ACTION; /* set up yytext again */
2956 #line 492 "../../../utils/lacheck/lacheck.l"
2957 {
2958  {
2959  g_checkend(1);
2960  }}
2961  YY_BREAK
2962 case 48:
2964 #line 498 "../../../utils/lacheck/lacheck.l"
2965 { BEGIN(B_ENVIRONMENT); }
2966  YY_BREAK
2967 case 49:
2968 /* rule 49 can match eol */
2969 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
2970 YY_LINENO_REWIND_TO(yy_cp - 1);
2971 (yy_c_buf_p) = yy_cp -= 1;
2972 YY_DO_BEFORE_ACTION; /* set up yytext again */
2974 #line 500 "../../../utils/lacheck/lacheck.l"
2975 {
2976  {
2977 
2978  printf("\"%s\", line %d: {argument} missing for \\begin\n",
2979  file_name, line_count) ;
2980  ++warn_count;
2981  }}
2982  YY_BREAK
2983 case 50:
2985 #line 508 "../../../utils/lacheck/lacheck.l"
2986 {
2987  {
2988  if (strcmp( yytext, "verbatim" ) == 0 )
2989  {
2990  input();
2991  BEGIN(VERBATIM);
2992  }
2993  else
2994  {
2995  push(yytext, 2, line_count);
2996 
2997  if ( strcmp (yytext, "sl" ) == 0
2998  || strcmp (yytext, "it" ) == 0)
2999  CG_ITALIC = 1;
3000  else if (strcmp (yytext, "normalshape") == 0)
3001  CG_ITALIC = 0;
3002  else if (strcmp (yytext, "em") == 0)
3003  CG_ITALIC = !CG_ITALIC;
3004 
3005  input();
3006  BEGIN(INITIAL);
3007  }
3008  }}
3009  YY_BREAK
3010 case 51:
3012 #line 532 "../../../utils/lacheck/lacheck.l"
3013 { BEGIN(INITIAL); }
3014  YY_BREAK
3015 case 52:
3017 #line 534 "../../../utils/lacheck/lacheck.l"
3018 {
3019  printf("\"%s\", line %d: TAB character in verbatim environment\n",
3020  file_name, line_count) ;
3021  ++warn_count;
3022  }
3023  YY_BREAK
3024 case 53:
3026 #line 540 "../../../utils/lacheck/lacheck.l"
3027 { ; }
3028  YY_BREAK
3029 case 54:
3030 /* rule 54 can match eol */
3032 #line 542 "../../../utils/lacheck/lacheck.l"
3033 { ++line_count; }
3034  YY_BREAK
3035 case 55:
3037 #line 545 "../../../utils/lacheck/lacheck.l"
3038 {
3039  verb_char = yytext[yyleng-1];
3040  BEGIN(VERB);
3041  }
3042  YY_BREAK
3043 case 56:
3044 /* rule 56 can match eol */
3046 #line 550 "../../../utils/lacheck/lacheck.l"
3047 {
3048  printf("\"%s\", line %d: \\verb should not contain end of line characters\n",
3049  file_name, line_count) ;
3050  ++line_count;
3051 }
3052  YY_BREAK
3053 case 57:
3055 #line 556 "../../../utils/lacheck/lacheck.l"
3056 {
3057  if ( *yytext == verb_char )
3058  BEGIN(INITIAL);
3059 }
3060  YY_BREAK
3061 case 58:
3063 #line 562 "../../../utils/lacheck/lacheck.l"
3064 { BEGIN(E_ENVIRONMENT); }
3065  YY_BREAK
3066 case 59:
3067 /* rule 59 can match eol */
3068 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
3069 YY_LINENO_REWIND_TO(yy_cp - 1);
3070 (yy_c_buf_p) = yy_cp -= 1;
3071 YY_DO_BEFORE_ACTION; /* set up yytext again */
3073 #line 564 "../../../utils/lacheck/lacheck.l"
3074 {
3075  {
3076  printf("\"%s\", line %d: {argument} missing for \\end\n",
3077  file_name, line_count) ;
3078  ++warn_count;
3079  }}
3080  YY_BREAK
3081 case 60:
3083 #line 572 "../../../utils/lacheck/lacheck.l"
3084 {
3085  {
3086  e_checkend(2, yytext);
3087  input();
3088 
3089  BEGIN(INITIAL);
3090  }}
3091  YY_BREAK
3092 case 61:
3093 /* rule 61 can match eol */
3095 #line 581 "../../../utils/lacheck/lacheck.l"
3096 {
3097  {
3098  linecount();
3099  printf( "\"%s\", line %d: missing `\\ ' after \"%s\"\n",
3100  file_name, line_count, ++yytext);
3101  ++warn_count ;
3102  BEGIN(INITIAL);
3103  }}
3104  YY_BREAK
3105 case 62:
3106 /* rule 62 can match eol */
3108 #line 590 "../../../utils/lacheck/lacheck.l"
3109 {
3110  {
3111  printf( "\"%s\", line %d: missing `\\ ' after \"%s\"\n",
3113  ++warn_count ;
3114  BEGIN(INITIAL);
3115  }}
3116  YY_BREAK
3117 case 63:
3118 /* rule 63 can match eol */
3120 #line 598 "../../../utils/lacheck/lacheck.l"
3121 {
3122  {
3123  linecount();
3124  printf("\"%s\", line %d: missing `\\@' before `.' in \"%s\"\n",
3126  ++warn_count ;
3127  BEGIN(INITIAL);
3128  }}
3129  YY_BREAK
3130 case 64:
3131 /* rule 64 can match eol */
3133 #line 607 "../../../utils/lacheck/lacheck.l"
3134 {
3135 
3136  printf("\"%s\", line %d: double space at \"%s\"\n",
3138  ++warn_count;
3139  linecount();
3140  BEGIN(INITIAL);
3141  }
3142  YY_BREAK
3143 case 65:
3144 /* rule 65 can match eol */
3146 #line 616 "../../../utils/lacheck/lacheck.l"
3147 {
3148  printf("\"%s\", line %d: \\ldots should be \\cdots in \"%s\"\n",
3150  ++warn_count;
3151  linecount();
3152  }
3153  YY_BREAK
3154 case 66:
3155 /* rule 66 can match eol */
3157 #line 623 "../../../utils/lacheck/lacheck.l"
3158 {
3159  printf("\"%s\", line %d: \\cdots should be \\ldots in \"%s\"\n",
3161  ++warn_count;
3162  linecount();
3163  BEGIN(INITIAL);
3164  }
3165  YY_BREAK
3166 case 67:
3167 /* rule 67 can match eol */
3169 #line 631 "../../../utils/lacheck/lacheck.l"
3170 {
3171  printf("\"%s\", line %d: Dots should be \\cdots in \"%s\"\n",
3173  ++warn_count;
3174  linecount();
3175  }
3176  YY_BREAK
3177 case 68:
3178 /* rule 68 can match eol */
3180 #line 638 "../../../utils/lacheck/lacheck.l"
3181 {
3182  printf("\"%s\", line %d: Dots should be \\ldots in \"%s\"\n",
3184  ++warn_count;
3185  linecount();
3186  BEGIN(INITIAL);
3187  }
3188  YY_BREAK
3189 case 69:
3191 #line 647 "../../../utils/lacheck/lacheck.l"
3192 {
3193  printf("\"%s\", line %d: Dots should be ellipsis \"%s\"\n",
3195  ++warn_count;
3196  BEGIN(INITIAL);
3197  }
3198  YY_BREAK
3199 case 70:
3200 /* rule 70 can match eol */
3202 #line 654 "../../../utils/lacheck/lacheck.l"
3203 {
3204  linecount();
3205  printf("\"%s\", line %d: bad character in label \"%s\", see C.10.2\n",
3207  }
3208  YY_BREAK
3209 case 71:
3210 /* rule 71 can match eol */
3211 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
3212 YY_LINENO_REWIND_TO(yy_cp - 1);
3213 (yy_c_buf_p) = yy_cp -= 1;
3214 YY_DO_BEFORE_ACTION; /* set up yytext again */
3216 #line 660 "../../../utils/lacheck/lacheck.l"
3217 {
3218  linecount();
3219  BEGIN(INITIAL);
3220  }
3221  YY_BREAK
3222 case 72:
3223 /* rule 72 can match eol */
3224 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
3225 YY_LINENO_REWIND_TO(yy_cp - 1);
3226 (yy_c_buf_p) = yy_cp -= 1;
3227 YY_DO_BEFORE_ACTION; /* set up yytext again */
3229 #line 665 "../../../utils/lacheck/lacheck.l"
3230 {
3231  linecount();
3232  printf("\"%s\", line %d: perhaps you should insert a `~' before \"%s\"\n",
3233  file_name, line_count, ++yytext);
3234  BEGIN(INITIAL);
3235  }
3236  YY_BREAK
3237 case 73:
3238 /* rule 73 can match eol */
3239 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
3240 YY_LINENO_REWIND_TO(yy_cp - 1);
3241 (yy_c_buf_p) = yy_cp -= 1;
3242 YY_DO_BEFORE_ACTION; /* set up yytext again */
3244 #line 672 "../../../utils/lacheck/lacheck.l"
3245 {
3246  linecount();
3247  printf("\"%s\", line %d: whitespace before footnote in \"%s\"\n",
3248  file_name, line_count, ++yytext);
3249  BEGIN(INITIAL);
3250  }
3251  YY_BREAK
3252 case 74:
3253 /* rule 74 can match eol */
3254 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
3255 YY_LINENO_REWIND_TO(yy_cp - 1);
3256 (yy_c_buf_p) = yy_cp -= 1;
3257 YY_DO_BEFORE_ACTION; /* set up yytext again */
3259 #line 680 "../../../utils/lacheck/lacheck.l"
3260 {
3261  {
3262  printf("\"%s\", line %d: Don't use \"%s\" in LaTeX documents\n",
3264  ++warn_count ;
3265  }}
3266  YY_BREAK
3267 case 75:
3268 /* rule 75 can match eol */
3270 #line 687 "../../../utils/lacheck/lacheck.l"
3271 { linecount() ;}
3272  YY_BREAK
3273 case 76:
3274 /* rule 76 can match eol */
3276 #line 688 "../../../utils/lacheck/lacheck.l"
3277 { linecount(); }
3278  YY_BREAK
3279 case 77:
3280 /* rule 77 can match eol */
3282 #line 690 "../../../utils/lacheck/lacheck.l"
3283 {
3284  {
3285  linecount();
3286  printf("\"%s\", line %d: Fontspecifiers don't take arguments. \"%s\"\n",
3288  ++warn_count;
3289  /* (void) input(); */
3290  BEGIN(INITIAL);
3291  }}
3292  YY_BREAK
3293 case 78:
3295 #line 700 "../../../utils/lacheck/lacheck.l"
3296 {
3297  {
3298  printf("\"%s\", line %d: Do not use @ in LaTeX macro names. \"%s\"\n",
3300  ++warn_count;
3301  }}
3302  YY_BREAK
3303 case 79:
3304 /* rule 79 can match eol */
3306 #line 707 "../../../utils/lacheck/lacheck.l"
3307 {
3308  {
3309  linecount();
3310  printf("\"%s\", line %d: Use ` to begin quotation, not ' \"%s\"\n",
3312  ++warn_count;
3313  BEGIN(INITIAL);
3314  }}
3315  YY_BREAK
3316 case 80:
3318 #line 716 "../../../utils/lacheck/lacheck.l"
3319 {
3320  {
3321  printf("\"%s\", line %d: Use ' to end quotation, not ` \"%s\"\n",
3323  ++warn_count;
3324  BEGIN(INITIAL);
3325  }}
3326  YY_BREAK
3327 case 81:
3328 /* rule 81 can match eol */
3330 #line 725 "../../../utils/lacheck/lacheck.l"
3331 {
3332  {
3333  printf("\"%s\", line %d: Whitespace before punctation mark in \"%s\"\n",
3335  ++warn_count;
3336  linecount();
3337  BEGIN(INITIAL);
3338  }}
3339  YY_BREAK
3340 case 82:
3342 #line 734 "../../../utils/lacheck/lacheck.l"
3343 { BEGIN(COMMENT); }
3344  YY_BREAK
3345 case 83:
3346 /* rule 83 can match eol */
3348 #line 736 "../../../utils/lacheck/lacheck.l"
3349 { BEGIN(INITIAL); ++line_count; }
3350  YY_BREAK
3351 case 84:
3353 #line 738 "../../../utils/lacheck/lacheck.l"
3354 { ; }
3355  YY_BREAK
3356 case 85:
3358 #line 741 "../../../utils/lacheck/lacheck.l"
3359 { BEGIN(INCLUDE); }
3360  YY_BREAK
3361 case 86:
3363 #line 743 "../../../utils/lacheck/lacheck.l"
3364 {
3365  {
3366  if ( strstr(yytext,".sty") == NULL )
3367  {
3368  printf("** %s:\n", yytext);
3369  input_file(yytext);
3370  }
3371  else
3372  {
3373  printf("\"%s\", line %d: Style file `%s\' omitted.\n",
3374  file_name,
3375  line_count,
3376  yytext);
3377  input();
3378  }
3379  BEGIN(INITIAL);
3380  }}
3381  YY_BREAK
3382 case 87:
3383 /* rule 87 can match eol */
3384 *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */
3385 YY_LINENO_REWIND_TO(yy_bp + 9);
3386 (yy_c_buf_p) = yy_cp = yy_bp + 9;
3387 YY_DO_BEFORE_ACTION; /* set up yytext again */
3388 #line 762 "../../../utils/lacheck/lacheck.l"
3390 case YY_STATE_EOF(INITIAL):
3396 case YY_STATE_EOF(VERBATIM):
3398 case YY_STATE_EOF(INCLUDE):
3400 case YY_STATE_EOF(MATH):
3402 case YY_STATE_EOF(COMMENT):
3404 case YY_STATE_EOF(VERB):
3406 case YY_STATE_EOF(DEF):
3410 case YY_STATE_EOF(ENV_DEF):
3412 case YY_STATE_EOF(ICOR):
3414 case YY_STATE_EOF(GETICOR):
3415 #line 762 "../../../utils/lacheck/lacheck.l"
3416 {
3417  if (--istackp < 0)
3418  yyterminate();
3419 
3420  else
3421  {
3422  fclose(yyin);
3425  free(file_name);
3428  input();
3429  BEGIN(INITIAL);
3430  }
3431 
3432  }
3433  YY_BREAK
3434 case 88:
3436 #line 781 "../../../utils/lacheck/lacheck.l"
3437 { ; }
3438  YY_BREAK
3439 case 89:
3441 #line 782 "../../../utils/lacheck/lacheck.l"
3442 ECHO;
3443  YY_BREAK
3444 #line 3445 "../../../utils/lacheck/lacheck.c"
3445 
3446  case YY_END_OF_BUFFER:
3447  {
3448  /* Amount of text matched not including the EOB char. */
3449  int yy_amount_of_matched_text = (int) (yy_cp - (yytext_ptr)) - 1;
3450 
3451  /* Undo the effects of YY_DO_BEFORE_ACTION. */
3452  *yy_cp = (yy_hold_char);
3454 
3455  if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_NEW )
3456  {
3457  /* We're scanning a new file or input source. It's
3458  * possible that this happened because the user
3459  * just pointed yyin at a new source and called
3460  * yylex(). If so, then we have to assure
3461  * consistency between YY_CURRENT_BUFFER and our
3462  * globals. Here is the right place to do so, because
3463  * this is the first action (other than possibly a
3464  * back-up) that will match for the new input source.
3465  */
3466  (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
3467  YY_CURRENT_BUFFER_LVALUE->yy_input_file = yyin;
3468  YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL;
3469  }
3470 
3471  /* Note that here we test for yy_c_buf_p "<=" to the position
3472  * of the first EOB in the buffer, since yy_c_buf_p will
3473  * already have been incremented past the NUL character
3474  * (since all states make transitions on EOB to the
3475  * end-of-buffer state). Contrast this with the test
3476  * in input().
3477  */
3478  if ( (yy_c_buf_p) <= &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] )
3479  { /* This was really a NUL. */
3480  yy_state_type yy_next_state;
3481 
3482  (yy_c_buf_p) = (yytext_ptr) + yy_amount_of_matched_text;
3483 
3484  yy_current_state = yy_get_previous_state( );
3485 
3486  /* Okay, we're now positioned to make the NUL
3487  * transition. We couldn't have
3488  * yy_get_previous_state() go ahead and do it
3489  * for us because it doesn't know how to deal
3490  * with the possibility of jamming (and we don't
3491  * want to build jamming into it because then it
3492  * will run more slowly).
3493  */
3494 
3495  yy_next_state = yy_try_NUL_trans( yy_current_state );
3496 
3497  yy_bp = (yytext_ptr) + YY_MORE_ADJ;
3498 
3499  if ( yy_next_state )
3500  {
3501  /* Consume the NUL. */
3502  yy_cp = ++(yy_c_buf_p);
3503  yy_current_state = yy_next_state;
3504  goto yy_match;
3505  }
3506 
3507  else
3508  {
3509  yy_cp = (yy_c_buf_p);
3510  goto yy_find_action;
3511  }
3512  }
3513 
3514  else switch ( yy_get_next_buffer( ) )
3515  {
3516  case EOB_ACT_END_OF_FILE:
3517  {
3519 
3520  if ( yywrap( ) )
3521  {
3522  /* Note: because we've taken care in
3523  * yy_get_next_buffer() to have set up
3524  * yytext, we can now set up
3525  * yy_c_buf_p so that if some total
3526  * hoser (like flex itself) wants to
3527  * call the scanner after we return the
3528  * YY_NULL, it'll still work - another
3529  * YY_NULL will get returned.
3530  */
3532 
3533  yy_act = YY_STATE_EOF(YY_START);
3534  goto do_action;
3535  }
3536 
3537  else
3538  {
3539  if ( ! (yy_did_buffer_switch_on_eof) )
3540  YY_NEW_FILE;
3541  }
3542  break;
3543  }
3544 
3545  case EOB_ACT_CONTINUE_SCAN:
3546  (yy_c_buf_p) =
3547  (yytext_ptr) + yy_amount_of_matched_text;
3548 
3549  yy_current_state = yy_get_previous_state( );
3550 
3551  yy_cp = (yy_c_buf_p);
3552  yy_bp = (yytext_ptr) + YY_MORE_ADJ;
3553  goto yy_match;
3554 
3555  case EOB_ACT_LAST_MATCH:
3556  (yy_c_buf_p) =
3557  &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)];
3558 
3559  yy_current_state = yy_get_previous_state( );
3560 
3561  yy_cp = (yy_c_buf_p);
3562  yy_bp = (yytext_ptr) + YY_MORE_ADJ;
3563  goto yy_find_action;
3564  }
3565  break;
3566  }
3567 
3568  default:
3570  "fatal flex scanner internal error--no action found" );
3571  } /* end of action switch */
3572  } /* end of scanning one token */
3573  } /* end of user's declarations */
3574 } /* end of yylex */
3575 
3576 /* yy_get_next_buffer - try to read in a new buffer
3577  *
3578  * Returns a code representing an action:
3579  * EOB_ACT_LAST_MATCH -
3580  * EOB_ACT_CONTINUE_SCAN - continue scanning from current position
3581  * EOB_ACT_END_OF_FILE - end of file
3582  */
3583 static int yy_get_next_buffer (void)
3584 {
3585  char *dest = YY_CURRENT_BUFFER_LVALUE->yy_ch_buf;
3586  char *source = (yytext_ptr);
3587  yy_size_t number_to_move, i;
3588  int ret_val;
3589 
3590  if ( (yy_c_buf_p) > &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars) + 1] )
3592  "fatal flex scanner internal error--end of buffer missed" );
3593 
3594  if ( YY_CURRENT_BUFFER_LVALUE->yy_fill_buffer == 0 )
3595  { /* Don't try to fill the buffer, so this is an EOF. */
3596  if ( (yy_c_buf_p) - (yytext_ptr) - YY_MORE_ADJ == 1 )
3597  {
3598  /* We matched a single character, the EOB, so
3599  * treat this as a final EOF.
3600  */
3601  return EOB_ACT_END_OF_FILE;
3602  }
3603 
3604  else
3605  {
3606  /* We matched some text prior to the EOB, first
3607  * process it.
3608  */
3609  return EOB_ACT_LAST_MATCH;
3610  }
3611  }
3612 
3613  /* Try to read more data. */
3614 
3615  /* First move last chars to start of buffer. */
3616  number_to_move = (yy_size_t) ((yy_c_buf_p) - (yytext_ptr)) - 1;
3617 
3618  for ( i = 0; i < number_to_move; ++i )
3619  *(dest++) = *(source++);
3620 
3621  if ( YY_CURRENT_BUFFER_LVALUE->yy_buffer_status == YY_BUFFER_EOF_PENDING )
3622  /* don't do the read, it's not guaranteed to return an EOF,
3623  * just force an EOF
3624  */
3625  YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars) = 0;
3626 
3627  else
3628  {
3629  yy_size_t num_to_read =
3630  YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1;
3631 
3632  while ( num_to_read <= 0 )
3633  { /* Not enough room in the buffer - grow it. */
3634 
3636 "input buffer overflow, can't enlarge buffer because scanner uses REJECT" );
3637 
3638  }
3639 
3640  if ( num_to_read > YY_READ_BUF_SIZE )
3641  num_to_read = YY_READ_BUF_SIZE;
3642 
3643  /* Read in more data. */
3644  YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]),
3645  (yy_n_chars), num_to_read );
3646 
3647  YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
3648  }
3649 
3650  if ( (yy_n_chars) == 0 )
3651  {
3652  if ( number_to_move == YY_MORE_ADJ )
3653  {
3654  ret_val = EOB_ACT_END_OF_FILE;
3655  yyrestart(yyin );
3656  }
3657 
3658  else
3659  {
3660  ret_val = EOB_ACT_LAST_MATCH;
3661  YY_CURRENT_BUFFER_LVALUE->yy_buffer_status =
3663  }
3664  }
3665 
3666  else
3667  ret_val = EOB_ACT_CONTINUE_SCAN;
3668 
3669  if ((yy_size_t) ((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) {
3670  /* Extend the array by 50%, plus the number we really need. */
3671  yy_size_t new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1);
3672  YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) yyrealloc((void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf,new_size );
3673  if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )
3674  YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" );
3675  }
3676 
3677  (yy_n_chars) += number_to_move;
3680 
3681  (yytext_ptr) = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[0];
3682 
3683  return ret_val;
3684 }
3685 
3686 /* yy_get_previous_state - get the state just before the EOB char was reached */
3687 
3689 {
3690  yy_state_type yy_current_state;
3691  char *yy_cp;
3692 
3693  yy_current_state = (yy_start);
3694  yy_current_state += YY_AT_BOL();
3695 
3696  (yy_state_ptr) = (yy_state_buf);
3697  *(yy_state_ptr)++ = yy_current_state;
3698 
3699  for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp )
3700  {
3701  YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
3702  while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
3703  {
3704  yy_current_state = (int) yy_def[yy_current_state];
3705  if ( yy_current_state >= 967 )
3706  yy_c = yy_meta[(unsigned int) yy_c];
3707  }
3708  yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
3709  *(yy_state_ptr)++ = yy_current_state;
3710  }
3711 
3712  return yy_current_state;
3713 }
3714 
3715 /* yy_try_NUL_trans - try to make a transition on the NUL character
3716  *
3717  * synopsis
3718  * next_state = yy_try_NUL_trans( current_state );
3719  */
3720  static yy_state_type yy_try_NUL_trans (yy_state_type yy_current_state )
3721 {
3722  int yy_is_jam;
3723 
3724  YY_CHAR yy_c = 1;
3725  while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
3726  {
3727  yy_current_state = (int) yy_def[yy_current_state];
3728  if ( yy_current_state >= 967 )
3729  yy_c = yy_meta[(unsigned int) yy_c];
3730  }
3731  yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
3732  yy_is_jam = (yy_current_state == 966);
3733  if ( ! yy_is_jam )
3734  *(yy_state_ptr)++ = yy_current_state;
3735 
3736  return yy_is_jam ? 0 : yy_current_state;
3737 }
3738 
3739 #ifndef YY_NO_UNPUT
3740 
3741  static void yyunput (int c, char * yy_bp )
3742 {
3743  char *yy_cp;
3744 
3745  yy_cp = (yy_c_buf_p);
3746 
3747  /* undo effects of setting up yytext */
3748  *yy_cp = (yy_hold_char);
3749 
3750  if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 )
3751  { /* need to shift things up to make room */
3752  /* +2 for EOB chars. */
3753  yy_size_t number_to_move = (yy_n_chars) + 2;
3754  char *dest = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[
3755  YY_CURRENT_BUFFER_LVALUE->yy_buf_size + 2];
3756  char *source =
3757  &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move];
3758 
3759  while ( source > YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )
3760  *--dest = *--source;
3761 
3762  yy_cp += (int) (dest - source);
3763  yy_bp += (int) (dest - source);
3764  YY_CURRENT_BUFFER_LVALUE->yy_n_chars =
3765  (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_buf_size;
3766 
3767  if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 )
3768  YY_FATAL_ERROR( "flex scanner push-back overflow" );
3769  }
3770 
3771  *--yy_cp = (char) c;
3772 
3773  (yytext_ptr) = yy_bp;
3774  (yy_hold_char) = *yy_cp;
3775  (yy_c_buf_p) = yy_cp;
3776 }
3777 
3778 #endif
3779 
3780 #ifndef YY_NO_INPUT
3781 #ifdef __cplusplus
3782  static int yyinput (void)
3783 #else
3784  static int input (void)
3785 #endif
3786 
3787 {
3788  int c;
3789 
3790  *(yy_c_buf_p) = (yy_hold_char);
3791 
3792  if ( *(yy_c_buf_p) == YY_END_OF_BUFFER_CHAR )
3793  {
3794  /* yy_c_buf_p now points to the character we want to return.
3795  * If this occurs *before* the EOB characters, then it's a
3796  * valid NUL; if not, then we've hit the end of the buffer.
3797  */
3798  if ( (yy_c_buf_p) < &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[(yy_n_chars)] )
3799  /* This was really a NUL. */
3800  *(yy_c_buf_p) = '\0';
3801 
3802  else
3803  { /* need more input */
3805  ++(yy_c_buf_p);
3806 
3807  switch ( yy_get_next_buffer( ) )
3808  {
3809  case EOB_ACT_LAST_MATCH:
3810  /* This happens because yy_g_n_b()
3811  * sees that we've accumulated a
3812  * token and flags that we need to
3813  * try matching the token before
3814  * proceeding. But for input(),
3815  * there's no matching to consider.
3816  * So convert the EOB_ACT_LAST_MATCH
3817  * to EOB_ACT_END_OF_FILE.
3818  */
3819 
3820  /* Reset buffer status. */
3821  yyrestart(yyin );
3822 
3823  /*FALLTHROUGH*/
3824 
3825  case EOB_ACT_END_OF_FILE:
3826  {
3827  if ( yywrap( ) )
3828  return EOF;
3829 
3830  if ( ! (yy_did_buffer_switch_on_eof) )
3831  YY_NEW_FILE;
3832 #ifdef __cplusplus
3833  return yyinput();
3834 #else
3835  return input();
3836 #endif
3837  }
3838 
3839  case EOB_ACT_CONTINUE_SCAN:
3840  (yy_c_buf_p) = (yytext_ptr) + offset;
3841  break;
3842  }
3843  }
3844  }
3845 
3846  c = *(unsigned char *) (yy_c_buf_p); /* cast for 8-bit char's */
3847  *(yy_c_buf_p) = '\0'; /* preserve yytext */
3848  (yy_hold_char) = *++(yy_c_buf_p);
3849 
3850  YY_CURRENT_BUFFER_LVALUE->yy_at_bol = (c == '\n');
3851 
3852  return c;
3853 }
3854 #endif /* ifndef YY_NO_INPUT */
3855 
3856 /** Immediately switch to a different input stream.
3857  * @param input_file A readable stream.
3858  *
3859  * @note This function does not reset the start condition to @c INITIAL .
3860  */
3862 {
3863 
3864  if ( ! YY_CURRENT_BUFFER ){
3868  }
3869 
3872 }
3873 
3874 /** Switch to a different input buffer.
3875  * @param new_buffer The new input buffer.
3876  *
3877  */
3879 {
3880 
3881  /* TODO. We should be able to replace this entire function body
3882  * with
3883  * yypop_buffer_state();
3884  * yypush_buffer_state(new_buffer);
3885  */
3887  if ( YY_CURRENT_BUFFER == new_buffer )
3888  return;
3889 
3890  if ( YY_CURRENT_BUFFER )
3891  {
3892  /* Flush out information for old buffer. */
3893  *(yy_c_buf_p) = (yy_hold_char);
3894  YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);
3895  YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
3896  }
3897 
3898  YY_CURRENT_BUFFER_LVALUE = new_buffer;
3900 
3901  /* We don't actually know whether we did this switch during
3902  * EOF (yywrap()) processing, but the only time this flag
3903  * is looked at is after yywrap() is called, so it's safe
3904  * to go ahead and always set it.
3905  */
3907 }
3908 
3909 static void yy_load_buffer_state (void)
3910 {
3911  (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;
3912  (yytext_ptr) = (yy_c_buf_p) = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos;
3913  yyin = YY_CURRENT_BUFFER_LVALUE->yy_input_file;
3914  (yy_hold_char) = *(yy_c_buf_p);
3915 }
3916 
3917 /** Allocate and initialize an input buffer state.
3918  * @param file A readable stream.
3919  * @param size The character buffer size in bytes. When in doubt, use @c YY_BUF_SIZE.
3920  *
3921  * @return the allocated buffer state.
3922  */
3924 {
3926 
3927  b = (YY_BUFFER_STATE) yyalloc(sizeof( struct yy_buffer_state ) );
3928  if ( ! b )
3929  YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
3930 
3931  b->yy_buf_size = (yy_size_t)size;
3932 
3933  /* yy_ch_buf has to be 2 characters longer than the size given because
3934  * we need to put in 2 end-of-buffer characters.
3935  */
3936  b->yy_ch_buf = (char *) yyalloc(b->yy_buf_size + 2 );
3937  if ( ! b->yy_ch_buf )
3938  YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
3939 
3940  b->yy_is_our_buffer = 1;
3941 
3942  yy_init_buffer(b,file );
3943 
3944  return b;
3945 }
3946 
3947 /** Destroy the buffer.
3948  * @param b a buffer created with yy_create_buffer()
3949  *
3950  */
3952 {
3953 
3954  if ( ! b )
3955  return;
3956 
3957  if ( b == YY_CURRENT_BUFFER ) /* Not sure if we should pop here. */
3959 
3960  if ( b->yy_is_our_buffer )
3961  yyfree((void *) b->yy_ch_buf );
3962 
3963  yyfree((void *) b );
3964 }
3965 
3966 /* Initializes or reinitializes a buffer.
3967  * This function is sometimes called more than once on the same buffer,
3968  * such as during a yyrestart() or at EOF.
3969  */
3971 
3972 {
3973  int oerrno = errno;
3974 
3975  yy_flush_buffer(b );
3976 
3977  b->yy_input_file = file;
3978  b->yy_fill_buffer = 1;
3979 
3980  /* If b is the current buffer, then yy_init_buffer was _probably_
3981  * called from yyrestart() or through yy_get_next_buffer.
3982  * In that case, we don't want to reset the lineno or column.
3983  */
3984  if (b != YY_CURRENT_BUFFER){
3985  b->yy_bs_lineno = 1;
3986  b->yy_bs_column = 0;
3987  }
3988 
3989  b->yy_is_interactive = 0;
3990 
3991  errno = oerrno;
3992 }
3993 
3994 /** Discard all buffered characters. On the next scan, YY_INPUT will be called.
3995  * @param b the buffer state to be flushed, usually @c YY_CURRENT_BUFFER.
3996  *
3997  */
3999 {
4000  if ( ! b )
4001  return;
4002 
4003  b->yy_n_chars = 0;
4004 
4005  /* We always need two end-of-buffer characters. The first causes
4006  * a transition to the end-of-buffer state. The second causes
4007  * a jam in that state.
4008  */
4009  b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR;
4010  b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR;
4011 
4012  b->yy_buf_pos = &b->yy_ch_buf[0];
4013 
4014  b->yy_at_bol = 1;
4015  b->yy_buffer_status = YY_BUFFER_NEW;
4016 
4017  if ( b == YY_CURRENT_BUFFER )
4019 }
4020 
4021 /** Pushes the new state onto the stack. The new state becomes
4022  * the current state. This function will allocate the stack
4023  * if necessary.
4024  * @param new_buffer The new state.
4025  *
4026  */
4028 {
4029  if (new_buffer == NULL)
4030  return;
4031 
4033 
4034  /* This block is copied from yy_switch_to_buffer. */
4035  if ( YY_CURRENT_BUFFER )
4036  {
4037  /* Flush out information for old buffer. */
4038  *(yy_c_buf_p) = (yy_hold_char);
4039  YY_CURRENT_BUFFER_LVALUE->yy_buf_pos = (yy_c_buf_p);
4040  YY_CURRENT_BUFFER_LVALUE->yy_n_chars = (yy_n_chars);
4041  }
4042 
4043  /* Only push if top exists. Otherwise, replace top. */
4044  if (YY_CURRENT_BUFFER)
4045  (yy_buffer_stack_top)++;
4046  YY_CURRENT_BUFFER_LVALUE = new_buffer;
4047 
4048  /* copied from yy_switch_to_buffer. */
4051 }
4052 
4053 /** Removes and deletes the top of the stack, if present.
4054  * The next element becomes the new top.
4055  *
4056  */
4058 {
4059  if (!YY_CURRENT_BUFFER)
4060  return;
4061 
4064  if ((yy_buffer_stack_top) > 0)
4065  --(yy_buffer_stack_top);
4066 
4067  if (YY_CURRENT_BUFFER) {
4070  }
4071 }
4072 
4073 /* Allocates the stack if it does not exist.
4074  * Guarantees space for at least one push.
4075  */
4076 static void yyensure_buffer_stack (void)
4077 {
4078  yy_size_t num_to_alloc;
4079 
4080  if (!(yy_buffer_stack)) {
4081 
4082  /* First allocation is just for 2 elements, since we don't know if this
4083  * scanner will even need a stack. We use 2 instead of 1 to avoid an
4084  * immediate realloc on the next call.
4085  */
4086  num_to_alloc = 1; // After all that talk, this was set to 1 anyways...
4088  (num_to_alloc * sizeof(struct yy_buffer_state*)
4089  );
4090  if ( ! (yy_buffer_stack) )
4091  YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" );
4092 
4093  memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*));
4094 
4095  (yy_buffer_stack_max) = num_to_alloc;
4096  (yy_buffer_stack_top) = 0;
4097  return;
4098  }
4099 
4100  if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){
4101 
4102  /* Increase the buffer to prepare for a possible push. */
4103  yy_size_t grow_size = 8 /* arbitrary grow size */;
4104 
4105  num_to_alloc = (yy_buffer_stack_max) + grow_size;
4107  ((yy_buffer_stack),
4108  num_to_alloc * sizeof(struct yy_buffer_state*)
4109  );
4110  if ( ! (yy_buffer_stack) )
4111  YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" );
4112 
4113  /* zero only the new slots.*/
4114  memset((yy_buffer_stack) + (yy_buffer_stack_max), 0, grow_size * sizeof(struct yy_buffer_state*));
4115  (yy_buffer_stack_max) = num_to_alloc;
4116  }
4117 }
4118 
4119 /** Setup the input buffer state to scan directly from a user-specified character buffer.
4120  * @param base the character buffer
4121  * @param size the size in bytes of the character buffer
4122  *
4123  * @return the newly allocated buffer state object.
4124  */
4126 {
4128 
4129  if ( size < 2 ||
4132  /* They forgot to leave room for the EOB's. */
4133  return 0;
4134 
4135  b = (YY_BUFFER_STATE) yyalloc(sizeof( struct yy_buffer_state ) );
4136  if ( ! b )
4137  YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" );
4138 
4139  b->yy_buf_size = size - 2; /* "- 2" to take care of EOB's */
4140  b->yy_buf_pos = b->yy_ch_buf = base;
4141  b->yy_is_our_buffer = 0;
4142  b->yy_input_file = 0;
4143  b->yy_n_chars = b->yy_buf_size;
4144  b->yy_is_interactive = 0;
4145  b->yy_at_bol = 1;
4146  b->yy_fill_buffer = 0;
4147  b->yy_buffer_status = YY_BUFFER_NEW;
4148 
4150 
4151  return b;
4152 }
4153 
4154 /** Setup the input buffer state to scan a string. The next call to yylex() will
4155  * scan from a @e copy of @a str.
4156  * @param yystr a NUL-terminated string to scan
4157  *
4158  * @return the newly allocated buffer state object.
4159  * @note If you want to scan bytes that may contain NUL values, then use
4160  * yy_scan_bytes() instead.
4161  */
4163 {
4164 
4165  return yy_scan_bytes(yystr,strlen(yystr) );
4166 }
4167 
4168 /** Setup the input buffer state to scan the given bytes. The next call to yylex() will
4169  * scan from a @e copy of @a bytes.
4170  * @param yybytes the byte buffer to scan
4171  * @param _yybytes_len the number of bytes in the buffer pointed to by @a bytes.
4172  *
4173  * @return the newly allocated buffer state object.
4174  */
4175 YY_BUFFER_STATE yy_scan_bytes (yyconst char * yybytes, yy_size_t _yybytes_len )
4176 {
4178  char *buf;
4179  yy_size_t n;
4180  yy_size_t i;
4181 
4182  /* Get memory for full buffer, including space for trailing EOB's. */
4183  n = _yybytes_len + 2;
4184  buf = (char *) yyalloc(n );
4185  if ( ! buf )
4186  YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" );
4187 
4188  for ( i = 0; i < _yybytes_len; ++i )
4189  buf[i] = yybytes[i];
4190 
4191  buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR;
4192 
4193  b = yy_scan_buffer(buf,n );
4194  if ( ! b )
4195  YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" );
4196 
4197  /* It's okay to grow etc. this buffer, and we should throw it
4198  * away when we're done.
4199  */
4200  b->yy_is_our_buffer = 1;
4201 
4202  return b;
4203 }
4204 
4205 #ifndef YY_EXIT_FAILURE
4206 #define YY_EXIT_FAILURE 2
4207 #endif
4208 
4209 static void yy_fatal_error (yyconst char* msg )
4210 {
4211  (void) fprintf( stderr, "%s\n", msg );
4212  exit( YY_EXIT_FAILURE );
4213 }
4214 
4215 /* Redefine yyless() so it works in section 3 code. */
4216 
4217 #undef yyless
4218 #define yyless(n) \
4219  do \
4220  { \
4221  /* Undo effects of setting up yytext. */ \
4222  int yyless_macro_arg = (n); \
4223  YY_LESS_LINENO(yyless_macro_arg);\
4224  yytext[yyleng] = (yy_hold_char); \
4225  (yy_c_buf_p) = yytext + yyless_macro_arg; \
4226  (yy_hold_char) = *(yy_c_buf_p); \
4227  *(yy_c_buf_p) = '\0'; \
4228  yyleng = yyless_macro_arg; \
4229  } \
4230  while ( 0 )
4231 
4232 /* Accessor methods (get/set functions) to struct members. */
4233 
4234 /** Get the current line number.
4235  *
4236  */
4237 int yyget_lineno (void)
4238 {
4239 
4240  return yylineno;
4241 }
4242 
4243 /** Get the input stream.
4244  *
4245  */
4247 {
4248  return yyin;
4249 }
4250 
4251 /** Get the output stream.
4252  *
4253  */
4255 {
4256  return yyout;
4257 }
4258 
4259 /** Get the length of the current token.
4260  *
4261  */
4263 {
4264  return yyleng;
4265 }
4266 
4267 /** Get the current token.
4268  *
4269  */
4270 
4271 char *yyget_text (void)
4272 {
4273  return yytext;
4274 }
4275 
4276 /** Set the current line number.
4277  * @param _line_number line number
4278  *
4279  */
4280 void yyset_lineno (int _line_number )
4281 {
4282 
4283  yylineno = _line_number;
4284 }
4285 
4286 /** Set the input stream. This does not discard the current
4287  * input buffer.
4288  * @param _in_str A readable stream.
4289  *
4290  * @see yy_switch_to_buffer
4291  */
4292 void yyset_in (FILE * _in_str )
4293 {
4294  yyin = _in_str ;
4295 }
4296 
4297 void yyset_out (FILE * _out_str )
4298 {
4299  yyout = _out_str ;
4300 }
4301 
4302 int yyget_debug (void)
4303 {
4304  return yy_flex_debug;
4305 }
4306 
4307 void yyset_debug (int _bdebug )
4308 {
4309  yy_flex_debug = _bdebug ;
4310 }
4311 
4312 static int yy_init_globals (void)
4313 {
4314  /* Initialization is the same as for the non-reentrant scanner.
4315  * This function is called from yylex_destroy(), so don't allocate here.
4316  */
4317 
4318  (yy_buffer_stack) = 0;
4319  (yy_buffer_stack_top) = 0;
4320  (yy_buffer_stack_max) = 0;
4321  (yy_c_buf_p) = (char *) 0;
4322  (yy_init) = 0;
4323  (yy_start) = 0;
4324 
4325  (yy_state_buf) = 0;
4326  (yy_state_ptr) = 0;
4327  (yy_full_match) = 0;
4328  (yy_lp) = 0;
4329 
4330 /* Defined in main.c */
4331 #ifdef YY_STDINIT
4332  yyin = stdin;
4333  yyout = stdout;
4334 #else
4335  yyin = (FILE *) 0;
4336  yyout = (FILE *) 0;
4337 #endif
4338 
4339  /* For future reference: Set errno on error, since we are called by
4340  * yylex_init()
4341  */
4342  return 0;
4343 }
4344 
4345 /* yylex_destroy is for both reentrant and non-reentrant scanners. */
4346 int yylex_destroy (void)
4347 {
4348 
4349  /* Pop the buffer stack, destroying each element. */
4350  while(YY_CURRENT_BUFFER){
4354  }
4355 
4356  /* Destroy the stack itself. */
4357  yyfree((yy_buffer_stack) );
4358  (yy_buffer_stack) = NULL;
4359 
4360  yyfree ( (yy_state_buf) );
4361  (yy_state_buf) = NULL;
4362 
4363  /* Reset the globals. This is important in a non-reentrant scanner so the next time
4364  * yylex() is called, initialization will occur. */
4365  yy_init_globals( );
4366 
4367  return 0;
4368 }
4369 
4370 /*
4371  * Internal utility routines.
4372  */
4373 
4374 #ifndef yytext_ptr
4375 static void yy_flex_strncpy (char* s1, yyconst char * s2, int n )
4376 {
4377 
4378  int i;
4379  for ( i = 0; i < n; ++i )
4380  s1[i] = s2[i];
4381 }
4382 #endif
4383 
4384 #ifdef YY_NEED_STRLEN
4385 static int yy_flex_strlen (yyconst char * s )
4386 {
4387  int n;
4388  for ( n = 0; s[n]; ++n )
4389  ;
4390 
4391  return n;
4392 }
4393 #endif
4394 
4396 {
4397  return (void *) malloc( size );
4398 }
4399 
4400 void *yyrealloc (void * ptr, yy_size_t size )
4401 {
4402 
4403  /* The cast to (char *) in the following accommodates both
4404  * implementations that use char* generic pointers, and those
4405  * that use void* generic pointers. It works with the latter
4406  * because both ANSI C and C++ allow castless assignment from
4407  * any pointer type to void*, and deal with argument conversions
4408  * as though doing an assignment.
4409  */
4410  return (void *) realloc( (char *) ptr, size );
4411 }
4412 
4413 void yyfree (void * ptr )
4414 {
4415  free( (char *) ptr ); /* see yyrealloc() for (char *) cast */
4416 }
4417 
4418 #define YYTABLES_NAME "yytables"
4419 
4420 #line 782 "../../../utils/lacheck/lacheck.l"
4421 
4422 
4423 static void print_version (void)
4424 {
4425  printf("%s (TeX Live) %s\n", PROGNAME, "1.29");
4426  puts("$Id: lacheck.l 51590 2019-07-09 15:26:51Z karl $");
4427  printf("License GPLv1+: GNU GPL version 1 or later");
4428  puts(" <https://gnu.org/licenses/gpl.html>.");
4429  puts("This is free software: you are free to change and redistribute it.");
4430  puts("There is NO WARRANTY, to the extent permitted by law.");
4431  puts("Written by Kresten Krab Thorup and Per Abrahamsen.");
4432 }
4433 
4434 static void print_help (void)
4435 {
4436  printf("Usage: lacheck FILENAME[.tex]\n");
4437  printf("A consistency checker for LaTeX documents.\n\n");
4438  printf("Document context is displayed in \"double quotes\".\n");
4439  printf("All messages are only warnings!\n");
4440  printf("Your document may be right even though LaCheck says");
4441  printf(" otherwise.\n\n");
4442  print_version();
4443  printf("\nEmail bug reports to tex-live@tug.org.\n");
4444 }
4445 
4446 int main(int argc, char *argv[])
4447 {
4448  /* allocate initial stacks */
4449  gstack = (tex_group *)malloc(gstack_size * sizeof(tex_group));
4450  istack = (input_ *)malloc(istack_size * sizeof(input_));
4451  if ( gstack == NULL || istack == NULL ) {
4452  fprintf(stderr, "%s: not enough memory for stacks\n", PROGNAME);
4453  exit(3);
4454  }
4455 
4456  if (argc == 2)
4457  {
4458  if (strcmp(argv[1], "--help") == 0) {
4459  print_help();
4460  exit(0);
4461  } else if (strcmp(argv[1], "--version") == 0) {
4462  print_version();
4463  exit(0);
4464  }
4465  if ( (file_name = (char*) malloc(strlen(argv[1]) + 5)) == NULL ) {
4466  fprintf(stderr, "%s: out of memory\n", PROGNAME);
4467  exit(3);
4468  }
4469 
4470  strcpy(file_name, argv[1]);
4471  strcat(file_name, ".tex" );
4472 
4473  if ((yyin = fopen( file_name, "r")) != NULL )
4474  {
4475  push(file_name, 3, 1);
4476  yylex();
4478  }
4479  else {
4480  file_name[strlen(file_name) - 4] = '\0';
4481  if ((yyin = fopen( file_name, "r")) != NULL )
4482  {
4483  push(file_name, 3, 1);
4484  yylex();
4486  }
4487  else
4488  {
4489  fprintf(stderr, "%s: Could not open ",PROGNAME);
4490  perror(argv[1]);
4491  exit(1);
4492  }
4493  }
4494  /* printf("%s checked.\n", argv[1]); */
4495  }
4496  else
4497  {
4498  printf("Usage: lacheck FILENAME[.tex]\n");
4499  printf("Try 'lacheck --help' for more information.\n");
4500  exit(1);
4501  }
4502  return(0);
4503 }
4504 
4505 int yywrap(void) { return 1; }
4506 
4507 #ifdef NEED_STRSTR
4508 char *
4509 strstr(string, substring)
4510  register char *string; /* String to search. */
4511  char *substring; /* Substring to try to find in string. */
4512 {
4513  register char *a, *b;
4514 
4515  /* First scan quickly through the two strings looking for a
4516  * single-character match. When it's found, then compare the
4517  * rest of the substring.
4518  */
4519 
4520  b = substring;
4521  if (*b == 0) {
4522  return string;
4523  }
4524  for ( ; *string != 0; string += 1) {
4525  if (*string != *b) {
4526  continue;
4527  }
4528  a = string;
4529  while (1) {
4530  if (*b == 0) {
4531  return string;
4532  }
4533  if (*a++ != *b++) {
4534  break;
4535  }
4536  }
4537  b = substring;
4538  }
4539  return (char *) 0;
4540 }
4541 #endif /* NEED_STRSTR */
4542 
4543 void push(const char *p_name, int p_type, int p_line)
4544 {
4545  if ( gstackp == gstack_size ) { /* extend stack */
4546  gstack_size *= 2;
4548  if ( gstack == NULL ) {
4549  fprintf(stderr, "%s: stack out of memory", PROGNAME);
4550  exit(3);
4551  }
4552  }
4553 
4554  if ( (gstack[gstackp].s_name =
4555  (char *)malloc(strlen(p_name) + 1)) == NULL ||
4556  (gstack[gstackp].s_file =
4557  (char *)malloc(strlen(file_name) + 1)) == NULL ) {
4558  fprintf(stderr, "%s: out of memory\n", PROGNAME);
4559  exit(3);
4560  }
4561 
4562  strcpy(gstack[gstackp].s_name, p_name);
4563  gstack[gstackp].s_type = p_type;
4564  gstack[gstackp].s_line = p_line;
4565  gstack[gstackp].italic = ( (p_type == 4 || p_type == 5)
4566  ? 1
4567  : ( gstackp
4568  ? gstack[gstackp - 1].italic
4569  : 0));
4571  ++gstackp;
4572 
4573 }
4574 
4575 void input_file(char *file_nam)
4576 {
4577  char *tmp_file_name;
4578  FILE *tmp_yyin;
4579 
4580  if ( (tmp_file_name = (char*) malloc(strlen(file_nam) + 5)) == NULL ) {
4581  fprintf(stderr, "%s: out of memory\n", PROGNAME);
4582  exit(3);
4583  }
4584  strcpy(tmp_file_name,file_nam);
4585 
4586  if (istackp == istack_size) { /* extend stack */
4587  istack_size *= 2;
4588  istack = (input_ *)realloc(istack, istack_size * sizeof(input_));
4589  if ( istack == NULL ) {
4590  fprintf(stderr, "%s: \\input stack out of memory\n", PROGNAME);
4591  exit(3);
4592  }
4593  }
4594 
4598  ++istackp;
4599 
4600  (void) strcat(tmp_file_name, ".tex");
4601  if ((tmp_yyin = fopen( tmp_file_name, "r")) != NULL )
4602  {
4603  yyin = tmp_yyin;
4605  file_name = tmp_file_name;
4606  push(file_name, 3, 1);
4607  line_count = 1;
4608  }
4609  else {
4610  tmp_file_name[strlen(tmp_file_name) - 4] = '\0';
4611  if ((tmp_yyin = fopen( tmp_file_name , "r")) != NULL )
4612  {
4613  yyin = tmp_yyin;
4615  file_name = tmp_file_name;
4616  push(file_name, 3, 1);
4617  line_count = 1;
4618  }
4619  else
4620  {
4621  --istackp;
4622  free(tmp_file_name);
4623  printf("\"%s\", line %d: Could not open \"%s\"\n",
4624  file_name,
4625  line_count,
4626  file_nam);
4627  input();
4628  }
4629  }
4630 }
4631 
4632 void pop(void)
4633 {
4634  if ( gstackp == 0 )
4635  {
4636  fprintf(stderr, "%s: Stack underflow\n", PROGNAME);
4637  exit(4);
4638  }
4639  --gstackp;
4640 
4641  free(gstack[gstackp].s_name);
4643 }
4644 
4645 static void print_bg_command(char *name)
4646 {
4647 
4648  switch (CG_TYPE) {
4649 
4650  case 2:
4651  printf("\\begin{%s}", name);
4652  break;
4653 
4654  case 3:
4655  printf("beginning of file %s", name);
4656  break;
4657 
4658  case 4:
4659  printf("math begin %s", name);
4660  break;
4661 
4662  case 5:
4663  printf("display math begin %s", name);
4664  break;
4665 
4666  default:
4667  printf("%s", name);
4668 
4669  }
4670 }
4671 
4672 static void print_eg_command(char *name, int type)
4673 {
4674 
4675  switch (type) {
4676 
4677  case 2:
4678  printf("\\end{%s}", name);
4679  break;
4680 
4681  case 3:
4682  printf("end of file %s", name);
4683  break;
4684 
4685  case 4:
4686  printf("math end %s", name);
4687  break;
4688 
4689  case 5:
4690  printf("display math end %s", name);
4691  break;
4692 
4693  default:
4694  printf("%s", name);
4695  break;
4696  }
4697 }
4698 
4699 
4700 void g_checkend(int n)
4701 {
4702  if ( check_top_level_end(yytext,n) == 1 )
4703  {
4704  if ( CG_TYPE != n )
4706  else
4707  pop();
4708  }
4709 }
4710 
4711 void e_checkend(int n, char *name)
4712 {
4713  if ( check_top_level_end(name,n) == 1 )
4714  {
4715  if ( CG_TYPE != n || strcmp( CG_NAME, name ) != 0 )
4717 
4718  if ( CG_TYPE != 3 )
4719  pop();
4720 
4721  }
4722 }
4723 
4724 void f_checkend(char *name)
4725 {
4726  if ( check_top_level_end(name,3) == 1 )
4727  {
4728  if ( CG_TYPE != 3 || strcmp( CG_NAME, name ) != 0 )
4729 
4730  while( CG_TYPE != 3 )
4731  {
4732  print_bad_match(name,3);
4733  pop();
4734  }
4735 
4736  pop();
4737  }
4738 }
4739 
4740 void print_bad_match(char *end_command, int type)
4741 {
4742  printf("\"%s\", line %d: <- unmatched \"",
4743  file_name,
4744  line_count);
4745  print_eg_command(end_command, type);
4746  printf("\"\n");
4747 
4748  printf("\"%s\", line %d: -> unmatched \"",
4749  CG_FILE,
4750  CG_LINE);
4752  printf("\"\n");
4753  warn_count += 2;
4754 }
4755 
4756 int check_top_level_end(char *end_command, int type)
4757 {
4758  if ( gstackp == 0 )
4759  {
4760  printf("\"%s\", line %d: \"",
4761  file_name,
4762  line_count);
4763  print_eg_command(end_command, type);
4764  printf("\" found at top level\n");
4765  ++warn_count;
4766  return(0);
4767  }
4768  else
4769  return(1);
4770 }
4771 
4772 void linecount(void)
4773 {
4774  int i;
4775  for (i = 0; i < yyleng; i++)
4776  if(yytext[i] == '\n')
4777  line_count++;
4778 }
4779 
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
void __cdecl perror(char const *_ErrMsg)
short substring(const char *source, char *dest, unsigned long pos, long len)
Definition: Utility.c:47
long * italic
Definition: afm2tfm.c:1034
int source[257]
Definition: afm2tfm.c:928
#define type(a)
Definition: aptex-macros.h:171
#define name
#define n
Definition: t4ht.c:1290
#define b
Definition: jpegint.h:372
#define free(a)
Definition: decNumber.cpp:310
short int flex_int16_t
Definition: detex.c:139
int flex_int32_t
Definition: detex.c:140
int yy_state_type
Definition: detex.c:417
unsigned short int flex_uint16_t
Definition: detex.c:142
flex_uint8_t YY_CHAR
Definition: detex.c:413
size_t yy_size_t
Definition: detex.c:242
#define fopen
Definition: xxstdio.h:21
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
#define c(n)
Definition: gpos-common.c:150
#define a(n)
Definition: gpos-common.c:148
int base
Definition: gsftopk.c:1502
#define NULL
Definition: ftobjs.h:61
small capitals from c petite p scientific i
Definition: afcover.h:80
void exit()
#define EOF
Definition: afmparse.c:59
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 errno
#define buf
char * strstr()
#define fclose
Definition: debug.h:100
#define fprintf
Definition: mendex.h:64
#define string
Definition: ctangleboot.c:111
#define malloc
Definition: alloca.c:91
#define __attribute__(A)
Definition: synctex.c:338
#define dest
#define YY_NEW_FILE
Definition: lacheck.c:138
static flex_uint16_t yy_base[1062]
Definition: lacheck.c:582
static flex_int16_t yy_chk[5183]
Definition: lacheck.c:1398
int main(int argc, char *argv[])
Definition: lacheck.c:4446
#define GROUP_STACK_SIZE
Definition: lacheck.c:2128
unsigned char flex_uint8_t
Definition: lacheck.c:53
static char yy_hold_char
Definition: lacheck.c:282
void yyset_in(FILE *_in_str)
Definition: lacheck.c:4292
char verb_char
Definition: lacheck.c:2156
yy_size_t yyleng
Definition: lacheck.c:284
static int input(void)
Definition: lacheck.c:3784
#define COMMENT
Definition: lacheck.c:2196
static YY_CHAR yy_meta[57]
Definition: lacheck.c:572
tex_group * gstack
Definition: lacheck.c:2169
static yy_size_t yy_n_chars
Definition: lacheck.c:283
unsigned char YY_CHAR
Definition: lacheck.c:344
static void yyunput(int c, char *buf_ptr)
Definition: lacheck.c:3741
#define GETICOR
Definition: lacheck.c:2202
#define YY_EXTRA_TYPE
Definition: lacheck.c:2213
#define B_ENVIRONMENT
Definition: lacheck.c:2191
FILE * yyout
Definition: lacheck.c:171
#define CG_TYPE
Definition: lacheck.c:2136
static void print_version(void)
Definition: lacheck.c:4423
static int yy_start
Definition: lacheck.c:289
short int flex_int16_t
Definition: lacheck.c:51
static void yyensure_buffer_stack(void)
Definition: lacheck.c:4076
void yy_flush_buffer(YY_BUFFER_STATE b)
Definition: lacheck.c:3998
void yy_switch_to_buffer(YY_BUFFER_STATE new_buffer)
Definition: lacheck.c:3878
yy_size_t yyget_leng(void)
Definition: lacheck.c:4262
static YY_BUFFER_STATE * yy_buffer_stack
Definition: lacheck.c:264
unsigned int flex_uint32_t
Definition: lacheck.c:55
static void yy_fatal_error(char msg[])
#define INCLUDE
Definition: lacheck.c:2194
#define DEF
Definition: lacheck.c:2198
int yyget_lineno(void)
Definition: lacheck.c:4237
static int yy_get_next_buffer(void)
Definition: lacheck.c:3583
void print_bad_match(char *end_command, int type)
Definition: lacheck.c:4740
#define YY_BREAK
Definition: lacheck.c:2377
#define AFTER_DISPLAY
Definition: lacheck.c:2199
static size_t yy_buffer_stack_max
Definition: lacheck.c:263
#define unput(c)
Definition: lacheck.c:194
static yy_state_type yy_try_NUL_trans(yy_state_type current_state)
Definition: lacheck.c:3720
FILE * yyin
Definition: lacheck.c:346
void * yyalloc(yy_size_t)
Definition: lacheck.c:4395
int def_count
Definition: lacheck.c:2184
void yypush_buffer_state(YY_BUFFER_STATE new_buffer)
Definition: lacheck.c:4027
static yy_state_type * yy_state_ptr
Definition: lacheck.c:1975
int yyget_debug(void)
Definition: lacheck.c:4302
void linecount(void)
Definition: lacheck.c:4772
struct yy_buffer_state * YY_BUFFER_STATE
Definition: lacheck.c:161
#define YY_LINENO_REWIND_TO(ptr)
Definition: lacheck.c:178
#define YY_BUFFER_NEW
Definition: lacheck.c:244
#define CG_FILE
Definition: lacheck.c:2139
#define ENV_DEF
Definition: lacheck.c:2200
#define YY_RESTORE_YY_MORE_OFFSET
Definition: lacheck.c:1996
static int yy_did_buffer_switch_on_eof
Definition: lacheck.c:294
static int yy_init_globals(void)
Definition: lacheck.c:4312
YY_BUFFER_STATE yy_create_buffer(FILE *file, int size)
Definition: lacheck.c:3923
struct input_ input_
int yylineno
Definition: lacheck.c:352
static char * yy_full_match
Definition: lacheck.c:1976
static YY_CHAR yy_ec[256]
Definition: lacheck.c:540
int istackp
Definition: lacheck.c:2182
#define YY_BUFFER_NORMAL
Definition: lacheck.c:245
void yypop_buffer_state(void)
Definition: lacheck.c:4057
#define E_ENVIRONMENT
Definition: lacheck.c:2192
#define YY_MORE_ADJ
Definition: lacheck.c:1995
#define YY_RULE_SETUP
Definition: lacheck.c:2380
void yyfree(void *)
Definition: lacheck.c:4413
#define YY_AT_BOL()
Definition: lacheck.c:340
int yy_flex_debug
Definition: lacheck.c:1973
#define YY_TRAILING_MASK
Definition: lacheck.c:1981
#define yytext_ptr
Definition: lacheck.c:358
int check_top_level_end(char *end_command, int type)
Definition: lacheck.c:4756
static flex_int16_t yy_def[1062]
Definition: lacheck.c:703
signed char flex_int8_t
Definition: lacheck.c:50
#define EOB_ACT_END_OF_FILE
Definition: lacheck.c:174
#define YY_TRAILING_HEAD_MASK
Definition: lacheck.c:1982
#define YY_CURRENT_BUFFER_LVALUE
Definition: lacheck.c:279
int flex_int32_t
Definition: lacheck.c:52
void * yyrealloc(void *, yy_size_t)
Definition: lacheck.c:4400
YY_BUFFER_STATE yy_scan_bytes(char *bytes, yy_size_t len)
Definition: lacheck.c:4175
char * file_name
Definition: lacheck.c:2155
void yyset_extra(void *user_defined)
#define PROGNAME
Definition: lacheck.c:2131
#define YY_START
Definition: lacheck.c:131
#define CG_NAME
Definition: lacheck.c:2135
int istack_size
Definition: lacheck.c:2181
#define INPUT_STACK_SIZE
Definition: lacheck.c:2129
int yylex(void)
Definition: lacheck.c:2388
int yywrap(void)
Definition: lacheck.c:4505
int yy_state_type
Definition: lacheck.c:348
#define CG_LINE
Definition: lacheck.c:2137
void * yyget_extra(void)
static int yy_full_lp
Definition: lacheck.c:1979
static yy_state_type * yy_state_buf
Definition: lacheck.c:1975
static int yy_looking_for_trail_begin
Definition: lacheck.c:1978
#define YY_CURRENT_BUFFER
Definition: lacheck.c:272
#define yyconst
Definition: lacheck.c:108
#define INITIAL
Definition: lacheck.c:2190
int warn_count
Definition: lacheck.c:2154
YY_BUFFER_STATE yy_scan_string(char *yy_str)
Definition: lacheck.c:4162
static flex_int16_t yy_accept[968]
Definition: lacheck.c:430
#define YY_READ_BUF_SIZE
Definition: lacheck.c:2289
static int yy_lp
Definition: lacheck.c:1977
#define YY_INPUT(buf, result, max_size)
Definition: lacheck.c:2305
#define ECHO
Definition: lacheck.c:2298
#define YY_END_OF_BUFFER
Definition: lacheck.c:379
#define YY_STATE_EOF(state)
Definition: lacheck.c:135
static void print_eg_command(char *name, int type)
Definition: lacheck.c:4672
int yylex_destroy(void)
Definition: lacheck.c:4346
void yyrestart(FILE *input_file)
Definition: lacheck.c:3861
#define BEGIN
Definition: lacheck.c:125
#define YY_END_OF_BUFFER_CHAR
Definition: lacheck.c:140
int gstackp
Definition: lacheck.c:2171
static flex_int16_t yy_acclist[355]
Definition: lacheck.c:387
#define YY_FATAL_ERROR(msg)
Definition: lacheck.c:2352
static int * yy_full_state
Definition: lacheck.c:1980
static void print_bg_command(char *name)
Definition: lacheck.c:4645
#define YY_STATE_BUF_SIZE
Definition: lacheck.c:157
#define yyterminate()
Definition: lacheck.c:2342
unsigned short int flex_uint16_t
Definition: lacheck.c:54
void yyset_debug(int debug_flag)
Definition: lacheck.c:4307
int gstack_size
Definition: lacheck.c:2170
static void yy_load_buffer_state(void)
Definition: lacheck.c:3909
static flex_uint16_t yy_nxt[5183]
Definition: lacheck.c:824
char * yyget_text(void)
Definition: lacheck.c:4271
void yyset_lineno(int _line_number)
Definition: lacheck.c:4280
static void print_help(void)
Definition: lacheck.c:4434
#define YY_DO_BEFORE_ACTION
Definition: lacheck.c:371
#define ICOR
Definition: lacheck.c:2201
#define EOB_ACT_LAST_MATCH
Definition: lacheck.c:175
size_t yy_size_t
Definition: lacheck.c:166
#define VERBATIM
Definition: lacheck.c:2193
#define YY_BUFFER_EOF_PENDING
Definition: lacheck.c:256
static yy_state_type yy_get_previous_state(void)
Definition: lacheck.c:3688
void yyset_out(FILE *_out_str)
Definition: lacheck.c:4297
char * yytext
Definition: lacheck.c:1997
struct tex_group tex_group
static char * yy_c_buf_p
Definition: lacheck.c:287
#define EOB_ACT_CONTINUE_SCAN
Definition: lacheck.c:173
void input_file(char *file_nam)
Definition: lacheck.c:4575
FILE * yyget_out(void)
Definition: lacheck.c:4254
int line_count
Definition: lacheck.c:2153
static size_t yy_buffer_stack_top
Definition: lacheck.c:262
#define YY_DECL
Definition: lacheck.c:2365
void yy_delete_buffer(YY_BUFFER_STATE b)
Definition: lacheck.c:3951
#define YY_BUF_SIZE
Definition: lacheck.c:151
#define YY_EXIT_FAILURE
Definition: lacheck.c:4206
void g_checkend(int n)
Definition: lacheck.c:4700
static int yy_init
Definition: lacheck.c:288
void e_checkend(int n, char *name)
Definition: lacheck.c:4711
void pop(void)
Definition: lacheck.c:4632
FILE * yyget_in(void)
Definition: lacheck.c:4246
#define YY_SC_TO_UI(c)
Definition: lacheck.c:119
void f_checkend(char *name)
Definition: lacheck.c:4724
static void yy_init_buffer(YY_BUFFER_STATE b, FILE *file)
Definition: lacheck.c:3970
#define CG_ITALIC
Definition: lacheck.c:2138
#define VERB
Definition: lacheck.c:2197
YY_BUFFER_STATE yy_scan_buffer(char *base, yy_size_t size)
Definition: lacheck.c:4125
void push(const char *p_name, int p_type, int p_line)
Definition: lacheck.c:4543
input_ * istack
Definition: lacheck.c:2180
char * s_file
Definition: lacheck.l:171
#define realloc
Definition: glob.c:206
set set set set set set set macro pixldst1 abits if abits op else op endif endm macro pixldst2 abits if abits op else op endif endm macro pixldst4 abits if abits op else op endif endm macro pixldst0 abits op endm macro pixldst3 mem_operand op endm macro pixldst30 mem_operand op endm macro pixldst abits if abits elseif abits elseif abits elseif abits elseif abits pixldst0 abits else pixldst0 abits pixldst0 abits pixldst0 abits pixldst0 abits endif elseif abits else pixldst0 abits pixldst0 abits endif elseif abits else error unsupported bpp *numpix else pixst endif endm macro pixld1_s mem_operand if asr adds SRC_WIDTH_FIXED bpl add asl mov asr adds SRC_WIDTH_FIXED bpl add asl mov asr adds SRC_WIDTH_FIXED bpl add asl mov asr adds SRC_WIDTH_FIXED bpl add asl elseif asr adds SRC_WIDTH_FIXED bpl add asl mov asr adds SRC_WIDTH_FIXED bpl add asl else error unsupported endif endm macro pixld2_s mem_operand if mov asr add asl add asl mov asr sub UNIT_X add asl mov asr add asl add asl mov asr add UNIT_X add asl else pixld1_s mem_operand pixld1_s mem_operand endif endm macro pixld0_s mem_operand if asr adds SRC_WIDTH_FIXED bpl add asl elseif asr adds SRC_WIDTH_FIXED bpl add asl endif endm macro pixld_s_internal mem_operand if mem_operand pixld2_s mem_operand pixdeinterleave basereg elseif mem_operand elseif mem_operand elseif mem_operand elseif mem_operand pixld0_s mem_operand else pixld0_s mem_operand pixld0_s mem_operand pixld0_s mem_operand pixld0_s mem_operand endif elseif mem_operand else pixld0_s mem_operand pixld0_s mem_operand endif elseif mem_operand else error unsupported mem_operand if bpp mem_operand endif endm macro vuzp8 reg2 vuzp d d &reg2 endm macro vzip8 reg2 vzip d d &reg2 endm macro pixdeinterleave basereg basereg basereg basereg basereg endif endm macro pixinterleave basereg basereg basereg basereg basereg endif endm macro PF boost_increment endif if endif PF tst PF addne PF subne PF cmp ORIG_W if endif if endif if endif PF subge ORIG_W PF subges if endif if endif if endif endif endm macro cache_preload_simple endif if dst_r_bpp pld[DST_R, #(PREFETCH_DISTANCE_SIMPLE *dst_r_bpp/8)] endif if mask_bpp pld if[MASK, #(PREFETCH_DISTANCE_SIMPLE *mask_bpp/8)] endif endif endm macro fetch_mask_pixblock pixld mask_basereg pixblock_size MASK endm macro ensure_destination_ptr_alignment process_pixblock_tail_head if beq irp skip1(dst_w_bpp<=(lowbit *8)) &&((lowbit *8)<(pixblock_size *dst_w_bpp)) .if lowbit< 16 tst DST_R
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
static void yy_flex_strncpy(char *, char *, int)
Definition: pl-lexer.c:3346
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
struct stream_s stream
Definition: pts_fax.h:93
Definition: filedef.h:30
char * name
Definition: lacheck.c:2176
YY_BUFFER_STATE stream
Definition: lacheck.c:2175
int linenum
Definition: lacheck.c:2177
Definition: texview.c:48
Definition: sh.h:1345
int s_type
Definition: lacheck.c:2163
char * s_name
Definition: lacheck.c:2162
int s_line
Definition: lacheck.c:2164
char * s_file
Definition: lacheck.c:2166
int italic
Definition: lacheck.c:2165
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
*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)
#define argv
Definition: xmain.c:270
#define argc
Definition: xmain.c:269
static void new_size(int size, int block)
Definition: gc.c:702