Skip to content
Snippets Groups Projects
Gmsh.tab.cpp 248 KiB
Newer Older
    by GNU Bison version 1.28  */

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

#define	tDOUBLE	257
#define	tSTRING	258
#define	tBIGSTR	259
#define	tEND	260
#define	tAFFECT	261
#define	tDOTS	262
#define	tPi	263
#define	tExp	264
#define	tLog	265
#define	tLog10	266
#define	tSqrt	267
#define	tSin	268
#define	tAsin	269
#define	tCos	270
#define	tAcos	271
#define	tTan	272
#define	tRand	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	tPrintf	285
#define	tSprintf	286
#define	tDraw	287
#define	tPoint	288
#define	tCircle	289
#define	tEllipsis	290
#define	tLine	291
#define	tSurface	292
#define	tSpline	293
#define	tVolume	294
#define	tCharacteristic	295
#define	tLength	296
#define	tParametric	297
#define	tElliptic	298
#define	tPlane	299
#define	tRuled	300
#define	tTransfinite	301
#define	tComplex	302
#define	tPhysical	303
#define	tUsing	304
#define	tBump	305
#define	tProgression	306
#define	tRotate	307
#define	tTranslate	308
#define	tSymmetry	309
#define	tDilate	310
#define	tExtrude	311
#define	tDuplicata	312
#define	tLoop	313
#define	tRecombine	314
#define	tDelete	315
#define	tCoherence	316
#define	tIntersect	317
#define	tView	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	tFor	340
#define	tIn	341
#define	tEndFor	342
#define	tIf	343
#define	tEndIf	344
#define	tExit	345
#define	tReturn	346
#define	tCall	347
#define	tFunction	348
#define	tMesh	349
#define	tB_SPLINE_SURFACE_WITH_KNOTS	350
#define	tB_SPLINE_CURVE_WITH_KNOTS	351
#define	tCARTESIAN_POINT	352
#define	tTRUE	353
#define	tFALSE	354
#define	tUNSPECIFIED	355
#define	tU	356
#define	tV	357
#define	tEDGE_CURVE	358
#define	tVERTEX_POINT	359
#define	tORIENTED_EDGE	360
#define	tPLANE	361
#define	tFACE_OUTER_BOUND	362
#define	tEDGE_LOOP	363
#define	tADVANCED_FACE	364
#define	tVECTOR	365
#define	tDIRECTION	366
#define	tAXIS2_PLACEMENT_3D	367
#define	tISO	368
#define	tENDISO	369
#define	tENDSEC	370
#define	tDATA	371
#define	tHEADER	372
#define	tFILE_DESCRIPTION	373
#define	tFILE_SCHEMA	374
#define	tFILE_NAME	375
#define	tMANIFOLD_SOLID_BREP	376
#define	tCLOSED_SHELL	377
#define	tADVANCED_BREP_SHAPE_REPRESENTATION	378
#define	tFACE_BOUND	379
#define	tCYLINDRICAL_SURFACE	380
#define	tCONICAL_SURFACE	381
#define	tCIRCLE	382
#define	tTRIMMED_CURVE	383
#define	tGEOMETRIC_SET	384
#define	tCOMPOSITE_CURVE_SEGMENT	385
#define	tCONTINUOUS	386
#define	tCOMPOSITE_CURVE	387
#define	tTOROIDAL_SURFACE	388
#define	tPRODUCT_DEFINITION	389
#define	tPRODUCT_DEFINITION_SHAPE	390
#define	tSHAPE_DEFINITION_REPRESENTATION	391
#define	tELLIPSE	392
#define	tTrimmed	393
#define	tSolid	394
#define	tEndSolid	395
#define	tVertex	396
#define	tFacet	397
#define	tNormal	398
#define	tOuter	399
#define	tLoopSTL	400
#define	tEndLoop	401
#define	tEndFacet	402
#define	tAFFECTPLUS	403
#define	tAFFECTMINUS	404
#define	tAFFECTTIMES	405
#define	tAFFECTDIVIDE	406
#define	tOR	407
#define	tAND	408
#define	tEQUAL	409
#define	tNOTEQUAL	410
#define	tAPPROXEQUAL	411
#define	tLESSOREQUAL	412
#define	tGREATEROREQUAL	413
#define	tCROSSPRODUCT	414
#define	tPLUSPLUS	415
#define	tMINUSMINUS	416
#define	UNARYPREC	417
// $Id: Gmsh.tab.cpp,v 1.70 2001-02-08 16:32:15 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"
#include "OpenFile.h"
#include "FunctionManager.h"
#include "ColorTable.h"
#include "Timer.h"
#include "CreateFile.h"
#ifdef __DECCXX // bug in bison
Christophe Geuzaine's avatar
Christophe Geuzaine committed
#include <alloca.h>
#endif

int     Force_ViewNumber = 0 ;
List_T *Symbol_L;
extern Mesh      *THEM;
extern Post_View *ActualView;

static FILE          *yyinTab[MAX_OPEN_FILES];
static int            yylinenoTab[MAX_OPEN_FILES];
static fpos_t         yyposImbricatedLoopsTab[MAX_OPEN_FILES];
static double         LoopControlVariablesTab[MAX_OPEN_FILES][3];
static char*          LoopControlVariablesNameTab[MAX_OPEN_FILES];
static char           yynameTab[MAX_OPEN_FILES][NAME_STR_L];
static char           tmpstring[NAME_STR_L];
static char           tmpstring2[NAME_STR_L], tmpstring3[NAME_STR_L];
static Symbol         TheSymbol, *pSymbol;
static Surface       *STL_Surf;
static Shape          TheShape;
static int            i,j,k,flag,RecursionLevel=0,ImbricatedLoop = 0;
static int            Last_NumberOfPoints = 0;
static double         d, *pd;
static ExtrudeParams  extr;
static List_T         *ListOfDouble_L,*ListOfDouble2_L;
static List_T         *ListOfListOfDouble_L, *ListOfColor_L=NULL;
static char           *str;
Christophe Geuzaine's avatar
Christophe Geuzaine committed
static void           *pNumOpt;
static char          **pStrOpt, *pStrViewOpt;
static unsigned int   *pColOpt;
static StringXString  *pStrCat;
static StringXNumber  *pNumCat;
static StringXColor   *pColCat;

char *strsave(char *ptr);
void  yyerror (char *s);
void  vyyerror (char *fmt, ...);
void  skip_until (char *skip, char *until);
#line 69 "Gmsh.y"
  unsigned int u;
  double   d;
  double   v[5];
  Shape    s;
  List_T  *l;
} YYSTYPE;
#include <stdio.h>

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



#define	YYFINAL		1546
#define YYTRANSLATE(x) ((unsigned)(x) <= 417 ? yytranslate[x] : 261)

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,
     2,     2,   169,     2,     2,     2,   167,     2,     2,   174,
   175,   165,   163,   179,   164,   178,   166,     2,     2,     2,
     2,     2,     2,     2,     2,     2,     2,     2,     2,   159,
     2,   161,   153,     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,
   176,     2,   177,   173,     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,   180,     2,   181,     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,
     2,     2,     2,     2,     2,     1,     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,   144,   145,   146,
   147,   148,   149,   150,   151,   152,   154,   155,   156,   157,
   158,   160,   162,   168,   170,   171,   172
};

