Skip to content
Snippets Groups Projects
Gmsh.tab.cpp 154 KiB
Newer Older
Christophe Geuzaine's avatar
Christophe Geuzaine committed
 by  GNU Bison version 1.25
  */

#define YYBISON 1  /* Identify Bison output.  */

Christophe Geuzaine's avatar
Christophe Geuzaine committed
#define	tDOUBLE	258
#define	tSTRING	259
#define	tBIGSTR	260
#define	tEND	261
#define	tAFFECT	262
#define	tDOTS	263
#define	tPi	264
#define	tExp	265
#define	tLog	266
#define	tLog10	267
#define	tSqrt	268
#define	tSin	269
#define	tAsin	270
#define	tCos	271
#define	tAcos	272
#define	tTan	273
#define	tAtan	274
#define	tAtan2	275
#define	tSinh	276
#define	tCosh	277
#define	tTanh	278
#define	tFabs	279
#define	tFloor	280
#define	tCeil	281
#define	tFmod	282
#define	tModulo	283
#define	tHypot	284
#define	tPoint	285
#define	tCircle	286
#define	tEllipsis	287
#define	tLine	288
#define	tSurface	289
#define	tSpline	290
#define	tVolume	291
#define	tCharacteristic	292
#define	tLength	293
#define	tParametric	294
#define	tElliptic	295
#define	tPlane	296
#define	tRuled	297
#define	tTransfinite	298
#define	tComplex	299
#define	tPhysical	300
#define	tUsing	301
#define	tPower	302
#define	tBump	303
#define	tProgression	304
#define	tAssociation	305
#define	tRotate	306
#define	tTranslate	307
#define	tSymmetry	308
#define	tDilate	309
#define	tExtrude	310
#define	tDuplicata	311
#define	tLoop	312
#define	tInclude	313
#define	tRecombine	314
#define	tDelete	315
#define	tCoherence	316
#define	tView	317
#define	tOffset	318
#define	tAttractor	319
#define	tLayers	320
#define	tScalarTetrahedron	321
#define	tVectorTetrahedron	322
#define	tTensorTetrahedron	323
#define	tScalarTriangle	324
#define	tVectorTriangle	325
#define	tTensorTriangle	326
#define	tScalarLine	327
#define	tVectorLine	328
#define	tTensorLine	329
#define	tScalarPoint	330
#define	tVectorPoint	331
#define	tTensorPoint	332
#define	tBSpline	333
#define	tNurbs	334
#define	tOrder	335
#define	tWith	336
#define	tBounds	337
#define	tKnots	338
#define	tColor	339
#define	tOptions	340
#define	tGeneral	341
#define	tGeometry	342
#define	tMesh	343
#define	tPostProcessing	344
#define	tPrint	345
#define	tB_SPLINE_SURFACE_WITH_KNOTS	346
#define	tB_SPLINE_CURVE_WITH_KNOTS	347
#define	tCARTESIAN_POINT	348
#define	tTRUE	349
#define	tFALSE	350
#define	tUNSPECIFIED	351
#define	tU	352
#define	tV	353
#define	tEDGE_CURVE	354
#define	tVERTEX_POINT	355
#define	tORIENTED_EDGE	356
#define	tPLANE	357
#define	tFACE_OUTER_BOUND	358
#define	tEDGE_LOOP	359
#define	tADVANCED_FACE	360
#define	tVECTOR	361
#define	tDIRECTION	362
#define	tAXIS2_PLACEMENT_3D	363
#define	tISO	364
#define	tENDISO	365
#define	tENDSEC	366
#define	tDATA	367
#define	tHEADER	368
#define	tFILE_DESCRIPTION	369
#define	tFILE_SCHEMA	370
#define	tFILE_NAME	371
#define	tMANIFOLD_SOLID_BREP	372
#define	tCLOSED_SHELL	373
#define	tADVANCED_BREP_SHAPE_REPRESENTATION	374
#define	tFACE_BOUND	375
#define	tCYLINDRICAL_SURFACE	376
#define	tCONICAL_SURFACE	377
#define	tCIRCLE	378
#define	tTRIMMED_CURVE	379
#define	tGEOMETRIC_SET	380
#define	tCOMPOSITE_CURVE_SEGMENT	381
#define	tCONTINUOUS	382
#define	tCOMPOSITE_CURVE	383
#define	tTOROIDAL_SURFACE	384
#define	tPRODUCT_DEFINITION	385
#define	tPRODUCT_DEFINITION_SHAPE	386
#define	tSHAPE_DEFINITION_REPRESENTATION	387
#define	tELLIPSE	388
#define	tTrimmed	389
#define	tSolid	390
#define	tEndSolid	391
#define	tVertex	392
#define	tFacet	393
#define	tNormal	394
#define	tOuter	395
#define	tLoopSTL	396
#define	tEndLoop	397
#define	tEndFacet	398
#define	UMINUS	399
Christophe Geuzaine's avatar
Christophe Geuzaine committed
 /* $Id: Gmsh.tab.cpp,v 1.14 2000-12-05 15:23:57 geuzaine Exp $ */

#include <stdarg.h>

#include "Gmsh.h"
#include "Const.h"
#include "Context.h"
#include "Geo.h"
#include "CAD.h"
#include "DataBase.h"
#include "Mesh.h"
#include "Create.h"
#include "Views.h"
#include "StepGeomDatabase.h"
Christophe Geuzaine's avatar
Christophe Geuzaine committed
#include "Options.h"
#ifdef __DECCXX // bug in bison
Christophe Geuzaine's avatar
Christophe Geuzaine committed
#include <alloca.h>
#endif

int            Force_ViewNumber = 0 ;

extern Mesh     *THEM;
extern Post_View *ActualView;
extern char      ThePathForIncludes[NAME_STR_L];

static FILE          *yyinTab[MAX_OPEN_FILES];
static int            yylinenoTab[MAX_OPEN_FILES];
static char           yynameTab[MAX_OPEN_FILES][NAME_STR_L];
static char           tmpstring[NAME_STR_L];
static Symbol         TheSymbol;
static Surface       *STL_Surf;
static Shape          TheShape;
static int            i,j,k,flag,RecursionLevel=0;
static double         d;
static ExtrudeParams  extr;
Christophe Geuzaine's avatar
Christophe Geuzaine committed
static StringXColor   *ColorField ;
static List_T         *ListOfDouble_L,*ListOfDouble2_L;
static List_T         *ListOfListOfDouble_L;

void  yyerror (char *s);
void  vyyerror (char *fmt, ...);

Christophe Geuzaine's avatar
Christophe Geuzaine committed
#line 48 "Gmsh.y"
  int      i;
  double   d;
  double   v[5];
  Shape    s;
  List_T  *l;
} YYSTYPE;
#include <stdio.h>

#ifndef __cplusplus
#ifndef __STDC__
#define const
#endif
#endif



Christophe Geuzaine's avatar
Christophe Geuzaine committed
#define	YYFINAL		1402
Christophe Geuzaine's avatar
Christophe Geuzaine committed
#define	YYNTBASE	160
Christophe Geuzaine's avatar
Christophe Geuzaine committed
#define YYTRANSLATE(x) ((unsigned)(x) <= 399 ? yytranslate[x] : 251)

static const short yytranslate[] = {     0,
     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
     2,     2,     2,     2,     2,     2,   150,     2,     2,   153,
   155,   148,   146,   154,   147,     2,   149,     2,     2,     2,
     2,     2,     2,     2,     2,     2,     2,     2,     2,   144,
     2,   145,     2,     2,     2,     2,     2,     2,     2,     2,
     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
   158,     2,   159,   152,     2,     2,     2,     2,     2,     2,
     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
     2,     2,   156,     2,   157,     2,     2,     2,     2,     2,
     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
     2,     2,     2,     2,     2,     1,     2,     3,     4,     5,
     6,     7,     8,     9,    10,    11,    12,    13,    14,    15,
    16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
    26,    27,    28,    29,    30,    31,    32,    33,    34,    35,
    36,    37,    38,    39,    40,    41,    42,    43,    44,    45,
    46,    47,    48,    49,    50,    51,    52,    53,    54,    55,
    56,    57,    58,    59,    60,    61,    62,    63,    64,    65,
    66,    67,    68,    69,    70,    71,    72,    73,    74,    75,
    76,    77,    78,    79,    80,    81,    82,    83,    84,    85,
    86,    87,    88,    89,    90,    91,    92,    93,    94,    95,
    96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
   106,   107,   108,   109,   110,   111,   112,   113,   114,   115,
   116,   117,   118,   119,   120,   121,   122,   123,   124,   125,
   126,   127,   128,   129,   130,   131,   132,   133,   134,   135,
   136,   137,   138,   139,   140,   141,   142,   143,   151
};

