LCOV - code coverage report
Current view: top level - hwpfilter/source - lexer.cxx (source / functions) Hit Total Coverage
Test: commit 0e63ca4fde4e446f346e35849c756a30ca294aab Lines: 0 310 0.0 %
Date: 2014-04-11 Functions: 0 21 0.0 %
Legend: Lines: hit not hit

          Line data    Source code
       1             : /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
       2             : /*
       3             :  * This file is part of the LibreOffice project.
       4             :  *
       5             :  * This Source Code Form is subject to the terms of the Mozilla Public
       6             :  * License, v. 2.0. If a copy of the MPL was not distributed with this
       7             :  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
       8             :  *
       9             :  * This file incorporates work covered by the following license notice:
      10             :  *
      11             :  *   Licensed to the Apache Software Foundation (ASF) under one or more
      12             :  *   contributor license agreements. See the NOTICE file distributed
      13             :  *   with this work for additional information regarding copyright
      14             :  *   ownership. The ASF licenses this file to you under the Apache
      15             :  *   License, Version 2.0 (the "License"); you may not use this file
      16             :  *   except in compliance with the License. You may obtain a copy of
      17             :  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
      18             :  */
      19             : 
      20             : /* A lexical scanner generated by flex */
      21             : 
      22             : /* Scanner skeleton version:
      23             :  */
      24             : #ifndef YY_STACK_USED
      25             : #define YY_STACK_USED 0
      26             : #endif
      27             : #ifndef YY_ALWAYS_INTERACTIVE
      28             : #define YY_ALWAYS_INTERACTIVE 0
      29             : #endif
      30             : #ifndef YY_NEVER_INTERACTIVE
      31             : #define YY_NEVER_INTERACTIVE 0
      32             : #endif
      33             : #ifndef YY_MAIN
      34             : #define YY_MAIN 0
      35             : #endif
      36             : 
      37             : #include <stdio.h>
      38             : 
      39             : 
      40             : /* cfront 1.2 defines "c_plusplus" instead of "__cplusplus" */
      41             : #ifdef c_plusplus
      42             : #ifndef __cplusplus
      43             : #define __cplusplus
      44             : #endif
      45             : #endif
      46             : 
      47             : 
      48             : #ifdef __cplusplus
      49             : 
      50             : #include <stdlib.h>
      51             : #ifndef WIN32
      52             : #include <unistd.h>
      53             : #else
      54             : #include <io.h>
      55             : #endif
      56             : 
      57             : 
      58             : /* Use prototypes in function declarations. */
      59             : #define YY_USE_PROTOS
      60             : 
      61             : /* The "const" storage-class-modifier is valid. */
      62             : #define YY_USE_CONST
      63             : 
      64             : #else   /* ! __cplusplus */
      65             : 
      66             : #if __STDC__
      67             : 
      68             : #define YY_USE_PROTOS
      69             : #define YY_USE_CONST
      70             : 
      71             : #endif  /* __STDC__ */
      72             : #endif  /* ! __cplusplus */
      73             : 
      74             : #ifdef YY_USE_CONST
      75             : #define yyconst const
      76             : #else
      77             : #define yyconst
      78             : #endif
      79             : 
      80             : 
      81             : #ifdef YY_USE_PROTOS
      82             : #define YY_PROTO(proto) proto
      83             : #else
      84             : #define YY_PROTO(proto) ()
      85             : #endif
      86             : 
      87             : /* Returned upon end-of-file. */
      88             : #define YY_NULL 0
      89             : 
      90             : /* Promotes a possibly negative, possibly signed char to an unsigned
      91             :  * integer for use as an array index.  If the signed char is negative,
      92             :  * we want to instead treat it as an 8-bit unsigned char, hence the
      93             :  * double cast.
      94             :  */
      95             : #define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c)
      96             : 
      97             : /* Translate the current start state into a value that can be later handed
      98             :  * to BEGIN to return to the state.
      99             :  */
     100             : #define YY_START ((yy_start - 1) / 2)
     101             : 
     102             : /* Action number for EOF rule of a given start state. */
     103             : #define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)
     104             : 
     105             : /* Special action meaning "start processing a new file". */
     106             : #define YY_NEW_FILE yyrestart( yyin )
     107             : 
     108             : #define YY_END_OF_BUFFER_CHAR 0
     109             : 
     110             : /* Size of default input buffer. */
     111             : #define YY_BUF_SIZE 16384
     112             : 
     113             : typedef struct yy_buffer_state *YY_BUFFER_STATE;
     114             : 
     115             : extern int yyleng;
     116             : extern FILE *yyin, *yyout;
     117             : 
     118             : #define EOB_ACT_CONTINUE_SCAN 0
     119             : #define EOB_ACT_END_OF_FILE 1
     120             : #define EOB_ACT_LAST_MATCH 2
     121             : 
     122             : //#define unput(c) yyunput( c, yytext_ptr )
     123             : 
     124             : /* The following is because we cannot portably get our hands on size_t
     125             :  * (without autoconf's help, which isn't available because we want
     126             :  * flex-generated scanners to compile on their own).
     127             :  */
     128             : typedef unsigned int yy_size_t;
     129             : 
     130             : 
     131             : struct yy_buffer_state
     132             :     {
     133             :     FILE *yy_input_file;
     134             : 
     135             :     char *yy_ch_buf;        /* input buffer */
     136             :     char *yy_buf_pos;       /* current position in input buffer */
     137             : 
     138             :     /* Size of input buffer in bytes, not including room for EOB
     139             :      * characters.
     140             :      */
     141             :     yy_size_t yy_buf_size;
     142             : 
     143             :     /* Number of characters read into yy_ch_buf, not including EOB
     144             :      * characters.
     145             :      */
     146             :     int yy_n_chars;
     147             : 
     148             :     /* Whether we "own" the buffer - i.e., we know we created it,
     149             :      * and can realloc() it to grow it, and should free() it to
     150             :      * delete it.
     151             :      */
     152             :     int yy_is_our_buffer;
     153             : 
     154             :     /* Whether this is an "interactive" input source; if so, and
     155             :      * if we're using stdio for input, then we want to use getc()
     156             :      * instead of fread(), to make sure we stop fetching input after
     157             :      * each newline.
     158             :      */
     159             :     bool yy_is_interactive;
     160             : 
     161             :     /* Whether we're considered to be at the beginning of a line.
     162             :      * If so, '^' rules will be active on the next match, otherwise
     163             :      * not.
     164             :      */
     165             :     int yy_at_bol;
     166             : 
     167             :     /* Whether to try to fill the input buffer when we reach the
     168             :      * end of it.
     169             :      */
     170             :     int yy_fill_buffer;
     171             : 
     172             :     int yy_buffer_status;
     173             : #define YY_BUFFER_NEW 0
     174             : #define YY_BUFFER_NORMAL 1
     175             :     /* When an EOF's been seen but there's still some text to process
     176             :      * then we mark the buffer as YY_EOF_PENDING, to indicate that we
     177             :      * shouldn't try reading from the input source any more.  We might
     178             :      * still have a bunch of tokens to match, though, because of
     179             :      * possible backing-up.
     180             :      *
     181             :      * When we actually see the EOF, we change the status to "new"
     182             :      * (via yyrestart()), so that the user can continue scanning by
     183             :      * just pointing yyin at a new input file.
     184             :      */
     185             : #define YY_BUFFER_EOF_PENDING 2
     186             :     };
     187             : 
     188             : static YY_BUFFER_STATE yy_current_buffer = 0;
     189             : 
     190             : /* We provide macros for accessing buffer states in case in the
     191             :  * future we want to put the buffer states in a more general
     192             :  * "scanner state".
     193             :  */
     194             : #define YY_CURRENT_BUFFER yy_current_buffer
     195             : 
     196             : 
     197             : /* yy_hold_char holds the character lost when yytext is formed. */
     198             : static char yy_hold_char;
     199             : 
     200             : static int yy_n_chars;      /* number of characters read into yy_ch_buf */
     201             : 
     202             : 
     203             : int yyleng;
     204             : 
     205             : /* Points to current character in buffer. */
     206             : static char *yy_c_buf_p = (char *) 0;
     207             : static int yy_init = 1;     /* whether we need to initialize */
     208             : static int yy_start = 0;    /* start state number */
     209             : 
     210             : /* Flag which is used to allow yywrap()'s to do buffer switches
     211             :  * instead of setting up a fresh yyin.  A bit of a hack ...
     212             :  */
     213             : static int yy_did_buffer_switch_on_eof;
     214             : 
     215             : void yyrestart YY_PROTO(( FILE *input_file ));
     216             : 
     217             : void yy_switch_to_buffer YY_PROTO(( YY_BUFFER_STATE new_buffer ));
     218             : void yy_load_buffer_state YY_PROTO(( void ));
     219             : YY_BUFFER_STATE yy_create_buffer YY_PROTO(( FILE *file, int size ));
     220             : void yy_delete_buffer YY_PROTO(( YY_BUFFER_STATE b ));
     221             : void yy_init_buffer YY_PROTO(( YY_BUFFER_STATE b, FILE *file ));
     222             : void yy_flush_buffer YY_PROTO(( YY_BUFFER_STATE b ));
     223             : 
     224             : YY_BUFFER_STATE yy_scan_buffer YY_PROTO(( char *base, yy_size_t size ));
     225             : YY_BUFFER_STATE yy_scan_string YY_PROTO(( yyconst char *yy_str ));
     226             : YY_BUFFER_STATE yy_scan_bytes YY_PROTO(( yyconst char *bytes, int len ));
     227             : 
     228             : static void *yy_flex_alloc YY_PROTO(( yy_size_t ));
     229             : static void *yy_flex_realloc YY_PROTO(( void *, yy_size_t ));
     230             : static void yy_flex_free YY_PROTO(( void * ));
     231             : 
     232             : typedef unsigned char YY_CHAR;
     233             : FILE *yyin = (FILE *) 0, *yyout = (FILE *) 0;
     234             : typedef int yy_state_type;
     235             : extern char *yytext;
     236             : #define yytext_ptr yytext
     237             : 
     238             : static yy_state_type yy_get_previous_state YY_PROTO(( void ));
     239             : static yy_state_type yy_try_NUL_trans YY_PROTO(( yy_state_type current_state ));
     240             : static int yy_get_next_buffer YY_PROTO(( void ));
     241             : static void yy_fatal_error YY_PROTO(( yyconst char msg[] ));
     242             : 
     243             : /* Done after the current pattern has been matched and before the
     244             :  * corresponding action - sets up yytext.
     245             :  */
     246             : #define YY_DO_BEFORE_ACTION \
     247             :     yytext_ptr = yy_bp; \
     248             :     yyleng = (int) (yy_cp - yy_bp); \
     249             :     yy_hold_char = *yy_cp; \
     250             :     *yy_cp = '\0'; \
     251             :     yy_c_buf_p = yy_cp;
     252             : 
     253             : #define YY_END_OF_BUFFER 46
     254             : static yyconst short int yy_accept[994] =
     255             :     {   0,
     256             :         0,    0,   46,   44,   41,   41,   44,   42,   39,   37,
     257             :        37,   36,   39,   39,   44,   44,   38,   40,   35,   43,
     258             :        13,   21,   36,   36,   22,   16,   17,    0,   34,    0,
     259             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     260             :         0,    0,   24,    0,   24,    0,    0,    0,    0,    0,
     261             :         7,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     262             :         0,    0,    0,    0,   42,    0,    0,    0,    0,    0,
     263             :         0,    0,    0,    0,    0,    0,    4,   31,    5,   43,
     264             :        36,   20,   14,   15,    0,    0,    0,    0,    0,    0,
     265             :         0,    0,    0,    0,    0,    0,   24,    0,    0,    0,
     266             : 
     267             :         0,    0,    0,   10,    0,    0,   27,    0,    0,    0,
     268             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     269             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     270             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     271             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     272             :         0,    0,    0,    0,    0,    0,   12,   12,    0,    0,
     273             :         0,    0,    0,    0,    0,   12,    0,    0,    0,    0,
     274             :         0,    0,    0,    0,   12,    0,   27,    0,    0,    0,
     275             :         0,    0,    0,    0,    0,   11,    0,    9,    0,    0,
     276             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     277             : 
     278             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     279             :         0,    0,    0,   23,    0,    0,    0,    0,    0,    0,
     280             :         0,    0,    0,    0,    0,    0,    0,    0,   19,    0,
     281             :         0,    0,    0,    0,    0,    0,    0,    0,    0,   18,
     282             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     283             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     284             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     285             :         0,    0,    0,    0,    8,    0,    0,    0,    0,    0,
     286             :         0,    0,    0,    0,    0,    0,    0,    0,    0,   27,
     287             :        27,    0,    0,    0,    0,   12,    0,    0,    8,    0,
     288             : 
     289             :         0,    0,    2,    0,    0,    0,    0,    0,    0,    0,
     290             :         0,    0,    0,    0,    0,    0,    0,   27,   26,    0,
     291             :         0,    0,    0,    0,    0,    0,    0,    0,    0,   27,
     292             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     293             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     294             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     295             :         0,    0,    0,    0,    0,    0,    0,    0,   12,   27,
     296             :         0,    0,    0,    0,    0,    0,    0,    0,    0,   27,
     297             :         0,    0,   27,    0,    0,    0,    0,    0,    0,    0,
     298             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     299             : 
     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             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     305             :         0,   11,    0,    0,    0,    0,    0,    0,    8,    0,
     306             :         0,    0,    0,    0,    0,    0,    0,    0,    0,   29,
     307             :         0,    0,    0,    0,    0,    0,   24,    0,    0,    0,
     308             :         0,    0,    0,    0,    0,    3,    0,    0,    0,    0,
     309             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     310             : 
     311             :         0,    0,    0,    0,    0,    0,    0,   30,    0,    0,
     312             :        12,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     313             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     314             :         0,    0,    0,   28,    0,    0,   12,    0,    0,    0,
     315             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     316             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     317             :        19,    0,    0,    0,    0,    0,    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             :         1,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     321             : 
     322             :         0,    0,    0,    0,    0,    0,   25,    0,    0,    0,
     323             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     324             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     325             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     326             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     327             :         0,    0,    0,    0,    0,    6,    0,    0,    0,    0,
     328             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     329             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     330             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     331             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     332             : 
     333             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     334             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     335             :         0,    0,    0,    0,    0,    0,    0,    0,   32,    0,
     336             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     337             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     338             :         0,    0,    0,    0,    0,   12,    0,   12,    0,    0,
     339             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     340             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     341             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     342             :         0,    0,    0,    0,    0,    0,   11,    0,    0,    0,
     343             : 
     344             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     345             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     346             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     347             :         0,    0,    0,    0,    0,   33,    0,    0,    0,    0,
     348             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     349             :         0,    0,    0,    0,    0,   19,    0,    0,    0,    0,
     350             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     351             :         0,    0,   12,   12,    0,   24,    0,    0,    0,    0,
     352             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     353             :         0,    0,   19,    0,    0,    0,    0,    0,    0,    0,
     354             : 
     355             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     356             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     357             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     358             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     359             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     360             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     361             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     362             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     363             :         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
     364             :         0,    0,    0
     365             : 
     366             :     } ;
     367             : 
     368             : static yyconst int yy_ec[256] =
     369             :     {   0,
     370             :         1,    1,    1,    1,    1,    1,    1,    1,    2,    3,
     371             :         1,    1,    2,    1,    1,    1,    1,    1,    1,    1,
     372             :         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
     373             :         1,    1,    4,    1,    1,    1,    1,    5,    1,    6,
     374             :         7,    8,    8,    9,   10,   11,    8,   12,   12,   12,
     375             :        12,   12,   12,   12,   12,   12,   12,   13,   14,   15,
     376             :        16,   17,    1,    1,   18,   19,   20,   21,   22,    1,
     377             :        23,    1,   24,   25,   26,   27,   28,   29,   30,   31,
     378             :         1,   32,   33,   34,   35,   36,    1,   37,    1,   38,
     379             :        39,   40,   41,   42,   42,    1,   43,   44,   45,   46,
     380             : 
     381             :        47,   48,   49,   50,   51,   52,   53,   54,   55,   56,
     382             :        57,   58,   59,   60,   61,   62,   63,   64,   65,   66,
     383             :        67,   68,   69,   70,   71,   72,    1,    1,    1,    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,    1,    1,    1,    1,    1,    1,    1,    1,    1,
     387             :        73,   73,   73,   73,   73,   73,   73,   73,   73,   73,
     388             :        73,   73,   73,   73,   73,   73,   73,   73,   73,   73,
     389             :        73,   73,   73,   73,   73,   73,   73,   73,   73,   73,
     390             :        73,   73,   73,   73,   73,   73,   73,   73,   73,   73,
     391             : 
     392             :        73,   73,   73,   73,   73,   73,   73,   73,   73,   73,
     393             :        73,   73,   73,   73,   73,   73,   73,   73,   73,   73,
     394             :        73,   73,   73,   73,   73,   73,   73,   73,   73,   73,
     395             :        73,   73,   73,   73,   73,   73,   73,   73,   73,   73,
     396             :        73,   73,   73,   73,   73,   73,   73,   73,   73,   73,
     397             :        73,   73,   73,   73,    1
     398             :     } ;
     399             : 
     400             : static yyconst int yy_meta[74] =
     401             :     {   0,
     402             :         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
     403             :         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
     404             :         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
     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
     410             :     } ;
     411             : 
     412             : static yyconst short int yy_base[995] =
     413             :     {   0,
     414             :         0,   72, 1314, 1315, 1315, 1315, 1297, 1315, 1315, 1315,
     415             :      1295,    2,    8, 1294, 1281,  142, 1315, 1315, 1315, 1236,
     416             :      1315, 1315, 1296,    8, 1290, 1291, 1288, 1274, 1315,    0,
     417             :         0, 1253,    1,    1, 1259,    7, 1244, 1257,    8, 1236,
     418             :      1235, 1242,   35,   43, 1245,    0, 1237, 1251, 1242, 1245,
     419             :      1315,   46,   72,  171,   79,   62,   77,  184,  192,   92,
     420             :      1236,    2,  207,  216,  225,  234,  250,   46,  269,  278,
     421             :       295,   10,  111,  255,   10, 1243, 1315, 1315, 1315, 1216,
     422             :      1276, 1315, 1315, 1315, 1253, 1228, 1225, 1222, 1217, 1231,
     423             :      1227, 1237, 1214, 1217, 1234, 1221, 1315, 1213, 1223, 1215,
     424             : 
     425             :      1217, 1223, 1214, 1315,  168, 1218, 1315, 1217, 1210, 1217,
     426             :      1216, 1201, 1216,  177, 1202, 1199, 1197,   34, 1216, 1209,
     427             :      1199,  181,   36,  164,  198, 1207,  119,  199, 1201, 1196,
     428             :      1196,  218, 1192, 1188,  225, 1205, 1191,   78,   40,  245,
     429             :       280, 1197,  175, 1184, 1192, 1187, 1198, 1182, 1179, 1198,
     430             :       101, 1197, 1179,  227, 1183, 1191, 1177, 1315, 1192, 1172,
     431             :      1190, 1189,   53, 1184, 1187,  260, 1167, 1171, 1184, 1168,
     432             :      1165,  248, 1177, 1166,  291, 1168, 1161, 1174, 1164, 1161,
     433             :       222,  268, 1160,    0, 1170, 1315, 1172, 1315,  247,  299,
     434             :      1152, 1170, 1155, 1155,  300, 1156, 1155, 1157, 1160, 1146,
     435             : 
     436             :      1145, 1153,  302, 1152, 1139, 1158, 1144, 1152, 1147, 1143,
     437             :      1136,  308, 1146, 1137, 1150, 1136,  317, 1148,  308,  318,
     438             :      1147,  311, 1146,  322, 1145,  312, 1140,  319, 1128, 1134,
     439             :       324,  340, 1124,  333,  340, 1137, 1136, 1121, 1118, 1315,
     440             :      1129, 1121, 1134, 1114, 1120, 1118, 1122, 1117, 1128, 1114,
     441             :      1111, 1124, 1105, 1117, 1116, 1119, 1113, 1107, 1099, 1100,
     442             :      1102, 1107,  344, 1114, 1094, 1097, 1104, 1099,  327, 1092,
     443             :       347, 1094, 1095, 1096, 1315, 1105, 1096, 1103,  350, 1083,
     444             :      1099, 1079, 1088, 1079, 1095, 1094, 1094, 1088, 1076, 1085,
     445             :      1084, 1084, 1082, 1082, 1068, 1067, 1073, 1071, 1079, 1069,
     446             : 
     447             :      1069, 1061, 1315, 1071, 1070, 1059, 1057, 1075, 1072, 1051,
     448             :      1060, 1050, 1053, 1052, 1058, 1054,  348, 1047, 1315, 1065,
     449             :      1045, 1048, 1061, 1055, 1052, 1040, 1039, 1043, 1042,  338,
     450             :      1035, 1048, 1035, 1048, 1038, 1039, 1029, 1031,  276, 1030,
     451             :      1027, 1026, 1038,  371, 1023, 1042, 1029, 1023,  355, 1024,
     452             :      1036, 1025,  372, 1036, 1032, 1028, 1025, 1020, 1017, 1016,
     453             :      1022, 1008, 1014, 1020, 1008, 1012, 1006, 1010, 1017, 1013,
     454             :      1008, 1007, 1014,  360,  997,  995,  997,  995, 1010,  372,
     455             :      1008,  993, 1002,  156, 1005, 1003, 1006, 1001,  997,  996,
     456             :       985,  987,  980,  991,  374,  980,  978,  977,  989,  990,
     457             : 
     458             :       993,  992,  969,  990,  975,  988,  976,  986,  985,  981,
     459             :       379,  191,  983,  965,  962,  980,  979,  961,  955,  965,
     460             :       960,  374,  967,  965,  965,  967,  963,  969,  962,  963,
     461             :       947,  951,  950,  955,  962,  939,  945,  941,  938,  944,
     462             :       377,  383,  940,  938,  939,  949,  948,  943,  946,  945,
     463             :       944,  929,  936,  927,  930,  939,  921,  935,  922,  939,
     464             :       924,  933,  920,  935,  910,  922,  911,  912,  919, 1315,
     465             :       916,  928,  923,  907,  388,  906,  920,  916,  898,  914,
     466             :       920,  916,  907,  906,  898,  400,  901,  894,  900,  892,
     467             :       893,  392,  891,  898,  902,  907,  889,  888,  891,  895,
     468             : 
     469             :       885,  901,  883,  879,  880,  879,  892,  405,  884,  886,
     470             :       889,  888,  872,  887,  878,  877,  887,  872,  865,  865,
     471             :       865,  876,  870,  863,  871,  863,  877,  860,  864,  870,
     472             :       869,  857,  856, 1315,  400,  866,  865,  851,  863,  849,
     473             :       861,  864,  859,  844,  848,  843,  856,  855,  840,  834,
     474             :       837,  843,  838,  403,  845,  843,  843,  834,  841,  829,
     475             :      1315,  842,  401,  824,  831,  826,  828,  841,  823,  831,
     476             :       834,  829,  822,  835,  820,  820,  818,  813,  822,  815,
     477             :       822,  823,  809,  802,  806,  810,  809,  800,  809,  801,
     478             :      1315,  803,  800,  801,  404,  807,  803,  805,  810,  803,
     479             : 
     480             :       799,  805,  805,  803,  785,  786, 1315,  784,  800,  785,
     481             :       797,  787,  782,  780,  783,  778,  784,  776,  789,  784,
     482             :       783,  790,  785,  771,  787,  778,  768,  769,  778,  767,
     483             :       762,  776,  779,  770,  763,  758,  764,  774,  759,   93,
     484             :       126,  187,  225,  269,  333,  415,  345,  372,  388,  397,
     485             :       400,  417,  418,  408,  411,  427,  409,  418,  426,  417,
     486             :       419,  415,  417,  418,  419,  419,  423,  422,  422,  428,
     487             :       438,  438,  444,  432,  434,  434,  431,  442,  437,  446,
     488             :       449,  436,  456,  449,  454,  456,  443,  448,  445,  457,
     489             :       459,  459,  453,  450,  446,  469,  457,  463,  460,  454,
     490             : 
     491             :       460,  471,  476,  473,  476,  458,  461,  468,  462,  471,
     492             :       484,  485,  466,  481,  484,  481,  473,  488,  475,  489,
     493             :       481,  475,  491,  491,  496,  482,  483,  495, 1315,  502,
     494             :       498,  490,  500,  503,  497,  487,  488,  498,  512,  508,
     495             :       501,  509,  512,  506,  514,  502,  520,  521,  518,  501,
     496             :       504,  505,  506,  523,  524,  525,  526,  527,  510,  519,
     497             :       523,  518,  528,  515,  538,  526,  532,  529,  523,  535,
     498             :       525,  534,  529,  533,  534,  542,  531,  544,  535,  536,
     499             :       543,  555,  556,  545,  541,  541,  540,  543,  558,  548,
     500             :       549,  552,  548,  563,  551,  550,  552,  557,  553,  565,
     501             : 
     502             :       555,  568,  576,  563,  563,  572,  578,  562,  564,  576,
     503             :       582,  566,  582,  580,  577,  572,  573,  589,  574,  581,
     504             :       586,  576,  577,  581,  579,  583,  583,  597,  602,  590,
     505             :       587,  594,  606,  607,  597, 1315,  606,  591,  589,  590,
     506             :       594,  614,  596,  602,  600,  604,  600,  613,  603,  604,
     507             :       617,  605,  605,  604,  608,  628,  610,  619,  610,  619,
     508             :       615,  628,  636,  618,  619,  635,  640,  622,  628,  628,
     509             :       637,  626,  642,  643,  644,  646,  648,  647,  635,  640,
     510             :       641,  652,  658,  642,  652,  661,  640,  650,  652,  655,
     511             :       659,  651,  669,  656,  671,  668,  656,  666,  661,  676,
     512             : 
     513             :       660,  678,  657,  666,  677,  666,  667,  680,  677,  682,
     514             :       673,  675,  676,  673,  674,  686,  676,  672,  691,  677,
     515             :       680,  681,  686,  683,  684,  696,  686,  687,  688,  692,
     516             :       702,  702,  687,  693,  697,  705,  696,  711,  701,  699,
     517             :       714,  701,  705,  713,  704,  708,  706,  711,  706,  719,
     518             :       713,  706,  710,  716,  718,  718,  713,  722,  723,  723,
     519             :       725,  718,  722,  728,  721,  730,  742,  727,  725,  748,
     520             :       727,  728,  729,  730,  731,  754,  733,  734,  743,  743,
     521             :       742,  747,  748,  746,  742,  748,  749,  754,  754,  755,
     522             :       748,  749, 1315,  814
     523             : 
     524             :     } ;
     525             : 
     526             : static yyconst short int yy_def[995] =
     527             :     {   0,
     528             :       994,  994,  993,  993,  993,  993,  993,  993,  993,  993,
     529             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     530             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     531             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     532             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     533             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     534             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     535             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     536             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     537             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     538             : 
     539             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     540             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     541             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     542             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     543             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     544             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     545             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     546             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     547             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     548             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     549             : 
     550             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     551             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     552             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     553             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     554             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     555             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     556             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     557             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     558             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     559             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     560             : 
     561             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     562             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     563             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     564             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     565             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     566             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     567             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     568             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     569             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     570             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     571             : 
     572             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     573             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     574             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     575             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     576             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     577             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     578             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     579             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     580             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     581             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     582             : 
     583             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     584             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     585             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     586             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     587             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     588             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     589             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     590             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     591             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     592             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     593             : 
     594             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     595             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     596             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     597             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     598             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     599             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     600             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     601             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     602             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     603             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     604             : 
     605             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     606             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     607             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     608             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     609             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     610             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     611             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     612             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     613             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     614             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     615             : 
     616             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     617             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     618             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     619             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     620             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     621             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     622             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     623             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     624             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     625             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     626             : 
     627             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     628             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     629             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     630             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     631             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     632             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     633             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     634             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     635             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     636             :       993,  993,    0,  993
     637             : 
     638             :     } ;
     639             : 
     640             : static yyconst short int yy_nxt[1389] =
     641             :     {   0,
     642             :       993,    5,    6,    7,    8,    9,    9,   10,  993,   11,
     643             :       993,   12,   23,   24,   13,   10,   14,   25,   23,   24,
     644             :       993,  993,   26,  993,  993,  993,   15,  993,  993,  993,
     645             :       993,  993,  993,  993,  993,  993,  993,  993,    9,   16,
     646             :         9,   17,  112,  993,  170,  158,   88,   91,  171,  113,
     647             :       101,   92,  993,   86,  102,  107,   89,   93,   94,   87,
     648             :       188,   97,   95,   98,  103,  231,  238,  232,    9,   18,
     649             :         9,   19,   20,    5,    6,    7,    8,    9,    9,   10,
     650             :       266,   11,  294,   12,  106,  104,   13,   10,   14,   97,
     651             :       117,  267,  109,  110,  107,  108,  295,  186,   15,  118,
     652             : 
     653             :       119,  120,  273,  121,  205,  122,  123,  107,  206,  315,
     654             :         9,   16,    9,   17,  124,  145,  146,  147,  125,  148,
     655             :       149,  138,  126,  150,  139,  140,  292,  151,  127,  141,
     656             :       152,  128,  142,  153,  129,  143,  154,  164,  293,  144,
     657             :         9,   18,    9,   19,   20,   29,  165,  166,  167,  737,
     658             :        29,  306,  168,  233,   29,   29,  234,  235,  107,   30,
     659             :        31,   32,   33,   34,   35,   36,   37,   38,   39,   40,
     660             :        41,   42,   43,   44,   45,   46,   47,   48,   49,   50,
     661             :        97,   51,  738,  280,   52,   53,   54,   55,   56,   57,
     662             :        58,   59,   60,   61,   62,   63,   64,   65,   66,   67,
     663             : 
     664             :        68,   69,   70,   71,   72,   73,   74,   75,  274,   76,
     665             :        77,   78,   79,  130,  255,  541,  131,  542,  256,  260,
     666             :       132,  133,  261,  275,  134,  271,  155,  135,  156,  107,
     667             :       157,  136,  158,  137,  160,  161,  299,  262,  162,  300,
     668             :       272,  281,  276,  159,  571,  282,  277,  186,  163,  172,
     669             :       572,  173,  174,  175,  176,  177,  178,  179,  182,  278,
     670             :       158,  180,  107,  181,  285,  183,  184,  189,  188,  309,
     671             :       107,  190,  185,  186,  186,  158,  187,  332,  188,  193,
     672             :       288,  191,  289,  310,  194,  290,  291,  188,  195,  192,
     673             :       336,  196,  200,  107,  197,  198,  201,  199,  296,  202,
     674             : 
     675             :       188,  236,  323,  324,  186,  237,  107,  318,  337,  203,
     676             :       204,  207,   97,  208,  186,  209,  210,  211,  212,  213,
     677             :       216,  319,  297,  214,  217,  333,  499,  218,  219,  186,
     678             :       215,  500,  220,  107,  107,  221,  222,  226,  327,  223,
     679             :       224,  338,  225,  186,  227,  228,  343,   97,  351,  158,
     680             :       344,  229,  352,  186,  230,  374,  368,  158,  353,  365,
     681             :       371,  107,  369,  370,  188,  378,  379,  383,  372,  388,
     682             :       375,  376,  385,  386,  188,  396,  319,  389,  366,  380,
     683             :       430,  381,  391,  390,  275,  392,  186,  431,  489,  397,
     684             :       421,  433,  739,  393,  441,  742,  477,  509,  490,  398,
     685             : 
     686             :       394,  422,  532,  423,  424,  425,  442,  434,  435,  478,
     687             :       443,  444,  445,  446,  447,  503,  510,  319,  538,  592,
     688             :       553,  569,  533,  579,  104,  743,  504,  593,  595,  513,
     689             :       744,  554,  539,  555,  556,  557,  558,  596,  570,  594,
     690             :       597,  619,  624,  664,  598,  632,  633,  620,  645,  625,
     691             :       683,  634,  678,  188,  706,  158,  158,  665,  646,  626,
     692             :       707,  740,  684,   79,  647,  741,  745,   79,  729,  746,
     693             :       748,  749,   97,  750,  751,  752,  747,  753,  754,  755,
     694             :       756,  158,  757,  758,  759,  760,  761,  762,  764,  765,
     695             :       766,  767,  188,  188,  768,  769,  770,  763,  771,  772,
     696             : 
     697             :       773,   97,  774,  104,  775,  776,  777,  778,  104,  779,
     698             :       561,  780,  104,  781,  782,  783,  784,  785,  786,  158,
     699             :       186,  319,  319,  787,  788,  789,  790,  792,  793,  794,
     700             :       795,  796,  186,  797,  798,  799,  188,  800,  801,  802,
     701             :       803,  804,  805,  806,  807,  808,  791,  809,  810,   97,
     702             :        97,  561,  561,  188,  811,  812,  813,  814,  815,   97,
     703             :       158,  816,  817,  818,   97,  561,  819,  820,  821,  822,
     704             :       823,  824,  825,  826,  561,  827,  828,  829,  830,  561,
     705             :       831,  188,  832,  833,  834,  835,  836,  837,  838,  839,
     706             :       840,  841,  842,  843,  844,  845,  846,  104,  104,   97,
     707             : 
     708             :       847,  848,  849,  319,  850,  319,  319,  851,  319,  319,
     709             :       852,   97,  853,  854,   97,  855,  856,  857,  858,  859,
     710             :       860,  861,  862,  863,  864,  865,  866,  867,  836,  868,
     711             :       158,  869,  870,  871,  186,  319,  872,  873,  874,  158,
     712             :       158,  158,  875,  876,  877,  878,  879,  880,  188,  188,
     713             :       881,  882,  729,  561,  561,  883,  884,  886,  887,  888,
     714             :       889,  729,   78,  319,  319,  890,  729,  891,  561,   97,
     715             :       892,  893,  158,  885,  561,  894,  895,  896,  897,  899,
     716             :       900,  836,  901,  902,  903,  904,  905,   97,  906,  907,
     717             :       158,   97,  910,  836,  911,  898,  912,  913,  836,  908,
     718             : 
     719             :       914,  915,  916,  917,  561,  909,  918,  104,  919,  920,
     720             :       921,  922,  923,  924,  729,  925,  926,  561,  927,  928,
     721             :       929,  561,  930,  729,  158,  158,  931,  932,  836,  933,
     722             :       188,  188,  934,  935,  936,  937,  561,  938,   97,  939,
     723             :       940,  941,  942,  943,  944,  945,  946,  947,  948,  949,
     724             :       950,  561,  951,  952,  953,  954,  955,  957,  958,  959,
     725             :       961,  962,  963,  964,  965,  966,  967,  186,  968,  969,
     726             :       561,  970,  971,  956,  972,  186,  960,  561,  973,  974,
     727             :       561,  975,  561,  976,  977,  836,  978,  979,  186,  561,
     728             :       981,  561,  982,  561,  983,  561,  984,  561,  836,  985,
     729             : 
     730             :       561,  986,  186,  561,  980,  987,  988,  989,  990,  561,
     731             :       991,  992,  561,  561,    4,  736,  735,  734,  158,  561,
     732             :       733,  732,  731,  730,  107,  107,  729,   77,  728,  727,
     733             :       726,   77,  188,  725,  724,  723,  722,   97,   97,  721,
     734             :       720,  719,  718,  717,  186,  319,  716,  186,  715,  158,
     735             :       714,  319,  713,  712,  711,  710,  709,  708,  319,  705,
     736             :       319,  704,  703,  702,  107,  107,  107,  158,  701,  700,
     737             :       699,  104,  104,  698,  697,  696,  695,  694,  693,  692,
     738             :       691,  690,  689,  104,  688,  687,  686,  685,  186,  607,
     739             :       158,  682,  681,  680,  679,  677,  676,  186,  675,  674,
     740             : 
     741             :       186,  186,  673,  672,  186,  275,  188,  671,  670,  669,
     742             :       668,  667,  666,  186,  186,  663,  158,  662,  158,  188,
     743             :        97,  661,  660,  659,  658,  657,  656,  655,  654,  653,
     744             :        79,  652,   29,  651,   97,  650,  649,  648,  644,  643,
     745             :       186,  642,  641,  188,  640,  158,  158,  639,  638,   97,
     746             :       637,  636,  635,  631,  630,  629,  628,  627,  607,   77,
     747             :       623,  622,  188,   97,  607,   97,  158,  621,  618,  275,
     748             :       188,  158,  617,  616,  158,  615,  614,  613,  158,  561,
     749             :       612,  188,  607,  611,  158,  610,  609,  608,  275,  607,
     750             :       606,  275,  605,  604,  603,  602,  601,  600,  599,  591,
     751             : 
     752             :       590,  589,  158,  588,  587,  586,  585,  584,  583,   97,
     753             :       186,  188,   97,  275,  582,  581,  580,  578,  577,  576,
     754             :       575,  104,  104,  574,  573,  104,  568,  104,  104,  567,
     755             :       566,  565,  104,  564,  104,  188,  563,  562,  561,  560,
     756             :       559,  552,  551,  550,  549,  548,  547,  546,  545,  544,
     757             :       543,  107,  540,   97,  537,  536,  186,  535,  534,  531,
     758             :       530,  529,  107,  528,  527,  526,  525,  524,  523,  522,
     759             :       521,  520,  519,  518,  517,  516,  515,   29,  514,  512,
     760             :       511,  158,  508,  507,  506,  505,  502,  319,  186,  501,
     761             :       498,  497,  496,  495,  494,  493,  492,  491,  488,  487,
     762             : 
     763             :       486,  485,  484,  483,  482,  481,  480,  188,  479,  476,
     764             :       475,  474,   97,  473,  472,  471,  470,  469,   97,  468,
     765             :       467,  466,  465,  186,  464,  463,  462,  461,  460,  459,
     766             :       458,  457,  456,  107,  107,  455,  158,  454,  186,  453,
     767             :       452,  451,  450,  449,  448,  188,  440,  439,  438,  437,
     768             :       436,  432,  429,  428,  427,  426,  104,  420,  419,  418,
     769             :       417,  416,  415,  414,  413,  412,  411,  410,  409,  158,
     770             :       104,  408,  407,  406,  405,  404,  104,  403,  402,  401,
     771             :       158,  400,  399,  395,  387,   97,  384,  382,  377,  373,
     772             :       367,  364,  363,  362,  361,  360,  359,  358,  357,  356,
     773             : 
     774             :       355,  354,  188,  188,  350,  349,  348,  347,  346,  345,
     775             :       342,  341,  340,  339,  335,  334,   97,  331,  330,  186,
     776             :       329,  328,  326,  325,  107,  322,  321,  158,  320,  317,
     777             :       316,  314,  313,  275,  312,  158,  107,  311,  308,  307,
     778             :       188,  305,  304,  303,  302,   97,  301,  298,  186,  107,
     779             :       287,  286,  284,  186,  283,  279,  270,  269,  268,  265,
     780             :       264,  263,  259,  104,  258,  257,  104,  104,  104,  254,
     781             :       253,  252,  251,  250,  249,  248,  104,  247,  246,  245,
     782             :       244,  104,   97,  243,  242,  241,  240,   81,   80,  239,
     783             :       169,  116,  104,  115,  114,  111,  105,  104,  104,  100,
     784             : 
     785             :        99,   96,   90,   85,   84,   83,   82,   81,   80,   28,
     786             :        27,   22,   21,  993,    3,  993,  993,  993,  993,  993,
     787             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     788             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     789             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     790             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     791             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     792             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     793             :       993,  993,  993,  993,  993,  993,  993,  993
     794             :     } ;
     795             : 
     796             : static yyconst short int yy_chk[1389] =
     797             :     {   0,
     798             :         0,    1,    1,    1,    1,    1,    1,    1,    0,    1,
     799             :         0,    1,   12,   12,    1,    1,    1,   13,   24,   24,
     800             :         0,    0,   13,    0,    0,    0,    1,    0,    0,    0,
     801             :         0,    0,    0,    0,    0,    0,    0,    0,    1,    1,
     802             :         1,    1,   46,    0,   62,  184,   31,   33,   62,   46,
     803             :        39,   33,    0,   30,   39,  184,   31,   33,   34,   30,
     804             :        75,   36,   34,   36,   39,   72,   75,   72,    1,    1,
     805             :         1,    1,    1,    2,    2,    2,    2,    2,    2,    2,
     806             :       118,    2,  139,    2,   43,   43,    2,    2,    2,   44,
     807             :        52,  118,   44,   44,   43,   43,  139,  123,    2,   52,
     808             : 
     809             :        52,   52,  123,   52,   68,   52,   52,  163,   68,  163,
     810             :         2,    2,    2,    2,   53,   56,   56,   56,   53,   56,
     811             :        56,   55,   53,   56,   55,   55,  138,   56,   53,   55,
     812             :        57,   53,   55,   57,   53,   55,   57,   60,  138,   55,
     813             :         2,    2,    2,    2,    2,   16,   60,   60,   60,  640,
     814             :        16,  151,   60,   73,   16,   16,   73,   73,  151,   16,
     815             :        16,   16,   16,   16,   16,   16,   16,   16,   16,   16,
     816             :        16,   16,   16,   16,   16,   16,   16,   16,   16,   16,
     817             :       127,   16,  641,  127,   16,   16,   16,   16,   16,   16,
     818             :        16,   16,   16,   16,   16,   16,   16,   16,   16,   16,
     819             : 
     820             :        16,   16,   16,   16,   16,   16,   16,   16,  124,   16,
     821             :        16,   16,   16,   54,  105,  384,   54,  384,  105,  114,
     822             :        54,   54,  114,  124,   54,  122,   58,   54,   58,  122,
     823             :        58,   54,   58,   54,   59,   59,  143,  114,   59,  143,
     824             :       122,  128,  125,   58,  412,  128,  125,  642,   59,   63,
     825             :       412,   63,   63,   63,   63,   63,   63,   63,   64,  125,
     826             :        63,   63,   63,   63,  132,   64,   64,   65,  132,  154,
     827             :       181,   65,   64,   64,  643,   65,   64,  181,   64,   66,
     828             :       135,   65,  135,  154,   66,  135,  135,   65,   66,   65,
     829             :       189,   66,   67,  140,   66,   66,   67,   66,  140,   67,
     830             : 
     831             :        67,   74,  172,  172,   67,   74,  140,  166,  189,   67,
     832             :        67,   69,   74,   69,   74,   69,   69,   69,   69,   69,
     833             :        70,  166,  141,   69,   70,  182,  339,   70,   70,  644,
     834             :        69,  339,   70,  182,  141,   70,   70,   71,  175,   70,
     835             :        70,  190,   70,  141,   71,   71,  195,  190,  203,  175,
     836             :       195,   71,  203,  212,   71,  222,  219,  190,  203,  217,
     837             :       220,  217,  219,  219,  212,  224,  224,  226,  220,  231,
     838             :       222,  222,  228,  228,  226,  234,  224,  231,  217,  224,
     839             :       269,  224,  232,  231,  235,  232,  235,  269,  330,  234,
     840             :       263,  271,  645,  232,  279,  647,  317,  349,  330,  235,
     841             : 
     842             :       232,  263,  374,  263,  263,  263,  279,  271,  271,  317,
     843             :       279,  279,  279,  279,  279,  344,  349,  353,  380,  441,
     844             :       395,  411,  374,  422,  422,  648,  344,  441,  442,  353,
     845             :       649,  395,  380,  395,  395,  395,  395,  442,  411,  441,
     846             :       442,  475,  486,  535,  442,  492,  492,  475,  508,  486,
     847             :       563,  492,  554,  554,  595,  650,  651,  535,  508,  486,
     848             :       595,  646,  563,  652,  508,  646,  653,  654,  655,  656,
     849             :       657,  658,  659,  660,  661,  662,  656,  663,  664,  665,
     850             :       666,  667,  668,  669,  670,  671,  672,  673,  674,  675,
     851             :       676,  677,  678,  679,  680,  681,  682,  673,  683,  684,
     852             : 
     853             :       685,  686,  687,  688,  689,  690,  691,  692,  693,  694,
     854             :       695,  696,  697,  698,  699,  700,  701,  702,  703,  704,
     855             :       705,  706,  707,  708,  709,  710,  711,  712,  713,  714,
     856             :       715,  716,  717,  718,  719,  720,  721,  722,  723,  724,
     857             :       725,  726,  727,  728,  730,  731,  711,  732,  733,  734,
     858             :       735,  736,  737,  738,  739,  740,  741,  742,  743,  744,
     859             :       745,  746,  747,  748,  749,  750,  751,  752,  753,  754,
     860             :       755,  756,  757,  758,  759,  760,  761,  762,  763,  764,
     861             :       765,  766,  767,  768,  769,  770,  771,  772,  773,  774,
     862             :       775,  776,  777,  778,  779,  780,  781,  782,  783,  784,
     863             : 
     864             :       785,  786,  787,  788,  789,  790,  791,  792,  793,  794,
     865             :       795,  796,  797,  798,  799,  800,  801,  802,  803,  804,
     866             :       805,  806,  807,  808,  809,  810,  811,  812,  813,  814,
     867             :       815,  816,  817,  818,  819,  820,  821,  822,  823,  824,
     868             :       825,  826,  827,  828,  829,  830,  831,  832,  833,  834,
     869             :       835,  837,  838,  839,  840,  841,  842,  843,  844,  845,
     870             :       846,  847,  848,  849,  850,  851,  852,  853,  854,  855,
     871             :       856,  857,  858,  842,  859,  860,  861,  862,  863,  864,
     872             :       865,  866,  867,  868,  869,  870,  871,  872,  873,  874,
     873             :       875,  876,  877,  878,  879,  863,  880,  881,  882,  876,
     874             : 
     875             :       883,  884,  885,  886,  887,  876,  888,  889,  890,  891,
     876             :       892,  893,  894,  895,  896,  897,  898,  899,  900,  901,
     877             :       902,  903,  904,  905,  906,  907,  908,  909,  910,  911,
     878             :       912,  913,  914,  915,  916,  917,  918,  919,  920,  921,
     879             :       922,  923,  924,  925,  926,  927,  928,  929,  930,  931,
     880             :       932,  933,  934,  935,  936,  937,  938,  939,  940,  941,
     881             :       942,  943,  944,  945,  946,  947,  948,  949,  950,  951,
     882             :       952,  953,  954,  938,  955,  956,  941,  957,  958,  959,
     883             :       960,  961,  962,  963,  964,  965,  966,  967,  968,  969,
     884             :       970,  971,  972,  973,  974,  975,  976,  977,  978,  979,
     885             : 
     886             :       980,  981,  982,  983,  967,  984,  985,  986,  987,  988,
     887             :       989,  990,  991,  992,  994,  639,  638,  637,  636,  635,
     888             :       634,  633,  632,  631,  630,  629,  628,  627,  626,  625,
     889             :       624,  623,  622,  621,  620,  619,  618,  617,  616,  615,
     890             :       614,  613,  612,  611,  610,  609,  608,  606,  605,  604,
     891             :       603,  602,  601,  600,  599,  598,  597,  596,  594,  593,
     892             :       592,  590,  589,  588,  587,  586,  585,  584,  583,  582,
     893             :       581,  580,  579,  578,  577,  576,  575,  574,  573,  572,
     894             :       571,  570,  569,  568,  567,  566,  565,  564,  562,  560,
     895             :       559,  558,  557,  556,  555,  553,  552,  551,  550,  549,
     896             : 
     897             :       548,  547,  546,  545,  544,  543,  542,  541,  540,  539,
     898             :       538,  537,  536,  533,  532,  531,  530,  529,  528,  527,
     899             :       526,  525,  524,  523,  522,  521,  520,  519,  518,  517,
     900             :       516,  515,  514,  513,  512,  511,  510,  509,  507,  506,
     901             :       505,  504,  503,  502,  501,  500,  499,  498,  497,  496,
     902             :       495,  494,  493,  491,  490,  489,  488,  487,  485,  484,
     903             :       483,  482,  481,  480,  479,  478,  477,  476,  474,  473,
     904             :       472,  471,  469,  468,  467,  466,  465,  464,  463,  462,
     905             :       461,  460,  459,  458,  457,  456,  455,  454,  453,  452,
     906             :       451,  450,  449,  448,  447,  446,  445,  444,  443,  440,
     907             : 
     908             :       439,  438,  437,  436,  435,  434,  433,  432,  431,  430,
     909             :       429,  428,  427,  426,  425,  424,  423,  421,  420,  419,
     910             :       418,  417,  416,  415,  414,  413,  410,  409,  408,  407,
     911             :       406,  405,  404,  403,  402,  401,  400,  399,  398,  397,
     912             :       396,  394,  393,  392,  391,  390,  389,  388,  387,  386,
     913             :       385,  383,  382,  381,  379,  378,  377,  376,  375,  373,
     914             :       372,  371,  370,  369,  368,  367,  366,  365,  364,  363,
     915             :       362,  361,  360,  359,  358,  357,  356,  355,  354,  352,
     916             :       351,  350,  348,  347,  346,  345,  343,  342,  341,  340,
     917             :       338,  337,  336,  335,  334,  333,  332,  331,  329,  328,
     918             : 
     919             :       327,  326,  325,  324,  323,  322,  321,  320,  318,  316,
     920             :       315,  314,  313,  312,  311,  310,  309,  308,  307,  306,
     921             :       305,  304,  302,  301,  300,  299,  298,  297,  296,  295,
     922             :       294,  293,  292,  291,  290,  289,  288,  287,  286,  285,
     923             :       284,  283,  282,  281,  280,  278,  277,  276,  274,  273,
     924             :       272,  270,  268,  267,  266,  265,  264,  262,  261,  260,
     925             :       259,  258,  257,  256,  255,  254,  253,  252,  251,  250,
     926             :       249,  248,  247,  246,  245,  244,  243,  242,  241,  239,
     927             :       238,  237,  236,  233,  230,  229,  227,  225,  223,  221,
     928             :       218,  216,  215,  214,  213,  211,  210,  209,  208,  207,
     929             : 
     930             :       206,  205,  204,  202,  201,  200,  199,  198,  197,  196,
     931             :       194,  193,  192,  191,  187,  185,  183,  180,  179,  178,
     932             :       177,  176,  174,  173,  171,  170,  169,  168,  167,  165,
     933             :       164,  162,  161,  160,  159,  157,  156,  155,  153,  152,
     934             :       150,  149,  148,  147,  146,  145,  144,  142,  137,  136,
     935             :       134,  133,  131,  130,  129,  126,  121,  120,  119,  117,
     936             :       116,  115,  113,  112,  111,  110,  109,  108,  106,  103,
     937             :       102,  101,  100,   99,   98,   96,   95,   94,   93,   92,
     938             :        91,   90,   89,   88,   87,   86,   85,   81,   80,   76,
     939             :        61,   50,   49,   48,   47,   45,   42,   41,   40,   38,
     940             : 
     941             :        37,   35,   32,   28,   27,   26,   25,   23,   20,   15,
     942             :        14,   11,    7,    3,  993,  993,  993,  993,  993,  993,
     943             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     944             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     945             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     946             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     947             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     948             :       993,  993,  993,  993,  993,  993,  993,  993,  993,  993,
     949             :       993,  993,  993,  993,  993,  993,  993,  993
     950             :     } ;
     951             : 
     952             : static yy_state_type yy_last_accepting_state;
     953             : static char *yy_last_accepting_cpos;
     954             : 
     955             : #define YY_MORE_ADJ 0
     956             : #define YY_RESTORE_YY_MORE_OFFSET
     957             : char *yytext;
     958             : #define INITIAL 0
     959             : #include <stdlib.h>
     960             : #include <string.h>
     961             : #include "nodes.h"
     962             : 
     963             : #ifdef WIN32
     964             : #define strdup _strdup
     965             : #define fileno _fileno
     966             : #define isatty _isatty
     967             : #endif
     968             : 
     969             : #ifdef __cplusplus
     970             : extern "C" {
     971             : #endif
     972             : #include "grammar.h"
     973             : int yywrap();
     974             : #ifdef __cplusplus
     975             : }
     976             : #endif
     977             : 
     978             : #ifdef WIN32
     979             : extern YYSTYPE yylval;
     980             : #endif
     981             : #ifdef TOKEN_DEBUG
     982             : #define token_debug printf
     983             : #else
     984             : int token_debug(const char *format, ...);
     985             : #endif
     986             : 
     987             : /* Macros after this point can all be overridden by user definitions in
     988             :  * section 1.
     989             :  */
     990             : 
     991             : #ifndef YY_SKIP_YYWRAP
     992             : #ifdef __cplusplus
     993             : extern "C" int yywrap YY_PROTO(( void ));
     994             : #else
     995             : extern int yywrap YY_PROTO(( void ));
     996             : #endif
     997             : #endif
     998             : 
     999             : #ifndef YY_NO_UNPUT
    1000             : //static void yyunput YY_PROTO(( int c, char *buf_ptr ));
    1001             : #endif
    1002             : 
    1003             : #ifndef yytext_ptr
    1004             : static void yy_flex_strncpy YY_PROTO(( char *, yyconst char *, int ));
    1005             : #endif
    1006             : 
    1007             : #ifdef YY_NEED_STRLEN
    1008             : static int yy_flex_strlen YY_PROTO(( yyconst char * ));
    1009             : #endif
    1010             : 
    1011             : #if YY_STACK_USED
    1012             : static int yy_start_stack_ptr = 0;
    1013             : static int yy_start_stack_depth = 0;
    1014             : static int *yy_start_stack = 0;
    1015             : #ifndef YY_NO_PUSH_STATE
    1016             : static void yy_push_state YY_PROTO(( int new_state ));
    1017             : #endif
    1018             : #ifndef YY_NO_POP_STATE
    1019             : static void yy_pop_state YY_PROTO(( void ));
    1020             : #endif
    1021             : #ifndef YY_NO_TOP_STATE
    1022             : static int yy_top_state YY_PROTO(( void ));
    1023             : #endif
    1024             : 
    1025             : #else
    1026             : #define YY_NO_PUSH_STATE 1
    1027             : #define YY_NO_POP_STATE 1
    1028             : #define YY_NO_TOP_STATE 1
    1029             : #endif
    1030             : 
    1031             : #ifdef YY_MALLOC_DECL
    1032             : YY_MALLOC_DECL
    1033             : #else
    1034             : #if __STDC__
    1035             : #ifndef __cplusplus
    1036             : #include <stdlib.h>
    1037             : #endif
    1038             : #else
    1039             : /* Just try to get by without declaring the routines.  This will fail
    1040             :  * miserably on non-ANSI systems for which sizeof(size_t) != sizeof(int)
    1041             :  * or sizeof(void*) != sizeof(int).
    1042             :  */
    1043             : #endif
    1044             : #endif
    1045             : 
    1046             : /* Amount of stuff to slurp up with each read. */
    1047             : #ifndef YY_READ_BUF_SIZE
    1048             : #define YY_READ_BUF_SIZE 8192
    1049             : #endif
    1050             : 
    1051             : /* Copy whatever the last rule matched to the standard output. */
    1052             : 
    1053             : #ifndef ECHO
    1054             : /* This used to be an fputs(), but since the string might contain NUL's,
    1055             :  * we now use fwrite().
    1056             :  */
    1057             : #define ECHO do { if (fwrite( yytext, yyleng, 1, yyout )) {} } while (false)
    1058             : #endif
    1059             : 
    1060             : /* Gets input and stuffs it into "buf".  number of characters read, or YY_NULL,
    1061             :  * is returned in "result".
    1062             :  */
    1063             : #ifndef YY_INPUT
    1064             : #define YY_INPUT(buf,result,max_size) \
    1065             :     if ( yy_current_buffer->yy_is_interactive ) \
    1066             :         { \
    1067             :         int c = '*', n; \
    1068             :         for ( n = 0; n < max_size && \
    1069             :                  (c = getc( yyin )) != EOF && c != '\n'; ++n ) \
    1070             :             buf[n] = (char) c; \
    1071             :         if ( c == '\n' ) \
    1072             :             buf[n++] = (char) c; \
    1073             :         if ( c == EOF && ferror( yyin ) ) \
    1074             :             YY_FATAL_ERROR( "input in flex scanner failed" ); \
    1075             :         result = n; \
    1076             :         } \
    1077             :     else if ( ((result = fread( buf, 1, max_size, yyin )) == 0) \
    1078             :           && ferror( yyin ) ) \
    1079             :         YY_FATAL_ERROR( "input in flex scanner failed" );
    1080             : #endif
    1081             : 
    1082             : /* No semi-colon after return; correct usage is to write "yyterminate();" -
    1083             :  * we don't want an extra ';' after the "return" because that will cause
    1084             :  * some compilers to complain about unreachable statements.
    1085             :  */
    1086             : #ifndef yyterminate
    1087             : #define yyterminate() return YY_NULL
    1088             : #endif
    1089             : 
    1090             : /* Report a fatal error. */
    1091             : #ifndef YY_FATAL_ERROR
    1092             : #define YY_FATAL_ERROR(msg) yy_fatal_error( msg )
    1093             : #endif
    1094             : 
    1095             : /* Default declaration of generated scanner - a define so the user can
    1096             :  * easily add parameters.
    1097             :  */
    1098             : #ifndef YY_DECL
    1099             : #define YY_DECL int yylex YY_PROTO(( void ))
    1100             : #endif
    1101             : 
    1102             : /* Code executed at the beginning of each rule, after yytext and yyleng
    1103             :  * have been set up.
    1104             :  */
    1105             : #ifndef YY_USER_ACTION
    1106             : #define YY_USER_ACTION
    1107             : #endif
    1108             : 
    1109             : /* Code executed at the end of each rule. */
    1110             : #ifndef YY_BREAK
    1111             : #define YY_BREAK break;
    1112             : #endif
    1113             : 
    1114             : #define YY_RULE_SETUP \
    1115             :     YY_USER_ACTION
    1116             : 
    1117           0 : YY_DECL
    1118             :     {
    1119             :     yy_state_type yy_current_state;
    1120             :     char *yy_cp, *yy_bp;
    1121             :     int yy_act;
    1122             : 
    1123           0 :     if ( yy_init )
    1124             :         {
    1125           0 :         yy_init = 0;
    1126             : 
    1127             : #ifdef YY_USER_INIT
    1128             :         YY_USER_INIT;
    1129             : #endif
    1130             : 
    1131           0 :         if ( ! yy_start )
    1132           0 :             yy_start = 1;   /* first start state */
    1133             : 
    1134           0 :         if ( ! yyin )
    1135           0 :             yyin = stdin;
    1136             : 
    1137           0 :         if ( ! yyout )
    1138           0 :             yyout = stdout;
    1139             : 
    1140           0 :         if ( ! yy_current_buffer )
    1141             :             yy_current_buffer =
    1142           0 :                 yy_create_buffer( yyin, YY_BUF_SIZE );
    1143             : 
    1144           0 :         yy_load_buffer_state();
    1145             :         }
    1146             : 
    1147             :     while ( true )     /* loops until end-of-file is reached */
    1148             :         {
    1149           0 :         yy_cp = yy_c_buf_p;
    1150             : 
    1151             :         /* Support of yytext. */
    1152           0 :         *yy_cp = yy_hold_char;
    1153             : 
    1154             :         /* yy_bp points to the position in yy_ch_buf of the start of
    1155             :          * the current run.
    1156             :          */
    1157           0 :         yy_bp = yy_cp;
    1158             : 
    1159           0 :         yy_current_state = yy_start;
    1160             : yy_match:
    1161           0 :         do
    1162             :             {
    1163           0 :             YY_CHAR yy_c = sal::static_int_cast<YY_CHAR>(yy_ec[YY_SC_TO_UI(*yy_cp)]);
    1164           0 :             if ( yy_accept[yy_current_state] )
    1165             :                 {
    1166           0 :                 yy_last_accepting_state = yy_current_state;
    1167           0 :                 yy_last_accepting_cpos = yy_cp;
    1168             :                 }
    1169           0 :             while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
    1170             :                 {
    1171           0 :                 yy_current_state = (int) yy_def[yy_current_state];
    1172           0 :                 if ( yy_current_state >= 994 )
    1173           0 :                     yy_c = sal::static_int_cast<YY_CHAR>(yy_meta[(unsigned int) yy_c]);
    1174             :                 }
    1175           0 :             yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
    1176           0 :             ++yy_cp;
    1177             :             }
    1178           0 :         while ( yy_base[yy_current_state] != 1315 );
    1179             : 
    1180             : yy_find_action:
    1181           0 :         yy_act = yy_accept[yy_current_state];
    1182           0 :         if ( yy_act == 0 )
    1183             :             { /* have to back up */
    1184           0 :             yy_cp = yy_last_accepting_cpos;
    1185           0 :             yy_current_state = yy_last_accepting_state;
    1186           0 :             yy_act = yy_accept[yy_current_state];
    1187             :             }
    1188             : 
    1189           0 :         YY_DO_BEFORE_ACTION;
    1190             : 
    1191             : 
    1192             : do_action:  /* This label is used only to access EOF actions. */
    1193             : 
    1194             : 
    1195           0 :         switch ( yy_act )
    1196             :     { /* beginning of action switch */
    1197             :             case 0: /* must back up */
    1198             :             /* undo the effects of YY_DO_BEFORE_ACTION */
    1199           0 :             *yy_cp = yy_hold_char;
    1200           0 :             yy_cp = yy_last_accepting_cpos;
    1201           0 :             yy_current_state = yy_last_accepting_state;
    1202           0 :             goto yy_find_action;
    1203             : 
    1204             : case 1:
    1205             : YY_RULE_SETUP
    1206           0 : { yylval.str = yytext+1; token_debug("  ==>Begin[%s]\n",yytext+1); return EQBEGIN; }
    1207             :     //YY_BREAK
    1208             : case 2:
    1209             : YY_RULE_SETUP
    1210           0 : { yylval.str = yytext+1; token_debug("  ==>End[%s]\n",yytext+1); return EQEND; }
    1211             :     //YY_BREAK
    1212             : case 3:
    1213             : YY_RULE_SETUP
    1214           0 : { yylval.str = yytext+1; token_debug("  ==>Left[%s]\n",yytext+1); return EQLEFT; }
    1215             :     //YY_BREAK
    1216             : case 4:
    1217             : YY_RULE_SETUP
    1218           0 : { yylval.str = yytext+1; token_debug("  ==>LeftDelim[%s]\n",yytext+1); return LEFT_DELIM; }
    1219             :     //YY_BREAK
    1220             : case 5:
    1221             : YY_RULE_SETUP
    1222           0 : { yylval.str = yytext+1; token_debug("  ==>RightDelim[%s]\n",yytext+1); return RIGHT_DELIM; }
    1223             :     //YY_BREAK
    1224             : case 6:
    1225             : YY_RULE_SETUP
    1226           0 : { yylval.str = yytext+1; token_debug("  ==>Right[%s]\n",yytext+1); return EQRIGHT; }
    1227             :     //YY_BREAK
    1228             : case 7:
    1229             : YY_RULE_SETUP
    1230           0 : { yylval.str = yytext;   token_debug("  ==>NewLine[%s]\n",yytext); return NEWLINE; }
    1231             :     //YY_BREAK
    1232             : case 8:
    1233             : YY_RULE_SETUP
    1234           0 : { yylval.str = yytext+1; token_debug("  ==>Accent[%s]\n",yytext+1); return ACCENT; }
    1235             :     //YY_BREAK
    1236             : case 9:
    1237             : YY_RULE_SETUP
    1238           0 : { yylval.str = yytext+1; token_debug("  ==>Small_Greek[%s]\n",yytext+1); return SMALL_GREEK; }
    1239             :     //YY_BREAK
    1240             : case 10:
    1241             : YY_RULE_SETUP
    1242           0 : { yylval.str = yytext+1; token_debug("  ==>Capital_Greek[%s]\n",yytext+1); return CAPITAL_GREEK; }
    1243             :     //YY_BREAK
    1244             : case 11:
    1245             : YY_RULE_SETUP
    1246           0 : { yylval.str = yytext+1; token_debug("  ==>Binary_Operator[%s]\n",yytext+1); return BINARY_OPERATOR; }
    1247             :     //YY_BREAK
    1248             : case 12:
    1249             : YY_RULE_SETUP
    1250           0 : { yylval.str = yytext+1; token_debug("  ==>Relation_Symbol[%s]\n",yytext+1); return RELATION_OPERATOR; }
    1251             :     //YY_BREAK
    1252             : case 13:
    1253             : YY_RULE_SETUP
    1254           0 : { yylval.str = strdup("neq"); token_debug(" ==>Relation_Symbol[neq]\n"); return RELATION_OPERATOR; }
    1255             :     //YY_BREAK
    1256             : case 14:
    1257             : YY_RULE_SETUP
    1258           0 : { yylval.str = strdup("vmlt"); token_debug(" ==>Relation_Symbol[neq]\n"); return RELATION_OPERATOR; }
    1259             :     //YY_BREAK
    1260             : case 15:
    1261             : YY_RULE_SETUP
    1262           0 : { yylval.str = strdup("vmgt"); token_debug(" ==>Relation_Symbol[neq]\n"); return RELATION_OPERATOR; }
    1263             :     //YY_BREAK
    1264             : case 16:
    1265             : YY_RULE_SETUP
    1266           0 : { yylval.str = strdup("mlt"); token_debug(" ==>Relation_Symbol[neq]\n"); return RELATION_OPERATOR; }
    1267             :     //YY_BREAK
    1268             : case 17:
    1269             : YY_RULE_SETUP
    1270           0 : { yylval.str = strdup("mgt"); token_debug(" ==>Relation_Symbol[neq]\n"); return RELATION_OPERATOR; }
    1271             :     //YY_BREAK
    1272             : case 18:
    1273             : YY_RULE_SETUP
    1274           0 : { yylval.str = yytext; token_debug(" ==>Relation_Symbol[neq]\n"); return RELATION_OPERATOR; }
    1275             :     //YY_BREAK
    1276             : case 19:
    1277             : YY_RULE_SETUP
    1278           0 : { yylval.str = yytext+1; token_debug("  ==>Arrow[%s]\n",yytext+1); return ARROW; }
    1279             :     //YY_BREAK
    1280             : case 20:
    1281             : YY_RULE_SETUP
    1282           0 : { yylval.str = strdup("leftrightarrow"); token_debug("  ==>Arrow[leftrightarrow]\n"); return ARROW; }
    1283             :     //YY_BREAK
    1284             : case 21:
    1285             : YY_RULE_SETUP
    1286           0 : { yylval.str = strdup("rightarrow"); token_debug("  ==>Arrow[rightarrow]\n"); return ARROW; }
    1287             :     //YY_BREAK
    1288             : case 22:
    1289             : YY_RULE_SETUP
    1290           0 : { yylval.str = strdup("leftarrow"); token_debug("   ==>Arrow[leftarrow]\n"); return ARROW; }
    1291             :     //YY_BREAK
    1292             : 
    1293             : case 23:
    1294             : YY_RULE_SETUP
    1295           0 : { token_debug(" ==>Ignore[\\rm]\n"); }
    1296             :     //YY_BREAK
    1297             : case 24:
    1298             : YY_RULE_SETUP
    1299           0 : { yylval.str = yytext+1; token_debug("  ==>General_Iden[%s]\n",yytext+1); return GENERAL_IDEN; }
    1300             :     //YY_BREAK
    1301             : case 25:
    1302             : YY_RULE_SETUP
    1303           0 : { yylval.str = yytext+1; token_debug("  ==>General_Oper[%s]\n",yytext+1); return GENERAL_OPER; }
    1304             :     //YY_BREAK
    1305             : case 26:
    1306             : YY_RULE_SETUP
    1307           0 : { yylval.str = yytext+1; token_debug("  ==>Big_Symbol[%s]\n",yytext+1); return BIG_SYMBOL; }
    1308             :     //YY_BREAK
    1309             : case 27:
    1310             : YY_RULE_SETUP
    1311           0 : { yylval.str = yytext+1; token_debug("  ==>Function[%s]\n",yytext+1); return FUNCTION; }
    1312             :     //YY_BREAK
    1313             : case 28:
    1314             : YY_RULE_SETUP
    1315           0 : { yylval.str = yytext+1; token_debug("  ==>Root[%s]\n",yytext+1); return ROOT; }
    1316             :     //YY_BREAK
    1317             : case 29:
    1318             : YY_RULE_SETUP
    1319           0 : { yylval.str = yytext+1; token_debug("  ==>Fraction[%s]\n",yytext+1); return FRACTION; }
    1320             :     //YY_BREAK
    1321             : case 30:
    1322             : YY_RULE_SETUP
    1323           0 : { yylval.str = yytext+1; token_debug("  ==>Over[%s]\n",yytext+1); return EQOVER; }
    1324             :     //YY_BREAK
    1325             : case 31:
    1326             : YY_RULE_SETUP
    1327           0 : { yylval.str = yytext+1; token_debug("  ==>Delimeter[%s]\n",yytext+1); return DELIMETER; }
    1328             :     //YY_BREAK
    1329             : case 32:
    1330             : YY_RULE_SETUP
    1331           0 : { yylval.str = yytext+1; token_debug("  ==>Large_Delim[%s]\n",yytext+1); return LARGE_DELIM; }
    1332             :     //YY_BREAK
    1333             : case 33:
    1334             : YY_RULE_SETUP
    1335           0 : { yylval.str = yytext+1; token_debug("  ==>Decoration[%s]\n",yytext+1); return DECORATION; }
    1336             :     //YY_BREAK
    1337             : case 34:
    1338             : YY_RULE_SETUP
    1339           0 : { yylval.str = yytext+1; token_debug("  ==>Space_Symbol[%s]\n",yytext+1); /*return SPACE_SYMBOL;*/ }
    1340             :     //YY_BREAK
    1341             : case 35:
    1342             : YY_RULE_SETUP
    1343           0 : { yylval.str = strdup("quad"); token_debug("    ==>Space_Symbol[quad]\n"); /* return SPACE_SYMBOL;*/ }
    1344             :     //YY_BREAK
    1345             : case 36:
    1346             : YY_RULE_SETUP
    1347           0 : { yylval.dval = yytext;  token_debug("  ==>Digit[%s]\n",yytext); return DIGIT; }
    1348             :     //YY_BREAK
    1349             : case 37:
    1350             : YY_RULE_SETUP
    1351           0 : { yylval.str = yytext;   token_debug("  ==>Operator[%s]\n",yytext); return OPERATOR; }
    1352             :     //YY_BREAK
    1353             : case 38:
    1354             : YY_RULE_SETUP
    1355           0 : { token_debug(" ==>SubSup[%s]\n",yytext); return yytext[0]; }
    1356             :     //YY_BREAK
    1357             : case 39:
    1358             : YY_RULE_SETUP
    1359           0 : { token_debug(" ==>Paren[%s]\n",yytext); return yytext[0];}
    1360             :     //YY_BREAK
    1361             : case 40:
    1362             : YY_RULE_SETUP
    1363           0 : { token_debug(" ==>Abs[%s]\n",yytext); return yytext[0];}
    1364             :     //YY_BREAK
    1365             : case 41:
    1366             : YY_RULE_SETUP
    1367           0 : { token_debug("   ==>Space[0x%2x]\n",yytext[0]); }
    1368           0 :     YY_BREAK
    1369             : case 42:
    1370             : YY_RULE_SETUP
    1371           0 : { token_debug("   ==>Ignore[0x%2x]\n",yytext[0]); }
    1372           0 :     YY_BREAK
    1373             : case 43:
    1374             : YY_RULE_SETUP
    1375           0 : { yylval.str = yytext;  token_debug("   ==>String[%s]\n",yytext); return STRING; }
    1376             :     //YY_BREAK
    1377             : case 44:
    1378             : YY_RULE_SETUP
    1379           0 : { yylval.str = yytext;  token_debug("   ==>Else[%s]\n",yytext); return CHARACTER; }
    1380             :     //YY_BREAK
    1381             : case 45:
    1382             : YY_RULE_SETUP
    1383           0 : ECHO;
    1384           0 :     YY_BREAK
    1385             : case YY_STATE_EOF(INITIAL):
    1386           0 :     yyterminate();
    1387             : 
    1388             :     case YY_END_OF_BUFFER:
    1389             :         {
    1390             :         /* Amount of text matched not including the EOB char. */
    1391           0 :         int yy_amount_of_matched_text = (int) (yy_cp - yytext_ptr) - 1;
    1392             : 
    1393             :         /* Undo the effects of YY_DO_BEFORE_ACTION. */
    1394           0 :         *yy_cp = yy_hold_char;
    1395             :         YY_RESTORE_YY_MORE_OFFSET
    1396             : 
    1397           0 :         if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_NEW )
    1398             :             {
    1399             :             /* We're scanning a new file or input source.  It's
    1400             :              * possible that this happened because the user
    1401             :              * just pointed yyin at a new source and called
    1402             :              * yylex().  If so, then we have to assure
    1403             :              * consistency between yy_current_buffer and our
    1404             :              * globals.  Here is the right place to do so, because
    1405             :              * this is the first action (other than possibly a
    1406             :              * back-up) that will match for the new input source.
    1407             :              */
    1408           0 :             yy_n_chars = yy_current_buffer->yy_n_chars;
    1409           0 :             yy_current_buffer->yy_input_file = yyin;
    1410           0 :             yy_current_buffer->yy_buffer_status = YY_BUFFER_NORMAL;
    1411             :             }
    1412             : 
    1413             :         /* Note that here we test for yy_c_buf_p "<=" to the position
    1414             :          * of the first EOB in the buffer, since yy_c_buf_p will
    1415             :          * already have been incremented past the NUL character
    1416             :          * (since all states make transitions on EOB to the
    1417             :          * end-of-buffer state).  Contrast this with the test
    1418             :          * in input().
    1419             :          */
    1420           0 :         if ( yy_c_buf_p <= &yy_current_buffer->yy_ch_buf[yy_n_chars] )
    1421             :             { /* This was really a NUL. */
    1422             :             yy_state_type yy_next_state;
    1423             : 
    1424           0 :             yy_c_buf_p = yytext_ptr + yy_amount_of_matched_text;
    1425             : 
    1426           0 :             yy_current_state = yy_get_previous_state();
    1427             : 
    1428             :             /* Okay, we're now positioned to make the NUL
    1429             :              * transition.  We couldn't have
    1430             :              * yy_get_previous_state() go ahead and do it
    1431             :              * for us because it doesn't know how to deal
    1432             :              * with the possibility of jamming (and we don't
    1433             :              * want to build jamming into it because then it
    1434             :              * will run more slowly).
    1435             :              */
    1436             : 
    1437           0 :             yy_next_state = yy_try_NUL_trans( yy_current_state );
    1438             : 
    1439           0 :             yy_bp = yytext_ptr + YY_MORE_ADJ;
    1440             : 
    1441           0 :             if ( yy_next_state )
    1442             :                 {
    1443             :                 /* Consume the NUL. */
    1444           0 :                 yy_cp = ++yy_c_buf_p;
    1445           0 :                 yy_current_state = yy_next_state;
    1446           0 :                 goto yy_match;
    1447             :                 }
    1448             : 
    1449             :             else
    1450             :                 {
    1451           0 :                 yy_cp = yy_c_buf_p;
    1452           0 :                 goto yy_find_action;
    1453             :                 }
    1454             :             }
    1455             : 
    1456           0 :         else switch ( yy_get_next_buffer() )
    1457             :             {
    1458             :             case EOB_ACT_END_OF_FILE:
    1459             :                 {
    1460           0 :                 yy_did_buffer_switch_on_eof = 0;
    1461             : 
    1462           0 :                 if ( yywrap() )
    1463             :                     {
    1464             :                     /* Note: because we've taken care in
    1465             :                      * yy_get_next_buffer() to have set up
    1466             :                      * yytext, we can now set up
    1467             :                      * yy_c_buf_p so that if some total
    1468             :                      * hoser (like flex itself) wants to
    1469             :                      * call the scanner after we return the
    1470             :                      * YY_NULL, it'll still work - another
    1471             :                      * YY_NULL will get returned.
    1472             :                      */
    1473           0 :                     yy_c_buf_p = yytext_ptr + YY_MORE_ADJ;
    1474             : 
    1475           0 :                     yy_act = YY_STATE_EOF(YY_START);
    1476           0 :                     goto do_action;
    1477             :                     }
    1478             : 
    1479             :                 else
    1480             :                     {
    1481           0 :                     if ( ! yy_did_buffer_switch_on_eof )
    1482           0 :                         YY_NEW_FILE;
    1483             :                     }
    1484           0 :                 break;
    1485             :                 }
    1486             : 
    1487             :             case EOB_ACT_CONTINUE_SCAN:
    1488             :                 yy_c_buf_p =
    1489           0 :                     yytext_ptr + yy_amount_of_matched_text;
    1490             : 
    1491           0 :                 yy_current_state = yy_get_previous_state();
    1492             : 
    1493           0 :                 yy_cp = yy_c_buf_p;
    1494           0 :                 yy_bp = yytext_ptr + YY_MORE_ADJ;
    1495           0 :                 goto yy_match;
    1496             : 
    1497             :             case EOB_ACT_LAST_MATCH:
    1498             :                 yy_c_buf_p =
    1499           0 :                 &yy_current_buffer->yy_ch_buf[yy_n_chars];
    1500             : 
    1501           0 :                 yy_current_state = yy_get_previous_state();
    1502             : 
    1503           0 :                 yy_cp = yy_c_buf_p;
    1504           0 :                 yy_bp = yytext_ptr + YY_MORE_ADJ;
    1505           0 :                 goto yy_find_action;
    1506             :             }
    1507           0 :         break;
    1508             :         }
    1509             : 
    1510             :     default:
    1511             :         YY_FATAL_ERROR(
    1512           0 :             "fatal flex scanner internal error--no action found" );
    1513             :     } /* end of action switch */
    1514           0 :         } /* end of scanning one token */
    1515             :     } /* end of yylex */
    1516             : 
    1517             : 
    1518             : /* yy_get_next_buffer - try to read in a new buffer
    1519             :  *
    1520             :  * Returns a code representing an action:
    1521             :  *  EOB_ACT_LAST_MATCH -
    1522             :  *  EOB_ACT_CONTINUE_SCAN - continue scanning from current position
    1523             :  *  EOB_ACT_END_OF_FILE - end of file
    1524             :  */
    1525             : 
    1526           0 : static int yy_get_next_buffer()
    1527             :     {
    1528           0 :     char *dest = yy_current_buffer->yy_ch_buf;
    1529           0 :     char *source = yytext_ptr;
    1530             :     int number_to_move, i;
    1531             :     int ret_val;
    1532             : 
    1533           0 :     if ( yy_c_buf_p > &yy_current_buffer->yy_ch_buf[yy_n_chars + 1] )
    1534             :         YY_FATAL_ERROR(
    1535           0 :         "fatal flex scanner internal error--end of buffer missed" );
    1536             : 
    1537           0 :     if ( yy_current_buffer->yy_fill_buffer == 0 )
    1538             :         { /* Don't try to fill the buffer, so this is an EOF. */
    1539           0 :         if ( yy_c_buf_p - yytext_ptr - YY_MORE_ADJ == 1 )
    1540             :             {
    1541             :             /* We matched a single character, the EOB, so
    1542             :              * treat this as a final EOF.
    1543             :              */
    1544           0 :             return EOB_ACT_END_OF_FILE;
    1545             :             }
    1546             : 
    1547             :         else
    1548             :             {
    1549             :             /* We matched some text prior to the EOB, first
    1550             :              * process it.
    1551             :              */
    1552           0 :             return EOB_ACT_LAST_MATCH;
    1553             :             }
    1554             :         }
    1555             : 
    1556             :     /* Try to read more data. */
    1557             : 
    1558             :     /* First move last chars to start of buffer. */
    1559           0 :     number_to_move = (int) (yy_c_buf_p - yytext_ptr) - 1;
    1560             : 
    1561           0 :     for ( i = 0; i < number_to_move; ++i )
    1562           0 :         *(dest++) = *(source++);
    1563             : 
    1564           0 :     if ( yy_current_buffer->yy_buffer_status == YY_BUFFER_EOF_PENDING )
    1565             :         /* don't do the read, it's not guaranteed to return an EOF,
    1566             :          * just force an EOF
    1567             :          */
    1568           0 :         yy_current_buffer->yy_n_chars = yy_n_chars = 0;
    1569             : 
    1570             :     else
    1571             :         {
    1572             :         int num_to_read =
    1573           0 :             yy_current_buffer->yy_buf_size - number_to_move - 1;
    1574             : 
    1575           0 :         while ( num_to_read <= 0 )
    1576             :             { /* Not enough room in the buffer - grow it. */
    1577             : #ifdef YY_USES_REJECT
    1578             :             YY_FATAL_ERROR(
    1579             : "input buffer overflow, can't enlarge buffer because scanner uses REJECT" );
    1580             : #else
    1581             : 
    1582             :             /* just a shorter name for the current buffer */
    1583           0 :             YY_BUFFER_STATE b = yy_current_buffer;
    1584             : 
    1585             :             int yy_c_buf_p_offset =
    1586           0 :                 (int) (yy_c_buf_p - b->yy_ch_buf);
    1587             : 
    1588           0 :             if ( b->yy_is_our_buffer )
    1589             :                 {
    1590           0 :                 int new_size = b->yy_buf_size * 2;
    1591             : 
    1592           0 :                 if ( new_size <= 0 )
    1593           0 :                     b->yy_buf_size += b->yy_buf_size / 8;
    1594             :                 else
    1595           0 :                     b->yy_buf_size *= 2;
    1596             : 
    1597             :                 b->yy_ch_buf = (char *)
    1598             :                     /* Include room in for 2 EOB chars. */
    1599             :                     yy_flex_realloc( (void *) b->yy_ch_buf,
    1600           0 :                              b->yy_buf_size + 2 );
    1601             :                 }
    1602             :             else
    1603             :                 /* Can't grow it, we don't own it. */
    1604           0 :                 b->yy_ch_buf = 0;
    1605             : 
    1606           0 :             if ( ! b->yy_ch_buf )
    1607             :                 YY_FATAL_ERROR(
    1608           0 :                 "fatal error - scanner input buffer overflow" );
    1609             : 
    1610           0 :             yy_c_buf_p = &b->yy_ch_buf[yy_c_buf_p_offset];
    1611             : 
    1612           0 :             num_to_read = yy_current_buffer->yy_buf_size -
    1613           0 :                         number_to_move - 1;
    1614             : #endif
    1615             :             }
    1616             : 
    1617           0 :         if ( num_to_read > YY_READ_BUF_SIZE )
    1618           0 :             num_to_read = YY_READ_BUF_SIZE;
    1619             : 
    1620             :         /* Read in more data. */
    1621           0 :         YY_INPUT( (&yy_current_buffer->yy_ch_buf[number_to_move]),
    1622             :             yy_n_chars, num_to_read );
    1623             : 
    1624           0 :         yy_current_buffer->yy_n_chars = yy_n_chars;
    1625             :         }
    1626             : 
    1627           0 :     if ( yy_n_chars == 0 )
    1628             :         {
    1629           0 :         if ( number_to_move == YY_MORE_ADJ )
    1630             :             {
    1631           0 :             ret_val = EOB_ACT_END_OF_FILE;
    1632           0 :             yyrestart( yyin );
    1633             :             }
    1634             : 
    1635             :         else
    1636             :             {
    1637           0 :             ret_val = EOB_ACT_LAST_MATCH;
    1638             :             yy_current_buffer->yy_buffer_status =
    1639           0 :                 YY_BUFFER_EOF_PENDING;
    1640             :             }
    1641             :         }
    1642             : 
    1643             :     else
    1644           0 :         ret_val = EOB_ACT_CONTINUE_SCAN;
    1645             : 
    1646           0 :     yy_n_chars += number_to_move;
    1647           0 :     yy_current_buffer->yy_ch_buf[yy_n_chars] = YY_END_OF_BUFFER_CHAR;
    1648           0 :     yy_current_buffer->yy_ch_buf[yy_n_chars + 1] = YY_END_OF_BUFFER_CHAR;
    1649             : 
    1650           0 :     yytext_ptr = &yy_current_buffer->yy_ch_buf[0];
    1651             : 
    1652           0 :     return ret_val;
    1653             :     }
    1654             : 
    1655             : 
    1656             : /* yy_get_previous_state - get the state just before the EOB char was reached */
    1657             : 
    1658           0 : static yy_state_type yy_get_previous_state()
    1659             :     {
    1660             :     yy_state_type yy_current_state;
    1661             :     char *yy_cp;
    1662             : 
    1663           0 :     yy_current_state = yy_start;
    1664             : 
    1665           0 :     for ( yy_cp = yytext_ptr + YY_MORE_ADJ; yy_cp < yy_c_buf_p; ++yy_cp )
    1666             :         {
    1667           0 :         YY_CHAR yy_c = sal::static_int_cast<YY_CHAR>(*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1);
    1668           0 :         if ( yy_accept[yy_current_state] )
    1669             :             {
    1670           0 :             yy_last_accepting_state = yy_current_state;
    1671           0 :             yy_last_accepting_cpos = yy_cp;
    1672             :             }
    1673           0 :         while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
    1674             :             {
    1675           0 :             yy_current_state = (int) yy_def[yy_current_state];
    1676           0 :             if ( yy_current_state >= 994 )
    1677           0 :                 yy_c = sal::static_int_cast<YY_CHAR>(yy_meta[(unsigned int) yy_c]);
    1678             :             }
    1679           0 :         yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
    1680             :         }
    1681             : 
    1682           0 :     return yy_current_state;
    1683             :     }
    1684             : 
    1685             : 
    1686             : /* yy_try_NUL_trans - try to make a transition on the NUL character
    1687             :  *
    1688             :  * synopsis
    1689             :  *  next_state = yy_try_NUL_trans( current_state );
    1690             :  */
    1691             : 
    1692             : #ifdef YY_USE_PROTOS
    1693           0 : static yy_state_type yy_try_NUL_trans( yy_state_type yy_current_state )
    1694             : #else
    1695             : static yy_state_type yy_try_NUL_trans( yy_current_state )
    1696             : yy_state_type yy_current_state;
    1697             : #endif
    1698             :     {
    1699             :     bool yy_is_jam;
    1700           0 :     char *yy_cp = yy_c_buf_p;
    1701             : 
    1702           0 :     YY_CHAR yy_c = 1;
    1703           0 :     if ( yy_accept[yy_current_state] )
    1704             :         {
    1705           0 :         yy_last_accepting_state = yy_current_state;
    1706           0 :         yy_last_accepting_cpos = yy_cp;
    1707             :         }
    1708           0 :     while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
    1709             :         {
    1710           0 :         yy_current_state = (int) yy_def[yy_current_state];
    1711           0 :         if ( yy_current_state >= 994 )
    1712           0 :             yy_c = sal::static_int_cast<YY_CHAR>(yy_meta[(unsigned int) yy_c]);
    1713             :         }
    1714           0 :     yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
    1715           0 :     yy_is_jam = (yy_current_state == 993);
    1716             : 
    1717           0 :     return yy_is_jam ? 0 : yy_current_state;
    1718             :     }
    1719             : 
    1720             : #ifdef YY_USE_PROTOS
    1721           0 : void yyrestart( FILE *input_file )
    1722             : #else
    1723             : void yyrestart( input_file )
    1724             : FILE *input_file;
    1725             : #endif
    1726             :     {
    1727           0 :     if ( ! yy_current_buffer )
    1728           0 :         yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE );
    1729             : 
    1730           0 :     yy_init_buffer( yy_current_buffer, input_file );
    1731           0 :     yy_load_buffer_state();
    1732           0 :     }
    1733             : 
    1734             : 
    1735             : #ifdef YY_USE_PROTOS
    1736           0 : void yy_switch_to_buffer( YY_BUFFER_STATE new_buffer )
    1737             : #else
    1738             : void yy_switch_to_buffer( new_buffer )
    1739             : YY_BUFFER_STATE new_buffer;
    1740             : #endif
    1741             :     {
    1742           0 :     if ( yy_current_buffer == new_buffer )
    1743           0 :         return;
    1744             : 
    1745           0 :     if ( yy_current_buffer )
    1746             :         {
    1747             :         /* Flush out information for old buffer. */
    1748           0 :         *yy_c_buf_p = yy_hold_char;
    1749           0 :         yy_current_buffer->yy_buf_pos = yy_c_buf_p;
    1750           0 :         yy_current_buffer->yy_n_chars = yy_n_chars;
    1751             :         }
    1752             : 
    1753           0 :     yy_current_buffer = new_buffer;
    1754           0 :     yy_load_buffer_state();
    1755             : 
    1756             :     /* We don't actually know whether we did this switch during
    1757             :      * EOF (yywrap()) processing, but the only time this flag
    1758             :      * is looked at is after yywrap() is called, so it's safe
    1759             :      * to go ahead and always set it.
    1760             :      */
    1761           0 :     yy_did_buffer_switch_on_eof = 1;
    1762             :     }
    1763             : 
    1764             : 
    1765             : #ifdef YY_USE_PROTOS
    1766           0 : void yy_load_buffer_state( void )
    1767             : #else
    1768             : void yy_load_buffer_state()
    1769             : #endif
    1770             :     {
    1771           0 :     yy_n_chars = yy_current_buffer->yy_n_chars;
    1772           0 :     yytext_ptr = yy_c_buf_p = yy_current_buffer->yy_buf_pos;
    1773           0 :     yyin = yy_current_buffer->yy_input_file;
    1774           0 :     yy_hold_char = *yy_c_buf_p;
    1775           0 :     }
    1776             : 
    1777             : 
    1778             : #ifdef YY_USE_PROTOS
    1779           0 : YY_BUFFER_STATE yy_create_buffer( FILE *file, int size )
    1780             : #else
    1781             : YY_BUFFER_STATE yy_create_buffer( file, size )
    1782             : FILE *file;
    1783             : int size;
    1784             : #endif
    1785             :     {
    1786             :     YY_BUFFER_STATE b;
    1787             : 
    1788           0 :     b = (YY_BUFFER_STATE) yy_flex_alloc( sizeof( struct yy_buffer_state ) );
    1789           0 :     if ( ! b )
    1790           0 :         YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
    1791             : 
    1792           0 :     b->yy_buf_size = size;
    1793             : 
    1794             :     /* yy_ch_buf has to be 2 characters longer than the size given because
    1795             :      * we need to put in 2 end-of-buffer characters.
    1796             :      */
    1797           0 :     b->yy_ch_buf = (char *) yy_flex_alloc( b->yy_buf_size + 2 );
    1798           0 :     if ( ! b->yy_ch_buf )
    1799           0 :         YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" );
    1800             : 
    1801           0 :     b->yy_is_our_buffer = 1;
    1802             : 
    1803           0 :     yy_init_buffer( b, file );
    1804             : 
    1805           0 :     return b;
    1806             :     }
    1807             : 
    1808             : 
    1809             : #ifdef YY_USE_PROTOS
    1810           0 : void yy_delete_buffer( YY_BUFFER_STATE b )
    1811             : #else
    1812             : void yy_delete_buffer( b )
    1813             : YY_BUFFER_STATE b;
    1814             : #endif
    1815             :     {
    1816           0 :     if ( ! b )
    1817           0 :         return;
    1818             : 
    1819           0 :     if ( b == yy_current_buffer )
    1820           0 :         yy_current_buffer = (YY_BUFFER_STATE) 0;
    1821             : 
    1822           0 :     if ( b->yy_is_our_buffer )
    1823           0 :         yy_flex_free( (void *) b->yy_ch_buf );
    1824             : 
    1825           0 :     yy_flex_free( (void *) b );
    1826             :     }
    1827             : 
    1828             : 
    1829             : #ifndef YY_ALWAYS_INTERACTIVE
    1830             : #ifndef YY_NEVER_INTERACTIVE
    1831             : extern int isatty YY_PROTO(( int ));
    1832             : #endif
    1833             : #endif
    1834             : 
    1835             : #ifdef YY_USE_PROTOS
    1836           0 : void yy_init_buffer( YY_BUFFER_STATE b, FILE *file )
    1837             : #else
    1838             : void yy_init_buffer( b, file )
    1839             : YY_BUFFER_STATE b;
    1840             : FILE *file;
    1841             : #endif
    1842             : 
    1843             : 
    1844             :     {
    1845           0 :     yy_flush_buffer( b );
    1846             : 
    1847           0 :     b->yy_input_file = file;
    1848           0 :     b->yy_fill_buffer = 1;
    1849             : 
    1850             : #if YY_ALWAYS_INTERACTIVE
    1851             :     b->yy_is_interactive = true;
    1852             : #else
    1853             : #if YY_NEVER_INTERACTIVE
    1854             :     b->yy_is_interactive = false;
    1855             : #else
    1856           0 :     b->yy_is_interactive = file && isatty( fileno(file) ) > 0;
    1857             : #endif
    1858             : #endif
    1859           0 :     }
    1860             : 
    1861             : 
    1862             : #ifdef YY_USE_PROTOS
    1863           0 : void yy_flush_buffer( YY_BUFFER_STATE b )
    1864             : #else
    1865             : void yy_flush_buffer( b )
    1866             : YY_BUFFER_STATE b;
    1867             : #endif
    1868             : 
    1869             :     {
    1870           0 :     if ( ! b )
    1871           0 :         return;
    1872             : 
    1873           0 :     b->yy_n_chars = 0;
    1874             : 
    1875             :     /* We always need two end-of-buffer characters.  The first causes
    1876             :      * a transition to the end-of-buffer state.  The second causes
    1877             :      * a jam in that state.
    1878             :      */
    1879           0 :     b->yy_ch_buf[0] = YY_END_OF_BUFFER_CHAR;
    1880           0 :     b->yy_ch_buf[1] = YY_END_OF_BUFFER_CHAR;
    1881             : 
    1882           0 :     b->yy_buf_pos = &b->yy_ch_buf[0];
    1883             : 
    1884           0 :     b->yy_at_bol = 1;
    1885           0 :     b->yy_buffer_status = YY_BUFFER_NEW;
    1886             : 
    1887           0 :     if ( b == yy_current_buffer )
    1888           0 :         yy_load_buffer_state();
    1889             :     }
    1890             : 
    1891             : 
    1892             : #ifndef YY_NO_SCAN_BUFFER
    1893             : #ifdef YY_USE_PROTOS
    1894           0 : YY_BUFFER_STATE yy_scan_buffer( char *base, yy_size_t size )
    1895             : #else
    1896             : YY_BUFFER_STATE yy_scan_buffer( base, size )
    1897             : char *base;
    1898             : yy_size_t size;
    1899             : #endif
    1900             :     {
    1901             :     YY_BUFFER_STATE b;
    1902             : 
    1903           0 :     if ( size < 2 ||
    1904           0 :          base[size-2] != YY_END_OF_BUFFER_CHAR ||
    1905           0 :          base[size-1] != YY_END_OF_BUFFER_CHAR )
    1906             :         /* They forgot to leave room for the EOB's. */
    1907           0 :         return 0;
    1908             : 
    1909           0 :     b = (YY_BUFFER_STATE) yy_flex_alloc( sizeof( struct yy_buffer_state ) );
    1910           0 :     if ( ! b )
    1911           0 :         YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" );
    1912             : 
    1913           0 :     b->yy_buf_size = size - 2;  /* "- 2" to take care of EOB's */
    1914           0 :     b->yy_buf_pos = b->yy_ch_buf = base;
    1915           0 :     b->yy_is_our_buffer = 0;
    1916           0 :     b->yy_input_file = 0;
    1917           0 :     b->yy_n_chars = b->yy_buf_size;
    1918           0 :     b->yy_is_interactive = false;
    1919           0 :     b->yy_at_bol = 1;
    1920           0 :     b->yy_fill_buffer = 0;
    1921           0 :     b->yy_buffer_status = YY_BUFFER_NEW;
    1922             : 
    1923           0 :     yy_switch_to_buffer( b );
    1924             : 
    1925           0 :     return b;
    1926             :     }
    1927             : #endif
    1928             : 
    1929             : 
    1930             : #ifndef YY_NO_SCAN_STRING
    1931             : #ifdef YY_USE_PROTOS
    1932           0 : YY_BUFFER_STATE yy_scan_string( yyconst char *yy_str )
    1933             : #else
    1934             : YY_BUFFER_STATE yy_scan_string( yy_str )
    1935             : yyconst char *yy_str;
    1936             : #endif
    1937             :     {
    1938             :     int len;
    1939           0 :     for ( len = 0; yy_str[len]; ++len )
    1940             :         ;
    1941             : 
    1942           0 :     return yy_scan_bytes( yy_str, len );
    1943             :     }
    1944             : #endif
    1945             : 
    1946             : 
    1947             : #ifndef YY_NO_SCAN_BYTES
    1948             : #ifdef YY_USE_PROTOS
    1949           0 : YY_BUFFER_STATE yy_scan_bytes( yyconst char *bytes, int len )
    1950             : #else
    1951             : YY_BUFFER_STATE yy_scan_bytes( bytes, len )
    1952             : yyconst char *bytes;
    1953             : int len;
    1954             : #endif
    1955             :     {
    1956             :     YY_BUFFER_STATE b;
    1957             :     char *buf;
    1958             :     yy_size_t n;
    1959             :     int i;
    1960             : 
    1961             :     /* Get memory for full buffer, including space for trailing EOB's. */
    1962           0 :     n = len + 2;
    1963           0 :     buf = (char *) yy_flex_alloc( n );
    1964           0 :     if ( ! buf )
    1965           0 :         YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" );
    1966             : 
    1967           0 :     for ( i = 0; i < len; ++i )
    1968           0 :         buf[i] = bytes[i];
    1969             : 
    1970           0 :     buf[len] = buf[len+1] = YY_END_OF_BUFFER_CHAR;
    1971             : 
    1972           0 :     b = yy_scan_buffer( buf, n );
    1973           0 :     if ( ! b )
    1974           0 :         YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" );
    1975             : 
    1976             :     /* It's okay to grow etc. this buffer, and we should throw it
    1977             :      * away when we're done.
    1978             :      */
    1979           0 :     b->yy_is_our_buffer = 1;
    1980             : 
    1981           0 :     return b;
    1982             :     }
    1983             : #endif
    1984             : 
    1985             : 
    1986             : #ifndef YY_NO_PUSH_STATE
    1987             : #ifdef YY_USE_PROTOS
    1988             : static void yy_push_state( int new_state )
    1989             : #else
    1990             : static void yy_push_state( new_state )
    1991             : int new_state;
    1992             : #endif
    1993             :     {
    1994             :     if ( yy_start_stack_ptr >= yy_start_stack_depth )
    1995             :         {
    1996             :         yy_size_t new_size;
    1997             : 
    1998             :         yy_start_stack_depth += YY_START_STACK_INCR;
    1999             :         new_size = yy_start_stack_depth * sizeof( int );
    2000             : 
    2001             :         if ( ! yy_start_stack )
    2002             :             yy_start_stack = (int *) yy_flex_alloc( new_size );
    2003             : 
    2004             :         else
    2005             :             yy_start_stack = (int *) yy_flex_realloc(
    2006             :                     (void *) yy_start_stack, new_size );
    2007             : 
    2008             :         if ( ! yy_start_stack )
    2009             :             YY_FATAL_ERROR(
    2010             :             "out of memory expanding start-condition stack" );
    2011             :         }
    2012             : 
    2013             :     yy_start_stack[yy_start_stack_ptr++] = YY_START;
    2014             : 
    2015             :     BEGIN(new_state);
    2016             :     }
    2017             : #endif
    2018             : 
    2019             : 
    2020             : #ifndef YY_NO_POP_STATE
    2021             : static void yy_pop_state()
    2022             :     {
    2023             :     if ( --yy_start_stack_ptr < 0 )
    2024             :         YY_FATAL_ERROR( "start-condition stack underflow" );
    2025             : 
    2026             :     BEGIN(yy_start_stack[yy_start_stack_ptr]);
    2027             :     }
    2028             : #endif
    2029             : 
    2030             : 
    2031             : #ifndef YY_NO_TOP_STATE
    2032             : static int yy_top_state()
    2033             :     {
    2034             :     return yy_start_stack[yy_start_stack_ptr - 1];
    2035             :     }
    2036             : #endif
    2037             : 
    2038             : #ifndef YY_EXIT_FAILURE
    2039             : #define YY_EXIT_FAILURE 2
    2040             : #endif
    2041             : 
    2042             : #ifdef YY_USE_PROTOS
    2043           0 : static void yy_fatal_error( yyconst char msg[] )
    2044             : #else
    2045             : static void yy_fatal_error( msg )
    2046             : char msg[];
    2047             : #endif
    2048             :     {
    2049           0 :     (void) fprintf( stderr, "%s\n", msg );
    2050           0 :     exit( YY_EXIT_FAILURE );
    2051             :     }
    2052             : 
    2053             : 
    2054             : 
    2055             : /* Internal utility routines. */
    2056             : 
    2057             : #ifndef yytext_ptr
    2058             : #ifdef YY_USE_PROTOS
    2059             : static void yy_flex_strncpy( char *s1, yyconst char *s2, int n )
    2060             : #else
    2061             : static void yy_flex_strncpy( s1, s2, n )
    2062             : char *s1;
    2063             : yyconst char *s2;
    2064             : int n;
    2065             : #endif
    2066             :     {
    2067             :     int i;
    2068             :     for ( i = 0; i < n; ++i )
    2069             :         s1[i] = s2[i];
    2070             :     }
    2071             : #endif
    2072             : 
    2073             : #ifdef YY_NEED_STRLEN
    2074             : #ifdef YY_USE_PROTOS
    2075             : static int yy_flex_strlen( yyconst char *s )
    2076             : #else
    2077             : static int yy_flex_strlen( s )
    2078             : yyconst char *s;
    2079             : #endif
    2080             :     {
    2081             :     int n;
    2082             :     for ( n = 0; s[n]; ++n )
    2083             :         ;
    2084             : 
    2085             :     return n;
    2086             :     }
    2087             : #endif
    2088             : 
    2089             : 
    2090             : #ifdef YY_USE_PROTOS
    2091           0 : static void *yy_flex_alloc( yy_size_t size )
    2092             : #else
    2093             : static void *yy_flex_alloc( size )
    2094             : yy_size_t size;
    2095             : #endif
    2096             :     {
    2097           0 :     return (void *) malloc( size );
    2098             :     }
    2099             : 
    2100             : #ifdef YY_USE_PROTOS
    2101           0 : static void *yy_flex_realloc( void *ptr, yy_size_t size )
    2102             : #else
    2103             : static void *yy_flex_realloc( ptr, size )
    2104             : void *ptr;
    2105             : yy_size_t size;
    2106             : #endif
    2107             :     {
    2108             :     /* The cast to (char *) in the following accommodates both
    2109             :      * implementations that use char* generic pointers, and those
    2110             :      * that use void* generic pointers.  It works with the latter
    2111             :      * because both ANSI C and C++ allow castless assignment from
    2112             :      * any pointer type to void*, and deal with argument conversions
    2113             :      * as though doing an assignment.
    2114             :      */
    2115           0 :     return (void *) realloc( (char *) ptr, size );
    2116             :     }
    2117             : 
    2118             : #ifdef YY_USE_PROTOS
    2119           0 : static void yy_flex_free( void *ptr )
    2120             : #else
    2121             : static void yy_flex_free( ptr )
    2122             : void *ptr;
    2123             : #endif
    2124             :     {
    2125           0 :     free( ptr );
    2126           0 :     }
    2127             : 
    2128             : #if YY_MAIN
    2129             : int main()
    2130             :     {
    2131             :     yylex();
    2132             :     return 0;
    2133             :     }
    2134             : #endif
    2135             : 
    2136             : 
    2137           0 : void initFlex(const char *_code )
    2138             : {
    2139           0 :     yy_switch_to_buffer( yy_scan_string(_code) );
    2140           0 : }
    2141             : 
    2142           0 : int yywrap()
    2143             : {
    2144           0 :     yy_delete_buffer( YY_CURRENT_BUFFER );
    2145           0 :     return 1;
    2146             : }
    2147             : 
    2148             : #ifndef TOKEN_DEBUG
    2149           0 : int token_debug(const char * /*format*/, ...)
    2150             : {
    2151           0 :    return 0;
    2152             : }
    2153             : #endif
    2154             : 
    2155             : /* vim:set shiftwidth=4 softtabstop=4 expandtab: */

Generated by: LCOV version 1.10