#if YYDEBUG != 0
static const short yyprhs[] = {     0,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
     0,     2,     4,     6,     9,    11,    33,    35,    36,    39,
    41,    43,    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,   518,   520,   526,   534,   541,   550,   551,
   554,   557,   560,   563,   566,   569,   572,   575,   578,   581,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
   584,   587,   589,   593,   594,   608,   610,   614,   615,   629,
   631,   635,   636,   650,   652,   656,   657,   677,   679,   683,
   684,   704,   706,   710,   711,   731,   733,   737,   738,   764,
   766,   770,   771,   797,   799,   803,   804,   830,   832,   836,
   837,   869,   871,   875,   876,   908,   910,   914,   915,   947,
   952,   960,   967,   971,   978,   982,   989,   994,  1002,  1007,
  1015,  1020,  1028,  1033,  1041,  1048,  1060,  1067,  1079,  1086,
  1098,  1105,  1117,  1124,  1136,  1143,  1155,  1161,  1173,  1179,
  1191,  1200,  1212,  1220,  1229,  1242,  1249,  1255,  1263,  1271,
  1284,  1292,  1302,  1320,  1328,  1337,  1346,  1354,  1366,  1372,
  1381,  1394,  1403,  1426,  1447,  1456,  1465,  1471,  1480,  1488,
  1497,  1503,  1515,  1521,  1531,  1533,  1535,  1537,  1538,  1541,
  1546,  1551,  1558,  1562,  1566,  1570,  1573,  1576,  1583,  1592,
  1601,  1612,  1614,  1617,  1619,  1623,  1628,  1630,  1639,  1652,
  1661,  1674,  1683,  1696,  1708,  1724,  1726,  1729,  1739,  1742,
  1749,  1759,  1769,  1778,  1787,  1796,  1803,  1808,  1811,  1814,
  1816,  1819,  1821,  1823,  1825,  1827,  1829,  1831,  1835,  1838,
  1841,  1844,  1848,  1852,  1856,  1860,  1864,  1868,  1872,  1876,
  1880,  1884,  1888,  1892,  1896,  1900,  1906,  1911,  1916,  1921,
  1926,  1931,  1936,  1941,  1946,  1951,  1956,  1963,  1968,  1973,
  1978,  1983,  1988,  1993,  2000,  2007,  2014,  2019,  2021,  2023,
  2025,  2030,  2033,  2039,  2042,  2048,  2052,  2061,  2066,  2076,
  2081,  2091,  2095,  2101,  2103,  2106,  2109,  2113,  2117,  2129,
  2139,  2147,  2155,  2156,  2160,  2162,  2166,  2167,  2171,  2175,
  2177,  2181,  2182,  2184,  2188,  2192,  2194,  2196,  2200,  2204,
  2208,  2214,  2224,  2232,  2238,  2240,  2246,  2250,  2259,  2261,
  2265,  2267,  2272
static const short yyrhs[] = {   184,
     0,   183,     0,   189,     0,     1,     6,     0,   140,     0,
   143,   144,   244,   244,   244,   145,   146,   142,   244,   244,
   244,   142,   244,   244,   244,   142,   244,   244,   244,   147,
   148,     0,   141,     0,     0,   184,   185,     0,   186,     0,
   188,     0,   187,     0,   114,     6,     0,   115,     6,     0,
   117,     6,     0,   116,     6,     0,   118,     6,     0,   119,
   174,   251,   179,     5,   175,     6,     0,   120,   174,   251,
   175,     6,     0,   121,   174,     5,   179,     5,   179,   251,
   179,   251,   179,     5,   179,     5,   179,     5,   175,     6,
     0,     3,     7,    98,   174,     5,   179,   249,   175,     6,
     0,     3,     7,    97,   174,     5,   179,   246,   179,   255,
   179,   245,   179,   245,   179,   245,   179,   255,   179,   255,
   179,   245,   175,     6,     0,     3,     7,    96,   174,     5,
   179,   246,   179,   246,   179,   253,   179,   245,   179,   245,
   179,   245,   179,   245,   179,   255,   179,   255,   179,   255,
   179,   255,   179,   245,   175,     6,     0,     3,     7,   104,
   174,     5,   179,     3,   179,     3,   179,     3,   179,   245,
   175,     6,     0,     3,     7,   108,   174,     5,   179,     3,
   179,   245,   175,     6,     0,     3,     7,   125,   174,     5,
   179,     3,   179,   245,   175,     6,     0,     3,     7,   106,
   174,     5,   179,   165,   179,   165,   179,   246,   179,   245,
   175,     6,     0,     3,     7,   109,   174,     5,   179,   255,
   175,     6,     0,     3,     7,   110,   174,     5,   179,   255,
   179,     3,   179,   245,   175,     6,     0,     3,     7,   105,
   174,     5,   179,     3,   175,     6,     0,     3,     7,   111,
   174,     5,   179,     3,   179,   246,   175,     6,     0,     3,
     7,   113,   174,     5,   179,     3,   179,     3,   179,     3,
   175,     6,     0,     3,     7,   112,   174,     5,   179,   249,
   175,     6,     0,     3,     7,   107,   174,     5,   179,     3,
   175,     6,     0,     3,     7,    37,   174,     5,   179,     3,
   179,     3,   175,     6,     0,     3,     7,   123,   174,     5,
   179,   255,   175,     6,     0,     3,     7,   124,   174,     5,
   179,   255,   179,     3,   175,     6,     0,     3,     7,   122,
   174,     5,   179,     3,   175,     6,     0,     3,     7,   126,
   174,     5,   179,     3,   179,   246,   175,     6,     0,     3,
     7,   127,   174,     5,   179,     3,   179,   246,   179,   246,
   175,     6,     0,     3,     7,   134,   174,     5,   179,     3,
   179,   246,   179,   246,   175,     6,     0,     3,     7,   128,
   174,     5,   179,     3,   179,   246,   175,     6,     0,     3,
     7,   138,   174,     5,   179,     3,   179,   246,   179,   246,
   175,     6,     0,     3,     7,   129,   174,     5,   179,     3,
   179,   255,   179,   255,   179,   245,   179,   245,   175,     6,
     0,     3,     7,   130,   174,     5,   179,   255,   175,     6,
     0,     3,     7,   131,   174,   132,   179,   245,   179,     3,
   175,     6,     0,     3,     7,   133,   174,     5,   179,   255,
   179,   245,   175,     6,     0,     3,     7,   135,   174,     5,
   179,     5,   179,     3,   179,     3,   175,     6,     0,     3,
     7,   136,   174,     5,   179,     5,   179,     3,   175,     6,
     0,     3,     7,   137,   174,     3,   179,     3,   175,     6,
     0,     0,   189,   190,     0,   192,     0,   191,     0,   230,
     0,   231,     0,   232,     0,   235,     0,   236,     0,   239,
     0,   242,     0,   243,     0,   238,     0,   237,     0,    31,
   174,     5,   175,     6,     0,    31,   174,     5,   179,   256,
   175,     6,     0,    64,     5,   180,   193,   181,     6,     0,
    64,     5,     4,   249,   180,   193,   181,     6,     0,     0,
   193,   195,     0,   193,   198,     0,   193,   201,     0,   193,
   204,     0,   193,   207,     0,   193,   210,     0,   193,   213,
     0,   193,   216,     0,   193,   219,     0,   193,   222,     0,
   193,   225,     0,   193,   228,     0,   246,     0,   194,   179,
   246,     0,     0,    76,   174,   246,   179,   246,   179,   246,
   175,   196,   180,   194,   181,     6,     0,   246,     0,   197,
   179,   246,     0,     0,    77,   174,   246,   179,   246,   179,
   246,   175,   199,   180,   197,   181,     6,     0,   246,     0,
   200,   179,   246,     0,     0,    78,   174,   246,   179,   246,
   179,   246,   175,   202,   180,   200,   181,     6,     0,   246,
     0,   203,   179,   246,     0,     0,    73,   174,   246,   179,
   246,   179,   246,   179,   246,   179,   246,   179,   246,   175,
   205,   180,   203,   181,     6,     0,   246,     0,   206,   179,
   246,     0,     0,    74,   174,   246,   179,   246,   179,   246,
   179,   246,   179,   246,   179,   246,   175,   208,   180,   206,
   181,     6,     0,   246,     0,   209,   179,   246,     0,     0,
    75,   174,   246,   179,   246,   179,   246,   179,   246,   179,
   246,   179,   246,   175,   211,   180,   209,   181,     6,     0,
   246,     0,   212,   179,   246,     0,     0,    70,   174,   246,
   179,   246,   179,   246,   179,   246,   179,   246,   179,   246,
   179,   246,   179,   246,   179,   246,   175,   214,   180,   212,
   181,     6,     0,   246,     0,   215,   179,   246,     0,     0,
    71,   174,   246,   179,   246,   179,   246,   179,   246,   179,
   246,   179,   246,   179,   246,   179,   246,   179,   246,   175,
   217,   180,   215,   181,     6,     0,   246,     0,   218,   179,
   246,     0,     0,    72,   174,   246,   179,   246,   179,   246,
   179,   246,   179,   246,   179,   246,   179,   246,   179,   246,
   179,   246,   175,   220,   180,   218,   181,     6,     0,   246,
     0,   221,   179,   246,     0,     0,    67,   174,   246,   179,
   246,   179,   246,   179,   246,   179,   246,   179,   246,   179,
   246,   179,   246,   179,   246,   179,   246,   179,   246,   179,
   246,   175,   223,   180,   221,   181,     6,     0,   246,     0,
   224,   179,   246,     0,     0,    68,   174,   246,   179,   246,
   179,   246,   179,   246,   179,   246,   179,   246,   179,   246,
   179,   246,   179,   246,   179,   246,   179,   246,   179,   246,
   175,   226,   180,   224,   181,     6,     0,   246,     0,   227,
   179,   246,     0,     0,    69,   174,   246,   179,   246,   179,
   246,   179,   246,   179,   246,   179,   246,   179,   246,   179,
   246,   179,   246,   179,   246,   179,   246,   179,   246,   175,
   229,   180,   227,   181,     6,     0,     4,     7,   246,     6,
     0,     4,   176,   246,   177,     7,   246,     6,     0,     4,
   176,   177,     7,   255,     6,     0,     4,   170,     6,     0,
     4,   176,   246,   177,   170,     6,     0,     4,   171,     6,
     0,     4,   176,   246,   177,   171,     6,     0,     4,   149,
   246,     6,     0,     4,   176,   246,   177,   149,   246,     6,
     0,     4,   150,   246,     6,     0,     4,   176,   246,   177,
   150,   246,     6,     0,     4,   151,   246,     6,     0,     4,
   176,   246,   177,   151,   246,     6,     0,     4,   152,   246,
     6,     0,     4,   176,   246,   177,   152,   246,     6,     0,
     4,   178,     4,     7,     5,     6,     0,     4,   178,    64,
   176,   246,   177,   178,     4,     7,     5,     6,     0,     4,
   178,     4,     7,   246,     6,     0,     4,   178,    64,   176,
   246,   177,   178,     4,     7,   246,     6,     0,     4,   178,
     4,   149,   246,     6,     0,     4,   178,    64,   176,   246,
   177,   178,     4,   149,   246,     6,     0,     4,   178,     4,
   150,   246,     6,     0,     4,   178,    64,   176,   246,   177,
   178,     4,   150,   246,     6,     0,     4,   178,     4,   151,
   246,     6,     0,     4,   178,    64,   176,   246,   177,   178,
     4,   151,   246,     6,     0,     4,   178,     4,   152,   246,
     6,     0,     4,   178,    64,   176,   246,   177,   178,     4,
   152,   246,     6,     0,     4,   178,     4,   170,     6,     0,
     4,   178,    64,   176,   246,   177,   178,     4,   170,   246,
     6,     0,     4,   178,     4,   171,     6,     0,     4,   178,
    64,   176,   246,   177,   178,     4,   171,   246,     6,     0,
     4,   178,    85,   178,     4,     7,   257,     6,     0,     4,
   178,    64,   176,   246,   177,   178,    85,     7,   258,     6,
     0,    34,   174,   246,   175,     7,   249,     6,     0,    49,
    34,   174,   246,   175,     7,   255,     6,     0,    65,    34,
   255,     7,   180,   246,   179,   246,   179,   246,   181,     6,
     0,    41,    42,   255,     7,   246,     6,     0,    34,   180,
   246,   181,     6,     0,    37,   174,   246,   175,     7,   255,
     6,     0,    39,   174,   246,   175,     7,   255,     6,     0,
    65,    37,   255,     7,   180,   246,   179,   246,   179,   246,
   181,     6,     0,    35,   174,   246,   175,     7,   255,     6,
     0,    35,   174,   246,   175,     7,   255,    45,   249,     6,
     0,    43,   174,   246,   175,     7,   180,   246,   179,   246,
   179,     5,   179,     5,   179,     5,   181,     6,     0,    36,
   174,   246,   175,     7,   255,     6,     0,    49,    37,   174,
   246,   175,     7,   255,     6,     0,    37,    59,   174,   246,
   175,     7,   255,     6,     0,    79,   174,   246,   175,     7,
   255,     6,     0,    80,   174,   246,   175,     7,   255,    84,
   255,    81,   246,     6,     0,    37,   180,   246,   181,     6,
     0,    45,    38,   174,   246,   175,     7,   255,     6,     0,
   139,    38,   174,   246,   175,     7,   180,   246,   179,   255,
   181,     6,     0,    46,    38,   174,   246,   175,     7,   255,
     6,     0,    80,    38,    82,    83,   174,   246,   175,     7,
   253,    84,   180,   255,   179,   255,   181,    81,   180,   246,
   179,   246,   181,     6,     0,    80,    38,   174,   246,   175,
     7,   253,    84,   180,   255,   179,   255,   181,    81,   180,
   246,   179,   246,   181,     6,     0,    49,    38,   174,   246,
   175,     7,   255,     6,     0,    38,    59,   174,   246,   175,
     7,   255,     6,     0,    38,   180,   246,   181,     6,     0,
    48,    40,   174,   246,   175,     7,   255,     6,     0,    40,
   174,   246,   175,     7,   255,     6,     0,    49,    40,   174,
   246,   175,     7,   255,     6,     0,    54,   249,   180,   233,
   181,     0,    53,   180,   249,   179,   249,   179,   246,   181,
   180,   233,   181,     0,    55,   249,   180,   233,   181,     0,
    56,   180,   249,   179,   246,   181,   180,   233,   181,     0,
   235,     0,   234,     0,   232,     0,     0,   234,   231,     0,
    58,   180,   234,   181,     0,    61,   180,   234,   181,     0,
    61,    64,   176,   246,   177,     6,     0,    61,    95,     6,
     0,     4,   260,     6,     0,     4,   246,     6,     0,    91,
     6,     0,    33,     6,     0,    86,   174,   246,     8,   246,
   175,     0,    86,   174,   246,     8,   246,     8,   246,   175,
     0,    86,     4,    87,   180,   246,     8,   246,   181,     0,
    86,     4,    87,   180,   246,     8,   246,     8,   246,   181,
     0,    88,     0,    94,     4,     0,    92,     0,    93,     4,
     6,     0,    89,   174,   246,   175,     0,    90,     0,    57,
    34,   180,   246,   179,   249,   181,     6,     0,    57,    34,
   180,   246,   179,   249,   179,   249,   179,   246,   181,     6,
     0,    57,    37,   180,   246,   179,   249,   181,     6,     0,
    57,    37,   180,   246,   179,   249,   179,   249,   179,   246,
   181,     6,     0,    57,    38,   180,   246,   179,   249,   181,
     6,     0,    57,    38,   180,   246,   179,   249,   179,   249,
   179,   246,   181,     6,     0,    57,    38,   180,   246,   179,
   249,   181,   180,   240,   181,     6,     0,    57,    38,   180,
   246,   179,   249,   179,   249,   179,   246,   181,   180,   240,
   181,     6,     0,   241,     0,   240,   241,     0,    66,   180,
   255,   179,   255,   179,   255,   181,     6,     0,    60,     6,
     0,    47,    37,   255,     7,   246,     6,     0,    47,    37,
   255,     7,   246,    50,    52,   246,     6,     0,    47,    37,
   255,     7,   246,    50,    51,   246,     6,     0,    47,    38,
   180,   246,   181,     7,   255,     6,     0,    44,    38,   180,
   246,   181,     7,   255,     6,     0,    47,    40,   180,   246,
   181,     7,   255,     6,     0,    60,    38,   255,     7,   246,
     6,     0,    60,    38,   255,     6,     0,    62,     6,     0,
    63,     6,     0,     3,     0,   164,     3,     0,    99,     0,
   100,     0,   101,     0,   102,     0,   103,     0,   247,     0,
   174,   246,   175,     0,   164,   246,     0,   163,   246,     0,
   169,   246,     0,   246,   164,   246,     0,   246,   163,   246,
     0,   246,   165,   246,     0,   246,   166,   246,     0,   246,
   167,   246,     0,   246,   173,   246,     0,   246,   159,   246,
     0,   246,   161,   246,     0,   246,   160,   246,     0,   246,
   162,   246,     0,   246,   156,   246,     0,   246,   157,   246,
     0,   246,   155,   246,     0,   246,   154,   246,     0,   246,
   153,   246,     8,   246,     0,    10,   174,   246,   175,     0,
    11,   174,   246,   175,     0,    12,   174,   246,   175,     0,
    13,   174,   246,   175,     0,    14,   174,   246,   175,     0,
    15,   174,   246,   175,     0,    16,   174,   246,   175,     0,
    17,   174,   246,   175,     0,    18,   174,   246,   175,     0,
    20,   174,   246,   175,     0,    21,   174,   246,   179,   246,
   175,     0,    22,   174,   246,   175,     0,    23,   174,   246,
   175,     0,    24,   174,   246,   175,     0,    25,   174,   246,
   175,     0,    26,   174,   246,   175,     0,    27,   174,   246,
   175,     0,    28,   174,   246,   179,   246,   175,     0,    29,
   174,   246,   179,   246,   175,     0,    30,   174,   246,   179,
   246,   175,     0,    19,   174,   246,   175,     0,     3,     0,
     9,     0,     4,     0,     4,   176,   246,   177,     0,     4,
   170,     0,     4,   176,   246,   177,   170,     0,     4,   171,
     0,     4,   176,   246,   177,   171,     0,     4,   178,     4,
     0,     4,   178,    64,   176,   246,   177,   178,     4,     0,
     4,   178,     4,   170,     0,     4,   178,    64,   176,   246,
   177,   178,     4,   170,     0,     4,   178,     4,   171,     0,
     4,   178,    64,   176,   246,   177,   178,     4,   171,     0,
   246,     8,   246,     0,   246,     8,   246,     8,   246,     0,
   250,     0,   164,   249,     0,   163,   249,     0,   249,   164,
   249,     0,   249,   163,   249,     0,   180,   246,   179,   246,
   179,   246,   179,   246,   179,   246,   181,     0,   180,   246,
   179,   246,   179,   246,   179,   246,   181,     0,   180,   246,
   179,   246,   179,   246,   181,     0,   174,   246,   179,   246,
   179,   246,   175,     0,     0,   174,   252,   175,     0,     5,
     0,   252,   179,     5,     0,     0,   180,   254,   181,     0,
   174,   254,   175,     0,   255,     0,   254,   179,   255,     0,
     0,   246,     0,     4,   176,   177,     0,   180,   256,   181,
     0,   246,     0,   248,     0,     4,   176,   177,     0,   256,
   179,   246,     0,   256,   179,   248,     0,   256,   179,     4,
   176,   177,     0,   180,   246,   179,   246,   179,   246,   179,
   246,   181,     0,   180,   246,   179,   246,   179,   246,   181,
     0,   180,     4,   179,   246,   181,     0,     4,     0,     4,
   178,    85,   178,     4,     0,   180,   259,   181,     0,     4,
   178,    64,   176,   246,   177,   178,    85,     0,   257,     0,
   259,   179,   257,     0,     5,     0,    32,   174,     5,   175,
     0,    32,   174,     5,   179,   256,   175,     0
};

#endif

#if YYDEBUG != 0
static const short yyrline[] = { 0,
   148,   150,   151,   152,   159,   167,   181,   193,   195,   198,
   200,   201,   204,   210,   215,   216,   217,   220,   224,   227,
   233,   238,   244,   252,   257,   261,   267,   272,   276,   281,
   285,   288,   293,   297,   301,   305,   310,   314,   317,   321,
   325,   329,   333,   337,   341,   344,   348,   351,   355,   358,
   367,   371,   377,   379,   380,   381,   382,   383,   384,   385,
   386,   387,   388,   389,   392,   398,   427,   432,   438,   443,
   444,   445,   446,   447,   448,   449,   450,   451,   452,   453,
   454,   457,   460,   464,   470,   476,   479,   483,   489,   495,
   498,   502,   508,   514,   517,   521,   529,   535,   538,   542,
   550,   556,   559,   563,   571,   577,   580,   584,   596,   602,
   605,   609,   621,   627,   630,   634,   646,   652,   655,   659,
   672,   678,   681,   685,   698,   704,   707,   711,   724,   736,
   752,   764,   777,   786,   798,   806,   818,   826,   838,   846,
   858,   866,   878,   890,   909,   922,   940,   957,   978,   995,
  1016,  1033,  1054,  1071,  1092,  1113,  1139,  1156,  1177,  1194,
  1217,  1230,  1255,  1266,  1272,  1291,  1302,  1310,  1316,  1322,
  1341,  1347,  1363,  1370,  1376,  1382,  1388,  1394,  1413,  1425,
  1431,  1450,  1471,  1479,  1485,  1491,  1497,  1509,  1515,  1521,
  1533,  1539,  1544,  1549,  1556,  1558,  1559,  1562,  1567,  1578,
  1596,  1604,  1608,  1619,  1678,  1697,  1701,  1721,  1737,  1751,
  1776,  1801,  1827,  1833,  1838,  1843,  1847,  1857,  1863,  1869,
  1873,  1877,  1881,  1885,  1890,  1897,  1901,  1906,  1924,  1934,
  1952,  1969,  1986,  2007,  2027,  2047,  2064,  2088,  2093,  2104,
  2106,  2109,  2111,  2112,  2113,  2114,  2117,  2119,  2120,  2121,
  2122,  2123,  2124,  2125,  2126,  2133,  2134,  2135,  2136,  2137,
  2138,  2139,  2140,  2141,  2142,  2143,  2144,  2145,  2146,  2147,
  2148,  2149,  2150,  2151,  2152,  2153,  2154,  2155,  2156,  2157,
  2158,  2159,  2160,  2161,  2162,  2163,  2164,  2169,  2174,  2178,
  2190,  2208,  2220,  2238,  2250,  2270,  2291,  2315,  2336,  2360,
  2381,  2406,  2413,  2426,  2433,  2437,  2441,  2445,  2450,  2455,
  2459,  2463,  2469,  2473,  2478,  2482,  2487,  2491,  2495,  2501,
  2507,  2513,  2517,  2523,  2538,  2545,  2551,  2560,  2572,  2576,
  2584,  2597,  2602,  2606,  2611,  2616,  2634,  2639,  2660,  2669,
  2675,  2680,  2684
};
#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",
Christophe Geuzaine's avatar
Christophe Geuzaine committed
"tSin","tAsin","tCos","tAcos","tTan","tRand","tAtan","tAtan2","tSinh","tCosh",
"tTanh","tFabs","tFloor","tCeil","tFmod","tModulo","tHypot","tPrintf","tSprintf",
"tDraw","tPoint","tCircle","tEllipsis","tLine","tSurface","tSpline","tVolume",
Christophe Geuzaine's avatar
Christophe Geuzaine committed
"tCharacteristic","tLength","tParametric","tElliptic","tPlane","tRuled","tTransfinite",
"tComplex","tPhysical","tUsing","tBump","tProgression","tRotate","tTranslate",
"tSymmetry","tDilate","tExtrude","tDuplicata","tLoop","tRecombine","tDelete",
Christophe Geuzaine's avatar
Christophe Geuzaine committed
"tCoherence","tIntersect","tView","tAttractor","tLayers","tScalarTetrahedron",
"tVectorTetrahedron","tTensorTetrahedron","tScalarTriangle","tVectorTriangle",
"tTensorTriangle","tScalarLine","tVectorLine","tTensorLine","tScalarPoint","tVectorPoint",
"tTensorPoint","tBSpline","tNurbs","tOrder","tWith","tBounds","tKnots","tColor",
Christophe Geuzaine's avatar
Christophe Geuzaine committed
"tFor","tIn","tEndFor","tIf","tEndIf","tExit","tReturn","tCall","tFunction",
"tMesh","tB_SPLINE_SURFACE_WITH_KNOTS","tB_SPLINE_CURVE_WITH_KNOTS","tCARTESIAN_POINT",
Christophe Geuzaine's avatar
Christophe Geuzaine committed
"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","tAFFECTPLUS","tAFFECTMINUS","tAFFECTTIMES",
"tAFFECTDIVIDE","'?'","tOR","tAND","tEQUAL","tNOTEQUAL","tAPPROXEQUAL","'<'",
"tLESSOREQUAL","'>'","tGREATEROREQUAL","'+'","'-'","'*'","'/'","'%'","tCROSSPRODUCT",
"'!'","tPLUSPLUS","tMINUSMINUS","UNARYPREC","'^'","'('","')'","'['","']'","'.'",
"','","'{'","'}'","All","STLFormatItem","StepFormatItems","StepFormatItem","StepSpecial",
"StepHeaderItem","StepDataItem","GeomFormatList","GeomFormat","Printf","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","Command","Loop","Extrude",
Christophe Geuzaine's avatar
Christophe Geuzaine committed
"ExtrudeParameters","ExtrudeParameter","Transfini","Coherence","SignedDouble",
"BoolExpr","FExpr","FExpr_Single","FExpr_Range","VExpr","VExpr_Single","ListOfStrings",
"RecursiveListOfStrings","ListOfListOfDouble","RecursiveListOfListOfDouble",
"ListOfDouble","RecursiveListOfDouble","ColorExpr","ListOfColor","RecursiveListOfColor",
"StringExpr", NULL
   182,   182,   182,   182,   183,   183,   183,   184,   184,   185,
   185,   185,   186,   186,   186,   186,   186,   187,   187,   187,
   188,   188,   188,   188,   188,   188,   188,   188,   188,   188,
   188,   188,   188,   188,   188,   188,   188,   188,   188,   188,
   188,   188,   188,   188,   188,   188,   188,   188,   188,   188,
   189,   189,   190,   190,   190,   190,   190,   190,   190,   190,
   190,   190,   190,   190,   191,   191,   192,   192,   193,   193,
   193,   193,   193,   193,   193,   193,   193,   193,   193,   193,
   193,   194,   194,   196,   195,   197,   197,   199,   198,   200,
   200,   202,   201,   203,   203,   205,   204,   206,   206,   208,
   207,   209,   209,   211,   210,   212,   212,   214,   213,   215,
   215,   217,   216,   218,   218,   220,   219,   221,   221,   223,
   222,   224,   224,   226,   225,   227,   227,   229,   228,   230,
   230,   230,   230,   230,   230,   230,   230,   230,   230,   230,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
   230,   230,   230,   230,   230,   230,   230,   230,   230,   230,
   230,   230,   230,   230,   230,   230,   230,   230,   230,   230,
   230,   230,   231,   231,   231,   231,   231,   231,   231,   231,
   231,   231,   231,   231,   231,   231,   231,   231,   231,   231,
   231,   231,   231,   231,   231,   231,   231,   231,   231,   231,
   232,   232,   232,   232,   233,   233,   233,   234,   234,   235,
   236,   236,   236,   237,   237,   237,   237,   238,   238,   238,
   238,   238,   238,   238,   238,   238,   238,   239,   239,   239,
   239,   239,   239,   239,   239,   240,   240,   241,   241,   242,
   242,   242,   242,   242,   242,   242,   242,   243,   243,   244,
   244,   245,   245,   245,   245,   245,   246,   246,   246,   246,
   246,   246,   246,   246,   246,   246,   246,   246,   246,   246,
   246,   246,   246,   246,   246,   246,   246,   246,   246,   246,
   246,   246,   246,   246,   246,   246,   246,   246,   246,   246,
   246,   246,   246,   246,   246,   246,   246,   247,   247,   247,
   247,   247,   247,   247,   247,   247,   247,   247,   247,   247,
   247,   248,   248,   249,   249,   249,   249,   249,   250,   250,
   250,   250,   251,   251,   252,   252,   253,   253,   253,   254,
   254,   255,   255,   255,   255,   256,   256,   256,   256,   256,
   256,   257,   257,   257,   257,   257,   258,   258,   259,   259,
   260,   260,   260
Christophe Geuzaine's avatar
Christophe Geuzaine committed
     1,     1,     1,     2,     1,    21,     1,     0,     2,     1,
     1,     1,     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,     1,     1,     5,     7,     6,     8,     0,     2,
     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
     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,     6,     3,     6,     3,     6,     4,     7,     4,     7,
     4,     7,     4,     7,     6,    11,     6,    11,     6,    11,
     6,    11,     6,    11,     6,    11,     5,    11,     5,    11,
     8,    11,     7,     8,    12,     6,     5,     7,     7,    12,
     7,     9,    17,     7,     8,     8,     7,    11,     5,     8,
    12,     8,    22,    20,     8,     8,     5,     8,     7,     8,
     5,    11,     5,     9,     1,     1,     1,     0,     2,     4,
     4,     6,     3,     3,     3,     2,     2,     6,     8,     8,
    10,     1,     2,     1,     3,     4,     1,     8,    12,     8,
    12,     8,    12,    11,    15,     1,     2,     9,     2,     6,
     9,     9,     8,     8,     8,     6,     4,     2,     2,     1,
     2,     1,     1,     1,     1,     1,     1,     3,     2,     2,
     2,     3,     3,     3,     3,     3,     3,     3,     3,     3,
     3,     3,     3,     3,     3,     5,     4,     4,     4,     4,
     4,     4,     4,     4,     4,     4,     6,     4,     4,     4,
     4,     4,     4,     6,     6,     6,     4,     1,     1,     1,
     4,     2,     5,     2,     5,     3,     8,     4,     9,     4,
     9,     3,     5,     1,     2,     2,     3,     3,    11,     9,
     7,     7,     0,     3,     1,     3,     0,     3,     3,     1,
     3,     0,     1,     3,     3,     1,     1,     3,     3,     3,
     5,     9,     7,     5,     1,     5,     3,     8,     1,     3,
     1,     4,     6
Christophe Geuzaine's avatar
Christophe Geuzaine committed
static const short yydefact[] = {     0,
     0,     5,     7,     0,     2,     1,     3,     4,     0,     0,
     0,     0,     0,     0,     0,     0,     0,     0,     9,    10,
    12,    11,     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,   212,     0,   217,     0,   214,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
     0,     0,     0,    52,    54,    53,    55,    56,    57,    58,
    59,    64,    63,    60,    61,    62,   240,     0,     0,     0,
    13,    14,    16,    15,    17,   313,   313,     0,   288,   290,
   341,     0,   289,     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,   247,     0,
     0,   207,     0,     0,     0,     0,     0,     0,     0,     0,
     0,     0,     0,   322,     0,     0,     0,     0,   322,     0,
     0,     0,   304,     0,     0,     0,     0,     0,   198,   322,
     0,     0,   198,   238,   239,     0,   322,   322,     0,     0,
     0,     0,     0,     0,   206,     0,   213,     0,   241,     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,   292,   294,     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,   250,   249,   251,   133,   135,
     0,     0,     0,     0,     0,     0,   205,     0,     0,     0,
     0,     0,   204,     0,     0,     0,     0,     0,     0,     0,
     0,     0,     0,     0,     0,   290,     0,   323,     0,     0,
     0,     0,   306,   305,     0,     0,     0,     0,   198,   198,
     0,     0,     0,     0,     0,     0,     0,   203,     0,     0,
    69,     0,     0,     0,     0,     0,     0,     0,     0,     0,
   215,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     0,     0,     0,   315,     0,     0,     0,     0,     0,   296,
     0,   130,     0,     0,     0,     0,     0,     0,     0,     0,
     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     0,     0,     0,     0,   137,   139,   141,   143,   248,   322,
     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     0,   265,   264,   262,   263,   258,   260,   259,   261,   253,
   252,   254,   255,   256,   257,     0,     0,     0,     0,     0,
     0,     0,     0,     0,     0,     0,     0,     0,     0,   290,
   326,   327,     0,     0,     0,     0,     0,     0,     0,     0,
     0,     0,     0,     0,     0,     0,     0,     0,     0,   308,
   307,   197,     0,   196,   195,     0,     0,     0,     0,     0,
   200,   199,   237,     0,     0,   201,     0,     0,     0,     0,
     0,     0,     0,     0,     0,     0,   216,     0,     0,     0,
David Colignon's avatar
David Colignon committed
     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     0,     0,     0,     0,     0,     0,     0,     0,     0,   314,
     0,     0,    19,     0,   291,   298,   300,     0,   267,   268,
   269,   270,   271,   272,   273,   274,   275,   287,   276,     0,
   278,   279,   280,   281,   282,   283,     0,     0,     0,   342,
     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     0,     0,     0,     0,     0,   157,   159,     0,     0,     0,
    65,     0,     0,   167,   322,   322,     0,   322,   179,     0,
   187,   322,   322,   324,     0,     0,     0,   325,     0,     0,
     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     0,     0,     0,     0,   191,   193,     0,     0,     0,     0,
     0,     0,    69,     0,     0,     0,     0,     0,     0,     0,
     0,     0,     0,     0,     0,     0,    70,    71,    72,    73,
    74,    75,    76,    77,    78,    79,    80,    81,     0,     0,
   322,     0,     0,   322,     0,     0,     0,     0,     0,     0,
     0,     0,     0,     0,     0,     0,     0,   322,   322,     0,
     0,     0,     0,   322,   322,     0,     0,     0,     0,     0,
   322,     0,   322,     0,     0,     0,     0,     0,   316,     0,
   313,   293,   295,     0,     0,     0,     0,     0,     0,   132,
     0,     0,     0,     0,     0,   134,   136,   145,   147,   149,
   151,   153,   155,     0,     0,   266,     0,     0,     0,     0,
   322,     0,   322,     0,     0,   328,   302,   290,   329,   330,
   166,     0,   322,   322,   322,   230,     0,   322,   322,   322,
   322,   322,   322,   322,     0,     0,     0,     0,     0,     0,
     0,   236,   202,     0,     0,     0,     0,     0,     0,     0,
     0,     0,     0,     0,     0,     0,    67,     0,     0,     0,
     0,   317,     0,     0,     0,   208,     0,     0,     0,     0,
     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     0,   242,   243,   244,   245,   246,     0,     0,     0,     0,
     0,     0,     0,    18,     0,     0,   277,   284,   285,   286,
   343,   131,   138,   140,   142,   144,     0,   335,     0,     0,
    66,   163,   171,     0,   174,     0,   168,     0,   169,   189,
     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     0,     0,     0,     0,     0,     0,     0,     0,   198,     0,
     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
   177,     0,   322,   322,     0,   322,     0,     0,     0,     0,
     0,     0,   322,     0,     0,     0,     0,     0,     0,     0,
     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     0,   322,     0,     0,     0,     0,     0,     0,     0,     0,
   313,     0,     0,     0,     0,   290,     0,   161,     0,   176,
   186,   303,   331,     0,   234,   180,   182,     0,     0,   233,
   235,   188,   164,   175,   185,   190,     0,   312,     0,   311,
     0,     0,   218,     0,   220,     0,   222,     0,    68,     0,
     0,     0,     0,   317,     0,   320,     0,     0,     0,     0,
   210,   209,     0,     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,   297,     0,     0,     0,     0,
     0,     0,     0,     0,     0,     0,     0,   172,     0,   232,
   231,   198,     0,   194,     0,     0,     0,     0,     0,     0,
   226,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     0,     0,     0,     0,     0,     0,   319,   322,   318,   322,
     0,     0,   322,     0,     0,   317,     0,     0,     0,     0,
     0,     0,     0,     0,     0,     0,     0,     0,   322,     0,
     0,     0,     0,     0,     0,     0,   299,   301,     0,     0,
     0,     0,     0,     0,     0,   310,     0,     0,     0,   229,
   322,     0,   227,     0,     0,     0,     0,     0,     0,     0,
     0,     0,     0,     0,     0,     0,     0,     0,   321,     0,
     0,   211,     0,     0,    35,     0,     0,     0,     0,    25,
     0,    31,     0,    37,    26,    39,     0,    42,     0,    46,
    47,     0,     0,    49,     0,     0,   146,   148,   150,   152,
   154,   156,   158,   160,     0,   339,     0,   162,   336,   334,
     0,     0,   192,     0,     0,     0,     0,     0,   224,     0,
     0,     0,     0,   322,   322,   178,     0,     0,     0,     0,
     0,     0,   337,     0,     0,   309,   219,   221,   223,     0,
   322,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    84,    88,    92,   165,   170,     0,     0,   181,     0,     0,
     0,     0,     0,    29,    32,    40,     0,    41,    48,    43,
     0,     0,   340,     0,   333,     0,     0,     0,     0,     0,
     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
   322,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     0,     0,     0,   322,     0,     0,     0,     0,     0,     0,
     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     0,    24,    27,     0,     0,     0,   332,     0,   225,     0,
     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
    82,     0,    86,     0,    90,     0,     0,     0,     0,   322,
     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,    44,    20,   338,   173,   228,
     0,     0,     0,     0,     0,     0,     0,     0,     0,    83,
    85,    87,    89,    91,    93,     0,     0,     0,     0,   322,
     0,     0,     0,     0,     0,     0,    96,   100,   104,     0,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     0,     0,     0,     0,     0,     6,   322,     0,     0,     0,
     0,     0,     0,     0,     0,     0,     0,     0,   184,     0,
     0,     0,     0,     0,     0,     0,     0,     0,    94,     0,
    98,     0,   102,     0,   322,     0,     0,     0,     0,     0,
     0,     0,     0,     0,     0,     0,     0,     0,   183,     0,
    22,     0,     0,     0,     0,     0,     0,    95,    97,    99,
   101,   103,   105,   322,     0,     0,     0,   108,   112,   116,
     0,     0,     0,     0,     0,     0,     0,   322,     0,     0,
     0,     0,     0,     0,     0,     0,     0,     0,     0,   106,
     0,   110,     0,   114,     0,     0,     0,     0,     0,     0,
     0,     0,     0,     0,     0,     0,     0,     0,   107,   109,
   111,   113,   115,   117,     0,   120,   124,   128,    23,     0,
     0,     0,     0,     0,     0,     0,   118,     0,   122,     0,
   126,     0,     0,     0,     0,     0,     0,   119,   121,   123,
   125,   127,   129,     0,     0,     0
static const short yydefgoto[] = {  1544,
Christophe Geuzaine's avatar
Christophe Geuzaine committed
     5,     6,    19,    20,    21,    22,     7,    64,    65,    66,
   488,  1320,   637,  1268,  1322,   638,  1269,  1324,   639,  1270,
  1428,   640,  1401,  1430,   641,  1402,  1432,   642,  1403,  1489,
   643,  1475,  1491,   644,  1476,  1493,   645,  1477,  1526,   646,
  1520,  1528,   647,  1521,  1530,   648,  1522,    67,   482,   472,
   473,   474,   475,    71,    72,    73,    74,  1040,  1041,    75,
    76,    79,   807,   298,   129,   452,   162,   163,   222,   375,
   885,   975,   976,   453,   830,  1099,  1167,   130
static const short yypact[] = {  2450,
    71,-32768,-32768,   -27,-32768,   118,  2568,-32768,     7,   156,
   124,   168,   179,   224,   235,    87,    94,   129,-32768,-32768,
-32768,-32768,   319,   146,   350,   -99,   151,   207,   -41,   -46,
   213,   260,   393,   279,   392,   400,   422,   562,   426,    45,
   334,   101,   101,   344,   117,   345,   443,   -40,   479,   540,
   551,   351,   401,   -26,    10,-32768,   409,-32768,   583,-32768,
   597,   606,   578,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
-32768,-32768,-32768,-32768,-32768,-32768,-32768,   625,     7,  2606,
-32768,-32768,-32768,-32768,-32768,   456,   456,   630,-32768,    24,
-32768,  1584,-32768,   462,   466,   468,   471,   474,   483,   484,
   486,   509,   515,   525,   526,   527,   529,   532,   533,   534,
   541,   542,   543,   545,   546,  1584,  1584,  1584,  1584,  1584,
  1584,  1584,   647,   699,  1584,   349,    16,   256,-32768,   715,
   720,-32768,  1584,  1584,  1584,  1584,   552,  1584,  1584,   553,
  1584,  1584,  1584,    23,  1584,   548,   555,   556,    23,   564,
   565,   557,   572,   573,   574,   579,   101,   101,   101,  1584,
  1584,    80,-32768,   113,   101,   602,   612,   613,-32768,    23,
   618,   748,-32768,-32768,-32768,    -2,    23,    23,  1584,   -25,
  1584,   708,  1584,  1584,-32768,   790,-32768,   626,-32768,     7,
   627,   628,   629,   631,   633,   634,   635,   636,   637,   638,
   639,   643,   649,   653,   654,   656,   657,   658,   659,   660,
   662,   663,   664,   665,   666,   667,   668,   669,   670,   671,
   793,   672,   674,   675,-32768,-32768,  1584,    63,   862,  1584,
  1584,  1584,  1584,  1584,  1584,  1584,  1584,  1584,  1584,  1584,
  1584,  1584,  1584,  1584,  1584,  1584,  1584,  1584,  1584,  1584,
   799,   910,   950,  1055,  1080,   673,   673,   673,-32768,-32768,
  5429,   840,  5279,    18,   677,   680,-32768,  1584,  1584,  1584,
  1584,  1584,  1584,  1584,  1584,  1584,  1584,  1584,  1584,  1584,
  1584,  1584,-32768,   -13,  5452,  2679,  5475,  5498,  1584,  5521,
  2702,  1584,  2725,  5544,  5567,   463,  1612,  6901,   848,  5590,
  1584,  1584,  1584,   852,  1584,  1584,  1584,  1584,  1584,  1584,
  1584,   148,-32768,-32768,  1549,  1975,   101,   101,   524,   524,
   288,  1584,  1584,  1584,    25,   283,  1584,-32768,  2398,   101,
-32768,   853,   854,  5613,   779,  1584,  5636,   683,   812,  5659,
-32768,  1584,   719,   860,   865,   866,   867,   868,   869,   870,
   871,   872,   873,   875,   876,   877,   878,   879,   880,   884,
   885,   886,   887,   889,   890,   891,   735,   893,   894,   895,
   896,   899,   898,-32768,    26,   900,   901,   907,  5304,  -141,
   728,-32768,  5682,  5705,  5728,  5751,  5774,  5797,  5820,  5843,
  5866,  5889,  5912,  2421,  5935,  5958,  5981,  6004,  6027,  6050,
  2526,  3116,  3137,    88,-32768,-32768,-32768,-32768,-32768,    23,
   121,  1164,  1584,  1584,  1584,  1584,   908,   911,  1584,   902,
  2183,   403,   458,   388,   388,   366,   366,   366,   366,   355,
   355,   673,   673,   673,   673,   912,  1612,   906,   913,   914,
   915,  6073,   917,   919,  6096,   921,   922,   923,   652,   473,
  2210,-32768,  -125,  1584,   924,  2748,  6119,  6142,  1584,  2771,
  2794,  6165,  6188,  6211,  6234,  6257,   101,  1584,  1584,-32768,
-32768,-32768,   747,  2629,-32768,   751,  1584,  3158,  3179,  3200,
-32768,-32768,-32768,  1584,  5329,-32768,   264,   330,   753,   754,
   928,   762,  6280,   942,  1584,  1584,-32768,  6303,   804,   772,
   773,   774,   775,   776,   780,   781,   782,   783,   785,   791,
   801,   802,   803,   807,   808,   809,   810,   811,   822,   823,
   826,   827,   828,   829,   830,   831,   832,   841,   851,-32768,
   978,   818,-32768,   855,   -84,-32768,-32768,  1584,-32768,-32768,
-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,  1584,
-32768,-32768,-32768,-32768,-32768,-32768,  1584,  1584,  1584,-32768,
  1612,  1027,  1584,  1584,  1584,  1584,  1584,  1030,  1031,  1033,
  1274,  1361,  1693,  1725,  1746,-32768,-32768,  5354,  1034,  1584,
-32768,   123,   101,-32768,    23,    23,  1035,    23,-32768,  1036,
-32768,    23,    23,-32768,   746,  1584,  1640,-32768,  1767,   864,
  1038,  1040,  1041,   531,  1042,  1043,  1044,  1045,  1046,  1048,
  1049,   295,  3221,  3242,-32768,-32768,  2817,   101,   101,   101,
  1782,  1051,-32768,   904,   905,   916,   934,   946,   947,   972,
   973,   975,   976,   977,   979,  1054,-32768,-32768,-32768,-32768,
-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,  1584,  1584,
    23,  1584,  1061,    23,  2231,   624,  1073,   939,  1037,  1584,
  1584,   101,  1081,  1082,   987,  1084,  1085,    23,    23,  1086,
   101,  1151,  1152,    23,    23,  1153,  1154,  1155,  1156,  1157,
    23,   611,    23,  1158,  1159,  1160,  1163,  1167,-32768,  1165,
   456,-32768,-32768,  5379,  6326,  6349,  6372,  6395,   142,-32768,
  1804,  1819,  1834,  1857,  1888,-32768,-32768,-32768,-32768,-32768,
-32768,-32768,-32768,   984,     0,  6901,  1166,     9,    78,  1189,
    23,  1190,    23,  1191,  1192,-32768,  2258,   476,  2210,-32768,
-32768,  1584,    23,    23,    23,-32768,   343,    23,    23,    23,
    23,    23,    23,    23,  1584,  1584,  1584,  1047,   -72,   261,
   269,-32768,-32768,   432,  1584,  1584,  1584,  1584,  1584,  1584,
  1584,  1584,  1584,  1584,  1584,  1584,-32768,  3263,  3284,  1207,
  6418,   -48,  1141,  1584,  1584,-32768,  1050,     7,  1053,  3305,
  3326,   -75,  1059,  1074,  1069,  1075,  1072,  1079,  1076,  1077,
   -39,  1078,  1083,  1099,  1096,  1097,  1102,  1103,  1104,  1106,
  1111,-32768,-32768,-32768,-32768,-32768,  1108,  1109,  1112,  1114,
  1116,  1119,  1117,-32768,  1118,  1120,-32768,-32768,-32768,-32768,
-32768,-32768,-32768,-32768,-32768,-32768,    72,  1121,  1668,  1220,
-32768,-32768,-32768,   101,-32768,  1253,-32768,  1254,-32768,-32768,
  1584,  1115,  3347,  1255,  1284,  1294,  1584,  1584,  1295,  1296,
  1297,  1299,  1300,  1301,  1302,  2840,  6441,  2592,   524,   101,
  1303,   101,  1304,   101,     2,  1305,  3368,  3389,  3410,  3431,
  3452,  3473,  3494,  3515,  3536,  3557,  3578,  3599,  1584,  1584,