Newer
Older
/* A Bison parser, made from Gmsh.y
#define YYBISON 1 /* Identify Bison output. */
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
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
#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 tAttractor 318
#define tLayers 319
#define tScalarTetrahedron 320
#define tVectorTetrahedron 321
#define tTensorTetrahedron 322
#define tScalarTriangle 323
#define tVectorTriangle 324
#define tTensorTriangle 325
#define tScalarLine 326
#define tVectorLine 327
#define tTensorLine 328
#define tScalarPoint 329
#define tVectorPoint 330
#define tTensorPoint 331
#define tBSpline 332
#define tNurbs 333
#define tOrder 334
#define tWith 335
#define tBounds 336
#define tKnots 337
#define tColor 338
#define tColorTable 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
#line 1 "Gmsh.y"
// $Id: Gmsh.tab.cpp,v 1.77 2001-03-09 08:16:31 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"

Christophe Geuzaine
committed
#include "Draw.h"
#include "Create.h"
#include "Views.h"
#include "StepGeomDatabase.h"
#include "Colors.h"
#include "Parser.h"
int Force_ViewNumber = 0 ;
List_T *Symbol_L;

Christophe Geuzaine
committed
extern Context_T CTX;
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 ExtrudeParams extr;
static List_T *ListOfDouble_L,*ListOfDouble2_L;
static List_T *ListOfListOfDouble_L, *ListOfColor_L=NULL;
static StringXString *pStrCat;
static StringXNumber *pNumCat;
static StringXColor *pColCat;

Christophe Geuzaine
committed
static double (*pNumOpt)(int num, int action, double value);
static char* (*pStrOpt)(int num, int action, char *value);
static unsigned int (*pColOpt)(int num, int action, unsigned int value);
char *strsave(char *ptr);
void yyerror (char *s);
void vyyerror (char *fmt, ...);
typedef union {
char *c;
int i;
double d;
double v[5];
Shape s;
List_T *l;
} YYSTYPE;
#include <stdio.h>
#ifndef __cplusplus
#ifndef __STDC__
#define const
#endif
#endif
#define YYFLAG -32768
#define YYNTBASE 182
#define YYTRANSLATE(x) ((unsigned)(x) <= 417 ? yytranslate[x] : 263)
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,
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,
554, 557, 560, 563, 566, 569, 572, 575, 578, 581,
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,

