diff --git a/Parser/Gmsh.l b/Parser/Gmsh.l index 1c328e5fae7f8181911a51cb7bd8327c132095d8..45aa55b6efb532f56af6520d75829b8ac8974d45 100644 --- a/Parser/Gmsh.l +++ b/Parser/Gmsh.l @@ -91,7 +91,6 @@ Atan2 return tAtan2; ArcTan2 return tAtan2; Bezier return tBezier; -Bump return tBump; BSpline return tBSpline; BoundingBox return tBoundingBox; @@ -165,8 +164,6 @@ Physical return tPhysical; Pi return tPi; Plane return tPlane; Point return tPoint; -Power return tProgression; -Progression return tProgression; Parametric return tParametric; PolarSphere return tPolarSphere; Printf return tPrintf; diff --git a/Parser/Gmsh.tab.cpp b/Parser/Gmsh.tab.cpp index f472f2e9e0b57f65587d65451382d9d7d6599864..798eaf219d5f1c56ec6b194ae4c6fc81f38c9610 100644 --- a/Parser/Gmsh.tab.cpp +++ b/Parser/Gmsh.tab.cpp @@ -133,66 +133,64 @@ tComplex = 314, tPhysical = 315, tUsing = 316, - tBump = 317, - tProgression = 318, - tPlugin = 319, - tRotate = 320, - tTranslate = 321, - tSymmetry = 322, - tDilate = 323, - tExtrude = 324, - tLoop = 325, - tRecombine = 326, - tSmoother = 327, - tSplit = 328, - tDelete = 329, - tCoherence = 330, - tIntersect = 331, - tLayers = 332, - tHole = 333, - tAlias = 334, - tAliasWithOptions = 335, - tText2D = 336, - tText3D = 337, - tInterpolationScheme = 338, - tTime = 339, - tCombine = 340, - tBSpline = 341, - tBezier = 342, - tNurbs = 343, - tOrder = 344, - tKnots = 345, - tColor = 346, - tColorTable = 347, - tFor = 348, - tIn = 349, - tEndFor = 350, - tIf = 351, - tEndIf = 352, - tExit = 353, - tField = 354, - tReturn = 355, - tCall = 356, - tFunction = 357, - tShow = 358, - tHide = 359, - tGetValue = 360, - tGMSH_MAJOR_VERSION = 361, - tGMSH_MINOR_VERSION = 362, - tGMSH_PATCH_VERSION = 363, - tAFFECTDIVIDE = 364, - tAFFECTTIMES = 365, - tAFFECTMINUS = 366, - tAFFECTPLUS = 367, - tOR = 368, - tAND = 369, - tNOTEQUAL = 370, - tEQUAL = 371, - tGREATEROREQUAL = 372, - tLESSOREQUAL = 373, - UNARYPREC = 374, - tMINUSMINUS = 375, - tPLUSPLUS = 376 + tPlugin = 317, + tRotate = 318, + tTranslate = 319, + tSymmetry = 320, + tDilate = 321, + tExtrude = 322, + tLoop = 323, + tRecombine = 324, + tSmoother = 325, + tSplit = 326, + tDelete = 327, + tCoherence = 328, + tIntersect = 329, + tLayers = 330, + tHole = 331, + tAlias = 332, + tAliasWithOptions = 333, + tText2D = 334, + tText3D = 335, + tInterpolationScheme = 336, + tTime = 337, + tCombine = 338, + tBSpline = 339, + tBezier = 340, + tNurbs = 341, + tOrder = 342, + tKnots = 343, + tColor = 344, + tColorTable = 345, + tFor = 346, + tIn = 347, + tEndFor = 348, + tIf = 349, + tEndIf = 350, + tExit = 351, + tField = 352, + tReturn = 353, + tCall = 354, + tFunction = 355, + tShow = 356, + tHide = 357, + tGetValue = 358, + tGMSH_MAJOR_VERSION = 359, + tGMSH_MINOR_VERSION = 360, + tGMSH_PATCH_VERSION = 361, + tAFFECTDIVIDE = 362, + tAFFECTTIMES = 363, + tAFFECTMINUS = 364, + tAFFECTPLUS = 365, + tOR = 366, + tAND = 367, + tNOTEQUAL = 368, + tEQUAL = 369, + tGREATEROREQUAL = 370, + tLESSOREQUAL = 371, + UNARYPREC = 372, + tMINUSMINUS = 373, + tPLUSPLUS = 374 }; #endif /* Tokens. */ @@ -255,66 +253,64 @@ #define tComplex 314 #define tPhysical 315 #define tUsing 316 -#define tBump 317 -#define tProgression 318 -#define tPlugin 319 -#define tRotate 320 -#define tTranslate 321 -#define tSymmetry 322 -#define tDilate 323 -#define tExtrude 324 -#define tLoop 325 -#define tRecombine 326 -#define tSmoother 327 -#define tSplit 328 -#define tDelete 329 -#define tCoherence 330 -#define tIntersect 331 -#define tLayers 332 -#define tHole 333 -#define tAlias 334 -#define tAliasWithOptions 335 -#define tText2D 336 -#define tText3D 337 -#define tInterpolationScheme 338 -#define tTime 339 -#define tCombine 340 -#define tBSpline 341 -#define tBezier 342 -#define tNurbs 343 -#define tOrder 344 -#define tKnots 345 -#define tColor 346 -#define tColorTable 347 -#define tFor 348 -#define tIn 349 -#define tEndFor 350 -#define tIf 351 -#define tEndIf 352 -#define tExit 353 -#define tField 354 -#define tReturn 355 -#define tCall 356 -#define tFunction 357 -#define tShow 358 -#define tHide 359 -#define tGetValue 360 -#define tGMSH_MAJOR_VERSION 361 -#define tGMSH_MINOR_VERSION 362 -#define tGMSH_PATCH_VERSION 363 -#define tAFFECTDIVIDE 364 -#define tAFFECTTIMES 365 -#define tAFFECTMINUS 366 -#define tAFFECTPLUS 367 -#define tOR 368 -#define tAND 369 -#define tNOTEQUAL 370 -#define tEQUAL 371 -#define tGREATEROREQUAL 372 -#define tLESSOREQUAL 373 -#define UNARYPREC 374 -#define tMINUSMINUS 375 -#define tPLUSPLUS 376 +#define tPlugin 317 +#define tRotate 318 +#define tTranslate 319 +#define tSymmetry 320 +#define tDilate 321 +#define tExtrude 322 +#define tLoop 323 +#define tRecombine 324 +#define tSmoother 325 +#define tSplit 326 +#define tDelete 327 +#define tCoherence 328 +#define tIntersect 329 +#define tLayers 330 +#define tHole 331 +#define tAlias 332 +#define tAliasWithOptions 333 +#define tText2D 334 +#define tText3D 335 +#define tInterpolationScheme 336 +#define tTime 337 +#define tCombine 338 +#define tBSpline 339 +#define tBezier 340 +#define tNurbs 341 +#define tOrder 342 +#define tKnots 343 +#define tColor 344 +#define tColorTable 345 +#define tFor 346 +#define tIn 347 +#define tEndFor 348 +#define tIf 349 +#define tEndIf 350 +#define tExit 351 +#define tField 352 +#define tReturn 353 +#define tCall 354 +#define tFunction 355 +#define tShow 356 +#define tHide 357 +#define tGetValue 358 +#define tGMSH_MAJOR_VERSION 359 +#define tGMSH_MINOR_VERSION 360 +#define tGMSH_PATCH_VERSION 361 +#define tAFFECTDIVIDE 362 +#define tAFFECTTIMES 363 +#define tAFFECTMINUS 364 +#define tAFFECTPLUS 365 +#define tOR 366 +#define tAND 367 +#define tNOTEQUAL 368 +#define tEQUAL 369 +#define tGREATEROREQUAL 370 +#define tLESSOREQUAL 371 +#define UNARYPREC 372 +#define tMINUSMINUS 373 +#define tPLUSPLUS 374 @@ -422,7 +418,7 @@ typedef union YYSTYPE List_T *l; } /* Line 193 of yacc.c. */ -#line 426 "Gmsh.tab.cpp" +#line 422 "Gmsh.tab.cpp" YYSTYPE; # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 @@ -435,7 +431,7 @@ typedef union YYSTYPE /* Line 216 of yacc.c. */ -#line 439 "Gmsh.tab.cpp" +#line 435 "Gmsh.tab.cpp" #ifdef short # undef short @@ -650,20 +646,20 @@ union yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 5 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 6277 +#define YYLAST 6302 /* YYNTOKENS -- Number of terminals. */ -#define YYNTOKENS 142 +#define YYNTOKENS 140 /* YYNNTS -- Number of nonterminals. */ -#define YYNNTS 68 +#define YYNNTS 70 /* YYNRULES -- Number of rules. */ -#define YYNRULES 351 +#define YYNRULES 352 /* YYNRULES -- Number of states. */ -#define YYNSTATES 1245 +#define YYNSTATES 1242 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ #define YYUNDEFTOK 2 -#define YYMAXUTOK 376 +#define YYMAXUTOK 374 #define YYTRANSLATE(YYX) \ ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) @@ -674,16 +670,16 @@ static const yytype_uint8 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, 127, 2, 137, 2, 126, 2, 2, - 132, 133, 124, 122, 138, 123, 136, 125, 2, 2, + 2, 2, 2, 125, 2, 135, 2, 124, 2, 2, + 130, 131, 122, 120, 136, 121, 134, 123, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 118, 2, 119, 113, 2, 2, 2, 2, 2, 2, + 116, 2, 117, 111, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 134, 2, 135, 131, 2, 2, 2, 2, 2, + 2, 132, 2, 133, 129, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 139, 2, 140, 141, 2, 2, 2, + 2, 2, 2, 137, 2, 138, 139, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, @@ -707,8 +703,8 @@ static const yytype_uint8 yytranslate[] = 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 114, 115, - 116, 117, 120, 121, 128, 129, 130 + 105, 106, 107, 108, 109, 110, 112, 113, 114, 115, + 118, 119, 126, 127, 128 }; #if YYDEBUG @@ -736,275 +732,273 @@ static const yytype_uint16 yyprhs[] = 1004, 1020, 1021, 1028, 1037, 1046, 1055, 1068, 1081, 1094, 1109, 1124, 1139, 1140, 1153, 1154, 1167, 1168, 1181, 1182, 1199, 1200, 1217, 1218, 1235, 1236, 1255, 1256, 1275, 1276, - 1295, 1297, 1300, 1306, 1314, 1324, 1327, 1337, 1344, 1354, - 1364, 1373, 1383, 1392, 1401, 1408, 1413, 1420, 1431, 1442, - 1453, 1464, 1467, 1471, 1473, 1477, 1480, 1483, 1486, 1490, - 1494, 1498, 1502, 1506, 1510, 1514, 1518, 1522, 1526, 1530, - 1534, 1538, 1542, 1548, 1553, 1558, 1563, 1568, 1573, 1578, - 1583, 1588, 1593, 1598, 1605, 1610, 1615, 1620, 1625, 1630, - 1635, 1642, 1649, 1656, 1661, 1666, 1671, 1676, 1681, 1686, - 1691, 1696, 1701, 1706, 1711, 1718, 1723, 1728, 1733, 1738, - 1743, 1748, 1755, 1762, 1769, 1774, 1776, 1778, 1780, 1782, - 1784, 1786, 1788, 1790, 1796, 1801, 1806, 1809, 1815, 1819, - 1826, 1831, 1839, 1846, 1848, 1851, 1854, 1858, 1862, 1874, - 1884, 1892, 1900, 1902, 1906, 1908, 1910, 1913, 1917, 1922, - 1928, 1931, 1935, 1939, 1945, 1950, 1952, 1954, 1958, 1965, - 1967, 1969, 1973, 1977, 1987, 1995, 1997, 2003, 2007, 2014, - 2016, 2020, 2022, 2024, 2028, 2035, 2037, 2039, 2046, 2051, - 2056, 2061 + 1295, 1297, 1300, 1306, 1314, 1324, 1327, 1337, 1338, 1342, + 1343, 1345, 1353, 1363, 1372, 1381, 1388, 1393, 1400, 1411, + 1422, 1433, 1444, 1447, 1451, 1453, 1457, 1460, 1463, 1466, + 1470, 1474, 1478, 1482, 1486, 1490, 1494, 1498, 1502, 1506, + 1510, 1514, 1518, 1522, 1528, 1533, 1538, 1543, 1548, 1553, + 1558, 1563, 1568, 1573, 1578, 1585, 1590, 1595, 1600, 1605, + 1610, 1615, 1622, 1629, 1636, 1641, 1646, 1651, 1656, 1661, + 1666, 1671, 1676, 1681, 1686, 1691, 1698, 1703, 1708, 1713, + 1718, 1723, 1728, 1735, 1742, 1749, 1754, 1756, 1758, 1760, + 1762, 1764, 1766, 1768, 1770, 1776, 1781, 1786, 1789, 1795, + 1799, 1806, 1811, 1819, 1826, 1828, 1831, 1834, 1838, 1842, + 1854, 1864, 1872, 1880, 1882, 1886, 1888, 1890, 1893, 1897, + 1902, 1908, 1911, 1915, 1919, 1925, 1930, 1932, 1934, 1938, + 1945, 1947, 1949, 1953, 1957, 1967, 1975, 1977, 1983, 1987, + 1994, 1996, 2000, 2002, 2004, 2008, 2015, 2017, 2019, 2026, + 2031, 2036, 2041 }; /* YYRHS -- A `-1'-separated list of the rules' RHS. */ static const yytype_int16 yyrhs[] = { - 143, 0, -1, 144, -1, 1, 6, -1, -1, 144, - 145, -1, 148, -1, 147, -1, 166, -1, 169, -1, - 170, -1, 173, -1, 174, -1, 175, -1, 178, -1, - 194, -1, 195, -1, 196, -1, 177, -1, 176, -1, - 119, -1, 119, 119, -1, 35, 132, 5, 133, 6, - -1, 35, 132, 5, 133, 146, 208, 6, -1, 35, - 132, 5, 138, 204, 133, 6, -1, 35, 132, 5, - 138, 204, 133, 146, 208, 6, -1, 4, 5, 139, - 149, 140, 6, -1, 79, 4, 134, 197, 135, 6, - -1, 80, 4, 134, 197, 135, 6, -1, -1, 149, - 152, -1, 149, 156, -1, 149, 159, -1, 149, 161, - -1, 149, 162, -1, 197, -1, 150, 138, 197, -1, - 197, -1, 151, 138, 197, -1, -1, -1, 4, 153, - 132, 150, 133, 154, 139, 151, 140, 6, -1, 208, - -1, 155, 138, 208, -1, -1, 81, 132, 197, 138, - 197, 138, 197, 133, 157, 139, 155, 140, 6, -1, - 208, -1, 158, 138, 208, -1, -1, 82, 132, 197, - 138, 197, 138, 197, 138, 197, 133, 160, 139, 158, - 140, 6, -1, 83, 139, 201, 140, 139, 201, 140, - 6, -1, 83, 139, 201, 140, 139, 201, 140, 139, - 201, 140, 139, 201, 140, 6, -1, -1, 84, 163, - 139, 151, 140, 6, -1, 7, -1, 112, -1, 111, - -1, 110, -1, 109, -1, 130, -1, 129, -1, 4, - 164, 197, 6, -1, 4, 134, 197, 135, 164, 197, - 6, -1, 4, 134, 139, 204, 140, 135, 164, 202, - 6, -1, 4, 134, 135, 7, 202, 6, -1, 4, - 134, 135, 112, 202, 6, -1, 4, 165, 6, -1, - 4, 134, 197, 135, 165, 6, -1, 4, 7, 209, - 6, -1, 4, 136, 4, 7, 209, 6, -1, 4, - 134, 197, 135, 136, 4, 7, 209, 6, -1, 4, - 136, 4, 164, 197, 6, -1, 4, 134, 197, 135, - 136, 4, 164, 197, 6, -1, 4, 136, 4, 165, - 6, -1, 4, 134, 197, 135, 136, 4, 165, 6, - -1, 4, 136, 91, 136, 4, 7, 205, 6, -1, - 4, 134, 197, 135, 136, 91, 136, 4, 7, 205, - 6, -1, 4, 136, 92, 7, 206, 6, -1, 4, - 134, 197, 135, 136, 92, 7, 206, 6, -1, 4, - 99, 7, 197, 6, -1, 99, 134, 197, 135, 7, - 4, 6, -1, 99, 134, 197, 135, 136, 4, 7, - 197, 6, -1, 99, 134, 197, 135, 136, 4, 7, - 209, 6, -1, 99, 134, 197, 135, 136, 4, 7, - 139, 204, 140, 6, -1, 64, 132, 4, 133, 136, - 4, 7, 197, 6, -1, 64, 132, 4, 133, 136, + 141, 0, -1, 142, -1, 1, 6, -1, -1, 142, + 143, -1, 146, -1, 145, -1, 164, -1, 167, -1, + 168, -1, 171, -1, 172, -1, 173, -1, 176, -1, + 194, -1, 195, -1, 196, -1, 175, -1, 174, -1, + 117, -1, 117, 117, -1, 35, 130, 5, 131, 6, + -1, 35, 130, 5, 131, 144, 208, 6, -1, 35, + 130, 5, 136, 204, 131, 6, -1, 35, 130, 5, + 136, 204, 131, 144, 208, 6, -1, 4, 5, 137, + 147, 138, 6, -1, 77, 4, 132, 197, 133, 6, + -1, 78, 4, 132, 197, 133, 6, -1, -1, 147, + 150, -1, 147, 154, -1, 147, 157, -1, 147, 159, + -1, 147, 160, -1, 197, -1, 148, 136, 197, -1, + 197, -1, 149, 136, 197, -1, -1, -1, 4, 151, + 130, 148, 131, 152, 137, 149, 138, 6, -1, 208, + -1, 153, 136, 208, -1, -1, 79, 130, 197, 136, + 197, 136, 197, 131, 155, 137, 153, 138, 6, -1, + 208, -1, 156, 136, 208, -1, -1, 80, 130, 197, + 136, 197, 136, 197, 136, 197, 131, 158, 137, 156, + 138, 6, -1, 81, 137, 201, 138, 137, 201, 138, + 6, -1, 81, 137, 201, 138, 137, 201, 138, 137, + 201, 138, 137, 201, 138, 6, -1, -1, 82, 161, + 137, 149, 138, 6, -1, 7, -1, 110, -1, 109, + -1, 108, -1, 107, -1, 128, -1, 127, -1, 4, + 162, 197, 6, -1, 4, 132, 197, 133, 162, 197, + 6, -1, 4, 132, 137, 204, 138, 133, 162, 202, + 6, -1, 4, 132, 133, 7, 202, 6, -1, 4, + 132, 133, 110, 202, 6, -1, 4, 163, 6, -1, + 4, 132, 197, 133, 163, 6, -1, 4, 7, 209, + 6, -1, 4, 134, 4, 7, 209, 6, -1, 4, + 132, 197, 133, 134, 4, 7, 209, 6, -1, 4, + 134, 4, 162, 197, 6, -1, 4, 132, 197, 133, + 134, 4, 162, 197, 6, -1, 4, 134, 4, 163, + 6, -1, 4, 132, 197, 133, 134, 4, 163, 6, + -1, 4, 134, 89, 134, 4, 7, 205, 6, -1, + 4, 132, 197, 133, 134, 89, 134, 4, 7, 205, + 6, -1, 4, 134, 90, 7, 206, 6, -1, 4, + 132, 197, 133, 134, 90, 7, 206, 6, -1, 4, + 97, 7, 197, 6, -1, 97, 132, 197, 133, 7, + 4, 6, -1, 97, 132, 197, 133, 134, 4, 7, + 197, 6, -1, 97, 132, 197, 133, 134, 4, 7, + 209, 6, -1, 97, 132, 197, 133, 134, 4, 7, + 137, 204, 138, 6, -1, 62, 130, 4, 131, 134, + 4, 7, 197, 6, -1, 62, 130, 4, 131, 134, 4, 7, 209, 6, -1, 197, -1, 209, -1, -1, - 94, 47, 139, 197, 140, -1, 43, 132, 197, 133, - 7, 199, 6, -1, 60, 43, 132, 167, 133, 7, + 92, 47, 137, 197, 138, -1, 43, 130, 197, 131, + 7, 199, 6, -1, 60, 43, 130, 165, 131, 7, 202, 6, -1, 52, 53, 202, 7, 197, 6, -1, - 46, 132, 197, 133, 7, 202, 6, -1, 50, 132, - 197, 133, 7, 202, 6, -1, 44, 132, 197, 133, - 7, 202, 6, -1, 44, 132, 197, 133, 7, 202, - 56, 199, 6, -1, 45, 132, 197, 133, 7, 202, - 6, -1, 45, 132, 197, 133, 7, 202, 56, 199, - 6, -1, 54, 132, 197, 133, 7, 139, 197, 138, - 197, 138, 5, 138, 5, 138, 5, 140, 6, -1, - 86, 132, 197, 133, 7, 202, 6, -1, 87, 132, - 197, 133, 7, 202, 6, -1, 88, 132, 197, 133, - 7, 202, 90, 202, 89, 197, 6, -1, 46, 70, - 132, 197, 133, 7, 202, 6, -1, 60, 46, 132, - 167, 133, 7, 202, 6, -1, 56, 49, 132, 197, - 133, 7, 202, 6, -1, 57, 49, 132, 197, 133, - 7, 202, 168, 6, -1, 12, 13, 6, -1, 13, - 49, 197, 6, -1, 54, 49, 132, 197, 133, 7, - 5, 5, 5, 6, -1, 47, 132, 197, 133, 7, - 202, 6, -1, 48, 132, 197, 133, 7, 202, 6, - -1, 49, 70, 132, 197, 133, 7, 202, 6, -1, - 60, 49, 132, 167, 133, 7, 202, 6, -1, 59, - 51, 132, 197, 133, 7, 202, 6, -1, 51, 132, - 197, 133, 7, 202, 6, -1, 60, 51, 132, 167, - 133, 7, 202, 6, -1, 66, 199, 139, 171, 140, - -1, 65, 139, 199, 138, 199, 138, 197, 140, 139, - 171, 140, -1, 67, 199, 139, 171, 140, -1, 68, - 139, 199, 138, 197, 140, 139, 171, 140, -1, 4, - 139, 171, 140, -1, 76, 46, 139, 204, 140, 49, - 139, 197, 140, -1, 73, 46, 132, 197, 133, 139, - 204, 140, 6, -1, 172, -1, 170, -1, -1, 172, - 169, -1, 172, 43, 139, 204, 140, 6, -1, 172, - 46, 139, 204, 140, 6, -1, 172, 49, 139, 204, - 140, 6, -1, 172, 51, 139, 204, 140, 6, -1, - 74, 139, 172, 140, -1, 74, 99, 134, 197, 135, - 6, -1, 74, 4, 134, 197, 135, 6, -1, 74, - 4, 6, -1, 74, 4, 4, 6, -1, 91, 205, - 139, 172, 140, -1, 103, 208, 6, -1, 104, 208, - 6, -1, 103, 139, 172, 140, -1, 104, 139, 172, - 140, -1, 4, 209, 6, -1, 4, 4, 134, 197, - 135, 208, 6, -1, 4, 4, 4, 134, 197, 135, - 6, -1, 4, 197, 6, -1, 64, 132, 4, 133, - 136, 4, 6, -1, 85, 4, 6, -1, 98, 6, - -1, 40, 6, -1, 40, 139, 197, 138, 197, 138, - 197, 138, 197, 138, 197, 138, 197, 140, 6, -1, - 41, 6, -1, 93, 132, 197, 8, 197, 133, -1, - 93, 132, 197, 8, 197, 8, 197, 133, -1, 93, - 4, 94, 139, 197, 8, 197, 140, -1, 93, 4, - 94, 139, 197, 8, 197, 8, 197, 140, -1, 95, - -1, 102, 4, -1, 100, -1, 101, 4, 6, -1, - 96, 132, 197, 133, -1, 97, -1, 69, 199, 139, - 172, 140, -1, 69, 139, 199, 138, 199, 138, 197, - 140, 139, 172, 140, -1, 69, 139, 199, 138, 199, - 138, 199, 138, 197, 140, 139, 172, 140, -1, -1, - 69, 199, 139, 172, 179, 192, 140, -1, -1, 69, - 139, 199, 138, 199, 138, 197, 140, 139, 172, 180, - 192, 140, -1, -1, 69, 139, 199, 138, 199, 138, - 199, 138, 197, 140, 139, 172, 181, 192, 140, -1, - -1, 69, 139, 172, 182, 192, 140, -1, 69, 43, - 139, 197, 138, 199, 140, 6, -1, 69, 46, 139, - 197, 138, 199, 140, 6, -1, 69, 49, 139, 197, - 138, 199, 140, 6, -1, 69, 43, 139, 197, 138, - 199, 138, 199, 138, 197, 140, 6, -1, 69, 46, - 139, 197, 138, 199, 138, 199, 138, 197, 140, 6, - -1, 69, 49, 139, 197, 138, 199, 138, 199, 138, - 197, 140, 6, -1, 69, 43, 139, 197, 138, 199, - 138, 199, 138, 199, 138, 197, 140, 6, -1, 69, - 46, 139, 197, 138, 199, 138, 199, 138, 199, 138, - 197, 140, 6, -1, 69, 49, 139, 197, 138, 199, - 138, 199, 138, 199, 138, 197, 140, 6, -1, -1, - 69, 43, 139, 197, 138, 199, 140, 183, 139, 192, - 140, 6, -1, -1, 69, 46, 139, 197, 138, 199, - 140, 184, 139, 192, 140, 6, -1, -1, 69, 49, - 139, 197, 138, 199, 140, 185, 139, 192, 140, 6, - -1, -1, 69, 43, 139, 197, 138, 199, 138, 199, - 138, 197, 140, 186, 139, 192, 140, 6, -1, -1, - 69, 46, 139, 197, 138, 199, 138, 199, 138, 197, - 140, 187, 139, 192, 140, 6, -1, -1, 69, 49, - 139, 197, 138, 199, 138, 199, 138, 197, 140, 188, - 139, 192, 140, 6, -1, -1, 69, 43, 139, 197, - 138, 199, 138, 199, 138, 199, 138, 197, 140, 189, - 139, 192, 140, 6, -1, -1, 69, 46, 139, 197, - 138, 199, 138, 199, 138, 199, 138, 197, 140, 190, - 139, 192, 140, 6, -1, -1, 69, 49, 139, 197, - 138, 199, 138, 199, 138, 199, 138, 197, 140, 191, - 139, 192, 140, 6, -1, 193, -1, 192, 193, -1, - 77, 139, 197, 140, 6, -1, 77, 139, 202, 138, - 202, 140, 6, -1, 77, 139, 202, 138, 202, 138, - 202, 140, 6, -1, 71, 6, -1, 78, 132, 197, - 133, 7, 202, 61, 197, 6, -1, 58, 46, 202, - 7, 197, 6, -1, 58, 46, 202, 7, 197, 61, - 63, 197, 6, -1, 58, 46, 202, 7, 197, 61, - 62, 197, 6, -1, 58, 49, 139, 197, 140, 7, - 202, 6, -1, 58, 49, 139, 197, 140, 7, 202, - 4, 6, -1, 55, 49, 139, 197, 140, 7, 202, - 6, -1, 58, 51, 139, 197, 140, 7, 202, 6, - -1, 71, 49, 202, 7, 197, 6, -1, 71, 49, - 202, 6, -1, 72, 49, 202, 7, 197, 6, -1, - 43, 139, 204, 140, 94, 49, 139, 197, 140, 6, - -1, 46, 139, 204, 140, 94, 49, 139, 197, 140, - 6, -1, 46, 139, 204, 140, 94, 51, 139, 197, - 140, 6, -1, 49, 139, 204, 140, 94, 51, 139, - 197, 140, 6, -1, 75, 6, -1, 75, 4, 6, - -1, 198, -1, 132, 197, 133, -1, 123, 197, -1, - 122, 197, -1, 127, 197, -1, 197, 123, 197, -1, - 197, 122, 197, -1, 197, 124, 197, -1, 197, 125, - 197, -1, 197, 126, 197, -1, 197, 131, 197, -1, - 197, 118, 197, -1, 197, 119, 197, -1, 197, 121, - 197, -1, 197, 120, 197, -1, 197, 117, 197, -1, - 197, 116, 197, -1, 197, 115, 197, -1, 197, 114, - 197, -1, 197, 113, 197, 8, 197, -1, 14, 132, - 197, 133, -1, 15, 132, 197, 133, -1, 16, 132, - 197, 133, -1, 17, 132, 197, 133, -1, 18, 132, - 197, 133, -1, 19, 132, 197, 133, -1, 20, 132, - 197, 133, -1, 21, 132, 197, 133, -1, 22, 132, - 197, 133, -1, 24, 132, 197, 133, -1, 25, 132, - 197, 138, 197, 133, -1, 26, 132, 197, 133, -1, - 27, 132, 197, 133, -1, 28, 132, 197, 133, -1, - 29, 132, 197, 133, -1, 30, 132, 197, 133, -1, - 31, 132, 197, 133, -1, 32, 132, 197, 138, 197, - 133, -1, 33, 132, 197, 138, 197, 133, -1, 34, - 132, 197, 138, 197, 133, -1, 23, 132, 197, 133, - -1, 14, 134, 197, 135, -1, 15, 134, 197, 135, - -1, 16, 134, 197, 135, -1, 17, 134, 197, 135, - -1, 18, 134, 197, 135, -1, 19, 134, 197, 135, - -1, 20, 134, 197, 135, -1, 21, 134, 197, 135, - -1, 22, 134, 197, 135, -1, 24, 134, 197, 135, - -1, 25, 134, 197, 138, 197, 135, -1, 26, 134, - 197, 135, -1, 27, 134, 197, 135, -1, 28, 134, - 197, 135, -1, 29, 134, 197, 135, -1, 30, 134, - 197, 135, -1, 31, 134, 197, 135, -1, 32, 134, - 197, 138, 197, 135, -1, 33, 134, 197, 138, 197, - 135, -1, 34, 134, 197, 138, 197, 135, -1, 23, - 134, 197, 135, -1, 3, -1, 9, -1, 10, -1, - 11, -1, 106, -1, 107, -1, 108, -1, 4, -1, - 4, 141, 139, 197, 140, -1, 4, 134, 197, 135, - -1, 137, 4, 134, 135, -1, 4, 165, -1, 4, - 134, 197, 135, 165, -1, 4, 136, 4, -1, 4, - 134, 197, 135, 136, 4, -1, 4, 136, 4, 165, - -1, 4, 134, 197, 135, 136, 4, 165, -1, 105, - 132, 5, 138, 197, 133, -1, 200, -1, 123, 199, - -1, 122, 199, -1, 199, 123, 199, -1, 199, 122, - 199, -1, 139, 197, 138, 197, 138, 197, 138, 197, - 138, 197, 140, -1, 139, 197, 138, 197, 138, 197, - 138, 197, 140, -1, 139, 197, 138, 197, 138, 197, - 140, -1, 132, 197, 138, 197, 138, 197, 133, -1, - 202, -1, 201, 138, 202, -1, 197, -1, 203, -1, - 139, 140, -1, 139, 204, 140, -1, 123, 139, 204, - 140, -1, 197, 124, 139, 204, 140, -1, 123, 203, - -1, 197, 124, 203, -1, 197, 8, 197, -1, 197, - 8, 197, 8, 197, -1, 43, 139, 197, 140, -1, - 170, -1, 178, -1, 4, 134, 135, -1, 4, 134, - 139, 204, 140, 135, -1, 197, -1, 203, -1, 204, - 138, 197, -1, 204, 138, 203, -1, 139, 197, 138, - 197, 138, 197, 138, 197, 140, -1, 139, 197, 138, - 197, 138, 197, 140, -1, 4, -1, 4, 136, 91, - 136, 4, -1, 139, 207, 140, -1, 4, 134, 197, - 135, 136, 92, -1, 205, -1, 207, 138, 205, -1, - 209, -1, 4, -1, 4, 136, 4, -1, 4, 134, - 197, 135, 136, 4, -1, 5, -1, 42, -1, 37, - 132, 208, 138, 208, 133, -1, 38, 132, 208, 133, - -1, 39, 132, 208, 133, -1, 36, 132, 208, 133, - -1, 36, 132, 208, 138, 204, 133, -1 + 46, 130, 197, 131, 7, 202, 6, -1, 50, 130, + 197, 131, 7, 202, 6, -1, 44, 130, 197, 131, + 7, 202, 6, -1, 44, 130, 197, 131, 7, 202, + 56, 199, 6, -1, 45, 130, 197, 131, 7, 202, + 6, -1, 45, 130, 197, 131, 7, 202, 56, 199, + 6, -1, 54, 130, 197, 131, 7, 137, 197, 136, + 197, 136, 5, 136, 5, 136, 5, 138, 6, -1, + 84, 130, 197, 131, 7, 202, 6, -1, 85, 130, + 197, 131, 7, 202, 6, -1, 86, 130, 197, 131, + 7, 202, 88, 202, 87, 197, 6, -1, 46, 68, + 130, 197, 131, 7, 202, 6, -1, 60, 46, 130, + 165, 131, 7, 202, 6, -1, 56, 49, 130, 197, + 131, 7, 202, 6, -1, 57, 49, 130, 197, 131, + 7, 202, 166, 6, -1, 12, 13, 6, -1, 13, + 49, 197, 6, -1, 54, 49, 130, 197, 131, 7, + 5, 5, 5, 6, -1, 47, 130, 197, 131, 7, + 202, 6, -1, 48, 130, 197, 131, 7, 202, 6, + -1, 49, 68, 130, 197, 131, 7, 202, 6, -1, + 60, 49, 130, 165, 131, 7, 202, 6, -1, 59, + 51, 130, 197, 131, 7, 202, 6, -1, 51, 130, + 197, 131, 7, 202, 6, -1, 60, 51, 130, 165, + 131, 7, 202, 6, -1, 64, 199, 137, 169, 138, + -1, 63, 137, 199, 136, 199, 136, 197, 138, 137, + 169, 138, -1, 65, 199, 137, 169, 138, -1, 66, + 137, 199, 136, 197, 138, 137, 169, 138, -1, 4, + 137, 169, 138, -1, 74, 46, 137, 204, 138, 49, + 137, 197, 138, -1, 71, 46, 130, 197, 131, 137, + 204, 138, 6, -1, 170, -1, 168, -1, -1, 170, + 167, -1, 170, 43, 137, 204, 138, 6, -1, 170, + 46, 137, 204, 138, 6, -1, 170, 49, 137, 204, + 138, 6, -1, 170, 51, 137, 204, 138, 6, -1, + 72, 137, 170, 138, -1, 72, 97, 132, 197, 133, + 6, -1, 72, 4, 132, 197, 133, 6, -1, 72, + 4, 6, -1, 72, 4, 4, 6, -1, 89, 205, + 137, 170, 138, -1, 101, 208, 6, -1, 102, 208, + 6, -1, 101, 137, 170, 138, -1, 102, 137, 170, + 138, -1, 4, 209, 6, -1, 4, 4, 132, 197, + 133, 208, 6, -1, 4, 4, 4, 132, 197, 133, + 6, -1, 4, 197, 6, -1, 62, 130, 4, 131, + 134, 4, 6, -1, 83, 4, 6, -1, 96, 6, + -1, 40, 6, -1, 40, 137, 197, 136, 197, 136, + 197, 136, 197, 136, 197, 136, 197, 138, 6, -1, + 41, 6, -1, 91, 130, 197, 8, 197, 131, -1, + 91, 130, 197, 8, 197, 8, 197, 131, -1, 91, + 4, 92, 137, 197, 8, 197, 138, -1, 91, 4, + 92, 137, 197, 8, 197, 8, 197, 138, -1, 93, + -1, 100, 4, -1, 98, -1, 99, 4, 6, -1, + 94, 130, 197, 131, -1, 95, -1, 67, 199, 137, + 170, 138, -1, 67, 137, 199, 136, 199, 136, 197, + 138, 137, 170, 138, -1, 67, 137, 199, 136, 199, + 136, 199, 136, 197, 138, 137, 170, 138, -1, -1, + 67, 199, 137, 170, 177, 190, 138, -1, -1, 67, + 137, 199, 136, 199, 136, 197, 138, 137, 170, 178, + 190, 138, -1, -1, 67, 137, 199, 136, 199, 136, + 199, 136, 197, 138, 137, 170, 179, 190, 138, -1, + -1, 67, 137, 170, 180, 190, 138, -1, 67, 43, + 137, 197, 136, 199, 138, 6, -1, 67, 46, 137, + 197, 136, 199, 138, 6, -1, 67, 49, 137, 197, + 136, 199, 138, 6, -1, 67, 43, 137, 197, 136, + 199, 136, 199, 136, 197, 138, 6, -1, 67, 46, + 137, 197, 136, 199, 136, 199, 136, 197, 138, 6, + -1, 67, 49, 137, 197, 136, 199, 136, 199, 136, + 197, 138, 6, -1, 67, 43, 137, 197, 136, 199, + 136, 199, 136, 199, 136, 197, 138, 6, -1, 67, + 46, 137, 197, 136, 199, 136, 199, 136, 199, 136, + 197, 138, 6, -1, 67, 49, 137, 197, 136, 199, + 136, 199, 136, 199, 136, 197, 138, 6, -1, -1, + 67, 43, 137, 197, 136, 199, 138, 181, 137, 190, + 138, 6, -1, -1, 67, 46, 137, 197, 136, 199, + 138, 182, 137, 190, 138, 6, -1, -1, 67, 49, + 137, 197, 136, 199, 138, 183, 137, 190, 138, 6, + -1, -1, 67, 43, 137, 197, 136, 199, 136, 199, + 136, 197, 138, 184, 137, 190, 138, 6, -1, -1, + 67, 46, 137, 197, 136, 199, 136, 199, 136, 197, + 138, 185, 137, 190, 138, 6, -1, -1, 67, 49, + 137, 197, 136, 199, 136, 199, 136, 197, 138, 186, + 137, 190, 138, 6, -1, -1, 67, 43, 137, 197, + 136, 199, 136, 199, 136, 199, 136, 197, 138, 187, + 137, 190, 138, 6, -1, -1, 67, 46, 137, 197, + 136, 199, 136, 199, 136, 199, 136, 197, 138, 188, + 137, 190, 138, 6, -1, -1, 67, 49, 137, 197, + 136, 199, 136, 199, 136, 199, 136, 197, 138, 189, + 137, 190, 138, 6, -1, 191, -1, 190, 191, -1, + 75, 137, 197, 138, 6, -1, 75, 137, 202, 136, + 202, 138, 6, -1, 75, 137, 202, 136, 202, 136, + 202, 138, 6, -1, 69, 6, -1, 76, 130, 197, + 131, 7, 202, 61, 197, 6, -1, -1, 61, 4, + 197, -1, -1, 4, -1, 58, 46, 202, 7, 197, + 192, 6, -1, 58, 49, 137, 197, 138, 7, 202, + 193, 6, -1, 55, 49, 137, 197, 138, 7, 202, + 6, -1, 58, 51, 137, 197, 138, 7, 202, 6, + -1, 69, 49, 202, 7, 197, 6, -1, 69, 49, + 202, 6, -1, 70, 49, 202, 7, 197, 6, -1, + 43, 137, 204, 138, 92, 49, 137, 197, 138, 6, + -1, 46, 137, 204, 138, 92, 49, 137, 197, 138, + 6, -1, 46, 137, 204, 138, 92, 51, 137, 197, + 138, 6, -1, 49, 137, 204, 138, 92, 51, 137, + 197, 138, 6, -1, 73, 6, -1, 73, 4, 6, + -1, 198, -1, 130, 197, 131, -1, 121, 197, -1, + 120, 197, -1, 125, 197, -1, 197, 121, 197, -1, + 197, 120, 197, -1, 197, 122, 197, -1, 197, 123, + 197, -1, 197, 124, 197, -1, 197, 129, 197, -1, + 197, 116, 197, -1, 197, 117, 197, -1, 197, 119, + 197, -1, 197, 118, 197, -1, 197, 115, 197, -1, + 197, 114, 197, -1, 197, 113, 197, -1, 197, 112, + 197, -1, 197, 111, 197, 8, 197, -1, 14, 130, + 197, 131, -1, 15, 130, 197, 131, -1, 16, 130, + 197, 131, -1, 17, 130, 197, 131, -1, 18, 130, + 197, 131, -1, 19, 130, 197, 131, -1, 20, 130, + 197, 131, -1, 21, 130, 197, 131, -1, 22, 130, + 197, 131, -1, 24, 130, 197, 131, -1, 25, 130, + 197, 136, 197, 131, -1, 26, 130, 197, 131, -1, + 27, 130, 197, 131, -1, 28, 130, 197, 131, -1, + 29, 130, 197, 131, -1, 30, 130, 197, 131, -1, + 31, 130, 197, 131, -1, 32, 130, 197, 136, 197, + 131, -1, 33, 130, 197, 136, 197, 131, -1, 34, + 130, 197, 136, 197, 131, -1, 23, 130, 197, 131, + -1, 14, 132, 197, 133, -1, 15, 132, 197, 133, + -1, 16, 132, 197, 133, -1, 17, 132, 197, 133, + -1, 18, 132, 197, 133, -1, 19, 132, 197, 133, + -1, 20, 132, 197, 133, -1, 21, 132, 197, 133, + -1, 22, 132, 197, 133, -1, 24, 132, 197, 133, + -1, 25, 132, 197, 136, 197, 133, -1, 26, 132, + 197, 133, -1, 27, 132, 197, 133, -1, 28, 132, + 197, 133, -1, 29, 132, 197, 133, -1, 30, 132, + 197, 133, -1, 31, 132, 197, 133, -1, 32, 132, + 197, 136, 197, 133, -1, 33, 132, 197, 136, 197, + 133, -1, 34, 132, 197, 136, 197, 133, -1, 23, + 132, 197, 133, -1, 3, -1, 9, -1, 10, -1, + 11, -1, 104, -1, 105, -1, 106, -1, 4, -1, + 4, 139, 137, 197, 138, -1, 4, 132, 197, 133, + -1, 135, 4, 132, 133, -1, 4, 163, -1, 4, + 132, 197, 133, 163, -1, 4, 134, 4, -1, 4, + 132, 197, 133, 134, 4, -1, 4, 134, 4, 163, + -1, 4, 132, 197, 133, 134, 4, 163, -1, 103, + 130, 5, 136, 197, 131, -1, 200, -1, 121, 199, + -1, 120, 199, -1, 199, 121, 199, -1, 199, 120, + 199, -1, 137, 197, 136, 197, 136, 197, 136, 197, + 136, 197, 138, -1, 137, 197, 136, 197, 136, 197, + 136, 197, 138, -1, 137, 197, 136, 197, 136, 197, + 138, -1, 130, 197, 136, 197, 136, 197, 131, -1, + 202, -1, 201, 136, 202, -1, 197, -1, 203, -1, + 137, 138, -1, 137, 204, 138, -1, 121, 137, 204, + 138, -1, 197, 122, 137, 204, 138, -1, 121, 203, + -1, 197, 122, 203, -1, 197, 8, 197, -1, 197, + 8, 197, 8, 197, -1, 43, 137, 197, 138, -1, + 168, -1, 176, -1, 4, 132, 133, -1, 4, 132, + 137, 204, 138, 133, -1, 197, -1, 203, -1, 204, + 136, 197, -1, 204, 136, 203, -1, 137, 197, 136, + 197, 136, 197, 136, 197, 138, -1, 137, 197, 136, + 197, 136, 197, 138, -1, 4, -1, 4, 134, 89, + 134, 4, -1, 137, 207, 138, -1, 4, 132, 197, + 133, 134, 90, -1, 205, -1, 207, 136, 205, -1, + 209, -1, 4, -1, 4, 134, 4, -1, 4, 132, + 197, 133, 134, 4, -1, 5, -1, 42, -1, 37, + 130, 208, 136, 208, 131, -1, 38, 130, 208, 131, + -1, 39, 130, 208, 131, -1, 36, 130, 208, 131, + -1, 36, 130, 208, 136, 204, 131, -1 }; /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ static const yytype_uint16 yyrline[] = { - 0, 137, 137, 138, 143, 145, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, - 166, 170, 177, 182, 197, 210, 239, 253, 264, 279, - 284, 285, 286, 287, 288, 292, 294, 299, 301, 307, - 453, 306, 471, 478, 489, 488, 507, 514, 525, 524, - 542, 557, 577, 576, 590, 591, 592, 593, 594, 598, - 599, 606, 628, 655, 695, 705, 713, 721, 733, 742, - 747, 755, 773, 791, 800, 812, 817, 825, 845, 868, - 875, 881, 901, 922, 948, 960, 977, 981, 991, 994, - 1012, 1035, 1051, 1073, 1091, 1109, 1127, 1153, 1171, 1197, - 1217, 1235, 1253, 1279, 1296, 1315, 1333, 1372, 1378, 1384, - 1391, 1416, 1441, 1457, 1477, 1495, 1512, 1533, 1538, 1543, - 1548, 1553, 1573, 1579, 1590, 1591, 1596, 1599, 1603, 1626, - 1649, 1672, 1700, 1709, 1713, 1728, 1749, 1766, 1780, 1786, - 1792, 1801, 1815, 1863, 1881, 1896, 1915, 1927, 1951, 1955, - 1960, 1965, 1977, 1994, 2011, 2030, 2049, 2077, 2085, 2091, - 2098, 2102, 2111, 2119, 2127, 2136, 2135, 2148, 2147, 2160, - 2159, 2172, 2171, 2184, 2191, 2198, 2205, 2212, 2219, 2226, - 2233, 2240, 2248, 2247, 2259, 2258, 2270, 2269, 2281, 2280, - 2292, 2291, 2303, 2302, 2314, 2313, 2325, 2324, 2336, 2335, - 2350, 2353, 2359, 2368, 2388, 2411, 2415, 2439, 2457, 2475, - 2493, 2522, 2557, 2562, 2589, 2603, 2616, 2633, 2639, 2645, - 2648, 2657, 2661, 2677, 2678, 2679, 2680, 2681, 2682, 2683, - 2684, 2685, 2692, 2693, 2694, 2695, 2696, 2697, 2698, 2699, - 2700, 2701, 2702, 2703, 2704, 2705, 2706, 2707, 2708, 2709, - 2710, 2711, 2712, 2713, 2714, 2715, 2716, 2717, 2718, 2719, - 2720, 2721, 2722, 2723, 2725, 2726, 2727, 2728, 2729, 2730, - 2731, 2732, 2733, 2734, 2735, 2736, 2737, 2738, 2739, 2740, - 2741, 2742, 2743, 2744, 2745, 2754, 2755, 2756, 2757, 2758, - 2759, 2760, 2764, 2777, 2789, 2804, 2814, 2824, 2842, 2847, - 2852, 2862, 2872, 2880, 2884, 2888, 2892, 2896, 2903, 2907, - 2911, 2915, 2922, 2927, 2934, 2939, 2943, 2948, 2952, 2960, - 2971, 2979, 2987, 2993, 3004, 3024, 3034, 3044, 3054, 3074, - 3079, 3083, 3087, 3099, 3103, 3115, 3122, 3132, 3136, 3151, - 3156, 3163, 3167, 3180, 3188, 3199, 3203, 3211, 3219, 3233, - 3247, 3251 + 0, 138, 138, 139, 144, 146, 150, 151, 152, 153, + 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, + 167, 171, 178, 183, 198, 211, 240, 254, 265, 280, + 285, 286, 287, 288, 289, 293, 295, 300, 302, 308, + 454, 307, 472, 479, 490, 489, 508, 515, 526, 525, + 543, 558, 578, 577, 591, 592, 593, 594, 595, 599, + 600, 607, 629, 656, 696, 706, 714, 722, 734, 743, + 748, 756, 774, 792, 801, 813, 818, 826, 846, 869, + 876, 882, 902, 923, 949, 961, 978, 982, 992, 995, + 1013, 1036, 1052, 1074, 1092, 1110, 1128, 1154, 1172, 1198, + 1218, 1236, 1254, 1280, 1297, 1316, 1334, 1373, 1379, 1385, + 1392, 1417, 1442, 1458, 1478, 1496, 1513, 1534, 1539, 1544, + 1549, 1554, 1574, 1580, 1591, 1592, 1597, 1600, 1604, 1627, + 1650, 1673, 1701, 1710, 1714, 1729, 1750, 1767, 1781, 1787, + 1793, 1802, 1816, 1864, 1882, 1897, 1916, 1928, 1952, 1956, + 1961, 1966, 1978, 1995, 2012, 2031, 2050, 2078, 2086, 2092, + 2099, 2103, 2112, 2120, 2128, 2137, 2136, 2149, 2148, 2161, + 2160, 2173, 2172, 2185, 2192, 2199, 2206, 2213, 2220, 2227, + 2234, 2241, 2249, 2248, 2260, 2259, 2271, 2270, 2282, 2281, + 2293, 2292, 2304, 2303, 2315, 2314, 2326, 2325, 2337, 2336, + 2351, 2354, 2360, 2369, 2389, 2412, 2416, 2440, 2443, 2459, + 2462, 2475, 2504, 2548, 2553, 2595, 2618, 2638, 2664, 2687, + 2710, 2713, 2722, 2726, 2742, 2743, 2744, 2745, 2746, 2747, + 2748, 2749, 2750, 2757, 2758, 2759, 2760, 2761, 2762, 2763, + 2764, 2765, 2766, 2767, 2768, 2769, 2770, 2771, 2772, 2773, + 2774, 2775, 2776, 2777, 2778, 2779, 2780, 2781, 2782, 2783, + 2784, 2785, 2786, 2787, 2788, 2790, 2791, 2792, 2793, 2794, + 2795, 2796, 2797, 2798, 2799, 2800, 2801, 2802, 2803, 2804, + 2805, 2806, 2807, 2808, 2809, 2810, 2819, 2820, 2821, 2822, + 2823, 2824, 2825, 2829, 2842, 2854, 2869, 2879, 2889, 2907, + 2912, 2917, 2927, 2937, 2945, 2949, 2953, 2957, 2961, 2968, + 2972, 2976, 2980, 2987, 2992, 2999, 3004, 3008, 3013, 3017, + 3025, 3036, 3044, 3052, 3058, 3069, 3089, 3099, 3109, 3119, + 3139, 3144, 3148, 3152, 3164, 3168, 3180, 3187, 3197, 3201, + 3216, 3221, 3228, 3232, 3245, 3253, 3264, 3268, 3276, 3284, + 3298, 3312, 3316 }; #endif @@ -1022,32 +1016,32 @@ static const char *const yytname[] = "tBoundingBox", "tDraw", "tToday", "tPoint", "tCircle", "tEllipse", "tLine", "tSphere", "tPolarSphere", "tSurface", "tSpline", "tVolume", "tCharacteristic", "tLength", "tParametric", "tElliptic", "tPlane", - "tRuled", "tTransfinite", "tComplex", "tPhysical", "tUsing", "tBump", - "tProgression", "tPlugin", "tRotate", "tTranslate", "tSymmetry", - "tDilate", "tExtrude", "tLoop", "tRecombine", "tSmoother", "tSplit", - "tDelete", "tCoherence", "tIntersect", "tLayers", "tHole", "tAlias", - "tAliasWithOptions", "tText2D", "tText3D", "tInterpolationScheme", - "tTime", "tCombine", "tBSpline", "tBezier", "tNurbs", "tOrder", "tKnots", - "tColor", "tColorTable", "tFor", "tIn", "tEndFor", "tIf", "tEndIf", - "tExit", "tField", "tReturn", "tCall", "tFunction", "tShow", "tHide", - "tGetValue", "tGMSH_MAJOR_VERSION", "tGMSH_MINOR_VERSION", - "tGMSH_PATCH_VERSION", "tAFFECTDIVIDE", "tAFFECTTIMES", "tAFFECTMINUS", - "tAFFECTPLUS", "'?'", "tOR", "tAND", "tNOTEQUAL", "tEQUAL", "'<'", "'>'", - "tGREATEROREQUAL", "tLESSOREQUAL", "'+'", "'-'", "'*'", "'/'", "'%'", - "'!'", "UNARYPREC", "tMINUSMINUS", "tPLUSPLUS", "'^'", "'('", "')'", - "'['", "']'", "'.'", "'#'", "','", "'{'", "'}'", "'~'", "$accept", "All", - "GeoFormatItems", "GeoFormatItem", "SendToFile", "Printf", "View", - "Views", "ElementCoords", "ElementValues", "Element", "@1", "@2", - "Text2DValues", "Text2D", "@3", "Text3DValues", "Text3D", "@4", - "InterpolationMatrix", "Time", "@5", "NumericAffectation", - "NumericIncrement", "Affectation", "PhysicalId", "RuledSurfaceOptions", - "Shape", "Transform", "MultipleShape", "ListOfShapes", "Delete", - "Colorify", "Visibility", "Command", "Loop", "Extrude", "@6", "@7", "@8", - "@9", "@10", "@11", "@12", "@13", "@14", "@15", "@16", "@17", "@18", - "ExtrudeParameters", "ExtrudeParameter", "Transfinite", "Embedding", - "Coherence", "FExpr", "FExpr_Single", "VExpr", "VExpr_Single", - "RecursiveListOfListOfDouble", "ListOfDouble", "FExpr_Multi", - "RecursiveListOfDouble", "ColorExpr", "ListOfColor", + "tRuled", "tTransfinite", "tComplex", "tPhysical", "tUsing", "tPlugin", + "tRotate", "tTranslate", "tSymmetry", "tDilate", "tExtrude", "tLoop", + "tRecombine", "tSmoother", "tSplit", "tDelete", "tCoherence", + "tIntersect", "tLayers", "tHole", "tAlias", "tAliasWithOptions", + "tText2D", "tText3D", "tInterpolationScheme", "tTime", "tCombine", + "tBSpline", "tBezier", "tNurbs", "tOrder", "tKnots", "tColor", + "tColorTable", "tFor", "tIn", "tEndFor", "tIf", "tEndIf", "tExit", + "tField", "tReturn", "tCall", "tFunction", "tShow", "tHide", "tGetValue", + "tGMSH_MAJOR_VERSION", "tGMSH_MINOR_VERSION", "tGMSH_PATCH_VERSION", + "tAFFECTDIVIDE", "tAFFECTTIMES", "tAFFECTMINUS", "tAFFECTPLUS", "'?'", + "tOR", "tAND", "tNOTEQUAL", "tEQUAL", "'<'", "'>'", "tGREATEROREQUAL", + "tLESSOREQUAL", "'+'", "'-'", "'*'", "'/'", "'%'", "'!'", "UNARYPREC", + "tMINUSMINUS", "tPLUSPLUS", "'^'", "'('", "')'", "'['", "']'", "'.'", + "'#'", "','", "'{'", "'}'", "'~'", "$accept", "All", "GeoFormatItems", + "GeoFormatItem", "SendToFile", "Printf", "View", "Views", + "ElementCoords", "ElementValues", "Element", "@1", "@2", "Text2DValues", + "Text2D", "@3", "Text3DValues", "Text3D", "@4", "InterpolationMatrix", + "Time", "@5", "NumericAffectation", "NumericIncrement", "Affectation", + "PhysicalId", "RuledSurfaceOptions", "Shape", "Transform", + "MultipleShape", "ListOfShapes", "Delete", "Colorify", "Visibility", + "Command", "Loop", "Extrude", "@6", "@7", "@8", "@9", "@10", "@11", + "@12", "@13", "@14", "@15", "@16", "@17", "@18", "ExtrudeParameters", + "ExtrudeParameter", "TransfiniteType", "TransfiniteArrangement", + "Transfinite", "Embedding", "Coherence", "FExpr", "FExpr_Single", + "VExpr", "VExpr_Single", "RecursiveListOfListOfDouble", "ListOfDouble", + "FExpr_Multi", "RecursiveListOfDouble", "ColorExpr", "ListOfColor", "RecursiveListOfColor", "StringExprVar", "StringExpr", 0 }; #endif @@ -1068,52 +1062,51 @@ static const yytype_uint16 yytoknum[] = 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, - 365, 366, 367, 63, 368, 369, 370, 371, 60, 62, - 372, 373, 43, 45, 42, 47, 37, 33, 374, 375, - 376, 94, 40, 41, 91, 93, 46, 35, 44, 123, - 125, 126 + 365, 63, 366, 367, 368, 369, 60, 62, 370, 371, + 43, 45, 42, 47, 37, 33, 372, 373, 374, 94, + 40, 41, 91, 93, 46, 35, 44, 123, 125, 126 }; # endif /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ static const yytype_uint8 yyr1[] = { - 0, 142, 143, 143, 144, 144, 145, 145, 145, 145, - 145, 145, 145, 145, 145, 145, 145, 145, 145, 145, - 146, 146, 147, 147, 147, 147, 148, 148, 148, 149, - 149, 149, 149, 149, 149, 150, 150, 151, 151, 153, - 154, 152, 155, 155, 157, 156, 158, 158, 160, 159, - 161, 161, 163, 162, 164, 164, 164, 164, 164, 165, - 165, 166, 166, 166, 166, 166, 166, 166, 166, 166, - 166, 166, 166, 166, 166, 166, 166, 166, 166, 166, - 166, 166, 166, 166, 166, 166, 167, 167, 168, 168, - 169, 169, 169, 169, 169, 169, 169, 169, 169, 169, - 169, 169, 169, 169, 169, 169, 169, 169, 169, 169, - 169, 169, 169, 169, 169, 169, 169, 170, 170, 170, - 170, 170, 170, 170, 171, 171, 172, 172, 172, 172, - 172, 172, 173, 173, 173, 173, 173, 174, 175, 175, - 175, 175, 176, 176, 176, 176, 176, 176, 176, 176, - 176, 176, 177, 177, 177, 177, 177, 177, 177, 177, - 177, 177, 178, 178, 178, 179, 178, 180, 178, 181, - 178, 182, 178, 178, 178, 178, 178, 178, 178, 178, - 178, 178, 183, 178, 184, 178, 185, 178, 186, 178, - 187, 178, 188, 178, 189, 178, 190, 178, 191, 178, - 192, 192, 193, 193, 193, 193, 193, 194, 194, 194, - 194, 194, 194, 194, 194, 194, 194, 195, 195, 195, - 195, 196, 196, 197, 197, 197, 197, 197, 197, 197, + 0, 140, 141, 141, 142, 142, 143, 143, 143, 143, + 143, 143, 143, 143, 143, 143, 143, 143, 143, 143, + 144, 144, 145, 145, 145, 145, 146, 146, 146, 147, + 147, 147, 147, 147, 147, 148, 148, 149, 149, 151, + 152, 150, 153, 153, 155, 154, 156, 156, 158, 157, + 159, 159, 161, 160, 162, 162, 162, 162, 162, 163, + 163, 164, 164, 164, 164, 164, 164, 164, 164, 164, + 164, 164, 164, 164, 164, 164, 164, 164, 164, 164, + 164, 164, 164, 164, 164, 164, 165, 165, 166, 166, + 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, + 167, 167, 167, 167, 167, 167, 167, 167, 167, 167, + 167, 167, 167, 167, 167, 167, 167, 168, 168, 168, + 168, 168, 168, 168, 169, 169, 170, 170, 170, 170, + 170, 170, 171, 171, 171, 171, 171, 172, 173, 173, + 173, 173, 174, 174, 174, 174, 174, 174, 174, 174, + 174, 174, 175, 175, 175, 175, 175, 175, 175, 175, + 175, 175, 176, 176, 176, 177, 176, 178, 176, 179, + 176, 180, 176, 176, 176, 176, 176, 176, 176, 176, + 176, 176, 181, 176, 182, 176, 183, 176, 184, 176, + 185, 176, 186, 176, 187, 176, 188, 176, 189, 176, + 190, 190, 191, 191, 191, 191, 191, 192, 192, 193, + 193, 194, 194, 194, 194, 194, 194, 194, 195, 195, + 195, 195, 196, 196, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, - 197, 197, 197, 197, 197, 198, 198, 198, 198, 198, + 197, 197, 197, 197, 197, 197, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, 198, - 198, 198, 198, 199, 199, 199, 199, 199, 200, 200, - 200, 200, 201, 201, 202, 202, 202, 202, 202, 202, - 203, 203, 203, 203, 203, 203, 203, 203, 203, 204, - 204, 204, 204, 205, 205, 205, 205, 206, 206, 207, - 207, 208, 208, 208, 208, 209, 209, 209, 209, 209, - 209, 209 + 198, 198, 198, 198, 199, 199, 199, 199, 199, 200, + 200, 200, 200, 201, 201, 202, 202, 202, 202, 202, + 202, 203, 203, 203, 203, 203, 203, 203, 203, 203, + 204, 204, 204, 204, 205, 205, 205, 205, 206, 206, + 207, 207, 208, 208, 208, 208, 209, 209, 209, 209, + 209, 209, 209 }; /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ @@ -1139,22 +1132,22 @@ static const yytype_uint8 yyr2[] = 15, 0, 6, 8, 8, 8, 12, 12, 12, 14, 14, 14, 0, 12, 0, 12, 0, 12, 0, 16, 0, 16, 0, 16, 0, 18, 0, 18, 0, 18, - 1, 2, 5, 7, 9, 2, 9, 6, 9, 9, - 8, 9, 8, 8, 6, 4, 6, 10, 10, 10, - 10, 2, 3, 1, 3, 2, 2, 2, 3, 3, + 1, 2, 5, 7, 9, 2, 9, 0, 3, 0, + 1, 7, 9, 8, 8, 6, 4, 6, 10, 10, + 10, 10, 2, 3, 1, 3, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 5, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 6, 4, 4, 4, 4, 4, 4, - 6, 6, 6, 4, 4, 4, 4, 4, 4, 4, + 3, 3, 3, 5, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 6, 4, 4, 4, 4, 4, - 4, 6, 6, 6, 4, 1, 1, 1, 1, 1, - 1, 1, 1, 5, 4, 4, 2, 5, 3, 6, - 4, 7, 6, 1, 2, 2, 3, 3, 11, 9, - 7, 7, 1, 3, 1, 1, 2, 3, 4, 5, - 2, 3, 3, 5, 4, 1, 1, 3, 6, 1, - 1, 3, 3, 9, 7, 1, 5, 3, 6, 1, - 3, 1, 1, 3, 6, 1, 1, 6, 4, 4, - 4, 6 + 4, 6, 6, 6, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 6, 4, 4, 4, 4, + 4, 4, 6, 6, 6, 4, 1, 1, 1, 1, + 1, 1, 1, 1, 5, 4, 4, 2, 5, 3, + 6, 4, 7, 6, 1, 2, 2, 3, 3, 11, + 9, 7, 7, 1, 3, 1, 1, 2, 3, 4, + 5, 2, 3, 3, 5, 4, 1, 1, 3, 6, + 1, 1, 3, 3, 9, 7, 1, 5, 3, 6, + 1, 3, 1, 1, 3, 6, 1, 1, 6, 4, + 4, 4, 6 }; /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state @@ -1169,280 +1162,280 @@ static const yytype_uint16 yydefact[] = 0, 0, 0, 0, 0, 0, 0, 0, 0, 156, 0, 161, 0, 0, 158, 0, 0, 0, 0, 5, 7, 6, 8, 9, 10, 11, 12, 13, 19, 18, - 14, 15, 16, 17, 285, 292, 345, 54, 286, 287, - 288, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 14, 15, 16, 17, 286, 293, 346, 54, 287, 288, + 289, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 346, 0, 0, 289, - 290, 291, 58, 57, 56, 55, 0, 0, 0, 60, - 59, 0, 0, 0, 0, 126, 0, 0, 0, 223, + 0, 0, 0, 0, 0, 0, 347, 0, 0, 290, + 291, 292, 58, 57, 56, 55, 0, 0, 0, 60, + 59, 0, 0, 0, 0, 126, 0, 0, 0, 224, 0, 0, 0, 0, 149, 0, 151, 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, 303, 0, 0, 0, 0, 0, 126, 0, 0, - 0, 0, 0, 0, 126, 0, 221, 0, 0, 0, - 0, 0, 0, 0, 335, 0, 0, 0, 0, 0, - 148, 0, 0, 157, 342, 345, 126, 0, 341, 126, - 0, 0, 0, 0, 0, 296, 29, 0, 0, 0, + 0, 304, 0, 0, 0, 0, 0, 126, 0, 0, + 0, 0, 0, 0, 126, 0, 222, 0, 0, 0, + 0, 0, 0, 0, 336, 0, 0, 0, 0, 0, + 148, 0, 0, 157, 343, 346, 126, 0, 342, 126, + 0, 0, 0, 0, 0, 297, 29, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 292, 226, 225, 227, + 0, 0, 0, 0, 0, 0, 293, 227, 226, 228, 0, 0, 0, 0, 0, 0, 0, 0, 0, 125, 0, 124, 0, 66, 145, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 142, 107, 0, 0, 0, 0, 292, 0, 0, 325, - 326, 329, 330, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 314, 0, 315, + 142, 107, 0, 0, 0, 0, 293, 0, 0, 326, + 327, 330, 331, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 315, 0, 316, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 305, 304, 0, 0, 0, + 0, 0, 0, 0, 0, 306, 305, 0, 0, 0, 0, 126, 126, 0, 0, 0, 0, 0, 0, 0, 171, 0, 126, 0, 0, 0, 0, 135, 0, 0, - 0, 222, 0, 0, 0, 147, 0, 0, 0, 0, + 0, 223, 0, 0, 0, 147, 0, 0, 0, 0, 0, 126, 0, 0, 0, 0, 159, 0, 0, 0, - 138, 0, 139, 0, 0, 298, 0, 0, 68, 0, + 138, 0, 139, 0, 0, 299, 0, 0, 68, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 224, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 225, 0, 0, 0, 0, 54, 0, 0, 0, 0, 0, 121, - 0, 0, 0, 0, 127, 61, 0, 241, 240, 239, - 238, 234, 235, 237, 236, 229, 228, 230, 231, 232, - 233, 108, 0, 0, 0, 0, 0, 0, 225, 320, + 0, 0, 0, 0, 127, 61, 0, 242, 241, 240, + 239, 235, 236, 238, 237, 230, 229, 231, 232, 233, + 234, 108, 0, 0, 0, 0, 0, 0, 226, 321, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 316, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 317, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 86, 87, 0, 0, 0, 0, 0, 0, 0, 307, - 306, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 165, 215, 0, 0, 0, 136, 0, 0, 132, 0, + 86, 87, 0, 0, 0, 0, 0, 0, 0, 308, + 307, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 165, 216, 0, 0, 0, 136, 0, 0, 132, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 160, 0, 0, 343, 140, 141, 0, 294, 300, 0, + 160, 0, 0, 344, 140, 141, 0, 295, 301, 0, 39, 0, 0, 0, 52, 0, 30, 31, 32, 33, - 34, 243, 264, 244, 265, 245, 266, 246, 267, 247, - 268, 248, 269, 249, 270, 250, 271, 251, 272, 263, - 284, 252, 273, 0, 0, 254, 275, 255, 276, 256, - 277, 257, 278, 258, 279, 259, 280, 0, 0, 0, - 0, 0, 0, 350, 0, 0, 348, 349, 79, 0, + 34, 244, 265, 245, 266, 246, 267, 247, 268, 248, + 269, 249, 270, 250, 271, 251, 272, 252, 273, 264, + 285, 253, 274, 0, 0, 255, 276, 256, 277, 257, + 278, 258, 279, 259, 280, 260, 281, 0, 0, 0, + 0, 0, 0, 351, 0, 0, 349, 350, 79, 0, 0, 0, 0, 0, 54, 0, 0, 0, 0, 0, - 73, 0, 0, 0, 0, 295, 0, 0, 0, 0, - 0, 22, 20, 0, 0, 0, 0, 327, 0, 0, - 322, 230, 321, 331, 332, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 317, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 73, 0, 0, 0, 0, 296, 0, 0, 0, 0, + 0, 22, 20, 0, 0, 0, 0, 328, 0, 0, + 323, 231, 322, 332, 333, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 318, 0, + 0, 0, 0, 0, 0, 0, 207, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 117, 119, 0, 0, 0, 0, 0, 0, 0, 0, 200, 0, 162, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 137, 0, 0, 0, 0, - 0, 0, 0, 297, 0, 293, 0, 0, 0, 0, + 0, 0, 0, 298, 0, 294, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 294, 64, 65, 0, 0, 0, 0, - 0, 67, 69, 71, 0, 0, 339, 0, 77, 0, - 0, 0, 0, 242, 21, 0, 0, 0, 0, 0, - 324, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 318, 0, 92, 0, 0, - 0, 0, 0, 207, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 295, 64, 65, 0, 0, 0, 0, + 0, 67, 69, 71, 0, 0, 340, 0, 77, 0, + 0, 0, 0, 243, 21, 0, 0, 0, 0, 0, + 325, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 319, 0, 92, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 205, 0, 0, 172, 201, 0, 0, 214, 216, 0, - 134, 133, 0, 27, 28, 0, 0, 0, 336, 0, - 0, 0, 152, 0, 0, 0, 144, 299, 143, 0, - 0, 0, 0, 312, 0, 253, 274, 260, 281, 261, - 282, 262, 283, 351, 347, 302, 0, 54, 0, 0, - 0, 0, 62, 0, 0, 0, 337, 0, 0, 0, - 0, 23, 24, 0, 0, 90, 0, 323, 0, 95, + 205, 0, 0, 172, 201, 0, 0, 215, 217, 0, + 134, 133, 0, 27, 28, 0, 0, 0, 337, 0, + 0, 0, 152, 0, 0, 0, 144, 300, 143, 0, + 0, 0, 0, 313, 0, 254, 275, 261, 282, 262, + 283, 263, 284, 352, 348, 303, 0, 54, 0, 0, + 0, 0, 62, 0, 0, 0, 338, 0, 0, 0, + 0, 23, 24, 0, 0, 90, 0, 324, 0, 95, 0, 97, 0, 0, 93, 0, 0, 110, 111, 0, - 0, 94, 115, 319, 0, 0, 0, 0, 88, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 146, 0, + 0, 94, 115, 320, 0, 0, 0, 0, 88, 0, + 211, 209, 0, 0, 0, 0, 0, 0, 146, 0, 0, 0, 0, 126, 0, 182, 0, 184, 0, 186, - 314, 0, 0, 0, 0, 166, 0, 0, 100, 101, - 0, 0, 0, 0, 80, 0, 344, 301, 0, 35, + 315, 0, 0, 0, 0, 166, 0, 0, 100, 101, + 0, 0, 0, 0, 80, 0, 345, 302, 0, 35, 0, 0, 0, 0, 0, 37, 0, 0, 0, 74, - 0, 0, 75, 0, 340, 128, 129, 130, 131, 0, - 0, 328, 0, 0, 0, 103, 0, 0, 112, 0, - 0, 0, 212, 105, 0, 0, 0, 0, 0, 210, - 213, 114, 91, 104, 113, 116, 0, 0, 0, 311, - 0, 310, 0, 0, 173, 0, 0, 174, 0, 0, - 175, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 334, 0, 154, 153, 0, 0, 0, 40, 0, - 0, 0, 313, 0, 0, 0, 63, 70, 72, 0, - 78, 0, 25, 0, 0, 96, 98, 0, 0, 0, - 0, 0, 0, 106, 209, 208, 211, 84, 85, 126, - 0, 120, 0, 0, 0, 0, 0, 0, 202, 0, - 0, 126, 0, 123, 122, 0, 0, 0, 0, 81, - 82, 0, 36, 0, 0, 0, 38, 53, 0, 338, - 0, 217, 218, 219, 220, 109, 0, 0, 0, 0, - 309, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 167, 0, 0, 333, 155, 0, 0, - 0, 0, 0, 76, 0, 0, 0, 118, 0, 188, - 0, 0, 190, 0, 0, 192, 0, 0, 0, 203, - 0, 163, 0, 126, 102, 83, 0, 44, 0, 50, - 0, 0, 0, 89, 308, 176, 0, 0, 183, 177, - 0, 0, 185, 178, 0, 0, 187, 0, 0, 0, - 169, 0, 0, 0, 0, 0, 0, 0, 194, 0, - 196, 0, 198, 204, 206, 168, 164, 0, 41, 0, - 48, 0, 0, 0, 0, 179, 0, 0, 180, 0, - 0, 181, 0, 0, 0, 42, 0, 0, 150, 0, - 0, 0, 0, 0, 0, 0, 170, 0, 0, 0, - 0, 0, 189, 0, 191, 0, 193, 0, 43, 45, - 0, 46, 0, 99, 0, 0, 0, 0, 0, 51, - 195, 197, 199, 47, 49 + 0, 0, 75, 0, 341, 128, 129, 130, 131, 0, + 0, 329, 0, 0, 0, 103, 0, 0, 112, 0, + 0, 0, 213, 105, 0, 0, 208, 210, 0, 214, + 114, 91, 104, 113, 116, 0, 0, 0, 312, 0, + 311, 0, 0, 173, 0, 0, 174, 0, 0, 175, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 335, 0, 154, 153, 0, 0, 0, 40, 0, 0, + 0, 314, 0, 0, 0, 63, 70, 72, 0, 78, + 0, 25, 0, 0, 96, 98, 0, 0, 0, 0, + 0, 0, 106, 212, 84, 85, 126, 0, 120, 0, + 0, 0, 0, 0, 0, 202, 0, 0, 126, 0, + 123, 122, 0, 0, 0, 0, 81, 82, 0, 36, + 0, 0, 0, 38, 53, 0, 339, 0, 218, 219, + 220, 221, 109, 0, 0, 0, 0, 310, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 167, 0, 0, 334, 155, 0, 0, 0, 0, 0, + 76, 0, 0, 0, 118, 0, 188, 0, 0, 190, + 0, 0, 192, 0, 0, 0, 203, 0, 163, 0, + 126, 102, 83, 0, 44, 0, 50, 0, 0, 0, + 89, 309, 176, 0, 0, 183, 177, 0, 0, 185, + 178, 0, 0, 187, 0, 0, 0, 169, 0, 0, + 0, 0, 0, 0, 0, 194, 0, 196, 0, 198, + 204, 206, 168, 164, 0, 41, 0, 48, 0, 0, + 0, 0, 179, 0, 0, 180, 0, 0, 181, 0, + 0, 0, 42, 0, 0, 150, 0, 0, 0, 0, + 0, 0, 0, 170, 0, 0, 0, 0, 0, 189, + 0, 191, 0, 193, 0, 43, 45, 0, 46, 0, + 99, 0, 0, 0, 0, 0, 51, 195, 197, 199, + 47, 49 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int16 yydefgoto[] = { -1, 2, 3, 59, 653, 60, 61, 397, 948, 954, - 576, 736, 1081, 1204, 577, 1172, 1230, 578, 1206, 579, + 576, 736, 1078, 1201, 577, 1169, 1227, 578, 1203, 579, 580, 740, 126, 215, 62, 519, 985, 464, 309, 280, - 281, 65, 66, 67, 68, 69, 310, 711, 1142, 1187, - 538, 1005, 1008, 1011, 1156, 1160, 1164, 1196, 1199, 1202, - 707, 708, 71, 72, 73, 327, 129, 345, 171, 852, - 853, 329, 313, 196, 644, 767, 207, 208 + 281, 65, 66, 67, 68, 69, 310, 711, 1139, 1184, + 538, 1004, 1007, 1010, 1153, 1157, 1161, 1193, 1196, 1199, + 707, 708, 804, 988, 71, 72, 73, 327, 129, 345, + 171, 852, 853, 329, 313, 196, 644, 767, 207, 208 }; /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing STATE-NUM. */ -#define YYPACT_NINF -1030 +#define YYPACT_NINF -1032 static const yytype_int16 yypact[] = { - 2799, 73, 16, 2876, -1030, -1030, 1375, 32, -22, -79, - -1, 110, 125, -10, -6, 47, -2, 45, -48, 55, - 61, 118, -39, 131, 134, 211, 447, 220, 219, 165, - 173, 346, 346, 182, 257, 259, 301, 336, 28, 33, - 358, 360, 403, 446, 331, 384, 391, 15, 24, -1030, - 405, -1030, 486, 333, -1030, 496, 537, 13, 25, -1030, - -1030, -1030, -1030, -1030, -1030, -1030, -1030, -1030, -1030, -1030, - -1030, -1030, -1030, -1030, -1030, 21, 412, 508, -1030, -1030, - -1030, -75, -40, 74, 143, 229, 289, 308, 383, 434, - 470, 476, 479, 495, 505, 538, 541, 557, 564, 570, - 590, 594, 429, 433, 439, 448, -1030, 591, 488, -1030, - -1030, -1030, -1030, -1030, -1030, -1030, 2224, 2224, 2224, -1030, - -1030, 2224, 1853, 8, 624, 30, 2224, 642, 1101, -1030, - 646, 647, 2224, 687, -1030, 2224, -1030, 2224, 2156, 2224, - 2224, 528, 2224, 2156, 2224, 2224, 567, 2156, 2224, 2224, - 1423, 573, 2224, 575, 597, 601, 1423, 611, 621, 615, - 625, 633, 636, 640, 773, 346, 346, 346, 2224, 2224, - -51, -1030, -15, 346, 668, 669, 678, 2025, -11, 1423, - 1423, 662, 36, 686, -1030, 818, -1030, 705, 726, 736, - 865, 2224, 2224, 2224, 748, 2224, 751, 797, 2224, 2224, - -1030, 2224, 888, -1030, 418, -1030, -1030, 889, -1030, -1030, - 890, 764, 2224, 895, 762, -1030, -1030, 896, 2224, 2224, - 2224, 2224, 2224, 2224, 2224, 2224, 2224, 2224, 2224, 2224, - 2224, 2224, 2224, 2224, 2224, 2224, 2224, 2224, 2224, 2224, - 2224, 2224, 2224, 2224, 2224, 2224, 2224, 2224, 2224, 2224, - 2224, 2224, 2224, 2224, 2224, 2224, 2224, 2224, 2224, 2224, - 490, 490, 490, 490, 2224, 898, 520, 774, 774, 774, - 5138, 51, 2156, 4402, 169, 768, 905, 779, 775, -1030, - 777, 2941, 1649, -1030, -1030, 2224, 2224, 2224, 2224, 2224, - 2224, 2224, 2224, 2224, 2224, 2224, 2224, 2224, 2224, 2224, - -1030, -1030, 1968, -13, 2088, 5159, 622, 776, 2156, -1030, - -1030, 2571, -1030, 592, 5180, 5201, 2224, 5222, 608, 5243, - 5264, 2224, 626, 5285, 5306, 1554, 1237, 2591, 911, -1030, - 2224, 5327, 2224, 2224, 2224, 912, 2224, 2224, 2224, 2281, - 2281, 2281, 2281, 788, 420, -1030, -1030, 3674, 3700, 346, - 346, 30, 30, 426, 2224, 2224, 2224, 2025, 2025, 2224, - 2941, 437, -1030, 63, 915, 2224, 919, -1030, 2224, 2224, - 942, -1030, 2156, 2224, 2224, -1030, 5348, 5369, 5390, 836, - 3726, -1030, 789, 2610, 5411, 4425, -1030, 2224, 926, 1054, - -1030, 1279, -1030, 2224, 4448, 31, 2224, 3, -1030, 5432, - 4471, 5453, 4494, 5474, 4517, 5495, 4540, 5516, 4563, 5537, - 4586, 5558, 4609, 5579, 4632, 5600, 4655, 5621, 4678, 5642, - 4701, 3752, 3778, 5663, 4724, 5684, 4747, 5705, 4770, 5726, - 4793, 5747, 4816, 5768, 4839, 3804, 3830, 3856, 3882, 3908, - 3934, 234, 793, 799, 800, 2310, 798, 2224, -1030, 1423, - 1423, 631, 265, 508, 2224, 929, 933, 19, 803, -1030, - 175, 127, -34, 249, -1030, -1030, 2629, 562, 757, 618, - 618, 540, 540, 540, 540, 582, 582, 774, 774, 774, - 774, -1030, 14, 2156, 2224, 932, 1990, 2224, 774, -1030, - 2224, 2156, 2156, 846, 936, 937, 5789, 938, 852, 944, - 945, 5810, 855, 946, 949, 2156, -1030, 635, 1685, 2224, - 5831, 950, 2701, 5852, 5873, 2224, 2976, 3004, 5894, 825, - 6146, -1030, 826, 827, 828, 830, 346, 2224, 2224, -1030, - -1030, 822, 823, 2224, 3960, 3986, 4012, 3648, 196, 346, - 1592, -1030, 2224, 2224, 5915, -1030, 4862, 4885, -1030, 655, - 4908, 4931, 957, 961, 962, 834, 2224, 1847, 2224, 2224, - -1030, 17, 4954, -1030, -1030, -1030, 4977, 39, -1030, 3032, - -1030, 839, 841, 837, -1030, 968, -1030, -1030, -1030, -1030, - -1030, -1030, -1030, -1030, -1030, -1030, -1030, -1030, -1030, -1030, - -1030, -1030, -1030, -1030, -1030, -1030, -1030, -1030, -1030, -1030, - -1030, -1030, -1030, 2224, 2224, -1030, -1030, -1030, -1030, -1030, - -1030, -1030, -1030, -1030, -1030, -1030, -1030, 2224, 2224, 2224, - 2224, 2224, 2224, -1030, 2156, 490, -1030, -1030, -1030, 2224, - 5000, 969, 971, 844, -1030, 10, 2224, 976, 977, 2331, - -1030, 988, 850, 15, 994, -1030, 2156, 2156, 2156, 2156, - 2224, -1030, 884, 490, 253, 4038, 346, -1030, 2156, 3060, - 2648, 774, -1030, 2571, -1030, 955, 1423, 1423, 998, 1423, - 523, 1423, 1423, 999, 956, 1423, 1423, 660, -1030, 2156, - 2351, 1001, 870, 1008, 1009, 1011, 920, 1014, 1016, 1017, - 1018, 1020, 1025, 1040, 1044, 440, 4064, 4090, -1030, -1030, - 3088, 346, 346, 346, 1043, 913, 918, -30, -1030, 461, - -1030, 196, 2370, 2389, 914, 1048, 1050, 1006, 1052, 1056, - 1423, 1423, 1423, 1060, 4116, -1030, 2671, 1049, 1064, 1065, - 924, 1067, 1066, -1030, 1068, -1030, 939, 2224, 2224, 1423, - 940, -1030, 5936, 5023, 5957, 5046, 5978, 5069, 5999, 5092, - 286, 943, 6020, -56, -1030, -1030, 102, 361, 941, 1071, - 2408, -1030, -1030, -1030, 15, 2224, -1030, 661, -1030, 664, - 665, 675, 676, 6146, -1030, 1069, 40, 2224, 50, 683, - -1030, 2224, 947, 27, 48, 1423, 1077, 951, 953, 1078, - 1079, 1423, 954, 1082, 1083, -1030, 689, -1030, 1090, 2224, - 1423, 1423, 1423, -1030, 531, 1423, 1423, 1423, 1423, 1423, - 1423, 1423, 318, 2224, 2224, 2224, 970, 179, 280, 398, - -1030, 1423, 2224, -1030, -1030, 2025, 123, -1030, -1030, 2156, - -1030, -1030, 973, -1030, -1030, 1109, 1111, 1028, -1030, 2224, - 2224, 2224, -1030, 1113, 1114, 1116, -1030, 31, -1030, 2224, - 4142, 4168, 690, -1030, 2224, -1030, -1030, -1030, -1030, -1030, - -1030, -1030, -1030, -1030, -1030, -1030, 1423, 508, 2224, 1117, - 1118, 19, -1030, 1119, 5115, 15, -1030, 1120, 1122, 1123, - 1126, -1030, -1030, 490, 4194, -1030, 989, 6146, 2224, -1030, - 346, -1030, 346, 1129, -1030, 2224, 2224, -1030, -1030, 1130, - 2224, -1030, -1030, -1030, 1133, 4220, 1137, 1138, 1045, 2224, - 2224, 835, 1140, 1141, 1143, 1144, 1145, 1146, -1030, 2281, - 3116, 6041, 2892, 30, 346, 1147, 346, 1148, 346, 1149, - 312, 1019, 6062, 3144, 467, -1030, 702, 2224, -1030, -1030, - 1423, 2920, 666, 6083, -1030, 1816, -1030, -1030, 381, 6146, - 2224, 2224, 1423, 1021, 707, 6146, 1150, 1152, 2431, -1030, - 1169, 1171, -1030, 1042, -1030, -1030, -1030, -1030, -1030, 1175, - 2224, -1030, 3172, 59, 62, -1030, 3200, 3228, -1030, 3256, - 1178, 2224, -1030, -1030, 1139, 1179, 2452, 2472, 1181, -1030, - -1030, -1030, -1030, -1030, -1030, -1030, 2491, 1182, 1051, -1030, - 2224, -1030, 1053, 469, -1030, 1057, 474, -1030, 1058, 500, - -1030, 1059, 1183, 1423, 1177, 1061, 2224, 1185, 3284, 1103, - 2224, -1030, 2224, -1030, -1030, 2156, 2510, 1189, -1030, 2224, - 4246, 4272, -1030, 1423, 2224, 1196, -1030, -1030, -1030, 15, - -1030, 1112, -1030, 4298, 1197, -1030, -1030, 1199, 1200, 1201, - 1202, 4324, 1070, -1030, -1030, -1030, -1030, -1030, -1030, 30, - 2948, -1030, 2025, 196, 2025, 196, 2025, 196, -1030, 714, - 1423, -1030, 3312, -1030, -1030, 2224, 3340, 3368, 715, -1030, - -1030, 1072, 6146, 2224, 2224, 718, 6146, -1030, 1206, -1030, - 2224, -1030, -1030, -1030, -1030, -1030, 1208, 2224, 1088, 2224, - -1030, 3396, 502, 233, 3424, 513, 238, 3452, 519, 271, - 1423, 1223, 1170, 2018, 1091, 2529, -1030, -1030, 1228, 2224, - 6104, 4350, 9, -1030, 4376, 1098, 3480, -1030, 3508, 1232, - 2224, 1233, 1236, 2224, 1238, 1239, 2224, 1243, 1110, -1030, - 2224, -1030, 196, -1030, -1030, -1030, 719, -1030, 2224, -1030, - 1423, 2224, 1267, -1030, -1030, -1030, 1104, 3536, -1030, -1030, - 1134, 3564, -1030, -1030, 1135, 3592, -1030, 1269, 2552, 321, - 2323, 1270, 1142, 6125, 723, 3620, 1151, 196, 1271, 196, - 1272, 196, 1273, -1030, -1030, -1030, -1030, 196, -1030, 490, - -1030, 1154, 1276, 1278, 335, -1030, 1155, 337, -1030, 1156, - 339, -1030, 1157, 368, 728, -1030, 1158, 1423, -1030, 1159, - 1280, 196, 1282, 196, 1284, 196, -1030, 490, 1292, 490, - 729, 1294, -1030, 370, -1030, 378, -1030, 382, -1030, -1030, - 749, -1030, 1295, -1030, 1301, 1302, 1303, 490, 1305, -1030, - -1030, -1030, -1030, -1030, -1030 + 2804, 40, 33, 2879, -1032, -1032, 1424, 43, -39, -71, + 16, 102, -55, -8, 0, -34, 3, 64, -38, 67, + 80, 115, -25, 77, 165, 210, 162, 211, 661, 186, + 191, -72, -72, 222, 266, 301, 318, 333, 27, 89, + 351, 394, 412, 433, 255, 320, 326, 19, 13, -1032, + 331, -1032, 465, 350, -1032, 497, 510, 15, 24, -1032, + -1032, -1032, -1032, -1032, -1032, -1032, -1032, -1032, -1032, -1032, + -1032, -1032, -1032, -1032, -1032, 23, 385, 593, -1032, -1032, + -1032, 143, 262, 277, 306, 315, 342, 346, 368, 381, + 396, 415, 427, 504, 508, 555, 567, 568, 583, 597, + 618, 635, 397, 402, 405, 408, -1032, 539, 419, -1032, + -1032, -1032, -1032, -1032, -1032, -1032, 2355, 2355, 2355, -1032, + -1032, 2355, 1990, 8, 556, 46, 2355, 572, 1103, -1032, + 579, 580, 2355, 559, -1032, 2355, -1032, 2355, 2289, 2355, + 2355, 466, 2355, 2289, 2355, 2355, 469, 2289, 2355, 2355, + 1566, 480, 2355, 483, 495, 512, 1566, 513, 517, 544, + 547, 561, 573, 576, 698, -72, -72, -72, 2355, 2355, + -50, -1032, 187, -72, 577, 591, 595, 2160, 227, 1566, + 1566, 621, 35, 509, -1032, 766, -1032, 617, 632, 641, + 770, 2355, 2355, 2355, 664, 2355, 671, 688, 2355, 2355, + -1032, 2355, 795, -1032, 636, -1032, -1032, 803, -1032, -1032, + 811, 692, 2355, 816, 697, -1032, -1032, 829, 2355, 2355, + 2355, 2355, 2355, 2355, 2355, 2355, 2355, 2355, 2355, 2355, + 2355, 2355, 2355, 2355, 2355, 2355, 2355, 2355, 2355, 2355, + 2355, 2355, 2355, 2355, 2355, 2355, 2355, 2355, 2355, 2355, + 2355, 2355, 2355, 2355, 2355, 2355, 2355, 2355, 2355, 2355, + 644, 644, 644, 644, 2355, 839, 438, 734, 734, 734, + 5165, 11, 2289, 4429, 273, 736, 872, 759, 771, -1032, + 742, 2942, 1379, -1032, -1032, 2355, 2355, 2355, 2355, 2355, + 2355, 2355, 2355, 2355, 2355, 2355, 2355, 2355, 2355, 2355, + -1032, -1032, 1757, -89, 3675, 5186, 140, 772, 2289, -1032, + -1032, 2580, -1032, 633, 5207, 5228, 2355, 5249, 639, 5270, + 5291, 2355, 643, 5312, 5333, 1695, 1288, 2599, 888, -1032, + 2355, 5354, 2355, 2355, 2355, 895, 2355, 2355, 2355, 2412, + 2412, 2412, 2412, 779, -48, -1032, -1032, 3701, 3727, -72, + -72, 46, 46, 51, 2355, 2355, 2355, 2160, 2160, 2355, + 2942, 181, -1032, 488, 904, 2355, 906, -1032, 2355, 2355, + 743, -1032, 2289, 2355, 2355, -1032, 5375, 5396, 5417, 824, + 3753, -1032, 777, 2620, 5438, 4452, -1032, 2355, 911, 938, + -1032, 1051, -1032, 2355, 4475, 218, 2355, 10, -1032, 5459, + 4498, 5480, 4521, 5501, 4544, 5522, 4567, 5543, 4590, 5564, + 4613, 5585, 4636, 5606, 4659, 5627, 4682, 5648, 4705, 5669, + 4728, 3779, 3805, 5690, 4751, 5711, 4774, 5732, 4797, 5753, + 4820, 5774, 4843, 5795, 4866, 3831, 3857, 3883, 3909, 3935, + 3961, -62, 781, 787, 788, 1788, 789, 2355, -1032, 1566, + 1566, 646, 73, 593, 2355, 917, 920, 21, 793, -1032, + 141, -30, -33, 195, -1032, -1032, 2639, 623, 738, 602, + 602, 637, 637, 637, 637, 62, 62, 734, 734, 734, + 734, -1032, 37, 2289, 2355, 921, 2125, 2355, 734, -1032, + 2355, 2289, 2289, 835, 923, 924, 5816, 925, 841, 928, + 929, 5837, 845, 931, 932, 2289, -1032, 647, 1824, 2355, + 5858, 933, 2708, 5879, 5900, 2355, 2977, 3005, 5921, 810, + 6173, -1032, 812, 813, 814, 815, -72, 2355, 2355, -1032, + -1032, 817, 818, 2355, 3987, 4013, 4039, 3649, 245, -72, + 1152, -1032, 2355, 2355, 5942, -1032, 4889, 4912, -1032, 668, + 4935, 4958, 945, 946, 947, 823, 2355, 1330, 2355, 2355, + -1032, 4, 4981, -1032, -1032, -1032, 5004, 261, -1032, 3033, + -1032, 830, 831, 822, -1032, 956, -1032, -1032, -1032, -1032, + -1032, -1032, -1032, -1032, -1032, -1032, -1032, -1032, -1032, -1032, + -1032, -1032, -1032, -1032, -1032, -1032, -1032, -1032, -1032, -1032, + -1032, -1032, -1032, 2355, 2355, -1032, -1032, -1032, -1032, -1032, + -1032, -1032, -1032, -1032, -1032, -1032, -1032, 2355, 2355, 2355, + 2355, 2355, 2355, -1032, 2289, 644, -1032, -1032, -1032, 2355, + 5027, 957, 958, 832, -1032, 12, 2355, 960, 962, 1914, + -1032, 963, 837, 19, 966, -1032, 2289, 2289, 2289, 2289, + 2355, -1032, 856, 644, -52, 4065, -72, -1032, 2289, 3061, + 2659, 734, -1032, 2580, -1032, 926, 1566, 1566, 967, 1566, + 756, 1566, 1566, 969, 940, 1566, 1566, 677, -1032, 2289, + 2085, 970, 842, 973, 986, 993, 2222, 994, 995, 996, + 997, 998, 999, 1000, 1004, 322, 4091, 4117, -1032, -1032, + 3089, -72, -72, -72, 1003, 873, 881, 188, -1032, 371, + -1032, 245, 2384, 2441, 876, 1008, 1009, 968, 1013, 1014, + 1566, 1566, 1566, 1022, 4143, -1032, 2678, 1358, 1023, 1024, + 897, 1026, 1025, -1032, 1027, -1032, 905, 2355, 2355, 1566, + 899, -1032, 5963, 5050, 5984, 5073, 6005, 5096, 6026, 5119, + 145, 903, 6047, 336, -1032, -1032, 69, 434, 907, 1030, + 2460, -1032, -1032, -1032, 19, 2355, -1032, 678, -1032, 685, + 694, 695, 703, 6173, -1032, 1032, 58, 2355, 7, 704, + -1032, 2355, 902, 30, 38, 1566, 1034, 910, 912, 1036, + 1037, 1566, 913, 1042, 1045, -1032, 709, -1032, 1047, 2355, + 1566, 1566, 1566, 1049, 1053, 1566, 1566, 1566, 1566, 1566, + 1566, 1566, 511, 2355, 2355, 2355, 918, -53, 240, 468, + -1032, 1566, 2355, -1032, -1032, 2160, 235, -1032, -1032, 2289, + -1032, -1032, 930, -1032, -1032, 1055, 1059, 978, -1032, 2355, + 2355, 2355, -1032, 1062, 1050, 1066, -1032, 218, -1032, 2355, + 4169, 4195, 712, -1032, 2355, -1032, -1032, -1032, -1032, -1032, + -1032, -1032, -1032, -1032, -1032, -1032, 1566, 593, 2355, 1065, + 1068, 21, -1032, 1067, 5142, 19, -1032, 1069, 1073, 1074, + 1075, -1032, -1032, 644, 4221, -1032, 941, 6173, 2355, -1032, + -72, -1032, -72, 1076, -1032, 2355, 2355, -1032, -1032, 1077, + 2355, -1032, -1032, -1032, 1080, 4247, 1081, 1082, 1012, 2355, + -1032, 1085, 1084, 1086, 1100, 1106, 1108, 1109, -1032, 2412, + 3117, 6068, 2893, 46, -72, 1110, -72, 1111, -72, 1112, + 311, 950, 6089, 3145, 416, -1032, 728, 2355, -1032, -1032, + 1566, 2921, 546, 6110, -1032, 1953, -1032, -1032, 213, 6173, + 2355, 2355, 1566, 982, 739, 6173, 1114, 1115, 2480, -1032, + 1116, 1119, -1032, 988, -1032, -1032, -1032, -1032, -1032, 1120, + 2355, -1032, 3173, 39, 49, -1032, 3201, 3229, -1032, 3257, + 1124, 2355, -1032, -1032, 1093, 1125, 6173, -1032, 1126, -1032, + -1032, -1032, -1032, -1032, -1032, 2503, 1127, 1015, -1032, 2355, + -1032, 1011, 491, -1032, 1016, 503, -1032, 1017, 552, -1032, + 1018, 1140, 1566, 1143, 1020, 2355, 1145, 3285, 1072, 2355, + -1032, 2355, -1032, -1032, 2289, 2522, 1154, -1032, 2355, 4273, + 4299, -1032, 1566, 2355, 1155, -1032, -1032, -1032, 19, -1032, + 1079, -1032, 4325, 1156, -1032, -1032, 1157, 1160, 1161, 1164, + 4351, 1035, -1032, -1032, -1032, -1032, 46, 2949, -1032, 2160, + 245, 2160, 245, 2160, 245, -1032, 740, 1566, -1032, 3313, + -1032, -1032, 2355, 3341, 3369, 748, -1032, -1032, 1038, 6173, + 2355, 2355, 751, 6173, -1032, 1165, -1032, 2355, -1032, -1032, + -1032, -1032, -1032, 1168, 2355, 1039, 2355, -1032, 3397, 558, + 335, 3425, 569, 337, 3453, 575, 339, 1566, 1172, 1113, + 1598, 1043, 2542, -1032, -1032, 1173, 2355, 6131, 4377, 26, + -1032, 4403, 1046, 3481, -1032, 3509, 1175, 2355, 1177, 1178, + 2355, 1179, 1180, 2355, 1181, 1052, -1032, 2355, -1032, 245, + -1032, -1032, -1032, 752, -1032, 2355, -1032, 1566, 2355, 1183, + -1032, -1032, -1032, 1054, 3537, -1032, -1032, 1070, 3565, -1032, + -1032, 1091, 3593, -1032, 1199, 2561, 377, 1727, 1204, 1092, + 6152, 758, 3621, 1094, 245, 1207, 245, 1225, 245, 1228, + -1032, -1032, -1032, -1032, 245, -1032, 644, -1032, 1102, 1234, + 1236, 391, -1032, 1105, 393, -1032, 1107, 410, -1032, 1117, + 499, 762, -1032, 1118, 1566, -1032, 1121, 1237, 245, 1239, + 245, 1240, 245, -1032, 644, 1241, 644, 765, 1242, -1032, + 515, -1032, 518, -1032, 533, -1032, -1032, 769, -1032, 1244, + -1032, 1245, 1246, 1247, 644, 1250, -1032, -1032, -1032, -1032, + -1032, -1032 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { - -1030, -1030, -1030, -1030, 509, -1030, -1030, -1030, -1030, 193, - -1030, -1030, -1030, -1030, -1030, -1030, -1030, -1030, -1030, -1030, - -1030, -1030, -253, 2, -1030, 124, -1030, 1281, 6, -350, - -171, -1030, -1030, -1030, -1030, -1030, 1311, -1030, -1030, -1030, - -1030, -1030, -1030, -1030, -1030, -1030, -1030, -1030, -1030, -1030, - -680, -500, -1030, -1030, -1030, -3, -1030, 309, -1030, -1029, - -90, 262, 185, -617, 444, -1030, -58, 5 + -1032, -1032, -1032, -1032, 482, -1032, -1032, -1032, -1032, 144, + -1032, -1032, -1032, -1032, -1032, -1032, -1032, -1032, -1032, -1032, + -1032, -1032, -253, -4, -1032, 78, -1032, 1258, 6, -347, + -169, -1032, -1032, -1032, -1032, -1032, 1259, -1032, -1032, -1032, + -1032, -1032, -1032, -1032, -1032, -1032, -1032, -1032, -1032, -1032, + -605, -701, -1032, -1032, -1032, -1032, -1032, -3, -1032, 343, + -1032, -1031, 472, 225, -66, -617, 395, -1032, -58, 1 }; /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If @@ -1452,1397 +1445,1403 @@ static const yytype_int16 yypgoto[] = #define YYTABLE_NINF -5 static const yytype_int16 yytable[] = { - 210, 531, 532, 128, 1085, 134, 360, 570, 127, 64, - 151, 130, 274, 370, 757, 1149, 5, 204, 205, 194, - 651, 454, 146, 642, 728, 211, 766, 132, 197, 204, - 205, 826, 182, 889, 278, 389, 146, 185, 391, 186, - 366, 704, 367, 204, 205, 131, 882, 705, 706, 102, - 103, 104, 105, 133, 891, 106, 885, 218, 449, 219, - 328, 102, 103, 104, 105, 1045, 335, 106, 1046, 541, - 542, 349, 350, 119, 120, 102, 103, 104, 105, 4, - 732, 106, 217, 890, 571, 572, 573, 574, 351, 363, - 364, 147, 220, 152, 221, 30, 31, 32, 33, 275, - 276, 758, 759, 37, 892, 648, 40, 349, 350, 634, - 823, 349, 350, 267, 268, 269, 136, 141, 270, 273, - 482, 1174, 139, 282, 352, 483, 140, 183, 362, 302, - 144, 279, 304, 652, 305, 311, 314, 315, 135, 317, - 311, 319, 320, 575, 311, 323, 324, 873, 1150, 331, - 119, 120, 206, 729, 195, 212, 198, 213, 643, 652, - 119, 120, 214, 450, 209, 347, 348, 184, 119, 120, - 368, 150, 349, 350, 348, 732, 453, 145, 1220, 142, - 153, 349, 350, 154, 349, 350, 143, 148, 376, 377, - 378, 540, 380, 149, 704, 383, 384, 141, 385, 636, - 705, 706, 441, 442, 443, 444, 222, 824, 223, 394, - 557, 112, 113, 114, 115, 399, 400, 401, 402, 403, + 210, 1082, 127, 128, 531, 532, 824, 130, 360, 64, + 132, 728, 274, 885, 570, 370, 757, 197, 449, 204, + 205, 454, 134, 194, 151, 642, 766, 211, 204, 205, + 146, 182, 1146, 5, 141, 146, 889, 389, 141, 366, + 391, 367, 482, 651, 891, 1044, 4, 483, 166, 167, + 278, 102, 103, 104, 105, 1045, 131, 106, 168, 133, + 102, 103, 104, 105, 882, 169, 106, 349, 350, 623, + 349, 350, 349, 350, 624, 137, 634, 318, 217, 776, + 634, 322, 138, 924, 492, 925, 890, 351, 526, 571, + 572, 573, 574, 185, 892, 186, 142, 275, 276, 147, + 142, 758, 759, 143, 648, 152, 826, 647, 136, 30, + 31, 32, 33, 267, 268, 269, 1171, 37, 270, 273, + 40, 450, 139, 282, 183, 824, 153, 349, 350, 302, + 140, 279, 304, 144, 305, 311, 314, 315, 729, 317, + 311, 319, 320, 198, 311, 323, 324, 873, 575, 331, + 119, 120, 206, 135, 652, 212, 195, 213, 643, 349, + 350, 209, 214, 1147, 184, 347, 348, 368, 150, 349, + 350, 349, 350, 1217, 348, 652, 112, 113, 114, 115, + 112, 113, 114, 115, 296, 297, 298, 533, 376, 377, + 378, 299, 380, 540, 145, 383, 384, 148, 385, 636, + 119, 120, 441, 442, 443, 444, 451, 635, 156, 394, + 149, 157, 557, 158, 154, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, - 434, 435, 436, 437, 438, 439, 440, 137, 964, 142, - 155, 445, 160, 935, 138, 161, 647, 704, 162, 311, - 163, 159, 634, 705, 706, 224, 455, 225, 112, 113, - 114, 115, 466, 467, 468, 469, 470, 471, 472, 473, - 474, 475, 476, 477, 478, 479, 480, 164, 119, 120, - 174, 349, 350, 175, 704, 488, 176, 137, 179, 704, - 705, 706, 165, 496, 646, 705, 706, 924, 501, 925, - 490, 173, 488, 311, 918, 919, 824, 510, 318, 512, - 513, 514, 322, 516, 517, 518, 520, 520, 520, 520, - 170, 172, 704, 178, 521, 521, 521, 521, 705, 706, - 180, 534, 535, 536, 267, 268, 537, 279, 279, 631, - 632, 226, 544, 227, 188, 546, 547, 623, 867, 311, - 550, 551, 624, 1131, 112, 113, 114, 115, 1134, 166, - 167, 149, 181, 1103, 562, 1106, 776, 1109, 649, 168, - 566, 492, 704, 569, 119, 120, 177, 568, 705, 706, - 312, 635, 349, 350, 187, 312, 704, 189, 704, 312, - 704, 1137, 705, 706, 705, 706, 705, 706, 926, 863, - 927, 228, 1088, 229, 492, 285, 286, 287, 288, 289, - 290, 291, 292, 293, 294, 295, 508, 297, 298, 704, - 230, 704, 231, 299, 630, 705, 706, 705, 706, 704, - 190, 639, 1012, 704, 637, 705, 706, 451, 638, 705, - 706, 1185, 1169, 191, 522, 523, 524, 201, 166, 167, - 112, 113, 114, 115, 344, 1210, 346, 1212, 168, 1214, - 311, 655, 353, 630, 659, 169, 361, 660, 661, 663, - 119, 120, 200, 156, 204, 205, 157, 1194, 158, 1197, - 202, 1200, 311, 866, 868, 661, 680, 1203, 1216, 734, - 1234, 507, 686, 205, 1028, 232, 192, 233, 1235, 1029, - 349, 350, 1236, 193, 696, 697, 102, 103, 104, 105, - 700, 1223, 106, 1225, 312, 1227, 928, 199, 929, 712, - 713, 203, 349, 350, 102, 103, 104, 105, 349, 350, - 106, 216, 387, 724, 388, 726, 727, 549, 526, 349, - 350, 260, 349, 350, 533, 261, 234, 751, 235, 733, - 489, 262, 787, 1002, 788, 539, 783, 784, 813, 786, - 263, 789, 790, 349, 350, 793, 794, 489, 312, 349, - 350, 349, 350, 909, 910, 775, 349, 350, 264, 825, - 742, 743, 236, 824, 237, 1016, 824, 1062, 238, 824, - 239, 240, 1064, 241, 744, 745, 746, 747, 748, 749, - 265, 311, 349, 350, 349, 350, 752, 242, 277, 243, - 835, 836, 837, 760, 312, 349, 350, 244, 1066, 245, - 1130, 349, 350, 311, 311, 311, 311, 773, 283, 119, - 120, 1133, 300, 301, 447, 311, 213, 1136, 529, 530, - 316, 214, 294, 295, 296, 297, 298, 346, 654, 824, - 246, 299, 247, 248, 1022, 249, 311, 287, 288, 289, - 290, 291, 292, 293, 294, 295, 296, 297, 298, 250, - 677, 251, 303, 299, 824, 893, 252, 824, 253, 321, - 824, 899, 254, 824, 255, 330, 296, 297, 298, 1098, - 906, 907, 908, 299, 332, 911, 912, 913, 914, 915, - 916, 917, 256, 824, 257, 824, 258, 824, 259, 333, - 492, 931, 493, 334, 850, 851, 290, 291, 292, 293, - 294, 295, 296, 297, 298, 312, 492, 338, 498, 299, - 336, 119, 120, 662, 664, 733, 486, 339, 213, 869, - 337, 125, 874, 214, 492, 340, 502, 312, 341, 492, - 662, 633, 342, 492, 884, 678, 956, 343, 887, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, - 296, 297, 298, 492, 365, 717, 905, 299, 492, 875, - 795, 876, 492, 492, 877, 878, 1023, 354, 355, 750, - 920, 921, 922, 492, 492, 879, 880, 356, 930, 932, - 369, 492, 933, 886, 371, 969, 311, 492, 952, 903, - 953, 769, 770, 771, 772, 695, 941, 942, 943, 988, - 492, 989, 1017, 779, 372, 1034, 949, 1035, 709, 947, - 1019, 955, 1110, 492, 1111, 1118, 952, 1034, 1122, 1171, - 373, 952, 1032, 1191, 796, 958, 1217, 952, 1218, 1232, - 374, 375, 957, 288, 289, 290, 291, 292, 293, 294, - 295, 296, 297, 298, 379, 972, 312, 1237, 299, 1238, - 381, 382, 976, 977, 386, 390, 392, 979, 393, 395, - 1113, 396, 398, 446, 456, 299, 986, 987, 312, 312, - 312, 312, 457, 458, 125, 487, 996, 459, 509, 515, - 312, 525, 543, 1069, 997, 545, 803, 555, 558, 279, - 563, 625, 626, 627, 1018, 640, 629, 641, 645, 656, - 665, 312, 1026, 666, 667, 669, 670, 1030, 1031, 674, - 1027, 671, 672, 675, 7, 8, 676, 682, 690, 691, - 692, 693, 698, 699, 720, 778, 694, 1043, 721, 722, - 723, 737, 1170, 738, 741, 754, 739, 755, 1051, 756, - 1112, 804, 761, 762, 765, 460, 13, 14, 461, 16, - 17, 462, 19, 463, 21, 764, 22, 1060, 24, 25, - 768, 27, 28, 774, 782, 785, 791, 792, 798, 799, - 817, 818, 819, 1072, 936, 800, 801, 1076, 802, 1077, - 1138, 805, 311, 806, 807, 808, 1082, 809, 44, 45, - 46, 1086, 810, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 296, 297, 298, 811, 812, 820, - 822, 299, 821, 829, 830, 832, 831, 841, 833, 1101, - 845, 1104, 834, 1107, 838, 279, 7, 8, 843, 844, - 847, 849, 1115, 846, 848, 881, 864, 870, 871, 854, - 1120, 1121, 548, 894, 897, 898, 888, 1124, 901, 902, - 895, 312, 896, 900, 1126, 904, 1128, 460, 13, 14, - 461, 16, 17, 462, 19, 463, 21, 284, 22, 923, - 24, 25, 937, 27, 28, 938, 955, 939, 940, 944, - 946, 945, 960, 959, 971, 962, 965, 1157, 966, 967, - 1161, 1205, 968, 1165, 934, 975, 978, 1168, 980, 984, - 44, 45, 46, 982, 983, 1173, 990, 991, 1175, 992, - 993, 994, 995, 1004, 1007, 1010, 1036, 1013, 1037, 1228, - 1033, 1231, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 296, 297, 298, 1039, 1040, 1041, 1243, - 299, 1042, 842, 1050, 1070, 1053, 1052, 1056, 1058, 1068, - 1059, 1073, 1075, 1061, 564, 1080, 1063, 1065, 1067, 973, - 1071, 974, 1087, 1091, 1089, 1092, 1093, 1094, 1095, 1097, - 1078, 1119, 1123, 1125, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 1127, 1139, - 1143, 1140, 299, 1003, 1145, 1006, 1152, 1009, 1155, 1158, - 74, 306, 1159, 1177, 1162, 1163, 78, 79, 80, 1166, - 1167, 81, 82, 83, 84, 85, 86, 87, 88, 89, - 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, - 100, 101, 1176, 1179, 1181, 1183, 1188, 1195, 1198, 1201, - 307, 1189, 1208, 1209, 63, 883, 1222, 312, 1224, 1193, - 1226, 7, 8, 1207, 1211, 1213, 1215, 1219, 1229, 1221, - 1233, 1239, 30, 31, 32, 33, 34, 1240, 1241, 1242, - 37, 1244, 1146, 40, 70, 961, 0, 0, 0, 0, - 0, 0, 460, 13, 14, 461, 16, 17, 462, 19, - 463, 21, 0, 22, 0, 24, 25, 0, 27, 28, - 0, 0, 108, 109, 110, 111, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 116, - 308, 0, 0, 0, 118, 44, 45, 46, 0, 121, - 0, 1102, 0, 1105, 124, 1108, 0, 506, 74, 75, - 76, 0, 77, 0, 78, 79, 80, 0, 0, 81, - 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 0, 102, 103, 104, 105, 0, 0, 106, 0, 565, - 0, 0, 0, 0, 0, 0, 74, 306, 0, 0, - 0, 0, 78, 79, 80, 0, 0, 81, 82, 83, - 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, - 94, 95, 96, 97, 98, 99, 100, 101, 0, 0, - 0, 0, 0, 0, 0, 0, 307, 0, 0, 0, - 0, 0, 0, 0, 107, 0, 0, 0, 0, 0, - 108, 109, 110, 111, 112, 113, 114, 115, 30, 31, - 32, 33, 34, 0, 0, 0, 37, 116, 117, 40, - 0, 0, 118, 0, 119, 120, 0, 121, 0, 122, - 0, 123, 124, 0, 125, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 108, 109, - 110, 111, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 116, 325, 0, 0, 0, - 118, 0, 0, 0, 0, 121, 0, 74, 306, 0, - 124, 0, 326, 78, 79, 80, 0, 0, 81, 82, + 434, 435, 436, 437, 438, 439, 440, 704, 964, 155, + 507, 445, 159, 705, 706, 204, 205, 119, 120, 311, + 455, 137, 486, 218, 213, 219, 863, 125, 646, 214, + 453, 492, 466, 467, 468, 469, 470, 471, 472, 473, + 474, 475, 476, 477, 478, 479, 480, 102, 103, 104, + 105, 349, 350, 106, 704, 488, 549, 349, 350, 174, + 705, 706, 175, 496, 704, 176, 164, 539, 501, 490, + 705, 706, 488, 311, 352, 149, 823, 510, 165, 512, + 513, 514, 649, 516, 517, 518, 520, 520, 520, 520, + 521, 521, 521, 521, 1027, 119, 120, 349, 350, 1028, + 179, 534, 535, 536, 267, 268, 537, 279, 279, 173, + 349, 350, 544, 312, 362, 546, 547, 180, 312, 311, + 550, 551, 312, 935, 170, 172, 926, 178, 927, 181, + 112, 113, 114, 115, 562, 191, 166, 167, 119, 120, + 566, 568, 220, 569, 221, 732, 168, 187, 188, 824, + 119, 120, 824, 177, 704, 824, 704, 222, 704, 223, + 705, 706, 705, 706, 705, 706, 189, 654, 522, 523, + 524, 1085, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 295, 508, 297, 298, 224, 190, 225, 677, + 299, 867, 349, 350, 630, 226, 704, 227, 637, 1011, + 192, 639, 705, 706, 638, 1100, 193, 1103, 813, 1106, + 704, 199, 704, 119, 120, 824, 705, 706, 705, 706, + 732, 200, 228, 1128, 229, 1131, 230, 1134, 231, 704, + 311, 655, 201, 630, 659, 705, 706, 660, 661, 663, + 824, 349, 350, 824, 541, 542, 824, 312, 232, 824, + 233, 202, 311, 866, 868, 661, 680, 825, 344, 734, + 346, 234, 686, 235, 203, 1182, 353, 918, 919, 824, + 361, 824, 216, 824, 696, 697, 236, 260, 237, 1207, + 700, 1209, 261, 489, 1166, 262, 349, 350, 263, 712, + 713, 112, 113, 114, 115, 238, 264, 239, 1211, 265, + 489, 312, 1015, 724, 1021, 726, 727, 240, 750, 241, + 277, 119, 120, 733, 303, 119, 120, 751, 704, 1191, + 447, 1194, 213, 1197, 705, 706, 1001, 214, 283, 1200, + 769, 770, 771, 772, 704, 300, 301, 704, 349, 350, + 705, 706, 779, 705, 706, 775, 316, 312, 205, 321, + 742, 743, 704, 1220, 928, 1222, 929, 1224, 705, 706, + 330, 349, 350, 796, 744, 745, 746, 747, 748, 749, + 332, 311, 328, 349, 350, 333, 752, 1059, 335, 102, + 103, 104, 105, 760, 242, 106, 243, 1213, 244, 1061, + 245, 369, 334, 311, 311, 311, 311, 773, 204, 205, + 336, 363, 364, 1231, 337, 311, 1232, 285, 286, 287, + 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, + 298, 1233, 349, 350, 338, 299, 311, 339, 349, 350, + 102, 103, 104, 105, 1022, 246, 106, 247, 1063, 349, + 350, 340, 529, 530, 1127, 349, 350, 248, 250, 249, + 251, 346, 343, 341, 160, 1130, 342, 161, 312, 1095, + 162, 1133, 163, 252, 354, 253, 662, 664, 290, 291, + 292, 293, 294, 295, 296, 297, 298, 254, 355, 255, + 312, 299, 356, 662, 850, 851, 287, 288, 289, 290, + 291, 292, 293, 294, 295, 296, 297, 298, 256, 733, + 257, 365, 299, 869, 372, 7, 8, 294, 295, 296, + 297, 298, 874, 936, 373, 258, 299, 259, 387, 492, + 388, 493, 371, 374, 884, 492, 375, 498, 887, 492, + 382, 502, 492, 492, 633, 678, 460, 13, 14, 461, + 16, 17, 462, 19, 463, 21, 905, 22, 379, 24, + 25, 386, 27, 28, 492, 787, 717, 788, 381, 390, + 920, 921, 922, 492, 875, 795, 876, 392, 930, 932, + 395, 492, 933, 877, 393, 969, 311, 44, 45, 46, + 492, 492, 878, 879, 396, 398, 941, 942, 943, 492, + 492, 880, 886, 947, 446, 492, 949, 903, 952, 312, + 953, 955, 288, 289, 290, 291, 292, 293, 294, 295, + 296, 297, 298, 299, 492, 958, 1016, 299, 957, 695, + 456, 312, 312, 312, 312, 1033, 1107, 1034, 1108, 457, + 459, 548, 709, 312, 492, 972, 1115, 952, 1033, 1119, + 1168, 458, 976, 977, 952, 509, 1188, 979, 1214, 1110, + 1215, 952, 515, 1229, 312, 1234, 986, 1235, 125, 487, + 525, 543, 545, 555, 558, 563, 995, 625, 626, 627, + 996, 631, 632, 640, 641, 629, 645, 665, 656, 279, + 666, 667, 669, 670, 1017, 671, 672, 674, 675, 676, + 682, 690, 1025, 691, 692, 693, 1026, 1029, 1030, 694, + 7, 8, 720, 721, 722, 698, 699, 723, 1075, 739, + 737, 738, 741, 754, 755, 756, 761, 1042, 762, 765, + 764, 1167, 768, 774, 785, 782, 791, 798, 1050, 799, + 800, 460, 13, 14, 461, 16, 17, 462, 19, 463, + 21, 792, 22, 801, 24, 25, 1057, 27, 28, 778, + 802, 805, 806, 807, 808, 809, 810, 811, 812, 820, + 821, 822, 1069, 829, 830, 831, 1073, 832, 1074, 833, + 834, 311, 44, 45, 46, 1079, 838, 843, 844, 847, + 1083, 845, 846, 848, 864, 849, 854, 871, 881, 888, + 894, 870, 897, 898, 817, 818, 819, 895, 901, 896, + 900, 902, 904, 909, 312, 923, 1098, 945, 1101, 910, + 1104, 938, 279, 7, 8, 939, 940, 937, 944, 1112, + 946, 959, 960, 962, 971, 965, 564, 1117, 1118, 966, + 967, 968, 975, 978, 1121, 980, 1012, 982, 983, 987, + 989, 1123, 990, 1125, 460, 13, 14, 461, 16, 17, + 462, 19, 463, 21, 984, 22, 991, 24, 25, 284, + 27, 28, 992, 955, 993, 994, 1003, 1006, 1009, 1032, + 1035, 1036, 1040, 1038, 1154, 1039, 1041, 1158, 1202, 1049, + 1162, 1052, 1053, 1055, 1165, 44, 45, 46, 783, 784, + 1051, 786, 1170, 789, 790, 1172, 1065, 793, 794, 1058, + 1067, 1070, 1056, 1060, 1062, 1064, 1225, 1068, 1228, 1072, + 1077, 1084, 1088, 1089, 7, 8, 1090, 1091, 934, 1086, + 1092, 1120, 1094, 1122, 1137, 1116, 1240, 1124, 1136, 1142, + 1140, 1152, 1149, 1155, 1156, 1159, 1160, 1163, 1173, 565, + 1164, 1174, 835, 836, 837, 460, 13, 14, 461, 16, + 17, 462, 19, 463, 21, 1180, 22, 1176, 24, 25, + 1185, 27, 28, 1192, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 295, 296, 297, 298, 1178, 1186, + 1190, 1195, 299, 973, 1198, 974, 44, 45, 46, 1204, + 1205, 1206, 1208, 1219, 1210, 1221, 1223, 1226, 1230, 312, + 1236, 1237, 1238, 1239, 1212, 1216, 1241, 893, 883, 1218, + 1143, 63, 70, 899, 0, 0, 961, 1002, 0, 1005, + 0, 1008, 906, 907, 908, 0, 0, 911, 912, 913, + 914, 915, 916, 917, 0, 0, 0, 0, 0, 0, + 710, 74, 306, 931, 0, 0, 0, 78, 79, 80, + 0, 0, 81, 82, 83, 84, 85, 86, 87, 88, + 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, + 99, 100, 101, 0, 0, 0, 0, 0, 0, 0, + 0, 307, 0, 0, 0, 0, 0, 0, 956, 0, + 0, 0, 7, 8, 0, 0, 0, 0, 0, 0, + 0, 30, 31, 32, 33, 34, 0, 0, 0, 37, + 0, 0, 40, 0, 0, 0, 841, 0, 0, 0, + 0, 0, 0, 460, 13, 14, 461, 16, 17, 462, + 19, 463, 21, 0, 22, 465, 24, 25, 0, 27, + 28, 108, 109, 110, 111, 0, 0, 0, 0, 0, + 0, 0, 1099, 0, 1102, 0, 1105, 0, 116, 308, + 0, 0, 1018, 118, 44, 45, 46, 0, 121, 0, + 0, 0, 0, 124, 1031, 0, 506, 74, 75, 76, + 0, 77, 0, 78, 79, 80, 0, 0, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 0, - 0, 0, 0, 0, 0, 0, 0, 307, 0, 0, - 0, 0, 0, 0, 7, 8, 0, 0, 0, 0, + 102, 103, 104, 105, 0, 0, 106, 0, 725, 285, + 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, + 296, 297, 298, 0, 1066, 0, 0, 299, 0, 842, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 295, 296, 297, 298, 0, 0, 0, 0, 299, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 107, 0, 0, 0, 0, 0, 108, 109, 110, + 111, 112, 113, 114, 115, 0, 0, 0, 0, 1109, + 0, 0, 0, 0, 116, 117, 0, 0, 0, 118, + 0, 119, 120, 0, 121, 0, 122, 0, 123, 124, + 0, 125, 0, 0, 0, 0, 0, 0, 0, 74, + 306, 0, 0, 0, 0, 78, 79, 80, 0, 1135, + 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, + 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, + 101, 0, 0, 0, 0, 0, 0, 0, 0, 307, + 7, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 31, 32, 33, 34, 0, 0, 0, 37, 0, 0, - 40, 0, 0, 0, 0, 460, 13, 14, 461, 16, - 17, 462, 19, 463, 21, 0, 22, 0, 24, 25, - 0, 27, 28, 0, 0, 465, 0, 0, 0, 108, + 40, 460, 13, 14, 461, 16, 17, 462, 19, 463, + 21, 0, 22, 0, 24, 25, 0, 27, 28, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 108, 109, 110, 111, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 116, 308, 44, 45, - 46, 118, 0, 0, 0, 0, 121, 0, 74, 306, - 0, 124, 0, 505, 78, 79, 80, 0, 0, 81, + 0, 0, 44, 45, 46, 0, 116, 325, 0, 0, + 0, 118, 0, 0, 0, 0, 121, 0, 74, 306, + 0, 124, 0, 326, 78, 79, 80, 0, 0, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 0, 0, 0, 0, 0, 0, 0, 0, 307, 0, - 0, 0, 710, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 30, 31, 32, 33, 34, 0, 0, 0, 37, 0, - 0, 40, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 296, 297, 298, 0, 0, 0, 0, - 299, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 108, 109, 110, 111, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 116, 308, 0, - 0, 0, 118, 0, 0, 0, 0, 121, 0, 74, - 266, 205, 124, 0, 679, 78, 79, 80, 0, 0, - 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 0, 102, 103, 104, 105, 74, 266, 106, 7, - 8, 0, 78, 79, 80, 0, 0, 81, 82, 83, - 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, - 94, 95, 96, 97, 98, 99, 100, 101, 0, 0, + 0, 0, 0, 0, 0, 0, 1138, 0, 307, 7, + 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 30, 31, + 32, 33, 34, 481, 0, 0, 37, 0, 0, 40, 460, 13, 14, 461, 16, 17, 462, 19, 463, 21, 0, 22, 0, 24, 25, 0, 27, 28, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 108, 109, 110, 111, 0, 0, 0, 0, 0, - 0, 0, 0, 44, 45, 46, 0, 0, 116, 117, - 0, 0, 0, 118, 0, 0, 0, 0, 121, 0, - 0, 0, 0, 124, 0, 1025, 0, 0, 108, 109, + 0, 0, 0, 0, 628, 0, 0, 0, 108, 109, 110, 111, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 481, 116, 117, 0, 0, 0, - 118, 0, 0, 0, 0, 121, 0, 725, 271, 0, - 124, 0, 272, 74, 266, 0, 0, 0, 0, 78, + 0, 44, 45, 46, 0, 116, 308, 0, 0, 0, + 118, 0, 0, 0, 0, 121, 0, 74, 306, 0, + 124, 0, 505, 78, 79, 80, 0, 0, 81, 82, + 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, + 93, 94, 95, 96, 97, 98, 99, 100, 101, 0, + 0, 0, 0, 0, 0, 1183, 0, 307, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, + 297, 298, 0, 0, 0, 0, 299, 30, 31, 32, + 33, 34, 0, 0, 0, 37, 0, 0, 40, 285, + 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, + 296, 297, 298, 0, 0, 0, 0, 299, 0, 0, + 763, 0, 0, 0, 0, 0, 0, 108, 109, 110, + 111, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 116, 308, 0, 0, 0, 118, + 0, 0, 0, 0, 121, 0, 74, 266, 205, 124, + 0, 679, 78, 79, 80, 0, 0, 81, 82, 83, + 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, + 94, 95, 96, 97, 98, 99, 100, 101, 0, 102, + 103, 104, 105, 74, 266, 106, 0, 0, 0, 78, 79, 80, 0, 0, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, - 97, 98, 99, 100, 101, 0, 0, 0, 74, 266, - 7, 8, 0, 0, 78, 79, 80, 0, 0, 81, + 97, 98, 99, 100, 101, 285, 286, 287, 288, 289, + 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, + 0, 0, 0, 299, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 108, 109, 110, 111, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 116, 117, 0, 0, 0, 118, 0, + 0, 0, 0, 121, 0, 0, 0, 0, 124, 0, + 1024, 797, 0, 108, 109, 110, 111, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 116, 117, 0, 0, 0, 118, 0, 0, 0, 0, + 121, 0, 0, 271, 0, 124, 0, 272, 74, 266, + 0, 0, 0, 0, 78, 79, 80, 0, 0, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 0, 460, 13, 14, 461, 16, 17, 462, 19, 463, - 21, 0, 22, 0, 24, 25, 0, 27, 28, 0, - 0, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 296, 297, 298, 108, 109, 110, 111, 299, - 0, 0, 0, 0, 44, 45, 46, 0, 0, 0, + 0, 0, 0, 74, 266, 0, 0, 0, 0, 78, + 79, 80, 0, 0, 81, 82, 83, 84, 85, 86, + 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, + 97, 98, 99, 100, 101, 0, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, + 0, 0, 0, 0, 299, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 108, 109, + 110, 111, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 116, 117, 0, 0, 0, + 118, 0, 0, 0, 0, 121, 0, 0, 657, 0, + 124, 0, 658, 108, 109, 110, 111, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 357, 358, 0, 803, 0, 118, 0, 0, 0, 0, + 359, 0, 74, 306, 0, 124, 0, 169, 78, 79, + 80, 0, 0, 81, 82, 83, 84, 85, 86, 87, + 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, + 98, 99, 100, 101, 0, 0, 0, 0, 0, 0, + 0, 0, 307, 285, 286, 287, 288, 289, 290, 291, + 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, + 0, 299, 30, 31, 32, 33, 34, 0, 74, 266, + 37, 0, 0, 40, 78, 79, 80, 0, 0, 81, + 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, + 827, 0, 108, 109, 110, 111, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 116, + 308, 0, 0, 0, 118, 74, 266, 205, 0, 121, + 0, 78, 79, 80, 124, 0, 81, 82, 83, 84, + 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, + 95, 96, 97, 98, 99, 100, 101, 828, 102, 103, + 104, 105, 0, 0, 106, 0, 0, 0, 108, 109, + 110, 111, 0, 0, 0, 0, 872, 0, 0, 0, + 0, 0, 0, 0, 0, 116, 117, 0, 0, 0, + 118, 0, 0, 0, 0, 121, 1037, 0, 0, 0, + 124, 0, 0, 0, 0, 285, 286, 287, 288, 289, + 290, 291, 292, 293, 294, 295, 296, 297, 298, 1054, + 0, 0, 0, 299, 0, 108, 109, 110, 111, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 1076, 0, 0, 0, 116, 117, 0, 0, 0, 118, 0, 0, - 0, 0, 121, 0, 0, 657, 0, 124, 0, 658, - 108, 109, 110, 111, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 357, 358, 0, - 0, 0, 118, 0, 0, 0, 0, 359, 1141, 74, - 306, 0, 124, 0, 169, 78, 79, 80, 0, 0, - 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 0, 0, 0, 0, 0, 0, 0, 0, 307, - 0, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 296, 297, 298, 0, 0, 0, 0, 299, - 0, 30, 31, 32, 33, 34, 484, 74, 266, 37, - 0, 0, 40, 78, 79, 80, 0, 0, 81, 82, - 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, - 93, 94, 95, 96, 97, 98, 99, 100, 101, 0, - 0, 108, 109, 110, 111, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 116, 308, - 0, 0, 0, 118, 74, 266, 205, 0, 121, 0, - 78, 79, 80, 124, 0, 81, 82, 83, 84, 85, - 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 628, 102, 103, 104, - 105, 0, 0, 106, 0, 0, 0, 0, 0, 108, - 109, 110, 111, 0, 0, 7, 8, 763, 0, 0, - 0, 0, 0, 0, 0, 0, 116, 117, 0, 0, - 0, 118, 0, 0, 0, 0, 121, 797, 0, 0, - 0, 124, 0, 0, 0, 0, 460, 13, 14, 461, - 16, 17, 462, 19, 463, 21, 827, 22, 0, 24, - 25, 0, 27, 28, 0, 0, 108, 109, 110, 111, - 0, 0, 0, 0, 0, 828, 0, 0, 0, 0, - 0, 0, 0, 116, 117, 0, 0, 0, 118, 44, - 45, 46, 0, 121, 872, 0, 0, 0, 124, 0, - 0, 0, 0, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 296, 297, 298, 1038, 0, 0, - 0, 299, 0, 0, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 1054, 0, - 0, 0, 299, 1186, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 1055, 0, - 0, 0, 299, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 296, 297, 298, 1057, 0, 0, - 0, 299, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 296, 297, 298, 1079, 0, 0, 0, + 0, 0, 121, 0, 0, 0, 0, 124, 1141, 0, + 0, 0, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 295, 296, 297, 298, 0, 1181, 0, 0, 299, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 296, 297, 298, 1144, 0, 0, 0, 299, + 294, 295, 296, 297, 298, 0, 0, 0, 490, 299, + 0, 285, 286, 287, 288, 289, 290, 291, 292, 293, + 294, 295, 296, 297, 298, 0, 0, 490, 0, 299, 0, 0, 0, 0, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 1184, 0, - 0, 0, 299, 0, 0, 285, 286, 287, 288, 289, - 290, 291, 292, 293, 294, 295, 296, 297, 298, 490, - 0, 0, 0, 299, 0, 285, 286, 287, 288, 289, - 290, 291, 292, 293, 294, 295, 296, 297, 298, 490, - 0, 0, 0, 299, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 559, 0, 0, 0, 299, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 650, 0, 0, + 0, 299, 0, 285, 286, 287, 288, 289, 290, 291, + 292, 293, 294, 295, 296, 297, 298, 781, 0, 0, 0, 299, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 296, 297, 298, 781, 0, 0, 0, - 299, 0, 0, 0, 0, 285, 286, 287, 288, 289, - 290, 291, 292, 293, 294, 295, 296, 297, 298, 840, - 0, 0, 0, 299, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 491, 297, 298, 0, 0, - 0, 0, 299, 0, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 508, 297, 298, 0, 0, - 0, 0, 299, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, - 0, 299, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 296, 297, 298, 0, 0, 0, 0, + 293, 294, 295, 296, 297, 298, 840, 0, 0, 0, 299, 285, 286, 287, 288, 289, 290, 291, 292, 293, + 294, 295, 491, 297, 298, 0, 0, 0, 0, 299, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 295, 508, 297, 298, 0, 0, 0, 0, 299, 0, + 0, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, 0, 299, - 0, 0, 0, 0, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 0, -4, - 1, 0, 299, -4, 0, 0, 0, 0, 0, 0, - 0, -4, -4, 0, 285, 286, 287, 288, 289, 290, - 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, - 0, 0, 299, 0, -4, 0, 0, 0, 0, -4, - -4, 683, -4, -4, -4, -4, -4, -4, -4, -4, - -4, -4, 0, -4, -4, -4, -4, -4, -4, -4, - 0, 0, 0, -4, -4, -4, -4, -4, -4, 0, - -4, -4, -4, -4, -4, -4, 0, 0, -4, -4, - 6, 0, 0, 0, -4, -4, -4, -4, 7, 8, - -4, 0, -4, 0, -4, -4, -4, -4, -4, -4, - -4, -4, -4, -4, 0, 0, 0, 0, 0, 0, - 0, 9, 0, 0, 0, 0, 10, 11, 0, 12, - 13, 14, 15, 16, 17, 18, 19, 20, 21, 0, - 22, 23, 24, 25, 26, 27, 28, 0, 0, 0, - 29, 30, 31, 32, 33, 34, 0, 35, 36, 37, - 38, 39, 40, 7, 8, 41, 42, 0, 0, 0, - 0, 43, 44, 45, 46, 0, 0, 47, 0, 48, - 0, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 0, 0, 0, 460, 13, 14, 461, 16, 17, - 462, 19, 463, 21, 0, 22, 0, 24, 25, 0, - 27, 28, 0, 0, 0, 285, 286, 287, 288, 289, - 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, - 0, 0, 0, 299, 0, 0, 0, 44, 45, 46, - 1000, 0, 1001, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, - 0, 299, 0, 0, 0, 0, 0, 0, 1020, 0, - 1021, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 296, 297, 298, 0, 0, 0, 0, 299, - 0, 0, 0, 0, 0, 0, 1099, 0, 1100, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, - 296, 297, 298, 0, 0, 0, 0, 299, 0, 0, - 0, 0, 0, 0, 0, 0, 687, 285, 286, 287, - 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, - 298, 0, 0, 0, 0, 299, 0, 0, 0, 0, - 0, 0, 0, 0, 688, 285, 286, 287, 288, 289, - 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, - 0, 0, 0, 299, 0, 0, 0, 0, 0, 0, - 0, 0, 735, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, - 0, 299, 0, 0, 0, 0, 0, 0, 0, 0, - 780, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 296, 297, 298, 0, 0, 0, 0, 299, - 0, 0, 0, 0, 0, 0, 0, 0, 816, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, - 296, 297, 298, 0, 0, 0, 0, 299, 0, 0, - 0, 0, 0, 0, 0, 0, 998, 285, 286, 287, - 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, - 298, 0, 0, 0, 0, 299, 0, 0, 0, 0, - 0, 0, 0, 0, 1015, 285, 286, 287, 288, 289, - 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, - 0, 0, 0, 299, 0, 0, 0, 0, 0, 0, - 0, 0, 1044, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, - 0, 299, 0, 0, 0, 0, 0, 0, 0, 0, - 1047, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 296, 297, 298, 0, 0, 0, 0, 299, - 0, 0, 0, 0, 0, 0, 0, 0, 1048, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, - 296, 297, 298, 0, 0, 0, 0, 299, 0, 0, - 0, 0, 0, 0, 0, 0, 1049, 285, 286, 287, - 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, - 298, 0, 0, 0, 0, 299, 0, 0, 0, 0, - 0, 0, 0, 0, 1074, 285, 286, 287, 288, 289, - 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, - 0, 0, 0, 299, 0, 0, 0, 0, 0, 0, - 0, 0, 1114, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, - 0, 299, 0, 0, 0, 0, 0, 0, 0, 0, - 1116, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 296, 297, 298, 0, 0, 0, 0, 299, - 0, 0, 0, 0, 0, 0, 0, 0, 1117, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, - 296, 297, 298, 0, 0, 0, 0, 299, 0, 0, - 0, 0, 0, 0, 0, 0, 1129, 285, 286, 287, - 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, - 298, 0, 0, 0, 0, 299, 0, 0, 0, 0, - 0, 0, 0, 0, 1132, 285, 286, 287, 288, 289, - 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, - 0, 0, 0, 299, 0, 0, 0, 0, 0, 0, - 0, 0, 1135, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, - 0, 299, 0, 0, 0, 0, 0, 0, 0, 0, - 1153, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 296, 297, 298, 0, 0, 0, 0, 299, - 0, 0, 0, 0, 0, 0, 0, 0, 1154, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, - 296, 297, 298, 0, 0, 0, 0, 299, 0, 0, - 0, 0, 0, 0, 0, 0, 1178, 285, 286, 287, - 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, - 298, 0, 0, 0, 0, 299, 0, 0, 0, 0, - 0, 0, 0, 0, 1180, 285, 286, 287, 288, 289, - 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, - 0, 0, 0, 299, 0, 0, 0, 0, 0, 0, - 0, 0, 1182, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, - 0, 299, 0, 0, 0, 0, 0, 0, 0, 0, - 1192, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 296, 297, 298, 0, 0, 0, 0, 299, - 0, 448, 0, 0, 0, 0, 527, 285, 286, 287, - 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, - 298, 0, 0, 0, 0, 299, 0, 0, 0, 0, - 0, 0, 527, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, - 0, 299, 0, 0, 0, 0, 0, 0, 528, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, - 296, 297, 298, 0, 0, 0, 0, 299, 0, 0, - 0, 0, 0, 0, 556, 285, 286, 287, 288, 289, - 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, - 0, 0, 0, 299, 0, 0, 0, 0, 0, 0, - 603, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 296, 297, 298, 0, 0, 0, 0, 299, - 0, 0, 0, 0, 0, 0, 604, 285, 286, 287, - 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, - 298, 0, 0, 0, 0, 299, 0, 0, 0, 0, - 0, 0, 617, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, - 0, 299, 0, 0, 0, 0, 0, 0, 618, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, - 296, 297, 298, 0, 0, 0, 0, 299, 0, 0, - 0, 0, 0, 0, 619, 285, 286, 287, 288, 289, - 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, - 0, 0, 0, 299, 0, 0, 0, 0, 0, 0, - 620, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 296, 297, 298, 0, 0, 0, 0, 299, - 0, 0, 0, 0, 0, 0, 621, 285, 286, 287, - 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, - 298, 0, 0, 0, 0, 299, 0, 0, 0, 0, - 0, 0, 622, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, - 0, 299, 0, 0, 0, 0, 0, 0, 701, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, - 296, 297, 298, 0, 0, 0, 0, 299, 0, 0, - 0, 0, 0, 0, 702, 285, 286, 287, 288, 289, - 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, - 0, 0, 0, 299, 0, 0, 0, 0, 0, 0, - 703, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 296, 297, 298, 0, 0, 0, 0, 299, - 0, 0, 0, 0, 0, 0, 777, 285, 286, 287, - 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, - 298, 0, 0, 0, 0, 299, 0, 0, 0, 0, - 0, 0, 814, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, - 0, 299, 0, 0, 0, 0, 0, 0, 815, 285, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 295, 296, 297, 298, 0, 0, 0, 0, 299, 0, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 295, 296, 297, 298, 0, 0, 0, 0, 299, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, - 296, 297, 298, 0, 0, 0, 0, 299, 0, 0, - 0, 0, 0, 0, 839, 285, 286, 287, 288, 289, - 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, - 0, 0, 0, 299, 0, 0, 0, 0, 0, 0, - 950, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 296, 297, 298, 0, 0, 0, 0, 299, - 0, 0, 0, 0, 0, 0, 951, 285, 286, 287, - 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, - 298, 0, 0, 0, 0, 299, 0, 0, 0, 0, - 0, 0, 970, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, - 0, 299, 0, 0, 0, 0, 0, 0, 981, 285, + 296, 297, 298, 0, -4, 1, 0, 299, -4, 0, + 0, 0, 0, 0, 0, 0, -4, -4, 0, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, - 296, 297, 298, 0, 0, 0, 0, 299, 0, 0, - 0, 0, 0, 0, 1083, 285, 286, 287, 288, 289, - 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, - 0, 0, 0, 299, 0, 0, 0, 0, 0, 0, - 1084, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 296, 297, 298, 0, 0, 0, 0, 299, - 0, 0, 0, 0, 0, 0, 1090, 285, 286, 287, - 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, - 298, 0, 0, 0, 0, 299, 0, 0, 0, 0, - 0, 0, 1096, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, - 0, 299, 0, 0, 0, 0, 0, 0, 1148, 285, - 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, - 296, 297, 298, 0, 0, 0, 0, 299, 0, 0, - 0, 0, 0, 0, 1151, 285, 286, 287, 288, 289, - 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, - 0, 0, 0, 299, 0, 0, 0, 452, 285, 286, + 296, 297, 298, 0, 0, 0, 0, 299, 0, -4, + 0, 0, 0, 0, -4, -4, 683, -4, -4, -4, + -4, -4, -4, -4, -4, -4, -4, 0, -4, -4, + -4, -4, -4, -4, -4, 0, -4, -4, -4, -4, + -4, -4, 0, -4, -4, -4, -4, -4, -4, 0, + 0, -4, -4, 6, 0, 0, 0, -4, -4, -4, + -4, 7, 8, -4, 0, -4, 0, -4, -4, -4, + -4, -4, -4, -4, -4, -4, -4, 0, 0, 0, + 0, 0, 0, 0, 9, 0, 0, 0, 0, 10, + 11, 0, 12, 13, 14, 15, 16, 17, 18, 19, + 20, 21, 0, 22, 23, 24, 25, 26, 27, 28, + 0, 29, 30, 31, 32, 33, 34, 0, 35, 36, + 37, 38, 39, 40, 7, 8, 41, 42, 0, 0, + 0, 0, 43, 44, 45, 46, 0, 0, 47, 0, + 48, 0, 49, 50, 51, 52, 53, 54, 55, 56, + 57, 58, 0, 0, 0, 460, 13, 14, 461, 16, + 17, 462, 19, 463, 21, 0, 22, 0, 24, 25, + 0, 27, 28, 0, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, + 0, 0, 299, 0, 0, 0, 44, 45, 46, 999, + 0, 1000, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 295, 296, 297, 298, 0, 0, 0, 0, + 299, 0, 0, 0, 0, 0, 0, 1019, 0, 1020, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 295, 296, 297, 298, 0, 0, 0, 0, 299, 0, + 0, 0, 0, 0, 0, 1096, 0, 1097, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, 0, 299, 0, 0, 0, - 561, 285, 286, 287, 288, 289, 290, 291, 292, 293, - 294, 295, 296, 297, 298, 0, 0, 0, 0, 299, - 0, 0, 0, 567, 285, 286, 287, 288, 289, 290, + 0, 0, 0, 0, 0, 687, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, + 0, 0, 0, 0, 299, 0, 0, 0, 0, 0, + 0, 0, 0, 688, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, - 0, 0, 299, 0, 0, 0, 582, 285, 286, 287, - 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, - 298, 0, 0, 0, 0, 299, 0, 0, 0, 584, + 0, 0, 299, 0, 0, 0, 0, 0, 0, 0, + 0, 735, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 295, 296, 297, 298, 0, 0, 0, 0, + 299, 0, 0, 0, 0, 0, 0, 0, 0, 780, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 295, 296, 297, 298, 0, 0, 0, 0, 299, 0, + 0, 0, 0, 0, 0, 0, 0, 816, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, + 297, 298, 0, 0, 0, 0, 299, 0, 0, 0, + 0, 0, 0, 0, 0, 997, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, + 0, 0, 0, 0, 299, 0, 0, 0, 0, 0, + 0, 0, 0, 1014, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, + 0, 0, 299, 0, 0, 0, 0, 0, 0, 0, + 0, 1043, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 295, 296, 297, 298, 0, 0, 0, 0, + 299, 0, 0, 0, 0, 0, 0, 0, 0, 1046, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 295, 296, 297, 298, 0, 0, 0, 0, 299, 0, + 0, 0, 0, 0, 0, 0, 0, 1047, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, + 297, 298, 0, 0, 0, 0, 299, 0, 0, 0, + 0, 0, 0, 0, 0, 1048, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, + 0, 0, 0, 0, 299, 0, 0, 0, 0, 0, + 0, 0, 0, 1071, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, + 0, 0, 299, 0, 0, 0, 0, 0, 0, 0, + 0, 1111, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 295, 296, 297, 298, 0, 0, 0, 0, + 299, 0, 0, 0, 0, 0, 0, 0, 0, 1113, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 295, 296, 297, 298, 0, 0, 0, 0, 299, 0, + 0, 0, 0, 0, 0, 0, 0, 1114, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, + 297, 298, 0, 0, 0, 0, 299, 0, 0, 0, + 0, 0, 0, 0, 0, 1126, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, + 0, 0, 0, 0, 299, 0, 0, 0, 0, 0, + 0, 0, 0, 1129, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, + 0, 0, 299, 0, 0, 0, 0, 0, 0, 0, + 0, 1132, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 295, 296, 297, 298, 0, 0, 0, 0, + 299, 0, 0, 0, 0, 0, 0, 0, 0, 1150, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 295, 296, 297, 298, 0, 0, 0, 0, 299, 0, + 0, 0, 0, 0, 0, 0, 0, 1151, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, + 297, 298, 0, 0, 0, 0, 299, 0, 0, 0, + 0, 0, 0, 0, 0, 1175, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, + 0, 0, 0, 0, 299, 0, 0, 0, 0, 0, + 0, 0, 0, 1177, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, + 0, 0, 299, 0, 0, 0, 0, 0, 0, 0, + 0, 1179, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 295, 296, 297, 298, 0, 0, 0, 0, + 299, 0, 0, 0, 0, 0, 0, 0, 0, 1189, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 295, 296, 297, 298, 0, 0, 0, 0, 299, 0, + 448, 0, 0, 0, 0, 527, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, + 0, 0, 0, 0, 299, 0, 0, 0, 0, 0, + 0, 484, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 295, 296, 297, 298, 0, 0, 0, 0, + 299, 0, 0, 0, 0, 0, 0, 527, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, + 297, 298, 0, 0, 0, 0, 299, 0, 0, 0, + 0, 0, 0, 528, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, + 0, 0, 299, 0, 0, 0, 0, 0, 0, 556, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 295, 296, 297, 298, 0, 0, 0, 0, 299, 0, + 0, 0, 0, 0, 0, 603, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, + 0, 0, 0, 0, 299, 0, 0, 0, 0, 0, + 0, 604, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 295, 296, 297, 298, 0, 0, 0, 0, + 299, 0, 0, 0, 0, 0, 0, 617, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, + 297, 298, 0, 0, 0, 0, 299, 0, 0, 0, + 0, 0, 0, 618, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, + 0, 0, 299, 0, 0, 0, 0, 0, 0, 619, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 295, 296, 297, 298, 0, 0, 0, 0, 299, 0, + 0, 0, 0, 0, 0, 620, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, + 0, 0, 0, 0, 299, 0, 0, 0, 0, 0, + 0, 621, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 295, 296, 297, 298, 0, 0, 0, 0, + 299, 0, 0, 0, 0, 0, 0, 622, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, + 297, 298, 0, 0, 0, 0, 299, 0, 0, 0, + 0, 0, 0, 701, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, + 0, 0, 299, 0, 0, 0, 0, 0, 0, 702, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 295, 296, 297, 298, 0, 0, 0, 0, 299, 0, + 0, 0, 0, 0, 0, 703, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, + 0, 0, 0, 0, 299, 0, 0, 0, 0, 0, + 0, 777, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 295, 296, 297, 298, 0, 0, 0, 0, + 299, 0, 0, 0, 0, 0, 0, 814, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, + 297, 298, 0, 0, 0, 0, 299, 0, 0, 0, + 0, 0, 0, 815, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, + 0, 0, 299, 0, 0, 0, 0, 0, 0, 839, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 295, 296, 297, 298, 0, 0, 0, 0, 299, 0, + 0, 0, 0, 0, 0, 950, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, + 0, 0, 0, 0, 299, 0, 0, 0, 0, 0, + 0, 951, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 295, 296, 297, 298, 0, 0, 0, 0, + 299, 0, 0, 0, 0, 0, 0, 970, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, + 297, 298, 0, 0, 0, 0, 299, 0, 0, 0, + 0, 0, 0, 981, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, + 0, 0, 299, 0, 0, 0, 0, 0, 0, 1080, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 295, 296, 297, 298, 0, 0, 0, 0, 299, 0, + 0, 0, 0, 0, 0, 1081, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, + 0, 0, 0, 0, 299, 0, 0, 0, 0, 0, + 0, 1087, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 295, 296, 297, 298, 0, 0, 0, 0, + 299, 0, 0, 0, 0, 0, 0, 1093, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, + 297, 298, 0, 0, 0, 0, 299, 0, 0, 0, + 0, 0, 0, 1145, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, + 0, 0, 299, 0, 0, 0, 0, 0, 0, 1148, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, 0, 299, 0, - 0, 0, 586, 285, 286, 287, 288, 289, 290, 291, + 0, 0, 452, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, - 0, 299, 0, 0, 0, 588, 285, 286, 287, 288, + 0, 299, 0, 0, 0, 561, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, - 0, 0, 0, 0, 299, 0, 0, 0, 590, 285, + 0, 0, 0, 0, 299, 0, 0, 0, 567, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, 0, 299, 0, 0, - 0, 592, 285, 286, 287, 288, 289, 290, 291, 292, + 0, 582, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, 0, - 299, 0, 0, 0, 594, 285, 286, 287, 288, 289, + 299, 0, 0, 0, 584, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, - 0, 0, 0, 299, 0, 0, 0, 596, 285, 286, + 0, 0, 0, 299, 0, 0, 0, 586, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, 0, 299, 0, 0, 0, - 598, 285, 286, 287, 288, 289, 290, 291, 292, 293, + 588, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, 0, 299, - 0, 0, 0, 600, 285, 286, 287, 288, 289, 290, + 0, 0, 0, 590, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, - 0, 0, 299, 0, 0, 0, 602, 285, 286, 287, + 0, 0, 299, 0, 0, 0, 592, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, - 298, 0, 0, 0, 0, 299, 0, 0, 0, 606, + 298, 0, 0, 0, 0, 299, 0, 0, 0, 594, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, 0, 299, 0, - 0, 0, 608, 285, 286, 287, 288, 289, 290, 291, + 0, 0, 596, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, - 0, 299, 0, 0, 0, 610, 285, 286, 287, 288, + 0, 299, 0, 0, 0, 598, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, - 0, 0, 0, 0, 299, 0, 0, 0, 612, 285, + 0, 0, 0, 0, 299, 0, 0, 0, 600, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, 0, 299, 0, 0, - 0, 614, 285, 286, 287, 288, 289, 290, 291, 292, + 0, 602, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, 0, - 299, 0, 0, 0, 616, 285, 286, 287, 288, 289, + 299, 0, 0, 0, 606, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, - 0, 0, 0, 299, 0, 0, 0, 715, 285, 286, + 0, 0, 0, 299, 0, 0, 0, 608, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, 0, 299, 0, 0, 0, - 716, 285, 286, 287, 288, 289, 290, 291, 292, 293, + 610, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, 0, 299, - 0, 0, 0, 718, 285, 286, 287, 288, 289, 290, + 0, 0, 0, 612, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, - 0, 0, 299, 0, 0, 0, 719, 285, 286, 287, + 0, 0, 299, 0, 0, 0, 614, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, - 298, 0, 0, 0, 0, 299, 0, 0, 0, 730, + 298, 0, 0, 0, 0, 299, 0, 0, 0, 616, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, 0, 299, 0, - 0, 0, 731, 285, 286, 287, 288, 289, 290, 291, + 0, 0, 715, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, - 0, 299, 0, 0, 0, 753, 285, 286, 287, 288, + 0, 299, 0, 0, 0, 716, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, - 0, 0, 0, 0, 299, 0, 0, 0, 856, 285, + 0, 0, 0, 0, 299, 0, 0, 0, 718, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, 0, 299, 0, 0, - 0, 858, 285, 286, 287, 288, 289, 290, 291, 292, + 0, 719, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, 0, - 299, 0, 0, 0, 860, 285, 286, 287, 288, 289, + 299, 0, 0, 0, 730, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, - 0, 0, 0, 299, 0, 0, 0, 862, 285, 286, + 0, 0, 0, 299, 0, 0, 0, 731, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, 0, 299, 0, 0, 0, - 963, 285, 286, 287, 288, 289, 290, 291, 292, 293, + 753, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, 0, 299, - 0, 448, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 296, 297, 298, 0, 0, 0, 0, - 299, 0, 485, 285, 286, 287, 288, 289, 290, 291, - 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, - 0, 299, 0, 494, 285, 286, 287, 288, 289, 290, + 0, 0, 0, 856, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, - 0, 0, 299, 0, 495, 285, 286, 287, 288, 289, - 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, - 0, 0, 0, 299, 0, 497, 285, 286, 287, 288, + 0, 0, 299, 0, 0, 0, 858, 285, 286, 287, + 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, + 298, 0, 0, 0, 0, 299, 0, 0, 0, 860, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 295, 296, 297, 298, 0, 0, 0, 0, 299, 0, + 0, 0, 862, 285, 286, 287, 288, 289, 290, 291, + 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, + 0, 299, 0, 0, 0, 963, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, - 0, 0, 0, 0, 299, 0, 499, 285, 286, 287, + 0, 0, 0, 0, 299, 0, 448, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, - 298, 0, 0, 0, 0, 299, 0, 500, 285, 286, + 298, 0, 0, 0, 0, 299, 0, 485, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 0, 0, 0, 0, 299, 0, 503, 285, + 297, 298, 0, 0, 0, 0, 299, 0, 494, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, - 296, 297, 298, 0, 0, 0, 0, 299, 0, 504, + 296, 297, 298, 0, 0, 0, 0, 299, 0, 495, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, 0, 299, 0, - 511, 285, 286, 287, 288, 289, 290, 291, 292, 293, + 497, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, 0, 299, - 0, 552, 285, 286, 287, 288, 289, 290, 291, 292, + 0, 499, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, 0, - 299, 0, 553, 285, 286, 287, 288, 289, 290, 291, + 299, 0, 500, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, - 0, 299, 0, 554, 285, 286, 287, 288, 289, 290, + 0, 299, 0, 503, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, - 0, 0, 299, 0, 560, 285, 286, 287, 288, 289, + 0, 0, 299, 0, 504, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, - 0, 0, 0, 299, 0, 581, 285, 286, 287, 288, + 0, 0, 0, 299, 0, 511, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, - 0, 0, 0, 0, 299, 0, 583, 285, 286, 287, + 0, 0, 0, 0, 299, 0, 552, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, - 298, 0, 0, 0, 0, 299, 0, 585, 285, 286, + 298, 0, 0, 0, 0, 299, 0, 553, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 0, 0, 0, 0, 299, 0, 587, 285, + 297, 298, 0, 0, 0, 0, 299, 0, 554, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, - 296, 297, 298, 0, 0, 0, 0, 299, 0, 589, + 296, 297, 298, 0, 0, 0, 0, 299, 0, 560, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, 0, 299, 0, - 591, 285, 286, 287, 288, 289, 290, 291, 292, 293, + 581, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, 0, 299, - 0, 593, 285, 286, 287, 288, 289, 290, 291, 292, + 0, 583, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, 0, - 299, 0, 595, 285, 286, 287, 288, 289, 290, 291, + 299, 0, 585, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, - 0, 299, 0, 597, 285, 286, 287, 288, 289, 290, + 0, 299, 0, 587, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, - 0, 0, 299, 0, 599, 285, 286, 287, 288, 289, + 0, 0, 299, 0, 589, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, - 0, 0, 0, 299, 0, 601, 285, 286, 287, 288, + 0, 0, 0, 299, 0, 591, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, - 0, 0, 0, 0, 299, 0, 605, 285, 286, 287, + 0, 0, 0, 0, 299, 0, 593, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, - 298, 0, 0, 0, 0, 299, 0, 607, 285, 286, + 298, 0, 0, 0, 0, 299, 0, 595, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 0, 0, 0, 0, 299, 0, 609, 285, + 297, 298, 0, 0, 0, 0, 299, 0, 597, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, - 296, 297, 298, 0, 0, 0, 0, 299, 0, 611, + 296, 297, 298, 0, 0, 0, 0, 299, 0, 599, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, 0, 299, 0, - 613, 285, 286, 287, 288, 289, 290, 291, 292, 293, + 601, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, 0, 299, - 0, 615, 285, 286, 287, 288, 289, 290, 291, 292, + 0, 605, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, 0, - 299, 0, 668, 285, 286, 287, 288, 289, 290, 291, + 299, 0, 607, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, - 0, 299, 0, 673, 285, 286, 287, 288, 289, 290, + 0, 299, 0, 609, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, - 0, 0, 299, 0, 681, 285, 286, 287, 288, 289, + 0, 0, 299, 0, 611, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, - 0, 0, 0, 299, 0, 684, 285, 286, 287, 288, + 0, 0, 0, 299, 0, 613, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, - 0, 0, 0, 0, 299, 0, 685, 285, 286, 287, + 0, 0, 0, 0, 299, 0, 615, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, - 298, 0, 0, 0, 0, 299, 0, 689, 285, 286, + 298, 0, 0, 0, 0, 299, 0, 668, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 0, 0, 0, 0, 299, 0, 714, 285, + 297, 298, 0, 0, 0, 0, 299, 0, 673, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, - 296, 297, 298, 0, 0, 0, 0, 299, 0, 855, + 296, 297, 298, 0, 0, 0, 0, 299, 0, 681, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, 0, 299, 0, - 857, 285, 286, 287, 288, 289, 290, 291, 292, 293, + 684, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, 0, 299, - 0, 859, 285, 286, 287, 288, 289, 290, 291, 292, + 0, 685, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, 0, - 299, 0, 861, 285, 286, 287, 288, 289, 290, 291, + 299, 0, 689, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, - 0, 299, 0, 865, 285, 286, 287, 288, 289, 290, + 0, 299, 0, 714, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, - 0, 0, 299, 0, 999, 285, 286, 287, 288, 289, + 0, 0, 299, 0, 855, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 0, - 0, 0, 0, 299, 0, 1014, 285, 286, 287, 288, + 0, 0, 0, 299, 0, 857, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, - 0, 0, 0, 0, 299, 0, 1024, 285, 286, 287, + 0, 0, 0, 0, 299, 0, 859, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, - 298, 0, 0, 0, 0, 299, 0, 1147, 285, 286, + 298, 0, 0, 0, 0, 299, 0, 861, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, - 297, 298, 0, 0, 0, 0, 299, 0, 1190, 285, + 297, 298, 0, 0, 0, 0, 299, 0, 865, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, - 296, 297, 298, 0, 0, 0, 0, 299 + 296, 297, 298, 0, 0, 0, 0, 299, 0, 998, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 295, 296, 297, 298, 0, 0, 0, 0, 299, 0, + 1013, 285, 286, 287, 288, 289, 290, 291, 292, 293, + 294, 295, 296, 297, 298, 0, 0, 0, 0, 299, + 0, 1023, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 295, 296, 297, 298, 0, 0, 0, 0, + 299, 0, 1144, 285, 286, 287, 288, 289, 290, 291, + 292, 293, 294, 295, 296, 297, 298, 0, 0, 0, + 0, 299, 0, 1187, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 295, 296, 297, 298, 0, 0, + 0, 0, 299 }; static const yytype_int16 yycheck[] = { - 58, 351, 352, 6, 1033, 6, 177, 4, 6, 3, - 49, 6, 4, 184, 4, 6, 0, 4, 5, 4, - 6, 274, 70, 4, 7, 4, 643, 49, 4, 4, - 5, 711, 4, 6, 4, 206, 70, 4, 209, 6, - 4, 71, 6, 4, 5, 13, 6, 77, 78, 36, - 37, 38, 39, 132, 6, 42, 6, 132, 7, 134, - 150, 36, 37, 38, 39, 6, 156, 42, 6, 6, - 7, 122, 123, 129, 130, 36, 37, 38, 39, 6, - 136, 42, 77, 56, 81, 82, 83, 84, 139, 179, - 180, 139, 132, 132, 134, 65, 66, 67, 68, 91, - 92, 91, 92, 73, 56, 139, 76, 122, 123, 7, - 140, 122, 123, 116, 117, 118, 6, 70, 121, 122, - 133, 1150, 132, 126, 139, 138, 132, 99, 139, 132, - 132, 125, 135, 119, 137, 138, 139, 140, 139, 142, - 143, 144, 145, 140, 147, 148, 149, 764, 139, 152, - 129, 130, 139, 136, 139, 134, 132, 136, 139, 119, - 129, 130, 141, 112, 139, 168, 169, 139, 129, 130, - 134, 53, 122, 123, 177, 136, 7, 132, 1207, 132, - 49, 122, 123, 49, 122, 123, 139, 132, 191, 192, - 193, 362, 195, 132, 71, 198, 199, 70, 201, 452, - 77, 78, 260, 261, 262, 263, 132, 707, 134, 212, - 381, 109, 110, 111, 112, 218, 219, 220, 221, 222, + 58, 1032, 6, 6, 351, 352, 707, 6, 177, 3, + 49, 7, 4, 6, 4, 184, 4, 4, 7, 4, + 5, 274, 6, 4, 49, 4, 643, 4, 4, 5, + 68, 4, 6, 0, 68, 68, 6, 206, 68, 4, + 209, 6, 131, 6, 6, 6, 6, 136, 120, 121, + 4, 36, 37, 38, 39, 6, 13, 42, 130, 130, + 36, 37, 38, 39, 6, 137, 42, 120, 121, 131, + 120, 121, 120, 121, 136, 130, 7, 143, 77, 131, + 7, 147, 137, 136, 136, 138, 56, 137, 136, 79, + 80, 81, 82, 4, 56, 6, 130, 89, 90, 137, + 130, 89, 90, 137, 137, 130, 711, 137, 6, 63, + 64, 65, 66, 116, 117, 118, 1147, 71, 121, 122, + 74, 110, 130, 126, 97, 826, 49, 120, 121, 132, + 130, 125, 135, 130, 137, 138, 139, 140, 134, 142, + 143, 144, 145, 130, 147, 148, 149, 764, 138, 152, + 127, 128, 137, 137, 117, 132, 137, 134, 137, 120, + 121, 137, 139, 137, 137, 168, 169, 132, 53, 120, + 121, 120, 121, 1204, 177, 117, 107, 108, 109, 110, + 107, 108, 109, 110, 122, 123, 124, 136, 191, 192, + 193, 129, 195, 362, 130, 198, 199, 130, 201, 452, + 127, 128, 260, 261, 262, 263, 272, 134, 46, 212, + 130, 49, 381, 51, 49, 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, - 253, 254, 255, 256, 257, 258, 259, 132, 875, 132, - 49, 264, 43, 140, 139, 46, 139, 71, 49, 272, - 51, 51, 7, 77, 78, 132, 274, 134, 109, 110, - 111, 112, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 296, 297, 298, 299, 132, 129, 130, - 43, 122, 123, 46, 71, 308, 49, 132, 49, 71, - 77, 78, 139, 316, 139, 77, 78, 138, 321, 140, - 8, 139, 325, 326, 6, 7, 826, 330, 143, 332, - 333, 334, 147, 336, 337, 338, 339, 340, 341, 342, - 31, 32, 71, 34, 339, 340, 341, 342, 77, 78, - 49, 354, 355, 356, 357, 358, 359, 351, 352, 449, - 450, 132, 365, 134, 4, 368, 369, 133, 7, 372, - 373, 374, 138, 140, 109, 110, 111, 112, 140, 122, - 123, 132, 46, 1063, 387, 1065, 133, 1067, 139, 132, - 393, 138, 71, 396, 129, 130, 139, 395, 77, 78, - 138, 136, 122, 123, 46, 143, 71, 4, 71, 147, - 71, 140, 77, 78, 77, 78, 77, 78, 138, 133, - 140, 132, 1039, 134, 138, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, 71, - 132, 71, 134, 131, 447, 77, 78, 77, 78, 71, - 4, 454, 140, 71, 452, 77, 78, 272, 453, 77, - 78, 140, 1142, 132, 340, 341, 342, 134, 122, 123, - 109, 110, 111, 112, 165, 140, 167, 140, 132, 140, - 483, 484, 173, 486, 487, 139, 177, 490, 491, 492, - 129, 130, 6, 46, 4, 5, 49, 1177, 51, 1179, - 4, 1181, 505, 756, 757, 508, 509, 1187, 140, 567, - 140, 326, 515, 5, 133, 132, 132, 134, 140, 138, - 122, 123, 140, 132, 527, 528, 36, 37, 38, 39, - 533, 1211, 42, 1213, 272, 1215, 138, 132, 140, 542, - 543, 4, 122, 123, 36, 37, 38, 39, 122, 123, - 42, 139, 134, 556, 136, 558, 559, 372, 138, 122, - 123, 132, 122, 123, 138, 132, 132, 625, 134, 567, - 308, 132, 49, 923, 51, 138, 666, 667, 138, 669, - 132, 671, 672, 122, 123, 675, 676, 325, 326, 122, - 123, 122, 123, 62, 63, 653, 122, 123, 7, 138, - 603, 604, 132, 1103, 134, 138, 1106, 138, 132, 1109, - 134, 132, 138, 134, 617, 618, 619, 620, 621, 622, - 132, 624, 122, 123, 122, 123, 629, 132, 4, 134, - 720, 721, 722, 636, 372, 122, 123, 132, 138, 134, - 138, 122, 123, 646, 647, 648, 649, 650, 6, 129, - 130, 138, 6, 6, 134, 658, 136, 138, 349, 350, - 132, 141, 122, 123, 124, 125, 126, 358, 483, 1169, - 132, 131, 134, 132, 8, 134, 679, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, 132, - 505, 134, 5, 131, 1194, 785, 132, 1197, 134, 132, - 1200, 791, 132, 1203, 134, 132, 124, 125, 126, 1059, - 800, 801, 802, 131, 139, 805, 806, 807, 808, 809, - 810, 811, 132, 1223, 134, 1225, 132, 1227, 134, 132, - 138, 821, 140, 132, 737, 738, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 483, 138, 132, 140, 131, - 139, 129, 130, 491, 492, 753, 134, 132, 136, 757, - 139, 139, 765, 141, 138, 132, 140, 505, 132, 138, - 508, 140, 132, 138, 777, 140, 866, 4, 781, 113, + 253, 254, 255, 256, 257, 258, 259, 69, 875, 49, + 326, 264, 51, 75, 76, 4, 5, 127, 128, 272, + 274, 130, 132, 130, 134, 132, 131, 137, 137, 139, + 7, 136, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 295, 296, 297, 298, 299, 36, 37, 38, + 39, 120, 121, 42, 69, 308, 372, 120, 121, 43, + 75, 76, 46, 316, 69, 49, 130, 136, 321, 8, + 75, 76, 325, 326, 137, 130, 138, 330, 137, 332, + 333, 334, 137, 336, 337, 338, 339, 340, 341, 342, + 339, 340, 341, 342, 131, 127, 128, 120, 121, 136, + 49, 354, 355, 356, 357, 358, 359, 351, 352, 137, + 120, 121, 365, 138, 137, 368, 369, 49, 143, 372, + 373, 374, 147, 138, 31, 32, 136, 34, 138, 46, + 107, 108, 109, 110, 387, 130, 120, 121, 127, 128, + 393, 395, 130, 396, 132, 134, 130, 46, 4, 1100, + 127, 128, 1103, 137, 69, 1106, 69, 130, 69, 132, + 75, 76, 75, 76, 75, 76, 4, 483, 340, 341, + 342, 1038, 111, 112, 113, 114, 115, 116, 117, 118, + 119, 120, 121, 122, 123, 124, 130, 4, 132, 505, + 129, 7, 120, 121, 447, 130, 69, 132, 452, 138, + 130, 454, 75, 76, 453, 1060, 130, 1062, 136, 1064, + 69, 130, 69, 127, 128, 1166, 75, 76, 75, 76, + 134, 6, 130, 138, 132, 138, 130, 138, 132, 69, + 483, 484, 132, 486, 487, 75, 76, 490, 491, 492, + 1191, 120, 121, 1194, 6, 7, 1197, 272, 130, 1200, + 132, 4, 505, 756, 757, 508, 509, 136, 165, 567, + 167, 130, 515, 132, 4, 138, 173, 6, 7, 1220, + 177, 1222, 137, 1224, 527, 528, 130, 130, 132, 138, + 533, 138, 130, 308, 1139, 130, 120, 121, 130, 542, + 543, 107, 108, 109, 110, 130, 7, 132, 138, 130, + 325, 326, 136, 556, 8, 558, 559, 130, 624, 132, + 4, 127, 128, 567, 5, 127, 128, 625, 69, 1174, + 132, 1176, 134, 1178, 75, 76, 923, 139, 6, 1184, + 646, 647, 648, 649, 69, 6, 6, 69, 120, 121, + 75, 76, 658, 75, 76, 653, 130, 372, 5, 130, + 603, 604, 69, 1208, 136, 1210, 138, 1212, 75, 76, + 130, 120, 121, 679, 617, 618, 619, 620, 621, 622, + 137, 624, 150, 120, 121, 130, 629, 136, 156, 36, + 37, 38, 39, 636, 130, 42, 132, 138, 130, 136, + 132, 132, 130, 646, 647, 648, 649, 650, 4, 5, + 137, 179, 180, 138, 137, 658, 138, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, 138, 132, 140, 799, 131, 138, 138, - 140, 140, 138, 138, 140, 140, 140, 139, 139, 624, - 813, 814, 815, 138, 138, 140, 140, 139, 821, 822, - 134, 138, 825, 140, 6, 883, 829, 138, 138, 140, - 140, 646, 647, 648, 649, 526, 839, 840, 841, 4, - 138, 6, 140, 658, 139, 138, 849, 140, 539, 847, - 940, 854, 138, 138, 140, 140, 138, 138, 140, 140, - 134, 138, 952, 140, 679, 868, 138, 138, 140, 140, - 134, 6, 867, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, 136, 888, 624, 138, 131, 140, - 139, 94, 895, 896, 6, 6, 6, 900, 134, 4, - 1071, 139, 6, 5, 136, 131, 909, 910, 646, 647, - 648, 649, 7, 134, 139, 139, 919, 140, 7, 7, - 658, 133, 7, 1013, 919, 6, 6, 91, 139, 923, - 4, 138, 133, 133, 937, 6, 138, 4, 135, 7, - 94, 679, 945, 7, 7, 7, 94, 950, 951, 94, - 945, 7, 7, 7, 12, 13, 7, 7, 133, 133, - 133, 133, 140, 140, 7, 656, 136, 970, 7, 7, - 136, 132, 1143, 132, 6, 6, 139, 6, 981, 135, - 1070, 61, 6, 6, 134, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 7, 54, 1000, 56, 57, - 6, 59, 60, 119, 49, 7, 7, 51, 7, 139, - 701, 702, 703, 1016, 829, 7, 7, 1020, 7, 1022, - 1110, 7, 1025, 7, 7, 7, 1029, 7, 86, 87, - 88, 1034, 7, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, 7, 4, 6, - 132, 131, 139, 139, 6, 49, 6, 8, 6, 1062, - 136, 1064, 6, 1066, 4, 1059, 12, 13, 4, 4, - 4, 132, 1075, 6, 6, 6, 133, 136, 7, 139, - 1083, 1084, 140, 6, 6, 6, 139, 1090, 6, 6, - 139, 829, 139, 139, 1097, 5, 1099, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 6, 54, 139, - 56, 57, 139, 59, 60, 6, 1119, 6, 90, 6, - 4, 7, 4, 6, 135, 6, 6, 1130, 6, 6, - 1133, 1189, 6, 1136, 825, 6, 6, 1140, 5, 94, - 86, 87, 88, 6, 6, 1148, 6, 6, 1151, 6, - 6, 6, 6, 6, 6, 6, 6, 138, 6, 1217, - 139, 1219, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, 7, 6, 136, 1237, - 131, 6, 133, 5, 7, 6, 47, 6, 6, 6, - 139, 6, 89, 140, 140, 6, 139, 139, 139, 890, - 139, 892, 6, 6, 92, 6, 6, 6, 6, 139, - 1025, 139, 6, 5, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 126, 140, 6, - 139, 61, 131, 924, 6, 926, 138, 928, 6, 6, - 3, 4, 6, 139, 6, 6, 9, 10, 11, 6, - 140, 14, 15, 16, 17, 18, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 5, 139, 139, 6, 6, 6, 6, 6, - 43, 139, 6, 5, 3, 776, 6, 1025, 6, 138, - 6, 12, 13, 139, 139, 139, 139, 139, 6, 140, - 6, 6, 65, 66, 67, 68, 69, 6, 6, 6, - 73, 6, 1119, 76, 3, 871, -1, -1, -1, -1, - -1, -1, 43, 44, 45, 46, 47, 48, 49, 50, - 51, 52, -1, 54, -1, 56, 57, -1, 59, 60, - -1, -1, 105, 106, 107, 108, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 122, - 123, -1, -1, -1, 127, 86, 87, 88, -1, 132, - -1, 1062, -1, 1064, 137, 1066, -1, 140, 3, 4, - 5, -1, 7, -1, 9, 10, 11, -1, -1, 14, - 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, - -1, 36, 37, 38, 39, -1, -1, 42, -1, 140, - -1, -1, -1, -1, -1, -1, 3, 4, -1, -1, - -1, -1, 9, 10, 11, -1, -1, 14, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 34, -1, -1, - -1, -1, -1, -1, -1, -1, 43, -1, -1, -1, - -1, -1, -1, -1, 99, -1, -1, -1, -1, -1, - 105, 106, 107, 108, 109, 110, 111, 112, 65, 66, - 67, 68, 69, -1, -1, -1, 73, 122, 123, 76, - -1, -1, 127, -1, 129, 130, -1, 132, -1, 134, - -1, 136, 137, -1, 139, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 105, 106, - 107, 108, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 122, 123, -1, -1, -1, - 127, -1, -1, -1, -1, 132, -1, 3, 4, -1, - 137, -1, 139, 9, 10, 11, -1, -1, 14, 15, + 124, 138, 120, 121, 130, 129, 679, 130, 120, 121, + 36, 37, 38, 39, 138, 130, 42, 132, 136, 120, + 121, 130, 349, 350, 136, 120, 121, 130, 130, 132, + 132, 358, 4, 130, 43, 136, 130, 46, 483, 1056, + 49, 136, 51, 130, 137, 132, 491, 492, 116, 117, + 118, 119, 120, 121, 122, 123, 124, 130, 137, 132, + 505, 129, 137, 508, 737, 738, 113, 114, 115, 116, + 117, 118, 119, 120, 121, 122, 123, 124, 130, 753, + 132, 130, 129, 757, 137, 12, 13, 120, 121, 122, + 123, 124, 765, 829, 132, 130, 129, 132, 132, 136, + 134, 138, 6, 132, 777, 136, 6, 138, 781, 136, + 92, 138, 136, 136, 138, 138, 43, 44, 45, 46, + 47, 48, 49, 50, 51, 52, 799, 54, 134, 56, + 57, 6, 59, 60, 136, 49, 138, 51, 137, 6, + 813, 814, 815, 136, 136, 138, 138, 6, 821, 822, + 4, 136, 825, 138, 132, 883, 829, 84, 85, 86, + 136, 136, 138, 138, 137, 6, 839, 840, 841, 136, + 136, 138, 138, 847, 5, 136, 849, 138, 136, 624, + 138, 854, 114, 115, 116, 117, 118, 119, 120, 121, + 122, 123, 124, 129, 136, 868, 138, 129, 867, 526, + 134, 646, 647, 648, 649, 136, 136, 138, 138, 7, + 138, 138, 539, 658, 136, 888, 138, 136, 136, 138, + 138, 132, 895, 896, 136, 7, 138, 900, 136, 1068, + 138, 136, 7, 138, 679, 136, 909, 138, 137, 137, + 131, 7, 6, 89, 137, 4, 919, 136, 131, 131, + 919, 449, 450, 6, 4, 136, 133, 92, 7, 923, + 7, 7, 7, 92, 937, 7, 7, 92, 7, 7, + 7, 131, 945, 131, 131, 131, 945, 950, 951, 134, + 12, 13, 7, 7, 7, 138, 138, 134, 1024, 137, + 130, 130, 6, 6, 6, 133, 6, 970, 6, 132, + 7, 1140, 6, 117, 7, 49, 7, 7, 981, 137, + 7, 43, 44, 45, 46, 47, 48, 49, 50, 51, + 52, 51, 54, 7, 56, 57, 999, 59, 60, 656, + 7, 7, 7, 7, 7, 7, 7, 7, 4, 6, + 137, 130, 1015, 137, 6, 6, 1019, 49, 1021, 6, + 6, 1024, 84, 85, 86, 1028, 4, 4, 4, 4, + 1033, 134, 6, 6, 131, 130, 137, 7, 6, 137, + 6, 134, 6, 6, 701, 702, 703, 137, 6, 137, + 137, 6, 5, 4, 829, 137, 1059, 7, 1061, 6, + 1063, 6, 1056, 12, 13, 6, 88, 137, 6, 1072, + 4, 6, 4, 6, 133, 6, 138, 1080, 1081, 6, + 6, 6, 6, 6, 1087, 5, 136, 6, 6, 4, + 6, 1094, 6, 1096, 43, 44, 45, 46, 47, 48, + 49, 50, 51, 52, 92, 54, 6, 56, 57, 6, + 59, 60, 6, 1116, 6, 6, 6, 6, 6, 137, + 6, 6, 134, 7, 1127, 6, 6, 1130, 1186, 5, + 1133, 6, 6, 6, 1137, 84, 85, 86, 666, 667, + 47, 669, 1145, 671, 672, 1148, 6, 675, 676, 138, + 7, 6, 137, 137, 137, 137, 1214, 137, 1216, 87, + 6, 6, 6, 6, 12, 13, 6, 6, 825, 90, + 6, 6, 137, 5, 61, 137, 1234, 138, 6, 6, + 137, 6, 136, 6, 6, 6, 6, 6, 5, 138, + 138, 137, 720, 721, 722, 43, 44, 45, 46, 47, + 48, 49, 50, 51, 52, 6, 54, 137, 56, 57, + 6, 59, 60, 6, 111, 112, 113, 114, 115, 116, + 117, 118, 119, 120, 121, 122, 123, 124, 137, 137, + 136, 6, 129, 890, 6, 892, 84, 85, 86, 137, + 6, 5, 137, 6, 137, 6, 6, 6, 6, 1024, + 6, 6, 6, 6, 137, 137, 6, 785, 776, 138, + 1116, 3, 3, 791, -1, -1, 871, 924, -1, 926, + -1, 928, 800, 801, 802, -1, -1, 805, 806, 807, + 808, 809, 810, 811, -1, -1, -1, -1, -1, -1, + 138, 3, 4, 821, -1, -1, -1, 9, 10, 11, + -1, -1, 14, 15, 16, 17, 18, 19, 20, 21, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, 34, -1, -1, -1, -1, -1, -1, -1, + -1, 43, -1, -1, -1, -1, -1, -1, 866, -1, + -1, -1, 12, 13, -1, -1, -1, -1, -1, -1, + -1, 63, 64, 65, 66, 67, -1, -1, -1, 71, + -1, -1, 74, -1, -1, -1, 8, -1, -1, -1, + -1, -1, -1, 43, 44, 45, 46, 47, 48, 49, + 50, 51, 52, -1, 54, 6, 56, 57, -1, 59, + 60, 103, 104, 105, 106, -1, -1, -1, -1, -1, + -1, -1, 1059, -1, 1061, -1, 1063, -1, 120, 121, + -1, -1, 940, 125, 84, 85, 86, -1, 130, -1, + -1, -1, -1, 135, 952, -1, 138, 3, 4, 5, + -1, 7, -1, 9, 10, 11, -1, -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, -1, - -1, -1, -1, -1, -1, -1, -1, 43, -1, -1, - -1, -1, -1, -1, 12, 13, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 65, - 66, 67, 68, 69, -1, -1, -1, 73, -1, -1, - 76, -1, -1, -1, -1, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, -1, 54, -1, 56, 57, - -1, 59, 60, -1, -1, 6, -1, -1, -1, 105, - 106, 107, 108, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 122, 123, 86, 87, - 88, 127, -1, -1, -1, -1, 132, -1, 3, 4, - -1, 137, -1, 139, 9, 10, 11, -1, -1, 14, - 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, - -1, -1, -1, -1, -1, -1, -1, -1, 43, -1, - -1, -1, 140, -1, -1, -1, -1, -1, -1, -1, + 36, 37, 38, 39, -1, -1, 42, -1, 138, 111, + 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, + 122, 123, 124, -1, 1012, -1, -1, 129, -1, 131, + 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, + 121, 122, 123, 124, -1, -1, -1, -1, 129, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 65, 66, 67, 68, 69, -1, -1, -1, 73, -1, - -1, 76, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, -1, -1, -1, -1, - 131, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 105, 106, 107, 108, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 122, 123, -1, - -1, -1, 127, -1, -1, -1, -1, 132, -1, 3, - 4, 5, 137, -1, 139, 9, 10, 11, -1, -1, + -1, 97, -1, -1, -1, -1, -1, 103, 104, 105, + 106, 107, 108, 109, 110, -1, -1, -1, -1, 1067, + -1, -1, -1, -1, 120, 121, -1, -1, -1, 125, + -1, 127, 128, -1, 130, -1, 132, -1, 134, 135, + -1, 137, -1, -1, -1, -1, -1, -1, -1, 3, + 4, -1, -1, -1, -1, 9, 10, 11, -1, 1107, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, - 34, -1, 36, 37, 38, 39, 3, 4, 42, 12, - 13, -1, 9, 10, 11, -1, -1, 14, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 34, -1, -1, + 34, -1, -1, -1, -1, -1, -1, -1, -1, 43, + 12, 13, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 63, + 64, 65, 66, 67, -1, -1, -1, 71, -1, -1, + 74, 43, 44, 45, 46, 47, 48, 49, 50, 51, + 52, -1, 54, -1, 56, 57, -1, 59, 60, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 103, + 104, 105, 106, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 84, 85, 86, -1, 120, 121, -1, -1, + -1, 125, -1, -1, -1, -1, 130, -1, 3, 4, + -1, 135, -1, 137, 9, 10, 11, -1, -1, 14, + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, + -1, -1, -1, -1, -1, -1, 138, -1, 43, 12, + 13, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 63, 64, + 65, 66, 67, 6, -1, -1, 71, -1, -1, 74, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, -1, 54, -1, 56, 57, -1, 59, 60, -1, -1, + -1, -1, -1, -1, 6, -1, -1, -1, 103, 104, + 105, 106, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 84, 85, 86, -1, 120, 121, -1, -1, -1, + 125, -1, -1, -1, -1, 130, -1, 3, 4, -1, + 135, -1, 137, 9, 10, 11, -1, -1, 14, 15, + 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, + 26, 27, 28, 29, 30, 31, 32, 33, 34, -1, + -1, -1, -1, -1, -1, 138, -1, 43, 111, 112, + 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, + 123, 124, -1, -1, -1, -1, 129, 63, 64, 65, + 66, 67, -1, -1, -1, 71, -1, -1, 74, 111, + 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, + 122, 123, 124, -1, -1, -1, -1, 129, -1, -1, + 6, -1, -1, -1, -1, -1, -1, 103, 104, 105, + 106, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 120, 121, -1, -1, -1, 125, + -1, -1, -1, -1, 130, -1, 3, 4, 5, 135, + -1, 137, 9, 10, 11, -1, -1, 14, 15, 16, + 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, + 27, 28, 29, 30, 31, 32, 33, 34, -1, 36, + 37, 38, 39, 3, 4, 42, -1, -1, -1, 9, + 10, 11, -1, -1, 14, 15, 16, 17, 18, 19, + 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, + 30, 31, 32, 33, 34, 111, 112, 113, 114, 115, + 116, 117, 118, 119, 120, 121, 122, 123, 124, -1, + -1, -1, -1, 129, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 103, 104, 105, 106, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 105, 106, 107, 108, -1, -1, -1, -1, -1, - -1, -1, -1, 86, 87, 88, -1, -1, 122, 123, - -1, -1, -1, 127, -1, -1, -1, -1, 132, -1, - -1, -1, -1, 137, -1, 139, -1, -1, 105, 106, - 107, 108, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 6, 122, 123, -1, -1, -1, - 127, -1, -1, -1, -1, 132, -1, 140, 135, -1, - 137, -1, 139, 3, 4, -1, -1, -1, -1, 9, + -1, -1, -1, 120, 121, -1, -1, -1, 125, -1, + -1, -1, -1, 130, -1, -1, -1, -1, 135, -1, + 137, 6, -1, 103, 104, 105, 106, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 120, 121, -1, -1, -1, 125, -1, -1, -1, -1, + 130, -1, -1, 133, -1, 135, -1, 137, 3, 4, + -1, -1, -1, -1, 9, 10, 11, -1, -1, 14, + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, + -1, -1, -1, 3, 4, -1, -1, -1, -1, 9, 10, 11, -1, -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, 32, 33, 34, -1, -1, -1, 3, 4, - 12, 13, -1, -1, 9, 10, 11, -1, -1, 14, + 30, 31, 32, 33, 34, -1, 111, 112, 113, 114, + 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, + -1, -1, -1, -1, 129, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 103, 104, + 105, 106, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 120, 121, -1, -1, -1, + 125, -1, -1, -1, -1, 130, -1, -1, 133, -1, + 135, -1, 137, 103, 104, 105, 106, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 120, 121, -1, 61, -1, 125, -1, -1, -1, -1, + 130, -1, 3, 4, -1, 135, -1, 137, 9, 10, + 11, -1, -1, 14, 15, 16, 17, 18, 19, 20, + 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, + 31, 32, 33, 34, -1, -1, -1, -1, -1, -1, + -1, -1, 43, 111, 112, 113, 114, 115, 116, 117, + 118, 119, 120, 121, 122, 123, 124, -1, -1, -1, + -1, 129, 63, 64, 65, 66, 67, -1, 3, 4, + 71, -1, -1, 74, 9, 10, 11, -1, -1, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, - -1, 43, 44, 45, 46, 47, 48, 49, 50, 51, - 52, -1, 54, -1, 56, 57, -1, 59, 60, -1, - -1, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 105, 106, 107, 108, 131, - -1, -1, -1, -1, 86, 87, 88, -1, -1, -1, - -1, -1, 122, 123, -1, -1, -1, 127, -1, -1, - -1, -1, 132, -1, -1, 135, -1, 137, -1, 139, - 105, 106, 107, 108, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 122, 123, -1, - -1, -1, 127, -1, -1, -1, -1, 132, 140, 3, - 4, -1, 137, -1, 139, 9, 10, 11, -1, -1, - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, - 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, - 34, -1, -1, -1, -1, -1, -1, -1, -1, 43, - -1, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, -1, -1, -1, -1, 131, - -1, 65, 66, 67, 68, 69, 138, 3, 4, 73, - -1, -1, 76, 9, 10, 11, -1, -1, 14, 15, - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, - 26, 27, 28, 29, 30, 31, 32, 33, 34, -1, - -1, 105, 106, 107, 108, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 122, 123, - -1, -1, -1, 127, 3, 4, 5, -1, 132, -1, - 9, 10, 11, 137, -1, 14, 15, 16, 17, 18, - 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 6, 36, 37, 38, - 39, -1, -1, 42, -1, -1, -1, -1, -1, 105, - 106, 107, 108, -1, -1, 12, 13, 6, -1, -1, - -1, -1, -1, -1, -1, -1, 122, 123, -1, -1, - -1, 127, -1, -1, -1, -1, 132, 6, -1, -1, - -1, 137, -1, -1, -1, -1, 43, 44, 45, 46, - 47, 48, 49, 50, 51, 52, 6, 54, -1, 56, - 57, -1, 59, 60, -1, -1, 105, 106, 107, 108, - -1, -1, -1, -1, -1, 6, -1, -1, -1, -1, - -1, -1, -1, 122, 123, -1, -1, -1, 127, 86, - 87, 88, -1, 132, 6, -1, -1, -1, 137, -1, - -1, -1, -1, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, 6, -1, -1, - -1, 131, -1, -1, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 126, 6, -1, - -1, -1, 131, 140, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 126, 6, -1, - -1, -1, 131, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, 6, -1, -1, - -1, 131, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, 6, -1, -1, -1, - 131, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 6, -1, -1, -1, 131, - -1, -1, -1, -1, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 126, 6, -1, - -1, -1, 131, -1, -1, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, 8, - -1, -1, -1, 131, -1, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, 8, - -1, -1, -1, 131, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 126, 8, -1, - -1, -1, 131, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, 8, -1, -1, - -1, 131, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, 8, -1, -1, -1, - 131, -1, -1, -1, -1, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, 8, - -1, -1, -1, 131, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 126, -1, -1, - -1, -1, 131, -1, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 126, -1, -1, - -1, -1, 131, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, -1, -1, -1, - -1, 131, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, -1, -1, -1, -1, - 131, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, -1, -1, -1, -1, 131, - -1, -1, -1, -1, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 126, -1, 0, - 1, -1, 131, 4, -1, -1, -1, -1, -1, -1, - -1, 12, 13, -1, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 126, -1, -1, - -1, -1, 131, -1, 35, -1, -1, -1, -1, 40, - 41, 140, 43, 44, 45, 46, 47, 48, 49, 50, + 6, -1, 103, 104, 105, 106, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 120, + 121, -1, -1, -1, 125, 3, 4, 5, -1, 130, + -1, 9, 10, 11, 135, -1, 14, 15, 16, 17, + 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, + 28, 29, 30, 31, 32, 33, 34, 6, 36, 37, + 38, 39, -1, -1, 42, -1, -1, -1, 103, 104, + 105, 106, -1, -1, -1, -1, 6, -1, -1, -1, + -1, -1, -1, -1, -1, 120, 121, -1, -1, -1, + 125, -1, -1, -1, -1, 130, 6, -1, -1, -1, + 135, -1, -1, -1, -1, 111, 112, 113, 114, 115, + 116, 117, 118, 119, 120, 121, 122, 123, 124, 6, + -1, -1, -1, 129, -1, 103, 104, 105, 106, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 6, -1, + -1, -1, 120, 121, -1, -1, -1, 125, -1, -1, + -1, -1, 130, -1, -1, -1, -1, 135, 6, -1, + -1, -1, 111, 112, 113, 114, 115, 116, 117, 118, + 119, 120, 121, 122, 123, 124, -1, 6, -1, -1, + 129, 111, 112, 113, 114, 115, 116, 117, 118, 119, + 120, 121, 122, 123, 124, -1, -1, -1, 8, 129, + -1, 111, 112, 113, 114, 115, 116, 117, 118, 119, + 120, 121, 122, 123, 124, -1, -1, 8, -1, 129, + -1, -1, -1, -1, 111, 112, 113, 114, 115, 116, + 117, 118, 119, 120, 121, 122, 123, 124, 8, -1, + -1, -1, 129, 111, 112, 113, 114, 115, 116, 117, + 118, 119, 120, 121, 122, 123, 124, 8, -1, -1, + -1, 129, -1, 111, 112, 113, 114, 115, 116, 117, + 118, 119, 120, 121, 122, 123, 124, 8, -1, -1, + -1, 129, 111, 112, 113, 114, 115, 116, 117, 118, + 119, 120, 121, 122, 123, 124, 8, -1, -1, -1, + 129, 111, 112, 113, 114, 115, 116, 117, 118, 119, + 120, 121, 122, 123, 124, -1, -1, -1, -1, 129, + 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, + 121, 122, 123, 124, -1, -1, -1, -1, 129, -1, + -1, 111, 112, 113, 114, 115, 116, 117, 118, 119, + 120, 121, 122, 123, 124, -1, -1, -1, -1, 129, + 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, + 121, 122, 123, 124, -1, -1, -1, -1, 129, -1, + 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, + 121, 122, 123, 124, -1, -1, -1, -1, 129, 111, + 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, + 122, 123, 124, -1, 0, 1, -1, 129, 4, -1, + -1, -1, -1, -1, -1, -1, 12, 13, -1, 111, + 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, + 122, 123, 124, -1, -1, -1, -1, 129, -1, 35, + -1, -1, -1, -1, 40, 41, 138, 43, 44, 45, + 46, 47, 48, 49, 50, 51, 52, -1, 54, 55, + 56, 57, 58, 59, 60, -1, 62, 63, 64, 65, + 66, 67, -1, 69, 70, 71, 72, 73, 74, -1, + -1, 77, 78, 4, -1, -1, -1, 83, 84, 85, + 86, 12, 13, 89, -1, 91, -1, 93, 94, 95, + 96, 97, 98, 99, 100, 101, 102, -1, -1, -1, + -1, -1, -1, -1, 35, -1, -1, -1, -1, 40, + 41, -1, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, -1, 54, 55, 56, 57, 58, 59, 60, - -1, -1, -1, 64, 65, 66, 67, 68, 69, -1, - 71, 72, 73, 74, 75, 76, -1, -1, 79, 80, - 4, -1, -1, -1, 85, 86, 87, 88, 12, 13, - 91, -1, 93, -1, 95, 96, 97, 98, 99, 100, - 101, 102, 103, 104, -1, -1, -1, -1, -1, -1, - -1, 35, -1, -1, -1, -1, 40, 41, -1, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, -1, - 54, 55, 56, 57, 58, 59, 60, -1, -1, -1, - 64, 65, 66, 67, 68, 69, -1, 71, 72, 73, - 74, 75, 76, 12, 13, 79, 80, -1, -1, -1, - -1, 85, 86, 87, 88, -1, -1, 91, -1, 93, - -1, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 104, -1, -1, -1, 43, 44, 45, 46, 47, 48, - 49, 50, 51, 52, -1, 54, -1, 56, 57, -1, - 59, 60, -1, -1, -1, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, -1, - -1, -1, -1, 131, -1, -1, -1, 86, 87, 88, - 138, -1, 140, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, -1, -1, -1, - -1, 131, -1, -1, -1, -1, -1, -1, 138, -1, - 140, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, -1, -1, -1, -1, 131, - -1, -1, -1, -1, -1, -1, 138, -1, 140, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, -1, -1, -1, -1, 131, -1, -1, - -1, -1, -1, -1, -1, -1, 140, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, -1, -1, -1, -1, 131, -1, -1, -1, -1, - -1, -1, -1, -1, 140, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, -1, - -1, -1, -1, 131, -1, -1, -1, -1, -1, -1, - -1, -1, 140, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, -1, -1, -1, - -1, 131, -1, -1, -1, -1, -1, -1, -1, -1, - 140, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, -1, -1, -1, -1, 131, - -1, -1, -1, -1, -1, -1, -1, -1, 140, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, -1, -1, -1, -1, 131, -1, -1, - -1, -1, -1, -1, -1, -1, 140, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, -1, -1, -1, -1, 131, -1, -1, -1, -1, - -1, -1, -1, -1, 140, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, -1, - -1, -1, -1, 131, -1, -1, -1, -1, -1, -1, - -1, -1, 140, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, -1, -1, -1, - -1, 131, -1, -1, -1, -1, -1, -1, -1, -1, - 140, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, -1, -1, -1, -1, 131, - -1, -1, -1, -1, -1, -1, -1, -1, 140, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, -1, -1, -1, -1, 131, -1, -1, - -1, -1, -1, -1, -1, -1, 140, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, -1, -1, -1, -1, 131, -1, -1, -1, -1, - -1, -1, -1, -1, 140, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, -1, - -1, -1, -1, 131, -1, -1, -1, -1, -1, -1, - -1, -1, 140, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, -1, -1, -1, - -1, 131, -1, -1, -1, -1, -1, -1, -1, -1, - 140, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, -1, -1, -1, -1, 131, - -1, -1, -1, -1, -1, -1, -1, -1, 140, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, -1, -1, -1, -1, 131, -1, -1, - -1, -1, -1, -1, -1, -1, 140, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, -1, -1, -1, -1, 131, -1, -1, -1, -1, - -1, -1, -1, -1, 140, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, -1, - -1, -1, -1, 131, -1, -1, -1, -1, -1, -1, - -1, -1, 140, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, -1, -1, -1, - -1, 131, -1, -1, -1, -1, -1, -1, -1, -1, - 140, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, -1, -1, -1, -1, 131, - -1, -1, -1, -1, -1, -1, -1, -1, 140, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, -1, -1, -1, -1, 131, -1, -1, - -1, -1, -1, -1, -1, -1, 140, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, -1, -1, -1, -1, 131, -1, -1, -1, -1, - -1, -1, -1, -1, 140, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, -1, - -1, -1, -1, 131, -1, -1, -1, -1, -1, -1, - -1, -1, 140, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, -1, -1, -1, - -1, 131, -1, -1, -1, -1, -1, -1, -1, -1, - 140, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, -1, -1, -1, -1, 131, - -1, 133, -1, -1, -1, -1, 138, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, -1, -1, -1, -1, 131, -1, -1, -1, -1, - -1, -1, 138, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, -1, -1, -1, - -1, 131, -1, -1, -1, -1, -1, -1, 138, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, -1, -1, -1, -1, 131, -1, -1, - -1, -1, -1, -1, 138, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, -1, - -1, -1, -1, 131, -1, -1, -1, -1, -1, -1, - 138, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, -1, -1, -1, -1, 131, - -1, -1, -1, -1, -1, -1, 138, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, -1, -1, -1, -1, 131, -1, -1, -1, -1, - -1, -1, 138, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, -1, -1, -1, - -1, 131, -1, -1, -1, -1, -1, -1, 138, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, -1, -1, -1, -1, 131, -1, -1, - -1, -1, -1, -1, 138, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, -1, - -1, -1, -1, 131, -1, -1, -1, -1, -1, -1, - 138, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, -1, -1, -1, -1, 131, - -1, -1, -1, -1, -1, -1, 138, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, -1, -1, -1, -1, 131, -1, -1, -1, -1, - -1, -1, 138, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, -1, -1, -1, - -1, 131, -1, -1, -1, -1, -1, -1, 138, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, -1, -1, -1, -1, 131, -1, -1, - -1, -1, -1, -1, 138, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, -1, - -1, -1, -1, 131, -1, -1, -1, -1, -1, -1, - 138, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, -1, -1, -1, -1, 131, - -1, -1, -1, -1, -1, -1, 138, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, -1, -1, -1, -1, 131, -1, -1, -1, -1, - -1, -1, 138, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, -1, -1, -1, - -1, 131, -1, -1, -1, -1, -1, -1, 138, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, -1, -1, -1, -1, 131, -1, -1, - -1, -1, -1, -1, 138, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, -1, - -1, -1, -1, 131, -1, -1, -1, -1, -1, -1, - 138, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, -1, -1, -1, -1, 131, - -1, -1, -1, -1, -1, -1, 138, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, -1, -1, -1, -1, 131, -1, -1, -1, -1, - -1, -1, 138, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, -1, -1, -1, - -1, 131, -1, -1, -1, -1, -1, -1, 138, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, -1, -1, -1, -1, 131, -1, -1, - -1, -1, -1, -1, 138, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, -1, - -1, -1, -1, 131, -1, -1, -1, -1, -1, -1, - 138, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, -1, -1, -1, -1, 131, - -1, -1, -1, -1, -1, -1, 138, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, -1, -1, -1, -1, 131, -1, -1, -1, -1, - -1, -1, 138, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, -1, -1, -1, - -1, 131, -1, -1, -1, -1, -1, -1, 138, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, -1, -1, -1, -1, 131, -1, -1, - -1, -1, -1, -1, 138, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, -1, - -1, -1, -1, 131, -1, -1, -1, 135, 113, 114, + -1, 62, 63, 64, 65, 66, 67, -1, 69, 70, + 71, 72, 73, 74, 12, 13, 77, 78, -1, -1, + -1, -1, 83, 84, 85, 86, -1, -1, 89, -1, + 91, -1, 93, 94, 95, 96, 97, 98, 99, 100, + 101, 102, -1, -1, -1, 43, 44, 45, 46, 47, + 48, 49, 50, 51, 52, -1, 54, -1, 56, 57, + -1, 59, 60, -1, 111, 112, 113, 114, 115, 116, + 117, 118, 119, 120, 121, 122, 123, 124, -1, -1, + -1, -1, 129, -1, -1, -1, 84, 85, 86, 136, + -1, 138, 111, 112, 113, 114, 115, 116, 117, 118, + 119, 120, 121, 122, 123, 124, -1, -1, -1, -1, + 129, -1, -1, -1, -1, -1, -1, 136, -1, 138, + 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, + 121, 122, 123, 124, -1, -1, -1, -1, 129, -1, + -1, -1, -1, -1, -1, 136, -1, 138, 111, 112, + 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, + 123, 124, -1, -1, -1, -1, 129, -1, -1, -1, + -1, -1, -1, -1, -1, 138, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, -1, -1, -1, -1, 131, -1, -1, -1, - 135, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, -1, -1, -1, -1, 131, - -1, -1, -1, 135, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 126, -1, -1, - -1, -1, 131, -1, -1, -1, 135, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, -1, -1, -1, -1, 131, -1, -1, -1, 135, + -1, -1, -1, -1, 129, -1, -1, -1, -1, -1, + -1, -1, -1, 138, 111, 112, 113, 114, 115, 116, + 117, 118, 119, 120, 121, 122, 123, 124, -1, -1, + -1, -1, 129, -1, -1, -1, -1, -1, -1, -1, + -1, 138, 111, 112, 113, 114, 115, 116, 117, 118, + 119, 120, 121, 122, 123, 124, -1, -1, -1, -1, + 129, -1, -1, -1, -1, -1, -1, -1, -1, 138, + 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, + 121, 122, 123, 124, -1, -1, -1, -1, 129, -1, + -1, -1, -1, -1, -1, -1, -1, 138, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, -1, -1, -1, -1, 131, -1, - -1, -1, 135, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, -1, -1, -1, - -1, 131, -1, -1, -1, 135, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - -1, -1, -1, -1, 131, -1, -1, -1, 135, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, -1, -1, -1, -1, 131, -1, -1, - -1, 135, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, -1, -1, -1, -1, - 131, -1, -1, -1, 135, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, -1, - -1, -1, -1, 131, -1, -1, -1, 135, 113, 114, + 123, 124, -1, -1, -1, -1, 129, -1, -1, -1, + -1, -1, -1, -1, -1, 138, 111, 112, 113, 114, + 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, + -1, -1, -1, -1, 129, -1, -1, -1, -1, -1, + -1, -1, -1, 138, 111, 112, 113, 114, 115, 116, + 117, 118, 119, 120, 121, 122, 123, 124, -1, -1, + -1, -1, 129, -1, -1, -1, -1, -1, -1, -1, + -1, 138, 111, 112, 113, 114, 115, 116, 117, 118, + 119, 120, 121, 122, 123, 124, -1, -1, -1, -1, + 129, -1, -1, -1, -1, -1, -1, -1, -1, 138, + 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, + 121, 122, 123, 124, -1, -1, -1, -1, 129, -1, + -1, -1, -1, -1, -1, -1, -1, 138, 111, 112, + 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, + 123, 124, -1, -1, -1, -1, 129, -1, -1, -1, + -1, -1, -1, -1, -1, 138, 111, 112, 113, 114, + 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, + -1, -1, -1, -1, 129, -1, -1, -1, -1, -1, + -1, -1, -1, 138, 111, 112, 113, 114, 115, 116, + 117, 118, 119, 120, 121, 122, 123, 124, -1, -1, + -1, -1, 129, -1, -1, -1, -1, -1, -1, -1, + -1, 138, 111, 112, 113, 114, 115, 116, 117, 118, + 119, 120, 121, 122, 123, 124, -1, -1, -1, -1, + 129, -1, -1, -1, -1, -1, -1, -1, -1, 138, + 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, + 121, 122, 123, 124, -1, -1, -1, -1, 129, -1, + -1, -1, -1, -1, -1, -1, -1, 138, 111, 112, + 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, + 123, 124, -1, -1, -1, -1, 129, -1, -1, -1, + -1, -1, -1, -1, -1, 138, 111, 112, 113, 114, + 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, + -1, -1, -1, -1, 129, -1, -1, -1, -1, -1, + -1, -1, -1, 138, 111, 112, 113, 114, 115, 116, + 117, 118, 119, 120, 121, 122, 123, 124, -1, -1, + -1, -1, 129, -1, -1, -1, -1, -1, -1, -1, + -1, 138, 111, 112, 113, 114, 115, 116, 117, 118, + 119, 120, 121, 122, 123, 124, -1, -1, -1, -1, + 129, -1, -1, -1, -1, -1, -1, -1, -1, 138, + 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, + 121, 122, 123, 124, -1, -1, -1, -1, 129, -1, + -1, -1, -1, -1, -1, -1, -1, 138, 111, 112, + 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, + 123, 124, -1, -1, -1, -1, 129, -1, -1, -1, + -1, -1, -1, -1, -1, 138, 111, 112, 113, 114, + 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, + -1, -1, -1, -1, 129, -1, -1, -1, -1, -1, + -1, -1, -1, 138, 111, 112, 113, 114, 115, 116, + 117, 118, 119, 120, 121, 122, 123, 124, -1, -1, + -1, -1, 129, -1, -1, -1, -1, -1, -1, -1, + -1, 138, 111, 112, 113, 114, 115, 116, 117, 118, + 119, 120, 121, 122, 123, 124, -1, -1, -1, -1, + 129, -1, -1, -1, -1, -1, -1, -1, -1, 138, + 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, + 121, 122, 123, 124, -1, -1, -1, -1, 129, -1, + 131, -1, -1, -1, -1, 136, 111, 112, 113, 114, + 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, + -1, -1, -1, -1, 129, -1, -1, -1, -1, -1, + -1, 136, 111, 112, 113, 114, 115, 116, 117, 118, + 119, 120, 121, 122, 123, 124, -1, -1, -1, -1, + 129, -1, -1, -1, -1, -1, -1, 136, 111, 112, + 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, + 123, 124, -1, -1, -1, -1, 129, -1, -1, -1, + -1, -1, -1, 136, 111, 112, 113, 114, 115, 116, + 117, 118, 119, 120, 121, 122, 123, 124, -1, -1, + -1, -1, 129, -1, -1, -1, -1, -1, -1, 136, + 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, + 121, 122, 123, 124, -1, -1, -1, -1, 129, -1, + -1, -1, -1, -1, -1, 136, 111, 112, 113, 114, + 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, + -1, -1, -1, -1, 129, -1, -1, -1, -1, -1, + -1, 136, 111, 112, 113, 114, 115, 116, 117, 118, + 119, 120, 121, 122, 123, 124, -1, -1, -1, -1, + 129, -1, -1, -1, -1, -1, -1, 136, 111, 112, + 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, + 123, 124, -1, -1, -1, -1, 129, -1, -1, -1, + -1, -1, -1, 136, 111, 112, 113, 114, 115, 116, + 117, 118, 119, 120, 121, 122, 123, 124, -1, -1, + -1, -1, 129, -1, -1, -1, -1, -1, -1, 136, + 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, + 121, 122, 123, 124, -1, -1, -1, -1, 129, -1, + -1, -1, -1, -1, -1, 136, 111, 112, 113, 114, + 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, + -1, -1, -1, -1, 129, -1, -1, -1, -1, -1, + -1, 136, 111, 112, 113, 114, 115, 116, 117, 118, + 119, 120, 121, 122, 123, 124, -1, -1, -1, -1, + 129, -1, -1, -1, -1, -1, -1, 136, 111, 112, + 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, + 123, 124, -1, -1, -1, -1, 129, -1, -1, -1, + -1, -1, -1, 136, 111, 112, 113, 114, 115, 116, + 117, 118, 119, 120, 121, 122, 123, 124, -1, -1, + -1, -1, 129, -1, -1, -1, -1, -1, -1, 136, + 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, + 121, 122, 123, 124, -1, -1, -1, -1, 129, -1, + -1, -1, -1, -1, -1, 136, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, -1, -1, -1, -1, 131, -1, -1, -1, - 135, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, -1, -1, -1, -1, 131, - -1, -1, -1, 135, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 126, -1, -1, - -1, -1, 131, -1, -1, -1, 135, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, -1, -1, -1, -1, 131, -1, -1, -1, 135, + -1, -1, -1, -1, 129, -1, -1, -1, -1, -1, + -1, 136, 111, 112, 113, 114, 115, 116, 117, 118, + 119, 120, 121, 122, 123, 124, -1, -1, -1, -1, + 129, -1, -1, -1, -1, -1, -1, 136, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, -1, -1, -1, -1, 131, -1, - -1, -1, 135, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, -1, -1, -1, - -1, 131, -1, -1, -1, 135, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - -1, -1, -1, -1, 131, -1, -1, -1, 135, 113, + 123, 124, -1, -1, -1, -1, 129, -1, -1, -1, + -1, -1, -1, 136, 111, 112, 113, 114, 115, 116, + 117, 118, 119, 120, 121, 122, 123, 124, -1, -1, + -1, -1, 129, -1, -1, -1, -1, -1, -1, 136, + 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, + 121, 122, 123, 124, -1, -1, -1, -1, 129, -1, + -1, -1, -1, -1, -1, 136, 111, 112, 113, 114, + 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, + -1, -1, -1, -1, 129, -1, -1, -1, -1, -1, + -1, 136, 111, 112, 113, 114, 115, 116, 117, 118, + 119, 120, 121, 122, 123, 124, -1, -1, -1, -1, + 129, -1, -1, -1, -1, -1, -1, 136, 111, 112, + 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, + 123, 124, -1, -1, -1, -1, 129, -1, -1, -1, + -1, -1, -1, 136, 111, 112, 113, 114, 115, 116, + 117, 118, 119, 120, 121, 122, 123, 124, -1, -1, + -1, -1, 129, -1, -1, -1, -1, -1, -1, 136, + 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, + 121, 122, 123, 124, -1, -1, -1, -1, 129, -1, + -1, -1, -1, -1, -1, 136, 111, 112, 113, 114, + 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, + -1, -1, -1, -1, 129, -1, -1, -1, -1, -1, + -1, 136, 111, 112, 113, 114, 115, 116, 117, 118, + 119, 120, 121, 122, 123, 124, -1, -1, -1, -1, + 129, -1, -1, -1, -1, -1, -1, 136, 111, 112, + 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, + 123, 124, -1, -1, -1, -1, 129, -1, -1, -1, + -1, -1, -1, 136, 111, 112, 113, 114, 115, 116, + 117, 118, 119, 120, 121, 122, 123, 124, -1, -1, + -1, -1, 129, -1, -1, -1, -1, -1, -1, 136, + 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, + 121, 122, 123, 124, -1, -1, -1, -1, 129, -1, + -1, -1, 133, 111, 112, 113, 114, 115, 116, 117, + 118, 119, 120, 121, 122, 123, 124, -1, -1, -1, + -1, 129, -1, -1, -1, 133, 111, 112, 113, 114, + 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, + -1, -1, -1, -1, 129, -1, -1, -1, 133, 111, + 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, + 122, 123, 124, -1, -1, -1, -1, 129, -1, -1, + -1, 133, 111, 112, 113, 114, 115, 116, 117, 118, + 119, 120, 121, 122, 123, 124, -1, -1, -1, -1, + 129, -1, -1, -1, 133, 111, 112, 113, 114, 115, + 116, 117, 118, 119, 120, 121, 122, 123, 124, -1, + -1, -1, -1, 129, -1, -1, -1, 133, 111, 112, + 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, + 123, 124, -1, -1, -1, -1, 129, -1, -1, -1, + 133, 111, 112, 113, 114, 115, 116, 117, 118, 119, + 120, 121, 122, 123, 124, -1, -1, -1, -1, 129, + -1, -1, -1, 133, 111, 112, 113, 114, 115, 116, + 117, 118, 119, 120, 121, 122, 123, 124, -1, -1, + -1, -1, 129, -1, -1, -1, 133, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, -1, -1, -1, -1, 131, -1, -1, - -1, 135, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, -1, -1, -1, -1, - 131, -1, -1, -1, 135, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, -1, - -1, -1, -1, 131, -1, -1, -1, 135, 113, 114, + 124, -1, -1, -1, -1, 129, -1, -1, -1, 133, + 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, + 121, 122, 123, 124, -1, -1, -1, -1, 129, -1, + -1, -1, 133, 111, 112, 113, 114, 115, 116, 117, + 118, 119, 120, 121, 122, 123, 124, -1, -1, -1, + -1, 129, -1, -1, -1, 133, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, -1, -1, -1, -1, 131, -1, -1, -1, - 135, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, -1, -1, -1, -1, 131, - -1, -1, -1, 135, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 126, -1, -1, - -1, -1, 131, -1, -1, -1, 135, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, -1, -1, -1, -1, 131, -1, -1, -1, 135, + -1, -1, -1, -1, 129, -1, -1, -1, 133, 111, + 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, + 122, 123, 124, -1, -1, -1, -1, 129, -1, -1, + -1, 133, 111, 112, 113, 114, 115, 116, 117, 118, + 119, 120, 121, 122, 123, 124, -1, -1, -1, -1, + 129, -1, -1, -1, 133, 111, 112, 113, 114, 115, + 116, 117, 118, 119, 120, 121, 122, 123, 124, -1, + -1, -1, -1, 129, -1, -1, -1, 133, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, -1, -1, -1, -1, 131, -1, - -1, -1, 135, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, -1, -1, -1, - -1, 131, -1, -1, -1, 135, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - -1, -1, -1, -1, 131, -1, -1, -1, 135, 113, + 123, 124, -1, -1, -1, -1, 129, -1, -1, -1, + 133, 111, 112, 113, 114, 115, 116, 117, 118, 119, + 120, 121, 122, 123, 124, -1, -1, -1, -1, 129, + -1, -1, -1, 133, 111, 112, 113, 114, 115, 116, + 117, 118, 119, 120, 121, 122, 123, 124, -1, -1, + -1, -1, 129, -1, -1, -1, 133, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, -1, -1, -1, -1, 131, -1, -1, - -1, 135, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, -1, -1, -1, -1, - 131, -1, -1, -1, 135, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, -1, - -1, -1, -1, 131, -1, -1, -1, 135, 113, 114, + 124, -1, -1, -1, -1, 129, -1, -1, -1, 133, + 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, + 121, 122, 123, 124, -1, -1, -1, -1, 129, -1, + -1, -1, 133, 111, 112, 113, 114, 115, 116, 117, + 118, 119, 120, 121, 122, 123, 124, -1, -1, -1, + -1, 129, -1, -1, -1, 133, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, -1, -1, -1, -1, 131, -1, -1, -1, - 135, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, -1, -1, -1, -1, 131, - -1, 133, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, -1, -1, -1, -1, - 131, -1, 133, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, -1, -1, -1, - -1, 131, -1, 133, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 126, -1, -1, - -1, -1, 131, -1, 133, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, -1, - -1, -1, -1, 131, -1, 133, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - -1, -1, -1, -1, 131, -1, 133, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, -1, -1, -1, -1, 131, -1, 133, 113, 114, + -1, -1, -1, -1, 129, -1, -1, -1, 133, 111, + 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, + 122, 123, 124, -1, -1, -1, -1, 129, -1, -1, + -1, 133, 111, 112, 113, 114, 115, 116, 117, 118, + 119, 120, 121, 122, 123, 124, -1, -1, -1, -1, + 129, -1, -1, -1, 133, 111, 112, 113, 114, 115, + 116, 117, 118, 119, 120, 121, 122, 123, 124, -1, + -1, -1, -1, 129, -1, -1, -1, 133, 111, 112, + 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, + 123, 124, -1, -1, -1, -1, 129, -1, -1, -1, + 133, 111, 112, 113, 114, 115, 116, 117, 118, 119, + 120, 121, 122, 123, 124, -1, -1, -1, -1, 129, + -1, -1, -1, 133, 111, 112, 113, 114, 115, 116, + 117, 118, 119, 120, 121, 122, 123, 124, -1, -1, + -1, -1, 129, -1, -1, -1, 133, 111, 112, 113, + 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, + 124, -1, -1, -1, -1, 129, -1, -1, -1, 133, + 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, + 121, 122, 123, 124, -1, -1, -1, -1, 129, -1, + -1, -1, 133, 111, 112, 113, 114, 115, 116, 117, + 118, 119, 120, 121, 122, 123, 124, -1, -1, -1, + -1, 129, -1, -1, -1, 133, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, -1, -1, -1, -1, 131, -1, 133, 113, + -1, -1, -1, -1, 129, -1, 131, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, -1, -1, -1, -1, 131, -1, 133, + 124, -1, -1, -1, -1, 129, -1, 131, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, -1, -1, -1, -1, 131, -1, - 133, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, -1, -1, -1, -1, 131, - -1, 133, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, -1, -1, -1, -1, - 131, -1, 133, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, -1, -1, -1, - -1, 131, -1, 133, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 126, -1, -1, - -1, -1, 131, -1, 133, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, -1, - -1, -1, -1, 131, -1, 133, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - -1, -1, -1, -1, 131, -1, 133, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, -1, -1, -1, -1, 131, -1, 133, 113, 114, + 123, 124, -1, -1, -1, -1, 129, -1, 131, 111, + 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, + 122, 123, 124, -1, -1, -1, -1, 129, -1, 131, + 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, + 121, 122, 123, 124, -1, -1, -1, -1, 129, -1, + 131, 111, 112, 113, 114, 115, 116, 117, 118, 119, + 120, 121, 122, 123, 124, -1, -1, -1, -1, 129, + -1, 131, 111, 112, 113, 114, 115, 116, 117, 118, + 119, 120, 121, 122, 123, 124, -1, -1, -1, -1, + 129, -1, 131, 111, 112, 113, 114, 115, 116, 117, + 118, 119, 120, 121, 122, 123, 124, -1, -1, -1, + -1, 129, -1, 131, 111, 112, 113, 114, 115, 116, + 117, 118, 119, 120, 121, 122, 123, 124, -1, -1, + -1, -1, 129, -1, 131, 111, 112, 113, 114, 115, + 116, 117, 118, 119, 120, 121, 122, 123, 124, -1, + -1, -1, -1, 129, -1, 131, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, -1, -1, -1, -1, 131, -1, 133, 113, + -1, -1, -1, -1, 129, -1, 131, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, -1, -1, -1, -1, 131, -1, 133, + 124, -1, -1, -1, -1, 129, -1, 131, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, -1, -1, -1, -1, 131, -1, - 133, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, -1, -1, -1, -1, 131, - -1, 133, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, -1, -1, -1, -1, - 131, -1, 133, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, -1, -1, -1, - -1, 131, -1, 133, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 126, -1, -1, - -1, -1, 131, -1, 133, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, -1, - -1, -1, -1, 131, -1, 133, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - -1, -1, -1, -1, 131, -1, 133, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, -1, -1, -1, -1, 131, -1, 133, 113, 114, + 123, 124, -1, -1, -1, -1, 129, -1, 131, 111, + 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, + 122, 123, 124, -1, -1, -1, -1, 129, -1, 131, + 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, + 121, 122, 123, 124, -1, -1, -1, -1, 129, -1, + 131, 111, 112, 113, 114, 115, 116, 117, 118, 119, + 120, 121, 122, 123, 124, -1, -1, -1, -1, 129, + -1, 131, 111, 112, 113, 114, 115, 116, 117, 118, + 119, 120, 121, 122, 123, 124, -1, -1, -1, -1, + 129, -1, 131, 111, 112, 113, 114, 115, 116, 117, + 118, 119, 120, 121, 122, 123, 124, -1, -1, -1, + -1, 129, -1, 131, 111, 112, 113, 114, 115, 116, + 117, 118, 119, 120, 121, 122, 123, 124, -1, -1, + -1, -1, 129, -1, 131, 111, 112, 113, 114, 115, + 116, 117, 118, 119, 120, 121, 122, 123, 124, -1, + -1, -1, -1, 129, -1, 131, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, -1, -1, -1, -1, 131, -1, 133, 113, + -1, -1, -1, -1, 129, -1, 131, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, -1, -1, -1, -1, 131, -1, 133, + 124, -1, -1, -1, -1, 129, -1, 131, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, -1, -1, -1, -1, 131, -1, - 133, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, -1, -1, -1, -1, 131, - -1, 133, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, -1, -1, -1, -1, - 131, -1, 133, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, -1, -1, -1, - -1, 131, -1, 133, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 126, -1, -1, - -1, -1, 131, -1, 133, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, -1, - -1, -1, -1, 131, -1, 133, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - -1, -1, -1, -1, 131, -1, 133, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, -1, -1, -1, -1, 131, -1, 133, 113, 114, + 123, 124, -1, -1, -1, -1, 129, -1, 131, 111, + 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, + 122, 123, 124, -1, -1, -1, -1, 129, -1, 131, + 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, + 121, 122, 123, 124, -1, -1, -1, -1, 129, -1, + 131, 111, 112, 113, 114, 115, 116, 117, 118, 119, + 120, 121, 122, 123, 124, -1, -1, -1, -1, 129, + -1, 131, 111, 112, 113, 114, 115, 116, 117, 118, + 119, 120, 121, 122, 123, 124, -1, -1, -1, -1, + 129, -1, 131, 111, 112, 113, 114, 115, 116, 117, + 118, 119, 120, 121, 122, 123, 124, -1, -1, -1, + -1, 129, -1, 131, 111, 112, 113, 114, 115, 116, + 117, 118, 119, 120, 121, 122, 123, 124, -1, -1, + -1, -1, 129, -1, 131, 111, 112, 113, 114, 115, + 116, 117, 118, 119, 120, 121, 122, 123, 124, -1, + -1, -1, -1, 129, -1, 131, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, -1, -1, -1, -1, 131, -1, 133, 113, + -1, -1, -1, -1, 129, -1, 131, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, -1, -1, -1, -1, 131, -1, 133, + 124, -1, -1, -1, -1, 129, -1, 131, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, -1, -1, -1, -1, 131, -1, - 133, 113, 114, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, -1, -1, -1, -1, 131, - -1, 133, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, -1, -1, -1, -1, - 131, -1, 133, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, -1, -1, -1, - -1, 131, -1, 133, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 126, -1, -1, - -1, -1, 131, -1, 133, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, -1, - -1, -1, -1, 131, -1, 133, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - -1, -1, -1, -1, 131, -1, 133, 113, 114, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, -1, -1, -1, -1, 131, -1, 133, 113, 114, + 123, 124, -1, -1, -1, -1, 129, -1, 131, 111, + 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, + 122, 123, 124, -1, -1, -1, -1, 129, -1, 131, + 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, + 121, 122, 123, 124, -1, -1, -1, -1, 129, -1, + 131, 111, 112, 113, 114, 115, 116, 117, 118, 119, + 120, 121, 122, 123, 124, -1, -1, -1, -1, 129, + -1, 131, 111, 112, 113, 114, 115, 116, 117, 118, + 119, 120, 121, 122, 123, 124, -1, -1, -1, -1, + 129, -1, 131, 111, 112, 113, 114, 115, 116, 117, + 118, 119, 120, 121, 122, 123, 124, -1, -1, -1, + -1, 129, -1, 131, 111, 112, 113, 114, 115, 116, + 117, 118, 119, 120, 121, 122, 123, 124, -1, -1, + -1, -1, 129, -1, 131, 111, 112, 113, 114, 115, + 116, 117, 118, 119, 120, 121, 122, 123, 124, -1, + -1, -1, -1, 129, -1, 131, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, -1, -1, -1, -1, 131, -1, 133, 113, + -1, -1, -1, -1, 129, -1, 131, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, -1, -1, -1, -1, 131 + 124, -1, -1, -1, -1, 129, -1, 131, 111, 112, + 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, + 123, 124, -1, -1, -1, -1, 129, -1, 131, 111, + 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, + 122, 123, 124, -1, -1, -1, -1, 129, -1, 131, + 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, + 121, 122, 123, 124, -1, -1, -1, -1, 129, -1, + 131, 111, 112, 113, 114, 115, 116, 117, 118, 119, + 120, 121, 122, 123, 124, -1, -1, -1, -1, 129, + -1, 131, 111, 112, 113, 114, 115, 116, 117, 118, + 119, 120, 121, 122, 123, 124, -1, -1, -1, -1, + 129, -1, 131, 111, 112, 113, 114, 115, 116, 117, + 118, 119, 120, 121, 122, 123, 124, -1, -1, -1, + -1, 129, -1, 131, 111, 112, 113, 114, 115, 116, + 117, 118, 119, 120, 121, 122, 123, 124, -1, -1, + -1, -1, 129 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing symbol of state STATE-NUM. */ static const yytype_uint8 yystos[] = { - 0, 1, 143, 144, 6, 0, 4, 12, 13, 35, + 0, 1, 141, 142, 6, 0, 4, 12, 13, 35, 40, 41, 43, 44, 45, 46, 47, 48, 49, 50, - 51, 52, 54, 55, 56, 57, 58, 59, 60, 64, - 65, 66, 67, 68, 69, 71, 72, 73, 74, 75, - 76, 79, 80, 85, 86, 87, 88, 91, 93, 95, - 96, 97, 98, 99, 100, 101, 102, 103, 104, 145, - 147, 148, 166, 169, 170, 173, 174, 175, 176, 177, - 178, 194, 195, 196, 3, 4, 5, 7, 9, 10, + 51, 52, 54, 55, 56, 57, 58, 59, 60, 62, + 63, 64, 65, 66, 67, 69, 70, 71, 72, 73, + 74, 77, 78, 83, 84, 85, 86, 89, 91, 93, + 94, 95, 96, 97, 98, 99, 100, 101, 102, 143, + 145, 146, 164, 167, 168, 171, 172, 173, 174, 175, + 176, 194, 195, 196, 3, 4, 5, 7, 9, 10, 11, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 36, 37, 38, 39, 42, 99, 105, 106, - 107, 108, 109, 110, 111, 112, 122, 123, 127, 129, - 130, 132, 134, 136, 137, 139, 164, 165, 197, 198, - 209, 13, 49, 132, 6, 139, 6, 132, 139, 132, - 132, 70, 132, 139, 132, 132, 70, 139, 132, 132, - 53, 49, 132, 49, 49, 49, 46, 49, 51, 51, - 43, 46, 49, 51, 132, 139, 122, 123, 132, 139, - 199, 200, 199, 139, 43, 46, 49, 139, 199, 49, - 49, 46, 4, 99, 139, 4, 6, 46, 4, 4, - 4, 132, 132, 132, 4, 139, 205, 4, 132, 132, - 6, 134, 4, 4, 4, 5, 139, 208, 209, 139, - 208, 4, 134, 136, 141, 165, 139, 209, 132, 134, - 132, 134, 132, 134, 132, 134, 132, 134, 132, 134, - 132, 134, 132, 134, 132, 134, 132, 134, 132, 134, - 132, 134, 132, 134, 132, 134, 132, 134, 132, 134, - 132, 134, 132, 134, 132, 134, 132, 134, 132, 134, - 132, 132, 132, 132, 7, 132, 4, 197, 197, 197, - 197, 135, 139, 197, 4, 91, 92, 4, 4, 170, - 171, 172, 197, 6, 6, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, 131, - 6, 6, 197, 5, 197, 197, 4, 43, 123, 170, - 178, 197, 203, 204, 197, 197, 132, 197, 204, 197, - 197, 132, 204, 197, 197, 123, 139, 197, 202, 203, - 132, 197, 139, 132, 132, 202, 139, 139, 132, 132, - 132, 132, 132, 4, 199, 199, 199, 197, 197, 122, - 123, 139, 139, 199, 139, 139, 139, 122, 123, 132, - 172, 199, 139, 202, 202, 132, 4, 6, 134, 134, - 172, 6, 139, 134, 134, 6, 197, 197, 197, 136, - 197, 139, 94, 197, 197, 197, 6, 134, 136, 172, - 6, 172, 6, 134, 197, 4, 139, 149, 6, 197, + 33, 34, 36, 37, 38, 39, 42, 97, 103, 104, + 105, 106, 107, 108, 109, 110, 120, 121, 125, 127, + 128, 130, 132, 134, 135, 137, 162, 163, 197, 198, + 209, 13, 49, 130, 6, 137, 6, 130, 137, 130, + 130, 68, 130, 137, 130, 130, 68, 137, 130, 130, + 53, 49, 130, 49, 49, 49, 46, 49, 51, 51, + 43, 46, 49, 51, 130, 137, 120, 121, 130, 137, + 199, 200, 199, 137, 43, 46, 49, 137, 199, 49, + 49, 46, 4, 97, 137, 4, 6, 46, 4, 4, + 4, 130, 130, 130, 4, 137, 205, 4, 130, 130, + 6, 132, 4, 4, 4, 5, 137, 208, 209, 137, + 208, 4, 132, 134, 139, 163, 137, 209, 130, 132, + 130, 132, 130, 132, 130, 132, 130, 132, 130, 132, + 130, 132, 130, 132, 130, 132, 130, 132, 130, 132, + 130, 132, 130, 132, 130, 132, 130, 132, 130, 132, + 130, 132, 130, 132, 130, 132, 130, 132, 130, 132, + 130, 130, 130, 130, 7, 130, 4, 197, 197, 197, + 197, 133, 137, 197, 4, 89, 90, 4, 4, 168, + 169, 170, 197, 6, 6, 111, 112, 113, 114, 115, + 116, 117, 118, 119, 120, 121, 122, 123, 124, 129, + 6, 6, 197, 5, 197, 197, 4, 43, 121, 168, + 176, 197, 203, 204, 197, 197, 130, 197, 204, 197, + 197, 130, 204, 197, 197, 121, 137, 197, 202, 203, + 130, 197, 137, 130, 130, 202, 137, 137, 130, 130, + 130, 130, 130, 4, 199, 199, 199, 197, 197, 120, + 121, 137, 137, 199, 137, 137, 137, 120, 121, 130, + 170, 199, 137, 202, 202, 130, 4, 6, 132, 132, + 170, 6, 137, 132, 132, 6, 197, 197, 197, 134, + 197, 137, 92, 197, 197, 197, 6, 132, 134, 170, + 6, 170, 6, 132, 197, 4, 137, 147, 6, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, - 197, 208, 208, 208, 208, 197, 5, 134, 133, 7, - 112, 204, 135, 7, 164, 165, 136, 7, 134, 140, - 43, 46, 49, 51, 169, 6, 197, 197, 197, 197, + 197, 208, 208, 208, 208, 197, 5, 132, 131, 7, + 110, 204, 133, 7, 162, 163, 134, 7, 132, 138, + 43, 46, 49, 51, 167, 6, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, - 197, 6, 133, 138, 138, 133, 134, 139, 197, 203, - 8, 124, 138, 140, 133, 133, 197, 133, 140, 133, - 133, 197, 140, 133, 133, 139, 140, 204, 124, 7, - 197, 133, 197, 197, 197, 7, 197, 197, 197, 167, - 197, 209, 167, 167, 167, 133, 138, 138, 138, 199, - 199, 171, 171, 138, 197, 197, 197, 197, 182, 138, - 172, 6, 7, 7, 197, 6, 197, 197, 140, 204, - 197, 197, 133, 133, 133, 91, 138, 172, 139, 8, - 133, 135, 197, 4, 140, 140, 197, 135, 165, 197, - 4, 81, 82, 83, 84, 140, 152, 156, 159, 161, - 162, 133, 135, 133, 135, 133, 135, 133, 135, 133, - 135, 133, 135, 133, 135, 133, 135, 133, 135, 133, - 135, 133, 135, 138, 138, 133, 135, 133, 135, 133, - 135, 133, 135, 133, 135, 133, 135, 138, 138, 138, - 138, 138, 138, 133, 138, 138, 133, 133, 6, 138, - 197, 202, 202, 140, 7, 136, 164, 165, 209, 197, - 6, 4, 4, 139, 206, 135, 139, 139, 139, 139, - 8, 6, 119, 146, 204, 197, 7, 135, 139, 197, - 197, 197, 203, 197, 203, 94, 7, 7, 133, 7, - 94, 7, 7, 133, 94, 7, 7, 204, 140, 139, - 197, 133, 7, 140, 133, 133, 197, 140, 140, 133, - 133, 133, 133, 133, 136, 199, 197, 197, 140, 140, - 197, 138, 138, 138, 71, 77, 78, 192, 193, 199, - 140, 179, 197, 197, 133, 135, 135, 140, 135, 135, - 7, 7, 7, 136, 197, 140, 197, 197, 7, 136, - 135, 135, 136, 165, 208, 140, 153, 132, 132, 139, - 163, 6, 197, 197, 197, 197, 197, 197, 197, 197, - 204, 208, 197, 135, 6, 6, 135, 4, 91, 92, - 197, 6, 6, 6, 7, 134, 205, 207, 6, 204, - 204, 204, 204, 197, 119, 208, 133, 138, 199, 204, - 140, 8, 49, 202, 202, 7, 202, 49, 51, 202, - 202, 7, 51, 202, 202, 140, 204, 6, 7, 139, - 7, 7, 7, 6, 61, 7, 7, 7, 7, 7, - 7, 7, 4, 138, 138, 138, 140, 199, 199, 199, - 6, 139, 132, 140, 193, 138, 192, 6, 6, 139, - 6, 6, 49, 6, 6, 202, 202, 202, 4, 138, - 8, 8, 133, 4, 4, 136, 6, 4, 6, 132, - 197, 197, 201, 202, 139, 133, 135, 133, 135, 133, - 135, 133, 135, 133, 133, 133, 164, 7, 164, 165, - 136, 7, 6, 205, 197, 138, 140, 140, 140, 140, - 140, 6, 6, 146, 197, 6, 140, 197, 139, 6, - 56, 6, 56, 202, 6, 139, 139, 6, 6, 202, - 139, 6, 6, 140, 5, 197, 202, 202, 202, 62, - 63, 202, 202, 202, 202, 202, 202, 202, 6, 7, - 197, 197, 197, 139, 138, 140, 138, 140, 138, 140, - 197, 202, 197, 197, 199, 140, 204, 139, 6, 6, - 90, 197, 197, 197, 6, 7, 4, 165, 150, 197, - 138, 138, 138, 140, 151, 197, 202, 209, 197, 6, - 4, 206, 6, 135, 205, 6, 6, 6, 6, 208, - 138, 135, 197, 199, 199, 6, 197, 197, 6, 197, - 5, 138, 6, 6, 94, 168, 197, 197, 4, 6, - 6, 6, 6, 6, 6, 6, 197, 209, 140, 133, - 138, 140, 171, 199, 6, 183, 199, 6, 184, 199, - 6, 185, 140, 138, 133, 140, 138, 140, 197, 202, - 138, 140, 8, 140, 133, 139, 197, 209, 133, 138, - 197, 197, 202, 139, 138, 140, 6, 6, 6, 7, - 6, 136, 6, 197, 140, 6, 6, 140, 140, 140, - 5, 197, 47, 6, 6, 6, 6, 6, 6, 139, - 197, 140, 138, 139, 138, 139, 138, 139, 6, 202, - 7, 139, 197, 6, 140, 89, 197, 197, 204, 6, - 6, 154, 197, 138, 138, 201, 197, 6, 205, 92, - 138, 6, 6, 6, 6, 6, 138, 139, 171, 138, - 140, 197, 199, 192, 197, 199, 192, 197, 199, 192, - 138, 140, 202, 172, 140, 197, 140, 140, 140, 139, - 197, 197, 140, 6, 197, 5, 197, 140, 197, 140, - 138, 140, 140, 138, 140, 140, 138, 140, 202, 6, - 61, 140, 180, 139, 6, 6, 151, 133, 138, 6, - 139, 138, 138, 140, 140, 6, 186, 197, 6, 6, - 187, 197, 6, 6, 188, 197, 6, 140, 197, 192, - 172, 140, 157, 197, 201, 197, 5, 139, 140, 139, - 140, 139, 140, 6, 6, 140, 140, 181, 6, 139, - 133, 140, 140, 138, 192, 6, 189, 192, 6, 190, - 192, 6, 191, 192, 155, 208, 160, 139, 6, 5, - 140, 139, 140, 139, 140, 139, 140, 138, 140, 139, - 201, 140, 6, 192, 6, 192, 6, 192, 208, 6, - 158, 208, 140, 6, 140, 140, 140, 138, 140, 6, - 6, 6, 6, 208, 6 + 197, 6, 131, 136, 136, 131, 132, 137, 197, 203, + 8, 122, 136, 138, 131, 131, 197, 131, 138, 131, + 131, 197, 138, 131, 131, 137, 138, 204, 122, 7, + 197, 131, 197, 197, 197, 7, 197, 197, 197, 165, + 197, 209, 165, 165, 165, 131, 136, 136, 136, 199, + 199, 169, 169, 136, 197, 197, 197, 197, 180, 136, + 170, 6, 7, 7, 197, 6, 197, 197, 138, 204, + 197, 197, 131, 131, 131, 89, 136, 170, 137, 8, + 131, 133, 197, 4, 138, 138, 197, 133, 163, 197, + 4, 79, 80, 81, 82, 138, 150, 154, 157, 159, + 160, 131, 133, 131, 133, 131, 133, 131, 133, 131, + 133, 131, 133, 131, 133, 131, 133, 131, 133, 131, + 133, 131, 133, 136, 136, 131, 133, 131, 133, 131, + 133, 131, 133, 131, 133, 131, 133, 136, 136, 136, + 136, 136, 136, 131, 136, 136, 131, 131, 6, 136, + 197, 202, 202, 138, 7, 134, 162, 163, 209, 197, + 6, 4, 4, 137, 206, 133, 137, 137, 137, 137, + 8, 6, 117, 144, 204, 197, 7, 133, 137, 197, + 197, 197, 203, 197, 203, 92, 7, 7, 131, 7, + 92, 7, 7, 131, 92, 7, 7, 204, 138, 137, + 197, 131, 7, 138, 131, 131, 197, 138, 138, 131, + 131, 131, 131, 131, 134, 199, 197, 197, 138, 138, + 197, 136, 136, 136, 69, 75, 76, 190, 191, 199, + 138, 177, 197, 197, 131, 133, 133, 138, 133, 133, + 7, 7, 7, 134, 197, 138, 197, 197, 7, 134, + 133, 133, 134, 163, 208, 138, 151, 130, 130, 137, + 161, 6, 197, 197, 197, 197, 197, 197, 197, 197, + 204, 208, 197, 133, 6, 6, 133, 4, 89, 90, + 197, 6, 6, 6, 7, 132, 205, 207, 6, 204, + 204, 204, 204, 197, 117, 208, 131, 136, 199, 204, + 138, 8, 49, 202, 202, 7, 202, 49, 51, 202, + 202, 7, 51, 202, 202, 138, 204, 6, 7, 137, + 7, 7, 7, 61, 192, 7, 7, 7, 7, 7, + 7, 7, 4, 136, 136, 136, 138, 199, 199, 199, + 6, 137, 130, 138, 191, 136, 190, 6, 6, 137, + 6, 6, 49, 6, 6, 202, 202, 202, 4, 136, + 8, 8, 131, 4, 4, 134, 6, 4, 6, 130, + 197, 197, 201, 202, 137, 131, 133, 131, 133, 131, + 133, 131, 133, 131, 131, 131, 162, 7, 162, 163, + 134, 7, 6, 205, 197, 136, 138, 138, 138, 138, + 138, 6, 6, 144, 197, 6, 138, 197, 137, 6, + 56, 6, 56, 202, 6, 137, 137, 6, 6, 202, + 137, 6, 6, 138, 5, 197, 202, 202, 202, 4, + 6, 202, 202, 202, 202, 202, 202, 202, 6, 7, + 197, 197, 197, 137, 136, 138, 136, 138, 136, 138, + 197, 202, 197, 197, 199, 138, 204, 137, 6, 6, + 88, 197, 197, 197, 6, 7, 4, 163, 148, 197, + 136, 136, 136, 138, 149, 197, 202, 209, 197, 6, + 4, 206, 6, 133, 205, 6, 6, 6, 6, 208, + 136, 133, 197, 199, 199, 6, 197, 197, 6, 197, + 5, 136, 6, 6, 92, 166, 197, 4, 193, 6, + 6, 6, 6, 6, 6, 197, 209, 138, 131, 136, + 138, 169, 199, 6, 181, 199, 6, 182, 199, 6, + 183, 138, 136, 131, 138, 136, 138, 197, 202, 136, + 138, 8, 138, 131, 137, 197, 209, 131, 136, 197, + 197, 202, 137, 136, 138, 6, 6, 6, 7, 6, + 134, 6, 197, 138, 6, 6, 138, 138, 138, 5, + 197, 47, 6, 6, 6, 6, 137, 197, 138, 136, + 137, 136, 137, 136, 137, 6, 202, 7, 137, 197, + 6, 138, 87, 197, 197, 204, 6, 6, 152, 197, + 136, 136, 201, 197, 6, 205, 90, 136, 6, 6, + 6, 6, 6, 136, 137, 169, 136, 138, 197, 199, + 190, 197, 199, 190, 197, 199, 190, 136, 138, 202, + 170, 138, 197, 138, 138, 138, 137, 197, 197, 138, + 6, 197, 5, 197, 138, 197, 138, 136, 138, 138, + 136, 138, 138, 136, 138, 202, 6, 61, 138, 178, + 137, 6, 6, 149, 131, 136, 6, 137, 136, 136, + 138, 138, 6, 184, 197, 6, 6, 185, 197, 6, + 6, 186, 197, 6, 138, 197, 190, 170, 138, 155, + 197, 201, 197, 5, 137, 138, 137, 138, 137, 138, + 6, 6, 138, 138, 179, 6, 137, 131, 138, 138, + 136, 190, 6, 187, 190, 6, 188, 190, 6, 189, + 190, 153, 208, 158, 137, 6, 5, 138, 137, 138, + 137, 138, 137, 138, 136, 138, 137, 201, 138, 6, + 190, 6, 190, 6, 190, 208, 6, 156, 208, 138, + 6, 138, 138, 138, 136, 138, 6, 6, 6, 6, + 208, 6 }; #define yyerrok (yyerrstatus = 0) @@ -3657,96 +3656,96 @@ yyreduce: switch (yyn) { case 3: -#line 138 "Gmsh.y" +#line 139 "Gmsh.y" { yyerrok; return 1; ;} break; case 6: -#line 149 "Gmsh.y" +#line 150 "Gmsh.y" { return 1; ;} break; case 7: -#line 150 "Gmsh.y" +#line 151 "Gmsh.y" { return 1; ;} break; case 8: -#line 151 "Gmsh.y" +#line 152 "Gmsh.y" { return 1; ;} break; case 9: -#line 152 "Gmsh.y" +#line 153 "Gmsh.y" { return 1; ;} break; case 10: -#line 153 "Gmsh.y" +#line 154 "Gmsh.y" { List_Delete((yyvsp[(1) - (1)].l)); return 1; ;} break; case 11: -#line 154 "Gmsh.y" +#line 155 "Gmsh.y" { return 1; ;} break; case 12: -#line 155 "Gmsh.y" +#line 156 "Gmsh.y" { return 1; ;} break; case 13: -#line 156 "Gmsh.y" +#line 157 "Gmsh.y" { return 1; ;} break; case 14: -#line 157 "Gmsh.y" +#line 158 "Gmsh.y" { List_Delete((yyvsp[(1) - (1)].l)); return 1; ;} break; case 15: -#line 158 "Gmsh.y" +#line 159 "Gmsh.y" { return 1; ;} break; case 16: -#line 159 "Gmsh.y" +#line 160 "Gmsh.y" { return 1; ;} break; case 17: -#line 160 "Gmsh.y" +#line 161 "Gmsh.y" { return 1; ;} break; case 18: -#line 161 "Gmsh.y" +#line 162 "Gmsh.y" { return 1; ;} break; case 19: -#line 162 "Gmsh.y" +#line 163 "Gmsh.y" { return 1; ;} break; case 20: -#line 167 "Gmsh.y" +#line 168 "Gmsh.y" { (yyval.c) = (char*)"w"; ;} break; case 21: -#line 171 "Gmsh.y" +#line 172 "Gmsh.y" { (yyval.c) = (char*)"a"; ;} break; case 22: -#line 178 "Gmsh.y" +#line 179 "Gmsh.y" { Msg::Direct((yyvsp[(3) - (5)].c)); Free((yyvsp[(3) - (5)].c)); @@ -3754,7 +3753,7 @@ yyreduce: break; case 23: -#line 183 "Gmsh.y" +#line 184 "Gmsh.y" { char tmpstring[1024]; FixRelativePath((yyvsp[(6) - (7)].c), tmpstring); @@ -3772,7 +3771,7 @@ yyreduce: break; case 24: -#line 198 "Gmsh.y" +#line 199 "Gmsh.y" { char tmpstring[1024]; int i = PrintListOfDouble((yyvsp[(3) - (7)].c), (yyvsp[(5) - (7)].l), tmpstring); @@ -3788,7 +3787,7 @@ yyreduce: break; case 25: -#line 211 "Gmsh.y" +#line 212 "Gmsh.y" { char tmpstring[1024]; int i = PrintListOfDouble((yyvsp[(3) - (9)].c), (yyvsp[(5) - (9)].l), tmpstring); @@ -3815,7 +3814,7 @@ yyreduce: break; case 26: -#line 240 "Gmsh.y" +#line 241 "Gmsh.y" { #if !defined(HAVE_NO_POST) if(!strcmp((yyvsp[(1) - (6)].c), "View") && ViewData->finalize()){ @@ -3832,7 +3831,7 @@ yyreduce: break; case 27: -#line 254 "Gmsh.y" +#line 255 "Gmsh.y" { #if !defined(HAVE_NO_POST) if(!strcmp((yyvsp[(2) - (6)].c), "View")){ @@ -3846,7 +3845,7 @@ yyreduce: break; case 28: -#line 265 "Gmsh.y" +#line 266 "Gmsh.y" { #if !defined(HAVE_NO_POST) if(!strcmp((yyvsp[(2) - (6)].c), "View")){ @@ -3860,7 +3859,7 @@ yyreduce: break; case 29: -#line 279 "Gmsh.y" +#line 280 "Gmsh.y" { #if !defined(HAVE_NO_POST) ViewData = new PViewDataList(true); @@ -3869,27 +3868,27 @@ yyreduce: break; case 35: -#line 293 "Gmsh.y" +#line 294 "Gmsh.y" { ViewCoord.push_back((yyvsp[(1) - (1)].d)); ;} break; case 36: -#line 295 "Gmsh.y" +#line 296 "Gmsh.y" { ViewCoord.push_back((yyvsp[(3) - (3)].d)); ;} break; case 37: -#line 300 "Gmsh.y" +#line 301 "Gmsh.y" { if(ViewValueList) List_Add(ViewValueList, &(yyvsp[(1) - (1)].d)); ;} break; case 38: -#line 302 "Gmsh.y" +#line 303 "Gmsh.y" { if(ViewValueList) List_Add(ViewValueList, &(yyvsp[(3) - (3)].d)); ;} break; case 39: -#line 307 "Gmsh.y" +#line 308 "Gmsh.y" { #if !defined(HAVE_NO_POST) if(!strcmp((yyvsp[(1) - (1)].c), "SP")){ @@ -4038,7 +4037,7 @@ yyreduce: break; case 40: -#line 453 "Gmsh.y" +#line 454 "Gmsh.y" { #if !defined(HAVE_NO_POST) if(ViewValueList){ @@ -4051,7 +4050,7 @@ yyreduce: break; case 41: -#line 463 "Gmsh.y" +#line 464 "Gmsh.y" { #if !defined(HAVE_NO_POST) if(ViewValueList) (*ViewNumList)++; @@ -4060,7 +4059,7 @@ yyreduce: break; case 42: -#line 472 "Gmsh.y" +#line 473 "Gmsh.y" { #if !defined(HAVE_NO_POST) for(int i = 0; i < (int)strlen((yyvsp[(1) - (1)].c))+1; i++) List_Add(ViewData->T2C, &(yyvsp[(1) - (1)].c)[i]); @@ -4070,7 +4069,7 @@ yyreduce: break; case 43: -#line 479 "Gmsh.y" +#line 480 "Gmsh.y" { #if !defined(HAVE_NO_POST) for(int i = 0; i < (int)strlen((yyvsp[(3) - (3)].c))+1; i++) List_Add(ViewData->T2C, &(yyvsp[(3) - (3)].c)[i]); @@ -4080,7 +4079,7 @@ yyreduce: break; case 44: -#line 489 "Gmsh.y" +#line 490 "Gmsh.y" { #if !defined(HAVE_NO_POST) List_Add(ViewData->T2D, &(yyvsp[(3) - (8)].d)); @@ -4093,7 +4092,7 @@ yyreduce: break; case 45: -#line 499 "Gmsh.y" +#line 500 "Gmsh.y" { #if !defined(HAVE_NO_POST) ViewData->NbT2++; @@ -4102,7 +4101,7 @@ yyreduce: break; case 46: -#line 508 "Gmsh.y" +#line 509 "Gmsh.y" { #if !defined(HAVE_NO_POST) for(int i = 0; i < (int)strlen((yyvsp[(1) - (1)].c))+1; i++) List_Add(ViewData->T3C, &(yyvsp[(1) - (1)].c)[i]); @@ -4112,7 +4111,7 @@ yyreduce: break; case 47: -#line 515 "Gmsh.y" +#line 516 "Gmsh.y" { #if !defined(HAVE_NO_POST) for(int i = 0; i < (int)strlen((yyvsp[(3) - (3)].c))+1; i++) List_Add(ViewData->T3C, &(yyvsp[(3) - (3)].c)[i]); @@ -4122,7 +4121,7 @@ yyreduce: break; case 48: -#line 525 "Gmsh.y" +#line 526 "Gmsh.y" { #if !defined(HAVE_NO_POST) List_Add(ViewData->T3D, &(yyvsp[(3) - (10)].d)); List_Add(ViewData->T3D, &(yyvsp[(5) - (10)].d)); @@ -4134,7 +4133,7 @@ yyreduce: break; case 49: -#line 534 "Gmsh.y" +#line 535 "Gmsh.y" { #if !defined(HAVE_NO_POST) ViewData->NbT3++; @@ -4143,7 +4142,7 @@ yyreduce: break; case 50: -#line 544 "Gmsh.y" +#line 545 "Gmsh.y" { #if !defined(HAVE_NO_POST) int type = @@ -4160,7 +4159,7 @@ yyreduce: break; case 51: -#line 561 "Gmsh.y" +#line 562 "Gmsh.y" { #if !defined(HAVE_NO_POST) int type = @@ -4176,7 +4175,7 @@ yyreduce: break; case 52: -#line 577 "Gmsh.y" +#line 578 "Gmsh.y" { #if !defined(HAVE_NO_POST) ViewValueList = ViewData->Time; @@ -4185,48 +4184,48 @@ yyreduce: break; case 53: -#line 583 "Gmsh.y" +#line 584 "Gmsh.y" { ;} break; case 54: -#line 590 "Gmsh.y" +#line 591 "Gmsh.y" { (yyval.i) = 0; ;} break; case 55: -#line 591 "Gmsh.y" +#line 592 "Gmsh.y" { (yyval.i) = 1; ;} break; case 56: -#line 592 "Gmsh.y" +#line 593 "Gmsh.y" { (yyval.i) = 2; ;} break; case 57: -#line 593 "Gmsh.y" +#line 594 "Gmsh.y" { (yyval.i) = 3; ;} break; case 58: -#line 594 "Gmsh.y" +#line 595 "Gmsh.y" { (yyval.i) = 4; ;} break; case 59: -#line 598 "Gmsh.y" +#line 599 "Gmsh.y" { (yyval.i) = 1; ;} break; case 60: -#line 599 "Gmsh.y" +#line 600 "Gmsh.y" { (yyval.i) = -1; ;} break; case 61: -#line 607 "Gmsh.y" +#line 608 "Gmsh.y" { if(!gmsh_yysymbols.count((yyvsp[(1) - (4)].c))){ if(!(yyvsp[(2) - (4)].i)) @@ -4251,7 +4250,7 @@ yyreduce: break; case 62: -#line 629 "Gmsh.y" +#line 630 "Gmsh.y" { int index = (int)(yyvsp[(3) - (7)].d); if(!gmsh_yysymbols.count((yyvsp[(1) - (7)].c))){ @@ -4281,7 +4280,7 @@ yyreduce: break; case 63: -#line 656 "Gmsh.y" +#line 657 "Gmsh.y" { if(List_Nbr((yyvsp[(4) - (9)].l)) != List_Nbr((yyvsp[(8) - (9)].l))){ yymsg(0, "Incompatible array dimensions in affectation"); @@ -4324,7 +4323,7 @@ yyreduce: break; case 64: -#line 696 "Gmsh.y" +#line 697 "Gmsh.y" { if(gmsh_yysymbols.count((yyvsp[(1) - (6)].c))) gmsh_yysymbols[(yyvsp[(1) - (6)].c)].clear(); @@ -4337,7 +4336,7 @@ yyreduce: break; case 65: -#line 706 "Gmsh.y" +#line 707 "Gmsh.y" { // appends to the list for(int i = 0; i < List_Nbr((yyvsp[(5) - (6)].l)); i++) @@ -4348,7 +4347,7 @@ yyreduce: break; case 66: -#line 714 "Gmsh.y" +#line 715 "Gmsh.y" { if(!gmsh_yysymbols.count((yyvsp[(1) - (3)].c))) yymsg(0, "Unknown variable '%s'", (yyvsp[(1) - (3)].c)); @@ -4359,7 +4358,7 @@ yyreduce: break; case 67: -#line 722 "Gmsh.y" +#line 723 "Gmsh.y" { if(!gmsh_yysymbols.count((yyvsp[(1) - (6)].c))) yymsg(0, "Unknown variable '%s'", (yyvsp[(1) - (6)].c)); @@ -4374,7 +4373,7 @@ yyreduce: break; case 68: -#line 734 "Gmsh.y" +#line 735 "Gmsh.y" { gmsh_yystringsymbols[(yyvsp[(1) - (4)].c)] = std::string((yyvsp[(3) - (4)].c)); Free((yyvsp[(1) - (4)].c)); @@ -4383,7 +4382,7 @@ yyreduce: break; case 69: -#line 743 "Gmsh.y" +#line 744 "Gmsh.y" { StringOption(GMSH_SET|GMSH_GUI, (yyvsp[(1) - (6)].c), 0, (yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].c)); Free((yyvsp[(1) - (6)].c)); Free((yyvsp[(3) - (6)].c)); @@ -4391,7 +4390,7 @@ yyreduce: break; case 70: -#line 748 "Gmsh.y" +#line 749 "Gmsh.y" { StringOption(GMSH_SET|GMSH_GUI, (yyvsp[(1) - (9)].c), (int)(yyvsp[(3) - (9)].d), (yyvsp[(6) - (9)].c), (yyvsp[(8) - (9)].c)); Free((yyvsp[(1) - (9)].c)); Free((yyvsp[(6) - (9)].c)); @@ -4399,7 +4398,7 @@ yyreduce: break; case 71: -#line 756 "Gmsh.y" +#line 757 "Gmsh.y" { double d = 0.; if(NumberOption(GMSH_GET, (yyvsp[(1) - (6)].c), 0, (yyvsp[(3) - (6)].c), d)){ @@ -4420,7 +4419,7 @@ yyreduce: break; case 72: -#line 774 "Gmsh.y" +#line 775 "Gmsh.y" { double d = 0.; if(NumberOption(GMSH_GET, (yyvsp[(1) - (9)].c), (int)(yyvsp[(3) - (9)].d), (yyvsp[(6) - (9)].c), d)){ @@ -4441,7 +4440,7 @@ yyreduce: break; case 73: -#line 792 "Gmsh.y" +#line 793 "Gmsh.y" { double d = 0.; if(NumberOption(GMSH_GET, (yyvsp[(1) - (5)].c), 0, (yyvsp[(3) - (5)].c), d)){ @@ -4453,7 +4452,7 @@ yyreduce: break; case 74: -#line 801 "Gmsh.y" +#line 802 "Gmsh.y" { double d = 0.; if(NumberOption(GMSH_GET, (yyvsp[(1) - (8)].c), (int)(yyvsp[(3) - (8)].d), (yyvsp[(6) - (8)].c), d)){ @@ -4465,7 +4464,7 @@ yyreduce: break; case 75: -#line 813 "Gmsh.y" +#line 814 "Gmsh.y" { ColorOption(GMSH_SET|GMSH_GUI, (yyvsp[(1) - (8)].c), 0, (yyvsp[(5) - (8)].c), (yyvsp[(7) - (8)].u)); Free((yyvsp[(1) - (8)].c)); Free((yyvsp[(5) - (8)].c)); @@ -4473,7 +4472,7 @@ yyreduce: break; case 76: -#line 818 "Gmsh.y" +#line 819 "Gmsh.y" { ColorOption(GMSH_SET|GMSH_GUI, (yyvsp[(1) - (11)].c), (int)(yyvsp[(3) - (11)].d), (yyvsp[(8) - (11)].c), (yyvsp[(10) - (11)].u)); Free((yyvsp[(1) - (11)].c)); Free((yyvsp[(8) - (11)].c)); @@ -4481,7 +4480,7 @@ yyreduce: break; case 77: -#line 826 "Gmsh.y" +#line 827 "Gmsh.y" { GmshColorTable *ct = Get_ColorTable(0); if(!ct) @@ -4504,7 +4503,7 @@ yyreduce: break; case 78: -#line 846 "Gmsh.y" +#line 847 "Gmsh.y" { GmshColorTable *ct = Get_ColorTable((int)(yyvsp[(3) - (9)].d)); if(!ct) @@ -4527,7 +4526,7 @@ yyreduce: break; case 79: -#line 869 "Gmsh.y" +#line 870 "Gmsh.y" { if(!strcmp((yyvsp[(1) - (5)].c),"Background")) GModel::current()->getFields()->background_field = (int)(yyvsp[(4) - (5)].d); @@ -4537,7 +4536,7 @@ yyreduce: break; case 80: -#line 876 "Gmsh.y" +#line 877 "Gmsh.y" { if(!GModel::current()->getFields()->new_field((int)(yyvsp[(3) - (7)].d), (yyvsp[(6) - (7)].c))) yymsg(0, "Cannot create field %i of type '%s'", (int)(yyvsp[(3) - (7)].d), (yyvsp[(6) - (7)].c)); @@ -4546,7 +4545,7 @@ yyreduce: break; case 81: -#line 882 "Gmsh.y" +#line 883 "Gmsh.y" { Field *field = GModel::current()->getFields()->get((int)(yyvsp[(3) - (9)].d)); if(field){ @@ -4569,7 +4568,7 @@ yyreduce: break; case 82: -#line 902 "Gmsh.y" +#line 903 "Gmsh.y" { Field *field = GModel::current()->getFields()->get((int)(yyvsp[(3) - (9)].d)); if(field){ @@ -4593,7 +4592,7 @@ yyreduce: break; case 83: -#line 923 "Gmsh.y" +#line 924 "Gmsh.y" { Field *field = GModel::current()->getFields()->get((int)(yyvsp[(3) - (11)].d)); if(field){ @@ -4619,7 +4618,7 @@ yyreduce: break; case 84: -#line 949 "Gmsh.y" +#line 950 "Gmsh.y" { #if !defined(HAVE_NO_POST) try { @@ -4634,7 +4633,7 @@ yyreduce: break; case 85: -#line 961 "Gmsh.y" +#line 962 "Gmsh.y" { #if !defined(HAVE_NO_POST) try { @@ -4649,14 +4648,14 @@ yyreduce: break; case 86: -#line 978 "Gmsh.y" +#line 979 "Gmsh.y" { (yyval.i) = (int)(yyvsp[(1) - (1)].d); ;} break; case 87: -#line 982 "Gmsh.y" +#line 983 "Gmsh.y" { (yyval.i) = GModel::current()->setPhysicalName (std::string((yyvsp[(1) - (1)].c)), ++GModel::current()->getGEOInternals()->MaxPhysicalNum); @@ -4665,14 +4664,14 @@ yyreduce: break; case 88: -#line 991 "Gmsh.y" +#line 992 "Gmsh.y" { (yyval.l) = 0; ;} break; case 89: -#line 995 "Gmsh.y" +#line 996 "Gmsh.y" { (yyval.l) = List_Create(4, 4, sizeof(double)); Vertex *v = FindPoint((int)(yyvsp[(4) - (5)].d)); @@ -4687,7 +4686,7 @@ yyreduce: break; case 90: -#line 1013 "Gmsh.y" +#line 1014 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); if(FindPoint(num)){ @@ -4713,7 +4712,7 @@ yyreduce: break; case 91: -#line 1036 "Gmsh.y" +#line 1037 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].i); if(FindPhysicalGroup(num, MSH_PHYSICAL_POINT)){ @@ -4732,7 +4731,7 @@ yyreduce: break; case 92: -#line 1052 "Gmsh.y" +#line 1053 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (6)].l)); i++){ double d; @@ -4754,7 +4753,7 @@ yyreduce: break; case 93: -#line 1074 "Gmsh.y" +#line 1075 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); if(FindCurve(num)){ @@ -4775,7 +4774,7 @@ yyreduce: break; case 94: -#line 1092 "Gmsh.y" +#line 1093 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); if(FindCurve(num)){ @@ -4796,7 +4795,7 @@ yyreduce: break; case 95: -#line 1110 "Gmsh.y" +#line 1111 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); if(FindCurve(num)){ @@ -4817,7 +4816,7 @@ yyreduce: break; case 96: -#line 1128 "Gmsh.y" +#line 1129 "Gmsh.y" { int num = (int)(yyvsp[(3) - (9)].d); if(FindCurve(num)){ @@ -4846,7 +4845,7 @@ yyreduce: break; case 97: -#line 1154 "Gmsh.y" +#line 1155 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); if(FindCurve(num)){ @@ -4867,7 +4866,7 @@ yyreduce: break; case 98: -#line 1172 "Gmsh.y" +#line 1173 "Gmsh.y" { int num = (int)(yyvsp[(3) - (9)].d); if(FindCurve(num)){ @@ -4896,7 +4895,7 @@ yyreduce: break; case 99: -#line 1199 "Gmsh.y" +#line 1200 "Gmsh.y" { int num = (int)(yyvsp[(3) - (17)].d); if(FindCurve(num)){ @@ -4918,7 +4917,7 @@ yyreduce: break; case 100: -#line 1218 "Gmsh.y" +#line 1219 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); if(FindCurve(num)){ @@ -4939,7 +4938,7 @@ yyreduce: break; case 101: -#line 1236 "Gmsh.y" +#line 1237 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); if(FindCurve(num)){ @@ -4960,7 +4959,7 @@ yyreduce: break; case 102: -#line 1254 "Gmsh.y" +#line 1255 "Gmsh.y" { int num = (int)(yyvsp[(3) - (11)].d); if(List_Nbr((yyvsp[(6) - (11)].l)) + (int)(yyvsp[(10) - (11)].d) + 1 != List_Nbr((yyvsp[(8) - (11)].l))){ @@ -4989,7 +4988,7 @@ yyreduce: break; case 103: -#line 1280 "Gmsh.y" +#line 1281 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].d); if(FindEdgeLoop(num)){ @@ -5009,7 +5008,7 @@ yyreduce: break; case 104: -#line 1297 "Gmsh.y" +#line 1298 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].i); if(FindPhysicalGroup(num, MSH_PHYSICAL_LINE)){ @@ -5028,7 +5027,7 @@ yyreduce: break; case 105: -#line 1316 "Gmsh.y" +#line 1317 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].d); if(FindSurface(num)){ @@ -5049,7 +5048,7 @@ yyreduce: break; case 106: -#line 1334 "Gmsh.y" +#line 1335 "Gmsh.y" { int num = (int)(yyvsp[(4) - (9)].d), type = 0; if(FindSurface(num)){ @@ -5091,7 +5090,7 @@ yyreduce: break; case 107: -#line 1373 "Gmsh.y" +#line 1374 "Gmsh.y" { myGmshSurface = 0; (yyval.s).Type = 0; @@ -5100,7 +5099,7 @@ yyreduce: break; case 108: -#line 1379 "Gmsh.y" +#line 1380 "Gmsh.y" { myGmshSurface = gmshSurface::getSurface((int)(yyvsp[(3) - (4)].d)); (yyval.s).Type = 0; @@ -5109,7 +5108,7 @@ yyreduce: break; case 109: -#line 1385 "Gmsh.y" +#line 1386 "Gmsh.y" { int num = (int)(yyvsp[(4) - (10)].d); myGmshSurface = gmshParametricSurface::NewParametricSurface(num, (yyvsp[(7) - (10)].c), (yyvsp[(8) - (10)].c), (yyvsp[(9) - (10)].c)); @@ -5119,7 +5118,7 @@ yyreduce: break; case 110: -#line 1392 "Gmsh.y" +#line 1393 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); if (List_Nbr((yyvsp[(6) - (7)].l)) != 2){ @@ -5147,7 +5146,7 @@ yyreduce: break; case 111: -#line 1417 "Gmsh.y" +#line 1418 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); if (List_Nbr((yyvsp[(6) - (7)].l)) != 2){ @@ -5175,7 +5174,7 @@ yyreduce: break; case 112: -#line 1442 "Gmsh.y" +#line 1443 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].d); if(FindSurfaceLoop(num)){ @@ -5194,7 +5193,7 @@ yyreduce: break; case 113: -#line 1458 "Gmsh.y" +#line 1459 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].i); if(FindPhysicalGroup(num, MSH_PHYSICAL_SURFACE)){ @@ -5213,7 +5212,7 @@ yyreduce: break; case 114: -#line 1478 "Gmsh.y" +#line 1479 "Gmsh.y" { yymsg(0, "'Complex Volume' command is deprecated: use 'Volume' instead"); int num = (int)(yyvsp[(4) - (8)].d); @@ -5234,7 +5233,7 @@ yyreduce: break; case 115: -#line 1496 "Gmsh.y" +#line 1497 "Gmsh.y" { int num = (int)(yyvsp[(3) - (7)].d); if(FindVolume(num)){ @@ -5254,7 +5253,7 @@ yyreduce: break; case 116: -#line 1513 "Gmsh.y" +#line 1514 "Gmsh.y" { int num = (int)(yyvsp[(4) - (8)].i); if(FindPhysicalGroup(num, MSH_PHYSICAL_VOLUME)){ @@ -5273,7 +5272,7 @@ yyreduce: break; case 117: -#line 1534 "Gmsh.y" +#line 1535 "Gmsh.y" { TranslateShapes((yyvsp[(2) - (5)].v)[0], (yyvsp[(2) - (5)].v)[1], (yyvsp[(2) - (5)].v)[2], (yyvsp[(4) - (5)].l)); (yyval.l) = (yyvsp[(4) - (5)].l); @@ -5281,7 +5280,7 @@ yyreduce: break; case 118: -#line 1539 "Gmsh.y" +#line 1540 "Gmsh.y" { RotateShapes((yyvsp[(3) - (11)].v)[0], (yyvsp[(3) - (11)].v)[1], (yyvsp[(3) - (11)].v)[2], (yyvsp[(5) - (11)].v)[0], (yyvsp[(5) - (11)].v)[1], (yyvsp[(5) - (11)].v)[2], (yyvsp[(7) - (11)].d), (yyvsp[(10) - (11)].l)); (yyval.l) = (yyvsp[(10) - (11)].l); @@ -5289,7 +5288,7 @@ yyreduce: break; case 119: -#line 1544 "Gmsh.y" +#line 1545 "Gmsh.y" { SymmetryShapes((yyvsp[(2) - (5)].v)[0], (yyvsp[(2) - (5)].v)[1], (yyvsp[(2) - (5)].v)[2], (yyvsp[(2) - (5)].v)[3], (yyvsp[(4) - (5)].l)); (yyval.l) = (yyvsp[(4) - (5)].l); @@ -5297,7 +5296,7 @@ yyreduce: break; case 120: -#line 1549 "Gmsh.y" +#line 1550 "Gmsh.y" { DilatShapes((yyvsp[(3) - (9)].v)[0], (yyvsp[(3) - (9)].v)[1], (yyvsp[(3) - (9)].v)[2], (yyvsp[(5) - (9)].d), (yyvsp[(8) - (9)].l)); (yyval.l) = (yyvsp[(8) - (9)].l); @@ -5305,7 +5304,7 @@ yyreduce: break; case 121: -#line 1554 "Gmsh.y" +#line 1555 "Gmsh.y" { (yyval.l) = List_Create(3, 3, sizeof(Shape)); if(!strcmp((yyvsp[(1) - (4)].c), "Duplicata")){ @@ -5328,7 +5327,7 @@ yyreduce: break; case 122: -#line 1574 "Gmsh.y" +#line 1575 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); IntersectCurvesWithSurface((yyvsp[(4) - (9)].l), (int)(yyvsp[(8) - (9)].d), (yyval.l)); @@ -5337,7 +5336,7 @@ yyreduce: break; case 123: -#line 1580 "Gmsh.y" +#line 1581 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape*)); List_T *tmp=ListOfDouble2ListOfInt((yyvsp[(7) - (9)].l)); @@ -5348,31 +5347,31 @@ yyreduce: break; case 124: -#line 1590 "Gmsh.y" +#line 1591 "Gmsh.y" { (yyval.l) = (yyvsp[(1) - (1)].l); ;} break; case 125: -#line 1591 "Gmsh.y" +#line 1592 "Gmsh.y" { (yyval.l) = (yyvsp[(1) - (1)].l); ;} break; case 126: -#line 1596 "Gmsh.y" +#line 1597 "Gmsh.y" { (yyval.l) = List_Create(3, 3, sizeof(Shape)); ;} break; case 127: -#line 1600 "Gmsh.y" +#line 1601 "Gmsh.y" { List_Add((yyval.l), &(yyvsp[(2) - (2)].s)); ;} break; case 128: -#line 1604 "Gmsh.y" +#line 1605 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){ double d; @@ -5398,7 +5397,7 @@ yyreduce: break; case 129: -#line 1627 "Gmsh.y" +#line 1628 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){ double d; @@ -5424,7 +5423,7 @@ yyreduce: break; case 130: -#line 1650 "Gmsh.y" +#line 1651 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){ double d; @@ -5450,7 +5449,7 @@ yyreduce: break; case 131: -#line 1673 "Gmsh.y" +#line 1674 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(4) - (6)].l)); i++){ double d; @@ -5476,7 +5475,7 @@ yyreduce: break; case 132: -#line 1701 "Gmsh.y" +#line 1702 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ Shape TheShape; @@ -5488,14 +5487,14 @@ yyreduce: break; case 133: -#line 1710 "Gmsh.y" +#line 1711 "Gmsh.y" { GModel::current()->getFields()->delete_field((int)(yyvsp[(4) - (6)].d)); ;} break; case 134: -#line 1714 "Gmsh.y" +#line 1715 "Gmsh.y" { #if !defined(HAVE_NO_POST) if(!strcmp((yyvsp[(2) - (6)].c), "View")){ @@ -5513,7 +5512,7 @@ yyreduce: break; case 135: -#line 1729 "Gmsh.y" +#line 1730 "Gmsh.y" { if(!strcmp((yyvsp[(2) - (3)].c), "Model") || !strcmp((yyvsp[(2) - (3)].c), "Meshes") || !strcmp((yyvsp[(2) - (3)].c), "All")){ GModel::current()->destroy(); @@ -5537,7 +5536,7 @@ yyreduce: break; case 136: -#line 1750 "Gmsh.y" +#line 1751 "Gmsh.y" { #if !defined(HAVE_NO_POST) if(!strcmp((yyvsp[(2) - (4)].c), "Empty") && !strcmp((yyvsp[(3) - (4)].c), "Views")){ @@ -5552,7 +5551,7 @@ yyreduce: break; case 137: -#line 1767 "Gmsh.y" +#line 1768 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(4) - (5)].l)); i++){ Shape TheShape; @@ -5564,7 +5563,7 @@ yyreduce: break; case 138: -#line 1781 "Gmsh.y" +#line 1782 "Gmsh.y" { for(int i = 0; i < 4; i++) VisibilityShape((yyvsp[(2) - (3)].c), i, 1); @@ -5573,7 +5572,7 @@ yyreduce: break; case 139: -#line 1787 "Gmsh.y" +#line 1788 "Gmsh.y" { for(int i = 0; i < 4; i++) VisibilityShape((yyvsp[(2) - (3)].c), i, 0); @@ -5582,7 +5581,7 @@ yyreduce: break; case 140: -#line 1793 "Gmsh.y" +#line 1794 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ Shape TheShape; @@ -5594,7 +5593,7 @@ yyreduce: break; case 141: -#line 1802 "Gmsh.y" +#line 1803 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ Shape TheShape; @@ -5606,7 +5605,7 @@ yyreduce: break; case 142: -#line 1816 "Gmsh.y" +#line 1817 "Gmsh.y" { if(!strcmp((yyvsp[(1) - (3)].c), "Include")){ char tmpstring[1024]; @@ -5657,7 +5656,7 @@ yyreduce: break; case 143: -#line 1864 "Gmsh.y" +#line 1865 "Gmsh.y" { #if !defined(HAVE_NO_POST) if(!strcmp((yyvsp[(1) - (7)].c), "Save") && !strcmp((yyvsp[(2) - (7)].c), "View")){ @@ -5678,7 +5677,7 @@ yyreduce: break; case 144: -#line 1882 "Gmsh.y" +#line 1883 "Gmsh.y" { #if !defined(HAVE_NO_POST) if(!strcmp((yyvsp[(1) - (7)].c), "Background") && !strcmp((yyvsp[(2) - (7)].c), "Mesh") && !strcmp((yyvsp[(3) - (7)].c), "View")){ @@ -5696,7 +5695,7 @@ yyreduce: break; case 145: -#line 1897 "Gmsh.y" +#line 1898 "Gmsh.y" { if(!strcmp((yyvsp[(1) - (3)].c), "Sleep")){ SleepInSeconds((yyvsp[(2) - (3)].d)); @@ -5718,7 +5717,7 @@ yyreduce: break; case 146: -#line 1916 "Gmsh.y" +#line 1917 "Gmsh.y" { #if !defined(HAVE_NO_POST) try { @@ -5733,7 +5732,7 @@ yyreduce: break; case 147: -#line 1928 "Gmsh.y" +#line 1929 "Gmsh.y" { #if !defined(HAVE_NO_POST) if(!strcmp((yyvsp[(2) - (3)].c), "ElementsFromAllViews")) @@ -5760,14 +5759,14 @@ yyreduce: break; case 148: -#line 1952 "Gmsh.y" +#line 1953 "Gmsh.y" { exit(0); ;} break; case 149: -#line 1956 "Gmsh.y" +#line 1957 "Gmsh.y" { CTX.forced_bbox = 0; SetBoundingBox(); @@ -5775,7 +5774,7 @@ yyreduce: break; case 150: -#line 1961 "Gmsh.y" +#line 1962 "Gmsh.y" { CTX.forced_bbox = 1; SetBoundingBox((yyvsp[(3) - (15)].d), (yyvsp[(5) - (15)].d), (yyvsp[(7) - (15)].d), (yyvsp[(9) - (15)].d), (yyvsp[(11) - (15)].d), (yyvsp[(13) - (15)].d)); @@ -5783,7 +5782,7 @@ yyreduce: break; case 151: -#line 1966 "Gmsh.y" +#line 1967 "Gmsh.y" { #if defined(HAVE_FLTK) Draw(); @@ -5792,7 +5791,7 @@ yyreduce: break; case 152: -#line 1978 "Gmsh.y" +#line 1979 "Gmsh.y" { LoopControlVariablesTab[ImbricatedLoop][0] = (yyvsp[(3) - (6)].d); LoopControlVariablesTab[ImbricatedLoop][1] = (yyvsp[(5) - (6)].d); @@ -5812,7 +5811,7 @@ yyreduce: break; case 153: -#line 1995 "Gmsh.y" +#line 1996 "Gmsh.y" { LoopControlVariablesTab[ImbricatedLoop][0] = (yyvsp[(3) - (8)].d); LoopControlVariablesTab[ImbricatedLoop][1] = (yyvsp[(5) - (8)].d); @@ -5832,7 +5831,7 @@ yyreduce: break; case 154: -#line 2012 "Gmsh.y" +#line 2013 "Gmsh.y" { LoopControlVariablesTab[ImbricatedLoop][0] = (yyvsp[(5) - (8)].d); LoopControlVariablesTab[ImbricatedLoop][1] = (yyvsp[(7) - (8)].d); @@ -5854,7 +5853,7 @@ yyreduce: break; case 155: -#line 2031 "Gmsh.y" +#line 2032 "Gmsh.y" { LoopControlVariablesTab[ImbricatedLoop][0] = (yyvsp[(5) - (10)].d); LoopControlVariablesTab[ImbricatedLoop][1] = (yyvsp[(7) - (10)].d); @@ -5876,7 +5875,7 @@ yyreduce: break; case 156: -#line 2050 "Gmsh.y" +#line 2051 "Gmsh.y" { if(ImbricatedLoop <= 0){ yymsg(0, "Invalid For/EndFor loop"); @@ -5907,7 +5906,7 @@ yyreduce: break; case 157: -#line 2078 "Gmsh.y" +#line 2079 "Gmsh.y" { if(!FunctionManager::Instance()->createFunction((yyvsp[(2) - (2)].c), gmsh_yyin, gmsh_yyname, gmsh_yylineno)) @@ -5918,7 +5917,7 @@ yyreduce: break; case 158: -#line 2086 "Gmsh.y" +#line 2087 "Gmsh.y" { if(!FunctionManager::Instance()->leaveFunction(&gmsh_yyin, gmsh_yyname, gmsh_yylineno)) @@ -5927,7 +5926,7 @@ yyreduce: break; case 159: -#line 2092 "Gmsh.y" +#line 2093 "Gmsh.y" { if(!FunctionManager::Instance()->enterFunction((yyvsp[(2) - (3)].c), &gmsh_yyin, gmsh_yyname, gmsh_yylineno)) @@ -5937,20 +5936,20 @@ yyreduce: break; case 160: -#line 2099 "Gmsh.y" +#line 2100 "Gmsh.y" { if(!(yyvsp[(3) - (4)].d)) skip_until("If", "EndIf"); ;} break; case 161: -#line 2103 "Gmsh.y" +#line 2104 "Gmsh.y" { ;} break; case 162: -#line 2112 "Gmsh.y" +#line 2113 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShapes(TRANSLATE, (yyvsp[(4) - (5)].l), @@ -5961,7 +5960,7 @@ yyreduce: break; case 163: -#line 2120 "Gmsh.y" +#line 2121 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShapes(ROTATE, (yyvsp[(10) - (11)].l), @@ -5972,7 +5971,7 @@ yyreduce: break; case 164: -#line 2128 "Gmsh.y" +#line 2129 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShapes(TRANSLATE_ROTATE, (yyvsp[(12) - (13)].l), @@ -5983,14 +5982,14 @@ yyreduce: break; case 165: -#line 2136 "Gmsh.y" +#line 2137 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 166: -#line 2140 "Gmsh.y" +#line 2141 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShapes(TRANSLATE, (yyvsp[(4) - (7)].l), @@ -6001,14 +6000,14 @@ yyreduce: break; case 167: -#line 2148 "Gmsh.y" +#line 2149 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 168: -#line 2152 "Gmsh.y" +#line 2153 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShapes(ROTATE, (yyvsp[(10) - (13)].l), @@ -6019,14 +6018,14 @@ yyreduce: break; case 169: -#line 2160 "Gmsh.y" +#line 2161 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 170: -#line 2164 "Gmsh.y" +#line 2165 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShapes(TRANSLATE_ROTATE, (yyvsp[(12) - (15)].l), @@ -6037,14 +6036,14 @@ yyreduce: break; case 171: -#line 2172 "Gmsh.y" +#line 2173 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 172: -#line 2176 "Gmsh.y" +#line 2177 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShapes(BOUNDARY_LAYER, (yyvsp[(3) - (6)].l), 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., @@ -6054,7 +6053,7 @@ yyreduce: break; case 173: -#line 2185 "Gmsh.y" +#line 2186 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE, MSH_POINT, (int)(yyvsp[(4) - (8)].d), @@ -6064,7 +6063,7 @@ yyreduce: break; case 174: -#line 2192 "Gmsh.y" +#line 2193 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (8)].d), @@ -6074,7 +6073,7 @@ yyreduce: break; case 175: -#line 2199 "Gmsh.y" +#line 2200 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (8)].d), @@ -6084,7 +6083,7 @@ yyreduce: break; case 176: -#line 2206 "Gmsh.y" +#line 2207 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(ROTATE, MSH_POINT, (int)(yyvsp[(4) - (12)].d), @@ -6094,7 +6093,7 @@ yyreduce: break; case 177: -#line 2213 "Gmsh.y" +#line 2214 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (12)].d), @@ -6104,7 +6103,7 @@ yyreduce: break; case 178: -#line 2220 "Gmsh.y" +#line 2221 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (12)].d), @@ -6114,7 +6113,7 @@ yyreduce: break; case 179: -#line 2227 "Gmsh.y" +#line 2228 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE_ROTATE, MSH_POINT, (int)(yyvsp[(4) - (14)].d), @@ -6124,7 +6123,7 @@ yyreduce: break; case 180: -#line 2234 "Gmsh.y" +#line 2235 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE_ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (14)].d), @@ -6134,7 +6133,7 @@ yyreduce: break; case 181: -#line 2241 "Gmsh.y" +#line 2242 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE_ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (14)].d), @@ -6144,14 +6143,14 @@ yyreduce: break; case 182: -#line 2248 "Gmsh.y" +#line 2249 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 183: -#line 2252 "Gmsh.y" +#line 2253 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE, MSH_POINT, (int)(yyvsp[(4) - (12)].d), @@ -6161,14 +6160,14 @@ yyreduce: break; case 184: -#line 2259 "Gmsh.y" +#line 2260 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 185: -#line 2263 "Gmsh.y" +#line 2264 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (12)].d), @@ -6178,14 +6177,14 @@ yyreduce: break; case 186: -#line 2270 "Gmsh.y" +#line 2271 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 187: -#line 2274 "Gmsh.y" +#line 2275 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (12)].d), @@ -6195,14 +6194,14 @@ yyreduce: break; case 188: -#line 2281 "Gmsh.y" +#line 2282 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 189: -#line 2285 "Gmsh.y" +#line 2286 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(ROTATE, MSH_POINT, (int)(yyvsp[(4) - (16)].d), @@ -6212,14 +6211,14 @@ yyreduce: break; case 190: -#line 2292 "Gmsh.y" +#line 2293 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 191: -#line 2296 "Gmsh.y" +#line 2297 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (16)].d), @@ -6229,14 +6228,14 @@ yyreduce: break; case 192: -#line 2303 "Gmsh.y" +#line 2304 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 193: -#line 2307 "Gmsh.y" +#line 2308 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (16)].d), @@ -6246,14 +6245,14 @@ yyreduce: break; case 194: -#line 2314 "Gmsh.y" +#line 2315 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 195: -#line 2318 "Gmsh.y" +#line 2319 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE_ROTATE, MSH_POINT, (int)(yyvsp[(4) - (18)].d), @@ -6263,14 +6262,14 @@ yyreduce: break; case 196: -#line 2325 "Gmsh.y" +#line 2326 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 197: -#line 2329 "Gmsh.y" +#line 2330 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE_ROTATE, MSH_SEGM_LINE, (int)(yyvsp[(4) - (18)].d), @@ -6280,14 +6279,14 @@ yyreduce: break; case 198: -#line 2336 "Gmsh.y" +#line 2337 "Gmsh.y" { extr.mesh.ExtrudeMesh = extr.mesh.Recombine = false; ;} break; case 199: -#line 2340 "Gmsh.y" +#line 2341 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(Shape)); ExtrudeShape(TRANSLATE_ROTATE, MSH_SURF_PLAN, (int)(yyvsp[(4) - (18)].d), @@ -6297,19 +6296,19 @@ yyreduce: break; case 200: -#line 2351 "Gmsh.y" +#line 2352 "Gmsh.y" { ;} break; case 201: -#line 2354 "Gmsh.y" +#line 2355 "Gmsh.y" { ;} break; case 202: -#line 2360 "Gmsh.y" +#line 2361 "Gmsh.y" { extr.mesh.ExtrudeMesh = true; extr.mesh.NbLayer = 1; @@ -6321,7 +6320,7 @@ yyreduce: break; case 203: -#line 2369 "Gmsh.y" +#line 2370 "Gmsh.y" { extr.mesh.ExtrudeMesh = true; extr.mesh.NbLayer = List_Nbr((yyvsp[(3) - (7)].l)); @@ -6344,7 +6343,7 @@ yyreduce: break; case 204: -#line 2389 "Gmsh.y" +#line 2390 "Gmsh.y" { yymsg(0, "Explicit region numbers in layers are deprecated"); extr.mesh.ExtrudeMesh = true; @@ -6370,14 +6369,14 @@ yyreduce: break; case 205: -#line 2412 "Gmsh.y" +#line 2413 "Gmsh.y" { extr.mesh.Recombine = true; ;} break; case 206: -#line 2416 "Gmsh.y" +#line 2417 "Gmsh.y" { int num = (int)(yyvsp[(3) - (9)].d); if(FindSurface(num)){ @@ -6401,176 +6400,180 @@ yyreduce: case 207: #line 2440 "Gmsh.y" { - for(int i = 0; i < List_Nbr((yyvsp[(3) - (6)].l)); i++){ - double d; - List_Read((yyvsp[(3) - (6)].l), i, &d); - int j = (int)fabs(d); - Curve *c = FindCurve(j); - if(!c) - yymsg(1, "Unknown curve %d", j); - else{ - c->Method = MESH_TRANSFINITE; - c->nbPointsTransfinite = ((yyvsp[(5) - (6)].d) > 2) ? (int)(yyvsp[(5) - (6)].d) : 2; - c->typeTransfinite = sign(d); - c->coeffTransfinite = 1.0; - } - } - List_Delete((yyvsp[(3) - (6)].l)); + (yyval.v)[0] = (yyval.v)[1] = 1.; ;} break; case 208: -#line 2458 "Gmsh.y" +#line 2444 "Gmsh.y" { - for(int i = 0; i < List_Nbr((yyvsp[(3) - (9)].l)); i++){ - double d; - List_Read((yyvsp[(3) - (9)].l), i, &d); - int j = (int)fabs(d); - Curve *c = FindCurve(j); - if(!c) - yymsg(1, "Unknown curve %d", j); - else{ - c->Method = MESH_TRANSFINITE; - c->nbPointsTransfinite = ((yyvsp[(5) - (9)].d) > 2) ? (int)(yyvsp[(5) - (9)].d) : 2; - c->typeTransfinite = sign(d); // Progresion : code 1 ou -1 - c->coeffTransfinite = fabs((yyvsp[(8) - (9)].d)); - } + if(!strcmp((yyvsp[(2) - (3)].c), "Progression") || !strcmp((yyvsp[(2) - (3)].c), "Power")) + (yyval.v)[0] = 1.; + else if(!strcmp((yyvsp[(2) - (3)].c), "Bump")) + (yyval.v)[0] = 2.; + else{ + yymsg(0, "Unknown transfinite mesh type"); + (yyval.v)[0] = 1.; } - List_Delete((yyvsp[(3) - (9)].l)); + (yyval.v)[1] = (yyvsp[(3) - (3)].d); + Free((yyvsp[(2) - (3)].c)); ;} break; case 209: +#line 2459 "Gmsh.y" + { + (yyval.i) = -1; // left + ;} + break; + + case 210: +#line 2463 "Gmsh.y" + { + if(!strcmp((yyvsp[(1) - (1)].c), "Right")) + (yyval.i) = 1; + else if(!strcmp((yyvsp[(1) - (1)].c), "Left")) + (yyval.i) = -1; + else // alternated + (yyval.i) = 0; + Free((yyvsp[(1) - (1)].c)); + ;} + break; + + case 211: #line 2476 "Gmsh.y" { - for(int i = 0; i < List_Nbr((yyvsp[(3) - (9)].l)); i++){ + int type = (int)(yyvsp[(6) - (7)].v)[0]; + double coef = fabs((yyvsp[(6) - (7)].v)[1]); + for(int i = 0; i < List_Nbr((yyvsp[(3) - (7)].l)); i++){ double d; - List_Read((yyvsp[(3) - (9)].l), i, &d); + List_Read((yyvsp[(3) - (7)].l), i, &d); int j = (int)fabs(d); Curve *c = FindCurve(j); - if(!c) - yymsg(1, "Unknown curve %d", j); - else{ + if(c){ c->Method = MESH_TRANSFINITE; - c->nbPointsTransfinite = ((yyvsp[(5) - (9)].d) > 2) ? (int)(yyvsp[(5) - (9)].d) : 2; - c->typeTransfinite = 2 * sign(d); // Bump : code 2 ou -2 - c->coeffTransfinite = fabs((yyvsp[(8) - (9)].d)); + c->nbPointsTransfinite = ((yyvsp[(5) - (7)].d) > 2) ? (int)(yyvsp[(5) - (7)].d) : 2; + c->typeTransfinite = type * sign(d); + c->coeffTransfinite = coef; } + else{ + GEdge *ge = GModel::current()->getEdgeByTag(j); + if(ge){ + ge->meshAttributes.Method = MESH_TRANSFINITE; + ge->meshAttributes.nbPointsTransfinite = ((yyvsp[(5) - (7)].d) > 2) ? (int)(yyvsp[(5) - (7)].d) : 2; + ge->meshAttributes.typeTransfinite = sign(d); + ge->meshAttributes.coeffTransfinite = 1.; + } + else + yymsg(0, "Unknown line %d", j); + } } - List_Delete((yyvsp[(3) - (9)].l)); + List_Delete((yyvsp[(3) - (7)].l)); ;} break; - case 210: -#line 2494 "Gmsh.y" + case 212: +#line 2505 "Gmsh.y" { - Surface *s = FindSurface((int)(yyvsp[(4) - (8)].d)); - if(!s) - yymsg(1, "Unknown surface %d", (int)(yyvsp[(4) - (8)].d)); - else{ - s->Method = MESH_TRANSFINITE; - s->Recombine_Dir = -1; - int k = List_Nbr((yyvsp[(7) - (8)].l)); - if(k != 3 && k != 4){ - yymsg(0, "Wrong definition of Transfinite Surface %d: " - "%d points instead of 3 or 4" , (int)(yyvsp[(4) - (8)].d), k); - } - else{ - List_Reset(s->TrsfPoints); - for(int i = 0; i < k; i++){ - double d; - List_Read((yyvsp[(7) - (8)].l), i, &d); - int j = (int)fabs(d); - Vertex *v = FindPoint(j); - if(!v) - yymsg(1, "Unknown point %d", j); - else - List_Add(s->TrsfPoints, &v); - } - } + int k = List_Nbr((yyvsp[(7) - (9)].l)); + if(k != 3 && k != 4){ + yymsg(0, "Wrong definition of Transfinite Surface %d: " + "%d points instead of 3 or 4" , (int)(yyvsp[(4) - (9)].d), k); } - List_Delete((yyvsp[(7) - (8)].l)); - ;} - break; - - case 211: -#line 2523 "Gmsh.y" - { - Surface *s = FindSurface((int)(yyvsp[(4) - (9)].d)); - if(!s) - yymsg(1, "Unknown surface %d", (int)(yyvsp[(4) - (9)].d)); else{ - s->Method = MESH_TRANSFINITE; - int k = List_Nbr((yyvsp[(7) - (9)].l)); - if(k != 3 && k != 4){ - yymsg(0, "Wrong definition of Transfinite Surface %d: " - "%d points instead of 3 or 4" , (int)(yyvsp[(4) - (9)].d), k); - } - else{ + Surface *s = FindSurface((int)(yyvsp[(4) - (9)].d)); + if(s){ + s->Method = MESH_TRANSFINITE; + s->Recombine_Dir = (yyvsp[(8) - (9)].i); List_Reset(s->TrsfPoints); - if (!strcmp((yyvsp[(8) - (9)].c), "Right")) - s->Recombine_Dir = 1; - else if (!strcmp((yyvsp[(8) - (9)].c), "Left")) - s->Recombine_Dir = -1; - else - s->Recombine_Dir = 0; for(int i = 0; i < k; i++){ double d; List_Read((yyvsp[(7) - (9)].l), i, &d); - int j = (int)fabs(d); - Vertex *v = FindPoint(j); - if(!v) - yymsg(1, "Unknown point %d", j); - else + Vertex *v = FindPoint((int)fabs(d)); + if(v) List_Add(s->TrsfPoints, &v); + else + yymsg(0, "Unknown point %d", (int)fabs(d)); } } + else{ + GFace *gf = GModel::current()->getFaceByTag((int)(yyvsp[(4) - (9)].d)); + if(gf){ + gf->meshAttributes.Method = MESH_TRANSFINITE; + gf->meshAttributes.transfiniteArrangement = (yyvsp[(8) - (9)].i); + for(int i = 0; i < k; i++){ + double d; + List_Read((yyvsp[(7) - (9)].l), i, &d); + GVertex *gv = GModel::current()->getVertexByTag((int)fabs(d)); + if(gv) + gf->meshAttributes.corners.push_back(gv); + else + yymsg(0, "Unknown point %d", (int)fabs(d)); + } + } + else + yymsg(0, "Unknown surface %d", (int)(yyvsp[(4) - (9)].d)); + } } List_Delete((yyvsp[(7) - (9)].l)); - Free((yyvsp[(8) - (9)].c)); ;} break; - case 212: -#line 2558 "Gmsh.y" + case 213: +#line 2549 "Gmsh.y" { yymsg(1, "Elliptic Surface is deprecated: use Transfinite instead (with smoothing)"); List_Delete((yyvsp[(7) - (8)].l)); ;} break; - case 213: -#line 2563 "Gmsh.y" + case 214: +#line 2554 "Gmsh.y" { - Volume *v = FindVolume((int)(yyvsp[(4) - (8)].d)); - if(!v) - yymsg(1, "Unknown volume %d", (int)(yyvsp[(4) - (8)].d)); + int k = List_Nbr((yyvsp[(7) - (8)].l)); + if(k != 6 && k != 8){ + yymsg(0, "Wrong definition of Transfinite Volume %d: " + "%d points instead of 6 or 8" , (int)(yyvsp[(4) - (8)].d), k); + } else{ - v->Method = MESH_TRANSFINITE; - int k = List_Nbr((yyvsp[(7) - (8)].l)); - if(k != 6 && k != 8) - yymsg(0, "Wrong definition of Transfinite Volume %d: " - "%d points instead of 6 or 8" , (int)(yyvsp[(4) - (8)].d), k); - else{ + Volume *v = FindVolume((int)(yyvsp[(4) - (8)].d)); + if(v){ + v->Method = MESH_TRANSFINITE; List_Reset(v->TrsfPoints); for(int i = 0; i < k; i++){ double d; List_Read((yyvsp[(7) - (8)].l), i, &d); - int j = (int)fabs(d); - Vertex *vert = FindPoint(j); - if(!vert) - yymsg(1, "Unknown point %d", j); - else + Vertex *vert = FindPoint((int)fabs(d)); + if(vert) List_Add(v->TrsfPoints, &vert); + else + yymsg(0, "Unknown point %d", (int)fabs(d)); } } + else{ + GRegion *gr = GModel::current()->getRegionByTag((int)(yyvsp[(4) - (8)].d)); + if(gr){ + gr->meshAttributes.Method = MESH_TRANSFINITE; + for(int i = 0; i < k; i++){ + double d; + List_Read((yyvsp[(7) - (8)].l), i, &d); + GVertex *gv = GModel::current()->getVertexByTag((int)fabs(d)); + if(gv) + gr->meshAttributes.corners.push_back(gv); + else + yymsg(0, "Unknown point %d", (int)fabs(d)); + } + } + else + yymsg(0, "Unknown volume %d", (int)(yyvsp[(4) - (8)].d)); + } } List_Delete((yyvsp[(7) - (8)].l)); ;} break; - case 214: -#line 2590 "Gmsh.y" + case 215: +#line 2596 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (6)].l)); i++){ double d; @@ -6581,13 +6584,22 @@ yyreduce: s->Recombine = 1; s->RecombineAngle = (yyvsp[(5) - (6)].d); } + else{ + GFace *gf = GModel::current()->getFaceByTag(j); + if(gf){ + gf->meshAttributes.recombine = 1; + gf->meshAttributes.recombineAngle = (yyvsp[(5) - (6)].d); + } + else + yymsg(1, "Unknown surface %d", j); + } } List_Delete((yyvsp[(3) - (6)].l)); ;} break; - case 215: -#line 2604 "Gmsh.y" + case 216: +#line 2619 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (4)].l)); i++){ double d; @@ -6597,64 +6609,114 @@ yyreduce: if(s){ s->Recombine = 1; } + else{ + GFace *gf = GModel::current()->getFaceByTag(j); + if(gf) + gf->meshAttributes.recombine = 1; + else + yymsg(1, "Unknown surface %d", j); + } } List_Delete((yyvsp[(3) - (4)].l)); ;} break; - case 216: -#line 2617 "Gmsh.y" + case 217: +#line 2639 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (6)].l)); i++){ double d; List_Read((yyvsp[(3) - (6)].l), i, &d); int j = (int)d; Surface *s = FindSurface(j); - if(s) s->TransfiniteSmoothing = (int)(yyvsp[(5) - (6)].d); + if(s){ + s->TransfiniteSmoothing = (int)(yyvsp[(5) - (6)].d); + } + else{ + GFace *gf = GModel::current()->getFaceByTag(j); + if(gf) + gf->meshAttributes.transfiniteSmoothing = (int)(yyvsp[(5) - (6)].d); + else + yymsg(1, "Unknown surface %d", (int)(yyvsp[(5) - (6)].d)); + } } List_Delete((yyvsp[(3) - (6)].l)); ;} break; - case 217: -#line 2634 "Gmsh.y" + case 218: +#line 2665 "Gmsh.y" { Surface *s = FindSurface((int)(yyvsp[(8) - (10)].d)); - if(s) + if(s){ setSurfaceEmbeddedPoints(s, (yyvsp[(3) - (10)].l)); + } + else{ + GFace *gf = GModel::current()->getFaceByTag((int)(yyvsp[(8) - (10)].d)); + if(gf){ + for(int i = 0; i < List_Nbr((yyvsp[(3) - (10)].l)); i++){ + int iPoint; + List_Read((yyvsp[(3) - (10)].l), i, &iPoint); + GVertex *gv = GModel::current()->getVertexByTag(iPoint); + if(gv) + gf->addEmbeddedVertex(gv); + else + yymsg(0, "Unknown point %d", iPoint); + } + } + else + yymsg(0, "Unknown surface %d", (int)(yyvsp[(8) - (10)].d)); + } ;} break; - case 218: -#line 2640 "Gmsh.y" + case 219: +#line 2688 "Gmsh.y" { Surface *s = FindSurface((int)(yyvsp[(8) - (10)].d)); - if(s) + if(s){ setSurfaceEmbeddedCurves(s, (yyvsp[(3) - (10)].l)); + } + else{ + GFace *gf = GModel::current()->getFaceByTag((int)(yyvsp[(8) - (10)].d)); + if(gf){ + for(int i = 0; i < List_Nbr((yyvsp[(3) - (10)].l)); i++){ + int iCurve; + List_Read((yyvsp[(3) - (10)].l), i, &iCurve); + GEdge *ge = GModel::current()->getEdgeByTag(iCurve); + if(ge) + gf->addEmbeddedEdge(ge); + else + yymsg(0, "Unknown line %d", iCurve); + } + } + else + yymsg(0, "Unknown surface %d", (int)(yyvsp[(8) - (10)].d)); + } ;} break; - case 219: -#line 2646 "Gmsh.y" + case 220: +#line 2711 "Gmsh.y" { ;} break; - case 220: -#line 2649 "Gmsh.y" + case 221: +#line 2714 "Gmsh.y" { ;} break; - case 221: -#line 2658 "Gmsh.y" + case 222: +#line 2723 "Gmsh.y" { ReplaceAllDuplicates(); ;} break; - case 222: -#line 2662 "Gmsh.y" + case 223: +#line 2727 "Gmsh.y" { if(!strcmp((yyvsp[(2) - (3)].c), "Geometry")) ReplaceAllDuplicates(); @@ -6666,48 +6728,48 @@ yyreduce: ;} break; - case 223: -#line 2677 "Gmsh.y" + case 224: +#line 2742 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (1)].d); ;} break; - case 224: -#line 2678 "Gmsh.y" + case 225: +#line 2743 "Gmsh.y" { (yyval.d) = (yyvsp[(2) - (3)].d); ;} break; - case 225: -#line 2679 "Gmsh.y" + case 226: +#line 2744 "Gmsh.y" { (yyval.d) = -(yyvsp[(2) - (2)].d); ;} break; - case 226: -#line 2680 "Gmsh.y" + case 227: +#line 2745 "Gmsh.y" { (yyval.d) = (yyvsp[(2) - (2)].d); ;} break; - case 227: -#line 2681 "Gmsh.y" + case 228: +#line 2746 "Gmsh.y" { (yyval.d) = !(yyvsp[(2) - (2)].d); ;} break; - case 228: -#line 2682 "Gmsh.y" + case 229: +#line 2747 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) - (yyvsp[(3) - (3)].d); ;} break; - case 229: -#line 2683 "Gmsh.y" + case 230: +#line 2748 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) + (yyvsp[(3) - (3)].d); ;} break; - case 230: -#line 2684 "Gmsh.y" + case 231: +#line 2749 "Gmsh.y" { (yyval.d) = (yyvsp[(1) - (3)].d) * (yyvsp[(3) - (3)].d); ;} break; - case 231: -#line 2686 "Gmsh.y" + case 232: +#line 2751 "Gmsh.y" { if(!(yyvsp[(3) - (3)].d)) yymsg(0, "Division by zero in '%g / %g'", (yyvsp[(1) - (3)].d), (yyvsp[(3) - (3)].d)); @@ -6716,308 +6778,308 @@ yyreduce: ;} break; - case 232: -#line 2692 "Gmsh.y" - { (yyval.d) = (int)(yyvsp[(1) - (3)].d) % (int)(yyvsp[(3) - (3)].d); ;} - break; - case 233: -#line 2693 "Gmsh.y" - { (yyval.d) = pow((yyvsp[(1) - (3)].d), (yyvsp[(3) - (3)].d)); ;} +#line 2757 "Gmsh.y" + { (yyval.d) = (int)(yyvsp[(1) - (3)].d) % (int)(yyvsp[(3) - (3)].d); ;} break; case 234: -#line 2694 "Gmsh.y" - { (yyval.d) = (yyvsp[(1) - (3)].d) < (yyvsp[(3) - (3)].d); ;} +#line 2758 "Gmsh.y" + { (yyval.d) = pow((yyvsp[(1) - (3)].d), (yyvsp[(3) - (3)].d)); ;} break; case 235: -#line 2695 "Gmsh.y" - { (yyval.d) = (yyvsp[(1) - (3)].d) > (yyvsp[(3) - (3)].d); ;} +#line 2759 "Gmsh.y" + { (yyval.d) = (yyvsp[(1) - (3)].d) < (yyvsp[(3) - (3)].d); ;} break; case 236: -#line 2696 "Gmsh.y" - { (yyval.d) = (yyvsp[(1) - (3)].d) <= (yyvsp[(3) - (3)].d); ;} +#line 2760 "Gmsh.y" + { (yyval.d) = (yyvsp[(1) - (3)].d) > (yyvsp[(3) - (3)].d); ;} break; case 237: -#line 2697 "Gmsh.y" - { (yyval.d) = (yyvsp[(1) - (3)].d) >= (yyvsp[(3) - (3)].d); ;} +#line 2761 "Gmsh.y" + { (yyval.d) = (yyvsp[(1) - (3)].d) <= (yyvsp[(3) - (3)].d); ;} break; case 238: -#line 2698 "Gmsh.y" - { (yyval.d) = (yyvsp[(1) - (3)].d) == (yyvsp[(3) - (3)].d); ;} +#line 2762 "Gmsh.y" + { (yyval.d) = (yyvsp[(1) - (3)].d) >= (yyvsp[(3) - (3)].d); ;} break; case 239: -#line 2699 "Gmsh.y" - { (yyval.d) = (yyvsp[(1) - (3)].d) != (yyvsp[(3) - (3)].d); ;} +#line 2763 "Gmsh.y" + { (yyval.d) = (yyvsp[(1) - (3)].d) == (yyvsp[(3) - (3)].d); ;} break; case 240: -#line 2700 "Gmsh.y" - { (yyval.d) = (yyvsp[(1) - (3)].d) && (yyvsp[(3) - (3)].d); ;} +#line 2764 "Gmsh.y" + { (yyval.d) = (yyvsp[(1) - (3)].d) != (yyvsp[(3) - (3)].d); ;} break; case 241: -#line 2701 "Gmsh.y" - { (yyval.d) = (yyvsp[(1) - (3)].d) || (yyvsp[(3) - (3)].d); ;} +#line 2765 "Gmsh.y" + { (yyval.d) = (yyvsp[(1) - (3)].d) && (yyvsp[(3) - (3)].d); ;} break; case 242: -#line 2702 "Gmsh.y" - { (yyval.d) = (yyvsp[(1) - (5)].d) ? (yyvsp[(3) - (5)].d) : (yyvsp[(5) - (5)].d); ;} +#line 2766 "Gmsh.y" + { (yyval.d) = (yyvsp[(1) - (3)].d) || (yyvsp[(3) - (3)].d); ;} break; case 243: -#line 2703 "Gmsh.y" - { (yyval.d) = exp((yyvsp[(3) - (4)].d)); ;} +#line 2767 "Gmsh.y" + { (yyval.d) = (yyvsp[(1) - (5)].d) ? (yyvsp[(3) - (5)].d) : (yyvsp[(5) - (5)].d); ;} break; case 244: -#line 2704 "Gmsh.y" - { (yyval.d) = log((yyvsp[(3) - (4)].d)); ;} +#line 2768 "Gmsh.y" + { (yyval.d) = exp((yyvsp[(3) - (4)].d)); ;} break; case 245: -#line 2705 "Gmsh.y" - { (yyval.d) = log10((yyvsp[(3) - (4)].d)); ;} +#line 2769 "Gmsh.y" + { (yyval.d) = log((yyvsp[(3) - (4)].d)); ;} break; case 246: -#line 2706 "Gmsh.y" - { (yyval.d) = sqrt((yyvsp[(3) - (4)].d)); ;} +#line 2770 "Gmsh.y" + { (yyval.d) = log10((yyvsp[(3) - (4)].d)); ;} break; case 247: -#line 2707 "Gmsh.y" - { (yyval.d) = sin((yyvsp[(3) - (4)].d)); ;} +#line 2771 "Gmsh.y" + { (yyval.d) = sqrt((yyvsp[(3) - (4)].d)); ;} break; case 248: -#line 2708 "Gmsh.y" - { (yyval.d) = asin((yyvsp[(3) - (4)].d)); ;} +#line 2772 "Gmsh.y" + { (yyval.d) = sin((yyvsp[(3) - (4)].d)); ;} break; case 249: -#line 2709 "Gmsh.y" - { (yyval.d) = cos((yyvsp[(3) - (4)].d)); ;} +#line 2773 "Gmsh.y" + { (yyval.d) = asin((yyvsp[(3) - (4)].d)); ;} break; case 250: -#line 2710 "Gmsh.y" - { (yyval.d) = acos((yyvsp[(3) - (4)].d)); ;} +#line 2774 "Gmsh.y" + { (yyval.d) = cos((yyvsp[(3) - (4)].d)); ;} break; case 251: -#line 2711 "Gmsh.y" - { (yyval.d) = tan((yyvsp[(3) - (4)].d)); ;} +#line 2775 "Gmsh.y" + { (yyval.d) = acos((yyvsp[(3) - (4)].d)); ;} break; case 252: -#line 2712 "Gmsh.y" - { (yyval.d) = atan((yyvsp[(3) - (4)].d)); ;} +#line 2776 "Gmsh.y" + { (yyval.d) = tan((yyvsp[(3) - (4)].d)); ;} break; case 253: -#line 2713 "Gmsh.y" - { (yyval.d) = atan2((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d));;} +#line 2777 "Gmsh.y" + { (yyval.d) = atan((yyvsp[(3) - (4)].d)); ;} break; case 254: -#line 2714 "Gmsh.y" - { (yyval.d) = sinh((yyvsp[(3) - (4)].d)); ;} +#line 2778 "Gmsh.y" + { (yyval.d) = atan2((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d));;} break; case 255: -#line 2715 "Gmsh.y" - { (yyval.d) = cosh((yyvsp[(3) - (4)].d)); ;} +#line 2779 "Gmsh.y" + { (yyval.d) = sinh((yyvsp[(3) - (4)].d)); ;} break; case 256: -#line 2716 "Gmsh.y" - { (yyval.d) = tanh((yyvsp[(3) - (4)].d)); ;} +#line 2780 "Gmsh.y" + { (yyval.d) = cosh((yyvsp[(3) - (4)].d)); ;} break; case 257: -#line 2717 "Gmsh.y" - { (yyval.d) = fabs((yyvsp[(3) - (4)].d)); ;} +#line 2781 "Gmsh.y" + { (yyval.d) = tanh((yyvsp[(3) - (4)].d)); ;} break; case 258: -#line 2718 "Gmsh.y" - { (yyval.d) = floor((yyvsp[(3) - (4)].d)); ;} +#line 2782 "Gmsh.y" + { (yyval.d) = fabs((yyvsp[(3) - (4)].d)); ;} break; case 259: -#line 2719 "Gmsh.y" - { (yyval.d) = ceil((yyvsp[(3) - (4)].d)); ;} +#line 2783 "Gmsh.y" + { (yyval.d) = floor((yyvsp[(3) - (4)].d)); ;} break; case 260: -#line 2720 "Gmsh.y" - { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;} +#line 2784 "Gmsh.y" + { (yyval.d) = ceil((yyvsp[(3) - (4)].d)); ;} break; case 261: -#line 2721 "Gmsh.y" +#line 2785 "Gmsh.y" { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;} break; case 262: -#line 2722 "Gmsh.y" - { (yyval.d) = sqrt((yyvsp[(3) - (6)].d) * (yyvsp[(3) - (6)].d) + (yyvsp[(5) - (6)].d) * (yyvsp[(5) - (6)].d)); ;} +#line 2786 "Gmsh.y" + { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;} break; case 263: -#line 2723 "Gmsh.y" - { (yyval.d) = (yyvsp[(3) - (4)].d) * (double)rand() / (double)RAND_MAX; ;} +#line 2787 "Gmsh.y" + { (yyval.d) = sqrt((yyvsp[(3) - (6)].d) * (yyvsp[(3) - (6)].d) + (yyvsp[(5) - (6)].d) * (yyvsp[(5) - (6)].d)); ;} break; case 264: -#line 2725 "Gmsh.y" - { (yyval.d) = exp((yyvsp[(3) - (4)].d)); ;} +#line 2788 "Gmsh.y" + { (yyval.d) = (yyvsp[(3) - (4)].d) * (double)rand() / (double)RAND_MAX; ;} break; case 265: -#line 2726 "Gmsh.y" - { (yyval.d) = log((yyvsp[(3) - (4)].d)); ;} +#line 2790 "Gmsh.y" + { (yyval.d) = exp((yyvsp[(3) - (4)].d)); ;} break; case 266: -#line 2727 "Gmsh.y" - { (yyval.d) = log10((yyvsp[(3) - (4)].d)); ;} +#line 2791 "Gmsh.y" + { (yyval.d) = log((yyvsp[(3) - (4)].d)); ;} break; case 267: -#line 2728 "Gmsh.y" - { (yyval.d) = sqrt((yyvsp[(3) - (4)].d)); ;} +#line 2792 "Gmsh.y" + { (yyval.d) = log10((yyvsp[(3) - (4)].d)); ;} break; case 268: -#line 2729 "Gmsh.y" - { (yyval.d) = sin((yyvsp[(3) - (4)].d)); ;} +#line 2793 "Gmsh.y" + { (yyval.d) = sqrt((yyvsp[(3) - (4)].d)); ;} break; case 269: -#line 2730 "Gmsh.y" - { (yyval.d) = asin((yyvsp[(3) - (4)].d)); ;} +#line 2794 "Gmsh.y" + { (yyval.d) = sin((yyvsp[(3) - (4)].d)); ;} break; case 270: -#line 2731 "Gmsh.y" - { (yyval.d) = cos((yyvsp[(3) - (4)].d)); ;} +#line 2795 "Gmsh.y" + { (yyval.d) = asin((yyvsp[(3) - (4)].d)); ;} break; case 271: -#line 2732 "Gmsh.y" - { (yyval.d) = acos((yyvsp[(3) - (4)].d)); ;} +#line 2796 "Gmsh.y" + { (yyval.d) = cos((yyvsp[(3) - (4)].d)); ;} break; case 272: -#line 2733 "Gmsh.y" - { (yyval.d) = tan((yyvsp[(3) - (4)].d)); ;} +#line 2797 "Gmsh.y" + { (yyval.d) = acos((yyvsp[(3) - (4)].d)); ;} break; case 273: -#line 2734 "Gmsh.y" - { (yyval.d) = atan((yyvsp[(3) - (4)].d)); ;} +#line 2798 "Gmsh.y" + { (yyval.d) = tan((yyvsp[(3) - (4)].d)); ;} break; case 274: -#line 2735 "Gmsh.y" - { (yyval.d) = atan2((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d));;} +#line 2799 "Gmsh.y" + { (yyval.d) = atan((yyvsp[(3) - (4)].d)); ;} break; case 275: -#line 2736 "Gmsh.y" - { (yyval.d) = sinh((yyvsp[(3) - (4)].d)); ;} +#line 2800 "Gmsh.y" + { (yyval.d) = atan2((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d));;} break; case 276: -#line 2737 "Gmsh.y" - { (yyval.d) = cosh((yyvsp[(3) - (4)].d)); ;} +#line 2801 "Gmsh.y" + { (yyval.d) = sinh((yyvsp[(3) - (4)].d)); ;} break; case 277: -#line 2738 "Gmsh.y" - { (yyval.d) = tanh((yyvsp[(3) - (4)].d)); ;} +#line 2802 "Gmsh.y" + { (yyval.d) = cosh((yyvsp[(3) - (4)].d)); ;} break; case 278: -#line 2739 "Gmsh.y" - { (yyval.d) = fabs((yyvsp[(3) - (4)].d)); ;} +#line 2803 "Gmsh.y" + { (yyval.d) = tanh((yyvsp[(3) - (4)].d)); ;} break; case 279: -#line 2740 "Gmsh.y" - { (yyval.d) = floor((yyvsp[(3) - (4)].d)); ;} +#line 2804 "Gmsh.y" + { (yyval.d) = fabs((yyvsp[(3) - (4)].d)); ;} break; case 280: -#line 2741 "Gmsh.y" - { (yyval.d) = ceil((yyvsp[(3) - (4)].d)); ;} +#line 2805 "Gmsh.y" + { (yyval.d) = floor((yyvsp[(3) - (4)].d)); ;} break; case 281: -#line 2742 "Gmsh.y" - { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;} +#line 2806 "Gmsh.y" + { (yyval.d) = ceil((yyvsp[(3) - (4)].d)); ;} break; case 282: -#line 2743 "Gmsh.y" +#line 2807 "Gmsh.y" { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;} break; case 283: -#line 2744 "Gmsh.y" - { (yyval.d) = sqrt((yyvsp[(3) - (6)].d) * (yyvsp[(3) - (6)].d) + (yyvsp[(5) - (6)].d) * (yyvsp[(5) - (6)].d)); ;} +#line 2808 "Gmsh.y" + { (yyval.d) = fmod((yyvsp[(3) - (6)].d), (yyvsp[(5) - (6)].d)); ;} break; case 284: -#line 2745 "Gmsh.y" - { (yyval.d) = (yyvsp[(3) - (4)].d) * (double)rand() / (double)RAND_MAX; ;} +#line 2809 "Gmsh.y" + { (yyval.d) = sqrt((yyvsp[(3) - (6)].d) * (yyvsp[(3) - (6)].d) + (yyvsp[(5) - (6)].d) * (yyvsp[(5) - (6)].d)); ;} break; case 285: -#line 2754 "Gmsh.y" - { (yyval.d) = (yyvsp[(1) - (1)].d); ;} +#line 2810 "Gmsh.y" + { (yyval.d) = (yyvsp[(3) - (4)].d) * (double)rand() / (double)RAND_MAX; ;} break; case 286: -#line 2755 "Gmsh.y" - { (yyval.d) = 3.141592653589793; ;} +#line 2819 "Gmsh.y" + { (yyval.d) = (yyvsp[(1) - (1)].d); ;} break; case 287: -#line 2756 "Gmsh.y" - { (yyval.d) = Msg::GetCommRank(); ;} +#line 2820 "Gmsh.y" + { (yyval.d) = 3.141592653589793; ;} break; case 288: -#line 2757 "Gmsh.y" - { (yyval.d) = Msg::GetCommSize(); ;} +#line 2821 "Gmsh.y" + { (yyval.d) = Msg::GetCommRank(); ;} break; case 289: -#line 2758 "Gmsh.y" - { (yyval.d) = Get_GmshMajorVersion(); ;} +#line 2822 "Gmsh.y" + { (yyval.d) = Msg::GetCommSize(); ;} break; case 290: -#line 2759 "Gmsh.y" - { (yyval.d) = Get_GmshMinorVersion(); ;} +#line 2823 "Gmsh.y" + { (yyval.d) = Get_GmshMajorVersion(); ;} break; case 291: -#line 2760 "Gmsh.y" - { (yyval.d) = Get_GmshPatchVersion(); ;} +#line 2824 "Gmsh.y" + { (yyval.d) = Get_GmshMinorVersion(); ;} break; case 292: -#line 2765 "Gmsh.y" +#line 2825 "Gmsh.y" + { (yyval.d) = Get_GmshPatchVersion(); ;} + break; + + case 293: +#line 2830 "Gmsh.y" { if(!gmsh_yysymbols.count((yyvsp[(1) - (1)].c))){ yymsg(0, "Unknown variable '%s'", (yyvsp[(1) - (1)].c)); @@ -7029,8 +7091,8 @@ yyreduce: ;} break; - case 293: -#line 2778 "Gmsh.y" + case 294: +#line 2843 "Gmsh.y" { char tmpstring[1024]; sprintf(tmpstring, "%s_%d", (yyvsp[(1) - (5)].c), (int)(yyvsp[(4) - (5)].d)) ; @@ -7044,8 +7106,8 @@ yyreduce: ;} break; - case 294: -#line 2790 "Gmsh.y" + case 295: +#line 2855 "Gmsh.y" { int index = (int)(yyvsp[(3) - (4)].d); if(!gmsh_yysymbols.count((yyvsp[(1) - (4)].c))){ @@ -7062,8 +7124,8 @@ yyreduce: ;} break; - case 295: -#line 2805 "Gmsh.y" + case 296: +#line 2870 "Gmsh.y" { if(!gmsh_yysymbols.count((yyvsp[(2) - (4)].c))){ yymsg(0, "Unknown variable '%s'", (yyvsp[(2) - (4)].c)); @@ -7075,8 +7137,8 @@ yyreduce: ;} break; - case 296: -#line 2815 "Gmsh.y" + case 297: +#line 2880 "Gmsh.y" { if(!gmsh_yysymbols.count((yyvsp[(1) - (2)].c))){ yymsg(0, "Unknown variable '%s'", (yyvsp[(1) - (2)].c)); @@ -7088,8 +7150,8 @@ yyreduce: ;} break; - case 297: -#line 2825 "Gmsh.y" + case 298: +#line 2890 "Gmsh.y" { int index = (int)(yyvsp[(3) - (5)].d); if(!gmsh_yysymbols.count((yyvsp[(1) - (5)].c))){ @@ -7106,24 +7168,24 @@ yyreduce: ;} break; - case 298: -#line 2843 "Gmsh.y" + case 299: +#line 2908 "Gmsh.y" { NumberOption(GMSH_GET, (yyvsp[(1) - (3)].c), 0, (yyvsp[(3) - (3)].c), (yyval.d)); Free((yyvsp[(1) - (3)].c)); Free((yyvsp[(3) - (3)].c)); ;} break; - case 299: -#line 2848 "Gmsh.y" + case 300: +#line 2913 "Gmsh.y" { NumberOption(GMSH_GET, (yyvsp[(1) - (6)].c), (int)(yyvsp[(3) - (6)].d), (yyvsp[(6) - (6)].c), (yyval.d)); Free((yyvsp[(1) - (6)].c)); Free((yyvsp[(6) - (6)].c)); ;} break; - case 300: -#line 2853 "Gmsh.y" + case 301: +#line 2918 "Gmsh.y" { double d = 0.; if(NumberOption(GMSH_GET, (yyvsp[(1) - (4)].c), 0, (yyvsp[(3) - (4)].c), d)){ @@ -7135,8 +7197,8 @@ yyreduce: ;} break; - case 301: -#line 2863 "Gmsh.y" + case 302: +#line 2928 "Gmsh.y" { double d = 0.; if(NumberOption(GMSH_GET, (yyvsp[(1) - (7)].c), (int)(yyvsp[(3) - (7)].d), (yyvsp[(6) - (7)].c), d)){ @@ -7148,124 +7210,124 @@ yyreduce: ;} break; - case 302: -#line 2873 "Gmsh.y" + case 303: +#line 2938 "Gmsh.y" { (yyval.d) = Msg::GetValue((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].d)); Free((yyvsp[(3) - (6)].c)); ;} break; - case 303: -#line 2881 "Gmsh.y" + case 304: +#line 2946 "Gmsh.y" { memcpy((yyval.v), (yyvsp[(1) - (1)].v), 5*sizeof(double)); ;} break; - case 304: -#line 2885 "Gmsh.y" + case 305: +#line 2950 "Gmsh.y" { for(int i = 0; i < 5; i++) (yyval.v)[i] = -(yyvsp[(2) - (2)].v)[i]; ;} break; - case 305: -#line 2889 "Gmsh.y" + case 306: +#line 2954 "Gmsh.y" { for(int i = 0; i < 5; i++) (yyval.v)[i] = (yyvsp[(2) - (2)].v)[i]; ;} break; - case 306: -#line 2893 "Gmsh.y" + case 307: +#line 2958 "Gmsh.y" { for(int i = 0; i < 5; i++) (yyval.v)[i] = (yyvsp[(1) - (3)].v)[i] - (yyvsp[(3) - (3)].v)[i]; ;} break; - case 307: -#line 2897 "Gmsh.y" + case 308: +#line 2962 "Gmsh.y" { for(int i = 0; i < 5; i++) (yyval.v)[i] = (yyvsp[(1) - (3)].v)[i] + (yyvsp[(3) - (3)].v)[i]; ;} break; - case 308: -#line 2904 "Gmsh.y" + case 309: +#line 2969 "Gmsh.y" { (yyval.v)[0] = (yyvsp[(2) - (11)].d); (yyval.v)[1] = (yyvsp[(4) - (11)].d); (yyval.v)[2] = (yyvsp[(6) - (11)].d); (yyval.v)[3] = (yyvsp[(8) - (11)].d); (yyval.v)[4] = (yyvsp[(10) - (11)].d); ;} break; - case 309: -#line 2908 "Gmsh.y" + case 310: +#line 2973 "Gmsh.y" { (yyval.v)[0] = (yyvsp[(2) - (9)].d); (yyval.v)[1] = (yyvsp[(4) - (9)].d); (yyval.v)[2] = (yyvsp[(6) - (9)].d); (yyval.v)[3] = (yyvsp[(8) - (9)].d); (yyval.v)[4] = 1.0; ;} break; - case 310: -#line 2912 "Gmsh.y" + case 311: +#line 2977 "Gmsh.y" { (yyval.v)[0] = (yyvsp[(2) - (7)].d); (yyval.v)[1] = (yyvsp[(4) - (7)].d); (yyval.v)[2] = (yyvsp[(6) - (7)].d); (yyval.v)[3] = 0.0; (yyval.v)[4] = 1.0; ;} break; - case 311: -#line 2916 "Gmsh.y" + case 312: +#line 2981 "Gmsh.y" { (yyval.v)[0] = (yyvsp[(2) - (7)].d); (yyval.v)[1] = (yyvsp[(4) - (7)].d); (yyval.v)[2] = (yyvsp[(6) - (7)].d); (yyval.v)[3] = 0.0; (yyval.v)[4] = 1.0; ;} break; - case 312: -#line 2923 "Gmsh.y" + case 313: +#line 2988 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(List_T*)); List_Add((yyval.l), &((yyvsp[(1) - (1)].l))); ;} break; - case 313: -#line 2928 "Gmsh.y" + case 314: +#line 2993 "Gmsh.y" { List_Add((yyval.l), &((yyvsp[(3) - (3)].l))); ;} break; - case 314: -#line 2935 "Gmsh.y" + case 315: +#line 3000 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); List_Add((yyval.l), &((yyvsp[(1) - (1)].d))); ;} break; - case 315: -#line 2940 "Gmsh.y" + case 316: +#line 3005 "Gmsh.y" { (yyval.l) = (yyvsp[(1) - (1)].l); ;} break; - case 316: -#line 2944 "Gmsh.y" + case 317: +#line 3009 "Gmsh.y" { // creates an empty list (yyval.l) = List_Create(2, 1, sizeof(double)); ;} break; - case 317: -#line 2949 "Gmsh.y" + case 318: +#line 3014 "Gmsh.y" { (yyval.l) = (yyvsp[(2) - (3)].l); ;} break; - case 318: -#line 2953 "Gmsh.y" + case 319: +#line 3018 "Gmsh.y" { (yyval.l) = (yyvsp[(3) - (4)].l); for(int i = 0; i < List_Nbr((yyval.l)); i++){ @@ -7275,8 +7337,8 @@ yyreduce: ;} break; - case 319: -#line 2961 "Gmsh.y" + case 320: +#line 3026 "Gmsh.y" { (yyval.l) = (yyvsp[(4) - (5)].l); for(int i = 0; i < List_Nbr((yyval.l)); i++){ @@ -7286,8 +7348,8 @@ yyreduce: ;} break; - case 320: -#line 2972 "Gmsh.y" + case 321: +#line 3037 "Gmsh.y" { (yyval.l) = (yyvsp[(2) - (2)].l); for(int i = 0; i < List_Nbr((yyval.l)); i++){ @@ -7297,8 +7359,8 @@ yyreduce: ;} break; - case 321: -#line 2980 "Gmsh.y" + case 322: +#line 3045 "Gmsh.y" { (yyval.l) = (yyvsp[(3) - (3)].l); for(int i = 0; i < List_Nbr((yyval.l)); i++){ @@ -7308,8 +7370,8 @@ yyreduce: ;} break; - case 322: -#line 2988 "Gmsh.y" + case 323: +#line 3053 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); for(double d = (yyvsp[(1) - (3)].d); ((yyvsp[(1) - (3)].d) < (yyvsp[(3) - (3)].d)) ? (d <= (yyvsp[(3) - (3)].d)) : (d >= (yyvsp[(3) - (3)].d)); ((yyvsp[(1) - (3)].d) < (yyvsp[(3) - (3)].d)) ? (d += 1.) : (d -= 1.)) @@ -7317,8 +7379,8 @@ yyreduce: ;} break; - case 323: -#line 2994 "Gmsh.y" + case 324: +#line 3059 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); if(!(yyvsp[(5) - (5)].d) || ((yyvsp[(1) - (5)].d) < (yyvsp[(3) - (5)].d) && (yyvsp[(5) - (5)].d) < 0) || ((yyvsp[(1) - (5)].d) > (yyvsp[(3) - (5)].d) && (yyvsp[(5) - (5)].d) > 0)){ @@ -7331,8 +7393,8 @@ yyreduce: ;} break; - case 324: -#line 3005 "Gmsh.y" + case 325: +#line 3070 "Gmsh.y" { // Returns the coordinates of a point and fills a list with it. // This allows to ensure e.g. that relative point positions are @@ -7354,8 +7416,8 @@ yyreduce: ;} break; - case 325: -#line 3025 "Gmsh.y" + case 326: +#line 3090 "Gmsh.y" { (yyval.l) = List_Create(List_Nbr((yyvsp[(1) - (1)].l)), 1, sizeof(double)); for(int i = 0; i < List_Nbr((yyvsp[(1) - (1)].l)); i++){ @@ -7367,8 +7429,8 @@ yyreduce: ;} break; - case 326: -#line 3035 "Gmsh.y" + case 327: +#line 3100 "Gmsh.y" { (yyval.l) = List_Create(List_Nbr((yyvsp[(1) - (1)].l)), 1, sizeof(double)); for(int i = 0; i < List_Nbr((yyvsp[(1) - (1)].l)); i++){ @@ -7380,8 +7442,8 @@ yyreduce: ;} break; - case 327: -#line 3045 "Gmsh.y" + case 328: +#line 3110 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); if(!gmsh_yysymbols.count((yyvsp[(1) - (3)].c))) @@ -7393,8 +7455,8 @@ yyreduce: ;} break; - case 328: -#line 3055 "Gmsh.y" + case 329: +#line 3120 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); if(!gmsh_yysymbols.count((yyvsp[(1) - (6)].c))) @@ -7413,30 +7475,30 @@ yyreduce: ;} break; - case 329: -#line 3075 "Gmsh.y" + case 330: +#line 3140 "Gmsh.y" { (yyval.l) = List_Create(2, 1, sizeof(double)); List_Add((yyval.l), &((yyvsp[(1) - (1)].d))); ;} break; - case 330: -#line 3080 "Gmsh.y" + case 331: +#line 3145 "Gmsh.y" { (yyval.l) = (yyvsp[(1) - (1)].l); ;} break; - case 331: -#line 3084 "Gmsh.y" + case 332: +#line 3149 "Gmsh.y" { List_Add((yyval.l), &((yyvsp[(3) - (3)].d))); ;} break; - case 332: -#line 3088 "Gmsh.y" + case 333: +#line 3153 "Gmsh.y" { for(int i = 0; i < List_Nbr((yyvsp[(3) - (3)].l)); i++){ double d; @@ -7447,22 +7509,22 @@ yyreduce: ;} break; - case 333: -#line 3100 "Gmsh.y" + case 334: +#line 3165 "Gmsh.y" { (yyval.u) = CTX.PACK_COLOR((int)(yyvsp[(2) - (9)].d), (int)(yyvsp[(4) - (9)].d), (int)(yyvsp[(6) - (9)].d), (int)(yyvsp[(8) - (9)].d)); ;} break; - case 334: -#line 3104 "Gmsh.y" + case 335: +#line 3169 "Gmsh.y" { (yyval.u) = CTX.PACK_COLOR((int)(yyvsp[(2) - (7)].d), (int)(yyvsp[(4) - (7)].d), (int)(yyvsp[(6) - (7)].d), 255); ;} break; - case 335: -#line 3116 "Gmsh.y" + case 336: +#line 3181 "Gmsh.y" { int flag; (yyval.u) = Get_ColorForString(ColorString, -1, (yyvsp[(1) - (1)].c), &flag); @@ -7471,8 +7533,8 @@ yyreduce: ;} break; - case 336: -#line 3123 "Gmsh.y" + case 337: +#line 3188 "Gmsh.y" { unsigned int val = 0; ColorOption(GMSH_GET, (yyvsp[(1) - (5)].c), 0, (yyvsp[(5) - (5)].c), val); @@ -7481,15 +7543,15 @@ yyreduce: ;} break; - case 337: -#line 3133 "Gmsh.y" + case 338: +#line 3198 "Gmsh.y" { (yyval.l) = (yyvsp[(2) - (3)].l); ;} break; - case 338: -#line 3137 "Gmsh.y" + case 339: +#line 3202 "Gmsh.y" { (yyval.l) = List_Create(256, 10, sizeof(unsigned int)); GmshColorTable *ct = Get_ColorTable((int)(yyvsp[(3) - (6)].d)); @@ -7503,30 +7565,30 @@ yyreduce: ;} break; - case 339: -#line 3152 "Gmsh.y" + case 340: +#line 3217 "Gmsh.y" { (yyval.l) = List_Create(256, 10, sizeof(unsigned int)); List_Add((yyval.l), &((yyvsp[(1) - (1)].u))); ;} break; - case 340: -#line 3157 "Gmsh.y" + case 341: +#line 3222 "Gmsh.y" { List_Add((yyval.l), &((yyvsp[(3) - (3)].u))); ;} break; - case 341: -#line 3164 "Gmsh.y" + case 342: +#line 3229 "Gmsh.y" { (yyval.c) = (yyvsp[(1) - (1)].c); ;} break; - case 342: -#line 3168 "Gmsh.y" + case 343: +#line 3233 "Gmsh.y" { if(!gmsh_yystringsymbols.count((yyvsp[(1) - (1)].c))){ yymsg(0, "Unknown string variable '%s'", (yyvsp[(1) - (1)].c)); @@ -7541,8 +7603,8 @@ yyreduce: ;} break; - case 343: -#line 3181 "Gmsh.y" + case 344: +#line 3246 "Gmsh.y" { const char *val = ""; StringOption(GMSH_GET, (yyvsp[(1) - (3)].c), 0, (yyvsp[(3) - (3)].c), val); @@ -7552,8 +7614,8 @@ yyreduce: ;} break; - case 344: -#line 3189 "Gmsh.y" + case 345: +#line 3254 "Gmsh.y" { const char *val = ""; StringOption(GMSH_GET, (yyvsp[(1) - (6)].c), (int)(yyvsp[(3) - (6)].d), (yyvsp[(6) - (6)].c), val); @@ -7563,15 +7625,15 @@ yyreduce: ;} break; - case 345: -#line 3200 "Gmsh.y" + case 346: +#line 3265 "Gmsh.y" { (yyval.c) = (yyvsp[(1) - (1)].c); ;} break; - case 346: -#line 3204 "Gmsh.y" + case 347: +#line 3269 "Gmsh.y" { (yyval.c) = (char *)Malloc(32 * sizeof(char)); time_t now; @@ -7581,8 +7643,8 @@ yyreduce: ;} break; - case 347: -#line 3212 "Gmsh.y" + case 348: +#line 3277 "Gmsh.y" { (yyval.c) = (char *)Malloc((strlen((yyvsp[(3) - (6)].c)) + strlen((yyvsp[(5) - (6)].c)) + 1) * sizeof(char)); strcpy((yyval.c), (yyvsp[(3) - (6)].c)); @@ -7592,8 +7654,8 @@ yyreduce: ;} break; - case 348: -#line 3220 "Gmsh.y" + case 349: +#line 3285 "Gmsh.y" { (yyval.c) = (char *)Malloc((strlen((yyvsp[(3) - (4)].c)) + 1) * sizeof(char)); int i; @@ -7609,8 +7671,8 @@ yyreduce: ;} break; - case 349: -#line 3234 "Gmsh.y" + case 350: +#line 3299 "Gmsh.y" { (yyval.c) = (char *)Malloc((strlen((yyvsp[(3) - (4)].c)) + 1) * sizeof(char)); int i; @@ -7626,15 +7688,15 @@ yyreduce: ;} break; - case 350: -#line 3248 "Gmsh.y" + case 351: +#line 3313 "Gmsh.y" { (yyval.c) = (yyvsp[(3) - (4)].c); ;} break; - case 351: -#line 3252 "Gmsh.y" + case 352: +#line 3317 "Gmsh.y" { char tmpstring[1024]; int i = PrintListOfDouble((yyvsp[(3) - (6)].c), (yyvsp[(5) - (6)].l), tmpstring); @@ -7657,7 +7719,7 @@ yyreduce: /* Line 1267 of yacc.c. */ -#line 7661 "Gmsh.tab.cpp" +#line 7723 "Gmsh.tab.cpp" default: break; } YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); @@ -7871,7 +7933,7 @@ yyreturn: } -#line 3272 "Gmsh.y" +#line 3337 "Gmsh.y" int PrintListOfDouble(char *format, List_T *list, char *buffer) diff --git a/Parser/Gmsh.tab.hpp b/Parser/Gmsh.tab.hpp index 9e42819542fbef8677ca960bcb9d4603737d40c1..d15de655a57f5fbe45b56e98892fc57fab141313 100644 --- a/Parser/Gmsh.tab.hpp +++ b/Parser/Gmsh.tab.hpp @@ -98,66 +98,64 @@ tComplex = 314, tPhysical = 315, tUsing = 316, - tBump = 317, - tProgression = 318, - tPlugin = 319, - tRotate = 320, - tTranslate = 321, - tSymmetry = 322, - tDilate = 323, - tExtrude = 324, - tLoop = 325, - tRecombine = 326, - tSmoother = 327, - tSplit = 328, - tDelete = 329, - tCoherence = 330, - tIntersect = 331, - tLayers = 332, - tHole = 333, - tAlias = 334, - tAliasWithOptions = 335, - tText2D = 336, - tText3D = 337, - tInterpolationScheme = 338, - tTime = 339, - tCombine = 340, - tBSpline = 341, - tBezier = 342, - tNurbs = 343, - tOrder = 344, - tKnots = 345, - tColor = 346, - tColorTable = 347, - tFor = 348, - tIn = 349, - tEndFor = 350, - tIf = 351, - tEndIf = 352, - tExit = 353, - tField = 354, - tReturn = 355, - tCall = 356, - tFunction = 357, - tShow = 358, - tHide = 359, - tGetValue = 360, - tGMSH_MAJOR_VERSION = 361, - tGMSH_MINOR_VERSION = 362, - tGMSH_PATCH_VERSION = 363, - tAFFECTDIVIDE = 364, - tAFFECTTIMES = 365, - tAFFECTMINUS = 366, - tAFFECTPLUS = 367, - tOR = 368, - tAND = 369, - tNOTEQUAL = 370, - tEQUAL = 371, - tGREATEROREQUAL = 372, - tLESSOREQUAL = 373, - UNARYPREC = 374, - tMINUSMINUS = 375, - tPLUSPLUS = 376 + tPlugin = 317, + tRotate = 318, + tTranslate = 319, + tSymmetry = 320, + tDilate = 321, + tExtrude = 322, + tLoop = 323, + tRecombine = 324, + tSmoother = 325, + tSplit = 326, + tDelete = 327, + tCoherence = 328, + tIntersect = 329, + tLayers = 330, + tHole = 331, + tAlias = 332, + tAliasWithOptions = 333, + tText2D = 334, + tText3D = 335, + tInterpolationScheme = 336, + tTime = 337, + tCombine = 338, + tBSpline = 339, + tBezier = 340, + tNurbs = 341, + tOrder = 342, + tKnots = 343, + tColor = 344, + tColorTable = 345, + tFor = 346, + tIn = 347, + tEndFor = 348, + tIf = 349, + tEndIf = 350, + tExit = 351, + tField = 352, + tReturn = 353, + tCall = 354, + tFunction = 355, + tShow = 356, + tHide = 357, + tGetValue = 358, + tGMSH_MAJOR_VERSION = 359, + tGMSH_MINOR_VERSION = 360, + tGMSH_PATCH_VERSION = 361, + tAFFECTDIVIDE = 362, + tAFFECTTIMES = 363, + tAFFECTMINUS = 364, + tAFFECTPLUS = 365, + tOR = 366, + tAND = 367, + tNOTEQUAL = 368, + tEQUAL = 369, + tGREATEROREQUAL = 370, + tLESSOREQUAL = 371, + UNARYPREC = 372, + tMINUSMINUS = 373, + tPLUSPLUS = 374 }; #endif /* Tokens. */ @@ -220,66 +218,64 @@ #define tComplex 314 #define tPhysical 315 #define tUsing 316 -#define tBump 317 -#define tProgression 318 -#define tPlugin 319 -#define tRotate 320 -#define tTranslate 321 -#define tSymmetry 322 -#define tDilate 323 -#define tExtrude 324 -#define tLoop 325 -#define tRecombine 326 -#define tSmoother 327 -#define tSplit 328 -#define tDelete 329 -#define tCoherence 330 -#define tIntersect 331 -#define tLayers 332 -#define tHole 333 -#define tAlias 334 -#define tAliasWithOptions 335 -#define tText2D 336 -#define tText3D 337 -#define tInterpolationScheme 338 -#define tTime 339 -#define tCombine 340 -#define tBSpline 341 -#define tBezier 342 -#define tNurbs 343 -#define tOrder 344 -#define tKnots 345 -#define tColor 346 -#define tColorTable 347 -#define tFor 348 -#define tIn 349 -#define tEndFor 350 -#define tIf 351 -#define tEndIf 352 -#define tExit 353 -#define tField 354 -#define tReturn 355 -#define tCall 356 -#define tFunction 357 -#define tShow 358 -#define tHide 359 -#define tGetValue 360 -#define tGMSH_MAJOR_VERSION 361 -#define tGMSH_MINOR_VERSION 362 -#define tGMSH_PATCH_VERSION 363 -#define tAFFECTDIVIDE 364 -#define tAFFECTTIMES 365 -#define tAFFECTMINUS 366 -#define tAFFECTPLUS 367 -#define tOR 368 -#define tAND 369 -#define tNOTEQUAL 370 -#define tEQUAL 371 -#define tGREATEROREQUAL 372 -#define tLESSOREQUAL 373 -#define UNARYPREC 374 -#define tMINUSMINUS 375 -#define tPLUSPLUS 376 +#define tPlugin 317 +#define tRotate 318 +#define tTranslate 319 +#define tSymmetry 320 +#define tDilate 321 +#define tExtrude 322 +#define tLoop 323 +#define tRecombine 324 +#define tSmoother 325 +#define tSplit 326 +#define tDelete 327 +#define tCoherence 328 +#define tIntersect 329 +#define tLayers 330 +#define tHole 331 +#define tAlias 332 +#define tAliasWithOptions 333 +#define tText2D 334 +#define tText3D 335 +#define tInterpolationScheme 336 +#define tTime 337 +#define tCombine 338 +#define tBSpline 339 +#define tBezier 340 +#define tNurbs 341 +#define tOrder 342 +#define tKnots 343 +#define tColor 344 +#define tColorTable 345 +#define tFor 346 +#define tIn 347 +#define tEndFor 348 +#define tIf 349 +#define tEndIf 350 +#define tExit 351 +#define tField 352 +#define tReturn 353 +#define tCall 354 +#define tFunction 355 +#define tShow 356 +#define tHide 357 +#define tGetValue 358 +#define tGMSH_MAJOR_VERSION 359 +#define tGMSH_MINOR_VERSION 360 +#define tGMSH_PATCH_VERSION 361 +#define tAFFECTDIVIDE 362 +#define tAFFECTTIMES 363 +#define tAFFECTMINUS 364 +#define tAFFECTPLUS 365 +#define tOR 366 +#define tAND 367 +#define tNOTEQUAL 368 +#define tEQUAL 369 +#define tGREATEROREQUAL 370 +#define tLESSOREQUAL 371 +#define UNARYPREC 372 +#define tMINUSMINUS 373 +#define tPLUSPLUS 374 @@ -297,7 +293,7 @@ typedef union YYSTYPE List_T *l; } /* Line 1529 of yacc.c. */ -#line 301 "Gmsh.tab.hpp" +#line 297 "Gmsh.tab.hpp" YYSTYPE; # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 diff --git a/Parser/Gmsh.y b/Parser/Gmsh.y index 6003ce7cb7a19f1a6d3ee40bf65d98d875928fee..ef1efdf7b25f21a27448d5bb3b9a9f4ead4ff7ea 100644 --- a/Parser/Gmsh.y +++ b/Parser/Gmsh.y @@ -90,7 +90,7 @@ void FixRelativePath(const char *in, char *out); %token tPoint tCircle tEllipse tLine tSphere tPolarSphere tSurface tSpline tVolume %token tCharacteristic tLength tParametric tElliptic %token tPlane tRuled tTransfinite tComplex tPhysical -%token tUsing tBump tProgression tPlugin +%token tUsing tPlugin %token tRotate tTranslate tSymmetry tDilate tExtrude %token tLoop tRecombine tSmoother tSplit tDelete tCoherence tIntersect %token tLayers tHole tAlias tAliasWithOptions @@ -101,8 +101,9 @@ void FixRelativePath(const char *in, char *out); %token tGMSH_MAJOR_VERSION tGMSH_MINOR_VERSION tGMSH_PATCH_VERSION %type <d> FExpr FExpr_Single -%type <v> VExpr VExpr_Single +%type <v> VExpr VExpr_Single TransfiniteType %type <i> NumericAffectation NumericIncrement PhysicalId +%type <i> TransfiniteArrangement %type <u> ColorExpr %type <c> StringExpr StringExprVar SendToFile %type <l> FExpr_Multi ListOfDouble RecursiveListOfDouble @@ -2435,124 +2436,114 @@ ExtrudeParameter : // T R A N S F I N I T E -Transfinite : - tTransfinite tLine ListOfDouble tAFFECT FExpr tEND +TransfiniteType : { - for(int i = 0; i < List_Nbr($3); i++){ - double d; - List_Read($3, i, &d); - int j = (int)fabs(d); - Curve *c = FindCurve(j); - if(!c) - yymsg(1, "Unknown curve %d", j); - else{ - c->Method = MESH_TRANSFINITE; - c->nbPointsTransfinite = ($5 > 2) ? (int)$5 : 2; - c->typeTransfinite = sign(d); - c->coeffTransfinite = 1.0; - } - } - List_Delete($3); + $$[0] = $$[1] = 1.; } - | tTransfinite tLine ListOfDouble tAFFECT FExpr tUsing tProgression FExpr tEND + | tUsing tSTRING FExpr { - for(int i = 0; i < List_Nbr($3); i++){ - double d; - List_Read($3, i, &d); - int j = (int)fabs(d); - Curve *c = FindCurve(j); - if(!c) - yymsg(1, "Unknown curve %d", j); - else{ - c->Method = MESH_TRANSFINITE; - c->nbPointsTransfinite = ($5 > 2) ? (int)$5 : 2; - c->typeTransfinite = sign(d); // Progresion : code 1 ou -1 - c->coeffTransfinite = fabs($8); - } + if(!strcmp($2, "Progression") || !strcmp($2, "Power")) + $$[0] = 1.; + else if(!strcmp($2, "Bump")) + $$[0] = 2.; + else{ + yymsg(0, "Unknown transfinite mesh type"); + $$[0] = 1.; } - List_Delete($3); + $$[1] = $3; + Free($2); + } +; + +TransfiniteArrangement : + { + $$ = -1; // left + } + | tSTRING + { + if(!strcmp($1, "Right")) + $$ = 1; + else if(!strcmp($1, "Left")) + $$ = -1; + else // alternated + $$ = 0; + Free($1); } - | tTransfinite tLine ListOfDouble tAFFECT FExpr tUsing tBump FExpr tEND +; + +Transfinite : + tTransfinite tLine ListOfDouble tAFFECT FExpr TransfiniteType tEND { + int type = (int)$6[0]; + double coef = fabs($6[1]); for(int i = 0; i < List_Nbr($3); i++){ double d; List_Read($3, i, &d); int j = (int)fabs(d); Curve *c = FindCurve(j); - if(!c) - yymsg(1, "Unknown curve %d", j); - else{ + if(c){ c->Method = MESH_TRANSFINITE; c->nbPointsTransfinite = ($5 > 2) ? (int)$5 : 2; - c->typeTransfinite = 2 * sign(d); // Bump : code 2 ou -2 - c->coeffTransfinite = fabs($8); + c->typeTransfinite = type * sign(d); + c->coeffTransfinite = coef; } + else{ + GEdge *ge = GModel::current()->getEdgeByTag(j); + if(ge){ + ge->meshAttributes.Method = MESH_TRANSFINITE; + ge->meshAttributes.nbPointsTransfinite = ($5 > 2) ? (int)$5 : 2; + ge->meshAttributes.typeTransfinite = sign(d); + ge->meshAttributes.coeffTransfinite = 1.; + } + else + yymsg(0, "Unknown line %d", j); + } } List_Delete($3); } - | tTransfinite tSurface '{' FExpr '}' tAFFECT ListOfDouble tEND + | tTransfinite tSurface '{' FExpr '}' tAFFECT ListOfDouble TransfiniteArrangement tEND { - Surface *s = FindSurface((int)$4); - if(!s) - yymsg(1, "Unknown surface %d", (int)$4); - else{ - s->Method = MESH_TRANSFINITE; - s->Recombine_Dir = -1; - int k = List_Nbr($7); - if(k != 3 && k != 4){ - yymsg(0, "Wrong definition of Transfinite Surface %d: " - "%d points instead of 3 or 4" , (int)$4, k); - } - else{ - List_Reset(s->TrsfPoints); - for(int i = 0; i < k; i++){ - double d; - List_Read($7, i, &d); - int j = (int)fabs(d); - Vertex *v = FindPoint(j); - if(!v) - yymsg(1, "Unknown point %d", j); - else - List_Add(s->TrsfPoints, &v); - } - } + int k = List_Nbr($7); + if(k != 3 && k != 4){ + yymsg(0, "Wrong definition of Transfinite Surface %d: " + "%d points instead of 3 or 4" , (int)$4, k); } - List_Delete($7); - } - | tTransfinite tSurface '{' FExpr '}' tAFFECT ListOfDouble tSTRING tEND - { - Surface *s = FindSurface((int)$4); - if(!s) - yymsg(1, "Unknown surface %d", (int)$4); else{ - s->Method = MESH_TRANSFINITE; - int k = List_Nbr($7); - if(k != 3 && k != 4){ - yymsg(0, "Wrong definition of Transfinite Surface %d: " - "%d points instead of 3 or 4" , (int)$4, k); - } - else{ + Surface *s = FindSurface((int)$4); + if(s){ + s->Method = MESH_TRANSFINITE; + s->Recombine_Dir = $8; List_Reset(s->TrsfPoints); - if (!strcmp($8, "Right")) - s->Recombine_Dir = 1; - else if (!strcmp($8, "Left")) - s->Recombine_Dir = -1; - else - s->Recombine_Dir = 0; for(int i = 0; i < k; i++){ double d; List_Read($7, i, &d); - int j = (int)fabs(d); - Vertex *v = FindPoint(j); - if(!v) - yymsg(1, "Unknown point %d", j); - else + Vertex *v = FindPoint((int)fabs(d)); + if(v) List_Add(s->TrsfPoints, &v); + else + yymsg(0, "Unknown point %d", (int)fabs(d)); } } + else{ + GFace *gf = GModel::current()->getFaceByTag((int)$4); + if(gf){ + gf->meshAttributes.Method = MESH_TRANSFINITE; + gf->meshAttributes.transfiniteArrangement = $8; + for(int i = 0; i < k; i++){ + double d; + List_Read($7, i, &d); + GVertex *gv = GModel::current()->getVertexByTag((int)fabs(d)); + if(gv) + gf->meshAttributes.corners.push_back(gv); + else + yymsg(0, "Unknown point %d", (int)fabs(d)); + } + } + else + yymsg(0, "Unknown surface %d", (int)$4); + } } List_Delete($7); - Free($8); } | tElliptic tSurface '{' FExpr '}' tAFFECT ListOfDouble tEND { @@ -2561,28 +2552,43 @@ Transfinite : } | tTransfinite tVolume '{' FExpr '}' tAFFECT ListOfDouble tEND { - Volume *v = FindVolume((int)$4); - if(!v) - yymsg(1, "Unknown volume %d", (int)$4); + int k = List_Nbr($7); + if(k != 6 && k != 8){ + yymsg(0, "Wrong definition of Transfinite Volume %d: " + "%d points instead of 6 or 8" , (int)$4, k); + } else{ - v->Method = MESH_TRANSFINITE; - int k = List_Nbr($7); - if(k != 6 && k != 8) - yymsg(0, "Wrong definition of Transfinite Volume %d: " - "%d points instead of 6 or 8" , (int)$4, k); - else{ + Volume *v = FindVolume((int)$4); + if(v){ + v->Method = MESH_TRANSFINITE; List_Reset(v->TrsfPoints); for(int i = 0; i < k; i++){ double d; List_Read($7, i, &d); - int j = (int)fabs(d); - Vertex *vert = FindPoint(j); - if(!vert) - yymsg(1, "Unknown point %d", j); - else + Vertex *vert = FindPoint((int)fabs(d)); + if(vert) List_Add(v->TrsfPoints, &vert); + else + yymsg(0, "Unknown point %d", (int)fabs(d)); } } + else{ + GRegion *gr = GModel::current()->getRegionByTag((int)$4); + if(gr){ + gr->meshAttributes.Method = MESH_TRANSFINITE; + for(int i = 0; i < k; i++){ + double d; + List_Read($7, i, &d); + GVertex *gv = GModel::current()->getVertexByTag((int)fabs(d)); + if(gv) + gr->meshAttributes.corners.push_back(gv); + else + yymsg(0, "Unknown point %d", (int)fabs(d)); + } + } + else + yymsg(0, "Unknown volume %d", (int)$4); + } } List_Delete($7); } @@ -2597,6 +2603,15 @@ Transfinite : s->Recombine = 1; s->RecombineAngle = $5; } + else{ + GFace *gf = GModel::current()->getFaceByTag(j); + if(gf){ + gf->meshAttributes.recombine = 1; + gf->meshAttributes.recombineAngle = $5; + } + else + yymsg(1, "Unknown surface %d", j); + } } List_Delete($3); } @@ -2610,6 +2625,13 @@ Transfinite : if(s){ s->Recombine = 1; } + else{ + GFace *gf = GModel::current()->getFaceByTag(j); + if(gf) + gf->meshAttributes.recombine = 1; + else + yymsg(1, "Unknown surface %d", j); + } } List_Delete($3); } @@ -2620,7 +2642,16 @@ Transfinite : List_Read($3, i, &d); int j = (int)d; Surface *s = FindSurface(j); - if(s) s->TransfiniteSmoothing = (int)$5; + if(s){ + s->TransfiniteSmoothing = (int)$5; + } + else{ + GFace *gf = GModel::current()->getFaceByTag(j); + if(gf) + gf->meshAttributes.transfiniteSmoothing = (int)$5; + else + yymsg(1, "Unknown surface %d", (int)$5); + } } List_Delete($3); } @@ -2633,14 +2664,48 @@ Embedding : tPoint '{' RecursiveListOfDouble '}' tIn tSurface '{' FExpr '}' tEND { Surface *s = FindSurface((int)$8); - if(s) + if(s){ setSurfaceEmbeddedPoints(s, $3); + } + else{ + GFace *gf = GModel::current()->getFaceByTag((int)$8); + if(gf){ + for(int i = 0; i < List_Nbr($3); i++){ + int iPoint; + List_Read($3, i, &iPoint); + GVertex *gv = GModel::current()->getVertexByTag(iPoint); + if(gv) + gf->addEmbeddedVertex(gv); + else + yymsg(0, "Unknown point %d", iPoint); + } + } + else + yymsg(0, "Unknown surface %d", (int)$8); + } } | tLine '{' RecursiveListOfDouble '}' tIn tSurface '{' FExpr '}' tEND { Surface *s = FindSurface((int)$8); - if(s) + if(s){ setSurfaceEmbeddedCurves(s, $3); + } + else{ + GFace *gf = GModel::current()->getFaceByTag((int)$8); + if(gf){ + for(int i = 0; i < List_Nbr($3); i++){ + int iCurve; + List_Read($3, i, &iCurve); + GEdge *ge = GModel::current()->getEdgeByTag(iCurve); + if(ge) + gf->addEmbeddedEdge(ge); + else + yymsg(0, "Unknown line %d", iCurve); + } + } + else + yymsg(0, "Unknown surface %d", (int)$8); + } } | tLine '{' RecursiveListOfDouble '}' tIn tVolume '{' FExpr '}' tEND { diff --git a/Parser/Gmsh.yy.cpp b/Parser/Gmsh.yy.cpp index 7d059234b6139bfac98e9d710737bcfe286251f6..ab33a065bc94d1df3ee0aefd8442710838d80156 100644 --- a/Parser/Gmsh.yy.cpp +++ b/Parser/Gmsh.yy.cpp @@ -364,8 +364,8 @@ static void yy_fatal_error (yyconst char msg[] ); *yy_cp = '\0'; \ (yy_c_buf_p) = yy_cp; -#define YY_NUM_RULES 144 -#define YY_END_OF_BUFFER 145 +#define YY_NUM_RULES 141 +#define YY_END_OF_BUFFER 142 /* This struct is not used in this scanner, but its presence is necessary. */ struct yy_trans_info @@ -373,75 +373,72 @@ struct yy_trans_info flex_int32_t yy_verify; flex_int32_t yy_nxt; }; -static yyconst flex_int16_t yy_accept[603] = +static yyconst flex_int16_t yy_accept[588] = { 0, - 0, 0, 145, 143, 1, 1, 143, 5, 143, 6, - 143, 143, 143, 143, 143, 138, 21, 2, 143, 16, - 143, 142, 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 143, 28, 24, 19, 25, 17, 26, - 18, 0, 140, 3, 4, 20, 139, 138, 0, 29, - 27, 30, 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 84, 83, 142, 142, - - 142, 142, 142, 142, 142, 142, 142, 142, 142, 100, - 142, 142, 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 128, 129, 142, 142, 142, - 142, 142, 142, 142, 23, 22, 0, 139, 0, 0, - 141, 142, 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, 142, 50, - 142, 142, 142, 142, 142, 142, 142, 61, 142, 142, - 142, 142, 142, 74, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 91, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, 142, 142, - - 142, 142, 142, 142, 142, 142, 142, 116, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 134, 142, 142, - 142, 142, 142, 0, 140, 0, 0, 139, 31, 142, - 142, 142, 142, 35, 37, 142, 142, 142, 42, 57, - 142, 45, 142, 142, 142, 142, 142, 142, 142, 49, - 142, 142, 60, 142, 142, 142, 142, 69, 142, 70, - 142, 142, 73, 142, 142, 142, 80, 81, 142, 142, - 142, 142, 142, 142, 89, 142, 90, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, 142, 142, - 112, 142, 142, 142, 142, 126, 117, 142, 142, 142, - - 142, 115, 142, 142, 142, 142, 142, 130, 133, 142, - 142, 142, 142, 10, 15, 9, 8, 142, 12, 14, - 0, 139, 33, 142, 142, 142, 39, 142, 142, 142, - 142, 142, 142, 142, 53, 142, 142, 142, 142, 142, - 142, 142, 67, 142, 142, 71, 72, 142, 142, 142, - 82, 142, 142, 87, 142, 142, 92, 142, 142, 142, - 97, 98, 142, 142, 101, 142, 102, 142, 103, 142, - 142, 142, 142, 142, 111, 142, 142, 142, 120, 142, - 142, 142, 142, 142, 142, 135, 142, 136, 142, 11, - 142, 13, 142, 32, 36, 38, 142, 41, 142, 142, - - 142, 46, 142, 142, 142, 142, 142, 58, 59, 142, - 142, 66, 142, 142, 142, 142, 142, 142, 142, 142, - 93, 88, 142, 142, 94, 142, 142, 108, 142, 107, - 142, 142, 113, 110, 142, 118, 119, 142, 123, 142, - 142, 142, 142, 142, 142, 137, 7, 142, 40, 43, - 142, 142, 142, 142, 142, 48, 52, 142, 63, 142, - 142, 142, 64, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 142, 142, 122, 142, - 142, 121, 142, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 62, 65, 142, 75, 142, 142, 142, 76, - - 142, 142, 95, 96, 142, 99, 142, 142, 142, 114, - 142, 142, 127, 142, 142, 142, 142, 142, 142, 47, - 142, 142, 68, 142, 142, 142, 142, 85, 142, 142, - 142, 109, 124, 142, 142, 132, 142, 142, 56, 142, - 54, 142, 142, 142, 142, 142, 105, 142, 142, 142, - 142, 142, 44, 142, 55, 142, 142, 142, 142, 106, - 104, 125, 131, 142, 142, 142, 142, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 51, 142, 142, 142, - 142, 142, 142, 142, 142, 142, 34, 142, 142, 142, - 142, 142, 142, 142, 142, 77, 78, 79, 142, 142, - - 86, 0 + 0, 0, 142, 140, 1, 1, 140, 5, 140, 6, + 140, 140, 140, 140, 140, 135, 21, 2, 140, 16, + 140, 139, 139, 139, 139, 139, 139, 139, 139, 139, + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, + 139, 139, 139, 140, 28, 24, 19, 25, 17, 26, + 18, 0, 137, 3, 4, 20, 136, 135, 0, 29, + 27, 30, 139, 139, 139, 139, 139, 139, 139, 139, + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, + 139, 139, 139, 139, 139, 83, 82, 139, 139, 139, + + 139, 139, 139, 139, 139, 139, 139, 139, 99, 139, + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, + 139, 139, 139, 139, 125, 126, 139, 139, 139, 139, + 139, 139, 139, 23, 22, 0, 136, 0, 0, 138, + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, + 139, 139, 139, 139, 139, 139, 139, 49, 139, 139, + 139, 139, 139, 139, 139, 60, 139, 139, 139, 139, + 139, 73, 139, 139, 139, 139, 139, 139, 139, 139, + 139, 139, 139, 139, 90, 139, 139, 139, 139, 139, + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, + + 139, 139, 139, 113, 139, 139, 139, 139, 139, 139, + 139, 139, 139, 131, 139, 139, 139, 139, 139, 0, + 137, 0, 0, 136, 31, 139, 139, 139, 139, 35, + 37, 139, 139, 139, 56, 139, 44, 139, 139, 139, + 139, 139, 139, 139, 48, 139, 139, 59, 139, 139, + 139, 139, 68, 139, 69, 139, 139, 72, 139, 139, + 139, 79, 80, 139, 139, 139, 139, 139, 139, 88, + 139, 89, 139, 139, 139, 139, 139, 139, 139, 139, + 139, 139, 139, 109, 139, 139, 139, 139, 123, 114, + 139, 139, 139, 139, 112, 139, 139, 139, 139, 139, + + 127, 130, 139, 139, 139, 139, 10, 15, 9, 8, + 139, 12, 14, 0, 136, 33, 139, 139, 139, 39, + 139, 139, 139, 139, 139, 139, 139, 52, 139, 139, + 139, 139, 139, 139, 139, 66, 139, 139, 70, 71, + 139, 139, 139, 81, 139, 139, 86, 139, 139, 91, + 139, 139, 139, 96, 97, 139, 139, 100, 139, 101, + 139, 139, 139, 139, 139, 108, 139, 139, 139, 117, + 139, 139, 139, 139, 139, 139, 132, 139, 133, 139, + 11, 139, 13, 139, 32, 36, 38, 139, 41, 139, + 139, 139, 45, 139, 139, 139, 139, 139, 57, 58, + + 139, 139, 65, 139, 139, 139, 139, 139, 139, 139, + 139, 92, 87, 139, 139, 93, 139, 139, 105, 139, + 104, 139, 110, 107, 139, 115, 116, 139, 120, 139, + 139, 139, 139, 139, 139, 134, 7, 139, 40, 42, + 139, 139, 139, 139, 139, 47, 51, 139, 62, 139, + 139, 139, 63, 139, 139, 139, 139, 139, 139, 139, + 139, 139, 139, 139, 139, 139, 139, 119, 139, 139, + 118, 139, 139, 139, 139, 139, 139, 139, 139, 139, + 139, 61, 64, 139, 74, 139, 139, 139, 75, 139, + 139, 94, 95, 139, 98, 139, 139, 111, 139, 139, + + 124, 139, 139, 139, 139, 139, 139, 46, 139, 139, + 67, 139, 139, 139, 139, 84, 139, 139, 106, 121, + 139, 139, 129, 139, 139, 55, 139, 53, 139, 139, + 139, 139, 139, 102, 139, 139, 139, 139, 43, 139, + 54, 139, 139, 139, 139, 103, 122, 128, 139, 139, + 139, 139, 139, 139, 139, 139, 139, 139, 139, 139, + 139, 50, 139, 139, 139, 139, 139, 139, 139, 139, + 139, 34, 139, 139, 139, 139, 139, 139, 139, 139, + 76, 77, 78, 139, 139, 85, 0 } ; static yyconst flex_int32_t yy_ec[256] = @@ -488,149 +485,143 @@ static yyconst flex_int32_t yy_meta[73] = 2, 1 } ; -static yyconst flex_int16_t yy_base[604] = +static yyconst flex_int16_t yy_base[589] = { 0, - 0, 0, 724, 725, 725, 725, 702, 725, 716, 725, - 700, 64, 65, 63, 75, 77, 725, 725, 699, 698, - 697, 46, 48, 65, 50, 58, 74, 46, 63, 48, - 0, 658, 75, 98, 650, 652, 90, 91, 94, 146, - 650, 653, 661, 639, 725, 725, 725, 725, 725, 725, - 725, 699, 152, 725, 725, 725, 157, 172, 181, 725, - 725, 725, 0, 649, 653, 658, 651, 658, 643, 632, - 636, 643, 41, 645, 652, 635, 147, 640, 639, 648, - 637, 643, 643, 155, 643, 639, 629, 628, 624, 627, - 644, 619, 633, 625, 620, 638, 0, 614, 618, 607, - - 617, 616, 86, 643, 623, 609, 621, 607, 599, 0, - 116, 86, 120, 609, 127, 602, 609, 605, 605, 603, - 158, 599, 598, 597, 601, 0, 0, 623, 598, 606, - 608, 599, 596, 584, 725, 725, 215, 220, 229, 235, - 240, 587, 603, 177, 590, 589, 590, 591, 586, 583, - 586, 584, 584, 577, 590, 587, 577, 152, 573, 581, - 583, 586, 564, 576, 150, 573, 564, 0, 565, 563, - 569, 565, 574, 0, 574, 592, 577, 569, 568, 558, - 590, 565, 550, 563, 560, 561, 597, 549, 563, 542, - 559, 555, 558, 540, 544, 549, 542, 553, 548, 539, - - 544, 546, 535, 528, 546, 541, 523, 536, 529, 537, - 532, 531, 520, 234, 532, 525, 555, 527, 533, 520, - 519, 511, 212, 267, 272, 281, 286, 291, 0, 512, - 515, 519, 526, 0, 557, 516, 519, 519, 0, 0, - 502, 0, 520, 509, 502, 501, 508, 505, 511, 0, - 495, 494, 0, 497, 497, 504, 500, 0, 488, 0, - 503, 489, 0, 486, 504, 502, 0, 0, 483, 507, - 483, 481, 481, 478, 0, 529, 0, 186, 484, 476, - 476, 480, 482, 485, 480, 469, 470, 469, 466, 467, - 0, 471, 465, 462, 476, 0, 0, 460, 461, 201, - - 464, 0, 475, 458, 469, 472, 467, 0, 0, 447, - 452, 462, 456, 0, 0, 456, 0, 461, 454, 0, - 296, 301, 465, 445, 449, 448, 0, 447, 442, 449, - 446, 453, 450, 449, 457, 439, 446, 441, 444, 443, - 176, 430, 0, 442, 441, 0, 0, 435, 179, 432, - 0, 450, 423, 0, 422, 431, 0, 437, 428, 422, - 0, 0, 430, 431, 0, 420, 0, 437, 0, 425, - 425, 427, 415, 422, 0, 418, 420, 419, 0, 404, - 403, 416, 409, 416, 399, 0, 206, 0, 412, 0, - 409, 0, 406, 0, 0, 445, 408, 0, 399, 400, - - 391, 0, 396, 407, 402, 383, 392, 0, 0, 268, - 395, 0, 394, 397, 387, 239, 423, 379, 407, 392, - 0, 0, 383, 370, 0, 375, 392, 0, 377, 0, - 373, 381, 0, 0, 384, 0, 0, 382, 0, 381, - 385, 380, 367, 374, 381, 0, 0, 362, 0, 0, - 373, 385, 373, 374, 374, 0, 0, 374, 0, 356, - 370, 371, 0, 358, 384, 379, 372, 362, 378, 362, - 354, 358, 345, 350, 352, 341, 345, 340, 0, 347, - 336, 0, 330, 340, 333, 343, 372, 335, 331, 342, - 335, 326, 0, 0, 331, 0, 352, 351, 362, 0, - - 363, 320, 0, 0, 329, 0, 332, 327, 330, 0, - 311, 324, 0, 323, 326, 339, 315, 316, 318, 0, - 321, 320, 0, 330, 329, 338, 325, 0, 317, 302, - 304, 0, 0, 296, 297, 0, 300, 291, 0, 295, - 0, 294, 311, 310, 309, 323, 0, 302, 293, 300, - 299, 284, 0, 283, 0, 303, 302, 301, 307, 0, - 0, 0, 0, 288, 287, 314, 313, 312, 302, 277, - 287, 295, 294, 293, 286, 272, 0, 289, 288, 287, - 286, 262, 294, 293, 291, 296, 0, 283, 256, 255, - 248, 241, 232, 231, 238, 0, 0, 0, 187, 75, - - 0, 725, 80 + 0, 0, 709, 710, 710, 710, 687, 710, 701, 710, + 685, 64, 65, 63, 75, 77, 710, 710, 684, 683, + 682, 46, 48, 65, 50, 58, 74, 46, 63, 48, + 0, 643, 75, 76, 635, 637, 90, 91, 94, 146, + 635, 638, 646, 624, 710, 710, 710, 710, 710, 710, + 710, 684, 152, 710, 710, 710, 157, 172, 181, 710, + 710, 710, 0, 634, 638, 643, 636, 643, 628, 617, + 621, 41, 631, 638, 621, 147, 626, 625, 634, 623, + 629, 629, 155, 629, 625, 615, 614, 610, 613, 630, + 605, 619, 611, 606, 624, 0, 600, 604, 593, 603, + + 602, 86, 629, 609, 595, 607, 593, 585, 0, 116, + 86, 599, 594, 127, 587, 594, 590, 590, 588, 158, + 584, 583, 582, 586, 0, 0, 608, 583, 591, 593, + 584, 581, 569, 710, 710, 215, 220, 229, 235, 240, + 572, 588, 177, 575, 574, 575, 576, 571, 572, 570, + 570, 563, 576, 573, 563, 152, 559, 567, 569, 572, + 550, 562, 147, 559, 550, 0, 551, 549, 555, 551, + 560, 0, 560, 578, 563, 555, 554, 544, 576, 551, + 536, 549, 546, 547, 583, 535, 549, 528, 545, 541, + 544, 526, 530, 535, 528, 539, 526, 534, 523, 516, + + 534, 529, 511, 524, 517, 525, 520, 519, 508, 234, + 520, 513, 543, 515, 521, 508, 507, 499, 212, 267, + 272, 281, 286, 291, 0, 500, 503, 507, 514, 0, + 545, 504, 507, 507, 0, 490, 0, 508, 497, 490, + 489, 496, 493, 499, 0, 483, 482, 0, 485, 485, + 492, 488, 0, 476, 0, 491, 477, 0, 474, 492, + 490, 0, 0, 471, 495, 471, 469, 469, 466, 0, + 517, 0, 140, 472, 464, 464, 468, 470, 473, 468, + 457, 458, 455, 0, 461, 455, 452, 466, 0, 0, + 450, 451, 201, 454, 0, 465, 448, 459, 462, 457, + + 0, 0, 437, 442, 452, 446, 0, 0, 446, 0, + 451, 444, 0, 296, 301, 455, 435, 439, 438, 0, + 437, 432, 439, 436, 443, 440, 439, 447, 429, 436, + 431, 434, 433, 162, 420, 0, 432, 431, 0, 0, + 425, 179, 422, 0, 440, 413, 0, 412, 421, 0, + 427, 418, 412, 0, 0, 420, 421, 0, 410, 0, + 427, 415, 418, 406, 413, 0, 409, 411, 410, 0, + 395, 394, 407, 400, 407, 390, 0, 206, 0, 403, + 0, 400, 0, 397, 0, 0, 436, 399, 0, 390, + 391, 382, 0, 387, 398, 393, 374, 383, 0, 0, + + 103, 386, 0, 385, 388, 378, 239, 414, 370, 398, + 383, 0, 0, 374, 361, 0, 366, 383, 0, 368, + 0, 373, 0, 0, 376, 0, 0, 374, 0, 373, + 377, 372, 359, 366, 373, 0, 0, 354, 0, 0, + 365, 377, 365, 366, 366, 0, 0, 366, 0, 348, + 362, 363, 0, 350, 376, 371, 364, 354, 370, 354, + 346, 350, 337, 342, 344, 338, 333, 0, 340, 329, + 0, 323, 333, 326, 336, 365, 328, 324, 335, 328, + 319, 0, 0, 324, 0, 345, 344, 355, 0, 356, + 313, 0, 0, 322, 0, 325, 324, 0, 305, 318, + + 0, 317, 320, 333, 309, 310, 312, 0, 315, 314, + 0, 324, 323, 332, 319, 0, 311, 296, 0, 0, + 291, 292, 0, 295, 286, 0, 290, 0, 289, 306, + 305, 304, 318, 0, 297, 296, 295, 280, 0, 279, + 0, 299, 298, 297, 303, 0, 0, 0, 284, 283, + 310, 309, 308, 298, 273, 283, 291, 290, 289, 282, + 268, 0, 285, 284, 283, 282, 258, 290, 289, 288, + 268, 0, 255, 241, 240, 238, 231, 229, 205, 213, + 0, 0, 0, 187, 75, 0, 710, 80 } ; -static yyconst flex_int16_t yy_def[604] = +static yyconst flex_int16_t yy_def[589] = { 0, - 602, 1, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 603, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 603, 602, 602, 602, 602, 602, 602, - 602, 603, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 602, 602, 602, 602, 602, 603, 603, - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - 602, 602, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - 603, 603, 603, 603, 603, 603, 603, 603, 603, 603, - - 603, 0, 602 + 587, 1, 587, 587, 587, 587, 587, 587, 587, 587, + 587, 587, 587, 587, 587, 587, 587, 587, 587, 587, + 587, 588, 588, 588, 588, 588, 588, 588, 588, 588, + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + 588, 588, 588, 587, 587, 587, 587, 587, 587, 587, + 587, 587, 587, 587, 587, 587, 587, 587, 587, 587, + 587, 587, 588, 588, 588, 588, 588, 588, 588, 588, + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + 588, 588, 588, 587, 587, 587, 587, 587, 587, 587, + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + 588, 588, 588, 588, 588, 588, 588, 588, 588, 587, + 587, 587, 587, 587, 588, 588, 588, 588, 588, 588, + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + 588, 588, 588, 587, 587, 588, 588, 588, 588, 588, + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + 588, 588, 588, 588, 588, 588, 588, 588, 588, 588, + 588, 588, 588, 588, 588, 588, 0, 587 } ; -static yyconst flex_int16_t yy_nxt[798] = +static yyconst flex_int16_t yy_nxt[783] = { 0, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 16, 16, 16, 16, 17, 18, 19, @@ -640,89 +631,87 @@ static yyconst flex_int16_t yy_nxt[798] = 31, 31, 31, 31, 31, 31, 31, 31, 43, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 31, 44, 48, 52, 50, 53, 53, 53, 53, 53, - 91, 63, 54, 96, 49, 51, 55, 57, 69, 58, - 58, 58, 58, 58, 64, 56, 92, 151, 70, 97, - - 78, 601, 65, 59, 79, 152, 98, 71, 66, 67, - 68, 73, 80, 72, 81, 74, 82, 93, 75, 76, - 85, 100, 94, 83, 77, 101, 84, 59, 86, 102, - 87, 88, 95, 89, 103, 104, 108, 114, 187, 90, - 197, 115, 198, 109, 110, 188, 111, 118, 119, 112, - 116, 120, 113, 199, 121, 122, 117, 105, 123, 124, - 126, 127, 195, 125, 53, 53, 53, 53, 53, 138, - 138, 138, 138, 138, 200, 203, 128, 255, 137, 201, - 256, 196, 57, 139, 58, 58, 58, 58, 58, 140, - 140, 204, 129, 141, 141, 141, 141, 141, 59, 247, - - 156, 231, 137, 157, 158, 130, 159, 139, 131, 167, - 160, 210, 248, 416, 211, 168, 417, 232, 233, 169, - 212, 600, 59, 224, 224, 358, 359, 225, 225, 225, - 225, 225, 138, 138, 138, 138, 138, 227, 227, 410, - 411, 228, 228, 228, 228, 228, 226, 141, 141, 141, - 141, 141, 141, 141, 141, 141, 141, 444, 303, 378, - 314, 465, 445, 315, 599, 379, 598, 597, 316, 466, - 226, 304, 317, 305, 318, 319, 596, 595, 320, 225, - 225, 225, 225, 225, 225, 225, 225, 225, 225, 321, - 321, 594, 593, 322, 322, 322, 322, 322, 228, 228, - - 228, 228, 228, 228, 228, 228, 228, 228, 322, 322, - 322, 322, 322, 322, 322, 322, 322, 322, 459, 592, - 591, 590, 460, 589, 588, 587, 586, 585, 584, 583, - 582, 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, 548, 547, 546, 545, 544, 543, - 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, 464, 463, 462, 461, - 458, 457, 456, 455, 454, 453, 452, 451, 450, 449, - 448, 447, 446, 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, 415, - 414, 413, 412, 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, 377, 376, 375, 374, 373, 372, 371, - 370, 369, 368, 367, 366, 365, 364, 363, 362, 361, - 360, 357, 356, 355, 354, 353, 352, 351, 350, 349, - 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, 313, 312, 311, 310, - 309, 308, 307, 306, 302, 301, 300, 299, 298, 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, - 254, 253, 252, 251, 250, 249, 246, 245, 244, 243, - 242, 241, 240, 239, 238, 237, 236, 235, 234, 230, - 229, 223, 222, 221, 220, 219, 218, 217, 216, 215, - 214, 213, 209, 208, 207, 206, 205, 202, 194, 193, - 192, 191, 190, 189, 186, 185, 184, 183, 182, 181, - 180, 179, 178, 177, 176, 175, 174, 173, 172, 171, - 170, 166, 165, 164, 163, 162, 161, 155, 154, 153, - - 150, 149, 148, 147, 146, 145, 144, 143, 142, 136, - 135, 134, 133, 132, 107, 106, 99, 62, 61, 60, - 47, 46, 45, 602, 3, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602 - + 90, 63, 54, 95, 49, 51, 55, 57, 69, 58, + 58, 58, 58, 58, 64, 56, 91, 149, 70, 96, + + 77, 586, 65, 59, 78, 150, 97, 71, 66, 67, + 68, 72, 79, 103, 80, 73, 81, 92, 74, 75, + 84, 99, 93, 82, 76, 100, 83, 59, 85, 101, + 86, 87, 94, 88, 102, 104, 107, 113, 185, 89, + 195, 114, 196, 108, 109, 186, 110, 117, 118, 111, + 115, 119, 112, 449, 120, 121, 116, 450, 122, 123, + 125, 126, 193, 124, 53, 53, 53, 53, 53, 137, + 137, 137, 137, 137, 250, 199, 127, 251, 136, 351, + 352, 194, 57, 138, 58, 58, 58, 58, 58, 139, + 139, 200, 128, 140, 140, 140, 140, 140, 59, 242, + + 154, 227, 136, 155, 156, 129, 157, 138, 130, 165, + 158, 206, 243, 407, 207, 166, 408, 228, 229, 167, + 208, 585, 59, 220, 220, 401, 402, 221, 221, 221, + 221, 221, 137, 137, 137, 137, 137, 223, 223, 584, + 583, 224, 224, 224, 224, 224, 222, 140, 140, 140, + 140, 140, 140, 140, 140, 140, 140, 434, 296, 369, + 307, 455, 435, 308, 582, 370, 581, 580, 309, 456, + 222, 297, 310, 298, 311, 312, 579, 578, 313, 221, + 221, 221, 221, 221, 221, 221, 221, 221, 221, 314, + 314, 577, 576, 315, 315, 315, 315, 315, 224, 224, + + 224, 224, 224, 224, 224, 224, 224, 224, 315, 315, + 315, 315, 315, 315, 315, 315, 315, 315, 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, 548, 547, 546, 545, 544, + 543, 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, 454, 453, 452, + 451, 448, 447, 446, 445, 444, 443, 442, 441, 440, + 439, 438, 437, 436, 433, 432, 431, 430, 429, 428, + 427, 426, 425, 424, 423, 422, 421, 420, 419, 418, + 417, 416, 415, 414, 413, 412, 411, 410, 409, 406, + 405, 404, 403, 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, 368, 367, 366, 365, 364, 363, 362, + 361, 360, 359, 358, 357, 356, 355, 354, 353, 350, + 349, 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, 320, + 319, 318, 317, 316, 306, 305, 304, 303, 302, 301, + 300, 299, 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, 249, 248, 247, 246, + 245, 244, 241, 240, 239, 238, 237, 236, 235, 234, + 233, 232, 231, 230, 226, 225, 219, 218, 217, 216, + 215, 214, 213, 212, 211, 210, 209, 205, 204, 203, + 202, 201, 198, 197, 192, 191, 190, 189, 188, 187, + 184, 183, 182, 181, 180, 179, 178, 177, 176, 175, + 174, 173, 172, 171, 170, 169, 168, 164, 163, 162, + 161, 160, 159, 153, 152, 151, 148, 147, 146, 145, + 144, 143, 142, 141, 135, 134, 133, 132, 131, 106, + + 105, 98, 62, 61, 60, 47, 46, 45, 587, 3, + 587, 587, 587, 587, 587, 587, 587, 587, 587, 587, + 587, 587, 587, 587, 587, 587, 587, 587, 587, 587, + 587, 587, 587, 587, 587, 587, 587, 587, 587, 587, + 587, 587, 587, 587, 587, 587, 587, 587, 587, 587, + 587, 587, 587, 587, 587, 587, 587, 587, 587, 587, + 587, 587, 587, 587, 587, 587, 587, 587, 587, 587, + 587, 587, 587, 587, 587, 587, 587, 587, 587, 587, + 587, 587 } ; -static yyconst flex_int16_t yy_chk[798] = +static yyconst flex_int16_t yy_chk[783] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @@ -732,86 +721,84 @@ static yyconst flex_int16_t yy_chk[798] = 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 12, 14, 13, 14, 14, 14, 14, 14, - 28, 603, 15, 30, 12, 13, 15, 16, 23, 16, - 16, 16, 16, 16, 22, 15, 28, 73, 23, 30, + 28, 588, 15, 30, 12, 13, 15, 16, 23, 16, + 16, 16, 16, 16, 22, 15, 28, 72, 23, 30, - 25, 600, 22, 16, 25, 73, 30, 23, 22, 22, - 22, 24, 25, 23, 26, 24, 26, 29, 24, 24, + 25, 585, 22, 16, 25, 72, 30, 23, 22, 22, + 22, 24, 25, 34, 26, 24, 26, 29, 24, 24, 27, 33, 29, 26, 24, 33, 26, 16, 27, 33, - 27, 27, 29, 27, 33, 34, 37, 38, 103, 27, - 112, 38, 112, 37, 37, 103, 37, 39, 39, 37, - 38, 39, 37, 112, 39, 39, 38, 34, 39, 39, - 40, 40, 111, 39, 53, 53, 53, 53, 53, 57, - 57, 57, 57, 57, 113, 115, 40, 165, 53, 113, - 165, 111, 58, 57, 58, 58, 58, 58, 58, 59, - 59, 115, 40, 59, 59, 59, 59, 59, 58, 158, - - 77, 144, 53, 77, 77, 40, 77, 57, 40, 84, - 77, 121, 158, 349, 121, 84, 349, 144, 144, 84, - 121, 599, 58, 137, 137, 278, 278, 137, 137, 137, - 137, 137, 138, 138, 138, 138, 138, 139, 139, 341, - 341, 139, 139, 139, 139, 139, 138, 140, 140, 140, - 140, 140, 141, 141, 141, 141, 141, 387, 214, 300, - 223, 416, 387, 223, 595, 300, 594, 593, 223, 416, - 138, 214, 223, 214, 223, 223, 592, 591, 223, 224, - 224, 224, 224, 224, 225, 225, 225, 225, 225, 226, - 226, 590, 589, 226, 226, 226, 226, 226, 227, 227, - - 227, 227, 227, 228, 228, 228, 228, 228, 321, 321, - 321, 321, 321, 322, 322, 322, 322, 322, 410, 588, - 586, 585, 410, 584, 583, 582, 581, 580, 579, 578, - 576, 575, 574, 573, 572, 571, 570, 569, 568, 567, - 566, 565, 564, 559, 558, 557, 556, 554, 552, 551, - 550, 549, 548, 546, 545, 544, 543, 542, 540, 538, - 537, 535, 534, 531, 530, 529, 527, 526, 525, 524, - 522, 521, 519, 518, 517, 516, 515, 514, 512, 511, - 509, 508, 507, 505, 502, 501, 499, 498, 497, 495, - 492, 491, 490, 489, 488, 487, 486, 485, 484, 483, - - 481, 480, 478, 477, 476, 475, 474, 473, 472, 471, - 470, 469, 468, 467, 466, 465, 464, 462, 461, 460, - 458, 455, 454, 453, 452, 451, 448, 445, 444, 443, - 442, 441, 440, 438, 435, 432, 431, 429, 427, 426, - 424, 423, 420, 419, 418, 417, 415, 414, 413, 411, - 407, 406, 405, 404, 403, 401, 400, 399, 397, 396, - 393, 391, 389, 385, 384, 383, 382, 381, 380, 378, - 377, 376, 374, 373, 372, 371, 370, 368, 366, 364, - 363, 360, 359, 358, 356, 355, 353, 352, 350, 348, - 345, 344, 342, 340, 339, 338, 337, 336, 335, 334, - - 333, 332, 331, 330, 329, 328, 326, 325, 324, 323, - 319, 318, 316, 313, 312, 311, 310, 307, 306, 305, - 304, 303, 301, 299, 298, 295, 294, 293, 292, 290, - 289, 288, 287, 286, 285, 284, 283, 282, 281, 280, - 279, 276, 274, 273, 272, 271, 270, 269, 266, 265, - 264, 262, 261, 259, 257, 256, 255, 254, 252, 251, - 249, 248, 247, 246, 245, 244, 243, 241, 238, 237, - 236, 235, 233, 232, 231, 230, 222, 221, 220, 219, - 218, 217, 216, 215, 213, 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, 183, 182, 181, 180, 179, 178, - 177, 176, 175, 173, 172, 171, 170, 169, 167, 166, - 164, 163, 162, 161, 160, 159, 157, 156, 155, 154, - 153, 152, 151, 150, 149, 148, 147, 146, 145, 143, - 142, 134, 133, 132, 131, 130, 129, 128, 125, 124, - 123, 122, 120, 119, 118, 117, 116, 114, 109, 108, - 107, 106, 105, 104, 102, 101, 100, 99, 98, 96, - 95, 94, 93, 92, 91, 90, 89, 88, 87, 86, - 85, 83, 82, 81, 80, 79, 78, 76, 75, 74, - - 72, 71, 70, 69, 68, 67, 66, 65, 64, 52, - 44, 43, 42, 41, 36, 35, 32, 21, 20, 19, - 11, 9, 7, 3, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602, 602, 602, 602, - 602, 602, 602, 602, 602, 602, 602 - + 27, 27, 29, 27, 33, 34, 37, 38, 102, 27, + 111, 38, 111, 37, 37, 102, 37, 39, 39, 37, + 38, 39, 37, 401, 39, 39, 38, 401, 39, 39, + 40, 40, 110, 39, 53, 53, 53, 53, 53, 57, + 57, 57, 57, 57, 163, 114, 40, 163, 53, 273, + 273, 110, 58, 57, 58, 58, 58, 58, 58, 59, + 59, 114, 40, 59, 59, 59, 59, 59, 58, 156, + + 76, 143, 53, 76, 76, 40, 76, 57, 40, 83, + 76, 120, 156, 342, 120, 83, 342, 143, 143, 83, + 120, 584, 58, 136, 136, 334, 334, 136, 136, 136, + 136, 136, 137, 137, 137, 137, 137, 138, 138, 580, + 579, 138, 138, 138, 138, 138, 137, 139, 139, 139, + 139, 139, 140, 140, 140, 140, 140, 378, 210, 293, + 219, 407, 378, 219, 578, 293, 577, 576, 219, 407, + 137, 210, 219, 210, 219, 219, 575, 574, 219, 220, + 220, 220, 220, 220, 221, 221, 221, 221, 221, 222, + 222, 573, 571, 222, 222, 222, 222, 222, 223, 223, + + 223, 223, 223, 224, 224, 224, 224, 224, 314, 314, + 314, 314, 314, 315, 315, 315, 315, 315, 570, 569, + 568, 567, 566, 565, 564, 563, 561, 560, 559, 558, + 557, 556, 555, 554, 553, 552, 551, 550, 549, 545, + 544, 543, 542, 540, 538, 537, 536, 535, 533, 532, + 531, 530, 529, 527, 525, 524, 522, 521, 518, 517, + 515, 514, 513, 512, 510, 509, 507, 506, 505, 504, + 503, 502, 500, 499, 497, 496, 494, 491, 490, 488, + 487, 486, 484, 481, 480, 479, 478, 477, 476, 475, + 474, 473, 472, 470, 469, 467, 466, 465, 464, 463, + + 462, 461, 460, 459, 458, 457, 456, 455, 454, 452, + 451, 450, 448, 445, 444, 443, 442, 441, 438, 435, + 434, 433, 432, 431, 430, 428, 425, 422, 420, 418, + 417, 415, 414, 411, 410, 409, 408, 406, 405, 404, + 402, 398, 397, 396, 395, 394, 392, 391, 390, 388, + 387, 384, 382, 380, 376, 375, 374, 373, 372, 371, + 369, 368, 367, 365, 364, 363, 362, 361, 359, 357, + 356, 353, 352, 351, 349, 348, 346, 345, 343, 341, + 338, 337, 335, 333, 332, 331, 330, 329, 328, 327, + 326, 325, 324, 323, 322, 321, 319, 318, 317, 316, + + 312, 311, 309, 306, 305, 304, 303, 300, 299, 298, + 297, 296, 294, 292, 291, 288, 287, 286, 285, 283, + 282, 281, 280, 279, 278, 277, 276, 275, 274, 271, + 269, 268, 267, 266, 265, 264, 261, 260, 259, 257, + 256, 254, 252, 251, 250, 249, 247, 246, 244, 243, + 242, 241, 240, 239, 238, 236, 234, 233, 232, 231, + 229, 228, 227, 226, 218, 217, 216, 215, 214, 213, + 212, 211, 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, 183, 182, + + 181, 180, 179, 178, 177, 176, 175, 174, 173, 171, + 170, 169, 168, 167, 165, 164, 162, 161, 160, 159, + 158, 157, 155, 154, 153, 152, 151, 150, 149, 148, + 147, 146, 145, 144, 142, 141, 133, 132, 131, 130, + 129, 128, 127, 124, 123, 122, 121, 119, 118, 117, + 116, 115, 113, 112, 108, 107, 106, 105, 104, 103, + 101, 100, 99, 98, 97, 95, 94, 93, 92, 91, + 90, 89, 88, 87, 86, 85, 84, 82, 81, 80, + 79, 78, 77, 75, 74, 73, 71, 70, 69, 68, + 67, 66, 65, 64, 52, 44, 43, 42, 41, 36, + + 35, 32, 21, 20, 19, 11, 9, 7, 3, 587, + 587, 587, 587, 587, 587, 587, 587, 587, 587, 587, + 587, 587, 587, 587, 587, 587, 587, 587, 587, 587, + 587, 587, 587, 587, 587, 587, 587, 587, 587, 587, + 587, 587, 587, 587, 587, 587, 587, 587, 587, 587, + 587, 587, 587, 587, 587, 587, 587, 587, 587, 587, + 587, 587, 587, 587, 587, 587, 587, 587, 587, 587, + 587, 587, 587, 587, 587, 587, 587, 587, 587, 587, + 587, 587 } ; static yy_state_type yy_last_accepting_state; @@ -868,7 +855,7 @@ void skipline(void); #define YY_NO_UNISTD_H #endif -#line 872 "Gmsh.yy.cpp" +#line 859 "Gmsh.yy.cpp" #define INITIAL 0 @@ -1024,7 +1011,7 @@ YY_DECL #line 49 "Gmsh.l" -#line 1028 "Gmsh.yy.cpp" +#line 1015 "Gmsh.yy.cpp" if ( !(yy_init) ) { @@ -1077,13 +1064,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 >= 603 ) + if ( yy_current_state >= 588 ) 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] != 725 ); + while ( yy_base[yy_current_state] != 710 ); yy_find_action: yy_act = yy_accept[yy_current_state]; @@ -1316,102 +1303,102 @@ return tBezier; case 42: YY_RULE_SETUP #line 94 "Gmsh.l" -return tBump; +return tBSpline; YY_BREAK case 43: YY_RULE_SETUP #line 95 "Gmsh.l" -return tBSpline; +return tBoundingBox; YY_BREAK case 44: YY_RULE_SETUP -#line 96 "Gmsh.l" -return tBoundingBox; +#line 97 "Gmsh.l" +return tCeil; YY_BREAK case 45: YY_RULE_SETUP #line 98 "Gmsh.l" -return tCeil; +return tCircle; YY_BREAK case 46: YY_RULE_SETUP #line 99 "Gmsh.l" -return tCircle; +return tCoherence; YY_BREAK case 47: YY_RULE_SETUP #line 100 "Gmsh.l" -return tCoherence; +return tCombine; YY_BREAK case 48: YY_RULE_SETUP #line 101 "Gmsh.l" -return tCombine; +return tCosh; YY_BREAK case 49: YY_RULE_SETUP #line 102 "Gmsh.l" -return tCosh; +return tCos; YY_BREAK case 50: YY_RULE_SETUP #line 103 "Gmsh.l" -return tCos; +return tCharacteristic; YY_BREAK case 51: YY_RULE_SETUP #line 104 "Gmsh.l" -return tCharacteristic; +return tComplex; YY_BREAK case 52: YY_RULE_SETUP #line 105 "Gmsh.l" -return tComplex; +return tColor; YY_BREAK case 53: YY_RULE_SETUP #line 106 "Gmsh.l" -return tColor; +return tColorTable; YY_BREAK case 54: YY_RULE_SETUP #line 107 "Gmsh.l" -return tColorTable; +return tCoordinates; YY_BREAK case 55: YY_RULE_SETUP #line 108 "Gmsh.l" -return tCoordinates; +return tSpline; YY_BREAK case 56: YY_RULE_SETUP #line 109 "Gmsh.l" -return tSpline; +return tCall; YY_BREAK case 57: YY_RULE_SETUP -#line 110 "Gmsh.l" -return tCall; +#line 111 "Gmsh.l" +return tDelete; YY_BREAK case 58: YY_RULE_SETUP #line 112 "Gmsh.l" -return tDelete; +return tDilate; YY_BREAK case 59: YY_RULE_SETUP #line 113 "Gmsh.l" -return tDilate; +return tDraw; YY_BREAK case 60: YY_RULE_SETUP -#line 114 "Gmsh.l" -return tDraw; +#line 115 "Gmsh.l" +return tExp; YY_BREAK case 61: YY_RULE_SETUP #line 116 "Gmsh.l" -return tExp; +return tEllipse; YY_BREAK case 62: YY_RULE_SETUP @@ -1421,405 +1408,390 @@ return tEllipse; case 63: YY_RULE_SETUP #line 118 "Gmsh.l" -return tEllipse; +return tExtrude; YY_BREAK case 64: YY_RULE_SETUP #line 119 "Gmsh.l" -return tExtrude; +return tElliptic; YY_BREAK case 65: YY_RULE_SETUP #line 120 "Gmsh.l" -return tElliptic; +return tEndFor; YY_BREAK case 66: YY_RULE_SETUP #line 121 "Gmsh.l" -return tEndFor; +return tEndIf; YY_BREAK case 67: YY_RULE_SETUP #line 122 "Gmsh.l" -return tEndIf; +return tEuclidian; YY_BREAK case 68: YY_RULE_SETUP #line 123 "Gmsh.l" -return tEuclidian; +return tExit; YY_BREAK case 69: YY_RULE_SETUP -#line 124 "Gmsh.l" -return tExit; +#line 125 "Gmsh.l" +return tFabs; YY_BREAK case 70: YY_RULE_SETUP #line 126 "Gmsh.l" -return tFabs; +return tField; YY_BREAK case 71: YY_RULE_SETUP #line 127 "Gmsh.l" -return tField; +return tFloor; YY_BREAK case 72: YY_RULE_SETUP #line 128 "Gmsh.l" -return tFloor; +return tFmod; YY_BREAK case 73: YY_RULE_SETUP #line 129 "Gmsh.l" -return tFmod; +return tFor; YY_BREAK case 74: YY_RULE_SETUP #line 130 "Gmsh.l" -return tFor; +return tFunction; YY_BREAK case 75: YY_RULE_SETUP -#line 131 "Gmsh.l" -return tFunction; +#line 132 "Gmsh.l" +return tGetValue; YY_BREAK case 76: YY_RULE_SETUP #line 133 "Gmsh.l" -return tGetValue; +return tGMSH_MAJOR_VERSION; YY_BREAK case 77: YY_RULE_SETUP #line 134 "Gmsh.l" -return tGMSH_MAJOR_VERSION; +return tGMSH_MINOR_VERSION; YY_BREAK case 78: YY_RULE_SETUP #line 135 "Gmsh.l" -return tGMSH_MINOR_VERSION; +return tGMSH_PATCH_VERSION; YY_BREAK case 79: YY_RULE_SETUP -#line 136 "Gmsh.l" -return tGMSH_PATCH_VERSION; +#line 137 "Gmsh.l" +return tHide; YY_BREAK case 80: YY_RULE_SETUP #line 138 "Gmsh.l" -return tHide; +return tHole; YY_BREAK case 81: YY_RULE_SETUP #line 139 "Gmsh.l" -return tHole; +return tHypot; YY_BREAK case 82: YY_RULE_SETUP -#line 140 "Gmsh.l" -return tHypot; +#line 141 "Gmsh.l" +return tIn; YY_BREAK case 83: YY_RULE_SETUP #line 142 "Gmsh.l" -return tIn; +return tIf; YY_BREAK case 84: YY_RULE_SETUP #line 143 "Gmsh.l" -return tIf; +return tIntersect; YY_BREAK case 85: YY_RULE_SETUP #line 144 "Gmsh.l" -return tIntersect; +return tInterpolationScheme; YY_BREAK case 86: YY_RULE_SETUP -#line 145 "Gmsh.l" -return tInterpolationScheme; +#line 146 "Gmsh.l" +return tKnots; YY_BREAK case 87: YY_RULE_SETUP -#line 147 "Gmsh.l" -return tKnots; +#line 148 "Gmsh.l" +return tLength; YY_BREAK case 88: YY_RULE_SETUP #line 149 "Gmsh.l" -return tLength; +return tLine; YY_BREAK case 89: YY_RULE_SETUP #line 150 "Gmsh.l" -return tLine; +return tLoop; YY_BREAK case 90: YY_RULE_SETUP #line 151 "Gmsh.l" -return tLoop; +return tLog; YY_BREAK case 91: YY_RULE_SETUP #line 152 "Gmsh.l" -return tLog; +return tLog10; YY_BREAK case 92: YY_RULE_SETUP #line 153 "Gmsh.l" -return tLog10; +return tLayers; YY_BREAK case 93: YY_RULE_SETUP -#line 154 "Gmsh.l" -return tLayers; +#line 155 "Gmsh.l" +return tModulo; YY_BREAK case 94: YY_RULE_SETUP #line 156 "Gmsh.l" -return tModulo; +return tMPI_Rank; YY_BREAK case 95: YY_RULE_SETUP #line 157 "Gmsh.l" -return tMPI_Rank; +return tMPI_Size; YY_BREAK case 96: YY_RULE_SETUP -#line 158 "Gmsh.l" -return tMPI_Size; +#line 159 "Gmsh.l" +return tNurbs; YY_BREAK case 97: YY_RULE_SETUP -#line 160 "Gmsh.l" -return tNurbs; +#line 161 "Gmsh.l" +return tOrder; YY_BREAK case 98: YY_RULE_SETUP -#line 162 "Gmsh.l" -return tOrder; +#line 163 "Gmsh.l" +return tPhysical; YY_BREAK case 99: YY_RULE_SETUP #line 164 "Gmsh.l" -return tPhysical; +return tPi; YY_BREAK case 100: YY_RULE_SETUP #line 165 "Gmsh.l" -return tPi; +return tPlane; YY_BREAK case 101: YY_RULE_SETUP #line 166 "Gmsh.l" -return tPlane; +return tPoint; YY_BREAK case 102: YY_RULE_SETUP #line 167 "Gmsh.l" -return tPoint; +return tParametric; YY_BREAK case 103: YY_RULE_SETUP #line 168 "Gmsh.l" -return tProgression; +return tPolarSphere; YY_BREAK case 104: YY_RULE_SETUP #line 169 "Gmsh.l" -return tProgression; +return tPrintf; YY_BREAK case 105: YY_RULE_SETUP #line 170 "Gmsh.l" -return tParametric; +return tPlugin; YY_BREAK case 106: YY_RULE_SETUP -#line 171 "Gmsh.l" -return tPolarSphere; +#line 172 "Gmsh.l" +return tRecombine; YY_BREAK case 107: YY_RULE_SETUP -#line 172 "Gmsh.l" -return tPrintf; +#line 173 "Gmsh.l" +return tRotate; YY_BREAK case 108: YY_RULE_SETUP -#line 173 "Gmsh.l" -return tPlugin; +#line 174 "Gmsh.l" +return tRuled; YY_BREAK case 109: YY_RULE_SETUP #line 175 "Gmsh.l" -return tRecombine; +return tRand; YY_BREAK case 110: YY_RULE_SETUP #line 176 "Gmsh.l" -return tRotate; +return tReturn; YY_BREAK case 111: YY_RULE_SETUP -#line 177 "Gmsh.l" -return tRuled; +#line 178 "Gmsh.l" +return tSmoother; YY_BREAK case 112: YY_RULE_SETUP -#line 178 "Gmsh.l" -return tRand; +#line 179 "Gmsh.l" +return tSqrt; YY_BREAK case 113: YY_RULE_SETUP -#line 179 "Gmsh.l" -return tReturn; +#line 180 "Gmsh.l" +return tSin; YY_BREAK case 114: YY_RULE_SETUP #line 181 "Gmsh.l" -return tSmoother; +return tSinh; YY_BREAK case 115: YY_RULE_SETUP #line 182 "Gmsh.l" -return tSqrt; +return tSphere; YY_BREAK case 116: YY_RULE_SETUP #line 183 "Gmsh.l" -return tSin; +return tSpline; YY_BREAK case 117: YY_RULE_SETUP #line 184 "Gmsh.l" -return tSinh; +return tSplit; YY_BREAK case 118: YY_RULE_SETUP #line 185 "Gmsh.l" -return tSphere; +return tSurface; YY_BREAK case 119: YY_RULE_SETUP #line 186 "Gmsh.l" -return tSpline; +return tSprintf; YY_BREAK case 120: YY_RULE_SETUP #line 187 "Gmsh.l" -return tSplit; +return tStrCat; YY_BREAK case 121: YY_RULE_SETUP #line 188 "Gmsh.l" -return tSurface; +return tStrPrefix; YY_BREAK case 122: YY_RULE_SETUP #line 189 "Gmsh.l" -return tSprintf; +return tStrRelative; YY_BREAK case 123: YY_RULE_SETUP #line 190 "Gmsh.l" -return tStrCat; +return tShow; YY_BREAK case 124: YY_RULE_SETUP #line 191 "Gmsh.l" -return tStrPrefix; +return tSymmetry; YY_BREAK case 125: YY_RULE_SETUP -#line 192 "Gmsh.l" -return tStrRelative; +#line 193 "Gmsh.l" +return tText2D; YY_BREAK case 126: YY_RULE_SETUP -#line 193 "Gmsh.l" -return tShow; +#line 194 "Gmsh.l" +return tText3D; YY_BREAK case 127: YY_RULE_SETUP -#line 194 "Gmsh.l" -return tSymmetry; +#line 195 "Gmsh.l" +return tTime; YY_BREAK case 128: YY_RULE_SETUP #line 196 "Gmsh.l" -return tText2D; +return tTransfinite; YY_BREAK case 129: YY_RULE_SETUP #line 197 "Gmsh.l" -return tText3D; +return tTranslate; YY_BREAK case 130: YY_RULE_SETUP #line 198 "Gmsh.l" -return tTime; +return tTanh; YY_BREAK case 131: YY_RULE_SETUP #line 199 "Gmsh.l" -return tTransfinite; +return tTan; YY_BREAK case 132: YY_RULE_SETUP #line 200 "Gmsh.l" -return tTranslate; +return tToday; YY_BREAK case 133: YY_RULE_SETUP -#line 201 "Gmsh.l" -return tTanh; +#line 202 "Gmsh.l" +return tUsing; YY_BREAK case 134: YY_RULE_SETUP -#line 202 "Gmsh.l" -return tTan; +#line 204 "Gmsh.l" +return tVolume; YY_BREAK case 135: -YY_RULE_SETUP -#line 203 "Gmsh.l" -return tToday; - YY_BREAK +#line 207 "Gmsh.l" case 136: -YY_RULE_SETUP -#line 205 "Gmsh.l" -return tUsing; - YY_BREAK +#line 208 "Gmsh.l" case 137: -YY_RULE_SETUP -#line 207 "Gmsh.l" -return tVolume; - YY_BREAK +#line 209 "Gmsh.l" case 138: -#line 210 "Gmsh.l" -case 139: -#line 211 "Gmsh.l" -case 140: -#line 212 "Gmsh.l" -case 141: YY_RULE_SETUP -#line 212 "Gmsh.l" +#line 209 "Gmsh.l" { gmsh_yylval.d = atof((char *)gmsh_yytext); return tDOUBLE; } YY_BREAK -case 142: +case 139: YY_RULE_SETUP -#line 214 "Gmsh.l" +#line 211 "Gmsh.l" { gmsh_yylval.c = strsave((char*)gmsh_yytext); return tSTRING; } YY_BREAK -case 143: +case 140: YY_RULE_SETUP -#line 216 "Gmsh.l" +#line 213 "Gmsh.l" return gmsh_yytext[0]; YY_BREAK -case 144: +case 141: YY_RULE_SETUP -#line 218 "Gmsh.l" +#line 215 "Gmsh.l" ECHO; YY_BREAK -#line 1823 "Gmsh.yy.cpp" +#line 1795 "Gmsh.yy.cpp" case YY_STATE_EOF(INITIAL): yyterminate(); @@ -2103,7 +2075,7 @@ static int yy_get_next_buffer (void) 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 >= 603 ) + if ( yy_current_state >= 588 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; @@ -2131,11 +2103,11 @@ static int yy_get_next_buffer (void) 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 >= 603 ) + if ( yy_current_state >= 588 ) 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 == 602); + yy_is_jam = (yy_current_state == 587); return yy_is_jam ? 0 : yy_current_state; } @@ -2805,7 +2777,7 @@ void gmsh_yyfree (void * ptr ) #define YYTABLES_NAME "yytables" -#line 218 "Gmsh.l" +#line 215 "Gmsh.l"