home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 22 gnu / 22-gnu.zip / gnurecod.zip / merged.c < prev    next >
C/C++ Source or Header  |  1994-10-31  |  91KB  |  3,202 lines

  1. /* A lexical scanner generated by flex */
  2.  
  3. /* Scanner skeleton version:
  4.  * $Header: /home/daffy/u0/vern/flex/flex-2.4.7/RCS/flex.skl,v 1.2 94/08/03 11:13:24 vern Exp $
  5.  */
  6.  
  7. #define FLEX_SCANNER
  8.  
  9. #include <stdio.h>
  10.  
  11.  
  12. /* cfront 1.2 defines "c_plusplus" instead of "__cplusplus" */
  13. #ifdef c_plusplus
  14. #ifndef __cplusplus
  15. #define __cplusplus
  16. #endif
  17. #endif
  18.  
  19.  
  20. #ifdef __cplusplus
  21.  
  22. #include <stdlib.h>
  23. #include <unistd.h>
  24.  
  25. /* Use prototypes in function declarations. */
  26. #define YY_USE_PROTOS
  27.  
  28. /* The "const" storage-class-modifier is valid. */
  29. #define YY_USE_CONST
  30.  
  31. #else    /* ! __cplusplus */
  32.  
  33. #ifdef __STDC__
  34.  
  35. #define YY_USE_PROTOS
  36. #define YY_USE_CONST
  37.  
  38. #endif    /* __STDC__ */
  39. #endif    /* ! __cplusplus */
  40.  
  41.  
  42. #ifdef __TURBOC__
  43. #define YY_USE_CONST
  44. #endif
  45.  
  46.  
  47. #ifndef YY_USE_CONST
  48. #ifndef const
  49. #define const
  50. #endif
  51. #endif
  52.  
  53.  
  54. #ifdef YY_USE_PROTOS
  55. #define YY_PROTO(proto) proto
  56. #else
  57. #define YY_PROTO(proto) ()
  58. #endif
  59.  
  60. /* Returned upon end-of-file. */
  61. #define YY_NULL 0
  62.  
  63. /* Promotes a possibly negative, possibly signed char to an unsigned
  64.  * integer for use as an array index.  If the signed char is negative,
  65.  * we want to instead treat it as an 8-bit unsigned char, hence the
  66.  * double cast.
  67.  */
  68. #define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c)
  69.  
  70. /* Enter a start condition.  This macro really ought to take a parameter,
  71.  * but we do it the disgusting crufty way forced on us by the ()-less
  72.  * definition of BEGIN.
  73.  */
  74. #define BEGIN yy_start = 1 + 2 *
  75.  
  76. /* Translate the current start state into a value that can be later handed
  77.  * to BEGIN to return to the state.
  78.  */
  79. #define YY_START ((yy_start - 1) / 2)
  80.  
  81. /* Action number for EOF rule of a given start state. */
  82. #define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)
  83.  
  84. /* Special action meaning "start processing a new file".  Now included
  85.  * only for backward compatibility with previous versions of flex.
  86.  */
  87. #define YY_NEW_FILE yyrestart( yyin )
  88.  
  89. #define YY_END_OF_BUFFER_CHAR 0
  90.  
  91. /* Size of default input buffer. */
  92. #define YY_BUF_SIZE 16384
  93.  
  94. typedef struct yy_buffer_state *YY_BUFFER_STATE;
  95.  
  96. extern int yyleng;
  97. extern FILE *yyin, *yyout;
  98.  
  99. #ifdef __cplusplus
  100. extern "C" {
  101. #endif
  102.     extern int yywrap YY_PROTO(( void ));
  103. #ifdef __cplusplus
  104.     }
  105. #endif
  106.  
  107. #define EOB_ACT_CONTINUE_SCAN 0
  108. #define EOB_ACT_END_OF_FILE 1
  109. #define EOB_ACT_LAST_MATCH 2
  110.  
  111. /* The funky do-while in the following #define is used to turn the definition
  112.  * int a single C statement (which needs a semi-colon terminator).  This
  113.  * avoids problems with code like:
  114.  *
  115.  *     if ( condition_holds )
  116.  *        yyless( 5 );
  117.  *    else
  118.  *        do_something_else();
  119.  *
  120.  * Prior to using the do-while the compiler would get upset at the
  121.  * "else" because it interpreted the "if" statement as being all
  122.  * done when it reached the ';' after the yyless() call.
  123.  */
  124.  
  125. /* Return all but the first 'n' matched characters back to the input stream. */
  126.  
  127. #define yyless(n) \
  128.     do \
  129.         { \
  130.         /* Undo effects of setting up yytext. */ \
  131.         *yy_cp = yy_hold_char; \
  132.         yy_c_buf_p = yy_cp = yy_bp + n - YY_MORE_ADJ; \
  133.         YY_DO_BEFORE_ACTION; /* set up yytext again */ \
  134.         } \
  135.     while ( 0 )
  136.  
  137. #define unput(c) yyunput( c, yytext_ptr )
  138.  
  139.  
  140. struct yy_buffer_state
  141.     {
  142.     FILE *yy_input_file;
  143.  
  144.     char *yy_ch_buf;        /* input buffer */
  145.     char *yy_buf_pos;        /* current position in input buffer */
  146.  
  147.     /* Size of input buffer in bytes, not including room for EOB
  148.      * characters.
  149.      */
  150.     int yy_buf_size;
  151.  
  152.     /* Number of characters read into yy_ch_buf, not including EOB
  153.      * characters.
  154.      */
  155.     int yy_n_chars;
  156.  
  157.     /* Whether this is an "interactive" input source; if so, and
  158.      * if we're using stdio for input, then we want to use getc()
  159.      * instead of fread(), to make sure we stop fetching input after
  160.      * each newline.
  161.      */
  162.     int yy_is_interactive;
  163.  
  164.     /* Whether to try to fill the input buffer when we reach the
  165.      * end of it.
  166.      */
  167.     int yy_fill_buffer;
  168.  
  169.     int yy_buffer_status;
  170. #define YY_BUFFER_NEW 0
  171. #define YY_BUFFER_NORMAL 1
  172.     /* When an EOF's been seen but there's still some text to process
  173.      * then we mark the buffer as YY_EOF_PENDING, to indicate that we
  174.      * shouldn't try reading from the input source any more.  We might
  175.      * still have a bunch of tokens to match, though, because of
  176.      * possible backing-up.
  177.      *
  178.      * When we actually see the EOF, we change the status to "new"
  179.      * (via yyrestart()), so that the user can continue scanning by
  180.      * just pointing yyin at a new input file.
  181.      */
  182. #define YY_BUFFER_EOF_PENDING 2
  183.     };
  184.  
  185. static YY_BUFFER_STATE yy_current_buffer = 0;
  186.  
  187. /* We provide macros for accessing buffer states in case in the
  188.  * future we want to put the buffer states in a more general
  189.  * "scanner state".
  190.  */
  191. #define YY_CURRENT_BUFFER yy_current_buffer
  192.  
  193.  
  194. /* yy_hold_char holds the character lost when yytext is formed. */
  195. static char yy_hold_char;
  196.  
  197. static int yy_n_chars;        /* number of characters read into yy_ch_buf */
  198.  
  199.  
  200. int yyleng;
  201.  
  202. /* Points to current character in buffer. */
  203. static char *yy_c_buf_p = (char *) 0;
  204. static int yy_init = 1;        /* whether we need to initialize */
  205. static int yy_start = 0;    /* start state number */
  206.  
  207. /* Flag which is used to allow yywrap()'s to do buffer switches
  208.  * instead of setting up a fresh yyin.  A bit of a hack ...
  209.  */
  210. static int yy_did_buffer_switch_on_eof;
  211.  
  212. static void yyunput YY_PROTO(( int c, char *buf_ptr ));
  213. void yyrestart YY_PROTO(( FILE *input_file ));
  214. void yy_switch_to_buffer YY_PROTO(( YY_BUFFER_STATE new_buffer ));
  215. void yy_load_buffer_state YY_PROTO(( void ));
  216. YY_BUFFER_STATE yy_create_buffer YY_PROTO(( FILE *file, int size ));
  217. void yy_delete_buffer YY_PROTO(( YY_BUFFER_STATE b ));
  218. void yy_init_buffer YY_PROTO(( YY_BUFFER_STATE b, FILE *file ));
  219.  
  220. static int yy_start_stack_ptr = 0;
  221. static int yy_start_stack_depth = 0;
  222. static int *yy_start_stack = 0;
  223. static void yy_push_state YY_PROTO(( int new_state ));
  224. static void yy_pop_state YY_PROTO(( void ));
  225. static int yy_top_state YY_PROTO(( void ));
  226.  
  227. static void *yy_flex_alloc YY_PROTO(( unsigned int ));
  228. static void *yy_flex_realloc YY_PROTO(( void *, unsigned int ));
  229. static void yy_flex_free YY_PROTO(( void * ));
  230.  
  231. #define yy_new_buffer yy_create_buffer
  232.  
  233. #define INITIAL 0
  234. #define ascii_latin1 1
  235. #define html_latin1 2
  236. #define latex_latin1 3
  237. #define texte_latin1 4
  238. typedef unsigned char YY_CHAR;
  239. typedef int yy_state_type;
  240. FILE *yyin = (FILE *) 0, *yyout = (FILE *) 0;
  241. extern char *yytext;
  242. #define yytext_ptr yytext
  243.  
  244. #ifndef yytext_ptr
  245. static void yy_flex_strncpy YY_PROTO(( char *, const char *, int ));
  246. #endif
  247.  
  248. #ifdef __cplusplus
  249. static int yyinput YY_PROTO(( void ));
  250. #else
  251. static int input YY_PROTO(( void ));
  252. #endif
  253.  
  254. static yy_state_type yy_get_previous_state YY_PROTO(( void ));
  255. static yy_state_type yy_try_NUL_trans YY_PROTO(( yy_state_type current_state ));
  256. static int yy_get_next_buffer YY_PROTO(( void ));
  257. static void yy_fatal_error YY_PROTO(( const char msg[] ));
  258.  
  259. /* Done after the current pattern has been matched and before the
  260.  * corresponding action - sets up yytext.
  261.  */
  262. #define YY_DO_BEFORE_ACTION \
  263.     yytext_ptr = yy_bp; \
  264.     yyleng = yy_cp - yy_bp; \
  265.     yy_hold_char = *yy_cp; \
  266.     *yy_cp = '\0'; \
  267.     yy_c_buf_p = yy_cp;
  268.  
  269. #define YY_END_OF_BUFFER 274
  270. static const short int yy_accept[977] =
  271.     {   0,
  272.         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  273.       274,  273,  273,  273,  273,  273,  273,  273,  273,  273,
  274.       273,  273,  273,  273,  273,  273,  273,  273,  273,  273,
  275.       273,  273,  273,  273,  273,  273,  273,  273,  273,  273,
  276.       273,  273,  273,  273,  132,  273,  273,  273,  273,  273,
  277.       273,  273,  273,  273,  273,  273,  273,  273,  273,  273,
  278.       273,  273,    0,    0,    0,    0,    0,    0,    0,    0,
  279.         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  280.         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  281.         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  282.  
  283.         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  284.         0,  133,  148,  152,  135,  124,  125,  126,  127,  143,
  285.       146,  138,  212,  212,  175,  134,    0,  128,    0,  212,
  286.       212,  212,  212,  212,  212,  204,  212,  129,  130,    0,
  287.       136,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  288.         0,  214,    0,  216,  215,    0,    0,  226,  227,  223,
  289.         0,  236,  235,    0,    0,  242,  241,    0,  248,  247,
  290.       213,    0,  219,  218,    0,    0,  232,  233,  229,    0,
  291.       239,  238,    0,  245,  244,    0,  251,  250,    1,    2,
  292.         7,   12,   16,   22,   27,   34,   39,   43,   49,   29,
  293.  
  294.        54,   56,    4,   10,   14,   19,   25,   28,   31,   37,
  295.        41,   46,   52,   55,    8,   35,   23,   50,    5,    3,
  296.         6,   11,    9,   15,   13,   17,   20,   18,   21,   26,
  297.        24,   32,   38,   42,   47,   53,   30,   36,   40,   45,
  298.        51,   33,   44,   48,    0,    0,    0,    0,    0,    0,
  299.         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  300.         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  301.         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  302.         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  303.         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  304.  
  305.         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  306.         0,  157,  164,  168,  174,  179,    0,  186,  193,  203,
  307.       208,  210,    0,  154,  162,  166,  171,  177,  180,    0,
  308.       183,  191,  200,  206,  209,    0,  212,  158,  159,    0,
  309.       175,    0,  134,    0,  155,  163,  167,  172,  178,    0,
  310.       184,  192,  201,  207,    0,  153,  161,  165,  170,  176,
  311.         0,  182,  190,  199,  205,    0,  187,  188,  212,  212,
  312.       212,    0,  212,  212,  212,  204,    0,  181,  156,  169,
  313.       173,  185,  198,  202,    0,    0,    0,    0,    0,    0,
  314.         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  315.  
  316.       217,  221,  228,  225,  237,    0,  243,  249,  220,  222,
  317.       234,  231,  240,  246,  252,   66,    0,    0,    0,    0,
  318.         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  319.         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  320.         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  321.        98,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  322.         0,   59,    0,    0,    0,    0,   58,    0,    0,    0,
  323.         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  324.         0,    0,  197,    0,    0,    0,    0,    0,    0,    0,
  325.         0,    0,    0,    0,  195,    0,    0,    0,    0,    0,
  326.  
  327.         0,    0,    0,    0,    0,    0,    0,  158,    0,  159,
  328.         0,  212,  175,  134,  196,    0,    0,    0,    0,    0,
  329.         0,    0,    0,    0,    0,  194,    0,    0,    0,    0,
  330.         0,    0,    0,    0,    0,    0,  187,    0,  188,    0,
  331.       212,  160,  189,  212,    0,    0,  212,  212,  137,  204,
  332.       181,    0,    0,    0,    0,    0,    0,    0,  261,    0,
  333.         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  334.         0,    0,    0,    0,    0,    0,  224,    0,  230,    0,
  335.         0,    0,    0,    0,    0,    0,    0,   76,    0,    0,
  336.         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  337.  
  338.         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  339.         0,    0,    0,    0,   57,    0,    0,    0,    0,    0,
  340.         0,    0,  108,    0,    0,    0,    0,    0,    0,    0,
  341.         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  342.         0,    0,  197,  211,    0,    0,  195,    0,    0,  158,
  343.       159,  196,    0,    0,  194,    0,    0,  187,  188,  212,
  344.       212,  212,  212,  137,    0,  181,    0,    0,    0,    0,
  345.         0,    0,    0,    0,    0,  263,    0,    0,  267,    0,
  346.         0,    0,    0,    0,  266,    0,    0,    0,    0,    0,
  347.         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  348.  
  349.         0,   83,    0,    0,    0,    0,    0,    0,    0,    0,
  350.         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  351.         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  352.         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  353.         0,    0,    0,    0,    0,  211,    0,  197,  197,  195,
  354.       195,  196,  196,  194,  194,  212,  145,    0,    0,    0,
  355.       137,    0,    0,    0,    0,    0,    0,    0,  272,    0,
  356.         0,    0,    0,    0,    0,  269,    0,    0,    0,    0,
  357.         0,   65,    0,    0,  115,    0,    0,    0,    0,    0,
  358.         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  359.  
  360.        90,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  361.        97,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  362.         0,    0,    0,    0,    0,    0,    0,    0,    0,  122,
  363.         0,    0,    0,    0,    0,    0,  211,  212,    0,    0,
  364.         0,  255,    0,    0,  271,  254,    0,    0,    0,    0,
  365.       265,    0,    0,    0,  270,   61,   62,   64,   60,   63,
  366.        67,   69,   70,   71,   68,   73,   74,   75,   72,   77,
  367.        79,   80,   82,   78,    0,   81,   86,   87,   88,   85,
  368.        89,   93,   94,   96,   92,   95,   99,  101,  102,  103,
  369.       100,  105,  106,  107,  104,  109,  111,  112,  114,  110,
  370.  
  371.         0,  113,   91,  118,  119,  120,  117,  121,  123,  212,
  372.       150,  149,  151,    0,    0,    0,    0,  262,    0,  258,
  373.         0,    0,    0,    0,   84,  116,  212,  150,    0,  149,
  374.         0,  151,    0,    0,    0,    0,    0,    0,    0,  256,
  375.         0,    0,  264,  268,    0,    0,  131,  150,  149,  151,
  376.         0,    0,    0,    0,    0,    0,  253,  257,  259,  260,
  377.       131,    0,    0,    0,  147,  141,  142,    0,  131,  144,
  378.       140,    0,    0,    0,  139,    0
  379.     } ;
  380.  
  381. static const int yy_ec[256] =
  382.     {   0,
  383.         1,    1,    1,    1,    1,    1,    1,    2,    3,    1,
  384.         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
  385.         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
  386.         1,    3,    4,    5,    6,    7,    8,    9,   10,    1,
  387.         1,    1,    1,   11,   12,    1,   13,    1,   14,   15,
  388.        16,   17,    1,    1,    1,    1,    1,   18,   19,   20,
  389.         1,   21,   22,    1,   23,   24,   25,   26,   27,   28,
  390.        29,   30,   31,   32,   28,   33,   34,   35,   36,   28,
  391.        28,   37,   38,   39,   40,   41,   28,   28,   42,   28,
  392.         1,   43,    1,   44,   45,   46,   47,   48,   49,   50,
  393.  
  394.        51,   52,   53,   54,   55,   32,   56,   57,   58,   59,
  395.        60,   61,   28,   62,   63,   64,   65,   66,   28,   67,
  396.        68,   28,   69,    1,   70,   71,    1,    1,    1,    1,
  397.         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
  398.         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
  399.         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
  400.         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
  401.         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
  402.         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
  403.         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
  404.  
  405.         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
  406.         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
  407.         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
  408.         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
  409.         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
  410.         1,    1,    1,    1,    1
  411.     } ;
  412.  
  413. static const int yy_meta[72] =
  414.     {   0,
  415.         1,    1,    2,    1,    1,    1,    1,    1,    1,    1,
  416.         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
  417.         1,    1,    3,    3,    3,    3,    3,    3,    3,    3,
  418.         3,    3,    3,    3,    3,    3,    3,    3,    3,    3,
  419.         3,    3,    1,    1,    1,    1,    3,    3,    3,    3,
  420.         3,    3,    3,    3,    3,    3,    3,    3,    3,    3,
  421.         3,    3,    3,    3,    3,    3,    3,    3,    2,    1,
  422.         1
  423.     } ;
  424.  
  425. static const short int yy_base[990] =
  426.     {   0,
  427.         0,    0,    0,    0, 1309, 1308,    2,   48,  119,    0,
  428.      1316, 1319, 1313, 1312, 1311, 1310, 1309, 1308, 1307, 1306,
  429.      1305, 1304, 1303, 1302, 1301, 1300, 1299, 1298, 1297, 1296,
  430.      1295, 1294, 1293, 1292, 1291, 1290, 1289, 1288,  168, 1279,
  431.      1278, 1277,  232, 1240, 1319,  281, 1275,   10, 1273,   56,
  432.        32, 1273,   57,   62,    0, 1236,   67, 1270,   72,  204,
  433.       208,  304,  331,  377,    4,   21, 1275, 1274,  313, 1267,
  434.       201,  328, 1206,  351,  337, 1266,  378,  400,  402, 1264,
  435.       406,  410, 1203,  448, 1268,  425,    4,  330,  417, 1223,
  436.      1240,  433,   39, 1230, 1205,   46, 1238,  290, 1220,  438,
  437.  
  438.      1217,  448, 1201,  326, 1200, 1199,  457, 1199, 1207,  464,
  439.        37, 1319, 1319, 1319,  499, 1319, 1319, 1319, 1319,  546,
  440.      1319, 1319,  365,    0,   14,   29,  593, 1319,  640,  487,
  441.       446,  352,   35,  436,  318,   36,  460, 1319, 1319,  501,
  442.      1319,   57, 1209,  145,  134, 1199, 1211, 1198,  149,  158,
  443.      1189, 1319,    0, 1319, 1319,  518,    0, 1245, 1319, 1319,
  444.         0, 1319, 1319,  206,    0, 1319, 1319,    0, 1319, 1319,
  445.      1319,    0, 1319, 1319,  540,    0, 1244, 1319, 1319,    0,
  446.      1319, 1319,    0, 1319, 1319,    0, 1319, 1319, 1319, 1319,
  447.      1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319,
  448.  
  449.      1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319,
  450.      1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319,
  451.      1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319,
  452.      1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319,
  453.      1319, 1319, 1319, 1319, 1234, 1203, 1196, 1195, 1187, 1193,
  454.      1192, 1195, 1204, 1214, 1194, 1187, 1186, 1178, 1190, 1183,
  455.      1182, 1174, 1202, 1179, 1184, 1177, 1176, 1168, 1165, 1173,
  456.      1191, 1177, 1170, 1169, 1161, 1173, 1172, 1165, 1164, 1199,
  457.      1155, 1155, 1160, 1159, 1162, 1163, 1156, 1155, 1147, 1154,
  458.      1188, 1157, 1150, 1149, 1141, 1183, 1146, 1151, 1144, 1143,
  459.  
  460.      1135, 1132, 1140, 1140, 1133, 1143, 1136, 1135, 1127, 1139,
  461.      1132, 1319, 1319, 1319, 1319, 1319, 1131, 1319, 1319, 1319,
  462.      1319, 1319,  687, 1319, 1319, 1319, 1319, 1319, 1319, 1130,
  463.      1319, 1319, 1319, 1319, 1319,  733,   38,  246,  248, 1114,
  464.       272, 1113,  311, 1112, 1319, 1319, 1319, 1319, 1319, 1126,
  465.      1319, 1319, 1319, 1319,  594, 1319, 1319, 1319, 1319, 1319,
  466.      1125, 1319, 1319, 1319, 1319,  595,  324,  357,  459,  506,
  467.       456,  300,  471,  530,  474,  407, 1109,  475, 1319, 1319,
  468.      1319, 1319, 1319, 1319,  549,  548, 1130, 1114, 1117, 1122,
  469.      1115, 1126, 1117, 1116, 1115, 1109,   59,  168, 1121, 1111,
  470.  
  471.      1319, 1319, 1319, 1156, 1319,  276, 1319, 1319, 1319, 1319,
  472.      1319, 1155, 1319, 1319, 1319, 1319, 1099, 1101, 1115, 1114,
  473.      1101, 1102, 1108, 1126, 1137, 1090, 1092, 1106, 1105, 1086,
  474.      1088, 1102, 1101, 1108, 1089, 1080, 1082, 1096, 1095, 1079,
  475.      1083, 1102, 1073, 1075, 1089, 1088, 1069, 1068, 1070, 1084,
  476.      1319, 1083, 1110, 1069, 1070, 1076, 1060, 1062, 1076, 1075,
  477.      1102, 1319, 1055, 1057, 1071, 1070, 1319, 1059, 1050, 1052,
  478.      1066, 1065, 1049, 1053, 1062, 1046, 1042, 1044, 1058, 1057,
  479.      1038, 1055,  529, 1031, 1030, 1029, 1028, 1027, 1041, 1025,
  480.      1024, 1023, 1022, 1021,  544, 1020, 1019, 1018, 1017, 1016,
  481.  
  482.      1015, 1029, 1013, 1012, 1011, 1010, 1009,  554, 1008,  559,
  483.      1007, 1319, 1319, 1319,  578, 1006, 1005, 1004, 1003, 1002,
  484.      1016, 1000,  999,  998,  997,  588,  996,  995,  994,  993,
  485.       992, 1006,  990,  989,  988,  987,  592,  986,  599,  985,
  486.       600, 1319, 1319,  601,  984,  983,  624,  629,  609, 1319,
  487.       616,  982,  981,  980,  979,  978,  977,  976, 1319,  980,
  488.       989,  996,  982,  976,  171,  975,  986,   25,  308,  973,
  489.       380,  972,  989,  988,  979,  986, 1319,  574, 1319,  968,
  490.       982,  979,  963,  975,  977,  971,  987, 1319,  960,  974,
  491.       971,  955,  956,  970,  967,  951,  997,  965,  950,  964,
  492.  
  493.       961,  945,  950,  959,  973,  943,  957,  954,  938,  939,
  494.       938,  952,  949,  933, 1319,  945,  947,  941,  931,  945,
  495.       942,  926, 1319,  927,  941,  938,  922,  937,  922,  936,
  496.       933,  917,  922,  931,  918,  920,  914,  928,  925,  909,
  497.       910,  922,  646,  647,  902,  901,  648,  900,  899, 1319,
  498.      1319,  663,  898,  897,  671,  896,  895, 1319, 1319,  672,
  499.       676,  674,  679,  681,  894, 1319,  912,  909,  906,  909,
  500.       908,  911,  902,  589,  891, 1319,  899,  899, 1319,  891,
  501.       897,  896,  634,  895, 1319,  898,  883,  885,  895,  926,
  502.       893,  886,  923,  890,  875,  877,  887,  886,  871,  873,
  503.  
  504.       883, 1319,  882,  881,  866,  868,  878,  872,  876,  907,
  505.       874,  859,  861,  871,  870,  869,  854,  856,  866,  897,
  506.       864,  857,  862,  847,  849,  859,  858,  843,  845,  855,
  507.       854,  853,  838,  840,  850,  844,  848,  837,  878,  845,
  508.       830,  832,  842,  841,  829,  689,  820, 1319, 1319, 1319,
  509.      1319, 1319, 1319, 1319, 1319,  692,  694,  876,  875,    9,
  510.      1319,  676,  822,  833,  681,  684,  830,  831, 1319,  832,
  511.       835,  701,  834,  827,  826, 1319,  702,  859,  858,  857,
  512.       856, 1319,  855,  854, 1319,  853,  852,  851,  850,  849,
  513.       848,  847,  846,  845,  844,  843,  842,  841,  808,  839,
  514.  
  515.      1319,  838,  837,  836,  835,  834,  833,  832,  831,  830,
  516.      1319,  829,  828,  827,  826,  825,  824,  823,  822,  821,
  517.       820,  819,  818,  817,  816,  815,  782,  813,  812, 1319,
  518.       811,  810,  809,  800,  799,  797, 1319,  710,  534,  798,
  519.       660, 1319,  763,  748, 1319, 1319,  703,  746,  706,  754,
  520.      1319,    9,  133,  155, 1319, 1319, 1319, 1319, 1319, 1319,
  521.      1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319,
  522.      1319, 1319, 1319, 1319,  215, 1319, 1319, 1319, 1319, 1319,
  523.      1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319,
  524.      1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319,
  525.  
  526.       227, 1319, 1319, 1319, 1319, 1319, 1319, 1319, 1319,  709,
  527.       698,  719,  722,  345,  767,  721,  265, 1319,  273, 1319,
  528.       724,  726,  295,  312, 1319, 1319,  733,  725,  371,  730,
  529.       387,  743,  398,  410,  441,  496,  538,  545,  522, 1319,
  530.       748,  772, 1319, 1319,  787,  790,  748, 1319, 1319, 1319,
  531.       567,  603,  573,  578,  594,  617, 1319, 1319, 1319, 1319,
  532.       751,  689,  692,  695, 1319, 1319, 1319,  706, 1319, 1319,
  533.      1319,  721,  764,  704, 1319, 1319,  820,  822,  782,  783,
  534.       786,  793,  794,  797,  800,  801,  803,  804,  824
  535.     } ;
  536.  
  537. static const short int yy_def[990] =
  538.     {   0,
  539.       977,  977,  977,    3,  977,  977,  977,  977,  976,    9,
  540.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  541.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  542.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  543.       976,  976,  976,  976,  976,  976,   46,  976,  976,  976,
  544.       976,  976,  976,  976,   46,   46,  976,  976,  976,  976,
  545.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  546.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  547.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  548.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  549.  
  550.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  551.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  552.       976,  976,  978,  978,  978,  978,  976,  976,  976,  978,
  553.       978,  978,  978,  978,  978,  978,  978,  976,  976,  976,
  554.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  555.       976,  976,  979,  976,  976,  976,  980,  976,  976,  976,
  556.       981,  976,  976,  976,  982,  976,  976,  983,  976,  976,
  557.       976,  984,  976,  976,  976,  985,  976,  976,  976,  986,
  558.       976,  976,  987,  976,  976,  988,  976,  976,  976,  976,
  559.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  560.  
  561.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  562.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  563.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  564.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  565.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  566.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  567.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  568.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  569.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  570.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  571.  
  572.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  573.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  574.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  575.       976,  976,  976,  976,  976,  976,  976,  978,  978,  976,
  576.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  577.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  578.       976,  976,  976,  976,  976,  976,  978,  978,  978,  976,
  579.       978,  976,  978,  978,  978,  976,  976,  978,  976,  976,
  580.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  581.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  582.  
  583.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  584.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  585.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  586.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  587.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  588.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  589.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  590.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  591.       976,  976,  989,  976,  976,  976,  976,  976,  976,  976,
  592.       976,  976,  976,  976,  989,  976,  976,  976,  976,  976,
  593.  
  594.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  595.       976,  976,  976,  976,  989,  976,  976,  976,  976,  976,
  596.       976,  976,  976,  976,  976,  989,  976,  976,  976,  976,
  597.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  598.       978,  976,  976,  978,  976,  976,  978,  978,  978,  976,
  599.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  600.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  601.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  602.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  603.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  604.  
  605.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  606.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  607.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  608.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  609.       976,  976,  976,  989,  976,  976,  976,  976,  976,  976,
  610.       976,  976,  976,  976,  976,  976,  976,  976,  976,  978,
  611.       978,  978,  978,  976,  976,  976,  976,  976,  976,  976,
  612.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  613.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  614.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  615.  
  616.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  617.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  618.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  619.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  620.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  621.       976,  976,  976,  976,  976,  978,  978,  976,  976,  976,
  622.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  623.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  624.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  625.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  626.  
  627.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  628.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  629.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  630.       976,  976,  976,  976,  976,  976,  976,  978,  976,  976,
  631.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  632.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  633.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  634.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  635.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  636.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  637.  
  638.       976,  976,  976,  976,  976,  976,  976,  976,  976,  978,
  639.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  640.       976,  976,  976,  976,  976,  976,  978,  976,  976,  976,
  641.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  642.       976,  976,  976,  976,  976,  976,  978,  976,  976,  976,
  643.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  644.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  645.       976,  976,  976,  976,  976,    0,  976,  976,  976,  976,
  646.       976,  976,  976,  976,  976,  976,  976,  976,  976
  647.     } ;
  648.  
  649. static const short int yy_nxt[1391] =
  650.     {   0,
  651.       976,  976,  337,  976,   13,   40,  976,  976,  202,   14,
  652.        15,   41,   16,  214,  153,  841,  341,  976,  976,   17,
  653.        18,  976,   19,   42,   20,  976,   21,  153,  215,  676,
  654.        22,  343,  976,  976,   23,   24,  161,  337,  376,   25,
  655.       337,   26,  676,   27,   43,   28,   29,   44,   30,  161,
  656.        31,   40,  216,  154,   32,  155,  217,   41,   33,   34,
  657.       157,  165,   35,  922,   36,  158,  168,   37,  340,   42,
  658.        38,  172,   45,  157,  165,  162,  176,  163,  512,  168,
  659.       218,  177,  342,  310,  172,  259,  311,  260,  261,  176,
  660.        43,  262,  265,   44,  266,  267,  373,  344,  268,  159,
  661.  
  662.       166,  160,  167,  340,  377,  169,  340,  170,  269,  270,
  663.       173,  386,  174,  571,  387,  178,  572,  179,   45,   46,
  664.        46,   46,   46,   46,   46,   46,   46,   46,   47,   46,
  665.        46,   46,   46,   46,   46,   46,   46,   46,   46,   46,
  666.        46,   48,   12,   49,   12,   50,   12,   12,   12,   51,
  667.        52,   52,   12,   12,   53,   12,   12,   52,   54,   12,
  668.        12,   46,   55,   46,   56,   57,   12,   58,   12,   59,
  669.        12,   12,   12,   60,   12,   52,   12,   12,   61,   12,
  670.        12,   12,   52,   62,   12,   12,   12,   46,   46,   46,
  671.        89,  389,   90,   91,   92,  397,  392,  923,   93,  390,
  672.  
  673.       393,   94,   95,   96,  391,  192,   97,   98,  180,   99,
  674.       204,  399,  183,  398,  100,  573,  101,  400,  102,  924,
  675.       103,  180,  104,  672,  105,  183,  106,  107,  406,  574,
  676.       108,  109,  110,  925,  673,  111,  115,  116,  117,  118,
  677.       119,  120,  121,  122,  222,  926,  223,  181,  508,  182,
  678.       510,  184,  406,  185,  123,  124,  124,  124,  124,  124,
  679.       124,  124,  124,  124,  124,  124,  124,  125,  124,  126,
  680.       124,  124,  124,  124,  341,  127,  128,  129,  130,  131,
  681.       132,  124,  124,  133,  124,  124,  124,  124,  124,  134,
  682.       135,  136,  124,  124,  137,  124,  124,  124,  124,  124,
  683.  
  684.       138,  139,  140,  142,  143,  144,  578,  145,  186,  146,
  685.       147,  148,  677,  343,  509,  941,  511,  191,  149,  150,
  686.       337,  186,  203,  942,  545,  677,  537,  142,  143,  144,
  687.       578,  151,  193,  146,  147,  148,  272,  205,  273,  274,
  688.       342,  195,  275,  149,  150,  945,  207,  187,  546,  188,
  689.       189,  190,  221,  191,  370,  194,  219,  192,  220,  539,
  690.       206,  193,  946,  217,  226,  229,  194,  337,  375,  512,
  691.       195,  224,  292,  225,  293,  294,  242,  196,  295,  344,
  692.       230,  197,  231,  221,  679,  198,  340,  338,  243,  244,
  693.       199,  339,  538,  200,  227,  201,  228,  679,  202,  203,
  694.  
  695.       219,  371,  934,  204,  222,  935,  196,  205,  224,  376,
  696.       197,  209,  206,  227,  198,  210,  207,  230,  208,  211,
  697.       372,  229,  220,  209,  232,  540,  223,  210,  233,  201,
  698.       225,  211,  234,  340,  213,  228,  212,  235,  337,  231,
  699.       948,  213,  236,  245,  214,  232,  237,  237,  337,  233,
  700.       238,  238,  199,  234,  239,  239,  949,  212,  337,  240,
  701.       218,  337,  337,  246,  241,  247,  248,  950,  236,  249,
  702.       241,  254,  242,  337,  951,  377,  337,  551,  250,  255,
  703.       251,  256,  257,  374,  277,  258,  278,  279,  280,  337,
  704.       281,  235,  369,  240,  286,  282,  287,  288,  952,  283,
  705.  
  706.       289,  284,  953,  298,  340,  299,  300,  541,  370,  301,
  707.       306,  290,  307,  308,  340,  544,  309,  547,  244,  302,
  708.       303,  312,  378,  379,  340,  313,  549,  340,  340,  314,
  709.       542,  643,  337,  367,  315,  380,  381,  368,  316,  340,
  710.       402,  317,  340,  552,  954,  318,  647,  382,  911,  319,
  711.       912,  955,  559,  402,  543,  340,  508,  402,  320,  383,
  712.       384,  510,  410,  321,  402,  559,  322,  323,  324,  385,
  713.       956,  553,  325,  963,  340,  410,  326,  402,  685,  410,
  714.       652,  327,  402,  554,  555,  328,  410,  329,  330,  548,
  715.       655,  685,  331,  769,  537,  556,  332,  645,  340,  410,
  716.  
  717.       560,  539,  337,  337,  410,  333,  769,  557,  558,  964,
  718.       334,  664,  648,  335,  336,  345,  516,  527,  551,  346,
  719.       517,  528,  509,  347,  518,  529,  337,  511,  348,  519,
  720.       530,  337,  349,  520,  531,  350,  521,  532,  776,  351,
  721.       522,  533,  965,  352,  523,  534,  653,  966,  643,  746,
  722.       647,  776,  353,  524,  535,  660,  656,  354,  525,  536,
  723.       538,  355,  356,  967,  661,  652,  357,  540,  340,  340,
  724.       358,  968,  662,  655,  337,  359,  337,  665,  337,  360,
  725.       842,  337,  361,  664,  552,  845,  362,  758,  846,  759,
  726.       363,  746,  340,  842,  337,  663,  337,  340,  845,  364,
  727.  
  728.       928,  846,  914,  915,  365,  851,  855,  918,  366,  484,
  729.       920,  337,  337,  485,  645,  747,  648,  486,  851,  855,
  730.       918,  930,  487,  920,  932,  940,  488,  928,  943,  489,
  731.       944,  653,  930,  490,  756,  337,  757,  491,  940,  656,
  732.       340,  943,  340,  944,  340,  932,  492,  760,  838,  665,
  733.       961,  493,  957,  961,  494,  496,  910,  747,  969,  497,
  734.       340,  970,  340,  498,  971,  957,  929,  972,  499,  973,
  735.       974,  927,  500,  975,  501,  502,  958,  340,  340,  503,
  736.       936,  937,  938,  504,  401,  403,  947,  931,  405,  958,
  737.       933,  959,  505,  929,  960,  407,  408,  506,  931,  409,
  738.  
  739.       507,  340,  411,  413,  959,  414,  415,  960,  921,  939,
  740.       919,  933,  917,  916,  913,  909,  962,  908,  907,  962,
  741.        12,   12,   12,  124,  124,  644,  644,  906,  905,  904,
  742.       903,  902,  901,  900,  899,  898,  897,  896,  895,  894,
  743.       893,  892,  891,  890,  889,  888,  887,  886,  885,  884,
  744.       883,  882,  881,  880,  879,  878,  877,  876,  875,  874,
  745.       873,  872,  871,  870,  869,  868,  867,  866,  865,  864,
  746.       863,  862,  861,  860,  859,  858,  857,  856,  854,  853,
  747.       852,  850,  849,  848,  847,  844,  843,  840,  839,  837,
  748.       836,  835,  834,  833,  832,  831,  830,  829,  828,  827,
  749.  
  750.       826,  825,  824,  823,  822,  821,  820,  819,  818,  817,
  751.       816,  815,  814,  813,  812,  811,  810,  809,  808,  807,
  752.       806,  805,  804,  803,  802,  801,  800,  799,  798,  797,
  753.       796,  795,  794,  793,  792,  791,  790,  789,  788,  787,
  754.       786,  785,  784,  783,  782,  781,  780,  779,  778,  777,
  755.       775,  774,  773,  772,  771,  770,  768,  767,  766,  765,
  756.       764,  763,  762,  761,  755,  754,  753,  752,  751,  750,
  757.       749,  748,  745,  744,  743,  742,  741,  740,  739,  738,
  758.       737,  736,  735,  734,  733,  732,  731,  730,  729,  728,
  759.       727,  726,  725,  724,  723,  722,  721,  720,  719,  718,
  760.  
  761.       717,  716,  715,  714,  713,  712,  711,  710,  709,  708,
  762.       707,  706,  705,  704,  703,  702,  701,  700,  699,  698,
  763.       697,  696,  695,  694,  693,  692,  691,  690,  689,  688,
  764.       687,  686,  684,  683,  682,  681,  680,  678,  675,  674,
  765.       671,  670,  669,  668,  667,  384,  383,  382,  381,  380,
  766.       379,  666,  543,  542,  659,  658,  365,  364,  363,  362,
  767.       657,  360,  359,  358,  357,  356,  354,  353,  352,  351,
  768.       654,  349,  348,  347,  346,  345,  651,  650,  335,  334,
  769.       333,  332,  331,  649,  329,  328,  327,  326,  325,  324,
  770.       322,  321,  320,  319,  318,  646,  316,  315,  314,  313,
  771.  
  772.       312,  642,  641,  640,  639,  638,  637,  636,  635,  634,
  773.       633,  632,  631,  630,  629,  628,  627,  626,  625,  624,
  774.       623,  622,  621,  620,  619,  618,  617,  616,  615,  614,
  775.       613,  612,  611,  610,  609,  608,  607,  606,  605,  604,
  776.       603,  602,  601,  600,  599,  598,  597,  596,  595,  594,
  777.       593,  592,  591,  590,  589,  588,  587,  586,  585,  584,
  778.       583,  582,  581,  580,  579,  577,  576,  575,  570,  569,
  779.       568,  567,  566,  565,  564,  563,  562,  561,  550,  526,
  780.       515,  514,  513,  512,  495,  483,  482,  481,  480,  479,
  781.       478,  477,  476,  475,  474,  473,  472,  471,  470,  469,
  782.  
  783.       468,  467,  466,  465,  464,  463,  462,  461,  460,  459,
  784.       458,  457,  456,  455,  454,  453,  452,  451,  450,  449,
  785.       448,  447,  446,  445,  444,  443,  442,  441,  440,  439,
  786.       438,  437,  436,  435,  434,  433,  432,  431,  430,  429,
  787.       428,  427,  426,  425,  424,  423,  422,  421,  420,  419,
  788.       418,  417,  416,  412,  404,  393,  396,  395,  394,  388,
  789.       305,  304,  297,  296,  291,  285,  276,  271,  264,  263,
  790.       253,  252,  200,  243,  216,  208,  226,  215,  190,  189,
  791.       175,  171,  164,  156,  152,  141,  114,  113,  112,   88,
  792.        87,   86,   85,   84,   83,   82,   81,   80,   79,   78,
  793.  
  794.        77,   76,   75,   74,   73,   72,   71,   70,   69,   68,
  795.        67,   66,   65,   64,   63,  976,   39,   39,   11,  976,
  796.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  797.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  798.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  799.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  800.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  801.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  802.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976
  803.     } ;
  804.  
  805. static const short int yy_chk[1391] =
  806.     {   0,
  807.         0,    0,  124,    0,    3,    7,    0,    0,   87,    3,
  808.         3,    7,    3,   87,   48,  760,  125,    0,    0,    3,
  809.         3,    0,    3,    7,    3,    0,    3,   48,   65,  568,
  810.         3,  126,    0,    0,    3,    3,   51,  133,  136,    3,
  811.       337,    3,  568,    3,    7,    3,    3,    7,    3,   51,
  812.         3,    8,   65,   48,    3,   48,   66,    8,    3,    3,
  813.        50,   53,    3,  852,    3,   50,   54,    3,  124,    8,
  814.         3,   57,    7,   50,   53,   51,   59,   51,  760,   54,
  815.        66,   59,  125,  111,   57,   93,  111,   93,   93,   59,
  816.         8,   93,   96,    8,   96,   96,  133,  126,   96,   50,
  817.  
  818.        53,   50,   53,  133,  136,   54,  337,   54,   96,   96,
  819.        57,  142,   57,  397,  142,   59,  397,   59,    8,    9,
  820.         9,    9,    9,    9,    9,    9,    9,    9,    9,    9,
  821.         9,    9,    9,    9,    9,    9,    9,    9,    9,    9,
  822.         9,    9,    9,    9,    9,    9,    9,    9,    9,    9,
  823.         9,    9,    9,    9,    9,    9,    9,    9,    9,    9,
  824.         9,    9,    9,    9,    9,    9,    9,    9,    9,    9,
  825.         9,    9,    9,    9,    9,    9,    9,    9,    9,    9,
  826.         9,    9,    9,    9,    9,    9,    9,    9,    9,    9,
  827.        39,  144,   39,   39,   39,  149,  145,  853,   39,  144,
  828.  
  829.       145,   39,   39,   39,  144,   71,   39,   39,   60,   39,
  830.        71,  150,   61,  149,   39,  398,   39,  150,   39,  854,
  831.        39,   60,   39,  565,   39,   61,   39,   39,  164,  398,
  832.        39,   39,   39,  875,  565,   39,   43,   43,   43,   43,
  833.        43,   43,   43,   43,   71,  901,   71,   60,  338,   60,
  834.       339,   61,  164,   61,   43,   43,   43,   43,   43,   43,
  835.        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
  836.        43,   43,   43,   43,  341,   43,   43,   43,   43,   43,
  837.        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
  838.        43,   43,   43,   43,   43,   43,   43,   43,   43,   43,
  839.  
  840.        43,   43,   43,   46,   46,   46,  406,   46,   62,   46,
  841.        46,   46,  569,  343,  338,  917,  339,   69,   46,   46,
  842.       135,   62,   69,  919,  372,  569,  367,   46,   46,   46,
  843.       406,   46,   72,   46,   46,   46,   98,   72,   98,   98,
  844.       341,   75,   98,   46,   46,  923,   75,   62,  372,   62,
  845.        63,   63,   88,   63,  132,   74,   69,   63,   69,  368,
  846.        74,   63,  924,   74,   88,   88,   63,  123,  135,  372,
  847.        63,   72,  104,   72,  104,  104,   88,   63,  104,  343,
  848.        75,   63,   75,   69,  571,   63,  135,  123,   88,   88,
  849.        63,  123,  367,   63,   74,   63,   74,  571,   63,   64,
  850.  
  851.        77,  132,  914,   64,   77,  914,   79,   64,   77,  376,
  852.        81,   79,   64,   77,   82,   81,   64,   77,   64,   82,
  853.       132,   74,   78,   64,   77,  368,   78,   64,   77,   86,
  854.        78,   64,   77,  123,   86,   78,   64,   77,  134,   78,
  855.       929,   64,   77,   89,   64,   79,   78,   79,  131,   81,
  856.        78,   81,   84,   82,   78,   82,  931,   84,  371,   78,
  857.        84,  369,  137,   89,   78,   89,   89,  933,   86,   89,
  858.        86,   92,   79,  373,  934,  376,  375,  378,   89,   92,
  859.        89,   92,   92,  134,  100,   92,  100,  100,  100,  130,
  860.       100,   84,  131,   84,  102,  100,  102,  102,  935,  100,
  861.  
  862.       102,  100,  936,  107,  134,  107,  107,  369,  370,  107,
  863.       110,  102,  110,  110,  131,  371,  110,  373,   84,  107,
  864.       107,  115,  137,  140,  371,  115,  375,  369,  137,  115,
  865.       370,  483,  374,  130,  115,  140,  140,  130,  115,  373,
  866.       156,  115,  375,  378,  937,  115,  495,  140,  839,  115,
  867.       839,  938,  386,  156,  370,  130,  508,  156,  115,  140,
  868.       140,  510,  175,  115,  156,  386,  115,  115,  120,  140,
  869.       939,  385,  120,  951,  370,  175,  120,  156,  578,  175,
  870.       515,  120,  156,  385,  385,  120,  175,  120,  120,  374,
  871.       526,  578,  120,  674,  537,  385,  120,  483,  374,  175,
  872.  
  873.       386,  539,  541,  544,  175,  120,  674,  385,  385,  952,
  874.       120,  549,  495,  120,  120,  127,  355,  366,  551,  127,
  875.       355,  366,  508,  127,  355,  366,  547,  510,  127,  355,
  876.       366,  548,  127,  355,  366,  127,  355,  366,  683,  127,
  877.       355,  366,  953,  127,  355,  366,  515,  954,  643,  644,
  878.       647,  683,  127,  355,  366,  541,  526,  127,  355,  366,
  879.       537,  127,  129,  955,  544,  652,  129,  539,  541,  544,
  880.       129,  956,  547,  655,  660,  129,  662,  549,  661,  129,
  881.       762,  663,  129,  664,  551,  765,  129,  662,  766,  662,
  882.       129,  746,  547,  762,  756,  548,  757,  548,  765,  129,
  883.  
  884.       911,  766,  841,  841,  129,  772,  777,  847,  129,  323,
  885.       849,  910,  838,  323,  643,  644,  647,  323,  772,  777,
  886.       847,  912,  323,  849,  913,  916,  323,  928,  921,  323,
  887.       922,  652,  930,  323,  660,  927,  661,  323,  916,  655,
  888.       660,  921,  662,  922,  661,  932,  323,  663,  756,  664,
  889.       947,  323,  941,  961,  323,  336,  838,  746,  962,  336,
  890.       756,  963,  757,  336,  964,  941,  911,  968,  336,  972,
  891.       973,  910,  336,  974,  336,  336,  942,  910,  838,  336,
  892.       915,  915,  915,  336,  979,  980,  927,  912,  981,  942,
  893.       913,  945,  336,  928,  946,  982,  983,  336,  930,  984,
  894.  
  895.       336,  927,  985,  986,  945,  987,  988,  946,  850,  915,
  896.       848,  932,  844,  843,  840,  836,  947,  835,  834,  961,
  897.       977,  977,  977,  978,  978,  989,  989,  833,  832,  831,
  898.       829,  828,  827,  826,  825,  824,  823,  822,  821,  820,
  899.       819,  818,  817,  816,  815,  814,  813,  812,  810,  809,
  900.       808,  807,  806,  805,  804,  803,  802,  800,  799,  798,
  901.       797,  796,  795,  794,  793,  792,  791,  790,  789,  788,
  902.       787,  786,  784,  783,  781,  780,  779,  778,  775,  774,
  903.       773,  771,  770,  768,  767,  764,  763,  759,  758,  747,
  904.       745,  744,  743,  742,  741,  740,  739,  738,  737,  736,
  905.  
  906.       735,  734,  733,  732,  731,  730,  729,  728,  727,  726,
  907.       725,  724,  723,  722,  721,  720,  719,  718,  717,  716,
  908.       715,  714,  713,  712,  711,  710,  709,  708,  707,  706,
  909.       705,  704,  703,  701,  700,  699,  698,  697,  696,  695,
  910.       694,  693,  692,  691,  690,  689,  688,  687,  686,  684,
  911.       682,  681,  680,  678,  677,  675,  673,  672,  671,  670,
  912.       669,  668,  667,  665,  657,  656,  654,  653,  649,  648,
  913.       646,  645,  642,  641,  640,  639,  638,  637,  636,  635,
  914.       634,  633,  632,  631,  630,  629,  628,  627,  626,  625,
  915.       624,  622,  621,  620,  619,  618,  617,  616,  614,  613,
  916.  
  917.       612,  611,  610,  609,  608,  607,  606,  605,  604,  603,
  918.       602,  601,  600,  599,  598,  597,  596,  595,  594,  593,
  919.       592,  591,  590,  589,  587,  586,  585,  584,  583,  582,
  920.       581,  580,  576,  575,  574,  573,  572,  570,  567,  566,
  921.       564,  563,  562,  561,  560,  558,  557,  556,  555,  554,
  922.       553,  552,  546,  545,  540,  538,  536,  535,  534,  533,
  923.       532,  531,  530,  529,  528,  527,  525,  524,  523,  522,
  924.       521,  520,  519,  518,  517,  516,  511,  509,  507,  506,
  925.       505,  504,  503,  502,  501,  500,  499,  498,  497,  496,
  926.       494,  493,  492,  491,  490,  489,  488,  487,  486,  485,
  927.  
  928.       484,  482,  481,  480,  479,  478,  477,  476,  475,  474,
  929.       473,  472,  471,  470,  469,  468,  466,  465,  464,  463,
  930.       461,  460,  459,  458,  457,  456,  455,  454,  453,  452,
  931.       450,  449,  448,  447,  446,  445,  444,  443,  442,  441,
  932.       440,  439,  438,  437,  436,  435,  434,  433,  432,  431,
  933.       430,  429,  428,  427,  426,  425,  424,  423,  422,  421,
  934.       420,  419,  418,  417,  412,  404,  400,  399,  396,  395,
  935.       394,  393,  392,  391,  390,  389,  388,  387,  377,  361,
  936.       350,  344,  342,  340,  330,  317,  311,  310,  309,  308,
  937.       307,  306,  305,  304,  303,  302,  301,  300,  299,  298,
  938.  
  939.       297,  296,  295,  294,  293,  292,  291,  290,  289,  288,
  940.       287,  286,  285,  284,  283,  282,  281,  280,  279,  278,
  941.       277,  276,  275,  274,  273,  272,  271,  270,  269,  268,
  942.       267,  266,  265,  264,  263,  262,  261,  260,  259,  258,
  943.       257,  256,  255,  254,  253,  252,  251,  250,  249,  248,
  944.       247,  246,  245,  177,  158,  151,  148,  147,  146,  143,
  945.       109,  108,  106,  105,  103,  101,   99,   97,   95,   94,
  946.        91,   90,   85,   83,   80,   76,   73,   70,   68,   67,
  947.        58,   56,   52,   49,   47,   44,   42,   41,   40,   38,
  948.        37,   36,   35,   34,   33,   32,   31,   30,   29,   28,
  949.  
  950.        27,   26,   25,   24,   23,   22,   21,   20,   19,   18,
  951.        17,   16,   15,   14,   13,   11,    6,    5,  976,  976,
  952.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  953.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  954.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  955.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  956.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  957.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976,
  958.       976,  976,  976,  976,  976,  976,  976,  976,  976,  976
  959.     } ;
  960.  
  961. static yy_state_type yy_last_accepting_state;
  962. static char *yy_last_accepting_cpos;
  963.  
  964. /* The intent behind this definition is that it'll catch
  965.  * any uses of REJECT which flex missed.
  966.  */
  967. #define REJECT reject_used_but_not_detected
  968. #define yymore() yymore_used_but_not_detected
  969. #define YY_MORE_ADJ 0
  970. char *yytext;
  971. /* This file is generated automatically by mergelex.awk.  */
  972. #include "recode.h"
  973. #ifdef USE_FPUTC
  974. #define output(ch) fputc (ch, yyout)
  975. #else
  976. #define output(ch) putc (ch, yyout)
  977. #endif
  978. void texte_latin1_diaeresis _((void));
  979.  
  980. /* Macros after this point can all be overridden by user definitions in
  981.  * section 1.
  982.  */
  983.  
  984. #ifdef YY_MALLOC_DECL
  985. YY_MALLOC_DECL
  986. #else
  987. #if __STDC__
  988. #ifndef __cplusplus
  989. #include <stdlib.h>
  990. #endif
  991. #else
  992. /* Just try to get by without declaring the routines.  This will fail
  993.  * miserably on non-ANSI systems for which sizeof(size_t) != sizeof(int)
  994.  * or sizeof(void*) != sizeof(int).
  995.  */
  996. #endif
  997. #endif
  998.  
  999. /* Amount of stuff to slurp up with each read. */
  1000. #ifndef YY_READ_BUF_SIZE
  1001. #define YY_READ_BUF_SIZE 8192
  1002. #endif
  1003.  
  1004. /* Copy whatever the last rule matched to the standard output. */
  1005.  
  1006. #ifndef ECHO
  1007. /* This used to be an fputs(), but since the string might contain NUL's,
  1008.  * we now use fwrite().
  1009.  */
  1010. #define ECHO (void) fwrite( yytext, yyleng, 1, yyout )
  1011. #endif
  1012.  
  1013. /* Gets input and stuffs it into "buf".  number of characters read, or YY_NULL,
  1014.  * is returned in "result".
  1015.  */
  1016. #ifndef YY_INPUT
  1017. #define YY_INPUT(buf,result,max_size) \
  1018.     if ( yy_current_buffer->yy_is_interactive ) \
  1019.         { \
  1020.         int c = getc( yyin ); \
  1021.         result = c == EOF ? 0 : 1; \
  1022.         buf[0] = (char) c; \
  1023.         } \
  1024.     else if ( ((result = fread( buf, 1, max_size, yyin )) == 0) \
  1025.           && ferror( yyin ) ) \
  1026.         YY_FATAL_ERROR( "input in flex scanner failed" );
  1027. #endif
  1028.  
  1029. /* No semi-colon after return; correct usage is to write "yyterminate();" -
  1030.  * we don't want an extra ';' after the "return" because that will cause
  1031.  * some compilers to complain about unreachable statements.
  1032.  */
  1033. #ifndef yyterminate
  1034. #define yyterminate() return YY_NULL
  1035. #endif
  1036.  
  1037. /* Number of entries by which start-condition stack grows. */
  1038. #ifndef YY_START_STACK_INCR
  1039. #define YY_START_STACK_INCR 25
  1040. #endif
  1041.  
  1042. /* Report a fatal error. */
  1043. #ifndef YY_FATAL_ERROR
  1044. #define YY_FATAL_ERROR(msg) yy_fatal_error( msg )
  1045. #endif
  1046.  
  1047. /* Default declaration of generated scanner - a define so the user can
  1048.  * easily add parameters.
  1049.  */
  1050. #ifndef YY_DECL
  1051. #define YY_DECL int yylex YY_PROTO(( void ))
  1052. #endif
  1053.  
  1054. /* Code executed at the beginning of each rule, after yytext and yyleng
  1055.  * have been set up.
  1056.  */
  1057. #ifndef YY_USER_ACTION
  1058. #define YY_USER_ACTION
  1059. #endif
  1060.  
  1061. /* Code executed at the end of each rule. */
  1062. #ifndef YY_BREAK
  1063. #define YY_BREAK break;
  1064. #endif
  1065.  
  1066. YY_DECL
  1067.     {
  1068.     register yy_state_type yy_current_state;
  1069.     register char *yy_cp, *yy_bp;
  1070.     register int yy_act;
  1071.  
  1072.  
  1073.  
  1074.     if ( yy_init )
  1075.         {
  1076. #ifdef YY_USER_INIT
  1077.         YY_USER_INIT;
  1078. #endif
  1079.  
  1080.         if ( ! yy_start )
  1081.             yy_start = 1;    /* first start state */
  1082.  
  1083.         if ( ! yyin )
  1084.             yyin = stdin;
  1085.  
  1086.         if ( ! yyout )
  1087.             yyout = stdout;
  1088.  
  1089.         if ( yy_current_buffer )
  1090.             yy_init_buffer( yy_current_buffer, yyin );
  1091.         else
  1092.             yy_current_buffer =
  1093.                 yy_create_buffer( yyin, YY_BUF_SIZE );
  1094.  
  1095.         yy_load_buffer_state();
  1096.  
  1097.         yy_init = 0;
  1098.         }
  1099.  
  1100.     while ( 1 )        /* loops until end-of-file is reached */
  1101.         {
  1102.         yy_cp = yy_c_buf_p;
  1103.  
  1104.         /* Support of yytext. */
  1105.         *yy_cp = yy_hold_char;
  1106.  
  1107.         /* yy_bp points to the position in yy_ch_buf of the start of
  1108.          * the current run.
  1109.          */
  1110.         yy_bp = yy_cp;
  1111.  
  1112.         yy_current_state = yy_start;
  1113. yy_match:
  1114.         do
  1115.             {
  1116.             register YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)];
  1117.             if ( yy_accept[yy_current_state] )
  1118.                 {
  1119.                 yy_last_accepting_state = yy_current_state;
  1120.                 yy_last_accepting_cpos = yy_cp;
  1121.                 }
  1122.             while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
  1123.                 {
  1124.                 yy_current_state = (int) yy_def[yy_current_state];
  1125.                 if ( yy_current_state >= 977 )
  1126.                     yy_c = yy_meta[(unsigned int) yy_c];
  1127.                 }
  1128.             yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
  1129.             ++yy_cp;
  1130.             }
  1131.         while ( yy_base[yy_current_state] != 1319 );
  1132.  
  1133. yy_find_action:
  1134.         yy_act = yy_accept[yy_current_state];
  1135.  
  1136.         YY_DO_BEFORE_ACTION;
  1137.  
  1138.  
  1139. do_action:    /* This label is used only to access EOF actions. */
  1140.  
  1141.  
  1142.         switch ( yy_act )
  1143.     { /* beginning of action switch */
  1144.             case 0: /* must back up */
  1145.             /* undo the effects of YY_DO_BEFORE_ACTION */
  1146.             *yy_cp = yy_hold_char;
  1147.             yy_cp = yy_last_accepting_cpos;
  1148.             yy_current_state = yy_last_accepting_state;
  1149.             goto yy_find_action;
  1150.  
  1151. case YY_STATE_EOF(INITIAL):
  1152. case YY_STATE_EOF(ascii_latin1):
  1153. case YY_STATE_EOF(html_latin1):
  1154. case YY_STATE_EOF(latex_latin1):
  1155. case YY_STATE_EOF(texte_latin1):
  1156. { return 1; }
  1157.     YY_BREAK
  1158. case 1:
  1159. YY_USER_ACTION
  1160. { output (171); }
  1161.     YY_BREAK
  1162. case 2:
  1163. YY_USER_ACTION
  1164. { output (187); }
  1165.     YY_BREAK
  1166. case 3:
  1167. YY_USER_ACTION
  1168. { output (192); }
  1169.     YY_BREAK
  1170. case 4:
  1171. YY_USER_ACTION
  1172. { output (193); }
  1173.     YY_BREAK
  1174. case 5:
  1175. YY_USER_ACTION
  1176. { output (194); }
  1177.     YY_BREAK
  1178. case 6:
  1179. YY_USER_ACTION
  1180. { output (195); }
  1181.     YY_BREAK
  1182. case 7:
  1183. YY_USER_ACTION
  1184. { output (196); }
  1185.     YY_BREAK
  1186. case 8:
  1187. YY_USER_ACTION
  1188. { output (199); }
  1189.     YY_BREAK
  1190. case 9:
  1191. YY_USER_ACTION
  1192. { output (200); }
  1193.     YY_BREAK
  1194. case 10:
  1195. YY_USER_ACTION
  1196. { output (201); }
  1197.     YY_BREAK
  1198. case 11:
  1199. YY_USER_ACTION
  1200. { output (202); }
  1201.     YY_BREAK
  1202. case 12:
  1203. YY_USER_ACTION
  1204. { output (203); }
  1205.     YY_BREAK
  1206. case 13:
  1207. YY_USER_ACTION
  1208. { output (204); }
  1209.     YY_BREAK
  1210. case 14:
  1211. YY_USER_ACTION
  1212. { output (205); }
  1213.     YY_BREAK
  1214. case 15:
  1215. YY_USER_ACTION
  1216. { output (206); }
  1217.     YY_BREAK
  1218. case 16:
  1219. YY_USER_ACTION
  1220. { output (207); }
  1221.     YY_BREAK
  1222. case 17:
  1223. YY_USER_ACTION
  1224. { output (209); }
  1225.     YY_BREAK
  1226. case 18:
  1227. YY_USER_ACTION
  1228. { output (210); }
  1229.     YY_BREAK
  1230. case 19:
  1231. YY_USER_ACTION
  1232. { output (211); }
  1233.     YY_BREAK
  1234. case 20:
  1235. YY_USER_ACTION
  1236. { output (212); }
  1237.     YY_BREAK
  1238. case 21:
  1239. YY_USER_ACTION
  1240. { output (213); }
  1241.     YY_BREAK
  1242. case 22:
  1243. YY_USER_ACTION
  1244. { output (214); }
  1245.     YY_BREAK
  1246. case 23:
  1247. YY_USER_ACTION
  1248. { output (216); }
  1249.     YY_BREAK
  1250. case 24:
  1251. YY_USER_ACTION
  1252. { output (217); }
  1253.     YY_BREAK
  1254. case 25:
  1255. YY_USER_ACTION
  1256. { output (218); }
  1257.     YY_BREAK
  1258. case 26:
  1259. YY_USER_ACTION
  1260. { output (219); }
  1261.     YY_BREAK
  1262. case 27:
  1263. YY_USER_ACTION
  1264. { output (220); }
  1265.     YY_BREAK
  1266. case 28:
  1267. YY_USER_ACTION
  1268. { output (221); }
  1269.     YY_BREAK
  1270. case 29:
  1271. YY_USER_ACTION
  1272. { output (223); }
  1273.     YY_BREAK
  1274. case 30:
  1275. YY_USER_ACTION
  1276. { output (224); }
  1277.     YY_BREAK
  1278. case 31:
  1279. YY_USER_ACTION
  1280. { output (225); }
  1281.     YY_BREAK
  1282. case 32:
  1283. YY_USER_ACTION
  1284. { output (226); }
  1285.     YY_BREAK
  1286. case 33:
  1287. YY_USER_ACTION
  1288. { output (227); }
  1289.     YY_BREAK
  1290. case 34:
  1291. YY_USER_ACTION
  1292. { output (228); }
  1293.     YY_BREAK
  1294. case 35:
  1295. YY_USER_ACTION
  1296. { output (231); }
  1297.     YY_BREAK
  1298. case 36:
  1299. YY_USER_ACTION
  1300. { output (232); }
  1301.     YY_BREAK
  1302. case 37:
  1303. YY_USER_ACTION
  1304. { output (233); }
  1305.     YY_BREAK
  1306. case 38:
  1307. YY_USER_ACTION
  1308. { output (234); }
  1309.     YY_BREAK
  1310. case 39:
  1311. YY_USER_ACTION
  1312. { output (235); }
  1313.     YY_BREAK
  1314. case 40:
  1315. YY_USER_ACTION
  1316. { output (236); }
  1317.     YY_BREAK
  1318. case 41:
  1319. YY_USER_ACTION
  1320. { output (237); }
  1321.     YY_BREAK
  1322. case 42:
  1323. YY_USER_ACTION
  1324. { output (238); }
  1325.     YY_BREAK
  1326. case 43:
  1327. YY_USER_ACTION
  1328. { output (239); }
  1329.     YY_BREAK
  1330. case 44:
  1331. YY_USER_ACTION
  1332. { output (241); }
  1333.     YY_BREAK
  1334. case 45:
  1335. YY_USER_ACTION
  1336. { output (242); }
  1337.     YY_BREAK
  1338. case 46:
  1339. YY_USER_ACTION
  1340. { output (243); }
  1341.     YY_BREAK
  1342. case 47:
  1343. YY_USER_ACTION
  1344. { output (244); }
  1345.     YY_BREAK
  1346. case 48:
  1347. YY_USER_ACTION
  1348. { output (245); }
  1349.     YY_BREAK
  1350. case 49:
  1351. YY_USER_ACTION
  1352. { output (246); }
  1353.     YY_BREAK
  1354. case 50:
  1355. YY_USER_ACTION
  1356. { output (248); }
  1357.     YY_BREAK
  1358. case 51:
  1359. YY_USER_ACTION
  1360. { output (249); }
  1361.     YY_BREAK
  1362. case 52:
  1363. YY_USER_ACTION
  1364. { output (250); }
  1365.     YY_BREAK
  1366. case 53:
  1367. YY_USER_ACTION
  1368. { output (251); }
  1369.     YY_BREAK
  1370. case 54:
  1371. YY_USER_ACTION
  1372. { output (252); }
  1373.     YY_BREAK
  1374. case 55:
  1375. YY_USER_ACTION
  1376. { output (253); }
  1377.     YY_BREAK
  1378. case 56:
  1379. YY_USER_ACTION
  1380. { output (255); }
  1381.     YY_BREAK
  1382. case 57:
  1383. YY_USER_ACTION
  1384. { if (diacritics_only) ECHO; else output (38); }
  1385.     YY_BREAK
  1386. case 58:
  1387. YY_USER_ACTION
  1388. { if (diacritics_only) ECHO; else output (60); }
  1389.     YY_BREAK
  1390. case 59:
  1391. YY_USER_ACTION
  1392. { if (diacritics_only) ECHO; else output (62); }
  1393.     YY_BREAK
  1394. case 60:
  1395. YY_USER_ACTION
  1396. { output (192); }
  1397.     YY_BREAK
  1398. case 61:
  1399. YY_USER_ACTION
  1400. { output (193); }
  1401.     YY_BREAK
  1402. case 62:
  1403. YY_USER_ACTION
  1404. { output (194); }
  1405.     YY_BREAK
  1406. case 63:
  1407. YY_USER_ACTION
  1408. { output (195); }
  1409.     YY_BREAK
  1410. case 64:
  1411. YY_USER_ACTION
  1412. { output (196); }
  1413.     YY_BREAK
  1414. case 65:
  1415. YY_USER_ACTION
  1416. { output (197); }
  1417.     YY_BREAK
  1418. case 66:
  1419. YY_USER_ACTION
  1420. { output (198); }
  1421.     YY_BREAK
  1422. case 67:
  1423. YY_USER_ACTION
  1424. { output (199); }
  1425.     YY_BREAK
  1426. case 68:
  1427. YY_USER_ACTION
  1428. { output (200); }
  1429.     YY_BREAK
  1430. case 69:
  1431. YY_USER_ACTION
  1432. { output (201); }
  1433.     YY_BREAK
  1434. case 70:
  1435. YY_USER_ACTION
  1436. { output (202); }
  1437.     YY_BREAK
  1438. case 71:
  1439. YY_USER_ACTION
  1440. { output (203); }
  1441.     YY_BREAK
  1442. case 72:
  1443. YY_USER_ACTION
  1444. { output (204); }
  1445.     YY_BREAK
  1446. case 73:
  1447. YY_USER_ACTION
  1448. { output (205); }
  1449.     YY_BREAK
  1450. case 74:
  1451. YY_USER_ACTION
  1452. { output (206); }
  1453.     YY_BREAK
  1454. case 75:
  1455. YY_USER_ACTION
  1456. { output (207); }
  1457.     YY_BREAK
  1458. case 76:
  1459. YY_USER_ACTION
  1460. { output (208); }
  1461.     YY_BREAK
  1462. case 77:
  1463. YY_USER_ACTION
  1464. { output (209); }
  1465.     YY_BREAK
  1466. case 78:
  1467. YY_USER_ACTION
  1468. { output (210); }
  1469.     YY_BREAK
  1470. case 79:
  1471. YY_USER_ACTION
  1472. { output (211); }
  1473.     YY_BREAK
  1474. case 80:
  1475. YY_USER_ACTION
  1476. { output (212); }
  1477.     YY_BREAK
  1478. case 81:
  1479. YY_USER_ACTION
  1480. { output (213); }
  1481.     YY_BREAK
  1482. case 82:
  1483. YY_USER_ACTION
  1484. { output (214); }
  1485.     YY_BREAK
  1486. case 83:
  1487. YY_USER_ACTION
  1488. { output (215); }
  1489.     YY_BREAK
  1490. case 84:
  1491. YY_USER_ACTION
  1492. { output (216); }
  1493.     YY_BREAK
  1494. case 85:
  1495. YY_USER_ACTION
  1496. { output (217); }
  1497.     YY_BREAK
  1498. case 86:
  1499. YY_USER_ACTION
  1500. { output (218); }
  1501.     YY_BREAK
  1502. case 87:
  1503. YY_USER_ACTION
  1504. { output (219); }
  1505.     YY_BREAK
  1506. case 88:
  1507. YY_USER_ACTION
  1508. { output (220); }
  1509.     YY_BREAK
  1510. case 89:
  1511. YY_USER_ACTION
  1512. { output (221); }
  1513.     YY_BREAK
  1514. case 90:
  1515. YY_USER_ACTION
  1516. { output (222); }
  1517.     YY_BREAK
  1518. case 91:
  1519. YY_USER_ACTION
  1520. { output (223); }
  1521.     YY_BREAK
  1522. case 92:
  1523. YY_USER_ACTION
  1524. { output (224); }
  1525.     YY_BREAK
  1526. case 93:
  1527. YY_USER_ACTION
  1528. { output (225); }
  1529.     YY_BREAK
  1530. case 94:
  1531. YY_USER_ACTION
  1532. { output (226); }
  1533.     YY_BREAK
  1534. case 95:
  1535. YY_USER_ACTION
  1536. { output (227); }
  1537.     YY_BREAK
  1538. case 96:
  1539. YY_USER_ACTION
  1540. { output (228); }
  1541.     YY_BREAK
  1542. case 97:
  1543. YY_USER_ACTION
  1544. { output (229); }
  1545.     YY_BREAK
  1546. case 98:
  1547. YY_USER_ACTION
  1548. { output (230); }
  1549.     YY_BREAK
  1550. case 99:
  1551. YY_USER_ACTION
  1552. { output (231); }
  1553.     YY_BREAK
  1554. case 100:
  1555. YY_USER_ACTION
  1556. { output (232); }
  1557.     YY_BREAK
  1558. case 101:
  1559. YY_USER_ACTION
  1560. { output (233); }
  1561.     YY_BREAK
  1562. case 102:
  1563. YY_USER_ACTION
  1564. { output (234); }
  1565.     YY_BREAK
  1566. case 103:
  1567. YY_USER_ACTION
  1568. { output (235); }
  1569.     YY_BREAK
  1570. case 104:
  1571. YY_USER_ACTION
  1572. { output (236); }
  1573.     YY_BREAK
  1574. case 105:
  1575. YY_USER_ACTION
  1576. { output (237); }
  1577.     YY_BREAK
  1578. case 106:
  1579. YY_USER_ACTION
  1580. { output (238); }
  1581.     YY_BREAK
  1582. case 107:
  1583. YY_USER_ACTION
  1584. { output (239); }
  1585.     YY_BREAK
  1586. case 108:
  1587. YY_USER_ACTION
  1588. { output (240); }
  1589.     YY_BREAK
  1590. case 109:
  1591. YY_USER_ACTION
  1592. { output (241); }
  1593.     YY_BREAK
  1594. case 110:
  1595. YY_USER_ACTION
  1596. { output (242); }
  1597.     YY_BREAK
  1598. case 111:
  1599. YY_USER_ACTION
  1600. { output (243); }
  1601.     YY_BREAK
  1602. case 112:
  1603. YY_USER_ACTION
  1604. { output (244); }
  1605.     YY_BREAK
  1606. case 113:
  1607. YY_USER_ACTION
  1608. { output (245); }
  1609.     YY_BREAK
  1610. case 114:
  1611. YY_USER_ACTION
  1612. { output (246); }
  1613.     YY_BREAK
  1614. case 115:
  1615. YY_USER_ACTION
  1616. { output (247); }
  1617.     YY_BREAK
  1618. case 116:
  1619. YY_USER_ACTION
  1620. { output (248); }
  1621.     YY_BREAK
  1622. case 117:
  1623. YY_USER_ACTION
  1624. { output (249); }
  1625.     YY_BREAK
  1626. case 118:
  1627. YY_USER_ACTION
  1628. { output (250); }
  1629.     YY_BREAK
  1630. case 119:
  1631. YY_USER_ACTION
  1632. { output (251); }
  1633.     YY_BREAK
  1634. case 120:
  1635. YY_USER_ACTION
  1636. { output (252); }
  1637.     YY_BREAK
  1638. case 121:
  1639. YY_USER_ACTION
  1640. { output (253); }
  1641.     YY_BREAK
  1642. case 122:
  1643. YY_USER_ACTION
  1644. { output (254); }
  1645.     YY_BREAK
  1646. case 123:
  1647. YY_USER_ACTION
  1648. { output (255); }
  1649.     YY_BREAK
  1650. case 124:
  1651. YY_USER_ACTION
  1652. { if (diacritics_only) ECHO; else output ('#'); }
  1653.     YY_BREAK
  1654. case 125:
  1655. YY_USER_ACTION
  1656. { if (diacritics_only) ECHO; else output ('$'); }
  1657.     YY_BREAK
  1658. case 126:
  1659. YY_USER_ACTION
  1660. { if (diacritics_only) ECHO; else output ('%'); }
  1661.     YY_BREAK
  1662. case 127:
  1663. YY_USER_ACTION
  1664. { if (diacritics_only) ECHO; else output ('&'); }
  1665.     YY_BREAK
  1666. case 128:
  1667. YY_USER_ACTION
  1668. { if (diacritics_only) ECHO; else output ('_'); }
  1669.     YY_BREAK
  1670. case 129:
  1671. YY_USER_ACTION
  1672. { if (diacritics_only) ECHO; else output ('{'); }
  1673.     YY_BREAK
  1674. case 130:
  1675. YY_USER_ACTION
  1676. { if (diacritics_only) ECHO; else output ('}'); }
  1677.     YY_BREAK
  1678. case 131:
  1679. YY_USER_ACTION
  1680. { if (diacritics_only) ECHO; else output ('\\'); }
  1681.     YY_BREAK
  1682. case 132:
  1683. YY_USER_ACTION
  1684. { if (diacritics_only) ECHO; else output (160); }
  1685.     YY_BREAK
  1686. case 133:
  1687. YY_USER_ACTION
  1688. { if (diacritics_only) ECHO; else output (161); }
  1689.     YY_BREAK
  1690. case 134:
  1691. YY_USER_ACTION
  1692. { if (diacritics_only) ECHO; else output (167); }
  1693.     YY_BREAK
  1694. case 135:
  1695. YY_USER_ACTION
  1696. { if (diacritics_only) ECHO; else output (168); }
  1697.     YY_BREAK
  1698. case 136:
  1699. YY_USER_ACTION
  1700. { if (diacritics_only) ECHO; else output (171); }
  1701.     YY_BREAK
  1702. case 137:
  1703. YY_USER_ACTION
  1704. { if (diacritics_only) ECHO; else output (172); }
  1705.     YY_BREAK
  1706. case 138:
  1707. YY_USER_ACTION
  1708. { if (diacritics_only) ECHO; else output (173); }
  1709.     YY_BREAK
  1710. case 139:
  1711. YY_USER_ACTION
  1712. { if (diacritics_only) ECHO; else output (176); }
  1713.     YY_BREAK
  1714. case 140:
  1715. YY_USER_ACTION
  1716. { if (diacritics_only) ECHO; else output (177); }
  1717.     YY_BREAK
  1718. case 141:
  1719. YY_USER_ACTION
  1720. { if (diacritics_only) ECHO; else output (178); }
  1721.     YY_BREAK
  1722. case 142:
  1723. YY_USER_ACTION
  1724. { if (diacritics_only) ECHO; else output (179); }
  1725.     YY_BREAK
  1726. case 143:
  1727. YY_USER_ACTION
  1728. { if (diacritics_only) ECHO; else output (180); }
  1729.     YY_BREAK
  1730. case 144:
  1731. YY_USER_ACTION
  1732. { if (diacritics_only) ECHO; else output (181); }
  1733.     YY_BREAK
  1734. case 145:
  1735. YY_USER_ACTION
  1736. { if (diacritics_only) ECHO; else output (183); }
  1737.     YY_BREAK
  1738. case 146:
  1739. YY_USER_ACTION
  1740. { if (diacritics_only) ECHO; else output (184); }
  1741.     YY_BREAK
  1742. case 147:
  1743. YY_USER_ACTION
  1744. { if (diacritics_only) ECHO; else output (185); }
  1745.     YY_BREAK
  1746. case 148:
  1747. YY_USER_ACTION
  1748. { if (diacritics_only) ECHO; else output (187); }
  1749.     YY_BREAK
  1750. case 149:
  1751. YY_USER_ACTION
  1752. { if (diacritics_only) ECHO; else output (188); }
  1753.     YY_BREAK
  1754. case 150:
  1755. YY_USER_ACTION
  1756. { if (diacritics_only) ECHO; else output (189); }
  1757.     YY_BREAK
  1758. case 151:
  1759. YY_USER_ACTION
  1760. { if (diacritics_only) ECHO; else output (190); }
  1761.     YY_BREAK
  1762. case 152:
  1763. YY_USER_ACTION
  1764. { if (diacritics_only) ECHO; else output (191); }
  1765.     YY_BREAK
  1766. case 153:
  1767. YY_USER_ACTION
  1768. { output (192); }
  1769.     YY_BREAK
  1770. case 154:
  1771. YY_USER_ACTION
  1772. { output (193); }
  1773.     YY_BREAK
  1774. case 155:
  1775. YY_USER_ACTION
  1776. { output (194); }
  1777.     YY_BREAK
  1778. case 156:
  1779. YY_USER_ACTION
  1780. { output (195); }
  1781.     YY_BREAK
  1782. case 157:
  1783. YY_USER_ACTION
  1784. { output (196); }
  1785.     YY_BREAK
  1786. case 158:
  1787. YY_USER_ACTION
  1788. { output (197); }
  1789.     YY_BREAK
  1790. case 159:
  1791. YY_USER_ACTION
  1792. { output (198); }
  1793.     YY_BREAK
  1794. case 160:
  1795. YY_USER_ACTION
  1796. { output (199); }
  1797.     YY_BREAK
  1798. case 161:
  1799. YY_USER_ACTION
  1800. { output (200); }
  1801.     YY_BREAK
  1802. case 162:
  1803. YY_USER_ACTION
  1804. { output (201); }
  1805.     YY_BREAK
  1806. case 163:
  1807. YY_USER_ACTION
  1808. { output (202); }
  1809.     YY_BREAK
  1810. case 164:
  1811. YY_USER_ACTION
  1812. { output (203); }
  1813.     YY_BREAK
  1814. case 165:
  1815. YY_USER_ACTION
  1816. { output (204); }
  1817.     YY_BREAK
  1818. case 166:
  1819. YY_USER_ACTION
  1820. { output (205); }
  1821.     YY_BREAK
  1822. case 167:
  1823. YY_USER_ACTION
  1824. { output (206); }
  1825.     YY_BREAK
  1826. case 168:
  1827. YY_USER_ACTION
  1828. { output (207); }
  1829.     YY_BREAK
  1830. case 169:
  1831. YY_USER_ACTION
  1832. { output (209); }
  1833.     YY_BREAK
  1834. case 170:
  1835. YY_USER_ACTION
  1836. { output (210); }
  1837.     YY_BREAK
  1838. case 171:
  1839. YY_USER_ACTION
  1840. { output (211); }
  1841.     YY_BREAK
  1842. case 172:
  1843. YY_USER_ACTION
  1844. { output (212); }
  1845.     YY_BREAK
  1846. case 173:
  1847. YY_USER_ACTION
  1848. { output (213); }
  1849.     YY_BREAK
  1850. case 174:
  1851. YY_USER_ACTION
  1852. { output (214); }
  1853.     YY_BREAK
  1854. case 175:
  1855. YY_USER_ACTION
  1856. { output (216); }
  1857.     YY_BREAK
  1858. case 176:
  1859. YY_USER_ACTION
  1860. { output (217); }
  1861.     YY_BREAK
  1862. case 177:
  1863. YY_USER_ACTION
  1864. { output (218); }
  1865.     YY_BREAK
  1866. case 178:
  1867. YY_USER_ACTION
  1868. { output (219); }
  1869.     YY_BREAK
  1870. case 179:
  1871. YY_USER_ACTION
  1872. { output (220); }
  1873.     YY_BREAK
  1874. case 180:
  1875. YY_USER_ACTION
  1876. { output (221); }
  1877.     YY_BREAK
  1878. case 181:
  1879. YY_USER_ACTION
  1880. { output (223); }
  1881.     YY_BREAK
  1882. case 182:
  1883. YY_USER_ACTION
  1884. { output (224); }
  1885.     YY_BREAK
  1886. case 183:
  1887. YY_USER_ACTION
  1888. { output (225); }
  1889.     YY_BREAK
  1890. case 184:
  1891. YY_USER_ACTION
  1892. { output (226); }
  1893.     YY_BREAK
  1894. case 185:
  1895. YY_USER_ACTION
  1896. { output (227); }
  1897.     YY_BREAK
  1898. case 186:
  1899. YY_USER_ACTION
  1900. { output (228); }
  1901.     YY_BREAK
  1902. case 187:
  1903. YY_USER_ACTION
  1904. { output (229); }
  1905.     YY_BREAK
  1906. case 188:
  1907. YY_USER_ACTION
  1908. { output (230); }
  1909.     YY_BREAK
  1910. case 189:
  1911. YY_USER_ACTION
  1912. { output (231); }
  1913.     YY_BREAK
  1914. case 190:
  1915. YY_USER_ACTION
  1916. { output (232); }
  1917.     YY_BREAK
  1918. case 191:
  1919. YY_USER_ACTION
  1920. { output (233); }
  1921.     YY_BREAK
  1922. case 192:
  1923. YY_USER_ACTION
  1924. { output (234); }
  1925.     YY_BREAK
  1926. case 193:
  1927. YY_USER_ACTION
  1928. { output (235); }
  1929.     YY_BREAK
  1930. case 194:
  1931. YY_USER_ACTION
  1932. { output (236); }
  1933.     YY_BREAK
  1934. case 195:
  1935. YY_USER_ACTION
  1936. { output (237); }
  1937.     YY_BREAK
  1938. case 196:
  1939. YY_USER_ACTION
  1940. { output (238); }
  1941.     YY_BREAK
  1942. case 197:
  1943. YY_USER_ACTION
  1944. { output (239); }
  1945.     YY_BREAK
  1946. case 198:
  1947. YY_USER_ACTION
  1948. { output (241); }
  1949.     YY_BREAK
  1950. case 199:
  1951. YY_USER_ACTION
  1952. { output (242); }
  1953.     YY_BREAK
  1954. case 200:
  1955. YY_USER_ACTION
  1956. { output (243); }
  1957.     YY_BREAK
  1958. case 201:
  1959. YY_USER_ACTION
  1960. { output (244); }
  1961.     YY_BREAK
  1962. case 202:
  1963. YY_USER_ACTION
  1964. { output (245); }
  1965.     YY_BREAK
  1966. case 203:
  1967. YY_USER_ACTION
  1968. { output (246); }
  1969.     YY_BREAK
  1970. case 204:
  1971. YY_USER_ACTION
  1972. { output (248); }
  1973.     YY_BREAK
  1974. case 205:
  1975. YY_USER_ACTION
  1976. { output (249); }
  1977.     YY_BREAK
  1978. case 206:
  1979. YY_USER_ACTION
  1980. { output (250); }
  1981.     YY_BREAK
  1982. case 207:
  1983. YY_USER_ACTION
  1984. { output (251); }
  1985.     YY_BREAK
  1986. case 208:
  1987. YY_USER_ACTION
  1988. { output (252); }
  1989.     YY_BREAK
  1990. case 209:
  1991. YY_USER_ACTION
  1992. { output (253); }
  1993.     YY_BREAK
  1994. case 210:
  1995. YY_USER_ACTION
  1996. { output (255); }
  1997.     YY_BREAK
  1998. case 211:
  1999. YY_USER_ACTION
  2000. { ECHO; }
  2001.     YY_BREAK
  2002. case 212:
  2003. YY_USER_ACTION
  2004. { ECHO; }
  2005.     YY_BREAK
  2006. case 213:
  2007. YY_USER_ACTION
  2008. { output (171); }
  2009.     YY_BREAK
  2010. case 214:
  2011. YY_USER_ACTION
  2012. { output (187); }
  2013.     YY_BREAK
  2014. case 215:
  2015. YY_USER_ACTION
  2016. { output (192); }
  2017.     YY_BREAK
  2018. case 216:
  2019. YY_USER_ACTION
  2020. { output (194); }
  2021.     YY_BREAK
  2022. case 217:
  2023. *yy_cp = yy_hold_char; /* undo effects of setting up yytext */
  2024. yy_c_buf_p = yy_cp = yy_bp + 2;
  2025. YY_DO_BEFORE_ACTION; /* set up yytext again */
  2026. YY_USER_ACTION
  2027. { if (yytext[1] == diaeresis_char)
  2028.                 output (196);
  2029.               else
  2030.                 ECHO;
  2031.             }
  2032.     YY_BREAK
  2033. case 218:
  2034. YY_USER_ACTION
  2035. { output (224); }
  2036.     YY_BREAK
  2037. case 219:
  2038. YY_USER_ACTION
  2039. { output (226); }
  2040.     YY_BREAK
  2041. case 220:
  2042. *yy_cp = yy_hold_char; /* undo effects of setting up yytext */
  2043. yy_c_buf_p = yy_cp = yy_bp + 2;
  2044. YY_DO_BEFORE_ACTION; /* set up yytext again */
  2045. YY_USER_ACTION
  2046. { if (yytext[1] == diaeresis_char)
  2047.                 output (228);
  2048.               else
  2049.                 ECHO;
  2050.             }
  2051.     YY_BREAK
  2052. case 221:
  2053. *yy_cp = yy_hold_char; /* undo effects of setting up yytext */
  2054. yy_c_buf_p = yy_cp = yy_bp + 2;
  2055. YY_DO_BEFORE_ACTION; /* set up yytext again */
  2056. YY_USER_ACTION
  2057. { output (199); }
  2058.     YY_BREAK
  2059. case 222:
  2060. *yy_cp = yy_hold_char; /* undo effects of setting up yytext */
  2061. yy_c_buf_p = yy_cp = yy_bp + 2;
  2062. YY_DO_BEFORE_ACTION; /* set up yytext again */
  2063. YY_USER_ACTION
  2064. { output (231); }
  2065.     YY_BREAK
  2066. case 223:
  2067. YY_USER_ACTION
  2068. { output (200); }
  2069.     YY_BREAK
  2070. case 224:
  2071. YY_USER_ACTION
  2072. { output (201); output (187); }
  2073.     YY_BREAK
  2074. case 225:
  2075. YY_USER_ACTION
  2076. { output ('E'); output (187); }
  2077.     YY_BREAK
  2078. case 226:
  2079. YY_USER_ACTION
  2080. { output (201); }
  2081.     YY_BREAK
  2082. case 227:
  2083. YY_USER_ACTION
  2084. { output (202); }
  2085.     YY_BREAK
  2086. case 228:
  2087. *yy_cp = yy_hold_char; /* undo effects of setting up yytext */
  2088. yy_c_buf_p = yy_cp = yy_bp + 2;
  2089. YY_DO_BEFORE_ACTION; /* set up yytext again */
  2090. YY_USER_ACTION
  2091. { if (yytext[1] == diaeresis_char)
  2092.                 output (203);
  2093.               else
  2094.                 ECHO;
  2095.             }
  2096.     YY_BREAK
  2097. case 229:
  2098. YY_USER_ACTION
  2099. { output (232); }
  2100.     YY_BREAK
  2101. case 230:
  2102. YY_USER_ACTION
  2103. { output (233); output (187); }
  2104.     YY_BREAK
  2105. case 231:
  2106. YY_USER_ACTION
  2107. { output ('e'); output (187); }
  2108.     YY_BREAK
  2109. case 232:
  2110. YY_USER_ACTION
  2111. { output (233); }
  2112.     YY_BREAK
  2113. case 233:
  2114. YY_USER_ACTION
  2115. { output (234); }
  2116.     YY_BREAK
  2117. case 234:
  2118. *yy_cp = yy_hold_char; /* undo effects of setting up yytext */
  2119. yy_c_buf_p = yy_cp = yy_bp + 2;
  2120. YY_DO_BEFORE_ACTION; /* set up yytext again */
  2121. YY_USER_ACTION
  2122. { if (yytext[1] == diaeresis_char)
  2123.                 output (235);
  2124.               else
  2125.                 ECHO;
  2126.             }
  2127.     YY_BREAK
  2128. case 235:
  2129. YY_USER_ACTION
  2130. { output (204); }
  2131.     YY_BREAK
  2132. case 236:
  2133. YY_USER_ACTION
  2134. { output (206); }
  2135.     YY_BREAK
  2136. case 237:
  2137. *yy_cp = yy_hold_char; /* undo effects of setting up yytext */
  2138. yy_c_buf_p = yy_cp = yy_bp + 2;
  2139. YY_DO_BEFORE_ACTION; /* set up yytext again */
  2140. YY_USER_ACTION
  2141. { if (yytext[1] == diaeresis_char)
  2142.                 output (207);
  2143.               else
  2144.                 ECHO;
  2145.             }
  2146.     YY_BREAK
  2147. case 238:
  2148. YY_USER_ACTION
  2149. { output (236); }
  2150.     YY_BREAK
  2151. case 239:
  2152. YY_USER_ACTION
  2153. { output (238); }
  2154.     YY_BREAK
  2155. case 240:
  2156. *yy_cp = yy_hold_char; /* undo effects of setting up yytext */
  2157. yy_c_buf_p = yy_cp = yy_bp + 2;
  2158. YY_DO_BEFORE_ACTION; /* set up yytext again */
  2159. YY_USER_ACTION
  2160. { if (yytext[1] == diaeresis_char)
  2161.                 output (239);
  2162.               else
  2163.                 ECHO;
  2164.             }
  2165.     YY_BREAK
  2166. case 241:
  2167. YY_USER_ACTION
  2168. { output (210); }
  2169.     YY_BREAK
  2170. case 242:
  2171. YY_USER_ACTION
  2172. { output (212); }
  2173.     YY_BREAK
  2174. case 243:
  2175. *yy_cp = yy_hold_char; /* undo effects of setting up yytext */
  2176. yy_c_buf_p = yy_cp = yy_bp + 2;
  2177. YY_DO_BEFORE_ACTION; /* set up yytext again */
  2178. YY_USER_ACTION
  2179. { if (yytext[1] == diaeresis_char)
  2180.                 output (214);
  2181.               else
  2182.                 ECHO;
  2183.             }
  2184.     YY_BREAK
  2185. case 244:
  2186. YY_USER_ACTION
  2187. { output (242); }
  2188.     YY_BREAK
  2189. case 245:
  2190. YY_USER_ACTION
  2191. { output (244); }
  2192.     YY_BREAK
  2193. case 246:
  2194. *yy_cp = yy_hold_char; /* undo effects of setting up yytext */
  2195. yy_c_buf_p = yy_cp = yy_bp + 2;
  2196. YY_DO_BEFORE_ACTION; /* set up yytext again */
  2197. YY_USER_ACTION
  2198. { if (yytext[1] == diaeresis_char)
  2199.                 output (246);
  2200.               else
  2201.                 ECHO;
  2202.             }
  2203.     YY_BREAK
  2204. case 247:
  2205. YY_USER_ACTION
  2206. { output (217); }
  2207.     YY_BREAK
  2208. case 248:
  2209. YY_USER_ACTION
  2210. { output (219); }
  2211.     YY_BREAK
  2212. case 249:
  2213. *yy_cp = yy_hold_char; /* undo effects of setting up yytext */
  2214. yy_c_buf_p = yy_cp = yy_bp + 2;
  2215. YY_DO_BEFORE_ACTION; /* set up yytext again */
  2216. YY_USER_ACTION
  2217. { if (yytext[1] == diaeresis_char)
  2218.                 output (220);
  2219.               else
  2220.                 ECHO;
  2221.             }
  2222.     YY_BREAK
  2223. case 250:
  2224. YY_USER_ACTION
  2225. { output (249); }
  2226.     YY_BREAK
  2227. case 251:
  2228. YY_USER_ACTION
  2229. { output (251); }
  2230.     YY_BREAK
  2231. case 252:
  2232. *yy_cp = yy_hold_char; /* undo effects of setting up yytext */
  2233. yy_c_buf_p = yy_cp = yy_bp + 2;
  2234. YY_DO_BEFORE_ACTION; /* set up yytext again */
  2235. YY_USER_ACTION
  2236. { if (yytext[1] == diaeresis_char)
  2237.                 output (252);
  2238.               else
  2239.                 ECHO;
  2240.             }
  2241.     YY_BREAK
  2242. case 253:
  2243. YY_USER_ACTION
  2244. { texte_latin1_diaeresis (); }
  2245.     YY_BREAK
  2246. case 254:
  2247. YY_USER_ACTION
  2248. { texte_latin1_diaeresis (); }
  2249.     YY_BREAK
  2250. case 255:
  2251. YY_USER_ACTION
  2252. { texte_latin1_diaeresis (); }
  2253.     YY_BREAK
  2254. case 256:
  2255. YY_USER_ACTION
  2256. { texte_latin1_diaeresis (); }
  2257.     YY_BREAK
  2258. case 257:
  2259. YY_USER_ACTION
  2260. { texte_latin1_diaeresis (); }
  2261.     YY_BREAK
  2262. case 258:
  2263. YY_USER_ACTION
  2264. { texte_latin1_diaeresis (); }
  2265.     YY_BREAK
  2266. case 259:
  2267. YY_USER_ACTION
  2268. { texte_latin1_diaeresis (); }
  2269.     YY_BREAK
  2270. case 260:
  2271. YY_USER_ACTION
  2272. { texte_latin1_diaeresis (); }
  2273.     YY_BREAK
  2274. case 261:
  2275. YY_USER_ACTION
  2276. { texte_latin1_diaeresis (); }
  2277.     YY_BREAK
  2278. case 262:
  2279. YY_USER_ACTION
  2280. { texte_latin1_diaeresis (); }
  2281.     YY_BREAK
  2282. case 263:
  2283. YY_USER_ACTION
  2284. { texte_latin1_diaeresis (); }
  2285.     YY_BREAK
  2286. case 264:
  2287. YY_USER_ACTION
  2288. { if (yytext[4] == diaeresis_char)
  2289.                 texte_latin1_diaeresis ();
  2290.               else
  2291.                 ECHO;
  2292.             }
  2293.     YY_BREAK
  2294. case 265:
  2295. YY_USER_ACTION
  2296. { texte_latin1_diaeresis (); }
  2297.     YY_BREAK
  2298. case 266:
  2299. YY_USER_ACTION
  2300. { ECHO; }
  2301.     YY_BREAK
  2302. case 267:
  2303. YY_USER_ACTION
  2304. { texte_latin1_diaeresis (); }
  2305.     YY_BREAK
  2306. case 268:
  2307. YY_USER_ACTION
  2308. { texte_latin1_diaeresis (); }
  2309.     YY_BREAK
  2310. case 269:
  2311. YY_USER_ACTION
  2312. { texte_latin1_diaeresis (); }
  2313.     YY_BREAK
  2314. case 270:
  2315. YY_USER_ACTION
  2316. { texte_latin1_diaeresis (); }
  2317.     YY_BREAK
  2318. case 271:
  2319. YY_USER_ACTION
  2320. { texte_latin1_diaeresis (); }
  2321.     YY_BREAK
  2322. case 272:
  2323. YY_USER_ACTION
  2324. { texte_latin1_diaeresis (); }
  2325.     YY_BREAK
  2326. case 273:
  2327. YY_USER_ACTION
  2328. ECHO;
  2329.     YY_BREAK
  2330.  
  2331.     case YY_END_OF_BUFFER:
  2332.         {
  2333.         /* Amount of text matched not including the EOB char. */
  2334.         int yy_amount_of_matched_text = yy_cp - yytext_ptr - 1;
  2335.  
  2336.         /* Undo the effects of YY_DO_BEFORE_ACTION. */
  2337.         *yy_cp = yy_hold_char;
  2338.  
  2339.         if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_NEW )
  2340.             {
  2341.             /* We're scanning a new file or input source.  It's
  2342.              * possible that this happened because the user
  2343.              * just pointed yyin at a new source and called
  2344.              * yylex().  If so, then we have to assure
  2345.              * consistency between yy_current_buffer and our
  2346.              * globals.  Here is the right place to do so, because
  2347.              * this is the first action (other than possibly a
  2348.              * back-up) that will match for the new input source.
  2349.              */
  2350.             yy_n_chars = yy_current_buffer->yy_n_chars;
  2351.             yy_current_buffer->yy_input_file = yyin;
  2352.             yy_current_buffer->yy_buffer_status = YY_BUFFER_NORMAL;
  2353.             }
  2354.  
  2355.         /* Note that here we test for yy_c_buf_p "<=" to the position
  2356.          * of the first EOB in the buffer, since yy_c_buf_p will
  2357.          * already have been incremented past the NUL character
  2358.          * (since all states make transitions on EOB to the
  2359.          * end-of-buffer state).  Contrast this with the test
  2360.          * in input().
  2361.          */
  2362.         if ( yy_c_buf_p <= &yy_current_buffer->yy_ch_buf[yy_n_chars] )
  2363.             { /* This was really a NUL. */
  2364.             yy_state_type yy_next_state;
  2365.  
  2366.             yy_c_buf_p = yytext_ptr + yy_amount_of_matched_text;
  2367.  
  2368.             yy_current_state = yy_get_previous_state();
  2369.  
  2370.             /* Okay, we're now positioned to make the NUL
  2371.              * transition.  We couldn't have
  2372.              * yy_get_previous_state() go ahead and do it
  2373.              * for us because it doesn't know how to deal
  2374.              * with the possibility of jamming (and we don't
  2375.              * want to build jamming into it because then it
  2376.              * will run more slowly).
  2377.              */
  2378.  
  2379.             yy_next_state = yy_try_NUL_trans( yy_current_state );
  2380.  
  2381.             yy_bp = yytext_ptr + YY_MORE_ADJ;
  2382.  
  2383.             if ( yy_next_state )
  2384.                 {
  2385.                 /* Consume the NUL. */
  2386.                 yy_cp = ++yy_c_buf_p;
  2387.                 yy_current_state = yy_next_state;
  2388.                 goto yy_match;
  2389.                 }
  2390.  
  2391.             else
  2392.                 {
  2393.                             yy_cp = yy_c_buf_p;
  2394.                 goto yy_find_action;
  2395.                 }
  2396.             }
  2397.  
  2398.         else switch ( yy_get_next_buffer() )
  2399.             {
  2400.             case EOB_ACT_END_OF_FILE:
  2401.                 {
  2402.                 yy_did_buffer_switch_on_eof = 0;
  2403.  
  2404.                 if ( yywrap() )
  2405.                     {
  2406.                     /* Note: because we've taken care in
  2407.                      * yy_get_next_buffer() to have set up
  2408.                      * yytext, we can now set up
  2409.                      * yy_c_buf_p so that if some total
  2410.                      * hoser (like flex itself) wants to
  2411.                      * call the scanner after we return the
  2412.                      * YY_NULL, it'll still work - another
  2413.                      * YY_NULL will get returned.
  2414.                      */
  2415.                     yy_c_buf_p = yytext_ptr + YY_MORE_ADJ;
  2416.  
  2417.                     yy_act = YY_STATE_EOF(YY_START);
  2418.                     goto do_action;
  2419.                     }
  2420.  
  2421.                 else
  2422.                     {
  2423.                     if ( ! yy_did_buffer_switch_on_eof )
  2424.                         YY_NEW_FILE;
  2425.                     }
  2426.                 break;
  2427.                 }
  2428.  
  2429.             case EOB_ACT_CONTINUE_SCAN:
  2430.                 yy_c_buf_p =
  2431.                     yytext_ptr + yy_amount_of_matched_text;
  2432.  
  2433.                 yy_current_state = yy_get_previous_state();
  2434.  
  2435.                 yy_cp = yy_c_buf_p;
  2436.                 yy_bp = yytext_ptr + YY_MORE_ADJ;
  2437.                 goto yy_match;
  2438.  
  2439.             case EOB_ACT_LAST_MATCH:
  2440.                 yy_c_buf_p =
  2441.                 &yy_current_buffer->yy_ch_buf[yy_n_chars];
  2442.  
  2443.                 yy_current_state = yy_get_previous_state();
  2444.  
  2445.                 yy_cp = yy_c_buf_p;
  2446.                 yy_bp = yytext_ptr + YY_MORE_ADJ;
  2447.                 goto yy_find_action;
  2448.             }
  2449.         break;
  2450.         }
  2451.  
  2452.     default:
  2453.         YY_FATAL_ERROR(
  2454.             "fatal flex scanner internal error--no action found" );
  2455.     } /* end of action switch */
  2456.         } /* end of scanning one token */
  2457.     } /* end of yylex */
  2458.  
  2459.  
  2460. /* yy_get_next_buffer - try to read in a new buffer
  2461.  *
  2462.  * Returns a code representing an action:
  2463.  *    EOB_ACT_LAST_MATCH -
  2464.  *    EOB_ACT_CONTINUE_SCAN - continue scanning from current position
  2465.  *    EOB_ACT_END_OF_FILE - end of file
  2466.  */
  2467.  
  2468. static int yy_get_next_buffer()
  2469.     {
  2470.     register char *dest = yy_current_buffer->yy_ch_buf;
  2471.     register char *source = yytext_ptr - 1; /* copy prev. char, too */
  2472.     register int number_to_move, i;
  2473.     int ret_val;
  2474.  
  2475.     if ( yy_c_buf_p > &yy_current_buffer->yy_ch_buf[yy_n_chars + 1] )
  2476.         YY_FATAL_ERROR(
  2477.         "fatal flex scanner internal error--end of buffer missed" );
  2478.  
  2479.     if ( yy_current_buffer->yy_fill_buffer == 0 )
  2480.         { /* Don't try to fill the buffer, so this is an EOF. */
  2481.         if ( yy_c_buf_p - yytext_ptr - YY_MORE_ADJ == 1 )
  2482.             {
  2483.             /* We matched a singled characater, the EOB, so
  2484.              * treat this as a final EOF.
  2485.              */
  2486.             return EOB_ACT_END_OF_FILE;
  2487.             }
  2488.  
  2489.         else
  2490.             {
  2491.             /* We matched some text prior to the EOB, first
  2492.              * process it.
  2493.              */
  2494.             return EOB_ACT_LAST_MATCH;
  2495.             }
  2496.         }
  2497.  
  2498.     /* Try to read more data. */
  2499.  
  2500.     /* First move last chars to start of buffer. */
  2501.     number_to_move = yy_c_buf_p - yytext_ptr;
  2502.  
  2503.     for ( i = 0; i < number_to_move; ++i )
  2504.         *(dest++) = *(source++);
  2505.  
  2506.     if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_EOF_PENDING )
  2507.         /* don't do the read, it's not guaranteed to return an EOF,
  2508.          * just force an EOF
  2509.          */
  2510.         yy_n_chars = 0;
  2511.  
  2512.     else
  2513.         {
  2514.         int num_to_read =
  2515.             yy_current_buffer->yy_buf_size - number_to_move - 1;
  2516.  
  2517.         while ( num_to_read <= 0 )
  2518.             { /* Not enough room in the buffer - grow it. */
  2519. #ifdef YY_USES_REJECT
  2520.             YY_FATAL_ERROR(
  2521. "input buffer overflow, can't enlarge buffer because scanner uses REJECT" );
  2522. #else
  2523.  
  2524.             /* just a shorter name for the current buffer */
  2525.             YY_BUFFER_STATE b = yy_current_buffer;
  2526.  
  2527.             int yy_c_buf_p_offset = yy_c_buf_p - b->yy_ch_buf;
  2528.  
  2529.             b->yy_buf_size *= 2;
  2530.             b->yy_ch_buf = (char *)
  2531.                 yy_flex_realloc( (void *) b->yy_ch_buf,
  2532.                          b->yy_buf_size );
  2533.  
  2534.             if ( ! b->yy_ch_buf )
  2535.                 YY_FATAL_ERROR(
  2536.                 "fatal error - scanner input buffer overflow" );
  2537.  
  2538.             yy_c_buf_p = &b->yy_ch_buf[yy_c_buf_p_offset];
  2539.  
  2540.             num_to_read = yy_current_buffer->yy_buf_size -
  2541.                         number_to_move - 1;
  2542. #endif
  2543.             }
  2544.  
  2545.         if ( num_to_read > YY_READ_BUF_SIZE )
  2546.             num_to_read = YY_READ_BUF_SIZE;
  2547.  
  2548.         /* Read in more data. */
  2549.         YY_INPUT( (&yy_current_buffer->yy_ch_buf[number_to_move]),
  2550.             yy_n_chars, num_to_read );
  2551.         }
  2552.  
  2553.     if ( yy_n_chars == 0 )
  2554.         {
  2555.         if ( number_to_move - YY_MORE_ADJ == 1 )
  2556.             {
  2557.             ret_val = EOB_ACT_END_OF_FILE;
  2558.             yyrestart( yyin );
  2559.             }
  2560.  
  2561.         else
  2562.             {
  2563.             ret_val = EOB_ACT_LAST_MATCH;
  2564.             yy_current_buffer->yy_buffer_status =
  2565.                 YY_BUFFER_EOF_PENDING;
  2566.             }
  2567.         }
  2568.  
  2569.     else
  2570.         ret_val = EOB_ACT_CONTINUE_SCAN;
  2571.  
  2572.     yy_n_chars += number_to_move;
  2573.     yy_current_buffer->yy_ch_buf[yy_n_chars] = YY_END_OF_BUFFER_CHAR;
  2574.     yy_current_buffer->yy_ch_buf[yy_n_chars + 1] = YY_END_OF_BUFFER_CHAR;
  2575.  
  2576.     /* yytext begins at the second character in yy_ch_buf; the first
  2577.      * character is the one which preceded it before reading in the latest
  2578.      * buffer; it needs to be kept around in case it's a newline, so
  2579.      * yy_get_previous_state() will have with '^' rules active.
  2580.      */
  2581.  
  2582.     yytext_ptr = &yy_current_buffer->yy_ch_buf[1];
  2583.  
  2584.     return ret_val;
  2585.     }
  2586.  
  2587.  
  2588. /* yy_get_previous_state - get the state just before the EOB char was reached */
  2589.  
  2590. static yy_state_type yy_get_previous_state()
  2591.     {
  2592.     register yy_state_type yy_current_state;
  2593.     register char *yy_cp;
  2594.  
  2595.     yy_current_state = yy_start;
  2596.  
  2597.     for ( yy_cp = yytext_ptr + YY_MORE_ADJ; yy_cp < yy_c_buf_p; ++yy_cp )
  2598.         {
  2599.         register YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
  2600.         if ( yy_accept[yy_current_state] )
  2601.             {
  2602.             yy_last_accepting_state = yy_current_state;
  2603.             yy_last_accepting_cpos = yy_cp;
  2604.             }
  2605.         while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
  2606.             {
  2607.             yy_current_state = (int) yy_def[yy_current_state];
  2608.             if ( yy_current_state >= 977 )
  2609.                 yy_c = yy_meta[(unsigned int) yy_c];
  2610.             }
  2611.         yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
  2612.         }
  2613.  
  2614.     return yy_current_state;
  2615.     }
  2616.  
  2617.  
  2618. /* yy_try_NUL_trans - try to make a transition on the NUL character
  2619.  *
  2620.  * synopsis
  2621.  *    next_state = yy_try_NUL_trans( current_state );
  2622.  */
  2623.  
  2624. #ifdef YY_USE_PROTOS
  2625. static yy_state_type yy_try_NUL_trans( yy_state_type yy_current_state )
  2626. #else
  2627. static yy_state_type yy_try_NUL_trans( yy_current_state )
  2628. yy_state_type yy_current_state;
  2629. #endif
  2630.     {
  2631.     register int yy_is_jam;
  2632.     register char *yy_cp = yy_c_buf_p;
  2633.  
  2634.     register YY_CHAR yy_c = 1;
  2635.     if ( yy_accept[yy_current_state] )
  2636.         {
  2637.         yy_last_accepting_state = yy_current_state;
  2638.         yy_last_accepting_cpos = yy_cp;
  2639.         }
  2640.     while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
  2641.         {
  2642.         yy_current_state = (int) yy_def[yy_current_state];
  2643.         if ( yy_current_state >= 977 )
  2644.             yy_c = yy_meta[(unsigned int) yy_c];
  2645.         }
  2646.     yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
  2647.     yy_is_jam = (yy_current_state == 976);
  2648.  
  2649.     return yy_is_jam ? 0 : yy_current_state;
  2650.     }
  2651.  
  2652.  
  2653. #ifdef YY_USE_PROTOS
  2654. static void yyunput( int c, register char *yy_bp )
  2655. #else
  2656. static void yyunput( c, yy_bp )
  2657. int c;
  2658. register char *yy_bp;
  2659. #endif
  2660.     {
  2661.     register char *yy_cp = yy_c_buf_p;
  2662.  
  2663.     /* undo effects of setting up yytext */
  2664.     *yy_cp = yy_hold_char;
  2665.  
  2666.     if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 )
  2667.         { /* need to shift things up to make room */
  2668.         /* +2 for EOB chars. */
  2669.         register int number_to_move = yy_n_chars + 2;
  2670.         register char *dest = &yy_current_buffer->yy_ch_buf[
  2671.                     yy_current_buffer->yy_buf_size + 2];
  2672.         register char *source =
  2673.                 &yy_current_buffer->yy_ch_buf[number_to_move];
  2674.  
  2675.         while ( source > yy_current_buffer->yy_ch_buf )
  2676.             *--dest = *--source;
  2677.  
  2678.         yy_cp += dest - source;
  2679.         yy_bp += dest - source;
  2680.         yy_n_chars = yy_current_buffer->yy_buf_size;
  2681.  
  2682.         if ( yy_cp < yy_current_buffer->yy_ch_buf + 2 )
  2683.             YY_FATAL_ERROR( "flex scanner push-back overflow" );
  2684.         }
  2685.  
  2686.     if ( yy_cp > yy_bp && yy_cp[-1] == '\n' )
  2687.         yy_cp[-2] = '\n';
  2688.  
  2689.     *--yy_cp = (char) c;
  2690.  
  2691.  
  2692.     /* Note: the formal parameter *must* be called "yy_bp" for this
  2693.      * macro to now work correctly.
  2694.      */
  2695.     YY_DO_BEFORE_ACTION; /* set up yytext again */
  2696.     }
  2697.  
  2698.  
  2699. #ifdef __cplusplus
  2700. static int yyinput()
  2701. #else
  2702. static int input()
  2703. #endif
  2704.     {
  2705.     int c;
  2706.  
  2707.     *yy_c_buf_p = yy_hold_char;
  2708.  
  2709.     if ( *yy_c_buf_p == YY_END_OF_BUFFER_CHAR )
  2710.         {
  2711.         /* yy_c_buf_p now points to the character we want to return.
  2712.          * If this occurs *before* the EOB characters, then it's a
  2713.          * valid NUL; if not, then we've hit the end of the buffer.
  2714.          */
  2715.         if ( yy_c_buf_p < &yy_current_buffer->yy_ch_buf[yy_n_chars] )
  2716.             /* This was really a NUL. */
  2717.             *yy_c_buf_p = '\0';
  2718.  
  2719.         else
  2720.             { /* need more input */
  2721.             yytext_ptr = yy_c_buf_p;
  2722.             ++yy_c_buf_p;
  2723.  
  2724.             switch ( yy_get_next_buffer() )
  2725.                 {
  2726.                 case EOB_ACT_END_OF_FILE:
  2727.                     {
  2728.                     if ( yywrap() )
  2729.                         {
  2730.                         yy_c_buf_p =
  2731.                         yytext_ptr + YY_MORE_ADJ;
  2732.                         return EOF;
  2733.                         }
  2734.  
  2735.                     YY_NEW_FILE;
  2736. #ifdef __cplusplus
  2737.                     return yyinput();
  2738. #else
  2739.                     return input();
  2740. #endif
  2741.                     }
  2742.  
  2743.                 case EOB_ACT_CONTINUE_SCAN:
  2744.                     yy_c_buf_p = yytext_ptr + YY_MORE_ADJ;
  2745.                     break;
  2746.  
  2747.                 case EOB_ACT_LAST_MATCH:
  2748. #ifdef __cplusplus
  2749.                     YY_FATAL_ERROR(
  2750.                     "unexpected last match in yyinput()" );
  2751. #else
  2752.                     YY_FATAL_ERROR(
  2753.                     "unexpected last match in input()" );
  2754. #endif
  2755.                 }
  2756.             }
  2757.         }
  2758.  
  2759.     c = *(unsigned char *) yy_c_buf_p;    /* cast for 8-bit char's */
  2760.     *yy_c_buf_p = '\0';    /* preserve yytext */
  2761.     yy_hold_char = *++yy_c_buf_p;
  2762.  
  2763.     return c;
  2764.     }
  2765.  
  2766.  
  2767. #ifdef YY_USE_PROTOS
  2768. void yyrestart( FILE *input_file )
  2769. #else
  2770. void yyrestart( input_file )
  2771. FILE *input_file;
  2772. #endif
  2773.     {
  2774.     if ( ! yy_current_buffer )
  2775.         yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE );
  2776.  
  2777.     yy_init_buffer( yy_current_buffer, input_file );
  2778.     yy_load_buffer_state();
  2779.     }
  2780.  
  2781.  
  2782. #ifdef YY_USE_PROTOS
  2783. void yy_switch_to_buffer( YY_BUFFER_STATE new_buffer )
  2784. #else
  2785. void yy_switch_to_buffer( new_buffer )
  2786. YY_BUFFER_STATE new_buffer;
  2787. #endif
  2788.     {
  2789.     if ( yy_current_buffer == new_buffer )
  2790.         return;
  2791.  
  2792.     if ( yy_current_buffer )
  2793.         {
  2794.         /* Flush out information for old buffer. */
  2795.         *yy_c_buf_p = yy_hold_char;
  2796.         yy_current_buffer->yy_buf_pos = yy_c_buf_p;
  2797.         yy_current_buffer->yy_n_chars = yy_n_chars;
  2798.         }
  2799.  
  2800.     yy_current_buffer = new_buffer;
  2801.     yy_load_buffer_state();
  2802.  
  2803.     /* We don't actually know whether we did this switch during
  2804.      * EOF (yywrap()) processing, but the only time this flag
  2805.      * is looked at is after yywrap() is called, so it's safe
  2806.      * to go ahead and always set it.
  2807.      */
  2808.     yy_did_buffer_switch_on_eof = 1;
  2809.     }
  2810.  
  2811.  
  2812. #ifdef YY_USE_PROTOS
  2813. void yy_load_buffer_state( void )
  2814. #else
  2815. void yy_load_buffer_state()
  2816. #endif
  2817.     {
  2818.     yy_n_chars = yy_current_buffer->yy_n_chars;
  2819.     yytext_ptr = yy_c_buf_p = yy_current_buffer->yy_buf_pos;
  2820.     yyin = yy_current_buffer->yy_input_file;
  2821.     yy_hold_char = *yy_c_buf_p;
  2822.     }
  2823.  
  2824.  
  2825. #ifdef YY_USE_PROTOS
  2826. YY_BUFFER_STATE yy_create_buffer( FILE *file, int size )
  2827. #else
  2828. YY_BUFFER_STATE yy_create_buffer( file, size )
  2829. FILE *file;
  2830. int size;
  2831. #endif
  2832.     {
  2833.     YY_BUFFER_STATE b;
  2834.  
  2835.     b = (YY_BUFFER_STATE) yy_flex_alloc( sizeof( struct yy_buffer_state ) );
  2836.  
  2837.     if ( ! b )
  2838.         YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
  2839.  
  2840.     b->yy_buf_size = size;
  2841.  
  2842.     /* yy_ch_buf has to be 2 characters longer than the size given because
  2843.      * we need to put in 2 end-of-buffer characters.
  2844.      */
  2845.     b->yy_ch_buf = (char *) yy_flex_alloc( b->yy_buf_size + 2 );
  2846.  
  2847.     if ( ! b->yy_ch_buf )
  2848.         YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
  2849.  
  2850.     yy_init_buffer( b, file );
  2851.  
  2852.     return b;
  2853.     }
  2854.  
  2855.  
  2856. #ifdef YY_USE_PROTOS
  2857. void yy_delete_buffer( YY_BUFFER_STATE b )
  2858. #else
  2859. void yy_delete_buffer( b )
  2860. YY_BUFFER_STATE b;
  2861. #endif
  2862.     {
  2863.     if ( b == yy_current_buffer )
  2864.         yy_current_buffer = (YY_BUFFER_STATE) 0;
  2865.  
  2866.     yy_flex_free( (void *) b->yy_ch_buf );
  2867.     yy_flex_free( (void *) b );
  2868.     }
  2869.  
  2870.  
  2871. #ifdef YY_USE_PROTOS
  2872. void yy_init_buffer( YY_BUFFER_STATE b, FILE *file )
  2873. #else
  2874. void yy_init_buffer( b, file )
  2875. YY_BUFFER_STATE b;
  2876. FILE *file;
  2877. #endif
  2878.     {
  2879.     b->yy_input_file = file;
  2880.  
  2881.     /* We put in the '\n' and start reading from [1] so that an
  2882.      * initial match-at-newline will be true.
  2883.      */
  2884.  
  2885.     b->yy_ch_buf[0] = '\n';
  2886.     b->yy_n_chars = 1;
  2887.  
  2888.     /* We always need two end-of-buffer characters.  The first causes
  2889.      * a transition to the end-of-buffer state.  The second causes
  2890.      * a jam in that state.
  2891.      */
  2892.     b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR;
  2893.     b->yy_ch_buf[2] = YY_END_OF_BUFFER_CHAR;
  2894.  
  2895.     b->yy_buf_pos = &b->yy_ch_buf[1];
  2896.  
  2897.     b->yy_is_interactive = file ? isatty( fileno(file) ) : 0;
  2898.  
  2899.     b->yy_fill_buffer = 1;
  2900.  
  2901.     b->yy_buffer_status = YY_BUFFER_NEW;
  2902.     }
  2903.  
  2904.  
  2905. #ifdef YY_USE_PROTOS
  2906. static void yy_push_state( int new_state )
  2907. #else
  2908. static void yy_push_state( new_state )
  2909. int new_state;
  2910. #endif
  2911.     {
  2912.     if ( yy_start_stack_ptr >= yy_start_stack_depth )
  2913.         {
  2914.         int new_size;
  2915.  
  2916.         yy_start_stack_depth += YY_START_STACK_INCR;
  2917.         new_size = yy_start_stack_depth * sizeof( int );
  2918.  
  2919.         if ( ! yy_start_stack )
  2920.             yy_start_stack = (int *) yy_flex_alloc( new_size );
  2921.  
  2922.         else
  2923.             yy_start_stack = (int *) yy_flex_realloc(
  2924.                     (void *) yy_start_stack, new_size );
  2925.  
  2926.         if ( ! yy_start_stack )
  2927.             YY_FATAL_ERROR(
  2928.             "out of memory expanding start-condition stack" );
  2929.         }
  2930.  
  2931.     yy_start_stack[yy_start_stack_ptr++] = YY_START;
  2932.  
  2933.     BEGIN(new_state);
  2934.     }
  2935.  
  2936.  
  2937. static void yy_pop_state()
  2938.     {
  2939.     if ( --yy_start_stack_ptr < 0 )
  2940.         YY_FATAL_ERROR( "start-condition stack underflow" );
  2941.  
  2942.     BEGIN(yy_start_stack[yy_start_stack_ptr]);
  2943.     }
  2944.  
  2945.  
  2946. static int yy_top_state()
  2947.     {
  2948.     return yy_start_stack[yy_start_stack_ptr - 1];
  2949.     }
  2950.  
  2951.  
  2952. #ifdef YY_USE_PROTOS
  2953. static void yy_fatal_error( const char msg[] )
  2954. #else
  2955. static void yy_fatal_error( msg )
  2956. char msg[];
  2957. #endif
  2958.     {
  2959.     (void) fprintf( stderr, "%s\n", msg );
  2960.     exit( 1 );
  2961.     }
  2962.  
  2963.  
  2964.  
  2965. /* Redefine yyless() so it works in section 3 code. */
  2966.  
  2967. #undef yyless
  2968. #define yyless(n) \
  2969.     do \
  2970.         { \
  2971.         /* Undo effects of setting up yytext. */ \
  2972.         yytext[yyleng] = yy_hold_char; \
  2973.         yy_c_buf_p = yytext + n - YY_MORE_ADJ; \
  2974.         yy_hold_char = *yy_c_buf_p; \
  2975.         *yy_c_buf_p = '\0'; \
  2976.         yyleng = n; \
  2977.         } \
  2978.     while ( 0 )
  2979.  
  2980.  
  2981. /* Internal utility routines. */
  2982.  
  2983. #ifndef yytext_ptr
  2984. #ifdef YY_USE_PROTOS
  2985. static void yy_flex_strncpy( char *s1, const char *s2, int n )
  2986. #else
  2987. static void yy_flex_strncpy( s1, s2, n )
  2988. char *s1;
  2989. const char *s2;
  2990. int n;
  2991. #endif
  2992.     {
  2993.     register int i;
  2994.     for ( i = 0; i < n; ++i )
  2995.         s1[i] = s2[i];
  2996.     }
  2997. #endif
  2998.  
  2999.  
  3000. #ifdef YY_USE_PROTOS
  3001. static void *yy_flex_alloc( unsigned int size )
  3002. #else
  3003. static void *yy_flex_alloc( size )
  3004. unsigned int size;
  3005. #endif
  3006.     {
  3007.     return (void *) malloc( size );
  3008.     }
  3009.  
  3010. #ifdef YY_USE_PROTOS
  3011. static void *yy_flex_realloc( void *ptr, unsigned int size )
  3012. #else
  3013. static void *yy_flex_realloc( ptr, size )
  3014. void *ptr;
  3015. unsigned int size;
  3016. #endif
  3017.     {
  3018.     return (void *) realloc( ptr, size );
  3019.     }
  3020.  
  3021. #ifdef YY_USE_PROTOS
  3022. static void yy_flex_free( void *ptr )
  3023. #else
  3024. static void yy_flex_free( ptr )
  3025. void *ptr;
  3026. #endif
  3027.     {
  3028.     free( ptr );
  3029.     }
  3030.  
  3031.  
  3032. #ifndef yywrap
  3033. int
  3034. yywrap (void)
  3035. {
  3036.   return 1;
  3037. }
  3038. #endif /* not yywrap */
  3039.  
  3040. static int
  3041. file_ascii_latin1 (const STEP *step, FILE *input_file, FILE *output_file)
  3042. {
  3043.   yy_init = 1;
  3044.   yyin = input_file;
  3045.   yyout = output_file;
  3046.   BEGIN ascii_latin1;
  3047.   return yylex ();
  3048. }
  3049.  
  3050. void
  3051. module_ascii_latin1 (void)
  3052. {
  3053.   declare_step ("ASCII-BS", "Latin-1", MANY_TO_ONE, NULL, file_ascii_latin1);
  3054. }
  3055. /* Conversion of files between different charsets and usages.
  3056.    Copyright (C) 1990, 1993 Free Software Foundation, Inc.
  3057.    Francois Pinard <pinard@iro.umontreal.ca>, 1988.
  3058.  
  3059.    This program is free software; you can redistribute it and/or modify
  3060.    it under the terms of the GNU General Public License as published by
  3061.    the Free Software Foundation; either version 2, or (at your option)
  3062.    any later version.
  3063.  
  3064.    This program is distributed in the hope that it will be useful, but
  3065.    WITHOUT ANY WARRANTY; without even the implied warranty of
  3066.    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  3067.    General Public License for more details.
  3068.  
  3069.    You should have received a copy of the GNU General Public License
  3070.    along with this program; if not, write to the Free Software
  3071.    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  3072. */
  3073.  
  3074.  
  3075. static int
  3076. file_html_latin1 (const STEP *step, FILE *input_file, FILE *output_file)
  3077. {
  3078.   yy_init = 1;
  3079.   yyin = input_file;
  3080.   yyout = output_file;
  3081.   BEGIN html_latin1;
  3082.   return yylex ();
  3083. }
  3084.  
  3085. void
  3086. module_html_latin1 (void)
  3087. {
  3088.   declare_step ("HTML", "latin1", MANY_TO_ONE, NULL, file_html_latin1);
  3089.  
  3090.   declare_alias ("WWW", "HTML");
  3091.   declare_alias ("w3", "HTML");
  3092. }
  3093. /* Conversion of files between different charsets and usages.
  3094.    Copyright (C) 1990, 1993 Free Software Foundation, Inc.
  3095.    Francois Pinard <pinard@iro.umontreal.ca>, 1988.
  3096.  
  3097.    This program is free software; you can redistribute it and/or modify
  3098.    it under the terms of the GNU General Public License as published by
  3099.    the Free Software Foundation; either version 2, or (at your option)
  3100.    any later version.
  3101.  
  3102.    This program is distributed in the hope that it will be useful, but
  3103.    WITHOUT ANY WARRANTY; without even the implied warranty of
  3104.    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  3105.    General Public License for more details.
  3106.  
  3107.    You should have received a copy of the GNU General Public License
  3108.    along with this program; if not, write to the Free Software
  3109.    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  3110. */
  3111.  
  3112.  
  3113. static int
  3114. file_latex_latin1 (const STEP *step, FILE *input_file, FILE *output_file)
  3115. {
  3116.   yy_init = 1;
  3117.   yyin = input_file;
  3118.   yyout = output_file;
  3119.   BEGIN latex_latin1;
  3120.   return yylex ();
  3121. }
  3122.  
  3123. void
  3124. module_latex_latin1 (void)
  3125. {
  3126.   declare_step ("LaTeX", "Latin-1", MANY_TO_ONE, NULL, file_latex_latin1);
  3127.  
  3128.   declare_alias ("TeX", "LaTeX");
  3129.   declare_alias ("ltex", "LaTeX");
  3130. }
  3131. /* Conversion of files between different charsets and usages.
  3132.    Copyright (C) 1990, 1993, 1994 Free Software Foundation, Inc.
  3133.    Francois Pinard <pinard@iro.umontreal.ca>, 1989.
  3134.  
  3135.    This program is free software; you can redistribute it and/or modify
  3136.    it under the terms of the GNU General Public License as published by
  3137.    the Free Software Foundation; either version 2, or (at your option)
  3138.    any later version.
  3139.  
  3140.    This program is distributed in the hope that it will be useful, but
  3141.    WITHOUT ANY WARRANTY; without even the implied warranty of
  3142.    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  3143.    General Public License for more details.
  3144.  
  3145.    You should have received a copy of the GNU General Public License
  3146.    along with this program; if not, write to the Free Software
  3147.    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  3148. */
  3149.  
  3150.  
  3151. static int
  3152. file_texte_latin1 (const STEP *step, FILE *input_file, FILE *output_file)
  3153. {
  3154.   yy_init = 1;
  3155.   yyin = input_file;
  3156.   yyout = output_file;
  3157.   BEGIN texte_latin1;
  3158.   return yylex ();
  3159. }
  3160.  
  3161. void
  3162. texte_latin1_diaeresis (void)
  3163. {
  3164.   int counter;
  3165.  
  3166.   for (counter = 0; counter < yyleng; counter++)
  3167.     if (yytext[counter+1] == diaeresis_char)
  3168.       {
  3169.     switch (yytext[counter])
  3170.       {
  3171.  
  3172.         /* The next "case 'A'" line once triggered a `NULL in input'
  3173.            diagnostic in flex.  This astonishing bug has been hard to
  3174.            isolate, so I'll leave this comment around for a while.  */
  3175.  
  3176.       case 'A': output (196); break;
  3177.       case 'E': output (203); break;
  3178.       case 'I': output (207); break;
  3179.       case 'O': output (214); break;
  3180.       case 'U': output (220); break;
  3181.       case 'a': output (228); break;
  3182.       case 'e': output (235); break;
  3183.       case 'i': output (239); break;
  3184.       case 'o': output (246); break;
  3185.       case 'u': output (252); break;
  3186.       case 'y': output (255); break;
  3187.       default:  output (yytext[counter]);
  3188.       }
  3189.     counter++;
  3190.       }
  3191.     else
  3192.       output (yytext[counter]);
  3193. }
  3194.  
  3195. void
  3196. module_texte_latin1 (void)
  3197. {
  3198.   declare_step ("Texte", "Latin-1", MANY_TO_ONE, NULL, file_texte_latin1);
  3199.  
  3200.   declare_alias ("txte", "Texte");
  3201. }
  3202.