Christophe Geuzaine
committed
949, 951, 953, 955, 957, 959, 961, 966, 974, 981,
985, 992, 999, 1009, 1016, 1026, 1032, 1041, 1050, 1062,
1069, 1079, 1087, 1096, 1109, 1116, 1122, 1130, 1138, 1151,
1159, 1169, 1187, 1195, 1204, 1213, 1221, 1233, 1239, 1248,
1261, 1270, 1293, 1314, 1323, 1332, 1338, 1347, 1355, 1364,
1370, 1382, 1388, 1398, 1400, 1402, 1404, 1405, 1408, 1413,
1418, 1425, 1429, 1433, 1437, 1440, 1443, 1450, 1459, 1468,
1479, 1481, 1484, 1486, 1490, 1495, 1497, 1506, 1519, 1528,
1541, 1550, 1563, 1575, 1591, 1593, 1596, 1606, 1609, 1616,
1626, 1636, 1645, 1654, 1663, 1670, 1675, 1678, 1681, 1683,
1686, 1688, 1690, 1692, 1694, 1696, 1698, 1702, 1705, 1708,
1711, 1715, 1719, 1723, 1727, 1731, 1735, 1739, 1743, 1747,
1751, 1755, 1759, 1763, 1767, 1773, 1778, 1783, 1788, 1793,
1798, 1803, 1808, 1813, 1818, 1823, 1830, 1835, 1840, 1845,
1850, 1855, 1860, 1867, 1874, 1881, 1886, 1888, 1890, 1892,
1897, 1900, 1906, 1910, 1917, 1922, 1930, 1934, 1940, 1942,
1945, 1948, 1952, 1956, 1968, 1978, 1986, 1994, 1995, 1999,
2001, 2005, 2006, 2010, 2014, 2016, 2020, 2021, 2023, 2027,
2031, 2033, 2035, 2039, 2043, 2047, 2053, 2063, 2071, 2077,
2079, 2085, 2089, 2096, 2098, 2102, 2104, 2109
};
static const short yyrhs[] = { 184,
0, 183, 0, 189, 0, 1, 6, 0, 140, 0,

Christophe Geuzaine
committed
143, 144, 246, 246, 246, 145, 146, 142, 246, 246,
246, 142, 246, 246, 246, 142, 246, 246, 246, 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,

Christophe Geuzaine
committed
174, 253, 179, 5, 175, 6, 0, 120, 174, 253,
175, 6, 0, 121, 174, 5, 179, 5, 179, 253,
179, 253, 179, 5, 179, 5, 179, 5, 175, 6,
0, 3, 7, 98, 174, 5, 179, 251, 175, 6,
0, 3, 7, 97, 174, 5, 179, 248, 179, 257,
179, 247, 179, 247, 179, 247, 179, 257, 179, 257,
179, 247, 175, 6, 0, 3, 7, 96, 174, 5,
179, 248, 179, 248, 179, 255, 179, 247, 179, 247,
179, 247, 179, 247, 179, 257, 179, 257, 179, 257,
179, 257, 179, 247, 175, 6, 0, 3, 7, 104,
174, 5, 179, 3, 179, 3, 179, 3, 179, 247,
175, 6, 0, 3, 7, 108, 174, 5, 179, 3,

Christophe Geuzaine
committed
179, 247, 175, 6, 0, 3, 7, 125, 174, 5,
179, 3, 179, 247, 175, 6, 0, 3, 7, 106,
174, 5, 179, 165, 179, 165, 179, 248, 179, 247,
175, 6, 0, 3, 7, 109, 174, 5, 179, 257,
175, 6, 0, 3, 7, 110, 174, 5, 179, 257,
179, 3, 179, 247, 175, 6, 0, 3, 7, 105,
174, 5, 179, 3, 175, 6, 0, 3, 7, 111,

Christophe Geuzaine
committed
174, 5, 179, 3, 179, 248, 175, 6, 0, 3,
7, 113, 174, 5, 179, 3, 179, 3, 179, 3,

Christophe Geuzaine
committed
175, 6, 0, 3, 7, 112, 174, 5, 179, 251,
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,

Christophe Geuzaine
committed
179, 257, 175, 6, 0, 3, 7, 124, 174, 5,
179, 257, 179, 3, 175, 6, 0, 3, 7, 122,
174, 5, 179, 3, 175, 6, 0, 3, 7, 126,

Christophe Geuzaine
committed
174, 5, 179, 3, 179, 248, 175, 6, 0, 3,
7, 127, 174, 5, 179, 3, 179, 248, 179, 248,
175, 6, 0, 3, 7, 134, 174, 5, 179, 3,

Christophe Geuzaine
committed
179, 248, 179, 248, 175, 6, 0, 3, 7, 128,
174, 5, 179, 3, 179, 248, 175, 6, 0, 3,
7, 138, 174, 5, 179, 3, 179, 248, 179, 248,
175, 6, 0, 3, 7, 129, 174, 5, 179, 3,

Christophe Geuzaine
committed
179, 257, 179, 257, 179, 247, 179, 247, 175, 6,
0, 3, 7, 130, 174, 5, 179, 257, 175, 6,
0, 3, 7, 131, 174, 132, 179, 247, 179, 3,
175, 6, 0, 3, 7, 133, 174, 5, 179, 257,
179, 247, 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,

Christophe Geuzaine
committed
0, 0, 189, 190, 0, 192, 0, 191, 0, 232,
0, 233, 0, 234, 0, 237, 0, 238, 0, 241,
0, 244, 0, 245, 0, 240, 0, 239, 0, 31,
174, 5, 175, 6, 0, 31, 174, 5, 179, 258,
175, 6, 0, 4, 5, 180, 193, 181, 6, 0,
4, 5, 4, 251, 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,

Christophe Geuzaine
committed
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
193, 225, 0, 193, 228, 0, 248, 0, 194, 179,
248, 0, 0, 75, 174, 248, 179, 248, 179, 248,
175, 196, 180, 194, 181, 6, 0, 248, 0, 197,
179, 248, 0, 0, 76, 174, 248, 179, 248, 179,
248, 175, 199, 180, 197, 181, 6, 0, 248, 0,
200, 179, 248, 0, 0, 77, 174, 248, 179, 248,
179, 248, 175, 202, 180, 200, 181, 6, 0, 248,
0, 203, 179, 248, 0, 0, 72, 174, 248, 179,
248, 179, 248, 179, 248, 179, 248, 179, 248, 175,
205, 180, 203, 181, 6, 0, 248, 0, 206, 179,
248, 0, 0, 73, 174, 248, 179, 248, 179, 248,
179, 248, 179, 248, 179, 248, 175, 208, 180, 206,
181, 6, 0, 248, 0, 209, 179, 248, 0, 0,
74, 174, 248, 179, 248, 179, 248, 179, 248, 179,
248, 179, 248, 175, 211, 180, 209, 181, 6, 0,
248, 0, 212, 179, 248, 0, 0, 69, 174, 248,
179, 248, 179, 248, 179, 248, 179, 248, 179, 248,
179, 248, 179, 248, 179, 248, 175, 214, 180, 212,
181, 6, 0, 248, 0, 215, 179, 248, 0, 0,
70, 174, 248, 179, 248, 179, 248, 179, 248, 179,
248, 179, 248, 179, 248, 179, 248, 179, 248, 175,
217, 180, 215, 181, 6, 0, 248, 0, 218, 179,
248, 0, 0, 71, 174, 248, 179, 248, 179, 248,
179, 248, 179, 248, 179, 248, 179, 248, 179, 248,
179, 248, 175, 220, 180, 218, 181, 6, 0, 248,
0, 221, 179, 248, 0, 0, 66, 174, 248, 179,
248, 179, 248, 179, 248, 179, 248, 179, 248, 179,
248, 179, 248, 179, 248, 179, 248, 179, 248, 179,
248, 175, 223, 180, 221, 181, 6, 0, 248, 0,
224, 179, 248, 0, 0, 67, 174, 248, 179, 248,
179, 248, 179, 248, 179, 248, 179, 248, 179, 248,
179, 248, 179, 248, 179, 248, 179, 248, 179, 248,
175, 226, 180, 224, 181, 6, 0, 248, 0, 227,
179, 248, 0, 0, 68, 174, 248, 179, 248, 179,
248, 179, 248, 179, 248, 179, 248, 179, 248, 179,
248, 179, 248, 179, 248, 179, 248, 179, 248, 175,
229, 180, 227, 181, 6, 0, 7, 0, 149, 0,
150, 0, 151, 0, 152, 0, 170, 0, 171, 0,
4, 230, 248, 6, 0, 4, 176, 248, 177, 230,
248, 6, 0, 4, 176, 177, 7, 257, 6, 0,
4, 231, 6, 0, 4, 176, 248, 177, 231, 6,
0, 4, 178, 4, 7, 5, 6, 0, 4, 176,
248, 177, 178, 4, 7, 5, 6, 0, 4, 178,
4, 230, 248, 6, 0, 4, 176, 248, 177, 178,
4, 230, 248, 6, 0, 4, 178, 4, 231, 6,
0, 4, 176, 248, 177, 178, 4, 231, 6, 0,
4, 178, 84, 178, 4, 7, 259, 6, 0, 4,
176, 248, 177, 178, 84, 178, 4, 7, 259, 6,
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
0, 4, 178, 85, 7, 260, 6, 0, 4, 176,
248, 177, 178, 85, 7, 260, 6, 0, 34, 174,
248, 175, 7, 251, 6, 0, 49, 34, 174, 248,
175, 7, 257, 6, 0, 64, 34, 257, 7, 180,
248, 179, 248, 179, 248, 181, 6, 0, 41, 42,
257, 7, 248, 6, 0, 34, 180, 248, 181, 6,
0, 37, 174, 248, 175, 7, 257, 6, 0, 39,
174, 248, 175, 7, 257, 6, 0, 64, 37, 257,
7, 180, 248, 179, 248, 179, 248, 181, 6, 0,
35, 174, 248, 175, 7, 257, 6, 0, 35, 174,
248, 175, 7, 257, 45, 251, 6, 0, 43, 174,
248, 175, 7, 180, 248, 179, 248, 179, 5, 179,
5, 179, 5, 181, 6, 0, 36, 174, 248, 175,
7, 257, 6, 0, 49, 37, 174, 248, 175, 7,
257, 6, 0, 37, 59, 174, 248, 175, 7, 257,
6, 0, 78, 174, 248, 175, 7, 257, 6, 0,
79, 174, 248, 175, 7, 257, 83, 257, 80, 248,
6, 0, 37, 180, 248, 181, 6, 0, 45, 38,
174, 248, 175, 7, 257, 6, 0, 139, 38, 174,
248, 175, 7, 180, 248, 179, 257, 181, 6, 0,
46, 38, 174, 248, 175, 7, 257, 6, 0, 79,
38, 81, 82, 174, 248, 175, 7, 255, 83, 180,
257, 179, 257, 181, 80, 180, 248, 179, 248, 181,
6, 0, 79, 38, 174, 248, 175, 7, 255, 83,
180, 257, 179, 257, 181, 80, 180, 248, 179, 248,
181, 6, 0, 49, 38, 174, 248, 175, 7, 257,
6, 0, 38, 59, 174, 248, 175, 7, 257, 6,
0, 38, 180, 248, 181, 6, 0, 48, 40, 174,
248, 175, 7, 257, 6, 0, 40, 174, 248, 175,
7, 257, 6, 0, 49, 40, 174, 248, 175, 7,
257, 6, 0, 54, 251, 180, 235, 181, 0, 53,
180, 251, 179, 251, 179, 248, 181, 180, 235, 181,
0, 55, 251, 180, 235, 181, 0, 56, 180, 251,
179, 248, 181, 180, 235, 181, 0, 237, 0, 236,
0, 234, 0, 0, 236, 233, 0, 58, 180, 236,
181, 0, 61, 180, 236, 181, 0, 61, 4, 176,
248, 177, 6, 0, 61, 95, 6, 0, 4, 262,
6, 0, 4, 248, 6, 0, 91, 6, 0, 33,
6, 0, 86, 174, 248, 8, 248, 175, 0, 86,
174, 248, 8, 248, 8, 248, 175, 0, 86, 4,
87, 180, 248, 8, 248, 181, 0, 86, 4, 87,
180, 248, 8, 248, 8, 248, 181, 0, 88, 0,
94, 4, 0, 92, 0, 93, 4, 6, 0, 89,
174, 248, 175, 0, 90, 0, 57, 34, 180, 248,
179, 251, 181, 6, 0, 57, 34, 180, 248, 179,
251, 179, 251, 179, 248, 181, 6, 0, 57, 37,
180, 248, 179, 251, 181, 6, 0, 57, 37, 180,
248, 179, 251, 179, 251, 179, 248, 181, 6, 0,
57, 38, 180, 248, 179, 251, 181, 6, 0, 57,
38, 180, 248, 179, 251, 179, 251, 179, 248, 181,
6, 0, 57, 38, 180, 248, 179, 251, 181, 180,
242, 181, 6, 0, 57, 38, 180, 248, 179, 251,
179, 251, 179, 248, 181, 180, 242, 181, 6, 0,
243, 0, 242, 243, 0, 65, 180, 257, 179, 257,
179, 257, 181, 6, 0, 60, 6, 0, 47, 37,
257, 7, 248, 6, 0, 47, 37, 257, 7, 248,
50, 52, 248, 6, 0, 47, 37, 257, 7, 248,
50, 51, 248, 6, 0, 47, 38, 180, 248, 181,
7, 257, 6, 0, 44, 38, 180, 248, 181, 7,
257, 6, 0, 47, 40, 180, 248, 181, 7, 257,
6, 0, 60, 38, 257, 7, 248, 6, 0, 60,
38, 257, 6, 0, 62, 6, 0, 63, 6, 0,
3, 0, 164, 3, 0, 99, 0, 100, 0, 101,
0, 102, 0, 103, 0, 249, 0, 174, 248, 175,
0, 164, 248, 0, 163, 248, 0, 169, 248, 0,
248, 164, 248, 0, 248, 163, 248, 0, 248, 165,
248, 0, 248, 166, 248, 0, 248, 167, 248, 0,
248, 173, 248, 0, 248, 159, 248, 0, 248, 161,
248, 0, 248, 160, 248, 0, 248, 162, 248, 0,
248, 156, 248, 0, 248, 157, 248, 0, 248, 155,
248, 0, 248, 154, 248, 0, 248, 153, 248, 8,
248, 0, 10, 174, 248, 175, 0, 11, 174, 248,
175, 0, 12, 174, 248, 175, 0, 13, 174, 248,
175, 0, 14, 174, 248, 175, 0, 15, 174, 248,
175, 0, 16, 174, 248, 175, 0, 17, 174, 248,
175, 0, 18, 174, 248, 175, 0, 20, 174, 248,
175, 0, 21, 174, 248, 179, 248, 175, 0, 22,
174, 248, 175, 0, 23, 174, 248, 175, 0, 24,
174, 248, 175, 0, 25, 174, 248, 175, 0, 26,
174, 248, 175, 0, 27, 174, 248, 175, 0, 28,
174, 248, 179, 248, 175, 0, 29, 174, 248, 179,
248, 175, 0, 30, 174, 248, 179, 248, 175, 0,
19, 174, 248, 175, 0, 3, 0, 9, 0, 4,
0, 4, 176, 248, 177, 0, 4, 231, 0, 4,
176, 248, 177, 231, 0, 4, 178, 4, 0, 4,
176, 248, 177, 178, 4, 0, 4, 178, 4, 231,
0, 4, 176, 248, 177, 178, 4, 231, 0, 248,
8, 248, 0, 248, 8, 248, 8, 248, 0, 252,
0, 164, 251, 0, 163, 251, 0, 251, 164, 251,
0, 251, 163, 251, 0, 180, 248, 179, 248, 179,
248, 179, 248, 179, 248, 181, 0, 180, 248, 179,
248, 179, 248, 179, 248, 181, 0, 180, 248, 179,
248, 179, 248, 181, 0, 174, 248, 179, 248, 179,
248, 175, 0, 0, 174, 254, 175, 0, 5, 0,
254, 179, 5, 0, 0, 180, 256, 181, 0, 174,
256, 175, 0, 257, 0, 256, 179, 257, 0, 0,
248, 0, 4, 176, 177, 0, 180, 258, 181, 0,
248, 0, 250, 0, 4, 176, 177, 0, 258, 179,
248, 0, 258, 179, 250, 0, 258, 179, 4, 176,
177, 0, 180, 248, 179, 248, 179, 248, 179, 248,
181, 0, 180, 248, 179, 248, 179, 248, 181, 0,
180, 4, 179, 248, 181, 0, 4, 0, 4, 178,
84, 178, 4, 0, 180, 261, 181, 0, 4, 176,
248, 177, 178, 85, 0, 259, 0, 261, 179, 259,
0, 5, 0, 32, 174, 5, 175, 0, 32, 174,
5, 179, 258, 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,

Christophe Geuzaine
committed
386, 387, 388, 389, 392, 397, 425, 431, 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,

Christophe Geuzaine
committed
738, 739, 740, 741, 743, 745, 747, 778, 812, 826,
835, 850, 862, 876, 899, 923, 935, 949, 961, 975,
990, 1011, 1022, 1028, 1047, 1058, 1066, 1072, 1078, 1097,
1103, 1119, 1126, 1132, 1138, 1144, 1150, 1169, 1181, 1187,
1206, 1227, 1235, 1241, 1247, 1253, 1265, 1271, 1277, 1289,
1295, 1300, 1305, 1312, 1314, 1315, 1318, 1323, 1334, 1352,
1360, 1365, 1376, 1431, 1451, 1455, 1475, 1491, 1505, 1530,
1555, 1581, 1587, 1592, 1597, 1601, 1611, 1617, 1623, 1627,
1631, 1635, 1639, 1644, 1651, 1655, 1660, 1678, 1688, 1706,
1723, 1740, 1761, 1781, 1801, 1818, 1842, 1847, 1858, 1860,
1863, 1865, 1866, 1867, 1868, 1871, 1873, 1874, 1875, 1876,
1877, 1878, 1879, 1880, 1887, 1888, 1889, 1890, 1891, 1892,
1893, 1894, 1895, 1896, 1897, 1898, 1899, 1900, 1901, 1902,
1903, 1904, 1905, 1906, 1907, 1908, 1909, 1910, 1911, 1912,
1913, 1914, 1915, 1916, 1917, 1918, 1923, 1928, 1932, 1943,
1960, 1971, 1990, 2006, 2022, 2038, 2055, 2062, 2075, 2080,
2084, 2088, 2092, 2097, 2102, 2106, 2110, 2116, 2120, 2125,
2129, 2134, 2138, 2142, 2148, 2154, 2160, 2164, 2170, 2185,
2192, 2198, 2207, 2219, 2223, 2231, 2244, 2249, 2253, 2258,
2263, 2281, 2286, 2303, 2312, 2318, 2323, 2327
};
#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","tRand","tAtan","tAtan2","tSinh","tCosh",
"tTanh","tFabs","tFloor","tCeil","tFmod","tModulo","tHypot","tPrintf","tSprintf",
"tDraw","tPoint","tCircle","tEllipsis","tLine","tSurface","tSpline","tVolume",
"tCharacteristic","tLength","tParametric","tElliptic","tPlane","tRuled","tTransfinite",
"tComplex","tPhysical","tUsing","tBump","tProgression","tRotate","tTranslate",
"tSymmetry","tDilate","tExtrude","tDuplicata","tLoop","tRecombine","tDelete",

