[BACK]Return to y.tab.c CVS log [TXT][DIR] Up to [local] / OpenXM_contrib2 / asir2000 / parse

Annotation of OpenXM_contrib2/asir2000/parse/y.tab.c, Revision 1.1.1.1

1.1       noro        1: #ifndef lint
                      2: static char const yysccsid[] = "@(#)yaccpar    1.9 (Berkeley) 02/21/93";
                      3: #endif
                      4: #include <stdlib.h>
                      5: #define YYBYACC 1
                      6: #define YYMAJOR 1
                      7: #define YYMINOR 9
                      8: #define YYLEX yylex()
                      9: #define YYEMPTY -1
                     10: #define yyclearin (yychar=(YYEMPTY))
                     11: #define yyerrok (yyerrflag=0)
                     12: #define YYRECOVERING (yyerrflag!=0)
                     13: #if defined(c_plusplus) || defined(__cplusplus)
                     14: #include <stdlib.h>
                     15: #else
                     16: extern char *getenv();
                     17: extern void *realloc();
                     18: #endif
                     19: static int yygrowstack();
                     20: #define YYPREFIX "yy"
                     21: #line 3 "parse.y"
                     22: #define malloc(x) GC_malloc(x)
                     23: #define realloc(x,y) GC_realloc(x,y)
                     24: #define free(x) GC_free(x)
                     25:
                     26: #if defined(THINK_C)
                     27: #define alloca(x) GC_malloc(x)
                     28: #endif
                     29: #if defined(TOWNS)
                     30: #include <alloca.h>
                     31: #endif
                     32: #include <ctype.h>
                     33: #include "ca.h"
                     34: #if !defined(THINK_C)
                     35: #include <sys/types.h>
                     36: #include <sys/stat.h>
                     37: #endif
                     38: #include "parse.h"
                     39:
                     40: #define NOPR (prresult=0)
                     41:
                     42: extern int gdef;
                     43: extern SNODE parse_snode;
                     44: extern int main_parser;
                     45:
                     46: int prresult;
                     47:
                     48: static int ind;
                     49: static FNODE t;
                     50: static NODE a,b;
                     51: static NODE2 a2;
                     52: static pointer val;
                     53: extern jmp_buf env;
                     54: #line 39 "parse.y"
                     55: typedef union {
                     56:        FNODE f;
                     57:        SNODE s;
                     58:        NODE n;
                     59:        NODE2 n2;
                     60:        int i;
                     61:        pointer p;
                     62: } YYSTYPE;
                     63: #line 64 "y.tab.c"
                     64: #define STRUCT 257
                     65: #define POINT 258
                     66: #define NEWSTRUCT 259
                     67: #define ANS 260
                     68: #define FDEF 261
                     69: #define PFDEF 262
                     70: #define GLOBAL 263
                     71: #define CMP 264
                     72: #define OR 265
                     73: #define AND 266
                     74: #define CAR 267
                     75: #define CDR 268
                     76: #define DO 269
                     77: #define WHILE 270
                     78: #define FOR 271
                     79: #define IF 272
                     80: #define ELSE 273
                     81: #define BREAK 274
                     82: #define RETURN 275
                     83: #define CONTINUE 276
                     84: #define PARIF 277
                     85: #define MAP 278
                     86: #define TIMER 279
                     87: #define GF2NGEN 280
                     88: #define GFPNGEN 281
                     89: #define GETOPT 282
                     90: #define FOP_AND 283
                     91: #define FOP_OR 284
                     92: #define FOP_IMPL 285
                     93: #define FOP_REPL 286
                     94: #define FOP_EQUIV 287
                     95: #define FOP_NOT 288
                     96: #define LOP 289
                     97: #define FORMULA 290
                     98: #define UCASE 291
                     99: #define LCASE 292
                    100: #define STR 293
                    101: #define SELF 294
                    102: #define BOPASS 295
                    103: #define PLUS 296
                    104: #define MINUS 297
                    105: #define YYERRCODE 256
                    106: const short yylhs[] = {                                        -1,
                    107:     0,    6,   16,   17,    6,    6,    6,    6,    6,    6,
                    108:     6,    6,    6,    6,    6,    6,    6,    6,    6,    6,
                    109:     6,   18,    6,    6,   15,   15,    1,    1,    7,   12,
                    110:    12,   12,   13,   13,   11,   11,    8,    8,    9,    9,
                    111:    10,   10,   14,   14,    2,    2,    5,    4,    4,    4,
                    112:     4,    4,    4,    4,    4,    4,    4,    4,    4,    4,
                    113:     4,    4,    4,    4,    4,    4,    4,    3,    3,    3,
                    114:     3,    3,    3,    3,    3,    3,    3,    3,    3,    3,
                    115:     3,    3,    3,    3,    3,    3,    3,    3,    3,    3,
                    116:     3,    3,    3,    3,    3,    3,
                    117: };
                    118: const short yylen[] = {                                         2,
                    119:     1,    1,    0,    0,    5,    6,    7,    4,    2,    1,
                    120:     2,    2,    2,    3,    5,    7,    9,    5,    7,    8,
                    121:     5,    0,   10,    2,    1,    1,    0,    1,    3,    0,
                    122:     3,    5,    1,    3,    1,    3,    0,    2,    0,    1,
                    123:     1,    3,    1,    3,    1,    1,    3,    1,    1,    1,
                    124:     1,    1,    1,    4,    6,    7,    4,    6,    8,    6,
                    125:     7,    4,    4,    3,    1,    4,    3,    1,    5,    3,
                    126:     3,    2,    2,    3,    2,    2,    3,    3,    3,    3,
                    127:     3,    3,    3,    2,    3,    3,    2,    3,    3,    3,
                    128:     3,    3,    3,    5,    3,    4,
                    129: };
                    130: const short yydefred[] = {                                      0,
                    131:     0,    0,    0,   50,    0,    0,    3,    0,    0,    0,
                    132:     0,    0,    0,    0,    0,    0,    0,    0,    0,   51,
                    133:    52,    0,    0,   49,   65,    0,   48,    0,    0,    0,
                    134:     0,   37,    0,   25,   26,    0,    0,    0,    0,    0,
                    135:     1,   10,    2,   24,   45,   46,    0,    0,   22,    0,
                    136:     0,    0,    0,    0,    0,    0,    0,   11,    0,    0,
                    137:    13,   12,    0,    0,    0,    0,    0,    0,    0,    0,
                    138:     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
                    139:     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
                    140:    72,    0,    0,    0,    0,    0,    0,    0,    0,    0,
                    141:     9,    0,    0,   35,   30,    0,    0,    0,    0,    0,
                    142:     0,    0,    0,    0,    0,    0,    0,   14,    0,    0,
                    143:     0,    0,    0,    0,   29,   38,    0,    0,   64,   74,
                    144:     0,   95,    0,    0,    0,    0,    0,    0,    0,    0,
                    145:     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
                    146:    67,    0,    0,    0,    8,   96,    0,    0,    0,   62,
                    147:    63,    0,    0,    0,    0,    0,    0,    0,    0,   57,
                    148:     0,    0,    0,    0,    0,    0,    0,   66,    0,    0,
                    149:    33,    0,   36,    0,   21,    5,    0,   18,    0,    0,
                    150:    54,    0,    0,    0,    0,    0,    0,   43,    0,    0,
                    151:     0,    0,    0,    0,    0,    6,    0,   31,    0,    0,
                    152:     0,    0,   60,   58,    0,    0,    0,    0,   55,    0,
                    153:     0,    0,    7,   34,   28,    0,   19,    0,   16,    0,
                    154:    56,    0,    0,   44,   61,   32,   37,    0,   59,   20,
                    155:     0,   17,   23,
                    156: };
                    157: const short yydgoto[] = {                                      38,
                    158:   226,  181,   78,   40,  198,  126,   42,   74,   79,   80,
                    159:   106,  153,  182,  199,   43,   51,  159,  108,
                    160: };
                    161: const short yysindex[] = {                                    119,
                    162:     3, -214,  -16,    0, -288, -275,    0,    8,   18,  119,
                    163:    25,   29,   32,    3,  155,    3,   34,   41,   42,    0,
                    164:     0,   44,  458,    0,    0,  -25,    0,  458,  458,  458,
                    165:   458,    0,  193,    0,    0,  458,  458,    0, 1376,  -84,
                    166:     0,    0,    0,    0,    0,    0, -114, -214,    0,   46,
                    167:  -201,  458,  458, -179,  458,  458,  458,    0,  -20, 1376,
                    168:     0,    0, -195, -187,  458, -214, 2001,  458,  458, -186,
                    169:    12,   12, -186,   40, -214,  458, 1522, 1943,   17,   63,
                    170:    47,  458,  458,  458,  458,  458,  458,  458,  458,  458,
                    171:     0,  458,  458,  458,  458,  458,  458,  458,  458,  458,
                    172:     0, -214,  458,    0,    0,    7,   70,   72,  458,   71,
                    173:  1675, 1733,   74,   76,   62,   86,  458,    0,   84,   92,
                    174:  1776,   96,   19,  -31,    0,    0,  101, 1789,    0,    0,
                    175:   458,    0,   -7,  600,  987,  467, 2118, 2056, 1860,  720,
                    176:   757, 1943,   12,   12,  -92,  -92,  -92,  -92, 1943, 1826,
                    177:     0, 1853, -122, -148,    0,    0,  458,  104,    3,    0,
                    178:     0,  458,  119,  458,  119,    6,  458,  458,  458,    0,
                    179:   106,   90, -214, 2037,  109, 1943,  458,    0, -214,  -17,
                    180:     0,   20,    0,  110,    0,    0,  113,    0,   97, -116,
                    181:     0,  117,  120, 1887,  458,   99,  105,    0,  -28,  422,
                    182:   -84,  458, 1988, -214,    7,    0, -214,    0, -125,    3,
                    183:   458,  119,    0,    0,  458,  132,  458,  458,    0, -214,
                    184:   135,   20,    0,    0,    0,   57,    0,  141,    0, 1930,
                    185:     0, 1376, 1943,    0,    0,    0,    0,  119,    0,    0,
                    186:    80,    0,    0,
                    187: };
                    188: const short yyrindex[] = {                                      0,
                    189:     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
                    190:     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
                    191:     0,    0,    0,    0,    0, 1100,    0,    0,    0,    0,
                    192:     0,    0,    0,    0,    0,   93,  121,    0,    0,  526,
                    193:     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
                    194:     0,    0,    0,    0,  146,  137,  146,    0,  489,    0,
                    195:     0,    0,    0,    0,    0,    0,  -30,   79,   14,  818,
                    196:  1032, 1209,  846,    0,    0,    0,    0,   88,    0,  435,
                    197:     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
                    198:     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
                    199:     0,    0,    0,    0,    0,    0,    0,    0,  146,   16,
                    200:     0,    0,    0,    0,    0,    0,   14,    0,    0,    0,
                    201:     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
                    202:     0,    0, 1418, 1477, 1464,  -36, 1424,  131, 1631,  605,
                    203:  1571,   60, 1267, 1309,  886,  914,  954,  999, 1149,    0,
                    204:     0,    0,    0,    0,    0,    0,  146,    0,    0,    0,
                    205:     0,  146,    0,  137,    0,    0,  146,  146,    0,    0,
                    206:     0, 1361,    0,    0,    0,  397,    0,    0,    0,    0,
                    207:     0,    0,    0,    0,    0,    0,    0,    0,    0,    1,
                    208:     0,    0,    0,    0,  146,    0,    0,    0,    0,    0,
                    209:   563,  146,    9,    0,    0,    0,    0,    0,   78,    0,
                    210:   146,    0,    0,    0,    0,    0,    0,    0,    0,    0,
                    211:     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
                    212:     0,    0,  -23,    0,    0,    0,    0,    0,    0,    0,
                    213:     0,    0,    0,
                    214: };
                    215: const short yygindex[] = {                                      0,
                    216:     0,  694, 2334,   23,  -21,  468,    0,  -29, 2398,    0,
                    217:   -39,    0,    2,    0, 2309,    0,    0,    0,
                    218: };
                    219: #define YYTABLESIZE 2609
                    220: const short yytable[] = {                                      88,
                    221:    15,   97,  180,   49,   88,   87,  103,   88,  105,  172,
                    222:    87,  110,  219,   87,   69,  220,   50,   47,   35,  117,
                    223:    47,   88,   88,   48,   88,   88,   88,   87,   87,   98,
                    224:    87,   87,   87,   15,   95,   93,   15,   94,   35,   96,
                    225:    15,   34,   35,   15,   94,   15,  191,   52,   98,   94,
                    226:   154,    4,   94,   95,   39,   35,   88,   53,   96,   15,
                    227:    15,   34,   87,  207,   55,   34,   94,   94,   56,   94,
                    228:    94,   57,   31,   63,    4,   35,   45,   46,   34,   33,
                    229:    64,   65,   29,   66,   30,  109,   97,   88,   88,  104,
                    230:   113,   15,  173,   87,   87,   71,  119,   68,   34,   37,
                    231:    71,   94,   68,   71,  120,   97,  131,   91,  132,  130,
                    232:   156,  157,   31,  162,  154,   35,  163,   71,   71,   33,
                    233:   164,   71,   29,   15,   30,   15,  165,  167,   41,  173,
                    234:    36,   41,   94,   94,  179,  168,  170,   39,   34,   37,
                    235:   205,  174,  183,  171,  185,  195,   41,  196,  202,   41,
                    236:   209,   31,   71,  210,   35,  211,  212,  213,   33,  217,
                    237:   214,   29,   32,   30,  125,  218,   90,  225,   45,   46,
                    238:    36,   90,  231,  102,   90,  235,  104,   34,   37,  237,
                    239:    41,  238,   39,   71,   71,   39,   39,   31,   90,   90,
                    240:    35,   90,   90,   90,   33,   39,  201,   29,  234,   30,
                    241:    27,   91,   32,   39,  243,  222,    0,  241,    0,   36,
                    242:     0,   41,   41,   34,   37,    0,    0,    0,    0,    0,
                    243:     0,    0,    0,   90,    0,   31,    0,    0,    0,    0,
                    244:     0,    0,   33,    0,   76,   29,    0,   30,    0,    0,
                    245:     0,   32,    0,    0,    0,   36,   88,   88,   88,   88,
                    246:    88,    0,   37,    0,   90,   90,   15,   15,   88,   15,
                    247:    15,   15,   15,   15,   87,    0,    0,   15,   15,   15,
                    248:    15,   15,   15,  104,   15,   15,   15,   15,   15,   15,
                    249:    15,   15,   15,   36,    0,    0,   91,    0,   15,    0,
                    250:    15,   15,   15,   15,   15,    1,    2,    0,    3,    4,
                    251:     5,    6,    7,   94,    0,   91,    8,    9,   10,   11,
                    252:    12,   13,    0,   14,   15,   16,   17,   18,   19,   20,
                    253:    21,   22,    0,    0,    0,    0,    0,   23,    0,   24,
                    254:    25,   26,   27,   28,    0,    1,    2,    0,    3,    4,
                    255:     5,    6,    7,    0,    0,    0,    8,    9,   10,   11,
                    256:    12,   13,    0,   14,   15,   16,   17,   18,   19,   20,
                    257:    21,   22,    0,    0,    0,    0,    0,   23,    0,   24,
                    258:    25,   26,   27,   28,    1,    2,    0,    3,    4,    5,
                    259:     6,    7,    0,    0,    0,    8,    9,   10,   11,   12,
                    260:    13,    0,   14,   15,   16,   17,   18,   19,   20,   21,
                    261:    22,    0,    0,    0,    0,    0,   23,    0,   24,   25,
                    262:    26,   27,   28,    3,    4,   90,   90,   90,    0,    0,
                    263:     0,    8,    9,    0,    0,   90,    0,    0,    0,    0,
                    264:     0,   17,   18,   19,   20,   21,   22,   42,    0,    0,
                    265:    42,    0,   23,    0,   24,   25,   59,   27,   28,   75,
                    266:     0,    3,    4,    0,   31,   42,    0,    0,   42,    8,
                    267:     9,   33,    0,   76,   29,    0,   30,   41,    0,   17,
                    268:    18,   19,   20,   21,   22,   40,    0,   54,    0,    0,
                    269:    23,   37,   24,   25,   59,   27,   28,    0,    0,   42,
                    270:    31,    0,    0,   40,    0,    0,   40,   33,    0,    0,
                    271:    29,    0,   30,   98,    0,    0,    0,    0,   95,   93,
                    272:     0,   94,   36,   96,    0,    0,    0,   37,    0,    0,
                    273:    42,   42,    0,    0,   53,   53,    0,   40,    0,   53,
                    274:    53,   53,   53,   53,    0,   53,    0,    0,    0,    0,
                    275:     0,    0,    0,    0,    0,    0,   53,   53,   36,   53,
                    276:    53,   53,    0,    0,    0,    0,    0,    0,   40,   40,
                    277:    97,   68,   68,    0,    0,    0,   68,   68,   68,   68,
                    278:    68,    0,   68,    0,    0,    0,    0,    0,    0,   53,
                    279:     0,   53,   53,   68,   68,    0,   68,   68,   68,    0,
                    280:     0,    0,    0,    0,    0,    0,    0,    0,   69,   69,
                    281:     0,    0,    0,   69,   69,   69,   69,   69,    0,   69,
                    282:     0,    0,   53,   53,    0,    0,    0,    0,   68,   68,
                    283:    69,   69,    0,   69,   69,   69,    0,    0,    0,    0,
                    284:   188,    0,  190,    0,    0,    0,   98,    0,    0,    0,
                    285:    92,   95,   93,    0,   94,   92,   96,    0,   92,   68,
                    286:    68,    0,    0,    0,    0,   69,   69,    0,    0,    0,
                    287:     0,    0,   92,   92,    0,   92,   92,   92,    0,    0,
                    288:     0,    0,    0,    0,    0,    0,    0,    0,    0,  229,
                    289:     3,    4,    0,    0,    0,    0,   69,   69,    8,    9,
                    290:     0,    0,    0,   97,    0,   47,    0,   92,   17,   18,
                    291:    19,   20,   21,   22,    0,  242,    0,    0,    0,   23,
                    292:     0,   24,   25,   59,   27,   28,    3,    4,    0,    0,
                    293:     0,    0,    0,    0,    8,    9,    0,    0,   92,   92,
                    294:    82,   83,   84,    0,   17,   18,   19,   20,   21,   22,
                    295:     0,  107,    0,    0,    0,   23,   53,   24,   25,   59,
                    296:    27,   28,   53,   53,   53,   90,   98,    0,    0,  122,
                    297:    91,   95,   93,    0,   94,    0,   96,    0,  127,    0,
                    298:     0,   53,   53,   53,   53,   53,    0,   53,    0,    0,
                    299:     0,    0,   53,   53,    0,    0,    0,    0,    0,   68,
                    300:    68,   68,    0,   98,    0,  151,    0,    0,   95,   93,
                    301:     0,   94,    0,   96,    0,    0,    0,    0,   68,   68,
                    302:    68,   68,   68,   97,   68,    0,    0,    0,    0,   68,
                    303:    68,    0,    0,    0,    0,    0,   69,   69,   69,    0,
                    304:     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
                    305:     0,    0,    0,    0,    0,   69,   69,   69,   69,   69,
                    306:    97,   69,    0,   73,   73,    0,   69,   69,   73,   73,
                    307:    73,   73,   73,   82,   73,   84,  197,    0,    0,    0,
                    308:     0,    0,  204,    0,    0,   73,   73,    0,   73,   73,
                    309:    73,   84,   84,    0,    0,    0,   84,   84,   84,   84,
                    310:    84,   92,   84,   91,    0,    0,    0,    0,    0,   92,
                    311:   224,    0,    0,   84,   84,    0,   84,   84,   84,    0,
                    312:    73,   73,    0,  197,    0,    0,    0,    0,    0,    0,
                    313:     0,   79,   79,    0,    0,    0,   79,   79,   79,   79,
                    314:    79,    0,   79,    0,    0,    0,    0,    0,   84,   84,
                    315:     0,   73,   73,   79,   79,    0,   79,   79,   79,   80,
                    316:    80,    0,    0,    0,   80,   80,   80,   80,   80,    0,
                    317:    80,    0,    0,    0,    0,    0,    0,    0,    0,   84,
                    318:    84,   80,   80,    0,   80,   80,   80,    0,   79,    0,
                    319:     0,    0,    0,   82,   83,   84,    0,    0,    0,   82,
                    320:    82,    0,    0,    0,   82,   82,   82,   82,   82,    0,
                    321:    82,    0,   85,   86,   87,   88,   80,    0,   90,   79,
                    322:    79,   82,   82,   91,   82,   82,   82,    0,    0,    0,
                    323:    82,   83,   84,   98,    0,    0,    0,    0,   95,   93,
                    324:     0,   94,    0,   96,   81,   81,    0,   80,   80,   81,
                    325:    81,   81,   81,   81,    0,   81,   82,    0,    0,    0,
                    326:    91,    0,    0,    0,    0,    0,   81,   81,    0,   81,
                    327:    81,   81,    0,    0,    0,    0,    0,   75,    0,    0,
                    328:     0,    0,   75,    0,   75,   75,   75,   82,   82,    0,
                    329:    97,   73,   73,   73,    0,    0,    0,    0,    0,   75,
                    330:    75,   81,   75,   75,   75,    0,    0,    0,    0,    0,
                    331:    73,   73,   73,   73,   73,    0,   73,    0,    0,   84,
                    332:    84,   84,   73,    0,    0,    0,    0,    0,    0,    0,
                    333:     0,    0,   81,   81,   75,    0,    0,    0,   84,   84,
                    334:    84,   84,   84,    0,   84,   53,   53,    0,    0,    0,
                    335:    84,   53,   53,    0,   53,    0,   53,    0,    0,   79,
                    336:    79,   79,    0,    0,    0,   75,   75,    0,   53,    0,
                    337:    53,    0,   53,    0,    0,    0,    0,    0,   79,   79,
                    338:    79,   79,   79,    0,   79,    0,    0,   80,   80,   80,
                    339:    79,    0,    0,    0,   70,    0,    0,    0,    0,   70,
                    340:    53,    0,   70,   53,    0,    0,   80,   80,   80,   80,
                    341:    80,    0,   80,    0,    0,    0,   70,   70,   80,    0,
                    342:    70,    0,    0,    0,    0,    0,    0,   82,   82,   82,
                    343:     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
                    344:     0,    0,    0,    0,    0,    0,   82,   82,   82,   82,
                    345:    82,   70,   82,    0,   76,    0,    0,    0,   82,   76,
                    346:    82,   76,   76,   76,    0,    0,    0,    0,    0,    0,
                    347:     0,    0,   81,   81,   81,    0,   76,   76,    0,   76,
                    348:    76,   76,   70,   70,    0,    0,    0,    0,    0,    0,
                    349:    91,   81,   81,   81,   81,   81,    0,   81,    0,    0,
                    350:     0,    0,    0,   81,    0,   75,   75,   75,    0,    0,
                    351:     0,   76,   77,    0,    0,    0,    0,   77,    0,   77,
                    352:    77,   77,    0,    0,   75,   75,   75,   75,   75,    0,
                    353:    75,    0,    0,    0,   77,   77,   75,   77,   77,   77,
                    354:     0,    0,   76,   76,    0,    0,    0,    0,    0,    0,
                    355:     0,    0,    0,    0,   78,    0,    0,    0,    0,   78,
                    356:     0,   78,   78,   78,    0,    0,    0,   53,    0,   77,
                    357:     0,    0,    0,   53,   53,   53,   78,   78,    0,   78,
                    358:    78,   78,    0,    0,    0,    0,    0,    0,    0,    0,
                    359:     0,    0,   53,   53,   53,   53,   53,    0,   53,    0,
                    360:    77,   77,    0,   53,   53,    0,   54,   54,    0,    0,
                    361:     0,   78,   54,   54,    0,   54,    0,   54,    0,    0,
                    362:     0,   35,   98,    0,    0,    0,    0,   95,   93,   54,
                    363:    94,   54,   96,   54,    0,    0,    0,    0,    0,    0,
                    364:     0,    0,   78,   78,   34,    0,   99,    0,  100,    0,
                    365:     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
                    366:     0,   54,    0,   83,   54,    0,    0,    0,   83,   89,
                    367:     0,   83,    0,    0,   89,    0,    0,   89,    0,   97,
                    368:     0,    0,   76,   76,   76,   83,   83,    0,   83,   83,
                    369:    83,   89,   89,    0,   89,   89,   89,    0,    0,    0,
                    370:     0,   76,   76,   76,   76,   76,    0,   76,    0,   86,
                    371:     0,    0,    0,   76,   86,    0,    0,   86,    0,    0,
                    372:    83,    0,   85,    0,    0,    0,   89,   85,    0,    0,
                    373:    85,   86,   86,    0,   86,   86,   86,    0,    0,    0,
                    374:    77,   77,   77,    0,   85,   85,    0,   85,   85,   85,
                    375:     0,   83,   83,    0,    0,    0,    0,   89,   89,   77,
                    376:    77,   77,   77,   77,    0,   77,   86,    0,   98,    0,
                    377:     0,   77,  129,   95,   93,    0,   94,    0,   96,   85,
                    378:     0,    0,   78,   78,   78,    0,    0,    0,    0,    0,
                    379:     0,    0,   99,    0,  100,    0,    0,   86,   86,    0,
                    380:     0,   78,   78,   78,   78,   78,    0,   78,    0,    0,
                    381:    85,   85,    0,   78,    0,    0,   93,    0,    0,    0,
                    382:     0,   93,    0,    0,   93,   97,    0,    0,   54,    0,
                    383:     0,    0,    0,    0,   54,   54,   54,    0,   93,   93,
                    384:     0,   93,   93,   93,    0,    0,    0,    0,    0,   82,
                    385:    83,   84,    0,   54,   54,   54,   54,   54,    0,   54,
                    386:     0,    0,    0,    0,   54,   54,    0,    0,   85,   86,
                    387:    87,   88,   89,   93,   90,    0,   91,    0,    0,   91,
                    388:    92,   91,    0,    0,   91,    0,    0,    0,    0,    0,
                    389:     0,   83,   83,   83,    0,    0,    0,    0,   91,   91,
                    390:     0,   91,   91,   91,   93,   93,    0,    0,    0,    0,
                    391:    83,   83,   83,   83,   83,    0,   83,   89,   89,   89,
                    392:    89,   98,   83,    0,    0,  160,   95,   93,   89,   94,
                    393:     0,   96,    0,   91,    0,    0,    0,    0,   86,   86,
                    394:     0,    0,    0,    0,    0,   99,    0,  100,    0,    0,
                    395:     0,   85,    0,    0,    0,    0,   86,   86,   86,   86,
                    396:    86,    0,   86,    0,   91,   91,    0,    0,   86,   85,
                    397:    85,   85,   85,   85,    0,   85,    0,    0,   97,   98,
                    398:     0,   85,    0,  161,   95,   93,    0,   94,    0,   96,
                    399:     0,    0,    0,    0,    0,   82,   83,   84,    0,    0,
                    400:     0,    0,    0,   99,    0,  100,    0,    0,    0,    0,
                    401:     0,    0,    0,    0,   85,   86,   87,   88,   89,    0,
                    402:    90,    0,   98,    0,    0,   91,   92,   95,   93,  169,
                    403:    94,    0,   96,    0,    0,   98,   97,    0,    0,  175,
                    404:    95,   93,    0,   94,    0,   96,   99,    0,  100,    0,
                    405:     0,    0,    0,    0,    0,    0,    0,    0,    0,   99,
                    406:     0,  100,    0,   93,   93,   93,   93,   93,    0,   93,
                    407:     0,    0,   98,    0,    0,   93,    0,   95,   93,   97,
                    408:    94,    0,   96,    0,    0,    0,    0,    0,    0,    0,
                    409:     0,    0,   97,  177,    0,    0,   99,    0,  100,   98,
                    410:     0,    0,    0,    0,   95,   93,   98,   94,    0,   96,
                    411:     0,   95,   93,    0,   94,    0,   96,    0,    0,    0,
                    412:     0,    0,    0,   99,    0,  100,   91,   91,    0,   97,
                    413:     0,    0,    0,   98,    0,   91,    0,    0,   95,   93,
                    414:   215,   94,    0,   96,    0,    0,    0,    0,   82,   83,
                    415:    84,    0,    0,    0,    0,  178,   97,   99,    0,  100,
                    416:     0,    0,    0,   97,    0,    0,    0,   85,   86,   87,
                    417:    88,   89,    0,   90,    0,    0,   98,    0,   91,   92,
                    418:   239,   95,   93,    0,   94,    0,   96,    0,    0,   98,
                    419:    97,    0,    0,    0,   95,   93,    0,   94,    0,   96,
                    420:    99,    0,  100,    0,    0,    0,   82,   83,   84,    0,
                    421:     0,    0,    0,   99,    0,  100,    0,    0,    0,    0,
                    422:     0,    0,    0,    0,    0,   85,   86,   87,   88,   89,
                    423:     0,   90,    0,   97,   98,    0,   91,   92,    0,   95,
                    424:    93,    0,   94,    0,   96,    0,   97,   98,    0,   82,
                    425:    83,   84,   95,   93,    0,   94,    0,   96,    0,    0,
                    426:   100,    0,   82,   83,   84,    0,    0,    0,   85,   86,
                    427:    87,   88,   89,    0,   90,    0,    0,    0,    0,   91,
                    428:    92,   85,   86,   87,   88,   89,  200,   90,    0,    0,
                    429:     0,   97,   91,   92,    0,    0,    0,    0,    0,   82,
                    430:    83,   84,   98,    0,   97,    0,    0,   95,   93,    0,
                    431:    94,    0,   96,    0,    0,    0,    0,    0,   85,   86,
                    432:    87,   88,   89,    0,   90,    0,   82,   83,   84,   91,
                    433:    92,    0,    0,   82,   83,   84,    0,    0,    0,    0,
                    434:     0,    0,    0,    0,    0,   85,   86,   87,   88,   89,
                    435:     0,   90,   85,   86,   87,    0,   91,   92,   90,   97,
                    436:    82,   83,   84,   91,   98,    0,    0,    0,    0,   95,
                    437:    93,    0,   94,    0,   96,    0,    0,    0,    0,   85,
                    438:    86,   87,   88,   89,    0,   90,    0,    0,    0,    0,
                    439:    91,   92,    0,    0,    0,    0,    0,    0,    0,    0,
                    440:     0,    0,    0,   82,   83,   84,    0,    0,    0,    0,
                    441:     0,    0,    0,    0,    0,    0,   82,   83,   84,    0,
                    442:     0,   97,   85,   86,   87,   88,   89,    0,   90,    0,
                    443:     0,    0,    0,   91,   92,   85,   86,   87,   88,   89,
                    444:     0,   90,    0,    0,    0,    0,   91,   92,    0,    0,
                    445:     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
                    446:     0,   82,   83,   84,    0,    0,    0,    0,    0,    0,
                    447:     0,    0,    0,    0,   82,   83,   84,    0,    0,    0,
                    448:    85,   86,   87,   88,   89,    0,   90,    0,    0,    0,
                    449:     0,   91,    0,   85,   86,   87,   88,   89,    0,   90,
                    450:     0,    0,    0,    0,   91,    0,    4,    0,    0,    0,
                    451:     0,    0,    0,    8,    9,    0,    0,    0,    0,   44,
                    452:     0,    0,    0,   17,   18,   19,   20,   21,   22,   82,
                    453:    83,   84,   58,   61,   62,    0,   24,   25,   59,   27,
                    454:     0,    0,    0,   39,    0,    0,    0,    0,   85,   86,
                    455:     0,    0,    0,   39,   90,    0,    0,  101,   60,   91,
                    456:     0,    0,    0,    0,    0,    0,   67,    0,    0,    0,
                    457:     0,   70,   71,   72,   73,    0,   77,    0,  118,    0,
                    458:     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
                    459:     0,   82,   83,   84,    0,  111,  112,    0,    0,    0,
                    460:     0,    0,    0,    0,    0,    0,    0,    0,  121,    0,
                    461:    85,    0,    0,    0,    0,    0,   90,   39,    0,  128,
                    462:     0,   91,    0,    0,  155,  133,  134,  135,  136,  137,
                    463:   138,  139,  140,  141,    0,  142,  143,  144,  145,  146,
                    464:   147,  148,  149,  150,   81,    0,  152,    0,    0,    0,
                    465:     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
                    466:     0,    0,  114,  115,  116,    0,    0,    0,    0,    0,
                    467:     0,    0,    0,    0,  176,  123,  124,  186,    0,    0,
                    468:     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
                    469:     0,    0,    0,    0,    0,    0,    0,    0,  206,    0,
                    470:   208,    0,    0,    0,    0,    0,   39,    0,   39,    0,
                    471:     0,    0,  194,    0,    0,    0,  158,    0,    0,    0,
                    472:   203,    0,    0,  223,  166,    0,    0,    0,  227,    0,
                    473:     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
                    474:   236,    0,    0,   77,    0,    0,    0,    0,    0,    0,
                    475:   240,    0,    0,    0,    0,   39,    0,    0,  230,    0,
                    476:   232,  233,    0,    0,  184,    0,    0,    0,    0,  187,
                    477:     0,  189,    0,    0,  192,  193,    0,    0,    0,    0,
                    478:     0,   39,    0,    0,   39,    0,    0,    0,    0,    0,
                    479:     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
                    480:     0,    0,  216,    0,    0,    0,    0,    0,    0,  221,
                    481:     0,    0,    0,    0,    0,    0,    0,    0,  228,
                    482: };
                    483: const short yycheck[] = {                                      36,
                    484:     0,   94,  125,  292,   41,   36,   91,   44,  123,   41,
                    485:    41,   51,   41,   44,   40,   44,  292,   41,   36,   40,
                    486:    44,   58,   59,   40,   61,   62,   63,   58,   59,   37,
                    487:    61,   62,   63,   33,   42,   43,   36,   45,   36,   47,
                    488:    40,   59,   36,   43,   36,   45,   41,   40,   37,   41,
                    489:    44,   36,   44,   42,   41,   36,   93,   40,   47,   59,
                    490:    60,   59,   93,   44,   40,   59,   58,   59,   40,   61,
                    491:    62,   40,   33,   40,   59,   36,  291,  292,   59,   40,
                    492:    40,   40,   43,   40,   45,   40,   94,  124,  125,  291,
                    493:   270,   91,  124,  124,  125,   36,  292,  123,   59,   60,
                    494:    41,   93,  123,   44,  292,   94,   44,  294,   62,   93,
                    495:    41,   40,   33,   40,   44,   36,   41,   58,   59,   40,
                    496:    59,   62,   43,  123,   45,  125,   41,   44,   41,  124,
                    497:    91,   44,  124,  125,  257,   44,   41,  124,   59,   60,
                    498:   180,   41,  291,  125,   41,   40,   59,   58,   40,   62,
                    499:    41,   33,   93,   41,   36,   59,  273,   41,   40,   61,
                    500:    41,   43,  123,   45,  125,   61,   36,  293,  291,  292,
                    501:    91,   41,   41,  258,   44,   41,  291,   59,   60,  123,
                    502:    93,   41,   62,  124,  125,   93,   41,   33,   58,   59,
                    503:    36,   61,   62,   63,   40,   59,  174,   43,  220,   45,
                    504:   123,  294,  123,  125,  125,  204,   -1,  237,   -1,   91,
                    505:    -1,  124,  125,   59,   60,   -1,   -1,   -1,   -1,   -1,
                    506:    -1,   -1,   -1,   93,   -1,   33,   -1,   -1,   -1,   -1,
                    507:    -1,   -1,   40,   -1,   42,   43,   -1,   45,   -1,   -1,
                    508:    -1,  123,   -1,   -1,   -1,   91,  283,  284,  285,  286,
                    509:   287,   -1,   60,   -1,  124,  125,  256,  257,  295,  259,
                    510:   260,  261,  262,  263,  295,   -1,   -1,  267,  268,  269,
                    511:   270,  271,  272,  291,  274,  275,  276,  277,  278,  279,
                    512:   280,  281,  282,   91,   -1,   -1,  294,   -1,  288,   -1,
                    513:   290,  291,  292,  293,  294,  256,  257,   -1,  259,  260,
                    514:   261,  262,  263,  295,   -1,  294,  267,  268,  269,  270,
                    515:   271,  272,   -1,  274,  275,  276,  277,  278,  279,  280,
                    516:   281,  282,   -1,   -1,   -1,   -1,   -1,  288,   -1,  290,
                    517:   291,  292,  293,  294,   -1,  256,  257,   -1,  259,  260,
                    518:   261,  262,  263,   -1,   -1,   -1,  267,  268,  269,  270,
                    519:   271,  272,   -1,  274,  275,  276,  277,  278,  279,  280,
                    520:   281,  282,   -1,   -1,   -1,   -1,   -1,  288,   -1,  290,
                    521:   291,  292,  293,  294,  256,  257,   -1,  259,  260,  261,
                    522:   262,  263,   -1,   -1,   -1,  267,  268,  269,  270,  271,
                    523:   272,   -1,  274,  275,  276,  277,  278,  279,  280,  281,
                    524:   282,   -1,   -1,   -1,   -1,   -1,  288,   -1,  290,  291,
                    525:   292,  293,  294,  259,  260,  285,  286,  287,   -1,   -1,
                    526:    -1,  267,  268,   -1,   -1,  295,   -1,   -1,   -1,   -1,
                    527:    -1,  277,  278,  279,  280,  281,  282,   41,   -1,   -1,
                    528:    44,   -1,  288,   -1,  290,  291,  292,  293,  294,  257,
                    529:    -1,  259,  260,   -1,   33,   59,   -1,   -1,   62,  267,
                    530:   268,   40,   -1,   42,   43,   -1,   45,    0,   -1,  277,
                    531:   278,  279,  280,  281,  282,   41,   -1,   10,   -1,   -1,
                    532:   288,   60,  290,  291,  292,  293,  294,   -1,   -1,   93,
                    533:    33,   -1,   -1,   59,   -1,   -1,   62,   40,   -1,   -1,
                    534:    43,   -1,   45,   37,   -1,   -1,   -1,   -1,   42,   43,
                    535:    -1,   45,   91,   47,   -1,   -1,   -1,   60,   -1,   -1,
                    536:   124,  125,   -1,   -1,   36,   37,   -1,   93,   -1,   41,
                    537:    42,   43,   44,   45,   -1,   47,   -1,   -1,   -1,   -1,
                    538:    -1,   -1,   -1,   -1,   -1,   -1,   58,   59,   91,   61,
                    539:    62,   63,   -1,   -1,   -1,   -1,   -1,   -1,  124,  125,
                    540:    94,   36,   37,   -1,   -1,   -1,   41,   42,   43,   44,
                    541:    45,   -1,   47,   -1,   -1,   -1,   -1,   -1,   -1,   91,
                    542:    -1,   93,   94,   58,   59,   -1,   61,   62,   63,   -1,
                    543:    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   36,   37,
                    544:    -1,   -1,   -1,   41,   42,   43,   44,   45,   -1,   47,
                    545:    -1,   -1,  124,  125,   -1,   -1,   -1,   -1,   93,   94,
                    546:    58,   59,   -1,   61,   62,   63,   -1,   -1,   -1,   -1,
                    547:   163,   -1,  165,   -1,   -1,   -1,   37,   -1,   -1,   -1,
                    548:    36,   42,   43,   -1,   45,   41,   47,   -1,   44,  124,
                    549:   125,   -1,   -1,   -1,   -1,   93,   94,   -1,   -1,   -1,
                    550:    -1,   -1,   58,   59,   -1,   61,   62,   63,   -1,   -1,
                    551:    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  212,
                    552:   259,  260,   -1,   -1,   -1,   -1,  124,  125,  267,  268,
                    553:    -1,   -1,   -1,   94,   -1,    2,   -1,   93,  277,  278,
                    554:   279,  280,  281,  282,   -1,  238,   -1,   -1,   -1,  288,
                    555:    -1,  290,  291,  292,  293,  294,  259,  260,   -1,   -1,
                    556:    -1,   -1,   -1,   -1,  267,  268,   -1,   -1,  124,  125,
                    557:   264,  265,  266,   -1,  277,  278,  279,  280,  281,  282,
                    558:    -1,   48,   -1,   -1,   -1,  288,  258,  290,  291,  292,
                    559:   293,  294,  264,  265,  266,  289,   37,   -1,   -1,   66,
                    560:   294,   42,   43,   -1,   45,   -1,   47,   -1,   75,   -1,
                    561:    -1,  283,  284,  285,  286,  287,   -1,  289,   -1,   -1,
                    562:    -1,   -1,  294,  295,   -1,   -1,   -1,   -1,   -1,  264,
                    563:   265,  266,   -1,   37,   -1,  102,   -1,   -1,   42,   43,
                    564:    -1,   45,   -1,   47,   -1,   -1,   -1,   -1,  283,  284,
                    565:   285,  286,  287,   94,  289,   -1,   -1,   -1,   -1,  294,
                    566:   295,   -1,   -1,   -1,   -1,   -1,  264,  265,  266,   -1,
                    567:    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
                    568:    -1,   -1,   -1,   -1,   -1,  283,  284,  285,  286,  287,
                    569:    94,  289,   -1,   36,   37,   -1,  294,  295,   41,   42,
                    570:    43,   44,   45,  264,   47,  266,  173,   -1,   -1,   -1,
                    571:    -1,   -1,  179,   -1,   -1,   58,   59,   -1,   61,   62,
                    572:    63,   36,   37,   -1,   -1,   -1,   41,   42,   43,   44,
                    573:    45,  287,   47,  294,   -1,   -1,   -1,   -1,   -1,  295,
                    574:   207,   -1,   -1,   58,   59,   -1,   61,   62,   63,   -1,
                    575:    93,   94,   -1,  220,   -1,   -1,   -1,   -1,   -1,   -1,
                    576:    -1,   36,   37,   -1,   -1,   -1,   41,   42,   43,   44,
                    577:    45,   -1,   47,   -1,   -1,   -1,   -1,   -1,   93,   94,
                    578:    -1,  124,  125,   58,   59,   -1,   61,   62,   63,   36,
                    579:    37,   -1,   -1,   -1,   41,   42,   43,   44,   45,   -1,
                    580:    47,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  124,
                    581:   125,   58,   59,   -1,   61,   62,   63,   -1,   93,   -1,
                    582:    -1,   -1,   -1,  264,  265,  266,   -1,   -1,   -1,   36,
                    583:    37,   -1,   -1,   -1,   41,   42,   43,   44,   45,   -1,
                    584:    47,   -1,  283,  284,  285,  286,   93,   -1,  289,  124,
                    585:   125,   58,   59,  294,   61,   62,   63,   -1,   -1,   -1,
                    586:   264,  265,  266,   37,   -1,   -1,   -1,   -1,   42,   43,
                    587:    -1,   45,   -1,   47,   36,   37,   -1,  124,  125,   41,
                    588:    42,   43,   44,   45,   -1,   47,   93,   -1,   -1,   -1,
                    589:   294,   -1,   -1,   -1,   -1,   -1,   58,   59,   -1,   61,
                    590:    62,   63,   -1,   -1,   -1,   -1,   -1,   36,   -1,   -1,
                    591:    -1,   -1,   41,   -1,   43,   44,   45,  124,  125,   -1,
                    592:    94,  264,  265,  266,   -1,   -1,   -1,   -1,   -1,   58,
                    593:    59,   93,   61,   62,   63,   -1,   -1,   -1,   -1,   -1,
                    594:   283,  284,  285,  286,  287,   -1,  289,   -1,   -1,  264,
                    595:   265,  266,  295,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
                    596:    -1,   -1,  124,  125,   93,   -1,   -1,   -1,  283,  284,
                    597:   285,  286,  287,   -1,  289,   36,   37,   -1,   -1,   -1,
                    598:   295,   42,   43,   -1,   45,   -1,   47,   -1,   -1,  264,
                    599:   265,  266,   -1,   -1,   -1,  124,  125,   -1,   59,   -1,
                    600:    61,   -1,   63,   -1,   -1,   -1,   -1,   -1,  283,  284,
                    601:   285,  286,  287,   -1,  289,   -1,   -1,  264,  265,  266,
                    602:   295,   -1,   -1,   -1,   36,   -1,   -1,   -1,   -1,   41,
                    603:    91,   -1,   44,   94,   -1,   -1,  283,  284,  285,  286,
                    604:   287,   -1,  289,   -1,   -1,   -1,   58,   59,  295,   -1,
                    605:    62,   -1,   -1,   -1,   -1,   -1,   -1,  264,  265,  266,
                    606:    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
                    607:    -1,   -1,   -1,   -1,   -1,   -1,  283,  284,  285,  286,
                    608:   287,   93,  289,   -1,   36,   -1,   -1,   -1,  295,   41,
                    609:   264,   43,   44,   45,   -1,   -1,   -1,   -1,   -1,   -1,
                    610:    -1,   -1,  264,  265,  266,   -1,   58,   59,   -1,   61,
                    611:    62,   63,  124,  125,   -1,   -1,   -1,   -1,   -1,   -1,
                    612:   294,  283,  284,  285,  286,  287,   -1,  289,   -1,   -1,
                    613:    -1,   -1,   -1,  295,   -1,  264,  265,  266,   -1,   -1,
                    614:    -1,   93,   36,   -1,   -1,   -1,   -1,   41,   -1,   43,
                    615:    44,   45,   -1,   -1,  283,  284,  285,  286,  287,   -1,
                    616:   289,   -1,   -1,   -1,   58,   59,  295,   61,   62,   63,
                    617:    -1,   -1,  124,  125,   -1,   -1,   -1,   -1,   -1,   -1,
                    618:    -1,   -1,   -1,   -1,   36,   -1,   -1,   -1,   -1,   41,
                    619:    -1,   43,   44,   45,   -1,   -1,   -1,  258,   -1,   93,
                    620:    -1,   -1,   -1,  264,  265,  266,   58,   59,   -1,   61,
                    621:    62,   63,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
                    622:    -1,   -1,  283,  284,  285,  286,  287,   -1,  289,   -1,
                    623:   124,  125,   -1,  294,  295,   -1,   36,   37,   -1,   -1,
                    624:    -1,   93,   42,   43,   -1,   45,   -1,   47,   -1,   -1,
                    625:    -1,   36,   37,   -1,   -1,   -1,   -1,   42,   43,   59,
                    626:    45,   61,   47,   63,   -1,   -1,   -1,   -1,   -1,   -1,
                    627:    -1,   -1,  124,  125,   59,   -1,   61,   -1,   63,   -1,
                    628:    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
                    629:    -1,   91,   -1,   36,   94,   -1,   -1,   -1,   41,   36,
                    630:    -1,   44,   -1,   -1,   41,   -1,   -1,   44,   -1,   94,
                    631:    -1,   -1,  264,  265,  266,   58,   59,   -1,   61,   62,
                    632:    63,   58,   59,   -1,   61,   62,   63,   -1,   -1,   -1,
                    633:    -1,  283,  284,  285,  286,  287,   -1,  289,   -1,   36,
                    634:    -1,   -1,   -1,  295,   41,   -1,   -1,   44,   -1,   -1,
                    635:    93,   -1,   36,   -1,   -1,   -1,   93,   41,   -1,   -1,
                    636:    44,   58,   59,   -1,   61,   62,   63,   -1,   -1,   -1,
                    637:   264,  265,  266,   -1,   58,   59,   -1,   61,   62,   63,
                    638:    -1,  124,  125,   -1,   -1,   -1,   -1,  124,  125,  283,
                    639:   284,  285,  286,  287,   -1,  289,   93,   -1,   37,   -1,
                    640:    -1,  295,   41,   42,   43,   -1,   45,   -1,   47,   93,
                    641:    -1,   -1,  264,  265,  266,   -1,   -1,   -1,   -1,   -1,
                    642:    -1,   -1,   61,   -1,   63,   -1,   -1,  124,  125,   -1,
                    643:    -1,  283,  284,  285,  286,  287,   -1,  289,   -1,   -1,
                    644:   124,  125,   -1,  295,   -1,   -1,   36,   -1,   -1,   -1,
                    645:    -1,   41,   -1,   -1,   44,   94,   -1,   -1,  258,   -1,
                    646:    -1,   -1,   -1,   -1,  264,  265,  266,   -1,   58,   59,
                    647:    -1,   61,   62,   63,   -1,   -1,   -1,   -1,   -1,  264,
                    648:   265,  266,   -1,  283,  284,  285,  286,  287,   -1,  289,
                    649:    -1,   -1,   -1,   -1,  294,  295,   -1,   -1,  283,  284,
                    650:   285,  286,  287,   93,  289,   -1,   36,   -1,   -1,  294,
                    651:   295,   41,   -1,   -1,   44,   -1,   -1,   -1,   -1,   -1,
                    652:    -1,  264,  265,  266,   -1,   -1,   -1,   -1,   58,   59,
                    653:    -1,   61,   62,   63,  124,  125,   -1,   -1,   -1,   -1,
                    654:   283,  284,  285,  286,  287,   -1,  289,  284,  285,  286,
                    655:   287,   37,  295,   -1,   -1,   41,   42,   43,  295,   45,
                    656:    -1,   47,   -1,   93,   -1,   -1,   -1,   -1,  265,  266,
                    657:    -1,   -1,   -1,   -1,   -1,   61,   -1,   63,   -1,   -1,
                    658:    -1,  265,   -1,   -1,   -1,   -1,  283,  284,  285,  286,
                    659:   287,   -1,  289,   -1,  124,  125,   -1,   -1,  295,  283,
                    660:   284,  285,  286,  287,   -1,  289,   -1,   -1,   94,   37,
                    661:    -1,  295,   -1,   41,   42,   43,   -1,   45,   -1,   47,
                    662:    -1,   -1,   -1,   -1,   -1,  264,  265,  266,   -1,   -1,
                    663:    -1,   -1,   -1,   61,   -1,   63,   -1,   -1,   -1,   -1,
                    664:    -1,   -1,   -1,   -1,  283,  284,  285,  286,  287,   -1,
                    665:   289,   -1,   37,   -1,   -1,  294,  295,   42,   43,   44,
                    666:    45,   -1,   47,   -1,   -1,   37,   94,   -1,   -1,   41,
                    667:    42,   43,   -1,   45,   -1,   47,   61,   -1,   63,   -1,
                    668:    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   61,
                    669:    -1,   63,   -1,  283,  284,  285,  286,  287,   -1,  289,
                    670:    -1,   -1,   37,   -1,   -1,  295,   -1,   42,   43,   94,
                    671:    45,   -1,   47,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
                    672:    -1,   -1,   94,   58,   -1,   -1,   61,   -1,   63,   37,
                    673:    -1,   -1,   -1,   -1,   42,   43,   37,   45,   -1,   47,
                    674:    -1,   42,   43,   -1,   45,   -1,   47,   -1,   -1,   -1,
                    675:    -1,   -1,   -1,   61,   -1,   63,  286,  287,   -1,   94,
                    676:    -1,   -1,   -1,   37,   -1,  295,   -1,   -1,   42,   43,
                    677:    44,   45,   -1,   47,   -1,   -1,   -1,   -1,  264,  265,
                    678:   266,   -1,   -1,   -1,   -1,   93,   94,   61,   -1,   63,
                    679:    -1,   -1,   -1,   94,   -1,   -1,   -1,  283,  284,  285,
                    680:   286,  287,   -1,  289,   -1,   -1,   37,   -1,  294,  295,
                    681:    41,   42,   43,   -1,   45,   -1,   47,   -1,   -1,   37,
                    682:    94,   -1,   -1,   -1,   42,   43,   -1,   45,   -1,   47,
                    683:    61,   -1,   63,   -1,   -1,   -1,  264,  265,  266,   -1,
                    684:    -1,   -1,   -1,   61,   -1,   63,   -1,   -1,   -1,   -1,
                    685:    -1,   -1,   -1,   -1,   -1,  283,  284,  285,  286,  287,
                    686:    -1,  289,   -1,   94,   37,   -1,  294,  295,   -1,   42,
                    687:    43,   -1,   45,   -1,   47,   -1,   94,   37,   -1,  264,
                    688:   265,  266,   42,   43,   -1,   45,   -1,   47,   -1,   -1,
                    689:    63,   -1,  264,  265,  266,   -1,   -1,   -1,  283,  284,
                    690:   285,  286,  287,   -1,  289,   -1,   -1,   -1,   -1,  294,
                    691:   295,  283,  284,  285,  286,  287,   40,  289,   -1,   -1,
                    692:    -1,   94,  294,  295,   -1,   -1,   -1,   -1,   -1,  264,
                    693:   265,  266,   37,   -1,   94,   -1,   -1,   42,   43,   -1,
                    694:    45,   -1,   47,   -1,   -1,   -1,   -1,   -1,  283,  284,
                    695:   285,  286,  287,   -1,  289,   -1,  264,  265,  266,  294,
                    696:   295,   -1,   -1,  264,  265,  266,   -1,   -1,   -1,   -1,
                    697:    -1,   -1,   -1,   -1,   -1,  283,  284,  285,  286,  287,
                    698:    -1,  289,  283,  284,  285,   -1,  294,  295,  289,   94,
                    699:   264,  265,  266,  294,   37,   -1,   -1,   -1,   -1,   42,
                    700:    43,   -1,   45,   -1,   47,   -1,   -1,   -1,   -1,  283,
                    701:   284,  285,  286,  287,   -1,  289,   -1,   -1,   -1,   -1,
                    702:   294,  295,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
                    703:    -1,   -1,   -1,  264,  265,  266,   -1,   -1,   -1,   -1,
                    704:    -1,   -1,   -1,   -1,   -1,   -1,  264,  265,  266,   -1,
                    705:    -1,   94,  283,  284,  285,  286,  287,   -1,  289,   -1,
                    706:    -1,   -1,   -1,  294,  295,  283,  284,  285,  286,  287,
                    707:    -1,  289,   -1,   -1,   -1,   -1,  294,  295,   -1,   -1,
                    708:    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
                    709:    -1,  264,  265,  266,   -1,   -1,   -1,   -1,   -1,   -1,
                    710:    -1,   -1,   -1,   -1,  264,  265,  266,   -1,   -1,   -1,
                    711:   283,  284,  285,  286,  287,   -1,  289,   -1,   -1,   -1,
                    712:    -1,  294,   -1,  283,  284,  285,  286,  287,   -1,  289,
                    713:    -1,   -1,   -1,   -1,  294,   -1,  260,   -1,   -1,   -1,
                    714:    -1,   -1,   -1,  267,  268,   -1,   -1,   -1,   -1,    1,
                    715:    -1,   -1,   -1,  277,  278,  279,  280,  281,  282,  264,
                    716:   265,  266,   14,   15,   16,   -1,  290,  291,  292,  293,
                    717:    -1,   -1,   -1,    0,   -1,   -1,   -1,   -1,  283,  284,
                    718:    -1,   -1,   -1,   10,  289,   -1,   -1,   39,   15,  294,
                    719:    -1,   -1,   -1,   -1,   -1,   -1,   23,   -1,   -1,   -1,
                    720:    -1,   28,   29,   30,   31,   -1,   33,   -1,   60,   -1,
                    721:    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
                    722:    -1,  264,  265,  266,   -1,   52,   53,   -1,   -1,   -1,
                    723:    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   65,   -1,
                    724:   283,   -1,   -1,   -1,   -1,   -1,  289,   74,   -1,   76,
                    725:    -1,  294,   -1,   -1,  106,   82,   83,   84,   85,   86,
                    726:    87,   88,   89,   90,   -1,   92,   93,   94,   95,   96,
                    727:    97,   98,   99,  100,   37,   -1,  103,   -1,   -1,   -1,
                    728:    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
                    729:    -1,   -1,   55,   56,   57,   -1,   -1,   -1,   -1,   -1,
                    730:    -1,   -1,   -1,   -1,  131,   68,   69,  159,   -1,   -1,
                    731:    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
                    732:    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  180,   -1,
                    733:   182,   -1,   -1,   -1,   -1,   -1,  163,   -1,  165,   -1,
                    734:    -1,   -1,  169,   -1,   -1,   -1,  109,   -1,   -1,   -1,
                    735:   177,   -1,   -1,  205,  117,   -1,   -1,   -1,  210,   -1,
                    736:    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
                    737:   222,   -1,   -1,  200,   -1,   -1,   -1,   -1,   -1,   -1,
                    738:   232,   -1,   -1,   -1,   -1,  212,   -1,   -1,  215,   -1,
                    739:   217,  218,   -1,   -1,  157,   -1,   -1,   -1,   -1,  162,
                    740:    -1,  164,   -1,   -1,  167,  168,   -1,   -1,   -1,   -1,
                    741:    -1,  238,   -1,   -1,  241,   -1,   -1,   -1,   -1,   -1,
                    742:    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
                    743:    -1,   -1,  195,   -1,   -1,   -1,   -1,   -1,   -1,  202,
                    744:    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  211,
                    745: };
                    746: #define YYFINAL 38
                    747: #ifndef YYDEBUG
                    748: #define YYDEBUG 0
                    749: #elif YYDEBUG
                    750: #include <stdio.h>
                    751: #endif
                    752: #define YYMAXTOKEN 297
                    753: #if YYDEBUG
                    754: const char * const yyname[] = {
                    755: "end-of-file",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
                    756: "'!'",0,0,"'$'","'%'","'&'",0,"'('","')'","'*'","'+'","','","'-'",0,"'/'",0,0,0,
                    757: 0,0,0,0,0,0,0,"':'","';'","'<'","'='","'>'","'?'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
                    758: 0,0,0,0,0,0,0,0,0,0,0,0,"'['",0,"']'","'^'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
                    759: 0,0,0,0,0,0,0,0,0,0,"'{'","'|'","'}'",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
                    760: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
                    761: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
                    762: 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"STRUCT","POINT",
                    763: "NEWSTRUCT","ANS","FDEF","PFDEF","GLOBAL","CMP","OR","AND","CAR","CDR","DO",
                    764: "WHILE","FOR","IF","ELSE","BREAK","RETURN","CONTINUE","PARIF","MAP","TIMER",
                    765: "GF2NGEN","GFPNGEN","GETOPT","FOP_AND","FOP_OR","FOP_IMPL","FOP_REPL",
                    766: "FOP_EQUIV","FOP_NOT","LOP","FORMULA","UCASE","LCASE","STR","SELF","BOPASS",
                    767: "PLUS","MINUS",
                    768: };
                    769: const char * const yyrule[] = {
                    770: "$accept : start",
                    771: "start : stat",
                    772: "stat : tail",
                    773: "$$1 :",
                    774: "$$2 :",
                    775: "stat : GLOBAL $$1 pvars $$2 tail",
                    776: "stat : STRUCT rawstr '{' fields '}' tail",
                    777: "stat : STRUCT rawstr '{' fields '}' pvars tail",
                    778: "stat : STRUCT rawstr pvars tail",
                    779: "stat : expr tail",
                    780: "stat : complex",
                    781: "stat : BREAK tail",
                    782: "stat : CONTINUE tail",
                    783: "stat : RETURN tail",
                    784: "stat : RETURN expr tail",
                    785: "stat : IF '(' node ')' stat",
                    786: "stat : IF '(' node ')' stat ELSE stat",
                    787: "stat : FOR '(' node ';' node ';' node ')' stat",
                    788: "stat : WHILE '(' node ')' stat",
                    789: "stat : DO stat WHILE '(' node ')' tail",
                    790: "stat : LCASE '(' node ')' ':' '=' expr tail",
                    791: "stat : PFDEF LCASE '(' node ')'",
                    792: "$$3 :",
                    793: "stat : FDEF LCASE $$3 '(' node ')' desc '{' stats '}'",
                    794: "stat : error tail",
                    795: "tail : ';'",
                    796: "tail : '$'",
                    797: "desc :",
                    798: "desc : STR",
                    799: "complex : '{' stats '}'",
                    800: "fields :",
                    801: "fields : fields members tail",
                    802: "fields : fields STRUCT rawstr members tail",
                    803: "members : rawstr",
                    804: "members : members ',' rawstr",
                    805: "pvars : UCASE",
                    806: "pvars : pvars ',' UCASE",
                    807: "stats :",
                    808: "stats : stats stat",
                    809: "node :",
                    810: "node : _node",
                    811: "_node : expr",
                    812: "_node : _node ',' expr",
                    813: "optlist : opt",
                    814: "optlist : optlist ',' opt",
                    815: "rawstr : UCASE",
                    816: "rawstr : LCASE",
                    817: "opt : rawstr '=' expr",
                    818: "pexpr : STR",
                    819: "pexpr : FORMULA",
                    820: "pexpr : ANS",
                    821: "pexpr : GF2NGEN",
                    822: "pexpr : GFPNGEN",
                    823: "pexpr : LCASE",
                    824: "pexpr : LCASE '(' node ')'",
                    825: "pexpr : LCASE '(' node '|' optlist ')'",
                    826: "pexpr : LCASE '{' node '}' '(' node ')'",
                    827: "pexpr : GETOPT '(' rawstr ')'",
                    828: "pexpr : MAP '(' LCASE ',' node ')'",
                    829: "pexpr : TIMER '(' expr ',' expr ',' expr ')'",
                    830: "pexpr : PARIF '(' LCASE ',' node ')'",
                    831: "pexpr : '(' '*' expr ')' '(' node ')'",
                    832: "pexpr : CAR '(' expr ')'",
                    833: "pexpr : CDR '(' expr ')'",
                    834: "pexpr : '(' expr ')'",
                    835: "pexpr : UCASE",
                    836: "pexpr : pexpr '[' expr ']'",
                    837: "pexpr : pexpr POINT rawstr",
                    838: "expr : pexpr",
                    839: "expr : '(' STRUCT rawstr ')' pexpr",
                    840: "expr : expr '=' expr",
                    841: "expr : expr BOPASS expr",
                    842: "expr : expr SELF",
                    843: "expr : SELF expr",
                    844: "expr : '[' node ']'",
                    845: "expr : '+' expr",
                    846: "expr : '-' expr",
                    847: "expr : expr '+' expr",
                    848: "expr : expr '-' expr",
                    849: "expr : expr '*' expr",
                    850: "expr : expr '/' expr",
                    851: "expr : expr '%' expr",
                    852: "expr : expr '^' expr",
                    853: "expr : expr CMP expr",
                    854: "expr : '!' expr",
                    855: "expr : expr OR expr",
                    856: "expr : expr AND expr",
                    857: "expr : FOP_NOT expr",
                    858: "expr : expr FOP_AND expr",
                    859: "expr : expr FOP_OR expr",
                    860: "expr : expr FOP_IMPL expr",
                    861: "expr : expr FOP_REPL expr",
                    862: "expr : expr FOP_EQUIV expr",
                    863: "expr : expr LOP expr",
                    864: "expr : expr '?' expr ':' expr",
                    865: "expr : '<' node '>'",
                    866: "expr : NEWSTRUCT '(' rawstr ')'",
                    867: };
                    868: #endif
                    869: #ifdef YYSTACKSIZE
                    870: #undef YYMAXDEPTH
                    871: #define YYMAXDEPTH YYSTACKSIZE
                    872: #else
                    873: #ifdef YYMAXDEPTH
                    874: #define YYSTACKSIZE YYMAXDEPTH
                    875: #else
                    876: #define YYSTACKSIZE 10000
                    877: #define YYMAXDEPTH 10000
                    878: #endif
                    879: #endif
                    880: #define YYINITSTACKSIZE 200
                    881: int yydebug;
                    882: int yynerrs;
                    883: int yyerrflag;
                    884: int yychar;
                    885: short *yyssp;
                    886: YYSTYPE *yyvsp;
                    887: YYSTYPE yyval;
                    888: YYSTYPE yylval;
                    889: short *yyss;
                    890: short *yysslim;
                    891: YYSTYPE *yyvs;
                    892: int yystacksize;
                    893: /* allocate initial stack or double stack size, up to YYMAXDEPTH */
                    894: static int yygrowstack()
                    895: {
                    896:     int newsize, i;
                    897:     short *newss;
                    898:     YYSTYPE *newvs;
                    899:
                    900:     if ((newsize = yystacksize) == 0)
                    901:         newsize = YYINITSTACKSIZE;
                    902:     else if (newsize >= YYMAXDEPTH)
                    903:         return -1;
                    904:     else if ((newsize *= 2) > YYMAXDEPTH)
                    905:         newsize = YYMAXDEPTH;
                    906:     i = yyssp - yyss;
                    907:     if ((newss = (short *)realloc(yyss, newsize * sizeof *newss)) == NULL)
                    908:         return -1;
                    909:     yyss = newss;
                    910:     yyssp = newss + i;
                    911:     if ((newvs = (YYSTYPE *)realloc(yyvs, newsize * sizeof *newvs)) == NULL)
                    912:         return -1;
                    913:     yyvs = newvs;
                    914:     yyvsp = newvs + i;
                    915:     yystacksize = newsize;
                    916:     yysslim = yyss + newsize - 1;
                    917:     return 0;
                    918: }
                    919:
                    920: #define YYABORT goto yyabort
                    921: #define YYREJECT goto yyabort
                    922: #define YYACCEPT goto yyaccept
                    923: #define YYERROR goto yyerrlab
                    924:
                    925: int
                    926: yyparse()
                    927: {
                    928:     register int yym, yyn, yystate;
                    929: #if YYDEBUG
                    930:     register const char *yys;
                    931:
                    932:     if ((yys = getenv("YYDEBUG")))
                    933:     {
                    934:         yyn = *yys;
                    935:         if (yyn >= '0' && yyn <= '9')
                    936:             yydebug = yyn - '0';
                    937:     }
                    938: #endif
                    939:
                    940:     yynerrs = 0;
                    941:     yyerrflag = 0;
                    942:     yychar = (-1);
                    943:
                    944:     if (yyss == NULL && yygrowstack()) goto yyoverflow;
                    945:     yyssp = yyss;
                    946:     yyvsp = yyvs;
                    947:     *yyssp = yystate = 0;
                    948:
                    949: yyloop:
                    950:     if ((yyn = yydefred[yystate])) goto yyreduce;
                    951:     if (yychar < 0)
                    952:     {
                    953:         if ((yychar = yylex()) < 0) yychar = 0;
                    954: #if YYDEBUG
                    955:         if (yydebug)
                    956:         {
                    957:             yys = 0;
                    958:             if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
                    959:             if (!yys) yys = "illegal-symbol";
                    960:             printf("%sdebug: state %d, reading %d (%s)\n",
                    961:                     YYPREFIX, yystate, yychar, yys);
                    962:         }
                    963: #endif
                    964:     }
                    965:     if ((yyn = yysindex[yystate]) && (yyn += yychar) >= 0 &&
                    966:             yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
                    967:     {
                    968: #if YYDEBUG
                    969:         if (yydebug)
                    970:             printf("%sdebug: state %d, shifting to state %d\n",
                    971:                     YYPREFIX, yystate, yytable[yyn]);
                    972: #endif
                    973:         if (yyssp >= yysslim && yygrowstack())
                    974:         {
                    975:             goto yyoverflow;
                    976:         }
                    977:         *++yyssp = yystate = yytable[yyn];
                    978:         *++yyvsp = yylval;
                    979:         yychar = (-1);
                    980:         if (yyerrflag > 0)  --yyerrflag;
                    981:         goto yyloop;
                    982:     }
                    983:     if ((yyn = yyrindex[yystate]) && (yyn += yychar) >= 0 &&
                    984:             yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
                    985:     {
                    986:         yyn = yytable[yyn];
                    987:         goto yyreduce;
                    988:     }
                    989:     if (yyerrflag) goto yyinrecovery;
                    990: #if defined(lint) || defined(__GNUC__)
                    991:     goto yynewerror;
                    992: #endif
                    993: yynewerror:
                    994:     yyerror("syntax error");
                    995: #if defined(lint) || defined(__GNUC__)
                    996:     goto yyerrlab;
                    997: #endif
                    998: yyerrlab:
                    999:     ++yynerrs;
                   1000: yyinrecovery:
                   1001:     if (yyerrflag < 3)
                   1002:     {
                   1003:         yyerrflag = 3;
                   1004:         for (;;)
                   1005:         {
                   1006:             if ((yyn = yysindex[*yyssp]) && (yyn += YYERRCODE) >= 0 &&
                   1007:                     yyn <= YYTABLESIZE && yycheck[yyn] == YYERRCODE)
                   1008:             {
                   1009: #if YYDEBUG
                   1010:                 if (yydebug)
                   1011:                     printf("%sdebug: state %d, error recovery shifting\
                   1012:  to state %d\n", YYPREFIX, *yyssp, yytable[yyn]);
                   1013: #endif
                   1014:                 if (yyssp >= yysslim && yygrowstack())
                   1015:                 {
                   1016:                     goto yyoverflow;
                   1017:                 }
                   1018:                 *++yyssp = yystate = yytable[yyn];
                   1019:                 *++yyvsp = yylval;
                   1020:                 goto yyloop;
                   1021:             }
                   1022:             else
                   1023:             {
                   1024: #if YYDEBUG
                   1025:                 if (yydebug)
                   1026:                     printf("%sdebug: error recovery discarding state %d\n",
                   1027:                             YYPREFIX, *yyssp);
                   1028: #endif
                   1029:                 if (yyssp <= yyss) goto yyabort;
                   1030:                 --yyssp;
                   1031:                 --yyvsp;
                   1032:             }
                   1033:         }
                   1034:     }
                   1035:     else
                   1036:     {
                   1037:         if (yychar == 0) goto yyabort;
                   1038: #if YYDEBUG
                   1039:         if (yydebug)
                   1040:         {
                   1041:             yys = 0;
                   1042:             if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
                   1043:             if (!yys) yys = "illegal-symbol";
                   1044:             printf("%sdebug: state %d, error recovery discards token %d (%s)\n",
                   1045:                     YYPREFIX, yystate, yychar, yys);
                   1046:         }
                   1047: #endif
                   1048:         yychar = (-1);
                   1049:         goto yyloop;
                   1050:     }
                   1051: yyreduce:
                   1052: #if YYDEBUG
                   1053:     if (yydebug)
                   1054:         printf("%sdebug: state %d, reducing by rule %d (%s)\n",
                   1055:                 YYPREFIX, yystate, yyn, yyrule[yyn]);
                   1056: #endif
                   1057:     yym = yylen[yyn];
                   1058:     yyval = yyvsp[1-yym];
                   1059:     switch (yyn)
                   1060:     {
                   1061: case 1:
                   1062: #line 85 "parse.y"
                   1063: { parse_snode = yyvsp[0].s; YYACCEPT; }
                   1064: break;
                   1065: case 2:
                   1066: #line 88 "parse.y"
                   1067: { yyval.s = 0; }
                   1068: break;
                   1069: case 3:
                   1070: #line 89 "parse.y"
                   1071: { gdef=1; }
                   1072: break;
                   1073: case 4:
                   1074: #line 89 "parse.y"
                   1075: { gdef=0; }
                   1076: break;
                   1077: case 5:
                   1078: #line 90 "parse.y"
                   1079: { yyval.s = 0; }
                   1080: break;
                   1081: case 6:
                   1082: #line 92 "parse.y"
                   1083: { structdef(yyvsp[-4].p,yyvsp[-2].n); yyval.s = 0; }
                   1084: break;
                   1085: case 7:
                   1086: #line 94 "parse.y"
                   1087: { structdef(yyvsp[-5].p,yyvsp[-3].n); setstruct(yyvsp[-5].p,yyvsp[-1].n); yyval.s = 0; }
                   1088: break;
                   1089: case 8:
                   1090: #line 96 "parse.y"
                   1091: { setstruct(yyvsp[-2].p,yyvsp[-1].n); yyval.s = 0; }
                   1092: break;
                   1093: case 9:
                   1094: #line 98 "parse.y"
                   1095: { yyval.s = mksnode(1,S_SINGLE,yyvsp[-1].f); }
                   1096: break;
                   1097: case 10:
                   1098: #line 100 "parse.y"
                   1099: { yyval.s = yyvsp[0].s; }
                   1100: break;
                   1101: case 11:
                   1102: #line 102 "parse.y"
                   1103: { yyval.s = mksnode(0,S_BREAK); }
                   1104: break;
                   1105: case 12:
                   1106: #line 104 "parse.y"
                   1107: { yyval.s = mksnode(0,S_CONTINUE); }
                   1108: break;
                   1109: case 13:
                   1110: #line 106 "parse.y"
                   1111: { yyval.s = mksnode(1,S_RETURN,0); }
                   1112: break;
                   1113: case 14:
                   1114: #line 108 "parse.y"
                   1115: { yyval.s = mksnode(1,S_RETURN,yyvsp[-1].f); }
                   1116: break;
                   1117: case 15:
                   1118: #line 110 "parse.y"
                   1119: { yyval.s = mksnode(4,S_IFELSE,yyvsp[-4].i,yyvsp[-2].n,yyvsp[0].s,0); yyvsp[0].s?yyval.s->ln=yyvsp[0].s->ln:0; NOPR; }
                   1120: break;
                   1121: case 16:
                   1122: #line 112 "parse.y"
                   1123: { yyval.s = mksnode(4,S_IFELSE,yyvsp[-6].i,yyvsp[-4].n,yyvsp[-2].s,yyvsp[0].s); yyvsp[0].s?yyval.s->ln=yyvsp[0].s->ln:0; NOPR; }
                   1124: break;
                   1125: case 17:
                   1126: #line 114 "parse.y"
                   1127: { yyval.s = mksnode(5,S_FOR,yyvsp[-8].i,yyvsp[-6].n,yyvsp[-4].n?yyvsp[-4].n:ONENODE,yyvsp[-2].n,yyvsp[0].s); yyvsp[0].s?yyval.s->ln=yyvsp[0].s->ln:0; NOPR; }
                   1128: break;
                   1129: case 18:
                   1130: #line 116 "parse.y"
                   1131: { yyval.s = mksnode(5,S_FOR,yyvsp[-4].i,0,yyvsp[-2].n,0,yyvsp[0].s); yyvsp[0].s?yyval.s->ln=yyvsp[0].s->ln:0; NOPR; }
                   1132: break;
                   1133: case 19:
                   1134: #line 118 "parse.y"
                   1135: { yyval.s = mksnode(3,S_DO,yyvsp[-6].i,yyvsp[-5].s,yyvsp[-2].n); }
                   1136: break;
                   1137: case 20:
                   1138: #line 120 "parse.y"
                   1139: { yyval.s = mksnode(3,S_PFDEF,yyvsp[-7].p,yyvsp[-5].n,yyvsp[-1].f); NOPR; }
                   1140: break;
                   1141: case 21:
                   1142: #line 122 "parse.y"
                   1143: { yyval.s = mksnode(3,S_PFDEF,yyvsp[-3].p,yyvsp[-1].n,0); NOPR; }
                   1144: break;
                   1145: case 22:
                   1146: #line 123 "parse.y"
                   1147: { mkpvs(); }
                   1148: break;
                   1149: case 23:
                   1150: #line 124 "parse.y"
                   1151: {
                   1152:                                mkuf(yyvsp[-8].p,asir_infile->name,yyvsp[-5].n,
                   1153:                                        mksnode(1,S_CPLX,yyvsp[-1].n),yyvsp[-9].i,asir_infile->ln,yyvsp[-3].p);
                   1154:                                yyval.s = 0; NOPR;
                   1155:                        }
                   1156: break;
                   1157: case 24:
                   1158: #line 130 "parse.y"
                   1159: { yyerrok; yyval.s = 0; }
                   1160: break;
                   1161: case 25:
                   1162: #line 133 "parse.y"
                   1163: { if ( main_parser ) prresult = 1; }
                   1164: break;
                   1165: case 26:
                   1166: #line 135 "parse.y"
                   1167: { if ( main_parser ) prresult = 0; }
                   1168: break;
                   1169: case 27:
                   1170: #line 137 "parse.y"
                   1171: { yyval.p = 0; }
                   1172: break;
                   1173: case 28:
                   1174: #line 139 "parse.y"
                   1175: { yyval.p = yyvsp[0].p; }
                   1176: break;
                   1177: case 29:
                   1178: #line 142 "parse.y"
                   1179: { yyval.s = mksnode(1,S_CPLX,yyvsp[-1].n); }
                   1180: break;
                   1181: case 30:
                   1182: #line 145 "parse.y"
                   1183: { yyval.n = 0; }
                   1184: break;
                   1185: case 31:
                   1186: #line 147 "parse.y"
                   1187: { MKNODE(a,0,yyvsp[-1].n); appendtonode(yyvsp[-2].n,(pointer)a,&yyval.n); }
                   1188: break;
                   1189: case 32:
                   1190: #line 149 "parse.y"
                   1191: { MKNODE(a,yyvsp[-2].p,yyvsp[-1].n); appendtonode(yyvsp[-4].n,(pointer)a,&yyval.n); }
                   1192: break;
                   1193: case 33:
                   1194: #line 152 "parse.y"
                   1195: { MKNODE(yyval.n,yyvsp[0].p,0); }
                   1196: break;
                   1197: case 34:
                   1198: #line 154 "parse.y"
                   1199: { appendtonode(yyvsp[-2].n,yyvsp[0].p,&yyval.n); }
                   1200: break;
                   1201: case 35:
                   1202: #line 157 "parse.y"
                   1203: { val = (pointer)makepvar(yyvsp[0].p); MKNODE(yyval.n,val,0); }
                   1204: break;
                   1205: case 36:
                   1206: #line 159 "parse.y"
                   1207: { appendtonode(yyvsp[-2].n,(pointer)makepvar(yyvsp[0].p),&yyval.n); }
                   1208: break;
                   1209: case 37:
                   1210: #line 162 "parse.y"
                   1211: { yyval.n = 0; }
                   1212: break;
                   1213: case 38:
                   1214: #line 164 "parse.y"
                   1215: { appendtonode(yyvsp[-1].n,(pointer)yyvsp[0].s,&yyval.n); }
                   1216: break;
                   1217: case 39:
                   1218: #line 167 "parse.y"
                   1219: { yyval.n = 0; }
                   1220: break;
                   1221: case 40:
                   1222: #line 169 "parse.y"
                   1223: { yyval.n = yyvsp[0].n; }
                   1224: break;
                   1225: case 41:
                   1226: #line 172 "parse.y"
                   1227: { MKNODE(yyval.n,yyvsp[0].f,0); }
                   1228: break;
                   1229: case 42:
                   1230: #line 174 "parse.y"
                   1231: { appendtonode(yyvsp[-2].n,(pointer)yyvsp[0].f,&yyval.n); }
                   1232: break;
                   1233: case 43:
                   1234: #line 177 "parse.y"
                   1235: { MKNODE(yyval.n,yyvsp[0].f,0); }
                   1236: break;
                   1237: case 44:
                   1238: #line 179 "parse.y"
                   1239: { appendtonode(yyvsp[-2].n,(pointer)yyvsp[0].f,&yyval.n); }
                   1240: break;
                   1241: case 45:
                   1242: #line 182 "parse.y"
                   1243: { yyval.p = yyvsp[0].p; }
                   1244: break;
                   1245: case 46:
                   1246: #line 184 "parse.y"
                   1247: { yyval.p = yyvsp[0].p; }
                   1248: break;
                   1249: case 47:
                   1250: #line 187 "parse.y"
                   1251: { yyval.f = mkfnode(2,I_OPT,yyvsp[-2].p,yyvsp[0].f); }
                   1252: break;
                   1253: case 48:
                   1254: #line 190 "parse.y"
                   1255: { yyval.f = mkfnode(1,I_STR,yyvsp[0].p); }
                   1256: break;
                   1257: case 49:
                   1258: #line 192 "parse.y"
                   1259: { yyval.f = mkfnode(1,I_FORMULA,yyvsp[0].p); }
                   1260: break;
                   1261: case 50:
                   1262: #line 194 "parse.y"
                   1263: { yyval.f = mkfnode(1,I_ANS,yyvsp[0].i); }
                   1264: break;
                   1265: case 51:
                   1266: #line 196 "parse.y"
                   1267: { yyval.f = mkfnode(0,I_GF2NGEN); }
                   1268: break;
                   1269: case 52:
                   1270: #line 198 "parse.y"
                   1271: { yyval.f = mkfnode(0,I_GFPNGEN); }
                   1272: break;
                   1273: case 53:
                   1274: #line 200 "parse.y"
                   1275: {
                   1276:                                FUNC f;
                   1277:
                   1278:                                searchf(noargsysf,yyvsp[0].p,&f);
                   1279:                                if ( f )
                   1280:                                         yyval.f = mkfnode(2,I_FUNC,f,0);
                   1281:                                else {
                   1282:                                        searchc(yyvsp[0].p,&f);
                   1283:                                        if ( f )
                   1284:                                                yyval.f = mkfnode(2,I_FUNC,f,mkfnode(1,I_LIST,0));
                   1285:                                        else {
                   1286:                                                searchf(sysf,yyvsp[0].p,&f);
                   1287:                                                if ( !f )
                   1288:                                                        searchf(ubinf,yyvsp[0].p,&f);
                   1289:                                                if ( !f )
                   1290:                                                        searchpf(yyvsp[0].p,&f);
                   1291:                                                if ( !f )
                   1292:                                                        searchf(usrf,yyvsp[0].p,&f);
                   1293:                                                if ( f )
                   1294:                                                        makesrvar(f,(P *)&val);
                   1295:                                                else
                   1296:                                                        makevar(yyvsp[0].p,(P *)&val);
                   1297:                                                yyval.f = mkfnode(1,I_FORMULA,val);
                   1298:                                        }
                   1299:                                }
                   1300:                        }
                   1301: break;
                   1302: case 54:
                   1303: #line 227 "parse.y"
                   1304: {
                   1305:                                searchf(sysf,yyvsp[-3].p,(FUNC *)&val);
                   1306:                                if ( !val )
                   1307:                                        searchf(ubinf,yyvsp[-3].p,(FUNC *)&val);
                   1308:                                if ( !val )
                   1309:                                        searchpf(yyvsp[-3].p,(FUNC *)&val);
                   1310:                                if ( !val )
                   1311:                                        searchf(usrf,yyvsp[-3].p,(FUNC *)&val);
                   1312:                                if ( !val )
                   1313:                                        appenduf(yyvsp[-3].p,(FUNC *)&val);
                   1314:                                yyval.f = mkfnode(2,I_FUNC,val,mkfnode(1,I_LIST,yyvsp[-1].n));
                   1315:                        }
                   1316: break;
                   1317: case 55:
                   1318: #line 241 "parse.y"
                   1319: {
                   1320:                                searchf(sysf,yyvsp[-5].p,(FUNC *)&val);
                   1321:                                if ( !val )
                   1322:                                        searchf(ubinf,yyvsp[-5].p,(FUNC *)&val);
                   1323:                                if ( !val )
                   1324:                                        searchpf(yyvsp[-5].p,(FUNC *)&val);
                   1325:                                if ( !val )
                   1326:                                        searchf(usrf,yyvsp[-5].p,(FUNC *)&val);
                   1327:                                if ( !val )
                   1328:                                        appenduf(yyvsp[-5].p,(FUNC *)&val);
                   1329:                                yyval.f = mkfnode(3,I_FUNC_OPT,val,
                   1330:                                        mkfnode(1,I_LIST,yyvsp[-3].n),mkfnode(1,I_LIST,yyvsp[-1].n));
                   1331:                        }
                   1332: break;
                   1333: case 56:
                   1334: #line 255 "parse.y"
                   1335: {
                   1336:                                searchpf(yyvsp[-6].p,(FUNC *)&val);
                   1337:                                yyval.f = mkfnode(2,I_PFDERIV,val,mkfnode(1,I_LIST,yyvsp[-1].n),mkfnode(1,I_LIST,yyvsp[-4].n));
                   1338:                        }
                   1339: break;
                   1340: case 57:
                   1341: #line 260 "parse.y"
                   1342: {
                   1343:                                yyval.f = mkfnode(2,I_GETOPT,yyvsp[-1].p);
                   1344:                        }
                   1345: break;
                   1346: case 58:
                   1347: #line 264 "parse.y"
                   1348: {
                   1349:                                searchf(sysf,yyvsp[-3].p,(FUNC *)&val);
                   1350:                                if ( !val )
                   1351:                                        searchf(ubinf,yyvsp[-3].p,(FUNC *)&val);
                   1352:                                if ( !val )
                   1353:                                        searchpf(yyvsp[-3].p,(FUNC *)&val);
                   1354:                                if ( !val )
                   1355:                                        searchf(usrf,yyvsp[-3].p,(FUNC *)&val);
                   1356:                                if ( !val )
                   1357:                                        appenduf(yyvsp[-3].p,(FUNC *)&val);
                   1358:                                yyval.f = mkfnode(2,I_MAP,val,mkfnode(1,I_LIST,yyvsp[-1].n));
                   1359:                        }
                   1360: break;
                   1361: case 59:
                   1362: #line 277 "parse.y"
                   1363: {
                   1364:                                yyval.f = mkfnode(3,I_TIMER,yyvsp[-5].f,yyvsp[-3].f,yyvsp[-1].f);
                   1365:                        }
                   1366: break;
                   1367: case 60:
                   1368: #line 281 "parse.y"
                   1369: {
                   1370:                                searchf(parif,yyvsp[-3].p,(FUNC *)&val);
                   1371:                                if ( !val )
                   1372:                                        mkparif(yyvsp[-3].p,(FUNC *)&val);
                   1373:                                yyval.f = mkfnode(2,I_FUNC,val,mkfnode(1,I_LIST,yyvsp[-1].n));
                   1374:                        }
                   1375: break;
                   1376: case 61:
                   1377: #line 288 "parse.y"
                   1378: {
                   1379:                                yyval.f = mkfnode(2,I_IFUNC,yyvsp[-4].f,mkfnode(1,I_LIST,yyvsp[-1].n));
                   1380:                        }
                   1381: break;
                   1382: case 62:
                   1383: #line 292 "parse.y"
                   1384: { yyval.f = mkfnode(1,I_CAR,yyvsp[-1].f); }
                   1385: break;
                   1386: case 63:
                   1387: #line 294 "parse.y"
                   1388: { yyval.f = mkfnode(1,I_CDR,yyvsp[-1].f); }
                   1389: break;
                   1390: case 64:
                   1391: #line 296 "parse.y"
                   1392: { yyval.f = yyvsp[-1].f; }
                   1393: break;
                   1394: case 65:
                   1395: #line 298 "parse.y"
                   1396: {
                   1397:                                if ( main_parser )
                   1398:                                        yyval.f = mkfnode(2,I_PVAR,makepvar(yyvsp[0].p),0);
                   1399:                                else {
                   1400:                                        ind = searchpvar(yyvsp[0].p);
                   1401:                                        if ( ind == -1 ) {
                   1402:                                                fprintf(stderr,"%s : no such variable.\n",yyvsp[0].p);
                   1403:                                                YYABORT;
                   1404:                                        } else
                   1405:                                                yyval.f = mkfnode(2,I_PVAR,ind,0);
                   1406:                                }
                   1407:                        }
                   1408: break;
                   1409: case 66:
                   1410: #line 311 "parse.y"
                   1411: {
                   1412:                                if ( yyvsp[-3].f->id == I_PVAR || yyvsp[-3].f->id == I_INDEX ) {
                   1413:                                        appendtonode((NODE)yyvsp[-3].f->arg[1],(pointer)yyvsp[-1].f,&a);
                   1414:                                        yyvsp[-3].f->arg[1] = (pointer)a; yyval.f = yyvsp[-3].f;
                   1415:                                } else {
                   1416:                                        MKNODE(a,yyvsp[-1].f,0);
                   1417:                                        yyval.f = mkfnode(2,I_INDEX,(pointer)yyvsp[-3].f,a);
                   1418:                                }
                   1419:                        }
                   1420: break;
                   1421: case 67:
                   1422: #line 321 "parse.y"
                   1423: { memberofstruct(yyvsp[-2].f,yyvsp[0].p,&yyval.f); }
                   1424: break;
                   1425: case 68:
                   1426: #line 324 "parse.y"
                   1427: { yyval.f = yyvsp[0].f; }
                   1428: break;
                   1429: case 69:
                   1430: #line 326 "parse.y"
                   1431: { yyval.f = mkfnode(3,I_CAST,structtoindex(yyvsp[-2].p),yyvsp[0].f,0); }
                   1432: break;
                   1433: case 70:
                   1434: #line 328 "parse.y"
                   1435: { yyval.f = mkfnode(2,I_ASSPVAR,yyvsp[-2].f,yyvsp[0].f); }
                   1436: break;
                   1437: case 71:
                   1438: #line 330 "parse.y"
                   1439: { yyval.f = mkfnode(2,I_ASSPVAR,yyvsp[-2].f,mkfnode(3,I_BOP,yyvsp[-1].p,yyvsp[-2].f,yyvsp[0].f)); }
                   1440: break;
                   1441: case 72:
                   1442: #line 332 "parse.y"
                   1443: { yyval.f = mkfnode(2,I_POSTSELF,yyvsp[0].p,yyvsp[-1].f); }
                   1444: break;
                   1445: case 73:
                   1446: #line 334 "parse.y"
                   1447: { yyval.f = mkfnode(2,I_PRESELF,yyvsp[-1].p,yyvsp[0].f); }
                   1448: break;
                   1449: case 74:
                   1450: #line 336 "parse.y"
                   1451: { yyval.f = mkfnode(1,I_LIST,yyvsp[-1].n); }
                   1452: break;
                   1453: case 75:
                   1454: #line 338 "parse.y"
                   1455: { yyval.f = yyvsp[0].f; }
                   1456: break;
                   1457: case 76:
                   1458: #line 340 "parse.y"
                   1459: { yyval.f = mkfnode(3,I_BOP,yyvsp[-1].p,0,yyvsp[0].f); }
                   1460: break;
                   1461: case 77:
                   1462: #line 342 "parse.y"
                   1463: { yyval.f = mkfnode(3,I_BOP,yyvsp[-1].p,yyvsp[-2].f,yyvsp[0].f); }
                   1464: break;
                   1465: case 78:
                   1466: #line 344 "parse.y"
                   1467: { yyval.f = mkfnode(3,I_BOP,yyvsp[-1].p,yyvsp[-2].f,yyvsp[0].f); }
                   1468: break;
                   1469: case 79:
                   1470: #line 346 "parse.y"
                   1471: { yyval.f = mkfnode(3,I_BOP,yyvsp[-1].p,yyvsp[-2].f,yyvsp[0].f); }
                   1472: break;
                   1473: case 80:
                   1474: #line 348 "parse.y"
                   1475: { yyval.f = mkfnode(3,I_BOP,yyvsp[-1].p,yyvsp[-2].f,yyvsp[0].f); }
                   1476: break;
                   1477: case 81:
                   1478: #line 350 "parse.y"
                   1479: { yyval.f = mkfnode(3,I_BOP,yyvsp[-1].p,yyvsp[-2].f,yyvsp[0].f); }
                   1480: break;
                   1481: case 82:
                   1482: #line 352 "parse.y"
                   1483: { yyval.f = mkfnode(3,I_BOP,yyvsp[-1].p,yyvsp[-2].f,yyvsp[0].f); }
                   1484: break;
                   1485: case 83:
                   1486: #line 354 "parse.y"
                   1487: { yyval.f = mkfnode(3,I_COP,yyvsp[-1].i,yyvsp[-2].f,yyvsp[0].f); }
                   1488: break;
                   1489: case 84:
                   1490: #line 356 "parse.y"
                   1491: { yyval.f = mkfnode(1,I_NOT,yyvsp[0].f); }
                   1492: break;
                   1493: case 85:
                   1494: #line 358 "parse.y"
                   1495: { yyval.f = mkfnode(2,I_OR,yyvsp[-2].f,yyvsp[0].f); }
                   1496: break;
                   1497: case 86:
                   1498: #line 360 "parse.y"
                   1499: { yyval.f = mkfnode(2,I_AND,yyvsp[-2].f,yyvsp[0].f); }
                   1500: break;
                   1501: case 87:
                   1502: #line 362 "parse.y"
                   1503: { yyval.f = mkfnode(3,I_LOP,yyvsp[-1].i,yyvsp[0].f,0); }
                   1504: break;
                   1505: case 88:
                   1506: #line 364 "parse.y"
                   1507: { yyval.f = mkfnode(3,I_LOP,yyvsp[-1].i,yyvsp[-2].f,yyvsp[0].f); }
                   1508: break;
                   1509: case 89:
                   1510: #line 366 "parse.y"
                   1511: { yyval.f = mkfnode(3,I_LOP,yyvsp[-1].i,yyvsp[-2].f,yyvsp[0].f); }
                   1512: break;
                   1513: case 90:
                   1514: #line 368 "parse.y"
                   1515: { yyval.f = mkfnode(3,I_LOP,yyvsp[-1].i,yyvsp[-2].f,yyvsp[0].f); }
                   1516: break;
                   1517: case 91:
                   1518: #line 370 "parse.y"
                   1519: { yyval.f = mkfnode(3,I_LOP,yyvsp[-1].i,yyvsp[-2].f,yyvsp[0].f); }
                   1520: break;
                   1521: case 92:
                   1522: #line 372 "parse.y"
                   1523: { yyval.f = mkfnode(3,I_LOP,yyvsp[-1].i,yyvsp[-2].f,yyvsp[0].f); }
                   1524: break;
                   1525: case 93:
                   1526: #line 374 "parse.y"
                   1527: { yyval.f = mkfnode(3,I_LOP,yyvsp[-1].i,yyvsp[-2].f,yyvsp[0].f); }
                   1528: break;
                   1529: case 94:
                   1530: #line 376 "parse.y"
                   1531: { yyval.f = mkfnode(3,I_CE,yyvsp[-4].f,yyvsp[-2].f,yyvsp[0].f); }
                   1532: break;
                   1533: case 95:
                   1534: #line 378 "parse.y"
                   1535: { yyval.f = mkfnode(1,I_EV,yyvsp[-1].n); }
                   1536: break;
                   1537: case 96:
                   1538: #line 380 "parse.y"
                   1539: { yyval.f = mkfnode(1,I_NEWCOMP,(int)structtoindex(yyvsp[-1].p)); }
                   1540: break;
                   1541: #line 1540 "y.tab.c"
                   1542:     }
                   1543:     yyssp -= yym;
                   1544:     yystate = *yyssp;
                   1545:     yyvsp -= yym;
                   1546:     yym = yylhs[yyn];
                   1547:     if (yystate == 0 && yym == 0)
                   1548:     {
                   1549: #if YYDEBUG
                   1550:         if (yydebug)
                   1551:             printf("%sdebug: after reduction, shifting from state 0 to\
                   1552:  state %d\n", YYPREFIX, YYFINAL);
                   1553: #endif
                   1554:         yystate = YYFINAL;
                   1555:         *++yyssp = YYFINAL;
                   1556:         *++yyvsp = yyval;
                   1557:         if (yychar < 0)
                   1558:         {
                   1559:             if ((yychar = yylex()) < 0) yychar = 0;
                   1560: #if YYDEBUG
                   1561:             if (yydebug)
                   1562:             {
                   1563:                 yys = 0;
                   1564:                 if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
                   1565:                 if (!yys) yys = "illegal-symbol";
                   1566:                 printf("%sdebug: state %d, reading %d (%s)\n",
                   1567:                         YYPREFIX, YYFINAL, yychar, yys);
                   1568:             }
                   1569: #endif
                   1570:         }
                   1571:         if (yychar == 0) goto yyaccept;
                   1572:         goto yyloop;
                   1573:     }
                   1574:     if ((yyn = yygindex[yym]) && (yyn += yystate) >= 0 &&
                   1575:             yyn <= YYTABLESIZE && yycheck[yyn] == yystate)
                   1576:         yystate = yytable[yyn];
                   1577:     else
                   1578:         yystate = yydgoto[yym];
                   1579: #if YYDEBUG
                   1580:     if (yydebug)
                   1581:         printf("%sdebug: after reduction, shifting from state %d \
                   1582: to state %d\n", YYPREFIX, *yyssp, yystate);
                   1583: #endif
                   1584:     if (yyssp >= yysslim && yygrowstack())
                   1585:     {
                   1586:         goto yyoverflow;
                   1587:     }
                   1588:     *++yyssp = yystate;
                   1589:     *++yyvsp = yyval;
                   1590:     goto yyloop;
                   1591: yyoverflow:
                   1592:     yyerror("yacc stack overflow");
                   1593: yyabort:
                   1594:     return (1);
                   1595: yyaccept:
                   1596:     return (0);
                   1597: }

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>