#if YYDEBUG != 0
static const short yyprhs[] = {     0,
     0,     2,     4,     6,     8,    30,    32,    33,    36,    38,
    40,    42,    45,    48,    51,    54,    57,    60,    68,    74,
    92,   102,   126,   158,   174,   186,   198,   214,   224,   238,
   248,   260,   274,   284,   294,   306,   316,   328,   338,   350,
   364,   378,   390,   404,   422,   432,   444,   456,   470,   482,
   492,   493,   496,   498,   500,   502,   504,   506,   508,   510,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
   512,   514,   516,   521,   524,   531,   540,   541,   544,   547,
   550,   553,   556,   559,   562,   565,   568,   571,   574,   577,
   579,   583,   584,   598,   600,   604,   605,   619,   621,   625,
   626,   640,   642,   646,   647,   667,   669,   673,   674,   694,
   696,   700,   701,   721,   723,   727,   728,   754,   756,   760,
   761,   787,   789,   793,   794,   820,   822,   826,   827,   859,
   861,   865,   866,   898,   900,   904,   905,   937,   942,   950,
   959,   972,   979,   985,   993,  1001,  1014,  1022,  1032,  1050,
  1058,  1067,  1076,  1084,  1096,  1102,  1111,  1121,  1130,  1153,
  1174,  1183,  1192,  1198,  1207,  1215,  1224,  1230,  1242,  1248,
  1258,  1260,  1262,  1264,  1265,  1268,  1273,  1278,  1282,  1291,
  1304,  1313,  1326,  1335,  1348,  1360,  1376,  1378,  1381,  1391,
  1394,  1401,  1411,  1421,  1430,  1439,  1448,  1455,  1460,  1463,
  1464,  1467,  1472,  1477,  1482,  1487,  1492,  1493,  1496,  1501,
  1506,  1511,  1512,  1518,  1519,  1522,  1527,  1532,  1537,  1538,
  1544,  1545,  1548,  1553,  1558,  1563,  1564,  1570,  1571,  1574,
  1579,  1584,  1589,  1590,  1596,  1597,  1600,  1605,  1610,  1615,
  1616,  1622,  1623,  1626,  1631,  1640,  1645,  1655,  1663,  1665,
  1667,  1669,  1671,  1673,  1675,  1679,  1683,  1687,  1691,  1695,
  1699,  1702,  1705,  1710,  1715,  1720,  1725,  1730,  1735,  1740,
  1745,  1750,  1755,  1762,  1767,  1772,  1777,  1782,  1787,  1792,
  1799,  1806,  1813,  1815,  1817,  1819,  1823,  1830,  1842,  1852,
  1860,  1868,  1869,  1873,  1875,  1879,  1880,  1884,  1888,  1890,
  1894,  1895,  1897,  1901,  1903,  1905,  1909
Christophe Geuzaine's avatar
Christophe Geuzaine committed
static const short yyrhs[] = {   162,
     0,   161,     0,   167,     0,   135,     0,   138,   139,   241,
   241,   241,   140,   141,   137,   241,   241,   241,   137,   241,
   241,   241,   137,   241,   241,   241,   142,   143,     0,   136,
     0,     0,   162,   163,     0,   164,     0,   166,     0,   165,
     0,     1,     6,     0,   109,     6,     0,   110,     6,     0,
   112,     6,     0,   111,     6,     0,   113,     6,     0,   114,
   153,   245,   154,     5,   155,     6,     0,   115,   153,   245,
   155,     6,     0,   116,   153,     5,   154,     5,   154,   245,
   154,   245,   154,     5,   154,     5,   154,     5,   155,     6,
     0,     3,     7,    93,   153,     5,   154,   244,   155,     6,
     0,     3,     7,    92,   153,     5,   154,   241,   154,   249,
   154,   240,   154,   240,   154,   240,   154,   249,   154,   249,
   154,   240,   155,     6,     0,     3,     7,    91,   153,     5,
   154,   241,   154,   241,   154,   247,   154,   240,   154,   240,
   154,   240,   154,   240,   154,   249,   154,   249,   154,   249,
   154,   249,   154,   240,   155,     6,     0,     3,     7,    99,
   153,     5,   154,     3,   154,     3,   154,     3,   154,   240,
   155,     6,     0,     3,     7,   103,   153,     5,   154,     3,
   154,   240,   155,     6,     0,     3,     7,   120,   153,     5,
   154,     3,   154,   240,   155,     6,     0,     3,     7,   101,
   153,     5,   154,   148,   154,   148,   154,   241,   154,   240,
   155,     6,     0,     3,     7,   104,   153,     5,   154,   249,
   155,     6,     0,     3,     7,   105,   153,     5,   154,   249,
   154,     3,   154,   240,   155,     6,     0,     3,     7,   100,
   153,     5,   154,     3,   155,     6,     0,     3,     7,   106,
   153,     5,   154,     3,   154,   241,   155,     6,     0,     3,
     7,   108,   153,     5,   154,     3,   154,     3,   154,     3,
   155,     6,     0,     3,     7,   107,   153,     5,   154,   244,
   155,     6,     0,     3,     7,   102,   153,     5,   154,     3,
   155,     6,     0,     3,     7,    33,   153,     5,   154,     3,
   154,     3,   155,     6,     0,     3,     7,   118,   153,     5,
   154,   249,   155,     6,     0,     3,     7,   119,   153,     5,
   154,   249,   154,     3,   155,     6,     0,     3,     7,   117,
   153,     5,   154,     3,   155,     6,     0,     3,     7,   121,
   153,     5,   154,     3,   154,   241,   155,     6,     0,     3,
     7,   122,   153,     5,   154,     3,   154,   241,   154,   241,
   155,     6,     0,     3,     7,   129,   153,     5,   154,     3,
   154,   241,   154,   241,   155,     6,     0,     3,     7,   123,
   153,     5,   154,     3,   154,   241,   155,     6,     0,     3,
     7,   133,   153,     5,   154,     3,   154,   241,   154,   241,
   155,     6,     0,     3,     7,   124,   153,     5,   154,     3,
   154,   249,   154,   249,   154,   240,   154,   240,   155,     6,
     0,     3,     7,   125,   153,     5,   154,   249,   155,     6,
     0,     3,     7,   126,   153,   127,   154,   240,   154,     3,
   155,     6,     0,     3,     7,   128,   153,     5,   154,   249,
   154,   240,   155,     6,     0,     3,     7,   130,   153,     5,
   154,     5,   154,     3,   154,     3,   155,     6,     0,     3,
     7,   131,   153,     5,   154,     5,   154,     3,   155,     6,
     0,     3,     7,   132,   153,     3,   154,     3,   155,     6,
     0,     0,   167,   168,     0,   169,     0,   207,     0,   208,
     0,   209,     0,   212,     0,   213,     0,   215,     0,   218,
     0,   219,     0,   214,     0,    85,   156,   220,   157,     0,
     1,     6,     0,    62,     5,   156,   170,   157,     6,     0,
    62,     5,    63,   244,   156,   170,   157,     6,     0,     0,
   170,   172,     0,   170,   175,     0,   170,   178,     0,   170,
   181,     0,   170,   184,     0,   170,   187,     0,   170,   190,
     0,   170,   193,     0,   170,   196,     0,   170,   199,     0,
   170,   202,     0,   170,   205,     0,   241,     0,   171,   154,
   241,     0,     0,    75,   153,   241,   154,   241,   154,   241,
   155,   173,   156,   171,   157,     6,     0,   241,     0,   174,
   154,   241,     0,     0,    76,   153,   241,   154,   241,   154,
   241,   155,   176,   156,   174,   157,     6,     0,   241,     0,
   177,   154,   241,     0,     0,    77,   153,   241,   154,   241,
   154,   241,   155,   179,   156,   177,   157,     6,     0,   241,
     0,   180,   154,   241,     0,     0,    72,   153,   241,   154,
   241,   154,   241,   154,   241,   154,   241,   154,   241,   155,
   182,   156,   180,   157,     6,     0,   241,     0,   183,   154,
   241,     0,     0,    73,   153,   241,   154,   241,   154,   241,
   154,   241,   154,   241,   154,   241,   155,   185,   156,   183,
   157,     6,     0,   241,     0,   186,   154,   241,     0,     0,
    74,   153,   241,   154,   241,   154,   241,   154,   241,   154,
   241,   154,   241,   155,   188,   156,   186,   157,     6,     0,
   241,     0,   189,   154,   241,     0,     0,    69,   153,   241,
   154,   241,   154,   241,   154,   241,   154,   241,   154,   241,
   154,   241,   154,   241,   154,   241,   155,   191,   156,   189,
   157,     6,     0,   241,     0,   192,   154,   241,     0,     0,
    70,   153,   241,   154,   241,   154,   241,   154,   241,   154,
   241,   154,   241,   154,   241,   154,   241,   154,   241,   155,
   194,   156,   192,   157,     6,     0,   241,     0,   195,   154,
   241,     0,     0,    71,   153,   241,   154,   241,   154,   241,
   154,   241,   154,   241,   154,   241,   154,   241,   154,   241,
   154,   241,   155,   197,   156,   195,   157,     6,     0,   241,
     0,   198,   154,   241,     0,     0,    66,   153,   241,   154,
   241,   154,   241,   154,   241,   154,   241,   154,   241,   154,
   241,   154,   241,   154,   241,   154,   241,   154,   241,   154,
   241,   155,   200,   156,   198,   157,     6,     0,   241,     0,
   201,   154,   241,     0,     0,    67,   153,   241,   154,   241,
   154,   241,   154,   241,   154,   241,   154,   241,   154,   241,
   154,   241,   154,   241,   154,   241,   154,   241,   154,   241,
   155,   203,   156,   201,   157,     6,     0,   241,     0,   204,
   154,   241,     0,     0,    68,   153,   241,   154,   241,   154,
   241,   154,   241,   154,   241,   154,   241,   154,   241,   154,
   241,   154,   241,   154,   241,   154,   241,   154,   241,   155,
   206,   156,   204,   157,     6,     0,     4,     7,   241,     6,
     0,    30,   153,   241,   155,     7,   244,     6,     0,    45,
    30,   153,   241,   155,     7,   249,     6,     0,    64,    30,
   249,     7,   153,   241,   154,   241,   154,   241,   155,     6,
     0,    37,    38,   249,     7,   241,     6,     0,    30,   156,
   241,   157,     6,     0,    33,   153,   241,   155,     7,   249,
     6,     0,    35,   153,   241,   155,     7,   249,     6,     0,
    64,    33,   249,     7,   156,   241,   154,   241,   154,   241,
   157,     6,     0,    31,   153,   241,   155,     7,   249,     6,
     0,    31,   153,   241,   155,     7,   249,    41,   244,     6,
     0,    39,   153,   241,   155,     7,   156,   241,   154,   241,
   154,     5,   154,     5,   154,     5,   157,     6,     0,    32,
   153,   241,   155,     7,   249,     6,     0,    45,    33,   153,
   241,   155,     7,   249,     6,     0,    33,    57,   153,   241,
   155,     7,   249,     6,     0,    78,   153,   241,   155,     7,
   249,     6,     0,    79,   153,   241,   155,     7,   249,    83,
   249,    80,   241,     6,     0,    33,   156,   241,   157,     6,
     0,    41,    34,   153,   241,   155,     7,   249,     6,     0,
   134,    34,   153,   241,   155,     7,   241,   249,     6,     0,
    42,    34,   153,   241,   155,     7,   249,     6,     0,    79,
    34,    81,    82,   153,   241,   155,     7,   247,    83,   156,
   249,   154,   249,   157,    80,   156,   241,   154,   241,   157,
     6,     0,    79,    34,   153,   241,   155,     7,   247,    83,
   156,   249,   154,   249,   157,    80,   156,   241,   154,   241,
   157,     6,     0,    45,    34,   153,   241,   155,     7,   249,
     6,     0,    34,    57,   153,   241,   155,     7,   249,     6,
     0,    34,   156,   241,   157,     6,     0,    44,    36,   153,
   241,   155,     7,   249,     6,     0,    36,   153,   241,   155,
     7,   249,     6,     0,    45,    36,   153,   241,   155,     7,
   249,     6,     0,    52,   244,   156,   210,   157,     0,    51,
   156,   244,   154,   244,   154,   241,   157,   156,   210,   157,
     0,    53,   244,   156,   210,   157,     0,    54,   156,   244,
   154,   241,   157,   156,   210,   157,     0,   212,     0,   211,
     0,   209,     0,     0,   211,   208,     0,    56,   156,   211,
   157,     0,    60,   156,   211,   157,     0,    58,     5,     6,
     0,    55,    30,   156,   241,   154,   244,   157,     6,     0,
    55,    30,   156,   241,   154,   244,   154,   244,   154,   241,
   157,     6,     0,    55,    33,   156,   241,   154,   244,   157,
     6,     0,    55,    33,   156,   241,   154,   244,   154,   244,
   154,   241,   157,     6,     0,    55,    34,   156,   241,   154,
   244,   157,     6,     0,    55,    34,   156,   241,   154,   244,
   154,   244,   154,   241,   157,     6,     0,    55,    34,   156,
   241,   154,   244,   157,   156,   216,   157,     6,     0,    55,
    34,   156,   241,   154,   244,   154,   244,   154,   241,   157,
   156,   216,   157,     6,     0,   217,     0,   216,   217,     0,
    65,   156,   249,   154,   249,   154,   249,   157,     6,     0,
    59,     6,     0,    43,    33,   249,     7,   241,     6,     0,
    43,    33,   249,     7,   241,    46,    49,   241,     6,     0,
    43,    33,   249,     7,   241,    46,    48,   241,     6,     0,
    43,    34,   156,   241,   157,     7,   249,     6,     0,    40,
    34,   156,   241,   157,     7,   249,     6,     0,    43,    36,
   156,   241,   157,     7,   249,     6,     0,    59,    34,   249,
     7,   241,     6,     0,    59,    34,   249,     6,     0,    61,
     6,     0,     0,   220,   221,     0,    86,   156,   222,   157,
     0,    87,   156,   225,   157,     0,    88,   156,   228,   157,
     0,    89,   156,   231,   157,     0,    90,   156,   234,   157,
     0,     0,   222,   223,     0,     4,     7,     5,     6,     0,
     4,     7,   241,     6,     0,     4,     7,   244,     6,     0,
     0,    84,   224,   156,   237,   157,     0,     0,   225,   226,
     0,     4,     7,     5,     6,     0,     4,     7,   241,     6,
     0,     4,     7,   244,     6,     0,     0,    84,   227,   156,
   237,   157,     0,     0,   228,   229,     0,     4,     7,     5,
     6,     0,     4,     7,   241,     6,     0,     4,     7,   244,
     6,     0,     0,    84,   230,   156,   237,   157,     0,     0,
   231,   232,     0,     4,     7,     5,     6,     0,     4,     7,
   241,     6,     0,     4,     7,   244,     6,     0,     0,    84,
   233,   156,   237,   157,     0,     0,   234,   235,     0,     4,
     7,     5,     6,     0,     4,     7,   241,     6,     0,     4,
     7,   244,     6,     0,     0,    84,   236,   156,   237,   157,
     0,     0,   238,   237,     0,     4,     7,     4,     6,     0,
     4,     7,   156,     4,   154,   241,   157,     6,     0,     4,
     7,   239,     6,     0,   156,   241,   154,   241,   154,   241,
   154,   241,   157,     0,   156,   241,   154,   241,   154,   241,
   157,     0,    94,     0,    95,     0,    96,     0,    97,     0,
    98,     0,   242,     0,   153,   241,   155,     0,   241,   147,
   241,     0,   241,   146,   241,     0,   241,   148,   241,     0,
   241,   149,   241,     0,   241,   152,   241,     0,   147,   241,
     0,   146,   241,     0,    10,   153,   241,   155,     0,    11,
   153,   241,   155,     0,    12,   153,   241,   155,     0,    13,
   153,   241,   155,     0,    14,   153,   241,   155,     0,    15,
   153,   241,   155,     0,    16,   153,   241,   155,     0,    17,
   153,   241,   155,     0,    18,   153,   241,   155,     0,    19,
   153,   241,   155,     0,    20,   153,   241,   154,   241,   155,
     0,    21,   153,   241,   155,     0,    22,   153,   241,   155,
     0,    23,   153,   241,   155,     0,    24,   153,   241,   155,
     0,    25,   153,   241,   155,     0,    26,   153,   241,   155,
     0,    27,   153,   241,   154,   241,   155,     0,    28,   153,
   241,   154,   241,   155,     0,    29,   153,   241,   154,   241,
   155,     0,     3,     0,     9,     0,     4,     0,   241,     8,
   241,     0,   241,     8,   158,   241,   159,   241,     0,   156,
   241,   154,   241,   154,   241,   154,   241,   154,   241,   157,
     0,   156,   241,   154,   241,   154,   241,   154,   241,   157,
     0,   156,   241,   154,   241,   154,   241,   157,     0,   153,
   241,   154,   241,   154,   241,   155,     0,     0,   153,   246,
   155,     0,     5,     0,   246,   154,     5,     0,     0,   156,
   248,   157,     0,   153,   248,   155,     0,   249,     0,   248,
   154,   249,     0,     0,   241,     0,   156,   250,   157,     0,
   241,     0,   243,     0,   250,   154,   241,     0,   250,   154,
   243,     0
};

#endif

#if YYDEBUG != 0
static const short yyrline[] = { 0,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
   110,   112,   113,   120,   128,   142,   154,   156,   159,   161,
   162,   163,   166,   172,   177,   178,   179,   182,   186,   189,
   195,   200,   206,   214,   219,   223,   229,   234,   238,   243,
   247,   250,   255,   259,   263,   267,   272,   276,   279,   283,
   287,   291,   295,   299,   303,   306,   310,   313,   317,   320,
   329,   331,   337,   339,   340,   341,   342,   343,   344,   345,
   346,   347,   348,   349,   356,   361,   367,   372,   373,   374,
   375,   376,   377,   378,   379,   380,   381,   382,   383,   386,
   389,   393,   399,   405,   408,   412,   418,   424,   427,   431,
   437,   443,   446,   450,   458,   464,   467,   471,   479,   485,
   488,   492,   500,   506,   509,   513,   525,   531,   534,   538,
   550,   556,   559,   563,   575,   581,   584,   588,   601,   607,
   610,   614,   627,   633,   636,   640,   653,   665,   679,   690,
   696,   715,   726,   734,   740,   746,   765,   771,   787,   794,
   800,   806,   812,   818,   837,   849,   855,   874,   895,   903,
   909,   915,   921,   933,   939,   945,   957,   963,   968,   973,
   980,   982,   983,   986,   991,  1002,  1020,  1035,  1066,  1072,
  1078,  1082,  1086,  1090,  1094,  1099,  1106,  1110,  1115,  1133,
  1143,  1161,  1178,  1195,  1216,  1236,  1256,  1273,  1297,  1308,
  1310,  1313,  1315,  1316,  1317,  1318,  1321,  1323,  1326,  1332,
  1337,  1341,  1343,  1346,  1348,  1351,  1357,  1362,  1367,  1369,
  1372,  1374,  1377,  1383,  1388,  1393,  1395,  1398,  1400,  1403,
  1409,  1414,  1419,  1421,  1424,  1426,  1429,  1435,  1440,  1445,
  1447,  1450,  1452,  1455,  1463,  1470,  1478,  1486,  1500,  1502,
  1503,  1504,  1505,  1508,  1510,  1511,  1512,  1513,  1514,  1515,
  1516,  1517,  1518,  1519,  1520,  1521,  1522,  1523,  1524,  1525,
  1526,  1527,  1528,  1529,  1530,  1531,  1532,  1533,  1534,  1535,
  1536,  1537,  1540,  1542,  1543,  1554,  1561,  1574,  1583,  1591,
  1599,  1609,  1613,  1618,  1622,  1627,  1631,  1635,  1641,  1647,
  1653,  1657,  1663,  1676,  1682,  1691,  1695
};
#endif


#if YYDEBUG != 0 || defined (YYERROR_VERBOSE)

static const char * const yytname[] = {   "$","error","$undefined.","tDOUBLE",
"tSTRING","tBIGSTR","tEND","tAFFECT","tDOTS","tPi","tExp","tLog","tLog10","tSqrt",
"tSin","tAsin","tCos","tAcos","tTan","tAtan","tAtan2","tSinh","tCosh","tTanh",
"tFabs","tFloor","tCeil","tFmod","tModulo","tHypot","tPoint","tCircle","tEllipsis",
"tLine","tSurface","tSpline","tVolume","tCharacteristic","tLength","tParametric",
"tElliptic","tPlane","tRuled","tTransfinite","tComplex","tPhysical","tUsing",
Christophe Geuzaine's avatar
Christophe Geuzaine committed
"tPower","tBump","tProgression","tAssociation","tRotate","tTranslate","tSymmetry",
"tDilate","tExtrude","tDuplicata","tLoop","tInclude","tRecombine","tDelete",
"tCoherence","tView","tOffset","tAttractor","tLayers","tScalarTetrahedron","tVectorTetrahedron",
"tTensorTetrahedron","tScalarTriangle","tVectorTriangle","tTensorTriangle","tScalarLine",
"tVectorLine","tTensorLine","tScalarPoint","tVectorPoint","tTensorPoint","tBSpline",
Christophe Geuzaine's avatar
Christophe Geuzaine committed
"tNurbs","tOrder","tWith","tBounds","tKnots","tColor","tOptions","tGeneral",
"tGeometry","tMesh","tPostProcessing","tPrint","tB_SPLINE_SURFACE_WITH_KNOTS",
"tB_SPLINE_CURVE_WITH_KNOTS","tCARTESIAN_POINT","tTRUE","tFALSE","tUNSPECIFIED",
"tU","tV","tEDGE_CURVE","tVERTEX_POINT","tORIENTED_EDGE","tPLANE","tFACE_OUTER_BOUND",
"tEDGE_LOOP","tADVANCED_FACE","tVECTOR","tDIRECTION","tAXIS2_PLACEMENT_3D","tISO",
"tENDISO","tENDSEC","tDATA","tHEADER","tFILE_DESCRIPTION","tFILE_SCHEMA","tFILE_NAME",
"tMANIFOLD_SOLID_BREP","tCLOSED_SHELL","tADVANCED_BREP_SHAPE_REPRESENTATION",
"tFACE_BOUND","tCYLINDRICAL_SURFACE","tCONICAL_SURFACE","tCIRCLE","tTRIMMED_CURVE",
"tGEOMETRIC_SET","tCOMPOSITE_CURVE_SEGMENT","tCONTINUOUS","tCOMPOSITE_CURVE",
"tTOROIDAL_SURFACE","tPRODUCT_DEFINITION","tPRODUCT_DEFINITION_SHAPE","tSHAPE_DEFINITION_REPRESENTATION",
"tELLIPSE","tTrimmed","tSolid","tEndSolid","tVertex","tFacet","tNormal","tOuter",
"tLoopSTL","tEndLoop","tEndFacet","'<'","'>'","'+'","'-'","'*'","'/'","'%'",
"UMINUS","'^'","'('","','","')'","'{'","'}'","'['","']'","All","STLFormatItem",
"StepFormatItems","StepFormatItem","StepSpecial","StepHeaderItem","StepDataItem",
"GeomFormatList","GeomFormat","View","Views","ScalarPointValues","ScalarPoint",
"@1","VectorPointValues","VectorPoint","@2","TensorPointValues","TensorPoint",
"@3","ScalarLineValues","ScalarLine","@4","VectorLineValues","VectorLine","@5",
"TensorLineValues","TensorLine","@6","ScalarTriangleValues","ScalarTriangle",
"@7","VectorTriangleValues","VectorTriangle","@8","TensorTriangleValues","TensorTriangle",
"@9","ScalarTetrahedronValues","ScalarTetrahedron","@10","VectorTetrahedronValues",
"VectorTetrahedron","@11","TensorTetrahedronValues","TensorTetrahedron","@12",
"Affectation","Shape","Transform","MultipleShape","ListOfShapes","Duplicata",
"Delete","Macro","Extrude","ExtrudeParameters","ExtrudeParameter","Transfini",
Christophe Geuzaine's avatar
Christophe Geuzaine committed
"Coherence","Options","Option","GeneralOptions","GeneralOption","@13","GeometryOptions",
"GeometryOption","@14","MeshOptions","MeshOption","@15","PostProcessingOptions",
"PostProcessingOption","@16","PrintOptions","PrintOption","@17","ColorAffects",
"ColorAffect","RGBAExpr","BoolExpr","FExpr","FExpr_Single","FExpr_Range","VExpr",
"ListOfStrings","RecursiveListOfStrings","ListOfListOfDouble","RecursiveListOfListOfDouble",
"ListOfDouble","RecursiveListOfDouble", NULL
Christophe Geuzaine's avatar
Christophe Geuzaine committed
   160,   160,   160,   161,   161,   161,   162,   162,   163,   163,
   163,   163,   164,   164,   164,   164,   164,   165,   165,   165,
   166,   166,   166,   166,   166,   166,   166,   166,   166,   166,
   166,   166,   166,   166,   166,   166,   166,   166,   166,   166,
   166,   166,   166,   166,   166,   166,   166,   166,   166,   166,
   167,   167,   168,   168,   168,   168,   168,   168,   168,   168,
   168,   168,   168,   168,   169,   169,   170,   170,   170,   170,
   170,   170,   170,   170,   170,   170,   170,   170,   170,   171,
   171,   173,   172,   174,   174,   176,   175,   177,   177,   179,
   178,   180,   180,   182,   181,   183,   183,   185,   184,   186,
   186,   188,   187,   189,   189,   191,   190,   192,   192,   194,
   193,   195,   195,   197,   196,   198,   198,   200,   199,   201,
   201,   203,   202,   204,   204,   206,   205,   207,   208,   208,
   208,   208,   208,   208,   208,   208,   208,   208,   208,   208,
   208,   208,   208,   208,   208,   208,   208,   208,   208,   208,
   208,   208,   208,   208,   208,   208,   209,   209,   209,   209,
   210,   210,   210,   211,   211,   212,   213,   214,   215,   215,
   215,   215,   215,   215,   215,   215,   216,   216,   217,   217,
   218,   218,   218,   218,   218,   218,   218,   218,   219,   220,
   220,   221,   221,   221,   221,   221,   222,   222,   223,   223,
   223,   224,   223,   225,   225,   226,   226,   226,   227,   226,
   228,   228,   229,   229,   229,   230,   229,   231,   231,   232,
   232,   232,   233,   232,   234,   234,   235,   235,   235,   236,
   235,   237,   237,   238,   238,   238,   239,   239,   240,   240,
   240,   240,   240,   241,   241,   241,   241,   241,   241,   241,
   241,   241,   241,   241,   241,   241,   241,   241,   241,   241,
   241,   241,   241,   241,   241,   241,   241,   241,   241,   241,
   241,   241,   242,   242,   242,   243,   243,   244,   244,   244,
   244,   245,   245,   246,   246,   247,   247,   247,   248,   248,
   249,   249,   249,   250,   250,   250,   250
};

static const short yyr2[] = {     0,
     1,     1,     1,     1,    21,     1,     0,     2,     1,     1,
     1,     2,     2,     2,     2,     2,     2,     7,     5,    17,
     9,    23,    31,    15,    11,    11,    15,     9,    13,     9,
    11,    13,     9,     9,    11,     9,    11,     9,    11,    13,
    13,    11,    13,    17,     9,    11,    11,    13,    11,     9,
     0,     2,     1,     1,     1,     1,     1,     1,     1,     1,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
     1,     1,     4,     2,     6,     8,     0,     2,     2,     2,
     2,     2,     2,     2,     2,     2,     2,     2,     2,     1,
     3,     0,    13,     1,     3,     0,    13,     1,     3,     0,
    13,     1,     3,     0,    19,     1,     3,     0,    19,     1,
     3,     0,    19,     1,     3,     0,    25,     1,     3,     0,
    25,     1,     3,     0,    25,     1,     3,     0,    31,     1,
     3,     0,    31,     1,     3,     0,    31,     4,     7,     8,
    12,     6,     5,     7,     7,    12,     7,     9,    17,     7,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
     8,     8,     7,    11,     5,     8,     9,     8,    22,    20,
     8,     8,     5,     8,     7,     8,     5,    11,     5,     9,
     1,     1,     1,     0,     2,     4,     4,     3,     8,    12,
     8,    12,     8,    12,    11,    15,     1,     2,     9,     2,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
     6,     9,     9,     8,     8,     8,     6,     4,     2,     0,
     2,     4,     4,     4,     4,     4,     0,     2,     4,     4,
     4,     0,     5,     0,     2,     4,     4,     4,     0,     5,
     0,     2,     4,     4,     4,     0,     5,     0,     2,     4,
     4,     4,     0,     5,     0,     2,     4,     4,     4,     0,
     5,     0,     2,     4,     8,     4,     9,     7,     1,     1,
     1,     1,     1,     1,     3,     3,     3,     3,     3,     3,
     2,     2,     4,     4,     4,     4,     4,     4,     4,     4,
     4,     4,     6,     4,     4,     4,     4,     4,     4,     6,
     6,     6,     1,     1,     1,     3,     6,    11,     9,     7,
     7,     0,     3,     1,     3,     0,     3,     3,     1,     3,
     0,     1,     3,     1,     1,     3,     3
     4,     6,     0,     2,     0,     0,     0,     0,     0,     0,
     0,     0,     0,     0,     0,     0,     0,     8,     9,    11,
    10,     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,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
     0,     0,     0,     0,    52,    53,    54,    55,    56,    57,
    58,    62,    59,    60,    61,   273,   275,   274,     0,     0,
     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
     0,     0,   244,    12,     0,    13,    14,    16,    15,    17,
   282,   282,     0,    64,     0,     0,     0,     0,     0,     0,
     0,     0,     0,     0,     0,     0,   291,     0,     0,     0,
     0,   291,     0,     0,     0,     0,     0,     0,     0,     0,
     0,     0,     0,     0,     0,     0,     0,     0,   164,     0,
   291,   164,   189,     0,   291,   291,     0,     0,     0,   190,
     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
     0,   252,   251,     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,     0,     0,     0,     0,     0,     0,     0,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
     0,     0,     0,     0,     0,     0,     0,   292,     0,     0,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
     0,     0,     0,     0,   164,   164,     0,     0,     0,     0,
     0,   168,     0,     0,     0,    67,     0,     0,     0,     0,
     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
     0,     0,     0,     0,     0,     0,   245,   247,   246,   248,
   249,   250,     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,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
     0,     0,     0,   284,     0,     0,     0,     0,   128,     0,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
   294,   295,     0,     0,     0,     0,     0,     0,     0,     0,
     0,     0,     0,     0,     0,     0,     0,     0,     0,   163,
     0,   162,   161,     0,     0,     0,     0,     0,   166,   165,
   188,     0,   167,     0,     0,     0,     0,     0,     0,     0,
     0,     0,     0,     0,     0,     0,    63,   191,     0,   253,
   254,   255,   256,   257,   258,   259,   260,   261,   262,     0,
   264,   265,   266,   267,   268,   269,     0,     0,     0,   247,
   246,     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,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
     0,     0,     0,   283,     0,    19,     0,     0,   133,   291,
   291,     0,   291,   145,     0,   153,   291,   291,     0,     0,
   293,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     0,     0,     0,     0,     0,     0,     0,   157,   159,     0,
     0,     0,     0,     0,    67,     0,     0,     0,     0,     0,
     0,     0,     0,     0,     0,     0,     0,     0,    68,    69,
    70,    71,    72,    73,    74,    75,    76,    77,    78,    79,
     0,     0,   291,     0,     0,   291,   197,   204,   211,   218,
   225,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     0,     0,     0,     0,     0,     0,   291,   291,     0,     0,
     0,     0,   291,   291,     0,     0,     0,     0,     0,   291,
     0,   291,     0,     0,     0,     0,     0,   285,     0,   282,
     0,     0,     0,   291,     0,   291,     0,     0,     0,   276,
   296,   297,   132,     0,   291,   291,   291,   181,     0,   291,
   291,   291,   291,   291,   291,   291,     0,     0,     0,     0,
     0,     0,     0,   187,     0,     0,     0,     0,     0,     0,
     0,     0,     0,     0,     0,     0,     0,    65,     0,     0,
     0,     0,   286,     0,     0,     0,     0,     0,     0,     0,
   263,   270,   271,   272,     0,     0,     0,     0,     0,     0,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
     0,     0,     0,     0,     0,     0,     0,     0,   239,   240,
   241,   242,   243,     0,     0,     0,     0,     0,     0,     0,
    18,     0,   129,   137,     0,   140,     0,   134,     0,   135,
   155,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     0,     0,     0,     0,     0,     0,     0,     0,   164,     0,
     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
David Colignon's avatar
David Colignon committed
     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
   143,     0,   291,   291,     0,   291,     0,   202,   192,   198,
     0,   209,   193,   205,     0,   216,   194,   212,     0,   223,
   195,   219,     0,   230,   196,   226,   291,     0,     0,     0,
   291,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     0,     0,     0,     0,     0,     0,     0,     0,     0,   291,
     0,     0,     0,     0,     0,     0,     0,     0,   282,     0,
   142,   152,     0,     0,   185,   146,   148,     0,     0,   184,
   186,   154,   130,   141,   151,   156,     0,   281,     0,   280,
     0,     0,   169,     0,   171,     0,   173,     0,    66,     0,
David Colignon's avatar
David Colignon committed
     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
     0,     0,     0,   286,     0,   289,     0,     0,     0,     0,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
     0,     0,     0,     0,    21,     0,    30,     0,    34,     0,
    28,     0,     0,    33,     0,    38,    36,     0,     0,     0,
     0,     0,     0,    45,     0,     0,     0,     0,     0,    50,
     0,     0,   138,   277,     0,   183,   182,   164,     0,   160,
     0,     0,     0,     0,     0,     0,   177,     0,     0,     0,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
     0,     0,   291,   288,   287,   291,     0,     0,     0,     0,
     0,   232,     0,     0,     0,   232,     0,     0,     0,   232,
     0,     0,     0,   232,     0,     0,     0,   232,   147,     0,
     0,   286,     0,     0,     0,     0,     0,     0,     0,     0,
     0,     0,     0,     0,   291,     0,     0,     0,     0,     0,
     0,     0,     0,     0,     0,   279,     0,     0,     0,   180,
   291,     0,   178,     0,     0,     0,     0,     0,     0,     0,
     0,     0,     0,     0,     0,     0,     0,     0,   290,     0,
     0,   199,     0,   200,   201,     0,     0,   232,   206,   207,
   208,     0,   213,   214,   215,     0,   220,   221,   222,     0,
   227,   228,   229,     0,     0,    35,     0,     0,     0,     0,
    25,     0,    31,     0,    37,    26,    39,     0,    42,     0,
    46,    47,     0,     0,    49,     0,     0,     0,   158,     0,
     0,     0,     0,     0,   175,     0,     0,     0,     0,     0,
     0,     0,     0,     0,     0,     0,     0,     0,     0,   291,
   291,   144,     0,   203,   233,   210,   217,   224,   231,     0,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
     0,     0,     0,   278,   170,   172,   174,     0,   291,     0,
     0,     0,     0,     0,     0,     0,     0,     0,    82,    86,
    90,   131,   136,     0,     0,     0,     0,     0,     0,     0,
     0,     0,     0,    29,    32,    40,     0,    41,    48,    43,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
     0,     0,     0,     0,     0,     0,   291,     0,   234,   275,
     0,   236,     0,     0,     0,     0,     0,     0,     0,     0,
     0,   291,     0,     0,     0,     0,     0,     0,     0,     0,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
     0,    24,    27,     0,     0,     0,   176,     0,     0,     0,
     0,     0,     0,     0,     0,     0,     0,     0,    80,     0,
    84,     0,    88,     0,     0,     0,     0,     0,     0,   291,
     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
     0,     0,     0,     0,     0,     0,    44,    20,   139,   179,
     0,     0,     0,     0,     0,     0,     0,     0,     0,    81,
    83,    85,    87,    89,    91,     0,     0,   235,     0,     0,
     0,   291,     0,     0,     0,     0,     0,     0,    94,    98,
   102,     0,     0,     0,   238,     0,     0,     0,     0,     0,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
     5,   291,     0,     0,     0,     0,     0,     0,     0,     0,
     0,     0,     0,   150,   237,     0,     0,     0,     0,     0,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
     0,     0,     0,     0,    92,     0,    96,     0,   100,     0,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
   291,     0,     0,     0,     0,     0,     0,     0,     0,     0,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
     0,     0,     0,     0,   149,     0,    22,     0,     0,     0,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
     0,     0,     0,    93,    95,    97,    99,   101,   103,   291,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
     0,     0,     0,   106,   110,   114,     0,     0,     0,     0,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
     0,     0,     0,   291,     0,     0,     0,     0,     0,     0,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
     0,     0,     0,     0,     0,   104,     0,   108,     0,   112,
David Colignon's avatar
David Colignon committed
     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
     0,     0,     0,     0,   105,   107,   109,   111,   113,   115,
     0,   118,   122,   126,    23,     0,     0,     0,     0,     0,
     0,     0,   116,     0,   120,     0,   124,     0,     0,     0,
     0,     0,     0,   117,   119,   121,   123,   125,   127,     0,
     0,     0
Christophe Geuzaine's avatar
Christophe Geuzaine committed
static const short yydefgoto[] = {  1400,
     4,     5,    18,    19,    20,    21,     6,    55,    56,   375,
  1168,   499,  1114,  1170,   500,  1115,  1172,   501,  1116,  1284,
   502,  1255,  1286,   503,  1256,  1288,   504,  1257,  1345,   505,
  1331,  1347,   506,  1332,  1349,   507,  1333,  1382,   508,  1376,
  1384,   509,  1377,  1386,   510,  1378,    57,   370,   360,   361,
   362,   363,    61,    62,    63,   876,   877,    64,    65,   263,
   388,   615,   720,   821,   616,   724,   823,   617,   728,   825,
   618,   732,   827,   619,   736,   829,   977,   978,  1088,   654,
   228,    93,   342,   133,   212,   325,   715,   815,   816,   343
Christophe Geuzaine's avatar
Christophe Geuzaine committed
static const short yypact[] = {   436,
-32768,-32768,  -129,-32768,   445,  1582,   663,    31,    32,    64,
    66,    80,   106,   115,  -128,  -108,   -26,-32768,-32768,-32768,
-32768,   137,   158,  -110,    -9,    27,   -36,   -46,    28,    35,
   154,    59,   141,   160,   172,   217,   181,     2,    63,   -77,
   -77,    67,    41,    71,   213,   205,    82,   238,   250,   167,
   103,   -30,   108,   237,-32768,-32768,-32768,-32768,-32768,-32768,
-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,   124,   150,
   166,   174,   194,   195,   220,   246,   254,   255,   261,   262,
   273,   279,   280,   285,   289,   296,   316,   329,   663,   663,
   663,  1458,-32768,-32768,  1606,-32768,-32768,-32768,-32768,-32768,
   330,   330,   306,-32768,   663,   663,   663,   663,   663,   348,
   663,   663,   349,   663,   663,   663,  1428,   663,   178,   358,
   363,  1428,   201,   210,   364,   367,   368,   375,   376,   -77,
   663,   663,   227,   234,   -77,   265,   336,   377,-32768,   525,
  1428,-32768,-32768,   -34,  1428,  1428,   663,   -75,   663,-32768,
   387,   663,   663,   663,   663,   663,   663,   663,   663,   663,
   663,   663,   663,   663,   663,   663,   663,   663,   663,   663,
   663,   389,   389,   659,   663,   663,   663,   663,   663,  1458,
   400,   410,   411,   413,   415,   416,   417,   420,   422,   423,
   424,   425,   426,   430,   432,   433,   434,   448,   449,   455,
   459,   462,   463,   464,   469,   471,   493,   498,   499,   503,
   579,   456,   504,   506,    62,  1171,   351,  1267,  1278,   663,
  1342,   501,   663,   564,  1352,  1362,   663,   222,   656,  1373,
   663,   663,   663,   657,   663,   663,   663,   663,   663,   663,
   663,   511,   390,  2044,    83,    83,   540,   663,   663,   663,
   431,-32768,    24,  1015,   -77,-32768,   689,   698,  1385,   625,
   663,  1395,    42,   663,  1405,  1415,  1441,  1501,  1516,  1526,
  1536,  1594,  1604,  1614,  2053,  1624,  1634,  1644,  1654,  1664,
  1674,  2062,  2071,  2080,   663,   663,-32768,    53,   164,   389,
   389,   389,   366,   703,   709,   710,   713,   714,   717,   722,
   723,   725,   727,   730,   731,   732,   733,   734,   735,   739,
   740,   741,   744,   748,   750,   753,   632,   755,   759,   760,
   766,   770,   769,-32768,  -138,   771,   772,   778,-32768,   768,
   785,   805,   811,  1684,   813,   786,  1694,   816,   819,   823,
   207,-32768,   119,   663,   828,   577,  1704,  1714,   663,   775,
   814,  1724,  1734,  1744,  1754,  1764,   -77,   663,   663,-32768,
   620,  1168,-32768,   671,   663,  2089,  2098,  2107,-32768,-32768,
-32768,   663,-32768,   680,   802,   684,   704,   852,   708,  1774,
   855,   707,   711,   724,   726,   729,-32768,-32768,  1784,-32768,
-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,   663,
-32768,-32768,-32768,-32768,-32768,-32768,   663,   663,   663,    55,
    55,   745,   737,   761,   762,   763,   765,   774,   776,   779,
   781,   782,   783,   788,   789,   790,   792,   818,   820,   825,
   826,   827,   830,   832,   833,   835,   836,   837,   842,   843,
   845,   850,   876,-32768,   784,-32768,   851,   -77,-32768,  1428,
  1428,   907,  1428,-32768,   918,-32768,  1428,  1428,    38,   663,
-32768,   100,   773,   933,   958,   970,   176,   976,  1020,  1021,
  1022,  1025,  1031,  1034,   888,  2116,  2125,-32768,-32768,   821,
   -77,   -77,   -77,   113,-32768,   900,   902,   905,   908,   909,
   923,   924,   928,   935,   936,   939,   943,  1085,-32768,-32768,
David Colignon's avatar
David Colignon committed
-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
   663,   663,  1428,   663,  1094,  1428,-32768,-32768,-32768,-32768,
-32768,  1096,  1794,  1804,  1814,  1824,   965,  1122,   663,   663,
   -77,  1135,  1149,  1006,  1154,  1159,  1428,  1428,  1160,   -77,
  1162,  1163,  1428,  1428,  1164,  1167,  1170,  1172,  1173,  1428,
   300,  1428,  1174,  1169,  1183,  1187,  1189,-32768,  1188,   330,
  1200,    -1,  1202,  1428,  1216,  1428,  1217,  1218,   663,   222,
   207,-32768,-32768,   663,  1428,  1428,  1428,-32768,    39,  1428,
  1428,  1428,  1428,  1428,  1428,  1428,   663,   663,   663,  1037,
   148,   161,   163,-32768,  1208,   663,   663,   663,   663,   663,
   663,   663,   663,   663,   663,   663,   663,-32768,  2134,  2143,
  1219,  1834,    84,  1112,     9,    10,    19,    29,    30,   663,
-32768,-32768,-32768,-32768,   663,  1060,  2152,  2161,  1078,  1080,
  1081,  1084,  1088,  1086,  1097,  1099,  1100,  1101,  1113,  1111,
  1114,  1116,  1117,  1118,  1139,  1141,  1147,  1156,-32768,-32768,
-32768,-32768,-32768,  1155,  1180,  1181,  1197,  1203,  1182,  1204,
-32768,  1213,-32768,-32768,   -77,-32768,  1229,-32768,  1233,-32768,
-32768,   282,  2170,  1243,  1244,  1249,   663,   663,  1262,  1316,
  1318,  1319,  1321,  1336,  1337,   846,  1844,   378,    83,   -77,
  1363,   -77,  1364,   -77,    21,  1369,  2179,  2188,  2197,  2206,
  2215,  2224,  2233,  2242,  2251,  2260,  2269,  2278,   663,   663,
-32768,  1361,  1428,  1428,  1293,  1428,  1370,-32768,-32768,-32768,
  1371,-32768,-32768,-32768,  1372,-32768,-32768,-32768,  1375,-32768,
-32768,-32768,  1382,-32768,-32768,-32768,   271,  1458,  1377,   663,
  1428,  1384,  1388,  1411,  1270,  1414,   300,  1417,  1418,   663,
  1422,  1426,  1429,  1452,  1431,   300,   663,   663,   663,  1428,
  1453,  1457,   300,   663,  1460,  1461,  1459,   663,   330,  1486,
-32768,-32768,   663,   663,-32768,-32768,-32768,   120,   183,-32768,
-32768,-32768,-32768,-32768,-32768,-32768,  1340,-32768,   663,-32768,
  1345,  1339,-32768,  1349,-32768,  1351,-32768,   -50,-32768,   663,
   663,   663,   663,   663,   663,   663,   663,   663,   663,   663,
   663,  2287,  2296,    84,   -58,-32768,   179,  1350,  1432,   616,
  1357,   829,  1359,   884,  1360,   997,  1367,  1383,  1379,  1512,
  1458,  1390,  2305,  1392,-32768,  1394,-32768,  1401,-32768,  1403,
-32768,  1402,  1854,-32768,  1412,-32768,-32768,  1404,  1410,  1864,
  2314,  1874,  1419,-32768,  1413,  1416,  2323,  1423,  1421,-32768,
  2332,  1424,-32768,   222,  2341,-32768,-32768,    83,   457,-32768,
   663,   663,   663,  1520,  1393,   -41,-32768,  2350,  2359,  2368,
  2377,  2386,  2395,  2404,  2413,  2422,  2431,  2440,  2449,   663,
   663,  1444,  1428,-32768,-32768,  1428,   663,  1563,   663,   192,
  1566,  1575,  1574,   215,  1579,  1575,  1585,   230,  1586,  1575,
  1588,   239,  1589,  1575,  1591,   257,  1592,  1575,-32768,   -57,
  1593,    84,   300,  1597,   663,  1595,   300,  1596,  1600,  1602,
  1603,  1622,   663,  1623,  1428,  1625,  1626,   663,  1617,  1639,
   663,  1646,  1647,  1473,   663,-32768,   887,   926,   938,-32768,
  1428,  1648,-32768,   663,   663,   663,   663,   663,   663,   663,
   663,   663,   663,   663,   663,  1884,   999,  1499,-32768,  1503,
   264,-32768,  1158,-32768,-32768,  1651,  1502,  1575,-32768,-32768,
-32768,  1509,-32768,-32768,-32768,  1513,-32768,-32768,-32768,  1519,
-32768,-32768,-32768,  1522,   663,-32768,  1515,  1523,  1532,  2458,
-32768,  1525,-32768,  1534,-32768,-32768,-32768,  1894,-32768,  1533,
-32768,-32768,  1904,  1535,-32768,  1914,  1538,  1539,-32768,  1012,
  1688,  1689,    22,  1542,-32768,  2467,  2476,  2485,  2494,  2503,
  2512,  2521,  2530,  2539,  1924,  1934,  1944,  1695,  1696,  1428,
  1428,-32768,    18,-32768,-32768,-32768,-32768,-32768,-32768,  1458,
   300,   300,   300,   300,  1697,  1698,  1709,   300,  1711,  1712,
  1713,  1715,  1716,-32768,-32768,-32768,-32768,   -50,  1428,   663,
   663,   663,   663,   663,   663,   663,   663,   663,-32768,-32768,
-32768,-32768,-32768,  1546,  1565,  1727,  1095,  1738,  1458,  1601,
  1610,  1590,  1599,-32768,-32768,-32768,  1611,-32768,-32768,-32768,
  1613,  1620,   -39,  1621,  2548,  2557,  2566,  2575,  2584,  2593,
  2602,  2611,  2620,  1612,  1628,  1629,  1428,  1667,-32768,  1633,
  2629,-32768,   342,   300,   300,  1742,  1751,   300,  1753,  1772,
  1782,  1428,   663,   663,   663,   663,   663,   663,   663,   663,
   663,   663,   663,   663,  1637,  1641,   663,   663,   663,  1650,
  1653,-32768,-32768,  1640,  1643,  1657,-32768,  1658,  2638,  2647,
  2656,  2665,  2674,  2683,  2692,  2701,  2710,   189,   222,   218,
   222,   235,   222,  1725,   663,  1151,  2719,  1458,   300,  1428,
  1802,  1811,  1812,  1818,   663,   663,   663,   663,   663,   663,
   663,   663,   663,   663,  1819,   663,  1821,   663,  1822,  1678,
  2728,  1829,   663,  1458,  1683,  1690,-32768,-32768,-32768,-32768,
  2737,  2746,  2755,  2764,  2773,  2782,  1954,  1964,  1974,   222,
-32768,   222,-32768,   222,-32768,   663,   663,-32768,   552,  1069,
   300,  1428,   663,   663,   663,   663,   663,   663,-32768,-32768,
-32768,  2791,  1192,   663,-32768,  1635,  1691,  1693,  2800,  2809,
  2818,  2827,  2836,  2845,  1682,  1692,  1699,   663,  1848,  1207,
-32768,  1428,   300,   663,   663,   663,   663,   663,   663,   663,
   663,   663,  1214,-32768,-32768,  1703,  1710,  2854,  2863,  2872,
  2881,  2890,  2899,   268,   222,   286,   222,   293,   222,  1852,
  1428,  1858,   663,   663,   663,   663,   663,   663,   663,  1861,
   663,  1862,   663,  1868,-32768,  1721,-32768,  2908,  2917,  2926,
  1984,  1994,  2004,   222,-32768,   222,-32768,   222,-32768,  1428,
   663,   663,   663,-32768,-32768,-32768,  1723,  2935,  2944,  2953,
  1722,  1728,  1729,  1428,   663,   663,   663,   663,   663,   663,
  1733,  2962,  2971,  2980,   301,   222,   302,   222,   317,   222,
   300,   663,   663,   663,   663,  1882,   663,  1888,   663,  1889,
  1743,  2014,  2024,  2034,   222,-32768,   222,-32768,   222,-32768,
  1891,-32768,-32768,-32768,-32768,  1748,  1749,  1752,   663,   663,
   663,   323,   222,   324,   222,   339,   222,   663,  1901,   663,
  1908,   663,  1909,   222,-32768,   222,-32768,   222,-32768,  1917,
  1918,-32768
Christophe Geuzaine's avatar
Christophe Geuzaine committed
-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,  1439,
-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
-32768,-32768,-32768,-32768,-32768,-32768,-32768,  1919,  1921,  -245,
   315,  1922,-32768,-32768,-32768,   866,  -868,-32768,-32768,-32768,
-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
-32768,-32768,-32768,-32768,-32768,-32768,  -837,-32768,-32768,  -744,
    -7,-32768,  1475,     3,  -100,-32768,  -807,  1223,   204,-32768
Christophe Geuzaine's avatar
Christophe Geuzaine committed
#define	YYLAST		3134


static const short yytable[] = {    92,
   364,   213,   840,   148,   664,   260,   892,   953,   874,     7,
   113,   849,   717,   721,   875,   443,   444,   874,   856,   874,
   110,  1086,   725,   875,   101,   875,   797,  1067,   255,   371,
   372,   126,   729,   733,   127,   128,    94,   129,    95,   665,
    66,    67,   106,   134,   102,   107,    68,    69,    70,    71,
    72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
    82,    83,    84,    85,    86,    87,    88,   329,   982,    96,
   136,    97,   986,   137,   138,   131,   990,   261,   132,   995,
   994,   172,   173,   174,   180,    98,   677,   678,   285,   286,
   177,   178,   718,   722,   179,   893,   894,   215,   216,   217,
   218,   219,   726,   221,   222,   573,   224,   225,   226,   114,
   230,    99,   730,   734,   997,   952,   111,  1131,   594,   112,
   100,   256,   149,   243,   244,   866,   103,   382,   383,   384,
   385,   386,   242,    39,    40,    41,    42,   247,    44,   259,
  1045,   262,   104,   108,   265,   266,   267,   268,   269,   270,
   271,   272,   273,   274,   275,   276,   277,   278,   279,   280,
   281,   282,   283,   284,   105,   719,   723,   288,   289,   290,
   291,   292,   293,  1087,   119,   727,   798,  1068,   998,   109,
   115,   578,  1002,    89,    90,   731,   735,   116,   867,  -252,
    91,   117,  -252,   120,  -252,   569,   145,   974,   387,   146,
  -252,  -252,   177,   178,   179,   121,   179,   285,   286,   177,
   178,   118,   334,   179,   459,   337,   125,   140,   130,   341,
   980,   579,   135,   346,   347,   348,   139,   350,   351,   352,
   353,   354,   355,   356,   953,   984,   713,   142,   141,   714,
   366,   367,   368,   143,   988,   285,   286,   177,   178,   122,
   123,   179,   124,   380,   144,   147,   389,   374,   285,   286,
   177,   178,   992,   150,   179,   285,   286,   177,   178,  1042,
   151,   179,   460,    66,    67,   461,   152,   410,   411,    68,
    69,    70,    71,    72,    73,    74,    75,    76,    77,    78,
    79,    80,    81,    82,    83,    84,    85,    86,    87,    88,
  -251,   690,   153,  -251,   691,  -251,  1090,  1091,  1092,  1093,
   214,  -251,  -251,  1097,   692,   179,   694,   693,   154,   695,
   229,   285,   286,   177,   178,   234,   155,   179,   285,   286,
   177,   178,   893,   231,   179,   895,   462,   285,   286,   177,
   178,   467,  1194,   179,   253,  1195,   156,   157,   257,   258,
   476,   477,   285,   286,   177,   178,   235,   480,   179,   475,
   285,   286,   177,   178,   484,   236,   179,   285,   286,   177,
   178,  1196,   158,   179,  1197,   285,   286,   177,   178,  1150,
  1151,   179,   245,  1154,   285,   286,   177,   178,  1198,   246,
   179,  1199,   523,   649,   650,   651,   652,   653,   159,   524,
   525,   526,   285,   286,   177,   178,   160,   161,   179,   285,
   286,   177,   178,   162,   163,   179,   175,   176,   177,   178,
   248,  1299,   179,    91,  1300,   164,   227,   285,   286,   177,
   178,   165,   166,   179,  1205,    -7,    -7,   167,    -7,  1301,
   773,   168,  1302,   791,    -1,     8,  1303,     9,   169,  1304,
   561,   570,   571,   251,  1355,  1357,   254,  1356,  1358,   662,
    24,    25,    26,    27,    28,    29,    30,    31,   170,    32,
  1359,    34,    35,  1360,    37,    38,  1388,  1390,  1149,  1389,
  1391,   171,   211,   591,   592,   593,  1247,   285,   286,   177,
   178,   249,  1392,   179,    50,  1393,   285,   286,   177,   178,
   220,   223,   179,   609,   610,   412,   612,   331,    51,    52,
   232,   285,   286,   177,   178,   233,   237,   179,  1277,   238,
   239,   627,   628,   285,   286,   177,   178,   240,   241,   179,
   252,   789,   250,   629,   790,   285,   286,   177,   178,   264,
   179,   179,   638,   358,    -7,    -7,    -7,    -7,    -7,    -7,
    -7,    -7,   294,    10,    11,    12,    13,    14,    15,    16,
    17,   672,   295,   296,    54,   297,   673,   298,   299,   300,
     1,     2,   301,     3,   302,   303,   304,   305,   306,   686,
   687,   688,   307,   324,   308,   309,   310,   369,   697,   698,
   699,   700,   701,   702,   703,   704,   705,   706,   707,   708,
   311,   312,   285,   286,   177,   178,  1361,   313,   179,   326,
   945,   314,   737,   946,   315,   316,   317,   738,    66,    67,
   898,   318,   944,   319,    68,    69,    70,    71,    72,    73,
    74,    75,    76,    77,    78,    79,    80,    81,    82,    83,
    84,    85,    86,    87,    88,   320,   285,   286,   177,   178,
   321,   322,   179,   562,   563,   323,   565,   336,   327,   328,
   567,   568,   344,   349,   357,    66,    67,   770,   862,   778,
   779,    68,    69,    70,    71,    72,    73,    74,    75,    76,
David Colignon's avatar
David Colignon committed
    77,    78,    79,    80,    81,    82,    83,    84,    85,    86,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
    87,    88,   792,   365,   794,   376,   796,   285,   286,   177,
   178,   812,   813,   179,   377,  1244,   379,   413,  1245,   285,
   286,   177,   178,   414,   415,   179,   611,   416,   417,   614,
   338,   418,   285,   286,   177,   178,   419,   420,   179,   421,
   831,   422,   833,   464,   423,   424,   425,   426,   427,   428,
   635,   636,   843,   429,   430,   431,   641,   642,   432,   850,
   851,   852,   433,   648,   434,   655,   857,   435,   436,   437,
   861,    89,    90,   438,   439,   864,   865,   667,   899,   669,
   440,   132,   441,   442,   448,   445,   478,   446,   674,   675,
   676,   869,   447,   679,   680,   681,   682,   683,   684,   685,
   449,   454,   878,   879,   880,   881,   882,   883,   884,   885,
   886,   887,   888,   889,   285,   286,   177,   178,    89,    90,
   179,   450,   900,   287,   904,    91,   908,   451,   912,   453,
   916,   456,   901,   920,   905,   457,   909,   479,   913,   458,
   917,    66,    67,   903,   463,   485,   511,    68,    69,    70,
David Colignon's avatar
David Colignon committed
    71,    72,    73,    74,    75,    76,    77,    78,    79,    80,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
    81,    82,    83,    84,    85,    86,    87,    88,   513,   512,
   514,   516,   517,   947,   948,   949,   518,   486,   487,   488,
   489,   490,   491,   492,   493,   494,   495,   496,   497,   519,
   558,   520,   966,   967,   521,   527,    66,    67,   907,   971,
   528,   973,    68,    69,    70,    71,    72,    73,    74,    75,
    76,    77,    78,    79,    80,    81,    82,    83,    84,    85,
    86,    87,    88,   564,   529,   530,   531,  1000,   532,   819,
   285,   286,   177,   178,   566,  1008,   179,   533,   574,   534,
  1013,   468,   535,  1016,   536,   537,   538,  1020,   559,   575,
   830,   539,   540,   541,   834,   542,  1026,  1027,  1028,  1029,
  1030,  1031,  1032,  1033,  1034,  1035,  1036,  1037,   498,   285,
   286,   177,   178,   853,   576,   179,   285,   286,   177,   178,
   469,   543,   179,   544,    89,    90,   577,   590,   545,   546,
   547,   899,   580,   548,   132,   549,   550,  1050,   551,   552,
   553,   285,   286,   177,   178,   554,   555,   179,   556,    66,
    67,   911,   787,   557,   560,    68,    69,    70,    71,    72,
    73,    74,    75,    76,    77,    78,    79,    80,    81,    82,
    83,    84,    85,    86,    87,    88,   581,   582,   583,    89,
    90,   584,   285,   286,   177,   178,   899,   585,   179,   132,
   586,   587,  1089,  1021,    24,    25,    26,    27,    28,    29,
    30,    31,   596,    32,   597,    34,    35,   598,    37,    38,
   599,   600,  1105,  1106,  1107,  1108,  1109,  1110,  1111,  1112,
  1113,   285,   286,   177,   178,   601,   602,   179,    50,  1121,
   603,  1123,  1022,   285,   286,   177,   178,   604,   605,   179,
   608,   606,    51,    52,  1023,   607,   969,    66,  1120,   970,
   613,   625,   620,    68,    69,    70,    71,    72,    73,    74,
David Colignon's avatar
David Colignon committed
    75,    76,    77,    78,    79,    80,    81,    82,    83,    84,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
    85,    86,    87,    88,   626,  1159,  1160,  1161,  1162,  1163,
  1164,  1165,  1166,  1167,  1169,  1171,  1173,   630,  1010,  1176,
  1177,  1178,    89,    90,   285,   286,   177,   178,    54,   899,
   179,   631,   132,   632,  1024,  1039,   633,   285,   286,   177,
   178,   634,   637,   179,   639,   640,   643,  1201,  1064,   644,
  1204,   373,   645,   657,   646,   647,   656,  1211,  1212,  1213,
  1214,  1215,  1216,  1217,  1218,  1219,  1220,   658,  1222,   659,
  1224,   660,   689,   661,   716,  1229,  1230,    24,    25,    26,
    27,    28,    29,    30,    31,   663,    32,   666,    34,    35,
  1246,    37,    38,   739,   285,   286,   177,   178,  1242,  1243,
   179,   668,   670,   671,   711,  1249,  1250,  1251,  1252,  1253,
  1254,    50,   742,   743,   771,   744,  1260,   745,   772,   747,
    89,    90,   746,  1084,  1085,    51,    52,    91,   775,   776,
  1273,   748,   749,   750,   777,   751,  1278,  1279,  1280,  1281,
  1282,  1283,  1285,  1287,  1289,   753,   752,   780,   754,   755,
   756,   757,  1104,   486,   487,   488,   489,   490,   491,   492,
   493,   494,   495,   496,   497,  1308,  1309,  1310,  1311,  1312,
  1313,  1314,   758,  1316,   759,  1318,   285,   286,   177,   178,
   760,    54,   179,   285,   286,   177,   178,  1202,   762,   179,
   761,   358,   287,  1328,  1329,  1330,   285,   286,   177,   178,
  1145,   781,   179,   782,   783,   330,   784,  1342,  1343,  1344,
  1346,  1348,  1350,   763,   764,  1158,   767,   285,   286,   177,
   178,   785,   786,   179,  1362,  1363,  1364,  1365,  1259,  1367,
   765,  1369,   285,   286,   177,   178,   766,   768,   179,   285,
   286,   177,   178,  1275,   696,   179,   769,   814,   793,   795,
  1290,  1383,  1385,  1387,   799,   818,   820,   822,   824,   832,
  1394,   826,  1396,  1206,  1398,    66,    67,   915,   828,   835,
   836,    68,    69,    70,    71,    72,    73,    74,    75,    76,
    77,    78,    79,    80,    81,    82,    83,    84,    85,    86,
    87,    88,   285,   286,   177,   178,   837,   838,   179,   839,
   842,   332,   841,   285,   286,   177,   178,   844,   845,   179,
    66,    67,   333,   848,   846,  1248,    68,    69,    70,    71,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
    72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
    82,    83,    84,    85,    86,    87,    88,   847,   854,   855,
    66,    67,   858,   859,   860,  1276,    68,    69,    70,    71,
    72,    73,    74,    75,    76,    77,    78,    79,    80,    81,
    82,    83,    84,    85,    86,    87,    88,   285,   286,   177,
   178,   863,   871,   179,  1306,   868,   335,   285,   286,   177,
   178,   870,   872,   179,   873,   896,   339,   285,   286,   177,
   178,   897,   902,   179,   906,   910,   340,   919,   285,   286,
   177,   178,   914,  1327,   179,   950,   968,   345,    89,    90,
   285,   286,   177,   178,   918,   899,   179,  1341,   132,   378,
   285,   286,   177,   178,   921,   923,   179,   924,   951,   381,
   285,   286,   177,   178,   925,   927,   179,   926,   930,   390,
   285,   286,   177,   178,   931,   929,   179,   936,   972,   391,
   937,   975,   935,    89,    90,   940,   939,   942,   976,   979,
    91,    -3,    22,   227,   981,    23,   285,   286,   177,   178,
   983,   985,   179,   987,   989,   392,   991,   993,   996,   999,
  1001,  1003,  1004,   175,   176,   177,   178,  1005,  1006,   179,
    91,    24,    25,    26,    27,    28,    29,    30,    31,  1014,
    32,    33,    34,    35,    36,    37,    38,  1007,  1009,  1019,
  1011,  1012,    39,    40,    41,    42,    43,    44,   181,    45,
    46,    47,    48,    49,  1015,    50,   285,   286,   177,   178,
  1017,  1018,   179,  1025,  1040,   393,  1041,  1043,  1044,    51,
    52,   285,   286,   177,   178,  1046,    53,   179,  1051,  1047,
   394,   285,   286,   177,   178,  1048,  1052,   179,  1049,  1055,
   395,   285,   286,   177,   178,  1053,  1058,   179,  1056,  1060,
   396,  1062,  1063,  1065,  1066,  1069,   182,   183,   184,  1117,
  1082,  1083,  1094,  1095,   185,   186,   187,   188,   189,   190,
   191,   192,   193,   194,  1096,    54,  1098,  1099,  1100,  1101,
  1102,  1118,   195,   196,   197,   198,   199,   200,   201,   202,
   203,   204,  1119,   205,   206,   207,   208,   209,   210,   285,
   286,   177,   178,  1122,  1126,   179,  1146,  1152,   397,   285,
   286,   177,   178,  1127,  1124,   179,  1153,  1155,   398,   285,
   286,   177,   178,  1125,  1128,   179,  1129,  1142,   399,   285,
   286,   177,   178,  1130,  1132,   179,  1156,  1261,   401,   285,
   286,   177,   178,  1143,  1144,   179,  1147,  1157,   402,   285,
   286,   177,   178,  1174,  1181,   179,  1175,  1182,   403,   285,
   286,   177,   178,  1179,  1200,   179,  1180,  1207,   404,   285,
   286,   177,   178,  1183,  1184,   179,  1208,  1209,   405,   285,
   286,   177,   178,  1210,  1221,   179,  1223,  1225,   406,   285,
   286,   177,   178,  1226,  1228,   179,  1231,  1270,   452,   285,
   286,   177,   178,  1232,  1262,   179,  1263,  1271,   455,   285,
   286,   177,   178,  1274,  1272,   179,  1291,  1305,   465,   285,
   286,   177,   178,  1307,  1292,   179,  1315,  1317,   466,   285,
   286,   177,   178,  1319,  1320,   179,  1334,  1338,   470,   285,
   286,   177,   178,  1339,  1340,   179,  1351,  1366,   471,   285,
   286,   177,   178,  1368,  1370,   179,  1375,  1371,   472,   285,
   286,   177,   178,  1379,  1380,   179,  1395,  1381,   473,   285,
   286,   177,   178,  1397,  1399,   179,  1401,  1402,   474,   285,
   286,   177,   178,   595,    58,   179,    59,    60,   515,   285,
   286,   177,   178,  1103,   572,   179,   817,     0,   522,   285,
   286,   177,   178,     0,     0,   179,     0,     0,   621,   285,
   286,   177,   178,     0,     0,   179,     0,     0,   622,   285,
   286,   177,   178,     0,     0,   179,     0,     0,   623,   285,
   286,   177,   178,     0,     0,   179,     0,     0,   624,   285,
   286,   177,   178,     0,     0,   179,     0,     0,   712,   285,
   286,   177,   178,     0,     0,   179,     0,     0,   788,   285,
   286,   177,   178,     0,     0,   179,     0,     0,   928,   285,
   286,   177,   178,     0,     0,   179,     0,     0,   932,   285,
   286,   177,   178,     0,     0,   179,     0,     0,   934,   285,
   286,   177,   178,     0,     0,   179,     0,     0,  1038,   285,
   286,   177,   178,     0,     0,   179,     0,     0,  1057,   285,
   286,   177,   178,     0,     0,   179,     0,     0,  1059,   285,
   286,   177,   178,     0,     0,   179,     0,     0,  1061,   285,
   286,   177,   178,     0,     0,   179,     0,     0,  1079,   285,
   286,   177,   178,     0,     0,   179,     0,     0,  1080,   285,
   286,   177,   178,     0,     0,   179,     0,     0,  1081,   285,
   286,   177,   178,     0,     0,   179,     0,     0,  1239,   285,
   286,   177,   178,     0,     0,   179,     0,     0,  1240,   285,
   286,   177,   178,     0,     0,   179,     0,     0,  1241,   285,
   286,   177,   178,     0,     0,   179,     0,     0,  1324,   285,
   286,   177,   178,     0,     0,   179,     0,     0,  1325,   285,
   286,   177,   178,     0,     0,   179,     0,     0,  1326,   285,
   286,   177,   178,     0,     0,   179,     0,     0,  1372,   285,
   286,   177,   178,     0,     0,   179,     0,     0,  1373,   285,
   286,   177,   178,     0,     0,   179,     0,     0,  1374,   285,
   286,   177,   178,     0,     0,   179,     0,   359,   285,   286,
   177,   178,     0,     0,   179,     0,   400,   285,   286,   177,
   178,     0,     0,   179,     0,   407,   285,   286,   177,   178,
     0,     0,   179,     0,   408,   285,   286,   177,   178,     0,
     0,   179,     0,   409,   285,   286,   177,   178,     0,     0,
   179,     0,   481,   285,   286,   177,   178,     0,     0,   179,
     0,   482,   285,   286,   177,   178,     0,     0,   179,     0,
   483,   285,   286,   177,   178,     0,     0,   179,     0,   588,
   285,   286,   177,   178,     0,     0,   179,     0,   589,   285,
   286,   177,   178,     0,     0,   179,     0,   709,   285,   286,
   177,   178,     0,     0,   179,     0,   710,   285,   286,   177,
   178,     0,     0,   179,     0,   740,   285,   286,   177,   178,
     0,     0,   179,     0,   741,   285,   286,   177,   178,     0,
     0,   179,     0,   774,   285,   286,   177,   178,     0,     0,
   179,     0,   800,   285,   286,   177,   178,     0,     0,   179,
     0,   801,   285,   286,   177,   178,     0,     0,   179,     0,
   802,   285,   286,   177,   178,     0,     0,   179,     0,   803,
   285,   286,   177,   178,     0,     0,   179,     0,   804,   285,
   286,   177,   178,     0,     0,   179,     0,   805,   285,   286,
   177,   178,     0,     0,   179,     0,   806,   285,   286,   177,
   178,     0,     0,   179,     0,   807,   285,   286,   177,   178,
     0,     0,   179,     0,   808,   285,   286,   177,   178,     0,
     0,   179,     0,   809,   285,   286,   177,   178,     0,     0,
   179,     0,   810,   285,   286,   177,   178,     0,     0,   179,
     0,   811,   285,   286,   177,   178,     0,     0,   179,     0,
   890,   285,   286,   177,   178,     0,     0,   179,     0,   891,
   285,   286,   177,   178,     0,     0,   179,     0,   922,   285,
   286,   177,   178,     0,     0,   179,     0,   933,   285,   286,
   177,   178,     0,     0,   179,     0,   938,   285,   286,   177,
   178,     0,     0,   179,     0,   941,   285,   286,   177,   178,
     0,     0,   179,     0,   943,   285,   286,   177,   178,     0,
     0,   179,     0,   954,   285,   286,   177,   178,     0,     0,
   179,     0,   955,   285,   286,   177,   178,     0,     0,   179,
     0,   956,   285,   286,   177,   178,     0,     0,   179,     0,
   957,   285,   286,   177,   178,     0,     0,   179,     0,   958,
   285,   286,   177,   178,     0,     0,   179,     0,   959,   285,
   286,   177,   178,     0,     0,   179,     0,   960,   285,   286,
   177,   178,     0,     0,   179,     0,   961,   285,   286,   177,
   178,     0,     0,   179,     0,   962,   285,   286,   177,   178,
     0,     0,   179,     0,   963,   285,   286,   177,   178,     0,
     0,   179,     0,   964,   285,   286,   177,   178,     0,     0,
   179,     0,   965,   285,   286,   177,   178,     0,     0,   179,
     0,  1054,   285,   286,   177,   178,     0,     0,   179,     0,
  1070,   285,   286,   177,   178,     0,     0,   179,     0,  1071,
   285,   286,   177,   178,     0,     0,   179,     0,  1072,   285,
   286,   177,   178,     0,     0,   179,     0,  1073,   285,   286,
   177,   178,     0,     0,   179,     0,  1074,   285,   286,   177,
   178,     0,     0,   179,     0,  1075,   285,   286,   177,   178,
     0,     0,   179,     0,  1076,   285,   286,   177,   178,     0,
     0,   179,     0,  1077,   285,   286,   177,   178,     0,     0,
   179,     0,  1078,   285,   286,   177,   178,     0,     0,   179,
     0,  1133,   285,   286,   177,   178,     0,     0,   179,     0,
  1134,   285,   286,   177,   178,     0,     0,   179,     0,  1135,
   285,   286,   177,   178,     0,     0,   179,     0,  1136,   285,
   286,   177,   178,     0,     0,   179,     0,  1137,   285,   286,
   177,   178,     0,     0,   179,     0,  1138,   285,   286,   177,
   178,     0,     0,   179,     0,  1139,   285,   286,   177,   178,
     0,     0,   179,     0,  1140,   285,   286,   177,   178,     0,
     0,   179,     0,  1141,   285,   286,   177,   178,     0,     0,
   179,     0,  1148,   285,   286,   177,   178,     0,     0,   179,
     0,  1185,   285,   286,   177,   178,     0,     0,   179,     0,
  1186,   285,   286,   177,   178,     0,     0,   179,     0,  1187,
   285,   286,   177,   178,     0,     0,   179,     0,  1188,   285,
   286,   177,   178,     0,     0,   179,     0,  1189,   285,   286,
   177,   178,     0,     0,   179,     0,  1190,   285,   286,   177,
   178,     0,     0,   179,     0,  1191,   285,   286,   177,   178,
     0,     0,   179,     0,  1192,   285,   286,   177,   178,     0,
     0,   179,     0,  1193,   285,   286,   177,   178,     0,     0,
   179,     0,  1203,   285,   286,   177,   178,     0,     0,   179,
     0,  1227,   285,   286,   177,   178,     0,     0,   179,     0,
  1233,   285,   286,   177,   178,     0,     0,   179,     0,  1234,
   285,   286,   177,   178,     0,     0,   179,     0,  1235,   285,
   286,   177,   178,     0,     0,   179,     0,  1236,   285,   286,
   177,   178,     0,     0,   179,     0,  1237,   285,   286,   177,
   178,     0,     0,   179,     0,  1238,   285,   286,   177,   178,
     0,     0,   179,     0,  1258,   285,   286,   177,   178,     0,
     0,   179,     0,  1264,   285,   286,   177,   178,     0,     0,
   179,     0,  1265,   285,   286,   177,   178,     0,     0,   179,
     0,  1266,   285,   286,   177,   178,     0,     0,   179,     0,
  1267,   285,   286,   177,   178,     0,     0,   179,     0,  1268,
   285,   286,   177,   178,     0,     0,   179,     0,  1269,   285,
   286,   177,   178,     0,     0,   179,     0,  1293,   285,   286,
   177,   178,     0,     0,   179,     0,  1294,   285,   286,   177,
   178,     0,     0,   179,     0,  1295,   285,   286,   177,   178,
     0,     0,   179,     0,  1296,   285,   286,   177,   178,     0,
     0,   179,     0,  1297,   285,   286,   177,   178,     0,     0,
   179,     0,  1298,   285,   286,   177,   178,     0,     0,   179,
     0,  1321,   285,   286,   177,   178,     0,     0,   179,     0,
  1322,   285,   286,   177,   178,     0,     0,   179,     0,  1323,
   285,   286,   177,   178,     0,     0,   179,     0,  1335,   285,
   286,   177,   178,     0,     0,   179,     0,  1336,   285,   286,
   177,   178,     0,     0,   179,     0,  1337,   285,   286,   177,
   178,     0,     0,   179,     0,  1352,   285,   286,   177,   178,
     0,     0,   179,     0,  1353,   285,   286,   177,   178,     0,
     0,   179,     0,  1354
static const short yycheck[] = {     7,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
   246,   102,   747,    34,     6,    81,   814,   876,    59,   139,
    57,   756,     4,     4,    65,   154,   155,    59,   763,    59,
    57,     4,     4,    65,   153,    65,     6,     6,    63,     6,
     7,    30,     4,     4,    33,    34,     6,    36,     7,    41,
     3,     4,   153,    41,   153,   156,     9,    10,    11,    12,
    13,    14,    15,    16,    17,    18,    19,    20,    21,    22,
    23,    24,    25,    26,    27,    28,    29,     6,   906,     6,
    30,     6,   910,    33,    34,   153,   914,   153,   156,   137,
   918,    89,    90,    91,    92,     6,    48,    49,   146,   147,
   148,   149,    84,    84,   152,   154,   155,   105,   106,   107,
   108,   109,    84,   111,   112,     6,   114,   115,   116,   156,
   118,     6,    84,    84,   922,   157,   153,   157,     6,   156,
     6,   156,   153,   131,   132,     6,   153,    86,    87,    88,
    89,    90,   130,    51,    52,    53,    54,   135,    56,   147,
   978,   149,     6,   153,   152,   153,   154,   155,   156,   157,
David Colignon's avatar
David Colignon committed
   158,   159,   160,   161,   162,   163,   164,   165,   166,   167,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
   168,   169,   170,   171,     7,   157,   157,   175,   176,   177,
   178,   179,   180,   156,    34,   157,   156,   156,   923,   153,
   153,     6,   927,   146,   147,   157,   157,   153,     6,   137,
   153,    38,   140,    34,   142,   158,    30,     6,   157,    33,
   148,   149,   148,   149,   152,    34,   152,   146,   147,   148,
   149,   153,   220,   152,     8,   223,    36,     5,   156,   227,
     6,    46,   156,   231,   232,   233,   156,   235,   236,   237,
   238,   239,   240,   241,  1103,     6,   153,   156,    34,   156,
   248,   249,   250,     6,     6,   146,   147,   148,   149,    33,
    34,   152,    36,   261,     5,   153,   264,   255,   146,   147,
   148,   149,     6,   156,   152,   146,   147,   148,   149,     6,
    34,   152,   154,     3,     4,   157,   153,   285,   286,     9,
    10,    11,    12,    13,    14,    15,    16,    17,    18,    19,
    20,    21,    22,    23,    24,    25,    26,    27,    28,    29,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
   137,   154,   153,   140,   157,   142,  1051,  1052,  1053,  1054,
     5,   148,   149,  1058,   154,   152,   154,   157,   153,   157,
   117,   146,   147,   148,   149,   122,   153,   152,   146,   147,
   148,   149,   154,   156,   152,   157,   344,   146,   147,   148,
   149,   349,   154,   152,   141,   157,   153,   153,   145,   146,
   358,   359,   146,   147,   148,   149,   156,   365,   152,   357,
   146,   147,   148,   149,   372,   156,   152,   146,   147,   148,
   149,   154,   153,   152,   157,   146,   147,   148,   149,  1124,
  1125,   152,   156,  1128,   146,   147,   148,   149,   154,   156,
   152,   157,   400,    94,    95,    96,    97,    98,   153,   407,
   408,   409,   146,   147,   148,   149,   153,   153,   152,   146,
   147,   148,   149,   153,   153,   152,   146,   147,   148,   149,
   156,   154,   152,   153,   157,   153,   156,   146,   147,   148,
   149,   153,   153,   152,  1179,     0,     1,   153,     3,   154,
   159,   153,   157,   689,     0,     1,   154,     3,   153,   157,
   448,   459,   460,   139,   154,   154,   142,   157,   157,   560,
    30,    31,    32,    33,    34,    35,    36,    37,   153,    39,
   154,    41,    42,   157,    44,    45,   154,   154,   137,   157,
   157,   153,   153,   481,   482,   483,  1231,   146,   147,   148,
   149,   156,   154,   152,    64,   157,   146,   147,   148,   149,
   153,   153,   152,   511,   512,   140,   514,   157,    78,    79,
   153,   146,   147,   148,   149,   153,   153,   152,  1263,   153,
   153,   529,   530,   146,   147,   148,   149,   153,   153,   152,
     6,   154,   156,   531,   157,   146,   147,   148,   149,   153,
   152,   152,   540,   154,   109,   110,   111,   112,   113,   114,
   115,   116,   153,   109,   110,   111,   112,   113,   114,   115,
   116,   569,   153,   153,   134,   153,   574,   153,   153,   153,
   135,   136,   153,   138,   153,   153,   153,   153,   153,   587,
   588,   589,   153,     5,   153,   153,   153,   157,   596,   597,
David Colignon's avatar
David Colignon committed
   598,   599,   600,   601,   602,   603,   604,   605,   606,   607,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
   153,   153,   146,   147,   148,   149,  1351,   153,   152,   154,
   154,   153,   620,   157,   153,   153,   153,   625,     3,     4,
     5,   153,   868,   153,     9,    10,    11,    12,    13,    14,
    15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
    25,    26,    27,    28,    29,   153,   146,   147,   148,   149,
   153,   153,   152,   450,   451,   153,   453,   157,   155,   154,
   457,   458,     7,     7,   154,     3,     4,   665,   769,   677,
   678,     9,    10,    11,    12,    13,    14,    15,    16,    17,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
    18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
    28,    29,   690,   154,   692,     7,   694,   146,   147,   148,
   149,   709,   710,   152,     7,   154,    82,     5,   157,   146,
   147,   148,   149,     5,     5,   152,   513,     5,     5,   516,
   157,     5,   146,   147,   148,   149,     5,     5,   152,     5,
   738,     5,   740,   157,     5,     5,     5,     5,     5,     5,
   537,   538,   750,     5,     5,     5,   543,   544,     5,   757,
   758,   759,     5,   550,     5,   552,   764,     5,   127,     5,
   768,   146,   147,     5,     5,   773,   774,   564,   153,   566,
     5,   156,     3,     5,     7,     5,   157,     6,   575,   576,
   577,   789,     5,   580,   581,   582,   583,   584,   585,   586,
     6,     6,   800,   801,   802,   803,   804,   805,   806,   807,
   808,   809,   810,   811,   146,   147,   148,   149,   146,   147,
   152,     7,   820,   155,   822,   153,   824,     7,   826,     7,
   828,     6,   820,   831,   822,     7,   824,   157,   826,     7,
   828,     3,     4,     5,     7,   156,   153,     9,    10,    11,
    12,    13,    14,    15,    16,    17,    18,    19,    20,    21,
    22,    23,    24,    25,    26,    27,    28,    29,     7,   156,
   153,     7,   156,   871,   872,   873,   156,    66,    67,    68,
    69,    70,    71,    72,    73,    74,    75,    76,    77,   156,
     5,   156,   890,   891,   156,   141,     3,     4,     5,   897,
   154,   899,     9,    10,    11,    12,    13,    14,    15,    16,
    17,    18,    19,    20,    21,    22,    23,    24,    25,    26,
    27,    28,    29,     7,   154,   154,   154,   925,   154,   716,
   146,   147,   148,   149,     7,   933,   152,   154,   156,   154,
   938,   157,   154,   941,   154,   154,   154,   945,   155,     7,
   737,   154,   154,   154,   741,   154,   954,   955,   956,   957,
   958,   959,   960,   961,   962,   963,   964,   965,   157,   146,
   147,   148,   149,   760,     7,   152,   146,   147,   148,   149,
   157,   154,   152,   154,   146,   147,     7,   157,   154,   154,
   154,   153,     7,   154,   156,   154,   154,   995,   154,   154,
   154,   146,   147,   148,   149,   154,   154,   152,   154,     3,
     4,     5,   157,   154,   154,     9,    10,    11,    12,    13,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
    14,    15,    16,    17,    18,    19,    20,    21,    22,    23,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
    24,    25,    26,    27,    28,    29,     7,     7,     7,   146,
   147,     7,   146,   147,   148,   149,   153,     7,   152,   156,
     7,   154,  1050,   157,    30,    31,    32,    33,    34,    35,
    36,    37,   153,    39,   153,    41,    42,   153,    44,    45,
   153,   153,  1070,  1071,  1072,  1073,  1074,  1075,  1076,  1077,
  1078,   146,   147,   148,   149,   153,   153,   152,    64,  1087,
   153,  1089,   157,   146,   147,   148,   149,   153,   153,   152,
     6,   153,    78,    79,   157,   153,   893,     3,     4,   896,
     7,   137,     7,     9,    10,    11,    12,    13,    14,    15,
    16,    17,    18,    19,    20,    21,    22,    23,    24,    25,
    26,    27,    28,    29,     3,  1133,  1134,  1135,  1136,  1137,
  1138,  1139,  1140,  1141,  1142,  1143,  1144,     3,   935,  1147,
  1148,  1149,   146,   147,   146,   147,   148,   149,   134,   153,
   152,     3,   156,   148,   951,   157,     3,   146,   147,   148,
   149,     3,     3,   152,     3,     3,     3,  1175,   157,     3,
  1178,   157,     3,     5,     3,     3,     3,  1185,  1186,  1187,
  1188,  1189,  1190,  1191,  1192,  1193,  1194,     5,  1196,     3,
  1198,     3,   156,     6,    83,  1203,  1204,    30,    31,    32,
    33,    34,    35,    36,    37,     6,    39,     6,    41,    42,
   142,    44,    45,   154,   146,   147,   148,   149,  1226,  1227,
   152,     6,     6,     6,     6,  1233,  1234,  1235,  1236,  1237,
  1238,    64,   155,   154,     6,   155,  1244,   154,     6,   154,
   146,   147,   155,  1040,  1041,    78,    79,   153,     6,     6,
  1258,   155,   154,   154,     6,   155,  1264,  1265,  1266,  1267,
  1268,  1269,  1270,  1271,  1272,   155,   154,     6,   155,   154,
   154,   154,  1069,    66,    67,    68,    69,    70,    71,    72,
    73,    74,    75,    76,    77,  1293,  1294,  1295,  1296,  1297,
  1298,  1299,   154,  1301,   154,  1303,   146,   147,   148,   149,
   154,   134,   152,   146,   147,   148,   149,   157,   154,   152,
   155,   154,   155,  1321,  1322,  1323,   146,   147,   148,   149,
  1117,     6,   152,     6,     6,   155,     6,  1335,  1336,  1337,
  1338,  1339,  1340,   154,   154,  1132,   155,   146,   147,   148,
   149,     6,     6,   152,  1352,  1353,  1354,  1355,   157,  1357,
   154,  1359,   146,   147,   148,   149,   154,   154,   152,   146,
   147,   148,   149,   157,   157,   152,   154,     7,     6,     6,
   157,  1379,  1380,  1381,     6,    83,     7,     7,     7,     3,
  1388,     7,  1390,  1180,  1392,     3,     4,     5,     7,     6,
     3,     9,    10,    11,    12,    13,    14,    15,    16,    17,
    18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
    28,    29,   146,   147,   148,   149,     6,   148,   152,     6,
     3,   155,     6,   146,   147,   148,   149,     6,     3,   152,
     3,     4,   155,     3,     6,  1232,     9,    10,    11,    12,
    13,    14,    15,    16,    17,    18,    19,    20,    21,    22,
    23,    24,    25,    26,    27,    28,    29,     6,     6,     3,
     3,     4,     3,     3,     6,  1262,     9,    10,    11,    12,
    13,    14,    15,    16,    17,    18,    19,    20,    21,    22,
    23,    24,    25,    26,    27,    28,    29,   146,   147,   148,
   149,     6,   154,   152,  1291,   156,   155,   146,   147,   148,
   149,   157,   154,   152,   154,   156,   155,   146,   147,   148,
   149,    80,   156,   152,   156,   156,   155,     6,   146,   147,
   148,   149,   156,  1320,   152,     6,    83,   155,   146,   147,
   146,   147,   148,   149,   156,   153,   152,  1334,   156,   155,
   146,   147,   148,   149,   155,   154,   152,   154,   156,   155,
   146,   147,   148,   149,   154,   154,   152,   155,   155,   155,
   146,   147,   148,   149,   155,   154,   152,   155,     6,   155,
   155,     6,   154,   146,   147,   155,   154,   154,     4,     6,
   153,     0,     1,   156,     6,     4,   146,   147,   148,   149,
     6,     6,   152,     6,     6,   155,     6,     6,     6,     3,
     6,     6,     3,   146,   147,   148,   149,     6,     6,   152,
   153,    30,    31,    32,    33,    34,    35,    36,    37,     3,
    39,    40,    41,    42,    43,    44,    45,     6,     6,   157,
     6,     6,    51,    52,    53,    54,    55,    56,    33,    58,
    59,    60,    61,    62,     6,    64,   146,   147,   148,   149,
     5,     5,   152,     6,   156,   155,   154,     7,   157,    78,
    79,   146,   147,   148,   149,   157,    85,   152,   154,   157,
   155,   146,   147,   148,   149,   157,   154,   152,   157,   155,
   155,   146,   147,   148,   149,   154,   154,   152,   155,   155,
   155,   154,   154,     6,     6,   154,    91,    92,    93,   154,
     6,     6,     6,     6,    99,   100,   101,   102,   103,   104,
   105,   106,   107,   108,     6,   134,     6,     6,     6,     5,
     5,   157,   117,   118,   119,   120,   121,   122,   123,   124,
   125,   126,     6,   128,   129,   130,   131,   132,   133,   146,
   147,   148,   149,     6,   155,   152,    80,     6,   155,   146,
   147,   148,   149,   155,   154,   152,     6,     5,   155,   146,
   147,   148,   149,   154,   154,   152,   154,   156,   155,   146,
   147,   148,   149,   154,   154,   152,     5,   143,   155,   146,
   147,   148,   149,   156,   156,   152,   154,     6,   155,   146,
   147,   148,   149,   157,   155,   152,   156,   155,   155,   146,
   147,   148,   149,   154,    80,   152,   154,     6,   155,   146,
   147,   148,   149,   157,   157,   152,     6,     6,   155,   146,
   147,   148,   149,     6,     6,   152,     6,     6,   155,   146,
   147,   148,   149,   156,     6,   152,   154,   156,   155,   146,
   147,   148,   149,   154,   154,   152,   154,   156,   155,   146,
   147,   148,   149,     6,   156,   152,   154,     6,   155,   146,
   147,   148,   149,     6,   155,   152,     6,     6,   155,   146,
   147,   148,   149,     6,   154,   152,   154,   156,   155,   146,
   147,   148,   149,   156,   156,   152,   154,     6,   155,   146,
   147,   148,   149,     6,     6,   152,     6,   155,   155,   146,
   147,   148,   149,   156,   156,   152,     6,   156,   155,   146,
   147,   148,   149,     6,     6,   152,     0,     0,   155,   146,
   147,   148,   149,   485,     6,   152,     6,     6,   155,   146,
   147,   148,   149,  1068,   460,   152,   714,    -1,   155,   146,
   147,   148,   149,    -1,    -1,   152,    -1,    -1,   155,   146,
   147,   148,   149,    -1,    -1,   152,    -1,    -1,   155,   146,
   147,   148,   149,    -1,    -1,   152,    -1,    -1,   155,   146,
   147,   148,   149,    -1,    -1,   152,    -1,    -1,   155,   146,
   147,   148,   149,    -1,    -1,   152,    -1,    -1,   155,   146,
   147,   148,   149,    -1,    -1,   152,    -1,    -1,   155,   146,
   147,   148,   149,    -1,    -1,   152,    -1,    -1,   155,   146,
   147,   148,   149,    -1,    -1,   152,    -1,    -1,   155,   146,
   147,   148,   149,    -1,    -1,   152,    -1,    -1,   155,   146,
   147,   148,   149,    -1,    -1,   152,    -1,    -1,   155,   146,
   147,   148,   149,    -1,    -1,   152,    -1,    -1,   155,   146,
   147,   148,   149,    -1,    -1,   152,    -1,    -1,   155,   146,
   147,   148,   149,    -1,    -1,   152,    -1,    -1,   155,   146,
   147,   148,   149,    -1,    -1,   152,    -1,    -1,   155,   146,
   147,   148,   149,    -1,    -1,   152,    -1,    -1,   155,   146,
   147,   148,   149,    -1,    -1,   152,    -1,    -1,   155,   146,
   147,   148,   149,    -1,    -1,   152,    -1,    -1,   155,   146,
   147,   148,   149,    -1,    -1,   152,    -1,    -1,   155,   146,
   147,   148,   149,    -1,    -1,   152,    -1,    -1,   155,   146,
   147,   148,   149,    -1,    -1,   152,    -1,    -1,   155,   146,
   147,   148,   149,    -1,    -1,   152,    -1,    -1,   155,   146,
   147,   148,   149,    -1,    -1,   152,    -1,    -1,   155,   146,
   147,   148,   149,    -1,    -1,   152,    -1,    -1,   155,   146,
   147,   148,   149,    -1,    -1,   152,    -1,    -1,   155,   146,
   147,   148,   149,    -1,    -1,   152,    -1,    -1,   155,   146,
   147,   148,   149,    -1,    -1,   152,    -1,   154,   146,   147,
   148,   149,    -1,    -1,   152,    -1,   154,   146,   147,   148,
   149,    -1,    -1,   152,    -1,   154,   146,   147,   148,   149,
    -1,    -1,   152,    -1,   154,   146,   147,   148,   149,    -1,
    -1,   152,    -1,   154,   146,   147,   148,   149,    -1,    -1,
   152,    -1,   154,   146,   147,   148,   149,    -1,    -1,   152,
    -1,   154,   146,   147,   148,   149,    -1,    -1,   152,    -1,
   154,   146,   147,   148,   149,    -1,    -1,   152,    -1,   154,
   146,   147,   148,   149,    -1,    -1,   152,    -1,   154,   146,
   147,   148,   149,    -1,    -1,   152,    -1,   154,   146,   147,
   148,   149,    -1,    -1,   152,    -1,   154,   146,   147,   148,
   149,    -1,    -1,   152,    -1,   154,   146,   147,   148,   149,
    -1,    -1,   152,    -1,   154,   146,   147,   148,   149,    -1,
    -1,   152,    -1,   154,   146,   147,   148,   149,    -1,    -1,
   152,    -1,   154,   146,   147,   148,   149,    -1,    -1,   152,
    -1,   154,   146,   147,   148,   149,    -1,    -1,   152,    -1,
   154,   146,   147,   148,   149,    -1,    -1,   152,    -1,   154,
   146,   147,   148,   149,    -1,    -1,   152,    -1,   154,   146,
   147,   148,   149,    -1,    -1,   152,    -1,   154,   146,   147,
   148,   149,    -1,    -1,   152,    -1,   154,   146,   147,   148,
   149,    -1,    -1,   152,    -1,   154,   146,   147,   148,   149,
    -1,    -1,   152,    -1,   154,   146,   147,   148,   149,    -1,
    -1,   152,    -1,   154,   146,   147,   148,   149,    -1,    -1,
   152,    -1,   154,   146,   147,   148,   149,    -1,    -1,   152,
    -1,   154,   146,   147,   148,   149,    -1,    -1,   152,    -1,
   154,   146,   147,   148,   149,    -1,    -1,   152,    -1,   154,
   146,   147,   148,   149,    -1,    -1,   152,    -1,   154,   146,
   147,   148,   149,    -1,    -1,   152,    -1,   154,   146,   147,
   148,   149,    -1,    -1,   152,    -1,   154,   146,   147,   148,
   149,    -1,    -1,   152,    -1,   154,   146,   147,   148,   149,
    -1,    -1,   152,    -1,   154,   146,   147,   148,   149,    -1,
    -1,   152,    -1,   154,   146,   147,   148,   149,    -1,    -1,
   152,    -1,   154,   146,   147,   148,   149,    -1,    -1,   152,
    -1,   154,   146,   147,   148,   149,    -1,    -1,   152,    -1,
   154,   146,   147,   148,   149,    -1,    -1,   152,    -1,   154,
   146,   147,   148,   149,    -1,    -1,   152,    -1,   154,   146,
   147,   148,   149,    -1,    -1,   152,    -1,   154,   146,   147,
   148,   149,    -1,    -1,   152,    -1,   154,   146,   147,   148,
   149,    -1,    -1,   152,    -1,   154,   146,   147,   148,   149,
    -1,    -1,   152,    -1,   154,   146,   147,   148,   149,    -1,
    -1,   152,    -1,   154,   146,   147,   148,   149,    -1,    -1,
   152,    -1,   154,   146,   147,   148,   149,    -1,    -1,   152,
    -1,   154,   146,   147,   148,   149,    -1,    -1,   152,    -1,
   154,   146,   147,   148,   149,    -1,    -1,   152,    -1,   154,
   146,   147,   148,   149,    -1,    -1,   152,    -1,   154,   146,
   147,   148,   149,    -1,    -1,   152,    -1,   154,   146,   147,
   148,   149,    -1,    -1,   152,    -1,   154,   146,   147,   148,
   149,    -1,    -1,   152,    -1,   154,   146,   147,   148,   149,
    -1,    -1,   152,    -1,   154,   146,   147,   148,   149,    -1,
    -1,   152,    -1,   154,   146,   147,   148,   149,    -1,    -1,
   152,    -1,   154,   146,   147,   148,   149,    -1,    -1,   152,
    -1,   154,   146,   147,   148,   149,    -1,    -1,   152,    -1,
   154,   146,   147,   148,   149,    -1,    -1,   152,    -1,   154,
   146,   147,   148,   149,    -1,    -1,   152,    -1,   154,   146,
   147,   148,   149,    -1,    -1,   152,    -1,   154,   146,   147,
   148,   149,    -1,    -1,   152,    -1,   154,   146,   147,   148,
   149,    -1,    -1,   152,    -1,   154,   146,   147,   148,   149,
    -1,    -1,   152,    -1,   154,   146,   147,   148,   149,    -1,
    -1,   152,    -1,   154,   146,   147,   148,   149,    -1,    -1,
   152,    -1,   154,   146,   147,   148,   149,    -1,    -1,   152,
    -1,   154,   146,   147,   148,   149,    -1,    -1,   152,    -1,
   154,   146,   147,   148,   149,    -1,    -1,   152,    -1,   154,
   146,   147,   148,   149,    -1,    -1,   152,    -1,   154,   146,
   147,   148,   149,    -1,    -1,   152,    -1,   154,   146,   147,
   148,   149,    -1,    -1,   152,    -1,   154,   146,   147,   148,
   149,    -1,    -1,   152,    -1,   154,   146,   147,   148,   149,
    -1,    -1,   152,    -1,   154,   146,   147,   148,   149,    -1,
    -1,   152,    -1,   154,   146,   147,   148,   149,    -1,    -1,
   152,    -1,   154,   146,   147,   148,   149,    -1,    -1,   152,
    -1,   154,   146,   147,   148,   149,    -1,    -1,   152,    -1,
   154,   146,   147,   148,   149,    -1,    -1,   152,    -1,   154,
   146,   147,   148,   149,    -1,    -1,   152,    -1,   154,   146,
   147,   148,   149,    -1,    -1,   152,    -1,   154,   146,   147,
   148,   149,    -1,    -1,   152,    -1,   154,   146,   147,   148,
   149,    -1,    -1,   152,    -1,   154,   146,   147,   148,   149,
    -1,    -1,   152,    -1,   154,   146,   147,   148,   149,    -1,
    -1,   152,    -1,   154,   146,   147,   148,   149,    -1,    -1,
   152,    -1,   154,   146,   147,   148,   149,    -1,    -1,   152,
    -1,   154,   146,   147,   148,   149,    -1,    -1,   152,    -1,
   154,   146,   147,   148,   149,    -1,    -1,   152,    -1,   154,
   146,   147,   148,   149,    -1,    -1,   152,    -1,   154,   146,
   147,   148,   149,    -1,    -1,   152,    -1,   154,   146,   147,
   148,   149,    -1,    -1,   152,    -1,   154,   146,   147,   148,
   149,    -1,    -1,   152,    -1,   154,   146,   147,   148,   149,
    -1,    -1,   152,    -1,   154,   146,   147,   148,   149,    -1,
    -1,   152,    -1,   154,   146,   147,   148,   149,    -1,    -1,
   152,    -1,   154,   146,   147,   148,   149,    -1,    -1,   152,
    -1,   154,   146,   147,   148,   149,    -1,    -1,   152,    -1,
   154,   146,   147,   148,   149,    -1,    -1,   152,    -1,   154,
   146,   147,   148,   149,    -1,    -1,   152,    -1,   154,   146,
   147,   148,   149,    -1,    -1,   152,    -1,   154,   146,   147,
   148,   149,    -1,    -1,   152,    -1,   154,   146,   147,   148,
   149,    -1,    -1,   152,    -1,   154,   146,   147,   148,   149,
    -1,    -1,   152,    -1,   154,   146,   147,   148,   149,    -1,
    -1,   152,    -1,   154
};
/* -*-C-*-  Note some compilers choke on comments on `#line' lines.  */
Christophe Geuzaine's avatar
Christophe Geuzaine committed
#line 3 "/usr/local/share/bison.simple"

/* Skeleton output parser for bison,
   Copyright (C) 1984, 1989, 1990 Free Software Foundation, Inc.

   This program is free software; you can redistribute it and/or modify
   it under the terms of the GNU General Public License as published by
   the Free Software Foundation; either version 2, or (at your option)
   any later version.

   This program is distributed in the hope that it will be useful,
   but WITHOUT ANY WARRANTY; without even the implied warranty of
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
   GNU General Public License for more details.

   You should have received a copy of the GNU General Public License
   along with this program; if not, write to the Free Software
Christophe Geuzaine's avatar
Christophe Geuzaine committed
   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */

/* As a special exception, when this file is copied by Bison into a
   Bison output file, you may use that output file without restriction.
   This special exception was added by the Free Software Foundation
   in version 1.24 of Bison.  */

Christophe Geuzaine's avatar
Christophe Geuzaine committed
#ifndef alloca
#ifdef __GNUC__
#define alloca __builtin_alloca
#else /* not GNU C.  */
Christophe Geuzaine's avatar
Christophe Geuzaine committed
#if (!defined (__STDC__) && defined (sparc)) || defined (__sparc__) || defined (__sparc) || defined (__sgi)
Christophe Geuzaine's avatar
Christophe Geuzaine committed
#if defined (MSDOS) && !defined (__TURBOC__)
#include <malloc.h>
#else /* not MSDOS, or __TURBOC__ */
#if defined(_AIX)
Christophe Geuzaine's avatar
Christophe Geuzaine committed
#include <malloc.h>
Christophe Geuzaine's avatar
Christophe Geuzaine committed
#else /* not MSDOS, __TURBOC__, or _AIX */
#ifdef __hpux
#ifdef __cplusplus
extern "C" {
void *alloca (unsigned int);
};
#else /* not __cplusplus */
void *alloca ();
#endif /* not __cplusplus */
#endif /* __hpux */
#endif /* not _AIX */
#endif /* not MSDOS, or __TURBOC__ */
Christophe Geuzaine's avatar
Christophe Geuzaine committed
#endif /* not sparc.  */
#endif /* not GNU C.  */
#endif /* alloca not defined.  */
Christophe Geuzaine's avatar
Christophe Geuzaine committed
/* This is the parser code that is written into each bison parser
  when the %semantic_parser declaration is not specified in the grammar.
  It was written by Richard Stallman by simplifying the hairy parser
  used when %semantic_parser is specified.  */

/* Note: there must be only one dollar sign in this file.
   It is replaced by the list of actions, each action
   as one case of the switch.  */

#define yyerrok		(yyerrstatus = 0)
#define yyclearin	(yychar = YYEMPTY)
#define YYEMPTY		-2
#define YYEOF		0
Christophe Geuzaine's avatar
Christophe Geuzaine committed
#define YYACCEPT	return(0)
#define YYABORT 	return(1)
#define YYERROR		goto yyerrlab1
/* Like YYERROR except do call yyerror.
   This remains here temporarily to ease the
   transition to the new meaning of YYERROR, for GCC.
   Once GCC version 2 has supplanted version 1, this can go.  */
#define YYFAIL		goto yyerrlab
#define YYRECOVERING()  (!!yyerrstatus)
#define YYBACKUP(token, value) \
do								\
  if (yychar == YYEMPTY && yylen == 1)				\
    { yychar = (token), yylval = (value);			\
      yychar1 = YYTRANSLATE (yychar);				\
      YYPOPSTACK;						\
      goto yybackup;						\
    }								\
  else								\
    { yyerror ("syntax error: cannot back up"); YYERROR; }	\
while (0)

#define YYTERROR	1
#define YYERRCODE	256

#ifndef YYPURE
#define YYLEX		yylex()
#endif

#ifdef YYPURE
#ifdef YYLSP_NEEDED
#ifdef YYLEX_PARAM
#define YYLEX		yylex(&yylval, &yylloc, YYLEX_PARAM)
#else
#define YYLEX		yylex(&yylval, &yylloc)
#endif
#else /* not YYLSP_NEEDED */
#ifdef YYLEX_PARAM
#define YYLEX		yylex(&yylval, YYLEX_PARAM)
#else
#define YYLEX		yylex(&yylval)
#endif
#endif /* not YYLSP_NEEDED */
#endif

/* If nonreentrant, generate the variables here */

#ifndef YYPURE

int	yychar;			/*  the lookahead symbol		*/
YYSTYPE	yylval;			/*  the semantic value of the		*/
				/*  lookahead symbol			*/

#ifdef YYLSP_NEEDED
YYLTYPE yylloc;			/*  location data for the lookahead	*/
				/*  symbol				*/
#endif

int yynerrs;			/*  number of parse errors so far       */
#endif  /* not YYPURE */

#if YYDEBUG != 0
int yydebug;			/*  nonzero means print parse trace	*/
/* Since this is uninitialized, it does not stop multiple parsers
   from coexisting.  */
#endif

/*  YYINITDEPTH indicates the initial size of the parser's stacks	*/

#ifndef	YYINITDEPTH
#define YYINITDEPTH 200
#endif

/*  YYMAXDEPTH is the maximum size the stacks can grow to
    (effective only if the built-in stack extension method is used).  */

#if YYMAXDEPTH == 0
#undef YYMAXDEPTH
#endif

#ifndef YYMAXDEPTH
#define YYMAXDEPTH 10000
#endif
Christophe Geuzaine's avatar
Christophe Geuzaine committed

Christophe Geuzaine's avatar
Christophe Geuzaine committed
/* Prevent warning if -Wstrict-prototypes.  */
#ifdef __GNUC__
int yyparse (void);
#endif

#if __GNUC__ > 1		/* GNU C and GNU C++ define this.  */
#define __yy_memcpy(TO,FROM,COUNT)	__builtin_memcpy(TO,FROM,COUNT)
#else				/* not GNU C or C++ */
#ifndef __cplusplus

/* This is the most reliable way to avoid incompatibilities
   in available built-in functions on various systems.  */
static void
__yy_memcpy (to, from, count)
     char *to;
     char *from;
Christophe Geuzaine's avatar
Christophe Geuzaine committed
     int count;
{
  register char *f = from;
  register char *t = to;
  register int i = count;

  while (i-- > 0)
    *t++ = *f++;
}

#else /* __cplusplus */

/* This is the most reliable way to avoid incompatibilities
   in available built-in functions on various systems.  */
static void
Christophe Geuzaine's avatar
Christophe Geuzaine committed
__yy_memcpy (char *to, char *from, int count)
Christophe Geuzaine's avatar
Christophe Geuzaine committed
  register char *f = from;
Christophe Geuzaine's avatar
Christophe Geuzaine committed
  register char *t = to;
Christophe Geuzaine's avatar
Christophe Geuzaine committed
#line 196 "/usr/local/share/bison.simple"

/* The user can define YYPARSE_PARAM as the name of an argument to be passed
   into yyparse.  The argument should have type void *.
   It should actually point to an object.
   Grammar actions can access the variable by casting it
   to the proper pointer type.  */

#ifdef YYPARSE_PARAM
#ifdef __cplusplus
#define YYPARSE_PARAM_ARG void *YYPARSE_PARAM
#define YYPARSE_PARAM_DECL
#else /* not __cplusplus */
#define YYPARSE_PARAM_ARG YYPARSE_PARAM
#define YYPARSE_PARAM_DECL void *YYPARSE_PARAM;
#endif /* not __cplusplus */
#else /* not YYPARSE_PARAM */
#define YYPARSE_PARAM_ARG
#define YYPARSE_PARAM_DECL
#endif /* not YYPARSE_PARAM */

int
yyparse(YYPARSE_PARAM_ARG)
     YYPARSE_PARAM_DECL
{
  register int yystate;
  register int yyn;
  register short *yyssp;
  register YYSTYPE *yyvsp;
  int yyerrstatus;	/*  number of tokens to shift before error messages enabled */
  int yychar1 = 0;		/*  lookahead token as an internal (translated) token number */

  short	yyssa[YYINITDEPTH];	/*  the state stack			*/
  YYSTYPE yyvsa[YYINITDEPTH];	/*  the semantic value stack		*/

  short *yyss = yyssa;		/*  refer to the stacks thru separate pointers */
  YYSTYPE *yyvs = yyvsa;	/*  to allow yyoverflow to reallocate them elsewhere */

#ifdef YYLSP_NEEDED
  YYLTYPE yylsa[YYINITDEPTH];	/*  the location stack			*/
  YYLTYPE *yyls = yylsa;
  YYLTYPE *yylsp;

#define YYPOPSTACK   (yyvsp--, yyssp--, yylsp--)
#else
#define YYPOPSTACK   (yyvsp--, yyssp--)
#endif

  int yystacksize = YYINITDEPTH;

#ifdef YYPURE
  int yychar;
  YYSTYPE yylval;
  int yynerrs;
#ifdef YYLSP_NEEDED
  YYLTYPE yylloc;
#endif
#endif

  YYSTYPE yyval;		/*  the variable used to return		*/
				/*  semantic values from the action	*/
				/*  routines				*/

  int yylen;

#if YYDEBUG != 0
  if (yydebug)
    fprintf(stderr, "Starting parse\n");
#endif

  yystate = 0;
  yyerrstatus = 0;
  yynerrs = 0;
  yychar = YYEMPTY;		/* Cause a token to be read.  */

  /* Initialize stack pointers.
     Waste one element of value and location stack
     so that they stay on the same level as the state stack.
     The wasted elements are never initialized.  */

  yyssp = yyss - 1;
  yyvsp = yyvs;
#ifdef YYLSP_NEEDED
  yylsp = yyls;
#endif

/* Push a new state, which is found in  yystate  .  */
/* In all cases, when you get here, the value and location stacks
   have just been pushed. so pushing a state here evens the stacks.  */
yynewstate:

  *++yyssp = yystate;

  if (yyssp >= yyss + yystacksize - 1)
    {
      /* Give user a chance to reallocate the stack */
      /* Use copies of these so that the &'s don't force the real ones into memory. */
      YYSTYPE *yyvs1 = yyvs;
      short *yyss1 = yyss;
#ifdef YYLSP_NEEDED
      YYLTYPE *yyls1 = yyls;
#endif

      /* Get the current used size of the three stacks, in elements.  */
      int size = yyssp - yyss + 1;

#ifdef yyoverflow
      /* Each stack pointer address is followed by the size of
	 the data in use in that stack, in bytes.  */
#ifdef YYLSP_NEEDED
      /* This used to be a conditional around just the two extra args,
	 but that might be undefined if yyoverflow is a macro.  */
      yyoverflow("parser stack overflow",
		 &yyss1, size * sizeof (*yyssp),
		 &yyvs1, size * sizeof (*yyvsp),
		 &yyls1, size * sizeof (*yylsp),
		 &yystacksize);
#else
      yyoverflow("parser stack overflow",
		 &yyss1, size * sizeof (*yyssp),
		 &yyvs1, size * sizeof (*yyvsp),
		 &yystacksize);
#endif

      yyss = yyss1; yyvs = yyvs1;
#ifdef YYLSP_NEEDED
      yyls = yyls1;
#endif
#else /* no yyoverflow */
      /* Extend the stack our own way.  */
      if (yystacksize >= YYMAXDEPTH)
	{
	  yyerror("parser stack overflow");
	  return 2;
	}
      yystacksize *= 2;
      if (yystacksize > YYMAXDEPTH)
	yystacksize = YYMAXDEPTH;
Christophe Geuzaine's avatar
Christophe Geuzaine committed
      yyss = (short *) alloca (yystacksize * sizeof (*yyssp));
      __yy_memcpy ((char *)yyss, (char *)yyss1, size * sizeof (*yyssp));
      yyvs = (YYSTYPE *) alloca (yystacksize * sizeof (*yyvsp));
      __yy_memcpy ((char *)yyvs, (char *)yyvs1, size * sizeof (*yyvsp));
Christophe Geuzaine's avatar
Christophe Geuzaine committed
      yyls = (YYLTYPE *) alloca (yystacksize * sizeof (*yylsp));
      __yy_memcpy ((char *)yyls, (char *)yyls1, size * sizeof (*yylsp));
#endif
#endif /* no yyoverflow */

      yyssp = yyss + size - 1;
      yyvsp = yyvs + size - 1;
#ifdef YYLSP_NEEDED
      yylsp = yyls + size - 1;
#endif

#if YYDEBUG != 0
      if (yydebug)
	fprintf(stderr, "Stack size increased to %d\n", yystacksize);
#endif

      if (yyssp >= yyss + yystacksize - 1)
	YYABORT;
    }

#if YYDEBUG != 0
  if (yydebug)
    fprintf(stderr, "Entering state %d\n", yystate);
#endif

  goto yybackup;
 yybackup:

/* Do appropriate processing given the current state.  */
/* Read a lookahead token if we need one and don't already have one.  */
/* yyresume: */

  /* First try to decide what to do without reference to lookahead token.  */

  yyn = yypact[yystate];
  if (yyn == YYFLAG)
    goto yydefault;

  /* Not known => get a lookahead token if don't already have one.  */

  /* yychar is either YYEMPTY or YYEOF
     or a valid token in external form.  */

  if (yychar == YYEMPTY)
    {
#if YYDEBUG != 0
      if (yydebug)
	fprintf(stderr, "Reading a token: ");
#endif
      yychar = YYLEX;
    }

  /* Convert token to internal form (in yychar1) for indexing tables with */

  if (yychar <= 0)		/* This means end of input. */
    {
      yychar1 = 0;
      yychar = YYEOF;		/* Don't call YYLEX any more */

#if YYDEBUG != 0
      if (yydebug)
	fprintf(stderr, "Now at end of input.\n");
#endif
    }
  else
    {
      yychar1 = YYTRANSLATE(yychar);

#if YYDEBUG != 0
      if (yydebug)
	{
	  fprintf (stderr, "Next token is %d (%s", yychar, yytname[yychar1]);
	  /* Give the individual parser a way to print the precise meaning
	     of a token, for further debugging info.  */
#ifdef YYPRINT
	  YYPRINT (stderr, yychar, yylval);
#endif
	  fprintf (stderr, ")\n");
	}
#endif
    }

  yyn += yychar1;
  if (yyn < 0 || yyn > YYLAST || yycheck[yyn] != yychar1)
    goto yydefault;

  yyn = yytable[yyn];

  /* yyn is what to do for this token type in this state.
     Negative => reduce, -yyn is rule number.
     Positive => shift, yyn is new state.
       New state is final state => don't bother to shift,
       just return success.
     0, or most negative number => error.  */

  if (yyn < 0)
    {
      if (yyn == YYFLAG)
	goto yyerrlab;
      yyn = -yyn;
      goto yyreduce;
    }
  else if (yyn == 0)
    goto yyerrlab;

  if (yyn == YYFINAL)
    YYACCEPT;

  /* Shift the lookahead token.  */

#if YYDEBUG != 0
  if (yydebug)
    fprintf(stderr, "Shifting token %d (%s), ", yychar, yytname[yychar1]);
#endif

  /* Discard the token being shifted unless it is eof.  */
  if (yychar != YYEOF)
    yychar = YYEMPTY;

  *++yyvsp = yylval;
#ifdef YYLSP_NEEDED
  *++yylsp = yylloc;
#endif

  /* count tokens shifted since error; after three, turn off error status.  */
  if (yyerrstatus) yyerrstatus--;

  yystate = yyn;
  goto yynewstate;

/* Do the default action for the current state.  */
yydefault:

  yyn = yydefact[yystate];
  if (yyn == 0)
    goto yyerrlab;

/* Do a reduction.  yyn is the number of a rule to reduce with.  */
yyreduce:
  yylen = yyr2[yyn];
  if (yylen > 0)
    yyval = yyvsp[1-yylen]; /* implement default value of the action */

#if YYDEBUG != 0
  if (yydebug)
    {
      int i;

      fprintf (stderr, "Reducing via rule %d (line %d), ",
	       yyn, yyrline[yyn]);

      /* Print the symbols being reduced, and their result.  */
      for (i = yyprhs[yyn]; yyrhs[i] > 0; i++)
	fprintf (stderr, "%s ", yytname[yyrhs[i]]);
      fprintf (stderr, " -> %s\n", yytname[yyr1[yyn]]);
    }
#endif


  switch (yyn) {

case 4:
Christophe Geuzaine's avatar
Christophe Geuzaine committed
#line 122 "Gmsh.y"
{
      Msg(PARSER_INFO,"STL File Format");
      STL_Surf = Create_Surface(1,MSH_SURF_STL,1);
      STL_Surf->STL = new STL_Data;
      return 1;
    ;
    break;}
case 5:
Christophe Geuzaine's avatar
Christophe Geuzaine committed
#line 136 "Gmsh.y"
{
      STL_Surf->STL->Add_Facet( yyvsp[-12].d, yyvsp[-11].d, yyvsp[-10].d,
				yyvsp[-8].d, yyvsp[-7].d, yyvsp[-6].d,
				yyvsp[-4].d, yyvsp[-3].d, yyvsp[-2].d);
      return 1;
    ;
    break;}
case 6:
Christophe Geuzaine's avatar
Christophe Geuzaine committed
#line 143 "Gmsh.y"
{
      Msg(PARSER_INFO,"STL File Format Read");
      Tree_Add(THEM->Surfaces, &STL_Surf);
      return 1;
    ;
    break;}
case 9:
Christophe Geuzaine's avatar
Christophe Geuzaine committed
#line 160 "Gmsh.y"
Christophe Geuzaine's avatar
Christophe Geuzaine committed
#line 161 "Gmsh.y"
Christophe Geuzaine's avatar
Christophe Geuzaine committed
#line 162 "Gmsh.y"
Christophe Geuzaine's avatar
Christophe Geuzaine committed
#line 163 "Gmsh.y"
Christophe Geuzaine's avatar
Christophe Geuzaine committed
#line 168 "Gmsh.y"
{
      Msg(PARSER_INFO,"Step Iso-10303-21 File Format");
      Create_Step_Solid_BRep();
    ;
    break;}
case 14:
Christophe Geuzaine's avatar
Christophe Geuzaine committed
#line 173 "Gmsh.y"
{
      Msg(PARSER_INFO,"Step Iso-10303-21 File Format Read");
      Resolve_BREP ();
    ;
    break;}
case 18:
Christophe Geuzaine's avatar
Christophe Geuzaine committed
#line 184 "Gmsh.y"
Christophe Geuzaine's avatar
Christophe Geuzaine committed
#line 187 "Gmsh.y"
Christophe Geuzaine's avatar
Christophe Geuzaine committed
#line 191 "Gmsh.y"
Christophe Geuzaine's avatar
Christophe Geuzaine committed
#line 197 "Gmsh.y"
{
        Add_Cartesian_Point((int)yyvsp[-8].d,yyvsp[-4].c,yyvsp[-2].v[0],yyvsp[-2].v[1],yyvsp[-2].v[2]);
    ;
    break;}
case 22:
Christophe Geuzaine's avatar
Christophe Geuzaine committed
#line 203 "Gmsh.y"
{
       Add_BSpline_Curve_With_Knots ((int)yyvsp[-22].d, yyvsp[-18].c, (int) yyvsp[-16].d, yyvsp[-14].l,	yyvsp[-6].l, yyvsp[-4].l, 0., 1.);
    ;
    break;}
case 23:
Christophe Geuzaine's avatar
Christophe Geuzaine committed
#line 210 "Gmsh.y"
{
      Add_BSpline_Surface_With_Knots ((int)yyvsp[-30].d, yyvsp[-26].c, (int) yyvsp[-24].d, (int) yyvsp[-22].d, yyvsp[-20].l, yyvsp[-10].l,
				      yyvsp[-8].l, yyvsp[-6].l, yyvsp[-4].l, 0., 1., 0., 1. );
    ;
    break;}
case 24:
Christophe Geuzaine's avatar
Christophe Geuzaine committed
#line 216 "Gmsh.y"
{
      Add_Edge_Curve ((int)yyvsp[-14].d, yyvsp[-10].c , (int)yyvsp[-8].d , (int)yyvsp[-6].d, (int)yyvsp[-4].d);
    ;
    break;}
case 25:
Christophe Geuzaine's avatar
Christophe Geuzaine committed
#line 220 "Gmsh.y"
{
      Add_Face_Outer_Bound((int)yyvsp[-10].d,yyvsp[-6].c,(int)yyvsp[-4].d,yyvsp[-2].i,1);
    ;
    break;}
case 26:
Christophe Geuzaine's avatar
Christophe Geuzaine committed
#line 224 "Gmsh.y"
{
      /* La je dois voir la norme ! Face_Bound : trou externe a la surface ! */
      Msg(PARSER_INFO,"Found a Face Bound");
      Add_Face_Outer_Bound((int)yyvsp[-10].d,yyvsp[-6].c,(int)yyvsp[-4].d,yyvsp[-2].i,0);
    ;
    break;}
Loading
Loading full blame...