Christophe Geuzaine
committed
"tCoherence","tIntersect","tAttractor","tLayers","tScalarTetrahedron","tVectorTetrahedron",
"tTensorTetrahedron","tScalarTriangle","tVectorTriangle","tTensorTriangle","tScalarLine",
"tVectorLine","tTensorLine","tScalarPoint","tVectorPoint","tTensorPoint","tBSpline",
"tNurbs","tOrder","tWith","tBounds","tKnots","tColor","tColorTable","tFor","tIn",
"tEndFor","tIf","tEndIf","tExit","tReturn","tCall","tFunction","tMesh","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","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",

Christophe Geuzaine
committed
"TensorTetrahedronValues","TensorTetrahedron","@12","NumericAffectation","NumericIncrement",
"Affectation","Shape","Transform","MultipleShape","ListOfShapes","Duplicata",
"Delete","Command","Loop","Extrude","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
};
#endif
static const short yyr1[] = { 0,
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,

Christophe Geuzaine
committed
230, 230, 230, 230, 231, 231, 232, 232, 232, 232,
232, 232, 232, 232, 232, 232, 232, 232, 232, 232,
232, 233, 233, 233, 233, 233, 233, 233, 233, 233,

Christophe Geuzaine
committed
233, 233, 233, 233, 233, 233, 233, 233, 233, 233,
233, 233, 233, 233, 233, 233, 233, 233, 233, 234,
234, 234, 234, 235, 235, 235, 236, 236, 237, 238,
238, 238, 239, 239, 239, 239, 240, 240, 240, 240,
240, 240, 240, 240, 240, 240, 241, 241, 241, 241,
241, 241, 241, 241, 242, 242, 243, 243, 244, 244,
244, 244, 244, 244, 244, 244, 245, 245, 246, 246,
247, 247, 247, 247, 247, 248, 248, 248, 248, 248,

Christophe Geuzaine
committed
248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
248, 248, 248, 248, 248, 248, 248, 248, 248, 248,
248, 248, 248, 248, 248, 248, 249, 249, 249, 249,
249, 249, 249, 249, 249, 249, 250, 250, 251, 251,
251, 251, 251, 252, 252, 252, 252, 253, 253, 254,
254, 255, 255, 255, 256, 256, 257, 257, 257, 257,
258, 258, 258, 258, 258, 258, 259, 259, 259, 259,
259, 260, 260, 261, 261, 262, 262, 262
};
static const short yyr2[] = { 0,
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,
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,

Christophe Geuzaine
committed
31, 1, 3, 0, 31, 1, 3, 0, 31, 1,
1, 1, 1, 1, 1, 1, 4, 7, 6, 3,
6, 6, 9, 6, 9, 5, 8, 8, 11, 6,
9, 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,

Christophe Geuzaine
committed
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, 3, 6, 4, 7, 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, 6, 1, 3, 1, 4, 6
};
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,

