diff --git a/Makefile b/Makefile index 971e86e023012f87add9d2253b26ced9f0f28145..67e56fdffe64453436e4f514170eca993871b02a 100644 --- a/Makefile +++ b/Makefile @@ -1,4 +1,4 @@ -# $Id: Makefile,v 1.12 2000-12-06 18:28:30 remacle Exp $ +# $Id: Makefile,v 1.13 2000-12-06 22:25:24 geuzaine Exp $ # ---------------------------------------------------------------------- # Makefile for Gmsh # ---------------------------------------------------------------------- @@ -21,8 +21,8 @@ MESA_STATIC_LIB = $(HOME)/SOURCES/Mesa-3.0-static/lib/libGLw.a\ $(HOME)/SOURCES/Mesa-3.0-static/lib/libGLU.a\ $(HOME)/SOURCES/Mesa-3.0-static/lib/libGL.a - MOTIF_LIB = /usr/local/lib/libXm.so.2 -// MOTIF_LIB = -L/usr/local/lib -L/usr/X11R6/LessTif/Motif1.2/lib -lXm +// MOTIF_LIB = /usr/local/lib/libXm.so.2 + MOTIF_LIB = -L/usr/local/lib -L/usr/X11R6/LessTif/Motif1.2/lib -lXm X_LIB = -L/usr/X11R6/lib -lXt -lX11 -lXext THREAD_LIB = -L/usr/lib -lpthread diff --git a/Parser/Gmsh.tab.cpp b/Parser/Gmsh.tab.cpp index 2e1e869e33bf5f6456b5a65fd9734ae22c3d0e79..3a24cbf82ad7ccb3035809b4b033034f03a0fb0e 100644 --- a/Parser/Gmsh.tab.cpp +++ b/Parser/Gmsh.tab.cpp @@ -31,129 +31,137 @@ #define tFmod 281 #define tModulo 282 #define tHypot 283 -#define tPoint 284 -#define tCircle 285 -#define tEllipsis 286 -#define tLine 287 -#define tSurface 288 -#define tSpline 289 -#define tVolume 290 -#define tCharacteristic 291 -#define tLength 292 -#define tParametric 293 -#define tElliptic 294 -#define tPlane 295 -#define tRuled 296 -#define tTransfinite 297 -#define tComplex 298 -#define tPhysical 299 -#define tUsing 300 -#define tPower 301 +#define tPrintf 284 +#define tPoint 285 +#define tCircle 286 +#define tEllipsis 287 +#define tLine 288 +#define tSurface 289 +#define tSpline 290 +#define tVolume 291 +#define tCharacteristic 292 +#define tLength 293 +#define tParametric 294 +#define tElliptic 295 +#define tPlane 296 +#define tRuled 297 +#define tTransfinite 298 +#define tComplex 299 +#define tPhysical 300 +#define tUsing 301 #define tBump 302 #define tProgression 303 -#define tAssociation 304 -#define tRotate 305 -#define tTranslate 306 -#define tSymmetry 307 -#define tDilate 308 -#define tExtrude 309 -#define tDuplicata 310 -#define tLoop 311 -#define tInclude 312 -#define tRecombine 313 -#define tDelete 314 -#define tCoherence 315 -#define tView 316 -#define tOffset 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 tOptions 339 -#define tFor 340 -#define tEndFor 341 -#define tScript 342 -#define tExit 343 -#define tMerge 344 -#define tGeneral 345 -#define tGeometry 346 -#define tMesh 347 -#define tPostProcessing 348 -#define tPrint 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 UMINUS 403 +#define tRotate 304 +#define tTranslate 305 +#define tSymmetry 306 +#define tDilate 307 +#define tExtrude 308 +#define tDuplicata 309 +#define tLoop 310 +#define tInclude 311 +#define tRecombine 312 +#define tDelete 313 +#define tCoherence 314 +#define tView 315 +#define tOffset 316 +#define tAttractor 317 +#define tLayers 318 +#define tScalarTetrahedron 319 +#define tVectorTetrahedron 320 +#define tTensorTetrahedron 321 +#define tScalarTriangle 322 +#define tVectorTriangle 323 +#define tTensorTriangle 324 +#define tScalarLine 325 +#define tVectorLine 326 +#define tTensorLine 327 +#define tScalarPoint 328 +#define tVectorPoint 329 +#define tTensorPoint 330 +#define tBSpline 331 +#define tNurbs 332 +#define tOrder 333 +#define tWith 334 +#define tBounds 335 +#define tKnots 336 +#define tColor 337 +#define tOptions 338 +#define tFor 339 +#define tEndFor 340 +#define tScript 341 +#define tExit 342 +#define tMerge 343 +#define tB_SPLINE_SURFACE_WITH_KNOTS 344 +#define tB_SPLINE_CURVE_WITH_KNOTS 345 +#define tCARTESIAN_POINT 346 +#define tTRUE 347 +#define tFALSE 348 +#define tUNSPECIFIED 349 +#define tU 350 +#define tV 351 +#define tEDGE_CURVE 352 +#define tVERTEX_POINT 353 +#define tORIENTED_EDGE 354 +#define tPLANE 355 +#define tFACE_OUTER_BOUND 356 +#define tEDGE_LOOP 357 +#define tADVANCED_FACE 358 +#define tVECTOR 359 +#define tDIRECTION 360 +#define tAXIS2_PLACEMENT_3D 361 +#define tISO 362 +#define tENDISO 363 +#define tENDSEC 364 +#define tDATA 365 +#define tHEADER 366 +#define tFILE_DESCRIPTION 367 +#define tFILE_SCHEMA 368 +#define tFILE_NAME 369 +#define tMANIFOLD_SOLID_BREP 370 +#define tCLOSED_SHELL 371 +#define tADVANCED_BREP_SHAPE_REPRESENTATION 372 +#define tFACE_BOUND 373 +#define tCYLINDRICAL_SURFACE 374 +#define tCONICAL_SURFACE 375 +#define tCIRCLE 376 +#define tTRIMMED_CURVE 377 +#define tGEOMETRIC_SET 378 +#define tCOMPOSITE_CURVE_SEGMENT 379 +#define tCONTINUOUS 380 +#define tCOMPOSITE_CURVE 381 +#define tTOROIDAL_SURFACE 382 +#define tPRODUCT_DEFINITION 383 +#define tPRODUCT_DEFINITION_SHAPE 384 +#define tSHAPE_DEFINITION_REPRESENTATION 385 +#define tELLIPSE 386 +#define tTrimmed 387 +#define tSolid 388 +#define tEndSolid 389 +#define tVertex 390 +#define tFacet 391 +#define tNormal 392 +#define tOuter 393 +#define tLoopSTL 394 +#define tEndLoop 395 +#define tEndFacet 396 +#define tAFFECTPLUS 397 +#define tAFFECTMINUS 398 +#define tAFFECTTIMES 399 +#define tAFFECTDIVIDE 400 +#define tAND 401 +#define tOR 402 +#define tNOTEQUAL 403 +#define tEQUAL 404 +#define tAPPROXEQUAL 405 +#define tLESSOREQUAL 406 +#define tGREATEROREQUAL 407 +#define tCROSSPRODUCT 408 +#define UNARYPREC 409 +#define tPLUSPLUS 410 +#define tMINUSMINUS 411 #line 1 "Gmsh.y" - /* $Id: Gmsh.tab.cpp,v 1.17 2000-12-06 18:28:30 remacle Exp $ */ + /* $Id: Gmsh.tab.cpp,v 1.18 2000-12-06 22:25:24 geuzaine Exp $ */ #include <stdarg.h> @@ -195,17 +203,26 @@ static Shape TheShape; static int i,j,k,flag,RecursionLevel=0,ImbricatedLoop = 0; static double d; static ExtrudeParams extr; -static StringXColor *ColorField ; static List_T *ListOfDouble_L,*ListOfDouble2_L; static List_T *ListOfListOfDouble_L; +static void *pNumOpt, *pArrOpt; +static char **pStrOpt; +static unsigned int *pColOpt; +static StringXString *pStrCat; +static StringXNumber *pNumCat; +static StringXArray *pArrCat; +static StringXColor *pColCat; + void yyerror (char *s); void vyyerror (char *fmt, ...); -#line 51 "Gmsh.y" + +#line 59 "Gmsh.y" typedef union { char *c; int i; + unsigned int u; double d; double v[5]; Shape s; @@ -221,26 +238,26 @@ typedef union { -#define YYFINAL 1422 +#define YYFINAL 1414 #define YYFLAG -32768 -#define YYNTBASE 166 +#define YYNTBASE 177 -#define YYTRANSLATE(x) ((unsigned)(x) <= 403 ? yytranslate[x] : 259) +#define YYTRANSLATE(x) ((unsigned)(x) <= 411 ? yytranslate[x] : 257) 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, 2, 2, 2, 2, 155, 2, 2, 158, - 160, 153, 151, 159, 152, 2, 154, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 163, 2, 149, - 2, 150, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 164, 2, 2, 2, 161, 2, 2, 168, + 170, 159, 157, 169, 158, 174, 160, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 173, 2, 153, + 2, 154, 147, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 164, 2, 165, 157, 2, 2, 2, 2, 2, 2, + 175, 2, 176, 165, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 161, 2, 162, 2, 2, 2, 2, 2, + 2, 2, 171, 2, 172, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, @@ -268,7 +285,8 @@ static const short yytranslate[] = { 0, 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, 156 + 148, 149, 150, 151, 152, 155, 156, 162, 163, 166, + 167 }; #if YYDEBUG != 0 @@ -279,266 +297,264 @@ static const short yyprhs[] = { 0, 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, - 512, 514, 516, 518, 520, 525, 528, 535, 544, 545, - 548, 551, 554, 557, 560, 563, 566, 569, 572, 575, - 578, 581, 583, 587, 588, 602, 604, 608, 609, 623, - 625, 629, 630, 644, 646, 650, 651, 671, 673, 677, - 678, 698, 700, 704, 705, 725, 727, 731, 732, 758, - 760, 764, 765, 791, 793, 797, 798, 824, 826, 830, - 831, 863, 865, 869, 870, 902, 904, 908, 909, 941, - 946, 954, 963, 976, 983, 989, 997, 1005, 1018, 1026, - 1036, 1054, 1062, 1071, 1080, 1088, 1100, 1106, 1115, 1125, - 1134, 1157, 1178, 1187, 1196, 1202, 1211, 1219, 1228, 1234, - 1246, 1252, 1262, 1264, 1266, 1268, 1269, 1272, 1277, 1282, - 1286, 1290, 1293, 1297, 1304, 1313, 1315, 1324, 1337, 1346, - 1359, 1368, 1381, 1393, 1409, 1411, 1414, 1424, 1427, 1434, - 1444, 1454, 1463, 1472, 1481, 1488, 1493, 1496, 1497, 1500, - 1505, 1510, 1515, 1520, 1525, 1526, 1529, 1534, 1539, 1544, - 1545, 1551, 1552, 1555, 1560, 1565, 1570, 1571, 1577, 1578, - 1581, 1586, 1591, 1596, 1597, 1603, 1604, 1607, 1612, 1617, - 1622, 1623, 1629, 1630, 1633, 1638, 1643, 1648, 1649, 1655, - 1656, 1659, 1664, 1673, 1678, 1688, 1696, 1698, 1700, 1702, - 1704, 1706, 1708, 1712, 1716, 1720, 1724, 1728, 1732, 1735, - 1738, 1743, 1748, 1753, 1758, 1763, 1768, 1773, 1778, 1783, - 1788, 1795, 1800, 1805, 1810, 1815, 1820, 1825, 1832, 1839, - 1846, 1848, 1850, 1852, 1856, 1863, 1875, 1885, 1893, 1901, - 1902, 1906, 1908, 1912, 1913, 1917, 1921, 1923, 1927, 1928, - 1930, 1934, 1936, 1938, 1942 + 512, 514, 516, 518, 520, 522, 527, 532, 535, 543, + 550, 559, 560, 563, 566, 569, 572, 575, 578, 581, + 584, 587, 590, 593, 596, 598, 602, 603, 617, 619, + 623, 624, 638, 640, 644, 645, 659, 661, 665, 666, + 686, 688, 692, 693, 713, 715, 719, 720, 740, 742, + 746, 747, 773, 775, 779, 780, 806, 808, 812, 813, + 839, 841, 845, 846, 878, 880, 884, 885, 917, 919, + 923, 924, 956, 961, 969, 978, 991, 998, 1004, 1012, + 1020, 1033, 1041, 1051, 1069, 1077, 1086, 1095, 1103, 1115, + 1121, 1130, 1140, 1149, 1172, 1193, 1202, 1211, 1217, 1226, + 1234, 1243, 1249, 1261, 1267, 1277, 1279, 1281, 1283, 1284, + 1287, 1292, 1297, 1301, 1305, 1308, 1312, 1319, 1328, 1330, + 1339, 1352, 1361, 1374, 1383, 1396, 1408, 1424, 1426, 1429, + 1439, 1442, 1449, 1459, 1469, 1478, 1487, 1496, 1503, 1508, + 1511, 1512, 1515, 1517, 1524, 1531, 1538, 1545, 1552, 1559, + 1565, 1571, 1578, 1587, 1588, 1591, 1593, 1595, 1597, 1599, + 1601, 1603, 1605, 1609, 1612, 1615, 1618, 1622, 1626, 1630, + 1634, 1638, 1642, 1646, 1650, 1654, 1658, 1662, 1666, 1670, + 1674, 1680, 1685, 1690, 1695, 1700, 1705, 1710, 1715, 1720, + 1725, 1730, 1737, 1742, 1747, 1752, 1757, 1762, 1767, 1774, + 1781, 1788, 1790, 1792, 1794, 1798, 1803, 1808, 1812, 1819, + 1821, 1824, 1827, 1831, 1835, 1847, 1857, 1865, 1873, 1874, + 1878, 1880, 1884, 1885, 1889, 1893, 1895, 1899, 1900, 1902, + 1906, 1908, 1910, 1914, 1918, 1928, 1936, 1942, 1944 }; -static const short yyrhs[] = { 168, - 0, 167, 0, 173, 0, 140, 0, 143, 144, 249, - 249, 249, 145, 146, 142, 249, 249, 249, 142, 249, - 249, 249, 142, 249, 249, 249, 147, 148, 0, 141, - 0, 0, 168, 169, 0, 170, 0, 172, 0, 171, - 0, 1, 6, 0, 114, 6, 0, 115, 6, 0, - 117, 6, 0, 116, 6, 0, 118, 6, 0, 119, - 158, 253, 159, 5, 160, 6, 0, 120, 158, 253, - 160, 6, 0, 121, 158, 5, 159, 5, 159, 253, - 159, 253, 159, 5, 159, 5, 159, 5, 160, 6, - 0, 3, 7, 98, 158, 5, 159, 252, 160, 6, - 0, 3, 7, 97, 158, 5, 159, 249, 159, 257, - 159, 248, 159, 248, 159, 248, 159, 257, 159, 257, - 159, 248, 160, 6, 0, 3, 7, 96, 158, 5, - 159, 249, 159, 249, 159, 255, 159, 248, 159, 248, - 159, 248, 159, 248, 159, 257, 159, 257, 159, 257, - 159, 257, 159, 248, 160, 6, 0, 3, 7, 104, - 158, 5, 159, 3, 159, 3, 159, 3, 159, 248, - 160, 6, 0, 3, 7, 108, 158, 5, 159, 3, - 159, 248, 160, 6, 0, 3, 7, 125, 158, 5, - 159, 3, 159, 248, 160, 6, 0, 3, 7, 106, - 158, 5, 159, 153, 159, 153, 159, 249, 159, 248, - 160, 6, 0, 3, 7, 109, 158, 5, 159, 257, - 160, 6, 0, 3, 7, 110, 158, 5, 159, 257, - 159, 3, 159, 248, 160, 6, 0, 3, 7, 105, - 158, 5, 159, 3, 160, 6, 0, 3, 7, 111, - 158, 5, 159, 3, 159, 249, 160, 6, 0, 3, - 7, 113, 158, 5, 159, 3, 159, 3, 159, 3, - 160, 6, 0, 3, 7, 112, 158, 5, 159, 252, - 160, 6, 0, 3, 7, 107, 158, 5, 159, 3, - 160, 6, 0, 3, 7, 33, 158, 5, 159, 3, - 159, 3, 160, 6, 0, 3, 7, 123, 158, 5, - 159, 257, 160, 6, 0, 3, 7, 124, 158, 5, - 159, 257, 159, 3, 160, 6, 0, 3, 7, 122, - 158, 5, 159, 3, 160, 6, 0, 3, 7, 126, - 158, 5, 159, 3, 159, 249, 160, 6, 0, 3, - 7, 127, 158, 5, 159, 3, 159, 249, 159, 249, - 160, 6, 0, 3, 7, 134, 158, 5, 159, 3, - 159, 249, 159, 249, 160, 6, 0, 3, 7, 128, - 158, 5, 159, 3, 159, 249, 160, 6, 0, 3, - 7, 138, 158, 5, 159, 3, 159, 249, 159, 249, - 160, 6, 0, 3, 7, 129, 158, 5, 159, 3, - 159, 257, 159, 257, 159, 248, 159, 248, 160, 6, - 0, 3, 7, 130, 158, 5, 159, 257, 160, 6, - 0, 3, 7, 131, 158, 132, 159, 248, 159, 3, - 160, 6, 0, 3, 7, 133, 158, 5, 159, 257, - 159, 248, 160, 6, 0, 3, 7, 135, 158, 5, - 159, 5, 159, 3, 159, 3, 160, 6, 0, 3, - 7, 136, 158, 5, 159, 5, 159, 3, 160, 6, - 0, 3, 7, 137, 158, 3, 159, 3, 160, 6, - 0, 0, 173, 174, 0, 175, 0, 213, 0, 214, - 0, 215, 0, 218, 0, 219, 0, 223, 0, 226, - 0, 227, 0, 220, 0, 222, 0, 221, 0, 85, - 161, 228, 162, 0, 1, 6, 0, 62, 5, 161, - 176, 162, 6, 0, 62, 5, 63, 252, 161, 176, - 162, 6, 0, 0, 176, 178, 0, 176, 181, 0, - 176, 184, 0, 176, 187, 0, 176, 190, 0, 176, - 193, 0, 176, 196, 0, 176, 199, 0, 176, 202, - 0, 176, 205, 0, 176, 208, 0, 176, 211, 0, - 249, 0, 177, 159, 249, 0, 0, 75, 158, 249, - 159, 249, 159, 249, 160, 179, 161, 177, 162, 6, - 0, 249, 0, 180, 159, 249, 0, 0, 76, 158, - 249, 159, 249, 159, 249, 160, 182, 161, 180, 162, - 6, 0, 249, 0, 183, 159, 249, 0, 0, 77, - 158, 249, 159, 249, 159, 249, 160, 185, 161, 183, - 162, 6, 0, 249, 0, 186, 159, 249, 0, 0, - 72, 158, 249, 159, 249, 159, 249, 159, 249, 159, - 249, 159, 249, 160, 188, 161, 186, 162, 6, 0, - 249, 0, 189, 159, 249, 0, 0, 73, 158, 249, - 159, 249, 159, 249, 159, 249, 159, 249, 159, 249, - 160, 191, 161, 189, 162, 6, 0, 249, 0, 192, - 159, 249, 0, 0, 74, 158, 249, 159, 249, 159, - 249, 159, 249, 159, 249, 159, 249, 160, 194, 161, - 192, 162, 6, 0, 249, 0, 195, 159, 249, 0, - 0, 69, 158, 249, 159, 249, 159, 249, 159, 249, - 159, 249, 159, 249, 159, 249, 159, 249, 159, 249, - 160, 197, 161, 195, 162, 6, 0, 249, 0, 198, - 159, 249, 0, 0, 70, 158, 249, 159, 249, 159, - 249, 159, 249, 159, 249, 159, 249, 159, 249, 159, - 249, 159, 249, 160, 200, 161, 198, 162, 6, 0, - 249, 0, 201, 159, 249, 0, 0, 71, 158, 249, - 159, 249, 159, 249, 159, 249, 159, 249, 159, 249, - 159, 249, 159, 249, 159, 249, 160, 203, 161, 201, - 162, 6, 0, 249, 0, 204, 159, 249, 0, 0, - 66, 158, 249, 159, 249, 159, 249, 159, 249, 159, - 249, 159, 249, 159, 249, 159, 249, 159, 249, 159, - 249, 159, 249, 159, 249, 160, 206, 161, 204, 162, - 6, 0, 249, 0, 207, 159, 249, 0, 0, 67, - 158, 249, 159, 249, 159, 249, 159, 249, 159, 249, - 159, 249, 159, 249, 159, 249, 159, 249, 159, 249, - 159, 249, 159, 249, 160, 209, 161, 207, 162, 6, - 0, 249, 0, 210, 159, 249, 0, 0, 68, 158, - 249, 159, 249, 159, 249, 159, 249, 159, 249, 159, - 249, 159, 249, 159, 249, 159, 249, 159, 249, 159, - 249, 159, 249, 160, 212, 161, 210, 162, 6, 0, - 4, 7, 249, 6, 0, 30, 158, 249, 160, 7, - 252, 6, 0, 45, 30, 158, 249, 160, 7, 257, - 6, 0, 64, 30, 257, 7, 161, 249, 159, 249, - 159, 249, 162, 6, 0, 37, 38, 257, 7, 249, - 6, 0, 30, 161, 249, 162, 6, 0, 33, 158, - 249, 160, 7, 257, 6, 0, 35, 158, 249, 160, - 7, 257, 6, 0, 64, 33, 257, 7, 161, 249, - 159, 249, 159, 249, 162, 6, 0, 31, 158, 249, - 160, 7, 257, 6, 0, 31, 158, 249, 160, 7, - 257, 41, 252, 6, 0, 39, 158, 249, 160, 7, - 161, 249, 159, 249, 159, 5, 159, 5, 159, 5, - 162, 6, 0, 32, 158, 249, 160, 7, 257, 6, - 0, 45, 33, 158, 249, 160, 7, 257, 6, 0, - 33, 57, 158, 249, 160, 7, 257, 6, 0, 78, - 158, 249, 160, 7, 257, 6, 0, 79, 158, 249, - 160, 7, 257, 83, 257, 80, 249, 6, 0, 33, - 161, 249, 162, 6, 0, 41, 34, 158, 249, 160, - 7, 257, 6, 0, 139, 34, 158, 249, 160, 7, - 249, 257, 6, 0, 42, 34, 158, 249, 160, 7, - 257, 6, 0, 79, 34, 81, 82, 158, 249, 160, - 7, 255, 83, 161, 257, 159, 257, 162, 80, 161, - 249, 159, 249, 162, 6, 0, 79, 34, 158, 249, - 160, 7, 255, 83, 161, 257, 159, 257, 162, 80, - 161, 249, 159, 249, 162, 6, 0, 45, 34, 158, - 249, 160, 7, 257, 6, 0, 34, 57, 158, 249, - 160, 7, 257, 6, 0, 34, 161, 249, 162, 6, - 0, 44, 36, 158, 249, 160, 7, 257, 6, 0, - 36, 158, 249, 160, 7, 257, 6, 0, 45, 36, - 158, 249, 160, 7, 257, 6, 0, 52, 252, 161, - 216, 162, 0, 51, 161, 252, 159, 252, 159, 249, - 162, 161, 216, 162, 0, 53, 252, 161, 216, 162, - 0, 54, 161, 252, 159, 249, 162, 161, 216, 162, - 0, 218, 0, 217, 0, 215, 0, 0, 217, 214, - 0, 56, 161, 217, 162, 0, 60, 161, 217, 162, - 0, 58, 5, 6, 0, 95, 5, 6, 0, 89, - 6, 0, 90, 5, 6, 0, 86, 158, 249, 163, - 249, 160, 0, 86, 158, 249, 163, 249, 163, 249, - 160, 0, 87, 0, 55, 30, 161, 249, 159, 252, - 162, 6, 0, 55, 30, 161, 249, 159, 252, 159, - 252, 159, 249, 162, 6, 0, 55, 33, 161, 249, - 159, 252, 162, 6, 0, 55, 33, 161, 249, 159, - 252, 159, 252, 159, 249, 162, 6, 0, 55, 34, - 161, 249, 159, 252, 162, 6, 0, 55, 34, 161, - 249, 159, 252, 159, 252, 159, 249, 162, 6, 0, - 55, 34, 161, 249, 159, 252, 162, 161, 224, 162, - 6, 0, 55, 34, 161, 249, 159, 252, 159, 252, - 159, 249, 162, 161, 224, 162, 6, 0, 225, 0, - 224, 225, 0, 65, 161, 257, 159, 257, 159, 257, - 162, 6, 0, 59, 6, 0, 43, 33, 257, 7, - 249, 6, 0, 43, 33, 257, 7, 249, 46, 49, - 249, 6, 0, 43, 33, 257, 7, 249, 46, 48, - 249, 6, 0, 43, 34, 161, 249, 162, 7, 257, - 6, 0, 40, 34, 161, 249, 162, 7, 257, 6, - 0, 43, 36, 161, 249, 162, 7, 257, 6, 0, - 59, 34, 257, 7, 249, 6, 0, 59, 34, 257, - 6, 0, 61, 6, 0, 0, 228, 229, 0, 91, - 161, 230, 162, 0, 92, 161, 233, 162, 0, 93, - 161, 236, 162, 0, 94, 161, 239, 162, 0, 95, - 161, 242, 162, 0, 0, 230, 231, 0, 4, 7, - 5, 6, 0, 4, 7, 249, 6, 0, 4, 7, - 252, 6, 0, 0, 84, 232, 161, 245, 162, 0, - 0, 233, 234, 0, 4, 7, 5, 6, 0, 4, - 7, 249, 6, 0, 4, 7, 252, 6, 0, 0, - 84, 235, 161, 245, 162, 0, 0, 236, 237, 0, - 4, 7, 5, 6, 0, 4, 7, 249, 6, 0, - 4, 7, 252, 6, 0, 0, 84, 238, 161, 245, - 162, 0, 0, 239, 240, 0, 4, 7, 5, 6, - 0, 4, 7, 249, 6, 0, 4, 7, 252, 6, - 0, 0, 84, 241, 161, 245, 162, 0, 0, 242, - 243, 0, 4, 7, 5, 6, 0, 4, 7, 249, - 6, 0, 4, 7, 252, 6, 0, 0, 84, 244, - 161, 245, 162, 0, 0, 246, 245, 0, 4, 7, - 4, 6, 0, 4, 7, 161, 4, 159, 249, 162, - 6, 0, 4, 7, 247, 6, 0, 161, 249, 159, - 249, 159, 249, 159, 249, 162, 0, 161, 249, 159, - 249, 159, 249, 162, 0, 99, 0, 100, 0, 101, - 0, 102, 0, 103, 0, 250, 0, 158, 249, 160, - 0, 249, 152, 249, 0, 249, 151, 249, 0, 249, - 153, 249, 0, 249, 154, 249, 0, 249, 157, 249, - 0, 152, 249, 0, 151, 249, 0, 10, 158, 249, - 160, 0, 11, 158, 249, 160, 0, 12, 158, 249, - 160, 0, 13, 158, 249, 160, 0, 14, 158, 249, - 160, 0, 15, 158, 249, 160, 0, 16, 158, 249, - 160, 0, 17, 158, 249, 160, 0, 18, 158, 249, - 160, 0, 19, 158, 249, 160, 0, 20, 158, 249, - 159, 249, 160, 0, 21, 158, 249, 160, 0, 22, - 158, 249, 160, 0, 23, 158, 249, 160, 0, 24, - 158, 249, 160, 0, 25, 158, 249, 160, 0, 26, - 158, 249, 160, 0, 27, 158, 249, 159, 249, 160, - 0, 28, 158, 249, 159, 249, 160, 0, 29, 158, - 249, 159, 249, 160, 0, 3, 0, 9, 0, 4, - 0, 249, 8, 249, 0, 249, 8, 164, 249, 165, - 249, 0, 161, 249, 159, 249, 159, 249, 159, 249, - 159, 249, 162, 0, 161, 249, 159, 249, 159, 249, - 159, 249, 162, 0, 161, 249, 159, 249, 159, 249, - 162, 0, 158, 249, 159, 249, 159, 249, 160, 0, - 0, 158, 254, 160, 0, 5, 0, 254, 159, 5, - 0, 0, 161, 256, 162, 0, 158, 256, 160, 0, - 257, 0, 256, 159, 257, 0, 0, 249, 0, 161, - 258, 162, 0, 249, 0, 251, 0, 258, 159, 249, - 0, 258, 159, 251, 0 +static const short yyrhs[] = { 179, + 0, 178, 0, 184, 0, 134, 0, 137, 138, 245, + 245, 245, 139, 140, 136, 245, 245, 245, 136, 245, + 245, 245, 136, 245, 245, 245, 141, 142, 0, 135, + 0, 0, 179, 180, 0, 181, 0, 183, 0, 182, + 0, 1, 6, 0, 108, 6, 0, 109, 6, 0, + 111, 6, 0, 110, 6, 0, 112, 6, 0, 113, + 168, 250, 169, 5, 170, 6, 0, 114, 168, 250, + 170, 6, 0, 115, 168, 5, 169, 5, 169, 250, + 169, 250, 169, 5, 169, 5, 169, 5, 170, 6, + 0, 3, 7, 92, 168, 5, 169, 248, 170, 6, + 0, 3, 7, 91, 168, 5, 169, 245, 169, 254, + 169, 244, 169, 244, 169, 244, 169, 254, 169, 254, + 169, 244, 170, 6, 0, 3, 7, 90, 168, 5, + 169, 245, 169, 245, 169, 252, 169, 244, 169, 244, + 169, 244, 169, 244, 169, 254, 169, 254, 169, 254, + 169, 254, 169, 244, 170, 6, 0, 3, 7, 98, + 168, 5, 169, 3, 169, 3, 169, 3, 169, 244, + 170, 6, 0, 3, 7, 102, 168, 5, 169, 3, + 169, 244, 170, 6, 0, 3, 7, 119, 168, 5, + 169, 3, 169, 244, 170, 6, 0, 3, 7, 100, + 168, 5, 169, 159, 169, 159, 169, 245, 169, 244, + 170, 6, 0, 3, 7, 103, 168, 5, 169, 254, + 170, 6, 0, 3, 7, 104, 168, 5, 169, 254, + 169, 3, 169, 244, 170, 6, 0, 3, 7, 99, + 168, 5, 169, 3, 170, 6, 0, 3, 7, 105, + 168, 5, 169, 3, 169, 245, 170, 6, 0, 3, + 7, 107, 168, 5, 169, 3, 169, 3, 169, 3, + 170, 6, 0, 3, 7, 106, 168, 5, 169, 248, + 170, 6, 0, 3, 7, 101, 168, 5, 169, 3, + 170, 6, 0, 3, 7, 34, 168, 5, 169, 3, + 169, 3, 170, 6, 0, 3, 7, 117, 168, 5, + 169, 254, 170, 6, 0, 3, 7, 118, 168, 5, + 169, 254, 169, 3, 170, 6, 0, 3, 7, 116, + 168, 5, 169, 3, 170, 6, 0, 3, 7, 120, + 168, 5, 169, 3, 169, 245, 170, 6, 0, 3, + 7, 121, 168, 5, 169, 3, 169, 245, 169, 245, + 170, 6, 0, 3, 7, 128, 168, 5, 169, 3, + 169, 245, 169, 245, 170, 6, 0, 3, 7, 122, + 168, 5, 169, 3, 169, 245, 170, 6, 0, 3, + 7, 132, 168, 5, 169, 3, 169, 245, 169, 245, + 170, 6, 0, 3, 7, 123, 168, 5, 169, 3, + 169, 254, 169, 254, 169, 244, 169, 244, 170, 6, + 0, 3, 7, 124, 168, 5, 169, 254, 170, 6, + 0, 3, 7, 125, 168, 126, 169, 244, 169, 3, + 170, 6, 0, 3, 7, 127, 168, 5, 169, 254, + 169, 244, 170, 6, 0, 3, 7, 129, 168, 5, + 169, 5, 169, 3, 169, 3, 170, 6, 0, 3, + 7, 130, 168, 5, 169, 5, 169, 3, 170, 6, + 0, 3, 7, 131, 168, 3, 169, 3, 170, 6, + 0, 0, 184, 185, 0, 187, 0, 186, 0, 225, + 0, 226, 0, 227, 0, 230, 0, 231, 0, 235, + 0, 238, 0, 239, 0, 232, 0, 234, 0, 233, + 0, 84, 171, 240, 172, 0, 87, 171, 242, 172, + 0, 1, 6, 0, 30, 168, 5, 169, 245, 170, + 6, 0, 61, 5, 171, 188, 172, 6, 0, 61, + 5, 62, 248, 171, 188, 172, 6, 0, 0, 188, + 190, 0, 188, 193, 0, 188, 196, 0, 188, 199, + 0, 188, 202, 0, 188, 205, 0, 188, 208, 0, + 188, 211, 0, 188, 214, 0, 188, 217, 0, 188, + 220, 0, 188, 223, 0, 245, 0, 189, 169, 245, + 0, 0, 74, 168, 245, 169, 245, 169, 245, 170, + 191, 171, 189, 172, 6, 0, 245, 0, 192, 169, + 245, 0, 0, 75, 168, 245, 169, 245, 169, 245, + 170, 194, 171, 192, 172, 6, 0, 245, 0, 195, + 169, 245, 0, 0, 76, 168, 245, 169, 245, 169, + 245, 170, 197, 171, 195, 172, 6, 0, 245, 0, + 198, 169, 245, 0, 0, 71, 168, 245, 169, 245, + 169, 245, 169, 245, 169, 245, 169, 245, 170, 200, + 171, 198, 172, 6, 0, 245, 0, 201, 169, 245, + 0, 0, 72, 168, 245, 169, 245, 169, 245, 169, + 245, 169, 245, 169, 245, 170, 203, 171, 201, 172, + 6, 0, 245, 0, 204, 169, 245, 0, 0, 73, + 168, 245, 169, 245, 169, 245, 169, 245, 169, 245, + 169, 245, 170, 206, 171, 204, 172, 6, 0, 245, + 0, 207, 169, 245, 0, 0, 68, 168, 245, 169, + 245, 169, 245, 169, 245, 169, 245, 169, 245, 169, + 245, 169, 245, 169, 245, 170, 209, 171, 207, 172, + 6, 0, 245, 0, 210, 169, 245, 0, 0, 69, + 168, 245, 169, 245, 169, 245, 169, 245, 169, 245, + 169, 245, 169, 245, 169, 245, 169, 245, 170, 212, + 171, 210, 172, 6, 0, 245, 0, 213, 169, 245, + 0, 0, 70, 168, 245, 169, 245, 169, 245, 169, + 245, 169, 245, 169, 245, 169, 245, 169, 245, 169, + 245, 170, 215, 171, 213, 172, 6, 0, 245, 0, + 216, 169, 245, 0, 0, 65, 168, 245, 169, 245, + 169, 245, 169, 245, 169, 245, 169, 245, 169, 245, + 169, 245, 169, 245, 169, 245, 169, 245, 169, 245, + 170, 218, 171, 216, 172, 6, 0, 245, 0, 219, + 169, 245, 0, 0, 66, 168, 245, 169, 245, 169, + 245, 169, 245, 169, 245, 169, 245, 169, 245, 169, + 245, 169, 245, 169, 245, 169, 245, 169, 245, 170, + 221, 171, 219, 172, 6, 0, 245, 0, 222, 169, + 245, 0, 0, 67, 168, 245, 169, 245, 169, 245, + 169, 245, 169, 245, 169, 245, 169, 245, 169, 245, + 169, 245, 169, 245, 169, 245, 169, 245, 170, 224, + 171, 222, 172, 6, 0, 4, 7, 245, 6, 0, + 31, 168, 245, 170, 7, 248, 6, 0, 46, 31, + 168, 245, 170, 7, 254, 6, 0, 63, 31, 254, + 7, 171, 245, 169, 245, 169, 245, 172, 6, 0, + 38, 39, 254, 7, 245, 6, 0, 31, 171, 245, + 172, 6, 0, 34, 168, 245, 170, 7, 254, 6, + 0, 36, 168, 245, 170, 7, 254, 6, 0, 63, + 34, 254, 7, 171, 245, 169, 245, 169, 245, 172, + 6, 0, 32, 168, 245, 170, 7, 254, 6, 0, + 32, 168, 245, 170, 7, 254, 42, 248, 6, 0, + 40, 168, 245, 170, 7, 171, 245, 169, 245, 169, + 5, 169, 5, 169, 5, 172, 6, 0, 33, 168, + 245, 170, 7, 254, 6, 0, 46, 34, 168, 245, + 170, 7, 254, 6, 0, 34, 56, 168, 245, 170, + 7, 254, 6, 0, 77, 168, 245, 170, 7, 254, + 6, 0, 78, 168, 245, 170, 7, 254, 82, 254, + 79, 245, 6, 0, 34, 171, 245, 172, 6, 0, + 42, 35, 168, 245, 170, 7, 254, 6, 0, 133, + 35, 168, 245, 170, 7, 245, 254, 6, 0, 43, + 35, 168, 245, 170, 7, 254, 6, 0, 78, 35, + 80, 81, 168, 245, 170, 7, 252, 82, 171, 254, + 169, 254, 172, 79, 171, 245, 169, 245, 172, 6, + 0, 78, 35, 168, 245, 170, 7, 252, 82, 171, + 254, 169, 254, 172, 79, 171, 245, 169, 245, 172, + 6, 0, 46, 35, 168, 245, 170, 7, 254, 6, + 0, 35, 56, 168, 245, 170, 7, 254, 6, 0, + 35, 171, 245, 172, 6, 0, 45, 37, 168, 245, + 170, 7, 254, 6, 0, 37, 168, 245, 170, 7, + 254, 6, 0, 46, 37, 168, 245, 170, 7, 254, + 6, 0, 51, 248, 171, 228, 172, 0, 50, 171, + 248, 169, 248, 169, 245, 172, 171, 228, 172, 0, + 52, 248, 171, 228, 172, 0, 53, 171, 248, 169, + 245, 172, 171, 228, 172, 0, 230, 0, 229, 0, + 227, 0, 0, 229, 226, 0, 55, 171, 229, 172, + 0, 59, 171, 229, 172, 0, 57, 5, 6, 0, + 30, 5, 6, 0, 88, 6, 0, 89, 5, 6, + 0, 85, 168, 245, 173, 245, 170, 0, 85, 168, + 245, 173, 245, 173, 245, 170, 0, 86, 0, 54, + 31, 171, 245, 169, 248, 172, 6, 0, 54, 31, + 171, 245, 169, 248, 169, 248, 169, 245, 172, 6, + 0, 54, 34, 171, 245, 169, 248, 172, 6, 0, + 54, 34, 171, 245, 169, 248, 169, 248, 169, 245, + 172, 6, 0, 54, 35, 171, 245, 169, 248, 172, + 6, 0, 54, 35, 171, 245, 169, 248, 169, 248, + 169, 245, 172, 6, 0, 54, 35, 171, 245, 169, + 248, 172, 171, 236, 172, 6, 0, 54, 35, 171, + 245, 169, 248, 169, 248, 169, 245, 172, 171, 236, + 172, 6, 0, 237, 0, 236, 237, 0, 64, 171, + 254, 169, 254, 169, 254, 172, 6, 0, 58, 6, + 0, 44, 34, 254, 7, 245, 6, 0, 44, 34, + 254, 7, 245, 47, 49, 245, 6, 0, 44, 34, + 254, 7, 245, 47, 48, 245, 6, 0, 44, 35, + 171, 245, 172, 7, 254, 6, 0, 41, 35, 171, + 245, 172, 7, 254, 6, 0, 44, 37, 171, 245, + 172, 7, 254, 6, 0, 58, 35, 254, 7, 245, + 6, 0, 58, 35, 254, 6, 0, 60, 6, 0, + 0, 240, 241, 0, 186, 0, 4, 174, 4, 7, + 5, 6, 0, 4, 174, 4, 7, 245, 6, 0, + 4, 174, 4, 143, 245, 6, 0, 4, 174, 4, + 144, 245, 6, 0, 4, 174, 4, 145, 245, 6, + 0, 4, 174, 4, 146, 245, 6, 0, 4, 174, + 4, 166, 6, 0, 4, 174, 4, 167, 6, 0, + 4, 174, 4, 7, 248, 6, 0, 4, 174, 83, + 174, 4, 7, 256, 6, 0, 0, 242, 243, 0, + 241, 0, 93, 0, 94, 0, 95, 0, 96, 0, + 97, 0, 246, 0, 168, 245, 170, 0, 158, 245, + 0, 157, 245, 0, 164, 245, 0, 245, 158, 245, + 0, 245, 157, 245, 0, 245, 159, 245, 0, 245, + 160, 245, 0, 245, 161, 245, 0, 245, 165, 245, + 0, 245, 153, 245, 0, 245, 154, 245, 0, 245, + 155, 245, 0, 245, 156, 245, 0, 245, 151, 245, + 0, 245, 150, 245, 0, 245, 148, 245, 0, 245, + 149, 245, 0, 245, 147, 245, 8, 245, 0, 10, + 168, 245, 170, 0, 11, 168, 245, 170, 0, 12, + 168, 245, 170, 0, 13, 168, 245, 170, 0, 14, + 168, 245, 170, 0, 15, 168, 245, 170, 0, 16, + 168, 245, 170, 0, 17, 168, 245, 170, 0, 18, + 168, 245, 170, 0, 19, 168, 245, 170, 0, 20, + 168, 245, 169, 245, 170, 0, 21, 168, 245, 170, + 0, 22, 168, 245, 170, 0, 23, 168, 245, 170, + 0, 24, 168, 245, 170, 0, 25, 168, 245, 170, + 0, 26, 168, 245, 170, 0, 27, 168, 245, 169, + 245, 170, 0, 28, 168, 245, 169, 245, 170, 0, + 29, 168, 245, 169, 245, 170, 0, 3, 0, 9, + 0, 4, 0, 4, 174, 4, 0, 4, 174, 4, + 166, 0, 4, 174, 4, 167, 0, 245, 8, 245, + 0, 245, 8, 175, 245, 176, 245, 0, 249, 0, + 158, 248, 0, 157, 248, 0, 248, 158, 248, 0, + 248, 157, 248, 0, 171, 245, 169, 245, 169, 245, + 169, 245, 169, 245, 172, 0, 171, 245, 169, 245, + 169, 245, 169, 245, 172, 0, 171, 245, 169, 245, + 169, 245, 172, 0, 168, 245, 169, 245, 169, 245, + 170, 0, 0, 168, 251, 170, 0, 5, 0, 251, + 169, 5, 0, 0, 171, 253, 172, 0, 168, 253, + 170, 0, 254, 0, 253, 169, 254, 0, 0, 245, + 0, 171, 255, 172, 0, 245, 0, 247, 0, 255, + 169, 245, 0, 255, 169, 247, 0, 171, 245, 169, + 245, 169, 245, 169, 245, 172, 0, 171, 245, 169, + 245, 169, 245, 172, 0, 171, 4, 169, 245, 172, + 0, 4, 0, 4, 174, 83, 174, 4, 0 }; #endif #if YYDEBUG != 0 static const short yyrline[] = { 0, - 113, 115, 116, 123, 131, 145, 157, 159, 162, 164, - 165, 166, 169, 175, 180, 181, 182, 185, 189, 192, - 198, 203, 209, 217, 222, 226, 232, 237, 241, 246, - 250, 253, 258, 262, 266, 270, 275, 279, 282, 286, - 290, 294, 298, 302, 306, 309, 313, 316, 320, 323, - 332, 336, 342, 344, 345, 346, 347, 348, 349, 350, - 351, 352, 353, 355, 356, 357, 364, 369, 375, 380, - 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, - 391, 394, 397, 401, 407, 413, 416, 420, 426, 432, - 435, 439, 445, 451, 454, 458, 466, 472, 475, 479, - 487, 493, 496, 500, 508, 514, 517, 521, 533, 539, - 542, 546, 558, 564, 567, 571, 583, 589, 592, 596, - 609, 615, 618, 622, 635, 641, 644, 648, 661, 673, - 687, 698, 704, 723, 734, 742, 748, 754, 773, 779, - 795, 802, 808, 814, 820, 826, 845, 857, 863, 882, - 903, 911, 917, 923, 929, 941, 947, 953, 965, 971, - 976, 981, 988, 990, 991, 994, 999, 1010, 1028, 1043, - 1071, 1102, 1106, 1118, 1133, 1146, 1184, 1190, 1196, 1200, - 1204, 1208, 1212, 1217, 1224, 1228, 1233, 1251, 1261, 1279, - 1296, 1313, 1334, 1354, 1374, 1391, 1415, 1426, 1428, 1431, - 1433, 1434, 1435, 1436, 1439, 1441, 1444, 1450, 1455, 1459, - 1461, 1464, 1466, 1469, 1475, 1480, 1485, 1487, 1490, 1492, - 1495, 1501, 1506, 1511, 1513, 1516, 1518, 1521, 1527, 1532, - 1537, 1539, 1542, 1544, 1547, 1553, 1558, 1563, 1565, 1568, - 1570, 1573, 1581, 1588, 1596, 1604, 1618, 1620, 1621, 1622, - 1623, 1626, 1628, 1629, 1630, 1631, 1632, 1633, 1634, 1635, - 1636, 1637, 1638, 1639, 1640, 1641, 1642, 1643, 1644, 1645, - 1646, 1647, 1648, 1649, 1650, 1651, 1652, 1653, 1654, 1655, - 1658, 1660, 1661, 1672, 1679, 1692, 1701, 1709, 1717, 1727, - 1731, 1736, 1740, 1745, 1749, 1753, 1759, 1765, 1771, 1775, - 1781, 1794, 1800, 1809, 1813 + 135, 137, 138, 145, 153, 167, 179, 181, 184, 186, + 187, 188, 191, 197, 202, 203, 204, 207, 211, 214, + 220, 225, 231, 239, 244, 248, 254, 259, 263, 268, + 272, 275, 280, 284, 288, 292, 297, 301, 304, 308, + 312, 316, 320, 324, 328, 331, 335, 338, 342, 345, + 354, 358, 364, 366, 367, 368, 369, 370, 371, 372, + 373, 374, 375, 376, 378, 379, 380, 381, 384, 395, + 400, 406, 411, 412, 413, 414, 415, 416, 417, 418, + 419, 420, 421, 422, 425, 428, 432, 438, 444, 447, + 451, 457, 463, 466, 470, 476, 482, 485, 489, 497, + 503, 506, 510, 518, 524, 527, 531, 539, 545, 548, + 552, 564, 570, 573, 577, 589, 595, 598, 602, 614, + 620, 623, 627, 640, 646, 649, 653, 666, 672, 675, + 679, 692, 704, 718, 729, 735, 754, 765, 773, 779, + 785, 804, 810, 826, 833, 839, 845, 851, 857, 876, + 888, 894, 913, 934, 942, 948, 954, 960, 972, 978, + 984, 996, 1002, 1007, 1012, 1019, 1021, 1022, 1025, 1030, + 1041, 1059, 1074, 1102, 1133, 1137, 1149, 1164, 1177, 1215, + 1221, 1227, 1231, 1235, 1239, 1243, 1248, 1255, 1259, 1264, + 1282, 1292, 1310, 1327, 1344, 1365, 1385, 1405, 1422, 1446, + 1457, 1459, 1462, 1466, 1478, 1495, 1512, 1529, 1546, 1563, + 1580, 1597, 1634, 1652, 1654, 1657, 1672, 1674, 1675, 1676, + 1677, 1680, 1682, 1683, 1684, 1685, 1686, 1687, 1688, 1689, + 1690, 1691, 1692, 1693, 1694, 1695, 1696, 1697, 1698, 1699, + 1700, 1701, 1702, 1703, 1704, 1705, 1706, 1707, 1708, 1709, + 1710, 1711, 1712, 1713, 1714, 1715, 1716, 1717, 1718, 1719, + 1720, 1723, 1725, 1726, 1735, 1752, 1769, 1788, 1795, 1808, + 1813, 1817, 1821, 1825, 1830, 1835, 1839, 1843, 1849, 1853, + 1858, 1862, 1867, 1871, 1875, 1881, 1887, 1893, 1897, 1903, + 1910, 1916, 1925, 1929, 1939, 1944, 1948, 1953, 1958 }; #endif @@ -548,29 +564,31 @@ static const short yyrline[] = { 0, static const char * const yytname[] = { "$","error","$undefined.","tDOUBLE", "tSTRING","tBIGSTR","tEND","tAFFECT","tDOTS","tPi","tExp","tLog","tLog10","tSqrt", "tSin","tAsin","tCos","tAcos","tTan","tAtan","tAtan2","tSinh","tCosh","tTanh", -"tFabs","tFloor","tCeil","tFmod","tModulo","tHypot","tPoint","tCircle","tEllipsis", -"tLine","tSurface","tSpline","tVolume","tCharacteristic","tLength","tParametric", -"tElliptic","tPlane","tRuled","tTransfinite","tComplex","tPhysical","tUsing", -"tPower","tBump","tProgression","tAssociation","tRotate","tTranslate","tSymmetry", -"tDilate","tExtrude","tDuplicata","tLoop","tInclude","tRecombine","tDelete", -"tCoherence","tView","tOffset","tAttractor","tLayers","tScalarTetrahedron","tVectorTetrahedron", +"tFabs","tFloor","tCeil","tFmod","tModulo","tHypot","tPrintf","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","tInclude","tRecombine","tDelete","tCoherence", +"tView","tOffset","tAttractor","tLayers","tScalarTetrahedron","tVectorTetrahedron", "tTensorTetrahedron","tScalarTriangle","tVectorTriangle","tTensorTriangle","tScalarLine", "tVectorLine","tTensorLine","tScalarPoint","tVectorPoint","tTensorPoint","tBSpline", "tNurbs","tOrder","tWith","tBounds","tKnots","tColor","tOptions","tFor","tEndFor", -"tScript","tExit","tMerge","tGeneral","tGeometry","tMesh","tPostProcessing", -"tPrint","tB_SPLINE_SURFACE_WITH_KNOTS","tB_SPLINE_CURVE_WITH_KNOTS","tCARTESIAN_POINT", -"tTRUE","tFALSE","tUNSPECIFIED","tU","tV","tEDGE_CURVE","tVERTEX_POINT","tORIENTED_EDGE", -"tPLANE","tFACE_OUTER_BOUND","tEDGE_LOOP","tADVANCED_FACE","tVECTOR","tDIRECTION", -"tAXIS2_PLACEMENT_3D","tISO","tENDISO","tENDSEC","tDATA","tHEADER","tFILE_DESCRIPTION", -"tFILE_SCHEMA","tFILE_NAME","tMANIFOLD_SOLID_BREP","tCLOSED_SHELL","tADVANCED_BREP_SHAPE_REPRESENTATION", -"tFACE_BOUND","tCYLINDRICAL_SURFACE","tCONICAL_SURFACE","tCIRCLE","tTRIMMED_CURVE", -"tGEOMETRIC_SET","tCOMPOSITE_CURVE_SEGMENT","tCONTINUOUS","tCOMPOSITE_CURVE", -"tTOROIDAL_SURFACE","tPRODUCT_DEFINITION","tPRODUCT_DEFINITION_SHAPE","tSHAPE_DEFINITION_REPRESENTATION", -"tELLIPSE","tTrimmed","tSolid","tEndSolid","tVertex","tFacet","tNormal","tOuter", -"tLoopSTL","tEndLoop","tEndFacet","'<'","'>'","'+'","'-'","'*'","'/'","'%'", -"UMINUS","'^'","'('","','","')'","'{'","'}'","':'","'['","']'","All","STLFormatItem", +"tScript","tExit","tMerge","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","'?'","tAND","tOR","tNOTEQUAL", +"tEQUAL","tAPPROXEQUAL","'<'","'>'","tLESSOREQUAL","tGREATEROREQUAL","'+'","'-'", +"'*'","'/'","'%'","tCROSSPRODUCT","UNARYPREC","'!'","'^'","tPLUSPLUS","tMINUSMINUS", +"'('","','","')'","'{'","'}'","':'","'.'","'['","']'","All","STLFormatItem", "StepFormatItems","StepFormatItem","StepSpecial","StepHeaderItem","StepDataItem", -"GeomFormatList","GeomFormat","View","Views","ScalarPointValues","ScalarPoint", +"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", @@ -579,47 +597,44 @@ static const char * const yytname[] = { "$","error","$undefined.","tDOUBLE", "VectorTetrahedron","@11","TensorTetrahedronValues","TensorTetrahedron","@12", "Affectation","Shape","Transform","MultipleShape","ListOfShapes","Duplicata", "Delete","Macro","Command","Loop","Extrude","ExtrudeParameters","ExtrudeParameter", -"Transfini","Coherence","Options","Option","GeneralOptions","GeneralOption", -"@13","GeometryOptions","GeometryOption","@14","MeshOptions","MeshOption","@15", -"PostProcessingOptions","PostProcessingOption","@16","PrintOptions","PrintOption", -"@17","ColorAffects","ColorAffect","RGBAExpr","BoolExpr","FExpr","FExpr_Single", -"FExpr_Range","VExpr","ListOfStrings","RecursiveListOfStrings","ListOfListOfDouble", -"RecursiveListOfListOfDouble","ListOfDouble","RecursiveListOfDouble", NULL +"Transfini","Coherence","Options","Option","Scripts","Script","BoolExpr","FExpr", +"FExpr_Single","FExpr_Range","VExpr","VExpr_Single","ListOfStrings","RecursiveListOfStrings", +"ListOfListOfDouble","RecursiveListOfListOfDouble","ListOfDouble","RecursiveListOfDouble", +"Color", NULL }; #endif static const short yyr1[] = { 0, - 166, 166, 166, 167, 167, 167, 168, 168, 169, 169, - 169, 169, 170, 170, 170, 170, 170, 171, 171, 171, - 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, - 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, - 172, 172, 172, 172, 172, 172, 172, 172, 172, 172, - 173, 173, 174, 174, 174, 174, 174, 174, 174, 174, - 174, 174, 174, 174, 174, 174, 175, 175, 176, 176, - 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, - 176, 177, 177, 179, 178, 180, 180, 182, 181, 183, - 183, 185, 184, 186, 186, 188, 187, 189, 189, 191, - 190, 192, 192, 194, 193, 195, 195, 197, 196, 198, - 198, 200, 199, 201, 201, 203, 202, 204, 204, 206, - 205, 207, 207, 209, 208, 210, 210, 212, 211, 213, - 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, - 214, 214, 214, 214, 214, 214, 214, 214, 214, 214, - 214, 214, 214, 214, 214, 214, 214, 214, 215, 215, - 215, 215, 216, 216, 216, 217, 217, 218, 219, 220, - 221, 221, 221, 222, 222, 222, 223, 223, 223, 223, - 223, 223, 223, 223, 224, 224, 225, 225, 226, 226, - 226, 226, 226, 226, 226, 226, 227, 228, 228, 229, - 229, 229, 229, 229, 230, 230, 231, 231, 231, 232, - 231, 233, 233, 234, 234, 234, 235, 234, 236, 236, - 237, 237, 237, 238, 237, 239, 239, 240, 240, 240, - 241, 240, 242, 242, 243, 243, 243, 244, 243, 245, - 245, 246, 246, 246, 247, 247, 248, 248, 248, 248, - 248, 249, 249, 249, 249, 249, 249, 249, 249, 249, - 249, 249, 249, 249, 249, 249, 249, 249, 249, 249, - 249, 249, 249, 249, 249, 249, 249, 249, 249, 249, - 250, 250, 250, 251, 251, 252, 252, 252, 252, 253, - 253, 254, 254, 255, 255, 255, 256, 256, 257, 257, - 257, 258, 258, 258, 258 + 177, 177, 177, 178, 178, 178, 179, 179, 180, 180, + 180, 180, 181, 181, 181, 181, 181, 182, 182, 182, + 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, + 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, + 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, + 184, 184, 185, 185, 185, 185, 185, 185, 185, 185, + 185, 185, 185, 185, 185, 185, 185, 185, 186, 187, + 187, 188, 188, 188, 188, 188, 188, 188, 188, 188, + 188, 188, 188, 188, 189, 189, 191, 190, 192, 192, + 194, 193, 195, 195, 197, 196, 198, 198, 200, 199, + 201, 201, 203, 202, 204, 204, 206, 205, 207, 207, + 209, 208, 210, 210, 212, 211, 213, 213, 215, 214, + 216, 216, 218, 217, 219, 219, 221, 220, 222, 222, + 224, 223, 225, 226, 226, 226, 226, 226, 226, 226, + 226, 226, 226, 226, 226, 226, 226, 226, 226, 226, + 226, 226, 226, 226, 226, 226, 226, 226, 226, 226, + 226, 227, 227, 227, 227, 228, 228, 228, 229, 229, + 230, 231, 232, 233, 233, 233, 234, 234, 234, 235, + 235, 235, 235, 235, 235, 235, 235, 236, 236, 237, + 237, 238, 238, 238, 238, 238, 238, 238, 238, 239, + 240, 240, 241, 241, 241, 241, 241, 241, 241, 241, + 241, 241, 241, 242, 242, 243, 244, 244, 244, 244, + 244, 245, 245, 245, 245, 245, 245, 245, 245, 245, + 245, 245, 245, 245, 245, 245, 245, 245, 245, 245, + 245, 245, 245, 245, 245, 245, 245, 245, 245, 245, + 245, 245, 245, 245, 245, 245, 245, 245, 245, 245, + 245, 246, 246, 246, 246, 246, 246, 247, 247, 248, + 248, 248, 248, 248, 249, 249, 249, 249, 250, 250, + 251, 251, 252, 252, 252, 253, 253, 254, 254, 254, + 255, 255, 255, 255, 256, 256, 256, 256, 256 }; static const short yyr2[] = { 0, @@ -629,31 +644,30 @@ static const short yyr2[] = { 0, 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, - 1, 1, 1, 1, 4, 2, 6, 8, 0, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 1, 3, 0, 13, 1, 3, 0, 13, 1, - 3, 0, 13, 1, 3, 0, 19, 1, 3, 0, - 19, 1, 3, 0, 19, 1, 3, 0, 25, 1, - 3, 0, 25, 1, 3, 0, 25, 1, 3, 0, - 31, 1, 3, 0, 31, 1, 3, 0, 31, 4, - 7, 8, 12, 6, 5, 7, 7, 12, 7, 9, - 17, 7, 8, 8, 7, 11, 5, 8, 9, 8, - 22, 20, 8, 8, 5, 8, 7, 8, 5, 11, - 5, 9, 1, 1, 1, 0, 2, 4, 4, 3, - 3, 2, 3, 6, 8, 1, 8, 12, 8, 12, - 8, 12, 11, 15, 1, 2, 9, 2, 6, 9, - 9, 8, 8, 8, 6, 4, 2, 0, 2, 4, - 4, 4, 4, 4, 0, 2, 4, 4, 4, 0, - 5, 0, 2, 4, 4, 4, 0, 5, 0, 2, - 4, 4, 4, 0, 5, 0, 2, 4, 4, 4, - 0, 5, 0, 2, 4, 4, 4, 0, 5, 0, - 2, 4, 8, 4, 9, 7, 1, 1, 1, 1, - 1, 1, 3, 3, 3, 3, 3, 3, 2, 2, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 6, 4, 4, 4, 4, 4, 4, 6, 6, 6, - 1, 1, 1, 3, 6, 11, 9, 7, 7, 0, - 3, 1, 3, 0, 3, 3, 1, 3, 0, 1, - 3, 1, 1, 3, 3 + 1, 1, 1, 1, 1, 4, 4, 2, 7, 6, + 8, 0, 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 1, 3, 0, 13, 1, 3, + 0, 13, 1, 3, 0, 13, 1, 3, 0, 19, + 1, 3, 0, 19, 1, 3, 0, 19, 1, 3, + 0, 25, 1, 3, 0, 25, 1, 3, 0, 25, + 1, 3, 0, 31, 1, 3, 0, 31, 1, 3, + 0, 31, 4, 7, 8, 12, 6, 5, 7, 7, + 12, 7, 9, 17, 7, 8, 8, 7, 11, 5, + 8, 9, 8, 22, 20, 8, 8, 5, 8, 7, + 8, 5, 11, 5, 9, 1, 1, 1, 0, 2, + 4, 4, 3, 3, 2, 3, 6, 8, 1, 8, + 12, 8, 12, 8, 12, 11, 15, 1, 2, 9, + 2, 6, 9, 9, 8, 8, 8, 6, 4, 2, + 0, 2, 1, 6, 6, 6, 6, 6, 6, 5, + 5, 6, 8, 0, 2, 1, 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, 1, 1, 1, 3, 4, 4, 3, 6, 1, + 2, 2, 3, 3, 11, 9, 7, 7, 0, 3, + 1, 3, 0, 3, 3, 1, 3, 0, 1, 3, + 1, 1, 3, 3, 9, 7, 5, 1, 5 }; static const short yydefact[] = { 51, @@ -662,956 +676,1612 @@ static const short yydefact[] = { 51, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 176, 0, 0, 0, 0, 52, - 53, 54, 55, 56, 57, 58, 62, 64, 63, 59, - 60, 61, 281, 283, 282, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 252, - 12, 0, 13, 14, 16, 15, 17, 290, 290, 0, - 66, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 299, 0, 0, 0, 0, 299, 0, + 0, 0, 0, 0, 0, 179, 0, 0, 0, 0, + 52, 54, 53, 55, 56, 57, 58, 59, 63, 65, + 64, 60, 61, 62, 262, 264, 263, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 166, 0, 299, 166, 197, - 0, 299, 299, 0, 0, 0, 198, 0, 172, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 222, 12, 0, 13, 14, 16, 15, 17, + 279, 279, 0, 68, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 288, 0, + 0, 0, 0, 288, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 270, 0, 0, + 0, 0, 0, 169, 0, 288, 169, 200, 0, 288, + 288, 0, 0, 0, 201, 0, 214, 175, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 260, 259, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 225, 224, 226, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 300, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 166, 166, 0, 0, 0, - 0, 0, 170, 0, 0, 0, 69, 0, 0, 0, - 0, 0, 0, 0, 0, 173, 171, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 174, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 289, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 272, 271, 0, 0, 0, + 0, 169, 169, 0, 0, 0, 0, 0, 173, 0, + 0, 0, 72, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 176, 0, 265, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 253, 255, 254, 256, 257, 258, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 223, 0, 239, + 240, 238, 237, 233, 234, 235, 236, 225, 224, 229, + 230, 231, 232, 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, 292, 0, 0, - 0, 0, 130, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 302, 303, 0, 0, 0, 0, + 0, 0, 0, 0, 281, 0, 0, 0, 0, 133, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 165, 0, 164, 163, 0, 0, 0, - 0, 0, 168, 167, 196, 0, 169, 0, 0, 0, + 0, 0, 291, 292, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 65, 199, 0, 0, 261, 262, 263, 264, 265, 266, - 267, 268, 269, 270, 0, 272, 273, 274, 275, 276, - 277, 0, 0, 0, 255, 254, 0, 0, 0, 0, + 0, 274, 273, 168, 0, 167, 166, 0, 0, 0, + 0, 0, 171, 170, 199, 0, 172, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 66, 203, 202, + 0, 67, 216, 215, 0, 266, 267, 242, 243, 244, + 245, 246, 247, 248, 249, 250, 251, 0, 253, 254, + 255, 256, 257, 258, 0, 0, 0, 228, 227, 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, 291, 0, - 19, 0, 0, 135, 299, 299, 0, 299, 147, 0, - 155, 299, 299, 0, 0, 301, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 159, 161, 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, 299, 0, 0, - 299, 205, 212, 219, 226, 233, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 299, 299, 0, 0, 0, 0, 299, 299, - 0, 0, 0, 0, 0, 299, 0, 299, 0, 0, - 0, 0, 0, 293, 0, 290, 0, 0, 0, 299, - 0, 299, 0, 0, 0, 284, 304, 305, 134, 0, - 299, 299, 299, 189, 0, 299, 299, 299, 299, 299, - 299, 299, 0, 0, 0, 0, 0, 0, 0, 195, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 67, 0, 0, 0, 0, 294, 0, - 0, 0, 0, 0, 0, 174, 0, 0, 271, 278, - 279, 280, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 280, 0, 19, 0, 0, 0, 138, 288, + 288, 0, 288, 150, 0, 158, 288, 288, 0, 0, + 290, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 162, 164, 0, + 0, 0, 0, 0, 72, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 73, 74, + 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, + 0, 0, 288, 0, 0, 288, 0, 0, 0, 0, + 0, 0, 0, 241, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 288, 288, 0, 0, 0, 0, + 288, 288, 0, 0, 0, 0, 0, 288, 0, 288, + 0, 0, 0, 0, 0, 282, 0, 279, 0, 0, + 0, 0, 288, 0, 288, 0, 0, 0, 268, 293, + 294, 137, 0, 288, 288, 288, 192, 0, 288, 288, + 288, 288, 288, 288, 288, 0, 0, 0, 0, 0, + 0, 0, 198, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 70, 0, 0, 0, + 0, 283, 0, 0, 0, 177, 0, 0, 252, 259, + 260, 261, 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, 248, 249, 250, - 251, 0, 0, 0, 0, 0, 0, 0, 18, 0, - 131, 139, 0, 142, 0, 136, 0, 137, 157, 0, + 0, 0, 0, 0, 0, 0, 217, 218, 219, 220, + 221, 0, 0, 0, 0, 0, 0, 0, 18, 0, + 69, 134, 142, 0, 145, 0, 139, 0, 140, 160, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 166, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 169, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 145, 0, - 299, 299, 0, 299, 0, 210, 200, 206, 0, 217, - 201, 213, 0, 224, 202, 220, 0, 231, 203, 227, - 0, 238, 204, 234, 0, 299, 0, 0, 0, 299, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 148, + 0, 288, 288, 0, 288, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 288, 0, 0, 0, 288, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 299, 0, - 0, 0, 0, 0, 0, 0, 0, 290, 0, 144, - 154, 0, 0, 193, 148, 150, 0, 0, 192, 194, - 156, 132, 143, 153, 158, 0, 289, 0, 288, 0, - 0, 177, 0, 179, 0, 181, 0, 68, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 288, 0, 0, + 0, 0, 0, 0, 0, 0, 279, 0, 147, 157, + 0, 0, 196, 151, 153, 0, 0, 195, 197, 159, + 135, 146, 156, 161, 0, 278, 0, 277, 0, 0, + 180, 0, 182, 0, 184, 0, 71, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 294, 0, 297, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 175, 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, 140, 285, 0, 191, 190, 166, 0, 162, - 0, 0, 0, 0, 0, 0, 185, 0, 0, 0, + 0, 283, 0, 286, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 210, 211, 0, + 178, 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, 143, 269, 0, 194, 193, 169, + 0, 165, 0, 0, 0, 0, 0, 0, 188, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 299, 296, 295, 299, 0, 0, 0, 0, - 0, 240, 0, 0, 0, 240, 0, 0, 0, 240, - 0, 0, 0, 240, 0, 0, 0, 240, 149, 0, - 0, 294, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 299, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 287, 0, 0, 0, 188, - 299, 0, 186, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 298, 0, - 0, 207, 0, 208, 209, 0, 0, 240, 214, 215, - 216, 0, 221, 222, 223, 0, 228, 229, 230, 0, - 235, 236, 237, 0, 0, 35, 0, 0, 0, 0, + 0, 0, 0, 0, 288, 285, 284, 288, 0, 204, + 0, 205, 212, 206, 207, 208, 209, 0, 152, 0, + 0, 283, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 288, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 276, 0, 0, 0, 191, + 288, 0, 189, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 287, 0, + 0, 298, 0, 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, 160, 0, - 0, 0, 0, 0, 183, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 299, - 299, 146, 0, 211, 241, 218, 225, 232, 239, 0, + 46, 47, 0, 0, 49, 0, 0, 0, 163, 0, + 0, 0, 0, 0, 186, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 288, + 288, 149, 0, 264, 0, 213, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 286, 178, 180, 182, 0, 299, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 84, 88, - 92, 133, 138, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 29, 32, 40, 0, 41, 48, 43, + 275, 181, 183, 185, 0, 288, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 87, 91, 95, 136, 141, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 299, 0, 242, 283, - 0, 244, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 299, 0, 0, 0, 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, 24, 27, 0, 0, 0, 184, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 82, 0, - 86, 0, 90, 0, 0, 0, 0, 0, 0, 299, + 0, 0, 0, 288, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 288, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 299, 297, 0, 0, 0, 0, 24, 27, + 0, 0, 0, 187, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 85, 0, 89, 0, 93, + 0, 0, 0, 0, 0, 288, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 44, 20, 141, 187, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 83, - 85, 87, 89, 91, 93, 0, 0, 243, 0, 0, - 0, 299, 0, 0, 0, 0, 0, 0, 96, 100, - 104, 0, 0, 0, 246, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 296, 0, + 0, 0, 44, 20, 144, 190, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 86, 88, 90, 92, 94, + 96, 0, 0, 0, 0, 0, 288, 0, 0, 0, + 0, 0, 0, 99, 103, 107, 0, 0, 295, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 5, 299, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 152, 245, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 94, 0, 98, 0, 102, 0, - 299, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 151, 0, 22, 0, 0, 0, - 0, 0, 0, 95, 97, 99, 101, 103, 105, 299, - 0, 0, 0, 108, 112, 116, 0, 0, 0, 0, - 0, 0, 0, 299, 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 + 0, 0, 0, 5, 288, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 155, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 97, 0, 101, 0, + 105, 0, 288, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 154, 0, 22, 0, + 0, 0, 0, 0, 0, 98, 100, 102, 104, 106, + 108, 288, 0, 0, 0, 111, 115, 119, 0, 0, + 0, 0, 0, 0, 0, 288, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 109, 0, 113, + 0, 117, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 110, 112, 114, 116, + 118, 120, 0, 123, 127, 131, 23, 0, 0, 0, + 0, 0, 0, 0, 121, 0, 125, 0, 129, 0, + 0, 0, 0, 0, 0, 122, 124, 126, 128, 130, + 132, 0, 0, 0 }; -static const short yydefgoto[] = { 1420, - 4, 5, 18, 19, 20, 21, 6, 60, 61, 389, - 1188, 514, 1134, 1190, 515, 1135, 1192, 516, 1136, 1304, - 517, 1275, 1306, 518, 1276, 1308, 519, 1277, 1365, 520, - 1351, 1367, 521, 1352, 1369, 522, 1353, 1402, 523, 1396, - 1404, 524, 1397, 1406, 525, 1398, 62, 384, 374, 375, - 376, 377, 66, 67, 68, 69, 70, 896, 897, 71, - 72, 274, 402, 631, 738, 840, 632, 742, 842, 633, - 746, 844, 634, 750, 846, 635, 754, 848, 997, 998, - 1108, 672, 239, 100, 356, 140, 223, 339, 733, 834, - 835, 357 +static const short yydefgoto[] = { 1412, + 4, 5, 18, 19, 20, 21, 6, 61, 439, 63, + 429, 1185, 559, 1131, 1187, 560, 1132, 1189, 561, 1133, + 1296, 562, 1269, 1298, 563, 1270, 1300, 564, 1271, 1357, + 565, 1343, 1359, 566, 1344, 1361, 567, 1345, 1394, 568, + 1388, 1396, 569, 1389, 1398, 570, 1390, 64, 424, 414, + 415, 416, 417, 68, 69, 70, 71, 72, 928, 929, + 73, 74, 300, 440, 302, 444, 712, 261, 103, 394, + 276, 148, 243, 376, 774, 863, 864, 395, 1014 }; -static const short yypact[] = { 447, --32768,-32768, -135,-32768, 455, 959, 1490, 28, 65, 30, - 71, 75, 90, 96, -38, -34, -22,-32768,-32768,-32768, --32768, 140, 141, -57, -5, -4, -35, -42, 70, 92, - 238, 112, 228, 243, 257, 46, 286, -20, 160, -36, - -36, 162, 41, 173, 281, 306, 186, 342, 349, 100, - 205, -30, 206, 229,-32768, 376, 383, 387, 359,-32768, +static const short yypact[] = { 499, +-32768,-32768, -86,-32768, 33, 1650, 1152, 1, 78, 118, + 120, 127, 129, 131, -12, 46, 73,-32768,-32768,-32768, +-32768, 152, 248, 40, -143, 92, 100, -46, -44, 113, + 124, 246, 128, 252, 283, 290, 208, 279, 181, 188, + -110, -110, 200, 259, 202, 347, 342, 209, 372, 374, + 68, 234, -32, 213, 243,-32768, 220, 390, 408, 394, +-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, +-32768,-32768,-32768,-32768,-32768, 257,-32768, 273, 288, 294, + 317, 319, 323, 324, 326, 327, 328, 329, 333, 335, + 336, 337, 338, 340, 341, 343, 346, 1152, 1152, 1152, + 1152, 1418,-32768,-32768, 1686,-32768,-32768,-32768,-32768,-32768, + 348, 348, 444,-32768, 1152, 449, 475, 1152, 1152, 1152, + 1152, 349, 1152, 1152, 351, 1152, 1152, 1152, 868, 1152, + 339, 352, 353, 868, 344, 354, 355, 356, 358, 359, + 387, -110, -110, -110, 1152, 1152, -74,-32768, -71, -110, + 385, 386, 388,-32768, 516, 868,-32768,-32768, -56, 868, + 868, 1152, -72, 1152,-32768, 1152,-32768,-32768, 552, 392, + 557, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, + 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, + 1152, 397, 397, 397, 2336, 1152, 1152, 1152, 1152, 1152, + 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, + 1418, 395, 398, 401, 430, 431, 432, 434, 435, 438, + 447, 448, 450, 451, 452, 454, 455, 456, 457, 459, + 460, 461, 462, 463, 464, 467, 469, 470, 476, 477, + 478, 612, 474, 490, 492, 267,-32768, 493, 2360, 1440, + 2384, 2408, 1152, 2432, 1930, 1152, 1967, 2456, 2480, 1152, + 6286, 640, 2504, 1152, 1152, 1152, 656, 1152, 1152, 1152, + 1152, 1152, 1152, 1152, 62,-32768,-32768, 3848, 3871, -110, + -110, 298, 298, 119, 1152, 1152, 1152, 1507,-32768, 103, + 1583, -110,-32768, 657, 658, 2528, 585, 1152, 2552, 13, + 1797, 14,-32768, 1152, -107, 2576, 2600, 2624, 2648, 2672, + 2696, 2720, 2744, 2768, 2792, 3894, 2816, 2840, 2864, 2888, + 2912, 2936, 3917, 3940, 3963, 1152, 1152,-32768, 1347, 79, + 79, 417, 417, 287, 287, 287, 287, -141, -136, 397, + 397, 397, 397, 1824, 662, 663, 664, 667, 668, 669, + 670, 672, 673, 674, 675, 676, 679, 680, 681, 682, + 683, 685, 686, 687, 689, 690, 692, 572, 694, 695, + 696, 697, 700, 699,-32768, -20, 702, 718, 703,-32768, + 1152, 698, 719, 721, 724, 2960, 725, 720, 2984, 727, + 728, 729, 1368,-32768, -41, 1152, 730, 1987, 3008, 3032, + 1152, 2007, 2027, 3056, 3080, 3104, 3128, 3152, -110, 1152, + 1152,-32768,-32768,-32768, 566, 1599,-32768, 568, 1152, 3986, + 4009, 4032,-32768,-32768,-32768, 1152,-32768, -68, 233, 563, + 571, 737, 582, 3176, 753, 590, 597,-32768,-32768,-32768, + 1152,-32768,-32768,-32768, 3200,-32768,-32768,-32768,-32768,-32768, +-32768,-32768,-32768,-32768,-32768,-32768,-32768, 1152,-32768,-32768, +-32768,-32768,-32768,-32768, 1152, 1152, 1152, 91, 91, 1152, + 627, 599, 605, 606, 607, 608, 609, 611, 613, 614, + 615, 616, 617, 618, 619, 620, 621, 623, 624, 625, + 626, 628, 632, 633, 634, 635, 637, 638, 639, 641, + 642, 807,-32768, 643,-32768, 659, 3224, -110,-32768, 868, + 868, 822, 868,-32768, 824,-32768, 868, 868, 53, 1152, +-32768, 436, 661, 826, 827, 828, 207, 829, 830, 831, + 832, 833, 846, 847, 126, 4055, 4078,-32768,-32768, 2047, + -110, -110, -110, 562,-32768, 688, 691, 693, 701, 705, + 706, 707, 732, 733, 735, 736, 738, 849,-32768,-32768, -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, --32768,-32768,-32768,-32768,-32768, 245, 255, 262, 264, 267, - 268, 269, 274, 275, 284, 291, 295, 296, 299, 301, - 315, 316, 317, 343, 348, 1490, 1490, 1490, 1463,-32768, --32768, 1574,-32768,-32768,-32768,-32768,-32768, 355, 355, 392, --32768, 1490, 1490, 1490, 1490, 1490, 356, 1490, 1490, 360, - 1490, 1490, 1490, 1415, 1490, 303, 363, 365, 1415, 346, - 371, 366, 378, 379, 382, 385, -36, 1490, 1490, 373, - 386, -36, 389, 390, 391,-32768, 429, 1415,-32768,-32768, - -58, 1415, 1415, 1490, -75, 1490,-32768, 1490,-32768, 510, - 511, 399, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, - 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, - 1490, 1490, 403, 403, 469, 1490, 1490, 1490, 1490, 1490, - 1463, 419, 426, 431, 434, 435, 436, 437, 441, 442, - 443, 444, 445, 446, 466, 479, 480, 506, 507, 518, - 520, 526, 528, 529, 532, 537, 538, 543, 546, 551, - 555, 541, 427, 558, 468, 121, 828, 621, 1204, 1308, - 1490, 1397, 641, 1490, 703, 1408, 1418, 1490, 509, 660, - 1449, 1490, 1490, 1490, 691, 1490, 1490, 1490, 1490, 1490, - 1490, 1490, 556, 907, 942, 195, 195, 560, 1490, 1490, - 1490, 638,-32768, 18, 1259, -36,-32768, 719, 720, 1477, - 647, 1490, 1492, -25, 428,-32768,-32768, 1490, 1502, 1562, - 1572, 1582, 1592, 1602, 1612, 1622, 1632, 1642, 1188, 1652, - 1662, 1672, 1682, 1692, 1702, 2072, 2081, 2090, 1490, 1490, --32768, -69, 388, 403, 403, 403, 554, 726, 727, 729, - 730, 733, 735, 736, 737, 744, 749, 750, 756, 759, - 761, 762, 774, 779, 782, 784, 785, 791, 792, 799, - 416, 800, 801, 802, 803, 806, 805,-32768, -73, 822, - 820, 823,-32768, 804, 827, 835, 839, 1712, 841, 829, - 1722, 844, 845, 851, 224,-32768, -24, 1490, 852, 783, - 1732, 1742, 1490, 790, 980, 1752, 1762, 1772, 1782, 1792, - -36, 1490, 1490,-32768, 667, 1554,-32768, 699, 1490, 2099, - 2108, 2117,-32768,-32768,-32768, 1490,-32768, 705, 821, 717, - 718, 874, 741, 1802, 893, 740, 745, 778, 787, 788, --32768,-32768, 1490, 1812,-32768,-32768,-32768,-32768,-32768,-32768, --32768,-32768,-32768,-32768, 1490,-32768,-32768,-32768,-32768,-32768, --32768, 1490, 1490, 1490, -60, -60, 765, 743, 746, 794, - 796, 797, 798, 807, 825, 838, 847, 848, 850, 857, - 863, 865, 866, 867, 869, 871, 873, 881, 883, 884, - 888, 892, 894, 898, 920, 921, 922, 945,-32768, 826, --32768, 923, -36,-32768, 1415, 1415, 954, 1415,-32768, 955, --32768, 1415, 1415, 36, 1490,-32768, 128, 880, 957, 958, - 1045, 104, 1085, 1090, 1096, 1100, 1102, 1128, 1129, 949, - 2126, 2135,-32768,-32768, 1013, -36, -36, -36, 184,-32768, - 981, 982, 983, 985, 986, 987, 1000, 1010, 1011, 1018, - 1021, 1022, 1132,-32768,-32768,-32768,-32768,-32768,-32768,-32768, --32768,-32768,-32768,-32768,-32768, 1490, 1490, 1415, 1490, 1152, - 1415,-32768,-32768,-32768,-32768,-32768, 540, 1171, 1822, 1832, - 1842, 1852, 1039, 984, 1490, 1490, -36, 1180, 1182, 1033, - 1186, 1187, 1415, 1415, 1189, -36, 1190, 1191, 1415, 1415, - 1192, 1193, 1194, 1205, 1207, 1415, 259, 1415, 1221, 1223, - 1224, 1228, 1233,-32768, 1231, 355, 1235, 1, 1238, 1415, - 1239, 1415, 1248, 1249, 1490, 509, 224,-32768,-32768, 1490, - 1415, 1415, 1415,-32768, 149, 1415, 1415, 1415, 1415, 1415, - 1415, 1415, 1490, 1490, 1490, 1066, -19, -17, 63,-32768, - 1001, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, - 1490, 1490, 1490,-32768, 2144, 2153, 1250, 1862, -6, 1175, - 14, 15, 16, 29, 37,-32768, 1490, 1490,-32768,-32768, --32768,-32768, 1490, 1108, 2162, 2171, 1110, 1109, 1113, 1116, - 1126, 1117, 1127, 1138, 1140, 1142, 1146, 1153, 1155, 1158, - 1163, 1166, 1168, 1169, 1174, 1170,-32768,-32768,-32768,-32768, --32768, 1184, 1185, 1195, 1200, 1203, 1209, 1212,-32768, 1218, --32768,-32768, -36,-32768, 1254,-32768, 1255,-32768,-32768, 287, - 2180, 1266, 1282, 1320, 1490, 1490, 1340, 1357, 1372, 1379, - 1381, 1382, 1383, 1020, 1872, 571, 195, -36, 1384, -36, - 1389, -36, 24, 1390, 2189, 2198, 2207, 2216, 2225, 2234, - 2243, 2252, 2261, 2270, 2279, 2288, 1490, 1490,-32768, 1392, - 1415, 1415, 1314, 1415, 1393,-32768,-32768,-32768, 1395,-32768, --32768,-32768, 1399,-32768,-32768,-32768, 1400,-32768,-32768,-32768, - 1406,-32768,-32768,-32768, 1882, 192, 1463, 1401, 1490, 1415, - 1410, 1411, 1416, 1264, 1443, 259, 1444, 1454, 1490, 1458, - 1466, 1464, 1489, 1493, 259, 1490, 1490, 1490, 1415, 1491, - 1495, 259, 1490, 1519, 1521, 1541, 1490, 355, 1546,-32768, --32768, 1490, 1490,-32768,-32768,-32768, 217, 232,-32768,-32768, --32768,-32768,-32768,-32768,-32768, 1364,-32768, 1490,-32768, 1394, - 1396,-32768, 1404,-32768, 1405,-32768, -48,-32768, 1490, 1490, - 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, - 2297, 2306, -6, 74,-32768, 67, 1413, 1478, 285, 1419, - 467, 1420, 630, 1422, 904, 1431, 1101, 1433,-32768, 1571, - 1463, 1437, 2315, 1445,-32768, 1446,-32768, 1451,-32768, 1448, --32768, 1453, 1892,-32768, 1460,-32768,-32768, 1462, 1467, 1902, - 2324, 1912, 1465,-32768, 1475, 1476, 2333, 1479, 1480,-32768, - 2342, 1488,-32768, 509, 2351,-32768,-32768, 195, 594,-32768, - 1490, 1490, 1490, 1573, 1452, -33,-32768, 2360, 2369, 2378, - 2387, 2396, 2405, 2414, 2423, 2432, 2441, 2450, 2459, 1490, - 1490, 1540, 1415,-32768,-32768, 1415, 1490, 1620, 1490, 253, - 1633, 1646, 1645, 277, 1651, 1646, 1654, 309, 1655, 1646, - 1657, 351, 1658, 1646, 1659, 358, 1660, 1646,-32768, 174, - 1661, -6, 259, 1670, 1490, 1668, 259, 1671, 1673, 1683, - 1684, 1685, 1490, 1686, 1415, 1688, 1689, 1490, 1703, 1711, - 1490, 1653, 1713, 1526, 1490,-32768, 1061, 1068, 1081,-32768, - 1415, 1714,-32768, 1490, 1490, 1490, 1490, 1490, 1490, 1490, - 1490, 1490, 1490, 1490, 1490, 1112, 1167, 1560,-32768, 1568, - 374,-32768, 723,-32768,-32768, 1721, 1569, 1646,-32768,-32768, --32768, 1575,-32768,-32768,-32768, 1576,-32768,-32768,-32768, 1578, --32768,-32768,-32768, 1579, 1490,-32768, 1588, 1589, 1591, 2468, --32768, 1570,-32768, 1597,-32768,-32768,-32768, 1922,-32768, 1599, --32768,-32768, 1932, 1600,-32768, 1942, 1608, 1609,-32768, 1222, - 1745, 1755, 31, 1611,-32768, 2477, 2486, 2495, 2504, 2513, - 2522, 2531, 2540, 2549, 1952, 1962, 1972, 1765, 1771, 1415, - 1415,-32768, 25,-32768,-32768,-32768,-32768,-32768,-32768, 1463, - 259, 259, 259, 259, 1774, 1775, 1781, 259, 1784, 1785, - 1791, 1773, 1783,-32768,-32768,-32768,-32768, -48, 1415, 1490, - 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490,-32768,-32768, --32768,-32768,-32768, 1639, 1638, 1795, 1517, 1801, 1463, 1649, - 1669, 1650, 1667,-32768,-32768,-32768, 1678,-32768,-32768,-32768, - 1679, 1681, -21, 1691, 2558, 2567, 2576, 2585, 2594, 2603, - 2612, 2621, 2630, 1656, 1680, 1687, 1415, 1731,-32768, 1698, - 2639,-32768, 402, 259, 259, 1814, 1815, 259, 1813, 1825, - 1841, 1415, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1490, - 1490, 1490, 1490, 1490, 1696, 1690, 1490, 1490, 1490, 1701, - 1708,-32768,-32768, 1710, 1717, 1699,-32768, 1706, 2648, 2657, - 2666, 2675, 2684, 2693, 2702, 2711, 2720, 101, 509, 105, - 509, 107, 509, 1751, 1490, 1229, 2729, 1463, 259, 1415, - 1865, 1874, 1875, 1881, 1490, 1490, 1490, 1490, 1490, 1490, - 1490, 1490, 1490, 1490, 1884, 1490, 1885, 1490, 1891, 1727, - 2738, 1894, 1490, 1463, 1719, 1739,-32768,-32768,-32768,-32768, - 2747, 2756, 2765, 2774, 2783, 2792, 1982, 1992, 2002, 509, --32768, 509,-32768, 509,-32768, 1490, 1490,-32768, 606, 882, - 259, 1415, 1490, 1490, 1490, 1490, 1490, 1490,-32768,-32768, --32768, 2801, 1258, 1490,-32768, 1753, 1748, 1749, 2810, 2819, - 2828, 2837, 2846, 2855, 1750, 1756, 1757, 1490, 1904, 1294, --32768, 1415, 259, 1490, 1490, 1490, 1490, 1490, 1490, 1490, - 1490, 1490, 1301,-32768,-32768, 1761, 1767, 2864, 2873, 2882, - 2891, 2900, 2909, 125, 509, 170, 509, 171, 509, 1915, - 1415, 1924, 1490, 1490, 1490, 1490, 1490, 1490, 1490, 1925, - 1490, 1931, 1490, 1934,-32768, 1769,-32768, 2918, 2927, 2936, - 2012, 2022, 2032, 509,-32768, 509,-32768, 509,-32768, 1415, - 1490, 1490, 1490,-32768,-32768,-32768, 1779, 2945, 2954, 2963, - 1780, 1786, 1787, 1415, 1490, 1490, 1490, 1490, 1490, 1490, - 1798, 2972, 2981, 2990, 180, 509, 193, 509, 239, 509, - 259, 1490, 1490, 1490, 1490, 1944, 1490, 1945, 1490, 1954, - 1807, 2042, 2052, 2062, 509,-32768, 509,-32768, 509,-32768, - 1955,-32768,-32768,-32768,-32768, 1797, 1809, 1810, 1490, 1490, - 1490, 240, 509, 250, 509, 252, 509, 1490, 1971, 1490, - 1974, 1490, 1975, 509,-32768, 509,-32768, 509,-32768, 1968, - 1978,-32768 + 1152, 1152, 868, 1152, 850, 868, 15, 1769, 851, 3248, + 3272, 3296, 3320, 6286, 731, 863, 1152, 1152, -110, 867, + 895, 746, 905, 906, 868, 868, 907, -110, 908, 909, + 868, 868, 910, 911, 912, 916, 918, 868, 313, 868, + 919, 860, 920, 921, 923,-32768, 922, 348, 924, -4, + 7, 925, 868, 926, 868, 946, 947, 1152, 6286, 1368, +-32768,-32768, 1152, 868, 868, 868,-32768, 174, 868, 868, + 868, 868, 868, 868, 868, 1152, 1152, 1152, 756, -131, + -118, 117,-32768, 751, 1152, 1152, 1152, 1152, 1152, 1152, + 1152, 1152, 1152, 1152, 1152, 1152,-32768, 4101, 4124, 948, + 3344, 101, 874, 81, 783,-32768, 1152, 1152,-32768,-32768, +-32768,-32768, 1152, 791, 4147, 4170, -52, 792, 789, 793, + 794, 796, 797, 799, 800, -6, 801, 802, 803, 806, + 808, 810, 812, 813, 814, 815,-32768,-32768,-32768,-32768, +-32768, 817, 834, 835, 836, 838, 844, 855,-32768, 859, +-32768,-32768,-32768, -110,-32768, 957,-32768, 970,-32768,-32768, + 1688, 4193, 978, 993, 994, 1152, 1152, 995, 996, 1023, + 1024, 1025, 1027, 1028, 2067, 3368, 1843, 298, -110, 1029, + -110, 1031, -110, 17, 1032, 4216, 4239, 4262, 4285, 4308, + 4331, 4354, 4377, 4400, 4423, 4446, 4469, 1152, 1152,-32768, + 1038, 868, 868, 973, 868, 525, 1152, 1152, 1152, 1152, + 1050, 1051, 1055, 3392, 318, 1418, 1063, 1152, 868, 1070, + 1074, 1083, 931, 1085, 313, 1086, 1090, 1152, 1120, 1093, + 1130, 1131, 1135, 313, 1152, 1152, 1152, 868, 1134, 1138, + 313, 1152, 1151, 1154, 1176, 1152, 348, 3,-32768,-32768, + 1152, 1152,-32768,-32768,-32768, 598, 790,-32768,-32768,-32768, +-32768,-32768,-32768,-32768, 989,-32768, 1152,-32768, 1011, 157, +-32768, 212,-32768, 218,-32768, 43,-32768, 1152, 1152, 1152, + 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 4492, + 4515, 101, 154,-32768, 216, 1013, 1107, 1182, 1091, 1091, + 1152, 862, 5, 893, 914, 974, 1072,-32768,-32768, 1183, +-32768, 1185, 1418, 1019, 4538, 1035,-32768, 1037,-32768, 1039, +-32768, 1022,-32768, 1040, 3416,-32768, 1041,-32768,-32768, 1042, + 1044, 3440, 4561, 3464, 1046,-32768, 1047, 1048, 4584, 1065, + 1054,-32768, 4607, 1069,-32768, 6286, 4630,-32768,-32768, 298, + 1874,-32768, 1152, 1152, 1152, 1187, 1045, -43,-32768, 4653, + 4676, 4699, 4722, 4745, 4768, 4791, 4814, 4837, 4860, 4883, + 4906, 1152, 1152, 1157, 868,-32768,-32768, 868, 1152,-32768, + 2312,-32768,-32768,-32768,-32768,-32768,-32768, 16,-32768, 1718, + 1234, 101, 313, 1244, 1152, 1245, 313, 1246, 1247, 1248, + 1250, 1251, 1152, 1252, 868, 1254, 1255, 1152, 1260, 1258, + 1152, 1261, 1262, 1081, 1152,-32768, 2087, 2107, 2127,-32768, + 868, 1263,-32768, 1152, 1152, 1152, 1152, 1152, 1152, 1152, + 1152, 1152, 1152, 1152, 1152, 2147, 2167, 1097,-32768, 1110, + 1328, 1106, 1445, 1275, 1152,-32768, 1113, 1116, 1118, 4929, +-32768, 1119,-32768, 1122,-32768,-32768,-32768, 3488,-32768, 1124, +-32768,-32768, 3512, 1125,-32768, 3536, 1127, 1128,-32768, 2187, + 1282, 1288, 36, 1136,-32768, 4952, 4975, 4998, 5021, 5044, + 5067, 5090, 5113, 5136, 3560, 3584, 3608, 1301, 1305, 868, + 868,-32768, 1229, -119, 5159,-32768, 1418, 313, 313, 313, + 313, 1307, 1308, 1309, 313, 1311, 1312, 1313, 1316, 1317, +-32768,-32768,-32768,-32768, 43, 868, 1152, 1152, 1152, 1152, + 1152, 1152, 1152, 1152, 1152,-32768,-32768,-32768,-32768,-32768, + 1155, 1153, 1149, 1152, 1152, 1418, 1160, 1161, 1162, 1163, +-32768,-32768,-32768, 1166,-32768,-32768,-32768, 1167, 1168, -42, + 1169, 5182, 5205, 5228, 5251, 5274, 5297, 5320, 5343, 5366, + 1177, 1179, 1180, 868, 1268, 1327, 2207, 5389, 1744, 313, + 313, 1333, 1346, 313, 1348, 1349, 1350, 868, 1152, 1152, + 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, + 1189, 1192,-32768,-32768, 1152, 1152, 1196, 1197,-32768,-32768, + 1200, 1201, 1195,-32768, 1205, 5412, 5435, 5458, 5481, 5504, + 5527, 5550, 5573, 5596, 221, 6286, 223, 6286, 228, 6286, + 1293, 1152, 1902, 1418, 313, 868, 1367, 1372, 1373, 1374, + 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, + 1376, 1152, 1381, 1152, 1382, 1218, 5619, 1152,-32768, 1418, + 1221, 1222,-32768,-32768,-32768,-32768, 5642, 5665, 5688, 5711, + 5734, 5757, 3632, 3656, 3680, 6286,-32768, 6286,-32768, 6286, +-32768, 1152, 1152, 2227, 2293, 313, 868, 1152, 1152, 1152, + 1152, 1152, 1152,-32768,-32768,-32768, 5780, 2247,-32768, 1257, + 1223, 1225, 5803, 5826, 5849, 5872, 5895, 5918, 1230, 1231, + 1232, 1152, 1394,-32768, 868, 313, 1152, 1152, 1152, 1152, + 1152, 1152, 1152, 1152, 1152, 2267,-32768, 1235, 1236, 5941, + 5964, 5987, 6010, 6033, 6056, 229, 6286, 261, 6286, 266, + 6286, 1399, 868, 1404, 1152, 1152, 1152, 1152, 1152, 1152, + 1152, 1405, 1152, 1413, 1152, 1414,-32768, 1256,-32768, 6079, + 6102, 6125, 3704, 3728, 3752, 6286,-32768, 6286,-32768, 6286, +-32768, 868, 1152, 1152, 1152,-32768,-32768,-32768, 1281, 6148, + 6171, 6194, 1253, 1280, 1319, 868, 1152, 1152, 1152, 1152, + 1152, 1152, 1283, 6217, 6240, 6263, 271, 6286, 281, 6286, + 285, 6286, 313, 1152, 1152, 1152, 1152, 1417, 1152, 1420, + 1152, 1447, 1310, 3776, 3800, 3824, 6286,-32768, 6286,-32768, + 6286,-32768, 1485,-32768,-32768,-32768,-32768, 1321, 1338, 1339, + 1152, 1152, 1152, 292, 6286, 312, 6286, 321, 6286, 1152, + 1493, 1152, 1505, 1152, 1508, 6286,-32768, 6286,-32768, 6286, +-32768, 1513, 1520,-32768 }; static const short yypgoto[] = {-32768, --32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 1487, --32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, --32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, +-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 1524,-32768, + 986,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, --32768,-32768,-32768,-32768,-32768,-32768,-32768, 1984, 1985, -256, - 272, 1991,-32768,-32768,-32768,-32768,-32768, 900, -893,-32768, -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, --32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, -903,-32768, --32768, -754, -7,-32768, 1523, 2, -107,-32768, -825, 1268, - 271,-32768 +-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 1526, 1528, + -278, 282, 1529,-32768,-32768,-32768,-32768,-32768, 466, -914, +-32768,-32768,-32768, 1259,-32768,-32768, -758, -7,-32768, 1016, + -10,-32768, -111,-32768, -858, 764, 773,-32768,-32768 }; -#define YYLAST 3149 +#define YYLAST 6451 -static const short yytable[] = { 99, - 378, 224, 973, 155, 266, 271, 682, 912, 7, 133, - 894, 860, 134, 135, 120, 136, 895, 735, 739, 743, - 869, 117, 1002, 385, 386, 894, 1006, 876, 1106, 816, - 1010, 895, 747, 101, 1014, 103, 1087, 894, 73, 74, - 751, 683, 141, 895, 75, 76, 77, 78, 79, 80, - 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 396, 397, 398, 399, 400, - 143, 102, -260, 144, 145, -260, 104, -260, 129, 130, - 105, 131, 272, -260, -260, 458, 459, 190, 183, 184, - 185, 191, 188, 189, 1065, 106, 190, 736, 740, 744, - 113, 107, 267, 114, 226, 227, 228, 229, 230, 594, - 232, 233, 748, 235, 236, 237, 1017, 241, 121, 108, - 752, 138, 118, 109, 139, 119, 343, 156, 972, 152, - 254, 255, 153, 589, 475, 110, 401, 476, 253, 708, - 1151, 710, 709, 258, 711, 111, 270, 112, 273, 595, - 275, 731, 115, 116, 732, 279, 280, 281, 282, 283, - 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 296, 297, 298, 737, 741, 745, 302, 303, - 304, 305, 306, 307, 817, 1107, 96, 97, 1018, 610, - 749, 1088, 1022, 98, 73, 74, 695, 696, 753, 585, - 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, - 95, 712, 886, 348, 713, 913, 351, 122, 915, 973, - 355, 474, 913, 914, 360, 361, 362, 887, 364, 365, - 366, 367, 368, 369, 370, 39, 40, 41, 42, 123, - 44, 380, 381, 382, 299, 300, 188, 189, 994, 1214, - 190, 126, 1215, 1216, 394, 1218, 1217, 388, 1219, 125, - 404, 299, 300, 188, 189, 124, 127, 190, 299, 300, - 188, 189, 1000, 1319, 190, 147, 1320, 73, 74, 918, - 128, 425, 426, 75, 76, 77, 78, 79, 80, 81, - 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - 92, 93, 94, 95, 1004, 1015, 1110, 1111, 1112, 1113, - 137, 132, 142, 1117, 299, 300, 188, 189, 1321, 1323, - 190, 1322, 1324, 146, 299, 300, 188, 189, 1375, 148, - 190, 1376, 186, 187, 188, 189, 149, 150, 190, 98, - 477, 1377, 238, 151, 1378, 482, 1008, 667, 668, 669, - 670, 671, 154, 1012, 491, 492, 157, 299, 300, 188, - 189, 495, 490, 190, 299, 300, 188, 189, 499, 1062, - 190, 159, 299, 300, 188, 189, 158, 160, 190, 1170, - 1171, 161, 162, 1174, 240, 537, 225, 1379, 1408, 245, - 1380, 1409, 163, 299, 300, 188, 189, 539, 1410, 190, - 1412, 1411, 164, 1413, 540, 541, 542, 262, 264, 165, - 265, 166, 268, 269, 167, 168, 169, 299, 300, 188, - 189, 170, 171, 190, 263, 96, 97, 299, 300, 188, - 189, 172, 919, 190, 1225, 139, -7, -7, 173, -7, - 810, 792, 174, 175, -1, 8, 176, 9, 177, 299, - 300, 188, 189, 242, 577, 190, 586, 587, 680, 73, - 74, 923, 178, 179, 180, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, - 90, 91, 92, 93, 94, 95, 1267, 607, 608, 609, - 181, 299, 300, 188, 189, 182, 246, 190, 299, 300, - 188, 189, 222, 231, 190, 276, 277, 234, 625, 626, - 243, 628, 244, 248, 299, 300, 188, 189, 1297, -259, - 190, 247, -259, 256, -259, 249, 250, 645, 646, 251, - -259, -259, 252, 1169, 190, 338, 257, 451, 647, 259, - 260, 261, 299, 300, 188, 189, 278, 656, 190, 190, - -7, -7, -7, -7, -7, -7, -7, -7, 10, 11, - 12, 13, 14, 15, 16, 17, 308, 690, 299, 300, - 188, 189, 691, 309, 190, 340, 1, 2, 310, 3, - 403, 311, 312, 313, 314, 704, 705, 706, 315, 316, - 317, 318, 319, 320, 715, 716, 717, 718, 719, 720, - 721, 722, 723, 724, 725, 726, 1381, 96, 97, 299, - 300, 188, 189, 321, 919, 190, 342, 139, 301, 755, - 756, 964, 73, 74, 927, 757, 322, 323, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 299, - 300, 188, 189, 324, 325, 190, 358, 24, 25, 26, - 27, 28, 29, 30, 31, 326, 32, 327, 34, 35, - 882, 37, 38, 328, 789, 329, 330, 797, 798, 331, - 299, 300, 188, 189, 332, 333, 190, 363, 427, 636, - 334, 50, 637, 335, 299, 300, 188, 189, 336, 811, - 190, 813, 337, 815, 371, 51, 52, 341, 379, 831, - 832, 299, 300, 188, 189, 390, 391, 190, 393, 808, - 428, 429, 809, 430, 431, 578, 579, 432, 581, 433, - 434, 435, 583, 584, 299, 300, 188, 189, 436, 851, - 190, 853, 965, 437, 438, 966, 299, 300, 188, 189, - 439, 863, 190, 440, 1264, 441, 442, 1265, 870, 871, - 872, 299, 300, 188, 189, 877, 59, 190, 443, 881, - 96, 97, 345, 444, 884, 885, 445, 919, 446, 447, - 139, 299, 300, 188, 189, 448, 449, 190, 627, 383, - 889, 630, 350, 450, 452, 453, 454, 455, 456, 457, - 463, 898, 899, 900, 901, 902, 903, 904, 905, 906, - 907, 908, 909, 653, 654, 461, 460, 462, 493, 659, - 660, 920, 464, 924, 469, 928, 666, 932, 673, 936, - 921, 465, 925, 940, 929, 466, 933, 468, 937, 471, - 685, 472, 687, 299, 300, 188, 189, 473, 478, 190, - 494, 692, 693, 694, 352, 500, 697, 698, 699, 700, - 701, 702, 703, 299, 300, 188, 189, 526, 527, 190, - 528, 372, 301, 967, 968, 969, 501, 502, 503, 504, - 505, 506, 507, 508, 509, 510, 511, 512, 529, 531, - 532, 544, 986, 987, 545, 533, 73, 74, 931, 991, - 543, 993, 75, 76, 77, 78, 79, 80, 81, 82, - 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, - 93, 94, 95, 299, 300, 188, 189, 1020, 534, 190, - 299, 300, 188, 189, 479, 1028, 190, 535, 536, 574, - 1033, 483, 546, 1036, 547, 548, 549, 1040, -3, 22, - 580, 582, 23, 591, 592, 550, 1046, 1047, 1048, 1049, - 1050, 1051, 1052, 1053, 1054, 1055, 1056, 1057, 299, 300, - 188, 189, 513, 551, 190, 575, 644, 344, 24, 25, - 26, 27, 28, 29, 30, 31, 552, 32, 33, 34, - 35, 36, 37, 38, 838, 553, 554, 1070, 555, 39, - 40, 41, 42, 43, 44, 556, 45, 46, 47, 48, - 49, 557, 50, 558, 559, 560, 850, 561, 1266, 562, - 854, 563, 299, 300, 188, 189, 51, 52, 190, 564, - 590, 565, 566, 53, 54, 55, 567, 56, 57, 873, - 568, 593, 569, 58, 96, 97, 570, 299, 300, 188, - 189, 919, 1109, 190, 139, 372, 501, 502, 503, 504, - 505, 506, 507, 508, 509, 510, 511, 512, 571, 572, - 573, 576, 1125, 1126, 1127, 1128, 1129, 1130, 1131, 1132, - 1133, 596, 299, 300, 188, 189, 597, 59, 190, 1141, - 373, 1143, 598, 73, 74, 935, 599, 603, 600, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, +static const short yytable[] = { 102, + 244, 722, 163, 944, 418, 292, 104, 297, 915, 122, + 953, 125, 723, 993, 926, 926, 436, 436, 674, 1012, + 927, 927, 845, 210, 118, 280, 281, 119, 210, -228, + 147, 149, -1, 8, -227, 9, 892, 749, 280, 281, + 750, 1084, 437, 437, 116, 901, 143, 144, 724, 1104, + 751, 7, 908, 752, 171, 75, 76, 145, 446, 447, + 146, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 299, 300, 188, 189, 601, 602, 190, 624, 612, 613, - 614, 484, 615, 616, 617, 1179, 1180, 1181, 1182, 1183, - 1184, 1185, 1186, 1187, 1189, 1191, 1193, 618, 629, 1196, - 1197, 1198, 714, 299, 300, 188, 189, 619, 620, 190, - 299, 300, 188, 189, 606, 621, 190, 638, 622, 623, - 643, 806, 648, 989, 649, 650, 990, 1221, 651, 652, - 1224, 655, 657, 658, 661, 662, 663, 1231, 1232, 1233, - 1234, 1235, 1236, 1237, 1238, 1239, 1240, 664, 1242, 665, - 1244, 299, 300, 188, 189, 1249, 1250, 190, 299, 300, - 188, 189, 1041, 674, 190, 1030, 707, 675, 676, 1042, - 677, 299, 300, 188, 189, 678, 679, 190, 1262, 1263, - 681, 1044, 1043, 684, 686, 1269, 1270, 1271, 1272, 1273, - 1274, 96, 97, 688, 689, 729, 1280, 734, 919, 790, - 791, 139, 299, 300, 188, 189, 758, 762, 190, 761, - 1293, 794, 763, 1058, 764, 766, 1298, 1299, 1300, 1301, - 1302, 1303, 1305, 1307, 1309, 765, 767, 795, 24, 25, - 26, 27, 28, 29, 30, 31, 768, 32, 769, 34, - 35, 770, 37, 38, 771, 1328, 1329, 1330, 1331, 1332, - 1333, 1334, 772, 1336, 773, 1338, 774, 299, 300, 188, - 189, 775, 50, 190, 776, 796, 777, 778, 1059, 780, - 1104, 1105, 779, 1348, 1349, 1350, 51, 52, 299, 300, - 188, 189, 781, 782, 190, 799, 415, 1362, 1363, 1364, - 1366, 1368, 1370, 783, 299, 300, 188, 189, 784, 1124, - 190, 785, 800, 346, 1382, 1383, 1384, 1385, 786, 1387, - 787, 1389, 299, 300, 188, 189, 788, 801, 190, 299, - 300, 188, 189, 1084, 802, 190, 803, 804, 805, 812, - 1222, 1403, 1405, 1407, 814, 818, 837, 59, 833, 839, - 1414, 841, 1416, 852, 1418, 843, 845, 1165, 299, 300, - 188, 189, 847, 856, 190, 855, 858, 73, 74, 1279, - 387, 857, 1178, 75, 76, 77, 78, 79, 80, 81, - 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - 92, 93, 94, 95, 299, 300, 188, 189, 859, 861, - 190, 299, 300, 188, 189, 1295, 862, 190, 299, 300, - 188, 189, 1310, 864, 190, 73, 74, 347, 865, 866, - 1226, 75, 76, 77, 78, 79, 80, 81, 82, 83, + 96, 97, 280, 281, 105, 280, 281, 776, 280, 281, + 192, 193, 194, 195, 211, 298, 282, 675, 160, 283, + 926, 161, 545, 1017, 280, 281, 927, 246, 425, 426, + 249, 250, 251, 252, 293, 254, 255, 790, 257, 258, + 259, 123, 263, 106, 124, 107, 126, 520, 992, 1147, + 521, 275, 108, 277, 109, 164, 110, 278, 279, 284, + 10, 11, 12, 13, 14, 15, 16, 17, 502, 503, + 280, 281, 280, 281, 296, 111, 299, 114, 301, 280, + 281, 280, 281, 799, 306, 307, 308, 309, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, + 322, 323, 324, 325, 438, 442, 1013, 846, 329, 330, + 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, + 341, 342, 343, 344, 1018, 993, 1085, 117, 1022, 98, + 99, 138, 637, 112, 139, 140, 100, 141, 280, 281, + 101, 736, 737, 777, 778, 779, 780, 628, 199, 200, + 409, 201, 202, 203, 204, 326, 327, 207, 208, 209, + 113, 134, 135, 210, 136, 386, 781, 782, 389, 207, + 208, 209, 393, 638, 115, 210, 398, 399, 400, 120, + 402, 403, 404, 405, 406, 407, 408, 121, 772, 412, + 413, 773, 380, 280, 281, 280, 281, 420, 421, 422, + 127, 428, 280, 281, 129, 753, 131, 419, 754, 151, + 434, 128, 152, 153, 646, 130, 445, 546, 547, 548, + 549, 550, 551, 552, 553, 554, 555, 556, 557, 1107, + 1108, 1109, 1110, 280, 281, 137, 1114, 132, 468, 469, + 75, 76, 945, 946, 133, 923, 77, 78, 79, 80, + 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, + 91, 92, 93, 94, 95, 96, 97, 40, 41, 42, + 43, 155, 45, 196, 197, 198, 199, 200, 142, 201, + 202, 203, 204, 326, 327, 207, 208, 209, 280, 281, + 150, 210, 154, 507, 280, 281, 156, 158, 159, 157, + 924, 1167, 1168, 165, 945, 1171, 925, 947, 522, 1210, + 167, 1212, 1211, 527, 1213, 168, 1214, 1311, 535, 1215, + 1312, 162, 536, 537, 558, 707, 708, 709, 710, 711, + 166, 540, 169, 196, 197, 198, 199, 200, 544, 201, + 202, 203, 204, 326, 327, 207, 208, 209, 170, 1313, + 171, 210, 1314, 578, 1315, 288, 1221, 1316, 291, 1367, + 172, 632, 1368, 326, 327, 207, 208, 209, 245, 1369, + 580, 210, 1370, 1371, 247, 173, 1372, 581, 582, 583, + 1400, 174, 584, 1401, 196, 197, 198, 199, 200, 839, + 201, 202, 203, 204, 205, 206, 207, 208, 209, 248, + 1402, 100, 210, 1403, 175, 101, 176, 1261, 260, 1404, + 177, 178, 1405, 179, 180, 181, 182, 620, -7, -7, + 183, -7, 184, 185, 186, 187, 720, 188, 189, 264, + 190, 629, 630, 191, 268, 242, 253, 1289, 256, 265, + 266, 289, 270, 271, 269, 272, 273, 75, 76, 868, + 650, 651, 652, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, - 94, 95, 73, 74, 867, 868, 874, 875, 75, 76, + 94, 95, 96, 97, 274, 285, 286, 303, 287, 304, + 305, 210, 345, 668, 669, 346, 671, 653, 347, 201, + 202, 203, 204, 326, 327, 207, 208, 209, 687, 685, + 686, 210, 196, 197, 198, 199, 200, 696, 201, 202, + 203, 204, 326, 327, 207, 208, 209, 348, 349, 350, + 210, 351, 352, 918, 1373, 353, -7, -7, -7, -7, + -7, -7, -7, -7, 354, 355, 375, 356, 357, 358, + 731, 359, 360, 361, 362, 732, 363, 364, 365, 366, + 367, 368, 1, 2, 369, 3, 370, 371, 745, 746, + 747, 984, 377, 372, 373, 374, 396, 756, 757, 758, + 759, 760, 761, 762, 763, 764, 765, 766, 767, 378, + 379, 381, 401, 430, 431, 433, 472, 473, 474, 784, + 785, 475, 476, 477, 478, 786, 479, 480, 481, 482, + 483, 869, 870, 484, 485, 486, 487, 488, 100, 489, + 490, 491, 871, 492, 493, 146, 494, 495, 496, 497, + 498, 499, 500, 501, 508, 914, 504, 506, 196, 197, + 198, 199, 200, 818, 201, 202, 203, 204, 326, 327, + 207, 208, 209, 505, 509, 514, 210, 510, 826, 827, + 511, 513, 516, 571, 517, 518, 523, 538, 840, 539, + 842, 572, 844, 573, 196, 197, 198, 199, 200, 574, + 201, 202, 203, 204, 326, 327, 207, 208, 209, 576, + 860, 861, 210, 577, 117, 873, 585, 586, 872, 874, + 875, 876, 877, 587, 588, 589, 590, 591, 883, 592, + 885, 593, 594, 595, 596, 597, 598, 599, 600, 601, + 895, 602, 603, 604, 605, 919, 606, 902, 903, 904, + 607, 608, 609, 610, 909, 611, 612, 613, 913, 614, + 615, 616, 617, 916, 917, 546, 547, 548, 549, 550, + 551, 552, 553, 554, 555, 556, 557, 618, 623, 921, + 625, 633, 634, 635, 636, 639, 640, 641, 642, 643, + 930, 931, 932, 933, 934, 935, 936, 937, 938, 939, + 940, 941, 644, 645, 667, 655, 672, 678, 656, 277, + 657, 192, 193, 951, 715, 684, 683, 952, 658, 688, + 75, 76, 659, 660, 661, 960, 77, 78, 79, 80, + 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, + 91, 92, 93, 94, 95, 96, 97, 689, 954, 662, + 663, 262, 664, 665, 690, 666, 267, 691, 692, 695, + 697, 698, 701, 702, 703, 987, 988, 989, 704, 955, + 705, 714, 755, 717, 716, 718, 748, 719, 290, 721, + 725, 727, 294, 295, 1006, 1007, 196, 197, 198, 199, + 200, 1011, 201, 202, 203, 204, 326, 327, 207, 208, + 209, 729, 730, 770, 210, 775, 783, 1020, 792, 787, + 791, 793, 819, 794, 795, 1028, 796, 797, 798, 800, + 1033, 801, 802, 1036, 803, 820, 804, 1040, 805, 956, + 806, 807, 808, 823, 809, 810, 1046, 1047, 1048, 1049, + 1050, 1051, 1052, 1053, 1054, 1055, 1056, 1057, 824, 825, + 828, 829, 811, 812, 813, 1065, 814, 1067, 196, 197, + 198, 199, 200, 815, 201, 202, 203, 204, 326, 327, + 207, 208, 209, 816, 98, 99, 210, 817, 830, 831, + 832, 100, 833, 834, 841, 101, 843, 847, 260, 196, + 197, 198, 199, 200, 862, 201, 202, 203, 204, 326, + 327, 207, 208, 209, 866, 878, 879, 210, 880, 1106, + 196, 197, 198, 199, 200, 884, 201, 202, 203, 204, + 326, 327, 207, 208, 209, 887, 888, 957, 210, 1122, + 1123, 1124, 1125, 1126, 1127, 1128, 1129, 1130, 889, 890, + 891, 893, 894, 75, 76, 897, 1137, 1138, 1139, 77, + 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, + 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, + 196, 197, 198, 199, 200, 896, 201, 202, 203, 204, + 326, 327, 207, 208, 209, 898, 899, 900, 210, 906, + 907, 1176, 1177, 1178, 1179, 1180, 1181, 1182, 1183, 1184, + 1186, 1188, 1190, 910, 75, 76, 911, 1193, 1194, 920, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 73, - 1140, 878, 1268, 879, 888, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, - 90, 91, 92, 93, 94, 95, 880, 299, 300, 188, - 189, 883, 1296, 190, 891, 890, 349, 917, 299, 300, - 188, 189, 892, 893, 190, 96, 97, 353, 299, 300, - 188, 189, 98, 916, 190, 238, 939, 354, 970, 922, - 926, 1326, 930, 24, 25, 26, 27, 28, 29, 30, - 31, 934, 32, 938, 34, 35, 941, 37, 38, 299, - 300, 188, 189, 943, 944, 190, 192, 946, 359, 945, - 1347, 947, 971, 186, 187, 188, 189, 50, 949, 190, - 98, 950, 988, 955, 1361, 992, 951, 299, 300, 188, - 189, 51, 52, 190, 956, 957, 392, 959, 995, 960, - 96, 97, 299, 300, 188, 189, 962, 98, 190, 996, - 999, 395, 299, 300, 188, 189, 1001, 1037, 190, 1003, - 1005, 405, 1007, 1009, 1011, 1013, 1016, 96, 97, 193, - 194, 195, 1019, 1021, 98, 1024, 1023, 196, 197, 198, - 199, 200, 201, 202, 203, 204, 205, 1039, 1025, 1026, - 1027, 1029, 59, 1031, 1032, 206, 207, 208, 209, 210, - 211, 212, 213, 214, 215, 1034, 216, 217, 218, 219, - 220, 221, 299, 300, 188, 189, 1035, 1038, 190, 1045, - 1060, 406, 299, 300, 188, 189, 1061, 1063, 190, 1075, - 1064, 407, 299, 300, 188, 189, 1066, 1067, 190, 1068, - 1069, 408, 299, 300, 188, 189, 1071, 1072, 190, 1073, - 1085, 409, 299, 300, 188, 189, 1076, 1078, 190, 1080, - 1086, 410, 299, 300, 188, 189, 1082, 1083, 190, 1089, - 1102, 411, 299, 300, 188, 189, 1103, 1121, 190, 1114, - 1115, 412, 299, 300, 188, 189, 1116, 1122, 190, 1118, - 1119, 413, 299, 300, 188, 189, 1120, 1137, 190, 1138, - 1139, 414, 299, 300, 188, 189, 1142, 1144, 190, 1146, - 1166, 416, 299, 300, 188, 189, 1162, 1175, 190, 1172, - 1173, 417, 299, 300, 188, 189, 1147, 1145, 190, 1176, - 1220, 418, 299, 300, 188, 189, 1148, 1149, 190, 1150, - 1163, 419, 299, 300, 188, 189, 1177, 1164, 190, 1152, - 1195, 420, 299, 300, 188, 189, 1167, 1194, 190, 1199, - 1203, 421, 299, 300, 188, 189, 1200, 1204, 190, 1201, - 1227, 467, 299, 300, 188, 189, 1202, 1251, 190, 1228, - 1229, 470, 299, 300, 188, 189, 1230, 1246, 190, 1241, - 1243, 480, 299, 300, 188, 189, 1245, 1252, 190, 1248, - 1281, 481, 299, 300, 188, 189, 1282, 1283, 190, 1294, - 1290, 485, 299, 300, 188, 189, 1291, 1292, 190, 1311, - 1325, 486, 299, 300, 188, 189, 1312, 1340, 190, 1327, - 1335, 487, 299, 300, 188, 189, 1337, 1354, 190, 1339, - 1358, 488, 299, 300, 188, 189, 1359, 1360, 190, 1386, - 1388, 489, 299, 300, 188, 189, 1371, 1399, 190, 1390, - 1395, 530, 299, 300, 188, 189, 1391, 1421, 190, 1400, - 1401, 538, 299, 300, 188, 189, 1415, 1422, 190, 1417, - 1419, 639, 299, 300, 188, 189, 611, 1123, 190, 63, - 64, 640, 299, 300, 188, 189, 65, 588, 190, 836, - 0, 641, 299, 300, 188, 189, 0, 0, 190, 0, - 0, 642, 299, 300, 188, 189, 0, 0, 190, 0, - 0, 730, 299, 300, 188, 189, 0, 0, 190, 0, - 0, 807, 299, 300, 188, 189, 0, 0, 190, 0, - 0, 849, 299, 300, 188, 189, 0, 0, 190, 0, - 0, 948, 299, 300, 188, 189, 0, 0, 190, 0, - 0, 952, 299, 300, 188, 189, 0, 0, 190, 0, - 0, 954, 299, 300, 188, 189, 0, 0, 190, 0, - 0, 1077, 299, 300, 188, 189, 0, 0, 190, 0, - 0, 1079, 299, 300, 188, 189, 0, 0, 190, 0, - 0, 1081, 299, 300, 188, 189, 0, 0, 190, 0, - 0, 1099, 299, 300, 188, 189, 0, 0, 190, 0, - 0, 1100, 299, 300, 188, 189, 0, 0, 190, 0, - 0, 1101, 299, 300, 188, 189, 0, 0, 190, 0, - 0, 1259, 299, 300, 188, 189, 0, 0, 190, 0, - 0, 1260, 299, 300, 188, 189, 0, 0, 190, 0, - 0, 1261, 299, 300, 188, 189, 0, 0, 190, 0, - 0, 1344, 299, 300, 188, 189, 0, 0, 190, 0, - 0, 1345, 299, 300, 188, 189, 0, 0, 190, 0, - 0, 1346, 299, 300, 188, 189, 0, 0, 190, 0, - 0, 1392, 299, 300, 188, 189, 0, 0, 190, 0, - 0, 1393, 299, 300, 188, 189, 0, 0, 190, 0, - 0, 1394, 299, 300, 188, 189, 0, 0, 190, 0, - 422, 299, 300, 188, 189, 0, 0, 190, 0, 423, - 299, 300, 188, 189, 0, 0, 190, 0, 424, 299, - 300, 188, 189, 0, 0, 190, 0, 496, 299, 300, - 188, 189, 0, 0, 190, 0, 497, 299, 300, 188, - 189, 0, 0, 190, 0, 498, 299, 300, 188, 189, - 0, 0, 190, 0, 604, 299, 300, 188, 189, 0, - 0, 190, 0, 605, 299, 300, 188, 189, 0, 0, - 190, 0, 727, 299, 300, 188, 189, 0, 0, 190, - 0, 728, 299, 300, 188, 189, 0, 0, 190, 0, - 759, 299, 300, 188, 189, 0, 0, 190, 0, 760, - 299, 300, 188, 189, 0, 0, 190, 0, 793, 299, - 300, 188, 189, 0, 0, 190, 0, 819, 299, 300, - 188, 189, 0, 0, 190, 0, 820, 299, 300, 188, - 189, 0, 0, 190, 0, 821, 299, 300, 188, 189, - 0, 0, 190, 0, 822, 299, 300, 188, 189, 0, - 0, 190, 0, 823, 299, 300, 188, 189, 0, 0, - 190, 0, 824, 299, 300, 188, 189, 0, 0, 190, - 0, 825, 299, 300, 188, 189, 0, 0, 190, 0, - 826, 299, 300, 188, 189, 0, 0, 190, 0, 827, - 299, 300, 188, 189, 0, 0, 190, 0, 828, 299, - 300, 188, 189, 0, 0, 190, 0, 829, 299, 300, - 188, 189, 0, 0, 190, 0, 830, 299, 300, 188, - 189, 0, 0, 190, 0, 910, 299, 300, 188, 189, - 0, 0, 190, 0, 911, 299, 300, 188, 189, 0, - 0, 190, 0, 942, 299, 300, 188, 189, 0, 0, - 190, 0, 953, 299, 300, 188, 189, 0, 0, 190, - 0, 958, 299, 300, 188, 189, 0, 0, 190, 0, - 961, 299, 300, 188, 189, 0, 0, 190, 0, 963, - 299, 300, 188, 189, 0, 0, 190, 0, 974, 299, - 300, 188, 189, 0, 0, 190, 0, 975, 299, 300, - 188, 189, 0, 0, 190, 0, 976, 299, 300, 188, - 189, 0, 0, 190, 0, 977, 299, 300, 188, 189, - 0, 0, 190, 0, 978, 299, 300, 188, 189, 0, - 0, 190, 0, 979, 299, 300, 188, 189, 0, 0, - 190, 0, 980, 299, 300, 188, 189, 0, 0, 190, - 0, 981, 299, 300, 188, 189, 0, 0, 190, 0, - 982, 299, 300, 188, 189, 0, 0, 190, 0, 983, - 299, 300, 188, 189, 0, 0, 190, 0, 984, 299, - 300, 188, 189, 0, 0, 190, 0, 985, 299, 300, - 188, 189, 0, 0, 190, 0, 1074, 299, 300, 188, - 189, 0, 0, 190, 0, 1090, 299, 300, 188, 189, - 0, 0, 190, 0, 1091, 299, 300, 188, 189, 0, - 0, 190, 0, 1092, 299, 300, 188, 189, 0, 0, - 190, 0, 1093, 299, 300, 188, 189, 0, 0, 190, - 0, 1094, 299, 300, 188, 189, 0, 0, 190, 0, - 1095, 299, 300, 188, 189, 0, 0, 190, 0, 1096, - 299, 300, 188, 189, 0, 0, 190, 0, 1097, 299, - 300, 188, 189, 0, 0, 190, 0, 1098, 299, 300, - 188, 189, 0, 0, 190, 0, 1153, 299, 300, 188, - 189, 0, 0, 190, 0, 1154, 299, 300, 188, 189, - 0, 0, 190, 0, 1155, 299, 300, 188, 189, 0, - 0, 190, 0, 1156, 299, 300, 188, 189, 0, 0, - 190, 0, 1157, 299, 300, 188, 189, 0, 0, 190, - 0, 1158, 299, 300, 188, 189, 0, 0, 190, 0, - 1159, 299, 300, 188, 189, 0, 0, 190, 0, 1160, - 299, 300, 188, 189, 0, 0, 190, 0, 1161, 299, - 300, 188, 189, 0, 0, 190, 0, 1168, 299, 300, - 188, 189, 0, 0, 190, 0, 1205, 299, 300, 188, - 189, 0, 0, 190, 0, 1206, 299, 300, 188, 189, - 0, 0, 190, 0, 1207, 299, 300, 188, 189, 0, - 0, 190, 0, 1208, 299, 300, 188, 189, 0, 0, - 190, 0, 1209, 299, 300, 188, 189, 0, 0, 190, - 0, 1210, 299, 300, 188, 189, 0, 0, 190, 0, - 1211, 299, 300, 188, 189, 0, 0, 190, 0, 1212, - 299, 300, 188, 189, 0, 0, 190, 0, 1213, 299, - 300, 188, 189, 0, 0, 190, 0, 1223, 299, 300, - 188, 189, 0, 0, 190, 0, 1247, 299, 300, 188, - 189, 0, 0, 190, 0, 1253, 299, 300, 188, 189, - 0, 0, 190, 0, 1254, 299, 300, 188, 189, 0, - 0, 190, 0, 1255, 299, 300, 188, 189, 0, 0, - 190, 0, 1256, 299, 300, 188, 189, 0, 0, 190, - 0, 1257, 299, 300, 188, 189, 0, 0, 190, 0, - 1258, 299, 300, 188, 189, 0, 0, 190, 0, 1278, - 299, 300, 188, 189, 0, 0, 190, 0, 1284, 299, - 300, 188, 189, 0, 0, 190, 0, 1285, 299, 300, - 188, 189, 0, 0, 190, 0, 1286, 299, 300, 188, - 189, 0, 0, 190, 0, 1287, 299, 300, 188, 189, - 0, 0, 190, 0, 1288, 299, 300, 188, 189, 0, - 0, 190, 0, 1289, 299, 300, 188, 189, 0, 0, - 190, 0, 1313, 299, 300, 188, 189, 0, 0, 190, - 0, 1314, 299, 300, 188, 189, 0, 0, 190, 0, - 1315, 299, 300, 188, 189, 0, 0, 190, 0, 1316, - 299, 300, 188, 189, 0, 0, 190, 0, 1317, 299, - 300, 188, 189, 0, 0, 190, 0, 1318, 299, 300, - 188, 189, 0, 0, 190, 0, 1341, 299, 300, 188, - 189, 0, 0, 190, 0, 1342, 299, 300, 188, 189, - 0, 0, 190, 0, 1343, 299, 300, 188, 189, 0, - 0, 190, 0, 1355, 299, 300, 188, 189, 0, 0, - 190, 0, 1356, 299, 300, 188, 189, 0, 0, 190, - 0, 1357, 299, 300, 188, 189, 0, 0, 190, 0, - 1372, 299, 300, 188, 189, 0, 0, 190, 0, 1373, - 299, 300, 188, 189, 0, 0, 190, 0, 1374 + 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, + 97, 912, 922, 948, 1217, 949, 1220, 950, 961, 958, + 959, 966, 990, 1227, 1228, 1229, 1230, 1231, 1232, 1233, + 1234, 1235, 1236, 963, 1238, 964, 1240, 965, 967, 969, + 1244, 970, 1245, 971, 975, 991, 976, 977, 196, 197, + 198, 199, 200, 980, 201, 202, 203, 204, 326, 327, + 207, 208, 209, 979, 1257, 1258, 210, 982, 1008, 1016, + 1263, 1264, 1265, 1266, 1267, 1268, 1019, 869, 870, 1024, + 1021, 1023, 1039, 1025, 100, 1026, 1027, 1029, 871, 1031, + 1032, 146, 1034, 1035, 1286, 1037, 1038, 1060, 1045, 1290, + 1291, 1292, 1293, 1294, 1295, 1297, 1299, 1301, 1061, 1063, + 1066, 1068, 621, 622, 1069, 624, 1070, 1082, 1072, 626, + 627, 1073, 1075, 1083, 1077, 1079, 1080, 1320, 1321, 1322, + 1323, 1324, 1325, 1326, 1086, 1328, 1099, 1330, 98, 99, + 1100, 1103, 1111, 1112, 1113, 100, 1115, 1116, 1117, 101, + 1118, 1119, 1136, 1134, 1135, 1340, 1341, 1342, 1140, 1141, + 1163, 1142, 1143, 1062, 1144, 1145, 1146, 1148, 1169, 1354, + 1355, 1356, 1358, 1360, 1362, 670, 1162, 1158, 673, 1159, + 1160, 1170, 1172, 1173, 470, 1174, 1374, 1375, 1376, 1377, + 1191, 1379, 1192, 1381, 1195, 1196, 1199, 693, 694, 1197, + 1198, 1216, 1223, 699, 700, 519, 1200, 1224, 1225, 1226, + 706, 1237, 713, 1395, 1397, 1399, 1239, 1241, 1242, 1246, + 1247, 1275, 1406, 1276, 1408, 726, 1410, 728, 1274, 1287, + 1283, 1284, 1285, 1303, 1317, 1304, 733, 734, 735, 1319, + 1327, 738, 739, 740, 741, 742, 743, 744, 1329, 1331, + 75, 76, 1378, 1350, 1332, 1380, 77, 78, 79, 80, + 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, + 91, 92, 93, 94, 95, 96, 97, 75, 1064, 1346, + 1351, 1363, 1382, 77, 78, 79, 80, 81, 82, 83, + 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, + 94, 95, 96, 97, 196, 197, 198, 199, 200, 1383, + 201, 202, 203, 204, 326, 327, 207, 208, 209, 1352, + 1387, 1391, 210, 196, 197, 198, 199, 200, 1407, 201, + 202, 203, 204, 326, 327, 207, 208, 209, 1392, 1393, + 1409, 210, 1413, 1411, 196, 197, 198, 199, 200, 1414, + 201, 202, 203, 204, 326, 327, 207, 208, 209, 62, + 654, 65, 210, 66, 67, 631, 865, 25, 26, 27, + 28, 29, 30, 31, 32, 0, 33, 867, 35, 36, + 1120, 38, 39, 0, 0, 0, 0, 882, 0, 0, + 443, 886, 0, 0, 196, 197, 198, 199, 200, 51, + 201, 202, 203, 204, 205, 206, 207, 208, 209, 0, + 905, 100, 210, 52, 53, 101, 196, 197, 198, 199, + 200, 0, 201, 202, 203, 204, 326, 327, 207, 208, + 209, 98, 99, 0, 210, 0, 0, 0, 100, 0, + 0, 383, 101, 25, 26, 27, 28, 29, 30, 31, + 32, 0, 33, 0, 35, 36, 0, 38, 39, 25, + 26, 27, 28, 29, 30, 31, 32, 0, 33, 60, + 35, 36, 0, 38, 39, 51, 0, 0, 0, -3, + 22, 0, 0, 23, 0, 0, 0, 0, 0, 52, + 53, 51, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 52, 53, 0, 423, 24, + 25, 26, 27, 28, 29, 30, 31, 32, 0, 33, + 34, 35, 36, 37, 38, 39, 0, 0, 0, 40, + 41, 42, 43, 44, 45, 0, 46, 47, 48, 49, + 50, 0, 51, 0, 0, 60, 0, 1009, 0, 212, + 1010, 0, 0, 0, 0, 0, 52, 53, 0, 0, + 0, 60, 0, 54, 55, 56, 57, 58, 59, 0, + 0, 0, 0, 0, 0, 0, 0, 1030, 0, 0, + 0, 0, 0, 0, 427, 0, 0, 0, 0, 0, + 0, 0, 0, 1044, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 213, 214, 215, 0, 0, + 0, 0, 60, 216, 217, 218, 219, 220, 221, 222, + 223, 224, 225, 0, 0, 0, 0, 0, 0, 0, + 0, 226, 227, 228, 229, 230, 231, 232, 233, 234, + 235, 0, 236, 237, 238, 239, 240, 241, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 1101, 1102, 196, 197, 198, 199, 200, 0, + 201, 202, 203, 204, 326, 327, 207, 208, 209, 0, + 0, 0, 210, 1015, 0, 0, 0, 0, 1121, 0, + 0, 0, 0, 821, 196, 197, 198, 199, 200, 0, + 201, 202, 203, 204, 326, 327, 207, 208, 209, 1166, + 0, 0, 210, 0, 0, 0, 0, 0, 0, 0, + 196, 197, 198, 199, 200, 0, 201, 202, 203, 204, + 326, 327, 207, 208, 209, 0, 1161, 0, 210, 0, + 0, 0, 0, 0, 0, 196, 197, 198, 199, 200, + 1175, 201, 202, 203, 204, 326, 327, 207, 208, 209, + 0, 0, 0, 210, 0, 0, 0, 0, 676, 0, + 0, 677, 0, 196, 197, 198, 199, 200, 0, 201, + 202, 203, 204, 326, 327, 207, 208, 209, 0, 0, + 0, 210, 471, 0, 0, 0, 0, 0, 1222, 441, + 196, 197, 198, 199, 200, 0, 201, 202, 203, 204, + 326, 327, 207, 208, 209, 0, 0, 0, 210, 196, + 197, 198, 199, 200, 0, 201, 202, 203, 204, 326, + 327, 207, 208, 209, 0, 0, 0, 210, 0, 0, + 0, 837, 0, 0, 838, 0, 0, 0, 0, 1262, + 196, 197, 198, 199, 200, 0, 201, 202, 203, 204, + 326, 327, 207, 208, 209, 0, 0, 0, 210, 0, + 0, 0, 985, 0, 0, 986, 0, 1288, 196, 197, + 198, 199, 200, 0, 201, 202, 203, 204, 326, 327, + 207, 208, 209, 0, 0, 0, 210, 0, 0, 0, + 1218, 0, 0, 1219, 0, 1318, 196, 197, 198, 199, + 200, 0, 201, 202, 203, 204, 326, 327, 207, 208, + 209, 0, 0, 0, 210, 0, 0, 0, 0, 0, + 0, 388, 0, 0, 1339, 0, 0, 0, 0, 0, + 0, 0, 0, 196, 197, 198, 199, 200, 1353, 201, + 202, 203, 204, 326, 327, 207, 208, 209, 0, 0, + 0, 210, 0, 196, 197, 198, 199, 200, 390, 201, + 202, 203, 204, 326, 327, 207, 208, 209, 0, 0, + 0, 210, 0, 196, 197, 198, 199, 200, 524, 201, + 202, 203, 204, 326, 327, 207, 208, 209, 0, 0, + 0, 210, 0, 196, 197, 198, 199, 200, 528, 201, + 202, 203, 204, 326, 327, 207, 208, 209, 0, 0, + 0, 210, 0, 196, 197, 198, 199, 200, 529, 201, + 202, 203, 204, 326, 327, 207, 208, 209, 0, 0, + 0, 210, 0, 196, 197, 198, 199, 200, 649, 201, + 202, 203, 204, 326, 327, 207, 208, 209, 0, 0, + 0, 210, 0, 196, 197, 198, 199, 200, 835, 201, + 202, 203, 204, 326, 327, 207, 208, 209, 0, 0, + 0, 210, 0, 196, 197, 198, 199, 200, 1041, 201, + 202, 203, 204, 326, 327, 207, 208, 209, 0, 0, + 0, 210, 0, 196, 197, 198, 199, 200, 1042, 201, + 202, 203, 204, 326, 327, 207, 208, 209, 0, 0, + 0, 210, 0, 196, 197, 198, 199, 200, 1043, 201, + 202, 203, 204, 326, 327, 207, 208, 209, 0, 0, + 0, 210, 0, 196, 197, 198, 199, 200, 1058, 201, + 202, 203, 204, 326, 327, 207, 208, 209, 0, 0, + 0, 210, 0, 196, 197, 198, 199, 200, 1059, 201, + 202, 203, 204, 326, 327, 207, 208, 209, 0, 0, + 0, 210, 0, 196, 197, 198, 199, 200, 1081, 201, + 202, 203, 204, 326, 327, 207, 208, 209, 0, 0, + 0, 210, 0, 196, 197, 198, 199, 200, 1164, 201, + 202, 203, 204, 326, 327, 207, 208, 209, 0, 0, + 0, 210, 0, 196, 197, 198, 199, 200, 1259, 201, + 202, 203, 204, 326, 327, 207, 208, 209, 0, 0, + 0, 210, 0, 196, 197, 198, 199, 200, 1273, 201, + 202, 203, 204, 326, 327, 207, 208, 209, 0, 0, + 0, 210, 0, 1260, 0, 0, 0, 0, 1302, 196, + 197, 198, 199, 200, 0, 201, 202, 203, 204, 326, + 327, 207, 208, 209, 0, 0, 0, 210, 196, 197, + 198, 199, 200, 0, 201, 202, 203, 204, 326, 327, + 207, 208, 209, 0, 0, 0, 210, 0, 0, 0, + 410, 328, 196, 197, 198, 199, 200, 0, 201, 202, + 203, 204, 326, 327, 207, 208, 209, 0, 0, 0, + 210, 0, 0, 0, 0, 328, 196, 197, 198, 199, + 200, 0, 201, 202, 203, 204, 326, 327, 207, 208, + 209, 0, 0, 0, 210, 0, 0, 0, 0, 382, + 196, 197, 198, 199, 200, 0, 201, 202, 203, 204, + 326, 327, 207, 208, 209, 0, 0, 0, 210, 0, + 0, 0, 0, 384, 196, 197, 198, 199, 200, 0, + 201, 202, 203, 204, 326, 327, 207, 208, 209, 0, + 0, 0, 210, 0, 0, 0, 0, 385, 196, 197, + 198, 199, 200, 0, 201, 202, 203, 204, 326, 327, + 207, 208, 209, 0, 0, 0, 210, 0, 0, 0, + 0, 387, 196, 197, 198, 199, 200, 0, 201, 202, + 203, 204, 326, 327, 207, 208, 209, 0, 0, 0, + 210, 0, 0, 0, 0, 391, 196, 197, 198, 199, + 200, 0, 201, 202, 203, 204, 326, 327, 207, 208, + 209, 0, 0, 0, 210, 0, 0, 0, 0, 392, + 196, 197, 198, 199, 200, 0, 201, 202, 203, 204, + 326, 327, 207, 208, 209, 0, 0, 0, 210, 0, + 0, 0, 0, 397, 196, 197, 198, 199, 200, 0, + 201, 202, 203, 204, 326, 327, 207, 208, 209, 0, + 0, 0, 210, 0, 0, 0, 0, 432, 196, 197, + 198, 199, 200, 0, 201, 202, 203, 204, 326, 327, + 207, 208, 209, 0, 0, 0, 210, 0, 0, 0, + 0, 435, 196, 197, 198, 199, 200, 0, 201, 202, + 203, 204, 326, 327, 207, 208, 209, 0, 0, 0, + 210, 0, 0, 0, 0, 448, 196, 197, 198, 199, + 200, 0, 201, 202, 203, 204, 326, 327, 207, 208, + 209, 0, 0, 0, 210, 0, 0, 0, 0, 449, + 196, 197, 198, 199, 200, 0, 201, 202, 203, 204, + 326, 327, 207, 208, 209, 0, 0, 0, 210, 0, + 0, 0, 0, 450, 196, 197, 198, 199, 200, 0, + 201, 202, 203, 204, 326, 327, 207, 208, 209, 0, + 0, 0, 210, 0, 0, 0, 0, 451, 196, 197, + 198, 199, 200, 0, 201, 202, 203, 204, 326, 327, + 207, 208, 209, 0, 0, 0, 210, 0, 0, 0, + 0, 452, 196, 197, 198, 199, 200, 0, 201, 202, + 203, 204, 326, 327, 207, 208, 209, 0, 0, 0, + 210, 0, 0, 0, 0, 453, 196, 197, 198, 199, + 200, 0, 201, 202, 203, 204, 326, 327, 207, 208, + 209, 0, 0, 0, 210, 0, 0, 0, 0, 454, + 196, 197, 198, 199, 200, 0, 201, 202, 203, 204, + 326, 327, 207, 208, 209, 0, 0, 0, 210, 0, + 0, 0, 0, 455, 196, 197, 198, 199, 200, 0, + 201, 202, 203, 204, 326, 327, 207, 208, 209, 0, + 0, 0, 210, 0, 0, 0, 0, 456, 196, 197, + 198, 199, 200, 0, 201, 202, 203, 204, 326, 327, + 207, 208, 209, 0, 0, 0, 210, 0, 0, 0, + 0, 457, 196, 197, 198, 199, 200, 0, 201, 202, + 203, 204, 326, 327, 207, 208, 209, 0, 0, 0, + 210, 0, 0, 0, 0, 459, 196, 197, 198, 199, + 200, 0, 201, 202, 203, 204, 326, 327, 207, 208, + 209, 0, 0, 0, 210, 0, 0, 0, 0, 460, + 196, 197, 198, 199, 200, 0, 201, 202, 203, 204, + 326, 327, 207, 208, 209, 0, 0, 0, 210, 0, + 0, 0, 0, 461, 196, 197, 198, 199, 200, 0, + 201, 202, 203, 204, 326, 327, 207, 208, 209, 0, + 0, 0, 210, 0, 0, 0, 0, 462, 196, 197, + 198, 199, 200, 0, 201, 202, 203, 204, 326, 327, + 207, 208, 209, 0, 0, 0, 210, 0, 0, 0, + 0, 463, 196, 197, 198, 199, 200, 0, 201, 202, + 203, 204, 326, 327, 207, 208, 209, 0, 0, 0, + 210, 0, 0, 0, 0, 464, 196, 197, 198, 199, + 200, 0, 201, 202, 203, 204, 326, 327, 207, 208, + 209, 0, 0, 0, 210, 0, 0, 0, 0, 512, + 196, 197, 198, 199, 200, 0, 201, 202, 203, 204, + 326, 327, 207, 208, 209, 0, 0, 0, 210, 0, + 0, 0, 0, 515, 196, 197, 198, 199, 200, 0, + 201, 202, 203, 204, 326, 327, 207, 208, 209, 0, + 0, 0, 210, 0, 0, 0, 0, 525, 196, 197, + 198, 199, 200, 0, 201, 202, 203, 204, 326, 327, + 207, 208, 209, 0, 0, 0, 210, 0, 0, 0, + 0, 526, 196, 197, 198, 199, 200, 0, 201, 202, + 203, 204, 326, 327, 207, 208, 209, 0, 0, 0, + 210, 0, 0, 0, 0, 530, 196, 197, 198, 199, + 200, 0, 201, 202, 203, 204, 326, 327, 207, 208, + 209, 0, 0, 0, 210, 0, 0, 0, 0, 531, + 196, 197, 198, 199, 200, 0, 201, 202, 203, 204, + 326, 327, 207, 208, 209, 0, 0, 0, 210, 0, + 0, 0, 0, 532, 196, 197, 198, 199, 200, 0, + 201, 202, 203, 204, 326, 327, 207, 208, 209, 0, + 0, 0, 210, 0, 0, 0, 0, 533, 196, 197, + 198, 199, 200, 0, 201, 202, 203, 204, 326, 327, + 207, 208, 209, 0, 0, 0, 210, 0, 0, 0, + 0, 534, 196, 197, 198, 199, 200, 0, 201, 202, + 203, 204, 326, 327, 207, 208, 209, 0, 0, 0, + 210, 0, 0, 0, 0, 575, 196, 197, 198, 199, + 200, 0, 201, 202, 203, 204, 326, 327, 207, 208, + 209, 0, 0, 0, 210, 0, 0, 0, 0, 579, + 196, 197, 198, 199, 200, 0, 201, 202, 203, 204, + 326, 327, 207, 208, 209, 0, 0, 0, 210, 0, + 0, 0, 0, 619, 196, 197, 198, 199, 200, 0, + 201, 202, 203, 204, 326, 327, 207, 208, 209, 0, + 0, 0, 210, 0, 0, 0, 0, 679, 196, 197, + 198, 199, 200, 0, 201, 202, 203, 204, 326, 327, + 207, 208, 209, 0, 0, 0, 210, 0, 0, 0, + 0, 680, 196, 197, 198, 199, 200, 0, 201, 202, + 203, 204, 326, 327, 207, 208, 209, 0, 0, 0, + 210, 0, 0, 0, 0, 681, 196, 197, 198, 199, + 200, 0, 201, 202, 203, 204, 326, 327, 207, 208, + 209, 0, 0, 0, 210, 0, 0, 0, 0, 682, + 196, 197, 198, 199, 200, 0, 201, 202, 203, 204, + 326, 327, 207, 208, 209, 0, 0, 0, 210, 0, + 0, 0, 0, 771, 196, 197, 198, 199, 200, 0, + 201, 202, 203, 204, 326, 327, 207, 208, 209, 0, + 0, 0, 210, 0, 0, 0, 0, 836, 196, 197, + 198, 199, 200, 0, 201, 202, 203, 204, 326, 327, + 207, 208, 209, 0, 0, 0, 210, 0, 0, 0, + 0, 881, 196, 197, 198, 199, 200, 0, 201, 202, + 203, 204, 326, 327, 207, 208, 209, 0, 0, 0, + 210, 0, 0, 0, 0, 968, 196, 197, 198, 199, + 200, 0, 201, 202, 203, 204, 326, 327, 207, 208, + 209, 0, 0, 0, 210, 0, 0, 0, 0, 972, + 196, 197, 198, 199, 200, 0, 201, 202, 203, 204, + 326, 327, 207, 208, 209, 0, 0, 0, 210, 0, + 0, 0, 0, 974, 196, 197, 198, 199, 200, 0, + 201, 202, 203, 204, 326, 327, 207, 208, 209, 0, + 0, 0, 210, 0, 0, 0, 0, 1074, 196, 197, + 198, 199, 200, 0, 201, 202, 203, 204, 326, 327, + 207, 208, 209, 0, 0, 0, 210, 0, 0, 0, + 0, 1076, 196, 197, 198, 199, 200, 0, 201, 202, + 203, 204, 326, 327, 207, 208, 209, 0, 0, 0, + 210, 0, 0, 0, 0, 1078, 196, 197, 198, 199, + 200, 0, 201, 202, 203, 204, 326, 327, 207, 208, + 209, 0, 0, 0, 210, 0, 0, 0, 0, 1096, + 196, 197, 198, 199, 200, 0, 201, 202, 203, 204, + 326, 327, 207, 208, 209, 0, 0, 0, 210, 0, + 0, 0, 0, 1097, 196, 197, 198, 199, 200, 0, + 201, 202, 203, 204, 326, 327, 207, 208, 209, 0, + 0, 0, 210, 0, 0, 0, 0, 1098, 196, 197, + 198, 199, 200, 0, 201, 202, 203, 204, 326, 327, + 207, 208, 209, 0, 0, 0, 210, 0, 0, 0, + 0, 1254, 196, 197, 198, 199, 200, 0, 201, 202, + 203, 204, 326, 327, 207, 208, 209, 0, 0, 0, + 210, 0, 0, 0, 0, 1255, 196, 197, 198, 199, + 200, 0, 201, 202, 203, 204, 326, 327, 207, 208, + 209, 0, 0, 0, 210, 0, 0, 0, 0, 1256, + 196, 197, 198, 199, 200, 0, 201, 202, 203, 204, + 326, 327, 207, 208, 209, 0, 0, 0, 210, 0, + 0, 0, 0, 1336, 196, 197, 198, 199, 200, 0, + 201, 202, 203, 204, 326, 327, 207, 208, 209, 0, + 0, 0, 210, 0, 0, 0, 0, 1337, 196, 197, + 198, 199, 200, 0, 201, 202, 203, 204, 326, 327, + 207, 208, 209, 0, 0, 0, 210, 0, 0, 0, + 0, 1338, 196, 197, 198, 199, 200, 0, 201, 202, + 203, 204, 326, 327, 207, 208, 209, 0, 0, 0, + 210, 0, 0, 0, 0, 1384, 196, 197, 198, 199, + 200, 0, 201, 202, 203, 204, 326, 327, 207, 208, + 209, 0, 0, 0, 210, 0, 0, 0, 0, 1385, + 196, 197, 198, 199, 200, 0, 201, 202, 203, 204, + 326, 327, 207, 208, 209, 0, 0, 0, 210, 0, + 0, 0, 0, 1386, 196, 197, 198, 199, 200, 0, + 201, 202, 203, 204, 326, 327, 207, 208, 209, 0, + 0, 0, 210, 0, 0, 0, 410, 196, 197, 198, + 199, 200, 0, 201, 202, 203, 204, 326, 327, 207, + 208, 209, 0, 0, 0, 210, 0, 0, 0, 411, + 196, 197, 198, 199, 200, 0, 201, 202, 203, 204, + 326, 327, 207, 208, 209, 0, 0, 0, 210, 0, + 0, 0, 458, 196, 197, 198, 199, 200, 0, 201, + 202, 203, 204, 326, 327, 207, 208, 209, 0, 0, + 0, 210, 0, 0, 0, 465, 196, 197, 198, 199, + 200, 0, 201, 202, 203, 204, 326, 327, 207, 208, + 209, 0, 0, 0, 210, 0, 0, 0, 466, 196, + 197, 198, 199, 200, 0, 201, 202, 203, 204, 326, + 327, 207, 208, 209, 0, 0, 0, 210, 0, 0, + 0, 467, 196, 197, 198, 199, 200, 0, 201, 202, + 203, 204, 326, 327, 207, 208, 209, 0, 0, 0, + 210, 0, 0, 0, 541, 196, 197, 198, 199, 200, + 0, 201, 202, 203, 204, 326, 327, 207, 208, 209, + 0, 0, 0, 210, 0, 0, 0, 542, 196, 197, + 198, 199, 200, 0, 201, 202, 203, 204, 326, 327, + 207, 208, 209, 0, 0, 0, 210, 0, 0, 0, + 543, 196, 197, 198, 199, 200, 0, 201, 202, 203, + 204, 326, 327, 207, 208, 209, 0, 0, 0, 210, + 0, 0, 0, 647, 196, 197, 198, 199, 200, 0, + 201, 202, 203, 204, 326, 327, 207, 208, 209, 0, + 0, 0, 210, 0, 0, 0, 648, 196, 197, 198, + 199, 200, 0, 201, 202, 203, 204, 326, 327, 207, + 208, 209, 0, 0, 0, 210, 0, 0, 0, 768, + 196, 197, 198, 199, 200, 0, 201, 202, 203, 204, + 326, 327, 207, 208, 209, 0, 0, 0, 210, 0, + 0, 0, 769, 196, 197, 198, 199, 200, 0, 201, + 202, 203, 204, 326, 327, 207, 208, 209, 0, 0, + 0, 210, 0, 0, 0, 788, 196, 197, 198, 199, + 200, 0, 201, 202, 203, 204, 326, 327, 207, 208, + 209, 0, 0, 0, 210, 0, 0, 0, 789, 196, + 197, 198, 199, 200, 0, 201, 202, 203, 204, 326, + 327, 207, 208, 209, 0, 0, 0, 210, 0, 0, + 0, 822, 196, 197, 198, 199, 200, 0, 201, 202, + 203, 204, 326, 327, 207, 208, 209, 0, 0, 0, + 210, 0, 0, 0, 848, 196, 197, 198, 199, 200, + 0, 201, 202, 203, 204, 326, 327, 207, 208, 209, + 0, 0, 0, 210, 0, 0, 0, 849, 196, 197, + 198, 199, 200, 0, 201, 202, 203, 204, 326, 327, + 207, 208, 209, 0, 0, 0, 210, 0, 0, 0, + 850, 196, 197, 198, 199, 200, 0, 201, 202, 203, + 204, 326, 327, 207, 208, 209, 0, 0, 0, 210, + 0, 0, 0, 851, 196, 197, 198, 199, 200, 0, + 201, 202, 203, 204, 326, 327, 207, 208, 209, 0, + 0, 0, 210, 0, 0, 0, 852, 196, 197, 198, + 199, 200, 0, 201, 202, 203, 204, 326, 327, 207, + 208, 209, 0, 0, 0, 210, 0, 0, 0, 853, + 196, 197, 198, 199, 200, 0, 201, 202, 203, 204, + 326, 327, 207, 208, 209, 0, 0, 0, 210, 0, + 0, 0, 854, 196, 197, 198, 199, 200, 0, 201, + 202, 203, 204, 326, 327, 207, 208, 209, 0, 0, + 0, 210, 0, 0, 0, 855, 196, 197, 198, 199, + 200, 0, 201, 202, 203, 204, 326, 327, 207, 208, + 209, 0, 0, 0, 210, 0, 0, 0, 856, 196, + 197, 198, 199, 200, 0, 201, 202, 203, 204, 326, + 327, 207, 208, 209, 0, 0, 0, 210, 0, 0, + 0, 857, 196, 197, 198, 199, 200, 0, 201, 202, + 203, 204, 326, 327, 207, 208, 209, 0, 0, 0, + 210, 0, 0, 0, 858, 196, 197, 198, 199, 200, + 0, 201, 202, 203, 204, 326, 327, 207, 208, 209, + 0, 0, 0, 210, 0, 0, 0, 859, 196, 197, + 198, 199, 200, 0, 201, 202, 203, 204, 326, 327, + 207, 208, 209, 0, 0, 0, 210, 0, 0, 0, + 942, 196, 197, 198, 199, 200, 0, 201, 202, 203, + 204, 326, 327, 207, 208, 209, 0, 0, 0, 210, + 0, 0, 0, 943, 196, 197, 198, 199, 200, 0, + 201, 202, 203, 204, 326, 327, 207, 208, 209, 0, + 0, 0, 210, 0, 0, 0, 962, 196, 197, 198, + 199, 200, 0, 201, 202, 203, 204, 326, 327, 207, + 208, 209, 0, 0, 0, 210, 0, 0, 0, 973, + 196, 197, 198, 199, 200, 0, 201, 202, 203, 204, + 326, 327, 207, 208, 209, 0, 0, 0, 210, 0, + 0, 0, 978, 196, 197, 198, 199, 200, 0, 201, + 202, 203, 204, 326, 327, 207, 208, 209, 0, 0, + 0, 210, 0, 0, 0, 981, 196, 197, 198, 199, + 200, 0, 201, 202, 203, 204, 326, 327, 207, 208, + 209, 0, 0, 0, 210, 0, 0, 0, 983, 196, + 197, 198, 199, 200, 0, 201, 202, 203, 204, 326, + 327, 207, 208, 209, 0, 0, 0, 210, 0, 0, + 0, 994, 196, 197, 198, 199, 200, 0, 201, 202, + 203, 204, 326, 327, 207, 208, 209, 0, 0, 0, + 210, 0, 0, 0, 995, 196, 197, 198, 199, 200, + 0, 201, 202, 203, 204, 326, 327, 207, 208, 209, + 0, 0, 0, 210, 0, 0, 0, 996, 196, 197, + 198, 199, 200, 0, 201, 202, 203, 204, 326, 327, + 207, 208, 209, 0, 0, 0, 210, 0, 0, 0, + 997, 196, 197, 198, 199, 200, 0, 201, 202, 203, + 204, 326, 327, 207, 208, 209, 0, 0, 0, 210, + 0, 0, 0, 998, 196, 197, 198, 199, 200, 0, + 201, 202, 203, 204, 326, 327, 207, 208, 209, 0, + 0, 0, 210, 0, 0, 0, 999, 196, 197, 198, + 199, 200, 0, 201, 202, 203, 204, 326, 327, 207, + 208, 209, 0, 0, 0, 210, 0, 0, 0, 1000, + 196, 197, 198, 199, 200, 0, 201, 202, 203, 204, + 326, 327, 207, 208, 209, 0, 0, 0, 210, 0, + 0, 0, 1001, 196, 197, 198, 199, 200, 0, 201, + 202, 203, 204, 326, 327, 207, 208, 209, 0, 0, + 0, 210, 0, 0, 0, 1002, 196, 197, 198, 199, + 200, 0, 201, 202, 203, 204, 326, 327, 207, 208, + 209, 0, 0, 0, 210, 0, 0, 0, 1003, 196, + 197, 198, 199, 200, 0, 201, 202, 203, 204, 326, + 327, 207, 208, 209, 0, 0, 0, 210, 0, 0, + 0, 1004, 196, 197, 198, 199, 200, 0, 201, 202, + 203, 204, 326, 327, 207, 208, 209, 0, 0, 0, + 210, 0, 0, 0, 1005, 196, 197, 198, 199, 200, + 0, 201, 202, 203, 204, 326, 327, 207, 208, 209, + 0, 0, 0, 210, 0, 0, 0, 1071, 196, 197, + 198, 199, 200, 0, 201, 202, 203, 204, 326, 327, + 207, 208, 209, 0, 0, 0, 210, 0, 0, 0, + 1087, 196, 197, 198, 199, 200, 0, 201, 202, 203, + 204, 326, 327, 207, 208, 209, 0, 0, 0, 210, + 0, 0, 0, 1088, 196, 197, 198, 199, 200, 0, + 201, 202, 203, 204, 326, 327, 207, 208, 209, 0, + 0, 0, 210, 0, 0, 0, 1089, 196, 197, 198, + 199, 200, 0, 201, 202, 203, 204, 326, 327, 207, + 208, 209, 0, 0, 0, 210, 0, 0, 0, 1090, + 196, 197, 198, 199, 200, 0, 201, 202, 203, 204, + 326, 327, 207, 208, 209, 0, 0, 0, 210, 0, + 0, 0, 1091, 196, 197, 198, 199, 200, 0, 201, + 202, 203, 204, 326, 327, 207, 208, 209, 0, 0, + 0, 210, 0, 0, 0, 1092, 196, 197, 198, 199, + 200, 0, 201, 202, 203, 204, 326, 327, 207, 208, + 209, 0, 0, 0, 210, 0, 0, 0, 1093, 196, + 197, 198, 199, 200, 0, 201, 202, 203, 204, 326, + 327, 207, 208, 209, 0, 0, 0, 210, 0, 0, + 0, 1094, 196, 197, 198, 199, 200, 0, 201, 202, + 203, 204, 326, 327, 207, 208, 209, 0, 0, 0, + 210, 0, 0, 0, 1095, 196, 197, 198, 199, 200, + 0, 201, 202, 203, 204, 326, 327, 207, 208, 209, + 0, 0, 0, 210, 0, 0, 0, 1105, 196, 197, + 198, 199, 200, 0, 201, 202, 203, 204, 326, 327, + 207, 208, 209, 0, 0, 0, 210, 0, 0, 0, + 1149, 196, 197, 198, 199, 200, 0, 201, 202, 203, + 204, 326, 327, 207, 208, 209, 0, 0, 0, 210, + 0, 0, 0, 1150, 196, 197, 198, 199, 200, 0, + 201, 202, 203, 204, 326, 327, 207, 208, 209, 0, + 0, 0, 210, 0, 0, 0, 1151, 196, 197, 198, + 199, 200, 0, 201, 202, 203, 204, 326, 327, 207, + 208, 209, 0, 0, 0, 210, 0, 0, 0, 1152, + 196, 197, 198, 199, 200, 0, 201, 202, 203, 204, + 326, 327, 207, 208, 209, 0, 0, 0, 210, 0, + 0, 0, 1153, 196, 197, 198, 199, 200, 0, 201, + 202, 203, 204, 326, 327, 207, 208, 209, 0, 0, + 0, 210, 0, 0, 0, 1154, 196, 197, 198, 199, + 200, 0, 201, 202, 203, 204, 326, 327, 207, 208, + 209, 0, 0, 0, 210, 0, 0, 0, 1155, 196, + 197, 198, 199, 200, 0, 201, 202, 203, 204, 326, + 327, 207, 208, 209, 0, 0, 0, 210, 0, 0, + 0, 1156, 196, 197, 198, 199, 200, 0, 201, 202, + 203, 204, 326, 327, 207, 208, 209, 0, 0, 0, + 210, 0, 0, 0, 1157, 196, 197, 198, 199, 200, + 0, 201, 202, 203, 204, 326, 327, 207, 208, 209, + 0, 0, 0, 210, 0, 0, 0, 1165, 196, 197, + 198, 199, 200, 0, 201, 202, 203, 204, 326, 327, + 207, 208, 209, 0, 0, 0, 210, 0, 0, 0, + 1201, 196, 197, 198, 199, 200, 0, 201, 202, 203, + 204, 326, 327, 207, 208, 209, 0, 0, 0, 210, + 0, 0, 0, 1202, 196, 197, 198, 199, 200, 0, + 201, 202, 203, 204, 326, 327, 207, 208, 209, 0, + 0, 0, 210, 0, 0, 0, 1203, 196, 197, 198, + 199, 200, 0, 201, 202, 203, 204, 326, 327, 207, + 208, 209, 0, 0, 0, 210, 0, 0, 0, 1204, + 196, 197, 198, 199, 200, 0, 201, 202, 203, 204, + 326, 327, 207, 208, 209, 0, 0, 0, 210, 0, + 0, 0, 1205, 196, 197, 198, 199, 200, 0, 201, + 202, 203, 204, 326, 327, 207, 208, 209, 0, 0, + 0, 210, 0, 0, 0, 1206, 196, 197, 198, 199, + 200, 0, 201, 202, 203, 204, 326, 327, 207, 208, + 209, 0, 0, 0, 210, 0, 0, 0, 1207, 196, + 197, 198, 199, 200, 0, 201, 202, 203, 204, 326, + 327, 207, 208, 209, 0, 0, 0, 210, 0, 0, + 0, 1208, 196, 197, 198, 199, 200, 0, 201, 202, + 203, 204, 326, 327, 207, 208, 209, 0, 0, 0, + 210, 0, 0, 0, 1209, 196, 197, 198, 199, 200, + 0, 201, 202, 203, 204, 326, 327, 207, 208, 209, + 0, 0, 0, 210, 0, 0, 0, 1243, 196, 197, + 198, 199, 200, 0, 201, 202, 203, 204, 326, 327, + 207, 208, 209, 0, 0, 0, 210, 0, 0, 0, + 1248, 196, 197, 198, 199, 200, 0, 201, 202, 203, + 204, 326, 327, 207, 208, 209, 0, 0, 0, 210, + 0, 0, 0, 1249, 196, 197, 198, 199, 200, 0, + 201, 202, 203, 204, 326, 327, 207, 208, 209, 0, + 0, 0, 210, 0, 0, 0, 1250, 196, 197, 198, + 199, 200, 0, 201, 202, 203, 204, 326, 327, 207, + 208, 209, 0, 0, 0, 210, 0, 0, 0, 1251, + 196, 197, 198, 199, 200, 0, 201, 202, 203, 204, + 326, 327, 207, 208, 209, 0, 0, 0, 210, 0, + 0, 0, 1252, 196, 197, 198, 199, 200, 0, 201, + 202, 203, 204, 326, 327, 207, 208, 209, 0, 0, + 0, 210, 0, 0, 0, 1253, 196, 197, 198, 199, + 200, 0, 201, 202, 203, 204, 326, 327, 207, 208, + 209, 0, 0, 0, 210, 0, 0, 0, 1272, 196, + 197, 198, 199, 200, 0, 201, 202, 203, 204, 326, + 327, 207, 208, 209, 0, 0, 0, 210, 0, 0, + 0, 1277, 196, 197, 198, 199, 200, 0, 201, 202, + 203, 204, 326, 327, 207, 208, 209, 0, 0, 0, + 210, 0, 0, 0, 1278, 196, 197, 198, 199, 200, + 0, 201, 202, 203, 204, 326, 327, 207, 208, 209, + 0, 0, 0, 210, 0, 0, 0, 1279, 196, 197, + 198, 199, 200, 0, 201, 202, 203, 204, 326, 327, + 207, 208, 209, 0, 0, 0, 210, 0, 0, 0, + 1280, 196, 197, 198, 199, 200, 0, 201, 202, 203, + 204, 326, 327, 207, 208, 209, 0, 0, 0, 210, + 0, 0, 0, 1281, 196, 197, 198, 199, 200, 0, + 201, 202, 203, 204, 326, 327, 207, 208, 209, 0, + 0, 0, 210, 0, 0, 0, 1282, 196, 197, 198, + 199, 200, 0, 201, 202, 203, 204, 326, 327, 207, + 208, 209, 0, 0, 0, 210, 0, 0, 0, 1305, + 196, 197, 198, 199, 200, 0, 201, 202, 203, 204, + 326, 327, 207, 208, 209, 0, 0, 0, 210, 0, + 0, 0, 1306, 196, 197, 198, 199, 200, 0, 201, + 202, 203, 204, 326, 327, 207, 208, 209, 0, 0, + 0, 210, 0, 0, 0, 1307, 196, 197, 198, 199, + 200, 0, 201, 202, 203, 204, 326, 327, 207, 208, + 209, 0, 0, 0, 210, 0, 0, 0, 1308, 196, + 197, 198, 199, 200, 0, 201, 202, 203, 204, 326, + 327, 207, 208, 209, 0, 0, 0, 210, 0, 0, + 0, 1309, 196, 197, 198, 199, 200, 0, 201, 202, + 203, 204, 326, 327, 207, 208, 209, 0, 0, 0, + 210, 0, 0, 0, 1310, 196, 197, 198, 199, 200, + 0, 201, 202, 203, 204, 326, 327, 207, 208, 209, + 0, 0, 0, 210, 0, 0, 0, 1333, 196, 197, + 198, 199, 200, 0, 201, 202, 203, 204, 326, 327, + 207, 208, 209, 0, 0, 0, 210, 0, 0, 0, + 1334, 196, 197, 198, 199, 200, 0, 201, 202, 203, + 204, 326, 327, 207, 208, 209, 0, 0, 0, 210, + 0, 0, 0, 1335, 196, 197, 198, 199, 200, 0, + 201, 202, 203, 204, 326, 327, 207, 208, 209, 0, + 0, 0, 210, 0, 0, 0, 1347, 196, 197, 198, + 199, 200, 0, 201, 202, 203, 204, 326, 327, 207, + 208, 209, 0, 0, 0, 210, 0, 0, 0, 1348, + 196, 197, 198, 199, 200, 0, 201, 202, 203, 204, + 326, 327, 207, 208, 209, 0, 0, 0, 210, 0, + 0, 0, 1349, 196, 197, 198, 199, 200, 0, 201, + 202, 203, 204, 326, 327, 207, 208, 209, 0, 0, + 0, 210, 0, 0, 0, 1364, 196, 197, 198, 199, + 200, 0, 201, 202, 203, 204, 326, 327, 207, 208, + 209, 0, 0, 0, 210, 0, 0, 0, 1365, 196, + 197, 198, 199, 200, 0, 201, 202, 203, 204, 326, + 327, 207, 208, 209, 0, 0, 0, 210, 0, 0, + 0, 1366, 196, 197, 198, 199, 200, 0, 201, 202, + 203, 204, 326, 327, 207, 208, 209, 0, 0, 0, + 210 }; static const short yycheck[] = { 7, - 257, 109, 896, 34, 63, 81, 6, 833, 144, 30, - 59, 766, 33, 34, 57, 36, 65, 4, 4, 4, - 775, 57, 926, 6, 7, 59, 930, 782, 4, 6, - 934, 65, 4, 6, 938, 6, 6, 59, 3, 4, - 4, 41, 41, 65, 9, 10, 11, 12, 13, 14, - 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 91, 92, 93, 94, 95, - 30, 7, 142, 33, 34, 145, 6, 147, 33, 34, - 6, 36, 158, 153, 154, 159, 160, 157, 96, 97, - 98, 99, 153, 154, 998, 6, 157, 84, 84, 84, - 158, 6, 161, 161, 112, 113, 114, 115, 116, 6, - 118, 119, 84, 121, 122, 123, 942, 125, 161, 158, - 84, 158, 158, 158, 161, 161, 6, 158, 162, 30, - 138, 139, 33, 6, 159, 158, 162, 162, 137, 159, - 162, 159, 162, 142, 162, 6, 154, 7, 156, 46, - 158, 158, 158, 158, 161, 163, 164, 165, 166, 167, - 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, - 178, 179, 180, 181, 182, 162, 162, 162, 186, 187, - 188, 189, 190, 191, 161, 161, 151, 152, 943, 6, - 162, 161, 947, 158, 3, 4, 48, 49, 162, 164, - 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, - 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 159, 6, 231, 162, 159, 234, 158, 162, 1123, - 238, 8, 159, 160, 242, 243, 244, 6, 246, 247, - 248, 249, 250, 251, 252, 51, 52, 53, 54, 158, - 56, 259, 260, 261, 151, 152, 153, 154, 6, 159, - 157, 34, 162, 159, 272, 159, 162, 266, 162, 158, - 278, 151, 152, 153, 154, 38, 34, 157, 151, 152, - 153, 154, 6, 159, 157, 5, 162, 3, 4, 5, - 34, 299, 300, 9, 10, 11, 12, 13, 14, 15, + 112, 6, 35, 862, 283, 62, 6, 80, 6, 56, + 6, 56, 6, 928, 58, 58, 4, 4, 4, 4, + 64, 64, 6, 165, 168, 157, 158, 171, 165, 171, + 41, 42, 0, 1, 171, 3, 795, 169, 157, 158, + 172, 6, 30, 30, 5, 804, 157, 158, 42, 169, + 169, 138, 811, 172, 174, 3, 4, 168, 166, 167, + 171, 9, 10, 11, 12, 13, 14, 15, 16, 17, + 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, + 28, 29, 157, 158, 7, 157, 158, 7, 157, 158, + 98, 99, 100, 101, 102, 168, 171, 83, 31, 171, + 58, 34, 171, 962, 157, 158, 64, 115, 6, 7, + 118, 119, 120, 121, 171, 123, 124, 170, 126, 127, + 128, 168, 130, 6, 171, 6, 171, 169, 172, 172, + 172, 142, 6, 144, 6, 168, 6, 145, 146, 150, + 108, 109, 110, 111, 112, 113, 114, 115, 169, 170, + 157, 158, 157, 158, 162, 168, 164, 6, 166, 157, + 158, 157, 158, 170, 172, 173, 174, 175, 176, 177, + 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, + 188, 189, 190, 191, 172, 172, 171, 171, 196, 197, + 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, + 208, 209, 210, 211, 963, 1120, 171, 168, 967, 157, + 158, 31, 6, 168, 34, 35, 164, 37, 157, 158, + 168, 48, 49, 143, 144, 145, 146, 175, 150, 151, + 169, 153, 154, 155, 156, 157, 158, 159, 160, 161, + 168, 34, 35, 165, 37, 253, 166, 167, 256, 159, + 160, 161, 260, 47, 7, 165, 264, 265, 266, 168, + 268, 269, 270, 271, 272, 273, 274, 168, 168, 280, + 281, 171, 6, 157, 158, 157, 158, 285, 286, 287, + 168, 292, 157, 158, 39, 169, 35, 169, 172, 31, + 298, 168, 34, 35, 169, 168, 304, 65, 66, 67, + 68, 69, 70, 71, 72, 73, 74, 75, 76, 1068, + 1069, 1070, 1071, 157, 158, 37, 1075, 35, 326, 327, + 3, 4, 169, 170, 35, 169, 9, 10, 11, 12, + 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 50, 51, 52, + 53, 5, 55, 147, 148, 149, 150, 151, 171, 153, + 154, 155, 156, 157, 158, 159, 160, 161, 157, 158, + 171, 165, 171, 381, 157, 158, 35, 6, 5, 171, + 169, 1140, 1141, 171, 169, 1144, 169, 172, 396, 169, + 171, 169, 172, 401, 172, 6, 169, 169, 409, 172, + 172, 168, 410, 411, 172, 93, 94, 95, 96, 97, + 168, 419, 5, 147, 148, 149, 150, 151, 426, 153, + 154, 155, 156, 157, 158, 159, 160, 161, 35, 169, + 174, 165, 172, 441, 169, 154, 1195, 172, 157, 169, + 168, 6, 172, 157, 158, 159, 160, 161, 5, 169, + 458, 165, 172, 169, 6, 168, 172, 465, 466, 467, + 169, 168, 470, 172, 147, 148, 149, 150, 151, 748, + 153, 154, 155, 156, 157, 158, 159, 160, 161, 5, + 169, 164, 165, 172, 168, 168, 168, 1246, 171, 169, + 168, 168, 172, 168, 168, 168, 168, 508, 0, 1, + 168, 3, 168, 168, 168, 168, 618, 168, 168, 171, + 168, 519, 520, 168, 171, 168, 168, 1276, 168, 168, + 168, 6, 168, 168, 171, 168, 168, 3, 4, 5, + 541, 542, 543, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, - 26, 27, 28, 29, 6, 142, 1071, 1072, 1073, 1074, - 161, 36, 161, 1078, 151, 152, 153, 154, 159, 159, - 157, 162, 162, 161, 151, 152, 153, 154, 159, 34, - 157, 162, 151, 152, 153, 154, 161, 6, 157, 158, - 358, 159, 161, 5, 162, 363, 6, 99, 100, 101, - 102, 103, 158, 6, 372, 373, 161, 151, 152, 153, - 154, 379, 371, 157, 151, 152, 153, 154, 386, 6, - 157, 6, 151, 152, 153, 154, 158, 5, 157, 1144, - 1145, 5, 34, 1148, 124, 403, 5, 159, 159, 129, - 162, 162, 158, 151, 152, 153, 154, 415, 159, 157, - 159, 162, 158, 162, 422, 423, 424, 146, 148, 158, - 149, 158, 152, 153, 158, 158, 158, 151, 152, 153, - 154, 158, 158, 157, 6, 151, 152, 151, 152, 153, - 154, 158, 158, 157, 1199, 161, 0, 1, 158, 3, - 707, 165, 158, 158, 0, 1, 158, 3, 158, 151, - 152, 153, 154, 161, 463, 157, 474, 475, 576, 3, - 4, 5, 158, 158, 158, 9, 10, 11, 12, 13, - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, - 24, 25, 26, 27, 28, 29, 1251, 496, 497, 498, - 158, 151, 152, 153, 154, 158, 161, 157, 151, 152, - 153, 154, 158, 158, 157, 6, 6, 158, 526, 527, - 158, 529, 158, 158, 151, 152, 153, 154, 1283, 142, - 157, 161, 145, 161, 147, 158, 158, 545, 546, 158, - 153, 154, 158, 142, 157, 5, 161, 132, 547, 161, - 161, 161, 151, 152, 153, 154, 158, 556, 157, 157, - 114, 115, 116, 117, 118, 119, 120, 121, 114, 115, - 116, 117, 118, 119, 120, 121, 158, 585, 151, 152, - 153, 154, 590, 158, 157, 159, 140, 141, 158, 143, - 163, 158, 158, 158, 158, 603, 604, 605, 158, 158, - 158, 158, 158, 158, 612, 613, 614, 615, 616, 617, - 618, 619, 620, 621, 622, 623, 1371, 151, 152, 151, - 152, 153, 154, 158, 158, 157, 159, 161, 160, 637, - 638, 888, 3, 4, 5, 643, 158, 158, 9, 10, - 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, - 21, 22, 23, 24, 25, 26, 27, 28, 29, 151, - 152, 153, 154, 158, 158, 157, 7, 30, 31, 32, - 33, 34, 35, 36, 37, 158, 39, 158, 41, 42, - 788, 44, 45, 158, 683, 158, 158, 695, 696, 158, - 151, 152, 153, 154, 158, 158, 157, 7, 145, 160, - 158, 64, 163, 158, 151, 152, 153, 154, 158, 708, - 157, 710, 158, 712, 159, 78, 79, 160, 159, 727, - 728, 151, 152, 153, 154, 7, 7, 157, 82, 159, - 5, 5, 162, 5, 5, 465, 466, 5, 468, 5, - 5, 5, 472, 473, 151, 152, 153, 154, 5, 757, - 157, 759, 159, 5, 5, 162, 151, 152, 153, 154, - 5, 769, 157, 5, 159, 5, 5, 162, 776, 777, - 778, 151, 152, 153, 154, 783, 139, 157, 5, 787, - 151, 152, 162, 5, 792, 793, 5, 158, 5, 5, - 161, 151, 152, 153, 154, 5, 5, 157, 528, 162, - 808, 531, 162, 5, 5, 5, 5, 5, 3, 5, - 7, 819, 820, 821, 822, 823, 824, 825, 826, 827, - 828, 829, 830, 553, 554, 6, 5, 5, 162, 559, - 560, 839, 6, 841, 6, 843, 566, 845, 568, 847, - 839, 7, 841, 851, 843, 7, 845, 7, 847, 6, - 580, 7, 582, 151, 152, 153, 154, 7, 7, 157, - 162, 591, 592, 593, 162, 161, 596, 597, 598, 599, - 600, 601, 602, 151, 152, 153, 154, 161, 161, 157, - 7, 159, 160, 891, 892, 893, 66, 67, 68, 69, - 70, 71, 72, 73, 74, 75, 76, 77, 158, 7, - 161, 159, 910, 911, 159, 161, 3, 4, 5, 917, - 146, 919, 9, 10, 11, 12, 13, 14, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 151, 152, 153, 154, 945, 161, 157, - 151, 152, 153, 154, 162, 953, 157, 161, 161, 5, - 958, 162, 159, 961, 159, 159, 159, 965, 0, 1, - 7, 7, 4, 7, 7, 159, 974, 975, 976, 977, - 978, 979, 980, 981, 982, 983, 984, 985, 151, 152, - 153, 154, 162, 159, 157, 160, 3, 160, 30, 31, - 32, 33, 34, 35, 36, 37, 159, 39, 40, 41, - 42, 43, 44, 45, 734, 159, 159, 1015, 159, 51, - 52, 53, 54, 55, 56, 159, 58, 59, 60, 61, - 62, 159, 64, 159, 159, 159, 756, 159, 147, 159, - 760, 159, 151, 152, 153, 154, 78, 79, 157, 159, - 161, 159, 159, 85, 86, 87, 159, 89, 90, 779, - 159, 7, 159, 95, 151, 152, 159, 151, 152, 153, - 154, 158, 1070, 157, 161, 159, 66, 67, 68, 69, - 70, 71, 72, 73, 74, 75, 76, 77, 159, 159, - 159, 159, 1090, 1091, 1092, 1093, 1094, 1095, 1096, 1097, - 1098, 7, 151, 152, 153, 154, 7, 139, 157, 1107, - 159, 1109, 7, 3, 4, 5, 7, 159, 7, 9, + 26, 27, 28, 29, 168, 171, 171, 6, 171, 168, + 4, 165, 168, 571, 572, 168, 574, 6, 168, 153, + 154, 155, 156, 157, 158, 159, 160, 161, 589, 587, + 588, 165, 147, 148, 149, 150, 151, 598, 153, 154, + 155, 156, 157, 158, 159, 160, 161, 168, 168, 168, + 165, 168, 168, 6, 1363, 168, 108, 109, 110, 111, + 112, 113, 114, 115, 168, 168, 5, 168, 168, 168, + 628, 168, 168, 168, 168, 633, 168, 168, 168, 168, + 168, 168, 134, 135, 168, 137, 168, 168, 646, 647, + 648, 920, 169, 168, 168, 168, 7, 655, 656, 657, + 658, 659, 660, 661, 662, 663, 664, 665, 666, 170, + 169, 169, 7, 7, 7, 81, 5, 5, 5, 677, + 678, 5, 5, 5, 5, 683, 5, 5, 5, 5, + 5, 157, 158, 5, 5, 5, 5, 5, 164, 5, + 5, 5, 168, 5, 5, 171, 5, 126, 5, 5, + 5, 5, 3, 5, 7, 817, 5, 5, 147, 148, + 149, 150, 151, 724, 153, 154, 155, 156, 157, 158, + 159, 160, 161, 6, 6, 6, 165, 7, 736, 737, + 7, 7, 6, 171, 7, 7, 7, 172, 749, 172, + 751, 171, 753, 7, 147, 148, 149, 150, 151, 168, + 153, 154, 155, 156, 157, 158, 159, 160, 161, 7, + 768, 769, 165, 174, 168, 776, 140, 169, 776, 777, + 778, 779, 780, 169, 169, 169, 169, 169, 786, 169, + 788, 169, 169, 169, 169, 169, 169, 169, 169, 169, + 798, 169, 169, 169, 169, 6, 169, 805, 806, 807, + 169, 169, 169, 169, 812, 169, 169, 169, 816, 169, + 169, 5, 170, 821, 822, 65, 66, 67, 68, 69, + 70, 71, 72, 73, 74, 75, 76, 169, 7, 837, + 7, 171, 7, 7, 7, 7, 7, 7, 7, 7, + 848, 849, 850, 851, 852, 853, 854, 855, 856, 857, + 858, 859, 7, 7, 6, 168, 7, 7, 168, 870, + 168, 869, 870, 871, 5, 3, 136, 6, 168, 3, + 3, 4, 168, 168, 168, 883, 9, 10, 11, 12, + 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 3, 6, 168, + 168, 129, 168, 168, 159, 168, 134, 3, 3, 3, + 3, 3, 3, 3, 3, 923, 924, 925, 3, 6, + 3, 3, 172, 3, 5, 3, 171, 6, 156, 6, + 6, 6, 160, 161, 942, 943, 147, 148, 149, 150, + 151, 949, 153, 154, 155, 156, 157, 158, 159, 160, + 161, 6, 6, 6, 165, 82, 174, 965, 170, 169, + 169, 169, 6, 170, 169, 973, 170, 169, 169, 169, + 978, 170, 170, 981, 169, 6, 169, 985, 169, 6, + 169, 169, 169, 6, 170, 169, 994, 995, 996, 997, + 998, 999, 1000, 1001, 1002, 1003, 1004, 1005, 6, 6, + 6, 6, 169, 169, 169, 1013, 169, 1015, 147, 148, + 149, 150, 151, 170, 153, 154, 155, 156, 157, 158, + 159, 160, 161, 169, 157, 158, 165, 169, 6, 6, + 6, 164, 6, 6, 6, 168, 6, 6, 171, 147, + 148, 149, 150, 151, 7, 153, 154, 155, 156, 157, + 158, 159, 160, 161, 82, 6, 6, 165, 4, 1067, + 147, 148, 149, 150, 151, 3, 153, 154, 155, 156, + 157, 158, 159, 160, 161, 6, 3, 6, 165, 1087, + 1088, 1089, 1090, 1091, 1092, 1093, 1094, 1095, 6, 159, + 6, 6, 3, 3, 4, 3, 1104, 1105, 1106, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - 151, 152, 153, 154, 7, 7, 157, 6, 158, 158, - 158, 162, 158, 158, 158, 1153, 1154, 1155, 1156, 1157, - 1158, 1159, 1160, 1161, 1162, 1163, 1164, 158, 7, 1167, - 1168, 1169, 162, 151, 152, 153, 154, 158, 158, 157, - 151, 152, 153, 154, 162, 158, 157, 7, 158, 158, - 142, 162, 3, 913, 3, 153, 916, 1195, 3, 3, - 1198, 3, 3, 3, 3, 3, 3, 1205, 1206, 1207, - 1208, 1209, 1210, 1211, 1212, 1213, 1214, 3, 1216, 3, - 1218, 151, 152, 153, 154, 1223, 1224, 157, 151, 152, - 153, 154, 162, 3, 157, 955, 161, 5, 5, 162, - 3, 151, 152, 153, 154, 3, 6, 157, 1246, 1247, - 6, 971, 162, 6, 6, 1253, 1254, 1255, 1256, 1257, - 1258, 151, 152, 6, 6, 6, 1264, 83, 158, 6, - 6, 161, 151, 152, 153, 154, 159, 159, 157, 160, - 1278, 6, 160, 162, 159, 159, 1284, 1285, 1286, 1287, - 1288, 1289, 1290, 1291, 1292, 160, 160, 6, 30, 31, - 32, 33, 34, 35, 36, 37, 159, 39, 159, 41, - 42, 160, 44, 45, 159, 1313, 1314, 1315, 1316, 1317, - 1318, 1319, 160, 1321, 160, 1323, 159, 151, 152, 153, - 154, 159, 64, 157, 159, 6, 159, 159, 162, 160, - 1060, 1061, 159, 1341, 1342, 1343, 78, 79, 151, 152, - 153, 154, 159, 159, 157, 6, 159, 1355, 1356, 1357, - 1358, 1359, 1360, 159, 151, 152, 153, 154, 159, 1089, - 157, 159, 6, 160, 1372, 1373, 1374, 1375, 160, 1377, - 159, 1379, 151, 152, 153, 154, 159, 6, 157, 151, - 152, 153, 154, 162, 6, 157, 6, 6, 6, 6, - 162, 1399, 1400, 1401, 6, 6, 83, 139, 7, 7, - 1408, 7, 1410, 3, 1412, 7, 7, 1137, 151, 152, - 153, 154, 7, 3, 157, 6, 153, 3, 4, 162, - 162, 6, 1152, 9, 10, 11, 12, 13, 14, 15, + 147, 148, 149, 150, 151, 6, 153, 154, 155, 156, + 157, 158, 159, 160, 161, 6, 6, 3, 165, 6, + 3, 1149, 1150, 1151, 1152, 1153, 1154, 1155, 1156, 1157, + 1158, 1159, 1160, 3, 3, 4, 3, 1165, 1166, 171, + 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, + 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, + 29, 6, 172, 171, 1192, 79, 1194, 6, 170, 7, + 6, 170, 6, 1201, 1202, 1203, 1204, 1205, 1206, 1207, + 1208, 1209, 1210, 169, 1212, 169, 1214, 169, 169, 169, + 1218, 170, 1220, 170, 169, 171, 170, 170, 147, 148, + 149, 150, 151, 170, 153, 154, 155, 156, 157, 158, + 159, 160, 161, 169, 1242, 1243, 165, 169, 82, 6, + 1248, 1249, 1250, 1251, 1252, 1253, 3, 157, 158, 3, + 6, 6, 172, 6, 164, 6, 6, 6, 168, 6, + 6, 171, 3, 6, 1272, 5, 5, 171, 6, 1277, + 1278, 1279, 1280, 1281, 1282, 1283, 1284, 1285, 169, 174, + 6, 169, 510, 511, 169, 513, 169, 6, 170, 517, + 518, 170, 169, 6, 170, 169, 169, 1305, 1306, 1307, + 1308, 1309, 1310, 1311, 169, 1313, 6, 1315, 157, 158, + 6, 83, 6, 6, 6, 164, 6, 6, 6, 168, + 5, 5, 174, 169, 172, 1333, 1334, 1335, 169, 169, + 4, 170, 170, 6, 169, 169, 169, 169, 6, 1347, + 1348, 1349, 1350, 1351, 1352, 573, 79, 171, 576, 171, + 171, 6, 5, 5, 8, 6, 1364, 1365, 1366, 1367, + 172, 1369, 171, 1371, 169, 169, 172, 595, 596, 170, + 170, 79, 6, 601, 602, 8, 172, 6, 6, 6, + 608, 6, 610, 1391, 1392, 1393, 6, 6, 171, 169, + 169, 169, 1400, 169, 1402, 623, 1404, 625, 142, 6, + 171, 171, 171, 169, 6, 170, 634, 635, 636, 6, + 6, 639, 640, 641, 642, 643, 644, 645, 6, 6, + 3, 4, 6, 171, 169, 6, 9, 10, 11, 12, + 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 3, 4, 169, + 171, 169, 6, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, - 26, 27, 28, 29, 151, 152, 153, 154, 6, 6, - 157, 151, 152, 153, 154, 162, 3, 157, 151, 152, - 153, 154, 162, 6, 157, 3, 4, 160, 3, 6, - 1200, 9, 10, 11, 12, 13, 14, 15, 16, 17, - 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 3, 4, 6, 3, 6, 3, 9, 10, - 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, - 21, 22, 23, 24, 25, 26, 27, 28, 29, 3, - 4, 3, 1252, 3, 161, 9, 10, 11, 12, 13, - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, - 24, 25, 26, 27, 28, 29, 6, 151, 152, 153, - 154, 6, 1282, 157, 159, 162, 160, 80, 151, 152, - 153, 154, 159, 159, 157, 151, 152, 160, 151, 152, - 153, 154, 158, 161, 157, 161, 6, 160, 6, 161, - 161, 1311, 161, 30, 31, 32, 33, 34, 35, 36, - 37, 161, 39, 161, 41, 42, 160, 44, 45, 151, - 152, 153, 154, 159, 159, 157, 33, 160, 160, 159, - 1340, 159, 161, 151, 152, 153, 154, 64, 159, 157, - 158, 160, 83, 159, 1354, 6, 160, 151, 152, 153, - 154, 78, 79, 157, 160, 160, 160, 159, 6, 160, - 151, 152, 151, 152, 153, 154, 159, 158, 157, 4, - 6, 160, 151, 152, 153, 154, 6, 5, 157, 6, - 6, 160, 6, 6, 6, 6, 6, 151, 152, 96, - 97, 98, 3, 6, 158, 3, 6, 104, 105, 106, - 107, 108, 109, 110, 111, 112, 113, 162, 6, 6, - 6, 6, 139, 6, 6, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 3, 133, 134, 135, 136, - 137, 138, 151, 152, 153, 154, 6, 5, 157, 6, - 161, 160, 151, 152, 153, 154, 159, 7, 157, 160, - 162, 160, 151, 152, 153, 154, 162, 162, 157, 162, - 162, 160, 151, 152, 153, 154, 159, 159, 157, 159, - 6, 160, 151, 152, 153, 154, 160, 159, 157, 160, - 6, 160, 151, 152, 153, 154, 159, 159, 157, 159, - 6, 160, 151, 152, 153, 154, 6, 5, 157, 6, - 6, 160, 151, 152, 153, 154, 6, 5, 157, 6, - 6, 160, 151, 152, 153, 154, 6, 159, 157, 162, - 6, 160, 151, 152, 153, 154, 6, 159, 157, 160, - 80, 160, 151, 152, 153, 154, 161, 5, 157, 6, - 6, 160, 151, 152, 153, 154, 160, 159, 157, 5, - 80, 160, 151, 152, 153, 154, 159, 159, 157, 159, - 161, 160, 151, 152, 153, 154, 6, 161, 157, 159, - 161, 160, 151, 152, 153, 154, 159, 162, 157, 159, - 162, 160, 151, 152, 153, 154, 159, 162, 157, 160, - 6, 160, 151, 152, 153, 154, 160, 159, 157, 6, - 6, 160, 151, 152, 153, 154, 6, 161, 157, 6, - 6, 160, 151, 152, 153, 154, 6, 159, 157, 6, - 148, 160, 151, 152, 153, 154, 159, 159, 157, 6, - 161, 160, 151, 152, 153, 154, 161, 161, 157, 159, - 6, 160, 151, 152, 153, 154, 160, 159, 157, 6, - 6, 160, 151, 152, 153, 154, 6, 159, 157, 6, - 161, 160, 151, 152, 153, 154, 161, 161, 157, 6, - 6, 160, 151, 152, 153, 154, 159, 161, 157, 6, - 6, 160, 151, 152, 153, 154, 160, 0, 157, 161, - 161, 160, 151, 152, 153, 154, 6, 0, 157, 6, - 6, 160, 151, 152, 153, 154, 500, 1088, 157, 6, - 6, 160, 151, 152, 153, 154, 6, 475, 157, 732, - -1, 160, 151, 152, 153, 154, -1, -1, 157, -1, - -1, 160, 151, 152, 153, 154, -1, -1, 157, -1, - -1, 160, 151, 152, 153, 154, -1, -1, 157, -1, - -1, 160, 151, 152, 153, 154, -1, -1, 157, -1, - -1, 160, 151, 152, 153, 154, -1, -1, 157, -1, - -1, 160, 151, 152, 153, 154, -1, -1, 157, -1, - -1, 160, 151, 152, 153, 154, -1, -1, 157, -1, - -1, 160, 151, 152, 153, 154, -1, -1, 157, -1, - -1, 160, 151, 152, 153, 154, -1, -1, 157, -1, - -1, 160, 151, 152, 153, 154, -1, -1, 157, -1, - -1, 160, 151, 152, 153, 154, -1, -1, 157, -1, - -1, 160, 151, 152, 153, 154, -1, -1, 157, -1, - -1, 160, 151, 152, 153, 154, -1, -1, 157, -1, - -1, 160, 151, 152, 153, 154, -1, -1, 157, -1, - -1, 160, 151, 152, 153, 154, -1, -1, 157, -1, - -1, 160, 151, 152, 153, 154, -1, -1, 157, -1, - -1, 160, 151, 152, 153, 154, -1, -1, 157, -1, - -1, 160, 151, 152, 153, 154, -1, -1, 157, -1, - -1, 160, 151, 152, 153, 154, -1, -1, 157, -1, - -1, 160, 151, 152, 153, 154, -1, -1, 157, -1, - -1, 160, 151, 152, 153, 154, -1, -1, 157, -1, - -1, 160, 151, 152, 153, 154, -1, -1, 157, -1, - -1, 160, 151, 152, 153, 154, -1, -1, 157, -1, - 159, 151, 152, 153, 154, -1, -1, 157, -1, 159, - 151, 152, 153, 154, -1, -1, 157, -1, 159, 151, - 152, 153, 154, -1, -1, 157, -1, 159, 151, 152, - 153, 154, -1, -1, 157, -1, 159, 151, 152, 153, - 154, -1, -1, 157, -1, 159, 151, 152, 153, 154, - -1, -1, 157, -1, 159, 151, 152, 153, 154, -1, - -1, 157, -1, 159, 151, 152, 153, 154, -1, -1, - 157, -1, 159, 151, 152, 153, 154, -1, -1, 157, - -1, 159, 151, 152, 153, 154, -1, -1, 157, -1, - 159, 151, 152, 153, 154, -1, -1, 157, -1, 159, - 151, 152, 153, 154, -1, -1, 157, -1, 159, 151, - 152, 153, 154, -1, -1, 157, -1, 159, 151, 152, - 153, 154, -1, -1, 157, -1, 159, 151, 152, 153, - 154, -1, -1, 157, -1, 159, 151, 152, 153, 154, - -1, -1, 157, -1, 159, 151, 152, 153, 154, -1, - -1, 157, -1, 159, 151, 152, 153, 154, -1, -1, - 157, -1, 159, 151, 152, 153, 154, -1, -1, 157, - -1, 159, 151, 152, 153, 154, -1, -1, 157, -1, - 159, 151, 152, 153, 154, -1, -1, 157, -1, 159, - 151, 152, 153, 154, -1, -1, 157, -1, 159, 151, - 152, 153, 154, -1, -1, 157, -1, 159, 151, 152, - 153, 154, -1, -1, 157, -1, 159, 151, 152, 153, - 154, -1, -1, 157, -1, 159, 151, 152, 153, 154, - -1, -1, 157, -1, 159, 151, 152, 153, 154, -1, - -1, 157, -1, 159, 151, 152, 153, 154, -1, -1, - 157, -1, 159, 151, 152, 153, 154, -1, -1, 157, - -1, 159, 151, 152, 153, 154, -1, -1, 157, -1, - 159, 151, 152, 153, 154, -1, -1, 157, -1, 159, - 151, 152, 153, 154, -1, -1, 157, -1, 159, 151, - 152, 153, 154, -1, -1, 157, -1, 159, 151, 152, - 153, 154, -1, -1, 157, -1, 159, 151, 152, 153, - 154, -1, -1, 157, -1, 159, 151, 152, 153, 154, - -1, -1, 157, -1, 159, 151, 152, 153, 154, -1, - -1, 157, -1, 159, 151, 152, 153, 154, -1, -1, - 157, -1, 159, 151, 152, 153, 154, -1, -1, 157, - -1, 159, 151, 152, 153, 154, -1, -1, 157, -1, - 159, 151, 152, 153, 154, -1, -1, 157, -1, 159, - 151, 152, 153, 154, -1, -1, 157, -1, 159, 151, - 152, 153, 154, -1, -1, 157, -1, 159, 151, 152, - 153, 154, -1, -1, 157, -1, 159, 151, 152, 153, - 154, -1, -1, 157, -1, 159, 151, 152, 153, 154, - -1, -1, 157, -1, 159, 151, 152, 153, 154, -1, - -1, 157, -1, 159, 151, 152, 153, 154, -1, -1, - 157, -1, 159, 151, 152, 153, 154, -1, -1, 157, - -1, 159, 151, 152, 153, 154, -1, -1, 157, -1, - 159, 151, 152, 153, 154, -1, -1, 157, -1, 159, - 151, 152, 153, 154, -1, -1, 157, -1, 159, 151, - 152, 153, 154, -1, -1, 157, -1, 159, 151, 152, - 153, 154, -1, -1, 157, -1, 159, 151, 152, 153, - 154, -1, -1, 157, -1, 159, 151, 152, 153, 154, - -1, -1, 157, -1, 159, 151, 152, 153, 154, -1, - -1, 157, -1, 159, 151, 152, 153, 154, -1, -1, - 157, -1, 159, 151, 152, 153, 154, -1, -1, 157, - -1, 159, 151, 152, 153, 154, -1, -1, 157, -1, - 159, 151, 152, 153, 154, -1, -1, 157, -1, 159, - 151, 152, 153, 154, -1, -1, 157, -1, 159, 151, - 152, 153, 154, -1, -1, 157, -1, 159, 151, 152, - 153, 154, -1, -1, 157, -1, 159, 151, 152, 153, - 154, -1, -1, 157, -1, 159, 151, 152, 153, 154, - -1, -1, 157, -1, 159, 151, 152, 153, 154, -1, - -1, 157, -1, 159, 151, 152, 153, 154, -1, -1, - 157, -1, 159, 151, 152, 153, 154, -1, -1, 157, - -1, 159, 151, 152, 153, 154, -1, -1, 157, -1, - 159, 151, 152, 153, 154, -1, -1, 157, -1, 159, - 151, 152, 153, 154, -1, -1, 157, -1, 159, 151, - 152, 153, 154, -1, -1, 157, -1, 159, 151, 152, - 153, 154, -1, -1, 157, -1, 159, 151, 152, 153, - 154, -1, -1, 157, -1, 159, 151, 152, 153, 154, - -1, -1, 157, -1, 159, 151, 152, 153, 154, -1, - -1, 157, -1, 159, 151, 152, 153, 154, -1, -1, - 157, -1, 159, 151, 152, 153, 154, -1, -1, 157, - -1, 159, 151, 152, 153, 154, -1, -1, 157, -1, - 159, 151, 152, 153, 154, -1, -1, 157, -1, 159, - 151, 152, 153, 154, -1, -1, 157, -1, 159, 151, - 152, 153, 154, -1, -1, 157, -1, 159, 151, 152, - 153, 154, -1, -1, 157, -1, 159, 151, 152, 153, - 154, -1, -1, 157, -1, 159, 151, 152, 153, 154, - -1, -1, 157, -1, 159, 151, 152, 153, 154, -1, - -1, 157, -1, 159, 151, 152, 153, 154, -1, -1, - 157, -1, 159, 151, 152, 153, 154, -1, -1, 157, - -1, 159, 151, 152, 153, 154, -1, -1, 157, -1, - 159, 151, 152, 153, 154, -1, -1, 157, -1, 159, - 151, 152, 153, 154, -1, -1, 157, -1, 159, 151, - 152, 153, 154, -1, -1, 157, -1, 159, 151, 152, - 153, 154, -1, -1, 157, -1, 159, 151, 152, 153, - 154, -1, -1, 157, -1, 159, 151, 152, 153, 154, - -1, -1, 157, -1, 159, 151, 152, 153, 154, -1, - -1, 157, -1, 159, 151, 152, 153, 154, -1, -1, - 157, -1, 159, 151, 152, 153, 154, -1, -1, 157, - -1, 159, 151, 152, 153, 154, -1, -1, 157, -1, - 159, 151, 152, 153, 154, -1, -1, 157, -1, 159, - 151, 152, 153, 154, -1, -1, 157, -1, 159 + 26, 27, 28, 29, 147, 148, 149, 150, 151, 170, + 153, 154, 155, 156, 157, 158, 159, 160, 161, 171, + 6, 171, 165, 147, 148, 149, 150, 151, 6, 153, + 154, 155, 156, 157, 158, 159, 160, 161, 171, 171, + 6, 165, 0, 6, 147, 148, 149, 150, 151, 0, + 153, 154, 155, 156, 157, 158, 159, 160, 161, 6, + 545, 6, 165, 6, 6, 520, 773, 31, 32, 33, + 34, 35, 36, 37, 38, -1, 40, 775, 42, 43, + 1085, 45, 46, -1, -1, -1, -1, 785, -1, -1, + 302, 789, -1, -1, 147, 148, 149, 150, 151, 63, + 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, + 808, 164, 165, 77, 78, 168, 147, 148, 149, 150, + 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, + 161, 157, 158, -1, 165, -1, -1, -1, 164, -1, + -1, 172, 168, 31, 32, 33, 34, 35, 36, 37, + 38, -1, 40, -1, 42, 43, -1, 45, 46, 31, + 32, 33, 34, 35, 36, 37, 38, -1, 40, 133, + 42, 43, -1, 45, 46, 63, -1, -1, -1, 0, + 1, -1, -1, 4, -1, -1, -1, -1, -1, 77, + 78, 63, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 77, 78, -1, 172, 30, + 31, 32, 33, 34, 35, 36, 37, 38, -1, 40, + 41, 42, 43, 44, 45, 46, -1, -1, -1, 50, + 51, 52, 53, 54, 55, -1, 57, 58, 59, 60, + 61, -1, 63, -1, -1, 133, -1, 945, -1, 34, + 948, -1, -1, -1, -1, -1, 77, 78, -1, -1, + -1, 133, -1, 84, 85, 86, 87, 88, 89, -1, + -1, -1, -1, -1, -1, -1, -1, 975, -1, -1, + -1, -1, -1, -1, 172, -1, -1, -1, -1, -1, + -1, -1, -1, 991, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 90, 91, 92, -1, -1, + -1, -1, 133, 98, 99, 100, 101, 102, 103, 104, + 105, 106, 107, -1, -1, -1, -1, -1, -1, -1, + -1, 116, 117, 118, 119, 120, 121, 122, 123, 124, + 125, -1, 127, 128, 129, 130, 131, 132, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 1060, 1061, 147, 148, 149, 150, 151, -1, + 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, + -1, -1, 165, 136, -1, -1, -1, -1, 1086, -1, + -1, -1, -1, 176, 147, 148, 149, 150, 151, -1, + 153, 154, 155, 156, 157, 158, 159, 160, 161, 136, + -1, -1, 165, -1, -1, -1, -1, -1, -1, -1, + 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, 1134, -1, 165, -1, + -1, -1, -1, -1, -1, 147, 148, 149, 150, 151, + 1148, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, -1, -1, 165, -1, -1, -1, -1, 170, -1, + -1, 173, -1, 147, 148, 149, 150, 151, -1, 153, + 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, + -1, 165, 139, -1, -1, -1, -1, -1, 1196, 173, + 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, -1, -1, 165, 147, + 148, 149, 150, 151, -1, 153, 154, 155, 156, 157, + 158, 159, 160, 161, -1, -1, -1, 165, -1, -1, + -1, 169, -1, -1, 172, -1, -1, -1, -1, 1247, + 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, + -1, -1, 169, -1, -1, 172, -1, 1275, 147, 148, + 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, + 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, + 169, -1, -1, 172, -1, 1303, 147, 148, 149, 150, + 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, + 161, -1, -1, -1, 165, -1, -1, -1, -1, -1, + -1, 172, -1, -1, 1332, -1, -1, -1, -1, -1, + -1, -1, -1, 147, 148, 149, 150, 151, 1346, 153, + 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, + -1, 165, -1, 147, 148, 149, 150, 151, 172, 153, + 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, + -1, 165, -1, 147, 148, 149, 150, 151, 172, 153, + 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, + -1, 165, -1, 147, 148, 149, 150, 151, 172, 153, + 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, + -1, 165, -1, 147, 148, 149, 150, 151, 172, 153, + 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, + -1, 165, -1, 147, 148, 149, 150, 151, 172, 153, + 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, + -1, 165, -1, 147, 148, 149, 150, 151, 172, 153, + 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, + -1, 165, -1, 147, 148, 149, 150, 151, 172, 153, + 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, + -1, 165, -1, 147, 148, 149, 150, 151, 172, 153, + 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, + -1, 165, -1, 147, 148, 149, 150, 151, 172, 153, + 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, + -1, 165, -1, 147, 148, 149, 150, 151, 172, 153, + 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, + -1, 165, -1, 147, 148, 149, 150, 151, 172, 153, + 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, + -1, 165, -1, 147, 148, 149, 150, 151, 172, 153, + 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, + -1, 165, -1, 147, 148, 149, 150, 151, 172, 153, + 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, + -1, 165, -1, 147, 148, 149, 150, 151, 172, 153, + 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, + -1, 165, -1, 147, 148, 149, 150, 151, 172, 153, + 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, + -1, 165, -1, 141, -1, -1, -1, -1, 172, 147, + 148, 149, 150, 151, -1, 153, 154, 155, 156, 157, + 158, 159, 160, 161, -1, -1, -1, 165, 147, 148, + 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, + 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, + 169, 170, 147, 148, 149, 150, 151, -1, 153, 154, + 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, + 165, -1, -1, -1, -1, 170, 147, 148, 149, 150, + 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, + 161, -1, -1, -1, 165, -1, -1, -1, -1, 170, + 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, + -1, -1, -1, 170, 147, 148, 149, 150, 151, -1, + 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, + -1, -1, 165, -1, -1, -1, -1, 170, 147, 148, + 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, + 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, + -1, 170, 147, 148, 149, 150, 151, -1, 153, 154, + 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, + 165, -1, -1, -1, -1, 170, 147, 148, 149, 150, + 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, + 161, -1, -1, -1, 165, -1, -1, -1, -1, 170, + 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, + -1, -1, -1, 170, 147, 148, 149, 150, 151, -1, + 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, + -1, -1, 165, -1, -1, -1, -1, 170, 147, 148, + 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, + 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, + -1, 170, 147, 148, 149, 150, 151, -1, 153, 154, + 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, + 165, -1, -1, -1, -1, 170, 147, 148, 149, 150, + 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, + 161, -1, -1, -1, 165, -1, -1, -1, -1, 170, + 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, + -1, -1, -1, 170, 147, 148, 149, 150, 151, -1, + 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, + -1, -1, 165, -1, -1, -1, -1, 170, 147, 148, + 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, + 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, + -1, 170, 147, 148, 149, 150, 151, -1, 153, 154, + 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, + 165, -1, -1, -1, -1, 170, 147, 148, 149, 150, + 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, + 161, -1, -1, -1, 165, -1, -1, -1, -1, 170, + 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, + -1, -1, -1, 170, 147, 148, 149, 150, 151, -1, + 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, + -1, -1, 165, -1, -1, -1, -1, 170, 147, 148, + 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, + 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, + -1, 170, 147, 148, 149, 150, 151, -1, 153, 154, + 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, + 165, -1, -1, -1, -1, 170, 147, 148, 149, 150, + 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, + 161, -1, -1, -1, 165, -1, -1, -1, -1, 170, + 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, + -1, -1, -1, 170, 147, 148, 149, 150, 151, -1, + 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, + -1, -1, 165, -1, -1, -1, -1, 170, 147, 148, + 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, + 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, + -1, 170, 147, 148, 149, 150, 151, -1, 153, 154, + 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, + 165, -1, -1, -1, -1, 170, 147, 148, 149, 150, + 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, + 161, -1, -1, -1, 165, -1, -1, -1, -1, 170, + 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, + -1, -1, -1, 170, 147, 148, 149, 150, 151, -1, + 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, + -1, -1, 165, -1, -1, -1, -1, 170, 147, 148, + 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, + 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, + -1, 170, 147, 148, 149, 150, 151, -1, 153, 154, + 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, + 165, -1, -1, -1, -1, 170, 147, 148, 149, 150, + 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, + 161, -1, -1, -1, 165, -1, -1, -1, -1, 170, + 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, + -1, -1, -1, 170, 147, 148, 149, 150, 151, -1, + 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, + -1, -1, 165, -1, -1, -1, -1, 170, 147, 148, + 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, + 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, + -1, 170, 147, 148, 149, 150, 151, -1, 153, 154, + 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, + 165, -1, -1, -1, -1, 170, 147, 148, 149, 150, + 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, + 161, -1, -1, -1, 165, -1, -1, -1, -1, 170, + 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, + -1, -1, -1, 170, 147, 148, 149, 150, 151, -1, + 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, + -1, -1, 165, -1, -1, -1, -1, 170, 147, 148, + 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, + 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, + -1, 170, 147, 148, 149, 150, 151, -1, 153, 154, + 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, + 165, -1, -1, -1, -1, 170, 147, 148, 149, 150, + 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, + 161, -1, -1, -1, 165, -1, -1, -1, -1, 170, + 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, + -1, -1, -1, 170, 147, 148, 149, 150, 151, -1, + 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, + -1, -1, 165, -1, -1, -1, -1, 170, 147, 148, + 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, + 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, + -1, 170, 147, 148, 149, 150, 151, -1, 153, 154, + 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, + 165, -1, -1, -1, -1, 170, 147, 148, 149, 150, + 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, + 161, -1, -1, -1, 165, -1, -1, -1, -1, 170, + 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, + -1, -1, -1, 170, 147, 148, 149, 150, 151, -1, + 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, + -1, -1, 165, -1, -1, -1, -1, 170, 147, 148, + 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, + 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, + -1, 170, 147, 148, 149, 150, 151, -1, 153, 154, + 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, + 165, -1, -1, -1, -1, 170, 147, 148, 149, 150, + 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, + 161, -1, -1, -1, 165, -1, -1, -1, -1, 170, + 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, + -1, -1, -1, 170, 147, 148, 149, 150, 151, -1, + 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, + -1, -1, 165, -1, -1, -1, -1, 170, 147, 148, + 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, + 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, + -1, 170, 147, 148, 149, 150, 151, -1, 153, 154, + 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, + 165, -1, -1, -1, -1, 170, 147, 148, 149, 150, + 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, + 161, -1, -1, -1, 165, -1, -1, -1, -1, 170, + 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, + -1, -1, -1, 170, 147, 148, 149, 150, 151, -1, + 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, + -1, -1, 165, -1, -1, -1, -1, 170, 147, 148, + 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, + 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, + -1, 170, 147, 148, 149, 150, 151, -1, 153, 154, + 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, + 165, -1, -1, -1, -1, 170, 147, 148, 149, 150, + 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, + 161, -1, -1, -1, 165, -1, -1, -1, -1, 170, + 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, + -1, -1, -1, 170, 147, 148, 149, 150, 151, -1, + 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, + -1, -1, 165, -1, -1, -1, 169, 147, 148, 149, + 150, 151, -1, 153, 154, 155, 156, 157, 158, 159, + 160, 161, -1, -1, -1, 165, -1, -1, -1, 169, + 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, + -1, -1, 169, 147, 148, 149, 150, 151, -1, 153, + 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, + -1, 165, -1, -1, -1, 169, 147, 148, 149, 150, + 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, + 161, -1, -1, -1, 165, -1, -1, -1, 169, 147, + 148, 149, 150, 151, -1, 153, 154, 155, 156, 157, + 158, 159, 160, 161, -1, -1, -1, 165, -1, -1, + -1, 169, 147, 148, 149, 150, 151, -1, 153, 154, + 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, + 165, -1, -1, -1, 169, 147, 148, 149, 150, 151, + -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, -1, -1, 165, -1, -1, -1, 169, 147, 148, + 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, + 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, + 169, 147, 148, 149, 150, 151, -1, 153, 154, 155, + 156, 157, 158, 159, 160, 161, -1, -1, -1, 165, + -1, -1, -1, 169, 147, 148, 149, 150, 151, -1, + 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, + -1, -1, 165, -1, -1, -1, 169, 147, 148, 149, + 150, 151, -1, 153, 154, 155, 156, 157, 158, 159, + 160, 161, -1, -1, -1, 165, -1, -1, -1, 169, + 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, + -1, -1, 169, 147, 148, 149, 150, 151, -1, 153, + 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, + -1, 165, -1, -1, -1, 169, 147, 148, 149, 150, + 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, + 161, -1, -1, -1, 165, -1, -1, -1, 169, 147, + 148, 149, 150, 151, -1, 153, 154, 155, 156, 157, + 158, 159, 160, 161, -1, -1, -1, 165, -1, -1, + -1, 169, 147, 148, 149, 150, 151, -1, 153, 154, + 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, + 165, -1, -1, -1, 169, 147, 148, 149, 150, 151, + -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, -1, -1, 165, -1, -1, -1, 169, 147, 148, + 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, + 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, + 169, 147, 148, 149, 150, 151, -1, 153, 154, 155, + 156, 157, 158, 159, 160, 161, -1, -1, -1, 165, + -1, -1, -1, 169, 147, 148, 149, 150, 151, -1, + 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, + -1, -1, 165, -1, -1, -1, 169, 147, 148, 149, + 150, 151, -1, 153, 154, 155, 156, 157, 158, 159, + 160, 161, -1, -1, -1, 165, -1, -1, -1, 169, + 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, + -1, -1, 169, 147, 148, 149, 150, 151, -1, 153, + 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, + -1, 165, -1, -1, -1, 169, 147, 148, 149, 150, + 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, + 161, -1, -1, -1, 165, -1, -1, -1, 169, 147, + 148, 149, 150, 151, -1, 153, 154, 155, 156, 157, + 158, 159, 160, 161, -1, -1, -1, 165, -1, -1, + -1, 169, 147, 148, 149, 150, 151, -1, 153, 154, + 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, + 165, -1, -1, -1, 169, 147, 148, 149, 150, 151, + -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, -1, -1, 165, -1, -1, -1, 169, 147, 148, + 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, + 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, + 169, 147, 148, 149, 150, 151, -1, 153, 154, 155, + 156, 157, 158, 159, 160, 161, -1, -1, -1, 165, + -1, -1, -1, 169, 147, 148, 149, 150, 151, -1, + 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, + -1, -1, 165, -1, -1, -1, 169, 147, 148, 149, + 150, 151, -1, 153, 154, 155, 156, 157, 158, 159, + 160, 161, -1, -1, -1, 165, -1, -1, -1, 169, + 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, + -1, -1, 169, 147, 148, 149, 150, 151, -1, 153, + 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, + -1, 165, -1, -1, -1, 169, 147, 148, 149, 150, + 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, + 161, -1, -1, -1, 165, -1, -1, -1, 169, 147, + 148, 149, 150, 151, -1, 153, 154, 155, 156, 157, + 158, 159, 160, 161, -1, -1, -1, 165, -1, -1, + -1, 169, 147, 148, 149, 150, 151, -1, 153, 154, + 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, + 165, -1, -1, -1, 169, 147, 148, 149, 150, 151, + -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, -1, -1, 165, -1, -1, -1, 169, 147, 148, + 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, + 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, + 169, 147, 148, 149, 150, 151, -1, 153, 154, 155, + 156, 157, 158, 159, 160, 161, -1, -1, -1, 165, + -1, -1, -1, 169, 147, 148, 149, 150, 151, -1, + 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, + -1, -1, 165, -1, -1, -1, 169, 147, 148, 149, + 150, 151, -1, 153, 154, 155, 156, 157, 158, 159, + 160, 161, -1, -1, -1, 165, -1, -1, -1, 169, + 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, + -1, -1, 169, 147, 148, 149, 150, 151, -1, 153, + 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, + -1, 165, -1, -1, -1, 169, 147, 148, 149, 150, + 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, + 161, -1, -1, -1, 165, -1, -1, -1, 169, 147, + 148, 149, 150, 151, -1, 153, 154, 155, 156, 157, + 158, 159, 160, 161, -1, -1, -1, 165, -1, -1, + -1, 169, 147, 148, 149, 150, 151, -1, 153, 154, + 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, + 165, -1, -1, -1, 169, 147, 148, 149, 150, 151, + -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, -1, -1, 165, -1, -1, -1, 169, 147, 148, + 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, + 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, + 169, 147, 148, 149, 150, 151, -1, 153, 154, 155, + 156, 157, 158, 159, 160, 161, -1, -1, -1, 165, + -1, -1, -1, 169, 147, 148, 149, 150, 151, -1, + 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, + -1, -1, 165, -1, -1, -1, 169, 147, 148, 149, + 150, 151, -1, 153, 154, 155, 156, 157, 158, 159, + 160, 161, -1, -1, -1, 165, -1, -1, -1, 169, + 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, + -1, -1, 169, 147, 148, 149, 150, 151, -1, 153, + 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, + -1, 165, -1, -1, -1, 169, 147, 148, 149, 150, + 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, + 161, -1, -1, -1, 165, -1, -1, -1, 169, 147, + 148, 149, 150, 151, -1, 153, 154, 155, 156, 157, + 158, 159, 160, 161, -1, -1, -1, 165, -1, -1, + -1, 169, 147, 148, 149, 150, 151, -1, 153, 154, + 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, + 165, -1, -1, -1, 169, 147, 148, 149, 150, 151, + -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, -1, -1, 165, -1, -1, -1, 169, 147, 148, + 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, + 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, + 169, 147, 148, 149, 150, 151, -1, 153, 154, 155, + 156, 157, 158, 159, 160, 161, -1, -1, -1, 165, + -1, -1, -1, 169, 147, 148, 149, 150, 151, -1, + 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, + -1, -1, 165, -1, -1, -1, 169, 147, 148, 149, + 150, 151, -1, 153, 154, 155, 156, 157, 158, 159, + 160, 161, -1, -1, -1, 165, -1, -1, -1, 169, + 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, + -1, -1, 169, 147, 148, 149, 150, 151, -1, 153, + 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, + -1, 165, -1, -1, -1, 169, 147, 148, 149, 150, + 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, + 161, -1, -1, -1, 165, -1, -1, -1, 169, 147, + 148, 149, 150, 151, -1, 153, 154, 155, 156, 157, + 158, 159, 160, 161, -1, -1, -1, 165, -1, -1, + -1, 169, 147, 148, 149, 150, 151, -1, 153, 154, + 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, + 165, -1, -1, -1, 169, 147, 148, 149, 150, 151, + -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, -1, -1, 165, -1, -1, -1, 169, 147, 148, + 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, + 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, + 169, 147, 148, 149, 150, 151, -1, 153, 154, 155, + 156, 157, 158, 159, 160, 161, -1, -1, -1, 165, + -1, -1, -1, 169, 147, 148, 149, 150, 151, -1, + 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, + -1, -1, 165, -1, -1, -1, 169, 147, 148, 149, + 150, 151, -1, 153, 154, 155, 156, 157, 158, 159, + 160, 161, -1, -1, -1, 165, -1, -1, -1, 169, + 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, + -1, -1, 169, 147, 148, 149, 150, 151, -1, 153, + 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, + -1, 165, -1, -1, -1, 169, 147, 148, 149, 150, + 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, + 161, -1, -1, -1, 165, -1, -1, -1, 169, 147, + 148, 149, 150, 151, -1, 153, 154, 155, 156, 157, + 158, 159, 160, 161, -1, -1, -1, 165, -1, -1, + -1, 169, 147, 148, 149, 150, 151, -1, 153, 154, + 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, + 165, -1, -1, -1, 169, 147, 148, 149, 150, 151, + -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, -1, -1, 165, -1, -1, -1, 169, 147, 148, + 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, + 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, + 169, 147, 148, 149, 150, 151, -1, 153, 154, 155, + 156, 157, 158, 159, 160, 161, -1, -1, -1, 165, + -1, -1, -1, 169, 147, 148, 149, 150, 151, -1, + 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, + -1, -1, 165, -1, -1, -1, 169, 147, 148, 149, + 150, 151, -1, 153, 154, 155, 156, 157, 158, 159, + 160, 161, -1, -1, -1, 165, -1, -1, -1, 169, + 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, + -1, -1, 169, 147, 148, 149, 150, 151, -1, 153, + 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, + -1, 165, -1, -1, -1, 169, 147, 148, 149, 150, + 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, + 161, -1, -1, -1, 165, -1, -1, -1, 169, 147, + 148, 149, 150, 151, -1, 153, 154, 155, 156, 157, + 158, 159, 160, 161, -1, -1, -1, 165, -1, -1, + -1, 169, 147, 148, 149, 150, 151, -1, 153, 154, + 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, + 165, -1, -1, -1, 169, 147, 148, 149, 150, 151, + -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, -1, -1, 165, -1, -1, -1, 169, 147, 148, + 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, + 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, + 169, 147, 148, 149, 150, 151, -1, 153, 154, 155, + 156, 157, 158, 159, 160, 161, -1, -1, -1, 165, + -1, -1, -1, 169, 147, 148, 149, 150, 151, -1, + 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, + -1, -1, 165, -1, -1, -1, 169, 147, 148, 149, + 150, 151, -1, 153, 154, 155, 156, 157, 158, 159, + 160, 161, -1, -1, -1, 165, -1, -1, -1, 169, + 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, + -1, -1, 169, 147, 148, 149, 150, 151, -1, 153, + 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, + -1, 165, -1, -1, -1, 169, 147, 148, 149, 150, + 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, + 161, -1, -1, -1, 165, -1, -1, -1, 169, 147, + 148, 149, 150, 151, -1, 153, 154, 155, 156, 157, + 158, 159, 160, 161, -1, -1, -1, 165, -1, -1, + -1, 169, 147, 148, 149, 150, 151, -1, 153, 154, + 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, + 165, -1, -1, -1, 169, 147, 148, 149, 150, 151, + -1, 153, 154, 155, 156, 157, 158, 159, 160, 161, + -1, -1, -1, 165, -1, -1, -1, 169, 147, 148, + 149, 150, 151, -1, 153, 154, 155, 156, 157, 158, + 159, 160, 161, -1, -1, -1, 165, -1, -1, -1, + 169, 147, 148, 149, 150, 151, -1, 153, 154, 155, + 156, 157, 158, 159, 160, 161, -1, -1, -1, 165, + -1, -1, -1, 169, 147, 148, 149, 150, 151, -1, + 153, 154, 155, 156, 157, 158, 159, 160, 161, -1, + -1, -1, 165, -1, -1, -1, 169, 147, 148, 149, + 150, 151, -1, 153, 154, 155, 156, 157, 158, 159, + 160, 161, -1, -1, -1, 165, -1, -1, -1, 169, + 147, 148, 149, 150, 151, -1, 153, 154, 155, 156, + 157, 158, 159, 160, 161, -1, -1, -1, 165, -1, + -1, -1, 169, 147, 148, 149, 150, 151, -1, 153, + 154, 155, 156, 157, 158, 159, 160, 161, -1, -1, + -1, 165, -1, -1, -1, 169, 147, 148, 149, 150, + 151, -1, 153, 154, 155, 156, 157, 158, 159, 160, + 161, -1, -1, -1, 165, -1, -1, -1, 169, 147, + 148, 149, 150, 151, -1, 153, 154, 155, 156, 157, + 158, 159, 160, 161, -1, -1, -1, 165, -1, -1, + -1, 169, 147, 148, 149, 150, 151, -1, 153, 154, + 155, 156, 157, 158, 159, 160, 161, -1, -1, -1, + 165 }; /* -*-C-*- Note some compilers choke on comments on `#line' lines. */ #line 3 "/usr/lib/bison.simple" @@ -2157,7 +2827,7 @@ yyreduce: switch (yyn) { case 4: -#line 125 "Gmsh.y" +#line 147 "Gmsh.y" { Msg(PARSER_INFO,"STL File Format"); STL_Surf = Create_Surface(1,MSH_SURF_STL,1); @@ -2166,7 +2836,7 @@ case 4: ; break;} case 5: -#line 139 "Gmsh.y" +#line 161 "Gmsh.y" { STL_Surf->STL->Add_Facet( yyvsp[-12].d, yyvsp[-11].d, yyvsp[-10].d, yyvsp[-8].d, yyvsp[-7].d, yyvsp[-6].d, @@ -2175,7 +2845,7 @@ case 5: ; break;} case 6: -#line 146 "Gmsh.y" +#line 168 "Gmsh.y" { Msg(PARSER_INFO,"STL File Format Read"); Tree_Add(THEM->Surfaces, &STL_Surf); @@ -2183,83 +2853,83 @@ case 6: ; break;} case 9: -#line 163 "Gmsh.y" +#line 185 "Gmsh.y" { return 1; ; break;} case 10: -#line 164 "Gmsh.y" +#line 186 "Gmsh.y" { return 1; ; break;} case 11: -#line 165 "Gmsh.y" +#line 187 "Gmsh.y" { return 1; ; break;} case 12: -#line 166 "Gmsh.y" +#line 188 "Gmsh.y" { yyerrok ; return 1; ; break;} case 13: -#line 171 "Gmsh.y" +#line 193 "Gmsh.y" { Msg(PARSER_INFO,"Step Iso-10303-21 File Format"); Create_Step_Solid_BRep(); ; break;} case 14: -#line 176 "Gmsh.y" +#line 198 "Gmsh.y" { Msg(PARSER_INFO,"Step Iso-10303-21 File Format Read"); Resolve_BREP (); ; break;} case 18: -#line 187 "Gmsh.y" +#line 209 "Gmsh.y" { ; break;} case 19: -#line 190 "Gmsh.y" +#line 212 "Gmsh.y" { ; break;} case 20: -#line 194 "Gmsh.y" +#line 216 "Gmsh.y" { ; break;} case 21: -#line 200 "Gmsh.y" +#line 222 "Gmsh.y" { Add_Cartesian_Point((int)yyvsp[-8].d,yyvsp[-4].c,yyvsp[-2].v[0],yyvsp[-2].v[1],yyvsp[-2].v[2]); ; break;} case 22: -#line 206 "Gmsh.y" +#line 228 "Gmsh.y" { Add_BSpline_Curve_With_Knots ((int)yyvsp[-22].d, yyvsp[-18].c, (int) yyvsp[-16].d, yyvsp[-14].l, yyvsp[-6].l, yyvsp[-4].l, 0., 1.); ; break;} case 23: -#line 213 "Gmsh.y" +#line 235 "Gmsh.y" { Add_BSpline_Surface_With_Knots ((int)yyvsp[-30].d, yyvsp[-26].c, (int) yyvsp[-24].d, (int) yyvsp[-22].d, yyvsp[-20].l, yyvsp[-10].l, yyvsp[-8].l, yyvsp[-6].l, yyvsp[-4].l, 0., 1., 0., 1. ); ; break;} case 24: -#line 219 "Gmsh.y" +#line 241 "Gmsh.y" { Add_Edge_Curve ((int)yyvsp[-14].d, yyvsp[-10].c , (int)yyvsp[-8].d , (int)yyvsp[-6].d, (int)yyvsp[-4].d); ; break;} case 25: -#line 223 "Gmsh.y" +#line 245 "Gmsh.y" { Add_Face_Outer_Bound((int)yyvsp[-10].d,yyvsp[-6].c,(int)yyvsp[-4].d,yyvsp[-2].i,1); ; break;} case 26: -#line 227 "Gmsh.y" +#line 249 "Gmsh.y" { /* La je dois voir la norme ! Face_Bound : trou externe a la surface ! */ Msg(PARSER_INFO,"Found a Face Bound"); @@ -2267,364 +2937,378 @@ case 26: ; break;} case 27: -#line 234 "Gmsh.y" +#line 256 "Gmsh.y" { Add_Oriented_Edge((int)yyvsp[-14].d,yyvsp[-10].c,(int)yyvsp[-4].d,yyvsp[-2].i); ; break;} case 28: -#line 238 "Gmsh.y" +#line 260 "Gmsh.y" { Add_Edge_Loop((int)yyvsp[-8].d,yyvsp[-4].c,yyvsp[-2].l); ; break;} case 29: -#line 243 "Gmsh.y" +#line 265 "Gmsh.y" { Add_Advanced_Face((int)yyvsp[-12].d,yyvsp[-8].c,yyvsp[-6].l,(int)yyvsp[-4].d,yyvsp[-2].i); ; break;} case 30: -#line 247 "Gmsh.y" +#line 269 "Gmsh.y" { Add_Vertex_Point((int)yyvsp[-8].d,yyvsp[-4].c,(int)yyvsp[-2].d); ; break;} case 31: -#line 251 "Gmsh.y" +#line 273 "Gmsh.y" { ; break;} case 32: -#line 255 "Gmsh.y" +#line 277 "Gmsh.y" { Add_Axis2_Placement3D ( (int)yyvsp[-12].d, (int)yyvsp[-4].d, (int)yyvsp[-2].d, (int)yyvsp[-6].d); ; break;} case 33: -#line 259 "Gmsh.y" +#line 281 "Gmsh.y" { Add_Direction((int)yyvsp[-8].d , yyvsp[-4].c, yyvsp[-2].v[0], yyvsp[-2].v[1], yyvsp[-2].v[2]); ; break;} case 34: -#line 263 "Gmsh.y" +#line 285 "Gmsh.y" { Add_Plane((int)yyvsp[-8].d,yyvsp[-4].c,(int)yyvsp[-2].d); ; break;} case 35: -#line 267 "Gmsh.y" +#line 289 "Gmsh.y" { Add_Line ((int)yyvsp[-10].d, yyvsp[-6].c , (int) yyvsp[-4].d, (int)yyvsp[-2].d); ; break;} case 36: -#line 271 "Gmsh.y" +#line 293 "Gmsh.y" { Msg(PARSER_INFO,"Found a Closed shell"); Add_Closed_Shell((int)yyvsp[-8].d, yyvsp[-4].c , yyvsp[-2].l); ; break;} case 37: -#line 277 "Gmsh.y" +#line 299 "Gmsh.y" { ; break;} case 38: -#line 280 "Gmsh.y" +#line 302 "Gmsh.y" { ; break;} case 39: -#line 283 "Gmsh.y" +#line 305 "Gmsh.y" { Add_Cylinder ((int)yyvsp[-10].d, yyvsp[-6].c , (int)yyvsp[-4].d, yyvsp[-2].d); ; break;} case 40: -#line 287 "Gmsh.y" +#line 309 "Gmsh.y" { Add_Cone ((int)yyvsp[-12].d, yyvsp[-8].c , (int)yyvsp[-6].d, yyvsp[-4].d,yyvsp[-2].d); ; break;} case 41: -#line 291 "Gmsh.y" +#line 313 "Gmsh.y" { Add_Torus ((int)yyvsp[-12].d, yyvsp[-8].c , (int)yyvsp[-6].d, yyvsp[-4].d,yyvsp[-2].d); ; break;} case 42: -#line 295 "Gmsh.y" +#line 317 "Gmsh.y" { Add_Circle((int) yyvsp[-10].d, yyvsp[-6].c, (int) yyvsp[-4].d, yyvsp[-2].d); ; break;} case 43: -#line 299 "Gmsh.y" +#line 321 "Gmsh.y" { Add_Ellipsis((int) yyvsp[-12].d, yyvsp[-8].c, (int) yyvsp[-6].d, yyvsp[-4].d, yyvsp[-2].d); ; break;} case 44: -#line 304 "Gmsh.y" +#line 326 "Gmsh.y" { ; break;} case 45: -#line 307 "Gmsh.y" +#line 329 "Gmsh.y" { ; break;} case 46: -#line 311 "Gmsh.y" +#line 333 "Gmsh.y" { ; break;} case 47: -#line 314 "Gmsh.y" +#line 336 "Gmsh.y" { ; break;} case 48: -#line 318 "Gmsh.y" +#line 340 "Gmsh.y" { ; break;} case 49: -#line 321 "Gmsh.y" +#line 343 "Gmsh.y" { ; break;} case 50: -#line 324 "Gmsh.y" +#line 346 "Gmsh.y" { ; break;} case 51: -#line 334 "Gmsh.y" +#line 356 "Gmsh.y" { ; break;} case 52: -#line 337 "Gmsh.y" +#line 359 "Gmsh.y" { Msg(PARSER_INFO,"Gmsh File Format Read"); ; break;} case 53: -#line 343 "Gmsh.y" +#line 365 "Gmsh.y" { return 1; ; break;} case 54: -#line 344 "Gmsh.y" +#line 366 "Gmsh.y" { return 1; ; break;} case 55: -#line 345 "Gmsh.y" +#line 367 "Gmsh.y" { return 1; ; break;} case 56: -#line 346 "Gmsh.y" +#line 368 "Gmsh.y" { return 1; ; break;} case 57: -#line 347 "Gmsh.y" +#line 369 "Gmsh.y" { return 1; ; break;} case 58: -#line 348 "Gmsh.y" +#line 370 "Gmsh.y" { return 1; ; break;} case 59: -#line 349 "Gmsh.y" +#line 371 "Gmsh.y" { return 1; ; break;} case 60: -#line 350 "Gmsh.y" +#line 372 "Gmsh.y" { return 1; ; break;} case 61: -#line 351 "Gmsh.y" +#line 373 "Gmsh.y" { return 1; ; break;} case 62: -#line 352 "Gmsh.y" +#line 374 "Gmsh.y" { return 1; ; break;} case 63: -#line 353 "Gmsh.y" -{return 1;; +#line 375 "Gmsh.y" +{ return 1; ; break;} case 64: -#line 355 "Gmsh.y" -{ return 1; ; +#line 376 "Gmsh.y" +{return 1;; break;} case 65: -#line 356 "Gmsh.y" +#line 378 "Gmsh.y" { return 1; ; break;} case 66: -#line 357 "Gmsh.y" -{ yyerrok; return 1;; +#line 379 "Gmsh.y" +{ return 1; ; break;} case 67: -#line 366 "Gmsh.y" +#line 380 "Gmsh.y" +{ return 1; ; + break;} +case 68: +#line 381 "Gmsh.y" +{ yyerrok; return 1;; + break;} +case 69: +#line 386 "Gmsh.y" +{ + Msg(PARSER_INFO, yyvsp[-4].c, yyvsp[-2].d); + ; + break;} +case 70: +#line 397 "Gmsh.y" { EndView(1, Force_ViewNumber,yyname,yyvsp[-4].c,0.,0.,0.); ; break;} -case 68: -#line 370 "Gmsh.y" +case 71: +#line 401 "Gmsh.y" { EndView(1, Force_ViewNumber,yyname,yyvsp[-6].c,yyvsp[-4].v[0],yyvsp[-4].v[1],yyvsp[-4].v[2]); ; break;} -case 69: -#line 377 "Gmsh.y" +case 72: +#line 408 "Gmsh.y" { BeginView(1); ; break;} -case 82: -#line 396 "Gmsh.y" +case 85: +#line 427 "Gmsh.y" { List_Add(ActualView->SP, &yyvsp[0].d) ; ; break;} -case 83: -#line 398 "Gmsh.y" +case 86: +#line 429 "Gmsh.y" { List_Add(ActualView->SP, &yyvsp[0].d) ; ; break;} -case 84: -#line 403 "Gmsh.y" +case 87: +#line 434 "Gmsh.y" { List_Add(ActualView->SP, &yyvsp[-5].d); List_Add(ActualView->SP, &yyvsp[-3].d); List_Add(ActualView->SP, &yyvsp[-1].d); ; break;} -case 85: -#line 408 "Gmsh.y" +case 88: +#line 439 "Gmsh.y" { ActualView->NbSP++ ; ; break;} -case 86: -#line 415 "Gmsh.y" +case 89: +#line 446 "Gmsh.y" { List_Add(ActualView->VP, &yyvsp[0].d) ; ; break;} -case 87: -#line 417 "Gmsh.y" +case 90: +#line 448 "Gmsh.y" { List_Add(ActualView->VP, &yyvsp[0].d) ; ; break;} -case 88: -#line 422 "Gmsh.y" +case 91: +#line 453 "Gmsh.y" { List_Add(ActualView->VP, &yyvsp[-5].d); List_Add(ActualView->VP, &yyvsp[-3].d); List_Add(ActualView->VP, &yyvsp[-1].d); ; break;} -case 89: -#line 427 "Gmsh.y" +case 92: +#line 458 "Gmsh.y" { ActualView->NbVP++ ; ; break;} -case 90: -#line 434 "Gmsh.y" +case 93: +#line 465 "Gmsh.y" { List_Add(ActualView->TP, &yyvsp[0].d) ; ; break;} -case 91: -#line 436 "Gmsh.y" +case 94: +#line 467 "Gmsh.y" { List_Add(ActualView->TP, &yyvsp[0].d) ; ; break;} -case 92: -#line 441 "Gmsh.y" +case 95: +#line 472 "Gmsh.y" { List_Add(ActualView->TP, &yyvsp[-5].d); List_Add(ActualView->TP, &yyvsp[-3].d); List_Add(ActualView->TP, &yyvsp[-1].d); ; break;} -case 93: -#line 446 "Gmsh.y" +case 96: +#line 477 "Gmsh.y" { ActualView->NbTP++ ; ; break;} -case 94: -#line 453 "Gmsh.y" +case 97: +#line 484 "Gmsh.y" { List_Add(ActualView->SL, &yyvsp[0].d) ; ; break;} -case 95: -#line 455 "Gmsh.y" +case 98: +#line 486 "Gmsh.y" { List_Add(ActualView->SL, &yyvsp[0].d) ; ; break;} -case 96: -#line 461 "Gmsh.y" +case 99: +#line 492 "Gmsh.y" { List_Add(ActualView->SL, &yyvsp[-11].d); List_Add(ActualView->SL, &yyvsp[-5].d); List_Add(ActualView->SL, &yyvsp[-9].d); List_Add(ActualView->SL, &yyvsp[-3].d); List_Add(ActualView->SL, &yyvsp[-7].d); List_Add(ActualView->SL, &yyvsp[-1].d); ; break;} -case 97: -#line 467 "Gmsh.y" +case 100: +#line 498 "Gmsh.y" { ActualView->NbSL++ ; ; break;} -case 98: -#line 474 "Gmsh.y" +case 101: +#line 505 "Gmsh.y" { List_Add(ActualView->VL, &yyvsp[0].d) ; ; break;} -case 99: -#line 476 "Gmsh.y" +case 102: +#line 507 "Gmsh.y" { List_Add(ActualView->VL, &yyvsp[0].d) ; ; break;} -case 100: -#line 482 "Gmsh.y" +case 103: +#line 513 "Gmsh.y" { List_Add(ActualView->SL, &yyvsp[-11].d); List_Add(ActualView->SL, &yyvsp[-5].d); List_Add(ActualView->SL, &yyvsp[-9].d); List_Add(ActualView->SL, &yyvsp[-3].d); List_Add(ActualView->SL, &yyvsp[-7].d); List_Add(ActualView->SL, &yyvsp[-1].d); ; break;} -case 101: -#line 488 "Gmsh.y" +case 104: +#line 519 "Gmsh.y" { ActualView->NbVL++ ; ; break;} -case 102: -#line 495 "Gmsh.y" +case 105: +#line 526 "Gmsh.y" { List_Add(ActualView->TL, &yyvsp[0].d) ; ; break;} -case 103: -#line 497 "Gmsh.y" +case 106: +#line 528 "Gmsh.y" { List_Add(ActualView->TL, &yyvsp[0].d) ; ; break;} -case 104: -#line 503 "Gmsh.y" +case 107: +#line 534 "Gmsh.y" { List_Add(ActualView->SL, &yyvsp[-11].d); List_Add(ActualView->SL, &yyvsp[-5].d); List_Add(ActualView->SL, &yyvsp[-9].d); List_Add(ActualView->SL, &yyvsp[-3].d); List_Add(ActualView->SL, &yyvsp[-7].d); List_Add(ActualView->SL, &yyvsp[-1].d); ; break;} -case 105: -#line 509 "Gmsh.y" +case 108: +#line 540 "Gmsh.y" { ActualView->NbTL++ ; ; break;} -case 106: -#line 516 "Gmsh.y" +case 109: +#line 547 "Gmsh.y" { List_Add(ActualView->ST, &yyvsp[0].d) ; ; break;} -case 107: -#line 518 "Gmsh.y" +case 110: +#line 549 "Gmsh.y" { List_Add(ActualView->ST, &yyvsp[0].d) ; ; break;} -case 108: -#line 525 "Gmsh.y" +case 111: +#line 556 "Gmsh.y" { List_Add(ActualView->ST, &yyvsp[-17].d); List_Add(ActualView->ST, &yyvsp[-11].d); List_Add(ActualView->ST, &yyvsp[-5].d); @@ -2634,22 +3318,22 @@ case 108: List_Add(ActualView->ST, &yyvsp[-1].d); ; break;} -case 109: -#line 534 "Gmsh.y" +case 112: +#line 565 "Gmsh.y" { ActualView->NbST++ ; ; break;} -case 110: -#line 541 "Gmsh.y" +case 113: +#line 572 "Gmsh.y" { List_Add(ActualView->VT, &yyvsp[0].d) ; ; break;} -case 111: -#line 543 "Gmsh.y" +case 114: +#line 574 "Gmsh.y" { List_Add(ActualView->VT, &yyvsp[0].d) ; ; break;} -case 112: -#line 550 "Gmsh.y" +case 115: +#line 581 "Gmsh.y" { List_Add(ActualView->VT, &yyvsp[-17].d); List_Add(ActualView->VT, &yyvsp[-11].d); List_Add(ActualView->VT, &yyvsp[-5].d); @@ -2659,22 +3343,22 @@ case 112: List_Add(ActualView->VT, &yyvsp[-1].d); ; break;} -case 113: -#line 559 "Gmsh.y" +case 116: +#line 590 "Gmsh.y" { ActualView->NbVT++ ; ; break;} -case 114: -#line 566 "Gmsh.y" +case 117: +#line 597 "Gmsh.y" { List_Add(ActualView->TT, &yyvsp[0].d) ; ; break;} -case 115: -#line 568 "Gmsh.y" +case 118: +#line 599 "Gmsh.y" { List_Add(ActualView->TT, &yyvsp[0].d) ; ; break;} -case 116: -#line 575 "Gmsh.y" +case 119: +#line 606 "Gmsh.y" { List_Add(ActualView->TT, &yyvsp[-17].d); List_Add(ActualView->TT, &yyvsp[-11].d); List_Add(ActualView->TT, &yyvsp[-5].d); @@ -2684,22 +3368,22 @@ case 116: List_Add(ActualView->TT, &yyvsp[-1].d); ; break;} -case 117: -#line 584 "Gmsh.y" +case 120: +#line 615 "Gmsh.y" { ActualView->NbTT++ ; ; break;} -case 118: -#line 591 "Gmsh.y" +case 121: +#line 622 "Gmsh.y" { List_Add(ActualView->SS, &yyvsp[0].d) ; ; break;} -case 119: -#line 593 "Gmsh.y" +case 122: +#line 624 "Gmsh.y" { List_Add(ActualView->SS, &yyvsp[0].d) ; ; break;} -case 120: -#line 601 "Gmsh.y" +case 123: +#line 632 "Gmsh.y" { List_Add(ActualView->SS, &yyvsp[-23].d); List_Add(ActualView->SS, &yyvsp[-17].d); List_Add(ActualView->SS, &yyvsp[-11].d); List_Add(ActualView->SS, &yyvsp[-5].d); @@ -2709,22 +3393,22 @@ case 120: List_Add(ActualView->SS, &yyvsp[-7].d); List_Add(ActualView->SS, &yyvsp[-1].d); ; break;} -case 121: -#line 610 "Gmsh.y" +case 124: +#line 641 "Gmsh.y" { ActualView->NbSS++ ; ; break;} -case 122: -#line 617 "Gmsh.y" +case 125: +#line 648 "Gmsh.y" { List_Add(ActualView->VS, &yyvsp[0].d) ; ; break;} -case 123: -#line 619 "Gmsh.y" +case 126: +#line 650 "Gmsh.y" { List_Add(ActualView->VS, &yyvsp[0].d) ; ; break;} -case 124: -#line 627 "Gmsh.y" +case 127: +#line 658 "Gmsh.y" { List_Add(ActualView->VS, &yyvsp[-23].d); List_Add(ActualView->VS, &yyvsp[-17].d); List_Add(ActualView->VS, &yyvsp[-11].d); List_Add(ActualView->VS, &yyvsp[-5].d); @@ -2734,22 +3418,22 @@ case 124: List_Add(ActualView->VS, &yyvsp[-7].d); List_Add(ActualView->VS, &yyvsp[-1].d); ; break;} -case 125: -#line 636 "Gmsh.y" +case 128: +#line 667 "Gmsh.y" { ActualView->NbVS++ ; ; break;} -case 126: -#line 643 "Gmsh.y" +case 129: +#line 674 "Gmsh.y" { List_Add(ActualView->TS, &yyvsp[0].d) ; ; break;} -case 127: -#line 645 "Gmsh.y" +case 130: +#line 676 "Gmsh.y" { List_Add(ActualView->TS, &yyvsp[0].d) ; ; break;} -case 128: -#line 653 "Gmsh.y" +case 131: +#line 684 "Gmsh.y" { List_Add(ActualView->TS, &yyvsp[-23].d); List_Add(ActualView->TS, &yyvsp[-17].d); List_Add(ActualView->TS, &yyvsp[-11].d); List_Add(ActualView->TS, &yyvsp[-5].d); @@ -2759,38 +3443,38 @@ case 128: List_Add(ActualView->TS, &yyvsp[-7].d); List_Add(ActualView->TS, &yyvsp[-1].d); ; break;} -case 129: -#line 662 "Gmsh.y" +case 132: +#line 693 "Gmsh.y" { ActualView->NbTS++ ; ; break;} -case 130: -#line 675 "Gmsh.y" +case 133: +#line 706 "Gmsh.y" { TheSymbol.Name = yyvsp[-3].c; TheSymbol.val = yyvsp[-1].d; List_Replace(Symbol_L,&TheSymbol,CompareSymbols); ; break;} -case 131: -#line 692 "Gmsh.y" +case 134: +#line 723 "Gmsh.y" { Cdbpts101((int)yyvsp[-4].d,yyvsp[-1].v[0],yyvsp[-1].v[1],yyvsp[-1].v[2],yyvsp[-1].v[3],yyvsp[-1].v[4]); yyval.s.Type = MSH_POINT; yyval.s.Num = (int)yyvsp[-4].d; ; break;} -case 132: -#line 699 "Gmsh.y" +case 135: +#line 730 "Gmsh.y" { Cdbz101((int)yyvsp[-4].d,MSH_PHYSICAL_POINT,0,0,0,0,0,NULL,yyvsp[-1].l,NULL); yyval.s.Type = MSH_PHYSICAL_POINT; yyval.s.Num = (int)yyvsp[-4].d; ; break;} -case 133: -#line 705 "Gmsh.y" +case 136: +#line 736 "Gmsh.y" { Vertex *v; Attractor *a; @@ -2810,8 +3494,8 @@ case 133: } ; break;} -case 134: -#line 724 "Gmsh.y" +case 137: +#line 755 "Gmsh.y" { for(i=0;i<List_Nbr(yyvsp[-3].l);i++){ List_Read(yyvsp[-3].l,i,&d); @@ -2823,31 +3507,31 @@ case 134: } ; break;} -case 135: -#line 735 "Gmsh.y" +case 138: +#line 766 "Gmsh.y" { yyval.s.Type = MSH_POINT; yyval.s.Num = (int)yyvsp[-2].d; ; break;} -case 136: -#line 743 "Gmsh.y" +case 139: +#line 774 "Gmsh.y" { Cdbseg101((int)yyvsp[-4].d,MSH_SEGM_LINE,1,yyvsp[-1].l,NULL,-1,-1,0.,1.,NULL,NULL,NULL); yyval.s.Type = MSH_SEGM_LINE; yyval.s.Num = (int)yyvsp[-4].d; ; break;} -case 137: -#line 749 "Gmsh.y" +case 140: +#line 780 "Gmsh.y" { Cdbseg101((int)yyvsp[-4].d,MSH_SEGM_SPLN,3,yyvsp[-1].l,NULL,-1,-1,0.,1.,NULL,NULL,NULL); yyval.s.Type = MSH_SEGM_SPLN; yyval.s.Num = (int)yyvsp[-4].d; ; break;} -case 138: -#line 755 "Gmsh.y" +case 141: +#line 786 "Gmsh.y" { Curve *c; Attractor *a; @@ -2867,16 +3551,16 @@ case 138: } ; break;} -case 139: -#line 774 "Gmsh.y" +case 142: +#line 805 "Gmsh.y" { Cdbseg101((int)yyvsp[-4].d,MSH_SEGM_CIRC,2,yyvsp[-1].l,NULL,-1,-1,0.,1.,NULL,NULL,NULL); yyval.s.Type = MSH_SEGM_CIRC ; yyval.s.Num = (int)yyvsp[-4].d; ; break;} -case 140: -#line 780 "Gmsh.y" +case 143: +#line 811 "Gmsh.y" { List_T *temp; int i,j; @@ -2893,48 +3577,48 @@ case 140: yyval.s.Num = (int)yyvsp[-6].d; ; break;} -case 141: -#line 797 "Gmsh.y" +case 144: +#line 828 "Gmsh.y" { Cdbseg101((int)yyvsp[-14].d,MSH_SEGM_PARAMETRIC,2,NULL,NULL,-1,-1,yyvsp[-10].d,yyvsp[-8].d,yyvsp[-6].c,yyvsp[-4].c,yyvsp[-2].c); yyval.s.Type = MSH_SEGM_PARAMETRIC ; yyval.s.Num = (int)yyvsp[-14].d; ; break;} -case 142: -#line 803 "Gmsh.y" +case 145: +#line 834 "Gmsh.y" { Cdbseg101((int)yyvsp[-4].d,MSH_SEGM_ELLI,2,yyvsp[-1].l,NULL,-1,-1,0.,1.,NULL,NULL,NULL); yyval.s.Type = MSH_SEGM_ELLI ; yyval.s.Num = (int)yyvsp[-4].d; ; break;} -case 143: -#line 809 "Gmsh.y" +case 146: +#line 840 "Gmsh.y" { Cdbz101((int)yyvsp[-4].d,MSH_PHYSICAL_LINE,0,0,0,0,0,NULL,yyvsp[-1].l,NULL); yyval.s.Type = MSH_PHYSICAL_LINE; yyval.s.Num = (int)yyvsp[-4].d; ; break;} -case 144: -#line 815 "Gmsh.y" +case 147: +#line 846 "Gmsh.y" { yyval.s.Type = MSH_SEGM_LOOP; Cdbz101((int)yyvsp[-4].d,yyval.s.Type,0,0,0,0,0,NULL,yyvsp[-1].l,NULL); yyval.s.Num = (int)yyvsp[-4].d; ; break;} -case 145: -#line 821 "Gmsh.y" +case 148: +#line 852 "Gmsh.y" { Cdbseg101((int)yyvsp[-4].d,MSH_SEGM_BSPLN,2,yyvsp[-1].l,NULL,-1,-1,0.,1.,NULL,NULL,NULL); yyval.s.Type = MSH_SEGM_BSPLN; yyval.s.Num = (int)yyvsp[-4].d; ; break;} -case 146: -#line 827 "Gmsh.y" +case 149: +#line 858 "Gmsh.y" { List_T *Temp; int i; @@ -2954,8 +3638,8 @@ case 146: List_Delete(Temp); ; break;} -case 147: -#line 846 "Gmsh.y" +case 150: +#line 877 "Gmsh.y" { yyval.s.Num = (int)yyvsp[-2].d; Curve *c = FindCurve(yyval.s.Num,THEM); @@ -2965,16 +3649,16 @@ case 147: yyval.s.Type = c->Typ; ; break;} -case 148: -#line 858 "Gmsh.y" +case 151: +#line 889 "Gmsh.y" { Cdbz101((int)yyvsp[-4].d,MSH_SURF_PLAN,0,0,0,0,0,NULL,yyvsp[-1].l,NULL); yyval.s.Type = MSH_SURF_PLAN; yyval.s.Num = (int)yyvsp[-4].d; ; break;} -case 149: -#line 864 "Gmsh.y" +case 152: +#line 895 "Gmsh.y" { Surface *s,*support; support = FindSurface((int)yyvsp[-2].d,THEM); @@ -2994,8 +3678,8 @@ case 149: } ; break;} -case 150: -#line 883 "Gmsh.y" +case 153: +#line 914 "Gmsh.y" { List_Read(yyvsp[-1].l,0,&d); i = (int)d; @@ -3017,38 +3701,38 @@ case 150: } ; break;} -case 151: -#line 906 "Gmsh.y" +case 154: +#line 937 "Gmsh.y" { CreateNurbsSurface ( (int) yyvsp[-16].d , (int)yyvsp[-4].d , (int)yyvsp[-2].d , yyvsp[-13].l, yyvsp[-10].l, yyvsp[-8].l); yyval.s.Type = MSH_SURF_NURBS; yyval.s.Num = (int)yyvsp[-16].d; ; break;} -case 152: -#line 914 "Gmsh.y" +case 155: +#line 945 "Gmsh.y" { CreateNurbsSurfaceSupport ((int)yyvsp[-16].d, (int) yyvsp[-4].d , (int) yyvsp[-2].d , yyvsp[-13].l, yyvsp[-10].l, yyvsp[-8].l); ; break;} -case 153: -#line 918 "Gmsh.y" +case 156: +#line 949 "Gmsh.y" { Cdbz101((int)yyvsp[-4].d,MSH_PHYSICAL_SURFACE,0,0,0,0,0,NULL,yyvsp[-1].l,NULL); yyval.s.Type = MSH_PHYSICAL_SURFACE; yyval.s.Num = (int)yyvsp[-4].d; ; break;} -case 154: -#line 924 "Gmsh.y" +case 157: +#line 955 "Gmsh.y" { Cdbz101((int)yyvsp[-4].d,MSH_SURF_LOOP,0,0,0,0,0,NULL,yyvsp[-1].l,NULL); yyval.s.Type = MSH_SURF_LOOP; yyval.s.Num = (int)yyvsp[-4].d; ; break;} -case 155: -#line 930 "Gmsh.y" +case 158: +#line 961 "Gmsh.y" { yyval.s.Num = (int)yyvsp[-2].d; Surface *s = FindSurface(yyval.s.Num,THEM); @@ -3058,85 +3742,85 @@ case 155: yyval.s.Type = s->Typ; ; break;} -case 156: -#line 942 "Gmsh.y" +case 159: +#line 973 "Gmsh.y" { Cdbz101((int)yyvsp[-4].d,MSH_VOLUME,0,0,0,0,0,NULL,yyvsp[-1].l,NULL); yyval.s.Type = MSH_VOLUME; yyval.s.Num = (int)yyvsp[-4].d; ; break;} -case 157: -#line 948 "Gmsh.y" +case 160: +#line 979 "Gmsh.y" { Cdbz101((int)yyvsp[-4].d,MSH_VOLUME,0,0,0,0,0,NULL,yyvsp[-1].l,NULL); yyval.s.Type = MSH_VOLUME; yyval.s.Num = (int)yyvsp[-4].d; ; break;} -case 158: -#line 954 "Gmsh.y" +case 161: +#line 985 "Gmsh.y" { Cdbz101((int)yyvsp[-4].d,MSH_PHYSICAL_VOLUME,0,0,0,0,0,NULL,yyvsp[-1].l,NULL); yyval.s.Type = MSH_PHYSICAL_VOLUME; yyval.s.Num = (int)yyvsp[-4].d; ; break;} -case 159: -#line 967 "Gmsh.y" +case 162: +#line 998 "Gmsh.y" { TranslateShapes (yyvsp[-3].v[0],yyvsp[-3].v[1],yyvsp[-3].v[2],yyvsp[-1].l,1); yyval.l = yyvsp[-1].l; ; break;} -case 160: -#line 972 "Gmsh.y" +case 163: +#line 1003 "Gmsh.y" { RotateShapes(yyvsp[-8].v[0],yyvsp[-8].v[1],yyvsp[-8].v[2],yyvsp[-6].v[0],yyvsp[-6].v[1],yyvsp[-6].v[2],yyvsp[-4].d,yyvsp[-1].l); yyval.l = yyvsp[-1].l; ; break;} -case 161: -#line 977 "Gmsh.y" +case 164: +#line 1008 "Gmsh.y" { SymmetryShapes(yyvsp[-3].v[0],yyvsp[-3].v[1],yyvsp[-3].v[2],yyvsp[-3].v[3],yyvsp[-1].l,1); yyval.l = yyvsp[-1].l; ; break;} -case 162: -#line 982 "Gmsh.y" +case 165: +#line 1013 "Gmsh.y" { DilatShapes(yyvsp[-6].v[0],yyvsp[-6].v[1],yyvsp[-6].v[2],yyvsp[-4].d,yyvsp[-1].l,1); yyval.l = yyvsp[-1].l; ; break;} -case 163: -#line 989 "Gmsh.y" +case 166: +#line 1020 "Gmsh.y" { yyval.l = yyvsp[0].l; ; break;} -case 164: -#line 990 "Gmsh.y" +case 167: +#line 1021 "Gmsh.y" { yyval.l = yyvsp[0].l; ; break;} -case 165: -#line 991 "Gmsh.y" +case 168: +#line 1022 "Gmsh.y" { yyval.l = yyvsp[0].l; ; break;} -case 166: -#line 996 "Gmsh.y" +case 169: +#line 1027 "Gmsh.y" { yyval.l = List_Create(3,3,sizeof(Shape)); ; break;} -case 167: -#line 1000 "Gmsh.y" +case 170: +#line 1031 "Gmsh.y" { List_Add(yyval.l,&yyvsp[0].s); yyval.l = yyvsp[-1].l; ; break;} -case 168: -#line 1012 "Gmsh.y" +case 171: +#line 1043 "Gmsh.y" { yyval.l = List_Create(3,3,sizeof(Shape)); for(i=0;i<List_Nbr(yyvsp[-1].l);i++){ @@ -3147,8 +3831,8 @@ case 168: } ; break;} -case 169: -#line 1030 "Gmsh.y" +case 172: +#line 1061 "Gmsh.y" { for(i=0;i<List_Nbr(yyvsp[-1].l);i++){ List_Read (yyvsp[-1].l,i,&TheShape); @@ -3156,8 +3840,8 @@ case 169: } ; break;} -case 170: -#line 1045 "Gmsh.y" +case 173: +#line 1076 "Gmsh.y" { yyinTab[RecursionLevel++] = yyin; strcpy(tmpstring, ThePathForIncludes); @@ -3180,8 +3864,8 @@ case 170: } ; break;} -case 171: -#line 1073 "Gmsh.y" +case 174: +#line 1104 "Gmsh.y" { char ext[6]; strcpy(ext,yyvsp[-1].c+(strlen(yyvsp[-1].c)-4)); @@ -3212,22 +3896,22 @@ case 171: } ; break;} -case 172: -#line 1103 "Gmsh.y" +case 175: +#line 1134 "Gmsh.y" { exit(0); ; break;} -case 173: -#line 1107 "Gmsh.y" +case 176: +#line 1138 "Gmsh.y" { FILE *ff = yyin; MergeProblem(yyvsp[-1].c); yyin = ff; ; break;} -case 174: -#line 1121 "Gmsh.y" +case 177: +#line 1152 "Gmsh.y" { FILE* ff; if(RecursionLevel) @@ -3241,8 +3925,8 @@ case 174: fgetpos( ff, &yyposImbricatedLoopsTab[ImbricatedLoop++]); ; break;} -case 175: -#line 1134 "Gmsh.y" +case 178: +#line 1165 "Gmsh.y" { FILE* ff; if(RecursionLevel) @@ -3256,8 +3940,8 @@ case 175: fgetpos( ff, &yyposImbricatedLoopsTab[ImbricatedLoop++]); ; break;} -case 176: -#line 1147 "Gmsh.y" +case 179: +#line 1178 "Gmsh.y" { if(LoopControlVariablesTab[ImbricatedLoop-1][1] > LoopControlVariablesTab[ImbricatedLoop-1][0]) @@ -3277,71 +3961,71 @@ case 176: } ; break;} -case 177: -#line 1186 "Gmsh.y" +case 180: +#line 1217 "Gmsh.y" { Curve *pc, *prc; Extrude_ProtudePoint(1,(int)yyvsp[-4].d,yyvsp[-2].v[0],yyvsp[-2].v[1],yyvsp[-2].v[2],0.,0.,0.,0.,&pc,&prc,NULL); ; break;} -case 178: -#line 1191 "Gmsh.y" +case 181: +#line 1222 "Gmsh.y" { Curve *pc, *prc; Extrude_ProtudePoint(0,(int)yyvsp[-8].d,yyvsp[-6].v[0],yyvsp[-6].v[1],yyvsp[-6].v[2],yyvsp[-4].v[0],yyvsp[-4].v[1],yyvsp[-4].v[2],yyvsp[-2].d, &pc,&prc,NULL); ; break;} -case 179: -#line 1197 "Gmsh.y" +case 182: +#line 1228 "Gmsh.y" { Extrude_ProtudeCurve(1,(int)yyvsp[-4].d,yyvsp[-2].v[0],yyvsp[-2].v[1],yyvsp[-2].v[2],0.,0.,0.,0.,NULL); ; break;} -case 180: -#line 1201 "Gmsh.y" +case 183: +#line 1232 "Gmsh.y" { Extrude_ProtudeCurve(0,(int)yyvsp[-8].d,yyvsp[-6].v[0],yyvsp[-6].v[1],yyvsp[-6].v[2],yyvsp[-4].v[0],yyvsp[-4].v[1],yyvsp[-4].v[2],yyvsp[-2].d,NULL); ; break;} -case 181: -#line 1205 "Gmsh.y" +case 184: +#line 1236 "Gmsh.y" { Extrude_ProtudeSurface(1,(int)yyvsp[-4].d,yyvsp[-2].v[0],yyvsp[-2].v[1],yyvsp[-2].v[2],0.,0.,0.,0.,0,NULL); ; break;} -case 182: -#line 1209 "Gmsh.y" +case 185: +#line 1240 "Gmsh.y" { Extrude_ProtudeSurface(0,(int)yyvsp[-8].d,yyvsp[-6].v[0],yyvsp[-6].v[1],yyvsp[-6].v[2],yyvsp[-4].v[0],yyvsp[-4].v[1],yyvsp[-4].v[2],yyvsp[-2].d,0,NULL); ; break;} -case 183: -#line 1213 "Gmsh.y" +case 186: +#line 1244 "Gmsh.y" { int vol = NEWREG(); Extrude_ProtudeSurface(1,(int)yyvsp[-7].d,yyvsp[-5].v[0],yyvsp[-5].v[1],yyvsp[-5].v[2],0.,0.,0.,0.,vol,&extr); ; break;} -case 184: -#line 1218 "Gmsh.y" +case 187: +#line 1249 "Gmsh.y" { int vol = NEWREG(); Extrude_ProtudeSurface(0,(int)yyvsp[-11].d,yyvsp[-9].v[0],yyvsp[-9].v[1],yyvsp[-9].v[2],yyvsp[-7].v[0],yyvsp[-7].v[1],yyvsp[-7].v[2],yyvsp[-5].d,vol,&extr); ; break;} -case 185: -#line 1226 "Gmsh.y" +case 188: +#line 1257 "Gmsh.y" { ; break;} -case 186: -#line 1229 "Gmsh.y" +case 189: +#line 1260 "Gmsh.y" { ; break;} -case 187: -#line 1235 "Gmsh.y" +case 190: +#line 1266 "Gmsh.y" { double d; int j; @@ -3359,14 +4043,14 @@ case 187: } ; break;} -case 188: -#line 1252 "Gmsh.y" +case 191: +#line 1283 "Gmsh.y" { extr.mesh.Recombine = true; ; break;} -case 189: -#line 1263 "Gmsh.y" +case 192: +#line 1294 "Gmsh.y" { Curve *c; for(i=0;i<List_Nbr(yyvsp[-3].l);i++){ @@ -3384,8 +4068,8 @@ case 189: } ; break;} -case 190: -#line 1280 "Gmsh.y" +case 193: +#line 1311 "Gmsh.y" { Curve *c; for(i=0;i<List_Nbr(yyvsp[-6].l);i++){ @@ -3403,8 +4087,8 @@ case 190: } ; break;} -case 191: -#line 1297 "Gmsh.y" +case 194: +#line 1328 "Gmsh.y" { Curve *c; for(i=0;i<List_Nbr(yyvsp[-6].l);i++){ @@ -3422,8 +4106,8 @@ case 191: } ; break;} -case 192: -#line 1314 "Gmsh.y" +case 195: +#line 1345 "Gmsh.y" { Surface *s = FindSurface((int)yyvsp[-4].d,THEM); if(!s) @@ -3445,8 +4129,8 @@ case 192: } ; break;} -case 193: -#line 1335 "Gmsh.y" +case 196: +#line 1366 "Gmsh.y" { Surface *s = FindSurface((int)yyvsp[-4].d,THEM); if(!s) @@ -3467,8 +4151,8 @@ case 193: } ; break;} -case 194: -#line 1355 "Gmsh.y" +case 197: +#line 1386 "Gmsh.y" { Volume *v = FindVolume((int)yyvsp[-4].d,THEM); if(!v) @@ -3489,8 +4173,8 @@ case 194: } ; break;} -case 195: -#line 1375 "Gmsh.y" +case 198: +#line 1406 "Gmsh.y" { Surface *s; for(i=0;i<List_Nbr(yyvsp[-3].l);i++){ @@ -3508,8 +4192,8 @@ case 195: } ; break;} -case 196: -#line 1392 "Gmsh.y" +case 199: +#line 1423 "Gmsh.y" { Surface *s; for(i=0;i<List_Nbr(yyvsp[-1].l);i++){ @@ -3527,326 +4211,407 @@ case 196: } ; break;} -case 197: -#line 1417 "Gmsh.y" +case 200: +#line 1448 "Gmsh.y" { Coherence_PS(); ; break;} -case 207: -#line 1446 "Gmsh.y" -{ - if(!Set_StringOption(yyvsp[-3].c, GeneralOptions_String, yyvsp[-1].c)) - vyyerror("Unknown General Option (String) '%s'", yyvsp[-3].c); - ; - break;} -case 208: -#line 1451 "Gmsh.y" -{ - if(!Set_NumberOption(yyvsp[-3].c, GeneralOptions_Number, yyvsp[-1].d)) - vyyerror("Unknown General Option (Number) '%s'", yyvsp[-3].c); - ; - break;} -case 209: -#line 1456 "Gmsh.y" -{ if(!Set_ArrayOption(yyvsp[-3].c, GeneralOptions_Array, yyvsp[-1].v)) - vyyerror("Unknown General Option (Array) '%s'", yyvsp[-3].c); - ; - break;} -case 210: -#line 1460 "Gmsh.y" -{ ColorField = GeneralOptions_Color; ; - break;} -case 214: -#line 1471 "Gmsh.y" -{ - if(!Set_StringOption(yyvsp[-3].c, GeometryOptions_String, yyvsp[-1].c)) - vyyerror("Unknown Geometry Option (String) '%s'", yyvsp[-3].c); - ; - break;} -case 215: -#line 1476 "Gmsh.y" -{ - if(!Set_NumberOption(yyvsp[-3].c, GeometryOptions_Number, yyvsp[-1].d)) - vyyerror("Unknown Geometry Option (Number) '%s'", yyvsp[-3].c); - ; - break;} -case 216: -#line 1481 "Gmsh.y" +case 203: +#line 1464 "Gmsh.y" { - if(!Set_ArrayOption(yyvsp[-3].c, GeometryOptions_Array, yyvsp[-1].v)) - vyyerror("Unknown Geometry Option (Array) '%s'", yyvsp[-3].c); ; break;} -case 217: -#line 1486 "Gmsh.y" -{ ColorField = GeometryOptions_Color; ; - break;} -case 221: -#line 1497 "Gmsh.y" +case 204: +#line 1467 "Gmsh.y" { - if(!Set_StringOption(yyvsp[-3].c, MeshOptions_String, yyvsp[-1].c)) - vyyerror("Unknown Mesh Option (String) '%s'", yyvsp[-3].c); + if(!(pStrCat = Get_StringOptionCategory(yyvsp[-5].c))) + vyyerror("Unknown String Option Class '%s'", yyvsp[-5].c); + else{ + if(!(pStrOpt = Get_StringOption(yyvsp[-3].c, pStrCat))) + vyyerror("Unknown String Option '%s.%s'", yyvsp[-5].c, yyvsp[-3].c); + else{ + *pStrOpt = yyvsp[-1].c ; + } + } ; break;} -case 222: -#line 1502 "Gmsh.y" +case 205: +#line 1479 "Gmsh.y" { - if(!Set_NumberOption(yyvsp[-3].c, MeshOptions_Number, yyvsp[-1].d)) - vyyerror("Unknown Mesh Option (Number) '%s'", yyvsp[-3].c); + if(!(pNumCat = Get_NumberOptionCategory(yyvsp[-5].c))) + vyyerror("Unknown Numeric Option Class '%s'", yyvsp[-5].c); + else{ + if(!(pNumOpt = Get_NumberOption(yyvsp[-3].c, pNumCat, &i))) + vyyerror("Unknown Numeric Option '%s.%s'", yyvsp[-5].c, yyvsp[-3].c); + else{ + switch(i){ + case GMSH_DOUBLE : *(double*)pNumOpt = yyvsp[-1].d ; break ; + case GMSH_FLOAT : *(float*)pNumOpt = (float)yyvsp[-1].d ; break ; + case GMSH_LONG : *(long*)pNumOpt = (long)yyvsp[-1].d ; break ; + case GMSH_INT : *(int*)pNumOpt = (int)yyvsp[-1].d ; break ; + } + } + } ; break;} -case 223: -#line 1507 "Gmsh.y" +case 206: +#line 1496 "Gmsh.y" { - if(!Set_ArrayOption(yyvsp[-3].c, MeshOptions_Array, yyvsp[-1].v)) - vyyerror("Unknown Mesh Option (Array) '%s'", yyvsp[-3].c); - ; - break;} -case 224: -#line 1512 "Gmsh.y" -{ ColorField = MeshOptions_Color; ; - break;} -case 228: -#line 1523 "Gmsh.y" -{ - if(!Set_StringOption(yyvsp[-3].c, PostProcessingOptions_String, yyvsp[-1].c)) - vyyerror("Unknown PostProcessing Option (String) '%s'", yyvsp[-3].c); - ; - break;} -case 229: -#line 1528 "Gmsh.y" -{ - if(!Set_NumberOption(yyvsp[-3].c, PostProcessingOptions_Number, yyvsp[-1].d)) - vyyerror("Unknown PostProcessing Option (Number) '%s'", yyvsp[-3].c); - ; - break;} -case 230: -#line 1533 "Gmsh.y" -{ - if(!Set_ArrayOption(yyvsp[-3].c, PostProcessingOptions_Array, yyvsp[-1].v)) - vyyerror("Unknown PostProcessing (Array) Option '%s'", yyvsp[-3].c); + if(!(pNumCat = Get_NumberOptionCategory(yyvsp[-5].c))) + vyyerror("Unknown Numeric Option Class '%s'", yyvsp[-5].c); + else{ + if(!(pNumOpt = Get_NumberOption(yyvsp[-3].c, pNumCat, &i))) + vyyerror("Unknown Numeric Option '%s.%s'", yyvsp[-5].c, yyvsp[-3].c); + else{ + switch(i){ + case GMSH_DOUBLE : *(double*)pNumOpt += yyvsp[-1].d ; break ; + case GMSH_FLOAT : *(float*)pNumOpt += (float)yyvsp[-1].d ; break ; + case GMSH_LONG : *(long*)pNumOpt += (long)yyvsp[-1].d ; break ; + case GMSH_INT : *(int*)pNumOpt += (int)yyvsp[-1].d ; break ; + } + } + } ; break;} -case 231: -#line 1538 "Gmsh.y" -{ ColorField = PostProcessingOptions_Color; ; - break;} -case 235: -#line 1549 "Gmsh.y" +case 207: +#line 1513 "Gmsh.y" { - if(!Set_StringOption(yyvsp[-3].c, PrintOptions_String, yyvsp[-1].c)) - vyyerror("Unknown Print Option (String) '%s'", yyvsp[-3].c); + if(!(pNumCat = Get_NumberOptionCategory(yyvsp[-5].c))) + vyyerror("Unknown Numeric Option Class '%s'", yyvsp[-5].c); + else{ + if(!(pNumOpt = Get_NumberOption(yyvsp[-3].c, pNumCat, &i))) + vyyerror("Unknown Numeric Option '%s.%s'", yyvsp[-5].c, yyvsp[-3].c); + else{ + switch(i){ + case GMSH_DOUBLE : *(double*)pNumOpt -= yyvsp[-1].d ; break ; + case GMSH_FLOAT : *(float*)pNumOpt -= (float)yyvsp[-1].d ; break ; + case GMSH_LONG : *(long*)pNumOpt -= (long)yyvsp[-1].d ; break ; + case GMSH_INT : *(int*)pNumOpt -= (int)yyvsp[-1].d ; break ; + } + } + } ; break;} -case 236: -#line 1554 "Gmsh.y" +case 208: +#line 1530 "Gmsh.y" { - if(!Set_NumberOption(yyvsp[-3].c, PrintOptions_Number, yyvsp[-1].d)) - vyyerror("Unknown Print Option (Number) '%s'", yyvsp[-3].c); + if(!(pNumCat = Get_NumberOptionCategory(yyvsp[-5].c))) + vyyerror("Unknown Numeric Option Class '%s'", yyvsp[-5].c); + else{ + if(!(pNumOpt = Get_NumberOption(yyvsp[-3].c, pNumCat, &i))) + vyyerror("Unknown Numeric Option '%s.%s'", yyvsp[-5].c, yyvsp[-3].c); + else{ + switch(i){ + case GMSH_DOUBLE : *(double*)pNumOpt *= yyvsp[-1].d ; break ; + case GMSH_FLOAT : *(float*)pNumOpt *= (float)yyvsp[-1].d ; break ; + case GMSH_LONG : *(long*)pNumOpt *= (long)yyvsp[-1].d ; break ; + case GMSH_INT : *(int*)pNumOpt *= (int)yyvsp[-1].d ; break ; + } + } + } ; break;} -case 237: -#line 1559 "Gmsh.y" +case 209: +#line 1547 "Gmsh.y" { - if(!Set_ArrayOption(yyvsp[-3].c, PrintOptions_Array, yyvsp[-1].v)) - vyyerror("Unknown Print Option (Array) '%s'", yyvsp[-3].c); + if(!(pNumCat = Get_NumberOptionCategory(yyvsp[-5].c))) + vyyerror("Unknown Numeric Option Class '%s'", yyvsp[-5].c); + else{ + if(!(pNumOpt = Get_NumberOption(yyvsp[-3].c, pNumCat, &i))) + vyyerror("Unknown Numeric Option '%s.%s'", yyvsp[-5].c, yyvsp[-3].c); + else{ + switch(i){ + case GMSH_DOUBLE : *(double*)pNumOpt /= yyvsp[-1].d ; break ; + case GMSH_FLOAT : *(float*)pNumOpt /= (float)yyvsp[-1].d ; break ; + case GMSH_LONG : *(long*)pNumOpt /= (long)yyvsp[-1].d ; break ; + case GMSH_INT : *(int*)pNumOpt /= (int)yyvsp[-1].d ; break ; + } + } + } ; break;} -case 238: +case 210: #line 1564 "Gmsh.y" -{ ColorField = PrintOptions_Color; ; - break;} -case 242: -#line 1575 "Gmsh.y" { - i = Get_ColorForString(ColorString, -1, yyvsp[-1].c, &flag); - if(flag) vyyerror("Unknown Color '%s'", yyvsp[-1].c); - if(!Set_ColorOption(yyvsp[-3].c, ColorField, i)) - vyyerror("Unknown Color Field '%s'", yyvsp[-3].c); - ; - break;} -case 243: -#line 1582 "Gmsh.y" -{ - i = Get_ColorForString(ColorString, (int)yyvsp[-2].d, yyvsp[-4].c, &flag); - if(flag) vyyerror("Unknown Color '%s'", yyvsp[-4].c); - if(!Set_ColorOption(yyvsp[-7].c, ColorField, i)) - vyyerror("Unknown Color Field '%s'", yyvsp[-7].c); + if(!(pNumCat = Get_NumberOptionCategory(yyvsp[-4].c))) + vyyerror("Unknown Numeric Option Class '%s'", yyvsp[-4].c); + else{ + if(!(pNumOpt = Get_NumberOption(yyvsp[-2].c, pNumCat, &i))) + vyyerror("Unknown Numeric Option '%s.%s'", yyvsp[-4].c, yyvsp[-2].c); + else{ + switch(i){ + case GMSH_DOUBLE : *(double*)pNumOpt += 1. ; break ; + case GMSH_FLOAT : *(float*)pNumOpt += 1. ; break ; + case GMSH_LONG : *(long*)pNumOpt += 1 ; break ; + case GMSH_INT : *(int*)pNumOpt += 1 ; break ; + } + } + } ; break;} -case 244: -#line 1589 "Gmsh.y" +case 211: +#line 1581 "Gmsh.y" { - if(!Set_ColorOption(yyvsp[-3].c, ColorField, - PACK_COLOR((int)yyvsp[-1].v[0], (int)yyvsp[-1].v[1], (int)yyvsp[-1].v[2], (int)yyvsp[-1].v[3]))) - vyyerror("Unknown Color Field '%s'", yyvsp[-3].c); + if(!(pNumCat = Get_NumberOptionCategory(yyvsp[-4].c))) + vyyerror("Unknown Numeric Option Class '%s'", yyvsp[-4].c); + else{ + if(!(pNumOpt = Get_NumberOption(yyvsp[-2].c, pNumCat, &i))) + vyyerror("Unknown Numeric Option '%s.%s'", yyvsp[-4].c, yyvsp[-2].c); + else{ + switch(i){ + case GMSH_DOUBLE : *(double*)pNumOpt -= 1. ; break ; + case GMSH_FLOAT : *(float*)pNumOpt -= 1. ; break ; + case GMSH_LONG : *(long*)pNumOpt -= 1 ; break ; + case GMSH_INT : *(int*)pNumOpt -= 1 ; break ; + } + } + } ; break;} -case 245: +case 212: #line 1598 "Gmsh.y" { - yyval.v[0]=yyvsp[-7].d; - yyval.v[1]=yyvsp[-5].d; - yyval.v[2]=yyvsp[-3].d; - yyval.v[3]=yyvsp[-1].d; + if(!(pArrCat = Get_ArrayOptionCategory(yyvsp[-5].c))) + vyyerror("Unknown Array Option Class '%s'", yyvsp[-5].c); + else{ + if(!(pArrOpt = Get_ArrayOption(yyvsp[-3].c, pArrCat, &i))) + vyyerror("Unknown Array Option '%s.%s'", yyvsp[-5].c, yyvsp[-3].c); + else{ + switch(i){ + case GMSH_DOUBLE : + ((double*)pNumOpt)[0] = yyvsp[-1].v[0] ; + ((double*)pNumOpt)[1] = yyvsp[-1].v[1] ; + ((double*)pNumOpt)[2] = yyvsp[-1].v[2] ; + ((double*)pNumOpt)[3] = yyvsp[-1].v[3] ; + break ; + case GMSH_FLOAT : + ((float*)pNumOpt)[0] = (float)yyvsp[-1].v[0] ; + ((float*)pNumOpt)[1] = (float)yyvsp[-1].v[1] ; + ((float*)pNumOpt)[2] = (float)yyvsp[-1].v[2] ; + ((float*)pNumOpt)[3] = (float)yyvsp[-1].v[3] ; + break ; + case GMSH_LONG : + ((long*)pNumOpt)[0] = (long)yyvsp[-1].v[0] ; + ((long*)pNumOpt)[1] = (long)yyvsp[-1].v[1] ; + ((long*)pNumOpt)[2] = (long)yyvsp[-1].v[2] ; + ((long*)pNumOpt)[3] = (long)yyvsp[-1].v[3] ; + break ; + case GMSH_INT : + ((int*)pNumOpt)[0] = (int)yyvsp[-1].v[0] ; + ((int*)pNumOpt)[1] = (int)yyvsp[-1].v[1] ; + ((int*)pNumOpt)[2] = (int)yyvsp[-1].v[2] ; + ((int*)pNumOpt)[3] = (int)yyvsp[-1].v[3] ; + break ; + } + } + } ; break;} -case 246: -#line 1605 "Gmsh.y" +case 213: +#line 1635 "Gmsh.y" { - yyval.v[0]=yyvsp[-5].d; - yyval.v[1]=yyvsp[-3].d; - yyval.v[2]=yyvsp[-1].d; - yyval.v[3]=255.; + if(!(pColCat = Get_ColorOptionCategory(yyvsp[-7].c))) + vyyerror("Unknown Color Option Class '%s'", yyvsp[-7].c); + else{ + if(!(pColOpt = Get_ColorOption(yyvsp[-3].c, pColCat))) + vyyerror("Unknown Color Option '%s.%s'", yyvsp[-7].c, yyvsp[-3].c); + else{ + *pColOpt = yyvsp[-1].u ; + } + } ; break;} -case 247: -#line 1619 "Gmsh.y" +case 217: +#line 1673 "Gmsh.y" {yyval.i = 1;; break;} -case 248: -#line 1620 "Gmsh.y" +case 218: +#line 1674 "Gmsh.y" {yyval.i = 0;; break;} -case 249: -#line 1621 "Gmsh.y" +case 219: +#line 1675 "Gmsh.y" {yyval.i = -1;; break;} -case 250: -#line 1622 "Gmsh.y" +case 220: +#line 1676 "Gmsh.y" {yyval.i = -1;; break;} -case 251: -#line 1623 "Gmsh.y" +case 221: +#line 1677 "Gmsh.y" {yyval.i = -1;; break;} -case 252: -#line 1627 "Gmsh.y" -{ yyval.d = yyvsp[0].d; ; +case 222: +#line 1681 "Gmsh.y" +{ yyval.d = yyvsp[0].d; ; break;} -case 253: -#line 1628 "Gmsh.y" -{ yyval.d = yyvsp[-1].d; ; +case 223: +#line 1682 "Gmsh.y" +{ yyval.d = yyvsp[-1].d ; ; break;} -case 254: -#line 1629 "Gmsh.y" -{ yyval.d = yyvsp[-2].d - yyvsp[0].d; ; +case 224: +#line 1683 "Gmsh.y" +{ yyval.d = -yyvsp[0].d ; ; break;} -case 255: -#line 1630 "Gmsh.y" -{ yyval.d = yyvsp[-2].d + yyvsp[0].d; ; +case 225: +#line 1684 "Gmsh.y" +{ yyval.d = yyvsp[0].d; ; break;} -case 256: -#line 1631 "Gmsh.y" -{ yyval.d = yyvsp[-2].d * yyvsp[0].d; ; +case 226: +#line 1685 "Gmsh.y" +{ yyval.d = !yyvsp[0].d ; ; break;} -case 257: -#line 1632 "Gmsh.y" -{ yyval.d = yyvsp[-2].d / yyvsp[0].d; ; +case 227: +#line 1686 "Gmsh.y" +{ yyval.d = yyvsp[-2].d - yyvsp[0].d ; ; break;} -case 258: -#line 1633 "Gmsh.y" -{ yyval.d = pow(yyvsp[-2].d, yyvsp[0].d); ; +case 228: +#line 1687 "Gmsh.y" +{ yyval.d = yyvsp[-2].d + yyvsp[0].d ; ; break;} -case 259: -#line 1634 "Gmsh.y" -{ yyval.d = - yyvsp[0].d; ; +case 229: +#line 1688 "Gmsh.y" +{ yyval.d = yyvsp[-2].d * yyvsp[0].d ; ; break;} -case 260: -#line 1635 "Gmsh.y" -{ yyval.d = yyvsp[0].d; ; +case 230: +#line 1689 "Gmsh.y" +{ yyval.d = yyvsp[-2].d / yyvsp[0].d ; ; break;} -case 261: -#line 1636 "Gmsh.y" +case 231: +#line 1690 "Gmsh.y" +{ yyval.d = (int)yyvsp[-2].d % (int)yyvsp[0].d ; ; + break;} +case 232: +#line 1691 "Gmsh.y" +{ yyval.d = pow(yyvsp[-2].d,yyvsp[0].d) ; ; + break;} +case 233: +#line 1692 "Gmsh.y" +{ yyval.d = yyvsp[-2].d < yyvsp[0].d ; ; + break;} +case 234: +#line 1693 "Gmsh.y" +{ yyval.d = yyvsp[-2].d > yyvsp[0].d ; ; + break;} +case 235: +#line 1694 "Gmsh.y" +{ yyval.d = yyvsp[-2].d <= yyvsp[0].d ; ; + break;} +case 236: +#line 1695 "Gmsh.y" +{ yyval.d = yyvsp[-2].d >= yyvsp[0].d ; ; + break;} +case 237: +#line 1696 "Gmsh.y" +{ yyval.d = yyvsp[-2].d == yyvsp[0].d ; ; + break;} +case 238: +#line 1697 "Gmsh.y" +{ yyval.d = yyvsp[-2].d != yyvsp[0].d ; ; + break;} +case 239: +#line 1698 "Gmsh.y" +{ yyval.d = yyvsp[-2].d && yyvsp[0].d ; ; + break;} +case 240: +#line 1699 "Gmsh.y" +{ yyval.d = yyvsp[-2].d || yyvsp[0].d ; ; + break;} +case 241: +#line 1700 "Gmsh.y" +{ yyval.d = yyvsp[-4].d? yyvsp[-2].d : yyvsp[0].d ; ; + break;} +case 242: +#line 1701 "Gmsh.y" { yyval.d = exp(yyvsp[-1].d); ; break;} -case 262: -#line 1637 "Gmsh.y" +case 243: +#line 1702 "Gmsh.y" { yyval.d = log(yyvsp[-1].d); ; break;} -case 263: -#line 1638 "Gmsh.y" +case 244: +#line 1703 "Gmsh.y" { yyval.d = log10(yyvsp[-1].d); ; break;} -case 264: -#line 1639 "Gmsh.y" +case 245: +#line 1704 "Gmsh.y" { yyval.d = sqrt(yyvsp[-1].d); ; break;} -case 265: -#line 1640 "Gmsh.y" +case 246: +#line 1705 "Gmsh.y" { yyval.d = sin(yyvsp[-1].d); ; break;} -case 266: -#line 1641 "Gmsh.y" +case 247: +#line 1706 "Gmsh.y" { yyval.d = asin(yyvsp[-1].d); ; break;} -case 267: -#line 1642 "Gmsh.y" +case 248: +#line 1707 "Gmsh.y" { yyval.d = cos(yyvsp[-1].d); ; break;} -case 268: -#line 1643 "Gmsh.y" +case 249: +#line 1708 "Gmsh.y" { yyval.d = acos(yyvsp[-1].d); ; break;} -case 269: -#line 1644 "Gmsh.y" +case 250: +#line 1709 "Gmsh.y" { yyval.d = tan(yyvsp[-1].d); ; break;} -case 270: -#line 1645 "Gmsh.y" +case 251: +#line 1710 "Gmsh.y" { yyval.d = atan(yyvsp[-1].d); ; break;} -case 271: -#line 1646 "Gmsh.y" +case 252: +#line 1711 "Gmsh.y" { yyval.d = atan2(yyvsp[-3].d,yyvsp[-1].d); ; break;} -case 272: -#line 1647 "Gmsh.y" +case 253: +#line 1712 "Gmsh.y" { yyval.d = sinh(yyvsp[-1].d); ; break;} -case 273: -#line 1648 "Gmsh.y" +case 254: +#line 1713 "Gmsh.y" { yyval.d = cosh(yyvsp[-1].d); ; break;} -case 274: -#line 1649 "Gmsh.y" +case 255: +#line 1714 "Gmsh.y" { yyval.d = tanh(yyvsp[-1].d); ; break;} -case 275: -#line 1650 "Gmsh.y" +case 256: +#line 1715 "Gmsh.y" { yyval.d = fabs(yyvsp[-1].d); ; break;} -case 276: -#line 1651 "Gmsh.y" +case 257: +#line 1716 "Gmsh.y" { yyval.d = floor(yyvsp[-1].d); ; break;} -case 277: -#line 1652 "Gmsh.y" +case 258: +#line 1717 "Gmsh.y" { yyval.d = ceil(yyvsp[-1].d); ; break;} -case 278: -#line 1653 "Gmsh.y" +case 259: +#line 1718 "Gmsh.y" { yyval.d = fmod(yyvsp[-3].d,yyvsp[-1].d); ; break;} -case 279: -#line 1654 "Gmsh.y" +case 260: +#line 1719 "Gmsh.y" { yyval.d = fmod(yyvsp[-3].d,yyvsp[-1].d); ; break;} -case 280: -#line 1655 "Gmsh.y" +case 261: +#line 1720 "Gmsh.y" { yyval.d = sqrt(yyvsp[-3].d*yyvsp[-3].d+yyvsp[-1].d*yyvsp[-1].d); ; break;} -case 281: -#line 1659 "Gmsh.y" +case 262: +#line 1724 "Gmsh.y" { yyval.d = yyvsp[0].d; ; break;} -case 282: -#line 1660 "Gmsh.y" +case 263: +#line 1725 "Gmsh.y" { yyval.d = 3.141592653589793; ; break;} -case 283: -#line 1662 "Gmsh.y" +case 264: +#line 1727 "Gmsh.y" { TheSymbol.Name = yyvsp[0].c ; if (!List_Query(Symbol_L, &TheSymbol, CompareSymbols)) { @@ -3856,16 +4621,73 @@ case 283: Free(yyvsp[0].c); ; break;} -case 284: -#line 1674 "Gmsh.y" +case 265: +#line 1736 "Gmsh.y" +{ + if(!(pNumCat = Get_NumberOptionCategory(yyvsp[-2].c))) + vyyerror("Unknown Numeric Option Class '%s'", yyvsp[-2].c); + else{ + if(!(pNumOpt = Get_NumberOption(yyvsp[0].c, pNumCat, &i))) + vyyerror("Unknown Numeric Option '%s.%s'", yyvsp[-2].c, yyvsp[0].c); + else{ + switch(i){ + case GMSH_DOUBLE : yyval.d = *(double*)pNumOpt ; break ; + case GMSH_FLOAT : yyval.d = (double)(*(float*)pNumOpt) ; break ; + case GMSH_LONG : yyval.d = (double)(*(long*)pNumOpt) ; break ; + case GMSH_INT : yyval.d = (double)(*(int*)pNumOpt) ; break ; + } + } + } + ; + break;} +case 266: +#line 1753 "Gmsh.y" +{ + if(!(pNumCat = Get_NumberOptionCategory(yyvsp[-3].c))) + vyyerror("Unknown Numeric Option Class '%s'", yyvsp[-3].c); + else{ + if(!(pNumOpt = Get_NumberOption(yyvsp[-1].c, pNumCat, &i))) + vyyerror("Unknown Numeric Option '%s.%s'", yyvsp[-3].c, yyvsp[-1].c); + else{ + switch(i){ + case GMSH_DOUBLE : yyval.d = (*(double*)pNumOpt += 1.) ; break ; + case GMSH_FLOAT : yyval.d = (double)(*(float*)pNumOpt += 1.) ; break ; + case GMSH_LONG : yyval.d = (double)(*(long*)pNumOpt += 1) ; break ; + case GMSH_INT : yyval.d = (double)(*(int*)pNumOpt += 1) ; break ; + } + } + } + ; + break;} +case 267: +#line 1770 "Gmsh.y" +{ + if(!(pNumCat = Get_NumberOptionCategory(yyvsp[-3].c))) + vyyerror("Unknown Numeric Option Class '%s'", yyvsp[-3].c); + else{ + if(!(pNumOpt = Get_NumberOption(yyvsp[-1].c, pNumCat, &i))) + vyyerror("Unknown Numeric Option '%s.%s'", yyvsp[-3].c, yyvsp[-1].c); + else{ + switch(i){ + case GMSH_DOUBLE : yyval.d = (*(double*)pNumOpt -= 1.) ; break ; + case GMSH_FLOAT : yyval.d = (double)(*(float*)pNumOpt -= 1.) ; break ; + case GMSH_LONG : yyval.d = (double)(*(long*)pNumOpt -= 1) ; break ; + case GMSH_INT : yyval.d = (double)(*(int*)pNumOpt -= 1) ; break ; + } + } + } + ; + break;} +case 268: +#line 1790 "Gmsh.y" { ListOfDouble2_L = List_Create(2,1,sizeof(double)) ; for(d=yyvsp[-2].d ; (yyvsp[-2].d<yyvsp[0].d)?(d<=yyvsp[0].d):(d>=yyvsp[0].d) ; (yyvsp[-2].d<yyvsp[0].d)?(d+=1.):(d-=1.)) List_Add(ListOfDouble2_L, &d) ; ; break;} -case 285: -#line 1680 "Gmsh.y" +case 269: +#line 1796 "Gmsh.y" { ListOfDouble2_L = List_Create(2,1,sizeof(double)) ; if(!yyvsp[-2].d || (yyvsp[-5].d<yyvsp[0].d && yyvsp[-2].d<0) || (yyvsp[-5].d>yyvsp[0].d && yyvsp[-2].d>0)){ @@ -3877,124 +4699,138 @@ case 285: List_Add(ListOfDouble2_L, &d) ; ; break;} -case 286: -#line 1694 "Gmsh.y" +case 270: +#line 1810 "Gmsh.y" { - yyval.v[0]=yyvsp[-9].d; - yyval.v[1]=yyvsp[-7].d; - yyval.v[2]=yyvsp[-5].d; - yyval.v[3]=yyvsp[-3].d; - yyval.v[4]=yyvsp[-1].d; + yyval.v = yyvsp[0].v; ; break;} -case 287: -#line 1702 "Gmsh.y" +case 271: +#line 1814 "Gmsh.y" { - yyval.v[0]=yyvsp[-7].d; - yyval.v[1]=yyvsp[-5].d; - yyval.v[2]=yyvsp[-3].d; - yyval.v[3]=yyvsp[-1].d; - yyval.v[4]=1.0; + for(i=0 ; i<6 ; i++) yyval.v[i] = -yyvsp[0].v[i] ; ; break;} -case 288: -#line 1710 "Gmsh.y" +case 272: +#line 1818 "Gmsh.y" +{ + yyval.v = yyvsp[0].v; + ; + break;} +case 273: +#line 1822 "Gmsh.y" +{ + for(i=0 ; i<6 ; i++) yyval.v[i] = yyvsp[-2].v[i] - yyvsp[0].v[i] ; + ; + break;} +case 274: +#line 1826 "Gmsh.y" { - yyval.v[0]=yyvsp[-5].d; - yyval.v[1]=yyvsp[-3].d; - yyval.v[2]=yyvsp[-1].d; - yyval.v[3]=0.0; - yyval.v[4]=1.0; + for(i=0 ; i<6 ; i++) yyval.v[i] = yyvsp[-2].v[i] + yyvsp[0].v[i] ; ; break;} -case 289: -#line 1718 "Gmsh.y" +case 275: +#line 1832 "Gmsh.y" +{ + yyval.v[0]=yyvsp[-9].d; yyval.v[1]=yyvsp[-7].d; yyval.v[2]=yyvsp[-5].d; yyval.v[3]=yyvsp[-3].d; yyval.v[4]=yyvsp[-1].d; + ; + break;} +case 276: +#line 1836 "Gmsh.y" +{ + yyval.v[0]=yyvsp[-7].d; yyval.v[1]=yyvsp[-5].d; yyval.v[2]=yyvsp[-3].d; yyval.v[3]=yyvsp[-1].d; yyval.v[4]=1.0; + ; + break;} +case 277: +#line 1840 "Gmsh.y" { - yyval.v[0]=yyvsp[-5].d; - yyval.v[1]=yyvsp[-3].d; - yyval.v[2]=yyvsp[-1].d; - yyval.v[3]=0.0; - yyval.v[4]=1.0; + yyval.v[0]=yyvsp[-5].d; yyval.v[1]=yyvsp[-3].d; yyval.v[2]=yyvsp[-1].d; yyval.v[3]=0.0; yyval.v[4]=1.0; ; break;} -case 290: -#line 1729 "Gmsh.y" +case 278: +#line 1844 "Gmsh.y" { + yyval.v[0]=yyvsp[-5].d; yyval.v[1]=yyvsp[-3].d; yyval.v[2]=yyvsp[-1].d; yyval.v[3]=0.0; yyval.v[4]=1.0; ; break;} -case 291: -#line 1732 "Gmsh.y" +case 279: +#line 1851 "Gmsh.y" { ; break;} -case 292: -#line 1738 "Gmsh.y" +case 280: +#line 1854 "Gmsh.y" { ; break;} -case 293: -#line 1741 "Gmsh.y" +case 281: +#line 1860 "Gmsh.y" { ; break;} -case 294: -#line 1747 "Gmsh.y" +case 282: +#line 1863 "Gmsh.y" { ; break;} -case 295: -#line 1750 "Gmsh.y" +case 283: +#line 1869 "Gmsh.y" +{ + ; + break;} +case 284: +#line 1872 "Gmsh.y" { yyval.l=ListOfListOfDouble_L; ; break;} -case 296: -#line 1754 "Gmsh.y" +case 285: +#line 1876 "Gmsh.y" { yyval.l=ListOfListOfDouble_L; ; break;} -case 297: -#line 1761 "Gmsh.y" +case 286: +#line 1883 "Gmsh.y" { ListOfListOfDouble_L = List_Create(2,1,sizeof(List_T*)) ; List_Add(ListOfListOfDouble_L, &(yyvsp[0].l)) ; ; break;} -case 298: -#line 1766 "Gmsh.y" +case 287: +#line 1888 "Gmsh.y" { List_Add(ListOfListOfDouble_L, &(yyvsp[0].l)) ; ; break;} -case 299: -#line 1773 "Gmsh.y" +case 288: +#line 1895 "Gmsh.y" { ; break;} -case 300: -#line 1776 "Gmsh.y" +case 289: +#line 1898 "Gmsh.y" { ListOfDouble_L = List_Create(2,1,sizeof(double)) ; List_Add(ListOfDouble_L, &(yyvsp[0].d)) ; yyval.l=ListOfDouble_L; ; break;} -case 301: -#line 1782 "Gmsh.y" +case 290: +#line 1904 "Gmsh.y" { yyval.l=ListOfDouble_L; ; break;} -case 302: -#line 1796 "Gmsh.y" +case 291: +#line 1912 "Gmsh.y" { ListOfDouble_L = List_Create(2,1,sizeof(double)) ; List_Add(ListOfDouble_L, &(yyvsp[0].d)) ; ; break;} -case 303: -#line 1801 "Gmsh.y" +case 292: +#line 1917 "Gmsh.y" { ListOfDouble_L = List_Create(2,1,sizeof(double)) ; for(i=0 ; i<List_Nbr(ListOfDouble2_L) ; i++){ @@ -4004,14 +4840,14 @@ case 303: List_Delete(ListOfDouble2_L); ; break;} -case 304: -#line 1810 "Gmsh.y" +case 293: +#line 1926 "Gmsh.y" { List_Add(ListOfDouble_L, &(yyvsp[0].d)) ; ; break;} -case 305: -#line 1814 "Gmsh.y" +case 294: +#line 1930 "Gmsh.y" { for(i=0 ; i<List_Nbr(ListOfDouble2_L) ; i++){ List_Read(ListOfDouble2_L, i, &d) ; @@ -4020,6 +4856,46 @@ case 305: List_Delete(ListOfDouble2_L); ; break;} +case 295: +#line 1941 "Gmsh.y" +{ + yyval.u = PACK_COLOR((int)yyvsp[-7].d, (int)yyvsp[-5].d, (int)yyvsp[-3].d, (int)yyvsp[-1].d); + ; + break;} +case 296: +#line 1945 "Gmsh.y" +{ + yyval.u = PACK_COLOR((int)yyvsp[-5].d, (int)yyvsp[-3].d, (int)yyvsp[-1].d, 255); + ; + break;} +case 297: +#line 1949 "Gmsh.y" +{ + yyval.u = Get_ColorForString(ColorString, (int)yyvsp[-1].d, yyvsp[-3].c, &flag); + if(flag) vyyerror("Unknown Color '%s'", yyvsp[-3].c); + ; + break;} +case 298: +#line 1954 "Gmsh.y" +{ + yyval.u = Get_ColorForString(ColorString, -1, yyvsp[0].c, &flag); + if(flag) vyyerror("Unknown Color '%s'", yyvsp[0].c); + ; + break;} +case 299: +#line 1959 "Gmsh.y" +{ + if(!(pColCat = Get_ColorOptionCategory(yyvsp[-4].c))) + vyyerror("Unknown Color Option Class '%s'", yyvsp[-4].c); + else{ + if(!(pColOpt = Get_ColorOption(yyvsp[0].c, pColCat))) + vyyerror("Unknown Color Option '%s.%s'", yyvsp[-4].c, yyvsp[0].c); + else{ + yyval.u = *pColOpt ; + } + } + ; + break;} } /* the action file gets copied in in place of this dollarsign */ #line 543 "/usr/lib/bison.simple" @@ -4242,7 +5118,7 @@ yyerrhandle: } return 1; } -#line 1824 "Gmsh.y" +#line 1972 "Gmsh.y" void InitSymbols(void){ diff --git a/Parser/Gmsh.tab.cpp.h b/Parser/Gmsh.tab.cpp.h index b604cb225cb360b6df664d4b2bcefd3bf9b70638..82978edde2cb9b05962940492ae305f9838ead2a 100644 --- a/Parser/Gmsh.tab.cpp.h +++ b/Parser/Gmsh.tab.cpp.h @@ -1,6 +1,7 @@ typedef union { char *c; int i; + unsigned int u; double d; double v[5]; Shape s; @@ -33,126 +34,134 @@ typedef union { #define tFmod 281 #define tModulo 282 #define tHypot 283 -#define tPoint 284 -#define tCircle 285 -#define tEllipsis 286 -#define tLine 287 -#define tSurface 288 -#define tSpline 289 -#define tVolume 290 -#define tCharacteristic 291 -#define tLength 292 -#define tParametric 293 -#define tElliptic 294 -#define tPlane 295 -#define tRuled 296 -#define tTransfinite 297 -#define tComplex 298 -#define tPhysical 299 -#define tUsing 300 -#define tPower 301 +#define tPrintf 284 +#define tPoint 285 +#define tCircle 286 +#define tEllipsis 287 +#define tLine 288 +#define tSurface 289 +#define tSpline 290 +#define tVolume 291 +#define tCharacteristic 292 +#define tLength 293 +#define tParametric 294 +#define tElliptic 295 +#define tPlane 296 +#define tRuled 297 +#define tTransfinite 298 +#define tComplex 299 +#define tPhysical 300 +#define tUsing 301 #define tBump 302 #define tProgression 303 -#define tAssociation 304 -#define tRotate 305 -#define tTranslate 306 -#define tSymmetry 307 -#define tDilate 308 -#define tExtrude 309 -#define tDuplicata 310 -#define tLoop 311 -#define tInclude 312 -#define tRecombine 313 -#define tDelete 314 -#define tCoherence 315 -#define tView 316 -#define tOffset 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 tOptions 339 -#define tFor 340 -#define tEndFor 341 -#define tScript 342 -#define tExit 343 -#define tMerge 344 -#define tGeneral 345 -#define tGeometry 346 -#define tMesh 347 -#define tPostProcessing 348 -#define tPrint 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 UMINUS 403 +#define tRotate 304 +#define tTranslate 305 +#define tSymmetry 306 +#define tDilate 307 +#define tExtrude 308 +#define tDuplicata 309 +#define tLoop 310 +#define tInclude 311 +#define tRecombine 312 +#define tDelete 313 +#define tCoherence 314 +#define tView 315 +#define tOffset 316 +#define tAttractor 317 +#define tLayers 318 +#define tScalarTetrahedron 319 +#define tVectorTetrahedron 320 +#define tTensorTetrahedron 321 +#define tScalarTriangle 322 +#define tVectorTriangle 323 +#define tTensorTriangle 324 +#define tScalarLine 325 +#define tVectorLine 326 +#define tTensorLine 327 +#define tScalarPoint 328 +#define tVectorPoint 329 +#define tTensorPoint 330 +#define tBSpline 331 +#define tNurbs 332 +#define tOrder 333 +#define tWith 334 +#define tBounds 335 +#define tKnots 336 +#define tColor 337 +#define tOptions 338 +#define tFor 339 +#define tEndFor 340 +#define tScript 341 +#define tExit 342 +#define tMerge 343 +#define tB_SPLINE_SURFACE_WITH_KNOTS 344 +#define tB_SPLINE_CURVE_WITH_KNOTS 345 +#define tCARTESIAN_POINT 346 +#define tTRUE 347 +#define tFALSE 348 +#define tUNSPECIFIED 349 +#define tU 350 +#define tV 351 +#define tEDGE_CURVE 352 +#define tVERTEX_POINT 353 +#define tORIENTED_EDGE 354 +#define tPLANE 355 +#define tFACE_OUTER_BOUND 356 +#define tEDGE_LOOP 357 +#define tADVANCED_FACE 358 +#define tVECTOR 359 +#define tDIRECTION 360 +#define tAXIS2_PLACEMENT_3D 361 +#define tISO 362 +#define tENDISO 363 +#define tENDSEC 364 +#define tDATA 365 +#define tHEADER 366 +#define tFILE_DESCRIPTION 367 +#define tFILE_SCHEMA 368 +#define tFILE_NAME 369 +#define tMANIFOLD_SOLID_BREP 370 +#define tCLOSED_SHELL 371 +#define tADVANCED_BREP_SHAPE_REPRESENTATION 372 +#define tFACE_BOUND 373 +#define tCYLINDRICAL_SURFACE 374 +#define tCONICAL_SURFACE 375 +#define tCIRCLE 376 +#define tTRIMMED_CURVE 377 +#define tGEOMETRIC_SET 378 +#define tCOMPOSITE_CURVE_SEGMENT 379 +#define tCONTINUOUS 380 +#define tCOMPOSITE_CURVE 381 +#define tTOROIDAL_SURFACE 382 +#define tPRODUCT_DEFINITION 383 +#define tPRODUCT_DEFINITION_SHAPE 384 +#define tSHAPE_DEFINITION_REPRESENTATION 385 +#define tELLIPSE 386 +#define tTrimmed 387 +#define tSolid 388 +#define tEndSolid 389 +#define tVertex 390 +#define tFacet 391 +#define tNormal 392 +#define tOuter 393 +#define tLoopSTL 394 +#define tEndLoop 395 +#define tEndFacet 396 +#define tAFFECTPLUS 397 +#define tAFFECTMINUS 398 +#define tAFFECTTIMES 399 +#define tAFFECTDIVIDE 400 +#define tAND 401 +#define tOR 402 +#define tNOTEQUAL 403 +#define tEQUAL 404 +#define tAPPROXEQUAL 405 +#define tLESSOREQUAL 406 +#define tGREATEROREQUAL 407 +#define tCROSSPRODUCT 408 +#define UNARYPREC 409 +#define tPLUSPLUS 410 +#define tMINUSMINUS 411 extern YYSTYPE yylval; diff --git a/Parser/Gmsh.y b/Parser/Gmsh.y index a229412caede0c7879f8d8a6ead09f891ad1965b..9eef74113da3dd7e7a8c51f5e4f09f90b3e1012a 100644 --- a/Parser/Gmsh.y +++ b/Parser/Gmsh.y @@ -1,4 +1,4 @@ -%{ /* $Id: Gmsh.y,v 1.17 2000-12-06 22:09:53 geuzaine Exp $ */ +%{ /* $Id: Gmsh.y,v 1.18 2000-12-06 22:25:24 geuzaine Exp $ */ #include <stdarg.h> @@ -1100,7 +1100,7 @@ Macro : ----------------- */ Command : - tPrint tBIGSTR tEND + tPrintf tBIGSTR tEND { char ext[6]; strcpy(ext,$2+(strlen($2)-4)); diff --git a/Parser/Gmsh.yy.cpp b/Parser/Gmsh.yy.cpp index 250fc9ba6858e225d801ee51c42df7091fc924c3..5ca942efee5c6f45ee629089fcc48ada9591dddf 100644 --- a/Parser/Gmsh.yy.cpp +++ b/Parser/Gmsh.yy.cpp @@ -2,7 +2,7 @@ /* A lexical scanner generated by flex */ /* Scanner skeleton version: - * $Header: /cvsroot/gmsh/Parser/Gmsh.yy.cpp,v 1.17 2000-12-06 18:28:30 remacle Exp $ + * $Header: /cvsroot/gmsh/Parser/Gmsh.yy.cpp,v 1.18 2000-12-06 22:25:24 geuzaine Exp $ */ #define FLEX_SCANNER @@ -283,117 +283,116 @@ static void yy_fatal_error YY_PROTO(( yyconst char msg[] )); *yy_cp = '\0'; \ yy_c_buf_p = yy_cp; -#define YY_NUM_RULES 165 -#define YY_END_OF_BUFFER 166 -static yyconst short int yy_accept[980] = +#define YY_NUM_RULES 176 +#define YY_END_OF_BUFFER 177 +static yyconst short int yy_accept[970] = { 0, - 0, 0, 166, 164, 1, 1, 5, 158, 6, 164, - 164, 159, 2, 9, 163, 163, 163, 163, 163, 163, - 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, - 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, - 163, 163, 163, 0, 0, 158, 0, 161, 0, 0, - 0, 0, 3, 4, 160, 159, 0, 163, 163, 163, - 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, - 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, - 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, - 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, - - 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, - 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, - 163, 62, 163, 163, 163, 163, 163, 163, 163, 100, - 103, 94, 97, 163, 163, 163, 163, 163, 163, 163, - 102, 163, 105, 163, 96, 99, 163, 163, 163, 163, - 101, 104, 95, 98, 163, 163, 163, 163, 163, 163, - 163, 163, 163, 163, 163, 0, 0, 10, 0, 111, - 112, 113, 114, 160, 0, 0, 162, 163, 163, 163, - 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, - 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, - - 163, 163, 163, 163, 26, 163, 163, 163, 163, 163, - 163, 163, 163, 163, 163, 163, 36, 163, 163, 163, - 163, 163, 163, 89, 163, 163, 163, 163, 163, 163, - 163, 163, 163, 163, 163, 163, 52, 163, 163, 163, - 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, - 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, - 163, 163, 163, 74, 163, 163, 163, 163, 163, 163, - 83, 163, 163, 163, 163, 163, 163, 163, 163, 163, - 163, 163, 163, 163, 163, 163, 163, 0, 0, 0, - 161, 0, 0, 160, 163, 11, 163, 163, 163, 163, - - 163, 163, 13, 163, 15, 163, 163, 163, 163, 21, - 163, 163, 163, 163, 163, 163, 163, 24, 163, 163, - 163, 163, 163, 25, 128, 163, 163, 163, 163, 163, - 163, 0, 163, 163, 163, 92, 163, 163, 163, 41, - 163, 43, 163, 163, 163, 163, 163, 0, 163, 163, - 122, 163, 163, 50, 163, 51, 163, 163, 55, 163, - 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, - 163, 163, 163, 163, 163, 163, 163, 163, 163, 76, - 163, 75, 163, 73, 163, 163, 163, 163, 82, 163, - 163, 163, 163, 163, 86, 163, 88, 163, 163, 163, - - 163, 153, 8, 163, 163, 163, 163, 163, 0, 0, - 0, 160, 163, 163, 163, 163, 163, 163, 163, 163, - 17, 163, 163, 163, 163, 163, 163, 163, 163, 163, - 163, 163, 163, 163, 163, 31, 163, 163, 163, 163, - 163, 163, 163, 0, 163, 163, 163, 163, 163, 163, - 42, 163, 163, 163, 163, 46, 0, 163, 48, 163, - 163, 53, 163, 93, 163, 57, 163, 163, 163, 59, - 126, 163, 163, 163, 63, 64, 163, 65, 69, 163, - 163, 163, 72, 163, 163, 163, 163, 163, 163, 163, - 163, 163, 85, 163, 163, 163, 163, 163, 163, 150, - - 163, 163, 152, 157, 163, 0, 0, 163, 163, 163, - 163, 12, 14, 16, 163, 163, 163, 163, 23, 163, - 141, 163, 163, 163, 163, 163, 163, 28, 163, 163, - 163, 33, 34, 163, 163, 163, 163, 0, 134, 163, - 163, 90, 163, 163, 163, 163, 163, 163, 163, 163, - 163, 127, 0, 163, 54, 49, 163, 56, 163, 58, - 163, 163, 163, 163, 163, 163, 163, 71, 163, 91, - 77, 163, 163, 163, 163, 163, 163, 163, 123, 163, - 87, 163, 163, 163, 7, 151, 149, 0, 0, 163, - 163, 163, 163, 18, 163, 163, 22, 163, 163, 163, - - 163, 163, 163, 163, 163, 163, 30, 163, 163, 163, - 163, 40, 0, 163, 163, 38, 163, 163, 163, 163, - 163, 163, 44, 163, 0, 47, 163, 163, 60, 163, - 163, 163, 163, 163, 163, 163, 78, 163, 163, 163, - 163, 163, 84, 163, 163, 154, 163, 0, 0, 163, - 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, - 163, 163, 163, 163, 163, 163, 163, 163, 0, 37, - 39, 163, 163, 163, 163, 163, 163, 45, 0, 163, - 163, 163, 163, 61, 163, 163, 163, 163, 79, 163, - 163, 163, 163, 163, 155, 156, 0, 0, 163, 163, - - 163, 163, 163, 20, 163, 163, 163, 163, 163, 163, - 163, 163, 29, 124, 35, 163, 117, 0, 163, 163, - 163, 130, 163, 163, 0, 163, 163, 163, 163, 163, - 163, 70, 163, 163, 163, 163, 81, 163, 0, 0, - 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, - 163, 163, 163, 32, 163, 116, 0, 120, 163, 163, - 163, 163, 0, 163, 163, 163, 67, 163, 163, 163, - 163, 163, 163, 163, 0, 0, 163, 163, 163, 163, - 163, 19, 163, 163, 163, 163, 163, 163, 163, 163, - 0, 163, 163, 129, 163, 0, 163, 163, 163, 163, - - 66, 163, 163, 163, 80, 163, 110, 0, 110, 163, - 163, 163, 163, 163, 163, 163, 135, 163, 163, 163, - 163, 0, 163, 163, 163, 132, 163, 163, 163, 163, - 163, 163, 163, 118, 109, 163, 121, 109, 163, 163, - 163, 163, 163, 163, 163, 163, 0, 163, 163, 143, - 163, 115, 163, 163, 163, 163, 142, 163, 163, 163, - 163, 163, 163, 163, 163, 27, 0, 163, 163, 163, - 163, 68, 163, 163, 163, 163, 163, 163, 106, 145, - 139, 163, 0, 163, 163, 163, 163, 163, 163, 163, - 163, 163, 163, 163, 163, 133, 119, 131, 163, 163, - - 163, 140, 163, 163, 163, 163, 163, 163, 163, 163, - 163, 163, 125, 163, 163, 163, 163, 163, 146, 163, - 163, 163, 163, 163, 138, 137, 163, 163, 163, 163, - 163, 163, 163, 163, 163, 163, 163, 163, 163, 163, - 163, 163, 163, 163, 163, 163, 163, 163, 163, 144, - 163, 163, 163, 163, 163, 147, 163, 163, 108, 163, - 163, 163, 163, 163, 163, 107, 163, 163, 163, 163, - 163, 163, 163, 163, 148, 163, 163, 136, 0 + 0, 0, 177, 175, 1, 1, 175, 5, 169, 175, + 6, 175, 175, 175, 175, 175, 170, 15, 2, 175, + 9, 175, 174, 174, 174, 174, 174, 174, 174, 174, + 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, + 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, + 174, 175, 175, 0, 0, 22, 169, 18, 12, 19, + 10, 20, 11, 0, 172, 0, 0, 0, 0, 3, + 4, 13, 16, 171, 170, 0, 24, 21, 25, 174, + 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, + 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, + + 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, + 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, + 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, + 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, + 174, 174, 73, 174, 174, 174, 174, 174, 174, 174, + 111, 114, 105, 108, 174, 174, 174, 174, 174, 174, + 174, 113, 174, 116, 174, 107, 110, 174, 174, 174, + 174, 112, 115, 106, 109, 174, 174, 174, 174, 174, + 174, 174, 174, 174, 174, 174, 17, 23, 0, 0, + 14, 0, 122, 123, 124, 125, 171, 0, 0, 173, + + 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, + 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, + 174, 174, 174, 174, 174, 174, 40, 174, 174, 174, + 174, 174, 174, 174, 174, 174, 174, 174, 50, 174, + 174, 174, 174, 174, 174, 100, 174, 174, 174, 174, + 174, 174, 174, 174, 174, 174, 64, 174, 174, 174, + 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, + 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, + 174, 84, 174, 174, 174, 174, 174, 174, 94, 174, + 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, + + 174, 174, 174, 174, 174, 0, 0, 0, 172, 0, + 0, 171, 174, 26, 174, 174, 174, 174, 174, 174, + 28, 30, 174, 174, 174, 174, 35, 174, 174, 174, + 174, 174, 174, 174, 38, 174, 174, 174, 174, 174, + 39, 139, 174, 174, 174, 174, 174, 174, 0, 174, + 174, 174, 103, 174, 174, 174, 55, 174, 57, 174, + 174, 174, 0, 174, 174, 133, 174, 174, 62, 174, + 63, 174, 174, 174, 174, 174, 174, 174, 174, 174, + 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, + 174, 174, 86, 174, 85, 174, 83, 174, 174, 174, + + 174, 93, 174, 174, 174, 174, 174, 97, 174, 99, + 174, 174, 174, 174, 164, 8, 174, 174, 174, 174, + 174, 0, 0, 0, 171, 174, 174, 174, 174, 174, + 174, 174, 32, 174, 174, 174, 174, 174, 174, 174, + 174, 174, 174, 174, 174, 174, 174, 45, 174, 174, + 174, 174, 174, 174, 174, 0, 174, 174, 174, 174, + 174, 174, 56, 174, 174, 58, 0, 174, 60, 174, + 174, 65, 174, 104, 174, 68, 174, 174, 174, 70, + 137, 174, 174, 174, 74, 75, 76, 174, 174, 174, + 174, 82, 174, 174, 174, 174, 174, 174, 174, 174, + + 174, 96, 174, 174, 174, 174, 174, 174, 161, 174, + 174, 163, 168, 174, 0, 0, 174, 174, 174, 174, + 27, 29, 31, 174, 174, 174, 37, 174, 152, 174, + 174, 174, 174, 174, 174, 42, 174, 174, 174, 47, + 48, 174, 174, 174, 174, 0, 145, 174, 174, 101, + 174, 174, 174, 174, 174, 174, 174, 138, 0, 174, + 66, 61, 174, 67, 174, 69, 174, 174, 174, 174, + 79, 174, 174, 81, 174, 90, 87, 174, 174, 174, + 174, 174, 174, 174, 134, 174, 98, 174, 174, 174, + 7, 162, 160, 0, 0, 174, 174, 174, 174, 33, + + 174, 36, 174, 174, 174, 174, 174, 174, 174, 174, + 174, 44, 174, 174, 174, 174, 54, 0, 174, 174, + 52, 174, 174, 174, 174, 174, 174, 0, 59, 174, + 174, 71, 174, 174, 174, 174, 174, 174, 88, 174, + 174, 174, 174, 174, 95, 174, 174, 165, 174, 0, + 0, 174, 174, 174, 174, 174, 174, 174, 174, 174, + 174, 174, 174, 174, 174, 174, 174, 174, 174, 0, + 51, 53, 174, 174, 174, 174, 174, 174, 0, 174, + 174, 174, 174, 72, 174, 174, 174, 89, 174, 174, + 174, 174, 174, 166, 167, 0, 0, 174, 174, 174, + + 174, 34, 174, 174, 174, 174, 174, 174, 174, 174, + 43, 135, 49, 174, 128, 0, 174, 174, 174, 141, + 174, 174, 0, 174, 174, 174, 174, 174, 80, 174, + 174, 174, 174, 92, 174, 0, 0, 174, 174, 174, + 174, 174, 174, 174, 174, 174, 174, 174, 174, 46, + 174, 127, 0, 131, 174, 174, 174, 174, 0, 174, + 174, 174, 78, 174, 174, 174, 174, 174, 174, 0, + 0, 174, 174, 174, 174, 174, 174, 174, 174, 174, + 174, 174, 174, 174, 0, 174, 174, 140, 174, 0, + 174, 174, 174, 77, 174, 174, 174, 91, 174, 121, + + 0, 121, 174, 174, 174, 174, 174, 174, 174, 146, + 174, 174, 174, 174, 0, 174, 174, 174, 143, 174, + 174, 174, 174, 174, 174, 129, 120, 174, 132, 120, + 174, 174, 174, 174, 174, 174, 174, 174, 0, 174, + 174, 154, 174, 126, 174, 174, 174, 153, 174, 174, + 174, 174, 174, 174, 174, 174, 41, 0, 174, 174, + 174, 174, 174, 174, 174, 174, 174, 174, 117, 156, + 150, 174, 0, 174, 174, 174, 174, 174, 174, 174, + 174, 174, 174, 174, 174, 144, 130, 142, 174, 174, + 174, 151, 174, 174, 174, 174, 174, 174, 174, 174, + + 174, 174, 136, 174, 174, 174, 174, 174, 157, 174, + 174, 174, 174, 174, 149, 148, 174, 174, 174, 174, + 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, + 174, 174, 174, 174, 174, 174, 174, 174, 174, 155, + 174, 174, 174, 174, 174, 158, 174, 174, 119, 174, + 174, 174, 174, 174, 174, 118, 174, 174, 174, 174, + 174, 174, 174, 174, 159, 174, 174, 147, 0 } ; static yyconst int yy_ec[256] = @@ -401,17 +400,17 @@ static yyconst int yy_ec[256] = 1, 1, 1, 1, 1, 1, 1, 1, 2, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 2, 1, 4, 5, 1, 1, 1, 6, 1, - 1, 7, 8, 1, 9, 10, 11, 12, 13, 14, - 15, 16, 16, 16, 16, 16, 16, 1, 17, 1, - 18, 1, 1, 1, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, - 28, 35, 36, 37, 38, 39, 40, 41, 42, 28, - 1, 1, 1, 1, 43, 1, 44, 45, 46, 47, - - 48, 49, 50, 51, 52, 28, 28, 53, 54, 55, - 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, - 66, 28, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 2, 4, 5, 6, 1, 1, 7, 8, 1, + 1, 9, 10, 1, 11, 12, 13, 14, 15, 16, + 17, 18, 18, 18, 18, 18, 18, 19, 20, 21, + 22, 23, 1, 1, 24, 25, 26, 27, 28, 29, + 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, + 33, 40, 41, 42, 43, 44, 45, 46, 47, 33, + 1, 48, 1, 1, 49, 1, 50, 51, 52, 53, + + 54, 55, 56, 57, 58, 33, 33, 59, 60, 61, + 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, + 72, 33, 1, 73, 1, 74, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @@ -428,386 +427,389 @@ static yyconst int yy_ec[256] = 1, 1, 1, 1, 1 } ; -static yyconst int yy_meta[67] = +static yyconst int yy_meta[75] = { 0, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, - 1, 3, 3, 3, 3, 3, 1, 1, 3, 3, + 1, 1, 1, 3, 3, 3, 3, 3, 1, 1, + 1, 1, 1, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 1, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3 + 3, 3, 1, 1 } ; -static yyconst short int yy_base[985] = +static yyconst short int yy_base[975] = { 0, - 0, 0, 1207, 46, 47, 1208, 48, 58, 54, 87, - 69, 117, 56, 57, 98, 85, 147, 124, 149, 163, - 66, 131, 172, 60, 67, 184, 175, 72, 199, 238, - 191, 277, 323, 123, 249, 97, 154, 129, 204, 236, - 200, 205, 197, 1173, 1173, 251, 1194, 304, 1193, 1192, - 81, 1191, 1208, 1208, 350, 362, 333, 0, 104, 1161, - 1167, 1171, 1151, 57, 102, 1163, 1138, 1158, 1131, 1138, - 1156, 1155, 1156, 51, 1158, 1126, 1134, 1141, 1125, 242, - 1146, 1147, 1128, 1127, 1122, 1153, 1147, 1154, 1122, 1127, - 189, 1152, 1142, 1126, 1114, 1113, 1109, 1134, 60, 1147, - - 1108, 1131, 1117, 1106, 1129, 1094, 1104, 1103, 92, 1125, - 192, 1109, 1096, 1127, 1104, 1091, 1104, 1131, 1116, 1089, - 1081, 0, 1102, 217, 219, 1099, 1083, 1090, 1123, 0, - 0, 0, 0, 1078, 1081, 1084, 1085, 1078, 1077, 1081, - 0, 1099, 0, 1106, 0, 0, 1077, 112, 1079, 209, - 0, 0, 0, 0, 1082, 1076, 1067, 1080, 1080, 1069, - 1060, 1064, 1061, 1068, 1061, 1087, 1082, 1208, 375, 1208, - 1208, 1208, 1208, 380, 392, 399, 404, 1085, 1056, 1096, - 1078, 1077, 288, 1057, 1055, 1055, 1050, 1055, 1073, 1051, - 1048, 1067, 1082, 1066, 1067, 1073, 1072, 1044, 1044, 1037, - - 1049, 1046, 1037, 1035, 1040, 1071, 1066, 1040, 1043, 1033, - 1062, 1057, 179, 1031, 1058, 1020, 0, 1021, 1056, 1055, - 1017, 1020, 1028, 0, 1043, 1025, 1018, 1049, 1014, 1060, - 1015, 1006, 1043, 1017, 1014, 1015, 1049, 1004, 1033, 1009, - 1007, 995, 1011, 1032, 994, 1001, 1004, 1019, 1028, 1005, - 988, 992, 991, 984, 996, 988, 992, 985, 996, 991, - 1004, 989, 984, 984, 982, 972, 983, 977, 997, 998, - 977, 972, 972, 970, 987, 986, 958, 959, 969, 273, - 971, 961, 221, 963, 968, 963, 953, 976, 978, 409, - 417, 426, 431, 436, 974, 0, 978, 975, 994, 951, - - 954, 961, 0, 958, 989, 958, 949, 970, 952, 0, - 975, 967, 973, 962, 973, 961, 930, 0, 947, 937, - 930, 929, 934, 0, 0, 965, 924, 923, 931, 939, - 947, 953, 956, 921, 921, 0, 914, 932, 931, 0, - 914, 0, 949, 912, 922, 946, 907, 954, 904, 905, - 0, 905, 902, 0, 950, 0, 937, 912, 0, 906, - 898, 925, 908, 899, 895, 930, 914, 897, 898, 901, - 887, 913, 887, 884, 885, 889, 881, 894, 917, 0, - 882, 0, 883, 0, 893, 888, 908, 903, 0, 873, - 878, 881, 897, 906, 0, 874, 0, 883, 870, 869, - - 863, 0, 0, 875, 878, 862, 873, 871, 891, 894, - 441, 446, 889, 894, 891, 870, 852, 856, 855, 857, - 0, 862, 852, 879, 845, 868, 880, 880, 865, 881, - 877, 845, 851, 848, 847, 0, 846, 856, 844, 843, - 844, 203, 853, 852, 866, 194, 827, 838, 279, 318, - 0, 847, 839, 821, 846, 0, 868, 832, 0, 818, - 826, 0, 843, 0, 819, 0, 837, 812, 817, 0, - 0, 850, 822, 823, 0, 0, 809, 0, 0, 819, - 821, 817, 0, 821, 802, 814, 815, 799, 837, 835, - 251, 809, 0, 821, 814, 806, 807, 796, 798, 0, - - 800, 796, 0, 0, 783, 815, 825, 813, 821, 822, - 808, 0, 0, 827, 796, 778, 790, 805, 0, 809, - 0, 792, 807, 803, 797, 778, 769, 0, 774, 763, - 800, 0, 0, 782, 787, 791, 800, 789, 0, 769, - 768, 0, 771, 785, 779, 793, 796, 793, 778, 759, - 752, 0, 795, 761, 0, 0, 778, 0, 784, 0, - 746, 768, 743, 759, 746, 741, 748, 0, 777, 0, - 0, 750, 738, 777, 773, 742, 749, 745, 0, 748, - 0, 742, 732, 736, 0, 0, 0, 749, 759, 747, - 762, 756, 752, 0, 720, 724, 0, 756, 759, 741, - - 739, 732, 747, 738, 724, 725, 0, 737, 708, 733, - 734, 0, 757, 705, 718, 0, 725, 725, 725, 729, - 733, 731, 0, 691, 744, 0, 733, 732, 0, 710, - 693, 698, 704, 689, 693, 724, 0, 680, 715, 701, - 688, 681, 0, 707, 679, 0, 692, 705, 713, 703, - 692, 710, 714, 680, 672, 687, 697, 702, 704, 690, - 704, 668, 664, 674, 689, 676, 680, 684, 704, 0, - 0, 684, 692, 693, 690, 688, 687, 0, 690, 659, - 69, 131, 126, 0, 152, 154, 201, 264, 0, 263, - 287, 258, 280, 297, 0, 0, 293, 305, 298, 331, - - 310, 317, 312, 0, 350, 326, 347, 336, 342, 362, - 343, 347, 0, 0, 0, 379, 0, 397, 404, 392, - 401, 0, 406, 420, 455, 429, 443, 444, 422, 409, - 414, 0, 444, 436, 435, 413, 0, 448, 440, 454, - 442, 444, 461, 458, 459, 428, 446, 447, 452, 457, - 467, 454, 460, 0, 431, 0, 477, 0, 450, 467, - 476, 460, 483, 465, 477, 476, 0, 441, 447, 471, - 466, 470, 458, 475, 0, 486, 508, 488, 499, 499, - 491, 0, 488, 489, 494, 498, 491, 506, 488, 471, - 521, 514, 501, 0, 513, 524, 508, 514, 513, 489, - - 0, 515, 508, 505, 0, 508, 1208, 0, 0, 512, - 524, 547, 527, 520, 536, 534, 0, 527, 544, 530, - 515, 553, 536, 533, 534, 1208, 545, 550, 542, 520, - 539, 553, 555, 0, 1208, 536, 0, 0, 548, 558, - 563, 551, 545, 564, 548, 541, 579, 551, 563, 0, - 569, 0, 565, 543, 567, 576, 0, 560, 560, 555, - 578, 563, 578, 579, 568, 0, 590, 573, 573, 564, - 571, 0, 576, 589, 585, 569, 573, 591, 0, 572, - 0, 592, 604, 596, 587, 600, 594, 590, 600, 605, - 610, 599, 584, 592, 610, 1208, 0, 0, 595, 598, - - 589, 0, 599, 612, 598, 596, 614, 617, 616, 608, - 606, 619, 0, 617, 617, 620, 623, 613, 605, 626, - 607, 608, 615, 622, 0, 0, 618, 621, 621, 628, - 632, 636, 634, 626, 639, 631, 621, 633, 647, 644, - 634, 636, 641, 634, 638, 637, 639, 638, 644, 0, - 654, 655, 656, 644, 648, 0, 650, 647, 0, 647, - 648, 663, 651, 669, 657, 0, 653, 654, 665, 674, - 661, 658, 664, 670, 0, 665, 667, 0, 1208, 697, - 700, 703, 706, 709 + 0, 0, 1231, 49, 50, 1232, 55, 52, 68, 73, + 53, 65, 78, 79, 111, 93, 130, 71, 77, 87, + 109, 117, 123, 131, 176, 138, 178, 135, 175, 181, + 184, 81, 125, 209, 218, 186, 222, 238, 214, 278, + 313, 217, 273, 232, 263, 243, 248, 306, 279, 297, + 318, 300, 336, 1192, 1192, 1232, 366, 1232, 1232, 1232, + 1232, 1232, 1232, 1216, 371, 1215, 1214, 126, 1213, 1232, + 1232, 1232, 1232, 376, 391, 400, 1232, 1232, 1232, 0, + 72, 1180, 1186, 1190, 1169, 1162, 115, 1181, 1155, 1176, + 1148, 1155, 1174, 1173, 1174, 81, 1176, 1143, 1151, 1158, + + 1142, 310, 1164, 1165, 1145, 1144, 1139, 1171, 1165, 1172, + 1139, 1144, 188, 1170, 1160, 1143, 1131, 1130, 1126, 1152, + 1165, 1125, 1149, 1134, 1123, 1147, 1111, 1121, 1120, 115, + 1143, 1114, 1125, 1112, 1144, 1120, 1107, 1120, 1148, 1133, + 1105, 1097, 0, 1118, 117, 121, 1115, 1099, 1106, 1140, + 0, 0, 0, 0, 1094, 1097, 1100, 1101, 1094, 1093, + 1097, 0, 1116, 0, 1123, 0, 0, 1093, 170, 1095, + 191, 0, 0, 0, 0, 1098, 1092, 1083, 1096, 1096, + 1085, 1076, 1080, 1077, 1084, 1077, 1232, 1232, 1104, 1099, + 1232, 417, 1232, 1232, 1232, 1232, 422, 437, 406, 442, + + 1102, 1072, 1113, 1095, 1094, 292, 1073, 1072, 1067, 1072, + 1091, 1068, 1065, 1085, 1100, 1084, 1085, 1091, 1090, 1061, + 1061, 1054, 1066, 1063, 1054, 1052, 1057, 1089, 1084, 1057, + 1060, 1050, 1080, 1075, 225, 1048, 1076, 1037, 0, 1038, + 1074, 1073, 1034, 1037, 1045, 0, 1061, 1069, 1033, 1083, + 1034, 1025, 1063, 1036, 1033, 1034, 1072, 1023, 1053, 1028, + 1015, 1031, 1053, 1014, 1021, 1024, 1040, 1049, 1025, 1008, + 1012, 1011, 1017, 1009, 1013, 1006, 1017, 1012, 1026, 1010, + 1005, 1005, 1003, 993, 1004, 998, 1019, 1020, 998, 993, + 993, 991, 1009, 1008, 979, 980, 990, 406, 992, 982, + + 229, 984, 989, 984, 974, 998, 1000, 452, 463, 472, + 477, 482, 996, 0, 1000, 997, 1019, 972, 975, 982, + 0, 1015, 980, 971, 993, 974, 0, 998, 990, 996, + 985, 996, 984, 952, 0, 969, 959, 952, 951, 956, + 0, 0, 988, 946, 945, 953, 961, 970, 976, 979, + 943, 943, 0, 936, 954, 953, 0, 936, 0, 972, + 971, 931, 982, 928, 929, 0, 929, 926, 0, 978, + 0, 962, 936, 930, 922, 950, 932, 923, 919, 955, + 939, 921, 922, 925, 911, 912, 909, 910, 914, 906, + 919, 943, 0, 907, 0, 908, 0, 918, 913, 934, + + 929, 0, 898, 903, 906, 923, 932, 0, 899, 0, + 908, 895, 894, 888, 0, 0, 900, 903, 887, 898, + 896, 917, 920, 487, 492, 915, 920, 917, 895, 877, + 881, 880, 0, 888, 878, 906, 871, 895, 907, 907, + 892, 908, 904, 871, 877, 874, 873, 0, 872, 883, + 870, 869, 870, 221, 880, 879, 893, 66, 853, 864, + 273, 484, 0, 874, 875, 0, 900, 860, 0, 846, + 854, 0, 872, 0, 847, 0, 866, 840, 845, 0, + 0, 879, 850, 851, 0, 0, 0, 847, 847, 849, + 845, 0, 849, 830, 842, 843, 827, 866, 864, 270, + + 837, 0, 850, 843, 834, 835, 824, 826, 0, 828, + 824, 0, 0, 811, 844, 854, 842, 850, 851, 837, + 0, 0, 859, 807, 819, 835, 0, 839, 0, 821, + 837, 833, 827, 807, 798, 0, 803, 792, 830, 0, + 0, 811, 817, 821, 830, 819, 0, 798, 797, 0, + 800, 815, 809, 823, 826, 823, 808, 0, 830, 792, + 0, 0, 810, 0, 816, 0, 777, 800, 774, 790, + 0, 773, 780, 0, 810, 0, 0, 782, 770, 810, + 806, 774, 781, 777, 0, 780, 0, 774, 764, 768, + 0, 0, 0, 782, 792, 780, 795, 789, 785, 0, + + 757, 0, 790, 793, 775, 773, 765, 781, 772, 757, + 758, 0, 771, 741, 767, 768, 0, 794, 738, 751, + 0, 759, 759, 759, 763, 767, 765, 782, 0, 768, + 767, 0, 744, 727, 732, 724, 728, 760, 0, 715, + 751, 736, 723, 716, 0, 743, 714, 0, 727, 741, + 749, 739, 727, 746, 750, 708, 723, 734, 739, 741, + 727, 741, 704, 700, 710, 726, 712, 717, 721, 744, + 0, 0, 721, 729, 730, 727, 726, 727, 735, 702, + 701, 722, 690, 0, 689, 692, 716, 0, 695, 717, + 684, 687, 702, 0, 0, 696, 706, 694, 346, 703, + + 706, 0, 150, 680, 698, 40, 69, 174, 156, 164, + 0, 0, 0, 204, 0, 236, 243, 239, 244, 0, + 266, 258, 316, 296, 310, 317, 305, 302, 0, 333, + 325, 331, 310, 0, 363, 355, 369, 357, 360, 377, + 374, 384, 370, 383, 390, 406, 416, 403, 409, 0, + 380, 0, 432, 0, 413, 431, 440, 430, 457, 436, + 448, 455, 0, 424, 475, 470, 474, 461, 479, 0, + 490, 525, 490, 493, 493, 486, 483, 484, 490, 504, + 497, 512, 493, 476, 535, 525, 512, 0, 524, 538, + 519, 525, 524, 0, 525, 518, 515, 0, 518, 1232, + + 0, 0, 522, 534, 599, 535, 520, 536, 534, 0, + 527, 544, 528, 512, 554, 534, 532, 533, 1232, 544, + 549, 541, 537, 551, 553, 0, 1232, 533, 0, 0, + 546, 556, 561, 549, 543, 562, 546, 538, 580, 549, + 561, 0, 567, 0, 563, 564, 573, 0, 561, 571, + 565, 589, 574, 589, 595, 584, 0, 609, 589, 589, + 579, 587, 592, 605, 601, 584, 589, 607, 0, 587, + 0, 608, 623, 612, 603, 616, 610, 606, 616, 621, + 629, 616, 600, 609, 627, 1232, 0, 0, 612, 615, + 605, 0, 616, 629, 615, 613, 631, 634, 633, 625, + + 623, 636, 0, 634, 634, 637, 640, 630, 621, 643, + 625, 626, 634, 641, 0, 0, 637, 640, 640, 647, + 651, 655, 653, 645, 658, 650, 639, 652, 666, 663, + 653, 655, 660, 653, 657, 656, 658, 657, 663, 0, + 673, 674, 675, 663, 667, 0, 669, 666, 0, 666, + 667, 682, 670, 688, 676, 0, 672, 673, 684, 693, + 680, 677, 683, 689, 0, 684, 686, 0, 1232, 721, + 724, 727, 730, 733 } ; -static yyconst short int yy_def[985] = +static yyconst short int yy_def[975] = { 0, - 979, 1, 979, 979, 979, 979, 979, 979, 979, 979, - 979, 979, 979, 979, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 979, 979, 979, 979, 979, 979, 979, - 979, 979, 979, 979, 979, 979, 979, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 979, 979, 979, 979, 979, - 979, 979, 979, 979, 979, 979, 979, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 979, 979, 979, - 979, 979, 979, 979, 980, 980, 980, 980, 980, 980, - - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 979, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 979, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - - 980, 980, 980, 980, 980, 980, 980, 980, 979, 979, - 979, 979, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 979, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 979, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - - 980, 980, 980, 980, 980, 979, 979, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 979, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 979, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 979, 979, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 979, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 979, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 979, 979, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 979, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 979, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 979, 979, 980, 980, - - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 979, 980, 980, - 980, 980, 980, 980, 979, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 979, 979, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 979, 980, 980, 980, - 980, 980, 979, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 981, 979, 982, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 979, 980, 980, 980, 980, 979, 980, 980, 980, 980, - - 980, 980, 980, 980, 980, 980, 979, 983, 980, 980, - 980, 984, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 979, 980, 980, 980, 979, 980, 980, 980, 980, - 980, 980, 980, 980, 979, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 979, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 979, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 979, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 979, 980, 980, 980, 980, - - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 980, 980, - 980, 980, 980, 980, 980, 980, 980, 980, 0, 979, - 979, 979, 979, 979 + 969, 1, 969, 969, 969, 969, 969, 969, 969, 969, + 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, + 969, 969, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 969, 969, 969, 969, 969, 969, 969, 969, 969, + 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, + 969, 969, 969, 969, 969, 969, 969, 969, 969, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 969, 969, 969, 969, + 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, + + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + + 970, 970, 970, 970, 970, 969, 969, 969, 969, 969, + 969, 969, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 969, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 969, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 969, 969, 969, 969, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 969, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 969, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 969, 969, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 969, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 969, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 969, 969, 970, 970, 970, 970, 970, + + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 969, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 969, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 969, + 969, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 969, + 970, 970, 970, 970, 970, 970, 970, 970, 969, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 969, 969, 970, 970, 970, + + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 969, 970, 970, 970, 970, + 970, 970, 969, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 969, 969, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 969, 970, 970, 970, 970, 970, 969, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 971, + 969, 972, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 969, 970, 970, 970, 970, 969, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 969, + + 973, 970, 970, 970, 974, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 969, 970, 970, 970, 969, 970, + 970, 970, 970, 970, 970, 970, 969, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 969, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 969, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 969, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 969, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 970, 970, + 970, 970, 970, 970, 970, 970, 970, 970, 0, 969, + 969, 969, 969, 969 } ; -static yyconst short int yy_nxt[1275] = +static yyconst short int yy_nxt[1307] = { 0, - 4, 5, 6, 7, 8, 9, 4, 4, 4, 10, - 11, 12, 12, 12, 12, 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, - 24, 24, 24, 24, 24, 24, 24, 37, 38, 24, - 24, 24, 39, 24, 40, 41, 24, 24, 24, 42, - 24, 24, 43, 24, 24, 24, 44, 44, 44, 46, - 46, 46, 46, 46, 44, 53, 44, 44, 44, 54, - 66, 195, 196, 45, 45, 45, 66, 66, 98, 44, - 172, 45, 66, 45, 45, 45, 47, 61, 48, 48, - - 48, 48, 48, 61, 61, 66, 45, 44, 184, 61, - 49, 727, 167, 99, 226, 227, 185, 66, 59, 60, - 67, 104, 61, 50, 51, 52, 55, 68, 56, 56, - 56, 56, 56, 113, 61, 61, 178, 44, 62, 57, - 69, 237, 81, 66, 66, 186, 70, 238, 157, 66, - 82, 66, 728, 100, 45, 272, 63, 64, 65, 179, - 61, 61, 187, 273, 57, 71, 61, 66, 61, 66, - 86, 83, 159, 72, 66, 84, 73, 729, 87, 74, - 88, 92, 149, 66, 61, 85, 61, 332, 75, 93, - 76, 61, 66, 110, 77, 66, 101, 78, 79, 730, - - 61, 89, 80, 90, 66, 731, 94, 102, 158, 61, - 105, 66, 61, 91, 333, 95, 96, 66, 97, 66, - 66, 61, 111, 535, 66, 66, 103, 106, 61, 275, - 112, 107, 536, 114, 61, 108, 61, 61, 126, 109, - 216, 61, 61, 276, 165, 217, 127, 115, 732, 218, - 240, 241, 128, 540, 541, 116, 66, 117, 66, 160, - 164, 163, 46, 46, 46, 46, 46, 118, 253, 66, - 256, 150, 119, 61, 257, 61, 254, 403, 151, 404, - 255, 120, 152, 161, 153, 154, 61, 733, 121, 122, - 123, 162, 202, 124, 203, 204, 125, 66, 544, 576, - - 155, 205, 129, 577, 156, 734, 130, 735, 300, 736, - 131, 545, 132, 133, 61, 48, 48, 48, 48, 48, - 134, 398, 135, 301, 302, 399, 169, 737, 136, 738, - 739, 740, 400, 137, 138, 741, 744, 745, 139, 546, - 176, 176, 140, 66, 177, 177, 177, 177, 177, 547, - 742, 169, 141, 548, 743, 142, 143, 144, 145, 146, - 61, 174, 174, 174, 174, 174, 147, 746, 749, 750, - 747, 55, 175, 56, 56, 56, 56, 56, 751, 752, - 753, 148, 290, 290, 57, 748, 291, 291, 291, 291, - 291, 174, 174, 174, 174, 174, 754, 175, 755, 293, - - 293, 756, 292, 294, 294, 294, 294, 294, 757, 57, - 177, 177, 177, 177, 177, 177, 177, 177, 177, 177, - 291, 291, 291, 291, 291, 758, 759, 292, 291, 291, - 291, 291, 291, 411, 411, 760, 761, 412, 412, 412, - 412, 412, 294, 294, 294, 294, 294, 294, 294, 294, - 294, 294, 412, 412, 412, 412, 412, 412, 412, 412, - 412, 412, 762, 763, 764, 765, 766, 767, 768, 769, - 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, - 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, - 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, - - 800, 801, 802, 803, 804, 805, 806, 808, 807, 807, - 810, 807, 807, 807, 807, 807, 807, 807, 807, 811, - 812, 813, 814, 815, 807, 807, 816, 817, 818, 819, - 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, - 830, 831, 832, 833, 834, 836, 837, 835, 835, 839, - 835, 835, 835, 835, 835, 835, 835, 835, 840, 841, - 842, 843, 844, 835, 835, 845, 846, 847, 848, 849, - 850, 851, 852, 853, 854, 855, 856, 857, 858, 859, - 860, 861, 862, 863, 864, 865, 866, 867, 868, 869, - 870, 871, 872, 873, 874, 875, 876, 877, 878, 879, - - 880, 881, 882, 883, 884, 885, 886, 887, 888, 889, - 890, 891, 892, 893, 894, 895, 896, 897, 898, 899, - 900, 901, 902, 903, 904, 905, 906, 907, 908, 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, 938, 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, 58, - - 807, 726, 807, 809, 725, 809, 835, 724, 835, 838, - 723, 838, 722, 721, 720, 719, 718, 717, 716, 715, + 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, + 14, 15, 16, 17, 17, 17, 17, 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, 32, 32, 4, 32, 32, + 32, 32, 32, 45, 46, 32, 32, 32, 47, 32, + 48, 49, 32, 32, 32, 50, 32, 32, 51, 32, + 32, 32, 52, 53, 54, 54, 56, 54, 54, 58, + 54, 57, 57, 57, 57, 57, 59, 60, 747, 62, + 54, 55, 55, 54, 55, 55, 54, 55, 54, 61, + + 63, 70, 54, 54, 54, 71, 88, 55, 77, 201, + 55, 748, 54, 55, 72, 55, 217, 218, 54, 55, + 55, 55, 64, 83, 65, 65, 65, 65, 65, 55, + 78, 548, 549, 202, 54, 55, 54, 195, 79, 66, + 73, 74, 54, 75, 75, 75, 75, 75, 81, 82, + 88, 55, 67, 68, 69, 54, 88, 76, 114, 55, + 88, 103, 190, 88, 208, 83, 115, 83, 84, 104, + 257, 89, 55, 83, 272, 743, 258, 83, 274, 90, + 83, 209, 275, 76, 116, 125, 273, 85, 86, 87, + 744, 105, 91, 117, 118, 106, 119, 749, 92, 93, + + 88, 88, 120, 88, 108, 107, 88, 94, 121, 88, + 95, 88, 109, 96, 110, 750, 293, 83, 83, 290, + 83, 751, 97, 83, 123, 98, 83, 291, 83, 99, + 294, 752, 100, 101, 88, 349, 111, 102, 112, 88, + 126, 131, 88, 88, 124, 238, 543, 88, 113, 753, + 239, 83, 122, 134, 240, 544, 83, 88, 127, 83, + 83, 135, 128, 88, 83, 350, 129, 147, 88, 754, + 130, 132, 139, 88, 83, 148, 136, 140, 755, 133, + 83, 149, 170, 756, 137, 83, 138, 141, 88, 178, + 83, 416, 180, 417, 142, 143, 144, 552, 88, 145, + + 171, 757, 146, 88, 88, 83, 758, 172, 150, 181, + 553, 173, 151, 174, 175, 83, 152, 318, 153, 154, + 83, 83, 88, 179, 582, 54, 759, 155, 583, 156, + 176, 88, 319, 320, 177, 157, 760, 761, 88, 83, + 158, 159, 55, 88, 762, 160, 184, 162, 83, 161, + 163, 164, 165, 166, 167, 83, 763, 188, 185, 182, + 83, 54, 168, 764, 765, 766, 224, 183, 225, 226, + 739, 186, 187, 767, 740, 227, 768, 169, 55, 57, + 57, 57, 57, 57, 65, 65, 65, 65, 65, 197, + 197, 197, 197, 197, 769, 770, 771, 772, 192, 773, + + 774, 775, 74, 198, 75, 75, 75, 75, 75, 199, + 199, 776, 777, 200, 200, 200, 200, 200, 76, 200, + 200, 200, 200, 200, 192, 778, 308, 308, 779, 198, + 309, 309, 309, 309, 309, 197, 197, 197, 197, 197, + 780, 781, 782, 783, 76, 784, 311, 311, 785, 310, + 312, 312, 312, 312, 312, 200, 200, 200, 200, 200, + 411, 786, 787, 788, 412, 309, 309, 309, 309, 309, + 789, 413, 790, 791, 792, 310, 309, 309, 309, 309, + 309, 424, 424, 793, 794, 425, 425, 425, 425, 425, + 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, + + 425, 425, 425, 425, 425, 425, 425, 425, 425, 425, + 554, 795, 796, 797, 798, 799, 801, 803, 804, 805, + 555, 806, 807, 808, 556, 800, 800, 809, 800, 800, + 800, 800, 800, 800, 800, 800, 800, 800, 810, 811, + 812, 813, 814, 800, 800, 800, 800, 800, 815, 816, + 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, + 828, 829, 831, 832, 833, 834, 835, 836, 837, 838, + 839, 840, 800, 841, 842, 843, 844, 845, 846, 847, + 848, 849, 850, 851, 852, 853, 854, 855, 856, 857, + 858, 859, 860, 861, 862, 863, 864, 800, 800, 827, + + 827, 865, 827, 827, 827, 827, 827, 827, 827, 827, + 827, 827, 866, 867, 868, 869, 870, 827, 827, 827, + 827, 827, 871, 872, 873, 874, 875, 876, 877, 878, + 879, 880, 881, 882, 883, 884, 885, 886, 887, 888, + 889, 890, 891, 892, 893, 894, 827, 895, 896, 897, + 898, 899, 900, 901, 902, 903, 904, 905, 906, 907, + 908, 909, 910, 911, 912, 913, 914, 915, 916, 917, + 918, 827, 827, 919, 920, 921, 922, 923, 924, 925, + 926, 927, 928, 929, 930, 931, 932, 933, 934, 935, + 936, 937, 938, 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, 80, 800, 746, 800, 802, 745, 802, + 827, 742, 827, 830, 741, 830, 738, 737, 736, 735, + 734, 733, 732, 731, 730, 729, 728, 727, 726, 725, + 724, 723, 722, 721, 720, 719, 718, 717, 716, 715, 714, 713, 712, 711, 710, 709, 708, 707, 706, 705, 704, 703, 702, 701, 700, 699, 698, 697, 696, 695, 694, 693, 692, 691, 690, 689, 688, 687, 686, 685, 684, 683, 682, 681, 680, 679, 678, 677, 676, 675, + 674, 673, 672, 671, 670, 669, 668, 667, 666, 665, 664, 663, 662, 661, 660, 659, 658, 657, 656, 655, 654, 653, 652, 651, 650, 649, 648, 647, 646, 645, 644, 643, 642, 641, 640, 639, 638, 637, 636, 635, - 634, 633, 632, 631, 630, 629, 628, 627, 626, 625, 624, 623, 622, 621, 620, 619, 618, 617, 616, 615, 614, 613, 612, 611, 610, 609, 608, 607, 606, 605, 604, 603, 602, 601, 600, 599, 598, 597, 596, 595, 594, 593, 592, 591, 590, 589, 588, 587, 586, 585, - 584, 583, 582, 581, 580, 579, 578, 575, 574, 573, + 584, 581, 580, 579, 578, 577, 576, 575, 574, 573, + 572, 571, 570, 569, 568, 567, 566, 565, 564, 563, - 562, 561, 560, 559, 558, 557, 556, 555, 554, 553, - 552, 551, 550, 549, 543, 542, 539, 538, 537, 534, + 562, 561, 560, 559, 558, 557, 551, 550, 547, 546, + 545, 542, 541, 540, 539, 538, 537, 536, 535, 534, 533, 532, 531, 530, 529, 528, 527, 526, 525, 524, - 523, 522, 521, 520, 519, 518, 517, 516, 515, 514, 513, 512, 511, 510, 509, 508, 507, 506, 505, 504, 503, 502, 501, 500, 499, 498, 497, 496, 495, 494, 493, 492, 491, 490, 489, 488, 487, 486, 485, 484, 483, 482, 481, 480, 479, 478, 477, 476, 475, 474, 473, 472, 471, 470, 469, 468, 467, 466, 465, 464, + 463, 462, 461, 460, 459, 458, 457, 456, 455, 454, 453, 452, 451, 450, 449, 448, 447, 446, 445, 444, 443, 442, 441, 440, 439, 438, 437, 436, 435, 434, - 433, 432, 431, 430, 429, 428, 427, 426, 425, 424, - - 423, 422, 421, 420, 419, 418, 417, 416, 415, 414, - 413, 410, 409, 408, 407, 406, 405, 402, 401, 397, + 433, 432, 431, 430, 429, 428, 427, 426, 423, 422, + 421, 420, 419, 418, 415, 414, 410, 409, 408, 407, + 406, 405, 404, 403, 402, 401, 400, 399, 398, 397, 396, 395, 394, 393, 392, 391, 390, 389, 388, 387, 386, 385, 384, 383, 382, 381, 380, 379, 378, 377, 376, 375, 374, 373, 372, 371, 370, 369, 368, 367, 366, 365, 364, 363, 362, 361, 360, 359, 358, 357, - 356, 355, 354, 353, 352, 351, 350, 349, 348, 347, - 346, 345, 344, 343, 342, 341, 340, 339, 338, 337, - 336, 335, 334, 331, 330, 329, 328, 327, 326, 325, - 324, 323, 322, 321, 320, 319, 318, 317, 316, 315, - - 314, 313, 312, 311, 310, 309, 308, 307, 306, 305, - 304, 303, 299, 298, 297, 296, 295, 289, 288, 287, - 286, 285, 284, 283, 282, 281, 280, 279, 278, 277, - 274, 271, 270, 269, 268, 267, 266, 265, 264, 263, - 262, 261, 260, 259, 258, 252, 251, 250, 249, 248, - 247, 246, 245, 244, 243, 242, 239, 236, 235, 234, - 233, 232, 231, 230, 229, 228, 225, 224, 223, 222, - 221, 220, 219, 215, 214, 213, 212, 211, 210, 209, - 208, 207, 206, 201, 200, 199, 198, 197, 194, 193, - 192, 191, 190, 189, 188, 178, 183, 182, 181, 180, - - 173, 171, 170, 168, 167, 166, 979, 3, 979, 979, - 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, - 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, - 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, - 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, - 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, - 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, - 979, 979, 979, 979 + + 356, 355, 354, 353, 352, 351, 348, 347, 346, 345, + 344, 343, 342, 341, 340, 339, 338, 337, 336, 335, + 334, 333, 332, 331, 330, 329, 328, 327, 326, 325, + 324, 323, 322, 321, 317, 316, 315, 314, 313, 307, + 306, 305, 304, 303, 302, 301, 300, 299, 298, 297, + 296, 295, 292, 289, 288, 287, 286, 285, 284, 283, + 282, 281, 280, 279, 278, 277, 276, 271, 270, 269, + 268, 267, 266, 265, 264, 263, 262, 261, 260, 259, + 256, 255, 254, 253, 252, 251, 250, 249, 248, 247, + 246, 245, 244, 243, 242, 241, 237, 236, 235, 234, + + 233, 232, 231, 230, 229, 228, 223, 222, 221, 220, + 219, 216, 215, 214, 213, 212, 211, 210, 201, 207, + 206, 205, 204, 203, 196, 194, 193, 191, 190, 189, + 969, 3, 969, 969, 969, 969, 969, 969, 969, 969, + 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, + 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, + 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, + 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, + 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, + 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, + + 969, 969, 969, 969, 969, 969 } ; -static yyconst short int yy_chk[1275] = +static yyconst short int yy_chk[1307] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @@ -815,140 +817,144 @@ static yyconst short int yy_chk[1275] = 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 4, 5, 7, 8, - 8, 8, 8, 8, 9, 11, 13, 14, 8, 11, - 24, 74, 74, 4, 5, 7, 21, 25, 21, 11, - 51, 9, 28, 13, 14, 8, 10, 24, 10, 10, - - 10, 10, 10, 21, 25, 16, 11, 10, 64, 28, - 10, 681, 51, 21, 99, 99, 64, 36, 15, 15, - 16, 25, 16, 10, 10, 10, 12, 16, 12, 12, - 12, 12, 12, 28, 36, 15, 59, 12, 15, 12, - 16, 109, 18, 34, 18, 65, 16, 109, 36, 38, - 18, 22, 682, 22, 12, 148, 15, 15, 15, 59, - 34, 18, 65, 148, 12, 17, 38, 17, 22, 19, - 19, 18, 38, 17, 37, 18, 17, 683, 19, 17, - 19, 20, 34, 20, 17, 18, 19, 213, 17, 20, - 17, 37, 23, 27, 17, 27, 22, 17, 17, 685, - - 20, 19, 17, 19, 26, 686, 20, 23, 37, 23, - 26, 31, 27, 19, 213, 20, 20, 43, 20, 29, - 41, 26, 27, 442, 39, 42, 23, 26, 31, 150, - 27, 26, 442, 29, 43, 26, 29, 41, 31, 26, - 91, 39, 42, 150, 43, 91, 31, 29, 687, 91, - 111, 111, 31, 446, 446, 29, 40, 29, 30, 39, - 42, 41, 46, 46, 46, 46, 46, 30, 124, 35, - 125, 35, 30, 40, 125, 30, 124, 283, 35, 283, - 124, 30, 35, 40, 35, 35, 35, 688, 30, 30, - 30, 40, 80, 30, 80, 80, 30, 32, 449, 491, - - 35, 80, 32, 491, 35, 690, 32, 691, 183, 692, - 32, 449, 32, 32, 32, 48, 48, 48, 48, 48, - 32, 280, 32, 183, 183, 280, 48, 693, 32, 694, - 697, 698, 280, 32, 32, 699, 701, 702, 32, 450, - 57, 57, 32, 33, 57, 57, 57, 57, 57, 450, - 700, 48, 33, 450, 700, 33, 33, 33, 33, 33, - 33, 55, 55, 55, 55, 55, 33, 703, 706, 707, - 705, 56, 55, 56, 56, 56, 56, 56, 708, 709, - 710, 33, 169, 169, 56, 705, 169, 169, 169, 169, - 169, 174, 174, 174, 174, 174, 711, 55, 712, 175, - - 175, 716, 174, 175, 175, 175, 175, 175, 718, 56, - 176, 176, 176, 176, 176, 177, 177, 177, 177, 177, - 290, 290, 290, 290, 290, 719, 720, 174, 291, 291, - 291, 291, 291, 292, 292, 721, 723, 292, 292, 292, - 292, 292, 293, 293, 293, 293, 293, 294, 294, 294, - 294, 294, 411, 411, 411, 411, 411, 412, 412, 412, - 412, 412, 724, 725, 726, 727, 728, 729, 730, 731, - 733, 734, 735, 736, 738, 739, 740, 741, 742, 743, - 744, 745, 746, 747, 748, 749, 750, 751, 752, 753, - 755, 757, 759, 760, 761, 762, 763, 764, 765, 766, - - 768, 769, 770, 771, 772, 773, 774, 776, 777, 777, - 778, 777, 777, 777, 777, 777, 777, 777, 777, 779, - 780, 781, 783, 784, 777, 777, 785, 786, 787, 788, - 789, 790, 791, 792, 793, 795, 796, 797, 798, 799, - 800, 802, 803, 804, 806, 810, 811, 812, 812, 813, - 812, 812, 812, 812, 812, 812, 812, 812, 814, 815, - 816, 818, 819, 812, 812, 820, 821, 822, 823, 824, - 825, 827, 828, 829, 830, 831, 832, 833, 836, 839, - 840, 841, 842, 843, 844, 845, 846, 847, 848, 849, - 851, 853, 854, 855, 856, 858, 859, 860, 861, 862, - - 863, 864, 865, 867, 868, 869, 870, 871, 873, 874, - 875, 876, 877, 878, 880, 882, 883, 884, 885, 886, - 887, 888, 889, 890, 891, 892, 893, 894, 895, 899, - 900, 901, 903, 904, 905, 906, 907, 908, 909, 910, - 911, 912, 914, 915, 916, 917, 918, 919, 920, 921, - 922, 923, 924, 927, 928, 929, 930, 931, 932, 933, - 934, 935, 936, 937, 938, 939, 940, 941, 942, 943, - 944, 945, 946, 947, 948, 949, 951, 952, 953, 954, - 955, 957, 958, 960, 961, 962, 963, 964, 965, 967, - 968, 969, 970, 971, 972, 973, 974, 976, 977, 980, - - 981, 680, 981, 982, 679, 982, 983, 677, 983, 984, - 676, 984, 675, 674, 673, 672, 669, 668, 667, 666, - 665, 664, 663, 662, 661, 660, 659, 658, 657, 656, - 655, 654, 653, 652, 651, 650, 649, 648, 647, 645, - 644, 642, 641, 640, 639, 638, 636, 635, 634, 633, - 632, 631, 630, 628, 627, 625, 624, 622, 621, 620, - 619, 618, 617, 615, 614, 613, 611, 610, 609, 608, - 606, 605, 604, 603, 602, 601, 600, 599, 598, 596, - 595, 593, 592, 591, 590, 589, 588, 584, 583, 582, - 580, 578, 577, 576, 575, 574, 573, 572, 569, 567, - - 566, 565, 564, 563, 562, 561, 559, 557, 554, 553, - 551, 550, 549, 548, 547, 546, 545, 544, 543, 541, - 540, 538, 537, 536, 535, 534, 531, 530, 529, 527, - 526, 525, 524, 523, 522, 520, 518, 517, 516, 515, - 514, 511, 510, 509, 508, 507, 506, 505, 502, 501, - 499, 498, 497, 496, 495, 494, 492, 490, 489, 488, - 487, 486, 485, 484, 482, 481, 480, 477, 474, 473, - 472, 469, 468, 467, 465, 463, 461, 460, 458, 457, - 455, 454, 453, 452, 448, 447, 445, 444, 443, 441, - 440, 439, 438, 437, 435, 434, 433, 432, 431, 430, - - 429, 428, 427, 426, 425, 424, 423, 422, 420, 419, - 418, 417, 416, 415, 414, 413, 410, 409, 408, 407, - 406, 405, 404, 401, 400, 399, 398, 396, 394, 393, - 392, 391, 390, 388, 387, 386, 385, 383, 381, 379, - 378, 377, 376, 375, 374, 373, 372, 371, 370, 369, - 368, 367, 366, 365, 364, 363, 362, 361, 360, 358, - 357, 355, 353, 352, 350, 349, 348, 347, 346, 345, - 344, 343, 341, 339, 338, 337, 335, 334, 333, 332, - 331, 330, 329, 328, 327, 326, 323, 322, 321, 320, - 319, 317, 316, 315, 314, 313, 312, 311, 309, 308, - - 307, 306, 305, 304, 302, 301, 300, 299, 298, 297, - 295, 289, 288, 287, 286, 285, 284, 282, 281, 279, - 278, 277, 276, 275, 274, 273, 272, 271, 270, 269, - 268, 267, 266, 265, 264, 263, 262, 261, 260, 259, - 258, 257, 256, 255, 254, 253, 252, 251, 250, 249, - 248, 247, 246, 245, 244, 243, 242, 241, 240, 239, - 238, 237, 236, 235, 234, 233, 232, 231, 230, 229, - 228, 227, 226, 225, 223, 222, 221, 220, 219, 218, - 216, 215, 214, 212, 211, 210, 209, 208, 207, 206, - 205, 204, 203, 202, 201, 200, 199, 198, 197, 196, - - 195, 194, 193, 192, 191, 190, 189, 188, 187, 186, - 185, 184, 182, 181, 180, 179, 178, 167, 166, 165, - 164, 163, 162, 161, 160, 159, 158, 157, 156, 155, - 149, 147, 144, 142, 140, 139, 138, 137, 136, 135, - 134, 129, 128, 127, 126, 123, 121, 120, 119, 118, - 117, 116, 115, 114, 113, 112, 110, 108, 107, 106, - 105, 104, 103, 102, 101, 100, 98, 97, 96, 95, - 94, 93, 92, 90, 89, 88, 87, 86, 85, 84, - 83, 82, 81, 79, 78, 77, 76, 75, 73, 72, - 71, 70, 69, 68, 67, 66, 63, 62, 61, 60, - - 52, 50, 49, 47, 45, 44, 3, 979, 979, 979, - 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, - 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, - 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, - 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, - 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, - 979, 979, 979, 979, 979, 979, 979, 979, 979, 979, - 979, 979, 979, 979 + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 4, 5, 7, 8, 11, 10, + 7, 9, 9, 9, 9, 9, 12, 13, 706, 14, + 12, 4, 5, 9, 8, 11, 18, 7, 10, 13, + + 14, 16, 19, 13, 14, 16, 32, 12, 20, 81, + 9, 707, 20, 18, 16, 10, 96, 96, 16, 19, + 13, 14, 15, 32, 15, 15, 15, 15, 15, 20, + 21, 458, 458, 81, 21, 16, 15, 68, 22, 15, + 16, 17, 22, 17, 17, 17, 17, 17, 23, 23, + 33, 21, 15, 15, 15, 17, 24, 17, 28, 22, + 28, 26, 68, 26, 87, 23, 28, 33, 23, 26, + 130, 24, 17, 24, 145, 703, 130, 28, 146, 24, + 26, 87, 146, 17, 28, 33, 145, 23, 23, 23, + 703, 26, 24, 28, 28, 26, 28, 708, 24, 25, + + 29, 25, 29, 27, 27, 26, 30, 25, 30, 31, + 25, 36, 27, 25, 27, 709, 171, 29, 25, 169, + 27, 710, 25, 30, 31, 25, 31, 169, 36, 25, + 171, 714, 25, 25, 34, 235, 27, 25, 27, 39, + 34, 35, 42, 35, 31, 113, 454, 37, 27, 716, + 113, 34, 30, 36, 113, 454, 39, 44, 34, 42, + 35, 37, 34, 38, 37, 235, 34, 39, 46, 717, + 34, 35, 38, 47, 44, 39, 37, 38, 718, 35, + 38, 39, 42, 719, 37, 46, 37, 38, 45, 44, + 47, 301, 46, 301, 38, 38, 38, 461, 43, 38, + + 43, 721, 38, 40, 49, 45, 722, 43, 40, 47, + 461, 43, 40, 43, 43, 43, 40, 206, 40, 40, + 40, 49, 50, 45, 500, 52, 723, 40, 500, 40, + 43, 48, 206, 206, 43, 40, 724, 725, 41, 50, + 40, 40, 52, 51, 726, 40, 49, 41, 48, 40, + 41, 41, 41, 41, 41, 41, 727, 53, 50, 48, + 51, 53, 41, 728, 730, 731, 102, 48, 102, 102, + 699, 51, 52, 732, 699, 102, 733, 41, 53, 57, + 57, 57, 57, 57, 65, 65, 65, 65, 65, 74, + 74, 74, 74, 74, 735, 736, 737, 738, 65, 739, + + 740, 741, 75, 74, 75, 75, 75, 75, 75, 76, + 76, 742, 743, 76, 76, 76, 76, 76, 75, 199, + 199, 199, 199, 199, 65, 744, 192, 192, 745, 74, + 192, 192, 192, 192, 192, 197, 197, 197, 197, 197, + 746, 747, 748, 749, 75, 751, 198, 198, 753, 197, + 198, 198, 198, 198, 198, 200, 200, 200, 200, 200, + 298, 755, 756, 757, 298, 308, 308, 308, 308, 308, + 758, 298, 759, 760, 761, 197, 309, 309, 309, 309, + 309, 310, 310, 762, 764, 310, 310, 310, 310, 310, + 311, 311, 311, 311, 311, 312, 312, 312, 312, 312, + + 424, 424, 424, 424, 424, 425, 425, 425, 425, 425, + 462, 765, 766, 767, 768, 769, 771, 773, 774, 775, + 462, 776, 777, 778, 462, 772, 772, 779, 772, 772, + 772, 772, 772, 772, 772, 772, 772, 772, 780, 781, + 782, 783, 784, 772, 772, 772, 772, 772, 785, 786, + 787, 789, 790, 791, 792, 793, 795, 796, 797, 799, + 803, 804, 806, 807, 808, 809, 811, 812, 813, 814, + 815, 816, 772, 817, 818, 820, 821, 822, 823, 824, + 825, 828, 831, 832, 833, 834, 835, 836, 837, 838, + 839, 840, 841, 843, 845, 846, 847, 772, 772, 805, + + 805, 849, 805, 805, 805, 805, 805, 805, 805, 805, + 805, 805, 850, 851, 852, 853, 854, 805, 805, 805, + 805, 805, 855, 856, 858, 859, 860, 861, 862, 863, + 864, 865, 866, 867, 868, 870, 872, 873, 874, 875, + 876, 877, 878, 879, 880, 881, 805, 882, 883, 884, + 885, 889, 890, 891, 893, 894, 895, 896, 897, 898, + 899, 900, 901, 902, 904, 905, 906, 907, 908, 909, + 910, 805, 805, 911, 912, 913, 914, 917, 918, 919, + 920, 921, 922, 923, 924, 925, 926, 927, 928, 929, + 930, 931, 932, 933, 934, 935, 936, 937, 938, 939, + + 941, 942, 943, 944, 945, 947, 948, 950, 951, 952, + 953, 954, 955, 957, 958, 959, 960, 961, 962, 963, + 964, 966, 967, 970, 971, 705, 971, 972, 704, 972, + 973, 701, 973, 974, 700, 974, 698, 697, 696, 693, + 692, 691, 690, 689, 687, 686, 685, 683, 682, 681, + 680, 679, 678, 677, 676, 675, 674, 673, 670, 669, + 668, 667, 666, 665, 664, 663, 662, 661, 660, 659, + 658, 657, 656, 655, 654, 653, 652, 651, 650, 649, + 647, 646, 644, 643, 642, 641, 640, 638, 637, 636, + 635, 634, 633, 631, 630, 628, 627, 626, 625, 624, + + 623, 622, 620, 619, 618, 616, 615, 614, 613, 611, + 610, 609, 608, 607, 606, 605, 604, 603, 601, 599, + 598, 597, 596, 595, 594, 590, 589, 588, 586, 584, + 583, 582, 581, 580, 579, 578, 575, 573, 572, 570, + 569, 568, 567, 565, 563, 560, 559, 557, 556, 555, + 554, 553, 552, 551, 549, 548, 546, 545, 544, 543, + 542, 539, 538, 537, 535, 534, 533, 532, 531, 530, + 528, 526, 525, 524, 523, 520, 519, 518, 517, 516, + 515, 514, 511, 510, 508, 507, 506, 505, 504, 503, + 501, 499, 498, 497, 496, 495, 494, 493, 491, 490, + + 489, 488, 484, 483, 482, 479, 478, 477, 475, 473, + 471, 470, 468, 467, 465, 464, 460, 459, 457, 456, + 455, 453, 452, 451, 450, 449, 447, 446, 445, 444, + 443, 442, 441, 440, 439, 438, 437, 436, 435, 434, + 432, 431, 430, 429, 428, 427, 426, 423, 422, 421, + 420, 419, 418, 417, 414, 413, 412, 411, 409, 407, + 406, 405, 404, 403, 401, 400, 399, 398, 396, 394, + 392, 391, 390, 389, 388, 387, 386, 385, 384, 383, + 382, 381, 380, 379, 378, 377, 376, 375, 374, 373, + 372, 370, 368, 367, 365, 364, 363, 362, 361, 360, + + 358, 356, 355, 354, 352, 351, 350, 349, 348, 347, + 346, 345, 344, 343, 340, 339, 338, 337, 336, 334, + 333, 332, 331, 330, 329, 328, 326, 325, 324, 323, + 322, 320, 319, 318, 317, 316, 315, 313, 307, 306, + 305, 304, 303, 302, 300, 299, 297, 296, 295, 294, + 293, 292, 291, 290, 289, 288, 287, 286, 285, 284, + 283, 282, 281, 280, 279, 278, 277, 276, 275, 274, + 273, 272, 271, 270, 269, 268, 267, 266, 265, 264, + 263, 262, 261, 260, 259, 258, 257, 256, 255, 254, + 253, 252, 251, 250, 249, 248, 247, 245, 244, 243, + + 242, 241, 240, 238, 237, 236, 234, 233, 232, 231, + 230, 229, 228, 227, 226, 225, 224, 223, 222, 221, + 220, 219, 218, 217, 216, 215, 214, 213, 212, 211, + 210, 209, 208, 207, 205, 204, 203, 202, 201, 190, + 189, 186, 185, 184, 183, 182, 181, 180, 179, 178, + 177, 176, 170, 168, 165, 163, 161, 160, 159, 158, + 157, 156, 155, 150, 149, 148, 147, 144, 142, 141, + 140, 139, 138, 137, 136, 135, 134, 133, 132, 131, + 129, 128, 127, 126, 125, 124, 123, 122, 121, 120, + 119, 118, 117, 116, 115, 114, 112, 111, 110, 109, + + 108, 107, 106, 105, 104, 103, 101, 100, 99, 98, + 97, 95, 94, 93, 92, 91, 90, 89, 88, 86, + 85, 84, 83, 82, 69, 67, 66, 64, 55, 54, + 3, 969, 969, 969, 969, 969, 969, 969, 969, 969, + 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, + 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, + 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, + 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, + 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, + 969, 969, 969, 969, 969, 969, 969, 969, 969, 969, + + 969, 969, 969, 969, 969, 969 } ; static yy_state_type yy_last_accepting_state; @@ -1006,7 +1012,7 @@ void skipline(void); && ferror( yyin ) ) \ YY_FATAL_ERROR( "input in flex scanner failed" ); -#line 1010 "Gmsh.yy.cpp" +#line 1016 "Gmsh.yy.cpp" /* Macros after this point can all be overridden by user definitions in * section 1. @@ -1160,7 +1166,7 @@ YY_DECL #line 60 "Gmsh.l" -#line 1164 "Gmsh.yy.cpp" +#line 1170 "Gmsh.yy.cpp" if ( yy_init ) { @@ -1211,13 +1217,13 @@ yy_match: while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 980 ) + if ( yy_current_state >= 970 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; ++yy_cp; } - while ( yy_base[yy_current_state] != 1208 ); + while ( yy_base[yy_current_state] != 1232 ); yy_find_action: yy_act = yy_accept[yy_current_state]; @@ -1291,775 +1297,830 @@ return tAFFECT; case 10: YY_RULE_SETUP #line 72 "Gmsh.l" -return tDOTS; +return tAFFECTPLUS ; YY_BREAK case 11: YY_RULE_SETUP -#line 75 "Gmsh.l" -return tAcos ; +#line 73 "Gmsh.l" +return tAFFECTMINUS ; YY_BREAK case 12: YY_RULE_SETUP -#line 76 "Gmsh.l" -return tAcos ; +#line 74 "Gmsh.l" +return tAFFECTTIMES ; YY_BREAK case 13: YY_RULE_SETUP -#line 77 "Gmsh.l" -return tAsin; +#line 75 "Gmsh.l" +return tAFFECTDIVIDE ; YY_BREAK case 14: YY_RULE_SETUP -#line 78 "Gmsh.l" -return tAsin; +#line 76 "Gmsh.l" +return tDOTS; YY_BREAK case 15: YY_RULE_SETUP -#line 79 "Gmsh.l" -return tAtan ; +#line 77 "Gmsh.l" +return tDOTS ; YY_BREAK case 16: YY_RULE_SETUP -#line 80 "Gmsh.l" -return tAtan ; +#line 78 "Gmsh.l" +return tCROSSPRODUCT ; YY_BREAK case 17: YY_RULE_SETUP -#line 81 "Gmsh.l" -return tAtan2 ; +#line 79 "Gmsh.l" +return tOR ; YY_BREAK case 18: YY_RULE_SETUP -#line 82 "Gmsh.l" -return tAtan2 ; +#line 80 "Gmsh.l" +return tAND ; YY_BREAK case 19: YY_RULE_SETUP -#line 83 "Gmsh.l" -return tAssociation; +#line 81 "Gmsh.l" +return tPLUSPLUS ; YY_BREAK case 20: YY_RULE_SETUP -#line 84 "Gmsh.l" -return tAttractor; +#line 82 "Gmsh.l" +return tMINUSMINUS ; YY_BREAK case 21: YY_RULE_SETUP -#line 86 "Gmsh.l" -return tBump; +#line 83 "Gmsh.l" +return tEQUAL ; YY_BREAK case 22: YY_RULE_SETUP -#line 87 "Gmsh.l" -return tBSpline; +#line 84 "Gmsh.l" +return tNOTEQUAL ; YY_BREAK case 23: YY_RULE_SETUP -#line 88 "Gmsh.l" -return tBounds; +#line 85 "Gmsh.l" +return tAPPROXEQUAL ; YY_BREAK case 24: YY_RULE_SETUP -#line 90 "Gmsh.l" -return tCeil ; +#line 86 "Gmsh.l" +return tLESSOREQUAL ; YY_BREAK case 25: YY_RULE_SETUP -#line 91 "Gmsh.l" -return tCosh ; +#line 87 "Gmsh.l" +return tGREATEROREQUAL ; YY_BREAK case 26: YY_RULE_SETUP -#line 92 "Gmsh.l" -return tCos ; +#line 89 "Gmsh.l" +return tAcos ; YY_BREAK case 27: YY_RULE_SETUP -#line 93 "Gmsh.l" -return tCharacteristic; +#line 90 "Gmsh.l" +return tAcos ; YY_BREAK case 28: YY_RULE_SETUP -#line 94 "Gmsh.l" -return tCircle; +#line 91 "Gmsh.l" +return tAsin; YY_BREAK case 29: YY_RULE_SETUP -#line 95 "Gmsh.l" -return tCoherence; +#line 92 "Gmsh.l" +return tAsin; YY_BREAK case 30: YY_RULE_SETUP -#line 96 "Gmsh.l" -return tComplex; +#line 93 "Gmsh.l" +return tAtan ; YY_BREAK case 31: YY_RULE_SETUP -#line 97 "Gmsh.l" -return tColor; +#line 94 "Gmsh.l" +return tAtan ; YY_BREAK case 32: YY_RULE_SETUP -#line 98 "Gmsh.l" -return tSpline; +#line 95 "Gmsh.l" +return tAtan2 ; YY_BREAK case 33: YY_RULE_SETUP -#line 100 "Gmsh.l" -return tDelete; +#line 96 "Gmsh.l" +return tAtan2 ; YY_BREAK case 34: YY_RULE_SETUP -#line 101 "Gmsh.l" -return tDilate; +#line 97 "Gmsh.l" +return tAttractor; YY_BREAK case 35: YY_RULE_SETUP -#line 102 "Gmsh.l" -return tDuplicata; +#line 99 "Gmsh.l" +return tBump; YY_BREAK case 36: YY_RULE_SETUP -#line 104 "Gmsh.l" -return tExp ; +#line 100 "Gmsh.l" +return tBSpline; YY_BREAK case 37: YY_RULE_SETUP -#line 105 "Gmsh.l" -return tEllipsis; +#line 101 "Gmsh.l" +return tBounds; YY_BREAK case 38: YY_RULE_SETUP -#line 106 "Gmsh.l" -return tExtrude; +#line 103 "Gmsh.l" +return tCeil ; YY_BREAK case 39: YY_RULE_SETUP -#line 107 "Gmsh.l" -return tElliptic; +#line 104 "Gmsh.l" +return tCosh ; YY_BREAK case 40: YY_RULE_SETUP -#line 108 "Gmsh.l" -return tELLIPSE; +#line 105 "Gmsh.l" +return tCos ; YY_BREAK case 41: YY_RULE_SETUP -#line 110 "Gmsh.l" -return tFabs ; +#line 106 "Gmsh.l" +return tCharacteristic; YY_BREAK case 42: YY_RULE_SETUP -#line 111 "Gmsh.l" -return tFloor ; +#line 107 "Gmsh.l" +return tCircle; YY_BREAK case 43: YY_RULE_SETUP -#line 112 "Gmsh.l" -return tFmod ; +#line 108 "Gmsh.l" +return tCoherence; YY_BREAK case 44: YY_RULE_SETUP -#line 114 "Gmsh.l" -return tGeneral; +#line 109 "Gmsh.l" +return tComplex; YY_BREAK case 45: YY_RULE_SETUP -#line 115 "Gmsh.l" -return tGeometry; +#line 110 "Gmsh.l" +return tColor; YY_BREAK case 46: YY_RULE_SETUP -#line 117 "Gmsh.l" -return tHypot ; +#line 111 "Gmsh.l" +return tSpline; YY_BREAK case 47: YY_RULE_SETUP -#line 119 "Gmsh.l" -return tInclude; +#line 113 "Gmsh.l" +return tDelete; YY_BREAK case 48: YY_RULE_SETUP -#line 121 "Gmsh.l" -return tKnots; +#line 114 "Gmsh.l" +return tDilate; YY_BREAK case 49: YY_RULE_SETUP -#line 123 "Gmsh.l" -return tLength; +#line 115 "Gmsh.l" +return tDuplicata; YY_BREAK case 50: YY_RULE_SETUP -#line 124 "Gmsh.l" -return tLine; +#line 117 "Gmsh.l" +return tExp ; YY_BREAK case 51: YY_RULE_SETUP -#line 125 "Gmsh.l" -return tLoop; +#line 118 "Gmsh.l" +return tEllipsis; YY_BREAK case 52: YY_RULE_SETUP -#line 126 "Gmsh.l" -return tLog ; +#line 119 "Gmsh.l" +return tExtrude; YY_BREAK case 53: YY_RULE_SETUP -#line 127 "Gmsh.l" -return tLog10 ; +#line 120 "Gmsh.l" +return tElliptic; YY_BREAK case 54: YY_RULE_SETUP -#line 128 "Gmsh.l" -return tLayers; +#line 121 "Gmsh.l" +return tELLIPSE; YY_BREAK case 55: YY_RULE_SETUP -#line 130 "Gmsh.l" -return tMesh; +#line 123 "Gmsh.l" +return tFabs ; YY_BREAK case 56: YY_RULE_SETUP -#line 131 "Gmsh.l" -return tModulo ; +#line 124 "Gmsh.l" +return tFloor ; YY_BREAK case 57: YY_RULE_SETUP -#line 133 "Gmsh.l" -return tNurbs; +#line 125 "Gmsh.l" +return tFmod ; YY_BREAK case 58: YY_RULE_SETUP -#line 135 "Gmsh.l" -return tOffset; +#line 127 "Gmsh.l" +return tHypot ; YY_BREAK case 59: YY_RULE_SETUP -#line 136 "Gmsh.l" -return tOrder; +#line 129 "Gmsh.l" +return tInclude; YY_BREAK case 60: YY_RULE_SETUP -#line 137 "Gmsh.l" -return tOptions; +#line 131 "Gmsh.l" +return tKnots; YY_BREAK case 61: YY_RULE_SETUP -#line 139 "Gmsh.l" -return tPhysical; +#line 133 "Gmsh.l" +return tLength; YY_BREAK case 62: YY_RULE_SETUP -#line 140 "Gmsh.l" -return tPi; +#line 134 "Gmsh.l" +return tLine; YY_BREAK case 63: YY_RULE_SETUP -#line 141 "Gmsh.l" -return tPlane; +#line 135 "Gmsh.l" +return tLoop; YY_BREAK case 64: YY_RULE_SETUP -#line 142 "Gmsh.l" -return tPoint; +#line 136 "Gmsh.l" +return tLog ; YY_BREAK case 65: YY_RULE_SETUP -#line 143 "Gmsh.l" -return tProgression; +#line 137 "Gmsh.l" +return tLog10 ; YY_BREAK case 66: YY_RULE_SETUP -#line 144 "Gmsh.l" -return tProgression; +#line 138 "Gmsh.l" +return tLayers; YY_BREAK case 67: YY_RULE_SETUP -#line 145 "Gmsh.l" -return tParametric; +#line 140 "Gmsh.l" +return tModulo ; YY_BREAK case 68: YY_RULE_SETUP -#line 146 "Gmsh.l" -return tPostProcessing; +#line 142 "Gmsh.l" +return tNurbs; YY_BREAK case 69: YY_RULE_SETUP -#line 147 "Gmsh.l" -return tPrint; +#line 144 "Gmsh.l" +return tOffset; YY_BREAK case 70: YY_RULE_SETUP -#line 149 "Gmsh.l" -return tRecombine; +#line 145 "Gmsh.l" +return tOrder; YY_BREAK case 71: YY_RULE_SETUP -#line 150 "Gmsh.l" -return tRotate; +#line 146 "Gmsh.l" +return tOptions; YY_BREAK case 72: YY_RULE_SETUP -#line 151 "Gmsh.l" -return tRuled; +#line 148 "Gmsh.l" +return tPhysical; YY_BREAK case 73: YY_RULE_SETUP -#line 153 "Gmsh.l" -return tSqrt ; +#line 149 "Gmsh.l" +return tPi; YY_BREAK case 74: YY_RULE_SETUP -#line 154 "Gmsh.l" -return tSin ; +#line 150 "Gmsh.l" +return tPlane; YY_BREAK case 75: YY_RULE_SETUP -#line 155 "Gmsh.l" -return tSinh ; +#line 151 "Gmsh.l" +return tPoint; YY_BREAK case 76: YY_RULE_SETUP -#line 156 "Gmsh.l" -return tPhysical; +#line 152 "Gmsh.l" +return tProgression; YY_BREAK case 77: YY_RULE_SETUP -#line 157 "Gmsh.l" -return tSpline; +#line 153 "Gmsh.l" +return tProgression; YY_BREAK case 78: YY_RULE_SETUP -#line 158 "Gmsh.l" -return tSurface; +#line 154 "Gmsh.l" +return tParametric; YY_BREAK case 79: YY_RULE_SETUP -#line 159 "Gmsh.l" -return tSymmetry; +#line 155 "Gmsh.l" +return tPrintf ; YY_BREAK case 80: YY_RULE_SETUP -#line 161 "Gmsh.l" -return tTransfinite; +#line 157 "Gmsh.l" +return tRecombine; YY_BREAK case 81: YY_RULE_SETUP -#line 162 "Gmsh.l" -return tTranslate; +#line 158 "Gmsh.l" +return tRotate; YY_BREAK case 82: YY_RULE_SETUP -#line 163 "Gmsh.l" -return tTanh ; +#line 159 "Gmsh.l" +return tRuled; YY_BREAK case 83: YY_RULE_SETUP -#line 164 "Gmsh.l" -return tTan; +#line 161 "Gmsh.l" +return tSqrt ; YY_BREAK case 84: YY_RULE_SETUP -#line 165 "Gmsh.l" -return tTrimmed; +#line 162 "Gmsh.l" +return tSin ; YY_BREAK case 85: YY_RULE_SETUP -#line 167 "Gmsh.l" -return tUsing; +#line 163 "Gmsh.l" +return tSinh ; YY_BREAK case 86: YY_RULE_SETUP -#line 169 "Gmsh.l" -return tView; +#line 164 "Gmsh.l" +return tPhysical; YY_BREAK case 87: YY_RULE_SETUP -#line 170 "Gmsh.l" -return tVolume; +#line 165 "Gmsh.l" +return tSpline; YY_BREAK case 88: YY_RULE_SETUP -#line 172 "Gmsh.l" -return tWith; +#line 166 "Gmsh.l" +return tSurface; YY_BREAK case 89: YY_RULE_SETUP -#line 174 "Gmsh.l" -return tFor; +#line 167 "Gmsh.l" +return tSymmetry; YY_BREAK case 90: YY_RULE_SETUP -#line 175 "Gmsh.l" -return tEndFor; +#line 168 "Gmsh.l" +return tScript; YY_BREAK case 91: YY_RULE_SETUP -#line 176 "Gmsh.l" -return tScript; +#line 170 "Gmsh.l" +return tTransfinite; YY_BREAK case 92: YY_RULE_SETUP -#line 177 "Gmsh.l" -return tExit; +#line 171 "Gmsh.l" +return tTranslate; YY_BREAK case 93: YY_RULE_SETUP -#line 178 "Gmsh.l" -return tMerge; +#line 172 "Gmsh.l" +return tTanh ; YY_BREAK case 94: YY_RULE_SETUP -#line 180 "Gmsh.l" -return tScalarTetrahedron; +#line 173 "Gmsh.l" +return tTan; YY_BREAK case 95: YY_RULE_SETUP -#line 181 "Gmsh.l" -return tVectorTetrahedron; +#line 174 "Gmsh.l" +return tTrimmed; YY_BREAK case 96: YY_RULE_SETUP -#line 182 "Gmsh.l" -return tTensorTetrahedron; +#line 176 "Gmsh.l" +return tUsing; YY_BREAK case 97: YY_RULE_SETUP -#line 183 "Gmsh.l" -return tScalarTriangle; +#line 178 "Gmsh.l" +return tView; YY_BREAK case 98: YY_RULE_SETUP -#line 184 "Gmsh.l" -return tVectorTriangle; +#line 179 "Gmsh.l" +return tVolume; YY_BREAK case 99: YY_RULE_SETUP -#line 185 "Gmsh.l" -return tTensorTriangle; +#line 181 "Gmsh.l" +return tWith; YY_BREAK case 100: YY_RULE_SETUP -#line 186 "Gmsh.l" -return tScalarLine; +#line 183 "Gmsh.l" +return tFor; YY_BREAK case 101: YY_RULE_SETUP -#line 187 "Gmsh.l" -return tVectorLine; +#line 184 "Gmsh.l" +return tEndFor; YY_BREAK case 102: YY_RULE_SETUP -#line 188 "Gmsh.l" -return tTensorLine; +#line 185 "Gmsh.l" +return tScript; YY_BREAK case 103: YY_RULE_SETUP -#line 189 "Gmsh.l" -return tScalarPoint; +#line 186 "Gmsh.l" +return tExit; YY_BREAK case 104: YY_RULE_SETUP -#line 190 "Gmsh.l" -return tVectorPoint; +#line 187 "Gmsh.l" +return tMerge; YY_BREAK case 105: YY_RULE_SETUP -#line 191 "Gmsh.l" -return tTensorPoint; +#line 189 "Gmsh.l" +return tScalarTetrahedron; YY_BREAK case 106: YY_RULE_SETUP -#line 194 "Gmsh.l" -return tCARTESIAN_POINT; +#line 190 "Gmsh.l" +return tVectorTetrahedron; YY_BREAK case 107: YY_RULE_SETUP -#line 195 "Gmsh.l" -return tB_SPLINE_SURFACE_WITH_KNOTS; +#line 191 "Gmsh.l" +return tTensorTetrahedron; YY_BREAK case 108: YY_RULE_SETUP -#line 196 "Gmsh.l" -return tB_SPLINE_CURVE_WITH_KNOTS; +#line 192 "Gmsh.l" +return tScalarTriangle; YY_BREAK case 109: YY_RULE_SETUP -#line 197 "Gmsh.l" -return tUNSPECIFIED; +#line 193 "Gmsh.l" +return tVectorTriangle; YY_BREAK case 110: YY_RULE_SETUP -#line 198 "Gmsh.l" -return tCONTINUOUS; +#line 194 "Gmsh.l" +return tTensorTriangle; YY_BREAK case 111: YY_RULE_SETUP -#line 199 "Gmsh.l" -return tFALSE; +#line 195 "Gmsh.l" +return tScalarLine; YY_BREAK case 112: YY_RULE_SETUP -#line 200 "Gmsh.l" -return tTRUE; +#line 196 "Gmsh.l" +return tVectorLine; YY_BREAK case 113: YY_RULE_SETUP -#line 201 "Gmsh.l" -return tU; +#line 197 "Gmsh.l" +return tTensorLine; YY_BREAK case 114: YY_RULE_SETUP -#line 202 "Gmsh.l" -return tV; +#line 198 "Gmsh.l" +return tScalarPoint; YY_BREAK case 115: YY_RULE_SETUP -#line 203 "Gmsh.l" -return tORIENTED_EDGE; +#line 199 "Gmsh.l" +return tVectorPoint; YY_BREAK case 116: YY_RULE_SETUP -#line 204 "Gmsh.l" -return tEDGE_CURVE; +#line 200 "Gmsh.l" +return tTensorPoint; YY_BREAK case 117: YY_RULE_SETUP -#line 205 "Gmsh.l" -return tEDGE_LOOP; +#line 203 "Gmsh.l" +return tCARTESIAN_POINT; YY_BREAK case 118: YY_RULE_SETUP -#line 206 "Gmsh.l" -return tVERTEX_POINT; +#line 204 "Gmsh.l" +return tB_SPLINE_SURFACE_WITH_KNOTS; YY_BREAK case 119: YY_RULE_SETUP -#line 207 "Gmsh.l" -return tFACE_OUTER_BOUND; +#line 205 "Gmsh.l" +return tB_SPLINE_CURVE_WITH_KNOTS; YY_BREAK case 120: YY_RULE_SETUP -#line 208 "Gmsh.l" -return tFACE_BOUND; +#line 206 "Gmsh.l" +return tUNSPECIFIED; YY_BREAK case 121: YY_RULE_SETUP -#line 209 "Gmsh.l" -return tADVANCED_FACE; +#line 207 "Gmsh.l" +return tCONTINUOUS; YY_BREAK case 122: YY_RULE_SETUP -#line 210 "Gmsh.l" -return tLine; +#line 208 "Gmsh.l" +return tFALSE; YY_BREAK case 123: YY_RULE_SETUP -#line 211 "Gmsh.l" -return tVECTOR; +#line 209 "Gmsh.l" +return tTRUE; YY_BREAK case 124: YY_RULE_SETUP -#line 212 "Gmsh.l" -return tDIRECTION; +#line 210 "Gmsh.l" +return tU; YY_BREAK case 125: YY_RULE_SETUP -#line 213 "Gmsh.l" -return tAXIS2_PLACEMENT_3D; +#line 211 "Gmsh.l" +return tV; YY_BREAK case 126: YY_RULE_SETUP -#line 214 "Gmsh.l" -return tPLANE; +#line 212 "Gmsh.l" +return tORIENTED_EDGE; YY_BREAK case 127: YY_RULE_SETUP -#line 215 "Gmsh.l" -return tHEADER; +#line 213 "Gmsh.l" +return tEDGE_CURVE; YY_BREAK case 128: YY_RULE_SETUP -#line 216 "Gmsh.l" -return tDATA; +#line 214 "Gmsh.l" +return tEDGE_LOOP; YY_BREAK case 129: YY_RULE_SETUP -#line 217 "Gmsh.l" -return tFILE_SCHEMA; +#line 215 "Gmsh.l" +return tVERTEX_POINT; YY_BREAK case 130: YY_RULE_SETUP -#line 218 "Gmsh.l" -return tFILE_NAME; +#line 216 "Gmsh.l" +return tFACE_OUTER_BOUND; YY_BREAK case 131: YY_RULE_SETUP -#line 219 "Gmsh.l" -return tFILE_DESCRIPTION; +#line 217 "Gmsh.l" +return tFACE_BOUND; YY_BREAK case 132: YY_RULE_SETUP -#line 220 "Gmsh.l" -return tISO; +#line 218 "Gmsh.l" +return tADVANCED_FACE; YY_BREAK case 133: YY_RULE_SETUP -#line 221 "Gmsh.l" -return tENDISO; +#line 219 "Gmsh.l" +return tLine; YY_BREAK case 134: YY_RULE_SETUP -#line 222 "Gmsh.l" -return tENDSEC; +#line 220 "Gmsh.l" +return tVECTOR; YY_BREAK case 135: YY_RULE_SETUP -#line 223 "Gmsh.l" -return tCLOSED_SHELL; +#line 221 "Gmsh.l" +return tDIRECTION; YY_BREAK case 136: YY_RULE_SETUP -#line 224 "Gmsh.l" -return tADVANCED_BREP_SHAPE_REPRESENTATION; +#line 222 "Gmsh.l" +return tAXIS2_PLACEMENT_3D; YY_BREAK case 137: YY_RULE_SETUP -#line 225 "Gmsh.l" -return tMANIFOLD_SOLID_BREP; +#line 223 "Gmsh.l" +return tPLANE; YY_BREAK case 138: YY_RULE_SETUP -#line 226 "Gmsh.l" -return tCYLINDRICAL_SURFACE; +#line 224 "Gmsh.l" +return tHEADER; YY_BREAK case 139: YY_RULE_SETUP -#line 227 "Gmsh.l" -return tCONICAL_SURFACE; +#line 225 "Gmsh.l" +return tDATA; YY_BREAK case 140: YY_RULE_SETUP -#line 228 "Gmsh.l" -return tTOROIDAL_SURFACE; +#line 226 "Gmsh.l" +return tFILE_SCHEMA; YY_BREAK case 141: YY_RULE_SETUP -#line 229 "Gmsh.l" -return tCIRCLE; +#line 227 "Gmsh.l" +return tFILE_NAME; YY_BREAK case 142: YY_RULE_SETUP -#line 230 "Gmsh.l" -return tTRIMMED_CURVE; +#line 228 "Gmsh.l" +return tFILE_DESCRIPTION; YY_BREAK case 143: YY_RULE_SETUP -#line 231 "Gmsh.l" -return tGEOMETRIC_SET; +#line 229 "Gmsh.l" +return tISO; YY_BREAK case 144: YY_RULE_SETUP -#line 232 "Gmsh.l" -return tCOMPOSITE_CURVE_SEGMENT; +#line 230 "Gmsh.l" +return tENDISO; YY_BREAK case 145: YY_RULE_SETUP -#line 233 "Gmsh.l" -return tCOMPOSITE_CURVE; +#line 231 "Gmsh.l" +return tENDSEC; YY_BREAK case 146: YY_RULE_SETUP -#line 234 "Gmsh.l" -return tPRODUCT_DEFINITION; +#line 232 "Gmsh.l" +return tCLOSED_SHELL; YY_BREAK case 147: YY_RULE_SETUP -#line 235 "Gmsh.l" -return tPRODUCT_DEFINITION_SHAPE; +#line 233 "Gmsh.l" +return tADVANCED_BREP_SHAPE_REPRESENTATION; YY_BREAK case 148: YY_RULE_SETUP -#line 236 "Gmsh.l" -return tSHAPE_DEFINITION_REPRESENTATION; +#line 234 "Gmsh.l" +return tMANIFOLD_SOLID_BREP; YY_BREAK case 149: YY_RULE_SETUP -#line 238 "Gmsh.l" -return tVertex; +#line 235 "Gmsh.l" +return tCYLINDRICAL_SURFACE; YY_BREAK case 150: YY_RULE_SETUP -#line 239 "Gmsh.l" -return tFacet; +#line 236 "Gmsh.l" +return tCONICAL_SURFACE; YY_BREAK case 151: YY_RULE_SETUP -#line 240 "Gmsh.l" -return tNormal; +#line 237 "Gmsh.l" +return tTOROIDAL_SURFACE; YY_BREAK case 152: YY_RULE_SETUP -#line 241 "Gmsh.l" -return tOuter; +#line 238 "Gmsh.l" +return tCIRCLE; YY_BREAK case 153: YY_RULE_SETUP -#line 242 "Gmsh.l" -return tLoopSTL; +#line 239 "Gmsh.l" +return tTRIMMED_CURVE; YY_BREAK case 154: YY_RULE_SETUP -#line 243 "Gmsh.l" -return tEndLoop; +#line 240 "Gmsh.l" +return tGEOMETRIC_SET; YY_BREAK case 155: YY_RULE_SETUP -#line 244 "Gmsh.l" -return tEndFacet; +#line 241 "Gmsh.l" +return tCOMPOSITE_CURVE_SEGMENT; YY_BREAK case 156: YY_RULE_SETUP -#line 245 "Gmsh.l" -{skipline();return tEndSolid;} +#line 242 "Gmsh.l" +return tCOMPOSITE_CURVE; YY_BREAK case 157: YY_RULE_SETUP -#line 246 "Gmsh.l" -{skipline();return tSolid;} +#line 243 "Gmsh.l" +return tPRODUCT_DEFINITION; YY_BREAK case 158: YY_RULE_SETUP -#line 248 "Gmsh.l" -{yylval.d = (double)atoi((char*)(yytext+1)); return tDOUBLE;} +#line 244 "Gmsh.l" +return tPRODUCT_DEFINITION_SHAPE; YY_BREAK case 159: -#line 251 "Gmsh.l" +YY_RULE_SETUP +#line 245 "Gmsh.l" +return tSHAPE_DEFINITION_REPRESENTATION; + YY_BREAK case 160: -#line 252 "Gmsh.l" +YY_RULE_SETUP +#line 247 "Gmsh.l" +return tVertex; + YY_BREAK case 161: -#line 253 "Gmsh.l" +YY_RULE_SETUP +#line 248 "Gmsh.l" +return tFacet; + YY_BREAK case 162: YY_RULE_SETUP -#line 253 "Gmsh.l" -{yylval.d = atof((char *)yytext); return tDOUBLE;} +#line 249 "Gmsh.l" +return tNormal; YY_BREAK case 163: YY_RULE_SETUP -#line 255 "Gmsh.l" -{yylval.c = strsave((char*)yytext); return tSTRING;} +#line 250 "Gmsh.l" +return tOuter; YY_BREAK case 164: YY_RULE_SETUP +#line 251 "Gmsh.l" +return tLoopSTL; + YY_BREAK +case 165: +YY_RULE_SETUP +#line 252 "Gmsh.l" +return tEndLoop; + YY_BREAK +case 166: +YY_RULE_SETUP +#line 253 "Gmsh.l" +return tEndFacet; + YY_BREAK +case 167: +YY_RULE_SETUP +#line 254 "Gmsh.l" +{skipline();return tEndSolid;} + YY_BREAK +case 168: +YY_RULE_SETUP +#line 255 "Gmsh.l" +{skipline();return tSolid;} + YY_BREAK +case 169: +YY_RULE_SETUP #line 257 "Gmsh.l" +{yylval.d = (double)atoi((char*)(yytext+1)); return tDOUBLE;} + YY_BREAK +case 170: +#line 260 "Gmsh.l" +case 171: +#line 261 "Gmsh.l" +case 172: +#line 262 "Gmsh.l" +case 173: +YY_RULE_SETUP +#line 262 "Gmsh.l" +{yylval.d = atof((char *)yytext); return tDOUBLE;} + YY_BREAK +case 174: +YY_RULE_SETUP +#line 264 "Gmsh.l" +{yylval.c = strsave((char*)yytext); return tSTRING;} + YY_BREAK +case 175: +YY_RULE_SETUP +#line 266 "Gmsh.l" return yytext[0]; YY_BREAK -case 165: +case 176: YY_RULE_SETUP -#line 259 "Gmsh.l" +#line 268 "Gmsh.l" ECHO; YY_BREAK -#line 2063 "Gmsh.yy.cpp" +#line 2124 "Gmsh.yy.cpp" case YY_STATE_EOF(INITIAL): yyterminate(); @@ -2351,7 +2412,7 @@ static yy_state_type yy_get_previous_state() while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 980 ) + if ( yy_current_state >= 970 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; @@ -2386,11 +2447,11 @@ yy_state_type yy_current_state; while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 980 ) + if ( yy_current_state >= 970 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; - yy_is_jam = (yy_current_state == 979); + yy_is_jam = (yy_current_state == 969); return yy_is_jam ? 0 : yy_current_state; } @@ -2945,7 +3006,7 @@ int main() return 0; } #endif -#line 259 "Gmsh.l" +#line 268 "Gmsh.l" #undef yywrap