Christophe Geuzaine
committed
0, 0, 52, 54, 53, 55, 56, 57, 58, 59,
64, 63, 60, 61, 62, 229, 0, 0, 0, 13,
14, 16, 15, 17, 298, 298, 0, 277, 279, 326,
130, 278, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,

Christophe Geuzaine
committed
0, 0, 0, 0, 131, 132, 133, 134, 0, 0,
0, 135, 136, 0, 0, 0, 0, 0, 0, 236,
0, 0, 196, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 307, 0, 0, 0, 0, 307,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 289, 0, 0, 0, 0, 0, 187,
307, 0, 0, 187, 227, 228, 307, 307, 0, 0,
0, 0, 0, 0, 195, 0, 202, 0, 230, 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, 239, 238, 240, 0, 0, 0, 0, 0, 0,
0, 140, 194, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 193, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 279, 0, 308, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 291, 290,
0, 0, 0, 0, 187, 187, 0, 0, 0, 0,
0, 0, 0, 192, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 204, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 300, 0, 0,
0, 0, 0, 283, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 237, 307,
0, 130, 0, 0, 0, 0, 137, 0, 254, 253,
251, 252, 247, 249, 248, 250, 242, 241, 243, 244,
245, 246, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 279, 311, 312, 0,
0, 0, 0, 0, 0, 0, 293, 292, 186, 0,
185, 184, 0, 0, 0, 0, 0, 189, 188, 226,
0, 0, 190, 0, 0, 0, 0, 0, 0, 0,
0, 205, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 299, 0, 0, 19, 0, 280,
285, 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, 256, 257, 258,
259, 260, 261, 262, 263, 264, 276, 265, 0, 267,
268, 269, 270, 271, 272, 0, 0, 0, 327, 0,
0, 0, 0, 0, 0, 0, 146, 0, 0, 0,
0, 0, 65, 0, 0, 156, 307, 307, 0, 307,
168, 0, 176, 307, 307, 309, 0, 0, 0, 310,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 180, 182, 0, 0,
0, 0, 0, 0, 0, 0, 307, 0, 0, 307,
0, 0, 0, 307, 307, 0, 0, 0, 0, 307,
307, 0, 0, 0, 0, 0, 307, 0, 307, 0,
0, 0, 0, 0, 301, 0, 298, 0, 282, 0,
0, 0, 67, 0, 0, 0, 0, 0, 139, 0,
0, 0, 0, 141, 142, 144, 0, 0, 320, 0,
324, 0, 150, 255, 0, 0, 0, 0, 307, 0,
307, 0, 0, 313, 287, 279, 314, 315, 155, 0,
307, 307, 307, 219, 0, 307, 307, 307, 307, 307,
307, 307, 0, 0, 0, 0, 0, 0, 0, 225,
191, 0, 0, 0, 0, 302, 0, 0, 0, 197,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 231, 232, 233, 234, 235,
0, 0, 0, 0, 0, 0, 0, 18, 0, 284,
0, 0, 0, 266, 273, 274, 275, 328, 130, 0,
0, 0, 0, 138, 0, 0, 0, 279, 0, 0,
322, 66, 152, 160, 0, 163, 0, 157, 0, 158,
178, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 187,
0, 0, 0, 0, 0, 0, 0, 0, 166, 0,
307, 307, 0, 307, 0, 0, 0, 0, 0, 0,
307, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 307,
0, 0, 0, 0, 0, 0, 0, 0, 298, 286,
68, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 147, 0, 0, 148, 0,
0, 0, 0, 325, 0, 165, 175, 288, 316, 0,
223, 169, 171, 0, 0, 222, 224, 177, 153, 164,
174, 179, 0, 297, 0, 296, 0, 0, 207, 0,
209, 0, 211, 0, 0, 0, 302, 0, 305, 0,
0, 0, 0, 199, 198, 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, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
143, 145, 0, 151, 0, 0, 0, 0, 161, 0,
221, 220, 187, 0, 183, 0, 0, 0, 0, 0,
0, 215, 0, 0, 0, 304, 307, 303, 307, 0,
0, 307, 0, 0, 302, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 307, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 323, 321,
319, 0, 0, 0, 0, 295, 0, 0, 0, 218,
307, 0, 216, 0, 0, 0, 306, 0, 0, 200,
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, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 149, 0, 0, 181,
0, 0, 0, 0, 0, 213, 0, 0, 307, 307,
167, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 84, 88, 92, 0, 318, 0,
294, 208, 210, 212, 0, 307, 154, 159, 0, 0,
170, 0, 0, 0, 0, 0, 29, 32, 40, 0,
41, 48, 43, 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, 317, 0, 0, 307, 0, 0, 0, 0, 0,
24, 27, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 82, 0, 86, 0, 90, 0,
214, 0, 0, 0, 0, 0, 307, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 44, 20, 0, 0, 0, 0, 0, 0, 0,
0, 0, 83, 85, 87, 89, 91, 93, 162, 217,
0, 0, 0, 0, 307, 0, 0, 0, 0, 0,
0, 96, 100, 104, 0, 0, 0, 0, 0, 0,
6, 307, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 173, 0, 0, 0, 0, 0, 0,
0, 0, 0, 94, 0, 98, 0, 102, 0, 307,
0, 0, 0, 172, 0, 22, 0, 0, 0, 0,
0, 0, 95, 97, 99, 101, 103, 105, 307, 0,
0, 0, 108, 112, 116, 0, 0, 0, 0, 0,
0, 0, 307, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 106, 0, 110, 0, 114, 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[] = { 1489,

Christophe Geuzaine
committed
5, 6, 19, 20, 21, 22, 7, 63, 64, 65,
376, 1264, 536, 1214, 1266, 537, 1215, 1268, 538, 1216,
1373, 539, 1346, 1375, 540, 1347, 1377, 541, 1348, 1434,
542, 1420, 1436, 543, 1421, 1438, 544, 1422, 1471, 545,
1465, 1473, 546, 1466, 1475, 547, 1467, 127, 227, 66,
469, 459, 460, 461, 462, 70, 71, 72, 73, 1031,
1032, 74, 75, 78, 781, 294, 130, 439, 163, 164,
222, 369, 863, 958, 959, 440, 701, 581, 702, 131
};
static const short yypact[] = { 1875,
140,-32768,-32768, -29,-32768, 253, 1993,-32768, 12, 166,
172, 176, 191, 260, 296, 29, 32, 61,-32768,-32768,
-32768,-32768, 317, 131, 302, -52, 151, 190, -37, -9,
213, 255, 194, 256, 320, 377, 386, 126, 391, 413,
269, 97, 97, 283, 230, 290, 401, 8, 450, 465,
73, 308, -15, 10,-32768, 324,-32768, 483,-32768, 501,
510, 486,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
-32768,-32768,-32768,-32768,-32768,-32768, 522, 12, 2015,-32768,
-32768,-32768,-32768,-32768, 352, 352, 525,-32768, 23, 6,
-32768,-32768, 353, 358, 359, 364, 365, 366, 368, 372,
374, 375, 381, 382, 383, 384, 387, 388, 389, 394,
395, 396, 403, 404,-32768,-32768,-32768,-32768, 65, 65,
65,-32768,-32768, 65, 608, 48, 65, 554, 578,-32768,
573, 526,-32768, 65, 65, 65, 65, 406, 65, 65,
407, 65, 65, 65, 16, 65, 408, 409, 417, 16,
421, 424, 434, 435, 436, 441, 442, 97, 97, 97,
65, 65, 11,-32768, 109, 97, 427, 459, 460,-32768,
16, 411, 635,-32768,-32768,-32768, 16, 16, 65, -30,
65, 555, 65, 65,-32768, 637,-32768, 471,-32768, 12,
472, 473, 487, 488, 489, 490, 491, 492, 493, 494,
495, 498, 499, 500, 502, 504, 505, 507, 513, 524,
527, 531, 532, 533, 534, 535, 539, 541, 542, 543,
655, 520, 528, 521, 65, 714,-32768, 97,-32768, 65,

Christophe Geuzaine
committed
65, 65, 65, 65, 65, 65, 65, 65, 65, 65,
65, 65, 65, 65, 65, 65, 65, 65, 65, 65,
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
715, 546, 546, 546, 4772, 716, 4672, 402, 544, 717,
638,-32768,-32768, 65, 65, 65, 65, 65, 65, 65,
65, 65, 65, 65, 65, 65, 65, 65,-32768, -48,
4795, 2030, 4818, 4841, 65, 4864, 2053, 65, 2076, 4887,
4910, 227, 1536, 6244, 720, 4933, 65, 65, 65, 721,
65, 65, 65, 65, 65, 65, 65, -107,-32768,-32768,
1276, 1846, 97, 97, 420, 420, -22, 65, 65, 65,
1806, 60, 65,-32768, 1823, 722, 729, 4956, 639, 65,
4979, 566, 1156, 5002,-32768, 65, 602, 743, 744, 745,
747, 748, 749, 750, 751, 768, 769, 770, 771, 773,
774, 775, 776, 778, 779, 781, 783, 784, 785, 801,
675, 803, 807, 808, 812, 820, 828,-32768, -7, 831,
834, 832, 4697, 207, 130, 692, 5025, 5048, 5071, 5094,
5117, 5140, 5163, 5186, 5209, 5232, 5255, 2467, 5278, 5301,
5324, 5347, 5370, 5393, 2488, 2509, 2530, 84,-32768, 16,
294, 836, 65, 837, 835, 7,-32768, 1559, 833, 689,
433, 433, -102, -102, -102, -102, 150, 150, 546, 546,
546, 546, 852, 1536, 853, 857, 860, 861, 5416, 862,
864, 5439, 866, 867, 869, 945, 241, 1595,-32768, 19,
65, 870, 2099, 5462, 5485, 65, 2122, 2145, 5508, 5531,
5554, 5577, 5600, 97, 65, 65,-32768,-32768,-32768, 661,
1057,-32768, 678, 65, 2551, 2572, 2593,-32768,-32768,-32768,
65, 4722,-32768, 698, 711, 885, 719, 5623, 887, 65,
65,-32768, 5646, 755, 723, 724, 725, 726, 727, 730,
731, 732, 733, 734, 736, 737, 738, 739, 740, 741,
742, 757, 758, 759, 760, 762, 763, 764, 767, 797,
798, 799, 800, 802,-32768, 903, 805,-32768, 804, 62,
-32768,-32768, 811, 817, 839, 841, 844, 845, 846, 847,
848, 849, 850, 854, 944,-32768,-32768,-32768,-32768,-32768,

Christophe Geuzaine
committed
-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 65,-32768,
-32768,-32768,-32768,-32768,-32768, 65, 65, 65,-32768, 1536,
947, 51, 65, 976, 980, 665,-32768, 1002, 851, 9,
1020, 65,-32768, 173, 97,-32768, 16, 16, 1022, 16,
-32768, 1024,-32768, 16, 16,-32768, 1456, 65, 1570,-32768,
1006, 855, 1025, 1029, 1030, 356, 1033, 1035, 1048, 1049,
1050, 1051, 1053, 127, 2614, 2635,-32768,-32768, 2168, 97,
97, 97, 1028, 1055, 65, 65, 16, 65, 1056, 16,
1651, 529, 1058, 922, 1064, 65, 65, 97, 1066, 1067,
906, 1069, 1070, 16, 16, 1071, 97, 1072, 1073, 16,
16, 1074, 1087, 1096, 1101, 1104, 16, 52, 16, 1107,
1106, 1108, 1109, 1112,-32768, 1110, 352, 1113,-32768, 858,
65, 65, 65, 65, 65, 65, 65, 65, 65, 65,
65, 65,-32768, 5669, 5692, 5715, 5738, 178,-32768, 415,
940, 1116, 1076,-32768,-32768,-32768, 9, 65, 948, 1628,
-32768, 184,-32768, 6244, 1119, 41, 54, 1122, 16, 1124,
16, 1126, 1127,-32768, 1666, 250, 1595,-32768,-32768, 65,
16, 16, 16,-32768, 348, 16, 16, 16, 16, 16,
16, 16, 65, 65, 65, 954, -55, -34, -14,-32768,
-32768, 2656, 2677, 1131, 5761, -40, 1059, 65, 65,-32768,
958, 12, 960, 2698, 2719, -105, 961, 966, 973, 978,
975, 981, 979, 995, 94, 996, 982, 1003, 998, 1001,
1007, 1018, 1019, 1021, 1027,-32768,-32768,-32768,-32768,-32768,
1026, 1040, 1041, 1043, 1045, 1031, 1046,-32768, 1047, 207,
1193, 2740, 2761, 2782, 2803, 2824, 2845, 2866, 2887, 2908,
2929, 2950, 2971,-32768,-32768,-32768,-32768,-32768, 1199, 65,
1228, 1240, 7,-32768, 1239, 4747, 1162, 133, 2992, 9,
-32768,-32768,-32768,-32768, 97,-32768, 1242,-32768, 1244,-32768,
-32768, 65, 1499, 3013, 1246, 1247, 1248, 65, 65, 1249,
1250, 1261, 1263, 1270, 1280, 1281, 2191, 5784, 1622, 420,
97, 1282, 97, 1283, 97, 3, 65, 65,-32768, 1285,
16, 16, 1207, 16, 229, 5807, 65, 12, 1290, 65,
16, 1288, 1292, 1291, 1135, 1295, 52, 1296, 1293, 65,
1308, 1321, 1319, 1322, 1324, 52, 65, 65, 65, 16,
1334, 1327, 52, 65, 1338, 1339, 1337, 65, 352,-32768,
-32768, 65, 65, 65, 65, 65, 65, 65, 65, 65,
65, 65, 65, 1340, 1118,-32768, 1341, 1343,-32768, 1166,
1167, 65, 65,-32768, 67,-32768,-32768, 6244,-32768, 65,
-32768,-32768,-32768, 1217, 1451,-32768,-32768,-32768,-32768,-32768,
-32768,-32768, 1170,-32768, 65,-32768, 1171, 135,-32768, 187,
-32768, 197,-32768, 40, 3034, 3055, -40, 200,-32768, 235,
1173, 1267, 65,-32768,-32768, 3076, 12, 1176, 3097, 1175,
-32768, 1177,-32768, 1178,-32768, 1180,-32768, 1179, 5830,-32768,
1187,-32768,-32768, 1200, 1210, 5853, 3118, 5876, 1189,-32768,
1211, 1216, 3139, 1213, 1218,-32768, 3160, 1219, 3181, 3202,
3223, 3244, 3265, 3286, 3307, 3328, 3349, 3370, 3391, 3412,
-32768,-32768, 9,-32768, 1310, 1393, 2214, 3433,-32768, 3454,
-32768,-32768, 420, 1935,-32768, 65, 65, 65, 1394, 1227,
-12,-32768, 65, 65, 1325,-32768, 16,-32768, 16, 65,
2237, 16, 1268, 1403, -40, 52, 1408, 65, 1406, 52,
1407, 1411, 1410, 1416, 1418, 65, 1420, 16, 1421, 1422,
65, 1414, 1428, 65, 1439, 65, 65, 65, 65, 65,
65, 65, 65, 65, 65, 65, 65, 1444,-32768,-32768,
-32768, 65, 1446, 1271, 65,-32768, 2260, 2283, 2306,-32768,
16, 1447,-32768, 2329, 2352, 1284,-32768, 1309, 1524,-32768,
1306, 12,-32768, 1311, 1312, 1313, 3475,-32768, 1286,-32768,
1287,-32768,-32768,-32768, 5899,-32768, 1314,-32768,-32768, 5922,
1320,-32768, 5945, 1315, 3496, 3517, 3538, 3559, 3580, 3601,
3622, 3643, 3664, 5968, 5991, 6014,-32768, 2001, 1317,-32768,
2375, 1457, 1483, 15, 1318,-32768, 1492, 1493, 16, 16,
-32768, 1494, 12, 52, 52, 52, 52, 1495, 1498, 1525,
52, 1526, 1527, 1528, 1500, 65, 65, 65, 65, 65,